From 1ec5818945670b19e4782070d73cff6937755e6b Mon Sep 17 00:00:00 2001
From: Daniel Smilkov
Date: Fri, 26 Jan 2024 09:37:31 -0500
Subject: [PATCH] Update readme.md (#1133)
Also render dynamic number of cards based on screen width
---
README.md | 119 ++++++++++--------
docs/_static/dataset/dataset_cluster_view.png | Bin 294615 -> 281408 bytes
docs/getting_started/installation.md | 38 +++++-
.../datasetView/DatasetPivotResult.svelte | 5 +-
.../datasetView/DatasetPivotViewer.svelte | 26 ++--
5 files changed, 122 insertions(+), 66 deletions(-)
diff --git a/README.md b/README.md
index 52103dd9e..0b864a6af 100644
--- a/README.md
+++ b/README.md
@@ -23,21 +23,37 @@
-Lilac helps you **curate data** for LLMs, from RAGs to fine-tuning datasets.
+Lilac is a tool for exploration, curation and quality control of datasets for training, fine-tuning
+and monitoring LLMs.
-Lilac runs **on-device** using open-source LLMs with a UI and Python API for:
+Lilac is used by companies like [Cohere](https://cohere.com/) and
+[Databricks](https://www.databricks.com/) to visualize, quantify and improve the quality of
+pre-training and fine-tuning data.
-- **Exploring** datasets with natural language (documents)
-- **Annotating & structuring** data (e.g. PII detection, profanity, text statistics)
-- **Semantic search** to find similar results to a query
-- **Conceptual search** to find and tag results that match a fuzzy concept (e.g. low command of
- English language)
-- **Clustering** data semantically for understanding & deduplication
-- **Labeling** and **Bulk Labeling** to curate data
+Lilac runs **on-device** using open-source LLMs with a UI and Python API.
-### 3 minute walkthrough
+## 🆒 New
-[![Lilac: 3 minute walkthrough](https://i.ytimg.com/vi/RrcvVC3VYzQ/maxresdefault.jpg)](https://www.youtube.com/watch?v=RrcvVC3VYzQ)
+- [Lilac Garden](https://www.lilacml.com/#Garden) is our hosted platform for blazing fast
+ dataset-level computations. [Sign up](https://forms.gle/Gz9cpeKJccNar5Lq8) to join the pilot.
+- Cluster & title millions of documents with the power of LLMs.
+ [Explore and search](https://lilacai-lilac.hf.space/datasets#lilac/OpenOrca&query=%7B%7D&viewPivot=true&pivot=%7B%22outerPath%22%3A%5B%22question__cluster%22%2C%22category_title%22%5D%2C%22innerPath%22%3A%5B%22question__cluster%22%2C%22cluster_title%22%5D%7D)
+ over 36,000 clusters of 4.3M documents in OpenOrca
+
+## Why use Lilac?
+
+- Explore your data interactively with LLM-powered search, filter, clustering and annotation.
+- Curate AI data, applying best practices like removing duplicates, PII and obscure content to
+ reduce dataset size and lower training cost and time.
+- Inspect and collaborate with your team on a single, centralized dataset to improve data quality.
+- Understand how data changes over time.
+
+Lilac can offload expensive computations to [Lilac Garden](https://www.lilacml.com/#Garden), our
+hosted platform for blazing fast dataset-level computations.
+
+
+
+> See our [3min walkthrough video](https://www.youtube.com/watch?v=RrcvVC3VYzQ)
## 🔥 Getting started
@@ -47,13 +63,16 @@ Lilac runs **on-device** using open-source LLMs with a UI and Python API for:
pip install lilac[all]
```
-If you prefer no local installation, you can duplicate the
-[HuggingFace Spaces demo](https://lilacai-lilac.hf.space/). Documentation
+If you prefer no local installation, you can duplicate our
+[Spaces demo](https://lilacai-lilac.hf.space/) by following documentation
[here](https://docs.lilacml.com/deployment/huggingface_spaces.html).
+For more detailed instructions, see our
+[installation guide](https://docs.lilacml.com/getting_started/installation.html).
+
### 🌐 Start a webserver
-Start a Lilac webserver from the CLI:
+Start a Lilac webserver with our `lilac` CLI:
```sh
lilac start ~/my_project
@@ -70,34 +89,19 @@ ll.start_server(project_dir='~/my_project')
This will open start a webserver at http://localhost:5432/ where you can now load datasets and
explore them.
-### Run via Docker
+### Lilac Garden
-We publish images for `linux/amd64` and `linux/arm64` on Docker Hub under
-[lilacai](https://hub.docker.com/u/lilacai).
+Lilac Garden is our hosted platform for running dataset-level computations. We utilize powerful GPUs
+to accelerate expensive signals like Clustering, Embedding, and PII.
+[Sign up](https://forms.gle/Gz9cpeKJccNar5Lq8) to join the pilot.
-The container runs on the virtual port `80`, this command maps it to the host machine port `5432`.
-
-If you have an existing lilac project, mount it and set the `LILAC_PROJECT_DIR` environment
-variable:
-
-```sh
-docker run -it \
- -p 5432:80 \
- --volume /host/path/to/data:/data \
- -e LILAC_PROJECT_DIR="/data" \
- --gpus all \ # Remove if you don't have a GPU, or on MacOS.
- lilacai/lilac
-```
-
-To build your own custom image run the following command, otherwise skip to the next step.
-
-```sh
-docker build -t lilac .
-```
+- Cluster and title **a million** data points in **20 mins**
+- Embed your dataset at **half a billion** tokens per min
+- Run your own signal
### 📊 Load data
-Datasets can be loaded directly from HuggingFace, CSV, JSON,
+Datasets can be loaded directly from HuggingFace, Parquet, CSV, JSON,
[LangSmith from LangChain](https://www.langchain.com/langsmith), SQLite,
[LLamaHub](https://llamahub.ai/), Pandas, Parquet, and more. More documentation
[here](https://docs.lilacml.com/datasets/dataset_load.html).
@@ -106,13 +110,7 @@ Datasets can be loaded directly from HuggingFace, CSV, JSON,
import lilac as ll
ll.set_project_dir('~/my_project')
-
-config = ll.DatasetConfig(
- namespace='local',
- name='imdb',
- source=ll.HuggingFaceSource(dataset_name='imdb'))
-
-dataset = ll.create_dataset(config)
+dataset = ll.from_huggingface('imdb')
```
If you prefer, you can load datasets directly from the UI without writing any Python:
@@ -121,26 +119,41 @@ If you prefer, you can load datasets directly from the UI without writing any Py
### 🔎 Explore
-> [🔗 Try OpenOrca before installing!](https://lilacai-lilac.hf.space/datasets#lilac/OpenOrca)
+
+> [!NOTE]
+> 🔗 Explore [OpenOrca](https://lilacai-lilac.hf.space/datasets#lilac/OpenOrca) and
+> [its clusters](https://lilacai-lilac.hf.space/datasets#lilac/OpenOrca&query=%7B%7D&viewPivot=true&pivot=%7B%22outerPath%22%3A%5B%22question__cluster%22%2C%22category_title%22%5D%2C%22innerPath%22%3A%5B%22question__cluster%22%2C%22cluster_title%22%5D%7D)
+> before installing!
Once we've loaded a dataset, we can explore it from the UI and get a sense for what's in the data.
More documentation [here](https://docs.lilacml.com/datasets/dataset_explore.html).
-### ⚡ Annotate with Signals (PII, Text Statistics, Language Detection, Neardup, etc)
+### ✨ Clustering
-Annotating data with signals will produce another column in your data.
+Cluster any text column to get automated dataset insights:
```python
-import lilac as ll
+dataset = ll.get_dataset('local', 'imdb')
+dataset.cluster('text') # add `use_garden=True` to offload to Lilac Garden
+```
-ll.set_project_dir('~/my_project')
+
+> [!TIP]
+> Clustering on device can be slow or impractical, especially on machines without a powerful GPU or
+> large memory. Offloading the compute to [Lilac Garden](https://www.lilacml.com/#Garden), our
+hosted data processing platform, can speedup clustering by more than 100x.
-dataset = ll.get_dataset('local', 'imdb')
+
+
+### ⚡ Annotate with Signals (PII, Text Statistics, Language Detection, Neardup, etc)
-# [Language detection] Detect the language of each document.
-dataset.compute_signal(ll.LangDetectionSignal(), 'text')
+Annotating data with signals will produce another column in your data.
+
+```python
+dataset = ll.get_dataset('local', 'imdb')
+dataset.compute_signal(ll.LangDetectionSignal(), 'text') # Detect language of each doc.
# [PII] Find emails, phone numbers, ip addresses, and secrets.
dataset.compute_signal(ll.PIISignal(), 'text')
@@ -157,7 +170,7 @@ print(dataset.manifest())
We can also compute signals from the UI:
-
+
### 🔎 Search
diff --git a/docs/_static/dataset/dataset_cluster_view.png b/docs/_static/dataset/dataset_cluster_view.png
index 10512a0ab4621227322cf63fa366c625396eb384..797db258edfca30faf5fa15e78a416cedaa0e254 100644
GIT binary patch
literal 281408
zcmeEuXFOb8*FJ(M5fUwe5E6tS(I$FJB8eyoqu1zV^j;%^h#;bOBHCa^FN4vNh~ACf
zOBlT~hX0Y=_jBi|Z{Fw2|I7QuZ)Wy6`|Pv!D%ZN!+Jco8<;X~`lHlOrkUf5M|2Ym0
zX*~`O0S*x%@CzUJh%yciUW$dPhLeWEQxPLu2#=w$?F$ngH;5fDj)Nm6>1JnWWM$&S
z{KCY{!bY5By}FKt*}_KV-`sX5-~RsU;>DV
zlOeMk#M;JD#7&$GjrI=d+)AS(txZ;$$VxqM@M7ENkmv!YssdhvyE91PQa4gR!Z|
z^ZO6~xEc5+&SLK5WGBMQ>+0&ttM!vS6En>_YNN~A0Ibx1-GNSjgz4pw~Zs~
z*%UwLxNqWUu!EO+_t-T5)wU&9)|4D;W)bMMFS
z*<2#eO&o2lozK<|wy^+K&G*-k#$RK=qyhrGcmEpG{O7SVc`%FpcqZ7<#6i{;0<6gC
z$FD!-ByIi2x1V3FEzX1^Vr^(+CeGrESN0W{44P^kc=uxT8e3z8PH
zvdWKTWto*7Y)vh!O>l4?1xKr&*HCGpNzwlBUdkL7|I_OU{7biRKfUgjStk;bxy&4O
z<(%}Fu-lxKG^+RO17UADG;oVpU1+{c(2|n0A~XuQY@bV^yyra^F$)u?Cyon}W}V5}
zgg9lC3=tgk;PcFKaqMBlTN&X>PqHFCaPUfT=_=28UIeLse)pE-Tz6onZ-px;4OE)9
z_q@P&?^L~SYSXa_hxr*r_Lf7HFa;A14t(M5XLlTm%$ngHu?VUr!qU%oq~FlW+anm%
zk)^azZ5dtoRfMS&~z#LT$%^n){d8rNWb!G(9pAQltj478L}(Mk^Ir;?MXfl
zcFW-xsisC8`70hx3aA7L3McIt-cAi^k2)r(`e@zRepgsCOa|eY4oyB?x8G1i^Co$~5YCL0
zq09ZaS4s+$_{G-)x$u*(e=};9&L`b`;bS9}-)I);X8DeVW+aZy^e*+WaF_;-`c<^w
z4X%{jZr|hvGp?Px1Fzmy-hXq8B5{%QG7Ga>z|eINmyqf-KaAO*`tBTS%;!hjprCt!
zycf12(ME?BGxb*jd><>Wb$b;l(BZkf##?V|dqWz7I&U@WV0_qAWe|HPV|x7lqNJ<9YY&SrX-?hxEX+)0++-DO9c6b<
z3(pOYu0isnqrq&WSBYWd-l?b08*JyD>y%jrH)Jm@S<0q-#`!3DH}1-#(uQ4o+c8RV
ze>wf3Bs;=234!qSlh@g=6&qO_on>gJ_o$@P53+AJNz?X|tM;?(Hfv4ADEATUH`S(z
zsD5>}^EL<fvjjH}Hw6OJ1r69a?TaWbj!#dj*{S#yU=OHT(E?#Gk*nY(BK=1x$
zhXo#?#1RNh)5^JS865VIj)Riy!EE@YINgKVfejE+0#yA*I-iyV%HXD
z`ZlT#p4VKS^aIU64#3CPC&GPMm5B-QMPHrwQ@En^i2W%$6=f^&DA9T1?CFwz1vj}H
zm!03J-3J}qX1l~6T=GUf7#&RZnewyZjL{5E@cmxa;fR_?5jQU03RiuqB{%XwL=hpg
z%;v59T#Zl7;W>%w6Sd2n)SS^=tEwVdP7jvid(DbPhF`5nhuzrz#^2J`qTRwhCqHMi
zW%icv%iEa;!5PNSX_PrRcBA^DJflFZt*u$DYpp%4c=Ly?)UBRTUAH7vPjWuyzQ}8Q
z9-qVVOf#!kcm8!NBpRg3Iq+dwULkAYS?n{b-0U3k941u@=tZbCIAvLEfOFvC02h>Z
z;F~3l<Zaf!W{Wt7`A*fOXID^Xeu?99Ft$Qs9bz#8)|hsoaLv*&mO0*UY%zdTMj
zjz*;JeD}ch(DdNiP1spO&mNT@^&Iu>g1)B?uG8lV_B!5hHE#Ll&ANUijj){XE@8=q
z@++nE7p`2TBcywK0Y#U>x5D3hcT2EUKnvp3o`Z@rU4h)bqX+RCI}p}Q?EGZb$Mqeu
z<3o8a(tt9!#WeC_WLK72)@D{f7FpJQ2Z!l}5`mHd(*jfM!qJIof9H=7KQSX7ey&I+c4_Chb=2+Uziu=)SU|{vto4#ZbsKOzUuG{CZ8pVGL=<
z%`uY*`MfrDb&z_IRjm~~u}b@`cG;*xAPwu=qA2^$k|ebee^Mhk>qv?|b>~{4~mj*Hhh7
z(G8&CKx>}rm~o~V8b0<<+^RPPgi85#p2b1p?&aTPAR{N%r}p7(WRbbjLq*Io9FfPe
zE~oiGAw+~h;a%8U*jt~g{A{K!?ZX;cD^WwqMe8%iGcnEMp%r1VpDWmMZa#gQqu`eM
zJyj!SNYH2JKzNpyZHb-uLqg=^7UGuC59itNpK9=@dwy*DJQECJ(^N>fyL4=fZ5fUX
zSA3S(7+)+I@cu(wG5-LCWK}-?Ov(W@nzyxcSP@2UzfYZesl4?vP#@d>qJWd=db;W
z5y?3k{em4vBMBDR8RgA#og1#tZ5&f*jw5ViHROFF#M<{e;jO24#0`&5=&tg=<{vQ|
z>D1xd)|57Aur1lp9Mdc)Q849=!`fYR>|Ch&Hr8KNu-(2u-GNSF67X%tYkieZP)935
z6GM&EjjJro{8ni0(=)68$|sjgjhlvcQfIEpeD;M`k%4{lha&kw?nAXkt}5ka4K2MR
zlUuG!0s76yTAS#p;!+dFHr-fT4QZY0I`&4HU9F5JS4{{^!qo%dmO2Xhy2VGU3Ad~|
zV?|?ab>uavQsR!qpGKf~xeYytzJgDHSKJgp*{u^kkqIo8!{Q
zg-e4AX&s@0F@p2jZ?v~6#Ksc}cUNrROa8VIak|xqQc@BA!RmYWujy*JaAd`
z4d>cwwlze}sIRMItv7aoFgdVS+#uYzYrFQAr|k;qI0}(kRCn_7i{G+;ssGK;N3-o;
zPqN-+!4^I(bjn^2($W^wzIe^$UJdq5O9V7yL@t&ogMmv#$gO7Tpq{uV7#X?5&Qzgj
zQR``WoNEQ?fiPyvDy522x-Il;E)35u)^suouiKw=6MPNG3W3qmkLr$)pR8?R8ZM&3
zzRKIgCh%74+bl7l+*jUqMMtV*;VD&LkuIAapLaXyH$gVzNp2-*nsv3V)s<2B+T7%!
zm+OgmW9IB4vte9YyWInEG+{*VF;t0{v?TZTs-OlTGY6{4<?kosmtfd@y^Qj4(}&kYJCW@+=~?JVtdETPWkgCN8>uYE7s;(
zS8?DK=cE+yUJ~w`MG2wbbRAHCXj#D00!Gkv~2;d6;q3*ld4)hrhkOXVEL%xL0RUVt(&@
zhdB}ROB}ra;!l*F-`330d@2?~?xE3@BEA|Vd7SS2y*oY5qy7acrQ0cXAJY5jak=dz^7Xk5
zoov!b6NaC1*(9cT8Qv9~`&-UCEsAt*Zf@v%PsZ%T6M`uVAXrEt2xxe8%wzRDa=A4M
z)9ODuCtu|^edj5Ddc3{YElWN;Y?i8PAVT=JsF
z3Y{v4fH1SO{d}KOA9YK``e0+a+@g;SgudI%U=*wGQ{}ue)MMG7W7rnMT>`H=8370C
z1KWn3p{=uuy46wg_l?#R^B;oVNbPgzUFC-
zv^aeA=kub}a8tg3wf1k12K@Qc-^BE9<1iiT#y8gRq2t4CU0)`*DL=gF{SC5~*4E<1
z6wgkCGkSqg^5kH4I^*!&pL0f8;^J*&dh8e5|JzA_9k9#6x2awg5?!y^Ug?$REi2Hj
zc&NMDpQ|!1kYF?SEh62*WqpG2s)WthJ&@P&!KO>g&Dfz!atwy6BV{G&vOx)W#fc!>
ziyg7;K_+c6!{Ym6M$JsVHD`M>QenH!DL3hZSuHp3`4|_H#Aos(Cmi7P%k8FRs<%5u
zS3grKl`eE7j*{}$C>u;fbEzXNRO1nl(elAED|OM;(!Q0$#ncK$Q5UMX6kMVxu%9<(
zZ@7)OZbj%cCnKzw>0~45!E;rpY74CH!~--AXe#7rXX$X^@j{Zq-qFUCKRE*3#02Pq
zmp9RAvG3_gx1e!<&a>%^+r{uLxA|!Gm3RD|g^I}{RaVXMW+@hc79jw$XP>O;L4NXB
zJ=`0$T{V-$#520jMGPXGtz5CSvtgn-&L`$*d6S`cbo?u=T<}sK>`|37qxVkF8luW$
zcNs4P3p_Y!8d$n5;v(%JtZLyZXw@iOTy4nso$L>NWM(DcG&P1V3H+8(Fe^9W2a+?{
zu%~(z-)e_Zm>W|#txweMjZU5nQoT~|ewJ=GDPXfQRJ4XRiPbgrJ?cx<85$2qRm*(v
z_~AEBFzec7mIIA)&AaY{`I=c27RGOU_Ev_oQ1ZOB#ILr_X>=i2L8}EsT>vRC^0zLHv
zYIU??RLS>9WgB$vkXSG@N#J-oh-uHCv?d$afbSXME6tK8MYjsq6YEZpN6UG8b*I=a
za>YYk(7AE1?T)PaI$OYB@YhawZ7X2rB9-#(XTSPH?Jf_rLF$gO?i_!i)n~X$dm;_u
z$1X~q+WW&QXWni+^LqGWAJSBbC|>eXS4V{Y76$ig;_fcc230R*CF(fuo>^e0_`Z(H
zO|!`q_XRpyA9Xt{+!vb{&8t5V-ntJ{K3Gikwecq;bHLs5J9j>zF_ZP-JG<%qcz&}H
z;5w_mt;-f%YWa5HOzKDKUtGZHl53T-I+CiPnhpD3LTIa{GV%5xBc;JrZeT98E8u~(
zvQUzVa?1fu0qoH(dfcIuhg%MGp24yGZq~HE*Ji-2om>hu8EDKPT;j;wTtb3bS&g8v
zX=1$EH9S!obxHjC#~ihO;lxg~>@)9MmNhU^eV@b3>cC}U%4AVjm+PlMKZrnsz+#1M&
zV)cEoWqCI6#A{CCY6L)XE@(Aa>AYl`-WttSJ&>#9f1cb0L~rhvk5ltCcOX}#Sy5!^
z#(wZ0Y-U=QNs+h#x2t^>M-rL0Rn!;?Wq~VOi76N=
z1azwxXqgNT55tP>+zhXRtuKK&?OvFh3vG
z_ck*wJA(Gy3LQB3C;_*W35+
zUjlcj-}J6^aBvtC6n7}o${G<~OlndQVzEE?5eStz@jp&J(cu&d{XG-F#s5HAxsYI`
zGoTMX3ElMo#6x;p$Ilt;3fHSetkxgfj^DhI4M5D7LUyj}6LuuOFKZdAxOwR9N*&!eU6^qa~YbtLx+v2h5ZAynBS6
zCJJ?sscWPJ{s_TR7F5hQ`d9ZkM_>OLlK-PZ2PsHJ53D0GHWepw*W5p!94|^%zps!f
zfKKSC(%-W)XvfLN+k^JPguIV-KGINMU6)-*(7%4Hp+Fs0Qd~S{E~!*%5p;p>GNh1x
zp(!Dn6I_h+#(Yic3{Mnswrsb!;wPnfNqN_yOk>(LR7FDz6|2DuCJ7%P5jDeBrNGd#
z`4XQ+kNZ`W${glfA0*dE`x6dkD=~pOgKDs^bM-ur1;H0RoU-jz(^{3vGhh`?
z-cLKv+$Q3@JOm*1V`!vDxS1&S6?LcN(f16jdY_8G31;$iWT?nU_nyS@*I?I4ZeWNyouGcwVV8eB-y+pL@r6fRU%>9V2ZgCC~$TvB}PZn)c4E=M9Y%7$kf;
zlZ5RFra;z1Q#7;^wuWu$L%m&;RtSwIYSaBy0EO%`k$R_!y7J&2$OK%`93k+!xxuYn
zKJ+z|zQAT2K_KJ~AZwS_TiH}sVA(Pp?{tScxCu;2=%>1NW$nF*v?1-`P#ryuZLI2)
zcXJq{TA3vn$&=K?XtB1Um?4_feZL)ife%>!j7iM!jk>&Drz4ei%Pt1Ic)T!@Ayt*2kHlP_
zmE3$vX*AevU`uzEV$%>ipdt#E4bFusBIlm_JH;J8QY@o4??HRP+@y
zjUWV4hH+o+jWzhQh`xi>M|&fE8FJ(mu#XHvwiDKEvAn$9@cZXKdlsM^yeAt`)8{sf
zzP>9;N@CbI3u)Z2q}6jXJoxk{MC&JJs0=OdhtSafo{TKoRnRUSK4I`Tw7Q1#;VdMo`We#n;`Fux7!j3QYu6un(>H9LC2u>~nxNH>2YsU(|
zDZ2sYR96E)gyB+)zO4e#vAh_D&Fe@bmHOpmIYc|ZC*4TO@8lcFM#5u|)b3JWv+)*S
zO_k_^6rtw@T7sh3ojxO;*h@e2x+uc41kjMTnC#a)@81#=$}jNOsur&$O8O#6Yfsl)
z>-Y&&)~nYgP<5aQx26f-Q>+XIN^z8Wdc2s^$1!)X0HnP3Kpqw1r~mgL@DnSOXWP3~I=;77T{(r<=Kl@bRV
z2aN%w3aCQ!RRGC_3su$^s_VIbk-)5!;57+O!K&Aafi$$rUXIaO6>0Ijb}#1@vT@e3
zIMgM1tkBSZ+^&i2a4>O&cHH`tm2qj-`#M;JWq>Z)JJS{Hvp+EDyW!8I0VEF@+%blK
zNb~BMG)>iuum6@b-}CrYIWCTTdK^jOt&k#CRlf|lS+gz)Og_C2K+9+Y@p;UQptcLh
zllC>!-2ym_%76$mqJMg%?m6Xm{wY@ZjC#671>Ha-aGsu=?AN)b&K`z0zV8y>Pddw<
zOuJGb>N@rT-kV=&d6Hnu4a*gH70_!sXOLzg-s~xLZlnc(yGwmfwo`3%XPd(-QcrfW
zvs{^8>z9~@j=L`=yR6slj{v#r(}CBI9F(64-gXsusS2<)R+kd6o+pjwv
zCurSY9bI&DIysBQF2g3V!@j2&eULQ(i}y-Wv9~RdPC86L!aILd0Np`Eu!-TrA&2w4
zz7~{hPv7K)hth*w`cBdMr+g520!$lm_YsP%Y`aTxl4|FoEr2ZM(yZXe&Z`5?4()Mw
zVU38CmGne1pPdY*s%+yMp57PMZ9{0dbqG!qZ4fQvE6k$e!m|Yx6AtJ>K^4&b?_D1>
zR+Ah%?NK9LlBZ*90Dc0+lYePW2%7%W3j7=zn36E^O@W2KX9zE)IPpl#fJ`plp7*2I
z;TDi-LA!Uf%dLxmoWC=MSKo%@ro`b~WV-!Pq06e4C=lv(-L^{m6dkYIOZqiNpBcJ7
zcvszUpSSL~*Bh=~0fUTH_9$7FS)s~-lZgJ1Mo0cQ=_Bj
zq0?MbONlc1BuT9w0PuMp|6%CWd6_vh3QiuuF;DE`!14tqv-x7Ztjb0Vmqy2UL?+(t95x&Kb&XT9P$}E~EUmu-eA;0I$
z^^@10G$k*pJlMb2&GAY?oQJSzSQ|GPS`9O+p?&F1o%WQa92I4JB9K)!OFsA&I1QuIRxI-3le~-F}TcMYqb7opecFs;$^)@;Wr)
zu#uFPip~c`(qwz1Tj9a$Ny-Vb_8B~Fnt1#kzwLw=
z?J@vIof}bMsxWcr5zOjSOgdW4J^`J}pcR`!^$~6VOlgQ{a{r9#_>qrw$K5r`2e$5S
z?59*NRgMN{#oJJsKUv@ZtV2)yqyk8&^MRfHQhbxdk;W{Izow4_MQc_s;ic>KFs+pM
z`vPt4MHBhmqqNptApd$?)uySbnU$?_WAu5|-uFPpfVExDwX7%mBuI3$x#wJj+}Ldo
z2b}5s`@3=1&T6yFDg;2KbvY$t^0%VLpF!H>xzxZW@SYFoK{iRFCugY3q}MO>2WiET
z2$Wyj7JSU|ehVi5DG9!(%Yg7T-OJQ_76^qzVct^y1VIb)js&4%!rf(!
z)e*tlTwHBb<>|kQu0H)zw{DfYyL(Jx^}rxx$e2qFRz#gQ7^pUpVRaron(g^r^k;Vb
zpN;m%Xls^KJV|}tGA3>_(i;1fp`xPN$=XO)w2V|{U9fFo;_r-uqXDm~O51uNi9pC|
zjRnqQ6}C*B$@#>3syA2@4Lq
zb)CtJ?`y#1Xt||L^Tj2rc|Hf%9*bW{gVwD26N3`D@OX35*xR6hDc?KRMA3kINUvA>
z$-Mls;lD2N&j(7;(Q@e1l>4?HJWk)h*uS1^YveJb|I4#HiGOKhFktIG-VMzbSprFr
z{bt8W+6r;h5zg`F$9)iBd-C)_qhKFi&+0htpTzqQvrpS0`fj0k1c6T;92F@2tc?8W
zuKv9aaA@OYis01UVn=0lBrWclpJsR@Kp*!0dIPf~!A_!H-Ri)Owtn5=S>5tqz4|}>
zW+IoSdVb2RQ}6qpacmeQ|5=lVi5a{&^OyUhUf^QOQMO)!r-^k`wmgYHDZhW3>6bfx
zKAVC~+49^*waa>W)i!Ol!sl_ZKH^LtMJQor1*
zY?XY^u!N1Qz-2YT#K^Wd`j-VnUBblz^8$@+C|lpFzo&gKrG_bTG_*jDy9v8CeF=gP
zRV`4&>Mv0>?J4Q^ij%isD}_4jXqm;cEbbwypuhN|6-xPFBR1E;Opxha)R@mbsq}L>@{=^h4}RJHUv%G&gFw|;b9x^LG1@?CmH#A~Gss~#9}wKz
zXHuY|?@5F5pz_<=}?*98
z6!m(N{N~kV3Mbg{b&d0Rzr!2?%JU@urHqCpuqWADp26etP8a-kh&h;{+qxa8r%T!%
zGxA&BQ&*!Z86AN_leFIlmr&C6^c0sO^Bxx0bC;+0?dT-T-o6YQ1@xzCR->7Jb%Qu+
zgk&QqJWBBQye=DY4qmPnP(tU=9o?bE#eYuGeTekIdZ_!|3;6QML=7fwVQ3664uIeI
z0JBGG%g5X<0xI(eIAU7PTUBt?Vg9(J4jWa&s?0~Qw?4U^qV+y85$z+(K~(3tZ({`r
zuw}*W);cx7G9&$m#s0Nv{)4PIbn4Za!9*c|TA9e!r>>tIOD1WrVx}-o_b`o!OHyf0
zL`btDF9!UebQf<50oy|rrYcC$hD{D>oDD;2!_J1F4q6~2L>43_@$j!=FCo;b|
z{A2so@a?&nMx7R*`mFRY)cv1@@TukS*~tPInsy72v`?tSLFxMAqeHNC=uxCc&_#kYS;fBur>AD{eQ
zQ08b@%bPY__uHIp9z91cHibl&*n-CF{4odBlh{u38OHzVMgP^y17RT$sGnT9vveiD
z8v}3+R~(=DBu!8UvJ){yzWsv*{l)M7{dWB8ftS(E%ve0=mQSbf;_JqBplDwV5F~B2
zK)Zy|NoIF791l)Wvp@`|NIgj@y8mCv13)D?IQkbbiqbBE1e4$a-Sr+Vw=b>)Q`A1{
z18xEHzl~G=!Mh&<)22?c&f88;yAli=1xz-ne`2nIHd<-vi%WQUvH4CEJ6Eqx)Uro{
zu0y;htN6RV`ig(4Ew>(zDWA_Wk`CB~bc~R}y7U!~c^LCv&;>~woStBXrV}mpHqBE|;YqlK%qWfq<6brylXGDFs8FGxnSkCBL6q{TMPZF}z|VNYqk5`OYuL*%~}
z^{+a2Q}HFqhQ-)T=mZR>T8j@nCK!&lgS_nJ7H}ZoQlddy#%~*|ka!mrU=6ZvFVn4d
z1qjOde6^0NYIS<$Www2dXV@g)nHQ$Gk9m0fgNzm^QRwVjg)5yws$?NZ|a
zw1JC@0(ziUr7?K`sbA?;#
z$ng1na54u*VcM+&Zj}6YfZ-ps=%2p=b>m02RU^e8X-q`HSY3r_SEd)?e3}t}ZCo|>
z$R(-KJ4zykI8(Tt8qc|nmYAKDktRHxRt?DL`}qlMUFYV9vywW5j0U~-B}_)FN6Wpd
z$>`jS*{rX6w=4U(lhTYXaF6Dn<)2yLk_+Q+cbuvphFZEbXg1wuue_A0sZ5;YazNm6
zUa2|mnhxc_@<4|R{F`1C`-A>`8|v2Ba1p(M@x@Mk1~J174`oKA(cFsH-@5(&wcGfI
zX5?p&D$s>mJ8NcEF1J0z@wc-FLjvvzXl
zchmMiAnnX$fPpd9WYSaGej&dz160zC(1W%P-qz#L+<_Jtby*$s!sPn5H8qJG(;8c#
zQ?<}dvw!Kzn_sQ!pZD^Q(H7EUpe|hwH0|`9@!WH?jY$@iad!+~CA&_zpVbA}YM*k;
zVs?NUkD>=%``M&aLG?gC!3xlsQUY}8b!R<||FFa96x#2+22lA*e_X_@>;lyHlNGop
zxE0I@4uBqls?IFO_%BtvqT4P3H2QEwm+y|HE?@N<_ZqFVa5Q+2F0TOS8ME#xBl?Pz!WQxtxz(6@(Kr#6)YJo>%
z23bMUc?uJ;d6i`~q(1r7IW?Tl$=Gf})j3s?9vi(%Vk6eOnU!TU&NO@E(^!NpaL9ae
zbVXf${$TQw4wJKu)u}Dfp7$B6tC&18Sm?uu?kV%fTvKO{Bl?d}gSh}NLoU4hEary^
zFI=hKYUS!fSkuH*)&r(t0Td~Ui;S8_3Jsg`fu?F=USpsoau1;0@lSnpdw}|ynpBevY%|BH57BF5eT%qoi*^C_T@PGavz^3uQpdEE^wJU(7Syc`l%#7gyf3
z^ZB6ywalJyCtquuDXa1fz!=9K=&EjsYLq+_q*Yd@@c9BQORtCIr+|oFMFf-)gv1Pg
zx1XF#ypO9;8w1xdsztaKvwFIAfb{g8K+~Te^ILyiIXwJ2zcyi6l~{qGKo>J#@NO(R
zm;XHTI0)HTKvIo@fmw;hZHtv2hE>!W;(`gHnnn-c*_HK<2X_dhcAp!R8&POo>#uX|
z?=DVc*GMY2-|US}e=tYjLsG-33NOrig$gcrmwuz>rwN`Xw;lCg9W3Wc6SMx#Oq+j^
zNk1tyV^t~O{cdk1fpn_kJsT-M10Oz&%4h-h%7oK7e?3dlS5ofADpSX`;SbOI&5Wl%
zBav7ii#N0Kr>CUh)-+^Ky~DA9eCKjIpX}9%2RD%ow7UkWM1qmCntj!cB$vW$p2VSq
z2eQD9qCSrrPS4$6OwuoZ^^NtRj|GCbzM>YhcNA_TBJQ3JDa<$L9`V`o=2)reD|Tu}
zSN2J4bGz>QdEc%BbZ_YWR9q+E=fion#N)B+v{!v3&|~WNbQWW6Nj{^?+?Gh_T^bE&
z1NUc-t29
zbNip@8NI0qH)sun)+O8<2ow3J
zoenNB+I{TTdRJf3A%h+SU2jA{-@*!^oG`9CC*wQ9YFtE6*Ed9Ox{~W|Q2D6uuEuaD
zXkgQ}4q>{UItQL3?e67#L~`NRPD7Kgyq?Ms3`mir7jFnC(k?SMB|*n>sq?71Yi>V{
z7ZL^T&fHVeQc~8{Gql)!Hmwm5Ppu5TxnK@ytmxChIewF(`|9n~E;m<>9lUioGOOK5
z+Lx{$s@YV!x+z4US(|*6L4jPalfg!2cM5@nPNyPytq%?*3%43vs9m+`G!7(kNox1x
z0S*qb9RulnqPILM$`n?--6eKw@@{1NNz^cK2ox
zkxD@Aiz`@Lo#2$QVIw*Zg)pdq=7uNU85XBw?zK9~cTYD;w{JQcgqo;SNKzvP?bDPG
z<2ENBcE+q@KCPPuHm;MX=Dk4djUJH+uLXubkal*jg@W^5V8d4;Y$rB&NA$#lrLKE2
zg21oXZ|C&7i*ZM9D~{$S;`EP{+g#Idbpn0h=&$vfADOC5q+US}2$?K1pnX+WPUQCZ
zw6zK^$7t&nue>t>s_>rHj`@UlNG;#U;!OkSMc_NB9qw0WUy
zHSjT4G|cG&S`2jz9jp^vG4tXiOT-M-7A=K<|7
z(1Nj;#k&%GK}>ZSUDy)4D^NrZECM^Xth(GJf=ybOi>
z2NV)Es&y#?M9|N)15|2i%&M-}1<7Q3p{i@LBP1G77DQt|)B*N(m_&Q91vXEUN3vS7
zz~h8#S+HN3v8~>wmUfRT?}NgDX#zkmcB&GO@`~2zlN6xH8;iAEqdBfW2bZW7suUPu
z)LeF6N~8}DGgFRLh0);qk0Y5`U<-7sQQ^hJN{T3i7Q{u^Jr-uKMLdV&JM
zueO)7@m7FzldNW0Yw_aw_0RehK9Qa?FHO5QJsj-Xznc;Zx^t~emfD}A7j*eZPqQjX
z>QAz%lGS0K0c37w=U#1p1I0U=qxgsx)JbiQ;(%1Jqe4WQz!Q8ee2{8HQgDbcnKrmo
zwNtdf%-&8hr-k#lM&+9}uOLAgEy2Lx?i}H2#z(DUjHE*qP@vwx++x3$Y+H*k%yyW6
zvZgZ_%03c%QrW{-TIc=XgeQ4qq#ju-6SB8hWpl54m$^r+z>?b4KQzpJ(kYZkzmDk|
zT6eKHAq*nOhz@RFHzhfVY~8GL`oc-;gL2;KuU7|c<^UZ(P2)8g^iL!hcfocgZECKp
z(oIvxe^*%h7swxI{O455H)l_Ad!ae*RZfqK-}>?;&~MNKP$$lQH|1k~9O}|jK0P@f
zvO}|bKd_PJYL^OxBr(;Vh~ez~kj3TG@pT`w#U#hDTQw=c;mAkP=?`};d8G31lr)Ze
z?yU$0cR8qSDt^1#BPSvb%O}gXCJO
z;}LNW4gJ+DgBrYzvjl)l`ujl8BUwtXQ$yuCJs?@STJXLqVNkSiy`kB^(r@xKTM5pS
zWw`>B+J=|YE<2RscvTB=Zv{+Zj}gz(9+W(UC7c|k@p-U7l6{qUKK
z^1>w|uocVz+S`om@$B4}b+-hZq6XGHS)SaXf6RjOovyw|=r`T7}?Vd1k
zf>CV8?JDU0Fe%iHxSv6ZWapN7(tuegE}_W`mwh%NN$
zkO^(_C5bm(|H-?ZDFRUTR&@sr%!DmzJiKLO;z%Kt_L}I^>`_#hNfgCJg#8u#sA?6S
zvK%41srv3455yy`3m8U`Z;B1DwOU`0nJNU%2P#q4o=U?dOP?S5%i|uMXY%UaiG>5j`sXrIjibd%Nr#8d4l9J%g9EzxzZ#5#ZR;3
zC+U}k^(IM4Q&A+GYI#c!UpavYz-7GUtM@d#MaIz^Z7R;LWr&6jJVAfU?jo&8iE*P)
zPA4}pOi3ZZ!TXZ1+>HIkBr1<}D5(ViSW_g~sK7{x1M;Uw;{FTCua6KFcDCjI0Mx
zM4%!kXa%ZlNjwh_>FwpZ*(K)xK%N;Vy-Z0v0pQ=+
z`8Vqlv#xR=o6rRMu?v8rk&y8>inAtA%89Jh<2m+n_ifYaC9#^-n+bkK-D`c^8QUtm`IlQ*I7lDS`;f2m*tFt3)XI-AIZ3jDjO1demK%c;_uz>w#rpx0g
zph>SjJ@peu}sq>=yvcq+O9><106uB6;*vQpbpx+PS)1D;U2b}Mm&sy!t2wK|B
zV8VX83bf?d3Ne!Fd+$aAB^e$8okh5QP*~Z<`|MPXXd|DqlX<|o!O^p$b-=-d5}<7w
zVU-UHMSRV1buqj(sXX_l%YX{(?bL0
zFXpxS$mIgQNiy91swiw&2rkgNSsJg6Bu|HFm2?6;^GyMs_{#$4e15xh7FqDW8
z{y;DaGGtCd%2kQ9LR}lZdid
zU%wnU4HZfR@F=2%Sm`0Hi}ZEy!Q^%a%H-ytw<={%Onhku7YioU*J4WWYJej_^Le+7
zYgvgfYGh%T1bvSOxMnnRXy+f2cGN*e8xkps{S)y?teh>G7~r#oT0`!$iy=bo;an@?
z1KTj|MVGZ;0?}8FkQMdFmBd^80QzFE?ax8pih|P{J-5hR@huP?4CP#o>=Y!J+Fup5
z)3b`}q|_g%RZR9@yGlE}Y@F@F_(o?U{WxWL6P^tcuvG3EkGt!*hv&*FRWcR$@@s>S
z?d6&m^J7o=NUCW{I(y?}ZDeebp|q95XGY@m-}VP7=Zlb#;6%N}p2+hy<7^Tj$>1E_bq
zV-*jH63UDxELg_ll3sg93Jzh#gIW|i>X=BmX*Y~F8<>}oY%A_+!k8m$7yJK@zA
z9}o@;CPRtPHKPdUJY--3xpN)RV4kH8bdSr-QbmzVo(RsM;dK{7)y*Y}GdL_$J9N(7beZUm&e4sZ^rfFhxif|N)dy1PU|knTK$
z(%sE(4&Hh`kB{Gb|N8xN|G4+HJ)6Dv%&b{!)~vPO?@^eE?+^7bKoxoS3SR5J`04$;
z!KI!uN(-HEsCECvr_~S_OT-AtYZ`KlQ8fqc{`Rzv_vT;^N2G0_KT%I-4+3>Kc%eH+
zTanqT4@%CIO5N5(jvS}m_+V2#9~)-!2U4bl8V)s%j#yXx#cq-A2-2g|OP`i&8l9>vM&6ILi=&*1nWCS;cu3TCDwG>>
zRyk;=U|0JJK85am2uZVVsLF#{31pP4LqE?DdQ9}=+s^LSKayA;Ww|Y<)~H70rEibF
zn3Brr93^j)?b2p;(S?`hNVEyDhqDr3OS_SsexfYblJ@%)Z7-^nk1rI#@K-3~QV$
zqjmj6Uy2~VsXZHFz5+AQ5~&1fm#&fsm!+OtW~AP=(1~B?jX&TXgPQY;n77r+kB~4n
z#*jOoFz<;Td?Th7aQv8Qor6-$>PH7p4g5~7YwwHO1eVKjWV!g#aA8^oLlrkM5?Y1Z
zqVLqsd&@Z+nsK<{xmG<_ksjEA^Efl`sCZC+$zLtQG0#2zLb~Dr2Xq6M9Ga_Dn9AY~
z8FOgHl-z}nfI8IoubviFpo+C+D={9{%CH&c;B3OBVF0NZbGUStJ(zvx%h|OG;e7RE
z!dkTCP~qKZiv-rMxzt!*nR-H}A9UgGvwbRK9GT#T-hE0B%40D_j@KnT0bpPS1bQ6!
zG1HZu;O%qTB=~YX^i;G^jk+!lwtf*V*da#E{xmK!zO&*e03XVkdDQ=vv~D0D&ZIJb
zBTPkJpwT&gVQgDY!9cOm`1>`I!vPO?;0FA0mWOjyx^%_88DwR7U_J3rzis(p$FHFDM_rY$!O-^vB9z3c
z-iU8a#g^UI(#3R};ToBX@Vl8kh1_#=7!h+}Hd^)EUZYg1YwDsh%14&ds<8s*zDvpt
zhc4NVW)ABOHZx-n^#saBYaP{1k2pC;XpX-hDDu3^j48>*NN5oxXgs|{kdt7)>=QkX
zD?0IsEq^dK)+Q5p(U1`_Be@yIhP4!}xDmUT7efR!j!r6FRIA5aR1*Dum&qY!
zf1evB>U@8R*$PCb+){77&u^vUp*)Dw7f%QqCk#ThAfhBkqF&xp37HzA`%#-Kqt8wp
zC)c{C!k&v%ZY0^g+qrtYFEhJ8IG~Pms_+8!!A=p>yJB>6@*-X4voyCWcbEXm7&`rJ
zp+xWwnX~mg$1JGz`meHpKjZMe`OI87otNbhMhy7(pBsy%kpDYH+?{E)R?eoql#
zlU&AITLstqRzRlmxxeJ@9w1Ihwh-11KvTwvm0nV{RcWk-P4B^wmgt3aJ=
z+|=MT0C%B#gE8*REMk85+mh-K`FL024P4$~cP4)Njx*-xsV4WPPEA4tn$!@xNydJs
zq*5w(^!t;(r%;nsI4@kD>oHM?lobnK_q6VO%Pr-*g7n6Li|Mcl{A~ZHL4vL%{(}b@
z)GEM(HHDMV>C>D5!W5U@QtRO!HARgbM-cZ}n!UHd^xpm{t_bk)`u(bTCp4Z75)*qN
zai6>vJ)dEC)oGBgZ1+!LXL~SP4?%P1+kv%G>7h7t1eDyLb1D|$U4o3F%%hxM`}XFE
zHmZ&L;A4I_s5uRND#;dSV*yIN%)$j-0aV3F^zIW>yvYCn*wrh*mCd2M0vU8sh%e|)
zAgIWZ;`38?Hd8g1|nR__?8P5VveLw)B_^YgK
zcYF(>l_ydoBa^A)oD1dm!#Ikr=q&-93$1pelP%R+0zBV#TyT$C4%G|sDM2uN
z9w;HVJBJRaY45G7b=gzcm+VJ;hxcEiy*o6{lHQ3^o#}^#;LX*pSbgY-D}-@2T;d&o
zE6Dax=Qg%3`G9kP2?)9B-Eo{rJ+7a!6c-b5+f&aZ!cZhNRQQ;Uk5&R~6OC|UD2VwK
z)Gbe4oknAvp-4PENUbTg9qxk(FRxWN817b~t8EDt*;q(iAU#gXlvmFrqp<5ZbI+Jw
ztg0gML6otaF~(18A(Dm?Dy~Yfv+ci<{Lmab+lxntbCg36Qn~)Rs>!dkcxekUKh^9<
zrvPEN*EX9UdLSo&)fusVa9p75F}V3wc#UC@O@;;r`SSRnm3O!O8|CUtg0Py{g$|kV
zaAj2?pn2+aeYLFh?F^8o^{I)|u(o?SlGF{mGFjgv`ld2y&!$FGmLP4j!Q(Owpc*2d
zrPplq?W6@=n|fABql|_&h>m(IGb3d|D
z+wn!)7WdPGISD{#L%Wngf+W^qNlYj7bVqu&68!7W3HB0PRQ%&z6A3H1mEo@OPh@sL
z&LKyH^fHrsR8hAh}omIumW3JkB!^mxR2eL#|wBY#y$LKi0pJW;2#ogKM6Pcs+yF
zcv9olKZ4$N=~LCp2v4YB!oA{*B35zO(&Ir#BYm~9TUqToWqsot`la$Eyf$8w@++TG
z6a2`?k{WA^b4pWaHlqHqH4)ALPv!K^O3e$8LDR&EWPMIL
zd;$Lo1@91*fL44}HlZh%?e;5V6U6AI6R$CTV_MtJY(6+L=OOQs;!Xa1zybw~KJ$Y8Dw7}i`n5Rh<`fQ)GJw9Mg_G76Ha%3$$!f%a71`<^3MXGR)!K%4D
z6DsOj$i{3iqAhr)`>@I1N|)O*02=>TVqGM20hf;MFrIFL_r|6wHR=88<$^Zr;R4gu
zg)7_yFzIHH>z1vR%mHjBdynz-(zaC-pV)wc)zvSQhc=go-+GKFe&gQP=L0Ak@)_s=
z9Tc+gpekndxL2lK!*kI6Y&aPEG;FzXs1ufs7{%(3uZ`pG1(ZWpy=GqvlSAgo3UP5T
z*w#VR*2dk6S`|C~Hq3!p@rsQ=#fuQyz2HpxTpyQOMuO)dg{*Yg8qM&}+0FO|I15ut
zvfG6vF4G?uayIvZw6?N!qINOK@(nk*sc)a^@E`Yuh1}w-xpRT}uD)t4mnT#y?4yfU
zWeK}ADDJ3d%-hX!
zjMVj9TRu%njC2?MbUN-A10*={+v7JiuIup2r8`0%>r^@Wv1=EM;oS-$bYPu}D{=Z3
zjegdwGbmr5d`X8lbQ!9sm3Z%oW;Xpgoq|mBX{fnyeyYV#Vh(N{2LU{)Qz!3Qx-M*;
z$P^l%aeH>8Vh77scD>=U$6j;VtQPf^-`fZtlPFi8&I_jEEZ|rz-5?#$nl`v?_VuBK
zgo^O&i5$J8UhW6X+uqHj_ceOu&_GgT1Mov>q$}17I?o&SrYX2h?Vu53psOBeiXVQ8
z8R!Kbo`#D-|3m}&I%ov9n(RRP!?gE~(nhbov^YRvnOhmB<*#p|43<6qj=$pda`u)C
zWZxSQ>7~XR;8<0>nFE<^7VEb~!LfH7K2)Y!`6}GqxL>ngY4AmoT<>v$_wG9+t=4L4
zf+p&|!O5b=YSUd&gMCj2Q5$A}8|<+5MPDfYI^lmA;dzE-$Uq~vZT!BapjSBiUKD#Q
zKmOCYOxYwwwJnhXH;qh{N_A$%ti*5A*V(L%6sa<-n6X%oFLH0AkBDka7XibBk852M#Wj_#~zY!c*dswMH
zK##qA$XQxq(BDFRp}ucZ9L)vfviXFupLF8c-g;eWd*KdAws^JR>IJ`x2-(7v`h2e4
z%r65O5>~zTYR?UdA>Mhp=H=^^hbbta#ZBEXr(C|uCkP;Tazlnisw+SRZj1qGM<|U~xHqS95VA;&
z=19=?1lq*|hrkY5nnz;SpzvHw?atM>v5g|H?^M*HMu96ApKi84gD-&ZIwj4LvJH+5
zB52*c5?Nj8x(j7|O+O0KgT(h7l+dZ9zn++A`eQoW#pc=gb%A$9e
zrY#nR&Ni}`26%)kT`t*5YtHO0?dR4yH9vVZNu`kt;dQ&aa6H(K$6J(8VjEf8f>#o-8Qrf{-rO8CmTYHQL?&0MhL%B3@wrQnW1x-y>|N`c
z{>N`MOYS`a*?{k@@}tlpsB!9Dt=^lMMD&&3s1DM+ojMb}cLLWxnXIjRpp%f}mS4bk
zs!bCbma2p@(MfEhw{b}&&-v5yi@RV;Gy;mNC|j|Z33FYWD9uTznnKNKt~>!1QCM0AVZ5&{Pu`=g`;FW4
zKW=#)y+yv)>u;PBO+?8ghEjvER^ZOjblr$Jgl258NiNzNmyErTR6JUP!;h1cVw~oA
zoHwDeceZ{uJkEX$h1@!Hxe~2rv}7f(T)f{@ZDK%XsukeEzvJ2xEFy#qFg^U*Nh38<
zRy}YdD>RA?g)3%sA{N*#sDbi5XrlKWW9x6M#D_UHf~)h%%MA+66_W)Z>#COV))WVE
zlxjck@SwS-@sb?~IAG?abb3%1@5<8aHJgM?3z1|YLrNFpg
zDZ$e*A=&;-(z-#J{zX!sLAowWoat6+|C$sN7^`*eA^>GiEk)>6rp9?Ty@c`(WId7y
zd&RoTfoq%9B?EKFpm_dz%XI}`F0FN``e`2I@m6zxsft;di9vJ5r&>XIlIT^>`)=e9
zL*9472BAWy(a_a0)ff6nM!5QKnpNVKwR4`<5JVmw^zOtjd!+5q^{2&pi$I=M8cl{x
znxP%^4evRrqy=p7C3map5#hp|#_1WZTbQF}p(9{PLj&MK@>MG1E
z6l+6v76-nF(444+U;oViuzB9Ccdo)^U;0o_u%y`c1V?0qY2>mFmco_j?QvPRti_m&
zsFB9GGkU}UiH$xUsPY@cW2@-M#SIy?drBSVEa4NP5;s_}A?~)hblAJrLc7}OtLbfc
z=hu56abEz$3b+8jTu6ZGcOlY;04I0?P`bJz>zV+Wi(Eu=b12=~Q+Z_ergE)j^qdn9
zun-cFunO(l)o(agO9ekuh=c-~xo5DoTnZ20|Em
zU*&f7V-nLXd%4J!KflmKRr<6hSr_rTTQDAwOPB%|be652X`~n#g-&(SkW*_#ZXm3N
z3sM$FW({!SZAVMkyCo|ZdL6!IZdT@K;iQlc@PH$69)W71UKOE0ODL77f>LiYRj$tw
zpk-WU{h|ymNR?8d3T6`FiEY2&0Of0Ucb)!JQpN
z-ZP#H-^Fp4qM+n(P#Dq**yhMd_SiM=m*u5xlK?%!k04)Sf%*=?WSCD~3jOb31XfTq
z=f9BPe)+Tx?mrIdxnjvwsS%e|X*38O+XkMAs*^s}AYH0I3C)8W8O^oet-zAP~d#~v?ocxLD=td}Q5v-HZ15~pKv7R^tIRBXp~#MWBHVbHLD$iosRk`$G4jV9!?p`d2%i27v=7U&`ww`=1XTnw5q0-V(krTQL
z#ZN8g1m*j@x(pJMvnJH!=yp#wcwpT@0Y~w=?_Z7YM=M)@D9(M@sJRsfb6ga^+
zVs+oF2aw5eJaVf+y7XI#v5GM~mpW>bA)iTGc1NQ^PC#gLx$+R&dhyvf-Ys}nZYs5h
zGx5Eskd?7s)`2V`O%KL*JKL+>*Y`yuSTP2(Cbh{iR`l51Uo`0!g;X1f)46mkeIYq5
z3x*^%YDyP0*V^{nVRx_a?Z`dAjlvi_TuF+xa?Tpa)ai6yT{64y>taJOV>D1_h~LiX
zG%JftElVJJH|ozu%|R-H!R}2PUM@4Oz^&s-Rv&!8dRWcl1yV&w`n*P@lSj>E{5(_H
z3+(R$I+ef8t&4>}UD2!fc=l*m(v_j%#_M-z>wpid5Kv6*R`@iqYgjzJ
zT3dGn9ynh4fQkIBId^_co&$#LH?WFg!{$1PbnidQ@Ri!2ZCqlJ{Y{m_F6
zwG5qH_t;1QdTd*^$&A1qp{HjiVrqy&oQo{LcW5xq7WJxz^U!9GxbO4iizHL%7f!Frrq8uAPvGl=ecjX7M5v}{=RS@-?F?Jh6D*6`{W36_l31fJS^Rh}%^>H~
z420!*Jo)n|6XDGixy;#mJhXN_cb$`7F3n6cyuEKIwOJn~NP{9x9{09m*Yx9cJbNN%
zWUO|gt~f@cP~VFISIxLWv7n^=J-L0_9{?qob4;X(&-ULIn%sK8s4TEn@HCdv89gY*
z_JR_H_FTNJfJkUnAA&J$wO&NqN^^mR8|1sHnKsn*|D5-Ke=AKTPU9e1l~4*~-!_
z?;&7a&&gBfmQ#yJaG$=YQpN+|%r|7C4f8?BjFu{!r7iG`aXsQbzgIo*oN8!
zuUBO?%mN(?-`QxIMJ4qPKP*gwyG?rVt_VH+yB|z`a8pZu<06v0^;TZ`;v9}Tn=?&z
zFpbcFnqnv5vY2WJsC=Zl1Ck*5_hRAxw08UB9Bhs!8MIqCA(iR75!)cS96|8jfCM(7m(;
z_f{FbrBRFOAh`%E>x4)|PAMTwOX|_F)79e&veWYP74y4j?`{&F^7wy3Tc6@515rbP
z47pn!X?WNBubQ#GLCX(|xL#0cTB?FmPe8@PY;vlsn4#Qw);SSZ_eH7i6?*Qq%GlRp
z_}F{ih|5ZZN*J`0sLTOgV)wr(ieVDDx2U)uV`36aX863od3Yy6!UOxmd&d`(5}0?(
z)*kv`JiK?WrTXlIw_`*|$g^{Gx5KNgvuwP7yk8BmxIi^I*gtH&PHmIts_nF+RzY(d
zzc#gxRe=3Agff*euPk$N?>IkM2d&n`b;E1j6Y5zUnJiB9qYab?DJTcWzS)Dln{8&O`+EKSFze#Tqs{79g3pbrl9F=48+W&h&$di=
z%mivi9YiTbZQl({?oEXE4s&f>b06CIZg5|6-AiP@x^PQvWFTy*_IQ84=J}h+Jx9tV
z3~WMrF&`9EwEuhIJ8^LtI3>frToMZ)tuYhmcf1)@EBk=X+nEeyIP5H*R($adGMqFZ
z)_;7__`+Pr(-?fA<-8(5>-1PW`Cvx6jf+bwLu4tdP@bi7$BxB)5xDS9R{Bt*2sQOb
zL}OG7I*3E{819r!SZJ`==-GbgS&IlDFte_CfvUF(7aq@$%?JV^04_;;dxc)$7HurQ
zzHMl9n{jAJ_r1ps@(Aknk1hmZ0i*yfKL4hYFxAD>$Oj}b#
ztot*`zJmx2{YQhkPI7{iKIq!UPb0tVW^BVMmkVT;8c-cL;)UF7E5{k`oC50fubWZY
zmKpG>BqN|Noo2-$Ye){!1nAKy!tDD46ffAv)$Iowb1PPqk~HLFGZl*-qgHZ>+kF1+
z>nsye-QDJ;O3A49T1rYO-cE{FGrkQf>bgYwnY1|g
ze=A%%(F}6}|E=AVcRLW*!;=%(qtLsjvbzJ%_5+fxvnRCF&eha@e30ONG9HOiwAC_ZF7`=
zd+R)(6p#ugAe{x+%vr1y5865%i{&_{3G4NzsY)&H#jSZU#d-@(FpMjqICyw)B~61&
zZ-VKA1g{xtM2p$Sj?*I-ncAjN3l}CfLFIFm>ZvoZFs*>VAB^sFM6A*jiv>_{n&wa&*a9YnucDn
zoZ3_=j9+{*cX0!3~Co+;~|R~&Mj919-G=#ETmchwzT%A
zXN>!-9fSSWJvKP20THW3X_>uJuyC~U596aYrFv%TAgcj`{wC4Cee4
z55ZvpDg&h(_I1G4y*6&@b7#JKSi;i)U8*O;4!?MR(zS|8=P)Nk)Vz^AObu2Myxx$$>qbus2en^wIoGFL#O9-D8FctJMJbOYf}Y{;e=Z65{Rdytw(7=
zoVBfj)p}rFlfnynVSJQ6BX=p{kK4??HC~aPDBeEuS387pBm6!e2
zrKIYbSHbf6-W(89vWq&44OWiEcd!0&6cHa#YGT{mlzzhYV?4U8s4vv
z6>fFL@^dr>brTWN=_8pjh1fpvp=F~Xqr-unmYLNjO-JtY*Nhpag~$h0#$c?NF3sp{
zVN41gH8UII!AqR0dR95*X1jILr%7)H!oHJDSA>>I+*fqFi=iSNQA6NeJv&pmSH0%V
z(MZi=oO%GxQOou+^pgOZ7otEh>XH9EeP|$
zVua@@_P)APD;%?9eyRny#o;m{0`Vrh24pLS?Ow;1ROZ@IFD@J`i#lWa7gxondd#cW
z&cvK;Z!Q%C2S6=zL);4dfc;P-c`>@MEa23e{zi`d%%@wk@hz$34;RGw+N2xo0r%#`
zpExD+FU2qx?gvsfy^01$!$c!J(3>xKo^s0+`e`KRsHDluf%I~lnNKHHtZV5q_O=%&
zit73Nl2`}bw9?ZWqqifPixJn6y}eF%VMxGf_9K$GRO>YqqZ{9~%QHn#O5bg?w|gVy
znDb&NVBilgfNb+Wb)8A_2WQZ*RH{#l`!z|O;Z?Cp%z1C92g=3f=~XINxwbRNOXm`*HNhzP+FXO+N}~?-v_9$1
zORR{^!kMTMmF!wz@jU}6HyQW6=@HMn<4)({!Tro8=|Q-9THAZOAI5YpWYVT!9WrnV
zB?z{5uHBAq+c4|^1tlxi%ORf93My5;OcV6Z16t-OfcheDXT9xKH
zyNwcJ-|fO*V3DnXMV+rw9~9~?fE1!_`>TMx>1?WvL{*lR!cLK4YVJ(}f^k65nr)YP
zFp4;hoc3*!W}%G<#0sDVHq6>7oQRBuO;Y=6#;rXgEq-JQJu0GgrL(HOqUoqm
zP9kZ!lrDt^hgaEktNDrMJBG4I#Mrb7O&i}@cqf9Zo5#=+;T_Zu0mfrbO|
z7)6l@qGsL+JQm6xuB8JeW}DdW*I3zsiL^)#=3BHZwY3TL834_$)H!l3>MgC=$sW);
z*gA496+SRwWmkyiOj33&-C|J8$~_rb2^-Fz#bh93KtssbkJ@@>rIO#lXJwRIF-+aUyRWoQ{wJq9A-AX2NDu*v>cnjE`%^8v_bXzY&!c
zJsR#T7+J}0rhTT^)|%!8f|9+DnBu~1j_a^QUQe8?x|NRR=kAq(;`WpVlzmsGF!97X
z;9^wT?C$#a1g#ywn@T>UmT@$um1guTuPUj3y^xSVRHJ+V>g3!46;8AHB6eRL8G9L*
z>_(^5Bqd$VuHGGCp$%GQ2CKh(h8N#y$ZqhaamnHS_IDcznh1_sJ`AwxNQqkhdJ*|C
z>BPv<*s_b11-H8-Du+O+FxOJXeV@86vVAZO!th0p*SC+iI@3TQ7?;&o;P4evhBB@f
zh8y3Q$@TiqmeMbNM17mPS+<1;g^tBci39Uflm;C1727xhyYFco2uFQ)2Bjiq;_C;y
z_d!iom>}8ws*Vll%Kofd<>G#PC`1=PX}-I@D{P3bsJ
zcMzZ=Gp%0>4i2^evXntq3y%Pof_0!>IEUfYS3!~&Vte4gk{o=UoG%!Q5@0fUZx^ax
z{u`4CX`Jh7F^tuxK;h^0qt97u998T0v;nH27tB)}^KFB(9fJj+N)I!$OSCPY5N>Le
z;VWN7?m#H)QIn^9!i28=pZ@;OF(HvO1l4#*xBr&3%SgWoI2npX0QKkpOStJm=l%39
zj_ApYT=m*Wv9K7(8g?1Xr~32Z#7N9(e(3Q)DB^fy)PUiCj@h5%nofXxtDU8_EOl0?
z`oJr&8+P{IPW{W2PAB&5u{+*xr>i~rf9!|P-|Blvi0t%yjU1mg(^4bYO7m57uM{87
zD`j8%qdkf_y?U!DJZfv1WcQsldxP0upo$OtHIj`Z{m+7=)pY%#D88*|l2r*L
z`SKAv-!9MB_$*Z%srOG5rlL=xTV=BI%MeG=B0{9V`B<^6P4~
zL&lMJOlGs3JLyi}A_b>jAIz^QWK%FzVKG)_8mMJd{HKN}Hlr1qwaX)?KV)YQ}>fTc+Th4(u%!z6M(b%q!3=Z%2l
zBYFU9V$bu7#67H;S=^dx7EbzmiF{You?go>d^~kIrmjdO2B1lvUyS)MaPcB+E1sVeoxUruWikjLklo|4Hh53z!9)S?;A@h3ef>-|5hT%w8Ze&-{k
z$r*W^?DAF%A>?|#&H0O^{b5ZOal*}va%?lC8O0JGqDjUaRF5?Zr|W(eL`4%OwGUm&
zh(5WvEuYweD4r;O@`OgM6m>ntRy)t$C}y)Ws<$n-Dn{Sa+bl+Su02xY3Ofmj0orEN
zAEver1^a%Ur;3URGN5BoZrYrNwAJbcHYt65Lw8Wj-GB@6m&yD4*cFjRgBWHEIE*H+
zmdmOL=@XGt2sl1QZjz})pt4-6bOdX$({kwAhYEk@m<^1*f{qM^8pW5`F
zqxG*t`6)A%D4v#5qV
zg~no{%EMynlb;2E^;mR&kjwz!1AT#_*k3udf2f5oDhUOjwWcMgkpV?58Tt8K;0R?_
zJUZK)EonW@tm}C)k2S7Sdi+?G#PqQ5*By$w{)c~WqwMcr2Z&U9=DU*%
zefE=-W_&YJQ1*QtT*-bsp6G*SSG6G(bK6|rs-22TJ3ii;qJQ(6sR@;c_5C*Da7OJ?
ztzRz#e{@w0cJZcG!5wxB{r6<-+MsM9W^mI@d?_PRAF{yXx;!+n12F)5{51`q-Sc>s
zFG$L1A2?(_{YLV@#()
zI4>VxDmW7(7OzH90>!HvP>%i7_@$(HkfI8V2o8
z5wTPcQn-?tE`4!L=lMhOzr5JFzCJrfX;J^lLyPbjlyodXZtPF(^zUfP{CIm`Vcpkv
zw=ru6w=fe|{#M)l)5T
zZhv$D*-G%nM23jz50)u5<2C^(`>WE!p+9CV#alFR2GAowC2OX>_lB|g(igtJD@sfDaUQT98Wt$&Mc`d8I~Bbp2Oc=&>-Hf_35{+{-Ov?mKKphQtq
zUA$}gkProd8f5(s9|H-lNYGg0oq&GP*Sy%6Uq7CgP$+_{&V16|J@wPVvlf?{gGvj?BBAy{?T=Bugg?qIbiHOI-j$K
z^q8!e70nXb2V55W>-Bj4{QmggNT+m>H@oyuO`f==EI&9G-Utqb#3~O3V7d|H&ks*6R_+mKnuN4E(xGKd{!V`89
zc_Q(g>Ae=JQVuC4WGeP<&2Qffvh#=xL$Q~Lp
z6-^lIu*apTLM_HAv@dU*uS9{@3@@=O
z+oj_ohxyWVRFiqdMRphDvgylkkwW5CANArrEyv2>>S!fob0+)^z4=wy?)eYh;?I38)Y@J6PTvVULV%vg>_f;5&Et(#wbfjn5d5{
zPkIK~q9`06&0=Xu~9&4>VhoV*qk@X5=bgDBjYAg
z4Cze1AA*v09#0IG;P|X%CeHk>6~ctfm`l8+7=%(+rrt)@;*xb(U4$A8X}7kdHt|?K
zRbNv#Hs>}AOCP79v=Ff7~3B4?q
zZ=Ue_yY>k1AwMCOglxwuZ3NOu@I}L=kiZ=ifS)H|{eZraRd}j~Am52|le5d@i2<|O
zR|t!c7eFK}$Z$!lY65&sPMd1hJP`picz0j=oUHc^j_kkx>KaU`9P`d5!ZNpDtyRU~7SRx~s`@j1LVsk*)
z9p2VIyfzvz|AgMYQ8?F8L2`;0Tt!<{&edutUV~D*NG&>_vI4#g7+cg^@N=M`2H16=VD~XrjW2oA}{tue(-`sVr^5GWl@Sg`ec9xx&kF~lAgCE
z0#h2*v%OuWfX3K+;!|nCI|OE}24C2@TPLAFPdgjvkX@d#$km}nbp{!MOPf+ic*38+
zkW-nt!iTG9Uijm=(NRU5!yk5D~Ae
zfP5O*jEA^9rS~z+>ep}?_NxWJ4k!A+`{7=CD{>7MD;GPKNuWR&zmFZ{o@gv1pD{29
z<0{I18p4E}4Sp!1$3BoBt?62)qSM1B4)h4mr*wYRGGyMr87R5Ti#@TT(U
za$)MTX*p*0goi1$G_>zWnRbIixr%PHkDd!R5-bVDeX%3w78V_}hvuQp+_|;TzRc-A
zploOP!z_OkGidJe&9Y)okU{Zc-^(fa&2sn=X;wWpQjdDWetU+GCx}_LTJ{6tPux
z=$pzZ))*q1YHQvntNL>laRi2(ThJtW@D-fuk0IxMyN_IWJS9P;&v^|fg+#zTjts{0
z0Z~dE0ry7lkStz9fiiEu75uFXRzf+k+;n#I;j5@)&)q#G##sNyI;t_}U){c+$TQJ+
zbDaxciZ%GvI7?blE?1F|_Ab(G_5D9R0(O$VIPSdI#qtptdztDCc4U({U!!@`NMIG@
z6hm_SwQV%JM|fQp`?fz5D->l8>~GBU0^r!l_dT~J@4fM;+0F#SDvwfBx(a&=sF~(x
z*WKUEs!VaUDehOd_!`ZXq6Yi1eO1Gh76-b?!md?tP4bGD6GVujCcnEg7jDdUUi*T>
zqDZx7eEiCRv#9~Vf76T_Ch(ur@nvmp?KgGZb4`;*4tO03n5kHVqZ#M2O9isy?T@26
z_o&d3%ek0!+PUmvF3+z}Xscj98>1l7MDIfda3W7Zz=}5-X9F0@7N!E|Hc->rDJd9
zMNhW3$DBG-g83)zc%Lj8DCpQ#yYL38UjWPWLwYpCRtCvea*qwFYv(G3-B%$7t!fK>
z*1bx>#7J19%)gT$(_k2gYLvRE|EiVy(Y>j7Kb9zf|F
zy$jIKHz{iLFBOF$>oAE33<6(<4%_`G4^&)2OWC+3dSN%U{a{AMbT{=%^SMR!O=18-
z*)%bj0vj^}aDh8#6B@IavnUE+-)XYXOaJ-YKd*}mq
zm>4))(4zEQwX_Q!KZ@1<>~?D+i=K#Hu@-GOt8~Lkf|f
z#`%DcQ9PWheU4f>;Q)7FCg#X?_>KSvY2XJE4g-6;R?M!c>oix*Cc((vhTm?!Xcf@>
zNdq3SwLu(F07W>jWItiF2f)OSfZC|Cc-^SMKLs3)z`atn)sgK%1{^;+Me^0aNU~+oFj_JA#+`eMz~KX6%Y`$m3`p2uX}Y3SF!kXWR73a$Ek+V)i()
zbBaP}-jrBJj@B#KmKTxA)0gSvU~do6M>(D>)403zilZjlwsNH;aP%<7W2avu&0}kJ
zr`nhYJUFb
z)CDz>*gkZh;{^cJya&vak<<$SZ@kt6@U(~EopNy5t~6wQ%j1`tu*{t9woSgu;;*aNi>VtqXv!#L+5~VSXDaT7Z0Ww9+>qXKg>F
zovQ}O$Rlm%7%mg3!xcMNtT#CSW0=SLaQh|)jy@720zj(?0IU|bJw*V!<2^4yCq2^~
zy0-lu91UuIxMXlPQqc*bxjIo>xJIh_$kVNQz$y}t$bQfU7}O08hdZH>v;f_us0f;u>Rqv(sTz<0)R*Sx&p`m0)p^*bXyxDm;X$L#fflT?47hutSavCdh
z7#5hRinT6y1Te!Q5$al|5g~yY(P!Y(72^^FLaSvaBVJqWI(rEq1u!rXYg@r0v#@-9iv~m6fYsUib=97^?-UUFQ{s_scbiNpXtVCf=D8vr%BUk`-
zbp@;JV)dnR&q~5U%_4SM5)V*-+*4%H+p|1eSSa$6pY`)j2@T^^^JL9z>j6b-4D+;y;
z@zihr&CB{*69U2taxs$?BB}DL8L|<3wSdvH2Y~JoseK&Y3oLI3o=IZM
zWpYMdv+lkO6EL
zq!rS!kY@A}FDeLzEOG6e`_v!62Jux7@#498laNc~H+cdpa%jqmDlqmG>~@6pnbNl{
zds)u;W<83FXEPg{a6@>H7KxZ$IP1@a_TR`YW#ek|#2Ejsf+5~~v!_~)OXl!sVz0(}
zU~Tn6ZFBhtS|U!GW^l|;aJ8_vTIf-CC^TGTxLEasfv-b;~#b4S>Ti^@R!?Xy`p-zV&DU5i|GB
zH0&F}!|Om*=Wjhj%#>kA)=v3T_jCxYy>Gvqz>!(_y{txFaN%Rtitt5fD0i|q;&_(7
z_g3Zd+jeQhut#9Q3SjO0k`s#bWybNLp%u+82f)q=c`APBk)V$lAt&(ryu3lgL)Yxa
z-^fdXdI-p`j|#PBDm~wy{QcDc6|EnHc@6LyMIs&6>#<7NjDQ!jvI&VH^6e!;Nl=hs
zFIF7^=4De$SUcq1aws6=xMhyNmeqy59y&a?1}HZ=T$lE2xNwh<+$Viu^ry-x#;&V?
zy1J-nB)ir;!P}LO+5>}d??$8Si?b8NS)8|VIX{b;VeNDv8^n1YX}}T>dM>p(=+U?i
z8CByzp-2O&HID$IxwS-S6NGXEP88yd6)$f?7aW=b2S&BiaxZ+jxlBXSpF1qNUr)dt
z3t-mUhj%w-UtsT_fd!+-f)bfm+MR4hj-CA8lJyKYyeJ(1&ZN(>4QbqpIrX{A`@bE!
zzb;6LF=%-GH)XY|iHDFx3BY#5Zq}z0++7!gASpinKhEAdD(d&^8m1(a2I+34Q>3LE
z#IGRT4I)Ym-3_92NJ%Q)NSB0kmkix84BfofeDCL8Z>;B8>vz9@=vul4ote*dowLtA
z`|QJ#?l9gYt^YZ4E{{=BFw3lG3m9i_R5!MG@0HdU5UC62tlq;ZZc6LspO^mHOtS?=
zlnU55p@=Y`5vslhlb~aVDVX2y_pK$<--E%*n)~a$`uD~lu<}P~$q&XEJxg&1y-rnN
z`}+JK=`LpOv?)E)_j<>{?dbO2zNAv#bEXNJxax%VBkTbYZV(CZ_I>HV>kA0oayu%X
z!_c11${_!Us&$5|_U|Fk?Vc;SL}UpB_N_XR%f3V$o5!UXCLW19w0`{PE66A$2SX
z^DlS)c6G{c(XuwMtEnK2#*+;(p0Au3II#ql=Inb*UiE8Kxpn)3&{BD|nQnasl4Wmo
z>YB0d)y6GX>A;BOgSQ*?@BN#Md;llJ4ZRL(pSnl1LctGL+dFO~>Zrpt2uwkWIYTHUx44m
z5+!BvJFZtKF3LdHx}IGFRC)hVMnYUHFj|JPT+BH?aBN0$>5b$~OjO20I9o@0T8K{C
zM?=cr)mxa5>2>()H1ndlux9@H0!#{z1P18ydo~<_kX9?$AQqUN>q~G+`D$fj2fR{A
zfyTpvMAoqN0IZ2oLl}nWSth>y^P;v4AUHpbCE#DIKcn)5z=5iI2a#)Zvz?!{ow{!h
zrt13ppbhs1Azcv%Y=i&NIt@&}OEgVvAXbRF-hgFaS%&%qni(2nZ3LLK)eFfOamIdk
zXU_sF%vo-pH*5kzTJdjdL1Tp`tUQxa}
z=9TgD(DU5Muhw1ZD$#0pH7Eo=2e#97Ug*0$`)|Uw@VJjTskjJioJI;|=$bq_rC_kk;Pr
z56rI2n#T@Vt;O260zJstrLc~77%)5To)&xZA3tAEUfmPg&>k!pTWh^9L;>}qy^xoi
zZz1M%40)1Qyjkcr$ofq~IWX@n(FqcLhcTA&Cid6Kg_)i|7Y_?F-1H*nibX*tKy?F^
zrVB9PwBQd;CdChEpdKPNYIPEvF_%A5_L!{yyYHDq-Ta
zagQ&U5Z?iJ&pR?q;m?}{a=aSF|Is5M0o}-@&P5K%KoxVAGw(?MaWGlOk~MX(k#Zm^
zsq%@6j9>afNDj%%V;-Q;3DYoY?My>w@p%CExAMWfq0j;&Qo}g*ilf_ZVIt-zZXpQN
zt{$P5$%aDdJKp=Vl?UfBbAzJF@%mP9zsr@d1qa-y?HNn~n0h1z>G#YHeh&rzPa5U1
zz?W3a5QI2e;JlcTDH6EAINO{{+yN)})&f$RTa8K*?ba`VRI5xbkEz#k0zYfz?;QY}
z3%7Z@;!+WjJhgiY`;xD%@EE6>{;0&1M-nu+&y*XN1D}ioPlV|*5rSLbz2nzn=$jwi
zz}0$^0kh~h+E@U)$_Cvo0+hEFz#AUt8{l~33;BHpK{CBNn{le3n|DVxoS)RdTIUayJ4FS$YwzGrg4?cF`yr>!2<5&Z+P9rh!lAW69t`?NF
z+VctO!Yjcw;46FkS38ruhd0XCBTdBB&O^KI9^s&{Gf`MSN5a1e19;x?xKVEoK$Lm$
z4+OocseJjxG8hhCgW1NJ43LMsc=hKahc4nYKZOCouprI^->)7i0E-2`4^<}8AcfZp
zoHG5UWd8#+FCPi^{__JV<%cP7s*v+%KSOHp=Uon-4;x?@)Jh+9I}9N_#3m4qRMX96
zBxdr*sr=S;bDUQ8v|!#bz4@@LTlKgw%hxkKHP4*oVn}GAq)D#kupTIZ3K4O|Rh$H!
zk#=jcPDGVircKiIft|t8<;nwl!kwtNdHsgG{
zxw&fVEqC%S8^8oCS7%Gt?nnN3<6c=h!d6D8w+#>mj??BFz$V-wxgI#AT|94i`8X1T
z2@3!0o_DLd@Pw30wf^r%m3e?#=QE1M%mMJ?7}@L<|qD~R&ac7hVU)=PY>Z}h}6Y*>L#}C&0Q?-WmMWe
zl#(of45y_Tzg#2qb_7%lZzGqtkC*oWvZe=SczTA^B6JH)lqL&HiE|e5YMwrk6&x>o
z0TP=})R7=^-yfa9z+&*1phcp!lmNGP@v(nw`&MSbSgu07C{tjTSK73}r=d(5t;9QX
zlFRP}ATt&lP64VVSpYD3ZdZ##;d_n6_FjPd8YoNkPDOy^NZmzX+R^ET$FzP?{Xdya
zBy$LWD(K<54cVXGCR*9Y>Q*7#w%*r55cSEq==v9#`3)THp4Hz`7<-eB!%dx!*=uxR
z{mS`aSVjP>xXGzzh}0S)z~&5BIV(8=DmN_-Sf9MF?`q@o6tVZBn*RIuZ&^c6Pmi02
z+)y}7{q>vtdh~rz(cBp=qT&kEz4hc--b{BIh6=!koP7DkPX_t#jPO|h^WzJcS$RN$
zw!GfkG6$fljrdg&u;8{ApU6)(O8X4rq`GyOFQ7cfx&5vNrp?Vv0c=v^wTJlSBYdM$
zO7B4cRzaX>PrxEhASfJ-$-){cKXV^IF5kUPq)8Mt?F^N21(8!H{{85mG(mf9go91f2{#A>2glcpj5GxiVQ&$3NUra^#T*E-AeSuTz_%#X
zEc6=B_b6xwU}!%I5VFI1=l_q)|NkbIZF2{#+`X;%c*BApu(z=jr^5AY#ID+?wFQWb
zeE`GbP_1FCV-|V^ymN#Qw80M8WQ>0cMYhSGYZ0BT9hn1rLbgAV%W=@5bR&|!1Nt$9
zQMweZEzDH`kCOvFfG4nYUMwU^)7+}u3P
z=k|H#1Dwq?P|5#hIE`rPy|=TYsMwWXn$$xatm{4niMU~ry^=`&eD}hZt}xPzb0OfG
z5vf)r!0!EJXJ
zT2%kXH~#-RgxU51hjOBBhM&c+UoC%;!R-$mR*~ZdElR{TrRT=xA`mej*)2JvDC<56zHmro&wwz6?0IpaAbQIOrdSX-tII30mjsXLmkqAfFcRn5X
zkv|Ch`f|)Z0km5t@NvB_a=|nGB|uS78oj=?&7t&U1lw?m*wbfr$D;l%1sE?@?|bTl
z%DZZhqpbc|!@$Y-vXfM+xi;J88I5X$?(6`q5d_@x;`32u_XVmMKoIQ5`>b{ZL8`kD
zIrR`!$ETpsbJZI}NYS?>E`FT?hT9si*QK#K=0D9Dh~Ck2AU-QcG4p#`37Vt@I
zjN0uT$tA@r*m&C`hCXo`q!dB>={A1-BnCDwKy}#1Tj!UyBf=eUCX}ola?pKJ4~!zY
z4gk_|EPHSh#SMtQyjKTcvjy-Tj&_v5xhi$ltN8-zWt~;j3l@D>ldl4PV#)d<_&`t|;LrmXJ|W(VOaBQV^jG|)S)FXJ|97XBSQ
zcST$s4FeJUszicw$#ur?;IkxfNSy$9Wr3@$I2u@ayVR--Ie=YbwF|Wytv84E$*gNj
zDF0f1iMZ~z@!!`XjEeIydk$?8y$wKL3NZ4s^;IQ601^Qb8PA2{A;~iil&1U=6CB
z&JY-rc=_}yAjs`$(*K}21*H3-^tyW@KV8sXBl;OTfGKrwJVTfpgLX^hzbp=dWiV|2
zfYzpf?=6Tx!(Ra)8!Ia+dgG)u*<>`XAaVTF1)#PX+e4fef4?AdtdNKHJ?9bV)!cb)
z7_0nCXM#Fxe#1SHpt@fYDD)MX23d&b6~u;3P?5-VpX#w
zd+7|S>oZ$#n>ilJ
z*vd>gv_`Ce&9mSptXh^WO8`^Z8QV`F&F!?{i{AvD@V&1TouteFMBAGE!#^bOX7#Eh
z-o;az!B2bkeM67QCJ4!IHlN-^ux9cgc88||+hhAbtKcL!fR^1GH*Q$EwQCSlVm-*e
ztt`2VVDbltNO=COwxR1=)L#$aT13Q!W1PjSi}X_gu6yiPGX_wd#J>cGa0o<)f812w
zP2);jnw$XCl5A)#-2-xqzFXON7SAvb$GQ)}vW%2iiPk0H8=4m0sk8w#$&YBoAQhNL9svUchhQ_SpfBGPxKJ={k2zRF<}%`pwhWiJkxei|E{(2GGL(%o60
zpA17>Lea8~u#QM@Yi1Vbe_qQu+Hg8?Er}l(xtkiBFbGxwh&UzZPy6Eiw_n@eqXxl&
zw|I94>%xy-tw2C=y&DF2Zb=n5DIa<>`r1ulQG89x6DDtfU++fq56=>!+#aoT
zEs7rRL}`4#*s3K(iIL7;nAiMZchOk*8dfz1KQ9of8GHBKmmWM;JmhbZhJa=q#v(N@
zkLIsTyZq;k+6I+!X+6|)Sct;dv{{jfB7dRI>n@8_=2{{8;w?Ma)=@hLP}t9w(&Els
z{S3ExTP_U{*CS0`UA2EC)x1E79ylrckjH}J?bTKcO%XYh@mkX_=NyUl=*sGVuYo3@
zr4=C6`N5K=c?SD-!?SH;dTu(Wadd1l6Y!4}Hg`P1VWqUn`S6^Ne)J489Ej=5$-eJ{
zaGcUwrbz(I(7-UwronA65d1+on0ktoWOTGSsuq-}v~d8wSoa>$zEzJ$
zAqbJzAf?#jnZaXu-^)7S?mWMJMI|NCUVR8^xwmeuUP7HFiP3R-(|S>W}w$E;K9Va`5=>``kbw_NzZR=9@o-
zL|f6Crow@RC=+g@U8U$Sz;T9Z{^i;j*L|3*{t)VBPT%SZSi#2|gfd
z!$%-QduUe^S@)BSsUT<9yaa_Y_MbOKullb+Crqor!5Ib|%%N{->f!z*q%3L%pf-k2
z{CEKEH5>)00Ab@&fu`olZtuVL$S_YJP~uKM(t1V*`q}NyoOq0TbLVE50zZTu43SfjmHL*3D~C?kdc?%fd&)x6t_VX6XS6
zOzc2nnCoMyy5#Rcaux!FaX~fz)2zq8+0c#|vxNjCwHHaW
z9Bt}bUT-L1Vg^{zAz@vD27(~iFCioAYpoiUDE_h@V4a4<MXZ3Dwce#w;{1htnaPjA?o9%R_BQf@NJ^>8fVtf1-Ok@z6BBiqzZ*tb--%^m*
zn{z)S2~eIr-vaDC%PT6cKx@hRNHdu^%kTcz
z9FUa^0V*)Ivan0=(Eah0|9-=#~ZH{f{6Ty{O)$
zfbpJNBZgL(u4(HbU9ieCU|69>v9-O<-C8>LCtjz=Xt%A-U_%rddu
zk!qh9oS*qlkDrU<$1?(O5vvLO`#!(^MUms<3);}dzvN6si34(E!YJzAKh=Id@7zn>
zBQ($l?+OmRiLVP5N8Yi>gVB)FJ=sDvJe|@y(F>2d3Y%mkes>W
zLG{Lups%mMBXMlKJJ;{BIKq>-Y(Ega-f%Nn-2x`{X{-k>CT@xAxKdJ%HWJN|Ee)e>tiL$Jh8mQKH4CAg^HrO7ZI0v=V<+!6JC^%+QNRECkDQ
zKA^*~iO9e-ce;N<`G=9oLBkh8>D#99OB4*Eq!tyFF?cs7xN2k
z0N}ScA4k6*>V8wMuRyww{JG#AxeWrD6q0LJLIPuttLU3&Hm50-QyK>j>JQf)kFc2Ow%t(;mWIQiBh#YSu-J&fpee
zJ9+Uvxj!!3<~AIGMZFLZ03@XXTtYN~enm|v1{$?8cD?bU!i(T;MO;WlTT4sDX}ZNV
z*UH!xs&ZDeqr6ut1UGm_-27@I+1>JE1alIPlB^DP31~a#nZ|vV1>elDyg$}Egih*E
zmFEhFJF^y3BZ%@F&cO;?ztV9)M
zv-a@@duyXosk7^@k2fu(x3utYoV(b;_xOj)wb&n;N6{Bcer=o9U#Im39KJ_y#Qp7FQ#MELg-Ro30F&WM_TH&byfr&F@p2&n**19Zq~V$B=j<|sDrVs*
zc-47)@1tsafw7TN9cU`qY)BuI$3eyq9W8t->PM$p<_yQjCk9VSM^odE6+E6xwa>QqgWhkuTe|O{N6H$N&-7Goqm$p=UT5
z(P6G%{CnRjypMFG=Cx`8nqLkq;j*}L7uK^*DYtW
zeCa7~gC;7hPOpwPe^9&l1Kwf$W!j0)WV5ZtV+G&&G4yx;ETusD%sD&VLuK0Z&VK7<
z{_qNx$_4MsSl98AXK{!I_OqT=+4E|8uk=m&7@nh0-HO*)@7X-*!teX7lQ#nrBf=J(
z@Ld|jU6L|FV;Q8>T+xd~%F}7qTSFG*DlVytOa;AzwZbPik{{Ol19kFLXP#x3I
zmd|09=LOj{AXM2o6?d;dd9^^$32@*rjVav;Bu-qVwx$?COm2o!zW)%s3XmPUV5*16
zB%<+0$z(My^Wt%jX!s!qdxDjN^xQd2{4=uAx^MAKwFa<;ES`9gTlmMKp_ajxu5hsgX0i>1XtI^0B_FT?XK|Oe1XqT-FPKI9
z8y2h7D?$^GcT7yuZ(!d*Q8bo&WFR^9&l|aiuAr?fKj=n8qV{OkJDQXTpD50{6w_ma
z@yDDiposEoE9U>T6i=eapK<`=TBwq=Qm3pCwyG*Nf^x^%X_wgr_78s}DG<9<7HdK1
z{kyT$+Y!kE7FU&Yg>U67;P-+~uqmKb^=V6bGcObt)o<5{O5oih0Ktejq?Ukw2Yb?D
zZ?`h~aA#de#9IUnN&NW~(V9Dyj6Vxc7H+AZVOxH{ZQuL$X_yzGT0I?3X@0b+n#X{L
z-JahMo|JtVV5*YC0KdMVhGeoz8ect{U&W&sRsD5~evp?w=2c+?OIn`+Xc=yTO%IN%
zjJ8WxbvzcYp<{1t6aW@*swc#M5kMQL{$X5+H5Cws!-hUxxI`#)5_f!EYW9Be{Dioq6
zL1~}vpRy$`t{@~exp&(MCm0`E@~r?d%nr1viGBqG2GuciO`JGrAYCy!qQ`+djXxUI
zP+&lUC-)-+g7rD&3N1QHMjji9+vy_{p+dQtv4y&hHlG$WwL!7|n?JX_>H2JMYko9@
zM6Yj3?s%2vu@o?v&SxOqlc_$=;`9~bpZ#9gHs#mBTvpi+$eq&7c?+8IKHl#_dT2xVsaCs6S^6@zzYAF$x(iX#LsUw@G
zP~%I>%qhNm3Ftd}%j=%Voi
zMFH8h2{>Y9d&LAa=>m28+L)dKjc`C8?_M+KAvaOG?FQkB^vzAhJLpT4%AH$Nl%ksG
zn?7|x(`OSgk6X^ev$o0MOuI)h$NoE#)J?6}`NPoBzxF(4&6B=c_OufK!S=I_O6xbi
z+d90zsBe6d+Q*iCd%kSbnw1xDhoZjF&P8&Mz~3fDOB=&`6lK@jRKaZwx(2xNl1d>y
z!dAWSXx(a=et1^B8L5fG4`o^9hU|
zy-Xo5SNYheTkJE|)?|0!ci*agxaLXbs5mcdLExzX5I+=_mw34|2cU%jNq`HwvUyhV
zti7!Ns{#;X+Ikmtp(|c!Wh-b#Kk5BUPOb1c%1tVyUbVk_9cvO?_;r7MqjD?Fo(q*A
zv>%C075iM9v3ig%iZWa3*S_{~Q!nZoTI3!=t*(T5v2sVly_4`1y>#!ZcEXEjyY(xe
z4|I{2z*d~Xq*#^=x;hGGgiG-K5wO~G9dF^
zq9}cHr+mB-7D44erc5qtL8!oX_BZ`4t_QlU)hLS*cecBX9+Nn>0bd7QYv!4?TqIQ_Oe6+N
z34Sw1J?cI?s!!+GyH|45qVq{reDjeP9@=qppgG38cN<@5mjCa&m|;BGe@=5CHwt>q
z>VGaGS_xRK-uP|RD#3Baj4s7Ce;1I8@S}chZFzDgktIK`a*eKp%QMPL7h1vlk{~1W
z>7{hU9#c)2AJ|#gN%#Jk?iz`Rbri2s1G3nMk;iG(`Mi5klWl7<%0V?xsyBp~aYq%c
zu@XnlJufq7i98aPo+HVZDrS^LR0s97nXS*32#M}SBjlc}S524)vM&Q#Lc@esmL;*q
z3exK;)sJS3VrOOs){aTOT1pSFZlTGwk`{25rL!r}KHMYE5oZun5?ph*^>TEe|IX_Y
z_@M(+i6s3lP9(p>o&D)M>4~J;EfZ&1n7O{~ncwS1mXR)@s39R}EDGtq>8UPVdTz4k
z-Af1Vh+JLirl^?bHQXl-NA34LDJP&df$g74l;(*he81)&8buzJ^OopzM#`dvlDlbX
z5T9+$eTs2H^Wwb2-WT}tLS_ez(xk;_O_N);H_z$m`C3QNaZp(w6R|@-LfeTMFDmaR
zYaPAN91-sxj7sf*qvUo+^K~Z}--ZZ{Vi7O@zSOcg>Uwy_hvxZ1>D7a?SCXW$hGc?p
zk;V_5HAjYrN<18Dk;ysk9m<~Gi%vwK8nrTw;#yvM1f%0RnTPionciz~Us*m|TsQ!=M*4l^;h(WCLqfPlwN
zj?Fi2^xpaTwS6bpk>(9KB`ciK$jJhxXQ-H{Cd9M?YE7(r-o<|?mmUW{KMs5y%2~>|
zHi0*n)lUy5W^5TECc>g%yuOE316=PlY0ICINf-ff9;Bk`0o#qYPmLOB8uB>~6nvx9
zn9D;cpP%=jVv{9;aJ3=6lGbs|(Gia;f-Ef>ib1V-sEU2k&C$p1@{OM2^@VvtsNx3J
z3S>Bl&7X(Bp`SU~r5AWYwSVgp4zL!F=7-3>1AMa~b;Op({L@UiYpkyIT;Tv}r#Ptp
z@E;~fPxpc-lODPi54H^1cg{kt;Qcfvmtp#T^V5zZdFsc`k7JSX85C(p5L%}L1kqCW;?m)+G`T^Cixrz=_zUlLc
z+nMq2R{4n}ESOJmLDfVG(gQ}7-oMM}!yC+jEhkbg5>!b#s&D@$`Pg8bhz8R%!Ld!_
zL$dwG*Do4E_W3YXj@UKAW)+WV6QJ&?jTo_`R%xe5rjQO2MI%fYGAvf9(~B-PVFxt2
zJABw7%Dw!OmI24ozXBRQZv_ctgnjJKMui`ht{g;t+{F<0Ag$Rj$|^7@1*r9NuuN))
z7ojI5#!#k8A(aU5eq_e
z3;c?X8?>v=E|zubK5=Y+xFgTD%>0j=xZsNoR(nm_V>Lq7GxEzg_fwWupYXz*BefeP
zY}H+hz{g}KEn`{m+0k+{B+9i)5C+?CXk2Mrk?%-aKe-$TC3Bps;x{(yI
znxLWmHve0$`J4AUU1O||T^*oCukSQhrD=0u?e(%v((~JIE`2HEFX))~a?*XdJSFem
zwpzP*&QtEnT%+KpV{YX?y^ip6Yk*A(2@D2(2Bb7T$`oDuAF5fsqIz2ux{TFtIV8{Y
zU{5CejkY4{W(&!dREZpzjHG==vj*m8e%ceV<_R^=eRpS=MUYd>))RRx^00i`kP{5;
zjraMGn{URvl-69QrrS3mZZg-2kW#0-nkZa<;9!8#*}&{$aZNePvQu1Ty3mfR@qoTy
zH!mCQR*OtBH`9AQ{6cBzvom4O(#{F|j(0eyh1w9WNqlWBhi4_Fh7Jl<@
z)YU4T5xE!*`vzy&{b%2*W@Vjj0IwHArr;tn859Q_3rEoQ&O<^tN|&IWa>
z)TgQ}(4pUQJc=9Ii?~VXgACmrVcjugnW`
z&vY4s+1aNX)>>;BPKN7M=5jga^G8*ty)64ZTiNH3^Wy}~io{5;>Q?QZqa@wFF}v}+
z)lggL@q?T13^*?(_xPMU?!?FTCQEofoQyZY{Pyb#tR&Vm7p(
zaT{}M5{F0Oej{^tGDpty$1`n^y0pgx21~~