From f296066370cf7510b85d6356a596ddab65461954 Mon Sep 17 00:00:00 2001 From: montsam <99853302+montsam@users.noreply.github.com> Date: Fri, 27 May 2022 14:19:16 -0700 Subject: [PATCH 1/4] Create README.md --- CodeFreeze2022/README.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 CodeFreeze2022/README.md diff --git a/CodeFreeze2022/README.md b/CodeFreeze2022/README.md new file mode 100644 index 0000000..9c595a6 --- /dev/null +++ b/CodeFreeze2022/README.md @@ -0,0 +1 @@ +temp From 6006a3e4935e465af52b9bf226f2aacab5b226f2 Mon Sep 17 00:00:00 2001 From: montsam <99853302+montsam@users.noreply.github.com> Date: Fri, 27 May 2022 14:22:13 -0700 Subject: [PATCH 2/4] Update README.md --- CodeFreeze2022/README.md | 46 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 45 insertions(+), 1 deletion(-) diff --git a/CodeFreeze2022/README.md b/CodeFreeze2022/README.md index 9c595a6..6a98d45 100644 --- a/CodeFreeze2022/README.md +++ b/CodeFreeze2022/README.md @@ -1 +1,45 @@ -temp +# Fall 2021-Spring 2022 Development + +[Link to Github Repository](https://github.com/montsam/OR_Intertidal_ExpPatch_LearningDynamics/tree/main/CodeFreeze2022) + +## Problem Statement +This project aims to create an accurate and comprehensible model to describe and predict population dynamics for species in the Oregon marine intertidal using a novel machine learning technique known as symbolic regression. Ideally, this model can be applied to describe other ecosystems as an alternative to traditional methods of characterizing species interactions. + +## Required Software +As the development team was already using a group google drive for documentation coordination, they decided to use [Google Colaboratory](https://research.google.com/colaboratory/faq.html), an in-browser python notebook capable of allowing multiple programmers to work concurrently on python code. Attached below is a link to a google drive containing all documentation and Colab notebooks used to run the tests. +[Link to team drive](https://drive.google.com/drive/folders/1nQV2U_Dj1jwzslvPh9jWLsub_tL8sly2?usp=sharing) (must access with an OSU email). +#### Google Drive Layout +The linked drive houses two directories; *Documentation* and *Colab Notebooks*. The first directory in the shared drive houses findings over the course of the project along with the datasets used while the second houses the two notebooks we used to run our Symbolic Regression Models. + +#### Libraries +All required libraries are included in the imports section of the Google Colaboratory notebooks with some notable libraries listed below: + - [gplearn](https://gplearn.readthedocs.io/en/stable/) was the library used to run the symbolic regression analysis. A more in depth overview of this software and how it functions is included later in this document. + - [sklearn](https://scikit-learn.org/stable/) was used for fine tuning parameters via their included grid search package. + +## How to Run +The process to run our code is fairly simple as our project was more about data manipulation and hyperparameter optimization rather than large codebases. A numbered list of steps to run either colab notebook is included below. + + 1. Ensure you have the ability to view/edit Google Colaboratory Notebooks by opening either of the two found in the "Colab Notebooks" section of the shared drive + 2. Run the first code block up until you are prompted to mount your google drive (this is needed to allow colab to find the uploaded datasets) + 3. From here, you will need to edit the file paths found in the dataset uploading section of the notebooks to match your own drive. A link to a comprehensive guide to accomplishing this is here: [Link to dataset tutorial](https://docs.google.com/presentation/d/1As5lJr7xMapC2TLe5i-oFwj3m0TqanhaZU-31tfY-X8/edit?usp=sharing) + 4. Once the datasets are linked, the rest of the code can be ran. Follow the comments within the notebook to gain better understanding into the blocks + +## Features + - [x] Colab notebook using symbolic regression to predict growth rate + - [x] Includes visualizations for datasets imported + - [ ] Uses grid search to find optimal parameters + - [x] Includes visualizations for equations generated + - [x] Simplifies generated equation if possible + - [x] Colab notebook using symbolic regression to predict feeding rate + - [x] Includes visualizations for datasets imported + - [x] Uses grid search to find optimal parameters + - [ ] Includes visualizations for equations generated + - [x] Simplifies generated equation if possible + + +#### Expansion Opportunities +Much of this project was spent understanding the complex interactions of gplearn and how it interacted with the provided datasets. For a complete list of our findings over the course of the project, refer to the *Documentation* directory in the attached drive. The two notable suggestions we have for the next team continuing development are + + 1. Migrate away from colab into local machines. Colab was an excellent way to begin work, allowing us begin optimizing the models immediately in a familiar environment; however this simplicity came at a tradeoff of frequent timeouts and parameter limitations. We recommend using a Jupyter notebook or connecting the colab notebooks to a local runtime to avoid timeouts and use your own machines processors. + 2. Run the models by making use of the Warm_Start Parameter in the Symbolic Regressor, and limit the generation count to smaller numbers. Rather than running one 8 hour 5000 generation execution, running many 100 generation (possibly in a for loop or similar structure) executions will allow the models to create more equations to provide further insight into what parameters need tweaking. This has the added benefit of being more resilient against crashes and timeouts. + From 7e63ef527e1840ba66b95d7c84dc40296f492078 Mon Sep 17 00:00:00 2001 From: montsam <99853302+montsam@users.noreply.github.com> Date: Mon, 6 Jun 2022 22:18:55 -0700 Subject: [PATCH 3/4] Project Archive Dump --- .../Colab Notebooks/DensityExplFRate.ipynb | 1 + .../Colab Notebooks/GrowthRate.ipynb | 1 + .../Documentation/Final Demo Slide Deck.pdf | Bin 0 -> 1228165 bytes .../BalanusGrowthRate.csv | 37 + .../BalanusGrowthRate_Outliers.csv | 35 + .../Growth Rate Datasets/BalanusLOG.csv | 35 + .../ExpPatch_IntxnStr.csv | 11665 + .../ExpPatch_PatchTidalHeights.csv | 19 + .../ExpPatch_PhotoCounts.csv | 64062 +++ .../ExpPatch_QuadLocations.csv | 1 + .../ExpPatch_SpeciesTypesIDs.txt | 29 + .../ExpPatch_TempsCleaned.csv | 326434 +++++++++++++++ .../MytilusGrowthRate.csv | 37 + .../MytilusGrowthRate_Outliers.csv | 36 + .../Growth Rate Datasets/MytilusLOG.csv | 37 + .../Growth Rate Datasets/README.md | 13 + .../Growth Rate Datasets/X_train.csv | 37 + .../Growth Rate Datasets/X_train_Outliers.csv | 35 + .../X_train_Outliers_M.csv | 36 + .../Growth Rate Datasets/markus_y_train.csv | 38 + .../Growth Rate Datasets/relevant_X_train.csv | 37 + .../Growth Rate Datasets/time.csv | 37 + .../Growth Rate Datasets/time_Outliers.csv | 35 + .../Growth Rate Datasets/time_Outliers_M.csv | 36 + .../Growth Rate Datasets/y_train.csv | 37 + .../Growth Rate Documentation Overview.docx | Bin 0 -> 9792 bytes .../Correlation Matrix.docx | Bin 0 -> 51780 bytes .../Day of Year Vs Growth Rate.docx | Bin 0 -> 46708 bytes .../Relevant vs Balanus Growth Rate.docx | Bin 0 -> 229536 bytes .../Relevant vs Mytilus Growth Rate.docx | Bin 0 -> 25265 bytes .../Temperature Vs Growth Rate.docx | Bin 0 -> 32903 bytes ...tem 1_ Abstract and principal members_.pdf | Bin 0 -> 36581 bytes ...m 2_ Revised Code Freeze Materials (1).pdf | Bin 0 -> 27590 bytes .../Item 3_ Scope and Vision Paper.pdf | Bin 0 -> 272535 bytes .../Item 4_ PDF Copy of Expo Poster.pdf | Bin 0 -> 475203 bytes .../Item 5_ Link to Final Demo Video.pdf | Bin 0 -> 16962 bytes ... Technical Resources for Learning More.pdf | Bin 0 -> 38102 bytes ...er answers all questions individually).pdf | Bin 0 -> 60598 bytes .../Documentation/Scope and Vision Paper.docx | Bin 0 -> 205692 bytes CodeFreeze2022/README.md | 4 +- 40 files changed, 402772 insertions(+), 2 deletions(-) create mode 100644 CodeFreeze2022/Project Archive/Colab Notebooks/DensityExplFRate.ipynb create mode 100644 CodeFreeze2022/Project Archive/Colab Notebooks/GrowthRate.ipynb create mode 100644 CodeFreeze2022/Project Archive/Documentation/Final Demo Slide Deck.pdf create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/BalanusGrowthRate.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/BalanusGrowthRate_Outliers.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/BalanusLOG.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/ExpPatch_IntxnStr.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/ExpPatch_PatchTidalHeights.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/ExpPatch_PhotoCounts.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/ExpPatch_QuadLocations.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/ExpPatch_SpeciesTypesIDs.txt create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/ExpPatch_TempsCleaned.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/MytilusGrowthRate.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/MytilusGrowthRate_Outliers.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/MytilusLOG.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/README.md create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/X_train.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/X_train_Outliers.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/X_train_Outliers_M.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/markus_y_train.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/relevant_X_train.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/time.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/time_Outliers.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/time_Outliers_M.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Datasets/y_train.csv create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Documentation Overview.docx create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Results/Correlation Matrix.docx create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Results/Day of Year Vs Growth Rate.docx create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Results/Relevant vs Balanus Growth Rate.docx create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Results/Relevant vs Mytilus Growth Rate.docx create mode 100644 CodeFreeze2022/Project Archive/Documentation/Growth Rate Results/Temperature Vs Growth Rate.docx create mode 100644 CodeFreeze2022/Project Archive/Documentation/Item 1_ Abstract and principal members_.pdf create mode 100644 CodeFreeze2022/Project Archive/Documentation/Item 2_ Revised Code Freeze Materials (1).pdf create mode 100644 CodeFreeze2022/Project Archive/Documentation/Item 3_ Scope and Vision Paper.pdf create mode 100644 CodeFreeze2022/Project Archive/Documentation/Item 4_ PDF Copy of Expo Poster.pdf create mode 100644 CodeFreeze2022/Project Archive/Documentation/Item 5_ Link to Final Demo Video.pdf create mode 100644 CodeFreeze2022/Project Archive/Documentation/Item 6_ List of Recommended Technical Resources for Learning More.pdf create mode 100644 CodeFreeze2022/Project Archive/Documentation/Item 7_ Conclusions and Reflections (each team member answers all questions individually).pdf create mode 100644 CodeFreeze2022/Project Archive/Documentation/Scope and Vision Paper.docx diff --git a/CodeFreeze2022/Project Archive/Colab Notebooks/DensityExplFRate.ipynb b/CodeFreeze2022/Project Archive/Colab Notebooks/DensityExplFRate.ipynb new file mode 100644 index 0000000..6139955 --- /dev/null +++ b/CodeFreeze2022/Project Archive/Colab Notebooks/DensityExplFRate.ipynb @@ -0,0 +1 @@ +{"cells":[{"cell_type":"markdown","metadata":{"id":"Nlk2y3glktJd"},"source":["This is my general scratchwork/ML Tinkering space to become more familiar with Symbollic Regression and the data we will be working with for this project"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":42546,"status":"ok","timestamp":1653602430095,"user":{"displayName":"Samson Mont","userId":"14456403475501558295"},"user_tz":420},"id":"HNDbVL4Ak49F","outputId":"dc5ba7ce-1e16-46b6-f4f8-1068d2e011f8"},"outputs":[{"output_type":"stream","name":"stdout","text":["Looking in indexes: https://pypi.org/simple, https://us-python.pkg.dev/colab-wheels/public/simple/\n","Collecting gplearn\n"," Downloading gplearn-0.4.2-py3-none-any.whl (25 kB)\n","Requirement already satisfied: scikit-learn>=1.0.2 in /usr/local/lib/python3.7/dist-packages (from gplearn) (1.0.2)\n","Requirement already satisfied: joblib>=1.0.0 in /usr/local/lib/python3.7/dist-packages (from gplearn) (1.1.0)\n","Requirement already satisfied: threadpoolctl>=2.0.0 in /usr/local/lib/python3.7/dist-packages (from scikit-learn>=1.0.2->gplearn) (3.1.0)\n","Requirement already satisfied: numpy>=1.14.6 in /usr/local/lib/python3.7/dist-packages (from scikit-learn>=1.0.2->gplearn) (1.21.6)\n","Requirement already satisfied: scipy>=1.1.0 in /usr/local/lib/python3.7/dist-packages (from scikit-learn>=1.0.2->gplearn) (1.4.1)\n","Installing collected packages: gplearn\n","Successfully installed gplearn-0.4.2\n","Mounted at /content/drive\n"]}],"source":["#Imports Below\n","import pandas as pd\n","import numpy as np\n","import operator\n","import random\n","import io\n","\n","import math\n","!pip install gplearn\n","from gplearn.genetic import SymbolicRegressor\n","from sympy import sympify, simplify\n","import matplotlib\n","\n","from sklearn.model_selection import GridSearchCV\n","from sklearn.model_selection import RepeatedKFold\n","from sklearn import metrics\n","\n","#!pip install google-colab\n","from google.colab import files\n","from google.colab import drive\n","\n","drive.mount(\"/content/drive\", force_remount=True)"]},{"cell_type":"code","execution_count":null,"metadata":{"id":"rhfp3vNdSft9"},"outputs":[],"source":["#Uploading Datasets\n","IntxnStr=pd.read_csv('/content/drive/Shareddrives/Capstone Drive/MLTesting/Datasets/ExpPatch_IntxnStr.csv')\n","PatchTidalHeights=pd.read_csv('/content/drive/Shareddrives/Capstone Drive/MLTesting/Datasets/ExpPatch_PatchTidalHeights.csv')\n","PhotoCounts=pd.read_csv('/content/drive/Shareddrives/Capstone Drive/MLTesting/Datasets/ExpPatch_PhotoCounts.csv')\n","QuadLocations=pd.read_csv('/content/drive/Shareddrives/Capstone Drive/MLTesting/Datasets/ExpPatch_QuadLocations.csv')\n","TempsCleaned=pd.read_csv('/content/drive/Shareddrives/Capstone Drive/MLTesting/Datasets/ExpPatch_TempsCleaned.csv')\n","BalanusGrowthRate=pd.read_csv('/content/drive/Shareddrives/Capstone Drive/MLTesting/Datasets/BalanusGrowthRate.csv')\n"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":206},"executionInfo":{"elapsed":17,"status":"ok","timestamp":1653602434052,"user":{"displayName":"Samson Mont","userId":"14456403475501558295"},"user_tz":420},"id":"xFZXDJgWSffO","outputId":"aacade68-f769-4a37-fbbc-c3486576c549"},"outputs":[{"output_type":"execute_result","data":{"text/plain":[" Date Patch Prey Pred frat fcnt \\\n","0 2013-08-19 A Adula_californiensis Nucella_canaliculata 0.0 0 \n","1 2013-08-19 A Adula_californiensis Nucella_ostrina 0.0 0 \n","2 2013-08-19 A Balanus_glandula Nucella_canaliculata 0.0 0 \n","3 2013-08-19 A Balanus_glandula Nucella_ostrina 0.2 6 \n","4 2013-08-19 A Chthamalus_dalli Nucella_canaliculata 0.0 0 \n","\n"," tObs htime Density avgTemp att frate \n","0 1 NaN 0.0 12.22 NaN NaN \n","1 36 NaN 0.0 12.22 NaN NaN \n","2 1 NaN 101683.2 12.22 NaN NaN \n","3 36 13.338241 101683.2 12.22 1.474627e-07 0.014994 \n","4 1 NaN 819.2 12.22 NaN NaN "],"text/html":["\n","
| \n"," | Date | \n","Patch | \n","Prey | \n","Pred | \n","frat | \n","fcnt | \n","tObs | \n","htime | \n","Density | \n","avgTemp | \n","att | \n","frate | \n","
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | \n","2013-08-19 | \n","A | \n","Adula_californiensis | \n","Nucella_canaliculata | \n","0.0 | \n","0 | \n","1 | \n","NaN | \n","0.0 | \n","12.22 | \n","NaN | \n","NaN | \n","
| 1 | \n","2013-08-19 | \n","A | \n","Adula_californiensis | \n","Nucella_ostrina | \n","0.0 | \n","0 | \n","36 | \n","NaN | \n","0.0 | \n","12.22 | \n","NaN | \n","NaN | \n","
| 2 | \n","2013-08-19 | \n","A | \n","Balanus_glandula | \n","Nucella_canaliculata | \n","0.0 | \n","0 | \n","1 | \n","NaN | \n","101683.2 | \n","12.22 | \n","NaN | \n","NaN | \n","
| 3 | \n","2013-08-19 | \n","A | \n","Balanus_glandula | \n","Nucella_ostrina | \n","0.2 | \n","6 | \n","36 | \n","13.338241 | \n","101683.2 | \n","12.22 | \n","1.474627e-07 | \n","0.014994 | \n","
| 4 | \n","2013-08-19 | \n","A | \n","Chthamalus_dalli | \n","Nucella_canaliculata | \n","0.0 | \n","0 | \n","1 | \n","NaN | \n","819.2 | \n","12.22 | \n","NaN | \n","NaN | \n","
1()-zj!77Wdw zEpJkqJ~?(g5FebT<7D6fimi`3r=)#swGQx&yc+fKa>wv$3QL*`SEb~{8Pttr5BpQs zU)s*!1ee5rV*c{+^_%aPULLQQ#5o~I^ii$m@?Nv;A>N7X#)j2b%!A6zr=t5jPKt+4 z5g#X6h+fyMo)Q(BsOyLS#+wTV4~h$yoDM^ajXv^Q;n-R|=1iR|MU?h$sa<+?&t<6g z8zF~{GbXGx|7jkaC2WOHSmhz;;jAz6)9m%tQSgZq*p-6H$x^#P;WUDs@Gbp(yXtW> zy5D}m0W40{lK38@7WIKhGi}IZu%E=nOL&_8LywDTJfreVvpRxi#}H@I4xF}kU# raCN zucMo^p^}zH_U=v&e`t@I8o~ZrX8tsw_%m3|!^hQ5iusQkG*tW3lxF@T@4ro1=0C#y zgX_ND4rWgNv?-9J#R?kMItBYPOX_&i5c29jXZ3&1I)6j^zZ3P}*!_P6tI|gRO%v`v zxGMb*(*6sqe`B8H{~56UVgEmq{QrTh(tpD_ZBG9OTB|IE4WVi$7F((@$?VG T((JM`onJY2GD0M#PG_~|ix|nZW^iWh!w_V{}PncPw zHd<>x{@HvM s!uQYzdJJNSzNAm2n1UR~K(y{f{qle}-74ka%}2@(pJsW> zLBqdH&^q3aTVH8}bca>C&*-`*)CP2lB^Sue^Jg&Jj+He%54%lIi2tH~t>$xjhJ&6m zD(PEAw3N+X9J}qCCw?LrSmGVddO%iB`~vNCqZ{a84kORYlobo??@o-nW(Sww8RE7Z z7-ubvm5;M=GO)NVx^~65>FI3dO)iH~qXP5lOJDL#bUef00bg3uOGfF4?Hh3AE3k*U z*>rk;b?a0oTNi#p((9ssmEOoqow?xumuJ$@?Yy5FN@I_v&U&0x;F($2T+y%OckZ<4 zy1Xjp$#+;Aw 3CsBO 5{&Rh& z^Bqc`a`&owoH%aYgceH5Wf-(jl=E|YnV-ev;Zv&q-ZTL3`@H*`j%-z_2XDn=dF4Bu z5f?TFSx>R?^P`!+e-+PvZ;(+iyZh^vVOPUVtA?kOsYBk4NwsDFZ*2Ty`A04yFC+gy zK=?0U{uemP{5Lq71=#!lNg@A$1q~x;S(2}h_fg8i?C%>u%UEu>Inojq`71KalG;vg zF0Qm(OPZEe(Gn^TZ(lPXI|mxgf3hLTt8V^!kNK-kv_*UPqZ34Ke@Cgs!QZ|1Wuv z%-@OSf4ueZ+u=BHLRV8q69CZx0EqSl4u=7CfQgY2!pOh`fk2KOV`6579%p4?VdXw~ ziXF;(hM$l33=fZhu!M-fIdLH#9=N=yxRkV ^c)N)1*O#(Pnp<3&Y__)QAycMLRTxAI8A$(g=Ou1 zqmMD4=7MpbIe$R}E-EH>`HDP3K~ephhNhObj;@*cb&DI8H?15Tot#}<-Q4~B0|JAB zLohM-V;{sle1uI-Nli mT^? zb@1Ewp@~V#)btE>cJAlO>e~9o=GOM_og=+K0QhgUXup3e_P^-GLDP$lo*qmOInoP6 z7eqV29P|u=(u^n7OdxjXQ|Dx&n4njavMZX73CWr+bK3j%GM^Tfn>fF6q}m_N{{JZ! z{ePs{|0wn!y@mi*Fo^c&fjIzGVC$p0Hi9$|N$Tr&8vsl))ivQD*Szj3ZW2RICaotf zADj=#r;Fs0GY!fo(P8x`aXoasI)uI+kj4eqE?1CiP9njWu2+M*6M&lN5M4oTZg3ji ze;w(`Sip+mJQS!*H9;}M^Ky=unbO8XjY0Y;OZ{v5DM={Ka<>|Rsmu^4N2{8;PpGLc zTMr_i%v;1W#SEx7Z59??>LVn1aVv{C>6>Zm+iT(7Z&%jjlzinl3pxb8mb3&?O0DeL z#NOe~n4V!86cNfdn8x{aUd3tES+Xg+2{<|rU7?qWxw-Y0A@-+?k>}a$4bIXeE$GN8 z`o#)rW?b{7a}(9VbmwGb;`nu`O9z|_Y_ gFqE5ZOj|`Q5Zyh|h_5>=az&_byuR zI%(jQi(=VTEpQSRdv8gE{`q@((jmaQcB334HMNG%*uifYPQfp|s~C?VQw}&aP6&qx zrc#m1h#hkRH%k1<1D;cQJi!dUIvo@QcqlS1f?gC{_IoCgtZ^ZHYZBP|*<$$aLk$CT zJg~&Q#@?EM^ZOEZ2=Hx)Mf&Q1iRk{lLm*!1;kR<1>dj#v!;Qx72CJPbboU;vhKQ-A z-RpNssBWs+d)J2eMTijFG5vN3 mLNl%6 zPDoZ^cHSLogPmr$w-sZ|a1|t rU#QR##g8+ZNv`5+NVNjFXA_$XAnw8^v zHE4!UJ8Ef$&Dxu(bVkV-q?f4+2Xe4*AitAl_a+)pfOZ!P$kI%nZYCKE2l=6BC%}45 z&mdnJ4nQj-doVP&GRTSK)ew*iqWNB8&vD=q)H(6UwT?J&w*pXS8p8seElmGUmIohZ z9?)yN?GK{ltG} 8fXR;BC5RvRRG)Oeq*=d@;L!z3@ZE9>OLQMP0eH(_>fjH_2Eu@D00Kd8{F)!`nJ z?jU<9nu7SQxPiJXk8f|R^T#6@w7VkWY7SKIsAPT2;Ggd5x%oir5U|QWkE>%G*=SST zD&VT{8h%{#I`$LJk=k(Q%lh-OJ&bzyGW)cR-0*{285wYXDM7zM;eff;u#0XqAEFuO zpmg_ym8r~A(Zx9vVjPcod|!^;=*!QxLfB(udqX!8xQSAyr0^?gPMd+eN*X8ZgjYK7 zOs15n>FeLAS=<*r#(Ny{D_~w{8%>0RFl=t$o4SGv0+9Vtvwp1r_YS%bzaN}OkD0{n z{eYjSRSNC#BN#LBcI=q?5nL`reX~wP>m39a;8up7Ab4lN3EOGa2Pa;vQl_sTPspCE zkLa(;FcqwUlSM=n%1HIXkO;=HScH-SxTY*Kw?9XQmF^RcaORP_+o^CP&YN1eJ#syx zyWr$(WFsrEIA{1*-y+xaDp!y#hG6mJn;n?$E8j(Bj_eIKH@8arYAG%`=Og>>C5pmH z3?iAbIvRi?u3xPc3jEaX&C~^~`(~cex>BIdv~V(mRr?x)V$qP}6V IJO|eO_&(rR7XmT2 z9S)7WvTAPY0_#@I!Xy@cRB>2y5aJX%A%=S(%;UJ@@J95yjJ)G%5C8T2ZzrasMpS0K z!ZQlJ>>AIacmTg`j=qdjjohyU&)14G3HvCN<$5$wKC*8?RI1kQyIV}qW!oif@LTPu zv>XDYThxOP$%$4sgQxn0^`hbI;$xJ|hXkC(14q=}NPnD|Ta8i;xlnFmOejGYMNj=^ z+?Z623pL%eQTzIgnAHz$kx<6FwuNTO;*#`+Rr3M)LU8s5=?x+m!0oQ*R*a)jkn3}L z?TeX)jV@!*Q^|0kEn?rCk-OVl7Xq96Z8C KguoCB429RqEl?txA$Tuj$f0ahb1u92Uc3Q19u8}F`)yp+RrRX zKFU1mSnPXw`W}H#>0TPcYx-RhUsKd9dtvFVwYV(}=T46>Ne!rTwZeyg3=&-R$6Wt4 z+oQ8H7Elaog@(a90p55>QLfynzDTZ=A*_C%AIj27R3UE)3k11~vg^urg6#Zsj|=9J z#3eDJqM^ogF?yNaP-F0Gn$dRBd`A?NM}n9b%;_Elhtbs9{|OY48@cBqPyZ1?v>=k# zAP37Bjq62`>@sC(or#?i!L;a9PU@qM(%cTghv_elDOLJ=1if6}vBEySO5k~k0=jZ0 zugC?FAV+N0O4&m>$@gk1%S1Gunap?vfgq!eA{xU327-rf?+lKr3d|8NK5=1hYV+&o zCinN1U%|JA40={{FjU~RRKAs9kA=(JDDeCJ<$Ky8@LqmPDNMDj?)ufUl1&;-BSuz1 zJ=smyiueQ7xI4IaBCLGqrRb^LANqst8^i`5Z*P@rXBNE_gMYC>!6u3ef)UDE;pkb_ zo%Jt>@nTAq{AU*m0459Vm~pRyOvyEXj{ `|@UL8YBSN!Ln|wFzk51`3=8nt0qKg{^0X!B3j)+eYu?Tta zPCsbMSK5f*5Ml+e8!F7;_YtI1xG9iMvXR0e076CXOKXO!&5cHeEH3ITgmel _Zmy&hCn|<+j9@t1!CnJzr;d zfKU`ZxJ~uU18W1<5P++Zx1xg uP=I4Q( zyH!wjU3SjeE}(A)D~&pqDLbdD*k^qDG*; {0c7t`a%6elByQJOAr~yiDywO5L1C7*LU>Baza*Hyh+^P{ujgbOfi*<;xWHU{ z{;x%Ca6U9HpDyF&CGH%onk_9MVqwYD@70hxjn$=HYMh5M#L*Dj1Z8R6XQDL;2T06t z#;91Ri8dW>5-Y3!KY&j-4$FzMl-0{L>Rvgr;~vb>AhD|NEtmT9Z qv|AmWW&+SsvBx&qzgo?^Rl2qbXkzEs(_w-7FuK!I0yt~1=8Vq~hFN+Cvc z>wdgYJZt>c*{KQ1 789=jgV^d#oz)KTh&h gsemR6Ajt ;?@W1y~xpSBT>4BB_op+vQlz)Ms1k*Kav6a18O3Vjk;xd^1?y_TuI zx}J~ZgD*DG(%S`B1s(@1Xija4+82rV^$2SeBk6+yf_DaEzKbG0#>BK~8Cl<`yQc$e z%j~ND;Bgs!FGilm6&dSns8XvrPs&AAzyupV?2o-QS}(qFR%@wS7t8S$S#w9zx49JQ zO=goG&Uf-No6}YAc87OeBz^eMtE1`4!lE;p(3VJah5bA(uK;~Yvf$I6e3q%Jk_w!3 zg+NV`woO?W;CYm4T{tXnRa7>?UD;J7gO;?LVvhs7b? m7J%n yRjJq{VPQ6@6Sn-z*%b-D4Pi?V-rdY#&*6t)q7L}C`K?FSsX}hTM5^4T za7k1&=)?N>I&Jl3kj;Kg_@w4S5>d6RuRgNR(Eo*5q-tQDO4{1G*d6D_CXxP_`8%}L z;~~&~u3!0@`frQM&m~-Eo(}LFK-c=^n)|9`1?PrU)|Y;WHjsb9$HDl$eK@E&3g@S# z^p-M|GR7azE8Qp@L{fj9qQ%=S7rARXegI`?;US`0A<9u(c}ubhU8x&waF7p>3)>*! z`~hZ&jSVfi0D@ZKi!qrdzp#dJue9m_(Rt#4V|oWK9LcQc!hcZ0=o`T?<`Ux_Zap2+ z8GMIuU*H4Xv2lmG(6Sce!luD@_?}ZpVn!K9f0>=w=fEOcgfbKFMFlRpNl%U85x<^| zLtw+XG%msQ_p^Kxy-$wDtS_S48QQeQ!?xvqE#6|=V#x|rrQCFP^P9tpR^Cucter`b zd&)=X3v&g1U(YQSSVz!3Nifl9ftrPF@6GutyTa-#F{Y;hUyZX*256?HQx~RjVdG%= zC@WY4W;OWiDMba~3N4IxMqEw7?}vu+%qSfV`Oikb!c)f-*cGTlk;1L~RF%pmG5?O4 zC!HpvPlZ-m&r5xd;mP`#(rts$IBAmUlBqb}OBG#ki`)@?-~^6zLvE0NsHV{gcXAi) z{n|9(3)*Fj6z=5Yf1dO_4jR(JUW@9`xP%h%n(w}IoZmHKDR4fM-XJB@Dz3{*im>lS z|0?(!oDL(#A%wrejQpw$1*1-x1{GcVi|v!vGl}q@`>q_9FR9Py5eJBl@0S~N0b)97 zjh`1Xt<7g-l8_HrwsJE5*7+$a--*A8UMH~#p!K4zS9jnDCiN&SWEh;TOSIrcT*~fP zK12S}A&^L7Q7+=Nk% Cbw?M2imff{m z^6^CH&Kt+t$f%!&7yCTyu522&w4B6poy%{85Z(N)!-|rpzR5$o2G%;S8Omn95zK(` zTd|vl6*G}xl%AkMHZ76$Vt|(ny&r>z&-WMhrD+}m%e8P*^Dp?(cIWabQS<5nO>-zf zM5K X7wU5hP%fjJeLe zSFE(}7D_V&AAYWB(eb+v2cEAc=5nsNH{Tl*YY$$u(b%))U(qd8*xy;XBjoj-ahy^R z8ft#U?UbT2^U_>o(vN2a5HGRu<;rjTLSOe-hc%lUsSspnm{?f+a2NS?!b*{^b1}b8 zs<)Z$3$jA7ujn!QuV1w;w}0d}(|Jv7C^aA#<>Ci!vOd%z&ctxc4J#BQ*7GStj|Bu* z%Y#KmOf#bRzDQ`f%Sb0jD2hiu{z&01T8%@R*YXxIgo)15-!bk&<$mO!GJh8fiai73 zc*r+UZwcLR49N8%NoY+2epnmH9< I(@q}{H2j-oxXoQYb@G<~MICrk=A#g5(dtY=+wF-dWalLqeHu(K$5v$_0 zO@i1uM*{_sqoeE3w5b9;;BBbGYQaQNb3_t~t#NP8r!Zer-JyCyCpr`hglkCh{zS@e z#WI{NQig-}Op>s+X7imA?4@)(?EJb2nhyPeDIId0-7DcxU`fe@U`7{Fr3 zu@GE9?Mv|rJ@9{~+)jdcLEp8?dm9>@4Vyi&IHqsvQY!B$F@^!L9ZzZ%K*)JCD$^|5 z6;{iib~Y++2yzI#N^w8KU>B5Nb$fKZ@9~^o>=K-XF|6}!! ?d_ zo|trB#!rZVF} M?t0*Zzs)r|XGv8HIhgb#FA+7*xWK5atT2 zTN|qq>{@!7Pg%|#Lk5!6gB%LnFurWc#Y+8e{gT#6Kxnvm+ i|*!iSm+Jxa0_y}Y1S8pGnduQtk7f@wVMN;)x=`hsn z;$ RWSo+FtpXXMgODXsKBI@|} z_KuytaeswYr8;hswil%CtX4!{I+pQ5(;$B=NGo4*0)=#rJmtQ{7*9fDt)xez09f9T zvM8n()$G2*-i8BxGdVzO(Aib;eTdIVaF->lp_&1IURM%^QpH;Yw8BW?=KfH?9 HTzyN*Gbn=%>rTh-?J9y3HgK?cmE%q8SsxJon3 zSr#@D&sJVLc|xagee+yo`I73szw^`DkWb9=MPLayY-v3g#uHc&@=!HCLecx#>4>kA zMpiej3U{ma#VokXqM7kd`eAMbt0O!ivk~Lww^=jR5;ZP_l`z&<@wz0e*co_U?KF~? zcIgk`LRl@jmShbDBKYT|DZKF_o23sC^2ZVtP5c=~2cFk*YX5wr4kLuqWnO;9wfonp z1P!^{pzuVZ!ey;p`|jPvL*QN}k)?ep2A06`6aE$?Bb%(${~-#0P&w+$?ruUzB7n3Z zE?~rDW?=%xw7xK3BHV;*IMApx-gl}$A0mwR(^M5iu{6zNl_*g3fXM(cLJ<&U^hHcQ zQ8jYV_8W=>k4B*&U!z*-qdMW;{DoB)v=KtIEgdR 7*T+xHeIuY#3deDWChi}&$dn_mLv5zT&$qqFtk%07yezL)ec z{(BKwrB{T{YF*XxF)#$#vb9i&4=Us;){O idT0B2P~o0_oWB2Q?83#XjIqqC#b#L-IX&zp)e5@sZVZ zPpVjWYcj=Y7;8;zjTL!*j7DADUFSp5R(k9mZnTvkm#f*KFoM}|$oi0QcZ#Rb!%Gmn z?;h?y_U0Db>o(Q#t2NyV9^(_QJEjO>@Pn3wh#&T{F)4isZc`U|lj d`dGn% zORCgKB>QHpFaNh*N? 42MPrHw>5$GKSgXjMu$3`oQO6Rj`B-S{F1~Qi z^!O!49}<87{0n~SmHX!2JvezuHfl4iV^*}V<*hM7UI?*%8TVE
9o!uOQdLV|yC1mP@=H=SW*g+<$FEz9_G@ z2OZnit6ZR*+}Hi0y3m{0$ZlqM=ANfW7l{}ep6b^w{`k`5F3%xQT!RewuC;gmO-6T; zYWDBYFWw6+ccdE^82If_OpV<|{P_|g% 6*2cUR}r%W z9&BJtSXhUFrzrr9TB;{#?>q@F?$m~vGK-jyphdI9ds$mO 1R3D zuy;Pl^7b2my8rfW@T+BqGr=9m_#a}_O?A*}YnK$8C`BvmJIDI3Oy%XCE)~)GLm*3- ze*IHl!YOz96&J3_naZ{VK_qD_|29X{EXh9Mo^rpyc9!Y*W5imQ=0ent@jbm4p2s&W zwGc?+MOWAR%ew39#f%T%X*vRIjb@e2>cDo)jgy|cNW|jT#NfD_=veHSkOFe@Ek};V zk8k{ThG*muz-x!T$NCa@*ZHA-zLS7XW4qjycduB{5Y+{uf&YB2mE`i2|IG9KG;bmo z{%LM{*oWC^!`H8PID@6MZpUGb7UTWXeoyRpUjBMq=DQ}cA~Vf@*9TY~ r@Cxwh|PtIs7h{Tb1z+dorBjJk(@$*%Gpkwwz2ds zf=-a`e&$jfY39|Yd%G8EYP&&({^s|o{m9PdPFC7@N5HVM_764(9RlRiJ4yX#S2BMx zAvU)Ppy7F$3im!xkw|$TI_mXzp1B7YqFcwr%vGb!v_WNDL3Q*MOdqUx6+0ucNw@a) zfJ$#0IYW@Mghr4%yYH~=d|!>6#~M5)c-!RjJXFACEj+%R>;FVtc2r%huN1QU5j`(h zYOSf*&H&2cZ&PJfFt+}D(D|n6;xSc=%T@-b6HH`#1268JCIoV4MPFW;)qf{N>m2Xr*SRg@jO$IXJVhS*=yutW zC@c1&p~BJR^JHHNwp5~_p!NCIn-}=nM3ayAugd9#wfw%@56eGu>1}z7EBdF{F{DlQ z2Nh4l0r`TRGLZzNGK}UggiDPRYN~yBb1vtc+0Ff2 h2O%(ll*+ML0mfC z-T}gWN(>-D@8wsezBh=KHyQKQ3Y#jO7^SZTnuzY^E_2$Lzkgqu7XHa~Q0Z+XYS?VZ zdPKL?xhhzDRtF;2hw2FL;8GRXb4xFtHWEwl{_v6z)81Wo4X59S9(pVc%6bM}B4zbG z8(A}i@R)%@dwXnq*wLC1U2x7;<#@rlMQuz1=FSf|%R>lBu1>WSjQ1m#l?tvmZju=I zMs`9?BZ#T*0~a;Gp#Dt5Z8^V<9b#%>beQWYw);W(WSeOnJO*ou9xxXA6fUiKR=*-K zE7bt!!W$owMsRVa713VoKahU&<4kXu7bN`K<(apby+}tk8BN)n+Cz*F&uh`Mp&O?T zfmn$XtA3g8tS*p31TtYQGvy<0)i34d8GiN0a9TZud1Zrr% zwsax$nDSnsldfL9?1waUek>ps;i8VSos24MQOd0CuHxx+WRNY?AWRoC5@O;%L#l4) zJeFuQJ?KgxIV_3t8^xNjtGm8-3 zgUYW1f+oq05sk5c)x3s_N|nnAr6pVIfX~q-pC-e^ct@S{U2Eo_KEc|0PCnuMtV79S z*Vw9hED^?k+0f{b${Czr$%n83Q}AC%6Kndc)5y!P?qS|I&x*`kk+w?=I!qFIDjf-J zQN(9h+0pmuM)7C7KMVE08fHmq=PpUU=LUrT()305=JQXWEH|z3>p$l4xtx<`dk*yq ztChi81#`zP->jFo`?C2{|I0zuJFZ+8m4`77N^L5YV~VQ3n3ok);M>nT#NIq4akPXe z?ENmev?A2%-B^c}klkX`;9|1~ *PG<- z; ja_(*?$;%4xEnJ-LxO~aNnPKDN6T6hpWcmR~YUQ zGxp@#)NxENdX?WqrP_sStTrm-mq1B>@C%*$&IY=@sEtjdWFoPu@Ep1>se IqBPm)9m6V?fbVUgd~0W+zYh yf (*R-jN?-X=X5q*MH?NJfQzy4q?m)xvsZ~+ctA?H zM)T~7B5lJ?vCG^P$;>i&+6&neQa_HTWjYjjtS?$xxW~DDD^yPSJy}rOPg#9@Rhn#= z_cgpXQw&|cwVgj1H1cB8a(D 4XwA|q{6qyFZ@-R}$RX4v%a zy25l9o=k@jh_%j_bl((dk1|F)7Rk54e$_t>S6I-}H)j-y*Ia`5x+|0o^nEJk@zMH{ zA~Ht^{d!;YOq!rHS$*sf_@cv5n<9iKoQUX#mA)_#(~BYCQrZ+bW-lrjHhHo=YqGkg z6a3^n<8s53?ZF5kPgC^Hp!~$ZEf}3*RBR(lUuBuqPp1}+D@^mZ 2%uB?`i{@1cIT@kt&G<5jssHT8ewV2V)nP8-%zD6J8X)mG~n>aGQseRC~{}V zT<@T^1`2$hD5lPIMX;I%ZFcM4dCv@bJf}8?MXXOIuJeXh0`GlgTj?nX=u_BSH-@Q8 zwl5OuBL$!D#;B(8fWAgW9r$PDZ;-;^C+?$h JuL&>qm>H`C3@ Ept$|7_sC6i<%6;H0GQdvT`z z-s=YoA1j1w6ktNdFQ;C)oqC72T#5e)Qr5Cc3^}WLH3om*Z*M*|?8=Hj2 6^*-nTYuMqmAML-E Bd !@&)4^$RJNdJsP4i7W`=T+E z*WdJ5eZ6;Tk@jCrygF~WBQk(L`0@;mIjY#;-e^_6+P)sRoo}0=>Qt*t24{Uu3m2V> z{qRs?uwFN?Ody#m0yk%O7+fx3i7z8WD<1-C8sv|my7!Fxo+)6bF!$1A_H_DgMOGuo zuD^K(ABPn`;uaFYf%;0-0v<(4Xw@UYqmRp{m17Q0OFW6XUptR?nAcS~=Z5#28exAK zHvgGY%Tg^aJB*Kh&N^#zwjw23+073kIu|#|_9R)?;1CGkF6da{*Se~<7S#n=>hy87 z541oM{DlO=epc-Dk;dGn{bf71~Z9b$r! )Nv#YO7$!}XWnRiuJLEKfdhj3O`X45og5 z9RCCFt2VcNU8MSxJdXok%|`As5}a5bE;VbCE^6oh9XZ9mQqsASV0dZOb&Gz3UuI?g zj@8e1TzKvEeK%xzzUF7ZNP)69nMixqA;5y?0xl#UOw~~Oo{6-+h|ZIE3M0QD9uJ9D z%yr;L9any3hyde_O2KHY5XsiX+Yw*pzJA+sXua`da`54^vzHcnLW>n%opn#|0Qe0j zpG?i+VF5d41J*_J&fA5P>FRIvEO)Y!C08z6&|>AKd(Qiup|P=d34lx*RUiPGXZNVh z=&I@&h@)o*r2*Qdxp@0Q#M{US-B$-9D=Y %3Cbe6I=RyAmJJD zsdxBf%EF5pM+T39-}KM1%|oe?0HRGX0VC0NRp61$eR>BX 7At~U=`|uaa z8W#&tt9eXpg|447gi0a6;Jr01A72z%DNZ+4;tGL+bd1_I6&sh3PL>KGIozw4k;Us$ zswB?3(mS3SAZF=?pwMe4q(4xyx-w-xemu)f3#F}qs-1|4Zz8SuXuA)WD1+!$P!3PU zc9E!j85_l*--axbNSAzpOSf#4%fEAr=j~cdT0gZ@KCq?~s?fr 5Kd?^iMf^YHKhVA47}YD>Y16~8Eeg# z3L?0To$DdzkvKGA6~U>T625u?SVeIk0;;9gh_RQthWhpJdcwk>cLkwauYye8nAcA0 zrbJ@=ZjTajccnx|e=AUit9%tFz23pOU{fbYZa{6`-}Pi#554?^ejK+#UMth+tDLfo z`!rnb?LPTlMOLPPKBliu$k5oqv`)IGKmD(YOW#?w-?(c(CzB@M>|od~%BaN~uqlvr zdmuuzt&jN|*#=f3!qt2#zj)_fUM({!Rn{SIn{p7pI7aT~ 83@!n8uA J@=_c{r@F6Rr+ ztpj*$9S_bWtdZTV{fGm$8$8BLM&7!JZf-df6ibg|4|{>^-dv$jl3vtkBq9RaA{i}l zY_2wVW2QdTT>d105Q=QZ-RMz0{k>s=IfLzi2IcGfldxuOKp-JvrN}u+F1tF}50+^m zP1+?ns8X!lAC_=Bcz~i>)m>#zP7!6(O`^zOD>+ZOwtGyLUskm2y^4#r+-r&&-!;2$ z%LyCDL|EY}n54&QctbP!uAbulru-rdkDkhjrh7n-CemI(1U8JC5fK#5Q`+Q<)lnlD zhdM-J?Qi^uZ rUzlY_-cssDfw3L>ya`=eX7tLRWB73Nf`LSWDg8 z=>ZGJU)kukubtXGxPGmJ|5+>ohKwLqouB?da!4C@h?>7?VjXiXSqkjHJ*V*?zBf68 zrP3wYXxe1t<0+L~yiz#lb+4-qchgOo#N6w?e4-n%<%=n&{ek`JvXW)OCnJx2@(275 zIC0KN88L~5!Hat(Kf0)?>4uD`#`U7a -Ra*qEwd6=wtLPo2hq`X z1WY@U-_wzBj!{v%i1Ruu-Rj-E6>93&?o6QZTB|Q~vkkAZ5w^%x*D?g^!vbRlM^iAb z7+2M3FYu$dPTQaTb)qErLQ1E9SPQXsbLYDDmd*tk#Vzi 1 zLB&f;;A=2YqBL2T+WdA}ZFpnKyubqNPK3bZUJ9AYu13K&hO-6+xESg^aMa=jRc5F6 zFH1P%w!gH+VG>dVR=+QH!{ls?EAY*MK0r5pObRWPExP?qjhpwlVsO1DS$QX+J2NuY zB>JU7JGdVk8vC%oRKX5+Z-lRkkvsCY4+u 5Ma z-7GIQ#AdFYSY9M*W6|QXZJIuaTmTe$-hTEvmV12HUo{^1s4JaLE6xMyRcMZ|>Cnp4 z&QzE4NomUB6{)4nkEe^ho;Cu$s%L^Y=+UAIs-bn~a4Il|C_>h>#W1&02)z%xJF8j- zU13aDm}5LR9GuS6Z=An13I>8zLCu7!hMhLDMY}3$E-Re4*#?b zpgq(i#sMek?WY~0Rtp-bI|R~hK7CU^(M&1k?kH(tjn?5S l1!7g0l}0_%v%7Lyga ZnKzYj~xU5<1ZciKpxx0%GEkcLgkrhszaLv>T_`= =5 %?YLrFLT@JHSQYe7#GoDGx@*`Ft4_&F*9CjCQMdVqo6yr3n#M4oW;YKYUx}wQBpJ zMTe-a(cohF<1hKSk+z$hL? EZ zlMvUb392CTuH6(D#yuwohIEA~ySq*WpapH2#?dD5AFie@<(Agj{cX4SMUYWLwFb0$ z{65|2{2 *&_|`JZK8eS@{InIX2)ZU zqoIz6fZ{ss9YdoO6Ro1)Vn#pm%%)-19AsLV4tK-pu7{wpVwRPT{6(w*=aTBwIf9=R z2O(;e!h+@fa(bW*Ht-#zkcUqKbT? zeuH>8Y_TtrJ=}G3QOn3(wM-q=Jf{IE!zk|>)47yGd7FFKbxrVX_)69Z74gDn b&@GkP7 Qsc7zb(9@L)mX2AtGPDSMY4@ zhREP@o~1dRj#5Pwo`kWWDxI uXLO1R;s`WXP z-%zyTT&|GBSehTrZ*zvekx 9p}qv zq>jEW<(JSq)zl4yr(K@9rtPEh%U1D=hUV3lB7pkSPvetjHQ`Ef?P43c^Li@8Y>ydI zW`#RRT9}2{;lkYC_e+z7i|=T<4Ndr789K)8LE&{PVbuBlu5j8o-3v6n(W(EqPG+$S zvzd*b(xUp3q`*auGlUo)FzjrNP+5UkFl8c&n-a+=jsH++3-to-{pd!Jg2W_xlMPYa zFjzra02nQTug}_de-oIL%*YPLp-ryzO+RG`#Te6zFx7G^Oo7Ih^F-)ReruD`o*VnU zV&vM!f)DpXv})!)&tB;o!F;j2!M*0a`wbMyGS_Mu-`2y#O}{p;zv>hCJePOwgL0ne z*(Y8)7YZ7!@J`^Q^lpKuxj|0ZJ2-|}Eo d!# 84GIy~Y(Abj! z{=hSIrG|f@qY}5Kmk}%wXnka}1PVgn*GBD!0=#Fm+N(^pM~of=(ma%0&wiaDw5pW* zx?ASmY@>lOYQ2|Vk`(SdDbq=QycY?7bQXI;F^UCx!`ZjLtY%LF5-E@-gu(TrH+sU9 z#uC#?0g&&>iOe(!MQBcgh^9>C$hAyQo9{zD`n>;`2`?jcv{JcQOReh6jf;R_?ScLx zAaAH8|AniiW#le|8u9o&`YjANb2*N=Q`vIntGH5q1 q7VeE`889htf%sw2j0B+Q_%k# zF1!fwz1HBqcOaSqYH3!b1c@X^$fd*8AFlZcfl(avkJ1)?q-c19AxAp=5|e7&y6|}< zIuZ7KMLzLIMMnK&Fl%EypBT;t2qNjj#>O5D>|Rt5o~o|>B*-QRRD1F} E(Qga%>$hS >+o*FG9i6QSae#l4AonHe%lqo^*jr_pr7&(&+ojymyn{iMJD! z3)Zv_fZ@~s2XLuWoEbdy*n=#7%l^4&v5mEDGM#g!hVSTwd6=f2sS&6w`bp~BEAun= zpI*>BFf5D8GQCj$SofEB{cmTl=angfQ2-7a3UfXk5^1`yrP|!)33XI>pzrYNcG3)H zqlG)xmUreno6QbsuTy{BM)<+3X8n|l42Y=nWIL 1k|D%#%Im!++flgz%b7hPC*2 zV7t(TS04p+IUV7=5X`v+d+Qt)mA#a1-B(~Ks#Q`^tA~iF6_O%OKIZ`nJsengmG;-? zXzeiG1;R&&xBqST_p4g%1U}hni)Hu- N_6hs8J~X= zKWC?gt>W~i9)7OY+za^`rlK(PtKQ>x$IpcKr--IDjN%&l@<*E>2E_X2&sR@NuQ+ty z%GCUtxcz_ltix=`bbL;Kghz6Fh2i%r7lecbAZF6Uswv5)6gSO|zm?u2&@Xi88kLt< z5-olhO)x{PS$)pXjQ_ q8 D%`m5eP+rA}> z*jaPFge${>gOyY;x|?=UXRP_ KrQyl}Deyi% =3It4 zgiunaH|`j0Wdw#o;p!#=nTdKKeR^)8Qip<_=Uq1$(Z?)^N9ryj!I(s}P9yt(u6X|s z?|`7H`cfXtx)~`ULVpy>K=O0V}+?g1+(e}c^wWr8xQHWftWF8N$ z@6f8T>p&vs^(7qp@cfm}9c2jX+e{w)bZ$R-Sy$Ye@$dm(aPGgU#kFz#(w`D0qZQARL^j=LoGs5>0Hh{5=uR6==d9{JXxeB46N z83rR*{7Wqfh 8TA-vZVYfmaA0J!!l==U5jDPo}d zcEjOd@lp3?ovo9O0f$QorJ)AY?IRzh;lt2rvmoO>@y1n5g8o0pyK7Gc*){-%o&s*_ zQ>p0See@cguaOB!i4Ltw?KL-L!YFF}bD5^N26te>chrL4%c{kpL^b`_%AQBEFdD`- z+%)w$PYK %F!)rNa6_8kW(f)9}yEeJCmop$3WBQN(Z}TXXHRW;ITw8cFXX9 zEL;A0LEF_XE)z7Cd{WwKr6`1MWP8xIXQfw2A0r;hZW0K9(5N|T>TohX6ANqryHX@+ zhSy9*waj3FO3)(EEjZL19x|EQ?K!tTRk2ad(a6jIW5rKqgpIgDSc$%}Kl_3Q&EQpo zMl-sZGkK5*`EXWpAtNJ6nwKbUTf-hk8miJSI_|RBTO;wG)B@<#68 SsAK}dGb0Z-Skgr( )jz!szun!iBg~baAxyDNysj?hO@_4h_Dbp#t&%0&J#K1XDD_kwv z%P+4*4h!xqyZLfL9w2B6oC`frzuP* HH~5Y_4BuL8a=Qz5Q(+= zujylph}JN*0+x;2mG9Z9zFep4-F^tB?Ee;txzB6qv7JwNCPY^YngcX3fBy$43!9{~ zRe~ZxOTYJ>&)r@Qz35?bLhqg9m#uxLpk_5#AWEgf*Z7;-={{YNzKIa!K?rJ@M_7gQ z)W{R(Tu(kDMf`ZPJ}%w!`}}vsv5;An{6%NGL{+Bw$&O=z1j>=$PZLn@(=vcfcn8*- zR7>ex)NYNhV=EKW=w!~~rlqHA|EjXa@qVtl1GW2p3g tI)6OS-H=s}W)9rcWw(1{Q zKvXxMwe>BVRnIFQ8^mTuMJ|SAM4
eK5LKfsfDIpAKxL8-k%c(5>gH{-fVZ((Nbcwu6uU8@s=wK? zZ^Iu26ID}A*lx6R^;oS`hyiU^x%6xRF1nqSRp8_Y^c&vKKESA*w^L380RKUL>jS6l z=li~NS%@I%ciz`rl=Wyf?~CWc{b{6vZs;~3tg6jKud>TTu}{3ke _-j}%EaqI*?fC-$^=lxAW^H(0c`rLX@>SX~J_vbK^9|!Oy+z&5<-T*Pj zUXzdT@qwWX-GBO%rv~+>yk;&a @eB#v>1t(^NH$m zOob&IQSI!^c7smNOhwSWc|<69&oLYuvmpqU_D!{{> vr-e__9Z{>%uu {vh$ro6H2oUZ)YNo* zT;~%Yd((}@pO*00IJ iRE2q0yh-dI;z3nW zmVFjM&x0@H?%uQP6#7Lhe--n~W;PBl7ife3rc!&HubW!%(pR=Z7SJ%jnxyb$Xo*`z z{d_hb+p~p8pg26&v^k9KivazLEE3xBn&5rZwbmdozbcgT?ZEE?Ss2alk?(g=PUEr4 zloX^Z<*VSw+5DXBcHny|)4gP*pMVY69C6($1>R@R-wW6(aynImG`>Ja4r5?2c6vM2 zKT|~j3|-W=yQhv>w;TPatqwJ`r(4%LXZxN=+hlTNt1kA@l7v_&_~M0!rys*x2bN5h z#UyZ*0~=es$1p0$h_ -YYJozAVAfsD7V z7v8*mOZv4|b!JmR+louu=Y_yyc3wC1EHh9U NpWbFcb!y!~jx zqllx&?gn!+O&`9muG8JE6WsAT(a}nf(mv9)^4sY$L2@S2MSPh8Ja8q2o~t?jS~Grk z<3*=1GEmWUm4L0Sfcb#PhJPKuNUu_)4NiJBS^w1JhiIYehHy4I3+4*l19hH#B?TS( zQ?})g-o)xBh`9=Tz4VvY-yA`4?a2Px#Isv9${umc`{Vt8)ha6g2S8US{5M8?FuOkr zMz5`09+B-uFj!c{X;ha&!G#i^ZA_K*@eC5r_TeUQRxVWlKs43F{~ni+Fhzb%rf{}O zSJp0*wwJKrc-;u8=ykJs^BCR%12|8eV09InA185YL8#6LgVsrBqcC9H9`! Lma*2k?!Rt)-Q4)4!C5kKj-!#^BH`*#y!y=bMZM(yh+^oB*tO3IGr;uSrEAi1 z4bc$r(Eg`wp+Rv=5=%PUyK?36>GgT*AtsA7kuHI(JQGQmIyI-cch9iQNV(mD)Gwq| zd%N+&hheNwcz9yPc KX^mYz{ zsqQ(yA^4|FrQB4T*NmxRH=fi2LIFvDHQdf2s6mWqc0b*y&u_>ep3pWxqtS1QE7Y1q z9qC4h7U8qPCnScmP_k^`EPV6Y>7?GGk1vB~uglI-g(?fxgYWWQ?B!~37IfOtXwKt6 z{naaEkSQ}%Fhe}1E!WbkQ`8~BSFa6R?=e~37T&Kx*$=Nsx=KXB@58SkAKNXd7X@pN zCS1$Ap&8VA`r!DhM1>2#SastQ_EW%Q&^Xx|$Ja-nk!leY_hyw{{;3o!2mR5wivUy2 z=Ri*UDbDE` sS6&V`Nf1zmv7V36@UoDA>KBP#e9p*8mYban(=L zoC;e-D?S6ys}!% Ny!sjU72t~li7!+MR&C%FUQ4n0Z3n}q1(uTNWj zZVS$s*)!CtdqZ*%2`>|Jb$D~_;|i*@K7%`VaBByLbi7Tqmi=T!k#m1 613#AQTo^#%h3Girk4OoDD-u+~+Z5uuWr ziA@J@J;~E6xU5~X(*qHw+<*gpQPnR(n1M>kTsw0Y&s-W@P;cT4Gsv+E^J;3c>C!_r zD+jT654kqx*5GD+q{_H5=WD*Bxd&N$BK(}O9Hl=}R2-we{q~vbk&VoQOP@}-Ed%F( z6T4L(pA7Dy!Eo`t;lun_Gj}D}Vfq` zf#?TRUxIG8dMq=Q<#8@gj(UpTduh$imS}(2wgHte!MmvR%MH|C;io)dG4D2 zBpmbC-vm5An5aE9Lo6QbsUI(vItVTsIvmN%G&`syY4UBcYQ=~Lmv&jr01@QJ@E!f_ zilEaQSz2-^nD}PeqsFF;y +g>O;%~AHo<9k`m1=_@O}5>ujCZ{G?q02uCba+Gk@PZA;pdr8D&% V@ScOt^bMKoL-v#^d!8BzsVu}!>4&XW$_M`e zf=L{Jy)z;a3?>^ixx~&a_+m!QX|&la2>2S&yI+BdEjLT*Mif3nFW)ANTcuvM*7N6N zC+FL}WOm*@>5%MzOxe>cWp941Gpl;yq =1@ey>!w6iSP-aW1d~(O~u+eVKo5-HVjpDdBwi<-I*L%%+ zF=qk=Cr>8 8QhQ5>J zSjuw5rr=9)G||X?iQ9+XGyUj@zpLG~K^Fia8Ik(VafWy2s@Am*^BvWT-!-~%v@pHl zQYi;i8`6`RWeUD^15#MnXd3s%>3-Izeu%BY_P3PFq>0mohSJ6m;E#eWh0OBpfSn5Y zr+gVm6BW5Pwqz8{7MsXwEJ3ZAs@kq#X@4WPN*AKnFOQDF!itR3m&~ns*VkAMWvA%Y zEVU_uYXVEcV0;0bva<@04y}zhD=zWG4xMS2>XU*P`2OD5zqe)F1ht2Gw^Z*rr(ZYv zScxyhBCk{**-e+_l5=@Nhl-%{m9mP@GFvL74Ys!b3Y qoP>#^U{ z;SLd7Kk}#4jm}bt6JceQE-ljUYZ4vsiCC`F!S{wh4kwafXcgE>o;${(xFfkdf7k!HM6bDc8c0G z*6`WixHL<61V=WWiyfxwZk1VF4g?UViYl3_Ieby*C5O8wSH47tbuIhab@p!Thu9ro z<#!8OSui=?2j&+PLFT)e(L7R7V4l9M-z&h4Rj!-nh!y7dn8>&5d3~M@(NdM|#ax!8 z+o
}q_2_XI}RF0Sf9&kOqy6l8@ii`zgVIJejV=o@8%M%D-z$ZsJ8(u#hpKp(J zV^Vb!)pWGN-g(hAD8X3nR+aoV9Lv;%=sNi^bi-K~H5mj4l-@r!4<8ycu===>i1Cv? zn6!f+Y4nR}m9me;2Is;I`yGA+wlYiLf2*c1rR Rn@#gGR&u*<4_7A?`1$!Nx9$x9@bp>_=!F(6kj1;B-*_^#B2sJ@gAH|`2DnD( zY^zCQjdHzRC1T`1rM2g~1_tTvf10i8KFpYXHa_YYDd(qxs6!^tu2()9Q)`+oXJ!zR z5j%`4b{TsyL`VMc;oA@1_Xx|8b$7W84f$2Om!PFln4?MdX`y|Ay*6;=%BA+#d_A1$ z_)Fu58t7l#qB)cK-rjP8qiDpZG*&c37s$ UaAww2)W$S6Er%vSp_vu^=!?d8gFLj*gIICJz){OjpYO){O2xk`%$GrRfV=Wz~BO zqr0VSi5Zc!a(<)HdQc|)cz$N)CadrVXe=korHY})s#P;Qx$=8kN1(@1j9N05UyYqj zFGpAPOedZZwD|M2Swdje&CRe3Ab%B9j K;;^;aNf%ms)HIi)gy zW$erU0aWRr_0o|+rYEqgR7ITP=20ZggKd+7#qZ!Og}gFgkh}$O^j*{5H*x9~QrQI^ zZ;m~ 9XuY>pu0x7 SZ4G!oRAtNKvYVnCj{RT*(OgqYc-^UK^S zTArY7PsmafiTy~`JFM$4d*RH*M>Gz?{W; 7F0p!FfoA0`TXKDz(uE>Vn4%zStcr7yqzCDO3#aej%;lV@pUz8bPYi4 f!b{}$+mnKGTe94%(Yf!G?S>D|y`Nu$OL{*^y>Liy zE>RpdIZH{A?Gx}^00lO}AkjaXTW-bMVbJxa&vvbj6&_Jq#_A`Jux^OmJBTvXpn&jw znr3#G+a=@cJF@H4f+h1+?`vFJ$)`MbOZMdRku~~QZQ?!hyQcMY`zvS;(TaxyU6dgX ztBl%_SmgMo9D%#2?E@3le);Fgq(Al!5hL&v0BQ_KSINK0Ofxn`6&X|9Y$<6*w4YCS z{JYOsZu&*8#hMv+yU162CV60>q(vu25)1R``CRg_tL4@+K}+?&AvYx}Duq)S(d$g- zmIHg6*i(#d^(+mTeD05#NKy?Np}HXcdq Bsj>jn zX@Q|z3V;0@l=>OB<=3>omIr-D5X;8WDdWpKSU8u2jF-2Ov>x%K8n#@Kb8BoJ{VD zb8QbX8J10Eoy)50?bnx_X<9DT*Pu4loxG_Xn@p&}>^j&>s|L?H;FIZN)LUQUofPhE zSGTAyP$;R379;RVN&XE1-YMac?0Bgx{szq_y`tm11@r+J5MC}?L(l`T)|9#G~h zg?v`((5VZ4fgeHamKXdXdUWXn)Ll6M^1+d>Rg0jW{}4A?=_)5FAJyh0|81+}@nr=Y z%_T;a2YnvEL;-C0pSlXL;Ns0ES2|=W;n5D)yBHQ=!Dl~%WKV>XbASl95~T+EHJkqd z479#PPq?k{2ZLSnO=6LTdA)#Zr=+!}m$LKk27(3dBOqcrk5#}1Ja-3i!Y!QJ3u@GE zKto-9Dl0Q1v_-eJbcojvEkpvy6Wf*mpyC@oR57_*G~rBKgAniAfi2p`#9b@BL4#-} zJk&`s)ihooIhl1xjOMisr JCJo4s#2-Sp|dHBqe{*iJc-q>NT7@!2Q^2^h)uq~UFb zn>;T}LCZ-2N-E&S1+_F*ZbPtha8>HnixPqm)Li}pY3Hgv JooDG;nPIKr>V6*Xgcsmjy;xeM zO FEUn?mLvdbDeWIjFdCOM(+7% S4xv2SJH9O z1WI<{ox!`eTCzvo_|#nmVd?al(o!?Z`DHxQvDp^pBdbpT)1m&RIta=JjdWPb!ipDk zVO!7V9t7rTaMb%c?p)6OW@ZeE`w+r?`8HoERlt;Q8-Y*T7Q0|i3~e=X>mHKb*)u;k z^dG)7YNN-r{Icfsf0Xr`PrkR8jemlAYHYeyqWaHu_Xf4dn0gwjA+pe{^;&PABu%1~ z7Cw9Fphj)T-k}Nea&TYnS@7awB%9M2T~h6@o)vW)VV}m@vN(7B%7qWt-A6ZApfdY7 ztDlR@O*M~NY5R^=O>F_*RW;0|qaQ5GFK!;0Nb8z7ZTZB%8ZG$dih6> L2Db-fmqb82&kg?5JnmQ zmsi!>615DNMnpF~+Cl7>jaW3IHd1WBkBFNbv{;9tLKhrgm z#3IWJB_-I2!UqYsU4{FjJfjJZ`Sb)4Zz@)>-y6jqHe+4=Fe#Xo09ocC0@XK?n NCK@k&$G!5z6Lmci{~mx+P|W&4 z<)NIbWTAmB_Ob9CF4dfy){rSy%E{98s8uS`k}m?K`yb{j$3d*++XfD*E(c*PWdFOl z?bC0{lEWv)RoO{vFfaxydP3#k!H{<9U0ZpF^*yrsT2A|GPK(i%4Z#D^!kckb$aIqA zM{T;j6^yT)5J$h}@P1X!%1RJvp>*M9;&$(qd-(op)EAzXs4V>p-HP%nZc*v%hwH&z zvYckcOcax*xxH29tylc{eP&C&n_7Wc?5;tsoPm`L6a+1Q;xTe-)V`q(7w)<0O3)?e zJUWS5Sy{3?^T!&+A#I;iSi?HbdvN wv{Qe~35r zI2Hck(gW8$LI+s&&FUFakZuaZzwxl9N}=Vx-3!85%jAQT4+RDW Lam2}lFJ z*-Uf0 r* z)7q<)RY9b&WDmGRJ4Y5&S;T?B_lsa%Yv}&CpAnttTzmY8+$tiPw53xgaGxzEFNbEB zofAztpM)G?t9fR+9(5J`GtKurHVGQdcj%bgN$WhIB{>gM)tf#j!h&tu%AjVmjQ*-B z%Ny;boU{q;8i1-G?2{ftRR9oELxx{U>kJsZpelD?DU*(qNFB&R&UV7p;VcEKD;64F zXsA-TH7+^Bh(E0Svhtqmu1L%=Y XY{L6#Pka!RP%=dok3JcCi-u+-F&* zkKad};iF_`5@}UDl)#EJ*7TwYT35%XVvOaV?3hXpLOhII&?SB?{* KYtH z$9)}Nd+y%Y$cUsD^?K8bU4^l1_Qtor{@krK&~O+mGWMt&Z>aASLU9>uynVT;r69Sh zJ8n!c*d*wg)aBNjm&A^m8m($roBwiYz;?A *P$?;vG&j`>=ql}`NzQW{d zq^BOP<*WV<-y00-=b+(W+v`7H%(rOV8}iQz8|ax1cdsw_A5Iv OdQ zM72y4L^6K8bqL( ?ck-RV9IkESw6yWKBul{bY8ap2+Na&Q%j8%x+^ib=P{yr1VkEog_ z(wk$R^qfj~53O7u$)!tgN|#quy`Mkw(=PHq90T{W!6){f|K`AIoO-Y#tv?&HckX?G z*|pZds{4Q3>>hRmi^f&8zK9Y#6ZF>WdeHnKQj+*JkE-{HpFtQ@?~S8`CvIk#My7-D zR~s#}ud-eHQ&y=F8v3pt5z_7#92XtXaB& (z30)7d}9;cFv031Yuc$s(OojPm%&@yiX8>VoFW0KgWUo&H69k#Mv z?amT4LepECO_bn8Nt*QhyONI$sd_dUN1cNEWn}lM0y={c0Ks7N&k}&zjB{oGh<|vz zmz=4t8xMQRGnaww%-LTV(bJylEUL`TkSbyr7MvN=?vr_~%I|WSbS82@mf?GuRFnFJ zUbVDU?e+RskvPr) LO*aE;v&uA%g^pld(tti%>Z8q`o-aRW- zKKji0)P>I_D+oT}_Z~?mPG@?EDNNOG6i*-C?@?5)HBfjcgZ5{C{4r-94d9C*H(L{S zV7wYvi~1$zm~mq$u5BTFKYV1W`S>8OL9&@m{RHeAgB^4bbklLJs{nR3`HR|X9doY% zP(mw4+jKp*e=(YqcAtIz3oU5T&smR;%%e~gT@t=7pupKn#-t;yKA82fr<+ pDtq3Su`8`B> zE^$H2_YB__2-LYzbP8o^ZiqaHJn*|D3IO~Qe8xd5oY68xa;?8;ND#nd56Rs<01iLI zY~4<13O#b?X3nz?nR&W(0@qlwMHx`CO8OYw@FLB#>reFskFf{tP!RRozeXH1;@~rE zo#%9|cu{;vP~p7pewy>ehVdZjJPySZWVvxa;Jo&Ndct|kyQ_1@Qk~Of(H;kt%u_nb zaZ)Rc2#=P@e0Py#l*dxOXc`I4flZh?n(TGaTWnMtTyNR7qdBtBe-0LseJD;NT=jy` zT00EVIi4n3mdB^J1z&uj@ksMKmS6m)9|yS7x&`(%W z6unGSdao~7d!~3sP#iq%@b0E27R4>ZdGP7|4OTre8eOrAWleRQjCT!GND*n@q|9w| z_Uu~RklgX2B5bwApSM26s2ZoXKUe^sdavUGq1267cq`4^=f9?^KIYC=X&3xlo3Km} zg%9a;JX5pi K;maz-Qnnw(PQug%9D3vDd@(0ymeDz_OQ za53*i`Az(MP~T4`(~bIcINW*p=qGaIEN#U#yJN`gtjrM~;z$uq;o6p%X#95|NU3$j zRn+8W?DE_%R6TZdC(lFAm_iUZgum=jZo?;PpD3TxyWvK8|j 2+DsN8(8@wxNHv0P< zchIIBCiwExdSQ+xoqrwcJrvR^VX;&9Oi3=^` w|a DjG*Vnmkj&Dit?JoTDUvPv z)I?uiHL{ 3p z>>Z^ftYKkNwHg2`?de3nh!h3&MDw+;#7C;7#J4Oi*2I 7 B$NA&Wez3yNe$D8&_zE_ SD!jkNs>s;<5ZUG&xRzS<{YjkQ;>lDA63VLtUQ(K zTP}_jKfd|>p?tSa3PT(PN0q}a2)xw3qUZ`#cjhom)K2tiVOp2|k5xGQ?UbnntHr-b zS^`LSg{Z&K$a(y^C7Zf^{(a|pG$6g!>ObUMY==1L96v*wF EF2< zjUx?n?xo%j)1QIhi%nAvN-L-Pkn}S1k7xcRO5i8<|EkIU67GwuelqLsx-56ER^M{9 z=&r0m(+j=F@7eR@I1`976s`x^#xmbtA>pUEmKVB}4+ED~EyxS+mgUdpxXHJzY*!}D zzZ&&HI4Tm%U~c=4_v`xRO7Tk N|T?eN~yxC7|I;{ipAgk{!KJ z@_lbQbhqmpvV3mix9j{fUzcZ2T{N9>x?MJ)d^n2x4}UYg2=~r1;ateIn+1o?M5?r& zn{b&ejRbf|53fiM<(`I6&-06ht{BDZeiCAP*=8k(WJg$1F&b4)qnyy8kMEFndnKs; z7u}jzUT6?{Rwgt1x8q+g#h8=B8V_?X?Upt@8|MErg^sGcWx-3(h?m*QtEcuh3~x&A zi441U{3rl>R8LV3osea?;9a>4L1ETd-aF-cS1-b>#2=gCB5(CUBA3Xi?Mi0?t^Cg1 z5E353Q&`QRZ)}I}Cg6U~yBP#{{&BV_YuOid4gb;fKw#!>QjpnLS*4JIzXGlt$*Dyh z^T1m}dl8_mGXINXY5efYt> qod$+tPctA6)M?tQKs+k4LRjj5Zrn?ZvQNO*(`bcDEv8x`=6c*-$BZI z5(TnNd4veOZoaYNvw-dU^s{y^le6ZaiFVmhouP$EpZ8vy&vspT1}hG1Rg%Nc 5#mDEV zP`OnEybfKB2I6`WQOZ0N3fr9(992 r>|8>J9u zeO5KPaCI{+*G*qEd+Gm*y0oFB5~?nF!i&7zIf%4B!L#;~ s<|8fnLh%Sj8n9+{%^1%FSZQ-WT0zyru38 +DgBv>-{`H4HN-oV5()F;b*jYqs#j* z$H@1>&6?FH0sK3>msWb7b_N>bchgC~`k YaMA$`^!*rV@$ z(c-_fJ64{Kr4PU{?T(innB5Uy21ei--a0}u*)1)&(gz-CiLH*D>Fj*63vG}0#9+Ep zJ%QTku9-70w=w3kYC`ee3)Z-Hp)7lL(#lDhI=%c4trPrLHV&I6Jj}kj;cB4)A3J=- z+55~ic%w?~uyy=~&(_ZxrT)KyeqZfhRkP~v;NE7u&&()7((4hUxioW-EMu;eJW;FX zx#>9IMnLZUC<%|NP@?`!JnHAgzv(yxo6k>TQ;uwvdW`U8h+DYG%PrZLcAhudceDhJ zA1?#q>fLll1xXhQ$haNEr~aQ#3|bVY*8Tk4WgmmwQ-?DMM*X{`qpP>UY-)7q3Qid$ z|E 0 z_PQ^h=oI#esi@`R88Na^7xeGnlqhy6nZyop7HR`o$ZRV}CH@EDkRj2|$f$aK+D12g z)8Xfv6y`i3sv1%xZv+}^_xpG`1UlhUa-iFGL2wg2BK`F-SVR~q{quhSF(K1;GjXW; zi%wliv(4eA1F$2%iKQoKBY pciyU zfku63u9 YwWIUC!* zx%=vy4jVq09x!3_z^*9C8gHfd#s{^k76kfdTQFS)s*6Jn8}m_x4IiORwX{dsKlAQo zN#lv%@-Mc)8}m)SYcEFIRSLA}M~eXBKhb7P<4n%Q2aq;#CCZxoJG|uA-X(G?Vt36> z$7KFHK~4qcQHE0e^LYol?0@Nj^*4pHcl xpzU(u!WaHU)#qbWxre!NRg5Qgu41NRd`o zN`mf%d$NbNL6dbR<*sj1K9i#}$C_@9ruLrd@%*dqWqZ60dcSiC*|ND}CDF!_GmS~( z9v=_<9!US$HOESeKlOb;0jZQ24Z8Zr+xZom-H@3p_^sUk2N$K>IIs+;J=u|BJ=DU_ zR=`!?xxWC$n4Afx4`zH@{%zv{OHQUs{VqvECJx4F`oDd0ne0jm->SY7U44FSq+;xD z>9nt(c7+@P%TeM1!Unk@98g(pi8k!j{2O#fc0n`R;lIFOx-56H$@b*W5}Xuo7K3-3 zS#cm(VSByaGUg~hvQI_(z|FSHi>#6OwRoFqLP7y{Dr!Wb(4S |Y*b-}+3`CqcHVNmvvnCfebfI!A>}|C-56xyAEwgu@z0yvAtEIPo))VHT|Gm~igi zdc=YWBD?Zi|B7izqYlFYI`ZA-l{5_zGCFbVvgqoP@q9$E*;wsi)VozvEwKxW74Ry# zD)x`O@b#(LG{6(WHXC$BpS`ovi?q_T7=VSAiE2TF6ma}>ZGdT<+TtNyw#PSVK_kSj ze9{YA*>r40y*>7kp3Wng(-}RR%l;O1k`52FYSQ1LxMR<)bFHxFvS0YiTAwhRU^Uwu zxp^B`_3{Lin?DeB%hH7TV@CsfZSE=~_%uHod=gHX{prnHlX>ceadkn-sAGuKeRPnuYd+vX zUiKz(q!y8zO=8E4F41kUTjlO$q!1Q@y!DYZmKY7;B^FO56DJdoSw$8h*T% ?hkLcxY7UteiGXQHn3#_@zR6NU z^B<*ybmo;|taSgur1 n=U;>XJeqBH z>{Pds5;=Oi*Z=dPsp7!i6VkD6jy^?ei;sE;&ScdIMo$uwGX2AKo2D)Tu0H7cl8l?# ztQhXZyh@w5Wh`fo1lYfQj}_w`$`6YV|E)QH=3LZ#NOBjZ1~VUlkm01&ZU%y>;9C~0 zEcI`;Y0dl(LIPeA n>cRBSx}JjFZf66pU)!@u8l$bE z5c4fiM-;ugyr+di1 }nl(?LIrTS@b_DFsimd^1bfV}NZ*voG z4Pwa{i7$GmeAghAC=yi^x?~O!`dNSl@6FlvDutH32IByN!aTR#FycoJRhzeI)eL8< zpS)u9r;TTm5&^i9+*9@c*yy@vrt2r{FF^ZaEme5SFh6({4Pa_|blyf?lF%N9E^06h zlqvs@qjQgE`tknwn9MDgP-Js2x5&K>bE#Z&zmp^r5i*m@L`G6tbB{Dk?)Q{yQd8OF zHq9lsB)2v9yIk`5y}!S|?LT|G_de&mUe9Nw^qx{a(XS*j|CRWkAx0D0%@VjY@*HF_ zK=}}QHiji7d$a8PX=#zLKmJ!A%Fi!x=Z;Q~#>M{8KhC80;1a&ASqt!yzt2C0bN}U9 z3GC$DToEB_l6+p!V3l^K 48^d=JRt-n*$PiRUjto$8xeW7cJ&?nMYd_i6rOXj$XxydZxjTOs?i>U@` zBL%SPx-3p=*-q7q@vDT;wFclZSe7ea{7PdmB*X|bOIooWU29IDS?i3 _{+Yl^i`ypfrV#ZJGK8k zOmyV5mM+LPl8tBBO)ERt5V5=FnvaqHf?8B~u7r9_E?XXG9V YfFyAlV3o`ay5?L zPlE_iQ&-}n^Z)siG%znJZaLkaLji-Ft31~ZnaXgA7HoC$HVDfon78N9p2Z7NwX|7a zhSEf_ayhV`Zx+>CN`wv1n96T4rWo@e7S$he`RWHU3M@crA!k<8P48LQlP`i{)JD_q zk2U&Eregh&iD01mR}8RXEN &<2K7yj zjn6uB1mUR@6Ya#|l*)6|DxRN7Uu2)wi5@iSIe? ~xP))eSX*ag+;0F>y=w zqF)s~h#-Z+)4q9 z7b0mT{#K3JlsrR X{>RS`w8rR0}j0><-Ts|(qBh3Tf=h|&jmy)wBG`ufC z1f*~SZB3CBGZ~mhryol~eq?E`;Ik_?v-{zibQ3i~z)j_E@SDetTB(mIs&`uTs`11y zsJ$PQpm0YIV|it`A3z?OZx+znFO`!pgPL(6l5hsRhTHt5^}wWf7Lf%-UUEK@IE8gM zt9=DE>7B{ Iut_q4aA==67Ykp+Ml0%_LrxG4Lebg?G zvar@U4tw;RByJku1wto>Fs&ejp- $53B*k9B&=aM2-Y;fx~qAgHA8=lv^5nc z#CwNKYnOwU0E JjwmmHwpyoFQ<;PyhvEQ4b^5!j1Z@o34g1#FJ_Q=hE_C zX?*nh0{JBAn14Mzlz8Y&41e>Q_(m6t9w}g45dbOXN7ETMxaL; H zrk>k-LtLM_NhyYC+i&F-*SXWu2I-}nsJF(QgVPCODM&?^bh>0&zy@J5&2{sJ8TEn< zq^{j)VV-ck$ymj7IPrVKcqSSuy+SURa7@kk2HM`PZpscIL^FT}yKguR?MO=O?Rk5{ z@>kTmRYmqxBBr3C9Q-j7EXp*SOZt4U<>aIE*6ItJA2U~PFh9-_wQ#dUk5wl&jDx#A zP$0!#AtYMdUmLnnK*{S@%eS%1&*af(ir(rf(G!fr5MncNnOU z`(V`B<>elAEwJxy#{;ICAg&nGGl_lhDjThOq zQsH|QVq$7T2j1mZtvcXL!skR$xeUU7iL9_F%v8_5+};RG0uTVLR8M53W#XbaQiFL} zl^cJ5X~jzK9V_70yUd1oz}H>5Xzi?r;))dC@wbkm8gw~{m7ThF_!*FBS@Dq4)((qg zx67iG#a&3N0W-@_!13(r3Z$3kxqrx2tXY$F`cKuppmrNcSmZjMdeLg2y+CFyj=%K6 z_x7<0d{wD@;7C ovrnA72i#U%de{) zMnXnTv43`I^S_v5^jz`9(PWkufVlC)GFM$RqJ<$sQCGa-++%0
%}I1l#vn{qyx^1>Jn KEkHuF249STki`wN0UR$yj>0Qpg77qfuS3njy_il3ws1I$ZMT)FGQRc z;)+DoHgR!$7^kM48bX8^e }C6F3XyDnf|$ZS%K54h=_H55O~#V7N}xyy?rAaZU4sO`__{g;`wvfofW6i=Z_8s zK81zNJUcOl>ILpfxIXs4G^)`!soy#h+_F e%pU0 zQCAZc@x`z6-x&CLg8ndb;_+nyOBac99iKV>(OD$;b(;h)y2Qj3J9DF{1<4&IJRTXA zRzls}DCkZXXasU}W#><<&x&{s-vyFh7G)RD#-j!s9Yhh58Mu)$&jjdjVERMx*ERCw zIgA+!2Wgb@)Ul0(@*W-911u&8K=6%ZTG=8MOn;J2NX7!3P@jSTjbmf(r6ofy2%IWp zE5DMiwqghgu%l-T?%NjxfK>fsgSRm&MkHRB8EK8bGPbrXpZ#+8`=vg_f3o!b_~dW4 z?!@1-`-2s>aILN3XE O-|PCsU4CeIu&t3R*&Ob z^B2kt*@g(Y~bUre7WBOfAaK+wB<%J+{3bXSA05Xa4+r>8prypZKGPqWAoWsFpRS zp2v`RGEIockmv-CFImNmgcNIe_32QJHOo;K1O!rZzBh(*Aulc>7r=GoT26<5L;lfY ziPz68TIgWo;y)P+VhEi;n*C9;APFRF*>88zdVWony9mmWfDA>lC#Jx9yDT5GUHr|V zYlWWLDIx y}%I8&{MH>Xq^L!2GY5%dbV5-Ws{xF{-l zU>~Zz312f}EBE@9#lik1J!)soL0~e@An)pxLqN;pY*Uq-E4Py`eN`)(%g>S zke6?6FP4v F^}+yC^3i|@1DibOCyD}L8#u>}-w%itzb+-Jh_^rMq3r736fzG8qs9fma|c}>#& zDge(|sMCuw3uo<`X;&1B$+W5dj?DF E)fh-Tr9u7ezFhKnGNJQ! zKojMzDPH`;-2D<|uBTldDGiIPTK|C@H~?9<|HsA?Lu%$NthVAt+clBfyUiK0{6&O< z8t0Gi6mcPL??d1_!k4top$+R5VnTV9=3cMgYRM 1>_ zA@raHS0JL}e7XTcRG*Mg|Dce#OThm0Y@z;BxQYC$Oz|QBT6P1g#N__)6w-5K3bn)d z$k=4^8}*|HoRe#wgk|WZUo$aRwX3%?=LED@|L)T7Y2L|)EhZq38~biBaoqR8024~d zb=Z>PXl;2^CR&!xg&oRP70Q;N11^;9nv8)3>?tWRYa5|eM<}n3{Z+>u2@6cq%?bk} z!)Gud3`NI*cJRhV{BusR2s Y55E5* zLB=ykePXR0+raNNub3ntR=PF{_!1}vIv(hO5FJ}c(E8-8L#vEbIPVGU%^VY5zh;ZA zi%CKMfds`eGTwRBnP1Fugp*gA;iW!%GHDx `~Q nOJuJX z@ =qBD-ZMJZ~nMmt~h^?{_lSN$;TrNO!M V6?FzIQcVobvd+x1$y0%6qQS*koE5yQ-+;>)?qy_P!EOK&KiVbz zn_|~6l=Rv%;iLks?YQtz5JHwqofA@u^l#%9_$NPVrW-}_#u14;xPFD=7s17c-UX*F zzI {@jV; z95sg? d?{USPsWa{W}jJ;870*(M>}7&NX!Pq z`od%R2ieOiStq~dkr!hW19W8oXw}Wv{-?gpKk4u}R^Z#N-5ePXn&ASmIn*c@H9dx> z8QSXb4tey}D@;X#tIp2)PNevwH~+^zvD_LCX%%mLe!qI(t~v9&0%T2%=`j>5{ro&e z>+5r=u6 a5i1>a$cN%Ju_5M(DrQmDgO>& zR{}Fzxgn^y^4oB)lCIA3LXiXJuM?p(t{vK}J#%T?gsu}k64O~E_}E$p43w3o3WPf5 zTdxM9fRftX@vuKVCx@&WX1Rv-`*IatZW(rm6IfQ3T*nEyx6{Tr$0(SoW|e!&1hGEb z;#pi;ZX&I_PSiOCX&N|a{yH;5ug;_4t{dU^cJ&4DNIQ3DF6J8NOB5((itozV?cX z)1@%<@bjEDBQi6&Ug*3b@}c_^ZIH-;b7JN3vLATTX^L{kFGJEWhq+{wcp%PMm5>o1 z>ffuoO|^KH<()k?ksQ*L3ee1%&J-4;f{P^YBSs0dqucSC3u xxg(}wW9Y2E}wIe8Q8F9*!onXJ64>{u?u=)Sc9p`Oi(GSn8ET02{G!)ZB6`5 z8$sfuMPL!6{F>?d#(^zs9H{8mc2WBYGnr(NuKnDxV;*Ry2tfivcS@vFd9e=d<>2_g z&7o53IBN~rN<^K+;4L>$u+rGEoWELtxKO&=ZM9dvTW1PB#3)f3o;rapz&*!~mJomL zf^P{4ki`s_00S6Ln+Xe*{_0fKTqYSA>i;+6II0GtafPN{MHUs$Oi)zipeS(vHk1fk zH(W7W#_ZI7^)--X!6mF%eY5o1S@s9>16P~Dq}~sNBQIMrC(ZL?!|Cog8_17FsX%cJ zz`-n*`46~D81;lihZijz7Du0T*u*7UuIfQ!{Nn&4FO5`&y3?<*lxtLQGdS~z|0Ne@ zbO3BNF+os`QP6m-#~Yn&JvR%kfj^jNnMpmVM3W(WPBRfpbMShz?}E2Q0iz4Zr1%te z_Du Z3xJ}n0phD+urEGpoQAd-T~Dr|QLBo-8?*;GaU->vpStkDClyd*rYwJDtB 4)~bm4g0s#Ahos2@v0#@p)m>xqImok zRkJ2x@7=ybe?*fSF-(*4Z (Z8o*jIv z3vT6o$dX+6@ZN4bzXD>3W-<6hjT1*@THQ(4Bl?ZJsW0huT<=S`^h$Ng@IR3APet86 zK~pth?eE)UP*~NE2zB|-jPVLnuqTYJv7%1|o73vi&vybDDtcl?W)Uq??cfk(z3Z7+ zu0hL=*ZG%Oj%7Tv{}uQq=*q}RsOgOu|H~_Ia-?}T5R0EBr#Pg)U8jzAM9R86|AcFk zC@Tp&xE YDkrXG<8SvEtP6SX+c9LjBPmGzL!%)JyTOcapH{=Ts{4ReG_RK-}#^ ztb$IwssJ#p-zlf~vTUq}GahE{KmE2-Q&*a# }u8`3yvNhde+win0piO|hS&T}%}E6boVQMa>|5s2uDi* h7ay5$nmv|Gp z |n=R+DJMx0IPH QBAT+r@3f$euaZcw=F-c~1( zu#>~9WKCt|ZNK~4RPp?uVjn!O!k5QOR6C0(rHsL;>{gmgqj3+k47v)K;uYX*sX+O( znA|@&*h*SqTQ}Q=F+DhiPMQAf)C2LsWwcIZIiwv`29Xs;;oE(ZCrQwSVh@Eb#O$Yl zXZ`yrKn2dCwhc(#8fiWb6F+mKIbC%+XuGzPm zPL~Q_5|si~g?X7#3wLYRK3nnv__%$Vod+-z%;P}NW8tYty;+kh-^5aG)@W$F{+ZTM zeV72eu(L7uVqzAL4Vg^0&4Rx g;s&S5H>XfH67Y-h+zF_vT|Yv5-~M7wAfAWs04-_T&o>b23Q zEabHdz(t9N4)1V%+Szphpy`jwtv9)VRQ`+G5a!5-I#b+LsT^pXt#P!(*DCbI__f=T zrxPP;W2zW;FN#>*+iZXzDIuzI$*XCc^Pz@t{a+Th0#E5<=YCPn$fofiXfTCO>lup$ zTjW@$BpJ=ttQ0%zu^~UrYElziVuUzh1dD;!7W=AR6pzE&gV+%>1?e0N$sP7w#H_?~ z)w3*A)S9)7UYy1eFu2>l?0{|!gqJ z=&~0lq z!ZwSW5lvDYUSTIDGH&p>R2SYUB_lW3q RSdA?JYm%F zlNf3YHY&(K96 wyUdti zO-&`G{rJ=f(&TNiYuM}K7N=XU^=G13jJj4VI7SU#D1fF5jk;u0u9&fA*$qnPW! EbyyaV54s@cvmTW4hWm>3L4GFJvq78oU?T0}rG7z;N5 zJVC@5x<-J4$uvvxZMqTV%vSN#*9`J@AJ=~O3k0)M^^7b}h#4a}ctnqgnIM&=Ub>AF zg&Av3ONsn1jcCd8R)jy4e1E&-88JQrRo1RZAf8vl+p|w}?3*)^T|j};u%d*n(nL0h zFPk56w=5k#X^MP)-snaPoEG49eK4%8#(n*|Tj^df=kf`^rE%q{XOTg3EXn_7J}k7= zB@K4@4V?hYXqjA4mm8IlH+JB!-?u!sjC(N0n>13tTdP9ZC?*EexSIdXC4blvUd!j? z`Y7J8GcgE!m%mOyWB8ntyqh!Rr&HW_`M9tDD==;}WckcP$aKmYFwq|Pl@el;^H0sL zf8KH98zsPzO~nSRNtNN@>&4gwu>^Zhd2$SVdg03ZrTtdt%(bP~zK^fUvQr<5tv~zw z!%0(3M_2(z%viI%!gU!WkmyO~@h((xsi+xr7k^k2nZ9My(w4lrD<3SC@ U-w&wd3eE+1x9WM2Y@-<>iJx#e3@gKYFs+Sgju_ z4tHyFn3&j4^=ELDT@fO$i-b@=DizaDd<}eS@H2ItFQAIMVY5J8c@cxhb%upIS6bRt zLM5T%!wD`}v3~b}AY&Phw__A|ZG>lP@rBv6AELE6uc@4%u;mk&_uXrcR^fJJz{?a! zxU(9iUlz7Wt4A$Hf*S+=jMy1|c6&n`eikn5xo}a&KF!I iA%!f^ZE0@b&-fJMT_QMZ`uh)2vPm6RocO7;c)ham*HU`0h zmzS%Zrqds4$*J87`t(!uk783+;jf#bWtkt091F6-x3(*H@APZIc683?n)#kGJumbh z2y(N#L4Qn$Bm=}}Fv+tYf5o8W##W2AwAV#=yx#|Do2^N+&D*TUE1j>t8`dYq&aWz& z(2u6K-jsOoKI{&k!`~E2n^|U*p-LzO(a{+)rRN=_Jp6u5Z`fhPM9^J>#>d7r6c>oU z71ilmeo+;Kard^u88PYaOX|CyUg8I835`l!R5lgf5VYM(0Bd$IP?M@bZ8y65>Y2Fy zYJgLqkKa~#1b#hyCZBKPtWl^9?N@T-VOiwtKty@7;9rM+1073FM*_RTw7gtOi5e&9 z!RU(hWsM(5rfU)A%emMo^iZu*ooxCCKQ=I7nEE%u|3g2!e%2Ukxkd|ghrN+N5xyk( zDh| O8a7-6#Y|3e_z<&bV8FbYVZyFz*eB%) zvH1*Gba*opaD)aD55|xSW9p8Kw)cbGVTq~0@-__U&gA89gYHu|Nkp_M_A-VZcY-lF zaHcd8QE0+>Fqnb`&3%+@xyklxZlgi@!S564x(~{Ad=7rlB?P3m9*8|qBdVARZ*{)D zO%YMtD-Wimj<);xw)**iA<*IfK<8pUS@=A>;Kmk6b#MkfihD4Bv~+r`67dpPxF@VC zDi@arec0{vFbHF0 Cp$J)YA8AUP_3YODj$*aCK%nkXeBtXZE5U-e8FM%QD)R@+ zFq7NM#%q?|r=Pj=Er8Ym-`N(fD}=kviN$qMVibLsA2(k(DQ?jAX+kpMfDVIcudfV3 zoypET?3e;i1)9Kq$QN)01m`iisr6R9Xn<~l@cyt;k!|=$&E9nuzgty*ylC|*6Tgu_ zuTe7l$?^Hnv9;?0zL0dKE!`AJb$40cX@jobUL!hxjz{#bP}{Wzj>_JM%8aA{FdIq? z*H2qE-N%ud1*55R4_e_}H3{wPHa}$s3kxF@K& KN|Y_ zEmOO pur^+OJ$*Km7c;1(tFm)^dQW16;C~|RC2#g!hP+}FG|l;p zal_B}q=MLC6q<` t_<{o3Usx#Wo5`#D}y z7K}0|#`&=c$OF1*( EK9NfyQm8JcN> z%c%VaH|Afo4PGNOgip_r%#Xb5Sc{4ly%*g17aGl#(q)-8igphydCLx|aZ%$nlz1-3 z=AM?Vl^JL*S-;|B@V3zJghK`qeLdd=R(bVFkm&5vwai9sA8M%y>3Lg906m^X^yD91 zE=*V29N#O#&{OF)A7y9-IA~QTLiQ9Nz4f2ty>mJOG@0Z-KH#2lqfU%__3c+_z>OGI zp$(ULIvm7p(^7FNj0_9lSdnGZw9mQuc2}!Tl{F?^yx8l0mB7TkXXi}Rvfy)09wQ5e ztwX4obiJ1jdr1~qWiOo0HS0#e*o_09x#{1iYa={z{10@Sx1+l j52S`l!jXI0!66EmvIN*XaG@uz;>m<1;wDw~krCSqy#s z3-#9}5&N`z0oxTKrbBaK{dZ{}f }DuYjN!59g}$|156ArIz{4JM~V++u^+&$K!DI zF-bLIsE!lt{%w!xn1irlxbG6JuI5Jnt(E!=7WRjETAz=K?hV BU@>eQ5dOTlZwL%uiDrS;ZlRxmr$dhGo)H3X)X7DO8qVz?F z9O6jFmYw?e;oJrG=#UfP^C_Z>Rv{l@ER9#ihkweO;7`D126O4>g~f{<%p$;euYV^Z zJWm>IoMREX*dHm;-(vppk0n$bc(;SFzK4URR}qyOI-W#ejb9Yeyz-sV?l}vVWm%gl z_W*_ e;06?F%RteW_!axGF%Gj$@{(I1lQa@aVVd!IC& z9tA!7*q^n#$##Y9Ji@`bX=Bg5n#utQ9tIQ4mi{^>DsSy|VwwU8e*VUy;6J)fQC|e8 zHUX{+(>&9BH!Uz;@#r6 6b46^El6f!$K>Ar_r zs~*46{l-quqsXF2-T-5K6*OKKZDFpdRY)%_36?lVmPuQ4mig3-kgb@-&$K>|1DSoR z=+1(#H79>bJ9|D%z;i HQ87~>!5U;ZdUK!OuXrf)5+{XFmM zqVQcL@Ss7BQb1Gnqo_E)CalY;uWfNQO<4PT<00+HlLlTYsCU^8??6FWuBZ~tyQj pxWRABGfj**Yy$O` )d~rR zTvlMXyi=Ng3>vYnxII6 - z+sB#RA>D)z(roeVnisGB#tu?HORC8i0w=@d-*T%nhiAUs%fZj$MhebXu?s19tC1;D z)jRKgru_-^FYxP{)S#l6#;E~-)GvU{@hxa+ a|+=zqBS>qErxKY)VFvsN*r&UK2tyV@SfX=9&PivL%IaN8@ln8 z{^yo2Tk_PN?b0~%dL*pM26YPYa{J7eo+oAB#lvJ*Q|Ar|S#4*z^RDoOV!Ha!5*#Y{ z_veP+d3~^7C9f)dI=pb#fXL~*y;JK?>18Gi+^{~A-ft`919&T(g7hTLOGfTLRD8#? z*(I0!8v(6rsoee2lfo9AVq~Q4TOF(_l-y9!s-)mLSD8nO5H5jM8ZPbBNPZ`#0*FSh z4NJA(CTRR1ess-oO~nw8KP(7nqMv#e81!?}`H2y_&-d9v>x}B?4pNEzU}JTSN5H2Z zX^CMk z?JTDj(_}{593O|*<{ytxe6}v3tmH&^k`i6<{=FcBM(josfQHy^-mJqp( zyjw85Gg?#gGjE*}X~x_x9rvM}YBf2SLd1OmId0JcuA5KweRvh`#%F@8%1WY)N4AcB z(>O);k?V2)F`i6gyT&=! Nn!elb_Q zzV!lnAU|v9%2t_VEK;FLv@i56G6yWV0@IzT?8jfh3lOkQo7I<~tn7%&ACP}u02s$X zz4e)1)aC1Sh1<1Co=y)1nBUV{h4;MMUg7cl9FR|qp?kZ(8#OQ;YR_9bWj$hMZ<95s zRL{|E;kogw?Q0btUS9i2P?u_B)o3*0-up+jkjBUr`hK&zn&>2BeSvuTeRAyx|CE$$ z*sO@q_b3TVfwf78Q&IqNyjV3MV{lNoDM{<4%#A`XQ_JtW4M)f%_qa~N&@XvE=6F8N z*Y(gIycw^tXpn^n9t12<^eQ3HDbwE;GW($*S|bwF&@7Kw$XGEmo1Uo(lnh%S_Vk;; ziwrM)&`=HX)dHoP&U?n=OH3k> O7Rhd>a)NB zIM%O(*dPfU?!#vE4^Hh%JSo|O_akC?XuFER)T#6F?mBjZW$uMx=<+XwoT|C>pAS{C z3PQ;N0+=-BvCyMuAEx6KkFG|cnqf%AS0Tl`jR6;TP^D;do?L)^PlBGpes3W(8p^L- z%ZHaTD*9ARbYg`-?Lg}xg8~V#ZeRs{BY{8qkBKaqp(pJKk-#+_LeH2G0-0beT3F-G zH2*BxEbfDqgVX*dh`#!aP3kon-SZM}{H=pBBMHMLtg{yX1Bv824k(W(oK+o+8-;gK zEjE9unWrRnbj|JURxk8 CVA-u7!je+i>5)6-$^7sG0Sn=c&27&lA^Mv{MVAH1lz^+OCgTwJ z+yZfr-AMq4#}0CVA`w&%Th^$2XNTYz<}Zy