From d276d72b0f1b11f7afff5e83c8ca90e4f6468a83 Mon Sep 17 00:00:00 2001 From: Acquent0 <62065813+Acquent0@users.noreply.github.com> Date: Mon, 22 Sep 2025 11:40:12 +0800 Subject: [PATCH 1/6] add llm4ad v1.0 --- .../llm4ad_v1.0/.env.example | 1 + .../llm4ad_v1.0/README.md | 313 +++++++++ .../EoH_settings&logs/EoH_sample_history.zip | Bin 0 -> 4966286 bytes .../EoH_settings&logs/evaluation.py | 193 ++++++ .../EoH_settings&logs/run_eoh.py | 34 + .../EoH_settings&logs/template.py | 33 + .../circle_packing_result.ipynb | 462 +++++++++++++ .../cvrp_construct/run_eoh.py | 35 + .../online_bin_packing_tutorial.ipynb | 630 ++++++++++++++++++ .../online_bin_packing/run_eoh.py | 35 + .../online_bin_packing/run_funsearch.py | 30 + .../_data/rand_function.pkl | Bin 0 -> 11463255 bytes .../_data/rand_function_and_score.pkl | Bin 0 -> 13247323 bytes .../_data/weibull_train.pkl | Bin 0 -> 200496 bytes .../online_bin_packing_fake/fake_eoh.py | 45 ++ .../online_bin_packing_fake/fake_funsearch.py | 43 ++ .../online_bin_packing_fake/fake_hillclimb.py | 41 ++ .../fake_randsample.py | 41 ++ .../online_bin_packing_fake/fake_reevo.py | 49 ++ .../online_bin_packing_local/evaluation.py | 90 +++ .../generate_weibull_instances.py | 36 + .../online_bin_packing_local/run_eoh.py | 34 + .../online_bin_packing_local/template.py | 15 + .../example_questions/pymoo_moead/run_eoh.py | 35 + .../tsp_construct/run_eoh.py | 33 + .../vrptw_construct/run_eoh.py | 33 + .../llm4ad_v1.0/requirements.txt | 19 + 27 files changed, 2280 insertions(+) create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/.env.example create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/README.md create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/circle_packing/EoH_settings&logs/EoH_sample_history.zip create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/circle_packing/EoH_settings&logs/evaluation.py create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/circle_packing/EoH_settings&logs/run_eoh.py create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/circle_packing/EoH_settings&logs/template.py create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/circle_packing/circle_packing_result.ipynb create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/cvrp_construct/run_eoh.py create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/online_bin_packing/online_bin_packing_tutorial.ipynb create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/online_bin_packing/run_eoh.py create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/online_bin_packing/run_funsearch.py create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/online_bin_packing_fake/_data/rand_function.pkl create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/online_bin_packing_fake/_data/rand_function_and_score.pkl create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/online_bin_packing_fake/_data/weibull_train.pkl create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/online_bin_packing_fake/fake_eoh.py create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/online_bin_packing_fake/fake_funsearch.py create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/online_bin_packing_fake/fake_hillclimb.py create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/online_bin_packing_fake/fake_randsample.py create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/online_bin_packing_fake/fake_reevo.py create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/online_bin_packing_local/evaluation.py create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/online_bin_packing_local/generate_weibull_instances.py create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/online_bin_packing_local/run_eoh.py create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/online_bin_packing_local/template.py create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/pymoo_moead/run_eoh.py create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/tsp_construct/run_eoh.py create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/example_questions/vrptw_construct/run_eoh.py create mode 100644 starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/requirements.txt diff --git a/starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/.env.example b/starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/.env.example new file mode 100644 index 00000000..325188c9 --- /dev/null +++ b/starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/.env.example @@ -0,0 +1 @@ +LLM4AD_API_KEY="Your LLM4AD Api key" \ No newline at end of file diff --git a/starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/README.md b/starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/README.md new file mode 100644 index 00000000..b813b64a --- /dev/null +++ b/starter_ai_agents/llm_for_algorithm_design/llm4ad_v1.0/README.md @@ -0,0 +1,313 @@ +
+
+
+## ๐ฅ News
+
++ 2025.6 ๐๐ We're excited to share that **EoH** recently set a **New World Record in Circle Packing Problem**, achieving a score of 2.63594 for 26 circles ! [Results here](https://github.com/Optima-CityU/llm4ad/tree/main/example/circle_packing)
+
++ 2025.6 ๐๐ **LLM4AD** at [**CEC 2025 Tutorial**](https://www.researchgate.net/publication/392654766_CEC_2025_Tutorial_Automated_Algorithm_Design_with_Large_Language_Model) !
+
++ 2025.3 ๐๐ **LLM4AD** at [**EMO 2025 Tutorial**](https://www.researchgate.net/publication/392655029_EMO_2025_Tutorial_Algorithm_Design_Using_Large_Language_Model) !
+
++ 2024.12 ๐๐ **LLM4AD paper Released** [โLLM4AD: A Platform for Algorithm Design with Large Language Model"](https://arxiv.org/pdf/2412.17287) !
+
++ 2024.11 ๐๐ **LLM4AD v1.0 Released** !
+
++ 2024.10 ๐๐ **Survey Paper** [โA Systematic Survey on Large Language Models for Algorithm Designโ](https://arxiv.org/pdf/2410.14716) is online !
+
+## ๐ก Features of our package
+
+| Feature | Support / To be supported |
+| ------------------------------------------------------------ | ------------------------- |
+| **Unified Interfaces** for methods, tasks, LLMs | ๐ฅSupport |
+| **Evaluation acceleration:** multiprocessing evaluation | ๐ฅSupport |
+| **Secure Evaluation:** main process protection, timeout interruption | ๐ฅSupport |
+| **Logs:** local logs, Wandb and Tensorboard support | ๐ฅSupport |
+| **GUI:** methods selection, tasks selection, convergence, best algorithm, ... | ๐ฅSupport |
+| **Resume run** | ๐ฅSupport |
+| Support other programming languages | ๐Coming soon |
+| More search methods | ๐Coming soon |
+| More task examples | ๐Coming soon |
+
+## ๐ Requirements & Installation
+
+> [!Important]
+> The Python version **MUST** be larger or equal to Python 3.9, and less than Python 3.13.
+
+> [!Important]
+> If you are testing machine learning tasks or using GUI, please install gym via `pip install gym`.
+> Please note that the gym version may be conflict with your own Python environment, please refer to gym's docs to obtain appropriate version.
+
+
+- Please refer to [requirements.txt](./requirements.txt)
+
+- Please install `numba` (if you want to use Numba accelerate)
+
+- Please install `tensorboard` (if you want to use a Tensorboard logger)
+
+- Please install `wandb` (if you want to use wandb logger)
+
+- Please install `gym` (if you want to try **GUI**, and **Machine Learning** tasks)
+
+- Please install `pandas` (if you want to try **Science Discovery** tasks)
+
+- Please install all required packages in [requirements.txt](./requirements.txt) (if you want to use GUI)
+
+
+### Install LLM4AD locally
+
+We suggest to install and run LLM4AD in [conda](https://conda.io/projects/conda/en/latest/index.html) env with python>=3.9, <3.13
+
+```bash
+$ cd LLM4AD
+$ pip install .
+```
+
+### Install LLM4AD using PiPy
+
+We suggest to install and run LLM4AD in [conda](https://conda.io/projects/conda/en/latest/index.html) env with python>=3.9, <3.13
+
+```bash
+$ pip install llm4ad
+```
+
+## ๐ป Example Usage
+
+### Quick Start:
+
+> [!Note]
+> Configure your LLM api before running the script. For example:
+>
+> 1) Set `host`: 'api.deepseek.com'
+> 2) Set `key`: 'your api key'
+> 3) Set `model`: 'deepseek-chat'
+
+```python
+from llm4ad.task.optimization.online_bin_packing import OBPEvaluation
+from llm4ad.tools.llm.llm_api_https import HttpsApi
+from llm4ad.method.eoh import EoH, EoHProfiler
+
+if __name__ == '__main__':
+ llm = HttpsApi(
+ host='xxx', # your host endpoint, e.g., api.openai.com, api.deepseek.com
+ key='sk-xxx', # your key, e.g., sk-xxxxxxxxxx
+ model='xxx', # your llm, e.g., gpt-3.5-turbo, deepseek-chat
+ timeout=20
+ )
+ task = OBPEvaluation()
+ method = EoH(
+ llm=llm,
+ profiler=EoHProfiler(log_dir='logs/eoh', log_style='simple'),
+ evaluation=task,
+ max_sample_nums=20,
+ max_generations=10,
+ pop_size=4,
+ num_samplers=1,
+ num_evaluators=1,
+ debug_mode=False
+ )
+ method.run()
+```
+
+### More Examples:
+
++ [Constructive Heuristics for TSP](https://github.com/Optima-CityU/LLM4AD/blob/main/example/tsp_construct/run_eoh.py)
++ [Constructive Heuristics for VRPTW](https://github.com/Optima-CityU/LLM4AD/blob/main/example/vrptw_construct/run_eoh.py)
++ ...
+
+Check [Documents](https://llm4ad-doc.readthedocs.io/en/latest/index.html) for more tasks and examples
+
+### GUI usage:
+
+> [!Important]
+> Install all required packages in [requirements.txt](./requirements.txt) for GUI usage.
+
+```shell
+$ cd GUI
+$ python run_gui.py
+```
+
+Check [GUI Introduction](https://llm4ad-doc.readthedocs.io/en/latest/getting_started/gui.html) for more information
+
+
+
+## ๐ฆ LLM4AD Search Methods
+
+| Methods | Paper title |
+| --------------------------------- | ------------------------------------------------------------ |
+| **EoH** | [Evolution of Heuristics: Towards Efficient Automatic Algorithm Design Using Large Language Model](https://openreview.net/pdf?id=BwAkaxqiLB) (ICML 2024)
+
+5. Contact us through email fliu36-c@my.cityu.edu.hk
+
+6. Submit an [issue](https://github.com/Optima-CityU/LLM4AD)
+
+## Contributors
+
+Any new ideas, features, and improvements are welcomed!
+
+You can contribute to LLM4AD follow our ๐ [Contribution Guide](https://github.com/Optima-CityU/llm4ad/tree/main/assets/contribution.md).
+
+Thank you for contributing to LLM4AD and welcome to being part of the LLM4AD community! :sparkles:
+
+Fei Liu |
+![]() Kai Li + |
+ Rui Sun |
+ Julian XIE + |
+ Shunyu Yao + |
+ Rui Zhang + |
+ Weiwei Sun + |
+ Zhi Zheng + |
+
sQlOeMk6$MKCIu>@|H>t#pzsiYd+^od0VM0?fk3u@JW zW@1*En03?bk{%fi$AuO($UH6{3?fhVeh}t@2q!VL+bxCeg}<)Sp)p;qFx47n6Lj@( zLVCz9(CrNJ{KsU1`SNTImsc~CL}ZHcpfehtKwZ=q>i$`k&{$xNnM z^ROE|h5qy{`L!V0_3yyq45>jsprEh@q5x} y60~QQlfNg9P7p%cRsA@!x$xJs(i_{qaq=uF>YO z)Xi1_&YoXj7#Tid0i$vQ&GH7aCKWA|3l=$LyW~4{+*Gt3uB1;B}!q*a}`Fth&F1Y z(OW2?W2v+6Sj_XMG#4!O(8J5lAS* zxan%rIWBSi;I) l%H|25Ba%OT4n?4Gh~dhfh>3I=iD}2>q~jZ*ZCE;sAEexn zQ&nu$a3!P`h)fDNL|197vPM$?Ao;Iv$q%;YaClUbQh6%zTx^nYxBHxs ?J!CC zO4~$d>WU$XBu7)I@^D0sC7c>reX`+8QnP^f^G!dWcYbNGyO}$hF ziyZ-Jqn71vl-9iG%>cDBq)YU47N$$C{Vn>IyXm>8-MUH7H7SCiJI!R4kQ}K6jBm=R z*+S6&F3VT3_)9q^l(U)C$nYO?a 0L_L|>h=|5~{?VKYhAd>V4fGf)MTj#gVkDAa0w%ZfBxC}iGgayk9W z<~Y(+K#l(XND*8;ty7M(0xF@6LdvQr!m2L9sw+Zm>c4GPimJucCg+Yip9(tCAq8Q( z+rs~pjvU|UnNi+=%pFy&blu&-!r(`LfqSh 4+SyO-HfmSPgADMfq2YqpT(d zosK1TVu3O?!itfeW~mWGlo{sHhs?MGj5jn2<-c0%&evky8SP@-$%aiMyM=W~+m3~E zETexA3r<6l&FwS>UC(OmG_9TH>$B4=1D7orb)VH>gWFb${OIF$$$9rR*>1+;v+?NS z?djXe+tU-PIV^j-H!OS4=738ahY_^q*j@(1_@t6k98`>3P(eb??W~B?R(2RO-0O=T z?Qof!hnAp5FA*NC>=^phPfL#2?J{8QK&UT}Q0t;bpzW{Jv)8_z5MWBMh>Xb{=BFSz zFK}#+Yw5_LOQF;_DWbU*4o;UjWS;NZE ;ATyYE9u-R>hYKC_?n>9kNlF=7FSf~4&&08UovztZWGbtx`V~Ng zUqpo*sCet8KZ6PGeCk{wh&cihy%fXnVg;yz&eT4`eAGVQeC3#OqIdC!3TfTgE@w?@ z@uWqLGc?H; F zv&>^iqN&C8$w;ah{|{)!T&mu4`N{me9-!mY yssjJ3mWz)*;G?WB$Z@4 zm1LhiixYj5M%heUQrqunD`U5!H~;V(88woI>?m!>^X*oUL+n`8jI5^8h%}T)WUEvn zue`Co)a@OK@%P)(DXNkKYt*ZB$bB`tI!`dNPhO*u{QzerEA;S8h;f~BXB)YC;L%Rn z-IaEC @%yXM;Y1{>Y zn`eC1&5U+4;{`V}P+vlSeyHtt)04w*ZKMUwnC~*_60bDNwckLSH_*7cFYEWn#y$2J zGk8;9`?U}#C4Kov@Uj>m+{=Q4_qQeNUULrBOe-}5j7cvu1(ca;4*NN8**-p}zB|Ov ziQsPk79vmH>S$i6`s2R`@kM!I2aE=@k~|;Q{sZIevT~!Kp#wQm$P+-X*p=c5p!;-h z(ESs-1(1Iv&?wG&PAf6?t_~7jaBK6jnWKsufp-rHz4v#CP{4cU6p^F&zuW65g5ovz zk)or7s8);NTMYkIVECd?*pA_Ojx0lq We|d0!NEFMLiJ4p;$TYM2U8x$E0r}}vD*o8w2_TMJHa~~$ zcf1QG%STNktYMv-&8k{+cfT|QvRA|+F{2LG5Up8R-QbI8Tm{p2+}G1~;~MST5tWzW znjie`$ZXv$tPerAbnMXWu-(R6MqvM~DPpwHw+Q$d5b#bA_N4cvod&qDMrY&EWODZQ z!a6@|j%CkYEY@yzj^ot_-PO9j4ZAD;S`6EU-EG6}KK+RH&voMO^Tyw`M%x4MT76Ox zh4-1zq5jk!(*7z#@Se0Gc(()E@&1j}9_Y^g+5_FM%@X+s47@u!JDb2C{4;)gezF5x zJKr0w+2oFH>{||5ZbRm#CPY4ga8rzOZPozTFnBFPJY+`>{)6Fd3ybm-Bj?&=MS-6< zAt~IE=&p2bdSE{yV7X_=GuOTYLL&!J1mD&ZEZZ%HYBAJy43!OUnU*W`@ci7qy88Sx zVX18p2>KR3!oWpT<51>xvJ=pF^kICQK0=mm2Al$~l#3j5Vrh~HS{fU7O7ifn_`T0F zYZYPcCf6Pd`aUPAv`b-e=CqX0>ADOQ-$9iP;&&cW`;-0}OYhwCP>1}uFC%}(n7gEx zRzgpXIt bm=scb!PHz^do!r5ku?~1Wvr=)-Zf8`@f zN;59;poy%}pZT;Fd>SF|(bS}Z0Z8k~Tz#TFXyJ$pw927D#RpAyd%dW-;IjQs#hl9< zw6wB_l(-B8^LsqU{Q$$YpVID@C-VTu2{07Ow#W(OOIZblwCrq}G=j!624iT(RBX(9 zL{Ap-6k!QBE0Lj%0a%F~-;jO4iF^mrJ_z}XBmUwYvG7GwOp&N53QViD#c@tg_3uR< zKiDjMWD%|Av2mQ|&FmiA>t2uId})fZ9P(7*)xF_cQL7gX1jJKiUbIIdUUch1IES*K zsvw5mP$;{y95R@5w>%1ECgX6YYJ~QXuN&!F*2zYBU!TQ&&>(K3X*$pP=E ucRAVLjdYhZz6;#xn~y(z{J#%xgr*tzSOzLl zAPwILefM|S5@s<3RUK~h7WuGEW4!iFyBzw)+5Wp%937ySUj5!n0b`YC0In= f)t!Ozdn5x|h@bpR*K}AR-67yx1Ma2^%cW&bg#wG?d^f2{^<<>}6=L^dd+dkV zIfce}ou{rzBS&EYtn*LJET)`5JvuHUW6bnfoN+H+%z){##e#-%gPuO5_q?DijOlFx zpvI12I4 hIR*`7Byo z@fE Vx{h9yt|2S !mlQXa zId$o5NF)8Gm{z}U_4^9_{$&hc>a1<1fg=&_Z&GIwQ;j{{Zk4&KlhZoNj30G|t}K0x zwab|1wVAvOwyX*lBIyfgp-HK#WZm5Lby=Lo1(VZzec1>~7APtGGqGQP%&>r?6oD>) zk=ccF+~5M!FZ9~d a6;HwephEjA|(8vMWSuuh#s#S!q1v alBIYotZdN8 zF5n0B;nfEsF(2V-5>2!{$JHXMuQ?V;CO6ukBnJ#IT48nJ(#0TH_qnVSS?ZJzef4^y z;n@>Teoa2($**+C7gq#aMwlyk(lfa-%aa0@8sZrg;uxglYl9gy3u4ePc)|9d1^a4t zb kMDz%HGfkR@pr~B2&W@Go0GyLmY+P{_ydi#yBy%of}ET9V%xR+kNz( zQvuFBr!-NkC(CZHaRAZB$o3cNIg$J9jE38yKFiAH9)9VcV{uo?2^pj=iiIr4 KZoKB${iC&GwPz~!K)es(I`&UEKsp~q^hX2Dxh&>~?F>T~OBsCd|L*>^N z20aH1Dgc|}kQ$rf5fl>LY= M*?^|L-6S{D2AU zhw6h280X@t7#Q(X$)O>zMc{eCqwr44jtu1?M7Zjec>${~VGXXuY5`jd*qQ@2-T6xn z=&EGH)JHN+@8FAP26^T=Y=U}xV2jk~>-}k#rpA%+X?mjJ00GWw4=0EuSECzk_Za`_ zsLP$rqaWeM^hi vMQ-d>u zl|=ybyU=dRlYs;b?$|bxfgT_C_~opIY}pQd2Bz`&&<)?E )aE$$?(j*`xylIM^i$?98G!D-fl!HT&dwFz2pH(k`IA-n zim<*3>uiy8|1KYYb&eBxO=tMCCS^KWGq&o6EL*6V>fI4|8r>6t`36qJSWa)rE)J~< z7bBH;&2-;hMoGY_8$s8;CVeX8)z`h{RM>I)8MGpO!`usk)lR3_zD<{|3WY6C`4FHy zlc}qHHn;8eg!EP%nFD%5@ep0%Z{7nl@dn0HVGD>YK)$D!zl%g%&+w?<5s#?nj|`*p z0g<^lPKU*$k5?ks&91^J-J;_4hOSEKHI`2~0V$yL7s{hm{BD*}rBg8Iz$xp{FMRFc zhR(z|<-R5VYgVJL{hILi20y|b1_M8ArB2fEXNB$$)G5XCB!jKNDs#jSG6&EUj~vng zVzrxhdPfva>Q%5V+UID>Ih6 2TGiO0 0lHl&8dqtvZVzq<|30QWnTX3Nt wosPg9udCWrOOkv3`!jiKf<>%;oES=u-# zi(|-m>>vN#LQXmHpOf!F4>ieWmGdQA^NIdG+POT@=SS7$UHi>KW9)C;E(X>pcLqk< zz=-dK?oT6Tpi$EFxm#6^Rb5U}Urw^6oN^=v^vzn*3|ku{@{tg ~d%_&;v +rCPph~)Un-F=$(=J~mGdUAF?o}6A>jK>$vk ==NH6Dz5tzb1Mj(Xa?-JZgu&;4+pJN>@&)CwM?5{zU02D^j{| z3TV+M!mKF5N<3n`LCM1cmB~5vf=BL74|=@kw$P`AKA$`Ao?P9w-Z)h>0*M#^7kzHg zo{D~~1~aDkXeAJn={PEWNoTJNc9sH_be8h4zS cZ-wI0Fa iJ>7VCy%bP0pOPR@Y$Z{} zOJF;x=>7V~%SBv7N|cwxRiT0DsYv7%MRB=@=PuHNqb*U2?JzSqmj+i|j8VWBC3=1V zQ)s$ ltW58m$2AOIZ8cg%7 zUp_*onW+@2z% QnjTN;fZDBpkAP6{i za~dvv2sdb946ZD~GN)D{(W=ZU$fZ?uvNSSVtK?z&Ut-WJu#NjrRK^yxT-`)kN;g@n zqKc~Ms(je|g25Fz`d+Ld5CBsbsq=SPdyB}d$lFC4gG(+o%U;DO71fifE+R~g_Av_I z0xw>#2wOiM6K~xaxQER$tng#>M)mxsx%s>On?$Y4!3t vh9^*dL8ie;f{?5pqYY!?*J{T&HuQ0^+T8u}ESl z!bD0T*9#E~9it>dtU>VDsS1c_vOHyG&EjL#h=KS=@~lQcTr44PBWbe|NuH8{sSkqa zQLgt(d W;uu %{oW zM~$IQ(JC$4J;I+z1cj9Ndpkt3t1Z$!njhNzh2K*Ezmh2$I84(Zc%u|l?=}M9pUDOS zxXjY^Zh`;UR>K4Sod&CBN18XyV+r>coefYJ4*Ov=97O#H)j(LIoe>rZ&X?Y%$&@7T zDGA_01NY@2`z*o!Xk->Sj0 `4z$84x8fm8^r``(B`b}}69W>G(?YFO3JBz=9D&H)0 z(f!ly?JQ}~HnH39IszeC@r=t{Ic)2f!ZsR8J|sM{A@wS){Yr4`SNkS%xzM$={7ruh zy87IagBY4zHi1Si4_p{nlxEgR{EcEYp5To&o?u|nl?(EaD$f>7(1H)h=9W9>l){1< zkbo-f^ Ug@q9o`0OiK}{0PU<*Ef$Cqf zbps<7fRbCMH#5%ts1;yKg5{HWvnk1CuOz;Sx%FLySBCnzr)Rpjy m%tUyb;K!viLy+q0uIeQmRvzfc{KRyV(GFyHHj$wk=O5CfN z6%bSf`&L;E-4drAklY$`(81j!b+n0k`Ls?9rhynHOdhBiU={T6TE5rvzc(givWn+7 zGp5>jW`r{%H56@qiP}ZSF43$-6}G5d-^P;-akYo{OX7tV+A-)zp(ld_E97?DNwwrH z7JW+$!`eakj*_nm+eff*wX~j;kgZ_lA2$(f6q2`!Osg$w9%-ojqUKgLl*rTsswJP> zJ|AEszFd@05It4b4qDn^zFbrRkJ}fS6|qn!`Tb6>=^TXcHrt2fdc+~L<9$Rb)Zf&J zji}7|Bdk=^qUkMrpo8u{YS9MO*WNYWf=JoQxhD*xXfWuaQ5T{9c+~Cpd(P^76dpl_ zS+`(*1^cIBl!BsuE<^g-iDR{6dY?De1BJk+0`mD_4;S10Z#l@8>Z!Pu=@eVJEb-gb zy|&(YJ$aHUz?3^SWXWSK0$%CBUst1O*OqN4sswMLMSgE>p>=FoSPzwebr05Bk!{9p z(+S>gEB|@Bts}DA$`y9L&0%e5#o~bM%XAC2F=-9qiCgLPI^j?5pzxRsyP~MuLs54a zqHZ+k4cyTndOb9l=XHg=X%O5pS-X)vB5EGBx?-tar%YdB=*r+_qr`;Qa>?H>ms5HF zC(SJYQ3XHdnPh3`2p{F$V>zGJ^&LXE8f1^UG?nMYs-k)Z1r3k+w7iv53w=elyebQ; zTGN9m@;d;S>YIAVIwJZ0Rjg8ylNTmzwM82jE#kHGxxyq3V?#v~4pD_EMr;)cx6~h* zEQ+wEEX_G(Z(xBnCGD)ps8zF_j(LCskCcpJ->rv>Y4@oIkfh0bJZPsE4#vabpgZo5 z!|u>MF>w^VsU_QP8LV)BrSn2&$~HvIn`I_DwdG<;BdCx@@@SdDv@K7Stm7tzuk;`W zP>&5L;y^>hO5=mf?bUMT0gwkkyQR5$Q` 1`83FXej>F5JH)WWzoMHY49U`vRaCW3_ALgXd61`+GW-&R5ZQp2F=RA zgC4ht_ZGyei<-uANH5nlm&? O%EKdziZMA9UM`Hz zB_9KFJTFPHnfEz_GBD5tRztytkaJ4g00v=J7^&y+VH*$MkG9F=!$nAgj~^N2z24@z zcyO;Lcp-r%Ck;KFkNgo>53_3jfV6FSA|E*=5KGTv%j&}#N3|3LrgB^zwFxpLGdUy* z|5VuO=f)Fo;jz=TS 9vpi>)no(<8ry31x z5h=}WBAAW(2=#ltD2hhmcr+fm1C#EX0uur?AeqMcYrLAPYzwR_>=8T_`BymT+pwf5 z%L#5yXR^Foq|9h#P9ekEG054&scx0w-ReE`@D4XV^jMkM+$UwpQc_jYBG1VTFHM`Y z*cEx0ZzUVOP{5RY>QbI{Nkt=34DP^CK JW9;jQBBJu^A |U^x@n zI!r_nTc>yPrQyWTMu#}UAWr*Cl35;dEY%~7DYk2CJdd!#yt$7t4qBzqhXf=k{7_Ch zt#x0foH3#!1kQ-z%jJ2Du$FwsLxr!gxJ@$IBtC_aM_9*7?iAMuW6ZMU3{Q<~ykyK+ zY~jZgG=gq$ns1POE*kgV2GnV#Qj2bTOjBk{r?kDwcY{u_FoZxefe~_>0w{J~56Lpf z!zQ>eX^N7oU(`T_8hEWT)ToUOxdKBUrRXW&5LEp9cgezjc(kaL5Uc9-1TXR%g84&w zuiQE?tgsI3ad^niL(Mc#Wc9()BA?+J`Yf!$@B}a?C`}Ta2NyDHqEk3n7r80|P)+B0 z# in+XUqZT|4ZF48C8J zs7`4et~b6Kkb3FzJweU~5`lhvKo*qXq+EXFbTVO+UUBg9iJc~}Z=*%YyvGkK&ezJ* z12XEjIWiz4e2e%YHk@HOfD;(=Jp>uq$uRU-4jY2kJ#8p^V4&(irH?%DnL~f)Glw|1 zPhR3X=s+3*8G{ 0Q9e1yMcAGpo^YWZ|`&vypM^Onrw7qUrs= Twh5pFfa50B)af~Ks@Fi2iNhkuC-cVR?ia5szgnbCO##|x{dELvezre+?LaH|Z> zBs1%Uh)UR&;ty7Ut)I1Rl<%UZbj9= ?_CJ zUKn MjhN4enVbvy8k-P*!^>0TRPGu000e-FTj?Hc}k8`g^~e M~!)p*kdBV7o(vePRnQ&2gwjPGOxN;_~V6~Xe!b5T3z zN+4H`_I4}85L)3AM|-DGD2K8_bvTnMiNKnyqQkHx<#dQL{ |As z66}!&sqfxpWiK_BL0!VOi%22hmU|S9;9wlfYmzIk!m12+#!;V^>3R(T9Mknf4x$um z&YV(Ffz{fOZ9dQJy1a|YgVTv23Sb@kOD#wsvwJK=0(8hAWsMv!V#fb*`4oo9_&E!1 zXVj%mPoM82#(U`Yt=VCkXSfN*xtT jEaOe% zpXuWEpUtA1G=JPr;-$5Q>m9 ykUkU!NJPWk=s8cIhRl>ThkkCb?b60cs* z6Hvvt=qv;);>R<*$w}z;L_tim ~7TJP^*x; a%Y6hI zPo-AjKf}UTivPNy1IJkp|JnG=?i)scQSbYd0OWT7FclpRO!amLQ-;jQ&7f6=igo}J zdwiHX>?&sI=yZJ^HlJPK`^zryXR=u>AMpma4kjxY?S)l-dz>aMGe?zXZHy2ak9*yy z8;)w&pN?HY+JD!H?sleXYh=Cv$w>89gYTJBt^s1ptU5mg(`*rArG>GO26WZ7`H>lY z$nduEg>a|dbIgOH`krHl^ckyyDEMQo>${aP!-br)X%I0d`9_*fUyQ*%#O4PTO1#VT z+pL>F?(XhoE#7{!a~Zp-xtSH(@)CT6sOd0XGxASEqw?i=`cmeBRwznJigsXq)UYv3 zUkpxbzpJa^QZ~vry5d$6cJgP)^(LD`3{us g1(4GzAVr z>WAP@yw}i4V`!N?XrM`QcS-D)trAizp^{2^vp!L6Be(&@V6$X;KuPON2Bj7YRHcEY zdX7e?k`LKa2~DiFM>e=t^PcGD*y!qb&Q9bu8&Q?g>^+{S2)V-7jBFO;F*&s(hIX?I zD~nh=r#j-(oM?Hg 4pd4Z}8|}r>9i4+Jd~1sE)TJZzL30lfF64 z=^L=-T&C;9!r{c3XK*}N@eGb =_-t(_gw3=Sm~DdqSM z;F^LC4qdOO$!rssGhJrNti<)o(WC8 zhRoQ(N2!uo6?=ia &q8BF7W?W zUz{R~!U*_c3oHts>C4UpuOMp44)UdnrlqBvNLn`792itFtW4yoX`K8;;CA|dVpeP8 z0YX@aUZ72B@fNWM(!UK;l+-rorDq~K=cJJ3erCR}{#9UtRqb6ZOcrOdEU^a2XD%o5 z0-i_aEEAM*L0P#VWEW&QU16 kuj&UpXx@@6?x`B@D0AlVEv!zKY^R9HVvZ*P+oBOwxux`-p1nw#AY z$BQg3p*r_N-4;(1@D<$oH$=x<*I;UYAt$p6R|_w}juU1nG{n2w`BR2(hp5%2dNof= zDtMY!4z!~7=&uzEp^STXjV0<71(ecBDqD--(55RxT~^O~+eyFo&e2LE=e1bcZ#j60 zX)c<=wep{LrSnwmH%i6In)*SwSVPQ{pw$YZ;~`}G-N9fG4aWUpZx|wX-@0zMj&EHY zJl<#Pbg~u-gqoD?ZWTYL8?xNQvpoA6UVAo6qQNpGKy$hf4Z13gTU*Qf5EH*7c52Vl zwBwFT=fc4+$8^Q45b($pIswi`AW2 hM+kSST?|#?O}MsK^XP#iG#_vjbC`_{%DRBR@WyVS>|J@Gq{` zM4`B*G%GLE7Ug*}OCgPpX!5hiVng_Y&u-J%tfA*;;(#N~r>l-gQd}ZsY%&}Ii-xwz zwM@CDSC+N1l&C~`*;8FP%H+~nRcW|$L0d PFl7u%UVVY=C+CrfVHQ=OS7$A$+UiS%Z%qhf V7l)v!L zg_HHmMG0n&EUECgX) -R_f0mh>vcPQH1dz!(| zvRNB&ber@xO{P|tPJst+gHJpa;b)SH@NXF*g37E}4%7S D0g z{!DYe^n;eESDmv!TDlvrXz{G#0dkJH8nX3Vm*LsaknB>t FeJvsSkmv z6eqh_GIYWtM59$q0*R3N$q@VAIQKh;tKs1SD0L4PK bza(pxO!PP0@4K jc2(=R91t&Sa8l}dy733SLb7b$ZQ5De2uV7)&gZh6dR!$iL!--n&UX_ z#)%Tymo~Hj-!2y}XDqv)=lByE^2@u2?W3e3EmDv2>5WE%0R|P(XwZ$qzB{%U9@xGT zYi7wQILI(s159AkWW7yn7UG>J{O}kUWv$U?3b(k8)74i B1`YZ?chc+^qt%<(@8>LWE)WD4C@Bxzs0k4 zVnHOZX-gv~mM!OQuH0!7%6fvdi!E&2q}u3eTi(Yx-tU%_4<%*xM)XvPD_-&R&O4!Z zEbIx<#sqa^Xyo3AlpgALquzKt9)yG5uuh_h(c3X8E(nJ|L~;@13oYs1%@X%dOmNUT znbCuQeR_>4IV!NI*^(|&9;$e#;^~qjf+z<|;CDEP!gHRUn-w6ut)BHoX};_Uqce!y zr(_NcUKxi}WPsp54^YVO005=G6+kJmKl>s0RNQFIMUzb|g&Wd;B#1e1f;@YS)*jrk z4b*91Atwk=ywd=c$cacMno}&RMP`aYoGPyl4vNGq3R Uw=90?2E$vBsEZd zrXpMP^*79DVC);ZdT)toLHk*o6s`|O*!jT*JNce+9#9?o5#nw^j}bGrHPz-vSe-dV z&E~}i{#VmxSjgn<6=7RoF&GvecNCGM$!mX{ZdnG7F5*X2W&!WsGYhVlPkkfS`cQ?n z#QfD(0jN~55*!RumVm#!S(R%*@C|{$&s5(wYT6ah4|Rwk3E%h%{#qROb(EC$!B2*T z>zMqwhQo2UKOFYDqh2_62ZX)wAoSxdh)@k+QI&VWlB@0>Uj}IcqUkQ{IjW>BF@@Ox z(It89{ oY?(*GOhlct6O7!FWj*>+cYlpquWF{;s1aG`)W~5emTSeR&0>%FvZJ)wb+nzy zgc5hN(p1{2x>uQ0dt8}Jdt57twz)sj8IgP_J*T(ALx4b*z96WPc`}wKtrN^PRTxQ# zbYc}704l%Bf%ASqf8y;+TPB!K728v0^K6y+HG6Dk>@MZDyo?*Q9&eoQL%KOU{wgSK z%XB<7L&>x!CjWj=H3F^4 S*jq=FhA%K;jLq&a$k2UZ#Ub{W8>k@*o0IPBOgx z#tjnOPae1lKN!0PY}FYxJ+bG#j7x72%lT*nc&_?X8`MR@RG-*25lvupZ)iJP2!u|< zim}0-_?y1=vV~b0AC6_WW->sj&rlde=JK- F{7xdfH-72xkSKO90k>+0}AUKDU ULYaCn zu7%;-RnkiOtt4qhNexq3{Fc6x3!dhUrcBe735fz|egD0Z7%l_wGM B9oP~vuH~ug8f?e+GX(GHA%HxQd0%RNf z_N@l(EOq%bCoT%SD2t;AI}|i}Y$&nQPir3NWrSZxtQoi9pF+;`AuczJX~M5__>cax znNbTDd@+)CacvLq$}+MhAY;K^PzoG}m$8{eOqMCDKC)LIRaH*`ZF%*qj9z^;>?(8w zNwgk$!?41Wl-z$e+nbl;H)mtoDMamVR^pXdN$uh3W@r(;Q%Ww^I?6x1qRM@zq>*s% zjk$|Cnux6Xog&HWHv2|e3x+lSJ{yCAl>4Kv_N!&xW|}7n$OQ jUJtX%L0k@r8hkK-D zLD7ikghJ(J`oxO9gL$Rx$GBp4BOg$Ma{`xtJr!3z!?@*NhUc)@*6BwnI4TH^RKZb& zVEcHx0nP|VA6E|-Z#Rf7;skv}7Ow=lmv=+=^4k(CTDcnNM>abFGFIzs2)g4^bDnWV z|DA}ht&6MVl%g?*&v|l00e(rpf7R~v`d3Mmbfc(-)v|MVe$kppSxJ~+U(wNg!8SRc z+-%ZooaSZ|DcGhtRgtLMYlcBtHcf>uDO5khx+z0Yi)=Pgtdk<4TOm95@Jl*;bVBcd zcmv`MA%E|emb3;NscGk{iqpG{lGlsU`_n_!-bux-P_0F0=qk4IZrn r2b9qFQ7 zYPQ);KUak=u?Uw9`VqfWP(bLnn`;yq??~;G!RHlKmm1*0WtEs~67w>Nxgs&QNJO ~$> zU&}e@4m@b-Yev@}ytWS3Slgo{tm`@1uz3Iweo|&nksiPXJ;XUvHq#NKc_7gm%p-rb z7?9OlkhpMTP&yuG!;I$knqrJW>?i43(=wqCh=bh#jq=&x3EVO1q#2AJu(CpaGXkC# z;JgOG+(YKGFO!2QRv4~Tr%U|WKGQ-$uMB#nhhE7BG%NZ)fBQFHZ4RtlT419ZmMC-J z!3$VD;qIfuXiH^L$LiGcs!%k(w?F(kT0himB%lCcKD1j=a35wuqLTi^&G#6hranCum#B_fB)` zo^03_37xeeSx>p>bNP4E)T$=Aa$D|y8~){Xvbn#V M^@>yc{igBlWU! z=TxR(+<43Ps(+J? yA3Lr@TlvYZ%C6aL@4Ip5^5#rBJ7Z2)jQ00IPdeTc6%Q zrfNu3?U$$ep(H#lf7o+O8ZewJT@XRzL0LWs_LEaGg=o+VTsbexKP_j+8EGKVQBH1~ zk|gCEH6 s!B<4;4NA6W#u3uX3{r1t<(4IpDv5 zG1q9C&Q3%JLfm)XjQOQU@Snzm;d;JgA!lc>p@}d_F0Rq=ANR&1Lm;G9QPra_7Sr4Y zv|w9i9U>9gbT^tJOMB@h^0W@KDC|=gaidZCAZ14Zvn`2EX3x{9Kk)CqWlUV9d5Jo$ zlI@rR@Krik4!`iwvnsbsVR8Zi#lSYwhU$#nRu@b=Yo$Czq{k4e;egnsXyeJl55h@6 zI0*=`Z*`6g-hq8-lFn>QA&rmzU>3hblI#jB-)Tye2t0___zt{mWuxc8ly#wZdaDWx zkTf6h?vN5atyB8-Vis}1n=bq3GAZa2aNi7cumL(Vgg|a8cwg2#Zt3viy0N^tKhu$2 z%di=G%qD@s2cDe$sr>u_#gOi;;jM>zQ{=Hq$dqX+U)Z0KdOf;79 r^0X1Q0bMO*qD+81Z&Vm8V@r8@55#|z7Y6 C8T~L!oB>Ql?4!K>66z2$ zIU3~+L4r3#s5^l&Bw(Uo-g 7;+<=LO xK{dGcTM|pl;uBb^bchwPlw1a{J*^4%O~6_5^WJfm96nxPV-HwE4`A9E zVbl^AK$Z3hpz7U%s;BvgGP55NUBPywOd=K*dQ3p8opi7I-Bu^=UG=(g-y3Kptz&fB z6O=F1Ur&ZPRi&&p=~7sbmvG_304!behO^~|!X %W$cE~` zHgr7dVLcd!wuN%2@Y*;ICX3$7VEPDsf#1bbM)pjarCd)X?u7(V2^vJch!8&b=V|Kl z{fke@bZOLb^=l=ypb|_<(gw}bv z;|RPgQ~jGP-o@Y5M{+vuN)k8q6A=I55x>`f*el6s=c?1~b~^p&s?&;F{zUdk^k(M5 zdSPcWV4hX4X+q3Dms5XC_~c;>O4M*Cfa*;3hoUCDL7u6^`OpO2wrJ`_(!!{vk;9mB zfbdMuo*>{p0NMa(w*|Cr0#Y{M)E63zg-3~c{Xwr-s!GwWNmyFs=4hArWm<76P|b>! zRb5gK31uY<2HW-Ov(g2FVKJ*f$+mho^DzZ# Q(qSKv=XQwu4);S}5s8O-)U zI74l0 %JVZ%DaUYitXV8DQ01q`AWDY znZBX!dLIitK{g3k112C*qqW9TF6i}@V-z$axP#pbMzC~tLccX^&8i+B_}SOlkZ2T8 zJO6r1g<1%3h~BOQHjvC7i;K~GeIjoDcn+Ea%)j|`s$M2K0N(SP${Q*96y-*Cxh*Q! zGFaCT7Y0~U&H?fSmxvzN5%r^AGP; n 4nvW|TAYtPmDXYM?w0apVpS0spQm^oad|p78 zDz1;KZ1ObEMg>L@BG&Hs$oO9!mMieK461ri)sIe9Hz#Jbu1@X{Hw2|!QQBj}FY SqK%zd$%B7|B;7};{bTmf^17_{#ZYeli%shTdR zA};4@MDP5X;sqmHXT=^8n$NbuYF&pRr49GJW|SH1Q0#!}wdg6x3*nucTXk}z^*-H8 zDLKD>^$gwJRgE9%D`{%4E{&RHDTXeEA+>uY1$&4-u|P$=ZCNWX*6XKntKCFwBB$yQ ztfgt|q9R{Ww)d`Y?$rT^K_`DLot%)DtC#8SUdsL;i#M4RCksU5ICcKRsqgh1q>{JO z-0dDxx(3fHS2&Zs8{}xc%hpwgZN%_Eku=jgUgls8r|OBn+Ram zuy|jsG8lUsD21!KAYZ`|+GvIbd)PgeBAT98UJP+n@4v9BM;5gQvV3LA4up69lDiQ? zT2by+^6*AHi*)znuS$6vxMsZA(l`9$HEM5ZG~xn3K~yevvsWKqj38 ZQUH9F(yrmX+1>fz;Y+$1Oel{e_%rcD&oC8e6w;I< z7UIikIf1Bh*VOES)Y1q`GK+f}rC2+D0vb8XnZueNOE4AsYpTRrjUF(1CB{im1Z6lS zZaOGB9Q-n9yU+r>^t1wYpUx1K6%He|Ka6+_B9PzpxokUWctqDQCIQb6(` d*%Ac(iySQfW81GRu *x&N=zB er;Zcp(||GtGx4 c*ws+B%h1*7RnL@m zj>7wgYF3`k=X^@*s4r=JG%4R$=a-x@b&Mk>WU-}*&2P7`{t8nW4XS6M_AJo<7XBuu zfS>3Utk2xPPV9g2$`9yQta2mvDn<4nSl77%k&Y(mY7aaDxQ woL 5yX%@qem18Q<1d^@pvoGh}CY&6+hTL7DnK^_QqYD9c>p zAJ$}aZFJ9>dOHyZwc2H5V DJ&6M}>32%!X;|=I* zD(q<%+8&+>75=Na4=GYqDaB`_KUn+dm3GMOcgo~dykC27XG3?V!!sGqHS mXIxr9})rp0MccjeyYjGxPxGrpC{?{5dl$ zewNZ?Pyc{obZxiyZO|Dfb20Apwgegl1q}+8die;akjdrA *ICiy_vZH$YIbE@-_(_H;$hxI~k5#*F(j+cTZ zufmXjSP-{S9_@kgByKF_a=jdN&AXdb=$4}m)g(u`{sJxLvZZPNus$X!{G+(f@w}vK zVFvPY%$5RE&uvo~Z&33ZdgPP}aFohPsoY-5eBD18DgoCBs5YRNrq@6rWq;98MQjA@ zv|N8}tbFl}(YM8g6kb$~m&CjL2K3FY&5B0WCemqk&_}1DtKV^Np0VDnd%M}y{~-~> zg4O44R>v=Pys=`vDrePkUNhlB?K~&7aO8p4iv8opJskXGV ZLr_|=8tE6~X>hW5B@eeJR;%E` z)N-vU=w~rs@c5(=F1LiO+evo+1&btgfGO%JTP_LZe!xKi2L;~D@7lIhBcJ$`EMeZb zr0-#2@-Pn-Q?teBtRz9(D^k2@oyFT(*i@}2lOaJ^X@am)1JCj21^bh1pvB#_I5x xH%tzccNvIz7*(kgZJdKl^2X)x{hM4>YmuE8?1?6vFYL5)#@R@Ik-_AqCd^^*Adm zcf0$XSrI`J9LBzLhq0uN!x&a>+d4?F+*~wob$0h0gS{AUU87G!vRj_)%YAG+xix&q zlHH#@xQ>ZWa2-1~*Rj|380#LD$5^WyB~dqtyS;X&-|6|osOT7@ddf^62j{{3 DoreH?GISiMUef#jz>szo6v)C+wC+NmDQ2U=t&ZldMed6~!I3 z?-6;TZPBL#^&E-r{z{$j){L1xF VSlXLF7|mg$>1M*7JMFI1aj1vNBI}-K-*3#3mDn) zW04&nx>^2Gj8KuwmeN^T7x9nBJ24yWn^(`14z%hhY)cx@?I=Li(}zkb%(`@!4%}Ox z3{+_(ox@uYf|f51dw=%3Ss8yPeIml&*|!fm7KNt_SC|80E%qNy*$nz-Q0)St=EryB z+a#gD+LBeIz|73?uBFH?6Rb>KPqAhaQ~s>QM5glLcmn&f*99n-;$FRaBVXrzS$9eq z{5XYO@r!i)k`5nBh*`1voQ<&Te=ncY*YrIC{ZF5I?5Qjys6VP#Naukoila*YKqRKY zUc{no6_!9Erc58=`Uz`x>Ez=holHHpW5MW@Mfo{M<<5(IX6o2jCvH$-uEn g{lA$~4F8-=A)Cv#Rm zJ57+sIGmq&k>X(%JRZUsM<5%07p~uqc+joMX{xqBo;TlI2kSZu1W#>~(_v|8ycLz` z#mv|9n{z9=oB8=}+dL|E&hp1iqFQ*XID#w7v1gZ+YqBD%tYS7ice_*wu<;H@CEsfp zR%hwUJ2tACPwzED+=))8o`lu4#bBAOY?&Ci9?W$r6)h6%3MXN3w2PNt=6j_TIMW)2 zn#CT;phwj1F*_!Mj!}Dw^iQMsGLgs=>lk gS3pz2L9QG%_hExyI1Xg|Nq&$(%#0AB>Pu#(O8sZTee6YmW@^e)3Z}Gz*eIh z-80w^wosrY+NLd21|?TnSnPk_jJ!`Wsl!JV1$37s=FL3fWkkFf#nGS}_fF5kaZ7*y zcGzV9gnfD=`WgeKQ0%fylVW pC4ewQ2&Xruuw4Pa>i z%l8Oa;<^Mjbk{0HEwQNyvq@-rHp5 w@)I=ODZ7qpd8 zt~KG#H?bd;p$xjm(Khy?fdzS#ggXoV?&__+o-1gPV4g)CElXR?GvyKBYmb#yW)+)K zbu(C)_r?;p259_YEO9@()D8AMUVXdR5}R1{GkZp3&*so|P1f1EUV3wxs}LGEdBbmA zRBTPye7!lF<+JtjF&2v)d#9ok?U9ZO%XIxw?= dV|y6Sv=^6 }l6?+eqr^^rGe?lf{ONA?4b>}B?oXj5?h6Z&oEys%p#BHOYpp>xBb;4&=m zroLF*c`Zvf58liDCU*`OL=Xb0C pE2 zHV*bKGAi>w*=b*rPK0;^XT%1nbIMZBH3gV8X+Z<=4>3>;}u!Dc*AC*Oz&KE{z%9 z()M)p-J@MGpns)vS2%N~ywL?ew~1S|{a$IP{1>r48}5UYR8!*Y#_}x7vE-G_o{~AM zUb{JBj5oH=8;Q3=N=+Z7MOlf0hDTVlc#u8pfv}I#+gZAuHez8T7Vb)E)6k2)OYu(Z zI_3Hr)69%+Cu47Xfo{7>w?j)H7VC-w-afT5pUizW#fx(d2aD`7d$k^Ssfc+?IgU?S zYO2np_;v52;I8gjcN*wUJZa%ouJyE$FRc}lYxYb-a?M;9aENw> * z=*WHJ9m47$_7rxQt!8S=q|1D_ef*Fn+I^xyRyVM1;G(V;Fq&7j(cO7t*!BX3ZBjv@ zA9;GJDSnpC$i?0mT}(=C)_Sht+8PnS!JMyDwFOmKj5L*nrmmQHi@7+DCyJOWfAmVn zEQyHr&c4$Nf8`7NGg5z#CU4jBLp0qv?_>wu^RHxN;z_6lh@4x;$s>f9Vnqb06o|o* zEJ9C2jFH4MMu04 @`5)utU@)G7z$iwsB)>H{TW)JZ5-T?u4^kwI#~u7;hz@*jH6J% z`0r(kam!7CWyduGVNX*6t?*`2EC4qUz{WYc@VZ~7a|*AHxZv_Nov(?56bP>bYv8VO z-B_|B()@K&;D44YDn(MMJH>JmA&68!6r?4w^>EVUYm&_qxaUyGDUTqHkl-M@&ag&M z7EV(vo^Ec@=lNni`>@1AJx`uVvuTHfQcYnUYfxf?61StCd?VIW$~6#~?2DY=2f+*k zBH6SE1A)}CB8;yR_Er9^tvP_gQF5 BujuklFZO#m6uKFC>zl(uuhV+FouGRQu#TW zc!?=3agXF^yF2x_nc^ABx<*d2be7I!!t9!G-N~{+7{cd>QNL1m`n-a=ZAk?rk|S~@ zHwHg2LJR0=+{Y}R$#X#z?mio|#>$3xTZj}blhUut+;1GDiniutQZF0s;m$)Z2v7Yl zyfD?!N6_c#$%%ZMag%<0+JR&($}keELIku`wDN)%Gr7z+ll+ck!)0Mc^}O5n6|UaM zc)Rw&dzpJ6uNA$}xZ1csjLZ~a7aX)De_uR2KH+)w4K9;`I~_K_VnGSGRmsB6Ebh=Q z93|88d`}JW+0zHah3Ee$7oKM-JI5XKm?}xW){;|QT1oQyT3@7Te&d6dNo-IC7Z6!8 zvoBPM4c;Yi4N(9;s#Oe7qQ=!lQ5`q5d8?x63+G$w1!?3FtzgnF&&s9)&s%{hE_26d z(%L-(M<1&D8vVslxIQ~YdiIkigT=Livr&BztLWnV2<~WDDP#6;J$UOXG^$&u`&U6b z=u(RA3l*0vYxG0l;>)}e2JeU;B!8OE!x8Y=+X~G{EJ%ska;Z|DDq2exM`D)daO1zr zK#f8G
#aP5_Cn3!J{S@aq%M%mqcRqq%+g_5+9z;sv|pJ9WGAd1^*9j+XJ?~+ z)E%A;huzVr9|t3#)9wyK-SNZm5qu Iwy3 zqV+g~+%ZRvuLO9( gqd6}27Q_`oUkeHXJ&PNrG z^5amEti?~ILD$I9pvMl3J=(cn`N2sK*IfebpU~&@dL@o#NBG4K&i}Kv7h3(KQNv(D zw+c{o!5fXbW<`I3vY@P{LsWQpA kZg*|JE>^3>gTK0UXvZSiv9-IZe=Q!% z>Iv*tM7y>2bxT{Z72;O-3^BId?9ep#@aQykU&PGq&uS<(b#Fq_<;#3a?Iu@=>r^TR z-@Ii3fVBG#UWRA4CPNGd08gj*y{a!r{WvBpE#?3Q@`U6M$QkK5*MT|j_;RdW=N+H# zC3U)DhuM+(lx>X=+l-Ap`#{#}nd1&w|1$R)1qYGBW(F}M{6i!lV`e!5${MxB?a~1$ zWUyGYlYP4J=O7<_jccJL&&Z9(91a-_T8nh{G$oMiu}HtBxfiY=W_snqpE89pcgLi{ zGy1$9@8Vgv*X{M9L3h|64f;{|4MFsJI#Q2IDJ@lca58#D?pDe`f0i#EAfNEI*^O7J zLk((1vbX7amQ#8OCKS0+;KRGc4X&>-D{k%$8nx*Up*G#Qvnk(Q;B@fom=1Na6tOKz zTzZDHb&rQo!Y;I}K3c}D+!Wm|ihKlu-4r)*Q8at^cefiS7}?BOsSuP^N>=3(Q?E`G z0{!hdGK!X5+(8#v*Y3i6d#CJ{p(G|CDccy+MpQ&%)TNZTDQTl9rv`81M1M2<}&l zX?HM)&W7D+G&(yCmk{Gu4G8Qtq!Uz(iWN#{mcoT5$mLF*4#*J9&y6Z|9`GVt?oo0y z2p*@41?j+YdW(U?TrvHV`cncC8ga1^7r!@gaatq~S9AT`uPqan%a(7Sio|6*VT*>$ zJ}x?D_ke8QkZOsuvoj`k%8f%&T3C<1Wq7#0DLS;uh{Lr)4mUI-FF-S*8m`dsP}#@$ zha0iL7EYV4&((@b6gN!bzwPE<@N*}eo_kH?$fT~p>9_%Fp3B>$+8nMf#k%5%XN^K! zI=UNsp1k5b-^{OMBYzTmu;?sS=QOC-4r%dv@>x1xC1@ v9?=M(vz~kH^ z6ZID+LzLO5(QGGVX1CjpVGm`3P(RkL&9(G_Gt`^E+pZV|Fo3Xfw?WC+?RLv+Vn K-xg^wy%X -0F;|-3tZr4bX2(|I-1=BPUjt9cd<}InPhO@npkx7H<*_1wj7aK@ zSzm*<_Q3kFH|sz5Vsv3I%TfK?Z8lHIwoV_Bqf4nD-Zb5{odgc*xh{+p*pbdfh3C$r z!hE*wJaVQpvRypFwC8mT-)3@hq3ih~S+zc7`Sk~-p6psyMYiJ;X+B6y#uqEMhqU3e z4PE2n#fDJR?PC2-kfu+$V6yy&(ck}MY^>^zs;BhOv6yTuA)t~q4`@{A8=!G0e;Kpg z#(V%|DfWZNm%~r5f>g
TD#NfUz^=+Lt17Xo0_GC8 zWfh*DX=kK#&$NC53rnuklDd>5!_o@RofB#sWm*mCBTG7_TSb*5HO-*BNy+FP29-*N z?a*CnnS~RTfk>|KxuCvI1@US>AF4y+M7ruLc9s%pr8r_Gs2%&{7TCf&)fg?+Hd-=m zmPXQM35%Q<8Fa*Zpw0lR v$Ph; V4o?SB|127W!;QgPiyeHm=JscqhoPM0{**i| zmsyfa7Y7TDxMEzfVKzyNbTsl q{=kSv4oP$Vd5##R@f!IC9LdIDAxjhh6np> ztmW9p3!Wb|xV$~E@PLYgQb^&MbD#~er&$TqI4A`gwQI5KY^>G7WoD8yL|)zz8FKxY zK&QiPL}afo2eS$ab?G45V~9ht{FW3Coh)BIW(9coF1}Kt7+Mqev$$O>W++*$iiC)t zC*}qF5y&2MnzK}3rlPGNSB7)zX_?|5aO2?wUE)?*iYuSk%-isIi;HjEdmBl)aqs;; zWo5&G p>weTcrdgQj z>A^NEx=&r^HQhX_fFX0xquv!PwC{!RwD>}Q!AFpR7PD*AiO2%Xa$W{3Rq%A8U)v5n z6nsP!-?0{+_k!kfcsQtMu7a+4Mi$#O#IA;X4>p})hkPT@y&-|Fil+&={D!o<{z+w~ zc;c1`)fM`g$Qy0}gB|?_XXeW&DqS*&o|>olGF?37s~3-?wL9diBHq~35TmnI!L4kI z$_PRtMCi~c$!N}Q3@c?AEBhw!-53s{W@~( {R_yw@~oO^`o4Jv;4=`olqg7{`MeY!#!oX0+)6`45(nJY0(KNo+cD z3VpFK#Js~0%(m ui`UwwdTQqf=kiAdETp^$4tE9^HTBNY)hpOU!CDH-|Vg={GP;|L4TGWwR-BU zAj6OBIm9m~Y)Vs)#lgTeI`C4+eCT?ft=-RFQ0j-)(OIkOu|3JxEV-$x_9U+#=vQ7y zh_`1jsFd`TjrZZ0Ms#YCk`95oW!SFBMO5&!b#<;XZ^eMKrF5r29a`7{ZBxx#RwK9n z*0s4v_&$6LH?W&NdsPm6H&S&NPE)iB)m>>!_0oEp$N~;-{6G$TA$3AAHW7X;zeTaw z&2Y@RXxm`j2J1Ga)jw|JB)7G7J;2M!c!ia;CTw8gh2)Uw`403lV0eq0z3aN9d)1 z@W+f wP~6q1ndTj%t2XNsbyw+x>CpPUlJ$ zQFs;6hE>GjRoLZw?Y=z FVj8( z4AiQ dUi<^JsffcRM8R9oa*CF=WWv6VI4@C0lTW?$h;no;+O55;Q$W(+jH; ze3KHHXgIxs@PxZgNUFuqmqFFNgI)toT<5YOI_?eoqwesu8=a2g?jSrg^QgP^rNeFd zoZJvheN$vJ!4w2@pECT+?NAQeD9M?%sL+*@BHZTj>2;QqOAB#lAg&QQ*I5b}mQszU zxcRF!;=rF!73IY9TV77AcnrVI_*);+Rgq1bn}&*;hUTULZW_e;U}*{H#ozZF2I8Ok zQg&T90M{l+=x`9H*<4Vv14 )-Pi%ItBk+6=`y>{|xoE?xf~4141HltH3&>CkN>ylMktaRg8w!mS-7C zU`_rkJ0oV#!qS(-oTx||PuwPKJ}1SD`b&oK!rB)kuyHM}?jQ#3*R%!P(+^ASVg#3g zH$k{EBF`?) 0Tvm7VCppa)ke$3TeWx8iNr5TJ_ >B^? z2M`?aJN`g~#s5>P=O@$*UM-g8m1q^#O|eK@vGSFSMm}Q`xXc|!JA^bKd?i>nT&=d( zw_FH%V=wfDBdcUvb}_?|wZMx$LKj_vXW?f2A|kPo@cf#*i0W|^g`$9eFH@8d>43@D zx{N>tWQhnk7 rw7*h}H@vvyD>in)jkT0~7gIgJDh;Fd>Ch)Oc)V*rF7i|p zXOS=*J5r4DETxB4I@!RL4c=8EI+S){Fh@WK;7GT&)2-VT)ssQ+F~;v%>* v0XJtYPf5 _S_ zcA1xHGGKJ{C01%LXsR{VzU(39$H8vFm$}tDA}iEg@L!tvX;nIq9XY?%iHJ6eUysvf znLUtQ9Shfao+gll6**trB&6DG%9SHnz`9LmPxCa;E)W-3fUd_j2_z?QJ$pbR{w)eD zq(Pvl8`U&$o)kAJwF^XFvjlxkzphDLMRuh)$E45nxXMU$=vg|&G6?A^SVgedcMTBu z;ekM782CO61OIYtU1Xg*cCJ#9+X`v`(fT3PQ;{;$l@n+$F1H1zk1lpAD`SrL9o;t$ z=fb;AtD~9*#xLj~*D$8O4r6Lu$3#y|8%G|SmA8)$)Cua&;*xT`tf->=-4U%;7g=Hq zWv~zrZMaL9(7{1;JlLfFJErDrm^j~uA=6uA;`|ByZ8}XKiBwEauiw&Dv3SI%))Gw% znDW-P%`KdYQnMy@^t4#g4l3Fw%D&;65FT1k&k!kEk!`p@^QZYd94hr*)#d7TeFbI~ ze$X^s;D1u(XJy3S6?(cRal)4ka3Y@uI5iGg4esKD>fZ#(Zei|$+hMOhmHvp7g-cc< zUl4Tlm HtBqW!^Ee- zVQ&qGJuGI~b(YTd3dq2_McF})K*>64!|Qk}@GL$a#%HH-w;vC?qc}brgooZ9^ ^LnvCWf_MP$Bx@gLyLrlH6t3|w4bv2h`52xgi0qF`lgB~=t^Y~0D-3=+LQ|E_ zNJ|>jML!MdYEajYi@HYop#I_6&B6`KMiofw)Ps_Sx_I}E?poD)uEFbpE4qR5m=*Kv zK6N`^pay#J&mN#xEuIQ>S_MIocn9c (S!l!KfScx`X~;IPCR?;V^BmfAhn~c`{{w z{Xt9uAeHM30o;(@qi3tBThqWA^99OGR9J^Cz|^n#9E}L@TjAQXSuz(IJ;pWgF40_r z=9 AMK?lu8<$`W}iNNxi >^c zKo!r?EZN@FXrZ0tTT&=6Owh|!nm _+#59J{c6$jlqoRd#>Lc27?K}jC|9gm(j#;~R!<<#-n2wxnU{i@ zT9iJb9N0Ap8K+}&rA>eo)&Rt;P2V>z4C2IhZna{Mt;agy5GE@qCyWW^MO6C)fcqg_ zAD9g*W1~8Cq; QZvYM38r%I<>J@E|R=-n*x$H$*NPuVlC%8s{;fPwy;E4mL47m54H0UJA1ug z8Z{_~kvIIh%z)K~_J~2D`vju$0g=WYU_787149*lU@T0xY*0kBRZ#`A;j~d)=5+Kr z^wpuSL+G^h_}cQMycUyE{=l7%>s!DwunEMBce!SJ6{n=Y*KCVFG+jDOuBtYv9IpE# zi^D{RmSPttsm5XK8rXRs%fK?+TUk5+{@cZ0xL$zWm%j>q*iH>;rlyv1Q O>?~x$nS~WbC9#=4A z_M=RW56+{1v)JBqd| $S? Cd(;oBiIs%C0Hf6>(O*3;cp-67HNUPF@9e~_WB6YLlC%i6xtG1~!3~H_@;iwx zUh$jnW+be?>2A5YNzEqU|3V!^Qjaap=aU3X-=1A-nTneWfC;O!z|8#ya2%$>n4Zl* zB(%D*BuF91Jdc- m>1fs7ocpX_3EPfIWsO;(Ub57!K7^J$h28E{-vgW5D=Vf?pu zdG>gFXOUA-3syz+PzLNLeeDA2cW}RRNPPD?NOOB=hYJtS>iufnZZFe=Y29EyPqzxU z!}}Ieg_?IVKI+LzwxO(Iv$H3RYGI}7Td4XnRsX69(<5czDi0J>PtV`)$2paIh#Q~m zX%y4}32!z%apxb%A)F{_T1jeT12hzuuKpH!e~X&_7Dj)I+Wr>x{Vmk~7LEK_7cA$3 zSXbI|vN3afK!8&%|K`m~ci#{T%X(zzV%fuIWMq}tAA%9ugW0u>yUg;cUBJzY?b3-r zO-Y%45;m1T)$g6C4cdJ}?vm}$FWN`0REm>IX%aalXER#3o#)=@)E@=G#1BTN!FYB$ zYL0Pcdt;p6vzu(STZ9!`2slUll-CG;DVg@R2!Hu+A!dRLB`6DhNMnm9(6cTcO9y|x z9r&ZI@Otz^Ds
5}BVl(E1| zhGbEncfxe?dxoGZ&5Tu<^NW}`mO7@o<^Ta#;0(tnU39%5r)=*~p;dOH`%KPs?<;JI z^y|W=SeIUxbl?pJOPSy^baFbH1k;H(8;{Q#L#~ >l63Nl#*4!kN!)L_e>xBKiP{l~>_YxRreEEP0v@P{snGf`aSuK?PoFa^(S2F;SHj z+;%Fh@Nol%4RKWVAc{#BI`Gtirv~8ZHKLm|chn +kXwL^R@zOO8H@Bhqfe^8@-h$v0ct0lhyL9&EBE zqv4TU_kqzl?zqw@+=tEDF Hhm2xVPFZoCE?OUeWO0A g5g*H~At0E??l+2IUW IXx#^eOispp4P(yU@I1lT z+cNHkJ1D1RFRIQ=+ZRF7%=jaBF`SmEXPvu*lBL_MA9)PXr+fJGNj)+4B3UMKnJOEE zV{7@or7wz1T@Ul4_^T)k3oZXOUS$hmr)b$-%>?TnJ3|HMGuJy&A<&U0t>~-5m|dnV zgAh44QDX;XY~UOypU{iV1^i7u^fkSM7mjJ|KJ*D$S|4-(aoVF-eVe8UIU$-maXj#N z5cm%GA2|S@S_7ky;+DJv={V+Cwh6eFf4w4a|F!I<_7Z|Tow{+D_86@J!aUw)?)9sC zs^ty0O(y;mtn0jNcBtj^R%`HSNOvtUvyPMp_FUr7kV=ehdK+0BM_2T*Os@KEf1`Xj zx&an>o5^gkt1&KrV0Wyd1+7DTgWgnk=HE+ewa1G1%#79r-+AO~{ q$r rf<$BpADkb-X6-I-P(N7#U0Fh#kYp#^Mak)(jA!G~Y&tzXop^q5I+->{ z-2U5Fa P|c32<{W8i&OoR+ z$2+mlotpEzRC7vGr&DxRD>_d*MQ5kz>=d2flcLj`1Rg$2gWzoJ%_hzBLd=4_Vb^DX zA?QB}JS>Yx%mn`~>pE{@;yDUoMZxSEbG?`kZH~TZ0Q4cf9Y>B#>)eM<@^>TfM-SDb zxv^<(EDAPezIHHN4}ibSR1c*a1*P*#__*05VG2cY|86L|B7rK*rH3FpUSUv*ksrDX zSIZ%NL25?Up{@>fy*bpSukL!-MQVr&9sa6tulv0wy*l6G_5)uNE$;&l;b4HOejolS z3Eje$R^|X4?Mmk*!#miWr{E+2#)A9{%qIZI7e!~lN SS9shFX|4AS@}ACe!%OW>|7cKXfxNS)PF=HYQa1yI@7n z55}X>#Gg+5$z(hYnq$RLQ>^&En;3;?eOGLf#imSS9Io+p2wcAG=lnJ1aE$Zu> zS&N0~K#748M)#P#hs|F^0Y_y}6uTL$qVyl^7CB{sfm}k+WE5}d-b34sH!MuTpbB8p zPMWZClhP(TFxY`X2N-mtygjj=B;p}6mqsEcM%+oHEw2sc8&-6F(CScz%b4+W1az>7 zlU0vz@M*u_5ZqC7PsW~Wh(WZXM-sWODZ>T^XyY?E)t)%4|47!XgfWL!DYbVJ0PhqK z$Riq7sgPV*_xn 2a5<>u6aHF#y0I%c6Uj tcM0lsD&SqCGsc%4r=FX(_>iJV=Ecui(RHRJ34kI!cya>mt->~ zZdIC-(}BE(!g4t|NM#FXex2ZH1pmvglNJD7@aXi7w9$!|TdwG(gon_O#-ioP?VVH% z7eL3Xu+ALcWZP}_ppz^NlG|)u7Ah(Ts#jv%!RiVE{> )sIBR|`wu ziWmv9#eSWT KRO+cg4vljnvI*I z+SAuGJavQ+6 9+_02~bs0zqVV3Aa*ttKhNje{qgVD5Qb>Lrly|}}Ma+6jT zKeR)y-xqrA3`m si@M%}3SZYO9vd0Va$hHN9HeEL@ql5}Agw)BgG1Hk{PT@?e&mO~~zS zp@~{pX`+UfnyA)V6Fr~BCOU-GCPKA|CS}t~3kCBIu}u_2ndGEwWPrZJ#e5Y$+(ekO zJV%QQYtOiGq^O9Cp-*%rJ3fh`0#hruvVhiM32E~(ZBV g-sIG8 z0Z_)zlHy<=*ErPy?epcM=f$(H1zN5^3brBi@wUCn*oh3xtkphJDw@#P-6BhTTIqV% z%=7NcPzNfS%biHj0B}okyW=W6NCeS2#C3QEbr}!dyGf?8%k5{BdFJql(;VVf@z 1}N7k}S?+BWJLE6~(vU4l0Id|b2!BmovJGYw* zlo3F?f8n2>UXh&Ae`ISkLW@ L(ytGGM;I;9n6LYVTSJ~-1@~5kQjnb%6 zU5ERCtM)XXD{s4Vd0Ao4c^&MjTWXi-4j`$1ZJ}?-z0Gzcg~CelK#px-%`GioZq)r| zeB6frnJ$6BDVpP^$)R!6=D@%y)NLTqLl(s=t0AN%O2~jiCGIX#wxhx%VO)5JDUs*k z9ruvrd6rA2(;dj^Ku!m8-ZjY4ZL;^zY#=*~l{5$xStkOzytuN){-UB~OnUihZep@9 z87!$R#R{buSP7xxGIdC)K~`%wsdCyb3BxCug#rVs((CJpkhj%+sxx!KLp$8T%S)Vm zm#I^=;zS@emYvi*f)3kRZFqhJ{y2@(6myEjP89Vw|5ZPsQMl!Yc@l39 fl2i8Kn_v7KSf1<3aLLu*_6_sqUm0M3tM%yY3De#kK>eu|FzDL zW>6)4Rj(;fF3(1jsW+Ykv#Eb}I`vw_*f@KpWCCQEjcfvvy_N(?faBk|j(tt>9&T}c zy5VfIKf^qtfd%n|z$3pcSY*}`e^do9q$X=D^}oaCsSH?X2w7?WAjE5$J(P*&x>$uB zYS|~D0ADO`CZj-8;NfxLp>CGFz$_=sZ>4)W;$XL=OW!QvU)fNE#+~c#1K}37X@a#R z4w`yeif2C(_TR$RyI;^^``^} *Vp&!KZaRWytFla()dURl#>5)WZ`fQ4+*tvBLjX&kj;Qrm zK`|;^m{pP`OHlEoXRIJ-!-g-c`VX>c(Dun+-;#})gUNpp>oQGEl2^Q{7XGDdkFfGJ z^~zu{mG!;_J*fzwR8m-DR&ty5e2Di^A-LFgIiqUfhqlODDkw`L<<@Y30Hp!7=bbhg zmt?8O;lEHf(5t@VDCIw>gyywWDhODHm)8CWq#A3nkz #j1JcOBtX5(w-S;gxH^sXK2zU`lVyBEA*9cW^Qu`4iutOeelKnw_=Cs4;yOyWxL5 zhMQza$8d*y8iuM`+TdR!v4%hg6=^jj`4m3tha#Ou91+q?NF|vocZoGRVO6JMe_ty0 zXNc_Tk6S9(Z4p`hu_YpFGqd7Xv V5lEgAtqD|fZ<9Z zA;YTBS${R=cgarD=00r7I9X*je*_FL4Vy(YGc?N`XY6 E>nwXA{imelfwBVXKMvK^!VmYcgpJie1=Q`-08(K z?S}a6epI#)(~7bO!qF#~x|nBh6eLU@$-$Oe3u3SYzBN@{!F&-o(^Yo`crkY?Nbe5N z93tP*rGL`Q2+lqgb;DDL;VGK*r*L+hhW4rGNX_6BVsMJ4gHu!v4r-9&;T4^fQA00f zRO6;BxhNA<5*4-X6-I8#%hZjLYH~e@p|s|EaC{b2u884WB5?$R)I2|CVbm^K)Xw$V zfV0Y1uoAdT9XTi9fYMA~*}wT!Wrl_7Y!HPt7X-|E^}MP|3IR)nSG0HKH>yfNH^6qw zssy4DIpkR*Nv1p*UfPpGN~L|dbWvBDOTB=1B!Q0UKT7MWj5JX_x)M{0noud~4geSO zF^#>mGk-D}O~=7>Je~T@A+G )#$L(JVc zElm^evMe$}q6$!IL^l;?ie;Q90$4kU+CkLs&3 # zMuL~AX&>lw^uo565)sa3GlqN1{YAoy#-l$IJmh~$!RTx8pw~ZtnLs|wga!7fF7v_; zQ9FJE`yCoFMI3FHsoTn}bFCEYA*Z%I2O(YyjL7DDA?*w3%3vX;`_FxU9sYc(n}? z3$72S`7+f(94YY$d382qwBSc{peQl&&)5-pa)pLz@}2d)nz8&zV-$_iS;cA3pbjcJ zOMC@n-S**xibD&Piy@(L)nq)R6GH2t-XN$fZ4wmMaWylG#w!b5l0Ux%-Lho)mwbvI z&6R4jP|JMl-ozizPG{cPczo)Qnggcb;8ubg#Yzxz%uzE=ZrHcNC>bz%!z^{Qk#)9) z9TeYS3Ph1q0eI~NX2>?cR5$eL`oApC(kwxXc(s!Bcxp0u;pe40ZMk9#(a;oe2DX98 zqI1yd09I!=*a0h4lb=rAMB0V1fhwwp71hCl%CdB^`iO!T41db@)>`|;cLSGtHntW# z<=$9?5iyx8bu`?iL8E4FLd_~UxLV6P;v9gza5z9W1GG?@UfgBLA}0IG0CX9^iBO4< zqxVaD&rinozPr%r@<>dckcQjkmpAybua;P_fV}P9uastdwHe=RhHA<>XRM}x6}=y4 ztmeK>2l8|BPtHbxHyxh^qgfD4J@2eJf*Czi;8U2anB&CfDB^(~MNkG3%ApZ_ValJ# z8UvNaE#1UnzPRHm9*#}cVZJ4TGQxpo==L#*c*o20v{|M(MM1>Eq;?>r10k(LnzG4h z6cbB y5r8G ymi939@dwxJ6H1V<#E z2y{;S<<=^6;XplOyXHS&b;#QhgEwM~OHP8`1&d%pI#dQ5rI%L~lsK17u3Iq7$&$>y z9*r9cm0@)X%U|iXPjB0XubSC4?^G`p(wwF9_?#mf)*pGZRy4uEFo5mZ(R+>UuPloY z66{L(7Cq?|E{F?TGLT>Nf;gbv_uVv;r9sxcCCI;JmX|eQfw5{A8o8?)I>_qmL}%EL zuSB__D_HDwk~biYq;F_hwXUDV_}wvy3GoIUsi4@9l7oVEc~#LWH(1xCN77bjpZLh$ zpUc$pUWAgRFYIi~;|I(UI!_FCh_i`so+?HVf(vo*Fz+j~RFycDiysMGiY(?U6|z-% zPx_j{`NOF7)PdVck_w!aa7ybv6}etO6}RF7)(M}BR5wrPNB#$-q``j_{7&I89Y^In z8{*H9q{}ADjLQr*#H%BJvtpfgl3JwLZL3D!LDgp7egIhwX&kF|6QU4+HGDy3qywb> ztFdZNo+6yb49>dHLo};bKcHW^oIpqj*hF`w7%ns0&oP?Z>hy`GHv!2EIUe!aIl(97 zZA`ac+wn!FLXz@YmJ&*{CwMRKv9kF5@3$%L>&44rkYO{-F&AGa4HH#tA~5_-^DK!Z z`v(3wz?!!w>h{UzF+kx{g2ATc9iF@kx-B!eGj@F}nyBn%PBwmyynCzg;U)^v(>WSS z+Yau-lQ&> vot&|gGj_%fov{OK2qq^k z?H1&9w#iC(?_y>Ll&rw-^jrA_i+x8rj)7g=M!m8 );Rlj&sA@Ap-*B9>UV*k*Y%hPf(Y zkfMszPSh{Y79r>(`eKg_L|)o_Y>Dv$6aO-;57zTj6tN*EvmW>yn4{9-wxWt-n^tv5 zY#+$~VDFnNHVzsAGtAvNd0+`?_X9r==$`Ve=^6f8-q}}Kwr+()en3Av4xZ+KVTmWh z(w?1jk5EN4uASZzIu-#CVN!z$Doa@f$@2LvBdaN?To{!LvvOgt{Jx^jL{Bv8OjNvF z)EV-<9T8`Y;AEl_i8e#4vPd)VIU|x}xFTB2vQX+3b@kLMiLZ9K2|M#(SOB5b8vE)0 z*}K->#&IS4S9sC57~8Sami%r^8n`pN)AONcXE43{DKP@amecBXY(sV)!o~gX%i>EU zMM{((iPNEhnT}<$NKq77hgEgT#KBqUSe+Kt5U-zD9wm?4tmxI!1xk8W=VP)ulleXx z64*#m|Kr^fqnwuEK^WPFnX09#{Iv+{lqn$?7ISe^FC`)-n|Ag?p6J%m0*xGI4I*0J zEj?)?);WqdF5z!-$aqb!;MrteXj%dHqLUIPfL|K@T13?Q0C^#%M2myw_}5EX)6ks7 zsKzT67|@XV;5BW9iQJibw;E>dpJHM}DSaT#rGcb4WXIsy|B4oq`z2IOVm#g0S%YRn zk`fyd% BM}p z**s5Fv92-G?SgmT=C 9qp%Vz5cF9>u7L~3_Y=s)~X0x4usxrHtPVi=#)+}R*ySIQ9 z3IH%q#hUMwxvmKglfE?&3ymPstA`$ELLi``M2LH`%g+AUJ>NizOY`D|s=V*$cp=m1 z5Mk5SwE!8{1N4g1UYfw01cMHg_!7vQ<%Q_%#1dcb;H^2>8*qPF-K-Wn;BAZdCg81t zfNvK_F35TvvAOQhnYnP1-WaUhne!%_u$fA!^IjET`d`VGRgCIA9hOJ-ug61FTMNno zJE`FDx-EO=JM=qC1Ds1OlUo7z1MWRH;7+w{1-hSy8g3szohC9v_v3?H^>=UBA)muz zy`WbG>q+y*3B+{w$1pi$$jp(Xkv$;HZgSn>o54mKSiE-O^X7q^r^kA&pzUroqa?Qy zA+?2tdS}S?9`-23Tt^`r&^?Cd?NdQ+;dwvocSd2S(;E)@-5_*FaKmFDxW(!ba0vz; zcvqdKRuCs1p_}zodJt4;c@+pvVKDRH%!4xz&OA6Hi~vQe--)5LKtpN3ZrskfmS%r> zpyq*^16&E;E>P=wpyq+vn*eGrfX_|{n00#n?y%h%go9x)>UG_b+30uypztmcBnD1- zv^Gy(ZU_h!n2k$ae@!>>bkmBLn{}Lk+OozgK4|Uad9x^z2Z99wWO2Qm_l|(B?KWW~ zuB_B{^@x{SqD+I^FvO;+M9xk)jfb=`#%0=;H4CU9dm#->R|`Bz36n~+r2)14|pc_vY|YerpYs-T3=3*PEw|d^RP28al _IN!9OmH z(R08MEsflqjojQYaz);~baiV$o9~HCD^xb&Z$&~{CLw?29r|Qec#Dsj-X133>5vWC zusD_W5hX65@=_gSQg>V(VODqA4B7{$*!&{r?;-3ut$DoQZnSF%B8@gXCGVlmo0>jE{R|dZY}0QimpE0`P`#*ZkUzoJ(;!Hj2;)C$o!A+>)PN zww9} wptVo6xhF^q|b64}jrd@_NibD!K8UKpeh>GaCXo}d(hp(4-w#V9tc zHacpa117OT#KE5-Ylux_`5XT`P<{! j{o}KsiHs_MW{^;lvd7K#xYRTes5OG| zA;}*zxkSB^xBKTeHb5;pC{9)fUOX5VnIE*` nUmo$A zG_tGOA-Fbewe{ufLR2(&O3<)oySP=D6W6ZZfM=I{33f@?2_+e72{=+{TbImweV2^+ zy|CNvx5MG6JskG?fx8|Z9{0>W%bAZ?n<=PISfO#DC{$xvG?knCXswnl!3=Ei=_*pT z#i=?y%;$~*W~E!=EWEmJx1-TRispnjbd&Rmw+7HOS>A$Z3B8TgtOdr51(Yya@&KED zji%qV++5k>;j;#K3~+iFz`8_utH6;d5S0T9zC^+d&n;r532_S}c)Aw%h>o2gv3(xe z;(kK4)-i1g85Yq-$(eiqS)HXEeWi{~L4SPc@eF=W2Z=&DI5l8~sylBt2C28}tqVSX zD(nCeL#25D4%SlsijPftv$07gOmv7KrC~z}Q<7e?Q;JOr`H?BfsWr9Na$xpK!tnyAoW%sEuBHl fCdM! zZ=w8+Hz+N~q7C|+++;p2w9+XxMKn8ik9kddk~>|BY-hro;|A8pYuL` `C&b=3lSY_5)5|qp=-?fyJ)%bb`dPlN;WLFZ z_yqo^jxZ5IU*MMXJjB(yt9)RQNC@$r^o%bHMLVgm?{a%H-OtU3&iVRwS2TlF!Zdpf z-ebk!P?)gwk6{cXpk?}%8sK&TnY*;5PpwM9E`L{wa?v}$SAWCx!s(}%4=i#{%w fqg}2|K7-oAIaYSCwK@AgGH;o*w$zWT*3~jM26RQ$Mt}$tNbCX? zZ=qL9>HbX}Qp7>#cs8E$YEFk!8yRg&mqlwr4ZAo~dnFkM^qcIyGQY`mIk}6cn^K?2 z=?ecINrxp$T$KsvW=2zVhjAA{P|;=zu#ZA>N<`v8uLr#z^iF?7(5r#aPwM)V=cd;d zr-~-iMUvSzcw7}^S>kz{@=@hr5R+&-p2rMozDd#Yk7@@!GG&CYdFpo5Qrl;_-Ls0# zGv@|LXZB5z8zQpU+7=1n5pd3&P0OcFF>rs14SOLvg?FgAbm*;CaZ7*5O47UenZAvy zgnj=A=OH~q4S4`yF(H3j1*e+ev|Mm12~J&KRH7o>-@%jI#5aqG?aNoogRm$Z`E5SD zwQwibP0PzcYmoc9TPIjQ0XN{QrHxeqo^*|Wqxz2Rc*Qh~*&3ZUAIhMxiVbaeJ_`E% ze%S7}d!2T-7qx=EJ4op54HABfZ}7`IoyG{yRmjv$CKNk-MKq~tq7aZ*MGLeY#ULj6 zPcj3SfD2`AqM4-(>yL2)$7i5`GjCA7Jhmo}lSEoOC$n!@iG|6*@B1!J5`3fHA=BfB zYWP9TM9rr4kx@kcB{kuQ+tp$gEw6d1QLe7mAg?iBz t_twE6;?SWoY?`*R0K0@iph&+ zH4=AO7vaKY@dU5iceDkz7Rq1{$!JrBjadO&?^=|@WAT9T_4Iq~QXMr~qG`HFA0b(o zYL~5mj8l0*T(0F*uvJ*{Oe)!idE!>C nsZ?R~ z6s*c*S8<1>NpuTS>H?ZSr(ZUg@Hc7snqI+bkcL&`IUZ{wmez+nF43|^zt#1XuUz?5 zugKFF=-v`wPg%_s%|fm50JKpwI1xI}zh2S~X`L4$=~59*mNj01nSsmL p z{dN=2B6-^{25h_^ghIgqu!-`48)=EhCC9`i|FY<@YPsykDjC-#BqNYW)5s4Y|E%7T z@(VlO620LYbcuylmkyHo9b~eK#wnA)cxvSdwF8A+a6asJ2BXoi)9-Z$-Jm;ghfw{O zv$NQ9R?+lMoEz%3 _Nd?6F!O9RtAAgr0X&z;H0`gOKm9sFAufO6|=4xqBfkPEpl|h>+ z9@Th8QXgEPOAXa%qK$cAfd|||0v;BVfRh%CA!8&d8CEh46?6?VJBb7;J2Y>ID-)Go z@TLh5%ryl|CN{{44OFqgxLEAl)g_m^GAU=1@*MBY(Q;PPlsqC$KkZh(5zR;lVy6n3 z;3oPWr5B6I-OX%*o<5+bOH-(ZDg@}u-H+~JT~X^7+Ks7Nk-0y?&M!2D+LQe7Vg5gz zClT37YhWSmNL}YakxzJCk&V4vl~FMC;g~(ODfC3%$kr2?Lwxo;k@tyQv<3sQotoSL zBjS9L{WtS9;<>2w(P*GV(%qk3@WQxxwP-ZEjVMbFJDDN30B _vx5eF)=mgBuTsE-?AV~NhlH{$Lw zZm=CWAuB#t5o%(p2@})#9DG%xWeqQHchUCiYIgC{=hiR3efrY+<)
6-etk}_=Ye0E#c z?6!Xx7d~maWKri<26VnEUMEzM1c#3Uk-PIX-rl&Z(J81^Ulq_%>{x;|oA*>L09Oed z%VowTzoe#L$c$;>Ui_@Q|C-1%62a3#PcTaZlL&Ah{fGj)h!&_ k9_b04msQKKLK5k^LIBom~auAN8fG-BEkcbq8@HR}lAqn+Q$NT2FaDS+A27=<~+l<6H!j9H^w?Eg9F*kR=#5 zgDW> HXziMgBHVwL!Q#vKK74v0_=B;$5&!6nLrI1l1Z&TUUR zY9SL}cjHsjT|iOAX_boceti{5?f+t{q75mz`tq?Q=XySwZdVBd%PmwZ%H=O_H$G=o zDNDkxIjfGOInz@G^|@Q5JfZ4(G-1JTRiX8SSR@@*7OO>BHO9r2z7d7Cs8V^hE0ccU zJ~>rayr5)s%WR@jDlx@HP@X&LIuYj;$}$V7lz?paMqJ`b_(%Qr4*fUy+KTXXs$Y>5 zKALZjTF-|^RdCVG9#1i*z*9d;S`mF9#G`AgFl1KDxYZsEJ3)8U?X^dPQFrK!3&Qqk zg$8ZEPPPmdY-C^JOpE8nBbFemY4$D4g%4R*9HO0OR-#$7Wr2+l?Zb7auanJJZn28y z^LUDzn)-kqj|_Z3&yT72t7G~_TLw1xL9Fw(GQoR5EN>U+-~W-tz?yJR6rpSQy(aI5 z%hi(7Ji;&8Wlav^YEe_XZ!lF+gr^^@lY)#q=fM^&7O-2Be^X}FdwQSQ&zj^)DqT?p zK&!JSXp687fGd~DYl9R^ON+thdj$Qc(Vl@GpLGwEdW-fM&q+mC8sa4x9*cOyM(+|A z9~<2Ea%H#|Rjj;D%Jb6ZM1J?G9?&IpS7Q{3zU-l+*sn4$sbro!@C@Q{x;7um6PjJ+ zGfUjedGxe}StF)Vy?CtuxZg^wC)QXgzy@mWDKna}22X(iyp;VD1^J3(WYUTis|D|g z0F%8?172loVx*5?x`UogZZ;<1Kz9bqk9Es&MqZwP8zy<;$NJuf9eYJ26-515dHc0^ zrSedpth9*ssmeZQi&{cO>$EesLa*N+4*H{Bci0 ZupcX$4IX?H*U*sn6W509Bl6vw=NzsOlIEbr_mGwx%-GMD1iaR+STZna+qO+O{;y zJsaY&aTDa^>(g`gq`U#}5AkNT9jMQqq&ZOf+T^MV8Y< eebBpG^;carS$2w{lgA|7lq!`xCC^RjSOT8p3$<=T7Z+c&hq7W1$8j5qZ zv{A5s5cf>6o?0?mh_c|zD$0gt8g`k2{e!q^3i>R9(@bzG2`-^w|JzOfJ_bgAEtb6l zB4i!=mciId3yd8 798)_XCoKu4~?j3w|_l5DUgT&|*-hFT>$FwYn0k?ZR*FKVknxpk3L@Ww^E zaq)M$Najh=4J%(Yw5C!9w$B}*7tNGPAeCSm3^kI$0n}-t=dw|GuD}=J3JiKx$O5H# zW2lw)*$ell3p8c-Jp^aqZgSm;1G{c)*lvU1IRnMVa|WIoXW-px7SH2oc2x2}*rTMC zq)EM=Pl`vd+v&FloqlIH2!|EiGdriq+& N4Q_x8D-dpDCoVA?v)a_?qBJdL}DW^{HPkH N#1)*kcL!`5Z4=6AeJ2ye z#rASoklfRrdTho%@6e}cNrEXsH_B+%MS#TB@~FD|!F6`~M1lJ&oFL2S@r}5LEq9^e zH!H`8q(=s(aI76aXx(RSer`H2E$NaSNzr7Dc>s1XT7;c&*bl a-ixZY zWnod4>_@A);bq@24RoIfC!xJ^2WUnep7GMfTdZ^wT_nLX21q5n3hPx^Z)2GL_%?=} zqIINIi`?2aUI^-kCaU#FtV&R?7izn@vlw5UG74|QF=nqwp TowYLd<|#y7rp2ar7{+(POSY@pctb< $R*|kDXqT4s!lHciz}rf(o<^WL-PY+D#YsI=0cuTJbH_V(cZ$*J(DCAi|5jY z^iQyH>-q???Q&8tcw^)ImUp$Z_NMf1m fGP7 LyV>Sx7s! IjIcq(1lDs!Or&8@AAH??YZCO-}ve~J49-v_vpL%a1x^&$fOsLBIdkF@)+zS zNI7&hsyE6hs `oj;?C79F4U){3IBW6Q)U|ZE}sA+E0cMumOB7{dB!>( zM6JH1_e>^~D9RF=OAoYPp3p4)6fet&%FQxSmgh&Uk{YY*mR{?O1*$a>%ZSzD-?Q{q zhKi|HF_kK&mWp}@|A)Alfo4E7oAr8;5=F_-9C)NjbAVi9^ML$qm<#b-s%m~Fn)g}2 z-AdW3UoUg!Guf~*nGHU~@3W3L=ZH>CqEaVO`781gQfk~p`w*9-AHgYYCu1nGjJ)pn zWn~6LbVx{pE>^Cf-Jrd5GIXI5as?u32V#Zx`7r4B!{KPyAC7`yI~XV!t`NfwPTJa~ zI(AWh1t+d_PPWG^VH$q{?f9q3J$?lzSb1K>n}}h;QhS$&a~{rlTbH+Wv8Box4waJ8 zUDBwT21;PR1StvB&bk(k$MqtMSAfoByBAlW^cM#m1s{EOS)0{L-h+#Lu9h}m9!R|s zoVR;SGbqvIKNW0wSIa|Kv{Yj6V&iI&dTyoeuB4e)my*BYgFlWR{6S{4<+gWa%r1y# zQbp1wMfM^q5m8pXniE>5H|P%s-LN|xgh4NGSIdVl7dday$*I&m1LB3D#h&}rrgvM+ zDNQ0*SaK*tNTPYXB(7*AW?nZIDY=uq0`C=gufV@u1>U^+RI_YUA(po3?cJBr+kF6h zWffhUO8kKyM#nDj7+X4djF}W}jiz{_=D589@34HSDJ}I>O)Jke6{t-G=B5~5vau {fQARXPJ4)P?r6|+N5v!0C+GR(JbWg9dHC$%^K-&y6KBB=v~s
COXZa?kZF-`*7HdEkCfmhVnD z>V*AHuiG082gANIEbFxQhGm}tp`hPWJUY{RtQ~)m6A2S C1GMb6Q3$@~Xrxx8`f z`vq*y& C-3avqW7No+)88$06fosN)NpF%wuWwOd#dX{ z+|VCnb6YiIlhzC~q2-$i)Moyly=(t%97ods3Kzj5wqqxjA8`_N8kpU~&Kz#~wr?AY z{UJ62wJj$~9LZ}rX$y<_-;c#NDN+wVl61EW%ycZ16e*F#`dC$8d6U}ArUYggOOAiU z $Kr zXROIT_}B?!{mk|n)4#fsQJAO#RCp>_OjQot#@{yTzA4frLd0S?breroannrdD4q#w zoo#4P>&%>dR`c-1*5i_9;nJa}j(}5?nJZbtuYB!W3vedbN*aJ|QYAHNyIFnelb9dF z(p#NTrtcjh-}5ZM(;bv|Lit|G+UxV=&oN-}6|T1kQ1Z=RJ!t_ydJ^dQDhSa31`9l# z&ZofVj4=FML1%c=sACk4JksNgnYhsSOHUkxPc#{XK5m8TUep4s?{vLL8F?r4QfI%f zPbunCifvCRlmcRLu`)0z;roG)GhQLv^DV5UUgPQ7;LBOWcfCdg{5UsP(d36d=ddS) z{`}?d9aR=?PaE^Di0Z4*biNle?>lpz{;cn(Kr^1aR)(=7GB3j@S%#}%W}!Go>`cgU zAk^FLKuAvE0x#^XsY!Ajt}C&WsEd|r6;zGMmIW0c{t8_2SSxAZ_vO;Fmw4hYDamM3 zPT^gW^+M~Bzuq@Rr?#Y)_BFNKosu(Wks149C&z}Gy|N;k65o^?;+?j2f)cz3JO%6f zcy@iPOp@a^D%w-xB~d1?|8oqQ9hTe2R|u;u#~XhgFYw=9&>8$;8IW;Cg}ZsWag=f# zVHGbV_t6%r-2{G2Hv!s0!7lZMKqED)fr6m&d;&n>FKNEtlj%NsUM$K(?B1bBTZyUu z3F8z*@u~r_DKC(}x(iTb!tEkTAJQB>{C**r9&7WnH1eOqX=1=@3fDp25Ihv4yXSDm zM}WxIO<$&Jua{xT_rdg$c|Tk5b`6JXI9vh_FMU`zyeONP2gbVpZ2`BWu@Bd1pfr{t zgH@KTEahZ?ZK`g!Fa;PC4U&6kjX+;eukkW#F#glaHhQGCB p*m17W#NUP>fnHF>Lqj zXT!1Km0 zfh7gSUIM_$xO4Dj72JUeeIx4M(kr; X|U>+WB1v!I6UpCw^A 2tr{Wt-op2Ubvvs~2Tc=9D=@_P_Hyg^m%9K@+tH&E$dcDi;VCeNm z!wT-N{r4D^D99~!=1b7ON~VLe8LE7&Hl#_&NqdxtLb~ZGafRdOZa28Z5@5c-4Xlj- z#%Uar&hq$3X_HdyRN%8!tK7B9y$1`_o9N_q7~($6OT&_Jh`QLy+MA?ck-o0^DV6*A z84L*1`e~Oa }O6+K6&qT8f(gnlt)s7rK?qXM1~A{yimS)Z_Qo_T5? zpw~t*d$wu4OwQ9s+5k&x`?S4arW=A@Gp19Ubz+;`HcK_He;Y E^{Pm@d#_udi4-Y*$CD*iyFy^ zIz6(hs`kRVGy2}baq~UUQH3bnq$Z%PqfYJnhfQ&jyW*b0OtJ2utcrt1mzp23Bg-68 zNP7%f6+l#hykdAkV^IzLBdQ3I8B$587|ZINch5(c{lRGDou6Np$MS 3G{!@-lR395S0lQakpEl z!Jz|Z8)hjGOT|1wz=HBhcBh(0=sVyM60^oqCu 6EIL$7&+ z#HU7d?~O<3kn};Xh3YEetlp?U>JCO1!=BggSFo85cg9&h0w;b*cmxNbE5hP~f|npd z0%%w$g4Do1lb^@tWyl~IX^GvpbQqrQW5_ZR${7Ac60KsbI9Me?hhdS0|4ncbeY+1A z;D&(JJNzGXK+T~dq6T@&`loQUf&ju`zM#2@YbaGiDF>8tW29Y?5?z=!gj57<@bK3@ zy4Jk~F^*}GbMF=|$|2I~maYFxVXW@UVj8AlSl~of7N_9k#@RZas}3A`JL((~bnR|G zW$}6YOXKdOg=w{vH1t&b-BR%f6&p5- EA`gtp58PH#oPmUmO@nZP2xzupRvK zEag(Y9A*9)N5%XW<&(BwRPH@_l<;C*3ESPd3c|TLKS1cR&S1#o=nK8$39|>Cp$62T zV xA}&FNGpW0VX}FeS7ZAVk{_FFXb&eR zr4pYj6T~v?LwIK5`8Pc84@SLF&l`;T1Fv5mW}KIW8UF;CgO>Mc5>68tAnY%fs~A*B zqNW?*AQ4I;8v*55iixHUj^SA2!y0@Dy@Hq{f*xqq&I~s{g_BPik)#J5&G2AIg=i*t zp4v>Q<+me~eg-;INI65oJS3tb4-9Yb*7t3`WxoUqtX&4{HJr2p2#5h*t$lEK)(Ala z&cHR|DYX1dva`^ki`29D&8;Z>s6(dS9)G-7{K2l%+VoNpFgXlfQO+31B4p#?)0s|g z8Y4v}QaLD-6VU_z&={U^ n4Sy!tNaH7=4U0$|rdpxK1UO^3k8Km@ Ad922ca&oOSWxZGHnhS4x|NkclmSP`+tuKt|@p59l zX?LPPHSKx^s%a-t_F7)H);P*>x3;Uc<>dum8MHTHG=KA>o!6E@s8b|aO3M-DVP;pA z{taLdFAL~Y8?}CJ$u8;jjgR&KGSxj3;%c~ iiZ$VRE} zq5eX%tRSY%Q{_$XJvuS^mV>)w8ypj`D+kKJhg-fOVxpsd<9~bFFW%&RIm*%AI`IJO z@+;)$V=If>{>Ydmclh=>xwzF$j5W8cr RJB+jq zQ9R3QLHAx~3>QN}8A|w${|!JymPPY!h4sEv -Y%&15(Tub6c0ISLj5nFd7_fVj{56VR!z5L{h+C`I z-?8nDchQmHj{TZvgL6HZQj?sGP`2@r&c-s Ff1J7w3cX(ZxmYvOl~y zFCUmT=hx+Y0n8&=#BXbHE%)+z=~K}3YVos@#yMN(0;89bYVU5Y>wHk7-f+%(g8 zu?Q)^dx>d!8sgfw3?i(UrU>#}*O6v5)cTHdRh!GX7?Y72qC$<$+_tFyvJ1N9Jr+0B z@LLfEJ3^nVGIJc635MHf>c}zN&(ARoLOD`{hWrT$(!Wr%0Do2OC(|Nr@gG7&lK~1@ zevi8bTZ*j%HzKByh@XaX^#kZd9eJUxRB2Xh>m$P27Pvi@YA!P{A^?>=$$EF`=}*7& zX{vl>e|q{aUeW!(1njwH)o*d@kNTN>kvdK*=H_;zJFGN2=y{qqZQdXj#_IefDZ)-y z0ohv`9S_8S@~gJYX;!QTyV%x 1 z@S~^yXf+G*zMn9^+qRDJPY^Vufc+M6-pz>m4l8!T8&uy{o(yqkVwRHtt5H~^xNazK z(J4Y{FxT}B9tq$T^`D8e5>N8{d*?5I`}IrbFUQJ53g;vZGv2MIL82-snTe`oYd)+! zV&J`sF3mP%tW&Q7e`e~^Pw_0Ahrui-geK#V^;%9?JI2ra9w +Lfwly2A?{Jdc`=dQ3C zJQ=om4s~RW_|%a#?=7-MX#Ix_v1urhgmONfH{VsP%>{7sjRxMu@Z77AH+j(88MoaB z8~=`gmOJ3I1s#>6HUiHiO-LIQ+(_fQ^NHD<=WkpGNfIn5)i>zJ;S2!IJVp57uT#YG zueT{*AIuvShY-k=tj)5Z!3&ruSYZsK2WKCTBZd$Nb}`Hzs#S%VTxJBEeZ?Ro#M&wc zShW?T#$9D_S57+Qx3`7-rZ4Mlc*Oa=)l{`yz2H`@u4n;tO#lQ5MXT4^VcLNNtlseBl?Lx6fkl?(J#HmS5K`fPkN7L%?;P{OV7TWrV zABIKRe_aLsqX26_l)ru%?%Q|}+`f$v{TV`VP>Xk1FAhpnD1W4wNsKnrmks)W$4k~x zO8(3{)1GZO>b-&GYU3oDZIqOPe2x@ldp5OwlTPrL*-RQb7=nj7+EPF&y2oRF!P@im zv2mj#_5#A9n;SSw?*No0e?f(t9>3Cq3zJFHl>nLE-U>yJ(BHynX5D;bA)S0tUT0f= z7_BoPicG~eYY84 {rSd&Vz0DwsW zcf f70rdS`XQVk0w*<)h;RK60@zKIRPMb5mh83ScjTBEF)(tP67Vdxrd zZhEcg%2@Z@?#A8$DXa8RzlowuXKzDiWI}Fqh3_=cETX+;g-$8=0ZBG-CJ#^wR-c7R z