diff options
| author | Paul Buetow <paul@buetow.org> | 2008-07-23 22:09:43 +0000 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2008-07-23 22:09:43 +0000 |
| commit | 413d812ebde77dd2a7c0ecc6fbd5a69b8822f356 (patch) | |
| tree | 4400ee3eb2eccdca2d6211fe9df51e29f09629f2 | |
| parent | 808f3ae2ecc8f95ceba5eb4f92edee6bc02c1211 (diff) | |
new stuff
| -rw-r--r-- | LaTeX/chapters/introduction.tex | 2 | ||||
| -rw-r--r-- | LaTeX/chapters/simulator.tex | 36 | ||||
| -rw-r--r-- | LaTeX/diplomarbeit.pdf | 1226 |
3 files changed, 664 insertions, 600 deletions
diff --git a/LaTeX/chapters/introduction.tex b/LaTeX/chapters/introduction.tex index ab223b6..ac9f434 100644 --- a/LaTeX/chapters/introduction.tex +++ b/LaTeX/chapters/introduction.tex @@ -61,7 +61,7 @@ Konkrete Beispiele zu den Lamport- und Vektorzeiten werden sp\"{a}ter anhand ein \subsubsection{Ereignisse} -Eine Simulation besteht aus der Hintereinanderausf\"{u}hrung von endlich vielen Ereignissen. Beispielsweise kann es ein Ereignis geben, welches einen Prozess eine Nachricht verschicken- oder den Prozess selbst abst\"{u}rzen l\"{a}t. Jedes Ereignis tritt zu einem bestimmten Zeitpunkt ein. Wenn es zeitgleiche Ereignisse gibt, so werden sie in Wirklichkeit ebenso hintereinander ausgef\"{u}hrt, erscheinen aber in der Simulation als ob sie parallel ausgef\"{u}hrt w\"{u}rden. Dieser Umstand ist auf die Implementierung des Simulators zur\"{u}ckzuf\"{u}hren, worauf sp\"{a}ter noch genauer eingegangen wird. Dem Benutzer des Simulators st\"{o}rt dies jedoch nicht, da Ereignisse aus seiner Sicht parallel ausgef\"{u}hrt werden k\"{o}nnen. +Eine Simulation besteht aus der Hintereinanderausf\"{u}hrung von endlich vielen Ereignissen. Beispielsweise kann es ein Ereignis geben, welches einen Prozess eine Nachricht verschicken- oder den Prozess selbst abst\"{u}rzen l\"{a}t. Jedes Ereignis tritt zu einem bestimmten Zeitpunkt ein. Wenn es zeitgleiche Ereignisse gibt, so werden sie in Wirklichkeit ebenso hintereinander ausgef\"{u}hrt, erscheinen aber in der Simulation als ob sie parallel ausgef\"{u}hrt w\"{u}rden. Dieser Umstand ist auf die Implementierung des Simulators zur\"{u}ckzuf\"{u}hren, worauf sp\"{a}ter noch genauer eingegangen wird. Dem Benutzer des Simulators st\"{o}rt dies jedoch nicht, da Ereignisse aus seiner Sicht parallel ausgef\"{u}hrt werden. \subsubsection{Protokolle} diff --git a/LaTeX/chapters/simulator.tex b/LaTeX/chapters/simulator.tex index 1b4cb44..11791f0 100644 --- a/LaTeX/chapters/simulator.tex +++ b/LaTeX/chapters/simulator.tex @@ -175,31 +175,49 @@ Der erste Unterschied ist in der Sidebar erkennbar (Abbildung \ref{fig:SidebarEx Eine weitere neue Funktionalit\"{a}t ist die M\"{o}glichkeit einem neuzuerstellenen Ereignis direkt die PID zuzuweisen. Im einfachen Modus wurde, wenn man ein neues Ereignis erstellte, standardm\"{a}ig immer die PID des aktuell ausgew\"{a}hlten Prozesses (in der obersten Combo-Box) verwendet. In dieser Combo-Box sollte man gegebenenfalls ``Alle Prozesse'' selektieren, damit im Ereigniseditor stets die Ereignisse aller Prozesse aufgelistet werden.
-Weitere Unterschiede machen sich unterhalb des Loggfensters bemerkbar. Dort gibt es unter Anderem zwei neue Checkboxen ``Lamportzeit'' und ``Vektorzeit''. Aktiviert man eine dieser beiden Checkboxen, dann wird die Lamport- beziehungsweise Vektorzeit in die Visualisierung dargestellt. \"{U}bersichtshalber kann man nur jeweils eine dieser beiden Checkboxen aktivieren. Wenn die Lamportzeit-Checkbox bereits aktiviert ist und der Benutzer versucht die Vektorzeit-Checkbox zus\"{a}tzlich zu aktivieren, so wird die Lamportzeit-Checkbox automatisch deaktiviert und virce versa.
+Weitere Unterschiede machen sich unterhalb des Loggfensters bemerkbar. Dort gibt es unter Anderem zwei neue Checkboxen ``Lamportzeit'' und ``Vektorzeit''. Aktiviert man eine dieser beiden Checkboxen, dann wird die Lamport- beziehungsweise Vektorzeit in die Visualisierung dargestellt. \"{U}bersichtshalber kann der Benutzer nur jeweils eine dieser beiden Checkboxen aktivieren. Wenn die Lamportzeit-Checkbox bereits aktiviert ist und der Benutzer versucht die Vektorzeit-Checkbox zus\"{a}tzlich zu aktivieren, so wird die Lamportzeit-Checkbox automatisch deaktiviert und virce versa.
%TODO: Lamport und Vektorzeit definieren!
Die Anti-Aliasing-Checkbox erm\"{o}glicht dem Benutzer Anti-Aliasing zu aktivieren und deaktivieren. Mit aktiviertem Anti-Aliasing werden alle Grafiken der Visualisierung gerundet dargestellt. Aus Performancegr\"{u}nden ist Anti-Aliasing standardm\"{a}ig deaktiviert.
-Je komplexer eine Simulation wird, desto un\"{u}bersichtlicher werden die Eintr\"{a}ge im Loggfenster. Hier f\"{a}llt es zunehmend schwerer die \"{U}bersicht aller Ereignisse zu behalten. Um dem entgegenzuwirken gibt es im Expertenmodus einen Loggfilter, welcher es erm\"{o}glicht nur die wesentlichen Daten aus den Loggs zu filtern. Der Loggfilter wird anhand der dazugeh\"{o}rigen Checkbox ``Filter'' aktiviert beziehungsweise deaktiviert. In der dahinterliegenden Eingabezeile kann ein regul\"{a}rer Ausdruck in Java-Syntax angegeben werden. Beispielsweise werden mit ``\texttt{PID: (1|2)}'' nur Loggzeilen angezeigt, die entweder ``\texttt{PID: 1}'' oder ``\texttt{PID: 2}'' beinhalten. Alle anderen Zeilen, beispielsweise mit ``\texttt{PID: 3}'', werden nicht angezeigt. Mit aktiviertem Loggfilter werden nur die Loggzeilen angezeigt, auf die der regul\"{a}re Ausdruck passt. Der Loggfilter kann auch nachtr\"{a}glich aktiviert werden. Bereits protokollierte Ereignisse werden jedes Mal erneuert gefiltert. Der Loggfilter kann auch w\"{a}hrend einer laufenden Simulation verwendet werden. Wenn der Loggfilter deaktiviert wird, dann werden wieder alle Nachrichten (auch nachtr\"{a}glich) im Loggfenster angezeigt.
+Je komplexer eine Simulation wird, desto un\"{u}bersichtlicher werden die Eintr\"{a}ge im Loggfenster. Hier f\"{a}llt es zunehmend schwerer die \"{U}bersicht aller Ereignisse zu behalten. Um dem entgegenzuwirken gibt es im Expertenmodus einen Loggfilter, welcher es erm\"{o}glicht nur die wesentlichen Daten aus den Loggs zu filtern. Der Loggfilter wird anhand der dazugeh\"{o}rigen Checkbox ``Filter'' aktiviert beziehungsweise deaktiviert. In der dahinterliegenden Eingabezeile kann ein regul\"{a}rer Ausdruck in Java-Syntax angegeben werden. Beispielsweise werden mit ``\texttt{PID: (1|2)}'' nur Loggzeilen angezeigt, die entweder ``\texttt{PID: 1}'' oder ``\texttt{PID: 2}'' beinhalten. Alle anderen Zeilen, beispielsweise mit ``\texttt{PID: 3}'', werden dabei nicht angezeigt. Mit aktiviertem Loggfilter werden nur die Loggzeilen angezeigt, auf die der regul\"{a}re Ausdruck passt. Der Loggfilter kann auch nachtr\"{a}glich aktiviert werden. Bereits protokollierte Ereignisse werden jedes Mal erneuert gefiltert. Der Loggfilter kann auch w\"{a}hrend einer laufenden Simulation verwendet werden. Wenn der Loggfilter deaktiviert wird, dann werden wieder alle Nachrichten (auch nachtr\"{a}glich) im Loggfenster angezeigt.
\section{Ereignisse}
-Des Weiteren wird hier auf alle Ereignisse eingegangen, die man, wie wir schon gesehen haben, mithilfe des Ereigniseditors programmieren kann.
+Es wird zwischen zwei verschiedenen Haupttypen von Ereignissen unterschieden: Programmierbare Ereignisse und nicht-programmierbare Ereignisse. Programmierbare Ereignisse lassen sich im Ereigniseditor editieren und deren Eintrittszeiten h\"{a}ngen von den lokalen Prozessuhren oder der globalen Uhr ab. Nicht-programmierbare Ereignisse lassen sich hingegen nicht im Ereigniseditor angeben und treten nicht aufgrund einer Uhrzeit auf sondern beispielsweise wenn eine Nachricht eintrifft.
-\subsubsection{Prozessabsturz- und Wiederbelebung}
+\subsubsection{Prozessabsturz- und Wiederbelebung (programmierbar)}
Die beiden grundliegensten Ereignisse sind ``Prozessabsturz'' sowie ``Prozesswiederbelebung''. Wenn ein Prozess abgest\"{u}rzt ist, so wird sein Prozessbalken in rot dargestellt. Ein abgest\"{u}rzter Prozess kann keine weiteren Ereignisse mehr verarbeiten und, wenn er eine Nachricht empfangen sollte, geht diese verloren. Die einzige Ausnahme bildet ein Wiederbelebungsereignis. Ein abgest\"{u}rzter Prozess kann nichts, ausser wiederbelebt werden. W\"{a}hrend eines Prozessabsturzes l\"{a}uft die lokale Prozessuhr, abgesehen der Lamport- und Vektor-Uhren, wie gewohnt weiter. D.h. es k\"{o}nnte sein, dass ein Prozess einige seiner lokalen Ereignisse gar nicht ausf\"{u}hrt, da er zu den Ereigniseintrittszeiten abgest\"{u}rzt ist. Selbiges trifft nat\"{u}rlich auch auf globale Ereignisse zu. Wenn im echten Leben ein Computer abst\"{u}rzt oder abgeschaltet wird, dann l\"{a}uft dort die Hardwareuhr, unabh\"{a}ngig vom Betriebssystem, auch weiter.
-\subsubsection{Aktivierung und Deaktivierung von Protokollen}
+\subsubsection{Aktivierung und Deaktivierung von Protokollen (programmierbar)}
-Wir wissen bereits, dass ein Prozess mehrere Protokolle, sowohl Client- als auch Serverseitig, unterst\"{u}tzen kann. Welches Protokoll von einem Prozess unterst\"{u}tzt wird, kann man anhand von Protokollaktivierungs- und Protokolldeaktivierungsereignissen konfigurieren. Somit besteht die M\"{o}glichkeit, dass ein gegebener Prozess ein bestimmtes Protokoll erst zu einem bestimmten Zeitpunkt unterst\"{u}tzt und ggf. ein anderes Protokoll abl\"{o}st. Jedes Protokoll kann entwender Server- oder Clientseitig aktiviert beziehungsweise deaktiviert werden. Welche Protokolle es gibt wird sp\"{a}ter genauer behandelt.
+Wir wissen bereits, dass ein Prozess mehrere Protokolle Client- und auch Serverseitig unterst\"{u}tzen kann. Welches Protokoll von einem Prozess unterst\"{u}tzt wird, kann der Benutzer anhand von Protokollaktivierungs- und Protokolldeaktivierungsereignissen konfigurieren. Somit besteht die M\"{o}glichkeit, dass ein gegebener Prozess ein bestimmtes Protokoll erst zu einem bestimmten Zeitpunkt unterst\"{u}tzt und gegebenenfalls ein anderes Protokoll abl\"{o}st. Jedes Protokoll kann entwender Server- oder Clientseitig aktiviert beziehungsweise deaktiviert werden. Welche Protokolle es gibt wird sp\"{a}ter behandelt.
-\subsubsection{Weitere Protokollereignisse}
+\subsubsection{Weitere Protokollereignisse (programmierbar)}
-\subsubsection{Nachrichtenempfang}
+Der Benutzer hat die Auswahl zwischen f\"{u}nf weiteren Protokollereignissen:
-\subsubsection{Call-Back Ereignis}
+\begin{itemize}
+ \item Aktivierung des Clients des gegebenen Protokolls
+ \item Aktivierung des Servers des gegebenen Protokolls
+ \item Deaktivierung des Clients des gegebenen Protokolls
+ \item Deaktivierung des Servers des gegebenen Protokolls
+ \item Starten einer Client/Server-Anfrage des gegebenen Protokolls
+\end{itemize}
+
+Ob sich das Ereignis f\"{u}r das Starten einer Anfrage auf den Client oder Server bezieht, h\"{a}ngt vom verwendeten Protokoll ab. Man unterscheidet von Protokollen die Clientseitig- oder Serverseitig eine initiale Anfrage starten. Beispielsweise startet bei dem ``Ping-Pong Protokoll'' der Client- und bei dem ``Commit-Protokollen'' der Server immer die erste Anfrage. Es gibt kein Protokoll, wo Client und Server jeweils eine initiale Anfragen starten k\"{o}nnen.
+
+Bei allen dieser f\"{u}nf Ereignissen kann der betroffene Prozess noch beliebig andere Dinge, abh\"{a}ngig vom Protokoll, tun. Beispielsweise kann er den Inhalt der Nachricht generieren oder lokale Variablen initialisieren oder eine der lokalen Uhzeiten \"{a}ndern oder Wecker f\"{u}r ``Callback Ereignisse'' setzen (mehr dazu sp\"{a}ter).
+
+\subsubsection{Nachrichtenempfang sowie Antwortnachrichten (nicht-programmierbar)}
+
+Nachdem ein Prozess eine Anfragenachricht versendet hat, und ein weiterer Prozess diese Nachricht erh\"{a}lt, so \"{u}berpr\"{u}ft der Empf\"{a}ngerprozess zun\"{a}chst ob er das dazugeh\"{o}rige Protokoll versteht. Wenn es sich um eine Clientnachricht handelt, so mu der Empf\"{a}nger ein Server sein und virce versa. Passt alles, so f\"{u}hrt der Empf\"{a}ngerprozess die vom Protokoll definierten Aktionen aus. In der Regel berechnet der Prozess einen Wert und schickt eine Antwortnachricht zur\"{u}ck. Es k\"{o}nnen aber auch beliebig andere Aktionen ausgef\"{u}hrt werden.
+
+\subsubsection{Callback-Ereignisse (nicht-programmierbar)}
+
+Ein Callback-Ereignis kann von einem Protokoll ausgel\"{o}st werden. Das Protokoll setzt einen Wecker zur welcher lokalen Uhrzeit eine weitere Aktion ausgef\"{u}hrt werden soll. Zum Beispiel lassen sich hiermit Timeouts realisieren, wenn ein Protokoll eine Antwort erwartet, diese aber nicht eintrifft. Nach dem Timeout kann dann eine Anfrage erneuert verschickt werden! Es k\"{o}nnen beliebig viele Callback-Ereignisse definiert werden. Wenn sie noch nicht ausgef\"{u}hrt wurden und aufgrund eines anderen Ereignisses nicht mehr ben\"{o}tigt werden, k\"{o}nnen sie vom Protokoll auch wieder entfernt werden. Wenn ein Callback-Ereignis ausgef\"{u}hrt wird, kann es sich selbst wieder f\"{u}r eine weitere Ausf\"{u}hrung erneuert planen. So lassen sich periodisch wiedereintreffende Ereignisse realisieren. Beispielsweise verwendet das ``Reliable Multicast Protokoll'' Callback-Ereignisse, indem solange Anfragen verschickt werden, bis alle ben\"{o}tigten Antworten vorliegen.
\section{Protokolle}
lsdkfjds lfjds flsjfsljsd flsdjf sldkfjsdlfkj
diff --git a/LaTeX/diplomarbeit.pdf b/LaTeX/diplomarbeit.pdf index 32163e4..e7a9c68 100644 --- a/LaTeX/diplomarbeit.pdf +++ b/LaTeX/diplomarbeit.pdf @@ -225,13 +225,12 @@ endobj << /S /GoTo /D [154 0 R /Fit ] >> endobj 157 0 obj << -/Length 795 +/Length 796 /Filter /FlateDecode >> stream -xڍUR0+Lfj;h
S -t҅I%v{eNE8#"?Xk|3 hg}PXHas4y*%FcaNu$=(#ƻ|2P4.t<^,(s#}ހgDbBA"+%w?
NΙBaC-
f鷳t65l>
Q et/%B6{l*wEj(?my#<*]^:,/Oޅ>2,uq =ZT{rwڮ&/c*W|UA7xnE53@\.=2ʵ2H" aHFݧNDZXX,|$,+Y=϶)O5܋Gc4;|-ϳ85*7ϊ1ض",rāh߹nZX -MrSn`u9oюdZ*$9כ(ѓP +xڍUKs0+tZ[RHJi^nNlL}Wl a2H}|5E~iie1֠f@ +]hBa!ˑXYQb46Qex7љOvnw+r%bnHL0(Qa$g9S1l@%b`#Als8|:v6FfmЧa>*L@R(ц]?vMYhrW endobj 154 0 obj << /Type /Page @@ -439,13 +438,21 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 176 0 obj << -/Length 2178 +/Length 2179 /Filter /FlateDecode >> stream -xˎ8y --9Zv:5AtI/Uj0XrCI(S:LST:<?>^E?I$Ufreg4g/^#&Ri|>@aVi=6YTNݳsb>F,wի~oz(or_wzvn3~5煁܂'M cL/su*9(sk&2W9FꦬEٜeiذW\(&Ql,&)G4S9ؠFg #ѣ
=z 2JcS~\s6届5,2s{U3(M̀%E"G,@,TfT1%I,
?N*:8ytRju] =gaNJaVM|=FKXb)3lbX%zcTbd{^,7v<9]xU7L+f#E-B٩%ƗF"'J2|(2_jVH*D{Y8?(.u;7%9)}ssy
BqOireFf(ǃ*eCɅͧY
`T|37f, cD0SyYd{w))M9_RBWF1Ι:C(byPa"Wu ěSQ`!Vpa`E?3Za1pysTX{G,uLE6uTʞ7csgY%V,2fJys -'N<qq}|ba%Dkx> +x]o+x)]h:l + +?0HTaƊZ/XR?f>o0U@,QR*z_u9T=F,w/v6
]}]5ۋC8#Ԝ~OƘD}ᇨ+su*9(qΚIWFk}YNLJBE\|j8r.(6ua ߔ#SD)6F90a=c
.S\ zsl\mu|iM^&J3DIѽ' &EKh(褰Y0xLqiPk;298p>A'V~+S:g"T93*bͷS%K<Ia>vK,%\0'{4-2c fwaam_ôEj|9R-Zb|i$2$Ç"QnBZ{uCѫRS@)on^B +;yF&Ad2ǙAiI̠٫r^F6c3?:OuZe>J5L<(&z ta|}7 + +\MvkZZ۫`PΑXeE&an5㱙dri&h뚉а0ɠDimwoxoO(ׂ~4l쫝sLWĆӾ:r^+ǧZ-y^/,>A4|i;lwsAE;iѭpNJF(WzONf={%E>s˙MUoo@ájd.RY!>a5k +{ +a̳\]^rǂ \jJJ +o1a
"UX#*^[m,l LTx 0W{t/Mu;Ͻyط_ܦT ´#CՋ2So)#Qx}2<a1h"t./L1=p>O`jjkԾ"Q\:Q&B8HVOcl.]x]r|aazŕ%\2y5:TxZs$*{p8FT9+ˏ$,xr`baqI S"xt|&ca2X5%*絅bEu1Cʙ3L=hv"(^9rNV'[05"Fk]S*gkCvjaI@Ó
{%hTgLàL +35<Iiq9OxNei2_
iƿ>CYUy!vRq~P<
v6aZxW!7;8ȺԅگUy?kIWnMesюBڢ*-wubl [{&iqg"bkG^u Bun7:(9=fn +|-dʹlxf<"xZ\P,? +@trgm-,wmAvFs`TenO?#endstream endobj 175 0 obj << /Type /Page @@ -542,7 +549,7 @@ endobj 191 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[1 0 0] -/Rect [73.4132 383.6372 176.2309 393.6917] +/Rect [73.4132 383.7362 176.2309 393.6917] /Subtype /Link /A << /S /GoTo /D (subsection.2.4.4) >> >> endobj @@ -653,12 +660,12 @@ endobj >> stream x_o6)h?#y1oOs`;-OHhS"[``I1OG ?N9E<ᜬw7l?GiAo7?9:g
YI+iQ6{<㧹PϜ^?4q˾Zŗu%NYM -t foU )pmH\ iWFScA7]( A~85.iajP6ou*Yv\Y$՚=
u"pr`SNNg~;Uﶦ\d8p2TLkm (pui"rf]UBm-hU)( +t foU )pmH\ iWFScA7]( A~85.iajP6ou*Yn\Y$՚=
u"pr`SNNg~;Uﶦ\d8p2TLkm (pui"rf]UBm-hU)( jJ^ -7>eau~8m59$!q唴*5(9U='970bu,kXleag4sǧݦ{ !ຍ30lt7(x~ps}yJ )7YYf2T4<i<o)<v&hД9Io5^Of,,.eWPcv*\J%C{í[PVUb(I\ m9J}f5lL/fJCӢA32lcj(qϨƈ`g -I;%YBSS-|C7ߘd~ -?vnZAlOEvwU`8˦ Rwq{ &Fj>+p2"'NbGL {ɨ/qh4endstream +7>eau~8m59$!q唴*5(9U='970bu,kXleag4sǧݦ{ !ຍ30lt7(x~ps}yJ )7YYf2T4<i<o)<v&hД9Io5^Of]{F2+oV;CG%ȒSn|v*1R +j$.T>z3>e gk3i sxәyxx^6158gTcVTd3nĤ,ReoL2?;7Oauz 6'U";;w*0eӉU=IQ&a +H-$ȞCr2.+֪h7endstream endobj 206 0 obj << /Type /Page @@ -1225,20 +1232,14 @@ endobj /ProcSet [ /PDF /Text ] >> endobj 309 0 obj << -/Length 1539 +/Length 1537 /Filter /FlateDecode >> stream -xڍn8ޯQbV$If0(032k64~B)-EiO.HDa/\ y!\vw>ȅEgeTd2o\7GۚjRiH\a<XWv\ -VȒDjn*6"MSE@e?K9\i{Zt}F>Ɩ6aҮj}]JVoX:/UwT!J|ֵĹmLW2]S'F[C`S7u50 z̦G|{Էza/*)^WDiέdh
>j0fÇ2{Zk?LB!cuÛFUϻSU5PlU/9>(jQ7J+:T)j`Pl-?3Vit&zTl:pSHQwY`C6Nc#~ޡay_I"ɤ/;Ϙ;$Rϗ~h;8#w:L(bn4
)U֦i
:EdaJ[ǎuxDX*03Rh.(xl^;H/xS+Q -%'#08oy' -W䃆
#)oun@*:۽;X -3q=L -R,SSVG
SP8afmSWFp-=I>:Q9uGxHhT9vnd舡o~ - -}Elkqʍ!UOb&G4~&MƦK -LSIwx@ --e\3-_ݭ-GQ[eR2yIY'37u˾;"5PLwa
l]u}x<B|yX( -Оs??llL#wUD֔'`Auf#/ysϳYa<4]/xbyJ^0BGu^JI9S:
ijʆٟto7˖v9Jx)H/\\xQr|SY+ɗφo3/8Q4->VdZM!z xC +xڍn8ޯQbV$If0(032k64~B)-EiO.HDa/\ y!\vw>ȅEgeTd2o\7GۚjRiH\a<XWv\ -VȒDjn*6"MSE@e?K9\i{Zt}F>Ɩ6aҮj}]JVoX:/UwT!J|ֵĹmLW2]S'F[C`S7u50 z̦G|{Էza/*)^WDiέdh
>j0fÇ2{Zk?LB!cuÛFUϻSU5PlU/9>(jQ7J+:T)j`Pl-?3Vit&zTl:pSHQwY`C6Nc#-ya$ HN&u}jT\\9'Q$iC{ءSUXOtQREQ Yi6MkЫ(:C
T:P#RQїDsLHGgAzM=[G9@c(L$TfDԗ$ +q<6e7±VR"ݠǘVs[`m?DpymIPdHusDž?/rу_Gw8iQ/)}Y~*7NTY>4M.qTU+3M8$'~ +-e\3-_խ-GQ[eR2yIY'37u˾;"5PLwa
l]u}x<B|yX( +Оs??llL#SD֔'`Auf#/ysϳYa<4/xbyJ^0BWu^JI 'Йn`HHSsW6{^dwT endobj 308 0 obj << /Type /Page @@ -2279,21 +2280,21 @@ endobj /ProcSet [ /PDF /Text /ImageC ] >> endobj 393 0 obj << -/Length 2025 +/Length 2041 /Filter /FlateDecode >> stream -xڍnF=_G -Xrgߜ&m&E
к(G -E")0`-gfg9_y
4\ũU__h7=fLw?F4MJ#7_/٣mMި8qބ15~9]zWooCII9PTXA0u8V$fKs]6{Jg,*^3wk9Z{Wg*sA
ǵH:e^bpML2k߱ܚƐ?vS%mQ6BdY%dOyly1h[sfUElRb䰞6lΥ$= P3IAƺ0
S٢Rԍ۵.+H } upڊbM]64lP7!/d%Mk;yB)1bf3;HAG@6Mba.r$^Q3ZGӁeȵܯ2bVA{,3 -D{s0@0wnj5 -C}ض,䅅jh4n6+Z -[@c}z&=??>otоMeQIX^1-X@̳RwHD ә؋NoC7QS3 Pnj֓WD5T@Qǟd+^ -@<6c2e\1qA*I$ȷdy -DCsytx*pb8SEg=_xYPna1I -\L\<)H®"R,Jtu0rwV^γbkFĐ@wKZXotqN
'!=SEB(H[WL.5 Jw5m2]Z_7 ߂T|H:QG)7LZF])`q5&=+Řꙧ!̋yxin[ɷ?<|(g/N;) -v!ep -ٯp"cP/-tci}?7 -oP~ʏasv/Ԕ6ٶiLlMiH3Qwuϋ:z&N0rCӠk1̭`6-cY` 5L9.|!b#'T,Nz)J/a-Y[|6Nɘ6+aPpr(h/95I\/^GUPAddŷg |endstream +xڍX[o~_Gu$-شh:bd62g(˶
\ș3!UH4UQ%0Mjoo<^QXUeZlE]oDQ"\o( +ީ~Gʡܿsw?-(,\ILQ͜|Ϫ( +EiܚZjqp)M,FEZD['Q)C:B$?ᰎ3b +?%QN ̴C[2&0%8Rj38R\gbyH-r/3/ĔcvXXb<!}Ѫ=b!N4dUz +yX*ρJ",jn݁#&>~saJTZ +'6W!aD^@~`]Ch.m3 +*)S@˔:L:dU*;$UTEYonD99>h&\@5T/Zt椘Uepptm2 PMc_4i@ͷXwCGHo<:=X?ɖhd+tQG}ul?81 +h멳ȩ{ZuZ<rpUG'ǨDSa|ˠ G 7pN@Yfh.m5zMZ|B8+3a_g5{E}1ρE?$qB9|- +LLJ1E0T'Äf!w%6̥$DTw#>M٣}q;er|^:fcwtKqb!.O4- +!sb+5KS]JS +=x]U]j|{E +ٟip~p7@GSYӔ֎Jn`4mSˎrN?~:(21N+5".1Ff8xq0jXJ'[q"SuC{G*4pQraU]/t^ex+Lxd*3̋%]e endobj 392 0 obj << /Type /Page @@ -2306,93 +2307,94 @@ endobj /D [392 0 R /XYZ 74.4095 793.4011 null] >> endobj 30 0 obj << -/D [392 0 R /XYZ 74.4095 337.8532 null] ->> endobj -398 0 obj << -/D [392 0 R /XYZ 74.4095 182.25 null] +/D [392 0 R /XYZ 74.4095 319.374 null] >> endobj 391 0 obj << /Font << /F61 211 0 R /F28 165 0 R /F63 397 0 R /F26 162 0 R >> /ProcSet [ /PDF /Text ] >> endobj -401 0 obj << -/Length 1647 +400 0 obj << +/Length 1868 /Filter /FlateDecode >> stream -xXKo6WQxUHi -TWZbXW$(# y%7Du(ueB*[\fPmZ6VUu.G]s%A&\B*jaZPҦq\8 -BŻ#FlTqmm%&}]%#s"P4`H3~Ɖ^Wn -bSHh -"7'Ba%heHGEJ4 9$aQaēRY+"GZەN|C9jYC(*}M M\qɆ/
`DTv.2[s4ľ\Pvи, vԔOO֎9Ly#a:噽<ruOb;.
j@2Ns`ܧoxHe8*A!d1CX|yYj-r[h;@#slز7/ - -˱w#<<
.zendstream +xڵXo6_GU6݆ +$[-{"Z,K>x,˲\-ȻvW@Uq \w2Xejٍތ=y\ǎ0X=lW<:!-~):Y7,-f7Xw!}_qW7>0(cϾJ!|[x~0}0i$=Kgbc_)_>7kXaeIaCUJc!S$ UF's^般q2"WYWЕB7"V"TVDg3e!3YrC#*Vlt'pGX+d+FD|\Ӑmppv4G<RdUWhɢ"\'l'hhR'㓒ܡR/eMOLȲy@fƑkNmBX%R[T^1@꩑Z$(yC_lpG!#]2bLGY9Hwē-#2
1 ,i6lyN<1D)C'Ci[TӷU5')T; +Jp6&uJ
ک" +uxI9 +&Eg,}|B + ~q9X8*+2bFU4ʤmm,/\l +F$(HS4wTvHI6H*LQw2SM$UY˖'RTUN{##j} LI5NZ9LyRY'fnH7[OSy&/~'qX֛lW(P&rzMa{C(AM^
LU3NQUw$1T࢘Zx}o0v-OLd
neْ +kIzj'!DKS.BE4Lu-Nuh9,v<2ǔQO
R[fre<oE O{(ġIo +#%UQjX} endobj -400 0 obj << +399 0 obj << /Type /Page -/Contents 401 0 R -/Resources 399 0 R +/Contents 400 0 R +/Resources 398 0 R /MediaBox [0 0 595.2757 841.8898] /Parent 377 0 R >> endobj +401 0 obj << +/D [399 0 R /XYZ 74.4095 793.4011 null] +>> endobj 402 0 obj << -/D [400 0 R /XYZ 74.4095 793.4011 null] +/D [399 0 R /XYZ 74.4095 748.4879 null] >> endobj 403 0 obj << -/D [400 0 R /XYZ 74.4095 559.3359 null] +/D [399 0 R /XYZ 74.4095 487.6252 null] >> endobj 404 0 obj << -/D [400 0 R /XYZ 74.4095 370.9707 null] ->> endobj -405 0 obj << -/D [400 0 R /XYZ 74.4095 335.9457 null] +/D [399 0 R /XYZ 74.4095 298.4715 null] >> endobj -406 0 obj << -/D [400 0 R /XYZ 74.4095 300.9206 null] ->> endobj -34 0 obj << -/D [400 0 R /XYZ 74.4095 300.9206 null] ->> endobj -399 0 obj << -/Font << /F61 211 0 R /F28 165 0 R /F26 162 0 R >> +398 0 obj << +/Font << /F61 211 0 R /F26 162 0 R /F28 165 0 R /F33 173 0 R >> /ProcSet [ /PDF /Text ] >> endobj -409 0 obj << -/Length 382 +407 0 obj << +/Length 1988 /Filter /FlateDecode >> stream -x홻n <#pU/R;[!*Qc;NՑ#8|6$< Ʃ8|l|Ƶ-Z\<hIYCʚq9+}^~+10X![/m&.{/Zu)yLi̡qc1}6uS兡Z& -M|b;S5q=Pzt=eG(s%*RlIt'`)XIڱdi8
1ϣ`l܅jhZMzď=_ϢQT=G]ST=Gg8Mu@( -@( -@( -@( -@( -@( -Jo%k?ﺛ̍8 +xڥn6_d V%J>b[]l-Ц٦-62Hr;/Jd(|pfH{"WYQ" 67h?.=r?8 +"ϮvW*Ɂ<9nWsh{S/*.:eĭ=,(8eߴ~zss7\U櫕6)K1U>s]aem
TMжi;+}m_*8ā[kQroQwU7[$ +](x<[S4uMfXYX(Q5`ԅ? 1nkD(6}PQ521zvX4A'ӷ05~(h.O5HF
R ٕ! +"f7 M- dv=T$8DkƑatk@cqJ1l\MDA}Z95TՊ;wcԑh,w;&1J
kӷne(ByFӚcn`qav̚%$d+>@C_%qk1qqGTX#P!ڄGWuBT +Qӳ0ߖG{DCDt(J-aO:I&UkLgנOv"sG}G.[ڴoK(q]ڂ%WpuCĩ⚛\8\, <,G]QU:ɔEm,-"w%[*5]<3`k)-vor-܀|SaSu=oiG$<!zo*"!p6$y6رY[SKrR兕阑6 +q2|bwK^n K + +߫sJ0LUAwOrsC<.",gox\MeGR*28(U1SЮD̒8Q=깉Dkx ejTzđę8$Q?@IbE3.yV`cyj4d;{0ͱx՚afcFƲ ++͓$e/u0z
0H = Kaiz7/Qk Vs=2)z#d=D))C. EzxiB +yHGh
oToBC +B.ooPy.&aiK2#3!?.n1B?v4佽l ?֥caq/5$J7:lmG$"4e/-i22Klhϐ|
<g_uo7%5||"KC$rXGEII}[lqAI#bM endobj -408 0 obj << +406 0 obj << /Type /Page -/Contents 409 0 R -/Resources 407 0 R +/Contents 407 0 R +/Resources 405 0 R /MediaBox [0 0 595.2757 841.8898] /Parent 377 0 R >> endobj +408 0 obj << +/D [406 0 R /XYZ 74.4095 793.4011 null] +>> endobj +409 0 obj << +/D [406 0 R /XYZ 74.4095 542.0503 null] +>> endobj 410 0 obj << -/D [408 0 R /XYZ 74.4095 793.4011 null] +/D [406 0 R /XYZ 74.4095 344.6979 null] >> endobj -407 0 obj << -/Font << /F61 211 0 R /F28 165 0 R >> +405 0 obj << +/Font << /F61 211 0 R /F28 165 0 R /F26 162 0 R >> /ProcSet [ /PDF /Text ] >> endobj 413 0 obj << -/Length 386 +/Length 442 /Filter /FlateDecode >> stream -x=o0 -fbl֪R;P8j_ ؐTY+2.g:Ť(fb)sLA)[Hk÷:4-7bJ<@?7KR0HR-%[.QkObx)lu)yLaa:bU.3+Uݔ -p״+eU|{_V3F(Q8CAw*#r8`m`_>9@ef(̕(<v'`6ŏlǣ٭`t+8K(,=w$ D@$ D@$ D@$ D@$ jn|JnM4pVHYs|f mx'32endstream +x=O0 +c㳳">$X4ܤM4Nfd)f30P}f}_kCqW_;TLIβb]8E߿۹ORHR#%o*Qzۢ)"\2Pd-KA )*a5d}/Lᴃ]/L."7I@vLk1HUui\<@uMIXK_M]5n);obSjY/G(wD셨0o6!k݃\iz@qi>,v Q8O *DAx'Qq0q$ D@$ D@$ D@$ D@$ D@$ M=8'dyKTT<\ endobj 412 0 obj << /Type /Page @@ -2404,23 +2406,20 @@ endobj 414 0 obj << /D [412 0 R /XYZ 74.4095 793.4011 null] >> endobj +34 0 obj << +/D [412 0 R /XYZ 74.4095 771.7323 null] +>> endobj 411 0 obj << -/Font << /F61 211 0 R /F28 165 0 R >> +/Font << /F61 211 0 R /F26 162 0 R /F28 165 0 R >> /ProcSet [ /PDF /Text ] >> endobj 418 0 obj << -/Length 864 +/Length 382 /Filter /FlateDecode >> stream -xڥn:y --x8lzZNjӅ1QI.$=ӟđ]2Ep -NH2N%I -ϗ0v!2U/js(<k6UYi*5CM -`Zϰ`F -YN@2pVE>@1cرZK_抿R=j)bl~.A-6y>F1iIje 6S@1:dIVCy^-wrA\ m%SZa!{MV7f[g5s=FLѠu'DöuR(_l}u_DcOvQ>tBK`BGgFE#aN -ͺ4ɚ)"2 ^Iގz[fQ=m(ӫuVw(7E3
1B18$)Xn@_0(.[v -VI8Ud,q:),Hur3L$ZO?gPԞσDй.9҇rtv0鏕\@O{!NyG#%{7lf6^endstream +x홻n <#pU/R;[!*Qc;*su
ID|$1K.'Ʃ8||Ƶ-ZX<hIYCq9+}^}ok10X.[O/]&>{/EZu)iLi̾qc41}(U]-sC}7M*:fzǍնn7'({F PJT<0;hÏ +RR=8eɄ7pLSc7ϣ`ljhZz_OAT=]sT=g8N5P BP BP BP BP BP gV\ğwZR<scN@Ix_ǧ.Dendstream endobj 417 0 obj << /Type /Page @@ -2432,78 +2431,105 @@ endobj 419 0 obj << /D [417 0 R /XYZ 74.4095 793.4011 null] >> endobj +416 0 obj << +/Font << /F61 211 0 R /F28 165 0 R >> +/ProcSet [ /PDF /Text ] +>> endobj +422 0 obj << +/Length 964 +/Filter /FlateDecode +>> +stream +xڭWrF+pvRT1O|EPi0 6L@pl(~XH[E=oڦqzh}7"FFGU?WW>IAHJJy|rxj[&|X@Q +C[s.-Z*IqSXS}24}w =<<GdٸW+8r5BQB)B~p\ǎa8ՁF8j" F]anr -܅+{*fpߕ x[m&S|)3D?&4#$%P_Y;W<w@<$%Rx`= %Mσy6CS+7gpJ646R[¥=q]LȋV^ZͿ +\^t*wE'( ESadpoMJ̅@ +^@9l +931c>@#Vc\Erp(3Mi/6X\yqϵ讻.m0+?|jbbn5p57#Dtnc#zoy!@ܻK[>!l\_5R G1!!ntʉm)`JǠ3 +)1PccVzfG +yIuEg;n|*y۶ڞ~mKSQ3"aRAxM.Pz HgRMj`ʜzgPSM`|K[gƣRendstream +endobj +421 0 obj << +/Type /Page +/Contents 422 0 R +/Resources 420 0 R +/MediaBox [0 0 595.2757 841.8898] +/Parent 415 0 R +>> endobj +423 0 obj << +/D [421 0 R /XYZ 74.4095 793.4011 null] +>> endobj 38 0 obj << -/D [417 0 R /XYZ 74.4095 771.7323 null] +/D [421 0 R /XYZ 74.4095 720.8398 null] >> endobj 42 0 obj << -/D [417 0 R /XYZ 74.4095 748.4167 null] +/D [421 0 R /XYZ 74.4095 682.3171 null] >> endobj 46 0 obj << -/D [417 0 R /XYZ 74.4095 710.1063 null] +/D [421 0 R /XYZ 74.4095 644.0067 null] >> endobj 50 0 obj << -/D [417 0 R /XYZ 74.4095 674.7721 null] +/D [421 0 R /XYZ 74.4095 608.6724 null] >> endobj 54 0 obj << -/D [417 0 R /XYZ 74.4095 611.8446 null] +/D [421 0 R /XYZ 74.4095 545.745 null] >> endobj 58 0 obj << -/D [417 0 R /XYZ 74.4095 573.5342 null] +/D [421 0 R /XYZ 74.4095 507.4346 null] >> endobj 62 0 obj << -/D [417 0 R /XYZ 74.4095 535.4284 null] +/D [421 0 R /XYZ 74.4095 469.3287 null] >> endobj 66 0 obj << -/D [417 0 R /XYZ 74.4095 500.0941 null] +/D [421 0 R /XYZ 74.4095 433.9945 null] >> endobj 70 0 obj << -/D [417 0 R /XYZ 74.4095 461.9883 null] +/D [421 0 R /XYZ 74.4095 395.8886 null] >> endobj 74 0 obj << -/D [417 0 R /XYZ 74.4095 421.1108 null] +/D [421 0 R /XYZ 74.4095 355.0111 null] >> endobj 78 0 obj << -/D [417 0 R /XYZ 74.4095 383.0049 null] +/D [421 0 R /XYZ 74.4095 316.9052 null] >> endobj 82 0 obj << -/D [417 0 R /XYZ 74.4095 334.7644 null] +/D [421 0 R /XYZ 74.4095 268.6647 null] >> endobj 86 0 obj << -/D [417 0 R /XYZ 74.4095 297.2458 null] +/D [421 0 R /XYZ 74.4095 231.1462 null] >> endobj 90 0 obj << -/D [417 0 R /XYZ 74.4095 259.14 null] +/D [421 0 R /XYZ 74.4095 193.0403 null] >> endobj -416 0 obj << -/Font << /F61 211 0 R /F26 162 0 R /F28 165 0 R >> +420 0 obj << +/Font << /F61 211 0 R /F28 165 0 R /F26 162 0 R >> /ProcSet [ /PDF /Text ] >> endobj -422 0 obj << +426 0 obj << /Length 137 /Filter /FlateDecode >> stream xm -1@~EF4MUP8):УK{14E^3^jg#l"V{YtOvGRiw&Hg"6ua̹*no3endstream +1@~EF4MUP8):УK{14E^3^jg#l"V{YtOvGRiw&Hg"6:0\B73endstream endobj -421 0 obj << +425 0 obj << /Type /Page -/Contents 422 0 R -/Resources 420 0 R +/Contents 426 0 R +/Resources 424 0 R /MediaBox [0 0 595.2757 841.8898] /Parent 415 0 R >> endobj -423 0 obj << -/D [421 0 R /XYZ 74.4095 793.4011 null] +427 0 obj << +/D [425 0 R /XYZ 74.4095 793.4011 null] >> endobj 94 0 obj << -/D [421 0 R /XYZ 74.4095 771.7323 null] +/D [425 0 R /XYZ 74.4095 771.7323 null] >> endobj -420 0 obj << +424 0 obj << /Font << /F28 165 0 R >> /ProcSet [ /PDF /Text ] >> endobj -426 0 obj << +430 0 obj << /Length 673 /Filter /FlateDecode >> @@ -2514,102 +2540,104 @@ fXFV>hz$e,6gMtwpNE[̲#)Yx
/bX.H1=<# 0S5J%q\ѢflrW i% !iڞh⺌8Ʉ?]u~uw#%kPg% Kɠr殣!cdi?LD J5 JBޚ -Ѐ/Li_g۬Jww[:N+'apJuZ\--q̫ۧx+ƙQ6c(Ş>G$I_#AZaXُI_endstream +Ѐ/Li_g۬Jww[:N+'apJuZ\--q̫ۧx+ƙQ6c(Ş>G$I_#AZaXُI_endstream endobj -425 0 obj << +429 0 obj << /Type /Page -/Contents 426 0 R -/Resources 424 0 R +/Contents 430 0 R +/Resources 428 0 R /MediaBox [0 0 595.2757 841.8898] /Parent 415 0 R >> endobj -427 0 obj << -/D [425 0 R /XYZ 74.4095 793.4011 null] +431 0 obj << +/D [429 0 R /XYZ 74.4095 793.4011 null] >> endobj 98 0 obj << -/D [425 0 R /XYZ 74.4095 656.2394 null] +/D [429 0 R /XYZ 74.4095 656.2394 null] >> endobj 102 0 obj << -/D [425 0 R /XYZ 74.4095 610.1361 null] +/D [429 0 R /XYZ 74.4095 610.1361 null] >> endobj 106 0 obj << -/D [425 0 R /XYZ 74.4095 565.8089 null] +/D [429 0 R /XYZ 74.4095 565.8089 null] >> endobj 110 0 obj << -/D [425 0 R /XYZ 74.4095 514.8297 null] +/D [429 0 R /XYZ 74.4095 514.8297 null] >> endobj 114 0 obj << -/D [425 0 R /XYZ 74.4095 477.3112 null] +/D [429 0 R /XYZ 74.4095 477.3112 null] >> endobj 118 0 obj << -/D [425 0 R /XYZ 74.4095 432.3966 null] +/D [429 0 R /XYZ 74.4095 432.3966 null] >> endobj 122 0 obj << -/D [425 0 R /XYZ 74.4095 394.3238 null] +/D [429 0 R /XYZ 74.4095 394.3238 null] >> endobj 126 0 obj << -/D [425 0 R /XYZ 74.4095 343.3116 null] +/D [429 0 R /XYZ 74.4095 343.3116 null] >> endobj 130 0 obj << -/D [425 0 R /XYZ 74.4095 305.9976 null] +/D [429 0 R /XYZ 74.4095 305.9976 null] >> endobj 134 0 obj << -/D [425 0 R /XYZ 74.4095 257.5526 null] +/D [429 0 R /XYZ 74.4095 257.5526 null] >> endobj -424 0 obj << +428 0 obj << /Font << /F61 211 0 R /F26 162 0 R /F28 165 0 R >> /ProcSet [ /PDF /Text ] >> endobj -430 0 obj << -/Length 215 +434 0 obj << +/Length 214 /Filter /FlateDecode >> stream -xu1O1!ى3V5bRPE(GU}~~PF}f_FhYP,g73-e:ʕTD'Wk.%9OG?ǻǏqwHEo4F?u1~}>%xoc|a7yn< -3@Yp#P'l22.OXeendstream +xuAK1+zlIQA&t]eqAfe= +BZ/>ۄŵ~ +gE̴͋Up(72P1]q
`(a</y\tow}, +q㦹vAS~Iu˱dX endobj -429 0 obj << +433 0 obj << /Type /Page -/Contents 430 0 R -/Resources 428 0 R +/Contents 434 0 R +/Resources 432 0 R /MediaBox [0 0 595.2757 841.8898] /Parent 415 0 R >> endobj -431 0 obj << -/D [429 0 R /XYZ 74.4095 793.4011 null] +435 0 obj << +/D [433 0 R /XYZ 74.4095 793.4011 null] >> endobj 138 0 obj << -/D [429 0 R /XYZ 74.4095 771.7323 null] +/D [433 0 R /XYZ 74.4095 771.7323 null] >> endobj -428 0 obj << +432 0 obj << /Font << /F26 162 0 R /F28 165 0 R >> /ProcSet [ /PDF /Text ] >> endobj -434 0 obj << +438 0 obj << /Length 207 /Filter /FlateDecode >> stream -xun0DwG{KҤD)ZmE#m%(]4N8Bw(*URakT3-UP*h6[*DI}/yr2Ro|78|]xKVOifbɌs%^ؙHJvpqk &B*I#'3!/V~endstream +xun0DwG{KҤD)ZmE#m%(]4N8Bw(*URakT3-UP*h6[*DI}/yr2Ro|78|]xKVOifbɌs%^ؙHJvpqk &B*I#'3!/Vendstream endobj -433 0 obj << +437 0 obj << /Type /Page -/Contents 434 0 R -/Resources 432 0 R +/Contents 438 0 R +/Resources 436 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 415 0 R +/Parent 440 0 R >> endobj -435 0 obj << -/D [433 0 R /XYZ 74.4095 793.4011 null] +439 0 obj << +/D [437 0 R /XYZ 74.4095 793.4011 null] >> endobj 142 0 obj << -/D [433 0 R /XYZ 74.4095 771.7323 null] +/D [437 0 R /XYZ 74.4095 771.7323 null] >> endobj -432 0 obj << +436 0 obj << /Font << /F26 162 0 R /F28 165 0 R >> /ProcSet [ /PDF /Text ] >> endobj -438 0 obj << +443 0 obj << /Length 488 /Filter /FlateDecode >> @@ -2617,65 +2645,65 @@ stream xڝOo0)8wolRH/i,J`+w,e-C iʏyo~ $-8O eH]hp]p`Ync0Qw<5KtYn>㐖?OMUNVnL`sZ^>j,پo"47k:"!euN4]~| ^ʱ9wCj[l|T{HfO5D07EK$h(Cߝj"݅1=gQ1 -Btױr6u A+ce*ICLHp1wgL";|G +Btױr6u A+ce*ICLHp1wgL";|GR endobj -437 0 obj << +442 0 obj << /Type /Page -/Contents 438 0 R -/Resources 436 0 R +/Contents 443 0 R +/Resources 441 0 R /MediaBox [0 0 595.2757 841.8898] -/Parent 444 0 R +/Parent 440 0 R >> endobj -439 0 obj << -/D [437 0 R /XYZ 74.4095 793.4011 null] +444 0 obj << +/D [442 0 R /XYZ 74.4095 793.4011 null] >> endobj 146 0 obj << -/D [437 0 R /XYZ 74.4095 771.7323 null] +/D [442 0 R /XYZ 74.4095 771.7323 null] >> endobj -440 0 obj << -/D [437 0 R /XYZ 74.4095 573.2241 null] +445 0 obj << +/D [442 0 R /XYZ 74.4095 573.2241 null] >> endobj -441 0 obj << -/D [437 0 R /XYZ 74.4095 548.0739 null] +446 0 obj << +/D [442 0 R /XYZ 74.4095 548.0739 null] >> endobj -442 0 obj << -/D [437 0 R /XYZ 74.4095 522.9238 null] +447 0 obj << +/D [442 0 R /XYZ 74.4095 522.9238 null] >> endobj -443 0 obj << -/D [437 0 R /XYZ 74.4095 497.7737 null] +448 0 obj << +/D [442 0 R /XYZ 74.4095 497.7737 null] >> endobj -436 0 obj << +441 0 obj << |
