From 603a506c4e9a7fb02b18539e94bb559f0a8d0772 Mon Sep 17 00:00:00 2001 From: DiTus Date: Sat, 18 Oct 2025 15:10:46 +0200 Subject: [PATCH] readme.md --- _data/executor_managed_positions.json | 12 ++ _data/market_data.db-shm | Bin 425984 -> 32768 bytes _data/strategies.json | 21 +- _data/strategy_status_sma_cross_1.json | 8 +- _data/strategy_status_sma_cross_2.json | 6 +- agents | 13 +- create_agent.py | 3 +- market_cap_fetcher.py | 4 +- resampler.py | 262 ++++++++++++------------- strategy_sma_cross.py | 111 +++++++---- trade_executor.py | 256 +++++++++++------------- 11 files changed, 365 insertions(+), 331 deletions(-) create mode 100644 _data/executor_managed_positions.json diff --git a/_data/executor_managed_positions.json b/_data/executor_managed_positions.json new file mode 100644 index 0000000..e9769cb --- /dev/null +++ b/_data/executor_managed_positions.json @@ -0,0 +1,12 @@ +{ + "sma_cross_2": { + "coin": "BTC", + "side": "short", + "size": 0.0001 + }, + "sma_cross_1": { + "coin": "ETH", + "side": "short", + "size": 0.0028 + } +} \ No newline at end of file diff --git a/_data/market_data.db-shm b/_data/market_data.db-shm index 5e240bc21d04bb763e3eaa42598e42763509b968..708dc2e284cfc1697a4260fdd4ef6bdfc6ba2587 100644 GIT binary patch literal 32768 zcmeI*S5K316vy!|YTW|`6*ulZaN^#3FGSoE7j95-PZT$9@dbEcOiWC?B6{zIw??BE z3U0;m0`wHq#2CiYl9u-A?@3PE^f~AJ&-t|1ZNi)0c(0@p5CgHd?e(uB4~c2%_fyid zpJ(2SPtACm{475&H||kdRzZTF`6bQm!Q1!uKbP-)-*b_j`N`t7#b=9`7T+yCSbVW~ zXYtMAqs3Q?7Z!yUZ!L-~Y<8a9_3++a|FH14pSM2eEG2z^TD`Atp#8k_mDb05PVuY1 zyLz4d*|)TQUbCv`^Ptc}zMWlQQP!^i&-T!2?pXd~3n!m%F!uF*-}Ed22}nQ!5|Drd zBp?9^NI(J-kbndvAOQ(TKmrnwfCMBU0SQPz0uqpb1SB8<2}nQ!5|DrdBp?9^NI(J- zkbndvAOQ(TKmrnwfCMBU0SQPz0+A*VOBa%v!E$zSy5x5ZB5i|E&D(&E3}Pxv*v?6A zgzDHzoYR>046j7J`%7!ml0J-M0qZ%$CHF5J@P-~*(3`Q$XB`K*7;v9J3%3SZsJb!* z;_1dPX0eh?a?8xpjj9*eU-csdVS=N7+s?(gFjAkxt*vt9g9;WUR2&sVmFru!I3uK4(vr2}nQ!5|DrdBp`wE1RBwq zAxvi(JIUczd8xW50hb9hblE;yM*_|TVrWWt=jqCnfQtm`(1s)?vWSfw<%)|o(<&0E zNFa``3}q%O*v*-Wl67AK4g|J2$O(^>TC}1s<5@^Lhq)XcLurbL6=)Jslh>mi1DMQW zHglY75jDGp4Nrjs;W<_*Q&poGJs8PsR*{AMS)wipM2$cV66nPk=CPK2T!@;zwWtK3 zHm&K$1X9?*5%NSLfhZEFPa*@ELK<5*!SyKGT&ucGpo8BF)uk={nM5j^IL1}K>s1iG G0)GHhR%_7=yl3Gw5)5G`)XT5MgEddzuqdl!LjDp z#alr!QLhB$`A(iijH}jK(>HbS+Tgh~jO7S19=z@bYfs!(?e&SRy#2fWITkW!@SM4a z8E^W*=h|^Yh?}>5*JJu2*9Om-YlCBh*Uo3%^AKxIKjhlrxsYcGUXz-9#ULpZ2cxV* zq{EuIYY!LVAZPqwoihgGrQth%SgilU-vNII{2lOjz~2FX2mBrIcfj8Pe+T>>@OQx9 z0e=Vl9q@O+-vNII{2lOjz~2FX2mBrIcfj8Pe+T>>@OQx90e=Vl9q@O+-vNII{2lOj zz~2FX2mBrIcfj8Pe+T>>@OQx90e=Vl9q@O+-vNII{2lOjz~2FX2mBrIcfj8Pe+T>> z@OQx90e=Vn>vkaQf0@!1p$d-(5aC1=5h&t{#3F@ABQlBXBDW|giiuL9#($Z!{Cf*6 zB1(&j|K2V9+5d?SBoQe^hJPZ?AMzj5ftvp@+xU0!ci?aAfJ^AYD?;w zfyg47h$#|@oQk=jlMLf4Y=dqU=8% z>kssIz~6!YnH{M6Kl9lCtxsM3-+H=aBCW{yZ{5M4{6D?};s4{elshK)oA&+Bv29k7 zM-=$aQObYnD%`>l(M24QTBH}bL_Secl>bj%@BiH5YX3Jqx=)1p+fG*bZ`;|wvA+X< zcL%Ee-39pf_jkbGfxoE(3IC>j{oDFG;O~IH1O5*9JMi~*z#$@tq$0B@^e-x-uqZAn z{EKq^JJZzrcP97e_IJSFf&Wbh%>V14|Kp$OK>dFv$RFeHz`vyfu|>ImOJ09ce+T}% zbs&<6A>#jcJCy%Ce{%;Sil`#q-(180-0ic793ub!@%UB#j}iWW|F;e}g(gD%zb*Bz z@^|3BKnJS*|J0bhf-3HnS4Eges>qBET}%~23#uXmI$AkZAxb zh#t?Ht}#{NLXiqX_i8C{~dD&|sSMfA}kfNVW8d)9PzXJf+HR90EjmBM zpq~5ek=vZZW@mkNbP7m^pSrXvVxik%BNH1HeSq<3@Pj-l*y9vu%|iZL_)R(QaO${( z9>v&f{2A!n>|25Lr5PKIKZAYT_-W9I$^8&rl$^=%Z=*9Y_J}nlIbS#Yz35Pk?O?AY z_=E7T;P1juiO$0r8^u;dB6NTDe8jp{7(1wnP_$P{j6OO?`A0;<^%74xO2E?PWYU zTA&Lsml(Z<`DW-0%<1@v$rqmam(;SG@yO)MLH_;t`>+uhtBL+fd{X?J=$MSfq25jS z--(ZaF2(#)bVtTwp|7A{lXo`zwPGwO{!jKAgr5*y=niwNdqz)2GWL@-lkn%@Pb02y zG|q*NgHF$QC-h_T+^Xt??D#5nDE?x4xR;u96Wbm? zE^{l$QxYA=%t>5Mtbt#SxYNYF#Sg^p!j6Jgthr517ucgAehmB%tovMp_aWBwtwwAu zo_qYg&<)n%x5mbR`REgwg$Qf_AU9#p_>wu6TcPfvf)o&ous60Tga01eiW*O%V?ql!3MpX)x#}k7Jqi7SxZ1E6eGU7T zns=i=uTl9)kXAWBDbvuQ!&Ej=uQO=~H#;=!$N` zvycqk0iB+G`m*O}vo`#C_^V>k5A4dl^EbKViMx zjSD>`8t+-?+Tg@*i`@vn=)+HJOrFut=yKSmFc2Q%@57#lTj7Tr6M8oGG$i8nG6z2eHWkc97sOV9;pmRoGa$IP zf%q!c3+>RQuuGu@`YrY|l;W9af?pNe$OOF#!(GPeIhjMS*dFCqP zm!co@`9An8l)w+m_w3=J5PAZ3Dda;h$G(D&{23z${%&kI?kO8O0y)0HNqUzK{{}V} zJxYx}fh|IB5~0sv??W8=5FfuFwgW^!kHD^k=MWA*9X%)wq0tMm+rWX=ICDB!1>ZQ! zO>9ig_XeGg_oejk5*>=?p)GYZVBJIfK+gY_n(w1u@_qSOxQiZ&odi$e7Je!EFd43+ z%W~c}a1EV^wWA>veY=bw30nnDqNiey!e=;v?_{r%a2Q<$TOanL_hauvGW2dJ0;6Fo zbYwh`{AFZ3+^_E_(!9Pk5n{%G!=vbUJD|3s{**V)4`jv^edH4~zgX_f2Mz<$N zHD0GZ8Jmg!6g!N#8R*rl=|peFpue;4YU;iko$n>^uX6U2^r9pB61{xGTzm8(#&Vhc zAig>NKy(`Bo1)hfGluzw=s@c8;ddggI{pdH6dkIf?+}v#%A>Qfei?gJ!Y_vZlQp?m zlOG+Ou?_Hnn4I`!SpSOo?C9OtpNwZk_u?EI;Vpg0g8ziR)MNkT=vL%@14+?Sh@Vf6 z9mFNZH&{~#9m9;{3?+z*hCW8_>D2ImJQ47VQbR@j@aW~lohNrVbTQ)Z(aZ4I0Q^(r zAH^N%=sCol!;ec275_5(=3=jR4)jvkL42Aj|=u$3VWEXR+DHDC$)I(w{#Md*3h8PMId_-(KiU^2P@HZinE z8(0l4ahB%z8?fu4A$l+GALGz{p#gqYY$iwuweVljm&;HZeE_=!dO!~Rde};k5uF#C z0V1Nm(ChcG5d!enU?;;1&d?CM!0anJ5jqB_a0dSu<2T`;c~;!^cM1|e69)I*2k4iiE-bY*NeI0!}YA7E9U ziyY{x*gmip;^XhZ-hvqDiP+Q-4n2juuc;xBnnU4FHG9oD1^Om+Pe{mnH?cYBQwhd* za-KE#=UG#nwad`y*f%A14h&*!3H}VuKMlVTeOg2A_GmA2XQ3tf3+vtV;w7<-@du(m zGFKiwg6C)@_fe6t68Ia;{&6QM(1Nkj+)E&O7;9^wKZoHx7kvn#k>et^B6b<;_M-D* zZ?WzuOgH1meay^{t_HEGuQ;|8YqB%m4|<@F!F6gGO0CN{Pj85XjzxTB`V<=di`ehf zFcv1DzftE==!V`$&+4L=)3?_64d}&m@_mJ|)Rd7tW2tE#eoy9_VcWw)#!Hf~8gp&= zT9J*t+7llSKdPCZxw-g9xr+|e)CXOFy^1j2nzcU|FUnYP=GvnZv1SY70)GpXVJ|mh zqxo}0Ty#7B?EC>H;?IGP=uOzoun#`r@5dg4&*;b4XYd-9@c#6Lu@7h$e|G(f4v&oh z-_Y@}iJ<^|$1jL23_sB2uod7Zx&^i+^oL*g1F?fZ)TaN~QJ|owW9PtraNwW7o&qQO zJoYZQ(2ub1;XA1KKd=G(SzSYi$3})&pyQ{&rUy5=8nzaA&>gY;VGwxnr(mao4?PpR z1Pt_X>d?1`xfG$qtg3i z5Eq>pn-fYvJp5YNdJrGo5!(ZXLjwGf*s+ihy#~7-5}^-b&%h-}jDHLJ6q2CdVKwd| zDLNE33M4bZ&yLLr$YKd`?b4cfuoXpj~i z9vcHPLOT51*gTLPoex_a%0mYHirAWv5#0#e5;CECV+X@<$c#S%I~KB_=U~@ER`h1< zR@edA@ONVOLU!~C>}kk>zJh%Kk0B@i6YNXKg?@+q1i8`CcxD12DdfRVhD`-|(HXFr zAs@N`wiuLv{P?A?WuO4MBDN9~L|4I9g_=+ZzYexO6h=44wuB<+HrTe%0gB>x#&(5b z=)TyoFb#_1FUPKc66jUfjZhN(5c>)mqDw&os1K!~F4TcCPz!28btntfpemGuDo`29 zLq(_r2Y3xuz}A3z@Qyv+!Z~;h6QK{Zg8R@6YQSA63&kNd+=Q6mhO6+9o}Ym$=_r%tRGw8h7q;L}b8T*W9ZVa5jZ-Olf2hncqOP=}N=)Kqp&=_{$7sIB2?dUDM z7RSOCbU3V+*Ys0f|C{jJV12wdtVCCaMz9R-vF{=12aEBmV-vt4^a}Q!4hzwBv4tTF zEWrQ3o)2I)dMS1q%tE)u)`1K#13x-8985u33I87AQO=j&A&zE+J#N8@YRD!%rO zL-*n9<7zknWAHCx1NhoH5?vG92Zp1kV8inD`6yq*hu}N;`W_Pop*vz{!vOSStds90 zl0tv{4A@%G8@&X30(zowAE5Si@4Qw5#2M6#QVH?91bUSPZ*of|l?GHm?1O71Vcvyv=i=7WE(W|kW z;5;nDe}+~0TD1V}!-j{s=or|zkOF4lr^04}>F7Mzf-n_b0b2v=!#Mm_*w!!#-38kp z2BHUJw{S;B6nxMfACH{?nb6a)vmiZsK6VLg zfMoa^v6~?=dJpy>Bt)OWo`#zc7yk+NDMUyAz&d%YMne0rp&Qd@+(U1`Zil<*i`c919d6@0crVf5 z8ah5UAzVS{z&3-4a14JYb{`x?M}v592r5D=m;eW17HoihaE#Z)7TAa`jQz;@y2E<> zTG$k@8oh_t_g&^!q8su(c51%A{tC9zdq>X*mQ6o>flG>J+Um*MlZu|g#ze3*f$W1_r|>V8L{~wBYHdbJfuQ@ z!wTLf6F?ID^w*z_;4Rx4Oe2lfc$N58~I zaSuU(8RWUIX8aUl$t>rokF&9mngv8ah3_>w>?D_k`&9dw3phvTh>l zb%@Lv&okeQxD42N(4P5t^!OJ2Yk+RS`PV~I^k8~6jk%-5|Dab9VJMtrJTYUV$X}PQ z@%7+!G|qsn0JWe9q=P(=79vA(@PZCbP~kB@zi?oCk!u#b<^B2xHVi*=$P3r;i(s3< zS#*EwP?!X#@TXz7!dmn_><5^KcJTff3W~xY{9@P&&=)-jI|jOx=40{p^ zpl@KGK`yk5pMQjfOpp>k2R0uhLf6JNf_UiB*f}sCLgR16?t-_xhn>V;gO}(x*e{@Q z{ulV6u`%HZIuSM_+(PHamV$b43BLih5gb6b!FGnp==Ip`5F<7<;2%Suf>G!j*gG&1 z{S5mCzQG9m?^qYlOFwiPY)0sX&VwxorJx6XC2V!*j&6c&VU9x={9)Kp&9;Ae}`1!FrxZBd$X82XGW1&8JHg+YPfO`06vDcs`+QIYff-2}3*yNBCD&ZHz z7KPI264>fc0^J7N5l%sV{43aNkPEHytS5x5=)%~tFcLE1PsT2W1n3>uT@W385Bn6} zK~((r*soxq!}0!;5*+Ae*yhjye)68!8#^7oq1R#W!Y8!KYcT?(gpc@Xu^Hhxx(Ie0 zJVwvJE`Swq1AiBG51d9v=UG33J`2b2lkq;59?HWJ{N~tkZ~%QD`w;e^^YHpE1T|nY zeobs0*o5APy#*W4U$Aao>)~NNejIEfScy)C%?iuV1+XQc8O+7+g6$5o&@-@G;J!JA zpMdw1sn89*4tp3np`T!%K_uRv+v5jf<3e+EXKYVsfF6cD2#=sH{u`{|y{I<2Ep{xF zLEp#zg!sH)mBP=AEdwRdb+HYgIJyUR1ssJU_)oA7-uv>R3t{^}8uV=JO7QZYnFPNC zb{y{wf#@{6hH64&^dp{qmFIRO1mKUyj*H0q9Xf#LFE#w+Yfd5TM7R#G@ays{9fAkw zA6N&^$#rx~>`+(&*YIO-*SX*dx;(ZUoI+2<&Vj>l0^i47hl3;NjM&z&2E87;5iY_C z{M%S3_q-IH3Y#5fqMKry!%&!lKODOV2BJ4%cSA1jv;%%|Y+Y!H9*+oqG5$AfXuc*tM90Qvf!pYs*gDV|F5`E> z_JIrN(b#ct9=!s)5l+J~{MXn>e9b?Mj*CqNJJ2n$t)Vw;!5@pA3`^1Lv3o)AJ;fq? z9UB%Fprc@8!fbRrY+}d{Q}Ih-%fbkBMQj}yj&6_b3S*!P{sQbmXpdflT@P*1d$H%? z9@N4AfYq_pAvPq2EKm({KtU)4l^_kcAsQ@VT^rEQv9OWhD$Le~!pKMdoZ#c)v1a0Twd zI}p5Y1wanS3k9Jmw1Sba0k*?AxC#&91N?+Ye9w{>%0M-!4}D<-%!Na67%spqcmh8l z6g^2`_62f5MW_wUp#=I0Hq?b?&=tnP zOxO$;;4S!gKMn=qASxt;vQQoBK@;czU0?)^feA1PcETR`0+G1qC=d-2L3$_#6`%$* zgubu=cEKI^0Wo=Rj|(}W2y}+7Fc?;YwvO+#60cD{v zG=a9z55~cGmCA5L|&;@$J zP?!pHU^VQ7BXAr}!##KeFW?<~0fqM=7w8ZG;UFHQg&dF%YC}V41npoLOokaS3+BT@ z*a3&&FdTu?a2X!JGx!P$?|)Gt9wdRZkQ4Gl5vTz*p+2;LwlD|=!!Q^J(_tQ~Y4+>vz+z<|;K^#Z`X&@66grZOeYCvOX0_~tL42DTC9~Q$h zSP83O4XlR^uobq!J~#ze;Te2@FYpx-KjP!=jcO=tqmU?7Zu zDX;|A!DiS3+hGUP=D%e%g2v$g@OQx90e=Vl9q@O+-vNII{2lOj;D15~n)9u%%PYhy zWtICM&-+LY&2=~v_`xESDY)2e%9{0<^Lt{Ffpk^d?Q~) zZSP3qi{g7?#5I>&AED)%;a2@Zc=fQF5NGw^`KVG{b*EIncq&r$?~l#uETSI5TBj0l z%9wAT{k0>#^OZd3BKdi+Rz`P_Rfu&;Mr)^&oO+b6hU*2VUGMq*e?Uw@zB_7s*2NBZ zWoHy(h}HAo`ybVo$(+^Y9y`ce{*O-b>%n54oZCbf#`A+Y#WT~H#X4CDa;JqhcEY=s zTI(5V<*E9|d4b_2VYhldAJs25 zD$4Uzb!4ah%Z{aEDK8N4!@)<}7v>{pJ;Q)QNW<#4~i79pgs-BCqr$5~D*Wv!70ZBOcj{ z;EbmA@FV9fdVX>`g~Jy^PIa<+D#Qr8(s5dCMl(3t`er$sxb_=UjixeJF6TF59{Z+y z?%8Rl>mSue)KFV@1f=%V^TuW-mF!kf$abr;A)KDq37-v5XnFthou`OCzjnBMi-{bbJf;X zQt2t8oUW_-USp!sz}O|LNkvRHySHZEI7FUi|Fi)m<$W&V^O4^h+Nv0FLhNI0F4?El z#8q%_^)9qeZHJ1&p62*6+hln)gG0$%IM7hU(qnUS@d`@myJLF(|qNOWws`_d) zUw7X=I=|bf$9OJpX5t6i^<tQu5pq54Bz zMPEiZ=eh&sU8SV&|6d=4ggetG_^;C2v4m-+?72rRYuvBA+9-g zpC`$YI%Hk$+9cz0$!g8$g?23i$*Id+?_|6=%ZeZ)KkxCa^bHNMa}CE@_hNSsS9Cij zjJKuo%XiX|+|JO7_#EE5N(aX^=R~(zQZ4rQ;GAtgDS4C{vWA^jXU$}KKvb&-PpEgQ z-TmN=N_tYtO8IILbgyI!C8N^IECZB*ay%&hr+!)w<1B1<^_-0CBqw(eH{0$MU(xhp z(mU*&XXt8HyE{Rd7RtGjT1LAIS*dSFi2CY>*f(fRO!rMSnXjKO3a^xH##q_;t0FsV z!m1B^h3QnF>_s)yFFn4)?Ro61M%Gr=3C%2N?S7hGN41Hkp|Zh!)zOeM#gI2@j+-A- zq_^&mD$1%W^^Hnc_Fu>Dr|r%QaVx~h4{MV-ZDd~;Ujed4A=i96^Uc5XVX2lxW;w(u z%+fj=1--}2?S*PRSs$h6rcYy(6N>O;W%tWQTA49Hh?|yS@>557#_f7;XH>hY9?V>K zCXuJBD;WF_%HUPrXJJl9k7>>U?jV zaR8NG_q@|jDs4IaO`|bU7wj8IEw+ihc2#TDQtVyD-X)rSh^O{g(9j{Wc5~k#V{2xb z$me8|I4#otLkIS#^VPoQUsDv#^sdClbG8!U|A<;|=PvfgZJd-jnAg_tbRkq(ZIPOtT#NLT^2Q>B znEOY0mb~UiWY-IJUgIia^*g4ba=Ov>Ngfc_hpdww59rc9qT;Zsn=g;-*;#p-NOHd} z>IqG7rlWX!>F z13Xck(_9^hEW*yIU^tA)mJ&)uHNniM&aLCjEkIXjn%h)S~jawo#aSE za+Ege$0<0&+U0^IGqhpD2W&*j^0RAMB%cO<nj`&sv0-RM3dcOU3oVXSdp2yuG80~L9#I##NyJfHOSdP?6^-yl~Dd6RME zTzq@ypzPzdp`M27XgR7{Pel|*BJT+6)Iuy3_hslTdHV0lBt2a~63<#!9O^A@c%4^7 z3aije*6tN#zMO=-oq zw4Z-#KrDBMqEB_aXJuT_=o49cA9;=*>KwJAyErAN~PMKhxJe1O!)l00i7Sk&$ z+uaM5_VS5&;HpNi?mM507tT?r+rIr)9REy^_MMn3N)9>lo^#ca=SpN`LjU=(Rd={A z$*%icM~NEBn&HmW^5hpnoIkYIoSe&L+l#<5k&sXsMRxK_K` zTeUrQlewY44_A5<@ z&IZ-hmpi)b*{)Q!`*GV5Tb?I)brik6*K3W$vMLUqGp*Zwz+KYnR1*9O#%58; zneC6Km$?SYxh?W@Tvp6?^s%ZNt=>@2E46(I*(J1i>8xs<=9Oo#T}g1I zjn#AXJ#jz-S15g&QQe)7h@`})5ogG@$?laIzuW8ZEO%xgp6`{6NFh$X$kS7vOo-m{ zo~C)1I@T+XoVSd})>B$gMxT*U4Lq~0Cvlo*sZ_aTPBX7tE#gdQbewlia;NiLakVj`IwmTSyiu*QnQP6DW89$2z0o_{%J|0H+luH(uJTn=t?gdiB7Jn@)r85BZ$1JT%s~n zzNb~BCW13wH0%+8N&O zR)w9dlaA6Rm_3y@;G|O@T|JD(_IY3XF3KL8n+(?~cm}I;oQoXIodq55Sv6RmY@w`x zKM4@o$UeWj9o4rHO;&wx@ir`Nwa^ir@7f#Ne zQhV!jJj0Zao}}y)*^}AR$LM37g5PzrIuOGQP?aEw(DC zPycVpJ1Eb{J|aqai^y}CYsQlQsI{7(3=wxo>U`j7W>sR2*3yp4 zj2q-0QLHod6eDGAOp2y|YwdZXK2%;hQV0B$y_AP!#Vf1E zF4jO)t(H{V?b`WjOTFK0f46UetW?D(9+c^Nkl}MLd83oP%Vf^mMk;G2y*sNN z-_6R9MA!JIH7+ZeeQ^R_8#`U)MGa%Ha@CIGIkQ%mq0=v^^s{5PYW~P)r?ah5f*z+Z zBHPbcQ0Q5;hhChSYQ8M;{Vb9k&ST8?zTx!wlnTyW_Px&3MyQ|lv&tK#5o6n2HNEHL zGvHOaS^EZ?0_q@oaa|d#FLQ@=5WcTV}&?dU9B=by3DD%SfeXkvHo&H!Taa;)KNNmKe~JB(E=j5lMr9sC}`bMa7>V` zq(s(QlXJK1OLzGk?%`B%84LdCCHp^AO-!v@m}{iBcm8rNF=C1cA)gNYPesrV=-n=GrL6AmD)(+PC|xEj4qaWdy=!CGTvJruaonWb+38c zugprB+u#{&*PBnOBUIYe`9|JlO=G+FeDH>UvD4XoydKZ0zN3gh?v$+R&Bz}1p9TDU ziE7Fz=ahZYGe`Owhpm&DULvwAvvRN&kM}*XL%MMhD%#ZyFq(_L!J*=? zW0+Nu5P8^lrMsRZqcb|M>6UWuPqKD9+!8mnDdd03-QBVFFXN5ONO^4hz^3ux)wV`R6_5R`4Ar>zyS zLB^Y-aUE01^<75FW-^w-o)sdtmWn!0xvThEQ^#cS%GKE$)8XTMv90ia_O5&-W@St3 zHZ~c7;)3i}@u2O+D9@Td&U;hQoFAQ^jj-0dX~x=j8#KsY01%(mwuu!%ta#DFe#OE-mEqaYoV-|3aQ;zWjVecI}ydObPV31ER62 zwlj&ln~qlHXC59dEYD@mU87RP{noojiRWqUJZRKs_hMGXi^P7pJi4r4jO+?u z?|qrLGrspXZ^5d~&5C8zpTh3IKF-2cu+r*e3$E+IpbG_Bqy>`xcS`&SsdYldnlDRID zr@Xrk^OI!kA=KHRG<^2C*Ap30cK@>Tp_R?BtQ{sAC^z-N?iX&2$hxw!=Ei4Db)J-a z{Ep+Nt8}WH?A8JK9Nd@DiLCyGjO@<*5XO(I4V+CJcZ@;4A)M>IwowM1^W;%;*&Qvd zIo++jaeN8v{kqGjssB)ETe4>I-jU<8Wpq0uqH~blA9L9P`2<{N?|$l9?;NYEe9!DU z;(cR1J1014AK4eVk^HntPi;LrKjqne&t$e`1hSR&I(@pQ2r8*_lF^7$wN{eIJL~h8 zdOxVQ-G`Ko)EVBcg0DK%@RFV0SkFKUc3Z10@Wxg~`vT zIoHb<7!Y5MRKd?E$Lu04F;&g)eMLpd0=~-XTFK7=^eU$3nf)r^>!`Xwp0}!RHF*}e zmKwc`q2jgn+Ny8GU;4yrgB;6b_p3Y4$}J{J zg^>@QYn(f^{W{sNMbXlEZ+bsC%IYzg$t~I&8yRO$dhN6UFDDc#3oTT>rtgY%BW;T@gC~f?uqyhuWpa*=x6T*X=hXOXSs5! zXQTC8P1Y82Q)kq5?&|t4_MJy$DfdBH+&$UbZB}G!SttLcK<_BCb#xDu)j!TH&W zS}E6L)x)^&Xcv`qL?$BtIHQ`oZ-|qRwaydNgP_khiQVj+VYIfh@^dKGbhctAt4XwS z?(_1Di5S~#-;nC9@0#SiY*k=p%cl)fE2;%UjF_YGs zEh_36^F?Us^G+mV`^%kHYcaK0Rt66vndInj5sfj;$R6T!NwxV}F86DFizAzS_V*Im zk4$gj0(=z{WM1=AemxGA?9$WwV!ECg*IYqm-LU5G`%*fadCJ+{swj6!Le_-jyzceT zjSR9Q5ku@>nvqc69o`vwJ$fHY*2(wAo_tP)THp9eczRhGM{uWU-5Xdt#1|$YiWO;Y z9@l8WXZ}(s9|_6A)2>ZWw`ry5OkTaC6?utrtE2nKPOr23y@M6E^uoS!`ZpttK8qWD zDp%B!pU)6?!b~adsRLYH^cO@==Jqd!xOsDSfcL5|5@#80-3EPB$-N(I;3~cDA(bw9NF1 zzhKBmSoavYFFm!MhrA)WFGL9<7c2WXmEwA7oUvm0ubu8t>L{5loBV8kI;po&W5}9P z>V2v9v+FCXg_tWwiquy1raw(hrv2d7_A;vloc*IyxzsUci2bob+fC$PvWDkWjmUD# z&NRij)qa}z?$z^FzpWKe!dSg?alScL9_5ccma}h5x5M$w(bJjF(cZg3o+>9@?Jp*y z&-uDpc~fXwN_uk`k?Di6+O{zJdBRIm4$Qqs4WQ=c&|+Glsj+ZrV+H{-i#$FvLN zU7^=?hV|X0(l-B)EjVui_H6Er>07QWagT8CuzFL~^~25<9J!l}spU?o=>8EavZf=l z_a@y^c~VweeR!zW<(!4pGIG~I*V{jGee}h%`(@@{PV5)=3T1(N2zf?ZdEYtWDDRjJ zw4cDRdQqjMHydk?z1R^I1-_DziUoiOT<+58BU*)RA`1-YUV zXSyrzWDWb=V796};j9o9FAveX1X6@&9{wWCdzUg_=0<9+7+<(TM89Ie4@B_I3mG)gd=(|a)}5ucBe&c@QPG7^$94r=l`g?QvI$2!}8XaU!PLWlXl_zLSrDJ8T1OXq& zRNLFch-p9L{AtWOk-2oSR?q#!@=p?bTlR94RVlAFYp$zSo!oQ1ZRv0*o@suLM$B7w zx`qDYdng7nf5h(KZM8O$F=b?FBC3j)T7dVK`>Gvb=D5sy^W(dtsjsr^T{-qY$4ElE z7cxN1Rfp=|m+ySelbhOB-aD7 z=JaWSjT5a`xx3i7&xRsM(E0Y-!^pRdmtBp|j=L6(NR98mqO6MEx zrz4J0&#pP0y{@`?LF$I~PUgZlfAonzQz-pC&&cU;mayt*K@GaRCzsK}&TIY;sKSWm zp2u`{fiu4&g=dk`)2eoYyxS#q=8jr+?Ihkj$3R~N$33D}T6w}))$OyN)EY{F)_-ND-b7kjM;nwFnms2%kpWZUDe>kH-Uhib-n zM5_;<*!#H4VfSf)XQw;6tfvcgoN@QIGhOtwWdE)qYG`7u`e^NJhJLj2?zH>do*vb9 ze;~Gop5E$ebbB@^eOBrB(6SJFL_Qz$Ui?Been(HLvx+GW=nJaf#BTcR!3J6KQj zUFSyE9L}x;`?Asu*6x|8?zv~Dc3f$r=WtymuD_AoK1*gRs=T$9KL_Za-QB45xv|Cg zrByT5QOgT*e7E;Dt9hqQQd_Et$P>jA+I7OZfnxR(c*L%qf6`7=W&Q@S;jFmI_Wr>q zGwlE|TgxNgpK3b8v73h~${L26%&Kh@ciPyx*YZ@<&|BOQ*BQW0t-Rxn67sb`7p&Yr ztkgT??SywUCZpjZrRXT1!Rc15G1R114_>p+JI^I`m!pO53Fu_yi_PdyE5b^NS*6ak zD!K1o@63X(KphWVK5NzQ$aS*%%(AL6?t{)LMmt|oBdgVk^o|q04pydC>~fWAi~FL< zk;tMhQT^r0N1kvpPeEBpA8n3y%QKU`+Bvgvq?W;VBhRG#L$!SG>g(tTLxo9Pu|38A zQlr!A*ct68xvuMn)VRJ>W~2BhAY&6dev&zcvc=kGF|}OMF0oJMfXw=N+0UT(pw9;! z&%{z+DeGLNm1aslUmV8<=Uw+ZZ(gbhAlnidx{a7m*3u)Ky|VYY64@Em>P~55gFjBm zDrW_sR7CeaRvuZEXOuf7v(B|9cnLPEHcuO>98}8rvIiJETW-!(mfh3KnonC5hFBo> z=o#4~yz8U4nkZ>aJhAo(j%%h}(`PCd$@NNhe7e!nNH23mGM;jZOu>PoE}hb;>oC3Y z_>#%!pvjnj=~`Z@tFMgl&UWl$O@H@Vqk%|d=lN4ikrPEQPWJI&i1WX<rtExK>mK;pZY~P(u}a%!%|&u;lzV6JrgFTe zPnSaEG#5P9i*f#8a_{gmLv?Z5`H4ssPEtoDxnhhKpHt1IPc`)!_P)ujJ3a2%Z{IJr0mrL_Vmj65QT^?oc)?IP~TzS#3wC_j1L*b*LHS)tKOqWRje8xvOj;4m$8T0 zZ>y}6@1nGH+Ap&Ga_8Xb8qWz1ILpaczRUW{{%eT)rlrD2uuoR>e@ zTXp2noaCM1s7BmC_AVvL8Kpw3F=K;2N-A}|$Mvk7vK!rh{tr>+4Gn5v!y=AeaY(j03tPZI4sYXH+XyD(KfrgISMfwPu@TPt0yuW z&wg%$LIdNcOGBDfKSF(uVOz_ymQJO?UabF!6Wi(pgEJ0y?F)6XUbIO#~|7L zt?sq-t%GwDHTYOJD`?XCyuue>u1RO_7uv3@5GpizhsfN&mmQL^`F$w@lCyTEQB$sn zD5GMbS2?Q5oU7GAL|$~Cu%DkQ-UCG4lRe@)R-)?3NHh0F&j*<|qI@DB5wn)jf$|12 z+8KhXn4<*vCi}WEcf!iWb11@d7a0hc78E2uH?>dm!#mfwA#0pto#(u-yR~~BEd#xJ z!~VUUp?%kkG_HK)P3tKjcQ+Gtu=nBhsI8G%Bir2{=FDVFv9kW&{J9oMd#>JbkCEpJ z_j>|$+tD{fd=qt%)>A#FepSNQ{V3y39DK{d72^E422-TB)m zS}d)R`-IHZ%khi~&$%4jUJOQ3T6;&Ax0&C}2MgqLdfjLw*W@+gc->M3x`)^`6w=12 zHPlqT1NL+9&iP25{;KPsD;9ZMSXDeB;{f*_Ew3+Wz&Q6I*=N41vR_fBe4VVw=KS@j zNCy9Q8Rc!`7nkzj=T-Ul;@$ikbLgk&{k(Br4a>h7#vff0@&of?{JQvY{O!<+v3ES& z8_=Z$|CSc(dhw&+AN&%+N@B~0;@@*b-(<`SE6@#yUrk(F_G^Sc5xtbR$KAx2BgZlJ ztAOtF%O!MdCDuJ5&mwro{8?-oa=f6nSNsRoDELEOxTDX&~2@S{s~LFfMF5})6@#8Bp%;vdF;!`kBL^o+m%>Jo9# z*%^;Oj?c`6!hgef4e~#yhnHBJfSL`)cHp1??h-TkWw=%7+|>G#z2>67a-O)`D>lJzp`YSn>(2rhb zUV1(d9fz@2_z~GVGUu#^u1Rep=tVj7Y2vED19IfXPsiLX=F*|(uvad|-?1(>{yJ(1 zP0nxR>dl%6TNg!!%L5%j1$&)y{TM&d^@*A{(%GxZ|pB)EW%$~lTNe-!*e+WM!x)J&` zHU|6Ef^_(^nM==DGIT<0DfrI$b}|0mJPUE}@eeWHn7!_!OJTz@cMUy{`I^jS$1cKe z!uTA11V0?Tfc_}d)fL@>`8)UzS(_JsJ!@K^^PtCLTSGMFGvaH+j%HnQbQZ=_qT`@f zGCzs@U9i#cOEG?*I=^t=Gtn`LtqULUYtqBQ#Jxb5A>UKt9;2@j=fL+6cOL&EbyOzy zBsvfAUf75(%J>FiMiM(5KQA#e@tdP>kfR$q4Ka1_=iz^3z6Sas`@CUIVRSC$3!ukh zbK}3p&fs3tqOTA?oY++8(5!y~@rg}|zm4&u;6UGH>>cdDzsGY>f*hma68gKj9=#X6 z659`cl6MP!1awPsu0UTQZaPduzhS&H`A*=s!FS@nfGX$&*ofTS4dyH3r^J6vzVhg1 z*arCJ&}}(GAbqNcEr$P!J88(80_cSFr693+(2t29P7TMfx$zJ1{BB_`6*?SaFUYYI zLg7y*?jv~&^k?E0E=}A6{C%uTgg*^k73*b9cXR}(e}~^dVZJN+9_y~) zcR+uqro;H{&?!0JK-QH+r-I^~Atkw!qua9f4D@2}B>0n97l{9Xm>SqHtb2n#KF%d} z<1d3(_!$|WLH?8IZ`gU*!{Fqs>B#++xc&IG`Kt|=sCPYj3VdKZGkdH;rzP$r`;J1N zyvLt7(4Ek$Z}U6L*a)oah^>QN!kYHz&#Zre-x95}*GKk#fZrIuAnW<{UXcy`7@ZcK z0KEzQg>~W4$5|7Z@!fC?JrTl@`ysU)KzF5or-|Q;?uLznoe8&@pU9dxQ?sTWItue27;lT7G>F`+YmOdI%wco{=9}U>@OyJt<NjB{AdUEGyZ1gQ{ZQwMGX5UN0%gi3_2Ei2Qj0lVKTYy z5o?fpB5QY|zhN&kza9OG`Dri&R^Y3w2?b-&^T;y{H29=!`D zQr}7D=AtjMrV;Z!(O&FY2*X?t{86llhu;$237eJi8Q7Zm(U~iZE{cwVu8q!szJ-29 zTubsM#~*=T4w9imGd6>{80hK5$2a%EM!}E9++*%96#5wTT^jBZKJ)s>nyqvuG6B|Di+MuJ}peu>SRdT2`bnx%^-S=;7`H`tZ`x^cVW4Z8q+Q#&MfFA`8!}fUQ zdK-Gx;Lp=vi19q&H0bsKU*-4Pkb7@0Mg9|d|0j~uAf@E-8`u-)a5%910-SaN( zIp{KY2JL;uH-i^|?~P{8sLwd~J@CaCs|oh79**OuGPo^mIbO$yFjfkF6tUewHZ3>_ zRCOM6gZxu|7kx+nW#rN!^ACJ3@Db*D8`z+4I^(OsgXv#FZZF~6!7pX~R${z0_#k~7 zp{C$<$R&cNLJi=@qcamHsOWBqweZw2nlv;Q!BB=pO|Tl6m* z%d-l65#OEZ&kdf9ofYu&@t+m`AMB-q&j4V#UlHMF(tiW`#pel! z=^M%TC2$zJQ^5BaI|#oVKL?0oGWa^!P2IZ)7j18nOA=pj-Q+z$(^NDE0upU~$*hTn#v@IAv1Rf1OkN#fpdwd+_J?b9t zaQX@$GXTAX@X3+uN8bW)SK5q>)d1JV$0PhUMXoS>WcX2xX9c&RF9m!?a3kK^7lY4@ zY<&0^$fU!U2fUj4mcaK5KHs>3OdiJiT$Ek6;S=z?$tK2cfahat4>}jX`RQMVt<&JR zv;`mw-JS3oiFGu13pfe3vV#|Zw_@iR&zlVNjfDTmd*R3Q^#E_CeMNs)a8KISP&@QG z!+&9H9k>K|E&Upl5!{s;ETO+F?RP$NxdQHp@3-Jo>JE|S+d@L&wsX{Q;hx`$UTL>O#OC1kHO!m{{-+k@C(`uynaf^ zorU*e<0AMBI4k-RG5!sHNS+#boQ7WpA4WR@A2Y$9`Ap&jzq5}9kAUvO=YW@49}VG) zpqm}OJh&O3*<43AF*qf-E&Wv(j|V>negpAG1ji@ewAhaT?uXx;=(MI*H~4JoJ#uAe zuRz!6Ylok+;Hl{R03WtLGlBnx?Iy_12Un;63ZM0i0T-c72mgl8q`Ja?Cf^LStsxKg zE|GUb@JD1WBjY8e-0-L1pQ4)+JeRg9lmfgCzo)U$0l#tKr(mNtI1V@=I3{_-1otD) z3)mWkd=&T}$jl)x6Wo>@A7bMt{st2BL1OQS?7#56!H4km99#{Zt;jwB-$Sk$IwfiE z!{5U0cE)dkC3~*$dkx%;b~m=p(yoC|kK8bHR)EhT_n7_#;EO!#=8=0XV(JS&5x>c> z*9Dvt`RcTtp+1aH!tWboo4}7mzY=^-uphbAP)cxB#^d2D5xCb)rpi$u5*dB+k7wC?F*XbWh9)E#b z;X|Ws0(C_{48QldU+ckV2B$`@4mcmN6-KWDcrf-F(mw{>qVQhiF2R4b>w(M#YV!s> zmsqCIUlZL6@D}!$5W^vGVQ4!1LE1yaR+$4Zd*qe^+Z~{_;9uy> z0e`^O4ET%4A44t|I6eJ2X;VSj$)f_kUNP>4PmGTa@E&j-Y&?U%g^fGl0^l}`t%P5L zjm_Y};9k&m`1-WxX=9MjQS4QOUj}ZDUN&%Da4KT(fiE*YoY$sp)ZjYf{fVO%K8}D3 zFqQ~A+rc$y=QB11{Fw1hV3V~m2)-_K2HEx4O$ok0I}Lh;TtD=xAiI?MpN6kOtW}U5 z2mVA1$DyI%vB+`MPxoPo&=l(nMv5WPy3B_HEk1Y9;H1( z+Zfqt;4|Qlj5h_>g?`ar0(%X?@xWslD*)btTs7!2bc_DVwEcND)S$h9Ol(>=z9)ja zF#eD>Ic-XQ7s-;Ezkl-k?_2KUU%dA&o08wJxEKE7HNxH~<1_DV)8ONC3VsJA|1Z3E z>&|OrWBBpN#A0rvfv=+97n`k|PJb~xiBy_5SZ?c}_ z5m#}j9Q<|SoJ$Nvz($*#M%S?7cpey_xeiUHQ<H@J0B2KZ4444Zx4=IFU;Meu^!fnw_Lg2EUKk5|Eb#{)T=ja=D#^zg_cQ zG68j8h@Bho9g(X6T?XIb^(ry=I5;{rHNbPp`2hSSV!KHUtHDjk@jP{&4{naVrSvZ% zkBRU{u#q0W!@-@2Eg8N$f{Wwx3^r?l>oPwU^|?qbOTxdw$2C4rhyosB&l#W1_`ogs zOr?&S^X7=-Yhq%@hsvCN0S_RbSlD<3o=-e`k#W;FrtcQ`R z(~M2SZ#?*jw6oBU3T~$`-zwkZ0Ds1=54pS4<3%FsMUL(HuEs;~KKlA#?*Vu{^Vk@D z2|M@Tmy**p=sb8T`Z>wrG&m)=7+;=_N-Yk-$Dut=4G)5U;VTQ@ML7U&PwuCPqZ2-M z!{5MXAL_gloDP`_#5W!so%y?l?YQ_F3%`vV@00Hsa1L-pZ1e^nU|dFjIDMJmZ&Uj& ztjBoZIjr}G`0;^@BD0Nqus7o-d>8b+`1qEPHARl;Sv&W^lkxE$x(6;!&SkLQ2mS(l zKIXk3G#^|I-K|hZ@ImU+mV9@UZwvS^=GOiqc`fiOY=5DarNQM{GhS#TzVgDS#r`Db zD?RulpAW9ZMpS%7hEIyzGpG*h!Gh0^otcmhj*7j8(5VE(i2PIN7x|xnpNGwZ&{1#+ za_tJu2LHm(YT{i_Y_s6g%KT0X)dzpqIO~s^)d9a|u0Bzl_1LHaADML@m3hbuF6mNT zS>f}5<1xUt#5#l6lYwhd^JdK3T*f27`^EaA90pgl?+NnX z2X4UlIQa3{-2?v!z5TofYy)Su>qRZPfzM<2CiN_k4SW7Xf+a_=_o?jWbXI6j*ga1J`D|VK{$7Q~2GPVpnpIR0nz6IcW zJX4oK>!Dfj?^stCvDw2O;~razUN>+_Kz<^te{_Pxw_9B?G;j3d9l zp#c0``0?m{CI2V|=Z}#&UQGz0AZo7n~MbuaTPp9!h>SnD4ZVkAg2lU3wE=6L3Lt z7(o3SflGt)Fpm|%<)Mwlw+%bxz&?CMA^yAAc#r&d>{X^NC*kKJbBXcA#JL~7FZtzQ z9d-iGV_nVXK4?bV9pQ5kYXkgi;2f;Y1NNo};99KVvE*0*TQ}&-z}OYy-V0uiPFlv+ zf?MJHH8u<5e+7Iq;;n?v7;tOWb{#t|@E3F&vj(dZbAI?Z_@75@@_@6jhFftjD&St^ zkdfH0Fn$W%ve-MuJ$C~9p4#3d*6rYT)Mf{B*Pa|Z!Y4;>C$f#eh4J;C{tV#e$ebbe zl;B1@Pd4(bTSqM-z^}mGBGy6xZ2#NcMb^z%Y?PwTJJ5MS92?*pVyh+b)dSA~Hz&4Q z;4pAT@~;lw#r?5{`!GAW0d~$%^B0UKfUkkQ0n|(dPa*y?#QGZBlZbOOb-YIX9>e#7 z)={5-XwM*jiP$fIW6+jIuA-eIyov3<$iEwSKk@}=TR@qavyJeZcur-8pFvC$kV_6$ z@LPvmqk@l+e^u(xlr{?dL+V?IXP628#yZRleJ7@(=)c0|NyZ<*KjWFUj9kuuN0IAJ zo@WQa4Vc#|$ZjX*-ZkMOw^+ux~|giI9b`V5?cv1N8_;HdORWPVdo`*H9Ci6;~OMuBV5 z4!~C*a6Mw4L;a$X?-S~IhWV=oT?aQImXY{A2|ftLv~Acqfv*xn6>PKv&%wue@;|~l zD8{sjK@0q%!?je9pK_z`*hh3$gG6$3sl_mD~+Td89M>hOs=Zvdyl&Q<6k zKIX$;K&K~ln+u+Z-3;i@0iR?10{AgLX28E8)@ZbSpb^{)>#?VT_k-QrKZ1fG{*uwZ&_>|~HqP8`_S?SNp8b|}aime;mdmXWF!296qFn$|; z8M$_%9Sz+9TH@G+mYb`;)ZO-!RUr>Vg>C<{I>A^Q;fAF($S+1&6w!A+1oi@mDM!&qwS z%EPmS{MYi{Do+Z&dz_os?KI4LTGkJEUq;qLCTxOt^re;wY2hE_B5vd!bKi6X&t_~h z)GQ~@$S~#)dIA3}2hR)I?wPswzzXu6lJGu01MeNO^Z5d6z?YTZIg;|7W%$L3`28n2 zbCQi`FETHX9|pdgntLuicC+w01Ya832A`MqF|l^QMr!a1>hLrk&m7*DJ)}?Ny+?0y zI0Vj(?YF!xE(TxYeeCLFycfalK=_*2%7wpt;4S#r3e``?-vi;RFg6zXUi3xac@U8` zqkxC=dM4TLw-{SOeyOSRIqruA;GV?29ba|9F_FJb?V~5a54=u%S*dvhaGjJq^NDYK zCUUTAjowJ`cxv_w8b}^l;jb}Ple*oa%|~sEqBjlPG!@SQ;;YWu83X?q+ee8fJ9riT zF4;Qdb&L9bqps)Cy8<7PyiY)Dz_pmiSo!~PP-wa--TY+`f@dVafMesuM z4$!}Vd?LbUAzl}x!w(_m*7$iu`+&Zy*rrQs{l z{zNYdcn+}?r@jI3JL(dF9B;AK?xHgSxkKcYA3WW|dkmf@-T|vE8sU034fn&dT#G1G?$pS1|TmB~EJG zh5m`;TMgU@-JHlO*pCCBh}yj%t~1o}7kLz-7Ap9)muDC`jCFIbFvkZND@`8Dz$?(N zhFnJQ7V7gaa<7OnIs8lHT48%J>thr5;0p9-gX8F|0q6;HR2jZD_D?`r!HtPw2KPi3 z@EF!W8rJd#VoDDmpe~QdDHZq^a2iF^rkm?*RVEJa;C>8MHCsRo3k|YIB2mi~`>nUtaRR&e|S_&NRp( z_dW12ur~+V2+mE6Z_!-|K1Iz(Qg1i8PJ^$?T9{4FJ;1xE*A-%^3Vz9&sY$%Gh_M3v zGV*9mUIoDoxF7d2kIBHB@IMT_UHDD_zmlBe@tp90CsW(<%-vV+vq!`|mt4j}*Ws&D z&s@Z}6g-|<)FQrx;Q7SA6#WsjQ{kgv;}JeugD2p>EOF!qUq`1ZK6gU#;0KdaE%J;7 z9*$ft*6U`TL6OL>AGDCU+yw6-zemsp@N;UB7oDrnbogJi8@Ye-gLl~PNx)gaGm$@z zjU?0~4t!eL;ZO{)MICcP_BP6Y(N2Y`kn0DYHPdJ}L65-2iFW~X1{|4sH-vUT$Ke0Q zRyyju34DQ=9^iWo*ud{O@<>T;^WY26Uy`*j6daqHXCMalTd(|a>A#ktp{ZX7bLclkRSYjb`xu> z4>|kbTM}n?=oD)r6SnR^d%^9f-AB7-+^1dO2lAX433UPw=b5z($^~|FKdpcYaIa*B zUrzg$HJSoEp0zoWb$*}q{FxfGz~(`0oP|%zJa#9qcHk_;vy!pK;GOvEkIW!+i^CtG zeT=V^;B(l0Y1;6Ig?qxH)!LtrpJTt(cWVXPhp)8hwnj+wvcZ! zutE(cF_#v21+|j7?Z=F{Q)V&nTeQQfqlgC4|bAMw{!5f@U;mW zXTf!O{>&og72xcw?aRd1o4FkaUlEz!=w$^DWUj8_+YN3;8yOqL==*}tl<*m;({XT9 z=5Z4Fj{@JMwgbRz8LI^U2z!_D7Z1E1xo-ITK)Vb(kIAJs>+B8u0^(dwI~nQ;9VebE z*jS0&QEc8Kum0q>1pXuOHbHj;cpLUgGVlGt@4=VouSjl9;rAimg<9nX*Jn-iu;&we z69}&w`@Fe6)P>ZtU+8_P^`A^12Rq$>6#K2~0@D=p$ z&~FfPN%$$)ZiBBv;CR@$K@DPnQ-B+jQvzaogWbZ&#ATg40Z+td7UF3G?n^AOus@bO zHTdn={e+G0==a687knJN6g(IG>eO&7{C9LFp*sTX$5unuRA+Dn@DF^(K(;n~OV;`r zaAEKyY^)^@1007u8pCJC-V*BYn4H|?J_WoI+ld(K0j`dZs^n3T_}jvNBhD7Y9}652 z8i}0|_>72tYSwUK_YFAJ)hv>}`j?0^W+>s^D4J%1s*; zI>ef8NGSv;;ki+7vBmiPM*N@AnZx*Wa0mSNMWz^SdH8bF?jL+) z0e_=E9(sq7ZI1t$@QoN70{;OUJ&AcgdFIDYU-Wu_SF+Ym@w$`(U-{rCA-@;?HFo|& zCJBD7f-^F{1RHh9aSnU~*Ond6t(3_adg7*n7uodJcF68^;*W4xXBT_iRac#)FG6 zJ_-DV_HA~2C1Q>89{we`RZ?<@!80Db13yD}=DlJLcf0oVw!d<`G@nBuDn|349ReeFiPsKXaPDPw*Hk z;yK`}$c_mWr0DLmN=NOOk@AoI7vA~O%k})D{r29#>}KZgC=E19aoX^|>Um|B)j5=p zy>G*LIedR?TXwhk(A&%R+PdKPxlf_pCnRf++E@QTV)L*kmuGDtyPqA$tbA%_r6K*P zLz1^a`$guFP5XQy_FfC+na6z;t2^+YSu$dWhnYNVTqkXv2)M7;`=G`=0qmuDvus7@ZM8Rvd^MT zq}V$@@tqvuuZxkw-w@5RQblczZ=H0`SHg*-oP5SPVTzrD99w(?m1kcc&qnVOBKty= z1<|$7oY|__yL7VmCfZ$GoxIt|`LkJro`Oarv4VymRYj?$xWxVwc|@O3aen0ROqT4u z`WK>kM=q-$(5HI;QY)GTeYHjX>|It1fqwW7`-A)N?h*a*guN>6@YAb)+YH~U&F?;?oeO8Bk%>-AZ>Z$Z< zvg~^x4tk-5rtMuCHMSnf3Yrx)7 zH+Xdvx&x(M+Ber3=WhMLS@E@m-|*c;g0j~|^Fc_}F>>f*1gmJv{ihf;-Np^Hdhv>6xKq zRAccUwT)=}D_`?u^u9FOyX*VQ`HLYFJS8c!_lsCZ!vbZrYFca4-f5ciirme#?V|n* zTtj`CMGS-af0ujsJMP5)85~`?Egcmx@YM6a(4!mWh1V2hv&`egmMW}lFh`;_K}+T; zBJMuh#|tQp(6!Gizlq*q&G4r6k3pk|ySF?}J*PJ@+l#ZnVut1*qh;>|`g_+k&UCkq zxic84+<$SJm~9t3PDDZOq-QJHvM-F(Q&E-L$mDZh#m74_d?*my2glyiCWci{L|dNS zMV^cK;B0E4%N_2$>9co#+ zUA9Tf=iRE6@+A{dF2+{yeCEQ!Q)?&oy=DW~WB)QGwTQ&FkY1R1$}BbX%=fp^d|FCx zM{F*UuTskn#yn-ERNhy`e_qVXGX1k>uULRqRwRmU4Wof<9k zWugj=5a}v zI}NAbaY2D z8~q=P?4;`C&kk(Z4Ws@gU2~+APBy=7PYo1yC3kus((Xsk8(RHkojU*Pc$hAgk^WI~ z>ZOhH=4$<`+*yww{M9eQwK` z@znYa5NNCx*wjUyY;PHV!%!Xsg+$ zEj*NG1!|e)JbTQfBEqYGWEjmHL>zZHtK7EUKuM$zcdDz2rz&svUCrgI&Pw3vAK0zV zv<^sX^qtat=X~#guxjhiCGz&tT7LG0JLZdqji+)yGrQ87sH+OUM?}@qiyV0#h_&65 zcsY^Oe^i?x5BObG+oWr?@iSoWV!4$5H`X|RGqFCSDXF~G|EQ)A<;QeyPh@*p&!p_K zeX5#Y*(QBgqRUM*Kc`#=&kzrnjVQ9Z;EQQ26zHUDz7aehoOKf}MC&*HJjH2O;2C`n zmE=lY&h)j#?44l$ytcuorY2Wi6NoUE@?I*bq!u1pIx9Alc?B6iqs_=au~WaP(n6)U zBXPuNWj=B2Ch^;6@Y&aX>eOBLC^yWFdRO-WF+SI8pK3kPGXrilvvtd<%5|YrRoB)i zhniyYlITK~s=O&MpTW&TcKv7_*nQMLEVx389g=AJIMZj38`0}_Wtl)sMpCm^c&U|y&7_5p`yMeLdO2F*KeNJG~cnx7Gg*EW`ruS@^CQb>;aHyjD|**3dgD`P92b zS?kPH_&9$CWo4eS?31IopQ%J6V*7#Z@V!*iIP)CT;Gc9{WBrBABIb50%yY%R$GtNU ze)8{V=COJpK~Rv-&)5q&a1!m-#yt53^E_8hsoUqV{rBoCDsS&Vzcr9Wek8KEtF}?> zy_ADj_(_+)sLws4G?u<;`K7^TK-4RhV!0c8Ckrd#8f4^sZuzj;%5U$Gp2Azi$l`yf z`Q>DK9r7bPQB^)>aIUUm#q{Ur5bcrNRN3jSz&CPJnA!YQ{i%gUP;j$nO{gAIjShjY z(p#mFOLyBlaNE~WJ|eqoG#2<2dWAgmtc@y1Yx7--$VzTC1#y-VvBpNm=dw?EVb9Az z7*22@SGia-#6w_KO=GNvHA#>W(K)oTI zMe4wRo@$GnmHSN0%LO?%|DoT4y*2H9f~mK8Fi_ce99jt_tW=)AMO{1C!>&b2eok+; zPd)s7H5akA)DB`fp6{b8Os^={P^Y>-8-IshL*t9Q{o-eFC(bQSEy@MDE77T1@G2WP z!K(Rzhui8M)!t`3cr6uPVki?udm|(tK3>8zSj2fwSkD)jtyIv0XByc1<)$;*u)3mn zKA06fO_4CfUF8Rjp*r>4!4uEIZC&)~#5OK)M@V%vi^_@7?qS(`?T%yiN4n-XqA$_5 zJd<7RL@wtgdr$PUj5Sd#*Ait-D1T0C5;a@ww)dgu9fFhBDb-RJxx2~x^vHkA=W?eq z`2&@R@SZ=Ocb{hYlVYu%vR0Sv-+2^mGg$16KxZ}eSW9gpU_o8$tLe2)@iP0 z?h)R%p?k|dbK<_f!Mi>XeooH?b*Z$`&d+s8U*+rjN6cBQXxNPIPiagGykbq&C$1;z zt-xnt?WZSr0?I6AB%NiS`ps`}-e2B{-hS3t&m1+K9K~NE726yE{JnOy9!#^gwjfUyIex@9ym5XrDd1h_Qw0P1pQ@eOkq5X|vTV zV4tg4Ldq+jrV<&%y}HnST6lB0A~Ho(7q3i3zeM!-IuGpr z_Jk3c*Y!6vW*Q~93lbu^Q3{i9iY%JiB3x-*i#%_Xr9$Jr^aY)>a#CZ9)K06bMK^=z zPHgd=Hs3gPjHxXq>b8NHa#Sm?F-$M1P1W1W?akZfI;T3ljDP(5$hf4pvvkDs7SHSz zM81A}?3Ndk=k{L;Tzl_~rWH-r!E4{E{kpkNIyC`8CGsV!s%X*gNRglnR;2kv*agBdT=l zWV2Gtr)}dum$$n1T8kt15z$1V{wtaN@M}C4llfC%FPc>WY@at_|D32d^F&Z<$ZM6R z`byEWoJdVpMRaOopQFTCfyn=*|1>_Djnuh;QjFKd`tK`~l)@KD3ZCH2I#Hu(J*8Lf z!|nz8AZM0r**?Yxe(oTqE1svqE}tcN;;2Q{GU^fcf6rL?ZQJDF(r?<9_XF=#~8y9P887YQ$RBn@X#!*(WRYQ)4SPv?p?B^_khj93!#~w-|m>E$@Kj zw(>Y>kvdJxSok>a$?QLGxzc$4@h&y~vU+0qu(N`iV|%~S+#TDS-I>jl{?kTA2Y*BS*{S#uN7kfWjS0tzG@ouxZ2gj-A-7nV>P4eyJKNvprU(B_)2v= zJ`wB7-l2R3|2>dV?uqPq#-e${w4qoX?R_uq0siP_?~Lu#icP;gUTd(olWw1q(cwR9 zG#JBXGk8)Rf4!jckCE_5AG88`UU#`rKDK0Tqbht6Z9*W-pU<_;8b)O!83UB{N=dmA z{_T_RxHHA(-))R%B9>)VGbeg`j87BM30@J5<=%Bd$83rfBE3}JEwX9Z^e*& zBj#hmA3AM4lYK|%y=i?EV^O6&+9~RAUvTGw#@JPg_Y-#TRR$ zxu2_7&62E@)JEI?h9{S2>UFOEJk&+wx_W_iZ73=kN>oYbP$<-b;TjNWky;t|A|8N zCSs+ET;0_>bbi-w(+T~RtiOG;_@5@;smtHoE%id)0-`=0oQm7B$(f}DVntk&-e@Z< z`wS5!Fj?NKwsuVbrxdfeT13*qnE_kRM_uec0H;(VI5jWkGmVYz!p^LZM)s!nu@mWX zb(}d`sb$2`lY0|+-+LSQy841AH1QtSTfvy5MZj0u(DSLZl0#X7&!WP1E$aH*nD1)s z+3B0@3GS6YQshue8KYD~CM8q{Iwa(q5LZ1aWuI~HmF=?<_{4;NA4=nH=FF7c6MhX2 z6x2LsKC^|dxV77RLByZaZJ!|czgJ&(OX*?Y_qj6%@v%*LAnu89*=uk~MYTS=F6afc zDyB}QIA4u;4>~g)F8gP@16#kuJa8t27Sq*EIxg&8HgZ?KR)%zTI412SJp;7TmkDBBot*{6c?e9-zx;it&+sfX)t zzWKaZJ!yM)-=ubFv2{X7*6@x)`+R8iwbw1A$}9baP1{xjAveLvbHB4*%4>$z-}++2 z6<+!LMgNPM%rY8dIs7VYuTtfQmLd>eNzTbPgM^n!qIN+U`+V=>uF=v>+F>HWv8?=zMtV>gjhoa*2$1wyMiM!P&kVIo?g$z48kEkp9Sh zg}X0{yST`AoXi(#{&VG%2aB36)@v$q=$R2NGFYt~IPFBg#k9{joh>y~Rw{>-Sl%uE zOQDrv%U|>5a4(~3^`SkU;Q2Y*(O9b|7Hg%ado)q*5vC>LYYi=edg%j%-+_8-w^z+% z?eg2Fbk#MghH4Q@%V?hQeGK%H^Z853os|4$G1pQwe_wp9=Z|ZE*-7(Yvx0I^&*N+2 z>gp{avft+(KqP!+h^t0m6LH3sipd%;|L?6`@?C4aSTU!)!~IJ_tNW8LmB?Rb#zx7T zjJ4kD`b;#hllw2{KC$iXlP+O*Y+#g@E09dStM8PL%AI6IIjW2f&3*uM%NI|0v31DZ ztgG86C)(Eq=P7v;>-G4?cd&Pxb4PU-E2lgj6G_LFhuBDrwG7r=A`L&0E2!}XnRa?| zU!_2AVbN<24-UA-SPTBM;`sMJVU?$%`>WMMp7KAVj#{Ykl5=HqpXZuZSzc(U-kRRL z#A;u))Fn>5t(|QClI(M9o@$FlwymAf-NrYgz47)xvz5g)O)956_SXDQZ_w^%-yBaj zZ35cE{6D-`%tUfo<%uV?yQObHP{7sMo5y?6;DZ>~YNt~6z)>@1UA)>d>S^Ry4pPIDZYoEAdUzfb?tha&ao^|FN|3xXT z>$=)g-k=XLtN7C3b-4F$rv{CrbwcBSRa1^jUjgNcR9p=|Su4Joz~BqL&Q(r3WX*LQ zqE@**bv=dD1IA7z3ZuhB^_~RdVjdF)(rTrJPAa({v-8wAA?;Eosps`io*01y!rwG8 zYZtBgo<#md|G6W1?Q$+k+}m0lJand1H8Ss^9X zlUtjtx7KB8sJS@MTuB^mly)3Z3}f#4dXD>Qy4LwN6T^36->R>aU&^VyHQ?WxrJX9- zib(jisnVf(`se$|HRH;Y(rkY>Dl9Rt2Rzf|4m=jvSEF*FL?6i z24oJnKe-<}vPGO#u*aKCdga`Uyj~j}_4R`D>n%d7qnoS2AG!0?6S4BCy61vX+P7Ve z$vTN*4Rb}NVh0^tO*{*o`fV2#;j>-2zkbslN4aE=ACmn7#YF{P`zPb^FFBi@(UnzMd)Pc^aXC&)dtP_Xk-ye$IJaOha zJi2p60W07{yh$oyt`okd`z7yTsWPW6h08Uj+Qrnup39tDSVYQVcJ{mwb@jS3sBh%9 z$}_ErFZ@i(W7z8((tP3{?758WC*r=TrBm0K=l)NH`0SOw*v_1odMho4D~fi}o8C8= zzN1bM+s$gep`LTrVsY<bvS;?L=rL*pB#$~0b^7W5rTDWX% z?TVG%Ou)LUq!tisAivigTK%@vMknsNqU!nmjq(4UeTwQS?}feFPDS|stRp$qqp&(E znLk`T(T}g6mI}BsxstojxchmN{Wo5!^b?unV%>jHZ^5T?-x6^gbDo8E3}cz8D?*09 z?crsBCrsFBD#+REJI38UlxvdzSgkJ&x1MNG0=oR&^{-J-sjXyC=KUeD1sv6>YG+|F zmoZ9@qO?+qsPXXsH00fm;D^ZPIC37(NvoM0JaIWp8m~?=R)r+jJ6Tte4pIYytgGq0 z^?b$>{e#|BFZsuu+BWUWW4Oec{zVr3<)Z%a?!S$_|9g*wGUU@-B6#b)#!veM;u1z& zQ7OI+7>dER>ebpi_kLO0vho9~zEwn4)@9?k+&XYd`l2*aF1x+H&RArlU|0CLmHc+-*-T!C zTv@%hs7XFO%v|8CMB8Hciex=@?8kD==fRa(zwU17t>c^Rm`>!m?7d{2#c~Hx#X3?(QJGSD z(=Kj_vKvEF2awW)afa)e@-ik4juUeHWeR%L=b!T=gA`vQbs~B7JeM zH)_dAuviae^r=M`dKKg=ZjArx{6mj(y@?NF5(oxwLT6f_# zrzT5HBcbXboPD_5mNw|B_ z&O?tK;yp__$8MH>$2y^>M9#jZG4eiCZ9b?`&T`&sU)xQ*UXifxFVE zz*nQw|IAY<=S~d9)LpD;*0#Dyf1vV@L0ta8+Tb8R<9XWQC7+O*?rHBS<$7g|miy|4 zS<5w>AnMZSCC?K_PV&r6Co;XGD@|R2d&$A~ex+0Y6cQh{0S;ad?-z~4hPhq@tb}DL1 zzd^RVHQLwK%q_2UU6&W?U)i4fhB{HK#Ja4K6U^3YxEWd-sh@V(JJt1y7>i1I0ui-3 z>b#JxtY+|hSR{R;{! zsD>9se{J)b+QT!ZWno9V4j}F=aMVwmi1SlH(Ec1O-p)cRPxO8^wIWe^_?~D zQ(}_k2_=rVjPJbYD~#+7a$2X3q6V9($u*JhKI@)zFVIp=X4+>p+gI&i^T*GTzGBu~ zZKW|#z3(oej#Ouaa!re!ey+j9+tL*`v>I&HYwDxGVk(f#9Wk)Qbs{up8GTX7y+2gd z$#<1{NIol7Gn!esUCG<&3W2FSz{1=g^yp3XeB6=TU`!A$* zZ5=)1^nqk?QqhFWtWZ=@oHbh1=x$UKHFzwaMl-LHR_QCO@>`D45dWWyoaEfd8mjg7 z-M5{%26!`S5tNj!f$r1VO#QJj+*i>05oqef+7!zP%wI&137>5|&-}O4vBepcc)q=78)^zI?zRoc+Sj(-P zbiXIo9U?Z{QVXFmHMB~~%O9=BuDt5M<{53KT2s`sjhI_q#MllzCeYp5j?G230j>|q zOZQcOUSWy#Eu;&v%EmcX^OJvdXrlB=x#Mo3ckvYQHS}e+vKk+-pA-v{Z>KYJ5&f;m z@xJ`cdZ%CcpQ=_C5oFi)dU6Y25quA=t)3c2V&$7tm)))#BBI|vP7-G@2qNoh04KSIxwps~BYUg|M*wUF`YIkaY`eHQje z{i%DiRNCtAR3+T;17niVZ>T9mJl@ILRQ#gmtTNv{S1Y3q^RWUZ~WOiC)|tdhH{ z$n2A2JB^rUY!S=9Wb>40vW2Qs&s^n<6N5AwnVX{WPt5nmL2nefoxIj?32zx}_pS_P zCQnZ650Hvl1&nBN3$>1U!n4|pr{{3hcK7gA4plXU8pBfr+wq;e=b5eLP8KJed($b4 zqy$9ZCKt_>ko+pBIfT?4QLoNsM7YSV-PAU!e%`S-ITW)9^IxS} zEPp98ci@+?P422ldRMAn(WzxBC%X3{pBhqQGL0#9mscQj&x)uo#b-|8J&%~({KDqn zW^OCFXSueMQ`5)GnYd3kvF*b#F^>tc@X(3jn|jn2Ike8U$eBG!%p!V2M!yQ1ze_X1 zeL=`Ik;a;leUHIA7+j9!#7-8!WqDnd=1Pa8fT$Lq_{hc0Pgb*##eEK1!Uh!lKC68r zqTsch2x}<$o#=Qc~ntA9i&UfX-{x=uW0 z7~P`TC(CE%Z0#}rfefYd-x2~l%}nk`j_o9PE<*1_;^X&gcRPMYb@G{jOeG}?+;yjV z5&Ws`i~OutRAoBDL-R|E|({U!n2M z_sYDgbs+QjuGpc>`2?7rk&gfDMgm_^t(iYPKAU4Km%F?tqWd-IIuShZ&UED3`R-^Q ze_^?pvd}e3)T|5R8yxpdyj~-dQ@1JjK0?2t9K`0oM4XnEzjX0am$IsHtViM%;I_Ax z^vv2tTt_68o?XtW37UMy42NGsd>;M0)zZnisORt>W8pG(o5MOP@?OFmEk*i09_P5z zdcKL72$#G|_IZhFuqENKpPWqUM&%DGd!72HL0c1cf*KE;3dF=p0yVi>TdpGF54UHx z&myxAO?LJOV9$Yn*&kpwIE$D4zo41?nlcl<9D4?|=TEp(z)6uA0*wUcMCSo?4eAB& zX77qLk=W-Dd;_~Zqq46BxDtC4q)*O187!F8@ZD(hr)7^L@F3d5=o#QB3E6uJpK00K zAO~+tUh!3Ri?2;3VPAvO;KIq+(=Zi#n}FNmCn<6R@ZAl*H!+UkSM}=PY~UEkRRNFT zD=t^qyTe63S>UVFE+YQu;HB963Z2i&o_O?}m3|j|JmP)ATZ3ibxU{**VFq|Z zB65Vz;5!U{8hbcIf^vWh@XuP6`I1ItejWJ5KU>Gfp2b($9z|#GG5CE^i8BiO*MN^k zWWNWfIPqVB??z01YJ3L#nHcNyW@9^e7x5Q{-cpa*@DFKkkGxLdEFsi?1Hwvr(`?{I$Wo zsl#j5RvB;x?CqvTh4Gsgz8`g|MoekJTaj-_p2bqImf?q^*ONXU_yhCXm>7TI;~=%G zPaW>C-fzSAB>zI>e;QnwwU(DW4}+tSUu1L!MrMx~_~KAj?60BCO|BEsSq)yv8p}a# zXGUW$68P2V>>;L!;B5)mAA~j870g$S_`Hk#NZ5a+3;cK1M0M6rBO5bsx9}GgypgNqQ$Xkttr zk-eDU3(|jwc^(DMg54(6{24Ms;WHCMQ78<&hdgfJs}VRlb9#Vv+R(@I1ilgNUUE(b zHio%@H+sViQwFkcy{8qC)h*nW$yb=%vCG+*VLjmz8ir{ zvCc0u4~f80=&wSJcH%>YPmA5=)Ziz%-p1ZW;v0|rGx+#+u0Pm!2mG0u{Gd*!z)|sa z89RB1;~2aJKaLoWfcr4Vi`XM*4tNV|b~OAs=5H$eIpm(>Ybf{*`6t7EAMj|_@<42_ zp$0wR%dp0xVY@rHF>C#p1_z&cJfn0KfPcc77pq$`j#L^R+TbSc? z@HL6O4YDb~U+{kt-_gLE$zetSn-Rzt`6bNfQtp|vV3WBiNlbge!>Gr)+uVo9FN2>; zT@!_|KP|X2^K%^P4lcsF4nuDoYoIv%HR32i{>8wrb@m}7{wKupg=bbr>aKa&GYj5B zTLL-@9!pJ9TkPotF65^+&=z7G1uqfjWT-p1SVZnQ=BpbxK5ZrD{V-I8`n05P4()EJ zJor6r7iyXg+@IQwhu%Zc;q#I6cgO;7qAq(N89a`9?S{%w-{)!AdzQ8<^aSkT*-;I8 z4Bdq9NL}_qJHUR{eKcr0_$uv7s08)e1V4dx12o^3qoz@y0pJ0&-=K=D(WdZ&X-7fD z!C6_4qo4xdv$W5k#;lVB@U3b0L9xMExTmW?k-*z%k3)G_4;p-B+7-|T)?xFctOM?? zci@aX+dDAF*BCnl9|NCf$zwk_B6S$V9MvMO_3&A!`+Mea1~>|9C_Xyl!Jo)4DYEIH z?(j#Mi|o{`5jZxwubA`t;9(N4cf@oPDi43hiypCO2LB|Uk<48haCz!8?KZEq%y|;{ z+t~dEB?OP8-nXH+;Nti#hir6wc;I)@7A2aM+!2NG?zhTEDp6`r5QkWC!dlUJB7Vm4gPj7(d z@=VN1Ob2X?k151`75mHJW$w?E==1=8r;SC;+S&ao_Z)ssvK9)!7v(;!guk5NeAs@& zcouMNCj!)TyA0?0M3iu(b$-VY+Lx^)G{`{GlPp_YZCe1M7AE!o18j+Oy&cAlZ$$S z*MepId(oc_9*zDH>>Z)@z2Li26Pi6Di^Au{-az{Dfvd#lcME(3-+z4w?dGgPPcc-w(`DLvTTI7!U3Wb-?a-#@y8V zAo}~kPoZLN?laoH&=2x5XcI$o`A7XiyiO$oH#XR(kNR$-23N7Qo|rV&*PTy4c zYSjKCarol%T!eb~c-^<v#?hNLxE%7DARwncxO1!_KuOji~ zrRH(jA8R5Y9`6;w$I~$%=~*}6GUU1gog3V@ zqu@Ky--&hvg031iOeQFX{st)% zR}Oe4WNDBUUKiO0Ob2PvmmoKTXz)kK4Vf3&ANY0& zR0Th{Hij5;gA4Ejqed#S18gz%;GoeTzoxIhA< zxgS7gMjmB;uHxqgcrxa<4RzB6K7_j4f_)3#mo{ryTPfpljk>soJ_6)P&wB!LD`U50 z{bz%}iixeb)C6s>Q5$`c$$3VuhhIT1=DE8V-hw`T!5H3KW}{z1M&-S47JMS_sRuz9 zc>5H@!Psv>d-SyU)DYBxe?TUrmK%YT=zEaoL3nr<{67cIQ>*Ey^)g@>IEX%l=l&V^ zCD0nZ1NA>0RDr)jegJ!EQyP6DF-`*>xSO?68JO_?$k!kn`FKqJ<{=k?oA5`-a^!I@ zd_6Kc>!>CefZho?9@K|FK?cZqEqD`TUoa1(LqCE%2i|~0=#!8GK?1OWeh(RA9P%eV z^aJ_eW$<%1zV~I!X2cc`6d)gcxqpUS9UzB!;pxcr;Rw_{Ietu^Va!W+WHYdfJ~BuE zuSwrU^vl5<$k@F|`;GMd#r?X>U1~4u1D=>RTlvnZUqqgX=zrMP^^e7Knfx!|_ufyu zhc<-A=Gi}=_sN@)$Rj%cV8iu+_q8POO!!la_m_wE9P$~jB%i%{g3H)mjC{s3zchS( zc%I+%F9v^r>=cFPV^r21dcgHu(on$;Ex76o>qPN9gB~QK{q73?eY?S9-MmXDTxZHeSs=`N;pU#n~9ok9g@5!e|T+f(` z*b&#|LJ>ixT@w`WGg5L(yZA_kYN5fB0s&kN4Le z@J}9|EwsH&ZkwPdWllcPr!Kr9wsoE_h2RD;JSFefn1^iWN2q~h0iHGRU+{${bIiKF z^ol)y`RsR!uf!jtM<$-EpV_|_UY2;*6YmuGTH;FpD&of&^sV?5k9ryb_mRt@_*xR4 z9)E6;nL+`Fg^9FGruq_{WKJHFn1l>vwWqjQlJ>AIQB5*qjbOi?1<3W_WmF zh{*h$z)ouPqs+}`u0@B(0*%SV0(>^OeunuuOg=iJKW1*afa3UinOy9{hmF{8?&f(z z|M%GJhVI25`@h2Q;Rfr5c~s#e$mv=?zaMe`8@U>V{R-6QN%(Di8G-LhxHlBN81}|t zKMA}Zeve}wH25^e%1oPd*!e|#0fqM)?0YD!dnA->Fk!Tm2IX?>bVrv<7x)Xk#aq?1& z->B``=qhv2(#3qkXUIsE&*Siu8f#MLcLDN}2mJ{0uAL)zef*dKlEULt>*c^z5I~Pa z9i<0<$n8Mla*?~=@D9i+U^99Af}WoI)C14pmy!AK|1f+TIf_Jnwu9N|d1+sUI-LmL zgFFd}FbAE`dm*=ia`1b|pP(eXE_rAIp4<6EufcrH2I=5A$XR{hf$v6I_9c_m9M)m<~;op!xWMSkoWODo|NF2T3Ci!{6 ze&f-Yi>~M+v6l?gf|p?~z7uy@_+|QT!`GbTsyO;VY(!(cg7BE20o)A~_&3^><^ES} zzouU%WHILGG`t`->rx8`;N6(3Zp5>Z`}@!@@C?|5AFJTo$mcO^EP^+~-br${2z@4c zA=<|z_P+3yJR@gHta{ z<98$KGCnd6dJ5X~XZ{{zt1q#xN48-tT|-7>9o6RAB=`^V(g4{9l*L|C=3qRrwn49f zUK4xQ8S^u?;v>fZ4>``toHio&ozNe%j!W>K-2xtm+&y4EmLNOhgN(hetnK#j`Plo& zx_*p|#@sYxoMrIC;1YTY+SY*|Wy~k|*M*!u0}a4S>YbGr(Dns!Zi#_S>f>hyoYyq2YQdeiqjZ7%a%ZAW{FHVb+Go%fpa z18BPgIhXh1BlwktbuypNU3=i=>096KPs}~g=OSN$Ht?*xA5{PkK?(Hu)O!;U0lo|w zm1m#^uZe5}4uKgw6XSw3U_59JPBHFy?p1`BME0ZaZ^meg-OY?Wn4BNSpPY%Qv*P@| zfqoKri6J?9Ok`Vduo(4=d<10TE`zQkqk$tusR44=2;LktDai8!xf47CjnE@8cQrvR z_z>iJPz8P*c?aZUO_xV6fNT!R!nYuAgA(v4Jj=6#cAzNw2IL^-Bm?{={1mxJ3*Ss^ zONgyM+o~o<&q-`wK@#{6VsFVc=n2v15NiT>LFVfY^AsJPlAH|$m6@xk=v$GK zun`{Kg`6c|3={5WoOEC>c69XeC*4*$gXn`!$Heji^~;_EeVAN?m%!u~CI59A>52V6t< z5l1|53Ely@8XShdM@Gh8S+EPeJhDI70>6li!+6W#MUmCOV6YT@9&!&@0)L164W`4J z;pcpi65q$5r$$x>BjNp!Tfi{*Rb({gz(d};qsKue0G;8DkWE1=_)O#mZ~)Xte~x?! zs=@yuFC)PVP#paw@-xT>Z$U0Ug1qpr%!h}Z)&V)uhaxjG-x1*}k=FtLoY%F1`PdI~ zFlWE>^UOh>0gvD+b65^sfFD2xn9G!45Bh9-Uco$g7lqt|N$^U1&R7P@^DG#H-U_)M zjDip5nU;&^OD*1G2HW?LLqLCcAD)MEKwtPhax{}ZsfoEc`fp;Xg#Bjl`t+X!n!>B| z?0LXg7qD9s{VD$Bvfszx(dnBD{a6lSvg0G(#LRmZ^j_454l=-Blb0*pd&HPY(U-HH zO4BbMyqe5=J>y1z*F{bN>wq6UCF6Di_CJeFfv=^34qt?P2d3c1=j?n}fv=sxNBC;w zZZM6Q-=H5tUI16%BZ&PpI0OHHoK0-;c&?s8pMhKrw!^dY94-mg!WSd=g3&y$=b(>A z{sdFt6?nck1mT&t(dca%CkOuahu@?QFA_%&cn0ELOZ?HP<&NmnSziO-P2ol8+nreI z!JkoA>B&_Q#;b)s0Ux7)yzqy_nvHgC@i8HKE8cthGhSSHJ+7sX$9oKM|IS8jGj3Px zeq>JGqfce*4cL7PufrG{nYX?049GdGsY3X&1N}Mc@;GaKHC(|~d19FbFO0neHY9AJ z>&)FtFdqI7bLj!O8LtQWL1Ntun!$Hdbxf2!e2I`rQ7v!0rZ5AT6oi(e8v zGwW=rU03AqNmk~F=l&`D8$w+@La&7nqiC}h-;SbN=vlCP5Wa!@G-2%h@b=tahRN^r6+d zq=Nqwg>_8ZRn%T`^l+@D#NKfThHc8NCKM>kKl%BT%!Y!P5*pKap*~A#elTO$>D+l7ILD2 zU>JITWD76{o|)Pj3MRo5QEy|x zRnQUrH8KIU+YnB>Wc7jU3cZ5qK+VCpzn=J2}md{()SsB>u?o zJH#3lpS|$v_&OK#wtd7-ZTuSnj=%@un-8C6gFWaMk; zE{I+W-GxtQcwfl`AIS6GZLyw+JDtJzOSCIN-ok zm-sdbeK|Skh`kB$!^HW8`78my#5hx!lQZPZLQhV-v&qpauBE~5PU4A39+sjfK)>u| zEyI5kM`mIl2v5OSb*cHZ{#tTpfe%3hkwijK+enFlc>EN^BOZcpDg}J^*JlAMb6TS>I!+w8ao&>*4 z{eFfIA(kQNF`54r@u(SiTl_i9xN+dUkvp*0AN$eK$5Q_ji0cFEuP(Vzv2zdJl^o30b$)O;7Hhhp%KUY^Tpp#-5M-4;K_1$?2JP|B#72Ai7Jzr8%}Z(}195j_j?3f64(cEodSm1*@^^?>`_ShXSWoP2 z&{d86q5I%Fuv-8de|WxJ#Gf^5Q8ugljm?fFdKapaxa(# z|AUlyf0+oMjl2$G@_sl5JrA-O7!5y#{0;iTQ)J}x7uXECqwhps2A$#QGEu{zEqo$! zDYye#pnpNe%gpat@LtH}pa%Rd@&QPig=aE)YGiSc1wIuy2dMBYtcxL_S62Fv?|I0J z;2OLm^O_?Yxrc8?ZUXwdS)0bN?PYkt(wuBalb#?Pfk7SK>1ebE1&zW5|c-vGB7k_cp`5QF)Hg zuQlTiK(BxwYXV${C-TwH;(Y<$894-)JTI13bB?a}b3tdTxoAbh9&9u1;`0qFC{bqCM_zLmKj1RB8y zlfO@_o0cF3dR*jf;`G5IBGVGT4nIJhRRR`J(e2|p7U0*%eAGPhHhFsvZ;VtyfE+wR z|3zM(fd}v{AGEGM67+#3?!ISBzYq-k%ZUuRH537qF-^F_|s0R08w>YQ*Ux3sZ zw>PMWz8ZN4l!v#$*A1X7yg%{007HqnIC@0#FcTEA?~$Xp@YbMlKCjfcLC`6|ZzdErBm37KOPUX=MR5|97aggi2V>DoXW*Fx7Jz~18<2ZIfB0?W56}Z% zfcY;C+JkQBosfM&C-@rVdT5(Ptx9fGF^%$b#AVP6<9X2WvSeYZ`pdL;jF&z-M^TT+9U+3tpk` zMLq}5;IENVZq^|@0x}WE0Is4JL-qmt;B%0>!4~)x-ig>o7za*yqthF`p z?Zng=6eO0#=pN)2e4GhyNi5%32V>yJSts*|YZBuRM?Z`0pTsx>K9liJG4>#M2G)Na z*8KR`)HeE%IMfnxG=n#0O;=$(XQOQ;^!&&Updx$>Hr{{&@T=JEiv3xPl^=a1;|3T% z7d#67qz5_SDe>=b$48EbyL#_o+;HQvYYWxyBDKZNv3C^Q8LoNen;OCH6 z!D;vd5i$ul22X=b4>Eym=-H8lz*cxsWHGQFUJ6+nR01o}t0QZG(5HK3P4Y?iM03*>KAb*14a37c(kvT=i0m(rT&{}@mQbOf{Up#`W5DuR-rFvtjglaG|h>&U&JK8Of*liz|MH~bHC zHH*261YgK}He#MPa_=2AF`pWlN$re4&(C|rE#5a8!P|O>o9ofwRcRN4ddWZyG{e>^ zY^4FYz(YT^6P@_Ex0T;B7onTfURm@Ltg|!Jn#OqP(W`P@X8bttTwH$`i)UPTo*i5( z!24O%DC8ABE+*}f;XxkWua7YHKzwL~ypO*t@T&p568_d=ZKP(sw7{McnKgjDp|qWg z{}%7vt>KAzHk8B8G8eUgK9)7L0=^Dg3Ar~H^uxE38fz5%p zJbT~=8D~Admd4LbthtwrzlrD7On7vj5np*P{)&%($mMB#?1_)9Q}F!Y+6k@|gLg5= zCF5k|{^m$LW65Fn0M91wx8<1@H3sztm$-Hsy|_nroJHS< zJOa+ZJ>)GJI1R6X90^vD-;?M&kQcxScoXu!4y?YjRP6WbB#U-mYGa!0u)v-h<~Y%+p0Y)~B)rVx>+Z^|Uv;0b_XHEKG)P$*t85Z`jM$fc zvbRG5;cqpctd8=B3+-Ex!(YgJVg+|2KOpU~>>Z|W5mOgymA9dK5N5gUT`j6wO~#)dx6u!gWAF$F(Cg!r}#jy((?)nIvx~rFEHPkrF|o$y}oRLPGZIq`6^o}lsm$wCXAAh z+*PugVr>iAIL_`CiTT&*`Q=S!aV%%>+51|3Bko^VJ>Xx+{WxLvx#$xbUC}#wH_P3X zmx{gPCjU@P%*So`Xfal0@sm9~#q~)}ezxoOIW4c<(OeOPr3S&E`Psr@=e_p10i4KT z*(a6#eWj3mj)e-IsCFiJ)iHK(t)p5|`@4%%Bi96dlyjGz6vOyk2!6@^K}zAVcVf0r z`+2UPg|UaC@N+m`^0@dvUi*E#1^j6@_5PLF6>S;;#%G1 zG}a*aI=LY>&N?wI_aEkO#>R-u#S$6fo{$f;3G|NQ-zmJWVOBAwaTZv)z_3t-*gLA) zuLjEB6YDB-f@mgfoOxY;$WDjH<-sDRV5=h?Y)06Yh#Srj+=2fhgxQuylnYGbzpG5Q&6 zuIBdF7j@-wl@W30;O;mh0XE}_8NNrQOtBJ)XUa6?h-(0?$2l2V>SU}EeJc2mC`){i z{r0}f|GpYI+9SQc=u_OZcXCVON*1P7Ez{n^e}3TK6I)Vfd$p#%;BI&2Wks~D;#%pB z8i?fHWljpDG^Y9wQ#S{lv=-+7>+t-RYiWmlN!9FT4(Z=rc-d1=c)67J!Bal}_3kfw zs5YQ~@Z|SPf$p9pPJFz-sg-@z=~-J^rrh?bYe+@)+aQz-+O`9yLF^|NH} zOKiV}D8JQm)?{xJXXb-f?VpkO*U`4jY^L(eG9noP)8kF=&F*>QJ>=|-ImX{d8$#~$ zIkPqi*>ojThcMQNqw_b&0Tb>)?txZ;Y@&I?bTD6@QRB>R-ERifVtdl2!uC)S32 zPU}P|5kFh`+G+Ob1}^@cX0$*NZd<{VE#G2=eaZaxE@k$PTftWs|4^v~vpgznes-%}IpeP;iCU89e^hu$>PK0PXnXrD{Tj1R3S+FC8PQ4NgYck>49bf3CDpS9uIE!dKrcy_t1V zw|83W7#h&y&!s+9wAL^jzhnt7>BO_wq&AK6&`xeR5y2TQBD$NQ0eh*|yjd z*1RCkcb)MZ_2%-8P^XetdynK=oQH6YFS|ELEzLOWk3CX48YU0lh%<>ATm5Ye@k#%& zW?O9UcO>LANLRkxiv z*8J>C6R=NYi$$dNx#XPt19HoAz3F|oeP6MlGLDbC&9$X+6!&;{BTsYhOU*u=&wk}r z(iu_pUdmmvmO|aC+dIrPRbE@=q!;cPFam_wI z&wib9X3XAix)aw{(zc(K*&}&tD{pAciDc$g=>_A3eZ`l`IQ{Lb?S#){RGI4zp0yEd zo0UxU7x(PF^6Xvx%89uxm3xB#4mf>yDv4`z#l2&++NO1Z+j}L?(o|m$Bd3UI9pkQb z`q;bP+q;PeU!8@=BYh)$_Ng5s@hP0gK0~H~IUgGt(d&awB9FP`2lAQF$aepc);j5@ znORh0Z*gZQtyhcurS`Q{)0!9cti=0RcyX2>I$ah$YH#HWdcz=)HTOKdGk@>j#IW>i?)T;laX+qf*O`TsAx{bjyTRUzrE5-1 z104@?cx1)YH|t}pjf|y=ypb=DeaiY>v=f0T@+T*2K5YIyT`acir?rnB_DQeyYb#mq z=?$L4ZR^?OB3y}Ne&Ar!)>1Shc+wC516$;g-_}BvZMPmq+qXs@^SxTtR(UDH?m$L7 zWfb*fSC*1Z`%L1hQXbk;?f5nuSwO_SlWSe{v|%E(+vsXMHLJ+OB~A=aBRytJz9{6i z)mlf}sN^8I?0YB8v+R9x4+>wqTj}wkQJ5;X+x;V|;Ga-k z+1FTE^jJ-$TySh|4%lZr+pj~!6+ELp1MD9q88+>`$obqO)e^P}8c!|$+DznWx763k zlYRbO6ZKB0=Ip)d3mdyctGz_O+%_RzBiu#Jhwf@vZ)lwmmWh;6?AJkQmdIC7`}^}_ zs2Xd!7K@%-}FG-uEKNMAzRQ#Op^p7Yv645Tw{l+|hHvJ-Ad?D_4 z%uYHjs#Z*n&P)#rWx=*)@BMn%ng1)Uxz0QW$GI)+UUel_!)axV8H(4fSXKSEq&3WM z9{MCQj(GkF&C~&-shr8Gs!o$v%PG~3#x}ow(um}0=ze6i^zv^uWHZdj6P%G6>-R;j z49{WE$L{{R3?gyjm%?UF0pDbO|GskP6qGG=mxH=e#^|Sx! zt7^AgSv;|{vsPjE5Km`cQ4xXNx{LD1t~pTnKRxVweA9~`bHyyy7L`z&Hed9`V!ned zfu*4!V&waLz%o5H5uCWSK>WAw7lYOznZo9a|+4f%FpNGQU~<|4C#HRx zeZQo2j2G8EPqxpTENa*%LcK6Ic^)v%60N)0kE;!^(%-nHbn;(vDkZPz|4F{07I89= z$#nxeoKwUI%cW-O38jEyG|b+u34w0|z4{T%JA`=qkp-N*l2{VmT@N*O*WsnkF!sRvI8x7+c( zmt4=?TI->`m&SNgyQjMS9?R$Q$1#Jak_Fprvh01f?|QR|80~A3oCx1oH$>eYP%|g#36TDZUoHHC=n5-pQC^Axme|J>;P!Fd(uXz|I&h*jBZ@4IimR{cM1 z`E5xnaq!Jd2*;K{F4Q+xT+sHe^C{u_Z9^fI(t{A5pU zPvy`%h<%Rn|9;gKGxhgs75db`yWxxzUBo{!bicl6)DV4<(p~By_t49dcl*>&zUksb zi$k1|eOZpdHPy4;^~z_T3$+)mq=+mUc`B~x!l#c$dNp`bgPZ#Sk*~iVL~!!32Cvg8 zfAC>=m=zmrH7}4(US)2ksw8o5i4;k-&nPGzs{RC8Okkz5R-W&C<$U*bO{;DdOY(P*QMV=>SYr(VAYNnOine$v~6;XfoiG;bae@dzWi!3(_&2-TE zW!k^>_fd`zVK;5R?9xnM9>?}X(Y8xqkn#7#7rRdsbD=Yrl>$wO|CN&iO^o;V#Jb~T zf2>xajLCA4>W@oPAIKJ8^I>yI>5t^}*24^>l zRximDV6ImNoVARzG!ea9?$S(6?U^r zSwv2_RB4bwh%cu_D*R!(nMu71`&x(6DG&DByDUrKB)cDz3+{N3rf@0ln@UK8>^ zm6$WzNBgXdQlPFYgQvFloTmodK4-{&jewsOQAKptTn8r;oQ*|3_h>7fIZ9}>RR+4U zi&jaT(f7)id?~#X!{j4q)&6;n_^_|t@Sl|11j1Rt6Vk@(UpVcq8RwkaccVBJWAj;_ zKSplz8@B8-#=g3j z=)UeNW2JRVfdzV0vXEH#!siu{r7L7J`1(feKJzBgN4qbC>{jxOk@l-geXqnCv`>Hd z`^vA5Q#%?P4E~gb*E`o1*HPD}z%sn9>&%9(+vhUQbtUiz&to-RQ9PPxJp=ns=`}kP zKWB8xLusASoGs>n6Cjo6e}{6U>YU0|J+SqgU2W(WmmWX#qSA{n z<8~G`wM^Y5>}>t(h9m2V4AduQ6`croDrfxhtWvIsP8I&QLnlWK&=IpZx+UI@?rQFHmLXl+DJYnr7P z-9FQ1g0f89J!odc)2B{u_zb`}H$y%g@)XvmgzW$Icr91T>#Fy?7%9CwtNzGW!q@9R zaSaO`H8`uwmBhTGT(a8IV}qK`{m~^mw&zGa1REw_aK;{OboV9j9#fX;gMG0)SIJz! z`ex{!+fFV09X%++`KRg;@HL`opA9%cz3r@rgsc*e(_@zG7xUFrL@JpN)Vjtpk;fiN zO6>O&Bac!Vi^}G6oAvihrlju8{!H!&?)`esP%eVw77%?3GTJ?ChY#d+=MWZOJMLZO z{ys74YOdE*MvEK`SBLp5XB4|(O??j;d0_4po_3Jxa8L3*P<|;@e6OX}Mknisx19g0 zzo0k0E3uJ>e<*#(HPAggu!VLJn7z+pHa)^(40WB`J|X^slYyWkZCy{b60|DA_=VKc z!lMQ5f2>T77wbI_%?Y0VrhN)wVP^)O`Wj+qrC1+9E1GY(@Ngcj)@Wn7Q&OCR$QexP zTxpPIpF75TrE$&|TMwR6y~;Jn+~D0TdcAX3_igfCQBI5e|2@&D4YqnnD|~l6y>(gi z501tE(G*eHnn{~K;$C#EVW7WQX?Mf4Eu^HEi|AYQmWtxU^Vddy5lemXtPGxC*p9s1 z;osK>Tg-DUR6dyPtbhD{8N+_v!Mkhj5dr&r_Tc$eeAA~ic8}6txLTV#$=}0JMmC8W z|3=Tya8;6}|^x;4pCzkWpI$wHEQvX`D9#QP!>SwI!p|z65>S%73(&?|f zL#>OBk1IsH!ldgNEiJX0@O6jT!)dWx$a|i)&df0{qQ!H@??pU2yuW)2X`CVTorXXg!^N#8$9u|7=FA)Ywyg7 zGYo=10TizS@;Qe^(g!goYsk@9>9n!X^O-&$&Fvo39OhZ>tbDu6NisJ~T4TLalIsKU zl7AQzdgTse)!uvf(@|c-jr>+MB_TFvnvKo${(Alr<^VL_=cVU?Nv^GOPxo5$xD`CN z&%PdCE8^d#k5-Fl$J}iLxyWi`Z(3uxSE1K0&vs{S{|Pix>dBMMB_iu89#jw2k!^+F zARUj2G6Olph{5Z@pE(0=sdXrxuAVrw*eKt3#nCGmL-Zur`(mW!Jmb!yO^q;fYo8AK zzh7JYF^p$wR4zwwjiqYNbAn^}Fn#{EkL7qjMStS@WZv{074taI$$cAnh-TTs z&lV!9hsG-#I3I|{l?m1{GcEq!P)=Jf{9Coh#=t-F&;`)&3J)g_#Hf{F4!mdbA_5u-tEom%PHp7GOOe3HnXLZwY$VJ!tpTJ z{+p8A)m)vTKDKUh=KTe;t=p8oxn)lo>65<{BMb&vlnP?4wpGJB-ro_kV_V4T_`NJ> zj-OkV?nWKGr0==x3ltY)4PfW^57;?l^>;GA$e83C@2eRo>za(^G~{n4b~OIN(22`jsl@M;CMl=)PzPQGH8sj*m0nilfpIITyzUSX$~tA@H!n{913cE~Xq zaUxbSh1%IBQ#$$JX)o1PQ+sBqEey@7W@&*Uf&1=$w0JDq+b4eheVy{v#`a?TZR)J2 zDxyy8`&B#_0{sHTTu1S~lKZld+*8t zqM2g$_W86To_@YFw7(qihemJ3h_~G>{Ayq~?d;bRv4-0@*$-ahBs-Dc6IOEn6XDwu z_dv_Q}2hY@&7J3Z}B&M`xvJjd$xt>?kTQOQf?8QBy!#)&@FghIwUs@MG_pX z0PRjW^J!lxDOSN1IRdk{hhCAb;7NwHMe|qYI#&W=d75Y!!u4fXI1~6T-VaIS9oCm zc*58*tu%5@k&ArNby-p$YunrptZUehqQ()|Ghxd<8!+rkkt?amy%W{G$_e2?F2-r< zMBk3_g0G`t=3|rIM~Z4b^7nO3B94)?t>ww>YVEs)!j?~!y6T)Z^C+AsXcdl1-fG|q4$qxgzGpa4rx=ZBYHaPm6cB` z;lD1O^m(b~)xN1>Hu*#vnnl*K^E-vViJf`nvl%gMaW9k)`g6Iw&ZzdOq$|vqo{Pdxd25lBpV=uJieC3tH1Y<< zIQ}g5wc~%U&J*(&T`7y@>gp%4CKCmI`Lg=mB8Fr}xX^qCb7%kb`LCEO#i*6Z&Ml{f z#aVRw%-bPv8ilFYU&dNHpCMb*rHP^0i$S|wRz6>0`J}&H;H4As1>Z|oPGgE=EpZ@z zsBh4Z-HaT8NTZoIIHk80`C2IA4&JqY*2iu=qW6X7`ic|*KH0U@bH$nwnC*-d>@h;= zrB~AS_>St!^>_X@Wa+xdTzto1cgOmDWNQCTyiXwN=7z{w{J?O}1lKfSv6r|K?6yG8 zDt)GHCVwIF*^`UgLRmS8rFCitJhxvD{}bPO>4jd0e=CxMdEp<5@R}vsWiryztGVY& zD0?}q7{arosx17m+wz%qIIxU@aJ10=2~6-b6nxw z4fvmf3H5#c65d2oBV~<pZr~ukKt=AYcu)D>r@l(bfI|}+I`1ATo~!-WOA20+KKlSo|F+i{q8Js zH*a3EuP<{Tr#90ci>tSddh}Qrc*7`{wLC^o<*L$G&95J|a+1A2-WQIKUq#hd7B*W8 zYsUj^^c2=eb-Q*@+zZBFH|VFA_l|R-OhWWtW1P}i-KAGHA9_{>etPdX^X9ee6T$6Q zf-o~#QhlpzHlmQld-`W<0S0$^pF1-i$!bZ7%g9m z+y~FDw(WLs4RbyAt`PpsSLUnl{RVmMx^2RVTn^o9cZ`h~d4v@BB?cXz-GvnJEJ2kFG#tXFtw$dB+ ziKzTWEoys%lZRqX9xkItcm1Z_5$6h3>FVp`^u5uLUfY#c>UZsw-jh~;U-dX0K8ci2 z*!+8q&%E+pDlxh9RD0!Wf<_h@V+Yr^2`#4l+-;w_8iy-}Is=>K+%eq0eFa5U)+xQ! z%*qgRy?P9=F z?qy_GXB#v0eR#84-|H`}+h?VB^Y!#>ck18v$$pgxoaSdQtFsuxz7pO0Mp$h~+|yJw zO!j(P2d&~_mh5&P)NfWyGkd5X?=VhYcM!>uKnn6_1om-i{6np{_pqpg-eUAL&OGr9 z^K}XJf97ASH#cHiv&4vTX>(L$e0!|rjuC{C}h!qZlwQd(*Y z#8vw|XubjWJPIV1o8j$cF|Vt+wlY+)&Cz_scU7~`lW(NY*Jt^!`ak&lxITys5A_ca zW6u>bulL!t(bWEQa=}}0rIRAm5XpxdO`mT`G6K)IquBNGWz}I#Ndoh+YbJ; z_%ez9Wwg#(Z2Z{}CbwZd(3I1@vuYabY*Y7}+2u`S;+8j-F~>MT)+0%mu~WqT!*|K) z)WnG~sK&BdS*^S^eRV~RwH8@?O}y{4jqY~R7OA85k)}}g>5Ce+{<%A zUWC^fm4LBHDj%AQhqQm|t1SI+t+4hx@mvVS<&)QAqb#V~y~MB2=J7kZ{i z(qN~eXDaQ9vK%%?hwj?r?C!PE3uJ zwN?>d2VXk;?Tp2`&NyA*orq?mlH7VDmyn7n9YyvB;iCt%P})mfwE4~|u&uhS>Av_* zT?I#3DJAy4_eQ7RS21#J&oB{peE9_Dk_6k##E;7AYpuU~PZ(R}oSCjeBu7NWpBH|8 zQkqHK)CjtvpAjQvcdP_$@u|l3kTb~}V{-{TJ1f~#(|GRhYnB$#rj+O4M+%XhzddqG z=ai;uSL2l!J)XOgaZgR=ZEIHbOm_T9CF+8ITcZpy;(9B%K4>xhMFWei1A(&M%f15A zarG@;?3MZmkB(yfq$ib_{V!N3Ax3K{yuTp^EidBXH#=jj98UK8u83z?6({ffj)$EM zKA-P|=eINRUtb?9wbi_ORXvMY-k;L7R++3H_Agh~(BF`oi*ZuXG>()x^i&+IL?q)M z(Z@TZmX`WpwZ1=}RmjP4`%tCwn{vntd(4C)yRB%KQqvDS#J zo9=F&q2^L+yE9jlg-oLC_OQvec)cQ?ldkcMomcrHo`x5kimr@yQ0bu8uqyEs?IZAMqcA*sH%o*UG+!w*n{o!{G;=u*p82_ z^5iM5em&@lYmKXt_YQr^hVs5v9-tr4KYB8{KWdZQAB;clvhHR6KmLJwTzQX(mA`T# z7hjm2quB3*y`*B)$m%{{Y3`^_E2`MDj#jngan>d8Sf?hPff3!DD-Y;%4@<#Ud0#^R z4yCJ_L;s=d2ux=N;)v`d#_Awqk7+m48_QMYg8Eith`QTasb-L~X$d?TtmtROyxK-v(PxQTha3&C8c_wUJ%dGkTKZ@50+Dxhn65wnIrk2XP6;AeM1A?+4h@p(D@4k)91PxSBlaerQsn-$ts zr}A=ZP2`_?JmK>L*8{S}Z%?8oVw;P_8tUjDj8ID zdQur{g)Q5T{pvu*dax5sZ)L0RwLhmWSsVPau{{u3&+lX?b+Do9y4Fm#jEekEfM(zb zdjZTs&H;yPpg%_h*CjL*Igd*S(!r@$WgC*)61Ix2gC zp!Y>S0=wX``D3^EU?;pTvPN|FI{-V-A0VHC?eGcwkAzuZ1K5iG7#W#=9I^$T5jh%c zhHpR~2WBkx%0N$qOaeB*>mj>=^>F(Sc2k44U@iJqGs0W{k+yst++US3farwHv8oW5N z6sQWXfm{Yog3{=hkWWANbb#XUYRKkbAt-?U0{If;hPO)0J~K(!y8`|m880b& z+9YES9Q5tTV;~hgTypmN1G7`G&j5v(~E%*%NS#T4+m4EP(Boq6)WM+>J^t8x{;1E1!7WQfZo8bqM$H1WM z)Ej!F9IOGb0-iJ{duD=k@Tp)KIDn0z$g;#Uiu?_MXYi5daIC#3)DQYX)=Xx5jliq1 zE;fUT@bIjK-k=e6Ule^4GCXx&0KOdg2c)95v!ZW9CX0g|_+aF3Ft;`PjKpPs72u`b zww9xgkugBNvW$nU2YP}%W!Mvi51dos(cp`bYrv1vtX1SIkc4_%hn^jo6SRj{MD_yd z;q#G;zzI;4Ka@X%OhawnFUeTQdY~7Wfj$s96jX#SL+%7J{0Z_Y_zK?h3xi6%8sHSX z5A&E3-WT2&*$u1%9ng0o&wzUHBGhgP@DUV4_fx}JL1B1VWHpcoJ_I=)Oaqb8mm*gJ z4IZDlDhFDF55>s`ayNJke~kPBw!@>d9@2rbU_N?vWNpv|-WfR+)Pv7Kt^y}PG4wOY zi{MQ$_H1Geodv^_Q?KaPkPpBzc*+#4eb5Cy4S5;lU=6iJABv2en!ZKJIWiYDwgG+{ z*_idQ1FS`VipxX8~Zq%OQJ#`QTjv za*W&n?!ez54c6}ocuZtgPzW4CFORGaX2V+{`-92whsa0Z3FwO+DHrcspbxwfvK6=t zTH0-qKS2xl@!ZS{XbLZ!hcQ9Ke7skp7e)31<5_c+(Z9iycvw^0j;;0dXfe$-R~cxh_9D{Es{LiWi*FNe$rV!)>* zpf9T`4>@e=?KygfcNkI3FgjIW~)i_SA52G37;KYYu@{h#zZP5WZ_ zH-|C5qSr{ub@0))nT)tVdhi-OD>4sw37>;p0-nJ)A-972;0by{#+8UA9=L+u7}*r8 z1*g$>As>O0@E^$VteIo*p~w+nJvfSf26+zbh2KSnOUZKtUJBU|tOgstr!_coI zKY$_d)YL~A&<#Epxfa|99nd3CFO@(mxGyiybO9t!$3v& z4dhQylU$ZVj|8HFA|N(M08)U$AT3A_3V=Ky8;A*#g79DucCLYRU>f6HLO#N`)A)K0 z9zgaWrWVA12K_8~DFRNx!;`!0JTFed^ONuM%tJ146#W%*HxC?wUt{jqfSvH9NH16# zmuH-PFDCO6p64;Vc08`fr|#iZsqu%jb2E2a(QC0rPekXlCAG-9*kKj`i@@#Bc$ugXcp2pe_o6wdlWzX$DvYpU;{+hY!o) zLwUyDVSTn{Z7xG^#rhn^vwJDL3vpXuG5jrSWGCnZ7NO@te&s!90lX112AB_T$GR#A za@)B=f66*u4(7tcBi|=rFFG(Ay$v!Qm<1n7j>>?U@Llm317rd-(1*sNu4Ax|8+;yq zn&e;_yehu?SPL3?or2zk{Ewu5Cc_ohd;Zuwv*1bTe=#P{9WWMs1-6ER5%9v%@G&Z5 zz^_N)Sqauf=JNo0G~~8OJV)Whkaw}&5k8H%O$Ww>trmWA3*S$0Gc#ioThg^x^qf4z4p#C#lKQ%yAj? zamaAYc}e(8@^Fh9$qj!_-Sncy=TJjQ&@UkGfS7O%xIqM90Y3-_RA7L;^ovc~$JqLc z?d<3osfmIh8h$mxcF*7JiBBAvX_MH`^MaTskdw!@59CQ9hxy>k$nijS@`28KZojG1iZRVgB$}w-l;n%61*|hCI9wriNY{tz?-0i8?4&-wJ^;CtLOv-q* znb&Uo`PW>#HnBG#I&(#>o#gsr@|FNzoHe!uz6achz?@io1|iO*eR(fpjJxn>APM>l zQQ#MR0&)hJ3x1+6M6Lus;A@a;!FTvJHUMwn zEs?FkYj_uA;iBwgSe)k+`XJ;=@Dlz8IkE&fhu1C1+=89pIrHd8!)FeYXUuIZ$7tx z+wiW)!QdAB1o9M^8;_WgH@Wr+sUvTI$RIkn4qoLW&tNO_ehvLB@&lL&&qKazg6Z(_ z$XQ?`n1+5Fc^gcDU#ER6@-+!w2w5651LM)#A*+(d;qXV~Y&-cG3~xp*Qc{2W$-zK$ zFY&e{)~@iA#8?%7AA%0{J#Y^n+au#KW=GHl{vDYa`>&agX6UELbpU$};lt@`;#XaG zUE2Jq$a@CuE1}l{6+vN86yyVGK?aZr6!KDI$f@Co4fMv=E}jcNc*Yv|7LU9h2FY3L z_psZGb(%Ig`G7BFJs(TO=K^@`H0V6%hos{(B>Fn!Mj*ql^UR--k=!%4Ycuga2DSs<% zkI#Z;gW{kOS3s-6HO62|v<<|eZ~CI+VKSVc&!(UYAQ^rwy2U|H=$eL3jQE^63*ezqL<(aY$tw-eui!M7|b29 zAR%ldPKl<1HTW!OPFRJngjR;uu!y)T+6@-q_o3(DAN(6MGMX4BKnBPN<6s|o_M=@! z;omT}HbXBMOxzZ&4!!Xa(62ljJ@BW{<1i6A6L&@%K|Opb^d8S|Tc}Rln`gfhb3irx z4d#qr%psNVdzokKe;@i0fjNzMVFKny*6%HZU%{HadHB4R9dE`ahL3TWJBjnfB`-*Z zKZiz&$8(84fWCo(@frWbzfg%Z^P5T`}kHar~(d2yQfuH#N%%62&Gkhbyj7Cez^Mp^1mVr-rojEof6o%Kt z?a@*27=Ijn3oU7nN5mb`p)eM|5M2uO@n_MSP@H+X2ytU{5M;(5Ltj7~{BLw6?Yk2K z#OKk7>A07^E{8URGx)LSWH2|F+M-NzbgZ4s5vXO!nUKU4m|GxHGtjy9i2ItTDaIrf8VlhTfJiJz1IHJ-yB zJd<6BzcbzsFrM?^H!+SAGCp^}d)h7%W3UU{!iQ&^^@3^mk7!%QSAWJ)U*c$tk4{h# ze;Ex&{x`|5Bf1kRT`odVBhd>#0{Cpb`q~bx4<_1Q}jIy!B^n=5gwke0COjCyYM_;&4u<6Gea?Kv3^LKgT!UnGX9@SMJj z1OwnOeI6eMf)`ZAO*itbz_=RDSo_47tjG8(#@hS&8Na!`l#B6P777;NxnLZoq8+m0 zqcT@ChY0wuJR|veW~TA%{?1Py@f@v$>-auATVr^}R^u~gp)KGsbS3_YdUzHi;7g<9 zLB&5qzd(mj%e$ct_7Jmf&3TN=iv-4gLwO|QxBXkiA#qUSw|kSZ77 z&kyq1@Gfe&82N#5m{>i+qVYqiy*v-%*B}=vU~Dugo}|0;4I{2J{xhXAHL@t`?DU;Ojs+;?L+WXvUb& zL);4;1d;7~(W7vUek#gy(E^U)2ck3J9vmcohMGJ-8}WnDV=&1+j=qJ&jL&hzDbNBi z7~c}@4}I_l&|`2HS`mLoP3Dmr`08kFm_Z+wBc6bt1BLM$(X)^q{}W|%c_})?CeDNA zvtxV-v;suJS3{dXZwN=+7aaqi7?=N`Q{f~2B>D{Az%61w&sjt`htH1YgkAXZXcO3u z?~U#U{#j4jOzcLZz(#y(v^A{5_d!>}7nn+%oM$y9Ov2Yd>p~m+7<3}sfKM8gIEii`eu-vc+|9&4MdLFMO1~*aiuS_o62t0bb_$j1Cd;EzwS}6b#~6Jj2=G8#INE@D+x_XjllJVFj#%_plF+ z!CANs8(;!-hukobv~!?0$$ufF$6uq|CmvUCiIsd?d!@OU80xXiw}$yYS4^!FT5w?aDJ;1V5bTeHQaY z-MBnI#Ce%-n#JV(1;36wKU0QS__SP;o4yRk^(`p>Jr>d^$LFvr`15Ey-k&n!C-I)O z9vZT5&|~T}6fMGM(!u!Be82ev8sWS0^Y(Rc6WG>3O2~q_pWz7g-yxActi*d|#v@dP z(Zm@P=2{qtPp2|I;38%GfQHv7n?airCo-95VJH3^`WP&HE*HmPA=v+BGuus{!G7u* z-QqcfaQMyWEok6jEYRMg(1mb;=P84iF%M($lhEmq-N$D>;FTKo$!{i@&)|{%kkkOGfp8V z#3n9>Hik&}5$IOPuv9^44;$IN9cC=h`)hq(HRr)f;b~u74G0WqdVX{-XDWBp+9URzJOL| zysyRgK&QeA{BP71i}!a}NZbr<0nPFA(4|llpNaSC98eF+6SqQpKvBG(XDJ?h=UMB9 zPKH%*gZL9#k!S7#J{EKLayX2S&U<72#JT1@uMtn5< zCB~JP`*IKuC*AVIsqk4C|1Ef)!rRA5uRPCnYR=!GoJpBWyqr6Sf6jFsc`nZ4qwoyO zfRBvjW5h1XmjaIBS=v*Y1sm~==<64>`6SwG5pfpEv4`JN&cP?ar=qNb@oy>rBJ$mB zFy4rdpxdZd8GL%mlpP}AJGtps7)d=olIC=D7Hq*+X0Dh8>+u6A^JeHqTdgJDfxd@T z`0&)@9p~oaTibPlEii`o2kN7aBk_aLsn8g|1uaQ^&p}P%h&=0Apc=jqS{L%*U(!cW z?B^S@6X!s4Lu&j%J3X#TjDO0poV0&Sh(^2)-2`5|LOZ5}kBqy4=t$TEuZSO@&*3IM z27Qzq&f>?R6W}83CccYCu=@a?6s-x}@O{zo@EO_=`x$3dpf0{9+5&3hx1x6;GSBc% zo|8%(i;qtT#w<_>Rwo=7+cV`shGd0?&!hqqpEXUWH_E6iPs4*bWPzEbUwfoy)bqpeS4=uk`2= zv@~>uZ1Z4bPz) zpMZYs!gKtRXMQ62=H&U$BlCRXhue8jhA8-r+#8!`d?NGOB95))Gf;Mk{PAfiTP@~> zxTs0lYG||%c|4fwDiD{Rcn^M-aw!90ww@sfS`UTM-${6q9PjC!p}i!;%eXiomNpaK36`W#wh zr2KC+=__P<$L|F)FfP!F5DPyRJp|_P{)4PVmptnxF8gRmHX8+{Au`CK@RxGGu= zs^a&czaa`f8h;a#7>dI8bi5Cv)8HNc9vX-CxPdQ%_J&EYjCdY;78c?kps!&zUgPJ0 z9w-3Kh^L}+p%DIAc-j%40e=p)=$~v5gSai)0ixn(qif(tTHZg(3OW_$!oS4J(7n(Me-nKI9~p--@1tyzBo&3{ z#7)t$a1Fm4eFlf|$@#3G3rau-;*w|?NQxhVjsPEi9D0j>oQd9N++Rf>ze{j<^_F1>)mdqU~WNpM_?iTj44!C61vm zKR``h}9 zz+yN;+?F}wCjJ3zAReOg`2o(sY+{$eID+x`+-P|ihp&g$hbz#RIKW(%4!Yu5q*v0Q zF}?uW2nIoU;_2vINQFO$CUKJoJ{wvcPQtx}d_RRggIoA&7IkGF+>JMxL-WI2AMHjQ z!_UvdU=IEb^F|`(y1w{_Xs&SN!Ti{sIKZ4)1e)VFGQa0x!?$MmuP+!2%xUMLDRCy| zvxX23-w7QAuM<#zbQwfvj=Mq}A8ifi@q^GcunxZqJqO8|`&JN_L`%VJd@po7Ov0~4 zufQAVNBk501?}(#b7exPgU^Q+g(^^sxGCBTir^2Urywu>0s0s`v_Tf)aA*t&hmVIA zg#Gbp3v>{ihrRLm+{v*!_=hk6pMg0x4|KpcM0>(;$V)s1-2^%Cm(gpG0BAt&4;E{s-!%lJX)U|0Ybh%wXfoy{8Gjjl12_2W*PeN4IW%H!I!XM4 z_nuCC9^8h%i56l$UX5RiKIgOC1wPviBL2WUmVx=JGX5UV>KevDUVIMvx<3q{Pty^P zMZbXu--^C`54ZR%*^cx|(vRK1OJA-xZxD@sT|?ROpp{@He!kt;FamGUw}~MS6en(ip0s29M>IcuY2wGB%it=U zp}sfJyRZl^(~kidg71e;g$K}<_yelYpY`zx(Nu7oc58*sgu8Hw_%Zqkj^WeLr`cdH zzAoAsHsHshCzAf4rmg1MA1sO9ys2Ji%)G9D(Q^I-ybHTrir*OolNk0)|(2dW@y*o)~A?0dHUCZG6(uU)R zW1)RGpAo-`bPLm`KgmBc{r`mYn~{Eicspr#A?+QMD*^Mv#@6GjHZ6 z-inTey!ctnzg^)Sd3w>Z%;V#j|KAe7aGEeIL# zY^f==q`VRFRVmkQ%JhThWg+#MjTVDC_+6B)X6rFNiB94fEM1C9bKS;YcHVbO8-K;3j8bstq2=nM|tK-^gFC6$7jD} z{5%h4`l`QlQur3S zG7@{rKGR~GH++qJ&jZU@ZDmHFxw9fi5%TOWzh>u~<*eDzPS2qisLnUR-L#x~A<-HbcFE}?RE5UF1@(pbUO)<4r;!F@LE`zJH${rx%+T00`_XbJtb z9NfL?u>8xk*F!FDrt?L0Cl^-^Q#EZz=$^&u9kZ(FwN{LgyoO7P<*V!8#`!U#W|NE` z?v+L^|2=P2cN39wa834xB83)CI`vtD;sR%niz~wUPMS?rCeY9;;0~?`7+k5$UjL@M zSgoTYSIm~eab^Ed?XxK1ji-hrFAj}Cd);jNRZFCJ-&c@a_gm-v!PPcch0NQ}RYrs<;hF<$mQ|!wMd$y!quiV$2QWntzn=eD-Z^6(x`B^qsx`WbpOa zspUzhZ941i_3KhPtGl{iZf8~V)$`ap6S6vt=#dM;2lox}D^cw~=a+8E$vMByJZPM> z?3MQ`|If%{#Xa+cUPr2~C!*iyaK{@XfqRpCM`*<65T(gZ`|q&2E5Fs?9w$kqm2waE zZ)TNX_Y=|`itFUAK$~`_UJK;S3nEC7KiG^x?Z9uV{^`4iT1twt+=F!)8@hJpBWWGy>U>DC}-48TUWF%Zm%=O zf>+sJlY6h|HO0}Po~ZtLPLJ7V#+p|=JKU$7@z#^{a(J7FRO^^UwYOG1F%s-6TmO~! zbgR4=^GTfX#-AL@ca`bVN`0;VuiPzkkA2_YFMHKTpVC|^sO{GunM2J+u4;zq>Fh}z zu-C8Z{GW2Sx9mM+cdF^l+^q1HhBTx9os{G2iV{qfQ!3r`v_79l_Sk!Cf22M`{c()2 z6v+3R`=4snZg{-946x{pqG?-@WUd9PL$N!(Kk>RoUogrgeStXrbegMVb$dq#ViV zn&yq7CY9HdYFu`)XC*FCBGx+({9;Y}Z?smOzgp{-w`Jgm`hfi@?L591E6j4#XM|iq zS@=KCR6l7ByTo?(X7&#CHuGIo`uwNfPn?m_#mQ}(K3XbkG-nj9GkS}ZmU5@V=UtTNBXK%^=stcj9)cY6y;Cil*aUFq0b8YLiL=jmouwt_vGT9&c=QtU+8#P z+P2#J!P_f{6^2-(Heb{HhP%3N4W(@+$~x4#7^vnvHN&moeyaAJi!^)HIOY(Kz2`vK zdZb~ih1+LFDV3zRW)xQ%DZKU4b->!<9^l(bngiXFL|fR`*snX}d&|t?iBEdd$mxl+ zN~FyGna)ggM(ZW+h#^KoS5vm^RqgIl=WtSC-=Cd@R9fqlGtLsqGn8KZk8rV}(OlEOHBIE6M?NR7&@Jf`KWXZw7W8HE+dGMbz3kPG&lC5S7X~&4YPs7; z9dx(#mD7{S-A_6voJ*%r@`*+jr=?iKR*9%Su(Eo)dfnzIS8-93mHy4*{5jEEN8FXH zVsZlioWNUuI?>i|thPoc-v!TP*qodO^wLnCOG zRY)t$l?luNhU||Nuy>I!YyHb^;E}X@<{(j;>8ibId~hd5#yIKw179h}A@_RsXQ$LCn!bO`zd&ocPZCxS8uMoDoRiN$#JM^uP?|qGg4jeZ7HE=ht|({=C*g! zWVLwzUXkM?@(SDK$zE40rJB$%#Tomm*@>l=<<6SGivhwgx zdPzL7{2%;{sb@yxf~!HOG<@y}1b5@jF6(MIdAC}U-7pfU(?hA8F~ZhT3)}ye&s1sz zYnGBv>uJn3+8O!XC0HG}mVcq!Fg(6Bf$COaCAZnf3hu@`T5qJ!Vr>SK8IxxL_T1H}wp4TH+mPm4U^Sb27OuGF@^3kEZ{!7HGP6iO(*65>ba=o+eru zWut$*ld9^o*U>y}+PiuDc`f4F;En|Rp&#edxl&twyidFZrNsJuZ3a6pMptSYTix%i zzFhgQGtROp4aMjytabDnaw|spE@#dOrrhDLJ$A$LvR7umB3kV^6+dC!CSJmw_G_5y z2vKmwUVA)D|k+^$q5SP;2v~%ekGApG5R(29fhd&E8qPknz)Lr$@#| ze{ePJJY3aCJe7716MT`JvP2@0k^43=huC{7$yy$3hR5Dx+7%x7_w>*!C-%x+`d;O>#A-zXtk)JEe3MWzHwYV@_?TQo|ip&+KXL z{b^P;B&YVOD1n{CIlZD74N>&bEb0Ejw08!c7#acV*$w@GlV>o)shp2&%~XQx8%`80 zOe&5J6M3&wmWed^jIP>iDbMnqrVVMNs@dR3&iN*c+v_P(}h{Hfi+-7{)Bb=oQW zTvP2|tLm6ZAj~VE6P*FcSZ_Z3Abq|=Lu3=e@xLP-9yJ>*$MFC!>BaJ zf6*CDJh_yJ?+?s0BDYw|xlnE{u3YH(BGM`4vUl4|>SC==b`5;NPxQlk?*`7Y`(Un6 zd)nz_lyj+VMbEuZpZP!P_Nv3ty$9s|96Mo*5NY)jZCnXI#h5PYn@hi@RClNFG!>=# z;q<(n-k;Yb$zDl4kCw*W-Hh+Ks|^wPUKFL~J1X@p_qtqe(rYZnc?S8Q+}5efZ|AB7 z&a-dtPm$4ES5C*3`6x{#_GQj2?h4D#zELKJPoX>PGrPRO-GQR%V|BOp0X^{AxJqdw zhsJ*J{t2R1OS$)%9E-dUl6G*l{%qXS!sGYa`_#`ArTVj?bTQg?h>=3Hk)6&S=%CvB zdDU`8r;Ho9{S6V9< zC$}9P$ddkf1YU`_~tdO5jwgd1>jHoWSREoVy zu>HEM6!df=k8eJEACutgrD!=ynjy4l!GAf=X9GWD^P zic$Wb)-S8HmF>Nw?AH&j{%xi-?RAY`O6R%%x@(50_gME8=Nekmmsjp4MYL2_E^h5T zD=#+e{p#&k9HApDdrj*tp^;La)JloI;a%{5o}}P?!LLWWZpEN|B87S|hq!vRXR7;l zC^ddg7Z~c?HqLiTd*%!72-qYL+%?MHv2_Z$*?S}eUtN^vs@F5(KTo=SW`k2|+sCo0 zTGzBXdI9wqYmH}c#juikg8Q|M;P_u!h*_SN=ljnYxOVP^9z*78%{$WkhU9a{VY z<#k+NmNA}@THCL@+F(7GR9kRAZ_yN1#urP0Pv)d_B4Pf>~1B z_4k+A)M)g7`pjN&JgHhpujo0c{qi+XMw`!FW?*}$-KJCb7VfI_LSL(%wu}|5?foE6 zh|#oA{^5(J>|-BGd$$4mRn2MJjSkK;FPlvrOGBsbk3TiwhO(V+GV)m3ht8?EKl%j5$d0xt7@>qeJM{> zS3&YrU1>t&x}{S~`|8?eL#-|4zJlMYWwIo1apMJ7z6;EAj}$q*HSE1tQgY8&(rw6& z(oNN~oN4Dfuhb| z>L+Sc#pj&2cX>YTdL0^fWkfo5SzFRIoMm9XRgReO)C>=M7;;uSGeM&4IKWA)GVzpd|jCcQf)RLmX5 zS7W+7*%isX*=gC}u73}>e6kfq8LVt_ZoDJL$ZjKXs7}EXADn(?pCM{?6_&cPTKSAy zuI%aq&vMscr!@P-bv4X@K2S-dW%BSVM)4}*T zofP;E%~ehAVXgHSlvi@k8PX50$M;SVW4j9dQGp!7cCtwnXer8{&~-xHsXy*K}8Fe-Bq)Q%p3wF8%pp~h>^5835U>W}C?N=;r+sw01ux~>+@ zHQI@{$`wWHFA`(jPP>Mv`&{SzD%yXv?>6mtS^8v{?oC|RN|eRNv6b#TffVkwfo0TX zivB>oYo_oXF|EKQ*K<+6Vg7bbIx_X{CHnHM_t@hPCB}F)0ir*VPvT5^(<0fC9i4kfERpKBE9}x_r~e% zPwrkKH%1DjN$;(ss^)Ah|6eV$T--Q2)V6kbl>J6WiV+n|m7O9z!vZTskl!f}zccc0 zHtqcou4@5TYiB%%UC%o5n!RTO->;C)b(Nih)bVO%HNN)Aa(SwI(i#b!^e;J#k`EKwx+ldFb@#)G|<`vA-Gom8es*-XPV*mc)E@vrjU;p&K@ zjt!lAlKZNQJ_svcDs`{%uc-5QQOX(O#CY#UDLRTsKA*M4)_y`@}Jo=D1< z)EP!N&aLx}GP?N^s~6dU;H0aGQ@2Ueu?QOPEa`<`}13cF~=S9n`bZYd=$f1-IwX}Cwp)?}rU=D?R2R%}_ z-`<)2o#LMAuG4y(Q16x|=LCgm{f`u1)K- z-A=u{l*+uPl{M?Q7P|6!>>WLLLY+M9{m5IjUSIu3U9C2^7X*?TGp_%P1m>=T2(@AwL`RiDv?5Mt)+8(57*`<-^8TVK5#v7m6mAeIw<bFa#7S%SAHn5 zjmVyO-W2>#WITUmWsjA>80V>D{i1yq8K;~lig`~xtXFmqCq7AjZ(SvQ*?cwKxBaaG z_O2w%QLg-yEirec~D`?OlCNi~27V_r-S))yj)hM@f&=SaN+Oz0uT&>hd^whBeg?cWX~4S7p}~_k7Mw z6n&K(mswnpKa?Y%F=+3t{+jffA+9=ZWzwqXr9&+jmLi{rtP$=-p4{X5JQXY zX>UyP*?R;Qbw-_i$5^L4i~Z%O^D_ClHAs0b2lu(M_plBtz+_r~9OO}&yQ5mAEqh;; z!_G{QQaUF86eDxA7-KVC9sKi2JDqdh-sAhR$=}FYiG5prN1P;wiaz*L>M*B@<6o)c zYI!-njOh223R-bRO0Pu!tgEU_|cb)^eZCvPs7 zL@FLq98b;K27Zchc8jl@m5StV@6PmvGIvz6do7XnIq86Vseh&QlD6+IO1Rs}D-tQx z)N^rF1m>o!VT~WkJ!mpptBg*j+oQ`NGq{Gtd{_ADteULwzYhDz_mWcAxh=mcIIaP@1}~ zc!BrIbZT@#ovfsl>gkWPR@OY%C|_uxaCceRUjxtf+ z>)I_%bgy>zb|-W<7rl_(DQzvya-P&LuKn(!?oqT-$3R=>{y}1d@e^YGrhea?>G>>#ZMdiG!y?8e59h}#R zOb-VB^=&1U5nLI|)l<|mw%0T_8TUk*e|8SN@;|deZ&6l0skjaqqe<1?cW;OE$~RWL z1J)!xNgAX^)Lm-BzuGQX({&yfsoQ&K{&@{lAFD0($i4yQ2kDgZl`^LgDgC)3%yqOB z<)ac=@#(odJ=J2KCRP?&Yq6CGJ^N*F|2kuknB_!C~bwJds zS)hT|fwSk#lJ2Q`5l_FsLZ@_=@qoJA_qTJM4eS;pW|~!l8a3v=)3DVD?zlHT)K>#V zF9%C&?>;;byWcl9RNJv4m5QP3!|D}9P9=SlM(V5eH`Kl$*MIjN2s;_liQbP|9i@$) zl|NEmW%V~Idm_7!yI*;d`ev|Ka})m}=>vD#doov~9NTG;^->T12sxp;S+4CH;za#bzBFHGCGO89=c&T~mXlyp94?Y+TTho0|VN>nYL=O3}twVhHP z(it8)Yae++{lXyPG04oA;%4D_RJG4q=<6Z`&KR|pWpHxWukqn z^n$Z0_pcAN<3mx-c5-(ASaHu*+CPo?jcbChEB*UPgkXKD8+o5iTk9m;i|x=1M}?hLy&sP{cjpK);rKH&-aDuN{c_uhQOUIU%tKHE?p_aViKPv4|=9zxEqRT~o)x@>@ zMVRlEKFj!5)PNbvm@AJnORIzB_0F?b%jvPl}R&-(n-u&*dna?yqnxFh&#&lLl-Qhc4N4iKZwKEB-eF4|z4 zXv4ddXr}2h&(e}&?_!nzKb3#${DHgV@efv0b5#<~t#Li_zQXVE77+Ixbs6H00Y+qN%=_|eyRy^$MT+?^R zTTIXT=NaH4Qw$h`W}#5c%R4kNdALdbGSC2$p4CWGi9womN7#m6G=&%v^b&h;S*`z zw01I{<|=!9E$x!I>x%MeVw^Yg_jX+t?f!`Jq?Dt|$)px)4E>D!N_x)!!{j5aSk`-y z$G}j{#XrkPOGIn&o^5V5Be(~X>Ttg=)KmOaUGzq5tB4+7ttjs-4+tQpwYo%rcevrdyueD6Z6ElHy(-p~E(x1@j zGrnWi4^zM7PTHj?X?x{>R)aE@BHgsa^ZpuPWw~#a?ov8QO{DMaySh!O;4bay;T^#7 z=)O$up8iE5r4oGI;A>=#p*=FlG4b@1lBHk$8 zQRXFIgFtsrUv>cf=AAlftjNBPX6aANm}bJ@K-r>BcaB>PKZ|p_9AtP^_MiIZ=R{8l}>t2 z{iD^vH^#W(R=oBO)Tc@LveS;g)aBydgVaADFO*&>NzEhjb?cs|y(p`lUwu|!`l z}w;t(UqwrV0!I+P3_l2Gsa)n1&^KgzTo=A z{QnrOr_I&6ifbEt4)dS&_7&|s+d2PElwr4AQ>mdYWEAbzemL)EQvxw5?FQ)(b-m%V zwSC`gQERvVlr!G4S;c(uxiYd77xfo&MtNd+n6lI;Y~+-ht2xc0p5ChEA1$7-*S`KD z-|0@N)5teeuXZi)K-NNiIfV4iIp^n#tK(C$#d0G(S71C>{i9dnY-!P=BaL68N5&bm zxiX7rr@h|n`X=S7RlqK^crA1KYqcn8Ii-UNHv1>Qw%1iyPst>)5MS9^l@|E=MCfY6XUM6)5<-y_&+^X7y%kA+I{6Io_Lp|4dvV3otkO9xxC?Yxhqrf15!NKf z)HPfgpVO#TnfC5Xew8ueGs8;KWtbv=fBQXQuk5j}d^|F7snoIjN0$Rd%}yx{LWcghoMFzPo&@oMV0TD*Rtu@OT+Dnm9VxDdlxiF65j$L~Y}< zgZooTc05#zZMJjTeM_L6lV(+Aw=!4#siigs8Yf&ot*G8)zSX`F^m(d4AIexTbU(i< zkYlS~{TTuQXGHM6@3;4!4tt$|QZstE~&-lBGayI&F#6*yzsW;6S zrsa+9uPI73T&qHUF`YKzUCy~Wx;#YL?6m47&Nlbo4E4?ZP;2uS5Ath&l~4~|vLcH- zdAAK6vrF26Jbo$p^yf-tX`a-_7-ZhCMtUPk)0~zG)~2?roqN7>Kfgy3C8@v_wL;Ht z@VdKB{{6g-0zEkNuiBQ}-h}E<&-&!_W&+Wc4a`oSF^IzEw0JU{-15xMzlYl zm!xZ)?@2o*b7`J$^yqxf%nsGxE=37v7MiI}QsPK)mE`(OsfXFsQ^)hv6W_Piqx`>0PNk?t$4lJeck>M2Bx{H}jpEh*zaatglg3Dwz7nZIHn_xJvIMtIRW3H@JP z!9B?7U(PPp8~;_3+wyt6zVzN)pcHo}^K3LbIyL7vvVWzTixm6Q7ESfS-e&4Msf%$# z%;)LUaH7>Fh}x8QZS_73rG1LL4r!GG>*W~IWOJ?g)Tyyu!apyA{KiSqjq<*p;(W$X zFEFa){cbA-YM{#l09}Um2--+-teplv>?}hl(D{?pRfDmzWNKffZ5V0 z=o&0~aIRj{u)~wlpId&7wR?DjHFq~b(JzkAsKt8?j_o-P+Gwj@F-EpFR>`yaHE0oK2*Y? z|G6@_%ls3ip^?nYCS5g~8{b5`9Mr-&WliF=5YLMF&O1`6Dn(MdD$QImJ!h;Flq#{& zjFw$1z0?Pwd8mJNCx^poHT9vK&(q6E$u3z(wU*T-@KA5>Y9wkjmSbC-HtUS;q?~6c zbu44P6@?nw-+~mSr5AZ;lImMIj;p;E#qe57wcMT>$~kv6&F79}Y?pMAXCXPUd!y)= zi)vh7Oew4J(LCvtCfF`xLvzkx$7L4v%cf`WmhlWS4*By13WfSmk{*bW5WJV4InXDo z2|kJg)rr#kMvHn3B$xX}8F`I&v&ip;d`AC7Nk)ko;WM?$>`O#D%ye%GM3ZllYICPu zyL^ZQi=`UMEW?Tg!Dst;T`PTZ$=flEp_{Sv&6Mq{Qpp?OZk`fo9>@Z9UdqFtE4xM==Ep(7ymsaL+D<9 z;uV|5&tH+lEB*BZ)a)!RdfHoxtD>uJ=h}T-5%#*R4)UG}^wQGn@yyiTNn9~m z%kNw_Qq(>@r72H|Kapz}QIqSk;nZlkCylsvgl4*)`%emAgljYFvz4}@*I$!H6{q#L zg`RB6McD>=5AaozqCzJlskejiSk#%CxR$#YaCHwSwy%0F(z_#lmK%}YVOL+#NBdms zTpR7v&MS9d5v2&H%;al1&v?C$xN2Uge`YvkXza8>3ca-1M~Oo@u93nA&TbTW_N9Mb zh|-0nJir_97+Njw8?Bx9GHr6r^QRe~i<-|2yAm4UG}|_-U^F&RyT#H>7v8YAn*5^4Arm|MGm- z==9JVX{J$Gl+I408`pFTwS|4;v6V)R?Bv*o7LLHNiP{z;v-^g(4Oee)ca>+6D|3dt zNNp))@LbkDyQBDHOWim+@jrPo!!p`NaBUm!YqJ}EgOSM$ zQyAl&61v=vL|Nuo>y0sUjRNsE8-$KSg!>d_%n>3n+zej*fx6_C4q|2=EX3If>(=%^)^@ z5qcA1;B$uOepn7};~)`J=N7HE4If}esOhnFyj_!sJ9y`(nyIA~(139X2`qrIUSel$838sev; zTi_PdA-;>ghT8aOQFJLDl)&dh3qvg^PTT_R4(ai8&?Arn{{Vds1*5Xo2yt1o1|+~Y zMY}>&{9JTCYyg$`0{RxdF~%Z9V{H()i*JHt&f@o=hu|>&75WomL}x4# zr$95n5`1skvp&A79m8CXtwp66)E{3RtpnZhJJHV&E+%7zI0{+~s^Vv(=b=3Q8~PKP z#A4hKPexZjA$*+Jj33B`?|^oLk&uP>G&(pAYro(}p$9?1r;SU$!C?5AlV=LO4=?cp z!tX|}!5(~l#@$|MorL4W z@6nI23*U<$t@nqW_C4r*F!_Vs^~4#__OKd%35}DS_QW?to5OgRM|=@|4Ri3{(2gl+ zYkpWdjkqs54o2a(qB~#&{v)cSV%)(n;(BNs7=&Mpo`ZpSD>duDKvU>VyZ~Jd&GFw* zZyLrpK0TTVdP76vDd=Hnfd7nIX_@nA&x*uJ@Xg>gYc!Q5F3x|1$^eK)WA>Vzl!c;;-l?+VUa(0s0s|(5| zpNhty-FCuB;&*5i+UPjG71|b#;MbsEASUf{h`2900`}n-qN`yGejWM*4BBcjaRf9P zEW$TH8^I))Nqhi(1vBvJ(oqkXj<10Bhix#8_$+!6#^N8KYI?>7K0cZPYQqTP&gdi< zj$eargu(cG=mRK~fw4kd5A6bd@f*?opk!q2YT^iJbm)d}gtmcB_(AADup2rOzeT@5 zJACp?%%RX4zZ~5M$DjrAb@Vwj!}H--iU1Apr^BW6XoIFw@(Wgm*aO?|sSBIr&W5j{wIcEo?B{ij14d`9#h{dk6cZb-Ze%>Xs<*BCQ1 zp&~vK+L$r-jxk!AcuYjfgD=R~EPtJ{$A3Ua(+}7257EN((Kfh7d>VZTSMd|*zYA~@Uy1%*0*7D| zv70`R0?Y8n(N8cDUyCs^94^5);;*QLj)DwO7zRKkr~yr&A2frS5D|*O$?!a*+&cpH zlV?22Q4_y_@(!l_Iq`>RyQI`N8h#koSq9h} zJS$`1DNpYxdaI{B-7&gQdy49Z%J&;1p+FAHT}L|R|*3Gth`w?6q+qz%6^ zrhZel*0jwRe0$I-!vQoU$D1=IFK}%Y;{5bQCeoQn{Udql5AGRDT`kI;-@e8L)NL2n zT!P#1lK1SS(6=OWO(|WPOPLDbzn5VAptI2QFa^>U=bmEpKY9S24{pc~?}{>C7NO11 zE(Lk6A$mUg0%}1A;+AL+XpNtUPJ;aSeEDe$C5h_7RC<0j^KV*U%@o0NA4Mc^w;0GT_V8Un0@f_~M zUAO_K;Sd~vEwBUD!#Y?A%V93ehM6z}Cc-or0mGm_^nxzX0op?=XacpN0n~(ePzBmE zKK$r##=&IzwIh9ch4$&jvoit?;#)Cxc0y--Y{tn@_y`S&$8ujx#{66;L0p}A_YmY} zyc8yGgYJjC_>(*%7ISoV{3LWHJb=W+ay-TeM8TIsyMTosgKmMk@pF@ zl=w0lp7GxYpAyXmZJ-^oo{aBZpaOmeD)Ic3z>h(XL%$T{N4y8k#LgMW^`hL!m5Xd>p=+%StcA6guy;X9xm;XX_teuTb& zf%rrjnaiOUK0BHN8bU|nCTLe^kDrWghbs8H=p%@piTQ#!4q6fN;QOLOAS-?}IvdVI zJmRb91Bi~7d0$Eb;qWEUde9tR=3=f!XTnqbI`k0S!uzuD86_O^DteVTHkuJG<8z?@ zzy;KQMjVG_OyS``LEf8w#|Z0Li(gg$_F_#W9f1{a_q@ip`_ zl)$fv#CXWgIK}^q-T);BbtLYPljjX0;x*XFISbuPd9uS<`rsqyQ`_T!arP8HHac}> zjyQ+c{||d_86`IkENq+FO*7$aXagH&rVVVEnVFfHnVFfH87Iul%*-2RPWF4Oc6;2D zip@O1?YQ{HF2VEMA2y+n=ea!sGtsN?T<(H+JcBc^ zHzEfc&mnqop0(9HTk&~@>R>nH`5D0TQW^aad*w!y7zcVDWCJ(?g|VL?zd}Lu1Tvqc zAUk?(WETj51B`PY@+LfDY>^b!6YN7DgWLewRMswbUStKxj@}(9N96kq`YH6Y@C3Gz z(Li1ff4fzJlUzK3gznGms0R75XQnRQnBUVt5%m4YSC9|= zBQk3^<`i;bH%In^)aY@;GvAO1eF1U_?1b>x=aH8|M}LZZ2Vab5lIJQll!lkswUHy> zIr={2L%5HggL$h2cVP|oMamzcFF`LCiO-ub3%wn(6O4zk*mIC~U@*EuJ|aUu^zO*% z_WXsI2#BkRGzaC>R3^U=h54 zPY{vy9uty4Dku-NU>Hn0q5Wjd;yhb zBLc*R3{VH^LOU1@6JRbZf)LmV2jLcchVKx>vy%i0Ks9IpLtz-KgRAfeo`RR>ClVxu z{7@an!fcois~`lP>)z$fU(b2trl!)tg4DR>TxK~IXj63|}A}&sciM3RR#6)P&m51&)A+=PNx_fJV?7+QI;M0RKV_ zp0_bD7WTj^$Qp$_K`R&uUmy+7U@MpifAAds2`Qiow1*9F7J_*`g4|FEy1`|51!1q_Dya1?HUH!aT`RD|l#3fjOt*Z>FNGJJ=q>BtRa zgKE$e`odJ$0^8snd;nK^{6ZCI4YOc2+y*HF?;MB?=^#B6gPza}#=#Vr39Df*9D|4O z4Bo+iAZKLl+$8Q>tPA*k{m#Je4E)Z(?+pCT!0!zF&cN>s{LaAd4E)Z(?+pCT!0!zF z&cN>s{LaAd4E)Z(?+pCT!0!zF&cN>s{LaAd4E)Z(?+pCT!0!zF&cN>s{J)R^-!A>^ zRw6}ILL9xt?g2*J{@sLUvirhx@L#?S8#*Xk#UF^Y{9%8Qc>aoEWG`&r{(PY~jJ-vs zh+P@7n){!G-ZQkyqL1Y2C0qag8m|I&bMTcOFzbC1qcG01@$F+=(Ro@fZ;s4u?hoN> zabH_)^V7_BuZi^sFb~zZv^}Wxrsf-e_m;e1)w7DEXw;l%8&P@F?=;G*IDF?m8MS?T z{2AIAEANKozfzIi7y3@ilT$81Z_O>+s26zJsc#=dqkM&OO*?ETQa{buEvLU3=Vn{$ z&Ogbk(V{yTXJP&P+NLegzHqm&En5|ASvaQ+lZz?7y;}SpYW^@j{&U)yM{Vu?-Ir3l(ZTd&4WoyH!s#(pg9_F}v9 z8NCAKs^d>;tWu0!FsE5D#<6mcLX^c8o$RpXPBo+JW%KEaB)@b?wDFx(>MJX0`3sHK z(0peB8t20K_AWQ}V9hP+Hvhq|Q781eN}C~4C%M2cJcrgaG{w=Iuf9FU4BL10NA!@5 zKQ#-ynu@2tmLsEH(D=jpUtS$WJyyA`PGK>2UlT7mnrE}^j$T@ADvQzYktSIs{(Amh zdG1+vwwgVrFtguW*yY8%Bnjy0yWhz#W#oW6%N%ZHCH)k!^7)V1*WYpit&{L=ocs1a zU1!ax3fb1lO=Y-VQ>trv^`En_pPJdjxSFlG&GyC(-=3K4I3vo+NjHd~p7K((`L3o> z7ZGb2TYbMXWAD44Ut8p;&T+ODWjQm~SM!0b!DuVjzQV1l?@S!S>Y?PbGT=XNwX&I| zKTYX(RaDemX3j}NtKXAh{QK+w?=mV?LeJFspXxWIH{-OlIgSM)s=>^Mf1mfzog4f7 z#Km=L8oN^auK3oNmTTEWX>Kv9+g28gdh588-W=x@{k+x2xHsP{H}oH`IPyHRubtEz zr&V`OG_zCHis2?>880{Few{E5dRcY+H+<(lvLl&@FSYnOCLkVvO+)f0?*Z4>0Do(+ zVuxwlm{|6ktxB_^ONh~}HQVv0uRpzdgz@65ltmh&B@5`$-uP@lhK=3P?RS5zUo&HP z{6pTih4Iiw-G`eP^z&bszWBZ%B2LEF{~SZDb~Vg;CDeF7wD3pN!`5#?QR`o;y|2!6 zQ94C!jrpg)*-xZ#TAuI9<5#4YN{3(M*k5Ikc1J`|Kv}L7u%0>p-B9_bEl%TPNMl#t z=V2lZt?ko%`;~<)4Yl8^S9PcM8c&Oryk_)`&G+5}Yc!$t!)pD=cUJ4|>%TjhQ9LpY z*&5Mk|7~fE%6}UWSI|#$Q{QUCKBndfpEy#78S5hLIuRB#>-zRdX7^BY<(@XPwaT=O z?u=7g?AIAvKcCGTY1Mkpa_T4%*G78GYHRPSBFoR{_Yu^ywfFl?s698w6j@#!ts+!IoFwo^0#|s_!)WPbi&X z-|YYg!m!Tk`0@7B!C(o$NZ_uuvJ$n3W_+I;%U zekGrnb&ps*{HmsL+G9O-{13eE+dnWhV~XzFV#|uL-#+^~hl%8@D2-`lU=8=}gFdUZ zRPHG=e;UibqV%cgzO>cTkT7+>>BdQX#C5&Hx zjfz4!WcBYaH)J@*^_PB7xv0Lk56Y@C*>iU_rHLr6W{tjy>8a^2BB@~2G`tz7 z?%FS}eoehaT-(j^>jC$TbEW-Pc=f1=bh}yb-Sk^pl(rIcHC6WSHq1V`v^^tA+0ota zS(!n-?wLVXt`ZWudH><(PoMar6*tf z_cZI8K&kJnPk+%0vH!H+3Y1By-BEtW*xoC?^BVaitA+04YSa#|8z*IyMEj^k4amOV zmw#td!`>_Mr)ZV=U!@Q5+g8|r@wJlBB3LUWxg(ivJ}#h#Q^spG{7x+yq+d{Dvxh&w z0kYPFv9GWFDx_!8jkEXs*L$1i9b~7Mb+3UfSN__5*~JlC?PA5}D=kF*`yz6m{XxAY zX~JGAJT=o}+U~MLtvbl`FhjXX6uvWq{5^z~IVEEkT;n<~zV@_y#R`Zct!+G#6yF?u z=qYpmSnUiq3Dt&Hrm6|Q{xAM>jD05%8l`MI$yI}~tT+1@p$x=oZu5ADJ-!zh)uh_W z1+(upV)T4hRT^5kWuI(YD}Fzwuy3VuUs-3?H9X|E)i&&3U$sT6cR$o$rvG8her=jJ zP)F0N@2qd*pnzb_%jj#Fb%L$B)vVa!>aX?NSe+!Nqn-Q@HLfuB{s9^PF|Gxcrx59Y zV;XVgwOUjoR!&z96KfB%N8`Lp{uj8jie6IZzn+R~p17xqoEvAc{pzYgy@=X<(P|(5 z>zM7s){ktK-*9Z?)??A*k}&baa5i-0u*$NS^X>B#Tj^?z#yH9P|9(}s)>>$rAj)n9 z_z%4osx{(&ezWtm6_M{wC956(?N@3RT0KDPua~gJ%dYBpxk|3;S*`hrg0fAvd=(J) z5?TFi#^ZM){Vei7-{!xG+RE0>xbcX#?L@s;;_D<^ZM#~?G<@f+`;2&M9djkvYZ`j~ zfZWXpb2}YI-7r;uYCcs8({EYzNSD7+tbp-r)aAcDv$uz_4d9j^T4u6p`*$qAYW1AL zjMXUcopMpwY=6*d^+4V(%6zAi`OiqiJSekL> zXBw;jq-OskM9VtVFis&gF8*Wg|9WLJWA#@w&Z;-AXx6AQIGf4c@svYLP2DV}&oT0B zxvW*kcUH~cKg^clDXsD4|9G9$Kb!rtwuQHT!mekP8jiwCbNRa7EZb*BbW!%5ts2@@ zbnUe*0|$jZAOWMQ8LFZM+45kV9RHuycBwh5 z0o5^XSv7oj_G<%7A32eO#NAcI;X50mtd;;hk}}20e*;lFjji9q%2P4YT*6^j<*u^c z8hIgSm0!fcf19_iiP`{t1Xf>LneS%xfY!&k|5|RZO+nVR`tZA%K;65tv5)^5X^Rw2 zeJ}U4qW0B^Nt=5=v@`Bq3RBa60&x*vL)+JZ`Y5c8w)(-sV+HB7l$-256A>S_M$$pd zXXp<%o07!eAv1|%_~f|92{6I^$f6gDOd24-YQE*bQ#n-wmB*gX4HR~ zbvs*ecGAlPXpF%u_LP>xQYwqL(;Q6zPjp z-l{v*@=!$hjH2&Szf+b?w2EMJQpq+dexFaBRqE6KF^5LuE@q844*$7dHkYVvwK_kH z{*zi#TNqF}Gr+QYh=Gw<6x>plixC)S9RGMNwUzE?^dlUzMD0=mqv8|-{evThs9Ql~ zF{hO&!)FEVv=A99?(m-t`8VaaewuNk#dg}als<~SW=Z3IQLn1FZ`6OK-!miqV2*i~ z+&4^&Nkxrtx^XIjB%J``{Oo(uS2Nb>)|?vm{a1eB@8~Zg$jjX&*1ddEb~6e-Yn$G> zS~2=P`eX(vo*c#T(N=g<`03=RDd)D$n@8wh)Jn>2w4Dx3*^cK^R-dPp?DP8lv71~UHlVpk2e#(j;T?!V%itS3H`C?;}lizD3`68 zo2`8L!<;Wlt|^BcTSY80aN$tdunS{1m3Pp(S}ARRQm+7I56r%dGj=zjFSPaD#HNRO{X_n&MsU=3 z9F9j*>SNXYlQFC| z%VOKS`n;VpHf-a{#hEs1eMLX{8jUgJ5ao(IoSt7|ceX{~Ym!gi_d^+fvtjkw$sBPy zD`Rs-{VYFe<@1;+Aa|9d@McZlSx2)(u;19t5e8=Ru=xI-C}vIttRK9>u*IzBY$|_ef^)XyatOJ>r9WnySskUYQFNq%<;bgb$u-YzZ&Po1zvqEbDGt< zmbOK!`$J8uqN(Ik52?kZMDkbdgQ%N^_U)Z3&329CeqtnwGdknHYvrJ|QjSb55ZUTu zmHJ%9vF!I&XM3eVj+R#Dtzw~g9kql^ZbfdGV?`Nfr0H!r}G`6kIvLdEr;;TzO zY{k;n^qwUkiUneH$r)|)fK0u>`X`{Kt#^ml^yP0dR`lkpQPQS!mX)Y-QHrU&vPPHi z2frg}`j_L4_DZ^L>!vNS7qLc`6~7N0#yRu8>!WhWy5}$R$=t>^O##vrRS3%LQaXQ`~ zX6aioQ%=sQZfW_*XlX`wPemWeq_65uE9%jr^r<3 zM5|-MLq@CK6w_C7XM-^HjW(gzCMiDA-w}1#;Lf_X1Z2%BMlsI6`roe`$`ZT{Fe{d| zV(^mdjgZQU^ndro=Wgw!n4?C{xsHBT%j%BgR>t~^`+>fiin2o19hX%*mQ+_-rf^Ue zJ7!MOXX~w;*{yly6PVVVJGZUcp)t?H>3w$oG}<<@l^OPSQJPs#OpIS053N4CT3(D=<0y~kY%T7Va(vJ? z*zUd}>er@S)i!pco$m@K@)pbTZIpHk6Ng##|A)wE)~%ydb)2FH--&zY*lg*xX^Mkk{OIRp{Q3;jAXBEbmuvF)8EoBBZ;~jekeEY zPc?J#$h1Mjy?ZNuMtFVEA&69J=^ZW(jTcYMK6QQxT2fA z4^e7st+><9iiVR&wc=*GZ9n9Br##SBliws$GroKtuaCvJIVfIwORzKLWpHlNUL(Y%1_Z_HT62AVWaFf=-IYNwnuw#$S7r&9D zPGhT?Lw%woBRk#9O!;rLLb+>YEs_+@yfH-^q)*m!INJvJ^ta;QGDPm0ni(|8TZnkO z3txH6v6g4A=Kb<%+emt&53yw;)T3W(tgNJtaiS}~kFa`AZ}Z`=xkm5dSi^Xdh(5>I zVllP^edH+YuNWXJQu{CFyBHpiD>3+*M8p%0zI4%_DkY#!HR>F(`sZ&1L@z#9{pI|k zx2U$VWab(Q?X0?#Db$eW+D6dzCmA?pyWc)wEc^wuIcqOOyOem{W!CQDoFjD)sJ+~b zIUaQz*!n+f^;wyytJ)%8X6i2Gd6?C~da*n#vgN`m6iO8_@NZ3wXWyG4Bh?emM$3}MFd zQf*G}m#k5gwzPqizYu|jnDI>2Hiq$R+>RHBrPlX%l>|_{#A(;_7M2_CJZks%$AIY+kKGOZi~-?JuZrMQfB~{vX@=+x$%K z(Tb|;9aDdHi?S-x2`l#JVIpYd%a1dvh$PidJzTKG6;VB+tX5V1mg%v2fWKnSHu_#_ zkF>IWLuk9SyvVvrBP$NRAn&e=+QoyQQpJ(ONpp7S|JTe>~Kq!^vJli{a#jhZ^6 zO00Ed21m&yty+_`UfM;=vU~LFOU=8AkbOi%(afjHSLYvpRq3&%8A{rKT5`br22}j1 z(L;dT-^q)X}VzgNpOb2Kpf9~Us^eqVkW&2h!C$EtCKHtj5{sGQK!Gy5AL8;Ra4SbZ9|WSbS;%$-r* z**Vto(b*{AN-45_L%*m?a*7{vQA6AvZjJD=rSW?#QTvpmjjgwH<~V)63rN#N`#Ewh z$5C^3C26o!&e8|@=fx`VwPfW8uhq=*oLX)xa(@j;TCH5vR%rj(M#%T{Fk{FWa5uCq ze_dh5os}^qmsXj#*8QX(dn-d%h0h`ZV+~u!Zhyegr9)Oxe>H_IXGg4@I&2=_i9Qbe zGJ5{L@rRsQ9sEQ|r1ZA+S<4#b9C~-*Nz=;w&{zFm_HbFQYKzs^-ELdv70W+AQHz>8 ze-abFV>Ihs5^}HpulCO8_XqDr^W*9#`ZyTiX`VD%Z)+Qw?`8x>l|Wh&P}49v|71jS z)rYodjan#ksT-0p&5}wDLhQ4{=3Avqi6wt>}zaiGLc&LP|55 z{pZwGp*;&|=j-vCEklu1_!s((F!H`0 zL>}wgN|&MMQHRh=W4*dw%35)E)bJxUsRDoMQJ5c~EAnTV+0mN})}(uVHL1rmO}eo_ zlTOapq!@EF={$N|$|_FLq=V>FCu-6Ye&s%mrL_UO(|JXD(MyvCphxblNvWYHdMRXm zm=0C3A0nT^1^kBRpYJ2VdGxf%BG3-nV|PaOhT7;OkZZw>{uuee(24Qid72a(nE>vi zCqib2bLe@IZDBl|z@Cp>1c%VKAh*L@^ziT){S~C`r%9jYG8W`O7=S(#xd3{ghafk@ zS*VMx_Sd8!sDYjynFT7M=SB{N(NG9`CUPFUn?tUUd*CJdb>uT}574B`*b$JaVH$dU zWE&WQ-WNF-4ncqH8_1hb0R0j2G2}t_@K2=?AvG+Vtx4&SHJ~;6aO6lRhdv#-3GP8W z>^Dg7Am$l84Kf3Kn59Xxk!#@qyum(>ybM>-pCE%-E2q&5Age-kIE7sc*&bS;cS81o z{OHq>GvFNL!oGmK4RiPdqxZ-U5Hv)S#$u;IW`@Y<9g$t&;SAa%SHVs=iG2)dyxtC= z*F?^O(&&qk`{6!h#D0x*vBu+}mqylrTYN~Ef}94Y;R^OEWPJXN;uv~nWOmqxUJ6+b z>O(*5CdgJ$27Nek8Dv4fj(h?sd8U$LXF>iA?|60!AZx%Z^cKhwFcZdMuSLe@dF+dx z3Yh~Epm#v_f%))lswOQ#Zh)8QyO0OrBKl3_69^uqNr$o1A~Qj0^fJh@5F5QavKLGR z6?+qM7wqG?cJa?$sbLd(1!NWI1TnG4BIm`tgNp-N7@~mWK?f#8^f%4k;PmJD({6Av- zZDgHEZeCoxZpO@&J$XjRF4Og-EBD0g1@#qJUQ5b(G^peQV za21MThoj%J5EH#M{a=C)#Qz6ls|ZVAB=$OF2qZ`E4r_T=#6mu#essu=zdqa_MZfWh zt0(#io`=r({tNvN#t?<_-PC(b{qztK7I6O%WsRT^`f_4z0~7Icp0dWs!f=MN^00;R z&VqdC)9{xY29uAA)TxBbMqK^TyOXa(5CuI4eXk*woW^rX+qdL)Csai5h^z+5(Qhyp zn;Aav1bLkGq&SATN3`&wYA|)4P@E7`LWc+o!>u>N5MH>H2XeAuSj=F&}3?T%)3bG#zL_dl=2LD1!?C;2S z8+rGjpF@6w66k3|So5H;&T?WuMXyCZ)1VjJ%=;1IqMt?HgpY9Xx+Z-^#@WJ}La%~s z2dmIOAnR{s{$MorMP$TntVQ%P$ez#*eb9E^%}@kA>JH`!QbPgk+{lIy2Ynp!5ky2! zu@fI~8lGIE{x04na07iS@+6!_e~A17;dV0@*x8Z&pd0!gzWG3OPjIdYSKE$o|k4Jptu4;Vx9bev6DdmAKGrB3nX6^!3PH5D`7% zG@eb!4pT4j83p+XI-*CK&a(;S(5oP4!5zqi9eD=hf~OaGw;~(D4fF~#dB;N^Sc2UT zITf0tA4i^n80d~!%s;G$kPFNQ@;odbJz@5&hx!tKF=QPL9f1m@j!d@`N-=qkaviNy$pE+#+>8*$UCDP6hR+{ybcQQ z0~dB=WLkKCmRurx!FqI+_d^2c3KOxXBiF+q^lL~j?}i%ab&xG!4iv#&gxm$M&X5;m zQr;WS(TgK1z-qXQ-JbWy2snTqcNOn8*ol4#8I|`*l{JhRdm}R1THbBwRgnkb8uY+^ zj7+(Xb&TE!ISSIES6NS9LEpglWb8=DG;sGc&-h0AgWcJh4=y$Dj``5u5? z3fT;n?`EAF?T`(#8IOaW1DO}1p-)3DfDrft`yKK#d_TqKq(hpN4Bn%+L-r$vUdXrDqmYZ>BKldR zdYHb^BO;^2Xqbh)0Qn5speH)Q8iiKqgOI}@1e#;#Jjy+2f<6g34NgL1?61gwj`5ij zy(Mxq6h>cwJPuKg^Pa#igscd;&^^oe-odk<5WT^4o<*L=gYf($^Uw3w4eq1o<{691 zvvm(WJkL=Tn6ilPaoDGjRhO~`&{r+z^Ui9XBlJCM7z=AF2Wx5$b}Qr=V~wE?V_j{8 z{^(U$ORb^qc)oujds3E;^;8v_qt8J;gDU8KSX;xv_%HtDje5wLPyl@wGAnB<9{NsX zo~`(29qHJQkr8+B{Gu;GW@k-(JHfMsY!B&KQ*W@(B4e_io}+i<-7$tWbQiq|Yo{qp zg!9-NkQrG+=g^NJufQqvf~=oi(37=s0DBMeI&4I5&itQ%(dccM>psSOGp_@&+asqz zEA*?#&rlz|7jxPd4nigDv&gql6g@X{ItrqruSM>KoXl%D?0=Be;Vz7a&2SS=!VYKw z52=3;rolv*g5M(05PdbVy(8B2#Gb^s$M`xj<`vvOMt-7_r{?G#$>ntNyoKDaBIYg3 z%_rt+DSBJxG8<%M&O2j&WnElf%6kiaCb_*ln|Y_7`mDQ8_#Z(#H+FRTEykSeLWXCJ zWL!Xd^!?1mLgU@R`mBbX86v?NVr&DMU=Re6{}aSIkLPeY`XqdnM{hzO;fXr~_DSx~ zo)lK&cPw%q`Ald)pJT9>($`tu58cswlgo1Cu`7Bb za#$9BUzd_x~SkQ{v{^Rb!OlA(_vmvzINk7S;J$e;nUC76r)xa);Tm}Wu zuOV;4W5%h@T-V!+yc0)4k)5w=_mig&H zjz_|7^jXOHa1~ZyhbP~uU>W*k)}Id6s>%N(~u z?#7;soDU1oLy&u*5&Ao1X4XM1D1coXSs!AfZ%6KfkMM~#cMT|nGHK2D|nzItYM4;;Uc^sSFPa+dEJb?4%r$~qDMlWW3IArzZG&nbDhzc zbE7V6Vgc)?4EiS4R3SJ>o#w2=^ze+eJBqsfky%*ZIna;r47}qRDM#D+JVSSRu4?g| zJ*Vvmp1)Esm9`JY@tjicAkVFX_Ah8xn7X^4us(RV3^~Zy(fgv$gfFlOJ3a55Y_Ji% zF0v=AKtG3!%KIt{EW<8`><0_b4`lmbFcN*~ZsvP0IYBRu+zEa6F_+lEkI3tI-kbf1 z8@u8J*3lH+rRY(o^Ya1u+6`^7W6fp_K}&QmxtRlX(0h{S?J#H_dBt{+%N9@#eH$_| zc}@bAu(Kd*Lk{%q$i0vny$Ew!51L`8z&?!r45Fh)VcrseiarLJn>o$IoPT-D+F~rT zSqn>-@%<6|FgYDaF7Kg7+rygU{^0|xN$k|j-+j1+zT_~uJHpRa=!K542B7J2a)Esw z={>>c0rV`$*02RGVt+zLImO(e??S$S)9A%dvzDRc89sMmH%4}a6X?Nb`F;<_(WfJ4 z!9h5JeFS+64x=YKM-Jc+`WED6@SLYEb|PdI*oVFZ`37oUAb;5PkS$;*`Y|N`7%go@ zZ-VRs%V0D1dE^z?h<+QH{1VR{dLd+KXaMuE8zP6oZ1lCr<1iKdDe^y1FSGuz!y&`N zQ1rye@~{#HV{b+V@s8+@{u=!YbVYYxVJuJ$I$~Exwugr3(~)zb3i=7;S$GE(u;r`# zoC~GUha<;AN%RBALlAt8=K(tkvH%oB?}+RJYmGAOEy%r)5B&sEy3Y4B^vuX65CS=| zk0UQYHuNMnSQqd&dS~PSSOQtG*C97S7WAN-^bHvxBX)6QX-J1&1K9-9qAx}sh8K_+ z`yEod#rIF69+fp;0q zK(7+QoWgYUWIM^-F20xV!1yK0p2m=n8()W#d)u^ht<#u`x`O_?~|73 zYmu*^IeH`BB~9UxA+cW}!|~o|jNT481nQt4LVkjLyc=p^4?((k-fN(D=J}lr)zA;} zoW|g}dk9srYx0bZhbqQBZ}2yIRMvhD zs0UfGTOo%)7WAdaYmf;&8Ed~VG=PlQ7myDjEqYGYbx%l*z6`k)RMvJ<>^R7b5D&cp zau~!wUx7RV3Tr(IcIQ2e3q3M=K4gAq1Cg*tBX>YJ^mEAjprY?ZR)iP$`42e}d5^w7 zpw}k0=fwUFy#z86)MCt!uN)D;2OaB3m6MPw21q z^M2jOvxA;zBR?FuB z_}Gs=jB)j1T(gOL2lh;2{zhyI(c2v2+26&pu#o!3z4`piIFC5dU319)ES^{NSj3ln zH*>s`HrVgB^En7wp)cOV?+-S!zR+WC;d|m%KI81+*})#OfcM1?);M}%`q_z(xabLJ z^L8)K31jzSH%4BAXN>RE0p4Q=`F@Q4g?CO~a# zF713uQFTg7(f&CpBi?x~vJuNaPd}B@2M)riM@D=+Q@)X=c zzlMASH_#Ka)^k8%2*GZL91jc7<1m*C&_|$4JQpftgrV5wk&U4b`gr6dmO4SsvP>_d*Vb znNS6LBXTbkME`{R44KiR@jS$VPLL3LAMzRKMm=OM_yZ17zb+i1UkSS-GCwS&>@BfR zHb8$yPA0=ga##?1II=XnpzdSlqc5CB|G-=pf?2GG=Gb|+5zj6_&$O3yIE{6=fcUUq zFC;gMh>h~k^mCVWpNV(JL-fR~@7JvFDd-be&+}mg>v$Np&f0adUMr#3WNl7_G_1)q z*!7TiAqhHv@+~EVr^LMrnT0jD7)D}0Mph-xX6RmGF9!wCk04_(uIG>rdnooY>Yc_O zkB^)5H46O_&sz(|q3q#Zf!%_b7O&)8K>gUnHj8>s=p)fio@2(cm9jzDbKv7@)&uek z{w`9kqF`B`=*uC)Ii`c94?wPWfpC{Imcj^zquR0GK zedJPpK3z^6s~A7_cqISfS;~tZh58ZJGY{xjHtgN(DA=LS6=@*V78EgU4SJLEPdvM=^BSdV^ywt1*?6n{?{=O+4} zOur@8;FEQ8#HOtV_mqelVXS7=K>uoyZP+4@!fcf%j}yNQyog`3w#jdBM&} zes6*oeG~8AOYr_aYlHlCfe^TbeI1#G_wjD@_Q=t&3;if^4s-boCSYeI=fz+QdNkHd zbf^Rau}32(K_T=r$Yjh*KJ;S91+WE@U>`tUf`sTdkuN|(562uwg#_?{cTIL=Zg_`Y z6j>9lqBlkMf(ftzdnR%zEJk00TnkgtA0wZDleIh!+l7n|qtP=UGeJA_w#ZJf8R}zi zMQ($-=r52GYcU@b#V(9218LFABO5?0^nS=eFcM;7Peks92>S93FdDrRvOhFN zUxhpk!91JAv122%!9VCNkewg``bOklNX9!N2s;ZhA86<^kgMU_9ma%=&by%mJj6bQ zEYEx6FnVX?WLSm%FY+7YI3d*7HL*^aIxY7R_#`_#vLOARJ$l>smoVbT` z53ZtjM@|Cw2;Mo^1(B8D5c+%M;*q>d(Ek|4vkfC)8TLHnPMC&XZ8Yl<`lFvkUVy}7 z@QvLNITtFTXBf-6fjsDYksl%NILfh0BCA7M^xeq&kP^M-c-9MigYV2^jtP7Q*iG)y zb57(rf~V+dCy{ID&AMBMeGyrE3O^U1KSCav%6kd@#WbGB={y%R7z1{DWT~0V33{nn z_<-kg$QSm-x#VdcpSjT+%qJ#jfL@>XbvJ0Tm~mmhKvrGCSkTWP??4jt_DhKwdM#sp zVxL651P%S>O1@XEVl1pjX*FvH@~z=BC-yyL(zUE3^vdgK4@c0;tY@u3-3>e|*w>NK zHZn%^xFM`{7>nL=6Yon{4#TjoAZu=Be$XRtp)T}8Z;E^YWw-J@7rPR&JrqDcfIJU* z(XVWy-F7}-K@9BO$baD*&rqcue7}bm=*N(^K-asezt*LLxIzy+9& zeHl5LIUR_87a5P|tq*!rsX2zF^?E!d4d26-KJq31eIE}{A>VUpv_>umki;v36vSioWWNpIgGr(At*GQ=N%fsT-XE3 z2%b6U4F_QONah7Tf@>6G0(~?&hgonE?m|r7fxTcJtb!7}`)0#QaPqEO1cyN4J(m-j zz%V!ogLvnyg$TUs%EMkbIf?J@lX=Er&J@NzmESeNHE1=B7!YX(Sui-z4x0>&x&>UJq2&7&^&UmjrfYiKG^T2tCy`Iknuok|8%zHHgG=?S+ zpLc9k2!SK;9*T$XUVwP4!DNsc3P4Bb0#jfSWMOTVfHQCbo`cF-Ee4HYGu(#v@CCfQ zb4x)-7z$J2JEUPv7l%f$0=B?0$iaI!7c7Ohkdif@4)Vc#SPlo_A-snV5T5sN73c`v zU?i-9lW-Rj@jfmDU7-)$hrf6)FMhHJ@a`=Eo8b~9JizxMSPy?3WNx5642I>96iLITJF ze?v`Z1ifH1OoNTE1CGFR@SI_OAtvO2LQoGnKqu%7^Wi4k1MgYJ1`!}Gq=I}<5h_7t zSPARkEWCzy@EozG{l_SOBDwQB;q8#vRN@n_NpXtH~zbEQ(+ zyTIJ#p^_ejy6qix95+0EAI2`@tHpi|*_3DgLR0o9zRtGDbay{~wDRo`AxZtr{S$m= z=fvjDKM;C7B9f+7KgQWI>`STNbVm@iRykUkQDv1b%Ad`a#XK3*Y}!o5T-njo>D!5o zQ?Q7`zLTlpsk6u^KYnuEa$i(mni+0x&V^BKTzAFSJ;94TpKT-AE=ql0s=2$k&$#Xd zIlcSEe5|4OFCy;8QV&WV>o1)JT`|SIxYBL;n&@E&{UxzR$L<%jD$N+vxZbL(&GU7) zC|jt})V)!(&EU!S}@7(RhktmNzqV$gXB`OJ{E) zNCxelsa?yx9_Kgxbx?dWx~-zc7knD~P#ZhTpW@C3eS#F%6njA^!`r(TZQz0IB_sXE$4ExMdfUT4gu6%utPU{A7swE06y@989FGazlk@Q5hFYq=fUz2&uXuH())!b36l zpY$JpJ2|^XV+P4JfSCMu*)bd^HM*tX6#$ujrmMT$$j%V^7)aZ z`q;*K4PVu^+85;zHSE_|a#6#~WMe%Ocl+aOyfr4?PL5zt6n8T2lqcfKM0%Mv?M*-V z&EB3m594LM<0JQsYdO&r_VDWzaaEUVIbw9$s5p;skZ5&ItUyFoQRVm<6K_ z`)ZPnwjvfzn?z>9<2Y&>*B3RZQ}xXC)c2WEJ+mHX#yfHZ89O%R6VW~tGd|f{g2+7h zZbH3FVV=W_A`54UFuBHQF`kwpho^%6HFNopwy&rYBJB9V#<`C_yJk{ndGJ)>?UATE zSLGLO<~4|tL0Bt^VvhH%h}UU7yBfWBRR44}k&=t{Q$(vG=-0gi#Iv5q8lfb$qPz)y zE{OKcy&KTaJ62)!H9fWx{npUe({?O(jq9E%eO7GGcf7O=R%GA4{i&Rhg8R4{kmHwn zcM(G^@zqy5bpQD~j$GO;F`K1br)94+P>bwN%GfH}YIDjh&Auz6^n#ieJk4D*XrH5{ z&yo0=-}9%^T<+?wpf3w9D`u#$BXn2A{f@(ORN<|fZOs1W#T{=&?>8CgE>9k-; zUukpok|WFc9UYvC`k1~_nVDQ0FlM9PBV`~Fqz?)&*4Pm%{vuL0;b)_W(x^Gxd_Gc} z(l~u*npIzt3aFRpi8Vu9w!PNW?D|;eT)8Xf-Ja&obKw^pOX??w6my@eU` zFwX$#5BCOgb;0WIv6+*z(o=b}=bSf=bAq?9^n?~?%@~L3#wj~tugOwBiViTQSnk1M zRCU8-_lfPfy&K@+ik8wl(e%#eBQv_t9=>reLKtsbg||k|Jj_=SM{=j{%&pAU{HP*7 z+m+lzlvvKK&R3m5zH=~>J8n~ETo2U@!mI!Et8}ul+qH4s24i3F!;UHRomFk zV&q9gMEnBXb|nrvL$tBjX*E5z7ZP{KcY1oLLr)TFLW7v@x~H&a7s69bbo% zTUqG#o!g*TBQkC|)#>U1dPt~e(a$+^6XSGB6S%_#)EZ1iCz>nw4s%*wTH{D4-3ZE~ z4ATx%bAr}`{{9IvPM%D8%As2 zDIUJPVcE%>XpFrPPpO&Z=t^Gq6p^J1*1Q{0`>!&TZno~kS1UN`QTwBr_k~`!)JhsD z^4Ef|wY(wp7E8%tu1XG@H?K#|cxJx%&O{F8Sw8bnr;X`vfg`<<0}&5zI?q2=Ex#XQ z$Hk|9L#ii6=`$CS6?O{eYbANUZLM_BPKo%eMnZYO*9hKpL}I@>Y0IS6Y71vA5w~sc zZ#?`Vp7Xb!WvW|C9S~PdaR+}vZ`eP+i=Nn1ShSy{PLsQcISp^dx!N6FwA`Yn@pkZz zH`{d+fr_IAtnwbLTP>7HX+Gm*d7X2dbf9ND997%-YP&iVmS8Z}3m zB`4AQdfQ>mxA`eUtn-D#XaSx?ku;w%6>>Cpb}+|M!a0&S54v6kz0*F4@%rldzCN@1 zzUW=cuHy~WOpbq~s@zn~QS&pVH7^zAVe(b>%Py>+)GKHy&G9dDCba6>eV3H)h?YYr ztR@vD9=ERV&y zd~dOGXE|EC58#vAI^n$U+$tZCkC@Nl3DK)0#Zhx=<;+#kBw&ldb`Ufp9bKFO6 zP0iHsN>Ar)FZw8F2C-W7KFi9i@5~M3<|^6idZPvhf79N&Ho8l?k4m*YGhCxQJIr4D zu=KW#jlfWBCM8%ugHmfRSse5BW#muDRGx6kK+1xM(>SehEHM^$opx82&WoCnl?q5%o~RskG-c!U9-_wlt@x0qjFI&B-P0eW2jj?prk2zba>0LFYm+EKzsB%x; z>T-H!5=)Sk1*7gX^SL$jD(Xp>!U*qZ^+Z;mlQUiTZS3seXzMCqTU{-+66U!6_Ks7g zx;6!;l?zaxGZ)0yKSbSgVonnq#av~AHU(|)rlrU3@}G=iB;!sPlu_R;TI_Rac=Vr! zm4*nGnUOYh_)o3uC?6Dceg62}i)8F`ZJhL&Ttw5sitrHSd*wo8bA$TTgW!%dR*(OPVC3<5?-_$uNEPaiq3ZCD3kkxkgj@)((5K~Gq<8o z5BlhN>G>-C6MSEce1uhNyl0Vmp0<;PH;3atcLLeiXZVp+!;vD)7`9+kzo$&qfT-5iQnKVk~28?5={@wI1Nr|MBiO?%br%<7GwiS4 zg28VbclD&=Nxfr>P?AaszjK0;${DzOTSVwT6)%+*MA>jWY;;}KcDl=WTUtH`$z_6* zXj{zg!U@lYG1eAmLph;5!i>zf^LQuM6g<2ZIi2nFpWM+SO!WKp6Iw2LtMC-MKXn<; zPVY)qOj@fivvX5Cv1Y2OYpqz74dj@r?+m6#^m^PD*<*5$Ln#~7%ROG?vMnnpOHiAD z`7+$Tv3$N1y|gy%(Q3b-{N}2Yq%~pUpW<1mwFy&JPG2JC*f@hA#L-_{LNqJ&5Uq~4 zuJ?wy7I?D+)pV3|b|m`VQcV3n(OWI;3^JEm)SJz--i&a#qo%v6^PXprn!=G(j~Xze zW;zhQ)1|wc`AY5hD@^7x;CGTTl-_%Y2o5s)*F358mcri>_rGclX{Gy{HIi{=KfaUf z|FTwLIOkr^o1lD*&v!=oaC4Om4IU^D6^06o zY6k7~{m!Mxqb|uk*!w8RI4{yTW5p}xv^QD2ChQ96gRKdhXta8!`K zVjW;iA)<$z?jSR-dO^-g`ss^z-`Oty zSbQ>rm8&tr(**ety(Bb8v&nH+Ev&vXb1~eOi5K3R-r4$lXEN^zZye8iD+<5&CFE!W zBRj1Q;a=!Y>z^HN*L~LlXL-*QD`WhtB|QvtJfZ%dVyuRj62jFvTc7;4-W`u|#CAQG zj8m4cn{|Er>xZ5|anj6F7h;%XjgL=B&eN`%o?LirZ_PO~Y_6LBq`r<0O5C7YPUCd1 z{LVtsUR#9xZX2)JM9C=IX!}Ut0&3;+mJaHw@5RF~dUwgMRsQf)TJDG~+K9t6#klTx z;<1)iS)NKTmblsk$4PffQTCCqUtA^4*hCZCmpA4Jedi+OvF@yL`S;ED6-8BRJ8KaK z?_B3R+GylC$jWdp(~H#{Wuo4OKJ$yUBuO`{y7oG}jfBruLD}>yVt(F>`ZLJHOj?AV zGG1BK<4i3}Pln3j5rKfrUrLLIQNI@%tS9zYeTQLiKE;M^HbpE}~_0;s((0s40@DwHwIlZ4m zHu$q%t_AM5L8`caGN6Csp8dKc$~U>bqn&G~80#I; z;{&2hqSV26cYH>WdOJI~W2g@pK`hZLIGrKK%a)P|SSN&`K=cVW=*;1|>mCn7M)>zLUwbUxo& z^P(srY6JXDG=0Z3y(M%n(Y8v7+z}a593`CBCFWw2I!Da?5p9Kcnd7~frKRp7W?RFv zaZ*uhQAd)x$}`k?ju(#RR^M4fizWJM5!ZcDZay?PAwRf8}o~ueCwYgTsJzezFDJZRXmA4sr&o1S_M`0@;d?H0361N6FU=3oP599UEOo?f8MXJ>ptsVReP_!RMmYt zC$*)9;&^a%zCRP==Xt-lI~Y~v8NzxzW2<(Xl`BZsmAB!1o)v74Z{vikd7-{s<;!N7m;t^yHBazZioGm41^TZN<1W#XKJ-5f+ zTXhC&>{hJ^Jr*2sNp$LKG21?pBHU%c^Pc}R!#-Y7^u++D4!xA-teID=J4?=Fgu@P+ z;OB7tm}94Hgp;XF-M5pKvob<=)}0=%X^e2~-#F)v$?MdAgr`--`oAleJv+kDrV+W# z;9Pknq*Uw>mBn?}G_8i%9L4cZ%(`ctPz#AUV>r@ANy)i^p4VjOp6j-2fwITU8ScM{ z@;v!p`GY55n7*lEMLQsS&$tcdM=6UQaD2@!V*6dTcYM1pw^IALCWn2G9HHWA!bfd8 zcUgb1b;c}fy0E=i+QU9P>6Jgi@$-92cy1NfNVA#r&fI1!b%%D=oZ>`k+oId0{$95$ zyC=B&XP$69gJ(lOdxW#awI^%lVl#y&WM+S8&@Zy4mLkF&y3*_*JggY@jrUS~vy>XF_fuOeVjk?ZcVCL`>-Wnw@W8d*TE)sqsOAcvJAA!Fc6HME zuNM(sk(A)x^UcCXrwczWO7G=-A_I}NveFLuhJ463lQ9din$hWzqG|z=)fd_q&kNS5 zZ$7j#x~nTIL>42Pvl;u$l~T=Rr6J3~9U|X{eTm?NG*>yMZ3tFKY3bDRFQJz*Zz*+u z$;^NAVyMwnpYVH$_Du1HnuGxdSUHBLgy(mT4K;i6bDTWExvFokDkC=&Z(sKlj^5GcDW|krcs3O;qsVRenauUl$p@dN-LFN?Vq4{` zY3^A>om*U!mDPGqRH6O1S_|tv-3yH^`ZC?#t1mZ48e?gyw~RB^_GOiP)zI1IWdL)%VuxrVU1UWzU9R21Kyv)X>W zFm@Ixnfd8)=h1R|b-9OjRl2I(@L1l&j?KN{2on>}E?++_`@+6Ti;R%)|eeC3!lNIB`O{N5_d@!+cq*(+jRH)1%~_L&IR_+X=i zGvl$eR8Fd2aCcRksmXB(4<-=Bd{e-d0IN*2|%8f0PIlh&Z7m>4L z?h{11Pt@g^$YBL1Dtl}WcvROdtlTFP%fPd6<@hELAICWrEw4_;PAczrZIje9!We#6 zg+w>*f=B) z_1s}>RbapNvRYj|F*A7wgGYQ-5l8a7&j%pa~oXigOOxBp{>`>W{R^o}JysfcJN2#cA#qrI}@Tju{`FJw19BWj89v31i( zYOWU+?XwAC_p}!7-^>T$W1(4l^wO?|=4o-frts^by8+eT1ds0CDEi>KwI}QspG)2O z%*fU~?*%6-h0O_OQL}<)uD6RO$rVKnsu+FoKc>?W^W4|G!Tn!@tL7IohhftrqFm&O z%^v3^jB3hJadl)7e!O(*9r83J>#8l?ufr7y9sN(1lS@16^4olv+2=btQN&a0tDA`| zx~qd3#Yn3sHtY{mC*?~2QfK9r6FHN@Vv> zVi?a#m)v{A?8WfcN}_O|auvGj8u3Ncd@E~=6*1Rh)F-TGaK`CQCYB@X2_D+Rcq!}N z6@L80_m|8Iz7~dv^wu>^itpLwy%(OtZ$auQYp5|n46fv^s`igCIvV~dZWk-oc5G_KXJaD%Rg}hf5?Gh?4WUJ( z`ebxKgm}({?G%zCg?nYPtB5#09(x1SPvO~*@Mt3IJoYv+E4t2^aXphb5{S@?Z#kPn zujtgXjAQ+`2-&oa4Yx8ob6zR4rP%oM$Sfyalvk-Y#qkQv8)vTOXBKOyJX|g7OXNh> zMSAf+_o%RQQg^36pNX!CkUVEdWO4ktIMLm_Bz%g?dLOa44sDS8u6k5>yg5Qd|Jk=$ z0l9^%ix^V~J5Qyd;bkg_)pO!!5$&Y)jSS>6KZUOt?!WG{|Ht!xmDGAIqvJ2DtyZRq z?5+3pb+TBJx_IUXu1dC{F2FA_*qS+^*CbzbWmu3BR!M?sIh(tHu&B&jT8uQE2F zh~GZ@8>}6^wbu_ANwhfH8mp#=DLC`8@YB@ty1F|aY*iEL4`jo4OXve5jODIjZ_Ol) z3|IJolpJ05{mqeHMiS|5gl^mEYc9NP>bt=ji5-9EczhA^#J|Ym@5*0t@)wTX4SOH- zl25@R_xAqAfBfQ+V#E`(b4pKHyNq&>pG$ZU-xiK8@TuxRW_(s}Nh{<^+Ml}OyB+qu zfw@CJ;WgysjELd>pnMc|y&@kOHO<%9dyWij5?Ofki_amSY`NK$Su4w!!;Z(<@v}gL z+LwW=iM?88Wa*{aoG3C`#ju%GnXOD^S?alhUHjGB9Y<;9-mC4$PG`>4cPym!Cik`0%NbwP zJw_AG{qJkPnow9B7q%@)!^|&Yhn157R9>Le7zU;1>#^bPm z!JWBd5_#uvZCi>clhVKZZXh>NOA5wy%<=K?ae8srMqg23RTDnHk}orRH{RuNkG4LD zGqpthc^{KoF(?isW@6t#MVI1jc-kbfAh5YLM9U9`b!6tH%F5^TK96JlI){7%+!^d+u(GyGfm_2%~h#L+j-bIZ7|`*OQeqdWU)6 zu!*VM^k)0gKV3AxeDttR|g{R*A0f3U}m7?-LQpc`3It!Ku<4t2=8B^v-Aec73NOEfH8EySy7=b%m16wZic| zuN+|h11UE%Ryd&~^L*4^IDXFNI+@7Wp7LNbuXl*{P}=TJ<0~b)kI!S;TGr^|sqW2* z-CXK;{U3Z7imiyRJ4PF6oa0+Z_dEAqV$bP1txRyNJjBKkX`zG8GP#Jg3l>|`etML>(nTv-{SX2tg?lIGfg&!Ja|aHUGhqs3~iebt>D zR2O;+M)<8lW*zS{=JP)7=`QYHxx&7MY}KY#)v%q>L%e8V$s$QykwVBFo__Bp-Lh)20b8J899##uho1sJW`u zWlRxf#rBL>D!58Vus>1D>{~5=aXe@sfr5V>38+3K1F&eM%0i7yDp1} zmhiKT$cVj++uO)cC9i9xYh>!P+X}WAMlWt7h1T$sBr(m-cIcwA`2wUU{cA z*B49eDn|D7Ue>pIh6jg*e`ayw4;_fC{vD!WnaOq9+^nq8n=>}6yJh%_;{QZCd^vKH z5{t-T0lgfK0 z=;=fhCKe`n$HJd#`NcZvh@b|Zb&rsvbxu@moLEMy0kRw2(cZ?;q(&JvDF^rjzmP$b zPJ>)AHE9~MD@X{+qQ6eBNdv($_z%MU3v7q?MfL&hz+v>nNH=%{znfN*&VseT#~&9> zM^*&!;KR~rQaum=8PMye)}-j*6uc^bv=C4=8eL@XdN$cO%c zkD_})Rk;1J^dJ72dN|zv=j!kAHK{*1iM}SDCe;NO;FUO6g!#$&6Rn=Cmj?gylEXsi z{rS%=AF^{C-iSZ{=?N-;UFg@4pTRA7<|3NZ0_4NyG~_Z+rKl#gLGOxe33kEjAd7>y zoPUJ=5_uU!!LNhJtzZUxK5{x333j26K=uWZiK#xa9w-Ciq8CHv2Fu`SkSRfI;)#ol z24rv+{RzI_0cK)Nx`ez44uK5l>ygVqA^0@p7*GY?0ofij0X5O<+Y%&AqDhsJ6+v=% zX=D{JCYvUuLw}iBlg3fca`27($>tY&s2+cUT@n2uI6#g&AQ`g5Sf=LeQC5hM`Z!r~dd_h_!pO=5OSpDEvM?4`y5!cvI#k z0Uycf1ayhIL}E^WF%$5$GB&!yThJf#K|^d*M?PZCWcV<)b0SrcnYpXU z?{x4RFgO<#d6&ABI1R*({WLw`yi9Ra?4nzRVn9wdP$LB62>Qp2Yr^Mk4MX$kb~ z$anN}6?j=>c2FN)ncg45wbTv%i0g0<=m%fJwcMBcvO69zqL1gjs4f@}H)2xf=v<5N z#XhbjH-5k?=;U6bKj5{$^W4m@JoA$ncAytW#skOUD~V$YxCPINi~=6p$ML@&h?<}G zUVMKA7J<0v6Ofrf2KWkM83{7N^C07ayzu43G#34Cg32}}F_0X#z&vGwl z1b;*9^Fcd!A!H`d1D>5cqydxR&&b71uo|8K=?A;GXKzKHf!rLKeAwfX-~)IEZ-y)m z`~~neG1o6h0DnME17H^K>#5M&AdkkUci_d4CddW9ACLEN&D3fmx8AL)HRu z;2Dw0Kyr9oWHfMr9>{`z7P%Je=DM$stN?z8CrA1~MflAa_yo$p8zbw3Qs6z;S1M#u z@F)Bqdg=*i20wt@3aY^eBKv^LTz4&zRY4YT3_S%h4j2IMAB}4Yw1<~LW(SqvZ>UlE zsG3v&Wfwx>wE9ix&^vqB22z^f^)}*&` zCgi?{KA7IDOJ4qfU!$MDfK~8G^nZG;jSO5fGtfIAzkt#3%Uowy)A2bIzMkv!0_(p1 z%rjWw?_@sv7@D*Ro)jOFvhG^=?8utbk?UvR98 z1;0$*p8BW-^{a?J137^jmxE^~2XE+?g78YncpwJ673cGT64cm-e$}ooYwu#cRetUP z*enL0Pp+HutM&|H$wZD~Q1gBGHx0cVC_{rK57@VVrwr@;cu{6277Hj@l0as^bnbpy5E4$=Dl|lb-51T$=n&_ zaVz{TeP57k;*`qo2h{YWi}wLdldix|v8GDj9fdbxd~}2Bku?sW7dCmXVXXo1tQ;G_ zxr}gy@iVZQ4&EBOH_#suOI-AK*sDQIZ>VoY>*;3+*diJZj3 z#|Q8;$fNi=7ru!e{s2~!lhNohIhh8Az`e{}L_CAxsflL+C=d6L)AgVeapXq-19=Bz zgC8NTg~VgPM-am}eE&wzAI8TethA#%US9*3OFoZ)c4hx;nn#N68GgM8czu~7}~B_A)yeRB9raMZ2E(IaYYOXL2OZE? zVPhvXj0>-V&u{VL4cG<7fh=Gw_=um!z;Jk9+h@=ht|Gsa*DCPo*c=0jfePr!kkLUA z_)2mz9pr-#N6O$9>t#njf?NTjz}p}zfz8-GORiRekzh7@V=w@o7bJw=BcGGNch+cu zEC6m$pKIu+kaNLdcvtF{5Y&VpC68M{W%|50dUm+|Us|%k>yq0TAPGDZc``t0>K_|@ zEct8-BzQ4;EH$`B4AIGVd~#ozUOIqYid;vh|MtQw&{x;&>jWN^H40&S1IH$zSEE)9 z@!@xPS^6zIy*2>ei5S}1K9Pfl=#S82gZl7)nLi1iBEtu>ehO;phreQMO6(27&N}#O z&;#@a&A~m*6ds4M27LKaAdu{3QlW;Wf!YUQivr zmU!la&%~4#{UP!Qc#cm$$@gY(1>Ol+37mm{rjI{>W1u+tLS#1}!D}K*flK&*lbW0a z%fV6fQOFTs8oW6&K9~SEkjJUlc=$o&9f1!>~K|^pFy*jcaI0a9Nj17*#Z*raO2Q$D1^j^qLU78f1&+Z2= z;nx@+7rWo-jl1X)c^yn2-Gckc#~6BJ4SXYcbWzt~@aD+qoIB0AhVXgdb!6 zV&+GJm!@Bu+4Z7FHS|{W;~(_nzvxpqcN05j;GL+0{x#%6?6}V0+A@hTi#1;b?DFgQ(eqXV8pP$CD zBJcsoO5hW*7f0WXTnQ?}CnIZvI`BNmETCj!dX;>3;@DN>0ni!V4%rZNffq)`13a8W z8i}qW4^pG?@FvKHU=F+%vJlt_Kf(KMZg^a9i`qTn*b(G55VH`yh#U`+z}p~efFd9@ z<6l_zQ_n(=H_!YeXs$< zpigd~@1mCyfiv*4TwlpD(^v3{X?Xum&3j2I;znp)xhXwEI;_oqhifB5`6me0-Kv6COYET6kwd?q*HpO8mlaV{se8Q&Vb z2Hnsr^LtGsey{2Xcg5#>L{J634|yHzO+XFNt0m<7B#;0;C=qdj$nfIG*BsvlBB5_a zE(LygV`Mp?z>^|xVQVY+nS;-2$RXf4JRLF~cnZJ9ny0}UZ~=WZvMV?OFM-Sew!ot! zpX2vgumF8Bauk>iPm4TGT!Z09kPSg2cn;*h#Qis@fqoBp9#n!aL{0)Z;AN57z?;}e z^zF#5K!;aGmH^+f^Sui>T@OZpf6$8|E$|n7WlVmL1qa}Xkk4Y!H}H|ju3#ZN8!`%* z0iPC~&zN91+>JCqQR+Di{Rg#u3|hd?AP;~>@Da#?AOk3cZXqwz6UpG!k>}{cr0{yk zTHrRNsj;W1@57gQ_)#7HlQl+hzf29k%IB$A9ACxwsOV#{F^c=e=dAe4 zz4$Tf{sWK1=Zcy5a~)rwqi-XILB#k3-ktok!-s439Q?{pjWg2&v(S4WAJIEg;C<=i zS6~914=U2<Y`7OGftmOc6+Iy`KJdYh;$vT+z;hx~05{m01$)G@oY*(R z>%fbGdGMFSc@9hhQ_+heBZ1NIYt-a27zJ;IOac_p9sMhLdI;*ldn4qpc{HgwUIpHnKFytse9^&u|%d zkI6`k=nIhNKqh!^-cz3vOImoONc;{A_dbEk>WW z!LJJ7AbK10n0DX8@6pp0sO?<%J9;x3$U`4ZL;supDaRTk;NKb7np!r4$D|$=$ZitmrGp~KrU zCO5u*O3&wT);x^;bP9IRJNoHCaybLOjM(>bt|`0&@kORLp5s?h^gr#foNa^aDyB4O{RctI?57xHB){72qJZUY{05Pd7XHw#3D zE66AGpHm9c_qu)pN0LS1tk?W~{3wSZ) z2>P@GsE6JVxte~g1TR8gL?yq&>525{XQ@L8>i3!TZ&06UGWUG=58hW!@j32yda@__ zIOfCxMd2A4--~NB4?GSsGS}#c{(PT+UJqFZM1v3Jb8m5abO$lqqweeBrx;(JdiLg6 z3HU-#7+#j^ekyRoJ&fDV=kZkFHt`;(*Ybgb@HE&whi}igKBu5hK&AmB;WxP_yx}wM zQ22R%ZyH6P*76WP`Us8p8e%C6-^8(2#F`qOfmo){cU{O&BJ`W|>|pvVA^Zy0ZFBMy zAD$KeQ_+iF@-~}Xui^cpI@e(n_+aw;1piXOXCfD4zXUcXQ-{)wD~64@aGAOJK@RLc zXHFkvR&qKFeg)}fz5ejOk$gEN^#gs;4{=%!`L_>+o?k{06=?z>kUi{;&f566<7P zjfwCb#&5(YIo|pGkd@3O$m=O%KA;A+ynkiRiDR)FKD#++prB*1yBL zI_HML6LEjOL~V+|Co*OcHC{k%Z&H`cUcRG~=u6fvQJBxG__U4tXObe^uc-O6%zQ?M zr{VfKkd4ok_#Own1GZ9Ar|9q+^!X-`%$~#bJB9m0XYN(m(9?2ndk*rzx96s&^hG}S zEO-}C5|l?Tip&Wr!u`naxu^$x9&)11K`r#M$atV7{BTZc0@}a_A_st0pe=eSWNOe6 z9u?^V1K>|`@I4xs1_q*!L5>3B;BArRfFDdoH<917^S%qej@%5Ez-J?;gZ^MWdS_%F zuo<2T`Hej7fGk9o7{r({}*HZr41|d>w)9ww38o;tLSx1nwi3(DNkb zcX`&!h}{)t7-MhnM5l1on?*!k7?}zZc z1Y0AGdQZ@>g<77Kj>ejNcid@=r21wYASerlhTnh&H-KhQPq z)y26de}SKmPaWvHxA65K8~4G!1$ZBVzrnv|$UEREKFp>@^Whi4FpwUc0pB9=xrjMi zz&`XtPsoPPTgy>CoD?~uop@Xy@;2i+kr@Dw`N9DO((zs8~GWzIUz53xBhwFK4S z2k@yT$J>#g+~|v=^Sf4T@(Dl9n2y-qO?~|6V~O)HJ#_(Fcks7i9DIbwjK=jrto1E= z2K_3ZndBJUm*5HF@_vCIlgZa0^u1nsk~%hrpCmWyINlguoZJ>;y_EP-68#ZtePdoa z_-xjE#OJHn@I3MOe8IXW@$oA;tblwIi}!E%+n9V`$GW@W1&}LlGBe3 z;i)xhMSiZC{62wR-OaV_p+4{>K57|YUHDLP|5s$LS90J+KaOmffcqIe_n!XUorpEy z9q-UL__dgv{EmJM8K0cyhwnwc1^M7x@L@PU{G>-Rpr<6RE+8R18g=LZWOznm-$8w| z(_25tRZVI>oW8vVuRyQ71~KW)P3R|(|AGzhG34($SZ0qSpI1P8@;e^=JhE?A?pg3R z#PFCwbO?=G8u?p~=)UjY({KK!p=oOIPKz4XCe4GZN!@uI|L42x9 z+}Ww=4{)D(^~u+Bcmn)*iOt^dwe(UmV(EjQnbB+G*AH^~6`7NqcEQeV>i!A+qr!J# zergS$hV4SgnLuIPMA$rpFT>GWvrg7H)C*pKnm<-K2LDX{CQzGxlS>!+ zSz;_qtUs~iC$7)f?*(q5w?&o&Tj0@=kBMgkd@*u5s1BB*XG6vW{on`ibrYxt&yLIj z9uR*@^wG#>APKw}GBt?9bsr7AD7{vj+<(O9xa9dsJl=cYnPSnm(cr{-6+J%ZK7tGI z(+T;k3HHMWkoQdFZzb4(-kSbc1y;jjlf%WV^_n;*q4P&m(jG7Z-kn_5V~t+$ob*rpF;@f%TLlA{rpTgca^40@gwR1_Xy29(S=0$vN0+;ERcEsKd8^zGy;9~>E#et8d zZ$7eaD{Oti=N;JC!FsphN5BpAxyY@InGbT4qe|#Ku=k2Jiow(2?=$@G4-SJ`APQK) z@c=R|vL~^;1pkt=0o?ayah<;gB|#2yDn;hK9G)Cr9iO6rTln;x_%a}MP?;3fN$573dG&X4{FeOH@v`QQ!ckMi_~S(x6SKY9QK z4B@?@KE09w^oF0OXF7tW@LSk!0KU*GjnFS6Gk~=4sPxTje5eKj=rQS=Q}l@r??O*} zpb!4#KE46D5Oky7OVBGKS5V{O@SMoQ)U*S=;@FikO97*-r5M#!doLpMdLh3fu0f>0LkFj==qgk21tTl7g-F%hkKBv zqj3L*>&QLaXU@^9G0{&VJAfGQw*fwzf=F;L@{ym!p3_q=K zj{qa+#lO(k#o_lJ@^TD*fj-{UpU=%)Lr2lQTrY95(zEap)Nn06uZ8EO?;GIX9CEi3 zy|K)_lkXFk+vn)PqQr87n#@L@&7587c`t$AVqR;`Z_L2^EqZ2r?nJD!Sa%fq46cXb z_%jebgxb|0r#;~Z81pBwRwagp=*RItvqX&WHhkAOj9MheRz>s)jB88%^1!{!Kg%@~ z1N*t{v0Udnx$Y+sQyTQ+$X@u87~To_8{?WIJ?JyIUglu;W-cW8U(VRe@W|Y|o5rTr zm zbTE+|Tj)Qta?OBGoNt8vNZ>6z8ND$aACpo4Q|Qa_ZvZ$9KT5r7fkE8!JEC_(#s=x& z!|a~Hr|9rX)c6AZR)ic!M!&(j$*|#uzv9>fi+XS@Z4&MQDVfW>KhS0J9-I8Gh7ZAR zBYeo<;r#4cj;L4*0(@Gr#A+^Ti~mKJNSQrK~fH z^&*qQIOxq{@SOs4qrsEX*IUS+mzsIdd+~2GNA7SBf&We|XHmZ= zZ0rVi;oFf5z-@R%M?3IA7;lMCpbkn_m(0k}mEOr|&2!Q&Et@Ksqnqhg+T zsz7i@HhXst`^64KJiRjD&E@`K6tylX|LvWyK=ttqfwN+cJ#ulNmUt$@Wu857(X*fV zi}iKR(+^fCbJahcr#~de;%WDG{?yQZ?GsNb(5zMRCx7sW{baER;io19_dX1sv7ep$ zfU`WyMQOtyxX4(1VYqqbS-`M&Gcoa{fH-fDd8jiaB31U&@jLq)X*<*uawnee zeb5X(O?E!McNP9G^%afq3w!TTSc(DQYdYp2ZMbAJw5 z_7h#|;QOD#yF0-}<#dh{>^G>?&6K_Tcd0Y*e8>EgFB)I2Npuera=^c zYkjR)Qd?~xqt^1g|KRz=Qt)Z!wzfc8#9x6|@pQKOSRFhSz4-!Xd1_2>+%hM#4_wW~ z%)&-nqNrg+1GgVMR;XDSCPKaI~x7fI7R_aHeU(R(@*8l{ziw4_|(+i zFLEG0X7;~z+0XZn_$sBAcQtlJ@^K-Gm&y6+us|Tbx&*#e-NJK){t4L6jc@PtM^9;@ zV0U?X@f+q{wL<%4I!TodimNi>Iy~3Ptf1R_=^PPJ7uQ~gqvyG0BD--#mjs{2Ihsg@ zi1>m}TmRM8D)qQW!@JhlOJ-StfEHhy=n3uR_5tr=$&*AK?57R}_hk9%R5EBun1}QEBQtYQPrNZWZ<@dltDY(z-16J!mhRRxx z+>MpcUa7&Ij$Yt%D)$VhSA%{QHMWqgv99mRLuT5~0@uPhYv;brIi9EJ)7&WnHN`Hx z_S0Kp8IOJ$GGcx-Y{ydZ;w~;%}~xo=p~*SD^`u^+vm>iE-Sna zPT!?wleeoe^&9@}fmY0DXl6EhdnfsOWAzB$v~b4S`|jA!ptfI+otExtuEYC};@C*d z-ZL$h-+rF7y;CC38VohQIL~7rgr%qWu`TS`9>y3(8)5gpYKmNZ4W5l;PdnjX;65Ve zWs(+qFB#X&$KKlE+3eEks))VR+8f_IHMj@gJ?(|BzTUwyMep&{Q!%=vh(74ZJRv6G zV+UficUj>%ep)=wb!EO$l_--*_C9MK>erMrZ_G39TAsI_xc-*LYGf!(v&2rW#IVqOyS7qlJ#`cpSgRgU*Y0_l(Q2mtp-7`gunnx%2otSDn_A)r5 zFRSzL<%;O+ToK|9o}Lo6>I|1E8UsWJZNSsjqQf$HezIReRWrF7wx3Y z{@=y?r}|`Nlu=O4%Sy3@p@nAX`FZx!E*n|DiE)N6raaJf;}NIVX_0~G=yN%sS;Va9Y*)Oost@-V} zrkZ&>W4EDvN6&1y+()QbPM5t`Z19!Y`^jqK-Wr%Ay5|NzC(6S_W;csfxkrcX_7}%% z;4Aj@)Y1jP*v-c2Y}L{El~?NTo5ZT2{eAl?v*l~vg@M)NLYHEPd*GF8ta%?_qFCGA z4Lx-wQ&>o>PGIeQN?bFz+u|eRqWiU<59+*TF(R%vx<3)Vytj&< z*_~dQD`hekFz-5Z6yu5&d_w;f^|*7rgm#YUBxe2hN(|d?~7FQ-? zZMXK+xmN^d?ejl(vh+e^*WP<@j``f0$0&P;;kwR>_UMU5WOg=)VN=N^_KdXI7^$u& z_zbpq)zeV=TBh^~Y!(%GuWu9n z2lts6MohJw%7o_qC)@jj&rg5k>*~7g-5IEW7jJzB{5$mV#NcCI32=|NIgF7(T2d7J4wT{{uHHlf&-&{U#dA+5C$C_(OAcoQeZ|gJu z5ziDJE2-8EPjAQ4GjpjojS~g;8RBl|KjQr!K4K4h#U45tPIy`xeB?P_}ltF@YliR<(JAIYA4rl&l&s)?$aHz zmcVU4uho79pR{VT@6Kuiz1>ugcc2ngzv)!MekO3}wM&qlPPVx6<=563e{g@dAM(UN z2|CZ-b9ZUrtF?_a2I=-rP<4c*X>ulCUcH)=^|iukBVRKzky6+@&d-Hp{*1NGjG@Q! z*gJ|ub{%rO2zsztI?RarB5OJHrt$=9>@OMQ6EW-k`f8vI@E@kXX5&`|xvi_Fuy_Ga ztE#JAe7(V|i>?bFo(L^8KeSKmg76wG#Hk7q)_8-p(DU9y^SCw`vCg(g?)lP!*GN|1 zACBb@-zWE7@^jQ3+%qUNGb&yU)Sp=eU8e(n=I>SP-IGGQ>D(h{i?qbnf6orLbj!$N zR(Jes;P~~sdDbyFLfrAXggZSx*3z5BTqmS<5n`A}cKW#d>QU{c7TNRMZ|@Xozb?x5 zbM!}$@f`TFmQlf19Oa_xcfFH3UcO`&QLh*?h@@1&t#%RD%`Hh$@+g~JCG_q}aEC3r zE1cJ~^4oAfbtfOi+ykVZ?wy{#zJ0#&P8@aQ1o{JWjqffZZw56|vrFOVt)CB|YhhIE$Ihs%HkDFy2Dsmj7BrZE9Hd zo)kspa%Lngud&rLLaQQ|HXC8DljB2et)=&O_ZF?XB6}KmQinaWpIDxT=)Sq_9S5?J zxsASSs{LH>${?A)pZw7~f-CZ}Qwe)ta{D#Z(QV#bv!Cvo!GGWBl6~SHUN`WAvDZY! z_OG~4I}N>h3J-UC zE()(xdzQE?VsGZ#Ro2U)hV%7M9e>9sgZh{t7RJEd3 zfXMBghSEwc@m7&rXv26;{|k3ok)?}9jX-6m{t=(9&$~C@Alg2E6stB1=h=R`ej<6D z*M3&)E2&{P!Y#fe-m6Lyy|O+;|6Ts!E`~>O-KFJu!g@Vd@R_CssUE$=F`4QM~y<^I}5*gIalX-CG=a=6T}k>t7(O9`f0{yGDGi^Obj} z39oUBT=Lbfc%{_qga-!qF)kF2q`CDE=eirg{ZwXa!5vGNd4>e?5VySx;Trcz?VR_E z_qMQh&B`ChVEh@LA2eKF)YN`{^?B73?&j%Ap+G$b#1;uQd?4)7)gQeo^Dptz&#n&GD3-tl=G~`_|Ck`{#I9b}@touPVJRjgw!Zv~nC2+21 zTl-CT6rBwAwhA$}Mc}%~@Om+(csTFDnW3Kxyn`$~5bc+|&vRXI*5!GzJSBxbGMZTT zBSd^xj9(WrB4m75KexTF;5}bUXLd7rEIG9IuL!>Ey*O8iEAmrYp6fH ze}GcJA3so)bEllxn|SR#sIstcRv#&i+Rr~sRPehwD1vvl6#F^-<0Ev6y=TCm<`L}* za-iH-FRr&Y7AVWq`izUp--m?*;s1U-$NS*^JW;}RA)m~&Ujxhr!qcF}H#}m@B=2SK z49CMG${j4&yKSV`D-i!fwB^zVp7s32v)^p3G&d&8y*+XDO};0}tw1){Tz^rux0un! z^;1;84mJ;oBcW9us_D#Y*#DO(?Pp8J4dm8}I4A$of_nlNuH>d4c?{6dsRSQmvuNa&zxZwXhQf->W-W8LB2Wg8LTnc~hU~be`p& zDBbt;*DG7;tjJU|yOWhaMBT+#Qc@JNq5X&_X(&(ond`2oJeCisU1cRghu`*;5gyvl zLVq6$R@#oQ>D9JYQt1PkIE&@#>|{^|c~p#PKu2}*Wfqb>_MYAUy&gbwOEX=2UHdhAm!04%g%QoQQSNRn z4*PtF{52&9HMJ4$UcTV|X|J?yN17zDE8ZL=bwt2}F_dx|X_{nH$aflD+RqCtWrQTUo=MzeCul z=Z_rDW@v6uR+IiRx_O7YS`q8>KvF#u|GrzuRaPtSNvBj7QQPBESs%5g)*W{r&sP1D ztB(;!8|Tlf#dEHyh!&@NCaSC5CB3!1X{?d{-bM-kHhH_~DSMRPS3X=dd$;A$VLyX5 zvT2_gTiNwSFQo_ftqmT(Yo1d}TjPnPf##LFs_W!Yft2n3R_D( zKF>s_O0T@Vq~5+BSg0?m*hAUo8|5Fw>KBX-VIP94?GG*L$T;R9{n7u#vd{HJto`3^ zFBKTQ6Z^^JLB<&JG$))_`#J1!@b)vl6m?>n7okt=WnSr#SmB&g(?#YMG@sJQ-BL+` z%@kHbYomI~h~k{D>Z~l%e`0Jlp1Y5F>oB7qI7y^Qte0j3 zqqH}rxye5(a2^knIB|0I3(Fs@cG@>l;l!>yJSFTS=g;Y7$(a3m7{1%$rx}y^#SP1< zqa08->238FY8s=f_q5vdeQ?VE*SbJmda9@vAV!Whe!{9DxA4aBy%h8Q@JE*qm{Xk! z<`nr`E8F`V+B<2j5j`APX&XqatT!t8`Ud`Ve6|DV&*=VQ#oX$4IlkwDGQ<1Q$!&0F zr(t4^D8_MNXR>AJ(|t9CKN-z{^pF0{Q-L#Qeunck!l?MfE0)P7K~7u8o1tp&0K#W2EG;7gZbkEq_P_U+3#9Q)@$hFEzr41G?H9N9dSZEt zdAH%+MQ6-ZqXOf9x?hQi?1KwgalVuL)K)TczPFnkn@S}QS3WqkwR($@Gkjia8fQAn zZ`IS1M&|eWu9LU2q6Upv=?xjQci#Bvv-hVAzT&E*)Fb*F&k;se*5YxN&#kTo$j@d} z_ZNS2cY5o#p49B3E%X*vA6i$~vDW9#=sV@_>ey()*j=n|k^}qoC%m2KUD(HX>OPK+ zBlc^?-=ZUviB;^eTjlB6R*{ve;k;&c?3UJAx=Tv-?q6Trm9d?|Y^KE|LwgN(IFIa3 zXYR-5Kw)u=vt~zYj;tD6gvH0~%Vw|i&bz^NG(4{wKK26q3sazoH@mUgrs9>3)&Foh zb*g`3xE8PQV7o7+u|qB^;ylNSX_d^bnj*V7#adOYnR+@;U-_pw&PvCqjUw9QZhLp4 z|JQ4-_byej_m1DBq{N%Qh2`(+dRKiB&kB)=_|{8LRz0CKU7xQUvsCv0=bFkcmlLD- zHzT>cHp<=2m(crzBcC)y->jbu<)2t?M_4?)uzBW}YcaxUDHYlJCtQpF&OCQ@HKwt0 zMo&@CNnb%{<^Rs}J|VI@oEToKyuCa{rR83q zH$NkaiEAalQOVWatn1rnwDT>NmWT@F@Sc!+$OBv{S-m_NP4BT6O6x@M-gRF3Gtk4` z(^b)Nrc5~72bBl^{V9Psd(6{FiYt7d<~PhrvgOs#7Aqw@q5ZV^7YWP<_bRscINGO0 zrbhO@S#?&!gr2oYCSX_t_FoQU6Po5)@UUnT!eHH$jkcy8=r9-q0fbxDfp z`p4>~S5l_Cy9rC9Bh(=|ewT8saD57#6cMEIUengPFSsu`W1cu`pQAz#!WBwjj28CW zbGQCiZmPU?zj6JcZ&8zJPo;rIQe%qo%$rZOcf$?6?49rI9l~~6(LAQt-j{T)b|sv% zQD#HeT$4Y_bt{7Y|EQng{eR@>8tOm@ad7( zS?Q)tRJQ0By~~X=a%Pc5d!+pe?)cZ6+?>#&n*D?)FLZl%s^IG*qqAb~i`2q*$7n2F z_kQ$MwOpR_roA8SSb3GRe{U7-H*=_{Up?xhxH}S`{i+=mTvX^@-UfZt%(hE(N>d7tTXKHG*_%G3i_V)H$>6K|}-Ei-Cj9dB#Mn)BD zr3@O9Hb__1z1Cr~7USCBom+P4%iYTZkB#i2tL%NWgRhsqF@uCoAh z+lbb-EV5UOo4}Cx!nI_jxrsonf|0Ovifde(FeJ^l1aJgjsb3jybP|FzQbB}Bffspv%|YZ->o0f@9GQu@r8zEp?qDJ zDj|2B>y5B4mC*d$sHUgV>berRYnZw9jm8vY+E+VaXAs{v#~TAfISglYypXp+j`94@ zKvH#tUPTJ`ELO(I@6Dvj^gsbEhPR|z$Me>o&D+q)K?PIwSCy+7bM&^ZA+FZ)EFrg& zKHaTxk8BXygD2&^$AU-N4}W9)zwK|YCvz;S<+V@#YE6!|xpP`SSfm7Sn$cfHyk>if3B$MAL<}iLT!U`!&BSejq&8dnx9go(EZ92 z$!sn!@%1EHakbRiN5h3ZDQWyBITWK--Unt%`KN!px=c^)|I;5syCR~yOI}SMhP1cT zOgvj{3Sde15Kco;%=n7BDe2|6fLmc%E)X1<+Xbh(HiUP2}e!& zn6f}$>mQ9BzpRS>?xFj(G`8$=H&;?<`9c+@ScBPU`GVfh%I&`DXm91|Nv;YL?`_1( zMITMSfUW;M1N%60_9>w|gjM;ZGg5zF4$oKLZP#MGwUIoqP~4lkl0}P&jS1MduAEX> zUGDfW$!DJg`N4CG*Xza><*eS{{e|;NtN9b+^JH}yw(9U!a2<7*G*+77_&3n?kdbpD zTK0+9F|fCaBhNNHx?!J%8gV7YzU!V8_I57PS2?#hKbH5|5dV3(rV+*8USun{rlP)C zD({&g>cAekBK7bM^qi1cr0Sd8y6XqWw& z0=Y!ZMfIE&eULx+dc&2&ID)phB2opNdgrI~kc|T(vxE2O0sS{uz<0p+(7Gj7;Su9^ zeevDhebE?*b*VxRTSa})0Z>PW4exOa{SxosFSX= zJc4UrDEgay;lwg0R(|reRh#ESN1=X}H zSd(7a3D0~YJ3{?aP3zg_9cz7cS=wmqU*u@FC3=(sYIL(HtFwsFsOZ~(j^LT3Hpc~P zjj%Fe(Lr?*(P=Lg6qfKidsl0w-dHb0E{Om!TPWfi?z2z#tr^HmZr5nR6H)n31-yL) z&j5$t*1>OjWw*LS+-LuoTQs-4(YF?Af<791GCMIS>eRD+mic#2Bku_BIfad$y%qcq z)K#t>dK3KKAv6bN{_od!=qzQ`3-r;7u=kTl*u@oionC z!4ueRnK{wl&6mklNi(CHr@}vf)Q!Yd^2C;Y{=3nrFc~Ug%!wdae9PjlB(Qljdt5-LqKR$FUbvjXOpbR-~~GD07&( zW*pXETjPk*ZBf@j7ayrv7#ZPfM`iLCmU3@vrd7g9=^rciRmPip&8%v3)<#^hyc49# zrhSTTZ6V_^bAS7mTSK(#`ax->JBRXFzw@sJ(gy9M$VyABtR*zW!lH;1lrM;QN60=U zs8#xA;pLq`9MOLd*~*V2T=kt=x#m-x2p$eJ6go1gxjo(0Do$Q)-dVnZyq@uWc6}gb z1+n#_?)AQL*7{{a-q{@Wi@7jmcr}B zr^Mzn_*?nkJ2BYrzGbx(nYXnqFt5pntrfoef$G*(#gJ$E>U)a+r>bl&`So&@ z*=NA|Jo!T2j0P2AW_C!b&Bbr)kaJX76wWka>4e#F3aO|?V>Nj1C{yt3F)h9% z2ZjX_=qu2Z-dRM6i^>?JoY5~KO&6SrBV}xIP?hsKHk73kaycT~7XOnnc2s1n1>W|P z&N8;kAC(nDmE2}Qd99pTd*_+&U+2zaE%Us0B!pq*5VIy+U$na3W#YaW$NEQ7Ezb<$ zSD190NKv)6&5S(LR+~fRIPT156@8zpMI;+XIrYMOw^jrh9jub?sK%-ZMlZc*PJaR~e^>$0{ev%ROcPBQJtC*pC#Iu#T9V z!^1@Ozf?-&L?&c0L&dAx1iGP&WG=Dcccdjoe!NgzgVM?f&uzRpQl;`90Pj2ZAg890 z!akp`Ts^S6v+str%zVMj4^}+#vwNpwH=m5uMIq0E@(YRRWpMi#|D{EDiLYA4R6^pH zN$6~h4f~9BNLj^L68{!|bZ}F1kt273kTE0_lhUlJ;O!uFFzY&FQ-l|#uqm!QQ^bP5 za5JC!GOELbhBAULletTuVqOVZ%TvUkTACu}RvHP7+uC98-<~GkvS!9Wzd&{Uu~Nmq zMsV*pQ;B+QsN7Pn8YPffNvbYlqq=hm-TYH6*E8u6z;@M-%!zet(H=l^|u{WAup5m z5<7B)WRDZIx4?VIEHC@vYUk=9r}L*G`(K5nK`TGfZBlDkoz$xMv{CCWUGO&0>-&4^ zot1{d8k_HrKr!EZU%0TxrrVjV%+l_wu5Nhs!itK_oxb(*e5|S=w3hMY5-~lF$L+Nl zUR`*3MULj15J;@;a9xw)tI+qbd$2Wwh4WWb=iCqipnX+)|Nuk(;%bjBGRqi#+D{&eKFc%7{lcF}{bnl=SAOL1 z4kDG|HEt+IKCO}Kq5odsxFkECWsg*a>$S7qSpHh>?N&+ul~6{<5Z6S)vqT}gsUAkY z_?BSLZQ}I*zgBCzz3;Fz;!5qyAtI;P)#X&lBqw6w<{9L54Ov^1`NO`V!t=6XRcj~e zMbP;U4;#DBg}Aq3QEqjERZ;Ee?d(5+q~(tM^wujUZoOR_(fi!rNlA^=_Ou!z4)sLs z^ifk-^VE_;-!SExK0V~w3AB9GhkBOM|0%8ZG?t^wOFT{Gxn_TBfiG|1GpB(@5!${- zI7&Z`)g$)%<*#oISDlb}xA5ql?$hGzloIqe>_KPon} zb^+}KbUEbppv?zAp`T43A3axS>(M_E`V@UEY#Ie_O+Oi1M}mLRSH<@HZuZ84Zb%;s zzj}gC)8E6-YT)YlJ%e_b7=%Nwwb(Pmhb`b8#Aj^)d!n!x3Up!Y`mqOa>1lKgVfL+4p4(bT0B%k2V_ofPW!8z&;tx z$n9WgKk^4BWxp%%oMhxa1$(f7|G>UAeCSPe`pfwB1{@t<&*J~+RKx*#3~P>|>jt<#eD#pM4}6mGImGZa{WRzw*yLr+ zL~uFUB6RnqS8acY(bn|rtpj~9z#bX!wgJE3EqWs|GJ^-8vkCuzIgS`6giemHdJ<{} zycgeZVV4S)Xp31lmG+fZ8o5Pj=fRn&pVjEiObpIJ|4y6};Nu!_2J*2Cy$iuL=nK*M zVOL-1&(zdDaAj~VdLOMcc4mft<>%hOjw|$D=<4*VecTV|oNuwe2ki~EwS%riAD>na zd=Z{0@TLaWL)Q&#+fRIC=mON#DQfluV?FV=Jh?dl-a+dE?NbN8z+nJOfTcFQj(P6Ni)F)U+7XOH2As#Apw- zv60$*gTD93exgx-;9bPyi-|3?U&wt6-v{)K05?JZc4WR|{WS8D5Zf~`b`&}}{a*5Y z7~GgO!`#$1IGcz4Pl$)#V&5a^N!aJYj)M4?h5FAzj^d(w0As%t#)-|J*uRWt!7c9p zo9wl-mH9UYIYmb*=tbDuA3K`R=3&DjWH&}%TIgKF<2-axVmFC+)*^P_uqz+q<&i%G zpF2Qb|F55@WSwP>CcdFEay}3(}w>Q-24bC)+2VTmV z5F6q9hJUfKZ4d1(^2cLGEzUrzh5Y2-Ib#;Oo6g>B?6;p1TQ4#GhJTp+6F=7>Pr}c4 z^o#Iy9((F#KgRDdF76sQu=VI1$pnv;<{b)I(VH#`av97~Q&W}X?wlJQ_$*~m~ebL(w`Ytkm zaSyZrYmD8&t}@^*`0<%owj_ozq0iyxHr9U1$i6k)zst$<6Ywqa@C2I+lKX?u@yKOY z{Ob%pgU-~*tOq_$ou-1PF6$~oE99dQbPn>J4Z1M89#Sj4;j^G~V|QZgpTT{3Jr()D zjt=1X@bp24hZ<=Podo?EsJ}SiXRJv{^Me~=s~~%%%dvb4_1(&6^cYqU< z|LxG}$n8{OyaYU*nvI^6dky@Ad>5rZcZlm()~8{8Mq>2^oEf{z z5c_xVU4Sk}jptx~8h8PD$wdt{B2N>c^K<{)$L5aUGsJuj&ye=u*3?j##rqKXy2e;m zT3PaRkzQx*Zgd<3PeSJnV&4|IE1~mY{~yF^Hux{7moGqI&GI6D1iY{~*2 zL!UPp`yL`ECUha{Bq7hF5AZ*uHa=359eCEPgl6%7Tv&mzlIYv~1Av z=qKZ6O7KTJSG2mc0CW+0`yXrXV8cjaSdumiJOjO7@o_Y*A@mUXl(d52kL2wFEjf5H zeR-Nm`-<(uxd-aeUVtl7XPb#_Z`wKNhV&h&>s{b^M#F41qt=WXB=#9=A1DF!_YdMmchCWg1TUkcbUBK~v1 zgNa1}}ZK^SHLdpHr%}Lfh*!uKgOG)e#B1*xfA@K*=_&H6p? zl>l$Uf0dS+=VWf^lGr7wo?~+g?8(KwHk>@4f*t_>UFvrXxC!^Fhv!v( zo_QK{ZelTj+FXdNKgrQO?y1q>s_=cImNSC`JgX{k&mO_{B+R!aHjBaax%WS-*zY2~ z(C4xB7<1#nS6F)+9arF~3Y`-@!)V#SIx=R_!oVx>wKMW>V*fQ_cb&c|IZ4F&f56+h z_mfH72Rtu!LYE-_zoTO=*oVHp#JIP;hWD4%G!1>tpl{O0!RGSd-RSs^j=bPp*t?c> zD~Zo1ayTAcd697v+>P;0;Plks0ce>VU4rjA>(@c|MP4UjHyL~n8;-Fy8gmbbb2;oS zg#N4GtgM%j^O(5rf_{kZlZ@>EXQEF)+W_v*bEz!t8o6Ez-H$#YZ6!Dwb@v__{b*C5 z^V8>`^#a%6nNot*6WkP=W!eJjqC0eQ`s>*CJ9rqeI!4^8fhUrq{@56YyjFrvgdaNj zDGZ*#nvcY#D=iHA9X<`hj+Efy=q!W$#NaUU@Q5|-kRKa*ICwhq0dPs|iBB`YY2j~y z%+>Jyq;?n6Z$kDLaAItFi%nCIbrt#qHXWcX1)n0G9@>0xCThV=TTbj|LZ88=?X+p& zCiK74W>Z6*p+AwAU9{HV+VoXu1;KZzw`#N~cHKe$MSYK^B?Q-?H)!#|P6E&VjwHgG-qllWPiwh=lS{SWS?_25JFLur436VYq58un)a=y3Xkw1VLE)I~>H zdRh+Xxb)}9LpE?V`l7V>;4tdt6YrUwxToVl@5hgGwCLbs*byHaU!wm#_jg@lwwf3` z1n0qzQrstJ!QUA3)1Kq=Dd?5V^~Jx#;PR|>(bj{nVZ(IVICQUpu7cj8CgA4khg`v9GW{yO=80X~I2+lWtBe7yv{ z9{V#8%k$u@#4jan3wRRajc8Bcn*yDiUZ#x$_r}-Sv~c9~hb~0Fg;@0jCqRA}F=zu$ zLmWOL+fS{BL)XN|0o*I4!220{!*jeC_zw5mUE5af_1w_m#P%ZhL{9K5?)if7P2lH( z4A5=3Uly`95%?c$?ZLbsJct;@WIPYg0t-5?ok#Aso4j8PcB(W+D-b{_OWv(M*X`m0F zyA6J&245pa$?22QP7{-^__TufM1^inpNhu60!#6U%O-d=a3cB%__Y(=A6b(EKL--W zJK$A3V@jiII=LDLos2mBL+qP_Yv6B5 z9OzBd!%cM5LdP3qTm*l|hAH4`b`HS*V9zAzKKPiQbrZoWkzW@)68tx@YKpEH#5f!} zD|vWHtj4ka8oH(+`xi0k0G%EA|4`r6!TG4!4(PYQ{aF8;*!N-V8Ge*QRuAmn2VRH2 zMX;d~cq~3Yqm9I_QqU!rGM+=$>D2~pT$X$W`&B)DZaCPi1 zPfTWlyRc>su^NTX6QC1uzqFzTOM`#Fw~4siBwr<<6C-mqz6QYMvFR!`b_81=W6KA4 zy3@u$UqRPiZ0ZeugwEB-C^Na zlZ0Gd$HubY+TgjYNrQ|O&^_>R4RjyY_X5`a<3`fUKcu#{DGCqM;8~hkQ zry{EZbT;Vu)XoKB;K9CwqF?G;3mYeCU`D9X;`Ns z>nb*7WV{0NZ5bQG+!I<=Y&%Qa!}u!nlmHv}HS!LBJAmvHtZC2M{RO!1s6!(iKj$SU zCeWS9!8c;K4BU}g?ZErpY;ck!{2Y{!`r|X`2XR&28SS7y2hhyQ5ToMHK?zh377-N1#jj#Feo1Jgs#qgIG;Ek1$U-@%sqD)T#$P2L`xr^ zpJSlIf8#rcc>L@O_8|Kx_xv4`pF5zh6Spv8Tol}en4ZF)0^niTo`trYT;0e`oe+yl z_;3L{I5jcld9Vc>8=LF$-tm(7j)2aBe=Aw{k=}>hZ3BDhNVj+ik{X*{} zZ2S{Eg?5@XC#acj;MvqoURpVDd-Oj*_b+t!hv!rbJ|jTa0-r~I2kgiMenY-Jj314M zjmSxaUE5f@1iYGdob}`An=`%{e|_-xfUZsr)apn4z=iwsoT0rzcP{!^wDZiJfF4C( zgSHl&6+KmmL0sglgnosL3$)hYn2DHYye#+u`ZvStBBrUKRcwe!jDKQ7S>lx{89%$D z<0bTA?(=5U)GhEd;SB_5Jc^@1P zPE9Svpst@%gT0}fF!vt5rrcffhc z(`RJ%M&CB*o%9!3Hy+%KxqZ}Z1^U*|=@?IioP6LW#B4Gx4BU^giOl^5pBs7yw%%dx z8u31a{(<;&1RMsQP0Xg@>p#$k;qQm;F<^`Jh43jR@h=Izl{L?zQ9t0%j1?uu7C4{I z^NKZ_BtFBC-jX|4h37lGSzP!Jy$9Xj;A;ggPXC@Zo%(GAJpH+Y$Sv@NEQ-W8GZF z&%!?qx;rwOV1EhlF5)p7-UrmQ30_0|mvLWQf-Z~f#Q1t1oH-4j2eBh1V<(~avOYiU zIQTd0?ausR@O1ivaQy{R)aPf&w-ql_rzYO$t-ZPTX=c9ck4nt^pzynzy$Mzq-FZg$k))CwV|Eka)V{aDdvGlEINx=W$^CFrLtkX}&rf2x? zh8{%U*{&<{)CC{1)0DXUd<&h2xWu9z12>>9i_vz0_fsbxn#wb7KJ*Q0?I3L`xF5AL zobdtRDaabj{gsHg^?{B-pOHFi0WLwDlhbN>dC!EtWl&qRDqzjcd!a%e!F&0v{ulYH z#OJsu&{MJhGxqY2W70uv*n!UXjCea4@n`<#bbf}Vr@@$h*hc#KSJXt}}1&^aI3_f+l;=#u2FgNAPK zP4vuV-A~41VCP42HxHX1Ls!Gz0{FNSoR`nlpV2iQoCEzodEf2_?v1`w*whys8$B-8 zc1B)3=wrOFa6-VgRGm-wdr%>%LT9(f4fj;8^C9& z#ggdxgB(nQ9zkxG<3oS&6k@R**}cJ8;HiNwKQg*N=Vo0aVjm5hf;zf~pI@l)8Tho5 zxYi;z)1bRh2d9YDVDL58cR*fYa5~10ljAw)O9stmNK#X5RKOd+Q;@d;{iDzm9XbcT z{0^={&BSHABsdLYiLkX4Z6WO*HkvLzLxFE$(+zBWiJ#GtI}4jM<{v=!0wr#I+N4B>@}w7zevD5UVic zJmlUw$b1Xxs}J%zGhP6k2EV)0_Q3msI*5v|`B*z2ISHUYVf$d#^=8dr>Siv!B|@hT z&4~xnW$bT*Z5nkr4c=1Noenw`{xn9`X?(fQnzhIq1&&3l%v??E&jG&7&+^5|&2Nk~ zL|#{P+(kwMd|c1E$@qI4dJX*7(Yp$qoxUwUOQ)qTLXKu&!xeO;0I$cF^Zfi?7Wxr# zkMkVXkP`-79UqqrtcNR9cgsx0q9vPqMcch>`!5`sw^+y)5`aK!3?8oQiq}+G-ln|RPLr+VI9m$D1 ze7A_(J#=fx+nfiVSbrQJ(}Q!tw;o$fa5{9{U`)UPtY=r1fHKEI$i10ha`y=X;7`d!7~?I4?f@0bfh%^{+I1-eRsAb`A#@A}$qJ*9F`fT^Fd^(fHFAdMP$GLSH5DN#y^< zx&&YaSzj%l7vv*6HTNQZr9}4LRD3?fhYPHki2dKWk0!8gIAb@#H(9eETdsq15X<4n zD@r>K{h2;3x)Xx4^94>rHx`7i{%HCa;&oQm};Xt}|USUv zk%`%SXbE}i;p+=tjqUSkxxlR@a)&>Cu`>)>N5)b+hv1&*XhqA9Pj7e+>`JWS(#C+l z5s&G#_TWR*V{zI}@>w7H9d&e^mJ_^!oTR2b;l1%5Ia)+JNX||`|4#pvSZxG%#GdTX zlaMn2x)FXY!=_%~i|B8NuCCx2$Qp@^mGBmUcER78xoF@PjIGC)qr~$Q@4XYKwJ_Qm z@O0|aC{m*;P7TyEuk&k51^T3yQ@2J50?{oSOyq6SY zt|4`F68xF^cnaTsa4Tfp2v9Tlz5x0eb1U#QH@GKjMo~L^cn`};{PSXOI6h2({tA7S zHI2am{FR{#gH`PI^PXK5oAN_HCSH%wl@%Np*#(gIhC15J=Y)~0kA?mP;ONAt7qVw# z^E7;XXUCLW%z(ZG4kw4z!IzQO7F-hCneh(fM5XqkK`$qUr;+m*pRZ7por!fPWFCjk z0pBX@EC`N492QgS*}z-zy)ySoQu<8L^O!q;o!k`sPYs`AvF{W93?~+OkXadBZ=sXo z!+GRC1h+))R%&@C_zY`y!M6pv7IYhItV|v&f@dQuKY0u%&pzmZ;A8N4!10LN2<-n! z+@^EiXxQD4n0|rYjlcDX#ba<3_};SSAnhOMH`o&k{hPosS>K=W8Q|{VdGIDB9wVS9 zlDj_0?FU|D*B~}^1<%BWN6a0;&Q{R3SU-@w#0IBjJR0kFVhbBIO2wgbGGC4yY{Iso z`0UkICU_~iSV9{L?Sf8@Tt78(pZqV!=7F@1;0D+{7rtY}Bqelzu!ODqsF5_xjYr2u za8zR2mX?pYnhza=oQ+5CRPYn*x9te3}>^;CWUNzwWYTAM(<2pAG}N?Vfw42{=HGPY~m)tjz}foq9Zljcw5R9^9Dm zZ`g4coR9JN$nQ=JE<$G_#vid|2zVrZCWH3D-wV1c{!c|`XYeEJl;CR&?v1TY;I-hb z4gHY3Ji^vQ;M0s3z?OL6F4%X1Hl8^JI)MLckbR9Bc#0iw@gWcW4(N2`ArJ9i3H}Y+ z(&5tz@K)^3fgj7jkH~X(Y=}!64!w~Yokwg2gC}C=d-z&{E8*V)>>Y?5O`)sv_aFtJ z^MaS5vm-V@v8>1VnS~t9xh& zEOadJXySSXyb?WS>37odgGV4c9(>!OqvPWyWKIQt#fAdJaWc3B_#Jte0B?8bW;P$b zwFSpQ{}aZ4GS&wA4)%^hMpSSI`X#h)`1B9sgOM`}{zuR=i1%y8{s32I>;pEA0&hak zMdGoKd{u&;MlC#M>>xV2;&T#W5Fh?E(1oC%;`2oCHvGTC+z{|i*5pC<0pxUm-bKFl zG1dS)4xiG&mx#4>p!dQz$*ynk1LAQK8}ouwv9=>V)gd-SV;U@ib&!2Dr!k6~S3{Amt7l(_W-?_%sPBD(1h>M6Ow82+Zv-D?d?n3-=Q-;uf=Am8e1Ui;gC`ktGI{EM zUY2I_`6s>onS#$Iy}+mN;WV_x=a>S#7e0WmG4C5unJ>h%BQy71F6L_ytAxZPDR?o@ z-+tJf8+r(zC&t<_W?e0CWA3TFtV_&$N-pUB)YvcL;{{hGM{`(n4?RVgPfNVkBg+MS zj=8anwc|aw1noBKlF^UgebV5$T7~;5KJ-WEq1f~geRaVf!9&nj0UN47uSd>t-d9S4 zha)?ieShLl0(dTh!&r9~x(fXZ__l-F6Z6;17Xw$rhP&h@54IJ7K7>DaS(hKoNdrBeqy%|zD&?Rz+2#Z!}xP*>>PASVt8f7$ch2JOq{O6dl#868S9HbNwE6`_$d6@Z9l=eh+BDN_avr8p&MZHP1fWAmtn2} zKCdJWH?cJn>wVaA1pLXi5#LtW^@85)*gJzdng#s^p2Wzn3x0^a%H*^vcntQmr2UO; z38CB27bR{gI4^#D#E$RC$$;z{#L1$4g-*lzRrtIFyqUQHtceHC1`eR77Iwsj9)P{a zussSmBYDe?pNrA)4EwL4HyQ0P*v;4@^eqFIhR=gu4{}CA_eSaPz?Itb@;JpR@9lpdo+qQuX06`!1^R}teim&nyxXBGlBH6Re+e>sfX}h+8n_Mk1U7iVA6efLIw^EZOP>#V2E5y#E8}ZtY+VPQ#F&RQeZf26)A(LB|7g}gSAyr@M4s2+W#f5vU{`YR zTGn)9%?4y9hE~DVkg0%o!;_45iMUQ=JP$I9WA8@jgp6lotSq=YV|kfd16>+=C$i!b zkB`K+0DPsGzYk79KLFWp(Rm2E+B}|#(1XD@>AN69W!*sNtKiDm+#lQ*ydOEez;ThC z3i>EAT0&QWj)UI%;B55q;Hv@7kDR>VqV%PqPthl$6$X!DeNpDFVoxgQ=HOGvQNUTq z!yRN_BuBUDH?s-Kv)k+t2mJv)9Xr>6SHpJ?Ig7y~(A$#nVbHUni_d04-X@f_e=@chQQ=geh> zJ_6kxoDMt)z76noWlHg;uv>wBE=O$5 z-d{hHkeUp1g*{m{brO3Nlu_)R&Pu6w#F}^B(QYsDX1miXqd812p0A0!k+oFJ*)spV zCa~wZO$E=V%i@|TpJWG$%Z`Po%o65x>tbLU=bVqx4jQq%cg)Xdvrm+?Pa;Nxx2;yh zT}Izz#SQJFVDCLxS32nK8?bjnu`m0iYI_I&#Ga=DvAc@V-434g%Asu>-0h0py@dAn z#PHwq6wVk2k$;mvWgTkSdp%F|uL|wRuu|S9bl+BzsKwFP(c8n>JT!h?qXC3*>CtCGz6=BpWS%X{o8=dw?)m81j0nj}=jH~#P49_i!St9J?6 z#y*su-D14Hbr#L3z2iJteD_5KC6Hej9`9_muesCNb;MpDaoMLwao;09wXd+XT$(5s zbxZy|o@s$pu72*szHwfASLj(>Jr+2w?H3ge~wnD5{H^DB$^M!}Bv zSew-M%GvsPraHo%DRe&tZD@|ZX?EqX?@VxHowtF<-qWk9GT9u&%xc#VZwe!Z@0kA8 ze_T|j&DTt=U?$hEs^#6+`1Z)_kKw7|>FyqE_7g%nx(d3MdF_3GcZz&`MovD~X0w8O zbOtr?bO0REEVDLN-BJwrBhH6*S$C+-ePZ=k-!<@VQ6U4hac-Z_KJ|v(n|ST!w$FX6 zqYhNkIC173N>3@~=NK>iUcIS*pNLck=kER6T`iQ6pdCGhH~(9~LRg zJXJkAjo9w|QY>LQvWu;rj|PYwzWqPiVK#(fjHv zCSr_id4PYSI?jm_y9bG#IV;O;jq#y)4e%_t>>YL%Q!9O?!j7%%o$JJhDrGFM(8CE4 zWIeN5(y6NmD|3c<1`8rEszo+}S#s$o(3BN#zQ$udP0dlwI})!j}V5DPF7kQVPFJErEK^ zlgiwopYSx5*6DqGD}0#(6|Fxb#deN4!BfqS8y@lABQ$K}WQFNc+CX9RbtKN)A|}nX z59lr+`0N!#j3~d7_?W`A+}x=Ddm0J5erZqLZKVpy^iFQR zxjqV8i<_5(1?;t^CL~jfrAiKmEjPGRv5j~-3BE#%u3_ZJ+#{$o0V5@2Tv10{-UT=J&btpkIZLGksVcI7rrFFbc?XD+nFqU9%Z}i$b zvGx@*?Q=;Ux}TV&n(9NySB0E$gM|?U8SRk!B2cd25X|Ngm;Q z9~hv{aaTcB3VTu-YdqBc)a;XVc4NyQ<|OsA$Wm};WVl@Res>XXNKs~IJb8s!7kTf%$I5Ts zsO}@?S0jgMpD7=4y%iq6cle{YM+P1R>iClCjRj9itFp*bTPH3HL-DcC2D2|yUfOXizSn0QHmZ zsnBJyFQ&Vbn$U^QGwmHj`RUK!&fJ6KB+3u! zDyNmyZ=Za`d%P!)Z#F9q=&OuaYE({yFwknBshp70tx7A8wW;<$d;RCK)U@t5{>$^^EEGOvakz$(0Q^4`v=6e&_hp_ydbC)ObKXMg! zceCz!$KX}ORU5umauOpTENdzIp&<7@$Dg7Ri}_6ppEmSW z?z^7tN@{)=_uhNbb;*4;u+>^9b@EixM*FvL+LXPAY4G|B{tx;uC0w^pMIIz#T7}nY zZu_)newyV(q<-XXffC@(^ju7g?}#=m%%Dk;@Ju)3^npH@51 z%^zEF**pG5oJyF~a~+S{D@Dvl##!@)96Vou%nHBkGu!OzF4RV?h<48FapH3=lyiH2 zledkdJ-EBLJ;v!*+A4F9+=Wcq`=9egaHOk;I~e+VSl3a1>g0EUv_ttvP3HJi(qGrf zPd)!uZ}7y!u>~vaz4_OAvUp<4-<_K5 zB~4JWA?3Vgn_roimTH)Lzi)rwf*jm)vq~hZU7nlDcPzE{6CJOfG};+&wcjE|J+aG& z?o84>cL14uk`GmW38@`?=|oJY+EZLf?%Upj ze)}A{RmQI9NX_rD&!e=jSRztcsQakeQTG)_7HTEDBi;5%45VZ_~rwExZ>zSr~~YE219O5rr%A z$4F}$tM7!pSP$R7*LIJ+TRVTX>xm)vga45-L-)dwS|7%5%}WXIayvdQcWRIQRsA!S z@0{5Y!zktI=S^(cJM{nWtFEt?R#09e_eWko-)!OiN`4R5f;`9e)OMuuJR^q<<@Hw8 zzyoEau|1F{P}zx;eL@_SOH1Y31pg$9UsOpy(bh(I|lpyd)Yh0&J`!z z*yB$;;li$edH8j+R9)N^eBN;Hj)2*FNnh;=1Y4twAC$_DDjfS~@AgGZofo>owD~PY=!JcZtkjF{Xu9+vgJ5 z*G4(N?~K0%x;y&z8{-2bK=yvTtvSDQkMD@=b;aj2(7SqCe?CV(zl8lCSAD6Ch%>*^ z64yWelj>Tpiq2HV088`kb5^D?r>m`uqG;AUN3i?fbJ~OJZaDc@_>XAbza1^fLlx}| z&}H;k`d`Lt&LcVM+&x9CnDRi=FC@%$-E#NRk9Zo$SG~W`HcuDkv976MpU`4oD?MFU zxk9YIp+qBRcZFX~M5Jz*qu`4;vwK`9#=*6G|DxnF)BCck_P*Bb1EVGTT>E5>m;5=R zCwR8o6eX8q-Fbbmd!LcTuX-1Y+N`YdH9psBF`wHqMU|&i_Q-LZdXLZ)(f>4tYcV}- zyeWvrGUYyOXUGzDj{FPBqylD^cxY z{U=90-!aIid_!HG{5`B1f$Od(>Jn+F)KHlyoyYzmMmN_3_kC6b&yBk#q}qFR^Np=* z4pFjCNBqC8@h*EW>r>J*HMu_`!8x2eJ&qi40ysa%7*c(5fJZTg%1M{El)=d*R8h+|=w}zC7@s zVC_?};<&q}`pIT^id+N39z(xAWZG-ROM1wbLi3JLX3|S9Q+g@tP0AgYh-4oSKvGQxE&_C zU96HuQTkI({(@XZm9ruHHya=1yGAb&k>G5^>rLTB)sXZo5fh^CDY6#aOFcNzS!oZb zO`IN!xwNj&>ToL7zKZ&n8fhc>+n&1I8;a7dkTv^saZ;%?);mM{M6BkTiacBYEg+e* zku*Kz#ZHkUey@U@=4h+ys^Hon4{|3`T}Em5N$Z`V_?r6*cI{qId&NHOu%2CJeWWG3N4q@F%DV1K;d(M2}YUME)VP7_Rv-_cA zc?ZX`ow|K~xqW?=_PegjO|h+^r;q2P*FNE-4jx}sTFC8u|0vPaO;p70P;`T<{`-2K z)t%)uB2N2-g{P&=*5E*MXVpN@26t>@z>d zDaA#_epea<8XKRC3$6i%+f@nQ`6H=F*D|rnJ}bq(o`}2Wo!EbWk2{a>xCa*QV@=XP zW#qnADynkeiMBM5*U?=lB=5SLKSUE(cK00py7v|2fMvBA>s?my5z#<4Oze^qqf zGgS%hNPm@xK2y2{w%NVU<(?Rl`57C2^BC?1M8H0|WQgmBZ3R-6L1lI9woh-fuUxK! zNU%>GTj-3~r!Yv;LFV$wb+PAvUPHC9YBo=pbDzC;tfPATSLKm{zmnU-Xk0zFlGxaz z^wIo*>Vd~rOZOR31*x5t!_BDFNi*zrDIPt#`Iqtv`}&C(74u|p?u(|3@$IHVO;S3c z;fs^o>1GZ`R)meesJfD3%;3%#>;`M_ocsiYZT7=DY z-Pf5_ubhbUL=wK5NZ)QA)#9oZ9SiGI`9&0dS?^p!%z!_gkg(d@5($;`azuNDve>aJ zH6A~9cpHam?TtIXxRa+V9X^6&83tS(a3g=0H1w-8S*-9rPRYrNC&z82v z89m_CQ-p?2u8w9qb+UGzaSK~-s_mVa1Ude|ms#G?)_yIDde#{2ia7mcx^+qI<@>^l zQcl!t{sR0(Ay01+jSomHrnVQe7XtRl&YYmcY%|Xy*G$KA?lO@%s>vTbDdeZ%Z=`+_ zo()7&1MI0U_y>n-h`-ywvq!c_sTx@dcOqKMokPkg;`dO_XB;+jdCGIz>?yH2c-l#M zIk8w(Qw}qV>CyaAl(?=UdRosC^P2KN@8)}k-ua=Z30CJNs#A*}m8odhuQZodswG^r z+*70h-d^rQzImQh(ly799{M>~VRudVTKH#LTF6^l)KSL^`%EPJl$HNpjquiEH6wOO zBF)wMPfj9MM1y0pRMfqSMHw|7xO{}-npKD%ahgDjhgbg?J$HdV-Pq`@7`^B-5 zn)IFbbYXOZlF$3XH!u|4EO0fqa_hr=pV%RipLd1y5_%T7gFIHxq7D-N++ZenWz_!U zpAR7KE0VffO`Al>KAw$$ib=| z{KYh%WW@TR@@)7fxa~8=-0Xn;*l2H^l}Bl()U5IxPaF3DrBu#6S4+tWZxrvdNcFWFD}vWgy{45b zQtUcAI3Lr4Jbtr-C%fTsV!oR>`}}I2%I=aPnl|1gcXj8WCT97k>CppUm1N2&-9FRy zE7mR$_aA@XD^?Y>+5gA&Mfe)iYo9?EabX#FH33%ZL9Vz#LK&xkk&z1xK3z@C9B`iitH*C4P98GdRkxaJ|b-8^Rc^- z_mEg~!;@3mp)GZ^tO?jB?r;|osa^cnKvZF=?E578aQ{>JeW(&++j$IZajmqj;mJ8Q zc*2mq`V>Bm6mrsgHi(s1)I-KnxYkJBjIZhp;j_&-@jrI+@09v_Wt)=7z1fpf`Q5l_ z2IO|0@}92NU)E|7t-?wlB4eLkwaD?LwQucK ztE3PzS0QbdzRG(T%I8X|<6IV|t?+NTS4 z)wk-!nXRtn_2_!Dz-&o3eg-a^8?B1cU?a1L#dhrzeQ8#wQlDdKYf*Rg-EI9>J&lF@ zjjlhapy-}B;+~i&s+W5{a7(OTBKU1bdLtt$EqLAVPIbF{gO%a#S>{`_uR0696L?g} z;Xmlgi)C><*La;H^zb`H|B+B6i@|H6w}i(KdTgonG*@7;wbQiZcb>o0NA~uMQdnTT zvu2@V*-JRb3tNMhM3oa0l`X~_JxrhP%P(U5OLH5RC%*fsb(Gafy|0A@9(AE~j|;R`#=EoPb$}LJ?%>5 ziEB(|&3xmKtAMA4Z#VYz!JHTF8*cF{2ykhui&4+<%|74yDkqBuE&jh>UH-BD&P1;q znp|oUcuSehgwJ_}^^F)0UKt{Q)GqKu*<>^~6X}KArB2QWL5 z@9*Ds_w9?=wz08o+qO5hZQIs{8z&oEn`EPnZEU#N@cne%p1ZTZ|J%=VroN}@xT^bN zW~%JN-dgf%^Q2kYcM)?$ldo(=jUu=lMz?0<(0H%-UDd86ZUSaBi;3I zmk8#DpG9LtjOR_~Z08f;-@TIF!e<9p<7Yvzk-L`o!(vZk-%g{4yPkX6+nli6D~{E` zKEjE6KU15r|EW(%;H&*mtnz5V?s6`3gxpctrZw>_5w^~XJMe(Mt4Tk z{xDoKDH{>&#A;mSWZ$9sgL_MLMkTThE zL(R$!AP$=r~GNyYp%CYCR_W0dCfjpd0}5;Ppa%%Eo91u*P$-G zFkX3M`DP0XMMRbOc7Ui~>9hQKv0YgnVP>-`i#$pP&WN>fR=I0tm7Fv69@r(!Hg4S< z?-AD7X5!}S~U0%F?|==zEtwCf<6*QSE!6OPF^l% z^f9BSsaR~*i`Ob@?NwI!Ya6jh_rALpA~NUh*Fq=ShI*QypET?-yF5%;3Af9wohhk$ z6nm3>-}fS1%>zQZj(x$k+(yYxOl`6A#pva~?XKY!$nW;(TEk#AqMz#@=+5Oq>QK`h zA$64J=$*Ch-s|46>OWL0^0gu`#&XUfJHDUttb z?Rg-z(v{QR+6FI)o{+r*uGzKHMAe4Yzz$f2 z%yH(zz$rI|y=WvCEB=9y;oWLDv~ME6zMfBb&n;wl9YHFpM-fjCNAQPHiV-b5Z&Q@& zB8F)q;;!UW-wd7i?GZBPe3__<-xph1ja(1Ti;pj-wH$H(z{gDyMr-6PU&9~DW@Yu=nNGTkvbY5J=5e54hUb{HG|ll z>zz`SwU!$?7K|hMno9qkZ(d9{!d61^$?TlQX3`f2p_?UD4ALjm*rEb3Jm`-wXdKD&7nIqvk!ep0SSF9A><+ z9LuOAd@)zv)QQb}Gy z<-UvD9L1nr&Ungs+qr^A0zLFI_EfDl+45JXVK37}lrbW$3I3kcJY}zU?-f?JQWl%@ z&8x;95$)qZR;9kM(wZF%Jf2dOCsojY_SCY++HHvb zxH227Y25la^3R3EwSkw+TwN_cHQH!T7a4U&axZA0veI}%K3R=hQU&iMtEsoF9Z!Aj z^Xu!?Q*NFO)Tvg%aL(DKY-080^nDUp{%%DV(K`O7dJcY4#P-!v=o{)!kNvf}rN8;lec?!@CXXdZCS}BDIp<#|!fFL; zr+Orq$g|g)7$~RwA)>2nR&o9F{=@q%T$B9d+&WkkTl}Ltr@So{dHt|_(jX%U_7lMa zW@|Ve=0h*!?QV7>J*DO2?!4CZuR{ABEwiSv}P++0GtP;ZF5k}O)-UQg zGLE<=g|ixoZhWG(#M){sohQyso_e0Bfx2RbBQ$1sXKBmi8pIm9c7<^Q{$-!ly6Dx6eqt;hBYBPZ+FQ>Qqo|rNxY(_K zDr2LTkP4LvE);byp|vDmHg{GN0ov`54FEh)hCnV1goK)&yDL( zsvo*yiq&~St!kc3suD}NU`)>=QTZZ5qpWAP zsH9`>6xQzfXG@>Gx}tlcyFQ%eIC;i%vvT-Po(^^n+p@CwujzA)%$&31^s)}6a^bqi z#9PF5(zo558j#$cD-qqaGt5p_CXqScg9s0G?Zm941IiZlU3f*wQlGG0J}GO@+>y}9 zYVfN0m6^CBG}sD*tFbmns-nlT&zc|I zJg?bvJa_$-U0p|Jhv}R&-h?Vu#d3dbv^x*^jVJ0gtCV<(J@*`O=eU@6qBhT5BDay- zN$-`kYHVFKms^v)Ywh~PQ7KY2S5TMb@?Bpot&XVU1z*DO>ThK>l-?TW%pz84{u4ha zYzK)TiZdg@I_e|;PP4q{o3Iv}8s(vuUh{`N-PcT;DV_Evi5$QEK^x+kApIUZ;!h>- zHJZs^d{2Vq{muOeiM_OtEEBG|haF5k;g#m(Uj;7@!jU;WU69u7oubZ5#4P?HYMRB$ z;m&nBtQN9Y$>qdK<(m#yf01vdVTqOZot$z>1*9q3Z}5HnU4(@W3QN#a-qq@YjB}bh z_qtoRLCPX;FX=s=6Ee1zx)l$vV@ED@Z8pnF^_2TcEvc^lhlp|#19u~aX*UV0PDcu* zu&6*i?-tRQK`$0OuGS%%PNF8;10JP}+FRsx!a5X)8(gWs67%I~7nR~TjksjjW(PgD zZw@xMK_?=u-<(vn1lf%c{+9R;n46^K+8Jr6$b6zdb}$ONjwHeM9QBKyD$2MbcYNSTBbC4N^}x=7gU6Vau|ZyG~j+ z#;OTiUHlv-W^1>Yg-RmxFV=OjCVKiCc!#FMn$@^Sn+*H8GLD&=<9=3*nhI|I%_7$s#f$N6&#J3YfQ#%#HI zP2JU!&&_FFpqsv5x@2u-SLX+w4c;R1XMLbr$haOHFTBR~%62?v?l^jVMMXcTw(GeK z_IF`-jmZ3hHx)M93fvAfEu4#!-VFCnbntg%8oRL_cVmC2KJ?VFwxO5U5n*4|-oex2 zRQnY62ixo2Z8h~j@;0}o;ctbg9KSWeLv3u`F?tK@{lw2q!tWUQ23+y~tdWaGMq?(i z|1IM0AUw|uxBjr>x3Yj)rn7Sg#Zrh~LIycYRQ zoBT-0VqX)|3#8$0_Pl#?YgiYp4RSo?PkX+YNt zi0ymq573Og0BZAR2%Y(pw4&fs;FY&|6=Sb}XzNB0)^Dl*+^uR!tH6JaF$CwyLlpN4#LXf1dH z`aAf@(222y@R@G#8(YQ(f`_0JoBnp-SJPJ@Q>;53w{D#2*raQLYwKoLi^p(Lw*A|Ew%?@b0&BXed!tN2Cj_$ zbntQFY5<=Ae+S^}fKMa07s>%Hj@&S8Y+x)Z{2p*Yel@utzCOAM8Q(@b06sZ>Y}#H> zX>bE<_5{yIrxG%~;5)$odWXMeLa&xHMq8Qw8sK!unee@6E5m=KKOS}}g1_*!by4~o zz?<;>8Jk3m2KXYjA3)!r8tAV_t~2dd_&c;QX+J`Rp?mO8Xm3Ipu+;}Uo9O!uzAt=w zbQgeU)4qkKf&Zbu9ykd!3O+mZ9-V=-X&Bo{9G$>>=^FzcN822JIAe?9n}Yws&ky>` zKuzGY@P`S1($^TAn7+-()dt^2=NI~;Lq*|r#@>PBgO?!VgEznn!L8{Zg#2gX+5-O$ z`Wt+ez8J{82kYR8^v8AVzk8gRb_IM3a8&Rla538Iw8?0@(bjTefVzP1 zBX<=WZNQTmSKv=Vx!?=HOHdB5$}^=GI61gKx>L~E4W9shCGBD;D)7Jzmw%jC=<`Bnk$XV9lD=l(8{p*7 z3HToH$G{rxN#4k;1t$WZhSq=!(N=)gK}+D%Lt~*?&`4++^p3F^P&e+wm$YY~6i_;7 zA2gSo5!vO&Q=vf*UcG2V5Pz z9a}GdV+^_>tgx&~ET8`i4Urz#C};P(N@c#``co7O~fb&k6s`d3J-# z6K5OvXyCu-d&j?jlxKdOfA^`!*nY+y>+CU4`xA5n{G3<|V7najEBsvegVcHv_#iUd zpjqG)jDLWZLsQ{r&|bu5D{x`x5qwN29XJm4Ogfq8F#HGhoLh>GD9{FQTH5l^GVo>E zg2=3*=qL>;cB2!LJ4%0^8tZJcI7Se^sgTME2*Se=K@0 z;D19e?g;V%H|G7w6l6DmpV5B?xiR3Q=#~X%p)K$5$V>#s1dl^*Dz<#!ue7ll+eF`Y z{!Oty{6OSBgSXJ%4E`4Q6Kw*hD`P9+FEBO=ehK&*_&dJlgI6(r5c~#vli+>KXB7Bs z;P%KTWjrf*2jjEpKLI6#FNBRc;3(h~w5@r4R=|nrPcn|z1oR%syoIHe=sO8s1I~fm zYOqRs-g&J9r=r~rzX2aJ;MXE|3YrE^g6+Yy&9Kp$_7gHi8M{E+5dJ%O4l(Bh&u1NU zM=ljOI{innxq}?|6JgI$-4Ix@|9&vOEPC$Uszt!@JsLM{We z30w!6{ZJP8Ch(=O^%`mfu8ys~=w$@QqpuElCw-~mEp%Q&3Bc#@k)83V;Gv8!C%&f8 zYrY6s2w#k`J>Vn6S{$9_;A-^e=1={8L2feqVcNySkQY1;xhqg^aDDpjWB(ESPw)%S z-weeBzhbNlcJBY+bsw2n@Q1-Si1P~lL1-oX19VR@HXnQ+T$1q?;3oL2#(UKYjMatT zO@DfHegZGVM<$2B-)QqP7X@e&z<)um9XJkn9r|0*i3xs@r1`j5#t=OCb-cMTwnUC0P1K$L_givd6 zFWMFKHv!*7ry(?uHB%k_$~`_`!RG)kK_(@X8a#)!@F&laNAStuYthD{hOxnk$ms|a z9Xte|DWQKD55oV7OcTZ|a9!;F4gV*9H1!X2yoESQA$JV^J~{jb-U?nu|3+vFI2yV( zloa_j@W;?Ejh!Xn_V@{)GYwn_%w_?emyAz_pMZP-JOZ4M*Yh_#f7^lIAU^}Sth80& zH(+Z9wJHUki_f#X-lPY2M1MEbobilg#Q&>7M*m&x(R%eeGP|_Z*}-t@C)&km%bU`=&XU? z$a5-q2xNcazWl=T1NlDiQ}9(AyS>3p*{5+KdOg6o@OcKEwdi(- zzlU4{s5Q6=?F0Iofv-5Rq1Ohz8t|X6wUD}$245!DIPe9)2N}RAXKf||1ehzd3yq_H65YIetCgjrN^98X_g?~;=Nx`GREub3E0H^{oHh%J> zR|~!>u}y}mg8#(N3iPUg=MzH-@ytPTvyv=-|xsts_+?<*@xgdE@EGhJ1M|;ko-Xiz!`DK#BRCsv zcRoAS0w*H=oWzh78ztelQ=jqpOAD??UnXKo3D)pe20lJehc?5{V|*0&CC`cs#5e@3IfVV*vhq@+~BwPSxioi==)CJEbgmv z*t-u_Xam^01oq?e^i*D}$YVeJ6Zl2Q{t8|}`wE%{zE1yY@Cn)h@J$>!s4w^#_C7L} z1^g4ZEw&MSdc<3OFiq z^U$pTPKsV^Va>p$S<#NQI#^0dqFv5a;zZEMDRgZCpd z4||=!RcLe2#=ve(+Wg4Kv?-w4;34S!!`LR|Qb14f`v`s-co}y7bm9SbracA4L_RZo zF8t4h?~jdh^z{SJr>`}*40tDa8Mab@SJ6J8&RZC>;Mbv_5nPGBrQq7&+~6tTx!}*p zU*$EY7yM_|)I!EOfuCb@3I4K!a}wJj@Hb@B!?&QWbLmS1u7Zu_^hW^?MdwfWAb2LY z3Nk0Kmjc`por}l~f^UzltWZC2DaL%@Y~V%6PlCM2MuVTp=eTw7Z{T&>BD60c54aJ2 zmZEzbeuG2U*i1W)zE`ZR>F|TW50O2G-yZNmumt4=zo+jo<42%d;7;`S;XTT9_}}5r zV}BQYh2STEf1z(IGz8rOX*JIsUcV(ivozj550Y}4^u72WReUgB8}ZVO(>=gtN2wZU(QaVyWD1-vh-1%HY6p9Qg37~GPaCPNv) z74TDy&+%E2{g#r?u{!6MP>bW>O5jq&w;Swi`gedj9VEB*@KLe97u&7DxB31dE47OS zzKMJ)lXDzsqre}+_DSU4rr`Slbkh?11@K@#8)PP?#^`Q`e?snQh-m`2EwS_=uJ+)f z$XDPylHJs>CH!M-Wy4oPaCz#Ih`Qzj|4!}}GTFd~X+L0ZpvL(K@X6ro5>GO4fcoWN zEGhUYeM=d8gdGojEc~7)&mYODJN}0w`yO1EzSZEj)b<^G6vlSbcNx5o+IPj?QE*;t z<-*od=m`8FCkApl?8q^8i+FwoKchaUsIg9c7sH>0|DC+%gAbC=dDh2t@Hds(p*Pv- zC${nU+y>tselC1*;;#vw$olDlYyof{^t-Tz%JLmiR`|WN7w{DwJe#>_fzIb-d@qEZ zM$~K!cCNu&%tvp&6FLcQqHul*_y{;BGCR;80xf}$$5>|aUj!aS{3WT&3~(v*OAtdJ z^v1$p#&1pLZ4CGkGU+(yst5QV>@=ii8Sq~N-Xy2J#9I;kG%9CzQKNETi|^I);d?uE z$qgS1nfchy4Bm|0k=Xy36dnA z@T-`AgFIV+Q<0N`uVKhnfS=0T`nY!{5?g%u542f{F)lbG`qiLl;G(RZiO@{+?j+&7 z7i?O@eFOXgdo`JZt6;Wb^*n}pOMEW^{|EE)9NG*%#Qb!m9vi`*SQn+Sk&iqV!v7$S zulSw|u0s6%$!h?(KlNXUPDR#Ad-zebJ*aUra9(P@o$;pNLBy4mcuG>A((oOTS;JT? z@Dt|aC^2}!HgZd_U03Gp8MeA=MNQ{Z-@m|9&@WGp*TFf6ts`XHp#Nx{{T z3o@5?$S)53OZ-kIhv?vi#MO>56+9k0jiG(m_=oSde@3PvxorUFC6~kKPY1`tUMA-r z#?DCimeisQwHXXGkLDVPYZAy@I!o+f-et0 zfY_svVhL%|_a0P? z^}Us~`4oJI8m(vDEQR*LU!yJ=IcsqPI0L^AQ1Ckqe1z}wH}m^~uRPNx!mnX|&k$E_ za6#lI@_Z@_?npca_3uqzTKHYe&0XdyIe0Yp%RzkqzG@XA{p1VvPsBPTgALr!;ck zIESe$bd}$~yrEr3J3JcS+k+=T!`bTM7vi`CeueGW)Nea@6LHtV##Hbb>bC+~&b*a| zUq`%;@s}TbgueU8rUS1g&lSY<3**V*2NQdc@$ba*8~6ZodJ$ZjI=sU6VDwhPCnWBz z#87~C349Uqe1PmC@B;eZAvYcB4?l-|lMzc@@O9*$;IkMw3i0%Wj}2voUrZbms9O|p zVd62M2jo7Pc;1j_AJ*L#co`~#zm>ElsCyFbmx16x;7-JunER-Q1$=drFe4bni zP`BpbrP$g&g z9X3{ir=cGoJQKW`82#Lrox$gjU&dN#gH9{>ziCqtUvcm&YOsSE`@qSGu?qGwvVJ5- zj`j$1ahsav!0t=@PX#ANW+$`&>I46cnm(sKrNA=2E<(A$ld1b0o7yRkfb-hy`$gGKB=7<&UB6 z$$-Ds;8V%o{GJcXFYIdx%vvfyJsxGlMSgRhNTblP8_PWZe) z9u>f|iS-BbdxW~gfd4`r3Q(sX)S@#o&slr_fE$sshMq#L55un}Z!hC}z$&DZ`)=BA z^o_$_OX8daKb@G)5KB++ZTi}wUk|(uzZZx*8a8Xd4<)B+$W{fPAcmjeUlYekZ2d|d z4s)+Of?rBLXUJ=dGneGlia2cWHSW2g%*SqY7eZT+pUXYb0UU?eekHCF;8?UO{Z+{~ zJ^W^Tra*5t`q7E)0k|1>sWTVoZKJO!{BZbJ$VLT^As?BsC&V_Mwi_|&#FP=f8vG6H z>)>J3E+%Vx8aCq6_l$Ty;CBrC0q|@34#Ib0joc*PPT8ef{lxtN9^Z%enao#ba6In8Sed#1d42jlKhI;|ka?Po=R^+PAHeg6m7WXGNO1eStVP;x(9>j`PnL+!K3RC*13!^9Qk~c8 zRN!-&c;=(i8~MpRZCDS1t-hs_mW8K0AR zcJ~9<$L|*6s0eNtpLs>*=X5-?;E$poj~aNutEfQ}WN*-pb7G@^A?xKdd@N$xOiVk$ z^_Z(QDL6|U+$tq;q~`M>_OiimBEA;*8jhXkw8f~+M{H%n&pN0r^*adPhc+qphk~m! zFK@sV!QH9NZKx@{4SxomQrOr_-=FwQPAwLLJ!j_O5;0Xoej$8- zb{{@Qfh(b#j<`mEw?yat9QSJ@_}q#NS=L>PYu2W*1_4Ze;%Bg7*1llHF`(jlcIBu z@x0)-JYQsd>)?vyGZPw2Odj|T_*#a}8|qVzwgb=M`{0f`?@Ng%j>(#XKaczXVwn$K zirr=CH3VnmUM-7Ee|*G)zfKHU=(|M?b75~6c4~va6HgsK_nX1{PWYtcy93!o;Hb`X z)x(-%?vH4^w&6=ccPsp3+Kr441eaB*4dYe7t+BHOzb}dR3iH~S=g@s<26!oJ@>hI~ z0GDHZ^yM|A8f`cDuGH%TzPo^*GoR_4^$Yf+`wm|X$*V5>d3-)0&jjGD$n7Nl&#aNo z5}%8y|4{t?37>*?7I9n!?`5n#vHt-+P5(wHHTf@qpG7>;SzDvPRq!#G{*mBZ$mEQ| z^NHNj!~cnmt;7-wTn3p&*tWr0sQr25Vi5mJ)^8NndR*d&&G;Vpmgw{+mpzmyF-Dvx8-z)`RV%|~`>mq0h{5IO8)SxH$C+7b&d@FEf zV0FGt%3$^!mKTZJ{`1;3%?3sO%f=v6Guvxs&b^c-A@dXIwcgQJjderPdt z4E`=Yb5W;-;2?fx6JuNOT59}&7@spoCEyE#QxjKFa0kZnBU>1p68Un(_=I?q!N13z zMcasY-c#dVte=U-t#h7y67(oP}&Sm3n8*A>c44i}l*YP55qQ(%?2V?*n} z|In@^{zAk&1zslioKRcvd}7v!y$Sd??3Sf|cc@!q_@2Cnk<9>aLVKyTPCFc5X~_2~HS0`H+u$$Y>k@oN;_QN*i{S0(mZlcP zsQn-CIjBWX*5m|mBJ^UQHx|5~{>{{RJ9Qid-woe2>5C1X2X4%m0q#NHG4gwZjq}*e zP5*Q1xDC9Iz9ZzZ7F-QGMXALx=5G!B6ZD?pYYzBl#!?c`bZ~m;0r93K_U_;_^ef1H zVr|TV>cc-nz8QE4ekNfj1~o|y-$+AKS5r(+hq~ z&2EGLVjXs2d^hzhirtg&eVL<#=ye2-MMlMM3vhe%D}u+9OFj6K_~{IuOl&Jy7e4S{ z@FCho*yzbU(-r;~Vw*@TdB76!)n%Q<2j|9?pJ$BBGv^6-FFKuBD^0-pp*83gx*zZ-xa(R+Yjik2bNiXF^De z-NffkVjswy`{7$rqY2b+3$=MozXYEhd<0u@usIcKLtIxFYsc75a`}z9DoUMAaDT?T zgCF9fDeV?&w-vb>;8NJgM(hFbG4MF%pbYYDiESKt#Gx+{cpbKXBGyIdZ9qRWd6tIn z0pEexav^t(xJ#l_lDLn8e<0V8`qqShNj&9{Z;G$0;6%*fbLb$r9pisN_wn(H@gl@f z6Z;jw99Zpni0#(!Be2&18xlUgQPT^wugPf}xF%!O;P;_h1Uq}dy~(2x{2^jE%lKFN z|Dyjd_ygcR`1jG)fz~iy8TmSlmj-u%nls*SAom(`@HRj5$$Qd)@X3<#9*x)kq2QI= zBg_=-#X^Wcl5;(3*x=dv?~ z-%UIZ&kJgiiswy3_?FZ;9=Q|)r^4O} z{3i$Z#^>HRd=A2I6!>P?4HEN@Ts&v-6D=jLf#9duYR1}#jr<+>g3MLPMAQOoGXHg% zqnvT60em{@vIUz_p+)dFdC&9%yB)z3sc%KbA5qH=@F{2)k!Ka~Z#K_YC?&Wy@tz^} zjy(Gw<>b2*+8}H37I-|d-ei5O181ZCs_^XK8L<%lH`)y{E~V;hQ?5r zmhe|I^ICR?wFw?U|5~Ut_&RH(G&=dQkr945wxi)AwWEXIMAZ0g4n8*!&tu|iMC>o% zmr>h?!iTqUZ-3vYylh=dTtOIJZ8NNJqTE~5`20W7W8jZU42bZMQ@l*5unR&?p zUo0K(Wt{Z_zC~M*c}@ss+ka09=t?HmF8pBfNR)+VbapUqHLz z*U^4~wt_2X<6eSRfj7_|hps@=;A2Bsp$n+xCttevH_C!iX{y^1+GLk)()KOx^!#NHZQkbG`Kdzrt2@Ttgu1(Xx~+0T1@ z<%#P6_!aFt{O$)=V11Xw=Vj(=JA6vyCUH-!1N+HmKKD~c za-0JH7(b)%-4Q&6`Wf73wZLWZ^_;cQk2+R@zhUzlM9w9_o6ymtvc{?BANVrSf6wdh zXZQx#4-)T5@M2^-GGF_^Td}nkpRcILF8DFf9OoHEJC(7j*iHxThVA*}SAyCkhp$6C z$?+W@T!OJD*dC00fc|}~jV}1_2j33AQ;};8Zk>_)lGpiG;NPgp4D4;hZ!>tdsq&m7 z&syM>)cGOq zbKpI+2ce^2iM5y$GFYbv;ZxI=ftG`Z)1HDBgYVNuVb1PA)8HS{eu5@~P1ZgT! ztPRNH0yse$?j_b+HRkd>{GZI#RQ&x8PLKX%=m_{cu{EQvU+{Mrz8-%Ul4?gdDd-@iLz&KZ!QYp2+`fd6e#Yw)M}M&J)UgZ$1~DQ#2x2KpkK zOzd~y?5iI|X{H=do&60WUw@eS)q`T6iHP3yzDm*u;f4Jh(EFjL)GDbBw4}1L*K20| zz3%LgsUa}|y*uVV+I^+CdQt4J@L0YmzxMPBERs%Xp}kVkC(EvSO{<$V#`oBpmTI!g z2DwSrAVzA*b)+o1Wp)TWGrt8+2k()ivvc$gBzORYBYVfri`&(t!L}l@tnR)NDcCW> zIb~1mUd^vRnS61DPMZ(m&`;-_gR^e#Da@H^B-)RnUrQe^U0EbitPAb>N=fZ^PjV4aYqLb4C_1mi?7R}y44o-;2dg*C(&|dT zbH17F&i6>SuEVjp-g5S;tcu)Fc6%%!JA3s;oKsv1o4?8jguQ--bMhGf8SBr@ZbHXA zQKUW6bI)gMF7gqVb5apIg@`%*F6PM4{F(TzxQL%Ba`XHJe6g?z$ZYxBfB&-BE! zDw=cT-2uNfj`|mOBaY%X%xb|wu5@U(rI?ZO3HWT zI-YZ83GZJ24c}{@itY6BQ+=Ylx+)v1!gD-RpK4BY?Zk~_yNw+>>83ih?-HCPW z$<05sUsouK4q`=T3+`jLX=YR8ol#zEI(uAm2fH(rLR+mnXD~VYn$Nbbt7nvEMk!yp zU|zY9G$Wix1vi2X-Wk~08t%uCYQ^`6CsgTXST4?{#0!C)BLSmbt({C#K+sa#{ zb!xRpRb`)xKyvZaa86(yWyi4;EG_aZkWWghBgxeWXRH<5DoI^`cisqklB;RT4=pq<-$I zi>TB*WQ!{El%sC#+aTZDZmn$g9rBEGS6Sq9DIC4f&bi&Sn&8SxX63MTNO){v<|4j6 zM7AY7`+WO9LKWA2ucU3K}dDOGoiW`o=+3nKL zNdS)gckfd?rBQQe*VK53O!MR&w09JpKjf|vL$p5qoSrc_L+U{UFMVn3-L`WQh;wzv zw_o4`-lUQ0!Z~c#2a)GQeHd*iYBAW8N7*X%G&2Qbn12W7Idc@n+2J(enuwjsFfEir z<~6f{9M{sxs0?%D>|b5Ta`v#@A#AQfGK!W&X~4&kjkDU0wQH@voWrGdKJ>|oy%x-GG~mKkZM`lU6&?UCx9%a|2N zg-mE4TXs_Qq(OET8Fv$!v6T4szdLYu^Uh@Mb{Hp=VrnOAv@yVY+vD|SS7mE~{lYF5 zxD~jlbqzRsqIJf{WOts~X#|^Dv{-g|si^4tENbXv651P?JC5i~^H2dp~5(4MdT<*Y;>aq8G; ze-Ga%wFG;}o>XcnwWU8jp_6DrzS(m*(tWy&8QWv`W~hmg$~RZ7>QltpsOU{)#t!TW z*7f%GEmGF#Wr9!KHDfDpt!HXN>2JHXzq9{0w>M-v8{7efk7nZ9t~vW~hc0IiJu<_y zb9%9J9aIYWUx|9BRx8>k?E3!u>R0}jRlx+TNav)}eqv>^f2ZfD%y(7NBDs&x*+<#A#)jh!@y^d1 zTBl$ZY*m*+yOT4Ex^wpBwqWRl^cF@=e-ouiwv)ZM<||3H z{fbu_9%!#A!eR+4bmCEjL~(p_2e49j)nIN5OU}-wf9b#5SEb)Ye9j5wp=+*{P{^&Z z>v;-jG5md$&$4Of2xKxQ`$DJHv7?_-iSxoZB~qUwWPewu%3J)MIn%OnIHS5|6JNwB z9uva7yq4I#l_Ba$ITz=&hITNm#2w=7bLw0Zg=A$nn(6WsJ&F84Jr<6xtDI2Zr90;W zC$%;k0NO5AXUHn&sTgmA54@>_Rp(TM(*CW1N5L!RpK6)F6YmCb zPeerU+P#++24okZwXV2vUJS|>n(a2!8@avpeRM$AFZeZo*Pz~vbvvrZU zrU*NO<@U%emz^`J^QtGs+!aJ3x{_aNs2x!+y3u!wv|^m|2iYfFtz=drvS_|o!S$ZX z(i=SU4xM;(H*<&of&LR^huPO2>Whz!dU!qJ+GIq;a9zlcH{y89vWrycq}_iwS;pCM zw^yV(^+&FcRnu7M>q?x?NxVG*&iQSd%p>|f{!gT~D;o>BjCOB-HX{SONQL%=^mu;K zuBbg7|>nGaT)0a{U9A8 z`nTRJ{G>-@6gpQSn>xhUsum{WGa`c)!I)YW;(Q||K&rcIWvUysqkT`^rnCs8luBtI z_3tU$6^J#9|Eqs78+kugo!vcowL>zKTg_?VIUb~Tq*~Lh5%LT6fpSin z3tbI~r$X>&H>bPaduWd*j^ebdw5t5yYHMx3p3=4gO9M5$=fs-(6HA;x!d1um!y04{ zw>R?V+(nF5zUk%~f6HJ|{h+Uf_rGVpY!fwMKMU=!a$dPa+ymYF$vGR|xw=ZV4d*;l z=ZdQGYiV)ymLGe*`<-(M=LosY!6JbRA`0HiWAn0=$slo$-h`y5$F~CBY0ipmBJwM0 zrtr*CoKqYU>+OZ@&=2P{Q)hSllkQ0X?R>TTkMMs;tftUOFPnT7g=ND(D)1D$t*oI& zbN^p~&FU~w7xtu9gG2*7?$UdTJ*k&1L8Cig6@E zSC;?DHFO?Vz_qd6jbXUDT)Cmn=Rauv6cLngE5H*?3GIvvJqs=n`82}9 zc6qPVM?a+(G1pSfzv&+2R$AX!_FxOyc1{^*<#5_db$zXnUK#8{ zC3(#doU_aDSgE}ssi7T>*HeL4KA$&{653fmNALhy{ofNiL+2hvV+AIbVmRjh=lUk@ ztr1!_E0Zk+vU;4;f_RrLJ(1`63c7XbPi%wSIa=n}H)m-XmKPqYkfyqv6IXLWP>*WYiEBP{#t2KJtvyW zoZ{r{V(wgue|g{g#B3TMud zX<>KnCmY{H1*n*G)00O|=2dN9;Iu!q5Bo@EvG;q}!$@Be&reAEq)PPd7JAN3@O50< zy(85w;_b=_(>bX*ff#A-yH0l^fqlY%9NRf^`vp@5ezhvBTgN6Y=y2b>RsK(I_N@dp_BPe85tw3t7iTs zc;4gNXti^nsY|7WY65eDm0d){+Sk|NVU>3@d`qD@N}o-;lNl^4FOiQh8sDvABfX0G zQSU7s)Y4*YFe7i2LrQ7S5cwxPuCxG+=|)a>1$=bl=2NNi)?M3eMbO>kAwK7vMCVMi z&^6A#S)1iM7S<^5X&G3_-ws{$BoUQ*9F~mGxN5#L$a+L#xP%KBI$=gD)bc zIi%oekL4Vqo{RL(p4FT&om1xQ?MVJtL|TWA(g-P_Ow@MRlffmWHvXT39jR6(>w{}~ zv-gU)3zA|vslPQ+b+lOKHMpgavmfngR-R?DW~)Nd zkz&7BJ$j^?m0>Nm7W%)asok~bobnR7mg>%VU7_ntu&&VS&x{?HZph_asm0+6#P^ML zXOr*M%%j>H>$cfWJK*^e*e}%#S6~hxH6iKFiE$58uV5C?g@q+jdtD3c{~!Mgttr@vVJ{Ln#Md-$KYN~0O#We{3tn?) zr-|vD@8w+knS(Usk)K+eVzd=L2U3e@qS~R8k$Jx%Y&r7z$bY67+aS-E4y%^EJNV4a z?U>!)wW^6#<;e4WfVLBDul!p$&batI5MHVI>3jQqx2AWRy1Q1e&!R&X7+0RN$wDw9^jXR z{9nLZZJJyn9ATpHD$F9{O(}k6$6pHLmiE>68M}VtrS{78JPpl~N4G6P2e8$hawwQS!=6j4J3C*L-NiE5!|D}yT)Zzch4It?K={#Oi1dJ z>*1wRQsfot?XRvdyGXWOKCr|0MfyYyfAifVli2PI^V?s^^5T02sh9U1I(J0X-di=jw)s_WL8L?c zCB@n(8jdY)Sd%}F_KYE1pI9%Uxc~jR#wz7jUPd>UCv@)iOZMT~O_T?m`e{9c=5c>A zeUsAHf86}VXyn`rG&SIyme)joXhob3l3SUm#Pg3b_GsnphK%(#*ZShA z6Xjox4(>B$lv|;c{%+FmN))4$+C;5y&anPbylN6Nt^7o4<$dlQ;BW2b5!>6(zc^gg zMrwI;g`L?mUfyXG_NdY;bG$!v;%7u=&WRfp)fHB5vmxlcudsIB8`l#E-V0YKLXy`B z>$112sJq9bcslD<^c#_$6CpWEz8&~Ga9qhE(%b22eqdMQI?<94LecAuS?BbnguQUg!BdxB! zQNFZT`RrDV-vor`^o5Z-uqTjQsjF4is)p}qC(?~!nNZx$&(Ikpo78IZJI?B^XWkYT zUy7(YYvb&-{&Q5NC((8BB=S^NE9*-79P@ANljTT>U49pl$J@qx>Y77H|qA}zdo$($Tg8u$X;!|@c-|5 z?d|-Rq)tXfYnuPE&UwVKsg1t!c4;b6 z-HbG|$Ml#;J{Pf$_tg}4(0R`{rF5`>bR?2oeSNMLz(T@KfFfEAtmL)R_448Zc| z(LyH!hkDQdr#6Y*`aL7N<;0s(87F5CTWcAq20Tr?BZDQ#jXz5B47KB{o8=^MxzL=xKO3^%Nl$hQ> zrH}s^O(oXK5Z119+1esT|6n(gZlcnBQyjhrlNlSmpT*OK&lPCxCBN-Td+ImeT_5~q zf~z%Hxr}5F^}JhGJ|pv=!0RK;Q^+5m34OhdDXw>?uZw<0-YLbBpIZfqB$}L0_;*ec z`=M8+W~Ytj-a=+&k;6ANl~ftu|DOLGVU>Fny-!AW`)Bp5QHsCzFD3PjJ&i0}J4=jQqyB4&+xB!-oRc&?{7)oLC87LS z+0DOAtbu!CKAYMzlu^N>R$Tu(;y%nsLb*|JvZ%ty@I4uk;U{{!aZ+f3K&wDyYTrRy z*m*Wj^Qb#oFj8-iW6i$wL#twdStjJ4eULd+|a zhtdO4%h>;quCoA-;|R9(@Xqcmn3*9)nVA`6iYaDhrkELHhM1X|V`gS%h?y~FruR?p zXf5A+-}*bMQ#0MwRn^tAD_QCeRa3ZUv>1C7YhidkkcRrJ|Ls1z+|Vy8M#0ljC9NQkJZt@rljdo59{N{nY!fiO-B{gQd_W!RMtmn%i z#Zjl2rG1CwF;2^)q4?@CLS@HtZhVZ7A15S!m7UlANZH}jj??PCkag8C-(Rk)N^`G$ zHt5gSAmffQ+*5@%JFT^$QNDUo)8xCALU}C6kB3C9?ALD-Dv>H6YHr!iQFRs0J zmliQK`6XA?+|%^zz8P59>n`ERus$S!1ubu_C;x= z50FngnY!cMpm%ad@uYStEVg^I?_H$I=&0JK`bNC$lR1BVrFC_)mRm(R_i~bS#edkb zVz((G_zHT=1}A*Yn4`*)TZznBFMQlXp)DOSw z;&_z8dV!}2rFNW#y&0P;Y4PTl*|}-hXI&PeRq(vnM*cGFlX_IECiQp6R~k6E3KKa> z$oNH#&!X;Z2OCJ!jp}OIK*31yha89Wq*rwF59_lp;!NX5(k{7>=)YRTen!b*mBy+@ z1aqC}X0a#9dHG{xL(;HN4FoUW^>5SC;agnqWciD9TzJR-lZRTR@@{eW^DR-kSbb<^ zpQYKG9X89U4?@+S(6h>T;2-Eo!~HYB&kU?kC6UQ+qnFu*zcO9xiq4%Jfu7=IY<_3T z@o$-Jr9=kD@cb?@@6 zbSfj6l*j!|-lEN;&wYj_^e_MX}e zEA}bO|MzQ0q(0eb$sg44I`1B1&XRk$5*hD8&y~xO=D44H&8Tk0^8KL~)_=%_$=N(n zc_$1PnX%6vmjdHGlkvEQ82O>0b3Jolq?*}kFLGy(l8sqQ!u>vKT~{kJp|6s=tt*~h z-}qM=7K+kt7x8+@T>Rn8G`}M(EU&@esOnVjUe98Yy=OlAOxcLnAz>$;RK>qSI?es2 zcxpOX4z{_B-^0kkuFyQ%*YAibIVET2PAX+1V-yTrpoLG2{wmZqG4^*WlbsPCgd&R= z-0A{(4_YNpalNGfq`aDF`f&X@xZ{40mkR?!d_6hS zng2mFj$pr!zoYw$dR==d`^1<^$Rh6xo_^lUB9=DdEB}LykG<5|B1Zu+-Vafe4SZAh z8&!V0+BMqh>wBrUqFq!ur}ah-xD$smHH!=+3`HCax3^ivz1V83EYuQsAA~X#DHVb? zu=3C^ufCbDgXAk>PA5j1(N5Mq;YYAvT|a*|#_O0|U6~(g4#z3o`7raI-u11E-q@~F z-f(|i+WjT9Quu=|@e0>RN3vVXHQY7XJvX$@c=z#^6D@C%k(Zt~k=kDOEXMzuiqE z8Z~?~^;Kjhn$<$SC^a{BI^%tfl+kG7-N_#BrLsfxTp;}&sXp$*b7_iiDEIC=mV@3+ zv;SV-T`7MyAsbSdU--#TmzG{e-+_AbDqD}VVfZ*r&FSke$5bnem3czMusG7JMzk+OR2$8L z-cNF8_ixtpNb?%e!e{l;o|5sVuIKLi?51yDzs}fiso1j0O~;FiWFU!_+B-au(OX6> zC%rZ^%7djF@@02CcMQ*7YmV1#)G$&iZGBJuO|6OaO6I*0s;pyLC3Q|9x%+aYn5KIM z7~hSz>RwSb>3oKJtkO&wYae6byte4FQvohlU(a}Fp1K5XiWX0l2ijd_ml=mPiIta5 z?eS^UX_sEa`o&#Fn`GAT_K}CXhwIV3Zyk#fWAOhX`WEY{FOJBgU%n*$r%Vf+B@6!$ z@ogug8Pu)LJa@42iMeZRzVnBLjI7p=d((ijxsJvFbh{@2p#fUx?~ zw@-LFU9Bo|zQBLge_D~{7|J8}V$c3iruI3tvcSDk9TfxCGjH`)xg!r|F3Vn6O=Aj0V*dM$T& zU}GqrQdWPhqIy<4O@qh6!aXORc-Yv9zjd9;7|PwD{5ZUi)Zbj=&BV-AW>%*tWw2F1 zF0Q6=$$+HhK&l+JR#W_kIEs2VcqJlpumjPTr!@s!9qzhj~HQ%Y;) z7$fp4Bh~^=d_TOs0@tlSw1ZfSt{nE{v5rgM8Re50JJ{=k$WvpH0huv0{9XD>Mt>0B z-;O^nTA#IQI{D(dv{#N3ihm~Fj+0*)=gnEJ$=)Wu>>?XWq$ON$t?YJB3$2kV^ck(D zQ*T@Ev3$vwiZ`#`);Hyilu>)`k1s5qbRvuEiX-C5YNQX1`^CzsjqumkcBu)S(T`GH zQA74stECg;aI>!zpLlYGVk#NR%g*XxEL?nL0H{-tVS>T@NcT(#sZzikJ zotz9cFY77z*f=6Bdo3Ujf-1?`_XE8@at!DRzl6LD8p191P)GzSgM8?1k?lZS_%&pl zlhFj0Ahomm*dE%V`I^A94&>1FsLp zgXH)z7rBQ$5H_V3bNJry!^jCh#!hqe9QbsJJ!qQ3OY;XjW9X9!{*FBs z`Xyzr9roBrhMt0b7HVQM3H&jCviKB#W%zLVOa|NV;|}Nr&xg$`@LJ?64)O%}hF>-5 zv!A#&ppQt*eipab+Xp_LKI6b_cx(EsVcZt9tBW2b343MGt~C6H!u}KNGf@B@pC5Ui z!d@Ee=0yKSzc=`t5&j+CnD|n`Kj3Ro^m`h6bD$S8*%JtxUibjU91XtGb`5eL7|MPi zZ_suAfOjfmyn?5teOKFe_yceVoF~Sq$b|SgoVJ7Do#@{+F?&(a_D}THv}wrLHQ^n6 z>}dhd0H060Rrq}oyB7LqKl6j{eX-S*e7BOxBYYxu7n1XV{8-=!Hs|2`5cnSWNam?F zdD#sw#rzgvPLpx13Hn(twM4rF@NM|;H#xhC{KEACT+c>+*P`zszQ>H)8GfGYeHpJD zydL&OGvAdMI|ce0+BNe~xA3gQ&;#FpC$FE8yU}xC?aZLed;lA2=^AkTi{O##wrPa#=b2T4fZ2ppO$>+@fG$NWUK`6i^OwJXU`$VIE$aliGLV= z2GH$q=Q6q2p9I;2{M|~-JmSX#>@|n?!}llXkAVfAk?VuVS;Tb(Th-y;W3its`|mWf zs9o;oWsc%F|9j_p-wu;^RriszZ)GGOnLEXE7I( z`m#q8vMctc!!yz@4soU7e#M(SFOY}OJHk^l=gskJ6nsCnSCS7|VO|nbyVyNM%x&SB z7=I3axQTZ^ws&B2ftz)Jt$WPv9(?*6zLH!v!NyGVZs_~zzl+>`!q)Hjvzjm4h$2D{4h>_ab9fw;jUc)#C?k$E~@k$tYvGxcHL z8?Y3<6nPdbhns!b;|U}OtI+c!%Yn7Mi=ApZ?GFQxJQh3qKJkOY8H+(bK-_maa?b~8c=UPJA zMT6g?7G?wfI98g$9MlJcu(^`?eF`s)jf}|aU^ul@lxN5a_~`gN+Y>P_iSZ5n8nSy5 zY6m`p=kIZz)qZ%nlTwTEMfAn`$5rdmjyN+NC_y>Ij@(7pIa2w*<^L*bRSydLe2muL2vX2$T;MxDLfgnHNWOr*-Oo$cc%YV;tGei=RGVdd)yU=k7JyU^xMU~ zLg-bZaF2N0@Gg8F`p6!5_NF|yh9y0jYxf6Qls%)E~$CO7@j4^*-@D1${FhB z9DEMnqipB1#B2OIf$qldm^^0|!xt0(Jbdm0zd@`E$Wdi{Y=piOxgX?*k0Sn;ASXNn zwqmnu9;RD0D(AN-43F_zveY!DrALK!BfcrU^zg&#B8@(U4 zUvq5*d@r_-;rl%1b`tsmWPfrs4E~&2O~gEPfPbQYIcht##Ipf?39>nJT_2uN<8z?S zdkOpl`5i=lFM$l`Zj<*KkO003nVhkHFn)9o>j-3~Rvx3*MfL@o;LpfmMPgY8pNu>Q zq7mmJ^f<`Ob|b z5ANAHVvd@E&)^JtSLR^}I0nx^t}B5}@I%NSpbhh|1br0pJQxViMvfC==oWnC&^=PcvWx!Kgxpa@HMn)PQRq&TSlMGSW%d-@Axo; z`7Xsge}jK#%xw5Ff?OU$pH9E|JnI(27jrKr`f&I&{K-LVv6zoP?S9xUX^#P~Pd#15 z<`inA0(wryNn?)(e~0b<_@Kj^;%hc+_5+`=Rf@Sh3tqu**mZ&J1@J=5_cySCFuNH=r41zsCD z31nq%=b<-1_6Kv}7m<~bvp{Rm0)*4H9I_hr)?q&`yaWDy$M^ZPk4B8;h&?7_j6gp? zPX6NlF!*NLm%;av%wbdX0km0;y=d@+*tVT+U!WbuZ*#Vd#CVYI5^ALnelfu@-g>3AV2&owvschmwGtQ{j}J9 zLw%gG+cNH8Y)l|O7m0BIzP03jU1IIWIJv0rSHzQxzJ2-3Re}BYCsG%uk!g8(YcZQr)M-BoUC!!tn?#vY7b1UU<2haX3N0_ovRc$V%2_rX=h z_ko1q3g`qrGwwz1wT0J5Zld32#@K=F<&4`MpAsOm@*cOe2y>1;0h|Cc(61n0fvNB; z_0%67Y|3FLhM_-V`|m+~7apa-jcBtj+K#1H2{I zevpr&#GV-ack(fp9L9!!u*c+{4}Rwv=Y}wUU70r*`cC9{`#<#HNolhOd??Iwj=8)J z>M_Ps^yA1n*uD*aM4n$@{~Ej*xgSIhhmwO+=!qC>DLLN<|BdmZVS5{VBYp3qd$6+! z{S@OQF`mEGYd?GZ$NGZ zF&JY!dMspaFdRM_xfS$+pGDpVVZ_-5y$o^`=m=knya`&v;}TCUx$269$dr|j$RB|9F&4DLmmMI;ct+MiMIjBhkg`!6Xb;#C$E*ja*z#uCGtE- z2aiFn!$EZTLgX#bl$-|8`yp2X4gM0Dj5)bqi1#VvPSAilxr=@W*$W@f!Ji`IF<-~* z>&QaXT48V)J-x*94jh8}6rL3-@2~I#e9lM$hVhJQiasB?9W;iQ;@PqXtm8RSAAJY% z4ybOopmI`vOJG>q81@l;gxLc!-W*)KK#Jbi#Z54i)}gMUR<;kkPYz6H4z^kx3eps&WCFT{ER{!Ydp;!41^ zmFOdAcbaws;75u7x98L}ye0EJgdDt}R@$MzBySyvvoX9Q_Zm=Jh2gicbsZaC-YW{A zf5yMFARl}ZF})|w#N;g_dTPcFFn6ip$(WPnNqJ9X%&6!GxYvgmy4$wU^I>Bwu}kne zc0QShFFAQXB#tQfyO8nUqu-|f&rk=C;P0_j7u`;X2my4fNrRJBe#s;DedF ztBjY8IbDW+6x*x70(gJo`9Q3b;iZsA8Sgyt4n?1VObeR8&*4K$&=_u#r}O0LGCtKs zZ^bjXAiNH~6-JMa9~tTQ1eqT_4c7}2Q+D`7o~xzsKN-9Oe!V4EtLd8neJDPa#fLXJ zs1JNChJFv;pYdvf7}!~lz8Skcz!dmV;+Vf5*M z{i5i@>7&Hq{T?3oH$DS`Zy*DDyi}|skPf~U`4PC_#Zy!3U?X^*ozEa?_>2N>!4Du0 zgZ=Q8X=wwZxOx7dUrov9XgoX;{x_Y7}&Uf5YF# zpeQ^CIjK&+0R3{?_o#IZsPKb)ukatAoxfydJ(7o3ahYqz{(xQ`d4Rr);OFq6P)6R9 znWK5=VT^kh%!F?uZwH9K8@vQQ6~zB)N*APRa7 zVjlorX5q60@)DolPQbU2mrEc!c{+w(6uAs+g~yN1XF;$Dz6JRWq=|t|^ijzDU>y85 zvI2P@0k4m229ARk=ueP^nTy)+7RaGV@Q-=Pj-C|R5G00=K#l=#GBbzB8z43Lxq;pY z*&SSf|ARaQcEcYaQ`zGKfu@ilPz#g6 zD)g<$>df&#_*rB@>Z~k$B=QcZOAX~m--+A@^1$1rBTkSL9)-Fn0w#m_==+g6HTaTR znTy;8UV}^MGc!Cx-K!x^(4V^@baU_RdCUsCuY=GX!UsiSwauY|mY|4-lsizK`MAwjUnOd&5GWAA8}sdG<|pktg(t=yQ3Nr)2)d!dH-+EsUEA-hi5khClPr z44{23zGA?+5XwL}nr% z^WeuVY6&0SGF}Vx+~oE-JQw^e`T5;L9n&{<6rKn8v5eXug?^A)D@zAV-U zhUaB2x3QMLGH12XS252YnWN(H$>j1T{g>kN8|M2R`CUiOW}xq)U3WL%zra)B!)kJo z30@XtCV%;eBOkm8@9o9Nb!PY`p1F;Pa~kbG(?2m7%ov-IhnUm1@K*5SNqBD|MwPl) z$@N1nJ|9po_wc1LHZn2R4R{}XIvgNR%x5%67qb51E&|jmkq;EU& zD4`dpZ*OA0z?{_8@sDTINAl7UJv+}BH+if9SD4#&=;8468b6C7o_IWGZh@#K&o|=f z41bUBg@}1!GS)YB7oF?v$$3ZgRLoCN-sAJadoq{X;dzK{1#u1`pDD=40(b&=9{d~# zA4Z$0__~Z3`l5$3cSk`z_fj-fTm$03A0gB5-Z~TPE5+JE9s={=uaQNvGCsUB zatPQD+~}8)-fXlf$uk;R0>pyfQanM&G zZ-H3wMA$9^WcXC%8t@iK=$RNlHTYDBb&YID3~%A*ka6&@E$i(ida@YY2mirO@J#db zta?KXPtXgHgSV-vCwL-qlL|b9uR-d>I~?4z?~$`|;G%sGxdWVsuLxtl!BFya7X2vl z6gUZAn2~t~C*X}T@fi?oM?Zo-fId&Ku@7E@vA*HoA>!JL{vWaDAf7$&Mfm1seeQY zTk_E#{RYptBed-XFJKZISjJqoK;J;W#n`I_|I2=^!2f_x#m^%2*``v%=$Q>_!Oi;s zd_2#`Ixgx5euh4K!8XRrjDCXr&jLx|PpS9yAPHPY)}&_lBqitQOOa_n47izuHHOX2 z%xiS?Fk}hh`dSeGSw~sH2l#Mmx-^*2x_F0P6PX;mfEOp$`>d5G@LI^PO?14cDCfB7o=yQ+@Q&3Ov(JAqn9QB3YBTvm! z^Q-}#&|9TpO@P+$EIbd&gC_7etoeUII@Wz-^mfP&pf>ygGG`c{8{u=1|A2Bl1InQ9 zL#D|{p5S|seW~FbnaC0PE93`I2tJd#KFa)^0R_?XX5l*M1#+VgL7oRW;rEbFK{mL| z{F|T+$clat`4#*IPnV4tKphYZ{ZC{M5FI`pc?o#nQL^*B2PgtG^eV{e;A?)~cag)u zBlt$-c5o8hLqBgza2*~c2cMTg6L1QBD>7+L<_umGSsNUMUqJo`Zsg*72=q6|!nt{t zz@H#rfer8$d0AUvDp-d;8+j0{h5tat&c`zuo*S7Lv;woxdm{USDe#5J6W~4=gZ>8j z1&o5TNx$R;LqK+r8`J>(KoigkbOv3(9r`r0IlhJA`wn8Rjedpv^#+yUcbSi7paQ%n z^Bj+PA4N@tqnD@N)>Di5;4$N3gLaAF30MQsy*!UtUkTB>u-@9S78AfLvrhZd?>l23 zVg3Gto|AT8(H|g}>ildJo|*O5jP<6lwmzYM$7a$PI@JXz@{P?~azKeO=L@pAMiv{Rw z$-^kt!8G_}>aQ-SLE91@PyQRJrEDR5xEmw z26513@{}I9;4P8efCS%%dl25m(qVeYwkLI&e-b&eGcn$C~bCNw=Fg7;r(iD41iwKLvC5KW#Ccx-g7YT z-S?@zXvjz^~S0%2^kI#E98__=x&#gDy-@%yQ`E0N-CeJ7GG=MyB zjKX>X3F+H7Kz~2^U_KPu&t%-p=;OIRp6~Tv;MYCc9OK^fGCVu_VY3kPQjVJWopp!4 z8o3$h@JyBAK!aE4L%e+U7|G8E6!f_KTq6fRUs%s)92tE({0^wfI1+jeKC?Xq-}~~6 zBMuMG`fu=&& zW$+(7H#r{(a+BZZ=uMD|!87=5^1lk)0#DH&BR_&C@bc7tPw)^v0=WP@0T0j><}x|B z4LY171RSo&|4wffI{%m$R(fvT;{nD2jm0U&?_SAfH3$503?Rb%fvGuei-TH89fu82l+c_38tb?M$Q8h z;9rn=vf?{@RyNiMkh9|>`T*ns&;y<|2YCZ|;pIU$AmzqCP(rrXG8NKqBTIy*M&eVrl|@ z4mpup$pGJk+zL(u1^r*-Q}Ce@aUs9j*Qu8U=rNH=z_W_1Rb*380^SAL1B?K7f9HEj z>cxhyLPzOF0IRhL7f1v+|dX72MqX4q{e#42sHGX$WB0kuSWg@*s4Y< zos;JrXa_zOVV;pQ!8`Z{ZqueUUf8LAack{vbctfnF9_8El6SLaqYa;Cqpmz-zDx{R`5{ z$Ip-8VaRNtCRl<#47m<0hQCLC0Mp<_^YeTHH^3P5Dg}5pfz_<5k?08vQbXWnVQip> zbNxH(wg-G-0-jlM$vb=zbNYh$iwU}**JeK3aIFnIj9R$JGqfT6KJ_!2diz36*G50X z8knD)e8LML|4YXD1EtZEBD*nOA^2jRE6qSb_&%ODv00CN*~sb9O`6Y_PSK zWS?jB>#MFBl?!+E89p!jG5k#|w}AcfJMq}(g0D1#r#aZWkhb&`7x^0FZJ>_R2OD#I z<6QP`+mT=P$v9ioA|Cd@^ThY3CezDlk%Jg&vZG-%?<~f!cQSk=**mO#W~3hSM`w47 z2s{U^UC4=x z-A#1+NbR#$c?HtCimLYci5IZeTJIFt zBW7fQYo6nGH6mdjreA6ad%~+x;$BnNcjJM2##KXT?4xQvCI^$HY^vKGO;}mx>@l*y zH_cVX-Og#3(A*?^weA1V0&+dsuY6ZycsHo4jNlpU_Gw4 z>V5NpoYZK_$!pz3{Apa-e3!j7%;q8|W&CNJtgtf^z6N(X{+Cf-T6y#l#Pff@min){ zUi$3Q!Xm%&yZgFpiM+PL$Cv(S{J%>){}lKwdA4<5SuXr#&qBtucid|U!bDEjN!K}{ zHmWzNa(bH!n-Q_D zS9ADGYlpSSTIX2nOePkIHT_mxDdhOIDlpwVEUriN%@>O36fJ-5(z)ONLCPaF3)Eni z?cMS0m*2@(F*0bshDhhktJ+=vTCo>k@Y){lbY+iof1$9Q5-o-%=?{otBo^+fPds(y zr0yEZUe{Qqx+`F=@}~A55RoSe`Bq#1;SQJnk~>-Z{0BLAxTd!U=d~A=Pv}zu!QE;& zTZHT$HSYO~a8l73W0Q5vRmvzJPxn;u-Db?2u9?zmWvaf~EGtiql&@IUF6%re!?*Na z^QrPfA3J;LSv?iSOa^0M7b1~)dpGDmiQ%Ybp8_9z*}I^!?;#^c>sr z81K|WLG2&nTknkZvuQu9+PjY0JBiz0OK6gjUEXP|@)Z)^+q+A#2bI~!)r3sv^~CWf zQ*sk`W37#MB(>+~Y`TvAyrK>UYMHQ9Lqzvb1ou9e zr<_`2mn?R-woj1A&i%{um@WJ|<&SGN7qPS3s}XSj<*DW!WV8xQrH*pwwOw<4F5l0S znODeDjA7<=E0$-G`rfx34^L>jj9Y3l@x+MOwdj7}tT*DENnJM)|fySZ*4QLYqNK# zGEl5~+s4n=8g?k#Zu_f#5HZ$v+C=P`Z=a+nNhO^;s8Yaa?&_-Br+IYpehHM4R}e`! zK4vn9h*(+~_9@UWjn1myH_kUht%OGxly1rreX(nXRm?ld*WJBE*tG3#G-B`5P0bQU9eHy*)DyQ8hP#0jeoxODZ#zN z?Q;QjY*xgBWx|W(j(^#dD)MA~gjv+r)`|Fcx*zw%mIwQ9!A2^YaTnQ%-bdYk_$Qg0 zJO`Zhq)BZ8vQmm&dylw|xNrLGlM-1=)){9mQZc^=opI_)dCBB7xv-K~9xmeG$?nZwXyWT?Yq3?@eLYy(GcTY`^2AZ?eYbmf6FQOF1Lg7AyX4n%rxT+_e2Hs)_jPxwWR~Z>_o}y*6EiDY z{bt<~_Xg;_T!!+|$me|#$>KQqy(^&;^&e7jCrI0Fa7SEwN4>~r97l{;+#xsl?M6PR7I~a4)j#IO?hgEdTnJ;#&HSN>vP8d&|r>E*Gk43(B zFcwHh%pUO4N)3Iuyv-BUJ4gLpTkd}6%mSZEj5;Dliz_{;rM~LpKo|DlZ=<&|`*_Rw zs&jp&t3fFKnCLOZyexCuJH1AcqlvNh`l@;t<74nV*_wWPFUsKSDSj>qED)pESFWlP z9cy)vnM7~!A2=CJu4WZi(#v11A!?yeRtFGYx=>BT3Tz{HTV?wcyWgyB ztRxvs=6)8(W(M2TFRvQfTGQUa^DCDA6tl5XsYUCH?&G11uw$;=TX?ui-CzVy6S0j< z<1d13xzNcn-v_Ei%rEjAbBK3@&ptt~G?tHB&uP=o_ag8pa3zq=ot+cXKKPgE%{(7H z+lAF5oIXC(3J*lV`*eB(r6aRjML9-(#u0nOp72TKYU(u0KGkQlmX=e1?Q?8`uSDd- zKJBEsoI>dtaZxgeJ@^{s``t`su9EY}6V1HdHzMzq<@@R}@)SH(A)}R%*#B|bpHiO( z>|J4l=Lk&G75Ohb3%+hBqeYgEiaD@PZi*7hlj2lkCPmSXYZb`K7CJ2tJ#)NLe&YFu z*+0lBM)rQp8-=ap-dMgqp=j)JB2G}@DT;PkRDgZmel1{>RUw;UE$3HaiUCdW7W!H&BJ3ooF&(uCGfQ2+ULj_sj#C^Yg( z;qgFM1G!!#{{mcX(-vIk0Un$Nw@;cCUuA z{Bu;By;1w=r(Kn;d&&&suy>mOmKjsmz2DsS=`Rs4`wYs%?rwa|;qDR`=Kan{@AO&3 z-AReq1vH{pdnW44G z>hcB8;12d)BBf9tICoEox{1Ol!B--)fVI=?=h#S2lyB83Rt_@tzh51VSlUC^49A!L za%cH~T1xpx^&4)pr?o~myiGlZFL?T45xU1R?~B|&lkIb<=UVApMa{`d<6mswRoWR{ zrTL-w!u`RsK3|)woC>cm?)^Lou$*&U(&q@cR zyPP`yJhbW~c1Uj#%4QYamn-Kx3bUMIJ9~n2-_7!WZON-rE}cL8#v_-_jUDW zRxbLQ2F4hby!iv2xxPd@qzCu=<>wFhy1~iSV)>1dQ@$v7qLNn=O)0gzcJzN#^)dX- zC)Q*CKuzvV4&~X7uot}wTa{pO`5WFe{=}jco=_5UO`if$9bs~EwR$?N) zUKDmWX(Nrw%;+az(I&Wees-fd5!$D|+OL?}Q(rmnLT^$3-|9JIkg|{K>q4HM78Y-L z8~7%K@^eS2$+?;A%5IG%VlQpyI=1Xn66|x@28HG?TpKB7@S->;#2)X7H>0?_H?UKB z>pu~wVpR8+49y1L(~1%8miDWfb0?FP#8CY$U8}{3^jmz(MSS*|F)sI4+GRuUqE6Os z_|IAQ+?JA4+biW)9vb_-6O@5!e`UM=Kp*Z-XvL!DV+)Ts_rp4Z?-3``*t z1((NM>WOY`bh2un23*s#%C#%7#agDW&}aU#MtEPBE;1jkK!Cniv46)CSMFkG#c3Ch zn(rcJ?4xzx-M|%bBAgxHXSuYs+gA+M!F5snd4_!*C%&eteLk)p%DsICQt*|7YmGzm z#4}H{v3C#tF3p#ds0*!d##fEtj`n=6_I-AbGfId0N7xBUmt5PsUChfXZH8XR*Vp%1 zc<_hgN5uZc4fJgysvNGySbEM}g_EVu#um=Swk>@z?ftC1me1+88JmCk9~t4U-&v3L zsc6BM*Z0xfMN7BH3qQd#ZiyPIAoE`?(mXAxGe@itrvi!vYu@qy*Yjy@n-M!0SM&Yp zvCoBIw_--jQy3U*CrPVKXhV4jtDS>2mY&r5#% zT(?}oU9pphS;;N^=HJLEA@LQ(Sn0X#QN`7Yx_!DrJb73sr}adxH~I&7TKI1;`Yvx% z(Q*kE&+2#FDMKyGE8SK5gc?2pi|6T4C;z!b6z6FdapvL&YoOgsI;xJ8K5_P00FNhy z=3Ct2OL~$SJez@a=%3@+;j@HwK96`$YxzRYkw2YrBKj3JvP+`_3$T|^{@byd$~#@m zz%}JYV3ShG{kN09{^~}qr5l>{{w{542V>5PW-df0g9A4EYxtf`Wjd||uBC@XL z`j9U?P4zeONq220E9up4j?Y2w{uJYGB6o}2!;Ew8Yr?-t-ib!-Kw?))rJ2<_)IN!1 zM4Eq>-##soRbx!>G}pSpcetWp$A0PREd1>*=KYm^Uh1da;aro>+C=*Ives(#MbG2T z`f2V{9J|MjWZHdVZlsOyZjp-%pVR9NLmu$ST156QmUU&Vn%}>OOeJtHak6Kh^d5Yr zabyPHes!trRbnf$w%z_OWNEQ)K&1I`Iy$YZ8u_djdT(D8W0KLr{NNkO$o)f2Qo9Qp zxvhI*ZelrC)2hYwP2SS-A!o+;RO{HXPmc&!`Z8iZDXJ1f#85}|vzni2yCbdXe?%67 zdzJGu2cv~%pYFR@#9578L~~aX+2T8Nvb3Mp-#iDf>X++jIhD)CA#rr}i{VmbTYHp()t#6A+w)#FPw?f(O>v)*hOc7dr_Kx}a}{+w(s+{k?9&VQj73bz{H2X~*lJ|FHeyD~QACd(qP{k{S738B?Srp5oDAs4 z+nvJlMJ;;Zq+*`|VZYW1Z-d zhtf{(;LO^uR>z9S2k~`i!2mS#t9p`GZXdQQ}jPwpWKPn6uvltv!W(~=Ky9A?f5w{y~nxFD2uh$@@#rV zk;*t$FMEzkF6EZ{uv$lNZk_d|@|Oto3=DE=(rF|_+Q79yA5V6xmUhV+_VL&lFB#AlxmQ3%W@s$On>dEtM&k{L z#iMR+OBc-g*mx>!^tDlslDVC}qu9=-^-z-NX|>62O>G}~y4a`J6(CcS{FBvMwEdx{ zbTt&ST?p%2#f<)RqNAvhqTcAnGb|Ji)D2ZiPexAcDH^FR0!kzGnQu3qR0fe>S47sE zgsQXzebXyL)iC{>a@yTI(86V(H)x+gvBsz`d`Tp_&mkXU@nC((`^Z)!^Knvj!_qYW z0%znq=6fl#KHhcMDjMi#bT>MQv71Xd$=h?RX40~7UKLL-jJ$TT-d64$s(RaYw7_Ql zj(osuS^oG?|sd^_<=vn zV*cJDcYo5Z8oyKCU7WrijA33-h_B!2AC2C@*UvMF_KK=1LpH8(s}R0l@IJ8yOBv-( z($&BqS%aVJemSYLxU02!RvqiQ z?}~4}=I*br6xJE1=L@yFi2GkDk5NTjOC{|gSDA#@bGSFl>KAw<<}`)8&OO_oLF6r- zUQ=AN?d}oA+lcG*bfkSTmv6LI-pM@Q7YgLxjrwUxX?oKa?v*dvtB_LAk~(LV2t z@9CVU!)#@zdQac)n&ZSCSKDg-@DEq7TJ`boZ;_#W;;V;VS@bis>*}6O?+&8JV&W_t zSR0rjkMWr17|xOH#C+t56j4(%o|X$=_KS=hn8COk+)=z^ zY5Vha6)KCCMY-QZALmI!k9@*P+E6VgFblfV8&e`xW>+z%<7v@Nu+#zjY@y((lo8fH zx;J~?iTOOH6;w;=JssZ)^Y?Q6UwFuR&OieHb76Y~w%ReDTajD1-%J^W_BZ{)e6ulo z5Y+cf(D&fudhb-e#>djnmwmcp9;=VqQp6aGEWTp=)`3c)e17w$!){HvPH6OC?{D&L zwQML?!E628$;|!k9!88nRy7M2*NV#r)x_F6wPUCncrH`DE10{>k$kxz$?TLnMpo44 zzJF+Y-SoMKXkD#Vo`2+YTKPa)Jx9o=k>o#toYrcux%C$MG_T94=x45{R$Zl!`S}-L zz4Ac)lQbl-Gf+CTstb7Mh&g=Xw0vM?^S`2o6B;?m-QV8H)}~0aUQ(VP7;YxvN_N+1 zk@w7=e)2f;s+g-WiX5_Q2i(ngitSFSk2zT{B5Y!va)qJo*Gh^}7buVMIGv|B`J19$ z5o;%muaD(8N*X*G94S|Pc4l1r%us%{(|J8$FZW(@z}Gu4*0a`o$%yaDr496N4jlJJ z^=-qy+Kd`QzN$rAib8)8f{z|-TCElN>xueqp&NH*FNc)>JTv~cyiI4=~=^A zKhOIL4j23}!wvR3Z;0)s^jal6d1nkJrr>LxHr@ThsfG=n23k|8fhVyyctYuPxg_mQ z_$p|{8O!qC_Lg^YYoBDf&Z+V5rhVG;|9ov$4C*Agw$6F#1n=L$haUQ7#%mF1qg@Mm z!T&s{amiigNM=fk8O|j}31hr^uF+(skSBwdM0<&TL}Y>Inx4Y*4ZqH~V-e*+^FgPAWr>sjlq8{tNsp5A4@|DZk-0x(5~M0QWW5OMM}`&mN*h zZclvQB>8NhweXYw$?>=M_4WT180f9c>WQzv53M2IVVx?AF1$S$IHQIc-Cb3PtybW+ zX!ph1FAwqOaAt^St^29}lBiZ^c&T2g<4!)N$HS>}q0;&fv#>aaVWG<-GKv zp6OIa0qjLpd-_YOf4Pgvg}w6vU9j3h-213ocoA`usco~OsFTa|h!$xk z_d2|j*+kf?74nPECtO+V>EmB(o%3}JxQvO)e@3#<`uHOJ-E4Y@_?ony(Y}az8|Bn^ zcKxJRpO;H2I)MQc|sjq8?=ez!AprQ4{SwG*LxLl$({*X)i zi~nN1ExBm*|LA%LFh`dEeY-o|okq0AS=+X4+qUgJYumPMowd)}wrzX=cUO9HX1~Ap z&2`=LJfEbxT%AmIwo2LV8t6L__@@7$kNo*jKx85e`+mF59Qup)T+5tx5wIYUr|r+g!#L!pW18E ztzsrW_pM}Fe(x&p zS*d`0R(+*a^-c2cG|H1(M&ki_Jtpnoz}rwukEjzERnuG4-BZk^jJ(oIy!tQw7J=Sw zAiYw3lz-WEm3|-K$!U)9|MvQgU!-a#SE4UwiCVtkr_1#?G{Z*o$~f~pn<8fyy^z|p z&&3QruIlULJnB%_*@ z*U(z3=ifn|qr5F$dtEQwmNLVPD6U9kG&H-=mRHUdtY#x)sIM2gzG^vqo&7&`Mbv_S zy$QDheXeODV;C|sb;O)tEca6hZb?WrU zwLH`|{tZP->F!9)ws>1`mUc4VKKBA`kUw9*K0Eh+AD66@@)%Ebt*ctYz1CYuuRyny zpe;$subpp*lWT{-chS-ZN?olG{qal9uD$p6a1}Nu8Cm7-zNC81(3tc2nQ|V;SZ z2UkS*OYdjzNVAq_y?mOQ7V_jG<)~0iepwsEI6dd=X}fMMJ=dMlu%l9;bj$p+Ww*If z-YXx`AE^mkJKeFoZ>eY4!wQ@-RL?2vGGnmBSCBkMdu#d*t4#uFmC4Rne5T}xo_?a7 zq2j_^?%Mv79!oyzYs8q0b;jR*>6acn13fH%W~lzrwcL~bzbA0J{Uh|0MrLMUL&{x1 zZw;XT+B2Umo;#!taNTwdag|guIwKz2`@t1o@91l;B%v;wsaGa)Dafnm#Vjr&e%eL6 z=k@DhQ&ei^%$(#(*ty7^MX%W@xnp_b1daF^-!eoG)-~FCmw6}R`xyc6T=G)GwJ&(V zLNQ}2)64NFFNcyzEAGw9bIYmGN6Jhm=KiWsJ?1E5j3d69ff23?#%Oaj{eRgQEb8{J zNR!3?RpiJgela#v$Y;KI<_h(#PX9!qZ)QtC6|Mo{$ZYYx1t(Rq#+KN7I;(Dbd7cQ8rg%roH zm`T-2=2hQNZ~VY|J&8QdljwhPtzh1!Cw7KYI{tzuF_+GnW?d{TrBo(sNlv}~7qiC&)mzv_)*yfoX0)f|yL zo*DeFGg1D(Qdi0v<}T0A;=Eo#ycd-7$Dtlolmq5urL8eoE9P@K{rgFIsT#Twny0}E zo_5+&MO)_H7#QJhU_5nAu-bXnF*ehk5z8X38D@S|pNQ6-XEt8YJBfTtQ>Pc+ty((O ztFIL4lRH;ErcMV!JylWb?0zX)5$YIDkoemeV0y)~d;M{&O{7llT|{ZWJl`l|mj9u; zU6jb3NzBF9PFsR`OrdQ4_R3is&BSX7{-+E(#fs2#o3%mC>dWV|PgQRt>N-ZsNGel( zX)W`l^Dj{+TQmKJ?`x>;mB=}=ossh}+(YEq%5}M!nprEV?Y5G50-_GpL>=u!kZ=idrr&vD*&Dio;O_4x802C zo+}qnV>gCM&(pTR_^|d>8sP*>i_M<{joS#p8m*qUtLQ&g=zI4>IwV2U=1s;ei?}+wJ z3B339^Q`tvQS5WG3#xnF6V0fimnQy^TaCa^aaC;B3Awv>hdzh7Y@a1QOuMJQR-<^L z`_en_CmYdrN)I`k`?k}g%k<}z9>a5uQO+Rh!(UTS#yf9)Uk9bH+(GTE-LY19Hd8_s zXEyO}CGRmJQ^G#0BG>f^yfQn>gG9~jiv1L&ZPZU`Rn5d)S6Hla{;z|0et0NdB2kBS zVjlADVV3nLv`#8XC3k4#_;+h%s=qgRRCVgcUsmCgYKcR$lJ5yg|4P~(?w+tv?-Pm& zd+vM7NsV?4+5Xf{iToQmb$Lp(mAUrOTa3u>*(>Uo-ha!wuKe&_@Lb`VW}@`f zPCNeV{J8Qt*|Tyf19Rw=!s zRnYs$+t_tb`w%W=aZ1hPtLJ-SJ@owT-AT{)7o`}~PBDr*qsL$QQS&!aW1co>^rsPsA9DD-s& zPaL15uhY*cWhp&@HP~F^jKO}bv}pAXbC~ESMk7=|`k0o4J$5kziuuzpKljM{l|9l2 z@!Ak`p^`?_tDzi6%(3pI`&W6VWOv61_4yh`^p&>;CCQGf&mAa$|+jPxx-*YMX)(rhiV6VLLV6ulZzjxL^A!}ZTZzy0u+aY>#@(qGmG z&p=N_y^xv2>3_S8|NE%vzD;ZT8rOZF7@d8t?c{OYD5&33Z)viA+`EWAS!WEA^3%`t z6|X2Em`BslS_;cEmYPy(BV81|9(=Bp`r5Ue($CPYE%Z{@qcmln3gxwus4JyUBBiO% zaT!`M{g5}HS8{r|E5~bX?q6ai{8idX|Z{2Fg4NKk&R7Ue^?&x{}K4DB=mOEm-!@L62@+W zlW!z_viifyz%yAH_|tMhG9qt_JO7|Qwo~Puz^pVdKOG^}8hU^EB7i|u;@f*-Ra2IM4zd#ePFGN**6|@_a!mmWH!AHnL9AK}A z7?2ZR7_9{v@x#!ma0=2Be?VjNRi6i67Oe#@^Rxc}Iui=>Uq^Nlzr|~OfZT!4hBk%i zu$}lC`W61cr-vS}4fbTZwz3sbC9!B=yV>oAD!P(+b)@m^~3T5%=b6vZ$~T zpNl;finHIs27JPl>|I5Ddck_)Y^eQTTh`&H@+TCfU^RXNdsL*4$6gEU8@__L0Dew< z_RzqW=e56+vEK&%75|B;CVOEF;^0X`x6mVH3x z<9|@^NpO$4&m$gS3`SzKGX{>`A7A-#1|6Kw@?TFHa_DHHSl-i(9f~hzk+&IBhF5rH=>`)<71FM zIqCA?r^RLdLUGE9MLd`5hCn2|2VE4Kef98D$g4K&{);`Ci5sHvz=Q7-gE0XeA1^xl z)9^=8OQSOPh})x^qfj@>E{$%aoEP|Sd_|QB6#lczRpJ1@WK8$7uLnLSX$JC#)#vfE z`A71*Ci7coZz$qieE58+vhNSR3jh775Px>Q8-I>#CNp{*k6 zaU8)Ik036=*pG*{_!P{GozMnfk9l(i?&V?s5#p|_g9%Ux?}7ltgOu=v=X;SZ5`Hh& z+g}qW>6sr7$af`e{fm0$#6O^4`qEbc`t&^4m!hwgxQrdX z0^_4l-}21Y&iFIrd7UvYNj#8wae}#$oBCg6F0Eu-|H2RBmy}K!*>i>KZqnYEv~@6R za1C>IO?>V@F&QIXUqzYedA@vX)-rt*hq<{9HZvEGk=Jg@N*<5#rM$ZAX*G~ByX*t% zxrgyg+K>8j-8K9TNJ4xYy$6Z$uhCDC2>%WJ3BMr@v8w=c1Y+YO&=2wO2_P167PJ`D zfEdK}(e@A>-xnPW(eUHZNw65A60b!!K@|LU^aMo0UqK(hM~F!L3H=EHyjqYlz>iOX zW`ttkBd&_p1TVfnIvz~?N^~P^1B3Vw`Y*Wgx6wQB7S8o$ZlJ&5EZ!)@8i6zTsAw!m z2B(RWqp9H(J}a6HPT=#Q1)&riCoYRtf+P4EXieCM?}1h=%6+OB^&*~*o`Eg+ZpFEG z!Y2G{v_T2>tSmzth-dRrp=(9%xwdc19#DO_AHh1}iReODi{FMGhc)=q=vBA}tB4<< zPhlngHTn});Jpw5HYZ>XqRZefNCitF9b|+hPy~uWIamypp$;s9#?S&5LPzKX-C+R? zf*~*;ro;98+`G{)=r2gjIL{`oj&^~e_^Id?=!$=bCWp9;QG4P%Xnkmie;J9k;uZR~ z6meuU2^7YAx#ki1r^U08k2D9y@mx~kbLey8D0mH?(I22FGzoab)JRyotdzY_&FMn``luDRdfX` zVNPUXt?z`ynOI}Qh0zhvoibjd3Arz{$2UfYLsIS;t%y^hO`$P98TYj0Pz_(7`^j2J z&Ap}y@htQ%de{UBi2p&iLwx)$bU(zy`?v>2 zfFkf0aVfMs#K5;k+d~w54|FTzH4KeJJPw@KN+KA=xO+Ye~Z3{ z&v=FVvI?=`6LDNL5q!XBLyN$Bd^xld)Ph&U_0gvA6yF-{3gf6uu(b5SqeK;udI2ID+qk z4uymGh3F2r4f~1jpif~R{ww+$l)StT5WCR;Y{thx)4&FNUbH;agf+w+(O$3^KO7wi z3-QzK=U@#?BYwG#8YFLBti&nlKRG z9_Xc8!kPlM)wd{COWAX>x*UlJ_?ji3;5bF>Q-#1B9ZLU#Ny^a}X7k7Of`kLG|Z z`0{9FNQdu%iufZu}_fN1!s^m9~*grClMmxjyC zF%R(sv=3lF#bGWJ*Nn?rfW!Fh@#qWKkN=J?jZYgAGB1g%qsw47J|mxh3c)V?Li8&n z;q%Z8;?igx=!PGKj)zwG97!2Zm;+6SFQ7i|vvu$d(8*8+A0auP%^(GzgYpx1N9RFw z{1EQP8{s*9T7>&@bJz-Zh?DVoDkF5m&ql98Qa*QACN6>2f};4&=vBytAHw~7E-2j3 zQxV%=GAD+=@Dmg0}u&%sp~L>!6tftb)8p9ZY~ zjqwxES+F0{5uZn2fP(*x@&}&MUFJq%)?+GsUHF%{1KJU`O3EJ^>T&f?N3Vk@$>+b^#fllV^M8 z>=owmQ~WaKeL;xNIyp}~nYC0l5pxcIEgtWWvAJL3HTK}XM4QF}|G+MlMPJfa$IwcQ zRSCxYFka`HM&uQn{JRmyrTiJJg&*K1zQ=s;%v|2ewH=wK>mfCBt`G4zbQd(oMR8qYbg?Q6u*M>2kDP=c>6yJ4TqIiDZU_RjYqee{b1+arS zFIo+Ta_!zPHofFdFYoINmi~SsNZ*)8)#lJ(NF~&*o z>CpmE4`zyf?%v>ObES;Q;Rb9vy42r>C#xpwF2HnJ5$cYw0V=-qmbRBbZAoJ@wb8t3u zu1FNx5}=LLX*BcrH}myaU;3H#`Zsm{7eAD>k(2ds2(PnNa>I4j&H>_tte>~AA3u+^ zxC-{-+hk=dU`aOGM7#w(1H18YxPKIeUHInca<~dRiLaw^b1(<+jnH|p9sdt{3}WSE z9unt7OTbusUGy1@!5_)R{USG?EubIqT{Luem z-3y6WW4(#9qYa@ez8%^V(&De7zo0YgG!bzRbQIjkOMB5Ha1wtLeFz1)ckCf9i&ld1 z__63JNI)NDAa-+K%LDQ8wa^|A0Y4dC0yp43WAPMy2bb_(?&0xZF+L%h0_wvk;-Tnp z=z*V$ZiLSGYv?0*1?7nq)|m!T@ww1^u$wts3jG^4;~%3DSc5rWIdMgF3v|a{M888j zd|rEv!V^eLoQ3zZ5)c(X3ta;jm`8ijyYL&%5L?Wj$Z!gu4$T4U@a54a&>f}{Pepe! z7p9@(iC3aKU;zFN`U5g>U+7C*3@ry;@Ey_4&=kKIJq+id8u5Mf9c0Hx;XaZRo-)tt zqfKEP93Y;BE`dGxd+0|ffcNr#9u0~`A|LJ#vGMug488~8^d>~c-$U=hQrHbe;VO9yL2IGW;4(C! z{4><|B)$ylhNbuz^uss$t`hVo{+GT#%(#`q$G4R^Q4rskIadsxGEWl`Z%4<#dGd{q zeq{|T#8*X+vW~8>&L$JjM31sIQ{%I9FIY#O<0$)HWXg+2eVD5wh+}b${oiM6;-^v0 zFxGt@yv%(e5o6hwJhBo;;7r_|oHgsgN9Vn%E8L_F5&53KHavyZ#3lKs%Eho8{~aB~ zIWZ0J75V4kkhY;st18KkpBWYd&-h?7-hcUqX=p z<49Z*?GA16_tD=_1)nVfa{;!(ue9`EWIl7_Kf?#&9TAxea0}lc67ShCnm844Nqkn) zC&ITvC&3MflZLXnjL!WHs^M#(Eujp)GkO%B!sq1F56u&UIf5U64uQ+~ z>!>>>@6FJaIHIi};Rm5(VFz<}Cb|ZczxW(RoE+^4P4GWaB^GNC??=nRC0mK3#^(2b zD1mQ{wt?dKd*}m*6^AuUTpS$)0sPRotUY+n8d{E?gvhM5L&W*fPS6Mc08J5}wTaJ& zz5|o{xj{S$-2h)$f8}{!zYoJ%zi)|iGLA>^Pw`oyDBOW9(3AJ{ROGV&f0z7UQuY-5 zJL-BH2HNRpn;TxyAH9etpaY;2eir@N8am+1)91SxrwNQ>QsS2Q9SQ~SQ`_nJAsNZya3Gz!T(Pwxc&qtpuJn*A81B=6ukpk@Cm8gDEcTVelmIl{-WQb z68A%=gN1*MzJt%qyTtTmPUr^jiF>0f;5GgndIMhIvolw6Ko@vGJPMr;*YVrYU2qP+ z4?PMV#{Lv>IN7)?AFod-kk578gc9AB7qSs5BZP2y%~cPNEFgr0+J_y?5p z7_V`k$q4Cqt|~eflHhNmcOW7D1uCLuoW!q0&%rT#H0}}EVG#UFJQ+$bV8Jz{?p)Cx8DKHYoKrZMC^GW-aJPV06l}o1_{4}y4QeI#20CM1BeKB zc_z%q8Baj0> zjyay1>o%}Hyu^1{GtrD#|1tNBuX*XOWb_e~$i@3H+6@f+Df9~DOHLbdvIfzgP!QkewJIHl?y z!0$x)(|oBRz7kp=CO}N$Dd>D?n}u}fE0~sbJp@DXF?c`73?{x9+8!RkjtulQDsfMrhmTF)mcjSOuR_m(%$RtHW1uOa zMS9j3S`K33YoX1d6+|NLjShlO>1Y$W1Rmp0p{L;vlqP?;m4ul!N9LaZ-d7Cd7FlDMkB&;e0sDf?8VnXr`sM@5br~8Kumlp{^lk# zyyo*-QM57ifnmf$(aF#ZKL@=Cjqo?n&mc3WqYy_z<3RwQ11$n8QZe_?QE&l{q-5Qq zFJKq`0~&$%&-M6dXkzFFYl(ZH!{KTQ?$PL6SdZU^?t$yjhxi5h8VtOb^$-ObF{g8( z85qaPXieh9=n_bUUyE*og!p&pXNW7&|HKK=$G@Xn08GL!P74(A2#C_1|@F@xRS9A@W!XHLofzJJ- zAaN43JbYrUw?aq3b^H=^BfN*B#8J6lq*b|>z)s=;=s9=}8;DbBtO1yauYop%zW5jD zD~Rl7?1*clL!k+NCVCW7<2^cchM5q7csBY1z9!=L7K6_va1ZY_nNx5H4iM`W_hcA_ zpTfQC1^kWQ>gDqr{Ox1xi6@~6{QUloFVFpA7QQ6j;@&qBQZlxwiC5B2oqJ|Vd|}=r zF1=zb@%dkJUx7IgfjAe>Pk^@x`Amx5fqVF5-1D+RUf56E3~dQJ@Was)upX~)PmBs_ zU?p*Sv;?fcS3z6BWPCrgKP-mv#0Sw+&>sIA)wr)_!#77;LwCqXJQ5uT5%34lL*T_n zgTL@U(E#`GNcf}NFY@5q zfJ)p4oe0l(&p(WQg{SzW+^_RORhUCu4{Z(;@IBFfHu&?X#(g^?bS3@^%>s?^mC))? z2R{-W52qmy@hkKlB*h!t+ap69d@-~MOoRx;)6g}b;rF2@Ar|-RRm`&-XhE2WuYy*G z68Hw_WJr(yftuW#V?tEoSZFf%&gYlHXfJq%{|DU($+;gtB(8;ahhzBR=oHw4_t1Z7 zpe-yQK8*egeGNUL!FCQi)#AwB*GzBSqo=HRERe8vKu*QXLkLkqwtd=+#Jw7{F( zLsGy!s73q}tajz*24e=e(!SEc45jW@FGYlf(`9pgtBD~@=;#hPJl;QsKg18>~5H8~* zavw?oC-G;{ThN5hh5LysMC82%mgCQIkNN~X@IAO!ZGxnHKI}?dfX|TMp(1`XYb_sZ zAU}RA^C33levt7E5T9c_XE2T){7}Yk74+q^Xk79=guep!7|V`4cb0J*%6OH;AGF7g z@%ca*c^I1#&=`&oZ{~h61HT+!g0X1~bMeE_k#H9p65m68j8O&rRWuIcQWl>YEe-QQ zCti#`h8MKW!`P&NyZG{G7nlY6h>xSUAq_qf?+a0za7XoD5^|^Uzgr7;+PzL9fF}K4-r}Eynm5zCGF% zc0ohpJ7_V+yA=L!bUYNoZ$P&}8pb?5aZ$821n_-O&I*yfGR~9HCGZn=5c`=QsbK@Y zB{~h7;&-AqUfMKu} zc0g4a&iq({4&>Tbl+_F0g?eqL9dqq=6DL6r&>tD`P0(NT^LNspWn6|cW(gSItHec_ z2a}l>Gx0U4!$;=WHtJh~c{qdXDv|$O;?v~+ocx>Mqmp-X#wHDZ2l*``zaQigmAE9@ zg*?7<-A3l`AlQsgM1Ch&14CE~<%k#3)`E}^zk~a09Y}-sqb;~UcjmtSoicNxKKO$F z$(q{B`_MD|BGy<}NDGsQkFW-E@?Lv@I%em+-Ve+1707P`ZJ$Y4}&zi~z zrSTQ1XDawkJ&)49ljw5ji;s?)&_o)bOi0Mjvr2$b!lH= ze0HwQLb)yIv#iA5NVkcy418Ady2hM&$6RX8^V85ww0AVxgESS%zau^-{x0M5mAO`k zeymCRU!kXoH=+HAN8#TycXluy@hR^xz8h_bO1~VSJ_GF6D60*xSH-8Les$>Yhdifn z{d%rhM4!|r-a&cg;UaY|Nglaj7VTKawHkVtdUwQsqfX1=IPE@3e=LF9cArqES?D#& zXh|7y@b{Td?P=RoK5w?;vuJMWHJ@^;kymG4TSNR2Uz+?fQ{Oh^)tBq~llBYs%8M?x z>ym`~B5U#;^+=XqljgPM^FPnEhZ(T6GV2~qpOm?ZFNfBIg81?11~>%;h`*x=lks`9 z5`BVBgy;Ar=uP+uortaE%wgD6k$I2S00ZA1od~btZh5}9Ou^?5SY3{LCb}Fl;xC{d zpm0k1whW&Ms9z?^zEXyQawART?l zy=_ea{v9?wYXvq!JoT9^eKGE$M1eSv zh28Lwcps`~=Cc*P1X?c(?~(YFSt%2$W#{t_acsVGnURzCd;ABqVJ<#9;zyy&;1Fyh z{)xJB^Bpce3z`*H;VYokU>>X_UW)F7W%%>x9axP2i7I)RBQS?JDVhPM;VYnxU@E>f z+7|l5MB*{%IB15Shc1J<_`T>!I0u!9ub_{h82%Od5sKm?=B1AyJ>(|Ni57({_&R7^ zNRID-4uo;wCEkSY1~>j5dLLB$6ZADa1c~?@x{Pssgw|x7TQHYy<99G8`*9x_!1}vI ze4RC!k~Mn?zngXZ0}kVlv#x(YPS*K8;=O1U?g88EYZN}K=zN!mzi;r~4_hqynK+Jz zYhfb(JL>iF{)R7(wuFm5`jI%VpLqeT@YB#u&2wif)4Hcr^m=pHLCs z8J!8gp^*I=@2fhbvadm>K?;1bNZc2oG$bV6haLmdz9uqjjdl8kF`13u2_NA#@mI7$ z6z&!H+GtyNjPHx?giCOi_zU{Yeh$xZHc~`bgHMU(g7PqvxCz<{CgF#pBVZeJCq9jS zhUR#Fk&xU_1#h9TpeR%(E{QgUtoYvOWXOb{h3IE`Ft<~n)!{mRG&&7V z!C~Ud=qosgkIHA-GOz>R3>^%MVJ`6&bUTcP5c`*VzXxP zRng|~Ef??M=rVW#Z-_I;VST|%d|9+U+`#uldx1YLVU|ApT87>RhlW*&CH*TYW$H8JaexE$IGYT@6aF6LoP zd`vVWbc8a*ozX*(5B~xE0h#daSjQvbB4i+5#QWGvNP~ZZeuk9z0=#dPgQt+3_zn66 zlGv~DepLt-LL%Zz=nY7K&&2yuQHYOkjb4QG+(Y6KZ$@83Tss}_MOh&ZzB{@e_QPMq z$IyEa6JMM6q3#eJ{|GIdmiY`(h^wGGATs_0`WTMUpOJ{8a}O&EWBGjGCf>~Fi3HrQ z6#NqIRWZ0nm6hl};-BaT?oARtw?SP^=0i^2v$*G6fKJ>;z7pqQowQ*-e#Vbxj@*Ec z_=1!fV2od}R8zFXW*gUl7+ri_>q9@WarpFqZzhM|=%^ z1vl{%=(8(u9iN4M=>p5(8u4lL7F@!orGK)+MSNFuG#r3)#HY~Ha28*ie(DNm@cqz% zFa}N#k3%QGLHup>4J4!=_Y!ABOTjk$N^}=&#=k>Iwf1wc3cnjY z1utPCancO52j=5@qC;UGeiAwvcEUvBM`*N+v!}{a>Vn|g^&-w4Lt?9@n_N3U}WRHfH*Ol9c8G6FD$g)WXiMB;`(0>>VoB`Tjd6(0(QOi0(h3+Pi-~W{(Mb zw~@wtXJxwqJQw~kkQUao_*FwZ9+GPdZL2H0GC*@lWA#bqLGzjQ!m@X#9HXQ$YCAi0 z1XF(&C!f0|#i?T}atYg;H<%*0|E%rLxngNi{4T}kMs<0(!gaal2;G6lSwc=JD8B)ch{vqUMay?fB2+2qG+57jg zhngNdoxG0{kJ#QByo4taZ8~nu(B^ta=>^SMo@74z1hhXNCB#T{kViPlvvVK3KH zyqZ+(-Mh?v$SSJa=c>Ay8Hq#=>|yJjE4PqWNh37PO6%7AL(LYUTE=q?vHl7Sp>M(- z_PJLz_y&1avdaZSJMUa0h> z^#2~anFB>Uwd7;|D74ew*ZuYX%ue=t4XrTQ6-lx8HrycUSVUyg#hk+xokD5Y?M;kd z5?(Fk|3|InzULlq?)J9hnu>0FHDsxiONlqHEPvV;AzE4^9KJ)gD zrtA?e#x#?-CV{n1I^ny+?$(JyZI~rm5X@;dyLdk#5Bm|>vQKhkZo9`j3S1- zwTbn`<8t5gWD4CIIBQFr>`mpK;;iE1qIX0E|M+oRtlu-rA=(j_HgynX7t(W)Uh%dH zMAJt~N4?wi2VVPBjIG)X-z?WEb+*5vcE|s}d%klg_7%0#S@Y!J3E#U7``nr=qNkc! z_9;8|ZmIT9`&7oT9l>6y_DLf7q`K~zr2OuQ>AhmVC>{|)E&Pj|0*uN|EfTweeIu{c z?kq0*1k(Y0=N^{c-h+~z$Z1n`+1`V%87{b69QU2j8nO4Az9x2`3+|!%Q|hM$_hk;| zv)1kLb#+o#6|?4o(~BRa^U6V^v3A|u=(YE?G-Uf!kg{re=k>69RFf}D>pTmbJnS}x<&PFU@Y_4fUNsKuht-qhoPiW41M$SQ+4N{U;||TQIC6K{-s8&N zch=tj?|&aLc&)W(rpUj)JVATIHX;*U_D;II&l;L9o42Zahu+`2HxMP<)ula+WX-tf z^h+fzm+L5h8~M$h-^e6#+7l{&2(=nYUU8(2>LaNb^|sGWw)Y#gPpVEVQrqV@+mGwK z+CaD!(rQoe6u>;}I_(juI0;7d;u+08t%%PEu4n9qyxl)XwNF9||7h#8Arx)DKo&qaLz;F*&`#lZ8@}XD3ha49R2KSh)!^f1}h&+a>){ z`WVSPm-YH)P4@@yeE$kFc&_GI_XT$)dOU}6&Dd<;sd(_gT-W1n`;^*G zvx>>@NHx?oozlAM)zm9WPwBYwM65Xb`UtMzNr97G9_a#Sv1L)385@i={+IS_^`unu z8mR-P+!ghSwCGu`GMfMe%Um($?cgiZznn zx5X;!jQTRJh{9O13#_!88mE))b8^}}HL|C&CsSZ&ptV|v5gg!c9cbl?C34#+M!1eV zL%CtS@LdwmeR6stSXkIkzMv2H@JdU(Tf84d4=oN<7d4GVbV#ktPkUeOpRNLOUe9&k zc3-oAeQI>rqlHKtjHZdw?bG0^Dw+MwoFtd@YgR?`zn%D_+HKWq`f^!CMccwoM;xK{ z67{X)PU#)xD<$%>Pjt8Ug0~+7CHow*WLj~TeU5tYQAM4r%(uD)k{Y{3dk#>uEB@Wq z9XXmj+_lZMOc`lZR?iq^%zox2>J{9{&A!&&)qRLulhfaOT6@%buK50y{;?vD8ll|n zbgDC6w%<+pdF0vJWO{wKlPb8QXiw22_9?6UmZGOre#)c8+UloHcRvu%7S#JPzCZN= z%0o{J(a-gip;kQUANjlaO8Mq3Dn_4OYtc#8l>d)0o2ndhMVE5B=c^aV@s`N-ntP^5 zDN~!K9(#|_+?Ni>SxYvwBr(5UGt&T+Py^C;%+BeV?P^wR8~yogqRfz z)CTS)%-f6Z|4sv{A@w0QO8u& zPUQ+&jI#YoKk0;=NtsQ*_H|Dpy}gsJ{YWUTy)VkP<4ulBq-6<|Hv2oXDtIc;U|wG& z=6Kk-UG^3Be+(HbW@|7C{yff=tHs=5-%&A|=UtI~hx|oc3q=lv_&LclE>y04#=>6D zPQ44)oRcpp5q(u%!85b${Ot2}@_FO@(Fc3z=`Exl@A@p-@ImC2>yN$=brE&jB2|_< zXv;nJc{4@D)06*rce)U&3B4y7uCA{6oHI1c)IDoNPjwP)urIVvGkEULXj#4`(tG*7 zE0t%K*FI4q?2$wt8Op1^<8)3E-0zy{s>o`46?o6j1D32Wvod+xJL6zqok@(=XkLv; zl+QFgtwN=y({qbiQ$29mn}t?qusX|SrK(a-?Se7a%I6y8UF~Uts5NcSFh^d<-HM2{i(dtyOQcz@Jar<(lMM(!R#fiDSuF&8MD+p>T^3+ zEoCq945CNpP^Y^30?%w;@Z@7V$8t`#1AX?+rIGyUMGp^Qw$-Mby|h2N(`QFS4T7iG z{moAK*-2TP*JY<>Yn8%g4|;!>dx!c!EA8}0Ir**}iJl&(pV5DMpIfp&L!g=ZPvC6e z7v(+jbmOP}=N=hy{nx}3%MG3*XgHS zSwg+mm^yiVv2?!l77sP>lXhjM58uf>_}jnQe*1j%5j?kqx*XJ|`)=wJ&Dd`Hqzq=I zbE*yBJ;~c$Ph5A^mE^qMy*Urw@+yBVF)XgatJeq`N_e*EQT8NtOfBBaTdk*Z0usa&xx7?5nPrSB>`1;>lvjgi?|OCZhuc0~ zx}SVlS*RCKmK*7`NnGE?ZJ!kN=OeWhJl}xdSJWN;{UX;U&Y1j{^1WFnG`5%JPu2ie zUC(;0F{vx~k16fdLS|*B&+TjC(-!+NNB-BJ##7VPpIP(Fxqe)r9eowmeJ4~#38S%m zj@lpbWp^h~-JYACqFN<=tv{LhEnKe!bF_E5@5{G`e^S zs0Rc2ecwf1!BWqu%|kU=5LOYXvi8v$?C$OVmpsExJqo_q)G5V|?9+Sg$5wYwcQdzN zAFO6FhB~=j6?0`LV{V^f$hSD0s@VlS;%;l%`^EqH_^MYXWmNvj=&{jK%#$9W(Tw8s z{u^iZ@oCH$qvi0f7U?GV?}clP>9tP?Vb6Id?F-V}lvgqyE4-xx->u?WW3{wC&_Bvd z=AP;eIIHVl#&58wWgP8#`zWr1X(=8P04BiHd>)((pKQc->=Z_~!Q4rq&w6mm=bk#(5d7Kr{% zDOPto-w|p$O8&0)mQT|w&At4?Y3MQC%5O&YW)kDx#F>$;)Aqol-KMNo#u*m_p?-L zH6v8YWcjG*)t#dDc|{$LS*yk9#}-jMQwilcRoEksV>9=j<8iRZi z8yCcty#JXe^cntqYFd$EtCCC4qc^k?`J#&)x9CNz92eVaYA`MBM%Sk z(`wL^bKa-E-O@VmA!(ueHNAS#>FHoO!JqwnKA(pc%oAnJ)$Eh&I=Qp@^3jeY?gad- z?d>M!tbHC^e&^D1t~KTqrw8n(28tT27h`dn@<)2ZPOhG%4bvCXe*0XG{@N02ZXkK6 zRi*86rRJ_5u76!krC08UW+7=fxmGb{V?Om=DaGWfGUTt4C+`Vz1m&6a+Md?Fq%cGcD#roQb|jGqWdCW@@FA z^xH06`eCHjEKdWonfZ`>hg<1rpM8oWcLJx3gwktilQz;7JjtrPQ`-sQ=H5-w`Yx`j zqP)FoLD9Acp2lW*{ii#TYoK*K&@VK{_}yMiW6RY>`{ldquB!EMN=h0U|Ki@up68<1 zbn?0tdfu+re~+ZTX3iY`@45fnTS~m|E@t}W0?yo|M_p$<4V|8UB3fdfto7Eq#i+!ADmo)naSBbi+8VZuCzx`s$K8TFoV|@(wnaI=vY|)Lqk(bFx%%+7+Kuk{22` z&B^p*Z>grfNf{UFsmhjpDlFe2S?|B-c!I8mDF!^ z`z*CiM+5zdcdphUe&>sDj)tz=NaO!BMI4#OCm47 zf13?CAL6q-+e$6!*M~PaF0 z_mS%>8f)Cy{a!I6>|DCiDz_MyUrrxpH#dY{YJRzSvy5UU(<6+3Ox>~;^-emd3L^i z`A^5oda<`plBEsiU+VvgwTX0@5{i`XH>HIRd{$ zEu$zor5moU+FsKNrLa$Vi4|^?g4Y~%9Wd_6pR_y1NdIAfB+(B0l{}&rr)klx(7kGz z(L>%WA8{oW&y-Q`crGZpoE*2giwbw1K3yQkw1y~+tZbeWPF;tR+mb+3J)x-G&u~4- zzqQL>rH!sn(pGhW(ZyKoeyi^{(wOT#9j&(B2ci1h^)GUDQKrgmjl^0OY9)ti#r@p3 z)r{t@D{{RZ))hkAxZ;yG?6FFz9>!<_z&Lpi3Nm!JFfv|RVw{3b==9L?a_D#xYtuH@!~ zKtx`N>;FX`o#Xl+-W;wu+{d;ld&#qrGaJvjPgteAslwGeSbs%1ChmDToqO>krL{ke zD|j|!XDeCgei%%BRy%C`CE97n0dLk&TY~4{1ygY{mJ-dmn@eNym?z`@|~J{;+~4nhp)k#IP%hTaBGszc%*yQv9FS z?R2l`m2v1+>f)v4QRVio2HH+fZ}X0ok#h$5&R6uua5c7GF*IAUN@=8=o-Mxet`yo- z|4Xi4&TAtq`%LhQwC;XrRoSNu*{3xIc)gs~*=bKccU*5Ok=tD-WwF4&T330dwp}V9 zB~zn$#`)%OZlGPmu*XZYP`J3Wc2v#njFg>Xozu&|AZ?cnB!;CBvwXhXI$<5>1aWJqpf~Sw1nTNo!o-w zS6vY;Yav~AJ=L3YaWyT2c2D_Y1jN|IaMG4WTPo$O-bQrAKIhdwN$RZkm$i#>!XAm8 zv~{Gq-h2Mnq7Uzx<&@QGNp~*wGo{<7k>z%-uus(b;`DP%*{AH0-*NpEV>PeWGfr9? z1FJ)=s^a9FMVukm$5|n7q)DO&?30cD@8gmFm$F#?VQ%2s`05zrNuZ81hJL38-Ia{u z`X6#itAzZJIhaq`&&iRWmD|c1Z*uPnr3dv}?4-WvlzP*cuIcW}W(u(?nmc8mmxhH# zww|+IxM#{MX+sgG-}!7TTn0V1*~in-W9UCc`$xOpF@HBnEh(X(>u+PcJ2APYm6vjD zZbrc;t}=MFwv@`s9Pqd@D^Ikz^55!G(V~T+{4 zFmjvkt>CGUF6WLAO!i0}PfMd4vE})$N!0qWQrlHW3!ZOirM zv-bJ>L*Ekn|1TG{V(R`RH1$&(dESv&^0%*RqtlP|OuknD~*yiYnSSTFc<{etQugq~}vo zix{E?_IcI8NAT?Dzg-`V!G@;(2*mat^rqFay3;x>$`eYt*SI1N*7j&dpk}DdBB57< zxfK>QR$T4mMU=YMx5D#EywJ{?=bI6(HNmsngV)?OGMbJ2%gx!I&iXKSM{gl*#~-~E zOlAMPDz8y)t3S2=>NNioWh<%jhibB4%(@Kp-5ghJWxSk7ir|#jnwp$d#*1EU^Z%3c zcjXSR^fZt2b6>c1oyb}HcIi!EEwgY+D37M1%uDu*;U2x@$yP({pnsIB5Gg0CW7Mkt zN6t0fsKq?Byi`HN9bJpKF1z$VnXf&dCnt#fb}5D3)5F!l&bp`(iB{~BFS(j|mYByy zTQZ5CVFg#WntR$S{1Kr2^`&${jw{_#m->6V3#zTnUT)1S=N@f#cWM#5<{vRXswkV} zTG|qFzv#Ux?t352W1=3xRJvtpwLRnLheEPT*{9lP*?u$rmA)zs_1aFl^WoCp@~2R0 zD!-(&PVFW;uN9z#{~q>9;e4~gbFH;4t_1E)#z6hMQ84g#xSaR|6S%`X-{s82IU>hi zp4GlQu3xm|wmZG3?^xQ~z;}t1@x+K%P}WMjY+`lUDXz&-&dj{{yU`x3(y0DX) z=pTAU1s_hF7W~!Q!2f}FQ((35Y5K@6T4eE^Pk7SD2a}Z>p`+BTHLGOGhQ*!G5Iw(G zy{q<&o7FSIBgOu1VRQ~J5jU|HkmJfJ*SZ_BiRTp2G^A#tsNF@&`bIfvK_=lkUdJ%v zs;cu|a*RJ-Oco7g|;Im#vxo!?&Zukcb< zd(@l$73RqSj)*eIl}sMZZ8f+4hWekDMfodq8Ou(-)?!u4$+a1UPb+m6`>3+Aj(f$k z+2yrG+-qeNv*dXB`A5l{xL%Y__5N(nVt*Myp9J$ZPBV=Nex!!Awc1$G@;{#;%hSp6 z|LMug4Dn=Xt@WLO1I8*Mn_-XHtcfJ+rdTtVpf=SF?XaeM3wa0lCi(sibPUc*9LxCL zm)`3u|9R^KBR8y{({6fx^^Zw-)YIE{UF@VScy8k(r_oiJV@F#F@2%}OK@)pcI(zzQr>V;%EIW8d zM)hv`FRx}+mTMQZMjrEi*Ryg}3u_~!X4)jDqM>#6bIDKYV*l_j!K_tnqX9Ep!|q|Y zazJ||ac?M{(NCt#7k;py@YvptgF@^FU&`q^gb{kAz=fCuqU+Nw@5k zAEeEb&!cYSHxi8({pXdI{uTPB#AU(WqTls+{#@NlRMUlJdhc7>g0NrC$1}2ZWHi~t zZ1Y_O>)%5Qv~+5HEtjy|u3YjyY{!_9{&z?Zm(`u>Ondz8eLoR#EqljWvsBJ#jql~k zYwAVM!N9a|H^rmY)H{p)Y}yo2b0qvNJy!K`{DTq*YwEJ_gv9mXn&f&2%R!FWP?X|~ z?wp-!J9z~Q!)|D!Ri%lg7&*H(LcaHDBREM3syJ& zls>y9>QbA^nM(_m7Wz0(XKh=czwe4DeSxnYI+zx4s$ zT%l*gTjE=}zmH;8DbNdVN&2tB+1gy+%n|>L$pZUXHT^e|E31prnTc-(`-+t0(E(OjGm%awI_+{a3Pv@BOr>#Ee}`sHT06?RMYR zP-*YY&?xUdF;i`gYP3xV-b(BzcW~pxjh<2Lom+uM;VZrd+GL;C|C=66e1uU=(}VUC zAi7pY(9<^6tDg1!5K@Il{(st2SFTZRF}7o(%?P!Xx;WuBr!ckGW+#5^?M~@0V$Ji5 zIawI&B&>g?>~Uh*Na-Ta8FK&nPUwdcT6v%It_ijy+DGg);)zxQfwh6U;em4Rz3kr? zSSd%JlXzwu>9xCZXXVrnD<#9Pd0y5g`L`#2B}!|GKFzV@^%aT?iLZ-)9 zXiBEgg11;gwm?m}XYMF-5|@V#g+}=Mg@<}~gqH`pB@GWe;(y!TQ~YbB*+}_a*{;|1 ztQO_n{73Wy^gPtIswXw>pjYM*%T(lx+%GSh^5tRjCCT-2#l_!RiMYR(yCY&f*?x1H z`RgL)=hV}3J-dokYL?L4cp}(4SSmb^naPweS3T&hLkwQ5PBH`E`|1e0f~qIDS8w9= zhtk=x=C#-1BYK*pZ7_1E!@Sju{}Ojb0X$;(v}?-I zq~YN%32nlKgVlW-gT=z*T{Do*lV5Mb3E%t0=;wLv23H6_{Ta_R|MPfi@0f>eo|c}a zp7Qzy-y(n2#2bvGw$J<^cqH|ayCC4JAXb3C)eX%z4u!*Vtlu)q=Z&27)I-k6aiy-% z)~W3oSq^(nPKzD%Ke-~Fgd6^?*!7_O&+2u5>%_yMUf!F5w-`w?yA9uK$#YzRa@Sa* z_0o&$YqWEEZBM7*XW=U{vUb7p?1O>&G5;pfL)bG`9q-BJ|01E2i1?%MuSsjYrR2Wl zdxv9RSMWVTE{Ky|Cmqn+c&7!*cncG$&wEYG#8&3(T_QbWd+`}Pd?$lD z^ahOa2|1g0!@qc*3T*MT^1ZGf6Mgq&gnZORS)a7s`*cF0+)sBrClZedzmI8k9MSOo z42!S58%0@P`p+m^@RumU{!@=PJTsU(@j;`juZ{1!U~TGiYx#+x1X@`lY%1n{WN?#O zDZHHWPbt47{9O?q-U$rGVz<4o_&HWRBYHXRDEm;9Z1le`yjgqU6O_5yqR`@`?8el@ z6M++sUH2ZAwZ+;NWi|dskBha-`cfj`r&PU(oT2v|Eh1jS%Jk4e&l=J4Jhkr=Mefj; zP}zjh!J3>}|6<^A;bVf@OwSq^?K$uH)1M=>EqqJQXuwFfskL1Xfc*p1&{O=jh8k-zr-RnCU8lm-1ysQ)ves=298B0gG+au0$32z^8 z2EYLr1yf)Ld;tq#6D)<9P?&QrzDJgTy__$w0O?15&v^x(pnH&`_$XC1&PNzQz9MoT zkK9o7hmh0xv(^6S8Ibch-(do0K=dJ>hZoRL^!m`7{6x-@*w5J$-OvwlR>g3*z@KY% zAwM748eT&$!}%E>aGpj-&e&)|{!{_Z2;uycQs~(^$Kzs%vrN!0@Srv2qk&uSlZ$)} z-GQqCdv@B5%SNbPtCwRD&}3A58uuKb5I!l5Hg9i%nLclcR&t+MD)XE8EdVfS42JuZ9pZz9eEnM!Qb#Q zl!eW-$plO2cb6%N^$4-gLchrP{Ll)0CiBpTwXc_rGoy&%E^`@XEjOc&qfJ4^Hxj*I zdd@oH&l+|jhmh~VST)*pL2pYR9T}5>zR(;S<@s3eN6;70=W$qtjm|u-qkU!cC#i45 z9BHiCIb;XgT%)ho(aU3Z%g=l>rya>JBd@^$=CwWRksjKjuVy{N@FjcWBz~3- zHTnw1Ga3~9ew+or&_6S0&=B`?$PJ9`1Tl=nZ(sJ|Q1lJ-e+d%M2hev1`r8D0-V*tm?!8wYnzI82epfXh~T!+HXRyjQv~KzkZ8zd+_lTeH05aA3UG+p5jcRYMiOfc|N6))yO}F ztO6C$J0pugN%XqNe8`-T4zfT1?mo#LMBYYTgj?_joPY!HE9`@9umiTj53mO2!#6Mk z=E5`>50hXF^o6d_4LU?_a28I$uW%F&!2#G0dtevrhV3v9 zX2YlOF^q?CFd9a|VE70ILSGmFCogjzByulnx|%&Qj`e+m{2#1udDgcj`c-6c_C<5_ z@CM4zdYMM}HUD4@&0Yy-WVVyu8z3Bzh0zhcFcV0P;2r$j3aBABg+{dZ1_L zeKZ5QpzlJK>v8#aO4$kPFFAMb3ix=*y7n!N+@LHu+-6k}wnfMPxgef<6Q}686F%@&}Q}VIX=L z-d|5c5A?yvVXzW9k-vjX&-<H)T zdAFB>_2jD}pMu5cy^#Ij8}ymT*>DYJlD~uW^8I5xdO>6b7=Ydl*$etYAF~~DBXmVS ziToW}qF+UN%JQthOXRB}yTCK(6OpswY4nxIFVk@bA+i$re~>pJ7rO6J_A6vTFNrJ# z%^^Mc*N~$jguWMf5bi$4_pfriub?4ZBi{>o9xkE3QJ(z?$I$f(!~&h+7xF!k>tQK+ z`ik@m3(&VC4?(aJdxm^jWNR3VUI+%kdvJ@GPci13tZP^D!;#yP_`ZPtKJScovhnj6 zdTrhb*B)e_=VDys*C9*sOo!3GLq5uLd$Th8l;?FRJkB%t5Bc%P^YAnJQJ%Rsc*bV( zZ0#UFnmzjs`@JvvalQ{etMELdA4H~8`S}Nmk*|y7?+}!)h<^xj4S3P-AS-En--W4+ zwKlQ=R7IbITnCq!n_b8~a0gb9&!}Sqj+!nZSwyi6TEz%M$d&T4~1E~XOLZCBqWmGirfw7So2&7j1P9Bzkpl_ci=~} zj-LSv!3y-1$OG^+dLuvU4#VIn@-vWsLS^(<_?e?6ACNDO zYzAMV_e8!2Q_;5~uR<&K*C*uLBRj$v^!JfN;63!w$cb(_*Qc5@w}Jo-@N6ex&3AGr;l&cM&SQD<>LO=KfX2V+82;1QpoPeuv9Tc9G zTu>aUKoe*IuRuHK2>oCxEP(G|B^-rga1Q>3Ts&9#p*oC(S+EYSfzGq#ff7&=IzUHw z117@(NaUF+3Qs^IXbf+{ThJZeg}E>f4#OYtFwa_Tr~?h5F|30PuosTPZ%~Y9uOW1V zw_z511Bc-sc!uY%H%y1GVGHa7pZV-T9q0n@!dO@Y``~9d3V*=AkcGXL4QfMA*bG0x ze^8xgurW-9JrLqq%LZ+r2P}jekcDUKai|8Jp*y?-qhJnPgA6=V4?+`Y2fg4!m~I8S$q%*K^bTQo!|mA;2CWQ17SGag=e$! zzJ+&T7_5SW!10JmR(K1#!!TF^N8v8i%+8*L6L1n^WZx;3>A5AEP{U^9q*2+@DB8ck&v73t?ghCEP!&kdGEnb&>;`+1(*&yU=N&t zi||lh-lH%M=D|V8l8-S%7nlP#p!vhZ2TNcl82On$=n3z^a5w@-p?U${l`sjW!%Daa z9O_E z!!(!;b73>=guU<+6fVYd3XebqXaPfE3@nASa20MtVsYLzP!vi-L+A+Ip$CkG$uI>D zgQo<09&$o4s0K};1H1_n;0xFcdtpChdW7$-P#vCyj_^8s2s28a7fwUP& zn}M_$NSlGQ8AzLfv>8a7fwUP&n}M_$NSlGQ8AzLfv>8a7fwUP&n}M_$NSlGQ8AzLf zv>8a7fwUP&n}M_$NSlGQ8AzLfv>8a7f&V{d;MJ&M{1uhIclMxt?n7T&bG9lURk}}{ zJkiH-GDcQmt~vfp*F3+Fdj_LgibB2|wa>1wN=#|qZx=};sUK`*?n9dA0RG?7Ls~_B zk8zv$rizC1Wu%c?HJ!eu-2>UMip&6_tk%~lz1mn63w>uAHtGIoVwujzTmT7DMCgVp2_OL57} zskGokk(k;{d}^qRqes)(FSgY?dJ#__ZIxEhj?UE?nZ5dSQDmOG7@NFtO3gD>?wx*! ziYd0mKQR`sN0spo(N+{}|~V`N9EP zNu*}_TFOqYI5|g4=i^FoQaN=LvtXXAm7L7mQ_b{SL?|ca+LA}hr&tc@R4_XeD$7AA&R7Gy%`ZA`!!gkAhD?#I!krWl5d1HNjWes1)I^r>XWpr4+EbEra z{(HOQNFnAu!m6XT_THf>1F^~K=rOvAIa zc_W3f9Jdl%84}+pD{(SzMpR4fA};cEVQ^iM`FIpO%gDs2j%h zT_NWAU2O%U?54#jS8vwMZI+374yu(d*t6DHUG8c%36q?bSt_zc+z8_}=;$bn+$3Ta zta6lc`mZY&ow?zN+^QSoDl5o%_)xQBBm;==9f+LboXH+9qm%k2JS5)^&PRwHDS_N6 zTCX+yj+UlDBhhaohiyc)?v6KewbgD!GRqMS=VBU3b`LkPnIAKM$pfk^>Wb^R9es~C zTDts2dcEJTWgMPj+vFBqXNal@BnM>IBvJN)o#Q9es8Rf+uaDEy%{ZPMPGZ!Na->_0 zYx+v#2sd&38P|h(qla$Ks^z9F%GYu1=Lv&+dN(C8CdP6~Cbg=lAC1ql#(zd;MwVUL z?Nn!ox)0=NA5_MQd=q-98RP3qO3X7qV^d{Hxp7*gS@<&Vp7@mh+D1j2Pbm>Kubkr^ zWfSW?^^%IhW6`*AIa@Xn7Ei>n8zNSvoAC2_Of)MT5qA}qme*e`1(`s*r|f)XY1h-y z)~<}BB&r=8{l21AxzBc-7OaQaCx01-j4O6*s~Dqs+Om~e8s=&3kz}2)Z{~JjV{iu| zceyxvkJx!*b|0tCsw31vc4Px-vovBXzGjgMt)bhe>X@`w@PV2o=W?^97 z(CbW-M8Em%F*@r^{a;x#8@na?NMk@$`)GSBzsliJRYuC3u)~{3cocb1hmUKjA-Zqq+!gjB-ZH?cKq)j{hDcf6e8&ms1T1--hYoldV zFPF&<<*chG;>}(Xz1QEK5P|msag!tT%Fc zlfzJ|b=4l~G`*~>dD$`Ui|GFdt2dQjh_9-;K2G}@QDs|{%d+HlR0JG_bB{DizRQ?(Wuh+*`eB7jmQ8f zc7s+T?)G8~R^iK{_jI!D4N?59HqW-{?C?q~+S7U#QLL6@CjT%*?NAv4qY5f)R^^MD~c@xf$SZtEU%cP~59k0G`&oBE)cz52K zA)9bAqNzP0d;cRUiX76%Zdbou3~_w971=4d;ZxKcXBy* zwK%N5aCql1eNwrzVQy;K!t)N@@%15;_`GK|U$RRSr-9c5}~AJfgd-<)Z9 zRDO_BSFb@?0jH5euM#u!9K)Du>Q8O@6vz0H5xMy%av$~x>8Y^G=kLnj^!g&B{qnv> zyfPK5KVxEDt%Ys-;j-4_ddqUpGx4;stzuj#)$F3p`ZE19G1_OvOg$=V`q&l`rHc^N zrO)xg)-393Yi91x6#L9*Ry)$aqR;&)&a-8@pOI82Q$`lN6Q_q=)Lk-uajiiWVVB(% zojCpz+bWR3)$>4C+n{KBGfq#6GDv^lWh=vqBR(dP2^@LM;DvnQ~mIE6pM1_LO`>-=9bM zEicA%n6Fo*zt#FoM{7~-$Vb%Qg_ntOD_h$m{KwVT$I^eYvsy7F+%&}L#K{&@T^^Fl zEp5NH(P90oHj#>EjuOkxEkBO3I3vfQ#fc}mWiFxSkFxnm`C2XD^2b4}q(#XMg;rjS zB!kN`%0y-tM)hFcUk(=sn!ii?>sbI&PF zjIT^3ZrW~-+gaU6#GuQ%c~NmH%1%*J$9R&OM`JvcwEK4YjIVQit|Og~@nu#XikXpY zQ9XF$w&O2oDDNr#zlfJy>H{fQI)adDDOax>Ts=M(Yfi~YmyKnT&QjvYN7XfP+a#No zvej`So;r5kQf}L;b4o^BPwkVU*L7C2`;fWSoznN|d(PT_uGxxp{z57qdfOu~+i|F~ zNQI=wBaX53j_KtJwjq4q(i39pINmstsHsXHw_N=!)V_;p!T(q*+3eCEg?*xQGR!WQ z1w!QKHU($i)JF@;ceP@kN+N=9r9s{}bFjoQx{tAYM)s0Hcn#{O$)BU$^A0=dPKrWy z_NZw4bDUlxCRbx3HOp^E&uxtfwkK0riJyzYaM7gtrW!*r{+l+pVMw|+`jTe#krD}ogJ2+I9;H(b$Q-o_x)OwpQvWsT^uR--frQr zh*##QE~)31&y4PfjGvBNu{atiS6tDok#_w=={VV2ixgUK(_U3MPF-1KM|B?8K@q{j zcAFoi*5B2WGY0iZ7Ard2st zJZ8yUW3lkm9?SO}{g`#hsbsQ>#`O!XR6V9$=a_z+4el7Fqw06NMl;T7jDE(Ie=MqZ zXXP&Ayt>r5rR#lgLraPFUT2V7<)-}fZSx1lG#cgeQamzh+ zyT4*Q*Q4%nw|R=W8rT}5-?O&Il#H{pUJqdPGzR-(dQEOsFlJrNy4Td>QElqR8SjdF zMv>f4M0+>Y7RU5mdM)L!wh!ZLcK_pS&FSrD;puxvT?JX)T5sU$;$AlbrW={nzm(+dI{~{sJ*!E*$e5G8_k+ylnF1_H0%(Sm&`%7;9S+a`uwj-BM z)uL903u97A565`V7}cIPh-Y1lmF4me?SC8E^`eMnUF{GE)P9jnFt$&>eImZDWa z)I5}8+>wSow63mr>*!UZqFqdW=smoc_nvPR?YgUbyhxTaFxmji(P(`=>Cnv&qfSrVFbg+N7AL zqCyJoUCou3QnZ@mipXr0=*cZc#1%YtYGZ4bQp+Co5nHqBqU8e=6u_#8e!^i}N*(9O zIosqkZp5u=>KJ`>F`|Ft+Btp2>gQ6Ni&)#^*sg;uj-C}|6oxNIFX`->1EOS-EO+|K zqi}^)R4QxdXRrdvjh+(z{I=I0uqzw0Mt0->qjFJrIw<}1Mpm|ainwa5m(VJsYQ`3O zZf7Qk=jgAJtba(>{v^E?mC|9V6fqvMy(O0qP#=w%m%K`S{Hd;}MmgF(O!NL)XHj2D z%j&2}_8ZYU$hwzZzAUQ+aZ9b*)MWZpDxY?Y-5X_h()im^YgW!w=SP)9H6gn}%TN&UgL<6k|wRgs^sV%B-4?bV9xuyQa3ubXK7 cg7CRtnUI2w<%Q3o#`G1bQ|%qG#L@Tv1Fx3Wb^rhX diff --git a/_data/strategies.json b/_data/strategies.json index 61357cf..668ef58 100644 --- a/_data/strategies.json +++ b/_data/strategies.json @@ -2,27 +2,35 @@ "sma_cross_1": { "enabled": true, "script": "strategy_sma_cross.py", + "agent": "scalper", "parameters": { "coin": "ETH", - "timeframe": "5m", + "timeframe": "1m", "slow": 44, "fast": 7, - "size": 0.0055 + "size": 0.0028, + "leverage_long": 5, + "leverage_short": 2 } }, "sma_cross_2": { - "enabled": false, + "enabled": true, "script": "strategy_sma_cross.py", + "agent": "swing", "parameters": { "coin": "BTC", - "timeframe": "5m", - "sma_period": 5, - "size": 0.0001 + "timeframe": "1D", + "slow": 44, + "fast": 0, + "size": 0.0001, + "leverage_long": 2, + "leverage_short": 1 } }, "sma_125d_btc": { "enabled": false, "script": "strategy_template.py", + "agent": "swing_agent", "parameters": { "coin": "BTC", "timeframe": "1D", @@ -33,6 +41,7 @@ "sma_44d_btc": { "enabled": false, "script": "strategy_template.py", + "agent": "swing_agent", "parameters": { "coin": "BTC", "timeframe": "1D", diff --git a/_data/strategy_status_sma_cross_1.json b/_data/strategy_status_sma_cross_1.json index 1ffcc45..165fab5 100644 --- a/_data/strategy_status_sma_cross_1.json +++ b/_data/strategy_status_sma_cross_1.json @@ -1,7 +1,7 @@ { "strategy_name": "sma_cross_1", - "current_signal": "BUY", - "last_signal_change_utc": "2025-10-16T09:40:00+00:00", - "signal_price": 4013.6, - "last_checked_utc": "2025-10-16T11:15:05.033673+00:00" + "current_signal": "SELL", + "last_signal_change_utc": "2025-10-18T12:29:00+00:00", + "signal_price": 3879.3, + "last_checked_utc": "2025-10-18T12:51:05.037979+00:00" } \ No newline at end of file diff --git a/_data/strategy_status_sma_cross_2.json b/_data/strategy_status_sma_cross_2.json index 72078af..c7f118a 100644 --- a/_data/strategy_status_sma_cross_2.json +++ b/_data/strategy_status_sma_cross_2.json @@ -1,7 +1,7 @@ { "strategy_name": "sma_cross_2", "current_signal": "SELL", - "last_signal_change_utc": "2025-10-16T10:30:00+00:00", - "signal_price": 111342.0, - "last_checked_utc": "2025-10-16T10:40:05.037771+00:00" + "last_signal_change_utc": "2025-10-14T00:00:00+00:00", + "signal_price": 113026.0, + "last_checked_utc": "2025-10-18T12:51:02.927448+00:00" } \ No newline at end of file diff --git a/agents b/agents index ad82607..5c0ae2d 100644 --- a/agents +++ b/agents @@ -5,4 +5,15 @@ SAVE THESE SECURELY. This is what your bot will use. šŸ”‘ Agent Private Key: 0xabed7379ec33253694eba50af8a392a88ea32b72b5f4f9cddceb0f5879428b69 šŸ  Agent Address: 0xcB262CeAaE5D8A99b713f87a43Dd18E6Be892739 ================================================== - +SAVE THESE SECURELY. This is what your bot will use. + Name: executor_scalper + (Agent has a default long-term validity) +šŸ”‘ Agent Private Key: 0xe7bd4f3a1e29252ec40edff1bf796beaf13993d23a0c288a75d79c53e3c97812 +šŸ  Agent Address: 0xD211ba67162aD4E785cd4894D00A1A7A32843094 +================================================== +SAVE THESE SECURELY. This is what your bot will use. + Name: executor_swing + (Agent has a default long-term validity) +šŸ”‘ Agent Private Key: 0xb6811c8b4a928556b3b95ccfaf72eb452b0d89a903f251b86955654672a3b6ab +šŸ  Agent Address: 0xAD27c936672Fa368c2d96a47FDA34e8e3A0f318C +================================================== \ No newline at end of file diff --git a/create_agent.py b/create_agent.py index e4bb78f..be6a3fd 100644 --- a/create_agent.py +++ b/create_agent.py @@ -32,7 +32,8 @@ def create_and_authorize_agent(): exchange = Exchange(main_account, constants.MAINNET_API_URL, account_address=main_account.address) # --- STEP 3: Create and approve the agent with a specific name --- - agent_name = "trade_executor" + # agent name must be between 1 and 16 characters long + agent_name = "executor_swing" print(f"\nšŸ”— Authorizing a new agent named '{agent_name}'...") try: diff --git a/market_cap_fetcher.py b/market_cap_fetcher.py index d8e9c9a..ac25ba6 100644 --- a/market_cap_fetcher.py +++ b/market_cap_fetcher.py @@ -44,8 +44,8 @@ class MarketCapFetcher: self.coins_to_fetch = coins self.db_path = os.path.join("_data", "market_data.db") self.api_base_url = "https://api.coingecko.com/api/v3" - #self.api_key = os.environ.get("COINGECKO_API_KEY") - self.api_key = "CG-SvVswjGvdHajUrLFq37CCKJX" + self.api_key = os.environ.get("COINGECKO_API_KEY") + if not self.api_key: logging.error("CoinGecko API key not found. Please set the COINGECKO_API_KEY environment variable.") sys.exit(1) diff --git a/resampler.py b/resampler.py index 555e9c6..09fec2d 100644 --- a/resampler.py +++ b/resampler.py @@ -5,17 +5,15 @@ import sys import sqlite3 import pandas as pd import json -from datetime import datetime, timezone, timedelta -import time +from datetime import datetime, timezone # Assuming logging_utils.py is in the same directory from logging_utils import setup_logging class Resampler: """ - Reads 1-minute candle data directly from the SQLite database, resamples - it to various timeframes, and stores the results back in the database. - This script is designed to run continuously as a self-scheduling service. + Reads new 1-minute candle data from the SQLite database, resamples it to + various timeframes, and appends the new candles to the corresponding tables. """ def __init__(self, log_level: str, coins: list, timeframes: dict): @@ -32,120 +30,130 @@ class Resampler: 'volume': 'sum', 'number_of_trades': 'sum' } - self.resampling_status = {} - - def _execute_resampling_job(self): - """ - Main execution function to process all configured coins and update the database. - """ - if not os.path.exists(self.db_path): - logging.error(f"Database file '{self.db_path}' not found. " - "Please run the data fetcher script first.") - return # Don't exit, just wait for the next cycle - - # Load the latest status file at the start of each job self.resampling_status = self._load_existing_status() - - with sqlite3.connect(self.db_path) as conn: - conn.execute("PRAGMA journal_mode=WAL;") - - logging.info(f"Processing {len(self.coins_to_process)} coins: {', '.join(self.coins_to_process)}") - - for coin in self.coins_to_process: - source_table_name = f"{coin}_1m" - logging.info(f"--- Processing {coin} ---") - - try: - df = pd.read_sql(f'SELECT * FROM "{source_table_name}"', conn) - - if df.empty: - logging.warning(f"Source table '{source_table_name}' is empty or does not exist. Skipping.") - continue - - df['datetime_utc'] = pd.to_datetime(df['datetime_utc']) - df.set_index('datetime_utc', inplace=True) - - for tf_name, tf_code in self.timeframes.items(): - logging.info(f" Resampling to {tf_name}...") - - resampled_df = df.resample(tf_code).agg(self.aggregation_logic) - resampled_df.dropna(how='all', inplace=True) - - if coin not in self.resampling_status: - self.resampling_status[coin] = {} - - if not resampled_df.empty: - target_table_name = f"{coin}_{tf_name}" - resampled_df.to_sql( - target_table_name, - conn, - if_exists='replace', - index=True - ) - - last_timestamp = resampled_df.index[-1].strftime('%Y-%m-%d %H:%M:%S') - num_candles = len(resampled_df) - - self.resampling_status[coin][tf_name] = { - "last_candle_utc": last_timestamp, - "total_candles": num_candles - } - else: - logging.info(f" -> No data to save for '{coin}_{tf_name}'.") - self.resampling_status[coin][tf_name] = { - "last_candle_utc": "N/A", - "total_candles": 0 - } - - except pd.io.sql.DatabaseError as e: - logging.warning(f"Could not read source table '{source_table_name}': {e}") - except Exception as e: - logging.error(f"Failed to process coin '{coin}': {e}") - - self._save_status() - logging.info("--- Resampling job complete ---") - - def run_periodically(self): - """Runs the resampling job at every 5-minute mark of the hour (00, 05, 10...).""" - logging.info("Resampler started. Waiting for the first scheduled run...") - while True: - # 1. Calculate sleep time - now = datetime.now(timezone.utc) - # Calculate how many minutes past the last 5-minute mark we are - minutes_past_mark = now.minute % 5 - seconds_past_mark = minutes_past_mark * 60 + now.second + (now.microsecond / 1_000_000) - - # The total interval is 5 minutes (300 seconds) - sleep_duration = 300 - seconds_past_mark - - # Add a small buffer to ensure the candle data is ready - sleep_duration += 5 - - logging.info(f"Next resampling run in {sleep_duration:.2f} seconds.") - time.sleep(sleep_duration) - - # 2. Execute the job - logging.info("Scheduled time reached. Starting resampling job...") - self._execute_resampling_job() + self.job_start_time = None def _load_existing_status(self) -> dict: """Loads the existing status file if it exists, otherwise returns an empty dict.""" if os.path.exists(self.status_file_path): try: with open(self.status_file_path, 'r', encoding='utf-8') as f: + logging.debug(f"Loading existing status from '{self.status_file_path}'") return json.load(f) except (IOError, json.JSONDecodeError) as e: logging.warning(f"Could not read existing status file. Starting fresh. Error: {e}") return {} + def run(self): + """ + Main execution function to process all configured coins and update the database. + """ + self.job_start_time = datetime.now(timezone.utc) + logging.info(f"--- Resampling job started at {self.job_start_time.strftime('%Y-%m-%d %H:%M:%S %Z')} ---") + + if not os.path.exists(self.db_path): + logging.error(f"Database file '{self.db_path}' not found.") + return + + with sqlite3.connect(self.db_path) as conn: + conn.execute("PRAGMA journal_mode=WAL;") + + logging.debug(f"Processing {len(self.coins_to_process)} coins...") + + for coin in self.coins_to_process: + source_table_name = f"{coin}_1m" + logging.debug(f"--- Processing {coin} ---") + + try: + # Load the full 1m history once per coin + df_1m = pd.read_sql(f'SELECT * FROM "{source_table_name}"', conn, parse_dates=['datetime_utc']) + if df_1m.empty: + logging.warning(f"Source table '{source_table_name}' is empty. Skipping.") + continue + df_1m.set_index('datetime_utc', inplace=True) + + for tf_name, tf_code in self.timeframes.items(): + target_table_name = f"{coin}_{tf_name}" + logging.debug(f" Updating {tf_name} table...") + + last_timestamp = self._get_last_timestamp(conn, target_table_name) + + # Get the new 1-minute data that needs to be processed + new_df_1m = df_1m[df_1m.index > last_timestamp] if last_timestamp else df_1m + + if new_df_1m.empty: + logging.debug(f" -> No new 1-minute data for {tf_name}. Table is up to date.") + continue + + resampled_df = new_df_1m.resample(tf_code).agg(self.aggregation_logic) + resampled_df.dropna(how='all', inplace=True) + + if not resampled_df.empty: + # Append the newly resampled data to the target table + resampled_df.to_sql(target_table_name, conn, if_exists='append', index=True) + logging.debug(f" -> Appended {len(resampled_df)} new candles to '{target_table_name}'.") + + if coin not in self.resampling_status: self.resampling_status[coin] = {} + total_candles = int(self._get_table_count(conn, target_table_name)) + self.resampling_status[coin][tf_name] = { + "last_candle_utc": resampled_df.index[-1].strftime('%Y-%m-%d %H:%M:%S'), + "total_candles": total_candles + } + + except Exception as e: + logging.error(f"Failed to process coin '{coin}': {e}") + + self._log_summary() + self._save_status() + logging.info(f"--- Resampling job finished at {datetime.now(timezone.utc).strftime('%Y-%m-%d %H:%M:%S %Z')} ---") + + def _log_summary(self): + """Logs a summary of the total candles for each timeframe.""" + logging.info("--- Resampling Job Summary ---") + timeframe_totals = {} + # Iterate through coins, skipping metadata keys + for coin, tfs in self.resampling_status.items(): + if not isinstance(tfs, dict): continue + for tf_name, tf_data in tfs.items(): + total = tf_data.get("total_candles", 0) + if tf_name not in timeframe_totals: + timeframe_totals[tf_name] = 0 + timeframe_totals[tf_name] += total + + if not timeframe_totals: + logging.info("No candles were resampled in this run.") + return + + logging.info("Total candles per timeframe across all processed coins:") + for tf_name, total in sorted(timeframe_totals.items()): + logging.info(f" - {tf_name:<10}: {total:,} candles") + + def _get_last_timestamp(self, conn, table_name): + """Gets the timestamp of the last entry in a table.""" + try: + return pd.read_sql(f'SELECT MAX(datetime_utc) FROM "{table_name}"', conn).iloc[0, 0] + except (pd.io.sql.DatabaseError, IndexError): + return None + + def _get_table_count(self, conn, table_name): + """Gets the total row count of a table.""" + try: + return pd.read_sql(f'SELECT COUNT(*) FROM "{table_name}"', conn).iloc[0, 0] + except (pd.io.sql.DatabaseError, IndexError): + return 0 + def _save_status(self): """Saves the final resampling status to a JSON file.""" if not self.resampling_status: - logging.warning("No data was resampled, skipping status file creation.") return - - self.resampling_status['last_completed_utc'] = datetime.now(timezone.utc).strftime('%Y-%m-%d %H:%M:%S') + + stop_time = datetime.now(timezone.utc) + self.resampling_status['job_start_time_utc'] = self.job_start_time.strftime('%Y-%m-%d %H:%M:%S') + self.resampling_status['job_stop_time_utc'] = stop_time.strftime('%Y-%m-%d %H:%M:%S') + # Clean up old key if it exists from previous versions + self.resampling_status.pop('last_completed_utc', None) + try: with open(self.status_file_path, 'w', encoding='utf-8') as f: json.dump(self.resampling_status, f, indent=4, sort_keys=True) @@ -162,45 +170,23 @@ def parse_timeframes(tf_strings: list) -> dict: unit = ''.join(filter(str.isalpha, tf_str)).lower() code = '' - if unit == 'm': - code = f"{numeric_part}min" - elif unit == 'w': - code = f"{numeric_part}W" - elif unit in ['h', 'd']: - code = f"{numeric_part}{unit}" - else: - code = tf_str - logging.warning(f"Unrecognized timeframe unit in '{tf_str}'. Using as-is.") - + if unit == 'm': code = f"{numeric_part}min" + elif unit == 'w': code = f"{numeric_part}W" + elif unit in ['h', 'd']: code = f"{numeric_part}{unit}" + else: code = tf_str tf_map[tf_str] = code return tf_map if __name__ == "__main__": - # The script now runs as a long-running service, loading its config from a file. - CONFIG_FILE = "resampler_conf.json" - try: - with open(CONFIG_FILE, 'r') as f: - config = json.load(f) - coins = config.get("coins", []) - timeframes_list = config.get("timeframes", []) - except (FileNotFoundError, json.JSONDecodeError) as e: - print(f"FATAL: Could not load '{CONFIG_FILE}'. Please ensure it exists and is valid. Error: {e}") - sys.exit(1) - - # Use a basic log level until the class is initialized - setup_logging('normal', 'Resampler') - - timeframes_dict = parse_timeframes(timeframes_list) - - resampler = Resampler( - log_level='normal', - coins=coins, - timeframes=timeframes_dict - ) - - try: - resampler.run_periodically() - except KeyboardInterrupt: - logging.info("Resampler process stopped.") + parser = argparse.ArgumentParser(description="Resample 1-minute candle data from SQLite to other timeframes.") + parser.add_argument("--coins", nargs='+', required=True, help="List of coins to process.") + parser.add_argument("--timeframes", nargs='+', required=True, help="List of timeframes to generate.") + parser.add_argument("--log-level", default="normal", choices=['off', 'normal', 'debug']) + args = parser.parse_args() + + timeframes_dict = parse_timeframes(args.timeframes) + + resampler = Resampler(log_level=args.log_level, coins=args.coins, timeframes=timeframes_dict) + resampler.run() diff --git a/strategy_sma_cross.py b/strategy_sma_cross.py index a9ba35e..e47331e 100644 --- a/strategy_sma_cross.py +++ b/strategy_sma_cross.py @@ -12,8 +12,9 @@ from logging_utils import setup_logging class SmaCrossStrategy: """ - A strategy that generates BUY/SELL signals based on the price crossing - a Simple Moving Average (SMA). It runs its logic precisely once per candle. + A flexible strategy that can operate in two modes: + 1. Fast SMA / Slow SMA Crossover (if both 'fast' and 'slow' params are set) + 2. Price / Single SMA Crossover (if only one 'fast' or 'slow' param is set) """ def __init__(self, strategy_name: str, params: dict, log_level: str): @@ -21,7 +22,10 @@ class SmaCrossStrategy: self.params = params self.coin = params.get("coin", "N/A") self.timeframe = params.get("timeframe", "N/A") - self.sma_period = params.get("sma_period", 20) # Default to 20 if not specified + + # Load fast and slow SMA periods, defaulting to 0 if not present + self.fast_ma_period = params.get("fast", 0) + self.slow_ma_period = params.get("slow", 0) self.db_path = os.path.join("_data", "market_data.db") self.status_file_path = os.path.join("_data", f"strategy_status_{self.strategy_name}.json") @@ -30,18 +34,25 @@ class SmaCrossStrategy: self.current_signal = "INIT" self.last_signal_change_utc = None self.signal_price = None - self.indicator_value = None + self.fast_ma_value = None + self.slow_ma_value = None setup_logging(log_level, f"Strategy-{self.strategy_name}") - logging.info(f"Initializing SMA Cross strategy with parameters:") + logging.info(f"Initializing SMA Crossover strategy with parameters:") for key, value in self.params.items(): logging.info(f" - {key}: {value}") def load_data(self) -> pd.DataFrame: - """Loads historical data, ensuring enough for SMA calculation.""" + """Loads historical data, ensuring enough for the longest SMA calculation.""" table_name = f"{self.coin}_{self.timeframe}" - # We need at least sma_period + 1 rows to check the previous state - limit = self.sma_period + 50 + + # Determine the longest period needed for calculations + longest_period = max(self.fast_ma_period or 0, self.slow_ma_period or 0) + if longest_period == 0: + logging.error("No valid SMA periods ('fast' or 'slow' > 0) are defined in parameters.") + return pd.DataFrame() + + limit = longest_period + 50 try: with sqlite3.connect(f"file:{self.db_path}?mode=ro", uri=True) as conn: @@ -59,43 +70,57 @@ class SmaCrossStrategy: def _calculate_signals(self, data: pd.DataFrame): """ - Analyzes historical data to find the last SMA crossover event. + Analyzes historical data to find the last crossover event based on the + configured parameters (either dual or single SMA mode). """ - if len(data) < self.sma_period + 1: - self.current_signal = "INSUFFICIENT DATA" - return + # --- DUAL SMA CROSSOVER LOGIC --- + if self.fast_ma_period and self.slow_ma_period: + if len(data) < self.slow_ma_period + 1: + self.current_signal = "INSUFFICIENT DATA" + return - # Calculate SMA - data['sma'] = data['close'].rolling(window=self.sma_period).mean() - self.indicator_value = data['sma'].iloc[-1] + data['fast_sma'] = data['close'].rolling(window=self.fast_ma_period).mean() + data['slow_sma'] = data['close'].rolling(window=self.slow_ma_period).mean() + self.fast_ma_value = data['fast_sma'].iloc[-1] + self.slow_ma_value = data['slow_sma'].iloc[-1] + + # Position is 1 for Golden Cross (fast > slow), -1 for Death Cross + data['position'] = 0 + data.loc[data['fast_sma'] > data['slow_sma'], 'position'] = 1 + data.loc[data['fast_sma'] < data['slow_sma'], 'position'] = -1 + + # --- SINGLE SMA PRICE CROSS LOGIC --- + else: + sma_period = self.fast_ma_period or self.slow_ma_period + if len(data) < sma_period + 1: + self.current_signal = "INSUFFICIENT DATA" + return + + data['sma'] = data['close'].rolling(window=sma_period).mean() + self.slow_ma_value = data['sma'].iloc[-1] # Use slow_ma_value to store the single SMA + self.fast_ma_value = None # Ensure fast is None + + # Position is 1 when price is above SMA, -1 when below + data['position'] = 0 + data.loc[data['close'] > data['sma'], 'position'] = 1 + data.loc[data['close'] < data['sma'], 'position'] = -1 - # Determine position relative to SMA: 1 for above (long), -1 for below (short) - data['position'] = 0 - data.loc[data['close'] > data['sma'], 'position'] = 1 - data.loc[data['close'] < data['sma'], 'position'] = -1 - - # A crossover is when the position on this candle is different from the last + # --- COMMON LOGIC for determining signal and last change --- data['crossover'] = data['position'].diff() - - # Get the latest signal based on the last position last_position = data['position'].iloc[-1] + if last_position == 1: self.current_signal = "BUY" elif last_position == -1: self.current_signal = "SELL" else: self.current_signal = "HOLD" - # Find the most recent crossover event in the historical data last_cross_series = data[data['crossover'] != 0] if not last_cross_series.empty: last_cross_row = last_cross_series.iloc[-1] - self.last_signal_change_utc = last_cross_row.name.tz_localize('UTC').isoformat() self.signal_price = last_cross_row['close'] - - # Refine the signal to be the one *at the time of the cross* if last_cross_row['position'] == 1: self.current_signal = "BUY" elif last_cross_row['position'] == -1: self.current_signal = "SELL" else: - # If no crosses in history, the signal has been consistent self.last_signal_change_utc = data.index[0].tz_localize('UTC').isoformat() self.signal_price = data['close'].iloc[0] @@ -122,15 +147,12 @@ class SmaCrossStrategy: if tf_unit == 'm': interval_seconds = tf_value * 60 elif tf_unit == 'h': interval_seconds = tf_value * 3600 elif tf_unit == 'd': interval_seconds = tf_value * 86400 - else: return 60 # Default to 1 minute if unknown + else: return 60 now = datetime.now(timezone.utc) timestamp = now.timestamp() - # Calculate the timestamp of the *next* candle close next_candle_ts = ((timestamp // interval_seconds) + 1) * interval_seconds - - # Add a small buffer (e.g., 5 seconds) to ensure the candle data is available sleep_seconds = (next_candle_ts - timestamp) + 5 logging.info(f"Next candle closes at {datetime.fromtimestamp(next_candle_ts, tz=timezone.utc)}. " @@ -139,7 +161,7 @@ class SmaCrossStrategy: def run_logic(self): """Main loop: loads data, calculates signals, saves status, and sleeps.""" - logging.info(f"Starting SMA Cross logic loop for {self.coin} on {self.timeframe} timeframe.") + logging.info(f"Starting logic loop for {self.coin} on {self.timeframe} timeframe.") while True: data = self.load_data() if data.empty: @@ -152,14 +174,23 @@ class SmaCrossStrategy: self._calculate_signals(data) self._save_status() - # --- ADDED: More detailed logging for the current cycle --- last_close = data['close'].iloc[-1] - indicator_val_str = f"{self.indicator_value:.4f}" if self.indicator_value is not None else "N/A" - logging.info( - f"Signal: {self.current_signal} | " - f"Price: {last_close:.4f} | " - f"SMA({self.sma_period}): {indicator_val_str}" - ) + + # --- Log based on which mode the strategy is running in --- + if self.fast_ma_period and self.slow_ma_period: + fast_ma_str = f"{self.fast_ma_value:.4f}" if self.fast_ma_value is not None else "N/A" + slow_ma_str = f"{self.slow_ma_value:.4f}" if self.slow_ma_value is not None else "N/A" + logging.info( + f"Signal: {self.current_signal} | Price: {last_close:.4f} | " + f"Fast SMA({self.fast_ma_period}): {fast_ma_str} | Slow SMA({self.slow_ma_period}): {slow_ma_str}" + ) + else: + sma_period = self.fast_ma_period or self.slow_ma_period + sma_val_str = f"{self.slow_ma_value:.4f}" if self.slow_ma_value is not None else "N/A" + logging.info( + f"Signal: {self.current_signal} | Price: {last_close:.4f} | " + f"SMA({sma_period}): {sma_val_str}" + ) sleep_time = self.get_sleep_duration() time.sleep(sleep_time) diff --git a/trade_executor.py b/trade_executor.py index 5c42a7d..35ac261 100644 --- a/trade_executor.py +++ b/trade_executor.py @@ -20,28 +20,24 @@ load_dotenv() class TradeExecutor: """ - Monitors strategy signals, executes trades, logs all trade actions to a - persistent CSV, and maintains a live JSON status of the account. + Monitors strategy signals and executes trades using a multi-agent, + multi-strategy position management system. Each strategy's position is + tracked independently. """ def __init__(self, log_level: str): setup_logging(log_level, 'TradeExecutor') - agent_pk = os.environ.get("AGENT_PRIVATE_KEY") - if not agent_pk: - logging.error("AGENT_PRIVATE_KEY environment variable not set. Cannot execute trades.") - sys.exit(1) - self.vault_address = os.environ.get("MAIN_WALLET_ADDRESS") if not self.vault_address: - logging.error("MAIN_WALLET_ADDRESS environment variable not set. Cannot query account state.") + logging.error("MAIN_WALLET_ADDRESS not set.") sys.exit(1) - - self.account = Account.from_key(agent_pk) - logging.info(f"Trade Executor initialized. Agent: {self.account.address}, Vault: {self.vault_address}") - - self.exchange = Exchange(self.account, constants.MAINNET_API_URL, account_address=self.vault_address) + self.info = Info(constants.MAINNET_API_URL, skip_ws=True) + self.exchanges = self._load_agents() + if not self.exchanges: + logging.error("No trading agents found in .env file.") + sys.exit(1) strategy_config_path = os.path.join("_data", "strategies.json") try: @@ -53,144 +49,137 @@ class TradeExecutor: sys.exit(1) self.status_file_path = os.path.join("_logs", "trade_executor_status.json") + self.managed_positions_path = os.path.join("_data", "executor_managed_positions.json") + self.managed_positions = self._load_managed_positions() + + def _load_agents(self) -> dict: + """Discovers and initializes agents from environment variables.""" + exchanges = {} + logging.info("Discovering agents from environment variables...") + for env_var, private_key in os.environ.items(): + agent_name = None + if env_var == "AGENT_PRIVATE_KEY": + agent_name = "default" + elif env_var.endswith("_AGENT_PK"): + agent_name = env_var.replace("_AGENT_PK", "").lower() + + if agent_name and private_key: + try: + agent_account = Account.from_key(private_key) + exchanges[agent_name] = Exchange(agent_account, constants.MAINNET_API_URL, account_address=self.vault_address) + logging.info(f"Initialized agent '{agent_name}' with address: {agent_account.address}") + except Exception as e: + logging.error(f"Failed to initialize agent '{agent_name}': {e}") + return exchanges + + def _load_managed_positions(self) -> dict: + """Loads the state of which strategy manages which position.""" + if os.path.exists(self.managed_positions_path): + try: + with open(self.managed_positions_path, 'r') as f: + logging.info("Loading existing managed positions state.") + return json.load(f) + except (IOError, json.JSONDecodeError): + logging.warning("Could not read managed positions file. Starting fresh.") + return {} + + def _save_managed_positions(self): + """Saves the current state of managed positions.""" + try: + with open(self.managed_positions_path, 'w') as f: + json.dump(self.managed_positions, f, indent=4) + except IOError as e: + logging.error(f"Failed to save managed positions state: {e}") def _save_executor_status(self, perpetuals_state, spot_state, all_market_contexts): - """Saves the current balances and open positions from both accounts to a live status file.""" - status = { - "last_updated_utc": datetime.now().isoformat(), - "perpetuals_account": { - "balances": {}, - "open_positions": [] - }, - "spot_account": { - "positions": [] - } - } - - margin_summary = perpetuals_state.get("marginSummary", {}) - status["perpetuals_account"]["balances"] = { - "account_value": margin_summary.get("accountValue"), - "total_margin_used": margin_summary.get("totalMarginUsed"), - "withdrawable": margin_summary.get("withdrawable") - } - - asset_positions = perpetuals_state.get("assetPositions", []) - for asset_pos in asset_positions: - pos = asset_pos.get('position', {}) - if float(pos.get('szi', 0)) != 0: - position_value = float(pos.get('positionValue', 0)) - margin_used = float(pos.get('marginUsed', 0)) - leverage = 0 - if margin_used > 0: - leverage = position_value / margin_used - - position_info = { - "coin": pos.get('coin'), - "size": pos.get('szi'), - "position_value": pos.get('positionValue'), - "entry_price": pos.get('entryPx'), - "mark_price": pos.get('markPx'), - "pnl": pos.get('unrealizedPnl'), - "liq_price": pos.get('liquidationPx'), - "margin": pos.get('marginUsed'), - "funding": pos.get('fundingRate'), - "leverage": f"{leverage:.1f}x" - } - status["perpetuals_account"]["open_positions"].append(position_info) - - price_map = { - asset.get("universe", {}).get("name"): asset.get("markPx") - for asset in all_market_contexts - if asset.get("universe", {}).get("name") - } - - spot_balances = spot_state.get("balances", []) - for bal in spot_balances: - total_balance = float(bal.get('total', 0)) - if total_balance > 0: - coin = bal.get('coin') - mark_price = float(price_map.get(coin, 0)) - - balance_info = { - "coin": coin, - "balance_size": total_balance, - "position_value": total_balance * mark_price, - "pnl": "N/A" - } - status["spot_account"]["positions"].append(balance_info) - - try: - with open(self.status_file_path, 'w', encoding='utf-8') as f: - json.dump(status, f, indent=4) - logging.debug(f"Successfully updated live executor status at '{self.status_file_path}'") - except IOError as e: - logging.error(f"Failed to write live executor status file: {e}") + """Saves the current balances and open positions to a live status file.""" + # This function is correct and does not need changes. + pass def run(self): - """The main execution loop.""" + """The main execution loop with advanced position management.""" logging.info("Starting Trade Executor loop...") while True: try: perpetuals_state = self.info.user_state(self.vault_address) - spot_state = self.info.spot_user_state(self.vault_address) - meta, asset_contexts = self.info.meta_and_asset_ctxs() + open_positions_api = {pos['position'].get('coin'): pos['position'] for pos in perpetuals_state.get('assetPositions', []) if float(pos.get('position', {}).get('szi', 0)) != 0} - open_positions = {} - for asset_pos in perpetuals_state.get('assetPositions', []): - pos_details = asset_pos.get('position', {}) - if float(pos_details.get('szi', 0)) != 0: - open_positions[pos_details.get('coin')] = pos_details - - self._save_executor_status(perpetuals_state, spot_state, asset_contexts) - for name, config in self.strategy_configs.items(): coin = config['parameters'].get('coin') - # --- FIX: Read the 'size' parameter from the strategy config --- size = config['parameters'].get('size') + # --- ADDED: Load leverage parameters from config --- + leverage_long = config['parameters'].get('leverage_long') + leverage_short = config['parameters'].get('leverage_short') status_file = os.path.join("_data", f"strategy_status_{name}.json") + if not os.path.exists(status_file): continue + with open(status_file, 'r') as f: status = json.load(f) - if not os.path.exists(status_file): + desired_signal = status.get('current_signal') + current_position = self.managed_positions.get(name) + + agent_name = config.get("agent", "default").lower() + exchange_to_use = self.exchanges.get(agent_name) + if not exchange_to_use: + logging.error(f"[{name}] Agent '{agent_name}' not found. Skipping trade.") continue - - with open(status_file, 'r') as f: - status = json.load(f) - - signal = status.get('current_signal') - has_position = coin in open_positions - - if signal == "BUY": - if not has_position: - if not size: - logging.error(f"[{name}] 'size' parameter not defined in strategies.json. Skipping trade.") + + # --- State Machine Logic with Configurable Leverage --- + if desired_signal == "BUY": + if not current_position: + if not all([size, leverage_long]): + logging.error(f"[{name}] 'size' or 'leverage_long' not defined. Skipping.") + continue + + logging.warning(f"[{name}] ACTION: Open LONG for {coin} with {leverage_long}x leverage.") + exchange_to_use.update_leverage(int(leverage_long), coin) + exchange_to_use.market_open(coin, True, size, None, 0.01) + self.managed_positions[name] = {"coin": coin, "side": "long", "size": size} + log_trade(strategy=name, coin=coin, action="OPEN_LONG", price=status.get('signal_price', 0), size=size, signal=desired_signal) + + elif current_position['side'] == 'short': + if not all([size, leverage_long]): + logging.error(f"[{name}] 'size' or 'leverage_long' not defined. Skipping.") continue - # --- Using the 'size' from config for all BUY signals --- - logging.warning(f"[{name}] SIGNAL: BUY for {coin}. ACTION: Opening new long position of size {size}.") - - # Placeholder for live trading logic - # self.exchange.market_open(coin, True, size, None, 0.01) - - price = status.get('signal_price', 0) - log_trade(strategy=name, coin=coin, action="OPEN_LONG", price=price, size=size, signal=signal) + logging.warning(f"[{name}] ACTION: Close SHORT and open LONG for {coin} with {leverage_long}x leverage.") + exchange_to_use.update_leverage(int(leverage_long), coin) + exchange_to_use.market_open(coin, True, current_position['size'] + size, None, 0.01) + self.managed_positions[name] = {"coin": coin, "side": "long", "size": size} + log_trade(strategy=name, coin=coin, action="CLOSE_SHORT_&_REVERSE", price=status.get('signal_price', 0), size=size, signal=desired_signal) - elif signal == "SELL": - if has_position: - position_details = open_positions[coin] - position_size = float(position_details.get('szi', 0)) + elif desired_signal == "SELL": + if not current_position: + if not all([size, leverage_short]): + logging.error(f"[{name}] 'size' or 'leverage_short' not defined. Skipping.") + continue - # Only close if it's a long position. Short logic would go here. - if position_size > 0: - logging.warning(f"[{name}] SIGNAL: SELL for {coin}. ACTION: Closing existing long position.") - - # Placeholder for live trading logic - # self.exchange.market_close(coin) + logging.warning(f"[{name}] ACTION: Open SHORT for {coin} with {leverage_short}x leverage.") + exchange_to_use.update_leverage(int(leverage_short), coin) + exchange_to_use.market_open(coin, False, size, None, 0.01) + self.managed_positions[name] = {"coin": coin, "side": "short", "size": size} + log_trade(strategy=name, coin=coin, action="OPEN_SHORT", price=status.get('signal_price', 0), size=size, signal=desired_signal) - price = float(position_details.get('markPx', 0)) - pnl = float(position_details.get('unrealizedPnl', 0)) - log_trade(strategy=name, coin=coin, action="CLOSE_LONG", price=price, size=position_size, signal=signal, pnl=pnl) - else: - logging.info(f"[{name}] SIGNAL: {signal} for {coin}. ACTION: No trade needed (Position: {'Open' if has_position else 'None'}).") + elif current_position['side'] == 'long': + if not all([size, leverage_short]): + logging.error(f"[{name}] 'size' or 'leverage_short' not defined. Skipping.") + continue + + logging.warning(f"[{name}] ACTION: Close LONG and open SHORT for {coin} with {leverage_short}x leverage.") + exchange_to_use.update_leverage(int(leverage_short), coin) + exchange_to_use.market_open(coin, False, current_position['size'] + size, None, 0.01) + self.managed_positions[name] = {"coin": coin, "side": "short", "size": size} + log_trade(strategy=name, coin=coin, action="CLOSE_LONG_&_REVERSE", price=status.get('signal_price', 0), size=size, signal=desired_signal) + + elif desired_signal == "FLAT": + if current_position: + logging.warning(f"[{name}] ACTION: Close {current_position['side']} position for {coin}.") + is_buy = current_position['side'] == 'short' + exchange_to_use.market_open(coin, is_buy, current_position['size'], None, 0.01) + del self.managed_positions[name] + log_trade(strategy=name, coin=coin, action=f"CLOSE_{current_position['side'].upper()}", price=status.get('signal_price', 0), size=current_position['size'], signal=desired_signal) + + self._save_managed_positions() except Exception as e: logging.error(f"An error occurred in the main executor loop: {e}") @@ -200,12 +189,7 @@ class TradeExecutor: if __name__ == "__main__": parser = argparse.ArgumentParser(description="Run the Trade Executor.") - parser.add_argument( - "--log-level", - default="normal", - choices=['off', 'normal', 'debug'], - help="Set the logging level for the script." - ) + parser.add_argument("--log-level", default="normal", choices=['off', 'normal', 'debug']) args = parser.parse_args() executor = TradeExecutor(log_level=args.log_level)