From 8d05a64169f20e84a38ac083993b6f5c5500157c Mon Sep 17 00:00:00 2001 From: fabtreb <70035807+fabtreb@users.noreply.github.com> Date: Tue, 5 Nov 2024 14:30:16 +0200 Subject: [PATCH] chore(docs): update overview (#2361) Update overview and architecture issue: none --- docs/content/learn/architecture.md | 84 ++++++++++++++---- docs/content/learn/token.md | 11 +-- docs/content/learn/what-is-omni.md | 32 +++++-- docs/website/static/img/architecture.jpg | Bin 0 -> 445748 bytes docs/website/static/img/core_architecture.jpg | Bin 0 -> 409850 bytes .../static/img/octane_architecture.jpg | Bin 0 -> 209185 bytes .../static/img/solver_architecture.jpg | Bin 0 -> 391462 bytes docs/website/static/img/solver_model.jpg | Bin 0 -> 408610 bytes 8 files changed, 97 insertions(+), 30 deletions(-) create mode 100644 docs/website/static/img/architecture.jpg create mode 100644 docs/website/static/img/core_architecture.jpg create mode 100644 docs/website/static/img/octane_architecture.jpg create mode 100644 docs/website/static/img/solver_architecture.jpg create mode 100644 docs/website/static/img/solver_model.jpg diff --git a/docs/content/learn/architecture.md b/docs/content/learn/architecture.md index bd6ae67ec..e770398b3 100644 --- a/docs/content/learn/architecture.md +++ b/docs/content/learn/architecture.md @@ -1,29 +1,81 @@ # Architecture - +## Core Network (Cross-rollup messaging + Omni EVM) -## Consensus Engine + Execution Engine + -Omni introduces an innovative approach to blockchain architecture, designed to enhance performance and scalability without compromising on security. At its core, Omni's architecture is split into two primary layers: the **Consensus Layer** and the **Execution Layer**. This dual-chain structure enables Omni to efficiently process transactions and manage global state across multiple networks. +Omni is a network purpose built for fixing fragmentation across the Ethereum ecosystem. This is accomplished by combining a secure messaging protocol for cross-rollup communications with a computational environment (the Omni EVM). Given that Omni is purpose built for solving fragmentation across Ethereum’s rollup ecosystem, it derives its security from Ethereum L1 through the use of re-staking. -## The Consensus Engine +To achieve this, Omni was designed with a novel protocol architecture, Octane, that runs a consensus and execution engine in parallel. While Octane was developed specifically for Omni’s use case, it is open sourced and is being used by protocols that have raised over $150M, such as [Story Protocol](https://www.story.foundation/). -At the heart of Omni's network lies the **Consensus Layer**, powered by the CometBFT consensus engine. This layer is where validators come together to agree on the state of the network, ensuring every transaction is valid and finalizing the global state across all connected networks within seconds. The key benefits include: +Omni uses Octane to combine the EVM with the [CometBFT](https://docs.cometbft.com/v0.38/) (formerly Tendermint) consensus engine, providing fast consensus on every rollup network connected with Omni. Within Octane, the Engine API separates the execution environment from the consensus engine, preventing transactions from interfering with blockchain consensus. Octane is the first consensus implementation of the EngineAPI besides Ethereum itself (the Beacon Chain). [ABCI 2.0](https://docs.cometbft.com/v1.0/spec/abci/) complements the Engine API by providing a programmable interface for high-performance consensus engines like CometBFT. -- **Immediate Transaction Finalization**: With CometBFT, once a transaction is included in a block, it's considered final—eliminating the need for additional confirmations. -- **Delegated Proof of Stake (DPoS)**: This mechanism allows users to delegate their restaked ETH directly to validators, bolstering the network's security. -- **Proven Robustness**: CometBFT is battle-tested and trusted in securing billions of dollars across various blockchain networks. + -## The Execution Engine +More information on Octane can be found in the following video: -Additional to the Consensus Layer is the **Execution Layer**, or the Omni EVM, mirroring the Ethereum L1 execution layer's functionality. This is where users' transactions are processed, and the following features stand out: +
iC5tRQJ~a*3r%F zd5gL1Kr998H#BsT9VXX*U7=LGvxE%IRV8_)n$;49VuUd7+*yK1SCuc)30jT{8~8vK z#U3Raa{5VTodusn2iS2ZWev#qRNj=d8?Pf~-;u0*7^ zG(K6qaMiZsu}7{QQ`6obDNzjMP1KW+$N)+h%6Z# 9QVpC$sI2QnJ4kSN*C4i^9!QZ6@$Von(wLW z)e&j%5tWLGBY-Pyy=CiCWMw7_{3kDKD{h%k=y3^E!;B9iRC2&CUcI#upQ%=jPpHbV z PmNe_QPKTr50TH^u9gU#hWr!SI`+}D%SlMzPa({WX~AS$onZM+zdc{ zh7E?@+Y> !qj+%mkRm=n `3zML<9EF1uMb?4OwT6> z^y5x-64M)4^s?=sU`8-T;%jOJ>wFr6_F$E`+dJY(PQ6y!Ly3h~tfY%_+hI+zVaC;H z*}mRKzhgNEnq^ruP32QCT{)k(mFj}<++c 4Tv(Uqa2PN=5CbiIZNp{l PBLM);zE!_>H?tr|m H23Me^)p@lb9fTrD%$(W36m@a)MmA*ol3 zg(qd}>LU`dfSs4XPT^EkYIl(pKR4Rv@oI1mE-U-f27wm_kJWX`6s>zE mAEB%x^vvke0mis`=@*M5to3uVQYM$hT6TbSBw`xH4maOrsbc9&e zO1Rsn(E4e?Uvp9o*;&isK1NZY6ehVTG0K9x;?w!|B!lKBFT400!>jbw>N5N)0< wbqqqPUYo(HWOVXY ~>H4(8@sA8a X5_lZ=OWyl6V6yTpOP2?pBF+)t`g%dI_IX z*%i6b7D#9^k2y}7cEqHgsw}2& pT5Z;0CJ*MX6Cd?@D= z-7Ee{GyOzlm4wut%Zm>#y@BR>OFp#&^A&NNQwdQBd&XeklN%ueWGz34Htpm$RoQm) zs0F|6iMs#IL^6A(!n^Tp!NTT_e7Y{dN>?J(KiIujNU@By(-|3mulzBz+BLTz*CByZ z!XkrbWyzp0BseILqr}F4;CN~@r$_7Qz&1<|_;Ky$ntyj;j&76b1(}OQ6?M8MBzB8j zanG{fH!f$;UT%$e)kixiG`6X#k0=9_{+QmBprTIci_wdU-gDUb8Jer^JGLu-1mM9l zyXV7#leXw1r{pFt7ELCl*4TPeDgprR<2RCsp^o)q 6dOQ?tX=(TzZd=Ycc-td2rw1xOtRc|wsQ8g#l!e8w^d$|bn zawd?s%4aUrK5MGx(?j4Zc+X<-0cY-9?=Ftnv_6NAP}&g>GGjLyln}iZJQMU7>FU>3 zB^qy<3&BHG#vWUie2d~5kq-Wm`6y2-z91k&x%uJX2gZ;0_F|6!<&G<)jVtp=X(ko@ z27!)R7^Cgd?F-+c%sZK03I32aHS)?gkk!kn13)Ma523-BbFzBRwk#HMG~+Zw-Kyb$ z2ghCKYj1#pi2%u6X)0YgIWl$OYVAwLKZry{T~gfEgr`*d^Rfp1`9y}KW?eB5eJkWX z=-Pc5g~71)B>o!0TvR@u4)rPCm3&fXFGjW;y#mX=V=rHz5+ylt*XYpVNyODPfBZ-L z*yq2wybWu)?K?h!VAru1mK+*Mj!w$lG8$x?R%yZFC~aN=NTe#uR#H
7{9#1-MUrbxZv*uI&!EhaZ*X{B}eU}HHP& w~R@y>TUzd8803lzTid;q94>_BOG0YWKNu7k2YlfpDQ8uiNz}aPqYk zI2QXWMJr!knAAMx{Jk8S+!zzjU(OxWpniTxM{b)cp9Ty3tT?#6X}mDY{m1y7&D z@w}!aG_9=EmgB4dAac;*?ieKea`M`uq&G3d7GyV|*#A)I=k#pUK1r@2>oIR;@_ui~ zO-04-<`;cyCA@OsYMVWtQk5JaV8!Jy?OQsWZu6e_!;t2}d^XnAC^3YHd!;*z(HOa5 zJ*|`l@8xA1vcnyty-KalrJYy%o)exE3i^(M^rof0l#2(+mGA0q)|smbDlnC8M9Mv6 zlo$j>e%d8fo^LWo!ng12O{R14O6=b#%$S862{n7&y(Ecq4B0ieIc1&bzVvIF+vciM zu1KQP48ag=u?`xTtl5biL~~D7sr)QK<)+&?XNH^XkIUV*W5Afn8Iqyi$`dA%oE_oe ztFd~M-VB86HC9F2L#9o}=XH(lC`N3|g7NzY*dxGxg1^ksr7Cv?4c2=F_z2*QxP8n7 zjH~5&Z^eF)y%gn3zTvdcDO-Nas>#wP)1rNGC-Mu0gFrMe@1e=#IZ>goh^HexobZ+p zx&?X;ULqBINl_kp>?lLaYo@N-&vVi?^y_K|m8GC^3HLMjjgA1UT>(@3wFWw)ih3&( z>wB%0Z8mGMqD$2kLae64qZ9>}sEk+q7xQF0T7|8#-V}PLGtmfNmtV00t3JN-9}+3D zp)y1!{iqwGA4J9#Mi01#bEh9^6`QO -Sg8&*Q-tyCGNA#RDtxibiV=7< z+r^L1ep(0O{e&;8x1-D5CSlmMbW@umZ94O_Sf_GQ3CKwA2u`rUCGL*TgV|lxO>zgO z?MFZuy#iT6Pp~wtC155iGz%-M-|Aq-S@rBPJ~^sIXwP}5tf 4T`9)6(NXXz7Wd)-ogzIedK$Qgf?aqufjE@|2gNJ1N2Dm&8sJ>O$Jmf-vcfg(rrW z*ono7=BCNDXP= aZj))`_|f%77qAJceWs<5+a_UlDVpQrdyxhekiYU zASQxhO_w+xl- }HZykFji*B34LxiLJ4 z%=iI3?-gCYXWct~l1iVvTiEKxNbN15njHZTy9u6f8v=vt@pPA1XqO ~wp zVwPL#CU%Avy0hrDo3eSj19QISJt52ujeh4cU2-q%V^Zo>#U^IcF+Xb(>UmBSqMLkQ zrSeO Xp_=E_*p>h$yLTb8nqo-i&DiCQ! `G>|0y22Ksq$U7EUsuqY|)4^8<)jL^}=DIDiD)BK%c@6_->|V@r;kX*- zdo#n5oz??g-SU#6xWemysLZ=lW9OTql)1P3=iZbaFX6_Hrk*#^-}=VuXok;_VEHkA z+E`AGT3a+zogFA6z3oO9TNa!D>Yd^f7T!$s@KXtLgZB*hArGR3C#u7}K8dupbGuVB z%a$75|9NO;sHr94*73}z@Q`VGDeew-!>xQvI7w*Y1N}Ekf2^}tTvza;;6mM=nyvBl zmL1@c&%@(|aLE>0%ZYi)a|IVis*@&G>^SV4Aq#_VN&)BUvEbrn@@BQv9PmrI{}GV- zmeRz#%``rd_GJISV&i**68I^=4aFuThyHMHw$7=eGo 52sv=MIpeR=55nom3Rt+uwdk}NtN)P$YR{W)zlg85|A zT}7t|miQ^F*$F!Pbkv8dZqZ_25`#Do&2$>d&scX}j wb*pYn=LK7CJY^e6u9n0Uc2EtjrbW;lS}Oe|z=KNzEX z;HhAW%&z$Qm@Ab+(Vb=7$7i&0UP%~H|6o_R`RnbN&yK-~qRJQ!l0R(8iZ^{CMtkxG zLGsB;aR}6C2D5z$xb%!^-NYm5m(Faf?(y=WJ5#n4L)ct3HWU%$Kj6z!TsEX|&(#^%|FGVNNr-h)L^h7xOrGdvxV2u`c`zsn;@U22IAR&+XGcAW^Z{c zyflna#-*%3*;dmo<-D(9aynyU&tu^t69;TVo4 9G% z@|Be&7Js+$xUNjf=a+dkPhYN7hLh{u_}0;qU+0C`tOBQ`G#&S+wr5! DUBIlxVnMBZ^g%m ztETVOs?ZMSL%Ftyb?o{}yscS1$3LduR8I7}71ZLpXSU#KX$^iug}7Ok6^_11*bIE$ zN7X(PjJ!iTtsx9yn6GLQrJQZwx)xmQPF%fB_XKKAJYCo{fw3AcozabLX+fkx7~a=2 za?_SKbG&_M{Z%<`=H2hy)F9Qu*wF*-t32pAr_7u@b8Tp~!>Smb_35JE7b^NDGVpBE zmiNp=7*3JN_(3rJqF}57!cKsZG~Zy&&(|%svPSp#8hV^o5w;PC$cw&E5iyw_rD4zY zT<*@oVwWaG-SN!)Kp1O-ck0M0XS1yp*aM5{8tD?FFk`AZ)w!CyDV1uS6h!U&a;=ig zKvBOg_2%5)wZV4tA?y=V;%IiGo8O;tbUei~aog--y oXsC+SV zFI~QFrHIIR1mA|P?YAX9i`n;f0jLs!Vdu_0 @DHmGkumCtgc6Z-r_ZK6T#@V<_D`z&G8R& zU!fn=B6R{zPPuXUPEqZ3?HUtAE1k0vvrEn3?Wh|fpE4^o)j6uw?nBo)Z;H!dJ4!|P z0qIdNY&4Yjk_LQv7pv-MgO?thslTiD@%gpBA~2=V+v!WKAC3sJck@8U@VIKP;zhk$ z%tF|0h3$mThg4-7?>{>nCzGgc?{Yj+>rb%BC4F)pdu;X+CKL@zNNvD3`hQGuG VrNc!JFHL)0H?*zy$m(L#NPSrzpJe;sEd va9pX07KJ87zg$@vj;y)|zT_;s^i(_^H}E#fx>!xiTjtS}mCU+&2V1 zzJkr>G%Oqe_0lSG0`~k@s@yieWL|YWQEN*0iapR+wwW4 YY0ynW*kALXvjO$GOwY*aiKDj9-5(Qt_>#5{;-A@3u-+DibI? z8rIE^TpfXZ;n#8V(zrku?oYFqpGWDm?8`NNGW14jnJFyZF=f24VREM$QRSL{a;5sY zx!t5Fx1x^j(r Wk#tsJ`qFR)RATh`5QhhmuDH*>$8U4wynY4D}@)pxo zPy7Q-ZQ+aC6cag}#BFElU#TJEVmcCjIHH(6lY4c6|4}tgnOs#}C>;ZR>5=+gC!jm` z8b`}?>^28!2TG=1dAaYO3$J*@Yw|I?z~|eov3U`DwS)n`Z>)wRk`)4yq2%g`jp=m5 zkEO+_eI?Y0Tx+8S8I3yP^~d9b(JQ62!>z5zx2$FiDg9hq%*JS~KfKYQH>kHAtsUnc z5*)L7>66Ai{1~@IyKBcJwl|pxwSG1Y=DdKZ4+lC(@9=j(lX7a)784mK=klb|n}29d zES>e|5pV_~N%0JdXb8`V(}SsS$E8};T>bGnd!A8zzz50N7Z;<~YJLB!dY1~tRMbh% zvoYCjI?u2AftQYlKku0G?&Tj6h}4{v$x1{(qf4l?)`Q&?Rf<@4Lq3bS?DR^<97@vq zARjgxch_g&teL9SSoStkX@iOC+@-_RH!O-L78ve^Vt7XDBgu5@Vl)o9=r_z5iMT5M zo>)117p5LX7cIo6(dVVgrp23-!Y6ufh4Y_8gMPC`SoD;o*4c(ujUjbA?yyx_WGI>c zxHQ As})yB MupBxwZx5#ys=t<9}o~AW+x~ zBN49-M^-#u^}5v^8wswb4ytztZlxk_FoXt|%*izs8XW&ScC_SfG8`e_<|B))o0Wx? zf3#28-T$pd4`A=x!M__k!qY-k^D*@K_fKv4MJrUuwtcA@@TAMp>`WCaPdANP8cR?s zQZY(oydvd44o^t&08mSqemLSPx; &eN$U|KVev9?CmyBM@SQ79J z)E8>Jo?CTx!D9@`WfxpO2goACPS>6&blv15@{Xw1QAc}3YgD=7`L!cG$x#O>p$}yZ zhR|6mpEk=Q4cemEF^Qd{d}H88j`zgA*fL|4>8-9bdSKYEUU=mkq8ioFTU4r)Nj?JZ zbM8G-Cf^^o(9#>rzRSs_st9j-=&ReRIA`(g-Twf(Kt;c~Oo)2Pnrlv^G1M5e2@qYn zAD9=%Lrgu{WdoU$wBc1Dw+3y$d~^kPE^~C<8Y`Nh0ft>739yNPExtPf#M1rLNTio~ zc8h6^R?`F(*bRvFz9 uPHIVq>1@stXN|#ss#3VCuma?X{rY1 zZS@b2vk*Q}^2cigOJ#GM&NE=i+=`AKhC0VjMcj+};>-~uq!v-6sX0e4#7LJU^9`f| zcKMuj(e@~r!d$Z0W%8w%IC9!XqpO*93qU*K^j|E$j!T%_Sf-XSTM9IE)>|upE=ag1 z^q;0WEX&PC^0RxbpM}wHzbe#yKst#q1jy=k#hzBqYfy-~=x-BHxrYF2nvC%_f?^^! z9Xey}fL(@sm&7yLNY=@kDrJ~e8v$|`dvw7UkE)#3ctZU7B{LLxS}v2Nv>P?8C({i) z2i*!!s{a6QM22FTGie3(FiV&*yokmklF?`Gw6Puy;I;X+H4=0_(sqEP*v8mr5!#CA z6NRidt!`^CSMK%-!a-9YkO!cj;f0(St!F=UL`B9_o@$R0qlk2EAaMZ%us!z}6F^f+ zD_>YDtEeEAoeHu`+79Eq^~8$3tnyC?mde*>lyQPCo+iab!>?GAfojysz|JGe^p;_C z)C>w~6R28XT+i)}VXUmGh{Y$K(NRbW1bip_4KQwEK3L}xDXgjmdA)0Ml@6tmD|ppm zsC2YIi{A)hFST0g0_!b%W&Z#WOfJSYmXR=T^v5+U+3?SLwByyqC733SM+Fo+-&yJ> zZ&T9P<0mH`8NpmyGKy0*D#mm|wxCVDG?F&QDL+(N{?%X$EVbE%Ma)8#revy(WSBem zzfq22*~QmHN?hi&u49Kri__;SNCcmV_O|!O8P0Pn!X!5&s?_5%CBm?P#8?4n80V#% zYdLk)!3ju~zO`;4Vh)yxoqz*iPf5o#ycNcw&uUXKrD{@O%-TKx2Ge~|eMUK{2& GEvk*heauym_xWkR}+ zo3R93o9P|>aRb>aRlkC;Rb;MJR;F01K7}G@OxR6<1NdS!CmKjbRIX^c(=NkH11-zk zbsJx{AVfPk?^mK5Quiuz3UvSig^Q1fOwPlm0Wh%_C17MVS=-_q;E0%;eqHWuYh#tf zPz%*{Db>_lPzw+kL;!9{?}?4OIsB&?Sq(-E&I687WDqU|`~LtOB(`k|rKwPA)XYdz zQ%&_W>z=V~yUzFpvyTMdNT7OuhTO0&Ng_iZSj3&nXBc? HP2>yHH9+ zw1Cs$K;}?d3=5ENFg{oe<+6?F)r~r!GZtx=B4@PU2m&rUD@rb^YK+{ZFtxXn`g(fe zvs#*D()cV@D^37r0ZM>2z3sOCxS1DNlg$#&dz93vrIrLKVnEnmU_Ez(gLtK37g^1u zmm;75pZY{WBhoj(Ib4UD5ml?NI8y-J3tV?L+XB<=XW3J7H$_!4Ad@AmO+tIj+YLC) zp45!$WT}!Iom(4&JIBilQV@utr}%2@HCPF^udhkNi~U%mEXrzBT1;3Zs673TQce>7 z#6@E-4x+KtpfGZGw@D-C+Zd*PvNw&M N>sh0YbBD)f#0Aj=mHoVVV31CwWIf5lCT2jodP#r+EZe;`WfxOT2 z!Ez= <7&9vr)BuAbZx#UcA3O*$4K~fo71>}oVh6+k*+}X9Fc?N_B?KP5m2Q=& z%2=QT+@J8q*v>=MTH7dPEXUxGWRBp8^u}NrP@I))+%{qtT~46b6Vm7Bf*};(>UbsU z5*wIE001<|x76WCU^bAN9FcJXtPNDuwW*Gzjrw-MX`kH&7yGEFs?1n36%t6?I`yxw&k*<^2uxwPuG%1yN1_P5ur7Tmi^cD9xYZ7jz~5G4lS3(nuZ3`T2J zqXB7^dcO`vut9>eynmJfO+BPYVPu^esi?(8oEZR#K9;vZg$Y{B-pEY>;IT_mf`Ziv z8p#(T=GYDq?C?zW^H9vXkaC6>FnWpgw)m?NbyAS1MolDhSP3Qs^nf~HNf((y))c9+ zR3J1f1_0QP)^VW;MryO>kHWPo&L7?MgA6PzB7VQe4qs9iscgXe;~)x2fC<_F^|9=5 zf*&?H{2=XS(iPKircw0)5)6)}aPr5oKUHR)9J3Wo19B%r8v+37fMQchS>}OS9sa6# zf|`v*R-goscedNw_*Y_Srg) l%P^BIJ&wi_cssRc7Z&EM^?Ct(mGm z;z5!wd;NZRxiNgnt{s$1Q-T#~kBpK)wwCG%z0X{8lMC9J1C)x=9v}>dLue(Te<+`k z>-;d+j@LZ w*C!w&2@n7Qte(X={dM3!y>hQdk{iM3Mb|xOpIpIT3PI z#X4$r4K98G-?+lPc5p`DHDfE>>0=;`QFt8$eDSAq~`iBs#>drL zkW54f2j#vP1|3vHEo`V}Dyj)mU<=G!YmTE2e^v`a L?^U4WR_mi8fvuUspg(x zH#e}Jk&4~dHVV#+rZ1!cxQ);9#Dqz2+_7n@)CGBLz+ME{6Bw|})_YRSQp&E& zx83RS8m6r)B>vYu=e`xdoTa%;#x_t?0BMP)gai=sB>rJLU%o3xv!5TbVJP!fHl?mq zBLEj+JC5X-6O7FfnI)dH=j@4FQj3vEcT>>q2hwqAp=T7g7Zq>!l*k4kToDqxAK|_* zFtJUFONvz*lZIWH 5Bskm7U2PNursf zsd!`wa(PS*qv;qdBQ>QXmeRRs(`{@(45LX4xSfpkoLDAemiNs{Q6$GDWMb{eq%^Bs zN6QwWt7S@JWo<1LDbv!B({_M4zPn<>MJFVMGbSn14AjX1dJ*b7#{U3JbO0MoTIV8+ zL{oWsYOKKnI>D18Nxk>Q#ikojQ#E}(EjpMKHUygqu_yfT*b>a%3NpZK-khTgPTHGE zl~&w+dTom^M`d$7-DLJvRagdSEJ%QQo9**480Z1By|3b+;$3X#dT%bY%R;WbR|H%L zwx3LPT5b!S>mA9QyQ {g$~%%hdSj>r=HjMx%(hf%g 2H=hB(rI9k=d0xwEiI~0o<=&>H6cUioR+y7ixPiPgO%? zsHi|7%tfzj+~c4CxkXB1>t3JA(@JVWs933W3wxWW8)K|1T(2{YpSsv(^;4}$N}~}Z z^s%u33r;8vv_+n3GYzR$)57AOa+DoR9b}uz$lUF|`09Z^%9mS)8S-5R;xx+UDu``5 z%Bax*5O?jqKA6kkzAK2iP0z6;)Xi=pmC~xZf*TPRl`= L@%2uUq zF!2&jkZpfn@zWgUHb`@x3#398a7$EYR|LAbCrDP>H@{xEgOJKn+^=V6J&K&e6{5%E zuqA$9ruc)9wsUfE+Dbnz=9=jNi5r3>57XAz=Qe=Zj8{PXs- 8(Q3r2Rh#$=et!i17G}W~!-kE?FJ9^uB`r%)#X1wQuq-)}(SBBagO*&>I8_b^A zK`p6ob(qQRVySA(%n8y_$s3dM0wTi$tH+9~RkMNyZW|TmFT8;_I~#p*Cw@uhCs|UN zRc#uSi6nw$ds-$jrxw~-h@XnhTHAPFA)p`WX~whi)S9(4<(5Ggec+x^@|)oxEJ;-A z3R_6l0U(wJ;x54Sj=0j=+J Ec~yQ>9rIKvK&k zLf_EszBI(eXFkg__^PbBomE> uEQsm1 H5v;k=0V9?=oNq;kYjPsy3aMFG+iOPNm`D# 02zbW_k)Rv6=+O~r87rOLj;Y8{bTEfo+D)u5_>Bap<0N#$h6AH^|wvV z8W9^;Ak~c0tX4)+O_fMpMT`&y;2)mYE<)%O&CO#}UI`&(k%SS}dyc{|f>GMf-C<&K zwCXg4sl#Fm4M1unh>5?<95dIma%V4<6=6=Y^9@KMM8Mx+jc<}snYK{1GO9!|k=_U= zr^rV5#^p4<%S=zQpfF$^HA2}5_=z?oi~%8*T=GWMVoNl}trDU&Ec_(&-t&c=Uuxvm zofeX;S6rzk2$|_1K<+R|?AgIiVs#ZOHAQ49@u^^)q?n)68p~Qt)fCEfii|eZ1_(C4 zU#0;{(+sN-KVpXE)K^M^0iVllhxuW``EOWC)ueR)01iM@A;6G9=Zk|8ZrE9<{$2aL z79x%}C~C^uW^TsBbpwC(Y-wO9u-d_5vT+D*R#uRAAOW{%z45j-Qp`>^P^dKPKqN6T zQ2aiJ`e49ZM2V`oYc47%(QYT^H_~+-QV!F8p15Lh8&R#(l&V=mtje3hlX=+BY$Ud~ zXU!~NHc;^g5NW1|l#oD~jmZ8O#4zBAHI#aepv$ITn%m5E-wi#hLk@lkda|IYPnA 9Kn z<_rsJxF6FJCnnj>Z&P`dboHv19Lft4HYRN#n_|XMB~q2tuOdvr{G( 4bz7mDNzwTLL5k z@&G+2eX!0W&w9@&Z7XW3R8l}&UQGVy0%GfTBxfWH+-PXBn*uDC9=D7WV$N$tg3QVq zpA##owTLzr1q_)0{{TEAQWVJCNLq=~G>%mQNKq(#N!t$*eWK3fSchbhG8To23IGSZ ziH}3`#LCbhFV-uTbE2=t$DuF nD mn$`(K ziOC(62#5)|*h%UKd^Mi3(^^^aQ`X4W)Ur49C#~?Z6K6Ljf0R~KqN>`Jh*vOJdWn
TYeFtK#iCJx<4d~U3wv25~nJlaaEymJ6xK{t^%Ffm9E%7GB9qeq8L zr0XUK34QNxSiv{6($$}Jh~iDbSgWexnV`r7n2DJa`{9kPT0p8LH0jgQb#R|>2$(ap zdd>k&)u}7I3d)*sQlWjMY}Vx#fxlci%`C_p6AY@(2~}y-V1Xb(`4QS|qKpWy`9iQHn%@|I$S>iUW(#-Q53EC{~wANIv)#HF&NGd{~J zRZk6BQ 862c6`37HnRYm8h3WtDTY zj?5}g(^qPGuEB|dFK(8I$7KlGmlnN3XqI#CnaZych*yDHL=8JHKx1L@$5fv!$~2BF zPExIwU-6rVOifB+ _+>A&)}IwUE0D9hF%&)GjlnW>>lp^*g*=Y5aM_s2stIp?u+*kLJd zTTca6Y~n7U8C`V&w(xHeKfWyyV0>3O90*rIc%vFws{a6+hUI`GlnLoO_a`4lj0U0K zf2SN-@Fm{OPiv+C{ z1b$?TDNUIOx_~Y 9=m*KKLL7ztuT7i1$Hj zd_zuRoP(gmECZ#_&!DyxCTPr^=IXutb5`_*Vxekf$PnD7UzmbK53FH|t2z6i06RGN zb6U?3rW-IR9a{QYB6b^k`r>ZF_J-v_m acKL;C z^J~OV0k8xWBcU5e#7e
Olw(?g2JG zEOXKqSgzi#06yzony182v8GxAi$>A`>OOenGlIBOR+3qUD&O8hETbD-gZ24NIVnhG zDzLe92uBLiRVA4KRXT(q*y^39_W5Iyk)dia_FXO8#V1*lNr9%slG~9nw`*gLk?)w7 zK=-msI?YC-Fi^p5q6r2^*QY~{a+K`G3#cuKq-yA?T1#_j{_5%jM)&G0amh+iRvNZ@ z(s`{bOqN*yL6xzNqGQ(_j&`%-g6Rs0DP2zxXbKg~0!6L!?T%_khSkih1rb$Lu4%ZP zDxEE;$lQVHj&}>@RhPXg)ejO_YG#r_mY>&X>yCO_t#0#I9hp@%7gcRh_>;K&%N8Ua zxa8h5CvBbzh19IaLb8^EStP;UdW-kOX#kvT_9{c>N~=?5A=QfNB~ 86 QK)9P<3PejxEQ0GG=xs70IvW`D7-@@ZdN?UGmZ3VuB|5aM zPMd8##t702N`R3z%7|sCC5*I!8fMo6z3^ S5B4Nj3DZ=nAGUGIf5Eav2se58V-HminJGDKTJ z9e!8>B;uS{T&$={imI^AMaXXEH$I&)OD>eFip$qk-BQ;k1YURVg(-T=Pqd|%O4%wP zj#LatwXHq(!$v3}sILYZ7)Fx aVhmZpfz7zUC>#@z>8HLa_iADKp{%qS#8z+xtEHh_BJ zM1{6cmP9oa@ctQAfjdYa%=Mfo%!_kaYBOq8of06#8v)9Gy>VMEBQ|5X7x7TpjVi_u zSSAUNUeW1VjfjZbdu}kyJ3IW746LG~1&4QiF$C?o8{5|yh6F=Xtq+w$QA%wAt5aZO zd0$XROKpV`C)}{PaCK)B?)3nL=83iAa7U&L3u_dz#CDWZq NKhpSl<{}%=o2sl`dTdR>B*!p~g}rf_ >STV{ zJCpv^jLy}Fbv0^JHx`lrv|&%?njDf@ZJL#B4W~&uz$_Gl{C|8nj?%2r+PgR_Dz_Pc z9P$pGLKy5P()Yr!S;a}31LldTmTA|dD_EEK&s!T~2}3!G6OYUGQ1ekif5Hv1>flcQ z05Q;DL|VwE7bfDNnJf!fU4$NSykjs!X0JpFr4`p!spcb;0sxRlQPT}}%E7cUtZ1!J zE{0%&z*xjZqX0@rnKa@%M4_PEvzg|d^hZJmrqh7iOMcasG{7NQAerBx+COQ-OSDJ{ zT18D7LFHKZfg@43d}b?%P$C&ntv0EzR@#6hbsbE4p7;zx(vo5*BGP!q4u&UVydJ02 z?SMrKOJK62HAoB`0SaW!h`0y+P8vcHDUzw+>QYyg6o>@%+=#*b*rVp9YjEmHs)-V% zgc$S#d}bJu7M($3!y}b73xT+v-&2PcW7$EanOXN!O=Vi5I>{wY{+Gu1z1hVq@w0-R zCbpujWfCR@h@HDz2JNep6_ix}01}BOg{4542Wgvn<1?kDWGcy7ZqEuVNrTqI76BnH zYf4P5RV>h1-u9mHJNj>jDRy((k>z1lW!Th`bg3iY+)qR6f+F11imjA+dVy({BUdpK zc!6+0j@Yz?wTqzRY30v9P3p>j^pmDwkKkiyz8nN!ib(h?GPN2N8&O!9xic}iwl38Y z4=+_*+On)kV+vvgm`M5JtP$$gqQ*{`%d=C^8FW)}PM~DLGAFI}#X*JnqI;FBN%7 z*R7&RweA)MD*}5;7Febn6Ip$1)bxgSM!8rWdVKcBP|IA`snS2pnaZ%It4iANNHZd5 z)MCA9uim-Hi#`dQyRltlR3+pB#?UQq*Bw+-HJ!>O^ySl3b+r?AH{}NA2I>wv07qu! zGa{FQZ!XF;cew=acHSc$BUvs}P0^+(!UN3Zg@vFE!97P#_~{9sHz~W5+FJ@VTY#$! zS%DHFZvcL=aBVAEnwmNO^i*By*7lw+OCoZeLW)8*n2?WhF-epj}` zY+jG7J-ObXWeJ5nmkmX@flG7;as+LD!yQ3b+NnY7FNP(GcP`CR608(hGEIOs`rGx# zQvkKE%I7&-Wj{?tY1GwFC4d(aH-LIuY<3NT*=qckF&Qw;MxUccQjS*)z^Nw2-Me3G zSZ89JIl*(B%sdvxnm+_E4;042& PiNE?T^zt D4aLPGQi6qFkNRL2v#tMp3Ku!c! zTbB+g9LA0#R0%DkR 0!%!!n+6AvZxCJhEr@W@R2@J(EO^Eze2_Ogz0-fNCk4eFf&yO_C^I@F2OE|+y zu(&J~AOWWT0H}*$1WIDB1wo_gk2S5$Qz{s0kg`c@OA-aigZkocE81E?X{FEEA)ar{ zNB1)@H!)-Bz9%U=@qXoY3p+^~)PmL|u{7S}X>RA|IDyifvddbnn(bAXEp2(HDo(a7 zAR8TBjAAsh&BHz1S3tPSHv9P`vy}KM%Tr6J5j|hD_5flhEaNRo^Ap0jXT@u?lUlPV zbpSy^1d|sqJv*D?G^1u!dLe+zn5}ktqb_6NW`eGc4Z`*!(lO2R6@HGosDxoJ1f5EH zD+Vnf%79!A`W$eX49~exC9G08jSW%Ep^FEYZ9sIB9V~GQQ?oMb0WFv md2fxpJand(t_0$_&l39w3?2&jnf!Ijud!G2@rE+27tQe9{G*^tnUWqfme)G_b za?DOVmp}{>*{XEwYARK!tP(cVHh^zzai7(k_$q^wJ*u50QkwCDh196_4RB+;ov|85 zE~!Cux68pRm{q8*(4ZF5+JQQ6W{h#bgJwD6tRGHzC3J>nWerI~3q%nc5`UgKsf1 I+Rq!_j);w_%_(Ae)w)MVk^tRxTwk={Gs9I%V$ESN;4nO2lf9!X_z zNK$w7weW^^TX%A_crvQ3V^1z3(%MuoyzED*JwJSMvqYuC6lJx=0;y$$Ew}^$Bnc!( zXu{50M4oP{t!gg}v1Bb8m;h{MZVy~d-UOemD5z~YdTRq~2!Kf>NEiVz?Od}w-DO=c z5}8#xg2WO;Zzorz;%{EnOzGTWR*=-E3Ly}?v_Udp^dbN=zBKR|rg%X(%P#)_vW8`J z3Ki@D0gpdp=?8pFL|P=Z)` G)lZmO>;({=>NByA__ ziGfbD5bTP?sH&vO@gta@U9E-NhUBCJvx2Rw8Y}{m;cQL1bq5U&%;(WGBeaH_9thCD zBetMNQY}81G=f`6i4${k>UE_65wO0~`e9CH=bW-p@xev-VR?YmK^-0h@6y-}2ijWe zN@{Y$5DP4W);0kCxK<%_Tg_!^Z%UfE)JOy#Q{U5Lewc7E=8VI#rCabzFCx@qas&>8 zyn5hEpFgq^zjk|8R%2SESQh|-OqT%kKOu|-0h`el`fF;?uBA}iO*-tN@i*KK!vb#g zpX#|~RnovDzYIy6h>5uQVa@E?Ky4|hQ7Y8X^%%eldypb#U~P?h5)*8X6iWKJnAk`J zpU~UBGqt2F?290x(nuO!pcX3@zVrO?h`SXCK4oG(Hl0j$7+^NI!W_-BQk|}?%DQdF zV6Hh<0Ry6rzdu2W7{i2o({)N!D@|3j!;*UL(Kfj0g?H+bKT^TNro`*jv5`ET{+J{M z)fA;SR8Z+FQB_Yd65xYjypFhHA!|v JAvAEnBm5#v{+^giQ$8uCEv@Rb z)YXMX4kqjmPpIiQX^FOb5xiw0tyxi3>4DD#X=8o1GvD;W33XP#njJxvB$2!bFk;4I ztaQV>UW2z<3T~<`FaTf60B!r5U^~RNk(=gHS(&~jRtiX2l7M&hHntQ@p3+wl+=iP( zEAzUnfOfo+aMAg$%n*nCx}uLsW-v+!5J}Ys<@;e-?4}y5sHa#pGUHr=buckw*V7Ln zKU(#^lsa2a#8p@u8!R5U$XS^cHyknxF$=2E0Qz_JoMnb)D>?K~thFhD0G&jVH`IHJ zZ|Q>MEK5QJrlo3%#n?y_0Y?6v&uk!!M$*-6sZ})fkgp&?HnfR=4@kjsCmsk*6%DDS z+0>zkQFGIl{V*mW8Aru9*(p|kcG{)1?lpIt$F3S!45?r}QbNarS*4xC5kKM`ZGz(w zm2Iu1A)TB_*0i_1=XsvH;G5Z-3{w=Wv1zkYk;`wOJx|QyaqA@+W?0ar8(TJkat_C@ z@3_M}&QgnK@QZw^Yf(9RW(-3G(FXnRzt0O8mx@uZf*Q@J)F$DZOn?9p)b@$P4Sk4( zLe*fiR;nu6o=LeP3`P%C0+ooWQq0Y9RZNLd*?N=dfpRjB%MAITr%Ww)0imRm*hJbp z_Q9B?+N~L)D779O4x$N;qhWpiX9)sIO>4;oMP_9MG=Z~kI}-!08NQ_K_GaF!)~vj$ zBpVpgXMK#1+X03>sclUv!pp>geG?;a2T}xJNMXa@1+7|8w9RH!(#plGVjy-0VK_64 zvl7v>WlJ#TFixTYKbZO$j=N!8VQ7;~hghcE+*qj#0RbOTH#oGU>1|7A1%jF4QwCTN zV@Tc(z+z7>)Tyo&JQk&^T$NV7m>k4eezAul*_8n=m0897O`=y!wTzpSfC5uYltm3X z+#Jzh&=A593A_o2+ rJ%<(XKksg=5b&C6-nj-#(!I2X*PX40~XjvSZ<>cab*-?_(2 zRb*~cC4Dw}i%?9e$T1gT6La4MfLL1$<_cFUXt87YRa5}POp_C9;;rMk2dyzrnOgeW za3&N_bNumODRbncO8RvLKt&y9BmuE 9Wm0)4$Q%Fl)_fC$uUh$PF4>3K?LkY zu0R`si#13UMK*g=6lv6_&8eI&%^buCiJ#jYB110)A|NX}(^PA4ln`{gnFHa5j->UB zbO8Na{{RXE1mc^cQ-@fMO#|c!z3uhKP>DE F-uyyp0!ZS`u_knrD-;ZpW7XDZx>K9uH~@cqSOUUzLG#Eq5Q-fPfT>tP4Mo; zbCk}Xqorb+iIWVb@Ce`MY;@5HIQ&l)60X(>ysa^)(?#VY;JhF=+;@z2OJ>)4=QDub zwmEf1RoBeQG{oLPwfkQkAOzM|F{iS$LR68gG29Ko^!eka`KD%E#^tkue=kjGs4J+D zekmji@7Enb#C@s-Gwm&gUYe^AmbHv(zhY;u_~;QQ9I}+;+;}a9R;1Giio?F40L}4m zVw%wQu5xXn6}0etx%<@sp~}0dGyW;G-bN^RkwPj2aI(Go#3`*z^D$=CP1#KR>?ZS$ zkePzg`P8)(uv*sUW28i_!4swr!#_MyX>6pWapCXm%U_tN8sKOunt&rnl6pt&g3V 2on~rEL2r#g9mey$u`-pmlFL5Q z*3?nN14|PyNZrRlI5M`l5dP+CCSx(QH(u()~7V9QK_*HP*hL^S)9ZZ{{Va=xj5|S@~9;Zm#rtBRnp BI_~xZJSy!SF56^Pf=algc zLUpMVAWEPXv|shdEi1&gLpA!YfZ6zI8thh~Z3`yx0B>R3VkTnaX>^UTmk(90&T^`+ zGis1d=T`p!`_LHWHkn?F=1A7!D{_?}wTS3;CTu69V~pi;mgUv~-jmETR8yyxA%{Xq zf@h#79H&t$vqC9c#IS8Tk%fReX&10PM{IE$l*BhH3yj&lBHCCnX5?F_*lF%3xwK=J zm{&;DR#KI!2Fl9IF=L?I+om}wLSmSgNHx9*T-P-kWHQ{SVyBn)2lvEH;#Rn-(QQ1e zl&PfKm?;5(I-n7;Cme^hy;-9zq^mI@iwiL(1;Bx@oIu=Wn-z9%l~TM;Az%E%eI#lJ z)J29lj-_%D+Lc2vWh@0&Z_G?V=^&oC=YdN!dlrzGuWb4y>48nDl~JIR1RD*(iQm@} zf2Or}YwON#RMgb8{{RpbD`B_>1c^7;Vq11Zv-j{+vgKt}#4L|3t%Aw6 =Q=+tT*J+G5RU7Akn0HmRf; z3M@>sPe|=-2uz+-O1c9n{HIVP8R`28!wjfRYGf+Rv|xOCjOjXv9lbhZ6t!nO)_tXv zY4F$-V!?qBHwSY)@T73;xz<0c1uUhgvhpj9t#R7@Fw&J)szNr9)BI&RYA7HDRx!|C zLG6M=305kJO*$=d3Y$ROhZhn)c*Ic8nrYO*RjDRy0h1t}pDY3{?D!>m?Qu}FR-`>k zfG$O@EL4A78#^eGLddMBucQLnNIwYZ2XHYrah72ip)x9r-+40Y%w(ACEpC(B1c+ru zSc<~Mssb5RG@U0!$s6CN*RC*xHbpF=+|*GTxo*Q%tWEbOM)7Phw8brX!9CW8a>^_f ztP~;>5=_UgF$yL` T8V4&u!}_AF`;KUf|MXuRy{`Ho5q`%v|isXxJH$r zIs4$5r9$c|Q!*TdCs8)vr~2!P2@J!%Vwsj}8bT7 %vnc+H- zeZeQ?{BQ(*RAsWFr2wj}P@PJ|L~lL+0M8k%EF@i3l=aeBV<%MKU^ %U9_YA_NSgMwl)RF?< za}YZG@K}e|DN4H}qNOpZnM^zdJqFRZ?r_6bnj-yG4W^w&YIl#!-;zHui2X2-jhqo` z#e|XRM$pBWtZx>QZzge?ezPs~%86X+mX>7=@ZQ6xt~AL$lohH5tOk}T16+^;iwK`d zv|)g3tlK ;OS>N#KeJkKrCi(dk{cjn2_9rTUC$J*jUN5or)Gwtgc+CsKg#% zA`H#PPT0gyv%x79rIjh_tE4eQQF=fmdXMRc>W>7&^CG7ig>_e?pur+{ivmPW5b7D0 zj3ucD8 TOJoD-sD1ZDS{|(*^1qNIbhFu~Z_p zK)gdENa~i7Kb`?swc3x<7)3^<=PufuNth>DA5O;zWAi4o<7VepQLJgGU}|k7g_58U zEIQcXim^#bv8!ru8KF-$ku$sl^ZH=Rb!$WAK(xx#fb&uf#fcN^Zj+5>Qk4=Y+C;9a zQbdWk7YYYU9=&jWp}#%oL*`MZQ)xO#Qv?oC25d>%aHK;jEIsQQnc%55R@mt<0QJ5! zW6y$CD3X<;TACA}sJjW@wfBLCav5zken`&(vlTSz8k@8;TzrR9jTn@|mS2@kYHG@^ zO0iQdH-p}Oy>OPEZsnQDWj8&w216P~k>5xkNyTLOhdHTdm1bj3lE8ze;I{fqOb(~9 z!;aOiOEh}OnxNt~ndKa_0Kw~gDD2EhL`qqaD>Xeapt_%i#t7~V%;PZ(!-F~y@l#Sb zA!6$UvKtP=soSSaSO{2?4P>mRQ1IEbvYm*wn3&tH3rjSjpmQ~x6^h1-2h%-)?bVOd zzA6k)p9CzOl0~a#X3(y5ohk6&r*VuQF9nM=`K+}~L6NRQ5im&F=eMRV6$p}8lWe9I zj=G>SKr%oERytp7X@+Yx?@^m-(!QlmHDL2dz@0>O7PnK1fD73w)WAiD7%a-M%r#9@ z&bBfwd*6HGsAX-OD@bHb*qO`IR#4Y8$j}Kkw`lqG-xYdD5=Sy?DVe6ws+v|JJ6 g*)|=i_x?P-Ext2 zu8Lm2UqNTJL z)EI~xMD&x6njsd9x94(;x_c+3d5t!iE7DAEBYn5WSTQ)uxpUIioukafAxV9RBUBEi zdt;~vv2zuBN$i^uQ9@{08i=_T>_8u`I%I&_{3w^qNvw+sm7-XvxRcmgJu%iaV#*Ys zO4($ohWNH-jVfSj+fUTr9U}a5_FT>-vbH%jYE)QgsjjPB#m?Z{Y+OiY+|0R(-pMst z&h*U{S~UzFS7;;yZk9b`zB@o-Hn$|cBsu)8wpB{760p};Hv_M!j9t7J8U0IPm!nKn z(+#YPF7gDK`FF*biN}hG6a+>qW#M$oc(oQKR0^t2;FvQc{Vm%MAJQpzB_`PtUhm?H ztC*@7(G?ZgGmWFPbr|UavPFXVhgn@#@48C0Hfm`rr&I|BMY@6p(ccb4Qx&CxX{{}0 zZkcM~31oAq%uI>x5Pc2{Qb2woEXD*pJiSsG)?q|zWeQ}lTi st;yljd$b#tBR zEag-xsI~{1V`0`KdBTvBmtp`tQCh6!MRjI LA>A}Sc$u{a-fLIXp$9_S@^WcCql#(KQVsW;!gHuCPeEiz0x`66_l`G+VwCI z)EJZ7`Qm >;fWN^s5Orzugof|9#tbm*uj6${{WsK zb@#5Ry4i}?)~~^)MwV&lK-hm0Hpd~>O1G5WKV`1X>87BCgjtXP-1P^p*p%BdRTa_= z*17YBYDm_oPHF)y21p1-fB?0PxBBChsD@nU(OQkH?nvgT>az)CVF5`SiMaH~8J}5p zHq+pctfr$D=P%5l3jjyyj%sOx!B_}bSZ+yYSkP87q}~nSZ4hJA9CbNLx QWE#^>l3?7- zi+ay|Ov=rb& C5T#+- z8=X)`W>rN>nxP4JcqEIhrsJnwvCm2#3c{7CFIWvK10Hra5-qo=#7v+hMcAv=e+5-V z6)A$6>C={F1Y6_*{Yk_~MTm&6WZ^X2RaF|A)UeWq>OnGllN;d(UTaCjNx7={(U)M# zqR@t76rQAC<%m6YrnyjA0{$7DE(^&d#1J-_{cy96%*n~3tEkmhoR(lo)W$4*KDa?) zjLQtJN&<#gKLC9?Z8A)fB*n2Nc&b|2D%EVNjjKQa60*BfHi9pFOh~Ov^|~-5FlnqV zvZ<;hi4t%0jAE>W{USDb!X3Nh}D0L0-QI!WTU6ME?M4B`(xlDl8CVQ4=JYAI}&- zI?83V)u?CHP>^R(xRD6Mq(&LGWhCtOc`T_kS!yws9K;Qt-=X?qK{Je^+59D#p2`Y! zk=Q7b#KAHJ$&w`WICBCx%bqT&aP25!v{I~RV zL;UdK#o3$^b&wqu2v!yZPQo|ZHog_UTr=W}e8`$rZZs2c7QoN_?}doVYdjE|B{CgD zip=^ {xWKkbTImSL?lY}w+Dn`vMj3bEP*{P2Zck#w)KXD+Lz4-1?)24IUozfrND z*9O$WH>Ullsy4L<3lkucL=q=x^%%n6GFWx6Qm_=GMTXshu=!&g%vtVOszXtK5s(Ic z7={D4L;9Q-`jcO3 -!*R;*IEM%MLapt_ZcF=HST%zj?D1zrme z%z;-!3FeMK2SGOk-uMJD{{R_&R!4e#uC8EQbtC#lG%l573sIJ{EjDc@X|%4!4&Ul= zPOf3yy)a8G$gIQ_A)>&kzR*Y02`mJQeOcy}4Mr5&Y6s~6UqJ@uHyCJqz38x)SMrE3 zrUVy)Y)QEXb3OZEh`v;7QqxVBQ*ssn$v3fyKU_-jLSgEtS<<1DF`c0A>xRE)?1Q|^ z6`3FfC54^aZ6|pfUk@#FMQ!_(R8Y*ORD%fDBTy&w*kL}EhN-*$$Z5~S!UCA){d)Do z7u8>Caw$etJTlbwYuI-;=m&1Nn2^nAozm b zS1NgTwYpmx)8eryW_oK1byOlJWq@WsrWizAw=HL^vyZBoV055E1lXUQ$L)**^(^~V zuRya+O-(RFX^yt|zIa}&sGH2ORMb|2!0HSL-Pd>{Y#F;_;l*c_kgBT!+KS6JNCU6{ z;7l_RqVqMLNVT;!j%gbP7Bg%5-v$va=yh#fp9D)q6mZl@nEwE)q=6gngC4PGa#;1E ztJK_pt8$1b1owhxt^~Gu< POH zo6Ppci7j~U^-)nvQ<9`>g^k6e5F>wFFpPTH;(*l!3ZXy;St}9;=m`U*`{P18OAYo_ zjT&^4=Sob-n_3Awi~=56+=Z95#bg>KuRDetf(G-p77mz>FhNn8ol=zxY9z6l)2E?> zhYqZ(Gse)|rDmNnj9*I;1w={cf37sK!#lecD(xs`Wl$6db8dof`r8UNvr-rKB33mN zu81l?E(w)Cw`^~yO1}ghLx1kW0r`xnAdm-G`rx_7jCd@?7%8UC&@}^j17aXVeRsfi z`LT!H5+R#%8k$#dj6NpR4(F$#{jr#1wSIfh8pTCDRO%Z@XaG*5>SOufi4Q(2J$6ad z@fbFd%xovFo9)~jQg=oCR(;+pDb%G>B72|WBc=q?jJT~Z%B gDP#KJVR z0uQG0BNm#==kSSa*;gkkDxE;o*maO>2YZZ4Z@NilP_*^S6fRJPlX6Jf;Qs)lj)Eva zMb;99nV^kTnRPax3hLAx7>||_fLNuy0cd}XSiIFF**+<}k=DnpqvePF*Y5RGyJZp4 zTTrQTdPs)^SRYJS0LO|GkQJ3J_|#QQy-k3$D-YKgDlQ03AuBj7PKjW!0Xl&@{ZFPk zK%!EW{z*!*SEiaOT|+{wNFZNvBdp+svYS1MCOuVtU745$Di9e_1QJfff!DSxXEmgx zF19Mlbkd^fI$2<`KUlQ< 4VlN#%`QqhdjhxahL{ z^K$2 Hw1_uOm=}swX*6a(=Co%ve>CjQb=JY3AB3K6=`0| hF+L$D#Vl%C=S-Y?R<1m?93xt 7Z z7fGn*vdY1LYKnA|E4Yh&F-c<)QH31CTK8WRqV3{U3DP)hTEqo;CL%W&a5xVK@LX;~ zF6FMSrE3*kLG+eT#4vcbZUFf}2EUVwImJ)uB3jJiwp~DStObk^B1cK}-x-WqP$eSg zm?X2Ghfk5Nh9m*G_38)H4hJaAlq$40x !bu$yH=`zmIMYf=|AfD `Ej(gIT zDmIl2IaD(MU r6mmsqqOQdMTE1z43+ z5Cq?#i0`~(gyrVmd{Y3-sQ&<`QCMvPP+IpR=6A$tN?S!;O5- 2Wl37StxB^AzxWvdUO*B_Pc)O}|6Q!9<4IxmIY3z5$ zG^5(rr)isMS6OvwPEvIIZ4*7Z;JI3v7(&tt%y=`V9Flhg5fRg`Omjj!q1>nfJJn56 zriLYT2aP6fVk2>YQtb+84)hGArCF8@ dboF1sG)$H8s8nRQY z>Rnq%j(8vsm9U_DG?ix*(v-I-c+_IDPRS4;3(1|Y`d~~Wva?Kw?-aF0q#9-*-r{2C z(|kM$t#3v`ZR!^}PQ5{`klRQG!Usq**Y(CC5Lki;swy`+)YT&4T4W2!y`!!WOj;sP zNj`JnqMcN!2=x>bxwgXQcEijv+2pZ;#i%ZLk|spBQh f&NS6BiMF#~WhFCn12`vYl#eP%jWDZN$kW2$Fx6GnZHK*pkqW ze3X6RbdZh-i%#w8PeJm=sng31q*U1!TAPkgR_12?XKW+OG^;svRMX7_)v4()y(0uc zBWV7(aUn=U8E@a%hK)r^Vk!+plHhzoE-&6NNX7QC?pVjU4z7l(RlEs0WKUmB@C1jg z2&Nb7UFfq_CnPBXAP}Sr^t9U8!eRx!v{*@J5h^hvppXk2#)#`PxxhCWrN$_|a-yf4 zMy6ENNC-)i41?J3d^s@9FrYw6RfSqA+J@UH0#x6BPuB|WH6@G-H>l$)Ur={u0GS`D zGIzrXhjL<>yB02C8F!?nq16+=Nx~M@_aO-H&I(RpH5D~LLM};>AL0K1ED|AdV#Si$ z+QngItiqUZU~XJ>>^epj%ouayy*QMrDl%1F-$}fO5I_;Ryo@yCHJY7anq*B qoezesp56Ypl2)`4jAl1rdI~*kxk22EddX}w4lo>-H zFt{=6=@W*HrLDHgwQEvpC3u=@lOha9t@ap^R#++A^D5UcnspXKFhLP${K9v?S=$s5 zfl588$O>t5$!4lqbq=+ulG7v`2)+J&ai*MvX1QmqmM&_OIo9gH83l!bAle2n5V*}& zaY92 uLRPMr6fVBBz)@#g@2mmjpSGZ8AE1@D5ugGb7cORUdd&X?O)W zSe{^m_1_NCZ>scz9 a66>6@gT^b4!Oqr8{1p&UbGANCtO0@VTe=9t!?qqLk zz`>ZSEy+r0n1ved- S7*&YpXRw;MyYNh+g_k0Wkt97eKF7j+@?Y;36<+jYBkjX3=jp5 zLmfIn?}~+1i769HWiv*aB_?63Q!xNAoxKOo6%&cIS@&G(^;K1<0Mrn`4=ZlnrvCse zbbxWaPWUFM(;PJ{8(z~fpn7!2L=I&mD^p;a%Ca>;x{bz}kARJ~fOf^%%lw!7Zd~%; zFs5>}>J?TG_^L>4M99C&*y(9=n%6my^{#a0o+E$c@W}v~xjV!U+a1AUIqgxiEt}I> zSX!Tn%C~?_Z!!o2t~we1TJBLNvn?8SjTU7H!%HYEswUI?F?u5zx2|#_nLCwcqgq+h zR7{_Q1KMKt$6XUy+@NC>u*$6@fS@d?AeomY_Yt>DbO997lIDM_EVdao4VpZl3S&tM zHj9Em{{TZBAU1c$H7;Y7rQ)8;(-m1*9Sknp*q)=cua2<#T|}x|3T!PpW()&m)878L z>H&i0n1^L-=&q&K2n2wlEdZDxle}WUFtvtmP>c)VmKUdT>?p`IpHby3ZmaSGsmE9Z zM|3mXxyNTUr}DJbs&bYffMs?heqU4H77+QW^iicEn$}%zd=*0Yg)*tCrln)l5=_7+ zpy`S*&NAT2Gs4YF+x$&*RLn7A2M~~6WB_k&gB1!vd1ks7E-`ynv+lK- {AxIeG!iv=WjJQi{Ju}Nk$(PCB2G6^gJo#Ouh zBZOzN gkUS!z*obg4T429iemT!L`sw1qbe<||*ARjZiOt3^Uq7>Fi!j)Y+( zF16d0Ma!%!Tb!u6iEB6(Ry`)oJ$Aq%E~+BLBQ_Yi*Job2FG7hO&!gh8dAOg!}T@3tmk5| +1 zZ{DgbL_8L{reLarOtmuLFhbj}Sq66Li5nMMwr>8;3gKOnNoGqc9S9Uu5)xpb1VsG* z0FF5+W|q}zu@>5^ir40sQw9bvsO faiGwOzx*z}M#w_GE%Mp0-gUL$2wQI}Ly z(WQh2=s`BWf1V~YHqYHro8?28rNLsQxv9fyxUsRA?TA2MwK!Ix`PtPj>9Lsr&g1o* zOw6pT@75(rQp`d-Y9E||yx;UYj3i;s^z+NKqOBcOAZcKt0~or@!H)aj6O^*Tv}dxj zR}z@iUrS7ZxHlR>^&4VsF3`2fovmlR4OiD!P-kEODWprWFam%&lW4?Y8#3dVEk{#J z4r`~qh EuOF;BK}l$IJGbKexOuN#%6k~{PleH1RQ#Rgvr3x~uK6V*2?J8dJM_n= z{+pmnFTxgv5NC#bm!Ca9Ogmo~qV2x5H9e5|Lo~Gud0)#)0>N|P)aOt;f&@nRE+8 zoAd%an(i1@syb$x(3HvhUpc87`x)|uZ7#l0^2*f<1qMQ#xfih`w|rvNS`^l(M}x}V zJno7g)O5|Fq$o#vuPf}I${aH7y-M P-RREeLm2eN|T5ZSj$Ckw^JlY3`)6`DpZPa}+Fx9#Q-{Ba?``y*_ zeUJGussP?k^5N2?r~H*O(qNc^3Fv-UfogpYU(=x)@PlS6oV4vJzvCB D0ZOvUg<5&0W-&)rzGtuPAJA##hhTY8+ovHt)j z)20dXx0b|NOJu1{AwMgRTjFJ^bS5JI0B0WNhb6zC(wyZQLVnk+9Y13}PpQR!_eaZ= zNs@o$X*91z7Tomz0Mm ~qSB)fjn0%fE=1 z36Q5QvU(8{VYVV#qgOV~2tl|t{n_5C+QOR8>lIIn+@t>h2z;Nzc=E4+BT&-H<*3^!T2||$%|O&PG1aZ3LM_7 z;HanUf68^0U;Wkc=~ghPJUWqQ9gVi?F^5&?OfwY#{{W@0-=5`*S!oS0{8Hx^MO)bq zl&RKKK2!4YY7?mB5P)D=ZPy9?CqR~Apa{crN5|C~Ek8)w_=N1-Z&CjMguYU!#2+eo zcr(VM_X }e@%b!(v$X}r|f6Rl_|JBQ}WwXkSbMQ4?q!MnF0h)d^zfk z3GEdK{{W$uZDpplp`|Vj6
?t}E`#PLdlXV6<^v3>|piz{iLN)yjSKBqC{Yyw= zm*N+D)UuzlA1i5r 6@qQ-p~C10I|2g)LQ}IEefZXjK_o+PuMG))f0+6q~ix zlzoi(KFwRoK3+URppoJ9WDsP50_AP~rwjcnLTe*J4(-9KY$DtIkS$@QFxjMj_wnY7 zHSCYc%}t;E)$-xuRfYq@sf%?@qkYcUaMfA^n26Aab63S+(=>+Kr7O3;f3nJc#{8T2 zcBDM7<(icBX%!P8O4|~$M^5Jp{Wn5;U&{sCo7=&V{-LD_P4P-QqW$cJy^Q%sF_Qs& ztL4r|2ukEBl?HmWY<9OyVbyxMiq!~L^tXo|E{p35c0IDKqkp0-$FctaCoL9XyS zl!%lb9ZCZdU;qZu(+oPJK-u^qzUJ MyXuPCgb@_&~q)OOI} zd_I%`)SF3ziN31PHoge6HPL2#x8*bGdS=m56IC1C8+#q{ojM^Yc~i^Pg0NDKIZ z2(bMy2UTbWMfxDn;Mn#o+J2GNq$YeT@y$yY*(a1!Fv0w(< cpl(^SaR#Emh cPFmSDs#LYd_zV2GFlY&mMZ2G{5d zMdNdKZ?7H6>2&=mh`&&oxxRgr<~@x0KQT;GUn%)jb(Xv2skNpF20F* Hq`*t z^fzL|rs+YoNL}kHdmZw7R$49PFE0YLfK&GhMCt$nEFcmF6Z%%JVQNo=4_@Z%S+$Op zv^0f&_qkNw#{8nWhI8dF00lJwTOmxz5n&^_`QxB9UaoNwDiDVz_D*_!l-pE~-j27i z{{Sb{MI*`{T&7G*9}lHyFj@fb+k8YdMu*m-2X0NxDC-?6*XqA}=h k3( zrlyT;kfcGMLI{ElzieCjPKsk{gd+a{OfKD0AJlZm{{W2fhWE^OqHklqPo}VZspaGe zshAHBq&STPX}E~LOmFEL0ooc6uY-5 n$VaDD%PU&gD%{W4=>rD(mGhF6yS-sxlPM z5D_7ui8kqs`m0w?BmB6v{Z>V_mXPHy#wKoeaQmxi`yKL*lK%kix0g+203ZFYrZyyy z0RUgnoFQth0%=N&ST{2^d3d0D$4J@uq}{40`yujmOwv71D|uyDfY9C_NUrt*(YP@f zZ|PdQ{z!6$Vaa0FIz_M5F87Lt_BZ7!jZ`<4JhM&WKyMGEs^H$%f%L)#r_dVE(1Z3h z>c7- 6{Ww 4NBT3pu Ze*{lG{)MbC^r>X{tx**m MF=({>-LWe2E*L z_;2Z25s?0f$A~l|$v5-bLzSvhfBMz6y^#4zry1YL-dj-78hkpP*S_BoBMRE5Kw%Hk z7kp}F^sf7tJszE;OJ 49fH7hKu#q?~sx@(! z>QDqRsk_yOTIo$|;=4zS)too4CHCF!JK?$C538Q?R~Ikhv=OQ|g}p-5bD&Qx64FuN zSxF%6V~-`Sx)=vV{Kl_m2ZqdIFZ*$4ea};`wX3>GN+t00$V J?oc(>8R u5s%J8Wu~e4`mbkYhGiV9$`Q5@C;1MzHko3Xwv??i$^$--Apn5Br=`2b zG|(AiSCUtFB4etZh%7qWkWIjj=L_(K_LjQQDB?9rbm}g$AZZW-Zb$LMOKW@ x{$v4n<`ib9pkWepZ;RKR+A*bPKXK|d^1hAGTSX{J|GRjHR9Q8g@W zAng&p7GY~y&h(Eo_Lfnt{t`G~fdWFKdiMT!Yng=u@j|LqSQ>9p!4Nkdq(S|$NxHf1 zK>4FkL3Dw_~*^B*h{F>xug_faMnSxmE2fUZpM z8&6+cQo~@2{KTxvs+utl1Zfj;_w? Cy(Hsz^5iM*DQW*r-cc5{tZ36zH?F20B?T z8*N*_1N~nX5|0%Vf0q=+BULK1YI49_2-xku_Qz+{1v8dgNu0cKA@zq+03hB7yn6cL zz#l4^{VC-|RUwIDn}ehqSp9x@=n99PdsiV8Hgm-@m#4(6Cr9CnYPr+ApXWH}3ih-1 zP%?Ii?@iHB#!z&_F0DYofGni?^o(@TLG5RnnGs9LIYCQQQ_Oia2RlSg=e9b+t5@a= znBGydy*o)?hM|V0SUQXX;K)CxTy;>&+bRS@GJ7t%sl(W>Sde Qa2NhprjHZ5y3>tQI%{mYsPH=Gq50wOb{+TMX}HXxzFia9E}G1(Prfe zAVIX5nU21=>!H|O)UxcA$^5M#%o&UD!5q8DCezrQR_i2?h8)(*D^2)8U^PN+HA%kS zfa9kdN+NNLt8w8uWA~&ESu_ # zocAq$ai5h1%Bcjl;Ou=Zguw*!o9oOzSPG^PUQX!_|BI zmcKB?vf@`lA-<7wX)|fJ@Wh_XWvx_Ydn2ApUd%Hz2#s2Vkppqm%ty-{#xlaYs#c=; zv-eu>6qZ&D>JI2kN;LH9cI$}QZ27L5CV6w8M2=}gRB#FvI(0!BN%aG1#~Bcg%IFE0 zMy0FG7EU3SWo89}#m87NXtp9{9g)Hdqy#pSIfe|yxRM~TCG_(2F^)4Sc9q0oWKtQW z4VXt_M5*N#C$Tfr*BsQPWR=1!GRl$6DwcqFi+0s>25!U+;~X@nNaLR6+eTbJ2|A7$ zb&$k?2UgKG{U;no {1{MCeEWh0(vX?X B^#CCJ2<8D3L7x8ngbt+iIEmC1aI@lAypMn*-Pte z#DlVkAXr%1cG@vAmuRyUQmIk>^+_xku_TDv+mGpp%?nDBl(Ng5;;3ya%1=ABfg;8Y z&-Lkuz@@a+s|?OoZdJBig{Cj4a{vUvCenK1MM^G2NvE`dW_0rrxaz_T6FU=xHX9@< z?CmI8iA*_7AX6X$(gT7f=hL<$Y2^~nC5T8#QCWC&)^s<*OW9U8C%l{i&h+3>D>Wgg z#hMP4N!QEDB*mu)ArW#CPc5Em5-HPC#t_dUnEAo!7zD$zJpTYGrYByZ?sw%B^H;a5 zg-YU+FM?&Oc#6{?6)u1+J46^~2mb(h$EE0gi$zbZ1LF;VXMWrl$JdnK4?!^)*6ho) z-iuzCN2scWivSE0zWa^tet7+E5w$Kndn3<=3&1rbr7>qbE>+W2r zn9l)F$TOwC*&D>PR zzwzf46x&vn(xNp6It-8?gC_A7+X~_?MY^xQ1ZA@}9!N6?`8f*e6Pt#ROlpw;n@36M zhjRzvcXJ{oKGtFEik&p6ObVivg8~?dxPm|ziGVGHHZHDsSL4p4W-Rz$S2bliZ%mU- zbvR(BPdhoVCg#vB{{U KlbyiJyH1+&4Zsp@bf$)RdXzPPbD?>4_cNM8? 0e17oFXh>4pD96Q+wG+WsRYi6TS(pJWxsiM0U5AZ)E5VZmc4F?z zs_NA^bhRxov!z$zB>w;dhhu>JLap m-!Ttr%;ucc9TMxHg^!5d@fI>;1S*tw z<~$RyNo#%o0BrapT@@5Ls^x&4Ze?V^A^;J+t%aCow9$8HKMs6%q_wk+$SOL}%9(oC zWpDuz77)^V^%&BVmSc)ADTb~K8llqe$kg^C4y6E-an#Jm&umNSAGa=Ty)+~nHM@3a zF;h`bDIzYU0!7&O2EYTf^~XVVgl?}tjp ;{KJR$(?pkPBBIet-BWll5qX1kZ zYS7k$VPZD5@fs>P4A{4SIHeI5=bY4sOH`~HR75o;ATEXyFEKu&6kr!0UTudDboO>e z_v3%J1)qy*gubfUhy}?7hUE1E_Qn7i?G$c@E>}S$0k&}LSyH8CS|BtqyVP((5Cn_- z`bVw@#k56tpA^#!vr7hlJl=_0jH&`jR
#r%92cgEdbzk#?4Tw>^I`hk-)oM^B&bko*JMAkQHuKk0@YUe#Fmw zEb)mI?Q}al6&?O))!&vyPO7$Gv=z#%sN|4Xh$288HjHNyYbAa8`?@mOm#*yHjE1v4 zHm2p36H(#QW2kC?0JMmJ3GI#W!dpWZYU9J#E|u7vWkpSRm0BlOqU%n>R6rn|ppz#1 zVW?{xSHm?Xc7Trz{t#R5dX-L-0J$ZIAd#d*Ui R@a{fn#haY kGypS#f0;Vk+gKHBwaQU!q>iu~ozG4xnRZfepVd9vk^=DfPlu>QS zH#g~xwlbCvSF@vO#%kTOhXhM1&peFC0RTa8Y-FENKRjVFak9{_KYhr;BE&V vvWz@df(R5g`V*m{W)RSss#&Mu+CtoFPx{T-kY|S21A=% z5`Ro1(TTut!#S-QQ9m5POFt6p6&j9|S5y(Ci7h91pZ;eKRfx-Xh5N6I;p~-!`onx( z)vZTTn#yV-(Hcpg%BIXMsP{3`6Bmc+{MqH0Bm)_x&3+2J#T27igKMY~o~;oYn5^lU zi}b}N8Fyj7+Uwm>sY%Cc@tna;sx1^&O=Um?h)pEO5wwp^xJ#l#+nig9oNYN*4fx0I zrCPRQhJn_zD*&}%mDFtj9)t_};KGVYXvVKkS8O@PC@=#|S4C9y9*sIenQ*AZ+#wJc zS_!t1+qM8v&oxy;b#U#CYO`%|%y{xqQhxAt5U3ekX?Yj5gv|EEoq|CeUhlsIK;y>+ zWlXxYLV=2fRi=?(ddJL;{V_6V+T)Htg{HG;QPtt4^xJP8;r$MZ{C4aJ71q9HL7u`ifUvHK#(8> zoyeJy`{7{$wO0-Nl|)Ic4s+nGsaY#90Mcco4977H3{1u6(_@VYN<&<3`{w022s?Py z_S}WE=5pjAslqyR?o^pO$65HViIme?y1o$32*tpyU!1aqZ@ej2QqVN6jY^l^Nx!AB zZ>V!tA9U~_nqGU|PGM=SOQRyIN)b>4P9OpgLpLL~BWhuqyxsS?03vQTVV?EIKKb5F zq2%9h-XT*gwHAkrWvO_W0^ICKr~n%R>RbN+ddKA5EYX64SwF*twrB0@ce_``d;X8< z2TP$0*MqxzcvQTxRjO15O2Hrqu=$*MrS|YyObuU?P3}4o*ZSZTtd-_v9H~qR8cE$| z{rlT%V?E1b?x#@UwCW@o02`Is`+ac1w96w^3dAAOx70=chJA43wJ{_jk2E|q(xkH( zlLX9;vur=a9m&Xv(W`N*QzapakY;0Pus &d1`lU*L zF(Ur$bQQ9 I6LIT?Vka9f?xgJ%de7n1Jb)c8WA)o~Z_C zl!p%`H*Tn_ej0(96qaCldlS-ZKDeOOXFrsp{ZVy&Ic-o@Sb+p`l`=Nl6#^c%3Ptjl z-7}X^^Q4tJmJI%aCvKL-LAt6Bvip_v+k(xc(=8%Q{Bv!;d~{Krn^iV^5?ZNTs%grV zVh}_U6u|3y MbZpP81#9i5ZN1|bqcJj-b3WCZlTA%lu~Jy-0AFGb z>;T&xbZ4JM1}Fuj=3b$v$`uG!uz41k`jRow!aF^RbgV9!$f#wqur%a>u_|o@&EOxN zI<`t>3RdKtps}TmMA8-voB9u3w#QW$$}5!Ra 5iZYMqD3~ ziH}umvh7h+vgs;7nJ_g)!8>EB%|nK8T+b?hDz$56)konHYzz JQCV9WbZS(ZYTB6Y zvH;S4y*I~A9It4UVk|o;{GrlDnL0rv&BXQtY;;-cI^?9;m{!9tPlxzn`9_ignJ2XG zIO=9meW{kuC;076Nf(O)@v#2@Q#hbKnT1X2i5BRspM 9rYE&>)z+=0L#ZX$kVeKf5C?g|DV(iT$%&c7 zhdf# jX4MZHHLKVuTi?drdZ3A)HdYfFg;MBWnxwn_?tTw1{{uc6;#c zETOK`Cx*Ra=e*&IXMe9XfyK*bmUu08ex9WY%B-?)Bo~{2JIqAlL}Vo}uBH-kl$N_S zO;w={`YGLku{S%6A#GYzoTZpYIk_R8sJu-`T~S0A1~%#3Z-^A!IV%lgD%Iw+I QlvB0KM|1LWH8q{ z!5d6{Mmec~TGHwPCxX{jD%8r$)Y6IwX;>q)^f=?C8(X<9xou4bgROpMqiH-?6x1}B zk5M1MjB}i#Hgoy*RgikMx=TAvc)}Z%k0~a_U~S$p#6=M)u+NSwriNzbkj!&xR$d#1 z(g3x(gZ(kjO>WSxiDlWXDN?dgc55RNNpLJkJDJA?A(ND&TD*~!Yx7kDt08oag!P`X zI`+g3yO&69O)Y7B)j?XD8kEol8VH!z0s)Ur@yJ#zu7LVtmZ_$lPzcoIi923wB$(SA zXEw^Pl1DM|5D5dDX$%Lb$2h-Lblyo?)Wu~4F$_o~i-#lU0FnOyY(&h0BQ4p%bhDEb z%7x8-Ia8&XTq(7Q`NZvxYDzJcJh0@bWu{o6)u;#{etA3Jt~t(Uw5Tr|SSnU4E}C-2 zn1W=;GY9k$h*AklX; kcW{OP87pwy%h)%7)h<&eAqGU7efVF?CSs(=5f;gSd%4 zvEKfekub4Kdpb9EuWt7M%o={$JV2dO{gU7=`VSVF1}7fFp=}K~=DJ6Rdv`B8(vbfE zWf2|zj=J8iM7B<&fWanClW+;RARVW9$Lgg_Qw-5)W-G(7iyXCHhPMu;TszW7AwV?4 zjU;M3r1}^?wj~&CV_)BQXKH3?N?D;7?T&rY?NMu0(@wIW2USIn&Dg-Y_9q3x1G4YO zhCQi-iH2eyWnw7IQ!Bzn1coF+F`E;6x6=Sa;lfaQyL?c4J4KekW@;NI;MCHnWebZ1 z`JIohFp&Wjmha3N8aK6NufIE$InTk(O6eL)Q%Dh_Oj-bo95v!I6mg69=JdkELE^9b zm}-D1K Kxu@TRW3{vwid3phH@yVPoQ%a%2&CZ$S=HU{942768kQUlCa z;k&jNdadzAi-c?YD&2Wh6RB!x4oj&uCQgCUN3Y8iDIBF6_wH|R%30&JR5KMd8CNb? zSNL5> - zK?cLLV1Q0mOMhp3UZrMRp0rdNrA0+_EJ~>7AVV1VjKJQZDmF2{Vg7g*6Og|Jn*KL%Rn$gRYNc3Hvr=U`gxhYQUf7^Y0@Pz$ zanFJT;^oJ=15p(lh(KUOE~F2vk|dL`1pb&dp3EcR+4)wQOCx^@p~+d7*G*}yP+n{o zUpCiLb{(Sx!qt|ow{!7A%lrE)YAQ5oqV&q60;I?UL;-jai7^`$n&SMb-waelp#hpX z%uwbjwxWr-PzaqpWc1kW7;+(a6wi)0c_$NTx2l?oW*NiMfR4Z^oyDM&ustIV#8XT$ zdaF-4IN7S@ZAN<3z$%8Cl> S8hjn89zEZ-| SCBffas>QDm~;G28c=9=eY1iy z6K6e&)h^m6OR^}IdY2P3Hvri5#3UA&x77|fcBHcW8-{$;W%JbN);u<^@U>86YGo$= zm;JE+00=;35@=M_?{6+xtw~02F%bQf)TY(4wG@TAk{FmZ8fG+$2^O1Q2vX0C8+C0B z@4CC$YeC=K+y2NYtv!0QhT#QOKups+fJinLlOqJG5t~1K(794l*}>~WrGEIMSaR;H zx* hW}|N=`^cHU()h*@0V~^os-pmamC(UT(|VL^ z)z;F=qd@_6w2K2hcAPLu@SB`tbW%+M5tp^MD^`fDSdBmP6x0G40!ao)F=HM2;m%;f ztNZiVgBR6*cfYc&X%@(>MX8r`*v+&Znoiclox!aY(al~;rAjVRjB|2@QAaDtR;4iH zxE2Tioj{Q=P8ft 1!|}S=`NJnwK4=JexQ!0(+qY>VuQ91+nSUBd-IyrNlvqH zO(bBGq?RCuP(LqG1mC_MmSURd`F>TMz&4#lI%6-D5?C+=OC%Bwz}|j%nHZ5;^3N^_ zueHS*)U8gHG^zMXzZ)5X#6Ttiu?KK=jANpSG_}VLUj7M5h3#MHuC4fdDmntZnTI4) zCi;UNhjEF;wyS?cklHKm!Bbm|v&2?vGN{Q=6%PcFB!8*J8H#&FTUS ?)NvS5))5dHPsO^qCVI&c^1-z>`tID6gnlHY zpRz3GwOVeW6r_mUnGq@=$=iRP15w1K7pbw`--h%CR{b)o)1R{Be}82^_|@UOp@aA} zCWLdOekD$wW3E3e>C?%k(FuILx4v0>j*JKU8CTYO`FJlE)6JoghzC>)#Mnjg xv|A408%r4NB5f?iSsXNp zGqgz~d-~xh$fcM`Fa1bXqiS^lr6OkY5zBk;i@VvDH=;s2OB-6nGV7-MZZB{mHpaha z?VbqVYdy-vQ%XZ7oyc~%5!6Sf48zsWG?I$3RI-Ck%^;8Q8S6cE!D1AI;@e1gg_MBY zg`@@@2H>1km|kpCu&XJlvsvKSfnY~V#r<&8S 6)dknzaH+h$Gjq^}!c}qk^0LJC&-Zha;9wtpG_e+iZ1=vu{YRqQ$AV;jX=z z0KK*s?cWq&9>pVQrbKDeF77#j1}D&;smDkKt4d@)Dq^4FX;4|DLr-C}1HLRiK1-eD z+DuW^n5d))xnM=CIuLQvGP0S~wSN@WO^*!gDgiTZNq`Rj08Dh*vnq*88!6nCHm0%( zApB>bBtR3rho&!O#k>?LOXkjTPE*jd#@b1Rn}TiI9b!W?%aZ-8)46(UTKZ_6E2M#8 zzsntMWU oTNJF%r$ t&Z#rpr%DJCVqYHGOC0d|WnWT(B2TWofHElGNRl$tGml;zwL|GkmRmN(E5NOJ$S+ zU`*6o$7@*n 1Z4tHzluG)%kq~W_tj;no z!yvGLb|^*2^s&A<*iWjuEjbYueU`gCLa@}jnXF*MgJNf_3*s&XD~h*SYqM1uR!c%7 zkt}Z=O~w5&%SZzKz1ilvLTRk#wXUg9<>|WWj)0q+-)*taOwl2mxmXyA*8c!SuFez2 z8gys`hyv1fxb29L+1$E7e3BKj1(%Ag0$B-DGG}8wf6&JPOvP*QpUSY0RI0fnTjJ6{ zRdOUf^Z S|yDp5O!l5_B}DodsAGy2E0-kg$m9{Yo1gtWF5(# zr?JN=In_2 +L$repA|O3dA(ruN4ffXipcH>(0t%S};RR5QNGdLS z^~6e7T?6waGfdRgg9i%2R56lAd~*?Zw_ qeQ%K?{`V64*! z?4{~d;tz?5JkvK3v<{uI6F6q|YlhOUwPLK)-~+y>zgrP&MX}FjUx=_U?IlX-s20FU z7B>KnxL6Fc504DNUj!AZn$tAa(js60Itc1|Me#8&HA!G7DpLxjcxqUaB2MGDF)@gg z+eCoYN}7tRP`OnK1^1CVTlnJ<6U?mFD9lo7ESinWO4{PqnE7I0;WWaSewAHHYKkR= zGQSBDZ*9JZ3lVYOy%8zNV(3<6=CKF@%x@%#!V?s-piA35!Sd_>0F53hc)COQJIG-& zIJCf0I-BF!bR@sq%w>&_R?HW{={dtgZ{6tYt!d@H?@`@^7G^Ak&%z`C4Bk%WG5VCn zXM{U@7l??Msi|3V^xcx1DGIJ&STWf3nC@+bqS}^^IpMu5v4;Dz$IS~XGg25jBF(D09zMoC|NGb>-?=S z?Po8FElkx5wW_T$#gUrE(KEkKrV^HjLuZ3w;P9{AH`0SOP}N$50L9P~r2$bQBz6bo zF@n^8448&6Zp*XDY9aW1Ao=F3s9P|ggr)&2BV3E`b7=?kz_{PyJ~!{|!`0BDnU!@A z
S~ zL1n6>7G?x+$gokqp^E$%OS=o5pAW)WNv5+?__ll1lxdooRi=Sy6>`(ik+zf8KTJsJ z2637$-O$eM$qa^hp`1`rqo$(hsI;Xltvbn=CQo4(@A}~cr?pASK3%*ODNLA3%xmn1 za8pr+pabe!szC$ JV15^bcwu~+*soQ#3n1A{#(*s zH-0|I8LG1c1QeIB@j|X*M$;z<@=77-2XGOU@WojDE@Q65rvMShPl^2jWo$ z${j`xuV8m06=pZGHNIowu#t7KR@0-#Ktr oYX^YMqG%JkLi6;w@VAz(qbUs%ARs*2ZZVV+1a6AZ-hWK`VNtODw&nSdeQK|lcl zNWPx&hm@t@`@GX^%{A?q^F>W~l+aWxPyq-9!x3Nz-)kP222d-jue*zG-y4*yu}nAk zcJftfN_7yQ#ir^CBotswkVyx5-f*&7A;)xL-j!vOvzNLm%D;xL>PHn+AQv t#ox| zE3;COQL`C=p(`YwQfd_kv5+iaT5x8F+QT<)%c)2kB?w-kp0%R-wLYR5fl2=W5!6V5 zb8eT#9*Qt7UEH{KriH1d&*2{hnx3k3^7Lexf&p?x+pfp2^28?=>tl`xeK+SdAX;qd z6q1WgS(q0ADlb_kV_|)|3{XlVXrj*uZ|~pYu@|O($f(m9rVBvnrl|u-BuL)Jo2&qF zsf%V|&yqC9^Iq>9??XngeHBTkR-H~lqMQNDK!Z1!i~$jvQNIiPcW pGjZ3xhFJ|9&=bt5|kLnISD&^Ih zr~uRm0mv2(!uwp9CTASyD;Ew|Rgc>2Ye1!8efM%z>p6W6I6+A;x(dPS$Dp0Zd{&K! z&uZv>lg)kq0G#$C)Xhu){Xhc0GL)yUmrlFE+zFdo=Z6!4TCNX#cV-D3VaGmbDCQA! zOpB~>r%^U01b|KSkN&3%VfL`Qef}#vvJQBDQLIsH!pj0Vh^l#Mv>0x)bBRwFO?&v` z4%7sr0v4-=