From e3d71736cb0d3354e1ca56bac4cd3d5e06d5c379 Mon Sep 17 00:00:00 2001 From: Alessandro Pignotti Date: Wed, 4 Dec 2024 11:10:28 +0100 Subject: [PATCH] Add CX 1.0 post --- content/blog/cheerpx1.0.png | Bin 0 -> 156468 bytes content/blog/cx-1.0.md | 306 ++++++++++++++++++++++++++++++++++++ 2 files changed, 306 insertions(+) create mode 100644 content/blog/cheerpx1.0.png create mode 100644 content/blog/cx-1.0.md diff --git a/content/blog/cheerpx1.0.png b/content/blog/cheerpx1.0.png new file mode 100644 index 0000000000000000000000000000000000000000..84bb76c1a3ccd55e4c09b10699b62d145f1f7323 GIT binary patch literal 156468 zcmeFZ2~?BW+9rypj%7LGjLM{-AR?e3gfNz+h%!o0=0QNl5F&(8hFGP7%%TWF0uhm! zfCynGQ4ou`@vb7vM+KzF0p6{@s4(sy#wX?4Y^mXG?llvYMFKPkz2P?1Jsg&2&8AFjcqP zaCcADaM+#AS$g3*Ko{m2>~=gH<{yC23D=j~9H9gBMUU0wj&BYLhU&}NnO{GC2_EEm zTub$w>Nz=s9mkI!*9*Gsr31Nq<;Qg3lfIl!aPS=+HMOv?Fx4;(Rd|rM+IcV-taeUa zOlQ2ncoyR|!DK|GCIt>s|&NyxPB;7wqfx&m9IJey{^zjGE{-z_fG!cG|T& z!5$X?P8o#*`}sj1uu+fA_acICtNqIWHT84nv{lZjtEhw3{y`tGeZAWrI>Eld{+^qR z`v*On9K7fs{2!l+#*0|s?=s_0;~&+x0{=>)1m)5pe$y5!VgQYXEEh-=6-H|9{S~`?oXx_33{(YO5Ri^tI((GF!oY>`swZ`r>$J6W<48(J4>wx4y=oZp7v6Za(Ab=67T+-vy5i`%|Jgtg&z#LM=$x`j3fUEsZkF8FC>RDPy3%HmK~xv zCTeeaH~t~_e=EU%ry&3T!2fYe_$MDr_WdtZqW@VAO0&T0@ShqaR-cvd5C2D*_uK#1 ziEdY>38xe~>!2{Rd|l7XR&d_J1h1{xk9TpI+#n;r`#U=U)SN-??o+I34`SPx8<1 z|2II-e%{GT6j{Y;2we+cG|#-V=$N>|GQP- z|IL9Vg<@j&Dj^KkaiX3GYW@oO2h3CyQ4&=$Qkn@jY!4i)R`(Inh}RJXh8LDjOVXPk z!$lvL=9({I`R!YZBSoP6tFj1lf6Y%!R685P-vOI?0b6`BDFW&DDj(X=fkl1#3rO&Y zkzUX|V{-yjgyz4p8g)Wa>h#y>=uK!ZlPemlS6|=J&B3AK_92Yz37xOS{TV? z=J^o$;=r1&>LNHS`$>A_HMOcG!3+O~xP3SY(3gA4A{7dkg5O|7E$Vb@fgi+Au(frN z&BXApF|w_oZdAXq&7ue^yPgp(AwHr4;nbzn(}WLm>A2~)y2y#)mU7{I(n}HHOX{1e z{XNVqhdxBYf4>L&eCHHYj}*sych|@G!6tclF_E4RGdZvl>7jfW|EK3Z_?Gbo6?@h` zgGlj)pz41eWq&q`_eB@V%jg~A?5FjFQ}p>)F?Dff+2mB~Uv>j;luZK?n|q4~!)VL9 z6HqMb)5%3ReaL-o_n^k~vfIk>G+@tSGoE_^*f?`#YS^-ADCSFVo6{kUj!~^NNW#H1 zQ>B8In2qt3=__>NBEv!nXBTC3hgdYVyOoVfjX->xTTYq~1^KTYA|Eu960rOAU2%O< zL_TX3^3t>MYM`l7fZp-KP%hAZoWrKN+S@ zQQs!Jji(yJ5l!TFqr@9QDwj$$GxsZL6=ap*;t@4Ft&b<=Z@g=E9gbSdqqUM*uCt9F6nLG?xsR$yS5--@(FpBP8Ev9wi-gn^L78_g{D*;0|IiXBly-LK(+npl1 zw;llY{Hc;aZIJg*fu;mTrFVJ+cvL--YDmvERcd=IUv$K%oA>o})kdIJq(Q`V_vxrT zgM3}{dEJLZET2MmY9L0>Rh+q(aTAE;Z;dw<&>{6RWM!f`!Z+w}n*7Ujhu9ODZ-^*M z3oTS#?oM}E^;gM}QWsU1K7dMeL-4^5LMxw=M!R_P5sAOVZ*tBJc5mey)V8u--f-&|x23o2BauGOJm4&BMmiVS5o;v0t6 zf;r?EyY12}nCb`epTe2l4#>z(wXv?rcr+?vV{D%TG!1dN1V=fM`2=CHZ8wgb%KtDa zG>!R{*1)vCkO-FqGoORh7;|P?QAcDz1;CcXW*&+peCOoU?A$<3D?2o1gZrlO(N%hL zL;5kW+}JGG{qwWSCQ3&1{yQ=20|M1k<8?m09m$`it{x^EJcfrqR&HhA52HWBux1ql zoqs~^S4QYzCO9dY_w9GINK`L2WL0A;vC0zbgCR$&S?%jqQ z`nif@-9B|_Q&k)#+qAO*{oqbu(7r?+pXtS9US!9^UfxWrd)S-WN{$QTN|f+D-UG{D zdd+KJ=#sCZ1Y52lrgJk~wq{1L#^E@4^< z7GTEDrLJF2K|`@2A5U>Urt!aA^En^p`*hIvm6hpC*_S@<%YlMAMVYU&Sy{MBoyeF6 z88nVEYFfSZ!cp-$J{0UI5P3QSEx@I`?Jp-#g=tjyu*97!Bygq!RHfhwsqVJ#w(S#v z;04XWacKm#0y5uD>-)(re9RTPu=)$JMjQ~3@O6&Iu;&LBtA+|OO>=)UAJH^Xo#7-B zrIkn@@G_}1$O^-zYW1WFB*iJHv#pfk5QKMpq^Ze942~blo0xmW!$NcDBR|!Qanke+ zO-y;U!MC1PPA`xYr}4F+%M7RQ&xdNdMbxWZ$GtxWZ1zNob+3@ecD~7ED7Xal9|qNR z=O+PfKXA3r9tlI7&_~&Mg)ZOCZm0xs<~qPTy{ODKkI0Ce97`g zqAZ4!xUAfH?GC+B{EG$B0GZLY%noJ0E;^4e& za-Ahx5=RLL)1!7K`8-(-SHY13kn`?z8x70ou{@qu?#knURu->`dntK@bAOq=woI(H zB);tE)cGWO$90j(y5?&0=>?e`GG1$J?IYGHPI1}XQp*0c=_d=$;CF%7jdZ%4IXi3U zA-&<4pJ~SJ#4v7GbWrSbFl+Ks;L^&-w1VE(I9^LDJGctG@U4Rv%<6pwPImA%Hh~rX ztdrsScH1_%3S@E*-r_~aEPtJ&#b4Hn%uxM@<5_AwYm%cD!Cz)8C!jzbP_T&-Zr3H% zg3%{(28()i%7y%vZS<+Nt7p-%+C7G>1bqXBB9BD@Ssn&;bXuQZEO81dFdm#yH5{&G zr34E2fsdocf0EnOZ1IagHE1SKMdg-rMrz0+(!h}^wX;Lrz@fY!t_p1c{B0VdQR$Ba zgv6J_7VqAjr!lV4-oL87`uVW=IM1__<;SXb+gQiX+!)D|I3Yw~4^O5+v#ar6D8GAd6dz3sU76&^=X4^gf) z88zlTpAWx>Z5PJJo7$cSVNz$$N7i`Jx+hTLiKyOse8l1w@KjB7@Y~v@wx+M-Br2`q zWFsy^Tp85?$8vKyf7~7vg=al&ksDw|e$1drgyLToEC3qj)OBuDXA}+pWp(8HtIr@N z_xfbiLNnP$Vj-DSG(CBL(C0IW@#cBs{eB}7{Ut?rK{dt4H4k zoI&H$F;__2Fj&*0{H6Zq!lhhHLg05v6gf%GWBDnjBeoi-zHG~snAJeaM z+diFs_>-7k#rNR~-JlrfHyb0AhJuV*E+{kGl-O`NWi8UQatIO#D!W_}nP4aWM}O4wmV7`D9@0(do8wW)$Ofm^3Jr&mQxT zX)m6|FOIq|G{=8;@1I#IHV&(4uN%|en^G2ltdW$-mh`HYo~G@QO$;3%uRw8K?uPTb zYNv!aoc8#$=u2Gxp;{5Ns}{v(y+;*SdK|+N&}3eevnekFLTX5daLAlUu`RA-*T1kQ4(Ia)ij6WiS_iov=2L+Km ztT<+$RqgKB4DUjJ{i!d42OY+Vf{pgZ`Uc7gjwE2U-5yhps>tz4Sjs*Xh#%~30IedW zE=Sd)W#;Extq%t1FYy;ucB5Dc+p{ZwgZHjrbx(5i(idl`21J(1Q_<^ooUi zJ7gG+ad>rvaDxN=v|aY3@Vitf@E`ki9Y{AXMcoV+A+ zjW2Yjy==2Uzsm9dtctE7GIKhAuW7h}7~dsDyjN6+r?kL_K#b4E(83`Sj1W1yhYKPD(MW;FKaWTlIN8Ou=Abbc zjB75&#N4axA zm@oKfWunB*pn*A$qJVf^(o_)25MVn2l}NYyu8l@ z1@w+DKIqQ~A{Fex?FkXw@FO<7dK5i?uJtT~MSKg>ZHZkUnBh74883)S!RNk9vNbu%xv|0yq1oHB zn^Bc~6)1GQm29w+kDSd3#w@cVB|vrQK`BmtN@Wgl^`2{NyYRK~THmJnh^F-qxC^e& z^mP+aSGD#$WmQ*soo&EovfbXeMmR!vF?xlM(55A2ZbxEoVl5j+Yp3#ZXtUYoI@M(tI@bmnFrHbA~uW;X~>y)XgM_XZHdxhVR#CX^!LX@Bj(eO7bb{9Znv@26QF zdjh76YWitN%cR4amZ4i$8}q`!z-c@JlxzM;#YzPC;%uj_ZUC+}?YoO%M8qiLFkTOb zJj)1>v@pUJq~EMKWqef78<5EH?5}C?4ye@jumuO7tykkJIThW`M-!xP6sJa-yY6Zs z4^yl8pCDZw&xlwRbXnUU^p6ecd3ylvbzM@i`l8xk2IF5f+x9zRHneFRY^dw}dFa^+ z<09?J0hl}|boTi^R4UzPjV-8D*;DqaqselE5o$;%jKAJs-rlpKHN`q#`O^^9K{_@h znhy|Hj28+5kO~2+b0HU!LY}uEZ_x@p*9t9{w0r}s!$!^aPQmK|otlX#2H?i`y5f3a zb_^|%95O%GLWLVNz5t9A4Xwb92Gz&#UwX7_THg_j4%L?}_Az;Hz+U?&YgNOD1r(iKA$EOk&k)zDOmEUDM&z8+ zRL}aAIp*P&_FRtb-CP6GyBTH)UfAOWqJWC5;t|b((fsdmZSQK@e)^!Wd!21Qfl}mz zR=?!4tM{X3rLgl+*BOjGs(Cms>}ipgu@jlFg{h;TYf$P(A%oNp;9Dga%{TL=>M73t z^OC8mI^zK5O<7^Kq4qTI>DrS&al~k_8su|r6wOYkpU!-Ef}jNRGIA}$jfs5$_!`DjZ8 zr7FXxLF6Gxmuk9>y#Lb`|K73CAT^JbyHe$)dLbX|<{9rt*8}fB$y89sV9>Z#G~%dD zo8Qfe$B1j-6fR1meQ#Jfr~1-)rVCMUOm) zT8glbM(FN9g-yF2(CT<6`_sOCU_(RfZ~;CdRKa8A5%0^?kO{e@pf|y*O!psvyS~pG zUJ}jUYdH+}Z7GB+6=dk7zflcuDYX-vaP+gB3f-Ukp|!1M>msYQ%1iFk5l&B<*I_AA zoHZjuvp0p+cG<+rPo-^Qe7t~i!erPR&0B)d-*mv8h8TPBi=P6}gY|c}&Q@;&FK%(7 zKq6yU4H>kOB7DTkK?V@eAL~p{pi=wc>$`lXw2TY_aM7Wx-pC@l79e{)IZ=GvA660) zlLQ#M+nWFA6VsAQN|%NeAc@S%J=8-dn_-g~F+spnGWiJ{>H zg>7Hl9e=|Ekt0-w);JwjamiV2*eUL23OdMaYxg$eW6|Jm-zQl0aZ91U2wyBNTx{bB zpXG}GMs=2$am+2!)#`PzVd`0AgVdyK3JAW@{D8L_0-`0EY>6oV6gnwKfyqq*;F!FN zWk!U}yr_02`-ccgQlcIGicGiA-u#7gL)X~Z2$h1%Dqy38sGFY_D^zgI$t6^AO^8&C zEWS2T1?T9O2GLDa$X zd@2ZIK?^_kbQbYMO(gxeQ-F8S-tQgbxIl6Ui{?isqO5^nJgT0Kj)Oo+V|Uir?E+$V z#l{EUCVf_FB$~5o1M^#Bvz$jJ(`Y`|SfO`{VF^tUoZ?7?Zi~1?)7^e`N>P!6ZOD-z z(s*%1h!aA<+M1JEib?g$1*N%1!g_bt<+mHWAnwFJ3tYcHqbeXupnOx|JzuH11le4V^Zjrh10F74zyVuR|t$-Sat>LbcgJwCTMH$_jkLuoG0bn4RO zj7gVNE**_UBb;1IRwEq!nED}8k}wo4+_@*})0swdCbePg0sZA?*J8LuT2KX!;wG5C z5o;CAkAmR8A7g#r@6fZFQHw~kG%X~DR=9k^1=}SX_UK3fsKKbHII6%LqJSS zIn;0VuJ37BW%hXewESm_J;SwO-f}@H=9%MoOnO~q3 zLE@acZUlxhbUJyXfkWvAb%P~|&b|movSkuzaH{?Sj3LqBa^%~rm+y$ck&9yS`#{so zp*}EYHE#m7n5l8h%~Z+A<*`m(FH>IWt|-=RlLzFDcUUYQ!vNLPdc`5LP`8m z=P4tD25LR*F6YwN(|%U?GfsxXE1y}K!>HYIIa&Oh+4!737o{lAp>t6kY5aa$W)$0H za$D3Fc;wpX66XNGxTwp3bN>o`eF5zx6;{Kw2%Dc9TxQ#8XUu-4n&R0&)imUpsS?2?w+b zYLx?B9GHxhR`$?J9bixf{?U9&ezYDBmfoe-fKI$g>Utr{BoLw!qAP}O&6yIQ96Od2 zw0uj9&NKjZO>0s?dXU}IhWTLG8UU#YPxxfk!o5>!%w1V04bAgadqJWAW>iC^nuhc@ z9?@MeGlx(C5nvKHy5@Dn)Xzlc_Pa6;5W%KDN(KDU(wm_Is_?uh z`%gkRGxbIxrqWsw{1Ev*1`M7ZG8tz-(@+RpjCP*CU?qx{%j$Gx~k&v z>U7(6+p@fhEcX1@8&Z0q$pyXY{IgQKymk0= zFLFNho2kJ?72FZzXLswF>_x}g@fPtXtbF`n#7jIl=K;|>+n4z!263zp)PbUa#BozW zgW~DUczmrT6WImszd!b&NM9ass;m2MR#{ohgCl6AXuhN6i&*Qb7i! zznkL%R$EiSN%YJ()>5Wg#sg=EdnmtHwghLVv^PS-B$>lcjdJ^;hOYI8to%ya{Ep;y zy*_iQ$oT@jZ~~RN*lSRIcfNCMifSj5vp5r&5bXI|eG0LEkbn2k_YyS;G(0W(n2M_d z0c`%TgAN6D36{oD@RyhRDUCjRiF%R~*0AnHs~1 z+Yk~~`!_fnYa2l>jhE}1Ma5iBo56N z@M>08d^?D6mq1J-aCX%C-Zk8?(9u^m^D6tol(CeNl-zqP2U$ODn5b7Y*Qu1hQfwqu*NO;ui6v8$rx+& zXCycB6hImNNC&3gT~FC?CWINq1v0GOgeceR7(|Q%R#ZJHbJN_FUy$N>cSUs}tf~U8 z+EAVwi&>keBbQcO*E-3_1=*O{>Wy{7_1TSO!iFQXGOcSg|4@Es1WctM-D9F#Y9AIR z^NN}sbqt{2UoOM{id1KO%qMKIQQSr0~E|05_!{9e_!neZKO|s z&eZp@Y5}q8&RJGIwz~5pIMWGQg1a35L_$0~toeK5t(SphO*X(3M_3yF={scOz#z3^(Ek zD}8F~-^Dk+dn3*wZ^`2 z96ZBP*O`vd^D5GIpBluRZo-tjPc_HzOrI@x{60(JTGK7nwnX1xHcP*KUkkToHj};( zUN5r&tof{i#&X8dKcmHhBmHnr9uana_TlePl<#yI zhAu?OBKr5HA*5q(O6N|T1F-HFsEG=0D7zyt>Pv9lGJ7l2brjl2q=-Z9-N~%^zhRV4xfhZN^4v}l};pQ zKvJZ@{W_Gs-gD)1*K05GwQnYZpd~F!+`ao0HA2{#@qIa#^n@b8&Dyq+(a;-REs5p* z(H}at2-wM41-YQv`On#(;59M)DGrc2K)K66g}5k_!%1~yt_~GhVsXs1*;M@6B4M$P zusp_GpHPe8xNdwMA0JO3Z#*%ip6nKhXG|1uFhea6&XgAo)@fJSg_4&8YC<8=2s{oS zF(`12{+2o195BX~1pM4fR9FRO!6}Sg!X)>BFh_%=)(KhOYH~sLSep=m6L&A}@+gr; zs+v-4k)62cEHDTOcq$Q=xy-JwCth5fxSudrz(#K@1Fi8`EOVL2T|iFvje(lXyN;ii=$H8`aVfi zc;#Fja|%)_*wv7Mc0UlRvTj=mGv$SPErCcgZ$PZlwhvFfnTLhAP#{f28MldoP;KYl z?%$#twG>TZWDIu~@1nSn;ZXCrQnF#guZ zscV?G_dQ@tm%h!v1dXG^59_#WkOQ99Dmw(kSr3ie@~0OL@@|hf=oVWA#O2`W?*jM4 z3@5FH1hINs7F2fAyiTH4YV=unyl|``L)@OZN~47_qtBe$Xaa<5Nm%P-ZV+A9CNei> zw;3+kUg9mg%oY9(j~iFS;s(q;pxZVEhen1fVe?&6p>@1%L90$rGdrsy$mB(^&-hF*(r$bj&#Bb=O>=&4VZx&bl#gq4FWb>&0qAFGFef|Q19 z`5!X2Z)=5)pV_I0_BHIeByCebP5%r_w~3Cog)#Ub6-NST&=sFOsTcv141)tM0QySz7Zec^u4+47MV*Y z$b2gV2p9SaE&^o;z)|9;Hf=NakpeoBZ;M4WV9&j9xRqLOtl$eihZH4*EKAnkKJhwM<6elTL*DL5sW-+Kh5M zp6b`lzOS$hX+}t$?TV_oGS^wlYA`qeF4}6U?b;NB(3!vv$w6KX^yg(lfZfm6EVEIW z;sB037K>S5w~SfX##}EVtd$wA^co6z%=JuMy75u>mDPK1 zKXM8PUHytg)C-lM^wU{=wH?i2qa_GNWwN7qT*4CMRSh?%0Q=INgRz!AbtwF$i%=Hw8 z1v@zU(ZH$iO<%s<-y2o>LiqI<{mE;g43HP3^-w^SHf_KWQ+X@^G-PY=;DVZCv9cTA zBgHMK%53H82Dp9goeDmgt1Exdj9-(Z}f2rOcYczCbQp zoXXUr0M%Sg$nZnE>E}AkqJo8oLk7Q^@~ZFC4!_Bj?22-}_yaQZ8qipI{w>XrMYoQ9|Gzw@aIUhcNUmUxBK2^2X~x9)zO z9MOmblnE;hzXV*9nZ zA$*NZsL$gY0@8SU6Q~cojc!3;`8|R3b^)rAD?S9dobsgK4bj;!dS4X>dzUt1k-2td ztwv3a&@w}Hv1T^U6to{5*RBrWyZ&r(b1(~Qev-1RMo#s2>5>#K#Mi(w=W$CLF{R;SHtmMU^8eyhtlXTnL<%!L=0 z$4OfDK|fR-3|c!NmYvZ4;ls7KJeH{$$o10EGB1fS6pIB?9wbH~YWhzzrLfHA1AJm$ z>GVp^Bp9TxDNJ>ZSz6$#kumzww>At`&3=4s;vUSSDqD0vdfx4;rx!0EtR!wHm*`wa zsX$)qk)yr|k;~Ze8^(wQvo+nB6rWD{m?`xK4mqH;=vQe10yvRbB3j)#Z9CSio4O zq<~gDfmU7C!YB1T0Wa+PeN?W0Ry&BhgrFt_D4$dGAY!+a0My&y2f>cm8&|HB+MMkA zJ7|Qc`<3wIhUSeSMmcX#BXoUoT#cZ;h};l%H&joCyHg0%WovVW718tr;*o2=k|rY zB*jTr;zN-w2Rv$IjmkJ-^oj0c3N97#sc;{}GOd~UEa?P99s3^PxHw5|=r67?!=~-( z>m4Po$X5?I4VdY=__Mvnb)LaPNhv8Qli#DNA8B()x!KDcHN&X2F$oD0MtDQOe)2j+ zlqv)5ZADzGs5|d<{H8b0(^vtSLrdD-RQ$5^{Nx2y`5NZyZSI*~z++^Z*{*r_GCw%Ihzuv>+1iZV`Dv$P7P6<+361p6Bb zZ6DK8G^4*=2-|?|o4T?%HE{IfnOz-t%57ZJU}lrkA7J6xQ=xSKk|C2cfmNAe`FI(LI@EJA zr#m2rbdEdrswy7BSBI9jgsuYL!a^i-Y#8>*C;HF=lzG$|J83K0T!L8RXziB^WDLYy zL@uJIxq6Ox@yO2?kIVJ>jkON;5?1HyDphj{cNXS9UJV&2>}nmVxGWNms5NchAv(PO z^!de(?e|ZE!(?9ikEu!+CrTpMR_VP}<2kl_a zd!0AG%{rby{Otz2LjICTOT`lyZH{=uPm|ZWmVOp&y?WcPJS6nWj1#x6(TjIF63Wc&dUsZul${(kTOngQS!0 zhpRHMhia{iO1lx4*PgLT$h%9Xxpsxk_Aj$)y$mjTa&8um3?npP9yfL$J={%o;11|i zeJM@Q+*w%FjG#ZxZgDJtU; zV&?SV+KQ_&V{HtskXh-n!Rx|^%NjR9+D8X(X~*tZvrH}smFHVB^vzSZprH1!?B0;@hyZ4mdDu)Zd zar&}4YZ|rd%!^t=f~~mx;@>2PUeNf&Pm!Hqt{HfUS>;@OqL8htlLim1fcSQUjJHqb0sg)1oL=bs$MLLj zS^Nq+Q8%DMIxP=0@tWH;<7eSyxLhgr+Mss+SHw{yMB+E zG5~rMwOcF4H!m=!{eC+Kmnq#YOHJW|!un(zT_*P*uClrO2>S~PxO!9=1ii8tBl3W% z46_zj2NfKKVfpv;@Y9A(W~apKSj)uNYXe3Yl{-DZq0iJqsK2&n#zMk;K4(y>CWj}B z%&Xd;n%gegxm1B~x|;_SjAufNK$%(-Z<8w}yTQ=v@bapgXh~&dX#NX}*`Ks#LkF|X z&eciZXjzp~MuK+qDKx$yLf`d}20y3mBh%A_UWUK?aeM|XDJ#3OFlTGHF~e);ds~vx zqi(x*6Cw$7egW%sh81fI9j=xb0@~H?!Uwy3a&u_q7@kFg=*UpiK4}~TZlH)6Shn>; z9Ch*a-3wnXx3;?5m)o5fnF3r49moee`g?!%`V?)-v$&tB21W&eSqzm4H#-G4Wh%HT z_qC=!AkG%2T`wWFd3+Np_Bq_J?iyeWL3?nwJMDW@ua{X|t+LKL8p!cU`@XFD@>zyv z?QNa*fO|{ETOK(mU+7qHth`{1osGX*g70N3qlE0Vw9@KO#R{eqKiZ>*GCHeKt%zLz z)`USWO}$-@&*K%f)Go{pw{?I5hFXGnm8iODEH*l6jz}6YRQw^)7h4HR0C`KhfQZI$ z)qq)_Id1MuamiO8#M)n$(pB~c8$O^#gwcTu(BwM^Teq40LN>!ch(N3{HA*hw56XG& z4<*@mkUZG6v0o@_p8f|7bcb`&lYaG%GI;sfxN*hwP~{R^0;NQ#$hG#T&SPbeFLei^ga6J5T4C&ki#_9PxPG2?nV{ zu;Ifg-5?Ok*H#ZcovUxSvBU$45|L9qlR#+5%i+_3Q_5!a3i%n7;M%gj+TQ)Jz|&fX zi4L)q|LfNM>+U>Je3)rCnw>$Dc435=!VW9DV{!h{l2awa_0^7knNko_7`{LSSJG2c z%_o|~=Eu<7+v5>(?vFHpx(gTzR=ig{UqWou*Iaiftu!)=Zo!={VxxN@x-B|7V^RT; zQ&}_{jEzaflvznKYpqJt#vN4ZR~#}*G%B}N!D(s=>*Sh9ukt40J`-uwrG)9C1@G z0nI!b69#l&H$4-@yxKjdnT))G(EhcWtcUFhkL>!}T8pC>dkb?hlOvn)u0FhBt!C%W zsxdyXF!8R&A*n6<_9cdpBHZ=gpqu@((_RJK&`1n*I5T2_eNpel!6}`|)`~O@3)3jh zPAW*DTV9;}0D^T?DBScXC2Q2hKB{C&5q9pULlGg~y>_|wlJTRV*dAX>ZRcniCOv`}X_ll;_D-`GVi$oDQ}Pm-n5?)zyfcU}Oz$EO%IDs^(&z4?vA# z5v|IyHq*n%@HKXha(@7$VewXUw0sw6@spY8(vGMZAWj428L`Pd_Z?~*t~Jq}C%(1b z(RhY7wfQ~S=)J?f?z8WQ`cNx-K&V{#o&r~kbrFpoOScr13R(c9AT&|R5nP*l7&T8caOY8Kb@}FS+=!$2HdjtUwqIX(mDnMGtY3l9rLqcq| zd9yZp&xN|i+Z{F;7HFaue`=5Z_6d2bnt{;f8UOvnnuhanAGY39zmheWkd$;oxz9wO zDV2SbmhZ{uB z`U#12UJq#cMSH_vu1Igw#fIj)`IHRNkK5-fNqQZgEyww*9P+%B*s(INg41pG?{@SH zBh1W&)={+1_Kdv8jZ7v_6xEXByQb?BEv9JSKG&|Kb`>>wcwEl{ImSJyK0nCSM>TgI zj=mNzy)W(aYn*+)yY!)5+>L;Pd#*`xY&#ziRT)`0&U=fj!D?#6uusVQh}z+bD9$LV z?K%{1sG}3K(9;9Zu@2asvv!!5`*f}h-WW!Hz^sg_k6v6)c3g}hEOT16rS|uO{y6t5 zUUY^aYCr$&A#i8xUQWPqdl9aljnjR&zocpXlOTq6`78is>>k)R>Zui+Np6u1FH&sU z39_Efv@zvf>pnAXCp+5N03GT-oSakeJ3_eNAkw&quK_g;9((0cgDzBBbNAC7YdmWjzE z`s^5nYtLcF_rCA;=+^6pe(wAu7`m6tM#wR-=d*dgl`OA zCu|7$<5^FEqz@p??Fc@S5X2>|aqFg>8t$&WV=1B}H4SI50|}gOMWQ$uTupfQaJFv;pO|4( zE*P-ihjJnej#knbwg;v^*c4b?x}gW_0f5CmichI38u^p8UaNV0Sq7rGDub4jNGzEM z3Q(K6QU^~yw#%nXBh+JT%)J=Yk~6b{V$+u+C7BW6;qn0QpN4+TjO05Ep$-BlMuGtuE<}Q%K|a>^J+| zYjdkp9>hP;DF~@vysERLq4&HxM=HaFbdvSOM?&q)AjDBa%gTBnsBy{Q<282n6@IWn z6;&q{d!Q7~RvajBzo@1ebjz!7Of8QktU#H_o029Abdmb$vKB z&i$)Ts=Z{6XDwvVvS)wub6%oqB`+gb*I;^|{OhqFeAcFY0{kdGHCGVnDGG8NFuAen z^FAnya^Er8uS40>EK_nc7dCuxX@+5>-|}36+QzgYGB;b#Ku1R%@cgakqWB9# zMBT*-W;0@pCWuSLP_>{JkJwcmB1gAsWZk|0zKeX!@zq7T%(dpCC&uJ4Z-KQd~u zd+$Y&>CQy6*z2Pom)o~q$`B64K-;G7nwFjKksEn$zwg8wisxAUbPSEcf9l+vv@C5G znRVL@N7RbnNDiZ%V*FEav10gms?+s% zQx`I9Q&h-|;{0|lF=ERYTi$sLWj*w|gg0{iF6+H}@9l|eQ|!+rClW@;m&;3uUxVk% zOWo8b86U6WASK$+ticOkDvpg6#@X$C5VKbss(fgAxIHSf86nn z5WdSV+E^AWO4d!|!@-MFYbL?8I>Z_q`=V5IVMWw#DPH^rxW2ClnfQXImbk%r9#2Tz=*@KRkBneUCpDXHo8<*r{9uZudHaaP#@K zzrpGbY~_KGkp3Xa>dXEzqXVAI-C4r#b3!&c{KD9(Bc1bsvD{W$wKTWES^{mGJ zcZI@pnh#3PE0|Di^f+iv`QFbTN@e}2!HVVM+-(>4KFCGL%lCD=M$ax{@PzPhlY_n0 zmn07YatrhwUvE>~;B%*e3?M={A?S*`=?yy=aJX8YPqbV45vXqU|0)vPt>^v`ro7ge z!Lf`Rs*WKQmCUpL*hAeTkFtvEtl#h*{K9lsE#M{Qu}OOmINDaZ7?s~1y6Fg{JqR~L z{6bJe>Xy-#EnVe7(n!qc&CEz(l=366qYMFmryLk zmrhZl{xY;l$e&{RjsE&^b?6aW4@ob$(U436_0r?qkd%keMCET>J}PwoTaiYf+Z|Fe@D>Pxo(xC7oADQsMUqex_kPPUgpEJ%`~&&>Z`H zZZ=qNR9y2{Db3zJZJ!VU)48+L_=b7DI5RqMYQCpr+~?55iP3HET3f%g#HFqa2n1$h zA(Iw&06)(8$xjaktChKX9*ni-n33*7=W+DQ#kyrnIQJe5O9PqS2z+Dd=qjlR>f}ol=52clI zcF*+qD<`iZCrn}V4<|Q1$IyeF)c>}T_TvvH%qVSEB3|d{jNbAUV|m{UX;c;qvxaNM zemu9c`cRdB&N-CK9C1x%W99)0f$5h?J#M&y8Z>Ka`}z>77uIw1z)_F)V2<8l%d-bE z?FobazIbra(~u2fP4cx$14-zG9E*$A&5dUE4_6k*ZrA7Xf}6n+RVHkdhH6CF06MC- zNctb-%_~LpSa_#OIsb!m*ON)!+iVyZO(`A;0xb=_J{8sm7G4nO7wq~Ndq3lBD z&aluS2zTdQt3j&Z8HE|h$%WgBIQ=C8YPbySpwA*tA98^gl>vtu# zq)_3t?#j7;nWvcUwoRzym;ga?^oGb^v-S6f1o%3Z&Y+@PlHCqhkrGbrJDlgDU{03} zP-VRKFL|?Cj?27u*ait$sCkwbtq>uTm300jRi{#JMBDE*y1weP_k?4gnXV$kf4LhZ z5l{+?7(?6dJt_z3`@_AOP2rSaPlUu&fuXc?;8KwA2_>;_Z&iHdr2ofaE6twU_Gb=} z0SMT7CE4#rkMzWJwH1Ew2n!rG|1k{%9C56`2?of}g@MoVmvlKqB2oCTfF35h%I#+Y zDce#|z&fiVgmd-)j~b;x6_qtbZ9woR&ef@TChu(|&PtA4N!2d$t3G+w9ecn#YasaO z9hs>NT0!l46kx2G4)5bRb}yr<S`z?%*C>T(9b!;K+X=;IJ5Ky6@{Rynmj}I zQ4G&tpB9&ShW0Ru49eB!-aM0w$aqwo1)s{hUZ0FJx_Q9Qu1uIO-#3^wm?%M7V{xX{ zq9fd*u}zUSJsOm)Dx z91BhITp|c0dqV!KyYr2ElNFdy<~Ofi#Dj);Ze+KP_22=fWBp)ouNghP6O`#2WB&gA zS!%?H-Zel{mO?L$U}6nl2e=Jk$Xi~2qZYysgvs0ru6=Uo+koQ5M<|VC+<3~BPqprd zYBsiNTT>UPqr;z#Isn?SFYyj;1k5Q9kt-Jjt-Ri5ed#81F}@g5g3i{P?Y2a&&_S7` z9+H$!J<^BMTvauD*KHQ4R&K15Wf!Lmvm^C40;4^`IH(^u^{d8%P1+8>z#g$cV9wq= zb;dCy<;!EU-`ugkBzi(iI<6s?Ma7>5d*Gbv|03$jhMvdv@}J7X~Xj_UpX&L8>s!>8vt=iJ+M zUHAPA-;nQwSO}I`Vn&y`lku%%SJ4e)A04yZ7L_4gEfrY1EXK&em+aTk_IqE2tTwo(-)iDoF^-`koL`Tjv3xb_gXhzM0|ZP!-ak}Y!t1^O81Ogt(q^{if$?#M|xB7&1f1bXSNEU24 zFV$!5MoWubsrR(Mo!iYrQg#<4CD?{>EndQj750751HhGD2MIIZ(4E5`*(4b5lC5CX zfT$l+rAdaAD&4DKrN9nH$@gm!Qn@Ou3D%7@z0Qh*`id@itJmokV;bC7A{ic+%8{;F zxB54=sJ(yQ4S_KmoqhI=@*EVhP@T-3-M)*5`*Yz^Qu%Fd>ft^(P#B^d#bD!@J<^s% z$iBb5KUEt`iM(t23MSi3X#P2o0~q{n*wF>Mp;}e8FfP0FeGvRg3kvL#dA)gPdj7ro> zqo`!ZI%X%O4ei9f`yei3Vj#c+0DiY>n_8rgCtJrUZ$Rpd>`7$8%8ZqI02;vK%I45W z7CPAK-BCEzbeXQ?ZmzyOa9se}Z`_;#Mds+=Hje*{eeU^76c0mq=uB z4#t{yso|y@t7;MK|9J$RFq=^DZgh8T8uf);-WmDv zc*bAKbx{uH?ylm$J-v%n1W<$bRyh(zz_<{R%Haq&%=ZtT-XjMLmLmJlIMdJ}it!nJ zt5C-ct4Y!e{0c!a3)+q1GZ(OVjluY!QUF}{7#4bT_Lv`4TZL5!%qZR4RG%08=ATC+ z;dWNx2-H;r*SwF83HOv(gp;-r=z<;kq20QOb<$+XhV%MvzJ`FLx@HbiwJ1b(2DepR z%qDqHT_(6lDhD?oCwze!$-YwSNhL;+{4+`8RUpYku(yWZ{C@IZl#f^C?p*5`Kt5no zE{dkhD_fNsF8(#hG^?OwJIYX8Ty7&~OSumMup1@2VP`l3SyGdbYjDsspatpP|Op+?lDumc=78W*w^r zxE1`ed!cq@GM+kfK1t!LpH@w;J`ykXM58kya@Agvfb~m5Mv{EwH5KNX9ima0t zrWr-oaR@fV`zWvJd?Bo3E3uc?v0KFXuu*eT%f^fAr*o^mrqa$y_lstEiGk2wJ`Wmx zKAyq7_gCzzYG0hUa64NRL)=h%AEPl1qYTBOw8-&nXc%nT4;pL=eajzl9 zOS8z6XZ(-a-@$rnb*xboM4KP~c&|NfGd4e%BK8kp>m%-%wkT93-zjM49sgJ)b@s7P zcX!*KYv{U<*9HQz2cS9Vj~^FKZXr<2Ul?xvdiG;awSM~G*BXV5C`>29$hfoS zY8~r@_H+szQ=*)$?P80M2|$o-N{I%(b^8-UB1CNC)CjN3I{HX7Ey@N9DjNWu*GmPe$tQ z#gdM%GmyC}12ufmGUIEC`~;3WHG>7*f3v;FB*nzV(RQj~!8^-~aKO%KWqmNdWn{$k zx9toY-Te;g#9mU(@PvBe}KWl=mezE$)A|Jj|IPX7^DZ1Vs_VP|L`oK7M(_lblz61f!ogQB$BF93DkVqN( zrbGilXrAu=ObR!q4&ek+m0NaMM0JLSOus zvK*`ZNoCx)q2wnUK5AhbK8rky4sqpmeDTuid@kVyxL{XjZ?^6oTvadg#uU znUr%u8st$SPZ?V?fQXk`ZInK+r+n zS~yndr;+B%>oiuEgfHqZEP>O`#00nx+h~$ADzEBU%N7p4jZ~BCgqU25jrjVCZLsa1 z-sY?SJlw;qq-SKNrK@->)pgk%WnVl0Hq6Wnil1s0*RsCK7AAkhcGnz&npe@}u-*f3 zFk4$OLWGxg|5YqEvQ`%XvH#Rgx#VfOkteQziDF#N`!D~Nj6^=S@r@oXO{D65Sb;(}NJ7JpYa&PjAUc)HdI(OR4C8rIC zH|6zz+$dO7v~n`6V0!$3#*}h|#`|m!bQIp+V<^zGA22U;8@gw;>{hu?Bp26E4=ro9 z$C6wCXNDCMm0&@CF9?#r)su*^aiO}a;p89!yK|YH`hnU%GVFTa;k5f3*GQwP(g-SrwURn z6}D*Hmr7UY{My9*rMjMhdlZ2_CIOBZeC*N+ACfOO-&&wT2eWk`8dT!9onW{3=F0Nk z(*v84FtHFBxTmwL>%fNV_wekn>@clfr)-tR7i*>e>=5vKat1Fx-fp=?~AVg7{4l4datFo7CZEjT$|++&^EBB$6(j| zajOH6dkk{puC>6Aok)TS*fqPh$}gsyYG`q)vt~l^bFjo`ik~c1$@MH)f1si{+ZUxM zScG4*lXB>O&@WYf@|Ar~>Id)4MF(O)Un;=zw59vqRUW@+MV0BVrMm!&d=<=1cRNNw z&qQhEYxZ+cEU#~NccdB^>DLBN$8qkEexdv+B8Ea=OP7NF8n zCdnrV5z?dDLY^hSjT=UnN|NzgbjD_h`=!U$K zWl3ZyBq4>3;@As+1Vq417qLZbVQf2JK>js5y9pvqqt(Ge%i2s%j**KSYuHWJH1PrV z$+s5QJAoK9Xk{oP@Q^ywqe$VpOsMa_viM)7g8GSDJTSJE(Pv_J+G8=>g1!rgbBIlT zl3cdXrd*;ju@#>htl(sjT3R^%%G^iQ&^dDquT^*OgqHw3o*KvL*5!0HRq|2cf@zOR zb3$&`@j1RI`Ro0(woKK`&Xva?{j+!&n%Q#FW^Mso9@PO`V@FWD0C=zcu*4NM^z7ZYj*P$YeRmcCl1!A>gg{c04&nx2;bD&;rA)rL`pQ zfgp~jrUEF@Yw7D$Z!e<&ee-9AKMl(MxeG#=1mD=VG&9+S-QYG*Bw{~4(U1$bTWJq5-y#* zN^ni1l^KY=Oj%nLzV3JdY0tPYVu#&2bSdjCW3yZMJI}=(vQmD#<#=v-fF&(b+Li#dKP9^ZVw&(udqmUIP{FeZa zLI{G-f6J!vCS8*{dGq_;!7Gj%s6hX7FIG&9-)$j74rj{u;xb)bU0>KnZ2d2chW!H1 zJSLzS_C_E4$in9EWYagT@+^Wp4!27$?LF3&Ph?}Rn!JlvP;k$1eD-~27vHu}v@(n@ z%4;a^OAoYGh`C`ElV(E7r59U*fCx39HO6Y!3{V?8piFB5TZZCnC6?TSG^4%}W0Z(Trgi zI#WYUJ!S<~Rv(Dk+@%unX+9O*x;Y1?+SQocUwy)nxhMlC7i2 zRW*u3z{Rek&v5rVF3eaiDs|iIG>w#3xuV^Wzd$8E@<{7z?-xpFXV805BDYvV;*esB zFOp4r!mtPt9K3wWXzSY-nn7Z_n6(@QJA9EsMzR(fM+%)n5Gdh~im;PEFx>TlhZs!o z#-J* z*q>w1)b?1}Rk^qFEd9 z^8gu6KxU#4L2K*L#y29;NQMr?Cel*o+8W%^vGHIb+Q2|iAdY)WNvsoc^5%p6yd_3& zWj?)zY0Hi0t*xzsJ=Xg@6_A#;Idt?nJMl!>VB2O)m{8DVErISlxl zfLA-$vuZcpKutIceIyL_~=N8XOiO0u`lY#`&86Y?|V4KutKO0K|QLp zbo)U5{LyB09;jNP5vbA51Sv*#0b5e~#saOf|77(9KWRU2P_a5!Hg!K4PfqN1E7bPq zC(RZo2#QcejTozz%ygAV5vg>{gGeVK45Sd`Pu+;wZ(kDo6K$-O4hJui1hKlY1twieq4+J01S)a6_|@YYZM8PDMWvp5!i19M3|MTMlcFPK1-Uc5KMK^u zsxr#{n_n3j_0Ae;e?K{Pz$s0E+CzCz6=oKumI3>-qlf#udt^m`MFupiPd#Vu(&Fg_ z6zG2-@v$YopQWN22oXN!0VVE&H}uZdnR9w46-9s)&OXT7-mO$`t#2)omJ>)p?*I9Q z&A!xNVNZ!}8jYu|=2|$z{5w)3OiN5%GVDD>3WM<{uA`$*Ud@8Vu4EfvYTPQlFg0eL zu~u>03Gf+o#jZ@nD`up1qrYDlR^7-bW@Rsv1nyvlyu9~(*O`mBj8Q2S>q0+}q1fhR z`Sk4lnCBnm{3{}2@J-r^SdZBF&xB;}C{rAbHVJlIMpL;e{d@B{qI!Mh1n)#>QwzpxQq4KCz#fS#K)#joz^R&a|;JN#l8EYbt&9?3sK+ z>CyA--rp=#$$i*LMXq~URH%J~np!#vXRkSj9836NxXwpTN1&3~UV8Q|&}NY{8cD9v zoMRY}m3`Va)CJhFWND|@qM>*q^Wrt!&@e2I3rvA1+w}s;cbgxMQ|ZIu^hL+U-Rb?! z$d2Z4hVy!?VQp`8M|BmcF%|K!ysem+(AM1WxXc5f)bL$V_LG4e+IkO0eK-{<_a5o1 z*vkB0enR&%{rZ+@>T$=uqeDM*eCI@rGdpTY6|w&hIsSHlqD2(-Jdti&ah= zb^7$-+}(<2e3$IEITZr@Jn>P{!wv6ly&)M^lKzTG^gq@8`h{+t z3VEK`${ASL5)kmeGf%hXY5+jtBap>x81qX4i|aA6w5LJ!jdE^V!M15nBa}$=+$w(5 z;%J+6RVjd8e)(%JM#7f0Xd%BFQa#}cWB?N*rZ%Rg0joRnjUf%5D_?R<;N`_;eu=mLV0q`)ySWPIcVx)t z9uEvsU_&M*cNIk@#<0yb8WVFuxBK*w@17MzFbmsdn8v-pVXswIiqu1A%}b4r^t1bGRwNPfZ%N7;!8#q(?*tSzVst=szS^uT)*DrA?5bZ zaHn(~5hZECtf32om(5MqWKVjp>K{NlZ6NSZHmfT9zrxKc?zg5U-sfFDcF<(5Qp0N3ykQC=U ztKHjwaH@E`%?<13c>f3^zg-w53GkcV-A)K{;90*`%oZ}|gImL7$!&|j&NPdkx&52Px%j_C$Z~M*^6x3&7paF{d>A=IEitTq4D?9LCobS)q%~IO^R0Yj& zuoLc^&@lfm7(8tM71ni+w`xkNH*|j8nT)JZ-m`Rg@pT8uUM##a*=Vr|k&ThKrywb* zf}z}4qc^-Ny%3I0^6lac6nMdB^prmtyEPb^5~qp@ap|+|4_cjhy;o zQ{58&Df**Kji1z%`!cY`JgYX>rxslYC6|GDufT`sXz9Hujqo0V>zH=?%p&*L%#4~J zJik1Gazw0;#KRq-Vm7sML3SU3;K#99oC8$30!c7ya}4GC+7Vbd(NMilEL}NiTgvh` zhUA~y!@kh>-|N-AXoUrUU-Z|{gt8qfVmy3OQ@mVzFwO0{F|jKSjP`W#dO0(D^sz6= zLA3pUZHgHpvXcJTvDX`ZP$}{_ zxRCJ@eQpka)hrd5OD6!N*)>!V;bqEd-3Hc`pGiuv@ z_%N3^cG0T(KlR&Hz9aenONovG=$HO^jjJmXl2F&_?`w&UMZ7tB%#4?nGH zcD?eRM4t-k!*%REy9{sF3~drpCh&z7=ryRW&y}6yG8@{dxsDF(h6rvqYZ;dSO{1}C z!~(4HinRf-AUsnbMJq!tIAD9AI;Bw|coVdCFvo*Zf5T*iYh3!?q>~y)m~AOhOhj}d zWc9~Ej$rljc;Mc))wvf%*KXn9<^ebUJMxjzpFa2TRd=KGUB$rX1q)ixM_x-Ko8Y5f zTFq5LsB33dl%M>dt=|GqPj_49UKl(qPkd9gK5%B(xp(s!7F)ehZagVsT9I93Qygl0 zH;m4MyLXgJ=U(uYZ6*Ls#$TzhyHg^FV-mQXKDv^s6}k0Rk;@)Jf|#jHBp~2LZE1B@ zlW9XiB;=T&=9=)B14cgQK?Yv;HH>A^ABQ)@_}^`8cwu`k%sI4pFg{UG*AnC9u|2yv zFt7%~j9UR1PI?N%B)friaf!YU<5CIsA@5=@iV>5OQ)D47cGnXbr*^#uOJGT*UE$B9 z-~6C&|1Y)sEm#$&4f#tCB9L#WpW~SZd)HnT!D;*pmaWBxF6`Wp;o+vsACfnM1sm75 z$(`$eviF&~DHc%wwUH7iI<5cZ=7S!M+P?s>%ww-s;yn~#$9WnJE~>dRG8pJwQ(&_G z*U=~6z2RRzggTA+fwDbB%EYIB_D zpXP@sV`NB!-{I8E$v7@TZP3a@=e=_;9z~4$>0#t4FZx-6QK3Do3rCZkk5)6o5rw?d zomBFy8QAj{TB3O$H8s9?7}q@j%nrc(4vy`11uC>=1izC}`*erarsMsdG-Qtf3rm3p%`A#0D}LCS&X z;mM1qWF6F_RV6sCqXF6$ZMt}ENFjN9dHN^roZ5ae8RqU%s2l88j%MD2k zM?$W3rSN-_u6uiT8DmfWI+>A3k%MRuCO^OFYn;Z3H0v!MYMwo9bj?Wr8b_k6tcts9 z3H$9Z>_WJ2ITvBn_mQV-&)?B9Y_28c4OVaVRu8nl?~R&GzAKX2^7x+d?hEK+xE>E% z_G43=L$=CS7?&`yMFAQB;51($?K%p~BqVBjVGeMvwH`nfgSrXP+a*|$kTDV$7GLUU zsh5=cWukd_29~56@9c6Zo_a368tQ~_-Q2I~Pr=ka@dRtVfZ3u4a`In^<^))*iuH|0 zDu|sAn?&sMle%TrjZ|m%U?-~fxxbC&l3~m9fmi3UEcWx;N&B~xpZs@POP+U+8X8_F z6BHGhZ#&GdG8xMt8tYkiF|rF@fD9SRnyAhcoNl^Y;D#6wmk#S=#{Q9)ezH%$ZY%+g zqm!)W&R_G8H^`zIAtiAn-EG_VLTLpvKvZ4|9b2cL=FVl9eCVZEc;X zUz#-lA-Lh}?hg7c09JE~anzK31LGUnDfOtq;{xP&@$h;1XEX5Uhw*w=HdbrTwFQ~` zw~KvvCQWTJLe@qI<648c((&#wXW#7Ckx%yr4c4@5T;eBP?}0F(Oa*a~axCt}IC_u! zcY1Riap`FpnMJXN z$~|YAzp=WN5wxH}>)7tuy)RI=4WNl+;8t!p{600Y7iVlT{7jrrvPq=7jjpySZk^|s zRUP|G`X!o)mEQ85%DWe)QXf(WqU>SzOxWGUUhMA2B6jX!Yt_J=sfn>im&9O7orvUr zFxSQ_spptEZWeLW7*UDpvFQ;JC7>s>#JlCS2sSv)4(@4U@dk`jI_8c$R+$76%0O83 z1{NwL6~6_=tJ#qcA|ppr=lfBDaU2R>-#@G5fWoy|h@eCV&p%lU=5S`AuC<25 zZ8FK!dM(z_T`*Fka8smk>C=|v6W8KW5qYLdc8sJE1>xj7lF>NB7EOr6-$9X+r0^O?Sq`~vR#^4s%Lxfqgd0Sht6!huKBF6(Z9spd26i_}&q zCNEi#;jbpPvH~-;%q13m=7XGNpUH4JesN|6@ z45uFRG1qjF!vdKIQ@>9hxzMSk@&N&FPsTTpkQvN9@)fdd+Smu6$i2*QsgOe{;1M8B zP>xW+ILCkxP>?cfEJDf~t@bW%+a-#K zAKyp&rTY65H9*AT=I#%>3?YmMH+~xm2ANdzDy_2<>|Py(d;F6(EZBApv>~>!+Paqz z=)@nX@}V%gEEJ^&Mop2wUF3+Lg4C;shs>pcBC!q+Yvg&6+rn0GO;a77`U*jUS8a#=xsaPG%j{nCS~NKYmNy}b zcT9!RH;dEVVp&U94qp0N)1RN87t1N{_1NnX-+;JtHRp+DP;W=PWB%5B*^d(Ju)MXO z5y$|nyzaxN&FzUm``uOrwIdmw zTUF(jUm+%C@j74ZpH?vzhnS%qUwBsu0tIc5t@R(MT*rcZ!KU|nDfI7Z1RUY2Y^07$Ko7gw5c#~2Bt5rPTHiwPq3*~ zq;@J3>@hVBBk60?30c}-FFjR|>6ewqcA#mVRddLG3IMmq4<6Nzlys!NU&o5@00VR} z^ZT)ZExIWbTb$H6yJipWj~1tD@Q-i*#yj($x@F(}0L;lOBXIovWqqs~2zy`z|0jFP zwAS1?-<2E$N?hU$!{cy^fQAPf|3&*9tzX^3k?)IemwIMZjeSl-69-K#6wm6J@(4uz z^J?0tWa~|h+0eib^YTmRu71Z%BKMEMZz;O0X`>2vQSL7jwghb>AZzGRPaU@Vlk@s$aeT`!fA&l$ZCl6@(cml5JZ12CcJpj3R0Tl#j zq-Y4F_~95+Zvsv1Wh`O?k8f|+%~D3JFX1NkdaUc6iO39eR!{YE}M(*UHOZp1T8)s3a6JM8P3q%-C~gpJ9tEx`Fd=Ls~2f%q(}Pg#e{x}Oh1cv0pC?Q zEE_4Nkefcn#mmDY3^dmqs9b=ZZ<$vPh^ATLd_qAooD43vqBkDjT`NRbBEJUp3xFiQ ze~oV@;lS`06$x3{1^J82FT$=7wA6arWu9F&wX!-=8a8X_E>8w-F3sI3ak94V+Rb0$mX zXWb5Lj_2F8R}Kv6&uoq8E7I-;V`}U>QVV+18uk!yd%D#R@ul~aF0Rx^4avs*Kb@#j zp$#=#g3M%L`=$YkhoGV{OcNt-wDWd3He7)PIac*{WISpE`+Bn8Tcy^fQ6A#}#mEO# z&^v*_uSeZU8zfwJdYS^r5L;TT`-Lpe+G0kJz^kV9zP;)dpqAR0n#u3F4^t^AixNli z+cExiOmQ#d&jNGdL1*;#)L*#YH}?kDPtE5EJC}d_I9VR!oXRJvu3nM}GkpPylMQ`&EH_I3O7JAzpa9AouaVEnQDE0mps<1ErhoApE{iBmOT zcBFzAFhHO`bJ<9VWXT!^V%Fe`j&qDxoxY!Rad81=j#%?t?no2_6KHOpD+nf1q0&5I z6Pj-{)QeoWho4<;8U1yWkA3~s9&l_RrJWqyF!YY4&v4%_vP6pUDq|vGssyJ;%z2`W zx!k$yi-BaAh`g%Y%>rUik@AI}tCY(I47sSU{9q6SUP<-@Iw<08F+xhpM5!k-V&XIv z`tDxqm}&)OpDNW4&<%R-$vR)%0$W2~N_b)Mb(sNYwC{=ukol}k2JWm6jw7pKs%7OU zJ;|`tF__-5k>gDdlzZe!&mR8I>@G9?B*nA-+@dxe_Dp7kRL48`K5L}3{pp?{nT#Y~V_n()~yd{>GV=IeI9b7hE>|BUe{e|u}0g>}Wr~LC8`Z#3W#YoKE$#Jn| zS^GR8?REk8m)ctQI9&243b->kxE(W$P4IYh{ukQ~{!L`vI&mWuOUtunpc)TjvrvR_ zRC6$mxW25?5sWHIy%ufQ_sHFSyNjgDt@No{PE}D}K6^n0Bc1?;U!ljy&!6MR$Yes$ zo^#L!_TY~Uz5P4i`w@Ed zM&FyKDYc&hk#<&&jPXL632N{7qU_JpkH($-S}K;TkX75=%@^yAolG_Rq$ulsd)hPt z`>EfFle|)2icyg-lSqM0GjSDaJH`#<>GRg+6SV%~B^@wW4ew%;q@&7iH_G=H7DiI3 zH5v@dL2LW-<4fdwY4`Yw@RxEwq;}GXI{7|cmZfDT!;lmc<7!`uw3MX%lw6x?_8+2% zYde3(61w~NF0r$_aC1&M{vM_EO<0{16eKDz#4?PY5EkB^F%e>0`*{IJg_Q0|@}8gi z28(5iw6~SWQm=aee>~gmmHk29QQgB~3D=xE+PbHgUT`&)kx?o)sk3{UCRb?KxaUyU zyV@&d3Tc!-L?#{J29TdgCSq15yM%&>Q*pUY z9C!3Md?`q$_Xm3UMMZ3PdQBZ%*KqqAr2CW=QBjfZm^dR5)-S;*MsQNJ=lG$aF_=yL z_{cb3RqnB@1T9xHvHa|kMAy#F zjt5Om!kqi}{nOBTaTpGcPQ@{Zuu_GReVggqv&8`m%?hX+$9ag;2)2$qk^Ov{IdbuG zo&9FK{L3}V^8z2v-cQmkzc{h?&D8Qz-Qi~RJT~_Q>P&a`X~g<`clEYz4-P>+ z!$QN_JuEM!Tu#csNV3j+CK{i+R*&W;B+8o3bsft+KWv zm|B~SO^o^az6hO>^X%Er7PCHcn6rF%kD^+o8t~G2rBa))r}9Hg{rzo~PoB%Sr-LDX z45x%0did!*rnt1%hDe1tgJ{q*9BRIiM7J)G13AgYx1L#cKzL`=wK-ZdZg1=aks~a*TK1+@Ggne&(s`&Z z?>^;}{B_HTzMN|~reHHxv z8&B1_iUXs&KU3+n^+YqvO?xKm4iG8L?33PH=j2Ie7?Ju3c}&%Lf_d((PN6Tx1O?mC z&u8$NK9VVl_b=%7h^adTWM1hx-%irZIC%#LrL{exCE}sLhL(EH5L zcbB{zBbq~4Ita+v#hR&iOG#C)h;*x31neW`J6dM_(gf5W6{W^LZmbz}U*YC3EM_0v zikVAVxLN8`OL*DMdQ8+W;1V}?aaQ_Eyyb7y{%PD9@J)fE4UW$17EQ2R3l$TxX;WJs zs%`2zDS_`a_zuR; z^?Q4{9~^e{D?QqilKs)Jx>U9?U)W!Lae2~zQ>pCzkkpmYZn-FTv2n%m;6SfW7MHT* zbdOt@(lhvsVcWhNRwI~r<@D1`!I*{J-Stj$^3Gi;{&#)5*t_a~sNl@z5_d!1=RCGUl#IFt z2lyU+iy5r%6NiTmN=Mml%6BE0;zr=avqqm9uQ6{%U&7xEtb-HG-D#uPF)7~^%o0)| z+)cXhrM8YPH}|p>92QC4{37oAaT^CUGU89bP-doS#4;Ks*yV?;(hrjOTSB*$Exckr zw28Pp#vH4r4`l1_grd}|3F!_k>3nNgc1V_}azO2-pRKzO6q*(}IN%DJ*R-^<2?)=R zAx}P49T4j-mRD8z(lfZ2<@4&bbf3Q?cPD0`=G^yP<%-gt6sI)xcrOK^|7ITg9evCC zn93>4>(bG71%&a=eKmK!YW)k5g=||Lt~t`F4HP*LZC@*p+63J_`N%_&g`OAA-cNZG zN2yxW2p4e_ncDwX!?}Mn9`65syJiaG~Al0>2YmyF}cR#?fvq8O=n+4LD`_ zx{6i6{*N!TiVA7X^Qvxv1J=4_gmfoimzAX@qvFM4m&LBZt(hEqBkvS-iGys#^?Ze= zF7HC& zkNvp2W?S6*tt2r#4=OG1?XocBrl?UOkou($1tq2#p3>Ar-t5m6)a6n(HGNa( zy>TK`I^g{-mg66snqm1cg~54nVb`}jxw_hyp57(R0pK{<1f{0@TRVs>);AizFVX6y z8%N{ao(%3hOIfce^L5^{v$sz!oKGD)L&TD`?blzxAS4v8FV_FO6W`8`m&O1E;SxoBO*=(|kWb%y`ZC&=lpB%HWC>Bc- zY!|T`T3Nm4o3$sC*aL!VzWx+^8yVOJv+-<9?dNMa0TRQu`1ekd5XFuC(Y~B;1{NX| zHvXpaVdXA%IkHtty?rZ@_MDcqup6DyrKlKq5}gKiy;ktH(upUR9FP4p*Q56tK6m79 zp5C|3d2&jmH$$U`g-a<(PC@3zSm;}WYDdS5pu4|Oyo)c&^qmw#dg>T9aVF=sBy_5z zf6_A817TR_A6O=-@+JNexy0X4QE5a4Pr!bZjepf}yOH`5*3b?-`m5arFsR}fGRHJQ z=w5#(`Ugb!Wn2#-D`@lk!3If}g-E*Q#2@u&pozGz@wwY989kOkCQl?S;GMl2Ko+Fx z^eGq>ac=0p9%~TWCH#8m!PJuhW*5m6v#Unl7UDgkDyE+r`QqtJt41TJ+v5`xkU?mJ z4wQ6FFp6V%8`&;H-?a$EPmY-@j{7sUUOnTOp_4x-&BF+-UaqVwUAOw)PYJ{I!}2h0 zb1F6|)eBtDt=RIcTss|Yf*v-e^2GCLUen}}tfc`zHF)=(wDvLxOCgxe9|sN8(9y`X zHO3VP(u}tA2nN(A=CtLxb=-1rsj-yNCQ|kEk*zi5L>l5kvSgQ(U zss82>ES0P5MQ8-FdrGM%P2}bJ9l1CM~rl zvQVSmmrQ=(hH!3 zEt3*%r*-9;Ru?Enuac>)ojWZb21acnXZRd=x)j0##~_YG{~JZ^JZAZ*wOwD0lYw&s zqXBkvPpVJOVV4zyFfv}qe`!!QLl4Z0U^s<*>W+wJn&C7b=(JK-2TmjwWEP#YI^RrH zi`o#%^7wwYY3{qcN7A7F$;p{%pf%48E`WO+xVIM`E+Yx9mcnh7leA2hVWm$pQj7lX zbv@Yc;lIa=ygK^k#<5jK5a+k9C%>&WZXuSaYhPxRjOQ#XF#fU;)bRkS5wU(Cz-$Xj?+;tmP8`cK1~z>L|NANm*77*`A%8 zP(-1s`=yPHa(b5`!?BcY2J7+?j32tbG31G#DK8JWnfwJIO|J+le&>Eaq>9_mn;C{; zNPbUOmzupYjPy{DaNu#|Du_tuSgzKI?RfJhqDD{EGH`8?U1|g3-qWTTiZw57n_3=g zo^TtakA4lSfp{-N9#ujNFq`rCDG7f{Fx=@jQ7C~gD)C-Ii$wn^3KI45jiWok+|<-> zceb}LQKQ;ji{GiKJ7)|gu>2^)xUQjwT2)(x0mfhIE^TpL%AP3H)_6ztihoAuSbDG0|TOw?wZiw4cR3$mnp3%l4`ZM!RJ=TJ0VsMe2D)Ia{7jR4)n`6%WSxP_}Kv%E88ZK6&z>n3E9|@%5=g zYq`wdWqy3$|Li%>UXytJ_hZ-p0!Fy$Z3c}#O*oq;>s>gj`T5T5r>c-o)f0j|K;i9^ zudUYIlsl20Kc}SRdGMJ=l;Uv&yC)abFReKpF{-iMP;42Zw){}K%k)vO`!+6v>Ucj6 zpsjK;@|k?6VcI30FsC}^IS5M13O4aN)p z(T?9}efmLu;A;;MM5{Dc>Jkp-gQYwQ#$#}(uhLx+LYgy$9qc{HTw==pUL@Q;dESXp z!T_bW3|XAAbqn+j@%P`FTVMZj09v6WBsBCkHMfy_n9qzQf25Pt!cYG8Lf;L3fiSnf z3)izS8PxfItVT-&+nc`#Bn&ww>!2#A>(%H6PMpDw?ZcGC$aJS0T{VK<%c(`!zm{A4 zHJp7{ww3p=nim9lCt$LY22zY>mX@ZLmOIn)iQx>(V9*D@=Cm==m~&za$u5YEfmnc; z5Au~=Wa%~u4^w}0;>mpD-~T;JK;)VzfE7NQEg{B6n3t*!!?K4s^lf=~@PTzIvflPY zTu>xW$Y~}fq%-Xy%zkcc=DAh!gRad&6rq`F4pfuG;EuKVX7m?ZRMNKnqx@@wb00=` zZG69_4P_J31w1aa>a}DOTzQ9J#yt0~&6lzp^kiMXt{nX7gScwYVqTrs-y|mzjaZV% z$u(S6O|iaSE-F^O#LdCQJ#5u2)-fvEd_$=4cERPG`*7=FIpV~OWMPCOW_9bYKm=nXkHSXqGRAJ_j6{JmLzzq3;^V`7%X z1YGHkOl^HJ9G!muqA6AAM9CM#g06yNV`?Bvuut^}nwwEGQBFHSC^j@T)#@t3>mYSz z58It2olz6CNZrV7XW$m??wPFhH_+CoCUk45W$2JrfA|Hu?9HurE-c^y;Mfq{*AK%G z#pWra-L;C7h~p5N-ZCa*@BX5SOhyg7P9ToXvbDcE;6Q^GfO}qq^NJOyxB5S(-a4%5 z_xm5`rEf(=L0Y9GMClkMsnRXoAT^|WqcKn#q!}Y#bmwSrLcU-rDdC(&Pr8fR#< zprmh8uI^HJ3||?NjT|aGVamau1`HhVd@7XuQ z(<6x*xojZ@{d+G65uOH`7gsDnI+&`aLQFcFdwwBCQd}3MYh+UvKZF{R1}xY24lIc$ zB0(pCCdvibH21WOp>=NF_uvp<7%u(TPx!?H`Mg#cpf>Y&P>y2@g=+xj-!_h_TUt9a2V-!TISTG`#>*$#>-0Ou^t zR*ODbk25loWEhBG8=+8_Ac$4Kpc?9RA{Mm+!T#8P?dXp^E=>Z?KYqb-Deo%_OVqFb zPSf$P!=DrJW|-)=@4mIxzK20}$bIv0hK2VwuUW5|tSq=gg#s0pO{Z;MB8|i};)PT( z5dX(I^2qzr-5dWEIuJ>d|8^31->w9k20gFcGe(^Z5u?Ywc`<_rw z?&7Yy=IyWzT`oVMXuo(%lmrwFbc0E=b*G4pjRux{3S6L;NGLD{i_<>G!DapgcmtE2 zp@pvt@bU&e3qFHVy3jh~-0yP8^BVJ_FjJYSQP|Wh`kK^#9R4@of2SONXitR|Xk1np z>=%QMX);uK>Aa{yVPIB00(X}CY0NWB5D{J*d951f)PhWIf?i8T` z5tQ81wrhU3oN+Xa;IDR@G>VEgl<&R!&tDvuDC&Q|W75glPh(F_h4{U9=cir!1GU%Q zBIG96Z(TIj z&?GJ#h+P8?&lZjfHEDo=5DaFc&=UqtdN7vf-odScOT8O|8|#~nH^&bzR#(3+XqBSl zZ{WaZ-|RY|$edta5)k(2Q)D{2-KcME7=J#fqB0n#4OY0nZt; ziR-U2<@+P8PqBt)0W*;3!j(+NWAzOG`i+bC7xF`9@DGO|a%C#$F+B1rU033hfuF>f zfIR|!3#kI^q)v)Jln0=hHt4sRbSFgtoQA8^v84s8uzZ1Xe;0HV8lZlqb!m+*f~=e$ zl(3QnW`~eSP*Tz!T^=DhDHHAskiZrJUH<3UcmIu7H@cKL=6DBR{pgeuPq#VU_oD&? zEnhLUnUXag0t4;Z;sI6JfRQ{T+XFDK0#{AZ2hnjTczDrwC&ukb5fM?O|GD20YGMHp z%^XFz+@Z>ofNxp1$ytL6B5Px0g9Zl&le5&O48sN;f z4_pog-RpYX{kVn-dM>*6NaVl9-qLse0Aj*x!K|}LJM*%wLD>cgE^o;5I5~TYe0L9? z3smc1*|I^6rK2q4jPuqS@+ErKj-39Tl_osD+N9yV2* zD6n$2I}KK&QQ)~7S4DUjNsfrCuBj%E{KUEH{MSDv3gGs6PXVBd9;tyvyOg0t;2+l) zJ~g*(>OfEE&Q%Z@CA_CQ;w{>qPYX$lFMv|l` zDI;vsz`?@&+cu?w5$w>} z2J?&=sL8(~_3?KzdAs0n@^Cq2`h4a1g5of$p0hY@G10+s`72s%Mg=ZGXCEl8G=#>U zo8H2$>bD>o8Vt%^{@9z)y0rWEVf;Ne@zlh*J$^%)gHHMvwIq~SvQoEo5S;07uZ?10 zn9ujZG(De>DI8UUJYqyjSu`7`?5^dzV^ zV%Hl>drY0aHEfw`WOPhYJa$iGSB{U-MLvyL+}JSjL^M2RXYVbW+uh#YWng5S(0t(F zH+0sN;4R(0Ipp#$KZrbQYzrG&S63HJ%V*)*Hdit3kO3jafg7d!tW^F|^U){%B7)5N)Ot%w!jxcbL49qT;r)f6y&up23iQeE*xl`> z!cps*q}>WMoYP;&E`}v$kxhL>NIhqL=@jl+lFZ%*sPHxbUthpsld1vJrjjNCNBOn3 z9e}Y0NZiTs){1^hAQa3az2!h)9d^%`j zRVMvIf&0dPSJ-kvT@CQfKnLi)n!tV5P3(@xT$ALC2!WMP2zxCfx<%g%#kzSItem>Y zR-R{{mPZj8^$gkc^9!7VXC6j)k0G@3W$~$NXvk?T^9j;r-DAqSmz4nz-2btwiC?lK zTqI=GOJsm#ea6)g+?e5{OQNGki0I8@z%y8I@W!nStd#F$On(Qw>PY^6lpBM_r-fQ8 zIh#(Fb~TELoKrLWe%>jf(X0t0n(>q>SN3UIYR8$gL7)g{Iq8?>ch0u9)GRszf|Po; zU@bu{EdlVzZS;R#b-oZ&QZC(52MSWs4~k{3ZXt~@dsV|us#}j+2+73yr*n2t>ZYv} zL0aE~;^j^QB3NomY+mAnnJkxAXgQVK`627arR* zKJ1=M2)9xxk~nRpBv^0R*)qvmM-z_N#_$jqO45$*59u`Qx!FTS4>TV0kLrlKAuYHqT#fsit0J)&ul zt1Y^hP)t#?riDKa|1WqV3gG;M_9bf#W~LG|ni`7MIkJd?fEjyndBsf8GiDDNIlvIY z{2UTricHOdqiVJXcl5j=F01|)k_?QJlyP9A|NFX>x+*36Sc$$TM*tHSXS?%- z?!DxQ=-~W*{?nPo3IWVy3egSkQ%eO+Hj1#)fT$OvqG4S(&>+)pt~uStvrl)W`Tx?b z+-}XU17FXm+?pnx3LS@VAKg=s+z^WJyrePL{R0*|Q7^yV>m}mCPY*f>OJr-bLrLNi zT2uhN{#C#>;NNwB!GWMP+@sr4!8C1{08`A2grSj%|FOf$&d~1nxIIzOQBno-9j4T~ zwpr`NU6lp&-OMk)o7Lw8nR2f>v2gFQQmX|CLK-XLs=0Vbk}gm#DZF~%0r8%Y>^!i zAcfT)Gc|664dy8&HhEQWZldI=jSu&VU|65fCcS+1=s8*i7m)_co5O4Qaj#>(xE5~V zbnem!ukefhts*AU2*0Vb2I$8j@Y+l_uYcD23R}5pXk&w>@2!AU^_K0zUa0h#-}qdp zGmD_Ga2>ylzo$b)u95_x#=f8I0&SID8^nWJ4Ov*U>t=w?a)d3uQMRYSbLcr0z*eQD zp?|c4?2HOvnV>+vQ+RC5CXlt{DjhedG=M;$j*8woNlK|tBbKFt*7p}IhB`#+p{>o) zCxOG1Rx;aZN~T_pgHF6=^;XW{ELIT5`RB>ti+7Q*DSgI%XWvmYZAv8b?RH-ZhIlJZ z1@8nZG^8;;3|4)Qt~m8xLPT{*&5csP;;MA#^;bAJE0lapS?KwakKvxc$!wmc9P+j3 z5c2=QG;PwR$-Dv!>VVI~kOF@lWd$1XUsV_>U!@PD$@auXeR=C*5h`^iau@T9?I{4* zBNgOzG@;AwZmc}EeRgIO49v=<dwsObhm?dU|=93XvD2mm7M*nr1L#r%O~}YER@Pm=n>@iNd&5sCJlyU zirQ(KhnGVg>6%s+U`PD|1(%(_wOwvn}t+bpH8y(1x9r z742QRYLeok_wG8;ten!27w3Y*Y6>~v7dcKjIZhQTP6{gQIpDG!tFk;BH76H_*JY=- z_s+R6{LX*p{`?IDRrf9FyufpjHYb5t>`&3AHNIUgCdMXY@OqCk1bi`!{}~&+kE`Ug zFDcP)w!`y*t&{r6+VGk8aVWxB%SGQ!@_c(iPyY)BQhhmxW51nspEIc)8za~KZN_}= zfi%k(GT%1$P-Q@Eu&iqlrO@t_{V4quKBuTZ>*kaz zDM6ZB^^{O{ZOy%wsc&cN8(t=@5@*VN1!Y5}|AC#u+=T|xxeF5ZW!xc~sIdwYg>h*| zR$n|!|DYTmt(KUio|+V;G|2Nk^7#L@nU~@BHkXQ4{S3%Hm@uO|`gb5AKh6I{Qpn{F z`6#iUlCJl~L^o~a*vmlP{?BfaJJswJB7$Iy}|@_b&Uf13(}^z5*KG@ z(FdriMGry`^8lcBCF7yE)sBwoq51hkkK<=VD_NSjM5jth4yO%kRnM~RyJ;jVPA!oj6Lp|fm`sIwY{a&cvKc6i+yU* zg%&P03PZcXv(l#yac3q6j`A)0MyX@hCcuT$!wPt8ds%lkd-we&KAd+*)%^dtclp2b zQv36Rz4=^$ynY0=hFX%{3l}CkvVq;1kli`lczhTzSHa&R7}s^)VXbHO85rdyWhNmh zSO+!C(UUW8Gd7y>VQsgQQh@ll{ajo*g#K!ZU%b1+M9(xCt`q`52l&d*-ya}Q@?Qqd zxt$ii$%rtWe*9RyT+9!uj=NCs@U@bm40n8Na_^mUc8-%vS-t=55P72~PG5u6eUWcn z`AsrCbTYZ<5TB?(Ujm(YUD}{ivem5L`88*hE3al?FqT~5jldYX44&GX03R|ZU`o(7Wyok^p% zcQYgiD`Y`3>hUBiJ<1frL-Xe5W{x5zkB=!cTLbZ;IQhK!*O$u}eD2(aoZYoyEh^l4 z55XtE)K$o2U9>}3oZR~q9_T|q;d;U)1aI0?Sr-MJd&9#o`CXW;>PPZ-BS$X2`8J?! z(aDN^;BK}25l}+%gFzPui2G(gZR}9Xh#Btn!lhVWEaBwzV`9>Hxx6#r$8$S5Sf!u; zoHd*h9I*4H(`pO^F?*0`w6F_hO1cTOTiN^$(toW{@v#cHX7xcpq0Q+4kj%EpGtUQUlbz%$nfk;3?vFi?PO#CXlN!@14NEneoQ#< zvlSNaVX$4zm<#+JCG|v30}RF$nZRYIMZRHLvlDnzZ&PY(hQ*V??$tsA+DFSHB)w4| zK7^?aUi-!?LE|26haBzI94)ZwsUT5jW`!0D!1)wISF&Xvr$t_P8cIB4)9&w_G7Lv2 zjs@(&bQ5`4`g+6ItaPYFBIN`@`pnwY?AFXWA}rx*)Hhkuj~Z@f{>8$HWPk5tW6)Wd zXdCfzFND)7Xt)^xlh*<;tfne{D3DeFAWn*|0yO^X!s^5XTy&;xI?lqOuJP7fqriFB z2qk%6&Gw?GvfP+co%v^TJpL4^vDiCw`ttJU8WR6KmH-RL@vaB;xL*y}M!X?$n7in0 z8-&X&;7Viqs6WYiqkBfPA8)gm_hH-470%Uy*t0*~165;2ph?lP(`sFI#%igFf!o_x z?1EJ-VXq+@9%6EsG}gt*x2$MFbCnnJouCvA3gSOo7iZK;y7u&7&GLnmuH~C}>>#Yz>oZuP%xRFbznk2CwZg?F$BBZ&R?WrTj+I=5 zRSQI}rK3#_qGkmN2net=aP*hC#aJl#Wd6O>x8MDyX#>nYy6+tWdM-*k5<9166$K6e z!wSEziC;&LKDJI03Z^v|X3b%XiKj~dY|+Z#;7<&Gy$93klaZ47D1K(Nfip>^aI|SX z8eHNEg@lK}G#{Xt2unycbq(o8BEF4t$GemF3jdB8NBr^~i1zV#UA4ZH6}`IpBjG zOP|3juvNlc9(ZiBD(lzCTeTJ+nqSKyki_T7orB#@;C3e)Ft?M+piSQP#h6tAubL>y zKcbH7Qgqd+w%Zy^3qIse+OGu%FHZg?WIm()LrhxfPgtuk@r!*E64~rI=@MDH&TSD? z{qvWl>XIOl8=Em3>VN~#JN^)fcO(2;-`cu#m?0M9I@gTeF!kvb0qyNEZSU>0@X7lC zm?Gxa;N~TnGtJ>lX^5kYj^VAe)UD%$x?@x@t|2Sv^e`VBF?PQKbF(YLxaRCzQsfPB zi%fKX#w!vYtA<)cY)Lp<2ns)LbIxRTP{H?r4n%^zkM3U0neW~E8sKXjNheGy+c>9} zFQfoZWy_mo78ixm;~5<|$e@TC+#C?@SqLPJh>wD8wl@b$+MRM7xbsxxURW&~xa&W% zqND%`GYhaY>sT_2=!6gI0<(EP7^;U1Qf(YjOTuJOB2Rz0E5DvMI=?SXfP)|A7P3>c z2esXo8yb8}8ysY3Ie!cfbqzS3UnFZg-((89)Xb>LIhvZ9k_h?9a=3*Fnt3fUaGGyy zHZwD0;&=Xf;~*CegQ>*d9o1@WYiS_>lh;xz4FK8)Tq(-#nyEm`=M=*ytf~fAVG+V< zuovo+h0Td%qo+79CGT{f+?+g^*1Y9~#}fg#mUNOt)GRL_>5iZ+^bN1riMvOml~R#W z>bPG1oO(0eQkA|C7J@()+E@-jHwcF;^=JS5IR9tOSGfA4@YYlA<+AKkC%K$5C*4gc z5)&{z*u{=l0NQGItjH&KpAvwXZ{7(EZdgUCzx=O<#rhvItnl|ajkfgk(#LTOZIf!p zL$j9_xUQ@@GgGnQGAGfSr=@(E_@8#jsTmnJ%-D9j_u7*P0Fns8w$PU7@A86<4%~6H z$V-%K5Ekf<^(ck~6ES&97|C zbyDbOk@i8Qm1pN-!ub>6S?XQSoInTiU~&B-ty9$(Y{|i@!-u%`Y6j85^IXXpUMSA%pG1IjQ)=59f z2uEbQb0&jB42*Cz!0TzL_*4UkqbNZtvJuX^)p9M<2mrrG5ELJJ28Db3E^|{0kL9Q)f*@wj?xC-i`$rW@xT~Wym2I^bYg>`o z)A#)}K4`*%az@+#uAi57J{f?B8*kgSGBMCRYyC|3d9bP_G4PI5Cy>;}&z~YaN`o3tx0LN2}8!OF28ciFyIf$v#ypaI#@f zBM*Ne*QWz{yU{herTQweHlLNE$v){K<8`M&Be*hQ+L0;t#ODYp(3-?Lp z_{<3;r2oNQ&+h*YW`^Yq?*f!KX}edBVEcHW&wI)e<&xjmIK-f-a(sXym*Wq_BIYlz`0_aoLRj;I-)cS zA+m+IsclK~W1baly#94niS_qE@>zWdGzI!OYk$7b?=~8($Pb)igV^iffs&4E37@?Ifqg1IyF_z zh_KY^hzOX9&8|eJ1MGfed^N0wKOyZVu=6Fis>46Q?kRFBr$?CxbyK)g!CU@m=tgL+ zpl)z1VQ~?c%U07B_Wx0LpUM5nU6TYyshz){D~jXc<(_T!K4NIU3X+f%;|^Z4lOc@H z?!cHXf0PRCWJyITP4odF4t|etqzHGNX8~63um9u}-bGeHll5YaiwC4i{uCSJ&cV2A zhHRR3<@EsfS=(|^tm^=Vf3!N#9nFVwI;VFPJn%%I#W0cncN0%iUqJxcr3<3E!}@y8!nx_Y{>{nNkzy9%XO z6m^}y8^=As>m?5c%1}&ZBv$r>(ojseB^idSvEY4_!RV-H?vs8#>NrSC>oEiiNaT1p z=wJZASMrA3cFt-OR90+<-~-y5qAAy{D3d@|LmjID$F?*~taP-(>nuqthvF#h%q0{} zOvr4f(*dk@S@p@9rDqWcg#CARr_XMlSCUlEi3{v)a`r-*ZG_)prgDorU%XE98&2hW z=L?%f?dAQc^OjZ8-r29l_WWXz;BNA`8kmY)0gHo5f4dEfl>_%6J14lnslA{;j=L;Q zCC}Z89^T2TEVFd!EEmy!gvGUAux$>dmj8#Ovj0iWK<{6h0?cZ51}vMKJK&LrXd zpOI`IXSMtw1X;nH_NcD715(v}$A;9|d2PtXpVg1mG_pv9?~TiAaBFj`XG zu}}wby?%Q##PJ`vVH_f@QQF;JLuifK64_YeZLxavuv){A@Ice&kAFw>=Ix)TNKs)=;OscZQM;L18;-4@LQPk{j`Neb-ut;@HUhWyswQ; z4e-)vUwAm%-|y=>6ZVv4DC`kc$q`nI)0B?TeuCjOtdPa|Y`%)m;Q(rYJ z)IywrQknt=JnH7>&T8*IF*&nr#rWOWbbU+p|7GDG{?S__v;!8GmZ*W+^L=*`?Z6EB|7RGVS^QpG#p9N<+8svI&3mM=K`5sq zls*Ej6i>HyGt*4rXF@PxV>tL6uJrBIN5=}Ph6^u|Shv6s2UFvrMtW(J$rn9cYEHDQ zaErUmv#vl-Y=UzJa>0*hWw z^JUSuIa;RGh3u$~+pp%_Q9pn2t?&ZH>;+!P!EBdKn&DQf5Qhxz|I{pZ*@L;PJR3d= zCfo$c)4y}e)s9eGxt1O|8Zm>E*ODt3YklSw=h)&}L>O%^`Df8ZK{e}5-?01YkVShC z8M~8FvbVUgYb|^S(qdf#@z$Y?iqeC92t1BH=-qtEFg!bn$$b7LQtLE;ab@WJ^7dhZ_lbQ*(%6`zI%8Ac?4=JoU`1 z+|H*?I&wP2h1voImoJUvHzQ4$;7-U72b?Oe^Y)DcjTfqbBY*|Ec)2Y#kiK-+IbmE>-uE>^jr0?Dp35{fuzn^R*8npB)hGaLUv#BV-*U*`S$&x-(nQ8%=Hi77*5RtQYTjT&_?$ zzH3vG7A*GTYCu(&THj##pt@DT?x&kgM|P)?v{xtodWl1SY(|~{@J$`HCL4JId0w~IlhWcfFzeH~`ZoJg;h^6Z^{ zRGzUUtGGr7S>^oFR*)Y0^}N;rDS}9ZnmBNRs;kdSlODUJY)#@vJ}Uxsri)k2kz8?~ z)piKhx)&XL=)5icRDkEEBum7=IoY*2$bC*RB25J4gMw%*qi0b@2RA&;$@e0h0^d2G zYrg5=_5|;Gm3?=~5HjwGR%pq95%8gmF5CqQV5fY|%U7Q|yAYvo9ChFPFz`xW6msRv)aQW*UG3s!*dA$}aNx$k4c8UY&JO z+ETvIZP5R|P$Y}iSG_@)*o*C5S?jBc|5)36BQ8=eCc4;A5!T`4Y(O$ZD?J3-eCa%d zaNaehPcv$EMShm^+W3f555Yr%KtMXJutMJVB_mDNYVRIL-ujCQZ?mX5Fblf?a$AVf zmYs!tQD^s3zp3_N?YSPj~{ymXvl8g0}&+J5)^g&xXwF6n3it zT7}(atKxqh6H=MEN&|E}Sgg}|l~@cn7qS$8s_)h_;t z#Xh^wI<#?3;b`RHxm)pYav;IqVQOc?L`WR8&e1Lbq776I3D)`2+g24A;K1vgA3$wK zQfDTJaXtC!a>F7p)2VaL60wq7IEU|3i>#h7>+{lb-8J4oS4PpBt5kqZZ;uvymQ?3X zWGa}6US{_8mD+qcR}k>5o+PK~Mr`@IrYa+GWMk;_7dK}Zl4P{ACAG*Fs;TdLh#9js z%p+jRRIp-4V_GsB`)E4@ItXS!7g6Tv<>3*a3nU44AU%UBP;a3#;mp3v+dr*19K`ly zmCVQK)Ugtl9+G-l*Pa>pa>sAvJa+-) zZ%ttUEzl0wAyt|c|MtRW>~;Nv$K|2(E06FA#n+> zs+J2>(6&gVs{oerMUbtG<;;h5%aH~qEDx`GK|nvm+>b_(2E%k3TQuC-r^X_X;8u&D z590^f6=Z1WmohLhFbF>=hqRboxJNtq*-az~wD8S6ru-x&i$DCc4@5*Pf9ki)m=B58 z7byonW9ZwBSqJ=^Odaldes>k|%rFzLyQrZSUiV;4>r-OODs=8t1IFuoMwrgNzQ^&> zSTqf{pe68m=0j(DVYe5ydde4$rVT}rP4EI{{3>sbYxc;4VQurJCc{b?hn39!jF_u! z=+i|!`-?Je->eqX7_hs2>s`v?xEr3GYAp00J!X`1=fv#CVjOyU9+#w@!YjLq^)D$- zI^`lj{C{8i%d5Z9?zqK@W1 z@}v9Z?OE%4uVLh;OzFdu+HLwsIu-JRj*8{eI4tDTj+AHQ;pn0<*CD2>eT5z-^X03T z>>;UBJlWf>Jh9(lv;W(1BU-?FR*UvC8Ruv>tB)POqD-iINiTo^PrEcYDk|1ZyO#nz zhs3*NeaZ_c;gG1lTFKj2?6AX!(9eV~|GO^$e*gF7fBvcanH{=Ue(^S!s^w5G?;nM; z@l+tc7R7b`a$CE0W2Qwn!WE|Ee}PJeCPoH%-T;cz*f=w;ig_i=u1pp-xey`lrF45@ zaY@9`6wtvZVyu7XpwoG+)8btolc^|G=p)P^ZNBCyyot(SjYLCH*Lb+;211=J_;a%a zs?Z>ol*6;wdxxy5QDtd)eL2t9P@-aT3%t509!xU1>k9@?lXB#GXTAN0=!Xtv&v&4F zQB(v|JH4}D645)mtyVe?bTOev1wY31G2y-<3S;*$E&hAEi>)n@qONK?JA25vd4SJ? z+ZYZyhZ6Q<{jtPMI5DmymC|v+fHY!23_o-(6osYBfFRb56tX!yn!N{f67nVP)=J+a z1lm;;HTHS9PSxJyA1|1y{dD&So$-x*lDjuvUCI7H#C+$)6}Gp}Zv0Q_VdA%&cPShm z*536Ke)Xlhpb>g(zITGd2}rac9vda+BfK8VFp(NbGyu#x(U!*>O>2Q6N|F=@GkJwL zC{&&~Hth02JKg&8CncKDrh*%Bih29-@98_ka;*mBO~%EvGp8r&NK5r1El4Fk=~D}E zxkq)qMH>c2k9j_>0IJ-4A?PHji4YW*N4YSL39=c}>Ii7HyxyguZJ1LO;dkAbnb9 zx!}%Enh-_Lbys$i#F>pxFS=mS-^FkLD{}E!+iEcdRb6de9@E$k`aHRub$#o~q%qJ; z)vF}GxVYqVSwT%sU4Fh)l7~*o5w!bexDR9aR7-_o=G~h?q0@~}u_L^a918>Ea@PF5 zQ80Y45-%PXG}(YucfXDA2q1d2$&s`jz8 z{92VQTc=-`b+puz8NgmhYPlHV-oxZS=HA07Y`=KMtA8Zvy4!PvKRz3UVhC(=>p-mk%~KA2@7nCUcwNzs|LL+Py)pX+qd^!-(yguAt9;Mh`U^|R|cxkNgl^8 z32e@tV2e>|jJ~sEe|FYX*{ae&+x&LJ>lH`T#D_9dqqObsZXZ*fj=}8JJ;hG_-rxi0 zh#ON>w{1U-LwCsm&r`Lc;{0@kW z@4m=qo2l!QWhE6u8J4jOpo@#r%Cn1qu#h!Y3zgzI2-?2E405qxRA?4FT7HVd#obB! zEPAbUvdnfhC#N0wa6__VJ*+p+mza~fPm!&3ZM^JNN`M7K|N7~%_2P2Y3%BZmFX-S8)JJVlj zwZUAr7d8wPxrXHMj2f%*)TE8)_W4vCwq39CYX#}<7H0>FsIvBV-;p#SPJrE@?>U8bWtEz(F`}E%H)5xOU|l-4VnU^HA6MGE9TrHWA2Tf zZLqiqR%D8!r7X_Q7LaANKtLEO_yFM$Epxd2?%rth?A5dD4^1ZHnH<&diri7?Nhs#x z#5#`OS8UU@zOD{;&$>pzR@4H0;hR)GzT=-{qy`oO*^PCJu)2RFZ+?doQR(bUCMC9w zG$mFZ5y^V`#259QWj4sv^M`i~)g`G;vRN=_rqjNQO)D57pv%Q#ay6ZSM0iGfzCPiV zq0Lf3$G@+;BJ@lgO`M(e%)Hh0Y<)egbHh^K%@}XJeM$%8C?aQ2dpW!153wa{)D(un zN!kBL1b?chCybN6UVi*YMv4$>mr*a>XC&v~u%*3IOwRhT(ltX0irM*4h<9JyMy&Cj zmGKcHl^w0f=){*-Wy}KCnK5EZvym6o={}-HEfr2%&vn|nYCKFWehH>m=iwj0Sn52@ z%8RUMGBBxhz3P+sT;^_a%!zEA87@ieiRI2?YQ=sPECu40tzjXfi2D?A+K}Y z5QhUwT-tI$Uezci8u*oR!x_d-+U5>58_Sh}$p!q?gBgfY!M_kUr9rC_b45Y;d)8Nq ziUm=ZtN&UneimVA;3;x$c}U$CR1mgI&u;7a1U!?$0nV>WIhh{axuaJ{y|VRSYcmZF z*Dg-nt5|*OazXVNHR;@??g465^}dk4jR6r|-6Hk_vp8txPn2_2y1ssGZ*TAHtXep_ ziUw{gX@ZnEaCX@Lr(3vXaS}crA5|F_O6AkIr zqK+7`pFeB_H!5V@+Z%fb?!%&_5|E7=>OhgRi;IuF8T!kk(YkF*;hn&A$y+2O6AkUz zq4Z}BCKVDZQAgUvUcAGtz^@g*4$J)Q1-_BI@@p^-(Wh7^?MPuc>ThlBna_o}x(N|3}wbJvT!c627ywMMcDDqcyrI)|1XaQZ3V^KOvhESbSVn3&h;q;r*- zuA`Q}S}>=Pr8F2zQ5pa3ozu>c)ugU|cfq%Lr@*PQc3sD=-Rh@!@Jf`VZlm7EmkjQp zQ0CE~VG6OlKwDD|_Iwj~8r>$BLrG}~SHDRbyqr!70AWT-HLnSTr_gj~kbmmq+p~%J z_lF44)yTt${vF6%VNOlSsQ4Y^`S|d#IBxk>byHJ5Ca_kK-p@^O{5-*zgcpYzuSA|} zDEOQBV{2Bpl6fo+Few%-XOjk*L7U++`0r@r(E9<8IzG+^uc1QeeND6ESsUu>Iq*JkN?g3o~xjdDdaxmTras5rPDCyHxOkDYk6BibB>dltZbmFPQsdR zHzr-PfsCA4OQqD%wA#Vdb<6S*G5O)hV)zZ^&h^`Onu%|JX<#~XrzHCFj3q-O#XuM0 zxl*tilzhEm-l0Ew63?4^P+f@k96FbAb#&bFo7qg8cB~)_%zi<`B9Xu>XTKHpAz#TBha4Y#b|V+<0M@-{RbYhqusV#7DZnYb>R>=@LUejb*r~i zMfc&tbrW(f9ow`n{jGZV`JoVk!eUYHxx6bPNy{d%$(TbiM^CN)b?@S7fuT`owf10I zqLqH9F$YS8Bi~SfE8lP?lbS<5B59&55fhG{l~xj{W}g6?5V#z{@?~Mv@FDb1C&*o| z9A*0?bm8v)%ac-V6~u^&BN(tY;sxGnJytv@l&zxy&&Bp=(_UMh+k6l8)04p@Dd6af?yZqR!VV?i> z%j%i4(_l%z?x!-l_%G&xxSgwHQb5p~Q%Ar&w;-Ivg`S|aYQb3g0_}~KJ^$BPuJl^u zIHKp0G}tcrwUt9J6-8CYyirD8fnUP=&$u+bXt>?CP15nC_RgUl*rcV*bs;Irbn#&@ zT9nqrjvp;pPjRF7`9nl`4^P3%dPn%~57*>x7<%!L9qJwt9`vq8)EQ59$CS(so%5L} zxl4zMiAMDo5q0GWC=GLj(R2D4_bOQ=Fd03+eW!of@xaF0SMWm}$E?V{XsObsCvmW+ z;jBb1eS>~l>ga}-iK?ozo~^B~k+rO>qh~_clk!8Z&qkfBEcta4)izr0IaN=RmAV&i zvd|oKQj%{JLwMQjN0An9%-r5@Z-jRiUnRONW{lPIkp>u0Q@dO_Vglr3}^5pWhmHU?#_o@Kk)c1Z`KJ&O@~*0LRG zNnFxdr+u@~`Ae&>mnDZa6UktG75j|GkK&?{XzNwE=avWG;4VxCZCzb4$Km^_4ZjW)5&Xd)0XaSFev6)z*s1E_zI`R< z*7~D1^{ERu#~{rKPXk5gqfkGust1v-tB>TL`ylw_R6kA9U%;KMY6S%0JXaLG{SsO$axK zv4hi|DH#P#Ji#q%djrXp>+YcjX8udiSP8%NPt4B;?jtlW*Q_;Hj!Ay@=4yg_*Fcb& z^Oec@&avO=?5VtGzsRga*YCwY{wUA?g*~H^D1k>~XP~F-{WZFIwHObT=k5*y6jkMq z)ZdP5-H^~Xtm`WM0Gq1((ea#AD6aguvkaM)pN>o6?wi1Kk@YUxG?Y7sqNm7sGORap zx-rR1x2!KNRQUNv_Ex=($0N6T;V;ozCLDYj6_r5S zV^@SxY=wiK;W_fKb8cUrY#*sj)x8@CdzQ-#v7cVX~{ndJ3VsZFbGezy134SC|m)iZhi? zHS*Y+V^-oO)V3lIbk+3)^?kYVt@Bw83rjGGwUW1&QFa)f`z;c^KFzKFR=@s%Pmxh5 z9&Bwx>XG8yU%6*W>iC`uOrfoSy&c_i@>01v3AvL)jbSyeIlMCw^I#sfJg8L-6MSUX z6;a2Yqsuuy`_e#9%Us9k`|Q}%^mKnZ6c0>eE=!yc&*Xl>sX;~4ZFQ46GCa5?p@QNr zOukdK(9f@S+xLZenyit@e&4TJ8XPHzsfsY~GJqr;z3`Q{e%v|B0kVv4HJ68O1eS@^7LEQQ>m7XYltI!(g6* zA5VKQP7_qY-u1V<{^j$0$aW!EP9D&eV%(LIbd{{8*sT1Df$&om?*gQe`_G#O4@A>I zh^1PvKw49njPBu9U;=e;61o^nqs&TgMB&p;-C@FPtEGgyc-*R-6>nu7nUV|ZFVY=Kjs%(_kfa8&4nDZswC=U1oVs@5; z&LcnWT7(Zv=G{o2=P7_7o)Ky~AQtz9Jwj#+Ht2mxjg_{_cG@vH<_$-=Z{>H zXU`qEz+2j~W`uu`k2|J=d$%WAb5-4nGf|qpHC{kWJvOSJSH{zni-f&rTYsrRx--eS z&RbN(vzS~-dI*oc?aZ2Olz5h5oLiHsJ@p)jJgmOswc(^L8!E*~N%fQaczxc2MT z)I3a9dQ#psZ(++inj{Yh1{g^e&bFhRw%yhTUH5Oi?=%}OcUurxVbbju5P9qIP0GA&`xk-TvS(YGNAbfB6cAbJ_SM(;#7qm16WFc{??$@l&4z2|x6d4@mcoU`}ZYp?ab?^?UeM9v?N zlY(DO3P3t6w>C9Oz~~#WBLVZ)%uKy0O$(S0I@*8d<-TiJ%g>Z41xC5IhFXLBAk4F} zuzHZJF@KtoA$=Cm#VWRh90s-OuyOuwQ9gv6`S9T3s8sTTt+TvNG}rwAhWnt(t-ybt zufA(GXW-(ADkZ9?#wBD`Et_VmsloyUj90xC;a+l79RI>-YZ1wdc(AalrUE(Wr*1c| zFZg+!cv?rB5=hPS^YhvJC@D9CSWp)OM4rQCS{&d=77jTwvJF?CSYuVW>8-O| z!;uZgJuyiJsvy3fYj*s59vOy!(!$>7@+5HsIDSOaT)xL+smKL5{MFCU4ztswBGm95 zZEOwYHr<~G!u&c;by3l{qN-$1WDoNN5N)Li80nH1Z~~xDh73*pWih6}(gL#*i7`vo zvE^F{MKDvl^jFX1uipCl^)ADk7#l&e5Q_R8D{Uaq9o9pOo<=}L5lf(nJ15haLS7|= zZCYX(-eo)BBxq4?dnj7yCSqb@qCvRqW({54zB$_ytDETZotp5F5cZkh>8|P4KCAuf#R zvDt0xWoG;)cbr4^HBd&Pi5H3-m?IH}ecN}qgLR&|lWVi}yykP$#bBVs0gQO$9!v6#9*0g|)?hdIE_53k zWdWfc24Z|J$PIgm8EljGXDyDdwaW_7C0|HvGoffZ`1?g z6yGawnaX#y?_Ws~Wl=orA2fnvHO%9+dD%69{G{+EB~eM*u_&zI*_xIH!o8xH5uqHD zgQ}{y;Bu!BF@yaBk3G-xVH``%A}b54M+X%XZkgUeK+W-6jwlwYm!|81K*FK)Sja+Q zA=0SK^cFWJV+@Sc8QQYK5Dtf1S$E+|Ab=FyPoQY|wL(!Q6> z%i;Sa&me#xZmg`)3ZG2N{NB#})p(L{)t^OR)i@rrYioZBA~@e0z20uxqxjs;1G$>@P%Zy-x=XjJEDGRhw2MKHlyk!a3_8@u$ZrHjevL zN%vE5D(D!5i*wK?amvFB#DTpLGWaK1J}m+pL)7fn)5(yn+MIM7CqsQQ=2b8uCJShK zh=H}W8N(E*g^G#>ZKSL?=~Kao`1YWb(dCdC2_<;BxoswX#$b3e*wTE(P2WRDN6!g- zvk+0NR{1m^+}ZO*MmgQIF4+nadmQ#2&6u1 z*jl{0H-llK8p8T4W)3Uj)oTDdiVzPkKI`iYr6J`|N_ruttUMM-m`$Dnt(rdEXdRj? z)SJAdX*#I9+`ZVs1H1~wj-uiKuK2YvB3PYWqmYdg$i>*F6=t1b;p#aq$yKxRLl;}q zT|-xfyIru~vVdnAbxt^+l5`;@CpW7Ay?p6i_TeD2L!O)qe6q5bz17>>6-vVgphx$Y zI(M7*3IQ0(tl>?BnCqIDfp}(dlXsiPjQ3^{=<+F030+a5-FOmxmUdH)dlsyox@KKJ zpfPRJxWcbvn|N^c(EMsxFc;XsP@dCzcdY(s+63?U-3T1%JRSxnKm^YDvo_?6xHn&Q z9jk_2`i$f}=EKPwY`I=0Z{p|f=4TgV!^WtxYNx=yrd*gy8|m`GN5l3SPo%ZWMNeZ3 zcI>AtT{+rqK9}bmQE%nz)8A7?EbAY3B8LtHK^Yc5^#ZH{B+futP z5DYo$4K8(t*Ukrs*Ie{k*3X&nBwkqJjJsXs;@Z}ng)?7WS_#d*{R(SzPV;W7Y@W5~ z>#wR6*)&Vvl@c`+?lp(Im@LWc^7xYK z6jr3DV|H&O=oj7ehnyf!qbeeK0vJ|_AKzJ8 zlD^y*vlO@a)>Ym}ArfMmkW8U^8|#8?INply8NEpEsJ@<;Bw0Y2>4v>aSw)2@F)f2_ zu&Voc9!hlam+x$x+Y!0g;d*mD;w)h}>&kOhog#C|+GP&9L8_?}7M&$-{|mqruP-Kr z)7;O`#Pz)pn&=c#5k7!iX+zI84SkV$`SRt-`YbPbm)m3!D3qEPX`P5UXuyR!Bf5^n zb{0t$avPx+TY1cB-U}VM*W6CiMZPDr$<8CkpxKGajWf;W)3W;egtKmYzT%C`Aie&? zY81w>**E-r<1Qr4WA&ppMj~1+Z_68cCJ$6{&dhu}x*=S!x=kW)+5=)OGkqHWVx`P- zAQ{ivZ{Yk5CP@(!M1pu{&b*4ST7j@llUeSVv8zRIe4C1RWiH*{JM^(ic)xPfkk-h^ zMk5D=iJ@O1#{w<%P{n;eaY(wfn3Xtz3)1rp1m9lcM&x?3f`bNZPZ;tCKC7p*u=8&3 zQ)VZB+L&+PX1``#T-Stp!4~_IDyzVQNwE`h?9`)W3BemVIh}m$n%-j9Sp+EWrM|C6 z1-+A%6%{NRY!QbrX(|tMlw&b18d?q8d_VQg+|Ys4uQtB&seeZn~PGHQ093 zM|)$>4x~fap6m_Bnv(lVUHXTkM{w`& zmwbZ^1j4SJHp2Cs*Ow?u9BS`m^%T%6dHKGN5dHbhrXZ=s&zBG16ZOfvV@Q$T2SKUDEB$y_r z!AVcD%Nq2>8r+RGwnPu6l$%07R~r#jO_uH0kZ$;?r~4Z>v0P^;rI5XX!~xv|ceB3J zb!b2FP_#Z(g6ocyHT-gf?dZ+lba;Lt4U+b1gBWnQ??-jb#9g8j z5gq4%ojl=p44k&_G1GK{Mu6r#yL^V4x&@r>+$0WIShWuU#O&q^Hq~nhJ&OZ&RSdsb z?mQeE>&rwLL^W1i71U?sWa->{#cB|BB(J)a?qB~xeu^BY;4Btyealj18%H79=^b$t z&v8=^NI4*=kAs6=Lc9FPpmdb(1U$vsHP9-R>F1-pIJ|SYznX6E@}ZfDKAZ$7KI%oq z+S-^KcjUMVOvkJ~6n9KO0pVck8nB&>PikmtYK*C=yQf0FMIJFXBnGz2mKK@>Nzv=S zOW@!LCnrg`;}ZN){yN+)>*^uW&I5L!K;26CvolR`%I_8y9p%F(B&4a97Vv3km(S0( zfcQc^%?XeUc}Pb|!^L74^81e;pT+`5ICHHQm~e1B4_3Z8JU>0daS-3|4gkWw;QG@O z589beN7R%abT9<1a1F?wkUQOGe@a}xojC)rj;KnKI zQOcQVcOHw|Sdp_Uqnwys><+$}SxyvhT{Vded2DX1RRf5Dd09h4IY8u;mKu7ER~?!C zI}?8b3qxPoxQU+KbW>Hcu-DYxkkENHxx$<$Q6H!?`1>_aEI)*(Cn9pv&$d2AR!~W? zV!X8M5P@)_dvFrDDsz(8y>DfmWm*(^du+{_dl45|fJ!U2GKrNqD+(ePCeE<)Fo za#W$PaE$spAI#7KExRL|{P3gZ8?;AYZ$Euzd*0a2Bss*`Bzr|H1rR4p(HX=rnTB!l)7vt6u$DTQ_#&~-irvZMXzInW`(HUijbZ#*g z+DY+f;o{datX1`P7!~}YiG0kgPcSmr#V5Gl>ZvqaNrPUk0BdCP9RB2t z=f?6sQ{nvK2(ezJnp_SLJ@Kow91c5&rE~(=H~O*8Ex~vC1O83Th)z))<#NA6r*%4f z_eb}2JGY+%6`fKa)4A;0R?+iB(c)V>TbMaDXQe~3BrpM+`Q6?k6|(@~h!bb2X}0<* zm4L+NX)ex6jwEpqUK#&4_;qZhQmzV~lamwQH~{M&SMmXy{z^tOxMT4^>U~2x9rz_c z5CuKj<-%GDwg3aW7lGOmHM?WVUMFYbLkPw72CkS8_*P2@O13;-Q5k0rPw(dXM{yBI z<>gCF1rl~%(&JnAD{OoC+%b3|Pq&@_DuNW_XWZ4e-8UGl6$;YMd#9B1YLZE2owTb$ zp)=1KUy@L`w+z9GbIv<$Q%E@-x5{*)EH$>b6WCik1WQ(#4riF@9VZI?$wfd@_KNZg znAQA1ww=Koh3ZdM%6_uBmCwd*S-=huugGbnm9F#EDS&nPfmw@|f_zL5(*I&z*uxSQ=?niSV_H~SQuOlD1Ws$E*a=C`xnhJ#) ztRD%#((&+E9$>3!F%N2O^-=OhE{lm|HyREvX0KguYuYwrny!1`VcW@x=xGR7^~y>8 z?$*G)n`yc;8x?qha#_U#p_&LG{tjNrsji|kT(<30Iu)jQ^#bl=-C$l9=+O?Ezk^Fd z@Z}$~^~4VUlZXia_FYlt-!Q2E2dX%vry%(8&}>*1{NX8mN3V+n=B(G|wZo6Jgc!4E zul{10DNUV@2c6D*WO1Lca;*4qv_g@rCyH-s_0yUW*H36d^zIQn zS7A;TJ_6Na?>>~Qf*nzTIV+^CWTdWlo7_~o+&&|!vXzA#v>Z$4>#(vS! zud4KRU6@lVw-fb9NxYYMUl!bTNkF(P>+JyA7vWOF0i6>uNU#Cq-RGICd^Q!Gddq?j z1dsWxKD?3ll9U7rg8_W%VqdiS>Y%gvL}6~)d5be3-tS~Le=`XnSf^kI4ZkjusQ2CWWG>i0_6*=a>BOn)8zOo5*5Zab70i`v>SlL4kW<@h%uIV3@l z)O~s>_yp?Kw~GYRr(^;ulh z%6t(g`+{A(RuJW=HFP90w3K>(=yi+|M#v*!`{C0kjtvY;dPG>ia@Eu{YC|Yut38z8 z;w;o=WaJHn7Z(*-S2q$M=PeGjtPaVDs}b&fMb%06^P1>c0JvyTm6rY*50n`IXqCfB zr_9lAWtXGN!6kwC=E{&59$r|1MoG#G??N!g^XEvLP5z@*uI&|YZ@is(h@+6#S|h;~ zfP?tNwfJI-+M}$iQO7^6U1qD@2kNYLJ~;e=_FQQd)QHZH z==BE-an9VMLsJvaYCL=fPDJ%HiTl&^M3rj(!TL<|PF-*3x%uqDwvZT}*M=)u6o44j z!B>OT3k*DtsOjs}wwA&L5A*xDSOEqkRrFjZfYYG%+-36OW7bL2XvNNK2cKmhlPz~y zyiA4tandUn#>}GX5Rd_zUvwQ#E=)Hsy zeIg4R$IK6WAO${=BoO>1x^K$kwwnka5?hL?o=ZGx1wg*DN|3nTz8e=R{J%hg;4eZU z9yQm~HIkM4%I0T(Z}lylV3zuP*0XP{#Hv~cb-YkGeeW*|-$+w~(Gw@|wfI6H-&E&w z2*B|kYDWEpa+oVFkui0lIEqE5fsT!L;67zPexVBKt5zQN2-?#Kaplb}AYL&J{eUYP zy{>x13Lts$O4%wqPO&TFq$^>^l|`Hb8;;tn9cN~qB!ooS6+onY_v_uS9c89GWXcJe zirB9bKN6N`#y$i$yo`dZh7=JiGluFge#)g7yoHq>(ep`!fJTI+{&Gz(Z^u#S@@HFw z_wSwyncZfS<-n2j%L@mk8-I9(-lUw}W0Q2ep1a@Wz2|2F7e;a`HLlY{!l<%43yAYV6n4DS%ryqptuG z8e=$!LwjsEx7zoov!8uh!kNcSpNrDkR>ZVMLIZx-7JJ2X%B7s+N~mJP@fPif5xf3% z(o9Cr_mRcDjoRRQWq$f5245=Ae+U?JfuF^<_6`%N#Z`@$^&rC}J-9-+gr;v#wsIJq z@<{)qeb_iGG0*e1U3oi#TO|$FRy$zSVa0!I+@{H4{xjfTva;cNc~keToHZPdQiY?k z874kd6V)WRuLj3tppYh6(Mu{ zse6NWR(TFo@@V2E%;}#F)in-W{(=+CP5s5Lq$}MR+m^ixjT4_X! zZ<`MvQ^9WHkXJN!{_0dCUY$)98eF~;fB8m-yQfEjb&E~}aSCJIKh6&f(xf01{?WTr z!jhr8OTCD=9u`T~;n_;>Q#ieg9lW0Z1%Lz67?*(~zeo@{L)wRM2>K2~{QK#HD* z7_K2i26U8uh8yA}LMYGJkE1Llg`I3SN_^0uR#F0=S7A7i{l{f)E?KGN6tH=;nufHT zH8~j>fTFk`CsiUgp;NyC_ZvJ{@;z&BHC->r#Or#GS8D2$RakM`wQl65p2q9!ZJQH3 z^GX*Ee>{v)vNufzT)g<%upmlwH$m)|CEhU}9wg;@w0;k|-g-26j=aJ+zPFaOtn5=7 z1xPle8ze;^tbUocc8#g_pgA?Y^7-*-3Rfm z#WsWeV#Aqn0Z#XzHPck$DSJnuk1_I&h63@y$j9BY31eIMGK%QVH1BS(sB0Q2CjG~P zpg?t$3usNRENk4&3#AG|dI;y$ME_^`X)Ug8oUnx6-lWhtPG)8OMt8lc^R&7h{@q2N zuW7bOlm1QC#4sB^i>gq=ayzj79MqWTyX_RET^$BXhs3XT{qb3c6n|wb z98c-J@@4N0Ga;XP>eY%4caz7aJedeqe^hIgYH}E&L76>HZuYgv1W~+N7vRe_8_crE ziC_2dqAR1EQll6Db=)k_#Gn~r@rzB1lOu;3pF=jqIpkvr3N@24@2qL>^_EhrkT5+)qw`rp9!*09Q74B$BQ6t9(2z+5mc#Qs}7v?p^8D;OI=;UEJpG zl4@Am#p0o6DpW*3Tr%LH;2IA628XJHyXjds)}LmDc%LCDZ6PjxoJB>Ad*4xAwL^uX zdly@2LQhgOOTd^h-l6NYvv{$@>h!AO;t-lQVcSIqEhit-W>5HNe2rH8GMQHVXa;)Z{x@y^cemB~l(zeEbYqaN%TAohmN;JV zisx%bvDa1^Y0f~e5$DIlfuCRetWC8@`4k=IJ)OU$Q*$Fr@~8pHWE*aDZqETI09leH z=fd{bp`x>DNon_WT)54=luCW3)4ZO!v4*xso};9mwU?f?q8ZrB8fZkxuNjZgoSjJ{ zTNTeX27*Ud35oJjfmDtc9aClwk6^q?0r9)i`h3K0rngfOsW-zcOdev>6TtntfNo%BEf9m{$usaif*e5Ze{;)F(^MooAKnMe+RG?f&tg{>s1$Y4ZRc|you7gFRLN_(Ol%5X9IgB9;>z2Czk}tE2Oc?VwW?~%HlFockkX6 zR-Cp0sL6pT>v%8o9k5UXqsa;o#T=y-U!7-kIc|Ck#{W6qVOi{ts1yt95VyI#%C_rw z$mEmQu`nh638QlL@{VKBG|`L%_ogAAeV-v_qwoEIP`53xH(nA=5Sg;qcT^w($F^}1 z8A}3-wz~@U;hW>s!5<;r<0;FprlW+zzE}Lw#30AC)SHT{>dI^L${LGeeW$h?&J+Ry z@4;2%fc^4@ElCIBZx(7^;;;PTJqTTb)U{(>PV>bI=EbP4*QsyW4W(`r+ueBj&?9P1 z*EyHH#`5u_LQ#lm1+bRg=2FrMN-#&&;iu;Fp42aYoQ94zxePc#=jQ##`6_pfH})55 z-97_@$IgY3_TTi}!K>EAcht8$8>e6{IDaZR@{5mda3K7xgGX_h0FY zhA9BCvR8YV>7}vFgm4 zayt#_wfb?v7mNC!i7#a5v9HO{QH6tv9r#h90_aE&YM9kD^(rk8i(ehq`e8>Cz1bm~ zmIbOiJ8~ZfDMR2r#^l*f62s{d&$6GHbj62K8;DrBW|juVo^TGrY`shfxn?Ol^kn@+ z(C&8{z2BO?qPflcAOZ{PJZW++kYr*G;C4*9LI>rBc(Ym^to3H&L*kcb&%ou5XR6BL zYgNhInD0OmV*RP@@bH0)9Z(ZO70@`JPm&wNH2nWJfbh+!r`!`sRr=V=zc2$9)@zZ zY;c*ehFqD-swExzd?@MURr&E(?V_pcp;i*Bb##}xHJVDW^9_iQB_ZLq)NQ_{kK78|9n2Zy2X>l% z4{X>@SheZ`#oAr0UuzA320=|I^Js_Ha%j$lGNQwLyDDV*a0Zua%_po9=VE1|ex}1n zG9cNx_dey!CXo9%lk4fYDGf&~T`VN#)`kEL0FrqQz?pV#JQ49OWGLd^X~-!<3jeQofhfy2gL+5DQC`n@otJQD}-9X06L-P*3- zt*y7KS5Vh(08KqS6S3BKxr?#s1Ea)i)6>(pissxQ;q?O6n7p75iW^iJv|Y8cW7e}B zmL<)#kjqdC(fkOm#5Daw%4)NzUr+0I%2iX9Zia>q{a0M{`Cg=^JuQBr%a<9J<#-SB z2d3I47_*g{*s$_~m?PcwPgOK#(#6eS%-qNF>2LU^`q@*D!^1ul73B%-gM_b4iUf_N z08xaAoq5s3o~_1v9QcW5)h?tNXS!$th%8?esIjT*fe%)ElvkmrCu?b*rS=DFig?Fg z$dugFspBi3Q;C?a|KNUR!W0uqqbXAOGLGX#?d(3Ngn%n$H+Bge*zQp2DUk|nW1o{3 zjzJ9LRRrhfn$-yc8S!2>wFA4xs;Wl->lW3VyIv){=RhtmA3zJ;uCALi1;W!ljlzdy zxVX6ZSDm*SsXD9i#g_qJB_uh#_Y9zv0I?B1r4ZucO9!3K2wGU~|F;a?f?nN06dHJMj?J-kW-CYm>e|I$sBIyC-iv{D9*Jshkiv5qyfjQ6blG>5U}x^PuOB*hMd;n8Ov_Mx_cIx#_JagUx1JrT#I`)#gAHlh2fk1>&q zRr>}G;4UZ|0BK;T2oix3HrlMxLD#g&L%lOp77Xr5FX!l7#ZBh2#LA)2^Ww8{Jvs_P zza#I|&u!jV9n||2NLxIuuf5zw{703pb^-BV;0J(4gEzZe0Oe`?UXv;1_Ktui2dEo* z-f3J1smENB#y{kum`LFRdL}}TLvWSFkK1p84{f33z>~yUnIY#S1*Ynx@~_h>8v0TH zZUc7z7Gq^{@!jv-nCoBDHgv;J*(37iLzPo*QMC)hi7x<&_uI3DU+v4VP=N5)3p|Gj zO9|BPny#)JGgp~!esJ7vC!#(8@#1`gPiR+Hyaaf}%2W7RTEq1!`O%t2T#=294LyC4 zQ`6SKrL!#s9Yn!>#g**o+q>lPFZ6xqn&||-0ApoVe6^&wYYZ64Z1t=FfCdrN37MR{ zm7#j_Hpm+g`>%S7aG{ik8woBLQch;#9K2uDZz+;->YvYqTs!C#*B)w0ViWAP%*p%X ziSBLh)pI(Cow6(~-4@L;=mhKQZ#)MC8ScxS z6hNPsC4_f<{ZUluG@BHQE0%P$G2_ylAnr1ozXE6^NaFBtY6QOpPU8C3L{7fxzxNW0 z+8o;*jSimX0nF(H>2+tL72rw(JPH5;X%V&8 zl$~z4#N!@-PjNWZe9hT5>2Vf2>0B11K?$lq_fD3N=Nx);h)%7=yxG}ZOuJY|vO^nN zKF%MuH>VAJI6HFEG;=Kh1*&Xfay=)lS=mbx&>OAENjICt&sVR{QprX3f8GHEH9r|N zX;ZEfb6jAfoh1bJ515$f$&ON3A8a=l@~?wsJsrvcb>tYTf3-x!`yu@J6^8!<&$mh~ zDBPfC+J#YOre`c~7E#GjKezr+8LrZlD>NcmQ=8XOc{K#sHmg7AMDDFgxoT}PIt6YsqjTG3bKXlHcgeS!s)Hr64|2?!%R4)jBDXj~tD zmf_h<7?Xo!PXk=tPBdD7&^6idf}3(?Kluo%p{lcnzX8L6UM6;3ivfA=?shd@V#Dt> za-^~(L{A9abT^m=;o2|-&rAKjYHBN6sp5)vrbQ$o9) zz=G;l(j)~OwIebnw-zx{H+8j5Zt@OJMZ)w6}kN)>KWq}g{z+08la zN$xHJ{&=@;$3KX;)1|Bjs91k~hPZ3nco8a`e{yoNURHuORLygg$=Y`TaPlI}R6(H1 z6LebtGkmnFera_}NpM4;x~wke1Tc>7%0HRlLq=nPn<|r6C+oFi!=tme6ogKg_15ab z)6fc1{T%%YulpIdJ#sD~vQh|UPhrPXTJ{IQ^MY@OP4z~Aa6jOsr(iJ3p`UN9HHx=OZ`ehUBB~aTlzk-rQP$NJg|7+t2#?RN>CLd$8=My*31v z;nCB!Xl-4!u{}xmmC9;ww=;EM+YOo)uv(8qU7w8fd7niCdZw#N(42mw`9S_SpxNCF zAfV*87z^B}-|_tE?J)!h>B3z~fnL^I0pu5%T;gnFWtpx3s1Fp9SDgbT`7|Dj8>7iQ zeR6qlCGnL^1Ko)Z4eOnq+!UuP69N>k(Zy7{-R~b!E-3HO3uSV#lVx6I(W47Mi#57Y z;bsBsemYj%MnGDfcI1lyG# zl)`QyL0#0CB2nRj!mH5`E-v-Pknj()64alvN!X3$s&k*fC@t7} zE%Wp z!_BH&D#ie_SKPcB{7}+aLZanb_&o618S0(nns+4*gL;(Ub`wBPZA4)T>&IWN119hHR(wQmxu6U?+FC^m5GL>Y~*V z$zJl~M{zNQsQcLdx8p%S(40HE0{(p6-N65;q<>AwvuCqOH}jRI>v;wU8k|?grReQe zH<;7h&U>WP^i|LTW_yn=Rp{H20goD2!z_m6^ zLgBW%5O66=Pd9829MOF|#SkIpHdU>x+h}e*#BXbD-MC#16}4})Q-bu$LSq0e9bxrzhAS}aq-o&p<* zxmLz2D2cyl$f=D8Dx(J|3QiejY-&sdT9R0|qh1&wzVqQo3{Y(JS&hVdl}$n8tT!F@ z!$u`v;s~uvuogLSq#9<63>6d=>7RGx9<4RO=aA4Tpy{AoS_EIJ--rcg>4g9!{kI}!~pS8a>WP2PMzz;;_} zL=y-sPeW^u2fb@MoMIB;&qb!FQVf<;y{_ql>mCuf=2nG31XF zF-)sG4%Oj~f&LXnjcqpNSYFP*V<{?h4d?^m1a>SpGHeAHoLFn$mXp`%ZyD{wEJ3 z*B|~|RRmUf+qEZsRv8~WZ4DmG>;6s zPqXedps%i}-DUuFpHnvoUts-biPD_$$oYhB>Hg78d|JkwdbS>YM#Hr4a5j&~xvc!q$pE)YP3?QK>Fc1Z2FIfP@0$|DdwHC)CE9_TC zGx8-(R~m2Z_L4fXaTI1z)+WWoJ`O0#%D*@b6snWBAh z@XDWSUqp#Qn4e$NOC5g~jV;tJ@dY1~Fa4rgI!xUB%p3J@-)@@g1bynSxzg0Cze zn2s9Hm`~@5iBB4uj3;w0gJgD7DkpavX|KD3yj@N0?A})-Gr=SaeiZr;Kf#LhWsL3t zntnK4)Yvh|Jmlh}PE}x>hyzkRohoNNM6Y^5vu?#dxj!HZi6S3E-V)1%aZn2yxBq(T zYiY5?#>U>qo=*lC+fH5ifOB%c2v8sbgifHB{Kf3-C545XFoj@K9snjcJ>56TZj%pw z5HeAyS8Y7Lsi-|GWbj8``zzvac#0KSeeXWb@Zw^{xswk=FYMEP&t3M1kb9kp#_-D@ zw`I&WfZD1SAvsnPTP6*FkjFc&bQ+Hxk6qy$Xo~$pab;e*@%+JoyO9N6^J&u2l2(BJwUf052}}QFt@ob%)npV{x`$lW)LEG zjk{OHZb`LQI|fG{R+>Lmc@u_jVNGf0R}{zeM$^PxdiyjLz;Gz;R%fl$WPNjBk!8;Y zvvbAT*jg5qU$ixSUS^b0l)JH>o$cs*0@O6WqU<;`fTvLUyetOy)4fuH;Xh^PhXHGyQ!- zj$0t+b;b*f`tiugF^4y?>RLFtD@p%LIQ6@Nr~(loS(O zmg&egJ2#@Ds`nm9x3mmU6G(dfdD~9uTjv)ekKX30Hcri%9Lx+s{+V5zx!tv^@ON+i zb6ZD7f93s~QijH^vTx?-F!c#kYMJnEr^c)SF->!_j8A+IURLEdc%WAbL(5QWF>6wC z17w^U>M$RvA?HS~7

3#K#v)TFIxLcT)8e)xQt&y=r(V)sPyGG$)FBS#}zq;CR&Z zfZw(4+d6u;UaJ$mdw=h=5@s6(TMQGRN)4Ra#%dA%V{tbR^a$&QWdA%sW#HPUujvJ{ zF%7rbRn@d|vnDj6oZa>l0%SHpf#vsqk$B6}Cx{u}H6uL+v1@*2Y6iH$ksWKrf$>-~ zK6TQ8uw%fwq%vcG5nt~8`ZU#5Us?WLsVnQ@$g0DWD<>aH&UMoy!YI1x|IYKn>c;w` zD|!WHO}KA;`*&Ai?5EuaQT9)SNl@XQ#GHKtO{aw{i_Z8L1IVKh;H{l1EBRv0jw{DE z9Fg1N+OA}ub!%Rx{pT6D9cs({Y_Q77k_n!|~_85(ReYSDjF1V~#`rJe*xx^sv`iuAXkieY(y?zni8v?$) zy7Fmuze7*R-_uXQ6Zn`Kxivo(x+)4$%6zd0W+e^jc&9?SOsKG&t=hQxG^KNv)XFur zhF1Q+U%~o(_g}fKK0RZ*@o3T|KN%)wuVw91P!HL36}Hln7uo2Sr7!&W5I~pt&meC% zSA%1|<}owlias@#lzBX4Oa4XHy+0K9&2RqqRCBk%{|LY(JcDY1^Hz^UF{IUbTk45m z=IE~iaJuGwm5o%?lds+Kcgxmtv_!}L@0fkI`L`?;--|=(l_NHZKwJlb3x3jol_{ZS zNELfXec349+1b#35F|45=>{SDd)3|lqrSqD z`rP^r!llkwjsTZBn;ZBIx>_?>IIeLC^L7xwO*W5Ip7aY`b89?*9O+6id28^$!=-@n z1^ri=yrI)GfvvdMZad-d{83s*?;w3usPj8n9RRnNO!38IIIe07U3(QC{w%ti`|g?J zTUTHu4fUCX_<`)BLv3hIU;W$26L_#!pwEBm(3hXS`Da0KTC_V05xJogx2_tMuHBO? zK*3jiCt>N}pFytf+>n-gL!$mW(myGR{(C3j7`nE6CEpOxmoC&3UY^6svCUnN4rurM&qKLxN###n?=~2 zZR4dvlm6$zUoE>p{?wm>-1k(ZynwR$dFod0CPd=-|KIY;r@T-63da`kI7?Uxe*Y{ zs6n0@E&1mB;7}wP9_A^qtH*u)y)v8`h*_5jMqsT|3g37%G^$^SVx=g*O!!+=0X)!W z{C`L8PQJD8RpRZYCJyS=uaO46(+u=aogI>eYmz(iDyR!rJB)**${(FS=#K7_0IIwr zVj<=^YQgQeVwq9z-TvnZfj7kaEAP{hrDZ31cSmA%Y$?4ZC4!2Z57(v6sbZ?CncI>& zg86CVmxfvrpU733mYCfX$P+8FPZ5&s|Jmv1FZlod%EN?aDM_cET=Kp$?hq$-+_S@S zfsX2qL6xV*geTRp``~D_RWmXDh+M~_ox;6Hu6W;gCG@U6{X(}VM56nD&H?L{%fF-- z%WW>Fxkh8^@7%CGD>1wlZ(ZxsOjD~Z5!%FiQr|258wr*N8Vg)n;f?58@_S3p_k?_4 z^#57fuYWsBUEKA#XZ~uxWGWa*#3Y8X`4IKahF=L{ADs-yCW?0}K2WPZ5a;%}pi5CY z)_p|6wX{U8#3Zynn_}@ZMbg~dyn6MIgSZm+u%)4qaay@VITX}YRxc}lNg2=CKPl*%$NeE12=@Ss|#`RagQvOLpR2oLz zz36mrURwVrKYm=O^?s(!+p2MO^u^T={p>gnCrx#(bMHqQ1@)T~MIJWl@|TS$hd(d% z&);$OFv5X#FmHfg-X{`{t(}y5TCQ(MSibcv*j_;0#gxYN=rB7+!s8CuPPCLq6_JRz zH>vQ`?-NBc$vNTRwW;~%#Te^8$oa?!`zP@qUb~7_!6h2p^Q8alan|opOWxdO>NZsd zo#N5p2*SAB2Djz)yX5}!3lpF+tipR*h0~-2ZO<-bVLmDAzb;7 z`7;aGXWX(@ehu?dLjvq2Y%~fLVwVRQWmz@+4HrL<-I|%$@v&bTA%6XckardP-&ewl zeEer|eYXCIeRsqsTNIw1Kp6cD_I_ymQNK^1B<#LKlx8CMp1d_fi&2!2>19k3)3Y3B zY^g+qniZRR!Wt|4b1DN-d!!%t(whjXUH0GZFWb~g8qWqppfh$&(~mQeyiqD|*evMa z4{!&i=no&C(+Ac+ykGt2U2h&D-S*#2*p!oy*1-{Rr(-Hfx*efV7WaXbUfDk4F7b?s z_`-qf_Z-|7EpQYW2|Odlob9b~zbvX|n1NYOm-}q-Fv_fh=gqBAKEVtNQ}Ek`gJ^Hc zh(Qh#_NTHcIeiF5Kc0RyC*$nGXOvOwQY`%v|GhkbApG5TN(n)YcJFRUd>A1td!)c2 zIiB*BB(51u1W$j*Z$o4^_W^&ylB%bgdOTS$`E6X{-KgTN1X~-FOafkZjIn{;a6(k} zC{sicrFc$`@l@alJtE+?Na6P%-(Or$y=~UZP?3v@$qI;P)5yKhlV}_J-oI?8>fgdT zCPHUUx@R9=5{j>qI3mawDn*j|QR>sHn{e~b#r@Z7VRd`A`Y(U#+`dQhwoZ{ghtY8; zrD$&k^O5K^+V#cH-Sh--8QoJp!7AhB4wE+%`u4;9?3-+F;`H93*jW472hm6~#XWvC zMYjz|adG{R%>Jw`VFD^Ix1-%rYRI$qojLj-MTSbtz@_5s8q5FP9B3H!uWjfp2fl9U zmn}$E9}RC?NfJ~^1HZt1Flj}$kTgIQmGSnG^tX>XC#&y>jgAM9nx%B~5g^*7?d>pM z#JgZpOfarLCOB82FrV5$)O@Ve$V^&a4}JCkXEA?_PjE(4)>*gC|D)1l-ouG4aj^`G z@5lX4yiAIPG-u~JI8}RsGj7GxSsy9Zju=&PS_%WdRhaRz7hKdDb`Q`Uz)bpMWwqk| z8!oKh*ngGpv89Hs0dsUBl=K!1(dni2U`CGl{#K%Vj~=G}r)`b`CN8d)vs)dHg^57s z9UOl9>*v6@g_jg3@MLU$3t_`OI(ivac-}kfFS!4ESbfDzDoAhV4)ccuKGHTDjHlP} zkMgOtt}u%CeEC*~9V<}Jqo4KGv~1a?Z_MVZ`WN%k75d-4cw8!WlfwVG*8hehKbeS3 zKRT^N;#Y=7jKM!{MyZE`wZ*?O`I}iV6)17yGD+A8R(~~Y>Cf;oVYbuSQ0r$j)7QU+ zjc`^_brU^LI5esxF4$tyh$rBp*4NC0kkG0S|A`oOFs{U2gUpVz&mj$L1c~ zqy$`?O;>w4lgiEC>4w<(jGy_u$q%0{U%dF%+Hf)m?>UiE4`(?;Ld^dURbL&}^!J8s z1EPYY(jC$rBb1QtZUtdoM(4;;0@5%#M|XF_;QgTA-}_$g{$X5fZ09-W z+)v#1d5%Ki>(PEQ>YiYtlG??{L>1y2*W0)SvsYEe8aT%>50(n0~nHQKi;#iJ%_d zvis&%`%h9~W4#_v-&u$KtR^|?1jGBG_)Np{8-l8DZi2DPE*`#>9qhsY+wVn{s)HG2 z7$5!Zb9whgv8lFw{<`s~)+r|8Ysj zQ))O~gv(hzV=AihW?Az*S;&@@smP7TtezsSS? z)(~G!v4@bQk-|Q-cXUlY)ValtqUFtlKem3KFt3H|V#iIKUpACmidKes&c zLCMFsURBK26!n8R$%h(nSEat=Xc23>)3MmJhtG zgr9NJg9mGHr`*179=z}3ILjsz??c^y!mHm@o%}3xUBhiW!Ky9wXdp8fmmmI(_rHh; z`~Kg+%CK9Y1YArM2SjTiUObt7zE$PqAhFiV%nLO}Q*R*z&AZ`k`y z`Q_CZf70UeTZ5!W}L6CV*m~Hy@^M4KJ|EEo!;3S-zFkshS@Yl&7k)DL62Wzenb&Jg`2L^m<2Og z_K@6$p_}g0EgX1cf14v#3&nw?j;pOQIUX~Nu9%{b;tFaCuk|h}`+M_A3>PKPzMCIP z;+wpWt@V0LQv$)o;LW_k#e`N&k3rm4*Y@29l`BnfBgVJ7dX9|0{m+?y|BQuwx60~1 zOWfx)CeVFd?Kw)i68~vx@W=FEEiq!4)F;@aNlu|-?`K|Sdo=~@re`6m1PW{!qk*skfY$$5tbGfWVYYx9PH$L>E2*yFwQ~rzgc45r@u>h zJ`f5$3PtC1Jyf|a{6Hz~&uJOxWKKoE%m{xiS+&*()nwqQhHlw^hQ7d1(T`4B8zpUU zDv*ltLBU|5DNmDy$7e=Kw*@_C=iD0`j*=}BFD_>Ld*Ry|!5N~icFUGd9zlbzm|k^CDv0y;yQ~WiIyX>=Hr3S;NBs{GKL4u`Oa#`YiNMs#zngl~ zQn`(ArkM*`(^0+9NsxIN72fM7!$2V6w`85nA?oi+*ek|RRX89|rOGyy_=GG>OIG1K zMY|Aw7G00*(*`(9AXga9YhyfGp=_NH!0#$z9>1yYTFO4Bryss{Y*FQ!tXFMgw>D|p zR|KC2LS?_M*eO~ZIwr{jzES%k2y=}+x2;=T*VOz=oeWUK{v8Tn5k2|#e=D>9QvE;o zB4|D5Mbe<(T}W`1LoYZG10*uPNs+dl?4&-jXKpHOT+ZAXLyKYxQN$&|D_4QoMGqw z)rCx;)fH*JC4OxTDd^C`Gp1DUOd~1YC1Dxqi|7+LATlsik2x9@;~^w6;{_)J~{v`d;UG{|8=>gA=Ao{g-XNJyxQR!YV3n*(@T_6e4)W3 z)36}2P;&wrX&^>#XUveZkAM?K);KP&oOe~CU8f|ns0Aind^0Ex_7qSNSAzoq#9x|-vNy8|$ zxG^c?X=I*fh~=k`I1BV@$#a68t58yk^<{hB8|CED(g|j7tbCrv#JPc@*=K6pN+8J^R7X;JqyKl?tDz&u^%lns=E>Zg! zw`vq`ZHGcw-~>+c#_;AFrfw#t_X@8>i)(76(K);=ZA6i-E-s|}$Enzh^UY_1fkSOR5V~&Q-K_b=5g?hI3I0lbx#Iv1efno1oeo_${|tjmK=ad$`VvNF{Owz*LN?vqAky&sh? zCtF@w`AH zS&+>5eG0)LA>FcaMeo8F4)3R=7=WixvU$u6tUx1q;GK#^DMQMlnWyDlyjAt?Tc-=C!hsMDrcbluD0WUU3 z04hFhqQxjf9?6rcpvD2C%g)1#ph?KO*Vmgk5_|~ZGPsy+?UWj}A)&flsFeU;)^^*GH>bV>Z+KfudDtj#6KCMNzH5 z2$|vT3)i*d@Zp5-=q!J*jC7g~0CS`oocMVXQs}ws_(yYwlp8Z!>btd`K=eaY{1Z1h zLI7EWr9Op!sb5U&$^&%l2g?ks%!Kw)01)x@CP7;31x|H$Jk>lWm#2E@^oC1-zG6yI`|>mhlG|TBbBZ$Hi(UTi8E_16-06cR6bI;X zx0Q2Qzg3*zI=mnLeb=&^D{T_k0sQ+@v_H(=9y<>>zk6DP6e zf&2Q}8SWH9Uq#B)oOfx1Wf%jZb=eklBHvRk=*Z^1)G>w;4CQ6N*OUb3$th6hNp1>b z=2@uHD?}wity0y^1r> zM$f6szTZqdC1=R?|J6gM?!7P-rj*ObhsFptYuv9t`01MJeNqyvL6j1j6IPkBg-*jJ zbS3&BlZjb~$<$F3vp)uZ<)}Exd-!J>gdxpkvw{>gFX~fejQTc?M51(PgghH&Rj8%h z8fGV!TwGm!oetGqU8`xUwRtOl7$1%8gmLpAS>sJJ_v>>V7UFCTKlBvZe+P_0ZedAQ zexv({L2`&eDDKiL#MZF%xT<7|b^vPNhUlG~C%G6Q zk#aRRSH3g@1dN){p^6*To+rjd^Vj=)Q*lCpcX*Wv)8Obz7w+tJi%UK1isd#zO@K`ZO#$Miaj|1mZ`Pa3Nj-ZiE0IV;uxO7A zwA%yKo7`SWg{AHC${WZjUr%yttaJ`NhM38x32BaJsdn+3bLqJ8#&{frfqa`Rsz*K% ztvzCLF5f|YIJ=+$Lsh2_?xXdWeK1Y*127~(pum4^J2Ke> z_Q4M#9!^a+GA{VyX^Hm=gs-fK{V!w? z4~5`6p8}Srzk;A`PXpTuxP_o!Xxj5=1R&Y#KF| zQ)b;&N^G@aDnDIz??P?@6z2u=_B{8#vVdl1e9z6< z%`G{jee{5inXgU)PdzegvBGJs+&IU zAD{feR3BX+^RI|!n4>v$N>vNB88s&(EbD4&)}h3rb>}_RpH7?!(Ve(?ZWj-3&*ZgT ztK{5n+%~<5HMk}{u$hG7@Cbc3Rv+K)pOk!BGQT|xiV5RJaZ6SfX4OorZ87%0`sQ$X zobc>rDlrhA@u3)q@%!!|omxTE;NV=X_RKcqo&ZNyL7I_;mQ{qFkzGsV(N9E*oTyZF z3J^_g?1aGN979(oH428QM3ro6L<0Pgbuimx?>n%mp-X6D{xOeGu!{HuXdZtniyPk+ zZazExem(d|TKqGqN{aY%wXjpqPENepa0!~SBIDKg6m9fos$)FN7fmg()WaJ}{&udUQOdxS`hvT**br)HR7cG#e7wl3Dy!q8W@n|SNtC|Om25c?h( zxp>v&c@{f9KGuKjwt9A&&jh`_>@xb4x5?~(-fj~zHw{1d<_<|V*LS$ovK~>_D)L$c z1GY)n$$(-5AbB{CnsbNrkOSe_cm4bKyA6S)CXnoWH%X6IFki5)3&4r`TIZ!1*O`dy zd>FQ|%F@r05+m>aLy)Yu2w#||{dm=~OJSn++E3_q_Y0>Pkk4k}@~Mq*DRKUtDv9!6 zTi$!0)fWtnyoJ0eE#zn~iRAenVG_u)!#+^PQ)#}Vd$~lm99|=zjwA( zhVz6KZ+X06bNjF=RI-K%5#jY7Y6Hw!mTB|Gxe>XKzhkp;I@?x99`Ev`1>@`-+I09FU9C{3$>H zQBtCZ0*u{d*d=fp>vLw{T3=;bDb5s(GqeI6t}AqK7b~Z-h36(}$LU*uZ}YHJrhp3O z?}11E$#P`vSDk3A4PP*J1i@dQ@JVeCemsImIEGr2k3YrC+o(aa0)S}s_22Enzq>IZ|a{}U)8Nb$yeWRGtZrFu4#=K@(NV9aJTEKsH+*Q zAYSTWZSOu!mNAx^+gFJ(fkC%3?cCfQvr`nP-R#FTue0w^(fmIm_WAq6t#sV2KLo4I z@kySU*6S}irs4!H-@vfD-$cAI9x|8OP9ZrG-gFFAv?1^dfLcU4s=4vXn+(-(q@j*A zRApmEVhZD*i@Q5Du#2+AWFU0zzZ?xEHV|mx!?vm!&i(bSt2pp`DsRv(>erb_wRB%;7ueF>%Sj)#ZcO3AX?Ur{Zv;u(06mQ#!&P+Zqe&H|q6A)nAIvecZJwm_lxV9U|RaOVspjJh{-k0PJG(4R3cEcoa z4wznrvrm%1#Y|;!R9$!1YllDjS3V+k&?=yK=JvjALLmgUZd3GvI9A-ntRNVsN`m-J z$|24~Apgmxn`CGzL!denOI;hdbEr@rrWZ*ODWJIu_&s zya4aBuyLmBUJmgRXqUi=niX3fuY3T8D8u_0d?SI{_p(Iu(WTq--}0WRB|x7NLG#q} zpE%%jvqu{Fx5`h$Dj-mN4^~!I_*q&k%grH+xC<0@)g*jOetTN7A?Oi`e}Csz9xYoK z(`rWbGPfY*@bYq0oc^uweoQprTKCh@8k5R|B|dWsy+y&yG*uE_o-{AMf>0s!cQms zoKxuz_7x~Eg50MJKXp2zBvHtlL8MwVmA zkBA0NS5jYLw!QumD$Aa(p=}0)fvxKA)ZCqles9(08f(wg436tNZ(LvYn2m2PQxiQ4@s)eMv9huL^hIPwyaStBOuk5AVPGp2Q_%;PQHEC#0wa$c%DU0ew_`=p~X z<3G4ZE?N|AOsQQ)k**E&yd*P-E3cqwVizrO^tbzDanM=b5|Q0T8{ocTN~`*mai!MQ zq-Xa`)5fa+$sQG5GNH>Fu|1lt&A_F*F4U??E>9x5YqWdoB6-2k%S|bP>J4k!pH{=P zHJskX`oNvss-;?fc@fhS>$^6o!DePn4_L(9_L9;MpX?`b&Y0qj*wUg)6Zw6y&u^LK z?2PV$ie`SVrK&cOG`q<|JCN)5s)u!f8tU{aFD7McQY>UyBCYQ#nT-EoJk~2Z2-jzs zHVpxhG#t7|W})hJm4&@D47w1X&O;Cib6gUAkK)=*qs9w$6DWu19z-wP zCz3rYBY)m}x#(>ak6`^=iesyk;GlqWrKwa1a<1pebX24Mhm2Hk7V?lgx#T3)WLe15 zATRHh2A7;hWEN)S0O)`d^W8&G9Oh|MU}Cs!PMeOvbf(BChh%yJF1g6=hGS?i8v%24 z7Y$7m1yx=UzY;_~-JHPBAG#%gy9ZzfadAxr$b9}Z?x_h=ARnSp$UJwUu|>tS4dBuI zBpS!Le$RwFtq0bMY?-vB%tM%Q%uq`3Bu#ot+>aPEQIxA_F2Y*{WI8nCidu^FJ@4?b zi%ecFBK|WlecVc2RFqU@y>;as8h|a~C!ku862(f#@fO$<{<#U~L+CO|)ljV|iO)ks zzx3f7*&f6ewjQtYVLed;zMB(etyfGPibUI?iMy{sE5X1eb86q7sh|AG>!O_m;sXH} zH#W07dX7T*@6{Zo5&kbmdUqX8ohREroSbi7oxID~-c&Ck%CfoVQ~e9Ng9|N#y?#6jM;`S8*r=nK<{&~XgjGD5|G0o@ zFy>Kls^E>9mVC0{NBI?WBcD|8JP`2S6}}xD&nT%h8MCLVScBtZUWsAn%p40jT-QLQ z$ow~x!($tO)?xI^3eG_>O4s$pF0vU+Y{Hc(z!tH#y?nViL|7T8UnahWn*(vzeoOkZPO3x1}hVh_qa zpI-VcFSbsmR3&A^$YWWv7rV6;f_ap%5Y%fdjc!WBI8*;UPbx9ksUJNTff^`xo%2hI zC>Rs=qNN2K|8U%C@_rfQ?Fb3FMKtfrU(c`x2JYuWi0IQ}>_N5O9ZCh`C&z4dDeRRZ zwWPpMHV@ODj9ETRz@DxNG zCI3C~VHQx2XG%M-?Lm{gLvV4lT*SjtJ_;<~8 zlGRk@IF5n5dxLKEu8BI>rk+37fK_)usNq#;>*b0qQw1Z(v4&Q7e3plGn9@JW-m?B1 zefpGUc;P)jCIJhJVD>=?#3Q%C+VRK)tD~X+*aOp1-L1GF8g z^=Pf{%Z^WJ)WF`^+}UsOs%mSZnZ2DULHG7bnQf4duJ`;2&$q#yo6qv`x+SzHU`6B? z128J*0Q0VkD0WCF<(-AL{lpU=7k0kJk8W;Sbd;jfNLJehXAy97VbaP=O87~K<0ayW z!K$d}-f2>T-?bcabkro*j(=UBCJ-x)RvmUWHOsS2^c zuD>Lo2v%=TRs+1#RZ$VZFkYg*%o3k_(f%V5fyJN-RQjDxj&|!}ZDz~8hhuHL8wCVR zJZyco7r0ZM{rmK)$pwbSl;Zud$7rXOMUOHz^EWs1E6y&^&U{^6duD-F4sXTT--`PK z1cERQ*XJ+$KasK9wv$&t0o>XS@Yn_dE<+z&D{yR^j#kt3$%4DfqJVNq)I=GRJ@mQE z9g*8J8wyreh2OOIC ziS9y$LNUoMaWkctk!eANj)-*41OeTH*o1)SM4CK_Q;hzZcP3NWgx-tYUGLmdAdk&7 zyX7Ufsd$Sv5M`{s<9mKUHbv-r5z8IA3^0LwHj^&<^PXr}4X)egL0|Ux@0h}aC8$zC zl1LFEXlTUqbhpW3(70(X%|vr8R`|-$@XQj6w3-}XpD10b{v(^NEa%jeuCMcTU^DV= zK4*uf<3N6I@KLwUX9?i_00yuMn2EPl)fpGL<^*EVmtI=q{pPu839-_(1e}i;wuY+;N}#C8)k4mouY#6oVaxP9g9PAU23X+ zLi_4Yck$bC^BL!;ODFG}7Eh0(rwtd9l&{&!e`a3=j2Z>oP)x~hpGNR9nt{rnGN{Tg zrCzsOQyJBiQU&N2;!Q?U73uZqvg!19b}C9x!NqgAfV@_yByc#viTCwHtb(yj(x#Ah z*Cb9bK8*1(1|tt+z(`iK1d&A|4L|^o$jCAVWzoq{|D>^?p_O42CzeZ>QP}j89_EgO zLoKo_R5w+JvqrcL&Z?`)r<>NMCt0PKJf=cb^DDB}$!~pj{Wl$3)h8i(RAI%>$vMQr z3Ai1tQ zqdrCERY`WBP0w@%<0o08sPU4vq38NKDvgWaFoEkALF(mQE8zhH+^SQ)4%vow^%sE!>KXbDGQq-}HzO-)rT2IUwUUTuCbjqwMHXDk3& z7e_=0-LB)F>h;X|6^-|`)q35QSA}EQi^JKs;9L$s+SO;i%{%E26t>;Nn^R~ zR|CfnKu-C5+^9O&;iK*&1h6URCfo{eS*YJ85d3nIqzOWQVcGWkvChRGwsQ0P5_`Ei zRun_$-$tjVcs*wcleOci!B7kjqYNwyJS6r2HbNuQ=kZO< zv4W0=F)Nxz#xiz@na7}AXw0dB8k@hyS4j&j<$}@A{3qk$WZXcQ=T+~EIv5>o1Uiu! zGKh=xo6xM!Y3BjgP71gV;hY5JjKL9;X2d+KZwr`>$d(+{Hy^uvA zgv)faJb3nXt)E_$II{(2%sZ*xJN9^mOd(8&-^Q{iNlM6Pv6ax!%VOr6=tKtJnb~Cp z+uQEcsl^QeB2TR)bb2RN!)Akz&SqlRpUFFnJ1h?Ti2 z;TYBj(O>R&+XGZG{zC%bUv6UU-rBxMR?O??^PNowNJRM_P+VnhXHYC~cX5>I%Bak? z+p0tX2%{PZW*f~9V`R1`@cCh$!#(HNcY9O%Uk&uPhg^lE8|(fmVVkDAi>@0h!(k95 zvk+1T=&(1Pd858YqiV?o=+t`U3ys?dBPFur6e6P|xrdll5~MeW9Qix)230L1rDgLX zDjf>ZbYV1L;WuJdmlu$=7rS#ycA}Cru$4t#d5D*DTRB_*5k4V9%tqI8HVvi3_~h;k zTIlw~S@l_1%I+zig}b||M2Xdwtmz9=NkD$x4P*m7?LTkMqeI%mUhAlb^Bh7BTeu=P ze?-~%a(!*43F+a4tf6@|%CR$PiY3U_vIxyNEv+@y9&Z(s+O8GH&NZG#f@mcH&jon3 z+;kr^9JAf<&223Ia)D2<{q5Xk5;}(BTcS1br7Ue!WuT(~)uy)68HzyO<-yno|fC&)H}x zVR3NrE23+L1}AX@j!3!fNxG`8ue@Ck1S4G0c*4LErV&!(p7h|oGTqharlT;shO743 zrqQ3|-ZQ<7aq3~+JD__Q&4tkxP)w8%4kfSi&M@C{lQr9M z#O}laZrJrX{g}XuZd5&Z?}qILrA0l;0gD?OtJ)LZ564YgqW=U$1xZBJESCD`^Jh(K zx%vxCj2F$fCDMG*}2db;Ow;cXA2OP`-M>M1O) z1;(bOoc^5RoLMJt+SbEJkbH{+jj?L6CWe({?@yO&6jjdS(-o)_>E#TDvtku+zX5e$ z>h53x7@_5QB29)32#Z@3cG_e#<8%Hs3aUyLR&3??xja95DAQ^U{*#3zFzp&OHWL`S zdNV^o`w)b|tHbazDXYa`_aX;mz_2qtIe8L--*kBxX;+gcC{?<=re}+~Jms4u={)s3 zUHQIw-9w+6D7=SRoQHS`Xf;|iU}hx-O@o7(+_O$g9VPIV+S8;YpXC;9n^`z2|8f$* zs5-{0m`g9fw=5~LeDtNTH(4rji5ZmqT+Z;;qJtb==u-PA<^)Enk+Nsl*jp(r4E(ME z(@*&cNPaRE`n38IQR^msyCj1EXESiN2gz6&rq}IHHdio~vU@ieAEcH7S^>hcD5jlh zeEzRPh`UvN`!6PQd}PL9zr}4dkdyR<-rPhIjDH&=FIAKF_LxNgOPh49bWFatMZNn2 zS0|KGyREAgk08z@Oo>_S)`5SjH$5KWmj4~t!jsI&W4wq%5)Td#f}Jm&LVX+$HFjSDH8*)#G&^2JTxu=xINj<{YOLgF-_ zIC8xDYdtSGbC}S8SNq=FG|d7&7t-a38%dn;w?HEcvKqIm;MSE2GhWGbS#aXDn-Kw) zuz}&dm!6`&6?qrH`I7633Rldha|B<}_pF8P~2@`=*u#+3{je>M#E> z@Aq%rZhzHLE>4#A2uoWp2+Ls`(TK@t($U}7X1?_B{(#!9#pg;QF>web>dXyXW;S-T zks>a4w8RaJa?pF6AW)wj;{;L%u7;KB$bP(LuDF{!BOt^U|NZdr&{WeDIYyIWiFLht zmQ-DjVtr{EYM?h>@$2KwO}`!Lnr~|kIM_20lQh>tEV^bMxr0CyXW!Nc?Yv)`-JUr^#5KW>19+OY4!kG^9FF2(hR!~= zqam<0ZxKj$rLJxO#G=|0GdvHOvZv#dlW9CObwWH$b-wZ=H|Us4vJT7Px1lFl2id-L|aqnW*P8{g4M~L8F2U}aWzP_SvV8N7K^Ebm8nG0 zxMLTVBK4QPzW3_hKf(q1U0Y&CkYr_>eJa4Qu{wxn<-S(Z>N)vDcfO7NpT+6AV90dp z$XR?_uKDzpJw~wLnLY2>w%#j+Gvz7;VTJB6#Ce)go%i7w{40ok$b%^csm50p+}_%xR)q*9^e%HO*u6|94R6v7a+jz3Y;(2CzV(kUk3-CTk77gV?wxZRWlJrF6 z20DYt+C+I1hC?Iv>F@H@?lZTdOjuMVv@-l0)t75ziPl2 zDYb-|`ZzpyWjtm0-5%Wo&cuwr01}e)OpSJO??U&OtB=Th2*k|cijx~v<2;jt&ZoYH zS6cw!t+^jNO{O|4q}l@aO#1@oxn^4pL2m@luwL%)+j9>%i=ge*7V>9DEbMcKRjoUv z0g>k#B4I~)X^XGE>N@p@TFTX8HQP=9ZLP^gM#*#)5EK=r2C^0UFh*&BF#{{s075^l z>0>GjVR)vk?)SvJuYY%5TS`yUj-$w?XDl1!*on->5^??U&IbT_flDz;kBE@}lZT>b zi_O1++Vp?=C-Uv$@U~hCr?aAExShl9(c@jN?5bDwJqeFFFry|vaWNFWL1akbgLgd{ zJgoYKQ?ay&!tl&qY<1uzIe;>-*gKp;<7NH?qs4yfOTS<0GvbV;QU!HCTlW~RJyI(6 zK`Hsp&}Tc{N;oN`VmP5zSNiH^FOs0O2L&}WmRI}7jc1U7jC6U)uGvQk_)Kc(P~~r* zJC6{G7;D=IptK}(xRmxu>(RKK8w*lnZLXmnQEm$s0XEl`M8jH>(TKSm2vKW63G5D!`ejr;6J6pGrV6lSJxhVh_X(AQdRIucoIp?T9J4qTAAetJRccj1AzD8%cA8$8Ub2BQXVhB~cY{gd3jZTlIW@m-M*3$IqPJYIU@7~F1s5S)& zr=5TGvBz|>#A_V7zAivRm8RQ6@p?vhF9_|$4bnukFXIJU-PUZZFfW*= z={OSO&W{aT*_Ti5r9g&@4VqqNm~B$r0Y^nRLBg0o9mFLMK@e)$k4Q*WldnnXPXGT# z{8@ork#6I?njAph8Snfl0ivcb&lDX7O(^HrLizMw^ENfvb;nf^qD7w$mLUQu?_Rtp zSEL8kd!;H%-i}Wzp_-0n!6QDqD)$qEfHQA8!cD^PSzx*IHO*aLi8f@%r!bX~oLTXy zxDIF^O%dz4)>8-R6V$tsU(f&9cw0Q}_o*FY zix}fYW;gcFu$N@jXrrg|%XA!NBoR*eK!HdFfHx${Cr*l=UQ*$&9XR`oJUCc5i*S#W z(aT&=?N?-O44$nAKvDxKFmy8iE$1x~2v2cp*#RgSKpFX@j_{vdSpO4|N03}t&#?ad zWoNZNuV$IEY1e4~xkhP&5u+{fVANvPlv&Ro0F zGtKvw_Elxn>iUA%E*QGr7(po37oKJ9Dx_zw>XNc$cr;~XbUP=^?4PMyT5Pdb>2rRV zHY-BTJoP`jn?3RKEeyPJ)AdkZ695MvS)wlFC?nsi&*`U)H<03`ZV zd{;mwBj~m+Tz>`cwM)I-F`DxN$$@UW;m@lGJyTJ6N;D078SMd$kvK@DqsA+8N2C27 zh0)jdySMMv_5!iUa3pC1prGE=;j*@?8vRnqzYCdrh&5^W{vA4yL?(#Zg^GLg{@88W zL0LIog{BFbW4!)b622Grul2|T+DG){=G37Iq4V)4Oad@$*|OK={7H0-_-jJYMmiZB z7chLD39r&2a>aHvmxhIkG_&Stt!DR+HNm7rvfRLRW9n!#tWPMNrX<`NS5)U;kbxEty^c15HhLS z`gUhCZXdDENlpT~>FG%8-c-|e8E-hHo4&cyYh=ifi+K`=%i3PK#RuQ(?A1`gy`xoX zgMf;WBeHtP(L8WSgsl;!w~O4h$pO-hs%t}J4+AP!_xiYeFqB*q@e zSO4Jux4{#ba9SyNDd#x(E|x{RXs#$PP-`$;ivKeeWF>&LPmwMT6jz|^&(oinJM7L> z`@9kC;FUm~GGy^d@hk(eE2mn~DgQMtSAfAFiPosV7&FTwm@!oz*f)P?-L5qf@knq^ z;Q9+>@^eC4yG@;I{ShBFIdP00U}v2|WuF|hCZ zsDMWiKNO^;8Ljk6bZnLv1gi6CTnu7%hxF#DBSmk{(o9VvceH_k;A*#;t8zO#PW}}a zoHK|t#h&Bx;g`J`K$tI{Snw~Ia!fFFok?O%7z=ug9VRlC%=K|?kYrh+>p1n z*d-V;BT``%GK^8}{8uUXsV|W9iSOC;2 zs{QAwd1!76yqHwb@w(E+Q=Y3~iWr=@=~dnU8U0p0>wW8=MRP+#88h`6CkZu&zMTye zL3V74y;dhpI+W1oS$(~&I<|Z-YeL;KKI#-dM>l=+0=3G_2d>d z5C}U&d*rW3#4+ z?e-a?xU%x#hf0lcX4afHC zo0fWLO0>k%KY}Cczrv}ln{=`mxu8w?Ma9g9!<)fiJR!O^K+^Z|$>g)AntoR$izIrr z?(>rqjE_^;&8|IzdxWc(Q4GAKiCg6x+qp15J}Hv8I{3-Y`Cf5( z5)n&-6lmX!Gn~EMy>Eq5d|}=X2q0jCWUiwzaaUenVKlLqUR6C`!fLGk-^jaw>35pU zA?vx`vKbRe(>qxNm?TFwc`02anRoB1Tp=9ZJ!p+=Df37EH}wCSxlT3z;-CMGVoG@7p=bQHk)wPTOVj0aPNc6EPHD|_{;Ex|)4`6^!cy=|~lEw{|2{zcp9Ai!VQJ z?H%Os_;@RFX{$yd(pE?E_}2JBc2tSIE}E#S7)9FPGG;6eQ6?@-o3i8 zxEiX{V$%<6fN1pqhrkZ#Hbj_wQP!a;5e?8a9WD{x+?_R~O_r67jVBOl6#q0tge0OX ze?#l!(bYrxT%4=bWr`b>P(UI0`pf4A8^J^yJ^omG&;|_>tXT1%hLGxC zN;~kddRf91$BKT|^*0)ZTxnr6`*Yss>FT*NWITzURZ1M*>5XbOQWRHeln^iZ+7fYy zx)qe4Rs40CFrmpup? zCS|jkLM`21wkC@13HiLC@ZUG*)Syk($tL2&*Md)X(L8^yg=7{IJ&`Z&O4Dfu+~wJh zZ}piC_rus2nlNDW?vN*OsIjkC{FG~C$p1v|H%Jz9%K}1EmB$ZC-ZV{xr zTe`d3pu1sVfrplkrBmr#gr%2GiKRpOy^-Jl{UY+gk9hpNg$!FnzprxjjrZ@sB(Q0=(Q`QRB3clWFRGKLnv-FP7dQ{QY`oh!HUQྺ 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 z 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 literal 0 HcmV?d00001 diff --git a/content/blog/cx-1.0.md b/content/blog/cx-1.0.md new file mode 100644 index 00000000..8d82c889 --- /dev/null +++ b/content/blog/cx-1.0.md @@ -0,0 +1,306 @@ +--- +title: "CheerpX 1.0: high performance x86 virtualization in the browser via WebAssembly" +description: | + CheerpX is a WebAssembly-based virtualization engine for x86 binaries. It is built on top of standard Web technologies, and runs fully in the browser, with no need for server side execution of any sort. + + This article will explain the architecture of CheerpX and show detailed examples for possible use cases of this technology. +authors: + - alessandro +pubDate: "December 4 2024" +heroImage: "./cheerpx1.0.png" +tags: + - CheerpX +--- + +CheerpX is a WebAssembly-based virtualization engine for x86 binaries. It is built on top of standard Web technologies, and runs fully in the browser, with no need for server side execution of any sort. + +Today, we are happy to release version 1.0 of CheerpX, the first stable release for this technology, with a simple yet powerful API \[LINK\]. + +Our amazing team has been working on CheerpX for many years, and used it to power a few of our most successful projects, including CheerpX for Flash (link) a solution to run Flash applications in-browser, and most recently WebVM (link), which was extraordinarily well received by the community. + +The success of these projects, together with a new streamlined API, give us confidence that CheerpX is robust and ready for real-world use. + +CheerpX is free to use for personal and open source projects. Licensing is required for development of commercial software and for any business use, with generous allowances and scalable models for small businesses. More information on licensing and self-hosting are on our \[LINK\] Licensing page. + +## Why? + +CheerpX makes it possible to build a new generation of Web applications which include binary components, developed in any programming language, while keeping their execution completely client-side. + +Some obvious advantages of client-side execution are the protection of user privacy, the inherent scalability, reduction of operational costs and increased reliability. Beyond this, we see CheerpX as an enabling technology for the future of web development, and are excited to see where the limits of browser-based applications will be pushed. + +Of course, WebAssembly can already be used to compile existing code to run in the browser, but this really applies only to “supported” programming languages, mainly C / C++ / Rust / Go, that are equipped with adequate tooling and SDKs, and to code bases for which the entire source code is available (a severe limitation for most enterprise software). + +Moreover, even if an application is written in one of these languages, this does not mean it can \_actually\_ run in the browser using WebAssembly, as there still remains a major gap between the language being supported, and the platform APIs being supported. + +CheerpX aims to be a universal solution to close this gap, by enabling the execution of unmodified x86 binaries, and bridging the platform API to HTML5. These capabilities, combined with its high performance, makes it possible to run any existing application, library or service client-side as part of a Web application. + +## How does it work? + +CheerpX is conceptually similar to other virtualization-in-the-browser solutions, like v86 or jslinux, but thanks to a combination of features can achieve much better performance, robustness and scalability. + +We believe this makes CheerpX the only solution in the market that makes it practical to run real-world binary applications and libraries in the browser. + +The main enablers for this results are: + +* **Execution Engine:** CheerpX features a multi-tier execution engine, with a fast interpreter that can also track the structure of running code with low overhead, and an advanced JIT engine that can generate high quality optimized WebAssembly code on the fly. The engine is extremely robust and supports dynamically generated and self-modifying code. For binaries that only use the most optimized parts of the instruction set, the slowdown can be as low as 2x/3x compared to native \[LINK TO BENCHMARKS\]. +* **Linux syscall implementation:** CheerpX does not run the Linux kernel itself, but provides an extended set of Linux-compatible system calls. This means that the system is not a black-box, but CheerpX has a complete view of all the processes and threads currently executing. In particular, JavaScript code can start a specific program and wait for its completion by using the CheerpX APIs. This allows for a new integration paradigm for native code execution in Web apps, with binary payloads being directly driven by JavaScript logic. +* **Large disk images:** CheerpX supports large disk images, up to 2GB, which is a requirement to be able to run complete Linux distributions. All disk data is downloaded on demand and locally cached via IndexedDB. This local cache also doubles as completely private and persistent storage for any user modification. Any standard compliant HTTP server can be used as the backend, with support for HTTP byte ranges being the only requirement. An advanced backend based on Cloudflare, designed for WebVM \[LINK\], is also available. +* **Networking via Tailscale**: Access to the Internet is supported via Tailscale, which makes it possible to connect browser tabs to your private VPN via WebSockets. Integrating with Tailscale is, by far, the best solution to provide Web applications with connectivity to the wider internet and we plan to open-source our complete networking stack in the following months to allow other projects to adopt the same solution. For more information about the rationale for choosing Tailscale see our recent post on the architecture of WebVM \[LINK TO WEBVM2.0 POST\]. + + +## API overview + +CheerpX exposes a simple, but powerful, JavaScript API \[LINK TO DOCS\]. The following short snippet is sufficient to run a static binary in your browser. + +\`\`\`javascript +// Initialize the CheerpX environment +const cx \= await CheerpX.Linux.create(); +// Setup the engine using an existing HTML element as the console +cx.setConsole(document.getElementById("console")); +// Run a program and wait for its completion +await cx.run("/hello\_cheerpx", \[\]); +\`\`\` + +The \`hello\_cheerpx\` executable will be loaded from the HTTP server hosting the page, executed client-side and its output will be printed to the provided HTML element. + +Using the HTTP server as the filesystem root it’s a convenient default for short examples and “hello worlds”, but this behavior is completely configurable. The virtual filesystem can be constructed by combining the following backends + +* Disk images in the Ext2 format +* HTTP servers +* Persistent storage based on IndexedDB +* JavaScript allocated Uint8Arrays or Strings +* Internal filesystems, such as \`proc\`, \`devpts\`, etc + +This snippet of code will start a complete interactive shell in your browser \[TEST\] + +\`\`\`javascript +// Create a read-only block device for a disk image stored on the HTTP server +const blockDevice \= await CheerpX.HttpBytesDevice.create("/cheerpXImage.ext2"); +// Make the block device read-write using a persistent IndexedDB overlay +const idbDevice \= await CheerpX.IDBDevice.create("block1"); +const overlayDevice \= await CheerpX.OverlayDevice.create(blockDevice, idbDevice); +// Initialize the CheerpX environment +const mountPoints \= \[ + // Use the disk image as the filesystem root + { type: "ext2", path: "/", dev: overlayDevice }, + // Add the required Linux pseudo-filesystem \[CHECK TERM\] + {type:"devs", path:"/dev"}, + {type:"devpts", path:"/dev/pts"}, + {type:"proc", path:"/proc"} +\]; +const cx \= await CheerpX.Linux.create(mounts: mountPoints); +// Setup the engine using an existing HTML element as the console +cx.setConsole(document.getElementById("console")); +// Run the system shell in the browser +await cx.run("/bin/sh", \[\]); +\`\`\` + +The shell will now start and show its prompt in the provided HTML element. The user can type commands and run them as expected with no further changes to the JavaScript code. + +The binary code for the shell, and any library the shell uses, is loaded on demand from the disk image. This is implemented using HTTP byte ranges and makes it possible to support large disk images, including complete Linux distributions, without requiring the user to download large amounts of data on the first access. Any downloaded chunk, and any user modification, is stored locally to the IndexedDB overlay, which acts both as a caching-layer and as privacy-preserving persistent local storage for user data.. + +Disk images can be customized arbitrarily and conveniently built from Dockerfiles. For full information see our Custom image guide \[LINK\] + +## What can I do with CheerpX? + +Combining the \`run\` API and the flexible mount point capabilities of CheerpX give superpowers to Web applications, with endless possibilities. Here is a small selection of practical use cases that can be built with just a few lines using CheerpX APIs. + +Want to further experiment on one of these use cases? Each one is also available as a standalone complete example in our repo \[LINK\] with detailed instructions on how to get them to work locally. + +### Use case: A REPL for python + +A complete REPL for Python, or any other programming language, can be achieved very quickly on top of the previous basic example \[BACKLINK\]. + +\`\`\`javascript +// NOTE: Assume the mount points are correctly populated with the Ext2 image of a Linux distribution +const cx \= await CheerpX.Linux.create(mounts: mountPoints); +// Setup the engine using an existing HTML element as the console +cx.setConsole(document.getElementById("console")); +// Run the system shell in the browser +await cx.run("/usr/bin/python3", \[\]); +\`\`\` + +That’s it. The user will now be able to try Python code in the browser. The basic \_builtin console\_ is sufficient for quick experimentation, but you should consider using the full-fledged xterm.js \[LINK\] terminal emulator for better results. You can do so using the \`cx.setCustomConsole\` API \[LINK\] + +\[SCREENSHOT\] + +## Use case: An environment to learn C++ + +Instead of writing code in a console, one can of course create a modern web UI and then use CheerpX to drive the execution of binaries from JavaScript. + +This example will compile a C++ \_hello world\_ with the source code being provided as a JavaScript string. + +\`\`\`javascript +async function compileAndRun(cx, dataDevice, srcCode, inputName, outputName) +{ + // Make the source code available as a file + await dataDevice.writeFile("/" \+ inputName, srcCode) + // Compile the source code by calling g++ + await cx.run(“/usr/bin/g++”, \[“/data/” \+ inputName, ”-o”, “/” \+ outputName\]); + // Execute the output + await cx.run(“/” \+ outputName, \[\]); +} +const dataDevice \= await CheerpX.DataDevice.create(); +// NOTE: Initialize CheerpX similarly to the previous examples, but include this extra entry +// in the mount points array +// … +// { type: "dir", path: "/data", dev: dataDevice } +// … +const srcCode \= \` +\#include \ + +int main() +{ + std::cout \<\< “Hello World” \<\< std::endl; + return 0; +} +\`; +await compileAndRun(cx, dataDevice, srcCode, “hello.cpp”, “hello”); +\`\`\` + +Please note that the output of the \_hello world\_ program will appear in the console as discussed previously. For a more integrated experience you can convert the stdout to a string with the approach documented here \[LINK TO I/O GUIDE\] + +\[SCREENSHOT\] + +## Use case: Hosting a HTTP server in the browser + +CheerpX supports networking by integrating with Tailscale \[LINK\], a private VPN service. In production you should let the user login to Tailscale interactively \[LINK\], but during development it might be convenient to use \_Auth keys\_ to connect to a testing Tailscale account. + +First of all generate an auth key from \[[https://login.tailscale.com/admin/settings/keys](https://login.tailscale.com/admin/settings/keys)\], and pass to CheerpX while initializing the environment. + +\`\`\`javascript +… +function netmapUpdateCb(map) +{ + const currentIp \= map.self.addresses\[0\]; + console.log(\`Current IP address ${currentIp}\`); +} +const cx \= await CheerpX.Linux.Create({ … , networkInterface: { authKey: “TODO FAKE AUTHKEY EXAMPLE” , netmapUpdateCb } }); +… +\`\`\` + +With this configuration CheerpX will automatically connect to Tailscale with the provided \_Auth Key\_ and the assigned IP address will be printed in the browser console. Now we can start an HTTP server inside the virtual machine. Please note that this example assumes a simple \`index.html\` page is available in the filesystem. + +\`\`\`javascript +… +await cx.run(“/usr/bin/python3”, \[“-m”, “http.server”\]); +... +\`\`\` + +You can now reach this server from any device connected to Tailscale from a standard Web browser and even from other WebVM instances\! + +This latter case is especially interesting, since a Web developer can easily configure its own Tailscale account so that every user visiting a page is “connected” in a virtual network. In this scenario all the WebVM instances will be able to communicate via Tailscale, forming a completely browser hosted VPN. + +\[SCREENSHOTS\] + +## Use case: Organize a Capture-The-Flag competition + +CTF competitions are often organized by the security community as a fun way of comparing skills or introducing newcomers to exploitation techniques. CheerpX can be used to create a safe and scalable environment for CTFs, by taking advantage of its ability of accurately executing unmodified binaries. + +Any application exploit that works on native, will also work in CheerpX. This is an real-world example from the \[REFERENCE COMPETITION\] + +\`\`\` +// put the binaries to exploit in the `ctf` directory on the root of theServer +const challengesDevice \= await CheerpX.WebDevice.create("/ctf"); +// NOTE: Initialize CheerpX similarly to the previous examples, but include this extra entry +// in the mount points array +// … +// { type: "dir", path: "/ctf", dev: challengesDevice } +// … +// the \`chall5.bin\` binary is exploitable by providing a suitable string via stdin +// the following will not work +await cx.run("/bin/bash", \["-c", "printf 'an unsuccessful attempt' | /ctf/chall5.bin"\]); +// while the following will exploit the vulnerable program and execute \`ls\` in a shell +await cx.run("/bin/bash", \["-c", "printf 'AAAAAAAAAAAAAAAAAAAAAAAAAAAA\\\\xa0\\\\x83\\\\x04\\\\x08\*\\\\x86\\\\x04\\\\x08P\\\\x86\\\\x04\\\\x08\\\\nls' | /ctf/chall5.bin"\]); +\`\`\` + +Since CheerpX is a secure sandbox the user can confidently play with the challenges without any risk of corrupting his local system. A compelling UX could be built around the challenges by tracking the attempts of the user while providing real time scoring or hints if appropriate. + +## Use case: Graphical applications + +CheerpX supports the KMS Linux API, making it possible to run a complete Xorg server in the browser. Running Xorg is extremely convenient since it makes it possible for any Linux GUI app to run in CheerpX, independently of the toolkit. Using Qt, GTK+, or any other library makes no difference, since everything boils down to the X11 protocol. That said, the KMS support is generic and some toolkits support it directly as a backend, for example Qt. + +To enable KMS support you need to provide CheerpX with a HTML5 canvas element using the \`setKmsCanvas\` API \[LINK TO API\]. The following example demonstrates how to do so + +\`\`\`javascript +// Initialize the \`cx\` as required +… +// Setup the text console +cx.setConsole(document.getElementById("console")); +// Setup the KMS canvas with the desired resolution, assume \`display\` is a \ element +cx.setKmsCanvas(document.getElementById("display"), 1024, 768); +// Start Xorg +await cx.run("/usr/bin/Xorg", \["-retro"\]); +… +\`\`\` +The commands above will start an Xorg server with the “classic” stipple pattern and cursor. The \`-retro\` option is of course not required but it’s a simple way of demonstrating that Xorg is working as expected. + +For an example of what can be achieved by combining a KMS with a complete distro, check out the WebVM Alpine demo \[LINK\] booting into a fully fledged i3 desktop. + +## Benchmarks + +Not only does CheerpX achieve unprecedented flexibility in running binary applications as part of Web apps, but it does so while maintaining high runtime performance. + +Thanks to a host of innovations in the field of dynamic binary translation, CheerpX is expected to run complex applications 5x-10x slower than native, with the slowdown being as low as 2x-3x for binaries that only stress the best optimized parts of the CheerpX execution pipeline. + +We are confident that we will be able to reduce the performance gap much further, bringing the average application to be *at most* 5x slower than native. We know this can be achieved since it’s a matter of bringing the same optimizations we have already implemented for the integer pipeline to both the floating point and vector pipelines, whose implementation is currently quite simple. + +\[GRAPH\] + +This set of basic benchmarks shows how well can CheerpX perform when dealing with purely integer-based real-world binaries. As a point of reference we also show the performance of a Box2D-based benchmark, which is floating point heavy and stresses the least optimized parts of the CheerpX compilation engine. Larger and more complex applications such as python and nodejs show instead the typical behavior of an application using a wide variety of instructions. + +CheerpX, although not yet perfect, already achieved a much higher level of performance compared to alternative solutions such as v86 and jslinux, while also offering a much more flexible API to integrate the execution of single programs inside Web apps. The current level of performance is already sufficient to run many applications of practical interest in the browser, and the range of what can be achieved will further increase as the technology matures. + +## Try it now + +CheepX is a sophisticated virtualization engine running in the browser, but at its core it’s really just a simple to use JavaScript/WebAssembly library. + +Like any other JavaScript library it can be included in your projects either by directly referencing it in a script tag +\`\`\`html +\