From 74eedd3ef1fef6f9a865975abd6f9d260ed59c2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zeyu=20Huang=20=7C=20=E9=BB=83=E6=BE=A4=E5=AE=87?= <11222265+fhfuih@users.noreply.github.com> Date: Wed, 11 Mar 2026 18:22:45 +0800 Subject: [PATCH] [Frontend] ComfyUI video & LoRA support (#1596) Signed-off-by: Huang, Zeyu <11222265+fhfuih@users.noreply.github.com> --- apps/ComfyUI-vLLM-Omni/README.md | 17 +- apps/ComfyUI-vLLM-Omni/__init__.py | 9 + .../comfyui_vllm_omni/nodes.py | 166 +++++- .../comfyui_vllm_omni/utils/api_client.py | 88 ++- .../comfyui_vllm_omni/utils/format.py | 70 +++ .../comfyui_vllm_omni/utils/types.py | 4 + .../comfyui_vllm_omni/utils/validators.py | 2 +- .../docs/images/comfyui-video-generation.jpg | Bin 0 -> 132038 bytes .../vLLM-Omni Video Generation.json | 513 ++++++++++++++++++ docs/features/comfyui.md | 5 +- tests/comfyui/conftest.py | 7 + tests/comfyui/test_comfyui_integration.py | 171 +++++- .../openai_api/test_image_server.py | 1 - 13 files changed, 1038 insertions(+), 15 deletions(-) create mode 100644 apps/ComfyUI-vLLM-Omni/docs/images/comfyui-video-generation.jpg create mode 100644 apps/ComfyUI-vLLM-Omni/example_workflows/vLLM-Omni Video Generation.json diff --git a/apps/ComfyUI-vLLM-Omni/README.md b/apps/ComfyUI-vLLM-Omni/README.md index 23bbe5b72..54f2fdf2e 100644 --- a/apps/ComfyUI-vLLM-Omni/README.md +++ b/apps/ComfyUI-vLLM-Omni/README.md @@ -47,6 +47,7 @@ If no, check your shell running the ComfyUI process. There may be some error mes This extension offers the following nodes based on the output modalities (at **ComfyUI sidebar -> Node Library**): - **Generate Image** for text-to-image and image-to-image tasks +- **Generate Video** for text-to-video and image-to-video tasks - **Multimodality Understanding** for multimodality-to-text and multimodality-to-audio tasks - **TTS** and **TTS Voice Clone** for TTS tasks @@ -59,7 +60,7 @@ To build a simple workflow yourself, - Drag a generation node onto the canvas. - Depending on your need, grab built-in multimedia file loader nodes, such as **image->Load Image**, **image->video->Load Video**, **audio->Load Audio** -- Depending on your need, grab built-in multimedia file preview nodes, such as **image->Preview Image**, **image->video->Save Video**, **audio->Preview Audio**. For text output, you can install [ComfyUI-Custom-Scripts plugin](https://github.com/pythongosssss/ComfyUI-Custom-Scripts/) and grab its **utils->Show Text 🐍** node. +- Depending on your need, grab built-in multimedia file preview nodes, such as **image->Preview Image**, **image->video->Save Video**, **audio->Preview Audio**, **utils->Preview as Text**. - If you want to tune sampling parameters, grab corresponding nodes from **vLLM-Omni-> Sampling Params**. - For multi-stage models, you can connect multiple **AR Sampling Params** and **Diffusion Sampling Params** nodes to a **Multi-Stage Sampling Params List** node, and connect this node to the generation node. - For some multi-stage models like BAGEL, [only one stage's sampling parameters are exposed and tunable via vLLM-Omni's online serving API](https://docs.vllm.ai/projects/vllm-omni/en/latest/user_guide/examples/online_serving/bagel/). Thus, these models are treated as single-stage ones. Please check the vLLM-Omni documentation on how to correctly set each model's sampling parameters. @@ -104,6 +105,20 @@ You can configure per-stage sampling parameters for multi-stage models. > [!TIP] > The node automatically choose text-to-image or image-to-image API endpoints depending on whether you connect an image input or not. +### Text-to-video and image-to-video generation (e.g., Wan) + +(Also available at **ComfyUI sidebar->Template->vLLM-Omni->vLLM-Omni Video Generation**) + +
+
+
jg%~n6ZU7jwhn! zMwh7~6_fh@ZZmWOG7jW-cn7j0D~U<>lr_L%mf*Ld1fy}ryVXw8!z)qO2#}^jBUL=1 zF^l0@k5Mb1#O{<@FC9+@O!<}lweo7S^m#voA#@JKYl4RtO0wqF!GUsF6_Cat8cQ{i z`poZTdU9a-wBsHbXImSWc4_7DWpiN@@n9c@caB?uru z8s(c!UPDNxjMH4s^cOn_) J%|6xWc27N GOj2Izh zM*u>f#A)mMU-6m3@_txRB6z51u-pNXU*K7d@}(d&fTjs>saFZg@={R}yZ6YMch1GK zk{t!C6I=cdtFQ2a1YrwUdCgV7lqmjE(a!x f6iL3>O zKBWOtWsC@XmKw0bjH5}MdHQk9Ty(4V5<1^$l0D4DW>NF^oDHwuNJ~%;dgmSH!8WjV zY~Dm)j>v74g3jR^mIPAE*zXFB#CusqMvs0DcDl|-=v3vPC02ej{@vWdtaf;PME`1p z@}YN$1wDZxcef!$v^R<|MXw07Z9H1>^K;_GCf%F1DAIWB-MGWQQoQ}S2~|>J)+$$H z9%)8ULQdKrseAVA&1JT8NH00hXwoP1jr~v5ADrx`e)&Q{kS#QmU&`j^h`ih%9%KIG zumNPbaW{B*1tRt5UF4l^ENeYJR<*y0@A25Kh|w$I6Sq6$CIyy`-9384Q)J(@9Y0mW zr+!=4Wy~Ze`T52Az2$JeIBs>TXwI0-9g}HUcbNKDYVY@F6(tvs^}qKwFqum`m?*eO z#Jt({Ha);mzY`bRc}n8wK9CmukguU-T>S1$s(*Dr4?EwX``!c-WfeyL`I?mGve@_C z^hdMxJg?X LUKlHkV|=zuRM4(XdtPvh>0b#;K3v{EeWEyx0`Jr2eq dW|=iH@tA)Qa%kqS?ram#!cRBfQUAJIe1hc{tUtSy|6 z$j*ufikHdPzaYMO>G;D-)1t=4?{uZ2dvV?j^~nJR9M{pRC$%Dk1ED26u~C05$rVRs z^?pSW5W}wiwjI+YNA;p47gM1)A+FvVYS@E!HRq>;tV5$aPj~)sb9^9qj2b*N# t`D(wZs3R z>&ZEVF$ptdOl}-I)2A$@^ZbHc@2--_;6{Zn4c#6B>?m$V_5Rb9@+G%4il=_uoU14m z-y7rLfk5AN`P{=X@s4y9pXw8BdaOZ?(~~rw^1008^3P#c=d(qDo&}3pdrlLA{_1zK zEFty$kQqN_w|N$_P)L&}k%}+62m}e8?9p9mjMuq2GgeA#=ImTn$-Vxj;(?^|Ri6vC z5>H25#UhsrQrBimc8TiJ7Y^Pv`s=#Cb aC{7e}(IUB6qxASn`c7gFL(Mw(qkNYzc30e2=GN;7AlPU3h#_ z=^f9h4$Sjt9WKms0_%rO&eObwNoC&6%4KXr=29EkseNK~M%T__Q&T#hm54W@qMz_5 zHWZ#+V&CL3%=CNSFp^+F`_j>J?OBCJ)gId~;!#E_GZq6EY%fMBX2X3BjGi0hv8{6t z7``SDG$cPWV`C>#896Pv&o>Yi19`^ `S1l&(FkmUJWKr^^;bQF*l8k$-<8*_9O>G(jxCr %C7Wiul*Tqh)hS5WB5y;p zg^T-M{^oXANb+vc(dQH8k-pkTXOr)+*860|Tp{wPl@GNe<4zE9rZ%B^IPoPiL`t_H zAv!GfD5y|8Xy#Z56iLK*pcsck1Y9l|uD-0~l< v`W5`mF9rZ$3+#M`ZGiQwcb8xng^ z9L28(Btv2dP9h@`D=w-lB&6O7BjH4IC1YYgCA4=&=&6PJKznJ1wj06 uI1b<>6L}Hy} zXz+%`sCUDZK|)O~IDMItmE?yOw8c9@efG$C=t9uEvJ#x8b2=fsfy_^&ERo?_@ 7NQ2J?pg*n0_nST|2=bzQMHKaAWuWAFOl*IRDzuZK%qksdi>owj zPF$1kBnXt=wsg=sw9u20&~hmC&Mg!%3CaZt=N1i~LkTV7`LcRJ(U4A~sHdT+C=a*Z zc?q)%4!LBGmZB`XNMc8Y7-cDo{fZaM>du%YIsvC1t)QSHih-nvNqavGN9eN0i0MMW z|0lE_Ms{W-{FKhcH8qU3vN1?^BZ5Nk+={^MfAc}wdq!V>8pkk7_=$lbwCm8BHZZ|@ zU5FSshvhU0GBXvA)YJRXP{&RL#U}Zol}RI#8eLw*gh%8aDjI@~Q035rr$qCH;>^#o z@4Q5k$MUrtiU`RCCz3yoXN4(}JT!v59-@Z_kikZqPjmv92^5Ip*_{f}HjpB#R)7E& zU?liE%-8_oq=!75{rSxGchGDgL@3WeE!C9?XKf+%xaNfW169OjC~Kj;8u4ss`Pu!I zS+!P>hbIVV)+Yd8$>Q=4B@oGGFp>!@OZ^Rf)TxZ2uisY{*Gxc?RE5nOG&}CZ_);4H zxgXMFR@PgyZlR)Ks6{|+#U;S6wOuR7=@=5u&|pXHs4pn5J^N<`c<9RFayKVn$OSqf zP~D#_H>(T9kaQuTQ4epxX%t9z4m{Etc6Md{&KH1tu6O#yYYn@)c7aWf=aN`;h$}u= za_{dbYb)Plr{gT^j2LyG1;CQIzVE@XiP8e|_Z+xINp*DYb6zrJ=t?iv)1Iv@gtb_K zc8w^pVEd)NwC0}K1@Ki1y{b-mnp3ikN5=q7XSKt4E9!OGcYsnX*{ohJoR&s2c4rU>H z_$%rA+vdwpoBKC!r2RqZ!16*MLj%+FKj5*%;xhg=@;u2YT5<0G!SYp#WSqmeSXaZc zmge!bDfEB*2J%CLr>mBfLKOd*ELi>!v6`^NY^D6;-=i%GA$ZW%qIq>DI8NtZXFD#P zx#}UI^MQHLE-Z1XP7}T{u?-C%|2i(`8%*r%2%WGhAMH3vSry-OvGsB-9u^Q)&f81X z4JWM}bKzRi$~gP$hzRj{Y~)`xswerZH>dVq`S-&F)Fec?vf|zx8`;71fgFdU)r)?H zss8x~!c6LY_&Jy%f_NF~19Pcg$v+hpEp%@ERnc9P<#E}us&Yk>+6st=0>Nq_zg(8= ziEa&326)`u6w6<0dmU8vKYq__2AhO#jY~^^)cx=Ou9X2H%~_%WwlGx)1H@_l1JMlj zD^IhAPVT}oTf V2{5Su?_i##pm1CI=)x952we&`nYWQEZ68T z+BRhO=7cb1^_BDp>_csCN9f8utqd&`u_gmz=as|M(hPTqfz*pELRo5w%nm1ZK=Q4= zWEe;+L45X|1a3BCK?YS&Xs*38hC6P7428!rOJq4Dl{LatZFxZz9*R~L#h5p)w?eg3 z=@yu&uEKnXoo6IR$FSCOB};rYvd~b_0o 6XAnPWIiwr5)CpBuN0iY!bvq5?7`d6y?jU- zPE@1It(lqtU4u){?r{ |$F!MWZ zwn+sGa Q^A>iVIT#r6s@{6*qH*CN?dD&aN^NBhL*FgD1)TjEFg<57nT!&EN8{?035CY z+zB}@Q{YOlbl_SVsORdBl-cOP5#ieKt`#zo&yG|Km5X(Bpl?r^)M_!`U4#5XLcp!zvJo_-k=#CiyXX)R z1C6M2o#q^yY{I~`wt`M;UY`QEGTC_{8dVU`)U%JNbmca%4+CnX+$0VzP4iSam2F5E zl2g ep;*v AsdaZnK zdA%jWgfrApKdu)PiNsc}$tuu@df-RqT-=oHHw$%(tOR)j{>Y=!AJ~0P?CqnAh}hUi zoe0tOl_dW4{IcfGob+#8&>`sE^2R5PBUS7BM#Y3ny3k)Y_BDO##ob*iBeRbNc^##% z@I}A#qk79_npTuVES)Vcty*L&a?MNLHx4BvEb{K;taw=M|EWuCXUY8P)0fA;A3t0f z9rji)xM_modi?3)P@$Qzwj<>S?m^4LSDUH_OE+%)m0LwLJ+*3gQPjvGk|aN6Tl$b} zKc(78pLWnI7y0^D*(&z@;ipgLk&uaN_Y70{yKe5`ug(J84&`xQ6TRjxUAb?km6vcT zWM={V6I0Dq#_(Lnv0D;!M#OCc-IDa(eS)JFisMJ_-aw(Bq=Tv~mvBn>iC%+Sy7^T> zuLKO6IO UpwW)+=Tmwo=msPbBx-`86k-GVch)5CTv^&kCc z5#X&`R&%oEdIm>FowZ)-`O}wN(vL)8 z2$ z)(;W}{ `|lpj7tv#Q!fhc9=Kd_e`AysnoPeGe5EAra%I)y`bDEa zY8fV~e!^TvnDcx0$?-l6yy=#@cwxT_ KItOTbKEk5p>W6A|y@xq_1o1% euheN}mj?INpCz(@HAA%+J2LIa6>qIr!G>1qp>6A~)|W zLnG;3Aq$A%%ViHX>oK`P{*x zz8L?!8RmgWl4NBSJ$1C(#`b%2#IRL#8^u3a;^V#ssj&~o^nzl14v49$pUO|J6gPNZ zm#x{had)dzFVszWXuROVP`}${$y?a(Uy&}?_-PV1#lqx%1Q*4nEpNJZR^b+mbV?Vj z9@V s)CQRC 1>$Otq-bh^{O5&w?say59H?z+V@`6e{Aiy*w?83 z;@pmy;4i##mwKutX~WH#?s-4GYI^NNo?dy(`KVdy _U^jnBW34nHu1FrsUl{^V`+Z$C0O_ zf*)pTsh?62(VmJ-ohZ ClZ>EF?C6>;G17y}({?qQdB8cfJ~scD{7<9XFX~+4;K_?J-wyC4 zA|y^KwmN{OS&3F(r}p9Z#tI9ssGh J+WP@)CW1*}8uG+m}kp-g--q z6`{hj^V`tp{!<3+Ga31XV^x=Sg{aItuz&la?od&3VDq9tw(28q+pgG6XTAqYB5M3R zwWM7em2V|piAXC-b7?*y^B&5I-0})?+lO{{dBnHUwy=4cpk`#ha t9wRTy4Xbhdg&+YYg8edbFQ08Fr&0$Aik-~TvpW&AKI;Y zBZS}oWuWC>6!S{+JEoa8$jW9sbYK%SQf)&MhbsAad!6kh&$rDsy#0&PSX_ao4LYx^ zhn{N;c(m)G#*N|5U&m#~MRTX7YDaGi`%0I$Ti9e9t45!*^}{#Qst+`)(!n9Pn2_#M z;E;7~8_K^*a{jG?{HrCkTQsj9bS>ZZHUgE-)6RN$7&IB#6W%(sN_K*?MYZGvLGnvt z9(bAwzOgTWyds2zP@r1k5ePbJIb%r6&~fd?Eb~T2HKtkBf;S)R?-&7$5}pq4fyhib z&z`$8E3DF1lPq8U!Dc>W)w&rQZ<0eI=()JS2FO2cqOz+@973fhA` zJ0nTUlx|P#4%i9>v_fkH%;^QHo3ZID+vifnK~Jtk<|mpEGDkuTRCFesAu!!8L>f_+ z4?(^kKzH>iJG{_%+{ln0Xm9q`Mj%r8=yxXq>Odz31IfMKT2Wg&13Jsi*!ZeDlOhwE zpbQ!juQC!1-K ~q!G~HUGsL5J zj)MN>W 9c4MNj?j4Z}$!9#(}=zoJJ)L)yz( zV3w$62J35U25rcomz~4`v3qvaP z0 xHI}~Svfex%Hfd+pK6=VhICM2MIL3=k|s17q%2OVTJ4J35Nq%)DIg*u2^)3WLK zNTmMv9zE$mnrSE4?W(pT*2fv?mh~ahFT#Smm&ph*&;iL`JKEOg*@WmbV;dqaN6xNL zTS^WsBO$(g)aVj$ulWGWA|?J0qx7YO1pUy-p^+)jyB>t)ZR<=SJppMtQ1lyJ(hpsa zA>B>#Rl29v6%ASNs WUw_h4LQ<84Ty{6n%OF33C zq1d-%8%ESbPo$zFQknGii@rPdd~f9Fmt4{_3G>@0-^;j3a80V5XTk<|Hay>XW|3X~KyQarWa1;feNG0yZ$0Y?a6gx3S@gdAz1-QW++)Hr zDMq`m$hUm)@}}7=iJIaT^fD>MDRMt`^h(R|o$i?pyg5R4{WzOP&7bP`T(X%m>;1WO zNj(Bnpy_x1Fkx5bX{^|tRzz0I{L9m%IjhprIP15GCZtQ(H*{W#bnY&WZa5j^MF}VE zc$MMs!RBPbeD-C%OS>w3?-A+l^67bmhQj#sX#X+MFx9bwLkndOOSD5oOY^*y=wFpi zLmT1;UvH?aVUHn7UGnBvV`gPmcBYwjjz;q|`doBW^IPE|l}|-O(@JrO-xr+s?{V4f z;@$r>i}vD+L%G#y;V`MMaA%FBOqZ^T-^S0iLwvJ^<~A7uZ)myu%{g+z@1IL@cvS1< zr5e3-V!rGlPf5}g)umpfg#Xg(*!ii|h&VR|#E4Co7|+7=$$0E9o0pOl@ok9mQc=Kh zqpm*85-S!x$g6aUe)x4+`*CE?ROp$mlszw$77iB^zZI5^oyJN)G@_z)_V2J~cwxWd zJa^F^UG6exiMD$lcfT3DR>VwrM;7yU2^Ai0Q>qbg6>e%ybJZlDFjf$Fa;d67;_@BY zzeLl h9N_*{SUhOOA{sic|P}w={C$^b>LSG(|gtb@K~S%Y=PP6TIHo zouSXNwbt4;JQdpbT9&@`!|q&GRgctzD@)50X|j~*^{8?W^M#0W)kN)rIpcX++{pan ze0S$-jz$}|oe$s2HhN0-@~hAP4m+DbTP_eWng3N?a57J(y1MT3JKNJn8KWt&+P%cU zhUH&Muqo2v;`zx=^)Oxvx#uu3@kG|i#+=WO7cqfyp*PX?CfGWwP9_pBY#kYL^rvNY zPku-I`wKIRPY6-_6?i=xkCitJS2eGG(mYxw+x5=w#od5VI`f+5WdXFxN C2$( z@ZlNpj|}sU{memwcjb7;^9gqy1+`R}8WU^`LJ1Gs&(5w-LCuMXr(wCLMb6!T4c)K0 zosx5wQ>aDcK_SkR?P5TJ iH^%d_PyF3MTAkwVe0ihr06G4q1C#;eKp~m zy1qHi{++3pn?4IC_?9jv72T@#LTJyObEn<6w7z$?CghBZoU(rYnEya*H%0@rC2LqL z{TRICv-Z5=@nya7fgdvmF9l>tkEzpD_g0Tw{>c_0M=8%6|Bd@G86atCm)gg$wKhQvU0TSqu++<>bMuZKUJeT%DRhNo=Pws_9yHRfqhuJ`=d*+$;CE6 ziv|j-nNN9hpEJiE9Yr;ct3~nJ=H!4p9yH_Aa#xr$tEY{qw&8mFVoq_{W1|uW@sCkY zBaVnwdDLM=cb>?*J^$(B`SbkEFFmijAG-Ll=+&&r Y?W6xKm zb$wVQKkQ@Lq1)rWkL%~NyTojt_%h;!cHRtod)b$EPhDmBsOWji;-a0|&i<#2c=Dr< z82QB0xZ*O|7cV}U59)es6JY;&cyL3n-LRwcp!B^Kq9j_=FCk%$))ifL>xaAW1sChb zrR#P@?zb_{ pPUacr7sA=`%HpJauCpwxPqTv+1L%d8RvN!YX%g4U@y|*6) zBHTPoTr(@@ WB|3G+m9tS!gpWv<8r{?>(;< zb&bkzJauK}T2b-}BGZjOX@nW3?&0z@=ci{soMn}&%h#o)UH4weqW)d<{!{!ml*YrP z@y`i+9!DEOHikABD2tj!=6D{B`E&Wtn8!T>u6cK?+YFR)BqUrer27t8ov0Y ~=$^nc`A7xj`)=_s5?=>p8tS;qm0gP5dta#Z!O4uQb*IkC zi*CncrVA;>sfX5M+LlE^_k}ZFyY){loq5Q`a3+mCh3yIo`e5^Fmyq;Nty|K8A$P z3>Nj$IpwRHl&isKDRvbdVvv=wlh=E{sX*;}4;1c=uCJfB39h)+bGtr5=&{5uUw0pQ zWf6~9A;!;udTEkOWl4?E=hu$+rdPQak3ZQ_-m(zc7uicED9;U_gWk&bydXcKwZb~u zsRjp=>eMYhVMeoZ&F>9iPvrfOu@K$+xil!MgA*^#8-u)_=utnUmazFC-}F97{Oy7y z<=T3%!YjYFcg1gH>0{CJ2wR@&Ef*BE#TDsLvu5^Nj%<0Y-%Ou-yU>Hgz##wM-N+tWqoC?_-O9y 29Gs%;}%EnMv;U z_VlDU7x1QzFYDbu)g>l!NEu1+#PSSO%&l3>*~XyhDQNlO2n=jj0iRN3SJyI`$Ro=E z$*Inue;A5->4h1dLt}=_%GbbKTJ)(Z)I10G2r&q4=n4OZ;=XoQRI?b0nTlj0|4fZb zqJwuzTBkt0L8MD!Y0Uy`n?Vor-XMmGRx(EydJ9y9Fv?{1f%2(!^XdS`a?Wn~9)gxC zfY)NVW?to{{%e^kIsrLuVPM2Bo-y+{7f;_hzD=z;E(>MQfL9HASdYL9*O1e^%2{w? z#sutCfvFZ%a-mYAXwn2;n2oO;0Q>nJm%&S! -OR(T-5-un5hQc!*FLK|@@@u|`Q@=~;EiN#EjZR7>@C;K zL_@+1Jy2YTADsk|YH#q0G3Z{;{E{(9JqSNU*!^xKBJdX_U@~#d^8OlVFAqxx;sH!| zTZUwk1JVI>HL?#>fC&*Jf-RGVo(YCvXUjPU1Y3v`D5TINrbb>-T)Y|EQA~442xg!{ zotZR-0 N%9uKRm*KXX*mCcHq zr?Tol{4r+miye8iMe0D!sKx6wV_8nszwNL6)Fh=5^1@7Y;VgW$X_?G1P=WrT?YlBJ zX^3qxv;eiUQ$g#QUkD=rsUOC?c9 Jdl@0{uGqhG4f(Qv$XUYmzxSVz?|+gXr;c zpxjZ})xoqv*uoOq=^5eCNDmC`Syxva_2BgZt&i!TUGGlt6wL+N6`@LcpCn)_W)hl| z9}{{gi3na6?4SA>b_Dx1#=nKCg=QchwgWwYRbF8q $(_JD&)4(7q}%|P#Zp#X&9=KmH693EgITY0A5x7 z+jTt0e_(ldYevmP^@5mIFO;Y8koO9iUAAHynld+`fnLCT3BDO4JFOV&$nf%c)xUTo zSbgVP3pTu(4u4K0ro#%s2H`opnZaQ;we7OHkEzZ+X5|r%DR|{(I |ym>!sb zQ+Ih{fg8A7qeIV*9Ik)DkzBkE{#%XjO1){WFRi10SYJFVKh0(tvs=4G^r+K?-}XPM zr9l?7xMRPFnp$I4snJIpYXU9e@^drAs>ou6^}W`cC+6oqm8LdDEvvdcd!g%pTUg?d zS>sg^?3>8rUzbKpRcdQja*vG$8!gz0x_*2+**2LyFnj5$qpidl!Ov+Qj#-9=gx3eY zSVw=(P&+&SKJEI+WSRc0m;^zp|C#PR_KL71&g<&2`SClOOy}QzTz7wP)7L1(%1~yc zn*ILCqeD81L-H0ljK)j1!5@QneJjr}zr60aH5**H>tkW?D ^qq=Uxt12-hlGDV{XrFSASvO>JNPUkIv%~Z`TXHxP#!p zNhL=6-w)jz;A+zD`xdnt-MJ092FyOJyw5Frn)2eaRRpJjET1?VLH<~%?1c-113%3s z{o_J%@9TcMrEvfGVtlSVx1*B^gFIYRb$Efd#h~4%*XXNJnX6UBT|FJtgJa%u*9uY5 zI^4wc5MAfslk=hBFTcA!K7Zc2C+nL`solk=meVijGY$`~S<) uE)Cb|bN zY|nFJe7J-5vg*y+SAJW=_qMu(o22fMNUTt&m}0xk=Ji4s`|o9Plm7>4Zyi=u7WVyb zIKUAkL_j(eBn9a{gh)%Lq$4OL-Cc@;aA*)Dj)b5H1|@-1rQ1GA}THARU1r `ro#%PcD?saIFKqP@Kvk04?#Rz zLveeXqyecd<<&LrZ#haAt?4rGQ+%S`v)dBh)VgVTT%Hc*l#dQT#=oq4En_a?&zz(| z*cQL={8Y-h$?vLSGn%CWuR3r$r@!)r7@sq*cN)**x+{;l=S0+AyDeN1DI@OH)}ddv zXe{3*VQk r4Hd3$6y!vc70TA`|s1QS3}iCZSGS`K=z8iqgjPUW|7-H-6t> z`tfM--D8_C*Txm;@FI}pYVVD6NzeHFy;+c7tQEbg(ndZO*ROtlnsoe#;E~^4g6Bvj znpTm^oGiu#jYWH$D4j$n;8l8|G`lGYMZBJ zqKm{$v87ZqG|Gx)fc9Q(9meHtnri0II>TDmP1i57?|M$WAHt#GLi*K!Kj0)d VIx)m9_dw-O*y~IhA@sw|Ze<9*v zcF}?P;GUtz%JdU&-k)Q=0oY0| jR7x8z{JHpmTB&-<375*L0Zdr*sC9_#;+Wol34GK@0_D_Xyg<2O*_mz zrir#Sn;_q@>6ck|S6ZXn)~>c3#vD!Q%3m%c=u25$ZDEXk8A5mD;x9Hf`=~nMyQCt~ zdX<%-hN18+TjsX;h4jb{dsyQ0*`Zj8t1HBBEi2FZR3C4P&UKk4{lz&gls!)xV3#>B zYcnUdP5#W`0l#hBbW?4;u aQfzkLE|K zj=Gi`kRho{X161~5He~xqul!I&Sizw34g!%4K?Vw)<=zHxjcsK=ui|HD{As1sux?O zO)svrJI|phTU;5GNzGEbZ*VsoUHt@6DDYhcsg>VQJvXeP684?R@GDD1UL|WSjkuIp zpJ#M _w5FCum9!B z`1SZ;j(~Je>cm~)+5v8JAFw&&jo(miiR Ua>dv zB>q+*_vB{y%g|n*{kb!D1*)}|7a^rho3)mSq3DU~^Fv)#)C8hjbJ0A?l Dl^$V^l!*q6wk)idUxL$sOb8?+&(_RQIb|EcJsm{eEw@a z=g%hW#@NN_2WhYxocKk1c5WUz<@Nf%Mt)jCk@bM{4uSKkbTwgD{%pz(^Zf6)nEzV$ ztt3F@wP%T=;Lo3^z-S~jRrml$QUIwg5%S;N^8edq==s*Osbqgd 7++j&-(`=d*KbxqbL7f46T0~Wn7s{ zu*zUT%-+fTUHF(Zt*uU#lXw&q;IL#cdA|oiRd2?wjhkP0yp|q3id$&3xiUHB9bm^n zx`!h8e>z+0U`0Ausa$g{>6hqM`Nt&AAKyROu6L*)h}jYES+5@Xi>hD_rds?Dx~_WM z;Gjm^Bo6fT5d{8st ug)>&lX=H!e W_>z9-rYXgQNfF zHoe6+tZ=19c?4CHs?H48qMtXB{)T46x8nBCQ#XI@GX~~g<%ksO66a}QPw1T z<{r_wu~BGjUNE+a ix4L)?v>&{{TLUYbvTOAxf<91l6w{SpCkvg%e3RNU<0w;C z@9uQFBg9=@+2QGjxuBr-ZTRU(5#_G$vPF^Z70GG+=>U>D(%$*Z{wN3!33O!|5RmuW ziN`7s5$S+(Q#Ziu0V1wTSRi }(EL?sk1L3^yJbo5K00a|qPhX8a0b7fuzVLC#P^!mQSqXzOC0&vvX zJBTHF8I&NwM}TG>56!$RD1nsG5C6WZeij54qX{zMih31W-0Ve1eXR?K09^=bp4Npr z*+L9)MSHmVB%5|{8Xo94UbMi28}CaPyR1P9DLLM3lHOA;sX{ |5A0B=@J{?#4{mnw01=P^9bNwt5JtT_TUNjc>x3}>=(;2~Riw_ip;2K;>MKHh zdPr5XOSo(d-4f3gvivY@9yf&64T{8&6zIM5c8-1XxL<+Z$m*&lQU_@Cu7oFs@o2 I|=RMd=728Ahw5FNcNiJ%B3O!^P<2wXdEUZH_Xg5Xf;OVj%(7$_@# zfj2Qw3M%_DBR2yXAPew#h9|Z|o|6$$fLFu|nnVp)zrgaq{aBC73 znON-c+z^CpFlbtTZdDCV4MD ^#!MV=t zp=Pv(DhvrXv+%&_+uXmMD?@yEV7&@|z;kK3KL( e0C5N2?m-j!HJOJ6G?Y07yV|=||QMK1G14`LhT`&kFyMuK}U m}bJ}*njP?#QmJ+Gfn69sHjQkyU_3m@J z-%wiMZu88mFjZ~G%Tm{lyk}3H5E}kouYZJodNFGH%Txy5MW{gcSIe^L$>j5oejXc) z!B!m?-)4=Bqi-7Pw^qqL-w|8(2>Pqq-}%PC8A4!8^r`vBoUpVQ %b(I6=x6RMt>xZOF)Jp9+?nGDz4 zVgyrHSFTxw_+*cTyVk0B_%r*{q!%9rb_Voplz0ceb;M}h{6!nqp?7bs*_p5T`z=BE zL!tI3>T~C0Z-*$ovhO>4$BTXJJa}>I!&>R-n{xXWtAeYlMCles#kHx65!((rG>wU& zWaDZhGMRUy^^8o{Pk(BgPZdHQBXXCvALrTy`pP|jr{wB*XB L+Q^zycM zhSxiLBMN*OSU%nwxWjT~`?H*B^JX6@l3XZr*$WJb yidVgv<#m~0~j zq2CvkrWj@_11_y6 vs*tSf|X5QbOR18Vnh#Ikt6Fi^opk=@AVQQ1*vuapjP3kwL zw5|0uzSUP`MgQB*2U?#T#~-XJ94w$dkl?DciI&s$!yigt;x#{Qo$s``R $8RVhJQYE-}aL_OaEGnlY0mK!ZIp$f4M|g(#1w-BoMPiz0N-~8vv7poih Qb@nbcvyoe3g72H}m^ 7jQN~vT3v{~8wCfDdy+pMYmpPP zd}zrdnr+6{dMU|}WNIb4nFD#LH j>EW7?1mA#4k^6+*W`xVPh>e%h>9Ud7Q66#I1FvPBD^fviuD9zDFy~Y8~3-mU% zGj*Sm+ci_gM-Pne6i}sZNTEo3Y-SFlE7p|^ko W zRlqCpg0KA+=jad3Z2oJS60x#NAM%K;?g%Cpx6*dPV(qd9d$t{WO|dz_SEpCVoV;!5 zHJd-*GEl=jN`I`0|Fc&?ZV<1>vGMYDaA8M&Alch@-p;o7S b@Sh+1>-iO_aJ8?K1u4afTeb*U!!+b(^MTnl%t-mNu*o}JrbeaU3=09Vc&A9bM zpmfhtZFGh7+Aj=eTW4|S2tmBnkg65NJD0*b_@!B8-RBzKn>&l$Nk#b-R@uQN7%%k8 z;S*2(K{HWwF`A}A!geB@(v;Tm)yQMR9OCbY=2Z*Um$HDeN=%4+?s{N@H^8s;*@kmd zM4+b*)j8P#a24LK%CEL1X{&RU%KfwG<4HOCvphtRV@A%^mJLYf_lli$HdKiKPzxyQ zW_J?}ln))5cKZhVgS#`<3?-QLRz8cixa1Se7;$uNB?wZ?h3gMR?UX(q9qDgpgRwhp zC+7SxeND61bY=3sv+4~$RYvRL6NVC^{CTaQRhAiVM%9RrB`&FRK7}6p@yekLxwk~W zp;_+T55FPo;*X0n2~ZNEaAm^jqua>c<`V38>Us&Suvo9n%-S4Y-niF~2{N>=J}mad zrdb5F*+uI54~OpJK*%AC;QgH6TMm|tujNm-rp~k=%j%(9>G#t7CpjAfsT{>OCk9}# z&eJvk2zr0?ZT-l>7mjH8*PIjc<3ft@8%0k}v7-h5S1VLs+kus+c H^}{;4FCc5e;@JB#^7kp zKA`{hF#LF|`Gt4x+1an((6mhGw& mo>$vs5o&LKVsLNGyTmu!0wK1J{`5yT`IT*Qgc(-fjg%m|B=@p@! zb5G-&+x-&0B1%P jh`LIIitYf0~ZhfI3sOWSQhfVY+V#-|KHB8{oLBe!kx#V1nWp zmOofPq7I0Q9p-|rmDqENd@^K<`{E3ff=SV{4a)tm=KWs-0!2PxvF#I%Xw0*sZQ?Jv z`L__<{v~hQd%EnRg_~-f@MV4bklO=dmw#xPw|V?}IcA<=7w67xYb;aszL +@A2gC9>ftJ+%vN0vN)-A-u8wXDoVI5ges^PopnS zI@CVO(zhJ9pntlP^&bCylW)y&uv6-=Shh{uNqqLZiE(QS39Zg&EUkI*ZwXERJ?1}; zg<{T_gHdC(GUCqN)!gs)cuBk+pT89d#`&Z%6K~!t>WX &zK`K9)zfRg+aCPqYKwnQ{ijGHNqd71ld2+Oa>XUK4D=UN%RoAEck`; zd>{G^S%lDh2tK(Qzf*U95}KIO(7m0$%NINf)cq}GLBnS} a@>7~%Hav+}G3ecaQdxIjN z?{t*O1P90W?CZlz{_2Io;>Vt~Mk;bKlR Qn7{Nuda(W+StU z3JFdbh^J#&QXm00Zu)j8i<}Gs+Y +exbP1X%(I5 zf;{&$P-O!0Ex-YzSm4yKHBkSvn>bK-eMMRiusMM)b25w?3kTp~W;bUrCSZS6GdU+J z43<^quGmY?ZPNwTmpO9FD8j`=&+xrMP-tw>JlzM0pf#ipP*ln7%qI*GxjVqv7HJU6 zMMZ&9Z0NS!;NZpWQW?39SGnyi0AE6nZh*_`B`3F_a5dGitPs)q3+ku2O2g@ZRC>jW z4rK>ovj8hPzJ=440 6a@pdaPyK0@0KtS551bU=JziYm%P2b5j08;tx zqhYK7tAgFimlvGw3v{!`^Dm(9oYBnHb- 8&Mxrcr| z@=lJlFAA1*P$2IQ2G4u~5Akt&3}gUi%9=em#w)05hF)g>VTMtk rp%IRUmu5m vLUNnDokl_j6;R=)wuXn{VuU!_cfI+NAi<}j#=xFf(sWG0XTwz48d|DnRZQflo% z=-Q^l;iY@XFA1f>GZF8zXy;@;IklYZqjcegXZkO{9q8KE`aUb&n_=q0j9cC6xNmq| z_Wpy?6{2yf4jrNfm@X(F2=iK+PV) 9pT-t#2*m!CTPv&@1%-9z>7xCnE%e2?|evGEuUJOQM8Tl3B zBb2-q68FrO%{tU=Z~10DOEk2lNN3sKZ7|1F^7U{Y-}YL4UR@h2c%Q16v`}Y}m^BUx zym|QijNdQ0ZQI_5VRdx0=VpaTch$Dw*S0szS+TD^X>7<1#cg{yvtCf1GfcH^JMa-^ zub-K(KPKZX&N}vI{LcF$vW{*KQPSP8%ne&A4X!88Y&aFGdiGBAv(*IS%a *@fd1XwH2lA~&?VXwMi3Bw_mvJWV>PU?>dm*@x%Imn4T!%aiY zpnYow2P@W>Gik~GMXH5Lp{E~(l0t=N?H&ZRwmpxXTd=ik5cafu_B^Vdof-Km^B_C# z*H5wRxNnx{pGw }ib{dU?89ddDzn=W)hd+ztJSL>1}~=wTS5 zY #WX*5E}Y<*@5Kh)vA)N`fiXIXDC z=yiM@X~lBa%)6)7C3Cl4#}l|)OC#&`19ag{*%CAB^`%d4?b*?qR8y+$T0JUFFfS4K z_T>sZBY~J}fb)~AVUW~^AfqkxSZMiQeVi4QREQ5p`gfK1u9Ip6wL0`(Vmcj3@GU@5 zIBzpoKNI~(z9Rj!);O$@L);x!q~!G|g4Q9!7e($dX+=!W_JGOLw23T#>qG6$?6L-j z!taRliE)wf@m_s%`{4;I;U>Y$>0JboIjIXxy)n=USF3mk*?`rz6?02`$%ofkb?O4^ ze|T-uQys4^J|N_JM}pV *wm%}b zg2?Fn-;kdH&sJy|kk3IrX$6;_iwUUch%pzPB 8IfXCE}&4(=VIaK}yS?LO;{ z2OEya&vOCd@*bt}N?Dcstlgi#o4%&z&WHD5z*kvMg`$v7YEyxbRYTBSh2jl}CEB%S z@~(6oIBY1FrlweV?LHAu=z<70)aCMO<7B>#l8r=hWv$%ze5dS8w(@O$X0ErDMS*Ew zc5l-H8U4XxnZkX(z(C29GRp6 _Yv~4OyFOh%$QD6nLD)t zLnpD`Xs+QfG3OxS(=Jrg;9TX`+Pb9P{=3S hnPf-?#!{WI<8Xfrf`LE^1bS-md!iu$*%0@vso7anv{vWO}FAcMkqAa zF#7Fa*>5{pxZ~G2Uaw4!dlm!qQ=Ytx$-&9VXFxqb_g2LCF{|+Wtb!VcF9Ga+j?mWA zMy9A?pN#panGE?r+O!oD`eP42sp-WG=Q)0rcG^?v(e7@o?fN7|@+rZ$J`0`|-crr< zJ&znuiVj}H8Gq~U(M@ZwFxR9SOj4Iu%p(65hPZ~k(@+0o&FjdyaI7%+%l(_x-ibei z$;Kl0=cjF8Q(vsl1SB#6;qD+P&f&33&g77|XpDGx(werR?VRig1#OHscNxL=`ORw& zJ5xaL??Hq-3tY@4lwpO|Q *aN!y }n!_UCuN9 z1an!|l)3os&tBHl)(+xnTgrq5%g*wn4 @Z|OTI&)eoGk1N54@?pWqVI~_)rh>hZaf{C z<-Ha-m~gafeE;hGJfMz=aS*tkW*RLda=r#Bbi#@yQDm01EooOaEFZ3^2Xm(LpZUbZ z;+K8Xdl?}$C)vS=b}EkS$V@RVp-r~q_~AIL>9PG-@v_}~uX~4|WRJ&@TofQOwCv@x zbcB&t=tZi^?Li^n&n5fLO6W=JZ;0hu6L@p?#ZiMi7|XS(fBufA7&^CT6&mwqMD3z4 zM0G;@H?$U$0e)wF_@3Vr%=|BKBq6h=u=b!wq{w-bpfD#^!Yqo+;2W!M`(wEapd3VF zx~2@|$Cx~(T4%M`yM3zbD#jUEdB1kS5O^|8+oL1!599I~qINGaB%$2{vg>NQrdUjF zVou(N6$Yb=L_gpcvVB1gm!8;jEY@0Q&?nB|2ITK-~qIP91nJQ00l RJd@l* z!QA!%soR@1TRJfiOydYVd*~TE*$cT>Jk`%^0C^pp5CCYvGiRm(rk{TpH<$JoQv*l{ zAvSjRc`sCgd)I9EVH^(t>?9>FWKnACLxA^_^cyM>T{z8OR=5OEGrE@+!}|g-AS;zY zzrxL7>p7YJ6}1l}n~BxMXUiUdTK#6P5U3!*<;rJA1nMKR`Um^)ZEXQiN3GM$U{Kc{ z8b>IL3ya@IyqkDOwZRVoj?i#AJ3@sUN94D{g43vVwa}pwBfH+zB6)O_6o^!d3-kqr z9j3YyLzX~N4N%^jO6loWHDvlH!FiE+QS9(UObSL~LKFhTA<;qh#d$l?i@mm$*7Ns} zMQn1SB0GDc=3pj;9#Hgg1YqU^VkmSv;=hGmp+r{H(96cq-n3`N)mSBFEk>v~1YS_H z 1pb;X HP4fHvn`3>uIP8sr)MjkKL?(P z0*)Y oGG4u3#Ck+ z1&ODt|D>2q3}$tX;S`_>tIWI-Ctz&RTviQ$J4UqS#h5`l!!bBHdma$X-(FQex8GET z_^DHL@iBU;mC)?~4Q>>nXs#I;`j=Igm2ZMlS4{ Z!l!RQ5P;o^YP@3fiIALgu`wCZGDK?|CuXzYaL|Nb!jQ9o4%$Be(SoKDK{W- z*rTirX&z*RHrk)wo0<}%p~j=xC>wsYdpY+|;jP)KmYZ9I-ah_oZ(D&3^(DztX9>;d zD^#(ARh@4bG-YhAdITDFr*mDH;h9wpZ}ZJ__h|a*-S~!=vslV6M)_jZt>F=M&n|g6 zp6=w7zwN=vux)yCm0}@^@rfOA{oh~r-Y;%EnHFK~F2|g@ckmk4s`Z+M-D+6t5(W{D zyo*8SpSR{#2svtF3H}N@84ez5Bg-x@{I0q7C2uyjKF+J&j-HC*E$`5$Odk>f%FxN* z(7p*h|4)@;ZFz= O z^djWXjm-GX=2ZmAg@)gcTWNXxOxWHuqW``xq?hDlTOzs^V*C){Zh+^ZD05<*6Ya{B zNcaSwcVYdN%CRclszs&yR*{@B`VM`tM#5rrFTEW+L)wtvmz%@I=7^*&(6M=oH|kpv zfr*9Vu4)F8b{1-#L!+8Xu**ZPf-(Aw%B~huFb1&;mfg8#hVM1B-aah!7X^2u>AyQd zQ)AoY@cI w)*&qEviW`FOX9&rv*%O9)qh15;gfp+clHWNF3nQZNT(?3*uHI4Gs`pe0 z@%yRPr0Z!ERkmbkpq8aYX!SbM?%kQk;0J8&=Yjm|o6fr&S;6fO1VuK7>pz6oWo|YK z-YK72${b`}*}u$2%-p?0G2gmV28Xj}4lr}^?mR)mXc#EfE-~p(`v4QC+j4m| t~C`9E=@cK^5C7+p2> TQLylV!pl>jocAf& z-0~m3j}-WNX#AREserDCXIfAcvfIIP2J3;|86?3U$C7mb&!qe;;8DWnLM_Nz%Cx~! z!L-{0(J_Hy;`ZB;tE1t-{0E{J1-Km wAMOi;&IxW!dfMzUs^}m4dxcUsDjDlD zHkOHH|NR1bP;0A0{pz@hL@z5RCEL7O1JWl1<*4oODlNE-4x$)>9t3kkIFdb4u<8QH zs=K3*s??D(@uEeto(ja=$7H r@ql_fuhG7z)!*en59btqp=HljY5Z40UE|^-HK9KEzQTz7VbA 9B9W63+d5jzL!yKw(ejbmOL=yK|P$-#{;pK$W=AG zW}wYT2C08tk>p+;U@#N|-613(WsutMAp;u{Horx&N_;Nz)Vg;zeh7a2exj=Y+?F~s z$^8Iqr(J-^uYhe^6I}|i{oxTQEJ@|VGjU`gpz8nzOWaa(Mb;V+UC`Tf{KWD|4H59o zhuQ@xCaW 8R^50&Y^^u4r9nmA(*dSf-e=0+I@SLIO8;rN@!L%nO)L zS&%q}_sHa0V-h`)+)#7RbymT`mY(Zyk6i^41<(T?a`!>+La9z`5F=D*Mi)Y)xuuu0 z^K-bdVCXb|FL0AQiLqeHRK=Bvvq64^%>_~|*cdCI-=_xaX)t`;M;c&K;N~}vOXj6# zA(g4|oYZlob=D4<;Yh465Udxl9%Y(sg&dW_0j=;qMg0E~BY-c3QnsvH2u_$_sN<>j zggTVhOvf>zb+0hLlp4xO@hvRaL*d8pgr-8&xxL`)p<(T)VFt-(GcVzaqmlsjy^y{D z6i!*~ !498zMJbose3qM&xpW-+S7RT&`_e7F) z$C&O)iU|a4IiaxR9+IrtI<(`(#Mn1y@BM1ba2X?3Wol#27G;28(8uWa!PbZ7Upq!9 zyN->i6-zIc*fUCvgOEX%xC4jG3urdabAeZ=rsoFq(}kB=E$^;-On+1K!*sgElJREF z7h!OXbOX)!bc3iSyjR$mUUT1DYU8S9eEDBLI|#G|ms<`$pWc-2{G0buXQ5=(0o51T zvf-;pUoWwTYDy6l0aM%LF$b9u%2%)2y1hqvbAIG{{)FFDHPBzQS}8qd5TAC;9WDQi zM<>~1j>Q>CwD?V{K&4a6;8c7@#g}2 ~rIf{mpM~EJ49-3Jl5Gy>nye5tzflfjTQ* DTbss>gy|Lsp-8i0jwy462N*7BiA4Ab}I0Y#y$ z<&>J~H8Jc+E2d3e2-7($m{hIwCXKG}j$wSE=jaDHgR5VOO0tdBR1tjQ*!#3son0#a z`n1p8-LvHTaNBEjU{T}m&+!vf$zNlro?4t3>>XcIP-OBEm2CaAM&{cWvMbB0z4K5{ zUDHx!Mj1>MDgZx&+C<**&!+%=5cwObZR#?7ABrhl1uF?Jkd|ucpui#4jXzEcThpuN zDjpBGr?TUx`+hzvhW{K^Df0EbK6F8Tzvr;1f8#9uz+hmjmHUkEDHc&udt{t%P`xb> zhP{w4_3farvj__nrkJr{xC)sVlh)`9jhh&=PsZ~48lN^zn=Z7Te#w^W{SAfgbuw)? z1Lu&whY8i%6bqVlKQD~By`f$>aG>i8@gf3Yeu;8jyk0H1)RMe3%mc){`3E9_%b#at zb0HRN@$BnTD6d4I#DW4o7FKuzo0Ib9D-(mVBv<5j5O>G=EobRYs02HR?2?o5Noa#A zM}zF5@MFyGh1PX;W-`Wxc<^TKg&+0zdbWd5_J!f=nqG $yAjSQzBBpYLk{JJzd1KHmX>{Tw(}RVMykALCElz8s)w_;Mi@$i2BNmfUPH z^yQY-Om|ls@Y`L`e#I=WeBaL~32;3jQ1ZW@pFPLswO>Fs5_znb`|1jaUZa`FE11?1 zLi+_=tBNilFF|bw3y&{_a=x-= l!#w z#5fZ4nFMD7XxX>-y2sPFYQU>2&3r6sjQYup1QS(k65O!>DByQW7%bOD9~U|VKN%C? zFI3N$i!Go$iHWBF8>gqicceP<)gQjCULH02tL%n~Zjbn{YvObhsVy!Ao-y5)q`7eM zx&vhTl+BKK=qE;>wbMDevO|lb APt$ z7| Q9Plgx3rys!Xa2>(y5RTv z_wS^n;0{s;qB#Ovh~daN`+5;4x6Ehb->x9veY%zaL#j{Pm3jrRwv~|G_%_<+a7b%> zP{m1ScIUnE%p+f _Iy zaffq@CgtSWL0q9 t{+;3B=!I9q z3L||m`s59l R*HRU%0(+0kYE zC)*yYM#r{zJm<6b!7 |rU;K0)H!k~_FOJec)cd^!zoy1xW*lSCYFjq z+?X63w+e=10sKRzKld?sRfM k&ujHN3htSViOi9t&Y0f HC@wgu0`Wakbp!LzK0rpHf~1p`_I$R5IIqFa`a`_W7ky@~Pg$YXtM z6&VDRlm!F7C0DGeBM0}`HcvI!L@H27bxntOF`bZTjqk~)^2mWAy&Ad5-2!kLx)b1> zcVS30?H0-l;mJkD2MBut<7C`pJkg8$9oSXZvjR(fZ5i~Ozol6esz22yop#6Vhk@;c z oZoUNI9qLDw#Vy~pYQXmuDtFd&Dxz(4chn5Yr+xBObA%NH>#Pp z6)tz#G@mV#do+ls;26b=aPUe1S0Ae?7ZKt2=hX-LP6)E6y*jYn0)uBv;7BYD_7IjU zJX2jHe4lv 02Y5 zQp;BC^-VLF6^-e{deLvXKLk}12HJWWNLFpUe41n|v{b6I=CGUnL;XBnUh79D(%4#9 zM6RN;=saFd_3w)3D!HdWRQbqlAL|e29)M;3q?uxVulp`P(+8=<3{A7pp98-ke+T)` zSoEZsl&L4XaQaT^?KKBb>rm13=l_NB;(jd f>``X&pNp`If0`%|GjP$FD|rhv zaD?@rRtpqV)8`0Hxt08eeh$oS@>_nw-1C4ZZ2Yy3$$UwbB<>tKi1dHwA?)xOWz<0k z?1N}Nzi3#oZ(LUdy6|_iGk$ZK(Q8Hs91_d+$xVK0T>!tL#%r2+sy| 7q>VUQ lNs@bfp`TWx zx8?n_6uW4Z`zCT(02ara+mIYg9;5S1_3!=CYbTdAU%8m^d?Fw2nn{SI#C&z7UfNkY zIUlN!S*Vz3Bo 6kpI8A+Vbg>nj{e&CX!(O4ptVabAHsgz;9*CfSFt&MEcnUs|`h zUqC^Sn4{CJL{TR3@NJg956KsgA*Q<|_vD3hQZsz4q(sidmR^h+jl+K6(bvo+h*&he zsPJb?NMX!F>zNG}VEQ`57({MiZ{>?UsZp$PwB))ctW-x-P*VZGQhaIIV()6(s(09& z?}k_Q+!?r)-BP?zC1=MT!DHMO`$>`}#ck#4*OfV&o8A3nnCD8!)aT{2bnE6{qV7Hz zAL6rzjnAKqc<)J>_tiK~>f`gaICuJf6#WtQ0+r>i@tnKBt6iC9vz)}5>RMV1U%@z_ z|3eypcL1T9w)g)m?N$Goyq#QnmqJmgnIN~XR2F`YI->ydxqs(w?4t=FKo(chi655F zOla%qas)GA(21)Ui+b=`HiDSK`D3R%l43?b=*~b#`kb>qA)`%_k~D=K_IR--&7yoR zf=C77)F;Ot+BT=KH3cgFM3fGkl95Ri+t-_TSDrWB(Odrr64FX(Aq###YO7b844!hh zcNKNKRVByvFlP^#SieN(`qbQURz!0vx8er?}+4Wr;3aoEq&DzJP3Vpc0IOL}Ke= zg*7)l8;k0U0-g1*ALj>W#TUI6SpT#4`xc)DiW ^_@mTmRqDgzoegSyg$ITaA1K^Z^^BJAUkoIWy1F3V5oJYQm`N;{ETKqPfBmSF z0p`!kKRP!VBbQB9)UPK=&L#FeO}P4e1SnB@E_$txm!?u#f2|Ju?b`j(aKK!XR99_o zK11_5PO^fRex8*(1 n~Ga(fAshb;vG{ z2?J4?@?`l{M%)=ekKXT7 2s~a3t z+Jo{CEjI-4^7-dkD2hqe?(ibuzzzDLr$8-Vo-DP?kbWv9--z1+HR>qXaX_7~tpH8_ zw@2s)S8$Sf^hw8`ma3jgc^;1K evsuOS#o;GG{yZ`) zra$i`+ZU z{yPLB_Q16F@gxE;|Yo5`*l#(p{pud zgOw^EsgWhYFH?n4gNXm85^KsXFr16{$4@PBRqG!9ILI~NsyvGG7pJ{ZaD0R^;M}9Q z(U7hotWOsTAbpsABLTRzsSE-37wN+=l>iK(1v$?hq#re8YnMs993c(d?v{8o%7FPC zT`Yq|yq?x0MjiZg`%X}Y0bP0 vF5nder(TQK%cPDa z57c+IR#ean2L&DwK>&v8wEfI}^iPS!^aC#xoT}5M;;ML#J+Dxot|8>d%#8=~2sd)1 zW5hoe-UvrVgi%u_V-gZ;w3P+=b0QLo$Lm8 xb>33+3-As{psG;Ob06q451aZ5><#Gp#R}`2x8{?G!`ttsE!aKQIYXRQ6?)G zVZ(>RN|KvF$elfto6Qb|;|Q}elz!yeMDC;J7G-l9L6F1lR3BILPm$f3h(ih6$iKK3 zm?;j}(YcNQm{%PBMzsOYUo>AXFC0YAAZM1hpn(Ba0QB&t9GMqJmOt1>3pjJQS(F!O z9)5g)cpRYB>E-IF_ilrQU2)f{h6!?yX XE7R$G z0r(2W#QNsjAO490A%m46QEoO}YR} cve=ME+!Y_S7@DTwd6f;+9p- z>T#eu0>Mm>0}0F&LK^_4T%SlX1~{${4)#-|Zx{Q|73$DVV2ASpX~{bK)iq6D6Kg6{ zLn#${3Jlj|FoWF(UnorSde(0}aIq*E?j4L!Ztj4khq#7#k;#SB)q!95C1B z&RM;*d8hjJ$esRVPO?nIpdt;SkbVb}OU<2)Ggd65d-#M#-+$Sxb3(<{*sW2pv2I9= zxK&_b_wtQ{7KFT+B}}z)Kv!(7kYFDE>oC3Vf@yG)CF%Qyp?2M(PshYruwp5*jrOFK zBB!CCe#0etY{SEkTdySsmqnd*?uK(#Mhz7rmk1LVpFl!~;hmDx0lTJV1&L-#1itu2 z*WByc>cWladWq@hXTRJ)n&$i2+L{&^DU8oW9!9TE#gxpx$Z|*=8xtS-`d33X6944E zUZ?g1?`-AuFAl%*Uh3rZ1vNdo|A;+Is^!Azc<5)PirT}}Zn+(zfnKRjv0QH#=Ub!n zSnq6<>73!cvlvCTU8EXy^RiQ3i57L7)D6TqH(~kC>9hv|jj1r;O2OnBr3ws_$+Z{x zg0#C@LDmIL`J e)qqCV8`Yw?9&+O=Q0-t>SZGVNh5nQc(FsgFCNE{0~rx zy8uN(B9AGY$K?-Lw*^CVCamXqy+PUgZz$l+h{(YqkfH{Le)&gv`lfoK7zW(%a&<#V z6tjFj#Hnzfuaai&S>wH5y|_GbCUX7!%;})cVjpcKKdlftWrS6db26@u@^ Lxob?MX{#3J}-WUp8U0RP9JsSbrxb`xMYZ4!F|_Oa60nma8#1u<_M~EGdh3` zQ?Gb1hA1su32h1=L2;#7kH{;Tni&Iws6a!bx63^(djhG-`Xo;8%KzeR^(RFNzi-Z5 zdppQ)Q@wky>jx5&;u`(x$S0y`x)2S6AqZVe6%H?0PsQHTKaQIJ!J!dicL!xle$;Zd zN`g$m8#OZ@8*?PSa`n7cM#UcGe>X}>B%vfR?C1B+(yQZ|)B`# B60CxNF7JJ@GgT4qR*=P>V>{K(Vpc#xT!oGU>~T{1`3|eR^nSS@?6) z;+n3c ){<$jsqs|**8^*3-K!IzjD4wBnrA$ zNKSlW+Fl<1+O(hyd4+H$`F^gJ7#;xJHNqs1H{Ek@Avpb#Ly$bRS=@`LnN;Q2CVMHw z!;9<3;m0H5+5s08x^SC(G|hU6j_*RQgg)8x7Uy;U(^qoOrA&vI0In`133} z*n4`X7~uee4*%t21J#pZY;_?dFsaHJQSU8U4-^KAVPv=y-DcLoYT{s`Ft9T|;UOZ} zeymqGR9Y{~n>CdQ3qE!bA8=f_Bgw@HPFgJ0G9O|HIUkCKhgcQKoB7J+?||^dychUh z3aA69D6kR)>{2_fM73W6^`J+T8}@uH-yIFIynEo1s|rL2G*&Gi`4;yT1rpnJAmDK2 z;sE9gySF*h!B_gZOv>Xhd|a;uroa@!6FHT78=L|~RD7(;nR1&8ctO;R3fj|u2e~VP z%Yb}^k!)tlso3xwPTYOA42*zMn`Lu* bQ-vyb6JbRJa;sC+eA~z%H6G4?@f_23h)4?L6$%kms@jTJ&)&(jhGS#K8Lfxx+8O zYQ?64nF7*Xbw-h$+Ey3;wsuOsl&n6_v8pJ(Q~} jhEjk2tMhQ?>j_xrwf+1bwjG7v5u 7;@K=+?~^!oPCdQDg1EK0V;T6Pz$dyGM&Eam<- z%pGxE@P)F#meGfoGu+^2WBnhMd&3#2vI_OKp4Pd(WnE|JZ?Ql=HrcLBF|JC|Fv;95 zeJtef%54x~h*S;ON57 5xXcrAt~=xyvkVd+@ zlt#L{yStBfAMjhh|NY!o_l0<7X7@ZZv-f`1vsS9hck_`2c_ulNC;aVRuWIimWo4Mx z(++VwDM?#@_z^9+>A`%}66V~fMD}=_@qEosveJfqf!`2WHNs9Cejh=1lR&AbjVa3> zq}3Z}R=Hx6R2-3PzwTg!?6
6wb7JeH1y z5N$ ?mEf|q+I@#VH2F4nd+^5vg2Cu)phRR~Q9H`uT3o~KpA z%V+nU32k8AU1#TPHmg^$q7j+wfS6{^2NleDtQ`mE$*9zonQiMU&C7)5%1@JsHg?Np zt*twKYtMd-ZDid{IpGd{tH|LTZ}J`^7xPWgJA)ctp^TJ!_EXt1afY}`{Wi5?EUn*M z J-1sL#&~Z0~a-cpVnMeWWzUS-&r?_Ni3`VpT&oM8r=VJVO zd3%-U(K2UpqKY8icgu?57QJH1sJ0*BWXo%vB0ilRrHry{go_O6PFp`|b}S$rlH?2M z*L|nfwqmKSGQ2ZB!a!7hsYd$Vp-8aDVop|kpkM5zDDV*8(6TH11wQ!Wae{4H{D#2T z1E1w5oqZC%1RG(=LBm(bGK=(3iag2-r6qSDc{c*2f~pR+!iE+*nt;%C=4sxG_V#4V z-;k!!NY~V#2d>Z5B53x*xnES;{1SeD4yBM@PA#k+bkfSfcuE_zf)x`d=!traTpTmQ zizAt4wk&=(EE7p`P0U%{i$RELaC>nmFZxn*a+zDQ^3d?~wA-;W&0?^${$WM@mV-D> zy3+ocE>yni%dG^`?)j+Ud^nbd_Buwk#o>zw=5Mjn(4(WL_BEjN1Hwg|pL5?PzG5XJ zsZx5vzN^TH8-g!U!pb?%P;KdGXhpH@$q=@UWGnO(;-YKc40_(l)eG|2)X# g5E*ciVptN!o<_d)d1!*?nOQ}K`=F!?8rn;Ktj%xKAcw%)my)?cKi zJQnoMhXizJ#q1`<1wGssnC6rfOsGdF2x0 V3{s6v6mY zV%~YY6AOg>RtgGssbA#onD7KFVfIxwUl7FRFCi W9W4-u@lFbOU87wO5!f8?!_dcMkldVu7WI4J&eCU836wDPv8c#v*bdhw>+ zKkWt|5SWyfQzmkxgYfv92IjmUB{`-6=wHW=S{aXKC}Q%b6 }sS(5KlLXop)fmV|0@8KMY0IK^SP z1TaS=vJj~GMuba~`2J_siu^HiwF71)ov!6TQX@( RMl~S&4S+ z!*d0os)dj+)-X*GLjt>)hoRfG#qFh;kc!cjSee#u{jGNB)w|^r@$nv1#5q$)B0zp1 zVFX|IpDPx5S2x61Z^TCIyyMBuXSR8Hvh}$*grBU95ULWIti8bX&cnR_6v=fevPxX~ zXcJ%rA3L+1N-T@FKsTVO>E>zLQ!RLrpMJD!k$fRh^*W>wVHA8OAJx@q;+hepAT5Jy ztVQO@r+`HES8c+KGknioxZO2MXhdE8?dbRkNrjg~`h`BlQL$~UeUxB6ppqP*sI26r zCWK%*h!FC_I+Xef76-?;_OLJf#JWbS1HYwtl=h)(61@tm$0Ffso@(^-N*s~$15rm> zZx&sY&UZVQB5kC7$S+!;Ygbt}17kM3Za*PX5|~`+Q{MXoWeUNa)W<=E9 0uG`Cr-fI=_lRxIrTvy;Q99b_$kXr1+44p%Z50f(^!>qlVkjzj=`U zz8C*K$~jlgN=Dw&+X?Rs%>kqT&k?NJ|38j~ud;^}5QsSp{DLF~ifzB$lZC%-TT<&b z-jrAc@vgoASd|{#hNmEZ!=3R*%h|gY=JE02)cQl_xIc5dk;4xlO^*bT06_|4JKR8o z=b{J#84?htVt~}OU<`!Z1yW#uZj(&14v7#D(ZKmOX26FXCAFO?K#l-e$fEB+1SSmr znsx(10$Kn7;z{3lga_j)fz)*aY8XNK#`XmtyrX2GVdkzBA;{pP080Qg%P29AMlZXL z(;=qmoQ<9PGd|?*ijpEn>9DK8r(*QGlF9l;3J@T1jk52Bml2KN@?z*7&w>wrHL<2S z0!k2&>XL;hP7Q#f2ub%CAemX&DVJr)$nI!~tT;CtGk@GFKt1Fko>Cu5?G;LmmMyB@ z4$p6h6y0wK8U88-L76XCu`lN9 YrW1 zCdk;8D@y21?PW;m#X61+HHN=urgEfX>bw_CP9I6$i7bsh5aPC8!aeFXJo9f-=hH32 zA1>P&@Y Zv9X`DUX>~8{)EFN%5niY?_xdkIrk5Ba(Gw=KFl( z&SNNVx7*3GOE5oMcUt5^J>OvIrHonVuU9(KrfL}2lur_?^z<^AhRW!vhPO&Hih`c| zp&JEI_n 8o44n0`9`uN`|RZJgYm)%_9YqL%BLtZXXvCP`efHfKSURZVZKH}ZMt zmIYM3ay4O{<6l!zsj-h5r`tP@PI6x|W2UCf%+9u1a~w<&7=7l(Cp=dnA3HhDsYkJ_ z33jt)RYSKH{B(!KTHR2H&qlCqQ3vm%QnBVImAYehGVZs?sSEVPT9bHX6&(}4#ai_a z$KSm;`*-r@O@sL*ERG6LNq9Jx-;F=bnqy1nZ*~rJFq_M2!ml}Xd^~kNb7u#4>FzT% zk9Bp2*`1~bRo#x&-Nh4|{B{S?y1w(CR5L3`CLzRZ-{i>cfWA-n&x!j;@9}-CjViu$ z+KVFBM|zSYl^LU=kjE^~(CyWRX1#xVuj(lM7fm?tF!S;R8Js?UQ1hEztK)8u#JG8p zk;{iV VV=2HA_XFUtqTbm#fd2&FAVI;x zISJr@z~&AthS(7 RnItQrb1 `^rCwz38sye -$gk3z$+tL`x#5=E=IF0UY2t)Pm}VR828H#4 KxK^mV+;r|sywH6O!2F8Z-2 zj0#Ih4s9BYTJK(US*DGf>0?LQ@v~Q9RFciR3S7L3J#3En>FI!n&NR*wOkw(|`5D!s zpJ=-vFGY;K%37+Mk;a0!8{xdFxRj8e&%^pkZkOm6qR8Sbel11Y(H&P7b#j8GeT+mY zMpy|pgguy8n~DGn*AK*pK9+(hF962f=o0}oBA9pf?}NYOiC`( )!-?+S)WSFKlTr8#Cn5P#`fV=6>D6qxTK62RZ4g1d$GxmrgrMAYs;jx zWX!a)+z#e$mfDRx{uhB59U&Ogs)f9y&Q0HwCi{zNiZ$;yNNOU+b)P#Y9H ;9_k+N h<+IV<^b3MKmNH5j-Bwg;76 z2s?SUlb&fzBx7V%8btbD UDTN9P!VtRoArmxguuE_rB>a57G84-b}pzpmNvR z3%|PAg?#^vj(M3cEhT}h);>nAsgOlV{lzj@K5ItQrf>XVtgFwoh)qgIoT0Lj=RpmQ z{(gcvB(G1eLP_3#y9#|ATSn4WSM{W_O~2kR>W7T$j%vXJ^W>(x-zVjVC=^vIJSf`x zE8PKXf{)P2gWoLgTNv+7N|+rx(SBp=qtv8=dHL#n_%B*2zB?xIBuS-i(fW2F)(~ X^!5!MQ#4(*S#nCHLj<* zf 0CDH^KSO7f|s~&=7H-`$2NB|NlOKl@CM2KuVQtPC!8}qX!(fzhg+= zH!PXKnWar1|G6Eof=+~C=K-uvjCOv_n_7Gq28ipIs`P-BIeVKI*4b2Q&}~>j 6Wa)}ooClJ79GEM+Uojs)}1z6NTjF=?h zu(ccXu_mjKVXu470Q+^0 W|NJ%isZW~Iay{n^G(0dzuh_|@I> zGTT3)y7FMlsHA4Vz|GzeWiMa;#GM+7&A)qbA$);aAboIJ=b$Q8qQMoCV@-=E`k_Uq ztSF3&h8{no(C1?g0Y2Ityrpp^4g6@r0?f0rv<)0xl3>EFb60)%qXI8U7jnxkAx4Xd z!~n-o17cJol9y=;>cXM;9O`6(I^n3nExVTVVNQ`mt}fIohU?op?*jy!FhUlb9F}>1 zHcu0$4INbqJku|*vn8J5Sy2^%T;=p~ZllSVKff1u(8S9C7|Nt^JU{mhEz~55>TQx! z>^le8S>7)!@0YD~%?NiPpIv+jCD4OEGte0SoWIk~7{yD2rH# BMhq9# zp#6J^d8ABKJBCHpN}Mgnkd#d;vl;{Tx!9Ye#mC` s(oBEk%{@GNuN@7PZ4+{l|W<>9s!^gx$*9Zf`CKs0Pl$GIAQa+%$Y2w zU)OaF|3U}@GxU^W;|NZ$3u+&F6+TlTn0>b7AWN~SwJ!f^(nm2?0Ky*+i5;2n=&H=K zrgF Ga__+j)BXY 5#ADK0)y&jd`UWwbt zzLM3}X?Fxw?S3ONk_Unx@w8`Oig(yFDazbs-zEf`$36WTKd}f^obGS^Ak=u8^S#15 zdmJ@yhr?3AxU39~3du-gT4RSuUvvt~9`(xdsi7gMIZd9`C~Aq15%%5C&w4RZguSv$ zqlx`mU+Ij=mI$0z_ $}`NS|#jp z&~?9~hUkPsm0n#LyD`67>3L8!)$Q}d452uFV}y)#!!>?5-%nE6d4#{dh^<;wU3$ z64&uW*nnVwgLy_@rv~lKr9-QW6GHsL_m!mV>GjK&+@SAg%mu{NQGBG2s6nI}r+`$t zPDlQ%V0y?l 0tV;&;)VnfEn5cuU*gU947HwW!xN?!)c;B zdzMOY+M?VCZSqZOBBWklPSK0JMuF%%o+M*l6Ue{ZM*0=oV_4N_f=%^tY#KiLU mJSEsn77rZ2{((@q(!WlCq<6$vZcP{oOuZnAQm`nx+skmiz*Qu5 zz9k&PlK$&N{f?bE`%ey2# {NVXtC--Nb45klDqZ>OMN}Z|}I!B)^)Zs3M zo - z#h=lXBW7pirB%j6CFGv*dXcT2X=)<{IECyyBQ!=4gxh!x z!Y@e!@NLz~W#nG$Owi4eDit%i``D?PK~kb(VeuxhAgCEcn=pVN#S{>H0^TLJCtwOa zDSu1#q}(RE5$|CzgX#9%WV{vdxk<;w1pMJIZ2^!R8k6% Oj`;6cy8I8uC7X&JW zyb6L;r6mC`(CXzvDa9^Do~b#Fx5dPP5QwCqcF{e)@d=5>!=(bv@DL~b=RO=h2WE&0 zs2w0`OJIOo`iY>}U2(uUy1FSMfCdgIsS)D!={csZKmZx)aVj;CfuzJc0jx0qLKE2z zi>pmW>ZV*{02musQi%2efZyW5vyVhm3yMJy_od~LBO=2}aRkkMs*(ZZw*45-$bA6P z%h9&cpy@2`9%PxQo~a3O<1hh{%0Zw)2+%YU5rE-*%s|XBgren4LH-2>5efLX1Iky# zJ@ r??G^`vRLQPA3qTjuKvy7g3%W8yH508 zQmqG|{?y-KGyOR213e1 #3Cavnrv(q>JaZ1lHF!u z@5iT9s4X@(r+#POR*E?Bt;+*D>_aXPM(#=Y>WuTtLa?(n`Fc^p1D-2JMzP8@m51g` zi3sx~mK91iDQI=k-`eVI$(ZE78b!{9(DS=(S%!tT-G8(}E}Ls;?3sI~jdONA?*6G= zTIansS}Z|!T~3W|>D_0;Z&QXN)f~S_2SEx^d~oYVL$J~xjM!Km4Kgb}?5;v|i^P;D z(jBhKmDZAHUaM3NF~ye<>)$qYtgJ|s3|x+R@l5TbmeNp9N;NN&H?Dc8bChgI6#aRp zADmEqYekvmCr%cQ>nM%4S&z%YxJ_rO0nGQzi{U|eER(XpxGItevxIG)+i9@1!C;zq zNsL+g! =F z*A9$zo!7c>TNcFFdIrde)C(ELD0tfmN`?4-qpd=GVD>xPOmTu;`5V$7s%KV#lJ`bu zvEZES>e+9I0ZBOcd@G8C@M%gjzQZg1SPJ kf+^M zdp-fPu>m3Tc7Ot3lx1J7`)|lz_?e!>UVcwovc-wT>4trkP3N+4bnhj|YCU3}xTAeR2lPoSQb>wYMm52n2h$*TC zExC0|g4&d02{8=`DRHBo@TpqLbbWc+I$;{_f?~d@P*WP#v-L8tgJvl{W7uacvoCp^ z?B^8A*UV_lRbx{Y>ipM`EBP`}hxtWIivjKF)~NH9X=>E&+R#j1vcmBUiG@2q+>|G^ zv_;D~57IC~l7Cd(#q=hnkT$Bm-U>%=_^8Vi?U+|_7RGbb*2$9%H?i{WLi?U9?V(}B z$Bxj5cZ9tt6@r%JWt`R~a^i?@C$*Z0+Xog{nqzIMm|Kh2{+1jAFSI|exqn`Qu-D?v zS=g1EfB#DU*DLZbIWx4I_ay9P$Z#WYmX>^%Oa}T?{)nP8g)Z!vHO($t$P?utE06?0 zH6VbfD#+agb|V=GfkqP_AAL4uhzz|NzdB4AEcyZs;?$5xSl9505FVXY9PTtb#d1vA zO-c649fq>~(!?}}7DL^cx}Wn>k`kysb8x#Go*UNavPl|4I3w^X5ih^=VIINdt!_}w z$)5y=3*2=}G@lO7H>duh5F|wt zY 28F zY49-1$C*%jr#4Ok_q97g-~E6d;n_{gVA-lJ2El`au|dGyYt5k~Vi?ld?Bk_7wwf5D zv@2T~ptvYy^o*GIpqNaBik|S2uIrx~FL^iY#9#2mL#8hU8m6wzV1I?b8W=4W zY>LZgCu7XQQo#zC&t+*F>W@y$xGhy!Q|P8_jpvC={gr_D{okdYkKC8HH|qedu>U=+ z1&Y`(LvXph8;+i!C0=Fz(VJ??#WjgND?5ba+uP-V+7wll5$wk;5R01xrLe!mv3hqb zIxxO_MlBcQ(;X;HE8uvEy|%~F=CTVzlFM?X)++fTSI#vcc)Y _qVdiH9cf(=J%? zGQx8I>8_OZyr9>ra^>LsAZzGyC9+0)YoEJOBJcL*MEbxRHV<#i6ysT2!Q3J(<|hny z4<#?3It-FVA0?wgL1!^2Oye%!A7&r3VQFarF# HH+6!DoLmpE}fcrX5$J0x=;=?Y~{Z})N(qV$yP~td^Y6Bda zB5^9)+8<)fd2Lo`6 ZU%qykXXMj)ONR;@YwC9ufa zM7c*~Gw;@=DiSjy qCuiH^u{HqW22&^*V%;v0YEH$I)4w?{di8kRTDq0 z;}!mj N3SbScbJT{!)ONG76lM1CxK^o z&Tc11^eM$)*CP!e%^1uO)@;XD^w@q7%rscQb~iLjYM+qajbLgMHf?5`uW6xPzLbY{ zGEK6~2T=c*BUNKl>neYn`0}+p$5<+50wCX8?LZQt{U#^k_SWU-+Y?PT#0OB#_sVxq z*r{3VGlOiCs2|bu YPq$@2c12CpAWCSrt8Oy}gpjQRd^8+5nzdrGU(1G$`ssLEZ&tc#~rgoxgu zW@Se4u@ecsPNwFFMdwdU9T3_JfLCZeas1n7e<|$A$eG##$xE`S$Z3XV=S4Fb!}u)$ zs%?y;pq;c%m%HRcGb#M(a7hyxj-C4oG^Y48R*j?wj8ariZRu~+7aRVWFA)!)6!mJW zw+I2iPvmN|-U&8PsO!&rK`l=9kmaF53rso`W*_i=09G~Bu&biEd*$753r2~QxR9;$ z0`sbZD_M%z%beNkNI Z<;QEu%MXe4BAo6r-4 zqi_)p7Y;CX%~9o>4J^YDA?xpWpi!5qOK?P#|K-QGQsH;*&_a8n-BS39K 5SQ&W~LFI11}T0`SsC zSa?3&{Ym? bIzP@BDG0N+^32J|Jw$Gq^MCq-|6;7@M%kHxLq6ZHQ__iA|D_fQiN7$NlPQDo&jU z8B;EFN@LrG`rTgEeQX*L(?C(}#lA%sPJ?59b5>(Zrn5XFZU*LJQeP@7?XZNy8bHeH zpS!rtVp{W=sv`93w4ZOE(dALrFB`arFNS&OND+?nCq~su2}TBA&a{~t#o^Qz7E%^6 zOY$HjJ`yaFjZ-UxwqpNW#y&A55kGu%-s3i2fw-Em;=@a_DYa#jII+$p`)R5Qg@}kW z+)$BlTHS#f>9`HQ-!*7JM_s+DuJEyp)unS)3;~Y_7NY+U@z78{4o-*5n `bkOd!JIJ~#;)b?12TDDF3m(Oo1SikfThTyP|q{6J49&Eq^7f)0yEO6`=af_Iq5_Nk97EX5a? Q&gV19E)lWW+f z=!sPK?EoOo^la;(K _B(4{zCg`!XPI*53vu{Gn34le z5ZxJhZ7GMJ@z$+Sf?4`Cv3wl)WHEzKxAAX?(8%l=j`!Jjh?bnq3 0?I{ z7q@TM?)qx)uV~5@r}LU$SxNE4Ym6Xj>r*UD$MOmde?75eJ3j%teT~t-AuWn0mcr*J z;3Il-q=4X9_o9{G$nW?eziiqgk$D;GrpZd1HP_P|mx=3y!fsLqE~4$AuR*oqn64;c zsqi_T@m*l%=)Fht8?vu*d(d!u04JFA!FsN~@^eZ|lveh`CWHq>(ig|8nVYJ+OJ&2v zgeeX0W=I? !< zm^hJAm EGLSmG>Oq$G#W{6`m8XX(;qhuu^$#{6z5ypkGP`4>;m>O<|>Az#< zIZ|RJEpaDiUdGK(Zz|W-^hiOTA~4(fjfAziVA(H4*~4e%_~oq-21YN#(Sy^~GWAQ& zxT{M5tDTbq)K^*mJwm|QPPNRIMHc^1#AtNc>~T4y+6Tr$cz@gSpUwc8&TvcHt2@G1 zst|`Gb >Tos4I(PRewV1*esXMF`tP zFwGffT*}VQB1F_2;T`raWdR|hWWMr$%mx_Izf39_Gg@_DEj&-cE^}7f0{f*eO0)xh zu0iidLhHxxAXuLkql5JBo&A^&4TUBUys3_Ch`n!BPmLD&zRey1_c-73KZX5I(HI0n zwT}(modmg9o^I?-(d;+b2Sql$zbmTW=4I#GI5)E05b7u>ta_ R64jOah+!h4y&dnLN?>87bD^CI9;8* zam*i~PMPPVv3||^{8{lSWHN#D2+@y!f1pb5=Dz;>9^d}<;m&`fnqkquS?!!_lecBF z6Xo%8I~9lUt^W6HC2{dtFNXNj;G@e;GU=WP^z?w-?cBVVKbCUkqI&(Ccm?i`(ET6# zf|=Vt26k<+Uc{jm)wyW<<*kVK2ZSiEuZ# mA1btfGup2g<0=QlQRdgwMec|4y z=LTOd{vij#1>8%DNf!L7IF#MMIjMM*Mke=&pmHU$TIqCM5=bJuC7U9|vu{iCVFI#` zv{ly&1^#`}%WHlBVQ*pR!FaI2lYArqs0AeXl%RM%0QOY7)ISrp8pID{NEz`T%tKi- z6Xa8dtoY8x3!|ZUF+jWtG!2h+JqAmF0MkaD`ygB!&!)tp==wl-;{Y7NPMFz_nXaGj zj1Shr=ETPVZ-N&? ELvQpNP2!>;{?yEwezIm%mizyV-Qrzc(P(I`<48$*xN;jkb}1T$mIa4J}?Wu+ NW&Cb_uckU^A}@*g_8N9UmJ*&?3m-3+Rr%q zmAv#U%3f)j`dqylWU;+cqKki|jnz|$AtO5IMB) hOr8v2UI#L`3ZSE$Wr`dU)Vx9*2equ2P&vje;Y^xXSO*{>6x ze)DqP9vhXKtI^8w6m=qVQRB8n?Tw^>R9Ky4>YR1S92$om+z%{7TV`K@o7_}?HOw)- zHUD0&^j=`tstMsM57mr|&!yF57(02Z-#f?XcSKPt$}K