From 8bf0a343fab705a6e04d4da21565daf1aac8caba Mon Sep 17 00:00:00 2001 From: amaury Date: Fri, 12 May 2023 14:56:24 +0200 Subject: [PATCH] spell check + des ajouts en vrac --- docs/.gitignore | 2 +- .../définition/adt.tex | 33 ++ .../définition/exemple.tex | 0 .../définition/index.tex | 7 + .../définition/intro.tex | 50 +++ .../définition/modele.tex | 291 ++++++++++++++++++ .../images/carte_criteres.png | Bin 0 -> 162861 bytes docs/présentation_consistence_faible/main.tex | 12 +- .../présentation_consistence_faible/script.md | 24 +- .../wconsistence_properties/index.tex | 106 ++++--- .../wconsistence_properties/validite_hc.tex | 23 +- recherches/perrin.md | 98 +++--- 12 files changed, 529 insertions(+), 117 deletions(-) create mode 100644 docs/présentation_consistence_faible/définition/adt.tex create mode 100644 docs/présentation_consistence_faible/définition/exemple.tex create mode 100644 docs/présentation_consistence_faible/définition/index.tex create mode 100644 docs/présentation_consistence_faible/définition/intro.tex create mode 100644 docs/présentation_consistence_faible/définition/modele.tex create mode 100644 docs/présentation_consistence_faible/images/carte_criteres.png diff --git a/docs/.gitignore b/docs/.gitignore index 52f0bb7..a3f2a8e 100644 --- a/docs/.gitignore +++ b/docs/.gitignore @@ -19,7 +19,7 @@ # these rules might exclude image files for figures etc. # *.ps # *.eps -# *.pdf +*.pdf ## Generated if empty string is given at "Please type another file name for output:" .pdf diff --git a/docs/présentation_consistence_faible/définition/adt.tex b/docs/présentation_consistence_faible/définition/adt.tex new file mode 100644 index 0000000..7b4894e --- /dev/null +++ b/docs/présentation_consistence_faible/définition/adt.tex @@ -0,0 +1,33 @@ +\begin{frame} + \frametitle{Les Types de données abstraits} + + Pour communiquer entre eux, les processus doivent utiliser des objets partagés. \\ + + Pour spécifier la notion d'objets partagés nous allons d'abord cerner la notion de type de donnée abstrait : + \begin{block}{Définition} + Un type de donnée abstrait peut être défini par un automate tel que : $T = (A, B, Z, \zeta_0, \tau, \delta)$ \\ + Tel que : + \begin{itemize} + \item A est un ensemble dénombrable (alphabet d'entrée) + \item B est un ensemble dénombrable (alphabet de sortie) + \item Z est un ensemble dénombrable d'états abstraits + \item $\zeta_0 \in Z$ est l'état initial + \item $\tau$ est la fonction de transition ($Z \times A \rightarrow Z$) + \item $\delta$ est la fonction de sortie ($Z \times A \rightarrow B$) + \end{itemize} + \end{block} +\end{frame} + +\begin{frame} + \frametitle{Les flux fenêtrés (Work in Progress)} + + + +\end{frame} + +\begin{frame} + \frametitle{Les ensembles (Work in Progress)} + + + +\end{frame} \ No newline at end of file diff --git a/docs/présentation_consistence_faible/définition/exemple.tex b/docs/présentation_consistence_faible/définition/exemple.tex new file mode 100644 index 0000000..e69de29 diff --git a/docs/présentation_consistence_faible/définition/index.tex b/docs/présentation_consistence_faible/définition/index.tex new file mode 100644 index 0000000..9fede3c --- /dev/null +++ b/docs/présentation_consistence_faible/définition/index.tex @@ -0,0 +1,7 @@ +\input{définition/intro.tex} + +\subsection{Objets partagés} +\include{définition/adt} + +\subsection{Définition du modèle} +% \include{définition/modele} diff --git a/docs/présentation_consistence_faible/définition/intro.tex b/docs/présentation_consistence_faible/définition/intro.tex new file mode 100644 index 0000000..6152ceb --- /dev/null +++ b/docs/présentation_consistence_faible/définition/intro.tex @@ -0,0 +1,50 @@ +\begin{frame} + \frametitle{Problématique (Work in Progress)} + + \begin{block}{Système distribué} + Ce dit d'un système informatique dont les nœuds sont indépendant et reliés par un réseau informatique. Travaillant sur une tâche commune. + \end{block} + + \begin{columns} + \column{0.4\textwidth} + \begin{block}{Avantages} + \begin{itemize} + \item une répartition de la charge de travail entre plusieurs acteurs + \item une meilleure tolérance aux pannes + \end{itemize} + \end{block} + + \column{0.4\textwidth} + + \begin{block}{Inconvénients} + \begin{itemize} + \item Introduit une notion de concurrence dans les tâches. + \item Il faut définir ce qu'on considère acceptable. + \end{itemize} + \end{block} + \end{columns} +\end{frame} + +\begin{frame} + \frametitle{Problématique (Work in Progress)} + + \begin{columns} + \column{0.6\textwidth} + \resizebox{\columnwidth}{!}{ + \includegraphics{images/carte_criteres.png} + } + + \column{0.4\textwidth} + \begin{block}{Les classes de cohérences} + \begin{itemize} + \item Introduites par PERRIN + \item Objectifs : + \begin{itemize} + \item Classer les histoires créées par un algorithme. + \item Créer une relation de dépendance entre les classes. + \end{itemize} + \end{itemize} + \end{block} + + \end{columns} +\end{frame} \ No newline at end of file diff --git a/docs/présentation_consistence_faible/définition/modele.tex b/docs/présentation_consistence_faible/définition/modele.tex new file mode 100644 index 0000000..6cb647b --- /dev/null +++ b/docs/présentation_consistence_faible/définition/modele.tex @@ -0,0 +1,291 @@ +\begin{frame} + \frametitle{Modèle} + + \begin{columns} + \column{0.4\textwidth} + + \resizebox{\columnwidth}{!}{ + + \begin{tikzpicture}[ + roundnode/.style={circle, draw=black, fill=black, very thick, minimum size=1pt,}, + arrow/.style={|->, thick,}, + ] + + \node[roundnode] (p0) {}; + \node[left] at (p0.west) {$p_0$}; + + \node[roundnode] (p1) [below=of p0] {}; + \node[left] at (p1.west) {$p_1$}; + + \node[roundnode] (p2) [right=of p1] {}; + \node[right] at (p2.east) {$p_2$}; + + \node[roundnode] (p3) [right=of p0] {}; + \node[right] at (p3.east) {$p_3$}; + + \draw (p0) -- (p1); + \draw (p0) -- (p2); + \draw (p0) -- (p3); + \draw (p1) -- (p2); + \draw (p1) -- (p3); + \draw (p2) -- (p3); + \end{tikzpicture} + } + + \column{0.6\textwidth} + + \begin{block}{Prérequis} + \begin{itemize} + \item Tous les nœuds du système sont fortement connectés + \item Le système n'est pas partitionnable + \item Les nœuds sont asynchrones + \item Les nœuds ne peuvent pas être défaillants + \item Les nœuds ne peuvent pas être malicieux + \end{itemize} + \end{block} + \end{columns} +\end{frame} + +\begin{frame} + \frametitle{Modèle} + + \begin{columns} + + \column{0.4\textwidth} + + \centering + \resizebox{0.75\columnwidth}{!}{ + \begin{tikzpicture}[ + roundnode/.style={circle, draw=black, fill=black, very thick, minimum size=1pt,}, + ] + + \node[roundnode] (p0) {}; + \node[left] at (p0.west) {$p_0$}; + \onslide<3> { + \node[above] at (p0.north) {$\textcolor{red}{w(1)}$}; + } + \onslide<7> { + \node[above] at (p0.north) {$\textcolor{red}{r/(1,2)^w}$}; + } + + \node[roundnode] (p1) [below=of p0] {}; + \node[left] at (p1.west) {$p_1$}; + \onslide<2> { + \node[below] at (p1.south) {$\textcolor{red}{r/(0,0)}$}; + } + \onslide<5> { + \node[below] at (p1.south) {$\textcolor{red}{w(2)}$}; + } + \onslide<6> { + \node[below] at (p1.south) {$\textcolor{red}{r/(1,2)}$}; + } + \onslide<7> { + \node[below] at (p1.south) {$\textcolor{red}{r/(1,2)^w}$}; + } + + \node[roundnode] (p2) [right=of p1] {}; + \node[right] at (p2.east) {$p_2$}; + \onslide<4> { + \node[below] at (p2.south) {$\textcolor{red}{r/(0,1)}$}; + } + \onslide<6> { + \node[below] at (p2.south) {$\textcolor{red}{r/(1,2)}$}; + } + \onslide<7> { + \node[below] at (p2.south) {$\textcolor{red}{r/(1,2)^w}$}; + } + + \node[roundnode] (p3) [right=of p0] {}; + \node[right] at (p3.east) {$p_3$}; + \onslide<4> { + \node[above] at (p3.north) {$\textcolor{red}{r/(0,1)}$}; + } + \onslide<5> { + \node[above] at (p3.north) {$\textcolor{red}{w(1)}$}; + } + \onslide<6> { + \node[above] at (p3.north) {$\textcolor{red}{r/(1,1)}$}; + } + \onslide<7> { + \node[above] at (p3.north) {$\textcolor{red}{r/(1,2)^w}$}; + } + + \draw (p0) -- (p1); + \draw (p0) -- (p2); + \draw (p0) -- (p3); + \draw (p1) -- (p2); + \draw (p1) -- (p3); + \draw (p2) -- (p3); + \end{tikzpicture} + } + + \column{\textheight} + + \begin{tabular}{l} + $p_0 = \onslide<3->{w(1)} \onslide<7->{\bullet r/(1,2)^w}$ \\ + $p_1 = \onslide<2->{r/(0,0)} \onslide<5->{\bullet w(2)} \onslide<6->{\bullet r/(1,2)} \onslide<7->{\bullet r/(1,2)^w}$ \\ + $p_2 = \onslide<4->{r/(0,1)} \onslide<6->{\bullet r/(1,2)} \onslide<7->{\bullet r/(1,2)^w}$ \\ + $p_3 = \onslide<4->{r/(0,1)} \onslide<5->{\bullet w(1)} \onslide<6->{\bullet r/(1,1)} \onslide<7->{\bullet r/(1,2)^w}$ \\ + \end{tabular} + + \end{columns} + + \centering + \resizebox{!}{\height}{ + + \begin{tikzpicture}[ + roundnode/.style={circle, draw=black, fill=black, very thick, minimum size=1pt,}, + ignorednode/.style={circle, draw=black!20, fill=black!20, very thick, minimum size=1pt,}, + invisiblenode/.style={circle, draw=white, fill=white, very thick, minimum size=1pt,}, + arrow/.style={|->, thick,}, + message/.style={->, blue!50, dashed, -{Circle[length=4pt,]}}, + ] + + \node[roundnode] (p00) {}; + \node[left] at (p00.west) {$p_0$}; + \node[above] at (p00.north) {$\{0\}$}; + + \node[roundnode] (p10) [below=20pt of p00] {}; + \node[left] at (p10.west) {$p_1$}; + \node[above] at (p10.north) {$\{0\}$}; + + \node[roundnode] (p20) [below=20pt of p10] {}; + \node[left] at (p20.west) {$p_2$}; + \node[above] at (p20.north) {$\{0\}$}; + + \node[roundnode] (p30) [below=20pt of p20] {}; + \node[left] at (p30.west) {$p_3$}; + \node[above] at (p30.north) {$\{0\}$}; + + \pause + + \node[roundnode] (p01) [right=of p00] {}; + \node[above] at (p01.north) {$\{1\}$}; + + \draw[arrow] (p00) -- node[above] {tata} (p01); + + + + % \onslide<3->{ + % \node[roundnode] (11) {}; + % \node[left] at (11.west) {$p_0$}; + % \node[above] at (11.north) {$w(1)$}; + % } + % \onslide<7-> { + % \node[roundnode] (12) [right=of 11] {}; + % \node[above] at (12.north) {$r/(1,2)^w$}; + + % \draw[arrow] (11) -- (12); + % } + + % \onslide<2-> { + % \node[roundnode] (21) [below=20pt of 11] {}; + % \node[left] at (21.west) {$p_1$}; + % \node[above] at (21.north) {$r/(0,0)$}; + % } + % \onslide<5-> { + % \node[roundnode] (22) [right=of 21] {}; + % \node[above] at (22.north) {$w(2)$}; + + % \draw[arrow] (21) -- (22); + % } + % \onslide<6-> { + % \node[roundnode] (23) [right=of 22] {}; + % \node[above] at (23.north) {$r/(1,2)$}; + + % \draw[arrow] (21) -- (23); + % } + % \onslide<7-> { + % \node[roundnode] (24) [right=of 23] {}; + % \node[above] at (24.north) {$r/(1,2)^w$}; + + % \draw[arrow] (21) -- (24); + % } + + % \onslide<4-> { + % \node[roundnode] (31) [below=20pt of 21] {}; + % \node[left] at (31.west) {$p_2$}; + % \node[above] at (31.north) {$r/(0,1)$}; + % } + % \onslide<6-> { + % \node[roundnode] (32) [right=of 31] {}; + % \node[above] at (32.north) {$r/(1,2)$}; + + % \draw[arrow] (31) -- (32); + % } + % \onslide<7-> { + % \node[roundnode] (33) [right=of 32] {}; + % \node[above] at (33.north) {$r/(1,2)^w$}; + + % \draw[arrow] (31) -- (33); + % } + + % \onslide<4-> { + % \node[roundnode] (41) [below=20pt of 31] {}; + % \node[left] at (41.west) {$p_3$}; + % \node[above] at (41.north) {$r/(0,1)$}; + % } + % \onslide<5-> { + % \node[roundnode] (42) [right=of 41] {}; + % \node[above] at (42.north) {$w(1)$}; + + % \draw[arrow] (41) -- (42); + % } + % \onslide<6-> { + % \node[roundnode] (43) [right=of 42] {}; + % \node[above] at (43.north) {$r/(1,1)$}; + + % \draw[arrow] (41) -- (43); + % } + % \onslide<7-> { + % \node[roundnode] (44) [right=of 43] {}; + % \node[above] at (44.north) {$r/(1,2)^w$}; + + % \draw[arrow] (41) -- (44); + % } + + \end{tikzpicture} + } +\end{frame} + +\begin{frame} + \frametitle{Modèle} + + \resizebox{\columnwidth}{!}{ + \begin{tikzpicture}[ + roundnode/.style={circle, draw=black, fill=black, very thick, minimum size=1pt,}, + ignorednode/.style={circle, draw=black!20, fill=black!20, very thick, minimum size=1pt,}, + arrow/.style={|->, thick,}, + message/.style={->, blue!50, dashed, -{Circle[length=4pt,]}}, + ] + + \node[roundnode] (11) {}; + \node[left] at (11.west) {$p_0$}; + \node[above] at (11.north) {$w(1)$}; + \node[roundnode] (12) [right=of 11] {}; + \node[above] at (12.north) {$I(a)$}; + \node[roundnode] (13) [right=of 12] {}; + \node[above] at (13.north) {$r/(0,1)$}; + \node[roundnode] (14) [right=of 13] {}; + \node[above] at (14.north) {$r/(1,2)^w$}; + + \draw[arrow] (11) -- (12); + \draw[arrow] (12) -- (13); + \draw[arrow] (13) -- (14); + + \node[roundnode] (21) [below=of 11] {}; + \node[left] at (21.west) {$p_1$}; + \node[below] at (21.south) {$w(2)$}; + \node[roundnode] (22) [right=of 21] {}; + \node[below] at (22.south) {$R/\emptyset$}; + \node[roundnode] (23) [right=of 22] {}; + \node[below] at (23.south) {$r/(0,2)$}; + \node[roundnode] (24) [right=of 23] {}; + \node[below] at (24.south) {$r/(1,2)^w$}; + + \draw[arrow] (21) -- (22); + \draw[arrow] (22) -- (23); + \draw[arrow] (23) -- (24); + \end{tikzpicture} + } +\end{frame} \ No newline at end of file diff --git a/docs/présentation_consistence_faible/images/carte_criteres.png b/docs/présentation_consistence_faible/images/carte_criteres.png new file mode 100644 index 0000000000000000000000000000000000000000..cd71ddc88a22310aca2c4ce1557e5b6debbdc910 GIT binary patch literal 162861 zcmeFYWl&vR&^35*cXtgC++BhvxI^#&0RjYf4|;J3A-D$(?(PIg2ofN;yF+mQHqSTj zOik6ypZPshQAJU3?m2zBSFc{Zc7&RWJO(N$Dg*+-c=K9D0|J2?1>g3_h~PI&zeJ!A z2sPx5jHH%l#=)YMC;sL#!b+{!P~lb9E96`}@5Cj^mw#l`wW_FtkfD(?Fx^XP3Czrq zua7Bqv3L1iy=Fq${aDLpu=No5FIj-%^YGEuf=L_q-SF`2>(39rC+LHyk*R6_`^v+8 z(~tQ|=D#nCeLYb;od3R(KK1kb@1N93{{LTsNc?{b$c7mbh_kar^DYS|Y0RMFXyCYM zAis&r6`!9Z3~I~|pE)!g7T%j1*^2d}-M1SlKW9l)*x5Zg-Ov7oNRLWZbnx%DWd%7)XVibSwF${dG4~6G)_kPaXmy;V=Yg}R5mTso ztnvB?OawAFEp6GX%rJEfS;QN3DgEH)ZV<8J=!i+lcG)dlKP8Q zFPA4Zl6*Q{xe6H;b(le~OlRje1HL|66)aPoeop*QZet2f@{lQvX~JtrGk%a3>Y#+NwZH2HldAwNc>0GPt;0R za$SQO6L}0bP^ z>cqwUQ)42U#U?SLvi2{FdfHz((uI=YyhbqG7{b7@SUKsp7fhFUsL%6b>kRR3dK}?kjBkjO3fNMk4!)+n7@4Gn@$u(G8AgV`Fv%1 z)L@+`#enRtq}pxAyC2GWuHH<;go4tMj=CNptzNXlQxqD6g9Nn5u<%_p9S($&ufmL@ zzTF$r+wu+a5%tg~OF3$E{~AC_;Bp(Uk=JeVb|eAT**J3lIQPe99I>GyCh6~Jt@*Pv? ziH3;H-$~WExU3gC*n0M-2t*igaD<2l4A{Rwp)%%N=}wm`?+k@}FjHT?#6~^GMwh!T z&cHrgjmi2{pUY~Q&LCgN#w%scyRuTxqUWj85ilv)~$piA05VM!(qs~ zsLuX9HJBV;$X&h4gI8`*!ql`CH;wj7JFB1gKRsR56yQHblE}vocKA1iMRJHgw{w*ZN3++o82CBKHXR1QP2xL zKi~$3t%ugh^iMSIe8Go**dkXSMd#{XY+?A6_PH+~El2E<>6n?WZ(ZA8TQ`+tMAlX7 zl@qs}uq^!i-Q8b@pW*GtV0I73viUHB2EuD8Ns0TfCZUWaPz4rwgjq&rS~7|~6GvS_ z?f?pMlkxgG2@3uBf`bl^@rt5r%4IuuXb>JCpDQ0F=W~UD%7C;AwWtLl4I-o zpfQiotW;C{TtN7(ejG7%|wabX;tkGo+PeWctlcLDlrPIPzi+ zJk5olrw^&&r>)TG(){>^)GKASKFzGz0q_{&JKvZv1q^iapMS0VFHksGj@G;5=brkmYYIXJAGC0~%s zDI(n4eViV7ad2QvpFjMm$@iXq?ea)^E`}_A2OX-_nqQwxMQfAfFwV^UHjM!*c|wyW zSz(;LMkV#om6kSBYG& z^hygM0|9zLd&W*;`U#=ACD$afo}=|Jshd^ z-FBnH4(FgLpP|rFv?wduJW|@zo)-tpH3YlU4qg4$a?!0sh}ZC4bj-yEiMyW`C~Az9 zj*s^y0;J2^8gq>AuV-iv{bNO-*XLT-EiJ1_Bkjzt0rh`M}YHRLW&oU{4*=2 z*A9MO%+zjJ5feCvOh(EKe2Sx{7glJC2XOQL8UKZtl-)5gKQ2XHYg$pi9HX6l6Qk1c z2|0R$^I)%`GvsDONSJNwa5*%FqfLK{PkgzS0K!@9@nkCA1f>u^xEMp^CG<- z#JAqV3yhUiH$*Xz*-i5`RA|M3T<`C_$Y@H1PwWqxyf-Wp@xaA}T)+h>w*Ls7#5Wvz z4F^HDTWBk#oAA3m=5(kv?GNpnzrLt%jOV~vS=$fhUu?~Lo2)`xL{FP{*AJS`VC?4m z_wTNss-)2`ujB1SWt_Yn%E?%UrXb-aBTF zsikFn?Vfu)b@Nc6e9(v42w^7?h z=h|_4!Lngn!{16s5ME^TPf`ru@8h*L4G9!nQ6glBWO|s9o4$UDC8%tVaaE)d4Tc@J z?cQi&wILc%iG-Nil;46?@9vphiZ|E7#9?wzqV1X8d6~ogbdS$PJyhLB z!y0t(#_|&)(S!zdqQZEG&iF&7L705rQGiZ2Av}!vSB{>qL`70J*_f93v*-}yi}TX4 z2Z{N1gilA5o_X)@?tI|1*kFwexvKtVhBFD*q69e1##HLwqeRV-lnZ;v-N8IiZ^B{I z(vDYqGSJrG5Z031O@Hhgf$`y&X%=-s>Kkh3BnZM2E7@1+b~dpaagk&&4SehxkKJPp?F=0dw(mR_#9iaLu>Hho^&-yL9kW=Usi(o)$TKQPJ1CrC(3t(Ye*-E1NwCB?n0w%+m8+ zYIPXsp>M0!Hk!YubUOUZlxk77b)^!A=N6Lq32KPw@y83=QcLi-t&fJm6X9`Pi`H@? zPuS<>i%>Lwp_~U45AQ6Ish6#uk7rusWkG>IBy(kr$tJ%EEzQ>;7HQgdF(bbhH+=JR zq_3taSnq1#+Z~z;zdUwNB7Q4V zT`BK*w{}7KaQgVS{`z#xxNRoaHe&kcUqaK#8mcPOjoK3?%VNP&O90(lMDU4I zk?Y|qrb}NBtC~v2Kc2keJsMMaZl0JCAmHi*EzW!B?v?t%LGvGqw~s={CF^rhw{)cW zx_@dqVZ+131W75fnmKH5uciBmoIX4nIchL*(l@-1m`-0P$Kp2?$id|Pabh*9*H^LIwgGZGyWXF_Lp4xOnkCMEuDd7dIb1Tbx3a0nJMSfC+u zb1TjMuq>S@6-6TCO~H-E>k+4X_?L+4l1gLmLYWY4>tF$@>i+S^3Ip3%vx-=VxA(e~ z4L9Zs61t70UcnXu&M}Awip{a<3}UeP`=%>1MXP(OH14dlw5|WWC0xB> z%Y%Er7bBEHs93duS-JH%J8R7Dtj=mLy@Uk)c~FWzJG{b%pF~5J+ZN_Rb~JaAkzHgR z9C(~08~ma-UT0)*?&}NR*g;F%g2kE@0j2D^>6NdxT0~5#bsqa6fLz`2$*?XQYWGg6{TNsXp)Pv-II~G@ zQgoN}jB8oyRs#6)Nn@eC6M2DTX)uusP6Oimu z>qvdUpk!lp?&nNTL_$Z)4D;MKHHhoz>s( zQ9lr#v#SuFoF_tU7G58`mXXOb2mf=9l{gN?hzgMEDd8zz--u+Vsb68W;^4uVGW3#z zb6;u+v-pnkTiE^8)j*h2fjw<$HE6NwG0B-}VM)us!&lu&g^|MYvyv-k5{koq@$5Lg z5F@xj6!V?3FJ32t5EW<~=xGJNMSx-CwqMuNVfLl#J>B`m;k;~3Tk7=RmE2aX$@w{+ zC`N?o5M_RJjn2v*yw>VHY<9-UK3WR$)8**4t6vg3DpSkzc=+L2JJ4&5i_2gpMN2LF zy}KbDWvqCE_}@J-<}O1X=`(aq3Hs=k_XGZe!>pa7>dC9co%(!dJZZmEn)a+%Mck_< z-9brD_=pAVicziluh9!<&W0EXRIaAIiEC*0$vIp3^k2|4K$aBCfl0DA`)rF& z7BM%~fjSDS21Q4*%Up5$U2n4{1R^0J;d;D8;kN%b^!s;~fB*hD9xVtREVYx7#vnpC zt6eyTDL4&>XJkCy!owgrEO(W(DNWkUrF?hAOXz)Os+epdd>EahcQ8`=47VY&P7ane zLM8{Zk-KD1@Q^y&Y0P}Nn4q?l&^=dSimlP?IK^ak7|5gN)_c)EObzP;jadno6y3QrczLMW1Uf4QhODWnY4ga3$zq(0%*@>B{pw>I(I~5$50nZ7 zVe))UwM{c|zpCVzWGZob$G@5TROf>}Lo8v0n_x8G;ftVhxETI5%imKxPdvQpvr%(q zG8zOK8JX!yNTUSb-`~HHCu*r|g^6`|h1%ncL`EVCW5d$q&0{J#rabQ$W$mo6`<>FzYRQ4+`^}wJh84I%V zBZh2Ke87~GT1@OA>n!3RMvGQ*U(Bt0rKXVJrj}ih7Uuk*PaK0Oi$wB$$9B{AE_HfXzr2=hkEPWSXPd=Vud?A zwnUyT=N-m&T??|36B0gw)Pg{~`*`~{&$WE(%<2AN+%k_UX(fS=F)3e$z45_(H-fhA zWQ`YPOnDZfI~!!tTmF(}12m=hB{yEzcB4A1!uLeyg;Ks_$LhSO znEmmx%K+#@!ot>WwzE0hVX8wy;92#mAVNYyjyg=$$4R>>jR8boDHpL+t%#I%Ch^uq zE&{_7Ymtwmi=6=y-Dy;;M>CMM%f-I3n^t+Q_2)8d*xXq1o4MO2<#l%Mm6lv3PgBOE z(XH$q{ug`^;bRHE_MfWIb>0lB^_Xg#})xG;yruRzy(L>IL`^OE)Fi0){ zvu7=$=zjjJX8Qa@BDgqHrqAiXU?}8zITf)hk8)|*FdKCXl*V_+@w@YW&6$&q;J zScI6Z*OuVJ+5U1k=ljFs!HHy1SCN@sG&FhfsEYB6s5W<|Q&jPp7R*!xQu6d$%Epg$ z;bw$oGhSz;xMiWl{ErAB1Cs>LpZ5xU-fOLCjvwZm9%ncfNoxuEZn<-mTnohy46~t3NbULW0R4p*~c zJkagU>8n7FEboup8H?9lU<9QE)mf?&iU{}B?;pZ&qrLg-a&Je?Qt(9QUG|%n>l2Fx zRp&eY@IZ;^Igg`G)ENyU9B^QGH`Y^W%1K~$vy(i=Q}`}{A54pR5*di8T9L`Z?gM=) zVyl~Z6<>X2v|obJuzs3@j+243*CZ2C5}lt6E#3n(AcAuu_xAcLa z4Ay~;J%7hSD@GLNaqzgA-12SAsZJ$~_2a0N>C_8xF@m`JYoR~?&Z-?ZYKi}rxh3$2 z<5rsfy~LRDyMZ;-W{$Rhz%Fz<#tIO)viYr`MZmso`ELG@zV2WO&L~`r*`1u$S?#%F z{iK+!!3ZdS8(!g`YrUrFibhH6!{@oGJLA4fj>u~hw%blAnYdD=(CTjEPs#p`Az#+B z-1(zKQbuwxjD$Z7&{lT7cqkfv^Z{CprM*F%AId55a~@ETNgD2Sa$hr7%_#!QrPvQFz#2JjpottYIXqF7*>06u_9$B;hZW zA6K}32iH1YDXGbH;7VW;H5K`Gewt3Vl10}?qMl_=PVU{(qmi|sk8q*GJst@{8nen9 zEjOu2`;?ig7a1c){bkz&>px3){`)Wd0@=)2xaJoF9%G86UFqfi} zzMA8A)%slY4FpREH=KJ&@VY*+cd2KF8ST0pxldTxxss;HeGZ ziOW3Q&ebWc+TWZW=cT{zaKWC1&F_z{k2oD`YBe1;aBvI&1P&Wa%dRG6IxPNAYh>R{ z+M*NGF;;S&aYb;|3kIk5Pi}7sJnI#y04K*~8~9|KeERTd(X;Z{ROU`>hWTQDB&%zp zlQpn2U4&osiFxl9>FeD>{u`9*-5D5Pp7SA_`PQ`J()XmUGmbnk9T?`E2b)gM`6kl+ z9NmMJFdz=t!%^MvEWZvzC4Hhh05EANIXB+B=l`WVo2)3?goPJQyw>_EJ|Z7$$i*N5nVq^4xY77Av=y(o9f~I!mw*w{k7N4#+6`m`$ zVh{VUWr9xlBd9Na)E$PrT)d?n%arAvEz&ZA(V;h%sXa0p-#^89jsjU9h=PLKP2Zcc zdw-ag8^rw7Y|k@^2+9zkPM@+Quf`<~P{VNMc^R}VXel>+3DZj8IvTG2zdL26f;~nUU{oEumdi+;BEAEJZRRsp2 zAtYq(Uo0}7xVZJU`XOptce65Q*ETvlKbIPd_VsDCRbQ<1`72bVP`xBi6cwCY&wm#$ zkJ<5z@1DD^WMAhQO5B`hjym>BrUNh z8U#9A9(F}9!BJiNSU4w0gfTP2_gXjY&-!Ash`_t+HHTalR^J@k zq;tPV_a_zl?M>0K`iN2kKMoTmn=#y?0F#*GWp5&ee04A?(bL}D(o4!{TOOD4U7uc% z5R>Ski8X!ZpG`$8dFi>AOf~*5(SytDxAO+cxtV+oOJd9UkKsq@s?9Z$^T$U#iw|hb z7q`iO?9Jy|2&@I~l$G=!SU?NX-Mfe={cOnGKQ?zUJ}^s`9h(j{pZAEQh=9uUyqlNd zGqm?cB>bHbOq_};*3)#%GMgOr;pMgKG+~*b7e1I`dd&>he;Z@v$5uXYz&G4qzl(m` zf$YQB7QsJN$9Q%h?86D}Y4QTA?{?c*Hbr;yaNS>=k0kqeDRNnr{F5Pb@7Rov=l3hf zs+b16+@Hf`&< z%K}ZAs2e(6T7CDqaUAu}X_JH3?uVh6MyuOXuZfk8 z{vthpI00i^p5LK0;i!c!Sgm-6%hG^O%E724S40y$))8P*ZH}YP_imI&9pg*-*Vz8r z?Yxpd1QbC%{jt)n%YclG5o174E(t^w3h?r`Z%lM~CQ93`9v2P`iub9I3!+C)hr}P| z(fo`UR&K7Ws)*8x5y5n<)mvs#MI0d?w;r)0=cvsDE~do}5=CuPqFC;CzeJ`l9E)oI zYUrgAi`#WwISVIgLcx^a1{{vF(uWq<`z%i!EDX{>%(!y^{5aY)07m#^jO7^o?@bBy zTRn4?UqL}i{@m<5vq+Ak4F4394q{h2W7XQY@=$I|Ve=>~Bo3l`VF~*=30L%LX>v$>-krZ# ztAIUX@4a>LHvRZ}$Y8o!f`$@LuF?*ku{_`^o6ZNfe6BZJbWHEL zMJEdB3SIYq<;^0B-kkZ~dog3;319Rr!1R9iMScLAqT$(UoPeyzU_)l<`{-t5*X^Y< zi#wpw)xS9%ywX~4_ON=zu-)cQD-U3MP%;x}ZTwH?XmWq;1F4C00n{X=QzKtnTv>{a z*N6cI0088PsV;@mRWkuR}0GoETcDlFsH;`xkezR(6xF>)6Hb_r@|wFS#U; z_BC<2Tzdp%`0VKc2P%aJ9Ed!6%BKHMs!OiIXwQoN1$DV38f(HsH7e{=%p8s+_Q{X1 zr0d(t!yQs1DwZq~ECHOx=Jigh8n;j#w8u7goSG`rX#X=laBJgmpCc&(q0Fj1yR|82 z_nvh`Ux+nY#U->p{}%SSBh1pfge!C~eCdv#?k0SLXlbV(nl3bJCf}?`n_vo{)w6Mw znp~kR=&UhO_V?M$A1_a{S*)gvEM^y zM8&)RL#M2qKt_F;9hLA=80cHI4dnws=3OaMTia9-JCW>^?~i?-*tf9VELve@71@&c zW!9!YiskFt6`ni<@?4chBP*rdxp1^st139x8>43l4r9wMqI?oW zL>ii7w5+(4BkWggIs?;GCKx2znOq5!Ie$Uh~XK76G{26I@o?a=chEeNEvl5ftIYS^~UYdT#rul-Z&vI2Yz1 zg=98CdmL1Gc9;M z*!;B&`=#y8^*f6w_c79#>-7z;VTmRrq6z!_H?N7?j0|Oe%fUlzLUGFI2~qrx z3VXAG8Uqg39euOh-BOKrGH3i#8O3Xp3Ivay?xN2q6SJ*Kr)WU!P7itYt&yXHOq_Ik z`5t+laxYAITZKlq2v3A?+=x2@UfOm#d^yI|_x>L}vD|+v$5xPqF#GdQFH$AsCm%tT{3vOJ?GIq?OrFAq>UY)mK|k^#ZjG)&tjAa z#yXE`b8G?@qso4cX?D}TzEh~poF2H)ITk2Xew%)x<*u%&x*@p(RjB;>3a95|=R;V@ zzjE;h0RThN3G4CBE?|4+8l|#}vamri zf9h?Bu!}X;4CFA$468a9tteE^n@`4$GhX%!dj58}I>Z-Ii8*Kfau$D`ceoL}A<5af|s_TZJKMO~IR4g>kvb z=U_8dY^+144qCz-PK}&W{ej?q(jM9I3R^^_T0cy_$E<#BG|}mLb;X`sr6uwfMiTko z3BCyFlv@2l`wAQh;r%6xSz3S3RPY1_wC|Zm@tggsF>zWS7M5GT@<^?Y~nTg3U%*?ioHL@?E3p1}z5 z{`S=BPMFwMFNc(dv;y)OAMA?fU6c zPe*(+Q9nSY_=a=)Sa!}HiahOxM62`FP)Om!AQ1hqDO{m9n`q8geGN{Ubf;bUcd%HAmfjpXc@S(6-jVu=j$hcjY*Jaiot>2!Z%o)y=@K%mS=M@SFWaN^zjVEk;;hK zKpyV5t?kuN0>!F>A)=M;CslqH<-~AR4~PD|-T+Al=Dxb4hg1K~Zt$0+8;z4Pl2-Fh718oKxZQIUl0H6Qe;g#l#{Y- zkuIw-!u$5&-^oqZN6&BStdyljx*&kTJLQCJ0f)RwxYXR-xRvdfX)_5>aza2bZQ_9{ z+qmpcmX(z?X3OizE=cN@vDg<2cKR;7a&QclZ)36UFeGzgju4bBY%#YA%{7lczQ#w@ zE7uuL<3nR-H#|=$uBl#+DvmU2aYdOZQVq|}rh>0UaLZiO6Vyxs8_M*N>>s^n65&6r zK_-s-38j4rBw&oq+ZUi(wXsZ_ablJ=(?NXhKjC|(u*Tm4V$nBVkx9w4`v=(qB@_A{g{Qr zx(kcUh$bIe7Qp3tH^m|7wlC~!w0L5ZyyV&8r`uH86e%*>xGs>$X}zjDMnnh%M5i6? z%7mE&%Gba(VDeZ`afWpy_h}pogxS->sv@=d0o4QRjaOTYCUTLJs6@KDpq{^c!9U-f zK#CK;EuI;NlEVT%$eaq^zdV&+2#?js0$YYM1KzM4owp}aL`E!mjDCTXvpxUP9v@_T zIU@$Rb*dcQu>pw5-f@WcHP1Kp#nMIs!Fq=8(e1j}$Z2Knef7F1r-`n>@PP#Usl)Gn zgLXt}aj~TD#hL|VdsHx)I%rY-un{sr@$uLPGu3d*{&(g7=Z&aKO2SwUr@$0wpw#R8 zT{SU?kUfY6kBtP2p=;gz=QBy2;VS;j_J7m*zRWnuB$l%UCP$ItiY%bD@ZL8Ul>W22 zb<5!Tkn8Tz>BGv%h;(#xStiDpqxfB$Ay&#Wout9J-< zRgQ&s-`IG~Mn+;%YAyxZTD>s-q2Kx#ZzDN6TYzE@XUX`KC(+n==EC)H5miaQog5AG zICRJi=OxK(>tjbQ(S%p}l38vQUeEGiqzGN@B<7PtYnB$u=}V-U_pQuHkt$^yzZ{ab(zJ;O4!-hQRxH zu1)UqtQG?G%l)|=EWg*kR;NJ@+UZZEM#gruQm4!-#ojoIcw^+9JCs2(Mo4=4v(yA< zZ8fxz<{k7O#w!YtwLW)U^RgHYM7qHL=VmrY7%^2g5>7r#w#4NCAbMwz!HoUS8f>>@MR8}Nv;by z(7fP4ve|svqTePtXBs_7b+6wuU7UG?`Btz}#0PfyU>+<5DJz%>Sao1H#3u>j8m+^D z6U+B(+TB;=pu}gSIUzArOqc!ZzR#5jP1e#5$wZamM=a3NRR=IvtTkZ4{~e8tII1(9 zN`+VaxAk!R_t)(n*8@2lgYs=I`MK%Zgy!k&5!0Sj4`qpG5p_%I@m9b40y~5tN<_;>PsAy=pT93z8G6fpl z%ga>99e3=7%IRUn#c3ihLU#N?d-8^m3E1}m9LFIg)&FLtgbh#3i$IJ^N~a-Q^8)n1 zO1IEp_hG9aJ85qp&kZ(|l zDv-ZipLNfS%=rHQ<_?vJ3Zj1Hz$_zWDGW@Q_y}@zEt4g>mZ!czby?TB57}rVZ~N2C zC{D=<3q~i%5k8|s#S@$^&z}>!c@^S@>u0Sl;6;E{F{=SbM)#-_QbK%cthPBr*ID+H zL@agJZwe>PrCy$2L}r^q<^>IW2IaE;*~2?xRm|%NnemF>hBzPQNt**O_TH!Yv z#^&Tu4`+#ynGeLuwz?n6C@EN&G?@~Q`{}oNa;>ecDUe@&V`F-iq8+v^mG@nUWR@A& z(->Tqq%_W4uDa^~duj+TPqVFh-@{2s>X0_bK~f#RNqz zuN?xpk@FS^VW7h!G5lsaHU5w$+Bf1y7RUcF!t1G$=&rM4u@i4XpscU!$M4g{lkxt` zbAvJ+bmMCR`^~KtGksK*c5yte$0UjS>Mm;;IZ5##QPEX;U9H=T!$mBlE7PB8n_xNJ zbGyw*GdW>!@H*)y;DMmoo`T)iPd}CUL8gP$6H9_ZS|8w4wltAIs+}WIQIQQuMhOa> zoYXqspT>eiM8~F~NqAW0Rm!_NxtKOt-xx}KK{x`4T^KAI;&rID3wOt2b5DtAV74*c9Xz#BuaaH zgT1Vl3{1F(xKt zg9f{9V08a3K%S5ZwwPKlgi#2fIS*XyPp|Ip8<>dzYj>gj60(}`(!G{9r)vFCV3qTE zyzak9VX@H77*UmV}LND};>A3%j65yhe7hCzt| zZ(&jKvCE-aFK1$JY`Jk`iMuqFRfk0<`;jb^(52)MIKg|uG3VCN7v5Tc2`X+T{zPN` zZ5gca)XQc;<%x||XK&^WjhAz>e_x(;G<$!n78?c3W34$lA=K2^$T29FEiG;X=XoEHBkB=lSgzknQIt>A9`}8trd(+ z$ET->rYlVb06R2^8G;^Q0g~m+NsOK%?8f{}bbi9AkNzMO31jv9++Q+OcoG z2lVrFvWFNlgf~XD%n^ie(5Qi_}?k-OSYx3O`H2fO>pm_LZKHHH5GA7E3Tfsaf zR{7$+)moI8!Lg8KwLZ=!ncBuolf>5^yLvO{=?-K^mZzWBI^Fseln$ldv2~_;P8l1h zWxkfa5t{HlqU{OB@o|!99X-iDjoL24HE#8pi`b>EpNw^H&61v(pfzubxSufVf>lPb z9-v)6;}a8ub&b6cDk>@*-P!$Al>rwBHjZ0b>Yn-%doVQPo_Tr^uinJz$G>za(loe_ z0ULZez_XtFS>#dY|Bg|R$!Yhx9-Okm#|FQYX zUIJ{x$<9IrL<9h$Zu2r6q&P`Mn}0cV=jlwR)$I3-Ze-@(34jS`HWv}qxetCEp96~& zcm(hUOqs^MHn(S|r;`m^@;oDdPfw4Hg1m(UXoN|$FJ2%_6engffP3uOyQq27zQRjQns}6;ek(PW~F-g+y5s5MMxuQpm{cHKQON(tlkGCg1j}Sc zo=#?@^jLHRFr<|z9IqGu%@q4YlCGoe$>C_A^J@UBQ}hPb;?I+xuPq))C?yvL;0ryr zi+40*?K?XtlGx;XcdrPD_P)tACAJJNSwYmkPpL5{rEtGTt<(R=_l>TG3cMu+Ku-ca zmb{Q8B_-9Eei|QME*o!CE=f+s$J!-mV^`gtFI!)p&I@|n>6Cm-;ud1?ICQz%uMCeZ zoxw1d2T6tc3h0q^1A zp_D010E`^qSq8;HBWL~rXgQbdU)GS2kXHzfxx$kMN^* zNSS~O9huRsgvH@0S)(MRvXW!Ta~nMZS4Y+k**odQFZrJ-xk(i?rLF zkB4qYBzldJ6A9%)KyH>}O%3lWLznTsTf1A$Kb84)srF?(H%fthKv!CBYNn?=)&a7G zNgUe@7q$+tPbWh(G7juBvn1o<-0k{m)JKy&j~;D32+{WEb5Hr$EQgzrA)a@oX(V?S&RO zZN*leHKMQ%vLS!`JK<-k6zUg(NG$D7Q5e2&6FlF zx6RdKv3KwxQHgP*8;`IT9M!7Cz8rpIRFTy9q{xs+Lr)J+<$q1Hw!Z$IlOo{|m?+QV zq{A`a?fxl1Mnn6qwrW?ee|#?N<5c0IyaDR_(;FVnmJ8{FcGlkC8Fm>e9qKme{upUp z28WRg8sanW39TKu*bul&@DFVX7MGjfd(!VcT0J&VBNNy9;tYTFK{L+3QQ@N4+tp5J z{50zB(0$AptF@EyuLc#CKT9H%NQbri;E)Ug!P9w&erfC9Dx#Iid~|bZ^$)cSySs>65oxV3_u%H9UezSpR*y37(I)O9$yda0T zA1}qcQ2a_QDA*(w$^+R!MIHOOh-Ck-hKPXfPRp9h{4~K&&thYuT;3H;E9-tb)I+z#^B1in zdLZRxyAs+Y@K`6E^Su-gV|yh06-y!0BhmYFv~Z!v1Iayi+9NyX$|HM0Ooc#mp_72w z=CNDs`B+w22Hs&+Pv#`DmTp`P4YRqp+)c|1TlPrDjg z)Si2Ico?rXmp?yRBs-j|4=yTV3>5J(@VK`jT(dX)K6!@+<55WGTkC)%_joS${M>)5 zpzeAPzEY;F#n=2=faP^}cVDkXaX7B^MKHgXvzQl@Oth&xoNqM0*qcH|DY?#&hm3uw zx6Zi?X$*4Fp@^VH)^oL>5}&On0mtdE4~YUn1MY`zee935Y>c+#0cw1h!P77g`_NZ3 zE9&Gor_M!LFB)dE9gD#J=uYqnto3vxU#;ilVGRJn7W;f6YxfIT6{=LKv|eHjPc`ci z^;19z74QdBdh-v7b7OursgQu1or zmK7N`TA1SY`b$SL>ns%zFeFs_C7Bae=HIEV_SIoM!)3hU4a=E7MQau$cs2waFjTNJ z2S+4++)A7PBNp`hlC44cYXgMnj|O$pYoI^7mRyNur$rO#vi8q3$ogc$Q1{FeRbK7H zfh8aC{4Z%#CY7^w6~C8Q0dTykKGYk)SpF8Xy#(8)o)j<;77anTKrLq3?U76_r!|?u zP3LF9Ze(jJDJ{QnoPf~G>fWoZ%Iu~1e7o#{Ab;=M+&*9nr1k${2*&M~8#`_@PP-Yv zbdP#|iqcWJWVJG~JXBT1Ih-v)<>cg)lo37Xews)<^?LtrdGFTmbR2Tur_f5{O8F** z80r_><3f4w^Rot;1+2`K=2ckJSh_nxJUsAE^?O-UF5+G3Jt zW>V1_H8Sk;RHN6oG&0(M9uu&Z%V8-+llbnn-B3GiV(Wz@Smk&+ob8#pz;qq`BI5Mj z74;Q$gx^EbI_j+f-p1$Snh;`fUqM({1(UH-`^A=>sr`|w?Z$Qa_==&*Nm0ItD2<3i z4rS@M77R}F31+3YXJp|_PvL-#r8Hy$DZtKmCIBqbi&1%Ws4P`Sy#a6NaY6rI z38(Tmg;C~14F9MZQ|q+;1BpEYK{BxVRg`~s!If{qN8s@m^gQHlA>ir!YS5%r;itP^ zy;5y8#$SW^tUCf_7#R9++NNyCRoWu8iynVG^I3)DywKWlJGnS7mxPL;0pR+Abb%qQ zZzL0@`8b}+UekdYM8D2jy_qJ$4lG+s)t_N7hD<A!IFG}y6dRR9wYgB;_Pj?oUCa@>{F2D2vR$huAvj?{{qz+kVX0&0@{bn0 z4}ND)17IId)gH^A)U|A>20G_$y;WbomO7@UK=32z4r^bpr&+RvIsaLoqpQ{(yO}rh z3Y$Pi21kTe1An)@G5!_qpZUwhRIjI3?cN9&Rjsw@8NiH@o_X``^Q_la##sh|IVI*> z{$Q1X&T!)%sDH3tzz%hKWR#$xf%09QQlX(2+y^cv8j-7xY!R#N&CT488|dLPGkO}D znlD*c%pGLc(=$;9EGKtUg?#CU_(i^>VXa`m%bYGC|GGR}`_pJ#=%*Ypfl;d^}((*lZ;2F9Pc~ZR9cD?sG+5gdZ}PtFB^^C?E+nQ~b*M?r5R8 z$WRb&Qdiqa*%{O5kg-9cEQdWCe`T?r#mi>g3V(WPjD{`oZbUrJR&}4z{uW*v-RDe} z@OVk(c&WYluwkC`p`$3vJ2Dsv>)+MHQ(Q7T6=hGz@2H9GeoK4|YO-ENgp@`nj6^~| zIZ15defhmVtG0 z!%GV-P)z2w8p+7P9}&;SiYXhLWoTKDOHcml-@ABbiDOlLay_I@wg=4^u+V2FW46@PU37)oT2>;R(Jco%B9L(FbBd^+P z*I(ZC`6!ImroPPfjYw}ktLzGr#)M^LkQ;k#5&#-O@y#^|`)yy{$K0ViAn2!v`CPs^ zT=!)aPfo90pXev8Wa6!PdRwQUuvuf@-gl)6MQ%6P;_-P<#mC22Gci%MJ20uN=U`&W z$<1AzzCsI1Q}PyT#1f23zsu?lC;RL8Mz?y4Z*IobyQQDLYWnbpjYR#Xb*Iv*|KrUz ziHJMv;oQT;*PtM5sH$HZcjEcjD>W_?=i zWYqg;INsjKlo1Mba@sy3cJsD)Yq{DJ8gO$FnRhb8m<^FnpTn@5;-ADx=gY=7y)K)+ zS?!{%&zBL+R~f}?d59(@ED0sg z^CV0w11ing4>AY%_obH{qU=QNW{FjMecxhUZ(zWubl3=GW|0rbr}s6GNNxOzR$RG+ zv4W{G>qjMI(|28{OnRR>TWeKoH99V3ztG&v8ELEjnxdk7wJ69B-Dh1^e7-^bP*8n8 z^tiL|OmiJvu9+#1PAhCkDr`JxU>)V>ssC=z!!XaNnxP^27jsl8`Z47c&UZm`H1ISt z;I;i$3)HeIxBP9#u<)4zFkI)}CF^iVeaoSipsUZU^+3HBYA zG=RcdZ8UDC8yUQ`Ej9;j51)|mbA0?ODJfWx5wEDb8a~daaG4{f3pgOI>!d0E|HS@cBS+S?21xVTeZ%ywdBXbBKc7@A||6wBa`$m%)27>hWR_@ z(bGle?u9q7w_=9F-3a8nCA%LE)%`D~-U2AAF4`Yf5s*-j?vRx34r!3??(XhVy7Q$| zy1P?ay1To(`@gyOyEEU6qae@loM)fC*IK_=>l|944wrTo^loom?7!+xcRarxN{N;; z*jgeX+;-ygm!>$b>N~hEO3D))?BUG%eXsjGNBl0||K35Q&~^9dF+rU^eiK6ieHdJ~ zOZMRhhXkLZB~V8BW93v;`-vjC_|??ZvTr3UOPU5K0`lu}V)v?WZC~h}Nzt7SdWF)O zLbFtZU{{Y8enytW=kz|^3Qv$hx@`8HCbevt4`3a6LMpo}PM*ILF7W zUAgVY#iGX_4aZIH8s2f1$D(HZEmmGGa7r!MP9Qcae+_O$HQXQ+{HP{p?{|tDH@E5Q zUcPyGUr<_Vc(K)=IJ}dIr;gYu_I8=;Hf$K+SOKwa@46#R>G<~1c6RDQ(94;ASOU>c z{vyLL6yx?@L}R{{l`$~#sq3&Rt0M309p~WB0w)g9@Zel^qc57(RgtbOziFlQ+)e2x z%bMc`o3CLVpNxiS#lUcr%GR_ogT|b9n+O))2uUE*q|m4I-CMO%rO0So&iKb7sXwiM z3o-s9cIMW)1i)l>PYvJDTgNGI#_o-a%=BG}v zXoI9mxSg|y$kj>OdQ|)sJJ#2fh#Z4l(3eso;AU+26U z>ff|(g$@dEp-56~%7D15Oxvha?Ax$wj3N#;&hTW}WBdq7h|?`yig-;dw(%PpkARev zl-R$TYOrD13aUGJM}B=~?fPuVS$o230^;d0^qy+D9!{0(6gf-AceYE>y1ny|*K0Ix z+5K`FSKk+uj9VnR6&^!f@RqAdVxeeuo9@;dFn7Lo7JQ%b)#^i0A8&1LTT~rf4|MaM zYv40bWH^&1aI_KmCBgkth&4#Z>Z~Kc_|l>y2!XX4G?Anf-y0!(8h_3hF`RGHn{PAw5L4A_i1gKl`Q zZttDH;5;3A?eV)jsi=?4IvUO)Bl9~&6ctf4IqY}-i}pTx1_$#eSivc`=j++|T61(5 zm_N-Gj~+Z*4^X|kj&Sqre)^YC9}<0*?j#Yj`j4)8>Gf_L;v?LG+8RrzB8Z-X9fcq@ zIF1cl-t*d9HN|!ua}?qh_D30Ds>;#@LCNcGN0Z<^H`=O@&ywP^+xcCNa7K#LG!h%^ zBKqkdP1gArT!EgvO3+srg*Ng|D>P0Ffg#udb^^(SZ7Jdn?R6CAm?RVhV(I;q>``&7v+g-V#?ze1HRr_Dsns=8OY*Z)kL zG*rm5Dy=+P^E5f4B-z3|Jq||BD=HN^)sPzg(17)F-ZPdnsa0cOWK5#d{qXtoXF}c# zf>f$;I*A}yM@PpnT+aBgFn9-D6D*K*uHzIX%%&mI_AYRkLb58Vbnx?c>t#7Z2tE$S zaC0`iq|M6wQuS_5`*Ym=5mH>T}5-{OKraj~YD%jmvg-tuT!x#P7ui?T(u*QG-D>1@|7mlc!F17h6Q{Nwv zB7@qOZyEU^z768uVT(KQ%8hEHm&qdjc(JE~RXb+{`QbWyI8G^>-D=$dt%_fxvJ7emU(zA9DA zv(|+E=2XN~i3X!R1tr{#-Dr|P!)BO$1y;D3NC-s=F0+S%BU_F;&ujU@f*R-##^82y zm>c>2Df~|goo?sHT7gfU=PiKiQBYDs!p6p~vw!g58G3n#P8zx&7Or^gaCWsp+pyot zs@h`A>8ZYBul`#7PYf|_z<-Ai+pt<8i`u&8FfLZ)aEr;PM62Uz_z+{FjZuuHd7(1- zbF5TfUYF3&d__o-xl*Q(K*A83o~IiT38n;95mm22rJuv-?kYpdFeuePQrnvnJ4&Gu z{PK3MN+99T&W2f6qtesyW-d7n4%h~h|FH-EIo(@EVe`~lkn;Ftmha1`Ucb9e*o84y zl(ta$k&xJInP!7}Jp~e3sw!*k$~BliX*y!Uz_Zz%bGDrkwYuY9etr0Q&5;I(#n_;n zzQ2)_(5Q)`?g`vW9rt0r4M!N{Sjp2-+JApz`ZQ-zSCL-d(2y8SBr?(Ld|HvNj2I!p zWrzH20*F3$2gT+8hKAq|T~UQPHgCp=sOd{~!;M(7g98KMvq4P5J8!|(=VX19cOxZD{r;|Qe2bK{7&l*xqh6D&t#MO(>FfkM%LI-wT(}Dq zgbfAq&OEDamYq ztN=sW-Pi4FH!)UKQKrOBuM-oeUCiB}PF0f$p5>MtD%@*C-_9DU4ob)Z$L3F>aw;RvsC>wO1~ znAlj?t!R-bL-wOxbiY-ko@zvT1J#{q5j;XrJX)yBJ)holYauM_cmH>+t-yxmvRCa| zlXCYi7L8g^3FV;Yv;SBa*X?q`lX(X;yxDXF{)sEGMfQlA4#rUR4T54|)`(#r4 zTe|y5Xz}yVY}|xNLaioBN}8wJe$`XVcQ)IpBxszBCHR*}+ABT~mRq$(C#88y2ks%) z(X$ro5b4w14!(2YNvqW7JW$s!O2U;!Pj1R9vU}$wRXwSfxjmvP9jy+lmM&i2T-TqM z+td6->ELp=&tU>AQjTY4G-EYN%=d_(2a?D;L&CFu& zK0H-9wTM1b0mDCChNOamg3PL_7{I3aKR@}r%hF9mBm|6~h?p1*Sji&8C~mC>QonjW zRbug~d3Nsh&j<*Oi9FPo(-B0UibNyB&Ep^A`jV-+-20i$`b?AnG`RpMWvVHy<*~k9 zpFXHHXxh#zuq<`;52g0$(m-q|58Po_v1s17$sT6xKeu`aU%oWxeK9ey5|v6HrBXF| zoxkrC89oiCkf%dVTP`=n^@O4awpQO*e-H6l+|7;U)~bb%-g!uWZfrC5uGI%)MVR2q zwH%26ROGto@d%LeOqaI8roQn}ns>!*ve62pG3yH=&+j3wD#}3$lBE^^rwb@V1hll$ zaXVG~m!vz8FhxZGiwykty-52BfOd8?PBhC)vkkkPwunHU6p_-!TqhJhnPp|p`nA~3 zMX{Svjn!)2lm5xQl*OON_c1({LpC#X`r3{Fhh2I=b$_Q8{l>v?GJ!KTyR$y5-ol(w(9k$2xU6 zv_b3QK5f?`_Y020$qo&E?Ge^`Hs zQ%w|w4W~=71HSF|1M6c|O-)Gv|1sI^au#I$jQCMTeJFN@lDY=sD8;0dUONxZU4qW< z?v0(GYqR~9UIy%%crQQss@3nF!+}m)@??Lbl7aoT1I+TODjiy)htC_ilvY1zL*m-E zVD9ewmXbDp`w~1^7$bW_8f0RnkqDgp^D(5$Fm3NcLpa(z{M zXg4=^^{mrymeKC7s##w!MMxIiOR==eNi%Jd+qLA;&cMk7|; zu|93%>${@D!*r_zZ-HE~4~7*X$BI=HHA_$@I&mH*DtblDZT;Ir2YWUyF0SS2Vz9_E zn}i7=`red^Nvw*B5vURqlaoYQHc)4e&)r~JPo52rg8Xpe{pt99q3u$=4!HJ@gjtvl zO+nPD?|ByfH&wM2{5U4>BZ1vLvweJ4Xij|#xzN0ii1asKaU*!HTw}@lBuA2u5bl39X(d~*Girpbg%M+lbgK^ zJ;#E)WPsGiuJ;375AzLEC+mnJwQU+ffx(C9M^Kp}0g5iXvZIxhgajJB?$mw2cH4Z7 zkp7>5%*t4ysGhF+1bIx#{dW%1p4_@XnRDU$xG7UjUGLhp+jPVQWoQq-q9UsOPEZE~ zp#wlZemz-2q2yFl-FWZK^}Q(9&L^hRGo8ZZv&dnA2+vjiT;X@g>125AxtYYP$Hc8x zqX3YGpr2c0N;G~8_07=dSWv*+?UGds>7suSPD@Yf60v*yRh?Mvg{s{83~SXsx63l| z`JZ{$)7R|#o3h9KxU{~v8ncdlayr6splK0VrX~9NGU31fx?@Ph=W5Lpz_B5vunTzS zPg)G>9|Yc~sG}o`+UzGO0>mFNhE>Dktx#gw<7XGBtWjvl;=5sJW_@7S$SKJ8Y)`&) zMN}a@?A8IGo`r2*;MrjM`Rx;=iTq5ozf6;CyR>Q8uTj%#+kmn|ic!&Qz|Wq8<1kB& zUX3q5!5EB$zR|P#aA?OlzmcS@<;UEKH4msNde;jBEw_D=>3RXwWITW^K7AL9Y1mD7 z7nP6@#Mb?64ak{NdK-PWtuogqZL4;K&_AXnqiB9I>go=^idVei)aqjkl~=p3xgU#h z_x*;nUXh86q>c9r0{i-GGSC)-MnN$_C*2kOrumUKJ$m({4s`Qdn?%aqrTjo z>1VL~IkpcT20bKa=a$)~u}Ep|4G4!zzPf4d1-P3znhUjL_hN+_jF*aB@7ot_lRwjA z;kE*{y45bCEI7UK0on@NhV=G%^*(1#e=5RBBklN{s+1Dq8?C;F2bcM5S+4!=$ki#n zCxVRsKjJ(~IKoQnRi1Ru8&wd9rXuVl@FJm$7YEzz06VeWu%glU-y=^_cnP`2bT-19 zGy)*JSs#*L!8*(x{b9ECR9)fM)xfhtJC266>wYeW6CsU-+I$dzVrw4Oywaa;7}1Uw z0;Wy2TCra{?s1!na1Rqvgw{Krv4h2>`12#`fBIBEk}e!+ z{5l+nt$eBfdry$^6WKu;Gq25x`DiwuK*@ZTQ)*_h6UUrO17bdHmGw_)VV~)Mu3f{k z;?cA12x_xFQ#(BgBc3)(Cgs~bfzXD3T3N)Yseqw8J3v?+*PZYU)1(WWcufR5Z zt8sgJ`DX<`mn8(3Cy|6yDL>@DM*y}XAK@SaAi@#O&(FWk({0q_)Yhh=#}4eDuhU*o z;(T6u-PhQ$RP%*us59op!|)(1jm@sct{^DjlSLt=eh32`=>#)l$~}?r_%|NeV--I1 z;YTjk-UuQR4f87G(cc+H=qr?bm2-IHUde!+zEy7XE4|-FFV=Xbv926zdb01nxo=_qwP1O> zji583al&T5&%>3BiN&8-Q<7CDd?%EzNDWQ;Qms#pHTLz4xQvisP;TAgr4 zeJl=#+0`b!sSdaMeuL50rcZ@H^ArUbcR5a}>aS6TSAciT2r{x7&lMMjTWLSXZ}8xm z#!IZJ>RqF_)(iES{{ldU$NhG~)xmTq(DeY9E-M_y1()BwZgU3ItEhN1-0XawjL4ap z#Hb8oV^tVXC-Ux?Zv+S;N=c3$Y2dZ5*~zl8eg#vhhyZo^BC{LaRbpcjG_r7SPmzxvpD>o~yY#ujs)fyB;P&s@HqD9Oc z*w^_tWvp81eS4~PDULMT${42zefuUiQjnnd6pm~ffqKHh%??L@r@ik_@)+v)af$7n zM_UvwZz7n#26!aUlTrjuHUp?7r54^)C%{;f#&XDKN(Zd&=GT(k5sh+2{6`0<;0KBH zzxnE{HpiyVcTcCUC`9@`HX-px^M9N^PUrM>+d3^qbgLz6k)8K``d2mQL-p}tx7Mh? z06Lgn9ph#v6i@?bYzrDgD-TEi=LI+#aXqatnH?|nSkY{j<9cWHVPgm_KGHQ2=+{OM zMcWQ;2ZX{y=_9`php0@9!+(>j+&;lIFOS4itIt*F`hp}yp7np6(|A6Bl;Fb%_i*fL zi^ll%ZEwVEq4D8=Z-4f!zt?*-vO2KmI9gyRA9 z1xFeKNFXRqfSiLroz6gU-%Cgq%rZvz?l`tL)*0Jp<8Chn`RYFuclZP+?r;E#){mzt z|Ak2Fj08-#)Y|QrYs>FC(HAIk+9Ag(4u1bAQp6oE-jv!~LBkEoHshC_+FzYfH<~_f z=@_lQttrJT7A#~LiRej513>pn`X7NnVWCNNK2N=3iuIf&(5^gZ!2%EE*u;?zpD-w7 z^rLIFdg0^qoIB+J-Tt-Sa5}+9J|MY-pSE?(a@N}!-mbJbE|(TLMxjn!E@t=^yIrjh zn_GY7h2~S*w6i-ND%>K=XRyBx;cf8}0^mz8z@%U2gV;L72;8WR8oeAchTI_lI4AT+-dR9uJ8ynA-2=uMxXkC?T|mi(Dao(f6$ z37~Mhok8h~;j;hXevOuGn#mKB3o&AoT?!!k<;3kka;NkIRe) ztb6WetjMh3X)#x0AgN_(rEKlVJvxBQEkNR!nw@=1j5c};bz>#~gBT5AAR!@TS!o7Q z4JyRPU1}_9kzIA0*xP;uJkZwVaSHu`13+5@2=Hw|S94>IM`(UKB@^R6bR|)_tL>*j znoG=mbQ-6vk4p?jBnC=^&5L=g?L&+AgCkU0ge3y^cOzwH2(SkLNtOSWRyj)J58ZAy ze|MlqXZ$y@rw?YraH-d%bx%zpl70@?=J1zJW)j;b<|jt(sU9RFD>X{}3}v@EzZ;91fY|vT82k3B2+HuLtPdk*%jtqC zn#XMX$W_%Pe)d|f0ayvuvfAE#n8ud?Sq8GjA%1s?i@Uhm7`-={RAc(A`GxL&P=ZZ74Y`3NcoB&r!<@8_$G`0Dm5F27(u(Fq=E zUjSFCUbG|aZ!_(IOzg~mI$AfEWwm@sD<>!SW=CdbW(Iru+kXJAwG$6AfF&VhWRyQ9 zC!<9qSoP5Bu}_`voa`zil}8!&L3D_VfI4};^IY=Ecndd5>n3X%8AH9>$h;zC8!z@W z29FK-bMzmrBq4c3zN?Ji-KUjoK}9brtHuRN zR9bo$#C=810K`84u07>~u%*Y6l3iyTnMLl>!lQ<#zvU|4PZ%)jmUcT+ra+iPz$6U> zXNP4*YQ;?ZCzTI=nfs*=4(-l$NvR+ z8NcmoT<3NHK13hm|4;wc+aP4nVM+U(<@bZke;3 zupfyrAaV=XJf zs8@^YF!h^=O*`kqLIdSX=+?X$da~GAxd)sabbNsHGH}}rX9doL9=%GSI{xRfY$a9Q z9c>-lQ80Vi5ip%P`v>kVZPA?0z%>JEN|4V4ZAHBqNi6z)XQZ-5N=%+ps@wkYd5;Ne z1ZeCZizScQzEabE_aAJ!*&4)E2fVTqf7);V%}LW*hvA`}x)xm&DA&E?;at^F8k4f200qgzjHTA*chI}%y#DjM^e=}G}k^JP>&)fjT0Z5*S zwz;+>1eTHwkd}H1CUNaOYY3=H**lSxnd|0MYO_R%$$r)_^)$!k<}K!3i&rm zNGym>m6XydBLisd@wD0_=H;!u0HI`61+id-|Cf+Z4J=NezWe&4#1+jezojJ=w7LX> zD*+!k3cM}P^Obx&m8#F=evbF+i-v6vD%dR(Ol}X|K*y0qOb!R9sM00CG!_y93<=eAez|hf#H<-S*FbFSuB7zT*66d(&SC1mgjm z713OWuP`3P`-0CSvD)T|$!0^~^f=C)hWq*RmU@dX&E;;w}a- z2`GPw#6?4V)Z@?09b8a?e+h>w$De(NjmgS{t9*;dKmF^7)^Fo686VAa|RH@99t!1J7naM0jU?WKmc8AP%Yd$=FXem#jJd8!Ii z$Nn1_CXM}E)#YhA)Y#MQt;~C-i}Axisp5`I&WBMfAz!@D z!r@`$^o|17A z(x<)-`hA+|G{~MhCF9{q*X;_RHyI-UKJxyD>qArEnN?V}HeYW@20?EYEQ?p@?)C@;bK zMT4#Tas#)Oh8C+<26X+ciP2{r=Hy`d14et@PDnE zwep-HnMi=Qc<0ipB^-_=q@)C>wHF0h*{}2S^Wkm#g*3FgFR4<*n1aYjd7Wf~3U}NJ zkFB7FQxJb|_G{r+Bvv_G!f5EQ1<49tvxqSf zyY}D6!Og6d`5(T6zq^iez!$BPe7=Kxt<~vn#t^j;YT&lplET42!JVs7_p5zAcO&YD zV(f>Kmw9+k9@1$DcvjZtIy?Cc#zedARXV|SN!gsQk6h5ot$o9vtF?9)mlqp1!>V1^ zs}7~_6GO6O$nFcT+zT&U3%|IK&o&e)woE-dF*STJanOkzM?x+qAr%(4D2ZrL!DVSi zOOX_i2t!NJ44p0#vJPsSkc;m)j)ICoNFXthmf0qoy@fn{!LYU)kW-!LGPjyEhS zE>2=F3|Wx<7#C!^_~9LG+ub)9m}pK8bzo`%ft}rE?VYlwBWfClAtEhHV}M@F&g-LBt?w;8%tjSoc+NJ&6xuwqnF&#?cta(q-HceseBJdK70W zSYz~^=A?C$cpplMf^t$!ETGyM4A{BUX7TM*<}#Y=5r@#Qj6n> zs59HCZ87on6FJk=;MDZM)YQjK#XriDvESgu=>=-zJ9f(B9gq)zF&pG^Tupgd-Ic$JI-G@`!c2na;_>%Ie zvvAV9_RW>l=h?b&nme?+9yBW%o%dU=J@jWFLhJjO$tz;xJyCJyF-kEJIXQT-?{4t2 zY-%_(R`vLy+wHS(ty%*7SrLAMxQ$Qe9Nz|I)QMyjNn{n*^Gm8?O1F^|w~->;l3be8 znX>(H^#0MQh%%~)q6#^7|71%1M9xq}m2KJWwZ`ps1<183w`;Q%k4wpm%S-m%RQqpM zN(O+<2E$0GL8o2#-fuEOCSWQ5J)SKR8x=KH0H@A|iiXCZ-wO{qf;}H^a<$vNRH(vF zxAyHC|HU~j#SrFk3V*1ll09&g-LjP<7ss*VEI4NiuACE-{z=5ho)(tFG=VG+zUj(D zAHA8{xoP@dO0g;G$lil0LS9Oh-I53IP4FXmUN~Z0P(0fojTC#IG}J`~)j)5-Y42YM zf6}Nx(&#W@Ki~V$D6@?~h3rZ@nGlskK z12d=77f|_QGOND*5K{eBWER}j<3$lEI;9}iop`;Kc)Vo_R!Qw2%OY@v8;cSrDl~ka zx9Tym=;nXQn4X=z>_XtJ(CvZ({`8?l`tF|RYl&i;i^pf+2E+4yvIRAiE@>In@X}Bc z_3Dd3}Ppp@JaA4zHP~rrlijr*$#l$-G-<_X(&qrPUrztu-TAsA9?4kMhrC z*m-fk$S9KQvL5!+shgAr6U`csEn0M8{J!Oo)XeJ`>iDtd7qSbqMw*7T4TD^n*iK&Z8qYkk7LlTIpeaLUDIM& zlTHQwKMMPL_#%CMentA?kzH%CCiP=(8P*cBa;KF12Opz{+ylIWyEiTkmP=_=8c&de zJ04x8X-%)U%;hNp+axH;|Jh{b1o`Iri^~17Q2%i62GK|g2h3^lbdIl9u!8l+v6F~r z_G6owV~0BB8X~s7*y>^NB{r=~VMm@1T=XV+k3&vLQq1!iK| z55M1$#=2z-ypc+(Reo1j4kMhWEtz=Dc`ZJVRh&_JT<5ap>vvBf5`PvuwCa6Zz3>Cm zYP%Qo`iK7!@)na&PgeJfN`(HKhwtn!E-KtO7-y}r>!J|Wa73nkew<&moOPsfjBtaE z#K~F{{R$ld_q~*gWW*phd|ntk)?X5Y2 zo4|ViA%x6qm>XUH#tRMGf`b0jWtoA!l7-^{$<#99kN+@|iad7o0kNPwpL0}gjXu7+9TzxH5gCcC{t~oX`yWAND*rj-e*aGzSP^s62y>&EK zs+fRAK$%F|K?WW%By|PI-^%f9d$v`h%YX4Q5|ET}O<_!HM*4SC(OkETcl79kp;08~ zZ(2DUpGFSJX(-qI12fhm4z10n9yg9E9W0lF%St1i`Vvr+HbUfX(9tXMOnB`Pj=Rn1 z#s`oD)P18_W>hw=|KP_VWvM5Pc6m8NG=E?|a%RcgL#evFsxdb=lJVmDUg##}KsRnM zbGcA6_|H1+pS?8oZq}dEvzNfxu`Ho2N%U}GgfPz7|4^_+BA5z*BYp2G3M{geI0OU~ z-g4g9ID!4yugGU;ihEsa`fCyf>J4g#G19Ra6p^}lin zrdn@>3zi{UGKD48btkC^W!$Mb4cM9ibW@H3g2K%u+&YaHdh6B9NUz6dudOC1yx~KvsZAE>sw|tiL%sas^fVp>k`WGu7)F!W zH0czy`z@m_9fqI}`HfMANh=ATa~ewgZnYCT*daz>7b;PO{?rtOdGnWn z>ml@~RrXRB>l0=^?mEPI4Vt9R54?{z_iPoTB9gg+gKU(VHNiFYJ+W369+PtGFw{=nE%~NVE-JQTFxxF!pns#YWgvvSkY5Kd*t5yVNRSD#%>hGIWO|0nU=l0O# zDX>6z3GMt^?D*nL&G|Gv<@#h$&oEZmnlxkSt4)PJSQIC;wL=n>PM9pkVoZ}D(ZR#Z z>Fhe!-WR#$TX&<8wg=*fNl3;)r&3hvX8C{d z@eF$1pWJRwfDO<8>}!ubl0)8g0?BXTwR&tG87R*-Le!s>+gCv#l6b9961^ zs7J}vl)~oNs>{`sGS{=*2#}S@;6+^f(a-0EdTeOiVP%GGW{Mpv>RcUuGow<8Dv2zI zepb1x+6Uzg34NHBV{~9TyCRrUC#+_GjYy4>Op`x}9#5**A)|I3$tE_BDUq}aHCJL!Mjg~S&FNbZ`SEzXh{MfBprj|3XD1!pGR%AiA8`wC-ck_0Wb zP!W9IK=bm`Jf~FTZ-X`kW1|trcsEBk<1$2(BX}YR`bfu?wtD^j)*dQOQKePT&C7T< zfF$#JV_P1s_64M*q_S6cuie-^?&v@_RI8RW=<346#PoJ6S5Q_Kxjk8KJnzN!{i+!x zvr*~ESmpid1y~S|B~o3f{8+=m_)5b;G%mc+Q!PfUaEJW~f5uU+*txkm{kGSHELSi% z0c;Ds>UqHGk?`<5sh5!d{xzqMR)BCfza%p(Tprpr!f{c3vA@v9ioR1vHsW=3nmy)$ z8i%7dLssp&RR;a$V{j@?Tfuc3YZgFw`u*-P1fjz5RVoj6E?7!-&nP@M5UgKptr!>l zg0gDwmEz#N`sri}Ad?{;HLgo86)J{hL;JtrawIiWWXGj0-38%m-rN(Xr#JjJ{>qhh zcbCWMgC+$7gT}z1hw0hJ9|CLM`1*$tP@5)d)HOqlV+^Bz@6q`bbGt`ywa~07w_1JQ zUu+&-(dSHzqs<-}_vc_zTR1i;usfTYes{k)(gmy%sP*l4l8h&+39NyZF{QIu~+*|WoG6tU_N+OV?w~7`?b>Qj(@p<^kv!*jJmHv z4j!)fRd(Y(e^g-TyU6E1D;BtPlR8sId2GL+BjYM9NN88OT$Nrdy!^w`6PMTP4mWMV zL56bz=6e~r?&gZ6#X>V`#;ky{`v>kJr;Ad0L32!QAftvQa;N2H<7HV}QPysz{`V`Z zVo|XVN}6O5+bmdeW}-ADiDr3-m{e%?-_nNAW5Y`kdyQ4>(2?tGOiI2Kc&tY6{*~?E znX5Sgg|I@Lj7s;mw|fZPoC*rKLst&5c=DT)bIQJ(30J$)Xe7QgT=?RWl{^ zm8m<=5@&_#j^oUk(?8;Qq=_Sj(ZPYYt8+dr zHYhamY<-)T-bK`W#p{;h1gG&Ap|Pa#&Z9E@TG(c!4otXyHKwceN$ryDMIZh?=dX*;oUdc%(`AO&ZAbed_+1h{4IHLKsY?W8e1LhTp4I2q^%zu`L(~`MM5+jbmB< zIzU+tykw!nMw><9%b7f^;K>z37c(yln3}^*7y)9;$cvAoU_Z{)cFYG0lLDjCMZU&avHBU!z4~-TE8eJ?atL|ac+=QVkYt^KF)Me@(z0GbBU8;Med(uKPKu{ zclG_bc|YzvQ_aXaOZLt)^Bp zPx0^%XPen87Nwm^;wC@uJ5=@Pnsu7zae+VYi-BgDl98A0tNZU5AQ*T zPX`)7@c(%MFac1ub!Ga+DXps@*peZy7w~ zjkExl|5GU#0Gsmg@Sq<7RjyhcV7XZL-sY{l9r%Sd@yKXsB7nF1joAjCHc)MVXIZ^t z!urgiX`pfE$%AiO74Tv^-Y$IReUF-yHo}26qe$0Yg6ORW3*nyDQR_>aZ+<96+(XI~ zT$|4C@-gRKq_k_u6Y#ZUuw<0f{A;L$AuaCb_cEe^Xui%C&~hIj38wvWY$&7&8SyL9 zrIk=GU)GA6d#JM%yRq@~hgvsT5$s{RZM z>usEu*MnRK>;+(@gf%sBLE8r?X`WBa!TQwJ)~Zm&uMSV3Bty|(EOoP|Nxj^UddDOs zxem>)x*bx7gof@fH8O&y_?b=7=S!yag0YlhQc^o$BY!bk%Cu?JsEKi0O8h!c#2lXc z)KWSX8KG9ktPqas{KE~coMC$uM^vv&2?98N7tCBo@i)c2 znGb(Rh_6)!Ph+Q;9?idluKB*|Yjq3pJI9Bznc zdvtb1{yli#c*L@@^Rq01<6H~gVpk+hg_dHDIH~LDd6^QX;9rdz^6%fM_3sMGGkofB zJxmun5|(f{$s)1uF8;bIut4H^P>j>iO;{@bW1~>mmi$TY-;fiPoE$Q50fpm@rbLdy zWV!HPsd{}(YO2N>y$`|K;o%^lZ(NTm`%=-$CEU`V6UZs$e*T07CMf^9yn(^N=GWEr z^$6Nnw~D4rseF4jSC*7vFxn{?)ZZ~+1~kE^0tJeXe3>Ap)tF5mymTFaP7>4kDv~$~ zMLV`K_m3%QhzQhZM#w@VJG&LUya@)a@p+ZuNn@S_<8eh|xXC3SK##pub!(?4ISTAX zmVQuZ1YiE>=AJ)t35Pq1`i$km1N0;fUD&%^wF5emSR)oYg3~V|4wxSUC`~4Z1EVF0 z&dPobR;KkBA|GW-+mXVwxSXNTxc-_cG;#Zj7}R((ef%|Cr$sAQGt*yonk5`k@!C_%kSB|w0x6qyL*;WxQXLHb_0F^C|021-7y;reVDHl|# zpq+f#JBSr49EZ~>42-~{b2?Iqz~y|KL$^O$p3z0mEn2e(b6$a_IFH8oSet}1VTklq zE%=LN69Z9R^pe`o9VXtA`)F%rDxJaG!?WA#r#Q?qu*;-x(bD!-vXI3JS=nrE$WJxc z1xmE((w=;|Z~oNg9R0=AL~9QFzC@2@I-}M##6svN@(+Txr!h9U?~E_hWwSK>>I9q8 zkqwn!V%dg?$1DIrt9y18UVltx^bkr0%jaFC?MipAt3F*&DupgWcP)3W*)K zy(_Cbd3bn$v>GN%1Oo%ZWOby{Gj=#z4&e+(gEIS(hm$h}ELLxe(M+Liq+$eu&1)aUTneu{HHqK-6>$MF!1W1f zz{jK%?aOw4wMa^cG-A!^iFh^I*8;rd;9I1@VP-u#l_V}NNbC05zKKaiK%uam%H(f_r z@TOM>1qFRG7W>GzHj>7flbaizo-Q?8rWvX^VOl-^=Bc^AzXz)m2>KY&+>SuW^!9%~ z1ayuE3PsAaZjFk$KjY?_ooT_#YD~s`_V)I&UZeg0O&?%jXnl@L8A05)RPq{@)R%Q* zm_;2cQibll#S@xL47l(zN|MKvB+YBTVOlL!`H>;Tt$Ml5!0!v15C|y~e->uB<&tx- zn2I}0n~dxjR8j166|!LK!jk;Pqmxlakwt0L8>{?w%Yn^ky{5f7l)3)?YVTNDfteY# z!97CU&;OCZ%tAi`r>Vo|G{TmQITEi`PlkNy^75bjM@Ul)maO-WH^fyo9k!jF&n7cj zYy1VMnmU;=51*N8%yz}wCOYE}o#!$V0wzdh<_FPpQ+OT|kDVgS7|&@8({Pl}udlZO zSB(J=1z3MmfRHLr`$tBM06LsIc1mWo*0K4Sje z7TmW_ozJRgz_E?aS*(fJyd2S=nXj#)5WIS5R%ir~QZ=a(AMaKY@x^E&il{*ivQU|qn zA>X34u<~j5S6uJ8s+Fj-T(7YN*%~WSglg;sQ#yQxC{w>On5-xc|EuIfq zN8{l!6ArWZcYQcdrEQmdX*`L+QuTXE*Og0Ko4HGbnV6kEp^ucAglVcZrs5(`32v&O zFwav&`&$t?drW-K!4+)+zf9D~MA^FxoD^^Z^J~9f5 zU^o^tEceX+BkC)os_LS(4MGt?S{i9Vy8A^+y1SI_?i7$N>2B%nI)F$X4&B||-EkN9 z8+Uxa9ge}-d+jynd}R;=$#M9k-3NJb?=DC57nwI((cuf08z&9a5gP_;Mhr9zRB zljcpW?MIeYhsva!02_pDjo=~6a1s9;G+I%$q`9kc4hmBkEpH>Xy?_wUgv^w!mdc;B z9R(^e=F&2CXTa&&B;0dYJwr|aU+Vma_5HA>^b(c-Pi;9_Bk0Wpz2&+D3p0pSuz0v`xIAjLboyU}rQRI{%i?(c&lBIqx?j8g^z+VC-F zs)C$Q%vok~2mU))6N{YGc7<5wh!rK2Nx40F99k;`%4NOv{jWpg!bGi@h-1{M@@$&_ zG0r7@^W~58H%L_d;Yc`(tee$rN0bR?j;v;f1Bz)vZ{InWCl!W>epsGpbByCgo*^SA zSAzcZ@j2he`fDwQ{N?ci$?L}K)}&~JoCMSVSB?Ra;9tqCFY;4?r!<_!N;Ji;Bi<<0f>+(NeZ;owqSKO$lG}VpyFIW^ied4T3OLk$)rv=QSo0{6GpvzV%XT0g||!qM~9Fhc!_) zHM8gKx!x7m(+o(s0B8Wi$om~Z1V0}d>?o@2-T2)H!`yoHnf!s}sZ@s|)l$Lo__RU{ z<#U~nN&RRlDau41CodXZH7--Rdwo~}3-|DakN(+D&%%jHs9m z9zqsqa#DF+qd_5$Nl6K%4guYgLbH=)GEk*iph8|FqL74;f}~6enbeoNlckaiO}Vlj z2TnZgMW-1DBkFYf6Gm0CDKZ`doJJQ!GI5NJMcMsab`FhUUQVQYtvV6q-CJ2xrR=n- zF=ZIKn#qD>Ge^GnuW`q-P+K&e*Oq6&T)gM{@nu?~JHFXOh+l&~`F7I6;Bm7di@TdnvAiUtQfydF=**RQe zIu=;R&MlE8_nj5*S%9nE>_q37%4`aS+Qa`~PvNp#|5kW~w1k0&CjsEl9e}n4FPT@W z9Y#)a&0hA+?6czwCZ862rC2dl(NX!0xvJL`O{J{*3)fybFeBtNiZ{@qD|TI z`k%=*&U&=hh|0*Iyd{F>nN{}N03xA>;BsQ}BV#8PW0~C1`mHNu;*sBx{P;f;rjFi* zK}`(*O>YqJdBhOTmG!k`6ONY&y>Go+vOYhm{b^X-JyH-ne|j=xHm<;Oaq{7CzOKsN z7~48kHdot*obRC+T~6j<`<1fJI(AjlNjhK!u^Dv26bcPMVid~602-VR5b#t2^BHNV zCs&c%#cpo$3p-&019DIwqGF6uDOKmnNHz!4LT4eqe7%6UA?y{Ql@+b!|Io4Z?Y#e(Sh%5dB9=#SO{d*DOkTXTFB;(Wm`B z)gib=-T93Ib&wK{b`}o}^{*&tP5E*=Wk`rxl{MA@!Fb-8cDEsOha)l`(YGV7M`7Wj z_0F01{{DB-Nl`=D@Kn=x=C3^OdRF#|MKMvKJB-M z2ZRr&^PyI-6?56|w6yp0EldqnX!k%&hs*22*b0Av1O^y~l{aR2U7aeH2;lqM9&VuX zwqAUx3$|j6^cf6Rtu2FVSF7de>1gOKaT<@QbG%@nS3NRoV2tVMp&Xax`=4L(eIaCT zUWM<0)c-UDEs55?08h>7#2A^Qzj7LIzp&JLsm6yg1m7}{4^qU{+G2OF9fu-dvT)@q9vIpBt` z{}uZn9~v)T@??sxAHeYAU*blI8cX^mA&mc>y1f4{YFuvK-#RT1H;&Hy)`Yww7*8J% z5LBspMIQG2;>;@6ac-Mp;f-O6YHAz-ixqKdExg^13mzK%r>nFGC}))~NZD zfazgSWIZqJi+xMuySB%Ur_k(PMQh&3`dNHkV&b}oiYS$E&2N}#C9Ggxc5%J0etult zo|-oslX0Xm+XB@gP7&M8GpQ+3YFO}VV({{%P4~8krbhe|$-5(hyj-4iWC%~+b}bKx zb#O$kH}}XOcNwkdBHOO3dmqm%A3zzx0X$l z;eIhP_TGrsv`K`2XK0W)Y1xwc38s>S>v@&pIE~s=%}k&ZE(T#M=v1c>$0sL0xdw@_Pj1l z<#exT*#5W~<{j{ZFR-e|Xr)Cnfh#6Kd;7#``9CW>>v`Vx%4JQdWZcgF{I46GGkzEN zA9~!0FUeTQGJN?TvFSMnOH*b8b$??OY1ERm-WySSd5v1?p9x<@Z{z5`7gE<9;^C03 zWTy4;NSQF5I#w>CKE@&3!c3*J%#Z)KztEgO$m7I$k$MG(h*<4@b@-La&)`r}CY^77 zO4nOjO)U{Ncyw?OK4Jn9NKW|uTW-7Z<;$0U7Yx@a9M`(v-{0T&L1eoqXHOg}yuZtz zmS9gBE^KzBB)loa>Ji9mm5RhpJ5hlVcUPUBZ5lt(pR;MVMyOl2ev4qwCm@S%{Q8h= z3t>Gp6+I_{%69YeOEvZxJ{-M`p$h{(KEYh&^L)a9)E?W7UKj|v>^Z5SG!ppV*r zRof`=#_#l)lZH*SIMi1`wF9lCmXlYKc`vjY5d=(VHQIGiR1aSLzo9=WD(d>~&i>){ z;%j6}!uPGsO+8jTNryDhmVspJ9_B8j@0Bwnv02Oh?N)2~C3BE8kC#FQhL8M)C_>y9 zB5TTz2jvElb%cmcXM0heB1HCFD>OOjX+bl3^ck53^jJ8A9kh{rl0!0{>hUSvTZM1; zVXYnR&V$Do!N~6Y8OG_TIihr2re$v&xG^Hbb!0@{R^0!48UKa5eS$V=15>#xcPxo9 zr7!&jKaIx&CNjatUVDbXC{5Y~4(s&ggn7&_dOOAvo^dq$@cq1CY+uxsSI(E&ahq)h zo1Yv^PYEzFI{`Nf{Di1vR6|7l%I;~z4h*gU0Mw{81Mcmx35{d)bTG!>akTvTLmpUe zyFbljHeMjVxjUatO-dSHr13|j=1kIw#+o9HiYlAgJMH|{nj1>bQctaNvtgBQP%RLIIzhLu> zQI@R!yQ$HOtep|&_pp}b5>~cVFLj~}Qy)x3lN>gaRtQ{^_w|blBOvSyGyd9u8Qq;y zFJr^V5k6{BbtYd_fyL;jtpjiT9ziHL!rAc@**T+HwOr?5)Vw$K`BcY(1`&Mj8>eEH z%nJ{hh1$*RK#g&Je*QI*nAPM1Xpca`_QoT%o;;ZCWWY26z(;!fl5FZ#<$s;(a9(3Z zrz)rL(GRa(e$2Ck9kHd7JpEw{W@oI{=)IxI5^h-5YbbqKfgUIh z$R9C>d_2XG_gj9>eWqB_xhyDFQtuky`4pCc-N`>dwQwo!ozWOG z)v*&?Q9$j6k});`t6Mo-+yY;BFMx`L56||qp4n_T!T)mYEVDiqPe_2^dp5Ii5?8B#0Pkl0(sI+Q?h7J8FqIyU#gXR57xg>73bZF=_ zMC7Yg-biAneeY;`cfL<3WKwXSq^ls`$mNn$P^@h} z;Bj4npcx>`kpjgM%u)=tQnadNe?YGRT4pZKTUH?4aikUm`Hg@M$>Ar$?E4f+Ba-5hlGSW`NrDF#M3khV&lG|qr4+m8e9QBj?6-X4W&$D$`^79qiRPO)?_)~ zP?Qh{k=u~}nQ8ysDPwiIwd&%E%Ez2;R#MjSKvN7=rivld{dpcg8s*m^-Z}f9PA*!4 z!_PLS<@xNrxn)zWKalyFqi24(R|kvW3gFs2cG%=!{tb6!TR`C>JH?8yG&GGZ8?wMaRGpmy{#}r~=sO#qE43_3c~G zSo!A=(qvLMUi^J_ufEm}CT;8mO(!FTF_Z#rUVDa^xX!E?F|`IOC~@m#fz@lu_ugSY zS`g8c3yXxKpjs*)7-jiy;FOCnmlD`XNqwO)l(rjvSnL+le@FZ%5#IaJ z$e*_Kk4+Td{_D@zU^y$C)M|-_2Gnld*p7%t$9R<&JY_h08*T^PDiv=+e73}-BXyWc zW>}*J@ag-4&oY8m7mPpq|Em;MD*QER>1jHx))8TO1Mxh^Z1F7~rmLXo`x>oY`}Jg) zc~1Z*l@6+~^IT(^ovi~SomIgH2~Hf7$F)tNP!yKXW6cGltE=lXp#dN$al#OxB9&5! ziK30OzYHOyI{!MzoU*Cylv1GGsY<(3rhm;lDA$hmbm^I(1`&N6pkq23(yO04QE+Ff za2LpnOqRNG(*A=Yy=jots9rMDmNYkGij2=43#OI0Yl6zk%I91@051H3U%D6e3qW$a zMAX%Foy;Z;3Vy%VrOM6ZE+cmNnA{8C(8`T`$?Xg5^z_Pz+7wDCtR9vr0;ATbad_Bm z8EtZ6i?P%!&sLz7D~_ecbPnwYce_Y-n;F-;E~-2$jzlxB7b4;0VA1cSSFBSU*F;IPE);k zWjR~(%;nuf9BH2(mOpB{6_`#5`aw?10g4RQwDae@auTw z#*D8(wS+&wy?Oa4TTr^>GRtEYSuA2}T_se@ctG5Go(4qk6=B)P6x&oy|_g$64ovzX2!=_D$8@QhU0 zP>dPA;=e@7fz&f^Q@dStq{p#TXku0w^9is#|AR>6hf)7|cyr~5m01mvbke%A zwF7xecFqQYjD@*#2jl|bjAiO^U*D_fLA{eJIz}#j`%UEM0So{G$V9vie{WF%Tnbbo z=m3WX$B-}r@jEn{;`yJ3Uy3_}m9_04V1eH8V-;yH%Mg*lNVW+4;y10&06bjli5vsq zC@C4)OHSZX2}B`WjZ@WWpPF)vqmkr3jnBxCja?r2WJ!r%tzbg56y{x%5)oN%K8M_E zkjv&g!i$p5*?)i4mgn3xmezomPuzLiPk zY_Af*4=yauJR%X)>C9DxxYj@15QLoyDis!=p+BV zwYL(@&XX0&VcT4KiF3xZ9>(oF!Rs|Db~<+3$1Ba|>ve%U7bhooohQ|m3?7Nxzmnw+ zdfzkPg@te9sBK&Cytb!jB1OYJryD+n)|ch8&^MrfMdFG6g zD-eMHBqBuAmVCj><-twXgc6NmoTOQ$M#p;-x#e=xGS%BZ*lAJujWD_&x}Tl4Ky`IC z(pMf7QP}>Dq2I}L^*$4D?k8Y^MqgeEdh+@`G$KT~&Sr!aDPv4ZJNB1_W$I+b-F-d7 z7S~_wdZbwPivT@udu)%29;;d|O7Mew%!}>eLea_|qUj8&gffvM+efp*Py9DS{NQ?% zGg$SIg-uSpK|aqD%1=h=()^wI9Ug-cp2bX$1omDPTJaGO(f&l<<;(j3HF}GLL`p{& z-q|S($ZY^Rg%NO7XQW;&_9qd$0?lO^hkWmBtN(xn=RFvccY+faTJKpQdeH74E=9Bp<)u3Ch1AcLJUm3Ij*y?E?mxJ35-1njmEp4>bU0e1m8O9y+Y<0O0v zb_E@_)jUphQZ*dM`_nN7^D_*7rzQDm*Q{-6x`Y;Qcs{A5}fYg5=!M|#ek>s{AW($(db-Kv()wlspu(L(Q&mxgeDSz02OegJv! znO}BxcH+bR8Cd5N^W>Rjyhq8xzC$%`AhWu))rBf4%3>)hIa$s%6!a-{L9csU@$D#YOK_1Hw{qJGo2_vV)ZA4e6-^30eMxoMGEkk!#6t5!aX87&4jiRc@U|zh?I2i8p{d8_mL0h%4wWYlJFeoBl z2qza>fbg+GTOrDIJS3w#<3-zxdYXNWQLnMVKXTN)y}cw{TuIv|jgn!_QAZU--vK7{ zE0E`?TNzzPM~6DDFEDxwOjbE6#T1PrNm7(Gv%EBcJ)b_Y2_8!&Z;berZ(m~1bOeN3knCJ|FCA%BU+Z5{j27CL ze$@r`SHzbeIXQ`lGos%oKS1m?f+H9rNPhl&@rrt_l-g{XaUY8*5C6^EH*{5=895=l zlT|J!tAQ%iG?++0A94~H_f>&%$j1576@<1yfPOi;i-a~YmAAPO6aWC}QxJyZ0|BlO z)LlslQ(j(v121sFii$xtazZc1&@bzk|Gg=z4CV&K9CK31e5!QA-&5_qf~ib?hM^?I z-6l-4+GL;>kE6=)7+tx7Jl^i*Het^b-g|7ssZKYTVq|!_M6Bc}k4Hq+qxKpcl9KUd zz!I3j=O1{*)5e*<{4j{a@W=kZjPk{6geiNo)Z8ouq#)FiUpOAZ<1OLSWwcP<-#+yk zLchJ`lG3+QN2nSBBcVqAWwTJFxY6~D5-8T9r8A*Ol*V{g&j;>GQ&>FL^=vbm0Uyxg z21W*G=pUr(*;$AH*CSt(W0ON6P$ibqZbH5>Xj$0tyYZ(?Mvt?mm%+nIsZ<(!+(?dS zTw~@MU`T?)!yUJ$bz0ow8pDGlBT;k2!u2|jnMyRwj29$mDPy$C8c8K2`n#`*0UEZ*kEkXir8%8MrOK z%NHu0CbZpmW$Ej>AF$MzENiGwxh9$2DDg5=cRvooM6 z8)NiEh*q64LkD0Y9>3fxOj+^hwVTLykQ?@Yj6PvOk=VQ+JxEDO|DXsl1Ew5^mA<|< zAI`mC{rW1@N*&O0NP>@X@#1^)aqk>(mjc(eWSI5$Sy?ycH@|M;iB<<2HcwSP4iAC- zna_q9o))CN0{NT*?dEO%(iXRiY#`Q=X(86$7HMHgx&Ad7G(H0AMC1_a02L;oe%izYS!5+wcUV z#(PFAh%Ij<=;ncjgT681Yu5MKn(WXs-p7VLul(m^fSufg;SCkTLn=|LB{v6RHQEsO z(gglHyAP@i#>4e@SE;<8tf@ZJ2?#KFX)(or>exFQm=a68=ydyny;WD$*T-zLqu11N zmxfCCEl)Y+pKNS1b=?1s5tN2x58fB!}=Z2zeMPKefrOU?YWAq)1Hq@?h2XE<#Q zX)@l&X1sCA0=b^2%ujzh?Q(cwHjey>By&3ss1))ru&|U2;17=9 z2rOGMn205XsbG8D;kVpzs|03|Vmw8Yox2>Zy&&1^SXsX;to$OIe2=DAebLnDC1gKnTuZy-3c&QY|(0K_m(S@vyUZU=2BtE*9-L zR*;+`{g0Bikb9)|dUZf{y80Yvx2IE*Frp;P%5Z+uZzChdbnLW`mO-&x=SHaztT!;+ z9?pVqWd};BSP8?%&XGUj7)C?s1G(=$c|6s^Tb9`yPZ?~K3+3b8L+tU0z4qkEh*06761vjkzl z{u2~hjX&G!>E6gk!bJ*pMu4ZwH@=6PsZ!eP2@kXL19{Es23y$**JHH<4n@M} zB;Rp15P6dvKxZi{TrjWjFD5vB8MsMNje19QE90XCXt=%K`W=m!80|KQ`i3Vg> zs+HM-&3MQCW3m{k_3w2(vbX+mnHGbU8f8vtatJ8#h*zl_{s}yz1>%PJ=`8e*hsHtm zdE3cIVyH{xY|3KAq#^zqWa}#+(UebJ9{{J4UT!j> zC=ykHAmDPgiHZN^30s}HZa~9&t0+1_( zK-;AjieI361jWLykibljvR#)x$gB5;H3m^F+Mk% z33l6kw(0JN>KZlFZlXQPvvrntaw`=;q@`GEHX?$dE%*TrfM?M2oyfB>1bEtnw;mXlc#-5~PE>sk93tti@o^bB z`H_`p%jM6VQFd`Xx{Eb5A5IwIY`%I3orwMb$@h~`!2Qb8JIy|A9e}AOosCL% zd~CG88<}@jlP}eFjOhGjQP@$y7>y3QZ1LFg;|JVmSKb8&2|zm+0t^Q~Vzkk*3iakosDkQ&m<=D;Z*| z+y3I70FeaXQA7c#OV~7`_66I{t_JQ#Im>d4>G~#slVUKe1g_{80=jnLHiZX%Ryk&2+Ii1&(B?{fx!)oZN9-Z_K$91t(LU_Ostawh%*nljt9fU!BOJ_*rVD!3U> z(VQp%>(p#40?y|n@&49!5ES>H2jp%a-f|=x9u3Xe*c*6r zMAg)Gi2iA3S*Eb_o}IH0%pMK&<+8it)(5_Od-9_rUfhJ0=J^Sp=H}<3Kyv`aDmGE@ zA7zC0;3~09>@BY>??Qm~o$&`k!p_6ADRHUZ%^l;p(}DXHIQTdZQKeFq>5)rcl~&G)M&HfJEt_$+GD^B*6w@-^O*$SE2De%L;`rx3&`JIEFv=yNcgYzMqG-)uiN%Mj$`Rp=B$j(aox{Wa9X_x1V= zuB_96%By#E^f@9h?DM0gB|4*&CkqgbX|dFr2B4;NV35(=wIR~0R8y;VqI)~Vz-(0& zA`!RIPA==jBhvGW3C88Q%MJ#xfw`j#(JY$`I)ij_KDvxbvUt1AbIVQ0Y?A8ZtjO-~ z`R<~)##H4Uxo#fsy+A$@AIAg)T?TrS%6>ytIB1kR3ysCqy~#&O%$%~%*1Z)Kk#<=Pj2rWa3r3AfHS#60z_A*u8B zAjQSw9CLC=^AiZWk-`*l%9tOzFNJ+%aY6=iE{Ep89QW1LLnk7W*_y)6C`_qR6&9m& z6L5bHIqTwc+AEZGA3%$g-hY3H7eC*{fXSxNN5?20o3W^$kdi*AU5yEII~I0%FD`UA zKix@#9~MCE8)UwDfT?^?5QsNi>}arQ^u0deFo}_o@i)+XH*XjV2@Au49e?rMVPeU= zQu~w#-<(soO=HQq>nh*h&>Pe{|f+zu(mf<>{p7pRv8jA!-s z{WW1fS&L9M*s*_3hkx_dR;C4B6-*uQnE;nZ7gMMKd8P`v5?I*x$FHZ#)IM@b`Abj? zskxDQdoy6u;ddO&X?zue)r)9~V0>5}7>!$VxjN8BCZ70j*JeJTOHb_BcBMKqBWUUa z#v~d0D1+wP_eeseD$V1l!tb#Z+47t-o!c)jAz$K#QBXHFb3OUAbRd zCPx5-C>%x`L>p_?uj0BXw25c8x<8}9tZ?)FM$4Bb@O0jOsL68`S*}!rtw^bGHJ z@e2)22#&6c&pm|3<0==lDZIaT3S%XF%qG?+*anw3O4q~d-O$lVQHAIAnf)^DP7I<* zvd#1bN7}y`Ss}Q!EY?oZ8n3LZ*v-+reeNzA>g)dzCIrR`10WfofI^rec2)NBNUaW5 zY;nK;p6*B&DN!>e(QVk#fwIaaqs<4KcU&4N_tp(S!CiF{!F@NDFG~zwjD#OTI+OXv z+FD0Vp(2p+zt{CPBIgosC59PP2~?@=%gNM#2R&brAVLk;Q|rLBVLxJ*36gj~?p9$! zF08M+y1Eug4}>5RF}+hr1uMmpfWi<+2Sn6tq-QzsBkNUf;;vO`#uH0VJCaMzh2_@| z7#6o4T!|$KL;Bx7gWD&%>eb#XEJnOCK!x`QrLfc2m)9IY4wU$d-L3+8{To}Kq@2KY zcRP`jzEFXa14xcSp!}zg?^Uc89IUMMWPen?C`)(s`bnxL%s2n@Gh<{}s)GfVfqO=M zJ;z+Vbpkkr(O{(a0jkqxW#UHP65xCTT^o+86lkQuMf+cd25az9=?cxjKWs!RQ zXuyQViJ2R(#Oc{UDpy>euI^*fl+H}Z0Ob=eY;`7|W4ONO3aA=YwwWk%;y^`la__p; z(fp#zboCj-ZAKFh4j9mq0kEf zX`}URQIE3=wC-@N5Eac!ucpW%s&p&A83RMPC1L>d-#kuXlo_8)aS4n;+KrV$Jrb^G ziP5kgt#2LfA{Yb&e(4&XlvOM@~jX=+`c{odu*;BCUrgfRQhr zu-luY0~g?WuWTUtT$3a1|F)0vU&2N0+f48Mgyn^cCqB)NhiyM0dA0haw%7>!zB!_w zt5Zu`;*e9R)P{H^Md-WP-L9&)dYrX+Tu(VaONF$7&WftIHP1ZKDvXG&PydobRS75@ zq>^}(rW1`k9vY)~3QzfF6C75S1SW?TVp z22m94{(xGX>*WRAo#9>D)`ul|tNGp*?~)0#t?Nq6#p^ltS=KvW0BVzmLG~?F$PX@Z zg6gt}Ovrm;!`Wr;s?Ngv3?gU5gH+Rc0SRlfrI8v|qG=7(s@ zhPxN%TkA6b*@(%Z=q*PYz(@XCs5C~>N@2`EAc}b~`elwCMz#XNoAK2BlPAoM51MsH zYo)0QJEG#+eeA`iJxq9FsARKc(zq1@6^+0{)@rcv0V?$mA3st%a^?cC7l?Xt0FUKy zbwLvlc}d#ZT0i~+Dk1p4s%~Jw_oWDxLC4&Gd>hal^8bA^k+SMtEd(+kOux=j6YvK> zD)tFXK;R;=-|WX#u-^N~=D@T>MkZENrTMF@iw)u7s3JPrFTkoKzhOcZ*ozxk3pLhd3Y5P_DJ> za>ltts8^>KGPW={AIx?EZ^=xhJ|Yly#B--In*;eTpx}TVYBK!ObS#f=JiQD+gU{ki0Hj5wq`(v-%k`%oamR}e z9%*r&`t@GL@!apYhZZ1ytlUR~Hl)d@$#Ek2zlzy8wEsiZ&-=Py!VIKB2!Sg*7iA;r z6RP63Z6NF>V%kG)TN0L{!~n?8{yqU-r$fG%6vrXO;EMx|3#0YlRDFE52y&lWm=cL} zH0WcXH1siD{q>sI_CoF{I7UNdjKTII$~mI%!9q>f!PMg)3ljKPe~wF~RA{)kL^r+M zUi^ICyW(}b^YyN23iyt2bX;D7We8raNzRY8#k@j}NGb0vu!ApoafILQmQk8~C#Ty( z!4BPc?61xzANuj*hs8pZ@-8FMXS>rcQNT&4caizf2viFj0Frrp;v2lFG35<0i^G>7 zoFp!ozzd_iqCX~yQHh{W;BA43m1p-(ZXBN!mA?skW3(BDdwqTVOewttkH0^eEp&d~ z2HVrR!@w>E(NsOj@XwY$INziZvkiy5;I9WBDnJm?*8Q{q4#n-UeAE{yle#3din>HU zxWh-ji{-AgbK&f~&9u-HoM{&pl|cZ1EqK#`*VitEWcEQMZ@>o0-w6p+j?|IJT(0rG zpd02j3+SAi!ylp7t9|2O#uWTJle$pIEl4A`-GGTt>0XfX^*2b8@Kw(((?wj8LLjNV zuO@E&jlslJjn!PTJegSET?=m*C@(B|vQ(tJ5l;hbVEZ5jy{s{_1}=-o=bV7YZz}P; zzYl`6dCFhQ0eSs%7clHTTW=jn@@CqC)ZJU!;fKSZF>45Q%fe^-$F!=t_l~+`jR6Fh zNG}-}oYgcB69LnrHwW!Y74w??{S(;UCrdSn6ya6CfZ50m$Le6ggr=K8QYb|88yGrc zX{7ARjb}0lxGwOuyRTMm!-Yl9327WTtC*WS*6?&o?$QPQ5JA2_s3cKw(EvQ_JYK0W zUGOg#V2Ms%B`AE0PrVH7$GSlCdLA!GLa_6YS?K!&PLnAX#GzaQJs6~OFftJ z>_D6XL|5@)=N`9LsY9)N!3u%vU>t7Fn7N|iB-2e4w(3Bh* zf+Nw)tVN`28FP{pa8<~IbN&{bb04tu9UXH$y}BN?3iRKG8y^5wJQ*&QDaWak>UqfF zy><4~viWZtDNn_GSao^b_2E+bJeBqLWCzcf`{{S?$i0E+_p~n>Vr~45mpsH*-z>n& zgxnL4M;**m%ex*o=5~g&)5bqR`@Ua6A4(SMlc>@Y#etC{7o}$d_$dDZd-7IrOKMRuA^o|I-4v#gBh#EG?3E)*J>n z`P|AC0BLe2%w7f+Z36#Bm>Z8TRY|}l_6eRzC!Pff3&$84`Zl0Ofl-dm@na-hqp~uW zq@<)!@kEp7kPHyX$vDy17S~heiO!+72~ctP+2cf<_ODrI$;B?6Ixy67bR((RYFe{0 zZY{Lg@p1VaE!~A|7da=mn4UR=rSJh_!~(lSr?W;rh9Y9T#ldtT%6s6Ehowh`YFGgD z;|96pA*97uR_kVF=tBZesba|deG>HS?D14a{Ow@5b0Ghc=v+j4Wv%#SMYnWOh2xe3 zyESAx>L9jHvS*NOrs@V=wM+}tp}DNfT(JlOK}-?2m)uT8JGUfhy(XAw3obL4#0CFN z^!#!xPdiUB{e>vf;Ar_iPC~@aju|+k_3QlIXs#aU3Nk_7tT<5nj{m@f>Q(-ZixYZC zB)Y;dZqexp5`V7-S;Yt(9I4PTKfTaEk6~zJ9uIUW^n|h~LCpGMws>WXWUvK1>o2`l zk)7Q!8Ey<-9(mln+$z(`v@b?M7v1p!#w2^93_38P^&8b!+RPzYnT{p0?cs9SmMuSX zp}^0Cc=c|7nucNJ(m=Tg;rJS(^bbl$>3duiV0mN%g6rp=m8T;KgggMl_RHp;%ybZ`p6HcA(jNrydK zpcb0afWe%ShbMv3_Mt$fvHhX^?)v&itp;>zkAPct4Z%6)kYx+CnSAhHffB#T8DZ#% z;+L5UU(X(tlbbzaEY4kA%n#q{>(bu7N68hm;Co9N3)Si{t7i7zQ$Y4jN@6i`ky?^g zpZOIKaC&b)WV;b9fIm5X{1YpN85hCNADF$hvaghi_J>%8mKJ0jRy*H27(-l;&okDHj-=FVax^kcAlY$N>q5cLP%kQ6nbg9AaXy0HH#3^()l!x4y54i3Lv2YEjaPRl;3f-TT4# zTvb#nl7LsPTUWpXBnP>Fz*TWEuih@2*cq?#3=WM@BIiMU?A!QN{EXV6gL2Zv(H8>x|jhyd(bg=Lx)jKtV z9jkSfo>p;a>xu6;@MRX4_l{IOk>iW$Hg5rI$O%H*{pma4`2&4GAQ)1rLHhP{@+Hs- zy|}(Y^fVp+QziMtSN1!__%-pBY zM?obj!EYn^E_)A`nw$>so?U%(bke(WDbG zG}X9!u5GzpLxhmFuS~S6Cdn!#6O14gK!OEe)M4QLAfO;8Z!jFYxcA^gXi16~p!z_d zmOH$5@9`SS&>p>QZ2Xw=I6!_W zPAKXR3|jP5`7&vCFoi2u*BiBdQbJ8B;WcfCmEg?3awRG~2}N)Sn7VAEGmsV!amjK{ zmZ5f^_80dJKe&J{kRngC{lK;L!FfbH2eji)m3{=AULQjzz5>Oi$aAMQWzVd(V={lT-f8-W=3R}lx%t89Y}3_Z&MGzzjg?%KG=`|@&xhuA0XTxm+W^0}=(H4;zvs2z$D6y53 z!{vuy;HER+>@*-2>#FpAM;HX;+KOdb?QF$$Bs@HbrQP3(d(lLYjDMmo-uOp8S=VCm z(sI!c5>dw*it&nZSomf{5}V?hvL254R#sD0KMd2yQqDUqLYz}%a@;BnpPY2|XELB2 zl*b3wFtxhd9tc~gs@G6limfn*#n30Sc>uTaY&e;V?KjWK^2Yws6w^AVLgD>sCq4%4J8$UVSS0^J zH}q`mBO7~_+{%4hLlc*Lu@hG^>-#LrJDXSuI$KqOW{-~VFG}%*o%oB)?(2LUQWejG zROB;Xni6BFb0ty7Nzl5ecmNROc{x()0(JG9)fow1xAWez-Ahb6c<%71NqI6`$CH{` z9;1$~8NYqzamN0IiEu+=FTa#xTJDwzf%JML}OJLzWH2$P~Q zoF7Oo1X12!r^Q?NlVlR&8soeTZ9D2&?7%3{?rHUX*R?V^z?vt!sP&!WTEIJU%yee!6ms>(7E2unX8am7Z=5fsTw;6I8(CbkB&~J!xt0s3?Ck7L75-fj@%&fZ zyBQ=*x_Y$fR2(mn3t_vdgi$Iu8lqEevDK^F38h@^xa+3L5bI|3x4-wT^ zQS^Vtp-u)-nsRMktO8$D$YAKRHayIvXkajR`Nzeh*)fe~9tC^HZ~hTkbhEX#c|2!w zm!sfkaY{@_=vKcJUvw2lF;r;XytA=Bh7Tz%hxj> z!RPeyXG~@O%S4u&@cit?mtHT!h*|N78M3@Y|9X(;QdPT*MV{|Z#BAqDTOLF#prN6) z18lQEt#Vm3Vu*I3*^!L9>Ae8`1PKhCbokYzP&o&)<)~3vS1xAb<$0m-WO<8H(Ze4F zri(q*WkEfa!u@GH^}Lr+`JVX}37AolXj?c+y{zigcKbOFj3gvKFZQP9X2Y3-drcy> zOZq+lVI6>%W%xuSr*iGJ^VvY1M#sCD?ougEpY>k} z?ws1i-i@AsBGYteqWzeSGlMHawn7q5USAZK7kS`AJqsFJ^$;#}^Di|{*1~Q`LMSTH zVcpPve{b(H2+*mj#WzG*iRu3L97KSV5IxnD_^xXSZEG`Jfl~pfBW~eb8Z|QYi6tnPob1!>Zs|4e|ySqb$bDAw?oR)6a%mJ z;m@Xb)ADcef4IvdLR?E8%1u#P5%j4qN5>pL^6uX`D^V!MT>R%Fs9V*L-3tqdPsREr;p?PQRJZ-}j zIxsx}RR+@JL>Bi(Plkxym5UIs%veqy_vrMO zyu`k8`bYSJ62ciELpO(GK4hQ3kl72(lO9`rn$w8p33kS1H2gSq)Oj{IKGUCe8DFZ6 z&iMLslBq|tDHosn1vxYGC^!tUU^v|V2@>MEsuZPCNxK$=g5Gh0d!pptp4xtCap2T2 zztNe)PgfO{vLe-z%$3%Qvjfn+bjOaUsK)<_ZqalmGM2wH%=4w5oZ7X+VE#W}{J;}7 z3m}q*zmstaUviH0%Sbo4E?R_BVfY`u&MCakE$;R~({?9mY&UiqG*)A$vC-JJ(YUeQ zG`7t)wr$(?nK|F{oy)T?d$FIawcdBmKgRft`FX7^)2_lq*m>nIe$pgkz&C2K(vl2< zVit#js)C6!=!Srd-BP_g@4G?vY={ZE+JmAc;_Z^H@;rxKY(_EWIK0oGimbXYcQdDZ zG`;;%Y8^>_#CV%ps=%yC4Nlo|+h0k+9^T7^*gSNY;eZk6(aBy2lf|i<pC+S{#!#(SYrADbQjDrbjTgx2o5J+LdQw7*!n|-=CqA&{O zUatR&9~9{OZcLkQq>S8$Y;2tU?2Z@D(PZZC;__;#Vl-jDu4J~py+62JoWD0~ zE>QSP3CpI!5EFZO%76T^;H#O87Pp|D{CfIVXMz>~SfPJcatwTz>hWs>5O;2mXm?ND zhl!aItGspx?D7;;!#MM8wz2JzeB00i=be7tLeu6J=FZ@&3FMBoW~I*;%#Wxs(Y}J0 zhJ;kupRcBH^Y=wxP1pa2hPkwKRG>Nog%#e&LleryHMejx^f!lU9DEBMPp*%WUr!22 zO{Uxu=y=4Rt`$epygH_^>GtLtaiXOK&S-NR+z6tLagbc+>Rps+?3nL0TO?jjX)gNF z$J8{!gOS#Ej8c!F8#QGB$!&XpLtDk&UAQ5omI!F}Yt<5uLHIL^+2w!65VE)J-PIsU zDq2kHbp*BRPC~AMRdPq1*qj<<(pMbScM+^rWm#mZ2D1JDoW-;=g~5zoK%Z&aVRrO=c^3 zO4S!c)qF^haB&BLa92!BtfH0%LGV<&wLra=x1D}AYkcnZTPtZAcXS7hLj6QlzkG@) zeV#@T;r`+#CTnSXOg;I{Ka!o6#zFEM+HXNJ)9f}^WW{-wr%PVxGsA70&#sUCLyG6K z$y5LYV7yR=Sf6Y&(m!suHHJSSZ*NiMZ8~NeZZa(*WOeh*Rj6!&6e29PJcN3Oa*t(m zQb^9s1)W=T_v|+m(%#Mo{3F%D%Fcxj*t|rsFOJYP;-wA>6x^ z(x{^l{@O`Wvk3mfJCZ*d8eOvcqOdZ z)gzbxN>3>d&uaZ3N7lfUdTZ%8>US6lVgP34k(7ejH3(Wu2~$1b`qh4?5&m)qEk<;)uVG>aca055Nwo@PquEt zYU9*ra3XKdHG1PwjLPbtu7^CeIbn%LE^QBvM#RLV4e$Lh4^2zAuyRl6Q6E1`JqLcZ znw0U*ncs?L_Z#i4cdpZ6%Ja>XBWV%_x~uVc+%|(VWl2(QO$3FQx_siF?*Am1+uTGE zGi^RfZ&~v%C+JL&Ok~jTT&?;QRcHB`UbEqBDoxWoOTMsgM0tYR z?%hclO#V^AJ7+eAqCnxbO~c3J>447|k~a3kmN?2IY#lQvNkh>Jy?5)`)}|}$DVW*> zQpZKLdlN;_FKsV?ViI%R%*tqcrmBt4RmzV$B5&;U)DSIaEyZ6tjwIL0I%~DMCgFi6 z=-!^hwt4?w<*eQA_nQ;l47u;1O?j&NfzB0qv_12@xJ7ASfTWtS7buN2mCdK6@fsTt zm604#USCd>Fi3=xo?y7>ovYpX;BYiI4h}hP3UG^PxjsKY833$_9Q?9}aX>ak=9cDP|otB2^p6DE&_5xcBKjH@DsM z>|waYvO_#w>ShC4s*syH!pch7RFOi&36D9Gfr~$Jv$8Bfd-UO~Lejm6xl!8+^=KUr z(md(A5TUO5NklA`hBib zY%4cl!nSL~16#7<6AfkL9d36)KM*tdXZ*WI%YcTZj{DY8Zf(n0 z6SSj%`N9HvtXjJ{Ds=NLv|Xy-F>h5QoGoUw;oyI8|K)lo^1e%C@Iq}`{LfizbcpDW zNIH~4RXjC%h&W;avU2Iv3xmcp$?NSZVt)*#ChlsJxTM#U%YUFs^_>i4E*TALxgFrj zUD4?98rygDXy0UOf%3rOGzgZaN5xN{E>>YSoglqAU6plks3~2xWe1yTzA{zcd}C_p zK+gH;mbHzlHGh9vb(de*%o2rmXz?cvwJ~+eEAJ-(5e+O7Xk9CV8@{Srq!j6xQLk&SB|+48ep` zLVcNxAneiZZ{D(gClzqMZN6f;Gq`-@iG!wKj1CNm6$=@L*q<*fJ`?bIm`rbYlqyRq zC#3B?KxewI!>=72NSY}(fo2d{_9yd}NYtalfjFS(Nm`VHMy^O1fx#g>wYXUA=cPtw z>)>oVEhIm2^mias2QQDUy*LKGXyC>n| z-aJ+$ouqU$pCXf9T&aKfb)i;ML?!~GmYPkp9VlU@id7JGbabk!s~f$ZIYE*(DNhWu z(H#!2_FVco!}jWNyH_Xd%oBzbd66mEOi6@r?$o+jUX!MIRN9~JHPeoVfL}KOq>6}i z(>c%a5*)8Y#qmyVuCBK0|6smxr~cP_KWtBQvf2)8U9AE%;QJC0!H9NzTszh1H+x)Q zE~DqoG02%;2;U6_<>xT!2#|mnE;ZP`gMs0xHCpTNeKXM3n$O0Njs63l7rOnp&)kN5 z?G7tkM452O2jvs0NCf7@IgCYUbu}|8h1A+&cNmA=chN5D(+V1Rjh zT|f`dnI3T*WHH;V)bV5yHZK^%9S@$01qVePH6l*Vl=AkMl!}Tk8qIplKGXo+ON=@PYsf4M8(D3NR1Ekir+v~z}jDg*0i#?mW-=f0J(W++*DAZj*h+>%KVOIz$SgQsU6i~hq z_<(_SZ>5zBaN$NZ?12vpY#@d`GG)cY)_|EL_c8E=9L$9QShL!yHX#V{hz;s_ScL*& zZ@JzndO7QLxD0xe&ggU<8r!UqGt6M7Fgggo)clx7wv2k0dd0#cFN-wq+Wk|eba!N2$N&+2X8!v-8O!Ot zXGMcPI`4H-j4;XcZjz`lqKx4opdC58xvASD5XnYvl=4kPn z#FC_xI22_OEF9XIS)LF@ffb~6`Ul1{aZ;ZjEIyr(F2NA7)ZFcR0V?yTTEmLe&~t7mjnt)U>8{fE8aKK z<69Qa-PsS`$0KGCmxIk}fdx*>_iI4#E-T#pN(VIAj)h$g0FsE!WI)+YuM(SJ=8erT zyCL7;$b4&Gtg_1KWO#b5QeSN&Cwn0D?sL2ZyTjUzLV3LeA5D^~J|qnwnpZIy`? z(73a@Gy!6)+Teow^dpR^(GJkRVPt0KMbX&AxF9K&6B0)|p7L>Xw=m*-+M+~vX-M@F z|IY9S8zQkhBgd%r{f^Tq6*mu*OIn7MD_^g;wVk4!B3N+9J9g_af?N@>pN#Y7V_0*^ zF~~dbj9A5DwV;fr=8%ELb>9MPVGwQR585D}>uZn!3l6Y5fHyQ5`wa;g!`Z;AWwh!I zt{O2?lsc>B2gPhQP%XV}a>29TKQu(kG*EBQj{+cbk|2+D9#}1z|Mg5x#)7xvEn*Zn zfCqv5{KDc5i~!nl;BExIt1STLeN*^=CIVEz{J_~$-g=`RP1O_tMr_|^t$6MX?+M6d zF*nyu`D}mkG;cuKI44dlz-yHa8=iu}8gTCR7bo(1UD2;kKV_;bw2DAzHP3d;&T{UL z4WuneVkk%oWt6-+FEsiXig}d??q=6Nnxv~|aET0dPY#fY%B)REi;rN~3`DP;ocyRP z1&`r8Kmmh?q;`&A6#C{x+ld{3T4^~G$iS4pRa>e$kbxLkQ)?|-!b z5(z2Vx$>VpTA+j59mmtGw!@lJ`64G`=-MJ76e$zA2!`Y0eh&>vv7{^^7KeW8&eWjO z<)e(7r=73z%iwX}5k`QK=mC_dH+pV{4FVioHb@wGTecl92*eW6z)@}wp55w` zc97TyJdO-)4+q5_TsiLU?!Z9i{`C9|7tY=O`tsOvJ)cYvzejv*2PwLXQ$JZ;UGeZoEfaU;>@`*l#bi zVy_u}SvpLs)qzs)q41N0mtZ4$_vSjC-GGS5 zI-c@ltM(}P8-dwMGHVz}xeEnAI2l|E(aTP%^&3_isKB@U5qT-?R`>QyT3TB#!wu@K zmQ%n#zY%4p%)a7tIuKD0w2&OXDQ>|bQ=*mL5fv>n*U5englMP0W-gjU&wuSkg3>>^ z`m^z9*t1+=Wz@KHVG!bq@XF%qz&6IOY}uUm(ou4(MA#4lATw=kZM#GB3=IsnLV}Fw zBr;lc&0ik3ZRKOC?<HWsZj(IdssDF^CRgsgEQ@=Sg)H97L z3+L-Q*+>Y2T)1ds^DjBO{NPHpYfJ+!YqUmf`owDBXNTZqF_+}<&XSplc3~Qv=juo- z(>i`VGa3a4+=|QQry6xSfIT0|;CaMehi}A;1R&aNP_PM7#{iSZ%owahBco!2N>9*%~B`a)~Y=guMN5Z}~F; z|60O5z#j&dtYkEkv7L{{Bu^#dTMx)6dg^LZvtciK%PEo=)wf$DizYwmQp-S#lUP7L zs{LE1F-9u8XQrPt)C@&H)#W7F9QwHXu=(EU!>pwp?-@xeZ zj--PcKc}M>eB0e&m?W|NQNd(GnH;m~R)KSzK0XuuT>y_TysC#-#gu-JPJB zDV;MgcIhFX4jn>tfDO?7dJy4-gzpQ$0U7`XZyJaFd!NL7;2VzGHj|{2R*XeLgZ;!- zw&;Aj^~-@r=7gw9`pYb-hd@igG!GsC%}0ERRh%X%O6P)Z%F%~}>jZaE7$%(#r&LNk_e#w6=#9L72HoxHd|im5fua=)+lz=L4%sMJ_Medh&M5$1`K? z#pXw&w!)?E^`-fs7A|ANuy$U#y{6XY&Hj-WQKDO1)kHacdv9xSL3cdeUvjuzQ382L zW32d=9Z1dV1eW`l+vb@TL-ZAoX3LPL8q5r#=h1XmU42de=zj|nBk%8n;3t-kUq_AffK=D0obYYwX8`Nb;#Y{hvQSc& ziRsZYcuBPV`J0!3dPVN}<+=VT!=j6AkJyMd?Q0`6MgXro_PUR71KGW(8zfB-blz#gVp zFh@rZ&YHPa#@A8;_)ABOIHxCPkc@5S;@#UD$!XO|Pv}d$7`F9>11ghv)tRtCDU`RPR7zv4-qdOeyU`;K3C5ZGC6ihmdsaXJn*Dm ztZ&H5sS{-jb~sd_F}1DU;DVF-Gy7cKHi=^haEI`-=?F69D#56QCKxKx9g>3@89)FpOlL3fv5`4VDS8EgqQZ`RDQQM|& zYq=3IM?tN=GrgY|n9a+lNoF_V32QqByZM(>LiF3zM9b98y-R^~l#mI~ zwu&rGFTIdTD^l<0(lZ&66N!;W1tz0viQ_3OW)O1JURC7G5WDf(=^?=XK3zV`GM zul0Nd<6#fpU45Wh9>C3f3W`kd=t=Ng3{mr@Ts`N2n)y~d`PLbjEaxd@>4(0P+7{>=m<|@O6I}N&xN;f0$Fk-y*|49tt^#ge{%BnFQ

