From db59f12c06366e1baf16da015d226245d75cc8f7 Mon Sep 17 00:00:00 2001 From: isno Date: Thu, 29 Feb 2024 14:26:13 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E6=9C=8D=E5=8A=A1=E7=BD=91?= =?UTF-8?q?=E6=A0=BC=E5=86=85=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ServiceMesh/MicroService-history.md | 27 +++++++++++++++++----- ServiceMesh/ServiceMesh-and-Kubernetes.md | 1 - assets/linkerd-envoy.png | Bin 0 -> 53291 bytes intro.md | 11 +++++---- 4 files changed, 28 insertions(+), 11 deletions(-) create mode 100644 assets/linkerd-envoy.png diff --git a/ServiceMesh/MicroService-history.md b/ServiceMesh/MicroService-history.md index f064ad71..3e208ed5 100644 --- a/ServiceMesh/MicroService-history.md +++ b/ServiceMesh/MicroService-history.md @@ -62,23 +62,38 @@ TCP出现之后,机器之间的网络通信不再是一个难题,以 GFS/Big -## 第一代服务网格 +## 代理模式的探索 + +最开始,先驱者尝试过使用代理的方案,常见的 Nginx、Haproxy、Apache 等代理。但这种方式和微服务关系不大,功能也简陋,例如 Nginx,配置上游、负载均衡还得手动更新。但是它们提供了一个思路:在服务器端和客户端之间插入了一个东西完成功能,避免两者直接通讯。 + +:::tip 代理模式提供的思路 -最开始,先驱者尝试过使用代理的方案,常见的 Nginx、Haproxy、Apache 等代理。这种方式和微服务关系不大,功能也简陋,例如 Nginx,配置上游、负载均衡还得手动更新。但是它们提供了一个思路:在服务器端和客户端之间插入了一个东西完成功能,避免两者直接通讯。 +使用 Nginx 等反向代理,避免服务间直连,所有的流量都必须经过代理,代理来实现通信的必须特性。 -因此以 Linkerd、Envoy、NginxMesh 为代表的代理模式(Sidecar)应运而生。Sidecar 扮演的角色和代理很像,但功能齐全,完全对照微服务框架的功能开发。 +::: -第一代服务网格将分布式服务的通信抽象为单独一层,在这一层中实现负载均衡、服务发现、认证授权、监控追踪、流量控制等分布式系统所需要的功能。为一个和服务对等的代理服务(Sidecar)和服务部署在一起,接管服务的流量。 +受限 Proxy 的功能不足,在参考 Proxy 模式的基础上,市场上开始陆陆续续出现 Sidecar 模式的产品,例如 Airbnb 的 Nerve & Synapse,Netflix 的 Prana。这些产品的思路是,在 Proxy 中对齐原侵入式框架在客户端实现的各类功能,实现上也大量重用了原客户端代码、类库。
-第一代的服务网格通过代理的方式间接完成服务之间的通信治理,通信逻辑和业务逻辑完美分离解耦,传统侵入式的三个问题迎刃而解。 + +但是,此类 Sidecar 产品存在局限性,它们往往被设计为与特定的基础设施组件配合使用,例如 Airbnb 的 Nerve & Synapse 假设服务在 Zookeeper 中注册,而对于 Prana,应该使用 Netflix 自己的 Eureka 服务注册表,这就只能局限在原有的架构体系中,无法通用。 + +## 第一代服务网格 + +2016年1月,William Morgan 和 Oliver Gould 在 Github 上发布了 Linkerd 0.0.7 版本。早期的 Linkerd 借鉴了 Twtter 开源的 Finagle 项目,并重用了大量的 Finagle 代码。逻辑上,Linkerd 将分布式服务的通信抽象为单独一层,在这一层中实现负载均衡、服务发现、认证授权、监控追踪、流量控制等分布式系统所需要的功能。实现上,作为和服务对等的代理服务(Sidecar)和服务部署在一起,接管服务的流量。 + +此时,Linkerd 不绑定任何基础架构或某类体系,实现了通用型,成为业界第一个服务网格项目。同期的服务网格代表产品还有 lyft 公司的 Envoy。 + +
+ +
## 第二代服务网格 -第一代服务网格由一系列独立运行的单机代理服务构成,但并没有思考如何管理这些代理服务。为了提供统一的上层运维入口,服务网格继续演化出了集中式的控制面板,所有的单机代理组件通过和控制面板交互进行网络拓扑策略的更新和单机数据的汇报。这就是以 Istio 为代表的第二代服务网格。 +第一代服务网格由一系列独立运行的单机代理服务(Sidecar)构成,但并没有思考如何系统化的管理这些代理服务。为了提供统一的上层运维入口,服务网格继续演化出了集中式的控制面板,所有的单机代理组件通过和控制面板交互进行网络拓扑策略的更新和单机数据的汇报。这就是以 Istio 为代表的第二代服务网格。
diff --git a/ServiceMesh/ServiceMesh-and-Kubernetes.md b/ServiceMesh/ServiceMesh-and-Kubernetes.md index 0c10583b..76f2ac44 100644 --- a/ServiceMesh/ServiceMesh-and-Kubernetes.md +++ b/ServiceMesh/ServiceMesh-and-Kubernetes.md @@ -4,7 +4,6 @@ 容器意味着创建(包括初始化)和销毁高度自动化,且具备极强弹性。此时,基础设施的功能(服务发现、负载均衡、熔断限流、路由等)与业务代码的集成需要在低成本前提下保证相同的生命周期。物理机时代,基础设施功能添加到业务代码的方式只能选择 SDK,而容器时代,基础设施的功能添加到业务代码的最佳方式变成了 Sidecar。 - Kubernetes 的本质是应用的生命周期管理,具体来说就是部署和管理(扩缩容、自动恢复、发布)。Kubernetes 为微服务提供了可扩展、高弹性的部署和管理平台。Service Mesh 的基础是透明代理,通过 sidecar proxy 拦截到微服务间流量后再通过控制平面配置管理微服务的行为。Service Mesh 将流量管理从 Kubernetes 中解耦,Service Mesh 内部的流量无需 kube-proxy 组件的支持,通过为更接近微服务应用层的抽象,管理服务间的流量、安全性和可观察性。
diff --git a/assets/linkerd-envoy.png b/assets/linkerd-envoy.png new file mode 100644 index 0000000000000000000000000000000000000000..42ec0dae99ee4afc59a4cba7f3dda238e4f0de06 GIT binary patch literal 53291 zcmeEtRZyH?@MX{d1Hs)TxVsbF-Q7cQhr!(g1b24{?(PJ4cMIE{IQ%?1yj{n}sy=eY`M#iz4^`h_>! z_sHHYJ5Ib$A^&%O2Dv`KZ`yI5DG|NdM*Mr!Ak`-L_!bbHe)HeccfmmaMN$0u@Xrs5 z6a4?L{{;R2y|8$PUaT4ih3;&TP6ae&(rc%yT8AHpQbv_MaMIHI98ER(b42y2mLo)3 z!j46=G+6Aom-9_eTy1vuo(sQ3-BbS$ZvH%{wSNO9eIqOL%*F|~#lU)OM^4SirpNlJ0dkR?qS;xqP;k{cAOxvz)>R_05p9WFw z!0v^+pk4~6jjMB|&3!Afv1LP)6xlgopp>JDZAZO#BQcClz;+{#5uQArTzfV!+cA9y z)`l448+yn?J>(HF?LmhKD!sQEeGB|7#24^z9!)gD9su>59AU&{;SDKZTGLG7;Gu=llt zYUkck<}QW#;3#R);-?el@C|`}DQU7L8!o|I{OtvrapB2#L9HT!mRLD6V;ayb3L*OyUrWv;*XR~XZ6kx@@`rBj;HQ{N0%}M%iZF&0 zM+~|_7DGyF;l_Sy0_c$5ONhR6VCA1f{O9QYSyz+m0kTbb319#RDxL}b+oCr@0U$t; z^OW<-T=6riEd}$b#Z6)XnjBYf=>$o3n-;WmS+H3z7oNcXxp^>6z8-jG12DSYEZjl> z#b;f3sjr!0-SMO@iUg${D{BTz7s8a8_HeQuvDsrb25U;3cu_t?-h&?KppC-e>v{!E_~5G3*A9+pCji==HGl4CtYdTq9XjFOGqQLFK8Db9`(61f1+PXP!Tl^d zr2g{^q0{?ng?`ms=@PR&CcIDkcOw5#e5Od-GqICs1CdLMpiwT{6*o-uqH2$$JeyQK zp%F?_2JSA{*Peh}lo$K50NBR2C>g-BrX^5@+(z!#Y%2=up;G3ehC=3mBRR`JexUn@ z6jxXa(qbA5F%LU}Bk%8~03yITZ}7{dUh%mLg$Db}2e@@k|C;{&Nl!+EI!1FBw_^iM`l& z?EWlrOwFb>#|W1gQAs=wS$tyWX2g#;Tud$kX?SSuj^GKnJyS0HgulPCF-ULO*|7YF zKpSD~eYiB7kKaX;E5iDA+BMHRu1-Tc0YWdOL<7gpRH3LMnp4JKQBKA!SBc*jex5#b z+u@_mZ2?t~DY+U+-*Px3E{~)ab0@^a)N$+hFdD}v4F3VfQ^MVfud2=>CzM*aciysC z135gmQ7+qHdJETq23e1TRQ<=}s`@?2`)zOWDwbcNF!r}a7li)vERi$IXB{51^IamJ zZNqp^AoQ)kfMAA_v3~xLem35?wcmf(vfggNx%6YliKd>AGI6bXD7wPyzzl5eDn%j# zKA2M7%#jPe9b0kZu_qeD60MUxY+u8pu}Wh7Yzh6K%ta%))dckqZXW}mTyaaeCo$q9 zmThwtTZpiNl%tkcU}8tzxmWlq)Z6rz1N_a!6&pW81tW30Jfl+caRoq(#6$gGYVQTrQCEs>;= zEHGT1(u2U-yw6>iT2CoRDvFLmqG#byNx^m|T)rEd;2->wzHI*-vi>sT$ExCm7qy*I zbh2bqdVZG(>})`6W;hcZYO5_bYa*#Z8z_}a%s9gs5MF{qF)15>wDx96MJ%ee--~o$ z!j&V|5$_<{7Crx%eKbR(Ad=KQtc~Ho*~t1IN*lRsD+W|<(Rp*=kJKIMI1X4yRfx-N z(ky<>@g;(dC>?AlHMEQt_EZMzd^g)8?;UAVeo^J5@QUj5Dq_mYh}*&V_qLsWV~bF# z4(LZ6(epTUp6?nc!orR;XpV498yPdc!o9@XI_r_CN<3 zt^KNL*pl{w9w?=UBO%}{SNhSR#4Cj!oCR4uUhl$8)qq)eQ}vyr9;v*>+^$C@xRFg= zldkarOBia1KkR?1}g-Ms|;3K)Z5R7amL!_0!!9DMt_Jve| zJ(%IdpjsaV zPh`DGHu?O&+-X=Y{!BEo`n( zG~2UUj@&n|w{l9Qp(*A0nVLgK=xtHhMwW6BTz)Gv9@f}~I~h(mV3=PIRG?@6i*CD^ zb|W%{tZDKT%|yj)NGmGYaWoCMrfa-Dd~>-f$)M$*6lIqN;2c51rDdEe%Wl&0Z?QF2 z;1&o?@Y$UP7pn~Aki7TamFMkq=`UZ#in`m>Ik-xlESU7D?`RoZMi6%6(TXz5J;?a5 z8-2bOqs%MTOdQH7t3=Hq@&#Etik>>I+THdA@6#aPe>s37o7=K9q%hI9F0X(hmL`z^ zw+56;rLw}9N+am$lAS&mL%%|)!q9MpHLwD$Vm>F7bDm9I;8Lv5|9w?l0I+ch&e-&0 z+{RHPGG(T7sw5MtEhbAZgqUp@>}&nzE$Q9qhEJ%VnFtfA(Y)oeYoLf`hE6Yr`7~J< zzZj-y+kK1FK6I|3Hh5igWR->NNh2KS?HZ9fciQ1zbh-}F50Gq^<9`FZpw-}}aSSVj z#T$o6Vh)Wm@vQXc#J5Gx2VW5YfN5Bw3XnFu#TbQu_t8D7dp4D_Sr{Ew3O8S zcJ$(&KZ*@HE-`gJj|$55{`6gyKst zM674hen(p9GR|=GntNXbmwZYcZMl-7uS|*W@OcIo2Wgw5a&jBl+YGJ@RmwjJYfJEd zcb0OxraR@r%M$vN1}==jTyLfe;n|!S-6XMlxMO~d^3zB#TQ3n>1kM$8cl z5Eb+M3l;%1yJ;nqBcU??IWc)9@l8UA6C*Au{NS-*TAfChDt6y98ajj1L$LzcNZ|pa zwvvvXW!RQ9gd+a!_>}P@i|bz%iB1_9f}JBl_GcUzhN+Bl!^;s9(x{>8s+d)RN#T~d zV<)R;@8g?^e-elPib59^%?d{BzT0J?6^Ao(j?6`T9%Tl8XsT`Aq<7Aym{((^3m~V0 zp->E+yD~oaDT0R5{aM78eYJlB4(8rZ%DPzJeWqIG08U%uCtpZ!bMxOr=uN(PQd|v>#y~B6kw+X7 z#urvwwv#6xBUIKpMq4XujaXtbaGB=k=TDAYhdrgJ413h-{6@L;r{JsxgWIU$DmJox zY9_sx?4L?F(EfTg4y!_oV7O#rD#HbzfL~6arFL#Z*j3v2MSr#j!@Q;@eqrsK_9D%B zkZqR8Z6VD;n+~{gz_4r0J6;qa$sacSkm8#LdB{g1L1Jp%kHV$Go69?r|Jv3Jhro`n zZEzSyh|5Y0;%&xJ>=+C%B&WmBJZLvuM@>RImS_Xw{sMT&g<+!NjmTlTvJVO=Q=XF?5soWa^>Z&q#=3iB zaBuS-^4~Kp(;&AEjuhywy~KR?Ajh zp6O9se*HyoWrShwbIq8`w_L_qR=>A+DRJi3<%@cLRMgodXxbrcYD(?54C1u8v1jbR zv9AE{;F|8>Yt_Iog`{C2zRa{bU(*GNj%DF1jg&A^q=l6NLUuYNHdUHQZ+b-4ERm`j zoTL#K_tq}74mbFOWBOb^#-zC|kJ>$wklvX8iG17v#!CF6NCZ8UqH{eitZA>LN=b0~ zQ9d2t8UeDsV>H5^8amIJ#@uJ#QW&QaA5O2}nyF(aDv47IQ(e725;;@q_*pS7J_t0oI70#AQg#pj%I~prF2l!CBm5J6~#{G5cL*3p6pWlJE~ zpUTL3BI8d|2p?Q3r=dFg{>1J{adXo}y~<$i0+D)GkZX0xrG`5`tdzc*M;u_t>neu6k2l3?_$cJJ6msMrD@PBxcJF~F}dKIYm^&3%f=qU$P*F<=h^%w)#ta~Eb zhfBK&jKRoDd)G=4DUjban&d2M4>ZUmoww`Pv>;)&UmJdxO2^6z?&Ox=TUpc6CtEJw zK2!Y-eH1u7jQ*HBQ!k1gwK~-k(FavrhP+2RZq`F*Mvjst_Vc&N^VEj4#=37gq4dII zu1u8a-tcbpZ_s|C=R&H>lC^sh(8u`eYtFcG2Ap_=e`Vx_G8o0dAb5gQI*aO-uY)}>!!RKv;=p&KL-hni^$ z=$*1CdE|9DQ#H-W?-lI$D}956 zIj|uWxdHVm%_!$QwAbK!gH3I@lr1kBTyMP?LG;mon2XvP=Y$>2ppB7VedMdedKPM+ zM=o_bosd@_)Ma6I`8~`Q=d3$pdl~vuCjA{Qlt9Sel&I7t`)x5TkT(T9^Lkj1^+ZlY zJ>=|;mIa%9b|!5Y$a+{`ypb51n^L4<9yMZ0HCtnMMcjaD{>pF(QpgXdkRXZA{)bn0 z)6s8|HD#K^ecNy<>{7O;+Z9LRwo z)q+EIp|amD;(<`D8%aRJakT zsMS56%SH3?Rhi39?s4Qi8sJD_LRL=`B-L*D2P$h1P6u@>^r>YJ9u?gu^j@O;iy!%B zzFFNK*Qt>t-8G2d8^u$9uZL<|pBsPj^dL!+(zHYw!yoWeyW6tRgiEmG99B|l)zWAV zrXY(u`Uw($^X-A;aM7(yidd8fK(hO~k>6%dP7U~cL!GTVMe@q_pAueQtbTPLAB|WM zA5(8(ivdU~+S#PFntY#$oA9A@EX8(mW({FE=f2;g+r>@$j#^)aYB_vL>FmoPFGU-W z%h+(aCQ@vmhF2g{$$dJe+?D6rcF%GyMZg5rNr?t~#7fwGJKm6gv4`PoH!9xE(fVN& z+mIAbjIx!#zEp>6(otXAh#U6IKtA6vS!z-vZ%Qan3GsP90awLG_7st&MJwlsodxz5 zGG2G1|ERb3G9LG}_ZfOFMAj{ew)py!Tm4g z&bbHtKl`!Cj$~(_gp#)I|2r<_mxpSH?}AOFsrDid5!l2sLG&*-GdpKPB9!@{oJ|Rw z5nGZ#6Yrh zS6x`DTePLcsZnQhW_HuY4-4p7n1{={jNdKwpp`)Gd(`$~A1G#MY4eTY=g`FWvqjMS z)u1%6&SE58fTyW@T8_WXY3O+-_24+{*i-+t+T#EgwvZHLc_3L-4Dib8*xsWbx=|f8 zBCsyyAb8b4A-i(yyz%@^(mV%GY~v3q1|n-QK$Bn^JhOP zd1Pwo^euw~+eq;(yPnuS%Kf6FYlopI?f;|Yk(#;(F56nAd*1X~9y!D-R=B+v*M%$> zI8d@)e#a=P^B^ zXd9|wO}e)ed@ibuxpcJZ?2oPMHMZPzegx;&Lb^C7In^GyH&Vm3_p&8HwI$zdN2Y>t zTP;P>*~kbjoW;RHcYpthh*?!5i)#s=%#|t# zX{e{5BqcCxxJPW1*U=dXRUYted4dC%ML%)-we~eMtTFqvfci+&9m=Sd<{=v1?U6(+*&N6L(Lja`g1zFlAzML?KH~E@kBJ&gG)n6c26XG z>L+?qJ}9#m0j zWip*)vwU%H9ITMzqgK=T@n@MWC9F2`v2{MXcAOQYf4Oa)Zy8e!6ZHL@ZkImJ1Pii9 zlQOlrL%`G5neoW@G1WU@MZVuKe{9PieSe@*X;dhHSaq^Pb1s5WAZdsY29aoJ>|?R`ilN4lAl&_T!;GQsbStkp^g^6keZ z^C=kE<0h}Yx|N-U4#-*(QgqO`*6vBimHi3;kyvADx16`F?dxF#Eix|IaoVBT}7b60vl7dAa|({LbN{C-K3ukGim=O?&V z3%ZYZwq#%w^eFD-LoQ+mY9qLnk7f4@n^LKe>e?t9Hdgyu>+D!GqM>LUi3r^uo6oCh zY^Gc)YDyV5W;(~`She!Bnk!kqIarhUkEwDRQ5)i0tS+I24$BgJL+E+E&1q_UQtC8& zn^^uP*hSNyv?Kk8t87Am%kjwJa62g^*5{Dd1SX`A`PgGmjf~%ZZT* zA=p(J4=>#%jgjsrYt~^8k8+W#oZ@on>M-u-KdiL9p!;R~jEt2`t(ul!H>*>j{SfYo z;uqS5`d#i@2vFmB)fHs=5d2{Zew6^AHTav3y(SuRQ)8?MFFayHtDchJWgs(5C4j_z zTxUp1k{4{RjA|u)axU<3nX}O%TXM6gl%duNDBh^(Nu884+L^~PRBL0>TS6PeFVB3I z=-HUnuYV-G=vc5%ZWUxwmP>?&~#tI&*$S|yLqm=K+3urH4fU>KW0(hf{A+##AYxwj(BspG zf^&<5=#FkC8Nj_#Q*Cokz~!uAGggni?{$$bTIi||rjuW`*X=kvKmJ`T1E5I~>Eg)p z!Eq@8Y$qiZi&ni5#Mo)YipOg+DEb{JD2n&iLYA>0VM*lLEBRuOi(E;Z*>m8T>J>dD z(YLRJWMhF^lfVI;ZVb+8Az9ar<{LMyAE~o*qes2sWehC|$b@nV!CCpQ_+zT&Dn&*X z%CWmkcadgg+g0M-Q0Y6`o8&M}qDZ=`&J;MxrHW3>0SPGz^T~6{BeahPxX9;OCTuI8 ziUoikI#3S!%cL>bugTmK|G83!>cxD zz$?0GR3)2=c8`3SYN)Y?prMwn$#obP3>w%IP3!x6C@3W0O7_;Q1b_Di8dJ555xBW3 zL^_E#!XhVX(N2ACT2+e~5GQ#{e1cn%tm*z;5|lbSRRAc_rPC;oHj1F=-@h~ArC!}B zXk1?=3C#9I8FVolqe&kTT@IEsO#93={yPkl4MIwO}Pzt-c(nL_8j|K{PH0vEj15 zKKb4lA5MfZY-dKNqe)pKS6rogW!ftW{8+lpxsATA{K*ZcA+|KSZ5rE;9&%PsHv6G zq6JOmHd0p3csoRW56=vZCyY(Ndf6 zl~0WgLn_mH1K4tcsVr)U@I68AAO!p<~H;vYDUiL%4K-M7_A% zXu+vIadsHHfb=|4T&$C`i18@K>jyVA<SjESYDUWz^%)an#2gmEZf_Y-{3vYci2YhZ85_q>sd@p-d;SkzN{;8qN~g zksg1_ujG|v%ZOa-n1>8yVSPGmwiqvc4c$*yA9}NvOS>9)qHgt_RqyFI)?VLurtNg` zwVx_o04ZoR5S(&(F2DxMlsQ!~Ryjz6!Z;@sCAVFY3Ol+r9)Oy`Wv8XI0sg6!?&n2ctg70?7gS7&Lo)I)u}J_4_TM1&w&^pkmOEOtTD6Q0{=A5p5Lr zOPiK7l@WdI0@m}QQ^|ClZkXJ>lZ}!UMnF#Cj-RD?1@H^Ajm^5)h7c2?tJMzCyh-$e3QPHzcFtDiJT0H)qeZ;;?|*0#{6Ps^euBOlgRP6h2vC$g;H1^ z2cKTv2uB@I1ls`)@uIW9meDOm3soPX=S!yCtptf}aqV~7i*)$2Ve5$i4D}Tz6!ikedT+G>uC(tji~dLG#6X@7=0=c|TRe(y+M3#oRUICk}+1SvhlI07BA)n0Vq{w13R=Wl@3 z^KP=;cgtex60=;Iklu}qUjL+yAFC`+W~neic#$Y)OI_y)ThsHie)#%O2J@kjv5paf>{8< z&j;sdY)m?~lf|=mFNG!exsWV2b(jU~i^Yd;ibwV9Pj)C?mu?}b6L9xG*sq4_U8DvE zA=^4M{$M7qe`s-S;7`%(8UdHPT`%Zv4%M617Cx;2-rs>0iN=Iw1p!FXLc;-%Ruobn zZy+=?G#T`}22ad<@Ie;f;;7oUwAtb?deQj?pa;8W6KXh=---9+LxkMd9Ji^sXqHjX#b{wMgtq8eI`hWZgH~cgqQbb`3bd8(RF#J zUSM<}Et+0XMuWN~@G{mZ2rp_NoTH=n#;4q52g`YXb-jAr^qrP~Mi&CraSMnVXg}@j z&2PzrLc*-kpbeivv1J7P+@k1{?qv)@#-YC1_KK;;l+MQ2%82_9)?*pTZ;c7B6&Xgm zK5z@~jeDH!_b4|l-MAdZ30i$2rkhFi;){Kz!@bf=ui0j-PxQ}x4lX`;_o3u8PUB4e z`7>r_Z;lY&8umz2f+gQ<)!-j_cY3B7Z;4yXUMu}7%)i^c3#8S{Hkq9gw3;1OyJ>*> zMt3jIYaClIl`rR-5-<}WEk(4E-5(n3w3>n|V9=(NIwju)a*cl-SoB)xqO7z}&7IV6 zN^DF17Fa0QX{lc`1`*ry3zV{0(eHN|QFBMG zvK5zlt6*|w)}aT5WGjVAr_^7ZL}2=g>LhLrUOQpAXeSnB$1KcQ0e?ENAaYiy7dHCS z{w@}wI`k8TMB9FbA+}Q~{sd2Qc*}!B@o_w(<@ZUL z2RdXg;WcXUkiUr@%V=auLrAxxDyUTwW8Z{XOBpbQb<3Lev@zJTMn$@BjIW?xMmFTT zBs(faO|~PNTNzc6+U)N~&0>ei)M&rSG@SN~k;%R6x9baM5xP!*k9wXNpDd&KUcKO` zEt7mC-_%dfzgodMKiNNIz}Hg(Ak|HP;H+j-fG1pzU(rh-UMrHF0?)45Ua{R|b&0j(KOpl@{{} z*gj4OSRYvq7fXL&gTK~$g|8H->hrce!_jC8fqUMypeNtx#Bvn(3?~)H6gQPz%QjYU zDb)-E$PV-kk_u+B7?DmJIhvTwe(W`=*_>^VPQIE{x@%v$*QtcPKgkQz&+RA;0yG79 z27Dq7XSUnF4FucS+m^}yrpoBDqVP?16V%TH4OTD{I~UxTRAui>*;A3erSRiJ^*oO9 zopoNA$B?6&sw~bv%>4*~J+f<9ihOtx4l?#+z0_a`1^O2Zk^V$KoRizJJY?UDC)%E2 zjiGmy&IyB`t5kls8x)gBAQ$Yil>R)?V9TrcBV70A?RL&Tc?;C+Lf^BNcs(mUu3vA* zK2J{A*L-Dj{%k&89F!wFQZoQynt0Y0I7Lp(Mm5-<6q3vX~9Tl>=j~noms`$>9l%O4tt|Dy_hrkUneiqi%_lzM8 znZ9kh^(24Za-h^4i50QruR7BJQ^TvzI^dRUcTQrZ>j95baJ^OQ~Y5(V#t9frI9 zIaTWRG!63{om}bq^9F$7&4s?@Gs|h#t2~y&c&81I7bB zB(JsfY!y^`LJACW;~jWS14R{c+;}WTvMPB)u_GneczYg?DS2^`?JXnkqSZ&yWi+l5i?5qgc8%Ps*>pJ78viLl|{6#UjQVBwHvg{kwf=hCKEtJy9`#n zRMs|<)uhXNx~|#5#A+;`cW{@=g9*Loyc@0>gSgV>WD-w#&sHnK<3i>ifgH1}J8OgU zHICuY*UN;z4NlVpavIvqf1QWqNVKF!E-`rZbc8%-1`Jyldy)(M{4UGd|7Wt25aWWk z{S(8k*-kX}5QGQ{0d-h^@*RzTxqHQ`h>Zdl^zB_Cjyd)7g^DJeX_`4Q+3iaq|5AlX zFO@`;`N*SNkH}VT^8o3Roxe%uuo8W88Iv$79T&*#vU*_Yc@T3A-dQ@rB43_1vx**c zWT~!gR^&y~_y3ptIh_%6PykCp%PYU5xeInrM(d*$OV zIof!WqXc}5lO-n{{;FU&zRDgAHxLb!mUdk^(^(& zmqO1Wi8Gzfjh?U3^a@XWD_@a6R(tDR6kZBLj8-McnF_@kA zY+vddt!8~g@V%ZUXi>j;y?h;ppkyewr`}@4e)OILQ`;uxhvuurmajBJ{o;CtEt@F! z;sA#F-X?LycYoD6hC=T3G3b0n?(UWRj~$AW2CV83%G8VAzpmIpJfwQvjw&ZxRmBQ; zw&=Z3;4y8}rQvY%cek)4(d2@(9+6AC4DI|{oP9lQlTcYKR4te^j6qilHC15Mz%yAS z*=N4;05L$)R?<8=K*Rs8uth2DrsqsRc&v9*}IPn1Ilb z|As>5?hWD9S}lM&AgN1-LRxz<Zu%3PH zm3JOJ=^KCh@zy5#RMmhSoAE{rX>(CmA&exBmfmL)ch^{S(m*i9hcm4uc6}2t) z*7BIsty-4}{1AC674=Yc5f7T*)pdL1gYo811BTgFgF4oV^<5I{@izcF1wpA5PR{o6 z1(Ua474qUO^<&1?04maTgPE=3YDnAC%BH!79}W4PooC=@!_kH*wu7}kv^=;xxM_Vw z_n-gtD=%t%%Pe_f9xc;p!J@UX{Tuwrqi+W1G3$q8zli_vP2=Ia&kOXHn6b&KL-#^C z&6hmI45^lg^FQh>fv4C@lW2%5>`*g15sWIF6D}=)`q5|S zSHmHu?a@OsEQEGct{h`c*1zf5RH?P+1De{VHSD*>=1b^XCJ;dOsVkGB z8RI^NENQUYvs_I}+0-TAeR4V}-ZW{uZEA;*d$)%j%)CON4!5vfW%=7gNP^NS8gyK8 zd#K!XA~(K|7u#lt+`m*9ynvcTRw3;WN(%fY4Z+7%56%36R*yyPSUDpD!>9WbP{{7w`&pfy*du_SYQ%k6)Q3So#*q{HC%U zJ2w|)d#edlL?_{DTm?!bYw%5?1bUS9*bm-9-n|fxwMF40fNmpnK!J>mRCg%m#{LnM zi@;mVDPza?PE#TM>EJflEB3$~A~22yB>{`enAN-y12JOck zck;W1z#NI!DOaO829tAMj+Z_6_@tKfyigF@DKUNGDa4iUd;hf~N&X2VWdUx{CZpF+ z#N}06ptii^;epi<>ov;}szlzH4(3@1Ko)SX-(4r3C{31P)c4K3Q9Wn$aX&{TkMD~U~9QCEv0#+7T5 z>xeq-;`qq;4!$++xUl6C;r#WxkyiX+KI-V+CS;-?rr8t~&D-ydq^+BA=}F6vwq*zK zPu38oZ%ZPT=hZ>a7f0`JNMI|yPhNx(e=dA<&~CRif@$73pm)WV%JlhP%_}3TTQY zOc^OeCdzo&PCHKMbN=f2%#>3PPwtJ3YkMcls+n?kK{YP5&Sog%vy<0l{;UGgY=F2e z&P5A!0CTES{sJD7L6$GNiyU=Q(G_}u0OF65PYXH)rUHy_Cn#MlQwP2YtPSxUS$_F`+Ip)G}t ztDAk5yBM=m6H{tq6--@f>749|NVOotT7JONyi0U^0g}oc=qgJ!?ej{iL<4s8!>WV- zE->(lH}R-qtEON)55RWpju|^mE=VukgoN1ear?25W-+fEC2QbcyLSYE$< z;IwhexhnJ}z}|adfp>7jKW$?~1AsQ}uwQvaokw$n0{ul4wL6cgf~uBySz?ByY5KRB z^rdPx$t2F-9r43!sL3Mm!$5n;U8{gCscgOCYf39Dh`V2&c1L=gPl9n+-P5_!=Fpgr z3ny5=)hfVu>NG_dMrA!}yiuauf%pTc1A1qv#rN(0yOii} zz>Z8?>|x!<=P#2upc!&lV8By)1UcdC5*5kPJg_E&Iy2;+kl2e4G%6@l5(k4X@A-*KFan+mLf#q$F*SU0_9tf6@Mp?A zxt?@$>t1)=QoAUFq2@iv*I?g<@T~l(E^2SM_K4z*jjt6LgFZ5xu3z1!C47mS;t}Y2^b-n&o{gExORDEnDXOk7lSUo-3;6v9 z0(Y3^Paebm`Ur9^sip)nT}%FboeZM0T>DuGfG|+cjzVLtL4%wsujT0Ue3AWrJhbzN z9~Xm-Q>t@e=7F}_Nq`ueU8N0^MG!Qu*-JR=J>5wbF-DYpE@9QRe|~uo8ON>x+Q^O6 zfPJ)AEQ%9R&rc6Bu}U@~yLZ#JHzLVOR)CzY4akcKRNU~HVwa6A*4Y;Mqa_WuXlXdFD1P}2SqVAw%R(9yNx>z%Qb8Ym)JOwIbgfo| z-b}R69Qhe0w7Q?|%^26L_EvdBm!KUsEje6QJe2hZ6EF8fI$E?e{U*`$tW5_XUYOM$ICe$1;(F&}~D|oE0RW;X? zis3)2K4=|8f-yXX@%6Q===nY0P>1+PQas`Gz@=fU%3ncgd!Xt=KF$CHD{_DXn5e!g@4wz3zFo=F6u>8~9k!JT{?ve||o z7^<=9EdX7Lghn(#97Zao!n>V1%N^O^?1pCoeVFMx-&Dho>}|qW&^43KX+#Jb`V2C4 z5^aQ5fD^B?ZmcP9*k|Xz{747Qu51WSHxGvn8-bED)-P}lxrvkQLrm?&?Q@O^+AgoF zevK6vMULy2mG-2JVd3r4k>YSlzXm~sv{AZ@NH(~5m_fWK-?DHmZw@e51C;~NSVoA6 zcoEvA7cwkxcp>H+!&SK*5XIRYA>1q-)S)dPgc6R^-B$!-7%DTdKI{8TEQ9mj_I>U# z+;kEDKqCpF!thEz-+8l6bA120k^3hHp-h+lTNX?8@yv%L?z+%s7dF(|%nc%J+}CUW z>MTUcO|r1=kEEApadI^iK83UoAy!O8T`qG^ zxaO<`n&FVmwm&a9nkisrO_EL}+ui5Bog$o9GmIDDv-4=>ZxH@ZQ}^Ibf_Kuh!lw?h z_B*Gk1pc&`lC+R?Zn;a&stHl5wY%T}AbC;QWidnRcL!*$iW>Yf_=y?yw^rIbX{_{u z?9vmS<;M;VliIi4ZO0MV;j5X4;?sUi8)hKt9h9yqh;+Et;!7-3UQZF#aj@qcz(Q zwu!rO%N5hkf0xDVo=t=Sn-?Glp7}C|-mo;Gu;5dx0ASXA={DC~GfVab#C?+e`coW= z_ecokD=+D(u`Kow2cb?>d7x1IZvtL9#Jc0&@Qy(gIY1!TgooPyX7bIKjAT0VS7QOz36m&drcUGQSMs;Fw6f`f

{@LPu@Wt*L63O_e7#he?>_6|+ot*d_kI?4>awqL4ig8@=WK%Mu2#I=0+-J|c z2@wbNT5;w(R{p0ka9K2O_FbcRlJqck=hhfrOJcom9pAlDnJ*1J|K?^B7|vI%WRaHI zDue_>QHe(qxTFn$$mA~w&dY;Of*r0Tn}@n5l}YQIYoOjp;x%H?5bDL=z9G}g-3Ixo zw`LUs#312nRGj>Y$Rte&QadGDf!S3ytt}xdu3RfkB0T~@qOWDmv2D07s#}N>5}OD% z94zN8nr%UBB(XPegSPH5k}}0jtizW9-bm9?9uC-b21tH8a44yZIa%w3A?&;du#c}E zO=aVwQ}ESEkc5%hs_-jh>eC#0Gl7W1#!PNIK-?&#-oTcqM(K)aP!z0a`A9b_vjyG8%{e}?2CTylwOYg;qK3XPENNF7yhx` zjJ=GJ3bW()8pXUslpr<`<+?PMTM|0+@4W?2oi2ULsIR!S@Mw9dc|Qy+f~JJ`$l(OH zg~#TS%OZ_enmnZ2`UUrM68#`8B5-fn*?%#xjZnx}pBQ;8-jrNhUwBCM4@lN9nwarO8aJJ$PAyQ~^!)LW zJBYTO#1CNd=VAwas8%RnG=ait<0aoyapEbpu}NT>R9@1dMtsd?d$f6&KZ&kyp=o}m zluYZHa%f*aWP1j0nN|Z$&PpL&JoaJbZV2?1tQpE-D#k`pi)qr^_mL z{x+lZ!Ikt3%-*d0g%Z2VYnVrEUmiODGe`~n9{K>(z~=fMX%jAyUY1}|wf0NA_ILS@ zW7x8zE#*P26nvd_!ss=617$q`p&lDnN4mgFb8Po;DM@!<@sN)(CWEKFvyov9I{F~J zq1T+=5H`5tV8+mT*!f>P=M4r0or7)*{?7@e00%T}7KQq}ymfIMT&O85Anuu@jyNUR zD-)EOjOzi&t&@R$#su~7opKMW=#3;5sDo0~8yI$Yipx`uE(3yrJq)4i*&L0#oCO_< z`^bhCYI$CId$n-7NovlsaQrWtE3p}uv3{x#eWvuwtuo+`$Sd>pPRU#@0>{G@NQBDR)a4)t&flgIE+J4y!(35@zws51Vx`gg!q|J2wV zbMK&Blly2~&_u-b(pY?^ z*T(F&62aIgcaL!u`9pSw54>OAQS^D$f_}*U7Ed_h%hytTTmY<2coGkxU1j&lbz7_1E)LHkoAn!rNaSzX3lCD$tz`(Z_FtLRHooSl5(pVJ zdML9z+n$G9(BacyY{Xf)oEtEx9*0YC({T>dwBU319CQSvV}cp~CDyOTd@Al$;hJiv zJ^J=7T{Yn^lTeYjbG@y!kj~8OC38plhQ2^-svyrH3KOtce!#M*;gM@ zI}rfxnF+VNRfK{WnaA>%eJGf^ZBk^;r>nXzj&h_8rU1G7`=yKvjZq6`$p?%Lx zm?Y-zBOC8gjrH3tNxXVE@&6zVkoj67RQJ9P-&+i@-_t)0R)#uE=CRTWeTxYpxdAC! z+#gsup4mP7&bXQ|j~t_L)I`s(q&jj5K#z?D+hI9VrGB5XeXjZRtvrW9`sk9Vyke3!bZ)10 zVLp=Oir@oXXd{$<=&P#|m{0Mw{B62Ay_)$r%z^U_Phg>O=hXyvYbO8x`aH^wM=%(= z*`)(c#%97sSVow6Yf)G9_pLF{L!Y3!tGtMoS=}2xln}q0wWJA)JyCn%WGIP@2?w06 z?mE+=1`RuAA>T$hB4Y=rDng7ptgoMb{jgClIG>fPoYW+T&RD>8vX}n=kXo!4Q{LXk zRw2p&u(@=_#boE@iFTDfl=B5sfd(5CMFIt-ntwx%#3MSZU>vg&rzgLh2w~X45kRHUHdC&+Wlx@B>9Mw~xe0@>Wva|@1ju#T~ z9w~BES{hRkU3M!w3YY{la|lM{ZcX$Bl8LACj4z7Zc@bWCBmrIxUxT~1+#+(7{Y)_})vcIv1tPA{1OS{BcKqXl-k#5=Rt zPg~dLUtT&d!zyIV0dFhc!0@nX!y)%j4- z^|blPd*Gh{427);2sLUnTiG+eVZcoXl!b(e{(k6B@;`99gI6}JxqcXPR9v7r$%NCf zKc&;Z?;&*1TH|phBA{hIrhTBTrLUF9iLx)3tL)bG8qdqOT^=@T=O}b)s%0jJh+-p* zE-kJ)@tD#N5*;AokC`4}2jK^W!Oqvvpnwzjl%dX``An8qXHeRxn+Tv{ko4*wZ&bD4 zv{sU{6rnnG1etI_*Eii_lwMMN^nM4My%e;xY*H$UFU(YVV6&aVwyrQEsf?%PtJv2Fr;-v#3>Or=}YRm^uo|d5HVyo zV7k)WP?BfkkN$+zbT!&6_V+NpCvec|Z8tSQzk)=A&)Am1)2xu<%b{$uog#D(LszzM zj8bzMm60q^7FOX06~56>!i)kn6}Oq4YBy{f8Pn6$-HLmtco6h zfdZF;yv~k}*iZ(~aVsy&ptEJ}kMXap-W1daXx*4#WR96L1ofb1AXC2Dc=UWwJNPUH z{ueQ*wa=CG<&Z0EZZy2arEYygq~@dW0N*d^2WmX1GyBP+Za>8Mj6ejiJBn>5-<7|S zUwjQT9jIy@u;@B=-kY(H^&756+Hc7nnJJdIYSGw6xs~&rCQSF7h3jO?xBCfWK#O?0 zqBJ*{bXVy|q%-I5_ihC5w9hrVfTHtv0c>`X?)MX6vh`3YjC5{@R&X-!$vi50h>kp< zOm&3j#CFh)=IUxr!EQZtN?A{q!2F@1lDT5ojMU1Q=s2_{rdgR~tjfL}v5qBZ*+lbU z;Rfqh(T6h@b~^{N50UxDhXTJ83Zwwn5g%Mj8k0Vmtm8**P)1gHO@HOc+fy=r;WpFS z#XhtDNs(7Y6n%Y&q(E>b@7U51l;eG}Z0VaBHE7%;F6p(NJEIu-AE7RZs!y-js~5!j zcBlfkOgfGZl%$Tjt}X%IjAnleDgL7QRVl^W@ouPPd*WXU!PT@ZgCXK z*obP&>;74LXN$t1RF9z4Z3j)e%=bZ+LynKXyCui`~!Sr}U z_f4K!7)h<~nLvN!CPlQ?pfc1pgGeB20uTwiD|$ox75DiQ3PPIg0=R8 zrCDB98NFH@Sa6PK?#);mvG-ya(3TJLBz6nst!X=e%h#*66Z{f-64+cmt@CBKs_3UV z3m-*|tt)0BOx|R53h$?eB1;zKAVOh}k-H0dpSm6;@p2A^Xg0b6=UX>!S3Hk6Pc~Ti z_8KSkBmZj;2LHd6w)}LL&LfEtriAy{JbZ7XxyhC1A0;;G9d#VL zB+&qg8gIJ&D0y%R(q!=zW!faLgA<~gG36=2_>wZ*CAhcTtW0sgkl>8*QnCaS&in( zrKxVx!Nt#8zFvOQ{ePw{Bab{oJ@R8Zj756RvG0%jIuxsig1~=1kNm#=Pq9Q00YtE$ zmSjR5kxB9I3-|saw<4(W8BwjSByfaFJYquo2SEG^_KptjG>Ry1W>C;ukq8O800rwe zWu)9ljpC+yh@*w7t9?_K`_kvrHc3uReY%UZ;d;P*m$Gs`MX~|2d)@Odx5!@Vc?O7GfXx4=~8h;3>XgfL2l+Qk$r? zguFt-V`0TdH3JErlt1%^>trIgzD*eQtG|E`)guW8X`t1uIBN&Gn@pzpz^)ff7Z?t6 z-oZYflW-6#c9bV^xgoznB{hq?+(vi$mcv*S1Btl)cB zA5k&qh@%I=4{HAEG?B++U-($>W3FW+dM=&}xpum)3F;HVGZ(J-0<=-%e<*tX2>SbA z|JTJJO; z6c`hKln(*rq4~NuwK#f!*%)TkZFtQJ$~fA8iy?rjn_iZ``w&eKNg(`D@1P43kj4$t zJz8QXS$oRkek9?;@cI$pmt!#(P#h+)H?8kSfAMAv zR1@j~=!}xH#0Cdpb8zi4dL!$<^q#|eos%`f?|3|BFD`NzKci$EIfI_+L5{4?Qy1|2 zceuDgO*Uo+kQyNDWtq zjCrmd5!c<^!oOqV(>(E(Q%Nj1qwKB-1NZZy~%S<eqL+m?Mf|!+6z4~Z z(bihT^2N!+ZUV$0axEvzUx7){`Tsi5po~g?_RrTnlnlf9^pLB!3wot3EvJmZICclP`XuQ>f47=4f+oHb zKu2lhc|x1nzmVYDZM~SC@B>y$>wBtBda_Kkn(KoIJy0+{T@uRfWx*%weVP;Ab2cQK zD@wUs?*I>k9k&jzMHAnwd)mh9s_FV}2(YWLWyc-GF$M%ojX9DWrNwciD-WG~%<_c9 z-!yMUCp4vLV`Z)?_~4_jqZTsd+H_IZXbS)vuw_3zZNJIj~2vGkxyxR z#~^ezd`x56QLZHQp`Gpy(#6^8JbK!j4lNZ6-%g~#cplCq>{pyVy1n9frzB*cHUb_G z-}u#5?Mg)m$05!sGjJ9sM%4m#ZK&wVP`b7$vTjr-_@K1me)TknN|g|>Z@nsJ8z7#! zf~SJYJ@253w~GH`neWu?P;jD7bto#zGsy37Oj8b4U%C8C%P5Z!11bv9;XHblbgiGF zsL=+Hv)pf&NsdU>w2YkAfFeHK4$;j~fw(AtPLY*d50yF*GEPK2?rlnRpaBt^biRkn z^rz(C4c;!zBnoZ@!D^OA^=s2d)1W?7U|t+lE5m0NSFkLnvD?D~7eeA`oRDwjx7;@B zVJ9-!h9m$Ca)+ltc~Xl3Rjdp!NeWx}#*-PbgGxjZV>8W`q!CbaHas_q)lL65_Xxqr zjdas&|_-EQQ2r2jFxiOIs2ow@dbuEB-S|v24jN9Y|Jse9Hd~(qor~)SS z!=lk^fixMaoWlwP+zV31W-Wp+EDhRcqV8!sKzd_sQ(io-T0eH|h@}^}Xl9VyFfB;b zlp<%XI!-3aZ|Y1+Ogm{97J@uFz-2ojKKcF$mRT+j!=7vt{$(XF-4<*pTP|)80x!n< zoEj5UJWe>!&DHKVdvDakI8hmn9Rx!*L!}6rrUBt>6_=RnrC(YPxz&2Re}H7%#}{V; z=mcFeuRrbx*1hQ!EtCst{WBhzi0SGaAohabaojb-1y5k2c`>gr-hNJ8R;@*+rbgqn zI?`~qnGm6zt#POhhi(Ex)0-u5@pin>hS-8Eo9*#Qx<+F7CA9>j{tH?%B+k>fqoA^u zkd(hkDU%()AyXla>MpyC1$2S0{>jSIpK>b^lg7QIH^K?Br-NisBK?+jHA9{jdyBY< zk03{|MVJ5DJ>^`Un}9p#lw;l3i!8i;bS-=8Pp+0okDED_jldnjgynQMgPdaK@KJXe zOZb%C@6xB4q|%x*Ffw(!pP4E6WQ5KJTwZAv1NT^cFP^DZH*Bq|O&s*Yvg1ClJ-5=m z0mC*u-p57bV>Ji7o1P8ZS}QTSv*h=xDrv$-0;`%K6umQ*<5q5g@qGkgdO239?`;LX ztu5pVu+QSE={rkw;NTU_qrDjoHgY64^R|B>^+3Q|;4UTQjr$Ih6FAUA#1DO+%`g|@cOak->((gkCI_WL@5+E#Ywc@<|&DJ$86!o_5@0B!a+2Px-ZJ2J}tqO`Nn+C0dSqU#uHDuMe z^t-|AK!+`M!jY2JO&;DH#jP;Qmx!2begAm_h;XUF$9M|%A{kG%EtFaodK64PtlI00 ztlQf(DmRZE&l&jyZNF_}abtw+WPSE89F_xVEK&hO@Nku3eL^fAdKYQ-xR-5S*Z1hk z@j6A8r$yNRrC11wZgN~e4;93fNW*l8d<0me130Oa8wxYYvjNACc1bt8F@w}>;ujYE z(LHAD66g?TBiEBMVs&T1J&ivMeSI0eig6fr0`Y2p00O@?i^`0%eD+ur7+e;5OoC8~ zUoPZ(Pw&{*$wyB_(h$zRKHSB{0e4yuZn|SdfAjFe#kvRky; zTSyn8+7Vr>EX^ES85-7U``>d`lhvf9@~F~VTSNyNt^K4xzJ|@an<}xZVa&Zy+TgC< z$X?cuD6Z15&!c+;cInEEKUMDoaqaRi_p|Qdy@pgcs(?Z^unKC4b4C#GMNzL+|2+er zgw*e8RH>=>ds!i#r*EBJyJl`Daqub|+jlQ(enF1hTN#UspaPl{(0qsBuo!+9eNuWW zmSQ~5XtJOu_#NVnVq$#_L~tsk-EUEYbMse&fxY|JkU^XSbv6{s?j_cpU-4?5U9M8d z**$mIbO}cXAE$+N?$x(E$evuYu0E3VTodn`?j`XFrECqZ3dZrK0R^1VOhYfEx5cUh zHAlS^-L>gi^F^8+Rz*&3vS=qO26WK9nFMMo7Wr>i6vL+utr*?R0@O&hkq#^$Tm6w3 zLCc~57MZbrgRR-MA>92tX^wpyJ5O#%<#Gre)us)2EBpf)i1;9+y~y_`M$r?sx%#ND ztE5a3`TCDix}VoF=~V26Erd}40xH4Uch%AZ<`{pwyGW#dtC8eKoORE(V1h@K%~Cy=sbi9v5Fc>YbZ@%w`0MrE7J3nI zN@pp|Z3%n@>{1y6s$Vuz(no7W%};Z+spmyj=LV9Z?qV_%M0A9{o^8{nHDI^3R42ZB zYKsM6_LFV4ao32SCHRyYB!*5#YF}nl2@)4B$LqwTDz9LW(8KCqTlsYhg2?M@aACXo zops?ee@`(cnSSUzY}_?5bRrX??4|6Xj94VODy1}S$vo$<5r`5$k&J zLP$JUWg5;#1#&3nSoG6_eF~?}^O!+%!6y|O8WyJQYVWSnK$ z7}z7z<2OZDKJyws3TFQc%k=+n(ag>uTD6d8w`8X`9q1e8;5o-3bD%@&Ye~hOI4=cj zm!>>3XC$^U`wAf5xz;4HZ}M*2Y4V8kpHw%|`Z8fu@i`h+Sq+0eL`TG5Z|#uEBXk}O zuC0J~sq1UB{D(~Fws@jz{ASJQg&N*(bhn|QD|mi8C?*TLM8u*DOC_H>EV2vbe#$v; z-pFY}4BI5w<8Y0+{~|aCpJ^jJi+yglTejj7Fq*p%0IiLPNmS0p^d_pJ!$G4m&o_N+ z{C1EEhvk?IB8Ih1o)jlBk(@ZiY#sl?+OK8n-i?m?NR;zaz}xOIX0~^tnM4*kOS+3Y zXO2phtG?w#*Tz`Z3E>Wc%9_Zh%oOY0xGjV?((LBfd#M1L;gv8g zPOWs~l1KuR5fY?Z$DsMwv{)u{mufHpJNcE74R08=n$Iy?vNH)b`>6`Uj^*B$uPlt& zdHkHmfk71Obo94q%nK-TNLZ1jo$XMm9!diV}Fw7fESNoY_T#Kg%kar&ctQ^#Wm-S-*n^hmzt4sq86RW&$Yif z!DL9cz^m3x+jGY_VHKsjfv(wXDW}{MIIo3mTkw$a-(8_w-Wc!*(S}4x3arAk-`pbU zqiDHCG6EKTwt)vK{Rz(wot44IV$U7vuIZjH@%PpdVyD1ybbBZiT(B3EY9&(&ncL7g z+C|;E1-f2GxLpUM*O`l8$d*YIc^?sYa&lzsnK`P1npI6Z9>-<6dK5kId>BLvN8I@( z{z23@cwH|LvjTHpPJsh($mAhB?&r}06R0JnWb?N3XA5f=EvC%cJsf{~3-n(A3VYLv z91c2E`K^Lv9aoVCbsysqQ3YQq_}3&N9d?b6K+2zPiFBC6 z>!`wy3kb@d&Kpl-n)VsX zKdsET@aWcwD<~Gx84SKe2w9p?1! z#b5FNwJgB!2rRkNl2HB@dvldCj8hUlSbeL*UTc$m9%h;$YhBIQLIc2YRBMX>vKfbM zO0iK%8i%6oa&g+i`Zryx%VD`SBq z@a8|RG2W=LMd|gBBWQmog@0-#hfh*5KL1)lq14|Cnm6Zak$?+-hDOP2XUbQNctNl8 zUj}wqfDnBH%nC*Ybj@CTjZC;NlpT1Yu~TcKgkeFMyvp)JAJJl?3J{I2+CGk_#S>~G zZfl7oBl4MbDASRB7O+%)HvI&hRG(f2ZYM!Mqu|4MXjgzSXd(4BzLo5w33U{&BC&3w z{s10RzWBxwPI@CovbMB0?xQLV+x3<&3AH)TpvrQ$Nyo6Ssodn=H#4br1|!}JIC*ByWl!nsZO}K} zU+9pqJqqv`UE~W>1{U@5%L+Vd=Iv6O7c(>TW*D6&fxVtB?{(sJUyKhJX6_!}WvSZt zi;a3&o#zvFx{a00jHmY3gD#Ip>lC-f7S(0B z@z!&@hhi8~0kGK;up|b-LP5B#QF7R$u}frdy2ESgbxrSDl7E1fDtTJ$4Sm?++rL5q z73Io8sOQS{R^$*d&#~|=xUu-Sz;s~S9NYq~tL|DdVv(2tEtyqNN)PC~vkpC|>hBPs zYhA|)ZOAmCQ#ixxlUMys3fv`bt>%1x=rKB7qybS)NVg5E%2=^gai+F)8P-3c|8^Km z+4bfMEpUX^vv=WrBbE3~pmVUYDPMwvY%ZFXBs#EI;3C4$D8Uq;=^<*?g;{4C>60J| zn@xjsySLbO<~J$d(@M|)U1R302t&V)D$*N}5$m~1?@msEZfi;jlaoR_fAE5#l$_wf zm>|BG$VJZ5q*nfbdJz%wQvTTrTcyp@n^Lr8kc`=_N7KN6rC!pU4KKnCs3}-+`K3|I zN=34}LsdM*MDv#XL0)N9DBUWUx4zV%q-2=al(pEHRsgzPL--_0)?vsYlmFLx#2|Uj z)WHnGUrKxm-p}y883mg?yf}R7Az?Yj7+s#EY}hEu-*jUZhS199j4OwGv1hQ(KR=Qm$t7=}s3kk^K&&bFnk7NL9DfZCZs#%x%? zA^0}BY$P{14uu+YK-oJZ8U^dzC9<$v0&9wt0Huz;wBk>lz^u^Jb&r_#xYmGZIFosX zcf6ZsEGg{`Q0i@_OK*k6{3ZC<@lCZQ+HgC>VGZ{Ar+fEnqkG`*WM#VutpxPX0HKW8 z+}9V+(2jFK&u@!PL{>-)-OAhx~1^6SU6zGS4GJd{H zdbrc*A3h?S4Yt@NE^Ue-86NF}NP2Y8z`z)s7s!%KH%=v981E0Zb%a zo$h2XB}g$I^6E9+Ury=7py+STxzDCS&fgl-UpC&V;YwEY()))L!3OlNmklQ#nhi46 zk_@K%wB$eSr2fy(K9#p~=r;=UE~0s1e%alI%-RR5UDYWX{{XKYOwZ?HSYJeD7owB_ z^-p|>CJ*oH3U0(>#PQfStfLb&Aj~6^w$lOgMz$9lE!cgF8k2`A;>^Q@UKO<;({&E z@33N-`4}>IREh9fgwvF_Z>uxmGt)G2?oA?TK}3^jF>{L7eKQa(7HukdX!GL6?dAl7 zAJ_9`!VGr3u?KCnS~J)>g+*%SA@1j7shDkwiytr+gITT$iPK;>7t|ZIz8I{k|2QLc0lSfuHfb zI{!fDe-B-V!z}`rY1sXa&?5cpT5Lmho8|z*yGYC_M~`}L`d<$ph-b&g99rFX5+J)a zG|2i*6j0R;*ZJG1m+9^c4=?Ak_1CelvrHgQCi&J1RKDYL->WHX0)2 z3Ju=`rwO9r7j*yLxB_+z&2TgdSNT3yxRWY4*7;7RDw9&db&4Y1?h)J`L2UR{R7$_N zjJDEqWBXX&!#}2tQ@movaKlFLX&kzlFFUL2~m)unEs@e1n zby5zH%YnLH>e0&)#EX%@G53Nv$P&8CD|iXb)e{{hU=t*FKJ&A zGSgLU!MEgNfbycr7^lAY_?FRGY}MnF!3GuGA_?(+W*nB2Rcs3AHGM5b_Xxw!!mr#k zeIJSx?r9<`vYVU>G1hJ{^hgt*sCpwG6fw#R!l9@7YaOP>l3j<52;@6!Va4y8_oy#D zFs0|WhYve=kd) zpOI`N{boA?gPZ5>rdq7Rjmg70_^wXOMBbpQ7J-}erjhzVK7rr+{#?Z=y|ZTl>;D)F zX3#9Th5ZlVpw(0ot%yMN3>%mpIvP@6Iaz0--Qy|o{5I7mr4(@_Xb;ScNuzPpE3;h< zo-6;9`R6YS9Pr8StA+^neWvYY|F_~d=P%&& z^beJ+-(GXTV@IvH<58l$gelsi_9bdM^{?L(={tvaV8(uz4G|)3Wt)wY}_d0 zFjlRzHww3hjdKTSP&QI;yow4TYfQD6Q9Qig0Ya6%Ou?PuU|H)=a2F(FXnr^;mTOQ7?XHa z{0D5zj|LlSc|YzOY;!TcuelHgRJGD|yz!Nnb|l&@Hl_Ges0#4Zwv)2PQeZ|I3@fSz z=a*o@z1e!WhjD%{6}f8v zj@cvI3^se=pVDHj$ka_|3S&l%hl^Q&;#ZwZI?JgZo0{LT_9qMa7!m!3ln5OfrEcjIe@~ zW*rX`T$*F6-+?;e>9$6(u2b6PN`G5JTfnK?>+M+Xu9cFT1v->>#Tg&39?VinDO@Uu ziFQwhymz}w3A|(kMo2r(tsA+c)-dN5Z|&i+^#EdrXF5F=P*|whM79)QcF`6^jmd9npKK`jzGWN6mw|WU{)L(ZZ`D}pr(RR zw4QyXZV1&vY{NTKQcqxBQ?awv2&kQ1k|dDeB}d6=-t#5IFxM9YH!mpEJ<8N$E(P9I z@^)5-%3kq-m(claTcrhq&bX?8v8XE-sTbYGi4HWW`BYN#CvKH@>q0qsNoB^rJqU@` zr%w@*oF6NzNbzuQ5+A7k%z`}B>TucYGDh_wT<;T7$*;6QpET)bo{!2bN5X%Pj-g47 zSvGdTogPHl&S9=#po89Ce=yxnAw@_ln|5bqZw$Hu%*OS(N80EGb#^S~yEO}y3r35s zX2YI!?+duyQh(UN2z(aMz?t7#liD@hu}?fB5mepf^mQ9JOkQaKAkaotegm7}shuz4EQS91cF~nOx5||dy zCeYzkSTrevUs@=%o&FJqaay9X@`~3>j%)zjLHFHhxBocMIT{VLYQAm0s8o7*{+;I7aWcny_X2Y+4ifj=uk;neL?^a%)LhBP}We{imf`K9<6`;#wAa zMMV3@!2@M{TTqAgRMfnsyZX6hmUW}-4x-W=xH^9>sB=^+NGR$TBwA~j1-$ck_>-v@ zaX+;gi_is=9*SPH-y0jV;f^zTQ$5-~ENw z(}eqAhYFBNYs2&NP1&TkS*jRu{0Xxv_hWJpC@(^P{(X008p{c_C?(HIgJ{E`T6iwdKK29PslW_ zVQJfRh+N$LytHy`&YW}vpAD0$ltxVregdoGtOP{fa+;;OfSVwcaLW~cc=vqNeA@>D zrOMgu^CO-dhmwlIG}rVi^L>Dhzqv4KA0t^z|Rg42~oq={S0@3eHC=X)@*vD*-4< zH`X7+vzLNDlC6Qs*PY(mM-6x~Dmd~GG?J@evEUAGtHxUt_~7zZFI-CUKm(|=h+ z$}1L0vKM(cdt}P_zEh{z`qArd`;g(!A0vmmkJ z)^m$Z(CY9b;a?cCCT`n>H{9?3JqHf6dDLowJDsRhH0)D+mwwIa8j9(kmoBS+QnjNp zlSXFd4yzFeqwx$CttI9zo>iz*EsCs(@!A?fkqJAs8oyxYp+mO@ZjaU88C8WQ_;H(X zxB;&tM!%1nbCzb1vV>8~1He`PR3h|BspAyZJ)Gf?0WAUP1i0pcR)UGNXrGdn#FyLL+V&-sI!MC z{g2+aJ?WoYtGc}krfy-ib|u z`pqZiKPgVf@B*{~mc%~Q6U4To;rQIZ+o&|U2l2KqVO%5$ZB0b=^{U|LRoqN|?=+ow zk*qI|5Ej_OT#fZ07}^KnTQt6KBHP3-hx77XE8S*<MsFqPAC^sdXY9)khJZw5}Lx>3*Ol)NGTr zpwW~yp^iu}jLgG}(MxwA48CKl4S!J z%!B2cyyTWodIW=Ga&#h#+qrU{JeB`N!wClc=WxwpQ)|?POA|%4OpV{F{ZqH>BVFaR zbtbN=zZ)T04fIFhnzj&qSD&BY5 zNvT18G)@+;fFHOXTyuVzmGU0~jY)67CN8?CE;@%B)o#J%%5&2x&P4T{G$1M5&kLP> zQ5A|2HF3ji54tUrBi=*TaSb3ST6M&{a(eSvtxwj|vo8uzyv2)>nb&Xn;v~9!L2@RT z9>k#<_HJGvM#8Pkwv|KL(dNU-U{ff9dHd)owu-lF3UPBeS|j{!0n`|s$bT4^tDC$28;1n7jH;nPF}^YugeS3H4ZdKQc17cCA81los?Pv`}~|N zpG_3MMNU^M7OcY}Kmq@i`I&uvA>Bt;%EiBPrT1GqopPd6hKleYQl+O#@!%n=iIzab z)wVBLF8TY!*@iU1c^zVF!Y`W+j^B0H6+i!OG$}xcAysc?;RLxE6IQO~eehY55-wf& z*0Gb)E=RA{D4*qtW|i+YlyDwB8|Dt|9!J0a&AAA4!xw1Aorls4OobQ%R7?)V*@o0) zq*GdvI*RU+@fPJL#RN=6c4TYs{yyB&*v-}{8s5>YPOr@6wW&wJ|I_{9@J=I}eKMQY zLJg`cT#0t?GcXoQ4FG18YTz3YDjV?SZ{&fNeLl*#Vl<#`Y?SdVmVIMJD>DoBFJfy^ zfYgS_Xt1gjHaM5K?de$a=S2V0&SzcFrm%dx9buu&)h2gZfSs)zBQyP1LVF>W37O&1 z9RxBE#Re@#8Z{Bgl0nTYgFsu1rE_rU%tQv0gS%Mu%6}O~U>fYSlK$j{c|CWh#Kve^ z&|Kft%TUs9-9$K5iH-vJ-1`D{mpyb0)N)4j(UjsU=bRyDULzcE&2%#;ra!UW;7M@-Gwx3_N?mW+=n53{ z#M4{M`n4@ZZRPNJZ!`*g?DK&+kKN9q?I~lk0~I;Om3fsX-Ih$@Im^-axFes#h)^@! za^4E^+q`!yWu>jwX{dR5!yWT!wcjY5af3a^6PZ-7?L$%9x4n~_;~uhqXC8=m3X{2Q zHpHSqxHj}&+X*9T{;EH37k4OlW%$T2^mtcYFqc2NFClR*R2E z{3?xN4r%J&nvI-*2@WnyKVHc6_*=Oi^3xoPaO$0TeCUa{In7LWw1}Q4{81K{d~k*j z%_fUx0@)RcMhz)LK(nCJE?2IPITkVrkQS+Ov1v0}`|$A{mvqz4H&XH3TYI54Uv8O} z7Om^JKC<<;mYR5r)v=BDq7khydz04U22$w32t%8X?BisTDQ!eAogn!#;E%#c?y7`= zhd>(pRhg+Ra7hX|OBIew#!1f?mH(uaMl#SgNC{`cGVv zI-;P>J;q`=%Pc*Tn+UCQr!Iv+HRyVo;q;_$r*Sqr>jj?V=Zu#_rx7nQ1 zvyrFChbDR|Y~d(_jd^4g3wFH_3Ns^J9*qqOp!mkvLk+cgZqJfPlM(K*?q|d+!nuvg zx@C)ar4g5+7J5<57(Z}*{_{$4*<8x&KktwY#4j!=FIQ#LJEM6pO6?8b$r zgIUI!XviT;T#zc^zf}q%p32zwRo>|^QIwD8=Y|niWF%q)-#eD6`{*h4IhFK)g|U_C z1M$lMQrKiiWGnF^bjn+b4Z8wt>a(X9dR8kUX3RfTjXMu@V-B*QXcB^4iTO)_-gT?N@O6jYm zYGR@k51;eVGMrIvKas3j&O?*($ChpsgCF-cxr00aC_BF2a)Un9Nf>&i zx@)O@X>QccxTV8l5T5(MUBK3;Nx%Cc#fs-+)ieF7ax2r@I$H#C6)ejs)0x8Kg6s>a znRj`mXe|EnM<<#MYjfs72O~_!Yd^1E4-?Z&_8yZ%zJTHR?bm$I&MqP_YpG#_(zaC$>=akCJ^cSy0&hP}0_Os9SRf8W zX0{L!t1f+*lYUN5qBETr`WAZ&JE-{Yowg8)hHW!W57@w-JzX4lVg}boezY>TUf^uC z=O|??GOT?^)-~@|LxamMFT$fEwc4k82y17hUTM0KXm78Lrq01}h<%F22T`>8^C~-H z=*LXVuR-;z!X;Wb{?X#sENo+qE;x1iv?wna2$h-0e>l`u)k2d)%@Fh(bdaJ;7cx3PA=wk#amEKaA`(blV1(NOx~IVs*@%OVNCB{Z zx}WHsxj|*up2g<^wtU2gXZ)~Kji07d$12Bn>-aADc9!i*h4d#GmKEyi0P)2X}7<$~v)YkTDQ7-;%GYu|f36n1Y^$xCvmx8!%{6EvB~ zmonSL`V`{@3~@DZOmwy!D+q}E(|CWucPfQ0Cp~k0Z2s+^!*pa%U}oD0&AG6Sq}9<@ zeV9I+HsC~n$3W8__US1ayUjS`z{VE)Y09lriv7X!lUpG(>SnWt6Kd2G1GWXj5=C~2 zS1$JRwFCb=Zoq!Q`=Tsk%ER+iCRZB^Q_^AArzlnU&;TBWm#Q-@JAnAuz9^d5bz)W;vuR$*{HmL$IR94Ccln;;hn1s*p}1>Iu%2 z>h#7h&Svt*2KE{2ms8aPm(A2mxH=(%*M8+P(W|o5a-IcrX8j7%E^assRg1b^qA5W! zl9v{fOoN*dm8tZTXF6ftvhfhGRnkJPqx{uTj+b9g~0|a+>cMlH1CAbsZCAjP065L%9+&zO6 zoCFOvK#<@TJn#>^x_tAZxYjKgPi@Ikj{^-ZM^QA0D zQoQ_K?&plWuusfkZaS;{)e^VTQfaz+XtZt>C_YtxAbLgd9d2WZRU5)jmHvg=871UZ zzVA-hs}~>|Tt8oB8W^cprv?78>hI>_*!>D&2CmJ}ph8h=u>&MWIg)TyWeO6SNwn0t z-YzH-cVs7j`*AE#?$nf%$G|R(4+5Mt$ALHfEB-`cbC1%lYthjv*qA{KfqUqO)BXrS9lpoQ$Aw-8%5;K%7S0M z-u1F`HBPpAtyqgWm{TgSgPhUg|6``A#{(!=KcgF}ZGl*)zemsTZ?<0gQg-6`0ztJu z7;F$K#Epo4Mhyz^btQcAYN2dXG!?VfGi0b!V;eTT+1sA+_b?jSOob94XZ=J@O>eY< zPf3(Rv)1vVccq3{5GPY*lJJ<7n8-QJ)m->C-cSd1mN*sDLLNWyK32q|eTr@9X;Y~T zx!u~x!hGcfTfjPwpJxTKT05kXeGb5(9)5RE;zqr-SXa%6$v=4+197=;Xn0Rwn>!FG zaLfj|$T;8%`{B%K*=yLnTHJ_cogI1&*kV2(R`=O*NYncLf!$%+QE?!ZKYPJ|brZFV zG4u8YvZx+@Nye52wPyzFI3HIzXGUwxZGQB!fH%$c+!S)~cj*fqgjSideT92>jvQ|L za%U!2E*J;!&*+K-JI04woldJ_gOXm9@y~JlC6eh@Ge|{N-t0AGV(dvYgPanW|8U#U zAtAW){H4 z3V{r5t1RcKKBq(#>w=~93ifl;4qci2-tA z(dHh?CA$M4jwHbBEY*J3e z*&6`aiWsmXr5rVsv$mpTyG*$xBgyu4Dbe)%g*R={p40w1 z{Ad|>A~m#|0cw@HRBT%}uXdE)?JiE`-QQ5|9W)00v6Un`>s~6lYlOa!odbQZ#l90g z$~=og>>u-#mI0?{9lw>k0s+;TX~}2wbh8bhLMl^!a9iw#?0<;x6q^iKGI_q{_>T5?EaR<#*@xQE&26 zQ$r;>q0PlS3e%|ag%c>zcgpzbm5Eym!K8vb*#E8$XzId6t|pZVSO*e!7av90hxJ2K zseVR)>huo*6!T+EH$CPPsr6Fo2!y!koHCGhxGn$NHxSHc;Z2uedD8$xAsx(Z|K0Wu`5enZ! z;Vqx@I-I_L%xPhnEe^d3T2!-ojw83Xk;yoCK9QvP4hh|Je zF!tHrUZaIpp|YgVuV_FkW^l6TY^qGYU&xOeJJS&=NJguk_qg|R&x+|L)4V#9agxka#vT5{N~HhB(fQ4T8IoL?L`pn#{&GmG#Dv}?JYwfrQ) z+QHE3HS{+R-Ouli#BZ~`AMHDxijl_?Gbe8{A7Z_a*(B?~g>mV?a-(~IO8;TOKLCRC z-x36M4jk|&Zrb7l>gp@#TB?zjh87@6lI3@S>M;|7_AZzeX%SoTi*wLYSWBdB+u8#N zC66SNdr{fKAMC5wQ@)!I_dXuVugzSQFgLb*FH-{>KDz1ZwZ8)CXHy3Lv;&si`;^z( zB$NQ4nheP}9h02b>TbB-rd#&xmr9ZmeY!YdTuY-vYYBu|Y$Km%cu(yR#63`WJ{ooP z>k`kKZ$C|AllhnEMLzPpOggIDlJ#J9tBGy`_G>5Yfl|4Eb98CNRi5K~S-^|NGAQrb zU}T(s-HP9@X#eo!KvLe5=`fS7bT3YCJ|;J-;^XfFH5NO2?is86IpJ(qJJ4o^u9&DI22ssR8 zzxKavH$m>exTP1^PNF&9_f1*Q(}WJh$zv!O9KoETw%S5_k<%MLhXK=12cemO(;>aN zs1^=fpyv#tqo~@xat`h6kBGOXjp!&Y5ye9sB##oYvgZ;4XhMY?7?AlZ(RsJX4?(y2 zN6F7B)IZ~Lj8$_tY)+&-bb9AAMQ&P+-8s%07o$anMBJQ_FLla`^B)g{)Ap20D@mgQ#Q z=*NF~_sP|6mEHKq$QNjcpa1s3OSgu1OZ8ibBC`^-9`>SwD5~6rzxJ6rxA^olofjD( zY;YYON$+3b=Vp)Gk&%3LX*8OU74iufuK|wf+X&J=W0M^S9@rAFEa!dS%dq15m1v^u z<&*lC_BmYIxMvSqg4+Ht?C%*4xxHKi=Qk%B6ntLarCambO88%*{v}twi>j^$9agfDN;Ynd2@&PeStmDi)4;-j@?96r)-$pfGbGk9@mGpH<+8?2p4CO%<09i_I!v3+RO z6;|*lMFr6!Fk4-iz7`%JjQ|R=7M-Q5hc;Aa=5RewQR#0FE48g z3w_9a)+Jk8-~fG)6!34;HYFtY1nj}pd$+^Q64V9`E9?SU>gaz&^HB)L)0O4l9y?jM ztIh48?ZIAk=+>B93jft-UDJlY1?v$(J8%DO5qF+#*TjQx<8UJy+QZF?mgBfmuxsBr zy~BTU_D`^W$>aK{CYF)r^&9tmPjZd?!xE{8&69gEf_Lm6A*WJ_rKH!1CFB5Fh-#IZ zw}%eg_pgd?!E6oZa<|Q1^uBTO0Af7g~KIKcHuKaB|D>E5sF*RcZU>l z4!MG96SnncJG1h;7p+y`5Q$VmOMTJY_ z&UqyN(}#_7LBB|hxz>kg&rEd?|MGH49M2a0YMVV8I7? z*Y7R=wGYLptZTKr*$_X*8=V#Ie4cK4%{nb%8Ej{ZrfemrHn@j+-oWQf2kjsj#N04e zOk`gs{J=NcxsL-rjOqNUTTU8DBi36LbGX=#;NCU2puzbn+sC_v+z!DqedG?jjOXy+En7~ysQ^X3_4b@_w+u9>s%=oPzYcZ4VR_40 z)cVwohpJw8F)C5Per2h^kawD6O^)Nym%#PtPdYa=b*h^b<;lV%b;wS`*tx{69l0I0YAjybSOl&)<=l<+*k^yr z-u;;KXMs!?xn~$gj7>P9ec^LLyKTMMt~>C0@@n>a$#Yvg#b;$couh;3vq^W@+=h7e z1c}vS5jY)=b}PbxJ`<%?q*D|}T#ur^y6p}l)TB4P9aL#j_oFPoB-@T#ILNHZLMOwh z77Mvda{_sGcNph~bxXc%95?-l;VAkR`oP+&*^$o(GAFbK{EMAsP$+X~LouIxBXz$J zlsYassY0AuA-gnKAS}YZ`6F@D(RQGIeMnXk+81!rL_v-5HVH<8Hivg8^0zt$I&k-W z^wH`t_Z@TEbEP@kZN6$}d>6O&Bn^gig6wR&+#u}^fSaF z{D&|6M1s`2%&X7HQ?2RqhhA%>b1`H=$z5{o3{4`Pi1joK=<`TNKhJ-=C%NF9k@4uz z_}`1S>0D$jWzoO+ZY9%R0+Si5`-5JyD)w;c#%G_h2 z+CQ~tW@NS|UUzwd4u$2PEodHH+ZSF=Ozc=L11^hpw=+aG58h_xp?G^H&z2{2uV@r7 z12~NsSFpt?yuNQl_Wi&EI5mnZ!y24T(_m@6-EkBc#Y3_BIESV`79e8#Acm1<7PF8pU3t+u5L#l_sGr2i&fQy$QaDQcM8Te z=F+oblj#Gx9Og(FD}$&m3Y~1<9{wRSs~`HZuGq2IqNJ-o5kqHwXZ%(usByjq+LX!b zsy0OSf!>CA3w4t(P2wi57^8p5}V`<(KYwO3gcwW~=Y#~Pr#D;zQ979D4yt9TX*h(AFD?-$L zobGJXCXpL*7K3QR|6EM+ zl45t<9I2r4T3{rcT=m+J@!~333txKqJf^2*cQ5J8N9cvPOo!hB6~MvWy{Hm~WvXOKbCF!|5^8A4QAE^q%qIIYhecPM#qU;L-p3z~MJyeL3 zihm`DuC>Dh6ol{?w(S`FaPC>mj}YsH@*2mXWDnyi*WWp`3nIiNL4PYV(AS(dXi#3# zN{~q#Yw^Ek*^DxMc|7<0AOT=OoO2}FPQ~5q2TZ?eFkT!CIMuQxe*9TSC9{ZbF}(qs z*W3(8@T+WF$TC%%UQ^UeYDT>f%YEatQDj`R%4w@xth%F#6{Ql1A5tv#ciBJ`w4F$G zeO*m49FL9f`szjI*U)i5w@~iCCYlZ}ANAk{`%t%O?@EUh(ZzRI9{v^qGdDW| z&DTw`=713MqMDVLSFr3@Bj|_VF&HMyq{=<;J*~l6VLJg zFZdr9{C`WNgy=T09R@ae)@H9j`>NxAR7;5dOkKpYC`b;~BhNhyRN4RP_!S{u!}!07 zoOFdXW!O%^-gY0ggr0*Q3LO72n?Zypq6J~K`&tl-tTMrc)T ze|{kT7Vw<11=(T8ZB&q{x6p3}bz?d@aUN^bJVsk|ewvC3KRSEQ%1~Xo-^RG8r5$sZ zX(3WF-FQ>ko+@`;1nugfp8WPR&+w(usJr(?jHThW)9|Hl>@NH|t>BVu)gl-AU_9pk-Jwl5 zCziKplsc-QRaznMSXfXV2z9t?CGo`0xYkntE9k3W2JW@q{!JlM28TK;2fkY=2vqg_>IYeJmTOzA&rlXTzhNJGNANQa^*V;2ekQKKvDm>g$`J(Y*6Ms-yDu4=- z`(`4>`^}N92!jXSgsBFrnma2Aj$5iFQLj#>rEj4mz6+f;`%XZe`mp=MN@w2TT+9nY z$w*_3;ZQx<#6JLQPPpekNgdZ*{to+F)kgdKc zJ9c$$HRsMEyC^dEAw0g z?~FX&AJGG*16Qj}pxH8y>YW9!;=wIRI75pOA#b@{Phf%b$(LN+(YxK^9!h-EO?SDW z+N|Gk$ao57@DcywPUFB^opN;?g?_iXsQx97V8HVIk&#>37UYKR^Tz@y0+W4@`|8EN zv$MKo(}AUu3eYIBiPQ&lg}zMq5@eBY0Cv%=d7O1^@KDT^%&=k570J-*7!UaYqhf=& zR%1|EL-y4`rhLcdv!w1~BowNZiS@w7gU}#0iPeA02B8JNPy9%`K7G=sIlaP6ZCrbRlIpl9t)Y^Xtf7|?>fg{EN8Jq&7~`ZP$g&v+2j3zJLx zus|Z3j42VUnv7NInm1fsN#21cdB?)J_6adF3TG|ry&UT!>?hOfCEXqx*k0WNy8!i$ z0|SZU*>mpWCBv}0y`=1);A{C1dxSv@cb8>LOh>jIRd6-_`n}N`UNd==zvg#RGFhOv z;ZLpA!X(n_g@*ecPjW+7h@G3q7K7(#FW(S5>A5tA_`^kQK~Rs)q5!CM74Zs@OUKKC zs}YKMx>dG54@DFmiN>`1Nu+Vzf)@vUzi|e1w`_fZ+6g^D0cuA#P8tv1L}r}A`=?X% zPavK=EY1#mSDYvK;Y;9Pf4}IER@7E7W1b|gvS`h6qTX*kc}bpjruMH3jTjiLC8M7U zlVsNJd0s(alRzRO1UHS<&AGHMgZVxmbWa^0we={~J3^u9Sh<%JwZ-G1DHQ=V`|sT3 z0CC&ouZgtSm5QW!G!Ui(7G(x|*h&MLT?$y7i@{glH?m4D%w7CL_$yTGI{NKO?oAJz zA+)wa?Yh%Spg~X+>oxTw-}gHV6j`DSKKT+r`nrWlSKAPJI_*0Cv060waQm_RPk+>p z1|_ger=X_RNr(ko*`eBaia+e0GqN0G0IuGzy}D%$e=>MiLVCpLtixLA6{X6xS*BO_ z<{W>p|5l!kVF)Sq5AFK++?{sCw$bP-4(^C~IvJZ22K8D&U1UB!Iz%guiSBx#)Wf*d zqEi!`Zff&=e)!Pu!juRzC{U5;BcCs#ukja)Y)!D@=>lV9!Qo=My7g#h;wy@dcpP*Y zSP^a*M{d8{m4jN?r<4nzEAy_p)a9{}e4uGQBZ3i`3u7CNs&-9jJ;xVqbFCV0>*;iW zDo=m)Hvv+kdh#JfI_Bw*|CnciH14Bded(KdDy!3f4UTDt3c>{qXbY&qO9`})6GUGC z(nF`#kOq=Kx;=XSss??JeMAxV-v~|cnFp)Z_GFG$l>=e0y`W$<{Hr|U_h$(Ui;O`JZzc*aYS5TBO9P?ZARzoT+3vCOIXss*k(0FMs!o@c0;N1;v)DjBf*7;T z+e_BXz0HE`^@m>5fE^zC*btFb;P7XQ(scA__ewd!V5HX9phiB_Tgp(;nX(DU9V$@{zL2YRD&p3Mtk+ zwP6{YIZ2OIzQore>W}@l`A;50IAZfO${Fy}+xw!*(qBw#PNGCl^+~4j)N0uMP;}d< zj-1vv(PDk)^G9u#=UPefW5q`OpvH=eu12ipU59` zcD(;dkzVos|BHY3ZkHjT;21%v-fiG7&V{p=ePlHuS(#K&_W}#1xe5M-+8-$j*8)%{ zb)rT+G+B5(Maz=}_5$@g3wVT+g@7SXvZQi4Qse?-I{<2~3BI*~#e5CFZ?=TQ> zi6!JF4JeRKe~bO%_GH9h(P&|u1Pkdm@*^MyZk(dwPW+^sjTMS0XpW>kt% zlh0v$k71FF6v_tJCU1`7V>in@1uWwm#LDs#wS3=?4+!ruWe}l&0Q^j8zrAR&u2PmP zQf}%2XNZ37XM32T1^xno-g8{TdOo#P6C@63V=G}?y6HP7OPKoo241A^*tCWiVq88N z?a(`mcl-wZC!xIxzwDFDNO>2Y7ns01mZ~6iA03{nc$v>$Vmibgo>yH~XqU~R&v3wn zf_Q&Fqftwf$UnAX+6^K@)E{^xop>%=Rz*qIpS}8x;Yaaq8fVTT`BqF}$P1f4{7GC6 zCm6?7Sp2kOhO;YV(>~es_AJ&a5>a0#z2*%U`e5_=Skbt{KrcN@6c1{B*R(f zCEl}Ea--m+MaEiD2xp|o2ve<4cRsvrocxA@sBfRYz5fo(1h>w%Ej7&Tr~30*WSE;l zjp)}$TCY)-FqxDLtsA4xyf7JM#R^IMXBNDP13}Liy?VWh5duKpPs*=0475+4PcOxK zanc z$-8kT(rggzFUk|f-$WFb9zR=UlKfKsm=26}K&zX9JQlec1w({Xas?$S7Xj{4KMo}44Ms;|bn{J=V5*W) zPCvV3kpofT8KQibRJ&e)Dv_1n+TiEi>7D09`%V@G@NdJ!PHJJC6hJis0Y(#s~{h-4CQ+iW@P!A>DrbfNZklrp$16s%4_ku*&09kfOUE_c zQpoCHL0tgHK%V*()ikY$vDibNXv1cK#ZyW@cwF^|!*?#j9b^MJzUAr7{ELLA1`Vo| zN=+OFF6d~}sY|lMUHWE}VDV3nt`$NIE0kDb9M`UIr~+dGWV#|HE0jx@Nr>yT-=F6a z=*Zdw5$}a&-aB8vtcu*~P1JQIzEE;Kn=8vuYXc_jsCpKVx2OOfacR-S2!myOt&bD20p-XwP^TeEgY`S_M80SrFUNj1GM| zvlbyFIJ?QiT~b~tr1=5)*+p~()EvGS_JXuGck1u#^7~2VRsjC)xy11^0>a!x<5#n* zIn8G*E<@b?27B1)rcgaipP8eC`AaGu$=2(oo%D@EoH@%xl6u9v)kYxOV1)_+L^r$e zDBY|Ib4OW?YXtw^;%93P8ev3zTp>Doqy3Fnvy|HeI-5ClIAU2ddRMISYd65GZ)&h)8l;6U2jS`fqYH?os-Q$T2yM&@)yQlJ zuO4i|F878;)Gf$yjh`S->iozKJrqv5PdN{jklU0*!Mo9J7V@1_l%4>jh41)A6t{Lh zhqr?fi-%wXecuL60hE^`wiDt@^u>DK7UkUg<9+MjEO?Mu`QGpKT9|0GTGK5!jnP;Z ztTPjd#^t&X$Ko=?xDd}Q;OF_u7CxU^p0t;b)4Zno@Yrz)VO{x{*!yd`jvk^2cSuu_ zZWz=zhC{&)rENGJs*wKspzkO7y1Y?iKEjKAHSvhuxlB-F?8BIRu{}J+HWv zD#p8kM7oR&d$%rM8N10`e8AJKqs=c~9E^!97@J4{J@+s?vEMCe=2jPk$(a0kkeD}v zglWtF0|jxXQHGWb$k260Z#Yy@iuBWvjRPM)k+3G0w(>(`Ck$cuZoNgJ4zmb5U)8z9 z_rIpN5ae)ung!xAVjKvybXtmmv;M6C zKs2M~i|oR0Ps#{@Xm`(7odMIy#y%4!n&C_Do>2^sRmrHCP}kZ(OgVVL=h;6&J@@?5 z08wFBs=YGf|{ec+{5hUD7OLqe#2^Mh0#Saf;K@Q>Y9D?hfN40TmadyQ!o#fI4i za?jYBL%eMnU=J;VbDDA)dnrJ}9*~C!7aDQ5hc>}g?HNPJwN-*IlyD%BeqT(@a+iLjP_G)ME8(nl##jT;3dlW~iKkjePJ=bLuty1NEu==_DI4nan*;YlYf@$GU3VDL5%TBPjoyH=|L8an@^c1v)q)3 zdcbBt&JDrjlEe*TU^4*ZrEA`u?%2o~A$V>J%~11$Wmy@0I;(TDdkFHZf>f~U`AQ15 z{8|ZdAT0veG3B+TfvAKSPpQ6UTk`ThlwzB>5-VZ$d1_XkK(LY=(}4+7?W-;VE}K_8 z$;Fs^SB{?bO0dskb*w+vY&`2x+^tA(XYj@S3QCnGzcREph!@F~^fm*F|Ht1`z( zjD#7L_-6Av(7 z-;2Xu*%>g=@>vpBAn6F2l3c$}s$R|lQF<~VKlo?8DE&~7DeHbm00XKJtPhTx106JN zIcdT7jxBC_6x@z83ha;H5#92tm9ZguEFA?cP7`nQ2gRnTbHFen-fj?R#Pq7M~#w9;TpZPJbp+u!4 zb$?z5VCMIGB!WlAdg(vq3rk-@Z_VI*qaYK)X!Vw6C^LbBZZ&xB5Riw=vCR|5T|y2z zaj*L0yf-?C-w!mi#)c(d)ntlj$YTbNeouyB*iLRQOeM^>btAcoefms|Rjjnrjc$`$ z$RofhquHTLp>|Jn>QQ&R1-RNN$VQU`z3Z?V{YDAC`a|~E9fRDY| z0D?g}vF@CM1PV~oKVVfNJ^v-&pdmebl?FS1k+T=k# z!kq?R5z;~-c){Dau9W?VnL$3OW!zT!gJGV*k3Icfh_m+bD6UkAL^9fU16OZx62L!0 zXV+QI_1)^u=|>4r`!gk%IgJQ86>%kT2W6oM!{*^aHj5Ticb}O!&Ml1~=?O5ut8C*z z9a6_XOG1{)p4lH$r_xLT3>5sWKy?jBiY7)`olJ)L>XAtuHu$2gXGwj^;30=JIH%_V za$Rp6+f0D5u}zG;u+{FO?aF)hK$MpaqddQu9?R@Qr zoDZqt4lP%Dtre88?9Mpq<`V_=D}+ z0TMAjH>VNE&n73QvdBl7=;9l6n8DCv!(2iShN~t6+6sg@x*K0@cEX~Tq7MUMQv1o% zns4_L6Bh_&;(a9C5==fkqX#d0on7H=e~9+8oEj;;mig#-FblNH0C zDXt^hFY|0q>9gD?s}eFQgBj4`Lx?@_w(QbjPrNBd4GZ{IUUP#QKP`2K4s5emn1Vd6 zL$ig_^S(V0C51NX#z(^E_yAN(fZ`&OU&5W_p@I#Go=PIYv-{RPHDQp>g2A#|KZUS3 z(@>wj0J*=zy0WoJ!9;~R@KlXLV=(ghc_ugdJDF(A&E+!Yk{y98i7&i)0U3N(j94#M zy2w-!Kn4_L>#|Un@}I6RO^`V0$*nU#BWC|3-|J@l-!y(8qWWI>;&(QyST|#Ol|M zK04PF&r+DpVe?*omjCh-cZ7@$;rBg04<`FfEa|dX0=`J@#a)`TL#?(9Z8(oc72tPmPrXc>tj^ z1=IVT#wJW)*ltYRjj^4(%Luer@e87-;L?@5)t6UZ=dw?^WW|xu%SPeRUZG!ItqbhZ zWW+35_}b3lKz;=Z*yQ*lG$)fZZ7D0th&U+YL1wr&6Bl3%lpBklGCKc;qKKY9?(x5& z{{v&Kil7cUIa&HsW32hCH zfPA2!AK&H1(HJL&3ct@{=;v(N5*MthP0S<6wbT;9)2xp3>;siwQWjcQb&WyD6}lOk zMeibxFtSl)oK_HGl0YGs{Mn|<51OA?trs?*5k47o7O11T;w*k{0H2FeUMjYqUcNi` z^dRflS8lLy9RR0D57+SD$FdxPsW z;8}wLXJ(K@)HXIc@)7ivbVW$WBr@|W>kh}{rUIs1<#evabl~jesNKjh5ddPt+BtFD zw>ORW$K^(%$XoKsijX_N~N(UK5!PHatHWu5h8~1l=SLB)c}j=L6ciD2>FXE5@PfvDUpd zxx;%)gcI;cgm$xL22jC_w#mxa=*{75Yub%VCMuPxP|!Cc1@v-VN0*a{Nh;0>_o3Ta zcz#T(u8aSh!^y^S zgqb647ZXW>TI!jIDLDS`-eawIJ=6&8L!qNvWAE5J)5hd!X?ofxMM$5LWj!B)Mt+tm zSptkey&?M-p?fm|n~gumRNn62l3txuAe#yIdzN`nMxOOM((aydxCYgDxlACSxife? z64T^bmJs#XU;R;Kp#nv}4GEU8IStE_eqT|XK8PR6Z}rs|Vp00IYX6DC^7-i(r8>B` zEN{OC(Fva>je}EyK&h*Q#=ha_n^EF-T0zP3piemPbI?UlvpM{E0ZDB)sh)JaFwzMy z>9E_0mN-t%D1}rRco1zyo-gvNb^%opb_yW-HlMaX>C88&RJQ5`&Zn~0+;k~+#MQvu zef^hkrDehm8*w`x`4~9rmd<8PRM%6kCA`AmWs{1qr0l@z7Kf$uvA>gtONskYDL6Nk zxax3Rq7&JBWWCv~5*}!EV%X(*9;OFhq--VOI{I`@H<-WWH{$jhMwY1>j#;8t# zcyu{2>20CujJHL7MKlzv7ZUj|RD>EdIqU@s@u`by!eqfsu9PK`Da+J!ssl^1YD)ek#zt0yFd!HiVN`ggkWxyP~XUlU;W4JNl zOxq-<&OvKy7uXgYptoS}nzL)Fnu9#8OrzOdSV`>54Z96HYg77wPth1G9y~|7R@7Fo z)85R7ZQNwMo6z?7TI2p>KZty>E`hptK7gVo%}TubX#;@I*(N*oBfHYXM&vT6eVIKR z+{0>vuU_a8p953rym5?^@m5&yB1eXdn`g7|v2lU!6wOzy@wbr``SR8S$3#x&dQ!-Q z?;;Yp4}aEC*a_B=+3!It*u*=IlX6L=5Q({`zd=7lo5(zht@k`KmiNybpRXvv`bFkW zly-?B!0jwe+;u5rjh*T}Ks2Q^3Qe?6O=BN|=P{8G3mf7xD&c#}$ReC$U2{G(>}&)d zj6L$drT3{dLIdyKT(j(L{}Hc74;>R4*^^h7pax?161~0^*LseElCyEQmhZcyp=t;Z zQEtfCWI!;yT?n2nHtaO2F4wp|iC7-s76Q7j0_X3?wNbea3cWj`TH60QDM7L=Iz#gX z#T9_7hw58r&{m0+b#}We2YisykE~`TO=K9mzFLSj9qxp-<+S3t+1s+0cFB`o?Cr- znV}>@ViljqdxJtZRK57+V7A>PY(O4%Do0il@2oz$J>Y4_nEW;fn-(1Tk8B|6BS~@U z-%z&N?HkMj21K_LmJ#R;Jo@0)k8t2=tbB@I0X%xL{mXsyR{#1Y5OUXd|3urf`il!z z>{6lJ3D&wz3m$RH-(|{eB>}1D*UVHBUd_7@%L#Ks>ZQA1`YCoq9k-MD$gYs= z;n;zrhLU-BK`)|>qY_GR<0+|qnWHI=6g0=vLxv|AD9-?Leu+4+@^Q|7OEd(pe2hXw zPphSaI-1G^$a^0Lw6J6mlSDrME4!hMhU$vR%EMYcDkF9*DszMFNgAGBX%Ag|$IV95 zya6hTb8ACkPLK=yIX6qFk!27m{R+Dj6L`zwYG+m>EC*(j`!<9FnuJ=mem8zli3BpB z$^>VvY!XNHREJlxKQci7!)|F|x$@162%cad*^)euqiYTz{T!NxwV#vO7$%#*1bB+v zTYa)-uWB%aO{_{V%}W@PnFE!y*O06sv634mMAYa0jfNMbPD_+y-9`NZgs`rTySy7p zjbl9;4PwphU_2Apyv6J^i(m!YDK(auSy2l^IV$Dja-Mkuk)B9aMyb4rr!HT*izlOo z=(U+Wl5m}e$7OSvp!vOYArAs0yQ>MS6c8y2RU(EyYeo#?J~RD?0_VN~%Dc5u;^3O}FAvwMyd<4tBi7RV3(SXT|SW9zeW?H+N4f9Q(4H$zQ}siGmVN_Y=rFL5!s3g zK=~}aznK>yAgtB2PeA};t|%L9!n|l1%YGnJN-2)@nnzyobrh7@UiPOJHd30;?2ato z1M=v>8f@dHBqdvTa)$f-5{Uw*@Usw$wYReZ=jat^B;d zt|S17iY|AS;5oSJtG1O^!|0N$j0pF}DRtVJV;Ip!Yx#^o0?c^hl@&U?S+NB(ll(IJ zQOK~*4xL3XYNkpdFL}PZDi&lqC8!rUL$p~0E7P~+c8BMtyi(nG5Y}?J=rBvJt?1p) z9s9wnyK|K33Cn@q0XX=%#A*T@`<3xZ2lIa`@0(@i6Rupvqr_JV5O;J|4Ignn{0d(6 zLOoNEo+$%kBnd^@2Dp{SzbVP_%N938#6hNAS#RWve(0<__H}$4tqD}?*l&?d!@Wa>vWXfA zN3~cjX@I;CR5GNWZaP)pX4?X%dY-K0S5Qryqc^G%{YHU(zNA(I?O=Q)n7Nam9HuFiw|etY9~dNhrU#GtUi0_+z3x!p zPu>@C4UQe6N)!Dffz|#jnBW*+-xCpGJYgJC%UC4QAelXjt8ac-LOJ3tCJYO5yfIQ* z(X(JS?wyzDp~N8d^Uw^QSU;~ zxB#D&4(_e1I_@>GYeTX)-6{DGD48X9H8It&1Gki>Z!)uQ6Dv{Av*-#K9ylEdaMi}M zU;3#5q#7{?k12l=4C_R>slfN7Q2O|65g+2+zHy{Li}nTiWfV&(0;V#IrE|6?ph^S9 z*(H#!pj18%n9#2-9Rs!@sY8o^kqq~*Zu-&5AdfB(=?VMIVonhZlwiBrz@ zB?DMMr`8bkCMCjE*xNZSKOW^=dT&=oB-08TRy8@=Lrx|`2I<%Ht{hoUFCJ1BRpDSyCR3+%{~Ylb!gQ=`FwDty3g48-O2d|*A*UvL1_QWV7R7j4GL*@tLJ8? zELnuRCj2xU@g2JLmoIN1*uw+F1Dhf<1ZrW3QGwaX-N@xI`$SX^lG5_OB*p-uqQ&TT z>{7_*?RsZ}tUqQpJJNyM74Xz|MsTsuxpK~+z5 z9VT#09_JgP30`jdMn+!M;|b6pbsB)w_826{#Y@`!+zcbp?B9D3@eK&6z5X4f^-3Rs zhRqe2(c-zy<@NCA;P44ICTpr#sjlU(lpG;z9~jul}mA6GC;2%<|6XrWq#57ZII`11f?e z$4b1Ip%1kGtXl3HGKF@Umv!BSdOikyeaNT`WUsix+sld%4OLtqqt6}+g%@dCg(ElI zkvmjiX~v{-XhmIp@72h=@)`b)WUAe=6~@Qp_Tln`ts>NiA@+H}C>d-yp6srU3lU|R z#47R_8As3$;kgZ2vc#3UXvml;6@|Pefy-LXc7HX4TCcwcL2vrj|0UC*&tE-)HZ`N0 ztA5FL_16$eVJ|xEE`R-mhI(M@==HmM@2F|S0jIz+F%-mcMbrA^qlIvXTN|9@kZ_H~ z&kDX+3?6(aq>joGjIpxRhfSp1C8DAxr8LM^{?=zHeuthxEk|Q-@)Y7PSNWT0{U`?p zNrw&6Igm-7Uj~Gn(_QV%3wy!lqv$01dP2K_Mz36?|1?xs=k#0`oYd75QbUBHlSAOq z%BIxwqk_WAMsdo;DEf#*lyiYxipO{(^|ukXvu`cFQ;wQ_{A47@%m9}G&8WG4JhvFB zbMCb0GhYtWPt{yn!QV~xNDutATnNXJQv>d;QPA6}?iyWrxSQGo>0Z+A-Tu!W zw>w5L$;9QxiOpRS)Zl*n9jj{`=VImiCjEx_=J=mKI?sVc=@mJxpf&l?!Vg@&3f`ZxJ&f@H|5?MEZ1q1x{4KuEI)BQ} z=R~TA+JpK&=g7=_NudXcuAS-IMIPwfJ-UKHmfyu9Y{i4JYyWpCT$}3v3Bcn#Ym~CL zeGXTj-rDhK!rs;+OAa?^SX}FWKU1Ic$IiUj8?TxjWBI|K8*`^`V>pw{dgImI8+ZlZ zC~n9Dj@5-J_7!fZ?rlvzTyyhCz47+tEe!W{f^K+tG4^q|)g0TqdxysAgDY59U)i9$ zSj|~`CyPzC;-QZ%#s4Kz6@+}{>`w&Ta%*F;NN{yb+3c%%ps{oNpA&4U5xyH%Pe}T` zeFh{MT6o?_w+^3h;^msRYh_uq?elkM?lVdJQPh6G{O+f6WgE-$mOB$1fg>m!zUTU5 zl@If~*WCHDWBSrfLg)6T>iKF8>Br}5+?neXkGs0quRXmwGC(d-j#Hmi<9K4c zm0q&4I3v?c4`bOCwJX=KD$Cr7U!!p+UnuEEBCyJF`4D~Guwv3rv#nF}Uc3l6x5}