From 6120c8e36d1f002068b5ad5148b22d19eab855b3 Mon Sep 17 00:00:00 2001 From: Juri Date: Fri, 7 Feb 2025 17:34:18 +0100 Subject: [PATCH] docs(nx-dev): add Hetzner Cloud success story --- .../2024-10-25-sports-retailer-success.md | 2 +- .../2025-02-06-hetzner-cloud-success-story.md | 88 ++++++++++++++++++ .../articles/hetzner-cloud-story-bg.jpg | Bin 0 -> 64615 bytes 3 files changed, 89 insertions(+), 1 deletion(-) create mode 100644 docs/blog/2025-02-06-hetzner-cloud-success-story.md create mode 100644 docs/blog/images/articles/hetzner-cloud-story-bg.jpg diff --git a/docs/blog/2024-10-25-sports-retailer-success.md b/docs/blog/2024-10-25-sports-retailer-success.md index 23d9337f1c..a429f43294 100644 --- a/docs/blog/2024-10-25-sports-retailer-success.md +++ b/docs/blog/2024-10-25-sports-retailer-success.md @@ -2,7 +2,7 @@ title: Improve your architecture and CI pipeline times with Nx projects slug: improve-architecture-and-ci-times-with-projects authors: [Philip Fulcher] -tags: [nx, 'customer story'] +tags: ['customer story'] cover_image: '/blog/images/2024-10-25/header.avif' pinned: true description: "US sports retailer's Nx monorepo transformation: CI pipeline times from 1hr to 7-9min, cache hit rates from 20% to 57%." diff --git a/docs/blog/2025-02-06-hetzner-cloud-success-story.md b/docs/blog/2025-02-06-hetzner-cloud-success-story.md new file mode 100644 index 0000000000..6e6a7aa811 --- /dev/null +++ b/docs/blog/2025-02-06-hetzner-cloud-success-story.md @@ -0,0 +1,88 @@ +--- +title: 'Hetzner Cloud gets More Features to Market with Faster, More Reliable CI' +slug: hetzner-cloud-success-story +authors: [Juri Strumpflohner] +tags: ['customer story'] +description: Discover how Hetzner Cloud uses Nx Enterprise to ship new features to market faster and with more reliability. +youtubeUrl: https://www.youtube.com/watch?v=2BLqiNnBPuU +cover_image: /blog/images/articles/hetzner-cloud-story-bg.jpg +metrics: + - value: '116+' + label: 'projects in modular architecture' + - value: '85%' + label: 'cache hit rate' + - value: '6 days' + label: 'of computation saved every single day' + - value: '45→6' + label: 'minutes on CI' +--- + +Hetzner Cloud is a leading provider of cloud infrastructure solutions, known for its reliability and flexibility. Their platform enables businesses to deploy and manage cloud environments efficiently, catering to a broad range of use cases, from hosting applications to scaling complex workloads. As the company grew, its engineering team faced challenges in maintaining development speed and team collaboration. + +## Challenge + +As Hetzner Cloud scaled its operations, two primary challenges emerged: + +- **Team structure and scaling** – The growing codebase made it difficult to organize teams efficiently and allocate clear ownership. +- **CI performance** – Long feedback loops slowed down development, making it harder to ship updates quickly. + +> Changes often required modifying several repositories and running multiple pipelines, adding unnecessary complexity and slowing development. + +They found themselves in the situation that plagues most large organizations: the struggle with code organization. Over time, a monolithic architecture can become difficult to manage, with tightly interwoven dependencies making it hard to separate concerns. Hetzner Cloud's engineering team needed a structured approach to: + +- Modularize their monolithic application into smaller, more manageable units. +- Allocate teams more effectively by defining ownership at a modular level. +- Enforce clear boundaries between different parts of the system to prevent unintentional dependencies. + +In addition to their monolith, Hetzner Cloud had multiple related projects spread across GitLab. Changes often required modifying several repositories and running multiple pipelines, adding unnecessary complexity and slowing development. + +Their existing CI setup presented another major challenge. + +- Pipelines took **45 minutes per run**, introducing significant delays in shipping features. +- GitLab merge trains helped maintain code quality but resulted in redundant work, repeatedly running tests and builds even when unchanged code was involved. + +Hetzner Cloud needed a solution that would streamline their development process, consolidate fragmented projects, and significantly improve CI performance. + +## Solution + +After evaluating Nx and Turborepo, Hetzner Cloud selected Nx for its advanced monorepo management capabilities. They started a [Nx Enterprise](/enterprise) contract and closely collaborated with the Nx Developer Productivity Engineers to assess Hetzner's current software landscape and evaluate the best strategy. Their goal was not necessarily to create a monorepo in the first place, but to modularize their monolithic application. Nx provided the right tools to: + +- **Break down the monolith** into modular packages without affecting deployment. +- **Define clear domain boundaries** using [module boundary rules](/features/enforce-module-boundaries) and [conformance rules](/nx-api/powerpack-conformance). +- **Improve ownership management** by having a more modular structure with clear boundaries allowing for easier allocaton of owernship. Something that could further be improved in the future by using [CodeOwners](/nx-enterprise/powerpack/owners). + +Beyond modularization, Nx helped consolidate fragmented projects into a single, structured workspace. This reduced the overhead of maintaining multiple repositories and simplified dependency management. Using the [Nx Graph](/features/explore-graph), the team gained visibility into their project relationships, making it easier to coordinate work and optimize collaboration. + +{% quote + quote="Junior developers were amazed at how fast things became. They'd run tests expecting them to take 20 minutes, and they'd finish in seconds!" + author="Pavlo Grosse" + title="Senior Software Engineer, Hetzner Cloud" + /%} + +To tackle the CI performance bottleneck, Hetzner Cloud adopted [Nx Cloud](/ci/features/remote-cache), highly leveraging its [Nx Replay feature](/ci/features/remote-cache), ability to [distribute runs](/ci/features/distribute-task-execution) and re-run [flaky tasks automatically](/ci/features/flaky-tasks). These capabilities allowed them to optimize their CI workflows and eliminate inefficiencies that had previously slowed down development cycles. + +- **Minimized redundant processing** – PRs in merge trains only reprocessed necessary parts, restoring everything else from the [Nx remote cache](/ci/features/remote-cache). +- **Drastic CI time reduction** – Pipelines that previously took **45 minutes** now averaged **6 minutes**, even as more projects were onboarded. +- **Improved debugging capabilities** – Nx Cloud provides insights into task execution times and makes it easy to search logs of failed ones, making troubleshooting more efficient. + +Also having the **[Nx Console extension in their IDE](/getting-started/editor-setup)** was a big time saver when working with a large workspace with hundreds of projects. It allows you to explore the workspace in a more visual way and trigger tasks directly from within the IDE vs typing commands in the terminal. + +## Results + +### From a Monolith to a Modular Architecture with 116+ Projects + +By structuring their codebase into fine-grained packages, Hetzner Cloud successfully transitioned from a large monolith to a modular architecture. This shift **made the codebase easier to maintain and evolve**, reducing dependencies between different parts of the system. It also allowed teams to be allocated more effectively, ensuring **clear ownership of specific areas** within the codebase, leading to a more efficient and scalable development process. + +### Pipeline Speed Improved Despite Codebase Growing to Hundreds of Projects + +CI performance saw a dramatic improvement. **Build times dropped from 45 minutes to most runs being around 6 minutes**, with some reaching up to 20 minutes. As Hetzner Cloud modularized the monolith into separate projects and brought in additional ones, **the codebase grew, yet CI execution time kept decreasing**, making scaling seamless. An 85% cache hit rate saved a staggering 6 days of compute time per day, totaling 197 days saved monthly. + +### Shipping Features Faster + +Consolidating projects into a single repository **eliminated the complexity of managing multiple repositories and pipelines**, reducing overhead from maintaining separate CI setups. This simplified cross-project changes, **allowing the team to ship features faster** and with greater confidence. + +### Continuous Refinement in Collaboration with Nx DPE Team + +Hetzner Cloud continues to **work closely with the Nx Developer Productivity Engineering (DPE) team** to monitor and refine their setup. By actively collaborating, they ensure that their monorepo remains optimized and that their CI is continuously improved. This ongoing partnership allows Hetzner Cloud to adapt to new challenges, fine-tune configurations, and further push the boundaries of efficiency in their development workflow. + +{% call-to-action title="Want to achieve similar results?" url="/enterprise" icon="nxcloud" description="Learn more about Nx Enterprise or get started with a free trial." /%} diff --git a/docs/blog/images/articles/hetzner-cloud-story-bg.jpg b/docs/blog/images/articles/hetzner-cloud-story-bg.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ba0d6adb6ff395c3187413fa47325d7c68d59121 GIT binary patch literal 64615 zcmbrm2|SeF`#*fon8{eO#iWR#)X+$&NVXxem4+xwWKFV#kbP{~%2JlfHk9nyiL5D# z5VDKPzGvTg&aFPn_xJt%pa1LiJf|_syiy|3k*bKUK9?Rgb)Y_LV$nJ zPA}vOVL+q7(9qJ->}8;5*t?IJiHUh1Co2~G<2=s6%>iD=kDlN=%y;6b+*u)^vvR7k zQnIQyH8pQK**e9>wjlohUSQ`P#Ee0aF%T7k7eX>4sF)Eu@1e7>m`EyE*1sBJ4+e>* zMuBaA+Fv^$1d=$yn z7E79eYy*)NqLYR4dI)G*a5$|zgusGNCWtQ#QfI=z7boL!WPAV;sfCh-c$Il+kf6zv z$z({Gj6*_@ub>P`gAJ`rCJ3UHH7J_O!TdG{b=fRg+3;-e4jBUo3O9hjkvNE__C1Nf zs!nEw2oyRzYo3?t4QFLY3$03o)MQvmtPmc`Bh%f^VFeo?emuB2=s6O?plD=p;0F>* z3*j)}g+TE_48j542qq>BISdIQl@Smb$w!8W;3)NKVouRJQXw9zk*o{^!B(pWqvc5u zMD+86n1CD@0PuS{JeoC+Oak{KP}J+uVzxu5L<8*H5R~Vof`=$bGC+(rnU58Mz?q^gN<5Am=Rz|3k;XOnc3eXQG*?NRLtPog?FR)%BAjEBiJj@wZB$-aOo=r>{LXv?5 z;Bt7-Lq2a7&;yJHd=&_RCi56zQ0K@DxF{ky42J`FK)$e^V7(*IG9&_E0TEeE%++9J z<5zF3w#3#G02lxwR=5j51_%(A8A8*@XQ2PVf&{b^0jbFX4Z%WH(F(HSAzB~>0G5xe z#ga^>F~IqHgHFIV`AszhghDXj03;Zgrx;l+4CIRe*AIhG@QolK1uzGVB!I^U5=kSO zjR@q}Z2$^CG9Y;vRKTZloAqxr*kshngk)GXKp`Zw8nU%MO_ofDhqUlORS-+H0k8v9 z6b{f3{6vAS!lIBNKVJ+E2TMUDdm*)vNQegs5Fs=17(ly65g|GNFP$JlM!j8`kW{a+ zOOIVqa1atACn0c55D6wl22c!qcLZP*RRo1j5Tc+VSX~Vo0`-6+zXgF*(B8^OB<=_q zoJWMO;|C-`AhA3KI3^k-;3pX<2Z?0D0fRySG>913;&USKa97bJ7!x2u1glO?grG8f zJ`uv;ARq=(hXp|dK^j6ks|TA8gyt{ zpc)FRXw7d0rZ< zy!B`e3LRRR0^sxpVnQek8U>*tbuzY|0z3y9U;*U?^AmTy2`!o*ajia09%4lpJ@zBh z$}<~4z%J7a_Xp9?7yw9)Fu_LS=$^os|1j^C&Le|jLi`#Sll_LQ)%(G1s16QN#>(dhLRCPpijW|f{1kBdkg@-0TU6Z9A93( zFfR;_R|X=ZK;Z6QiQDfwU-_RB9r~Et4@<;-Wvu|1G7(8k!Z9I1m!e3p{gY^kBwD05 znLrUlMu58n1JKCe@}MEWi-|-;sO&ny2t2G-Sd=7SeY>g!x(*Y>=cOZ4(Gj~cK~XdY zQOeN)QAdv8x_ukFQeQyuWu066D6RG?>w0PXF;5?#m%VTC<+PUuwp8AQ2`6f#{oqAV6eg z9E4Hktp_LKF|-IG35_7K7LaJsk;qgyH0(A^4g>|@afsUxD@01Xrh^~~c$p$tSql}h zWC|;Ml8!Q~8j%&aK=^o~3Mx;Vpr|OvjLJKbLzHF05OCgA4sk*OGtmM0w=F*w$U|84%F9paK~sCrD&E_7Ww#3vd_qeIIWgr z);$};0Ge_*R1T5=1%u;p;17>b0y03X=mIo461E@`giuVv2k}+`>*p9@LAqeyV z2o;2YGAZJvE?_?^a2;@G$-V(HOum7HBLI3iFVqnt z6Hp$*4pccNz5_*X5ze{C>*}WK>W*zjk4Z`g86EK83H2xsWn4N5?kKqfoq4x##c4ig zz<;FODy`i{Xqxh4y;dxIuzdTN3<1CogvaDyR3KP>B!D;|X;)g11|||&(GUp>q^BSQ z*O>fp6CNN56*4CDt#Bate# zEOX4fDl|-TzA`k-IN2&3=mEXY|Dgj8<&W>p`)A}Xxg|~v)^oj<_~+x*%;il=*|ycS zp15oC+dT~2nZ_kp@qwTBSejEdy8v@kaClyDQ_u+r%^N_0(0ou5nH9~4B(o;U07@ar z1z0Fn{d6SPLJL1b$JGN?0&}$Up!DJ}BV# zVaPybIGY5i1Hc?`SzW#LF$wGfv}fbTkpXdF?$m?3~7QX72s?qY6s#@jI3GkLUb3XjtSF<$O^{$eWgo_NIKaqxZzECA8M~cMlhq zCKpzOe)8~XTTKj9U9-^W_iVQ^)~M|`d+FaFC;J*&)<|Vi|0nDLrC9=iT4C&yfFDNl zl4*ej5GnjbbrR@|G9F@0;^z%W4u%lmKqLX~4j^0v03RaZNo;bg2-D;Uq#p@%CmpAQ z>;}C`j)3z@3ec2qjtULSF80hv6d%v|DiVoAUI>>eKnr@4NAJq>-@SRo6aABYWwPtn z4s;dBMK!Q+N$AXq=kdL(9{=45D%gj@+y>gjz>WrVB8Zm^u?E43HJ*Y-0Q#ikp(GL= z5m+UXHwt3GlY?=X9H2p}FxEsOnj~X|0!q_iMZ;ZSO^!lS*ktVx8aX7uAS4+mn&3-A zfTcg87=9$2nuAxC8G+!fV%qIQ+9iLUx;*Y@{~zsHJlq)AGZ7{g;Qk*w{?iQzNX;4q zGEzKi1TAe6nHCwu2LM4O;k{&7K!=rayh*?ulyPD~KoyAHUI=)}v!O|>fL5$nb)XYV z&@*5aWJm?V0asLJSo_Wvyv-@G909~45(98dsSv^-Rp2V`N82g?T~mN*Y0lN<<`ZRsU|=J0cpz^96L4b5XqZ&L9TO|8 z8L$CC{K9&mv{t2bXl!F4nAyt4xAIw{4Cj>j#t>|=TUH!|E z7FV-ty19AZbuIf#!+vCs#bi&{_?+YAtVgTm;-6J--a9?<#~~e_@D%y&O#dhWCKN~p z0P?ha$iUqm$N-z5{0?gYuulb%stSm&jAN<7;24bjkbc1PkkCcQ#%?h46UjrSI7 z_1={caT|?}09;Xz0(k}{!N$KN<%9it5?&xFkeH;&>m8^Ja~kmZ4~#%S zKmx#Nz=6NT9Kn-dAYq>hyO-M}kSJ&fMu1EQutJ*%kw6wpfPLf!DQ0B`+Q6H`5wm;ZyZ(MIErSa7)|=`zUmAn z!K=ON{JQ%NB>mm!ss}&;mOgz~_ds|}@Fxg@Q<8cRV1h;vI*kb1C)_PSWK0r_G3+3L zL9%=VALJ1okO{CNBS0($M9@LNJfQiAPWli5j8cFM=!{1BvdsC)$_0LaiC|l1q`(eB zEei?-q84zFX+$WEh)1SkY0(iN-C$xP0>_NFgNKmdp0LWnyFY4 zMlp$mM&g4MVaEtmUxms0>w~N;rcTx-VoCg_5CxbOzEH-LoQ|etlQGQ!_dy0}6A{o;(85E4as`MazY~9vni3IVGj-uG>EH zQGVz^SE)QdEQthCULZL!IRct3kJ+!^tI%SaePRcqjEmX!c^(*<>$<1teXi!wPgT)} zPaX~Kdo;*$L|^<7+3ND82INms^obV^C$ zR_M#5rix01KI#Eyry2D6hEu4vm_(lg7_54%P7YLlN3as*10p=iM5&mD9bVt;&D`Yn ztP&b8yMMcEQAn~CRu;g8mmmhz@LNSI(uQ-hCJTD}j?pdBRt;aRN(LRI=^9T~)XnBd z6*s<22>G?9_S&P<*UG$Yyy92MH?E4fJiS|CqV6#-_gkN>d4aWFi5-3|Ej7J)>Xm9| z#_X}_9FOD=$(|w8&SKd`mYo;#MN&?Tv<6T0pZ+>?-qTL<3HH;yhGzHZFNIfDCPfcl z7S1I0g&tV8IWXvECwZk!qImh6O6}MVbf~;Nt0_9vrerQ@)2>fJ-S(Re-Kd+*qwe0b zDI)_?Z{x;t7)H~!I{nAubp10S_Y7n(}9$xEWr?*{b&5Bkqv_U1fG8SNc!{;*^f z;@UK3Hd@h-)@N|-NbwQ9FxA+4v1KwoI$kN)U4DAr^@_Vh1I%A&;ba8ZNXXStG zJ>2GKFDl>Y_qFrYcPFh<<*otNzB-Tc%GtSl#vyYPBk`WDf<;-fYfdlbM_P(Z{T;&{ zpP&AAuWKbn=VYIt)S}Y*l+f$p7dy~{MdxRkHk}KT&^PP4*HaQM?GLF0_Z`_?v6k@#6W88K9=iS{-P>fychRScfRi1hjvQ| z1AkP7H5bj~+I=Tq8|m-nC+2R?%w5Ygh*61ue!9kaiQ7`bnvaP_4y8?_zyk)#V7i7D zG2=1*!=rAbJXmQa=JnS@6(7FtK*c{BH=6IamA@Z9_f4x$Dsy>DA??oe49{FUVNpPI(eu=uW(%I zg{BDgJIUV6&xN6#g#}aVHKkKU1(r9D%A~)wN&R&wu-hTGMC#Pk_Nn0twUYIOqVx9^ zBHW*@Xcw<$YbQ9*q**_RwhnofXt?HasMUH0@^S6-o_iDDGim+l;ImevwwD8*EQ{Py z!w#S0?E3d|_i*0eZZ3Mk72S5`y2HJ@-J4G)KhA#{a9x^lSR2UGfWBDBC;G zcMiRhSo4ZccYG^S3S9PA*dE;6WoxUI-cd)avJ{;n*?uJ};>_5|mzH^k#Y z+8=$%G}Byh%4le^w{A-eJ=E>a-xGJ%rn2|a-M0P%xA=RmWQ<&!x9G2)OnJT*Wi{I0 z+dX?erl99?HhxbQ`f?0UR8`w#0jO}8M5Mvnu&_O zZt-N0gRv;X`q*IaLWT7A{;ltlx8@8=I^N8^=|5II9#cIOUo@|q#x&@H=PhC16*Tq^DCCs4j+!E>^bbqOxlC^=&o!K9k665znGIvZT?Tr+x>vFhN z5v8O1rgQ_%7f07ZOoMGLUS`XYRlsZl z$a_HAfYm{Q__6C%4HxtXdFy%|!{e`pf8FtPYBiG7ef!Gw?9*SR3gf+uU(Hjt+XlOZ zvLt7{Pr0O`QEWEy=y-h*xBmH}Hr3+&syX8;3M$1H%ftsaBoeMV-0L*U ztGKRQe#~gD{OoBnhlE?A=cnzu8to}#E>~g>I~E4Fl;3Q;_vA~F>C3h&M!y{_=xF-TfViK9@06{Oi;4VqJOB6NSatZ?7MVH#)4$LJeF!jSPLy+fSsp zln##1B^bwEa*~y{nrx42_F?Idk3JE@z7(e&DsU)ypd2+&;iT>!Q|l2Ul2I>dp`Py%m)S0v zd4}7#uwfgh`;3+M;!|F6B)npFd~$6*OXP~0Q|R*Oy|(h+ zo7gtJsd8h}r5CqO*+HO^u6uu`@gWslY`k>eJ}@M((o;>1_RHBkr%d ze`;IveahzWO4;6MS-;OPw|%2Wq3pcUTZarO*D-z94y$;`{_CUn`qqP_Hf_~8nI&M|)hNcvcQG1LTt+?MDdcE>$^ONiA z2={~|*9p-FE?y7*wZC8@%Tez(L{%{Hz_`UhouIsx7kl1x(e3rwZ;oA-pVy@nm^a)u zjn918J|X7hNnOLd?m=oiHIsFyxw#{m*etSgX+=7&EyVTE+@YpJlP<|%#3g$vJ>>-BUw>9A_Zfut89!9s$jlK)u?{XNM zanWV$eKV#ozQ)$;A?X%&L167XN_@uarb45F#hSy%U_2&AIRKS|FrcK#2LY|X`7oAN zkdlNI=n_y*)*Mv#)5`NQ0J%IQ`<|JHNr6S-0H+Z9U6AY_V16&>tC)*@hl%W3s%a5h zdnfKe0m(6hrzl5g-=<{=O1zC1jQS8k!nUJnL7I(5^UDyy2#?px3LcR1?oQl*;~_K- zN`_d$LV=ok029O#g;If7l4yf@@Ls&tzjMkY1pFzW_FK#}d2es;;5%xjV1Oa$?RCG^ zPfIz93?b;4@_3kRWj@p@>}R*N_22(TLOy0o97G29L6Ws^Gn--synT~W@j7&-dEQ>v z+9OEG$!L;Jq>PM=lBQA5KZ805BJ&2MgHZ|?j8X7Vq6|FK0Is41@_vl>V=yR@18l~_ z&bf-0z!D-tOG_J}l@9*!0surcqaNBQtUxl9rtA%7t??v`3R5mhcJ6QSSi?WS0J^S_ zXGhL{&sMAzt}A;oAaOn?mk4HB^=oFInL}TI%wWVtJ0;m%Cu+Z6OX7*gJ(1?x&$Cy* zxJ-wPIa??N_W)?~ysYvfk{Xm>bV+#H+Pbw*upbi)Nw&+ifJP+sDE$j#*fLnUsFM_GYmP%$9lVK=D0> zLu+QQ*0MR;)Yj)u)}#S`y=fi@i)VnYK^z>o?@V*tr%6J>beMHWb& z%xu7n=98ml1*>+ftZae=u-p!omy?wqU^p&l#ql`BQx?D`&w_W7voKti3-=K1T9CC_c^S2$>XN`8pnfr2eA zelr>$_%Y$3`>j;peB8rk#B58dcq-)ir$^Ha*^buB`BSy|bIx@sKU{-b9d0_lHF{G~ zp6yzl;qsJeYSI1K9HZHSo>Cp7+~`DwYKX^Hb}vMw*krr%K&XGWn??8Kqu&}2_qmr1R4vNCz8jcS^7B+f%R{AY(K;q^$`(v~`L)zNL82Z0)yMUnfQfZ@wBFuN|y?X%}74t9P!?U2M=J!G5~*dHu%L zk-i&cPM^xnKDmmjTyu=kKUemmuT0dqG(StEH%tCef5)Sz9Uj)M$I~}R_w28omn`4XujVeWiA)}tq|=0bNmtL6*g zbI&)&_tZ07Ay&QbGllFRr* zZvW}gH~I;xljeI=Ue!)Edy-E~m^Uf;U3~9y^w~PSOaIkOcSLbdXoTTG>temEu1=8_ zljohS&#pf?)cb7hPKf!3Q4Y2Avh$)hIe+QbJTWO)7@a7UJI_IrZCM>H!P!$+1RqlOHDoK`F4L^4>up zY|(;M8W8GX-pNvMVBPWqHESTJiLI@#4E1$>6SZ z;8?T_yhsLCHu2sSuC>Fm8cFYZ+0-Ke*U@Mdq6RA+?7+Y*G#dheJaUfmGwkPM#h>T8 z8IImz@kODMk8`P69J69GL}g} zAh`jHzsMsR7$jVX!ov${WOzVT2Mn1E5d=3Fyx&L?cO4**5vc_s)gYz_wuK+jQRpy=Ixc~e*j#IQ0FSg-&H%F6jFks2}d-s-!V2n2z|fDQmin-ry?eJ2<% z7?D)Ms;zKBB1>Dn+p5S8t5c-jt*ooTPZUFI6LTOGnHge2ffhyt3z?uK>aUypW|Sa& zOEm+qegL+^$r?yrz)}lzc=&*qRhhZ02KHTxCO$_O)W5Oe(K2e9yWL{qF~Z^kK;#WS z958tQ-I3H=zI$W@KrI6}9bn8xWW_?Pta+{V!Gan^Fo@z+r@u@E2GoZ66L>qQ!Nz9!+l)YEh%%U7 zl!G8XX2W@{_Y^v-L1kuxBHE~SkTn(2dV7IRfj;G+zydl!hSNljd3P!|K#B4ZcbWvO zX17t0pnf6;kLNc{_AS!UwoFqo70?+5NmxVZ@f&Zxmc5xTYzXBs%`g>=D1KDbtxR{n zMK+lP9Z`W~tB5$FtQ?>wf)12JF{SR(^EayC#{Fkf1sGJ%q>7zuO%@PHhK-nv_6F-9 zm?Q|2I`bwN4e8n(Bmw8E!Kw@D*naZ`bXg07d93A)1N`)jk_&u(AQAE07Zk4iZX`N3 zBH$;QK+(1=$V+OtR=t+l!NhR@?w(n=Xf8^!=iEe0?rqh`yXk+>ToL3yNZIQaL=v4SElXGu8j+*<+ z4e+Z+HK+i`BB=YmEDUC+36@t&76E}OG(H*>2E)T7W5o8p>?IqG+FwO;urr`O#{7wm zR5ZsKt8lzFxlG{*XSmJr+Nil?U|w(`4hY@M3i=OK6$R+PxG6o7m@38t$8)%OzgMGU zk&|Izrsm+ga7GxT@-LK;WURN>u1iSG>ryew^6pkKD&Z3hcGgn8{z(7&qt}XJ`e%v+ zx&$NAG!0VIfyH~#q2L8+g7-)8+I0=@Nf;Sk5McfW8O9K(+Ph2OIM9w54(O?0r2o1f zxD?=mnkg9A;DfYYPCoug0In6-Vy*@rAVCDO@{qKUia0Mm-{^<>B63H*m@u(a|AQ?A z<$Zy{r2{^;NFzsGnnUZj%-=u8`tnjQgS5Lg&T@>T&{j|lJpc;yJJIA5k53|Kal1wQt#d%@p;Zx9^3 z(+>lwsrCB$BUL3;MOaTt;A#TiWMsgLES2WtXgc*TK>Ilw@YoSF8G|GmgFs$78UZGj zWK$IC_trn}tZ<1jNn1Ta3wT{Znq^UDGCHqanWQVwTidRzk&KoBeiQg--~zBRM#KOf z0~}5U1%dKOEUyNHDMXWZFNA=>M9b>dM#ATnncEz+E3>jw25)7Lqky7-eqX9}FgT|X zi;|Ie3P?{tKmuI@j)H*7W8z^ZXq1^^=)dM6|M=J6;sJ&NcH;?Pl}TIEG}lx<(kiG( z9R}dFl5*r79Wc`E!o$}Aa0ws~bj$=kQ0+?y$N{UaC`guw(FF^GeyO`MA}Oiqz98+O z6tVQ5wHj1a1OSTZiZ@T4_AqlbfBqd(+?DfT-K& zr^3H1_xp^bJpJ)@Ezu!i%62sT8Z|$MYRRL%qkIcLe3deag@LD%iU=caLv+o97Qd ze@jATu(Z%M*tY3owoc=^#oDJQoqv1IGIaKac(dg3zP$|J%7vF6sm8QzHw6iU)iv&j zuNy@@g(aPP@%UU*LBNV+ta`ElV8m}{713=okk_!;`L2>{q4QpAXv4rJRi??gnX34@ z)t?6wYiFAHT2^ecI6RY|Rchx;M&(UYA5VU(`~A?sg}S1J>-)^zJWUpFir&tPZ?2hN zZag!c(;p@ZvLOPB2V!DFvw->;kILu@g-kHl=TN6ZmtepZ(<^RJ?Z6m0U?u%dS}>q5 z^|)}CW#OR>54NjuE+Sv`ZVx;9Hx-^fmZ@=%j3DW<$!c(B16RWZoO*1D?Xb=9x=3Aq z%K{KR9eiRzy?_>+^!}CIf%t!=(&$Cy!tC9#HH%CAymrlN}O$4*+HK^!)~|qRCvLCch&vhZ#EACtQPM(J+qEtcabWdmWt*U zQY*T7*}P-h+4E&XYS;dOIcpPfpVs>#dKLCV91Mo+(V44}&R#A`8g#ozQz*rc1cN}v z6iG}YiWpDKT`v4_@5;bi>8owD?TmNk^e)y~BqU!?nLM$wnk_ze>)8WtE=1AuhWx_s z+nqlvwhk70O<~_G#taThMyK0WXlEXnVeT>2uZvyt5Gt8y`e-rad~!M>hY3R@La00v zT<-I6MSRcZ+D&ZFmRr|VV!7_mI#E%^_&00V6Km%EAB>L{9e=qbwKDi|&L#BTypUc4 z>(|B)ZPQYhqB%Y}h~8}6I;>GLY2j9bTEeI6KX%vasa%L9R&!tG+5W6mQ z!&w&ul`k(T&>@3SFgWlggZ%3^Ly3$j9c5NrALj~OL_3FD+`|X$Btz?{W|u12RHpS+ zIzRqC?C*DXPu#LHp^6#7agg*QL9Eu(5kKCN$eAndb}%J$Lv;Yle)Nhi7w>MjXUBBeJEcU5NJ z5F6n0w;Yl3`H?UBwXBrD^0}6x2|@@~z&8zqo8kNO zuW#%?Qf2_1iC!@}K~S=c=wP@Drr_`hkThZcged}q0?&VVlgK3ByuVTS{RIn(^+4$| zq+dTOcqPz^Gw-0yIozZw?AF?tymo_sl0G1sgSPe-1Lo|cMFkdNXXq(c;fM_a?F4; z|Mjo;>o%&j^lV{6Wr)gD5L&@z)WfUY^g-=;ZK!^57kNfpiaH$Cd^f~Rn~_Jf1H24I;Zc< z;A9q7ezkrKRF5FjNwkpA38`$Z>pi1e%stKt$0{&N#cl z$ksaHdR1WJc;>pD#JYrL*ve=^-i?3-f9IB#_^nf;gy0H^t>~ZB-7$__`i^}irghJQ z05V{vqiA3B3C@g_Eoq_7>yc4W0%X7%1sw9F<}Pp$M4i6YWZOR6Jy#`FKT}C>b3&Lg zhM_5Wt5iaoAg$zQlF}SuSk|0?A9H=W;kGilc18ZF(Ty5tqjZ6P_52R>xmnBTwA=oX z&kSuV3;N$bZ8Q3C30uB6H1@DAiuW`_!qDnxAJoP+?VlX%*15YMZ#qf~z51*$A{@Ja zr2fha?p5i-QnL~j&mQc1Y_#WQtJ@CbXV#aK`+RK&n(ljbdaU1}tFt@Gxz@m`^1-nx zmt%2TOWohgn=c!vSIZE=;~CJ+OA9B~h2w)q$3qr4);;blPKgiBi9Y$dbH1t~ z_46<8?CeY+@=e9)tRG(nM@?fEwbo*cDxaN}?&O~6t~BRD zv(&=thF_acKYL1W$GRMgaFRUhYV*)tkJD93sKvt~+F&5m&8fnwYpF^@L!MbqjSc+u zI-OhjcH-)JwPg=?&wcUo{>v?WgYMBL_w<(ep2e+QUHJYX2)ah22fq@n2 zOWb+m4`-Y5%1Dc|r#{*3!!)gPUF6N!4PI~*OOt7M^mS_o@=O?OFA^Z*ad?I|c3|27 z%wz4EJn*;>^M?DD1~BgR3N5MZC{WDzzec~mA|e?)!Ud`mu^P0fG)+*>q?H~4>fm<$ z*_J0egjlR=q(yLRxKU)NTPyKI5{gWM6I4JO@b^EXDjx{f5dQemI#{W+Fr~nGDOEOS z6*v~;k+K@BKt=?!L3YZ>$B-K4rH2=#8J@IAX-&*|rYuQPQ#V$yk9m5uy_DKiDQtcy z&a@O^R4zS9KZ*QYdYFBE`(b9y_UE=HhKA5|x4K}M&i`r@um%QtK_Z~Qf*MIc2lT<~ z@lyYb=%*eYF<-enn?<%lQua6RK*mg4`Skd@4NzB~n=SQmuKD^&u7-tKWBS>7&I2y7 z(Ye#~PNjJ#IWvx|wl%JfYArb)kX8w=i#C0{B{P(X0 z9!0o5wOWx?sZqL{J8N-6BmdeBxm-Hko6Ryn{EnJS0`wxs!CzlN_ zgc2unZ+=|#c(Q-9`FicC6USb;bLp+c2ablh^o#k1@RI+1Eif$xep8^NDg<8Bn=C*{ z4Z<_#x4LD-nszeyryFaL7a9DMHbXBg)ZMGd80@Z${m^`u%h4tJ=BSMJ%ZSG`u z#W4y9H&Q&G|8qaUi1?pdc7K5k4-gcMg^=}R3K(U;^Cb`y0!;>?28>rgtO6&(4;}q? zQ?Fju=Pbn|$r#*fyRRB6Y;1qtpufMv)(0Lg`>%%heT0S@9)vy!1XYl1zz4xM!ht^& zh3}8;vdT04FXuy$pvORV^P(j<6){gw1gHGFk#T_F|J4#2UFs| zqWizjX1IB!VeyXLK_C|Q$*OH^#c<^xz-2A_Y8oXOz3Y!!F|*n&phegCgF z#D<4-vPWtUB~{0pvQ~?O57<=;{N;az0^R`{+-2~D-QSJIVE5~;0{`ClKfdI+W7>gu zzNylPus^$gQ{aCb_a8rZvHb^N-0sf*H_1RSo4h~&1q^BDFKXid2goSme_Z^}5AYD_ zKX>?#1O7Z+`ybo>{()#nV7SMcqXl__=d;DZb9G>96M>=z^V>-9pf-d;Qla-Cs39h1 zHk=5{KGw5D(p~KSlc$7FpOG^l^N8|>9p*bCqd);qX=4!JF*Xde1MxO*S1y2Oe`0r_ zif;+m=H{oiT$;DN?6>EQ2lKao4gNg6q{}VPd}C9{X5(t;;)e7g&f`a12DHB!*_XZ_ zbqH*l+!xnzOgvN7Nh@|HSM1Mbnx=_;abJ&#r>Z)UVrLS?zRB8``i?s6Zf@mU*gDd1zh#ojI1=3r^&y<4H7v0E3m4E?t2>Y6+fx1)?l zaw@x4*P6ddcd*}_a&sG<|Qlb8U)j zQEj+#B=q#!Xtnry-FgkpRwzt^Loq2EB6rJyZV1L|D4=hCZ7GCv+-Er+2+FcxGm!?8GyVc_p%#i>-NyGQs|eZ z&E3&ChizBf!CzYLpALWCcK)Thox1}uN?*>O$NXQfx6S2|A+rOSRfTqh$huM(_tdU1 zc<#SBnuo|n`}aMTXdX>K%}#Pp(*Nt0+KKt6xx;PaZj4AvOpKmd8@(qyK%7!`WlgjIX~ zEu7!K&yi{Vh^x&1t}v;X9p-%6AU1)Jbihk3L@&Bg$?VPIr zyGAD%JY=Z068} ze>P8eihtd9O52>hy4Ig!U#>dp64$gO9yj46{&mJFt#9^f$$xI<=9?FeeY-d-eRE;S zlbfgc^wNf;eVg>4UhLE+SM!3Un~&t_Ht8GXZ1(4xq@}r>6ZW`q1?8`q9jF`K=INeq zmT_x39oqckDW~`Tv6BUYg=uuZ*6BuUV?8{1IwQs=Ra!5{h^HAGHZ*Cncu9N|cbt=> z(w?nJCrQCCM^S+W ztsRxU?*ZemLj9K;eHE+0o1BZy!PnQY`(ip*LFr4KfsxWpidc(q_(wxC54wY@d6V=d z&*B8>&nOKcI!aP_8NEZ!tlWz<-FvRgjjN0z*JDhNA1FEBDK#{CW8+Dd-BOmJ#a+7a zeRC+kXwm%cLsqqVwkc9LgNK6p0kw79ToVUHe>>h}Pv`g{qvuS2 z1RCdqDaTK$Cbv$<6i1|Z(&RKaaK+qFeiECkr_JfV5G(v^=v1uXY?apoUTZDIWnNwx ze+2nL!4!MYtL&-=y|helksMfI+(h)ap8hA+WPAmn}IZqlbd%|{9ft1>jw)x&|0m%NwL5;@Y&Wh zmuqUJH&FJJp5=1=_^w9>+mjc$*zrk~|D<#6>ej@l7jrAaVLI6_MePyURmbM`j63;# zK9ocv*kv<6OI!Uo!^f|DH==TbVf6r}Zf;z7QZ+AIW`MzSFoVcBFDVk$(|e6nxhH%D zl_F^0{knQTe`w{|h1o{8V$03$#AuHAhXHDbDv~?64fTV+>6ms#jung@%}G$2dA@Z{ zv!3z5&}hZ5=K#1?Mw2db!sbzSWAesu+AeYTIb{cJGP4P2tYQ zz)__N;{#2$57iy+TG4-6NFx&SeNzh5dzwx;cNj1oo@XkZr@1VC-S^})huA~RzH_ywr;_tyZ!KkcYlVK2UC?9@kCZcYIv;;5 zn)bL_*jzY)hwOCN=lg0D$M~xkYLUvH1YA^@PqtFet@QJ)+;sJhST)H}Ts~elv@Lmc zGj&aeIwod-*&VO5QhBvs_*4tCt(76g*(mXPijKWNg3o#6UsRbn)|i(vBs=cW`_DVN3{lvGU4C z`oAm=-IJI&EhM-DwO096nHt=RaX@r2=-qmwbjq&v)n~WK^)-if>xu?v z6~BOYIsPU;jKF^wAK>^cPdzXQ9CSB#$$Ikmu1TI*&x%y^*k)rWjX6}(-=Od5SM*imM~-%DOR zGwsZjDw;(+Q?CB*qnq-s^MZM}=!F+&wGG95{LVXGy8k`n{K#9V!MPzBQ>*T8!fTZL zv_Zl0&Yt6{l<()qx$i35-&s3&z3SX7%f_WsSK7l*Sqfjui)9jNjXeKRAvZ!i*C90# zv-nU8)etoPScQ)-kGvhLA}sS^d9S@ zg0a^u%)0qFP|8~e-y&NjWgD0aeAifU(2*ne3ro+S-5>m_ z4?IM-$i`2z??jV!SUK@xm1-%|p|iv(u`9;MYfn8iX4fTTOJ)FW^Do>{Jrz63{^8iQ zJzqX2NK{SH_a8K@?RB8N5WQD-KW|O)g|dds^MfarU=x4ziFPQExvMX1yN&+HbFtK< zlcs?+eIjzCSeoLJ)3eS}>S-@^F58~-P3cVJxJb41=!bqNpFz@5_N&7C&o@M-rBKx& z=r8#mwOgWB5)W@RE2`Nm`XHuMqNXD)`Q*U#in!aEk3{Gmgh^4+BAS%7;T>fbT&e zxkgOok^0I7`ZK5#x^48rLmEXll+|O6X>>1(b&oe-PVm08_u7Hn<9#Q8BwGug7S7E1 zIL-Hpk7tmtjx_o$gEq7A4VRR-;tq7e=|ir>_}NBNhQ6#!8=VW&AvMhF`%1GOPldh;;#(Lwxzu7IuWogFmY+*-G}gXDsO+UP^2p-i6I>u8_VcB? z-}Cdc+4)tg71TDrQMZ}unZ!o%;@H!GOWf&M$IjzgK#rQ?2Q z*nK0WhNgVSXQE71-9Cziga2_NjQNmJ6!XD^dd1-f=1=ikl93E!<#LWhh28q7@)!?DK7E;8MU)VEIhmpDY)_Ia+Q)lkytN*Bou1)NY zHujPcvSxSuXj-x*U;rFh9r#lqqut9=tawV3Jo?d$;zjt##}7j*)qMcz?Fb z!%v^g4%9kewLX03*5&P1t$W_}gsCm}<=a4=r=HCcA%Wu%iOfBo&3VXNmiwshB zq(NZmV@-Jg5czvqB|f}_)I?a)*0R6=I)F($W67Bi1qzK=Ok z{>aqj?G1;y1owF^-RAKO<~L7Vm?vZHj-=;bIQ}|(g+ApdPxbRq7m3-@J6EK}(`7H?U(t-d0X+v4i3L#rW^YD(EFC@$>>17&0~z_j6YNt z%$>Qeze-vNz9F>w@?NX{%<~^3xm+|C!%yW4+VQ;^6ka~?tn${ZpbCB0SznI07iLFk z4@6Pvbo~5UINm^$Y%u2Sc*BJuMagl3P#Emv5nFRqdLQniaQJEF*^)rK_|ju0S-C@X zoDLt}j9z?rD#CED?5LRk!zRZ$zg%-eLgqs3MN+vjY%Vu-etzk}7WP;#oUSV?lhI8v zXt0`l5pqiovDf(S1rgQ_>a!im!?zhOeO^)Rd{qDH#q)?j3F@1swOkI-4jR%)`kZ%1Fh)RKuRZkOL#d5VHTR;1pJ!g=z3wQSuebbKs_N9Pv-MZIyjJ&uCqZcmpq4AG(eAqn zx%#M8{Dj;{w79OoRp0|Mz&u4($>uxdu&akZ3>GL^4R0Dhui8OvSM%GvEQ28IPge@E zEK7V-h-TF65H7_t$YHD60O|=MD4zVrtrH{ody|h%0H1`Us3(*w6Ii~a>K zla`s;$1kCB?f-BpdeGOR5qS5oH20C0w}k0GP(`k|>$S|oi1r=Yfo`>3R6vjGy7mgXlNR_&<6RGW^bxU#BvZ4#3{m4}>~b^oLV7_*hYz=3Ia*lHU9$jlYsM=G z7eAHxpOa>q!F~qOcoXXNur~g*6q%ui1uYbwm)8AGZM+!mb>d^mPj1xZSC|QHmQ>e; zhgQT6jy{stksyoj2pbc+DU|~ET2s_uGucU3V`JVD#rqXV_yKMH_c8u9Sius<=AOM1 zQt@$$I>chp5x`b7oKtkWjHp{ymu~p*#_8Qx_Dc*Oa}q;K7u&uanf7N&QA|LBjYOtF zJi#LWG5X82&`m9WHA|LCUR}C19;wrew{JndbEhCtv6ua-1CB^H(x)?ya)rbXS3{JySsd{rN`)NNvc|s%;`^v&VDq;y5k{x#7f}Jrm~wg z2xjM9=Ls7ejAq54CO)bpo3A}Xhd9nvrHeHWC zmx59E1hdfdSy!{3a#IQ~)d{j`M~Nqp6p?OAxaY^_P*@yjpXbF${orK^Ly+Y~eM>QE z=*v@!O>zWR;$HXGVg?7^&J*uNxuNX^Z{Ka!!(y!>#VhT!Ju}7l?V_QRBSa&^j?IwY zTF_scVXRPSEu05~Op0OGXepow))h+q=N^|*(xzQXYH*|W?|>=V(TQ|)B5Fg`XEtXW zjK!0?s1%Lt9EeRFA5ZP?#C~4;jbCUhyGq`;0IOp&l<_WPV|CS=G%eM?D}DuAq#}SF zCQVn3*>}o;y0Do*Imvc#Ni#!w8qEo^5#99B^XR}ntTZghq>=orW(e*9_*Vtdut~&q zy=JNB>nIXtF1LB~^dhUFo=#1jx)dqEe3enaot_(ki{L@oFUVs*9>Zm>2Ci;&Ge zY02T32lYRyPst_{S=GE1Id@7*7CkebkF`ajo9MnTJW4}NMdO_Dq*Eo@FpppkVF~&G z4Cf>ypA%-1-^kHoWW^xdq>KXO?N1#Ne~Z6Y8L%`N^?oO$p?y?+tzgM*c}d1+`<+V6 z_3PX12Z)!=Hz!j?XKG!#q~cn^pWCsMtXo*tpXqDLA1Jz+yJ}z*TFKx|(RWUU447u) zaAcfDSV}F6eC3b?Pb?ktl`V0F+zRTUNWx{@(3WO0FCEXptbSfwoPByViuxawbhkVu zB=T#x-zb<-Gw z+YA8)@-kw&@m|2$A`8e*H4K(iGNO_pNzK)O ziG(D=SV5IM!<;dm5poaK-YzQ8OX}35D`7`_nl*O4@QC}gsm8{!nTdo@p+xnPgcc9} zJ$p~(2cK~!IjUv*laecz4A?qZK2u6df1GS|uS4BC}@f6sjl`62Hp;*7FI@p}9e94UAx*CqL)ktY+ zxs>Rr$r-6o)bi6RIqo1vxqW!{K$IQ2d^}^oV9RObc<(;;f!o2PZe1QHI7+im@4lRI zZ$qbAsy*kg>0<9MH0i3K_~LHAdRRgDZjzHZdx14zMM)^Xhf0I{f$i}|fzt}LbC%+SDF@E(M?8k(lz{Ju zLrepw=124ES@TTP49eV7fyA#dV)`DuC8tAV*GJ#~(GvWAWgIPDE2J72Q3d}b+J5kdpbv+k>(vJka2h;>J>xwh;l5n%)Rhbd_@>1~YnGHOs zewq}JPd|lfYJZ2`^y|xaiAO3+Rr*pGL?z_~b8Nu)bP% zsJR*2u*hLF??RgTO7Lng$C=1&d9~vO`$`6EdELsXhPWn#?Yx@nBb*ia`o!~>?}>yt zPlOFwB+A&|(UQlHiL;3FYqorLb(r8DUv5pwjV3*l8v6#-9KRZ1p) z$g=v5{`*>81c`HzG*sl-KBBTpn9rx+V`2T+_7dXx_|7fb=j23!L#jI46nE3H~xjQd8uZXdwMu83JayH8%3@Qq^99u%|0zVBC()gNd$u>tZ*a9a; zK%U-mnCv(}taap4F$R-*9U8vztj(>cR!XH zV`ADNws&rxm4Blp;>hhRX>WQ>0xZWkdeu^cYnXKTwAHbp-G9JrP7F59_Ot)sY^W6{ zUN$yquFhfVp?mOTdkl*U$9Dm%xo>uK9q?TFADii|*N-*L`nsD}spYRl_+E{Wb+!C1 zK!^Ex9Z;N_ZG5zClj^bbExDt49mvQ+;Nc=@x4WC$?!7@{M`Z}9aE7A0+({~N!YG+(_#C$U7E@k*diS0ou+d1`< zdu_93EV?W}sCDd!JtvQltXkHd} zT(hR1Z+YX*xkhfB_8A;oi;?leFc6LPzGP;E(0K)SKg(v!#Jq`Pu7NsdPoFz&+BwS- zM*p0w5dKT_R8z7!D&tUFGvhP@F9(uP5j&Onj6GxK9*m0#`=hYuN8;&e86}0WKT!OI zaPjn`o<2suXr=RmqAB}{D6@_emSul*d6Bl))i_YkjalHDwtH6H2w?XQ0GXp>qTS^L zk!55@WqVSmO{ProQ&tI2c=11C?!KBoq`9LuOb>Q6Y=4r-T5M`;^N`RZ3ZX*h37?!8 zGwvc;&|3+q)0M&=Sczy;GeG$r?e2T`E!nOTf-ZJ7POR6|;gbdySFKQd%t16Z77P!u zHQicQ!c6D4&(OfP`<2~=_~i7iibEi~dx~LOmp?#WPO5eRnxE=2%fm!Tox69yv4n7Hh~~e4wTjMz~t~nEC{4kqCQW za9ftad3sA-62>SWJzLVY_569q8^QE}#8zm#mv5IfK|D&MwH#nBM9Qi%dFZy+H(jUfUW%*B)equLOc@Xw8ubxqI>@#1wz~dYU39na5 zllWd6IzK!zy#7!C1fr&u2;^-~=m0pox?*yzgi6-rLJz}AyZ>+I`Esje2jhIO{u893b-A%^=GwhHs zWoBb`4%1A*(~SNN@AJ~eqhPndqwC-PGEGlv9r^t}@V?@@>BTl|WW9ua&2^f-`Gvo& zZ_8Ub#l$WgmRxSo9oH)fyUmucfUge5pOwOi&|k~U=u8`PN9i6 znbwg&E?yxe{J4f=A7Mf;LQOmpCP=HZTWn-Ouit~r({keR{*qm%`mp3CI}I;z1HsIw z4^I`zx8;4r!h$3js!XZ8gopnjSur@oTtrFph?Hc2O`v#A!`AAURj_;o4c#u*F9b3X z3U5%kgP&5WlaMqM?O>g|=-NhD{}#;4ELANyV;>%ME$GuND~E9O2bx*n7%>HUJ$kj6N^>Ldqhb@Z>zAHlS) zgxB>Y6TE8lu!^~LK6QMJpC1;NMIj}4&=gGl1BC!Pp2(9VcRBnr$dvhMI!Ork50pLO z`nC)GrJntWzPSC|Nzihy*k)$kph!#*rNI_@nk$b(XPxcB1*HXGPc$vg2g}mLFf^5m z_nh`scG}1%m-m)JIO?x2;@6E+H=I@c0Ie0b;z4!lP~2ooZP_3cNK#XF#dR{YP|bMi+x**WkkPpZBLPv9CLT-*PQ zkv~(31AfAG0M@WpX0<2-ir}rZVz2>}oJJ#2IID2fST@Pg<+7$BR85yBU(>K~4{u@k zf}nWltu+kh<)xrHWXla)3{7dlRY5ZCQ@>I4&npI*>bUuKB5k#d$Vzj7n9E}lQVo$v z0A&hBKAFPvn7Cptk`b5m9VyMY^SItlEcO)e4yK0c=6Z&Nohr%|n4sf~jz*)TioB#+ zf=5`b_kyzYa&5AmaTX9t4N}7o))uf0|j+OL-Pc}!}XqHhzzKW+)QiH^|InCrK85Q}C zTtTM1Qx!guPX#fqF>U)wWXp#hi@VMPQJ-RYelG53s68fSbw3HY{t$9q;C&Spj^JkO zSY}$H3Z8h04mjS_|A1hNocN->vLQhefhm$+cTTT9F>%Lns?p3vGc0|$Xff0>)36<7 zoh30P7*k{rz&C6VN<3$Ve2>D6!kl{FoCK9IH`WZ_=tBpt|ARBhG`FmXzFyJX5r zOpXWB14zp92%;;STv}pgqbBu`p*o2IN3NgmID1c#t%F8?X{SV$dppv-Sp=Tc-80#u zazG(%Jbcs!gm-Z&b7(!=()K7BZXh2WgxvoeN3)05ix$JsjgVkKwsWy|HMsL{#frX2 zvV68Kdp{7M-*BNhxRlSPOR}oP{e5C>nIHM2K?{S?G>pIn`^WK?^wc zgkX4*5$SwB1qr_kYKU^c8wF(HD8_hEePEOtZuV(yx+fZFfy-|iYG0{I9r7QbC9OZDulDw2*(Zlae_xSsSKG}Eum+9-&YCtu7pH0j{)9hug zQMlEefHC9sAE;y5H(T!pn}*n(vJ;sT(L@3U{(iIvuD)UQBBv@mgQ_J zCtR@ZiVY2nbRMC&m~M{p`EKtx$&$^q{Xd9%=uk^*%1#mdv5fSC6q~n`Tg5Lye<&Uu z415NInG35NslU>IY^mK9va7II->5d*F_mLiLw3{h9~gzto)IS>W@Rw`432W?G4Hgi zQmJ!T7=BoqsS_hoQ~i(I`P%&tQ}tu{*Xjakt3O)|#qHa=t%diLu74k#%;dGtC>+=L zBP;KrOl=+Qdgb%#&SybkLBY}3*`Eq5+l5GQ8=~x&7KB0cZ-$?j96`1R0` zVRK|f6voCxCwrIs4-~6Y^^YFl)b-23+FM4yBb*HM$Lo0fu{>d! zdeJHD8;6uAM>*Fvyq!LspO&-9Bk8(WWw$;%9_~Pxnxw4Tr)nZ1R67b6)-6%ZJ>WjMjH-1Wh1B#Az${iYkbXi+xNmqt7u8 zIr(~HcR{o55PV{M12@Czq=@nvWzjzUgs1HBs?T|Z$WZf;Lt4C2oaO%bp-K6lXS5mq zG3haBgyWUJUm}zIet;8t;jl4>`^D;L`6g0-MLG}3M|Wj{kQF_ND&T=2Uxy^f!T7Iw z=$w;`&?L4F?YnJ9XZ<-b1aE}Q*ox|)cn`5xr5yJs$amxl3 zSj9=hRa}HBM!XyLf#6dS*tPCx#Dq_t;An8lYo1mDAgildR1vN;ro+r1gn;1z!k(_` zW;X(ijxj@GvL!rkwFTV|HTwDj`aIiHL~RbvBV=vpHh-D8-%WOKNveoVnY7ShHLX*OHXQws_5H6xbyDpxRyEqz7bC=KTD%;&oE&6yHxU;D z!(s+Po$o=Mb?hB>RR(erZgm^PoL1H{i1D?R1M*zb#x?I7iv%93C*AbzWVWZ@ueOYk zq!>KYD;7y3wdt1S=MzF#F#PC>Y;{0l&uba3V%f%*BNBZM3q-reuv`h3Tg zb16`Dlpz+?l|utbwJUN0c2yGU!w>?%lUIQ-6Cohvf6f zd4#q{x~zjffOW#CzKAfEkApp|kH!+5Q4!_lq69bj;TaoVtFQ$otQ{om{gvKr@-1d% z`G_##+NW4zC0UG`)_hwXXyeCVr;{U;QZ2RSk5 zi~3b|+vqPZM-zsNDfbb>44ImlP)8D8L`b9V$Lq@mt z_>2uqn0tKqGP<)()fkyVrvxD_p}(SYRMsLpC0?H|%a!7}U({i>zfiX_&MjYujLVNr zBqbIB5u6%C_7P%~ezY44rl+kwAcUn%yke&g0)oEWYc52b7Fsl4wjGHdx>>ZQ+Y zlj9}ejAZl_gOIk$HdC=n8`)kkx0u#5{E5gea3feQvF)~o$As9$<=jKtbV#p4pkoFc z`+=NQrq&lcdqAj zZj6}uZOvj$?VZ&4=nz(rh^wXk@=E2AtUo1WbKQ}_gIW;gUZ^-w(~J7g56H;HF*O ziTsyRhmHDJ8N1BDALDHM(att{Ss~5JB4oFcx&E!P?;j<9!$IKUr7DYg7KT1IEn&mP z3Eu<5pL284pR6o15VN#%)o*SleMM&!ZiEF!78zb&NU-9nc&_$O-u&F-B1e{e{PXZ0 z2_eNFC=u32yyvU9TUZhU=Sg4xkw-^Ie&ELRw#Q9tcF#|L$32hVIOk8yjtj)w9*^FB zS{u{f1I~{j7G=`@p+OJ-`5!1ne!mcpKTvOb18@u5^3a3U-q3}{`!!9iKb1o!y5w-1 z0q`|8odPSSwYu&q?xSMn`X@LT02UM2SkPP|Q$BqnwFJfNIl-J%Ze=Y#{~;NS&LJDA zGar}6ef&W>0Z}akw-K}?ky}}b$emp6rr1OtW&4Zt&3BMwjEKgGl)wV0ysXCM!D68> zCkV16pB5bx8SQ|JqxJeJw>m~ya4It-PtJ8QTB$DoE(y;~lOsqF?F}eMOEr$$w%^Oe z(JH|`P`+bARRs8yxYkT?AZZDJzGdMkmIQ$TX=#BCMZ@FL<1yzVj>?{Ww@Xk^TTC>Q zNW7@lGcZi+*9^H*8+y^=Rt1YvmHiFFOnQbwT{imzpzTN%c!`|()r4cI0%DRP!?LFF z5qQsesBeV8fSzlEPl!U$iRp&D-^dH_wkw)D%t(^(bRv1?02Gjuj7B~eC$cr!c+s=D*X^JGA0RPGaq+o)MUJBo*u3r)76OsZ?nemBYXlxZ9=Eu z2bxN{kJ=bmwk9oD%*f+VT8>(|$2B!hA)j813=CJVpl-E`|CGU*YDb_xX$E*SF->vp zrv02ii$D7GCBoWSZ=%Q=%}e3N=}B0S6?Duqj0MftunK7r1f?#fU^~IUm zL5E1@M^~WQ7*WM;5M!bQgT^!5>jd7kE6CU+aov|%=o1NNe?!);EW^!|CbnVj_2<{^ zoU7oIbbREfK=wl47sjd910A7^WkKpK<4pZ@&-Wbr?D{LXdKMokTbo259eFKAG%~Ak z!YDgFcV!wK4otNOCt1_efWE9^ay8S*jncf6(&BW_OE+fojq)LQRbhLN{yau@yg6@m zRwg_Zrcl#ARX$wqBz;#$Ew6iEplhG` zwsK{(ehP(Pk`hhfy}KJmff#NGhF|Q;C#!?9_ zM>#(x;TEN0?=(Kb2&CI>Zf~fkLE%zbQ5eP zJpiuk33Fot^#vwlw3ZpKfkOnpJtTlUJOdvZt=B9M6xisb+Fh&bbY&jTxs~rOEQZYv zi#*#SXp$9Pa+FK*rR@(;?OWNRIO0qQ0l-_8R2e1LP;(tkZ;hRNSSa6kE~<;?9eH?9 zDxQQ0^l)j4Li_3!^mY39Nl`Iqg6V~}OaO+X&SygzNaN>d zNXqKBNhfE$f*1kH4I zmakR5Sqj$O^^nak4Cfh*GO%QF)y6egW7 zEndZkYHYuhvKcV%wmK8u5YDkbq`+Qr&dCtH{c5+Nzh%nP27kOTMa-T~XIJCEOnsaj zb7q2^S!H;1sQ|=n2i%iRI2I=K468#hnUF$N^IFeo>vWGi zZsjr<_qhb&< zYZCdy^@WW|p*+`h>~=x+yn}l}(Ki~~kRk#kX+i-X8<$=yHjUasS+k^7u@D=a1Flx1 zHwnYlh-+(~_8ppbDJByBh#OzRMb&9CDx?S(_#Nj#nj(33UaYH}QkzjIwyrPhaPi2@Gq7$_v$-7byqT2h)jBuOT% zWhPXlre@itr@eF*iJx1n-ZMB2N_HQ`28-d=aP7zNgnugBkZclXdt-P`L3MjjwkWJJ zrU!U?FyGf#I#Je^eWE)gK;MNoHX}5q!n!ulvLY~Pqv36{ebh75^-S9$f#;=hTOq{8 zP;cI@%?4xzKab9x_!+ITc+3$9yN$|G=_G`p+ToSLS@=&u^8$gv;s^_xYxu$SUIoSEeW`Jzu=;b82RX~9 z^(@UtScvcUuKj=&W@#`xOvLqlje_uQdVweSpmY#EYFSfcz`lq3hxH{|3u%tY;}+2* z>?2l?$Gu(o^ivCA5#oX}=73VPRAo)wBAfhN?epsk5ns)eE2``$)l|7I*zK`lBt$99mDb~_F0o!Z}UdZ z_O=b}KH!wzZt5om5C*-wS+F_k0Nz>PAqY%OEBUg z=WU!_fV=)WS315t{*DVwAHXQVY*rh{T(>Z~3f+V=?Vi$&M#2T(3d5ng{&LZLbJ4vr z)BR$^;4S1gf_-Kk|Kc)+hDYf12g(n3+V@e9=i8R8t}E!8O;d`p=_B#`i@JtwbmN!) z{u`i(i_1LQVO2X?auBe7i0iXTXTu~LOEA%P!wh^O*ui{63F4P9x zg4i!=CR+2%cg*(FmT%Kejj6s&1y5$GX!> zVa3p*8|;+THdpF@zpYR8(jws|y?6Qt3Mtm~#47Xs0hX+Fx?X68K~;nQqu)P6d4Y`Q zNT}!EBJxN`BW!b=t;-D(E4w#G;X8KBA6@gTH>M1tNVndkK$=0{h_$STpg*$q8G60O z$Jl{;I_}ovN%KR@AF1PAKHx6I+ZbCO_9N;C5!P%A+!C!I-vizWr&8k8^2KF@k}U&yY~&-oEIYbTp9V2je(_X3-?wn zIXR{ceM}4g^ev#L)Vg+Z9Y4UlZc5-~0D71#w1Z$$TtNkfjGU#Wt_A@YRimElp#2Ez z6@Fh-cIZ=jNyXy``w{k42u^a^IX6g7y=s?M6*ttJKHyzCe%a-AS~EGD!f4-3&gQWo z?n3pwm(PIGA-*dS?ncDf?d3+4Tyjpd*v5>>b0h32y~GrxvA->&z@DClPaZY{=*7Th z;Fu)V)Brj4W@B0ipv#)g+g;6hRBORsR~;L>D^=jf&xdY9aUH8?q8t&_3_5 zHL*?P!Fk(iWYR!bZZb9$d6j~+0*+OU_G(JeaL|!CAns+f-V1VE=11+>&uQ%e2>fSe zglZyc=ctO)@Pkc8ze8j71SVJq{7+@NCH+^pgtQLDqiE-4YLqq)57z9;Mb_T0K33^h zO^YaYM2ykGP)_^I3!zq{rl0p_POlzAfOW3`(X~!k= z2z>6^z!|Fytalj+N3zp%St^sgi~9qmlR1tPq%vnFq5rML!Au{~5h2NfJX@ESEk(^D z>fH&)CPT4snC%9_>CMg z{Et;y(8l#E#}c2W5}SR*@VOSkvN@noWpp!6y9$jxkoibB6)&q~SUOohIWlT>8O`W~ z+XV_I28Rc+2p?1^fl52@8mo`T@;t6ii7xN&(aUJeX2KF1 z?OWr|d)EY~X@@n3g|cb|$MJH_Vpax|M3(kus2MgIS&P8(3f6&@)cVbC2Oa}WF5#oH zAu5fEG0&TK{xrY$Lr+h8rPwijCz>dNcmVb&hjN{g`=}T;ATD1w9W7hbx84T~-eq3|#OWxkNqv?@HvcMb>ek!U-C z1(=zkEn;Txv9LYb{=9L8Srrm&d=js`gD<;N00*e~xx-oJR1lV2SJG;bg$LHMncbh9 zMuujRP$%2gp1=3HOo$0^`%1nw}gt95-VQVa0Y;p-=Oc7ZoZCEaS%}s zB;HE7KhefO&7{S5K{%OM6g5>!HYBPc9whNjAY6z$wN~fAmOV-%jbRmZ52A)THb!KZ zl0uKQ6JCLy_?klNvutQF^6`0PTsorwXnupe!uY0Be4X?wI+bQkw!VeO&Vo()oi{Zz zelIKMsD^%+pC)k+3srjr0)U)tQmQ$c>6Hl6brs5{<3j5WJ6ByB(je)9C8sK62ZH>&p;FD3IYzdZwlnBHm@NaIw7<{Xlq;z1b)QCiFdtF($^6l<;P-DmBP=iCMo&B z54(iyXLZlNQ^bk-bKiUq9pW+?i)j^EDDYnNOe%O=Nmek+Y!C&}rX*SH z3kFOu%_8z@25^U58iI`1oqq#`7U&^>+|XL{rvN`ADKF(tYKfIzfytzXgU{dZGc$5` zb0?@%gaPW$WVq`Ku$Y69XjAj@38{qPJ7vA2g9{`%NfKknL3&rm$ZEiF3{5j#p4ZGl zc_!J7qM>B1VIk%&W=!;X06)z5;g3d)U}!XQU>QnwP8PX^AnhX_n%}_nb5+F}?FMDD zscvs+#=>_?SA(ZIR59QWKYiTdwIjBwKTyk_2mZfpImZjII~lmJ+-?+lxTL$td8@Dc zRZJ#wwrZa&>qDs{+(tSrs+7E%XLKqHCAkptT+QxZ?6~u5emk!B`XbimKSUf?rs<|K zQZ_64uPnvJl~SLQ{#NF%dL8+iD*R>|7wUMZQCy8(DL0!PXd_Qt8rOY=#&a_~Aw%4& zfYa;9^+j7AB^SWRrHiX>6)H7*CeI;`2p@t@caKx8@Z8O_AKTVS7~QUIlGeK~uOv6g zmx>l%Cok6497u1HmI4Suvi-8YZn<>15G?>sG@>*=pu84RVAB!U?l_S-@U|PwHe!JjdryN_=Z5eAWbQ-`#EdBcaP`ztSb=hwp%65x^2a zAjD+wQg*4JB|aY(eZ<=|DWsw-Fq+u;lmkqj17EHq(y#Jy#><{(YudqeJz8&Y@! z`VJFZt8mZ}k!vzqnm@3(5OkWG3J(tBz+{v}80Hya{fWrU6&}Vt>SlK7bCO^3QkofU zbR$#ZX~c+X3c)FaA5LfNva_s+~wN|cTqi}UgJ|&O(T~Jr28e$G-XVnQU?PYutqi= zMZh$eN#p`=qGnJriH63*dPs0B!%~_+#z&@M<(cf#YEFgl;Ek=+>@C#8#ZO1Mh6m;S zDqO!caaryE@=E+Yz5!T;{8;TNO}3kBe@|%%C}sf>y%`!G5jOD{J>D2q9>0hA!n9lP zNF#+;Tx4`TW5T}XTRRl5(3{3CgbU4*65$?qIcQn0{S;xG;tWryWrf?4HqkDxM7!7= zR^Fl&?IVE;9f-Fh!7kD)Fiq4Kh>L)PSJ_2bG?bnakXkV<&K<5;fn!Q^)0vpBLuGbP z?BbQgMXMT82WLGm@x>{+Ko`zfxi(0J@m+m*`~h62s^Ty&g@|z5o^PZR<|tS}E|O?h z#`9}-lwjHJK?(;$zA??*!Ow+yvAn_pdaNYci9q?~lKeVw_8STQ=Q=so@F8$8INX^r z$4w#vIpRqSQ8c81CcQZmdl4$y0}Hm35%VS@h5<&GwZnoZj~5xwpd@-sB@Ub z1^ln1Qbgn?;uuHz#>e>XY3U#K#}XW0NeG9%o#WCpM|163*FtJFiz%pKnUs9tC1)q8 z%@hbCdrV9M=8eD!$uwi>?8rKC^3yU3RpyzE=JKKi(#;yadlfBnBr7D->4$)!y%}tf z&Uf!~xN%-R5I6SMEKsc`gEQt{>S$Yl(Hd22WceC`EcLjH)Br6N4@0U6@JzL$Vu;qp zpn;yQ{wd5h(f@An1ATZWkw_*j7~45Yo@s+V@sJYl$7-4^Iw^G^_zx6n2+9WqX~e^h zPC-V>DmH!Vg1LhbFxDTauKZ+f8U+si2DK2|d+*_Koxya~W&)cjzqj$1?(Qqibk*QW zjW7a4r+BJf-qU0uvHI?fk6+P|SaI$>A0wMZ#8~mUaB^5Qp_8SduYLBqKvrqPWD;{VaeMX6hB`St-=tVyH10HVGHDejgO7?O zFyw;;M53$t4!9n*y}8ZM4b|an3XXaP3PGQ#BXsRJ!_Op-Y~JfuMQGRRkx3@Wu%9)ZH+k5)ACayW zO`_m%f>Ja)vhK59P@+ij!ozSfbK6e7(QglMqM=ZkrB9EJ;@WmiVJE?2x5ACie|>Z$Se z2%Wp06^{ibF3h{Qb0XZAud*m0K=+(Yp3|CRd>3-sr=V+kIgvX&e6pK2%x!O+w*XVY z^pR&6(0wV%4_KW)P@w(aP>y$yQ0wc}TR^E`+sHE%2$Hhr8EV`A_&1c2H+$S~sQqim z_qd7QP|DBHaWj`akfd)~=uj}wuuyOxklrJ|gMJ4O3k3}W`HJxl9g`J{luT4b)ftV6K z#v`lF&y4})wCXsXXN_dclMu*3r_KHGzZ!B6^$gu}{{uz8BA|@v`3>c6;8wU6tBQV* z8LRfmuzk-n=|2r+8yk{&X8Vud&0r1YFpK*-{YE<-JVm@h8a#c|s`1RByz=@48N9zC zwYFA-A+^!gaz5e#O_{C3Xc#NDDsAp^g+V413;vCRvGG#@YKANj1XcsD1h12$NtX`1^EAcTOiSm z^4t|Q;hGYE1BJJa^xy96&p$2i7H3ZXXSIpa+W)@r|Bv}td9BsI68OLGEJ50hevtqB zb=UN!csJI6$k7e+$gEYaRll@H@XmhrO&zz@t5XzGQLeKS7xMaF6MXplUxH3N|3jL8 zm(}clEvx*0mlbnkGw2$&qvTDaya#OKc!fH z{J;L7`UmR&>5}3%73Job%>al^v^e{Om;vWst3LZAz$UXgjUi8RUqsitQ;tUgDhdBV z`-=ki1m6&@?D9pla^pU6ds*i*I~9WDEoTaX;Gznv!47{YPvvilhyAy4ATbT$JIg*( z@P}9gYA2jRrZ)K5&QX&uQ6G4P=~_pPP&E%?_!X@Yj{MxiF^ct+UydrDcKjlp$<^^t zcI3Lseurzti~iC|B=J8G#Co-?#dm%3qy%@A70113gbvkZ3Xq`S$2nU1arFR-I8qFt zFCl$?>+vqj`x;4@kE|65^d*|Sj5MI2fkM+2mvvz_6h3MTUh}T?ot%&fg*Oa*STp>D0S7qzGrY1EY7LBk=e_DbM zZ7s3ZS&mVqHD=dcvo8FZqRM)a5U}c5h z60}Izg+!wL-awhAg`5eSYK^MCvrihc*A;~3(iQ*myx2(8i=5G%{;@bd@QGii$S_%~ zKe-ZR2ZUkpFD-{6w>oeji>uPw^g~UkZ!_a0+qZ!T0&)Sk${Y7)sN_Q~M6=Vz?3Jqe zdhB9tN4PJiP!_Nk89xoY)gsNECgv$jXyxj*;rsR;i|%doC8*fMpWFF&EBi9s(Vpwa zZ=s;RKpRNiJ2P6uyA|NxtJ}rQ_69$FlFjzgz>AX7{M3ghU<5hS9;DHV)|)o+p|w7{ z6~QPt__6jk-zy=>kpIbYIPMde#4&v1QuvE)Yl^Zck~bYS=#~#Gd@&f4-GPm1vuw3e zJX^L5{r>-=>Mz6E`kppWIJmpJySuw3xVyW%Q(9b7G&m&`cQ5YlP`nhEprvSm8tqAc z|L48lb3P*S zXOvg_WP`tf)=EoYi_f|s+VD%0?a3dV+lQ$dNlmT(@4F7&DIj4Gk*@(@OEqi_N<2Yq z9BUJ?!JyBJCKamV`Wa)POlaxrBu5O-p>-gssCv+PxTYs+Yer!F(4a`zt3Q7MCxle* zoNfs%Po&VxlChQZ50mT=)&TQtdm?K+PgPC5zk-5nzia4%SjDb5e4JFLcd_~3$cNT& zU`d&3lgQ67mo}1w{Yw1b7e#PQ*ApxYD+-X|eph>qqkH?Id)E9tf{di8*P+!g0wq{L zivT7C)sm<0O(6><8qU^5rl314Of_jikjD>+HNJaU1|r_(7EjcN{yG2ueQKDH75dpP zh!IdP-1qppIX^q~K#o+wWE8+WVE~dZi94L2OC3PSRzxWg$~^4dc7r1i(FTy97oJS2 z^xQI*5)DNA>26uw8Oc}Ht0*OLO-h@4?qQwxTcKTu_6(& zLCveow0g3=n#J9)z;}7lDy$Qh4gBAaxO%vGh?e6~Y|O3M$ph8Q_@$59_2+pEIDBXc z^ui-hKwZ)cxl&Q*Nb?*4O!psXreh;S%vlyTZ<|;VQY}@eXl56Q*Hg&Q)y`^|gDJUx ziiV83ywX_{A(Z7^-KhlN3>&&{?zSV;yGE0Kcx`)0Y5CEQUAf-$nonSVXSOu|effIr zvGHXtU_I{N7$wZXG)K*$rn6r8A^mjn#cW_5CxOF;V&VMPt;k@tO*cs|=jT=Zd-)jj z0kJA+nSG2A_VXk!0g*Ky=bDtP`9lH~`Mj>}Es(073`z-rDykmnl5%6FEB+S{uE>zi zC(|r{p{2)k$kUas-N<;IT!^AbjQv^yB;uZ6TOQZ#gbKn@ObELnAep8BAiB%cI?36y z?=75?c;=bBhx!R7{EBH}Oo5K%^O!04QQ>{m-78nwSJV6@E?q@-6c+N^zIW-B(~+vR z88sv0jk7}(ieg^gIHKMUdvGzku0H^%pf~1+g)@&-TQjRh$1~BzPZPMFT;WT@ll}bm zV!fYVxqKv5k^NE6*v7QpFczpBe}|9Bx{hoY=k8DJ5?sUdtE^0UK5Gs5y^u0SL?YHd zow_%J|Jtl>i|+pY1Da}$-kl%qo$*}*WLF^%6Lr)jr*4@zO0<%mg8JJBL%rLT9S9wg zkG)7~`eLp@ukeM4Gh|V0M-yq<{fOnY6E8wNxeKxn*FNs#9>Bd?vg^u@0GkrSTc$-Y&G({oQ2R4Afcn7A`dS$0 ztgph+t8K5_34!Y*yEJFCS_XOoI1R=xP%z!2|0PA*B%#_DW*G6f$l4Kl)R{k41Zp$a zyL}Pb-VT2ml|O^x*1LWfu0F*D zcN#cR`zA5$w27N16Y}#D7@|C4rV%zN9P9cN%cA~ueRoICPmNEZuiI34ux`&U5A5qI*-Ed(C(7ScdQW>#ZxI340 zPmEtG-;m&I2sN4%lf))vNlI3K4hbQzk3`~<#o^FiVY*rU?!a3H1t&@iGPJ zu4aL*_V)9F9ty%12EUwJkj11mmub$70%Tjdy^blW0TXSB1lcqAY_EK>FquebuG;_I$*i^QJp@1Y5WNx1RF)SPfnI7uw+O(PU`aabaDTx&3FJt+GaLHU4Sz^}k~ zJF~zT5F^}b;|YsRFDuHU_{d(OYF zfQq16iZYDG-jXaM*M%)igx6N-ZLQi_=8u^E#vsdn(v9yRO&3(P`U{AP=XV#h`LQD1 z;bQcYsjAZYKTi`FUvWpX1k5H~UIymW2*!w}Uy=mfoh2Mv3T_;%>(=HO-Hcq)WxkY3 zCJ;*HZPH+BtArW0_bIa67&Kk^mbEuz#Dp;=qL(#kuA-0IB_R!1FGTG9)baCx9)6Ea zh2cl!z+Cp5F^>Y1UVomTH!V%oLzCA7_k_|%Aqc7ZEpZHgx>=-<0gZ~eildXxl4cTWkJLiMJ8U2gA)q{=#QyuK{<9eZm9JD5 z6&TK7b3~l;Y9zteW76_Yj0)Z2t6#g@bQgFYn0yv243n}}A)s;0jAz3l`5jwLzqturY9zCM{A25OtG=gYKOr~Yx_<>nJy(9^ z)=jYyv%t4!%059QW+y$?xukS6PF08*`G-F0T(&T_>2L5=fq)Fw4=4 zW90p%rIuib@?duR=Y-J>SG4LDjZb<5g?Zfhor!zlx|$q&d}f=6DsCLR`DX~zDi56C z{@e(xWMyqg>uc;GdZ&NW)IVZ==gz07(8*Qn^)=ip|422&J6;dses|RvkaYYO07qFp zcLTA=pN6M-fZ`s>DZp^1w0C3%)AVtVAPOG+en`)p6l7kfsIZ{;^MRlu#w`tp0_*aw zjQHf%opj$H0lmDgjM^YWSH)_6+GWQwv(M=20Ba@+QT0n< zF-V}#>#f5lYe~wB*kj&imco96Um{`3hJM5Z!s(mkBCnq^&iWImu`vfc(g6G^Er6)C z_vwTFuoq+&<4S>D>mK>zaK=z&15#%RZfy{2l^Y@Y_!6lErx;1;{xE6aS0#&uhHVo1 zw2QA5rWV1}O~mUtc!I(x2DiCkYW2jZR8HwvXbmo}EVD zj^D}OG5HaKU-5QxOt{*aX6a`vg_5(j+Og z(JRNhnp|YlU{$l`va5gE^y+6%pBEfQBW8}jOuB=(uU<_N&RkI9-hc3S;2vLoeTnYR zd^-xeLT&yF$S6K-CM=%C^zrsL%6C+aY2W$r3v<;=s?}MBB@NV6Q(;$rkborg_(K{& zGh=IeB5R(+xUKUdyX$RDw&1;F*;DIqC89W^A+5hy@v1?a`EYpxrr)TPVG4v{whe+V zLl2fH@>1an%q|hUVCMTp&e&ANvHNuF*fS|QS>Lm+^7{aA)@(vJjWCUSGSK^MW&VDM z#0M+@_c1Q;*96mjD_@Xr3g0`?hL+N1HxTQeD!)xgUwJ!Jn#r?cH$Z(-bI7C`EbBxe za=5@Xz1!sP(JVJ1a(q&s?0^i5vmc!GpSP7@TM?1YJmHl_WvVslLZ&&GUjJm{T{|x* zZOMFJ9fz<})_hHB8_>z@Rd-Ub)KDCf3MR4`TcDf!ZAd)M-%=DKgJkk7H{d?l^YX>$ z>O||Mn|^v6-;uK4JtC&RfMc1#kX6+mF`jCMt+2f+>E+6(QdsTAzEP%pC@HN9WEY&m zR61LvTGp>@1oQVunvrfI!4JqXji~kgL=;#YeM-Xj;#vRw0`?9}p8)rkB zFG)LAch+7nX*mOognuq#@3<@D)T57GtX0uUF7MH0X77b=K4qs`lYNh$8VvF#9I>X4 zIO^}+KfPM>WNPR5w3fHV;tuz5K{3|mFhyxkBcbhG zdGxeE3Yhdf=gW;tVlG1qqq6WN9kK$MbXx#>)jUK>iWV}(+OP3j$t2h}kuCN*Pi0Z; z*t@+m{^d%fs$Eh{{UbhnePF?@MU2en^W#;`_>m7*8qMzRk;w-cl62zr*{uURxAVRj zKk+QMQ=}9~%8tM`Gynn_(CD@%*7m{*8qow>TN+D@2FRd;QAtf;M-kHOkh12|)5JS5 z{h}1|Ro*vvNjm?V8a_b9t?%t=S2>qc~ z$7Xkb0Th>)E5!DSR0&4NKRUmtpZn~MnL8*m1tyn~RJTX8c4Q-)EkV@(X9&mdN9_?D zk(*y1dZ?Y>^sqf|q%ZIL>)h1PryjnIMZ}k%3|Q0((>Gk2@)qb^#jg?c6*O;eN`%k9 zvRz!R5j=!0>~klunviC3u}kjFxd;^D&QzhtqiOS(u+9@HZ(uO`3mE7bdn4Qtnzi63 zshI33SZ8_6e0e|f@?fo3KgagG*i3^HIC7U~0$H%;cq!~JWxmh-c;J_r+{*<9k~ug{uWUAsCnygt^& zZh)_KxkG|MuPY$=;ycih%2(@?HCyJ`HRg{&zR1TgL6ZdGppRpczcqfHb|s%4z1oF) zmxSnTiF@u$LW)>Fiv0O2M%_S6fe&Qj;iDGY3eWl?aA)A9V*Ml_;sE~+SLi~=g5#B zdNGKt|DP3EKf)XIs15k4Wfk;vc?y)pUq5F1p3q;VllQ%b>-0;y@0TB=+i=|xkr~m7 z?~gvDeV@QJT*#K%M{T>NLPLJ=Ao(D;=6NrHpr;CA%STYwkw|xs&^xT;FxFSl=U1Sf z?D-1GXm56*SGf?clro!?c+eBi^KgmfRPqXRsLG&Wl6-w4nXPnzv6f^|`)#YjC0CXE zdWt1^PrI4R%G$>74!8MT;~;r61MQD8KwlU8V4?q~Xg{QJohkv{cK^wJ2V7_C40l$D ziERy75G3-pK%9SdxR}~yVWW~EdIT*ahHJL6nUD6^&yt&Lmhmbhl(;k}8XNZrNB+U} z2$W_-u}Onhw|lfaJyH=ueu!qoNnX+Q`39nb!q3TzyR`Tl6IR3;CiV#)=`)6Rs(tZ} zIhDY(FDkU19Tv>&j@2V_3lAQ9Ksz(|FA_kZ@wO+_S!saGA1n@ea#Yw%^xQZZhEn?uOW|Kc4$Sa^X^X;$>EmQ z4+!1vGB4TJabXow_T_?>pEX9~sCLoE5aeTU(WT=E)Q#cv&38G;oU*iYg_jIBk3lp` z-H#F#tmG+oJ?DJj&MZ6gro09%P65BGz(vdSK)!E(FbAwHMh59`sqJ!fGM_Z;R# zEF>I)hn`1%s2FWczCzDum)c#-A(ON0b4&PMa8oP#XRSNm&+e~nMMky5 zADeV_mf&MhqjmPht@dxxXvL(N&5mmz!b-+dga?TR-tUW?(7P)(@t(+(=4ZIG=`ns~ zu$8y#W2!K|y`@xKxpiZ#*$ZXEt7FV04<(l^);9eFe&gKC4(`2urPmP4QtL`vCaB|R z*~a@obU7bRc;u6oD1MH=$;UGhUv*BA**AYwsl4lDWS zn@wgN_m0_Z5mumYIcgfqfFIyn$UvCte<$X{xzJxOEtnz7g%=J5d9|_d-VBGQTuaOn zB*(lWq1jI+5T)ii_S_GJ=!8ddAI6BkFbkGA+08aIaNvE9oMGin+Afx)aCHWuxl^yA zf=$<#(t_+V;rbI2W9bbN0rK?ct5*{l)sL~CdW{Fxo{@CBVZBKbVX*3}&XNAYFfBq= zCmT#2gXHiUkLcA#>xXdDoBGI;ECsfp?emL3cr}R9%U7~b@LPh(O1*+nh?={dE-qjrBtF){ouBO3VD^pp*%e$=K zO4bH!aKDJ;A!w>Q==Y)59cnXW@j*2Qw>J&B4|X;ES}iIB36DUWFl?of0V>&6;&YElx^6z1;C8K5_;bDkxJye=2NCv8dkAKvwSy*KCPY{+?oB5dOAOW5_B*L76 zLmU?8{XPEA5Ne~>#u=1g=J6bWE>=;EDUhjSI9F%}J4a9RIcsK^4-gEzDq_jVnBYWx z(IL*5#Ah7y>n#Jc>5t9k4`9~ICI?Y2jQ1nTkHJ6jPWFt zE~mOEj177C+$m(ftpCiRw!SIU>VK=9ly{zAy#KRVeZ4|xYCQ)j-N0x78iy%(D!w7O z*LYfbkQ=~DRKgsO5;|AR(my8xAvO!fL%uM+Q!n=o!ui^WVY}OTSGd%owDfcw&2(*8 zc_*7o)?QXr=1OxydO^6YvbHwXQb{Es8OM_tsU=s zl^0MwW@UiBA17!|y7MbyrQAf7oO2jILZKeW5OYM9ra;Mw%|9igLNy5+*>&5`@6_pb zcWt82@E63t9BoHQ_V@S0CvMrcP%PR^6V|%~7@UsI7s;h&+)3+4aFy*Ju*fnDDtYha zep~yI@R79k7cEU_^2_X{*awqDf-#1j^N`y5=urnj`6)tG50x!T{+(6Dv`9yzeqCiT zW>*5WP0mB-p$y_M-4k27{rZ0g<2$51%8^i0PaQHV&I=agkS{$;-vl?3+n_)1NB>Q4 zi=2_JfD+k8w|2alFDyvV+vrST{QlSi}y+q#AtIujtiUi&L0ofVXcAHOc^z-$P3R3Nu5sGFaahi#1Y1)KQV6 z+T`pwjCCu=y9wlRtqoSjVF!lMhXqJ@VnA6xW73O2*7!ZA6f_Cnc0X>yisTE1=~^{* zMBu}|>hDYUMGUhL;mmr1O)X+G+x&^N?C{8U8WjhX-qlL0sH%W^qzr{KlF|liPgtLP ze9aUCqk;cepdAx4eKYZ&1#3N$po8z_rhG24q@h!ToR<>9H;6)p zeq)%}hw>_V`d`P2b{55C#TX3%EThO|;xh>q;8133Rec&$$|Yk9Yu907`>xJ->FK2M zm#8wWoGN9Prn87UR;(~r{;2o3oCy-THzvAcYwqIoDZ`8Th{7h?KeQx3Oupx1;cZ1R zoQAO=gv6A44CxDFUu~$Fg9+V&G3nF6%|W^0$GS?hX5eq5wqol~=OnB<4?Q8$I{$Nc z-tM`3sxaLW{v^DVNSmaueuVfJ-lzUcy1466>d-^bytX62YZ$_U*n;BIBIS$*bZPQ_eF+V(3-4pLOOyt{l&7vzea904>pFnSC;%-V)qDevs|Es_ zsYRuw8Zx?A>(nMYaeEwbm(mTTrzF3V46;8sh$tR0v}gHpg93bgh%YN8WJxJgbZqNA z3z|0c!{e!(tKNKhp=K74PTh=UO>-w31Sqr{N@|bn} z5&5#v>Wh@`MeuY ziZfK)URZt`wqIRenH8jI5Y2+vjNh$bP_i4U^kkqQ`2r{hiVxR=m9&_E^5-ZW)CA`4 z=j{J~iI|=_K10(q1ZLQbbNXYrvs#I--)5Z}n5$nOl61x_2u&kgAf(d)cZMZv8L%!J zMZ{{kfIEwlZ9w&(9rJhU)$oL|X)uAg_p4wI5urKZMBZ!v`5-rqe1n>%VA-#3Gk=Eb zO#~Mh_UZO1WRYjT2DS6}K9vVD(S zlDf$Wk(;sI0BClp9hP&*Ad0$Ex7orjGo|1~J33>Ml)LsEWnd-)yzR{#4c{JLh!u zr&y(Lx&JxZm-^0uiL`~{CRMvy%iJ(`xgH`+_;}=>_)@R+@lw67Fidi#C*aS|_R4XA zN2C+ki$)QD-5X5h*C+4=pDO|pW&35u#&GFeFyh{NSFTqyHRdduDhW-J|9Ap6@zx`<$h(Vo0 z6AOl88I+J>&>JNJqCYXb{9FkkYSt^diroEwDWwHl4O|cbXEx?6hz^;y8~U*dW>TIY zXAM;pV14Hk;Z^*0!F+1;LhgF?x4b+3wPxm~2`D^pNwf&6tpFRs4KsYz=HWUB*ZcMf zXfpRW3=)!6uesCU;NQB9bhDA&T_{`X$yQ^~)?1Wd5QF2k{gVD^KuV}}PKX-v3bs+a zB99P-vX&DhGTx2kZ6YX&2JN``r_mh&-1iv>5EI^UJSn{qlK&pR4tpj<`HUx=%7n6? z(%Hxo0JtpA7_3_j2!}MYcE2vL9F!7jI{o)giL&ptntQ*|U%z_Bn|JcxJaVI|w}p}6 z&)$9g&xnQGD<9OC?*M1VN@9YvnDt9%K~%&}vi4lJv7o;I5+2R_*)!hjiGp;vImsK0 zAz5Sshp13IAepOQ!WdYTSEZvPM3X;NH7VkZOlR#k@&v$D#p_VV)m)qr9;$hNr@ub` zVSaN9F8&!35=)0$#5sfIk$82W-g|zLil%ELTth9mZF%sbd!)>b&6OCw^Dz-Dye^`ZEDNY3kL6X)?8e(Orig?%7y3}QZB10iS_ zvHgDX1i|sz^8jwn%k;c3vK)Hu-k<$oEyRBt$7Vay0S^cM7JxsH!R9dic_Xj0pqB>Q z$bD&MAZ&d~J#$JWFyfpfCqV&an0_OAd4EhzkJ*o9J5CwFNX35`X^!!66lcB63!8j$ z3b`zqe~f)|@wTaS_!waLk(~ZM2Fp0+-#xl&#K60&3U>lk2Wl&n@_u-$i-fesvKR(z zW@aEkn903ve_PLJ8RB?hA9y|paOl{`6RcxzT!8$@mj1KRTsZ8O+Q0lsw2_gg54vPK z(FN^YRn+sL-J3#4c~OVsON<&}kbXp4J3}UH;F+Dd9Oz|wXt4ct*00Prkt)J|*ETf$ovTmf=UfU(F&gYd zH2qU@s$Qq7wW>CbCb-fPE_WK{M zCs&4_NbxhpjslE+BaZRxqo_mmc3}wbS?USFuQ3yAxrBb}|GbVLB;3~{Mrs_)_W%x( zZ*kMu_unE>>MN6VqWX4!&!V`_O=&}P4VzJBcCimQ+>@jQ@j7&baAVj{N-}ET*bCHt zPZHQ)fc_vn?(pDg{p*f7!h-B17463d%%#qX^p6F|AHRezlWIe85DAQrHXae|FyG|x zAfk)YFK?!*?mQ4=QX0PnAL$KxWUx4xv(Ds|496LDxAgv=iXHx?55daT*htVthlqV{ zr10{*?&Dsj*H=+(Q-OD^wab_tL#F&q+wwA9Z`yc3dYh4%f|<@6X7w?a66b2&lkYkV zR^%i*-bmy~RwAF@NJCRG6}U01Vj9TgO_6Y+pCPSpvt3?}onV}Si1QlH^!2$>6L%KK zk_B2a%b^SzLi^^Mf@?5LFZ>R_y~#nlE^AsMbVy?Bw_cqdBU&JHP`Q1I>?nsH&To6a zi|a^@IY0UYK1E6RtC4|2+c)lj@?LD6bZ3RGReoP%H({=ev>=_BC`b{=O_iXeI;iqo%BAffO8R8RE)DFe`;x zg>z+{Wy}@CC!Htr;yR~QoQA?V!^0+v-2y1?AO_@;jW7k^9DwhWUJmOSr>Bds)qS1E z?c22q`3hMYX^07-tMbU+TtkYYrPqQ?SBT_5T9GIbHwa9MK-9~z zNz{`XJFF0?y2%;Y9~(f?=$ZwE7Nt1U7IGYUR=ge1a^twx<3Xa&TCLR#P_dJm{4!vs zo8fUA^Ki4imbGZe5h5W@9NX*j5%cWaTR|D?%jgK*M43;|iuk7=K9~BHZuTDJfP-`4=UzVgOq|tMW*H>JNh4Nbr<*3f2Y``LN+~(>LNfES) zv{{0in$&-qv{fs)=ZD#;W<&j`26j$y?jx{st?-*%QK(ES8MM=jJ@k@ zpv&jDq$>xJGoi&CFAoME35QSCMhyvdTt(je2fdV6t_%02H$O_0AyV7Eu}+P}sPr0VQdVLSG$FheUD=W@RU-{Jpi_x+%WR2)a$ z2qY9=<79^c;GT-rjE@s?0zV@Qc6*q*#mW~~F5*WrEOBhsC_ z7Ln3M7KefF{LRmKsMVotR3+J8C)bJ8gthgSyXyHENMK6)&F{Qr#u@!$Y~y@O#2cQ+e*ww_ur-yWsKzTL*9#P zBTy2sRJ@aONHKi#tJ96;eJ7GuvN8+9izD>%Qw>d&4ld)ZcNfJVal$AI+KXv!`e zCcm4)`=0v1Pj?Ad=uz2=v->sJL<_TRVp)x?KJ5-Bu*$jSqR@5QX32XAn*w9 z_?^y8VS8GDbVHm36FEt#Nz9pmh6-CpPZIz1w3By+yUaVP{zHlK3?C~SvF-QfNXGn@ z!nSdTsJ`&yG#qL;xwpF;Y&t2BsomdVvIu9a#&^G;YUa}VmjS_{AGMw1x@Wd;V(ZI# z1{vp)R*Hc*P!jFJv%E1>^;%R_{XSX)_g=!3U*E31B287ZO>y7RN3vGoc*L>Nvu30V z?y77bcVF62{z+2mIe1X13>HRD>dR51M@$lLdAlDOv4{TtnsQ&HVma-TqIjlcMZu;$ zI!yWr`}j>c)46)>WB96m|`xt=Bo ziH3kw6v@BVskt_T6L7>qa}nB@mm{GUliIgqDjdBm{I@-)GS-1>HR9rP{plGojn){6 zLf%Z3I^sv6)z1rInuYHMJKlN8V7LYFbYCa^vR@0cPmJ>3?AubD^XVYobBa_KYBSrt zCjea38z=urd-PkW>L2`mSrdry|y;9e3DRy9$r^xgBYnr38B!mCkKd| z`ZSMWM%desbyzAqn$l(i|*_-hV;jlPiGvH0@XaA2@9pfyFuQ z{YDB7P#%Pl@^~zZg=75APZpT;=3VP2EcqC*R8LZj0OaaY$8`)Z8sC%U$@4iMr8>fU z2@1Kw*oMi*^6t(A`uxlQh*$^N0mElxAuqe<46gsr9vLDS$+Km?ScIe=#VuRb#StkE z6S4#ERp@@Kw(y;^h}swPA6M!~z89|t2q#6!VbeTUA}6Znv3dgLO(!SQyjk) z3TWHsc^`QlqVFWzNSOaK(Kg1|F|!6})wPPHnJmK>IY`hq|D3P-GpzI^x1YSF&vXXP zqWKjz_1cdfGv&=pk;?E=r(J?kI^y3S_0@z4tCTpf8>-s5?Rp7dsqklQurpZAP#zc_ zflg+vfbYt+1L28clSQP%&K^d2ZCsZvO;gk7eD!Wb9F6L@JBPf>%BuZFT6yoVpq z7E3ZRPoL%OHjIY1ru3hcxi1hAW$ZHq*98cLFME=N8FWz{(r-<`X)h$s3qzns5n!Q#j%}sF32rgX!(o&S;Rv1NH|AA#U zl;($A7R5zd8~64P9v@Nq^724;$(pIwR5Ca zPd3CY;6()&M6PiCx%|$y`^r6)1+rOFh#@bfkj?MZh#TKav%9*c1*j_r;K~DPk+!ya zc#i|-YDZXEKx)P+Db{MBZEDDS`?LUEZVs;JBmlYIv{33O{_gZQsI~&D&abf8}}sQ z#;w4ZlgX4yN)MQ2DQfjH*cuH|=Xcyzn&*FyT;g@E5>{ zcU85OYeuQ&iID36@#S=Z2ZBr#jiMh23`XRNP3xYWkp|hLR78T938Pahq^1-|Dxw~e z98fD*9oWz+q z;c`1#1LJ=nA!-CTN(h>{c4DUe4<|N6RI zcxHK3`2ykn}@uNQhM)~b){Elw>c=WAs*^V9;?)@&LZ$DR%1%dc=F*_ zNNAa>O8H@rato3*%Aj3qxt+`TduRyx~_=pbjkbPGOZS!HCJQ`UHq^S5t|06r^Gd>1I6Wf4}71H zQvBF+@xZh6hFJnYw5*BqoE)^T;Uco>o7rQ!KOds zUFW*Xzksl69y6`gb51fYk+ZsulLom~=>0j#QYRmSI3v{z2_skG?nG>znD?-j>LnhK z$vAl+Q*s6=(|BccmykgTUJg_-394Z>x^SX@Q;zX31$`g3U1dh`a(Q3yW#(i(!f$5| znjflqFsZFg3P%Y(eu_OxRmW80c>m04Y5XO^&FL4|9LjT0FjsK4&mlDnUR{#8xjX;{?EzQ#t^}L7R+eNHcJ~`v;xvBO2sSGcU8itX_X7{?}}%f z&U}^}hKg?-p6rR!?)R;}V+@QNRoHgCE-~OBi9k7|Ivz>B6iqYyS7K+FW-kKG_~B+# zOL-&Wp2<%0>n22od%fxkx#u&xv$_IV&}iKqJ)(3hw4<3jp$W37R+f)|{4UpkmaI!B%>tiiV1C+9-d~Tc?wVR5 z@A6)T5Z?=!P9(f|c6esFQ5+MVOorlb$86-svnnOXQ{2A#1z5|?>r|#`0|r^|fx{?= zK}m0a_h8L2#i>wN7Nh}4ko9-vj(MqTJg41P04f#R<<_NZ(Ro4;yh5^iak=0Q7qsh* zhJ%-_6%^g2-^9nbTc(Zs++gk!Q*}m)=u?8E^t2VlaOC- zEcD#xnmlXSp{z-%`hR%Z&JcXpD?Nu^XJ4L=anAaqKMp`)lQyRA#8phiwo6LAGjY5C%f`U1QDc=Y(rx-@iH-A*dM>4LuK>qR&sRzaha1={?@@8w-USD89WqScZicgwYg;?xdon|-B&+odB}AC?tCi9p}cgNVDkxRa zZ;R$Qd0`^(Sb?X}asp;%qyP1YVPKZLJ-WQZM&#ALTYXF}X_`HIBBB}U{W=pHi>4oY<=u_5Q^R(KKwICi?1fS515^t|o&*E-IpmC)8H_*Y2C+j# zm*7(&!`T5_enb>zMxEs@E!iTzK^8F{cIJ>V!HhO7xGNs27Q+&S z`cCfIGk(IJ*D!>lo@O$%F=9V%BIe|+L}8@uU3qGx#U?RIrB>V1J*1y|HvaDkt>^My z49zR>JQv_W{`{FnGCzbf*Q6YGr{XPLRlhI#II4tO*Sr)CRGD4;bUf3>QU-GR3o^?pNeu;s|Q7xhoYFl+m^!xg}3S@iL4RGo37{wE+k zHz7mP>HpzE<(4&#TzbHas<$*T8+ikdEIQ1s4QYq_6gQVop<2Cy2;?LcyiS?Ssfyy3 zA*b!oEtz>l#X7>~>ih*fWaTKskHr4jEUTfLw(FHQkswW@Y;r?VrE0sk! z-v6@>$9x|^P@>kcuOAQxkq77~8^-pzDA6>$I{A1O%saqJh>p+fF|6#1=Dzy%qjWQO zYLwu$zc$*roBTjalH$dpo&>@949bp2+lPt%W+h`tcWDe(a5dunqyW*>O6*8@7>^J7*c|EEw+U;l@MV5SRo!HL6fny#tDc-!r$Ynoz!kbKroRvPByF2z(&@-pp_(xL%wZ(4={gnT4sVn~ z(?%LK)jw7Hz>-~{v#y~ODQnv)vq0t;#GfFRX>>xL0oKOCm*hmrT^P^$<_SgTMH*yj z@R~tR>Vf+#x*Z2z$AYpfHHYdb@gFMgp6CEH10PyWf z7~?N$kEK^~07q%Qz$+K8xksGWICRHy-@e?s!U6ez0oCU8o6L#)9C>jr+CwoNA9ynh zbdd1WR>QMrq!+E#q+ypkdeMPj7W)}@G6>$+9_a>_Y*@t^wuoxfeF>f7J{NRN& z{LmGf=MuS}>>Lmbh!IYAHba8@l**q=o11zXvR}1t1{(rxt}Fli>}Ua6EhooQ%Nlen zn4O;{?C~dAG4tH4r-5JAhW3pmxt`%P43VbiL%SL;Kbv4(&=5(wCmF^D9$pHRu0mD8r6Cnzi zcF8b;>#639)UQ}Du=DpvQpeN7*QuTwZ#Z8wBHRpUuYBb4lIrXnD@Qe0QkX6ib%_(8 zG1-}WqHNEN;OfEN_JcQF_d2{>bc|~`bO~f&GKU$;m$zW+&Fch?;Hg)K;%(5TpnmCL z6zm0_Yw*{Le=V1869utRUoGf=-P{sjnY?g%!4mdU%u}}pku%mjWZA??3P2m309ZB2 z%uNlX+Go1)jbuhc@#|L_MGPX1RbXCu{LC5^z2aZ&(=@G>k zSnFsC!rVL>31uXekkeAAUY8Y@#x|i^)HT7Bdxx6_Fe9LUn&b0)Nkvyg6b-?Pz1z$a zu`L=F+aQixM6$iq@wBo`sobx@$qCe_DKr2tV-kgrpD z2DSLrg5Xpjh`qU4Zp@Zxz{OiP#k$>j01^OjW=T*0xx|N%psbN<>9rX2B#Hk}_T1c$ z(iUNGSVDD$(<%h1j%c6KAFR1CdvVNmBh!9cvwRyNZm6<@1Rd5Lp)7Y=yowP~hNw_tmR9POHEABfz2t3iZ6q*^l zT9l7VDsZ)_4rCO25B2L%9!tF~!v9GM4)NZ-hwd2f!yssVE+@ z3~XqLwzpj)nx)8wzBnqhY24P&lj42xJ&pR1YcBODxEYC9&t?9b) zOsf>upA6zOW@4PWmm66{`7aS28q?F}yRSDc2l#9YyFUzp=!4Eu{1DtQa_7crxjFxL z@)Hv#77HUj(Ywf`Bk7%+@=Z6+cJ4$&3+e> z`Nkzid6={+Ob`qm*n|2C*W8F*Y_&t@N%=l#xwM<5^4)m}%D>U3%*4!2Pr~%_j(De% zY}QPE6FUc3<&L%Z@R^bhkZPUn(UoRLOv}B1Pu9EhK~|31vbvuA|{vsG6U%{@UL-2d2}c2 zad^##-U9eQ`S4#aBCfwEgkOhaI1dLpPr#z=|6K6Lo7lD`Mu*tXIYbG z2K>G7Ov1$(ub0z~!ZqbF<#qx@MujZRl3 zbxZeFSFYo!oeg66jRQssFGkIz8FY(>`ZGGn6GFO|kZ z1$`j~`chleNKAs|k=QUdALd;{lH;nz(15@5=2|uoL%@~V;9%>ONA#uxK`uPQE&0U3 zFXb$osh8NV+WJ?ss)-Fv?t2Wj#QMVM{5`h6 zii?&@B^=55!I@7)%pefSbgn06w{~EiFVQv(-FOUPYT`z$50v_D<^*f_3%OZP5=s>OA!8;{LnHi6i&tYSSWQtK1fl$7g*3ybp1qe?y}j zsnzLd$Y_7^@+Fay>Z5fC?-8?@w~yM?14-r+gb!i@O->s}!m8=(FZ^)%hZ43=G7u~n zZaFpQ6dF4`w}s>$vknih65KR13N*pg{N0$MfOyf6J|woTL^G}s{l3h4R`t<^f?n*G zRx5L^)W%YJ?4et+OqU#7f1L>Z-uHuF!e+GtSL)pfx1eu1?HfLq4+_Y@I2U1N2{eY| zBP3k={IPqI%9jM1nx=PK2aYv7nyhRas}nGr(LhcTj>TSVt6n84m;f7fV;JKuu+CE6 zM^d-lf*nw5GnP5=PYm1L{os?8WoD#zDFZYy7_(+IaXTQut!-nle~$2O{Nse{8Go2a z=Yr?x!@!liIa1Kx_HN=0*=LWx5RHSpJ1L86WpAnmdV3w)QF_V{H|*>VXBDgK<#HL^ zc#E(%N&h=1ZUgRJq=4Pb%C)%ZKi{HkLZc|BU*tW=8ls)oV4^;rE&kx((BjVO6vROM zK$GLq{$`Cx+pG8<6l2}q&tTLxO&P`xSzyghdBY!C`{Ye#i_I=A#AVvC>~3yBiV+#l zVsSKbS!~}QB$~lnd$BFdnyWHf?I^>M{lnsg%J9mR}mO#iqZDFNjLr26tHt_mi3D~rPVTMX~qZ!Q9QZ9 z7fmHvYM$XBbs^9!`ZrVUB;4_7z~zx9Tf}@5vjroHa3IYB2Y6%BF zs8gCbGfXW?*T`AY_LfU`j;r^11V2x(A@3#phd~RU4AEhK*C-CPjVjB7!9i>@c|~+i zh@h`@gDVaiZ>$-S%4uhN$YPs*(1iko0>GWu|pBHT{Ys;wxE1D`_LKllRpd;le< zI0@r4J1EptBAbt`eT6LzymXA>b}Kl9r^H6H!;r#u-clmPl7jB{;f#?wQuld z6+zas6L9?Mhi0DS^~F@thO?xGap@LfRt(0ut+P9$(3%~Tp}{TmIP!_3?61y0fRV-1 zA&O~dOXQoesb%g;S&zh!+lr$7Ke@nanA&vvjoIz(_gE!32#?whbCxsHVqM!22{R%# zB*Js-@7|aF1L*6E>C=z=3|tXO4H#nhX*=Sm|C`GXs3_yXp-xz%NYZIXrlTn7$I;JU z_D1g*wWc0)dJ9t7(dNJfb$#$cJG7UsJblA^@$lwAtO)5F z3ab62Mdh~59m0FX?<1;j%l`n9Q+}j*j;+jOgpX!CWVK7*nmpNoK3~`Pwgh@Enqo(V zgO?h3EhiO-ouOrC2)9o&tlhQ;KSL5%o#GYJnom@RvSJ!vGI^hQaULtxoZf7w)!}cd z7W`EB`80fvkkcRz$);QW{mbO?&Q_=x6W>sCainppm32Zi>JQ*-+TF4079t=wSOHP^ z&_~JUTpm1`8ut@0duaXAw01BNrobZ8E!|3$L}@HlzerC>FXG8K4$ZAAMVjn7kd};J zzYJqIOG-8}r^gUkvxbhPpirTGZgDq{y=vjjG&RC1g?;|exrdso&vTCt1w179z%oed zTD$dDFGnSMNoh*@Q?TNrEqSU~({J^U)jvd;9}c-!V;yq10N;tAqq@h)F1Z3S(j*X1GOPLVd5v{iDEF~p|DPv3PO44bPq@tQB0QvKc7-h>f}HS?}mhBOmD zGZ}xL$=+g^$HkopMsJHoM3evQ7^1Kb$;F-jHz>@xKpBhAfKbzncLcE-7q)0XBC7Fy%!+Zhv1 zh&xP4y<3hi1^8MjL1)mSxB@&y7y5)=D(b}ZSBGib7K43KPgwP+)W%R5**NM8`*SC` zdHY9BvQ;;HHs6_T-4JYzGx}^$RANMXBW`>Em&#Ia)=f2%Gfv}wSLDT^zDO!x7hpF?B{vn#rrO6V9ir+U!2GERZE}O69QC2=J&jJs-~8TbHlB zhsfckAei}Rrb>!~?}2L=`+Gt8IThpNt9fzmXVy7C0#X(anJ0SU>|^NEg=z_zvc{da zy-O+NEWF;&f=M7iX3)PICH<`52Fn}K%I$wGTsAo5qwsz&n4PjTk)j%31-3c_KVoDb zpaRB0>0KSOpyx>5`_yZNeYb$25Pba;d_>wom6yK@T=7n-BNJP)8pFK}Qq-L3zBW;w zZ`#AKr`r3G7g^S-tbMn?2KL+G9wpunf7>ltKttp z90!7|B|Y1aKuDI~dE(+Nx4bS-XS6oupKfTMKZWPUN_D%-%HN|`0tlJ()ScU+L9}gz z*AFzI|9a6%E3IQkwx5Hp7e(hI$+|3i=nJAMbDeds1(+Y&y}TJ^n8T%T8kJT5<(Mzf zhdk=9-WcdC0Z{xIw0A9W*1)TLMJ2u?Cb5FToD40bG&;MVsXEL4N6ne2;!W@35%rcLBjob6UmOJgLI#*R}nFX*`UV za_r%xWeNF?dXh!}a|&A+6|vY%aYPzvvI*WXK`CgBbWV*QsIBrOTln|tx*tcegLV^? zcg!&J+6a&~na_93d)`b9=&OzqHLg&BoZ*1!*>WNcS?%so+QC*=i=3p@oNU}{$mWHN zpVdm1{$S0<3YS8f$hU0?$z0x?WreDB5}{ggv!i7O1_>8NGL!BA)*#q;n1MkAqsNM_ z=J3wTn%NQe54>HS3{?^=Am)^#J8jQ89{bob0;}1V2BPRw`7vNNuCE~ ze6m%yXqXi9RcrZ4+)E8mz{FZ+_C&XBuQ%Usx{vMXGfS89~`qE`zyZTmDmm(;ia~IphVF6130947W7*o zlHlCvcgHWG>qW8m?OCLpYm#>A3VbVjGbJg8HA?}rv+iicF+LhFW7UWNIze3Fr3|fc z)cv0be9R&P>SFh^zef?|LZb#U5;VVd+O}zr0o61fHAXJ5>O?7(tin|a2-*qV(P7YT zCl>IqHL{x;Y(@91%~0F%mOV=7y+FnAhXGqM`lTxVB+fZNRcf*5W{qkO$HN9r4q_JnB3|U zO~rr_SL;4yuGL0@l&8*na(*jKQIo?B?k#GN%F!PHRgzho_U&Q(GjgbHhTiR|7X6+LxUvoSvC3Jp9WS3Tj<)uGS-k8P zu4J9>U7Yzf44L1h0p`0o{RCLTu@$SyE(RelN!6R64-jdikbjBDFmhyX)NCbi$9YLM z7xAAZ`7=-ZtKt@$+h1kT;J((|Z1+ETj5<|1VBqA&az5=~IIg@8d^@DEWmc(9{$$+Y zV=?)mM^6?Q?P4+va>Syrzb3161e8uo+bxpsU-GLFOgJ!>XjduFR!FjxAG(yNR&K$_t2(i_RC_ zT|$vXTcRaAcBX}yY>AN1AIh&Qipj=U;DExp?=>d|AMK}#InAFPSkLh#k?kZQ#lT^^ z0oT!sv-T}Md&l7@o6>X5&qm_|U0ohl33Ir39gTQY!sF|uIt(p3A|nq#8?k0?N)-Zl zx_hh%Yi)St*I~G&Dr{P~JjiTq{3iz%u+B1+Y_eNH(e-vNKk54ts}Tdh99BHh3`H=xBXZ`y7q6TklaK*_)4zSXB&_H)Yo zTv(d8y@^-Xov9E~QN-h)0eW_)LfE0ZgU&tP9Vxw-FG5uU=L-av)6NjM$0Typgslg+cXWyxACg@uH;j1m zi^&47Th6I2Uc%ttxn(GMu(vBGbL9&wF9qWK71fk0N`(oY{R(7**&aPfcBgKRTP{jyp0)v4VTseTo^If) z!~uD5N^tOVqbjxxoAC=GMHP^%$95A-GAe0O&s!&odkN+-`#%ui`@)tHxnd?=nv0lU z5sp<_WF&iw83FH3kT4zb8`O;8ItTUFWPFMx*O1=_#0;>f{g@{YxJBI1)^ zLQg!>|Kfan^xotPIX0NR-U9H{DbF*1IV<|;>w4|$jHekKoAg+oQw=W zI>-P(267l9kE9fnv}qKG87`rwj&=6qHFL@^X+`_u%lQ5Q>JKC%`wQwnG4#VwPQGJ0 zZh0>}&#s!pb6!tSujB6j?ea#>^4>jbQfGrbn(!FSxrRGNzb>9N{Q*?oE}A2i=f3y* z#!BRT_ssi`m$RNmitkT)J+&I>*SiZ_9#`oy&7Ba&zUH@Z9bygiJ`MXZRz(7O{?Qii z(^hjoB6#n^?U9^Q?-H(v*Y{fYl-{5GZYVEms4IVSsrL@oXV-|AH?`kfeMlns{o)xx z$n7J_J!H(MH2%W&hTPh}QxqoMpaQAep(0o(A5yeE8t|$+{^tbfZ;|{(kY7njc>8!E|odLfSdKZyUU-+$%m|LulnvO!#T z2%yArmf@whwG8@YAKu8%FY8~DlE&=&o%-~)s?C?w)9)d_{-GHWCn+1qxg9FfB~stj z_~7=QSKY7FU!pmxtkFMhX(e>%* z?{pWkbRzxOMYQ8{=P~80GLpw);dTY+c2yymzab%P#ifTnPcx(n9|fK|JW2$JR+@zC zezwzIeGg7VHq%XYOy;HNgrf8-M8l6psW<@VY@e9ptR;%7BKR!G0eURz5}K%{s9x`3FshAtng>=v<5Ofzg&v|RqQthCTcG@w(#Q&nCVqeRlV0! zU7>j=b}Cd6wR&dVr^s8gw2Y?BhlZj4BvMcu{Cgle08f4E+;GK7qWL$IF5)4=9{B9s zJhsd)`x5F0UD1`Dd~5}l%g~67GCDCz*qsltg30#qg*1aF3(YwfB&j4TClm$Cz0^FT?Re%if79WDki#>oS3r1xB@8CvmquKny}w?BfP?p*wXRJE@pJ zGNE)(PS@t**nPp?&l6G&>8tIxzP=*K9=qbmSom`|L4D>Ko1dkFssXOZ3;-iUCavQE zKwpE<5PV%jVv6S7_R*CY-&=>DJeRW8uu5^fO)o4TGDvl9JYmkRS1YB1t|7~O7-Q~0j==Rg zlXR&uPOP~flW4r0yrVUuha*hil0ZDlG#KWqx_e<9UXw)w6MhiNPAxZt#eOQLFF&>Gk1QApSoR7SMA;g953=N19TUHk;2 z`D=R_qQw^q1K@=T0LNr+Cs8M(`MrJ&UU&|$Hz+BSAh^NCZOtj8AAVJql^AklVTcmC z9hPIwb5i#K+I?Ol1CHH51sv1AzSq#0Zz@85T=>=?9licIBTz8;b=gVs z(0zjPwPz0ZWOKS96NY}!GgV5R+GAVI-LfOVBG6_l6c!c4mnoYF16D1N@ss*yXuCcoiA4e^X|PyNFWYh9TvR_c4c7s2L*+TFp9@IZDo`41#+=7)IJjJ7 zFcR|-kM@lip`J~fXhi=bDkqB* z)h`=`)SQ|-_!dwVeVKGQisq5e#MKuRQ~MX!^E6?F-xOA9m|nl@6JdJIEdjyD zC${Nd$prt@^Gt?-1m*kjK==44SCuVGO~ud}s+ve1)0v4khPud4PbI*>sy#MK(O@&c z&qSB*F9Kou#R$VI6?V z^4Z8${d=(2r^hgnC?`M}VBD4*Z^BFmWv0eZO5n+P*6~unL9%I5YZoOo_WH%ryJHO| z9NjS8Hl-Wc;VW*6bo!hYI_Gh2VALu;07{WAPmQ5aGl2qV;#wGz;UG1IIDinTnVA}X zg~y95{ZceVx=0k!j{Lhkx9S^X1Uj!ge6CYvs#p{4lx+b2h8gRv#Q}6uM@6^X9zqiTWV(q?Fz;udj(7 z6PAKeHx2~H@gU2RZ{!;eOuVNu1qrfKQ7Un$_0&M?s;Q4)4E!nFCZ5Ft=JwY=)=c*5 zOuDRdQE=2A0K=O)Wt;CIYIe2h8GTMS8;sx82tw`oOTEvkqFcpXp~J(<9Us^ z=ZMv``0-BdJJW#TpJju!Q)P^M$fB0ok301rP-$5wwfj2+kDWLv?Y4X(&FdmmLPVK5 zBhzaxXnCQ3?VjqjBwp`0R%g5>9Ll3^Qpn@RBrT^k=8&Vigk zps{c?oPpZybB5s~ux{(27yv}PzG_@!kK^TUv6^_xTVN0)hN=|T6p$ULVytWFD2UxR zdLk-}+rIY5Ie$zJSFZUzr!8!{20u^6X#~D*zRJxyTSjD_47ukOpb^W`7CK(DAT5U6 zKE*&u-wDbW6l7O^ya{Nk=^1%$o5232&}ZZ zg>x*ih@UYy=87imZrXC1mdrzbgj-@PeGE#^W7Hy}kQW=5GNCrgPf5N>Laq3qCsr$o zZ0hHiAJR2+-9pszY%-r^v2PXw5|D$ZWCp6ngKlE{SlxbeE+)!n0>BaOB-)HZPwe|! zzTgde%RxHIbLUNIwd9j#s%*>?lsW}DXi~s1V{;P3Q}`rFz+}QhXrIdS8pRv^U6su) zU=2^*_I2~ifan?zV7&)Z=H1l+nds*!UB?En=hbO5(pDTHI}=8URNFN0g(CP!{Ew@Z z%oDNZxC-jXcsNT?Kg;}p!)*!xFPVw53^k8h3k7LD9wUHFSL3?51{|0q5-25_5+)eg zJD(0NKSTgHLcXDWqbtDB&s0EzB21Q#s4&}|1bpPm>A87kX0=|nt~qYk>-?5_*s6f3 zO&t-bHs`NbOwYWLT?!4QP{39lo9FEsdHAapTa@W$(~%i@m`d~@XY_KAJ#_CZ*5veZ zjOOs0BH9kpj!eGkI4VxC<2K(?)J=4>ToKrs@Av^f(z zkG9-ZDDzXxWZp?M&zsCjD$b+NLHTC8F`)d-RR^yQvp^-{l2UlIJ(z8wA`iBqDa=mP zmxbYl(poxak1Karoz&at%*wed=gv+4000lZki2Cz`X8X+NRr#F%m4rY!Q`}*T_HOKZ>tE{fKYL`zF0nJUME0ZM4JQsGou9>>qYsv7`h(}5RmtjWFN(50 zp8rvvm$vrpOMIRCdR)Z{r>ce2=a=#-rJA2ilJ2H0+~UsQxhwk2)g*WUv3}je(H#cA1)Lbd}iwccx6-SGl`!H$DU@n}$jk&d#|ajC7fiv}W_2)LKn4_iA0= zcKKF^);R2xeQdB*S@eA!6mz3DTd0PI5K)ft$W5)iF6vkLRYUwzdz|oy)F*yQ2j_{S z%J|a;&R>h=T9UMOyHE{_4sZ0lXX=%Dj?lwmq$4sfOi1w~t8ozb)e`K=Q8g5q;PFPt zjI+AZgEiUS{g=tqnAeuxXM?^8b+g6A26bmjM212}^3$&i*AQYqS1{-4eV-iow$Y!S z1U^Wl{@Pt1`SFb>aXj_c<;vavrMOwypaE%E2-LF8t7`3 zI+DWN#LZ8B1HY<@Z~oU4&g|bMB1j^8eWgKY#ou(>;v*H-lTPuhs$8?aX#y;viFl@wkQ1J;IMf>Z;E# ztiLj{>AtOL-baXKjTzop#5f416+Wv??=`+88)?cDSgPppy8^wZ9JusL^MCvpytT8{ z0~|eCT~~2WsH&hKlH2vwxc-d( z9wRXu;|iu?_KyMaGg1N>k1$utxv4PBQg<>UFHcQy^S^@qfOsa-;9K-Ke5vinVaISs zKvXn{hLudS^YJmw@Rp>6X?`*F&sqj@A^pXt`5dx*2