mg4Q9WluhN(r;fJgStL2NT_4Xv8X%^qu7n5p5>()^BM0+FfEsrIVvjGLOM7=f? zG-1HlC07#i2@Dur)ALimnj5j|fQz8V4+c)PLKhPJ^P9N}$awLRrFwvna{y@cu7;Rp zd0&Csg_g5uJOv)_i;p!X!_M4aiv@?8m)or)+8>J{O_o{Xq9k~` zw4`?wrJ&lpte&nGf9r)%*e{qbv;Jb+tucIQdCtk(iONXmd~QzmsBNh4$NU7&{%EUk zk=Lo&a1ocsYrsom@$FYgMaD)?D_>&>w);llaHKiRVvL7mK0HZJ1#AT@)Fd()0$YtN z!O*|hYZYUih~w>Ez8P^L8X6h>88`X4LPo}KP$NWBzxx&f1l0IG#pe48zVPp%_xF>h zV9g~>#Mbo%ExLV4aBUqO^9>#9<>%GzhG}Kemq!n_jcx6!mLRt~LdaTpHqbq|rE#Y} ze`o4x=LvA+VnbfT^4 z)y)vj+2jl5n4^67Cl8h&;op-8ekj{nd+{^BX}>RH5DZ$}-r`uIZBH*J__P6e4b>z;egvpe-_k=teK@?fd>Mc=!UzrWycol5 z-beLsDZ-Z+*8jr>&Qmb_Rj{>AoX&R&7+b>0muYh3$)v+}0Cw9P2qy7eR&wOTe^b^1 zu;}}>W#?78cpDipu|C{bC8XtM=ib%T%wNBLdFZGVPeUjc87%nP1G?PP{ca{XkG?eM zlCYVL;16G?q7uxSvB%K;TleOhF|42S@vYk@Ga&sB;#JvGC$;&1a}8@KQ$^dnzuU?d z3;b!HlO4Fd!NbbTnTWkZ(XRCSwz&=;=*i9NrkP5`qOF{VYq`vBaL0o z#o68W3AxLj3Q%jo;hNH&pjp--d?4MLa^nfNwSFR9hwbHxE5!0)ZDKk$w@wKwgWww} zd7>9a5&wA-uNhNj%YB>h?c3X{u+u6L>s31MXizSE>!vN9Xjq{)YbFwbC%1Ldu>%*bz?%d^ zKtKSHBKvQz?Y8X>^`%WU^W+Ov+dMcx1R-TxH7gMdOPtlRTg3$hK2CU4jxjx}b;E;H zy1iEpsqy7?qHsBCh3pBL8RI*4nSna>vcKJf5ey;1M8`SgqKVQGRafD}WGKMZ+HYiY zbT5cBn!5!C-b|8HYPs@Ra)&1B-Vnsmp0Cwl=p37_;C7COf+sT@A@~uoRR4WBY|mmf zw{y%%JH;eU-?4HvGXOHbv}&bZ#+*J6`0#zF6(@-iDF*I8PuUJwQg~ z;TKk}ytsr!C^nvZTZMJ}4#XSEZ|Va?t9GPR-f!_%FLp`E1Smsk?xohg{^->1nX5$J z98-f2)pOJz`A$QZWKo)66UacPNurJQulqPZ>8scK-jTH5-Mc2LHR5*5zdkR|;%BBLK(DSk~+1-C~m1HM$i(Y&e7evd@1uSGIsbh&=8akv1qh|PJ8 z{W*N_bGVp#f%u>VO+{CJ!`;IJEJ?A14^f6B_>LqBaWX&?#Kdek1#cdZDf?n-dn01C zr6zZvqi()_un{0eO0JdQJ)GgQxpBPT?Kiu+xs=eJ#C1$(_A~w&p*Ue@DO|OTucbS9 zy>oEM!_{4sIQk37^LT47K<-;ISSmoAw!iWMtI7J=dZ)u_#w)y|!W#{lI=*Nug)Ls9 z8*nlRcZQM$O-xMM%)t=mANcg*AR`%UpBNlQ!8r)#Ih`BbVdpnaY40QC3*#8|dq6Nt z;G;7Pq!tRwi7`{d>#2cZA*?1zd}yKia3<^Vzr961zaJ#HjJEO$Maq|=S!1f>8ogOo z&lljcj$~Apx6y~(IySt6M7Tiyld#*?uE~wBujiA~L?Bm?0I#-R#l+3Sb7}dG>O1?t zf+Bga!-^i<2Hv~4xj=BlEM{}B$Nw4HOEwINI1>A=`|-X1Un{QM7hJwf-4imhwNuMi zQ@@B{^=uJRly%zL;ZjS`X%1zu43fJilEpB~t2rCs0-Gt52C9&6j2w6#TH^LV7b*vQ z`PB=2;9vm9+uPy~RL|oeA}U{dbYMVlt1nteMC2`wN5B%eq~8E|UjX*XY^LP?7oE@B zEViE_^9%s^cDWc9R?cs4jr*cLKQ&&+<_*WJoqX;h2pv4u*oQx=j>!>i#5M=Jz?9m- zadxJpz;J5$+9tmBb+4a_7k~T3?;2D5A|q*(iecu`UD}*g{OP~%enI9mmNizFv6Si# zj9~uURhWx&Y{WRv0n5E4IV1F)6eT)?K2A6(6g*Skq@>`1M2XBxyHGJ}_M75n8v^=z zh}l#`fylANaiF-1tMb}S_B)(e3te-S0n&DBwa%7TufCH^R#ds=HiRCUnP-W7jN|`4 zF_zy^nitgKc+H&ylF}7@1xFnJ{5m*GJV3ZDi}}niU+53=V70~Rc<>X5SQr@r2fD%+ zjA1T8;w_r#;QV|tu%TVd8)q`=c0hm^R1|C-K>fE4mJ49ju(rF~3nq$}IKMcE!E}15 zZ8>hby_?A@2J6R@$GT?YRT4?i$=PyDtYXDe2ZQIQ;cXuRHDv4 zE}aVW43IQmY&V2JX#A%R@GQ-N!3LNhz1f<_#=bip&3&`6v8g;3&y`WBl7K9D>v7Ww%-~d;IcHb~j3bOpKKH%8djkJOZZ{%5*i$ zEV?ZnXr_u*>1}otiQQTut*wE+EcaLD+)pp)LntKob!6|7(Cy8DT!u~{(EgWM%wTsd z!4!_8LR;H9p~oU1|A)XieZ5R1D$IDbbo3avrXic2M790k6V~_3)OBe1!HEb zwE`5+zBnZrO(|_kuG5#a}DjwqbbPUWxWiIUJ6){bhMit(4bG zfXZp~XnCnM_HPW~gIuGX)qI*}nGx_|7#J0(-VeHpM7lrFents7yRh3?^If!9iPG5Q zu#?g!&i12H8QDzs1Q#NWH%Bi3ZhtI4kR4sA4Yty5{Jsk0SIp)QtOUGqjD~LZymt+7 zyu6Lu46p%#ukOYS_13w}W)`H`L8U)ta7%~JNwQ2G$Z%Lnf|+`G56%@79D>unZS7!r z+T!8cqVsIvs5719p|0t>UCjXsEErV)6@|}lVhJ&;APcpSu4-`nj&l7RKo3CEgHXX_ z8`0vHI8KSiKpmAqq0&BSCBXR#vwEAOGPiSpBP>W$Ld;cue>Q7W(|2lWIoM|y% zpI(nSqW|Dto;AJi;yU+EquB@(?9VEXx3obS?5Aj^lSnwq<#@0aabB$1cqZ8F<9L2^ zWAruzdVWUCYbEbqUPid^AMWrM!q#Bb+U`1kB;`|HBSlBW*b(iepWYiU#;~#qc=b$r zJ>gBD;}G``M8Chj{mWwhpKgfduG`3&6@-gtWZ4>u z!TnV<{bXyOSmoNObO0s{gXQkKsSC%T-TRkA&JqD@bXCDO?`%N4vJznY(F?5JPluN! z%iA1P>kUaWUJn+I_Vfs|yZ zNa=3p{fE2r$4L_w*~n;4S7Kj26`dTt3d~EsBZ1d%j&L>1uIkKYvsArja^bY{o6S3s zVO>v-ne8J|!?SJm^>CI8LH195T4thKt9Se0M}lxTR?hBA*(;GE0~wIi^6U(EYeZof z1o}Ng2}ADf3ciP=D9GibR)VKid_a%ukMniVD13id1E*%&!LOr&T+im9K%hBpEOz3rc^hAQM>8`wvX!8~U~CuHAU-Tv_F=A2=M+t2LwhooQA!pStyps?|Vy zHfxgAXAaP3+BI^smskmoud&-3jI$JU&2f zLxYuZoGzsAuJ1~#+vmha`-7jJIfDuB8a1WcSK6zt7O_}xc)%j~Ef5t56~@3wp`|29 z6meS$r`;EfC~3!(w+DDZmew5cKeckUi*@F4LS3N+=bCL+j~{T!E%k zp1LjHyfvL|JHy${UG1qbS!V?EWsL$GFMa2-y}G9+8V?7^=Y*sh9?4I-jRj%mJoi0=~P7?WR%5 zyv0nUNuWsaP7}7}ODe?bz>=%O=#L!*E~ss2|GWEY!)`H%RfumAtg2UO)ls4| zot-@OBV1gfR;;Pl#CG2FvzrV_!#nM^wl^JW2R+#}y%>vv9kyzBoy37{oPh+JkGA_g z=o-!Xa$wS`e5^AH>LOcb%%(`Vk8yE;;`?y3KbTp3wTDLw(dsy5{TKTjtRV?OrM^8-vQzhm;>Uj z6g8R+oxmO4eyk%3cDNS^olrOZ9lp@wVq!#06HMV~Fhhc|ytauJG56Q7prC5ugY?^@(A`Az-65-4 zG^>?~-!!K#YFK6g?=j1(K4;i6ZA_^NCvc;-w%vKh0-w8jssA#>!pCpii9TTMgVtQI zV!}ckOI4s#OhZ3nm_ITBG+}tmA{mg>apii-?)U45S|Paq)dNj}&*u8cLC+zo_V&@v z=GEau&}x0j`gWtCwZmj|7{zzouMP)_4xSl4mh&L`6ljMiSZD0EX`yz0jQ#$m+5Bg> z=WA`L78OQhESe_!E7DuY83}cfI|dR+7w~`Is33525>a2^{hBB4@DU7MbMm*xiuUET zGb*B&xvYQ7W9Sq-E1cpfUoGf6o6Z;MMgxgcBPL?&;|zTj+42H)XRfL{_pXktFR4=jKX82R$luxY&Vt|91nlX2tR0;c#Z-5!JcsDqm0&^Lu!3 zgN~wGohFv*;{_rGdqG`5YZZM4!3yON7LdgGdMPzruSI;n)s#>)>t!cO_(}aYUhR4t z_U5H3{+@YvVFADT&GH78sbBQ&Y<`T?LjMLD;2{<|HzHkJO)V{;4f>cmbI{jc`RXkfRz%qP=$aPV+*)z6u^tofZ z3JO(?wmj$|LW)OjyLsdHvO5hJiT_Gd8&|!--7NKLL@Q(vi&RymxYTBtdbOB_2MwEy zZ0oa`UT!y8H#k!uB2Gf*=KP6c;7G6Z_TpmWYJU>rrpSUQEknXbikxPKu2j7gsf5?Ad3C>c0Q5x%Ek*^AM_QaWQfoV-u!|v45De z4F&!+S*vd~2RAQ;udkuK5I8;Q3gxojf5H)|GA(@$GfqCrgd5v<5AD-J@E>dd=x3XV z3q{M-@m|cC6!O^efi(g`Q38LFwRgODP*$^D`E2*$b%yKJ{rzRT9F-%Ob7?MLlskLL zQ=FX8=hoso4qHvIs2pW-SS}k`$u`(4__Oq_MNNm`uUg5(GG2qz+!fhZ;ltM|3)jkt zN-a%Im%FnpbUb^Hcjp$swFH}6wMXm$_VQABMAUy6`dUg@%pDoQMY4bjdQCBLw?R)(;pChwqEk8=X10M|hb+TpUv54M+f`L4{p*6Nf* zy5(0V(_uA=RG6cS&Q3DAjot%&OiWCn&zf#-R;{-Dzng_c5)7xGJ3mN=6wr8wx&%=5Pc!^mh8=~4f$*+wl}z-8Oud7YwJzFo#dW_dYLw#zleFGe^9$DrON3_MbdNC2&ifQ%pPKM>E@JbRsMJA zWMwcOYF)5eO~qIG_{sn8OSaT4A%)%3gm~a5T=kL?Y)DAonDwo#u8OSAxjHp}+Ci^Z zRW+A_Mvfo!?XbOM+?=cSeXq%Nr06sFbtyUON(h#0p! zA{E`Kh%Z_e`_~C!GtJGCg=)=s#+GQVZC=vhl&X}Bm29N7j#y7Ml%eDKV#U)Jca>kF z^C;hbPB6iysZvXlFMOB%lXH4OqqmT$E4sbz;>Nu*xY=t)&;8v)klo|DmV;Yw%ja4$ zFtm?Pef@2_9LN%CqHFGK@lPXGNB{BSQ`{w@!NKcr&i0xN9@k}J=`uA^sZ6i+;|!xN z|EnGwCt3v}Kx;uXxLp^8^B{i-kcg)qZ&Jc#EvwWyKLSss_8Yn(zL;M465xl~b$zkj|~?LdjZRwMeYH z)5rf9k5BjiM{Tm9qZs$Ie$}+sd&jY2kKjH!BTuv#y0Uz8nk&&&h{&@1vqrL(!9yMB zEGcAEo#E3-h=Yw$!PrfJny#VH=dUh5{b-(Ty0%!?{p{dJG%5ckI*0~`>zwYJD9*-> zW8{w3oOfZza?10b7KHyrqF}Sx#DU+P3SXmUv#ZIU*5i=mgnUK+j3&EZd1r2+)MMV& zj1OIadJKqyHJXWaiNXFG2B4GGS#N|o6yK7sWa@BtN6o;p!MEk!NdpwTKz5QVnfS)7 zT&)0Ws`JZHKIre+Mnup$H8P%i2djFGw%KRVzQo9i@aNBLkN&P1#xef z>*b|S-*RwHV^iOirL3%MER$S@%G+}yJPi$W0@Nxck(si=@!ZrJ@7^ntHV9y0GHBfF z435^r+TNCMnPt-w2?$NTmxDjy7@H}Z!z+x9+t1e785o%?c{woVUJ9k(tzbozC$M8W zp@j}jTBp{{CFcUjkDymDpI=*rsizIl7ZNio-=eA!N4wqkPagBXb z#JmCEUNTK#fhq#z`2_&U5)g#=r>4e%ZDmkwtYbtZxcTXr{uPh!g|uf#G$SZodTJF9 zKi>xhK43Ji0(A_Nlb&LhIdQh#sPnmS@WZR&Fd^nXTLrzBSGV=Zj+ka+o`BA`zMX1g z(yv!o&^3M4a5AeHVcq1{{4Ux+%<><%$6dwPgGjtYz&Oz#ndv&^s{z(D4)5UC7Cyh6 z-rHfT=5Nb8U8^7ovucl}Dh6c_vuC;)D5c{Gj+^WZt_eI^eqOCoyt{)Lqi?D$U3Ph& zuH9SyI5Po^y)Le<^9%T(p@;xkeJO0#{X33z=%bwJzB=BVqG1JOE!Pht`P%M=$}}r! zlNiw-L7bjir5+5BapC|}-J9<44G;zt6o89#erd12ohfKCR`EyaX{O*hjpNzp10pP< z`q4akq!97Ww&^{aV2Ki!b5lnw&Z!@}CsT9|sjDwZQO4MAz(PXv}pec-dFOcJy|V`RlNK<96QB;eCt62rl7rT zJxTD`K)pqrpCJL=Rn#CFOVK3mxqVbwXFyh%2rS-S&H(4N+7Ccql1=znn^A?RTk%LF5^MFVf(H{Dyvg~P^{(QMKM4+|It zj#UmLw!9oT`3bgUA}0|e4`ob7Tx*DIe}x46K_In^jgOB{+`tAVSN~p$@jB0jX%9Yo zPGq2$>PLmqnJ8A`d^t^TZQ;nLQ-Teq{SbefV`oTcrOCi9p9ZXHzz3;%WtmC*T%_5Z zIJ;s3Rs|S*bPO$gl5R~gA^J1bdy6YB?wA=&Ck3SBCdlqs$cN+jTB88E~T^0*0@njv=`4|R=H+KQcm??7&97FpfY@|YLY2B^= zlqg;^TIX+H0k>9?&5aGe^78Viy5kOZ4h}}WyN`92^0B2AC+i*$Tf=YUj;&tUwmWNv z8~hBhL8vCNdQ;4v3_;Xj4z_rP_LJ^Z`vs=k)`+LGNeH*AGGT!A_^DWB)iZvceS3Cp zyFC}}j>qA!n><@xr3g>>^dX$sACPKXv+8&sN^rqksoK(Bv+eO0eq+LD+n#T^^|?rx zOy+z{Ux6-0i#L(ZDg**hAtbGv->q!|pP5#fsuO;6LoxNQc)a?-I!-P&*uxE_yQkAC zznnaT?97a#v?C9lx7zDSZSduW1ZYGxlffgwJYKv>DeO2oIcJi=6 zWon5X3yGhf-xvdpnNj_tHPllviaT>efqFP?TOx=X1ILu+f^Ev1Bt!PlTYq^Zd>Ga7lIk2 zVZGW%{`u}h!{vj9<=Ht^24#sdkB`}OW?RDvTSXb!5>3oz@5#mWM4J#>ao3n{aiJPb z6aY4@10qO&(mSwJ97sBslS-FsunAleQ7818h)F%@Jz1#94Z~y&R^v+|N zecP_YesD!;pBe2Nd6D9ee>kkL(kO+ z2#;_^RCLB#3s{QrC{TOWDVkKFjz3vZBJb~CLDp$+hS~Mzf_(k!HCJM#^$ z%7~O4jEsSiH*QNAdeDZA$n9gUGELbxyK-?%k%7?ZPAGFKC)Y<-oC)7~)W};=%iLYb zT+Ha~OBf1k4y-#Lot*O6T^tPSVRyMQJiSPXvoiuyQ^`g$Y5q-bsB^z=P(D@Y%ayl@ z2z*AwT}=z_x^h&l=p)?T4i65a^Np?M;C=RBeYqXxF2x*ySlhCQ@O#n_`*nJ^boesy zy<9-Q6_(q5*^@9gs^&!|RO-_%54V1gA74rC^7bNpr^7tn{MdN%u2oTSvA?{lH^sL? z#rL>0Y;%Yv?St8EOkW$dxFsELF{Nmk0t%ziLkG(Kx&Qv*`RcZzd`t(g^96(O=@7p} z^^S6%os){25)G4BW<$>dttT*IW{&;Sgh-kMdt|M7=7-L`18xZ6eZpw5pJZW}`mb%P zl_y{M$0AQBH#a4a@iyK?i?t`*GN@kNs!b3h6ISm&T)C1@PY=V=D1SONuW@JRNbT%z zJe_|CD@~_bS}Ki7`kr@QX;+1|)?DQH5KQfw4F$zW=)v>&ydSD-0*B@b#qyQy?-pTx zKnmv(r9{<^Jw|HXg zV=eST{0p&T5j!|NEF1m;50JE0~K4i#^q#a)cfS$Z(o8WB;EuEwASl|9k#ROljHA2Zm;B|hi3HD zX4bj`Tm8>Tzy1`wTmgejaAbV;fyk-%Y-)=7+4k-@7Ul~+0)F2=!N_+%#$&RcldA0T zS@v_;Nm+(qnAG6xsvlp4;<)1I_{DAETm}T*o5EJo7 z|3)_w>?h;Zgtk}-zyP?WPDxD_7tMMIX>8;$8cGWB_pWHA7BDwY{le)$v*Ha@zkyuq zOS$>y!?$p{#^v{|wY9aGjE5JJAC&?1fLq{}Jd zAy+eGyU-@@Ukl?j`HX#os9_-p>m2MS%Z{as;RN@$$|OZUV%5t8ww%h_Q`ETmz4^W=KTk`@D=zK$>O1g>{K(m3;cq-HLO9VUC3zgTDOg#H;R zQT+-(TRy%1)JROcsj%F+%Z!9;T1HW!{%H%G>-Mw9WQ&S4Z9zC@hY9W@URGSDV#{F| zqsvh#DX=8jGy3pvLozhFGwhuC9zHZ8l+bl97cBXSY!=QD2pSc|*=3>hoVLTTPeTdy zygd<-?Iie}x~gib>yxv5LQj7sT}-DJtayyPrx>}SnQN=0@@KX>C&-YQxwa&m#Emh_V#7K82p*fUzyFGdb9er-s<6!?kFTijVpB_-jG zo0cKLn=GiTJhLpb7$buH)Jh>p^gETi?)VOIrscs$r1v8{RzS)Eb(|8KxdnXS`rq-H zRQlyS_DasMU8GN1&8Z)h$oM=Loe8>zQi z_wS`?<0AJ^SJ%7!eFr5Yca!s_Ph@0dUznKuq-Ne#_QBI5K<1Fx`u!1(z*Wk{!6$Js zIZSS7yr;s!@Ac}?CEXeK3_zl)}n*)FL zNLSW#>2N3Ph4uP4S#zb{{%KS{+TBqY#~EA&1^y*(aRz+At**vWLCzrOC*(n>Wb9$x zCC7G`1UAYsMT#JGVdF7KexwDcMhS#QO$1a_RDko2jp!1;!dGEiQoCh{A3$Q?g8Tw+ ziSiyIj~wGWwZ`x7CS|Bcx}!uEuLn?hQZC>1^&x!H!#_}4DgBWXS%v?;q@-wvPC=jE zb9S$PHq^}UufH1`r19nG%i-wh>-z%(%CgqI(0(R}X8ZPkXu8U%tkP)xfr2#B-J(cI zN`ru;(uyG|!ovqpDx$Q-Y`Vq4aRw z(SS`8(aBDZJ^etCWN4IktYe9>RY6b+u_M>5_MjvnE{>qouvuA{;NIYWdyayVirKD; z28Rv%-jKau+i>pTlx5*lM^DBRFYyhlH2$Lt*Bv*n@ktyh4+8zKeM8csLhF|=W@Ha$ zDlrad!o_YKEiA@}OM(3HGJUlWICgVDiNV0gEKWNhY2$LUo0pnmacvzkWe5%T#ItSW zMf>#Wpigwf^-Hr0s!GXOrC|myhZ0@_?N4C<`O2#)xH!_UJCD^RtxE$xE6Ano)v~x70 z4imPWC0$#|JA_8ZThmVbI5MkT`1trZySrVf_4wbX+deu`E5-x{*U!DKCWftl*t=iO z9-BUTGrfsq;FA=*vOtu;MdCNH4^R4LWIK3u6>S zthwEicFG1ij+C~u&>HiZJ#S{M&%`mdB3tj=#-kV7c7r3~>vb+U#9yw~4MSsMx{hak zRfGv;)TW>5=|w_LFuh~Nwp+`nV&Ho*~Qo{TC zJ|(*jhFEhT(h~p^g!0#YlvPz#Q~U1VA`B)Eq-N3UGm|{kADc$)Ms`%mcHD3X7kkhC zoxXebF>~+D>X{VHyhtyR+}{H3?APX>Yn@u&qe^Ij3lREL;qKYsj}{?477AW0OGjiHSKTuqv#;d<#W zWMQZ!%|=$JPiqsNFCOob^Lw!oI|!Tf%aD>9yW!LNnl4F9>)cK;pmcTsx@ZZ zf}+O4LHj!S!R+r_Oy^wURyYmQVhUYZS6OgG&9mi~y}Y{MJQn)Wv_;dcPW!%?JyGlyp7wWMkOQTp2Q23rfSN_`}*cDS=w{7-jBSGjcyTw z)#9)9QYK~B?veZ)ITudA`vVr-nD+03{kOvE3n^(sJdvw*Ya@K*iDqoHRP~~i4zZrz zt=8X_>r_FcfrN281|L6WT-yCHsjp2b&A;esTt1z+dor%FJiC>yD?<37S-56kAU>8Qz#?|* zb9m<2TR)k~B$uhHdvJ$ARD#s^e5Ka9?>$4LTczUi%D%3r5{ zyeSqTx5Ums6LfY*KDx88IQXw6H0r*j%WINV!S}%|#Ozr6#B=T|WAChs zEFBDZS20qhBbJq4nf`5QO?^nP5-Bwpx%7IossbOAI$}M~y`ZFcbVX2;RQZisk^QCY zwNw5uzf&ICacXGHNA#TB-rXlBrvubrMxN0=+-d)lW zSr+;(K+XG!GpI5rq_c~1MUXhmz3`3N&^K#h?XHFXmj^3qTmk~y$ICESlZCDQ&}#hA zfJ1HpZ9!pS3+x9ZXY9_sdyByAT^(EaGcrO_Y7=0`taGc#3?XrSbo-&VXn+%r;tdPS zX9cC|Z?}tld8@)@(b``hL@xJ-TBFJL=65*i!Y+8Mq(l=Lb#{$gEY8he?)R)H?e1ga zav*seiU+&hvh-qSDyR6&ks538zHqmkrHJWywLqM~`zVF@yXJpS*VooS$Q=!gSW-|1 zg@%S^E=xOxrle5OdhJM#kB=jFPL^gdw`mVCk`$;_^@f0uh-eoUV$1Mwm0?%1fGa1b zOb^3{-?Iuuwx#+d9Ut@Y7|-^qX(b+tmtu-OV9pG=SJRWnaXV$!*NXa3U=V?V_2plD zbjy8s^uUitGAr*23(<0UE;r`ZU(xyXntv3djKHS#JXH96ttIkgyD(jd&=V{Eu8Kd9 z>SWVr2L}m!FAvFlt}k85si+o#d)V>*zD8`K>^6^M3*^7<_C9F-4vrX3#6`HYF(ClY z&%>baWHleGNah|zMVgqIg)oRWg?@eX;*pv+6Df9?t*tPp0n66lq84dr%m8&!S3KrQ%DKbEkBOb*z)^uArYj^T?ZHAtygWP}&ACsI zVqUhHh~uxp6W*kU-a550b*pSys-ci8Mk^#Fgn^5@dAR?Jio225a`f}4cj@%ScCuMI z1C93f$jFEhXn7y|ezLZ*;_`B1;Y=SZ$+NTI*SF~BZ)?+weXli|v#n(H8HZKOiWnWC zSdW!>qt8g#k5*xl1g)4V?YcUMbbzM2?|xu?vJYv{GRCqqmPgyTVr18~UZ_#; zg@W9?Xu>0j51YrN9O)vlDY}nDtR0_8stFsMH+OXZRQPqGmAHgAx8Kp-l$gI;UbX2o zETs3~K?@PSgt9Q!A->$=z{{TD!rK@(b91H+fAS8zgv@tney+BCuOk8jZ#G;WP3k=T zL`TZ5<(HY6X=6x5{rR*rEO-S;UYGC@HSjq#g+2Ka>>{8);2wNRN=k}>NfF#D%yn+H z{WAFM?Da*17=ee|fOdXR&^H8vaPi4EXK!^c-kUZSj~+M21uMU7k)Elhh661Cz6ndC z0s0e1-68G*7cH%E`Y&9#3Wa3VJTs5-Z|gmc8tKuRc;=IX8tsCoCG3g`7aW!8$Ul}6 z)_XkbQv`{ofPBV)4Fw2+P>_ZrHZa{8;Lpp;Ln?X@2+#mMhG5FD0^tZF@`lr;6n%rS z-`W;M=X?A6AoiespP0B%IUp_#1>ftRbDg_S;P96A$NMSHi?cJn*cO}NO2n-uw!QJx zydS!6LHjLCb|1mAUQ2D#(C|d5P3dz(Rljaozp9I8|M$z(x$l!cRr)O7l{sN#yYBzC zKV63{U7z|wRnJ~&n=+)tpaK=m?6;Arje;=NNatW(Ws)#7=TckL8TR>QPhf+B-w7E0 z;6Y;P9LU4IdiLqsHafeS3-ngFo&Njqt$H}+Y!W;l=C@~030s96mtI2FtB&F;Ep&X^ zNaXnmG-J1;KW0MJdu^?)s4XoFp-tVJ(Ca6D!FW3^@0a1Lc!ws)LfY!iqc=&|kF!e$ zQdwD5AGH*;R4!i)Q02Kxv5A)^9)8yNCZ5ybc#9Z|#7*?<-+a-p*f5r_AA=@@`)UW4 zcW>I2A4@w0Uv17W>>uvT$PN2&C{_=3)CvI60y$k|;^85b4#s)=m=Oh`SMPuZ zH*wwaM0Pe~!^uL#9pg22*dc%8Ra`v!G*ra$^7w+yPxt%%?0US>X-DH*^8{!^RiL(%}$pMZOfLe~m68(Z<{pXDc0oarbp zN8+<~4lBE&6fZ@4)H4()M_5=@{kBVHw_Pb&?-cZupga+2a}9g2lqEUw2>Gm7dmWaz_|9XBv^RYZ|*#WXtpB{i?VOzGh|y#P9Fc>K2Av?^GAmwhDQ`I7Z%RuXtf;K zxac7cKxRdW=#U51RdpSFyeIm%+Zn=8QfmX2*E>A&(}< zZ-d3ux5_PoABan;cUjsTgjZ2JW9Yh0wU=usDJgfLFmv@#0we`uRHAfizq*QIja&^` zF)=ZT9*vva99j_%l6nilQ;d9k#1NR=0;f$}YATML+%(&Um6a8UZ(_#Ze9cWIA z=OR(6d4roMjdEm7*gXU5yU|@D8fg?iI?tw#P#n5D6>BcwOvv z6_jpy^vWtIV3IyCcuE!OtYK%z1(qXQr{i#=BNYcyVNR1EKa7NPzjbz&Zh0UB*^uJj zx^-))+{1cexG=P-z)$^pol5bBCdc)S-*>OZx0ZQ+e{A_!*n%^6HR{*&?g{bjln6wy z6XA5`!eC|kHuCwg_P(_KeD5-`g{MK}$c2Nieq$WFg$rjYRoag8ez?dPt|rhaLrVeO$(GjO>+uj$4n zWbwu|309jKM=ehdb;6luFkWq1o&>lFd^dTtlK#X-XAzMH-!d`LkT(t9#s0TM9T}Nz z#n&@oxYzF7Ogn`e^L8tV&p~vRW!SpnH3eZsJhxASjkgMvrHFdHnVhavQFlVP`^{_X z$(_H{bW~`ucY}*ut*FPVDZX$+`jWDbXf^WGZuby%%Wjw?sV;WIi@4lJ! z@uBHLrMrXk-2Jt>06zv0M{WdNBX3i zw*8GIC<1HXgtK$ry-Op_7Kq9u_~(31{Ub~?!j;10bZpQyIXogC(k#Sc7jk3Z;Q8m} zZKc-sRj`Yn%-u+p@TCP#E)uZuIhnuJu-`AD1(S4W=Kb6=6N)i<~qX=t5bXP z=FOMDOhEX71hchO>f7YAx+RDQllAr%L%soL5fT&FAYjuJ4&Q`8KHnQ03(CsK{eJRo z4T$?5%J9jC*aWGYlgm(y1qI{ZY(s=$9+M8l#SwltH0SC~qPal-Zkn`ZGyCgdTmqv0 zg`+~(+|92pl{C)IhdZ?L$D*!dXJiuh9@eP;@y{KOD66PwyZwc}Byx40Fu2#;lS|Bs zF%Wh7lw@Le`OEDcG_CR-H9!a^iF-)(6r26Y487huy{9!IM~7}o-{2lNn8d}s1y0kq zYZ6k@1vv8M936SVFbdn%)s^GUs1gtfBn=E`k=9beSZc^U4L2JCasU4P@kUPp$Y1d} z-p^Ob=%li3cnb~t({#~4FDZ+aQiMsmV(1>d#8|zPR$0z1t7e3&Ox@cyb*kTNqx#X* z!~`cs^5HS@0Pdj$@!$L34UGjSE$)`kNecTb6X;;7>NrF>;V5VRR@qc#)#k#v99ltz zNx90^F=2Gt(2P|;VHp2UrOnuP8Ku?S=hCN9SU*#_a3OdBK)>1!vwJNjv9~rhHlSX` z0Dv-*oEsIEV@r(0Rp{TpuZYRW7QuVzk&lnKzrTN(aR=7>_W%R*D7Yr>txvqWx_YLq z9R|rOm+3K$=Ud-m`wy~kKeRW;XtG?5a;1|mIC4b@`*YdokHSQ{T>La#xmokeR z+LhV2+Ko+4&Vw1a|DkGWdOm5LN)1_bYL!Ww_~yQHE>ULLtCDM?T3gN@vA;T)Bxr=X z%A&&$Clxq2OdpP2n(Vu;9h1^ z7JAT&%BqK-E)gnK1zLag2F50mE+yFsH`IVJWIN}(f%JA{= zaa&Gvy-iCS4Q&0PLBX85I&xfG+=7AvdYYh62rQ;jQ`^k2*#VK05kv}u?5P8+aBy5y z+_bdFOAX_*mJ;DWRW9*i#X*!=n(@rv8J6hi;CpNT>}`3btxsY9{ow<2fkzR`N96~- z*-xaT@1i2!sdHL5>j^A#rG|=q8R5QvNsvq#1l{b~^ILN>(8zRvHOwxEhQD`q25-In zgg}7es0Hk2e$Ow1qPXeuNY~AiO182m8aS1a7<6yhKGa_d^R#!7{x-u2mjAh_?I4|_ zjzY$%m`U5SnRiVrz#<85f>mxdWNqaA6<@AY)ph(F$&RHtZ5er*iX+IVH*PWBKYXXz zClduc!h8CZ zz|=*VH=lERV?CuX+ss+UC}6rR?d*&j+5So2P<}cg$%DYq>l;C}^GG|-XRp7{MXPp% zN}_*oiPqucbQHR6_Pc3(-S)B|mW`pn%~F*Y4p;8(>kCp>xPC+BzqjYWu3d4HFf3Ph ztodld68*Z;$lN@vMcONtT+R%?aLeS+=wjhBX*Si+g{(P$2Y(S`eqa0_k>u2LPFWnS$Ve|!y4(Df6U!j@%X0lx_ zvD?0GX;-;)7kN4HxD&nG|IOv{lN|n+{?AxDz}JckP&c@r-T}@X02NJ{+wKCbv*Eyx zA1%=|B78}T0#8%9P+nvYSD9gtSaYjY*S(7krVN|sw~rU7nR!E)GDtNp*0QI~@;unP zk}$Jl-y2F4sPs~uaMFw|hIB-quyvO!|SH*93(#LY|-S$W&x=R28Lo)vBv31e+rTIXQq0^uJdAW+@c`i^1K-y%pr7G?_kxM;_* zBMBFOQ*F_vH$uqufo9tAlHw&iOm5B!HNg0gT0o&9x_c98kcLC`Fw*Hx5gj-#iXQxu z4vmh6Y%;*j`g zlUU_ctD97x{iOXkSci&GNc~WzyJBaP-9L3W#$fz(V=3foNWi*&{K5KK+Qft@GU`oR zS$bKueftyz8~3kds^yV~L@Q^TaI+6z;0*KG<(vj)%e)P3^W^5V!toLdiH(+?cDcWZ z)fr7?xznX_*a1G0<>1PRG*yCLpat}`yWel%zXUBUvYf%f#wMVk2m`f^2`r~7yDcgb=vti2Q+ZI5W0M0y=sQ9wb*Xa+}ONb z)qYEgNH}Di2$fg7$maRGXh~`qPXR~et$Lph0Bvw3Q{=ct+EODy+--%@0!j5o_T!{`KokQt{Kt?B@#-1@+!- ziEIAxIU+r*;c7YtxrgPq>Vuh>CDMp02PDO%)!aB~p1kIOj{7TzFfXlSOACx-8EIr} zk$oFm|-ckna!)+bKJnCG6Lu*lnLQdXa6BjR~n zBkKU=`1RW?L&CI&-P8Cr52Hg>grB_j8ne5z^eJ0eUFDTmc*>q4mXYymEHW~(A+>{# zF){css`7(+iv*hD0r7KosAv?0HNWUL`_KU1@JLAs7nn7q#KZun+=O0^4&DBMR6$Zw zvY;R~t2DaJvKB@3>J^K>f10X3Gc!#GJuw-pU8N>w`dFg`89;~%-*_Z; zR@@aoc#_>q9xUm$Li}o(IVVf)yfI@r{4GeRnG#sXK@^el4=eH$`tqm#Sx(wkx8wL43HMVjDm=pO1->Y) z>wxUviikluyOR^;A#Mb+YMZM(K5m&#_(`B7^_Bp=K6qaKz`P{p@{1DHu628i4&8?} zEh%N5;FGh~@$n=l;}aGUOgSg-crxW|%xXN%V`@%nWl@AC-CU6CPsjv9X_;nLEoYmWmJ4p)^9hmQoC{gBrfct8Lyo*v5ATjtv(+n* zQ_w04qmOg~_EYY*Ys{`!cN^g7+{KkD5GFtU$cJe;RvMI-#|%FYk+{BypJ89{i(`_d zXGmXOALiWz zmIl@AJf~OPwgXiWef86E>BTEQc{$Rz)%3lwjk!6}J==zdQQ3R53zHwF*0uHB$4KB8 zh%+oY<;~Yl>?jTJyPkrPVb9( zv`D&B8ZpkQ4CZ!zNuzAkf%-)%mZ6kmoASB?8PxXPe}wH`DW8A5dHlon!6YfLH4Tgc zaqcJ)4snOV#F2`p5C;`y`ojFGj(>#Sfi4-oi+Q(trM2V0+>%u z#ct&(2=I|au~-UVKb_$sbdmlH11AMhh5%tyxfTaZ08(Q4`6XF0d;2}wez(!_=5q#x zg+Zm{%Kg%A=^~?!*zvs{dhpwrVD20pd)v?`jIsEWnMW`xhT z0pmjQ5NU=&A4k5Ve^gY&3idjrAd&-8C zKO*7CXeZkJMbEu4tEMAbJ9x)3n|HvY{l_2;txZ#C^oYUl(j%NQhoG=>4$j=imQK`E zY*bO=5+mM<352U?$zb;cJFlfZ7SMN_X@9ws1WT_TvT^vPRaZ-#XE_PA1?5p{6uY2`sDcOsS z;~ganJd?Lu^~L-cD!0ldix}qrm29^5FgdbcbUlTe>2+qq9&2gBUxL2*bs=F@km~^)RCK7W|Ne+i;xae3A=C?FpAbcf3(*r3a%ig7EK|C@VP*p*tsZQH-SdJXIpouvhjh8X+7Z| zZ3p_Yb?wCzv@|lwWM2~ceN{bsqqc2)Z=gGs!P9aSd?GCug1sZJc~(E$QP@!^4C=Pf!fKNu81333Cv=E0tE z=wiT5I2gkCQfy|u_Hp|&Bw|46ZRu@Q(Ty^mV%Vf|NW~ivVmu_e_#Eu&ymHPiQOvUVR=%xwnv#D6~weYAg#{4zNe#j zz57^H9>`LcIBSZWXzC4+RJv8BS|;&|P6{%`%Pf?WN;b;)e7lI=Dl%?-vZ?uIE@ zc zYWp)7;1u|6NQC zWNSeY5hj+<^VxI2r(Z61Mj<_Z!BRd@>Z|^b+fW)XGI5Y7bLPgYezZHy#=*j7cDwP- zm0jCh$~2^}_37uRx!W(XJq@V@Z%ww{AE!m-K2GU(?m8UDYTRHfet8 z=$TWp4qXy?iX^M`9h!jOTh#i8UG;5m)Q+stUoKzGa{U@a(~wo#$gq2sasNFB3(I}v zQ>?PQCoO!&+5ndA$n64_nIUUy7DI6p&ihMB$ezM+xnD*`2Cc^Gk3Se$F|o5pI`JuD z`v>^P#`SFOr%xJdKgwJ4KujGYgm$e7z|^&<@uOwPL4G%{`IXKlLt9l?T1V4I2mPvsnARtgM?A7l& zjqV52X>yvcB)(U1$^h92x|PA?5t}?>t2vH_ZxpSUX=%RR@yYJ5V_vRZ!+8vEc7$xA z@zk$HbfY~aam1-w$rctqAAjvETbt^yh2%8>;CjX?n(t20G#SL(i?8xnc(`lMBxW?B z0^iZ9WynWa_E5$_4PDAV0D3zNI~SKu7_h`Z326jiI*#2WVS4-!2ly~|KmB+0^li#FlC|}e^8NffLu!KCXCtJV$G<^QPlhiEHjn?j&{r_A51m4vR)wnFkm6IAmjiZ19f+HB8<@r=IN?s||K*j)QSFAd#-o@Rs!ZV;gt z`z!CPZwOcnvmi$ZVA{}u{h;9yyPUQ4xxmsv)*p%y&lX9^Zh5n>O|e{Yp)sa0XiQs* zm_r(D3SHnfMmb*lg_b-E@mnRnFdC&McG^P9B=2g|(sYEKSc${wj|&}_D7pp7vF&$r zLXPx8pGxD^Vy){1vRo6VmAS#q@x8v{I`?9zn-SmX$L#b<*rm4){b|LvBn+)(EA^rU zMn8|K@)QX;lrFdZ_=EQP^=o7)zUw9m#(${bTh{0kT~Wc4D&mRJ zUlkn2L#P(!R}Mrpdm|*DcwA3d?T|k*ojccqg@OL$T>T&{{~KMfo1^QGwIl-G7U))q z`eUO}5kSb?+5Z?WW`^(b&3$~v#CIWr#_$Hh-z(UHhjv7|u;UK~R_-iOk)yV@Hj;po zsXl%E`h%%9wXhQg)D?kWzC1uO9gy5C;K%^@)Cy4FZ4#1^t^J4m{PWP)O3KS)xNJ>@ zLGdJIJ!flIa1M8lUzT)S+K)?{Hk&O?a)Fr}&6n@|J3E^W@qfuh;aa2$O=Gycy7sZA zMn(T_TXXN{hSJ%gd%fR0w;jb2!qOERP({+V8^ab`fC%5w5!FC%8!!_D_`_c4ND!)~ zKltP~iHJl}Lq*2^Ro~Y(*V;dN^3rzpUwKX0u#;#}idLeGrac}cN5G{dxbUT6o2H9u2@h~VP{RP^E2Li-RH6f_T}<#I64 z1Q#kl+on_W(a}+zQvtQF%-?6}>b1X?TOB4Z%OMcPCW;vM=F=~IM{hJKa%oFp5ZyJl}SI{gcu^^R`^W@pk1K8=j53GS>h8vDlU9p%~mg zesNp%EXe4;mgjx|kNt*d8GA%8_f)bsX~fg{O>T68{NvfQ=QhQXL!mO3bTWUU_P){a z5=JnPhE-F$mZlwc%(F=5&Htc|jc+=W8v|?`|CADk@HrL$x@BQWw;;`pZ?iAz*j7r8JC{0mn-xljFekyiI-k8> z079GVKmZ;lW(!k{C@SrjONlS7lQCUwNVz5(=1++sGtY)Eo&$(JCo7l%6< zkClbx5sV+ngIi#=4FCICuFBGm^nFLX_+lWVrubp&|JAkSkG^oEk;V6nTaN7$O!qI&v&b-hliaTTtBQO z1tp8Y@W6QBPk?ISGp)v5q0}hx*{$kL=e4}PcE zLl;wqqw}b#J}S)yhLo(iP@SO|K7O%wfQC&|xBf};V0uPurDC&*i{Dybkv)O`wsQ8j zhUu=%x&|EH^rV;@`FPH5X+7Ul`0W&y4nFnrYVn(F#)3X3CzT|4dPQ%Bf*L1STH{%aTZ?UX|L}H+u?2sbNH%Rl87bGNiIiPOoHx_5 z>VUPWbl)C5lSt(iwD;@%!HUAZio&ZpP(Di4TB>^x^3&9?h2 zY<`rzx#GOTytYla6|tQ6=B3VeH_PKxOGi14qzTG(?cL9r9lRrEFa-@5?e{+3Ow@2& z+r4I@$|yV}0?UHm#==En z+IgqsuuPS;8$I|fEG+CGovE(Ae)A!hnM;J^XJ}WtARjFqB&R3feXln`t|FV`#>lRGQs2Z zCV~qH5S~|2#3LHw(!ul+A0|5xlM``J*ON1@>GIzxocmkU7LfT`ds#NaBFx%zfx{=!WPt0vehq$lJ-D z-dY9@XA++|ArP&E)7*Ww8;{HE7iE#q3&5R@A-#L2UgE$|@q-!T_~hjAnk-hvKo{^6 zvBWcCpmLpu8FB~AStc4EGBMrIt+A4XqZmm@1M_3r7&$fT>Mc(jMw*;~zkQ0L=YM^? zDo%lma4B1Y&d9jtXN1M|`c=^w_W*udg}&qACr!d+OrzIkQo;~$vtKvMCK(U7X<~YV zpz5@Vu~qPnQT*)`JM@aXn5%-vM&z`#Nf$ReBhx|yBsMz6wrwQmV*S2le97(LRdXN1 zp4*y7$%=K^{0k(IpzHJI>o#CIiEQd^E-eMaM|G|vK7efcR`^xIA(dwl%AswCDFP}| z@AEB3kZ#Py$ZG>jk#c)OR5-$ zq*%_)0l9Cz)sq!RWr6iM_se(hZyAkzZn1UD>)?GR@-%jZQ>e>}DVPRDf6h#?|x#1NVlnnCXsGz&+!hz+3ZwSCoZ& zysrdLI0!X3zYk5J*z~vUtcOX!jH(ldE(j^M4f?$t7yahfUN6=v!EZO3>K zbzR*EU|~!j+r#&U6$x6G1<*FU4G55~?b0kB@kUZM!SYgGNvQ+*(Zh)DwE~%6D(iNC ze?OAM-E_Vs(%#j@Br1B*)Kv<-4g_@}=haOYdry#K3aFo}cqK;iT4rWgIOn!pic@Ha z2MlIz>>T-iV&qr`oBn!oqI>v54m^Et%#C&@zc_!#KqDs-`(yQV6<1R!!VHe;*^nlA z3d$_izz<_ysIx6?@^bZZ*82R6N8Vut<3tF=gIcwMc>YCoo#kZ-jR}T0grY6DQ_!S*9jh^LRr+dn^m|zk!4?$2ZSC{8TmX;APK*LcltTJ>^I|D0R>=zMK zgS|Ne{9B`a%@JmCp}ww(LU(uFKYN!4OhJ2wX5Z4UJ=i2yr-x5XdMaBjcgUU>|yd0X=ejRK+jbEZ} zU$wR!bfG6S#FO%tU`j{!iUkLOWZ$lB2D#*&H*23H=oR&RvXPp zU|&kn-}W~hiB(+n`8H#$O=|XFE2KDLOpJHoQ|Bo8hB&E6^!8izjy?gQV8-SK^8a+G zs@A|@n1c@#1k_C6QypzhM*#3b4$MBcjq^mi)o3$5ZtTs)iGx+n+WhVPFO`+uV9JlxlU{w{d;|eRmdVPgtioAvouE z-yBZ805uT;Q5XpbWI`fAKzNU3lF;Gcx%l!DH4g18bqHq$eQe~{oXiIDnJTv>(2Fe5 zL&*bY;lgwZ6~L$`0CaP~C>V~ts`EOcdpf=uKr!MnYQ0(VZ&UGqC&z!j&{X|%5JD=U zK;pwWFp!56Qu~1{9D7TGFb-Q3UAy-D>gR7u#2rF3mo0h5*dpI@_MP)|kAeo>?~Z>* z9jvjf#C~i)a2ul~kS@^Lj|h8Wtq5KW4Pa!2M#5tke?<71jwQ_0!x-ZC6fl zRD2_%B`{&DDJ+szouB%({Ekcd@HW!;vTm}}^5b8ng2Ljr5fRvcl#4VpH0%IhfDtMh zK*QZG562j8W56B$%jnjoNJn9FbMp+Hm8n%f^ zn>bqv>3}tc3~IrO!?-v%Z==3wFD2%^)%wd2-|uVHi>kUWl=!+Fi)UMWB~FNzUTbdp z7_e|j#co?|h~*W74iLnu;{s- z=7hiFGG)utM8_lj`bAX{K21f2#=>uxR)613c2o*+q@Vj+8yT^We!1%{)-h4duJ@$M`-T2XBpZupViE51YJHx5}Ijkj$Loq^maPXLpNpAwJWAt zJffp0i}J|mlpjte;D$_Vs;m1C4-YGUNfvUv3$=-=uI}X4^1r>&u}ff49=+KB-Zgde z^_6D~Z5tY690vSR^xeC6Wfmi>NO%V%@E`;aba(Suupp?VeC}+zb6Yo(c0D@OP~+Ed zd!zPbDF_i=E_H6beuYiWyJeGOhf{`zNK5zDWE+`_IJpg@IdQf7!(3Us1H&|oaiRU9 z$8i}dEJs(V!R1V5@1loHuEdS(XjY;$mVL&;8vP8ma_Fr!=btXf45{HL+K)K9)j4kK z*-67i#QAq=$;AV=jmys7e$}q9F)fV-@#wDQwdkKCJ^_J6&}Fp)(fKP~q6sw(4HCFy z6cVBUMd)1`xqF2p*8?-&T>{UyeW`uZ_*UhQXCekGdRX5#X3^7Ee4x)}w2}Ez*GRVe z)i<0z2dn23`yc5~8@Q&nfAZdMC8S+k&4n{^r2SAB+V>LOTAVnz;|>&o)70(b^HWOe zh5c;yY$m39`#yyY@_$DgNw4{A36xzDH>1Ki4L?Rad=&FJ*g3-!ee}5P-ULy6i_3#i z0UEW853aa!t0rld=hnfrdTIJkB>JNjI`(Jl>I8FsD=-a=XxB#HPOvi}q*@4#;Ov-_9kZrR8)X{&BrAQC&PtU{a#ld%C~83Q?WqvoSHv z0*Cv+NHq1CfpN>(@pepYt?Qq*M2!-iYH~3TKJe~(?TP2Nva(`qTl*oqjFp6hq#UAb zgK;RNzykKo=w}Kbh~~jxcbJ*QxQO0B=bI|-tTN&$-b@|`eT?$z&YeKnlV zp7XCVp9?7FVGE(D@9L%1e{XGkG-9LPCpjevV7B@K#ko=Gt?9gvRq%H!{6-|Sr(s;pf{QT4;VKPfP1kQ<#$=VqB*U3C1 zbxM|?XkTtTo?)s8Ts?w>2jqK$vONyq+CAvcKAfb&IfqQCL3%078#Uj%Eu4l2fv|i3 zdjG&v(RuBlAgMzR?uR1QNFOz1>Zq7l8c_82+KKSD1Lx-FTi|w!&d8txhL#BwfKIDJ z9iJ$%g#`s~Qxmq9P`N)ItJ*HzH&!o<{F$D1qmLiMVARuIo$-FOnq|Abd2@!hDMOm+ zb=1&^45fP_SpK-WU6iYldiT?Kj+VJ~@Rd%poL3Dt7t@STCMb7Kh@}(@CjZ?o&7G|Z zKkWCXM?L@)ZSL?2+<^rk=(a=8lZ*q%ARz0#mq}2BXTdB)^zz{MaPf;6SnqM~-n9ZH zRjbB|0vYoL4GtsxLcrG3?g*VgMuHz4yaKn*3!rb|drJrie2@%4AFMLh03mvUocJiP zOC-UHm+0~2c%2Qg%Nyh6(i?9` zogwjF*kwcB$cO>LxE|ElU45Hx3vq-y6P)?r!KzhziijvEe!$)vv7by#dRq3%p7ZN% znhKqvZEa)ENMWM%t#sID&kw%^USRZda;_Yr8F!Vr*Sl-49Oztlv5R{IlBdmMBiQ-h1Jqe`uX0+c*b3s5Q94WS(^yhVm_CLkR5C; zrLL|XL}v>TMqVfLA#i_(@LP_~Egj8y+=clTvh+vCqwWUf5d?XXLda+FMvR&{3t64hRP5)+Qct*q~XCZ?HmQ5E<>Xe|!$*oiG&ek`^TCP&A6w2Hd zdCDLELB}utTTa#U=gbt&cSZH{7PR*yXtzpN4u%XqB=FDoF2`b`&U$^-+hBP(KSX!$ zba9O$7}t#?`SSwZNi>!j<;ZGBHU}HVA%169n^#n15mSP!l7SDWq~xfh+8a1j5X=u- zStC@$PXmEf@KIpKEdW}mM7LDf*3cT>gE$dzB?o_2){E5V|LT|1b6mG)5J-Pb&_LT? zoY=!J8X6h-3SzT>llT5~7mR+8I}mQVCD0X6L)t35K|(63UVy`4NXa)AV>|*>U|^@` zLoUh4>qcJ}mxlr9xQr4K8OYcvOR7r9Yz7?K93*@cL?7iq?#cFI=|;_;+bf2)pBKmD zCatCqQ^(b49S-q1CS8f?*GnYJ`X`#672aRXP3zBGjjwTiEABq*!Kicd_oBw`gNq5C z`2N7!keG4q$IK)HzKe_NQL-9GC5m@C9G#u-F)h}Nb6a(OvVL;=CWXE*UcrHhyJs*V z&7gno$iAE9N`zofp0nlie@oNPfB+KrY?=(8zL15P6G(=i?`b92A8lwObAJJZ#Khw?d~nkdhE%La zE?}EXkCE5(5Z-8=(<&i^RrAR;upSP|(b>a>`|7%Fu(jC@O0_p5MF~o!_{Tu+2z=y| zPT-2a?*4_XcoGR@G#fJ<%{gtpb?!1R7tH1- zT1U-&e56}YUGj6Zhd#4lX*sdxxc`mpTgj_8RW-FLnbr0h9;&KI_go@bvqsEW)RS#l zn_Du?2Hr;TSr11enu|^|W3a5l4oQ9hAti2GYGVfC4ye*>lE>1;2 zGAowbY?PopXDWXzIf++<%0!H#LUq#SHtDlj{HL)#4>dMe{$)R3<)VBF7a-croT|A; ztYD@yJ^g%QxgM*IRg8tb;&MSqWSMiIX(*k<(uZf#QBbfu`K%8;o$6FFLENTsLSLcp zr*Usw+Viuzkw1r@Cj%2ru*&K;Ax+p1G$;#eYdWRplsM=}Q8k>Az@fgQ zBoq*&B$e(CLFq<1rMtTo1f@$r8lo; z?cdsKueEll+vf}Jl5|CNIZuH*Lo(B2Cywz~?!6xgwen8Cnkr#PDF8!#8g-q(2Fxm(g}Y$ZL1-yfYKrpm@|5zOV^k4Jo+vo6e#)mK29~fQ z(*sD1)6*X19L1|Of!k{Dt4In-a2zFxnG#E9DwIIj%^iOLQFi#YFv7IG%-SimBtDjU zKSIqHgqw`PgIep1W4oJ+Kb2bo9CotqZj}qqwB~+3U6u2K5WZ_6Z(OGc?zYOyX^n7w zryKx@!}7- zK7?gm;Kqf>AAcCt+QXrFX`V_Y9p3`u0b))sz^Ab8swY?bz0IDZlBz1o8$g0I*Di>x z8h|i{{Ms1z!8h<#=;a)W8cZ6@$FcvbP|e?HSjs4sQieIc=+mF|42OWcWS`X|EYEC@HRtdzu=+w};3~y)oUNCLF+TeGI(nGQ)Vs&R@@y58 z`a>`~RYMK3DS{lSTm^th2xRr(!Ks_@OpPOgkmGZhfiPiL7!OPq>-zrmTNKc$cf+n4 z*R2EW5$#n67{V3~+%H!1#k%+4Z+e?_`jMc386kkX8?o8>hY%WdGz&d_1&1azO0mZ= ziag7*!He%aR4>x%k(y^4`eh0RmGai2}n{Wxy4UT_| zrpsyvxYe41{VkZZst1JavOAgbzGHf#)RkYu{hvLXU0HK{FW|mBe8+gYr=!Cj(AwrDSOZM|=*e9$=<~TwJOqwgQt2@Y!8`PM~PMFCL+ zpI|mR5;;h;(SJMzJk?5a^na&rcdxGbDl!Z)5%B)^=ZD}0Riyoi_t58!oDHLC4gy0a zKYCFil+MI-m`y8%R^B1Boo9peRScu?u<;$QoqN29yx@@9kpPO1BCjOTNZE9hgT>{2 zer+Y^Nc)2$FQ+}7u;veOp;?aRPNX`P%i~F7)qMj~vt2d%O1;0SSqv}x<=5PfH`PYJ zrY!5i{WgT>O}Ru`Ntl4s<|8ak6*%|~bE`7D6^Ta_)UzpmMJXvde!I6L?`3Cowk*4U z|NdQ-WOj*GNZV`j`TWrC)xjv)NO^DQ3YNIIl*m&VJJZ=JXpejgqy!^WLu(VLtQ)S- z7Ie#Vx0#~6uRm>+@wa{WCFRR47(U2YflGB;)zY_gNqdlZLe54LlA20VqCa!G)?shj zYA+&!bbfx0J`)3BfHO47-Q6F;@u?-c+DupvzWql`)d;mCzQB^>+X3X->zL{MO`gq735<4Qc)K;NZu7 z$$T1F$9=aqr;WgY_1vp8Wj*C?k9EesfO^~xNp0P@$_kdfDFP{AY>M8P0J8+pdF^m} zdlPdVyy*=QE8$&TSElW3Vb^ut@tDTyS3_ISCe4VKg~hpWCt;=!UI}#1%~H!GzSlJ? zLNdikZ+U{JC^9q4+Y7t_j*FSeoMU*9o>)f5aM3 z!x1e|X0czDB68m@K_!n-emOmJ2XfP6&4VD+cby+3hf0Sm?Yd4F8n1)^pJIMSj{N}y{yi8+`Y{U_ zgYXt0Mf>!0ZK5f~=pYcwE*qJ#XXA}Gtst3cf$Rxk*otj3klIX^V53!S=Lh#?es6>> z=JormzpJZlz}$LzPv?rp@i^0ilwbw+!dAZF?uKQa!mED)PFWVshXx#{7r*IFObPqG z!(}x;RAM9eM93J;NA&o)Eq#w%iA{^T3@s0X(>G==-pglO^YgFa;D^kq`e>&f?A!tMp_1B@Rr;Gp^oq-)^BVwclm7>qsyXQ+7)GbS#%+A6M!@ zxrEgCF(}G%uia9{RBepK@I}`cEiD^cG&H}#z%d9M)kE9C40%v8$-L)s#(x(zYn?*C zL{*~a=fKo61nH$Mpo~HY_yYn1v3O+STHD$HsB0{q?#)#H0S+Ez*wR7NGcZ>XPYDY#Cy}&#VH3meMJ}Bb7 zG>nX2k9gFo+$XGjNjNw}FVM}JuDIH(Z27+Y`wz0Es>72zB<#=G4y{E_gos;{PHT1T27XFNi zLzLG?%XUAe?^BnMjtM#KE1~V@KcWKHyip$iBfHM38g8@b>}0u&W4%t&YjnO|6)v2w zJ8QD+O>ipR`F%d6)>c0sn|4pzaN^@)C5h{|vo^xB?WG4JxtPZO4lD0zO0kU{slC)$ zQerRoLS_WrcwY7GZ1db7Ee@5Lj*E*s9p|Yu8_k{2hxmOweh*GvUES8*_b)Ipo8htR z1-TILo~vY{-KC|a&)LkLfs3Q*&s+6115@Zg5$~QZm_6B*cw;FU8N(r2R=vWa6CUUX zGaC3d2g~9xx@(2vWBPxHu$9ZbM%)!+VpbCjFqa_$zh3h5C&M>{g^P=jfPwIu5~y$3 z(+a=W(vGI26a^KP^je0S&3xKw|M9;b``+)D-SVrwTy2-cj=81nN_o;fSFc}a5u%m; z+#HpX{~wS+vE$$my%xq4Ifh?QVox_$tC#obw{-M5lBSOv0iPvW?c>%T1&`$ZUahW> zh=&LNrLN$!oUU>54DPLwLgM2sR+__oPd8r621Xn?vQm0S{YAA}+b7gY8^h-};(&if zq?;x?xofb;awaj$wfnB5yCrr4HMC~?Dv~4Cpv*!E{Ham7`*v7Ii5eSPigYMXFn|C2 z@~!{3GfwNeeIx*wh$DL5`?h{U|Nmk)a^8z3QXoZc{(*&}&^jEhCRmq(!`~mBxDVO~ zles!BgwUyr)w3p7SX8vkYL*+sz@mV|fPm2jIt3b)e;~zUc0aMGrAz$p?!CKWvSrsl zet2n;?Dq<(F>*XeDl`-Ma?Jfypugt_qg+tF*YQjwb#Vi6HOHa6VP0$K0q%eJX!MtB zO0(@|7*j3W{PUKd#2@h|5A|r8{@frYP5=FhHZpLn6zl#crgZ+rUi1rnTEpqguffYpI77GlOnU7(&)~TIDI@zNS@rjnXM$^;vIyyNS!7gB_O^*m5AiCsi&<3zV zJj!A}O$9u=p@fxTJ3J|b(}~CC{ZUZ`zXej4MS=`w}Iu|yD!s@|x1tvw$7a(!p%I<*vWsDSW`>3QB>g0Aq$ z*IZG(Y(a~e_^Xa3H;Pb~pRN&fW@A-k;m8>B`zE`5>Th(9qvMGgrm_7zVN2aB zzaVtz@2gtrjA_*;fj^GpEnUIZ(b3s7KHg7HfANi+ocuFz!>~q{&goe|hH4VGqaJV* zne3Hi6o67Vc{EPH!8%KZK-AH7$HES5z3h@F8kNs%t`bofn9w-CCW&ZT{U_08Md*`0 zbaBI}hm}sO##@VAGh`F~iy)_NSz!`I%se@WLM&lAHX$~fc$Pb+&e}HpqG121I7Qw! zrnmNBYNDU`oaJ^lW%6pkvW8kJEmXy&{FNvX(3E>_U9YoqW+`I13F# zNSVrXIf9bneuv;}m(MFO={3Z=1|^g7{AXE=`*ogmojv)<=5Dv9^V-<8r`SRqY@8Bn z0Uwoc`tE!>_Si?YXV|}#79DFBd>Q>_B@@G<*7bu@#Eo4bnPSQgQtr@4{(drsg#(9# zm@qZY5Z8x3!G(m#i|eWv9fC4eNbilkIu1q!)JfDX`1Duzb~`*|YW%4?Y{TP=pl3e1T`C2JBAUSs!T1z^8`(+Mm;3qa>D0Y3O;J{}5# zO4V&ur$7DUvH6d;v?0Nbfw$JjE3BVpxMaL&LzR&M`MoHcPb@3VV9Z(j#b2VM4`n=X z*4y6GdnaKq?NE($_bOB52QzD#Kj=a4i`jRaf#8Nn8aN=hMfB9J#&HCUvPo{kaAk5|Z9MhqNa)Pmr52jsRU z+1tmUUx~0CZxGq|O~%XR@RyP*ESvA3DuKh{ikapG_s@t25`OmLfy_!XoG$R|TT!iv zuA0Uj-A0P19H+))V)aRwStYigD+^L52f^kEA#K4J;24!p``!|r)kF}29yT5=0XMSl z>I*c;SC`Dob`O%Kj+Cj))R3z`5#V@^_UswX;))WVv9uU@1tl+U zBJ}1g;3_XkpFo3|fn6yqtC~&^c4H?(M*dV?78c_orJkFdVr=yG1zIUaj*Zv1dn~fW z2ge2Lienu5EOlxF_jDx9lW1fT3bMUIkbsUy1vV^reck3DbFuojI{TJ?-d4RMri={z zNN^#89qA#DlO9KqiWCLg&gQ+!FuY^Ty+*d)ES?ZiKXwZ8V$7(R8`T2T^%);tm|tw0 zxf29fPC}7{h35+}_|p?DaaAvf0ggR@@XspDfg=($UIDR)jk7AAP0ywl?-6|SRd(__7HbFTwspO;(xcqHFP$c&*P2;?Kd??J7bgYAkZ)C|`EZ{m@Xw3&{+mL4 z^dU7}CbRaj@GMIeAI-v4!?MDrdea%^I8W(w>b{=~*7q2l2RYDZc6V3B%i0Kq#T3hb z{9b(c#H8u8+l#dE=bLR#oQR|pUt=~RM^F=)l&hEME1JV82@#J;b#!v0bv+v_CW;XmfIPe8L#>F*uxcE{e zBGFZ7*{yxY#r?t8#1>{D-}H?^$LH?oH*Il;Us^-;aRwJ2o}ITa8lFp`DxI)l$tNcI zXoA$CHB?u=@%rS2EZ^}nd3kww?U%N;Bq36oq3++^%hNqvp5%85y72OG0wZm7akSCW z+KTY{KlYCdN=JLaj>rpzlw#OF-`?K-1#HsVZW|QPBN#LduThKlYrMOr&l~ui-Z3#8NiF?3x{~dCyS87PD=OsI&hONLca|eWK zLv^n9U|M8~lR_|Xu!15oDXF*Aup2Qdc)@Pb)Z5E{J41_6OonNcsoE@r}N2bQ-dM7&_deA3z3safX|0mP-izvm|%5OtfF z_(HFpF(J4XDKg7g&m==wSp(m;@ay-MSEYq6`XetQIt$D->1(uJ5jBq*le7~6XGCvz z>6Jo*-fU3x)*$+*nI~niwDUuW{=_dy6&ZP!+=gDuK}9^usE5%t;n!c-hbva}Ik~6C zZ@zmw?{5+@moXeneO&wJaEQSp6MboW&8z;)T>SdtWcpv<2gZSNa}~(<4wj-s44EBv zrjFAnO}Udop-qLGfO7{y%0RVg{R+k>^O#oGTIA7HK(PG5!tmHZeEGD)-7t( zi91o$8X?;HE++lP;*%Q(kI#~VmZMbopYjAM6&H5DReraT^)9cxXa|qBK-t09Oo{Uz ziceE0pZRxIPhKD=pTZ+O8fx}7Rfn%Z$0$Xs${zLb-@oF`J$bY-E6W{9PR&0@w0AsIp9vQzepq z{EgU$pA$^^{))V@B#Z+(n^kl<;l0x_f482Bc`Tjii89r$|GR(pdg;um^D(pij=6i~ z)!j>mWaHlW2XCP9+yFC4PCH~RJq6&yZ=(}%es*>?kRkrGHU-B5?dHloG$0@ip5siS z`9^Q=y81n~XIH?v^u|kDfMjk$BhPoba+eKxm}8tI&#)<#?ISDtd(zi2^bnzelB02+ z0$Aie+YhqNK1p02|CTmQ@TtMmG+4gWWL6@K`zGYy>SrW2-GkCNgO$nl2M}WSPF_Aj zt7xmYvvUCu$DLo$mPnm~GUJ!UB-Td&^$Bzd@ASlBNgza?-!b&2d-W{v^8LonbvYzf z%Xl?hTZ}qh$A`uV80lJM3gQ_49UJ7ix;nG7B9M8?6aP*x`d1uM{Fo`F)8o9C*!>hH z6IDdju49v2a(eab7HXeKP#jF>i9gbe_eI#*g>~fgFmTf*{|h(rsC7XyRjcrZT`uy7 zs54*RYwbJLz#WP#)$bUSl9G0LGzx_E_Vz}f5XVgTLBPlS{L3^_u){d-O*yVv!Z;g> zoIc+4N|3r&T(ndHrAxTB5qG;Iac&fFpBGQ~R(AAdk0DaR09D`AQ@) z06A4*e2Wz66-VOqIB3vBaeJc7zs=SX1vR+IfcfBfdHlSQc#f1|o?pa(n1cBiQ+Ybi zzw065YPZW8=rAaXe%|5WxZIApp-S2Q7@>FU=b(R8`!#4-&0Q>_tCr= z_owjoe(VmDzCiWNHj^a{z7(zk-J2_m^?X5`n{o7|V0YRsoo?2gI) z1t~jALlx$FqSdldMTXP3$W^ZI;+5p^hKTynp*0p|)NLg8kAcVm-7(Afux2?vuP^{6 zQZA>)B9DoXKazB~>`%&ebocA6&fEqj_Av|H-5emvLS|9!UAa1zgoe5J>c?Hp9hWZl zH)3KP*S9i~G?xLbDec@mJo7rYv=I}ffB!aCWYF}RFTiNOsXju@eK(8*YFk;2J;H{-U)>I3zM7+&-B zfxe;@f!}-V?s}LHWM~t6sipMnOJ;+v>gBoLxr@uhX@|X>90thFkp9Bh*svz7)1by1 z;EGi}(VdjTu^*3o0lsb}I_)rvAZGptNY^M`vXy1)uk-4LnY$!$x>0XiuK<_$x)g!}SmS z9~pzdd*~m!cWyfDkLi=6C7iWAPM$tS;;YNcNb3b3j3!0;|mZcvR&f zD(Y_oW+s5eqBsNKvHh^W*m?)r^M5T*WmT!OOlD?gUeOjOHQ!IijG^yaY3dYmkqY^% zeqmx)-)=tWDWs7zko!3m$?Jm;k8!^Kk=pxzjf<1gF9Bj@c8)xKsw4_;y|DJh%Tbly zczI3Uq|jL7j}!71k$I&T($nN?`# zn0IfXTsrBS4GO2nWpG73@oYh`Ruu(kU(jwLB=ca4N2K+`OfwjVP8|aa%cuFnU%(a! z*~|OvUFqi2!$XA7t;1mKcJEchw`d6be}qGu3N$;Y+Yh{NPrc!K!^6Yh06pnee{*Aw zh^f5;gENGe#;n8xa>IToOtv`~6^ymiRZq@Pj|ic&`6zOzN&TOhwjstKX~wtoURe#2 z5MGrS_P3(LFro?7RRU@Vb8|FoVPMV?gWd^iTCrC7?VOh-R>T4m9AJ5p-ihy4NwP%@ zW<`lqW>MD!xVUPDehkVf^c60&j~=>ajWZIgjCr!B51HE7mNa@7<*5`M{C>nxY}}6s zb`w)jz(T`k{V-9i`WW*cQYT zz*w|H#WNj9{m-Vzgwt*r1x!NPC6_Z}Fb@J9xDUkK%9R;OOSZ>|_4FAq?}IYx5PUJE z9_Mxt1Fd7Bt66EKg;2kMmD;tjQ`PbB_I9v@;Vdp+88ezxQlxlj5&o2fUzw^1_gQ*wwk)_RwQHd@gbF-km$$S`movbI|s@d7UIOA+d#cGx@*83HMYANca@ zw#Mi{WCY?ti09*Xs1r$V27rrIl2-tVFR1RIUBc!G)MCL832uH|dhowm0Ahh;;O7yY z5aL@;7YRW)k`ewn=r$0t6->%64f6I05V*hfi&a^iQGj`8o= zWtZ+<(nU;=88_b`VNpxg(5s*#Z(ZkytA3K6j{U%lw=tFD(HrH!O()Qo+!1Y_>C9O{ zx}J07VQ zsBb^VqA_56K2f93#l-d^re^Lug}H2KqQd-vj+C3<53>n5I^GOSTSvEprOk5!UU#W& zPIP&5MRq>ROTb~lFF2k=b@HNl!Pf$D!yXW6k4RQFa!=me1q4aJ@A17y%5)sr9u$tW zP(SscA-g&nmL2j7#Hy;QN*z-j-%{jTRp!g#M3g$PTT=n{@*Se1V3Tc@t-^z+SOdU z#M|Rn^hm6=`IW1uPA9M@rp}JnHdU{odUA=MN8O}IJx!Z@cyQpdRZzJOEretY?dxH$ za_j|Aw1OM?Ikco;R$qeQ^}C{?cue9>9S{Nfb{gn`*&FJt20TNH2<{8UKhfMB0zPGB zEV-mxt|2du!s}jrNfJf1anTIDVe;v~=9_3bG~P+>UP8j&O%6D$ zMkDxNOAL|}(#NUgz_qDGWrZ2{{V0OUhhuxJad2S&)O5U5#cy|>`ej5zeX`+vnsmM@ z&(_V3aX;~budJxuam}^thLhudmSGeXm-7-**%;lMyzv0Shv}VPn?E!S4pxj6TTc{! zf>b@Pt9?<}#e$F>Gcm1hITXpgLfEMKc@G~WYB^|NOv)9)zUKb&y1qcZ(NQ>_s0fUKr&W@-5C1OjL8ntDoZbveGC$to?%k z)sNL}Pm$(fs<)kF;JRI7aTP(BI5y>7dwHo%JmNKt@W@jAVjz(IE z(x7ueR{dbnscL-F;nlN>Q7t=|B|RqMeJ(00iV%|`f(BI~@H|BYIz(6yKq-?b2I4Kt zT_0bzOZzd&1t@E4O$INx3D1>ZAmhLac1(2j0VuCb^ z;`YS1zkyx_DJkOUQ0>QRmF+tFq)KMaDfUXL3Q26d0N*=6=a3UQ@FFvZ3VS8@D79E@ zYB!G@jC#S|p3JgG1kyGi?mulLlC+wu4`OTF(-!s;Ja!q5?Iidb9c)2tt>%ge>! zU5I!($qw3l2(pG-T?Ph)!HpKePkfF-e}XsEOkU(fu#J9_yYQq=7x`lIJN|+AG=b6^ zIbU~;Z*yEpFU_7ve|jS7Jbl4iN!d3scfckY9=OIF4#G&ftO9xJ*;lmrUT7sh}WwJkQXF(&%H+$?gX8oJm=I{XCw&< zLio&HEu*1OrRM1f~BGweHd2b(uW^B8xpJ1CC{}}xFPK=z$JH3Hlv07?S9mMk8ZJC&gB6WUf~7pITaXN_l6w$v$9FlD7Qx=n1|{dV_r`)J1%9l;xg zmp)P?Bx9l@i)vBcd)GsqpyT(~c;r|UijT?G5~>>wZ^>gw*6Qf0rh_(bIrr#ICUuj^ zGw%XLC2_858WdU8j=y?!M~osrglJCr=7c7IKTCcqX4+JyKA6)+N zv5=AZj^?QZed{;@4U#XI7!T%eZ(;!?7K0T4wAN%!vT~(nO1L31o0(%JbWC{S2O2{U8{nGE&`vtB= zwT}Y)f%U`KLgoby6=uFz$(CZb8v&f0++Po_b_EL`>kK4J><<3mZ7dizTsKu0oyyAP z9GaHLWBr=<*2=2}I;%(+1p#~dYT0r z;o8u0|JCR;Oa4(wx1AlC124 zo)G0z?gQ|vD4RDdaxsi|{32%Na?3=Sd`f+v zMt$DHQiqzwoo?yG)|5n8f$x;A%T}14DZnAnhsj1Vb6n3RjpUf^fD}G?x&*d$@_tnw5$w3cA(*Hw7w#|yWj)HJo zNaUgH>#Oiy(S#T@VD~&c>L%p#0dQwez&k@0h9ILsMS>$?P!AGd2nGd+frA+52S2v0 zY{_|I;Pco%3F+Eayn9(3&)^~_EeM~W0OAD&+FsO8HFaX+wuX{Md`|*SuUO|RaC$ND z>d1?kFuI-(eX)0}FrCJNL6a8uQQnb$x#^&95hX3<`I^4Rd5S?Y(an<({9j%MgHC_{ z;XEOjQ`lImFl3Iq2jW9Y=6s6xF}-@X8)Qm11S08}$Z;!k_~q(!aPy6!CC71>F-NrR z+z#uAZAXJ!d3z%r2tnQHsS`bf^Zp0stx`GCt@J??)he5pAd-hI3_hT}gEk_pwzhU+ za66eKN;h}0`9nHp#g%eX-TCD6DL8|eZf|lAi~70w7mPB90te*9&`)_Xg!DmIchvD$?Q&{@u#y>eA~onZw{*>_XTEOH(MktUzDfuqwr&SvPTukrcE>5CR!+ zuyJy6?L)v3IB2>-Y1R^I!~|0Z)3{h9$k%HC6DJE*sSNPbhCm4b*NRBO{w9$*5s`}) zC*?n=%7%;6pFH;Ox)LwLJ@2JF8hbIClBx&BTm(_#)$v`*^y9U1Bp;~{?HtHlmCXmZ z1SeNE-?*+-#BP)s@Ta}Bvl>|8rW@)ZTDD)F-9u)W_qS8^Ny8D zW{zdNkftJ4G!0R8vR_t~Kn zCA30C(vDK|e9<4O}*&k(^enN9CS$4K2DsF~qQ@slZNmw)X@N+05zey^dtPMpW^ z+`j4eW9(c4G@l;S@&8o0j5C5F!$`6FS4dREREoN~l{Ub6E8ox|ZlMwK)2;4on<^Ne zKN-f(%=Ww9OwW&4%?9u@71XzIw~2i#MHxl=3zmioXn3zD7av&YKCd}B&X`H^u zz=vjk|7WP3Xz2WKVA-L-68_8XYfzq~TbmOnOA<+|!Qj`O74g~vD zuU`j1{w0fk+hcVgdN%0(qfp8t9jJ?w)<)eHdk6U!+o8&T@y?%vT+U!iEQyz!hAF6@LM+itg5m8A1#Xys{p zTnzFq+i?+l^T!K!Q|hzgw}cvE*YUkIc`6V{5FOmVD!n+=TgpKb@vu~(@)32YOg6$o z3JBT<%mxTMmA2=xQmu9ZH4-f00l4`mp3S_<&DK%S^Ahl3~WBxXa&|W zig-mf=u=_lA`Z2TLHtD(Z@xq&{GzX~`z(Y^>O%^h)My4<|4OQ2P3o{p(a!ta-{UE? z!W()CRPPch=$fG&@;}xHB+OKGG~>`6TFX1Pnwrj^VoX4&j~Fa1(7}Y^Q^Up+wTs=G z@7T#25|XY{+aAsX`Imch>k{X(2Z+cL#E;P1x98Bd9AYzeH3!7{;t^y z;n^7~9$Z`<(%+>-?h9W0W1!KXODvk@>~HO+dOmV0Od#>Ps%3d&;ZNiIc|byr3dkXz z|JN}1E5JK&7?)%J_;(KPs6Iy84aIG;fl%uSGa(qkp)5YeXGIYeHO>9b_KKPsF31O_ zo}~z%5J*f+=Nsy!r4CQ__tSu5ud0c;HCTmCmiKhV9xRB6#UqD6sl(e#vutN3j$NC^Q@h(>Jh4kbCg6QzDS!7?#4SE`{{ajXM`m%?Xs<9 zW(zejK3)R)GswAk6)k}vF9AG)PY|0+p-@_z%m1`^%cn$524XSWn;%H;Y0ygLE(tAfqMUzGWh-lvGnC&6 z!C5aGRKqs)bUOsPr+6W#CXdU0d^}y~uW7r}I zFi*PK~UGR*ZL^5j3lh{17lBn`-@qpk5UdMyiconwLQ>|4)=Lhy}) z?!_3?j)9)OvM?tuKrfN0h$ZvlVB@dA1QFco$U9{WSoj;H%s1w_YjsHq0 zN}9uZOh=gX#Th}`{m=b?@$jRy0&Eyv_uLn3vzM(8D+;qrxnng`8V&$dj)OhfShP-5 zsz5|f6e}qzohD@Kc){tyHLEE8ZF>Ci`g|IPOrZPw0*IGG`cveK9&W95`cVVp^$8V=)bwSnblr|cWWmwc*?TW$uv!$Wwue+MKh^eIy>>=df53jpP`C^HIKn5SYm6;mC;Z5 zoK_>LWttfM2b>SQY}-2b&&18ueeUV)@1w5GtXO(fe?a|Hdz`Io!pbb@WUa687v63} z5EOX%{ftvQV~F_N#Ck)wzc)4t{Qr>U)OvWsVcns%aji(BG8AEua<~NTNMMpx(zkE# zz=aISj#ag_OA8C1AlMJ6nzq)Jg{LuyQ9Lo%mKKMJ#|jW0Xgic|2Aypf!b`YGPSEft!X^u9ffcY?&|289o(L+p;X*dq7)&UC#!8cELWvoOeG6!ImAkrFa!m~2|Q#J zoSdr58CWGCj=&O)fIsL3m1`$VJH=&XsUUmc7wFf3@!8%7G`k4%KlE8IAij}NM+M5^ zREB@P92giH@;T&7WG=#jlDgaSvNHSX7&AzEMPxW2j^Bli4Yk!v@mzG@<~M>35z#bd zV%>v+V6*W)#<#r5{$3c7IR6h>rf}4t(2b&l;QoQaqmHWY(r>hM%J|2lwK&vHcb{Bb z4}buqg3otAL9w!YB*g3$uwbAJ#g;45rrpRHe~4BHvgd@qxemyw#RKf8ZWYLL+BbE~ ztMA>MiJL$D(a8Lb2mYI-zY&((T*VRJqTIh<9J?JTaj2GhV()4beV3wqhU%xtDGAQM zoGHT+&?aA||Ati}r=kI#om~oo}ibmuF`PuLdt4pRK+9TVPqB z++LbjNrDm!G1@>F7C<^~c)>+J3iiI#;?!_gd)DupW)bCsWD{-gn9J;J98&kbeR;7e zPJ}bkg#Pi@FrE=ZGTQ_7JBc%yLHLGB4qB3xU{01(n-y!df8ek?71KFS`wb}A8XaET zm4L)|SlIH}ErYi+b+pj`+1eEEvHb8Att_!UBvp{v5iA-t) zTgm7+#fpSRpt|~7jP%_5WS57#a8v#2%sDqJH#CYR4s|hQ<6y^JrLRkrkMM&1u1xNy|Mqax)WJ&=^fa|&K(Y~__@zg$4 z$u2%%uswZEq-#O_`t?Hexb~j~o7B4B{-h2TF(!|E^(7t(=Ey5}mL_+qWT9`=Z(Hh6 z^dm8`mln-PhetDuZ!(HJh~Pzk10Gy<_n;BoV0<^Nc0AM|$K^d<73J6ute-!y2G^HD zg52$cYFC|Nmm4>F4Ts~OyUcS@kwd&PYs5w;!I?dYHD4u-iryTSBjJg>o@u|7BABJ@J7(!PR?9S!Qj;wsWf7;__6o z!}r}H?c-q0*HpZG-!`Kh-+D3BR;SDQsgw76X4!7JHHzJNcfk9BT1j+GJWh%geKSPc zo8Oh_oTuO0^CtFL?CO44_DOL3s!;>8ewWbZCXMUTtg#FHh{^OAjQwi0sJe2xD zTsbW*u11u7*x0h=*R3)$u@PTRV{P5d*N-)RcOvzQMTX>1?|%I{$>BFSFps&^82by0j$A{}M!`h4r^y z-^|#EDv?_>h;%W2lu0FetkKFOJc@Q&R|tP(IE^G&AWJ)J8iAxPI0{Etb77mO0N{F5(ydVE}GuN zSj|Zp+A?X(dnIVOpV+MUqv`n;WXF-r$i3=k$*Pd6+C^Y;cPUYEZwIy9Nzim1X(;y0fV)VaapVW z+ON8!?}95R^NIcl23#Xut;K%~yqBNEk}pZfITO8k%T+cR-Hto^RQBEYXf+(7N7BU1 zJS?a=tZ)89{LmGIXz?Gtdd1(lWi24BF2P>HBpw_jPD-tJ6`mApWonsPSNi?v+qMi( zn_0QPv%nd$$Xmv;EQXh4mehDT@5O`nYL;xRzoBB&kGG}==wUsrKA3aoa$iP~<-2Bm zpDm@k5{PZW8voyI!hKy%;35G2BG?__w~T2TbaZrer#F|0bhHLzf!Gzl&Jg>h#Ox3DpW3akbO(sxHkxbUb0YkTOvh+SxSq6c(kZy@cm+Qt)mq(Lh6va$j{JuoZ)Rfhvu$DfyUO%v z6$^yd%-{a%HeMUSwxcMdU%h~&^dVT{K~ER*7KnVZF#ayXSgkhD%(reE>xu=#gdgTL z=+qnaw>Ot~99Ei*ZORYzzx-MF04?=4Nsp%F|7rmyYh&{z>2-(w(O%U)?_IUy=5b2) zvl5m<`LknVf6(iJb88bivVbC#Vp@;%4K)JmB>GGS%|~;gW$QSQgTm`?PF>^@*GD_KJ$w@3qy$Tn%k2lj`O#&vfc;2OGIPuiTyan}55S^LWk=}&hMqg37gZ|`zQax+cs=S z-gjZ_{H`$$9*MH)7=iE>I@C=e4?Tijy7JHWgXG!M zXU`@S$BL>$&SUc<;L1Qz`;-t{)(*OQkbXR8EdzV^^o z$8XXaGLE9T@6`7Cixlmh)P#44DbKpmtQhx~I(Fln5OOwQ$Lh#PN%b&_(4hDX2!LC; z?s~V@WyKE1dg|Q>he)Dht5w;{_uaw=GeP1nhF;CRmzhHre#;*!j^WX)InmdJ_bB6u zzG8%Hz4m^k&Bp^7+<$G|wcmMl8%EMleEz;o@!F?V@mO>6x!?>NUvi4NJYVyu_T*8E zi_2GSNNj3qdKs#KaX)R(%-nnu-Wo+^6&CkV>PV_%&n$CsEBcfjmwTtBQ!j&Ujt<@G zuI&FzzhXlz^scs7iXPbK%N3aZtdLGlu3aZ1QLy?)`Q|u%T+Wf@)4O#kf{_=WgCD;B zRS|$2+3+*3DC6hRuMu5%aDFP{6YT7GHfR^hIV9qG{QWNxAFa`In`zGb*3*K08bjnY z+=tq%EJ|&!73`a%<*3h;6t=ymjq^ni%Bide@dE-FC9|G>?Y9 zHbKQ|va3Yp(0>(4`zM!DSb51_(Sp9(M@bs2H7_i~Xc2^@_H+ylu z3SUT3>J?t|bX8nR77Q{Pk5W_iCbSRA3aoIT^R>XsqXx-S5YP4&BZmYfs(^*g=zOjIgASu>h5=*x-5lG^No~Ky-)6pAeHxzpKz@H zaH5Z6mqmOWc;bf+uphlHz*y;kj}u%qYqcF3p(J8oSoenfNQjEs&q%KG(6ucbW7T@5 zBiGt9=>3BSh~G)T>w;0Kp_q?S&jXoW^Vhr1Fc*m6ey01ZczVZTx*WrIyX2KT4%sG>Odm&%BoN{>;d~#QgBA)85*`ke*(rSO)RA z0rH2WCq!rK%)4fcED?FV0x_`Hwcxs*Yj6h}Hl9g%O z>fG?w#-&PjZ_uiQl;zApT=#KM&$daM8sMw%7V|M^)6?+$-D~NyFZyMb#JR_NXHhEw z{pW~woi;ji+(gG-sP_Dz{GgsC1+9ZY@X1v5C7mWcm3GZdT>&TUPOmC zZBARI*ZlhShsPO$L{f@vn(qQh93(-Z-E?1Yo#)G+=HzBr9Bih$d@8zec7>Qp29HwgfVc>RW^~%YVr3H9KniMon`0-GF_=P z6`$8T$aCJ}l|WJb&ioqLPjC6E!}DNc>z!~*1e5Bag;}paWL8Jb7ibxYd3^#*v^~ri;bobL;3VObzW9PZawGy{`hAfpYhtW3Z zu0qF`R-!conx1DGACu{Y?v8gZGt*xR_l4&Zeo%bML4#i}e${l+;!%;5fU8aK_&j~6 zqtig7L@6)!UklkSeB`b4ZMag~_uqJ}e!~}V8Mik@z?eNS@k1=Rw*9Tr=m6fVGw-dfi zW=%0>ONa;%5Wgmk>PC@7UG4cI{Cz9``EOxn4uUr65QFO!5fQ&7vDN&2W*YNCILakR zT~9v!4JRR>FN2zO{ck^1MIItHlN+@+!^7fPck4hn2OxRr0>habd8VdVWTtb+ox#EaUE*4G20Iwaf0HE_on43Y<~5Q=SJY%EFWPZBXSq)@RpAt-M8I?B#&;^?ohFFpsGoXnSWeQG}i^8Rb= zXhTv`zHd?1DTZymQQZDaaMyUBx<_#%`w&MCU{PU;16LEhf1U~|d5Pr? z)CwOM{(NFj01@O1Sc>%*M#=y{eEh8x!d~UGf&vgQPGG+>ye@HXS9B5vxV{weuDQG zK^2G8bZx~@%s1z~t^evBseyDNwIh|!2yIyRk0FbA7FS-GOvPw0Km};kC}_$43*vE~ zsquu^8$q|CB^c0PS^w$A78VrfP9H83@VLcx4ob!^dobrF;uLf=1P@kqp&MVwGAfo^E1?m`+I{=KZCkqEl7 zXW^1@-`QhcM3yYA(CI>0jR*eTR%r}4FDYIFz0O?b@At-5n+nJTg| zg|m;VP%+K^o21<9Q%l&5VFfO`ZT%bN&f(0!LUH{LQb7mKB)H~+>+3zb<*d(poiqKP zUb$!j_tD%Hkqqyh0@2M)tC&n0nJPj1_HQ|SQ**0$u23!N?}f83&VkuAf9 zP}ick-nOAoPasJakWQo)Ud<+7vQfT-A4T~ip~ZyiD^EJs+J?H!L(B|k_7_qNm+vSa z@MUfLLU?zt=u_j92t=#R1d)QATA~8ScT_N&ZER}flOxUpI@$*jAq@ii>EhM>)sCji zDfPO2Cr~ixD^6m5^X5cKHI)RBr>L}a>+BZ-C*bz;Q()j$8kHaWW%MGbsW`PTHwiZ&hYaKl>sMSV=~J9 z{&0w#-qe30Gn4~flY~5;IeMY-T!Ytmm}s+~wk1q}+ZN;YYtd)%?keM8=Q*FpTu(@*D&0XenF4xZfKG zHNjyB=YHs`WK6yJn`qfO3(ftYgprK%$&uq@d#pJHlc`{`j8h1q5+zZs@+asb6KsC= z{9q46)Dsx0z7d)YI&4SHX9c3^jZF4)Kn3;>HP5|E4{fi(mw1LI`RF_3>20C-l}L@& zqCOsxZ}C#dH@HRe7kM;{lth^eB-OnJV^CuPF>L5ENuOt$G(yI~qQF$=Y^M;pDEcp^ zTa#CzDs#eC9e*F?sp9?^7{^4Xh1KWy`DBZ@J{;7V)~Y43Ins>hNF*k)})3*~x_GZ=$P9-WmSDOKK-`r1B!Ani5?IrINO$UyFw1 zW=#avuD1M{Do`OI5_jmE-KAi&XqwQy{_jK`0!LwNEdO0WNK!Ev1Rg)eO^t7&&BbK; zfMe9fl%r-Pgyqf6%b5emwyxm+nVHI%5Q_vgK#ief^%yv;e)H%e(8CY)ZtHQVot2@1tD)M}quzi^|brCq-c z!XSV+z1^^r&y^%4honS)K7~YiUo+jIG>5onCVpC@C8|w;O}G3cm4~uIOJcbQbVKvK zm-|CnJv4Wj?tNxliC%G~VK*u?L`nLPT>ER`OG4*!Z7fT5-?b|7g zzkH+9?>j;U4olQ$Zp|B>Dw0D5ZlQ8+6xNa=lY-+V{_RFJPey!OYP1UMGAm>5#u_uT z4k~H;H{RM~cBNs1js;Cu|MCW#4CN!9D74Ec9c0a7aXwxsW`JJ)gZf|J6*G#BcembT z;m%K2B{ZnmpQ#me9OJK1ng#u z8rX0UfEtu71z*OvtE)}?uZ;E0*3*%GG zsQQZ+8O%Z%b`+NgScboj+_LNssn(N z&L~_&yH6iV-1^CI)Me_ymD((AHw#+iNQ3!$1GEPXcOCV9ZE=?kNCb}g3h@3tDi}!;O%ISAtV2{&+e1Wp zo4^%|#$SdE_fHQu{cOeidf?XtyW&}oNNpf{dJ0svn~FmNXH@j$=>n}m_8sXPO=sz= z3pW8{IaLa~W!gW778r6#uTw5{*dem{8&t1_vRu;Z{|%qcW_?a$4BBu-v}`ha=k0w< zm@A`2;Yjt-M|xUr%(S}t-A(f@ej$gQ2g<+)ZTcmWH?MQY;ea6injM#1p<=Ul8xDms z6;49xVBLm+N`16bh~KHttKkh;r6)|<;H#M#4Rv21(1iyg)ijR1AGK6fajly#u$>nj z6F{8d0^DnIG9D5#GBp)V*5BVR!n9;8%xHEvIq6zCg;36!Or z;Ox}p=od=lfB{%=OmyrsV*pLR>2u5oA5laA7{?ZFQ2#e_ZB6f0m6~33bYOq4PXF$t z7mv3qN7cmiN0jsTZrx`$m3dZq2oduk8lyKqokkDsk_RBs4#p^AmyfMP`iHfZjSn7^ zfh@BNw?LERk?F(wmz-nZgO~V_st8axKB8{t!imSl6X(b z@)=R}10S)cAv;8<_OR^4jYJmP2gIm6+UUzeq}XV<;wklL+5Gzzz*U@cy~f@fIRuuC zsK)z};>|jR>hB|FDj34Pe3MB`3YH_{&&v5pwxUQ~LDw?%*%Xynd zjm|J)837OOpf_&-u`UxE;@7TRtV9b0FJj~3BBPfYG33qQQ6Xk6z zmt^ahqQb9_Gu+#sztbFeFPSyWY35&iIQr|xqxJr2nL5`h`Cm(3_==gcbG`Ir5EskO zT`P&qW+KLUBCa1j2ZmGclD6BcJW<9Z^3M8Nw907hatIW}5&xT)Nb)`kC6X9@NYfx) zzfC}xp6DlyhJ_>|&#Q8H#(@y%8DA^Ez*jySP;B!Yu~KF5S-ZU#K=5on|aACif)pW{0h#smPG6=!HjFy9c@&@bLDNwL-w z(Hbc!A|w<@VW9tGU^A<*a91EpLrG2C+?-a<)>f#qC+3SY1E;cf*pyBrmtw1uwwxck znT~#8%i&&M<@gk*>+qtyXn)oT92~qxT`ny`2G4MG#^AvvZ~YP07`XdvLLF6JY@za| zacR+Z+GW#e#TNw|-tz4`SI9|Do<^;QA2lrIE|Oe$enGO2WQzZjF1=Z;mJe8U26;_q zw8ENc<;1heFZVcM74$;M=1t^ejxQ&HoszaDtUSFi4;rU;?-zLWs>M-6Ns5Hk3l~V5yVLAqs#j~|g$zTs z%N6JEy^4c1o=tF(wG!Vg#xXuQBK_F#TfgJU-QI<9u`8ZlxGe^y5q(pUXQEu<8kiWu zaJML=IHz+IYnmVp#nFoR@QXe2#l=jC5e^M_-SD}ABy>~Q=UldrW}w(4y(+ToExyYH z$EVAZNJVq6vCGs=P%mJs+j8zI9q`M)UwoIAmecc)z#TL(W#;;?jL2qXX9op`?q6#w zVgl6=KRpL$4b3VOGyo$pfRF*CcP7$#F`znGSX2Z$G&2ix{dWs#1}!Z?bcz@f)E1j4 zx<;OWijCzbK)sYM+PChcZ)GJ+xRIjCZTRC=-jLsbm#x_4Xo3v$O}_&sjcaXK7gv9S zef|B(A?-C@aIz`G-gaJe1y$+%-fjQ%-UY>3Fs9SPBl0j|q2B#|X2~!{H@rl7T767{ zD51YLdYN>G&U#$JnK#t?UzM0d&iikuzFuSIf*|v1Kd=j8KSx(6m=q%agc=uVv#L*2 zo02=H2CnvVM6`XZ`}~=u6~!l(*xp{zEHW~X+4%+pV1S`nqb9M3#G@!c)JN#sMY;YF z;>v{^hzl}XTGIXf;dgg;^9u_yYjXXkrj!JvD11JWAqIthvI6Nrv4&V=-zTS7k>ByR zZWG-vWD@~^D_+!TYOkpny||>8x37bR|G4luYUBR!kbR)$tOh%Zg|DW^YJ%LIhG8KO zs#)s3vUlOetn2v25TQtRM+hry1wWqoz18)o6u8$3osc%&$W-)*E+s}s93PUmKQv0e z<{@Y0Wd0oKUBdr|*db9Wi;7JsHN%eAP_N05yt`{sT9Q*x6MuT|p>}zYU7z_fV&Gd~ zpD#6CC}K>|-@iOjyV>&J{qvmB7g#>Zph;p3Z{So{I2zV(O4!^a!h zb%68pL&L!n|J^6l9*Qd&68edX?rjoB8Lt`3)Wq+%@#AMU1uY6r;+1$9LGMA0HV*>8cxV(2JVUOI;a-1BDhYkGYozoSXA z)z78UB_=7u_u16VGH?$Bp?_j$SVUGqj(;S{$(A~*Fn%^^Xl^oI6n6v}QVzO;gF}Mm z*Z~_p{kwNnY%C*VBVR35aksXN=8{uP&CLWT5->0c7NR5(5HK)t0=3F0nV3+4_<}K+u#O|ySz-&=X z@DR5#O{={`lz4yWY@roVs}K!V@7n@#&QE^u<`g*f;Sj*+vhDe4GE`Z<6+H=#yB3%+ zNjA;aC_dgt@4?iuD+=_-ZBXW{c&KErKdaH!9l5)V$eNt!ZuYOJ$unzR@J^6?ZjZPl}W zqEoE~vc4G$HUKh6=V1hN`~-KXxtXwNXzHZ(?5TA!c*v+jk1boNXcPfHYjSTC@2yFg zFpC?H|FsJlrBwU%_pD;{^^R`e+hFmgs9#4_o=fb`aVYl}IQA`{%Txh@{*(z94K4GdC#?RWo~>)Qr+y0Cl4=yi;&@{hw;fXx(kDwuYQxof?2u7Ev%pjn zGAB2KG8D9Xe#P83KXw%^9>mk}CDb^s_ib~n(nU8q|7IdtEB^gZuj)M>_kVjXnTu)> zPEpVisqy_gwL6N(zYFDM*!V{M(86Ge^N{g)cjK(h%>l2vGU^MTb2P<-O>shhCP@(V zfRA=JPV0TAdah{GA}mmP1sgxQ6uxMbUEWOSu1Oev>9inCDcwj23d-PH>rT#}nylER z1J>K!4%pOTDlB;W+7huZ0qy@~@>A@3!Gzfc(tmg**hw1FKZJj26bKc_XUZ4JnX=?p zt4)xS`iA0*{1F!Xp%kK)&0jQ~4Z2EQy;jMpu{L{|J=srT0?bT}DGkhFy_jDlsYx}p z)-POaXBRzApfQ7WnbtXtb0gu)0oH8zdqLodUgI0joR6=pKlxd?27-mBvEh~(Fw^4xX1aAtS%yz)xASo*3Cs8At_!NcH&cT9 z#KJR%Sj%}0g6sLu*h_px5QmKnd;tFCC8Twq!)qz!p zZ%kf6h+B^@+?or9%ykB?ob?KhTz*i*^nuBGU$aL?CMJYH7*k^eY4maq9DBej_Auc! z@UN$zdr8t5~kLtrQK;Z?nzWH2H03ZNU|a z)q47VYGHb@(~z<65!M^1LSa07veV%6;`b!nnr$Q4jLXajlJh_H^NB<0mSp zw^^Bm!9PZRAcr-1ta^w!jT#&JQo!kk?rOX*xm7!Dg2@CVdAd90nK#5#xNsv?`!rNa zX&%mbDVXOZjUQn-vC!fBU%1`R(J&t^G`^N-eg|k9fU$jZVC_Bd^mz1inoax=*hAzV zO8j^n06P0#{uq0R^Ee;p@eDSv3hrl-(;k^9ICGO3ri8xqFZZnK)O;ynq)p+7;|0L; z4pHlo)l2Z?J+D}tt48-;z5J`hBI4Rl)ouK%oAh2_|v<x5AlkUv`(La5oNG>G=eBG2Ez7ehJfM^E6_E(Lg~k zVQ_w121;Cq+}=%R-$C=G1h&QbY_iX>lyFHF-z^=4WNO5>adfG2Zp+%()!9d~U#d}`o1#9Pw>x2&)#l*X4Y~CFvp?kAt{^niK@&EpQ zet)Xneh}pfqQdElPR3^lvOy2VS>y1?yQz3)l`rn+$|k79R0(8`um2I1?F9>v!wQY# z?ScDlvOjW?$Bv+Ma>MKv<$3pQNRhCJoP_DeWCYz;{IR=xbr6ro`4Hy30IWuA2924$ z3$PZzP(2IayZ>2ZhRm9We_Jhh1O><#I)wf->-6b!o^)62dCSEcRCuemPrhP;1&Y5% z`^x`+<$!sg1&?sNg7IP}d2f1QYy1K(llG@S;_%i%9M@ZZRA16{JFd^{?Ab_{2jNEd z3pi`A?sG0P)Bb7UZ-Z(#ZP^7^E(JZizWUi0mvc*xqXUZX^Rn2o^O3^rZoCHFrbU(wC zOIDj}d5z`$tz$&_QT@ZU@O>7Iau)UYvyYbdW%zLdyArgA-R-wfmj-(2_>bejU3n$I z;)2;?8IA*Kw&v?lV86+wfufdn{QW9&`f54#>HNYC23m)Q;}QP5Xx>nN?ncKmwXo=% znpnE~fT%ApZwpy|JS3D4_)HPV3`I{&<%#N!w|l;TnZ&>?w6%>+#Kwsc1~Un7pS$T{ zpfe=z&>;#IG*n?)`-=AZOMKPoxzVuarq7T=T* z7YB@r51!3@c94Z8r@Mgtr#(54N1mwJmlP+~f-Ix^Z4|e}hChB;*6(WxP`RpJu=-$C zYmJ|bC}8aqHmZmf2b?4cVtZshJ)!I!J+C(W(#Xia58581d92TKyZ}9f z_4DlGJk|G1B^`5%yfvG!XB_2{j1fOxgWM5E-~aiKCqVZd*Y94(b!X1V@H+f(e|z#o zG=Z0K=$c@?$dgfVTFDzMj_URS9aGTL&^5yu5sn{K7+J!cmLcJFlI?yoBd)krK+4+U zrpJ9qGk4=DYx2M&bD{lxF%B7}|I6bs2}U_p)!B8m=izVLqv2^P0bOmE0q=DRYTs!d zqlXNBk#lc&8BuhV(U)NDk-_-rYKN1Br>bFuVoQ1gPA)faLscMQI77z(>p0v zOl*`xl!fP-*rpviA@!pUVuwi1#BU{2)6x>a(%?sh%P3@^|AqxB%5Pi2Pyb1XLcB8j zy{vNcF%5H{?xU#}!3Q4qxVE(?z#hu(G^;)Z+M4BHG?+9#t)-=9)Ad?N(`i5L3*S7y z$a)IDCY0c7Sa*Wb65W8K_UcGMWr+H^yaG~T%{t!pwF8^0Q8l4Jck#&;=}xO5fd076no z#_ffl#uy~Nmh9czkO4MsTx)$SigyKm(PTd|W7EIq*?FMs3zQ~7t`!^-!uV+-Hx_m3 z(d&&{OnmV>)BW2;QeN*%4r5*#qqC5N?6=1mPd;+0t1kdP49LAz^LzW2fMax9eswG| zo24tDm;1alGS_$&oxj*cCGXOl_6Kvv_rj`b)omL!sW2a&(C$s{23(r8;_2$_5VJ6R z)BoGaE})|#1C4mkD@*OL%B!x&tsR)W>+)d|#rpQGmxA+|Z)&TOrb*G2WUkPwlH|)! zb!BxEbf#B-dqjJ4Uj9pwprB2!91zpHu-xo&QpNTZ>Nkc>^Q#Dt(!dq7om^J3*~->S z?pJ%Dv4v;K@dwoelY(v6j!lnK0v!T%e42Q92=f;sF~aV|kI}|KmJL>~pWLiy$0-?O zxMFp)ryaSe{;JF)vRsyxvXHZvJgK6&pH{(+J?$NDzIXb*a*L z=7qBKXt1=qc3mg=x;+Ab8UbI_Q=-n6C99oUcgY@wEb-oGeLO+VvoIaJ3zoQ=wZ9zC z5%eHSR1?X2LEqA|5B(&b-_~>ev31B4r8Ww6C3eKs<^3?ea z_$DBsRdY0@ewm5K-T#xg01p{dS!{L}Uj<(&0jPV_-$YbB{zv8FB(*D1e!e6?dnq!C z|C7Bo#RdBwMJobxA8d)$)25nd3r*XYwLC*D!4F{jO6y3aA1<0M@}r)UnTmdpoRmRg zSJuDFFr>_AY2mvse8AP6xu8$SO~&0LH=NuXfn@*>w)^N8&@fPtL)3R|faQQMsmMo^ ziTwsBVNLgzIhaQ!I`_pUUzEtf&R7Xi=4=L-yF4Lepe3Vr=3EVtcu9v&kiHA5OOjhS z9fq%JdkJt8i{zH7(|`U)&*#Zv=e^z&d4aDaulCug!D_DxUNTdzck|JaO#}xb5L&K? zjVboOgOf=e;0vKN+jpcn4DT4bm_3p>Ozb}(*6iApp(Aq?yAPC3ec3G)q%#Y(H?gih z8|ImJ-8-~o!Ms?gcVmgB-Nea0r()GNkQqVl7k;NOCiGE^I&^>e_VXt)nm{G{U;i`x z2$^l=ikR5IHm|^@G~DS$Qc{w*C0KmX{KMxrvoagdT{mWUk1R?n?at%4weHFyT)?l; z)XHWzZM1mLCJ(q)AoW`7o}T)A&=90ZRIs{{?$^`I!3zo z9R-NL5zU+9t~o!u@I0P9$l@yw-W@uWy6@OMhZZ{>%#$5$OIyD|4dfc?9nD{!>ST9@ zrB_p_*e&YW(fa|5FnoMGxMv-Eb5Ij!TZNV%2kA>vYGkCXVq9!wEGwHE7T~I8&>$n* zip+s93GWNXqZ=>c!JX5qC+0Ab*2CbNrvn#MIKz*7%tDp#iN6N z8s>&)PbE<#4Z0hCKiGH*Y)$1wzT`gNFEP>J%<_WZkw_EZxxU!dzpCx=>zb=|jh=UE z3GZ1qx>+kiaNuiP>|TDnF)uV5s5=_&31SL+{m+c~?D*)Y)52z`?SB-Qsg_5^@;MLy7@A&7OItV? zalh#6*_5;z_(AB!ePYJl?y+~dcfBd|*xRIvpYz^O6xZQrB7I4-7VN@p=5lARvnMAe zncMa2mD|3|Rc0jZ^+m)}kmO|sWjIq0vuZ^qO$j7N2pJIRA6inEthkaIF_JFHF8^jz@{4V(JdHmxYPI^+6ow})TjixZ zuZ*I^Ee1PIDM+nM*itt0bD`?x8G+(lrWk$J7pc@GH4woZ#@5Zx6Ko5x2-+=2b*3M! zCabeO+f>SE7#dI^%NnOOsZ}3=yFMDu)glh;nsYz(0B2~nM|*ua#D_oP>2&Cove3ln zvKxfLD4q%(-w8D^9@@MvcpVyX(C~I^V&~Tj$s}&;ub&YgY3XdZbLx$OJ40;GS4?)s zn{6sJ#*1(O#jCRUanqVIffAi@WOKye&)1ggWtmxQ`E|FmaZR@+C?-WU=Po5Vk82e6 z3hYui6`i;wwq69{Vd%<@MFSh01|BPsi|(KPe&=eW6?Whi@t zM~M#mIhImY>}`iT=e56K_Ud(_>)s#IP^4&vFvGShz{Hm~rfWeNHsvp>iKKo+fn14fZ4L0IL23i-ho*nS%KpcU6fG&y9JXGT zu{s#gRi%^^)o0i_6i7A$b;i#@Cone{%0_lME48d6Y-W#1xl5x4C=O+HN89=(fTU#i z9=2B=+3V@E^qJ1dREU|;--Qd|8iqjTH3{4v;WC5x zHx@X`|v~2u^HMdlzdby4o+a%h<8MV}HngtLUS2 zdp4{UkpQrf>+28hH+Q?!1sodVn~wbJZ#xK*Ui{r|Qx!7sb-dvetP8gfD0G3f5Oxqu z&Ww6Y^miL-DvKbEp@RLJdB?6fghK2Ro7h`^Rn@n5;V?_s$oJ}1mB-b5#PLkVVaKWo ztg>1C+TsX%!t5P$E}hQV_bVpenmhUI_$m0|@0h`7!vYZoUpQAY-^6ZhewGWxKo>4Q zP_H>&Q;->*8uJ-8>0EcRAF`}1-I3)%JRSzHWLb^R~SoAqB3` z|KC@Dn=3Cn;SaDo3{npPIw1YiBRikV`KT@!piDc&6GmGjHAWcgpJgQ76eaUWNnTYu zBL`0<+Qc$-gwGeo1^~S0EXaHLn)iLkSyqJh&7hrH(V)v>#~Et(`enr(iZ*IIrqI-F zDdnGQd~3hxP3K|&HLgDMH+`t%kR(@y=LW-Y-su|)XU>kbJA2!3vTL02U~4v5$(j$P zm&fw)Hu#~`KBWB8KKxzL02h#*=83?!w%zB+eL0}qNI%P)L^}*Y_QW7c6*>u0AalhQ z&T&c!TYg+YNTp@iVux}Io-4zy=q)Whj{NaWOs%#`ydPu2*q0af)cynXnSsWm+}tc5 z{KJNjJ7PCPeOcKaHzVfOyFM8zS~`OcDR$fCt)T^{r-zP)^pQ-eE6j?U_hR}cG?tqH z>ifTxFrNI{aXfF7j%up6sWGp7JqpU`VKL{30YV*A9A*!!mw;uHr3o{kG9$w1tGuy* zoaHh+Zvwv1>?PvW!O=o*A9G{Q`wkcY9zZvnX1wgt!oz#;8Bch^ZbV`}oK^E<0QbY4 z%=G{UvHd}JqbwDsN{MCD{Z!1N7ig-WJO3`ELI&#mn(+-t?O!odd54~JTKuPL1jv$m zMDW-cY2)oynPXa+`FYzd9b9nCchSHYktmp-zvLsGNG|(YxBq5QIVQp&pr}*9?V;ItUe7YW+ zhLJYf({PqE@56*zGBo62ye{kol&ir5YdN;fIpwpKl_7?7H>a?lRYDH`=@NT5t4GWa z9eH0e+r=}G(~)J(?`5s8B}T>klALm^xhSK|*qH4hHoozHw{SPG)Kg#pO${Pt`a7?w z2gq|8#oO1m8s&oHD}V28-Vr|^)UsTFSnd_o|LiwptS39G&CuL5;(D|MjBJ?F9hQ`~6?=L1>q6bAGv(J+%N| zrip5tF7gv}o@y*9rAk9+;#dT?J*A!|ai~Ks);=6ZI5!1rlr8cd=89bN2fT{gdSSWDvQuIMSzb-(Nv?{1iiXLp%?<6j!Y-O6 z`!qf|Qt@U^d&Y6AGf1a{9(;Rah7L?@o|S5uEwAB?!E}ihO$JIB4U%fTgTl1AM;teJ zi#OSXWlZk3(frLnvF?9K;|u*zllg8+{W&P;xm}6O+x2=CIp_=sX{j_i9endvaNr^Y z@+1b&qjHbikv$$k59W0@{-A1ApyRYQ-^!hmvf>L_?ePnf-)Cwm$%&rhQfa)0wv9KN z&aENyn`>JL#GRP9voLpe?sVzC(z0m`E?O>EbjRXXP!d}HdG!MjfAI}w*d4$D`cmNB z3SUqt69-aUs_C@UbN1ZdT8w)hYUQWac1xLnmOL~1^v}vEYpNi!?*ZniGX4^|wf^WO z2y7Zii4elkV=5`f%t|}gZ6yeUWi+VfYqT_KJbNr#*AT8AP5-#9sBa3U(Iw4q^JpD&DhYXG}D(zmu2 zVMwU-@;vH!E_4C06<82u`tRI|=#IN9=E?+ynZ+b-dkTJ1QWkcWzh0LX4C<}vSorK; zj8_F-u{0+jKdwJL@V$uF@Z!X?d~%9;thStw1O{i&s!~o_HT-_;k;fPM^v8FB-Y*rR z=r_II1se0(cMUY0oXe!L;W8O7?@uJg;wjOimY&Ls0j8VjQqKeUu}xYG1d!u8ZqShl zFc*yYg$ws-W@4=IB|VW$r61EF1BVojrUI=_^Z1uZt{YR@Hyg_&Z{LAN)?f|LDlvIs zeBu^h+|(&sm``Ig9=A-sfZ35C!k1l8KTNro-upn%%n*r@_ugiIqeVKSRz>}0()uYR z_K%oG`R)|M^i1=UCxB+w^%X|pH0}|gt0u-*Emw6{0m_luE~$Q;=AP)aE5zpwsF-%F zj+>jH0WK81r-f!(T2z$e)2BZ&+A+z=!K+1w<2}4jO$kMfd81}Gn=vxzzeiV`>aSO- zr|V#I=1Ccm{~p+vM0K^aYPHo96GTk;UyelWzmNaltKxM;`X2g9m5<#YYQ>mCQJa3g z8C3i-H$-ZIsNIRhBy{>y+%ee+%J_9|L>ETiD7Sd276{;At4 z21o-+?DYD#9EDMpg~9Lul)vk%uQ4qczm>*bsiU%#ktS&wl!YncYoIN|(-L3a$Y*(cYA|KkD>H)!AR zmukGz867CvUKx!+Q66gR8x2cegx9k&>Z;C19lj&f8w}i$Bzju&JffxlesUSW+}k(w ziGF>U_n&Vk{{2<;C>5p~ptl6a`574IWsWYWQked>?p=AA<$`@^Y<5)U5h3G8Z=>db(_8~Etlrh}@U}Mn4pQspFTN7xxc6#%ZlybmRGjALn4Y$*sHeLVx zcxN!>;U&_yNpJUXLQagMrH?PK_p=G%{L(2X4r#u9`)_8J>#Xn2TW7IppOoeH7QR@u zys1LZTG%#|`+I)f7J)DS|l@}9QcHO$?(SG~x)y8e9X%-nW= ziaxlX5XcJeMk_yp-+FJv{Wui(<%qT1tLk+++^VjmWhicS6Q5?Ti_O+R2%N>+j{Ytm zr|hS+pY-%f_73%oqj?zp#6r$_o|DUE>3a!U5)Sk^%{*kCZhpkNZ;#k8W^Qcn+8N_I7sG z7u`3S_0&*zef(6BH@N;Yt+mpHt&uqrWTx9UxPNii&>-MSE0ssl0HRlQp3dE~^+O$Z zB}(6Dot?G3?ku@3x7)II#^03as9qmz7`&Ks+Lqmfj+n9ZVqGmyOr5*5Kj@WewEfO` zRl;k+%GK_q32TsfTU%!IN@sm3R4IZ(of0vkKhqpJ_klZpo4M8o|Ndx~zC^gEja?=N z)dj|+qO3gaesDiH1crO{tpWk6XAL_*Rw%ve%o^XtIg^_-_I^qT8cJKMr^>$0oCe@m z&T`Y?pRPR`& zv5cgY6bK4cR8^m+#l_RB3tt^Nr`Hj3mWQ1^2K))7N1WW!8BfP2&6Mv!#rwgZE%G`t zApuO?w#iunqUg9F0SEMhpV`9SZccPD+Isu`8V%Bq9#@V?%)vWsB|PKo5yo4@7~7w-cTpJNGIK$JWA43U zec6TLv9>;jFBh-Yg za+Uc!Nvp5F-)-f>77V50^}zWd7r`fu?0!e%y|u*mNOF05fuIG(CjB*^MW06sp53BX zd-0pj>)K+FPdrxK$zsmo=qJBrIOPu@4dBzn9ejE!DkCOvcz<*?y1pE4aJj62)6`k1 zMoEAyph?}QjCOyQcDD#7L7q$~$dD!^Xt!+d?0hz#q5~6^UK~Gt#+2I0e&DfibDkHF z+j`xS;;?e{Kz<87QZ0e@B2jJdjcXN5x%)Lx2E*XZp05SP)Ke0DYlw(kTs%p_K++e( ze!;To>FL(#QgU+Ebo|jQzTp3j_YOArbFgdKN2i+Bq4X{w+UWf(eqvTFuG5 zcGC4zI}Si_?-Xdq%BiUZ8&(?8skJnzW#BqIayv;I&YwSc=g?r4%gLP+a#bx%L#`Ue zyBQg13db_sZSI_eWs-ahIrD<2&t0Tc9SlBcGincSOQ&70j>`lgHHY%k;!-_omKYhC z+bs{KlT0X=!!YEq;>cq9T!54UaYOaDOxcCTWx7Esik-1+!a|j#Bv=tbw(Y@ug&OSj z_5@ex8C_?w{cEyIZg!oeC7vLerr;t4k%DZ+?WZIAnu~ z_qZrv8k%~rl_43jSDntLuP-M;#X1*|qPV(W8!jF!Tj-yytUo;Q)oXZ_SxP85sg-P? z`_65dO#iGaLNl2#E67HC_sDw`-Zr;Y>56l@OwI z;3U1u&mT(_r*V2!cASi!6U_(|w_GI>*0y)m4q53nH4@L}%>PhOR8*#p*FCi^6w@uG z@}z9;P3aox%2BSfvbwps-QQkJZ{y>AvEGrt^z;3D^6%yCTRb5xE9}#FJ>;MfCM?5+ zq!UY9XLAw5UV{qv=?_NSYEQ-(_%V&^vD(~s4>;l(9~#M&6+OuVq)R%edO~0F!1Krp zXIce;=YMv(EA6rNy+B{FcjO=9b!~~b;e&m1W~NCLDT^fhErp8e42E;{$=<2kC$x;l5pRT~{?z06yb@Egw^Ef+ya_uOoAKQ;n7pD?ZF>#g;O0YYSwm2*=q&s$S1?fQxZuhD8wEqz5r z711Dh)h(FR(9rA$^mZa|?=5;ww(C z_6-bt{P^+p3k1mMu82vU+ML5i;nTN;2B$c#;E}J}_&7|uw+>W0a;Zk9L_z@Qy1d+96i}CjT0Jos$`!;eNK16i7Fb#eWBcN* zkF@_ne2T%`*wQmHr3TT$Pt)aU+5_|JwgCmkmfn$*^_SNN+j7Ii5Mi)&|7B)!G&EG4 z{QK$7ycCz2R|XxhZXLp?G(tl|7XaTc5EHAqJYHF3Z0+nWHDmt5%A+OdM9UUWzc+1f z041sz8~@D2V(_mws&0Wt>{>TkUvH%Mdv8fsv?XXe;8#(k_#gm3ilH4X9Hz}sNot3P%e^X`SyiS00*>9}kXxwrr?nN^FpnDR)=Dq0t zXo&HLG#DnV0~|tAgAQ&lnZe0N+%{4SN%U%8vRRg_P4-bzQ zI5W-!O7TyJaqp3MItt6S^sV71y`0CxD`M+54?MNEpM4ycakw~L>zdZmzn>^jS>!?a z^Q9CXF6**aL@osPzg4-NDlYl<@gSZI(epkyJM^=pn;tleg`?E0qmfDM#_*|ymgGKQ z%WdrKvt7^rA5UKymRA>RS=x_M+}(;xad(PS++B*hyH}9n?pEBPxI=M&akt{`?z6df zX8!WCo3x}NyuUe1r=4b-;3`Xtt&V0&1ADi;lRpx)Sh`MIF^t~$I8#D8d95C zIFx0CdS%SDw1lS6YL|ODt(sOsT300#XvH>5{-~lo|49?(AT;W9_?gm+FsMf*Cl7$3 ztK!zy){V38p`n+px|Cy!H1*T`3_;5fgr^0 zo4oGxCs^Tlu6fsOt-oTqHD0pp|?e`%TPCJH{rfOR^3DogvS7!zE7DiN+}k$_IMg^#XKzv(XNI4$ zio%(3Ijd;^kYJ^RG12={iwvubZD~NRTWi6U2sx4S{jEcjwYwP_GF1 zVgrvL&~cNR!2jn-4C3z>gfkRt>!wj@s{Zt3)RN1aSpqO zw~=+ad-EvhV*FN`^g+Cv+b0koL+lcLjc6k_4vl_aEVo+PW-U$oZeDKl!pH5wDIxutM?XXtA!^#jvNj-Qiz9 z@nf3}q8)uEL|#9$#g5V0!_krT_F-%^E}@u-g)LwGro-JUqO-aWMMj3m<|Xu_N_?!Y z1mwS`;m^~?mx%kTnX*~FArWDlrIE|5R%Y$apiEr)A`yyyDM*-+0 zSZu~V$r8ck_Fy3+_Cg@rNJ%GxfSpw>X$YHg>%W<@jxo(X1q(QZ?oPszzt792nKqnQ z`gP38BjB9uq-9LmyiM5CKM_@#iO}iO{p7Q)+d|-OyJIAJ-;L&Ujg`#lq_Ca%)!IZ9 z{>HQc(WS#jw8WCJpuAsjsE*9X@GNb*aUsCTA|o(C9FlEs`>%W0i42{HXduJJY z>h5kXOYBn%zjOGy$gz^j895>mIWavXz0dX5-hD@IC7lzwY#R~=!r4D_(f>GJF6_xz z=@G587g#vRj#BfF4j?Im;a=nD zhMpBbqDG*t&pVw+D5)V{e7|9OW!Cd=i!eIvZk=?-R&Ds!N4PfhViD#-v)-J)ZX{K1 z_FJ#yFdrw2Zc~lf&`GmmJT3EBg`hqkd&kNQu9xx3uvw(gr)@ zvy6T-@+H$#&8_Rg8|#Lv>8BTFVrO(85T|Ak@oyiG>c=f#(#NMQ*$D0q7&CnDOaMOS ze!f{fT&)W)Nn~)KV?i4-9XZDD8teZclC$v8teKtGV6mY8W|a{OY7dg8Mthrp&wg(Wtm7=hi!W+Aw<5f!D!iR^Ns#q7?b zORvQqZ;oo2_vhGw(ia0giSQH z8x`<$r7XSquFK1j{eFJ@aPBgF4eCsUYf0cxxIg z^aF$*=R8myc&T^&*UDAf%Qsd`@gFf2`8b8k78`!sX-F9;GUQVxDD@S&Kne9}*18JB z_O!eH9vktx-QpgCF-78Uj5^8!`Z-7pHnd_Nkl9NV`Ma`B}vc54u(unH8bcm z{$mU=6EgqEX373Z&nLd!_ocPd%C@IFDmkHd?iJl_4j|w#zYWM>t5-MJ@u4|NqrZ=W zW6x*GNs`tsNAuzNzLfj+P3fYBfu(LMCWd8R$~Rd9f7{mHsm$K5i&^LNbGe45R>HGX zi>eP#Vz9KHHOB!((G8i_2;DbUWbA%tq5l5Fu{`4G=F7$Jba_0hy;dXXJZ>Cpd;Qft z!f@s3zHT&4dOzHenDSM=@!|KmCSK7g6V^eYU0)vy0GSJQXt$oIP~i!HQyw0JaWGhr zm!z`^=~9jMj1Hq-Ni{CB{M@L_#NeebX@BUa2$B&PY+3_5KMQ4Y>w1_zkY}v$L_;FI zR6I)kzZv^x) z>bU336Opmd!RS|-EtW4b+fU|@v$M&$%>54IG`xlS;QmGWAJRYPEP z_)<0IG7KV!1PY^K65{9c+IE$OUGE(hTnXXNE;dHys|O@y%cic7AP@pLcoE8yd1c>{ z^(lyM_wL&$7iFmgA@d|QT0~eV8ZNJe95a>cwjye2FbHe^WLh0F-qF?u1@*z!(9&jj zEN`U-SK~~rxtDy$5!EP-iq&YCRY?LoMv{kZ_jB_pbh&tXB6#g!)=C%=M>ugCpH#*1 z&qnvXOR`8!Mcz{7o#*XV%+a$$zx&ha8@qo8emEwC8QO5jMn-0R z;U(&omFO_TQf08wd8u79dQVzft`BsjmuloWgA z4jOmUQetNBq4CQ>!LJ*6hMNTmnlz{}p&x#5$6Y!eoFCe{r-|(Sh%dm zQ9R@6{`9SuKP-Dmavm8Rg5_S6!EFa)H#DkF-|3|Da3oXog8S!G zy}(O7GB^>)+*QD8dg}}a=LCx&5d6|()WFp^yI=+v9vbT7CM=(c-cx=0`McTZ%7dRG z-z;C5xQLt@)`+$B9Dvl;w}-5BfGwM@AZBSyGo6|F7`tr67@rvXQwp>-swhPz22~aQ z%Dr`u>v2;fB78bvTzR}yzP!9TxLg$}m`3wFrrYmmG~~`wpcz@z72kADUIH-d!s7Ah@XpdkG+Yo}*rGO6cq@9$kM zD9XnR0aPa8Z$j*DzWD$?QDN*T=00b-+|a;Z;^f;*?m4b0NUU#`!Q`HE*wIA5RJSM} z4AN%7(?edwl)0#cxFZOAAj(T6uC!{_TA&ZEue0zcfBM8q9}b=&W_@Fi)tzZXd+O-M zdpQ168h;i3k$)J^lTOz2pe*gjd*`>w%-mt#?fU6HwqM#pLfic(&1^X@!&9#xmyWtT zN>d&%%e3ke!2Rn=xjs3h%#L)Ezdq&;lTr=){=IU_f!t|*n8@|`399`s8C_a^$n`P5 z{EQ!JF1I)Kf#J=@YU+kR8h@-`fl&#*%=zs zdJ4kbJe;@Q%z>bNDF0e2v|zvAtyc@0CEUE!2N9>2~@5sbiT^vjI@vSO_(H-dDE6}`!g zikabfC9*XL$>d4j?+bR}cWOmi#rU|dwwl*Vp~E$7U`ix~q^ehh&Ae2L5YsusdfZX| z=Yr`hTDqRGrQgF=G;4b}NxMczYHl|ufSGu9w;ejMdn}Qo$Z9>dp(N3`GlHBSog5$Hc7p1D zMIg5m;iEv^ZP?OFTk$ddx0RRsb$TB4Wj6!fTEtgoql@k^&x&8%C8=`!i z^4%NjTYvkJ@1+S3GNJ@Y&Bq~lX7b~qdIjHyTcw_LT15aFrAKqKlKoX#iTVU{O-jiS z#!;@D7eUt8@kAv>n1uj}S&b;WUEj&tt5?lfM@qHE3TEw}Ss#9CS+!C~_H~v*oA%C# z>cZvyG_!kkyxovYKZXk@t?$LqH}r;zzQiHTd%-oJl;36|6! zqt%8MTP2QWh^*yffl#2DRITDw~#CtUPLMZW5_r<*G#T=uU>Jh-?Z!85=H% zQ@1AH@(^Hg^cv$e7=%MsLVmGHJuPL_GPR$@Dyj!wS;XX=jG_O=Sa07GQ1bGoGpdJd zrG%@ByYi`T$e&+Ma7GPSdN`#hoS2vyGc_qwsZf|Ct}V&fxHL!@)k9qpI?~Qo=#;MK2taVD!Ukd~Y%H4%&eCwADoYtm@7#^wC8i0mw)8+;r z8#BksoR(|d3xA2{Fu2Wda|py}f8pF)Hu^x>Yl=pWZaEk*q+P<(pDp2`WR&0HQC^47FcIvE*RW+u8t!#_nC!bHxG|E)O`j3W+5^Mss!2&sjuRX$nEWE zZ>eUO^=bxd5OSiIt}mIT_RUp>O~9hKwtL5gZ@4-b<`ItC_SK}n@OY>alW@7fl|Jzzo$AHNC13Z*{egS`X+FFZn%qzQ3eWfI1 zz|d}^+ZBzz_{V0g|3~Aey&184&D|IIJS8+VSETm8IXVd3V&JzN8-GNuK7}(7ruJsE z_loq*|I^3ixcH(~XF=wIBSh-=az{lB+6P4{7M*udTJNVTPI6KlFBaH+!QP%&7$k+H z%*dif?k-B1uiGsi&bu?R`|el5w*m0~>GS+>6-@v}LEGf{F=gWu!#5;QgSBAo$F0v| z;JT`bZBcmE=alPqy03l{;v~KMn8f=I`$l|KBdt{_5NYBXQL(=VszUZVbw=tR zeGZ#Eu08^@zH23kqWVV$B9o^NjlGrsPYWdEujQcve#?dh?H%-xeQ(64Qo8$q@dPmm%$RmqhtPo%0jgP0d0HEeq^BV%eOem$-&3do8AOYt=^(2sgXQx|pcj1n zb`p#pSFAEOw|H?m#Aswm+4P@E&&W`s;sCtZn$D>I3#QoAIM-ow&F_aAq*t0{a9(F$ zBi{8$0YR?yaFG8ZGny5fusL|GS=D|eMK`@$Z{i8E$Zk8SJg`<_iq19 z&TnFGPt?Y8K0So>EIQ@xQs_$PXt{1&_JkYf=YBo<_tAwwNO-TP=)W`pSs}fQDMeZe zb{g0R$Lj-m-)qf$z8Ahgam12_Liy~jP6e6}@VbMf&Q-h9q{)xHNgc3b%-6=#sQd_Y zw|PPn5Km5e@u}9iYiZx8W`*dDx^#M#a}Bi7vOuu@+|K6#jR3h)JERAjoYi1La-!NU zn~o-qN9w16p&{gxlYr@bs^Dt})MjYne2Y!^R3%ZeTFF|nh4k)9o?v3dZRK?kr-!Yc zzQD`2YEce5ELTvMIYyD|Ne2+#PC6g)yxlEcD+BaukKjn41=SZz%GTra3 zy!6YXf_vvctzlBcGR1{o*HIFiRAg7&JzQ-+nytQbdX?DD`qwFBN)azkZyDy|XeVgy zvai5-Zb>@+?? zgXZ^GnE9PJ??&%{sW1P*1~(h5Wh6u(H8j+H+;U|@a7BDxX46|?!6-O+TD7d;28tcNV(Y~+A?xzb>J9O!iBTs@u?W!A`_!} zWd?ZC+;&1|SLmA!UW~GW(qGff9?&}5FP=}S^ORxv5fe*!nUD;orNrXKid+``r_-u! zI6II(e4yNB*Fq@CBk!8XBm6U-P^TYVB(rmFOk9gJnC>odphu)E>KZkc_^Lq#V={)2GTN!RJBYo zG#4+QTrh;*a%*amQ<0A?biFe|kL7t-+U=K&I9eWhF4JbNuQ6VnuXeef?`#JgnqR4& z?A~9tP1kI9UyN}xTZhw;$v1NioH<7d*h_&8Uyn>FZ2oA)Br5$4j(={rcK8iQ{M?91 z>fGZ|qoef`hd&GtOp4}Oz(^Iu8ArOTI_zb@ z{nUatD*~G=BhGtsT;p^CDNVLROGFvS`*X2{1#!!m-isQ*8-1=^*fgIFPKx@7X1DZr zK$otzgf?9+NUlJHp(1(Jj-7v{OM~4mLiM7_<6l1TI3`D0NVcnTK&kOYx3vZ5W;52j zc7f-?4eJ?m?IaSSL;<%$J7zJIY2k9_`1S9P3{aZsm?$!+jW0zb^gn8gIH@NwpVrdh z6YC31i6SmC{@O>9ZIAVa`GQX6bJ@)4c1$Ghgj+tfv*q9E10nC~HNqGr!@U#!x^alG z;P4fGmiOhnj^_=Iu-{4Lg6Vz4-pcUXqw4pVnYR@UKaQ+&NzMft_qe)W!cI4M6x0JA(_$Hu5YXlUx3 zCrP|ge8{Tc6UI@$%;wBG$C1z!1)eQ*zCFl?9NNC{RojqK&dA!yTLK?XrFQRdU`Weh zlgezUDQLaO-ue)hlCQc?&4(oDci9Xuny2tEANJDcXQKCD`rr!c^Ci)vs6-=M z)jLu1C1PujZ$KRQHRl%V-fj%oIk+^O#)B{--mrwF;p8Tu0jlz7^ zWv~`~7k8U^fvbTkh1`bQn(n_biG2gAZR}Dw(WU(?rHoZR*l4+ReqL4Br;Zt5?B6o% z|Kj})2_5fv=ru~reHBX0h3f`(Vd2ICM*Kd6h=%SJ{o^NtVN=c4y z6fYTPdMPT9l$9c-WQl2i`_AHM4d_Qy#TesPK_#WMGV7X$hCBuPYJUbTc`QNY3uK9aKxvH8&Uauf{EAN1 z4}+&n)S>zSEkzZbZyCbK?|xRXT6JWZ*}ENt1T-cg!nah#BE9pP7-(L*L96((TCUO2 z%WjoaYmOQ!_;~t#R`2}A>^g~AV{yTel(tx|w?Jn>{t@N|1lF}MGu^ zut2dH&|EOQ>VUV40(B7+d%n+zQ$@_ZwZ`mt)>H z2#APh*Vp;~SI-F~hhVR(kdP3@=2qop4>myI2K(@geD*SAMn>1qXE4Ba={)x+C?QGT z!*%CLMGFNTSy_WyoKffF-lptlFScyHHH1(&g6m6TV39PRblUk$b-SvM@~%3cdnhe7 zDo87@BfreOP$zXFa_3?^O%*_yeUew7G#E5AGuB&4td?MMGXNVYm#4(yHqJC&i zS9j>Yzkp7AC2V=Saf8b1OhR_@#S5k#EDqQoIsGSE!Z9cPaA!CDWG$tIWMGd%n$NZm z-ClVp5ktaq1sc0H{>*>&#Lhh9EIAxFI5=mJn3Kw?nzf-5y^XGEr~ZDac%Fn@(9Xc$ zg!Hf7Nnm^SWVG7yPK`1=U2Ks9h;%7&k!PWF&Mv3~!AuY8mE0}lN>9Ic(WpD7c^t5WGR7@ZAzx6g*}4;+BzAwYyvk!y!? zyLu^?^gx@^aW@7~ssZgbnBG6li*T#bq*B0-XvVW4d&!<(NlH z%@@;yt=98b>|V&vot>Oie~h2;z&ce@7qCIz*pa91K(^1d^;3)K%i3!HaGR|DsG@t# z(G2w>4=!%Xc(DocBk~>7`5vxPU-a;*b{z^nrWh+eeunm+-%=;+%&ecB{;11Fs$*iy zr8T%Q&4uBzGO>A|3jI)1Q9I?YtZ4m+H=MjGc18qj>j@%yh&%)K|~w)_0P{+J*qI z?q7An;d%i->~;O(@8ZPU!Y?sC>qMT;>rRr$nbAC6$Kb=|;(%V{;4oKjN#R29`0W?8$=I;*B8?xp34qZ*sNwazVE zRz>oI*aE?3*)$*_6!GE%{l8%VNQdIYfNEk33uaOK7_~Zvnq|?2CYa9E*+G7}Jxr9U z&X?f|j|@aAP4wBkA=GkvbzYIdCX2%HEmx4Yon-P^(;(lSDDRph3>FpWN-KR$E z)efDh+)HI0_BrNHBUnD=ZVNybNS75d$e0?pjMFKX;GKQGJ?52E=Bpy*VTrj-<^0au zW9x%oQLKcH4rT9H{P+&^T)#U!W}qK!@o83bgmo!U$y@Kt5;1S7!e3Te8lKa+Zubqb z3NkbY`U)XwJ`aNz^vldu<$ZI+!0G~iWj_KkxE-y0hAGl^gW;0VkUEvlpTWsySyGpm z7{i_pc)axl9VLBSfDP^R(VD9#?GOYP+p^y7c&4kRiHwiw^0^Wm zN=GenEWIQQwxER#BMxD_)E%X;UdIYGTsr(6Tl$=0A1*}ZRj5R4l0jz(z-Mj*3ELYG z&kL){mw6^SAxXJ$_(~EMj(}1xY1iuqbXdw}sgWvMwWSb9QwM!U7*DB3hp#p_M)lYG zgKajqO=cXLBq(xn7VQ}bxcsH&Yml&|enq_hZPORAyC>*bl9EDHQG7^vVm%`H+ckbQf9)Nr_Rr-zsQ8F z0rX$(Jq@30MlMZQBve)H(z)nFjylV5zTA70e6Ali2I5}M}a-2A>0S|A#IBPl1hJp`T+;gHI`IeKgT^A6mI0^cqpQ;M8;w+SdMs~FI#_;T5DKQt-&4#f7}BBJrBBX`qoeLW zPfMU4Z?2dRS8j65Nz}vuc09fRQE_`w@KKF^b+93tHMku!pziy~wwpPBQvdI-RVia_ z>eI{FWS?KdEq%2pG+{ae`CDGat?zx(`9u4^%y zw^wItwYy%f3q+-;JZz;wV}pE{(Dk9aY(@0wvj|%~@8p>t)7#jvy&Ow6Gv~LDs*z(c zGbLWsJ0s5SnmA~b%Z64Z9J-|c7tp8I**PWrs^B3-LO>@P zaH`I)x(vsh(`x=|Nt(eko5xX3czYh(&gJ7vtk)X&nkkeNrmF%@Q1JPl`HdX?;@GSe zn@_9wc%92mQ|8ogH(2A-U=JD08OSF9?h3Oxc)#a++NrhUo)A(JU?GK zFwF>>QNhuzzn`C=ZH_#JN zg7yC?0_K^FfduW_cb~qC-p*Pys%A1O#(=1Uhormh0~{ROFN6hZ6jbD=4T;#Gyv>Dy z6{z$4?<5UWepfPh6HnZZI)}3l4~0Qo)zvCXuoHYv(ruSIoMF!yB6t*XQ37b^fwf1Ftoc~U-3ag|9) zTz^ON)o#QTgGPoxXOV_%4J9%r^7xPa!NtQfw6KV%s9^jb1_t#wBqIEGa=dK3_P-A% znwkq^c}B#&5orTaP>}{kHu4468C<+GD<^KXO*NhKr!OYP=5j&~9Jm&+4X)<;R>}MC zoTR14_PAV5KaSW~?>>H0({0q$r1QPE5V*fygu7t_Z4%QIu>-rT#veqeWPX1X%$(}( z_Ijv<0>#K=E+3u}&?YA!5;(PM2Jdpvzr9Lh8yh&h*YU9UA}Cu_=W6Ed!lU!R!vZd( zbLI*ZfP^@jI5R6d>?9!G9yajFq;MX?q#_O+iQLhpJ}}pf904@Q_W9N8Gh3JSICZLONG!9bRr2REv`MUFjS+ZBKhn+7rFjo&WAlT5GhXKofg^ zMz%ZQA*`S*l$M^aH-X0o(@uWcwRL#yjs-zN;IH%nSZM3J&hnyzH;!+9f?FZ@-WE)x zn`y0HHcAJ2Wp+}#Mc9##NdhVB-wkxV(o30q1)t0c z?J&PFW+`b^99+D~l83JV7BTx9uS;Pn!M!*TsyQF1wBHgmuB%;C5^u13IAWcm~B@okw`;?prLWL z50_;MxE2PRMv#juT!vvFXpDtIA{#?nN6?f_ilc*)E|#0|UqA3y(2;4WB6V&vQ~DfC z;!^;;@Eco-mCb`IJ5)?U@gUb$cbjMIxrM1iN9C;2m>5F_iQ6?G`2mUtoL&60MdY@4 zU-#FN0L94)O_B)X_x2N+IQ3mO_xe}5EQtUy48)&{|3 zyn`_`Qg7XIXMcUxjj4$AZp@(U3rNY-)w7@;rM)uF8Qj)>*p zwqSuW7_M>8-{@uc+zH%|(uE#-ikbwPt{J6sI$Bpw#&f(YNwrMTJZiB8le?0u+THoc zoJK&R0JIlSKr5rLfpo|#E^1Co$bS#gvNz5=^b+#NUw2lnyw3(~>F7%V=*u zex&8f=xD2lm1l{`F>-YBa3|>M-4oH?)_!A@ECYcbrQ51>s3yMm2oRgsX=n+skj64H zHM#1)gBEgk9;mD&0Q1E*l^s97bkyteltolq{cLFAKX1z&H%#s7j*|AydhqC?HBd@lN(R3>ZSIePq0!FxC(h(%W_O&0EoU$*j z(RXvKsO7OU2y~AL+ApQTK4T0{CUM>LEQBz85T*deIe*=Qjd3F*wpQ%%uQsp8(tAZv z;;^xsrJ|PTUw1cSU<__-*9iJqcZNJEJxeSzF><$&N{N;fqe_r?o{+)Ex-Zk%cZyOA zMNMZj@F(B}oB#KET)23to>XZ8(?2%|mzSa)lpnT&Bf|e(-nE}KyT{dBlE2YfsHfy+ zuj{;Vww_I`PxKDT6T5(`7~gZ&X?UdK7e~l#H9Nr@rT-wjbw|i0Y8*q{M8b^>CMq?4 zd#Xq$WzBy)*z|N9whkYVX87-KQ#htgAlIZp8onANJ1_2ITmhTB$bcqvs=xvrsGmin z05h;!H?%uDS{V7?x~?#^N*;yx!$z}A`lDl6oh};DvFRb^BO}p9fAA3iuL7qF3D;%r zR%e`B4A3tUdO~>L)m_h~VtSG^wPu`kvXC~7O`_AHK3gFphskzl3aVNJ5K7V^W z(_t#Ubv;n~3MViGQBEuK{^yPrvF+?zO8=UfZ)-XE^ad15x21`1u4x3ePD>E{rzXEw z6V=2UiFooN%o=K{)Q5@}-0MS7^07#*EFG7rkV-x05!_pqf2J~AKw5vkzZhA0aDr&g zhODPVJ(W>c#(OcWTw!SRbXtZqP~_0^{EQB8AQ_MDUBR_h(mc>chO;(bPdTe(MWhLO z#wCjc+HVYE0w*~ATd{=uekXIR;CE-IX301za5vWsJZEE_xPQwVQUwVovYri zQLaS%b1gQA(ktmQGE1NZi(L~`;o_gK7(oO1;>@UKog>FQ_uiJ?*pA8{V-BiNAutHT-VA>GUmy1 zF94EMp#70EL6(A_OmkmDHfFUaN5zF|Wa|^Q#^bfo?fcs}4_OBFu@NJ>o$KQqYQgq= zL%1KOD7Z8<{`y>zb$;_tL*T0a(Vd-Vxp-5AimQrO4~l}qU!`PwFp58JIpP6Hxma?6 z;UU$}q}v_^P`J;Fpoq&MR}QyOV#N}?NC8MmToPkcxGZ*PtL1rn==S|_k)y%KDMa9L zx|v5SkE?$Ur`%!DTWf)+`=trRJy+{w2=c}3Y5}^Xe!bDFz}c$S&9s1S*xI4$h&;g# zUYKyaaGGGX3RCywtudwBGvvX{l>5mOi+AVN{{G^#idfz>p5T3r#sCF0Km_jXQ{iTH za@{`uC7>P;2YM)hb?N*+Er6qZ{GaWsiahWdl}zy8!3opbn_Kk774$mp?|$)gCSm|i z_U&~YM26rZ4P+#_K!-(|!;n=_5Sb%l1#)eBNAvK20QPNDHH{=~1A`R=*6If@&LI;= zuna)Cm)9l&o z-iZd4EI@%)nxT&u*Y;m^KT4#>eBU`_P%1znTCbBAIBCCR77sL3{ieYC>ba7?|GY=> zW{v~-E*DROG!P18hn1>;qD$K{Xg?j>Xl4&`_~Rs&Rp{xbfNvG#^-?-+Ztr3t@p;U_ zccJA+czZ>6jt%zPx1-hTiJ6t=dJd_dvYyQi>>{-vu9Gx>b!Fj&-1bZQKDZJx?gEs>4azn>3BO=z?)5Za9h)&m-X#kjEIUE&W*bfmPd~(?=xMr!s1szjwT` z%)OsvifFu8s?f=f?k-9%oeJa<3p;EW2B^N?r+e^VNW)v!OdbEWw%z4r6!TgD+lNo8o^V?4sQ3E~UZaxLHG;7HQU2|&(ptO~RCZ$SSSFYKGj6aiQS1bYK z=ncqjc_!-Gq+8%wQ?q1A8-MYH~*uoaH~REVJGQK273jVupKhi9}H4d zrvPZNmS$&6k$Z?}7D^~F-jA9v^0uclUEwYt2bb%w<1MN+He?xx9OPgC^->E0>4yCJ zcme!!5JKCH*5TCw1~&F&rI#BlI^4@AP^{D=;EXVej;{HGT_Ujm+CWI*=a;5c-&?-b zz9W*h)b{hXlL>CIz|fFBA&i3!7HS|(V^1C=D0`;c{ml;wt?oANDt0z*-S?pwSe6b2?H{6|t%VyGfg ziuX}yQq);)AN- z!ifW+sy?hv zP{&PDDoCXzt{BnqA=y#U$x=lz6YhhW=`A=?d$f6bkGFsQ9=#sRwEaPYv0oojn`Rq< zI%i|FN>^DD&OL`sNH(>*hZnl*9gFSpv1K1^!n&c+-C?@h?m`7|htIvjy&v8&O-N@x zH2fD@A81+DpCL3oT}-)nXQ%P2jApT}!t!42ZGCs8 zUd74^|H-zp+NUe9-LIgkx{9m8DseD4q;*Wc8!Mr!z=!>MhBM;;*1NiA4_yjfk>s+h@}K7 z@>=i6(D1zhDeF$l_i=L0mIx8nd;4&MPKX)5;Y7aF z&~et<{6{c`cDW|~8}oAa406}}!w4$NM)h$RP z1ijf@=?)UIE$E_1ijEn`?SY)GgC#6X4i+j&p!KZtIWH}W-5}KEyq_E zZWJsrK(d@tV;jza?3H1s-S$IcNYk8A8k-=Pd0AB0n5ABh0?la`>ue`h@z8I1+w%8Q zl4*^1d2|y=k4P}`h;e7sjfGx&9-hYM6Gy*_>_)oz z$mWbIRSL6PPMeE{TOt-Jw9)$dLd9K`d@hRd4MvXN7I36ulbLRgE)uY4P68PwR*}8z&ZgnY73PUs>pv{Qu(0@`2}&2r)Ff zPh@nu+&tE49UU3@nM_=fr4{c9jV`mKthDbUr@t~7YZum4Vm#o@T_C`lO5A=Im`*~X z)9eiUZIIn^% sFNKLjzg%(3TCY0rM$dCEqoQK2HuU|-=GuDuybVVi=;r(rg@U%R z{>B^yL$tn+XycA^RWxTHQ*256%OyJ)yoPJu`B#;Ne;jg@S9jFkDH6pvrp>BC&F4w z7Dth8nU!byRta=8x#SSBl1Yc-TL)UTl3pO^pL0IM`Q&=C9ZBs%!G13DQ~`D zBDGc;v!70@SoV}YBywCJyiw&$Fq{1iEx7Y*gGmQx;|~l-CrN*QwY}uLrYEKRZQQ@> zE}FHN>h}ztXQF+g=a3+ILypzPr=fP}xRT*CMiGa^Z9`fmE=ODb?^mBD%k47XHiz_B zw^S{OmwpaQSNP2W=WuM9|T;>x62Y8u*kW z&81Z7y*t+AjSmk;x%RGxuA#!`#Ga<|8B_t)_Bbr(bOZ}ozc&0!SEW-;pMa5^ODY}$ zWGD$q3vJk8j&#KzEXfgM=vG5i%_PROJ>unJdE>+@4@w9RIb%VQVi1d^n(t&mU@E&)!>uY^GFcjRLh*Tmt;a_iSpJdvj`R2BL?DRiMM_ z{WR()YO02(Rsy{`VWJ8G)re_5nu8^#%OZP@N8;DojmNI*aQtL$3pChzyLW!J(o;b6 zaL;!Yr;I)EasbZkRd1WO8buO^NR1cpH@;tzqe8O_z{l*I>^Fr<)s)13FZ@DCbujL8 z#q6R5X@TW?|1?G;LRv59WLgG2*Vl`UHd1*TeNSgrE2a;0e`ZV?=ciN;a@qY($YVZf z=Mp=j7G8>HLqL}^8kDeeqPYjEUs!;0JbsUxyZheewo5P#-KlRjX89do9c<`o!I{D2 zPBx8It$ma`nwO9<&RuYL&g%OHW!-H5-31jjESU`!n9-8Fz}oP5j-|v9C$?OM@pX;G zQbe#KuT?a^11yznA>E)L-7PI0(%mQ_-OWvRcc)UfbazR2cYo)8zV)v4{&;`r z4_SDfYpyeU_UxH6NANVJ*VJ%$s#My04b_dq^f$7%WA7tpyWK{C)}n2~l3`w6)y7u( zN)!s4z-fgDgL;q~N9((uIjI z`qOZ*+D4Lj+L~o=kCJc92|=Tj@1-3_aMpUk^EjRKUbzo#hMF_xk_o3=9v#dbv>e{m%N|;P|Noo z6|2JDhkmgxjH*<#m}o04ujQ6*eySX5`tjfHrszDQHZ0ZfOm{2#bfq(7Z5$J{yg5W! zd}~>QN_0i4pm1eEeIT4zJ;+9|^rMc6Lu4!2m*4B1VQ?#ERnk6%<-}QMK*$M$ii;*W zQk2?|{S|rFQ-NYFS!X&?*U#)d08Xdx^HU+9fzrkD+#yd^D^#|4t-4%y1G*vNJx?Y! zSzzoOO8fdUz^{miQmsWQ-f+90shWnuuR*buKAPKCG;453Vs!WErgSYO@^*F&)Z4r1 zd{6A=_ov$IcgcGROx3Iuet;3C2-?07QP`ep7u03a%yX*oaDE&iMLR_C_bN19n2;s^ zauV6VAEK9LIeO|B-3oh`*xC$!o2YorZxKmY2@>7fH7tTkTa!k7=S1qBwqF7D^>emJ zev4LH>zTq@%`Q>YY3_$Z)0P}HvQ18NR`uDVriXLB-*y%nYj!7sZe<`vktH@cUC`>s z09P9A@saq1p*erbH79Id!H^86X*xE1WigOFMN*0xj&oP=GNF3GkbOM}YdA~%#^TnZ z&t*DO-#?2pPI)0Ui-!K*l?PJKkgqHu*uy6%GxY^0D`dJuf_2$&?Pf|%7e{gj?9l7T=&fVFO=V60reIoZwDXa1wp}eQV&)93PyeOvs#VFg%=WdGp`LMrftxL5+JZ z-e3TyJZ~J$7c=T}He2iNd2;F^B9TBokZ@peD=j@m)4kJ>UurJ`xfLmo_X*81gG&UY zzI-&((z+)!Srq6Nt<@PoYe*`v{AZSTggneWiLH90clQhR{`#O^iwoRee){vL!_IVs z9#gw?Tr#`8W0^fPg7qPcGmy{oHVs;Xh-TckKdW4l+&o-=MlD<6cB1cOJuBoUi3IB8 z861`_7Y|ovvy}#ALmT__RG95voH(AfE^J|_=1^K}7AvF5wQ=7r;;_#4c&5etntUzo z8xKZVmLY-y^Md{wH30?QVDvX4!6pjpGY3vECjYv&Nj|T}jmTVNg*6%FzQv9TQvcBL zLm=D5tBazR{2g+z{?>Nm#kJ~5_TIQ$5s}zC+sexQ`v>PstHr)i&%3WpmISB}&f$|g zXY1LHE`{umcwx`3@9vcHWr@H9Dsd^PwGMDN-_Y=x{M>MaYx|?5ukoOr$0I}gW8WRH zL5ynYHnYupet0zHTHkt&eGUTB5bT(Jd{m+;nCRpuJ0o-c6H?=qiO7&<>8DB^k{S|I z@9 zspUp+$+~)WrrDWkZ>qFYzw#dm`tPE}=98!N7hHh$vx2cMm0}URVB(_a02QV{uH?Jl zYWsv(B6`q1m9D%rv7LCT!6GCDV-Jo^dSowlDZtLKSRPPW4{@Z<7TwPPTzqMZ1RG4< zt@Y;>m6znavG4IIeH&+}5Egcfx?IX; zn2N)+x_6`-sGDTZg^nS)-Yq=B`%VjnZ=)s+Mxyq8F|H(xLivtEJ;6fv5SaI}Zilr9 zy1p)j2vEV*yx;9JyMLhjr`c38rx091?}-#3Tb|b+NnNN46A%f5N58$lj}V-}!w|Zz zvotg@&a$`tV_f^zwg`(e59L14o5U6q#i9(eK8eGaw7zMqmwP{iW5hR1m3L zUt8-w$BPN%YI~kd3j&f5B~L2yQFyAzj^d-o*~7fYeRl{&ZdV~uu{hn1cD(V$UA5&6 z5{7}nWcXU7*5bl8$jwxqcK>Q;i-r+e+p1IJPPv?v0XF0cUA8S2#cnZVjqWprTdsVA0=Wg`+^l4K>qA0qnX|N^Z&-Lcc zooBq))k3LS=WP8Xcc;)+=Z86tU7kh>1&M|l5FfZa_@ocMibU(~^s$vKhD3G?M&px| zI}rxN#U&yBXl`~dTiRM#dH!irm#CpTRi8=M7`hub!b&7#Mw^1%k+jTM>0ych6sv8v zHaIy(H>_oImd@gas+`%8BbBfBC*C&pgNr7~=tDxlmn~v18M^P3mJQ{)B=LSS_GoD@ zx?0VAX}dRN_cD5M%s?3yha~CRo;*>0i2%W-Cu3z-Ip9L;Jt}{@KB48|jU_@#NeTDt zseOs*k#?mAwT@8}Nt<=#c6Ksc$A&B+{-i4`Ne#90Wk*R94PcRoe8Z44Pwy6cFW#7k_PgKKW9!((Dh} zxp!Dq@YD2md22?wcC)B4TD#!r=&1M6%|d}l$cz5XlIXQn1of&{JSG{aksXciC%3hd z{vf;en%Xm)3|7V985^yL39cTjlsXZTBE^EI&mb1ahu2ew>K$cHCNd~~!ZE=Q^LT~* z%lsWgDbsNab~2I{PZ3 z@U_*AJt`{dS)_YLu|^>dw$xWFk~Ek>!k3yU*Hpo{94SjvDo28W8^Ay!dm%8 zZ^psmqygKCl5V}1hFLC=rA1#V;}a7*&I@(N3kQ`Nnq3Qt#JGM~c)pGi1buVT6raO* zk8h>Y6^Gih<|>0jVN`)x%jEY5rnSSJLa-Y%hKDvA)A$=54hf%uQwZm~lObRzGoUaP zvld@OMKSR4fybyl+n%YWwpT5SWt{i!m6TemKWc|AaJ{qCjsc7yG^f9C|N8nFB92nQ z0^N_F_D%ib)z5yXm{YP2^xT_C85Y&isDgyATSvp3heYNkxo!}CWoISZiE!na1;+;h zA@B8s+Uk)VE!@-VJ-#LH8tJnk>Zs|pah)(_Lno2?N5V~ zlkb?Am{?d@D>a_HDcAwg5zwqbkYjTF2Ok-iHe?OP?O8?o)PZ>+Tp~WehN}r@U+8)K zMT;{Bk!4H;gz$ZW1e0P)wmbD6YbaeBdQBQ=bifKJr>n`eOUii&s)L zGD_rxTFD1)4WM8iLsZ#Z)>ojX2etzyz_QWGWHxT`Y)K~MeJ_IR@S(%)j(6NUYf$^5cmOyF)}LtS9!bO1%xBlOCB9REcE_C zO;rPb&-?nh)S|MfsXVW2l>U@v0|vJ6LmT^Nuk|inX+%}}0PU|IFT}JQ7|o$?h28;u z>O}C|?InrqqYt*s?dsY_F>t|KVpP)mfY0HAz|;v2;2!tS}=kB`41tZeufTt@TC0kYu)H%#@9- zVAP+5SY_tA^F`?FthpG5?0a%b|BJIty|Q!)&<98b@X3nV1Z*M+4dax9y%@6!K;jP3q{LWs##f{}uf5=(67zg#969_A`-Ngu^Proe@w4hBKL9JpTRZCRvKDzzgA zc@4Y+`6Wv=j`Zr-hSEg&yidK(L-6SaT_I7wnRa;4Kh-|h*P*V6B)U7i?;m4r)?SlJ z#b?w=h-nIoN}SQH=p)VN9g=To@J!CBDU;IXU0d8ek!EVlvvS>@wc+JrO=vDF$r2fa10T&Z$HL@edx5 zGy%uQC=va@csO=0vEctAh?jL|DdWxX8xMs8HX$wwkOlws-;na&kTfJ4gq+I*ax9|b zG4^gq>(Muj{Fg$ZlV$B%ppetfwQYwm$EOGfHm|Wsoxm5lpBCa#e!&U$|M&-;lqL7; zj5eDWTJH!nfgi6CVJ8c>jAjV_5PEeUJ8NTY!cQ>8m+6tYivw%|@N>Shq zAD731YhG*=OqV^Hmvh;Ez0Kfnud~1t_vw1yz#NJ$+hL^;IG@;C`~a0&0pAx?6VP34 zzAYf8N;E6BLNRL9f}fLoNnD-z9-QC?Eh{E{s^F z9QxFPC*XZbLHa?B1zf3cdS8nLJf5q;6&XiXMnS_wogu>iS6(IUY9Qz_#4>goQ3KKz2a$`wM&uM zLt4`u&rf9w0&%}D<y&)(VV-fUuCmM~Xk-ayJ zKx}p9qZRyN?gD~WK6`DmR1CkZcMlixR5oSe-Qx?soY7o#ZmRBT^f$fVKA!$r$73rX zlICvj1K|LTk#Xhq9h#N#@ekO}jxFIprY83m+d}me4FmJ;AahZ67Mtt6_otn2fT$eA z97DBufg3U_-5mU`QiI+vh3oUi?&Oi%0+5>ZPQWa!h3k`+lTop&)B;F*TQw#~4CWJA;H?yU)l|6is2L$`sdqjnRp%+b9QD9Kl@mu!}kNTBWm zlN5**aY`nxU8cOQh-Ot*GYx)W4Y}rwnw#D!DghLGnM*uO^|6);+=W5o4}AAMFy_st z;>pvM2~OrYE4!1vw;(!E$0f%XIK9dTqP?kNK8{z~FU^q10@@ z;tw(!wM|>L_0|iY(o<1?Bt#4om8XXWegide7cjs7FcgowsZKRNTPRl&O^pvKDgqjp z&pyIaW}0QG0i+qBCYT6+pQ1dLMz0aK|Mz^_{&JSouOSBP()Da->egWIAMr26I2Y@y z%g~>kn0G0%p>StseMw*GjceDq{O45Wm6{dBI0hhc=Qn3Szb;>cf1_VNZ?=#HXLWc* zOvG1VPkn5%vQVPk?A-$DH`k^MT)=&X!$=~$Z%(<}+7_*x3s!ILGdnFFjPN8A92{y( z%%QeOn-<9KZQLDWe+VQZ9MkY{ggk>$SG|Y7*@WnY5?$tj%*w_bP>-nLH1`#=TfV8E z{P1dewUTcs?0Tl_=~4G;^%wK}TP_~oGwQ~9hS`%@3;xztqAZ2PEE>W`1A@1_ zLZjyrVg%omc%zj9xgA1ufBD;(J5s33!>#TzXi@~HRO0PZSp3!R7A)9u+;qu})!sSUAwON*VwJ(B!?+`_`)J)8u#KvYvVZrY^L0f27sN&dFZ5Q@RPrsa zY{gdmSAr*8_@xH?1jJ*FtWo)L)!)`c=lD+lYDcIudkg5wCU*s@>29PB3pB4?0I}2V z;ne7L1b#RCvX|ya)LCk`h4K8UZlGNAuQ3MHu;v9XzCiBzjy7&6S2HuxFblCm(nxah zAC-x4$`n7^S;5>pb^B=9_i3U2bP_PN6j8kf*C0tb)@g_3 zh#{aV28EuaDu}N1!-$bS!GaXHEU(7KLtR0%;ondTEwZhBoT#19It~cgG~YNNsl$20 zc{yS#=E{~?00X`#j$@oKXsaIJ%8Dpp4e6qitB^>gE0EJ_t3DhprnPWS=6(t42!0x|(r)gV z%9T>UH_9|K1fO%fSC-}92GiYfaEcUvQGQV=$2e5d;3MfNBxLTnAI&akxF?Zyj{#d? zeWFpD&2k1*G&>~3S5n;Z!+!l@Z?+3hc;j^SQ0F@l7T{} zx7S-{Sjs`30p6Wf2~^x<*5|jdn_zhtWThm@MeY8aweGuBD_+X~V;KA<2@rNO` zn8XKtNEEg*b>CmLNsqIyWK-sav^v;fSUX-mT`f&07!W$3OeIUyaTOxiWy(@O)UVgr z>^ff8J5DnTu8bYh8jFcWy10eDA^dGsuhgt3EEz`|vvn4G^ZlT1H1h0e8l-ycQt=~= zYUO;oob^^>V%5e|^kXmeGu?S&BcmqVfzc2lZ~q(}?F;Q?8U0H+RQ{gc96&B)sPi$4 z@NzwWr@s(G9_05zSgruwGGADeFtuIZz8nin;C8lc2PTZ!8L8uhF$4(q;*W92!Udj9@~wSm!T4n;Zw>^4O+N)e!utS`3S)Ebf;9ktrC%YY$?@ zMBTK8hLkq@_o78?1yWm|Uyd|lSu76#<<;h~3(>e#OTy-8$yHz&bRfR2wF(0nDMT*4 z&EP|^ceCpQPYkFY0;xOLxz}gWWXXc%ZJjx4Jtm{UQFL&RnAHb6{pAz`WlOavkS&7( zQcCEcA+?@8Ri`^Y^vA!?Fc|w9wW^K)Z?n7Z8c(nFIY2dHZAYPkvq=cc8PwC1aO%HJ z?zlRvvtDD3{Izg0rb;bRc`2edT>JexmhM7+OOwr>YT5giHpXOVeFsOkWy^MlmbQh* z<>UC)V76$h+Z)G0c!{tGle1w#gHt&XGl;)v+7qHe2G9n_ItRejbFAiSWkAp%4JJye zWAJ-via+tAaC~|5xG;=@q8s!lV7(oSx;xZzC}S&s!u29%zjnOT($CI9TIZSPu=s6N z{Z_tkOc;y~1`$&(8=K+U>ed16VAg)x0PSFD5CYWbA(QlXE-Qqt>oj|to)MWRmfP?B z&st{&s+xWNlHlQ>m`1prq{}6MOuLrw~_HF(yIsarj9(I_6E9D zkKZ8t%V*FWF+FX=oiVSh*e)*rdOFB?j{EV4YATOHo4yF6Zo_Y&r%T@4vRLg-v=fBB zdj)!Z(j41u*W4&B%L+}U`YpR!zZ|p-rIn+NZ=H!DSZK(Cyjz_%vW634yrFS2^jE?> zAACqqIYNN1G3(^GJme9&Q}v};SuFwx?}tV*-|LLLOij+}zqA-|vQUB8(Cl7B)K8i; z;5PKdvU^h>Tno@iyRnt;lmjo>;0Xa`B23p?w%{!JR#_qq$6Y@_Mc~{QXTCmuts^Y< z#=dmgG0hPh)!tDG-M>9WS99u?Z;F1yFSslIiQK!^0Fl~ouqvu$@ps5e=t!xI9Ka8S zeb4~l=NsJU6=U75@oD_^;>j5*EXE6|&+go}oPKzmX$-bA`oMD84UGI%H1kMQ0V~Uz zcuR7hlm`|6(?Q1jT5@hI;E+UZ5#+q}!Vu{i_EI1oeT8-1-1Q6Nj>)j$%R^+X!Q5!E zKOA|OB1%p*i1URQ9{hS7Mv~l*!u+JcFF^>j`KDSNhL=9{XPoi}54$Ez^eglgt7CqG znkm!h#^EWc@lDjMWHIuyrp4e07s^*7MWA^3V3e_(bwOop#l zlu!}$2Uq~C%7wxo6ueie715!I^!OM;mz?au;gvUM=7;_y3?Mb-H+mL;wX~}XGsx)_t}F&SZtjPthWgM za!}9DlfTUYG6*gB1D4AbwNKBVE}Jf*zC1TkG$jq{tq6fq4S!1K!90_i>Ny3%=-w1q zn?pr&;x@AfP40b&*Lc1k0q4wRKU1QV(Pt=%P29X+bK^CXy~w%1uejbp2J?-?&-Flh zy1C-B*=wfJUKCbR!g$!TGTDncY_I>}@zmh^g*dEXztP)F;Y1L`mAv{#?Xr?|1!`5G z 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 Serialisabilité + 2. Linéarisabilité -> Serialisabilité 3. Convergence/Convergence Forte - 1. Définit le concepts de convergence + 1. Définit le concept de convergence 2. Pourquoi ? + les apports de la convergence forte - 3. Types de données basés sur la convergence (poruquoi ?) + 3. Types de données basés sur la convergence (pourquoi ?) 4. Cohérence Pipeline 1. On présente la notion d'Intention 2. On l'oppose à la cohérence Pipeline -6. Cohérence d'écriure - 1. Ce que ne couvre pas les modèles précedents - 2. Cohérence d'écriture et cohérence d'écriure forte. +6. Cohérence d'écriture + 1. Ce que ne couvre pas les modèles précédents + 2. Cohérence d'écriture et cohérence d'écriture forte. diff --git a/docs/présentation_consistence_faible/wconsistence_properties/index.tex b/docs/présentation_consistence_faible/wconsistence_properties/index.tex index f9e12fd..419735b 100644 --- a/docs/présentation_consistence_faible/wconsistence_properties/index.tex +++ b/docs/présentation_consistence_faible/wconsistence_properties/index.tex @@ -1,13 +1,19 @@ \begin{frame} \frametitle{Linéarisation} - % \begin{itemize} - % \end{itemize} + \begin{block}{Définition} + Un ensemble d'événement est dit linéarisable s'il existe une séquence d'événement qui respecte les 3 propriétés suivantes : + \begin{itemize} + \item \textbf{Sûreté} + \item \textbf{Régularité} + \item \textbf{Atomicité} + \end{itemize} + \end{block} \end{frame} \begin{frame} - \frametitle{Sureté} + \frametitle{Sûreté} \begin{block}{Définition} - Toute lécture réalisé dans un même environement non-concurrent est identique. + Toute lecture réalisée dans un même environnement non-concurrent est identique. \end{block} \begin{figure} \include{wconsistence_properties/linearisation_surete_hc} @@ -17,9 +23,9 @@ \begin{frame} \frametitle{Régularité} \begin{block}{Définition} - Une lécture concurrente à une écriture peut lire soit la valeur avant l'écriture, soit la valeur après l'écriture. + Une lecture concurrente à une écriture peut lire soit la valeur avant l'écriture, soit la valeur après l'écriture. \end{block} - \begin{figure} + \begin{figure} \include{wconsistence_properties/linearisation_regularite_hc} \end{figure} \end{frame} @@ -27,25 +33,50 @@ \begin{frame} \frametitle{Atomicité} \begin{block}{Définition} - Une lécture concurrente à une écriture peut lire soit la valeur avant l'écriture, soit la valeur après l'écriture. + Si deux lectures ne sont pas concurrente la deuxième doit retourner une valeur au moins aussi récente que la première. \end{block} - \begin{figure} + \begin{figure} \include{wconsistence_properties/linearisation_atomicite_hc} \end{figure} \end{frame} \begin{frame} - \frametitle{Convergence (EC)} + \frametitle{Les classes de cohérence} + \begin{columns} + \column{0.5\textwidth} + \resizebox{\columnwidth}{!}{ + \includegraphics{images/carte_criteres.png} + } + + \column{0.5\textwidth} + Une approche pour définir la cohérence d'un algorithme est de placer l'histoire concurrente qu'il produit dans une classe de cohérence. \\ + Nous pouvons définir 3 classes de cohérence : %citer Perrin + \begin{itemize} + \item La \textbf{Localité d'état} (LS) + \item La \textbf{Validité} (V) + \item La \textbf{Convergence} (EC) + \end{itemize} + \end{columns} + + +\end{frame} + +\begin{frame} + \frametitle{Localité d'état (LS)} \begin{columns} \column{0.4\textwidth} - \include{wconsistence_properties/convergence_hc}% - \column{0.5\textwidth} - Il existe un ensemble cofini d'évenements dont chacun peut être justifier par la même linéarisation. \\ + \include{wconsistence_properties/localiteetat_hc} + \column{0.6\textwidth} + \begin{block}{Définition} + Pour tout processus $p$, il existe une linéarisation contenant toutes les lectures pures de $p$. \\ + \end{block} \begin{math} \begin{array}{ll} - e.g.: & E' = \{r/(1,2)^w, r/(1,2)^w\} \\ - & w(1) \bullet w(2) \bullet \textcolor{red}{r/(1,2)^w} \\ + e.g.: & \textcolor{blue}{C_{p_1} = \{r/(0,0), r/(0,2)^w, w(2)\}}, \\ + & \textcolor{red}{C_{p_2} = \{r/(0,0), r/(0,1)^w, w(1)\}}, \\ + & \textcolor{blue}{r/(0,0) \bullet w(2) \bullet r/(0,2)^w} \\ + & \textcolor{red}{r/(0,0) \bullet w(1) \bullet r/(0,1)^w} \\ \end{array} \end{math} \end{columns} @@ -53,15 +84,15 @@ \begin{flushright} \begin{math} - EC = \left\{ + LS = \left\{ \begin{array}{l} \mathcal{T} \rightarrow \mathcal{P}(\mathcal{H}) \\ T \rightarrow \left\{ - \begin{array}{lll} - H \in \mathcal{H}: & \multicolumn{2}{l}{|U_{T,H}| = \infty} \\ - & \lor & \exists E' \subset E_H, |E_H \setminus E'| < \infty \\ - & & \land \displaystyle\bigcap_{e \in E'} \delta_T^{-1}(\lambda(e)) \neq \emptyset \\ - \end{array} + \begin{tabular}{lll} + $H \in \mathcal{H}:$ & \multicolumn{2}{l}{$\forall p \in \mathcal{P}_H, \exists C_p \subset E_H,$} \\ + & & $\hat{Q}_{T,H} \subset C_p$ \\ + & $\land$ & $lin(H[p \cap C_p / C_p]) \cap L(T) \neq \emptyset$ \\ + \end{tabular} \right. \\ \end{array} \right. @@ -77,7 +108,9 @@ \column{0.4\textwidth} \include{wconsistence_properties/validite_hc} \column{0.6\textwidth} - Il existe, un ensemble cofini d'évenement tels que pour chacun d'entre eux une linéarisations de toutes les opérations d'écriture les justifient. \\ + \begin{block}{Définition} + Il existe, un ensemble cofini d'événement tel que pour chacun d'entre eux une linéarisation de toutes les opérations d'écriture les justifient. \\ + \end{block} \begin{math} \begin{array}{ll} e.g.: & E' = \{r/(2,1)^w, r/(1,2)^w\} \\ @@ -106,20 +139,21 @@ \end{flushright} \end{frame} + \begin{frame} - \frametitle{Localité d'état (LS)} + \frametitle{Convergence (EC)} \begin{columns} \column{0.4\textwidth} - \include{wconsistence_properties/localiteetat_hc} - \column{0.6\textwidth} - Pour tout processus $p$, il existe une linéarisation contenant toutes les lectures pures de $p$ rendant l'histoire cohérente. \\ + \include{wconsistence_properties/convergence_hc}% + \column{0.5\textwidth} + \begin{block}{Définition} + Il existe un ensemble cofini d'événements dont chacun peut être justifié par une seule linéarisation. \\ + \end{block} \begin{math} \begin{array}{ll} - e.g.: & \textcolor{blue}{C_{p_1} = \{r/(0,0), r/(0,2)^w, w(2)\}}, \\ - & \textcolor{red}{C_{p_2} = \{r/(0,0), r/(0,1)^w, w(1)\}}, \\ - & \textcolor{blue}{r/(0,0) \bullet w(2) \bullet r/(0,2)^w} \\ - & \textcolor{red}{r/(0,0) \bullet w(1) \bullet r/(0,1)^w} \\ + e.g.: & E' = \{r/(1,2)^w, r/(1,2)^w\} \\ + & w(1) \bullet w(2) \bullet \textcolor{red}{r/(1,2)^w} \\ \end{array} \end{math} \end{columns} @@ -127,18 +161,18 @@ \begin{flushright} \begin{math} - LS = \left\{ + EC = \left\{ \begin{array}{l} \mathcal{T} \rightarrow \mathcal{P}(\mathcal{H}) \\ T \rightarrow \left\{ - \begin{tabular}{lll} - $H \in \mathcal{H}:$ & \multicolumn{2}{l}{$\forall p \in \mathcal{P}_H, \exists C_p \subset E_H,$} \\ - & & $\hat{Q}_{T,H} \subset C_p$ \\ - & $\land$ & $lin(H[p \cap C_p / C_p]) \cap L(T) \neq \emptyset$ \\ - \end{tabular} + \begin{array}{lll} + H \in \mathcal{H}: & \multicolumn{2}{l}{|U_{T,H}| = \infty} \\ + & \lor & \exists E' \subset E_H, |E_H \setminus E'| < \infty \\ + & & \land \displaystyle\bigcap_{e \in E'} \delta_T^{-1}(\lambda(e)) \neq \emptyset \\ + \end{array} \right. \\ \end{array} \right. \end{math} \end{flushright} -\end{frame} \ No newline at end of file +\end{frame} diff --git a/docs/présentation_consistence_faible/wconsistence_properties/validite_hc.tex b/docs/présentation_consistence_faible/wconsistence_properties/validite_hc.tex index 3d46230..2d0b836 100644 --- a/docs/présentation_consistence_faible/wconsistence_properties/validite_hc.tex +++ b/docs/présentation_consistence_faible/wconsistence_properties/validite_hc.tex @@ -6,29 +6,26 @@ message/.style={->, blue!50, dashed, -{Circle[length=4pt,]}}, ] - \node[roundnode, draw=red, fill=red] (11) {}; + \node[roundnode] (11) {}; \node[left] at (11.west) {$p_0$}; \node[above] at (11.north) {$w(1)$}; - \node[roundnode, draw=blue, fill=blue] (12) [right=of 11] {}; - \node[above] at (12.north) {$r/(0,0)$}; - \node[roundnode, draw=blue, fill=blue] (13) [right=of 12] {}; - \node[above] at (13.north) {$r/(0,2)^w$}; + \node[roundnode] (12) [right=of 11] {}; + \node[above] at (12.north) {$r/(0,1)$}; + \node[roundnode] (13) [right=of 12] {}; + \node[above] at (13.north) {$r/(2,1)^w$}; \draw[arrow] (11) -- (12); \draw[arrow] (12) -- (13); - \node[roundnode, draw=blue, fill=blue] (21) [below=of 11] {}; + \node[roundnode] (21) [below=of 11] {}; \node[left] at (21.west) {$p_1$}; \node[below] at (21.south) {$w(2)$}; - \node[roundnode, draw=red, fill=red] (22) [right=of 21] {}; - \node[below] at (22.south) {$r/(0,0)$}; - \node[roundnode, draw=red, fill=red] (23) [right=of 22] {}; - \node[below] at (23.south) {$r/(0,1)^w$}; + \node[roundnode] (22) [right=of 21] {}; + \node[below] at (22.south) {$r/(0,2)$}; + \node[roundnode] (23) [right=of 22] {}; + \node[below] at (23.south) {$r/(1,2)^w$}; \draw[arrow] (21) -- (22); \draw[arrow] (22) -- (23); - - \draw[message] (11) -- ($(22)!0.5!(23)$); - \draw[message] (21) -- ($(12)!0.5!(13)$); \end{tikzpicture} } \ No newline at end of file diff --git a/recherches/perrin.md b/recherches/perrin.md index 37f2678..6f1e3b3 100644 --- a/recherches/perrin.md +++ b/recherches/perrin.md @@ -1,50 +1,50 @@ # Concurrence et cohérence dans les systèmes répartis -## Autheur: Matthieu Perrin +## Auteur: Matthieu Perrin -## Reflexions +## Réflexions -Un peu de mal a comprendre les bornes de cohérence. -Ca veut dire quoi composable ? +Un peu de mal à comprendre les bornes de cohérence. +Ça veut dire quoi composable ? ## Définitions -Système réparti: Collection d'entités de calcul autonomones connectées en vue d'accomplir une tâche commune. +Système réparti : Collection d'entités de calcul autonomes connectées en vue d'accomplir une tâche commune. -Entités de calcul: (ou processus). Entité d'un réseau capable de décision en fonction de stimuli. +Entités de calcul : (ou processus). Entité d'un réseau capable de décision en fonction de stimuli. -Cohérence forte: Les objets ciblés cachent la concurrence et se comportent comme si tous les accès etait sequentiels. +Cohérence forte : Les objets ciblés cachent la concurrence et se comportent comme si tous les accès était séquentiels. ## Introduction -Un système réparti est caractérisé par: +Un système réparti est caractérisé par : - L'échelle du système - Les moyens d'interactions -- Gestion des fautes (c.f.: reynal18 attacks) (et nombre de fautes acceptables) -- Rapport au temps (y a t'il une horloge partagé ?) +- Gestion des fautes (c.f. : reynal18 attacks) (et nombre de fautes acceptables) +- Rapport au temps (y a-t-il une horloge partagée ?) ## Les histoires concurrentes -Une histoire concurrente est un ensemble d'évenements partiellement ordonnés par un ordre de processus et étiquetés par des opérations. +Une histoire concurrente est un ensemble d'événements partiellement ordonnés par un ordre de processus et étiquetés par des opérations. -3 primitives possibles: +3 primitives possibles : -- Broadcast (diffusion fiable): - - Validité: tout message reçu est émis par un processus - - Uniformité: tout message reçu par un processus est recu par tout les autres processus -- FIFO Broadcast (idem Broadcast): - - Réception FIFO: tout message reçu par un processus est reçu dans l'ordre d'émission -- Causal Broadcast (idem FIFO Broadcast): - - Réception causale: Tout message m' envoyé par un processus après reception d'un message m est aussi reçu après m chez tout les autres processus +- Broadcast (diffusion fiable) : + - Validité : tout message reçu est émis par un processus + - Uniformité : tout message reçu par un processus est reçu par tous les autres processus +- FIFO Broadcast (idem Broadcast) : + - Réception FIFO : tout message reçu par un processus est reçu dans l'ordre d'émission +- Causal Broadcast (idem FIFO Broadcast) : + - Réception causale : Tout message $m'$ envoyé par un processus après réception d'un message $m$ est aussi reçu après $m$ chez tous les autres processus ### Composabilité -La composabilité définit la possibilité pour deux types de données abstraits différents cohérent pris de manière unitaire, de pouvoir être combinés tout en gardant leurs conhérences. +La compossibilité définit la possibilité pour deux types de données abstraits différents, cohérente pris de manière unitaire, de pouvoir être combinés tout en gardant leurs cohérences. -### Décomposabilité +### Décomposable -La décomposabilité définit la possibilité pour deux types de données abstraits différents cohérent si considérés "ensemble" de rester cohérent si considérés séparéments. +La décomposabilité définit la possibilité pour deux types de données abstraits différents cohérents si considérés "ensemble" de rester cohérent si considérés séparément. ### Localité @@ -52,69 +52,69 @@ La localité est le respect simultané de la composabilité et de la décomposab ## Modèles -Cohérence forte impossible dans des environements crédibles de cloud. (Trop de risques de déni de services) +Cohérence forte impossible dans des environnements crédibles de cloud. (Trop de risques de déni de services) -Ci dessous une liste des differents paradigmes de modélisation de système répartis: +Ci-dessous une liste des différents paradigmes de modélisation de système répartis : -### Cohérence Sequentiel (Décomposable, Fort) +### Cohérence Séquentiel (Décomposable, Fort) -Cohérence Sequentiel (SC): Les objets ciblés cachent la concurrence et se comportent comme si tous les accès etait sequentiels. -Le but est de mimer le comportement "comme si" un serveur centralisait et ordonnait l'information. (Ca peut etre le cas ou non, il faut juste que la propriété soit respectée). -Y a un débat sur une notion de la cohérence séquentielle. La première formalisation de ce type de cohérence formulé par Lamport oublie de mentionner la notion de "synchronisation". Ce qui peut conduire a des comportements non cohérents. Elle permet par exemple l'existence d'histoires infinies qui viennent s'ajouter les unes derrières les autres. Ce qui serait absurde dans un système réel. (Exemple: infinité de lecture suivie d'une infinité d'écriture). -Il y a donc débat sur la notion de cohérence séquentielle avec une école qui considére ce cas comme plausible, et une autre qui souhaite rajouter une notion de synchronisation. +Cohérence Séquentiel (SC) : Les objets ciblés cachent la concurrence et se comportent comme si tous les accès était séquentiels. +Le but est de mimer le comportement "comme si" un serveur centralisait et ordonnait l'information. (Ça peut être le cas ou non, il faut juste que la propriété soit respectée). +Il y a un débat sur une notion de la cohérence séquentielle. La première formalisation de ce type de cohérence formulé par Lamport oublie de mentionner la notion de "synchronisation". Ce qui peut conduire a des comportements non cohérents. Elle permet par exemple l'existence d'histoires infinies qui viennent s'ajouter les unes derrières les autres. Ce qui serait absurde dans un système réel. (Exemple : infinité de lectures suivie d'une infinité d'écritures). +Il y a donc débat sur la notion de cohérence séquentielle avec une école qui considère ce cas comme plausible et une autre qui souhaite rajouter une notion de synchronisation. -### Linéarisibilité () +### Linéarisabilité () Il y a ici un lien fort entre l'ordre d'action du processus et son intégration au système. Il y a une synchronicité plus forte. -Ici lorsqu'un processus souhaite acceder à un objet, si il n'entre en conflit avec aucune action d'écriture, il récupere la valeur antérieur à son éxécution. (propriété: Registre Sûr). -Si plusieurs processus veulent acceder à un objet, et entrent en concurrence avec une écriture, alors ils ne peuvent retourner seulement la valeur avant ou après l'écriture (propriété: Registre Régulier). -Si deux lectures ne sont pas concurrentes, alors elles doivent rétourner une valeur au moins aussi récente que la lecture antérieur. (propriété: Registre Atomique). +Ici lorsqu'un processus souhaite accéder à un objet, s'il ne rentre pas en conflit avec aucune action d'écriture, il récupère la valeur antérieure à son exécution. (propriété : Registre Sûr). +Si plusieurs processus veulent accéder à un objet, et entrent en concurrence avec une écriture, alors ils ne peuvent retourner seulement la valeur avant ou après l'écriture (propriété : Registre Régulier). +Si deux lectures ne sont pas concurrentes, alors elles doivent retourner une valeur au moins aussi récente que la lecture antérieure. (propriété : Registre Atomique). -### Serialisabilité (Décomposable, Faible) +### Sérialisabilité (Décomposable, Faible) -ACID: Atomicité (une transaction est soit completement acceptée soit completement avortée), Cohérence (Un transaction éxécutée dans un état correct emmène vers un état correct), Isolation (Les transactions n'interferent pas entre elles), Durabilité (une transaction accepté n'est pas remise en cause). +ACID : Atomicité (une transaction est soit complètement acceptée soit complètement avortée), Cohérence (Une transaction exécutée dans un état correct emmène vers un état correct), Isolation (Les transactions n'interfèrent pas entre elles), Durabilité (une transaction acceptée n'est pas remise en cause). -La serialisabilité est similaire à la linéarisibilité, à la difference que des transactions peuvent être avortés. Cela à pour effet de rendre le système moins "fort" en terme de consistence. +La sérialisabilité est similaire à la linéarisabilité, à la différence que des transactions peuvent être avortés. Cela à pour effet de rendre le système moins "fort" en termes de consistance. ### Convergence (Composable, Faible) -La convergence est une notion de cohérence faible. Elle définit un systèmes qui peut à un instant t être divergent, mais qui finira sur un temps infinit à converger vers un état commun. +La convergence est une notion de cohérence faible. Elle définit un système qui peut à un instant $t$ être divergent, mais qui finira sur un temps infini à converger vers un état commun. -### Convergenece forte (Composable, Foaible) +### Convergence forte (Composable, Faible) -La convergence forte est une extension de la convergence où notre histoire est diviser en plusieurs états. Chaques transaction se trouve dans un état avec d'autres transaction avec qui elle partage un "passé commun". On définit le passé commun comme la base de connaissance antérieur à l'éxécution de la transaction. +La convergence forte est une extension de la convergence où notre histoire est divisée en plusieurs états. Chaque transaction se trouve dans un état avec d'autres transactions avec qui elle partage un "passé commun". On définit le passé commun comme la base de connaissance antérieur à l'exécution de la transaction. #### Data type pour la convergence -Les types de données vue pour les autres modèles sont peu adapté pour modeliser les interactions dasn le cas de la convergence. On privilégie plutot des types de données qui permettent de définir des états (ex: OR-SET). +Les types de données vues pour les autres modèles sont peu adapté pour modéliser les interactions dans le cas de la convergence. On privilégie plutôt des types de données qui permettent de définir des états (ex : OR-SET). ### Intention -L'intention est une notion qui tend à aplliquer la cohérence en fonction de l'intention des utilisatuers. Elle trouve son sens particulièrement dans l'éditions collaborative lors d'écritures concurentes. Mais sa spécification reste flou et c'est un concept qui semble difiicile à appliquer. +L'intention est une notion qui tend à appliquer la cohérence en fonction de l'intention des utilisateurs. Elle trouve son sens particulièrement dans l'édition collaborative lors d'écritures concurrentes. Mais sa spécification reste floue et c'est un concept qui semble difficile à appliquer. -### Coherence pipeline (Décomposable, Faible) +### Cohérence pipeline (Décomposable, Faible) -La cohérence pipeline consiste une cohérence ne garantissant pas l'ordre des états finaux. C'est donc une cohérence faible. La chose la plus notable est que le résultat n'est pas garantit pour deux histoires concurentes équivalentes. +La cohérence pipeline consiste une cohérence ne garantissant pas l'ordre des états finaux. C'est donc une cohérence faible. La chose la plus notable est que le résultat n'est pas garantit pour deux histoires concurrentes équivalentes. ### Cohérence de Cache (Composable, Décomposable, Fort) -On imagine que chaque type de donnée abstraite utilise une seule et même memoire qu'il partage avec tous les processus de l'histoire concurrente. Chaque mêmemoire respecte une cohérence séquentiel. +On imagine que chaque type de donnée abstraite utilise une seule et même mémoire qu'il partage avec tous les processus de l'histoire concurrente. Chaque mémoire respecte une cohérence séquentielle. ### Cohérence d'écriture (Faible) -Un aspect manquant de la convergence est l'absence de cohérence d'écriture. C'est à dire que rien ne garantit que les données écrites par un processus soient bien celles lue à la fin par les lectures infinits. +Un aspect manquant de la convergence est l'absence de cohérence d'écriture. C'est-à-dire que rien ne garantit que les données écrites par un processus soient bien celles lue à la fin par les lectures infinies. Le concept de cohérence d'écriture vise donc à spécifier cette propriété. ### Cohérence d'écriture forte (Faible) -La cohérence d'écriture forte est une extension de la cohérence d'écriture qui rajoute un ordre dans les opérations d'écriture. Ceci permet d'assurer que chaque opération soient faites dans le même état et assure donc une convergence plus "rapide". +La cohérence d'écriture forte est une extension de la cohérence d'écriture qui rajoute un ordre dans les opérations d'écriture. Ceci permet d'assurer que chaque opération soit faites dans le même état et assure donc une convergence plus "rapide". ## Cohérence causale ### Cohérence Causale Faible -Cohérence direct avec son passé local, et respect de cette cohérence avec les autres processus par transitivité. Aucune préservation de l'ordre des opérations. -Résultat potentiellement divergents ? +Cohérence directe avec son passé local et respect de cette cohérence avec les autres processus par transitivité. Aucune préservation de l'ordre des opérations. +Résultat potentiellement divergent ? ### Convergence Causale @@ -122,4 +122,4 @@ Rajout de la notion d'ordre totale. Qui permet de garantir la convergence du ré ### Cohérence Causale -Cohérence avec les écritures du passé causal et des lectures du passé local. \ No newline at end of file +Cohérence avec les écritures du passé causal et des lectures du passé local.