From 26f8727c2e2a60b0beb0d314fc78be660a458e4b Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Wed, 13 Aug 2008 21:41:59 +0000 Subject: foo --- LaTeX/chapters/implementierung.tex | 44 +- LaTeX/diplomarbeit.pdf | 1632 ++++++++++++++++++------------------ 2 files changed, 841 insertions(+), 835 deletions(-) diff --git a/LaTeX/chapters/implementierung.tex b/LaTeX/chapters/implementierung.tex index 91bfdcf..120db0e 100644 --- a/LaTeX/chapters/implementierung.tex +++ b/LaTeX/chapters/implementierung.tex @@ -383,7 +383,7 @@ Wenn Im Folgenden wird die Implementierung des zuverlssigen Multicast-Protokolls \textit{VSReliableMulticastProtocol.java} als Beispiel aufgefhrt. Die Funktionsweise des Protokolls wurde bereits in Kapitel 3.10. beschrieben. Client- und Serverseite werden in der selben Klasse implementiert. -Im Konstruktor muss stets angegeben werden, ob beim gegebenen Protokoll der Client oder der Server die Anfragen startet. Mit \textit{VSAbstractProtocol.HAS\_ON\_CLIENT\_START} wird dem API mitgeteilt, dass der Client die Anfragen startet. Fr \textit{VSAbstractProtocol.HAS\_ON\_SERVER\_START} und Serveranfragen gilt Selbiges analog. Da ein Protokoll auch ein \textit{VSAbstractEvent} ist, muss auch hier mit \textit{setClassname} der Klassenname des aktuellen Protokolls angegeben werden: +Im Konstruktor muss stets angegeben werden, ob beim gegebenen Protokoll der Client oder der Server die Anfragen startet. Mit \textit{VSAbstractProtocol.HAS\_ON\_CLIENT\_START} wird dem API mitgeteilt, dass der Client die Anfragen startet. Fr \textit{VSAbstractProtocol.HAS\_ON\_SERVER\_START} und Serveranfragen gilt selbiges analog. Da ein Protokoll auch ein \textit{VSAbstractEvent} ist, muss auch hier mit \textit{setClassname} der Klassenname des aktuellen Protokolls angegeben werden: \begin{code} package protocols.implementations; @@ -536,7 +536,7 @@ Wenn eine Simulatorversion versucht eine abgespeicherte Simulation eines nicht i Das Paket \textit{simulator} (s. Abbildung \ref{fig:PackageProtocols}.) implementiert die graphische Benutzeroberflche des Simulators. Ausnahmen stellen die Editorklassen in \textit{prefs.editors} sowie die Klasse \textit{utils.VSFrame} dar. -Beim Starten des Simulators wird auf die \textit{main}-Methode, welche sich in \textit{VSMain} befindet, aufgerufen. Sie instantiiert ein \textit{VSDefaultPrefs}-Objekt, wo alle Standardeinstellungen des Simulators abgelegt sind. Anschlieend wird ein \textit{VSSimulatorFrame} erzeugt, welches ein Simulatorfenster (s. Abbildung \ref{fig:NeuesFenster}.) implementiert. Das Simulatorfenster erstellt fr jede neue Simulation jeweils ein Objekt von \textit{VSSimulator}, wobei jede Simulation im Simulationsfenster einen eigenen Tab besitzt (s. Abbildung \ref{fig:NeuErstellteSimulation}., unten links). Jede Simulation besitzt dabei eine eigene Simulationsnummer. Jedes \textit{VSSimulator}-Objekt greift auf die Klasse \textit{VSSimulatorVisualization} zurck, welche die Simulationsvisualisierung (s. Abbildung \ref{fig:Visualisierung}.) implementiert. +Beim Starten des Simulators wird auf \textit{main}-Methode, welche sich in \textit{VSMain} befindet, aufgerufen. Sie instantiiert ein \textit{VSDefaultPrefs}-Objekt, worin alle Standardeinstellungen des Simulators abgelegt sind. Anschlieend wird ein \textit{VSSimulatorFrame} erzeugt, welches ein Simulatorfenster (s. Abbildung \ref{fig:NeuesFenster}.) implementiert. Das Simulatorfenster erstellt fr jede neue Simulation jeweils ein Objekt der Klasse \textit{VSSimulator}, wobei jede Simulation im Simulationsfenster einen eigenen Tab besitzt (s. Abbildung \ref{fig:NeuErstellteSimulation}., unten links). Jede Simulation besitzt dabei eine eigene Simulationsnummer. Jedes \textit{VSSimulator}-Objekt greift auf die Klasse \textit{VSSimulatorVisualization} zurck, welche die Simulationsvisualisierung (s. Abbildung \ref{fig:Visualisierung}.) implementiert. \begin{figure}[h] \centering @@ -551,7 +551,7 @@ Die Klasse \textit{VSMenuItemStates} wird f Die Klasse \textit{VSCreateTask} wird vom Ereigniseditor verwendet. Der Ereigniseditor (s. Abbildung \ref{fig:SidebarMitEreignissen}.) wird in der Klasse \textit{VSSimulator} implementiert. Hinter jeder Ereignisauswahl verbirgt sich ein \textit{VSCreateTask}-Objekt, welches angibt wie das ein Ereignis anzulegen ist. -Die Klasse \textit{VSLogging} kapselt f\"{u}r das Loggen von Nachrichten ein \textit{JTextArea}-Objekt. In dieser Klasse werden alle Logfunktionen implementiert. Die \textit{JTextArea} wird f\"{u}r die Darstellung dem Simulationsobjekt \textit{VSSimulator} \"{u}bergeben. Fr den Logfilter wird auf das Java-Standardpaket \textit{java.util.regex} (s. \cite{Regexp}) zugegriffen, womit anhand von regulren Ausdrcken in Java-Syntax die Logs gefiltert werden knnen (s. Kap. 2.2.2. im Abschnitt Logfilter). +Die Klasse \textit{VSLogging} kapselt f\"{u}r das Loggen von Nachrichten ein \textit{JTextArea}-Objekt ein. In dieser Klasse werden alle Logfunktionen implementiert. Die \textit{JTextArea} wird f\"{u}r die Darstellung dem Simulationsobjekt \textit{VSSimulator} \"{u}bergeben. Fr den Logfilter wird auf das Java-Standardpaket \textit{java.util.regex} (s. \cite{Regexp}) zugegriffen, womit anhand von regulren Ausdrcken in Java-Syntax die Logs gefiltert werden knnen (s. Kap. 2.2.2. im Abschnitt Logfilter). \subsubsection{Threads und Zeitsynchronisierung} @@ -559,8 +559,8 @@ Der Simulator soll auf jede Millisekunde genau simulieren k\"{o}nnen und jede si \begin{itemize} \item Das Zeichnen der Visualisierung bentigt pro Aktualisierung einige Millisekunden. Hier werden stndig mathematische Berechnungen (z.B. die Berechnung einer Nachrichtenlinie, die automatische Skalierung des Diagramms, u.s.w.) durchgef\"{u}hrt. - \item Das Neuberechnen der Simulation bentigt pro Aktualisierung einige Millisekunden. Hier wird insbesondere der Task-Manager beansprucht, welcher berprft ob Ereignisse auszufhren sind. - \item Jeder simulierte Prozess sollte mit selber Geschwindigkeit fortschreiten, und dies auf jedem Betriebssystem und auf jeder Architektur. Da Java-Threads nicht komplett plattformunabhngig sind (Threads sind im Betriebssystem implementiert), k\"{o}nnte das Verhalten auf verschiedenen Betriebssystemen oder Architekturen variieren. Auerdem bernimmt das Betriebssystem die Entscheidung, wann welcher Thread arbeiten darf. Auer man synchronisiert Threads manuell so, dass sie den eigenen Ansprchen entsprechen. Letzteres bedeutet aber auch mehr Programmieraufwand. + \item Das Neuberechnen der Simulation bentigt pro Aktualisierung einige Millisekunden. Hier wird insbesondere der Task-Manager beansprucht, welcher berprft, ob Ereignisse auszufhren sind. + \item Jeder simulierte Prozess sollte mit der selben Geschwindigkeit fortschreiten, und dies auf jedem Betriebssystem und auf jeder Architektur. Da Java-Threads nicht komplett plattformunabhngig sind (Threads sind im Betriebssystem implementiert), k\"{o}nnte das Verhalten auf verschiedenen Betriebssystemen oder Architekturen variieren. Auerdem bernimmt das Betriebssystem die Entscheidung, wann welcher Thread arbeiten darf. Auer man synchronisiert Threads manuell so, dass sie den eigenen Ansprchen entsprechen. Letzteres bedeutet aber auch mehr Programmieraufwand. \item Die Simulationszeit ist stets in Millisekunden angegeben und sie wird intern in einer \textit{long}-Variable abgespeichert. Somit kann eine Simulationszeit immer nur den Wert einer ganze Zahl betragen. Berechnungsrundungsfehler wegen \textit{sim.clock.speed} (s. Kap. 2.4.2.) mssen bercksichtigt werden. \item Der Simulator soll nicht stndig die komplette CPU des Anwender-Computers voll auslasten. \end{itemize} @@ -568,7 +568,7 @@ Der Simulator soll auf jede Millisekunde genau simulieren k\"{o}nnen und jede si Es wurde eine Lsung gewhlt, bei der lediglich ein einziger Thread fr die Visualisierung und die Berechnung der Simulation zustndig ist. Der Algorithmus verluft in leicht vereinfachter Form wie folgt ab: \begin{enumerate} - \item Die aktuelle simulierte globale Zeit sei $t$ und die globale Zeit wo die Simulation aufhrt sei $e$. + \item Die aktuelle simulierte globale Zeit sei $t$ und die globale Zeit wo die Simulation endet sei $e$. \item Wenn $t > e$, dann $t := e$ setzen. \item Neuberechnen und Zeichnen der Visualisierung zum Zeitpunkt $t$. Die dabei verstrichene Zeit sei $v$. \item Wenn $t = e$, dann Simulation beenden. @@ -581,22 +581,22 @@ for (i = t; i < t + v + p && i < e; i++) \item Bei Punkt 2 mit neuer Startzeit $t := t + v + p$ weitermachen. \end{enumerate} -Zus\"{a}tzlich muss noch die Simulationsvariable \textit{sim.clock.speed} ber\"{u}cksichtigt werden. Sie wurde wegen der bersicht im obigen Algorithmus nicht ber\"{u}cksichtigt. Intern hat der Simulator jeweils die echte Zeit und die Simulationszeit abgespeichert. Es werden stndig die verstrichenen echten Zeiten gemessen und anschlieend anhand von \textit{sim.clock.speed} die neuen tatschlichen Simulationszeiten berechnet. Die Rundungsfehler werden pro Durchgang in eine \textit{double}-Variable (Fliekommazahl doppelter Genauigkeit) abgespeichert. Wenn der Betrag der Rundungsfehler $>= 1$ ist, dann wird davon der ganze Werteanteile in der Simulationszeit bercksichtigt. F\"{u}r jede lokale Prozesszeit sowie der dazugeh\"{o}rigen lokalen Uhrabweichungen wird \"{a}hnlich verfahren. +Zus\"{a}tzlich muss noch die Simulationsvariable \textit{sim.clock.speed} ber\"{u}cksichtigt werden. Sie wurde wegen der bersicht im obigen Algorithmus nicht ber\"{u}cksichtigt. Intern hat der Simulator jeweils die echte Zeit und die Simulationszeit abgespeichert. Es werden stndig die verstrichenen echten Zeiten gemessen und anschlieend anhand von \textit{sim.clock.speed} die neuen tatschlichen Simulationszeiten berechnet. Die Rundungsfehler werden pro Durchgang in eine \textit{double}-Variable (Fliekommazahl doppelter Genauigkeit) abgespeichert. Wenn der Betrag der Rundungsfehler $>= 1$ ist, dann wird davon der ganze Werteanteil in der Simulationszeit bercksichtigt. F\"{u}r jede lokale Prozesszeit sowie der dazugeh\"{o}rigen lokalen Uhrabweichung wird \"{a}hnlich verfahren. Jede Simulation besitzt somit seinen eigenen Simulationsthread. Des Weiteren gibt es noch den Java Swing-Thread (s. \cite{Swing}), der fr die GUI und somit auch f\"{u}r die Anwenderinteraktion zustndig ist. Der Anwender kann zu jedem Zeitpunkt in die Simulation eingreifen, weshalb alle Anwendereingriffe synchronisiert werden. \section{Serialisierung und Deserialisierung von Simulationen} -Der Anwender kann eine erstellte Simulation im Datei-Men speichern oder eine bereits abgespeicherte Simulation laden. Hierbei wird von der aus Java angebotenen Mglichkeit Objekte zu Serialisieren Gebrauch gemacht. Im Paket \textit{serialize} (s. Abbildung \ref{fig:PackageSerialize}.) befinden sich Helfer, die bei der Serialisierung einer Simulation unter die Arme greifen. +Der Anwender kann eine erstellte Simulation im Datei-Men speichern oder eine bereits abgespeicherte Simulation laden. Hierbei wird von der aus Java angebotenen Mglichkeit Objekte zu Serialisieren Gebrauch gemacht. Im Paket \textit{serialize} (s. Abbildung \ref{fig:PackageSerialize}.) befinden sich Helfer, die bei der Serialisierung einer Simulation unterst\"{u}tzend sind. -Da nicht alle Daten f\"{u}r die Speicherung einer Simulation relevant sind, wird nur eine Auswahl von Klassenattributen serialisiert. Zum Beispiel werden alle Simulationseinstellungen serialisiert, nicht jedoch GUI-Objekte. Alle Serialisierbaren Klassen implementieren das Interface \textit{VSSerializable} mit folgenden zwei Methoden: +Da nicht alle Daten f\"{u}r die Speicherung einer Simulation relevant sind, wird nur eine Auswahl von Klassenattributen serialisiert. Zum Beispiel werden alle Simulationseinstellungen serialisiert, nicht jedoch GUI-Objekte. Alle serialisierbaren Klassen implementieren das Interface \textit{VSSerializable} mit folgenden zwei Methoden: \begin{itemize} \item \textit{public void serialize(VSSerialize serialize, ObjectOutputStream oos)}: Diese Methode wird bei jedem Serialisierungsvorgang aufgerufen (Speichern einer Simulation). \item \textit{public void deserialize(VSSerialize serialize, ObjectInputStream ois)}: Diese Methode wird bei jedem Deserialisierungsvorgang aufgerufen (Laden einer Simulation). \end{itemize} -Die Methoden \textit{serialize} und \textit{deserialize} erhalten neben einen Dateistream auch ein \textit{VSSerialize}-Objekt als \"{U}bergabeparameter. Fr jeden Serialisierungsvorgang wird zuerst ein Objekt der Klasse \textit{VSSerialize} erstellt. Eine zu serialisierende Simulation besteht aus vielen voneinander abhngigen Objekten. Jedes Objekt kann dabei Referenzen auf andere Objekte besitzen. Wrde jedes Objekt komplett serialisiert werden, so wrden Objekte, auf denen mehrere Referenzen existierten, in mehrfacher Ausfhrung behandelt werden. Bei Kreisverweisen (Objekt A hat eine Referenz auf Objekt B und Objekt B hat eine Referenz auf Objekt A als Attribut gespeichert) wrde die Serialisierung sogar in einer Endlosschleife enden. \textit{VSSerialize} hilft hierbei dies zu vermeiden und merkt sich Informationen von allen bereits serialisierten Objekten, so dass jedes Objekt genau einmal serialisiert wird. Bei der Deserialisierung hilft eine Instanz von \textit{VSSerialize} dabei, alle Objekte wieder mit den richtigen Referenzen auszustatten. +Die Methoden \textit{serialize} und \textit{deserialize} erhalten neben einem Dateistream auch ein \textit{VSSerialize}-Objekt als \"{U}bergabeparameter. Fr jeden Serialisierungsvorgang wird zuerst ein Objekt der Klasse \textit{VSSerialize} erstellt. Eine zu serialisierende Simulation besteht aus vielen voneinander abhngigen Objekten. Jedes Objekt kann dabei Referenzen auf andere Objekte besitzen. Wrde jedes Objekt komplett serialisiert werden, so wrden Objekte, auf denen mehrere Referenzen existierten, in mehrfacher Ausfhrung behandelt werden. Bei Kreisverweisen (Objekt A hat eine Referenz auf Objekt B und Objekt B hat eine Referenz auf Objekt A als Attribut gespeichert) wrde die Serialisierung sogar in einer Endlosschleife enden. \textit{VSSerialize} hilft hierbei dies zu vermeiden und merkt sich Informationen von allen bereits serialisierten Objekten, so dass jedes Objekt genau einmal serialisiert wird. Bei der Deserialisierung hilft eine Instanz von \textit{VSSerialize} dabei, alle Objekte wieder mit den richtigen Referenzen auszustatten. \begin{figure}[h] \centering @@ -605,7 +605,7 @@ Die Methoden \textit{serialize} und \textit{deserialize} erhalten neben einen Da \label{fig:PackageSerialize} \end{figure} -Alle Klassen, die \textit{VSSerializePrefs} erweitern, knnen komfortabel smtliche Einstellungen serialisieren. Beispielsweise speichert der Simulator alle seine globalen Simulationseinstellungen bei einer Serialisierung automatisch ab. Bei den Prozessen und den Ereignissen (und somit auch Protokollen) gilt Selbiges analog. +Alle Klassen, die \textit{VSSerializePrefs} erweitern, knnen komfortabel smtliche Einstellungen serialisieren. Beispielsweise speichert der Simulator alle seine globalen Simulationseinstellungen bei einer Serialisierung automatisch ab. Bei den Prozessen und den Ereignissen (und somit auch Protokollen) gilt selbiges analog. Abgespeicherte Simulationen sollen auch mit zuknftigen Versionen des Simulators kompatibel bleiben. Deshalb werden alle Objekte aller Klassen, die \textit{VSSerializable} implementieren, nicht komplett serialisiert. Bei der Serialisierung werden nur relevante Klassenattribute, die der Simulationsprogrammierung, und nicht beispielsweise GUI-Komponenten angehren, serialisiert. Eine Erweiterung des GUIs muss somit nicht bei den Serialisierungen ber\"{u}cksichtigt werden. @@ -629,9 +629,9 @@ Der folgende Quelltext-Ausschnitt zeigt eine Beispielimplementierung von \textit Vor und nach der eigentlichen Objektserialisierung wird jeweils eine boolesche Flagge mit dem Standardwert \textit{false} serialisiert. Sobald in einer sp\"{a}teren Simulator-Versionen weitere zu serialisierenden Klassenattribute hinzukommen, dann kann bei der Deserialisierung diese Flagge abgefragt und separat behandelt werden. Somit bleiben ltere bereits abgespeicherte Simulationen stets zur neusten Version des Simulators kompatibel. Wenn eine Flagge auf \textit{true} gesetzt wird, dann kann unter den neuen Attributserialisierungen eine weitere Flagge gesetzt werden, wodurch beliebig viele Erweiterungen in die Serialisierung sukzessiv einbaubar sind. -Das zu serialisierende Objekt besitzt hier lediglich zwei zu serialisierende Attribute. Mit \textit{serialize.setObject} speichert \textit{serialize} eine Referenz auf das aktuelle Objekt ab, worauf folgende Objektserialisierungen zurckgreifen knnen. Danach wird ein \textit{process} und \textit{someOtherSerializableObject} serialisiert. Die Deserialisierung folgt genau der umgekehrten Reihenfolge, wobei ein Objekt von \textit{VSSerialize} hierbei hilft die Referenzen auf andere Objekte korrekt zu setzen. +Das zu serialisierende Objekt besitzt hier lediglich zwei zu serialisierende Attribute. Mit \textit{serialize.setObject} speichert \textit{serialize} eine Referenz auf das aktuelle Objekt ab, worauf folgende Objektserialisierungen zurckgreifen knnen. Danach wird ein \textit{process} und \textit{someOtherSerializableObject} serialisiert. Die Deserialisierung folgt genau in der umgekehrten Reihenfolge, wobei ein Objekt von \textit{VSSerialize} hierbei hilft die Referenzen auf andere Objekte korrekt zu setzen. -In Abbildung \ref{fig:SequenceSerialize} ist die komplette Sequenz f\"{u}r die Serialisierung (das Abspeichern) einer Simulation angegeben. Zuerst wird \textit{serialize} auf die globalen Simulationseinstellungen (\textit{VSPrefs}) und dem Simulatorobjekt (\textit{VSSimulator}) ausgefhrt. Das Simulator-Objekt fhrt \textit{serialize} wiederum auf das \textit{VSSimulatorVisualization}-Objekt aus. Dort wird jeder Prozess inklusive alle Protokollobjekte serialisiert. Anschlieend folgt der Task-Manager inklusive allen programmierten Ereignissen. +In Abbildung \ref{fig:SequenceSerialize} ist die komplette Sequenz f\"{u}r die Serialisierung (das Abspeichern) einer Simulation angegeben. Zuerst wird \textit{serialize} auf die globalen Simulationseinstellungen (\textit{VSPrefs}) und dem Simulatorobjekt (\textit{VSSimulator}) ausgefhrt. Das Simulator-Objekt fhrt \textit{serialize} wiederum auf das \textit{VSSimulatorVisualization}-Objekt aus. Dort wird jeder Prozess inklusive alle Protokollobjekte serialisiert. Anschlieend folgt der Task-Manager mit allen programmierten Ereignissen. \section{Helferklassen und Klassen fr Ausnahmebehandlungen} @@ -646,7 +646,7 @@ Es wurden noch nicht die Klassen der Pakete \textit{utils} (s. Abbildung \ref{fi \end{figure} \begin{itemize} - \item \textit{VSFrame}: Alle Objekte, die ein eigenes Swing-Fenster besitzen, erben von der Klasse \textit{VSFrame}. Sie stellt sicher, dass neue Fenster an der richtigen Position der Bildflche platziert werden und dass Unterfenster (Fenster, die aus einem anderen Fenster aus geffnet wurden) automatisch mit-geschlossen werden, sobald eines ihrer ``Erzeugerfenster'' geschlossen wird. + \item \textit{VSFrame}: Alle Objekte, die ein eigenes Swing-Fenster besitzen, erben von der Klasse \textit{VSFrame}. Sie stellt sicher, dass neue Fenster an der richtigen Position der Bildflche platziert werden und dass Unterfenster (Fenster, die aus einem anderen Fenster heraus geffnet wurden) automatisch mit geschlossen werden, sobald eines ihrer ``Erzeugerfenster'' geschlossen wird. \item \textit{VSAboutFrame}: Dieses Fenster implementiert die ``About-Anzeige'' die im Simulator ber das Datei-Men aufgerufen werden kann. \item \textit{VSInfoArea}: Ist fr die Textanzeige in \textit{VSAboutFrame} zustndig. \item \textit{VSClassLoader}: Diese Klasse wird fr die automatische Instantiierung von Ereignisobjekten bentigt, wenn dem Simulator lediglich die Klassennamen (aus \textit{events.VSRegisteredEvents}) bekannt sind. @@ -663,7 +663,7 @@ Es wurden noch nicht die Klassen der Pakete \textit{utils} (s. Abbildung \ref{fi \label{fig:PackageExceptions} \end{figure} -Im Paket \textit{exceptions} befinden sich lediglich einige Klassen, die fr Ausnahmebehandlungen verwendet werden. \textit{VSNotCopyableException} wird whrend einem Kopierversuch eines nicht-kopierbaren Ereignis geworfen. \textit{VSNegatieNumberException} wird geworfen, wenn negative Zahlen dort auftreten, wo sie es nicht sollten. Wenn ein Editorobjekt die Benutzereingabe einer Integer-Vektor-Variable nicht parsen kann, so greifen es auf \textit{VSParseIntegerVectorException} zurck. +Im Paket \textit{exceptions} befinden sich lediglich einige Klassen, die fr Ausnahmebehandlungen verwendet werden. \textit{VSNotCopyableException} wird whrend eines Kopierversuch eines nicht-kopierbaren Ereignisses geworfen. \textit{VSNegatieNumberException} wird geworfen, wenn negative Zahlen dort auftreten, wo sie es nicht sollten. Wenn ein Editorobjekt die Benutzereingabe einer Integer-Vektor-Variable nicht parsen kann, so greifen es auf \textit{VSParseIntegerVectorException} zurck. \begin{figure} \centering @@ -684,28 +684,30 @@ Die \textit{main}-Methode befindet sich in der Klasse \textit{simulator.VSMain}. \item Alle Klassen- und Interfacenamen beginnen mit groen Buchstaben, whrend alle Variablen-, Methoden- und Attributnamen mit kleinen Buchstaben beginnen. Namen finaler Variablen und Attribute sind komplett in Grobuchstaben gehalten. \item Alle Quelltext-Dateien besitzen einen Header, der Informationen der verwendeten Lizenz angibt. \item Alle Quelltext-Dateien werden vollstndig mit Javadoc dokumentiert. - \item Der komplette Quelltext inklusive Dokumentation werden in englischer Sprache verfasst. - \item Eine Quelltext-Datei hat eine maximale Zeilenlnge von 80 Zeichen, was der Standardbreite eines UNIX-Terminals entspricht. Eine Ausnahme stellt die Klasse \textit{prefs.VSDefaultPrefs} dar, denn hier befinden sich auch lngere Texte die in Strings abgespeichert werden, wo manuelle Zeilenumbrche wenig Sinn ergeben. + \item Der komplette Quelltext inklusive Dokumentation wird in englischer Sprache verfasst. + \item Eine Quelltext-Datei hat eine maximale Zeilenlnge von 80 Zeichen, was der Standardbreite eines UNIX-Terminals entspricht. Eine Ausnahme stellt die Klasse \textit{prefs.VSDefaultPrefs} dar, denn hier befinden sich auch lngere Texte die in Strings abgespeichert werden und wo manuelle Zeilenumbrche wenig Sinn ergeben. \item Es werden zuerst Klassen aus der Java-Standardbibliothek importiert, bevor Klassen aus dem VS-Simulator selbst importiert werden. \item Fr die Einrckung des Quelltextes wird das Tool \textit{astyle} mit den Aufrufparametern \textit{--style=java --mode=java} verwendet. Hierbei wird eine Einrckungslnge von 4 Zeichen verwendet. \item Namen aller Klassen und Interfaces tragen als Prfix stets \textit{VS}, was fr Verteilte Systeme steht. \item Namen abstrakter Klassen tragen als Prfix stets \textit{VSAbstract}. \item Namen aller Protokollklassen tragen als Postfix \textit{Protocol} (z.B. \textit{VSPingPongProtocol}). - \item Namen aller Ereignisklassen, die keine Protokolle implementieren, tragen als Postfix \textit{Event} (z.B. \textit{VSProcessCrashEvent}). - \item Namen aller dejenigen Klassen, die ein Fenster implementieren, tragen als Postfix \textit{Frame} (z.B. \textit{VSSimulatorFrame}). - \item berall wo es Sinn ergibt werden Java-Generic-Datentypen verwendet (z.B. \textit{java.util.Vector} anstelle von \textit{java.util.Vector}). + \item Namen aller Ereignisklassen die keine Protokolle implementieren, tragen als Postfix \textit{Event} (z.B. \textit{VSProcessCrashEvent}). + \item Namen aller dejenigen Klassen die ein Fenster implementieren, tragen als Postfix \textit{Frame} (z.B. \textit{VSSimulatorFrame}). + \item berall wo es Sinn ergibt werden Java-Generic-Datentypen verwendet (z.B. \textit{java.util.Vector} anstelle von \textit{java.util.Vector}). \end{itemize} \section{Entwicklungsumgebung} In diesem Teilkapitel soll ein kleiner Einblick in die Umgebung, in der der Simulator entwickelt wurde, gewhrt werden. Fr diese Diplomarbeit wurde ausschlielich Open Source Software verwendet. Die einzige Ausnahme stellt Microsoft Windows XP dar, worauf der Simulator zustzlich getestet wurde. Der Simulator wurde jedoch hauptschlich unter dem Betriebssystem FreeBSD 7.0, was ein Open Source Unix-Derivat ist, programmiert. -Wie bereits bekannt ist, wurde Sun's Java, was mittlerweile auch Open Source Software ist, in der Version 6 (1.6) als die Implementierungssprache gewhlt und fr die Quelltextdokumentation kam Javadoc, fr die automatische Quelltexteinrckung astyle und als Java-Referenz kam \cite{Javadoc} zum Einsatz. Als Built-Tool wurde hier auf Apache Ant (s. \cite{AntManual} und \cite{AntTutorial}) zur\"{u}ckgegriffen. Fr die Erstellung dieses PDF-Dokumentes wurde LaTeX in Verbindung mit dem Built-Tool GNU Make und Rubber verwendet. Eine Rechtschreibberprfung wurde mit aspell sowie OpenOffice.org durchgefhrt. xPDF diente als PDF-Anzeigeprogramm. +Wie bereits bekannt ist, wurde Sun's Java, was mittlerweile auch Open Source Software ist, in der Version 6 (1.6) als die Implementierungssprache gewhlt und fr die Quelltextdokumentation kam Javadoc, fr die automatische Quelltexteinrckung astyle und als Java-Referenz kam \cite{Javadoc} zum Einsatz. Als Built-Tool wurde hier auf Apache Ant (s. \cite{AntManual} und \cite{AntIntro}) zur\"{u}ckgegriffen. Als Versionierungssystem wurde SVN (Subversion) verwendet. Fr den Zugriff auf das SVN-Repository mittels HTTPS (Hypertext Transfer Protocol Secure) wurde der Apache-Webserver mit WebDAV-Plugin verwendet. Zudem kam WebSVN als Webschnittstelle des SVN-Repository zum Einsatz. Mozilla Firefox diente fr das Betrachten der Javadocs und der WebSVN-Oberflche. Fr das Schreiben von Java-Quelltext wurde GVim (Graphical Vi IMproved) sowie Eclipse verwendet. Eclipse untersttzt bessere Code-Refactoring-Methoden, whrend GVim mit seiner Flexibilitt und schnelleren Editiermglichkeiten und mit Vim-Script, der eigenen Script-Engine, glnzt. Es wurden auerdem das JAutoDoc- (fr die Erstellung von Javadoc-Kommentare) und das Subversion-Eclipse-Plugin verwendet. Je nach Zweck wurde zwischen diesen beiden Umgebungen gewechselt. Fr das Verfassen des LaTeX-Dokumentes wurde GVim verwendet. +Fr die Erstellung dieses PDF-Dokumentes wurde LaTeX in Verbindung mit dem Built-Tool GNU Make und Rubber verwendet. Eine Rechtschreibberprfung wurde mit aspell sowie OpenOffice.org durchgefhrt. xPDF diente als PDF-Anzeigeprogramm. + Smtliche UML-Diagramme wurden mit ArgoUML angefertigt und die Screenshots mit The GIMP (GNU Image Manipulation Program) sowie ImageMagick nachbearbeitet. Mit dem zip-Programm wurden alle VS-Simulator Distributionen verpackt. \subsubsection{Linkliste der verwendeten Software} diff --git a/LaTeX/diplomarbeit.pdf b/LaTeX/diplomarbeit.pdf index 3bcc238..f398b5c 100644 --- a/LaTeX/diplomarbeit.pdf +++ b/LaTeX/diplomarbeit.pdf @@ -1485,8 +1485,8 @@ endobj 404 0 obj << /Producer (GPL Ghostscript 8.61) -/CreationDate (D:20080813230409Z00'00') -/ModDate (D:20080813230409Z00'00') +/CreationDate (D:20080813231100Z00'00') +/ModDate (D:20080813231100Z00'00') >> endobj 405 0 obj @@ -1579,8 +1579,8 @@ endobj 414 0 obj << /Producer (GPL Ghostscript 8.61) -/CreationDate (D:20080813230409Z00'00') -/ModDate (D:20080813230409Z00'00') +/CreationDate (D:20080813231100Z00'00') +/ModDate (D:20080813231100Z00'00') >> endobj 415 0 obj @@ -6382,8 +6382,8 @@ endobj 744 0 obj << /Producer (GPL Ghostscript 8.61) -/CreationDate (D:20080813230409Z00'00') -/ModDate (D:20080813230409Z00'00') +/CreationDate (D:20080813231059Z00'00') +/ModDate (D:20080813231059Z00'00') >> endobj 745 0 obj @@ -6574,8 +6574,8 @@ endobj 769 0 obj << /Producer (GPL Ghostscript 8.61) -/CreationDate (D:20080813230408Z00'00') -/ModDate (D:20080813230408Z00'00') +/CreationDate (D:20080813231059Z00'00') +/ModDate (D:20080813231059Z00'00') >> endobj 770 0 obj @@ -6691,8 +6691,8 @@ endobj 783 0 obj << /Producer (GPL Ghostscript 8.61) -/CreationDate (D:20080813230410Z00'00') -/ModDate (D:20080813230410Z00'00') +/CreationDate (D:20080813231100Z00'00') +/ModDate (D:20080813231100Z00'00') >> endobj 784 0 obj @@ -6897,8 +6897,8 @@ endobj 813 0 obj << /Producer (GPL Ghostscript 8.61) -/CreationDate (D:20080813230410Z00'00') -/ModDate (D:20080813230410Z00'00') +/CreationDate (D:20080813231100Z00'00') +/ModDate (D:20080813231100Z00'00') >> endobj 814 0 obj @@ -7011,8 +7011,8 @@ endobj 827 0 obj << /Producer (GPL Ghostscript 8.61) -/CreationDate (D:20080813230409Z00'00') -/ModDate (D:20080813230409Z00'00') +/CreationDate (D:20080813231059Z00'00') +/ModDate (D:20080813231059Z00'00') >> endobj 828 0 obj @@ -7111,8 +7111,8 @@ endobj 836 0 obj << /Producer (GPL Ghostscript 8.61) -/CreationDate (D:20080813230410Z00'00') -/ModDate (D:20080813230410Z00'00') +/CreationDate (D:20080813231100Z00'00') +/ModDate (D:20080813231100Z00'00') >> endobj 837 0 obj @@ -7235,8 +7235,8 @@ endobj 852 0 obj << /Producer (GPL Ghostscript 8.61) -/CreationDate (D:20080813230409Z00'00') -/ModDate (D:20080813230409Z00'00') +/CreationDate (D:20080813231059Z00'00') +/ModDate (D:20080813231059Z00'00') >> endobj 853 0 obj @@ -7456,18 +7456,14 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 872 0 obj << -/Length 2028 +/Length 2029 /Filter /FlateDecode >> stream -xY[~_Gsӭii.'gm-ٞ+K[InN?HdEG!ᐳOxf'% -Bx0}+e[^|s*/fIjoyI 8]n~ߤOYc\Flp=fg&3l._lg,ZvjYl:d:#o J; EvOĭ$Z^dž;"D,B{}yGZ[c GZ>W3<[*HECcsrkUٔ2u];s͵Zt´LCߒUC7 f -WS5 >+y9V@y5w* Զi휣Q޼c."HGk5ݩHȈ*3;<q/,,4"3}?V&=C8MK=P-ǿ;GR2)sqB]vuP7 ZZUxܙrkS4 \btSc8?@6h7ƆTLs,Hj1TgΪ#Cl qT֞RaYiHN@c;Z;Hi@RQ%f0|ަ9yN`"+ O&kb^E6!4 2PBpi3Zk }XI(`u -K-Y,zX3Xk^1Y bݔ‡+XÙS -8SzAH{3fDmV#H`z,1OO54}E',@u -R-YHzX3k@J&,s gX@ۓhR!S zhA?X]%SZ׵0khu/h\ѯЁFw'FΝcI8keŨCp<NJ1}\&L:A̔RdmP)ي:'hR we'܄`/TC~;>'o f*ʁv2 h,5ժ1܉d-UG6\sGe {wfww&2gpOAlځmsm3K qxs:pB8Շ$`eE!6UFdK,vO ^.:vej>ouZ7s<)L'<7є䴽"5<@ؼ7Sjx3|k=hu ]Fqvss }q|p񾥏_z`LQLp 7p6ۜ> ><ZaA?mAZmU;IMc|4ˀ).u0f,/;l6hj5V9,}Ax -e}%A qNVGu`37)^J:KGb,x.cNJQt0δז\|/߾zX΢_e k   ZGYs`!9j8P#t'E"/fpKH Cb 5m` "ː|&zZy]1d$շRpZh_LJpĹtuOu'rEĦ#΂$n]VyCCIZLSi Aj{#+ `nu t'C'Ը%nS%#u{򷋟n/8F0>g"Ib%X\E(!F 9sCD)x"" -o  |x c@ T,p%ޠcA~xϠ=V5zj/yξ@ Zk{M˪Jx Ӂ5=`}/].+\s3ldspuƔN?(7ڱDӮ!VPugy?00UKHg}!ljz=рa\^SI# w\H?!d)endstream +xY[۶~_GYta6m\N[+[KnN?f8,Z;@"Spf8p+Dh(,7Z1)q`:_ɞLP4<|y*Ɩunw}2jފ$gi/Q(NR,tGN$lO@fHQ`ViВIHJRHjCt,g?ADԧb"yXTE&d,6U1׶xYdUUf{#͵LRaZs !o&+[dfKdW6K >wD>[>xu ~mTu9EiT$HG<(* S^#W, aηaMDŏi`7OìP=쟦=k6GR2)sPB]CvuP7 RZEUOX̙-rK[U +rӧ?@6ns3e{Zr j"̐lBq2 d.MFkeK:a :TԐ), >Bz*vYd)`E) g=܌S3489YDWydY8MO6=4}Eg ա:,NI=@j(Hu %Mn W3'{'Ѥb"u~pNi]U6Խ~0o;q4Pw9JYgg/(!P?V 0k)HʡtS!قZ#^eN 9#'woyqKl^=;mឪ˷v=K]\D3STMGTՉTPƄmF!6M~w+ZtƩ>Hܙ ^;ngjݾeVS<1DLhFYͶ|^ lڲf}Aeg>-rW~bA@߭<0޷K ^g }FӔܦ/W.,x? (ÁMAZeEHM'쁁l%ˈ).u0uf$`/;\6+ZN84}Axe }-ͦ  pW;f~5c,突Hp̛:;$q*&Q;N[Jr?|l>p|6% 4Ĵ e k ͋N@^\w4h & A78uE=II۫/G*6MSdb48`e}eeVlk(txb +eײ== ձML:5i^#N8L*r1xCCQ:LSᑁr_5{p‘xʕhzo𷺄Z:JMߞ 5f~>TɄA_x[ PL3a 6C).fi9rzwJFoQfEB@P$qz ✁ai +\ Z2dG ʹX3wsvQ_3]vo`|:::ֵg7$۝};tICrԅK|8lj:cL٫vPO1HZvg~?08IU3_G3ԾеG@\h@1;)$^AP{*fKPOendstream endobj 871 0 obj << /Type /Page @@ -7628,22 +7624,24 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 901 0 obj << -/Length 2853 +/Length 2854 /Filter /FlateDecode >> stream -xڭZ[ۺ~_a6fx%O riӜnM ی,o%9_)-d)jn#e1Ob4OY*1[l ^]eǫ%,5F>~I8 <-K'sˈ]alr[-"ǷW/?j#Yb|Z#ϖ2a\s+mg*MOxLZ&?S\\`ReY~H@,M2}qٕ3gJ"mݝ$3YSB1R5kߕuc?_xğU>5˃۳&?5tk܀Y*Q\9O~-=[mlM'P5Hq3O#H0]/ݱ -F6q<3dZ7V$uӲ`~5 GoPFW6yf໼ cMt0ŏ(lkz5g GsX>VJ(CURS;ᩱ4.%=[k7砜m޵4^i[muESGH5('Lh.cLB*\upFSyJɳ*O9!)3RB)J{ЗgL}dGZ5$euWO?,!"e<;XЈ"{^[AET81J5vJIN%$,N9u9G?2.-F&$L׻fȞ #0EB(嶂a r"<}/uJt8Ȯym}9!ӝ vy [ u Қp9R2~̘cb)"DrRf\v&DKߕAmu \@Yp:4Q *,^OP$XqBޖ2< RBG=L(a*&W-">mEI8rڜ0<<$.r{^TQvF\ք9'2,f[fʢ8hy6⢯:W '\X\qaqZ/ble!%]6`uaPM KF#&Ը1lZ_PsȎEE|#LtI؁d`KE!1_v#pQn0>+!á}Q*ڠn 4b/=5Ne=3.~0hB.1-zCŪ?5MP׎o2^B^bcK,xDoy]qQƅJ&FFPz^}#v$b=yzmĐ}ksCO0|K#]4!VB -0I[/4v 02L4@&t-`lqgHg<0UX߁oBRVu7 xu!CSqR2Ml -x52"U "@uIH kƱl1Ҏ*=ѡ7Łߡ#HX|`Jؚ;&P!шz R<:#p>t~g!l BO!F6Bƕ-D{rXaQX#&zH,+B!zsi/T慻88 -24ݙIEYv&t$"üTԎu{xI xC9 `+u_p[ s= JM^@wWHTfgo}@ig]k9k ok|d\iᾔ8$3OT+ }=Oٮt5DL؄nBC9i4MhTֽ.n -:<*|_DvxRns/Av=pD}YW_ p'h]JKEӡGt$:,z=Y;uM~ n$PK8)xCr堷;\({!ޚ$ /1,t$ -R2e }sKmVцݒ,&r݂}xInZܲwU;2e=}Pw9o !R(#Dh;HНXQ'u,}hc i¹=/^u=>c6U)c%M+}Kreendstream +xڭZYۺ~_a60biCdiNM ی$O%9_sxHY,)bky.T@Ŧ{6Aǫ"HXEzBjdI.oM +d,5[!7]aJSWjˏPrD|ZGLQd¸ RW+THS(:&7S\\`RD">ܐ8‘(%YGʼngW"xD b2Eڹ;I-b\jѡk˛/{?as({gm~'׸THrD|[Vp"ػ߳hkXh@yNQI'CaX8btNj(L fÊ\UB`kT{R-ZE Oni)'jӜ'bQ@]* !J<7V/J,Z3 =P!ZBC67Eq]mOT8a>k2dK,Z%B͔'vigRvF"S]aRE7y|y,PwYc P\B!fG | I<.PҲ`~ GoPF&yf໼6-cCt0ŏ(4 +l;z5g GsX>VJ(}U骀RS;h54=;k砜퐶-M?q[D~QQTUO5('Lh.cLBz*\upFSyJɳ*O9im>)3RB)JoЗg"ɖY?fkH,.i~ "2LBiJphD!͊ohM@ %6JN%$,N9uYGT?2 &6&O7v̞!#0E|(Nvaw " uqdT:l*|ZHeiZZ0 R+0zʻDZA;BoíaZ?y6{zȡΦ܉E nn+3Ui +f^H>`T8jkfùW:?sWpi G"o`gIt(ܧNZk_` +-5|6ljߌwgܻ9ʂ@A0l,XSH\W-{1]H*mT: L"G$ 6?Mw'^ TnOԕ//Jk" +SH=Ƞ1cM@R +:NI/[/]WE4rye0 +fpWodf&BҐkpxgU 嘏m^O7V:au Sa5zk+J‘+ #scJ"7'\Tь jvYd +)-e=;l) أi^;56>ɱh~r%:"ԑ ġ^wKyN; x$! NYqbo*8+ c~6:L&Ewhv]E46$C[ +aklwW@=ex02"~VAbCTl,A(&`4 kOdt3|)cxqg^XRƁWmjr;7DЯ^ |aCEF "[!lMOk}K!NY̡) 7)ǠfD6*&"OuID kƱjm0Ҏ*=ѱŁۡ C=̊؆={6F40e*ѣcZ6ʣa!L S&!-(!ssi ȿ{LM" y֫3Lwoٰ!$BANX31yy>LNdS^#bl8/<%i\X!0L]Db~#b`dл,ݮ5ݛ[|Ox ⳁ{J> $d11`}P@u4wQig#,HZ.?`+jcVveʕZLj<]^Pjd~)jjUbs+[8?ZË8TF@?gq) QOt"lNjj?wǵ/ #ʽ2fB 9E㵩f_*σr=C0, ZaiM '_(9Q?1xKjը[\(F{!ކ$o1,t( +tv7Q2e }{KmVі\,6/Kg`ތ~7{}L{Cr.ǟ4 -!D +uc(-3{ڿk"nltv:`Yx`_ [ $[M8Wbp +lZYc> >> endobj @@ -7719,23 +7717,21 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 918 0 obj << -/Length 2180 +/Length 2001 /Filter /FlateDecode >> stream -xڕY[s~ϯ4IQҾenwiO2}8M䘑T_u;Ih$@ WX2*N pV9 .*aRruR0xOhuyx(ORuauUuws]6K_gHū5RIe>\~_LE;8*l̹b`\p -#ur:j㇁)-:Ϻ7e~I¤VCsS[LBC˞|xE3&|PN{@Wf-TE֧)c`YF7A2yA1C2$=7l{˚d8 $cY{haGuj;0, EBcm 8 B8$|m z3[gUV.pJY|쪧8T -yX!cH-7H'jZY@ R: +zOAf8j=[R}=@6<)Kǎ -9P{  U4 ~^ -KWuV37X3epoY -9>&p`<8umQf8<6`џ -, bIү0pӜgI|tvٓ3IN^- fbzr#AV]]LEKYђcI@R -]Jڱ5Q%8Rٿ3-IsKC -OBrBE3fjaWmۛ4O4!m RKXAw; uCWmi?]͗ ~<@\hJ86~ġB**})1YT5E"`KAe \K;a.f 1 #8N ~_Qаm k+CvFm%t ͚:X} ZY&e 4υ.s ^j[,Pj*CwHWP#Q'h9W I?5*!jC־["P1 cȁ5 @!irW37O&D W@S -WQخCIЂs;6 ޝJDO2x|JDaHqODx)ZӘ%<:QP@0K9j"&2?JCOw0f:frN<{Ԏ .(rM b ?N>JbBQ$gNï{&cMbq匢"Lf-y ш9YƦ>eitcMGu٪Ի7V"W{\ )C) 7 ˜0 ;ݣ>ޯPL2-q [[9-ك p  <:ZU%kX0__*FgUl] -V>!kGluXY׼v4jN)$>D K<]pq*SB}rFrgѫ5iCU^2MT̛?]tnEENLIJtϦ)?V,F]mZ]t ǠgtK\nV4>Iv_aY&N~>Hf gC.>=:S@$)1سP,PS L3Z<%*ۚf$gs50p s4K92ya&2 +̤?%2!E߮x?c=\lL{k{Gi0sAynTʄ?~9v[H(\ +<ޙM3e(+%[QiiZH 8]]]$t_θCTUnhm5GoBvyTlA4)-< X]Ct|Aqg/4Ivk>rr>́ҹ?Ҏ3:l.C608 CW)rZp9)(!xovTۣs܂JR9%D%F7;6,i Hں p}\ +v@|\]튺,BscMutHfC\R!`NzVHL dj32v7qg\"a}3}&pmoр?^!ZBW]ŭt>u@WFi!S*,h= 5 +۲A|m1 l? ]4x6uiv.o@,k[/W}?:qB^wW03Ư/)ܴj8*%ucѽ_T@^gd[] 퓆#&9;}$ӬjPrˈ|wk?( +9!̐5RZp`!Søtf̡<-Éڋ8沉s Jy + $:]D&-t.up"3!R+*L. OPz( ڍTYԽS,5ԮFk4잢SUn WӨj zc +?`=Z/vy%JϢwڦ~_1M%]]@|Q3 Hu "IBl,mN1 b b`rE0,{ vHǶ7}k@ oE]Fu.|R{> q3}8^tѷ/GPx?0Ҹ|JJA-~(1/3q\6endstream endobj 917 0 obj << /Type /Page @@ -7772,8 +7768,8 @@ endobj 923 0 obj << /Producer (GPL Ghostscript 8.61) -/CreationDate (D:20080813230407Z00'00') -/ModDate (D:20080813230407Z00'00') +/CreationDate (D:20080813231058Z00'00') +/ModDate (D:20080813231058Z00'00') >> endobj 924 0 obj @@ -7795,14 +7791,14 @@ endobj 920 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [456.2811 530.1436 470.7367 540.7258] +/Rect [456.2811 529.0277 470.7367 539.6099] /Subtype /Link /A << /S /GoTo /D (figure.2.8) >> >> endobj 921 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 0] -/Rect [369.1915 434.6369 391.3401 443.2016] +/Rect [401.729 429.4758 423.8776 438.0406] /Subtype /Link /A << /S /GoTo /D (cite.Regexp) >> >> endobj @@ -7813,7 +7809,7 @@ endobj /D [917 0 R /XYZ 288.445 581.5827 null] >> endobj 922 0 obj << -/D [917 0 R /XYZ 74.4095 367.6536 null] +/D [917 0 R /XYZ 74.4095 337.3687 null] >> endobj 916 0 obj << /Font << /F63 220 0 R /F28 173 0 R /F26 170 0 R /F35 193 0 R >> @@ -7821,24 +7817,28 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 929 0 obj << -/Length 2821 -/Filter /FlateDecode ->> -stream -xڭn8}H+1YlvL,<ݴZcdHoՒ "X7˷?l*(hlωQH,\*farCdvlEՍ gnnlsxp8&V\V^`8|N:rO Nmjs:$up*dJψ-nKMh© Nj_rhJ")n3<ڕcq"e0|,E'MV=24&45(nS۱< !PR:;ׅj:6_jvi Y"b -C8;ҟƇ @Ok9m]jUm+T(j\}39{M׷@q)sIq=l3>]&G3CNԚSa*z;+\ AS?r;,b(qΎ:/  4'>^DZF 1o#gqZ0&Fɓ0kRMjż%Xrjɒ؃1Kc}$Ӿend+!eRP[dhqiЯ?Z o/ -1X}Vvertjcqh'z~EB;ذE;LjuDįH!o E-l-l;">W;AHr86v Cc8gg26vsG\> ԂR%"NB}l HjndLlA6I :=͘ -!Sq{7!sRkOwQ<ϗA>?j*IbUr3mY!q?ΦJ"f~ wZtv& MCR ?PRg|</>ݤe#L穔{\WY$0jS[ót5a#,L{Iݘb[f;؎-zDo7~t%_" -K᳒Nߏ>@*`JNcjU+%$t3D|RȓbD(m}"c}>tAx R -F`>ϭz45 ^cZ/yp1W f"gZYlXE_ޖcX}H->zb mbTFx{%\S=ި|&> +stream +xڭko6{?66zfwޡh=`~cFV#ˁ$wÒ-b>9_Wb*HUJhpz8~r{:m6QVWBI&BɻMY+{.Z]n"N֊ma9>f77=P,"i4*1Fj+%L' SDZ's%J&+'x<&2Y"Z.?RC=HD)ϥ +֭ >li,,i2Xvnt cQi#vЏO0^c붞 +p߬eh[^XFp^jGq-K:O'@ǨBE }DϪ'%4`D|O'wFڨ9B:83 Q95^!8j.KS[Ɯ `9 GoF( +)l t҂\@έn0u~8Pv \J/;Xe}sR, X}yE_`wFBRt7kSՐEEc]ÍEY~PV:;5Ǣ޻]Zg6muQcLX1/O\LJ@۟7q9ۡ,]nUm+ÈI2rϺ C[0:Q("vz8 ށt\ipEmmYĖPRk.8&"@XЃqe)z'tCnE4 "e<= wM'$EhN|j<5jH6SL0ւW4 1 +MA`,O5j֒D2ˆZcu͌Pz+6>;'ޝ&KrY&M臾 Bv@V]z5@ۭ휉evnʬ1 a)Jf9t) +B$~9B95p(XG +Vj8]Yqm +!a +j~D])*EsJ m*o ȧ)Ձ|r@c/TZ;-b3Y>G+"(ua= I1"ٓ$/f+Y\1/s\٬e# kYgW;w Btloyyei`}KSz.}cg484+40'h nf}JpJԇŬF,:k'窚~(}ũH-Wl!*oby:&)C$B* _Xt$& +(+:ӃZ,tfe3}x{~1y(P;>WO", B^2t)8LL`^/CU"9 fk}epPQ+NQv;b\)\)M$䠐p^BK(; -$&L$u`m~ՌOx{1!cIvzeFlwV2NY"eKi顐hVS(g+^$@Է'Do6ς_Ow~~ϧjݫWsjx75%< +RܻjU&z蟹jOXFLruM=;(2n +3G2tU Bnp␹dSU2OT@tv& HmCR2 wu CA_wgVT +]2QܝtX!=\Qbkg @Kk$sla2§赯wOiSEH^;ՔOHFa$CߟriA:4_O{in!:T' *]Jrae\ NOC\ <=Zۃ>.,cWE}s}չk;?Hv֕>0YweeSPH ~na& +|/q8MѾkN#8ɍpAó0&Mkn90,/vvgC[{4cQ哑_B1|9 +qy𥁇 acWC/uK5xg@\С$K%G_u nWM2:4̠Thشosk?&@=~jc8z{ˀ֝#oN= +jLjr&3p J`7hyׅ*XsʝVXHX_OO|LH|j=K5`Q("%20᳟-`±endstream endobj 928 0 obj << /Type /Page @@ -7859,46 +7859,39 @@ endobj /D [928 0 R /XYZ 74.4095 793.4011 null] >> endobj 931 0 obj << -/D [928 0 R /XYZ 74.4095 557.3018 null] +/D [928 0 R /XYZ 74.4095 531.3748 null] >> endobj 932 0 obj << -/D [928 0 R /XYZ 74.4095 528.917 null] +/D [928 0 R /XYZ 74.4095 505.785 null] >> endobj 933 0 obj << -/D [928 0 R /XYZ 74.4095 501.2001 null] +/D [928 0 R /XYZ 74.4095 480.8633 null] >> endobj 934 0 obj << -/D [928 0 R /XYZ 74.4095 472.1472 null] +/D [928 0 R /XYZ 74.4095 454.6055 null] >> endobj 935 0 obj << -/D [928 0 R /XYZ 74.4095 444.4303 null] +/D [928 0 R /XYZ 74.4095 429.6837 null] >> endobj 936 0 obj << -/D [928 0 R /XYZ 74.4095 414.9336 null] +/D [928 0 R /XYZ 74.4095 402.9821 null] >> endobj 937 0 obj << -/D [928 0 R /XYZ 74.4095 369.2192 null] +/D [928 0 R /XYZ 74.4095 360.0629 null] >> endobj 927 0 obj << -/Font << /F63 220 0 R /F28 173 0 R /F35 193 0 R /F70 552 0 R /F69 561 0 R /F65 558 0 R /F74 555 0 R /F88 715 0 R >> +/Font << /F63 220 0 R /F35 193 0 R /F28 173 0 R /F70 552 0 R /F69 561 0 R /F65 558 0 R /F74 555 0 R /F88 715 0 R >> /ProcSet [ /PDF /Text ] >> endobj 942 0 obj << -/Length 2563 +/Length 2560 /Filter /FlateDecode >> stream -xڥ]o82H}Kl7[4]. njFIn7ʒ,; -43ηL?9KTDgI aNְ+v}꫻wij4̌QY0ұ<zw).Z[Q*/[[ }뻎DJPi I>M&qDf&0U:,L$r7Qaom]eр(ھZ6v}y$}Ů&̄үܥGEwI{ҝ%0U&sWyj4~̥l򘧼B)$Ee glŗ>oml8QtNl;_L,mm|J<1_@ Yf$Q,W - bi 0^$N"}Cr\rZ|7|.A';巹 J/{{6mğ.kZؐk6m8(Y (< G^a$uqW2Җ&hO^h iH /((WN JșI2r0\ ۳o:+8bZ9PGߣӐoz")-AZ\+L/ϲ`1C£Do {!U뗑 B$JgC$wZHk< -܏:P'"LPZĻ("#~M0Η.$_pc~3mjuA r8 -+] 4|SAOe4ۖտr t8x*8 pe{(+h.ꂲY] 7 D. %rش]xBa GKn -%v"$EQF&mK\N&#,$bE~ծ\[rAD l dSV '> If+HIHqz8L\$L#sD\"MԐX8WD0n3Q,+tV ߡLu("rs+UޠL0Bj'OmE -sEDGLű%;- |c"q Юa)2fBw󪆢qEz(ɠncE sRʑ.qڊMݠVKW iJ, 6l:qKЁM@{: =5+|$ &Y:wpBn^a){v[AV:woe!Zyؔ$RpsPy!kh`)ǖDKd-{SS=Ht=>eb݌GME] }%5`z9 d@C #E @C'%O .®.j}^#(: o͝ݩf*P&i -/FBj -0Gh}\V|4"hXS%^IewnۣAKBlj#btQ˗>6St(Jas}fE?)t֍j-i$mqW1HpE;ݰJI,h:6)6JX[[Cn/W1!R?ĊIv04:Fn/qRN򳋮+R=S7"Ⱥ*AnȚ]73Კmw(3`-`.fy+עxIɈUM$#?NKwxNe('T+!r? m0X\֪vd׃{(6׆Ptن:6bGNF&NU9PO 廉Ĩ+MCLs)'~zɢtGpit3 I#Iendstream +xڭY_o8 :R")iR4M{Mv=1c@E>p$N;hr&%*T"ӳ$a ~N0+w}gifHacyvsT/$ T8_h!Sij [Rj=wWݱ:ajLs2*eBM2[D24&M7IdđnLJWԣ0IDſuEңjjE1E#˼-vW?oL(]z\t*^2 Se2wHee<"Q9[TGuOXXP|ىO,@r?-_lu'؛'[ohw+/|K[ۢm/PeY/PqL,Jbw7'Al7x-㹨W41"/܁/Gҙ^B]x|!εopޕ uL2L32nzga`i/u*^r'hHEpD!Eepl2B-@5ed`8%B=3?rf_t*K Hu\{j$)eieHMFml=_}UXqd T0k&t h35-:EW-Z,Z`K !z2B)Uܦa^GYzE<n:*1DGZma\Ň4w8ur9]`3^?ߔ4;J̛Vy۲StnwAdk{[4O=\C^=X󳠬]r,ݮv8$z}Y.r\r|2'a5DE/d{*ohps0:4D!*K\Ny##,$: +繣vBj.m7c_NVm4d";Z\1z&%x ]&!a3r2%aIuTt|@RġI'%nzcϏ} N4غo߷Om%n8xd[:GGy 㙭[c7t[lul*wRE}.~|3cr3Vtdx$ @ubU;' ?u1136s  j1!ie2GP&<e20^ wuLCIQq%&|NC'oUy=ec${ןX~[[oV@e4`KTWM48q*JC-fӁX&Ա9/O:&/:.T( 8jdDj/SNyBH|0>G1BOa 90zczcO cI"bx8MLRUJJd6R$ !ЖqY1T!$W98ET"1_nbu|aI *'~&Y4\l`$<(%bW ܩyH:VeA6 :oyX˔V fg>ƾL+.yM=V2Do0N0' +NpN7~sKA{_K}o8dؚæ{Y(- BO `HM/t+zBNVL%iO:%mvܽwԇjU~Sڂ _j>'Q  MQ>$¦$TuaΎ9ڂM<Dt@,@9'ݱva12|ېb{߸JЂ~b蘮Ķu ΛivG0.|XmlsoU^֓->}*Gh"C $&^689ǎgvqntȮnhgIp.1&nqbn6a[` s6(GL.| IQew%ޔT,NGMXotqi 2;q0֧zo.=x g5åw='f3aC3+AHEkOA5g괶]nDu+f8!]Ϊ R9Q7Ήոmk{TcC!o">JP(ܯ=[(4:2ݖ(\q+!1endstream endobj 941 0 obj << /Type /Page @@ -7911,7 +7904,7 @@ endobj 944 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [203.1109 680.0011 222.5517 690.5834] +/Rect [188.5101 680.0011 207.9509 690.5834] /Subtype /Link /A << /S /GoTo /D (figure.4.10) >> >> endobj @@ -7970,8 +7963,8 @@ endobj 950 0 obj << /Producer (GPL Ghostscript 8.61) -/CreationDate (D:20080813230410Z00'00') -/ModDate (D:20080813230410Z00'00') +/CreationDate (D:20080813231101Z00'00') +/ModDate (D:20080813231101Z00'00') >> endobj 951 0 obj @@ -8012,18 +8005,23 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 958 0 obj << -/Length 2430 +/Length 2445 /Filter /FlateDecode >> stream -xڝYKs8W(U$٩$7ρ`#t PHɖ+4F! -ᏯTU%48_ބ1|r'x`,_r2juJ2I~\vL DQ?Js0UWfhWyw;lq,~LAzHGJG%I"bԮ(`†$'q:ܴ{h]aSwYUQ޵ߡ#sghezㆯ;k݈pws[E;k fp{_f7yn@+n ie]?ҩnMYmӷ) 55bѝcNM4 t-Sm81v -DĸC}f&B_zTSjgHfߑִ %S-JONqU -S)]&S/XTrq}ɕ b N>?:8zllp.3 [j0ִ/1H=pl`ϷL&h{l,/s,P:HuN=z$b'p&3=D@X, eY;0##y]LL'B:ht~r},zUA܁8Bà'UѶ4ꫣH@z K:c)iq4P K\ OS>P/3Ԇԣ -ǽB׷Ux{YZT垠-Y402ERkGwKMCs UmlwԤG^Kq lF$3K7XL'}WK,G ]Z_NRq<;u? Ɠ殛X|~|;e2T"f"ZM0R 2 bxb 9ggI]^Qf*L`z)6%|}c{E}NLc(Q:Z MEPv|H暳TIʋT Xj5^oz¨%"Owz~TQEj(V~Ū)Z_WV{ - 2LeZy.@ϙR1!vt};,eTǃsn2Cs4Xvd3  ^@=9X<ɢz3&!5`"q-Ca(9#lʝ1_ + ^Q$4thb 'DxHī%VnG+Gcǘ? xF3ƙ.,7JǦ!,LY||_llΤf;t!@ +MES, A=ib)H)PR3) +@_uqovdrD뗮3vkp9t%}GfL AY"'2ƝW=}wy,+urƳHozӐJ a3 *aBeOa'?wxR'?cLv3 |LR tvVPMSREȠ4{n\ y!mUڧXdkr'p#9 >W 'k@zxgLBBӀBdܣ$R)FH#$4R] C/{G:A U +* LS "`z.6%| +#y{YyFhP#_xN7Hmד<z}Xj5%A*OF(sO2&\=єY=-Yw+(]]3[,N_g7TIs== TA6-~/b^{Zziz =}MoJstM5??Lt:>:g +Wh -1=EtV"a_in3N5ll) >G0CG"y/4s(Ei V~C1@%5͸ȕ!p]< v@Cz[ݘC贷0X#Z}\@`vڊ=~<;iܻYb !PkoϾX4h'=\x p#Bɐ +*%P2fs컗dxj|l,|~9ƽ9%ЕC%gn} +zw\2m?{Lx,|߱)R"XcgҼ,GT(d.x%#6endstream endobj 957 0 obj << /Type /Page @@ -8061,8 +8059,8 @@ endobj 963 0 obj << /Producer (GPL Ghostscript 8.61) -/CreationDate (D:20080813230408Z00'00') -/ModDate (D:20080813230408Z00'00') +/CreationDate (D:20080813231059Z00'00') +/ModDate (D:20080813231059Z00'00') >> endobj 964 0 obj @@ -8117,23 +8115,16 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 971 0 obj << -/Length 2329 +/Length 2324 /Filter /FlateDecode >> stream -xڕYs6_GjBdN\sIsfZgTIR篿],@Q"%o`> ObTF80|ؼ '+X{vg}߼rTk5y:J2I?q{!)3'bYf[)]c6!KOF4S'3)2S$JYǢ&4^%,Q2tdxB1KWyh@<c>=ܗ_2 dHzT4X!gqE<6+O&_ռ$.#i<=\ϫ]{7UQPOyd3"%}״Rrر&;DJ/oOtzΰ X>=TdM*[G#8NE21%x%MqlmlV͛ܗ >f7QPq[˼5/qsS>K|^蓙vc -ohzS_fC| "k+€ы|>"ݰ,?0 -]3A#IfOU޴6PD''s󒕥s&/'fJy@#ճ\;Ϧ؎"ULƑ: -1eg}kzM>(ޮMg|)~[!Q1]WGH9/S]y3Pcq:m=Lapz=sdwz\OXyy^ٍF )eϜcUF{54E2 .& z_V>ŒAz& -lGKI)k^F$[9(6Mx?%+qH6(&DF96*+4 C//B#tZH 6/S')&f!q)2e5 /z98[U6/~WIkWPey%$L+5$ V Ho+v0 UYꜻyvݎp>WH4j3VijJ_ȍ`ԹTN!Ji0OuE5[677M~o#dIæ* ؖDu^1;gw/g,{qzգ0@tE(Gn ӫ@we&\@ -Yw" -f G=] |Vl"aRYAdPA92?:YlDi(M*OP'ioZmWes,8IQHSr!b/T4zGO&RK,޾ߗ ʄɓ7>$VOڈFeJ͡$y4! ƐUnvteAZA;F{YM ChTW5KX ޵ -/[XAk>6sSSD -ꊖ1: #me ֦=?=ԑB?H b{ˇNhUg R/P{부dS3/NfAVn|eMّl~ꄳDO(TCa w%NT{m,/I=%t{fMC- F5a5 2=%Ӑ\/~)BsA}$Qb"~^?%Ӭ~BI*-޿z#Y*͞ -'endstream +xڕYs6_GjddN\sIsfZ'TI\篿],@Q"%{ ,~f~$ h&U8Y/c?>]WbRrm¥x$~ӧl]0HOG)U #O|!E9Iq$"0Q() )Idž'y Y|d gro 1 ؏y,LJT^uS 忻IoQi"bY5OSCOY} +%IQN)+fVzB/x.ܢﻦ}R|[CLg.:ȽDp]OOE4|8?(RE8G)\Mgɗ0t8Ok$6]U)g=ܕv8 >{[S*):=v{w,R?S۾}hV.3xhoF]%E4AǽbeI82HQ g>wTf=qд7*oHnKVfKmU̧,f1rA$Dԕ`a:}QM\0oƶN%{JSb|Xx?B_dbpȫvnUIčm(늃PpKݥf$7.O[V兮u.p;'unRO[_*0t`5'KF@uao;㈬( R6qlMs]QزMt[ YT$ےf>7zg>E}"^zz +Í&]`xYhḦ́#J e 4/\Dq?:+uoe (I޶yU6NJxY<ispnp:i|j=c)%o?@ P E@'>$,tֿB0B!ջN !˘7k2>oP]Sf;̥/tK^K9j"q^T?U[f2an0ݤ{yeTzn&tu3W>J̒Y0j-q`SnO^ՔGObU5U.aZ^Xmfd+B15Md44[2ҋ^4TֶVMnכ +;S1sUW:VD0;A٥Z5Jʠbhƨksהl YTt]v@t² G ڸpT`}ihhA5#0tJ up<I9I@5Jz\<ļ9E9PM~P%IINޓAb:񴬳bhU[@b)X.=NggV޲n]{7%#Ql)gpݿȏۚƇEq(ґtIASI;UͱLj&r_{FEC+ F3--kB5P@(Dzʑ:K?Ϲ> endobj 977 0 obj @@ -8260,8 +8251,8 @@ endobj 986 0 obj << /Producer (GPL Ghostscript 8.61) -/CreationDate (D:20080813230408Z00'00') -/ModDate (D:20080813230408Z00'00') +/CreationDate (D:20080813231058Z00'00') +/ModDate (D:20080813231058Z00'00') >> endobj 987 0 obj @@ -8292,20 +8283,21 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 992 0 obj << -/Length 2298 +/Length 2302 /Filter /FlateDecode >> stream -xڥZn}ȣ Ĭxh 49H4(A['dHtg&_MnR7˒b1Emkmq- z?z "DD 7/}i>]yU?|ML077Lp$C^|KVrŢx!r%`pA:SrETyc+Y@0dX;⎓͋˄DQĬw2$! -=&DFQV*/ -_v[^8Gϭy{3u=ꃈaI)OuY-e O_= (puu` Y̻;B|ʮ)7DJfJba95H̨FF8 #!r%XU[-?e\}Q,az2d.\K?:-i=v;uH_+ -H]Z*]Bvv&J¶KWTE9tI9|jlIԆ3q{F19U3Hfp |$.uS2WTZ럹f\PWwzL1],@^ޡn OCΪcnfD;\:W范#?\>P_ִ$I<Ք٬P[MQ/hTmy cGj[Nc_F ڇdO+]%pH2c狰v?mm+aoM?-cDLD+Opo,SAhMqf)l@^ :GIHB5T~l _BH&,:V|4fsL6SCsUKl:^LZBk#N[azP2>Dx1n:ǸC+ڑ}ky{['}}8R\ѵbsr" acɽ?4B"H^JKU\:K/@!S^PQt8iEuf5*jzAQ]TCBnuw5²7m -+|^t==S[E Y`VR (CB.|9*A\BZU}КpMϜ 01ΤՄ9YM6:CUmpm89w,`f*sFݱt->sB {UG4,͏xgF %,惜t_?v?R6J/FPE -¸({H5h/=JMpl%cy !"dB\,aPA5 v] Wendstream +xڥZmo"- fMvwCNM?1c"K$ww;!b˒b5E<7>7bO(eؗ[ۥ3^?=~P, Cuz#d"q/!kt-E//t-y8[??la8 u>NdA¢(ǻL#%JhOlQ[寺ٕM/Ͼ/n^vԂi]"plqqӦ_կ㞅~\Dtuu E,;B|ʬ n8gIJ8)jXp5QKKFJ QkoUjy%ǧ/z]G${`Qg4N=ם.WMZljsHizO|15}&VL1Ig0kKhZlVux<Z\v19qi5akF=؅,s2mGd+)_VsVjBZٜ&Q[iKkJ,$q,/Xlht"#)Glx+<6ê|2rc@u˷Y*H[p(zf[@z9&9Mc0S뷈r?+`Mr/n +9wƬK%Mu6/QKs],bL=ahwiޠח  PɌ~;)ZYN@v=.GK`,Fgn=ֺΚwDZͿۓ0/1cAfl]K]wv-1uYsh3+z0`l)ԎS Q!`cJإ Yv~)e> iF[kAo a)J? jz6[W:ktlWK\Gce^i$oʩMaT$Jc#.^7ڛ̚]<éT*JNy`+8dBexw . +ߙ}*GL0Jԩ +Ү1Ɇ^uhri$]ou}0TpEx4C;PR{ME3Rܯg)+ fvҕ/Y8V{5۳=C߳T\p|~?nݞ{!=o.c՚j<+~#c86Cк;4Ojph!v!4^ds-gP?uv*6 ѶAMȔ'uvpP9 +RiH,B|/5(Ҿ;CJyx'b ܇Cw"4`dϥ~ rV3[l& uAKmmhE6^/kZI<Ք٬P;M^tN 8O'QskkHBn;P!+F7Xšpi5vk[6^քS +қhW?nMUhck5Kd {}~![o(?< YD-[ȗfVX$ܥN:V|fsLS2@sUٔtxZaf8a l^\8*CU{̩kSHEIT +|^ƀ%U +^VS;YƧP;OQ/0G@:Ʊym-IG@q ۗ~72;쫅k;ÌZO*݅ͣ@^)ΔZriLqT OH-_ݔ!T;a]'?d +_mZO=)=9Y=Mvz:E>j{$kn8fU5?`gϜk0r&WMdϞ +ST ',@P#SpH 97 a_)Ĩ뙬ԷTk6IVSgJ֚&!d@y-8z*Yx>;~хv@~h~Z4Ɍ G,gT ?a_~KK'Bգكpv+=Hxrc#)ahBqݟ+5!T +_!L endstream endobj 991 0 obj << /Type /Page @@ -8322,17 +8314,21 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 996 0 obj << -/Length 2741 +/Length 2673 /Filter /FlateDecode >> stream -xڍYKs8WTU ^I&x#'8J%)R%D~EJU~}M8&QI0bOV k.W7?Yq" {˿mV|(v6u%λ6WUԙM]O:M~+gq_1B0caG]K"EZKD8KoV4b53e)xӺ4knvS:JkpF\/b|g`k("rn(XW6/7nfH C'mj3`MѬlv eǏ3*S!ARXYVFTEިc(*M;%l++5+%~h;ZXu0ih(4<؇MntZZ"Fn $Ε2;֭,ልZ(bhpጃ7\yU4N7+M#B8 4qd"^|i$"'jp+Wh't #YD<ϣ0qjVُ(4knYôqgM/Dlxp0;6\Bh1[8cD|xƪ4+!Q˃4M&@KF[2~iN_2}w GդXR$!Em+Q;D#.F뽾P+e}Q KetCoroU.xMFtFd.)^a|ygfuc`bte hl0\ᕉEǏyF زghй -*G>}]ѯ niwgoPKo]^ 6`p3vu Q 1rR1}h?0 ok萰$!{{aBt{3||#h`֗ -cM8̖vb D+kx BNޖFjꮇw[!쪭 -04:j$0650 *K^´oI І-U #Ǵea2d9fȂ8W%^q°νU;~ۤQo" n~ekk~t׀NMWP((n4wmݞbO%엙{X3r讲>PġI< ->)iL=y(bqyRᓧ> ׃p#wߗc H<~j}ܞ"@I̠݉O{F%40gAdgA;Z_ u0\LJϼ 6zڸd=&ybOAΏYr,r~'K}Tݸ!bqd1*{0*2&},~,Oy8$UuCb#/JĦPq;{endstream +xڕYKs8ϯm!A9k;L܇oa+ FsKqKZB;a+kRrUK!06W> c0(>eAEV+if{` (Z6iG1.!X.NNiTӴQĹQA ~WUK}i[ZXg\t0}0=8t @ FnT,MKiv%Yar]':Zm-͎B1OEqpPPrY?YsTRY\DhDީC;ț8B}w/M>RړYK0W$v:aDzV9&(vRVmx̊B-k6-^4cgNN5 %-d6*U[A3V[_h!/XJϽ/|HLrk)T=uD?ycCcMx Qf[<2f]>(#k/>f;"Ӥ$;aFj7l2% 0H=I> ;H$Zư48Hfx>c^?O̪?JNoל1oTw9DX͠uTg䏹$֘JW5G/Uߴ*o\eMN1s$^3d=[G dD%_'?n4˘6GBD9#n:e +x2s҈1E6BA{),9#n:j+^"HS>ty]PpS߯!"^œi!Rٸ;a.eW(B$ZD5Dh:3pA:}Y+j|Q`DvTi̿j*ZQ&CҶ۪lʕ>𵐫FQhm +stݯ XvYKkBT;+>[^jv{9a֝ꀨLjǁǢȔCI+kiH&͎LtDSį}UӯvzAܲx9C,W.m0fet&ZD"?&Nr;. =b]D%g7 Cu0EGcBA7(O1ZS]7?2טIPw;̼^;hdWmU uOhP/{ cBs6o/;\4ǻ ,ӷzuV \3'n2:e4M p@GȷSn+|p/Ud^b/ctl6%l Cܠ*jcc VFd7)z[#N¹p޾ZnmTd{<0檯f!fymD)=XJzv7:\qQ݁bs1g/ ӄ;/Um(ϠJ)9y!s=npTuycP4x?9gd95`sᐜsCٿ] %endstream endobj 995 0 obj << /Type /Page @@ -8340,51 +8336,52 @@ endobj /Resources 994 0 R /MediaBox [0 0 595.2757 841.8898] /Parent 975 0 R -/Annots [ 998 0 R 999 0 R 1001 0 R 1002 0 R 1003 0 R 1004 0 R 1005 0 R ] +/Annots [ 998 0 R 999 0 R 1000 0 R 1002 0 R 1003 0 R 1004 0 R 1005 0 R ] >> endobj 998 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 0] -/Rect [295.8756 605.8281 316.4464 614.3929] +/Rect [295.8756 606.842 316.4464 615.4068] /Subtype /Link /A << /S /GoTo /D (cite.Javadoc) >> >> endobj 999 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 0] -/Rect [106.1442 587.9816 121.5951 596.4656] +/Rect [104.1763 588.9955 124.6124 597.4796] /Subtype /Link /A << /S /GoTo /D (cite.AntManual) >> >> endobj -1001 0 obj << +1000 0 obj << /Type /Annot -/Border[0 0 0]/H/I/C[0 1 1] -/Rect [186.6652 217.4909 353.6389 229.016] -/Subtype/Link/A<> +/Border[0 0 0]/H/I/C[0 1 0] +/Rect [147.5458 588.9955 167.9819 597.4796] +/Subtype /Link +/A << /S /GoTo /D (cite.AntIntro) >> >> endobj 1002 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [148.5137 196.9412 329.8337 208.574] -/Subtype/Link/A<> +/Rect [186.6652 195.6207 353.6389 207.1459] +/Subtype/Link/A<> >> endobj 1003 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [139.5474 176.6069 299.3481 188.1321] -/Subtype/Link/A<> +/Rect [148.5137 175.5472 329.8337 187.18] +/Subtype/Link/A<> >> endobj 1004 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [147.115 156.2113 306.9157 167.6901] -/Subtype/Link/A<> +/Rect [139.5474 155.6889 299.3481 167.214] +/Subtype/Link/A<> >> endobj 1005 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [154.8081 135.7693 386.3397 147.2481] -/Subtype/Link/A<> +/Rect [147.115 135.7693 306.9157 147.2481] +/Subtype/Link/A<> >> endobj 997 0 obj << /D [995 0 R /XYZ 74.4095 793.4011 null] @@ -8392,123 +8389,130 @@ endobj 146 0 obj << /D [995 0 R /XYZ 74.4095 771.7323 null] >> endobj -1000 0 obj << -/D [995 0 R /XYZ 74.4095 246.3737 null] +1001 0 obj << +/D [995 0 R /XYZ 74.4095 224.0275 null] >> endobj 994 0 obj << /Font << /F63 220 0 R /F26 170 0 R /F28 173 0 R /F35 193 0 R /F88 715 0 R >> /ProcSet [ /PDF /Text ] >> endobj -1010 0 obj << -/Length 1356 +1011 0 obj << +/Length 1446 /Filter /FlateDecode >> stream -xڍnF/w-RN&HhSLtt(9N.J"-| E2 _$SqlD 7d c]؎ez3,HɳiQtb[e>J8j,Wz_|L^O:eHKIy\".ƌ!I\0H)E+a"#!h{) ͙J`\F!M |jRmՏ`p8T{W]q8’8D[dOnoEk^~i2zWhQQRAFJ* Xq.,aX٪bQ>zS<&9HH[;A&xH+,l2,f^g{zf9JЎAz\[O,gŮn80jp c<&󣀡H$:+_@gͶ\.k<_'؜v'6nr j6ݼ[ch}(1R 9^(5JuaIvV;W5V-edw?k'ӳkm g.`X>,a٪oƟG}cRrҍվTͲ5g5oۧ?/\kCS }b*0 TF>,٪?musDZuk|/6/t]m9c'^U!x3e԰\Dž8SC2;Ez/mtaWÐendstream +xڕnF.w-I$HhSLɌuv>{,g,XN2;Xa$ԩ8?0VL/h1|s ѿܽҢi-Y \ #_M7v p(^nղZj;158ÿ޼"8%VkϣHM1h.}J#~ +ƈS7R\g 6 A*^FʮO-F SX*_Dy3vY:֯Go~|u |[/ +[V!j FP-戴4RR܇mX/F@7ejKB+N=vĵ hmD_V͎fJXaYV^+a嫾^궜f=ưi H[&l<>^#(#R7XCu_!lò| X5BW}Ӏ+oOCz(ꎏ4vM Q {O%Vd^?K48y^9,7-Kf-RdX^r,|quz(O^j6tn}nMKS l$ޚ89ښ˓kkbrq綄.meEKĪMz7L)VC'Wu ھ4vMh! #'zZW-NWC8w/Eb.G R%(bE_a2dt0iș +=!sׄ𙊓#v͎|9vuu I5؜Irhhi¼q) %bP_au"QH2xOKB.Jy`~I0Bp޷cP-'hnLe zjzp o^߾n_̈x^#"NGz:j4CD3%!XAJ /a9p~8@:MSM^%<4t)i` zlu8G'妜>chQwcNxos_>r\$f 67F^²l| X5W=mRY!{ׄ“ߑd"zwW[%1Yɏ1DT.9tmX/FnS-5P 65'lV3VUIA%Yc6`rTKX/FnmQeuvb|?vR(4\KX/F_߿|~Kʐzפ슙IY׍׾E9|@)m6\ ?y^%4Qša|&F ZqF%*K#NߎfZޱi>(0T> endobj -1012 0 obj << +1013 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [133.0648 756.9399 264.173 768.4187] +/Rect [154.8081 756.9399 386.3397 768.4187] +/Subtype/Link/A<> +>> endobj +1014 0 obj << +/Type /Annot +/Border[0 0 0]/H/I/C[0 1 1] +/Rect [133.0648 737.459 264.173 748.9379] /Subtype/Link/A<> >> endobj -1013 0 obj << +1015 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [163.7833 737.3051 352.2764 748.9379] +/Rect [163.7833 717.8242 352.2764 729.457] /Subtype/Link/A<> >> endobj -1014 0 obj << +1016 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [143.4568 717.9782 374.9885 729.457] +/Rect [143.4568 698.4973 374.9885 709.9761] /Subtype/Link/A<> >> endobj -1015 0 obj << +1017 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [167.8988 698.4973 327.6995 709.9761] +/Rect [167.8988 679.0164 327.6995 690.4952] /Subtype/Link/A<> >> endobj -1016 0 obj << +1018 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [171.3148 678.8624 352.6348 690.4952] +/Rect [171.3148 659.3816 352.6348 671.0144] /Subtype/Link/A<> >> endobj -1017 0 obj << +1019 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [139.9598 659.5356 471.9148 671.0144] +/Rect [139.9598 640.0547 471.9148 651.5335] /Subtype/Link/A<> >> endobj -1018 0 obj << +1020 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [147.4467 640.0547 285.7281 651.5335] +/Rect [147.4467 620.5738 285.7281 632.0526] /Subtype/Link/A<> >> endobj -1019 0 obj << +1021 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [151.5083 620.5738 289.7897 632.0526] +/Rect [151.5083 601.0929 289.7897 612.5718] /Subtype/Link/A<> >> endobj -1020 0 obj << +1022 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [146.2633 601.0929 499.7376 612.5718] +/Rect [146.2633 581.6121 499.7376 593.0909] /Subtype/Link/A<> >> endobj -1021 0 obj << +1023 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [147.2495 581.6121 321.3964 593.0909] +/Rect [147.2495 562.1312 321.3964 573.61] /Subtype/Link/A<> >> endobj -1022 0 obj << +1024 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [134.069 562.0849 344.0813 573.61] +/Rect [134.069 542.604 344.0813 554.1291] /Subtype/Link/A<> >> endobj -1023 0 obj << +1025 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [134.069 542.604 344.0813 554.1291] +/Rect [134.069 523.1231 344.0813 534.6483] /Subtype/Link/A<> >> endobj -1024 0 obj << +1026 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [133.0649 523.1695 328.731 534.6483] +/Rect [133.0649 503.6886 328.731 515.1674] /Subtype/Link/A<> >> endobj -1025 0 obj << +1027 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [122.108 503.6422 354.1378 515.1674] +/Rect [122.108 484.1614 354.1378 495.6865] /Subtype/Link/A<> >> endobj -1011 0 obj << -/D [1009 0 R /XYZ 74.4095 793.4011 null] +1012 0 obj << +/D [1010 0 R /XYZ 74.4095 793.4011 null] >> endobj -1008 0 obj << +1009 0 obj << /Font << /F63 220 0 R /F35 193 0 R /F28 173 0 R /F88 715 0 R >> /ProcSet [ /PDF /Text ] >> endobj -1028 0 obj << +1030 0 obj << /Length 1936 /Filter /FlateDecode >> @@ -8519,24 +8523,24 @@ lh 6ς5 %OD6 2c^)Qŭ" x9w%ĕ`H:?T^Rwcgnr0$;xgl9,3(nD"~jl2{J.J.Xe3d2(aDG =+„yd P!Lj085c#}l%Sމ,Prr_|`@z&_M7 3'|`GĕGc=c dfϪ݇N'Oة`}W><|W<-=kk` sj.4 M,?nrD[sH0Y DutL\Z, Y1߲cA!6  3胡oM> endobj -1029 0 obj << -/D [1027 0 R /XYZ 74.4095 793.4011 null] +1031 0 obj << +/D [1029 0 R /XYZ 74.4095 793.4011 null] >> endobj 150 0 obj << -/D [1027 0 R /XYZ 74.4095 771.7323 null] +/D [1029 0 R /XYZ 74.4095 771.7323 null] >> endobj -1026 0 obj << +1028 0 obj << /Font << /F26 170 0 R /F28 173 0 R >> /ProcSet [ /PDF /Text ] >> endobj -1032 0 obj << +1034 0 obj << /Length 1958 /Filter /FlateDecode >> @@ -8547,29 +8551,29 @@ xڍXYs $ OT2?b,SAGf5/Z &Ψ'&ba&>1Y);P3c* dc,s}ڐ9ⱍi P:H"@K8뺆{\w5rD/B0/xMGAʧ?AAU}%wl 24Lt~'u,6}Uнddu;_{Y{m!f c%օӷ8PgV(""\4++rBhv^RzG83p3k05fe i"NGuFt*ͫPEtkhot݀ɬ\w`àsJm[n)My0=c~A0Yn-cߛHendstream endobj -1031 0 obj << +1033 0 obj << /Type /Page -/Contents 1032 0 R -/Resources 1030 0 R +/Contents 1034 0 R +/Resources 1032 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 1035 0 R -/Annots [ 1034 0 R ] +/Parent 1037 0 R +/Annots [ 1036 0 R ] >> endobj -1034 0 obj << +1036 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 0] /Rect [440.5227 436.1395 462.4384 444.9105] /Subtype /Link /A << /S /GoTo /D (cite.M32) >> >> endobj -1033 0 obj << -/D [1031 0 R /XYZ 74.4095 793.4011 null] +1035 0 obj << +/D [1033 0 R /XYZ 74.4095 793.4011 null] >> endobj -1030 0 obj << +1032 0 obj << /Font << /F63 220 0 R /F35 193 0 R /F28 173 0 R >> /ProcSet [ /PDF /Text ] >> endobj -1039 0 obj << +1041 0 obj << /Length 1135 /Filter /FlateDecode >> @@ -8582,146 +8586,146 @@ xڝ 4ebƐcUvQP8%~9=CL- P Q5hU>TL5妚2:bf> endobj -1040 0 obj << -/D [1038 0 R /XYZ 74.4095 793.4011 null] +1042 0 obj << +/D [1040 0 R /XYZ 74.4095 793.4011 null] >> endobj 154 0 obj << -/D [1038 0 R /XYZ 74.4095 771.7323 null] ->> endobj -1041 0 obj << -/D [1038 0 R /XYZ 74.4095 573.2241 null] ->> endobj -1042 0 obj << -/D [1038 0 R /XYZ 74.4095 548.0739 null] +/D [1040 0 R /XYZ 74.4095 771.7323 null] >> endobj 1043 0 obj << -/D [1038 0 R /XYZ 74.4095 522.9238 null] +/D [1040 0 R /XYZ 74.4095 573.2241 null] >> endobj 1044 0 obj << -/D [1038 0 R /XYZ 74.4095 497.7737 null] +/D [1040 0 R /XYZ 74.4095 548.0739 null] >> endobj 1045 0 obj << -/D [1038 0 R /XYZ 74.4095 472.6235 null] +/D [1040 0 R /XYZ 74.4095 522.9238 null] >> endobj 1046 0 obj << -/D [1038 0 R /XYZ 74.4095 447.4734 null] +/D [1040 0 R /XYZ 74.4095 497.7737 null] >> endobj 1047 0 obj << -/D [1038 0 R /XYZ 74.4095 422.3232 null] +/D [1040 0 R /XYZ 74.4095 472.6235 null] >> endobj 1048 0 obj << -/D [1038 0 R /XYZ 74.4095 397.1731 null] +/D [1040 0 R /XYZ 74.4095 447.4734 null] >> endobj 1049 0 obj << -/D [1038 0 R /XYZ 74.4095 372.0229 null] +/D [1040 0 R /XYZ 74.4095 422.3232 null] >> endobj 1050 0 obj << -/D [1038 0 R /XYZ 74.4095 346.8728 null] +/D [1040 0 R /XYZ 74.4095 397.1731 null] >> endobj 1051 0 obj << -/D [1038 0 R /XYZ 74.4095 321.7226 null] +/D [1040 0 R /XYZ 74.4095 372.0229 null] >> endobj 1052 0 obj << -/D [1038 0 R /XYZ 74.4095 296.5725 null] +/D [1040 0 R /XYZ 74.4095 346.8728 null] >> endobj 1053 0 obj << -/D [1038 0 R /XYZ 74.4095 271.4223 null] +/D [1040 0 R /XYZ 74.4095 321.7226 null] >> endobj 1054 0 obj << -/D [1038 0 R /XYZ 74.4095 246.2722 null] +/D [1040 0 R /XYZ 74.4095 296.5725 null] >> endobj 1055 0 obj << -/D [1038 0 R /XYZ 74.4095 221.122 null] +/D [1040 0 R /XYZ 74.4095 271.4223 null] >> endobj -1037 0 obj << +1056 0 obj << +/D [1040 0 R /XYZ 74.4095 246.2722 null] +>> endobj +1057 0 obj << +/D [1040 0 R /XYZ 74.4095 221.122 null] +>> endobj +1039 0 obj << /Font << /F26 170 0 R /F28 173 0 R >> /ProcSet [ /PDF /Text ] >> endobj -1058 0 obj << -/Length 1830 +1060 0 obj << +/Length 1902 /Filter /FlateDecode >> stream -xڕXߓ6~_%4L}KpI x 5BOY]jWd,GkPŦ|[x p.Ri4>`DHE$Hp.ի[*lq8$a@VMK**YB`HRpIgKǴ=W˯n쪢1oxs?F4:"/jp"J8o`EoJ RrF+7U2&R,! wgnG~%sVBof[,!;K+)ݛ.OIh$Y2ӪE%۸犋*W /Eܣ9 -ÈpPPd*`ՁhBI1 @r@~u(z`6?_W=M&HR{o;XP ;,*Lj}%aIL;կa/Z%*b]UG$xِ'%MwuCX~x=iuO[n5)]xi"R|F SI1YҐdZ4Zu4] P^* _t>Z]nRDʩO,3|Ufgo59dG,2*˞}ޜ3s}|U[6}20= -o - ߬{q o՛]ٝyE& BUHm7rh4g?==$ a6q( }VJL"5?t6 -7( (ّQYEoGDJYNud~ELaDŽ&_qv_T!3{xtanxt*YDsf4ز)bhj r%cʈok#j_Y!aHjr pU5Zb3]>0>䏏$o6g1ާ#czثҦ"|{ڧG{1on[ -HaggKZ -:9 œ9Vb&Z( $gU O=@s [.qBM]_hAgo•3 1MU!@F>m,2TbM,=8]_ҾE"R Ϲ 4JKaz(yҠݥ+9VK6B.!͍`}~2E3Ӑ 9](u3yyV1G*d㌾k5hաKm yЇOߥǍŷvby J ۊcsnߏ& dpıD3 d)_6KąLi4>`1%Z @QB cUʅ1[<>I ']K*ZA?IgsǴ=WجcWիwG#!0|^Hq$j +i)JqMt`] +w&XLf[2 {juvڴE].^A $ +h1=㗗K+ԯXWn2n.NAm+";ZiF0 +Xp/gw? Sp(DR^ӪE]PZq9ڵ~ȇַk`yX~s4;TTB@Y83so/+d&4=Ө.4SZ捽,*,j1yђ`t*&/a:Q& c!g䉆$%o$)j^Ѫm}+ZGF<)B?2 'xbYS +$=mߚ`l2Q^DfeTR̨fl^&Me7dr2 VLMM,RIx huH)_$ gl!/krH.x#6H}i7'Zyy_Yrk#;~? ̺mvzk6(bD! B nҭHB_ˎ))ϻ(V7$PEocjJ*J!p'PrPJ^~X4&F|[f\DY]uaP07<e3΁@4g&]#5FSCX.>ڄKӬ?^?DqMFk5YUY\,{f2UW; cG0S|M:n3S}q$Ę*Cڴy5ߞ5_};󦁢-,S=# \nt;|V]LkO PW0hu~i yvB eCyy49|&E%ZsĄ #\&}/tN7* `Չ"DU 9D>2;X>w)=-JIa7_hx}{[`ԎY-hI𜷗E +D`D|VYܘI _LoDC.HIx@?xjendstream endobj -1057 0 obj << +1059 0 obj << /Type /Page -/Contents 1058 0 R -/Resources 1056 0 R +/Contents 1060 0 R +/Resources 1058 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 1035 0 R +/Parent 1037 0 R >> endobj -1059 0 obj << -/D [1057 0 R /XYZ 74.4095 793.4011 null] +1061 0 obj << +/D [1059 0 R /XYZ 74.4095 793.4011 null] >> endobj 158 0 obj << -/D [1057 0 R /XYZ 74.4095 771.7323 null] +/D [1059 0 R /XYZ 74.4095 771.7323 null] +>> endobj +1008 0 obj << +/D [1059 0 R /XYZ 74.4095 573.2241 null] >> endobj 1007 0 obj << -/D [1057 0 R /XYZ 74.4095 573.2241 null] +/D [1059 0 R /XYZ 74.4095 548.0739 null] >> endobj 915 0 obj << -/D [1057 0 R /XYZ 74.4095 548.0739 null] +/D [1059 0 R /XYZ 74.4095 522.9238 null] >> endobj 817 0 obj << -/D [1057 0 R /XYZ 74.4095 522.9238 null] +/D [1059 0 R /XYZ 74.4095 497.7737 null] >> endobj 980 0 obj << -/D [1057 0 R /XYZ 74.4095 497.7737 null] +/D [1059 0 R /XYZ 74.4095 472.6235 null] >> endobj 981 0 obj << -/D [1057 0 R /XYZ 74.4095 454.6963 null] +/D [1059 0 R /XYZ 74.4095 429.5461 null] >> endobj 506 0 obj << -/D [1057 0 R /XYZ 74.4095 411.6189 null] +/D [1059 0 R /XYZ 74.4095 386.4687 null] >> endobj 914 0 obj << -/D [1057 0 R /XYZ 74.4095 386.4687 null] +/D [1059 0 R /XYZ 74.4095 361.3186 null] >> endobj 1006 0 obj << -/D [1057 0 R /XYZ 74.4095 361.3186 null] +/D [1059 0 R /XYZ 74.4095 336.1684 null] >> endobj 913 0 obj << -/D [1057 0 R /XYZ 74.4095 336.1684 null] +/D [1059 0 R /XYZ 74.4095 311.0183 null] >> endobj 774 0 obj << -/D [1057 0 R /XYZ 74.4095 311.0183 null] +/D [1059 0 R /XYZ 74.4095 285.8681 null] >> endobj -1036 0 obj << -/D [1057 0 R /XYZ 74.4095 285.8681 null] +1038 0 obj << +/D [1059 0 R /XYZ 74.4095 260.718 null] >> endobj 577 0 obj << -/D [1057 0 R /XYZ 74.4095 260.718 null] +/D [1059 0 R /XYZ 74.4095 235.5679 null] >> endobj 818 0 obj << -/D [1057 0 R /XYZ 74.4095 217.6406 null] +/D [1059 0 R /XYZ 74.4095 192.4905 null] >> endobj 393 0 obj << -/D [1057 0 R /XYZ 74.4095 192.4905 null] +/D [1059 0 R /XYZ 74.4095 167.3403 null] >> endobj -1056 0 obj << +1058 0 obj << /Font << /F26 170 0 R /F28 173 0 R /F63 220 0 R >> /ProcSet [ /PDF /Text ] >> endobj -1060 0 obj << +1062 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 @@ -8734,7 +8738,7 @@ endobj >> stream xڬct-vضm۶mNcvm۶tu_}?t'_0L3ru|Vz#fo`Ϭٛ~26qsvV_'נy-;Zgeb O296* v H0| olZ:s8>ŰI3*#+D"9 +5303`"^VJ5e *0.V?fvfUfs+[3RB^ afold Pt32ZٻQ^LM)ͅK`pq43fibhlg`p6wvsrtv}):8[9*?]HSJjdep5t';7տhX[Z77?:[F^֜;wn +{Eo9A 7 #S{[/9 wJ}"7H"OC<'|0Y?w+?5MGB߂03h"nifhjb 07ԿjfζVfߊ:&FZZzMHΠ$(Bw꿢wUr&?Js0_0<>t'_0L3ru|Vz#fo`Ϭٛ~26qsvV_'נy-;Zgeb O296* v H0| olZ:s8>ŰI3*#+D"9 f/8׈^fgT?ڛTR/y`q~ $q/ D#}tD7YމR[tvNbpldx&7 <&)W@[' " PG?4NUѢ`ݾ]=<]7EYRf~:W(ek.kÍL o*nֆ4d& `䆲%ҧ֮!oadFޣ␌n$ʭAх[wEXwN}E c9sY<=,,ES&"[с)ᐦm Is%~\Ҥ2OGMت j- OmmK9b\)p$ :_g'(Aާn0 EfW ԘBv:4Yj҈jF#y0b;^atmtm^@D-`x;3`cݬpFįkHbfPA]OB΋N2R9%S$୾ۛ#I">"S{ ތ ԰#DAs. ٛ3~a%Y=M^E0B,R넰x'C>f{E1 m[y&3Y1L6>|M7ǜUZ)<7{<I[elwr҄+\_Ydr-]\|F'/޹uӞ60 ^!Z;Ŧ§)G|:7yLq[ϪX:ՀB5j0 9'5$?7( ٮ)endstream +bŧTOu:LHafNj7QCΑ9]K,W:#00QR-3¥LF߾6,b>x'C>f{E1 m[y&3Y1L6>|M7ǜUZ)<7{<I[elwr҄+\_Ydr-]\|F'/޹uӞ60 ^!Z;Ŧ§)G|:7yLq[ϪX:ՀB5j0 9'5$?7( q endstream endobj 715 0 obj << /Type /Font /Subtype /Type1 -/Encoding 1060 0 R +/Encoding 1062 0 R /FirstChar 33 /LastChar 252 -/Widths 1061 0 R -/BaseFont /YGJRSU+NimbusMonL-Regu +/Widths 1063 0 R +/BaseFont /TPQDPC+NimbusMonL-Regu /FontDescriptor 713 0 R >> endobj 713 0 obj << /Ascent 625 /CapHeight 557 /Descent -147 -/FontName /YGJRSU+NimbusMonL-Regu +/FontName /TPQDPC+NimbusMonL-Regu /ItalicAngle 0 /StemV 41 /XHeight 426 @@ -8826,45 +8830,43 @@ endobj /CharSet (/exclam/quotedbl/ampersand/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/five/colon/semicolon/less/equal/greater/A/B/C/D/E/F/G/H/I/K/L/M/N/O/P/R/S/T/V/Z/underscore/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/braceleft/braceright/asciitilde/udieresis) /FontFile 714 0 R >> endobj -1061 0 obj +1063 0 obj [600 600 0 0 0 600 0 600 600 600 600 600 600 600 600 600 600 600 600 0 600 0 0 0 0 600 600 600 600 600 0 0 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 600 0 600 600 600 0 600 0 0 0 600 0 0 0 0 600 0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 0 600 600 600 600 600 600 600 600 600 600 0 600 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 ] endobj 630 0 obj << /Length1 1606 /Length2 997 /Length3 532 -/Length 1819 +/Length 1820 /Filter /FlateDecode >> stream -xT{XSoWW|rDn Dm-b$ -S8$_SO9sI) +xT{XSoWW|rDn pr $'_SO9sI) "X T t#PtClx ऴ2 -Cmբ#/AK{_{I^~z̖+CTT*H[# - -#URuˀHt<0bN2 N+T*y062Fˁ^?#Dž h#R@8-j l|MTL$DăHHB#\JJ WBB@ -@I*ܜ4냰BXJ=%&/@CF,ph -pI%W@z5j -y )c NsE"Fg (5TQJņ`p4pXp&0#hgqR3`C@E0ܝ:h0Z^Sr9jD$B N|#E) Uz-2 偩(0T|c(E`Ց -(}%: k8ztwÐJ,Xo'/GӋ=1Qj!5"Ѩg#pTqNj@Id@Kt-N+דNKXLTqb7!L. 1\FY=c9A0R-~GuЏXYcrcpHB%˟Ǥ`I%2cC4d\ZCRzh=i)y͍e:弛m+ rP^Ȗŀ20M-o4m>;TujT#NS0rq6.w4bno`S9gzm]W/O ^V Dֲ2va_gl}/rKz1mQΩgk_|9/57]hx0s7=ӭs;%1I%CHdջ7tЗE/.]6a*>-Y6ęQ ;?Jv?IU:OM%R÷6pu\ܢ;3KcSF[_:M<'ql4#[ i{rAG]($-'LwK8 =wcvKS rrF%dហ+L!a=>9S7%bg?z^d@Gnp-ȯ'~_r[s71^`tFYeer\^YhSz>CHX;0yL5Cvv6>MEq`ہKK:ظĦ<,۝Z* -V-7[] -E:vqg Mi~r&EYU_[{Ǫ=EnlkVu>]yvJܶ!ரfIfl=kS4#|onGnx֔$):5%W?5Dl[-f(fw[t?x(/==Pn6/hm՟.\mja|R( ˳|/!N趕%+*ny ~w8 8cr^_\Wu59 l*Z74{ >e꽝mnjW7.>ܘ'A׈7⋕]rcO͆h񢔚ںNJ=/ktzjH3](J.Vje6N I_ l=0?{Is^Y}_6{Ó];joM.2Ss@I@(Ƭ ^lendstream +Cmբ#/AK{_{I^~͎{(TNSKU:F7l*NU0rq1Fxn9p!EXa3 6{'|q}MU}kY/[gWdو=sY&?x·9S7%bg?^dDlp.ȯ'~_r[s71Z`tZ^eer\AYdSz>}HX;ʰXLܸ5C6v:7>MEq`ہKUK= ڕX9ť<(ڜV-7[ ry-:6Պ3G4?9QC"-*ӯ-]mUL?o {gB5g<;E-x1+Yi~m35)/&fߛۑ$kJxDZ]vBAŚpOl]!mq>_ +}finڭ呃kM/BzvU%ayћ٥ ݶҮdEW-?'0=6l몮F;RMEf$C}\gL}X혡ŇĿ>^CzrpSn.Y-]RS[)TiÞg7e NOuWZRErkMA7!;!-g/-ߜ㣶Sޘ~._++7>^yxsBS͠ISc3}P3?O$Xbzl>endstream endobj 631 0 obj << /Type /Font /Subtype /Type1 -/Encoding 1062 0 R +/Encoding 1064 0 R /FirstChar 229 /LastChar 229 -/Widths 1063 0 R -/BaseFont /WCDEDE+StandardSymL +/Widths 1065 0 R +/BaseFont /MDTYJO+StandardSymL /FontDescriptor 629 0 R >> endobj 629 0 obj << /Ascent 504 /CapHeight 687 /Descent -228 -/FontName /WCDEDE+StandardSymL +/FontName /MDTYJO+StandardSymL /ItalicAngle 0 /StemV 0 /XHeight 400 @@ -8873,10 +8875,10 @@ endobj /CharSet (/summation) /FontFile 630 0 R >> endobj -1063 0 obj +1065 0 obj [713 ] endobj -1062 0 obj << +1064 0 obj << /Type /Encoding /Differences [ 0 /.notdef 229/summation 230/.notdef] >> endobj @@ -8891,7 +8893,7 @@ stream xveP\m.4x<4tC$ hCݙ9uujww=k=KUZMUfAX98`;sgTUPp2L::)G6s tAiHVNFm ]&WVyfo:=R 5A 5` RoTr99 ( (9 @;58#`ۃG3dz9ځwr4:= Cg<-aw=j=bdj0wqbvpqppd7(f{h4̠sOo?W1L<b~lRSjƤ z8 `)awlsv u=0t&Nr)_2uҷ| `7.N=ԍ~꒡oxprh :!l?,r1}rFƟdSnW`O)y-CHN~e<>ȕ4]eg!1N<- @uk{bΤgQ#9,h%/da10<1 |J>6dp͒;Z2ҞwF^<ى߆@^Sl|:=[l+zN+CE}<\`l<ոCdDj+$"Vje pQs1(Se܇Rb29~q& aqSƿ$f/ @@ -8924,23 +8926,23 @@ b ȼ]=|ҬpbO/'΃SmoZ~w%DR^ ѧ ?O5JA}^ rӆsu/t(}*@sPljZjU6}mF6q/~ZӾ W҉6|kk&s/]KWp9]ˆ&^0;~fwx>"5bX) zVJ:&/wT9t& j[^}k,0E_Л.f|O_4xz_"M)J1-Qh$TX#fzX7g(r9"n<BqDJ*)#}B&hywAkw˕S(Q.\NweF%h/'fc] Bj3їriǾ`2Pm;/aeCnR4C&3{Y)H\=Ӈqer`1ϔ( ;u}ld~3 t5upxC=ۥ;Εlؒ::SIӭ2DVו9_gv1$͑70W[~P5}9Lj-Ρ b59\ixl~Ʒ9|b~;B:I)՘hp,2Y75E0kWH;n9i.jn;)>Ufn:e)|#3P jxQs8E$Gą/ :۽J:_ {gsdݩ–ʗ,F\ N#QpurmLX)rc-)ړnedUx-4KIiDwM(}ZGELՠ-5Q? 柔RqD_CJB#&F -iR-&, R$Qѕ1tόNݝ؊ 5x)F ɑ-~-曈o&$%mKeq@:Mr~`s/  d3s/ɬendstream +iR-&, R$Qѕ1tόNݝ؊ 5x)F ɑ-~-曈o&$%mKeq@:Mr~`s/  d3s/ɑendstream endobj 570 0 obj << /Type /Font /Subtype /Type1 -/Encoding 1060 0 R +/Encoding 1062 0 R /FirstChar 40 /LastChar 122 -/Widths 1064 0 R -/BaseFont /YKCSBJ+NimbusSanL-BoldItal +/Widths 1066 0 R +/BaseFont /IBFLEI+NimbusSanL-BoldItal /FontDescriptor 568 0 R >> endobj 568 0 obj << /Ascent 722 /CapHeight 722 /Descent -217 -/FontName /YKCSBJ+NimbusSanL-BoldItal +/FontName /IBFLEI+NimbusSanL-BoldItal /ItalicAngle -12 /StemV 145 /XHeight 532 @@ -8949,7 +8951,7 @@ endobj /CharSet (/parenleft/parenright/comma/hyphen/period/a/b/c/d/e/f/g/h/i/k/l/m/n/o/p/r/s/t/u/v/w/x/y/z) /FontFile 569 0 R >> endobj -1064 0 obj +1066 0 obj [333 333 0 0 278 333 278 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 611 556 611 556 333 611 611 278 0 556 278 889 611 611 611 0 389 556 333 611 556 778 556 556 500 ] endobj 560 0 obj << @@ -8960,30 +8962,34 @@ endobj /Filter /FlateDecode >> stream -xRiXSU"VP| d#D"2 5[{MBC,QP0IhOexX#"   -({{?g>묽F^Vl<}* -*QlV9Pa `>9z Vi8K*| g:<$D00H*qx0~LǁyTq- jMX1 #^*"}HvBZ`MI4B 阦gZQ¯/tjS48Y L=1׮!$Q]X,'{'\Zs+&XzD[ 3Yi-q"fJĚVkM&>׶h|+g}VI'>xGP'fʦn`O/o#y 9nm.'Vmx~Oe.Kyt2>i!*}Jaimi{p8wYDWH>3U/!;b2=H3{==c[V>PA91/TH/ȧmW.x8E\ Lᑄendstream +xRiXSWV"VTǃdl ` A%^%7$4RElRV e\XZWT VA$ +PjsS姝K#?X"8`GgRq`"̲eỢ"QI8"D#IiF3hA|lltBPY@1֘# +D!Q(T Q?Bf<1F@84C +T+(&PL4!Jwd5` +1п + `#@䈩X҅6^w=+d/ʅ9'!Ik\s,ܩ<Ⱥ0yp蜖M GV%uwGϭyJu,2O.h|xjaBHlx˓L؈cy#LEݛds(ou) +aUH +U1&-J0k)LޛR5LN<Ѐ_LXb2i(^K2AcJ겉WC޼]I?l֒lu:Š}n}b2f3'seyu[~Y|0;;vh܂՜mo>졘)|ScZ{PWـۖ7Vj4{z[`n/t V Տm/"'ƗW:;m{zR s},*"&yNU'[FU{cAVAܹaK|NL jHpcmlBqTxl4at֕/ݟ80a|Oy^Og/DuN»]=о +sM/<[gGRD<۴=DACʈ(0RAV%Ë%hs$=SFndqrs)3X3ʵd׊lf͹=:gz-/ֽBm?].XuvS7KUf=1:9gx2ZrމĚw]twhW/:DaI{cokX淇B[M^.{׭nO­J$OpU̓=Ǜq_Y;xcP[X jǏ.<ӗhb[x`N~ŧL={Xw|՜v7>o['=e=3B_WU}EN` Hv/iȎ|fnBvc5-P+{-=e>AATTa\xC[̬ϖg +[^5<, (?+r|')"Dp&(=endstream endobj 561 0 obj << /Type /Font /Subtype /Type1 -/Encoding 1065 0 R +/Encoding 1067 0 R /FirstChar 58 /LastChar 62 -/Widths 1066 0 R -/BaseFont /OIOSLF+CMMI10 +/Widths 1068 0 R +/BaseFont /SYPZRY+CMMI10 /FontDescriptor 559 0 R >> endobj 559 0 obj << /Ascent 694 /CapHeight 683 /Descent -194 -/FontName /OIOSLF+CMMI10 +/FontName /SYPZRY+CMMI10 /ItalicAngle -14.04 /StemV 72 /XHeight 431 @@ -8992,10 +8998,10 @@ endobj /CharSet (/period/comma/less/greater) /FontFile 560 0 R >> endobj -1066 0 obj +1068 0 obj [278 278 778 0 778 ] endobj -1065 0 obj << +1067 0 obj << /Type /Encoding /Differences [ 0 /.notdef 58/period/comma/less 61/.notdef 62/greater 63/.notdef] >> endobj @@ -9010,43 +9016,46 @@ stream xteT6 "!0tw RJ03P ݥtHw]C /Y{Ηsw֬7Cm=^y5H A H4֮]&TRWd -ӋⳲ*AVH0dI A6% $g(Bap=k/o?,wvrœA8P A[mLSPA@p+'PA` @(5<`@@@]6` 3;y7$\m~p)y8$ÐJՉB΍ߙP;O(wKlw0wV A߹A0dy )dgq!w0wؿ>{+O4?k# '[>|A@]n;0N+3#0(/Tك$oCd ?u}J{B+}BZ`UYlPXiՖ1S90댪~d蛅XALJQ9DjVc%Ck:P{IsI$`M ֏j=Ҟ% f:H(}ϕ n- ##ߖ'Tkɽى.}T.+(w{"X^x˞ƹA:XR/揗7MK"/?2 z=i[A?}m4I=<8}rZu~)θzpcFu+"^]@O-UUݸuX?@ƴl͊~Œ=_R:Aw1_5U{xsp\dç,ׂU}11'[I6ߟP]12TW'Bĺm <}5AM& :16{+~PnGҽEe~dHm|]H.Q.'[bF 2zknAX JH-;ĉ9fGW832d4 ⨡E+z YjJPZ=vmYvho\(SzIVG*gUrs8F2E0ksOsjPEFlaI'ch5o5r̥)', |bNKBBw/"(%i0sju&1oy]ʭmDšL8O&"8Vv~B>ާJcK,׍Y+oQoq]E>vQuL^/[˖n؊L:`Ufl^}6pROK%B_^Mj|A5 :)CSfp'u:I W3kao:YR*Y@9K _e?]8tԢv Tu$Zy HcGt,#TB͹uR ^KL:'刞!.EgݺFl>%]fh!ѵa>v/ FҾZ@ck11!k)-k1mt+WAWÊ)Z`hF޸@$뷡KŝbgpBY)kw˝3m0ȄM1*@C6QYju{j82A޲9.F$&j $Y$!_\6,7Pp|TY|uadGcVf2}cM_ }mѡiUVAf‡dQuO&e !ƉC9_{ V)#~pD`ʶyzZr]Aq#Z\+{cv%+tfpvO\6ViDt9=am E1e!X|rkЪ^2ԇ\"` DmXk7ZWopՑV";:.@t\}g׮4oj@Kyj/ *l_< #,Nv t7ջiY|" ')1H?M`BgV]#U<]1e+w4mv \4J!Fv-ޠB u$HV%kafa?xqֻ *z̫+YudcI#~B7Dh3r6ۀ8)A=1G%ICq6!>_!J#^iܤ<ڼV[hNuw_Vivwq"veYKքqhC\ZunZ[۟9XĚ-JPD“ШUTdu\fr' :G}%nܥL{ wIY.W俽w8vBQ`8܋J ΍uړ{fpǠQqJnR"t9 !Z9=[@*7@YwK w=[2TGζTi6wsx$Fc7!yom7+&XGIȥʠdΎ2n568|l ٓꠎn(ef)L/JMiiL̐v.`fv'`NgJ.kydUʢBCH82V3&qWA\fu!?͇7Yyܵ9ʷyM:xBʃkV~r#m~RKVC1#M5lDF)&8(=H|. ٠7G+3 E){ Hʓ4MX利I>jj`TK= 1 vt ե%(,81siy [o\_b[ߴO 6YKhf%vУD>'Yly4٣MSI,]5"wO.jnWUS3V~\n+];p2s+dX$`OI00X *DD04#cjY˃Ve?.[ GgUHc*<{P -a?_ |nAOÝE& )'6 :v^f&^Bsq*Xդi Əz%*?'ɩR8MsJJä~`"Q<]i,jHkb͈ -xV1%.GZ"҇Nf8|ٜ|ɉ6FqߘJH,0$0fQqj'[}eQ$fc*Eb9ck~;yjٰ`>=h4`DlQs_,0KEԺfb$IL._ -Jgy:ŧ1n"5IW< ^,)ޘD7=!k*6470_|L;g΂l th !_Frd9%FQCae]e\qHXdYY}c[ ,1f3>L(q 1Ҷ?[n xF76G/A-\#.cCeqq0g-jS)!7ifD^˭1gz0\DbG%/ؤ~ELݦ.Do~Նf&e፯)cnGȡ8\4dtK)bVU#!c:5H$vg= -څ?hv*.Ôge?x8{~~k3~~R١`4#G^.s(7IE>CYF(Bj? g/lb=ng%w[R͒fk Nj].^9nDR泌ahWXtԓq}G_kI.FOW⣲cshQZxŴ>L݋j~nCkT֦$9&JCYd~dJMHe&l|~`N 5¹,ISNI )aU>j4/5^:34畱?*D];q@O%k|c) /ɴڙWrZ (UlwM᭞w^8T^O|6Ki lg&NRjQV9GNQgm=]#c IQj/`af5\3eg=^D{[G)6 }t+42|;seE56nNdz?qZ&D_aM׍x3{z[ڠtiBt[q|5ЛbE)jϮBbY1ɫdT^tźt)ZFw&&q y{0GjhG~M-7+$ Xd (Goe *߀[D۶F{7̰Z٘z爈dfjW,kٟvlʼn435ܸO(3>Hڱ\ 5Z&.g"ֿɗ]3a$b~>;u)Ҭ`Mhͳ3-SU,. (gRCƙ >UC 'm9$t68*+b⤴}!Y,iS%# ߌƑOS&W=0FXӷݶz0ȫwd'ڕK.`w7Y};¦T{Ht~l9ER/ӣ*Zux,ܴzd[@au jucݲہJQJCZ7WfzHSU!^JBh+^6rS| #\? dGBЌendstream +ӋⳲ*AVH0dI A6% $g(Bap=k/o?,wvrœA8P A[mLSPA@p+'PA` @(5<`@@@]6` 3;y7$\m~p)y8$ÐJՉB΍ߙP;O(wKlw0wV A߹A0dy )dgq!w0wؿ>{+O4?k# '[>|A@]n;04)<-Ic"r aUȕ'Ȓ7 `<0r.jɿլJ$6 E t ^"_-ITMz**=K̦u"2pQ)Z+ +i0[h9FF-Oē{-]\VQX3FE=s/u~^/]%vo›$>D_ :9Se{Ҷ4:>\y .F}$ճ*};ev^YtrX'63ћYq{;jv{6^7ښs7Cc'rn_eX*Jy>HCŒQD^)U`qT?=_qvMҪtgC%iYqc1 %_.v˖R"=aH ٵKEPs'/szjq`Fd*0WyT/ۆaӈ EqLWtI0Wpz Q lgr/Mg̅ ky 73_W>*ތ^5JZ+'}h[tb@jI\5#! Y4ȆOX8cbN)?%dy~zv n)X#;YC囂 =:xc봣;umѴg4ƀТL-ʧ/u{oR`fgg̓)b]BI-1 :e1[bf~,iXɨesBVrށf&NeHɯTh-Yj`$Zse6ۉzl +d'P ]L᫯b3" {Ozع~=k²tEra \~ 5|p3v+R%\$\O 8d߱9$)&  5 +`v[wsui˧ȥF;QCuWp5Xu/RՔ8 z'(ڲ ʹPу qç=滛$mҏ4U>bpQmema׶X +ժ<3uNt?*Jc'Ѧkj崓;KS7O0X*!W^|EPJҨ1`@U)Lb9[:Cp":LEq埅|OGM7(XGV +ߜŻ|j3V#51*^ W#.E-g!رAuPJ&^?Bm '@.9nz#Jn= D#<"+ktRRNuxH[ʙ79StڀZ"}]Vچn%g{mkAf 5 {y2>8uSeS0%W$,O׶ vwzt5~(&_=ywu_Ҧ i|@wg׶7!pu3J'ֳUr>חп$ˢ(ϟp&7٭EV8 0IcJ~GǎLYF;܍sЏ*uN=Cp]`mu,غ}$WK~PCqB&k|*^ȥ}XcbB*4RZK+WW$Ɣxg?GoJ)&>Jg&m#pR{bJ0,ze[elBʛ}B֕FҶ#›]W"R@<9tO%cP(Ej. %yXSҽ1n%{CUmi[eoaJvΜסBȪs Kٍ ڇʺr˸ +Z&ƶYcYg|ޙPPcm=U,r,nl_0[G]J`2Ϣ[Ԧ&SBxoLƽҟ[caXŎK^I8"SwM]"m& =2|7M6_SCqhȢ閊S8 ŬFB Yu@MkHmEBY 'z *Tҭ]))~pr ;Spê}h^pkVOunMg ei+c!T&Ev&KJ6Z" RA5^,iϵ3r+#sQ/*[=5? яqz11,m~# ;MJ2բrd {ֻFأ46^>< hFjgvȻB{0(?S? +m*)yhh,:xʯ宒hMТe֙};Vi(7qe6v~$ˊjlܜ>gg)~Mzö/|i>g6&Ai&Ӷ5l(y4~y[rS({c_oF;XKGFp>qљڞ۬ +]&8 A}daWZak7 R՞]ŲLcWu5Ȩ(I9uag<6EqSMLl6`6ю\ZOmoduWI"72F'MQ5$ߨyүKL$sT ;K2aejNāh;!Qrn\",eF׫G=DU.}xeCAc+XqR:UISgzih,"EA;݁(v2eΦ2#0jW$ ׷y)yx)3+sw6k+_ pUK|N_OUmna'1>AݹԮ +Y ):n?ش%rai$*Qg4kVq!QNc%g|:coCkjLW] %Dحu/񩥻fxصL?Nn.2ma.+K')"T͈ VB`Uu<T|H"|(wRYКggZ +hXҙ].Ql'3|44!NtsIl3:qTlWv5IiBXӢ5 JG #c>?Mz`\omz3aWN+\~owM67 r>t7^ GU^3&Xti p%ȶ `U]AꆹnefꇴnB0ّN-`BNN뭅0^Wl':ܧ@G29 +/  +:[mendstream endobj 558 0 obj << /Type /Font /Subtype /Type1 -/Encoding 1060 0 R +/Encoding 1062 0 R /FirstChar 48 /LastChar 58 -/Widths 1067 0 R -/BaseFont /AXLODW+NimbusRomNo9L-Regu +/Widths 1069 0 R +/BaseFont /JOAFYA+NimbusRomNo9L-Regu /FontDescriptor 556 0 R >> endobj 556 0 obj << /Ascent 678 /CapHeight 651 /Descent -216 -/FontName /AXLODW+NimbusRomNo9L-Regu +/FontName /JOAFYA+NimbusRomNo9L-Regu /ItalicAngle 0 /StemV 85 /XHeight 450 @@ -9055,36 +9064,42 @@ endobj /CharSet (/zero/one/two/five/eight/colon) /FontFile 557 0 R >> endobj -1067 0 obj +1069 0 obj [500 500 500 0 0 500 0 0 500 0 278 ] endobj 554 0 obj << /Length1 807 /Length2 1423 /Length3 532 -/Length 2003 +/Length 2005 /Filter /FlateDecode >> stream -xR}8Tif4囦hu&03T)A03gi%[Q>2)!IQ䣶z[^㥄5=z}k9׹c|,0 $lx8,bQ\ʃ`V*tp! suF0' EDS9HT^$B4T&!g 1ynG,@cAdXp8y (9KppX|"yfbq GYyi akqSʂq` f\@p d@|]O L.@P, _G©XpٌM [ڎ"zl_0/b8_T5?5!X$^BDϫЯ³0bGv˥ơۃTv@ PBİ%![$D j8T.fἹ]/=c? ,pClac1|.ro!Y~!$ytӟ`sj!2 _Udx?zo,Ky,o'Ƙ} V)n޿>a<9xY`LߤVL}Jzév>=*(g[&n*5?g4DP/-Lw"ՙ`1}4r=HIJW$PR;1Mz s늳>ܕ~\@OrgJv(^=g0ۇ٬<9DN\nF%~vȟve-7x[hAs8K`ޣdMZ}bz+E3IɃyNp}O]byj@Z vFBVdF[jg+|;>C[1\( `>P1,ThI!S};O^rN{vY9c6+fƔ)N 5IDj8%O*xWoeW /H KNʧW\}6uɦ7t{fuCk4prʳ@vX3WfԥP/h}30x>=bd'QK4Xi2y1w>aY&R/ Wj+c#m(-ʴ*Q3j= -E5ﮠ\ݩ=C/V&dYqs*cmcHkƖukmM`jYZ9vքJw̩|@_KTтD<u74] vxt):fgN5>}<$#>kES1Η65ǥIRLHQ,Xa9kh"P|.f@{왭aM J8F j^, قi!7W[dV:m ss$'mci?$^Lݛo:̫L.Iz(pA3ݝKSNb%_$״~'_Җ9"~ԭԞs7!𭓰i|/noH#CQӒs}F={G_߭>X@+q/y|_n;Z+{UdĽUQ%ʞ6SN'hlW $揲tMCE1jDݣΧH>M'l8-$=r - 0~*rbLڨ80@[5+TW'wlMFkT踔~=]ƀWJ -g$A-3A*hendstream +xR{8Tf4_͚B.13.#TiqĐ4Ř54F%j4"[F)]VQ1%fk/:iy_9kg=L1D&LI0g;d +mp87; A td|(S$q`n1Or bƋ  %D H(`"L0!ŎE|n @n"b +0_i &00(FN/ [_,/-~^~>i+O@.@ 55\F?ƂDv4 pH 1b(+\A6kHr ۂBgAl^P(d +1simqA0ѤDHQB/Ҍ7s .n~.0n~muSI(;#)W? km+/hk:NR +G8m9 GĖkUJ NgV'\z6}ɩ=nv?hj)k+ϲBPߩ$21㈻`1Cwٿ7~/l?QT#hvԹUmzFltrڵNPPY@__ؽ2u?JެBРlvmV{g'Sb\U"E{ͦ}}FBD)͊k#?wfo^޼QSOY}o߾zW3]Rr\gviKeHd8#@SOg"5=]Tq>nyzyxǮG]Q͵_>G%`\/*0!1oYc#O8+}hzu +893'33 ]rf- ]Π %kRr@t.3u+~?࠷.wemqDmI!ilo ǔs9irɠXsIr|qGvfn {)T0oV',4nzendstream endobj 555 0 obj << /Type /Font /Subtype /Type1 -/Encoding 1068 0 R +/Encoding 1070 0 R /FirstChar 40 /LastChar 61 -/Widths 1069 0 R -/BaseFont /HEXKCH+CMR10 +/Widths 1071 0 R +/BaseFont /JTPTIX+CMR10 /FontDescriptor 553 0 R >> endobj 553 0 obj << /Ascent 694 /CapHeight 683 /Descent -194 -/FontName /HEXKCH+CMR10 +/FontName /JTPTIX+CMR10 /ItalicAngle 0 /StemV 69 /XHeight 431 @@ -9093,10 +9108,10 @@ endobj /CharSet (/parenleft/parenright/plus/equal) /FontFile 554 0 R >> endobj -1069 0 obj +1071 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 -1068 0 obj << +1070 0 obj << /Type /Encoding /Differences [ 0 /.notdef 40/parenleft/parenright 42/.notdef 43/plus 44/.notdef 61/equal 62/.notdef] >> endobj @@ -9111,54 +9126,44 @@ stream xwePݲ. < |Afap44'Kp wާ{ϟs[wީwꪗFU]b\e:^"Ȯr1~,zz)ߘ ¢HAn05&3 +0hG[ ; @JEUONY$"T@E9dXB`s4GG. G) 4=]́ ك G <89YNq'!( ha=B0xF<֦߱A0bhi1w]8;`rڙ=~$@pr2YiοMP;?ސ?VwYr`q<4?ƶ8k s@L{1 S  `TCg*sD7Ho"Nܿk_.>ZN3Ac -<"3~jjsn+;W գBme@@ U`ijxx@ |>:qq Ӵۂ[GT)(U3⟋TW;G2>^G!>K?DZ+a W7ϿVF# 6X# )6w3 +%]Xߧ!"6 ɉ -7m=*͜,2HOBPmy G}nCe؎5xIEܞlQu=Q}pIe}.A5u[4F^%/s/!se$Q^5~E>CcWoOw)j9kZ$&3S0_4ZJ5I=sT| LFI+(4˳{ٍ" -1ȴSJ_*J - dvT?|k-h؉"(ngp#(˂SpKN7o\noMy螿x'W^*DR$}I")zIeo;Ͷ}'rU9@ 3ȗ]S˓ -nQA}*C۲wd9TeCI< {%ҷjT -ξXW9]ifz>Nu'51#RH)+|q3ޤ$܆. V} -$5ep6izhPDCބ{^vXUJK7ys]"fii ס̥7`^6gG{x܂~W#OWYF5zXpzV!woF:b{/VnT[Z WXsԩ~5~&VM'ڋ|huurI&%Aҩ-gEަTd QS7î^NϮ#/_pC I)3s-/&U* N~~Dó~猿TɎċ?YYZȔpYffy Uk?kYE03\y3 -vf]ߪ=oZP!\t0 x0-?kuC+U~E=^8ٕ->f)׾-cN+]))'Od1Ltit1hO"!E;O};UͶMWt#q!ԐVE)'tSytɗn-7yN4mkU̮U15¸6wpǴو|MOۙ6sIg7E.lfXP +T/y[oF9;q2enpKv ,2tV679W=&Sh~k@V*m؈~l%BA`f ]h'Vup_9zI+3i{AoogOz% 2/z}eyUʽc{sf314Lh^`!ZU%:)<`>_s6pCg=ݶyk݋|L?k[MϘi/]ʰUI&gl}}U}}0ovn\W4EI7!TQ;p|0Ap(HYh7)u8p;B[̿jc R42eVW:Cy+ 4@M -8$1]nT-+(vkD8)JԵn/rjԃ 7A~#E5Y+.*{*-^-3W#fAM -\x5R nlko\0]{" yMX5d9ϳ4I'#P/4 9lvaW\遼dNr5ݱeE1 '퍝lv9Q_e4g]c7+ RDXE/"#m Xڄ"j~iRGkc'ߡMEyұ!es1=9(˿Ebu4mɝݪwU<~Hz!˔m+]!/ftcsnfݏqPˇdb#$F0-">{mɭW-3sd bW nmtJ<@7.S>g:'xvZ ]3f確/bݐ4RhP=VT|~sӄ]'m,U?7Z[k ΙO-- ljU# A!cWO&L+5L6! u9Tt|KK 7&t]~ LDֵL" 6VPDXX5*eտ=,1-ycREffGgU)w5"I{-9ڐQGh|$Aʶh6[.HGzЄ0_P"&jyLl5i)bv([T)k`B s6Xlռ^INڂY%c -㐝K>Z"9"|krUzP[џzYJ_iI{>\+Ao NcJǺjN\IxX3|| 4'%)hl֟yыZ(^v_ORM+hkq]`xQjBՄŒ# g]b?R}H}6$/v;ƑP|> vOĒT&y*F2V6 Y1h;[*Yf1J#&F}=ʁP=6Ϲ@bJHF6j+˖V -Kzf, -rΥg=.xг+1Bi AL37'm]6<<|P%Mbc2hJ,kT٧FFF#7ԩ)=>ҳB -[+l ⺺ҮLVea D%--yQ}%5ew)t\|fSqI -pܩ-6Qdk1\m[6ԈʆD_W9fIk0,'ܑ˪ي<7ڈj1;t *_=Zc >xc\zL%!rV4/ ґtVp Ɇ%6a+ZѢw^n5g+2G Yp$qЩ%>z8TgE|9Z)wG_RrY<{νWo%RPgNj -lj+[i(Qk&dsK)j$%NUAI9b#U34k2ER T<\Z]u7ꓦJŖB"bMW %eTC^ !h)H՟,ϋ=$mxcz}yem,ʍAu<1W"gG͚"|})M}lXixGRL]و^ki>V҅2-@PSYdDIlGF4PiG'3_w#AAK7*RkmelGBx8zi{ -+?G+(v}cN]7~TNWc(6s|ϹANh;OAQ₃&Ib߹P pʓ;MT5Ii?$FË!&sW*̢(ch}XR)?VEXyE#1{KWU+VQHB\&z2uoPVs #N^Y<}˱`w2yR LeVRL(jlu9"#/D?YZ᳷ E\L!K%$ICL5)C4{prLoZ夫̒'9QD۷ ~|oW _ϵiG˽irC.B[:{bCj\`fƃABqæ@7."옋4y7H'_݊?3MZFX -چ9N#Rc8MFMZjD^ڒ -[?DBr٥Ө ak.1X;^`>,uCw1 -iwDžC[6eDgU['wkJG z- TxjgzЗ9#m;P?R; -^`} -Vſ=rRtHZ ҽà0vyw N̺ω.{5!Щ*G~ջp;Dꏋ—Z4uDk+1U^n7\!Xa©`J8HVxv!5CXhM-7#9t1B!5 K1=oǑk8ETQ0q:ƪ|>`CA%ʴp^:ޛt.==Oμ]G␇`"o@D& \ŹҪHxꚧ?tIAJA=3ؕl{\Kv(l!C(YcYQrkw>_R,ݻ;.TW>O>dL@Ƌ2´pX̒LIP/RH_c硝>oz^?fҬBV`b > j=_nTOI.S=SWn;YlMe=-B»r>˕TIujL:ڴ%,A'uU ymF!:m9<۔qǛ꣐s͂${ݾ: y0q"vLαKR -AR(B2E[+^ԚHR܁,ofrjrITzhXԎQzLڀV'g'W>:b˻OWxߚ&2IO$L3-d\!E)_GʌR.~5,GrYiaUdyym<7g#_z{Bx,QFJn߹ep{b"MX%K^-BTZfXŰQm_>vxHY룱\P`:IX'vxƩ9)Trj+۩02$ppaCX=To~5$8'WzJ2i.G ת DxAZpո$\1AgUwn-~5:qq Ӵۂ[GTL?ƪ]tIG bo*II+[@#x%"L0+_wC,~lz ;`c@ssDxIz6n@h~fNo'!xE7 "܊;1 (|̱PO{Ώ wT,w`'BƘx+_ p=evy VDNͅDWx͐צw R ֋b(Ȃ@R{&a֪ +X8Pr샂`&I~AN,h?U >k!2D1Fjl>7 ;2E бSh|grg>+3~:~ikU2;*]k54I rmgm7@3Oe) A%7o7Ѧjt_+{B")Ih$D27\՝Ăf[쾁ԍW DˮIm}7L>I!@ymj;TsRc!ܤ Ji|[Fo5Qg_43=@OIϚy[ԕzTzoLQqnCZJn2R84=4(|R!Vo=/;*%Bx9v.nPOv/ѳ=:$N tTVזjY"uoS*f2()]aWb[\'g}$^Mg R9*ov?yGYluA?~s_|*dGP߁,vf,WdJ8,33 تCU7;KA{Tmc8[Jux> 8I$,:NXms-_gk P)q +2pr++D]ɡ&KA.7CS*Ėd5"̔~%}psn9T5 U?בRYʬQ\=Ja Ǚ+ ].jE*#Pu,*ņ0,]Mu\]Ԛ+5H/aMzijTsr ]5z9~Z]i\Z'!YԹuŧ_瀥(8JP <ؐQFf:RBg z6n;l*vQ?Jl$=Keʶݮ_3I:ͱ9h3Џ8z 1C|{6֫ɖ9[{y76W:%ltUAǩ 3Hk<xpq-g.SD`sQnHn)4Si+*>?9iBx.bb6z誟Yz^bq'ږn|IHD˪tVyڅ~ѱ'&wrwOzbpn:SVX@a#G#o̱(;'MYA;+ mE>)@<xD e[ +X4-udO`K=~@]IhB/S](@Ge3 +F 8%^xUrO1zQ~.Ļع[8 ̱,ꇌ CmOEw` MB_RM +ެ461 rP'o͋nj}=Z[ꮛ[;xV&((->/쀫[wN'*2(Q#*k9`,2l=  䣫+*=5 i{}x-:|ccҋ Zr d/&_iAX+Mq80@EtEp2zQH㣫 *ϥ]֙Orn*:r1 S+d)}A#oFԆ Kos'mwĬIi1^qe-`~~5EX*m=YyO=ԋlKE dpŷS'惱 c]łN]skyIG +gs$qR|AwCђS6ϼE- uu]Z/'P&F5h8.H5{ jbI[`sbyu>mtN^I}EH(>٧BjbI*<h#afl+taa< |R^ 6 Ic3McΫgm5nYd Mi[w'Z֙^V}~78J25*@wBu@QaaUŵ 9ِ6%qo,fy۝-d3SKFe>_@v\ قKT%E$#5eK+WiY%=3oF93Q@|3)R|ᅖYf8Jԍs(5NWPFjS eC΍/u Dn }{sV᫜] r$\ReՀlEm:I/ZPi1fcrQ1|^Z=9rHVȁR:WdHaJ[I@˕?fh[/rP|#k z,88 _[ \ijZqxLw䔻] )9,j{S\+Wd7y3'5_ Hrw4X(Mĵ?߃N`SG*t$IO@5Lg1λ刴]auۉR?/i;ml/'xij m=5׳xdcP\jYh̆k)ww{l?j;I3_Tri1} >UP\?κ֘0ɤ/jԛ4tP\g/@G5۝' CA6ΞhsՋ+bN3aj&(FU ;(-+ʦԾEn1Y5wtmEUgQ>V'UqA=96&]kp'x")H..QúISDbKh!&GN gI!tHÆOCnE6^v<ӱ +yيdhm6_tPzР:Lr˘jKѳգfMJh>S&>64<#)jxlD5T4XXRBJM (),^ 2k$#QpN(U%vL˵M6 Í]6#! 1||'R?*U'1S9 'oxz}ϝ' (qAZYgqWrg|j(8I ȝ&fŤ^t#H@x]fQ1>Y,OA՟U_+"ּY}vϿ⥫ʕc(|$!.@X~Z=M7i(GŹaJ;_'0sqxΊ@K}WuӓxYHc`sAS*Cg%^;vX\a0|;O)Uk2u+ux)&?B5:yZGO,^OPtg".@ʐ$h&VTˇ㚔!=a89&Oz`7֋Og-ref(ۆt?7C+Oi[ڴ4!b-=q!5e0 tyaSAVDEavf< +XUiʓwrn&\OZ-G`B#,zm'z)W1x&وIS^-{"/mIQ"}!iPK05OUl~npʡkӋѻ¡z_2"D̳?ЪFЭB5ZxnJ<3=͝oLQ/>nH+_|jB9O):$-sDaUQc;~'f]D{PuQ|e{ȽRQt]Baf|JY/qpI.V DEܿliW'zʿ ^6RҟG}6yT#ts q]T8" +SK-yJz\"Pӵ/o.Z,0aT0%$+WtS!,̑_h~:ikZĘݷȵp"J*P^F8cU>㡠TeZ8/nM\x:ק[Egޮӣ`PqCs07iQH^"Uk\iUv$x"oBCJK]x7jQ2]d +mjއ!S_"[}we)BıN7kK/v^3iVVE+UDKp?^k|/7'ɤr)fKnli\ڝ,v6R!D׎ohhMJ*l +tp$o +^&cmsi ד}ȺiIh6XC #vP6m8MQHǹfAjɽnvTFMau |?Ô\D]h&,.XkVd:;- ,9cx DocޠK/n [Z)4Eq8v=kkwTUd 4 46OK0MI4DFJEfﯳz+X`*ě+4wÙٌ"= T=(=3;: 퍧[O%> endobj 550 0 obj << /Ascent 668 /CapHeight 668 /Descent -193 -/FontName /CLBPRH+NimbusRomNo9L-ReguItal +/FontName /MUPLPW+NimbusRomNo9L-ReguItal /ItalicAngle -15.5 /StemV 78 /XHeight 441 @@ -9167,7 +9172,7 @@ endobj /CharSet (/a/c/d/e/g/i/j/k/l/m/n/p/r/s/t/u/v/w/x) /FontFile 551 0 R >> endobj -1070 0 obj +1072 0 obj [500 0 444 500 444 0 500 0 278 278 444 278 722 500 0 500 0 389 389 278 500 444 667 444 ] endobj 219 0 obj << @@ -9180,7 +9185,7 @@ endobj stream x{UX]ݲ%!%8l`cٸwwOw瞾[k=9kT㢡Pb[eNVvA*MIEh1wxQhhAtJ! 9䏏;@`dff#U rԁ$ tw:Aܝ@@+M&S ;{ll!zM=&&Y8D@7v+ -9OV[X  @؜́ln֬N@ßbe4h1o?B '۳rwfq+ _6 .^lv re6wu;܀ kquܡpp@ϑh9`õ;9x]`SST2dO$- ?Ogo=Vus/J'k0@-my]*fO~U0d kyLП!+CI4q(RKerqDž/.dppryAK?nômAN@7?7t2N`+ @ gD]lGOO?֠?%^@KEP]Ch}' ;97JOVUrb7iy5`U`e<$Yð`䣈NXUΑg.b 2 +9OV[X  @؜́ln֬N@ßbe4h1o?B '۳rwfq+ _6 .^lv re6wu;܀ kquܡpp@ϑh9`õ;9x]`TіaO$- ?Ogo=Vus/J'k0@-my]*fO~U0d kyLП!+CI4q(RKerqDž/.dppryAK?nômAN@7?7t2N`+ @ gD]lGOO?֠?%^@KEP]Ch}' ;97JOVUrb7iy5`U`e<$Yð`䣈NXUΑg.b 2 STЈJ} !UU#.2=;h"̏HGd*>)aWwc-,I C4[ ||~s.Q2v^cnԣ#ɔS~pBTI9P_Q|W[3 -S_D;>x?@O0~//#,(ʩQ[bTBCvQB&nG7);0J֦ תetF)6Ĝ;KT@ ёp 2\dBebmN\Nņ7u1!DCSVh%Aw+*b/wF:!aQ^OxEX:Yk0lQ ٺ-{sDRѳ6Bp @@ -9224,23 +9229,23 @@ H ;.؉{&* <d Z+qؒY[%N{c&(ChKeΩ?%g4 qɗ" F傩/dvȇ6;qʻD;c^]̻,WCss׬zBTKNR;#,45Wĥ'q(Ń8BKꝹ:`{&~&8saU:oc"}E( @|wyMcM P+;O,>a3En{v?u\ɢpaqhGi4C,GED "}ũ{&mBk %2X0akmK&K7"!'_ q*'̑*,悤+`αt5蹢B NS=ʾigݫV -Q]R8S{?$^cdrEGzCɊ?Qg7}&BbvD#bA%Mpo(2$*Ws> endobj 218 0 obj << /Ascent 712 /CapHeight 712 /Descent -213 -/FontName /OJNSYB+NimbusSanL-ReguItal +/FontName /HFBMTE+NimbusSanL-ReguItal /ItalicAngle -12 /StemV 88 /XHeight 523 @@ -9249,7 +9254,7 @@ endobj /CharSet (/fi/fl/percent/quoteright/parenleft/parenright/asterisk/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/less/equal/greater/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/bracketleft/bracketright/underscore/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/bar/quotedblleft/quotedblright/endash/adieresis) /FontFile 219 0 R >> endobj -1071 0 obj +1073 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 0 0 0 0 889 0 222 333 333 389 0 278 333 278 278 556 556 556 556 556 556 556 556 556 556 278 278 584 584 584 0 0 667 667 722 722 667 611 778 722 278 500 667 556 833 722 778 667 778 722 667 611 722 667 0 0 0 0 278 0 278 0 556 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 260 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 556 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 192 0 obj << @@ -9260,29 +9265,26 @@ endobj /Filter /FlateDecode >> stream -xRXuO{(D -cn *dvw'ݺC%%p?TE!h3J24APB& -j"vYtϽ>wWx0JQ$ `)+`89ap)% j$zCRLX9@ !abq-E4@AΘ@р -=8m1F Pj-$U?1YʈzV XEjUa(Y%̓ M(h? yDKhOVg`p) ɡqr# ڡم !P @>' BDp,`XB4z|Il־A!y>`2!HfY9{0ǬK4a+!,}} HFj-M#f{Al$0 H 7* -HaKkMPQ4g`j Ҡ@? i p/qTM?}g4/)[$~Nb(oD@8 XEqr/R촵*6'|E8AMٯDڒXBo^/h/Z͍%tJ3Ef?*9=__Xro]ZE_滼a k8jGvi͟:s[6LmKuj.uRp>(czj(]ΉQ=tʎ7^k9mZi-}f~ E'#Ħ:ua#9Un'[N Rs \s'g53pe>7?0EH\nKxʹq-IEnurvcs@փgFdx 9ح7܎g.-^Iվk޺%1G80$xG[IOnWbzIʝKE4IĶ^FyǦϩLږ{BƽW嶡-ǼU|GI~BsTaڥm-´Z;)b˧ &8l5䖮xDehwl=R3/=m25?q%Y.Q_$_[;Ɲ睙LDz~8??5ZNHK0 enŧ>sߴU}5x==`pw¬ut5ןrtO-)gs#\c*,eOٝܝ/a?:gtz.f\U˼r8ܿ69'I*asmIy=>Cю˗CJlvo{}Meo業WB?>r+VmQ6YX)8p(3kBdP\۲'J.;} +^_4[cX r uyK͉Z|) . *ʮ:*7\l7298:I{gt K 8gcf -,xUn'-goWgn/:s/G˪&'뢾ѝ/J66Et~3դE C\mu,-M휷%hf   P E8Ο -c6endstream +xR}\uO$9Pp-b| *d vnncyH K(>}4& %|KD@Ogէ>y}{KQJ<"/XKA\,8|~# AX"̠@b7$9|@4a$1iq@&ײ=PDJYd Ѓ\Fp``%&H_RE33^8gEQ 0\R,Uo<Ƞф".-h 9 N949&NcA;8A4*#xG,A TF8 7 DRSgZ[QhtCAE׻NeOP Fݹa.oo'NUӽD=kLŧC._S˼t8ط69;xI*asmi= +n>{:H+!Ŷ=]vW>gԦysS7(KklOJ#VYօ4wK=(>X?#+6B!?<̚Y)4{YԞWk|D^X[>M,f:ĸ5o|) . K9*_zo7<)8*Qy乧'XgcFߑr,xUNYg~Wg.2zG˪S&'ѽҬC7Ft|;*εĞS C\*T}cu,)I혻%pF   P EXcendstream endobj 193 0 obj << /Type /Font /Subtype /Type1 -/Encoding 1072 0 R +/Encoding 1074 0 R /FirstChar 0 /LastChar 48 -/Widths 1073 0 R -/BaseFont /WRKYZU+CMSY10 +/Widths 1075 0 R +/BaseFont /ZWXAFE+CMSY10 /FontDescriptor 191 0 R >> endobj 191 0 obj << /Ascent 750 /CapHeight 683 /Descent -194 -/FontName /WRKYZU+CMSY10 +/FontName /ZWXAFE+CMSY10 /ItalicAngle -14.035 /StemV 85 /XHeight 431 @@ -9291,10 +9293,10 @@ endobj /CharSet (/minus/plusminus/bullet/arrowright/prime) /FontFile 192 0 R >> endobj -1073 0 obj +1075 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 -1072 0 obj << +1074 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 @@ -9309,7 +9311,7 @@ stream x{Ex]Y%f&K̒E%fbffdh1{wf5&sƉ<qE-LII(aobbcf(X81]\FTTj Q'NWp9Yl|Y9hPr(A@'K?-`c 4U:ۻ8f:ϪQ{'Ks V]E_6^^^?@g w IOӦ*Z@k98Ę͘ ?ۙEfbN@?Cynvnv^63H.,v.@iJBWp_%< -ٙx9;̌l>f?/g#W ߁C`cZ@?/?aF 'Kw.+3+++?jjogt#[ EC[LARggJ&6N'?N:-dd_}Rq\N _di:z\\?ZT?z8)bcF6 < #Ka;sd,a4UX.Po!P/oY ڙ[Iq;{SK;s*+L 6qqr#ϻ؛Yit ؛[5w= 1p r?v!DgP ,#4i!P ) O(f+ !ApYv AB4^ZމLjYՃ64j=ѱ" !IUQ +ٙx9;̌l>f?/g#W ߁C`cZ@?/?aF 'Kw.+3+++?jjogt#[ EBRS^KggJ&6N'?N:-dd_}Rq\N _di:z\\?ZT?z8)bcF6 < #Ka;sd,a4UX.Po!P/oY ڙ[Iq;{SK;s*+L 6qqr#ϻ؛Yit ؛[5w= 1p r?v!DgP ,#4i!P ) O(f+ !ApYv AB4^ZމLjYՃ64j=ѱ" !IUQ /Kॢ2xU`XLo3b#fM7ʐ2R$ژPgŢ~ܡKCaqպjq`4\c6VwmQX]fyɠ+GNz_isWy;vse]5ζGM*Q->ݟ_,k Y4aKMXJ*uQ9?;&?[\j ڟ3<X:`gkce@TU] giM4ZHo30o X]8@^ۚ\IjݬF)3ñ%*֒Z-e?[a~Ɯ6͌@Dݡ,y\t~&3d|6 sʹs+'K\/hV^kHĄ 7kt ={C@e駲jlfB6u_^}NO !ՖNzܥ-gı+3BI oR#/ ˆ(EOmrJSkTx~Rt˸᪄ t`#Փ;uXBN>jMgRqo Ip9C[{ -\9.`^V}1|'h5rFr:#endstream +\9.`^V}1|'h5rFr:q,endstream endobj 173 0 obj << /Type /Font /Subtype /Type1 -/Encoding 1060 0 R +/Encoding 1062 0 R /FirstChar 2 /LastChar 252 -/Widths 1074 0 R -/BaseFont /VYDNGI+NimbusSanL-Regu +/Widths 1076 0 R +/BaseFont /FGWMXQ+NimbusSanL-Regu /FontDescriptor 171 0 R >> endobj 171 0 obj << /Ascent 712 /CapHeight 712 /Descent -213 -/FontName /VYDNGI+NimbusSanL-Regu +/FontName /FGWMXQ+NimbusSanL-Regu /ItalicAngle 0 /StemV 85 /XHeight 523 @@ -9391,7 +9393,7 @@ endobj /CharSet (/fi/fl/exclam/quoteright/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/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/bracketright/underscore/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 -1074 0 obj +1076 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 222 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 778 722 667 611 722 667 944 667 667 611 278 0 278 0 556 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 << @@ -9403,7 +9405,7 @@ endobj >> stream xweP]-!!@pwp!Hpww~3M}w~̯[z{^wCA&D/`dmgf`Ȃ, JVFw#;Pdm%o@C  dml21P(}{wA&VG%⿽Q ؛ @HN^CBV @-&Z- C4hX @fx`!}h hg ߿ 0N_~|[v {{Vya7շ+7XGY:U߾ww> - :0m,s؁YDüc՝ OX8-Ysڿ6Y!15(Vf؍lA ; }#k+ gQ=%2 "L?yWhQ Y}xai_wo p/5P {Lޥ`b`9Ac}mW2YZF=3;MAV5+.ѿ2oތbrrtz%;C?a + :0m,s؁YDüc՝ OX8-Ysڿ6Y!15(Vf؍lA ; }#k+ gQ=%2 "L?yWhQ Y}xai_wo p/5P {Lޥ`b`9Ac}mW2YZF=3;MAV5+.ѿ2oތrJrbtz%;C?a Z;\9XL_k}{;@h&K+26kNG?  뿇t"-Zr%$Wf kuw2C(f{[wx$s=W1Ԏs699yٖıftecPpx3|H:R u=^ʤ1 G1|(e_=vtG4l1+0(_ʷ1vb]f͓sX26c=4 d7^טWU_DJJbJ:z@=LeZ=o8nKg^V&vTL1{v !nnM"Fͬi.5&s̽D5gY<#m @@ -9452,23 +9454,23 @@ X 1ue}JڗYS/؉¡Eоc2xړ#_6v!gXrB"ǎԺD{i'~n#AbmkpD[aR#$ B=p {-.M 5,cmHX;#f0 ӜzN;Uw$ᅂnt6Mu~@aq27''&JAwWf/Ʃ^_;1ޙ$XG3UudTx q:9]?qH`|j+]I;zgPr{/Vз (i1Q~)M#-|bP8q$5 Of~mAX&ZnRǽyw:%kXWmNg.`N0 -+a>ֶ=>*o]J*S$꬟vinXĕs~/nE"> endobj 168 0 obj << /Ascent 722 /CapHeight 722 /Descent -217 -/FontName /RGYOOP+NimbusSanL-Bold +/FontName /OPSOGR+NimbusSanL-Bold /ItalicAngle 0 /StemV 141 /XHeight 532 @@ -9477,129 +9479,129 @@ endobj /CharSet (/fi/fl/parenleft/parenright/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/question/A/B/C/D/E/F/G/H/I/J/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 -1075 0 obj +1077 0 obj [611 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 333 333 0 0 278 333 278 278 556 556 556 556 556 556 556 556 556 556 0 0 0 0 0 611 0 722 722 722 722 667 611 778 722 278 556 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 1076 0 R +/Parent 1078 0 R /Kids [162 0 R 176 0 R 180 0 R 184 0 R 188 0 R 195 0 R] >> endobj 232 0 obj << /Type /Pages /Count 6 -/Parent 1076 0 R +/Parent 1078 0 R /Kids [199 0 R 234 0 R 251 0 R 308 0 R 346 0 R 389 0 R] >> endobj 403 0 obj << /Type /Pages /Count 6 -/Parent 1076 0 R +/Parent 1078 0 R /Kids [396 0 R 410 0 R 419 0 R 427 0 R 435 0 R 443 0 R] >> endobj 456 0 obj << /Type /Pages /Count 6 -/Parent 1076 0 R +/Parent 1078 0 R /Kids [451 0 R 458 0 R 467 0 R 475 0 R 484 0 R 493 0 R] >> endobj 505 0 obj << /Type /Pages /Count 6 -/Parent 1076 0 R +/Parent 1078 0 R /Kids [500 0 R 509 0 R 514 0 R 521 0 R 528 0 R 534 0 R] >> endobj 541 0 obj << /Type /Pages /Count 6 -/Parent 1076 0 R +/Parent 1078 0 R /Kids [538 0 R 543 0 R 547 0 R 565 0 R 572 0 R 581 0 R] >> endobj 596 0 obj << /Type /Pages /Count 6 -/Parent 1077 0 R +/Parent 1079 0 R /Kids [588 0 R 599 0 R 606 0 R 612 0 R 617 0 R 626 0 R] >> endobj 640 0 obj << /Type /Pages /Count 6 -/Parent 1077 0 R +/Parent 1079 0 R /Kids [634 0 R 642 0 R 650 0 R 659 0 R 666 0 R 670 0 R] >> endobj 678 0 obj << /Type /Pages /Count 6 -/Parent 1077 0 R +/Parent 1079 0 R /Kids [675 0 R 680 0 R 690 0 R 698 0 R 703 0 R 709 0 R] >> endobj 726 0 obj << /Type /Pages /Count 6 -/Parent 1077 0 R +/Parent 1079 0 R /Kids [718 0 R 728 0 R 733 0 R 741 0 R 749 0 R 755 0 R] >> endobj 768 0 obj << /Type /Pages /Count 6 -/Parent 1077 0 R +/Parent 1079 0 R /Kids [762 0 R 777 0 R 789 0 R 795 0 R 800 0 R 806 0 R] >> endobj 826 0 obj << /Type /Pages /Count 6 -/Parent 1077 0 R +/Parent 1079 0 R /Kids [821 0 R 833 0 R 842 0 R 849 0 R 858 0 R 862 0 R] >> endobj 869 0 obj << /Type /Pages /Count 6 -/Parent 1078 0 R +/Parent 1080 0 R /Kids [866 0 R 871 0 R 876 0 R 881 0 R 885 0 R 889 0 R] >> endobj 912 0 obj << /Type /Pages /Count 6 -/Parent 1078 0 R +/Parent 1080 0 R /Kids [900 0 R 917 0 R 928 0 R 941 0 R 946 0 R 957 0 R] >> endobj 975 0 obj << /Type /Pages /Count 6 -/Parent 1078 0 R -/Kids [970 0 R 983 0 R 991 0 R 995 0 R 1009 0 R 1027 0 R] +/Parent 1080 0 R +/Kids [970 0 R 983 0 R 991 0 R 995 0 R 1010 0 R 1029 0 R] >> endobj -1035 0 obj << +1037 0 obj << /Type /Pages /Count 3 -/Parent 1078 0 R -/Kids [1031 0 R 1038 0 R 1057 0 R] +/Parent 1080 0 R +/Kids [1033 0 R 1040 0 R 1059 0 R] >> endobj -1076 0 obj << +1078 0 obj << /Type /Pages /Count 36 -/Parent 1079 0 R +/Parent 1081 0 R /Kids [174 0 R 232 0 R 403 0 R 456 0 R 505 0 R 541 0 R] >> endobj -1077 0 obj << +1079 0 obj << /Type /Pages /Count 36 -/Parent 1079 0 R +/Parent 1081 0 R /Kids [596 0 R 640 0 R 678 0 R 726 0 R 768 0 R 826 0 R] >> endobj -1078 0 obj << +1080 0 obj << /Type /Pages /Count 21 -/Parent 1079 0 R -/Kids [869 0 R 912 0 R 975 0 R 1035 0 R] +/Parent 1081 0 R +/Kids [869 0 R 912 0 R 975 0 R 1037 0 R] >> endobj -1079 0 obj << +1081 0 obj << /Type /Pages /Count 93 -/Kids [1076 0 R 1077 0 R 1078 0 R] +/Kids [1078 0 R 1079 0 R 1080 0 R] >> endobj -1080 0 obj << +1082 0 obj << /Type /Outlines /First 7 0 R /Last 159 0 R @@ -9608,20 +9610,20 @@ endobj 159 0 obj << /Title 160 0 R /A 157 0 R -/Parent 1080 0 R +/Parent 1082 0 R /Prev 155 0 R >> endobj 155 0 obj << /Title 156 0 R /A 153 0 R -/Parent 1080 0 R +/Parent 1082 0 R /Prev 151 0 R /Next 159 0 R >> endobj 151 0 obj << /Title 152 0 R /A 149 0 R -/Parent 1080 0 R +/Parent 1082 0 R /Prev 111 0 R /Next 155 0 R >> endobj @@ -9689,7 +9691,7 @@ endobj 111 0 obj << /Title 112 0 R /A 109 0 R -/Parent 1080 0 R +/Parent 1082 0 R /Prev 55 0 R /Next 151 0 R /First 115 0 R @@ -9789,7 +9791,7 @@ endobj 55 0 obj << /Title 56 0 R /A 53 0 R -/Parent 1080 0 R +/Parent 1082 0 R /Prev 19 0 R /Next 111 0 R /First 59 0 R @@ -9854,7 +9856,7 @@ endobj 19 0 obj << /Title 20 0 R /A 17 0 R -/Parent 1080 0 R +/Parent 1082 0 R /Prev 7 0 R /Next 55 0 R /First 23 0 R @@ -9876,37 +9878,37 @@ endobj 7 0 obj << /Title 8 0 R /A 5 0 R -/Parent 1080 0 R +/Parent 1082 0 R /Next 19 0 R /First 11 0 R /Last 15 0 R /Count -2 >> endobj -1081 0 obj << -/Names [(API) 1041 0 R (BSD) 1042 0 R (Doc-Start) 167 0 R (GIMP) 1043 0 R (GNU) 1044 0 R (GUI) 1045 0 R (GVim) 1046 0 R (HTTPS) 1047 0 R (Item.1) 687 0 R (Item.10) 894 0 R (Item.11) 895 0 R (Item.12) 896 0 R (Item.13) 897 0 R (Item.14) 903 0 R (Item.15) 904 0 R (Item.16) 931 0 R (Item.17) 932 0 R (Item.18) 933 0 R (Item.19) 934 0 R (Item.2) 688 0 R (Item.20) 935 0 R (Item.21) 936 0 R (Item.22) 937 0 R (Item.3) 693 0 R (Item.4) 694 0 R (Item.5) 695 0 R (Item.6) 781 0 R (Item.7) 782 0 R (Item.8) 792 0 R (Item.9) 893 0 R (JRE) 1048 0 R (NID) 1049 0 R (PDF) 1050 0 R (PID) 1051 0 R (RTT) 1052 0 R (SDK) 1053 0 R (SVN) 1054 0 R (VS) 1055 0 R (appendix.A) 154 0 R (appendix.B) 158 0 R (chapter*.1) 202 0 R (chapter*.2) 254 0 R (chapter*.3) 349 0 R (chapter.1) 6 0 R (chapter.2) 18 0 R (chapter.3) 54 0 R (chapter.4) 110 0 R (chapter.5) 150 0 R (cite.Algorithms) 817 0 R (cite.AlgorithmsC) 818 0 R (cite.AntManual) 1007 0 R (cite.Games) 915 0 R (cite.Java2DAPI) 914 0 R (cite.Java2d) 913 0 R (cite.Javadoc) 1006 0 R (cite.M32) 1036 0 R (cite.OOS) 980 0 R (cite.Regexp) 506 0 R (cite.Richtlinien) 981 0 R (cite.Swing) 774 0 R (cite.Tanenbaum) 393 0 R (cite.Vorlesung) 577 0 R (figure.1.1) 281 0 R (figure.1.2) 282 0 R (figure.2.1) 283 0 R (figure.2.10) 292 0 R (figure.2.11) 293 0 R (figure.2.12) 294 0 R (figure.2.13) 295 0 R (figure.2.14) 296 0 R (figure.2.15) 297 0 R (figure.2.2) 284 0 R (figure.2.3) 285 0 R (figure.2.4) 286 0 R (figure.2.5) 287 0 R (figure.2.6) 288 0 R (figure.2.7) 289 0 R (figure.2.8) 290 0 R (figure.2.9) 291 0 R (figure.3.1) 298 0 R (figure.3.10) 328 0 R (figure.3.11) 329 0 R (figure.3.12) 330 0 R (figure.3.13) 331 0 R (figure.3.2) 299 0 R (figure.3.3) 300 0 R (figure.3.4) 301 0 R (figure.3.5) 302 0 R (figure.3.6) 303 0 R (figure.3.7) 304 0 R (figure.3.8) 305 0 R (figure.3.9) 306 0 R (figure.4.1) 332 0 R (figure.4.10) 341 0 R (figure.4.11) 342 0 R (figure.4.12) 343 0 R (figure.4.13) 344 0 R (figure.4.2) 333 0 R (figure.4.3) 334 0 R (figure.4.4) 335 0 R (figure.4.5) 336 0 R (figure.4.6) 337 0 R (figure.4.7) 338 0 R (figure.4.8) 339 0 R (figure.4.9) 340 0 R (page.1) 166 0 R (page.10) 310 0 R (page.11) 348 0 R (page.12) 391 0 R (page.13) 398 0 R (page.14) 412 0 R (page.15) 421 0 R (page.16) 429 0 R (page.17) 437 0 R (page.18) 445 0 R (page.19) 453 0 R (page.2) 178 0 R (page.20) 460 0 R (page.21) 469 0 R (page.22) 477 0 R (page.23) 486 0 R (page.24) 495 0 R (page.25) 502 0 R (page.26) 511 0 R (page.27) 516 0 R (page.28) 523 0 R (page.29) 530 0 R (page.3) 182 0 R (page.30) 536 0 R (page.31) 540 0 R (page.32) 545 0 R (page.33) 549 0 R (page.34) 567 0 R (page.35) 574 0 R (page.36) 583 0 R (page.37) 590 0 R (page.38) 601 0 R (page.39) 608 0 R (page.4) 186 0 R (page.40) 614 0 R (page.41) 619 0 R (page.42) 628 0 R (page.43) 636 0 R (page.44) 644 0 R (page.45) 652 0 R (page.46) 661 0 R (page.47) 668 0 R (page.48) 672 0 R (page.49) 677 0 R (page.5) 190 0 R (page.50) 682 0 R (page.51) 692 0 R (page.52) 700 0 R (page.53) 705 0 R (page.54) 711 0 R (page.55) 720 0 R (page.56) 730 0 R (page.57) 735 0 R (page.58) 743 0 R (page.59) 751 0 R (page.6) 197 0 R (page.60) 757 0 R (page.61) 764 0 R (page.62) 779 0 R (page.63) 791 0 R (page.64) 797 0 R (page.65) 802 0 R (page.66) 808 0 R (page.67) 823 0 R (page.68) 835 0 R (page.69) 844 0 R (page.7) 201 0 R (page.70) 851 0 R (page.71) 860 0 R (page.72) 864 0 R (page.73) 868 0 R (page.74) 873 0 R (page.75) 878 0 R (page.76) 883 0 R (page.77) 887 0 R (page.78) 891 0 R (page.79) 902 0 R (page.8) 236 0 R (page.80) 919 0 R (page.81) 930 0 R (page.82) 943 0 R (page.83) 948 0 R (page.84) 959 0 R (page.85) 972 0 R (page.86) 985 0 R (page.87) 993 0 R (page.88) 997 0 R (page.89) 1011 0 R (page.9) 253 0 R (page.90) 1029 0 R (page.91) 1033 0 R (page.92) 1040 0 R (page.93) 1059 0 R (section*.10) 439 0 R (section*.11) 446 0 R (section*.12) 454 0 R (section*.13) 462 0 R (section*.14) 470 0 R (section*.15) 487 0 R (section*.16) 496 0 R (section*.17) 498 0 R (section*.18) 503 0 R (section*.19) 512 0 R (section*.20) 517 0 R (section*.21) 518 0 R (section*.22) 524 0 R (section*.23) 525 0 R (section*.24) 609 0 R (section*.25) 639 0 R (section*.26) 647 0 R (section*.27) 662 0 R (section*.28) 696 0 R (section*.29) 737 0 R (section*.30) 758 0 R (section*.31) 798 0 R (section*.32) 845 0 R (section*.33) 874 0 R (section*.34) 892 0 R (section*.35) 922 0 R (section*.36) 949 0 R (section*.37) 1000 0 R (section*.4) 399 0 R (section*.5) 401 0 R (section*.6) 402 0 R (section*.7) 413 0 R (section*.8) 422 0 R (section*.9) 423 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.3.1) 58 0 R (section.3.10) 94 0 R (section.3.11) 98 0 R (section.3.2) 62 0 R (section.3.3) 66 0 R (section.3.4) 70 0 R (section.3.5) 74 0 R (section.3.6) 78 0 R (section.3.7) 82 0 R (section.3.8) 86 0 R (section.3.9) 90 0 R (section.4.1) 114 0 R (section.4.2) 118 0 R (section.4.3) 122 0 R (section.4.4) 126 0 R (section.4.5) 130 0 R (section.4.6) 134 0 R (section.4.7) 138 0 R (section.4.8) 142 0 R (section.4.9) 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.3.11.1) 102 0 R (subsection.3.11.2) 106 0 R (table.2.1) 369 0 R (table.2.2) 370 0 R (table.2.3) 371 0 R (table.3.1) 372 0 R (table.3.10) 381 0 R (table.3.11) 382 0 R (table.3.12) 383 0 R (table.3.13) 384 0 R (table.3.14) 385 0 R (table.3.2) 373 0 R (table.3.3) 374 0 R (table.3.4) 375 0 R (table.3.5) 376 0 R (table.3.6) 377 0 R (table.3.7) 378 0 R (table.3.8) 379 0 R (table.3.9) 380 0 R (table.4.1) 386 0 R (table.4.2) 387 0 R] +1083 0 obj << +/Names [(API) 1043 0 R (BSD) 1044 0 R (Doc-Start) 167 0 R (GIMP) 1045 0 R (GNU) 1046 0 R (GUI) 1047 0 R (GVim) 1048 0 R (HTTPS) 1049 0 R (Item.1) 687 0 R (Item.10) 894 0 R (Item.11) 895 0 R (Item.12) 896 0 R (Item.13) 897 0 R (Item.14) 903 0 R (Item.15) 904 0 R (Item.16) 931 0 R (Item.17) 932 0 R (Item.18) 933 0 R (Item.19) 934 0 R (Item.2) 688 0 R (Item.20) 935 0 R (Item.21) 936 0 R (Item.22) 937 0 R (Item.3) 693 0 R (Item.4) 694 0 R (Item.5) 695 0 R (Item.6) 781 0 R (Item.7) 782 0 R (Item.8) 792 0 R (Item.9) 893 0 R (JRE) 1050 0 R (NID) 1051 0 R (PDF) 1052 0 R (PID) 1053 0 R (RTT) 1054 0 R (SDK) 1055 0 R (SVN) 1056 0 R (VS) 1057 0 R (appendix.A) 154 0 R (appendix.B) 158 0 R (chapter*.1) 202 0 R (chapter*.2) 254 0 R (chapter*.3) 349 0 R (chapter.1) 6 0 R (chapter.2) 18 0 R (chapter.3) 54 0 R (chapter.4) 110 0 R (chapter.5) 150 0 R (cite.Algorithms) 817 0 R (cite.AlgorithmsC) 818 0 R (cite.AntIntro) 1008 0 R (cite.AntManual) 1007 0 R (cite.Games) 915 0 R (cite.Java2DAPI) 914 0 R (cite.Java2d) 913 0 R (cite.Javadoc) 1006 0 R (cite.M32) 1038 0 R (cite.OOS) 980 0 R (cite.Regexp) 506 0 R (cite.Richtlinien) 981 0 R (cite.Swing) 774 0 R (cite.Tanenbaum) 393 0 R (cite.Vorlesung) 577 0 R (figure.1.1) 281 0 R (figure.1.2) 282 0 R (figure.2.1) 283 0 R (figure.2.10) 292 0 R (figure.2.11) 293 0 R (figure.2.12) 294 0 R (figure.2.13) 295 0 R (figure.2.14) 296 0 R (figure.2.15) 297 0 R (figure.2.2) 284 0 R (figure.2.3) 285 0 R (figure.2.4) 286 0 R (figure.2.5) 287 0 R (figure.2.6) 288 0 R (figure.2.7) 289 0 R (figure.2.8) 290 0 R (figure.2.9) 291 0 R (figure.3.1) 298 0 R (figure.3.10) 328 0 R (figure.3.11) 329 0 R (figure.3.12) 330 0 R (figure.3.13) 331 0 R (figure.3.2) 299 0 R (figure.3.3) 300 0 R (figure.3.4) 301 0 R (figure.3.5) 302 0 R (figure.3.6) 303 0 R (figure.3.7) 304 0 R (figure.3.8) 305 0 R (figure.3.9) 306 0 R (figure.4.1) 332 0 R (figure.4.10) 341 0 R (figure.4.11) 342 0 R (figure.4.12) 343 0 R (figure.4.13) 344 0 R (figure.4.2) 333 0 R (figure.4.3) 334 0 R (figure.4.4) 335 0 R (figure.4.5) 336 0 R (figure.4.6) 337 0 R (figure.4.7) 338 0 R (figure.4.8) 339 0 R (figure.4.9) 340 0 R (page.1) 166 0 R (page.10) 310 0 R (page.11) 348 0 R (page.12) 391 0 R (page.13) 398 0 R (page.14) 412 0 R (page.15) 421 0 R (page.16) 429 0 R (page.17) 437 0 R (page.18) 445 0 R (page.19) 453 0 R (page.2) 178 0 R (page.20) 460 0 R (page.21) 469 0 R (page.22) 477 0 R (page.23) 486 0 R (page.24) 495 0 R (page.25) 502 0 R (page.26) 511 0 R (page.27) 516 0 R (page.28) 523 0 R (page.29) 530 0 R (page.3) 182 0 R (page.30) 536 0 R (page.31) 540 0 R (page.32) 545 0 R (page.33) 549 0 R (page.34) 567 0 R (page.35) 574 0 R (page.36) 583 0 R (page.37) 590 0 R (page.38) 601 0 R (page.39) 608 0 R (page.4) 186 0 R (page.40) 614 0 R (page.41) 619 0 R (page.42) 628 0 R (page.43) 636 0 R (page.44) 644 0 R (page.45) 652 0 R (page.46) 661 0 R (page.47) 668 0 R (page.48) 672 0 R (page.49) 677 0 R (page.5) 190 0 R (page.50) 682 0 R (page.51) 692 0 R (page.52) 700 0 R (page.53) 705 0 R (page.54) 711 0 R (page.55) 720 0 R (page.56) 730 0 R (page.57) 735 0 R (page.58) 743 0 R (page.59) 751 0 R (page.6) 197 0 R (page.60) 757 0 R (page.61) 764 0 R (page.62) 779 0 R (page.63) 791 0 R (page.64) 797 0 R (page.65) 802 0 R (page.66) 808 0 R (page.67) 823 0 R (page.68) 835 0 R (page.69) 844 0 R (page.7) 201 0 R (page.70) 851 0 R (page.71) 860 0 R (page.72) 864 0 R (page.73) 868 0 R (page.74) 873 0 R (page.75) 878 0 R (page.76) 883 0 R (page.77) 887 0 R (page.78) 891 0 R (page.79) 902 0 R (page.8) 236 0 R (page.80) 919 0 R (page.81) 930 0 R (page.82) 943 0 R (page.83) 948 0 R (page.84) 959 0 R (page.85) 972 0 R (page.86) 985 0 R (page.87) 993 0 R (page.88) 997 0 R (page.89) 1012 0 R (page.9) 253 0 R (page.90) 1031 0 R (page.91) 1035 0 R (page.92) 1042 0 R (page.93) 1061 0 R (section*.10) 439 0 R (section*.11) 446 0 R (section*.12) 454 0 R (section*.13) 462 0 R (section*.14) 470 0 R (section*.15) 487 0 R (section*.16) 496 0 R (section*.17) 498 0 R (section*.18) 503 0 R (section*.19) 512 0 R (section*.20) 517 0 R (section*.21) 518 0 R (section*.22) 524 0 R (section*.23) 525 0 R (section*.24) 609 0 R (section*.25) 639 0 R (section*.26) 647 0 R (section*.27) 662 0 R (section*.28) 696 0 R (section*.29) 737 0 R (section*.30) 758 0 R (section*.31) 798 0 R (section*.32) 845 0 R (section*.33) 874 0 R (section*.34) 892 0 R (section*.35) 922 0 R (section*.36) 949 0 R (section*.37) 1001 0 R (section*.4) 399 0 R (section*.5) 401 0 R (section*.6) 402 0 R (section*.7) 413 0 R (section*.8) 422 0 R (section*.9) 423 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.3.1) 58 0 R (section.3.10) 94 0 R (section.3.11) 98 0 R (section.3.2) 62 0 R (section.3.3) 66 0 R (section.3.4) 70 0 R (section.3.5) 74 0 R (section.3.6) 78 0 R (section.3.7) 82 0 R (section.3.8) 86 0 R (section.3.9) 90 0 R (section.4.1) 114 0 R (section.4.2) 118 0 R (section.4.3) 122 0 R (section.4.4) 126 0 R (section.4.5) 130 0 R (section.4.6) 134 0 R (section.4.7) 138 0 R (section.4.8) 142 0 R (section.4.9) 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.3.11.1) 102 0 R (subsection.3.11.2) 106 0 R (table.2.1) 369 0 R (table.2.2) 370 0 R (table.2.3) 371 0 R (table.3.1) 372 0 R (table.3.10) 381 0 R (table.3.11) 382 0 R (table.3.12) 383 0 R (table.3.13) 384 0 R (table.3.14) 385 0 R (table.3.2) 373 0 R (table.3.3) 374 0 R (table.3.4) 375 0 R (table.3.5) 376 0 R (table.3.6) 377 0 R (table.3.7) 378 0 R (table.3.8) 379 0 R (table.3.9) 380 0 R (table.4.1) 386 0 R (table.4.2) 387 0 R] /Limits [(API) (table.4.2)] >> endobj -1082 0 obj << -/Kids [1081 0 R] +1084 0 obj << +/Kids [1083 0 R] >> endobj -1083 0 obj << -/Dests 1082 0 R +1085 0 obj << +/Dests 1084 0 R >> endobj -1084 0 obj << +1086 0 obj << /Type /Catalog -/Pages 1079 0 R -/Outlines 1080 0 R -/Names 1083 0 R +/Pages 1081 0 R +/Outlines 1082 0 R +/Names 1085 0 R /PageMode /UseOutlines /PageLayout/OneColumn /OpenAction 161 0 R >> endobj -1085 0 obj << +1087 0 obj << /Author(Paul Btow)/Title()/Subject()/Creator(LaTeX with hyperref package)/Producer(pdfeTeX-1.21a)/Keywords() -/CreationDate (D:20080813230429Z) +/CreationDate (D:20080813234108Z) /PTEX.Fullbanner (This is pdfeTeX, Version 3.141592-1.21a-2.2 (Web2C 7.5.4) kpathsea version 3.5.4) >> endobj xref -0 1086 +0 1088 0000000001 65535 f 0000000002 00000 f 0000000003 00000 f @@ -9914,159 +9916,159 @@ xref 0000000000 00000 f 0000000009 00000 n 0000088191 00000 n -0001097597 00000 n +0001097922 00000 n 0000000054 00000 n 0000000143 00000 n 0000088252 00000 n -0001097525 00000 n +0001097850 00000 n 0000000190 00000 n 0000000290 00000 n 0000091822 00000 n -0001097452 00000 n +0001097777 00000 n 0000000338 00000 n 0000000438 00000 n 0000109833 00000 n -0001097327 00000 n +0001097652 00000 n 0000000484 00000 n 0000000709 00000 n 0000109895 00000 n -0001097253 00000 n +0001097578 00000 n 0000000757 00000 n 0000000885 00000 n 0000191033 00000 n -0001097166 00000 n +0001097491 00000 n 0000000933 00000 n 0000001048 00000 n 0000273595 00000 n -0001097079 00000 n +0001097404 00000 n 0000001096 00000 n 0000001196 00000 n 0000278964 00000 n -0001096968 00000 n +0001097293 00000 n 0000001244 00000 n 0000001359 00000 n 0000282585 00000 n -0001096894 00000 n +0001097219 00000 n 0000001412 00000 n 0000001567 00000 n 0000282647 00000 n -0001096807 00000 n +0001097132 00000 n 0000001620 00000 n 0000001800 00000 n 0000319898 00000 n -0001096720 00000 n +0001097045 00000 n 0000001853 00000 n 0000002094 00000 n 0000323296 00000 n -0001096646 00000 n +0001096971 00000 n 0000002147 00000 n 0000002363 00000 n 0000327338 00000 n -0001096518 00000 n +0001096843 00000 n 0000002409 00000 n 0000002575 00000 n 0000327400 00000 n -0001096444 00000 n +0001096769 00000 n 0000002623 00000 n 0000002815 00000 n 0000492008 00000 n -0001096357 00000 n +0001096682 00000 n 0000002863 00000 n 0000003231 00000 n 0000496564 00000 n -0001096270 00000 n +0001096595 00000 n 0000003279 00000 n 0000003539 00000 n 0000500489 00000 n -0001096183 00000 n +0001096508 00000 n 0000003587 00000 n 0000004095 00000 n 0000610258 00000 n -0001096096 00000 n +0001096421 00000 n 0000004143 00000 n 0000004564 00000 n 0000642352 00000 n -0001096009 00000 n +0001096334 00000 n 0000004612 00000 n 0000005031 00000 n 0000646369 00000 n -0001095922 00000 n +0001096247 00000 n 0000005079 00000 n 0000005417 00000 n 0000697782 00000 n -0001095835 00000 n +0001096160 00000 n 0000005465 00000 n 0000005808 00000 n 0000701475 00000 n -0001095748 00000 n +0001096073 00000 n 0000005856 00000 n 0000006208 00000 n 0000752084 00000 n -0001095661 00000 n +0001095986 00000 n 0000006257 00000 n 0000006702 00000 n 0000788019 00000 n -0001095547 00000 n +0001095872 00000 n 0000006751 00000 n 0000006895 00000 n 0000788081 00000 n -0001095469 00000 n +0001095794 00000 n 0000006950 00000 n 0000007258 00000 n 0000823704 00000 n -0001095391 00000 n +0001095716 00000 n 0000007313 00000 n 0000007669 00000 n 0000850574 00000 n -0001095259 00000 n +0001095584 00000 n 0000007716 00000 n 0000007832 00000 n 0000850637 00000 n -0001095180 00000 n +0001095505 00000 n 0000007881 00000 n 0000008068 00000 n 0000866363 00000 n -0001095087 00000 n +0001095412 00000 n 0000008117 00000 n 0000008218 00000 n 0000883593 00000 n -0001094994 00000 n +0001095319 00000 n 0000008267 00000 n 0000008595 00000 n 0000895376 00000 n -0001094901 00000 n +0001095226 00000 n 0000008644 00000 n 0000008760 00000 n -0000941688 00000 n -0001094808 00000 n +0000941689 00000 n +0001095133 00000 n 0000008809 00000 n 0000009041 00000 n -0000953409 00000 n -0001094715 00000 n +0000953391 00000 n +0001095040 00000 n 0000009090 00000 n 0000009413 00000 n -0000962141 00000 n -0001094622 00000 n +0000962138 00000 n +0001094947 00000 n 0000009462 00000 n 0000009778 00000 n -0000966591 00000 n -0001094529 00000 n +0000966583 00000 n +0001094854 00000 n 0000009827 00000 n 0000009988 00000 n -0000976303 00000 n -0001094450 00000 n +0000976205 00000 n +0001094775 00000 n 0000010037 00000 n 0000010188 00000 n -0000983168 00000 n -0001094356 00000 n +0000983353 00000 n +0001094681 00000 n 0000010235 00000 n 0000010316 00000 n -0000987231 00000 n -0001094262 00000 n +0000987416 00000 n +0001094587 00000 n 0000010364 00000 n 0000010445 00000 n -0000990457 00000 n -0001094182 00000 n +0000990714 00000 n +0001094507 00000 n 0000010493 00000 n 0000010634 00000 n 0000011593 00000 n @@ -10075,13 +10077,13 @@ xref 0000010686 00000 n 0000053994 00000 n 0000054057 00000 n -0001090701 00000 n -0001077713 00000 n -0001090529 00000 n -0001076419 00000 n -0001062559 00000 n -0001076247 00000 n -0001091809 00000 n +0001091026 00000 n +0001078038 00000 n +0001090854 00000 n +0001076744 00000 n +0001062884 00000 n +0001076572 00000 n +0001092134 00000 n 0000054575 00000 n 0000054390 00000 n 0000054241 00000 n @@ -10098,9 +10100,9 @@ xref 0000057191 00000 n 0000056239 00000 n 0000057313 00000 n -0001062024 00000 n -0001060159 00000 n -0001061862 00000 n +0001062349 00000 n +0001060484 00000 n +0001062187 00000 n 0000057808 00000 n 0000057623 00000 n 0000057474 00000 n @@ -10125,9 +10127,9 @@ xref 0000062669 00000 n 0000062824 00000 n 0000062981 00000 n -0001058962 00000 n -0001046645 00000 n -0001058786 00000 n +0001059287 00000 n +0001046970 00000 n +0001059111 00000 n 0000063138 00000 n 0000063294 00000 n 0000063450 00000 n @@ -10139,7 +10141,7 @@ xref 0000064389 00000 n 0000064547 00000 n 0000064710 00000 n -0001091927 00000 n +0001092252 00000 n 0000068813 00000 n 0000066483 00000 n 0000065096 00000 n @@ -10247,11 +10249,11 @@ xref 0000892483 00000 n 0000899569 00000 n 0000919839 00000 n -0000946271 00000 n -0000957069 00000 n -0000962204 00000 n -0000966528 00000 n -0000969179 00000 n +0000946092 00000 n +0000957051 00000 n +0000962201 00000 n +0000966520 00000 n +0000969171 00000 n 0000085951 00000 n 0000082594 00000 n 0000080680 00000 n @@ -10300,7 +10302,7 @@ xref 0000086036 00000 n 0000088128 00000 n 0000087968 00000 n -0000991355 00000 n +0000991677 00000 n 0000090407 00000 n 0000092135 00000 n 0000090265 00000 n @@ -10310,7 +10312,7 @@ xref 0000091603 00000 n 0000092009 00000 n 0000092072 00000 n -0001092045 00000 n +0001092370 00000 n 0000091332 00000 n 0000091463 00000 n 0000091510 00000 n @@ -10363,7 +10365,7 @@ xref 0000164308 00000 n 0000164371 00000 n 0000164151 00000 n -0001092163 00000 n +0001092488 00000 n 0000167739 00000 n 0000167087 00000 n 0000164709 00000 n @@ -10412,8 +10414,8 @@ xref 0000226492 00000 n 0000226619 00000 n 0000226334 00000 n -0001092281 00000 n -0000990842 00000 n +0001092606 00000 n +0000991164 00000 n 0000228446 00000 n 0000273720 00000 n 0000228324 00000 n @@ -10448,7 +10450,7 @@ xref 0000304979 00000 n 0000303176 00000 n 0000316591 00000 n -0001092399 00000 n +0001092724 00000 n 0000319959 00000 n 0000319713 00000 n 0000316865 00000 n @@ -10457,34 +10459,34 @@ xref 0000322772 00000 n 0000320070 00000 n 0000323233 00000 n -0001046283 00000 n -0001037062 00000 n -0001046103 00000 n -0001036620 00000 n -0001034335 00000 n -0001036458 00000 n -0001034041 00000 n -0001026223 00000 n -0001033866 00000 n -0001025836 00000 n -0001023649 00000 n -0001025673 00000 n +0001046608 00000 n +0001037387 00000 n +0001046428 00000 n +0001036945 00000 n +0001034658 00000 n +0001036783 00000 n +0001034364 00000 n +0001026546 00000 n +0001034189 00000 n +0001026159 00000 n +0001023972 00000 n +0001025996 00000 n 0000322922 00000 n 0000323077 00000 n 0000325150 00000 n 0000324903 00000 n 0000323521 00000 n 0000325025 00000 n -0001023102 00000 n -0001014154 00000 n -0001022925 00000 n +0001023425 00000 n +0001014477 00000 n +0001023248 00000 n 0000327462 00000 n 0000326807 00000 n 0000325261 00000 n 0000327275 00000 n 0000326957 00000 n 0000327117 00000 n -0000991228 00000 n +0000991549 00000 n 0000329155 00000 n 0000360354 00000 n 0000492198 00000 n @@ -10503,7 +10505,7 @@ xref 0000495904 00000 n 0000496061 00000 n 0000496217 00000 n -0001092517 00000 n +0001092842 00000 n 0000570363 00000 n 0000500551 00000 n 0000499731 00000 n @@ -10536,9 +10538,9 @@ xref 0000617601 00000 n 0000615202 00000 n 0000642289 00000 n -0001013823 00000 n -0001011713 00000 n -0001013652 00000 n +0001014146 00000 n +0001012035 00000 n +0001013975 00000 n 0000649046 00000 n 0000646431 00000 n 0000645716 00000 n @@ -10547,7 +10549,7 @@ xref 0000645866 00000 n 0000646023 00000 n 0000646306 00000 n -0001092635 00000 n +0001092960 00000 n 0000668957 00000 n 0000648896 00000 n 0000646594 00000 n @@ -10585,7 +10587,7 @@ xref 0000708608 00000 n 0000706713 00000 n 0000727581 00000 n -0001092753 00000 n +0001093078 00000 n 0000752272 00000 n 0000729888 00000 n 0000727907 00000 n @@ -10620,9 +10622,9 @@ xref 0000788369 00000 n 0000819447 00000 n 0000819290 00000 n -0001010617 00000 n -0000993407 00000 n -0001010444 00000 n +0001010939 00000 n +0000993729 00000 n +0001010766 00000 n 0000825125 00000 n 0000823767 00000 n 0000822673 00000 n @@ -10633,7 +10635,7 @@ xref 0000823166 00000 n 0000823327 00000 n 0000823483 00000 n -0001092871 00000 n +0001093196 00000 n 0000847928 00000 n 0000824983 00000 n 0000823878 00000 n @@ -10675,13 +10677,13 @@ xref 0000865765 00000 n 0000865921 00000 n 0000866078 00000 n -0001092989 00000 n +0001093314 00000 n 0000865414 00000 n 0000865545 00000 n 0000865592 00000 n 0000865664 00000 n 0000865744 00000 n -0000991099 00000 n +0000991421 00000 n 0000868524 00000 n 0000870962 00000 n 0000868382 00000 n @@ -10724,8 +10726,8 @@ xref 0000882753 00000 n 0000882800 00000 n 0000882872 00000 n -0000990650 00000 n -0000991291 00000 n +0000990972 00000 n +0000991613 00000 n 0000891109 00000 n 0000888467 00000 n 0000886027 00000 n @@ -10733,7 +10735,7 @@ xref 0000888341 00000 n 0000888028 00000 n 0000888184 00000 n -0001093107 00000 n +0001093432 00000 n 0000887676 00000 n 0000887807 00000 n 0000887854 00000 n @@ -10776,230 +10778,232 @@ xref 0000925715 00000 n 0000923041 00000 n 0000925837 00000 n -0001093225 00000 n -0000928354 00000 n -0000928106 00000 n +0001093550 00000 n +0000928355 00000 n +0000928107 00000 n 0000925998 00000 n -0000928228 00000 n -0000928291 00000 n -0000930790 00000 n -0000930428 00000 n -0000928478 00000 n -0000930727 00000 n -0000930570 00000 n -0000932686 00000 n -0000932501 00000 n -0000930901 00000 n -0000932623 00000 n -0000934702 00000 n -0000934517 00000 n -0000932784 00000 n -0000934639 00000 n -0000937150 00000 n -0000936588 00000 n -0000934813 00000 n -0000936710 00000 n -0000936773 00000 n -0000936835 00000 n -0000936898 00000 n -0000936961 00000 n -0000937024 00000 n -0000937087 00000 n -0000944272 00000 n -0000941751 00000 n -0000940207 00000 n -0000937274 00000 n -0000941499 00000 n -0000941562 00000 n -0000941625 00000 n -0000940397 00000 n -0000940553 00000 n -0000940710 00000 n -0000940867 00000 n -0000941024 00000 n -0000941182 00000 n -0000941342 00000 n -0001093343 00000 n -0000991035 00000 n -0000990906 00000 n -0000990586 00000 n -0000946397 00000 n -0000944122 00000 n -0000941862 00000 n -0000946208 00000 n -0000945893 00000 n -0000946050 00000 n -0000946334 00000 n -0000945622 00000 n -0000945753 00000 n -0000945800 00000 n +0000928229 00000 n +0000928292 00000 n +0000930791 00000 n +0000930429 00000 n +0000928479 00000 n +0000930728 00000 n +0000930571 00000 n +0000932687 00000 n +0000932502 00000 n +0000930902 00000 n +0000932624 00000 n +0000934703 00000 n +0000934518 00000 n +0000932785 00000 n +0000934640 00000 n +0000937151 00000 n +0000936589 00000 n +0000934814 00000 n +0000936711 00000 n +0000936774 00000 n +0000936836 00000 n +0000936899 00000 n +0000936962 00000 n +0000937025 00000 n +0000937088 00000 n +0000944094 00000 n +0000941752 00000 n +0000940209 00000 n +0000937275 00000 n +0000941500 00000 n +0000941563 00000 n +0000941626 00000 n +0000940399 00000 n +0000940555 00000 n +0000940711 00000 n +0000940868 00000 n +0000941025 00000 n +0000941183 00000 n +0000941343 00000 n +0001093668 00000 n +0000991357 00000 n +0000991228 00000 n +0000990908 00000 n +0000946218 00000 n +0000943944 00000 n +0000941863 00000 n +0000946029 00000 n +0000945715 00000 n 0000945872 00000 n -0000950240 00000 n -0000949438 00000 n -0000946537 00000 n -0000949737 00000 n -0000949800 00000 n -0000949863 00000 n -0000949925 00000 n -0000949988 00000 n -0000950051 00000 n -0000950114 00000 n -0000950177 00000 n -0000949580 00000 n -0000955135 00000 n -0000953472 00000 n -0000953046 00000 n -0000950403 00000 n -0000953346 00000 n -0000953188 00000 n -0000957196 00000 n -0000955013 00000 n -0000953583 00000 n -0000957006 00000 n -0000957133 00000 n -0000956654 00000 n -0000956785 00000 n -0000956832 00000 n -0000956904 00000 n -0000956984 00000 n -0000960017 00000 n -0000962268 00000 n -0000959859 00000 n -0000957349 00000 n -0000962078 00000 n -0000961606 00000 n -0000961763 00000 n -0000961920 00000 n -0000961335 00000 n -0000961466 00000 n -0000961513 00000 n -0000961585 00000 n -0000964967 00000 n -0000967347 00000 n -0000966654 00000 n -0000964817 00000 n -0000962408 00000 n -0000966465 00000 n -0000966147 00000 n -0000966302 00000 n -0001093461 00000 n -0000965876 00000 n -0000966007 00000 n -0000966054 00000 n -0000966126 00000 n -0000990714 00000 n +0000946155 00000 n +0000945444 00000 n +0000945575 00000 n +0000945622 00000 n +0000945694 00000 n +0000950225 00000 n +0000949423 00000 n +0000946358 00000 n +0000949722 00000 n +0000949785 00000 n +0000949848 00000 n +0000949910 00000 n +0000949973 00000 n +0000950036 00000 n +0000950099 00000 n +0000950162 00000 n +0000949565 00000 n +0000955117 00000 n +0000953454 00000 n +0000953028 00000 n +0000950388 00000 n +0000953328 00000 n +0000953170 00000 n +0000957178 00000 n +0000954995 00000 n +0000953565 00000 n +0000956988 00000 n +0000957115 00000 n +0000956636 00000 n +0000956767 00000 n +0000956814 00000 n +0000956886 00000 n +0000956966 00000 n +0000960014 00000 n +0000962265 00000 n +0000959856 00000 n +0000957331 00000 n +0000962075 00000 n +0000961603 00000 n +0000961760 00000 n +0000961917 00000 n +0000961332 00000 n +0000961463 00000 n +0000961510 00000 n +0000961582 00000 n +0000964959 00000 n +0000967339 00000 n +0000966646 00000 n +0000964809 00000 n +0000962405 00000 n +0000966457 00000 n +0000966139 00000 n +0000966294 00000 n +0001093786 00000 n +0000965868 00000 n +0000965999 00000 n +0000966046 00000 n +0000966118 00000 n +0000991036 00000 n +0000991100 00000 n +0000969235 00000 n +0000967217 00000 n +0000966786 00000 n +0000969108 00000 n +0000968836 00000 n +0000968967 00000 n +0000969014 00000 n +0000969086 00000 n +0000971916 00000 n +0000971731 00000 n +0000969349 00000 n +0000971853 00000 n +0000976332 00000 n +0000974767 00000 n +0000972014 00000 n +0000976142 00000 n +0000974962 00000 n +0000975120 00000 n +0000975281 00000 n +0000976268 00000 n +0000975442 00000 n +0000975618 00000 n +0000975794 00000 n +0000975968 00000 n +0000991292 00000 n +0000990843 00000 n 0000990778 00000 n -0000969243 00000 n -0000967225 00000 n -0000966794 00000 n -0000969116 00000 n -0000968844 00000 n -0000968975 00000 n -0000969022 00000 n -0000969094 00000 n -0000971920 00000 n -0000971735 00000 n -0000969357 00000 n -0000971857 00000 n -0000976430 00000 n -0000974839 00000 n -0000972018 00000 n -0000976240 00000 n -0000975034 00000 n -0000975193 00000 n -0000976366 00000 n -0000975354 00000 n -0000975529 00000 n -0000975706 00000 n -0000975881 00000 n -0000976055 00000 n -0000990970 00000 n -0000990521 00000 n -0000980849 00000 n -0000977991 00000 n -0000976554 00000 n -0000980784 00000 n -0000978254 00000 n -0000978424 00000 n -0000978603 00000 n +0000981034 00000 n +0000977983 00000 n +0000976456 00000 n +0000980969 00000 n +0000978255 00000 n +0000978440 00000 n +0000978609 00000 n 0000978787 00000 n -0000978962 00000 n -0000979140 00000 n -0000979339 00000 n -0000979511 00000 n -0000979683 00000 n -0000979885 00000 n -0000980062 00000 n -0000980241 00000 n -0000980421 00000 n -0000980600 00000 n -0000983232 00000 n -0000982978 00000 n -0000980961 00000 n -0000983103 00000 n -0000985725 00000 n -0000985357 00000 n -0000983318 00000 n -0000985660 00000 n -0000985504 00000 n -0001093581 00000 n -0000991163 00000 n -0000988269 00000 n -0000987040 00000 n -0000985824 00000 n -0000987166 00000 n -0000987295 00000 n -0000987360 00000 n -0000987425 00000 n -0000987490 00000 n -0000987555 00000 n -0000987620 00000 n -0000987685 00000 n -0000987750 00000 n -0000987815 00000 n -0000987880 00000 n -0000987945 00000 n -0000988010 00000 n -0000988075 00000 n -0000988140 00000 n -0000988205 00000 n -0000991419 00000 n -0000990266 00000 n -0000988355 00000 n -0000990392 00000 n -0000991518 00000 n -0001011110 00000 n -0001014061 00000 n -0001014036 00000 n -0001023404 00000 n -0001026102 00000 n -0001026063 00000 n -0001034280 00000 n -0001036921 00000 n -0001036848 00000 n -0001046538 00000 n -0001059520 00000 n -0001062396 00000 n -0001062266 00000 n -0001077014 00000 n -0001091146 00000 n -0001093679 00000 n -0001093799 00000 n -0001093919 00000 n -0001094024 00000 n -0001094106 00000 n -0001097707 00000 n -0001103366 00000 n -0001103407 00000 n -0001103447 00000 n -0001103603 00000 n +0000978972 00000 n +0000979147 00000 n +0000979325 00000 n +0000979524 00000 n +0000979696 00000 n +0000979868 00000 n +0000980070 00000 n +0000980245 00000 n +0000980425 00000 n +0000980606 00000 n +0000980785 00000 n +0000983417 00000 n +0000983163 00000 n +0000981146 00000 n +0000983288 00000 n +0000985910 00000 n +0000985542 00000 n +0000983503 00000 n +0000985845 00000 n +0000985689 00000 n +0001093906 00000 n +0000991485 00000 n +0000988454 00000 n +0000987225 00000 n +0000986009 00000 n +0000987351 00000 n +0000987480 00000 n +0000987545 00000 n +0000987610 00000 n +0000987675 00000 n +0000987740 00000 n +0000987805 00000 n +0000987870 00000 n +0000987935 00000 n +0000988000 00000 n +0000988065 00000 n +0000988130 00000 n +0000988195 00000 n +0000988260 00000 n +0000988325 00000 n +0000988390 00000 n +0000991741 00000 n +0000990523 00000 n +0000988540 00000 n +0000990649 00000 n +0000991840 00000 n +0001011432 00000 n +0001014384 00000 n +0001014359 00000 n +0001023727 00000 n +0001026425 00000 n +0001026386 00000 n +0001034603 00000 n +0001037246 00000 n +0001037173 00000 n +0001046863 00000 n +0001059845 00000 n +0001062721 00000 n +0001062591 00000 n +0001077339 00000 n +0001091471 00000 n +0001094004 00000 n +0001094124 00000 n +0001094244 00000 n +0001094349 00000 n +0001094431 00000 n +0001098032 00000 n +0001103716 00000 n +0001103757 00000 n +0001103797 00000 n +0001103953 00000 n trailer << -/Size 1086 -/Root 1084 0 R -/Info 1085 0 R -/ID [<9922D36B8BEFD2AE1B4C89CE6B32AA37> <9922D36B8BEFD2AE1B4C89CE6B32AA37>] +/Size 1088 +/Root 1086 0 R +/Info 1087 0 R +/ID [<612C11F0B6190741F1D16010A1B44EB9> <612C11F0B6190741F1D16010A1B44EB9>] >> startxref -1103871 +1104221 %%EOF -- cgit v1.2.3