From 0c9f2cde78126ac17250a36d49a278ea460f6dd8 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Sat, 26 Jul 2008 13:45:26 +0000 Subject: fixes --- LaTeX/chapters/introduction.tex | 26 +- LaTeX/chapters/simulator.tex | 171 +- LaTeX/diplomarbeit.pdf | 4778 +++++++++++++++++++-------------------- 3 files changed, 2479 insertions(+), 2496 deletions(-) (limited to 'LaTeX') diff --git a/LaTeX/chapters/introduction.tex b/LaTeX/chapters/introduction.tex index 79b8b35..f5a0621 100644 --- a/LaTeX/chapters/introduction.tex +++ b/LaTeX/chapters/introduction.tex @@ -15,13 +15,13 @@ In der Literatur findet man viele verschiedene Definitionen eins verteiltes Syst Der Benutzer muss sich nur mit dem lokalen vor ihm befindenden Computer auseinander setzen (Abbildung \ref{fig:VerteiltesSystem}) w\"{a}hrend die Software des lokalen Computers die reibungslose Kommunikation mit den anderen beteiligten Computern des verteilten Systems sicherstellt. -Der Sinn und der Zweck dieser Diplomarbeit ist die Betrachtung von verteilten Systemen aus einer anderen Perspektive zu vereinfachen. Wir nehmen nicht die Sichtweise eines Endbenutzers ein, sondern wollen die Funktionsweisen von Protokollen und deren Prozesse in verteilten Systemen begreifen. Es sollen alle relevanten Ereignisse eines verteilten Systems transparent dargestellt werden k\"{o}nnen. +Der Sinn und der Zweck dieser Diplomarbeit ist die vereinfachte Betrachtung von verteilten Systemen aus einer anderen Perspektive. Es soll nicht die Sichtweise eines Endbenutzers eingenommen werden, sondern es sollen die Funktionsweisen von Protokollen und deren Prozesse in verteilten Systemen begreifbar gemacht werden. Es sollen alle relevanten Ereignisse eines verteilten Systems transparent dargestellt werden k\"{o}nnen. Um dieses Ziel zu erreichen soll ein Simulator entwickelt werden, der dies erm\"{o}glicht. Der Simulator soll insbesondere f\"{u}r Lehr- und Lernzwecke entwickelt werden. Beispielsweise sollen Protokolle aus den verteilten Systemen mit ihren wichtigsten Einflussfaktoren simuliert werden k\"{o}nnen. Der Simulator soll helfen zu verstehen wie die gegebenen Protokolle funktionieren und es soll viel Spielraum f\"{u}r eigene Experimente zur Verf\"{u}gung stehen. Der Simulator soll nicht auf eine feste Anzahl von Protokollen beschr\"{a}nkt werden, daher muss die M\"{o}glichkeit gegeben werden eigene Protokolle selbst entwerfen zu k\"{o}nnen. \section{Grundlagen} -F\"{u}r das Grundverst\"{a}ndnis werden im Folgenden einige Grundlagen erl\"{a}utert. Eine Vertiefung findet erst in den nachfolgenden Kapiteln statt. +F\"{u}r das Grundverst\"{a}ndnis werden im Folgenden einige Grundlagen erl\"{a}utert. Eine Vertiefung findet erst in sp\"{a}teren Kapiteln statt. \subsubsection{Client/Server Modell} @@ -36,7 +36,7 @@ Der Simulator basiert auf dem Client/Server Prinzip. Jeder Simulation besteht in \subsubsection{Prozesse und deren Rollen} -Ein verteiltes System wird anhand von Prozessen simuliert. Jeder Prozess nimmt hierbei eine oder mehrere Rollen ein. Beispielsweise kann ein Prozess die Rolle eines Clients einnehmen und ein weiterer Prozess die Rolle eines Servers. Ein Prozess kann auch Client und Server gleichzeitig sein. Es ist auch m\"{o}glich, dass ein Prozess die Rollen mehrerer Server und Clients auf einmal einnimmt. Ob das sinnvoll ist h\"{a}ngt vom Szenario ab. Um einen Prozess zu kennzeichnen besitzt jeder Prozess eine \textbf{eindeutige} Prozess-Identifikationsnummer (PID). +Ein verteiltes System wird anhand von Prozessen simuliert. Jeder Prozess nimmt hierbei eine oder mehrere Rollen ein. Beispielsweise kann ein Prozess die Rolle eines Clients einnehmen und ein weiterer Prozess die Rolle eines Servers. Ein Prozess kann auch Client und Server gleichzeitig sein. Es besteht auch die M\"{o}glichkeit, dass ein Prozess die Rollen mehrerer Server und Clients auf einmal einnimmt. Ob das sinnvoll ist h\"{a}ngt vom simulierten Szenario ab. Um einen Prozess zu kennzeichnen besitzt jeder Prozess eine \textbf{eindeutige} Prozess-Identifikationsnummer (PID). \subsubsection{Nachrichten} @@ -46,19 +46,12 @@ In einem verteiltem System m\"{u}ssen Nachrichten verschickt werden k\"{o}nnen. In einer Simulation gibt es \textbf{genau eine} globale Uhr. Sie stellt die aktuelle und \textbf{immer korrekte} Zeit dar. Eine globale Uhr geht nie falsch. -Zudem besitzt jeder beteiligter Prozess eine eigene lokale Uhr. Sie stellt die aktuelle Zeit des jeweiligen Prozesses dar. Im Gegensatz zu der globalen Uhr k\"{o}nnen lokale Uhren eine falsche Zeit anzeigen. Wenn die Prozesszeit nicht global-korrekt ist (nicht der globalen Zeit gleicht beziehungsweise eine falsche Zeit anzeigt), dann wurde sie entweder im Laufe einer Simulation ge\"{a}ndert, oder sie geht wegen einer Uhrabweichung falsch. Die Uhrabweichung gibt an, um welchen Faktor die Uhr falsch geht. Hierauf wird sp\"{a}ter genauer eingegangen. +Zudem besitzt jeder beteiligter Prozess eine eigene lokale Uhr. Sie stellt die aktuelle Zeit des jeweiligen Prozesses dar. Im Gegensatz zu der globalen Uhr k\"{o}nnen lokale Uhren eine falsche Zeit anzeigen. Wenn die Prozesszeit nicht global-korrekt ist (nicht der globalen Zeit gleicht beziehungsweise eine falsche Zeit anzeigt), dann wurde sie entweder im Laufe einer Simulation neu gestellt, oder sie geht wegen einer Uhrabweichung falsch. Die Uhrabweichung gibt an, um welchen Faktor die Uhr falsch geht. Hierauf wird sp\"{a}ter genauer eingegangen. Neben den normalen Uhren sind auch die \textbf{Vektor-Zeitstempel} sowie die \textbf{logischen Uhren von Lamport} von Interesse. Jeder Prozess besitzt zus\"{a}tzlich einen Vektor-Zeitstempel f\"{u}r seine Vektorzeit, sowie einen Lamportzeitstempel f\"{u}r seine Lamportzeit. F\"{u}r die Vektor- und Lamportzeiten gibt es hier, im Gegensatz zu der normalen Zeit, keine globalen \"{A}quivalente. Konkrete Beispiele zu den Lamport- und Vektorzeiten werden sp\"{a}ter anhand einer Simulation behandelt. -\begin{figure}[htbp] - \centering - \includegraphics{images/client-server-protokolle} - \caption{Client/Server Protokolle} - \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. @@ -66,9 +59,18 @@ Eine Simulation besteht aus der Hintereinanderausf\"{u}hrung von endlich vielen \subsubsection{Protokolle} + + Eine Simulation besteht auch aus der Anwendung von Protokollen. Es wurde bereits erw\"{a}hnt, dass ein Prozess die Rollen von Servern und/oder Clients annehmen kann. Bei jeder Server- und Clientrolle muss zus\"{a}tzlich das dazugeh\"{o}rige Protokoll spezifiziert werden. Ein Protokoll definiert, wie ein Client und ein Server Nachrichten verschickt und wie bei Ankunft einer Nachricht reagiert wird. Ein Protokoll legt auch fest, welche Daten in einer Nachricht enthalten sind. Ein Prozess verarbeitet eine empfangene Nachricht nur, wenn er das jeweilige Protokoll versteht. -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 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''. Das heit, dass Prozess 1 mit Prozess 2 via Protokoll ``A'' und mit Prozess 3 via Protokoll ``B'' kommunizieren kann. Die Prozesse 2 und 3 sind zueinander inkompatibel und k\"{o}nnen voneinander erhaltene Nachrichten nicht verarbeiten. Clients k\"{o}nnen nicht mit Clients, und Server nicht mit Server kommunizieren. F\"{u}r eine Kommunikation wird stets mindestens ein Client und ein Server ben\"{o}tigt. Dieser Einschr\"{a}nkung kann aber umgangen werden, indem Prozesse ein gegebenes Protokoll sowohl server- als auch clientseitig unters\"{u}tzt (siehe Broadcast-Sturm Protokoll sp\"{a}ter). Alle vom Simulator verf\"{u}gbaren Protokolle werden sp\"{a}ter genauer behandelt. +\begin{figure}[htbp] + \centering + \includegraphics{images/client-server-protokolle} + \caption{Client/Server Protokolle} + \label{fig:ClientServerProtokolle} +\end{figure} + diff --git a/LaTeX/chapters/simulator.tex b/LaTeX/chapters/simulator.tex index 38f2ba2..c1d2da8 100644 --- a/LaTeX/chapters/simulator.tex +++ b/LaTeX/chapters/simulator.tex @@ -9,7 +9,7 @@ \label{fig:NeuesFenster} \end{figure} -Der Simulator pr\"{a}sentiert sich nach dem ersten Starten wie in Abbildung \ref{fig:NeuesFenster}. F\"{u}r die Erstellung einer neuen Simulation wird im Men\"{u} ``Datei'' (Abbildung \ref{fig:DateiMenue}) der Punkt ``Neue Simulation'' ausgew\"{a}hlt, wo anschlieend das Einstellungsfenster f\"{u}r die neue Simulation erscheint. Auf die einzelnen Optionen wird sp\"{a}ter genauer eingegangen und es werden nun nur die Standardeinstellungen \"{u}bernommen. Die GUI mit einer frischen Simulation sieht dann wie in Abbildung \ref{fig:NeuErstellteSimulation} aus. +Der Simulator pr\"{a}sentiert sich nach dem ersten Starten wie auf Abbildung \ref{fig:NeuesFenster}. F\"{u}r die Erstellung einer neuen Simulation wird im Men\"{u} ``Datei'' (Abbildung \ref{fig:DateiMenue}) der Punkt ``Neue Simulation'' ausgew\"{a}hlt, wo anschlieend das Einstellungsfenster f\"{u}r die neue Simulation erscheint. Auf die einzelnen Optionen wird sp\"{a}ter genauer eingegangen und es werden nun nur die Standardeinstellungen \"{u}bernommen. Die GUI mit einer frischen Simulation sieht dann aus wie auf Abbildung \ref{fig:NeuErstellteSimulation}. \begin{figure}[htbp] \centering @@ -65,7 +65,7 @@ Die Toolbar l\"{a}sst sich auch nach Belieben repositionieren (z.B. links, recht \label{fig:Visualisierung} \end{figure} -Mittig rechts in Abbildung \ref{fig:NeuErstellteSimulation} befindet sich die grafische Repr\"{a}sentation der Simulation. Die X-Achse gibt die Zeit in Millisekunden an. Unsere Demo-Simulation endet nach genau 15 Sekunden. In Abbildung \ref{fig:Visualisierung} sind 3 Prozesse (mit den PIDs 1, 2 und 3) dargestellt, die jeweils einen eigenen horizontalen schwarzen Balken besitzen. Auf diesen Prozessbalken kann der Benutzer die jeweilige lokale Prozesszeit ablesen. Die vertikale rote Linie stellt die globale Simulationszeit dar. +Mittig rechts befindet sich die grafische Repr\"{a}sentation der Simulation. Die X-Achse gibt die Zeit in Millisekunden an und auf der Y-Achse sind alle beteiligten Prozesse aufgef\"{u}hrt. Unsere Demo-Simulation endet nach genau 15 Sekunden. Auf Abbildung \ref{fig:Visualisierung} sind 3 Prozesse (mit den PIDs 1, 2 und 3) dargestellt, die jeweils einen eigenen horizontalen schwarzen Balken besitzen. Auf diesen Prozessbalken kann der Benutzer die jeweilige lokale Prozesszeit ablesen. Die vertikale rote Linie stellt die globale Simulationszeit dar. Die Prozessbalken dienen auch f\"{u}r Start- und Zielpunkte von Nachrichten. Wenn beispielsweise Prozess 1 eine Nachricht an Prozess 2 verschickt, so wird eine Linie vom einen Prozessbalken zum Anderen gezeichnet. Nachrichten, die ein Prozess an sich selbst schickt, werden nicht visualisiert. Sie werden aber im Loggfenster (mehr dazu sp\"{a}ter) protokolliert. @@ -78,11 +78,11 @@ Eine andere M\"{o}glichkeit einen Prozesseditor aufzurufen ist ein Linksklick au \label{fig:RechtsklickProzessbalken} \end{figure} -Generell kann die Anzahl der Prozesse nach belieben variieren. Die Dauer der Simulation betr\"{a}gt mindestens 5 -und maximal 120 Sekunden. Die Simulation endet erst, wenn die globale Zeit 15 Sekunden erreicht hat, und nicht, wenn eine lokale Prozesszeit die 15 Sekunden erreicht. +Generell kann die Anzahl der Prozesse nach belieben variieren. Die Dauer der Simulation betr\"{a}gt mindestens 5 -und h\"{o}chstens 120 Sekunden. Die Simulation endet erst, wenn sie die globale Zeit die angegebene Simulationsendzeit (hier 15 Sekunden) erreicht hat, und nicht, wenn eine lokale Prozesszeit diese Endzeit erreicht. \subsubsection{Farbliche Differenzierung} -Farben helfen dabei die Vorg\"{a}nge einer Simulation zu deuten. Standardm\"{a}ig werden die Prozesse (Prozessbalken) und Nachrichten mit den Farben wie in Tabelle \ref{tb:Farben} aufgelistet dargestellt. Dies sind lediglich die Standarfarben, welche \"{u}ber die Einstellungen umkonfigurierbar sind. +Farben helfen dabei die Vorg\"{a}nge einer Simulation besser zu deuten. Standardm\"{a}ig werden die Prozesse (Prozessbalken) und Nachrichten mit den Farben wie in Tabelle \ref{tb:Farben} aufgelistet dargestellt. Dies sind lediglich die Standardfarben, welche \"{u}ber die Einstellungen umkonfigurierbar sind. \begin{table} \fbox{ @@ -109,7 +109,7 @@ Farben helfen dabei die Vorg\"{a}nge einer Simulation zu deuten. Standardm\"{a} \subsubsection{Die Sidebar} -Mithilfe der Sidebar lassen sich Prozessereignisse programmieren. Ganz oben in Abbildung \ref{fig:Sidebar} ist der zu verwaltende Prozess selektiert (hier mit der PID 1). In dieser Prozessauswahl gibt es auch die M\"{o}glichkeit ``Alle Prozesse'' auszuw\"{a}hlen, womit die Ereignisse aller Prozesse gleichzeitig verwaltet werden k\"{o}nnen. Unter ``Lokale Ereignisse'' versteht der Benutzer diejenigen Ereignisse, die auftreten, wenn eine bestimmte lokale Zeit des dazugeh\"{o}rigen Prozesses eingetreten ist. Die darunterliegende Ereignistabelle listet alle programmierten Ereignisse (hier noch keine vorhanden) mitsamt Eintrittszeiten sowie den PIDs auf. +Mithilfe der Sidebar lassen sich Prozessereignisse programmieren. Oben auf Abbildung \ref{fig:Sidebar} ist der zu verwaltende Prozess selektiert (hier mit der PID 1). In dieser Prozessauswahl gibt es auch die M\"{o}glichkeit ``Alle Prozesse'' auszuw\"{a}hlen, womit die Ereignisse aller Prozesse gleichzeitig verwaltet werden k\"{o}nnen. Unter ``Lokale Ereignisse'' versteht man diejenigen Ereignisse, die auftreten, wenn eine bestimmte lokale Zeit des dazugeh\"{o}rigen Prozesses eingetreten ist. Die darunterliegende Ereignistabelle listet alle programmierten Ereignisse (hier noch keine vorhanden) mitsamt Eintrittszeiten sowie den PIDs auf. \begin{figure}[htbp] \centering @@ -118,7 +118,7 @@ Mithilfe der Sidebar lassen sich Prozessereignisse programmieren. Ganz oben in A \label{fig:Sidebar} \end{figure} -F\"{u}r die Erstellung eines neuen Ereignisses kann der Benutzer entweder mit einem Rechtsklick auf einen Prozessbalken (Abbildung \ref{fig:RechtsklickProzessbalken}) klicken, oder unterhalb der Ereignistabelle ein Ereignis ausw\"{a}hlen (Abbildung \ref{fig:Ereignisauswahl}), im darunter liegendem Textfeld die Zeit eintragen und auf ``\"{U}bernehmen'' klicken. Beispielsweise wurden auf Abbildung \ref{fig:SidebarMitEreignissen} drei Ereignisse hinzugef\"{u}gt: Absturz nach 123ms, Wiederbelebung nach 321ms und erneuter Absturz nach 3000ms des Prozesses mit der ID 1. +F\"{u}r die Erstellung eines neuen Ereignisses kann der Benutzer entweder mit einem Rechtsklick auf einen Prozessbalken (Abbildung \ref{fig:RechtsklickProzessbalken}) klicken und dort ``Lokales Ereignis einf\"{u}gen'' w\"{a}hlen, oder unterhalb der Ereignistabelle ein Ereignis ausw\"{a}hlen (Abbildung \ref{fig:Ereignisauswahl}), im darunter liegendem Textfeld die Ereigniseintrittszeit eintragen und auf ``\"{U}bernehmen'' gehen. Beispielsweise wurden auf Abbildung \ref{fig:SidebarMitEreignissen} drei Ereignisse hinzugef\"{u}gt: Absturz nach \texttt{123ms}, Wiederbelebung nach \texttt{321ms} und erneuter Absturz nach \texttt{3000ms} des Prozesses mit der ID 1. \begin{figure}[htbp] \centering @@ -127,7 +127,7 @@ F\"{u}r die Erstellung eines neuen Ereignisses kann der Benutzer entweder mit ei \label{fig:Ereignisauswahl} \end{figure} -Mit einem Rechtsklick auf den Ereigniseditor lassen sich alle selektierten Ereignisse entweder kopieren oder l\"{o}schen. Mithilfe der Strg-Taste k\"{o}nnen auch mehrere Ereignisse gleichzeitig markiert werden. Die Eintr\"{a}ge der Spalten f\"{u}r die Zeit und der PID lassen sich nachtr\"{a}glich editieren. Somit besteht eine komfortable M\"{o}glichkeit bereits programmierte Ereignisse auf eine andere Zeit zu verschieben oder einem anderen Prozess zuzuweisen. +Mit einem Rechtsklick auf den Ereigniseditor lassen sich alle selektierten Ereignisse entweder kopieren oder l\"{o}schen. Mithilfe der Strg-Taste k\"{o}nnen auch mehrere Ereignisse gleichzeitig markiert werden. Die Eintr\"{a}ge der Spalten f\"{u}r die Zeit und der PID lassen sich nachtr\"{a}glich editieren. Somit besteht eine komfortable M\"{o}glichkeit bereits programmierte Ereignisse auf eine andere Zeit zu verschieben oder einem anderen Prozess zuzuweisen. Allerdings sollte der Benutzer darauf achten, dass er nach dem \"{A}ndern der Ereigniseintrittszeit die Enter-Taste bet\"{a}tigt, da sonst die \"{A}nderung unwirksam ist. In der Sidebar gibt es neben dem Ereignis-Tab einen weiteren Tab ``Variablen''. Hinter diesem Tab verbirgt sich der Prozesseditor des aktuell ausgew\"{a}hlten Prozesses. Dort k\"{o}nnen alle Variablen des Prozesses editiert werden. Der Prozesseditor wird sp\"{a}ter genauer behandelt. @@ -149,7 +149,7 @@ Das Loggfenster (Abbildung \ref{fig:NeuErstellteSimulation}, unten) protokollier \label{fig:Loggfenster} \end{figure} -Mit dem Deaktivieren der Checkbox ``Logging'' l\"{a}t sich das Loggen von Nachrichten tempor\"{a}r deaktivieren. Mit deaktivierter Logging-Checkbox werden keine neuen Nachrichten mehr ins Loggfenster geschrieben. Nach Reaktivieren der Checkbox werden alle ausgelassenen Nachrichten nachtr\"{a}glich in das Fenster geschrieben. Ein deaktiviertes Loggen kann zu verbessertem Leistungsverhalten des Simulators f\"{u}hren (z.B. kein Rucklen; ist vom verwendeten Computer, auf dem der Simulator l\"{a}uft, abh\"{a}ngig). Dieser Umstand ist der sehr langsamen Java-Implementierung der JTextArea-Klasse zu verdanken, die schnelle Updates nur sehr tr\"{a}ge durchf\"{u}hrt. +Mit dem Deaktivieren der Checkbox ``Logging'' l\"{a}t sich das Loggen von Nachrichten tempor\"{a}r einstellen. Mit deaktiviertem Loggen werden keine neuen Nachrichten mehr ins Loggfenster geschrieben. Nach Reaktivieren der Checkbox werden alle ausgelassenen Nachrichten nachtr\"{a}glich in das Fenster geschrieben. Ein deaktiviertes Loggen kann zu verbessertem Leistungsverhalten des Simulators f\"{u}hren (z.B. kein Rucklen; ist vom verwendeten Computer, auf dem der Simulator l\"{a}uft, abh\"{a}ngig). Dieser Umstand ist der sehr langsamen Java-Implementierung der JTextArea-Klasse zu verdanken, die schnelle Updates nur sehr tr\"{a}ge durchf\"{u}hrt. \"{U}ber die Checkbox ``Expertenmodus'' wird der Expertenmodus aktiviert beziehungsweise deaktiviert. @@ -171,15 +171,21 @@ Der Simulator kann in zwei verschiedenen Modi betrieben werden. Es gibt einen ei \label{fig:SidebarExpertenmodus} \end{figure} +\subsubsection{Neue Funktionen in der Sidebar} + 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. Eine weitere neue Funktionalit\"{a}t ist die M\"{o}glichkeit einem neuzuerstellenen Ereignis die PID direkt zuzuweisen. Im einfachen Modus wurde, wenn der Benutzer ein neues Ereignis erstellte, standardm\"{a}ig immer die PID des aktuell (in der obersten Combo-Box) ausgew\"{a}hlten Prozesses verwendet. In dieser Combo-Box sollte der Benutzer 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 der Benutzer eine dieser beiden Checkboxen, dann wird die Lamport- beziehungsweise Vektorzeit in die Visualisierung dargestellt. \"{U}bersichtshalber kann der Benutzer 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{Lamportzeit, Vektorzeit und Anti-Aliasing Schalter} + +Weitere Unterschiede machen sich unterhalb des Loggfensters bemerkbar. Dort gibt es unter Anderem zwei neue Checkboxen ``Lamportzeit'' und ``Vektorzeit''. Aktiviert der Benutzer eine dieser beiden Checkboxen, so wird die Lamport- beziehungsweise Vektorzeit in die Visualisierung dargestellt. \"{U}bersichtshalber kann der Benutzer 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. + +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 nicht aktiv. -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{Der 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 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 dabei 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 erneut 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, die zum Beispiel nur ``\texttt{PID: 3}'' beinhalten, werden dabei nicht angezeigt. Mit aktivem Loggfilter werden nur die Loggzeilen angezeigt, auf die der regul\"{a}re Ausdruck passt. Der Loggfilter kann auch nachtr\"{a}glich aktiviert werden, da bereits protokollierte Ereignisse nach jeder Filter\"{a}nderung erneut gefiltert werden. 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} @@ -187,7 +193,7 @@ Es wird zwischen zwei verschiedenen Haupttypen von Ereignissen unterschieden: Pr \subsubsection{Prozessabsturz- und Wiederbelebung (programmierbar)} -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, auer 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 Ereignisse gar nicht ausf\"{u}hrt, da er zu den Ereigniseintrittszeiten abgest\"{u}rzt ist. Wenn im echten Leben ein Computer abst\"{u}rzt oder abgeschaltet wird, dann l\"{a}uft dort die Hardware-Uhr, 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, auer wiederbelebt werden. W\"{a}hrend eines Prozessabsturzes l\"{a}uft die lokale Prozessuhr, abgesehen der Lamport- und Vektor-Uhren, wie gewohnt weiter. Das heit es besteht die M\"{o}glichkeit, dass ein Prozess einige seiner Ereignisse gar nicht ausf\"{u}hrt, da er zu den Ereigniseintrittszeiten abgest\"{u}rzt ist. Wenn im echten Leben ein Computer abst\"{u}rzt oder abgeschaltet wird, dann l\"{a}uft dort die Hardware-Uhr, unabh\"{a}ngig vom Betriebssystem, auch weiter. \subsubsection{Aktivierung und Deaktivierung von Protokollen sowie Starten von Anfragen (programmierbar)} Wir wissen bereits, dass ein Prozess mehrere Protokolle Client- und auch Serverseitig unterst\"{u}tzen kann. Welches Protokoll von einem Prozess unterst\"{u}tzt wird, kann der Benutzer anhand von Protokollaktivierungs- und Protokolldeaktivierungsereignissen konfigurieren. Somit besteht die M\"{o}glichkeit, dass ein gegebener Prozess ein bestimmtes Protokoll erst zu einem bestimmten Zeitpunkt unterst\"{u}tzt und gegebenenfalls ein anderes Protokoll abl\"{o}st. Jedes Protokoll kann entweder Server- oder Clientseitig aktiviert beziehungsweise deaktiviert werden. Welche Protokolle es gibt wird sp\"{a}ter behandelt. Der Benutzer hat die Auswahl zwischen f\"{u}nf verschiedenen Protokollereignistypen: @@ -202,15 +208,15 @@ Wir wissen bereits, dass ein Prozess mehrere Protokolle Client- und auch Servers Ob sich das Ereignis f\"{u}r das Starten einer Anfrage auf einen Client oder einen Server bezieht h\"{a}ngt vom verwendeten Protokoll ab. Es gibt Protokolle, wo der Client die initiale Anfrage starten muss, und es gibt Protokolle, wo der Server diese Aufgabe \"{u}bernimmt. Beispielsweise startet bei dem ``Ping-Pong Protokoll'' der Client- und bei dem ``Commit-Protokollen'' der Server immer die erste Anfrage. Es gibt kein Protokoll, wo Client und Server jeweils eine initiale Anfragen starten k\"{o}nnen. -Bei allen dieser f\"{u}nf Ereignissen kann der betroffene Prozess noch beliebig andere Dinge, abh\"{a}ngig vom Protokoll, tun. Beispielsweise kann er den Inhalt der Nachricht generieren oder lokale Variablen initialisieren oder eine der lokalen Uhzeiten \"{a}ndern oder Wecker f\"{u}r ``Callback Ereignisse'' setzen (mehr dazu sp\"{a}ter). +Bei allen dieser f\"{u}nf Ereignissen kann der betroffene Prozess noch beliebig andere Dinge, abh\"{a}ngig vom Protokoll, tun. Beispielsweise kann er den Inhalt der Nachricht generieren oder lokale Variablen initialisieren oder eine der lokalen Uhzeiten \"{a}ndern oder Wecker f\"{u}r ``Callback Ereignisse'' setzen (mehr dazu sp\"{a}ter) und vieles mehr. \subsubsection{Nachrichtenempfang sowie Antwortnachrichten (nicht-programmierbar)} -Nachdem ein Prozess eine Nachricht empf\"{a}ngt wird zuerst \"{u}berpr\"{u}ft ob er das dazugeh\"{o}rige Protokoll unterst\"{u}tzt. Wenn der Prozess das Protokoll unterst\"{u}tzt, wird geschaut ob es sich um eine Client- oder eine Servernachricht handelt. Wenn es sich um eine Clientnachricht handelt, so mu der Empf\"{a}ngerprozess ein das Protokoll serverseitig unterst\"{u}tzen und virce versa. Wenn alles passt, dann f\"{u}hrt der Empf\"{a}ngerprozess die vom Protokoll definierten Aktionen aus. In der Regel berechnet der Prozess irgendeinen Wert und schickt ihn \"{u}ber eine Antwortnachricht zur\"{u}ck. Es k\"{o}nnen aber auch beliebig andere Aktionen ausgef\"{u}hrt werden. Welche dies sind h\"{a}ngt wieder vom Protokoll ab. +Nachdem ein Prozess eine Nachricht empf\"{a}ngt wird zuerst \"{u}berpr\"{u}ft ob er das dazugeh\"{o}rige Protokoll unterst\"{u}tzt. Wenn der Prozess das Protokoll unterst\"{u}tzt, wird geschaut ob es sich um eine Client- oder eine Servernachricht handelt. Wenn es sich um eine Clientnachricht handelt, so mu der Empf\"{a}ngerprozess ein das Protokoll serverseitig unterst\"{u}tzen und virce versa. Wenn alles passt, dann f\"{u}hrt der Empf\"{a}ngerprozess die vom Protokoll definierten Aktionen aus. In der Regel berechnet der Prozess irgendeinen Wert und schickt ihn \"{u}ber eine Antwortnachricht zur\"{u}ck. Es k\"{o}nnen aber auch beliebig andere Aktionen ausgef\"{u}hrt werden. Welche dies sind h\"{a}ngt vom Protokoll ab. \subsubsection{Callback-Ereignisse (nicht-programmierbar)} -Ein Callback-Ereignis kann von einem Protokoll ausgel\"{o}st werden. Das Protokoll setzt einen Wecker, der angibt zur welcher lokalen Uhrzeit eine weitere Aktion ausgef\"{u}hrt werden soll. Zum Beispiel lassen sich hiermit Timeouts realisieren: Wenn ein Protokoll eine Antwort erwartet, diese aber nicht eintrifft, dann kann nach einer bestimmten Zeit eine Anfrage erneut verschickt werden! Es k\"{o}nnen beliebig viele Callback-Ereignisse definiert werden. Wenn sie noch nicht ausgef\"{u}hrt wurden und aufgrund eines anderen Ereignisses nicht mehr ben\"{o}tigt werden, k\"{o}nnen sie vom Protokoll auch wieder entfernt werden. Wenn ein Callback-Ereignis ausgef\"{u}hrt wird, kann es sich selbst wieder f\"{u}r eine weitere Ausf\"{u}hrung erneut planen. So lassen sich periodisch wieder-eintreffende Ereignisse realisieren. Beispielsweise verwenden die ``Commit-Protokolle'' (mehr dazu sp\"{a}ter) Callback-Ereignisse, indem solange Anfragen verschickt werden, bis alle ben\"{o}tigten Antworten vorliegen. +Ein Callback-Ereignis kann von einem Protokoll ausgel\"{o}st werden. Das Protokoll setzt einen Wecker, der angibt zur welcher lokalen Uhrzeit eine weitere Aktion ausgef\"{u}hrt werden soll. Zum Beispiel lassen sich hiermit Timeouts realisieren: Wenn ein Protokoll eine Antwort erwartet, diese aber nicht eintrifft, dann kann nach einer bestimmten Zeit eine Anfrage erneut verschickt werden! Es k\"{o}nnen beliebig viele Callback-Ereignisse definiert werden. Wenn sie noch nicht ausgef\"{u}hrt wurden und aufgrund eines anderen Ereignisses nicht mehr ben\"{o}tigt werden, k\"{o}nnen sie vom Protokoll auch wieder nachtr\"{a}glich entfernt werden. Wenn ein Callback-Ereignis ausgef\"{u}hrt wird, kann es sich selbst wieder f\"{u}r eine weitere Ausf\"{u}hrung erneut planen. So lassen sich periodisch wieder-eintreffende Ereignisse realisieren. Beispielsweise verwenden die ``Commit-Protokolle'' (mehr dazu sp\"{a}ter) Callback-Ereignisse, indem solange Anfragen verschickt werden, bis alle ben\"{o}tigten Antworten vorliegen. \subsubsection{Zufallsereignisse (nicht-programmierbar)} @@ -219,7 +225,7 @@ Die Eintrittszeit eines Zufallsereignisses wird vom Simulator zuf\"{a}llig gew\" \section{Einstellungen} -In diesem Abschnitt wird auf die m\"{o}glichen Konfigurationsm\"{o}glichkeiten genauer eingegangen. Es wird zwischen drei verschiedenen Typen von Einstellungen unterschieden. Zun\"{a}chst gibt es globale Simulationseinstellungen. Diese beinhalten Variablen die die gesamte Simulation betreffen. Zudem hat jeder Prozess seine eigenen lokale Einstellungen. Dar\"{u}berhinaus kann jedes Protokoll f\"{u}r jeden Prozess separat eingestellt werden. +In diesem Abschnitt wird auf die m\"{o}glichen Konfigurationsm\"{o}glichkeiten genauer eingegangen. Es werden zwischen drei verschiedenen Typen von Einstellungen unterschieden. Zun\"{a}chst gibt es globale Simulationseinstellungen. Diese beinhalten Variablen die die gesamte Simulation betreffen. Zudem hat jeder Prozess seine eigenen lokale Einstellungen. Dar\"{u}berhinaus kann jedes Protokoll f\"{u}r jeden Prozess separat eingestellt werden. \subsection{Variablendatentypen} @@ -229,7 +235,7 @@ In diesem Abschnitt wird auf die m\"{o}glichen Konfigurationsm\"{o}glichkeiten g \begin{tabular}{l|l} \textbf{Prefix} & \textbf{Beschreibung}\\ \hline - \texttt{Boolean} & boolschen Wert, z.B. true oder false\\ + \texttt{Boolean} & boolschen Wert, z.B. \texttt{true} oder \texttt{false}\\ \texttt{Color} & Java-Farbobjekt\\ \texttt{Float} & Flieskommazahl einfacher genauigkeit\\ \texttt{Integer} & Einfache Integerzahl\\ @@ -241,10 +247,6 @@ In diesem Abschnitt wird auf die m\"{o}glichen Konfigurationsm\"{o}glichkeiten g \label{tb:VariablenDatentypen} \end{table} -Der Simulator unterscheidet zwischen mehreren Datentypen, in denen die einstellbaren Variablen vorliegen k\"{o}nnen (Tabelle \ref{tb:VariablenDatentypen}). Im folgenden bedeutet (\texttt{Prefix}: \textit{wert}), dass die Variable vom Typ \texttt{Prefix} ist, und standardm\"{a}ssig den Wert \textit{wert} zugewiesen hat. Lediglich die Variablenwerte, jedoch nicht die Variablentypen sowie Variablennamen, lassen sich vom Benutzer \"{a}ndern. - -\subsection{Simulationseinstellungen} - \begin{figure}[htbp] \centering \fbox{\includegraphics{images/ss-simulationseinstellungen}} @@ -253,18 +255,31 @@ Der Simulator unterscheidet zwischen mehreren Datentypen, in denen die einstellb \label{fig:Simulationseinstellungen} \end{figure} + +Der Simulator unterscheidet zwischen mehreren Datentypen, in denen die einstellbaren Variablen vorliegen k\"{o}nnen (Tabelle \ref{tb:VariablenDatentypen}). Im folgenden bedeutet \texttt{Prefix}: \textit{wert}, dass die Variable vom Typ \texttt{Prefix} ist, und standardm\"{a}ssig den Wert \textit{wert} zugewiesen hat. Vom Benutzer lassen sich lediglich die Variablenwerte, jedoch nicht die Variablentypen sowie Variablennamen, \"{a}ndern. + +\subsection{Simulationseinstellungen} + +\begin{figure}[htbp] + \centering + \fbox{\includegraphics{images/ss-simulationseinstellungen-experten}} + \caption{Weitere Simulationseinstellungen im Expertenmodus} + \label{fig:SimulationseinstellungenExperten} +\end{figure} + + Beim Erstellen einer neuen Simulation erscheint zun\"{a}chst das dazugeh\"{o}rige Einstellungsfenster (Abbildung \ref{fig:Simulationseinstellungen}). In der Regel reicht es, wenn der Benutzer hier die Standardwerte \"{u}bernimmt. Es besteht auch die M\"{o}glichkeit die Einstellungen nachtr\"{a}glich zu editieren, indem das Einstellungsfenster via ``Editieren $\rightarrow$ Einstellungen'' erneut aufgerufen wird. Im Folgenden werden alle in den Simulationseinstellungen verf\"{u}gbaren Variablen beschrieben. Die Klammern geben den Typen und die Standardwerte an, in denen die Variablen vorliegen. \begin{itemize} - \item \textbf{Prozesse empfangen eigene Nachrichten} \textit{(Boolean: false)}: Standardm\"{a}ig k\"{o}nnen Prozesse \"{u}bersichtshalber keine Nachrichten empfangen, die sie selbst verschickt haben. Wenn diese Variable jedoch auf true gesetzt wird, dann kann ein Prozess auch auf selbst verschickte Nachrichten antworten. Die Zeit f\"{u}r das Versenden und Empfangen einer Nachricht an sich selbst betr\"{a}gt jedoch stets 0ms. Diese Variable sollte mit Vorsicht verwendet werden, da hierdurch, bedingt aus den 0ms, Endlosschleifen entstehen k\"{o}nnen. - \item \textbf{Mittelwerte der Nachrichtenverlustwahrscheinlichkeiten bilden} \textit{(Boolean, true)}: Jede Nachricht die verschickt wird hat, je nach Einstellungen, eine vom verschickendem Prozess abh\"{a}ngige zuf\"{a}llige \"{U}bertragungszeit. Wenn diese Option aktiviert ist, so wird der Mittelwert vom Sende- und Empfangsprozess gebildet. Ansonsten wird stets die \"{U}bertragungszeit, die beim Senderprozesses angegeben wurde, verwendet. + \item \textbf{Prozesse empfangen eigene Nachrichten} \textit{(Boolean: false)}: Standardm\"{a}ig k\"{o}nnen Prozesse \"{u}bersichtshalber keine Nachrichten empfangen, die sie selbst verschickt haben. Wenn diese Variable jedoch auf \texttt{true} gesetzt wird, dann kann ein Prozess auch selbst verschickte Nachrichten emfpangen und auf diese ebenso antworten. Die Zeit f\"{u}r das Versenden und Empfangen einer Nachricht an sich selbst betr\"{a}gt jedoch stets \texttt{0ms}. Diese Variable sollte mit Vorsicht verwendet werden, da hierdurch, bedingt aus den \texttt{0ms}, Endlosschleifen entstehen k\"{o}nnen. + \item \textbf{Mittelwerte der Nachrichtenverlustwahrscheinlichkeiten bilden} \textit{(Boolean, true)}: Jede Nachricht die verschickt wird hat, je nach Einstellungen, eine vom verschickendem Prozess abh\"{a}ngige zuf\"{a}llige \"{U}bertragungszeit bis sie ihr Ziel erreicht. Wenn diese Option aktiviert ist, so wird der Mittelwert vom Sende- und Empfangsprozess gebildet. Ansonsten wird stets die \"{U}bertragungszeit, die beim Senderprozesses angegeben wurde, verwendet. \item \textbf{Nur relevante Nachrichten anzeigen} \textit{(Boolean: true)}: Wenn nur alle relevanten Nachrichten angezeigt werden, so werden Nachrichten an einen Prozess die er selbst nicht verarbeiten kann, weil er das dazugeh\"{o}rige Protokoll nicht unterst\"{u}tzt, nicht angezeigt. Hierdurch wird eine Simulation viel \"{u}bersichtlicher dargestellt. \item \textbf{Expertenmodus aktivieren} \textit{(Boolean, false)}: Hier l\"{a}sst sich der Expertenmodus auf einen alternativen Weg aktivieren beziehungsweise wieder deaktivieren. - \item \textbf{Simulation periodisch wiederholen} \textit{(Boolean: false)}: Wenn diese Variable auf true gesetzt ist, so wird die Simulation jedes Mal nach Ablauf automatisch erneut gestartet. - \item \textbf{Abspielgeschwindigkeit der Simulation} \textit{(Float: 0.5)}: Gibt den Faktor der Simulationsabspielgeschindigkeit an. Wenn als Faktor 1 gew\"{a}hlt wird, dann dauert eine simulierte Sekunde so lange wie eine Sekunde in echt. Der Faktor 0.5 gibt somit an, dass die Simulation mit halber Echtzeitgschwindigkeit abgespielt wird. - \item \textbf{Anzahl der Prozesse} \textit{(Integer: 3)}: Gibt an, wie viele Prozesse an der Simulation teilnehmen sollen. Wie schon erw\"{a}hnt kann der Benutzer auch nachtr\"{a}glich via Rechtsklick auf den Prozessbalken den jeweiligen Prozess aus der Simulation entfernen oder weitere Prozesse hinzuf\"{u}gen. + \item \textbf{Simulation periodisch wiederholen} \textit{(Boolean: false)}: Wenn diese Variable auf \texttt{true} gesetzt ist, so wird die Simulation jedes Mal nach Ablauf automatisch erneut gestartet. + \item \textbf{Abspielgeschwindigkeit der Simulation} \textit{(Float: 0.5)}: Gibt den Faktor der Simulationsabspielgeschindigkeit an. Wenn als Faktor \texttt{1} gew\"{a}hlt wird, dann dauert eine simulierte Sekunde so lange wie eine echte Sekunde. Der Faktor \texttt{0.5} gibt somit an, dass die Simulation mit halber Echtzeitgschwindigkeit abgespielt wird. + \item \textbf{Anzahl der Prozesse} \textit{(Integer: 3)}: Gibt an wieviele Prozesse an der Simulation teilnehmen sollen. Wie schon erw\"{a}hnt kann der Benutzer auch nachtr\"{a}glich via Rechtsklick auf den Prozessbalken den jeweiligen Prozess aus der Simulation entfernen oder weitere Prozesse hinzuf\"{u}gen. \item \textbf{Dauer der Simulation} \textit{(Integer: 15)}: Gibt die Dauer der Simulation in Sekunden an. \end{itemize} @@ -275,8 +290,8 @@ Die weiteren Einstellungen unter ``Einstellungen f\"{u}r neue Prozesse'' sowie ` Jeder Prozess besitzt folgende Variablen, die entweder via dem Variablen-Tab in der Sidebar oder ``Editieren $\rightarrow$ Prozess \textit{PID}'' oder Linksklick auf den Prozessbalken editiert werden k\"{o}nnen. Das Fenster f\"{u}r die Prozesseinstellungen wird auch als Prozesseditor bezeichnet. \begin{itemize} - \item \textbf{Uhrabweichung} \textit{(Float: 0.0)}: Gibt den Faktor $f$ an, um den die lokale Prozessuhr abweicht. Der Faktor 0.0 besagt beispielsweise, dass die Uhr keine Abweichung hat. Ein Faktor von 1 w\"{u}rde hingegen bedeuten, dass die Uhr mit doppelter Geschwindigkeit liefe. F\"{u}r $f$ sind nur Werte $> -1.0$ erlaubt, da sonst die Prozessuhr r\"{u}ckw\"{a}rts laufen k\"{o}nnte. Bei allen anderen Werten wird der Faktor wieder automatisch auf 0.0 gesetzt. Da der Simulator intern mit Fliekommazahlen doppelter Genauigkeit arbeitet, kann es zu kleinen, jedoch vernachl\"{a}ssigbaren, Rundungsfehlern kommen. - \item \textbf{Prozessausfallwahrscheinlichkeit} \textit{(Integer: 0)}: Gibt eine Wahrscheinlichkeit in Prozent an, ob der gegebene Prozess w\"{a}hrend der Simulation zuf\"{a}llig abst\"{u}rzt. Die Wahrscheinlichkeit bezieht sich auf die komplette Simulationsdauer. Bei einer Einstellung von 100 Prozent und der Simulationsdauer von 15 Sekunden st\"{u}rzt der Prozess auf jeden Fall zwischen 0ms und 15000ms ab. An welcher Stelle dies geschieht wird zuf\"{a}llig bestimmt. Wenn der Prozess nach seinem Absturz wiederbelebt wird, st\"{u}rzt er nicht noch einmal zuf\"{a}llig ab. Dies gilt allerdings nicht, wenn die Prozesseinstellungen nach dem Zufallsabsturz erneut ge\"{a}ndert und \"{u}bernommen wurden, da dann das Zufallsabst\"{u}rzereignis erneut erstellt wird. + \item \textbf{Uhrabweichung} \textit{(Float: 0.0)}: Gibt den Faktor an, um den die lokale Prozessuhr abweicht. Der Faktor \texttt{0.0} besagt beispielsweise, dass die Uhr keine Abweichung hat. Ein Faktor von \texttt{1} w\"{u}rde hingegen bedeuten, dass die Uhr mit doppelter Geschwindigkeit liefe. Sind sind nur Werte > \texttt{-1.0} erlaubt, da sonst die Prozessuhr r\"{u}ckw\"{a}rts laufen k\"{o}nnte. Bei allen anderen Werten wird der Faktor wieder automatisch auf \texttt{0.0} gesetzt. Da der Simulator intern mit Fliekommazahlen doppelter Genauigkeit arbeitet, kann es zu kleinen, jedoch vernachl\"{a}ssigbaren, Rundungsfehlern kommen. + \item \textbf{Prozessausfallwahrscheinlichkeit} \textit{(Integer: 0)}: Gibt eine Wahrscheinlichkeit in Prozent an, ob der gegebene Prozess w\"{a}hrend der Simulation zuf\"{a}llig abst\"{u}rzt. Die Wahrscheinlichkeit bezieht sich auf die komplette Simulationsdauer. Bei einer Einstellung von \texttt{100} Prozent und der Simulationsdauer von \texttt{15} Sekunden st\"{u}rzt der Prozess auf jeden Fall zwischen \texttt{0ms} und \texttt{15000ms} ab. An welcher Stelle dies geschieht wird zuf\"{a}llig bestimmt. Wenn der Prozess nach seinem Absturz wiederbelebt wird, st\"{u}rzt er nicht noch einmal zuf\"{a}llig ab. Dies gilt allerdings nicht, wenn die Prozesseinstellungen nach dem Zufallsabsturz erneut ge\"{a}ndert und \"{u}bernommen wurden, da dann das Zufallsabst\"{u}rzereignis erneut erstellt wurde. \item \textbf{Lokale Zeit} \textit{(Long: 0)}: Gibt die aktuelle lokale Prozesszeit in Millisekunden an. Es empfiehlt sich daher die Simulation, bevor Prozesseinstellungen vorgenommen werden, zu pausieren. \item \textbf{Nachrichtenverlustwahrscheinlichkeit} \textit{(Integer: 0)}: Gibt eine Wahrscheinlichkeit in Prozent an, ob eine vom aktuell ausgew\"{a}hlten Prozess verschickte Nachricht unterwegs verloren geht. An welcher Stelle die Nachricht zwischen dem Sende- und Empfangsprozess verloren geht wird vom Simulator zuf\"{a}llig gew\"{a}hlt. \item \textbf{Maximale \"{U}bertragungszeit} \textit{(Long: 2000)}: Gibt die Dauer in Millisekunden an, die eine vom Prozess verschickte Nachricht maximal ben\"{o}tigt, bis sie einen Empf\"{a}ngerprozess erreicht. Im weiteren Verlauf wird dieser Wert mit $t_{max}$ bezeichnet. Der tats\"{a}chlich verwendete Wert wird zuf\"{a}llig zwischen der minimalen- und der maximalen Zeit (jeweils inklusive) gew\"{a}hlt. @@ -286,13 +301,6 @@ Jeder Prozess besitzt folgende Variablen, die entweder via dem Variablen-Tab in \end{itemize} -\begin{figure}[htbp] - \centering - \fbox{\includegraphics{images/ss-simulationseinstellungen-experten}} - \caption{Weitere Simulationseinstellungen im Expertenmodus} - \label{fig:SimulationseinstellungenExperten} -\end{figure} - Im selben Fenster lassen sich auch die Protokollvariablen editieren. Die Protokollvariablen werden jedoch sp\"{a}ter in der Protokollsektion beschrieben. \subsection{Einstellungen im Expertenmodus} @@ -324,11 +332,11 @@ Im selben Fenster lassen sich auch die Protokollvariablen editieren. Die Protoko \label{tb:Farbeinstellungen} \end{table} -Im Expertenmodus lassen sich zus\"{a}tzliche Variablen, wie beispielsweise diverse Farbwerte und Anzahl der Pixel verschiedener der GUI-Elemente, editieren. In Abbildung \ref{fig:SimulationseinstellungenExperten} sieht der Benutzer alle einstellbaren Farben. Die fett-gedruckten Schl\"{u}ssel in Tabelle \ref{tb:Farbeinstellungen} dienen nur als Standardwerte f\"{u}r neuzuerstellenen Prozesse und sind auch jeweils in den Prozesseinstellungen separat editierbar. +Im Expertenmodus lassen sich zus\"{a}tzliche Variablen, wie beispielsweise diverse Farbwerte und Anzahl der Pixel verschiedener der GUI-Elemente, editieren. Auf Abbildung \ref{fig:SimulationseinstellungenExperten} sieht der Benutzer alle einstellbaren Farben. Die fett-gedruckten Schl\"{u}ssel in Tabelle \ref{tb:Farbeinstellungen} dienen nur als Standardwerte f\"{u}r neuzuerstellenen Prozesse und sind auch jeweils in den Prozesseinstellungen separat editierbar. \section{Protokolle} -Im Folgenden werden alle bisher verf\"{u}gbaren Protokolle behandelt. Wie bereits beschrieben wird bei Protokollen zwischen Server- und Clientseite unterschieden. Server k\"{o}nnen auf Clientnachrichten, und Client auf Servernachrichten antworten. Jeder Prozess kann beliebig viele Protokolle sowohl Clientseitig als auch Serverseitig untest\"{u}tzen. Theoretisch ist es auch m\"{o}glich, dass ein Prozess f\"{u}r ein bestimmtes Protokoll gleichzeitig Server und Client ist. Der Benutzer kann auch weitere eigene Protokolle in der Programmiersprache Java mittels einer speziellen API (Application Programming Interface) erstellen. Wie eigene Protokolle erstellt werden k\"{o}nnen wird sp\"{a}ter behandelt. +Im Folgenden werden alle verf\"{u}gbaren Protokolle behandelt. Wie bereits beschrieben wird bei Protokollen zwischen Server- und Clientseite unterschieden. Server k\"{o}nnen auf Clientnachrichten, und Client auf Servernachrichten antworten. Jeder Prozess kann beliebig viele Protokolle sowohl Clientseitig als auch Serverseitig untest\"{u}tzen. Theoretisch ist es auch m\"{o}glich, dass ein Prozess f\"{u}r ein bestimmtes Protokoll gleichzeitig Server und Client ist. Der Benutzer kann auch weitere eigene Protokolle in der Programmiersprache Java mittels einer speziellen API (Application Programming Interface) erstellen. Wie eigene Protokolle erstellt werden k\"{o}nnen wird sp\"{a}ter behandelt. \subsection{Beispiel (Dummy) Protokoll} @@ -336,6 +344,13 @@ Das Dummy-Protokoll dient lediglich als leeres Template f\"{u}r die Erstellung e \subsection{Das Ping-Pong Protokoll} +\begin{figure}[htbp] + \centering + \fbox{\includegraphics[width=10cm]{images/ss-protokoll-ping-pong}} + \caption{Das Ping-Pong Protokoll} + \label{fig:PingPongProto} +\end{figure} + \begin{table} \centering \fbox{ @@ -352,14 +367,7 @@ Das Dummy-Protokoll dient lediglich als leeres Template f\"{u}r die Erstellung e \end{table} -\begin{figure}[htbp] - \centering - \fbox{\includegraphics[width=10cm]{images/ss-protokoll-ping-pong}} - \caption{Das Ping-Pong Protokoll} - \label{fig:PingPongProto} -\end{figure} - -Bei dem Ping-Pong Protokoll (Abbildung \ref{fig:PingPongProto}) werden zwischen zwei Prozessen, Client P1 und Server P2, st\"{a}ndig Nachrichten hin- und hergeschickt. Der Ping-Pong Client startet die erste Anfrage, worauf der Server dem Client antwortet. Auf diese Antwort wird vom Client wiederum geantwortet und so weiter. Jeder Nachricht wird ein Z\"{a}hler mitgeschickt, der bei jeder Station um eins inkrementiert- und jeweils im Loggfenster protokolliert wird. In der Simulation werden erst keine Antwortnachrichten mehr verschickt, wenn entweder eine Nachricht verloren geht, oder wenn die Simulationszeit das Ende erreicht hat. In Tabelle \ref{tb:PingPongTasks} sind alle f\"{u}r dieses Beispiel programmierten Ereignisse aufgef\"{u}hrt! Wichtig ist, dass Prozess 1 seinen Ping-Pong Client aktiviert, bevor er eine Ping-Pong Clientanfrage startet! Wenn die Eintrittszeiten f\"{u}r Aktivierung und das Starten der Anfrage identisch sind, so ordnet der Ereigniseditor diese Ereignisse automatisch in der richtigen Reihenfolge an. Wenn der Ping-Pong Client nicht aktiviert werden w\"{u}rde, dann k\"{o}nnte er auch keine Ping-Pong Anfrage starten. Dies gilt nat\"{u}rlich f\"{u}r alle anderen Protokolle analog. Anhand dieses Beispiels ist auch erkennbar, dass die noch nicht ausgelieferte Nachrichten noch g\"{u}n eingef\"{a}rbt ist. Alle ausgelieferten Nachrichten tragen bereits die Farbe Blau. +Bei dem Ping-Pong Protokoll (Abbildung \ref{fig:PingPongProto}) werden zwischen zwei Prozessen, Client P1 und Server P2, st\"{a}ndig Nachrichten hin- und hergeschickt. Der Ping-Pong Client startet die erste Anfrage, worauf der Server dem Client antwortet. Auf diese Antwort wird vom Client wiederum geantwortet und so weiter. Jeder Nachricht wird ein Z\"{a}hler mitgeschickt, der bei jeder Station um eins inkrementiert- und jeweils im Loggfenster protokolliert wird. In Tabelle \ref{tb:PingPongTasks} sind alle f\"{u}r dieses Beispiel programmierten Ereignisse aufgef\"{u}hrt! Wichtig ist, dass Prozess 1 seinen Ping-Pong Client aktiviert, bevor er eine Ping-Pong Clientanfrage startet! Wenn die Eintrittszeiten f\"{u}r Aktivierung und das Starten der Anfrage identisch sind, so ordnet der Ereigniseditor diese Ereignisse automatisch in der richtigen Reihenfolge an. Wenn der Ping-Pong Client nicht aktiviert werden w\"{u}rde, dann k\"{o}nnte P1 auch keine Ping-Pong Anfrage starten. Der Prozess muss das jeweilige Protokoll unterst\"{u}tzen bevor er eine Anfrage starten kann. Dies gilt nat\"{u}rlich f\"{u}r alle anderen Protokolle analog. Anhand dieses Beispiels ist auch erkennbar, dass die noch nicht ausgelieferte Nachrichten g\"{u}n eingef\"{a}rbt ist. Alle ausgelieferten Nachrichten tragen bereits die Farbe Blau. \begin{figure}[htbp] \centering @@ -368,7 +376,7 @@ Bei dem Ping-Pong Protokoll (Abbildung \ref{fig:PingPongProto}) werden zwischen \label{fig:PingPongSturmProto} \end{figure} -Werden die Ereignisse wie in Tabelle \ref{tb:PingPongSturmTasks} abge\"{a}ndert, so l\"{a}sst sich ein Ping-Pong Sturm realisieren. Dort wurde ein neuer Prozess 3 eingef\"{u}hrt, der als Ping-Pong Server fungiert. Als Ursache verdoppelt sich die Anzahl der kursierenden Nachrichten bei jedem Client-Server Roundtrip, da auf jede Clientnachricht stets 2 Serverantworten verschickt werden. In Abbildung \ref{fig:PingPongSturmProto} ist der resultierende Simulationsverlauf dargestellt. +Werden die Ereignisse wie in Tabelle \ref{tb:PingPongSturmTasks} abge\"{a}ndert, so l\"{a}sst sich ein Ping-Pong Sturm realisieren. Dort wurde ein neuer Prozess 3 eingef\"{u}hrt, der als Ping-Pong Server agiert. Als Resultat verdoppelt sich die Anzahl der kursierenden Nachrichten bei jedem Ping-Pong Durchgang, da auf jede Clientnachricht stets 2 Serverantworten verschickt werden. Auf Abbildung \ref{fig:PingPongSturmProto} ist der dazugeh\"{o}rige Simulationsverlauf dargestellt. \begin{table} \centering @@ -395,7 +403,7 @@ Werden die Ereignisse wie in Tabelle \ref{tb:PingPongSturmTasks} abge\"{a}ndert, \label{fig:BroadcastSturmProto} \end{figure} -Das Broadcast-Sturm Protokoll verh\"{a}lt sich \"{a}hnlich wie das Ping-Pong Protokoll. Der Unterschied besteht darin, dass sich das Protokoll anhand einer eindeutigen Broadcast-ID merkt, welche Nachrichten bereits verschickt wurden. Das Broadcast-Sturm Protokoll (Server- und Clientseitig) verschickt alle erhaltenen Nachrichten, sofern sie vom jeweiligen Prozess noch nicht schon einmal verschickt wurden, erneut. Somit l\"{a}sst sich, unter Verwendung mehrerer Prozesse (hier 6), wie auf Abbildung \ref{fig:BroadcastSturmProto}, ein Broadcast-Sturm erzeugen. P1 ist der Client und startet je eine Anfrage nach 0ms und 2500ms. Die Simulationsdauer betr\"{a}gt hier genau 5000ms. Da Client nur Servernachrichten und Server nur Clientnachrichten empfangen k\"{o}nnen, ist in dieser Simulation jeder Prozess, wie in Tabelle \ref{tb:BroadcastSturmTasks} angegeben, gleichzeitig Server und Client. +Das Broadcast-Sturm Protokoll verh\"{a}lt sich \"{a}hnlich wie das Ping-Pong Protokoll. Der Unterschied besteht darin, dass sich das Protokoll anhand einer eindeutigen Broadcast-ID merkt, welche Nachrichten bereits verschickt wurden. Das Broadcast-Sturm Protokoll (Server- und Clientseitig) verschickt alle erhaltenen Nachrichten, sofern sie vom jeweiligen Prozess noch nicht schon einmal verschickt wurden, erneut. Somit l\"{a}sst sich, unter Verwendung mehrerer Prozesse (hier 6), wie auf Abbildung \ref{fig:BroadcastSturmProto}, ein Broadcast-Sturm erzeugen. P1 ist der Client und startet je eine Anfrage nach \texttt{0ms} und \texttt{2500ms}. Die Simulationsdauer betr\"{a}gt hier genau \texttt{5000ms}. Da Client nur Servernachrichten und Server nur Clientnachrichten empfangen k\"{o}nnen, ist in dieser Simulation jeder Prozess, wie in Tabelle \ref{tb:BroadcastSturmTasks} angegeben, gleichzeitig Server und Client. \begin{table} \centering @@ -425,6 +433,13 @@ Das Broadcast-Sturm Protokoll verh\"{a}lt sich \"{a}hnlich wie das Ping-Pong Pro \subsection{Das Protokoll zur internen Synchronisierung in einem synchronen System} +\begin{figure}[htbp] + \centering + \fbox{\includegraphics[width=10cm]{images/ss-protokoll-time-sync}} + \caption{Das Protokoll zur internen Synchronisierung} + \label{fig:TimeSyncProto} +\end{figure} + Bisher haben wir uns nur mit Protokollen besch\"{a}ftigt, in denen die beteiligten Prozesse keine Uhrabweichung hatten. Das Protokoll zur internen Synchronisierung ist ein Protokoll zur Synchronisierung der lokalen Prozesszeit, welches beispielsweise angewandt werden kann, wenn eine Prozesszeit aufgrund einer Uhrabweichung falsch geht. Wenn der Client seine falsche lokale Zeit $t_c$ mit einem Server synchronisieren m\"{o}chte, so schickt er ihm eine Clientanfrage. Der Server schickt als Antwort seine eigene lokale Prozesszeit $t_s$ zur\"{u}ck, womit der Client seine neue und genauere Prozesszeit berechnen kann. Wie genau die neue Prozesszeit berechnet wird, wird im Folgenden beschrieben. \begin{table} @@ -444,16 +459,15 @@ Bisher haben wir uns nur mit Protokollen besch\"{a}ftigt, in denen die beteiligt \label{tb:InterneSyncTasks} \end{table} -Hier (Abbildung \ref{fig:TimeSyncProto}) stellt P1 den Client und P2 den Server dar. Da die \"{U}bertragungszeit $t_u$ einer Nachricht angenommen zwischen $t'_{min}$ und $t'_{max}$ liegt, setzt der Client P1 nach Empfang der Serverantwort seine lokale Prozesszeit auf $t_c := t_s + \frac{1}{2} (t'_{min} + t'_{max})$. Somit wurde die lokale Zeit von P1, bis auf einen Fehler $f$ mit $f < \frac{t'_{max} - t'_{min}}{2}$, synchronisiert. +Hier (Abbildung \ref{fig:TimeSyncProto}) stellt P1 den Client und P2 den Server dar. Da die \"{U}bertragungszeit $t_u$ einer Nachricht angenommen zwischen $t'_{min}$ und $t'_{max}$ liegt, setzt der Client P1 nach Empfang der Serverantwort seine lokale Prozesszeit auf -Der Clientprozess hat in der Abbildung \ref{fig:TimeSyncProto} als Uhrabweichung den Wert 0.1 und der Server hat als Uhrabweichung den Wert 0.0 konfiguriert. Der Client startet, wie in Tabelle \ref{tb:InterneSyncTasks} angegeben, nach 0ms, 5000ms und 10000ms seiner lokalen Prozesszeit jeweils eine Clientanfrage. In der Abbildung l\"{a}sst sich erkennen, dass die 2. und die 3. Anfrage nicht synchron zu der globalen Zeit (Sekunden-Gatter) gestartet werden. Dies ist auf die Uhrabweichung von P1 zur\"{u}ckzuf\"{u}hren. Nach Simulationsende ist die Zeit von P1 bis auf $15000ms - 15976ms = -976 ms$ synchronisiert. +\begin{equation*} + t_c := t_s + \frac{1}{2} (t'_{min} + t'_{max}) +\end{equation*} -\begin{figure}[htbp] - \centering - \fbox{\includegraphics[width=10cm]{images/ss-protokoll-time-sync}} - \caption{Das Protokoll zur internen Synchronisierung} - \label{fig:TimeSyncProto} -\end{figure} +Somit wurde die lokale Zeit von P1, bis auf einen Fehler von $< \frac{1}{2} (t'_{max} - t'_{min})$, synchronisiert. + +Der Clientprozess hat in der Abbildung \ref{fig:TimeSyncProto} als Uhrabweichung den Wert \texttt{0.1} und der Server hat als Uhrabweichung den Wert \texttt{0.0} konfiguriert. Der Client startet, wie in Tabelle \ref{tb:InterneSyncTasks} angegeben, nach \texttt{0ms}, \texttt{5000ms} und \texttt{10000ms} seiner lokalen Prozesszeit jeweils eine Clientanfrage. In der Abbildung l\"{a}sst sich erkennen, dass die 2. und die 3. Anfrage nicht synchron zu der globalen Zeit (Sekunden-Gatter) gestartet werden, was auf die Uhrabweichung von P1 zur\"{u}ckzuf\"{u}hren ist. Nach Simulationsende ist die Zeit von P1 bis auf \texttt{15000ms} - \texttt{15976ms} = \texttt{-976ms} synchronisiert. \subsubsection{Protokollvariablen} @@ -464,7 +478,7 @@ Dieses Protokoll verwendet folgende zwei clientseitige Variablen, die in den Pro \item \textbf{Max. \"{U}bertragungszeit} \textit{(Long: 2000)}: Gibt den Wert $t'_{max}$ in Millisekunden an \end{itemize} -$t'_{min}$ und $t'_{max}$ sind die bei den Protokollberechnungen verwendeten Werte. Sie k\"{o}nnen sich allerdings von den tats\"{a}chlichen Nachrichten\"{u}bertragungszeiten $t_{min}$ und $t_{max}$ (siehe Sektion \"{u}ber Prozesseinstellungen) abweichen. Somit lassen sich auch Szenarien simulieren, in denen das Protokoll falsch konfiguriert wurde und die Zeitsynchronisation gr\"{o}ssere Ungenauigkeiten aufweisen kann. +$t'_{min}$ und $t'_{max}$ sind die bei den Protokollberechnungen verwendeten Werte. Sie k\"{o}nnen sich allerdings von den tats\"{a}chlichen Nachrichten\"{u}bertragungszeiten $t_{min}$ und $t_{max}$ (siehe Sektion \"{u}ber Prozesseinstellungen) abweichen. Somit lassen sich auch Szenarien simulieren, in denen das Protokoll falsch eingestellt wurde und in der Zeitsynchronisation gr\"{o}ssere Fehler auftreten k\"{o}nnen. \subsection{Christians Methode zur externen Synchronisierung} @@ -475,13 +489,19 @@ $t'_{min}$ und $t'_{max}$ sind die bei den Protokollberechnungen verwendeten Wer \label{fig:TimeSync2Proto} \end{figure} -Ein weiteres Protokoll f\"{u}r die Synchronisierung von Uhrzeiten funktioniert nach der Christians Methode zur externen Synchronisierung. Die Christians Methode benutzt die RTT (Round Trip Zeit) $t_{rtt}$, um die \"{U}bertragungszeiten von einzelnen Nachrichten zu approximieren. +Ein weiteres Protokoll f\"{u}r die Synchronisierung von Uhrzeiten funktioniert nach der Christians Methode zur externen Synchronisierung. Die Christians Methode benutzt die RTT (Round Trip Time) $t_{rtt}$, um die \"{U}bertragungszeiten von einzelnen Nachrichten zu approximieren. + +Wenn der Client seine lokale Zeit $t_c$ bei einem Server synchronisieren m\"{o}chte, so verschickt er eine Anfrage, und misst dabei bis zur Ankunft der Serverantwort die dazugeh\"{o}rige RTT $t_{rtt}$. Die Serverantwort beinhaltet die lokale Prozesszeit vom Server $t_s$ von dem Zeitpunkt, als der Server die Antwort verschickte. Der Client setzt dann seine lokale Zeit neu mit + +\begin{equation*} + t_c := t_s + \frac{1}{2} t_{rtt} +\end{equation*} -Wenn der Client seine lokale Zeit $t_c$ bei einem Server synchronisieren m\"{o}chte, so verschickt er eine Anfrage, und misst dabei die RTT $t_{rtt}$ bis die Serverantwort eintrifft. Die Serverantwort beinhaltet die lokale Prozesszeit vom Server $t_s$ von dem Zeitpunkt, als der Server die Antwort verschickte. Der Client setzt dann seine lokale Zeit neu auf $t_c := t_s + \frac{1}{2} t_{rtt}$, und zwar mit einer Genauigkeit von $\pm(\frac{1}{2} t_{rtt} - u_{min}$) wenn $u_{min}$ eine Schranke f\"{u}r eine Nachrichten\"{u}bertragung mit $t_{rtt} < u_{min}$ ist (siehe \cite{Vorlesung}). +und zwar mit einer Genauigkeit von $\pm(\frac{1}{2} t_{rtt} - u_{min}$) wenn $u_{min}$ eine Schranke f\"{u}r eine Nachrichten\"{u}bertragung mit $t_{rtt} < u_{min}$ ist (siehe \cite{Vorlesung}). -Im Prinzip sieht eine Christians-Simulation so aus wie in Abbildung \ref{fig:TimeSyncProto}, daher wird hier auf eine einfache Abbildung vom Christians-Protokoll verzichtet. Viel Interessanter ist der direkte Vergleich zwischen dem Protokoll zur internen Synchronisierung und der Christians Methode der externen Synchronisierung (Abbildung \ref{fig:TimeSync2Proto}). Hier stellt P1 den Client zur internen Synchronisierung und P3 den Client zur externen Synchronisierung dar. P2 fungiert f\"{u}r beide Protokolle gleichzeitig als Server. P1 und P3 starten jeweils zu den lokalen Prozesszeiten 0ms, 5000ms und 10000ms eine Clientanfrage (Tabelle \ref{tb:InterneSync2Tasks}). P1 und P3 haben als Uhrabweichung 0.1 eingestellt und die Simulationsdauer betr\"{a}gt insgesamt 15000ms. +Im Prinzip sieht eine Christians-Simulation so aus wie auf Abbildung \ref{fig:TimeSyncProto}, daher wird hier auf eine einfache Abbildung vom Christians-Protokoll verzichtet. Viel Interessanter ist der direkte Vergleich zwischen dem Protokoll zur internen Synchronisierung und der Christians Methode der externen Synchronisierung (Abbildung \ref{fig:TimeSync2Proto}). Hier stellt P1 den Client zur internen Synchronisierung und P3 den Client zur externen Synchronisierung dar. P2 fungiert f\"{u}r beide Protokolle gleichzeitig als Server. P1 und P3 starten jeweils zu den lokalen Prozesszeiten \texttt{0ms}, \texttt{5000ms} und \texttt{10000ms} eine Clientanfrage (Tabelle \ref{tb:InterneSync2Tasks}). P1 und P3 haben als Uhrabweichung \texttt{0.1} eingestellt und die Simulationsdauer betr\"{a}gt insgesamt \texttt{15000ms}. -Es ist zu ablesbar, dass P1 seine Zeit bis auf $15000ms - 14567ms = 433ms$ und P3 seine Zeit bis auf $15000ms - 15539ms = -539ms$ synchronisiert hat. In diesem Beispiel hat also das Protokoll zur internen Synchronisierung ein besseres Ergebnis geliefert. Dies ist allerdings nicht zwingend immer der Fall, da nach einer erneuten Ausf\"{u}hrung alle Nachrichten wieder eine neue zuf\"{a}llige \"{U}bertragungszeit haben werden, die auf das eine oder andere Protokoll schlechte oder gute Auswirkungen haben k\"{o}nnen. +Es ist auf Abbildung \ref{fig:TimeSync2Proto} ablesbar, dass nach Ablauf der Simulation P1 seine Zeit bis auf \texttt{15000ms} - \texttt{14567ms} = \texttt{433ms} und P3 seine Zeit bis auf \texttt{15000ms} - \texttt{15539ms} = \texttt{-539ms} synchronisiert hat. In diesem Beispiel hat also das Protokoll zur internen Synchronisierung ein besseres Ergebnis geliefert. Dies ist allerdings nicht zwingend immer der Fall, da nach einer erneuten Ausf\"{u}hrung alle Nachrichten jeweils eine neue zuf\"{a}llige \"{U}bertragungszeit zwischen $t_{min}$ und $t_{max}$ haben werden, die auf das eine oder andere Protokoll wieder andere Auswirkungen haben k\"{o}nnen. \begin{table} \centering @@ -533,7 +553,9 @@ Der Berkeley Algorithmus zur internen Synchronisierung ist eine weitere M\"{o}gl \label{tb:BerkeleyTasks} \end{table} -Wenn der Server seine eigene lokale Zeit $t_s$ und auch die lokalen Prozesszeiten $t_i$ der Clients ($i = 1, ..., n$) synchronisieren m\"{o}chte, so verschickt er eine Serveranfrage. $n$ sei hierbei die Anzahl beteiligter Clients. Die Clients senden dann ihre lokalen Prozesszeiten in einer Nachricht zur\"{u}ck zum Server. Der Server hat dabei die RTTs $r_i$ bis zur Ankunft aller Clientantworten gemessen. Nachdem alle Antworten vorliegen, setzt er zun\"{a}chst seine eigene Zeit $t_s$ auf den Mittelwert seiner eigener Zeit sowie aller Prozesszeiten. Die \"{U}bertragungszeit einer Clientantwort wird auf die h\"{a}lfte der RTT gesch\"{a}tzt und wird in der Berechnung ber\"{u}cksichtigt: +Wenn der Server seine eigene lokale Zeit $t_s$ und auch die lokalen Prozesszeiten $t_i$ der Clients ($i = 1, ..., n$) synchronisieren m\"{o}chte, so verschickt er eine Serveranfrage. $n$ sei hierbei die Anzahl beteiligter Clients. Die Clients senden dann ihre lokalen Prozesszeiten in einer Nachricht zur\"{u}ck zum Server. Der Server hat dabei die RTTs $r_i$ bis zur Ankunft aller Clientantworten gemessen. + +Nachdem alle Antworten vorliegen, setzt er zun\"{a}chst seine eigene Zeit $t_s$ auf den Mittelwert $t_{avg}$ aller bekannten Prozesszeiten (seiner eigenen Prozesszeit eingeschlossen). Die \"{U}bertragungszeit einer Clientantwort wird auf die h\"{a}lfte der RTT gesch\"{a}tzt und wird in der Berechnung ber\"{u}cksichtigt. \begin{equation*} t_{avg} := @@ -550,14 +572,14 @@ Wenn der Server seine eigene lokale Zeit $t_s$ und auch die lokalen Prozesszeite Anschlieend berechnet der Server f\"{u}r jeden Client einen Korrekturwert $k_i := t_{avg} - t_i$, den er jeweils in einer separaten Nachricht zur\"{u}ckschickt. Die Clients setzten dann jeweils die lokale Prozesszeit auf $t'_i := t'_i + k_i$. Hierbei stellt $t'_i$ die derzeit aktuelle Prozesszeit des jeweiligen Clients dar. Denn bis zum Eintreffen des Korrekturwertes ist inzwischen wieder Zeit verstrichen. -In den Beispiel in Abbildung \ref{fig:BerkeleyProto} gibt es 2 Clientprozesse P1 und P3 sowie den Serverprozess P2. Der Server startet nach jeweils 0ms und 7500ms eine Synchronisationsanfrage (Tabelle \ref{tb:BerkeleyTasks}). In der Abbildung ist zu erkennen, dass der Server stets 2 Korrekturwerte verschickt, die jeweils P1 und P2 erreichen. Es werden hier also pro Synchronisierungsvorgang 4 Korrekturwerte ausgeliefert. Eine Korrekturnachricht enth\"{a}lt neben dem Korrekturwert $k_i$ auch die PID des Prozesses, f\"{u}r den die Nachricht bestimmt ist. Ein Client verarbeiten so nur die f\"{u}r ihn bestimmten Korrekturwerte, indem das Protokoll die PID vorher \"{u}berpr\"{u}ft. +In den Beispiel auf Abbildung \ref{fig:BerkeleyProto} gibt es 2 Clientprozesse P1 und P3 sowie den Serverprozess P2. Der Server startet nach jeweils \texttt{0ms} und \texttt{7500ms} eine Synchronisationsanfrage (Tabelle \ref{tb:BerkeleyTasks}). In dieser Abbildung ist erkennbar, dass der Server stets 2 Korrekturwerte verschickt, die jeweils P1 und P2 erreichen. Es werden hier also pro Synchronisierungsvorgang 4 Korrekturwerte ausgeliefert. Eine Korrekturnachricht enth\"{a}lt neben dem Korrekturwert $k_i$ auch die PID des Prozesses, f\"{u}r den die Nachricht bestimmt ist. Ein Client verarbeiten so nur die f\"{u}r ihn bestimmten Korrekturwerte, indem das Protokoll die PID vorher \"{u}berpr\"{u}ft. \subsubsection{Protokollvariablen} 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,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. + \item \textbf{PIDs beteiliger Prozesse} \textit{(Integer[]: [1,3])}: Dieser Vektor aus Integerwerten beinhaltet alle PIDs der Berkeley Clientprozesse, mit denen der Berkeley Server die Zeit synchronisieren soll. Das Protokoll funktioniert nicht wenn hier eine PID angegeben wird die gar nicht existiert oder nicht das Berkeley Protokoll clientseitig unterst\"{u}tz. In diesem Fall w\"{u}rde ewig auf eine fehlende Clientantwort gewartet werden. \end{itemize} \subsection{Das Ein-Phasen Commit Protokoll} @@ -571,7 +593,7 @@ Dieses Protokoll verwendet folgende serverseitige Variable, die in den Prozessei 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 erneutes 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 erneut ab, so dass ein weiterer Festschreibewunsch versendet wird. Da P1 und P3 jeweils schon eine Best\"{a}tigung verschickt haben, wird dieser Wunsch ignoriert. +Die programmierten Ereignisse des Beispiels auf 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 \texttt{1000ms} ab und nach \texttt{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 erneut ab, so dass ein weiterer Festschreibewunsch versendet wird. Da P1 und P3 jeweils schon eine Best\"{a}tigung verschickt haben, wird diese Nachricht zum Festschreibewunsch ignoriert. \begin{table} \centering @@ -593,7 +615,7 @@ Die programmierten Ereignisse des Beispiels in Abbildung \ref{fig:OnePhaseCommit \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. +Dieses Protokoll verwendet folgende serverseitige Variablen, die in den Prozesseinstellungen unter dem Punkt ``1-Phasen Commit Server'' konfiguriert werden k\"{o}nnen. Clientseitig gibt es hier keine Variablen. \begin{itemize} \item \textbf{Zeit bis erneute Anfrage} \textit{(Long: 2500)}: Gibt die Anzahl von Millisekunden an, die gewartet werden sollen, bis der Festschreibewunsch erneut verschickt wird. @@ -609,7 +631,7 @@ Dieses Protokoll verwendet folgende serverseitige Variablen, die in den Prozesse \label{fig:TwoPhaseCommitProto} \end{figure} -Das Zwei-Phasen Commit Protokoll ist eine Erweiterung des Ein-Phasen Commit Protokolls. Der Server startet zun\"{a}chst eine Anfrage an alle beteiligten Clients, ob festgeschrieben werden soll. Jeder Client antwortet dann mit true oder false. Der Server fragt so oft periodisch nach, bis ein Ergebnis aller Clients vorliegt. Nach Erhalt aller Abstimmungen \"{u}berpr\"{u}ft der Server, ob alle mit true abgestimmt haben. F\"{u}r den Fall dass mindestens ein Client mit false abgestimmt hat, wird der Festschreibevorgang abgebrochen und als globales Abstimmungsergebnis false verschickt. Wenn alle jedoch mit true abstimmten, soll festgeschrieben werden. Dabei wird das globale Abstimmungsergebnis true verschickt. Das globale Abstimmungsergebnis wird periodisch so oft erneut verschickt, bis von jedem Client eine Best\"{a}tigung des Erhalts vorliegt. +Das Zwei-Phasen Commit Protokoll ist eine Erweiterung des Ein-Phasen Commit Protokolls. Der Server startet zun\"{a}chst eine Anfrage an alle beteiligten Clients, ob festgeschrieben werden soll. Jeder Client antwortet dann mit \texttt{true} oder \texttt{false}. Der Server fragt so oft periodisch nach, bis ein Ergebnis aller Clients vorliegt. Nach Erhalt aller Abstimmungen \"{u}berpr\"{u}ft der Server, ob alle mit \texttt{true} abgestimmt haben. F\"{u}r den Fall dass mindestens ein Client mit \texttt{false} abgestimmt hat, wird der Festschreibevorgang abgebrochen und als globales Abstimmungsergebnis \texttt{false} verschickt. Wenn alle jedoch mit \texttt{true} abstimmten, soll festgeschrieben werden. Dabei wird das globale Abstimmungsergebnis \texttt{true} verschickt. Das globale Abstimmungsergebnis wird periodisch so oft erneut verschickt, bis von jedem Client eine Best\"{a}tigung des Erhalts vorliegt. \begin{table} \centering @@ -627,7 +649,7 @@ Das Zwei-Phasen Commit Protokoll ist eine Erweiterung des Ein-Phasen Commit Prot \label{tb:TwoPhaseCommitTasks} \end{table} -In dem Beispiel (Abbildung \ref{fig:TwoPhaseCommitProto}) sind P1 und P3 Clients und P2 der Server. Der Server verschickt nach 0ms seine initiale Anfrage (Tabelle \ref{tb:TwoPhaseCommitTasks}). Da diese Simulation recht un\"{u}bersichtlich ist, liegen In den Tabellen \ref{tb:TwoPhaseCommitLoggs} und \ref{tb:TwoPhaseCommitLoggs2} Ausz\"{u}ge dem Loggfenster vor. Hier stimmen P1 und P3 jeweils mit true, d.h. es soll festgeschrieben werden, ab. Auf die Lamport- und Vektorzeitstempel sowie die lokalen Prozesszeiten wurde in der Darstellung wegen Irrelevanz verzichtet. Da keine Uhrabweichungen konfiguriert wurden, sind die lokalen Prozesszeiten stets gleich der globalen Zeit. Anhand der Nachrichten IDs lassen sich dort die einzelnen Sendungen zuordnen. In den Loggs wird auch st\"{a}ndig der Inhalt der verschickten Nachricht sowie die dazugeh\"{o}rigen Datentypen aufgef\"{u}hrt. +In dem Beispiel (Abbildung \ref{fig:TwoPhaseCommitProto}) sind P1 und P3 Clients und P2 der Server. Der Server verschickt nach \texttt{0ms} seine initiale Anfrage (Tabelle \ref{tb:TwoPhaseCommitTasks}). Da diese Simulation recht un\"{u}bersichtlich ist, liegen in den Tabellen \ref{tb:TwoPhaseCommitLoggs} und \ref{tb:TwoPhaseCommitLoggs2} Ausz\"{u}ge aus dem Loggfenster vor. Auf die Lamport- und Vektorzeitstempel sowie die lokalen Prozesszeiten wurde hier wegen Irrelevanz verzichtet. Da keine Uhrabweichungen konfiguriert wurden, sind die lokalen Prozesszeiten stets gleich der globalen Zeit und deswegen wird hier pro Loggeintrag jeweils nur eine Zeit angegeben. Anhand der Nachrichten IDs lassen sich dort die einzelnen Sendungen zuordnen. Hier stimmen P1 und P3 jeweils mit \texttt{true}, d.h. es soll festgeschrieben werden, ab. In den Loggs wird auch st\"{a}ndig der Inhalt der verschickten Nachricht sowie die dazugeh\"{o}rigen Datentypen aufgef\"{u}hrt. \begin{table} \centering @@ -766,7 +788,7 @@ Dieses Protokoll verwendet folgende serverseitige Variablen, die in den Prozesse Und folgende Clientvariable kann unter den Prozesseinstellungen unter dem Punkt ``2-Phasen Commit Client'' konfiguriert werden: \begin{itemize} - \item \textbf{Festschreibwahrscheinlichkeit} \textit{(Integer: 50)}: Gibt die Wahrscheinlichkeit in Prozent an, die der Client mit true, also f\"{u}r das Festschreiben, abstimmt. + \item \textbf{Festschreibwahrscheinlichkeit} \textit{(Integer: 50)}: Gibt die Wahrscheinlichkeit in Prozent an, die der Client mit \texttt{true}, also f\"{u}r das Festschreiben, abstimmt. \end{itemize} \subsection{Der ungen\"{u}gende (Basic) Multicast} @@ -778,8 +800,6 @@ Und folgende Clientvariable kann unter den Prozesseinstellungen unter dem Punkt \label{fig:BasicMulticastProto} \end{figure} -Das Basic-Multicast Protokoll ist sehr einfach aufgebaut. In dem Beispiel auf Abbildung \ref{fig:BasicMulticastProto} sind P1 und P3 Server und P2 der Client. Bei diesem Protokoll startet der Client immer die Anfrage, was bei diesem Protokoll eine einfache Multicast-Nachricht ist, die jeder Server empfangen kann. Wie in Tabelle \ref{tb:BasicMulticastTasks} aufgef\"{u}hrt verschickt P2 alle 2500ms jeweils eine Multicast-Nachricht, die alle voneinander v\"{o}llig unabh\"{a}ngig sind. P1 kann jedoch erst nach 2500ms Multicast-Nachrichten empfangen, da er vorher das Protokoll nicht unterst\"{u}tzt w\"{a}hrend P3 von 3000ms bis 6000ms abgest\"{u}rzt ist und auch keine Nachrichten empfangen kann. Da die Einstellung ``Nur relevante Nachrichten anzeigen'' aktiviert ist, wird die erste Multicast-Nachricht von P2 an P1 nicht dargestellt. Bei jedem Prozess wurde die Nachrichtenverlustwahrscheinlichkeit auf 30 Prozent gesetzt, worauf alle in dieser Simulation verschickten Nachrichten mit einer Wahrscheinlichkeit von 30 Prozent ausfallen. Hier ging die 3. Multicast-Nachricht auf den Weg zu P3- und die 5. sowie 6. Nachricht auf den Weg zu P1 verloren. - \begin{table} \centering \fbox{ @@ -803,6 +823,13 @@ Das Basic-Multicast Protokoll ist sehr einfach aufgebaut. In dem Beispiel auf Ab \label{tb:BasicMulticastTasks} \end{table} + +Das Basic-Multicast Protokoll ist sehr einfach aufgebaut. In dem Beispiel auf Abbildung \ref{fig:BasicMulticastProto} sind P1 und P3 Server und P2 der Client. Bei diesem Protokoll startet der Client immer die Anfrage, was bei diesem Protokoll eine einfache Multicast-Nachricht ist, die jeder Server empfangen kann. Wie in Tabelle \ref{tb:BasicMulticastTasks} aufgef\"{u}hrt verschickt P2 alle \texttt{2500ms} jeweils eine Multicast-Nachricht, die alle voneinander v\"{o}llig unabh\"{a}ngig sind. + +P1 kann jedoch erst nach \texttt{2500ms} Multicast-Nachrichten empfangen, da er vorher das Protokoll nicht unterst\"{u}tzt w\"{a}hrend P3 von \texttt{3000ms} bis \texttt{6000ms} abgest\"{u}rzt ist und auch keine Nachrichten empfangen kann. Da die Einstellung ``Nur relevante Nachrichten anzeigen'' aktiviert ist, wird die erste Multicast-Nachricht von P2 an P1 nicht dargestellt. Bei jedem Prozess wurde die Nachrichtenverlustwahrscheinlichkeit auf \texttt{30} Prozent gesetzt, worauf alle in dieser Simulation verschickten Nachrichten mit einer Wahrscheinlichkeit von \texttt{30} Prozent ausfallen. + +In diesem Beispiel ging die 3. Multicast-Nachricht auf den Weg zu P3- und die 5. sowie 6. Nachricht auf den Weg zu P1 verloren. Lediglich die 4. Multicast-Nachricht hat alle Ziele erreicht. + \subsection{Der zuverl\"{a}ssige (Reliable) Multicast} \begin{figure}[htbp] @@ -812,9 +839,9 @@ Das Basic-Multicast Protokoll ist sehr einfach aufgebaut. In dem Beispiel auf Ab \label{fig:ReliableMulticastProto} \end{figure} -Bei dem zuverl\"{a}ssigen (Reliable) Multicast verschickt der Client so oft periodisch seine Multicast-Nachricht, bis er von allen beteiligten Servern eine Best\"{a}tigung erhalten hat. Nach jedem erneuten Versuch vergisst der Client, von welchen Servern er bereits eine Best\"{a}tigung erhalten hat, womit jeder erneuter Versuch von allen Teilnehmern aufs Neue best\"{a}tigt werden muss. In dem Beispiel (Abbildung \ref{fig:ReliableMulticastProto}, Tabelle \ref{tb:ReliableMulticastTasks}, sowie den Loggs in den Tabellen \ref{tb:ReliableMulticastLoggs} und \ref{tb:ReliableMulticastLoggs2}) ist P2 der Multicast-verschickende Client, w\"{a}hrend P1 und P3 die Server sind. Bei 0ms initiiert der Client seine Multicast-Nachricht. Die Nachrichtenverlustwahrscheinlichkeiten sind \"{u}berall auf 30 Prozent eingestellt. +Bei dem zuverl\"{a}ssigen (Reliable) Multicast verschickt der Client so oft periodisch seine Multicast-Nachricht erneut, bis er von allen beteiligten Servern eine Best\"{a}tigung erhalten hat. Nach jedem erneuten Versuch vergisst der Client, von welchen Servern er bereits eine Best\"{a}tigung erhalten hat, womit jeder erneuter Versuch von allen Teilnehmern aufs Neue best\"{a}tigt werden muss. In dem Beispiel (Abbildung \ref{fig:ReliableMulticastProto}, Tabelle \ref{tb:ReliableMulticastTasks}, sowie den Loggs in den Tabellen \ref{tb:ReliableMulticastLoggs} und \ref{tb:ReliableMulticastLoggs2}) ist P2 der Multicast-verschickende Client, w\"{a}hrend P1 und P3 die Server darstellen. Bei \texttt{0ms} initiiert der Client seine Multicast-Nachricht. Die Nachrichtenverlustwahrscheinlichkeiten sind \"{u}berall auf 30 Prozent eingestellt. -In diesem Beispiel ben\"{o}tigt der Client bis zur korrekten Auslieferung eines zuverl\"{a}ssigen Multicasts genau 5 Versuche: +In diesem Beispiel ben\"{o}tigt der Client bis zur korrekten Auslieferung des zuverl\"{a}ssigen Multicasts genau 5 Versuche: \begin{enumerate} \setlength{\itemsep}{-2mm} diff --git a/LaTeX/diplomarbeit.pdf b/LaTeX/diplomarbeit.pdf index 3aa6a00..a994b14 100644 --- a/LaTeX/diplomarbeit.pdf +++ b/LaTeX/diplomarbeit.pdf @@ -450,15 +450,20 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 184 0 obj << -/Length 2258 +/Length 2262 /Filter /FlateDecode >> stream xo6У`<^vsE.=n&:G-vPeJ䴋&E؉ǜ?r(d~H8؈LOnp׾}E:%B*cMBI+hFsan^}O*3J/zQH4;DCM")(FZJuȩAFh '< JEdJRP:JQ X˻vX*4S4\:k9%C2 y*c>/Xs RAsNofݜ&dҫaMSXO,X滚Y dB%67Y3Ub҈*)tSXBS3k禠7Eަng"'kcZw/\A Ok - ^)|R 3_U*%(f9UCGoG84s9v%bFvά1{ǃ},)/9|!R*%RbVCeǕ,ۛbuxy RJUJ ?my3x<]1 'O̐<|v.Ű1듥>):o+mWacy{:EUYG5?:˻76[P1C40(`%LvQj6{9\&%.eE;g%po.]&.eW;\,IfxiL^0Zm]cjgCQa\Y|b=||nUY$loʺCWgZjxؾAV߷Q~4VB0L3tVx톄 tTGP\f8\C)xv fw/9;Gr~[9^~:XN|-{UJ(~[,rxp6t繊]ƩI:3GSG(݇(!}5?׻x=54o|.戱MN9xkn?|`Ã[ ٍmU^6ޞua;(i:r@se*Dp VbeEʶeq;EwӹK؏?!( e ZT$q6 X,Txp `EPA{\Yqky+z{?!B>UJJh_$rq8\yy0cn9HJ"R5 5) +-"[vfh꧵b-_{w[!FF\#N*% +z(:],Ww\5.v!w"ʼnNrwvycYIm7ˠ998h9_anXv< k>1eiACh1:ޝm[US9wx>j:|[ +g (!125x8Eh ffxe $Ro`LU\GP$4/#Y26^/<%"kXnuLAψqjϮ7k]S0,@aʑ\dJiց]X=@k.>0kɓ59D]spC2 |8)#A&p/!IeKJnRMZ<p)bnί#Hk!x:ryS{ b +#4| AgRw/;fC.pr1 Q;{sv96Ftnz>ۛbuxy RJUJ ?my3x|nN!y]ܧa5b'K}RuWڮt,)z k~hUu֗wol#b8ݝh`QKJY 7m@v_7/\Gs|L9k.1{D.+9,Y{;w2y}m>Wu-6wbO5ë?Ls`djdV;T\\3uRnW&Ye{;tUB>RwvFh +dbJk7$lg2=2YV]`޽Aj +.ͻmx}<1@c9"LuV)nwoOl=⑇~qB`5N%Mbՙ9n&?E!f.~>tF }7iW\6cs84~@sW۪lʽ=v!P )> endobj 236 0 obj << -/Length 2414 +/Length 2415 /Filter /FlateDecode >> stream -xݜKoH!{x//\"./&>]3- +xݜKoH!{x//\"./&>]3- ֊h$8͋~i̋iLYqsoo6/5Weu}լ}onP izRCh$OG  VXK"\:76`ךu "h^5UWqTVl?7{~[r߽ܜ ^>OΉIV L})b4 bHMHp=o=2#'L|F\:: F1RR(a [ 1 Dd0:U]OgᾬqB!)IJUN宆l -2f8sE4,1Ѩ b`V+X|w<W_Ld tO Fc@rH27ʔ-q~dA Aj$> -AAD fN'WׁMzs:]>,.~->mBqu4X`"fcA: T676vYcvU: -zcrS|(0c${$R.*u'\]' -O; ʳ 1u|V+hgQ -0uע(Q.BS(kY"neEXj>7U77voݬ]ǘ}4`Nmo%R`u. f0]Ơ<%UsެcPx󦮚͉~'A'Üxs⾺۝۲̇Li7#Gb&`Ki6d۷At'('8] - 'ITp -fN4m?kwMs۝pˠ# /bQiK V9 3D3C?dK *D\] - 7ΐb8۽Y}C{T]ǰ}s,jmlvc [d_Hu?-ҠBDHݵ+aF,lc fizLZ]u`6_6Cǘ)w9ɶXLYiZ C?&5T:,c02Bl{ ftf|x7j^.ǺO^G*/w'q!qN f*Sv%89 -Jݵ_' - -( ZXo揃W7Z}㮕ꌴ"8\zPrl둬P7G%X 2TaQ2L\o$J"E|4IW1L,*_\ -%.K./aA'2Zg[a0QI4geLym 韷ՉkL:OvuL"e3ıKo|9밓hMY9>Û9Nnϸm?$ͧq7v~=@eԛyxG?Zx*N<1uHF[ROh|Z08ԝ˄v>[rלGZлj][ |u'{[4dE}$oߒ|޷$Ae ˖8k@ "Dk`gP>߰קsw;}E݊XUN~??,LYRw-~w(a'32}/ݦ9/t}M# -Q*EQFj?Z& ,M⬥m~#(2ظDԨl f7=nvigr} -nw՝~ t.L pvS;tA G +^ĢҖrf*fȖ6T775vn!p{75^Aҭ틇,agXV}Ք'ٞ<3Aɾ~ZAH kI?V.# +Y:mv|Qm<1Srm۱`L@vˡMj:,tpYRw-t`ea4c:nԼ]uCU^NNOܒ2[b$l`gl XexfAX۷~_Iw+*cEkbV9?,2eIݵߡ]Ɵ~ӧF<6w派5P*DE$bbFk}3?T74`Q.y٥9l:+^O&\qZ'foK18T~30׈.8] `eQwU1wt<^98G3v'Us6&܄tו.ݸ6&(xLJi%NIƈPcef~ e 2V8ۓE[_zB/=|><$]leQV(k\0$kqkRSHݵ`_."犌ֺ7~niJx##uH` Ly *ƅ13W >j\H`{3!?VI-^f4o}!-V$Q#u6R]HAr3妩or[ƯALص_3U +RĂUNQ戍>3Y"EEJݵF ]R̶`#ޗuuS.!E,dL[ON\] {%Ws CBcZ3p~9G/{endstream endobj 235 0 obj << /Type /Page @@ -1022,13 +1015,12 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 295 0 obj << -/Length 385 +/Length 383 /Filter /FlateDecode >> stream -xݔ;O0 -ɐ} !& چRї!t37!lBmѵ$ǷnljQQ7TlVP (uOziUcEٴ9NSզ.p`Q nAKslUcs<-WΑx!€Fu&J1+Q0|-bAHcSpT(į)  a†JiP K4I\~W:q -rd :ο7AOendstream +xݔ=O0 +ɐ>c XTKi`(MJҥ `[y}{GQB% YXA)1]Moͮڤ'mM:3J( ;+%Ct]JF{=Q*lz_Ӈm1Jpy=xvF$ZA+uX"zCfi4Pkde?'Do&Qoj-=B BmǓ^X0DU6mTL 5!nxjl9GrV")p<b%ch* c'cJ6Z3$գ>Jz)dAvKoHdXvԝIO I hzu:Oendstream endobj 294 0 obj << /Type /Page @@ -1060,17 +1052,16 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 303 0 obj << -/Length 1633 +/Length 1636 /Filter /FlateDecode >> stream -x͚[o6)h36mЇ{p؅/ݚOCI)$M?3yQH#(apAH1~ q!ܜSp'DSE4 kuy}* JƼpAV_RZ.USy,Oz^ޖ_z!Å>Dhmb([O`%$q"A. gכYTN%7EɲW*=+TǺڀH1ٯ角z\m֏%Vmim/  3)I>*c0t( ->(v5 >dU.Н`Z #4A2Tѧ%B\!7kQw}`/nfG >珎f|^W ;/%gynL8Yt1a9 -Z,)XF^dǀ' `άmYU`+m)db"S*z\HPPɎbzF6{(XL/g.'#qSӎ$P̱Zy"~ {oCsTBb6z^Y`| *`~SȬʅnba/(mhK/D计iKM;6ΐŠhsf-m+&p|SXSY$s3H]CvJRg7g&$rgQn[c , -?(gS|]-UJUZkJĹJM;n -jjjr\9+u&W+ ծj9[Tk Ӡd0M ?egW}ߺLA=t(5(7k!OM9XV>daQ٦g5Ftr+5CFq>\iLf]L<4ذrRocxcvee_>Cuט?XGBn>*i-2͑%+#+$tאed nK#˙umS +dz5џ`fJCDYO7:z4;)C*-2tgUx+!98DgΪԟc/J@5)BQFE$eiJRR[!)&H9#Q"i3P-Jl> ֋u1L.z脲̏=\(s@gCg$GH:]HO/ǨcD9HY {VH=j[1'6O򴄫r&;r -$J9INELެㄟw.]ζ|~m[( 8RՉ^Pg 1Zw;FVR򁬌]CV1^rQd Yu\z[-O1D$#ډuggL J - 5DԜ*.*\7됒㏴n ;\ggNIHz(+0=Xa\5|zuFB5f/xd?  }'2(Ϙbᒊ%X&prG9`WFX`ôpf6Dsv<4endstream +x͚[o6)h36mЇ{p؅/ݚOCI)$M?yαI#(apAH1~ q!ܜSp'DSE4 kuy}* JƼpAV_RZ.USy,Oz^ޖ_z!Å>Dhmb([O`%$q"A. gכYTN%7EɲW*=+TǺڀH1ٯ角z\m֏%Vmim/;>Zf$RcUN+IaP,(/|Qk${\;;#-%MO˩AFh(dO!J6$CToE;g}`/nfG 珎f|^W ;/%gynL8Yt1a9 +Z,)XF^yTǀ' `άmYU`+m)db"S*z\HPPɎbzF6{(XL/g.'#qSӎ$P̱Zy"~ {oCsTBb6z^Y`| *`>pX)dYBg781^g[ 2RdO`2`⭈1WĆ˗zŻNw]vo?P-+z\:-?8"?pqV9Ls$l!>m(Y)%Yi%,'+5Hp[YάkbX)%dի]6Sr zY4{IRi;[ i!$"fTX‹/eTMR_ 葦y,%mԜN=%2&9%ڢ0kj.n.mX_ʍl첪jyN(Ur +9 q6x.Q@Rqy 5 rm0FTęug9S&sb$OKJ*'Kmk~*'P:Nyl[ϧڶ +UQuVÈ5{wcd%%H5dū䴣)&d Yu\z[-~cHF +/(#5}/Ϙ18k9mU\"UsެCJ?RSHC ?pEUN]:%!`Ikp Hh7xQK&a@f81F9}<;T\.Bw60$V_i05il/xΎgTCendstream endobj 302 0 obj << /Type /Page @@ -1250,8 +1241,8 @@ endobj 347 0 obj << /Producer (GPL Ghostscript 8.61) -/CreationDate (D:20080726023108Z00'00') -/ModDate (D:20080726023108Z00'00') +/CreationDate (D:20080726150446Z00'00') +/ModDate (D:20080726150446Z00'00') >> endobj 348 0 obj @@ -1295,17 +1286,19 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 355 0 obj << -/Length 1697 +/Length 1719 /Filter /FlateDecode >> stream -xڭXێ6}WQbFַ\6AHm $yMۄey#v3Re9 bx4gFC(?助L p&I/`<;~y;y&OXYytYؚ 6ޑPU שH}K.ƛ,]f^w.,]6M-6;9+nG`X.I 0r$nMMF?F~>2 -PYV:D*z 8þoZlk vdw۠XV:vB)_ -݈?0u\0siz.T7E"47, oCG%p {_-UC8Zq j2;gX\:4j_9yo9mio j[j;'U]w%R*JXrjճdXmTڦ{>wavý0iKx_( d,R.2p&L#ϗɧIw}ī%\}vYpyԓ8X\wFp~ʹ3dJLQKt\(?dz^Gy }7h3 SopYJY"q4@2V׮TްC7~RMltK0`. og,R&EFa]"4Pj4ȌTyTY_$vendstream +xڭXKs6WHD૷wRgjLXX(d1L逢.)n042륥횆,x|Xx @JZ+H@i2Vfa.5HR2<=0)lz,`,M.;dŬ!S n$qdт[vfr0٨ [d'ZrHno9.*I5HX7}a~9_56߲nkŴTt8,e-&Sxj̒==u)n ƫVPS Ävx0?QL3[(%g #J R) $kM\dn9c <<ֆ#({Px{g8-3jeS3hr Y*6 + "@.՜Up3a,[]|Dppxce.dQWA\.~Nq `40`^ N2pz) + }%4; J4 T(14<_𮗕%,Θ&8ܩ Fq&)D/qC+tJ5QdLd,`;e8dd2)J5 DyRx^҄Ykli~0h,-_z^endstream endobj 354 0 obj << /Type /Page @@ -1341,8 +1334,8 @@ endobj 359 0 obj << /Producer (GPL Ghostscript 8.61) -/CreationDate (D:20080726023107Z00'00') -/ModDate (D:20080726023107Z00'00') +/CreationDate (D:20080726150446Z00'00') +/ModDate (D:20080726150446Z00'00') >> endobj 360 0 obj @@ -1386,20 +1379,16 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 365 0 obj << -/Length 2052 +/Length 1905 /Filter /FlateDecode >> stream -xڕX_o6 OGhtqu[a;0`Dh"vv[?Hrm7h(HZHS<,E^@(شo䢆_Ų K}Z()ʲ:EYt^DJ,Wѭu?xs{?j),ʹA6]mNK3*mJFZWDF=qg"%׿藑_KFaȺ' f;=8tօXラ!0p~rQjv:u_0Xg@Ke8kz̒DJeH*ZCD gi]M`jc7>l_jZvuiw U=T~Fm39r)TcXC"'ű^(Qj3'WKyJ+T$.'6Lszu۫p_^"`>6f '7 qL?YxClv4њNlJf 7VJ)!8L׉b) s ʞ4gtraus?ʹ^T恗;;f̱mstk|U7I^He(T&c)ʋl$q6́'pBufb斯Ms&ª+&^@LBf)e-bW" ""C@ gDUnWHHFwy.ӂdcQfFsζmOs;[õSDH@WO ݣ5Mk+HXV0>{Q/?nxzHc^eJ=駊3Nu0G4ua2 -Fh˫Tѱ[ -Z̲?R@>#u$fjk;lvm\u| pѯz=" ԶX˃܁ 6M 񅎣LFxV ۷U3>S1e&6JDtG"{<"3W1z؊no$d6ƇEO'ew|D3tQKFW6"Ɍ e[s9e -Vw}R}Ĵm(} gIzy؟{GhM -#^ ȟ4EZ;Zv -YbHlOIYPZK]|#,oI&< -*|u8Zi\4dA0s\2r%2$]d_/  (s/y>3soJQFjM]`AIm0E]d$L?@M+GRp5C"1>a~Ch,p P#ӽįz§dzCs[@ -Dv6,zڐ ؖ~·llb ] =&H;ܛy;0W94N]^S/.,<4c?)ɰHqU͆ {p1hl?AMo.P -MlP p: gdQd}H $("A~)a](nendstream +xڍXݏ6 _G!q]ouV(Dk v8\(Hq3L1BV>܇WxE^ ݽyK&fa&rħ]E{z*/RΣkckm?-Y&_Z/}̇SJI{}/8nM3<:eeNx<> ?FۆG2–Wf?1#G8?UƆ/z X!!X d\D6Uڱ`%hKƆ<"D4pƖkc,f/W{Uu\hאsc5l'/螧%J/M8\a(Df/@ K5qr5'P!OYb(<{G` Oi +z7/ ~;YfPA*htuB;a$NC"e"0:~ +&n,$#u@3J^lbsYg_?+?ũ;ɸ02+qMEF>Un+IKƑ&RV" RRleqT` <#5>kRvUP/8zY"gL] W D@t4t AȬ*mU`Β =L32e4gMt4W%d#$BI{e|d{:@{* b[ZKRg!/ݵﲘ SHБEM+ R, J%ŵ./E胔E&ډDdnoXŬ $$Rd!.nj،tW^tzE~KFqt)AVLT +g7eX/JD heMW>N#jSMBF[z\!83t(Αx__"U/3cG(q\c܌ ( G-~-%gN\@E=r*lKiz7l?I$O1w(LYH₥)OPQ`{q]Ri=s3.ry,1wzdLTdB@Hvl#; &Prr}hfuB*A` _}<ڟEk'-@S%"# #%&ONrI}`@ы9agDO}+DF@х家t;W  +|CXŪ J39YK7 y1s]a&|vvt27t jbx$~MXpB3D3.Vx&b$ |59Jd~8^eeSq( 9n[vS=kuxߤJY;Tl( I,=I)BH;7f,4NS)3h ߣ-'/`q_utlH̖;b.>T(Ƈ,b(b*G/?FS:d5~ދ5) ' &SIGDSd܋4tbd61qӚGaIqtk<;iM#۹b)֮ŷq8;kə8im[v4Dr\Ȼ% WTv#7Se U#F0, À=44$a}QRUַ3!?9i}O !K%Csn9Cendstream endobj 364 0 obj << /Type /Page @@ -1420,56 +1409,90 @@ endobj /D [364 0 R /XYZ 74.4095 793.4011 null] >> endobj 368 0 obj << -/D [364 0 R /XYZ 74.4095 634.5446 null] +/D [364 0 R /XYZ 74.4095 627.4381 null] >> endobj 369 0 obj << -/D [364 0 R /XYZ 74.4095 447.9781 null] +/D [364 0 R /XYZ 74.4095 430.1315 null] >> endobj 370 0 obj << -/D [364 0 R /XYZ 74.4095 294.9565 null] +/D [364 0 R /XYZ 74.4095 266.3696 null] >> endobj 363 0 obj << /Font << /F61 219 0 R /F28 173 0 R /F26 170 0 R >> /ProcSet [ /PDF /Text ] >> endobj -374 0 obj << -/Length 1144 +373 0 obj << +/Length 1987 /Filter /FlateDecode >> stream -xڍVK6W(+.IQ[nҤE n -ۃl36aYZ_mmyD'J1"B$'+9=E͢p6~5ܾ.E"8k]%/TBVg?ufҩ`Ӭ<]k;vw[!9e).ulRc;%\Ԭ*C{o榛f9%ʴ "6m>Dno%bM5x,Ϫk&(4-xj6Kf!ޙ*Cg -.X)n*+8`=eu<LWZ%X-CA9Ow(]_vS7c%,ut8Eշ3fD{g@ǿ'榷ӱϕrO%JOSJyVFrW@9C9ʤ;u7ȇF9k&Qe2jL@ciBˈsäynUs_Q u&B` olD~cV0_>SyLv7Ϲz8Z?HƒpaLKEM1U8qXQִ -1X$aE2"auãW'pbM4G ]wMܠiĹHԌZa.RkkW{!|pvwÉWK&P\g]J!Cʒ/I$:mD g\LH^%C/DsesXs,I -$\nr=U,^$S,9/c6, -& -5Hj0%L֔Ug|_9) UU@; U\ZӸWY{L?{o 96x<]W?C(95"52. ->"2s!:6;Iz\z(#MutBO,d]:&hȣf4p]T^'}G*~Ĩ ޴ѹ9$TZ

/\* 0Js1+$(U/GGendstream +xڝko6{?@̉5ݺ Cfe䘑ȲG ,JZ x%W!U(Uk\=^~~x͘ݫ%r%CY{\(d;S7*)֛8 [[Wv}]p[B%6kT6mP8ED36z8hk}UtX36=iAqO žcdcJx}^eGiqajeth&u72rϹ<J*2qGnÍOݱ/D$"*taUG6;ӽ4P]hKS~_%"U5[6LIP*E@^zȢ'zsda.d)a* 6Ah'[><%JH)FQ\D3ձp?U I(4.qRNd0dLPIkpi[b d(ϸؚv%+K&Z̙rbF{iNTlFejć}*cs#y$CHg6 z7:Wmx[%8g`g1 omkI[Z{vJRbc3kJV^ѿ@b\,d1ZFcۓ5.bє-aڎOqj.ˢ+Uն&E 28֓,XGBILw6Ɩ,|n-Q<q$|yfTPH[ƺxP|M@K(GEG"nbK'y- +f~Cx*0|i3Ɲ>ЯŃSGZ}Dl[# |7fmp&qG*{S,P:pq9a;Ǐ +Fp1+o} Yx'y}E[[{(Riq"b3.'US<ۨg6C 9%"Gȹ?P}8ǶOui"Fa`+M\0BOc#TiBZ,#M,U/.z%{kr\rVsy\@2 ʳnbyY&(QwDhK+;<ŗ| W`endstream endobj -373 0 obj << +372 0 obj << /Type /Page -/Contents 374 0 R -/Resources 372 0 R +/Contents 373 0 R +/Resources 371 0 R /MediaBox [0 0 595.2757 841.8898] /Parent 323 0 R +/Annots [ 377 0 R ] +>> endobj +377 0 obj << +/Type /Annot +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [139.1274 153.0904 156.4079 165.3666] +/Subtype /Link +/A << /S /GoTo /D (figure.1.3) >> +>> endobj +374 0 obj << +/D [372 0 R /XYZ 74.4095 793.4011 null] +>> endobj +375 0 obj << +/D [372 0 R /XYZ 74.4095 522.8507 null] +>> endobj +376 0 obj << +/D [372 0 R /XYZ 74.4095 317.4023 null] >> endobj 371 0 obj << +/Font << /F61 219 0 R /F28 173 0 R /F26 170 0 R >> +/ProcSet [ /PDF /Text ] +>> endobj +381 0 obj << +/Length 920 +/Filter /FlateDecode +>> +stream +xڍVK8 Whc^~6i[LnDMVZ`~l OLJ%OfI +Bzb#8>G?/SΊ"ς@B[|TQ,<,OUE.Z|ZNYM[n2?6%,2S;m{$t)>Dؙ<I0P;BlnC$yTVRgӌ7vT=P-PXdCfפI=!)!wS\sNG:$c]GCnMkm>1ZXC𳈃F]dWag{z?J6к[*aԹ6҅ie3$]n`vN™ m<׋5LLH8>V8yzN-}P7pz9}1}^LV_";f3 Lm SFe 4 ADII;Ym +em^PsF/0頓+; 5mQ?~t;3ab@ +_zGJ;3@t=f?.jU7jE*%م]@+Κ!m|z . {T5 F*}rfߑn]^ N= yC"<ծVk[mq Xgy[2#ܸ;um)3һ)|Ēiɹ\pX\ޗO3Sy/BD4aw?mμ]dendstream +endobj +380 0 obj << +/Type /Page +/Contents 381 0 R +/Resources 379 0 R +/MediaBox [0 0 595.2757 841.8898] +/Parent 323 0 R +>> endobj +378 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 377 0 R +/PTEX.InfoDict 383 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 378 0 R ->>/Font << /R8 379 0 R >> +/R7 384 0 R +>>/Font << /R8 385 0 R >> >> -/Length 380 0 R +/Length 386 0 R /Filter /FlateDecode >> stream @@ -1479,91 +1502,50 @@ x Y La- 7pD7[:pHp {-q*YA^6@K  B|jZ%Tp'endstream endobj -377 0 obj +383 0 obj << /Producer (GPL Ghostscript 8.61) -/CreationDate (D:20080726023107Z00'00') -/ModDate (D:20080726023107Z00'00') +/CreationDate (D:20080726150446Z00'00') +/ModDate (D:20080726150446Z00'00') >> endobj -378 0 obj +384 0 obj << /Type /ExtGState /OPM 1 >> endobj -379 0 obj +385 0 obj << /BaseFont /Helvetica /Type /Font /Subtype /Type1 >> endobj -380 0 obj +386 0 obj 499 endobj -375 0 obj << -/D [373 0 R /XYZ 74.4095 793.4011 null] ->> endobj -268 0 obj << -/D [373 0 R /XYZ 278.1207 298.1063 null] ->> endobj -376 0 obj << -/D [373 0 R /XYZ 74.4095 216.927 null] ->> endobj -372 0 obj << -/Font << /F61 219 0 R /F28 173 0 R /F26 170 0 R >> -/XObject << /Im4 371 0 R >> -/ProcSet [ /PDF /Text ] ->> endobj -383 0 obj << -/Length 1624 -/Filter /FlateDecode ->> -stream -xڍ]o8}"6xv{ރV[ lyevm(PSoRb*?J -xVC*a'ތ?| 'edoxy,7qzJWRN}x|< $ῧ@}ƺ y)][FDgF'vwJKMb+{ē}z]Uuɫ㖾BX+f/u@%[ 7, rnM`y5 WQ6b>קJRCldḏii5vR;8U"Ƞ$݁6JZ VxRӄxW> Ap6QMsB,X!ּ$hO^is*VTDpyoU_x 1!g* 3NxՔ6ÙBfz@\i@\Y~)7NƳ|*3<"3i6ES PU& 4U#| /Xs6k wQ%hQ 1j)ˣip._4)Q3Y=+ _RS] y-\]^YkB5 &6 v -#Y㮟΋C"6o}w %CقXwEk6OtMg}HvgKSb2i`͂v+Eӗtn ) <`W漘%%~/\> endobj -386 0 obj << -/Type /Annot -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [137.0253 492.2147 154.3058 504.491] -/Subtype /Link -/A << /S /GoTo /D (figure.1.3) >> +/D [380 0 R /XYZ 74.4095 793.4011 null] >> endobj -384 0 obj << -/D [382 0 R /XYZ 74.4095 793.4011 null] ->> endobj -385 0 obj << -/D [382 0 R /XYZ 74.4095 653.3845 null] +268 0 obj << +/D [380 0 R /XYZ 278.1207 262.7797 null] >> endobj -381 0 obj << -/Font << /F61 219 0 R /F28 173 0 R /F26 170 0 R >> +379 0 obj << +/Font << /F61 219 0 R /F28 173 0 R >> +/XObject << /Im4 378 0 R >> /ProcSet [ /PDF /Text ] >> endobj 390 0 obj << -/Length 906 +/Length 913 /Filter /FlateDecode >> stream -xڭVK6W(hM[bim2 w(RZeHჇofHfW"H[6$#JK+lgicj 2 kzL^IɝPl0c(,[_E&K%_|]#!+CrWs[Hfrp(+cxϝiC'hB)ϣ,%ȴ]]|7b%< mdZCZrsb6o`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@B622wτ;Pendstream +xڭVϯ6 fUuX [Ӄ%M_?ʲyo@B#%0^3/ےt>J9`N3'J-8j4LJb!AlN~˾MQ-Si]"M Z͟R\e< GgR`xܡB4TJɁ/S-DPD:,?˔6IRMs"6^uZ!GNup)՜Qz +T]ۡ_â^hAy/~pkji*'ōu:,2I;±9 Љv!)v|^Eb`.ı~ ^@G +#9 ru%GyBNu 0? SsO&*Y&`LMN5 UfG8MFJ$As]!p$gOj@mhTkA +[:{?]C2O$ߎkTTMYtESO E&H ^>OQsEx2X_Gߓ72 ]t`F1^杄 yyzd8IJ5{iVݙ(8*sJ<|)yC\KYS$h_ -^lZRXFtaÞtii09AC(nOWjIHTy&?m!Cݑ,Ӷ_pwUS_BCMէͮ*5-<:) +eݾԨ9c4>v,!i:&i23ш57%/^lÝ5r=p-w fRpgBPendstream endobj 389 0 obj << /Type /Page @@ -1603,7 +1585,7 @@ endobj 392 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [429.2362 171.0176 446.5167 183.5468] +/Rect [430.6769 171.0176 447.9574 183.5468] /Subtype /Link /A << /S /GoTo /D (figure.2.1) >> >> endobj @@ -1632,19 +1614,20 @@ endobj /ProcSet [ /PDF /Text /ImageC ] >> endobj 399 0 obj << -/Length 1581 +/Length 1590 /Filter /FlateDecode >> stream -xڭnF]_G -7{[ӻvч(XS#R1HZ0sp ßb4OC/NBxv@0< z`nHx4MbnIy=ց_ur_#!nZpTe]s\%gIr)Ôq, -خ(( "MUP=ve޴T ·uםSjvf?T;) `E^qrm?T:o.2PP-:a2unus8 -n8ZL'lIkK,!hENQM^V{}!#&8b@D}cwy=$`*shdjf, K+.roz\Y$:?7;e!SyʄM gKS/LI,_V>s֏+}B1;4W,aV?}" F -.^VErT9I ]B-Y$x  -g= j}Q ȷ7Ȼj@7Q,Qpp0o)sP!JF``\ -Tf$0c"iD*d?\1SqzCf \2W\e)_LgfAqh) '6Zr\[7E{i(@Zxh9TX键bx*"2/}(+LѨT0ys> ZԆ%U %Q%u BK9SN%Uά%+M.y3ux.BWmm[-d:of=96ڿ6G3mp bWyhMy -8Ui6JԠ5r.`H־FvV8rGIb?Xwk!k͡5AJ$<&g:G r9;Y7 <7h8oUo 08XCW<fJh i-q-`i,F( %*'2FG,;8xȾfù^KPZou CX4Y@x TUa( ̆Yp.fLmȐ8 #7wykiE}cvD,ƼZJfvfUiAwхCc7~"1Rw+~aԦ87#р{Dzg!e+5Z~l' qXrY p%B)]<EٕcGTMtzohS(돤Գ\|gj(θ-8R֣,1٬tA=!,-~e3 TZ,T<jYA &dž.օg.btt_1W+Tn܌_hP+@:!RE,\^=vfbna)# ܲmX{ -tzM0-t.Hmp;W rO&@ʭ9پD,^MSWNiVWJl偞5^~v~lzp?[,쉪uh~Q9}N A [3.:7*tGQ8{FlUR}5r%Z;.W2A&J_DP߯~5nEK$ϸsM`;:n:;Yr0 -V]++'pA8͙CtoZKҹi.X*Q}(K#jƅ +0ƺMl8u+wJ6Q_P5NS/@Uvʺ@GB%b-kbԺ ''.a؊%rqZׯ|̎EWKael1+[#.cWŒKbRw#^P0W#}m4GP/!7C#fZ"~άӐ;Nb ~hu,NL\\BJ1TStN_PQIg}j϶JeK.Vz} +{ŖќJN)-C8ARS!04!(?6BZH)>mq%*7`s;݌I~kȕ-HN3UA)tig̵mxpfS662_A)CnVw[Nuu +F'P+]#Jo0[S}9aocYMS> >> endobj @@ -1915,18 +1898,18 @@ endobj /ProcSet [ /PDF /Text /ImageC ] >> endobj 414 0 obj << -/Length 1441 +/Length 1290 /Filter /FlateDecode >> stream -xڭXKo8W(˧D. -tmzcFRIFIE,]p83o^((DR nW4'INW׫?,b.BHSkTt\'<1'DQol5̻Y~z08%:My)eJJ(\(C,[#F)o1h)t4[n(ˎ4ќhof5ͭr= z&컵q~h mw"E]ṗrUeRvžsxj #\okb[xe%>u8BC F\FRp bq9gcKYX}]"* -3TPA*n;GN0AgFc27ַx\2bx&zG=Dio.G/iِ0X.BjEyRg.Awt͍Ke`;#:x(.dODH7@΍'W)%8zͷ{[懻q)Ej7J!<:)'RsXkQr7ӗ~q !PU+[vB>m~"7To -!@Q= ЭSQ{D|bgSaM &qa9aP Tñt\4#*lG;TEGR(&S@̹$Z=Ce -ratg@sJ1sĆxEu"DoBANEꂊm67>M &qie5tb_t>`N2N\p,:B;bP43!/ ,C?鈢$|TsMb%"3 +E>D߭<eV[(Wk'Rd..O[&'1E_A{1SF$ׇ,Ak4Re0:u":Df ,%#;Z>1$/:\ي^Sʫ]S0hF=F?mo'sV]PX6qMrA\<4U*jQ ?\~K2޳Ps33|A#yNU NHp t'1JͿ<^:z P=D>}?:endstream endobj 413 0 obj << /Type /Page @@ -1934,7 +1917,7 @@ endobj /Resources 412 0 R /MediaBox [0 0 595.2757 841.8898] /Parent 394 0 R -/Annots [ 417 0 R 418 0 R ] +/Annots [ 417 0 R ] >> endobj 411 0 obj << /Type /XObject @@ -1954,14 +1937,7 @@ endobj 417 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [199.8496 188.9448 217.1301 201.4741] -/Subtype /Link -/A << /S /GoTo /D (figure.2.3) >> ->> endobj -418 0 obj << -/Type /Annot -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [192.1475 153.0904 209.428 165.6196] +/Rect [422.1557 135.1631 439.4362 147.6924] /Subtype /Link /A << /S /GoTo /D (figure.2.5) >> >> endobj @@ -1969,40 +1945,38 @@ endobj /D [413 0 R /XYZ 74.4095 793.4011 null] >> endobj 416 0 obj << -/D [413 0 R /XYZ 74.4095 555.981 null] +/D [413 0 R /XYZ 74.4095 541.1764 null] >> endobj 273 0 obj << -/D [413 0 R /XYZ 204.7328 240.4655 null] +/D [413 0 R /XYZ 204.7328 224.0996 null] >> endobj 412 0 obj << /Font << /F61 219 0 R /F33 181 0 R /F28 173 0 R /F26 170 0 R >> /XObject << /Im9 411 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -422 0 obj << -/Length 1807 +421 0 obj << +/Length 1939 /Filter /FlateDecode >> stream -xڭko6{~>@̒ǾH[k 6M?-sTfȯe[I -l?! y8 [/WٻS8@Rx6,Mػx2Hx"6ݛN_Rq_7fˬŷonGJrD9+Gs3e25sJYҚZW֐q!*sBrI)M鼬wYH>55-}#̵q?AVSw⃩XvDȢW7,ER4񭩫Qck -o?Oȳ24shdљHUZqxGCņTF.јEYȅ$'GAL6+Rë1\ -2!褳 +]룇t9EX5fm;tL]CK/%~Cga\Qads1H"c9 oˁ>`1_HdLyqs(s8'3ˆ0:DXdi$(ZFKlkWy]X Y*BhAPGVh %Rd1-`\ -97Þ?CeF2O>dK6Ra7uGӴN*LRo̐%Sš1g٦=-\Dp~<199L K076,I"_XXД>_é@W#t6$@*3A]1zḛd7>u֓؉:3ӏVkXf{UK},n >+鋐PXoBFČ2J Al4}Ԯ9B[ @ nĄo*nQ.ub aCxv2!`3dX)j4R1طƖ|ul6ti63D*h<| 3OI$p)k(<c#z^sYX7rer85t~xk{Z"a|{t)z{X.3g?nց$6C-etlO3u~@? A"B?UN1_1irdYNxfy&fIqfB1Nh$zI)48#W -P:46pA M`Jc ["*aO;}bF+zc\j~O'E?[\~䙹'H/?7!k`JB?K3rendstream +xڭ]o6="pY叽ݡwöuN^)ʎ +4IQI|߆>XmXpx hߏ;~y1[8q+dлOtsE9\y΍nq[ws2fݏwJx, +mZjhxw0 QS޹@wR]! /?ܴoWRZK &M[kYws([EEfz\` +xrЧ=䏈LCvOJpyba/uSI6Fw; ?m7p45q>)gbNIe{tMw#kE 􇜰{ ]b„QN=ܻN Cޑai]Y.Һk&njx5"×3TD[Vo]0'|3Hokbx,t~7yOaa^"S{*&(/ B稻 z3An) !]߃|,*sÞnPmMu(M\B W lO9x@D=l9~܏-"&𸔭:-bgh&a2l90b橘cjdu>[ɞJ4*)Xp4!J =ڡKae b)>O=Hr1~mхP1# &eԥzzb0b{0!0v(7̃Nyaa̅I&#xԏ"NSl*P=_*_.%b~L(02lI! Xemj(T`[)T4%E*V%&,ޛ +x&.XynnN/2J la(r@ͫ0ǥLp',\xD'`)Ʒ2zmL$L $ѕ::6 e krSv@tpŕeoE!bta,NP/qFPB;TLƯ/8|nDY-*+ПrQk/DDN&5' {Wp_['k}C̙2Dx7~endstream endobj -421 0 obj << +420 0 obj << /Type /Page -/Contents 422 0 R -/Resources 420 0 R +/Contents 421 0 R +/Resources 419 0 R /MediaBox [0 0 595.2757 841.8898] /Parent 394 0 R -/Annots [ 424 0 R 426 0 R ] +/Annots [ 423 0 R 425 0 R ] >> endobj -419 0 obj << +418 0 obj << /Type /XObject /Subtype /Image /Width 310 @@ -2022,62 +1996,60 @@ B{o M>7pm -!tۖQr06RUpuMΉ!r:9s"oh'tZ0P""Bvjx:KP^xi^ʋ/KP^xi^*P^xi^ʋ/PW/KP^x!/ x/@ oendstream endobj -424 0 obj << +423 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [177.2529 577.212 194.5334 589.7413] +/Rect [177.2529 562.6156 194.5334 575.1448] /Subtype /Link /A << /S /GoTo /D (figure.2.6) >> >> endobj -426 0 obj << +425 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [449.723 171.0176 467.0035 183.5468] +/Rect [451.3397 171.0176 468.6202 183.5468] /Subtype /Link /A << /S /GoTo /D (table.2.1) >> >> endobj -423 0 obj << -/D [421 0 R /XYZ 74.4095 793.4011 null] +422 0 obj << +/D [420 0 R /XYZ 74.4095 793.4011 null] >> endobj 274 0 obj << -/D [421 0 R /XYZ 246.5489 376.775 null] +/D [420 0 R /XYZ 246.5489 366.5214 null] >> endobj -425 0 obj << -/D [421 0 R /XYZ 74.4095 216.7567 null] +424 0 obj << +/D [420 0 R /XYZ 74.4095 215.0913 null] >> endobj -420 0 obj << +419 0 obj << /Font << /F61 219 0 R /F28 173 0 R /F26 170 0 R >> -/XObject << /Im10 419 0 R >> +/XObject << /Im10 418 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -430 0 obj << -/Length 1995 +429 0 obj << +/Length 1991 /Filter /FlateDecode >> stream -xڭYKs6W(D(ޏqI۴i^@Y0ŚRgKiQr2`\,v}S,#N% X0ohw."bH}}{[Fs$ ^ޮ~N/ n쌓BQ:UovEl_?]/V56)D*mgDki@hD8?W_ -~vO6W"q|ӊhsY8HY쏌0=\1vHmtb%\jl/K_idV*9^ bRtRB,O~Bjf(v+_]+Z0|4 "\ yAHP\Kt9) ~_?͙4(S=T-CwBCVu|m[QEt/#M -1,ͫ.3_/ne1hE1<`iZ̾:>CYQVBx2;ap!6yV/LH 7f -Q˕,YѼweL̫h68K]/^hM(n ϧmsPf%q< K, ynjF#/рD.X\ #L9*kz^"x!sE`$UJn%dp`JTpwzCyRňL_s=z58:!s~뻲긵 -uFڽ3deUۧ"#4S5( -CPϳ(J 'ta/x_p[di$4ߝ=9,ɺ(2gX\rvCb m -vlb"yw(T>{Iܨ%ZʋvCgqc8cB=m "ʱOL/!.0H^nt!-< yJ+溣qM8 ȩ=Iz:vΠuI(|Fk0ci /9%R(;\(B&3ywFߍi{ܕES8*QPALxpO+.a0T 375 xU(; D:(1Bq2=& } TA2X|țu^ˀ(6'kz"/ڎ-?+sX"HlDfI8.-a]Fyv^/2/VmSTA(hTI%qi -3d'ss`eh"<3I$zR) =mbu/ø^| uQ?6686k> ٗ2r_p "P6F8aje/46KwG8Ň;ui# c@zǹx&7aDcp-8۠7wmeU}AGto 9&2LP0x#Y!"X+TcZt$ n.Xp~!idX` -@o_J#g^*\M )>],^vtK[ͦN\o~5 ;46|)l@\Qqk#Y|unbdN݉T}*dZ' a7+:/VD,׭M ˦Ci{H[x5Ml.+r* -uM%5 ;$XNbvpI<2f~G.nCUn/̶\ -MQe 2d0CWF, u~͋=zNw=99p /9%$&*MyC M'~[[ǽ ;;f\|@4vYWp~QY -1+6ٰuӲ{ -, -E7^a'] O4S7|o)C,)H1{W3W~Fendstream +xڭYKs6W(T(ANڦM:ʂ%T=_].@);S^7%"")Ȧ1BD+as_^}ΈHpn"'zks5o\1_H$/4W|;|/fWͿt;XKcT0R0c@wт8M4ns+4JYba|{_0{NA'W Zci)cMdud|X~Ȫ;FS$1Ju̒ ZvJ'Jw"^Z$)S"AVkrf_5MZŭ-U2Lj席A/M"TAгzF5N*(=cv=T+)̊XCCO+/Ɠw\gv~s¶vuA +>k\-f˵+</'i̤b⢘dL&`i}u}*0TBxr}&@aFXO{Rb\\+-YwUːW9K]/Zxa\tϧ]3IPa%q< KROWzn\7I|F`z2GribX42V0S^rSq"`xMW}@JUҪKV*2ehbi~iH`i"E!<E؀2w/W=߸uVDlP42gʵO"#J S5ict/Q=gQTN^D,j+X#-|s@@uQdz2"#!dl_FfC(Կs ] + +vlV!c^tկ9z;č'(u./,nBZ2v#8""V2Fe Kc\nt%y,WN;! "54@ɓM6۹%[paSet?T.'Pws TKl +M@39FiwڕR0*IRP7A]q + +j +'jN觳6!i͙U:L6[f'D%RxF׈:aVy |sE <@xfs1%OJZ6B.s h RvnstF{-US~De^FZ' --(:Q ? Y_T8$|34K(p6XfW 'N a +cӍ(*Ƀm~|7DLÌ]1 TΗ$R !7s +#w1kL4r~'eMoJ +~ے9Ao{nھ +"C%6uOڐym3UjEnfxϲ`f Şio1+Qe鶸6m=vez5)МM6H]֗Щm 02IC1d}GZ9QNCJPťUJzܭ)6p?ܹ uRnMnu$eAPV_I{tEdb6<2jm}6/VBYwN+6UY;u9R$wF@0LTNaOoH^ +Ï7tI85_t{X,A",~~ Ufbd&8/OX +fEb5BāUp,\k9ƎzX}iOLQCNt L/r"lm +q?;0>~|U>#n:1ڌz-j?ˆs3|ᆦw:%:(sxQY}joQYyCiįB@D~rn׏P1=N2ŭ> endobj -427 0 obj << +426 0 obj << /Type /XObject /Subtype /Image /Width 318 @@ -2097,60 +2069,58 @@ x sq2s2Ud0'3_y%S8|Rʱ lL2U*v-o޲l+b~qendstream endobj -433 0 obj << +432 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [73.4132 490.9023 90.6937 503.2995] +/Rect [504.582 508.6975 521.8625 521.2267] /Subtype /Link /A << /S /GoTo /D (figure.2.7) >> >> endobj -431 0 obj << -/D [429 0 R /XYZ 74.4095 793.4011 null] +430 0 obj << +/D [428 0 R /XYZ 74.4095 793.4011 null] >> endobj 324 0 obj << -/D [429 0 R /XYZ 188.4765 600.6542 null] +/D [428 0 R /XYZ 188.4765 600.6542 null] >> endobj -432 0 obj << -/D [429 0 R /XYZ 74.4095 541.3074 null] +431 0 obj << +/D [428 0 R /XYZ 74.4095 541.3074 null] >> endobj 275 0 obj << -/D [429 0 R /XYZ 244.729 187.2191 null] +/D [428 0 R /XYZ 244.729 187.3511 null] >> endobj -428 0 obj << +427 0 obj << /Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R >> -/XObject << /Im11 427 0 R >> +/XObject << /Im11 426 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -438 0 obj << -/Length 1551 +437 0 obj << +/Length 1732 /Filter /FlateDecode >> stream -xڭnF>2NۤF 4΁arH.٥(J Ёy)q(OYʋ, v5:>Mq2~wx(L]FR8Z}/6D&ld#e] -ruWFřh-_fH}j4S3ǻg\:32QĶnmKnYl*15 -Mfose1:cYԭ~9)x 33`@ι0T -.䧻Ax"nAFgvMl4KE(4@ҫ'V"c xRZ!. 7?L wN7,j\:3Tf\Y #n@|=LS,'Ðh6恆gCݭKʽTݔ=ьaN̉)+qFg힨 8𡇋~" hh|ΔɘRw y\W]Z.L|=$?-غ$ɲ$iX]ݪ'aZ$k8a<*a>pKʕ$nf;bvcF;[сAք4g-m5,"IHmXe`'K +Hسn:wOp/Ru؋B*?[B +)"!$TðT7!l]?$7tڑ`S:KBD +DBmGr<?HTkŠPBJaWX0gG]be/>˄ Mhc&Н$;\2MzLnϾ~Q fLbSϮfG}p7`7WF9(b 1ER*ig JPio.v6< 0 K0 \p)BNʂ0 [(F B8v i/j +(H~]q)j1f'34e)l5t]Q9 +e'$⫝kH,Du?hHiKIxId?bEzPB>CFvG w~9z$a Ώ9d* +/ .ݣ/1i$0< R RoᦴeլP!`T)L{Cq1n)̟{GYH%n= 3?7s;a:{͕cpEW)}9vM{V({wY[3+zRr"TmV=Q + eld$K'0 P3`PKxRV5}"p|RTJbWUiݗf 4|AL1J@0_L^𹯭L0SKMu\ 6=a_cendstream endobj -437 0 obj << +436 0 obj << /Type /Page -/Contents 438 0 R -/Resources 436 0 R +/Contents 437 0 R +/Resources 435 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 443 0 R -/Annots [ 440 0 R 441 0 R 442 0 R ] +/Parent 445 0 R +/Annots [ 439 0 R 440 0 R 441 0 R ] >> endobj -434 0 obj << +433 0 obj << /Type /XObject /Subtype /Image /Width 318 @@ -2178,61 +2148,63 @@ O g}(mvy^[/F !Օ\ VZ?endstream endobj -440 0 obj << +439 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [254.2338 756.3337 271.5143 768.863] +/Rect [254.0739 756.3337 271.3544 768.863] /Subtype /Link /A << /S /GoTo /D (figure.2.6) >> >> endobj -441 0 obj << +440 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [216.3544 738.4065 233.6349 750.9357] +/Rect [445.5474 738.4065 462.8279 750.9357] /Subtype /Link /A << /S /GoTo /D (figure.2.8) >> >> endobj -442 0 obj << +441 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [367.5403 720.4793 384.8208 734.9167] +/Rect [247.5821 702.552 264.8626 715.0813] /Subtype /Link /A << /S /GoTo /D (figure.2.9) >> >> endobj -439 0 obj << -/D [437 0 R /XYZ 74.4095 793.4011 null] +438 0 obj << +/D [436 0 R /XYZ 74.4095 793.4011 null] >> endobj 276 0 obj << -/D [437 0 R /XYZ 257.1957 358.7852 null] +/D [436 0 R /XYZ 257.1957 345.6866 null] >> endobj -436 0 obj << -/Font << /F61 219 0 R /F28 173 0 R >> -/XObject << /Im12 434 0 R >> +435 0 obj << +/Font << /F61 219 0 R /F28 173 0 R /F63 444 0 R >> +/XObject << /Im12 433 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -447 0 obj << -/Length 1662 +449 0 obj << +/Length 1501 /Filter /FlateDecode >> stream -xڭr6 QH9MWiSOs,BMH՝|}w EL2b/C"ODfi -!*~@ ɔ7o2 Ίm$ ӫ^%27d$<~eVLJOƋSə2iRj1fyH DPTd(L&E.(Xp&BF f -⏋G~n㒥[fF90 x䔙b*0 p)3O1eJ:*zY  dM._іJLȥK](Zs0Sipto͡-ط(y2 ֞1d$zF3d|U P߷ -?nqoS& TљbE*ULRƍֹ\?&E#M2B2ynmΒő$?#̄jE 4i4JQ@4cH('LC9 ű]XwmeCj -D(oIRt8`xm{jWDйfQ`L|#Krv~cp))W6o{DEqpUݮ:,t8x);4m$Fo6o^Сn<F9}Ay?@qmop @3?W$: O0޷Wn+{{r=ꈧcolOQGcx T 0za \<y z@^b<(k wI^u[a*S= h\WxD D`HmYW_*UwsN?@AK~ݒw)Tj0^, N{A@ro`Xr6vzM}˦lA;{% vM0e<((h7 i>ȱ ( g4É<)k\y bJA\n頠g9y  Zjr,*4L2/>oN"kln4·V*tN -pj>*e9tDk TJ3cwT3a8c$̼@inBCYZ e/4ȈW'^wsg̩ﶖ2պE #쵔 -vM&dZ<eA= 5!$:`)j AGHœ03AdA=Ϊ} e{$7`wv_*BorH FRл7!zAz ǩHE]egd!ʷ}Uql^VlA3<3/FpQ]ل{>iXm1Rq&?W b,_}2? G+{uendstream +xڭXs6GnƧ !f6IO32z&}w0p3xlO~,ÂXI(Ƃ96|nzf^UQ$:.4,^g?ۚb9Yo"JKS;_3뷫D+_&倞XA(!qN̴( Tq0Xt4,LkqƁ5L8R̶4lu3ufJ0N~Wn֙47BʶLƣfha1I"3EKf{L `:JD#D|Y}L oWJX` ba┓H[Xf6R`Ö:'_TM9Wb<Lw.͞34aT% dݠ]d"-7""Bi0 nj2I@9*NpI[ݭ-C_iL{O 3fؼǘ޶n 确r?~?d#& &H%HemfZ H +#e̗T@Id!Jã]RΒbkgq +]9.ݔ f9@ +E8gaFo$Pe%b,Di@1HDЈ>u1AwĴ$ +<^ٌ7-yՌ9J̉I5(J13vxӡ0g!p۶jSŸԖ{*6޴ݙxU!}9T@=BvyR1r՝/A(BFGJy;Z]Bk 4=Yif즍J; 9Z, +3$ +3~ePR1öu=o,> endobj -435 0 obj << +434 0 obj << /Type /XObject /Subtype /Image /Width 318 @@ -2255,7 +2227,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 -444 0 obj << +446 0 obj << /Type /XObject /Subtype /Image /Width 576 @@ -2277,55 +2249,58 @@ 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 -450 0 obj << +452 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [212.2172 474.7794 229.4977 487.3087] +/Rect [212.2172 394.2058 229.4977 406.7351] /Subtype /Link /A << /S /GoTo /D (figure.2.3) >> >> endobj -451 0 obj << +453 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [261.2349 456.8522 284.6306 469.3815] +/Rect [261.2349 376.2786 284.6306 388.8079] /Subtype /Link /A << /S /GoTo /D (figure.2.10) >> >> endobj -448 0 obj << -/D [446 0 R /XYZ 74.4095 793.4011 null] +450 0 obj << +/D [448 0 R /XYZ 74.4095 793.4011 null] >> endobj 277 0 obj << -/D [446 0 R /XYZ 207.6418 561.8289 null] +/D [448 0 R /XYZ 207.6418 514.4262 null] >> endobj -449 0 obj << -/D [446 0 R /XYZ 74.4095 501.6603 null] +451 0 obj << +/D [448 0 R /XYZ 74.4095 426.5985 null] >> endobj 278 0 obj << -/D [446 0 R /XYZ 298.6715 239.1142 null] +/D [448 0 R /XYZ 298.6715 155.4996 null] >> endobj -445 0 obj << +447 0 obj << /Font << /F61 219 0 R /F28 173 0 R /F26 170 0 R >> -/XObject << /Im13 435 0 R /Im14 444 0 R >> +/XObject << /Im13 434 0 R /Im14 446 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -455 0 obj << -/Length 1260 +457 0 obj << +/Length 1228 /Filter /FlateDecode >> stream -xڭrF쮯6"lOvt46)΁2$dK$3hF ,D#L3$rmhL"nF͜zU*"Y,2@).?oj%[oK⽫ׂCUvz2HL_r>vSSIβ,ͭ:tJzf}Y$zO"8ݨLۑ']%a.n|_w€]C=;+ڳMi70~#2H/CL pGBD%ӋFi=gt,{D4;#Kg;>]_4%B wvU$x}o0%~@*I 7CdeV<֟ؼ -X$q DzhY}c*>srC`G%YW8pБ˨^)ƒSޯzb.W*Kie$AYHLb@GIE8Pu 1]@U4fPQsD&!Q,aT -SCcbη[W1'y$c9f7ЛSգ3o }54QeJ',cu&vx,fT~<! "zx9w L#hk{%nG*ih; {_voʼn6hQJt #KgQ vɏܢ-k90D2#V`Dz7Z< :D iܹ=A~H4 -GTD4n'v3Zf`6Dx540<MQ+ !.E ^aĤAEo,"QoCљr9Yi񡨖}vfy}YDG=/Gs79Ʈ1wn6cW|-Lcj@jlR;b9y^9彐^ثoJ[Tke . +O݁EBT +^$X[ *5EBKSDmC\˕Vݩ4fbl8?hAAj9iXxV`es"ZiGfh,!-dg*p+ %ܔiۚz E4x:tP +k.Ff3$ oFxECi,zz4QPB^E[sAMu( tP+N4]/Mkec[׮Hv-!YZc%+p0v6-!Kv&͜Ylw/#r\05茔bZ7c >[h25o60;&\њ&;a^i"b~.S.|)H N"Is'^r'DD\ιe K d3%0Ye.<(HxP-р)K鍣2̃ȱ2AqhKl;p/TTm*pT[\X/1#sP-ty,Vz֋K8{cSG1F87bS̙7#ׯ9Wg*:TQ] yjHX)j3TD%v1fZ`/M`, +'AL } +~D/L`gBMv =o@ܴHȋMynݪ[ٶwoVi +A>N#Axbܣ6Y5lE쳇H,^y$ H*3akڄalnz?e~bMWendstream endobj -454 0 obj << +456 0 obj << /Type /Page -/Contents 455 0 R -/Resources 453 0 R +/Contents 457 0 R +/Resources 455 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 443 0 R +/Parent 445 0 R >> endobj -452 0 obj << +454 0 obj << /Type /XObject /Subtype /Image /Width 380 @@ -2486,44 +2461,43 @@ 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 26 0 obj << -/D [454 0 R /XYZ 74.4095 640.0811 null] +/D [456 0 R /XYZ 74.4095 568.3721 null] >> endobj 279 0 obj << -/D [454 0 R /XYZ 257.7073 274.5239 null] +/D [456 0 R /XYZ 257.7073 202.815 null] >> endobj -453 0 obj << +455 0 obj << /Font << /F61 219 0 R /F28 173 0 R /F26 170 0 R >> -/XObject << /Im15 452 0 R >> +/XObject << /Im15 454 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -460 0 obj << -/Length 1650 +462 0 obj << +/Length 1581 /Filter /FlateDecode >> stream -xڭXݏ6 _G8eݵE -&^qHQvwW`C,I(TD'YL@^` Wxh/V^%"eYj/T)gJOoײ:& %[G1CY*˫p,9KD29=Θ1F:7 ۭ#vV#aX& J>ߠ -0z Se`:I8oq iM4_rtN2!H4N8 $a#džˮ'D\iN#}_:Bn-};CaT4'_@Q{q8R!f.dQf0:9ܩG:&^uٓdR║ -IDE x+@S/7,ԋ8OROUB0ŵ>}-me˛]A(p^Ud}+ma)JR%,tv|pZ.(WˎwCMa'Wvʘwl%B.g*KcH]yF,A }xT?&}1ɘe2?+SLFng[ WIb6v$dyL3M-S&8^uL -/jزCb'dRx:u~C׵E2]=1 gx!Ņq -&]r7b|z=ŽeM pGd|!Nݥ +]l5Yr[y<)$6(GH(ßHf&qBzdo^y5~qxڊDpK.o2^ҟUJ,l2/RXxvrpl$gP0e69nr朓fY-@6m-Qe@)L7ew7ڴŎ]M|YJVcsUJi=G'hFq!]Q][x-f "_ rG(ѱ6)R1bPF7KzId}E6 WJ_}iB6 :D + +w~(@m$|DdeؔD ]oC0bttڣoպHB9b..MCT7'bS{)vRK>8%a[݁Y4.eلSR0KhB%q>6*jP/UjTCws@I>_2dn!e&S.3c?f&?G-cXgdBa=)Ixk8 JtX S#=[Ŵi?4筏M(*wL8mOD?CEGK,sɤo BeQajh&ƩjBqnjS*ZOUB0ŵ>s]P%0MzA Pz[S,u>majz7e䰎ߪ]m&) 2™3,>|I o+DdVrzNxcB)1F 9Ԙb*#lfV?`\YeHcDg#GZŜv?i'lr{dLp> endobj -457 0 obj << +459 0 obj << /Type /XObject /Subtype /Image /Width 318 @@ -2551,214 +2525,208 @@ r 3S.JܿxkgqV s5TO-JKcU 'ޣׂű*\<(--U)BRԢ8V ~rű*\O-JKcU#H%Qp_=> >> endobj -463 0 obj << +465 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [291.2299 720.4793 308.5104 733.0085] +/Rect [291.2299 648.7703 308.5104 661.2996] /Subtype /Link /A << /S /GoTo /D (figure.2.3) >> >> endobj -464 0 obj << +467 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [371.1636 346.0359 394.5594 358.5652] +/Rect [371.1636 224.7993 394.5594 237.3285] /Subtype /Link /A << /S /GoTo /D (figure.2.12) >> >> endobj -461 0 obj << -/D [459 0 R /XYZ 74.4095 793.4011 null] +463 0 obj << +/D [461 0 R /XYZ 74.4095 793.4011 null] >> endobj 280 0 obj << -/D [459 0 R /XYZ 262.5357 400.1783 null] +/D [461 0 R /XYZ 262.5357 331.2758 null] >> endobj -458 0 obj << -/Font << /F61 219 0 R /F28 173 0 R >> -/XObject << /Im16 457 0 R >> +466 0 obj << +/D [461 0 R /XYZ 74.4095 254.6192 null] +>> endobj +460 0 obj << +/Font << /F61 219 0 R /F28 173 0 R /F26 170 0 R >> +/XObject << /Im16 459 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -467 0 obj << -/Length 2165 +470 0 obj << +/Length 2098 /Filter /FlateDecode >> stream -xڍYݏ8_Gl˟6. -t=(cэ-l)RxE&)(M_)0lST8g7ݚ[;8Q?m=#lUv/W[^ԘLDTؖ0pUp QYK01ya- , HJ\]AҰ=ԧ;:LqodkOy s=NQ젟rhDZ+G!=1 x&?rsb^#i08GTհr0z5bR@O.cJ9%aXn x‘E7 ]0e#$O? &m^([W\DgDn1Kax**kbdlIGg˯%^Y$>I1 E%t9*,(Vn[-Gm5(`(A8,.,&E 7 -jbo)E8@\X瓁)C(JyH(88Z4GYsZYǧrsO#}CB (niT H [^Rr^4~aB)t7kA3B߽@b0 ܧStᐴ=A|η <6FGasJx(.kq g- ;t{:tʝ{\c0:TpRf>%bo]n^`mTq(A)Sˀ#q4rJr2C*ymiSܐN>JC&݆w 9qy# v:Yv8Ax󀳆[(1 MW`q-j4Nq%JQI5.]h.2ot_ %QO\eZHXNW⒛ fbPb&GעkL"?$+ +֝wB/Z VLCJl8,K,`wc.eQ~ba!bwXuBO*yC -s짣V'Q&"+^56axemQ1_1ߥy2Ux \Kie K4}\O:x-kS^%y4=ln7n:hbVni(BUKjSqNVW2*]|B<3Oj6.Yn4σpN2 >͞ɮZ:o,,E_ǒ - -NW.C/w{͊4Š78(݋Z6{u(=oerzfgX:~Rjhwc{Ooi_dkZ|+û c/ aCb+Jr>V^>gba@g^b8KO1MD?G@o*7@4h~Os!rM:|Կ)pk^۽vE6<Ә_'keW&h?-u=\GuY??{#ݛ,(͓Ly%*WsDB endstream +xڕX[o6~ ĚD꺷iv-0Ylك12g +ti;c?~Bʲd99ύ +W4 Wi.aEv o/o_& WaynVBfmz[\] +H~nښ& +6Kʓt R22i STa-zi-n٫ٶ- CW +o+ϔoY4ku$wԘx᠆[סNsЍbv+`Cj[-i@v.r$(<^d)ia, <@~Ésu = 1q\)ypmukSpĩEgK=Sb(`КK\fR\SOPzS8|h\OwbV5E(̸i`xO+#h3,IB@`f;qѫomT~pwѝrU@du6]Q|w EI"^RTrH3Txl +HB`+mx07q=hM&S&;!a (js~!~Guհ*Y!Krrz)kџ.` 6CH ;P/Nl >`Ter̳( +.C-'& {TVd,a=AH!"*jm5$.D I#)66ev{ +ho,TmF_Zx +/?7'~xUy , 0;͏kxeg/SV/rl&4 Vћϵza{VkK) ,жsΑ%:mͳ(wp.woa] ᤠzmzCpN09 ώ=}> cy]'>< +cyE"]!ִU a!2Ybq ndh{z?&f0-95Q5aR6ej2 J}3 /"X@#+//SxLeendstream endobj -466 0 obj << +469 0 obj << /Type /Page -/Contents 467 0 R -/Resources 465 0 R +/Contents 470 0 R +/Resources 468 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 443 0 R +/Parent 445 0 R >> endobj -468 0 obj << -/D [466 0 R /XYZ 74.4095 793.4011 null] +471 0 obj << +/D [469 0 R /XYZ 74.4095 793.4011 null] >> endobj -30 0 obj << -/D [466 0 R /XYZ 74.4095 282.3405 null] +472 0 obj << +/D [469 0 R /XYZ 74.4095 564.2138 null] >> endobj -465 0 obj << -/Font << /F61 219 0 R /F28 173 0 R /F63 471 0 R /F26 170 0 R >> +473 0 obj << +/D [469 0 R /XYZ 74.4095 307.4102 null] +>> endobj +468 0 obj << +/Font << /F61 219 0 R /F28 173 0 R /F26 170 0 R /F63 444 0 R >> /ProcSet [ /PDF /Text ] >> endobj -474 0 obj << -/Length 1906 +476 0 obj << +/Length 1704 /Filter /FlateDecode >> stream -xڵXY6~ϯ U-ɦ)zmv@[\ID:p(Ye;,ù!+U$\mUվ|R{?<}˻7c7~)WnqzxZ1HC<*sכ{US^} -V_^{s0df}n&f[7"fl*G7< =htБȇ^jtE{9WĘ[j @["~VOOk9Yk:־#)YK -0?r̚Ob}Fy]#Fphʒ\n1ofsnЙ;b|poD CxX}n{+tJY=UZvsgq*OJ:q]/+c#.D0 -]&b]^ :R]vˆ2\Tv^IDZ˲́I@/F܍='#+i{ĤSyAvVy'#cc QUX -w{3v(Ha0&Mbr͎ܥiKKi 3DXIXNu+++15jQEZ p<A`j9H H-$m2IYɥ{xp)D,#d#]Q <4UMղ `2@DEaLˬ]^$#!eelN+7gw -HB#{j4_w#}f'.4\ns~㎹-CY_0.+9w[aNmuAaQc5sֶgyjQHi|K#CO܊؈ʐaڂQ& -#ajZfu)"Xb:n"v1cQX[w)mBs>Dз+H܋Q6d1-2 X6}f*7M #ܞłUc#3U -[) -O!Ro$Ҳ-~EHISN0ΧclDp'_ cī=]4Of•9:E}߱uo;Wj(BhS;*HlU3pNy^hm`!Z?f ^2ڛAn , O^2v̦] -wbQffdtS呣Z *QZuja\8v,9U[&uH^7K(F˕]VuqaC'~]%}&Zsz3єW%fk!I27ΓdZaŅ,Vgy"pC)I.@FWJ;AC z$`!9秪ˀ?s*IXj8 +bP\DLċ:O7Kڪ"JYFi +R &4$\l:= wO,u%Ã;q]Tʹn;sqU7D5Tg8q: n`bgd}?0 +!"-Bv 52ϧםug!v_ei@ǁF'W#ʶ~FeĚNA[Tǣ~wmSA1tGqOR)E1פ^RjfjP=)k4;a$'YCe4|YX?KCF'~0 +FD/,3Y%=sÌfNd}G亦폪f> endobj -475 0 obj << -/D [473 0 R /XYZ 74.4095 793.4011 null] +477 0 obj << +/D [475 0 R /XYZ 74.4095 793.4011 null] >> endobj -476 0 obj << -/D [473 0 R /XYZ 74.4095 664.833 null] +30 0 obj << +/D [475 0 R /XYZ 74.4095 668.5966 null] >> endobj -477 0 obj << -/D [473 0 R /XYZ 74.4095 401.6363 null] +478 0 obj << +/D [475 0 R /XYZ 74.4095 341.2618 null] >> endobj -472 0 obj << -/Font << /F61 219 0 R /F28 173 0 R /F26 170 0 R /F33 181 0 R >> +474 0 obj << +/Font << /F61 219 0 R /F28 173 0 R /F26 170 0 R >> /ProcSet [ /PDF /Text ] >> endobj -480 0 obj << -/Length 2134 +481 0 obj << +/Length 1963 /Filter /FlateDecode >> stream -xڥn>_(`%̎$7veȎ% 1O/T]U]益].(]kpx*e s~s,ݟvJg@z_x9*<qx_LLjoz.oNjcY?&e%~'(Ϲ7ts?MS5. <ꒇ~l7.AS?SawscUes FoCo0 Y57\WgçԡeL[z+Sia_vh*Gv*r2?̒zX#u[5VVF݊e`h415Ī2-yaeͫ5@zC: -`^p#^P(Ӕkk18A-7[㰱:evRGd-Άsc-ҤU -qܭл6%8(ȋMyɋ0omTkz=8ހq$k2@v-෹h(W[&Rm} 73.Tm`'L1S{ᰶ׸sc:wC\{`#q?A]YKqwp |c <1 7%SCgp+UȕԶ$ S1Ԡ4>b+7Tz\U3Ycf JhZݴXt la&ٲ(F* .Ap ! -oiצ.΃C -c E\ #8Ц{I -Qk/e+TA2,k*G2/|`fazrG^҉6RX. -)b8{)DH>qp1߲x -38B='#`Ut29! aa",FY˙G⵨ċSqxC= 퓺C;TuT= MeFwF9P,+wT!H\@>Q>ە ^M vXcNBi|8v"Xuf AjfxHo*^JKΨ 2\e- Y9ћXa`ے|Cƚo֧4,A?N;6rx93R< # d=plQ}D($N1Zv(r 3\r:J/.S(HR WLM e:AdLWf yJŨ}ΏX~Od7ݔ:F}F3^uYK\4NOs> o:Ծx_;OeTwTbR-;" -/ s8Asd1ҨzP640FXmj6~h !+ɲ` -b헺sS#SI恧u q>0q#fu;5-~ݤΫs!/FJϻ^W3k}{30Dݬ;lUFW{ ZF3p tM$?:DM?ӯ5:_φCD\Z,OH"aVUq9UPd4LxHqx2sy7xKykhktVU`nUSWs/AAM8ޛxAh )!$Ǣda4&e ?4E$~>pN?c ²,Oi, K}2y46&$K*؏[|go3.a~XɶY$DnijJ ٽt("R&.J|[_){5ycfDc1oM~;64';WWac +W)%L,]ͩS'Ncׁ}<4k_]C.Km/f< +LW&E2 5Nm> B$7Ib"br(/ +'"l[ ntѵqi zhW48G70E,1Fx_ }A"=r>b6-PdVzdRSdGהVd|.-M#W\O{q +hwd so"ۇkA&S\A0uզ/Udfԉ^f2N Dv"9׈ZX/B~,0p INďOAeeˍzX; R3HEN3ՕJTq,1`+}Ҕl qkOx +Ɔ$po_ c`dh5 R^-&X)1lE7+V /ڗ'8 +:s3VegK`lnBHܣ?'ey+3 X}>Bdo]}u b_?RI +<ߍejXU+tnuz^FJʩCȘFS>po2$ۋ pՓ7nDZ5MY[ '\![(hnx%fߟ݁gJK]U=|gV/71{' e^݀q"KÙKlR Gӌo4O؍~RXicm>D_rkf"(c0ױ* @qC)BLǷp5J +*><0N꼖bK?K m!0k_ONZ+57Bpnm#&oZArCi1BHY4sckC%wPbm(NCzIIࡨ:&%#I # s>4꿮6sԜ ޅ;.H!R 5ywHODy|8Q Pfq.-֐bYl{ƞg}"tXm Ğ>3lk8aܪƜ`087ҩjz[@qikKf[-68U +8mc8NH3pEw]egb%(:11՗pOC(7n]HmʳL Cפ^˘r4/pgC(J{!^J@ᡔvK]y^*  7rHmM6{ǧLJ~ΧTwo‹\F#+o>oI-~nDby0O_% z=ciׁG-)rDzHt]%&Vb**fH"F*.OO cdլϔ -AW`wyQ{~:8cx1[F{4_8v=B +,BՊ!L"g+~endstream endobj -479 0 obj << +480 0 obj << /Type /Page -/Contents 480 0 R -/Resources 478 0 R +/Contents 481 0 R +/Resources 479 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 484 0 R ->> endobj -481 0 obj << -/D [479 0 R /XYZ 74.4095 793.4011 null] +/Parent 485 0 R >> endobj 482 0 obj << -/D [479 0 R /XYZ 74.4095 507.9905 null] +/D [480 0 R /XYZ 74.4095 793.4011 null] >> endobj 483 0 obj << -/D [479 0 R /XYZ 74.4095 304.7651 null] +/D [480 0 R /XYZ 74.4095 730.7054 null] >> endobj -478 0 obj << -/Font << /F61 219 0 R /F33 181 0 R /F28 173 0 R /F26 170 0 R >> +484 0 obj << +/D [480 0 R /XYZ 74.4095 197.5969 null] +>> endobj +479 0 obj << +/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F33 181 0 R >> /ProcSet [ /PDF /Text ] >> endobj -487 0 obj << -/Length 2177 +488 0 obj << +/Length 1951 /Filter /FlateDecode >> stream -xڭYYoH~};FHjSS6[ՔZ%;X#@Guu5%DiyaP0"[_񤂽@iLoHgEg}"Uӛ/c=f,I6O \ٶ)M7vb#9˭/Rk˴YJ"*+*ORT$oP]ݒ!^+זۺĮSro 24F18T>DJAtoIU5x^˜פ*<8TusZZB̥ye&0=W; 5XѨ";پe1}5tBQW -! \O$ g0ZÍ\pG6 4nmt|!DLėȲzNSv(yVeZ]}9v~(^nYğuÍƵNs83E!iwB3H- *ԲUfRwP! *Hg[ut`Y>mi?* we,;~UulsMvDomhσߌ2#oQ]yt@\tmAkoC] Wߴ? e\lȡ@vѤƒDb c -_ |&+ښ>vYUW|LzOVÝBg.||I*?۱=ǡF -D4"?ir\MSWDqf`Ap[YNزn `bu'$U.iw4cV0a5f|.>Q4ҡؔX[GXdxTx @J]ch\=ڏL핀=(߾/힮ic +.5pHYx .=#D>@ͨxJd|}Czk t(R ! -G ('{Z|YrM^ C_¶o? q4jrqLih~UrT2e2| @b>Sq{NIYm.KS]CJ,Pğ3Mg3p+F%!OAy +]}.N`<^tkZۿ%icRmou(7&4a5m)"ɃK|kfɬT02,MU8WϤ1sy"E4#)_#ճ @3CdO7 o9lin%͸'/"<>W xܑ<YyC)qQkФ\ ix,8Nv3npey& kE~\v5vGT ?rG=mcVѯn|))LE["⩐-3jH3Ş)Nendstream +xڭX_o6 Oѽ9@ݰ nAI[|GNzW$"D/)0MHCtSo̺Ayk|E|GbQ7$@m;U압lUyEEmgqn/ǃ$ +HQI9/²,gf#Z*/%}@ ;%uܽX{Z-< JQ3su]֘i[N-g^\Zի >\ȑ0FЋ˫^13*vT;>@,Rƒڡp;:($ރ/iQhglX:KA UCl\b9>8II+L-O/{zgRTvH 7DRrט q^PEER-M}1UEɂ}C'U1sGno|9NlKс

œUڛxNKųN̢z;cvtm^5DEiDk]rUs܀Ƨ,8nQfOe{AI3п5䐤VIa:gH K#sr݃md MkC6(eVUa8VΡE|Tx:kD}zh0o|G zCEֈ/F{<#ҿ%;(ߠF^yC9nCr/Ή{@$XKjt2oݧѽω9Osi!;xq\%89=+hKH=gϟ2:xK) +K$-5 zH{Tip {AJO\QIEQQyXUW~ga =jfK.A]hM (O +HW ܔ3w(s߆4\Fb >q "Њ Hq7ֲz2k"'*ʂ5Q^ Bꏳlw?,_ r7aSI[5qVLF2䴻pmTc!iq%-5_VWGH#s)۪*"a=剜Kq'P⏫WX> endobj -490 0 obj << -/Type /Annot -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [244.6344 153.0904 261.9149 165.6196] -/Subtype /Link -/A << /S /GoTo /D (table.2.2) >> +/Parent 485 0 R >> endobj -488 0 obj << -/D [486 0 R /XYZ 74.4095 793.4011 null] +489 0 obj << +/D [487 0 R /XYZ 74.4095 793.4011 null] >> endobj -325 0 obj << -/D [486 0 R /XYZ 212.5528 658.836 null] +490 0 obj << +/D [487 0 R /XYZ 74.4095 629.9623 null] >> endobj -489 0 obj << -/D [486 0 R /XYZ 74.4095 531.9071 null] +491 0 obj << +/D [487 0 R /XYZ 74.4095 368.2522 null] >> endobj 34 0 obj << -/D [486 0 R /XYZ 74.4095 412.9632 null] ->> endobj -38 0 obj << -/D [486 0 R /XYZ 74.4095 240.4054 null] +/D [487 0 R /XYZ 74.4095 250.6548 null] >> endobj -485 0 obj << -/Font << /F61 219 0 R /F26 170 0 R /F63 471 0 R /F28 173 0 R >> +486 0 obj << +/Font << /F61 219 0 R /F28 173 0 R /F26 170 0 R >> /ProcSet [ /PDF /Text ] >> endobj -494 0 obj << -/Length 1432 +495 0 obj << +/Length 1540 /Filter /FlateDecode >> stream -xڭWKoFW7 -6䒹5S$A46C%%$Twf4EQJ:pkYEZI3LhS/h߆/U׷o1J,}E -#ŧ}M\qƜ,Wʴn᦬Ƈ*XqJ$?g>5c3UFܚY,JER8|4LVђƽY S7;w)7 8~F\iۣ꛼6X]7.oK}!p&4ƸBM!wBʦ37d!H\4K83\ē ²T#d(5IѠ7)8S-ߜ3/IM0dD%&I%ъfg}0Gƣz!hiX7?U$Iv^;HA#D "8qu.=+NN_ *IVسf -c! U,\?! `^ W\811eUX -}5).vĚ#kNš5WylxyHO-lI) )#*Rj~9d$J -Hԗ#0~%$nN t9cW=6;nthmv_(0ntؚ}I9djjޏ/ApQE 3 4K4g GA PQj|h'] eČUvb4sꇊOġb#..o-\bǵָcOzU!xW}VqpMŤ/=DHŏ͇+wmભ0WϼFXIlUp}p-rt8Lf1q^66Y'(cOKŷ2sqTo;`)aLaG=8k9K)z6˶ :+uŷX +PSXRϘYP8NbukɴH:oחlv~̖wJr_!)p:x5k㇅v@{ơ)Fdqu@,BP,znt5U |p}b%昉K%< *lT̉J|MIG:?{s+bSϟ_n s#}tH g}e敓c%:v.%&^?QcByUi-COt[2Ot(vy -'lxxRbc]0&kN\#006}>BA@Ã_M4ە@4P/T9|lAPԻ VA02(A:97VL瞓@> ٿT <܋endstream +xڭXKs6W(΄ޏܚ:$!iW8Bt'w3k]k gT98Iͳ0wG^"YOAlohsQZzJWjeU^n[eh%LQH@߫rv sp u t0aAro/u9m/:ky-7 ) 'KSTcǡ䦗>ZCZa^"v*pcBﬡT 8pn΂CaZ!ni.XQ ꦀQL&akɞnq.$(4Iw}eBpp8XU|OvѰ}~a5 +T%mUԞNː a bJ!=._C! G2k1kez^6E+XL ݯ%mzX9=i +h~8q$܄fKEw[sĠ= E\X S‡$,oq-ԷȨe\Ua nRhtTѽ^`¹h:GE%*{'tW,P70~0;} +LumpUyˎO^Fh9u#Pau{u}Qݝ=ֽa`J!d"F5eVV6);VQ5v(\wb/l?5Wsendstream endobj -493 0 obj << +494 0 obj << /Type /Page -/Contents 494 0 R -/Resources 492 0 R +/Contents 495 0 R +/Resources 493 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 484 0 R -/Annots [ 496 0 R ] +/Parent 485 0 R +/Annots [ 497 0 R ] >> endobj -491 0 obj << +492 0 obj << /Type /XObject /Subtype /Image /Width 400 @@ -2837,118 +2805,58 @@ g0N >>+fe?.ɮ7&z/]1=/ڜHTSRjX/sBNv`H_Xzv,y9VHCɶ1iiOc빯HQO|:ncYOH[1NH+}7s斪)WCV]o:ަ2eUo,DjUx{+SRjX/sN@[əSag6:spQƔL1S$4&F^ +^(¡^l)H\#GQ05at󧅳XMi8;]tu¤'V"fbg?>)/]=sqcђeOzL3F&qcqxӁsKzN4F,'?cn̹P˴gӁy5xup mo9t:4jXꓯnDFXim`t1?!V)UA^ +^j`t-.QF^ +^Rw8q҅Dy5xu.%ȫaū涫 IruhհՑ_3']h{ˡKԡWÊWtG?H^QEWEWEQEQyEQ԰EQT8E^QEQEQ#æendstream endobj -496 0 obj << +497 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [166.3553 294.5092 189.751 307.0384] +/Rect [236.2284 135.1631 253.5089 147.6924] /Subtype /Link -/A << /S /GoTo /D (figure.2.13) >> +/A << /S /GoTo /D (table.2.2) >> >> endobj -495 0 obj << -/D [493 0 R /XYZ 74.4095 793.4011 null] +496 0 obj << +/D [494 0 R /XYZ 74.4095 793.4011 null] >> endobj -42 0 obj << -/D [493 0 R /XYZ 74.4095 723.8983 null] +325 0 obj << +/D [494 0 R /XYZ 212.5528 658.836 null] +>> endobj +38 0 obj << +/D [494 0 R /XYZ 74.4095 570.1135 null] >> endobj 281 0 obj << -/D [493 0 R /XYZ 228.7369 358.6984 null] +/D [494 0 R /XYZ 228.7369 203.0223 null] >> endobj -492 0 obj << -/Font << /F61 219 0 R /F28 173 0 R /F26 170 0 R /F33 181 0 R >> -/XObject << /Im17 491 0 R >> +493 0 obj << +/Font << /F61 219 0 R /F26 170 0 R /F63 444 0 R /F28 173 0 R >> +/XObject << /Im17 492 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -499 0 obj << -/Length 2338 +501 0 obj << +/Length 1505 /Filter /FlateDecode >> stream -xڍYo8~",?mٽ=nN&8va;"؉ -42E#%Ub~d*4X=? -8PÇ|J~y%U -݃I/z#ԓzE7$fkx2f/zÑ 4叭׾^L$ WIIHި$Z]n۩io2&=lADyw"p;Mx IqզJ†yK?itU9OUA}Ǘ zvI^Z`ygMUatJ+kAD~ yᎵ&=%qpl0OVSua}Vj6S%oewp$iy `NAqy܀Hwo@zj,T;,?4}}Uu /z&\90* -E:Igcj٨Uj%"Q ? Uz jUtmUƓXtiܛ2: mhE$^uS--uBȖwX[S -.FJ`3(\ץ1phG!x%h1 $җ2[N#ڠV#'C\53-"*9Ur"h,h@G-:Zѕ:턤ҺXxU/Ii2ɮ##d( *[>ԴB#ywT[3W8QĄQԱ0uгcp0AcGS}R8-~ -Q.7re)N@{" Ֆ0(!Q\i;,кI~vecZʗ81l\Dl%q"ovfy|YC8,mV{=/͠z`/}iQ–nR\jHY:YpJe;ď!Tdm%fV˘yxx/"8/jJ dP^- (czgOpy7zv>y|'U7hHNf(-Y=ӥչpETyL]BIFC&$HY&ιUP1w.:BO?.D~w`Ȍ])]c(dOAA'm9_x'Z]SWatK -Zx!e< 2Q WV`:# p=Wo*@7)T.Cw"*%3힣kYG\4F!d*}]G2N݌&GQ`r:]k<ؽ#'$Lxaeⲥp &H 9fyCbޗ<iOG'cjyd^D@AYĪDoSq7$wDB e#G3;KxB&+;ANUQ)cܰ`c[aQv0lhXR4!k,L\&z0d8_ŰN:)c?IZFPk-<.Zyeu#_ԩ|TXΗB(?,q16-S Nx̭Mnlp'zzdH u-e"왖R+ATBɇC҅'"ffiY/T(5d%"Š`±MHG|VL~@^$Qhxפ_V^QnAy偿M?G36%40?p +$0=)5JtfH$SZt anDZa7x9t>ѻ$rW&o^8>6k3XgSkB F! ֮wm>ߵ{Wu\P2!wr6&]t5؏KSm# {E4'(k&3B6 gendstream endobj -498 0 obj << +500 0 obj << /Type /Page -/Contents 499 0 R -/Resources 497 0 R +/Contents 501 0 R +/Resources 499 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 484 0 R ->> endobj -500 0 obj << -/D [498 0 R /XYZ 74.4095 793.4011 null] ->> endobj -497 0 obj << -/Font << /F61 219 0 R /F28 173 0 R /F33 181 0 R /F26 170 0 R >> -/ProcSet [ /PDF /Text ] +/Parent 485 0 R +/Annots [ 503 0 R ] >> endobj -503 0 obj << -/Length 2654 -/Filter /FlateDecode ->> -stream -xڕYKo#9@ѫ^{XI7zg19VlE~Tr r$"Xp\3t -B,b s""j>db!8+"_?.*`z??͓l\ɼH$[RΓ[;,Otf"䟓R4+)XH#]rr%B1Q)2(-Y"f*K<9,W m)_49Vuu zKks}Ogf-F\@1a3nJ DXu/}<._mmDmbXl}Cl=ㅞ 4O6pmR=q/ncWh10J䬔:P1䛔n:gZ4h2e*4l;X)"
(_~'fAs4XBһ=B. $08k4KjiEbAd)fu40P5P4cz1=i>0gx0k=4x# (Va҄ͅέA¸RAߔʽbv*nyhkӏomHśCb΅KOA05 -/māҽ'p Lb9us]́-ܼzꀛNcqӷ`*>$s|9d%9 'pϕqS?_FYʌ"7,+p'v'y_k_2u*jH 3$08B)-u `OcN!a(^Gd*fv^<˭ 'E5gY gwC.`x "H Tٮ -hڧ5o!ݨ; g20'qw8C%=PfDY$LNwMimlF=wھ fFpH-!& .3n㇖ȤP42M惙5Ω`&-7-}l ^~'FZ+$Щh"=i -}=i߼ VgF MNLaNoE'Jj5WSu(89Rs1y몰m.#nhl㗏dVsRSG\ScT'VB.Pb֢Ji"[xH4:.8D =7Ą54Tsp&݉Wn[@LH$x;/׋h/J9Wpu :N)(^^P#|2itfC)) yh-~Xh ?;vȂ8eݵDKVy:us(%E2̎%`oqm(AW9`6wxrC\P͸T+ꢇʒw1Ы :9_J&b=@*no^I.ZV\q4e㒭n,lEvd+Sf,gڴ^(Bѷ[RV 'XK RwHG.c4 G֣o? /@P d WIqaWB -b*8C:B @ѧI;nN y #a -O~\g=%7gu-#ۛ|SkABAcj[WC{v%B׈yH(("bf#\5(P~j7HqQ< Jpp(\38l&v Sk0ӹB .lhpi>'ER5T"t\Go=۲ǪGRLzx.DpBYBXx -3Ӥ,/L43 qrv e8sqVFhˇ]EgE2|c=\ad ]LNN[B|WW4A).CEװ\J$! ?(5V!zH J%i;E&o#_'% -aOjy+GC$endstream -endobj -502 0 obj << -/Type /Page -/Contents 503 0 R -/Resources 501 0 R -/MediaBox [0 0 595.2757 841.8898] -/Parent 484 0 R ->> endobj -504 0 obj << -/D [502 0 R /XYZ 74.4095 793.4011 null] ->> endobj -46 0 obj << -/D [502 0 R /XYZ 74.4095 771.7323 null] ->> endobj -501 0 obj << -/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F33 181 0 R /F68 507 0 R /F67 510 0 R /F64 513 0 R >> -/ProcSet [ /PDF /Text ] ->> endobj -517 0 obj << -/Length 1262 -/Filter /FlateDecode ->> -stream -xڭWKo6Q X NM"F 4Ak1kƒYikÿ3J>hჸÏ~Y$DRh3IHOpvFp6Gxx&9[$_,\Ϙ^Tҟz¦-3yzD.v$Hliuδɋ$SR9-Ʊ(dR#'& m8TJ9##XT/!)k.mz^ i-}]}Q>5C]$z(əGw6z< -Qr7C][e{Fw;ZrL8Ǭ?Q0'-I7 m<,I}!ҭvWj =!)A +^<ú?Ut[KKuF+Oog|T[ j֣d`kkһ%o1@!Urwa[ pTG"uRVCLZ2peQLI)Tt*.t̐+Oƃ<'=Mڗ}κ@1RZĚقQT | [G]D Axی. 84=!XCWWM8I2md`], -3p%soɣ NÏ a Jf&#_P X`W&RSj!d -uIWV= 8'fϫ*ฤ ^V69fB60ði"BCcTHyҀ#CBHkݴLJT-Ǝ8۔Qu rNM{q`.2O0SN&_Ho0QR둋Bp`p81bx|swï!H "ƘnV&_}Y˸O$SJ#oH84Dendstream -endobj -516 0 obj << -/Type /Page -/Contents 517 0 R -/Resources 515 0 R -/MediaBox [0 0 595.2757 841.8898] -/Parent 484 0 R ->> endobj -514 0 obj << -/Type /XObject -/Subtype /Image -/Width 400 -/Height 400 -/BitsPerComponent 8 -/ColorSpace /DeviceRGB -/Length 11313 +498 0 obj << +/Type /XObject +/Subtype /Image +/Width 400 +/Height 400 +/BitsPerComponent 8 +/ColorSpace /DeviceRGB +/Length 11313 /Filter /FlateDecode >> stream @@ -3057,101 +2965,165 @@ o ^!B^WW!W`tUC;^xsWڥ膮UJ#+-ϯ={رիWK5D ݺgWXq]wھ}. 4[uu77o<~Au늊$m"=*!LHR3<2VL,EWf566VUU .\pUyua]uuuӧOލ7Λ7oʕ).ٌ3tyinjsذafޣzūS8p`Ϟ=A3"̙#"kA#x+]cǎU2HBn@!$?^PP˦GJ.YD|=* ub(y6'1VWi䕬wFaG|ʂZU޽{ĉr/?.QLo+^L+7S*> ^dzUa3AX'X)W B^!B+W!ʬR1ñjO^-S gbūs5$b[֡ŊWy/cuhWy/cuhտ}O^-S gbūk_O^mO'gyW8o0up- gZIB6ͯc豦G}˿] C t&O?c$]SgA ,/}Wi~ޙւ\^~?8Q6Oګ_X8<"xe[nU:e:iAYzk˩znn٠~eϴ~$*.P|~/sΓI޽wڔlJT@[_yu鯖' ?.&gt+(?3Dɗ..恼|mڕ.**<~酑#Gr˭ͧ[U1Aet7(dPz2!*ߏgk<?ax;g8G!=Nߤy[׸`ohY8w ) ٔL&7[=1yeνs/ѣ#]{_߱feݷ7Q+lJuuSkv%1C*/S: AyK˄g}cIi}ߜϒdlp}Û|DQl7$ހUa7k}]qx'w}=I,zId IGWVxmȵ2G2e:5E  Qi5n:fXiRe_|xUӫO~&=ߞ_ }6%!6\>1JhvbTVM6=_o* 2[ƭJVS7IZ&$z:33mÆv퓐~Mm(_|yG.¬.|[{Gd6vͭ;M5Wx#G6?D+K"z&UMn8zRo+/S]]=4BP2uٜ4ṣ̴2u?,ML{waSpP隐(ϰ$.y2b~ WA Oqhՙ?w+~|C*dS2^5W*۷Òq?:~޶$z[ɶٴ͜%˟-VwuOñ_$.2zlIR*4_S}:5xAޙ?$|*]%6;/ >:/'B&⎟[򕽍*~~N}hɶiK"elZxև{eCB{IZfzO][Zf8s^5^y/cuhZ:iK"elZxu'4%2up-V:xmo:f8[+^8y>$b[֡ŊWx#: gDAJB^!B+xD^!P<BȫB!P܄endstream endobj -518 0 obj << -/D [516 0 R /XYZ 74.4095 793.4011 null] +503 0 obj << +/Type /Annot +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [166.3553 276.5819 189.751 289.1112] +/Subtype /Link +/A << /S /GoTo /D (figure.2.13) >> +>> endobj +502 0 obj << +/D [500 0 R /XYZ 74.4095 793.4011 null] +>> endobj +42 0 obj << +/D [500 0 R /XYZ 74.4095 704.4697 null] >> endobj 282 0 obj << -/D [516 0 R /XYZ 210.1878 237.4841 null] +/D [500 0 R /XYZ 210.1878 340.7711 null] >> endobj -515 0 obj << -/Font << /F61 219 0 R /F33 181 0 R /F26 170 0 R /F28 173 0 R /F68 507 0 R /F69 521 0 R >> -/XObject << /Im18 514 0 R >> +499 0 obj << +/Font << /F61 219 0 R /F28 173 0 R /F63 444 0 R /F26 170 0 R /F33 181 0 R >> +/XObject << /Im18 498 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -524 0 obj << -/Length 2368 +506 0 obj << +/Length 2539 /Filter /FlateDecode >> stream -xڭZs۸_Gi$4MZ3wJ%T|㿾 JGI ⷟XNTh9I5&a7@G% zd7 O:E]i -R+ȋٚ׆MS|5#1AԷ9EܹHH8 -`&N \Ɓ%k%Zc-%`F:W31wM -k4=vz'"(@ =a@*"&aBRN-^w\CIt紜64@v -;ڃ}x OG10"sנJ}ӢQ-`j»9Z䘪 d|nuW?36z`UF*F{J&%GFX}bx>2e>?E@܆m6g*qvQL?3캳'Aq9Vt`ah8a!G=p*wW=f!%S12鐑RuVucɸD4KX{+"fa_!#2L(ym1R0czj4:>ӡv݄kH`ƈuUna6= X q -+x#Pɺ/B_ -h3;:%܊>l42QV&LN'*TSD*L8^dIfY&k]C9][^fQPBs\/eTn4O;g: BEH+6a.emI^w8jfkDp\[;6wNK? yhޗQ-sGY8{+tgoun!D2XyhvNiΝi)ca:R,/l6nq8 +:k}btV+Ϗ*} +3 17 +YUh~LWԤ9z f;[kUow];uѾ|)D]"՜TTU{yLшڞ})wg@=vSoݪzbGgxHIwƟ2}YiA`|yTiZRg 0$Ɇr wC.#jt\j!E|]g*Itp7Qp.yw0K!ձJD< Z{Mu+"U$4.ɡhi^{ԘSWPG^^"U!sA, xxј9vewǴnM]75|w3 "(_:xy(f Ys :9.V7'1`z:2$VlS{2~'6tֱ3["{~K{6{Y-/8n_.{ݒ8  `mDv.r؆2?Z_AW4?(P¤'}Z:PR9O'knz'g:9KuruiL1%Zl̤8L0mJTAFAFHO&N]:EJN( +Uor]qמ햿^;n_\}ż]ru+qΨw=rݯUSvy}&s.ġY*LL"B0M/^HzԄt(ٳ>6/Un!1S؈@*|:yZ U*Ŀ*i+6;:ڔ"?G0NU==Ӡ_eC Lz3IS6^b%IJS7LTon1cAmĮ %A5Pw UUӅݎZucj 7y;Jkx9Rw#L7t 8Mܸ"g"Pc S^trzmzt-ô(> 5yO5 *LҨ$6AT-dhmc^ 0u(k{!Y>[dR}7d|aG\q m90Us܎(ŹxS_K~&NH}4rFC 3@l'2#=Ǻf 8ڿSv{Q>('9n"*WJN)E(ĐJ0l>/H \su=W 8ՙ}lNQGr`wј'̝uiw)| E($6d]>ElnL##C,(CO˜y0k@; +ys5#P+ X̻:b4C|MfrRLd F 6z*B/S֑'d/\yS)sZ.L͙׾yעKιX¦5xP?ꚊC'V (Nz> endobj -529 0 obj << +507 0 obj << +/D [505 0 R /XYZ 74.4095 793.4011 null] +>> endobj +504 0 obj << +/Font << /F61 219 0 R /F28 173 0 R /F63 444 0 R /F33 181 0 R /F26 170 0 R >> +/ProcSet [ /PDF /Text ] +>> endobj +510 0 obj << +/Length 2694 +/Filter /FlateDecode +>> +stream +xڕYo6߿f1oQ}8`$m%{{rld9!p(YrdD Gp>~CeiY+1{} }".;?Z1f3L_g9\,e-pv 燲h?763gsRjm66-`ւH ]22%u3ȝA]zeY&.i + M$՚i?-҇CjCTi.R _Lj&$~kR9d :V kK/ —_=Q~[d|^M(V\+\P@._{d +UZ[.-fX2SQU9|xfkJ̈́`1+a)\o20 +X֊c׊Iɻ~|=cYnMb_B<mD&׾"@UQ>!/MI0{Tz{MQh:Ōu3"97emU +[l~]48[t[7&#q Q*d{ ÖhEټߧmVa[ kBb bx@RX<.]9)];bWfZ.V/6sń9tsor_?‰ChqƁ$\h&L%Oaba@]ħx8Q8ÎiJ*JO5e?$g=?R8l8r9U d!Kt4Z<%&sŦW>4a!=xxE̐S9<$P*?z=bGmA B]3ndt|P7)iŻ4yk K ZL6@lķCS9qTЦ/[|} U:b3s7>u$kTL5#]򉣦U {"%8OO\fM Ӯ$SFwTjhuCZK$bshi`t YFrˠɱiJ*eqdO>Р$ +(u2L"Rb;~8]ц4 l&[l#Έ@g cDBE+"D?D[poJeѳ]ZlKN|UN~D7A \*kNUF/ @:j;p010eF|.#7RGbhF' #s6lM w +hGd/˰U"A ,!ԩ9'uw[!DŽdB@Jt\Mͺ8* iJDMAs5jă?R~Api3gOI,P&U,D]ZfC9c]#W{V D;@ۑ)ZTj&ޡ!%E'4` ui:GERMnyϮrĐ;GR4-GgDFIYmC<7SR 7rEvMCqlyGT򺓳-#pF4hˇmIwLp|9fTadM09J85HoF BcZk=\#t$%":2eP=Ay E bw{<*4D?kendstream +endobj +509 0 obj << +/Type /Page +/Contents 510 0 R +/Resources 508 0 R +/MediaBox [0 0 595.2757 841.8898] +/Parent 485 0 R +>> endobj +511 0 obj << +/D [509 0 R /XYZ 74.4095 793.4011 null] +>> endobj +46 0 obj << +/D [509 0 R /XYZ 74.4095 771.7323 null] +>> endobj +508 0 obj << +/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F33 181 0 R /F63 444 0 R /F68 514 0 R >> +/ProcSet [ /PDF /Text ] +>> endobj +517 0 obj << +/Length 2539 +/Filter /FlateDecode +>> +stream +xڭZo_GXx@ݢm+ [͋,|YHʴl+٬pOE'$ ZNRrsC&+RO;͟~TtBIuN&g01/~-֔9K)KfsInnfLeno?|7$RuR +!U:3("EԁL$:8_#~O$Tk6ͥ +#ͿbV$^f`%KΓǘL%z,a;S4H&Ih`0ך2۳<$yz,{8kc3PRg})x'4M*IqAcqt'&ZJv  r[&| 1 X:Z<쯶jMB'Ӽ^x7mG"3)HhO^4M2I^36y(D,K`r uk*O* xڵ Q`}[+M{6u]79 +r)195n]_Yo@1UaOF:eXʿj\=:Z5ockQ%,YxhWE-9$x1:yУؕ/Vi1T|_^vFAƤ*JQRP7Txc7f!A=! f8b5A!W1Qb-{i[sa@Adp2qU# ܔNgCPS  2OtP.l}H"4jE%5xBCM)yiN}|ʬ"̓ ba^YjRZ$PkbLjH9Qoy/>rh8.GT^5G,G!ȀQ&^O}Rz[\ir[E*(jyb \ q'[Ñ;7ׯ3>؃h aRWwm-Y:se}ӧY/q-Gq0:( pZj߹mܔdNʍ}.v((> bp:v O>Zȟg~eo[7բ +q[1#mzug2ʫ@a4`y@LŴH'2{L8䭓SNۼm%\UJ^SskX29еA-rO |w['  ߺ+ڡzq]zMQNnаʁܶz,!q#v*\_%FzP!85n{wug[04wM6Wr4\Z;ϿT7Ag]aͶ,c +5a7Otxɡ#d2e+Mt*bfp B$"=)K|-gH'hgV_aW_l*kbǡk +PdI.lyqFY]ӕ8Y^KH\\?8h:˲˝w?)lk1%p8ckѽMѷX'9m Po.L 6 arKxISɝCiu#X@LhP\.bZu6b\Ksqy#3e] 8]Ξ( HSoJ0B _f)9U;z*(5xy?Wؐ[JNo-^s䒀u]BExTe@GՓ4Pm!#ge\ز843_CN$<;~;!NjΨC*N 1E7*XA1T[ JX: +|"W`Wxcl]ywKyRt!uTӶ)B_{wF9e 1SpA}Txd\ua<^tNuD RC) T/Ph=຤S* +|!]WE^/.N:xptΗaɧ.otH,NEa~4 +`}htSI#uCEpI L CY92endstream +endobj +516 0 obj << +/Type /Page +/Contents 517 0 R +/Resources 515 0 R +/MediaBox [0 0 595.2757 841.8898] +/Parent 527 0 R +/Annots [ 525 0 R 526 0 R ] +>> endobj +525 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [453.6621 419.3419 477.0579 431.8711] +/Rect [471.3306 188.9448 494.7263 201.4741] /Subtype /Link /A << /S /GoTo /D (figure.2.14) >> >> endobj -530 0 obj << +526 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [448.1507 401.4146 465.4312 413.9439] +/Rect [467.7589 171.0176 485.0394 183.5468] /Subtype /Link /A << /S /GoTo /D (table.2.3) >> >> endobj -525 0 obj << -/D [523 0 R /XYZ 74.4095 793.4011 null] +518 0 obj << +/D [516 0 R /XYZ 74.4095 793.4011 null] >> endobj 326 0 obj << -/D [523 0 R /XYZ 285.3358 529.0767 null] +/D [516 0 R /XYZ 285.3358 529.0767 null] >> endobj 50 0 obj << -/D [523 0 R /XYZ 74.4095 491.1412 null] ->> endobj -54 0 obj << -/D [523 0 R /XYZ 74.4095 343.1981 null] +/D [516 0 R /XYZ 74.4095 271.2564 null] >> endobj -522 0 obj << -/Font << /F61 219 0 R /F26 170 0 R /F63 471 0 R /F28 173 0 R /F74 528 0 R >> +515 0 obj << +/Font << /F61 219 0 R /F26 170 0 R /F63 444 0 R /F28 173 0 R /F73 521 0 R /F33 181 0 R /F68 514 0 R /F74 524 0 R >> /ProcSet [ /PDF /Text ] >> endobj -535 0 obj << -/Length 1934 +531 0 obj << +/Length 1542 /Filter /FlateDecode >> stream -xڭY[6~_}d.l3h$}9YJL]lO#@L|ʇ.8`3* =7u[@Wu)?YMLMvF2Uuo4l30,Ac.O ƥ@͠b.b2+y֞{.AxOmOz{2$TwT-`99ws{o+@?X-*b^;(ij )~ ;^*9_!ՙ#yڇD?ȭAPAxq$`"c{" *=;ΥHVID'gBNs<'4믤#fT2B2GC΄'N 2])i{p(Ad4vG!߆9Y2 \fҸ<\xP ID=Zž|=E}QUOggbpil.a0;"9L#h3fM뤐%c#|a/ü,G"FP1j,b(aw՛.X&iYH<i7y3i!=_|$'ؖ_V/.ƯKmwH?StкQfIt2bЉ| -Pןѓuy_=#N:'NN<]m[*(l[-"9qMwu2޾r Ji|rU1# eW4x"raCxG1 ULřL‚~;xF8?,f?&<12@Hsk/[G"5`Hqxik"|*sMjELR)A$8KPi%,B$i;Hg,MSlL{n빈]{s6;V~(@oh3@6f^'1yz;VǹU6VB Щ*QA68w2U2;mAzҮsia.--et~ ?v{*x2JҖPft RiT0,ۼQՊ?oJ[ hb;Nkk_Z0M LND'ѱ*_z;Hp3TA%A R[\׽Cop7NC[VD:r\QmݶփBbc EV!p">)q"*FTw݃*{iTА%-zOު ++nK՞>s2rIԶl7ݹմ->֗5.DxbmmX{;縛m|Fԍ@V +/8_6S4l8?]sf'j5hg.j$όv} ͤZ3);+:ݢߐ|2jJ7T^T v2i-GrI]ʉѡ".v}4"^QaȠt9PM*L-)_Nkn0q(I$1s.S4qL֢* ]hLvK̈p%~Rie>XG'8ǯ:[Jk'JQ(a<鋢[[h*TڹZPO +FL0SxlLL:%Vy|`S&Ld12e34cxL%ߒI& >2c\ © (e%i(R ﯷ< .w >x9AK No:Gd̨8| +=LB,zXd(1qcXfə{+iYn|p!xq4AfLrSN@or">*ac~f2fR=ʥRuύfуlrp@{,!PzdFQNrZx9*$X?BDM1 I:j8:ԛà > endobj -532 0 obj << +528 0 obj << /Type /XObject /Subtype /Image /Width 629 @@ -3227,65 +3199,60 @@ C *544K/L+Jj!,)JVBrܳgϒ%KI`uժUǎ;~8|HWm]z9(p6'rxxX?ՁAWE ^射IKΟ䰤IQ4o.%- ۶m^BXk_yX`OІ DrD 6iTS WNrr-_<4;~?\pXmٲŃWW!,9R*?)nDIՔyp)1] |XlY."K/I ,X KzX*ݮ{*Q D@XpJ@nr9wt‚Sò,O*%OX ΃Ka~G\}yW^K)%XPJ(lV ~ʕ+ < M,\oI`⋻wN>Pimn6m-+z'UrI+zuɀ%ٳg]64;w.i4!UJk֭̓}&KMWHpS͛e P@sɦ6 auwweQ,?+VHCr6@p̾y9d'VȟԾ9'UjRtU:tP#endstream endobj -537 0 obj << +533 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [274.1619 260.6538 297.5577 273.183] +/Rect [274.1619 153.0904 297.5577 165.6196] /Subtype /Link /A << /S /GoTo /D (figure.2.15) >> >> endobj -538 0 obj << -/Type /Annot -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [460.0222 153.0904 477.3027 165.6196] -/Subtype /Link -/A << /S /GoTo /D (table.2.4) >> ->> endobj -536 0 obj << -/D [534 0 R /XYZ 74.4095 793.4011 null] +532 0 obj << +/D [530 0 R /XYZ 74.4095 793.4011 null] >> endobj -327 0 obj << -/D [534 0 R /XYZ 238.1683 702.4264 null] +54 0 obj << +/D [530 0 R /XYZ 74.4095 771.7323 null] >> endobj 58 0 obj << -/D [534 0 R /XYZ 74.4095 665.5812 null] +/D [530 0 R /XYZ 74.4095 574.328 null] >> endobj 62 0 obj << -/D [534 0 R /XYZ 74.4095 562.6596 null] +/D [530 0 R /XYZ 74.4095 455.5322 null] >> endobj 283 0 obj << -/D [534 0 R /XYZ 279.336 309.9825 null] +/D [530 0 R /XYZ 279.336 202.5254 null] >> endobj -533 0 obj << +529 0 obj << /Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R >> -/XObject << /Im19 532 0 R >> +/XObject << /Im19 528 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -543 0 obj << -/Length 1938 +537 0 obj << +/Length 2136 /Filter /FlateDecode >> stream -xڽY[o~ϯPl`.eOMA'JrwdgAg3lQcQ"FE0`,_hs?YwP?h1JI!"ѻfϮ:Id+JW7 -[_3:YSV?~po8%m(D*D1gDk4Ҕ(uS"LPϫTj/@ 3G+ H$ϽA -^IQ -613͉FpphqNO Hq& I7f!T_j]w%ȗ)зAri (ֵ6?UVib_}%pp {^Kz"Yu9Jmfuqѕ‘\}ծؾ 3u>j[fbKu7 vZ0,aE !`g-B mCO_E'|8;Qf( Nn$55ioS2819F šYOACcJ%tCgR΂w6MHP8]Vݱ6]l 85uxG藬ڴ@u2֠RFh~U5S_wp +@dl _Y4?aWeʽp7BDzNqitSqؖ2 P<5$T_Ϋb7W36hbVȫ?&T{=L &C 8,0;fd:shMV,fIh9kXIF[k.A&DFo2xq#9""Iq/OE.ꆟGjE5C4Nk=E1͐N3mbu.rl{JCSjBAY`7Bo)^aS]_cIy7(YA=tT8=@ z]y8-6OpT5F\Ŵ`zKRЧ65-- LI Dc - |:T9(BuavkAY<=-\8Z - <&ܓC0 -֋\SثSrQجGH"LwA283tx?䊩I^JXp|\eI {>y]F?e'lޯMU=6ȋTRgYzkwDs}SWZd0F R)md)83 #WQ0-Ie_˒5~ +1^"\ SHi;̒QRE2tBZr#Xz<ϕ Gfv &$Ob]O^lإB` .Ւ%`x;jitqz˜A @V!\'("Hn]wcnH!7%6Z2cdABep5;rYLwA @FS|| !دb=ŵ5]/ m`Spvg[J]Pd%Pd Q`)=Bq> h!v,Nc7ްnđ‚ʜ_" !~Iam-,)4c䬔fQF* d߭shFxRAd .]f FXYd\!~peI ]2+92p]r*·{1ΐi&ĖٓspuY'ȥR{`Z* )4 xR.-0qvס(qN-mk_L!Bnhw= ZpQg;K:n4nWjºaRоg=Z0hJ=;<ݷkb` ^F$=p1 a׺|@>6t׶- ɟk3Q/Ow6v!ζ#kvvRu91,Tk ۺ~ضݶ>m r&3Z~ +x9Ez[QVh%]BQyx`ɮNQ#??S'm&Wqe\̰LNvG@˴Mj>|_qlj}TsH^c1jrO? zfT?,I>tAy@:HjBh.b|6~3\EQ{gnϔ؀XL?7;y"[ o+wy"&#/+b,Dݭ[]%* + ko9TU~bd Э/Cqs ?Yh[_ MDW-݃ Yi),9C4*[dL⣳>t-PGҶ}h+_x6#ִjp +]1) +Spd* ݀GLAAa82%3yKQPy? +q&x;hHgq/aެ0 WYf'3*BcGJNqaξ֎kcfdai|O ϼ$+u)..8. M5WTm9yihgT]ɇ#љ_VDLO x<6pR| rZq 7憞уGCD-8G#VOvD^eS , {N'aumj֙V,SF#*9BA&Dʳ{Eendstream endobj -542 0 obj << +536 0 obj << /Type /Page -/Contents 543 0 R -/Resources 541 0 R +/Contents 537 0 R +/Resources 535 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 531 0 R -/Annots [ 545 0 R 546 0 R ] +/Parent 527 0 R +/Annots [ 539 0 R 540 0 R ] >> endobj -539 0 obj << +534 0 obj << /Type /XObject /Subtype /Image /Width 586 @@ -3826,56 +3793,62 @@ Y VR`EN @8R****zeeeذ[@FEOt"'i<12 BJ[qrdffUH"(EvIt;`iHtCC܉'HBQa!'5q:߸~:RE2i<"Q`Ɠ.Ƣ'Fp6f&[nȐo󩱤 Pe:,]3R`*$BiBaYՅ ^ΝjDVWW'A*,kˤ[X,xbE<gR BdLh|||aa*cMJJ lS`-*//ONNF/ M@nȆCdCqJKK ^@JeHWKNNעy!Rɲ-xbRfnDӵf'Ff2dT =U Ǔ^XABendstream endobj -545 0 obj << +539 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [254.3819 206.8721 271.6624 219.4013] +/Rect [85.8579 595.3043 103.1384 607.8335] /Subtype /Link -/A << /S /GoTo /D (table.2.5) >> +/A << /S /GoTo /D (table.2.4) >> >> endobj -546 0 obj << +540 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [100.9316 135.1631 124.3274 147.6924] +/Rect [264.713 171.0176 281.9935 183.5468] /Subtype /Link -/A << /S /GoTo /D (figure.2.16) >> +/A << /S /GoTo /D (table.2.5) >> >> endobj -544 0 obj << -/D [542 0 R /XYZ 74.4095 793.4011 null] +538 0 obj << +/D [536 0 R /XYZ 74.4095 793.4011 null] >> endobj -328 0 obj << -/D [542 0 R /XYZ 218.1729 687.7276 null] +327 0 obj << +/D [536 0 R /XYZ 238.1683 702.4264 null] >> endobj 284 0 obj << -/D [542 0 R /XYZ 259.3406 274.5164 null] +/D [536 0 R /XYZ 259.3406 223.0288 null] >> endobj -541 0 obj << +535 0 obj << /Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R >> -/XObject << /Im20 539 0 R >> +/XObject << /Im20 534 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -549 0 obj << -/Length 1869 +545 0 obj << +/Length 2069 /Filter /FlateDecode >> stream -xڭn̞~f2`7@0 =b[j͒TקIQ *VW ?i^(B$OvpWDl$DpVH,Ϙ>ֿ6k7,l*&3]G<=p6>tI<ߧ9&/L -ҌzŖBBI="D(&JkЖAdEQ`dф'>tcUo~SwOt0_6¤Ƕ]7 I&J*/N 68S8v˯<}Q?,P'+eF2+yΤS:z-4S90[SJUJVm  )pZg?.C_.X)cLQWpzUaQxOGQ@QKU}kT4; yBG~T~dvv^Q\)rƃ'׹f#ݢ/ezjh"v=H?sPgG1`\斆U: cvp  F -Tqš$hRPV~ICL'|ZB<9>^Bf0<Ml ~5X,AHT!PJcsO'NtzT07`]yœK8x'_ZkWi!ŕH]ˆ>R+v(8zbNQ;HґO;8 $"Pާ" q$ȳ -߼NАlVѯv>cV"W=O  A]F _uu aJi-ALL-'y},: ͢%,56:uT~7r~ܯO5ǐ\MU7'rD:Qy{DY{BJ^VuedRV<}(4XVǺ/O?}4l$gZ6Z[͓L +f-@QT1M2ΔwI~ǻ8~p&NZ3?F^E8C!&2a%ZzrI"E䑢En4mJ[VignTRL + Ŝ+P pm2\@ @(3& sK=˫ l=6MN + g}@ +P <1Sμ& +v$@M<' %Z־_7z cl(> OU+>wUy(q) ]Ԑ)F<_tc|@(/vOƸp%ke%&գi(z} }U$0>=4.'|"G#g/ UN3r8@)1ƛBxΜr2Ɯ4Ŵꩮ9h\X4̦|Kk# .pw_qGArH)dUW_+Gkendstream endobj -548 0 obj << +544 0 obj << /Type /Page -/Contents 549 0 R -/Resources 547 0 R +/Contents 545 0 R +/Resources 543 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 531 0 R -/Annots [ 551 0 R 552 0 R ] +/Parent 527 0 R +/Annots [ 547 0 R 548 0 R 549 0 R ] >> endobj -540 0 obj << +541 0 obj << /Type /XObject /Subtype /Image /Width 621 @@ -4148,117 +4121,64 @@ I 痗3ꐓCr* iqA~LM/7npH&9T'O0#8T%'n̡)Lq4+hGGGFFƑ#G9$(s+;;Jj Cii)szb=9T=7r1E(.Ξ=+m]]2:ePĞju[P)̡3s7o> ->> endobj -552 0 obj << -/Type /Annot -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [351.1418 345.9565 368.4223 358.4857] -/Subtype /Link -/A << /S /GoTo /D (table.2.6) >> ->> endobj -550 0 obj << -/D [548 0 R /XYZ 74.4095 793.4011 null] ->> endobj -66 0 obj << -/D [548 0 R /XYZ 74.4095 771.7323 null] ->> endobj -285 0 obj << -/D [548 0 R /XYZ 263.344 538.0416 null] ->> endobj -70 0 obj << -/D [548 0 R /XYZ 74.4095 313.5278 null] ->> endobj 547 0 obj << -/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F68 507 0 R >> -/XObject << /Im21 540 0 R >> -/ProcSet [ /PDF /Text /ImageC ] ->> endobj -556 0 obj << -/Length 3130 -/Filter /FlateDecode ->> -stream -xڽ[ے}Уb¸_\ɃU)')W wYrt&9 (RefjENw؂-$:0N.qE" Won>F9ko-)}կա\%'t܅q:lw7mNJSbסRY)NRF=%Y%}/tob|9R뛿(zP-eeA -e}` -1pCu;\3ʹ BQ"?f-UttJ9S) ֹf0)VeQݫ3R+dR9 Rq›0~+Ǻڟel®Ue)QRa*ZE4 =n/oTIPfS9sC0]&|69vj>Ne몬ߪrW~4f-hجld:G8]_c>!9"04!QB&gB bGDHeN̬*9JL4(EBf21#|!B,CV̬d:V!n {2!A !|!B&+7+!QB N7(eB21#|!BеtE=9J҈NX3B^$/]vT(~:3'$L(3v"ۚaGDLyA-,s>u#fb"&GPTNYt2P-ү vL@L_$fd&9ƌr(y،[f Ffz_KŬt*GyPdH20{iV4**f]siM$e3"x@N$ɫoׯм? &0 Wc(WYtrJ!g>999Oe'8Cv -= -0&"}?g@(cŸpI\Z[V[1wz]3+M8 3Z,NΰRSX5G#'4Te3 kx b}yƻPDh @h`Tȅ -{6|hs. ݵPǟgX)≛73E<ΏZ\ c//r! =#J"q1JϲDEsMFqa:jSH3#¨q l'l` -eUfd_GXAB$feE .%VCز2e%8U9)TJOs,BI64!lғiHՇ)R MjV2I4R+&(aK"6E>JQs"$Rs5A|[&砨Z;",lTnSgK1Kt,u%J*A=\MKKb -*s^P1PY@SeTSY|xK[In F Scxf|50BqTcZZ{c.m&9QB-K Ɩ&/\Q!4=ꈕ<|ô}>|VQD)_߯Ꚅ˟sE|!,N;22onl!1vWXCUUޕ !B:C;o)wa\8q@kzOT"]5)&N7Y#a ~Wodg|MmL7n}-N1˲hLGnF):=.KD^ ˆƀ N: |PP)P~K`:K6!; -o" RHɈ4LZRD˿ZSrUM3p|Pòq ->X`Jt #\XRX[]XYMU -Cc,8FY@[t~; 8KzSz<|r_>i~H6Vw>*+ͅ336W>m4 c\o߯z0l9X>\U+""u? Z߻C,HWrHhw0#(N"­kطƲq< $D"W~ܐc5"j7ސJ(_+)2 No{L`̊9UϠ!5˧M*MvIn7q0,!o6/P0 }vtGӌj:ͅ:8ʧuM,M绡1aB5 Il=5L&U?00 HHk 8 Jv;)n.-=kALԑ\:d1t>hN`}WZ@wpp"[rI5/"οaIUx<(Z_5MbqLWW_%7WuhxH\[5SX,nHgLT&чqz$&;FItW}8Ȟ?fڄYhYfH_ԤHu9{p-m T(VՈCm-lGggю8UD/RWXOL?4@`=O (N7Ub㖠/}$ \>G0c7b7p'ShlR>U ַ:N>!ҳ-d^N4EWwuI8= M-r;dʺu|wq"s6^~Gvu8Xsc{Ax L2WUW>ʄLK^eRV2N(ť߲z+S LR`j[>I koѦE2Ob1+Y]#e8a'S]TÂeRjٷ HvE,'o=wxZTy*57ԙ#'5o&j\endstream -endobj -555 0 obj << -/Type /Page -/Contents 556 0 R -/Resources 554 0 R -/MediaBox [0 0 595.2757 841.8898] -/Parent 531 0 R -/Annots [ 558 0 R 559 0 R 560 0 R ] ->> endobj -558 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [151.9854 310.3719 175.3811 324.8093] +/Rect [111.9302 617.8313 135.3259 630.3605] /Subtype /Link -/A << /S /GoTo /D (figure.2.18) >> +/A << /S /GoTo /D (figure.2.16) >> >> endobj -559 0 obj << +548 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [267.6053 224.7993 291.001 237.3285] +/Rect [255.8499 206.8721 279.2456 219.4013] /Subtype /Link -/A << /S /GoTo /D (figure.2.18) >> +/A << /S /GoTo /D (figure.2.17) >> >> endobj -560 0 obj << +549 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [504.582 206.8721 521.8625 219.4013] +/Rect [383.5415 153.0904 400.822 165.6196] /Subtype /Link -/A << /S /GoTo /D (table.2.7) >> +/A << /S /GoTo /D (table.2.6) >> >> endobj -557 0 obj << -/D [555 0 R /XYZ 74.4095 793.4011 null] +546 0 obj << +/D [544 0 R /XYZ 74.4095 793.4011 null] >> endobj -329 0 obj << -/D [555 0 R /XYZ 222.1763 543.2695 null] +328 0 obj << +/D [544 0 R /XYZ 218.1729 687.7276 null] >> endobj -330 0 obj << -/D [555 0 R /XYZ 190.3024 414.1388 null] +66 0 obj << +/D [544 0 R /XYZ 74.4095 600.2041 null] >> endobj -554 0 obj << -/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F68 507 0 R /F33 181 0 R /F64 513 0 R /F69 521 0 R /F67 510 0 R >> -/ProcSet [ /PDF /Text ] +285 0 obj << +/D [544 0 R /XYZ 263.344 348.3069 null] >> endobj -564 0 obj << -/Length 1762 +543 0 obj << +/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F63 444 0 R >> +/XObject << /Im21 541 0 R >> +/ProcSet [ /PDF /Text /ImageC ] +>> endobj +552 0 obj << +/Length 1736 /Filter /FlateDecode >> stream -xX[o6~ϯУ ,oo[֡k X%Vl"%YvRt?>\  -?hI$ic&Kxg;k.K%o. l:_|ݹ:/3̈́,trWa­NvEVo۳WVp)1Ji٢"a4fk{j֚{5/)(l]%XU.ib7 Lt\dzUmJuI'5j)%1ivmo10jL2DX!_>}oWxY˓paY3S]nH(jB -a hpb%_@;^Ԍ? p*OW߬9O7yߟEd -g;ۋ>gpH=΀P̤%T(4u2ykaH0\ؕ&!/ )KRtiQ)sjsmMr:1?Va uN2)G[X(LZM gt(K"_}wB+%8*óXXkvUaMe)eS._-!a2EkJ/nNw&p\@ހ1(m_f(8]_+^UmBWTTAx36i(|5eg+ʮb_'C.ð`q ~65 l=6 M ׇį2|0Qw#͊ M| -,̟@%=&D+ Ѷvn̈́m3u[7.R)kOW.{261I -Ereel{>lb=2qt~yR< ֱr;^R6 ilzwFs$w #׫O?_*,Rn윓E(*.?nnraiXqJi*D*m35HDBoO_hCB s'Ƕԡd3j!)8;\6;K`r`%PD8L "H3!|G3Ut[4)p ֹf0 iC4.sg""V87rT4g}B2Dh%k0DITLc^=0-)8a0X,CP&e޺ȹ!ZyL`{X`{-W˲*GSj^y&ϊ[>TxLndS6–ˈ&8I^w{|]|qY-Ly5Ć!6 +`fO&9F)H(p +_J'8xTBx0pENΎ8& [;1l0 !7f3+M~9fHFδ4VcZG#=T< 8fg"Q…ci|Yp⬭%ߠUMuE|]7& #F3PmyOr!m/Sr눕&ho\ԧ͔3$fH\bkpzC&߬ Yv$'4%q+)X9wjXOESѯT|\pz9[4t> endobj -553 0 obj << +542 0 obj << /Type /XObject /Subtype /Image /Width 629 @@ -4317,45 +4237,108 @@ G X`X+X`򊼂X`"`X`N`X`aaaaaaaaaX;o3g >~=3/ٳgv>|J/.5-:~M}"c&&&o߾zjiƍ=~__eI$wzOXnu_9OMlH;vLƴ |?z۹she{ŷz5=jݺu:uJ¼yO>-4I*}O"v2p]COO?,W^yEΟ?uVcxR4nOxOX>Ɠ\=ٶmۑ#G2?UV%&j$֮]K.{/k}`*X+;|}2TJ=A2|9Q[X賸,eI1(Ox)%S!)e4fYK]f`a޽v- +ޡJ6Ȑ,d_27dk||OP~z0ızIJDS^bOr<'Y,IV^+R`8ZÚ|db+:JH՞(n.!O8yd|`u׮]|ϟoɤ7_ϟY &Ԕ?w}WN:Pqe㉦4d'),Ii )u^9sF{СCCm۶IDT%&cFGGb]ʗL]MOXhP4(>r׮۷}` J|;E~vbYzɿAS^=aOri 6xm̟SKWOX*W?xwd\},{O4D7!;|Hݥ?uTek˖-Xj( r̢ܹSd#:oׯl|`=Ǐ>KF^}CtMp{Ų񤔼:xRJ^}ha^Rڵkٓ4XnzFV><'L>u]O}(/Y߿?۷%(ҍ===ɫMz{{ŲW,g>;v[|^d |Ye,{Ov> endobj +329 0 obj << +/D [551 0 R /XYZ 222.1763 543.2695 null] +>> endobj +70 0 obj << +/D [551 0 R /XYZ 74.4095 505.6395 null] >> endobj 286 0 obj << -/D [563 0 R /XYZ 231.4701 540.8733 null] +/D [551 0 R /XYZ 231.4701 240.0475 null] +>> endobj +550 0 obj << +/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R >> +/XObject << /Im22 542 0 R >> +/ProcSet [ /PDF /Text /ImageC ] +>> endobj +556 0 obj << +/Length 2958 +/Filter /FlateDecode +>> +stream +xڽZ[۶~_Gd">u&m2n63ݥ%*_B%J,|JL8Lso&+  +hSbYJ#LpKЯyup!+BL/"49ᗛYMwSX:BW/R$'"*Ҭ9+F@bL+0I@i+"/xJ2)*=)NJz{_KM L:,l6ö7uKGZ$`@*R3˽T +g"+`ʓR^*R)ZR|-sdxKXu]?Y<+DphxJ/0y~C~HvW4nϋȜ98kyVDSWEtEYD"*"g;{U<ωVƘ "^Df ^CD4rVPO9C9}g` +BH źO3ݘ9δL;C bFFD~? tB֫U88h?61kB`56|LȑT !:vT8Jq&܂D$t/im NdrGULYn'Jchb{ﲫ zdM̵Krs єRyjJ:w@>`A#hG] +Ηi,? 2A^}܀,(4H^gc<6}J!KCm=r]J]^W7ylz]n0W)_0s9!6AXUZgR+!FL[9G.i *%p墽ntqyDÛ{`.(M/ 4L|.7]! 3d*$28E<P(r +"b5 n҉tCG +9Z+K"v6=Y0+}a`NHג,}4"P_5l׸l#*}`0:{rAӫADʣ, \ILp8 -I*Ӿ? =aRU*\}ae-EE} kM<~WA mߙ/1(ԵoI)ԔR& *隸y22 o5ڭ1>iųۢ B += 9hU" +=qnu9RFǍyi'gMz?wEAuAC{Ď+Wh4:@|m$bh>|hjgzP#*{zx +Nj:r94>Ԓ4*~ +0AJ:}*Mɔg0;EQfl6l5<(Wދ0ٓF$ဩGsy8; ͽnf%'|I5򻗞̘ބP] [/|̃M.5l4BL,dR5uWo76¸\ƩCq}3Cpf~K֔+,ÁCD5O1e gHQOQ MCX@֮ -z I z9'Hw! jA3qendstream +endobj +555 0 obj << +/Type /Page +/Contents 556 0 R +/Resources 554 0 R +/MediaBox [0 0 595.2757 841.8898] +/Parent 527 0 R +/Annots [ 558 0 R 565 0 R 566 0 R ] +>> endobj +558 0 obj << +/Type /Annot +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [151.9854 542.0408 175.3811 556.4783] +/Subtype /Link +/A << /S /GoTo /D (figure.2.18) >> +>> endobj +565 0 obj << +/Type /Annot +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [264.9347 384.6494 288.3304 397.1787] +/Subtype /Link +/A << /S /GoTo /D (figure.2.18) >> >> endobj 566 0 obj << -/D [563 0 R /XYZ 74.4095 468.6879 null] +/Type /Annot +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [504.582 366.7222 521.8625 379.2514] +/Subtype /Link +/A << /S /GoTo /D (table.2.7) >> >> endobj -74 0 obj << -/D [563 0 R /XYZ 74.4095 235.2699 null] +557 0 obj << +/D [555 0 R /XYZ 74.4095 793.4011 null] >> endobj -562 0 obj << -/Font << /F61 219 0 R /F33 181 0 R /F64 513 0 R /F68 507 0 R /F28 173 0 R /F26 170 0 R >> -/XObject << /Im22 553 0 R >> -/ProcSet [ /PDF /Text /ImageC ] +330 0 obj << +/D [555 0 R /XYZ 190.3024 673.2818 null] >> endobj -570 0 obj << -/Length 2605 +567 0 obj << +/D [555 0 R /XYZ 74.4095 227.7771 null] +>> endobj +554 0 obj << +/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F68 514 0 R /F33 181 0 R /F64 561 0 R /F74 524 0 R /F67 564 0 R /F63 444 0 R >> +/ProcSet [ /PDF /Text ] +>> endobj +571 0 obj << +/Length 1936 /Filter /FlateDecode >> stream -xڽZm۶~ + fNN_ә;$$_g ERYHar巫eWq#H\'+KMڑ՛wdT27E[23h{K~TJ>L̅FeBvW[m;lמLd Lԉ}/υ2r]XDQGB& `FiMc(J_RV^r8&#bεil;U} fuzfzķkCU 'ف1;Wm"uigJfUT`^6 V;mX kkd2LW:z\KQFBهcpbӴLi͇x1mN -{68JNKm tS#,U9Av+[T](Z=V)ln}?ly-:i2הpSh#WݐRĊLIRgCfBD*."C `3"@Eﱂߢ!;j'CINO DYu_&KG -"춍<=q(Sczj3hzCWŰx'e:\pDi-evݹ{2졉So,/$)d 7YozX`X8"JhB l2Jd8/WR ` LWg2gErjb-cQ脐mtv{exr=5z+/;(c4~Բ 3.nZ\G8,3s 8K%w*EoT2ޚ;cz}%$1j -:'$mFS2M09 Tp[X}IL+Em"LDliaqlXLT5;qvÅN-0J~5 CoH2nƸk|],de&[luՕ?b 29 -= @J4ai2@|0Wͦ?+엪ܰЍܕӊD,9ZV`h;1d *[j!mKtGqD{£qB<u`5[V"Q3N_$\>F{n(crHn͢h"7iaXQLOoVjFs9́תv4kՀ'"~bncB1!u 6EJp &No8e,u^-#c[{g(Ǒ#J.^hLVV8S*$G<_ܰ VAUyb,:mY1Z@l$kO{uaؚ0$M1F0C.9 Lf8tIPy (O;5!#0IG习;iP6mcXuA`W5 ۛ0MY5{!<c0hXc0KSeU[X<~UU*QWn)x˪]n*P_KyT GQ]ŷj YKs:Y*G.zA -&cӫcp_x| ~KzVqEyB- y."BC,aŽmɢG18֛2nٖձƣњ<_<5'~kb\۟켧_U, EΏqF8\IP}ؼGB)!fr;9󄯪6Ik vM䅲 +D Ip:j~8z,883P~_ucwP))Epi&T!Q#T7pM0M-TuQ_ 3 +?~5nCT\pXzM/d~ԜWkuJMuE狥V9 a:kXW=n}k;ͼ-ZHyanv 0^ };eKPFJɍN @ Ë6h>m'Z}VU/M>߷2(#"ƜyD8"%i| 5d!VT$ē!i`&Gc']% GyMI9E}OYTebhaK7զw'X1& $5>TMVAw~!e̗-|xF=ק9o]>UZ}}*+' +~R#5C` +18;cQŜ DCbLM50BaQob ;xmNj݌1#ԳOCsi/&RX,bЯ.[+RPƤUY>^}/Ns$ 2}y2<^rQR5 ::fT*b ܤH ׼NCATa.ǗdB 4yhқN\,|H$'p2b@x % '4\:oOQPV۩Θgdh}%*јgy{;$#0 4 LŴoSd5VaMJ7OAUڭsMUIBʸ :NhcgT3[p&rkZ +AU vd:&R@Y{DE^ؖusWKEN4K"n]JϾդ5_=nS+f0H@-G@CFP\.`Xz^]Ʋ+4#w`|Mȍ:.^ VO) dؓpw򓰗~"LE`2Z^.&]cDKm+m)\H]lsN*X:s&i5p ,eLAxFkՖgqz?NNve-d RǁO*SCysa}endstream endobj -569 0 obj << +570 0 obj << /Type /Page -/Contents 570 0 R -/Resources 568 0 R +/Contents 571 0 R +/Resources 569 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 576 0 R -/Annots [ 572 0 R 573 0 R 574 0 R 575 0 R ] +/Parent 573 0 R >> endobj -561 0 obj << +568 0 obj << /Type /XObject /Subtype /Image /Width 629 @@ -4452,69 +4435,117 @@ z t Ԍ"h=Ev¢-n]_WFD`}kRJM7k=l. '/xK/\sB$BS|իWu~)ݺA\D`uvv:  vy7n0ږ^BfҦ6 ªV7B+>'Ѣ8' Bjfz97X|&xbI;|I.3zR !ZZv@ 'AOHendstream endobj 572 0 obj << +/D [570 0 R /XYZ 74.4095 793.4011 null] +>> endobj +74 0 obj << +/D [570 0 R /XYZ 74.4095 628.7637 null] +>> endobj +287 0 obj << +/D [570 0 R /XYZ 186.4805 359.7256 null] +>> endobj +569 0 obj << +/Font << /F61 219 0 R /F33 181 0 R /F26 170 0 R /F28 173 0 R /F68 514 0 R /F64 561 0 R /F74 524 0 R >> +/XObject << /Im23 568 0 R >> +/ProcSet [ /PDF /Text /ImageC ] +>> endobj +577 0 obj << +/Length 3049 +/Filter /FlateDecode +>> +stream +xڵ[ݓ۶BҌ@}u2iCs~x{/8_].@%]j:``XoAZ8/ff{3˽ `M+mb&83,'L/_R"K oM M->`#9sIe|IH^5g;$-0™^ζ7i&si?:| ktY60l3ʄ1pagq|fiS5 3/,7IH.=mO1ԧ +F1#2hs"t2 <Lp[|͉3 J}U eEO׻ZU3SX<:')''e,eJ)F@i qDy+>&Ox)dR8Stv"`gTNf^!I^3~:Z~]Y#2-2 H,bR$WU"}Ŕt\Owg*p$T^~YZ:2r)Uc:і`q"H$& kB[A۪$SS.^O 6eu$oc=H`~W'7B0.U鍫B"E r9؀agCǑ3)?}Dumb[鲪oʺ8TعuKmS#_} ,<7F%x-疨*;ÉB1o1rf9g +Wg Q>fʎ]j܉BRy ІS2u_2 T:6U tcHCIG/Ee@ +7 %qP<@Aׇ yn{o`A)55#F^YcBCg4B.nR!]Iwma]nUwGצߊuFXqŸW9@5psJmU7WQWMMoS AYgɟruE윞 ZR:ßO9f-QAHlif,&aOn+'Q*oy>EIGQeX;k?`D0r+D.^z|u3f܂YܫTB3= h_^6>oqhh*bYT(afßcnOn)6c2FQJqRCfx R̲XUnI5pJV3Zmj!y8z@\iRs;ErK ~&U> hpR eXpG8X}ծ|DDC&eV6>l鰣Aj"GD-5YaTC_?-bh#h3fqNcP^=%H~%=Yi4[ 'bhY|(0KŢH)B==QANjSCAkPA%;À!OpwIdw(N`HK@Y8Hw}-0;we>rяvN)>!\4<|T5pBDmWS♄*⌊ELlMLM6ZM3UuDη8U z1\G(w46ૼQFxqHޒs3MelޟCFǯ9!McQzœi}䞉HuSvD`z'AK!7STЭWwm!{Ĩifr&]Ǭt˪< +R,]]*W7G}.ySp. O +]=@- nbc +Rp}v{t0CjHu`Yn\a۔eE\HgHt)\&&l>ɻ9c2!Um~~'$6k^#k+hB+5Ha+LꜢ~fp>Q9)!wgOcF#YN5‰a>PAȀq_H;Ma_Zhi) Z!V}㰶 a;ݪ30* =L|>F Tq50(0wLa zHǭ#8c8˂)qTV +WbީⰏ%}hZضPMOzCpzH1eĞX*6jU[(u#A +>?Xcd)a/:wgw(D^RmFwIPsA;@ɝ:+ Q|L=Q.G%W吴-TF#x"x<?*kk@6n] vQRuBk4;Wܴ/2~ӮگCxN  ڣD24}.Bˌ +_TDhl7m\NKQ z<\ I2?Ml-RE7՞ &~@6,0OXHMZLzHw՛Qaux)wM +z  U9̛bXLڞ3vqmBB<<> endobj +579 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 0] -/Rect [191.8101 425.0514 230.4721 435.3588] +/Rect [287.6735 532.4705 326.3355 542.778] /Subtype /Link /A << /S /GoTo /D (cite.Vorlesung) >> >> endobj -573 0 obj << +580 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [415.3548 386.5598 438.7505 399.089] +/Rect [416.9085 502.7068 440.3043 515.236] /Subtype /Link /A << /S /GoTo /D (figure.2.18) >> >> endobj -574 0 obj << +581 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [327.5586 332.7781 350.9543 345.3073] +/Rect [327.5586 448.9251 350.9543 461.4543] /Subtype /Link /A << /S /GoTo /D (figure.2.19) >> >> endobj -575 0 obj << +582 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [389.1244 278.9964 406.4049 291.5256] +/Rect [392.8952 395.1434 410.1757 407.6726] /Subtype /Link /A << /S /GoTo /D (table.2.8) >> >> endobj -571 0 obj << -/D [569 0 R /XYZ 74.4095 793.4011 null] +583 0 obj << +/Type /Annot +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [177.3589 349.6742 200.7546 362.2034] +/Subtype /Link +/A << /S /GoTo /D (figure.2.19) >> >> endobj -287 0 obj << -/D [569 0 R /XYZ 186.4805 567.7502 null] +578 0 obj << +/D [576 0 R /XYZ 74.4095 793.4011 null] >> endobj -568 0 obj << -/Font << /F61 219 0 R /F28 173 0 R /F68 507 0 R /F64 513 0 R /F69 521 0 R /F33 181 0 R /F67 510 0 R >> -/XObject << /Im23 561 0 R >> -/ProcSet [ /PDF /Text /ImageC ] +331 0 obj << +/D [576 0 R /XYZ 146.528 601.0527 null] >> endobj -580 0 obj << -/Length 2048 +78 0 obj << +/D [576 0 R /XYZ 74.4095 222.5072 null] +>> endobj +575 0 obj << +/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F33 181 0 R /F74 524 0 R /F64 561 0 R /F68 514 0 R /F67 564 0 R /F63 444 0 R >> +/ProcSet [ /PDF /Text ] +>> endobj +587 0 obj << +/Length 2077 /Filter /FlateDecode >> stream -xڵZ]s۶}4!&NҸi;u{gnb,)*ͯg ,k0\],@[df{^!Dv-~(W/"y]&pjr_TLp>,vr3|v_-.'63g|J-B -f- %ҝ{ iΔwD E8ls!f2.~Og a ،*Zcf -FҦf6g^,7IW`ҷM=,WPŜ)U.Ny vD݂#3 Ruτ5Eh,}.~+ۺlV0nq£GyR.r{Ң׹Hrx4:iʕOi?)RI&Ӈ0IƧC3~`x -MoELR7,4_WeQ@[e+jZR@nH@ 2z+R3˽D(+Lg #XYv,oD_gPhªises"D $E!):(z k 3+}uca9ᔴ:GiiEqZ&Dr`OK -p4r= NJOs 1-Lusp0j&fI3eE0ޞac:=glGۋH| - 9J @(7^L )R8o)-'(9JFú333z|_ vxZi+MILs#Hy&vC3s`L - 8N`))JtR$pqS|N8ܐ[_LItwf8^0#/?;#!,'{jcz1\H𺨪t쫣kmt# 9 G+ n6e1`uNM13Gu~[:tG}_Bk(׻-TSB}}{t*A߸*.吵893*׃쯖UJ.[vrnw"f([ߡUuݕf~FV"f0TG;d%nO-] !p4wtU#n8}9TFa$ε?1+vHd1)DΤ^H]n<_:W\yQ$-Ĉ7?݇.vvYMlQPj{]XÎ߶3oE.@ =v9qѲ3%ʟ*~>Hʠ=0\Dr~< usUC{ZаVeݾMh 03$. ;5Bevs_6Mp)>H-J-lp{/uلFجdl$ew fg?ZH zlT -fCT@OV!QĦyߣ3G_6]biga0ڄëuӕu`1uwIz4% -6/aEM4jyb ckjTI+Bu!ox1qF捑!u{f &,㘷txGyaf='b/1+ +)#O:k' fȱ4zr4!E'bquheʅ3%!1biߛVSڞTo>XjGET06J|0EH}׃v8No=d6Ӧtnh+Yv^0ͺؼۇΦEhEP֢͆b5t+$6oauLb'tpʴqqI$/p٤kOLendstream +xڽYm"b>V>vb[bJfa0N_ab;LTWSTw# +E4<! [)$ O<޽ފBpws!\'d|Pnj=|[Mvw=v əVJ-ƺb"LIg)TE~7^Aǻ3|L ID~{s,*W%~ASņ&vI.]mTdFuYb-j=rP;ü~Ӣ cFiP8D43\}QXÂU$7 ;pjf-G{S1zI$j)'$= ܨL$в6UN:0>_?<i3A[U^5(mjy|l>RA[ +A:tNJ;漀'G+f7Ess+yog+&vM@߮N6}iOo@zY3BhUP44yJ쩼2Z,$3C䊁/}CNY#o +MOEl\'Q硹{lX؁ӳW,\A΋`6J^+ۙ䊉&}``G7sQLNAHQ{.g.aw甽)\=2N_v&bbWuVl*`>sao;)sRKhs,a<}*W2) e^pW9%K]D] o7 D`])IMhS;'}$:wpL lL-rg唷q%r 흠3ræZƠaΫ:نvYZd>b$P4dE7*q4էHxtʎhA9 Eٗ_HjhPVuIk@S> endobj -567 0 obj << +574 0 obj << /Type /XObject /Subtype /Image /Width 629 @@ -4626,100 +4657,89 @@ z H8pBhpAuÅXfd`:tƙ zI:4t]I:\׭v 1''G$ +77W,K" ?,'OT<R}6XԟX;'_+?IzTlbF/HFb4V endstream endobj -581 0 obj << -/D [579 0 R /XYZ 74.4095 793.4011 null] ->> endobj -331 0 obj << -/D [579 0 R /XYZ 146.528 601.0527 null] ->> endobj -78 0 obj << -/D [579 0 R /XYZ 74.4095 563.6223 null] +588 0 obj << +/D [586 0 R /XYZ 74.4095 793.4011 null] >> endobj 288 0 obj << -/D [579 0 R /XYZ 201.829 320.5946 null] +/D [586 0 R /XYZ 201.829 567.7502 null] >> endobj -578 0 obj << -/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F68 507 0 R /F69 521 0 R /F64 513 0 R /F67 510 0 R >> -/XObject << /Im24 567 0 R >> +332 0 obj << +/D [586 0 R /XYZ 199.8107 438.1367 null] +>> endobj +585 0 obj << +/Font << /F61 219 0 R /F28 173 0 R /F26 170 0 R /F68 514 0 R /F74 524 0 R /F64 561 0 R /F67 564 0 R >> +/XObject << /Im24 574 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -584 0 obj << -/Length 2737 +592 0 obj << +/Length 2633 /Filter /FlateDecode >> stream -xڽZݓ۶Bq@fndI{j݉cN"ϞoDJtv3!.-Nj"OM -+nRDR,ۧʴx֧/j16{LoLru=Ejq=sRNߔZ_+9}^ۧ7]n{2):_LfZ !RRhoA#~UN *~ċ*F=Y_iDԅfVW?_{PNfN:u/`yLy+|ad tqfjVE!dA :cSV-trj_Z3XhD| ->`]zr9"6gRv ߾9E񗔱cyVFCžݔղ}AURQ%AEZi -7K-Y)K. -QF@U67^gEm9" -̕Jr"L~Fĭ"~CI㵖rUwΑ6lU)k: -cQ4b^FuQx4 -2$>nˉ3Fx(?'#vցLʛ˦ϓ!Nj[r"sFĭu"BG' -UKQm΄E圈[E\LӴsY9mOpCpt !VA1)ڗXudkoժ:(>z1d1mq(HGtN}f odLz])Y6'|j۬k$NvpBT4fSöY o1yUsYT8uiޖmYeb487ݺSzizPHLaWOUG |"ejnE~U]&> WYgƥ(ªN̫Grէ]*!O)kSIr/Dztf-` ˲4ee$dSwMrzh^cvD)m:ų?5c/ -r\N -^%-t95i/|u`\6O9rFoo:wn\eYat0`?7}o2nLJf| <,Dz;~myP\Z/߅}C1PΉ` ~02O/Ժq#;_8ix9IfqJ?^ EPh X˯"E0; %>c'-B>Q!lty(BKJ;1ZaL_- --ɹ#{5 )hTW*9R+eKr߳n'\0"zBc?pQkUiI).Lnjt O,qOā$54jz̤QxQϋ^IL6os34}BЏ.Wwd/CCu(yfaitA6 ç|]Ҡxe*R<_Ri.2|G͢_+iykKlS>ϛan.(g&yGTAzĞUuV~U>Pj $g5n%M|ORyZ^UH͓?TQaf-ZBOvFR467a}6-/xx&0;G/WLy[$&tfmٴz2)BA*a޴E1MیUN;1jtb:M@5S -ݧUAvkV$O1H9ߧ.cJ˼~ٯzce12h,!މZfendstream +xڵYMsFWEd0jq$:ImycUkhm@PҁAOOOݐ ə3Y2s@LxWE+K:3),Kvt=WO)6ri""(<Υ矯~:6NSk'LgRY(6S*Nqj^43k IX+mf Cbu4}R(5I~rn 4 +/)MJF VL[/'ǎQaq'Y9YVpOg"6.<:m$m7gNߢpuZеþj.: }32d/鴄+kz&:A+2'7$\a} )0b%Mr 6%I&t._ t ʲ3IȔ=ГQ:[./&Ӽ~ .O[d$;}Hhh QM]i[QEo<߈rjCF{bE,R:xc2F%[;3yhIzȎ*'QI-o)qCUmZkWTB-}qsW =&ъ}$$KD3bUT,#VAGQVs#~_7eRf:Ic+4>@X pk&\z^"MP] ;9'#?C,9 g d L-;K+ݕ'K_WK'񷏩7wx+kx'ݐ{Q닲nu7Mūn%t21H~z4;|( "ZiSĎn$vG zN\bg AV"AOb[OR\"'LBU.7*Jl?*d%ΛrWyu˙vygG-}Ӌuݮ'͗BFD[6կud[3#Ռ,$#F^t/"l@ ۚ=?OyvId'E̐AUQ) &*y"yIX#A iE|:rGhpT$k X?_.+=5co~A*Pg폱ۯs&1{(C.Ao»_XUq +"FixUU,ۊuUl_2hkFJOҗjK-k Qsp z .E> endobj -589 0 obj << +597 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [218.7931 242.7265 242.1888 255.2558] +/Rect [217.8728 574.0941 241.2686 586.6233] /Subtype /Link /A << /S /GoTo /D (figure.2.20) >> >> endobj -590 0 obj << +598 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [115.3288 206.8721 132.6093 219.4013] +/Rect [115.1715 538.2396 132.4521 550.7688] /Subtype /Link /A << /S /GoTo /D (table.2.9) >> >> endobj -585 0 obj << -/D [583 0 R /XYZ 74.4095 793.4011 null] +593 0 obj << +/D [591 0 R /XYZ 74.4095 793.4011 null] >> endobj -332 0 obj << -/D [583 0 R /XYZ 199.8107 673.5348 null] +599 0 obj << +/D [591 0 R /XYZ 74.4095 412.4208 null] >> endobj -582 0 obj << -/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F68 507 0 R /F64 513 0 R /F69 521 0 R /F89 588 0 R /F33 181 0 R >> +82 0 obj << +/D [591 0 R /XYZ 74.4095 222.7995 null] +>> endobj +590 0 obj << +/Font << /F61 219 0 R /F68 514 0 R /F64 561 0 R /F74 524 0 R /F82 596 0 R /F28 173 0 R /F33 181 0 R /F63 444 0 R /F26 170 0 R >> /ProcSet [ /PDF /Text ] >> endobj -594 0 obj << -/Length 1628 +602 0 obj << +/Length 2125 /Filter /FlateDecode >> stream -xڭXr8 +tgb(Rmiw;tIr8ld)/@lIfv'@ <G xe"YEH5-1͜x[}ί?ޟ3\):RDfJG Hz -9"ؗ!@Yhs;,nnγ]\]Qii$EILTԚtM6XUYlg}3OQh,tx$:c{k_ݜ/kUZ_Y/hk0M -k8:)T [Ļ"}g$iI(%cb>dqO[)8vu{eMS0HxmF96&X6ν #2/^ⱔ˘48O,1OrO%zj\p thuv8K5TVPwbz$& B0\IICd fmڋ悟WiAipA|`{|q)<.ǝ;-j }!!nvUET2A;JGe(Gu -7jJݯmjAB(p}*C@h4| ߥたDPktl:jXUeK^Dv\Q!uov,]<Lז2ղ w V>QʺwI<5i)CG[O鄁[Xjhi‹<_VPH$Kt\{[/>ߖ]G= -0 CDeS:O8hV qBD(Tf_fB%=>62Paˮ4Is=yEb,/Ęv$5N!_Dޜmѓ~C9hQ +qScAr3#TGApTMtK[`^ +"V(s*eq0Jt1 l*5䄖Rj|qfV9O*?& bU`7n Kp4aMEEhqKz\3?cSk.R^W﫰}mgZmMI?\LVvC8vAB[7Eet: < /"q(q? -45WACH|34$Et#U5weOsa{khE1ރp#Ȥ <]="!, -NjED% -|35ih~<"Џd'0 B?tQÛ vk^0 u|۬,f9_DГV>!ɥ pLN7NgI`*Z77Q"̉Lzw}JOt o /Ĕ1~'΀Y:-78'BA`4Lx,׫ДWa @6}_x3_Hx꺁a&`n b -Ɏ7endstream +xڽYێF}XܷuM,Hię#R_)J1, էBLr+,]RFfGTw'}7w7y))ʲȳL=wF?OmOt^OjXv1mכw?ݼ6vZ{2zaϳV{@q'JE6”#?n~]fstG"*K-ot)6J#7lJ/,xHvKadZEe`W/eQ>6 FB4%^nTd Tm}'(EaF%(CF?2CȰAҚGuю#'pV/crUCḺ.9Ghn cx[&Me2~nןZ֋!L 90-rKnamD~nC>NY-N`V@UorҴIU; +yXOG '!kQ:lW9);-_;ZI/s5.pFx{x\cx5ObnqU78-@~R@ nС&I_PNHM2@wp~{2")T'-~=/,dPfϱvT}e4ez2Zhp1'-s=e.,*_ =g n5 +Wz;\WtNJyv +&+G9SNY\T=gMeQʟO3WDؙT}(l4Yn7_OܝUQhU5yV!f$8}^>Ǹu56jQͨ??qh@){wPH]kBQ|!ma_ֈ CKzMin)tRE}(հFVcqѬ8!U)]nOSiTGDž.5!ǽiZ*s7}e=H(`pw[L6~RŨ^&h|:$284qvh*~c_v:֢?xhr0FjV"6Sx&I@DNfZ.H0}m8H8H!G "MU7 ?D3(A*4*EYD)e, id_3D*CQ"g8ҾVJWo!p@1uT$rB8{M\x$J9[UWNuic'6pX '޿D1b^30`艬~.}A ƨLd 'HSNM(p~׫мpw7^CS W'"ז_ɻ?$ 8Ƃ"w(#P˕:iIj0y*TX<lyjO}ܹ-G?|')#gn#ihs p*qex)"(BBo7s%U}2%0@ĴrMC=A v<&PFuNf]6ii@ek#r[7 PfJ4K<CzŻRLC':"Aŋ;Xis-=כyp)xCA&4 ~$G6mWb *XAU{FD+pY + G_Żj o^(y{C]V^FkɤYug3[6Eendstream endobj -593 0 obj << +601 0 obj << /Type /Page -/Contents 594 0 R -/Resources 592 0 R +/Contents 602 0 R +/Resources 600 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 576 0 R +/Parent 573 0 R +/Annots [ 604 0 R 605 0 R ] >> endobj -591 0 obj << +589 0 obj << /Type /XObject /Subtype /Image /Width 629 @@ -4819,100 +4839,52 @@ yE8!!! !Lx΍ï*eB–GHdr &~^Ϊz ^%/Ӌ֔'[ba#[K !$d RQxI _ΐC*SJWVkjj2 n#ÇTbh,Hn4VYzYzrrr@Ғa¨jHɺu4뮬BHueݔB |R /ǥD`bÑBDhF&4zj___2-d׮]P]6p||L y +/L U^em,/ QEE` endstream endobj -595 0 obj << -/D [593 0 R /XYZ 74.4095 793.4011 null] ->> endobj -596 0 obj << -/D [593 0 R /XYZ 74.4095 750.4133 null] ->> endobj -82 0 obj << -/D [593 0 R /XYZ 74.4095 557.0216 null] ->> endobj -289 0 obj << -/D [593 0 R /XYZ 255.8429 296.8444 null] ->> endobj -592 0 obj << -/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F33 181 0 R >> -/XObject << /Im25 591 0 R >> -/ProcSet [ /PDF /Text /ImageC ] ->> endobj -600 0 obj << -/Length 2485 -/Filter /FlateDecode ->> -stream -xڽZo8_Gy$t-r`ئrLrN pHY%5npp>II$F€&/{y`w?||h"biCT̔\pi;bҤY{[4YO}qcd{#9gJ*P/7jF9L vJ_1#d<DZdLqW\+&?)R:Unh[ÿX"LN`",`3>݊we\0- FTkB/"T njX|]1LR&cB&aR6MV+=5$eDEZZ#s)]Hoږt~m`Tɿ>,2hCt B82v0z]#9; -~+$VFXA3a"1VjƖ50㠱 tWw'Hљ=Ж[K`Ny1Q0gC#hr4,'W1(l|zKMٶ1vzX o3AR]ۑRO_F[CgO}ik|y¿%-b9pdI1M=֓0wW~ʼ;g`']s{!> endobj -602 0 obj << +604 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [363.9817 606.371 387.3775 618.9002] +/Rect [373.9208 260.6538 397.3165 273.183] /Subtype /Link /A << /S /GoTo /D (figure.2.21) >> >> endobj -603 0 obj << +605 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [463.6002 606.371 486.996 618.9002] +/Rect [475.3724 260.6538 498.7681 273.183] /Subtype /Link /A << /S /GoTo /D (table.2.10) >> >> endobj -601 0 obj << -/D [599 0 R /XYZ 74.4095 793.4011 null] ->> endobj -333 0 obj << -/D [599 0 R /XYZ 217.7329 658.836 null] +603 0 obj << +/D [601 0 R /XYZ 74.4095 793.4011 null] >> endobj -604 0 obj << -/D [599 0 R /XYZ 74.4095 429.954 null] +289 0 obj << +/D [601 0 R /XYZ 255.8429 567.7502 null] >> endobj -86 0 obj << -/D [599 0 R /XYZ 74.4095 255.271 null] +333 0 obj << +/D [601 0 R /XYZ 217.7329 423.1121 null] >> endobj -598 0 obj << -/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F33 181 0 R >> -/ProcSet [ /PDF /Text ] +600 0 obj << +/Font << /F61 219 0 R /F28 173 0 R /F26 170 0 R /F63 444 0 R >> +/XObject << /Im25 589 0 R >> +/ProcSet [ /PDF /Text /ImageC ] >> endobj -607 0 obj << -/Length 2227 +609 0 obj << +/Length 1789 /Filter /FlateDecode >> stream -xڽY[o6~ϯУ ,շM({[MHR* 6~gxeKsp=pqf8(ĒH N4 W4(oÓ9ݥW^SFI8 -=2z#})Z,yCNKEi[+\n*vW?+N"1RFD((H#mk¨h*^; 2PI_$<^.%idID"@ -\srhLcphm¬:1㶙Lƌʼ |7[{\ S|% ђF(CĄr> >RE*Ő\stP0Io֘vuSsqJrrD0ff:fjѬbanvym7m]Ӱc+"cfN0 1[ l(&I% #kyrkvb_~Q2H4D$2#H,c_s趃l4"08Kd &{˛\m΀]BAݮ&EU\xЭ?yYew IMD@(e2XQm6lP -,Tr ¿%#>9W89(ɀ_3kN2oAc3C:  ]2 cD&iHb{* Dr!MWk_X(E#3nd4h8!"s1V0.wVEJ*C8 ! ?U}$ {,0Q2&_wYQ$cchß!V.qƉҧ]8 mΫ*0NI9ěq5=Kʽ90SsNMa>t$2! -?Jԡ0.!щz=I9Ѱh|V4ag&"(1CQc -wNuo 5}D,[+UFӀ]'NOPg`);ۓn/(t(thei!Wb#\8~);@mkfVq[ -R+zybp\OFQ5;FG(mC[0ؑ__]hU׿؎_ ޺o6N#P8^[txOnρ#̨2_Sv#7p]%6Q%E3:f8db;; S>Kx57Y١klg[aI*]o{OaS|kCr2> BʾMbx/:݋[_fޚܡ5Y4@7%j~mpIwTA|_,ǃjĸ9 #LJ:;Nl>t%nytם -]/ wwk{f/*S*׽̀+cJ>aaEHu6PVe_ 71*GUf0f94q lr \AyXZg'@VuOVs3wemq  W)8Ui찚` aоu )!cK GvP]lTB*>pGΙ)%C(6w鹠 GȰ[# !]93N<Oy'{Ì2$6~j5P - - H^>sTc.3"403ME,2Xi-FBؘ{k+p,ϩ[ 93Ҭ_OiؖVS}i_ZѰ,ϳlߴo:/{pOF9P< 2@0h;iCʜc\mW{ros<oXerÖ"f>k7د]706`8WZ  x#SwJt)s`cf pܔBl[7!|hd` 7092 Fݮ A~fN|5 xbcݪ̹',|5mVN~ܪmZtgf`zCS"9imHvEyQ ڻJ~ +9WE՚P=R k5O --endstream +xڭXo8_Gٷ]{MXu$_7!ɖ|83Xp\3ͽY^B/㯈ļs|w;+3]{\HHsk5r%sI\γ۲#§j<;v/wnəVZ[+)`҈{Ɨ\\I}Eڱ/>/~_ů& s=DW,t$^Y4eâ*A2:O{hrT$wfW?5+OKR@!EVoD wX<o׋@2d~HccJޙq3Z2.== si(O~+&&6Fk@ճ%jԌk5;] sx`뇛HyHϙT^$J}cu[h4 TbAAP] ZΝuPqD2aNҤO?Cn[x/`PV*7"~8ÐaZ)ϐ*,y%+ xC Ẫ70AXJ]95|[BEvc䉭Zsmfm=Y5 4xm_S8eFN6#⋳r[el° of_Vcas"==`a(ͽaGB4V8<6&RQOqM(~SߖXܼNb'ZaQ ;24\JZ$#/)(Ix2YHxKPu\%Y.\-0'B9*r=u?/ ڍ5IXt6u?$ ) >F n0)볦xATi2DZ.IdzGR&Z EP<17~Xo| dPY > G_L?tb XF=bx>{vΆв"`}O}?e @sL0fv+pJ#/aVsn]1|m҄yxHihm qݵ4b{'~@uQ/mIh7bs.8[^3~;ք\&$Ae*7mx$]jwLl&bRh0Z}r +r5z2"\-$VAIW&X(^k'K#sPd2xW 6'6Iˋ;?xendstream endobj -606 0 obj << +608 0 obj << /Type /Page -/Contents 607 0 R -/Resources 605 0 R +/Contents 609 0 R +/Resources 607 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 576 0 R -/Annots [ 609 0 R 610 0 R 611 0 R 612 0 R ] +/Parent 573 0 R >> endobj -597 0 obj << +606 0 obj << /Type /XObject /Subtype /Image /Width 629 @@ -5071,49 +5043,91 @@ q (R {HbR_|u!/~n55BsbXe~UAVE/ vfBJZL=dWm ^j8V!ajkd(&vtt(eW٫0^\|pTBR!**4bTaBH)ўf+RWlvݻw)^pkbb^WVWWkj"ԄU ACR Cmm-!!Pd 䮞:?ӁP+Rp=Z(r膗H'|Ң_gϪ*:;;;+**(H@_BMRZԆ2;wj_5$lr}iRb+v3F{ܣ!x o٫tJ(\:@ Dtendstream endobj -609 0 obj << +610 0 obj << +/D [608 0 R /XYZ 74.4095 793.4011 null] +>> endobj +611 0 obj << +/D [608 0 R /XYZ 74.4095 750.6826 null] +>> endobj +86 0 obj << +/D [608 0 R /XYZ 74.4095 571.2562 null] +>> endobj +290 0 obj << +/D [608 0 R /XYZ 252.2353 313.839 null] +>> endobj +607 0 obj << +/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F33 181 0 R /F63 444 0 R >> +/XObject << /Im26 606 0 R >> +/ProcSet [ /PDF /Text /ImageC ] +>> endobj +615 0 obj << +/Length 2725 +/Filter /FlateDecode +>> +stream +xڽZYs~ׯ#X%"sZoXZ9A~}g UŮ2_UXq*a-rSvW]w7yga&n!d;Lo6eEcJI J3\M|*vK΂c5?޴k$ˤT* +J0@Ps,iHpBbJ$ϔ.2d$h^nH+ + S!*JE :UZRcBJhHL] JBXJ&i*Cj0P:Jݲ\uyNH-dI_W#!e&JY O`*ꡜ\%@ +N^'&nN˔DMzt$02Iy4dZɟYN(8F|ޯ&_k'V۬6λea*7[a@A' ڏ$:o Uy" S%R:9^Ogl p 0H|[ +-Hnh6b,4v€`@s{CG-WEcsR㏪x )rO:XB^mv X?!ЁٱM8>Tuc#S\"uUU+-LORĘasjY(shq]{&qK]1Hz"I\}B/4k-'u|c0n)R]}u Ջdi-c"? +4K«>~?bJ#P6AQolւa^Np󕔣;DQ5jYv*aOSSà"z ŽzaDB(Bqg*Dҷ"fVcJС|~iPfu'k0x̺´R/d6: +æ"QdtbSa!vCuI,'Ҿy9d>,Q]MuI/KQ\ԭ>Q$~ˆƮ IbhW,-S|RB!A.9Z0զ]; [FX{fnr\.mp;f +阛" U 蠽m<儅{1bM|݄Ňp4v_ӳMDIt,OCKuz-9ܵhUPi6 dA@.>Ѥ8AOaUy b_/s6:!j|Onn94g*c숻&^RD'jw'Љ|Χ:>#ހ!UvEE~@®%𭔱AJD+Me zHuTZΐ<Ɖ@ }VsIhbV^ڙPW-&GL)ӥ:-9?k]g<{> endobj +617 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [207.2858 278.581 230.6815 291.1102] +/Rect [213.0832 592.5971 236.479 605.1264] /Subtype /Link /A << /S /GoTo /D (figure.2.22) >> >> endobj -610 0 obj << +618 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [302.9099 260.6538 326.3056 273.183] +/Rect [335.4952 574.6699 358.8909 587.1991] /Subtype /Link /A << /S /GoTo /D (table.2.11) >> >> endobj -611 0 obj << +619 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [218.7862 242.7265 242.182 255.2558] +/Rect [271.6212 556.7426 295.0169 569.2719] /Subtype /Link /A << /S /GoTo /D (table.2.12) >> >> endobj -612 0 obj << +620 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [264.2338 242.7265 287.6295 255.2558] +/Rect [320.0116 556.7426 343.4073 569.2719] /Subtype /Link /A << /S /GoTo /D (table.2.13) >> >> endobj -608 0 obj << -/D [606 0 R /XYZ 74.4095 793.4011 null] ->> endobj -290 0 obj << -/D [606 0 R /XYZ 252.2353 567.7502 null] +616 0 obj << +/D [614 0 R /XYZ 74.4095 793.4011 null] >> endobj 334 0 obj << -/D [606 0 R /XYZ 214.1253 453.2416 null] +/D [614 0 R /XYZ 214.1253 687.7276 null] >> endobj -605 0 obj << -/Font << /F61 219 0 R /F28 173 0 R /F26 170 0 R >> -/XObject << /Im26 597 0 R >> -/ProcSet [ /PDF /Text /ImageC ] +621 0 obj << +/D [614 0 R /XYZ 74.4095 382.1317 null] >> endobj -615 0 obj << +613 0 obj << +/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F63 444 0 R /F33 181 0 R >> +/ProcSet [ /PDF /Text ] +>> endobj +625 0 obj << /Length 2519 /Filter /FlateDecode >> @@ -5127,26 +5141,26 @@ YT$ vb8$/z)d͢m/[-eK4&dj9¢OXԠ'AjǟiK4&2&1 xli; XԃH"k5A|1Y(QXhkёDHr$D*IOjnvr\CMű ڽXJ6c*۴_nsN,ډf e !HX 3R; 5Ek$HG}Σ;__Սao"6_<<<_t7; :1̣ËB?_lEWliL#TNGAOcrQL#9OX<_EiiLVz^ʖuԡ:b|C1^Y  ۜUK'}c? ʦv*^q2i`DNcrG1[W(gvMM DIcrAJ|#HV|9 aG=gtF 8q7/2 c3z}^}s{AC*w<~/峫3իqpVW)jڧQ$)#u{= s5q\ž7euȡ7n] pNO -Z>7u~\V_z|GX?w/=FO7xQdPޘ0iw[BhMendstream +Z>7u~\V_z|GX?w/=FO7xQdPޘ0iw[ʹBhendstream endobj -614 0 obj << +624 0 obj << /Type /Page -/Contents 615 0 R -/Resources 613 0 R +/Contents 625 0 R +/Resources 623 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 617 0 R +/Parent 622 0 R >> endobj -616 0 obj << -/D [614 0 R /XYZ 74.4095 793.4011 null] +626 0 obj << +/D [624 0 R /XYZ 74.4095 793.4011 null] >> endobj 335 0 obj << -/D [614 0 R /XYZ 170.9722 163.2329 null] +/D [624 0 R /XYZ 170.9722 163.2329 null] >> endobj -613 0 obj << +623 0 obj << /Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R >> /ProcSet [ /PDF /Text ] >> endobj -620 0 obj << +629 0 obj << /Length 1683 /Filter /FlateDecode >> @@ -5157,44 +5171,45 @@ x *Ɋd0I"YYfRHN# h/Y%(|Fmuv-Ѿ}ѝ|t^ۘ8=o1Yqց9Iy.Sb2#LIkb@a\P:6&+njįKI32EO',@κAپ{|=jW={&Yx$ E|orj.?D 3<";:#`um C4&ԣ epP?Jh}NhL֢ ڟpɟU#ӈb2#L#Ր39!1Yy\sI8h6d!iLNȓ0&y(WԐ6W ﴆtl:-!7א u*o I}O{LFj^T^_TYkH{sHd ,aUh^-RHV#ᤉFJŶR@Mbt:y(.No=Է>6_ M^4mĻ;Pvb -(c= ͚ p0MѡE#h#]ˡ},nps=tEefOܟ隼ҘPǺm;QTs]-i*۱j%bjiۀ{ cixR5pھng\XW͚3D'kendstream +(c= ͚ p0MѡE#h#]ˡ},nps=tEefOܟ隼ҘPǺm;QTs]-i*۱j%bjiۀ{ cixR5pھng\XW͚;D'endstream endobj -619 0 obj << +628 0 obj << /Type /Page -/Contents 620 0 R -/Resources 618 0 R +/Contents 629 0 R +/Resources 627 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 617 0 R +/Parent 622 0 R >> endobj -621 0 obj << -/D [619 0 R /XYZ 74.4095 793.4011 null] +630 0 obj << +/D [628 0 R /XYZ 74.4095 793.4011 null] >> endobj 336 0 obj << -/D [619 0 R /XYZ 162.7233 310.2812 null] +/D [628 0 R /XYZ 162.7233 310.2812 null] >> endobj -618 0 obj << +627 0 obj << /Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R >> /ProcSet [ /PDF /Text ] >> endobj -625 0 obj << -/Length 1604 +633 0 obj << +/Length 1980 /Filter /FlateDecode >> stream -xڭXKoFW(f\MM>P-j 3;KH)h y~3+q(LDq` Dh{xާ~w;yHp$.n"l.?_&+fsd|zU9VOn;Fr欕?֖ich.TQ +;[9$,cmfOy&t[1KdplZL, nvsC{)߬3&ubMsVi8J-{emYf囱PX2q\{F"!Xb0&9\">IkIBYplu__NK1]5 vMFSkV4p*wB&J@_ q$!bpc*yDuAcmI_yWiBc{6I¤4@L,ԐEsx?<N?`euS?,_] Stf^6#~ɫ%4,:9ȵdAwNvRǀ{s}t5Y^b-r BO&C5ԏUV=!6wz-<OB2s {45'/ip\CaKSXLp K<+W*UэPn*]Mx4#-$N@aQ\W*ΐQTF;OGip<,2BJ2 i3"?|9n;D𜖡۴cxx9= 'BApJߌ6c !g|Lwd2.OdhGK0:a "T4|Ʈ40>$vj #h;S% A@;2i_eR30A7~ иSCٵ9kiQoCaַ7nAĐhWւҜXb"qppΐՒA?:ohE;^`<ߥu~MͨPI=|ɇx8 Ǝ VBCGK 4 /0`i"D&Iv|',03:ȁYvG)09.R-.c\i^_od]my/V"skn?BlP!aI} gRxJ>6vbvt۷ȋ*=Vb'UZZlr/D6Mp}6лwd$DOkvfɴ/`'ާX` -ͧg2ŜXc(^+A1K]R{H\ ,9ɉ0ǞjD*jsG39aMRѿ<8 -HGuIn ur/^[P5c*IeC$FׇmPoQqn~4[k5c\[c^nLFBhUڌWendstream +xڵZmo6_6|ٷvivؐ9VYNNeڒUZ=w#UP#N% h0lhwMpK:{NQ5m…בҫٷb)7vxXj"uM;+6/q9Ij᐀MJHsh8] Sfd:{JF Nb9sfac8mtac2=9#91±-*.$ j 1LbQ +Y&;IЄ[ b/=9)9!rgB{rF 6 |CMkM3Q"A”#{τ@ /? £E{:N:4$ab:{@ VXXA!NH>)AA$'\۱ស`s?|o:_9fppܷVNJAs/XLqAb VP*<%AAԌcMqO@P,6/;%A!Sz !Al:@ūlN ?2̓Y:(̓2KSRs4F 'S;y+ʡ vun_:JE{pVj LW]qQOfSO`w8';؅rDY +Rx :^IG\L?ꃜjۜ"7^&Qc?=:~Ao 4.6n뿄Ǎ?z ղ~}v{@L}{rMO HAqsok)|K^/YN',WPkV7A(wm3g3,y:E04)(4AgnǤ񠾜Qݙn]ju,щ!Y*2NXW5MY;LƈSY8CxT^( Ѷ{QK<'źsUN:dSL} ۲^} rʫBXj+[] )U ' Gp|jDgÖAVvg-ȸqciz;/yh8Y䟽%w҇i4v CD cљv?G6Ϙ$ F1axI~(-Wz%]ܯc7zJgh Wn/5≄NI"!^OnS +endstream endobj -624 0 obj << +632 0 obj << /Type /Page -/Contents 625 0 R -/Resources 623 0 R +/Contents 633 0 R +/Resources 631 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 617 0 R -/Annots [ 628 0 R ] +/Parent 622 0 R +/Annots [ 635 0 R 636 0 R ] >> endobj -622 0 obj << +612 0 obj << /Type /XObject /Subtype /Image /Width 629 @@ -5305,130 +5320,59 @@ ml ,` X^,` X+,`^a,+X,+b` X ,` X^,` XBN,+X{ X{,` XW|,5n@ @ @ @ @ x122b_ z~W>]>믿Kkll,9ڃXotmnT[[ӈ`5??Fjו+W&&&rv?\trT}E>"DLFD|͕DiIK)?yLNNRN2q`҈]YY~L|"Dεk46!aƁwEX/TI|"?$^XX eEm!I4YN~_fOb,|X?"D,|^Y[OyK m}ə1ŢN$`Jit:YcuvvPY`WBl&w4VT===4{e522B" (a]t evD2bOb1'XLI&-B5?80#[z/_k,QBhfED Q(CNOO_z5i,hݽL/6hZ\\$Sla=z#ƛ7o$}i>iH,v$ u>lZRJ*^=/bttudE{5IFAX0h \dE֠Ƀصa,%;>Lin7M$pjɿA2bOQ>1'$Tg%#li̺K^@m NbE'+FFX4!"cEӮ3Pkmme.?M]aѬ\CC,'/3':|9/k,$\RJ*Dp"K?;;4{=5V0h6 찢FѡnܸAX4!_Zޮo6E,ꫩ)55*݈67t 3i}i>1db1'"W51OBJI.@/޻w/l/vu!VV,\.WKK 3>gaT2&_4{A$PЭMl6[p@l5:;;K4O@4 =̾(hwgkgZO~,|̩$L)Fb4VM0endstream endobj -628 0 obj << +635 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [498.4667 153.0904 521.8625 165.6196] +/Rect [498.4667 253.6394 521.8625 266.1687] /Subtype /Link /A << /S /GoTo /D (figure.2.23) >> >> endobj -626 0 obj << -/D [624 0 R /XYZ 74.4095 793.4011 null] +636 0 obj << +/Type /Annot +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [240.507 199.8577 263.9028 212.387] +/Subtype /Link +/A << /S /GoTo /D (table.2.14) >> >> endobj -627 0 obj << -/D [624 0 R /XYZ 74.4095 750.5036 null] +634 0 obj << +/D [632 0 R /XYZ 74.4095 793.4011 null] +>> endobj +337 0 obj << +/D [632 0 R /XYZ 229.6553 586.8599 null] >> endobj 90 0 obj << -/D [624 0 R /XYZ 74.4095 466.9225 null] +/D [632 0 R /XYZ 74.4095 549.0237 null] >> endobj 291 0 obj << -/D [624 0 R /XYZ 267.7654 204.1239 null] +/D [632 0 R /XYZ 267.7654 304.9501 null] >> endobj -623 0 obj << -/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F33 181 0 R >> -/XObject << /Im27 622 0 R >> +631 0 obj << +/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F63 444 0 R >> +/XObject << /Im27 612 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -632 0 obj << -/Length 2580 +640 0 obj << +/Length 1882 /Filter /FlateDecode >> stream -xڵZ_۸ OG̊Jۥwm3N3=hZ[YN%9;O_dڒ͜r9 H/_Tl*7j s?:(~p16MV+!S>l~]#\yy$] v8^k"/<^ˬ=Է=|C1KR)Ô6**WbQ̤M5r83nXoLKtͿ{y*e0Z0?K aלɄw0 |bWN<߼hɫc?t -HKZ+Ek5T2GMRsOoJvI%;Jjc۪h.:a)N_PQ y4^f -%Mӳ H8S+8˒j]G]Zk('#J -8M幒:)x|ZP7YSt-Au(% :eF`ns)3 %X"$\DD=6s)qC5@w-i - -*X\kV;>- =^m -C!\w@MN8k1/ -|ODO{EPDʋ*'F=cϞv~Q; +A~kh;g䒜{GgV$T˨r?ӖNSVUf?80(*<_8rHU]u_hDr)e@aqnI|vqv|ev>?޷xSK>43#,1fϑ)/#ajFzuFNC1eYlwRն#5Ex`' O;-*h,:!^9;Z\MɢzG 8fH ۱jQW =0u^md)?}+"CECDmNոNI40эHrjSRwܞ)MѝbfI!i=> -!1"s!`GjH*HQꟸb}ٗ\hpcH<= yX -*ѧ V:~/ -0e4%i`-{9֛Hc36#kylZ;r =."RL-41}TL!nK*F3EE4~.~kR* 5>B\1O*2ןٱp\XEǶp($hB$KCA@{[~=^FDpg).(jґ'7M_),[]sQ .FJM(BD2JkMdAۃ/y]bNm,$XNEAX+#vڈkFzG4 $0 tng +D`g.F;ڨA'!n>æh@8.*gfac**Q2- N'bK k{XqNRyz]/P?;{m#f4F.-Qщw]wR*!+y5`\TچD{<0-E󃀂~pm)eO=<C=|\ݛ?RVn2qZ.?D{U?PB2ܩ,ʍ<,+n=;?Њ(\2_%wɎKqݡv 7#oL]d0moDdNh~|=q/zISQ6D+s ߊ(#Łݒ9Cտt`5oW8 `r+~Ǫg7[KFNIҜkp1l:ZkRF{a_UM -k?+l葱.tCq~pIǰj1 wWy0- }ĮZ3ˈm7]JƓ?Z9B]t׏iϳ~ "vKS+#^׳X"ildž6'vbendstream +xڭێ۶}B6Tߚ=%H)p>h׌';ádْ- XCr87΍Ȭf&@aóg7Sw7;(gR9X:_7Һd|uxkW}Uvf7ߍ2)G치Mu7(df;_x|߯_CY׌VoKn'Pk;B~'z7#Okib6-q)1Pф[~*oeL +hQW  v/ҫli7md?UʶۜAQCM7eM[Gm|@D9nm{<6JF2lշ,чCG=U0FF5 rWN] GiPwdqzBoI̫*jZ]>G=9Il<Ai1D!g|LVU~s"hAN((΢I 4YoO6CAq~-V˦@r(:.B 7ǝ<65=/.S,y&3ӬmlMd-x?/*'TmrDVqU(1*cA+g\R؜i:(zh\L&l ?ܤ'pP`# Τ*0SݼeM9y.%prJL1%+?6<c +Gf,@K5L~j{ّt`.f$dHW0!c93ܠq)R1sXȥ1A7u4t݇jz쉤fߞld&ʈtE1lIbsٻ;ps2$LV48V~>(Q]ilu^R&u@"&!# '@NLy5 + ?~?Ŕ 1|IPVE@s}hK[7eeLuBUu۸cN!D+Kz]E%NeH,X/*WL[w8G!NgZ<F\ ^T46%P0}TyXx1wh4Om`lp7Î m;UOՂp~ޭEժ?' + ZBz{O%5`M6+81c4*.U0qpAt3A,0(ܖ"ɚ]6N۰g3ݴfĩ- әL,5`]c<'_M{_Qt"pMR\jF!Lr9g&t8LW?vB}65a%'ILOJ<[6= ZH'2h\smݙĀuBqW9DFqU)fēv&H_QxFj I;:,=Qe7JxaZRpfGMmi1ttߋ*!2=0:o&>īyZn/|xv #P.L8Axh=x16W=>^85Ձ}}RCzJ@5XO^ /p72X;dXjC,x*5p \} cG25pK[?עbAx.{ }&ҍ9p\~y Cr6ʨϰ {tendstream endobj -631 0 obj << +639 0 obj << /Type /Page -/Contents 632 0 R -/Resources 630 0 R +/Contents 640 0 R +/Resources 638 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 617 0 R -/Annots [ 634 0 R 635 0 R 636 0 R 637 0 R 638 0 R ] ->> endobj -634 0 obj << -/Type /Annot -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [252.8921 515.626 276.2878 528.1553] -/Subtype /Link -/A << /S /GoTo /D (table.2.14) >> ->> endobj -635 0 obj << -/Type /Annot -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [240.7137 188.9448 264.1095 201.4741] -/Subtype /Link -/A << /S /GoTo /D (figure.2.24) >> ->> endobj -636 0 obj << -/Type /Annot -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [306.6017 188.9448 329.9974 201.4741] -/Subtype /Link -/A << /S /GoTo /D (table.2.15) >> +/Parent 622 0 R +/Annots [ 642 0 R 643 0 R 644 0 R 645 0 R ] >> endobj 637 0 obj << -/Type /Annot -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [498.4667 188.9448 521.8625 201.4741] -/Subtype /Link -/A << /S /GoTo /D (table.2.16) >> ->> endobj -638 0 obj << -/Type /Annot -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [94.7042 171.1496 118.0999 183.5468] -/Subtype /Link -/A << /S /GoTo /D (table.2.17) >> ->> endobj -633 0 obj << -/D [631 0 R /XYZ 74.4095 793.4011 null] ->> endobj -337 0 obj << -/D [631 0 R /XYZ 229.6553 586.8599 null] ->> endobj -94 0 obj << -/D [631 0 R /XYZ 74.4095 335.7568 null] ->> endobj -630 0 obj << -/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R >> -/ProcSet [ /PDF /Text ] ->> endobj -641 0 obj << -/Length 1313 -/Filter /FlateDecode ->> -stream -xXMs6W(͘Am'6^( XS#R}v "%Ls%}" -,2HȤƢfBY[pE>LY(IDO Lw}X~-f17ɔY(ٽofNEV&??xb)IRJM&9#ZÖ:ehD1%"MBM|&+\PҔG O)"eH1@ANoA#^-=ҫLH#*B*Q -ψT#g]SMdž; ڶwg[ =^ǒہƓ$>&x(]{F䂿0 / 필op6!7 &{tߚEj9g8B;f}m ~n`aWF8aWaQ1 -AN -#^`=ҫ\Kg#BQᆉpψ#?p~6a2: B<0<}14KmO$lL,*f8X8-n8AcqN%][ֲ>f  -4`9}pHjv4QBva!=yܨ^Ogz/_@JTj~ݷ甔ZXJ3E1@$'endstream -endobj -640 0 obj << -/Type /Page -/Contents 641 0 R -/Resources 639 0 R -/MediaBox [0 0 595.2757 841.8898] -/Parent 617 0 R ->> endobj -629 0 obj << /Type /XObject /Subtype /Image /Width 629 @@ -5525,69 +5469,97 @@ y H|ׯ_O4]nDR`+755-= eX/Z[[ һV2D=OT>Dc9'Y;(hsLa> endobj -292 0 obj << -/D [640 0 R /XYZ 261.4577 567.7502 null] +/Type /Annot +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [278.4908 232.0222 301.8866 244.5515] +/Subtype /Link +/A << /S /GoTo /D (figure.2.24) >> >> endobj 643 0 obj << -/D [640 0 R /XYZ 74.4095 494.1122 null] +/Type /Annot +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [343.8729 232.0222 367.2686 244.5515] +/Subtype /Link +/A << /S /GoTo /D (table.2.15) >> >> endobj 644 0 obj << -/D [640 0 R /XYZ 74.4095 389.7205 null] +/Type /Annot +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [91.2483 214.227 114.644 226.6242] +/Subtype /Link +/A << /S /GoTo /D (table.2.16) >> >> endobj 645 0 obj << -/D [640 0 R /XYZ 74.4095 300.9352 null] +/Type /Annot +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [137.3231 214.227 160.7189 226.6242] +/Subtype /Link +/A << /S /GoTo /D (table.2.17) >> >> endobj -646 0 obj << -/D [640 0 R /XYZ 74.4095 209.8292 null] +641 0 obj << +/D [639 0 R /XYZ 74.4095 793.4011 null] >> endobj -639 0 obj << -/Font << /F61 219 0 R /F28 173 0 R /F33 181 0 R >> -/XObject << /Im28 629 0 R >> +94 0 obj << +/D [639 0 R /XYZ 74.4095 608.6975 null] +>> endobj +292 0 obj << +/D [639 0 R /XYZ 261.4577 351.4288 null] +>> endobj +638 0 obj << +/Font << /F61 219 0 R /F28 173 0 R /F63 444 0 R /F26 170 0 R >> +/XObject << /Im28 637 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -650 0 obj << -/Length 2053 +648 0 obj << +/Length 1759 /Filter /FlateDecode >> stream -xY]o8}ϯУ \~t3;t6}PbFF3{)2mYRZ$9& $I9X$ $+mWx[$IFZ4{J(S:nuhM\T-(ZƋS/vIb_f^~ǻ~aA1RR\".d(AR:XIYˆi%oW_d ?_WxhMH)\'+SĵT㓹&~d+’d%%CWS@Y(ccֹ m_rS5k h~jx3)H'Řo? 2bÔADL㏵)hNAJv@A=r"*?/U?*!UG - KR 1e;*97`Kry&͘*|s~9g e"{XR(Te[NL -K(DYWT9#X cㅤt  YWc64r3VÅOi*eאUR)mCY#{#ML OFpݠ:t6Cnd_ݻ笪\W±S{Oɳ)&2UJtp{"BRSKluƕ -rhfSuOvKީf#`GP>jJlV=]uD$#l_U޺u'ahLH:Aq͏D9oܦSn^y)XA|NgC%hO T3Dfyf&>Ps7MN\~Dlu <ُ!ow϶ٕw6QL6DƂPr$ q1 80-.wńjjmZgd].gO>8_DGu7**aN(@ M E :';o_L6[zWPsIu13B,jݎgRVd .3:Hř:L6C\OEUOCl:Z{sJEVsά`[gY]&l׀}`m׊~OŃԉ̡x6kw<*(ˢ1L sҮf2W+dD l,|x[Azzi7ţ]2ףjb|ZhՄz9M mЎtc5DeUN`\? qR렳O@rSvJ>ocji -^mvDI=W=۟RCx]7lsjV<ڨ=qP-nD~¨߫ݸ1;lGBj&V=p cI志 > -h0EEq:*Ȣ6h6x݇z*yWendstream +xZM6WhӤES6*^57Y`}DіE:Y <%)86"Sl[l~Igyhzd#cʮ?dix,z}vsj*J/)Z&TˇmV_/^]{`A1R˼\".rJR`[),1bF k{݂E70"l`X 5g78 Vs/bXW K\J4SC CM,mhF6U rS xa_5#y)H–B~z9rd4s/t xPV}U:JAk: +i/I'j(B5pQ> iIRfi; bos0`3nR(Fl\8O9]V͊tEöEa /?XzV|lUy(vY JD9ؐYI +֌D52M:M|.$%\$.&I~[f>n#"ټƮdIq37 =7rS?l Pl:)8^6q%@(1'QQ0! D'*'*tk*U#IjEhF.$xuZ]7upxDELJ4vѰ+02\žpч=t1 +**oM-zyoNA0 0̑Z &bܽjt"##Q!iol$W"V@zf|0\rorf\G:?rk$'jr=0{>] j +n. *"ˡoB?h ЛN7 +,\m0 fpp aό*Z?!!hQ YaF"Bq';q1$7Sn &A6MwݨZ5z[7XnTnGV~{ʕ-wP|veڦԁjߕ͋Xil约^Uk}r01(](@)!}!fY>}o7q[A8d*Ϝ_mp;ޔw۵}83dnl3"GVf5fR^CNWp ,.q`#,<"]QN;͎ZrڱӃ*P|+tXphp{tpCpO_1.S=\kV>qxOlM鎎SH+{;NyX#vEVMD8 MW* +ެLBӫBsH"U`þL$nhK\oL8ODfMv= O;;皗ݮ{_}S~) )؉ u +QSEDrN [U]٥1c +Uk=0zoew'+= =8$FxYÀ bRE3KgRxȤSL +/eNL& rB9.INؓ3 nh(HDE^I=z= ^'hKIhKYoL8ODzB\Oc"'0ۥɉO^1N +}lZެ?E1Fendstream endobj -649 0 obj << +647 0 obj << /Type /Page -/Contents 650 0 R -/Resources 648 0 R +/Contents 648 0 R +/Resources 646 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 617 0 R +/Parent 622 0 R >> endobj -651 0 obj << -/D [649 0 R /XYZ 74.4095 793.4011 null] +649 0 obj << +/D [647 0 R /XYZ 74.4095 793.4011 null] >> endobj 338 0 obj << -/D [649 0 R /XYZ 223.3476 659.089 null] +/D [647 0 R /XYZ 223.3476 659.089 null] +>> endobj +650 0 obj << +/D [647 0 R /XYZ 74.4095 621.6795 null] +>> endobj +651 0 obj << +/D [647 0 R /XYZ 74.4095 531.9131 null] >> endobj 652 0 obj << -/D [649 0 R /XYZ 74.4095 597.0203 null] +/D [647 0 R /XYZ 74.4095 444.8624 null] >> endobj 653 0 obj << -/D [649 0 R /XYZ 74.4095 420.0557 null] +/D [647 0 R /XYZ 74.4095 355.4909 null] >> endobj -98 0 obj << -/D [649 0 R /XYZ 74.4095 252.0785 null] +654 0 obj << +/D [647 0 R /XYZ 74.4095 252.8337 null] >> endobj -648 0 obj << +646 0 obj << /Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F33 181 0 R >> /ProcSet [ /PDF /Text ] >> endobj -656 0 obj << +657 0 obj << /Length 2405 /Filter /FlateDecode >> @@ -5599,44 +5571,95 @@ x RPFl95.1xuS.*Ѐ@s7MguS)s("6cȈO +7d'(# RhuN皒8渙 3=B80R6=&zhr@"kPԻ֭/K{+ըИeJlf^hʣON@Nx@p\uPFՎrExOt8Qaƾ]~ڻ:<%$o3Dn4_Pj]qK-duz ;`_r&ѯo@^l+SC endstream endobj -655 0 obj << +656 0 obj << /Type /Page -/Contents 656 0 R -/Resources 654 0 R +/Contents 657 0 R +/Resources 655 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 658 0 R +/Parent 659 0 R >> endobj -657 0 obj << -/D [655 0 R /XYZ 74.4095 793.4011 null] +658 0 obj << +/D [656 0 R /XYZ 74.4095 793.4011 null] >> endobj 339 0 obj << -/D [655 0 R /XYZ 180.1946 170.7815 null] +/D [656 0 R /XYZ 180.1946 170.7815 null] >> endobj -654 0 obj << +655 0 obj << /Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R >> /ProcSet [ /PDF /Text ] >> endobj -662 0 obj << -/Length 2176 +663 0 obj << +/Length 2534 /Filter /FlateDecode >> stream -xZms_~!/\tvҜi.$'LQHR EJ$mq2x".$PcDR<0l/h,ʦpڕ~s};Fs$.,tw^~U>_'TQ>.]U/~wquN8%VkSM8u))V7ygu1"5p`} 'JY7̮ՙvg\ ʁg ",6v8 #TI7+ ::pZpNAr`>-9RŷZ%}[?A Zi9/-:J'i-QRʆv\Ψ䣴aKiGZt}usd`jU ;Vy勯66U%]ޟ|ؖC^e7rP($PʞE(86'|[BM< g갲+Z<.h,CO48mf>:Jh%4>&IH,騜"I(Ipd^KHr#d>/w |*A:y\ !P BiqK]Pj45p4g:ф˧.]{pa6m}ءz8 YUV~S`aV̧ K%n%\wGja/qfI؈guZ+̪)Šz2 L5~ĸj^r\@yr-^aD;NeS8 bA7E"#3@!=AxIQ}{z巇bDYAug9r krl3ChP ǻb*$^h9ƪFN:NAF)63Z _|KȘcm‡6tuƵ[W&j_5x@?@$o|H|QIlɠ>y]QV1 :0Ճ'WoYT(U܇!+~Ó0˛;C (U:L+2|pO+0˦q[o 4׋ƇO2?/ Ku/ -nr7͜; k魝(D@HpɈ+ *o$1#9FOu8:%}D#gpb< .aˬz -D,7 _*Hsl 1QS'Ya8]FC`2ׇӟIC8kdMEœ°"BkC0,ΐ^9> $SSѬ7eTB.N(;R{RW܅^Z~:r4.b(e$xOui2˂ 9G],j!D`~EìSjJM?uR, -~W2Ţ;Ub0$D?t4CZ\s#D{aF#kezxVU s4ds*X P({L }2x$j{^鑆!!{ƫCVŦ|p-WS3`X?'0 -}nuaWendstream +xڽZݓ۶B}f,_ ι'qǍo@s咔@9M'39X,?cTIuHc]cyu ^ԯowtqeEӛO˟eg՚ْ:tym7ܭ]77?]N8%RRt("EԁJPP Ԕ%HOHA Ӛ/vW"K0gWŚQMd433? +I4jV ԫXՌD]d a5/SvN4NUʔ&L6 +?&4@&ٙ́:9&s0i:3&,_PD9 9US/EmSݙ܌d +(Ͼ ])'Iqt{똩=(@ie "2p&A 4AsL @'&1p9 { x@,૕~v:dYoVifUea1H" `%ጪ"9 XN> Ib^#,bm ,Yw.cW>^/fV.UW5Uop2nݡʻo,"b;eMsPӀ=<*pg[=hV4ӶnB iЌh^8EL`tF2=0QZB/HRNr̋Cd H;nLgʪ,:s0ErQLgIIZڔTZ R3[;7g@M-`Ӕ)"%w )S@hJ'Ї P b6Jψ䈦@G:^[KZ{01t8CMGj)USEsd_]YGq-_*k?a'N+uutd;^)ܻCݛ!8suW=-8Էு.V>4s׵_N4 -SY߅E5E*n);PtJ2ԓx%~l4؜0Um BO[L$K@&7I/x8pb[ 36 ?/)Vn'񮬪5QD݈98Zss~DfǰWw myGt?=-ZOfOvvǾ{z.7}쓛1 +49L"#R痎'B|BMc G qk|  :\m9A#-WD f_#7=ߍ;\e1A' u]D՛?2qH*4p fR*3BfbP)dv Eo>~,6y('b{p+A + Ba:" w?0i oav}Fx澬}sghg~:#QΝq% 0ږan4{^AGCBAP "iĉZkqS`P3@+:3pJt|Zs!k+;+(}BnG~{T3DMC%U[Dŕ $HA +88W`AsK/p8w=G t@d$C}pߵ}+L/q`'C{FB/_=tҳ[q{$?n\!X'8sŹ7L/i{i HY8^zEl1i-™F<_eSV1;NlL[vO#D@@7c?â-˽ƙ (Ckٟ-3Mq .Ccv* ]jy]Lq@J7r;؎ ӊO8U`ێ$#HBb*:ݕ#KeI`@/"2|cgJ(ɱ{dq^>M93*7*q܎ IRdq6>tĝ-S˔ltȍ)#ʟhM"SkY(0 ; +)EHX۞V3c.o2.CyRD +xKq.AUJfx u@hxMBڴ֦lj&ϸ"1LUEL?Κ9Oendstream endobj +662 0 obj << +/Type /Page +/Contents 663 0 R +/Resources 661 0 R +/MediaBox [0 0 595.2757 841.8898] +/Parent 659 0 R +/Annots [ 666 0 R ] +>> endobj +666 0 obj << +/Type /Annot +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [102.3527 188.9448 125.7485 201.4741] +/Subtype /Link +/A << /S /GoTo /D (figure.2.25) >> +>> endobj +664 0 obj << +/D [662 0 R /XYZ 74.4095 793.4011 null] +>> endobj +340 0 obj << +/D [662 0 R /XYZ 171.9457 656.8435 null] +>> endobj +665 0 obj << +/D [662 0 R /XYZ 74.4095 598.838 null] +>> endobj +98 0 obj << +/D [662 0 R /XYZ 74.4095 439.9435 null] +>> endobj +102 0 obj << +/D [662 0 R /XYZ 74.4095 309.2921 null] +>> endobj 661 0 obj << +/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F33 181 0 R /F68 514 0 R /F74 524 0 R >> +/ProcSet [ /PDF /Text ] +>> endobj +670 0 obj << +/Length 1137 +/Filter /FlateDecode +>> +stream +xWMs6WHMMoCݸ֞@[X.$*vN;$><`? FRɜ" 4M5adcOhy·ɋ5`9k-r&/،i^MpQVS`vY4e?ZTJTڐ% X +Z3*U~-#3_Qpj\8,'zBFrpZfqȐ5[#TX#΢F#qV͘u1d5* nŷw#?a-ksnoG +83KGrLh`!E9x].gռKT Jq<%d*eSP/==%#錰cR$ Ti.᣺CZ9xQ8P!$т(ƩUGM:e@b6s!äL3a3r((G+XO8@b +07ލsiE@hiv@r1`Ji1C5(>Hi 84+Ipcav&abkO&H\ {Ա)IV묞B̂%bY70*[W¯f>O.,}tmɃ䐩28[ړɉ']^[46h嶖2/ (Ϻ S 1/SDrvendstream +endobj +669 0 obj << /Type /Page -/Contents 662 0 R -/Resources 660 0 R +/Contents 670 0 R +/Resources 668 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 658 0 R -/Annots [ 664 0 R ] +/Parent 659 0 R +/Annots [ 672 0 R ] >> endobj -647 0 obj << +660 0 obj << /Type /XObject /Subtype /Image /Width 629 @@ -5762,51 +5785,7 @@ tq( \y C쉪xɓi:wz*Wu̚Tpšbsb5\t_G9= 6lƌʿ!oeT txt QA@Dp@ޑjpendstream endobj -664 0 obj << -/Type /Annot -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [102.3527 272.0547 125.7485 284.5839] -/Subtype /Link -/A << /S /GoTo /D (figure.2.25) >> ->> endobj -663 0 obj << -/D [661 0 R /XYZ 74.4095 793.4011 null] ->> endobj -340 0 obj << -/D [661 0 R /XYZ 171.9457 656.8435 null] ->> endobj -102 0 obj << -/D [661 0 R /XYZ 74.4095 619.0809 null] ->> endobj -299 0 obj << -/D [661 0 R /XYZ 290.736 377.2043 null] ->> endobj -660 0 obj << -/Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R /F68 507 0 R /F69 521 0 R /F64 513 0 R /F67 510 0 R >> -/XObject << /Im29 647 0 R >> -/ProcSet [ /PDF /Text /ImageC ] ->> endobj 667 0 obj << -/Length 785 -/Filter /FlateDecode ->> -stream -xڭVs6 _G.Boro˺}\Jښe9_?Pdru$~~Ȝ!qf(Y/ImgVqXy{p>F_/f/~0qeLHGMsq_6ºL<׈˰Ocvf[}k_r@Oi -79Į=XkEKX/YQUJiCT!.Q]&]i}*!nDLs ^t0a))4ndZ[>ꐄ_9 esh>Tp8C죷08:r靎7- j֝>{/v&<'`+p]6."cc -̱ :"rLYV{ݫ^^8;΀Ryp -Q`d -..ؤ Rit wOp@7ojyW`915$Qϲl;j ͟?g#Z_d3a%т&>RV\d> V4W晉U}J4Z$":)eX7I rN.fU(H_@i&2nC,(R-2O}??endstream -endobj -666 0 obj << -/Type /Page -/Contents 667 0 R -/Resources 665 0 R -/MediaBox [0 0 595.2757 841.8898] -/Parent 658 0 R -/Annots [ 669 0 R ] ->> endobj -659 0 obj << /Type /XObject /Subtype /Image /Width 629 @@ -5923,25 +5902,28 @@ zMւ AG㱘NHũiW$ɞ={N_9rD3uᯑ%%%칼<--ܯu̙{KWu}aߢ#<sUQSi/hXfAwmtF"틊UtZdS͊זcvq@X]t+ }njꫯ*X4as9lvUS..bx^<4x:‰'A+++``J̊9U_D|BNרάY|gʏtqyOs:@dt4]]hPĬc^͊.'EI҉/UsxX|U7'լPfpHΰb z5D٫;!x<΋w9zU7bլٱʖ:l4Y1U_N5^|GaAy1> >> endobj -668 0 obj << -/D [666 0 R /XYZ 74.4095 793.4011 null] +671 0 obj << +/D [669 0 R /XYZ 74.4095 793.4011 null] +>> endobj +299 0 obj << +/D [669 0 R /XYZ 290.736 569.5529 null] >> endobj 300 0 obj << -/D [666 0 R /XYZ 295.6743 523.4076 null] +/D [669 0 R /XYZ 295.6743 215.3689 null] >> endobj -665 0 obj << -/Font << /F61 219 0 R /F28 173 0 R >> -/XObject << /Im30 659 0 R >> +668 0 obj << +/Font << /F61 219 0 R /F28 173 0 R /F68 514 0 R /F74 524 0 R /F64 561 0 R /F67 564 0 R >> +/XObject << /Im29 660 0 R /Im30 667 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -672 0 obj << +675 0 obj << /Length 137 /Filter /FlateDecode >> @@ -5949,24 +5931,24 @@ stream xm 1 @~EF4MUP8):УK{14E^3^jg#l"V{YtOvGRiw&Hg"6Mua̹*noG3endstream endobj -671 0 obj << +674 0 obj << /Type /Page -/Contents 672 0 R -/Resources 670 0 R +/Contents 675 0 R +/Resources 673 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 658 0 R +/Parent 659 0 R >> endobj -673 0 obj << -/D [671 0 R /XYZ 74.4095 793.4011 null] +676 0 obj << +/D [674 0 R /XYZ 74.4095 793.4011 null] >> endobj 106 0 obj << -/D [671 0 R /XYZ 74.4095 771.7323 null] +/D [674 0 R /XYZ 74.4095 771.7323 null] >> endobj -670 0 obj << +673 0 obj << /Font << /F28 173 0 R >> /ProcSet [ /PDF /Text ] >> endobj -676 0 obj << +679 0 obj << /Length 673 /Filter /FlateDecode >> @@ -5979,51 +5961,51 @@ f !iڞh⺌8Ʉ?]u~uw#%kPg% Kɠr殣!cdi?LD J5 JBޚ Ѐ/Li_g۬Jww[:N+'apJuZ\--q̫ۧx+ƙ Q6c(Ş>G$I_#AZaXׂُI_?endstream endobj -675 0 obj << +678 0 obj << /Type /Page -/Contents 676 0 R -/Resources 674 0 R +/Contents 679 0 R +/Resources 677 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 658 0 R +/Parent 659 0 R >> endobj -677 0 obj << -/D [675 0 R /XYZ 74.4095 793.4011 null] +680 0 obj << +/D [678 0 R /XYZ 74.4095 793.4011 null] >> endobj 110 0 obj << -/D [675 0 R /XYZ 74.4095 656.2394 null] +/D [678 0 R /XYZ 74.4095 656.2394 null] >> endobj 114 0 obj << -/D [675 0 R /XYZ 74.4095 610.1361 null] +/D [678 0 R /XYZ 74.4095 610.1361 null] >> endobj 118 0 obj << -/D [675 0 R /XYZ 74.4095 565.8089 null] +/D [678 0 R /XYZ 74.4095 565.8089 null] >> endobj 122 0 obj << -/D [675 0 R /XYZ 74.4095 514.8297 null] +/D [678 0 R /XYZ 74.4095 514.8297 null] >> endobj 126 0 obj << -/D [675 0 R /XYZ 74.4095 477.3112 null] +/D [678 0 R /XYZ 74.4095 477.3112 null] >> endobj 130 0 obj << -/D [675 0 R /XYZ 74.4095 432.3966 null] +/D [678 0 R /XYZ 74.4095 432.3966 null] >> endobj 134 0 obj << -/D [675 0 R /XYZ 74.4095 394.3238 null] +/D [678 0 R /XYZ 74.4095 394.3238 null] >> endobj 138 0 obj << -/D [675 0 R /XYZ 74.4095 343.3116 null] +/D [678 0 R /XYZ 74.4095 343.3116 null] >> endobj 142 0 obj << -/D [675 0 R /XYZ 74.4095 305.9976 null] +/D [678 0 R /XYZ 74.4095 305.9976 null] >> endobj 146 0 obj << -/D [675 0 R /XYZ 74.4095 257.5526 null] +/D [678 0 R /XYZ 74.4095 257.5526 null] >> endobj -674 0 obj << +677 0 obj << /Font << /F61 219 0 R /F26 170 0 R /F28 173 0 R >> /ProcSet [ /PDF /Text ] >> endobj -680 0 obj << +683 0 obj << /Length 215 /Filter /FlateDecode >> @@ -6031,24 +6013,24 @@ stream xu1O1 !ى3V5bRPE(GU}~~PF}f_FhYP,g73-e:ʕ TD'Wk. %9OG?ǻǏqwHEo4F?u1~}>%xoc|a 7yn< 3 @Yp#P'lʪrLgnŏXcendstream endobj -679 0 obj << +682 0 obj << /Type /Page -/Contents 680 0 R -/Resources 678 0 R +/Contents 683 0 R +/Resources 681 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 658 0 R +/Parent 659 0 R >> endobj -681 0 obj << -/D [679 0 R /XYZ 74.4095 793.4011 null] +684 0 obj << +/D [682 0 R /XYZ 74.4095 793.4011 null] >> endobj 150 0 obj << -/D [679 0 R /XYZ 74.4095 771.7323 null] +/D [682 0 R /XYZ 74.4095 771.7323 null] >> endobj -678 0 obj << +681 0 obj << /Font << /F26 170 0 R /F28 173 0 R >> /ProcSet [ /PDF /Text ] >> endobj -684 0 obj << +687 0 obj << /Length 603 /Filter /FlateDecode >> @@ -6061,42 +6043,42 @@ xڝ D0^M!y#r> endobj -685 0 obj << -/D [683 0 R /XYZ 74.4095 793.4011 null] +688 0 obj << +/D [686 0 R /XYZ 74.4095 793.4011 null] >> endobj 154 0 obj << -/D [683 0 R /XYZ 74.4095 771.7323 null] ->> endobj -686 0 obj << -/D [683 0 R /XYZ 74.4095 573.2241 null] ->> endobj -687 0 obj << -/D [683 0 R /XYZ 74.4095 548.0739 null] ->> endobj -688 0 obj << -/D [683 0 R /XYZ 74.4095 522.9238 null] +/D [686 0 R /XYZ 74.4095 771.7323 null] >> endobj 689 0 obj << -/D [683 0 R /XYZ 74.4095 497.7737 null] +/D [686 0 R /XYZ 74.4095 573.2241 null] >> endobj 690 0 obj << -/D [683 0 R /XYZ 74.4095 472.6235 null] +/D [686 0 R /XYZ 74.4095 548.0739 null] >> endobj 691 0 obj << -/D [683 0 R /XYZ 74.4095 447.4734 null] +/D [686 0 R /XYZ 74.4095 522.9238 null] >> endobj -682 0 obj << +692 0 obj << +/D [686 0 R /XYZ 74.4095 497.7737 null] +>> endobj +693 0 obj << +/D [686 0 R /XYZ 74.4095 472.6235 null] +>> endobj +694 0 obj << +/D [686 0 R /XYZ 74.4095 447.4734 null] +>> endobj +685 0 obj << /Font << /F26 170 0 R /F28 173 0 R >> /ProcSet [ /PDF /Text ] >> endobj -695 0 obj << +698 0 obj << /Length 536 /Filter /FlateDecode >> @@ -6106,30 +6088,30 @@ xڅTM wz2(N!\S&]2A]euT%S1 %*{~DϘeC ~AF]ڹ &8 qsV9 )ZM΃bv0xi$_e)(jdcZ1nf|mBorvul2X^4Zgͧ<~Q>,Hsf)W"/endstream endobj -694 0 obj << +697 0 obj << /Type /Page -/Contents 695 0 R -/Resources 693 0 R +/Contents 698 0 R +/Resources 696 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 692 0 R +/Parent 695 0 R >> endobj -696 0 obj << -/D [694 0 R /XYZ 74.4095 793.4011 null] +699 0 obj << +/D [697 0 R /XYZ 74.4095 793.4011 null] >> endobj 158 0 obj << -/D [694 0 R /XYZ 74.4095 771.7323 null] +/D [697 0 R /XYZ 74.4095 771.7323 null] >> endobj -577 0 obj << -/D [694 0 R /XYZ 74.4095 573.2241 null] +584 0 obj << +/D [697 0 R /XYZ 74.4095 573.2241 null] >> endobj 351 0 obj << -/D [694 0 R /XYZ 74.4095 548.0739 null] +/D [697 0 R /XYZ 74.4095 548.0739 null] >> endobj -693 0 obj << +696 0 obj << /Font << /F26 170 0 R /F28 173 0 R >> /ProcSet [ /PDF /Text ] >> endobj -587 0 obj << +595 0 obj << /Length1 1606 /Length2 997 /Length3 532 @@ -6137,55 +6119,193 @@ endobj /Filter /FlateDecode >> stream -xT{XSoWW|rDn D-AD#. -S8$_SO9sI) -"XDGš -IieZڪEGp_Կ,ϓ$š'qY7(_VZλ B0h,ulY PI)-)5rǧhj&?'~i ]iܡcTæ-># wiSy}M#6;e +sfgfuU|cڗߴJZ J[˪uzƟ0-"mǴF;}mw|xs?t^G;ʰ)N$Ƭ'KчdɖuwouVߗE/.]6a*>-Y6ęQ -;?Jq.8IU:OM%R÷6p\ܢ ;3+)#]1[_:M<'qlM@G66 3>oQI -ZN>p.{57ÖjRLkl8_,]dz{3u·{ǽ -۳6Ѧt~}RSS;wa1q3}bW4i%AmV/U-0:`,qM}Yh÷;L"(''-7[] ry-:vqg M5 ?9Q#QVז&xH#\-NLf]ӵm rq -jV=m׳'-;I3Bv-ɞ^Q6eWPؾxquXKD)ՒLn5%GgT&% ڵ[uˣ~{ZE/ћ:d ۶wۈC;&uUW띃ȠuC~3[&X >v}uÍyϋw(ps!X9%/AnD٬/JnziOJ'º+1Ŏn^j㤛]՝ roN}Q)oL?W s|i ߻W,:HTu3xw |; -b Gi1f=_&lIendstream +xT{Tgo4OX䡉ڀ+"(TaH$S'3R`u%BHWJ*FP$#9JQ ڥ@(D:\g81H)@с +H"ǁaMvbCSq +uFI.ߢym-SeQkE͏B6UW> endobj -586 0 obj << +594 0 obj << /Ascent 504 /CapHeight 687 /Descent -228 -/FontName /RTWVNA+StandardSymL +/FontName /OMNDBK+StandardSymL /ItalicAngle 0 /StemV 0 /XHeight 400 /FontBBox [-180 -293 1090 1010] /Flags 4 /CharSet (/summation) -/FontFile 587 0 R +/FontFile 595 0 R >> endobj -698 0 obj +701 0 obj [713 ] endobj -697 0 obj << +700 0 obj << /Type /Encoding /Differences [ 0 /.notdef 229/summation 230/.notdef] >> endobj -699 0 obj << +563 0 obj << +/Length1 788 +/Length2 1202 +/Length3 532 +/Length 1775 +/Filter /FlateDecode +>> +stream +xRkTSWF2C#'K"D (P HȽ[{37-e,DA KkPVA$AG us׬9yN0̉Ac.7H?e(e;`p8T`:rvgIK 4)Y$6#*c˗%#b] _xEd4+RH" i$@$#5`Bp]* !:Q~A&D8&J0"$ѷnNCA"xSŨ(w.pq!m[q\FSŋ!2bI"81\h[rGed 䋤`b%:tзE~B2bt ? 1XgvA Qߝv,j pŒ +O'>.bL@1DSLaLw8A+ %<B\!@!RL'g&pbt!7fA(H%-'cb!3A䈀 :pfO"P_*VVRz{ F"8#tXȺku7Kɣ̨?<_]~kl߸fV#im6O0ؕV5^H1<_BQ~vs1+6*\Smʹo;)rM竕U.%1JSiq>๯vuX IVF{4rF匑 |$x[ȇVj֊<7UY-Ab^X^mLRbJDה_l0177MUA&Yϲ~6R4{j<59;xЧࢸ{4e 97?1u4oIp)>pؑpYU\\s{  u;Tu{ vT+1? ǚվqH\=J>eš}isݵl%&]m^RH{1~[h]Bz[I%spd)jBkӟqVr2gmAXNԋVU&Ј./3Әa;YqI xUG2ɳA};ICc+I`FMMƁ=5xΥ(gl#Ʃ=ojj7Չi,̄D1KFg)pKΌiIK5|Ȕ%n Q}}RUEWh|Neg*1ކ3zKZb&>->}]bsl''{:rl'X%{2V8xW(R;j͗M=& Вwu6 XRqhoϳќ|i0Rr&rsKvnEROV*T?/- mqbz>  Ww +~_c~(8؍fmX{/FL7GT6EyI +佲s>|}ұ5m~m8q9?߰˸UE zK[pDjG١-d0p[8w|٣Wa~$df=LVȍN'Ro8_M4\=yFCe(66uu A׼4-|mt~&X*U~x9Kp_@ .)WOendstream +endobj +564 0 obj << +/Type /Font +/Subtype /Type1 +/Encoding 702 0 R +/FirstChar 58 +/LastChar 60 +/Widths 703 0 R +/BaseFont /NORSXH+CMMI10 +/FontDescriptor 562 0 R +>> endobj +562 0 obj << +/Ascent 694 +/CapHeight 683 +/Descent -194 +/FontName /NORSXH+CMMI10 +/ItalicAngle -14.04 +/StemV 72 +/XHeight 431 +/FontBBox [-32 -250 1048 750] +/Flags 4 +/CharSet (/period/comma/less) +/FontFile 563 0 R +>> endobj +703 0 obj +[278 278 778 ] +endobj +702 0 obj << +/Type /Encoding +/Differences [ 0 /.notdef 58/period/comma/less 61/.notdef] +>> endobj +704 0 obj << /Type /Encoding /Differences [ 0 /.notdef 1/dotaccent/fi/fl/fraction/hungarumlaut/Lslash/lslash/ogonek/ring 10/.notdef 11/breve/minus 13/.notdef 14/Zcaron/zcaron/caron/dotlessi/dotlessj/ff/ffi/ffl/notequal/infinity/lessequal/greaterequal/partialdiff/summation/product/pi/grave/quotesingle/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde 127/.notdef 128/Euro/integral/quotesinglbase/florin/quotedblbase/ellipsis/dagger/daggerdbl/circumflex/perthousand/Scaron/guilsinglleft/OE/Omega/radical/approxequal 144/.notdef 147/quotedblleft/quotedblright/bullet/endash/emdash/tilde/trademark/scaron/guilsinglright/oe/Delta/lozenge/Ydieresis 160/.notdef 161/exclamdown/cent/sterling/currency/yen/brokenbar/section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine/guillemotright/onequarter/onehalf/threequarters/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis] >> endobj -527 0 obj << +560 0 obj << +/Length1 1630 +/Length2 1616 +/Length3 532 +/Length 2422 +/Filter /FlateDecode +>> +stream +xViTV%تH@\QJ0 +eH&aJ23X(KYMP(UD(R-Tܠ+itm9s|~e'‚` X\6g%pAdAr`,WX"|0D! XX5 xF ` +,p2655{)Q5'HP`Hl.Qǎn0 `) x]G0I@$E( 1F1T(K#4 @P!+Uf B7@H ! {@aARH-cp-d`$E + Ua*O*IVLL[0\YJGZ +BPPp(BR(MJCN"ef%!$Izǥa*oLeGER1c +):AYY1LErwP5hrf$ JÀ3]0 3ٯ@k!}?]{_vK.%3("!Ұz JoS;TBSas逄"B =S=PLHU+:`D*IX6Qѫt7wv62Ѓ@tnUD0X(gq[tBK?* 3$us{_^Y +1rt(@ &Y?Ca!uL*}ll^P}1/pϋ,j.|u ĕOǟ|d{NGjT]b< W4/׮kΝj>9w7T[oG.ޒ9` !<<։is`g`|%Eљ= Msՙi&F~Cy&)vi9y?f܍cB;7x!D-RWoSuI[Gv8dϊJ6#go f\VϰN yhaix:Ơh0)?gsf_ɬ[Nsٴ5s)z4 &i~Ɔٞ:ǙqUpɇ5_[M*gG_:Mw~~pwُ=M5Tlp;A"FN֌^=qv}6M+md52mz$olv}՗<;fX=mD> Zx'Ǿ*VxWw~>H|2$~V̨ ( +f['f*V{W uۖ}/%+>6AOq>5-wGr26,*NrA?d,::g\mFۺzUTݖ] MZ_5V|y턻AQ ++j#>T:niӷ(㕞eIKu:zԪ键xfؘ> endobj +559 0 obj << +/Ascent 678 +/CapHeight 651 +/Descent -216 +/FontName /LRVOCY+NimbusRomNo9L-Regu +/ItalicAngle 0 +/StemV 85 +/XHeight 450 +/FontBBox [-168 -281 1000 924] +/Flags 4 +/CharSet (/one/two/colon) +/FontFile 560 0 R +>> endobj +705 0 obj +[500 500 0 0 0 0 0 0 0 278 ] +endobj +523 0 obj << +/Length1 807 +/Length2 1423 +/Length3 532 +/Length 2004 +/Filter /FlateDecode +>> +stream +xR{8Tf4]SjkM.P1.Sb\1$ea1f13 Ʈ(FRrHݱT.isTC m s~ZY{~>]1SALp8,)f:S8-1 Y JpYl(,;,|Ȇh&@p(DFa>0 9&H;by t`D.Zre€2L>x ;1/4tɈ`(FN/[_ %jQ~1?)Q#r@6@ 5\F7+€hxfC P +#\A&kHrKL}Ix_.(H^qt""~^u !f`fiPlJ, +=He IG 0a@2IBa6jqXEaLYl-?}X!<0ps0? ?kX$e#'q:BA>HC= ٥DR+]zd ÚOy\GO]nцCjbY񦃒 1y'L%E  Z7cGY'Rhgн\[J}Vj5XY 1$tʹ+&'Fɷ=۸s8BkdNzaN]q>MY;" ̇ e)OrM.RKiNyS[[0Zv: 2/0ٔ>2uH)SwA,fMk6:SXУS=막ODmf~: 1(GI'uRǭ^EF-wm013D4/ЫI(#~s膮 +6@xɧ _4Oy`UþeOKU(z(x<CNMκ8 +IQAmE ++ su ¥~uTmi78fwa HgD\tNJ\swe-*JyI3r +0+V 8&0nז+<#[WlՉ3ns9Vnb gir1c/o&KO9$0ܦfBj}Z/@03nPX%hRfYc&Fjʙzg^Hi;Vutv#TvQG7YޘWtQH"P}׈:hdC+ +$Y{c6iǠ[6YC4 z~ Q÷xt5С +`EtIK+ScdnAgۣ\hzQ&l+WPyV$6Oz`6O5ku#]lRW.D{dJBZwd8e YKA76nY$N k=cG +ms ?$\H?o釲5L|5IzJ>}4*";&ǽO]YwB+[vxA{Ԍ7ӥXޓR==NUoݞÝn0I ֭o#[b7ZQQZ +70%J̟wྃL;vn$^y:T4a8Km7|!^{X*蝰;5Iؒeuc@,fF T9_p*l6bTe+9> endobj +522 0 obj << +/Ascent 694 +/CapHeight 683 +/Descent -194 +/FontName /TRHAAT+CMR10 +/ItalicAngle 0 +/StemV 69 +/XHeight 431 +/FontBBox [-251 -250 1009 969] +/Flags 4 +/CharSet (/parenleft/parenright/plus/equal) +/FontFile 523 0 R +>> endobj +707 0 obj +[389 389 0 778 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 778 ] +endobj +706 0 obj << +/Type /Encoding +/Differences [ 0 /.notdef 40/parenleft/parenright 42/.notdef 43/plus 44/.notdef 61/equal 62/.notdef] +>> endobj +520 0 obj << /Length1 1606 /Length2 7330 /Length3 532 @@ -6197,7 +6317,7 @@ x  ވ߹l yClt9WV=n؟r `g;l~(6AQ|Ay4̰?`Pglͫ C<Tω?"Dy;6a`7 }_@Ͽ{ /D |h  ҅ lv@AA`wg63t:A7]/ -;y5VR6m'JAuC 7- *l`"!_VQ@럆n[w=3`7 V21M&4ߑ&yZQ ~ õŰEF`woJ_"Tx:?5(R.+xՈ͙DKvF“Ч3S<X8%bzUIm!&,T_x|ZTzCC[6cL8j$ ۶.m+6F'M=͉M-CmS%aE鄇-\:k“ؒМJ{-)֩!sHՇ&<O}Mt/e1_a.ὐQ@R0ynx@h(s+Qdc$嘢_ V]N(1v9,֞;$MxRyaމ)EV:N`$uh1<#v'ckFbGLp>D?:.h=L+ipJ@x_).5FbԶ䶁iIaZ\im٫EʷqqV AA} Ң1|Yx#uF2"?_=-d:SD(ZŐuW8îO[/Xl9BY8G{xesz;垀 V̧i +;yQ6265m'JAuC 7- *l`"!_VQ@럆n[w=3`7 V21M&4ߑ&yZQ ~ õŰEF`woJ_"Tx:?5(R.+xՈ͙DKvF“Ч3S<X8%bzUIm!&,T_x|ZTzCC[6cL8j$ ۶.m+6F'M=͉M-CmS%aE鄇-\:k“ؒМJ{-)֩!sHՇ&<O}Mt/e1_a.ὐQ@R0ynx@h(s+Qdc$嘢_ V]N(1v9,֞;$MxRyaމ)EV:N`$uh1<#v'ckFbGLp>D?:.h=L+ipJ@x_).5FbԶ䶁iIaZ\im٫EʷqqV AA} Ң1|Yx#uF2"?_=-d:SD(ZŐuW8îO[/Xl9BY8G{xesz;垀 V̧i cU!57bQ(TR !o:mI#$MsVo?Kz GЀ/FP8j a>bX{^@{ctN3W|jI6GωMn+a憰O)ZMfh9Kt$*ު9|ī̍}08rn-T qSDœ}Fv:=τk!ZqK>i/8sRz;1/5'뜶>}.zVsSL? *q8»83 C^~+e{ZnDybOh/'ȘanE{҆{8[Z&1 %'M/vp؛^F\%4MMa'f n`Љ?.pR-L/ 9(ah<5'3G[aBVNFJף!8W揔$.JEb LWJTn޵%U1Tʃz5b=j ~k *P"]I)=.1I3A@Ӹ>]kn'K?6˯!.Uj80 NcR-۸icH>_1LP#cЫ~ b|DI-u*oA6'yM3dٞ8Iud>GȖ'^[t=!F"쬋pR|M˧Eny@L-7%vnZ\?U17Q1>Hj ̳x|i[U\QBKvoQmLw+rvq_ifnS|f AC'0AnC;15)Cle]FiX6򘝎G]82 (@΃J=#:4D0=M[+pyR~>ޛ#j,`ōJ:zJx/'OMu_ HEF]sXZ'ifh @@ -6223,348 +6343,180 @@ L m<S w4P&d9~AKĎ^иV,u6.-OIטbk;dY_!7Ga)'@O`"ƒGv ~'<{5igԴE,<VVqfzFtMIFƒH9sϱVn  kު;<#3.ܣ! |֚Kk T}¤&: - tG\N>endstream + tG\N endstream endobj -528 0 obj << +521 0 obj << /Type /Font /Subtype /Type1 -/Encoding 699 0 R +/Encoding 704 0 R /FirstChar 46 /LastChar 117 -/Widths 700 0 R -/BaseFont /WNGMEX+NimbusMonL-Bold -/FontDescriptor 526 0 R +/Widths 708 0 R +/BaseFont /OEUVXU+NimbusMonL-Bold +/FontDescriptor 519 0 R >> endobj -526 0 obj << +519 0 obj << /Ascent 623 /CapHeight 552 /Descent -126 -/FontName /WNGMEX+NimbusMonL-Bold +/FontName /OEUVXU+NimbusMonL-Bold /ItalicAngle 0 /StemV 101 /XHeight 439 /FontBBox [-43 -278 681 871] /Flags 4 /CharSet (/period/a/c/d/e/f/g/h/i/l/n/o/p/r/s/t/u) -/FontFile 527 0 R ->> endobj -700 0 obj -[600 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 600 0 600 600 600 600 600 600 600 0 0 600 0 600 600 600 0 600 600 600 600 ] -endobj -520 0 obj << -/Length1 807 -/Length2 1423 -/Length3 532 -/Length 2003 -/Filter /FlateDecode ->> -stream -xR{8Tfir4E5$PO[aCb. 1ki\KlrhDܒRڎIvuPB.j®uzOcH frq&8[@a wf3](ؘx, 8ì86 .h (L@Dш|`rLG -H`,t!edɍ+0X`ls+LF@P0rxoZe0<)KKAMqhL̯7H_w8Dsd3@Axҽ -0bedҿ6$lԛsL{^c}Q]"/׸H:laxqy?:˕I30(l6%pĤ|#MM0 $a04P ,`ʢA& ,VPܟ~EF5''`lfb llI㲑8w s!Ƀ  "Mɮ52FN'=mƺ'9ҌᆀjbAVѶD{锘żP0U+୐7>s-VwzUe;TG(:/de|``!)TgZd T]=t?592Ce۳Y\4oq{*6s #uҸJ?u9>l@,w9R[jZ8^5d`IMoom o<\1b-$'3pm֖I`\{!ӉJy}`Z#uс]¢~x?Mdf}01"TULS꼵k]rUýfjg;>wʎ3^xxyXqgS| -"jΏ5?<(\B==bǵUQd+=͛#$qi5s;Q.\h`c7r!ƛjK|Hk̕cvh^c1>!)=]iӖn?MMQ颱{3vβ68ycR٥H?g+_2~f?-~9 "/?!@c6P!endstream -endobj -521 0 obj << -/Type /Font -/Subtype /Type1 -/Encoding 701 0 R -/FirstChar 40 -/LastChar 61 -/Widths 702 0 R -/BaseFont /QOGPTN+CMR10 -/FontDescriptor 519 0 R ->> endobj -519 0 obj << -/Ascent 694 -/CapHeight 683 -/Descent -194 -/FontName /QOGPTN+CMR10 -/ItalicAngle 0 -/StemV 69 -/XHeight 431 -/FontBBox [-251 -250 1009 969] -/Flags 4 -/CharSet (/parenleft/parenright/plus/equal) /FontFile 520 0 R >> endobj -702 0 obj -[389 389 0 778 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 778 ] -endobj -701 0 obj << -/Type /Encoding -/Differences [ 0 /.notdef 40/parenleft/parenright 42/.notdef 43/plus 44/.notdef 61/equal 62/.notdef] ->> endobj -512 0 obj << -/Length1 1630 -/Length2 7082 -/Length3 532 -/Length 7934 -/Filter /FlateDecode ->> -stream -xteTJ݈tJЍ 83 JJ+ݥ/Y{Ηsw֬7>%ZWE &;nؔ` ->c  , c(# -ig/o?,H~v]P-8P {3c -T2`j !`(! [5$- `[m my u; :.VoSp݂(-Gn{'5@PH=?mN[mnOCa!v?3\E`PgO@ M #@ ;rzwhWgg-ucG8W EW : -t;-5)!H;Nu؃ogGo#!P- -bGPwpKןT uMxQvPM?00w8OX\$!,_$/YB@n%Y Fj :(vmuE nIsng`w-(V*]{T U'Z0 rѰ&waC+~Hل,?^jthJfpdΰ=Y '|e7 24ZYճ̻ONwNkTMQORq${s=~씣[׎{-˴<ѸlRnX/i ?{EQp˯(ĩ.LW4Y Pwu乖m4 \P~\x -YsXjl\Scf;8^8.Lle4u_4hK߰b+{DsŤnB[Rz"J6*?㭴]>FDĢʵp_nGʁ+Ѳl1 JcU݊] ^*R/+o;x7ae#RF+eF0{Lo/BHv8Kp\jhc".Hʧ;gU 4YLeط=! ,>ۘF:FC,8#nwYxw.☛Vr6 -$fuV$q@r'R$ KF6DT -aj uBdj K6E3C8io~5i|`jkF'GMxEtZm"A>P" s(qhgl!jTu5znONoW&NA$JkƝAJ1\1%TO+N@4N`#IZuH+4 x6wQ#m˵=\ bH۬<ﶄY?^lastN$JdJoZ);*YNz_a>怢`so/ !EClSd@>捻Wv% 1_vSD謶S}7T?Aėa6Р#^`[l-zGC:Nl>څ'ڹS9uu`7zf.QsLFOu= X8ʙ_ 0J{SROpH[$It5QsTBZvnMV3d~  -}uyo{IWwp"vZU^H<p#[cGث&J)ݡXO{2OR읊rUf}[aoP>Ĥr·Q}8qe gdaTLޗ(gFQØ Vo#ӕO4"(0j7l//pz׍OwϡO[>Sg6cNLm̕|9we* -xg{/Yj>9!c,&p_#oi@r Ih:-ezr"Bn0 ,xxNҿ&Pty4ҩ/an5UplGammgy9^VZϗh~c? R%#愈fi|+qw0(o[ȍv6d$Zf<%VO[Ì{=¸M6!"SM|f Z+i-ȱK/Snƶ otƉ~x¥_.R >ߥL| VY2,0Y0Nuo}~_q9ՄMZ.T8-}GL:{S; Oݘ"F4,4SdH0B$R.Jdvc#e lNióO_:=X S|`)fFt" ^3wl -a+&waE/2Zu';~ 鶯qP_n-?^v[6@f͵x\@8 sYjgD iի;+.mlDELr} pGSq%G(`$V(A*99XtVB+eq -)޹ xsfxx!L,{5.w2u[px 'g])T7!}qsdGK2}(}c#[bBxH4_ b]Jɯi5w1\r0-vV[O9xRdq[aDa#nl1읥_eA3A-'7VJJ}:/MTOsps[<`)!4R1)"aw,nNuݩ1A5aBo:`č7w6RȣBPlLB*IhW4ziJq$8vY_ $;,~T:;-þ (( |Kr$2YZY֐-;x".sIe>T:(^XDq Ո_?Py"mrErPrwr _N1\Nx/mJ7&u'iO)3^ -y=;zPoyi/pW%rɯe( iϖ^($<R(ԧ˯^8I)]W|VE߻ LX<ɱy7Po3lʁ*v-\vW}oR.\p;I9*溷5hZHgHaSOC;lcx#x֋b;<.k?.{4Q?o`Z%^#ǂ+. Kڣ+6-Y=Fʳo9z4Q \f617Wo -Ҏ]zGz4>z&[1=Z״Fб9*/}&a[W7Z?. KD@B#1_K-e-#苘/XF$Y -%#s zN\W΂ل@\:ȹڣ*g?q>Lrj%l 'ʿ־XX;wqq6itލX xne9xbA1&i;}_/r]lDpz{X%x9A{g]lv4Zhx2>3VUӠ8{w? gY*LJt9z"Vؔ/ U%V6{"|dR }5d@)ڴXvvеW}R Ŏ8UL~9r9֨Gq!NM[;J$k1vQiNvpv4<0I1BZU108=\9P֐@xa?)ϼ Ia"Og ?E꧂gGu6Tv(js#yrl 2:Z -&ބ-CuGX4snz%nu~V3J+ywг"#h._5㯯ns$ޣ8kT .ahzfA -+*/#lE 0>Dp8`Ҧ{#2I6F>#2u&`\`6| R6 0fC`Ҕ%[;FŠ{=rg֖x4|%zՏGϥ%q]3AvSq1#U㿌T1 h0_tGNJ[E n|mش":re 1G}M3,ebdhKq+\%6O.¢][l.ZgzaMI gM`88MLtC엱5qt˟Ώ5^Kg:9'rSaEDKZ{']Yg*>sZR {S)N5SuQuth?e~}% ADjKAN4dojܲ=w*(H0Mwh!# JñGo*eV13zQlY@Φgð~esǤ /SK>N/i̕N<3˸#3s:Y1+y|Nj֠*ovq% T/BF0Yylv؟Z({k ҌGtb43D\)sIWo'$ia>z5p5 \6f9^ LQʼn> endobj -511 0 obj << -/Ascent 678 -/CapHeight 651 -/Descent -216 -/FontName /GCUQYC+NimbusRomNo9L-Regu -/ItalicAngle 0 -/StemV 85 -/XHeight 450 -/FontBBox [-168 -281 1000 924] -/Flags 4 -/CharSet (/zero/one/two/three/four/five/six/seven/nine/colon) -/FontFile 512 0 R ->> endobj -703 0 obj -[500 500 500 500 500 500 500 500 0 500 278 ] -endobj -509 0 obj << -/Length1 808 -/Length2 1320 -/Length3 532 -/Length 1904 -/Filter /FlateDecode ->> -stream -xRiXSEV! $@LB*2^%7$4R@EOP瀅*: -"QTD@Bmޯ~=k:koaȒJ˓J3B ]p! v`Xb;z; \0ADE,8aaC(`Ahxc#(x<7{C`!J-;(%g5y\ ؼ9bT, L3P^\sL5ϖsOy``|X々q`O ߋcD̟A-<1zK+8o{ڛ w/LAgRFfK厔9A1pbV˂N06۩XV(J+ F/Kf~CNϔ\@ϭ+++yLRpmfnyoVL UАC􋜜!2ޯ:mϯ2Jz)Zs54BW0>< rrY12c_B 1ҹ[HF#<cmWcۡPW#GtC_3\Bz"tYWXIzjX[[q:A^wS<Dg~d>E\Ueg}sܭm Ce֫2&"<ȸumq,}b**q JFU0S%n jLߘ]&FT=*Z8;knAqTd|,ܖ}hoe~'K$vYA[~.u]PӵJ >x09RSl :eЬ_sF_K&7 X7E4uy3e*kcizmMt7ۙm$yֆ"b;ijg@uu [6g -8|M1{oNwi4qY\ֻܝ%7^UmqܲsEOudT$r?ՙ\.#e|ft)T9,!`uov>#sej" JPǡQwߴV5"_^j VؿѦػ lM ))uL蕔wiM8Rၮ:z" JϞ5L2|$ -Vkۭ=rkt4ݾc,V[sm[Q8 -ӵF:}#6δ V>蕷tg -^nɗ?Z| 47 -lbi ZyΒ5ȈUҳ)Mmo*9@n}&>is>_;Gy>+kXW7__9} -rċRzOj_Օ\hLm},Ԧ,=RCK3Z<=Dyh3g|w& EcݐJݢk]N;> endobj -508 0 obj << -/Ascent 694 -/CapHeight 683 -/Descent -194 -/FontName /ZOWSGO+CMMI10 -/ItalicAngle -14.04 -/StemV 72 -/XHeight 431 -/FontBBox [-32 -250 1048 750] -/Flags 4 -/CharSet (/period/comma/less/greater) -/FontFile 509 0 R ->> endobj -705 0 obj -[278 278 778 0 778 ] -endobj -704 0 obj << -/Type /Encoding -/Differences [ 0 /.notdef 58/period/comma/less 61/.notdef 62/greater 63/.notdef] ->> endobj -506 0 obj << /Length1 1647 -/Length2 6992 +/Length2 6818 /Length3 532 -/Length 7862 +/Length 7685 /Filter /FlateDecode >> stream -xwgTݶ.wP:H K/B@H   *EQ4"U Az뎛193o8X ("!8J@DPXAݑ # - И8"`D0=@DZZPAxAP#c>>6=P{8~.8 -M?v| (`A=}-24 p}wkЁ@H`p`-4 K  vx@\~C D(wQ3@!(n;OB.n3C#(ꫪ' Emiq] MFQ`( ^߱!-{c\ܠpGBʀp؃la$M}:/Ճ]\`Dcڠбp"C"ۺ9 =ÃNlü[Bg* D7Ho"Nܿk_.>Z לЃ г~ =p6+ -nm +;W%=Z!qA񿶡HuVq07B`P8-E; 3p8!n*5R7R6oc}tW ] F2EsJY -HH$ї}_!Zrzf‚"FA(0z ۸3 Еc@ ^/0ǴWJڜ!Uvp -D[`ZwRwႵd?o\-k߆q@vrx:(q6IY4~;c*!l8E%&Q7 6 c[Tk'\{{p;c 9d=pH9c\M K}_R/4+XGZY6wEwօ&:@"6g:kHBjߜ͟ IEDG_[[ogEn)e#TۘCq~ e$ɋA4W)q6=DHxt2@#`&[Y\RȥK8)mgT -\wż*tw\)u줵R..)E;6S;_!gے@i񮁦Y.{Q*Hq3> Wy*.0G,;O|]'k#aRVʙWJNX"rTӓ΋TL;߃kR/&N,HQ ];vRn$MYX~Ul3t_V,Fo=1g -:sV`R%B滩-RO ǵwpӏQPϛ"Rzq{zwj4i7YFʂk_Ly/dMI]:nY+].|Hwk6fX -|Cbi}%-SC' Y>^ fyέr<'w͜-QtA"gqxHl EgSxz{QPu2HO~?2&D.O8&g'T~OP_tstqk EYsCgD(H=qz 4]GݬSQL۟cG|p3>uȩ(]wa%6H:w#o 2Ꙃ#=)ӒBn&q2Dŧ67x9 ڸL۔12o:"A ư`؄z:z@ o~ޱ+g]oz4 G͈j&|TV(@c:2鹵wޝ(3b#bTcɽ'ƤBܙ| -og=V2na,K*cZay-\ZAP2`isn$d=GI]u. =AO_i^/)'r,BׂHUGr -aw(^$WWFn9*EGUUr.iZUᜓ.O;k̋H_hwwni|[72M$Mv!,7Uss7%zm( -1b Ϩ, &}\xǜ/WƝVd=pAU,wD L*j峻t ³pqmӘśVÄ -|GD1}.< h49CEM=0Ud:b,8*#`,I*Tg(fYrXAZT|!LDm;= Fm0|9AKwg|2GٹC E.CȈ;~~!甁/?z y;~.Pk|UFu\*T`>P9}@K" -Q;2[~*/ɭ~~~=r*4Am3~Ug):1?[1◼@_ZV d1rKDSeۻ+!&qmj]McnQ Ve>0v¨yf< Jo8h")t&3ZWLXW=<':)kN0%(:?K[;(gEɓi0{Qh݀P)> 91F iE9i䜞E+P؛ Y3< hlfb,*hTV?kq!oY,4+SSzʨ-t,vPͼn󲐴1E!u'I/)6r~庉u܀3lV5~VT1[Q?QP2UPY` }'>[e=Y}grɢ_>0cpʟ BCd -\uD@lwhMx S'9R]c]8/M^(v/%'%ӰHah1Cab mv.γ[,[N{!د3 jo.oȦi#asFmxC.O?Qϡߔtx#%N#Bgay^|X̬D9}ؕ{ilQp~=Pr2g^b@&VH%P[+1D=$(LJ9xO 3& T$_,Z7{3Ka8t^n>v~';,yƎsO×wc -;)%Z]&Jwf8:#8iD>+TΫ'@U7ϗM%1bb;ESLa .v~? -F C噻 O-3Uvxjy/!O3mug@h:jF$6Ȗ|^%#Y4rQFxWAqh$*"sK* Hain+. ̩f_# QfXrTV̬@2n"ky}ܞ&?.Ԭ:U{$%Opo}$\o^N/ףʶ*\F| aG>\ۓĥx EW/꫉fss+nNʄՏ=#SOb-&8˺*ECtWU<數x9Q@IcyqJqG,84^ o?fDnd1%-ASd;Kn䯚׆rwI|Rp+xlwkfp$LEa2QNR-~TjBziΣ],61]LZE})ųWoh'RB>2/fݹy~syv3h[̰Y<K}kʲ4zs+߄jxa`E5-sMJ}frm/(-ːϋ<-mKb/\HKVeta{ರVwǪ\sNRi]i1bIN iPlX$ʸP~7lIo@8Qakv-hyUCk8fgQhɀ rV&kF5P盛eF&La\rvBs{TпUh -a#{LreBf?5'C3-ZҋOvT.bi0=)CڜpZo܉8W8jܵ3V6^\=>AY0yR]y2W˯b=#c﫴97~.V(ʛJ^7T]=l/g3_K#x_UY42#AkS>'o5f{mik/#+s+f9g>ř'=<0)l{Lmf6_K3^מ<{///iRbӣF&gӗ+D=<Tw>Y Kep4M(D ~U&~ F -g-9w%)殀q=Ʈ۠jT;V=L]~b5+SUxjz0`Af eJ˓l(&.WU{G>*%ՠTs+$&W^yZfȲ+ѵWwR^/If4Ok⾝C6Ve$֣Ts -k#Zmijz-/7*y:;6Av&2% ^df)/d$0FEK%HKjק 8Hc$)dR(٥!!m'qH58d`)[q@qs\-L_$cwGd\VJXbp>Q=`_ˮ_kgeqL6yh6[J USn}+%PtbBu0k9/܏{+=.~(-ZAY?E눞 4nGk WU,#:utoo=K0Zj+\!\A_R3`~geS&S0y!qOeZ;vz&1'B)K Kp5x֧GX9AW^N8aK#a0i( _md8N}};.Ir“1M.q$1{t{m]zF|<~;JQ4+-JOήae*qݼRB] -53 rXGG}֭:P 2s' wEeMuNI;X^\W}5FvЧlHE3L\s9U(,1fdS4?;%Xѡ;;kum_ZD7tpmwCk(2~NʑqcT"WNKԒct.+ -=E?k[okoئ`_Kh 4\BhݼzOb5[] ؏;VBby˗q`E5?F MI2@R7lE *Ƭֵ,i,?Tߐk}>:5^bmgsIlW(eMCt(K#֤.aM59ng~㾒8%yNbFz~n(hURT|,LOӋi"Zg0S|S[uӼAK0K}*PtՌ{z=;u;_1 $O}E&FoyqLl*E(q"gCTDZ@FƲ3Xq|0~[Z7ī^|ph[Z\k|\w-61lMgz5,Eڟ9kwH8С2ps|Vږ}QcOeED'Ucnell3"W8#)6Hr%YK7v[gz2x7~W/G l>*Ks>!{DE[A5bv -޼|+NIt.E#u{Y戴=@Ω nWӷ#/?D B8ݜ$(0endstream +xvuTo6H( )HK (Ht03tt4JHH#ݥt +Rtyy5z{׾vf͗r0K H-:LBW d묌hL dà +($@VÇ!;wGmP77Ͽv~@ОH-@ 0#BS_@؀! S!Eh:[BV* +E`PkҐ|h.9$` +0 fx8F" ",(`jqz'!8pDch2MB(USADǴBcۂEjڷvs!B'aa Bk !:  pTo"E\};3nn 4P=kUX lZ8!߭@e +!E++('6vYkQVv}xu  Esh'av`+o5D@P׀Or:jJjʹc +;g$=5?an'PL}Q⡰%",P`$' ke7EwDY@ѭύ߰3V4@WKN¬Sߢʨ2Zڹ~fE"ˏ|U?W*ֺ[A7'vYZ8ŸM nW]6][e0(;cud;X +,G/]8tR.~Nt:EQwTRDa0nM.8,4MYf^(\ub&V %(߭-. rL3D$-5v *U'$\UB<ºk{(+-JG':6g*T!.3l2j=sr'=`[-@,GY.ӷX5]7Oq`;4=X]I_iѬmL74 vOF^=)/"OXf 8gyF1@)sH6bW*>$RPICgwqI.TKs: vZ(G̸$atwnхJ[/HJ.0I؆)ZuN= +?f 4ϜK[!1*{Y#6ͲI3xLaI8{ +JI\K甎ù +lk&vwl)85Z_lO:jUfE,bEB8lߪ248M+g|øS1__!iKkݔ% SH Mʪ輎nbMhmK 1 +J~%(;.H!@MVvSrjBYmSlNnW*bZƹH:`7W-fYƱ_иXw=k6G2g 䭭yU&? +c͈wT&O'>t{z9fbf!={ĩV{l1G_rF=QU:",K-Zd&2p&kr# 7:# ĔHo*=^ZyfZ.Pd|6Oݹ~pKE aQRU;yJ}lu-$vrӺ!B&'nB :Ay]YMs)}{ʍNZ M{o JE*Lf_n&[C hbjFrSeV7%dA}qFߌ7_{-.i݈JvwRMxqVS/k]̟zvճ|P.-?m% ˀZBgc +t D/(#!eB +=d e`:񧶪r}!$'~*›9::*3Y&[o%*D h퓎s<}ˎaҒZ+fӇaV9ͽ%4tRtޓ_?%ҜQN;.QscX̚zSsNh XzEܤK'2vj4#>PU(F79hnX H bE!)V*N:nry@2Wq:bv͚ShaLPL;)IcM, BF]W;zg_Cv> j#2^%|eϩnK]ISm'' ].=P[QO-ȌҰb_ o]{Q_OJ<) or*n`>g4"L/K_Em-@-UsVub{= kC,/,sqW{]J)?oGu9On&ݸXX(B^ ⻝|Jf3&*w%63CU7UCuf&J?0cA豭Pm/(b6L_Uqt45ףȐ+tg|5Ѱ u ~P֬mX* }h~r/r%I U8i#$4aWrO{Rt#,fy;LLGdt$D6pLݿ!*ow'x Z:B =n*8>ۍ' JJ_j}eGPhz tA)ߙ2=?`/>괳,#18GQFrq;AiO DE)ֻԜJn34e5,2˱ی/(125 ESS}Q]AjkO%sX9>9w#K:4:b% ys8@}4D[%]XAmaEvɳCyS<|έ̻nq +_]'#@n D!z{VWZ zt-csg$ O+IS/WB,箘QLyȜݼ$BvpEJ2gԺPW4j$͕6nءOF̹F5 zNbDPG b-{' +/h>>XJ"AF(-9J6:ūM=G<(l>}̣%\:%=l2FbҺEǡO/FvTŊed`' `:Or?xw}gq~^ƅSsN{Ha9=6q(* in2sz{ɗȊ%47=%2ljʡ=]T8=l*xa!@h٨GiI^1wx{j^y21^8ՁG3e5l6Dي7Uz/'^pq앲4kdEASO>xA0Oi}ҁ$Oe̯ȗ*deɛ,A+{ދF%DxR,C&coOoC=vZ {? +)Ӈ.orUf)`[Y'שA'Vn?%,HJU{seA_30@7N͊vRNl zSy-k(mS{ЗޅKCL0!(w$0=?*ujK g6+;ƃ41Cs{'<ʔdzqrMJ/CuYGUd?:6>\^*e}d(vmR_}堄Ud#f-^~ .,=kd5hEBmSuȻ)더 +;ma$lDa.Ͳ]+Y 1KxH+9 0~ĺH}-AwATu˜m,H 8 cX%c>ܪS 3}Dڪ;K P)8E 6QS;N^޸aVQ=0L8+$ <*hcEZB ^=DuT7ũ?ͮ=ww_up1" ]QYFҼJ4r )Ӡ~3[td)sˆDGjmn:^A_mc[tWvn%^&zcWji2ٜQ 3[P[I.$x.+ot  +*t>'5bT.v}v~i)ACXg/ok׌4s1b]e߯vл!][ec#t=u%/?湈Oըjg uI,5WE8M5ٻp%1AnT ٱw +WM+څ/&A)PF˴{A-+C1Y7;z/}z%ke2z/~Z`.z{CGUªM ;u')'mjz.Y!u ?h -n:,p Qt, -G b)R[AŠS.o鎾!f +yQG=nAc+UUC\CY91v}\|9=3W- 7bg)ַ_H&\I&nzNaġnJU^0tݰ8r$&쾗]U3vWSH78ZH~Fifj 8d zqֲfM;glQ1UV֞TQWD]× Z:fU Bӊz!e39Z;]h~eUG);7^5*23?GsK }W+_W Z鱞1 rr O g[=RLt]SWղ+0PoXNE%d 6:VPfRkco4\K?#lvx# ?f +!ٍ<0aEB^J'\sLD'ҐIZxwf( dRp0e?b?>/RA uc6Vwq9`2bMDe * r:ƭlޓJz^&c˚I#bQ\eeDxK} #= 5.vS:iV:ѦnPA>1zD9s6O᫘8yw> +xACHwHԌC䫲', yؠiXo'aypK$EoL6 ? W}Z 1?q5$> endobj -505 0 obj << +512 0 obj << /Ascent 668 /CapHeight 668 /Descent -193 -/FontName /MVFVBY+NimbusRomNo9L-ReguItal +/FontName /AUMFXM+NimbusRomNo9L-ReguItal /ItalicAngle -15.5 /StemV 78 /XHeight 441 /FontBBox [-169 -270 1010 924] /Flags 4 -/CharSet (/a/c/f/g/i/j/k/l/m/n/r/s/t/u/v/x) -/FontFile 506 0 R +/CharSet (/a/c/g/i/j/k/l/m/n/r/s/t/u/v/x) +/FontFile 513 0 R >> endobj -706 0 obj -[500 0 444 0 0 278 500 0 278 278 444 278 722 500 0 0 0 389 389 278 500 444 0 444 ] +709 0 obj +[500 0 444 0 0 0 500 0 278 278 444 278 722 500 0 0 0 389 389 278 500 444 0 444 ] endobj -470 0 obj << +443 0 obj << /Length1 1612 -/Length2 11064 +/Length2 11989 /Length3 532 -/Length 11918 +/Length 12843 /Filter /FlateDecode >> stream -xueT]ݒ-ww  K -hp}{c15kVZkRjhJZX\Y98j 'K -{ȋLK+p8Xz@k -DHl :Yi+``3tvި# a&`Wn KG@dt6.n,V.֠JaI+ - mtp9o upv끻 la7߄\\"|o`.`wUCF<, .6o.V nr܁A`WG o`nixAζdpZY;77쿺:z WWGw@` 2'[N+ܶ gdE+'۽`dBhv$µviqpKoPV)vǮv{3gEԌXkt{h'z~s*p|{[M˟Ȧ:ݐ=qin]20KORnGG{/wI -{¡'7È݌JrqBgZHKCLa[ܡ!.ж[13'":%8]A+ &i& 8ЄAl$`G;2=̎hjEإ`Fns/H)+󢝓҇n,E;NT Ls5؎[J,.e'UFš/ վ+PhtyФ|F7BTժ2}6S֎nG3w] ʄOߖЧrEBDM#;1:~+ -rwx20.c [W JQT:˒ 8H7<,>x Iyvj{`Bj`zⳳ n#-Vu:)6Ej|(%N[l =ִՏe?1J[-촁vNr+vK6)ǫ~XD]FgGyʐ|@nj a,L E6ӯpSfbJۋywՓn -[UXW J/Wg](r^Q X_2 ~ԗ䟽1XzqWUdS HKJs# "ʿOFOp֓F4q->,9د9IY)]Ol0\ڔ5RR/(ekwqt;#vCL\zPՔ;0oMTz|tZ җho`u5ij(,9\'rg4S}p>l oQZQǏ/rzOme8@33 Xon aRӕJd:: - b&z OCϗ-U+.~K;x5f}SJ{ yx9H!H ͞(=~f/HKr)7\ =OZG qf\詐ڀ#n6kwU@ .nb3&yf7~=5=Ь@FQi_Nyt"TP9u#֦ -;y!(dc4hFiP*n]+N?U-ac/E'{[ִ[8@tU: @O-7h OQ2bd`Bˍ fv̇a(&l -9L: Jϝu mubp@ÓXW>Q8GrS\"=-=NhoOtEacmp/r _@Mbn -iLGn"SXFx(rY3:/eG֜*DA#~lrd>_O길/Pc %ۓm S/ãz45 -4x匞 -,ǚ0qm z1Z3)u+y 'F~ZN.H07TQ3J3OuXF1:_/Ps'SU.HM{[:(`)`%k8 ߠsW"Lr S N_ΒLA9F퐢٤Nh3DFnCᠻ|RO.<7ĒL-Muv–zہf"[YG$X,|_Id)%7qk;XQY&t2؛]il$Q^r?ZK+{{riD`afDEp0`ϡ؆G <*h0C!FՄw n(`2a*QeG%ht,. l^$+dLr'}YF+M2=I嚫S}\8{GJ:h .9 p%5J8\?>CW_!!ɲپh:/d~LMVzOq%{(jlcyϻ ;φl: > -Dqd8|̢^;E@|hFӗzSB3#S}YiLz)FV@ߺ -2qW$ 0 nH>A -yyF.!6tEEQ.?SXj\q[t_QA.C{ք? u|J:)GǵqNod ArZ+8 $7˷$i{5^i`5!V)t:ٚW\|0j0er -llWNs\C_Wv4ya{`I2簣R[.+vWɶ~B[P3 '_,e~lePzJ)y.[}sJ"%U%!$NHoV~M+]޵%'޳,dxbN_v -|~%0!1iJ-璼Gp;=vcmH4R%̑" 󨦄aRv߽ a4f]yyR|9}e( 591tIC@!zz, j -9#{!MǸ^+.B}1l<*?[uۙi$r5<%KO_6jSZwȉ}jM$X.ͳ;FW䋡c-=?ZV{qf0>}6*dH0 Ek ;/Jg2`^TB6 btWlkE(ⶱ|u%) -[l~ʳw$sRrmW'pܝۥZW0l0SkAr%dڹkK\^|l;syb4d1g>C>Py(:c4xW7 9iǦ"g)DK x`a e',\w!<״L선,ѩadÇa1xUn&PH -!+$olNN=&MK?D2g*KIMy^%Y)A>Fr$0`am\?Y杚ZƯg\LgiS] , P+/S9b[fȹS$wsY2le:%A0Sٹ4A_@گb18}`un[Un: 8,8gQ5;}QOx  pBnvH][K -Ip}1HLuAQ& b  Ev6kY?P}luUxUH!TIDoxFŻ$v7@I4+T.;Uýyxɻjkz :gSq{vf)L:wGɮQHZVM`Z-7q8ͱ_KVA5>PtY<'~[3y#plr'ѧME~'3xI /G8e_yHv}b$OVف:A9cá\ -_'B ӓ[rmnXjYvr9jka=qgx,ze:HIK"H.Y Pi4s(}wu  4`eب> I -0b]fHӔEOq2lgΤ|!C \;[ٗj2t5' I<1Dm­by8#LǛ7WM8] ꫼EE QJ. -6HjJmdp E齰~$\ "TS˒σfd9w !ł9In feT?ևK:w>nHg -|="N{6efN|@pQC}m;*@y?s@*q|6$iq}q`%g)I39C`^GbbG8 Q>lV$K ~D|e ^,ݚ:]zUj+bƴq?KhDcӛ%9(8D =ij4R1 |уerFRNzrA^iKQi1}XW d+.j[V)?ʵ/ڐ_ݧ:jN\0RpQ)k!OΔq,qt3ZnE Ze{սvcI),Q`KT7 ݁C -@h=ɝay7d byss kjAMb_QX#5/.W\ĺEѧ -H-!3Y(coS|NaMVepƭ$J;.fm  KH2k`)l  9&F7x$4ޡ8nR)CyίuyK!H45bS'pj?̈EM~\,ECKO~-%%XM;.܂E3ߠp+R|PhؾhihZ1<.YFi6q =)CI"({ Iއ}2gO_jrFG+O:)S={6 -8W1'9?Λ QG -tťR~vvacR,?R 誉}X4RI0$Tdv!GWLm }YW| l[2% c! W7TX.acVCC2 -#ta|joJ,]%¼7C,D3FĚ_*;ǃv>-{,R$'$$yCʕH^{Ԥ%'Kqxe6NQRv8Q!gavͤTŐw*, lW08\%c}`M >6~nM~ۂ~$,f̑5m3]HdQ'LB AEo!'~yTAɅ> &$xCax^;٠mxTHہ -历qkv-r WlG̣XqAqشp ̓;6ݘ,`}B8hA] |:dpǩٯgzv&""ό"L隫HI޽Ev1X`{ln]HSB5cM渉k d<@(jӐSW9'j|I&$ÜA-}-t4 5V|Xt}hǚeSI*H6ވa?IJq,8 -W[B6%ŕ'qwY(ԢXap<\]c Z1 - iqQ>.ThxM)+E&o"ll4%…Qr{F>&=?1h36ߴQ -W5 G}\GLA\p]9Z6ٕ=~@F2Q%Lg^ý a "k裬/2⼉ۮY=xQ[:bpeJ=POg0^"J{LFR!DYeɝpN$rAI <4U% x5tҺo1E*]lJQK[]zg<;/sxfKYJ:\4I34g1ϹAIl6V5MG,EѦNO7.a;/(TgdV.۱7yZ$jU8.qޓ_7Jk*7;K87%PG2aNBNOprm ktpLX( -UJɴȄHZ*.g8*~R=Ɖ+0*%LcpX2r7y|™ܮ-&6/VZΦV4wm+GƊ E7zn.Zx'yvHy< =9ߓ/g㜭}ȷ>>꭯˙gu~.p8""%zkc`&Z3v㆔4+g!).*G}wA|)wm6&n':PD3=37|!cCiQkG/Cǟ]ӎ>'m#E -IPvx<1?j*(8遳iRda+*=៩ؙ ~ U I%a/]D~ R7~6}D*g_%I{i?>|xY}FX -@X팬߀beZq"ߋhw9۴0"A>?&ԇ&tM _qO'Qˆ^-8F9ؾ ϲ&gg1 nlgsLoM -ȠkbmU(2Xctj,?odo{Ĕ=ꌭ/xs"2?ldr51$7 R'/:SDpMR,}XA/n#{FDn]@@fxd7d K?t>uYEltߚG!KuJm .TH&mv^+h>uׯVL&R-;yp[3N V_ȈWς,EBWo,i%{ZETfЍ ΜWEaO+J[%va,R@/9j+J ޢs)YS*m[Q"itjat(DdѸzt1ƭo/it\^T{kX>Aj8X𼣁=v"3 7ylAMilIL ,&%#; >Md \51U> Ft:^YeTHn^@/Gqaj8SEP~E8d`4~*.F|gѿKpMCɢ 9˭3m?&pO/o+g${' eה+tz }w7|A~ZNk%)]rŲ.I}B~y6w9;-'RJ+ν5GԈCx_Qw#P^NZNZf鎃WEְA*~K-]jV%/r11yzh E4EczJ -}o)mTfG Vlz#:-T= *hV* BF<Oڡ(ȶǔkiDvBPkۓyp!;1W}6 m'WVqP݇*&- ?rib)InN)Ii:l@) zQUG$ w3z K+~==3hkDcL]OL1Vn]D%|s`۝Hn'1v(/VO\ nV;?#)PZ'ԅ{vYz5Bځa$3Vׇ49F.X=\ Wn.;e`01Z -&͜%_Nn l+rB"Ts 6=85#br|a -$mMNsÑG܈zяӟ:s*GZSy;SO&YwX{bwWu,իKژ򬢍Yzaqgm-Tao[UJp8}YhтH·tM ARt# -(R<}Wi6Z|?V@ 7w' 7endstream +xweTݒ.KwwwoqhCp` N}gfάs3VO=UOvS3MAR`W&6fV>"AI dx7~Bw]@W@dlTq+VSM񟖿B^ybm~pفAA `am+*Ih4 3fjgmP69`g?3_0cG6/#lo vX:\{ +X;ٹEn3=vqu1svtgUOW+_]{9ü{].W_LAskG;{w0GgiX;X#d t6üc՝ O ;?8X,s綴v@`kPd,6rA ; 9 `@`Qߩ?'#_5O{ZN h>`7 뎱:o@{k;bÿjA# +|o ̬0ZHY{U]ͬ@Nmt09Y;&6ViXY:OpHSgTUWc;(w]5߉[)`X!&0@&vn{B66"0l\+]=%]}2I3_ +t006ssv~W^td6rm-g sQZX Ȍ[mR!C~G*~whd@|Ba=j(:ج$WR^B*Jh{'ˢ5NTNaEgєiقu7*I\[ʐ9pM$#W.> uO(U+<`XFjP] @/y iw ڦ]g + 9x*̧''-\%k)+= 3U.ABʤϞwl1:Y+45Sz:P;C$)yS"))PpLs#N=02OO݆qfK@,UEv:_Y~p}N'/sz_E΍L5 +zBE0ia<+ +7%B@w6//NѱndHRs%13=KP.#G_JnHR:yTdRV^,d4ўH;5_¶F7bC'h1󰜣Kh(vf8ɿׯ!٦`^wqْٔw2+L@iQ.!7G`^Q!dVۍ@O ݫL9$õ) 3mx^Ƞl̋;ޓr ϠWg}o(~DeP(H%*)W ?)kHdk ib_y\ٴk7ǿT-QnȶCR_N#9W[1YnN t~5yMy Ǐ.0޵iґ.k?7OBBB5v3] -_Oc޹Ék޿ip|8Pz~O-=D`b:cA !%OR"jF4{@xT*eU#o&H+HdO$K0gM^*km2GlVרBX. +QhIR|nr_l3[,+f9U+dhh34LI"dC{, $6{9կv1D8b!8iVnf~A@*jP1;[fz&hF+^+,LCNH[o1Q[}3=vk^vKH[]f4E}* IrU +LAh],792A',f+4hnJ~&'3Og궉]xoH9D9A>tsX #(W+L)+"^.nrRڇ1,2z{^(A܇[DJ#xɜQ6v~83 LϤd#IJx^ëԹr,ڐZk<Hx+wB.S;R %++byx^_4b|1s,k?K$^zȍK <ѰIa9`ƼfۮB4*[0q* ia r1zo*^~e[)ݟ"N»5.[2Yi+Rgh@8}usfބrՍ~7sL\hAKȿ_T\'I/rB5X5s] DzØHb+5Vfc L¬{$}ao}*Z]ڦgI>ƗV4ڟ\WY#G3%Pxj 3ƎI6bl^Q:Rh'EJ2밉/K^lKXKtlv}p%Vs# ( 4rժ˥It.; Zq _jL͛Ol?Rk4Z؇>S.g0Ҙ[aXʴ *R^$ӷ-/d6I*gTQ{\cY +lԢr*4"d{gZ]FVdH@<:`\92<buҠA1wR^8((2Qr|\[aO/gQL;kV]S=͊L\P9S Ms>Ys7R2bV_axz$1>L'43xw:TSCK$z,pFP~3վ&_ LsƆD?+Ž]"\q/֭\΄}[xW6|W7̤Dx&Eʯږ}+erǏ&qjJo& /<j"߳'L2ÐcݛT;,X[8XWDE: d\qiEY \}L=V2cE b((Jڂ)/ b"=[(W?ɕ~"۶F'HBo>ca\EށM7:fZvѫ$?Ro +M!/~t7Q"w9/cWsA}'E~`0 +'S! +*%ELe3[ƆXEN)z!e;6EdQa^l2O;%1ro{/zǶiIX.R8o1hE}+s< }V$ڵڠ$i&6T# +ވ2aGxHFe._t#YŎq<0&vm*5ҫ\n ᧱ŘU3i{T$C+}v5Ҷ?\rI'ujgf w28z+֨ٹevm|v6!S(!JۤF 3c6Eymܲ&)]odm'Ϛr$}k{ϡC5 +?i'@}痕CK$ţFTnySe@O )C:d%~'%!;)--ҷ&".~Շ}η3U&]&duhe\P daPns*:2Z4Cĩ À"ҡ-R\!0QԞVMz彛9"+TNOY1 p4?che?_"\ǑkNSPpsWd]B8ew҂zk]E얤}lˎIU[l֫14"|K H䒴vXJm; KDE fL ֔߮wk;oOL|Tc[)IwdBBIkGEdʈ@C +{;# nS]@,|%, 㤶vi5V?p/=tY*,GJ`M%³Owj}L<6``JlGca8FXg4(Sצp.fJ@`Pof eASۘ+~Ք\ZD4&%2N)~'qwl[buпR{RCjIP\?Tp)m~iC~Vk5٤ A k j|~eڦf3P`cM׎bk*X 50Y*r3}P8 6%bFA5: uER4^ER qSn/[]D΅ fp'} ezyֆezVbXrs$or&tOL i`3n׻\&ӯ0!DH3pw(;ށBαC`ygmHV\#$J#\tjcǏ5VQZ#?}j-7ÝϺsXƬ>} -bէ 3U m/ʼnR5LxXdoH{$ /`|чi9I1^.: xơ(r*=)Vmrw E"RxAV +)qјIzru J#`\/K8HB&7:ϓZi&i( _&#;F Cdb);b@,H~d^l'Q-@G'ɑ{ggPUF~; "챸%13&cp{BTɹRyAڃ4{jaZ;:"SAV=PHkeVj6I K +g4bqlϰcwĐ$qąQϋkGyr2nڋ#]eܪKc$Ч _e+nΜ9hgH뵺/2 eXK몃/=z 7D[֪-"Rk4qu6'ʜ ET4j=5C\ bַFgvC@˜$wu@{,VmL Mtπ+@ǼMJH)e.rЍEi}P>P~4[0k /CƁ09ˁAż9w δMemwc[_K:>D{gS: A7f32&`y!9( >aD)tQm"^ ]] D癊 yb~Τd(ة>vJ 1zM1q^E%qR`l鰑$fZ[iҝ铺GnUa!ToFljc%-ud}Hc Lg0ξOvCyCbg &C- +cZ(m(z{xE 4;^tGއ;L;߹>ʢ2uqvn;#-BPKڧJ@V~3yfƑ.ނy ?b~*)Gv򻛃o=shf( E9kkKa5꥜0$}jvj|s]󜽿1u+4&əv?T';fw j^@(E;yw;N"%!OZx[%7q{ψTl3V}[U$ltkg4 MLT>l%pR%+V>R +aW&") +JJy~,r Fd9H5N+$=DcK:2\/=f6mG!Tn'V#=ȵcB7G(* 8M7>VZ7MnO~fa\ >ZwG# cx2b9[8N&jn2ķi`Ӂ?KMH!Psb!7cj*c/X<}$Jҏs)x3D')Q+G築{ΐb9ehڅ[g$՛MY 'gl)])!Tsos]q"ԋ*g+rJhC/rW%V) RR"8Ud1N1 PX=^@:= D=}m ʐ) ʂ<:h) 6È<?3KG!8VG\}"9͉n&5sEḢOYX6HvR*3V0 ^QBӥn7^=_;TRH:VW>*0|#i9 ^2peLd]sussXz5 ,;6a+5Ć +ٱ\hNj4u!5%m&Q-<НwfvP\L<$F J3os!"1@L[oewոMqFKky(ž1)@$E}%ȩ? S^rh_y: mc!k?hZ`Gy$첿ATF,Ӌ1xK$0x~F7J' I} )|D\9% {Z }ASO)E7XI\~r[ xo o2kŒݜGPC )v +#FvM{ZN"X/\|_t^!McڶH]SEWGl?ANM';E(U4D2(] c۔l,WE( +w2^| OCT'=MrYn`Nv{5\1e? VR35*%2Ok8tYID81"" g7I?$r/tάLÙ"? +CAU&=%aSHXY}_Kuz4-̧ eK尤w֧+mݏAI#N6r4^<+N>k/Mx&hLg:&WH@9Z-L̞Bkػ]B'sIDG{Z(amȝuEZhK\ȿ~[yNցդP%Gv #jh _;&<(/!)=XKvVC'N +7ǷCie)qeJYHvG2S. FEH3E<]*g'H0s;/ˮa%g+F4#VM,r0v߉Z>|ٻәBab46^qU*([KP#BMȁ1>Ԋ6ڬ>n)pe0,;~b},1zY4yIS +->QMT }J5Llh7,yTd5S:JX(ֽv_O-Sk'k_pG1*8+`/yYB| kѠ(*qbaݵTpUkL2 +nkLY`[}3CΡk4~O˄ҩGZφA!LO;]z/+`'_Y efO;ڊ_qYGw1Q>օ/@!;!)hrޏh;Hpbh[CktC3U^Eqi?QSfld)Rh石6""C>Β~S +{I=_Rvcn\,3&[a72L0J04d87bmJ 7~1$L }%ݏ)[lCyw]=Fl^WE!߻ke^q"fp" qLQ)Gm}z~aT'3d3&Z9#qejjCuV2#LmGxafqwn-S*b<7p*! C5@= +VC Vlp~3i2(V앩^Hdc ,13dq.݃{G'Q &Y]L I }ӫd%ܟ,=NPG!d6>-[ETX +4NΟ=|̼cs& V SY^R%<#IXD= KpOYIE wrll?v^*iy,C d_ӭ<#jcXmx,lʛJb2&|̌ v'Jp_ǜ:Y~U%@ ⤛d0اX yGfKz/g3"HdS].UTen=Dl`-\#4@\?2_I.X}h n4b +ܑ0x]u WUib,F̄cVhX3 NG.{ȗ^\Psf&<-9 vNsiFQt?PQ)2z(@x\CWhK*-g%- Ϻ[m,WuzAy;fk ["HkMƊus ,hMO̊qm%ra$hn&Q O)lCIF: 0}a2p@栓s Z5,V+ސ!+𑙻 VMx5UO@Jc\g<_-E ק &OvFϋ« +@ +4_'^5v6*I;AuPH-A|0LQa<;̢C Ԥh |bb. Z͞!lMe EB/* ZǜZ* jvcxSˬ+z+0ݟ-/h%"L<Gg:ԆɋOfs{+.ͭiìRs 0IYm]\7 ӏT/'_{9/'~[>,Wp&YGG6~Jĝ`&,k/}J{B}8pdI)Fe 1u#̪ftUSWN Nsyޛ+X pܖ=f> endobj -469 0 obj << +442 0 obj << /Ascent 625 /CapHeight 557 /Descent -147 -/FontName /JEXIBI+NimbusMonL-Regu +/FontName /ELISKR+NimbusMonL-Regu /ItalicAngle 0 /StemV 41 /XHeight 426 /FontBBox [-12 -237 650 811] /Flags 4 -/CharSet (/parenleft/parenright/period/one/two/three/colon/B/C/D/F/I/L/P/bracketleft/bracketright/a/b/c/d/e/f/g/i/k/l/m/n/o/p/r/s/t/u/v/x/bar) -/FontFile 470 0 R +/CharSet (/parenleft/parenright/hyphen/period/zero/one/two/three/four/five/six/seven/nine/colon/B/C/D/F/I/L/P/bracketleft/bracketright/a/b/c/d/e/f/g/i/k/l/m/n/o/p/r/s/t/u/v/x/bar) +/FontFile 443 0 R >> endobj -707 0 obj -[600 600 0 0 0 0 600 0 0 600 600 600 0 0 0 0 0 0 600 0 0 0 0 0 0 0 600 600 600 0 600 0 0 600 0 0 600 0 0 0 600 0 0 0 0 0 0 0 0 0 0 600 0 600 0 0 0 600 600 600 600 600 600 600 0 600 0 600 600 600 600 600 600 0 600 600 600 600 600 0 600 0 0 0 600 ] +710 0 obj +[600 600 0 0 0 600 600 0 600 600 600 600 600 600 600 600 0 600 600 0 0 0 0 0 0 0 600 600 600 0 600 0 0 600 0 0 600 0 0 0 600 0 0 0 0 0 0 0 0 0 0 600 0 600 0 0 0 600 600 600 600 600 600 600 0 600 0 600 600 600 600 600 600 0 600 600 600 600 600 0 600 0 0 0 600 ] endobj 218 0 obj << /Length1 1199 @@ -6577,7 +6529,7 @@ stream xzeX.t 5C4Hww 00003t7!!%ҭ !JH|;y{{u?05 ڜR60+<  NVnmKgN-" -qu H(_]A8 9Z"}tpDk _0@qy4H0 qdanN`g #`npk0B`{_g\;{$UWKo HXX`# v΀ w0;= 3~_o_ [K9wV{$E|oBr9l9~ p~' 7 a> -Bmhͅ[VO o B+im; llsZB`?-ヰtp7X#V`# sjC<@. ~2?\3ow5K'0[ZOZJˀ4잖$(@} +Bmhͅ[VO o B+im; llsZB`?-ヰtp7X#V`# sjC<@. ~2?\3ow5K'0[EYGNV4잖$(@} zV KjMl ҽ#gh' X# ?~?32JPVzq~+?, P> K9ANϟFB р も5`+~cvt#vGR9gk QK ak78^?N>-D0l0 uܘ='΅֫FXF˗C(%[Vc^]5@b E]jbn{\ުlT.YwT{zB ߵ<3G1=f93O+tҒkMc4J~,4-dZx% #'#ܳ;6SYHI~ROnf`Pl6Wa'#o},f,~b9@c+ϥ@0-ϻSmե-hV%XJ8&l#uT̑y=9!O rxH{3Lΰcv5 y,kj?Veȫo,Fgv8fA<= rGk7 č8;["$gQ&E$޼aP]|!zҾ&7Ьpʶ8huqG1P?J<6P}D!]tTV% W,.T!>9s&Opt&{%~°\bQg#Dj0^}eTMvV_qN:VT/ րC+s=|R,7.oVb5piHcwAQ)}9Xtå>{C5}w/4B**<O% _uh-A?3}v\"6CCq_o)YгR(Os=}Q>T`ٯ&XЕf$0|k`:0}Cƛq\YϾ@;gbAISeX7"4mSy#vj}v=qQFL{ܕbgtI!R8 `JJt}%jGZ#҄ ٝ E;X~H%ʯ|44sVjRnqS(ϳE+8˂k˧S4o_67]Hvz$Oa(wZjAvOU}{Ud DQutuу}r漴[Ech:&-tnؕ'a9T mOmڅ m3BaWhTRO?% ?14fP&}X UGs>!jDa%ڥ _Xy/}b\mN;6#Qɷ&̣PxP=J؆-#.>ןuRQ"Y]6ܚj\ -7LEH[lszmä$ gKI_mD^l5dJėdJ/iW ]2Q8vV Ip棹.?r?Z>&_)& _J֠Q׶I6|1zZ dw5Iy4FrewT3_Gf~ѵa4r|󳉽'tŬ*4tvHPIo+m+(DSj>*}SCu D̎ԛaѮzu5J|캄9Fz%[sio. ޕ]9/JVW[|^uY.-'VO΋_Ǣ1N} v QwW}`h67'q*\fP}>ĸNӎ$+/㘚Zպ0PFgլ/bbɤ `'v HnDes!?`HL &;J+CB$q?s񝭻_ya1T>p W{#:VMJAh2׌~ߧJzk୏z!:זel[tTkdSLnkd-TtwjmQWc_3ON4}8* -*.A~_LYsQ6X;E޽Q|xlCЃscC@B?A` [‘0'K#@؁)l%endstream +*.A~_LYsQ6X;E޽Q|xlCЃscC@B?A` [‘0'K#@؁l*endstream endobj 219 0 obj << /Type /Font /Subtype /Type1 -/Encoding 699 0 R +/Encoding 704 0 R /FirstChar 40 /LastChar 228 -/Widths 708 0 R -/BaseFont /BVBARX+NimbusSanL-ReguItal +/Widths 711 0 R +/BaseFont /LKTEDV+NimbusSanL-ReguItal /FontDescriptor 217 0 R >> endobj 217 0 obj << /Ascent 712 /CapHeight 712 /Descent -213 -/FontName /BVBARX+NimbusSanL-ReguItal +/FontName /LKTEDV+NimbusSanL-ReguItal /ItalicAngle -12 /StemV 88 /XHeight 523 @@ -6624,7 +6576,7 @@ endobj /CharSet (/parenleft/parenright/comma/period/zero/one/two/three/five/colon/A/B/C/D/E/F/I/K/L/M/P/S/bracketleft/bracketright/a/b/c/d/e/f/g/h/i/k/l/m/n/o/p/r/s/t/u/v/w/y/z/quotedblleft/quotedblright/adieresis) /FontFile 218 0 R >> endobj -708 0 obj +711 0 obj [333 333 0 0 278 0 278 0 556 556 556 556 0 556 0 0 0 0 278 0 0 0 0 0 0 667 667 722 722 667 611 0 0 278 0 667 556 833 0 0 667 0 0 667 0 0 0 0 0 0 0 278 0 278 0 0 0 556 556 500 556 556 278 556 556 222 0 500 222 833 556 556 556 0 333 500 278 556 500 722 0 500 500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 333 333 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 556 ] endobj 180 0 obj << @@ -6637,26 +6589,24 @@ endobj stream xRXuO{(D cn "d@vw'ݺC%%p?TE!h3J24APB& -j"vYtϽ>wPx0JQ$ `)+Vq!(r>RK$0H,"1(&Ա 0s$2-N(B9ZhB 1 Lzqڈc @(ZH( ~cݳ(091Ԙ80J QC40D;~ХИ2(4SNC'8FC DC2R+|DO>0X@h P)}BKB=u0$Ĭ=c%0`ȾϾb $Q -#H53 6D$nb $Ű%& (3Vi4AJv88*ɦz`~yʔ-^?V' X7"jidOuY"؍ G9)tv] "fol{ ,I!ڷ]XoO AgDj ۲EQ٩* -ycF~V_VW|{./}5c.c$q\֫ SoRvv0ʘ^7JysbTzŝ'b}[V~sK}BQdH~=΁{>g]HNֺS¬B'\}83,Y ?isa}͏9L8~{dr\K`QG+~VVX9vz9 AȰ3#2[BnM3Xj_z5o#K8?r-Χi+n$f%"$b}ycTm=~!Jǫrmc^*ң$?!}9*\0R\aZ-Tםu6rK?M2c;_)6LKs,n/jJ۝MmLWHH]=g?͟y'b%WL2S\9Z[oZ[Q}5x==`pw¬ut5֟rtO-)gs#\c*,eOٝܝ/!۳d:={la2eއN9_~y$s0R9ep붤twEdeSSI!hˡ%W=^v[>w7+EM(!w4wJ+903;6J!?eWws.R}KJ6 -RWG=3:%D1h*얳R+ 3Mݹ~ei5/Rt',M>ߌ.u5tQP055_[l]$KJS|;m /ÇDT#4Ci:' bendstream +j"vYtϽ>wPx0JQ$ `)+Vq!(r>RK$0H,"1(&Ա 0s$2-N(B9ZhB 1 Lzqڈc @(ZH( ~cݳ(091Ԙ80J QC40D;~ХИ2(4SNC'8FC DC2R+|DO>0X@h P)}B!O:@Ybz1MJHA0Kdg_1C(xBӈ^@" M7bZTX+Z4Au {tB% Bvd`Yl=M??苿?eJ/X,J54N2Ǻ,VFp܄:;mMɁu_|PSk7Q[f ˷Vs'?tpmY}SiyTQG׼1#gt [QK+{>|R>t{mG1mSa.\sՆm)NE^ +]eLW91*c}Nk>-U+MO>(2d$tZ=~Rг.|$dk]uکvaVcnk>T㬆|־g&}|=mo }R9R%I[+G]; dؙrCyo-v !u WR/暷nq% a9іyRӴەX^rgqM*Ve.&tCCc]CsV FIky j%%fg)LΫNңH"ØYw ^IvYۋAѲ)XEƦhoFܺ{(VqK՚-c%U Pcendstream endobj 181 0 obj << /Type /Font /Subtype /Type1 -/Encoding 709 0 R +/Encoding 712 0 R /FirstChar 0 /LastChar 48 -/Widths 710 0 R -/BaseFont /UCJFXE+CMSY10 +/Widths 713 0 R +/BaseFont /PJRMWO+CMSY10 /FontDescriptor 179 0 R >> endobj 179 0 obj << /Ascent 750 /CapHeight 683 /Descent -194 -/FontName /UCJFXE+CMSY10 +/FontName /PJRMWO+CMSY10 /ItalicAngle -14.035 /StemV 85 /XHeight 431 @@ -6665,262 +6615,263 @@ endobj /CharSet (/minus/plusminus/bullet/arrowright/prime) /FontFile 180 0 R >> endobj -710 0 obj +713 0 obj [778 0 0 0 0 0 778 0 0 0 0 0 0 0 0 500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 275 ] endobj -709 0 obj << +712 0 obj << /Type /Encoding /Differences [ 0 /minus 1/.notdef 6/plusminus 7/.notdef 15/bullet 16/.notdef 33/arrowright 34/.notdef 48/prime 49/.notdef] >> endobj 172 0 obj << /Length1 1166 -/Length2 12360 +/Length2 12491 /Length3 544 -/Length 13187 +/Length 13312 /Filter /FlateDecode >> stream -x{UX\]-n$8  -  \ ݧ>V={9_=[u6 1Xeb(Y;9A>͜|FhttPk)"mk;ܜ.N!wB|\֜c$z?SVBIA0yA\$&L0 Z{aLD@cz.geym,V޸H ?bH+Eh|:%4/v>RkכUΪP~p&IبSGRMBTI75xo5/%{W",x->XTu]ph#~㞤Q _:6#*wZF2iuhNGrr}d_VV hHj/=9.PQYǜ5 QGx"M,}9WɊCwe[CȜ_.RJC Ns,]{.ޓRI}kr N)̚KF$J%Cg/}$x:8scyUi ]68dύv\qԄSQUZ}DvQ,[ÈLmv ]U-MA`oqdĂQa-:Aܢl<qCDmSCkN@d)X;XpS?X,i^7$Ϣ߂ѤFvҩ%{dSe!A[>[M*Yթ㼅V :j}enO'O%$:wRb̮69ڬQ5")D|t%P7ϕ2vJo453/4wx*3_SUzR{kX`$;IU7j7pI57mɎt#Dg7xo3m5Kd 4ӾXSƭ9|rpQX{c/SWY&EX6Tq6B2 -qbH[xdFjZ8_ݿ'$ym+⢧xq{Y".hlmFnonejbڅc\St6sŊs$Jpe7zaցg[jRŴcFŅ%!$!m7,|53ʄtUx`«ɌO -,E'ofV6nl|5n/GVuPWT71D? sd0[ܶVܠTmؤ[Zʆ\.sVl' -q`WlvKzh7kPДuGaD/yR(S嚩ٲ!=?`R`p 3ʠ3:=7`=jO,w8''F|8Ve}Ǐ&9f.FVAي ;}”vs`_cMԔRTڭ3QO^&CF EYOtD0<'&'}.Rr$ XD"iwЈQo/aqk1 -%F.~aHԾN-t؅Y4oI{KJܫ`R;2"&Cz,4} I0D&g6b2c{axF -S\0$?RI HHK,O s}u1%ݻMqlMx_%h|̡8|BߘdpBA &{NhI4\M³(WB[ghz!.eQaa5`>O1Ւ)u=vHR}>-%>!LoBދ_jw%$NuZ_6 F":B{wũ8BR5墿sK~ǹ [>Ϊx{uJo:%[1eٕ*os!--Y/zypbw:7 lւ߾Rghߧ_27@ r*OrwlF}F[6 c\=כ4oWKt@.D/'i~!ql=M< DžY+>ߗM*@݄xuAYBOMFGq-(I=uVV-#;-!шe2[ H>ٵyx'{ ;H} QxgN߄Gg1aoJOZ͒+N1T+2nð8졄-2.kv&(. {ә ^ݼ7L<>8d}dV]s 8b[|.Sg GӰx8IH{E}&ISu -Gc?o*էAVT fIuh[Hm`ki|@)D8ĀE6;?-O(x0KdպgE$'j>p! 輬Yfǧ N]U"!6*yt\GzFdEl/jR )ECHG-Yϫ4)4J<-2lSB`}a9]A^g3kPj/.`+ee}8Ilॖ -kh)q!T JM7j## l+FX lqnkFVX_eRD3ۜ5(NЎsE^XD -!3v l!͹|qJ^w%@uW bI8X?]SC:* -먒]Z {>l 57T))G!Ѽ-͒ -ܗ%!&\HiZ^BzD/͠" - H'"WX̉ voHF:6z\̟;9lR*ߌȗ 0:~EfU N]qϡN/R*e?o/A,LNaFW -WV^X{Hj('4'c9C [++S'J nƀOS-WpSŬsJ@yA:1vWMz/aK5D}39'*_).Ti'08•&xKO  JF!Z;Բta9'. r|Mj>f6W\X8TG +8)B&uoj!)hAa-r }Nک⹘Ҝ˻}N"Θ{B/Ǧt׳<)e~H>.*RLM,1ژJEՐ\297+cyjP*M]Xs;O0{?Jžӳ)8yxNJ-Jн1Zض#[ap0bHQp[os{(7pvrT"Ez[UƱ{#5J:SrF*G!YW>, PcE nyG-8y%DŽvp0&_6qtt ě!vX{2ud7vސ/Իf6.y ghYC\{n8 R&0G[+p(0e@ Ѕx[@qެ>-)n_sNtj]_c2ND7IO{7 x:"v +#JaL ⓼97IRqed}~gsʠs%;zx75 myTò<w.d,gYYJ-M"Tk<́[ϠG5q:ֵxI.ߢ(P+QmAڡK"Tn&C9ꌛcdXȔ(N:2$ƆjlK -z-M/ x|ԳI~=Ź0Vbq& a;6 b( -IhREQl& ]k~3k 5{2m3 Utw\z9ÝqF?O䌟V[ʟS3jJbAlup,r h%%ݪtՖ2w9|;v"&fX]b{TQEZIm "CB7qXEdwEhъ@#pKWCpl_X&l9*x⭉y 9I}ZؑLқ'MJl_z5L= ~JkAb*JNq*{_ޕI󫷧Q9W6H?@j}~я7"f \͏ˠ'ҔЈTu2Ŭʕp.zn6z_>Çd5Lu>5,61J @ -7&@ۧ7'Bq72Q^#55vҿߡ@ꘌ|) vnӛ`ƉC`c] ҿ]#IVm9<UIU*h0%?ICkVO pk|+o+dS{4d踻=fCΡg{BYٛZ-(#0O+%`O8˪0 RO,`;Bʧt~yc畒jc 2V3vd M"5e~+^VAupWl/bQBƖQέs-v<,LӪ>]JY9Q!w In*@ŵڔNgjb[&MIe0EQw"^ԝAm{ȓ$&)$#r@DsW?+r-nQeD1N؊QL]1F҂m㮦tπ}'?VE(=\1x$sSM|JcKSd_ Vpnp~ -&B߯Q}o :4Ay ztF3lSO~\fO6 RL64PBw/wAAr1[|n³ 93AML:P}5L hՂWTJvwsvr\ -(UHYk_4yIV  dl |$ O瘹UH;56Ϙfn7hATQB^J5Xi}G~:dҥq\[ JۀQòq oZ*^JTѤ\ѭ%1mnk^G姘AHz_IFD"}Г,k@/xh0 Mt{u! H3G+T9c-7i^HHTD. ђ33tp=J5k7{K!nADDggy16 !IqD@5gdu`ʵĤrt'.wBpbWSQ? .y^i76 ?6b!_1LGΜĎ)Mh/*+V>*p/ch$g$ߨopuJ:-Fd -#D?ʗPRI\"-"w,W.=qŸ}ƑQ"-}gmjuL +3vݱ(@ퟗ uE( K}GQjN>Qhhۉ^aF1uLJhc▍!XBi7TijU]AuIݎ kf -ƦۦE^H'9R 1%[:-t5RCϭ)D_bHH3a :;P+0MR[Ù̡9نv2~] -Tra04*QoJwcK LkY!dZapÒBř:`+.R(q̘PATW2\ 5]}u(y4tBB ԰d[@jh(?cFyIZ_yA([ԸLH.ⵔ)u%"msM0ZH$ZPrwGpH+#i.2N}Pl{\Kb(0pάcpm/̗øS3z3%JKNp@MBa*SgV签;DfJa߇"OԹ,c]pF'uozYw!'2(kGy:9xL*yGdlD\FYAM ߩeU LU*x.dz%b^/h%Fj_M$֍Rռ:X -ﴢf.xJ^W$}hV@[?lz>jD 8ṪVU#mtw&Z:N&H]'6ر&^ (!ODrEE~# \+Fedx -~-pv{D8!iԶ 4 cșl*-)=_?oY!=O[wQD?}:8~hΕ 1ҩ5'HiFXCRap!xEqX-[p I={ :Ր%?3x+vXj5ȒF3o]!k_Y|7~j/K}^T4$W#tF"P5p5[vR -JAHx75.}9 )[ᥡ?t8As} !~݁Ѧѥ-<4_wMH5{8]JKgXv8+w9H_7)$nۼ駴P6Œ gu2 V)q~_-Y%t'*[㧌%u5Ŗ_iCfpnLcGjH^:Ġ09ZТռMfS~Gť4&SE1q#oz&р>}?}!!mI6T[%%ϝޟ68c]J+{$8Q,|Hc  F:_Nj)-b[>IZCMP:gbZѐ*ەɃ0+MT9mSU5%%vxS3b.+.!{6ʴOyog*hT}\۵a0\k3e5D\-2:6ⴛfKX!n,9S\4T@갼r~:z[[7O=caeuj?q-+a<;O¼,6OPys _=>Xc^w%tHZ  (=dI 5X_QS mx1^ْi2 g)+[_k4xT3cb -Z<E0K;9$0["dPm--mlׄ)7_M 9s+0xVd6iyNBq /SiCs^CL\=.1bZ39A,RN,l*ع|čcAα -[D:ϋX\v-w+,n Zk4#1K/eZ {t'`\3 ;Ok{w^a[BIr0\?]JFȵhl^g!9%T:; *%%mAi/LCy,44_5Vdc#va^ zb0$Ir^\ͅ!AmpCS@a~("іNC#]̲'#PQ,Z$ωJBKLtU[Օr -bm:sNcȯJsͪNm7]̄jql+HM޿AOX6FVh`G_|B_qendstream +x{S%]m6*3wFt͝mTڶm۶UJ歿t=>ݷ݈Xkc9vcf: &/?a2fM&&&f_?GjdcmtY}+ QMBCUEkgJzlzN?N:-*o_d7kc?Jr;&o6w~YG3C _bbg?R k;YZM@"oef?QP29 Mnl(o`ד gfg7LF @+ 6t#̍lt­.v<Os(?|:EZ2Xs&fʏWiˀE~udFCB ;cFfNjI>q$.P'DS !x8<',ϯ;Zz񿐓VZe2I4L]Moqi@g!Xα_+wd7ˋiYKͨm>wVmu|@xӲacj7*T`I)}:nnH/)S[=iE2=F QDX& +xؚ;oTbw7klZuu}1)bbw,Pf?lz٭z;!ev?*Fİ᭸)^[@rFTў􇥛tVV xb/ƫ؂瑲E1>Bu$3P3 +͔w\҉ tZ_ 2Z/yǴ0*,Je +N!d$ +K03*M|np{)e +y0:`nhE+`xcҴ}O^D3/ГIJقEWTpr7Pw]]}(Ǩζ, ǃRzr՚pFaLb@Z:ShǤ*/nZ3=(Dz!;H!R F/2|C+ +^f+,HL8У˱H-јO|`*wWZqo0Ar[]VL^dux +`ΠA%!#r?[ +GmfPmwE/o 7n@/b{eVB 51>:: Ii1%/֒}A &CkvJ\U +~w{Ek +WK@ _|ɻ˪xL]鉳:2ǀE'o}b!R<Ų<谍3[Inn XRR p)CDb.Ÿjq̛TQEK3z"4V@)mAXÌ@m <`ܠcF`'q +t.>HB'$D"cC:1۫<ψXU]a=~CDzLX !Uqڃ) KciC "sPUnQE//hS^͔5X;1=X2Fbg +m>ص- &ln XOuIdTvC%}fՠP. c6|yc51I/ɺȍvDf/PL|hWԑO7i1g_r?CI +g_j0crBY~JJ=0R]ڸeFHPS;Ap*M&Bʝ׳o!d.k{t`u,A\ӷ%}˝vd FVO7_eSͲL);H}vc@))ʲUh= +3T&~8׳""D&%L[& 5խ!aƢ[U\ʯLs +A{}2XFҀDmgMy0B&T+ )@)v+,Xxg" t΃T(Nڡ`?L)&fOy]'Ֆ +f3g}4T܃Օ{N.kA҈Uj\-iVG=mUtF㎺&Wq~|TSbjp'“kEn34gy 3%ą&bׁsU93D6V+}x6yJՔ'>/9Lkb>@tI7Rk%:x*֗p&CK7fCmnv.vk{?[dkS* b~9;x}~KIOOМG@WjEK$n}ŰHf a~/Ñ2Gݵ]0JT3L")%O9VO{Y:e(*N\FaQzCVՍ +0?M;8uR{aYe2)Fk%:;+J 2}~h`uДDx 5h^x 9GHذˎ3y|rY*R<ϹL'aQn8QI Bߣ(t>GG RvH{M|$v!WZȓAj&`Ңi.o `rqБz\씿]t$κڎ Ţm9/&6 E]!4jgž QDfSZϯ8ʒQZ,a(77'<kT.Pzh $E%^N}D&ʦ*O-ĕ$ͨ-=azm-\>[C3db .O J8m^D_8!p PwԨNQi\R]-2sz|潆84_ĭ@P aȶ= ]ˡ1<^WM/ +| :P[@ 8*k<-さFn(r[j4.p΋j}L"f{1GkX\?P}2ͥEQKu2=I#-t&B6?ViI39;,køclcEimr@7nq@#7Uwa?mJ˘>q{Dvы?pvOҰAoG,CjU(8ңPV9BK eq~k;fHdFNfGqL<7a3NJѶFUڮ>[,-R./f𚆻³?0?$v6?T @ +ȞD'((|1VQm溏aYNFc[ 4E M8fz3A)=H|^s?;]Vs\QW>Wu](D~͕͒ q%PV7 +zH +2ͮ)STL\[49p~Vr'6 ?MRJ4|}\3ڷLyS\>oo9*Vd u 4J5wGnޒZ%9Q|\rLn_(]bR!h|=q{=O"(G’s|-Ca#,̣ 8p2ȓ C 7>v9!5wNK1A:,wzAD)TKQY?y_.}CZqAHP1Gb>> @G"| +\Ie8^kG%K+[,bz1W^&47b{SGϢlfd1|o~NEmXE\iQs\sIR*vzPrmݥ˷=fٟ<U\(r3aŵv6h/ft(q+ |> Yjb@9V ~KޡVUE`.ڶR +Yk㳢`^ Ze!{%z'zX]~?ɥ0#*'ĝe1ػ3mJ6r*Wy+"KXi|;@ɕXzL"Ԋt%wa]M_f7j掞Q|eU0'$\k.Nɼ + +2KF%=[PKhBm\[J0圤7ezS jep}8ŤwUv'gXv6V _\>K%о~ޒ"%y#d({̺_N_VHeF艴&7z~:Jqoqx Mwx ?\#4MA|rL +\TH&tS/Íj+EW^zrW#xRta &ʌBqMtigkzBӈpG$bN)An읙+XzT}UT=/\: 4xפ2vlN o.|UxTCHIkٴl Kh]t3ĤԛN\7#{`~~=j`|=!`̫Y\, NYkpi'clX4[.&7$z:muc[ JT/=8c^u`tTLb6Lm &*C+=:֋)gv][=4|n< :-N*pu.a >,r6掠2v$0,A;q~·jv}րGހ>Tm0d:B$w<3$!cVJeSNXdVՎk߱^76Yh˜2Nӡ\/HQzk|<6k}x ,3}{r)"5YD|k8lP*gXVn, RFLǸs?J uB ք+U㬟̩].żlgٮ/.RU|u_ߤ 'QSZ)vX4rߟڨt^|1F7ZN/^[+<=!DZVۃ)J\j"9*|ӐiÇ'["ß^ ,\6tNirxNpA$ a~YSY5˘D;c V0Xc"SWϵ_A ,7U5s7~YmYA[XamJqAŠҎ؛)PiG= &%xLXs|Uk8l̫s2R>_lli"hLA_g'b 55UtJL"!Ǟp>} Se%\?1=/AIDGr &{z.-,ۈsÈ<8NE.t*$BcՙL?7!ortߺ g ./|(V%Pbl{旗SfP8Qv&-*_.D8Y. /:C SYscG/;sqSPR,KHm%4sTpƲ&߿~E Џ+9!!/pX: *䅘Wd {qbF0^Jђ(ZE-SP\ оx뷻M[ i[2Q3KGU4puQRԻqg!S-a7XlV5O" +47Ea== )+;^HdeߩćT`g}`X̄PЀr9XO*V.|.W\c12=tY`0|1Vx/}{V{;jl yzU@A#μvl|ګ3h_ ;_J .mߙ1foE912榓H.uy:ԭZ 2GȘ!Rft0λZw#g#!.=ˑ 2p0/BRnHPI+مPO}8ލŤl~rn)]G<[M֎`y^NJӈM-MQ @J4k[ ~$+ K 6 ϧ z_xp~__w}/s :g`HAH5+$ϝ?΂PJN &r9O[®&kaq]9PkyV2ft[{z,k~{UZvXhm^)Ք*O$-?.܄(۵R_ 5ڗ'aA:mF.~B զ5('xDNwT)wnhކzC [º#S +yB ?1Ь/wPqN {FEz"*dj$Mf_d?; .?0Rx΀ +&w՛Mdy b}& +I+Ɯf HZJ쏴`7T蜱-(s0F7%«,o+g7ݹwG n8ϱXzw6]!ӌ"UiD&)R&Ύ=ak3i9 mS{ԡC&nozw5~4* +;';7AT_7PL]q1oozzD9k |rQ$a!T6G c0NF w6;R:~W_9oŜdP#5I$uZWbS' Hw2/mx_1Eo(~s 층 @kgGՐHMGU $/(yj)UzƩxM\'8,B3e2OI-yD"v/mNul]AS( #6\bk̬{p'8XW +(lpA{?H_RWOk>Qbhw-Z "qMNe<:N BN3ږx>M#y3:%ͺK'":b ak>lˁ%e_@7( Q{*R$bggE/Ӹ^w:;n~;-yZᓃqxaNV9|tP$ \}dW/.=$-<1SBHzo=;{h9 ]Z^,qLEz[~ow(#cz^d:CcJx(EVVG1CVc>OXw#k5k|1o.4NZ5քK+ySe?]Bg8۽ +MJtSI bƴ{l;)H磷ْ{(4p`)Y?qciga>maf$`Tz-rigaZ>/i7I:`.b1k-7 j"b9a-WxNg+ UTq!΍aOh藘뙦ot'ـP0l!$˴ Eܴf}Xw!3S^5 ^Kly W?[8`1qH*'~XW!>@^@~eJMI^*Q'~y$Vj۱ih)RW]0~ +DC+MFsd;[E].&RbzUV2f_N?񕛃)Ja#Xv2Tө[= _2_:0dFCklOO7r*%i; ewUʍdO)u *vD?c'Fs2+si^:|K9V; B+6JJ dW~t1l(@줉?8di] txǧL,oi[ ?veMsiT8+~%y[i AZ+(1HN_Ji>0zB i!9wX[%J=>ߖ`QlEy|Yu OO AaS] HEZՈ=cXgtOQ^Y vt|"iX +$1H{ Q`Z-U SW}Y{ meiDjBm,_-Ӟ餥d]+GT=w,}"ƞ<ٕRM3P0XƇa5Q> )+)L!ikT_J5.X* ]&Jk/{"0&:`w +J_{Ԫ1;AwcҶA|*0TʄUo 1.#B]==%gɣ{^Ymp>e07]8>oU^ҹI~ЎxKJ213oAO@Xdzx?EDnG?Ev`U]mSKv65- cdTyڄɿv&呹%+UGUV"[=CZrS' 'H!#'ͪGkU +psun6Mr$ory?r#X+MۜOb/wf^7\AOYP58o׾ B :WH|`Kt8JHFrr'T*%@^F^ƃTR~7 +UݫG97?7t;=YynWg;ͷ/֝S3C%*H0\rk_׉& 'j`_,FSde}Mԝۧe@̌EC= D¥=}5JXOLv$icy-GOG$,{vs1,**b,DL%$]giȹy \{r#0Gr%.3CmnBL*YݧOnleVث.}NN/uYX=T2t?"m.rJx (n.Lz8 8=fT^bl׊A:*u +oaǫ6y EGܮ!h[Pi(x.$a" ^̧L'ohcooatpWp ;Fendstream endobj 173 0 obj << /Type /Font /Subtype /Type1 -/Encoding 699 0 R +/Encoding 704 0 R /FirstChar 2 /LastChar 252 -/Widths 711 0 R -/BaseFont /BQHYDH+NimbusSanL-Regu +/Widths 714 0 R +/BaseFont /XGZWVD+NimbusSanL-Regu /FontDescriptor 171 0 R >> endobj 171 0 obj << /Ascent 712 /CapHeight 712 /Descent -213 -/FontName /BQHYDH+NimbusSanL-Regu +/FontName /XGZWVD+NimbusSanL-Regu /ItalicAngle 0 /StemV 85 /XHeight 523 /FontBBox [-174 -285 1001 953] /Flags 4 -/CharSet (/fi/fl/exclam/parenleft/parenright/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/equal/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/R/S/T/U/V/W/X/Z/bracketleft/bracketright/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/quotedblleft/quotedblright/Adieresis/Odieresis/Udieresis/germandbls/adieresis/odieresis/udieresis) +/CharSet (/fi/fl/exclam/parenleft/parenright/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/equal/greater/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/R/S/T/U/V/W/X/Y/Z/bracketleft/bracketright/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/quotedblleft/quotedblright/Adieresis/Odieresis/Udieresis/germandbls/adieresis/odieresis/udieresis) /FontFile 172 0 R >> endobj -711 0 obj -[500 500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 0 0 0 0 0 333 333 0 0 278 333 278 278 556 556 556 556 556 556 556 556 556 556 278 278 0 584 0 0 0 667 667 722 722 667 611 778 722 278 500 667 556 833 722 778 667 0 722 667 611 722 667 944 667 0 611 278 0 278 0 0 0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 556 556 333 500 278 556 500 722 500 500 500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 333 333 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 667 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 778 0 0 0 0 0 722 0 0 611 0 0 0 0 556 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 556 0 0 0 0 0 556 ] +714 0 obj +[500 500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 0 0 0 0 0 333 333 0 0 278 333 278 278 556 556 556 556 556 556 556 556 556 556 278 278 0 584 584 0 0 667 667 722 722 667 611 778 722 278 500 667 556 833 722 778 667 0 722 667 611 722 667 944 667 667 611 278 0 278 0 0 0 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 556 556 333 500 278 556 500 722 500 500 500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 333 333 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 667 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 778 0 0 0 0 0 722 0 0 611 0 0 0 0 556 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 556 0 0 0 0 0 556 ] endobj 169 0 obj << /Length1 1608 -/Length2 11293 +/Length2 11363 /Length3 532 -/Length 12147 +/Length 12217 /Filter /FlateDecode >> stream -xtePݖ.-ܡq .ơ $@|ߙ3u_nWuջd?YY{S*08202@FN`C9Q[+Rh7t4&q1ÃH su;hԔ5h?W -#' 33h>́S UQKZA@# NFV chLmV0ƶ6&Z3c~ b +`t``h>G[/~Sۿ 9ؾgXm`c#ཪt47t6ؚg;߱w! p8U0 ]k9٘g -üc5 OY}rLYXk;6 2(6M= t{@4 ; C[+W I$濧2 "L?]}W/NVV - €rޘ+d_dk +iG1ؘK'4Q9L g_`k ,S5[5tNC@e.߼TdDkwꎪvy[0u3pؘ/37?myCG @if[?-15kOT mLW?KWl,RSkp&ĵzXU |lSBvx ^x.ڽ`[Qw'/s =i{6ڹ?iD_-mCdV?ܝPR+z%jgsz!wC2N^zFpO=0:<4} {@@@ *>@Z{QK@UBOP 5v625Z`ԳdnaAOD@sri*+dWT̥ަTQ֟e2L{5)cgce'$1ՓF߷}O!-LL9:DT51XX7y@ξ rm),ۯ.%!GS3e{tM4o[1WNwñlHǩyQnαx}$%kkՁÂ([pY@ K£tOe"}327sw?[-'O؄@-הF:Q7[Uӟ.&CKqX+Uhx؉ypV~ɢģQx$H#9JBQ,+9yqK/H4Y|.E!|qS9%t[=MM" ba݃0_+^3vfXDL_} -{VJ 0F嶷gHEP-}dN;cXGԯ?QIZNkAa 2v>qU1!.ȓUg>@ |ˠ,Rlpаזq8>PTrjiҴՑ@+)\dˌJ]lӱp]*UCh)ؘXli*o_G$őn,8jrshɻɈ7v \sVKf ʟd{pl/(^/H&b:\#Y㏫,x7&y@:ӭFinC3ւ+\$s&Jԉ꽾N^l+q,ȡ+*`ҟ3Ҡ`ޯZp M6Xn4fUFeN!wm'L -2%Ńz;Tbu -.@qHF}g1z?Z7?Ƶ(](J\ڴu8R?{>g(1_My>qHW^5 e# /R/bdX6?HJZ{Y*{(PElI>HTB& hRv$mVWDigS} -dL4IcS8کNI|QMj*v[\l@,ᒖk,v3 -ŤTe%(Ұi弜f9g̣< 7*iUdvf.;{2kAcg -窦'BŲ!6"ՂsP$>05Kd@Lͮn䧼 gfO}`aS@I4ͮL|aZ7AA[Ls-& -v'":.Oܿ>2.g X%qXG o@4RՕbp(Yxfeqv;ؑ''20 '巋%Q2obS~x;[{LB6~FpWWN*{_xzʒh|N㭑x(]kN2Nm H6 -u) 9jO7b:ʺͦc.iר53n*nfI~la}} PϢA38SO4❗$kZ\1HjIw$ܝ6OЕ.0S6NO/:~џ)ޠؘ^(>'۹R)ޝt7.*M -(Iipba-2N#V,ˌ;]j"]0-QޘBX^  -eO^SԵ81}.^ءjW"4Cp7`51lfpuQg?`CLUsJVe'n J 8n# yΟ^IFvy"sКϾ>0+[Xm}:M8K3㤋ߒC/A1HgzLG~h5#DqԂ \J -NJ{Z>bP;8|~nG\M P*#H 'Rx' O0M:/-̚$c c|' oZFM^X3(TPr&~Ò&հ[l>Wzf"J(d-{xu7P󊉛{v7Zji1DJ XAx$I &hn،-*'ZpjApVQQzpŻ@ezuWIܵ5MպqC9U: kx㈑h4&OBi_;R?*T3ׁڎ-oA#vIqCDZ/ (\sL bBt#ZGfw%hL]UWt$&1b-Q5Iu_` (d\>olд?Mg;XLb[9tvL9)[3Z3uOD 9\ ?^(R]rw'E']h[{}{Bȼٕ;=il$Pe[DDRȻ+畮j v*WB&g]Y'9Yu?G?$tzu_>TQk깜6P~%闺>fG(="= .zY}Κ"t<=0ޓe7hLU8Ji %;K5q@[.ޙ<FYO/;*'f >&Ӟ*-X 嫯ӎH_orv e<ʼ#p ~  rXis}nA 3MMj0{P;X .p( TcyM[ O"Iu(Ǭ/Zרj.sqms'aMft:*q6:XhHBa$5^!g9 W6z#☢;4(r^|iiZ!=ފAIGM76ʒD]5a(㓛3P/vbƐ[w}_r/s'VtEw\0l֝?p*N|Ӥ>=ALX{)'_D!-eHzT5h=dD1xQ+ -% % >R -SsIf}m5EQgiJ[akf#Hz5mpQ [e:9Il 5|ɚ'u|W*ƼhSaMꉆZ ,w7=SE .bBv[aP9==>Eh#_p݆64YQ=N[^1I$x -Ԗq+܇#O])K5EdR.r04-P?r$ 'F8j[ -߼.m IƢ~<d**I-noUJρ{m7`q~ -MƜ-–h;?7)H;"Dcky!-oo83eX39egXbpFDtK47NIz0u:@rpVFcq9y5\u0N@к@}… d0O}R9n/M8coDc>B7$Q>S_[9` -6r~#[o={vB]\ކ lb҇@n@Ԗ"*n -QX1+ǯM qCw%V-xhGjU~'/8??k| |8?,Y@ [(صb&ZMէ,~V3YeT_1;z9Ml|[>0M]),Y6pրk1'2m:)xf썪T׬r3ӭW+ݦEǔ`Wq3_T[2KS95,o'n:̽9/?SF}Ήf&8 JQ@F!hE8sXG =p(~\c4qknwOxT`z+i漹$c>c N7~/Ưů&݉r>J*,`F\Fn<՟"v,T\\/%% '};f$>p/d7##h`L_RB~Y &.YM&&|0<%~ē`}:(_jփ,]yS8) %x H%Ȃp.9+c+`:z'z~k)1@r19@ȡjC+ ?55!eY2GQ9&SA3 -/'+-P.'3Zw_oc[)B"ʺ+CD/eH4Pj.uR~;=KF4 s3]b AW잭'?'eO@[q,n@Dkfr˛\ >@ lڭG ՚#ԍ 3:E<"jvg7~ޮSY(MОB$EL~O3w_XmZ*!~5/X> 4C9[x[8etTVK~֔9f]˹~ddx%W,jsQϛb -$w Zڥs1/Aq.K|?_jGRj^XcKReߙs}š}>GtˑǟiImmGεs,%wd.v~JOJ٫JcTie'Pu3,Lbٟ8ri;(4`P7b=/Bp??x: *}f+զ8׃^؂`)Nn<+; U2Yo&՟HO*PzA}C{U:v|gN:G[̝A]&4۾.Qs>FlDȃnG̜ Zߍh:'Bp@-r5*eF-E)'zV\8x%dc544hrmuFXIY<ґjEaWOk. ߌߪ~Zl34^=DU77 -[Vp*0{%w`IAڰGtk=ȱmQ+\)['gS YLO5z_ycH%&5\ЀTAC^ ^5|kY7CõyuZ*EprٚPX2XA^~Fӿh;MquƄ>b 9]-$fE -eXq,?jf—$pɽ6z?UjiālNTa}AneQQou\1l |i*߾+WZ䖌UCRS*IzDABf6GٰChZ8YDO גS -vC(& jkq[qԠ{4Тt{JԞyw-q^g '8{k]W-aN.i@,`u>N~9-_Jzfw7&4ƌ4L&0W/Zc -lV908tS ~xݝn9#T\ǀC0]q 璂|Fk6w_gwA'.nK*67!^rt2(s<ؿ[l|26*8DXι(9$0<Ɲ+>UDzuQǩ 5L\Eą7&\:oŕ6DDD(8By^.}eMV)=g~;<_(2/V䐂 Ӈ3ܶYנUe8m褏MmqBs>wկL*78+LVo}.3ׂCϽlBJEʴ8]$9+^Q?nlS'Mip ϵ`Zr&TW|!ޏsA>lڸa:(=Wգ9lKn+`:V~]-f &A! ua<F⽍ލQ";<ԫsWnjeW%/u2LV<u{e5En9DxZ}|NڧT%R.6Ww~c-#)%ud'&yXGY޼:ԃx*gK-~ބdo_=/t#e -*xy6Nq0r+Qb"=4hYbr P_5.wo4&#HʩK1 1#}s0~{y1Rf -?ޣ2GwoZjDgǑVGiv6nqU;w^#yA@%$16jA=xy@ [J[ 㘕..+`oN9jGOy&]` Zamߧ_=@ qi֘"1%ɱ7TT߮F57ۻܶ+1hŸvueWvoNJ#xE+cn'^JұF6֨^3x Ç;v?#>B`VSR u\vХG P:àPxۧh3vtQ-^m#/W|~K>魜Beu(y. vLYwM~wKIyoI4-fܮdK<L/Ik4`axlLZ-6#@UruoY;gTsChy J;aYA8-{Zw/6G%#l)|a *Ƽr": 5s!{'d:(Z^#qxUhU"ߙjif/\nQ +fotaQ߶jr!g索\+iܟR45ܨ1vD*xAa..C"pD4: +BZ^_-B;N?O' U`N~?DvU]Y r`S%xAaW7ܟwhO5WE(m8a-ۻ (Ɉµ0n95΀4vu>1{U!jdkqlj(γu.e_TK2y)W~VX7@Gl|f ꙣ/%m?<$%,^"/F @!p٪Yyi2т1>uF-]QޫxndJ~HjtQ9GHh.yhauRlƫnWj'm4|">[ǐ7Oȏ%Q]񫚢̪~S;4r!X ^U&i |l?l +6LJ~AA%X,oHl\/Keß(P +!uBRɈHe.ĥrSvB2Ծ5Qr|LwYX5Y#lAcN>jYKp*|[$/x8s7 O3{ Y0H0>cFB?館ZŖ6FlL vǞZ> .%OS('߶^4{6\'fw f +mh).[!!H/tI.YW-˻1OKcҾ6-tQ|v.`NBn>GSx_ l+d 2H5EO{.lL7 [!3Ad* )fLZaagU> @ {cć.!;béлyZF3Ecϟ9R~qq]ӢsOf{] ex/y;*wլ\ޔFJ|WLw i ږS 5 d3'ꔗ,!uF."CaRzb4{|ZmOsI_ +U@{IǾqU]g(#%H"Ȉp8 n+rgAHз=Aϭ%rsFb?zNB=^"l&OIRQ> +~Wu 7S5I&EPGE[~CI\|py1Vo"9v4bn>_8OsCӀ‚r]8QBwB&h g#K ($50Ǔ2H\{-V#-J]|7U>*FJ8IqFu=h#cL굜 +[4}[HrXqOZ3LUIݐ9D%N3a%NE}Z$pܵyXhި{a ΠY~g\-P2l.} YπoitmwFQoZ~άZz' <맹G1ߡ3r&IsMti:d*U,De X٪AlSI:KEg^!io14f_*4~#gÒ[Giv2jB^컈Xcxe|5ԊB?WriHuu?!8ꖇ1 '1Jb_=NmIDžNK F]~'Saz|^ʿ+4xRՑUO1y[\ڪu5p0sk@=x-RSN2t&IS1&ږ0 +JYK'3"+b 2,ݒ$ş+3j"lmGu8W v + jM2eㄝ +Ǫe՗amyVէ?imb,̾򌡢]Όg#_`#wJ=> d9ԓa/&;LYyUyg^W$8(p@W6^ #?_IZ腕>qd5g )*\~=ҙ> G57f8]5Apo.~ 5W*>%?̝ +XCJm`l̯8G@r(yդڿ;FЌ]-!JZD;xq$ߑVe=Xh9`$bX:sZoMU-AS>myJ2h~G՜#RZL_ ]y zcS^O]{+{KZ(8ŮҿHO dF̶PYyR2˫7:pkc^i +TfH$9ca9D  k-b1M43i|jQ(AڻSW[8#mX߮9eKMZ'0ef7i'n|CsJ#m=:'cn*Č8TZn?4( h %Q˫0SGRE ׍^qS9Qfa GGXF8X*ycy$v_yܯW) ^=2z߉I4tSv+c)k%)y?%u2_M Uig&XFG}Zͅ MYuv83&Xs>8Ab2՜g2O {BXe*ҭ--F֬5yr sRw 9,lKD荂./h2tc5tX\ҲmMos2Wa2wzc@ Bױ*"t)$@7HFLU/3:mkXhwlv¯ 3l ɾIu[Ȉl:i:1EiGDFL|.=AjSń~~8ֲXÏ̞w`YEi:SnGBίI +œt/V{%R>D(3DFGWӛ?[y|PQ_ϞkNOoPUAr[NBwj P^qˋۦP>% $L 7#˿vR9g_AɣVM 7a_,ߋ +g}&; P?b0/Zwz';&i;ziˈ}הj+tX"5;>ʢS0_Nr4 MgyT'0 |D:&n>'p=Ld+&L3lq-L':u%9'fyrz#B3'c&:a)9(l!sZ`Yn3p~f{H^'2Vt8,2چsՍpߟϧR|< g"nD{$ۧYIG!@j!$'%_s-e^K̒9ҜUfIn }B;2raEv:^g5Sbz RWi/uj;e1Ѳֶkݔ4ꡅR =|iƃ[`a,T,NjDu/U_$U =e1yll$7tt6񲗶d_ωX&n`J[+c)]NgkP9onyi9Tm_ZFdgtcz ʪoCԃ=lAŏSnUֲ4l?F6ZY͚΍VV%3ޑ:!QoDLPe_([ŕyic8$W6n@q{-O \[Mu+r[Fm DF}`+rgĤU?}>opqPwsl˖^5lrs(#T + ^x+7i)$o,DLF4.o2[=ȲK?!:_uh1D֢ ʓz<N9' S ٬Erlz\YoK(OQf,wc~Ab9BDCՠ87A)&`yKqsY>✷9IOh)sdzƞ<(9AXp + +h'Tp)ٳzr Bɼ +Q;eV¦d;\u~EYƃ> D@?HI'mIz23nrN@GחʕZ;9ūEoK$9dvndC/c}۔;'8O)e1o3M,M8ņS!L֝iMGZ+mu#mO(iz kmߨ*џPN-J8  g?6R Y\~wҿ1ғD4^7r +"M*_2k2&FylbuI@6oib1{ +r S|-X=tb7Up=)F/N1bCkr9#ZL:I3G}D;6/Blv^49]dW2$I_wjaLv w%=>?,vr~k8̼%CSܹoB5GB~8^`q^X +: Vs6%ELZbRz\Jt0zPkIF<#o>t\,ej[Gz֬4%emM4RI +h7h:MƈC.\Jpu9nTM{y0yt25oD̅wOy: nbs>[m{>$UR/:((,g\|Q!?B>7z7Fġ rڒ\;2u-^h|0xx"o17q-|U-oAS<22_A05MѨo1 +fiPNB(# =I/LBK+ia m~I +*AEykR_PxqP=~"M&FR]{:)|% }dc8 +LLav;'d(y&(<| KŃCpnwhw=.أ]WzrDMiO4E&*0=vZߘ8NNۇ9-ABL :s f(c8H?+x֕aK<g'Pә]1BoHs Z&fY%l(ƒ~z,O\0c8M[ @0dM{a94A% Y]9|핿peoJ90MzqǔUߨaL 5>hΜG "FY*jxCO&B%mE 9ᛦĕ./t4GI!ycL 3#W'2`c:є#c?#k?TOm۸Nm‹Sq +K?@0 .b;Q \)]#i%uxpIx4Bk3aӰOnjy)y0uLFH2^aO;YTÖLB= bJb |@(y&9,dDwDf,A _\\qs:^^g1f*v9Cy8J.^tPYC7*v~ z1i @63rosdw*(ea"L?$*u)vS|\>wn`$=hH[ެ%$h/>M1V?!ϕN(;?-Re;_.uo~tzJ@iոo9`?DtӑQg}nvt}y:DED{@IRHcdU`rV+6"Z%ܰ6ןM ykAQv4>0AwfVI(-;:0SErk+~%6͞2,ɆjLaȂf@تN1̋l:ϖuJM%x!$ዦX&Qk 9;2en4{QALD8&8NlWN4n; /howjqbJ`41 (d|,~y9lZ~Y? OvH|.gI^(`Cwˆϔ/~aTCd#Oi34X +rTX9&ؓWg5SK2(7$&@S +Wg 5nvj,a=쥯 !707<ΌT†“] 9EeHw͊` уh^'I;A6IFo_y\ֳtw$e蟟920A<|yJT|p>$Rs4Yo+l+g8J eiiR$٣$ bG)XOw(x [wf"f~AD97{:Gl6 Hl1r d%90=<$im|9n!-vZ?oaA$NBa4_L`ywQWMS\~ės37u:"Cή$O 37?>4>˛j +'2&)endstream endobj 170 0 obj << /Type /Font /Subtype /Type1 -/Encoding 699 0 R +/Encoding 704 0 R /FirstChar 2 /LastChar 252 -/Widths 712 0 R -/BaseFont /TYJAQZ+NimbusSanL-Bold +/Widths 715 0 R +/BaseFont /KPKRMU+NimbusSanL-Bold /FontDescriptor 168 0 R >> endobj 168 0 obj << /Ascent 722 /CapHeight 722 /Descent -217 -/FontName /TYJAQZ+NimbusSanL-Bold +/FontName /KPKRMU+NimbusSanL-Bold /ItalicAngle 0 /StemV 141 /XHeight 532 /FontBBox [-173 -307 1003 949] /Flags 4 -/CharSet (/fi/parenleft/parenright/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/A/B/C/D/E/F/G/I/K/L/M/N/O/P/R/S/T/U/V/W/Z/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/r/s/t/u/v/w/x/y/z/Udieresis/adieresis/udieresis) +/CharSet (/fi/parenleft/parenright/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/A/B/C/D/E/F/G/I/K/L/M/N/O/P/R/S/T/U/V/W/Z/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/r/s/t/u/v/w/x/y/z/Udieresis/adieresis/udieresis) /FontFile 169 0 R >> endobj -712 0 obj -[611 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 333 333 0 0 0 333 278 278 556 556 556 556 556 556 556 556 556 556 0 0 0 0 0 0 0 722 722 722 722 667 611 778 0 278 0 722 611 833 722 778 667 0 722 667 611 722 667 944 0 0 611 0 0 0 0 0 0 556 611 556 611 556 333 611 611 278 278 556 278 889 611 611 611 0 389 556 333 611 556 778 556 556 500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 722 0 0 0 0 0 0 0 556 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 611 ] +715 0 obj +[611 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 333 333 0 0 278 333 278 278 556 556 556 556 556 556 556 556 556 556 0 0 0 0 0 0 0 722 722 722 722 667 611 778 0 278 0 722 611 833 722 778 667 0 722 667 611 722 667 944 0 0 611 0 0 0 0 0 0 556 611 556 611 556 333 611 611 278 278 556 278 889 611 611 611 0 389 556 333 611 556 778 556 556 500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 722 0 0 0 0 0 0 0 556 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 611 ] endobj 174 0 obj << /Type /Pages /Count 6 -/Parent 713 0 R +/Parent 716 0 R /Kids [162 0 R 176 0 R 183 0 R 214 0 R 235 0 R 294 0 R] >> endobj 323 0 obj << /Type /Pages /Count 6 -/Parent 713 0 R -/Kids [302 0 R 343 0 R 354 0 R 364 0 R 373 0 R 382 0 R] +/Parent 716 0 R +/Kids [302 0 R 343 0 R 354 0 R 364 0 R 372 0 R 380 0 R] >> endobj 394 0 obj << /Type /Pages /Count 6 -/Parent 713 0 R -/Kids [389 0 R 398 0 R 406 0 R 413 0 R 421 0 R 429 0 R] +/Parent 716 0 R +/Kids [389 0 R 398 0 R 406 0 R 413 0 R 420 0 R 428 0 R] >> endobj -443 0 obj << +445 0 obj << /Type /Pages /Count 6 -/Parent 713 0 R -/Kids [437 0 R 446 0 R 454 0 R 459 0 R 466 0 R 473 0 R] +/Parent 716 0 R +/Kids [436 0 R 448 0 R 456 0 R 461 0 R 469 0 R 475 0 R] >> endobj -484 0 obj << +485 0 obj << /Type /Pages /Count 6 -/Parent 713 0 R -/Kids [479 0 R 486 0 R 493 0 R 498 0 R 502 0 R 516 0 R] +/Parent 716 0 R +/Kids [480 0 R 487 0 R 494 0 R 500 0 R 505 0 R 509 0 R] >> endobj -531 0 obj << +527 0 obj << /Type /Pages /Count 6 -/Parent 713 0 R -/Kids [523 0 R 534 0 R 542 0 R 548 0 R 555 0 R 563 0 R] +/Parent 716 0 R +/Kids [516 0 R 530 0 R 536 0 R 544 0 R 551 0 R 555 0 R] >> endobj -576 0 obj << +573 0 obj << /Type /Pages /Count 6 -/Parent 714 0 R -/Kids [569 0 R 579 0 R 583 0 R 593 0 R 599 0 R 606 0 R] +/Parent 717 0 R +/Kids [570 0 R 576 0 R 586 0 R 591 0 R 601 0 R 608 0 R] >> endobj -617 0 obj << +622 0 obj << /Type /Pages /Count 6 -/Parent 714 0 R -/Kids [614 0 R 619 0 R 624 0 R 631 0 R 640 0 R 649 0 R] +/Parent 717 0 R +/Kids [614 0 R 624 0 R 628 0 R 632 0 R 639 0 R 647 0 R] >> endobj -658 0 obj << +659 0 obj << /Type /Pages /Count 6 -/Parent 714 0 R -/Kids [655 0 R 661 0 R 666 0 R 671 0 R 675 0 R 679 0 R] +/Parent 717 0 R +/Kids [656 0 R 662 0 R 669 0 R 674 0 R 678 0 R 682 0 R] >> endobj -692 0 obj << +695 0 obj << /Type /Pages /Count 2 -/Parent 714 0 R -/Kids [683 0 R 694 0 R] +/Parent 717 0 R +/Kids [686 0 R 697 0 R] >> endobj -713 0 obj << +716 0 obj << /Type /Pages /Count 36 -/Parent 715 0 R -/Kids [174 0 R 323 0 R 394 0 R 443 0 R 484 0 R 531 0 R] +/Parent 718 0 R +/Kids [174 0 R 323 0 R 394 0 R 445 0 R 485 0 R 527 0 R] >> endobj -714 0 obj << +717 0 obj << /Type /Pages /Count 20 -/Parent 715 0 R -/Kids [576 0 R 617 0 R 658 0 R 692 0 R] +/Parent 718 0 R +/Kids [573 0 R 622 0 R 659 0 R 695 0 R] >> endobj -715 0 obj << +718 0 obj << /Type /Pages /Count 56 -/Kids [713 0 R 714 0 R] +/Kids [716 0 R 717 0 R] >> endobj -716 0 obj << +719 0 obj << /Type /Outlines /First 7 0 R /Last 159 0 R @@ -6929,20 +6880,20 @@ endobj 159 0 obj << /Title 160 0 R /A 157 0 R -/Parent 716 0 R +/Parent 719 0 R /Prev 155 0 R >> endobj 155 0 obj << /Title 156 0 R /A 153 0 R -/Parent 716 0 R +/Parent 719 0 R /Prev 151 0 R /Next 159 0 R >> endobj 151 0 obj << /Title 152 0 R /A 149 0 R -/Parent 716 0 R +/Parent 719 0 R /Prev 107 0 R /Next 155 0 R >> endobj @@ -7020,7 +6971,7 @@ endobj 107 0 obj << /Title 108 0 R /A 105 0 R -/Parent 716 0 R +/Parent 719 0 R /Prev 19 0 R /Next 151 0 R /First 111 0 R @@ -7178,7 +7129,7 @@ endobj 19 0 obj << /Title 20 0 R /A 17 0 R -/Parent 716 0 R +/Parent 719 0 R /Prev 7 0 R /Next 107 0 R /First 23 0 R @@ -7200,197 +7151,197 @@ endobj 7 0 obj << /Title 8 0 R /A 5 0 R -/Parent 716 0 R +/Parent 719 0 R /Next 19 0 R /First 11 0 R /Last 15 0 R /Count -2 >> endobj -717 0 obj << -/Names [(API) 686 0 R (Doc-Start) 167 0 R (GUI) 687 0 R (Item.1) 643 0 R (Item.2) 644 0 R (Item.3) 645 0 R (Item.4) 646 0 R (Item.5) 652 0 R (NID) 688 0 R (PID) 689 0 R (RTT) 690 0 R (VS) 691 0 R (appendix.A) 154 0 R (appendix.B) 158 0 R (chapter*.1) 186 0 R (chapter*.2) 238 0 R (chapter*.3) 305 0 R (chapter.1) 6 0 R (chapter.2) 18 0 R (chapter.3) 106 0 R (chapter.4) 150 0 R (cite.Tanenbaum) 351 0 R (cite.Vorlesung) 577 0 R (figure.1.1) 266 0 R (figure.1.2) 267 0 R (figure.1.3) 268 0 R (figure.2.1) 269 0 R (figure.2.10) 278 0 R (figure.2.11) 279 0 R (figure.2.12) 280 0 R (figure.2.13) 281 0 R (figure.2.14) 282 0 R (figure.2.15) 283 0 R (figure.2.16) 284 0 R (figure.2.17) 285 0 R (figure.2.18) 286 0 R (figure.2.19) 287 0 R (figure.2.2) 270 0 R (figure.2.20) 288 0 R (figure.2.21) 289 0 R (figure.2.22) 290 0 R (figure.2.23) 291 0 R (figure.2.24) 292 0 R (figure.2.25) 299 0 R (figure.2.26) 300 0 R (figure.2.3) 271 0 R (figure.2.4) 272 0 R (figure.2.5) 273 0 R (figure.2.6) 274 0 R (figure.2.7) 275 0 R (figure.2.8) 276 0 R (figure.2.9) 277 0 R (page.1) 166 0 R (page.10) 366 0 R (page.11) 375 0 R (page.12) 384 0 R (page.13) 391 0 R (page.14) 400 0 R (page.15) 408 0 R (page.16) 415 0 R (page.17) 423 0 R (page.18) 431 0 R (page.19) 439 0 R (page.2) 178 0 R (page.20) 448 0 R (page.21) 456 0 R (page.22) 461 0 R (page.23) 468 0 R (page.24) 475 0 R (page.25) 481 0 R (page.26) 488 0 R (page.27) 495 0 R (page.28) 500 0 R (page.29) 504 0 R (page.3) 185 0 R (page.30) 518 0 R (page.31) 525 0 R (page.32) 536 0 R (page.33) 544 0 R (page.34) 550 0 R (page.35) 557 0 R (page.36) 565 0 R (page.37) 571 0 R (page.38) 581 0 R (page.39) 585 0 R (page.4) 216 0 R (page.40) 595 0 R (page.41) 601 0 R (page.42) 608 0 R (page.43) 616 0 R (page.44) 621 0 R (page.45) 626 0 R (page.46) 633 0 R (page.47) 642 0 R (page.48) 651 0 R (page.49) 657 0 R (page.5) 237 0 R (page.50) 663 0 R (page.51) 668 0 R (page.52) 673 0 R (page.53) 677 0 R (page.54) 681 0 R (page.55) 685 0 R (page.56) 696 0 R (page.6) 296 0 R (page.7) 304 0 R (page.8) 345 0 R (page.9) 356 0 R (section*.10) 402 0 R (section*.11) 409 0 R (section*.12) 416 0 R (section*.13) 425 0 R (section*.14) 432 0 R (section*.15) 449 0 R (section*.16) 476 0 R (section*.17) 477 0 R (section*.18) 482 0 R (section*.19) 483 0 R (section*.20) 489 0 R (section*.21) 566 0 R (section*.22) 596 0 R (section*.23) 604 0 R (section*.24) 627 0 R (section*.25) 653 0 R (section*.4) 358 0 R (section*.5) 368 0 R (section*.6) 369 0 R (section*.7) 370 0 R (section*.8) 376 0 R (section*.9) 385 0 R (section.1.1) 10 0 R (section.1.2) 14 0 R (section.2.1) 22 0 R (section.2.2) 26 0 R (section.2.3) 30 0 R (section.2.4) 34 0 R (section.2.5) 54 0 R (section.2.6) 98 0 R (section.3.1) 110 0 R (section.3.2) 114 0 R (section.3.3) 118 0 R (section.3.4) 126 0 R (section.3.5) 134 0 R (section.3.6) 142 0 R (section.3.7) 146 0 R (subsection.2.4.1) 38 0 R (subsection.2.4.2) 42 0 R (subsection.2.4.3) 46 0 R (subsection.2.4.4) 50 0 R (subsection.2.5.1) 58 0 R (subsection.2.5.10) 94 0 R (subsection.2.5.2) 62 0 R (subsection.2.5.3) 66 0 R (subsection.2.5.4) 70 0 R (subsection.2.5.5) 74 0 R (subsection.2.5.6) 78 0 R (subsection.2.5.7) 82 0 R (subsection.2.5.8) 86 0 R (subsection.2.5.9) 90 0 R (subsection.2.6.1) 102 0 R (subsection.3.3.1) 122 0 R (subsection.3.4.1) 130 0 R (subsection.3.5.1) 138 0 R (table.2.1) 324 0 R (table.2.10) 333 0 R (table.2.11) 334 0 R (table.2.12) 335 0 R (table.2.13) 336 0 R (table.2.14) 337 0 R (table.2.15) 338 0 R (table.2.16) 339 0 R (table.2.17) 340 0 R (table.2.2) 325 0 R (table.2.3) 326 0 R (table.2.4) 327 0 R (table.2.5) 328 0 R (table.2.6) 329 0 R (table.2.7) 330 0 R (table.2.8) 331 0 R (table.2.9) 332 0 R] +720 0 obj << +/Names [(API) 689 0 R (Doc-Start) 167 0 R (GUI) 690 0 R (Item.1) 650 0 R (Item.2) 651 0 R (Item.3) 652 0 R (Item.4) 653 0 R (Item.5) 654 0 R (NID) 691 0 R (PID) 692 0 R (RTT) 693 0 R (VS) 694 0 R (appendix.A) 154 0 R (appendix.B) 158 0 R (chapter*.1) 186 0 R (chapter*.2) 238 0 R (chapter*.3) 305 0 R (chapter.1) 6 0 R (chapter.2) 18 0 R (chapter.3) 106 0 R (chapter.4) 150 0 R (cite.Tanenbaum) 351 0 R (cite.Vorlesung) 584 0 R (figure.1.1) 266 0 R (figure.1.2) 267 0 R (figure.1.3) 268 0 R (figure.2.1) 269 0 R (figure.2.10) 278 0 R (figure.2.11) 279 0 R (figure.2.12) 280 0 R (figure.2.13) 281 0 R (figure.2.14) 282 0 R (figure.2.15) 283 0 R (figure.2.16) 284 0 R (figure.2.17) 285 0 R (figure.2.18) 286 0 R (figure.2.19) 287 0 R (figure.2.2) 270 0 R (figure.2.20) 288 0 R (figure.2.21) 289 0 R (figure.2.22) 290 0 R (figure.2.23) 291 0 R (figure.2.24) 292 0 R (figure.2.25) 299 0 R (figure.2.26) 300 0 R (figure.2.3) 271 0 R (figure.2.4) 272 0 R (figure.2.5) 273 0 R (figure.2.6) 274 0 R (figure.2.7) 275 0 R (figure.2.8) 276 0 R (figure.2.9) 277 0 R (page.1) 166 0 R (page.10) 366 0 R (page.11) 374 0 R (page.12) 382 0 R (page.13) 391 0 R (page.14) 400 0 R (page.15) 408 0 R (page.16) 415 0 R (page.17) 422 0 R (page.18) 430 0 R (page.19) 438 0 R (page.2) 178 0 R (page.20) 450 0 R (page.21) 458 0 R (page.22) 463 0 R (page.23) 471 0 R (page.24) 477 0 R (page.25) 482 0 R (page.26) 489 0 R (page.27) 496 0 R (page.28) 502 0 R (page.29) 507 0 R (page.3) 185 0 R (page.30) 511 0 R (page.31) 518 0 R (page.32) 532 0 R (page.33) 538 0 R (page.34) 546 0 R (page.35) 553 0 R (page.36) 557 0 R (page.37) 572 0 R (page.38) 578 0 R (page.39) 588 0 R (page.4) 216 0 R (page.40) 593 0 R (page.41) 603 0 R (page.42) 610 0 R (page.43) 616 0 R (page.44) 626 0 R (page.45) 630 0 R (page.46) 634 0 R (page.47) 641 0 R (page.48) 649 0 R (page.49) 658 0 R (page.5) 237 0 R (page.50) 664 0 R (page.51) 671 0 R (page.52) 676 0 R (page.53) 680 0 R (page.54) 684 0 R (page.55) 688 0 R (page.56) 699 0 R (page.6) 296 0 R (page.7) 304 0 R (page.8) 345 0 R (page.9) 356 0 R (section*.10) 402 0 R (section*.11) 409 0 R (section*.12) 416 0 R (section*.13) 424 0 R (section*.14) 431 0 R (section*.15) 451 0 R (section*.16) 466 0 R (section*.17) 472 0 R (section*.18) 473 0 R (section*.19) 478 0 R (section*.20) 483 0 R (section*.21) 484 0 R (section*.22) 490 0 R (section*.23) 491 0 R (section*.24) 567 0 R (section*.25) 599 0 R (section*.26) 611 0 R (section*.27) 621 0 R (section*.28) 665 0 R (section*.4) 358 0 R (section*.5) 368 0 R (section*.6) 369 0 R (section*.7) 370 0 R (section*.8) 375 0 R (section*.9) 376 0 R (section.1.1) 10 0 R (section.1.2) 14 0 R (section.2.1) 22 0 R (section.2.2) 26 0 R (section.2.3) 30 0 R (section.2.4) 34 0 R (section.2.5) 54 0 R (section.2.6) 98 0 R (section.3.1) 110 0 R (section.3.2) 114 0 R (section.3.3) 118 0 R (section.3.4) 126 0 R (section.3.5) 134 0 R (section.3.6) 142 0 R (section.3.7) 146 0 R (subsection.2.4.1) 38 0 R (subsection.2.4.2) 42 0 R (subsection.2.4.3) 46 0 R (subsection.2.4.4) 50 0 R (subsection.2.5.1) 58 0 R (subsection.2.5.10) 94 0 R (subsection.2.5.2) 62 0 R (subsection.2.5.3) 66 0 R (subsection.2.5.4) 70 0 R (subsection.2.5.5) 74 0 R (subsection.2.5.6) 78 0 R (subsection.2.5.7) 82 0 R (subsection.2.5.8) 86 0 R (subsection.2.5.9) 90 0 R (subsection.2.6.1) 102 0 R (subsection.3.3.1) 122 0 R (subsection.3.4.1) 130 0 R (subsection.3.5.1) 138 0 R (table.2.1) 324 0 R (table.2.10) 333 0 R (table.2.11) 334 0 R (table.2.12) 335 0 R (table.2.13) 336 0 R (table.2.14) 337 0 R (table.2.15) 338 0 R (table.2.16) 339 0 R (table.2.17) 340 0 R (table.2.2) 325 0 R (table.2.3) 326 0 R (table.2.4) 327 0 R (table.2.5) 328 0 R (table.2.6) 329 0 R (table.2.7) 330 0 R (table.2.8) 331 0 R (table.2.9) 332 0 R] /Limits [(API) (table.2.9)] >> endobj -718 0 obj << -/Kids [717 0 R] +721 0 obj << +/Kids [720 0 R] >> endobj -719 0 obj << -/Dests 718 0 R +722 0 obj << +/Dests 721 0 R >> endobj -720 0 obj << +723 0 obj << /Type /Catalog -/Pages 715 0 R -/Outlines 716 0 R -/Names 719 0 R +/Pages 718 0 R +/Outlines 719 0 R +/Names 722 0 R /PageMode /UseOutlines /PageLayout/OneColumn /OpenAction 161 0 R >> endobj -721 0 obj << +724 0 obj << /Author(Paul Btow)/Title()/Subject()/Creator(LaTeX with hyperref package)/Producer(pdfeTeX-1.21a)/Keywords() -/CreationDate (D:20080726040940Z) +/CreationDate (D:20080726154258Z) /PTEX.Fullbanner (This is pdfeTeX, Version 3.141592-1.21a-2.2 (Web2C 7.5.4) kpathsea version 3.5.4) >> endobj xref -0 722 +0 725 0000000001 65535 f 0000000002 00000 f 0000000003 00000 f 0000000004 00000 f 0000000000 00000 f 0000000009 00000 n -0000080873 00000 n -0000867509 00000 n +0000080879 00000 n +0000864355 00000 n 0000000054 00000 n 0000000143 00000 n -0000080934 00000 n -0000867437 00000 n +0000080940 00000 n +0000864283 00000 n 0000000190 00000 n 0000000290 00000 n -0000084512 00000 n -0000867364 00000 n +0000084540 00000 n +0000864210 00000 n 0000000338 00000 n 0000000438 00000 n -0000100598 00000 n -0000867239 00000 n +0000100614 00000 n +0000864085 00000 n 0000000484 00000 n 0000000592 00000 n -0000100660 00000 n -0000867165 00000 n +0000100676 00000 n +0000864011 00000 n 0000000640 00000 n 0000000871 00000 n -0000216071 00000 n -0000867078 00000 n +0000215914 00000 n +0000863924 00000 n 0000000919 00000 n 0000001057 00000 n -0000226790 00000 n -0000866991 00000 n +0000228778 00000 n +0000863837 00000 n 0000001105 00000 n 0000001205 00000 n -0000234750 00000 n -0000866867 00000 n +0000233808 00000 n +0000863713 00000 n 0000001253 00000 n 0000001368 00000 n -0000234812 00000 n -0000866793 00000 n +0000254303 00000 n +0000863639 00000 n 0000001421 00000 n 0000001576 00000 n -0000255150 00000 n -0000866706 00000 n +0000268014 00000 n +0000863552 00000 n 0000001629 00000 n 0000001809 00000 n -0000261057 00000 n -0000866619 00000 n +0000274188 00000 n +0000863465 00000 n 0000001862 00000 n 0000002103 00000 n -0000277563 00000 n -0000866545 00000 n +0000277597 00000 n +0000863391 00000 n 0000002156 00000 n 0000002372 00000 n -0000277625 00000 n -0000866420 00000 n +0000311006 00000 n +0000863266 00000 n 0000002420 00000 n 0000002520 00000 n -0000311614 00000 n -0000866346 00000 n +0000311068 00000 n +0000863192 00000 n 0000002573 00000 n 0000002775 00000 n -0000311676 00000 n -0000866259 00000 n +0000311129 00000 n +0000863105 00000 n 0000002828 00000 n 0000003009 00000 n -0000513985 00000 n -0000866172 00000 n +0000514061 00000 n +0000863018 00000 n 0000003062 00000 n 0000003273 00000 n -0000514110 00000 n -0000866085 00000 n +0000534580 00000 n +0000862931 00000 n 0000003326 00000 n 0000003760 00000 n -0000538847 00000 n -0000865998 00000 n +0000562662 00000 n +0000862844 00000 n 0000003813 00000 n 0000004125 00000 n -0000591409 00000 n -0000865911 00000 n +0000567193 00000 n +0000862757 00000 n 0000004178 00000 n 0000004523 00000 n -0000616592 00000 n -0000865824 00000 n +0000597956 00000 n +0000862670 00000 n 0000004576 00000 n 0000004800 00000 n -0000620081 00000 n -0000865737 00000 n +0000648094 00000 n +0000862583 00000 n 0000004853 00000 n 0000005082 00000 n -0000675127 00000 n -0000865650 00000 n +0000678850 00000 n +0000862496 00000 n 0000005135 00000 n 0000005378 00000 n -0000679146 00000 n -0000865576 00000 n +0000703216 00000 n +0000862422 00000 n 0000005432 00000 n 0000005700 00000 n -0000705118 00000 n -0000865462 00000 n +0000711938 00000 n +0000862308 00000 n 0000005748 00000 n 0000005887 00000 n -0000738122 00000 n -0000865398 00000 n +0000712000 00000 n +0000862244 00000 n 0000005941 00000 n 0000006158 00000 n -0000769149 00000 n -0000865267 00000 n +0000770711 00000 n +0000862113 00000 n 0000006205 00000 n 0000006344 00000 n -0000770222 00000 n -0000865188 00000 n +0000771784 00000 n +0000862034 00000 n 0000006393 00000 n 0000006555 00000 n -0000770285 00000 n -0000865095 00000 n +0000771847 00000 n +0000861941 00000 n 0000006604 00000 n 0000006695 00000 n -0000770348 00000 n -0000864963 00000 n +0000771910 00000 n +0000861809 00000 n 0000006744 00000 n 0000006845 00000 n -0000770411 00000 n -0000864898 00000 n +0000771973 00000 n +0000861744 00000 n 0000006899 00000 n 0000007053 00000 n -0000770474 00000 n -0000864766 00000 n +0000772036 00000 n +0000861612 00000 n 0000007102 00000 n 0000007203 00000 n -0000770537 00000 n -0000864701 00000 n +0000772099 00000 n +0000861547 00000 n 0000007257 00000 n 0000007383 00000 n -0000770600 00000 n -0000864569 00000 n +0000772162 00000 n +0000861415 00000 n 0000007432 00000 n 0000007644 00000 n -0000770663 00000 n -0000864504 00000 n +0000772225 00000 n +0000861350 00000 n 0000007698 00000 n 0000007860 00000 n -0000770726 00000 n -0000864411 00000 n +0000772288 00000 n +0000861257 00000 n 0000007909 00000 n 0000008070 00000 n -0000770789 00000 n -0000864332 00000 n +0000772351 00000 n +0000861178 00000 n 0000008119 00000 n 0000008270 00000 n -0000771430 00000 n -0000864239 00000 n +0000772992 00000 n +0000861085 00000 n 0000008317 00000 n 0000008398 00000 n -0000772446 00000 n -0000864146 00000 n +0000774008 00000 n +0000860992 00000 n 0000008446 00000 n 0000008527 00000 n -0000773773 00000 n -0000864067 00000 n +0000775335 00000 n +0000860913 00000 n 0000008575 00000 n 0000008716 00000 n 0000009643 00000 n @@ -7399,567 +7350,570 @@ xref 0000008768 00000 n 0000052044 00000 n 0000052107 00000 n -0000861489 00000 n -0000849050 00000 n -0000861319 00000 n -0000847801 00000 n -0000834322 00000 n -0000847631 00000 n -0000862564 00000 n +0000858327 00000 n +0000845818 00000 n +0000858157 00000 n +0000844555 00000 n +0000830951 00000 n +0000844385 00000 n +0000859410 00000 n 0000053584 00000 n 0000053399 00000 n 0000052291 00000 n 0000053521 00000 n -0000833789 00000 n -0000831926 00000 n -0000833629 00000 n -0000060650 00000 n -0000056020 00000 n +0000830418 00000 n +0000828555 00000 n +0000830258 00000 n +0000060654 00000 n +0000056024 00000 n 0000053682 00000 n -0000060524 00000 n -0000060587 00000 n -0000056362 00000 n -0000056517 00000 n -0000056674 00000 n -0000056831 00000 n -0000056986 00000 n -0000057142 00000 n -0000057299 00000 n -0000057454 00000 n -0000057611 00000 n -0000057773 00000 n -0000057936 00000 n -0000058099 00000 n -0000058262 00000 n -0000058418 00000 n -0000058580 00000 n -0000058742 00000 n -0000058905 00000 n -0000059068 00000 n -0000059230 00000 n -0000059393 00000 n -0000059556 00000 n -0000059719 00000 n -0000059881 00000 n -0000060042 00000 n -0000060206 00000 n -0000060362 00000 n -0000064609 00000 n -0000062097 00000 n -0000060735 00000 n -0000064546 00000 n -0000831020 00000 n -0000822447 00000 n -0000830845 00000 n -0000062343 00000 n -0000062497 00000 n -0000062654 00000 n -0000062810 00000 n -0000062966 00000 n -0000063128 00000 n -0000063285 00000 n -0000063448 00000 n -0000063604 00000 n -0000063767 00000 n -0000063924 00000 n -0000064081 00000 n -0000064236 00000 n -0000064390 00000 n -0000071896 00000 n -0000067201 00000 n -0000064707 00000 n -0000071770 00000 n -0000071833 00000 n -0000067551 00000 n -0000067707 00000 n -0000067863 00000 n -0000068019 00000 n -0000068175 00000 n -0000068331 00000 n -0000068487 00000 n -0000068643 00000 n -0000068799 00000 n -0000068955 00000 n -0000069111 00000 n -0000069266 00000 n -0000069421 00000 n -0000069577 00000 n -0000069734 00000 n -0000069890 00000 n -0000070047 00000 n -0000070203 00000 n -0000070360 00000 n -0000070516 00000 n -0000070673 00000 n -0000070830 00000 n -0000070987 00000 n -0000071144 00000 n -0000071301 00000 n -0000071458 00000 n -0000071613 00000 n -0000080996 00000 n -0000084637 00000 n -0000090263 00000 n -0000100722 00000 n -0000108410 00000 n -0000140513 00000 n -0000140640 00000 n -0000147397 00000 n -0000152452 00000 n -0000157951 00000 n -0000166732 00000 n -0000175194 00000 n -0000175321 00000 n -0000216133 00000 n -0000224174 00000 n -0000255212 00000 n -0000274286 00000 n -0000311738 00000 n -0000445823 00000 n -0000514047 00000 n -0000538720 00000 n -0000564216 00000 n -0000591471 00000 n -0000616654 00000 n -0000648847 00000 n -0000675189 00000 n -0000702160 00000 n -0000072971 00000 n -0000072446 00000 n -0000071981 00000 n -0000072908 00000 n -0000072596 00000 n -0000072751 00000 n -0000738185 00000 n -0000768561 00000 n -0000077803 00000 n -0000074769 00000 n -0000073056 00000 n -0000077677 00000 n -0000077740 00000 n -0000075039 00000 n -0000075194 00000 n -0000075349 00000 n -0000075504 00000 n -0000075659 00000 n -0000075814 00000 n -0000075969 00000 n -0000076124 00000 n -0000076279 00000 n -0000076433 00000 n -0000076588 00000 n -0000076744 00000 n -0000076900 00000 n -0000077055 00000 n -0000077209 00000 n -0000077365 00000 n -0000077521 00000 n -0000862681 00000 n -0000157824 00000 n -0000234624 00000 n -0000277499 00000 n -0000311550 00000 n -0000445759 00000 n -0000518221 00000 n -0000518285 00000 n -0000591346 00000 n -0000595065 00000 n -0000619956 00000 n -0000648911 00000 n -0000651894 00000 n -0000654004 00000 n -0000679082 00000 n -0000704929 00000 n -0000707961 00000 n -0000738058 00000 n -0000079196 00000 n -0000081060 00000 n -0000079054 00000 n -0000077888 00000 n -0000080810 00000 n -0000080650 00000 n -0000080379 00000 n -0000080510 00000 n -0000080557 00000 n -0000080629 00000 n -0000773899 00000 n -0000083105 00000 n -0000084701 00000 n -0000082963 00000 n -0000081186 00000 n -0000084449 00000 n -0000084293 00000 n -0000084574 00000 n -0000084022 00000 n -0000084153 00000 n -0000084200 00000 n -0000084272 00000 n -0000087510 00000 n -0000086959 00000 n -0000084827 00000 n -0000087258 00000 n -0000087101 00000 n -0000087321 00000 n -0000087384 00000 n -0000087447 00000 n -0000088954 00000 n -0000090389 00000 n -0000088832 00000 n -0000087608 00000 n -0000090200 00000 n -0000090327 00000 n -0000089929 00000 n -0000090060 00000 n -0000090107 00000 n -0000090179 00000 n -0000092643 00000 n -0000092219 00000 n -0000090515 00000 n -0000092517 00000 n -0000092580 00000 n -0000092361 00000 n -0000093877 00000 n -0000100786 00000 n -0000093727 00000 n -0000092741 00000 n -0000100535 00000 n -0000100222 00000 n -0000100379 00000 n -0000862798 00000 n -0000102718 00000 n -0000110060 00000 n -0000108536 00000 n -0000102568 00000 n -0000100907 00000 n -0000108347 00000 n -0000108034 00000 n -0000108474 00000 n -0000108190 00000 n -0000137463 00000 n -0000140704 00000 n -0000109918 00000 n -0000108670 00000 n -0000140450 00000 n -0000140577 00000 n -0000140293 00000 n -0000142535 00000 n -0000147461 00000 n -0000142385 00000 n -0000140864 00000 n -0000147272 00000 n -0000147335 00000 n -0000146959 00000 n -0000147116 00000 n -0000149645 00000 n -0000152578 00000 n -0000149495 00000 n -0000147608 00000 n -0000152389 00000 n -0000152078 00000 n -0000152515 00000 n +0000060528 00000 n +0000060591 00000 n +0000056366 00000 n +0000056521 00000 n +0000056678 00000 n +0000056835 00000 n +0000056990 00000 n +0000057146 00000 n +0000057303 00000 n +0000057458 00000 n +0000057615 00000 n +0000057777 00000 n +0000057940 00000 n +0000058103 00000 n +0000058266 00000 n +0000058422 00000 n +0000058584 00000 n +0000058746 00000 n +0000058909 00000 n +0000059072 00000 n +0000059234 00000 n +0000059397 00000 n +0000059560 00000 n +0000059723 00000 n +0000059885 00000 n +0000060046 00000 n +0000060210 00000 n +0000060366 00000 n +0000064613 00000 n +0000062101 00000 n +0000060739 00000 n +0000064550 00000 n +0000827649 00000 n +0000819076 00000 n +0000827474 00000 n +0000062347 00000 n +0000062501 00000 n +0000062658 00000 n +0000062814 00000 n +0000062970 00000 n +0000063132 00000 n +0000063289 00000 n +0000063452 00000 n +0000063608 00000 n +0000063771 00000 n +0000063928 00000 n +0000064085 00000 n +0000064240 00000 n +0000064394 00000 n +0000071901 00000 n +0000067206 00000 n +0000064711 00000 n +0000071775 00000 n +0000071838 00000 n +0000067556 00000 n +0000067712 00000 n +0000067868 00000 n +0000068024 00000 n +0000068180 00000 n +0000068336 00000 n +0000068492 00000 n +0000068648 00000 n +0000068804 00000 n +0000068960 00000 n +0000069116 00000 n +0000069271 00000 n +0000069426 00000 n +0000069582 00000 n +0000069739 00000 n +0000069895 00000 n +0000070052 00000 n +0000070208 00000 n +0000070365 00000 n +0000070521 00000 n +0000070678 00000 n +0000070835 00000 n +0000070992 00000 n +0000071149 00000 n +0000071306 00000 n +0000071463 00000 n +0000071618 00000 n +0000081002 00000 n +0000084665 00000 n +0000092573 00000 n +0000100738 00000 n +0000108435 00000 n +0000140538 00000 n +0000140665 00000 n +0000147108 00000 n +0000152297 00000 n +0000157794 00000 n +0000166755 00000 n +0000175069 00000 n +0000175196 00000 n +0000215976 00000 n +0000223947 00000 n +0000254365 00000 n +0000268076 00000 n +0000311191 00000 n +0000445470 00000 n +0000514123 00000 n +0000534642 00000 n +0000562724 00000 n +0000594339 00000 n +0000620269 00000 n +0000648156 00000 n +0000678912 00000 n +0000703278 00000 n +0000072974 00000 n +0000072449 00000 n +0000071986 00000 n +0000072911 00000 n +0000072599 00000 n +0000072754 00000 n +0000769994 00000 n +0000770057 00000 n +0000077809 00000 n +0000074775 00000 n +0000073059 00000 n +0000077683 00000 n +0000077746 00000 n +0000075045 00000 n +0000075200 00000 n +0000075355 00000 n +0000075510 00000 n +0000075665 00000 n +0000075820 00000 n +0000075975 00000 n +0000076130 00000 n +0000076285 00000 n +0000076439 00000 n +0000076594 00000 n +0000076750 00000 n +0000076906 00000 n +0000077061 00000 n +0000077215 00000 n +0000077371 00000 n +0000077527 00000 n +0000859527 00000 n +0000157667 00000 n +0000254240 00000 n +0000277533 00000 n +0000445406 00000 n +0000513997 00000 n +0000534516 00000 n +0000538571 00000 n +0000567130 00000 n +0000594402 00000 n +0000620333 00000 n +0000652042 00000 n +0000655077 00000 n +0000657187 00000 n +0000678786 00000 n +0000705514 00000 n +0000708673 00000 n +0000711812 00000 n +0000079202 00000 n +0000081066 00000 n +0000079060 00000 n +0000077894 00000 n +0000080816 00000 n +0000080656 00000 n +0000080385 00000 n +0000080516 00000 n +0000080563 00000 n +0000080635 00000 n +0000775461 00000 n +0000083133 00000 n +0000084729 00000 n +0000082991 00000 n +0000081192 00000 n +0000084477 00000 n +0000084321 00000 n +0000084602 00000 n +0000084050 00000 n +0000084181 00000 n +0000084228 00000 n +0000084300 00000 n +0000087391 00000 n +0000086840 00000 n +0000084855 00000 n +0000087139 00000 n +0000086982 00000 n +0000087202 00000 n +0000087265 00000 n +0000087328 00000 n +0000090044 00000 n +0000089556 00000 n +0000087489 00000 n +0000089855 00000 n +0000089918 00000 n +0000089981 00000 n +0000089698 00000 n +0000091264 00000 n +0000092637 00000 n +0000091142 00000 n +0000090142 00000 n +0000092510 00000 n +0000092239 00000 n +0000092370 00000 n +0000092417 00000 n +0000092489 00000 n +0000093893 00000 n +0000100802 00000 n +0000093743 00000 n +0000092750 00000 n +0000100551 00000 n +0000100238 00000 n +0000100395 00000 n +0000859644 00000 n +0000102743 00000 n +0000110085 00000 n +0000108561 00000 n +0000102593 00000 n +0000100923 00000 n +0000108372 00000 n +0000108059 00000 n +0000108499 00000 n +0000108215 00000 n +0000137488 00000 n +0000140729 00000 n +0000109943 00000 n +0000108695 00000 n +0000140475 00000 n +0000140602 00000 n +0000140318 00000 n +0000142401 00000 n +0000147172 00000 n +0000142259 00000 n +0000140889 00000 n +0000146982 00000 n +0000147045 00000 n +0000146825 00000 n +0000149488 00000 n +0000152424 00000 n +0000149338 00000 n +0000147319 00000 n 0000152234 00000 n -0000154930 00000 n -0000158014 00000 n -0000154788 00000 n -0000152713 00000 n -0000157761 00000 n -0000157888 00000 n -0000157606 00000 n -0000159938 00000 n -0000168810 00000 n -0000166796 00000 n -0000159780 00000 n -0000158149 00000 n -0000166669 00000 n -0000166199 00000 n -0000166355 00000 n -0000166512 00000 n -0000862915 00000 n -0000172547 00000 n -0000175385 00000 n -0000168660 00000 n -0000166918 00000 n -0000175131 00000 n -0000175258 00000 n -0000174816 00000 n -0000174973 00000 n -0000176996 00000 n -0000216197 00000 n -0000176874 00000 n -0000175534 00000 n -0000216008 00000 n -0000218220 00000 n -0000224238 00000 n -0000218062 00000 n -0000216332 00000 n -0000224111 00000 n -0000223638 00000 n -0000223796 00000 n -0000223953 00000 n -0000226852 00000 n -0000226605 00000 n -0000224360 00000 n -0000226727 00000 n -0000821848 00000 n -0000809637 00000 n -0000821677 00000 n -0000229259 00000 n -0000228949 00000 n -0000226963 00000 n -0000229071 00000 n -0000229134 00000 n -0000229196 00000 n -0000231895 00000 n -0000231584 00000 n -0000229370 00000 n -0000231706 00000 n -0000231769 00000 n -0000231832 00000 n -0000863032 00000 n -0000234874 00000 n -0000234263 00000 n -0000232006 00000 n -0000234561 00000 n -0000234687 00000 n -0000234405 00000 n -0000236639 00000 n -0000255276 00000 n -0000236497 00000 n -0000234985 00000 n -0000255087 00000 n -0000254930 00000 n -0000258027 00000 n -0000257842 00000 n -0000255424 00000 n -0000257964 00000 n -0000261119 00000 n -0000260872 00000 n -0000258138 00000 n -0000260994 00000 n -0000809288 00000 n -0000801127 00000 n -0000809110 00000 n -0000800742 00000 n -0000798557 00000 n -0000800581 00000 n -0000798236 00000 n -0000790008 00000 n -0000798063 00000 n -0000262733 00000 n -0000274350 00000 n -0000262611 00000 n -0000261269 00000 n -0000274223 00000 n -0000789568 00000 n -0000787285 00000 n -0000789408 00000 n -0000277687 00000 n -0000276972 00000 n -0000274524 00000 n -0000277436 00000 n -0000786843 00000 n -0000778372 00000 n -0000786672 00000 n -0000277122 00000 n -0000277280 00000 n -0000863149 00000 n -0000279975 00000 n -0000311801 00000 n -0000279825 00000 n -0000277811 00000 n -0000311487 00000 n -0000311174 00000 n -0000311331 00000 n -0000314104 00000 n -0000448121 00000 n -0000445887 00000 n -0000313954 00000 n -0000311936 00000 n -0000445696 00000 n -0000445382 00000 n -0000445538 00000 n -0000514172 00000 n -0000447971 00000 n -0000446022 00000 n -0000513922 00000 n -0000513608 00000 n -0000513766 00000 n -0000520476 00000 n -0000518349 00000 n -0000517530 00000 n -0000514320 00000 n -0000518158 00000 n -0000517688 00000 n -0000517846 00000 n -0000518003 00000 n -0000541934 00000 n -0000538909 00000 n -0000520354 00000 n -0000518512 00000 n -0000538657 00000 n -0000538784 00000 n -0000566717 00000 n -0000564280 00000 n -0000541768 00000 n -0000539083 00000 n -0000564153 00000 n -0000563521 00000 n -0000563682 00000 n -0000563839 00000 n -0000563997 00000 n -0000863266 00000 n -0000773836 00000 n -0000591534 00000 n +0000151921 00000 n +0000152361 00000 n +0000152078 00000 n +0000154772 00000 n +0000157857 00000 n +0000154630 00000 n +0000152559 00000 n +0000157604 00000 n +0000157731 00000 n +0000157448 00000 n +0000159962 00000 n +0000168685 00000 n +0000166819 00000 n +0000159804 00000 n +0000157992 00000 n +0000166692 00000 n +0000166223 00000 n +0000166379 00000 n +0000166536 00000 n +0000818426 00000 n +0000805290 00000 n +0000818255 00000 n +0000859761 00000 n +0000172422 00000 n +0000175260 00000 n +0000168535 00000 n +0000166954 00000 n +0000175006 00000 n +0000175133 00000 n +0000174691 00000 n +0000174848 00000 n +0000176839 00000 n +0000216039 00000 n +0000176717 00000 n +0000175409 00000 n +0000215851 00000 n +0000217993 00000 n +0000224074 00000 n +0000217835 00000 n +0000216174 00000 n +0000223884 00000 n +0000223411 00000 n +0000223569 00000 n +0000224011 00000 n +0000223726 00000 n +0000226698 00000 n +0000226387 00000 n +0000224209 00000 n +0000226509 00000 n +0000226572 00000 n +0000226635 00000 n +0000228903 00000 n +0000228593 00000 n +0000226809 00000 n +0000228715 00000 n +0000228840 00000 n +0000231355 00000 n +0000231044 00000 n +0000229001 00000 n +0000231166 00000 n +0000231229 00000 n +0000231292 00000 n +0000859878 00000 n +0000233870 00000 n +0000233497 00000 n +0000231466 00000 n +0000233619 00000 n +0000233682 00000 n +0000233745 00000 n +0000235730 00000 n +0000254429 00000 n +0000235588 00000 n +0000233968 00000 n +0000254177 00000 n +0000254021 00000 n +0000256304 00000 n +0000268140 00000 n +0000256162 00000 n +0000254577 00000 n +0000267951 00000 n +0000267794 00000 n +0000271105 00000 n +0000270920 00000 n +0000268301 00000 n +0000271042 00000 n +0000274250 00000 n +0000274003 00000 n +0000271229 00000 n +0000274125 00000 n +0000804945 00000 n +0000796961 00000 n +0000804767 00000 n +0000277659 00000 n +0000277006 00000 n +0000274387 00000 n +0000277470 00000 n +0000796519 00000 n +0000788048 00000 n +0000796348 00000 n +0000787608 00000 n +0000785324 00000 n +0000787448 00000 n +0000277156 00000 n +0000277314 00000 n +0000859995 00000 n +0000279586 00000 n +0000311254 00000 n +0000279444 00000 n +0000277822 00000 n +0000310943 00000 n +0000310785 00000 n +0000313755 00000 n +0000445534 00000 n +0000313605 00000 n +0000311389 00000 n +0000445343 00000 n +0000445033 00000 n +0000445188 00000 n +0000447976 00000 n +0000516272 00000 n +0000514186 00000 n +0000447818 00000 n +0000445669 00000 n +0000513934 00000 n +0000513463 00000 n +0000513621 00000 n +0000513779 00000 n +0000534706 00000 n +0000516150 00000 n +0000514334 00000 n +0000534453 00000 n +0000538698 00000 n +0000537879 00000 n +0000534841 00000 n +0000538508 00000 n +0000538037 00000 n +0000785055 00000 n +0000782339 00000 n +0000784882 00000 n +0000780102 00000 n +0000778046 00000 n +0000779941 00000 n +0000538195 00000 n +0000538353 00000 n +0000538635 00000 n +0000541012 00000 n +0000562788 00000 n +0000540890 00000 n +0000538874 00000 n +0000562599 00000 n +0000860112 00000 n +0000569710 00000 n +0000567255 00000 n +0000566104 00000 n +0000562975 00000 n +0000567067 00000 n +0000566278 00000 n +0000566438 00000 n 0000566595 00000 n -0000564467 00000 n -0000591283 00000 n -0000595129 00000 n -0000594538 00000 n -0000591721 00000 n -0000595002 00000 n -0000776155 00000 n -0000774047 00000 n -0000775986 00000 n -0000594688 00000 n -0000594846 00000 n -0000597122 00000 n -0000616718 00000 n -0000597000 00000 n -0000595292 00000 n -0000616466 00000 n -0000616529 00000 n -0000622726 00000 n -0000620142 00000 n -0000619431 00000 n -0000616866 00000 n +0000566753 00000 n +0000566909 00000 n +0000775398 00000 n +0000594466 00000 n +0000569588 00000 n +0000567431 00000 n +0000594276 00000 n +0000600549 00000 n +0000598018 00000 n +0000597366 00000 n +0000594653 00000 n +0000597830 00000 n +0000777717 00000 n +0000775609 00000 n +0000777548 00000 n +0000597516 00000 n +0000597674 00000 n +0000597893 00000 n +0000620397 00000 n +0000600399 00000 n +0000598194 00000 n +0000620206 00000 n 0000619893 00000 n -0000619581 00000 n -0000619738 00000 n -0000620019 00000 n -0000648975 00000 n -0000622560 00000 n -0000620253 00000 n -0000648784 00000 n -0000648158 00000 n -0000648315 00000 n -0000648471 00000 n -0000648627 00000 n -0000651958 00000 n -0000651709 00000 n -0000649110 00000 n -0000651831 00000 n -0000863383 00000 n -0000654068 00000 n -0000653819 00000 n -0000652056 00000 n -0000653941 00000 n -0000655992 00000 n -0000675253 00000 n -0000655850 00000 n -0000654166 00000 n -0000675001 00000 n -0000675064 00000 n -0000674843 00000 n -0000680821 00000 n -0000679208 00000 n -0000678061 00000 n -0000675401 00000 n -0000679019 00000 n -0000678235 00000 n -0000678391 00000 n -0000678549 00000 n -0000678706 00000 n -0000678863 00000 n -0000702476 00000 n -0000680699 00000 n -0000679306 00000 n -0000702097 00000 n -0000702224 00000 n -0000702287 00000 n -0000702350 00000 n -0000702413 00000 n -0000710521 00000 n -0000705180 00000 n -0000704744 00000 n -0000702611 00000 n -0000704866 00000 n -0000704992 00000 n -0000705055 00000 n -0000708025 00000 n -0000707776 00000 n -0000705291 00000 n -0000707898 00000 n -0000863500 00000 n -0000739442 00000 n -0000738248 00000 n -0000710379 00000 n -0000708123 00000 n -0000737995 00000 n -0000737837 00000 n -0000768625 00000 n -0000739300 00000 n -0000738435 00000 n -0000768498 00000 n -0000768340 00000 n -0000769212 00000 n -0000768964 00000 n -0000768747 00000 n -0000769086 00000 n -0000770852 00000 n -0000770037 00000 n -0000769284 00000 n -0000770159 00000 n -0000771493 00000 n -0000771245 00000 n -0000770950 00000 n -0000771367 00000 n -0000772887 00000 n -0000772261 00000 n -0000771578 00000 n -0000772383 00000 n -0000772509 00000 n -0000772572 00000 n -0000772635 00000 n -0000772698 00000 n -0000772761 00000 n -0000772824 00000 n -0000863617 00000 n -0000773962 00000 n -0000773588 00000 n -0000772972 00000 n -0000773710 00000 n -0000776392 00000 n -0000776368 00000 n -0000776484 00000 n -0000787087 00000 n -0000789868 00000 n -0000789796 00000 n -0000798495 00000 n -0000801007 00000 n -0000800969 00000 n -0000809537 00000 n -0000822183 00000 n -0000831428 00000 n -0000834160 00000 n -0000834031 00000 n -0000848362 00000 n -0000861912 00000 n -0000863702 00000 n -0000863820 00000 n -0000863922 00000 n -0000863992 00000 n -0000867618 00000 n -0000871344 00000 n -0000871383 00000 n -0000871421 00000 n -0000871573 00000 n +0000620050 00000 n +0000622536 00000 n +0000648219 00000 n +0000622414 00000 n +0000620545 00000 n +0000647968 00000 n +0000648031 00000 n +0000659559 00000 n +0000652169 00000 n +0000651185 00000 n +0000648380 00000 n +0000651979 00000 n +0000651351 00000 n +0000651508 00000 n +0000651665 00000 n +0000651822 00000 n +0000652106 00000 n +0000860229 00000 n +0000655141 00000 n +0000654892 00000 n +0000652293 00000 n +0000655014 00000 n +0000657251 00000 n +0000657002 00000 n +0000655239 00000 n +0000657124 00000 n +0000678976 00000 n +0000659409 00000 n +0000657349 00000 n +0000678723 00000 n +0000678410 00000 n +0000678568 00000 n +0000681252 00000 n +0000703342 00000 n +0000681086 00000 n +0000679124 00000 n +0000703153 00000 n +0000702528 00000 n +0000702686 00000 n +0000702843 00000 n +0000702997 00000 n +0000705892 00000 n +0000705329 00000 n +0000703490 00000 n +0000705451 00000 n +0000705577 00000 n +0000705640 00000 n +0000705703 00000 n +0000705766 00000 n +0000705829 00000 n +0000708737 00000 n +0000708488 00000 n +0000706003 00000 n +0000708610 00000 n +0000860346 00000 n +0000713559 00000 n +0000712063 00000 n +0000711449 00000 n +0000708835 00000 n +0000711749 00000 n +0000711876 00000 n +0000711591 00000 n +0000740875 00000 n +0000770121 00000 n +0000713417 00000 n +0000712200 00000 n +0000769931 00000 n +0000769773 00000 n +0000770774 00000 n +0000770526 00000 n +0000770309 00000 n +0000770648 00000 n +0000772414 00000 n +0000771599 00000 n +0000770846 00000 n +0000771721 00000 n +0000773055 00000 n +0000772807 00000 n +0000772512 00000 n +0000772929 00000 n +0000774449 00000 n +0000773823 00000 n +0000773140 00000 n +0000773945 00000 n +0000774071 00000 n +0000774134 00000 n +0000774197 00000 n +0000774260 00000 n +0000774323 00000 n +0000774386 00000 n +0000860463 00000 n +0000775524 00000 n +0000775150 00000 n +0000774534 00000 n +0000775272 00000 n +0000777954 00000 n +0000777930 00000 n +0000780353 00000 n +0000780321 00000 n +0000780451 00000 n +0000785278 00000 n +0000787908 00000 n +0000787836 00000 n +0000796763 00000 n +0000805192 00000 n +0000818798 00000 n +0000828057 00000 n +0000830789 00000 n +0000830660 00000 n +0000845126 00000 n +0000858756 00000 n +0000860548 00000 n +0000860666 00000 n +0000860768 00000 n +0000860838 00000 n +0000864464 00000 n +0000868256 00000 n +0000868295 00000 n +0000868333 00000 n +0000868485 00000 n trailer << -/Size 722 -/Root 720 0 R -/Info 721 0 R -/ID [<9E04B86016DCDC56078CFA90A8FF249B> <9E04B86016DCDC56078CFA90A8FF249B>] +/Size 725 +/Root 723 0 R +/Info 724 0 R +/ID [ ] >> startxref -871840 +868752 %%EOF -- cgit v1.2.3