From b6b5b12eb8c63a7f01d89305f00703de7be43a0c Mon Sep 17 00:00:00 2001 From: "kek.of" Date: Sun, 15 Mar 2026 23:52:02 +0500 Subject: [PATCH] macOS files --- macos/icon.icns | Bin 0 -> 169419 bytes macos/icon_tray.png | Bin 0 -> 1390 bytes macos/macos.py | 456 ++++++++++++++++++++++++++++++++++++++++++++ macos/macos.spec | 88 +++++++++ macos/updater.py | 100 ++++++++++ 5 files changed, 644 insertions(+) create mode 100644 macos/icon.icns create mode 100644 macos/icon_tray.png create mode 100644 macos/macos.py create mode 100644 macos/macos.spec create mode 100644 macos/updater.py diff --git a/macos/icon.icns b/macos/icon.icns new file mode 100644 index 0000000000000000000000000000000000000000..3222c7c27a9300f199461e5e8a7845892b39c581 GIT binary patch literal 169419 zcmb?>Q*o^RX2{-=oI6D&O^}J-8|7o!ELm&RC3_b$v^* zX7Ikr&hhdjSB4b@x0M~Ekj);NLh~~JOd3gmD;|F^afYlpVW50WF@mF8nw*PL__F51 zxHl6sIzfJy8@C(wt=V5Fm5$xV@J`+Oa0S^XWpf~su`LAR^Qwpb`Q=c9CH%u3Mtx17 z_!CWcSiY1G)Z(=x<(3P!k%S0m4xv8{4Z2zt84|MuP=1nsIYrS0SU1hPZGQ<}o_(mh35cE*NRd5E9IroH;Q(`V&ljAfO5p>nhC|y+9)<;QywOR!CAxO9kI1HP z`&Bl(OV+d$T4TJSNa9eR1QT{sr_sUolBX|%#w}$wpGQK!E0}Y89i~5#tQO9OW85r- zx6Pd$w{g7}a^`9>C)NF^WSVnFdUC%zi+|k^>ua0%NNR^B2tiLn%P+Wx|M2hLKC0kL zwLK=rVR47F5MnXLGh>mUz}tOc9SGPLFP=5U8ywg*b3Lvgc2zy-Oc*rrrCXrh)6(Unrk$7qa0#j#>=e7~R5U zo7mx~X2}g6vzmTK(R++19kD)&;$jM{9=Dl2W~KxTQnKYQsm7qPiSi(4ndBjiN?Saz?D1Ir9{S+~wh(%l zUqiWNi{YLRr(RZdWz# zcIFSxyr?xudtNCEviMtwAH873u@-%7RfOZ9O;$BGIm?78$8M{hm6B6plt_y@M)}wX zY^R|np+{r}quzqZ4C%R*{a#3_*3w@s4l|Uy7>x>chDm8XBXMan*WchK1wp+x^^6$C zaTa|~6gh6*PIifY69x|rb#9Vbv>4#bpnoXU;H&QJQ2DXu9dttFCkvrjps!KoQ~e_E zkM^{rmpNVoof{PzTZ0(Rt$q zHd|)`xiRJE00eiw7;W9l90* z@ni>I^hB}+8kx|mC?|O8p2`>YxEy6WAo0$3q^ClO32oCYYAH`8upMxP(~B`yEH@)y zfO1OM*c`Uep*(qbkETg>l73RHX3(1++AtLelNFU9OVODd0)wUu?8Fr4!r8hwzu>%5 z`wo^M(%_el-@$wyWI@Htbq*x2*!G0G<@Sna)#JF4VbdA)f)v6?kZI}Yza6>6B%%^t zbUZxa4D5cv()?i1%Z5RS@HtCIU##LQ9HMvnT_K;o)zRUvl1&|$>)qvrQ2C;4M1+9U zruQ2{Q@^;=ZO#GvXvRkGEMfU3JbCjKM(VgD@5So3AVfCdY=y z@yI~fI`Dypd6>tIY6uKl@7Jm=rr=#5n!J`YWoVnKo!b0u)BrSQM&LPTCV%_!wQdhc znvhd01#XkP+*t{$R1mfsHE!?m(#8t2s{N5V1G{Yg^6o*ea;VJeYJRJmDSt9lyf}X0 zf{7Td>uEv)C!ZLSBeO?uCy!8!xxHIq2p7Tk$1Y3S0@!qpeY?zZRh*C`A9PDYB4f#d zS!U7L%Z{1ms~vhhYzotRskSv@3d3PJ&j!AqUZ@3#v3*N{6AI(6j^z?lk<-V>KB!CuihN)q|8ob9?Pj zN-ScUsY@b868EEEw7-)Q{+5Zp%#FI4FLH>+$prEh)-zPR$&oiv48UFz6+2g_X|BuBobyB zF61jktVC4KBWirp_tm4Qc@Dt@o8OL( z=GKg`1Wj5|Q((-z!FoJV3&#`Za%na++IK(%Qt7KOY>uk*)9DG&mb_#m(gLxw<@KY zlF5mKbgYRKJwBV{2torL(n;&ZvVXa%TP#qc*Mzf zYp$QgRBU5#Sd4E-y`T6ZLdn+EB+@g!NWl-d_KcSi-_Y{d$aWSwM2a3w%Qq^jUX`PZ z*P(4iIK!vibP=-DC$YUd+^ zZ06a)e9o!-S)C67c5{*8L;xZ;np#8xq*_7Z;XXjn27Zh_Q1fA#tUA5qIn`P=yzm;e zyCK;5n!d=WYnVfTW5$M_m4U>;l%tMtbry(09-@KglO!Ion#=xqu5>%2> zD4m@M;COv$SCdV?`KlEHWymzh+xdlR=agCqpU&nunG7TTZD1%u?L*?kPo1p42XnAoVMI1{%z#U#t2 z8BLqt$uAW2@?tMT=GhuE{hqYFAUZy$TK=?!P3?rb5y_w#&@=G}>CUlFqX2Wa&jFZ% zM>-&d53xfC>h&VQ+zY7TEaEG}B}2Wi)zG-)?%Ao|E68jc#rtutv~7&tC}5l3v~`-M zdE-zDMwZp@3HdV?#Ru_}5S(pa_5ridSv=G3{V`*6-v3W{0?#UuUMegf819ke*kR#d`8U5!cY= zU*iswzt1=e8JWL$akPqN?SsDaiAHiJ;2IcIT=fjSWXCpBZVA-STfRgD6xvkZ;RbFK z%Q$e}@4=g9JJdFF#(?rL4`(%4@84=D671suPjoFOm4oLrQp@L$MRE9qUxN zXl+x}K04N&=PZuv{f$F`!ec8R{F)J_&4dDmGnzrFBbV41umi8SY=`4&ny#pX^r!QY z9cbHJmJ5Jyd3KgfeV&>o5r8TdzBaki5Cm~T(Lx|_+x3*|>fJlz_-^HEO(H8>E7TR% zI=lyc?1`HL`(e3xx{6eN&NpxF8hb7QvlPCY`A1M<8d6a!Mc@X9X)EwlZw3tc(lX1$ ziU|ESE~Uc@UY%u_{sWVVw=;a)Ct+s-J0jO6vS|r03@iC|$w>Cn`+c(?Sk#m~T{O;B-a$3J{N)aH15I?Vnd+?5X%{b* zpK};Ga9t+*YjAWjP1iz`gDKq3Tl762&6;mzpllC04n=A-H(uraCOPc5%=E`tB^y*4>zfF~7flTV#k)eCcM%nrwQi>OvOO z)55H8^C#>{;|XeoXCFF=ZGv4NKFRPUej(RVWp_x=apWqU`eF)V)bV<_c`2vU7JhDo zINF7+Se^8aZ>^+&W}AcNsa?}r=E3STy5N@9ZGAr%We6bZnQ{gZw-W04=PlzuEV1CbCgf>);)~0r$F@}2l!k$=GCXSYh z&Or~+gm9wLwjg89G_Hc>=-v8)i4^qK0WCra4amlEdt`%@6;;;RjCp}cX=)Ch!br9C z?-_gc?x^PNUnX-W`EOHtT@74AJ^cp0_wkO)u=sa%ZM9pc~Rrg z%{y^>wuV}D*1#OSfmEU6&9L)B?~tZRd3HEz<$SWq^b7tNjmw`O*0$L9v=fFVO4SsY zR@>8@lUz>-)A#;einA;>gh5X)MxDQ#wK}}NxG&H+NZ8Fcpc}($z7$C&(a<<3%#PKk zWeIJ~)94<0ft zXdFiEDQc%p0YzTmSrsr`~HG zxWz8Bi)5%L@`My-Kr^P=q=ZW_tL(K2F8>zdEXOifB8z@+86$U3!ro-fw%A2kr}oR= z^Gfj8-#34HsF#DMiYavU4fS$L9)(a{Luj>OXqq`_4z%;|2Xn!q+WdFe5$m?5(BP0@ z@rYSm`i+{^1=~DPvFkbZ6SS1tu)i+cUK9Id!;uko9(;HbAl-U92&w;rs3b&XMXH2! z{ml%RH~;|l%Kryg=KIgh_kV(A{d{`k|BU}HV43g#1(yA{1K?LQn9IKi5dRlgc9|)a zfIpnHEvLLG&hI;v00!-kCaQn~Pc&M0Iukey`-8G0_3!Nv^1#sh?HKGkY)RQaqSibk-)Gy3$+IV63p5f;fR(iH`TpX9eZ2PdSyXKhMtjxbTko?WI#! zZK+8~NihzxSq^sx`6xeKQ{c*(QdZuVQQFOjuj-PV7h&oP@QPMNPd-`d;nQmtSbWZR zg?Xw%5QQjA`YT6WT%vV&6JiwGmgQ2Mzr9=ddE?ffeO7C6Rqv5%=WS9~An#MXJXso! zEyfE!V_g`wahs0M=8qZ`)u*3$yqcDyx8L#va_k0hKtiY#+qnqc7hFsxzs`N8FUob` zCtX*Fz68x_CkJGax?aC=p4L>?m$psS7zb%Xt$SA3dnV@K8JAJf(b0d=(xzF1Y z6{`%Dsz}}$>q)ewT5me7nP-X4PruC&`DHd#-$Jz9pQ5@ZCzW|WxQ)D3S zqLu`qs@lsX44cCyy<&kE)D{ga7KLGzR)$0kR-HWcmMpd2{Pm-CW}hVW87-xw!H)^p z7R^KtB!{i)-3H0~{G;G{$XP|?q0^EgP*C(RM z2CEmc(-^wX_D&zuQ_0Twc`cq?JoESEs{QXUkQ|;E22Znu;9qiZq&uV5O&3Cn9uwNEH3rU5k=Ut|OJelHU8 zf7PL2bgN>?liqNG0!IB-M> z?79eLs4y}@>>JU}ji8lTuQP-R)T|@R1gT9$7h(yG8d2VY&Jd{zL_$MhIgCKyfrGRM z!>#BixCOk*%aWq(KoB(rBH4iiZ$MCfMp1YLp53j&&UzHE{NSEMgNFKmj_lp=_7qHu#| z0|J6y_#2Ru_=X1+S4F}<-yyJ1h^*1O+Ua+l=(y;K`_*P(2zV5{Nm<}dmf~*+CfzOx2i^(aU!l7 zzXpgNxj$$RHl0qRzCj!u_X#*Id%gQMPBA;(_Q++Sx2#8~#qqD=zP9pK8SRt2Uq=}3 z-82f-n#!f0_aHaVj6T8^+pZo2 zyY4-|cKvH>4rK}H!sbR}?HHe+$kO(z=*te5Z?K~apX|j|>V)>>8auOHFhLXv`wLdiUf%} zZqx^w6c&O|hIw~^a7l+7AVSo-k71$Ba$X#!!@{AiN!zcQ6i}PliDFBIv?5g2=$;Xr@ zysXKXlpV#CCjbcKznK8(1$?!z%yNgHA0XOzfnb}=p3iK^T|fOex>P%_+^8#_QI_Ep z*vmbZsi8dZU#MZ-nFnGEPhc3_iNJn}s@Wqe(vq7rCJ`+tih-^gs%4acO=$W;}7 zOIMqU{av7^N)P7ko0P^5KB^G34+~0&Bp{1k`ru>4w5n@0US-S6Tg<)GYJXpDwPd0IA^1z(gk-%S!{6c?S^{#$# z&`j{2H43E@kdS;qNF4~bKgh9_^~eu+IB{?oQ>8n+EGb^lbPVJ9I>Wx&-GTP9`{oVZ zI;UjWrq%we;4S1RrgwL_6^ng^Th(lp(%D~?5Lgva5L%S{?G6z*cz(87wNjb_I|Nv* zbpH`ZWD5ypCvW@5rB-KgUtdk)97@%bx04?;*uYJR#N{AFNU1%Z+4yCC9sVkPftQC7 zU!6#&l?8`t2A-uIJ|#h@{X`_QI8vi1p!H`Y+>k|q=kvrRGca=T+#s>NRh{h~(e=i- zzvw>sksznngwd$RS%2H`XCo%D_}JhT`qeM;fmR4SR~d&xfLTKxh7PJnFUh2sZhQbf(X`+F5c&ek zg59ppuPQO0wbEt}glvNrvyyN+F56w8ql$9s>BprRAxlzteDl|*nMJm+UAxPgyVP-< zQ#C0{x8>x+xcv8dO`pSq<-fRY1icA^kgie;*r;0!%~LEF(ft^;CLWmusPknn90;o0 z&)hVAFm9D6g-1N^cio{l>v!~J`OsU3>XPUUXR$B&QrS^2DyA%RAzsS=k?ad#fBAXx z;{?iVNS>qfmtM7c`)#mHkxre;Iefa?D|)Ez+~Bc;u4%h!>8(R6z2TRWhIeJd>g&YU z&H>v{%(5xg1#h8C@!!EZAK8!|p7LD$G`lq7>szTrN)(Om;TD1(2>8@DvynqfcEAsf z2mMCKyO!|KHbKv>A z)bW=;P~XhE`-pHDcrpd;efL`i6fo-^1dl! z{vMU)=*|jwi{%;mkVW$2&SlEc^a4MCfGf2XcHp?1oN5d)tP}c=M*mC#4;xgT#q(h6 z1LKQTrp2uwvGMX_+D8G&+_MvePZ{F^GSlE(-Uf~DvJx~csVNktd_#LNMw%1}m$Vy_ z>CtjOAY7*J`ls!*1i(PKZ2Uu%&Z9a@zs&hH@P}cw_!Z^I+iwHcl}?=UXnOQ%;GRH! zZ)BlYi84^Z46Hi;3}Qe4v_qnn`Hox%f*S;{#utjEHzZLL{3dPSDNZJ%hSr9Roi}y8 zQe3OOg^8QR6=8)36sUBu0^1oq(Jf|lJQ?UY`k~|P(PVm=|2WwST^pD!w~EHCSgxDl?A6y+DUg;4q4uf6^&s!`C{M0rpobmTWT5S zrk{H4-HOPW4%|lL5xok|s=QAz({R25o+0DArq( zCr~THWNXGg3$DQ)*FGZ(V8kzaBeEh7w2AU7wJ%}p98c3^n5msu6;o32Srs5b;R%@9 z(NduR5n?e{L}58ecch|8E>RgMO6b- zBj57g%)2awWf2?xva$Pqb$%oCuD4N@}o=WLpTp2}!7 zA*8Pvc+Ahi((dL%;G8z&Vc8nS8GN7oDth%ik!Og$pSH{?V49Mf)gCWeI=3Rek1&_X zIwJ`uES;}GkOkn-BIb8gFiym*RW>PKA~q}hqZBagoY@tkni3SwZV|~cEyp*!pMdf2 zdO7;DoPb4z5$dx2sbTb@Jpm)bvFobNBiL^nBGOO66S!8!p72H*di|8%cf&B(ot!_* zuuHAho030*JP-##$^*rOLjV1NiSdfiJ|jyB;x}hg_^O1!gBcG^72+S@2vW)KsB8tB zDL|4x?w`K%82Z2b^f>|MM)e-gJ zdAjE43kBVn5nZvhu(K^-g79+J50pn))F5xtkRTfm;X6$0(yZ)w1Ch5!-Csizkuf*8 zP1cu->I95u>aX}IhjzV6z9BjK{HV#YRh!fDTK&0m5z6BFgSWC7D~|!+#;6s8%ObM9NQ_2;;_>2wM$$ z@B+VXOGxta2o}4D(xyyzS{0eW;WI1sBt4srJ3IQ{u-t2O(^vEF?_3c-h(QSRba$mT zyQVvn?FI=LY(*ri4(~g9|6c0dW;gS$cV6%8i{n#i3KiAJ4L?dW=u%S6_Vxu$`YO+% z(iNq?=j^_vabK}pn;;;G_R&agZ;I0`{Fb)CSRN1_g1nps)%^5+x}22?MC35vD!%Mg5Q~j zB9&*&`+=Nq_t8tE{WBdd`4`YG6r@CUzU9+eLFPCZVrfuNq=>`v_{m0+ID%Sp8n^v) z7bv=r3rW&IGJ#x&xd@G~TY_pjB_K7ozu{*Ypx%bSY-%zGBl3fU{~=$1%oISpjc(L0~hI^fgr@%L*R_MgD`X#m4+@p5O?B$%|83ksQ| zK{6|l`c)oH<3=%t>u<&}QtbdZ>{EWDNk=+*-qEy-!;07Jzyw|-!PbtkBi4v7Ujr@MKf zA;Jq&DTU`4KQ}CGT9Cqxit=ypE;9mbZDEk!LO|JY_S|#fcoj$Hc~k|bpX@D9dmxd0 zJsF8>TJ_J+W@oQcslkX4sEpN4BQd8qH7Z4{U$n}%{Mco=!q!Fu9Vz}4GvUUpz&zD6t%m@sIqr3 z?jc+nsIVENfd7G5rQzPGLnfd(6Xi~#RWj|3dH;B5Nq!4@4__yQMPw&A( z5^w#~{llnZ!g;Gx+Is1qiH{gurI*k%anp4u-b-q1_94fXdM0lz($?zjui11zy~evf zkHRP8X=0~yR)%chyTdb%)Ao1qiVHJ-T?qBg8P%df5jp+g59~?vnx~Md{gxz+DA&Tr z7V-{4S8jlbA6Dd?J9paJUry4d-;?Q;6w}R1UE@Od)|nBkwo6 zjcPyR+ZuXSsP!)=7+9xar^pYtgoPNT{d;-nLIf7DA1)Pzs^IA&_YvABXsitHg#(SC zTLj8X7DfiaSpvf2#3gaKueS(Uje_;`|GPh{P?G<}-mN}u#MpOkR-hP%D1(**X zGm{j79xoY*%oW++ExTJjhd}=X4v5?qcHZ&octgC>3W(~HAGU7}wg-xUW}+d)(g!rB z^LjL7t*5#mA$|pSFWxwu>w{mr2_Q;xP|Dgb$)>U%xhOLBM-b%Y_)R?Hn9>uPi2}~@ z!Los$0Zp#62Pl%yKM&WYbe|ud5+)}YbPqp5FexrCSy7$q3XAQDLy8YUb~BH^lhPJ< zkH6fvKMQ58yInUL5&8c#zFX+s$4DwTJWaS6t7)7oRVYg3NwJ<5RMbPT>wO=PjgM;A z4L&YkApfj@#YpgeEQV!&u5?Ow&_YC(=WjsT@`ZKMb_0AHdHhabb!#a9u}lR(kgsXp zT(k#NznWfp;9@0|wea=?&y-m%kS-D&10LQS6yZ@Jk$|quGus4c#m?7b67TB8%jK4@ z@F34zF9tqbzB&F8@X-tC&_b}L^%P_~&;TS${_8$q!?v#%q=r?)*qUFOo2wFJOIWW! zkq$k>%odxNCKWQ4dkurdonX02t&YX^bfWmHeVH3jS|4^`X|eq9`alGbnK9W_hIoB)hRii#RgCwv z=T=eT`6FBk|0fa@$4;H@o$Nh3dAq3*^MYsekyA(Ya*_b?_l1kVmrm2__;3N@P*w$h zKO8C!Kc0ZWH<)Dj`@OP{pkz>~C0CF^rqBd~kAb#6-5ORTcf?xNh115|o|s-UflF+w zT7H4k?itimsK)Cqb~v;f^r`#toby!kjvMmE;pK`LrDzsw_60sd2lP*O zlS3i*TO`+U%l+c>0H}Xx1$W>1F8*2fshwx@ogXy{6x~dJ58?&@A=YIB1k!E+m@puf2BCQIDw=~k<<5v&N_z`A$8#xOSEZAjuRGt5h$5M#;(A9 z9(!RjQ9a*c$T+iRIE^(Kf-zK;llL_HdQp5=%+naLkFCWVDe4}z7gcts27~MeAOq>^ zbZ>PpL)1=;=MhEgYlN!kZ}hKF-}|lcLp8W*<|0)s23HQ1+ZnOm%S9utLDgjhxaOh|GhH{6 zK);cE@|XST(uD5bc!MyScNaWuTYUU>5|#!D>Q#0L$n)IsiEK8e_Ty@qbVzERwKj|< zY6)=;Ja)e#3nJG#o02Y*L_4dLWvN_Kl5{+a!A3b#Ln&+S9|P?2WnW{=3pTuqR@@3J z)t7K{KDCjods=;ryghmlnlpfEGR@S%*rww&EEp_@ba@#=;e@k_ei_@#^aH!eDBDsV z8w83EW$0Te(3cefICz}`Dx8zR(oC&%4o*{i7z2IQ?Ou6PN(m#LF-B;Y#qi*5=NqeL zMS-V9f1>axO=h9Q@d~-C#G%7@_Ba!h=w#TP{^1l~3g>}WJneTB19J3lSBL9$Dv0=3 zZ~KsBcL_p)@#WtIq-P`%$%Osl4b(rC+VduWWr04|^zt=Xf^d45V*N3*I-d)6)x;SU z)F*FNoxR4080h95)e(n8YF{}dZ&N#EPDG5lA?}x_24z&gl@QnOe(OmxIsPM=%4H$l zeYjB&D(o^C=lvQS^zhMcSJmhJDLvKN#K~DPGtFuI+Xjc2X_c!q0-QKw>e4zM$R5J> z$XUSLs9Hm0mJiwFGj)NC3`NH9M}&!OZZ(SNjs%x3T+t1^(W9{AE+AXC7|tnPROv}x zE4KT6zcH!>@1-EZXN;|YFqs4HmT5~QTRLN$svguq5O}jUtLG$UvWkRP6rTl*24vo=p*in+@N`LM4C7=xx5(*syq1Pz;Hkn@{TvpLt6%UN3RJ3#r&MD~*=_O9@RnY%?|u|vvA2A=k%3t8l395jqV26r zrY`c{J%#6GUT#0OlOZiEpVxj!B-9)*5%wD9efUaVFlWjRZ?`t3EIA|XEFQ7rJyb1w zcC;Z{F+{eco)kp3QiT*4O?6p2+VfWNT+et9LFZTPcpyz+y4sup)r09rfQP#h26jGe zK!4uVY>=LvIk$AbO_7fIOht8@%cCqSmDUk|RxiW?ORa@Wrn3F##OCD1OUyk(B{~4q zv<*BZ_vDeo5F)vk$R3c`ZN4XN7X9z3v~|_I_?&fF_?KebrXF-r35K_Ga>4d%HXGQ5 zW*c8Y`0E8YvZbm)9HEl565%&L!6)E_L}P)`eEds=*9D;ZY(`@VRcpUjs8W%4iS;C9 zA_JEXz;{s;@!!RfK)QTYM*^e9C$QPog#h@gJa*6y`d`X)eEw)%zJndO7yL#TGt|X- zAef-LNu*H0+kP~|Q#9G*-EnHW|6WQxGqto+HtQ;G$eB9;_PAF}YdNw$PTf0UJ0k*E zpd2S)h~#s3NCdzfZSUl;BKqOD1_dAq!dD!EQi~po;%?Lt%-@yINfua9#ye5w$R297eC;cZII>3ixj+l&JM5fL6&7D=5ajT&AT zWX!QtVQH5D2;|9h&z&7tHYa1st0%Qi?NS$V3Tg$x={YMM{X~T* z`p>VI;~=3PWj1${zsm}s*my5AE8=RU zo8Io~XYx<)3R6?Eky8`08#dM;I9a;vgQ5BL+u^A6ALkP zM!yi!Ew4lWF(;c#;hHJ2#6?r2fv#yITck7+0ahmA`0+PZhqBszj}!|+41wbHkCu5n z3Z63NIf0km1=`1{oTU)hOh7uLEGr(|pOGEF9Dx-MLSZuApU3P%Y$WVlwa%snsf8~##);0Wl4LN7SKlmAtFeRoEzS0pC;XZUsWk)2>Pq5eqpm6p0r2?w!30z zd;ma|bw-53rn%U&NcE$t!&5DJ>cH9F*>e?Z&Pa53GdEPehQqb~b_C)00!v2i_VJij z&c75Ledjw$9^hcPxXAWt(SK9ptrA@GqXSDYLZ(Xng}g%)^Bo~_dKzTaAbHO#x(QOI z2vL-T3=p(X*;RkB1CA$@lY$b&%41$I5Eje`?+0VEXGvDygFe=6U&YybUja`~D_y=^ zEUE1a^;=^oLm-htUeW0Lg)FN%$HEf-s;+#|I;&|QdB8N(zN0hzHY`g2vge{B&dYA+GHD# z?-DjP5GHPK$W{2O29{Qk3KW?kWkeuj@v2)x?!h5N=exPY8zV5^S)Ps)su4(IIa8LvG_-Mo8{I@Tr2({ep-cQ{@Egof=- zjvTQ^7782;7#z}y4TotMCRzkSt&m}rEFedPYwLzX3cvmKe%O1Vqw5D*9uo4%GZUD- zPyY3rz(JA!Yp%W1dN*p>x6(~f9oKP5yZdo>dB*#TO9ki)*NHy>>C%gjwEksy?faA- z_tSW0`Dhl@IDp{6B*LqGM5K=_A4E76NuN~~N#d{a+=g#>A^;v6zPDfoR`?ssyhFU? zLl1nQNhE&G%}MsgCb`WU(3lM(=}8C<_-JP+JhBWevbbKp$DzH{wHA$wqv=dla$eEQ znw5{YJ#8L#At1c>D|}zFW`&%&SS^;~O}{tM{@!J>UBS~1xGrhE z7f<<%UNEIaTM$z!9c72Vr$AZliZ*e)AVNRw6daVUKc#NoEe+M@YP+G2S-i%j+c5O& zD^!RrnmpF3^jk&?dq4w+*|EjC$JT?G>%GIwIuP%i1OZhIa{eF9lJ9HFG)p`c z(->e(;!~Q0@h8NDrxJfWjr^x$?{B$S639=1DSUz>EAfv;W=k9x2zGWTnbAkV`7bF0 z2lp-|crp$xqsR6UX6Vj)g>|$1aF5Y2VINp3ol4@>lwAwnwLa8dEDtw_xH;aqcpGA; z?-|u0)$5~&8{LRpKc&Pt#59&_$~9h?ZF3M`nfS9;h6&R}y2Autb3c;0~-Z>T6EfCl4iN51Cn-X>Ol+#8-^xlx@M zuC`VKTVV=}*ckE|CWy^1Aolld8ajrn! zqp#;KnfY-)hLsT{7GKiDi|UEYleO9RTleDyp21icv~<6xJc(XFE+5&cJ7Bw16v`D` z5ymd9(pS?&t3M+~cpA>{7ZAb9knc?$D>?r)ACNq;!_wKiLTKHoxgu)p)-2#j=N$5%G!6!(_|fx^9wi~< zJtld}JdWh?flEv@1Bo^Gcjsq^?jT?InbUwuW=(LY+qFvc{Si}Pe(Ape;d1pvjm4X;yS^w?-#v4twyB6^noa@9 zT|y^j4EnWG)#Nx<3s3JzMCqCy0m8p1iZc)-mEQ>ihvsOrnR~5Ko<# z^VY}f+EFYTi!7nt6NaATlSfZ8Hpc1xFCFJhF#14FE5*I_00l|`J30{{dJ3xE2g5no z*(nerpEDev;?2FR6DKXvU=aZ-rMglp+kP`-wEls1_-y#8nqj-DI{^KeL@ujOxu8*I ztd+~vV^a&3!-a3+fk73hPljNhA4JO;;6pY%A+uK`&(w47SOrgs) z<6~QplBuA^{?%R<4kWBc!LLBUY8)138w5Yb&bzgzVjD&OnNRp8du0Jm*go-&uiWcG zWtiZL)8)0Ar#gDfQ*?0?0nfK!xk|aQT)P|t#a1;(6YVK;`_GNd90x8Db}A#RUYQ(f z-J%e;AEVrjezcQ6_kqF6yAb?R_rLR3!QSevJ3q*0OxC#I){>vc-l2ecdLKQ)hK<=xPdMva`PaAcdDm&M4Fc7K=iW(ZAX^c$xiP*at{$M2)M)4 zlgFK|Pw3E^Ycb_Oyx{ffhmP)$vNcM&nK$40F)FmujFblWad zYgEYCRLy~^xL8unBgY>deO&-~@NBaCb;_&tKKcrskO}+F9{pAjJlHd{s(Js6%+^ag#9kC zz~Yu5!4@Yk1b189Eg`|(NpRQ2-64VC9+IHJ-Q6X)Ebi_L%kt%a&c%0eZqMaZP1ST? zOx1Mv^LvKj`dK!S+ET*)CA7*41wQiS-q8sw-?+m)q`14XkXeS*sn9*dty?|+wy}o9 zltW#pjNYtF4w@5y4AE*8 zTx(?5o&{x6PS+`#QxmNXNqvF|cqS1ov5U2RGAk|l85`umCoH3SV`#N3iL&n z5l8Pnny;nF>zsTpTNC>&DNeq?#;>?goax(k-eu0Mu>On#+HjK%*S@VTDT5c3jALq~ z!57{d$r9!W9nH2rZv%)it2$~Oal9ZFr9|S{Rmq=cn!+!8Cc)C=kMi2uulkJ{WS@Nd z^(pzJ$(e%8j$hIG!MQxiVZpIC zw#sNoPX1r)fN`cK{-mn!q0h2;g5f$qTcX!x`f$JSu|M{C&+~uYu<3kijY$>!5Lim{ zZkuXTV8!Y4Ve2UnUqfzG=znTb}P8|qA6 z_-t&ZF@VmIDi+T=ZQkIPh5Zf{`+0rmXZg z=Dc6|me=+XJtI9|n#L_6n*#27v|_gK@%3hMNN`dGO`_T0;N6>}>21BX-|-Yk#aGgj&0N zCADf!R4KY#BM{VSL1#l7_Jx0PzzNx+w)0 zE`Yu7sVURaHKf%z`oe2NvCp^s!^zBa{qyS1V!uzos$5EZe*!Yx&aY0$>Nd4{z=6#+`!H+BOHS@PF;J_wqcLsm=>pEGm0N>i#|w~4 z-`4EqjzI3YTDj}#ZCQoj z?UHBiGUpWfA2%|68&C}%2OSJz8y^zYWXj&n)B$*}_%UA$qc0RaoUL4uS;aSBKLxpz zy>HOY;h5AkK$FCvKh>BfQ~HsUEJaWJ9sa;y+u>wCyAe(Gr?+%LjC0ANnd7rPc)tEG zmHdD9tJaU*jMdC$onsUI&!IyvOP|}y8gr?+TK}^y>#LpkEXYfKm`}T&=>!j`|+d5Q@42`g~_NP`{ErNRQdicJ1wc7>YktGa(BSqOfNs{dB zoiBS|Pq0X9=sM`L*tt4hGE&~9M~4FXh%)z;(51R!Z-b9}n)`4&mQe~BYo+48;J$Yp zUDTYV^aL&t!gdDB+Sp7U_8{3po8>v8%SkZ-!faET325X((V}MeUmI-o?z(2;4bphh zoazM1OWo3^&dAa)G+YrhqE!;lWgN3d#MIsGFC9N`!<*3<0rf;(MzGH8JFkx3 zb9Ag#-{F?mx%4FGTz`uN77n?uQuqdW{?}?4Zos&l9`r$vo>{pmoGT#%3li>KTu(x3 z9^QRGvO3|z^BhFkz86!hD;86(+fL)1?YSr9abPGn7q4P)pn1cieRL+X7LRW_E!}Hm{&P!V&fo!Gh@t?h%O(awfg<_87ZtJB%w* zQ*_GqIQq2*u7L96pIo#qgbe5!#O7SC;Ov{5UKzURo5#N*5Ls{|_tdNG#yppkn7rQ; zwYbq7{hD_e!`||zw%2tiA*ZfFy$izTHd{o%E@af`Xi2-MsO7z-2)luxkQ#Qoq}K(I zYhBmGT3c>n_IN$A|40+9S;vON;9)&Qty8K~p5VZdul#lyNWzMDED6wa8fj6fHg?dP zmD0|(?I}$OzTz|M!v@{Pm(inIflzMdw%JsQishNtr25|m;|gjL5GXz{)LrLb zr353CU&6|!Zr}ReY0DBBTYviMLU^rrCoOi8b~id2kcCr{TyS-hBJ;2jNI;7c*8`+B z(@IQ2;GG53A^mU*mbECJ=qVdQR+FCFCf#e*2OP~zhBEXWq73p`Yf`8kQP{Lu;;5(J zf_GT-4`gs9K7-4(rj&1Rh~g)dzEU&>_j4SV>*9>Jk6tTHd@^*ZrAfI^@rUkD1~QhM zh2L#y!fl=^u-a@!Hy$dA@Pc0mtZr(7{&wZ^|3k$7FRaGR3jkzH|9@e%|CuzQ0RA6X z&CvCy_5W7?KR7#~0RAtm_P-MV0Gp#XO8>Kw`hQ`ylXjIv%i(YNHVbRp-zG=cwUhgq zTXBHH$-jRvDYnm;cfHCV2h>&|u^6OU;piEwpBYTk9`|?VP$xB$o5BFW~WM-ZH!;4tGN3X;mhqD@coV4;?8~6^$ zrM35u<8$Lk_+jrVOJ}h*ZNL%?k{2NVvR2?owh+hRI2)NpKu8YeA`CLa#U*U&A|wZO zp`RfN4$*+jXdq(>pl%Vp!oz`QszhsRv;6Z?#aC$Wo4Xe{O#YAsqF2?|u9Oh?a?NZ6 zo48XjfCq$EzZ||e%pj3MM({I6YGcY$v=arjRA#X!>(>zB$!C_f`-j0Q?{tq&ZV>BuPE_DYx?4D|Raft(Xt zdx4N1KAIWF!Vuk`)u8A1%|`XKOT~T)eejT5IOl$s%WGIQ7sP3%DtQ`l(!RyrmWPIl zhT@H%pF^i4kG$apdUR5jc0N`snS_q@BQ_$zkh8;uqMNhv_m3L)S?=5N_~PWd-k1bg zb$%9KD>o#3SBtZ1za|WTSF+uoiri0+So!Z8XBM6e?EJjG{unIcivZXrj1Z)8AKpwk z8N4KLHwh$u#>8qU1MP7;_UZUhZ$}NSjvr~^J%phOUd-$ZS z2ND!)w975GH?ZC?x-Pe8^7^|%N>mnj3(qG>53k&FX-f4TH%!K7I3+S!&^_yk;IF5C zwAP=S2FinQfg7?x+{ga@gPPVZOwTMC@zg=DuS`~4j8~Om;1bw#EHky(=b8F1s`lU` z#3d`W;hR!%LQArp9BH6ucRqE`4+XUrG1LMADZ%v>QF@^v4Wk(%pHqQf8AS8oC&;o= z?V*svF#p(f3J0|GZLm!7enA$mozO3$XQagp*^Y6n)H;JT{1*Ym7fhYnCG=^9YrY({ zS@Rl=r@LA2z|0?s`-DY4`eM4>t~jXD#w;b`!xUUrSU54@3taSC>u?08p?xe0^8Z3f^=dp`Bp zCDwS;>qMW@h^2r8TDLnYpc5(m6Q~W0e-28gisLBZhL@tlw`t9^8|7Bfc@JM%;xV4} zTW%?XedE?~n()+2zM|J(SD{2dvsrUT67#)UrjmB20pwxYarY#^va7+QdrB=B*lvAk z1)lL{Kk_E6cl=~qA`h=b31%k_Sk(xu4={9%)9ys$TBp9ue1aj|WAc zsOfp363?%sFE4)tVg)Wg-JOmj1N1Z9NTJII5F53_GLE5_;nIL!K?URk`%{+&6ZjbI zB-JF2!hP&yJEzXWIbLewD`eS>o;I{=n{NptIj3D}nFz#A{3VY>AXAd@`?!=m z&4)}HWBk^kcCgW`B)RvSC>h=sRFozv&+nHYH`LeL{lCx?9!TIG*L7uKOm%yoo?6WC zXx4~oY_X!l2;?C)A~l+$srb}df4L8Hr?7!ou~j{luqZBlBA5M-*6Ja0ys;uj8PU-$ zLq$ual_pZSXC=aS)QBHqnP^FnQv)K<_&b^-m(uZt3;tQUDG%N0(x1MB)U9z-J`eFkSa>)TN0<~`DT%UX7%2h@eSUF}zA^72BN}V>9#UULR>|^d zTa4t{?%qJz1ff2rQ~w*r_(r;~id>{aM5G$JNU&Sf4M+4@x5X;c8mG_MMfsfez1@5U z1w!k@U2b~0-wF;N%Eju9;~OwwmwZI0l17UJhlH-u_ZQO9UYn|`j=x5L0fZFKJSc#} z6>iGfdW&=x>wW355pU-8Lf+F!MZ+Q)y{)i33SPG?F@&7qD#O*d)yRA(f}Xt-&%BLq zIW|LLxLs3Wm-q*@@DrPmq_Xh9y1kSbuFRC3o*O8_nKIQe2G`Ohs)4~ww>R#OMqt#f z*OE9wf(-aC0Yg(i<-#w@h$>OP7Dr5Ov_m=5&G8SCmN`7NQb2hN*;C$TAQ3sxi&T)R zkPEVIq2x>f0R_p1RwrLF5=QIs2P2Bg%m{W^+7*kjs0hL)7b_3Cm?Rg3Mi+kU0VD?n ziV!^3U`VGFhCcT82bto86TQ~j8Wwutc$&>bT%ar&DGoy38PKiMCCrBd0#J3~O3!rt z8ZsJ776oFNVs;C>OUh|#e>=QlV-bRx*>V zv;beCXIIL*{I$}+xGpCNwCH`%euLR2nHabmRGbr8jh`S1w3+wxBukdbBrqQx;N1^q zCB#b3wfUPwdj(i{Wm5bB?ua96h`*Hnw5LR4PUSHc0c2K+eTPx^MWdkxSMr}=P8AUrtc!o5ORq+B zH{Q6(-jGQ5ju6)qr-8ZF-3t1Z=GiobeI z84t_bd(@v@Zc23y9+w0>igbcsXah0*I~JAi?{xhdMuah|b2F(MZtw{YsH^8;%l`~c zs6~1zyBlai>KJS~-b%L^VO|=GXdkd(f>B3DM(-#wrHOdOhEjw9JyEl)Xr_^--1OA4 za&&o#wSnre5!60gLbeOTumnBW8*}GDT$2GPwLI4_eZu?nAE6g(h#1kCkiXZ2s%fZ< zcz=^0F&ojS2I@#`>pfoeM^k#gK@h3s_F!2;df%j}HuLj_m837>x5*pt_<&GM4V*pm znn=8H8z{0yF%PLNSx6d0I9|S=4pxyBs9fB_N^eqwNDU%i-Q_*s(m&6hn~kiG-hMnh zXzUD^6bq3=9Jr(Y2^(FpGvhMyP9o~DwM*GLpizRT=xE+LVF8KBwRcJI8;XPoQ z{z<#h5d{^PZfdCadHbQMm+JIhCx4!!2;Ea0@n(2hrH@SVa<-(MH?U8 zky3*6^z<8}HokZK@cl82>iVq58#4ga3!mBf^}{5sm{O$ZAfZ_kRvL*0GR*cH&l?Xc z{8BqVJ~d2xK_p=@#4_WLAG#c4)DS`C_^jx8ZGBWiHw+Okg7Fh)^@vYkd2XK!#i^Ho z+J8cA%$cQ5>g{=LCINCzNL<34G%px&&hs=@$vaB-(_#;AJ}2N29Zh6@6LevomZm%O zC3Lmsm;nea8s_+UM7QGAeZK|5f0o?C2;nmKo2u`)JK2wW_vV7DcH%X#N4ga) zztcsQg!n=LZxjbmxX^qfkT2}IdfM-&EGBi)3VdvK;f4==(zI>-NJF@yC z!053F`&~oJY5)0Zo5s=l^>k3r@4SyIv-d7p#zq0Jy%QRwM%czWYVT(cHd=A%fi4ra zXA7cFJt+|Z$&HtP?`AdTjYQi%8>7a70oz%)zB?%N&3$x|6N$jyht0fX5e$RT2246< zn|#8s@9|88)*Fxdt=SQ)GA=sLO9`Xi?K|B1HEw&x^nCSGmJlLbONEp??;eguaG?r! zO!p~%&j@h%->e#eAjcbIvGW{bKcCNsCM|3*{>8Liq|ZiBypDyS$-Co!<-L#;KExc6 zm*C0~rzZeSy&6Wjecx?6)3Hx7Z(kc}_mY@6r7fiTviXu(((1+dq249#@0o`mD|UsS zL(BYfBLyNefa)vRN|VEVB&?ipe>(C2W@2Ro2U?=LG)f`=8d_cOkYEyNevg#o&^2Vd z!1)?beaxaW#r1?)HhHJ>SrQ3XV|JW>qysR%+aR6h9f^4mYvD0YRcMISckA(AfDWXB z`Yg!n`3(Q+@`~U%dW6hxiAP$9w;B%35ZLU2z{Z3sUczsfkmy7sS*{Ffzlt1tR^OZc zW*(!+%LwRGO$_KhskqWCN{|w>=U(=7ZqRF5V=drjcSCi>+vDsjB_6SeLNy!wNj~@? zObLeYf;r7-RF>XwB6m?yH9tkvEwLMDi>?2-mjtx5!^0{{-i7&C%p;=f{lVfxRmH}h zhDzcyK_}LEP@3bLG(4{WiBT#^b3Dpp6D-B-Jcf8#07)u%dt_H~XzZAqSwaOERmv#- z*G29>M33nLspIx$lA^4w7ec--`(*A}ez@!;U7fNAO*KTN+R-5(tq=TR7ufGqY)&K# z<^xKth8w0Ib^n>Adebj9P@-|^sQ}({ao}r7f_xjHer3uAC zk0D)`eF=ZDUwA{-T=*L~7U#s|zdQn-k$#WhlNAe79z{~#;>FZ9Qi9zq@~>TL=rm#8 zMch#n`m4`RNjN_*wuu47I^%+0o`_hYB37j=X`{+KqHBTV+N-yk7=_#zil}!EB<7}N$U*Z-d6P}e`?9c>SNZNU}?&WnsOC+7(MP2 zpyNgAlD8VYF^Cr)>u`a05lBlu5+;}dU7RVn9?RfxCMh8jD%)`h1~B`!3GoscF$ z%KOp2(v*;*YdX6^5ud5KVr2|}#=B!u{Ve1OJ7KnnWxJ_rBlk6COZv+jl-_s>g@46g zFqx>H?Ho+f4IdOFwuQB~@9um5(@P2|bAOnzd5`~nx0!4EQFQF0+V8x%!RD^1LuIA$ zo*dL_7uoLLc-J7ccuC6s;vNa#dc*omol6N8j&wACCg`aZeit$*A*TNs#}joibVQL> zwu{Rq&Xmd#IRFOCDe0;i{Y$#rzUM-;Pt%x2I4eGzdXsgJQhOB7k z{?-qed#Cb77;`Qp6q}sL^x?Da(4Y^fiIbl_i~GXMjNn6=3;CNcb}adAnYO8Ep(G(N zp=^TbVxN#Rikl}{{?2NBzV)X1@*s>P^3Zgm5-dG5%y&A5KdXbOaCouz6~}-PmA{%K zGJ5FI(}e8;Lc52@0sz0{gix>m{#JB&q}o7}UzVpGMLPOU@Iu&B)Cp1D6?+5P`db3r zb9$Liu6cVoKOUJqOXw)%b@v+sLXTU;U=|m4UR}XcmHa-dS6LcfM5rxDvcpMTe=6~Pg3H7$3gMyP3 zxn}*OmdUAu!_!l_VxRWc6pvWrm=iCa7`%AB4WEd_&}z`p;|_590x%RX?OacxE$~U2 z;tD7HnTf>GL%+m%tf19ht?{=cy2VBf$G?QzV?a*-3K)3cdhtqQmiztL0GCpuW4~g- z>~*W;eyR!I;r6{tLC5jit6_H9^jpi^Naulxc~ImG0^1(>w826!#34%ibVKL zc&9`q8B-y9BvJ=swqAbn!N%qJ8} zQWRSj*+Bp)Zhad7XW}9$`+Zp}mPmjJmTrx2lr)EUoZ>%8h<_Zytci4;^uQnlRkr-c zi&#Yyq31i4$Bkp|h;rdQfzMMXixU`n{kE9*@(vlM=fxQ}B-^r_7bh@%KF(PFVby07 zCHjjiYI$$V7SAUvSfzSw`ERB4$IqQ2XUEl5_2Jmo^zFZuD!(M~;|K)iNbV$2jl$%H zKK#Df`<0Dem^=Bg&KE-#KLOi&LQb_Al{LvAilS%l1V6+zFbxCe2AA2`P+H;uk6eI< zokj&Jso$h<=KR1r*hYWaqQb1d3W?rUkaC?ElAQ-t|+s zvHo4_1bbl!b_)`RvEP3*0)_rchJA6+X`tq``rLjy{^P;rfrAP;l^1=Z4Bg#fH==8r ze8`)J<7z4hq)0Al94)uuOu;LQ6Dqo+)^F4q-}=VMLoq9mqg3|L+K9NEx1#_4#w%w5 zXV=8$JkX%G8SR}i07?Qq#o7m78{`f;nNvF& ztnhcN$QKMp`h)rIcv1$5j0nZ=Ziu+TQ=*^XVt>XlH@kWy?J(b*le3d%4i+@n<1#pk zlGd8UO$dl#Hd0g|(ga4Q%`(+ntg>r$jTuk%t{_b6bW~DPql8(64FocOK6X+t&GHmUJQ-5f()Lv*&18!( zY7+3?x%5rh7frqU!noeB5ZZ`5CUepLBMOupughLPt||=FI~g_GnASEy<=5T)yIt;H zU%ulm&cyR#5neW>CyB9Szcz&gAv?c%-Y+VzNdLO@Ig4 zv*8|_Otdq}B|A|k(^!CA?eBX2^r@AX1T4HxDe_|A$t&l#Up~;q^(tD-Lur63KW4o+ z-8zDBl&p2|r+G6%lUmGF(3zRvqF$vMygd_pD{lV+v{XO|!nYvEbC9f> z(|3mNQ9&y2HcrboPA2({6fca(tkFc3Fcrw2wq^1LjXjQyBPil}SyYD$Jswkp@y^Nl z#EEW3h?c#+>3&h#lH|M-QGWZcseIz`P}YzxGTqtU-}p?!YXc* z@v_#{H@&ZyL0`lOYx1=klO8olsV?8Vyq3=H4C7)r)iI$>gC*d}5u^JJ8wDNjoHaui zA~H@1f|FEGzXn=!V3ikr`pN45R}t$In;|`4)`z*fwMOW>_inQeu;Cw;3zS6!F1`#M z7#c^`w>*#cb$@PSDmrpEg5oLM0fZAw_I@|GAYP%UAlaVMTO8J(RZ_4R#P+l($Y;qq zyP6UpdQOc}fCG@8+^1ramlU&U_4Y-8^a+B4093B384TgY7Fo_n7AJOlc?L_JOfOg}xFH+V`eDRbfeY zexJFnHwi8Uf|-c#K-Md}MQloPPdfoy(A8u&7tcK`ZcZJ{{PIB7l0 z*>%ggNa3qWb3o$#{_Q?y3XEOXf86q#w%Ox=cE0DsSQV8M4ssdMGlPtp*@mwq(J-=X7;_eG@v&2Tol2BQbi0P`V z_oYe4J5-A{Ru01~2>!O#xK@aU+7kv)qCS9S?oZHi2j`uDqY%z27Hlewah>?=^;MQw zgS85bZOv*d3PA_N)olf8`Y1M-oJyw$tdHTozhI<4vKkMulInX#g%W3wc*zthNiR0@ zRwV=4z~!rZSv)e4ea5F9rgIJi*y7b^%1?s_aLg^ttI;yJ?FsunYBS0LqG?pp#a(!B z*{k}YK5HY&(VKg@3|UpqBv0LTL&^S3_*3c&f!*iMt?IsfO)yYHI8FDRSOg~Mg3g-bg zkO^g8LVyJ)Vw8nj&8x*Sn=($04cU#-hJ_IISC`MI8XeXx)T(#wf!y);w;7=!klPUo zHI)$4j|yQ7%x?Gmq2>ps9daPqPF-WEn}(AuC!GokasThn+ch(~*jwQyKhRITV{li+ zKY(oUkMMr#mv1iYGLTF@d_R@CYAIeHhVwdcpa|LJy-0Z787ZU$9v%to3kcN@VxFuW zjS~Ccy$t%Sa5g+hFT*A-rjKn7==_?X6G@g)uIhA>kjSKJLiE=44jt%5+?fvnGZ|;- z?e7|0?xw%8diG~aL`^{smg=*iqqg7wVHKmek>WQ%c^!Bg{6%QHrCIMWGc^nvd4@R&}CW%Czi+aT?&!sIm=MnyI(+QON$lR>f zq`O!~_jtO0wd6@JG#Rg;(VuojEur{5bKJ;+8m4_=PNbHT3J#yW)85>}DVRSz{teJV z@bv6ar5%>3<6AndEr*hW4W`)g)=V?NJq#?^R@}@qlQciMMesMdZB#Xx94oo-DMAfa z>0FdeZ|b5}WQdfPbSEy@hdf zC9=s!5A-uWl(9@1!b9RqIcIhhVs9p!A9mLhMPsBPg6CRer&>M6>QiNm05GH$F*|Yn zQt_o|W%}K8v4K|>P``E(Vx5r)){Td%Xya1<6s~`{m*fVN(#SBnjxGc ztTt&>fHPl}dtTs#hf%>%YsX|Fi}x=+GDmP2Kgi`PT3x&SoGjvC@@MH4GQn&^_|Ba8 zQ09uq+|@d#?^|tOSsTVN1z5AUq9MK5A#zu*!#nqM&C@6MWa-RcmLZ@0$*?=*P0^p) zohdBTt`%MsM-q&MAoUWU- z-FvNjxL$hmBt#mm`aOt2CqG4_eUg?Jx`)A&)gc^11v(Yd@2K$XV@K--E#n>VvS92C zX<(g=UiLiQcH8$>-Tgd8_bsu&W4jYzZ$hZIZRsRIW`wYWTs~TW*~pct7KvqZy!p2K zz(fu2}BXa$R-t+-K}0d!!(wTZ;z zK#DeLfc94!jT_ai5FL!v?Y9G8u`Cq3AIot2YIyfOIBtQ)v?$)w0Z;c z2T>t)u|(r5s&yx3;L)b$ifFyj+IP3E09TA;Ybk|ob|Hy z7)$JdA$DO<;qZ9U#^1{{AnU^EC5^ID15Tf8!UC1L-U4pet-Q*Eetvx%lMBs#(YuH5 z8}4nQ=JY(xaVM^^gRKHB-VZID?vjhLqEbwj zjZ@<^%;k|2)*y4~WdUke5s4|lFBfsXs4E9psvR#@%TJ?nkDPbOmH~C@0QQ=9!Um$9 zmu4xBYoac>TmIar;H$tG#5LnJ#kbaLCHAqpw z?zii;_^U{5@n)_xY`!81`9soc5(mis?m#{DtE-~(3!3m`r=%{=@}3xE=C9B^j^?&l z=K{Z=;Z659W4+D&r8{_f|4Qnvo^J!`<^TzmDlM*B=^@T2UGI4oZg30iv)`}lnm{b} zJK}*Av$95=*fJK)I7Ld8AfX@t8KJVxBhg?r@4wjQ^D_c7_99mfk<*N7KZ@!T7t^lP zeK|W-F5IvKkR@G>k^psEsgvv4an~@y{#1W>Cdbl$?$0X$NTI1-nwRUdYXkSgmaBP! zB!}-35Qdzc&gAY57e_E*fW8;|-Ey;`$TB?|x!7i@R^!ll5NdQR`>;1g&L<7<$AwQU zdmkvB;y(nis#B#7Hrg5!py;mbE2t>{_XY?sul_EH7myx+)WvV>l6YwZjTiiE#6%5- z@!1Sx{pD4RMGylz@m~unDFKQB5pa2q+mGTXo_O*JfuNDa$=R%v75=I;fIpBCilXu{ zYZ7Ue(&06v3RzLdMzkgIc1)p?aoMnyWbY@&id?3axVG<+lts5N9K~Ti0fH9*!Ay-) z38Nzsh2${6?k3#0xH}{_uWzv%RLK?@%@ht5MA|R zG>e(GT*Wf1FW|B2xE}hnC2cC~DAGHjCt>X?Nn#O6>w(rosGWw*Z8uEaw-CSfn|bOQ zy_>?B?k(o3^-rQn-K~Ts4O3S|`TU-=D+~@23RqU@T18P^fJ1V}-_h}Wx6cGDO6DICVd9qyTrC9gJRy{klp2_Og;YS$19^0n%=t|HKuG9eh#qd=$klv`0DZ zcLQuwl@&+njm_=)tk!)G8dz{%x4a*%7zps*WZ6Ka<+a-Dyjv@(tM$$vz>K{ydD-_b zcgMnCh97rrqu;@;dewO`s&roJ7AN13J|n-r z5&M!$_7-|GR(6~_D|Og3Nv(({viAqpfh20tdowy3(GmqdqNQB8QDd(6DWkFKc#tods<7~d@m}YFyF2L&eZ%&k}xr; zRp2FpLI^57yrQSC3s|0O2)i2v&) zMSLm`z;*H<=pXUcWEJHy3DigP5_@tjqv^Kb4!EAlW|1;^*?0vPemkL3)+apnGfve^ z>x6O~oWGxaCts(tmpmN+E@LW=e_iZ!>DS=KzhR z0PCmxhEpHtui`JvyMO>}g`OfY-G#V!oV~|!0f+p&DVEkEiOONTbj5z5nqv5u%iz! zoROFw#ju@vC1-Stzg%E8w4ueUJl-x$Ch>kx*8s5Jlm*()v}Hi_-4=~|>YT~IfBBy%^(8;7r@_c-C(nzU9trlg zq`?Eq;-=LL6NES4P;3Bq7rk%nP0ConnA4>!rYXWC76;A1h2tBHl}QfWxPWUZeA4u# ze70J(9|RAwa5gT^Jb?cdmdWX}k+R0w?8EnZ1@7zEA>t5W!P~fx$Y>1@-rmv2SOm0O zYtA@WNoD&7S+r@>$^fONssksq*Dt865g1Hf^tFBmcyt+Mv}sn3l%@%ar#m4j#VSfL z<{2SvDtyVOIqIk;IEX>>TEc+rwURxl7AGPuPDcg*cev+5jDVeuw2J4mG3^QDYW%?y z_Nse`@%;JemIhK*Odo!UrkjH?&vgpS!P)nzdMU%WVxyR;YMHSagLM#O(5CSx6ciJn zqNL+QW}BB0Lc70l)SxAW$r1uT?lx9yd}sIaVm_RJRb1Q_8TbpOFLv(jTXg0>`&)n8 zye?^UIbM6{L@3|0(#@Oth2G+nPmCS6e!MSv5B=sbLFOk90+I2la+tmH*DA$u$QtXY z)?t!gTfLoei(9TrFqr8)Xq~A2I=62lJQBdqWbBF8DJ}UuN2iJXINr*xQM~2$B6_Kf zy7Lq;+!rK?;o0FhwuVZS`;e?yK-aXjGsLidaMwKG#m)Cmf!Aeqt#`#h+%6bMM1Nrp z?0VO!Q8e?u>R}1$l}*DlJ4ti3#`ns9VEncE$4ge+I=a;#BavTi%OV3z1M^+!;AHwn z(qKXh3eEh+|5(s)y#&>w&6frAE`5KUr+8@y6BT#zC!v~hPWRr2ynNiyB-IZ7g2v^< zyyyy(w`%o8-BhZe^Z+87%1f~w(#o*v@IM?XLEjQ71J3>N7W5p93E(1*!F1B&NkP zU(m<5)}ePuN}*u6Hod1Yp+mvVZEAs6J%sxxsC+)MbiPx=b{vJD#;6e$ns~RTiTg)&~+Nvq+|s9Pg@GpUhlI3OA^_syIp`U`3$b zLT_Gj_4+Rx=N-~QFql8|k;~Y7wA85pZG(WeLyu}ZaiIL(L|qDTiEBltj=z?D8Y-+Y zvz-RI!Mo##To0zGJ+}i{)*IQnkJ+4WzA(jmizzQ4DOxiLrXSgkI#ycw@a6^_8sSY< zftO@_SIok6b76(?U)_D7CKG^nKhaH0@cL;#gj3~%W1W6Vg49O%-uEm&%Fbz21eR`b z4mY2Sp}L6mRQ-+h`q<8dlo~Vsu;ipAz(026d1#`0SiKPJlq6nMKV*o}Gg3o%NC$u# zefB9M>?RHsi=#fzKoh8^zmCw82n%_n{L;<+fNrouk9Y+M+pT4Q=t(efJfaq7ns<6S zOjyy!-U$Di$D?XlxnjxM-v^9cBdscVTjIc>0V98ZKhjWN)_+{Mt3fzkzMDFr{B`x6 z={bJpW$Lc?R0?dXtBs^fOv@nv3=8VrJNFSJEbl~E1?A2RX@wlE<}Mlkt}C~2!jGlD zeK+lAVWg>H=Bj@$yJ$zW4r+4H=34I8IJ@@GlWef*B;Whz^37Vq6U^n>7MU#hoxA~t zHM`5Bf#l$pHAlUgbmo4WFioMG@4QdCi8irXoVd(Bf%KI?z2L=uxZ3^-4TO|n-m`iq zI$bsZO$pRDq8ws{SIF=hOX8lt(@R4V1g56iD5s{J`JWBZ-U8#q0a$PK!tKm9N3kT< zEAlp(^nDhf%U`qxe?6P@8Go|UOW)GztWO`jQeKSx`VY18eCjQ6;a=m~oV#UnG1(VA z`ly5Jce;9DBbEl0x71WXY#7J3^9kS}U!m>|Cu@be91}Wv*eVVuh`@T>BOS8ubY<)V zqK}@h3$Ct93Q1Wqw?iX};;BL!Y={|Y0s$YW~SOscG$8gXb@;yX!yg9(_&HMYU>fBlaXFC2hLwuLwuL<>7PD>+-F$`QAi> z8$>@j39(xY1ay9YO$m|w&=A}yR*kHaD8C|ilGWDx6M&B=swu_#F~NB(`cy}}UY3J<|y$B0B)Y91Kyjwp)2v&Bfd2#2U^GZ5J=ok02Hq5XIA`~4Li z?c@D2U={n4hN5D6iSM5#yKBP%C(1dUzw&-C`oxy@`ZZ?K#<)LM@2a-5rNua35rOb@ z-&7g0Ukv8(hK10n0>Sj1GAdH}D@O{0+k93_?J$mREPqm7B}i4IBg^4wg26s!r`a8h zrbL`|5=q3{uHg4;=oLTgG~*h+%jXH3@$#4YbXcNcjKRe+10v%d!C=I8Z!~feWJ7m| z>=qH6>d(q%PZ80$0g`O@s~RK@wJz!iEB`FfODh*=H=DF{R^7m#7|DYR<9Z|ZtXWJVul;ALV72X z$_o({pCh0htpc<}c}szL776LFX546Kqy~HJD(L3p5mq}=CC;~jbKv|Bu4z@^4gTgC z>V?pl@apz{hxiFsr0q{CI>tAUx$^qwVTQurCRX*!Rfp@)FJ^2XP2-kw8Xd=*KO4b2_zX&~bA@5)My0DI&9Uv6y;W`s=UTkIH#j@{`*bU? z=zYyZfs+i%3lS1fn*@OL1rQ0M4Qy2*NNg+YnKXP^o zwv-iS)amd`(uzJYl})qXU!u%|VA)ss>h?{A0^f<trV}KytRPL!l{}M;J~=^8gxa;`B5`@ z9hJ0|8pNL5XM7j5hzOg@D84a-^J48@SzY@Bi#NK^WlnFgt1)+D6ww1E4U2$V3N%!* zYGKu?>|90qEa_q5zX2T`$=!GI4_~zcUbXeZk>QPZ)n{Jkfn(w}c;%gB!EqZH=FeMq zdB@~ls6+oL@36?H6Hf7hx_(nR)F?``t{+PY$3v6#1TUDHaK^?u7mw|)%Q>$`v0lki zFs$5c6*=ti_>n+xCeg^iSLYjze8s#r3#wJcSRa@4TP2Swpaw*terg64KBQ5+#ph*q3_~t1Ybkp2>b{I?^_0Fb2Q7)^t*X*-!F#`bBESovJ_gCI*L8 z#@TmLq4+^%iIpXsSEODUVi*pj*9zeB5x{&%bR1+&=;w@$TEAS_2&U6a@t#ld(wv7Q z*;h-8Ke$xog>@w|e)yw#8UGG%p7-pz*Cnh#eUzeeapk?KcQ>OQsLRQ;V zpkBiV=u<<}Zc(1lny>7qhd;j^&!*mi1GJMbsHr4nYg~PVH?$QeOmBH^n$>=BQrP05 zYVwrz#4OZ^h|@%TYknIdNMF@b%6Q(XT=$qoFiE#0(Tt zGw?FFP~_jt`@M5jH!~k2l828OuIdt+qEY=q7}6$Pc!`2J z2?FB;l{tR5jVJ424Z5Y;Tf*v!{8~7~IocpTqJo~Y>my&VA(LBh$a0LzRK#EMIpw8( z(0`)pkKUR>MAzUhlo0SJx5JrO@hzgS73uKoI`n^Ny6Ui|zwf_|!DvP|3{XVrZbpNk zf`O!jNGM2mjs|IIr6fd=Mmjb^K)R%3bi=68a&8(7S~H*!M-9Qj42g!SR|1}YP{JWmG zO1g>Hyo4wt#lV@AgWid>C#(9K8zt-n8BueHfbhRS;|CU#O?IQ)zWHW_OKTsk?0kPV zlkwwbqJQpn2@Uq@(8o`%3Sac<4YjrXIlL!-A+mCu6STVTxd8>PdU*z&lApxdMbdHb6b*AM&i@)N=VovHi ziyxP^v{&d&9ZOaQn}=JkeXB86r){RRHkoz%{BsQZXG`0N5J9W}(Y&PaR-P`p4=~Qm z&Z>}+Q(xe3>+eI1?TqMSzb?^3<-R?_mnl*d&a+=_Lw(b~HvXYYPyfk*OAJVXoB;~b zZ&B_P-z-M!c5fBc#aViy$9{CFTMP{XO*YU&SPqp;-cRb5lsAte`@91SufJhJND<}P z{q!d1ZItSlLR{Wr_o5M7_JqMHBUz7Icd}2nr%`m;&k#!_K8}dmBs1fVUE_cJqlX>m zr0TZfn$-o1(>P)pG&g-?fRhz(%f@S16@YzAVBm`-wRGBHcH0ZRYLX#M;1#NulA3f|VSHl}Znx3B#CfnS!dYN&&$4sTPD z%wn1T6Q6mbNj=2nnIve@!#W|$L=tWKix)i^HX6#+&Qc0@`pwBKH>Dg!b-2AbN&{do z=(~M@n;kp(yErsf^i@CN>8RkOt6Aeab_J3&y_5H3y#%J?@*$V~dVnu)@SYp1v12co zQ$Zx~!#@+bbvU25Kl{0y-O@@pB_EZAFYJ9as=4EWm_*Gb22x7Mm%8jk} zoMvfg77qeo7*)jzk)Gam4XpLj`DHULj93D(ll%Hg6J{QZH-VHlM1*E;KvLiS@moT; z@0r?c7l@` zLsP_=Z=P0LQs_Vrh4b8z4|}@R&U+m$aclW*WEo2vu-hV~R})$))R?~3V#>$a96TtW z^ZariRW+DT_eTYa8?P}P={Pk%Tu$`EHwd65GlxMQ|BIW+RjWOwHE>5n{;6!w#O*@3;Sq zNIJ)LF|6hcdCl3V>356D&j8!_$7%A^#%Gg)Xk@$?~asVQV<{$`)-K)ZB7Wk zS#)_xh+uDdzT>zK?)Flhphaon|CH!g2ZitD;{ae-{x^5vIPyjTeGw37{ zC1esKCP=GyPTw86@}q*f>{42F)wRQvu8KnF=2BGk#&c9u}zL0V{_Qu82?RHZDkj4%XS33wEfzhVPEIp_;jF2`psh9 zB-vnhZBD35*Lez|6x%(3k^J-4Se506q_Jt;x3dJ)Ow8c~1j@e$86MA^3R<*^H%IF= ze*HHg+ZLt zT!2}}8!7lB5gU|q@R#9-Ic%O4LBH<6y9XSe_}2?25>McFb#S=(uc4X_> z3_irjqA>kTR{vr8Y(PB`LLB1V69Bt7S_nM5&#`bQMBbKQvQ)3oP^uE6usv#A*n8`K z=A(17YLiN#H=xYd#P+(~-Sx@fn<&^V48eKT2u+wRyH5%jeu?OcuaZ>q3?E$x z=fT=CMy{1=I88pQ{V>lN!hE5}K?pbl_b-n^cc}$-5~(2+x8_V5`;F800QeUafjt|M zx|`l-ydqPKg=f-Wx5(DRRf6$w9Y3A=?_M+yQsu5!)^c_M=ie2H5RJWUw37dV00oTD~Jy- z5`3+yMV)2M_oKTcfgSzYyGJ4#!->3v%yoT|zhboZ2sU+4#m;K@xPxLG)nR6aRA z+zUT?UluRMnpwLM6&NERnm09RE`1Vc`C7ml!9CE$iv()G2tWFxGs)y!`3^Mv8wtzH zLx;f$*(xiU6hV>>@AzfXLE%OzzaRr=u^fhY>x=YP?;y%(dOr=WIH2plv*0hjc#r;{3m_jAU4QhI3%P*PHb^~}9kqZr zgH_vL@6+y7xliuH<7B96*k&dNcohx;zjM@(<4laN?^$(E`f#!1qzsj3k*XYTPB8tkLEAbiLn1nU%VoPGF_m>Hx;O3mz@!ZP>$hoUqx~I`x z_W*7Yi)Wpi@8t z{Oi*Kuh)fcI&MNL?luYmJ|v&pV}K8{^2=hMua7dlKJB{T#cA%TpIFKBJc>m5zk5L8 zB|=}3K|hl7q5pV5ywGFq&E%_z&%pfLp+U0qOX?)ysXx!JE;b270M=KBdKIz$fqUj2m{HVS z!Rm*ueom6Ws8IGOPb2^jC36tbCZHwAbF0W+_hDo)fH0u9X5jOHdB~Owk*ej zsc%gZ$FXNI6fk3a{?0D^Y4?!FH0O?G+=$FBQv>x4pH{FXYpEkMi}S*E&Rhdy4@msP z+}=N25|L2jxj|MuNR_#7P1o)iK#HyxdbJO$cTkX2SkyLNnEsoao=4%7BEJ=Pmw@iK z$0a7hSRYR13!O+1E-&pO8xdSQi4lQv`00+9;@PU4xTqwOV|}v1&9++Roexv9UuFca zRu_}5cccVo7xb;W%RfFA`{nS(BXKAPZ{IOp8M1c$Cuz;z@LyfhN7}b+*3=ETS!b`?2wI`LZxSTx$2V%A6W+x_lA@TJ*rGoS$+=q_iZmJ0=SeN-YB z=Kh#ojKAYgdy-7@gkouiF~HU7VyBu4aka}@JdX^4SZY~Gw!hgkjUZ2eO?V4B^EGPv*OnPFa{sDbFt69&1ImGs1k?BP& zYOC|sui8&uH45zTf%N{)_V-Nt95DziZ*=oZM*@a8;wN3?gQ>lGxFF`)+A0~(v-`f( zURxR1MY&9p#3!V{CB}}n)yJ}=Q}5HvmXCQZZ!D$81I_v&sUBJ4mcre-C zQY$(sGG3nUAV`0^M-ColQv@K0; zAY(8dhBM!>m8imR>OZ$E?>aW4hC{}FnNxXk6gLH=Cg%KkVO8<_t>Hvr>2C|?S z7jZ%9t=Kvx$^};%?(3DJxcZ|OfCRH?wumyZQ0hTHQA|SnIio@$|3wK!J!6u1b%0`y zv>)X4!C%gK-R4FI2_h8x^5`&mS0lR~SkiHP4uI!4;oRmo>J9{Vcmlb*|K07S~2TY6<8yNK24l%eMN= zW0i)vd^#@V-tcG0ue2!;_tj!RO_k{?4kYKwnL2rqUXUJ)t}!DzZmA6YfR{fdv#eG* zi5O+en(|4lP_(xKz;Jw_K^{<5)Kl8fAZIHE8DQ^jT!Z6ZiU^h}_G??}$gg1ZRiKVp zE9BJarebZ2(*c{+v{&So$gJ6bU%wQBPc|9Ibss?uqbN);4}=2j{;ni;>2i!kwVaj} zCv;<9BKM68rEFePjsQ)$x--7ON*cc(@w!RuutQ-2wPBqTO!yIE^KE0{jID=meVg_9 zxclYU7P>zozkEu=wxsw=V*Osw+~^S7C1v00yBTdYjAqtyS&qY$;vQF#cW{vdgD?wi zTkcEF(mX1q&*`A71I_K^N`6@+oWcQ}ra;{6q@-fwV?ZW#v+aN?Th_neEUw={ms z)M_w4KXB-t0ukOF(F7kOdtQ;*P2B8q$&KC=2X-==`g0?}$i=#qs#m zP_#<$AEy(4iB#kJPw<16!KsylR5pwk&4w&jBkumCG!cL@rK;zYL+rwt-R`)#owlr# z8zLoGW#Ra>v%8>Co9x`w+VfX=O1!OSE3v^6Lie&cAN(1L6!pa?5XtHC27v zC{k1I(l#6G9q~+edUeFwa~1r6GU4StY0Cz@>v8JHr$9TyGjr#(8RPP!65@m3CFEXq zyV{wR7egN|6<@C{?apN(v_Ee=EbH}o|AvZ2#KcZ}YxzY`67g=nnfsiG{pEFu+M(cK zs(2GmDhN^A;vDfEi)PF8(U&(L?^>%5sG@jbll1{|>{k)Wy>Bl;q)3!e^+z(e_xvWO z-Vgc}4BN-1Rp}S;D>dhoePw{^56k)nd+le{<9feCVM0M!7t10dnw zJN7gI)R1qyr99{TJU3iv;C%Q@t04|8s%VZt^+hN~$3GbekhWzm^Owjf=teH0&dB0T z==aYvFD+^neb=7w_bs+s<_O=rtzu$4OfxX!QS{bM>3wNb+>~CIsXYFa|7k$#*-O+I zWP155Pc6q_pcS;;zAZz)UxD3;Hop3YpR;P#-7t(5KsZID?IQZzxc4k;iR+};g`}PA zoCe-umFV*1CUx;zyZAY&e}vlrns;=*DZlOe_MSZ~xR~S8FwdKi>q)%+8ApV<&ONHE z2i5#`Dc(&iSmhJdD}nv$R+2m2_&@XBaQ>!eCpI40>2P41%a@g?L{nJF_;@p9j3TI( z0yL=|h$fu4d$9=h!P&OsD-iB`HYoc=clc)6w67t<)Hg&t%JOANn}nA0*&miMD+i^! z;sR!7eQ$3-6_Pj~Hg5tYhK{$IV7~F7ihH2K-hC@A2B)h~A`;xkFU$VGMaA7$T+?$x zrDpa!z+(gdn#3x*c}K3B40*mESIM0XR3G&|ZFKoguQ79kbid?)VNjoAy}U#IiU*pW zm3IrNWjEuQjp?NVC&zG zTpne;sxTB38TPqb>NBA-J;=O8zTkJI#;de7jA6Myt554*!y88FtJ(8cs~pO4)oh|k zPp!(OJyoDdOkqvDQJBY!(r=m7FoKzQnsQ^uhjA~MI7bd9t`~G zJ>L5bN?{WE$R+x`rzZ!3HxmR1Tckd-(!EFcbUuCAYQWex?j-ek;$!ii z%}3Lql=smsTE9I1V(&GLXlFj!$|&*oPHkSkL#2UTp_0=qg2 zSh|n13R*-Hnn2xhtkp`CM=gPw%vkQv!X^H;ml=%l5#-Bd!VlQzgdHO{>3WRI*Ub4t zYD;yB&_7nf7mb%KlA68`l`|LBlWe-Bxz(6OO%hB(1+YhDd96%#Kh3<2wLS`-mfd6* zau0poH|&+FbH;xL)b*Za*e#>zi!~vmKle#}09QBo@)YD0D0zrO|TuA8P zO7owzPmeuL0|=ftXY8Nht%8;%%4?3ena@Jyt=BiY4%}kcP??Mht@3QUDy?Li&tT>J z_lO1XwcIB}*jWDir%WKof9mB`mQ*}blm@xU%h6R?ym?T6b>Q4QrM4#p#m6V-NwL1| zF1!w{Ww10IGL^{Lqt$A9tH&kBiUmBa1QWqj}S(fkYXte8^Cj9N(b|Lo=IlE{&^5Gli{RKDVrj``R*0!Y2eT}ujmpc z-V=Bpb)fzl;om8Sj3Y(K0xP;3bEessg^v4$Rn2Ke;g6R8#+xiE2Ixd(6=S$Y>gx$M zGwoa#b^;X;i(yqfTnp%O@nof5=O=Q?f%KUtKQNKLvg^lox%bb&d4vTbX5AHJJ>3c) zT+RNlonasBp1IO1hEOSe7$(aOx%RUSr+Szp*4g)fl#kTYkXX0!NA&@kRFjVFUy}f4 zuQn|;XI$$FBj#%4)6ux}r@UFG?~2dje$LVUckjeY&*R2~eLfZA1I?gP%JROFH`ncp zIq7mlr>|d+l!LvV{~$cLVco?10Mj(|wRER7$JC3lKz}Ic=hv~@!gaf241_FI>K>>UZl#UAZ6mDO1M&$2L;T<)xzmM|UlYvPPloH_g9@eG_V zbhQrGhLe>J`MN+OW=+H{32Dn3idJ~`mA;%vKQO6S1d@3u7#y0uHV=$^14t#Pp!>oz zXSjF}Zz!ds$x6o34+sK+ij>V+S6s$t${iPWkEu^hj%`@%quoTv{lvhTDGc@a42xv? z;+_NVLQRi9ux4|m)|?3-_)aAS;>9_hgq}$Wfe?B}tw!5-$6YP)DFQ-Ls24dQc)RZW zVD})&$^rdds`rJzz~G~j4PW5#z)s;aZh+eRilBJG2ntXVe`xPI$TiZPFuyQ*w-1$F zk@?}A^)8UmRw}t!UdQrT(}`)ccKBIO026s+aX=6rcn}{9TC$`g*rM#Oaf3~^?9!DO zxex=*8=&+)wRM*hhNVwWQgw%pe)U6U|C?Po5h&Wx-BJow!kHba@X36FVZ>|Pcsvj&{4m8kfX_wcG55?7{UVVf@o-G1v6B=y z$lV?cj(8E#E9S>twRBuT0%i9{LD@Rn0wMwQVTXw8O2}iGT3X^hN)x4X{R|6!TB9>o zlm9I`BG8+CBTw&s#kHnoEbFUp%^aY;Ze>d;;PIOY@z_^j4gF)7|SU`{~39#t2-9GJ%=;e(fVDO_L1uZ+wiH@)yEU5F1;Fp^X z46rt3;az=pkY!nhyNT}CXC$xv&qoV1gpoyi`DlS0YJ*>MTVRx6;yN$#$T#YQ|0qIX z*eD>x5`h8)InsixJOmwy(Am`gGVLGLB}7Y?P=upjt2AM;%(!k%8>Z#8B;n+@jthjQh+-r>9+Dgc@-pA1H5hAcU*s;Kc!@_p|Ouf zJcv+608?cxUAD~+G}fyNnDS7 z5bz#cHh6p{e=UKEgv9LAO;>}ZV9%~B0EXe_%soOwSnF((G5PfW1)2$Aay+);mR^-Z zXWj19{Tuv$Ki_$|@wmc4e}_STzf$`_TG^9a9fE}X>}xxMu+Lz600e5)OUvNlGRpDp zKP#q@1_`uIPM?Ks>1WG0*d1&Dx?V&R?LZW`r}~Rvm%+dE(5@gy>Cz!RDfzv?m?=oCbJ^`M~%Iv0!J%(sq^S)Fd zmsyU^J9dj9SQ4(^qvcR|H+-&##-^h+L3zoQYg96-=BR7piaWn5k_0iW^!_%yIt3PY ziau$IU)+zml^LFw_1veqln#nU=5vK2BA_8`Afbj40fv6Y<99Zx+&bU4yt>j5kH`74 z6Go_sX}0*^KgsC79+1e0|Letkl@4tu9dz&Ap_pJhj5<8!j0}yc$B|m!Wx7zswsSh0 zMyM0p(D6@7Urguy`ugxV_}R_+DkT{aE;u9SfjH#-Z?Ar9lqL7pgLB^r&jE}#rhCU2 zZzcbI|K%MERfZh6ZG^@s@+AK8MWohK9;fItHj8B8aA*vSkPoi}^I|YJt3;)+{^PDl z$#@&F;2AV}1H%S$s^owfMIHy~SPVAp7F3%8cPnp8ouie(+{g}v@?rO1cX5CNq=2?PY%TbG3vE3DnP$CoIS$fV2zP4Vn`WA4v zIpdu)Oi=LE+I;Lw-56XrqLip-v5w5k=)QVFdWn3p_CxHGj|PiLQ!PPlnOua)KRZ1u)3!b5FVnpI zE$+`_0=%I-P6AHlu3b7eUxNe7>SzmTuO**kiv0{|eZWUi>xCr@D(bcwIN=5Tdp>7J z+Uc1U|Hgxhjkqs3QU+@t*a1T`NbPxd6wAKauu_6q+6|K7b44O{;XLXlChGGsiCZSSIdoF}3&_}H+}a9X>6=_Xtm z=89$kpl`KgR4cBuE=vrJM~c3XCS{QdkcRbHX`QIe!>-K2x+8 z<}q=)ihsiIrHG{kEV6uUc>(o1ef_y_g?KPRsxrz>Fx+fsV)6S_%N{u2RcMh43~uUr z#)HM!&T}GJ8ZA6bYL|>Sky(BB0!T;md47w(DfpUpNvQa@W<&n7zpY`E*H`bW&MMfa zgU3={Ey7Sj(jtkhx+3Xi)d;0f_na4jH+Mp8Fx|_(JUidIN1WbD0gHcHFe2;^Y^?*N zfs3<~L&|`FucL)uquu(M0=wp*y>iJi?R##}gJL?m&6U9M-^9!%<*Xp9-OQ7KJzADW zm?I9@qs#Hl!N-V`HS6bJMF1GM1Cgj|t23wX5>rkc#MkdQX_3Z~qiam6m*6;DCD-i* z2a&tGw!vh%paZK-1yY7^yrTS4156=C&)(L72317N$d{$xWc)5F8TUl5b~}Ofy=APE z0Lg^L>I*LbKO8DGf)be;wxmGwBUd@`7!Bx;cg_wbk;)4q1u|0lGI;m9mu{F~=JDll z?~;1IlaZ2kOPZQi%20pWFaF_+cLx{zTi&_&zxuVNZOt0kl#!ps?9}co)B0CK1Mu++ zN{~#{&bIJfIddLqRM1ksjGg zF4~3RFwqPdqxq?2v#YF!9UPx?dFLw+2jx?PXeeV%`%h)(Tx>GrldB{qnnI)fR0BO+)GsV~noq-Gf&^Z^X!0On!PWlza5bS9b zg&gXm(P@VS$D1aaqc3u8nScE)R^YhQVX{@chP77|F*Z9Yg0RNAR`Nu`gP zzFGULY94i6f3dA1$LZh6@kTbRbM_(kk&IoNO0!J}qB;=A^=4}Jq;Dw>|CW-;FQ7oO z`R4FDdxC$b@Z$7|g4c!3HQQ(XzRT`X__HaqAlI|DMgJo}T6xv0^UXV+Z3#pFOUdJt z?!~8LNmmhDhaC58pDjoAQ0!3_*}U3Jk7*FG@23Vq9?_lQ>*~Erm`H|4s=|Zaa%sR{-jy*@{Bigb`9i^**3J?0 zsisA9i0Vx$ypmQm$8T1I$-};%9;qlccA?nute0KEAf>DVdZ!9UW+~O$*TM+ zAU7paE@Y1e%%3ZKp2??G^7+=tK^t+$1k(|i=B8uZ#*5F|L|a!DZmU03a&nh zIjHI0YROtoGmi&zZ_}7u%Pxc*&ju?hT_1g)lZwb6H*+xWU5()bfd33sq22)AfjGeL zZr~O-2Zji{c)G1c`xA$FQj~}Pb=3Sb&N33&nH=TE>+d&2s^KiC5uiS42W5=q4u@;( zzI3toYR+j)qK$>PT?o=5o^{g}*;XpWdAzmEpYx#Vf| zZ0@ot{ZMFy7kWbHcz|Kx;!Up%ol-kLi?i{Q7~qCL3l})nhrH@9c1C?QBeV%rU zR=qSBR?g+Xm`CSajm5(Yd=#2n2v^ff_|nK=U=J}iDiGxwX^u{JrVdu>W%F5&Va4Q) zd{B&-&zTS{33Ja+YQY-IBkIo<4Hw@8VTl8!0Ub6vbXy9x-nYz07f$&e^5EQ0$AIEW zPfaD_ZJ~%K=d)})=-S*$NSI$UU4M&a6e7&mCOy)zbcMiTIbxz=Uxb{iX|BRnZ_T0f za9g!JMBq~k1YG*c>S^9*S5wgLAK?$bVWe{>K%N^kRVgUb9Kk5KW=<L>SvM9%yHd z(?_YR1VcEgUET%dk^3b$|BY=>L<9_A%IM%D4cxZSdqp$a&+@s@VJ$1f2xUJ}PS(0v z&On4HAxP+v134psLAP5RO=@6MU$JLRD+K?@PZ}8Dszmb$f9MTSybtJ-k$X0({TeSDgd% zLNY`30Lt6!EjKl-H^udNuS{QR$E}chJ*(4 zYk{^b?Bqlkq)CX{wF6}yPWu*6sZi=_Au#e?>s7rV zZPHzWFvHr3@G#0v$&? z$;+DRgYVGKe;r0h2&s1K+lR#AhKk^1N*Vzeb)=QBo_@NuP?4hfN?sM2 zK94JI1Q+6&{sIW0(2#8$F9O!eEl*NZkexxr;>>~eLn}d z)@%=-%6_w^tS^_R&1~LVUoKy8C-P{v+6evfMkNzwAR&+if|T@FsRfHFUyG> zaO+|70vpW*>+?sThLBwU_eM?SK5l{?g29Clwk&InBDX1x#7QMrMKqq`!At;2X9O@; zyWl%zzbsc{N#HeQLWfAz*Jq5us&Ca9t!Ev#eX!m2Q?0;%)QV12M|C6lj!%)+7$*pd zALT(bd_EF?*db=orQf^r)Rb()%_DwztU=_dWPqH`?U((Q>Qo&m^M5+R?EddLX+qxG zuSVW7u~vC9TFb^n@nabt5Z=lq2z_1#KY$5b73o5ify=&HkHKcW09G+8Gz}o-?BQtx zj}pF^yYJOC;Q=~OeH?IK6{d4cbn~=P1GDjD2JIoOc!vI#!<|EoXkKxCqUZ!6$kfF} z;l49I!Ji^#@UPfCHpUXaPh%}$z4nw~S6X_oxoYohUGyAcekSx$8!$Y32wPkl6!Rw{ zzm+}l!C{k%LA*O#U|4s)EoHs<;%z+aRz;T;=M*P^nk!YTV==k%wMzHn4n|F}V$jfT zN|pIExwinBv|*#YrP{SML)w?0m=}f!f^>lrMCPgT)IlkDgiAAoTZ(=GjkWB^Bnl6pK`M3VlqD|LJ?f`dtAvu9_PA4%S7$))~!QAoQ?p1ACYX(9(c`| zbOy{|@ga9Rkp;)1RrnZlHJ3 z>A5q%y4-O(;@{uIe|;e4#M=Z7Lljx9mz1E_myCj(uEWIvsX7P4+!Ol*8ZaY%ut>6R}#5lVe7Rtoin&RC zz2mj-91t)Vo6;0yeD$PD%l<){SM|g0+Cabia&O*p9ZYcgx4UjUbCgt&g*e5xV|grg zsBB`2HbGA7={0~9Y;@Z!?1s%zK{a$AHRZ2`)KFI$r$szdW6pbc-7`0ZQFP+NC-e#< z@|>&&lOH6(pz;Ip(W>9>)J^BlgZ&?aWrEfzFWjyn8=^{z7;7PcAj2+E$2zM|EPTxu zhuSmF^J$qiMVIQ^6H+@N|0*5#M;0U8b|p)GKL;pJ+vt;-2(C5Qe@Rw=#dq_Ku*;=$ zp)>%SLI$s4dC57CFV{-nngs?%9gDWyfpy|i?E`Lhl5wAQ!pbZ57mrE~4QM&A4A0Ml z_|UDPSrBOy>BoX_;=va2o<8L{+FVXoZ$Dnu9eOoYy=yI{aE(m4PtkRbFY4f`hQ@*n zLJTn2YVzuts}3(Ti=br`@7GkwUIqsg)by;F0eRW>uzP}(&FYD^(473S&=81!_9C;z z|K9b*rQq4w^wDuUMHK4#@yrMEQMQO6^49e4p2&oknp;gyTk+{Xkgu-}1f)ay*>irA zV4laMXina`b~{&yNY)EtJ{7mwrn9JkYtKwT^&5gN)dE4c>|y)x50P5jh3^Q7S5!DF zFLX@tr==yK^s(6zM3Nw`F3d3q z3N64dvBP>W4k&+Na42U-2tZ&h+Q79B3mxAs1?PYd07d8}F0Y10C=VFqz%1A>%H|(0A@sxwJw%~h z?De$4s1jFE5OTFR%S1!q=ky0SRuM7;fg4$TZoe7IAs^o00<8Nwc_#|EK5`-jI`s{C z7&MC_jf2VJ^E3q?MjC6qV$*%DsRi|WxQh%BU^fs^{b%=R5@GbLakhwJ^e-+Q4-LaJel-nIoZ>xks1MDyZ#_men&XMtuHC^;aK+cboZ_$ z2wnqY<9QZB)t;H8PLdL!Xi9!lXc?Cn%R%^}RJhYTRQZe6d(PWn%XW@4#{<%e4}9c= z)gz^u;E42ZwS9K7DEJV4$lcb$QOPQNQ0>LFr0mvCOk>aTbWr!EA?TR$Q=1% zYdv#1n@pMM@wE9F&n`ak8o!BD5a+w|L{o6Wa#1P8^N{oseMcu+LO@R8&pquSQKLI* zRK{qjw2@u|8ihXrFH}A-&@~-sHf4K#bD^+h?;*$4&v*MPG#{%z5{}$!W1K}e;jQfD zi+T4H^toIY>8XvcI6pX;BnDo30tjKzvck-E2a-zQ;#_94_|ZWMZ`|9@4s00bglU0p zXahTn>p}M}ztL*!hvg1%H z3|`8^@f1&ssAwV)PVX&fc?q|laUQ)+uU}>>E;co=lP~D?+Bv3H{DbUls!;R|4~O&{ zp~7NFe1r0*!F)GS?ta+Kc1cyVOKVlVLg`;Eg$tvD-{)j2ILXafr!#m@Tov50ZhVQL zz6$P4>g9I+V9*z?rGFMbx+eIBv*fNsA84}QbhJHF4^>rCDG!pGdp|1ZP@UrCsduxO z``!)j{Yr}V*olq_8SX;A`~8`}!&d+!1-3yv9T_rp>q+KHR;svrOaE*IC>Y^N)YxYZKQ`(7mzW$Ai3`%NxzxQC@WXy zFeH)I6a@j**B|)oT0Uuq zz3rPu&nP>7UpZR7Y-NKGbD)Gf*|)f)FhTpCC6NmRPMGdio0iV}iShmXUL&dp>0yIf z%!Qqt{b0cPj+2-7kLtrS3Ud;=TNXFC*<4^tR1j)%3Xdt)+;-7N3X8#Se@<*>1=*5H z$nxnM5XV^9NxjHCAVC>F8m?`dyM}>i0LI1{qYBN&PPBcGOY7@#po;Vv)9b;@fW+T6 z{3~+ZuCUq;(J#(S&7{9pz5qJU1VLVZD1FYZTV{vupTxu;^dGe0%Yk#)LbH+dHLP5g zDtEkCMwS-oN#ydVIhJYhCN0|Sz(H?Sa*oU0 zomd0mfJmeEdHHjP-q3wKwvD6x+DcS;GnXHu^w9MMXV&gR;Yd5IZ@EDqc{wEmow`S14}7&^!_h#HBMi(k zwpVZ3y7NJ1&=R%b2@NqIhs|rW?cX{c%=xTnR&}x%>fKX&&c7`(KlZ^_KBUc_IiccC zii#mX2!_0Tb49(I!?FFZ9LIP`5l#@mY+eygCO%OeYgpr1_wR#yol%}y1Q)@`wE$BQVY zp?Yk3vhj}+)hv140e4CTe7N2DK|(<={Wgk5vBd3%WqH=}F$aOTaTISdvzQsQIPPg% zCAPnT^WIFw`yR!6;V%|={XLH3);>;y99!{4{tBM{y3gNmld+T2p)$x$3a`J}JkLLf zc)?l%PXvu06E!7i0A4%ECsUklE`{O5Gr(m@|d z9a8bm=&6Syffn${r>9VPmoC{1`blM*G{J0_zCY+X8+xnuC2i|VrsqYIeUPPbE-7z> z!{JchyD!V17JU!X>g)0PA6?dmNox9djx|1cy*5cwrqF-f_!@@{0h`CWda1uB6qmQR z_awY_=+mFP6`${CsaX!a6|I%&U~-7Hd;Q$J@Ck?ZU@5pS9wVOB~|ZQnA&teXPL$x z=;D7xRc#Ok-%|yBARxx*;>!%tF<|sV0PUMRW;8jZAI*Y@I>;q>@^yHI3Ks;l4(Xi{3?#jFbMfHNV~?yxV&SltPu}R2WI7<1OMZAwO;%8FR8r+ZJvQ zU0?S<*wfz=7NWnx`^YK(;(Z+--vnMc0KI`o(?ZPMy!z*stm)L(ANM6H3`HVh8<& zK^Q#HjEuC=LFuFUmfp!=F!@7be^BDBO4i-AUNz`uW9up~yC7D(e{+gR7qp&XARI)=| zD!zk0I@;n;^=(*@^nVBv3F!5gc`6E~SVDaM-kD-^V7Q_ap0nfcZgpgxqlMP5 zV;{-cZmo&fSCr4OqH?=I`jQ{tK?{oiJaxaZX(_zw3d7yyiEYR=<0G^uvZ!h?X4DLq zT|?~dRrQ%yhOLb~owUM=d^n$VYJ-WF_#}TRyjRd|o{g*^PB9{e7>qtMpwYjwpBm*i zM$6jq^IskR|GZ?KcenwAukM{$Bv;MUUkCT{vx^;SKP_D?8L-X)MX$y?J>I^~(>1DzDC4PZ1znGpsY7Mr|Rs(fi_PQ$a$ z#dX@lMTuxegqLgJjc((*<*)9ug0T~{NY+qzT8<^zBSNnBubeKsM`tRIK_X(;gA62d zO%~Oy$by~qj1&O^CRENJAD7cCRQets$2pz#Rg}6yedf)-M+AY&f2Ai=3 zfxU&tk;3dh2wAQGuQn+5zK%wGluu-fvm>dG|{Dt+H3e)p?=l;Yxr5%hH!6PhB?>}9ML zYmlY}p1|(B!=y*6#nw%Qac&Gz6Y{(WSx*}4a?mwI%%yO0o^ssLLm~~Y_UAs$IvK}N zV;Z2xdjAArAs>GrSj%kEvC1OcR{g6|K{8Xb8cLC|@c0Z>Pw18Zi2v>1^9?_>I!wFT zLAW@MAF#U~;}qgReRi7l=*`l}($x;+V49&cce44*1o}GuwZhYtC7XmRo3`{{VoWlf z@(F;W+hWh4u5*4FJmj~^3Pykn3Im}3jo<{Ohl>xLKvFy zB7X*uVgj`d&!G4U;Y{H(tjzu8;z+Bv0i9dlhm{=JNWljTh%QciUatmift z4kC}csk~pmBj+^}g8x}gw-+^c`0`c5vi0gE+`lrmB+y^HlvH995eo>2ryk4G6*uqF zF#KU=p<96a4AT8SqRuiZZs&dbyUPNLySvjbuEiI3YiWyHvC`u1UZlmLNO4-AEfgpe zcXwTiyDf{m?Xo=lUi{CKbLJ$I`r2>jgTlh><6stAjg{%op|>QS4bjic8uY6oOw$#I)Rux@U!1SU1-CpK z;WUXWOFh(yF@crtlLM=dv}JXnU%w-74!pcIS0BYZ(7%88sBdsAp~Nx(XQfgrtxdOI z@~($*I%vxdeD^P(3yRNLyP5fop7lG-V+bnlVLyZFb6L5G0~*$lANv)p6%*u3fEi(8 zEZ&&iL|fp~#MPlgK=Vxgcb&zXCv2@#T}jRyD3PklU$?u4K^qUn5sEKAhswq!zAfKZ z>lZQ!O1@=5tIlM;3NJvV-eZslM@u^*Eu$U1BQfNxu74h!+(GlZ&h`qbkEJo5Oq47x z(9Mu_OpDN15r=!Jm7)~6wuG8VNpc!Ag?87GMF3WTe5ajpLBJj!{6HmoTOP068e6N3SAnfS zGzAVJe7DEKt-e#HBOd6pTVoT27cMpRnLZ6Su&o5^#pN`|*g=$q98B*qcpC*1>Db`f zUIl=%UK;>z>pv08BNCRzH?fZwJAhAegQKMJE^6Q{cC3adAvLA`dSV3ocg$`NP3Mz~>r=#zlvo43`BE*9vG%;=|{UCfxn9x;2(Ij6co=qgHPFsa4@BrE6f- zTTkxw0U11$=_5jrcW|aX_%-SF%(AH>0I%I4(;I0FkQ$fEj4uXK*qt5|^F>6YmGTaRl zC$t~XIt>$RY=|7+6Go6k`EnZ8YpngV%`^(3AMELEZV>?>g9L`)=M>^6f20{T+g;{c zgGNr%9K)w~Gu|w=(Ov)N`fSH*B-c3cLr}j1_wBn0MLThaz@Jl{0PQ!4hT<(lM<;P$ zqi)^FAn)C|J%XG&7~ogE;&uZD(;*+Qqu}P41)wL^=0#b7i&*O+egC>gr^I*DDcoR^ zESAJ}t*wHGtv|&OC1Bbw{7~K?AMUr*e(R7fZisK+F8pC)zr)ztp5*DHrj;iQ=N2-o9`PYT@`O~6gF@Q3K%YkM>lWotBDP0>)7Dh1ob%b-Y0J=FfiZ z*x8C3()zY(ckb6oEz`jzk9e0ka)n#=LAp0M7PYKyXf|6(0i^LEw%F9$Lm%@28LfAe zkr2xY&ux+fF*$;#FP%Z*&gv*|s$VF_*L0Q;T33J4{tgj}pyYlKu1eZlt|lW1HYdHv z0K8q>1q?n26cf$$?+j#H3#nUZkFP0>L+x<{-{Mq1tOy>l!Jmj#oE~Uw?uOx0G(qR1 zm_T#4KV2yQ)oGuvAmB1N@RS~3g5rO#&hM<{HeAwM5%nbFh)iv_#hdYyQK;g0$6Cro%YU~= zSEy38M+|TOut&ZoUn1ZCmG1v=CHek;8zlI)3<&2f2Lbd_hVb#qoHPc_^UVybwk zFQ^O?=Hi6AW(-({EJ({-JU{VQYVaik^4{N)!N>p@lh{_kpODgPF~Xo|NX&C~a4(A{ZUsU`~;~OHYPBTZn{@4b7<9PG@8XOR*Q;++IwT|Y40YZ+jM6bbMv`HW+-%#*+ zG@?I0OuY!-tet~U)X@x#R_)6yC_B@za@~aajz@j}J5syh<#V`sT?n1Xnb4PS~L8ti?|bG8@j zdX(TT5AOGyz|C|^s1A>pTibm)zu8W@J0bhdbOxX-HLO>lmhAIwO0?>7sE(0Yf-KMp zviDb>ymXL3LxE!3aKJRrj+!avL-N*EX6(l`s)PP-O(THBe`Qk_SZ?sw7i}UjXw7~${t*e<8n!Y| zAOBlx_T2SsLi47+2UTx)FL&RoI}@i~mZz`17Hb7c$+#`$Yt;yzL5V6%t%fIS0&Xml z^)sxWp^7PXu?i-yl_=Wg9^>Xv_`-wOzWDkts(Oa;M<&p0ygssaIgc&@*LxH@sOKV> zFMmBopPVp(^p*W6WW&|67%kgc3)%yF9ZwGn& z^GmGq+@HGe1l5Wqi9q?3@vgHiLV^ZcT|rq@c;=LWYCNW7GkxCbXOVWKliyHzsML6M zNuV^}*tNL6Aex`Bv>wpATFpk@ z73tSg)4Ljvhng*Q6hN$|3}uM|L1E%caa)Jp1cHmkD4c>nMUWhj%=B5l+MeoDCQp!$ z5Wz0M29&|vi;d2R{{b0qzx8HPAYaDevCx=2&f?kFY44@_+uMruzL^Q7TkYo>p zQR2-@V7n}QR*zji{u({{=_CYj*WjCUf+xwia z#GRdZ{f@J(~d>(>Coku|M>j=U=&44D6xE7*U%YPk;2SyKoE%)R8Y3?9%l<@BCo8D|4jBg$M*tN)?|!7q%cXGZve?fOt>658 zdxZyb3m&$itz;RgVmyKBj<#fxRF0F0vYr58aN+3@(^_?CrS+RDt4dNwtcC)UJ< z^E*UO5<|zShG=1R1l4=MMb&2dDuqr^;M*!v&`-=v?EFowg@d$9*o60e$o(FFha*qP z!E=8&1InOM9cUkle6ZP<c6wEAIyQK1GME9dFHYKayWUJTd{Jw-(X=GX2}>Lwbfu70yzZ?Vd$` zHAsqt(Hl@`Na_6NHk|Y>&pmOh|EGgK^$N*M9FJo&Ld%H#A_mA%)dS`Epb`4scgb3H z<3(91!>0~^nbc-cQ@SY)>Z3XT#3W~ny_}MK+hsd;1)Toy7h9JrR_E_EG)XNn1)l-8 zvhMyJ#-JMDqOc4!S(U~8Ml5{3b@{fNjlhIgz(e`f78`SA$${jafHN4LIg0+uh_`FS9ars0=b=wftxw}K#608K zw~pz-#Z04S7eCes(XoT*R}F?Q6P~Nj^rrE>Z+{n*)hQ!lrkcwhi+V9V^$PEtNe7k6 z5>l?qu8)%3UY}#%`L77J2K#;g%It5BRt3!l_JR{KXva5>IIHBy&>krfoGBKRain!W zLYyJIZp%38qr*v*H596vqD>bvx?4dd+u>nlF@5ALr*-gP9RTU%dHx^rF4W^F$>jda z*5UPpLTZWR>iNTi8URM%m*CQ(wO+TD1bf~4F;H*7(WXvQ@7|yM8Rqq z4*qBA2vDp_({@Q2G0rVMt@LVkDPoj5NXXftlS?69_N4ENP#_qX4qj%fyfAC!sG6`V zoWSKlv>=+T%Z>!Rb8hlo@>X)jWrR{eJ~#fZ<`nR5G6mUnKtG~WMR z34Uu~uNEl5e;Y}p4&2GNAbK`QZ6`G9Nnk~p<3YhLNSg>-=(1RByp=gRiicTxs;)h> z?S4Kfxn!zxc$_Qy&;XS~kcZ02fURuez~DSO!`icc7YvsoVlQ-o0zhvHI1lY1(LS*9 z!KQ)8dlaZNZT*Bhtq=Vc4%U7_tn~c|R0`e;=ZUPtUl)&t^sqW}MOtq_4!{iya(;Su zA@XCE5fArqnB1K(1)54 zcQZGF+?4{I>HCk?&5xnkV6@-{q_TedTxuBV-STkMqC0e9%^LPG!8^vN9+{{T({#VtRMwZHGX2{}DxQwCfj$ee0^JHr<8W!K}wQe)iqnfEcRF4q6(yaZZb zXCL*YCh_8E12fi*U$AV*a$^gBrsm|mw^#@yNhUs zFcFhjdRDN&oe=Xr*g@?PSWNsZcCu(y#+t~#J&4}nv6Wo^zvL2(B81u^2`XQVaO+j6 zz$rFn=N)YJa8eC_926DxpZA*YO?U`#-+RR#C6 z*ZJ~??%V7cEmR`X){JJf>OBjq64A0Z_^4xvOLCi~1sVLCUEDAS$+uDuEGAB+Fnn@s zawRIsbRdntA4C>#ks15kEy-6*0N*yc1BnLYL|c-|ylk(=(@d!c_tLhfS#~<85(cA^ z|KV*jN5}(<(}MmP&Ag7|;_=_e3=&CPu#^l=xtQDH?I99#+gwJ#{nLzcN(%Bz|H<8> zTE6{#$ZfrR@N`2BA- zGbZ&8MunUme0>}%lBx;H+D%&&td0|%d`)jEhp_no2*hyb?`oW4dwT3$tJrQSj5F$F z+YFbtBe8(}a0g(=oHUbRg(L_^-Ck4+LMZ+F$#b}nRUS;kV)UF*1x&!|2zx%Lpk6z- zxi7-qCpqTn#|xn9`NFhi;lKCQKc#jZ(Y+<9HfYA+88;je{$Kq5SD9;_9qXh#K?g*u z#z;1U3WK^|xMYk*_edJa?bLYre9ZyHIm0ICwgjJ-Or@GcyY0c87&l}HRY+U7sW?zz zC;w<|B70$DLRYx;=r@=;xnt=mB{0*uxTP_8vl3WLfOhmfnBByZ0=7KBs$>xGJ|?$m z*FdgejO2O{uQ2I+D4@FPdYblS1UxpEoaVR+upRhe4>uR1eO!UKqQsp^n5nNI?tPaK zvT73!fVGoHh-1fY?caRi1k5;TR4Ox@QJ`t%Pl{eptFtESzY*8urvDg`65HkB4eG#E zZRN?Jy~Ppbbh!s%zkoA(6NZw(e|yIpub=!|5$frwd2KJXy%`LUK~VsOE&UV52e5_T z!A6X(-seITyq8A5Z?T)lyI)F}NMByyOdJG%@izMeobM-KByArlt)v&YVy-rPcb#C2 zOuAvYJ0to@#Gq=~jj}^LUx0_{Qirxs`NFnh=*OFIzHDsJC-5wmSYm8n=)!|Bu%tD; zbq~;Ie88}o!rl5Tj(pUCbu$=ogJT-Urt-m0<Wq}4G4K%qN~qXT}-@qrkjrGySf60GOaU*ReZsRN=Mu=r~3mM&xG=G4`S zUy_<%1GAaYo)OyFXU?DxwPwk0_cYo+gR|;n$$dtpEac*A{m$v-92}3oY_{N(oyT|R zMFNr63uOhl3x@hg&}2amG%MK!z){_X?N-~b_u*I6pZb_yOVh2^)q-e58B+{Gc%-Yv z_n@Cvtg0{g0sGKvS@|F8eF$1U6sice((_5~gm>InMMq9OFre#>ESm9ssXqd(@+0YE z1X2BW?*>@Dx3)%5%qEI`P^M5r4u9d{0PY zhl(&oLMOuPen`@73b&@4#yOo7aVh-)*_idGPq4UlT9CboSQ-`BOu5}_ER}Lrx7dOY zASBi@;UPAfPVLC2*C}`^$npD-6b&nZhQCJ0_BFRB=0Hg9Kd-Gqogp9UAPOwWd-`^v z-BTT87lEwJfB(21W8uLBfzz2LY58FQ+qv9tZJ}1q9d`>7!J)pnXe855ScclHp0vXw zqMB&`j!gw{U8EkiAqEqIt;+wtxbWmADZ;FuIDB*}0W!_rlsf>g|B3aJvioVD2qPgj zd?&LnuCV@_yLA%t=KDI4MwZ&@$F(&HWGv>@uzJppsYtA&{OQRr;Uf3HuhoDcJd_T_ z5dFuj*D|6fB0BYx-XkAK8F4o;MPDCWHqV}*G22C2<31d`weZ9uVh$o9b|!t-b8W4P zT`e{$6m85yN)5{o$B%Y9xF0;7YslVdfGv3Ad&*b-V~w>mkQxYpxlgKW;H0M=ms&%H5b zuMT$l9~43^ya6a?Rx2^aKFgI&8!Vz4C3c97jtAqe=_CjM2Yz8|64=}-2D`uQEed@x z^k5jX)^_)9uZg39sINq}J%0p{f$_S4rl3ac$DZbOQr6T&ZWT<5NoHMEPtt<_&;9** zIqgWW*7GvV42YF(kMgM<)<6GvnZ!@H+(qT^1!!knx6*8SYEH1^Nagcz&>Jk?7eKck zVT@euv*q}RDy1c-#yD6CrkgtC;uX5=Z)WqDt~h>S{_RLiFk<2 z*WhJDa#{~$${SeISp~Q*9)ForyxDT8W@I3rzN6JxEVY^=;ow#%wb+|2y?v%H%^D`t z0`L8EjQs+Ra0BF4;HL3DO7 z$_Oc<<|Uya<{UKaGG*3Tu4M!+^RGHQa5u=a>UF>M7q7ofFxfV--T1)D<}Xe26zdQf zjRS&-`QVo9%!LssuvPL(Z?;@AN0Op6fL7IbKAD2zTU&)C(K?X^z`s0>vniC7F_K@O zY#hyx7eR;d_O~EXJf5$aIpTHlX!f7xP{*W*dpG37u@y9R+QrSejs5OPmLF;QbmKmb z9Umay;dPtX&oRd%$;YW@C|nOlQ7pX|g| zC-8$F0OjlvBN)+cuJP2#BKY0vai%FbZYpu0nvrPQ9LzK%uWq{gjFUQm^n=K{NgCCO((2P9-D{QbsG!gFTTQOCIijU)YW zYlTSzUxh6AL>12aF4D_SVD&VZqAWh6(hFIZKL?>-g5@jqP1%Tt0R2{ryYoj0WsYgL zL%17GbN_{ZJu8$2{mwX&p-Jh~DktBD{&UKc)?6vggYC@1Yj#{5O!h<^Iwaxi6d+_8xzE}*s;UX>))m%t_dBbo;3@KRvJ00A_Ity{C|s1jT0a-V619#GWr6^XI!W1it2tDP z)}(8prikvU274?+-2xR~y@mG=#3&!8_3Kkg-?gHk9!@%r2T z$Ctp<4cxb_dDe?Pp^PLJAA_;gDh7NiT=b@GdIKlWJ>2HsFRPYtQvtpOBWP1FD&=$w zZOj^GgIo&_>3t>=9Wehk;qEns{g4*vA*7@uRKKLE9kkv-Q&P}@DC04l5Br-_Hc3H| zX!KI%F2(q9F7j`?ka}R?DIu}QwE}SqPoyaIUHmo62z+YN`;ogKC@Sm4u)^!D`4hrW zg`@5)gMSLiKd!|()AhenxYw*zD_OGM5Uvvz8$bSK(^a)mM>J2#yXGUFS#mNSZQ*FY zR$3hCH2B4GQ9D7(O;DQ~qHaVq-iBprcYc#KGyn+X2>poSsm67bG?0wym&kDZ^wY zBqMXNaQ5N@>GqUj2)wXB}FBO0)a1XZ`9bZ+@o5OG#dW9{`pmw@_Xrb*$Z^ds2v`!={kc; zI0witM%ux+&JHiv2alJe)3M>S24#oW+QV0^3^;Lv^On~;g~MFJABpIaH`EqIA147% zi-wA>a;2hGgrkk11OSjd6{oMOMu1C;`*esvLtXhL004a21OgyfPb)KzANK#NdA?Lr z1XPaGBc3YCc19ZZIy!(S05bpr0LC~1!2dhtsn9+Z005&92*7w+1OK<2t-(@L@(`cmjHx3cwRVwm?$N*`wn9(X9_S1E^j+w|K`^1?Ad z?Qb*=n?lPSX7=)XHmi(#oQe`k6CYAG^)SF&K!Q=2dU2WQn03nQii%-}R#ef6w9nWI z>ONs`(9lk`zb^J*ZZ*lqCy_zgXVfJP3w9Z~uA3%z7Yk2Im($8|m(#>UQ6UKR-utzy z)EbE*V4|9#+G&@B6GGQ{zY=dMK0~cH9{vr#pVSF8F({r1A-Qy+3;+9b{y_Bhq^(wc zZR%v=Y%RLfYsW8z(-4k0{cL>in^cN`>Fo+IsdlatI-?g>UfhrU8$;hAdX~95zQ17# zURZ+`1gk!-6uD5%#q+zsVls%HFcX5rVb=Kg#EqTA)R0chV^k3W1I&p5v7iAPePdO- z-SbJ4YiVgxeOUON9@0a5{dl*gir|78SM|1OB!)g-aGI};U#pqk1%Ir5L_9iAqtO!P zcgO4u7IbA8hiW=$oH9sz3aI4716S+K?Ld`Zrgw)B1lOSZlW9}9y(Q5_=R2|dlizd| z3*Q6Pdha5x?gZeS?i6d)f>77#s+1|zVcVuqYXJrb1L#Lsn8%`_ioO&9dw0;4 zbvz;5Eh9(!Q0p&y5-okfZSIuOrJWEJBrEDmbw$GP*up&M04dZp@X2H z0eyRSjt8#n1coq*bIT=ni)GC<=90CC&zuZ0@2BfNXge|Qqn-?E%xKGGiEXL2^Ay28 zU4;zYrD{6OGN2+Nh3BhF(yS7Ldgjw4{zu|Jvq@%|kFvR^;w4sEw$$^Jfr*O|X=Ti}=amrEIhZQCB~vA=}BTB-y% zUjAQt9pkR5hga|VrAQ2Myqe<%FTweJe&RrQt10uDlc?_J1?~i^izNTD=!M`!CeLen zuq!1i64J^{cmm0!kLNEDx+}xH+hVeQ)1b19DS{xkC15}9v)$BW4v1gHYb4OIOvkLd zr~<}4@YoB*kcyHo(kpr~0t&Dlg}M{ha;upscQu-^a6Nl7ihL5ROA99Kw*!@%W1b*S zM6mHaZXF_f#A!&W@ROb7_ZXPUJ>y7J)#HuIJ?cW`e(&3B23C;}xd(E^v$N7roX|z& z_0bqQ*yO7xWysmY^`6 z4qdcnWs2U(HKt&f?DN_9^5s`X3&NJcHfD2}JhdNf ztddAG2-ryPlXV911W|1D{lrYXCA;&!_*)*u@ptz%ve}w|afPJj9Zp=-lZxI!sz!e# zjgY}$MhKBVi3`U0T-9B<7At5%;tqdhuN$Ev@>yy>J1)+B@Y_OJrKJM?af#$L1FBT! zD@HQ($dm*!#>cqtUN$y&Dh6Yj^fsC*`|n%oYCH^n=(M1TfSoI9aajgt0z=BQKFaQDCm+s zp@Ah`U668+gi_B4&FmR_$sc#zWwXq&BH({~TJi7Ajbo_>^s!0NB$JdvevzGNr8rkG znj-Mv>beyRbXtQH#)8G@Ec!!QCf444#@;SS3KJV_!Q^7rf-<=ZRal+DTbMr%=Hv9l zi}suH%HLzsD`LbjM?@~O_7$@*U0CUAk5QnQ0mL*9!ax9GNrZBlpuQcgs>qf2x7gm3E}ThC@~)D!~3bEC^k-(Qu=IK0%)%t5eR{ ziQ|mL!cpJKt%&m~jLenp0^|q8zoCTfnV}sDSSGkzFO|M0 z9vZjQ)^M>(CNOR!;e(Z_DDhCLZh$VsPDxQb2!Os5Uvawg=b-s$iZmF<3cE|3FFCKV z?b*u%XPc z$ZfHEgkNH6#^K9g4lOmrc3h@OyrOoYo6~ebia%Qu{dYonsVjR+5oSanFQ#~Lyudci1B^!>N#t@ z>_XBRAFNXOABk$c;Fc*TE!p=gD7TalJcm<$gxtL4cgrWiaa6(Xy$NiwG0iP}>}l9f zs)PBFDHJ=XeO~kC+9;??_{=a1J>b%MO z;^_QnQ6xI~-8i<;9@-4;CNYtylFS9dR#l5_e+baZ)Xk@$k<1Ujo+f7m8^K`9MOH7x z|72}5P(@Xwb$Yc{c9|ANX&OU*UGQ+l`T#qz9$p=}dWG0)==dlv6Csb<^8)>e8d-9* z7Bu%uBWVuX7-xu5@>SuouFa`$#~>B{re~+}Vi?EgGFfyk4xoqU%yr6>o*N9KoB_7%FOuv)@|c= zL4um_nhMA!v27T4{DswxO$I?a9+dR2>*hNzd+qV#*(wRzIEDV~&5yNL>m|$rQ4!AX zC~0U3S!1k7?=Tfdu~>(&xIzqKnQJA5BFH;|+_|wk7-J*b3L4Pv?mi1p!wZ*}S@%)& z7suUx*ufxQLQXe|+X*HajTq?xV(Uhn3^F}*)VnXjwB9&`WsZTOI@nH6Gb_JCZL|Lb zVydvm4iZ(4!K6=W>tYkT)=&vjSU>QV_eI4Q|G}w%u02EyLE}23Zd`vAo}JWwB|`s` zkd=E&SrCqT$`X!Nij1)Qu-PS;%?rNA#E_cZfSkU~$S@lG5V>4)zy=QaHpKs9pJmCn z>t=-+zz?JqdywD7iV%DoI9bdL%n$gSrCaOW-zxmTTjn1To%SeV_7L?1g}&y zOoes-DtNU7yK&F4Fb}5iORQHI<{53Ty@Bnmx8Spa-N)Y@&q*V@Q=@}Z8qQ{}VS2OX z(yi|;K=I6gtsMM-Z6Iq?FN^$m61eAfqaZ~J%XFk3o5jtckT@zUfrHq7{obS{H+osg z-SA-{am24}TgarwbJv1Zv~JQCN`h~zmRjJ~&ELRWtR?iR>xi&>7(B#^D}q8%6AW-U z`i%0P%oc_u&#kl1V85GZ%|+2re1>AEdJ(3JoXSfgu!mLU1oLEBi6E2YL%^#SUGJvb z;bgN;wK0y5NlBA$B(xtl9>12f__DvObB~`n_73F6{T=AsJiFLHgZdgwpH8*Z=zJ5i zRzVD(irHJUv@^d0+hV#mD4=J|>`sNruu1f@V&wUa%-B!y(u1oHxC|!+k=W%E*M{%q z(RVtWF0=P60Cv80$|;fIPq#A7!WL<2^`A{VyMyLJ`qLo2Hq>>ZW-~@2Qg|-j5wn}J zF*dR-W`om24!aO$3t}x_Nm>pxCdqJ)2b<2%Z!X=-FRXrXj?xrl2lr|x1$Q0(KG*-2 zs37AcwCLkjZ``=TT_nWo3GyJ=73eJ^9kz)DSr7c69(Wn0v4-+pbDh?!EV~py?|?x1 zucQAi@S47nSuMSh2Q;_cMg1<}i}JUbMa9(xG0P5CeYfy2(~zAGJG3tdVLZ6ZAn*;A z8=;qfOF(yEiKCudz?Ps4AWLK38s3o~96b=?l+yyoma)suxU2k!>b9DrblKWSR#$%K zi&E{)J^c5eI#hm`sY}<5p&g-B?cyAq(aZdD2i)iS{VjiTc+4@@3>kp^_%4#2G+=2TN?XjL1m9_Gmn3qpFoSJm9=E`pS){+ z&uo3CUg7N-({sXzNY)xx?f5V4ZDu7!OP33_J-38`wA_~*w`lodX0UR|IE`%pz9g88u>O+8A^cod zQJv~gu6Fcg_<#aWivAk_4Md}vtu?-ta(Tm6)njy4!TP2wIOA5I)qBl3WW*51GT>DP ztozqH0o&hyvf~vE2l20}x;0-n7vl7C>W_0Z7Q{|^NIlI(=oM!XK^sxGnA4gjNRGC< z-*plx%HIyn3C;ibWj=mQ0WRGjp$RaK`nmSU zmET@_?j~ZBv1?%{R%DctxJYam*eZ%YaCHO=u|WEY&Xq+$UkzHnm3#IXUp}ras8r9Q z2cA8UvTTFP`D9*s8N-!ar1?_qU!_b@f=Qo=F^2D(afkYUJ69ZXVxgoXd5w@*&1>7q z%n%Jg{KUaBwbLZHbuT@7S{-=ORPS)z*sitIa6=7gag1pTYPhafm_MWB zee{aC+oa`wV92LqmW*+E`#{uPE6EozASYw;9?u6fA33bfq}(a!5Nd~2d1uOMMW<=7 z-{62?aQ$5{>vnLom0~7amsu^Y>8FnQDGt(ihSmBzM-jU8CjXa7@IO8+T1o7G5s|pm zBv!ZYjRpt&A&mlJyg5RrzScx9%iXDIqj+&tx0G5ZrzDakn2D7Wt>$|r+<=}wRE68i zb%pjDx{CvAWHAV<@k(aJ!6DJ3Q9_s@wi@DeHyzKE9VAvw785sk?_sq&zN8xk$D59uh?GXz3DzywrPwTl<=Wz4CfE4=+S|1YYf1Kgb!X z6?FAk03r`sWY%m>9eq2)Co9GLm(O$bd`UpfXevZ4G@Cf-R6b;`j5ss)#L6PO6WeRe z{Gu{uTVm?Jrc@(j<@9f{O!X`G)jGk{EH%s3*DiW>K1HTndn3@z3!A3Yb{epiaZHKb zmyzg9n!kgL0TiSTkL>K$SxqaB;Z_cto3p=e2qb!1Fd^Z|>VmL9g+*$H@Q;~kf}fG_ z74?1Yc+R9#B%7~@pBa)w2BQWOGky=hHyBF|+tK4Fr1@@w@%wLA!s+p(GDKj~EKb<+ zj=|V7GNbS2^#?yC+de^Dp8}Y>(ADot4LM#n$NhpD4K97^MX-w&d3c(oC}Qizy{P@* z+4&GJQ|6UzevDiH_$(x58inhGMy_)a4f0DfAun0HUZxTup#e##j-IVJnWz^E04uSh zS2)0fU~C&=FzW3OwXCZz5P5wQe!wdqvnm=)+u4pS^S&Vy&o2XC#lAnv#s#+OKC|H) zadT4433xN5J60gS^{LuZ^h6OWtWB567|8Wd{1|0yr-`n)?0%t08j=FYiqQqeR(%yU zqi&TslQDlM$?O=9(?FmSM!6 zto+wmtxOUTHnU<&LWBHUsP_>eQcm{OAa+fR$AmW)F{HBjKM~Y2h7_wPLKQ!rvpv>b zJck?W`=3)x$ydVyRuPL#*^q!Pv#!&36R;QQ=zE zql+_@im%>xNF5(kSJi#QwP$VnrBV4IQ4CK!G*5mznSNwVW$@*%%iW*3n8o=Mul@#L zDHA5*`i-k-H-Wg5O=D@gcMl08JVGF=0g!#`W!yxL^@)mI_ z>uxk6%6O5|+d6&b9SJS8uHNc7q5Nga2zztV3X$J^H|0UJR*vOA&GgF zSvUO7B+kVHSk~+~Zf_YeTg`Wm*Z?J=J~C|s6sGwDu5TG!OqaykmsE>}VuF}OuZ2?w zNX&_4uP;diKc>bZ?_~arVQ+MH%R6Gzo>22rejO;Pcfx0Lk*2J*j2{=5!ET`Wjmi)o znX>+>+iaIxYxG1dF+PWK=>C03KLt!ZyBcYP)HtYD?67OZI=>0R(ETS}vprCYsSr{w zth_%dpzoX&ay9ve%$IVvy~b7Pc#|-x1!s^}X2-wxNXfNGvID&Syr_Mt@(;Rl|0@xf z;|VckNCaq5j><*OI@$pWojn;nESlm%#*j`#lsC7gD`i-2630#eUbvOfmVeMUzA29H ziHcx~F5q}8-M3Ez%=10#2^6ft0$nTVy!+JB`dpKut8b^%%lAVT{`_=;2oCXCV`j1p zS1yGWGz{I5?sGG*xvUVf%{NAU!j3wuWPqwnY)b?yjvfnhv9{kq;c0*%^o`S_dlH(d zN)*9_F4ABM8BDYcJV9SUol6$3etY4c2hN7bxC>aau7@+!b)S~OC=Pcx0M`;OctAJD z^?+(~VNrLl=e4K)Gk^V737h9@iqr7&Gkp=h1IA}C3+*FA)Mv{$gH?{!CrLXLmhROz zak^P%-mh$cv@1vpMV{|ph{V9opC|0hI_enYv{x@qTn2knJ(%tCD8;#vo$-=%aEt~! z*8Zv!%bZ+#OvEARP@w(}J|uU0_TeQNu;w_8B#uj>uY#m6meLieg}&YtlNG)m+g~NVJ1u~IH_YjGLS0$Q6Q6$ zAFkM?B@0r>@&!=lvc97J5%y=JcLU5)bR!adnp}-(shR!rYwLh6u#5mk^$w@`HV zNWRyjq(7s5q)^Q5h!SKwGPGpMSW6^OA;k~yG@Q8n#+|}3-O?)0G3OTo#5tp6pYJz??QI}SFWOe z`KQ0E<+{Otw?WzYLKK6caC{^R%GI*u<0#&6oCu5YTKBCw{$76Z!O?g8h57NiVI$ei zF|r8X`<5zbCgjpUbsak5Q`c_aOmcqznL?sfgR>K{s9|_kS45xS@E8E!4*wChTDXomT?$Gy&R-dt`nup24wG z*LaPB#%wQ`n!NXzrkx%SF8AI+AGU(K-(wiM?bAdod2j2qkgZ>Ix{8#M1=HVF4gHn% zxH&eszH?RT=K0U>;AHXM!)<_1&iiKTz4K403891f7rE0H%}&t98-5UD;_aVZ!&7W! z8VSPB+Ti8239g~j1VJwE?w@P)vR-p{)=3S}1&Q)TDXV2=zbAV@K9Ef-H@{g9lyJ*n z%pgKf2Z;ris|)7(_a|(zUEo^WMFMXbXKgZreU;yg#D-d<~sXT@$b7R3U_H);Xv z`>WSm9w}x9ua4rsIAv$uw;PMFQ|NsFg^*^G`6?A_D9$&DRHXn~nJboebA***dM%FH zt^PR^;mTGYYa$2s?yxtp&qvDd-W~G7K~2CpRO5)eyO-qdqHpzWUCw%}i=WV9Il8KX zLzSWRl8*O*_=my=BFFa~o7G7fg;i|xd5zzgK7}qlJ4^LwIT4`5R^v{E-@2El*=STM zR!)(9jPn09`K{0Y+-ke}doBxImM(Q9FI&FtC#%;JX_5utb#!96uLNMul@vI4rGGwO z?oj?Ty;OO1z0!Mm8wxVXJ1^2zT?NWhv&7-zWTK*_V)ag!=?POe!|!cG$=! zZnKV_{9eAV4&8~k@&hFt3m)Zsug%p`LlOJpaB+#c0qnz-C+C}P49!p?j$au1CtcNa(JTxY`ni#WXwcRjeJ^t9Ah?7bn^6FQOkx=7|va!?g0!d?- zv#l;Ha^ziB&FbR_evIrTSk>^Z_3lw(tGUVe{%cxPNX$8b=*O;r+F!eJj|BWj5~z*X z;1B?MgFWt6ZprD)Uul9w>fu|DY~_ifjle7_=vgL_MlY48-HKu-*T}AL*U#nx#kod{ zB@EW1&e#QD-~<1qGNgVgV9k}%c0$ehyj<+4~9GuF!mUgrx-!NGD+Rj$8m6{MjP;u+R3RRVHJCXS+@(V|6l`T14>vDA9 z`}H3MdRFg`3+m)P$vKf-m$;_=KaQ?CuBoq$k1@JNHw;iv>25{|2nd*TiGWIXkI^8F zNJy6;-3_Bbx}>|i2BXKz@BR0F?%keqo^zgi&pF?)$h}|vqq3QWVfZ~v3U-FW9bA=eqA+mFm^{}K9*7bS6f4z(N(~XR=u&VL9o|Jr! zlka!{+2$YZU-zen4!7sGp)+=u*K+9YD+P&d1q;9v;Gqm+4t5QK82@|Cba63Ge9^cG zDv+0i;GazlaGKFLL{J?=jFNHVod^1QHu2;>rECin>u9jTo_f1Op&-4PEt|>5^Pia16MuKgqPdB-=D!_P+=t~QsVCBMrAZp zTl{768;*C#nwi*dyX3o$%9F5FwroKc&6XEQUlGpQ*0&8cePU-F(-j7Jl=gd?<^?fq$+4&58gORl>c;}{@A70J-9SY3IJpi3TiKfHE@v9aV0y{#GN~!fCjefZ z%XgR8x`_=VPy)ESxAiZ&fq;qr77DuQYU5ZS+y*u>ekr1eF`sO@|nKd)eL>Rj2!vX;>4oC0% z(l*NjKE^X?o~y6Nk0rdp3tld$y)f;sU%x!BrREr)X zL-e*i`Bz`~OkaxlcirW32++WmRB;tE>KKhJE^lmd2+nvfFgK{YY1FTOiPj~iDL#_a zJ7$oNa}Qq};OE7Wr(fqcWq45HG507bHM@Oju^gP@tAjJjNi}2Eb@%Comx{JShYkEDwWQO*Rt%BvIP7J3S8ra?EW0S>u0A` z`*>1UY~j-?i|-8ahp@9D7g2i?o- zZG){`mYF;U;kWNRi9;$%^ zuj}+}OS|QyoUIKXSdgzO`onqHVe(E^ZS+CGUKmV&D!V3hWvpruKGkw?Lf(OMEJ_W` z>(t!olqxF&sy)hy&7@twggFTC9_5q_9Lj>m_VC>EKdWSZN*V34oF=zFuvuIo=rvHi z*>2Ho^j4Ew6Z|z_yGlXsUqRk!905p8vSA$k(^i78!W17t$m$5pZAn4LC&i`+wAQ5% z)54+#=j}g@bXT`$QP+vx^FKCqJ!`2}d&n8onF(L#?-C5KbRMS=`ZX?p^ZJ9V^u^;s zk@d`*7S(Bo7jbAssL-py#oz#Hu&U(^X>YmUV{B8I$-c>3A@jTFu_v#8=hQ^cB%En@ z@*>nuobY|nd2MyF0F5tl2gs@+$3SrR5AW+=JhLyH@8^BcVxyf*56B~=zVmM5*%V2P zO_B_hEo}o4+rHvp3jzD+xpAT98Vn@nSTSj&R`cK0^&P{3Vc}eV-Lca?XhPmkf8f}9 zOK%tX*5{c9!;jv&FGeI7I`iAgYN{{jK!8u>NwP#fi9To@;^sD)hdSJ$tb#fmpx?5P zL6z`3G5~^@QuNg;KrSHoT8Zc4y)=d^ky4Z|ZvV{4M9RUua9IMt8}tN*q4qvy z1Z^7E>eiYmO0Y9R*VJS#sv3Zbyepoc_pjY}q0&3TtHBi}=qp>(O%RY29el zz(Fvu{-fAqtj2E;Vy#`2DDUq~LbG%SY6R(Osa)#NU%#Oc$Q`;$E(^9x0k>=NCgQddox{2^7M`-?W+BWjm>uAc3Hbb9|1x$>M=ln!k0PshpS7-G4;B0H1EYxtu}jP!;t9FW(I5f@|m8k?eS)pF+`HuJ2=?bD}9+4(L?Q% zZk7SPB%Z~%G|KTkH?i9pIFtHwp7`@&K7FLL(C@QVSB9l0>2L>i44CR%5W2FNQpkvAaz#HgySeLq<7>o z=5X`8OS+5sevi9j5A_3*GhXGbd7DK3Yh|Wi zT>>DY76uV4v~GCz5$?mH1o!ARh7DgaH0vSL{qw^r#)eBt8Re-KO~@~;Z{$(KBk!`@ zBrw3Z`G?5)Imv-}3ddPDolEZ%&bitk7{D@585W$v*?hK{W)HMJ9eQk-=ne6ohdAlc z3;^H3m8f^{bK?b!(-_Q z{@A3Qf%C601WHYYx$65ilTfKDR)yibm$MrK^U;YwG->D&M+3dg(9iML>Bj)gSs#nr z%-TZ_*q>Z0_Dz5fzHl+JVnH*e>@(6dyk+JsdnaaHbg&Qtx=0@=kSPE=#VjTIp$ z>f{RLdsC>~UGS4q^0lU{ja;ktQ-x77z{F#?pO!Wz%uYYBel~WpBReBE%-XzKbR5q9&di6XO+FE0~p0A~N zeyMDWbl4p48*%bVK(sV1f1P+W;WT5^QEg8RnH0XI*OPs_l(0-)HFBI=e?zjhCJ*UR zl{P7#9tNNP#IOXQPCDtVjf*%SIAi%7CUN5AW;+d_>HTx;`4JwS2p^;zF;(JhCTG>_ z-y~Ox*PML3836AyJmbTALsiYAiL0ab2)NOcSonG*^I*=btPJGPpDk zJvqL=y~Pqq1^IfEbAc zA*r8=z_9k8Je8O+fr?7(<&u+&9DQ%G#2LiawizPx-rM5mDl)Im zVSn)oai@CujAhEiE8v2lczAHX>HTHi8`w{mVQMcWTwH1)bskd+?|1pwHYtOx<=Rh` z78fqYog(JSqV&fRJ59q?@&C3h#ru7PpBlLmA>?I~(zNTj_9M-|)=4*BoP^CbGa?QF zf4kta*siU%gNs1Y^s88vESCDUjXt)e9aKY)8^6#a0gGNplgxF+daEvCd2XhxaR5R3H7UF!}7*XB?N6 z%$q!ctFKDvT|jsB#rgO)FC~d5k^JHrY~8>!WGra_{SnRQW5R5BxaGzloej)h+#Y59 zgQ(b%R71Z-P6$-bZ)i+PdhXY6&SPfe*RySQ;D{zbWBmNxH{YwzqKvu@GGo%e92E+8&|~|BR4&fATF-p6dB-SPvxY_Aq6p zHG4;@%~+GM_5LH&EA09}ox||_*%i5+X~@%qH21Ozk6-Dsv`#P$b!m(`z`RI}neLSA z0&6BTx0mfdC>BB_2FrxyOioQnzrc|$=D6&Uh9055YfLLo4V`zGT&2b zp)+=ImVbfSk@3!+FymnWcLA2MF;O@3+aQKaNVr{rEbi-mp*J0KH;Vr>OMLU!c>gvW z3<4b+uMLaB-*@GurUG>;L|@@c*DeaTJwGyRe5K7%00S6|K}{}>3!t* z!zilrP!94%=OdaWIw6e&@K;p#(!Pr%YHlOg9G*Vj_s)NBA$``Uu)5gHjyRn4f_u!% z%uq|y)KTwJapo)O5^lZCN4~jk%_F3DhHR}Rf@TZt?(wWrz>m+dIV4s#iKccLZ(>tG z6V1b~_z8G6V$c6PYK&GV(|((36?1qYH+qh180{$oJQ2jdI$Mv2`9kw>E}ywa+nv^e zOh`0VLT$pu=c$S6@*?h&SmmKnBBP_t^rNHp!uJN4&p{E=0KDhAL0?T*2k>N;N-|cT z>Um7V=B(cJ{<$~qGWuYyo4BTps7dTSQ=JKq_gR{7z3t3%;9ulh{dd9XV7x84_gu_PmQYrza^jS;!ZpA3PMM#7IO#$5c8~ZN6VIOSk@u1W3%qAhedL$^$;42cu*pO(dbW14PW-ek^n_{GB4Ce!D z$uD0!&z%Z)@czl3*mly5CQo#O>mcw}lK|_lS{zz#J6BTW;!cYvBTz_j8k3 zx&%iI(!qc(lqvnWby?i%?7If^!^(?ZZv;&q2MPOb&+FFjwbA}0D!yHUO2@tff`Gx3 z$Ayt;$UY`#?kV-Q}nQGoj)#X0l>o*XhOTRPjVc~W2o@@QlKASt3ccu zD!dk3quhrxFF>-}+AovvBLf29CJiNVZ8Vh6As}sA^+mVKN74VjYAK9;vpuiWIQpszXHM+5-W|5t$E~4U$yKFsGUW%836qiVcuFQbz zq&H14(4R#e1Yt!esL5r{?2Kp8Oi{~BdD72D z(4>Mb%3go^D1?^}labe(Laxi>Zr*YqcJnliu=zN~ajE(Hv7g{O*BRQ0a$?zpv`dJN zcBiCr#Yt$MgUHvr)%BzMnr5`cRSWWT6N;s|Oh-Q3tFI7`@Wcb=Qp4b@>;>vVRW5Fi z#=druHPzaoTlu)%4(nMNZ0&-sA-H2dU3NWSVStT6rR&Kax%Dn>KqbCepgZ~{EkN=! zQha_>@fRD|TI{LV_GG3pL}ZxIMN)H)orm&uV*c*5IYn*qh4o6w_rJAx{++`y#o2cy z--2PSO(M*s8MD3_W>JaD4TNE^5KXS|1>E!Zdw4BqwFu8z-k#$MLX$GzbK=z_;EC9v z_`>>jtMmb1$d>{JmM3)3f5kQTf7!ANjm>N3%66AvR;HZqO(JH~>THMVUtTdTJ<8)5 zZIAJg@)buWu-)pDeKWjn71GZ~ri(8p8s;zLHH5d|be1_OAHNgqJSW)L-e#F!4%^m> z7CA_!Kan8EZI%I0Jph6gS{2U>W0(z+N0u;^O#-(Jes!8=1sOw7<1s<`SPv1u_?iIW zWl4b*an)FqTNg7-%eUjpSl5Woc4!BEDBKeu2l^7N&P3b$3My_cN%JL;>b<_k z4u^_#j_17#VOvSz)Nk+K+Cjc)&JBI3w-%>2p?Bm0fU-n)Lc2g*&c(0B^be^hMXO*)CuJZT28B%<>I}c)oYU7D}m{g26(;JFQNIxp(G)^-&dP5 zd2N(SnH(*;dM`4pk>S4ko?4t8>waYdf9qJz||{6E8VUr7i^M==dcxk^70ks5* zI=)X=N=P#W|7>{fFUnfhnE&Lswdoab>`$*crAK44T!?xtb1DfdcroHZgp&H&MOnI$ z7Ey8pq2Y;D2qs(tfx1(GEMb2BvOxi4cuKR6d>MNK9hp1Yp(=8Ci0>!VgWQkOw>$i} z(yM`QTNeT@q;Tk^Hn$y3vif;%?`%KRC+<4tgylr*e4Xs;Bzj~rwMF!1h%Rs`=dua1 zInZWaT%0&!wc|a)r!#87@EwhmFK1T+sHuTzH9`4zT@piF`xE5P=Unta<5Ew(QW`9P zW2eccZ#w^BA<7K2&9+w|2l2_Dj|w-=s>i3kOJoq^1gSd&#A%j4fc=~0vrjQ_MsOhn z@FLr!FOk$8&)^pfTeEm=A@SLLyaTn;{c2cgn;uG8D+=jZyBzz#r#ZrT-{Kx>dcB9s zDs&f>gWGyHVPL?`%MIS>lApm{O=z2Y$G-4;{7Rt zfQ~1>O1Y^A1-RNUWtOo5jnA5K>>D!jrH9{HR)f|bd->dS4gL0aUDDdKq-alxrV-sL z_n1Cd!DB06LU@NYQNpVB?_XU*$dP1CN@} za$b;LrO#L0pcdKr1aK#rE5TQ3pG^U6tVc{-1=Z9?PTV#L&z$Nf`@>KocS+r`Y- z$zcm{SnyvAeGb#pN)lD07E3ZGzMBM1P@IQw=e8c^k)X~!${MY>-M%vrE zPoGF%3#=nE{5FoOnf&-YT*f_G7yG1LaDfZY09mCJ`|^1z{DZCxzLY_p1f6%Grv#bA%Q|6qHlvRv z5ZK^b_nnW!+lDINERV8M94J{{IX4U8`Q8trW z7|c7z{h2^@@2ctH!trHrRBlK-hHE}LKq~7ISgLvUDEx+`{i)0-rfAVC^NT}iGm&_(~)5e zgYA_O6pKPC=XWJD()$;o10KG4cUdO^gz&QTL284mc2cDqJ~j`bC*km2Yh3@IV`;Bi z_tP)-X4|OLG~lZQo_6rsAIAEf2m1fG$4@)22$jAFt5oGK&!X`uR@kWp`mo}pi62^>FsYnR1u5-?DG4BW86B64}y*Jd8{^FI-Ff6sQs4XS3TNBWTIX1 z0!(iYZlUd+n-kjBm`Cz&IK0!m6a#IIG&!5{C6-II)jb#Wra!=ME=7UMt`;$A2BIrQ zMVu?sLF0jJ9SkK<`)XEtsTuh&veUhtaS8x)?!W^FdVb>k@AAk*eu{R;>v7&`C*#J? z%rXRtAI`rL^-S=bM7LaQj0hj8<-YGAAv&nca2 zp+#W}oj=uoP5BAdKn(Q;(<7Gf5hB;I=w^rxlZKse6r0@ z8TUjfwQdtT4>%T}0#P|`dltZE0h{%$x8j{n9+|;UHGExVMxqHm<CQ4r2hCJlUy`NH5AU_#sEhK%F&ho6y^D3w8nc_=`XRnP6$-Vo8ruZSXH5AQs zi6#04aGKqbTeW24daC>MV7#pZE1vHY_aC^ao!0idrRiQ;kunEt>VCjGpJ zKaFZ-7sI}ZAhP89iII?_0>nKbCJs7QuRrSe6Y}E<-9xjHG2*^p`BJ-AP$FabOTB1$ z9oa}L=-Ea5S_I=>;luFap4nD(-R*t7cq5Ix>^H=LG`$|({=CG`{LcnUEf?H=WtWD9 zgI-_%4U;Rv>nt(kZ=+oh5_B>=L_)uH(bXon(EDY_cerromN)x$TcBR=%~H7Oo~ktq zRbdc(n^?q$vh*Gwf6}LA3rEX2pc4!LCwKXs$F}hqLCU4O}lMCojDbSKM&w zG@_~`;k(!9#rv;TyCHhtnk^Hu0OZo2^&R58Sb51@$f;u)Z_xk@fN=K5~M| z_F#LmnyAX$D*6l48OF_*M~!3aI-kbZLrvm_%XQO4!@ac`fsQ?oMx0_yPXKz-Z(1W2 z)}9kaCiXteW0TX-2V-N)R}a&?n!DgNZ53_~|Ii$V+ooKB>`^CaZFqWIsn_)_HFfOY z?BdsPO<3GG;>ux`I3l%w@b-}HT>mn^>O4u3fthLic~6aTMD+~| ziC`z&1O1Kq?`U|E4-=j0r2e%chqhYHj#i%(3)dX*qf)a*>b46N@e0kA)W;RK14n=% zpr8MMRC~$%!9$`W2bZYiI7rCV!UG6kZIu~D+b_V3I}OF4F9a;x9Q=QcKF?rsEB7mU zB<~)xxMAHb8HlJuANRqbCPgDPorqh;jO#}>@FjGFmO*A#LsI*B(mbpl4=#-3(FcQE zpDp=bK4n=tB&cqHh{!SRDSWTD!RA z*#~bO`TdH}8&mQ(iJ#;f4QEtdO+VK4rj&uFa~Qm)?_%)wcr3U!o{W7h48FHz^|*Y} z$r1!P2fzf$|fUDoKc<{#lc1o2$sszB7p{jkA+M;`tQzuUzM6P}!_Rd5PMdTDO z_lN0XHH>h)NxIy&5N>>GzTWb_;N$VBh%`Sg%+N=RWL5Gs3$B9R;uz+Yj~;y@;U}z! z8=Qrn@6xxl7OwtAwu-2EWiMwO(=m1iRs@-6h9~<{LI1nLULE6H(FXfsH$9r86%5uknk6dEN#R>L$m zJ;W(y2}O^@Ii?(x;Lui?hedj)*$T_o?p+>wpmq$LpFgU)ahZc@I%*?P!BBDjo~nVB~X zZfezY#<^BSH6mENq)439R@XFMNMYjG~ir0IVZX4E%Xkdmr?6mU=UeU|iJ z%>6_XVhjY+0DQ3N*jeeoygRf8n{_y#`ONs&}@+iC?9oP zsa4TBG5Ow$Vc^$m@G_}*5UAEwd@#5moFdbuLzRe(7E(jhs=9yo-ediudhJO2f}zFt zZ<(so7X~J~H4m;kcKgVck5~Fo-Uaur>AdPh;d;gPyaAv3MBlqDzWdJmfbz!|1rHa3 z%lQ?+lV1K^p=ZjARQK-(j+jv@hf3$>($8Lmw)uSKAaNIET&%lI~k91_lR-87tj zKNW|OlQ}X>bag}igMX&`&F%FLwgAB5_Vhz}q>u06*NhM~h4+K>(rx={A8~NL%7-j@ z@4V^|u4({X%|yfOS2>KIYdXE3b#=RU760YKbdHgn-&@Y;y;AjtAcj_^^hLG+46{w} z!BjDPB{Gey$}r+N`<#BN#P=4(g5~_6f2T&ZEj)F#m{{R!966Zx?}Xdii>K(wXh;y;q8g8?0wFiXfnsKeSo-;7rsUAlr3IPz}CpXSZ~& z5h+f&ID2D|`+z~5AuDxfK45-}5dVw{A$myVXOk?=Fr^#V6h*TfnvTHc^shc!1;6ec zah+w|H;WpRIG}4Fzvoi*H)AZZqi1kf+RIpIpzQ++pPN|w1dGCBYTUMo3Wv#3k1VJ< z>|lf|^?dJ-AoaE~qB6^B`b)EaGn2AO?0-t{Mm-jwryWtTu@J`RGdXhO*mrN9(SVPMvD%ceyt&n9POs!J%9r zr}yD*72$Bl=P#)sH7N}Hc}+k5E~(u>%v?-W z%VFe?xBfI9z^it7JP>?mTy2b@1I2KW(tDW+2KLy<5%aU#Bo$)q`%s?86R4A{&e6i0 z?63E$$l$jJjD?Gc0Ej7tbu&e84UP&Eh^1-Z(RJy*7n*Tv=hdhBBb)tLY>A!C)*|m; z;RpBcCP!9H3^b;syg<4SLM1-1foB_OZ!j|Ot%E|7@)=%kELyzpIDg;Bv(E+m@OOT& zZ`SjShG%WNms>m(Fv1c&?I`U}?%v0SW0J0>ko+cn;8*RPxsFws<1|5Z%ulGu#Mz$G zM4EWQQ;InQ-Wj#4$>`Fn!g7CC_SJepcyf=;rMN19=-UUQ0tR&7>HBWqjst|4A}!XN z$DNxZyI;&}E^W;k;Hy;&ByjBB#T(;Y3fg3|(%Wl6TY)DNpZ7P#@W z6Ci)5u=B<|6~-K64+*&dq?9b=rh0GMrS1xcB{WU6E`R~-h(U%!?bCN^GV`X$;?=U% z4W4Wm9ZqEygtav~xp4$xG6G#b=A9q=CI8#`BPCD!>hv}u;>1;V?l-EUEiX&y&#u`c zVl!+sV4}!`%#Ee636>C>(f!uEy!w;wR9;E7sY86;(aqZ^zob@FogC?s69xO-dVW;> zSqngf-Y8u_9-lAacn~ilrsIlMCXf5Nn53Tehj0~4HbdMS=i~8T)@sKSQf!{E5W+c{LR!qaknbKxF6Ut?+%>fWJSD>FO zSh4LjWuTvfIgJEH|3OrP-CvRrhDzqUFXW*qkM6C$n#Qd-7xwq%o4c&GsI;cTeCJqt zl?JT()c`D_XJqUW|z^7-02xJ+?=SWg@KQqO>rk7xfNtq@O2d`H^%C!-%an z`4^J}*SED72b<1UW$ zeoJw$iEs5I{XyGVZ?|DQwU*6n5+WD%s*<>qjTpo4WT}1EWz|9anL^1MDlp?va|f}U zcNzgJKdj3L13f=2D%QRLBht1#w=51= z!EE^OoJE);4Lrif9#P*jqAAu{>f80)p{VZg3{Q^14tb#~Sjqd3)tgig5gs?r0^{wJXB~3|SmRfN=^6f_Ui*(V_6 z!tv8{U;BXc>y?KG*xuD>q$Ith$#kC|XF3JX&o;z0w$LTqEsF$@y=`8-AoBWC_Aq(% zwrkt#bjBqAD}!E(a8W#28Bz6YLkr&+DQAEpjOiEy_b)Waou_TYE80w&^=Y;mZubCzPX&~z>bC7=_%Z+Zf2QHg>wDu)Sh>7MCvNVn=ZmXXjO$;dcbH!VpqpDT{ zAyuaCMGq)dRVLxq(LeJN0;C5$K8j(t#y| zd*s$2?;YOhm1fzoi3n2K7H}=iktA&5Tgzd7UP>?Tm*j+o&CPo~+yl!+(Vk2m*m5+T zpHx6xlYZq-fO-8#=BhOIw}E&BXq#VaJ{Zfg2k+Tt7x+qyt@kmIIzBbAl~#*(Z1>61 zTm`rBT@7S5AHHw*c+GCovjp_MV}YEs#YMV%1pF2DHM%V8<$IaljA=aaApv800!_Lg z>)ma|Ey)XF$rMrkQO&Vwg35@LItnKSC=-iYL`k)oA*>0oN$VB)!NAa^t%7t4L7=dnVl+NC;jPosGuKtSPlG1$7jPP_@=Kf0|#>~ z0no8V3?Ojl-OxSpOW)n`gdiN@QL9tTlOQYPjFa_ezMxNCI8cRuS{KF%02w0{$ZZ*7 z`3VyBrYXN<$FVkFX>Psu5clAg+;Vr5~Zhuivn#R;p zU+g9q`*ZInuKh z-&A@OdmMkU&zGBI+UOACwNic#<^_Jc&>gBi{jyCH?tt17&HR;u_26awHPatWzemdG z^XmzAoD-dEjKij}r@=g^v(oHVI;%g%9{Q>_ycebS>3QrUDMz~fVs#E!8W>t0^E3yg zBm%*onNnk_K|#&hoNOc-^X46Jm$+13Ea`XTSKzt)NIZeQejW1Ur>(6 z4-c2#6&ZVcduW&WZ{ijC$+r6G=MK)pzwHZiFS)8NJOM0#;-aokLNcuJ%$aKdi)hSi zWDs-dwZpBJZ0s2hQ2~ETG@Y|5b1EhX8&^saGt zLHz8b-^w;f9n`+^L!{E256GpHL^nU4LcR7KndB5)J&AV1xC%Q~`Uv;w5<)}~wn<`? z_cmtCGOzI=2l*9ED8`{L*8WBtEX%?)!_o>**v9JXv3F9foR;=|W#G#}mCx9gR?39q z<@z1erR067Q_l-dLcJunkXD&bFG1P3xdO($u&93h(0M$FVYy`^Pv3)?)B0`|2;c!32eQ4(`{{s zJt_2Jzp1pw^#45zQOIOZt7!?+RJy}YPC%P5pCad=T!9;P=ytTEctFY$g^&dvvnWn` z+DN#JMhbNqp0@9gLIIrAQ(phTq|HT)P(wfhb~)9rXA8Q^$I-fCnktM$41)ka3}C*z z3FErsU>)u(K%%krqIla2 z139#xr@;<*`L*0Hnm2?5_=7vJe+%do>Vlh-7k)6%mR_Fv?TYbnAg!1yWTv?zrPF3( z6Dh5*($oP{*+fwoKupju76`a%MuojgI#}ZjnQl3tD%Nwv$1rICQ+w9d-Aw70ygpCR z8aXQ(#F_uEb!B)!zbiS+`lmDVY#vj#E<+a*$$$u1@1HoM*ueJLkD*m9C15$U@u>or z#COPvaEkrml8aD1bWX6n8r|C0_6Xn3UO<}oO{*|dgY ze4o|K0zB-MHzUKzkhJ)LdBWzeB*-fYq6AuacIZoD1aHRm+qn}$|9i9<16+XR3mbZx z$*64>2(WF08U9PIxQAnaWZ@j`0N8{Ws7ebem?E97INInuqg7JR%&>nHBjsdbmN4 zE2IXSey!900tEtJo*Ap%hx3(VW}D)TV)U&rKtkGyRDB2ypqY2ekoybkakukM!Q#=iRns z@OP{va{qt+D|qLVNBbR$QPi`h&SP`FWr_}farJG;Y%@kAPy!;}{m;0Fvz?VJStP|R zqGX)p|7kNK0d-AN?dAZp%L#6WINRADwf^G1|4e3DLA@Ar#cR_87|E+@F-_mdRMH%h znXcSv0~o9^K}Le01R5e18b1U9(*rPZdcQ~L;iyrwF(joEkYm;=Kuj9rSRAvg-i5jY zeefgD5~2CstZ&(zQ1eInKWsV%aD>Ru|6Oa^VS7_V>{ciT>?^2r7Xxy3tbc0Rk`}jss7U={N(n0P(WvqVYDE^!EvpNcEa?9)KW4cRS#GPn zPosTQp~jI|s-CHd9g~xOXN4UU2cibxfX(|UXQi;0AOJgw8SmqEMQ=@Pb9 z$J>COx8ZpEI5O-rgZYpf{ssoW16&+=+E9`Jviw);I#v->FX+pD_`jv~32(^<20Wtc z9~(j7XEaE~n|7FtR$e(ept&Vg$GDP|I7kqBg`;}M`A&vdVl6xy=^TN*%3ps-$s+T4 z^yplSNhYCa(sqYm{+L%;0zbO-{%YOZ3yi`pLG`BS<)erPiP1$#w zuRHy161anK*rk7;WQyrD?DT>)G%&0lO=$60=>lcjuc#~=!S+le$UmfBCtXkL>w}}9 zm-ky6q(pdV|Ktn~VVtkk?t>O>X6(BhS6)+YLnj_5z5Du@>p5QsZyr^slBGcHV-$L! z=h3gOLseftvk$*yGL7dC21h_}xiE`Q-VSG`6)WV`+Z+fKPqyRpUV_87PnaO~6)X_F zP^6!xDV`-(e8e3j8W)>9irzm{P|QUK4eH?Cx}0!Fo6|+MhQ5-*BG#VG6?%0ELudd{ zwNVq!j`6Owm%0EcmGE`1&ntzGq_1&aMR&`4&QqqyQj=aHQrz$6Pm8s+o{dn3u5;HE z4%m`H*Jk_LoAGh0TSyhwJr2sUH5Ae*L6z{9vo<|)c!%yZ%_rq8Zs~+&!AEUBh#8ce zj|-}HAztM(v4C^gs$R95(KfGa4~(87hybKj0)`&|2uO#C#PBE|)?_kNDgeDXCh z58kNwNw6>7)!hL5nU4K0>h&xPsrCdN1-u_M7PK)WRHk;3OAVx+J9Lk4Ujlp#()Mjo zRo^~5a#U=Nz96R@_7d=ZO*i+sjtj^^O!g0T?XtNn<{2~eU`z0on?&A2O0Pxm;7Mpi zZoW3 zL{@|%k*rX1__O8>h;Cocck0_0&gK8r=aaV(h~o#`gc35WP}_POn_*LA1)3I>KAFOG5u#e*N)sZh9O}VDx2|vt4VRKnLF+Cy@y^Nj#u9Ykz}_ z7ye>7DM@mL^H)nw+iILbv#2z~m?7~7j+-@s|9Pu4 z)nMSFHS*+$CPrN6_UGl$GSB!AEfR~NQC29cB5Q$emxio0|1$&o+h}!ecUcrAV3{GM zZ?N(H)bj6{mP1gE6W=l!2-MW0@eFnHWsw!Z&}iyvP`j$f zibxxH0wWyHc~&iKn46M#gDd;DW?MSW=ZkKbdy2&^V|jjhL>>T38P7`zcOInk z?O6c#OT|lc96E!K3#q7f)_o_d@#%}p7=h*ospqgmN`@CFXDpBxHCT%BJ$>9(@bYY)=)kg)gxh{x4`w6Fve*j6a}#nLtG ziUAkLZZo1!l)(j`9c&Fk<(C9fb)+)!O{lG_S2P(k&76HUa>am|?s#PxXfft)m6-ex zgDDFRS;4L?hzJQP!0F-cmCB3(w~1FTiSx0pgoOUFndnE%umVEx!dn7~jwc{slWk>o zu8ECiPbaMHcXy2Z=}$Qm+a#s-l(YGhv~m4rB#wt;%!_+dn3t_!=imL^MfbLs#<5_9 z$H$5cKlnpnzj{}pOinboto&Q*Bj_WkLpPoWmUecWlWT=0p9EJikPstORbL+_-X$MO zKVmM>%#ibJ=+SKvVs!F_?-G>TP34fM0I6eUJ0Fx4f-@(QQLBiq&wg;E@7zDRv~-G2Sh{ZnY}Q};*^CX%)eE3#Ql%9vu!8ZpVg${IV$ z2*>YwW2z4iL(RFb_Z-RZQ)i70qi}rjdQFD$G355^9TTX-X74xuDw>4d)nD%^NU{2K zu^37Qb=)$X$OxotFI zo2$=V*rEn&DS_l%hWx9ouiFAuP=>ZK3~j#9D@4-!GgO> zAV7qm!EKQM0fM{x;vRJ6?sLEUe((Qx&zb4&>FPRd+tXcB^{Wt=N3`WymOEvb(jc?{ zP8`!|@wkIx)NzxYW%v^xClNiH)vOpxwWFvO@)h=dY(APLL?@X+hcL!&cIkH}bi?3XX zM=0JD!K>Jn(uc#)58BCRaLD50z zrk#83E%%V(@Vt)(fbu@e2hb@wVhJuhRHXrbXq68;i(GKlNM-6na394ywH-Yy1DPU?( z!&ylVZMO_UwTTXKB8(emA}1|1-(mE~T>l2lZ^b`IPujgK&_{3(oX--7_g5eL!M&1$ zNoV2GA+8g>B$cgAVHoS@KQ7~hcoc_C-J@a(#)^jS%4i!Q1H&v^!E!~*&Eh-? zL)K3Su6SqAkoWx~Cy7?!+0qR+I!r#!c29`^!y39IlL&y-lVn4-&3GRAgmOZIp0>j+;dJnc~;3oaScoH zWFeTaHwsjw{iTe2ScapeA_PI6)FWJ*t4kNA`c{q3cF}d;|Ej-ft^+hpspv*=-Z)<3 zs?%wE>V^yBgL&hR-Ha!m^@v*a84e!km=nW2y%WbKn}u~Gf@Ss4ImhjF8G4eI(-_ZD zLH6ua;cuO`qS5qBwLWyVGI23{SF~JsXxSvelnn?MEB}4DKAAFTBS1?NVlfCXiQ24D z0qNI||21#fQPEAdKdUeofh>|__KvIZz;v=was-5APVTnl&v7lU1)a5lvBfji z)%6k4Abb+E%%wl-D)l><=U@-Q+F$aXyh&^ooydw-(Pu)rCGf+RekwLHn%xK3WCcD7 zgUvCWu95YVt1M^Az6GQ+$4rja8@9KNsb79#SQ*6$)dz{=TV}{nhNffTtuNs1DFz0& z=nGgGn^)_y?#trb^Molbvtj@HRG9xDF7J~f8I+^xh$Ai3`$m6s1HW6LWA6+PrNR-u57vrLIBhuDe ztgD3MmjG{HmH>Vo7v3iohqx!oFROi`sxKfPcv$pJ^&{9M!SfF`ZhI4lLjSTC!=l6g zZp6xg2lc*X`cVhqGpvBDVEP#lv5!QQheP%c59I_MksQH#r)&QxSoNjL+K$o!j|y%! zzU)&lw94)Dybf3b0VDD0t)Zs(&-%2SxH5g~9``qd1U{5~^OoaehCQg;1Fq{TAuogL zme_s8ZFN9l7gxRucH7CS2hy)%yB1lI%&zjPACF;kL0X;aYARFIP~E2t#g7pKOLM1+ zZoJrdz7hC7vvm-XlT=nRxxb0As-F!rl9zA7f;1u0p*!Tao(NpHh?3%|tssA>ai555 zqs=Eq-nQE_?FIMc%)I*YJGK28$%F9e8rS3T)hN$HiHcv(0p)o+Lt-<5?PjN(Gx+PC|xLF!CS`_30p@s`_~KyyDD= zn(d1A`AsPATF1wHTqzil^Os11k#@0xA>}3NB6bhIKpxctny0D;2rZ>Z^*q^6v5l@T z8WmKHO$BHLX<1pf(zdQW^mxefaoQ)ae$0g*WwViiTXnzFcHVV8?w=uIwt1#4xFmNW zI11)lyv=J5;zZou30z;#pI>y7#=sDo3l1a`%u%5v9a&{Qok=e>_FCQc60^Q`zP>-< zmkJ+dDf~rv`aCXOV;1ev?_Mn|(IjyC>3i4vEJhVb!?hW>2`=!Vjz1L55^=2H5Uus7 z^c^0-rV4w_t)4mdyp#kPO?-j)lrEvEfn&7+Sv2#|%TZZdT8!yzd>tdSY5Rd#{c27W zz66+~@ALvpM)n1}!tu(R?yqtVtxFXPlpmM1T^qFRu+sDSPGAYd1(dI?bNDtpCm`gv zV$E}+I(7D#hp$qlF}6a1LN6z|Ak2 z-{XlJ5y)+5)Z3^{q|-EvII&nm;BmC6)+=WH=NejMfsYS6gZWvEgjJ^qg6 zu3b-vsvUSq@ao2Ys){0R$Q8*zba=5B^;QIA5@4J}aHu@lbTD>hy@lq%Jttav~-HTNMl!8V_nWGMT)n`CoH(nk4D(&yn>6^5>E)ObK) z>9-^8Q4tdiG%8)JWajvw5taP!;1?bYSW$TWR?JQ=L6ue#>xmWIG#u-LB1C;SR_u2kouwC zrnoSlx+l%^_mefVz&N=24*{nmC4j&558}-uWFZux02*B_b$I{qV*=C;M-?SEg1-cH zYg0K6_{oBTsnGf=k0p}olv7YeL*4AHsCn@Ab=l8fXEkjwfB$Z7$;Kx8EDun8<8jxZp!WFEqcjPVM*+U=H5UHi~c+a&+hUfz#H}ojEFwO?6~!Of1!y?RY|2PRC39F zLcpai-PgwexmslJiDkc;u046FXGV;=HSD*)4syu_=t!@c#j-lX=g>aH9>hNtkFm3c zYNNNzDK>PJWGNLMb<2VO+RQ~Uxo6`V1J(Lef;5tr?G|iNvu%W zGU3!;^cLhbn@gvJ(YDoE0oYf-HZvJ6Mb&4N{}&DfwakErqINd_ z+HH7(K)MLI)B~2T&*}pcEZ9R;YjTyFaJ^SCY3MVS#X!Hn59%4(U zNSF&Q`TnKL9}Iz5%wFDlZC*APO1!Z!cP+8#f}bBZ)WE9RI0EUUMiIB{`G=2%q8+cS z(JYL~0czVTGAQN?>Pn`DspIu?@e=63PKxmQ~j?3vjcOGU&Eo-vAeFS#qVV4MT>z`od z3ebv=Tmyk!Ss{#*M@{A(2M*FB)-bpaS-24i>#};+G1~QH$$wL$wwKY^fb;2dzJ1~4 zNrwQr@Gd8Yq-u;SD%xN{*3P>(_mqc)Z2QwyD7rh+NSt5>%j!sCv6;Gf<9eUQX$P-H zlVXjS3hldl-FKX+zrPprf2pK?_gbxwkAq_)PttuPhLYL@>c~@Yj&F;t2bo?or2@;5HnaKubw zc+wa|Ey%tn=ycUw4L7rME>znOC~`)=Sm6oszDU@1o(H>jU<>~d`1j)>Uo$fMps+_} zgoQ|<3AuYyauW4|sX`$cJavKJnyL=Gc9Tn^$eI_@JXGJA)Dj;0_^rSOsfUv_C@VZ&dn5daz8|4ge~-FoVikWrZ@#9Eu5kSn?h?FoKa{x|jsE@%mh7kg+p zoM3m_4c*>D6HOUj{mw+kTMC(7k)bm(2q#;4VQv&^O@tl=kjO%W0r{yvi}&t7lO5?0C&U$neNb%sMM z6Fq#@?D53poSb~{5H3T8vuLs9VfqG}mg%djqgxCDo7AR3(%>ERP1u3G+d8-o`IMG+ zABXICS{*f-u^x=3I6w@!F>8M!ovnS(Weg3(x)uUa1h%O`{);dh;*)Ohiy& z{zo5e91PcJ#ya5%(Rxr)eB%-fuxU|c60!tW5QDx)6zF!6Hcer z9a@>&^^h&nPjcyF=fY~?cwwBXUF1H0$A(691D1Hx#ICt?u z@yZKAl!vBK(3j&Z6k5Y{8(Sg3M6>)|?D!PXxA&HaBRtHz2S@3n(vk`t;e4W1;vMc+ zv@2aROGh zi>7Ck3SPvI1POspvA_$`QYI%qpDecz&W1rq9uowClhG>qm}9+aC=$MRA5!ooUVC_V z4qu;j_uE720En6jQEbUy(PNbzC{-HKLY%QSnX?i;X(K&hN1r>Bv{CPt^cTFEvJ{E| zw&d3#RK^*^XZjSpCqoZ>LmzNseP1fC6WtUh{q?9;W~2oro>N-+&e7>G^v7yIZxb?^ z&f-WR35Zh=L;5pbi}h`cPQJ0U!F|oT(b0;_A^YRz#g6P+VdZ`v+?ouQXGR!4PI`l2 z&k4&SzOZZ==jypc$mWCzqYEb3e;|Lg%2?t9EHLYM6+OiuP+COsbBM20@ppo6lsX5g zI-F$DMSF3q$XuL^al^{JmcIwBd!9pZ8^U3SP~qUgAZZ;D2R3^((1yYj*%?4`fiW%k{#(ZjY1dwQ-xqgByyIe2^9^_w-fU<*o4@1*{ydRllWz(G-4D00tvZIxETY0J*|oeXyk z3$fpODOgrQ?X0(c^<@S*v}Lg6bAEhD4)d$PeUr8~FR53RXZg36l&KlAcB)Lr3K|og z<@~99XKhKveayk}Z-9dw+6IlRQpcLuNA=6yKV*Vj%}{qTeN@OSv?hLn$I+e3{^9Wa zTE#U~SQIfrOSsf(RoBt^&!}7&ZB(JmhrR_WLUQ zD~x|NG(9q#+0+X6>%GH1q4}D9^Q{MIK2YnUdtAqed?|GT@Wn1x-%JvD~{pg+`y?tRq z_Bw)ojWpTfWxN(ssD?Tg|KYOBtapdi9h(4&9(ms2Rp(`K>@gJ}WQaOba3rb@f4D`nwFHp5$zq0)1U>Ppe^3W?dOK4kYn z<3Z>@H}Jrxji=pDPa?%oe8AyOoLjgH<@LY(CvVm-*Y6K-Pv&WV7R|Qh%&Z|2U(4%k zuG=Nu+jV9A5T%#yl}iH7(cgVS`)>H8u{uB3RMP<;V5b1hFDN@WD^hHfdcFP@FEMr` z4z;B&7h1Csp-UU{)fi>Gk3UDoQpmH}BcSklBt+2DL*;BKp^#!0KUPFA>mN_kjo8a; z&W20&3sNoM6V%v(r}JAd(P@ab@iiH?d?bD30+YMam5f{e`#%MHa@vJIWqX$T1cL_Y zLT0O4Dw;}>5`MHZrySJQX!}&z9J+@>?e`< zE;JqpPNbYH))%wvQ#bx*j((5;7KVx9}$A})X~gu^w5u)T_k$A1;TFu;b3 zjMANpd$&K1#DcP4_%3Hi-jxm|`P5?%8buelW~q|TyprrwW~TRBT667JKlsyA&NBSn zMa{r>+fiwL20f64QfFtWIrNeuv?l$QS&Mr08QXN(E~T~bd%E-0h~TD26Pzw#d9jB! zAu6EKeXM^4Of$1+$LCraiQs2036Z1a$4 z5xYC-<StX?=KeT^iZC1FLjPStqLFux{?I(QgL%uQNf9i#S+886+TwWm#@OoVNEO5qOjl?Z%y)Av z+~zZGI`jc`c4KU!^xUPkA=A6@dU7+~YGEnWK6(IQEC1GgBz_WN<#ZUe=Q-5^9y$O2d!uSWX0YYu>!HR zc1;U*JsB?ZV6J8GUrEQ<2ovr;IVyBBoo=m#HS^bV!H>%~eY9%ur)8@UwHpuawSHMb zgeiJYkau9JBglYaYih|<86fPi%k;W82Bb&iGvkUu)cJVhp{1GrU_ujDx_=XVf{yf! zWIcqpA)N8UVt)*p?>-!zY47y`)AZgPaKn$p7Xnnv-NO<9Nz|%}hb(vF=n1_eN~dvj zm18g0=Y$z7`C};+#{g&lY$KIg=qqPhyIYt)_+>m(kOZ~(NsSD%R)@=6Tj0=Xs(t9h zPR8qnc804bu8+4phw_XQ90U98xNqK%D%*(L1$-Na0nc717>c+4IXa1f7l(!nOSPuC>orTxOY=E9vyXS)ng1yxq3I~H8ol>6-r_h&Ul+onxR@*Ch zIQo(e5dx-t!pI+uilM%X9XEDq;)X=F9m0;I`<=#Cw&a*aO*>zBlI!PnOQS+s5Xlz8 z;O_(TtIJuz+dDzTUAWo^i(ftTw;w%14htk(v=m?_G}bP0{J^!zgjp9Z59hJiuz9nc zYdrs;WBqly%aUB)#zIKs__d?zN4WS4^pc(Er5#o7(+I9gF2FWB&QAf0yKihb)Uzo# z*!rVrSJ&n55Yg$18KcO2RYK4E?}EX0UT<(vB|^^VaWwhjQKzo@ps94Px^RNAMQz8x zZTi21#BkYYk3S|`2z)8@yU@Ilk9i?jQfQJ7sE>IHZwhl_T=-mm(j;AA5cj8|_=wx; z@kDI{*L)1eC@uRfSwly4pX)&zuG&Ce*vfA$U+TnDXELF5TJh||xSr5&qxaqo!6nAP zb+$LVY9U$cDq0^q7wetTpye{jsSuq`6R)A;<_-b=4Rf;*1+|evwdE_uYe-rO&9%OPcYgQ5{j8ir;wmDC_QZ!+@@yblb8N#GAoz^xpkD4WE99aOK-NtaJx z4Jli6V7COluxwzM;j0k|@d-B#A+JsUuz)99*KPiK8MYz;P5KGYXfofPJJ z1b5Bow+Nn>k-d;O@l$E^p#<^X-B3z^=I>k@XSpM)xeM2jqQdXPzcS7kW~dpQ2|U!+PY2t8P>b%r+UD} zw@cE+a3Ss&9!xb{Yu?uN)rZbi)zbUdbv0l61#4DG6F)9F9SvkV{H8d5{{;1ov;1y1 zz^kM6hGUKC_ObJM&XGv$5KG~rqBnVucc-)jZl`}<^VwFl?)M_Z2cqsZapmp2u~QX$ zuEirC1qD=U#>MKOnwP7C*F8y9)`zDAZof8O;#-`YY1FluyNi6lKqxnPEzK@>@2)e- zff8vH0zjtVIjXN*aPY3!!`Bj55dUzU1_CtB8j5cc2tL9Qy@EhcCIR3AL&2-zu)YGQ z#%Ch4j)x>7N5L;CX&O`b$p$|=Ei+~a|C2@DoClFf9rNjSGBGJx_FXs}uOiL!@ zm#bZ3(@tHCOrI_YsQNi8Uj6br^)>HhGi1m2j4{+LND%EiE8caG`|A{9lxeYu7`&U$ zl(}V=OGfug`ZGdLgv{qXX*LsyTN(dm-|?)vm;DugIU1aCVU2z8HIL=bRSCh+16(gY z5ya}?X@}IsLCGL6VBa#S4sgA>uPjhxsozK1@nX+Zb5)O4RLX_2H9(#?5sZ}?ARo6M zjW`fR0)K?Eemx|^!F(E@^&Rxg4V@uM`YLi;VtQDIjihwH*nmgegEt2)-=vNFsxy;t zJsZ`!Zs_3BQ=Xq4ycKU>leBK&ZIu`3no_E~hyEP_aQ0M~~||9Mr*aqD`3Hfk_NI28QE?0BVm4UUG!?iIl)K}*cD5L$YSnc)} zt7QT{hgFvr?`GQ$ValrDZl}e z#ompM%!vDnH_~zA#iB&DgwJEHId+`Iv%cNYOY^I@4acE{6|do&=*z@Xsq*87V~|^> z#*s=(eq-41?0KbPg@X4jIs94SBeR;x(Mf+njgoZp#uMR~-r(Sjco*Db>wH_{*!JAG z=If~-Up$z|R20^0WPt*!I?dWFb1sq@s~F^26Ic~x_52GKf{g3M8UYFUE*PuSi{6b+%gkRZg#7$geT@mQaC3W=Ki2ls|j*5J9TN&&#k{?ojPPzH(G+p{0Dq>-bI=ztV) zLn$9X4d!b>$N#{1@1mf*<|A#AiaKz}+@CN6RP?<6nx-h9%&p62J43p5{p;;NLa;p) zBFzZrU3mxT_KnlQ&e!U<{KqAGYu=XsZaw}?lIezh^e<~BSk4k)7F8^}2+YWa$NeO-DB^mi${Ma`U0Zo#MP@j+O^Q)5 zv>$Jb6xP_IaR4r=Hqut8bpiw4R#AYzVQ1nNY-rCPq+U*rdff%z?ecfp^OPP)_`#VF zFDo@bwjuYgHYNk|=FiKoTj(BkjsZEzqeZ5_R+hg#X!A}qW*lD~bmRD$pzt&>mJ9DQytyx|K)g|7COknuNJaRhIuY)nTXOKeaEM>{&ad^(l#PCVR zm(-flI#1jN6W`~%C;aXEW~WcPOg9NI;&7UyQK(*||Ysj9ZQ zlD@o}%=4#RYS4LHqRFt1U=$v-G7GFz*h;s8|F($Z;PU_7GP0F&2L7mc7nn zce5fVdA}Hm$e(=EoF9jlx8Uj6Fe-LaAK)@C`kpM0KNo&0(C%IsIJb_Lx!?!41|;I>Z;Syt(hq3yk7P^MU5#*y~j5Lt%s z+B@c9Z=FY^S${&*lAkdI5ARga$aQ|OG@m$fme)Q&TKVI_cqE?O--diRN;J7k-#ok; zRZ1z9S~*7|)qzQ3-*}f+?X~*V#7TqRhycBQd+T~Fy*odu$JldgDWxKzT!J`j+eERn zVc_Ve&0D4AWcW8k^fD{iWqZT4fkMu9FfOGyxs%`NLIDs^8f1y1^1`g`Vb!Qj(I^4W zUh7_qRr!&CSMGIzOMWZLkUpaz9XW3eqP`&UcwFG~LJ^9mP#rc&M!++jnA5 zN-tTe?9j92j*SZPdsHFvvJgw_7ziYv!LaVE&jrinGnprv#u{#(8;Pz1v`g zDe)&hNO@2G_DSb=M(%y-L%MNZozE0}fpbvWdO+e|xlh-Y`#P2+i4Mb;maPiN+97u{ zH{!hILY;}b2&)!!NHzo|xQ+@9QQe{O#>*T{ZM%*azB_#*e6vOTha#rh|Unl@8${M5&S)t@=jGtwy6!{0Z)UEA^H|6V-!AH9rw*J+O0L6$y&I1-!`u^TzvEQpBV? zd?IUr(*SXch`${UzpsN&k2zF<%RNe`+Mmvo^96EianO_~w|&-qY|D$a8l4v)tE=pz z-zkZ__|HHYYsSyn*5$Zyg=1+S@!r{x;pp!h4iBz`lkrI}Fueb($OIx+huAPdd%DJQ zscrWI_a57mzMz=*^5AHRF(0v5v9IjD+K)^(yff%3&U)GAr?rss#b_ycgW~-~BokD` zB$|;OB5*6jx(~5aM}vyV9!HOTUXisT_3H>^v_rR1=|4#-#rnLbzCeyB5F^=qRVHwX ziw(P_D!YR%_eTL!bT`a6Y+R|uJMnYs*;OUJvWj)Fbtaa8RM8_@L%}HjJj)91#|8z8 zhwfXP8Lc!TGFHrH^cp?$E0U3N*F=b8$xABh#d%qx>m359ozz=tB%6s-*(4DaE|m(6 zR2qoR&lgV)xX6r_a7*+N6CipQ*?Erwaw9D$WM6bt6KW+lKzivrQY~P1Y9v93q-nw} z)-Xj-acbbS(Ud_97mwe1W}ryIyoFRy^2O{XZx5-M+s4u!+%MHAx3sXJY+C*f(OU8g znb&rS^l(E-!&YTVgpKo2T<6F|iEoFmzX?{|x|uaDuKcZ%PJqZ)&SaYgCpl=dV$*J8 zRmj`G*G6!{X_^(-yXij%Y2ZgDT``)$W9be2tXzug?aLJ#z%h4)gDlvGi`uxN{M(WpH`DUYe&8zBMAP3D55XgQ0_0ZQAAsr z$X!^QFcfW~eFsv;wkN_G$ao5gLyHGpdn zE2#m@D@-vL0#sLBP0+sxgGc94(H&O-TLF%{1bJ8;BT8fyrS2@kEWZn59J++=t2W@k zWCvB4IBxXj{&o5zV9H6eQkB(=8bz;o^7%Qf278kJYjG`Z#)z=w=&lc5;7$UyHl7Un z8+_46E_Yzu=Wu2(k`PMxPp>%RwUg;(p`M;v16%2>jUYf4K@AeN@QWYm#}$4*Ib`(D zArDWxCig*!%WFR6@ zd2pCf55@QvCBN;54AOQ*FwlYr+5+9eZqzvbR0uiRs3t$g#>s8L?Mlz^9|JvO{R%7~ zRE$Kz>2=Hi1%++q;eKD%xB#q>G7>u@N%nJ@9Qf15lz!2NlX2DDtzE{>Eh#G%-=(y2 z0BCTv7aaapA#D{u#Sr^bqY-3SybL{$U5YnilJ$;PicVB7Bc$&37{M z{2$Jf*&8P@FTR}7RLYb#U#`tD5OXoFrlkZYwlbNH>L-l9gp0fh)%R`JM zsT6$S1t3`2Eyb9BTP$x_aN=3(d|=)&9RmY!P&!Amz{X}V#QkmW=aA=rkcLsK z?YHlDn;$lk{w|g4C>R1VunY?63TxHB?rL2nW{r>LRZU8>$gauhNtyH4+})l3pdSj- zmMF*0z_ZltQ9ZT6nf8m5P54B>{rLxcUI7-L3b-)7In>;7w%Z5`R}qY|Ew?~@}Iw9gK2k827QuW#t?A=$=iqej*Rt9m?+f`m#q zJisk2&blRW`pe-Y(7b-*E?yD$)=p{+ERG5`Zvp$cPS`7M!wF#%W96+NJv$g?#`{dm zOHN1jXuz<`lvQV`jv2JXzhZ~vZd7E~>wfDe-f$CdvSspa-I1NcPlgV2)*&?-0fNZ* z;1-;$MPUetWzuqQwtUjVL}eL(Ud?zeiJH2ky~2WYjZ_ox`w{b~IfR`#oL`@E1jSDn z#(?$qr{KMK9A67-m_gETc1=r&ePY<1+x_UVr9#Sti<@&h=PgDpKim}4aS?xy5ANR+ zcAMDFvc@TK37HkjK{z~dyv5hK>%=_0ST;Er?OcrFpH9fv`A(O=v4T9pxD#6$B??3W zKRCmNup-@D<7ksah`KdmOp|lnp2mP{ha%~7u@@c=1b2U79$o}GaX){JhR_gYQG82M z+ocL)Xv%|BZ`%bYHf>(=f~!0|<~b!T$YV+D?(zPFI;?NUOR%a9+t0>p9_f!*DUH4K zQObgkR^dBzQCxn4XrxXm%MmfFJeOmuIS5G)QmoWBMKTk&-oHcuaNj)WvU;07GRr$RRLJLoH3 zDLzJiH7ZCOL#t04_JKCa!20~LEo5w(FB(g4@G}>=S{`2CkH*1@C<;n{yjv$M@+cbq zKHeg#v_{2r5U=`<1;|2l6V9Rp&bN9_Efs=~^;z;IA)@jcN!ST6x(_4xUHxgNvScB7 zQf64T`E}k|lRN3faf1EC^YT!W-Iuyb99HhQ-!0?(#oxVNP+B+`HGZTzhPwe25mibK58&Jg|5st)j4CtYb_=UzFF;T-f=ZuuBBb%N0g z+1q4e^lbRA4k3+zfKw7Okt-##R-SNC+S|A*wjucVm=~J6Fz{p6^Fbwp&AAhj5T&E; zte4YDNnfwTU}^d})b6#b)hZV3*CcBs#m4Ag9J*@O8hb6{imnBFk1ZZCA8q14Gf-I= zg1!9Cc2PGQco-6a;Hf5zWF-@O6e;{~F2v%^#}vix z+P;~kcD+Y?DFZn0;$6Eqcc!N{X4hT)hbYaTD8?|g0kk)lUIjCXv@gCh8c_Rj8S7Q`b^ zTt$h0*cn)JVoP1a1?yR-c7V#ve)L(N#?#l|QsbnhF2QIV6JLfKo9q0| z%6o{Sf=3LvFmBSB%FBgCrBA)g5Rr|6s0Qnmpe<^?mnZ*R{8|1SRXc1$$ZNXB>DLxXIyVXnCDH%OAfPdJgr685VrO3RjUFgZgAco4NjqxE}>{rhNN}%1yS@Efca@Y z)m5!jwhXhk78C^laG=r)b>%Ps8~jjRO9(##zz69y?4!}=11|Vs02nL!{v#SxNeTr( zSW!`E>{?O)&_hI{u_6KN#uzl#1|8SoCp74dMl2fiRVx+^{vmwv2@Uon_=Cwj<^r5! z(2!C9Agqi+gBCb2T*zu8(4cvK3~Q3e^-whU@H2Y^fK6xq<-6yjFrXX2W>%J#QF;&s zV5=m;8WV+M0Fc+4SODbz_J3}H?=Ue31I!JA)eB&14*e7z8Rd?tIXWRRF*Y_XEw9rW5p&UL_-0HL0o)HRA_`?R5T_H0GPa})Z)Uz;^e64#8@CZJ}x?C4@$UVq!w0aS}cOKx|TcL^L=q_7fDqf+i&X$2KM*J~j-% zPl=7k)IByXJ}LqL5~1;+Pw`>@wGKTqHZ;`tU+d;(X2!=RrzZQt0K)HMQ>b4j&R2o}L;8fN4z5`0UKg?C9|D>?kliF*!Umzk6}IJ2NyqIx#%-U%{dN z&EDdtsvyqvpNz6Dej!%Y;gQup3FylNkH9Ijn z76#Z`3yA_CoYWY7U3FptdIHR}B-YeWeSw*em?#*)!@&fXzEgLY0OWz0pg`pa;~plV zYGb5ntD^%v!Nl-?Jj{|Kx&!BCP+7|3^r8Q;+HA z{{tZI3p#AqPG$U){OCQ#LJ3Tv2zmF*tI!qMxcxdrm z(qsO9>H5VDx$02mq197g6Od{{PWN#}CEKTpCsb#{h94Kd=L8ovM@0pwzI&83@a!vy zZojO|fz->x=cSlPJ*{luK1Fmt4XpA^wvDC-8TELH@IeSp6K_udn@x%xv=z!mA54dS zs-yR3>r(PnGydvF_nT6)ATIqL@>2$^4}r+?wD&!Wr7Dom-?`b0 zio_t_;2|vyk1yK$g_b&;ksCi8akRs6`Gb)ye!8fdryeJZIIGH}=JEj<-6OgLXDJFk z;owt90C_W`8JHiG3Dt%@T%)-8!nuY8)!X;Rc)9zZromr^rB_Hx|?>$F0 zoFVrOV@prp%I2bn;6jK)JGQpF3trUU1*brUK=d|R1hKNhP4f%6>3(CK-`!_-#dwSr zLL2Ww)YR{gPROo2_wq#ggltu~3A=^g&%JlD8n^nFU<&*h@9^ZWJoI6`h@~8Clyj&5 zWoaDK4Xu#zfSychg@YqZKIt% zB}fztU;eh6SRL-8Ms6I;2b4C+OaB&WlT?)t3Eli0BHGj{Q>fr)yT-wD@lA4~MIv>L zJQJ3!1>*zkp124MV}`&DzX@UnhO2;GK$0xiU5+(5kY^r)Ii13YG6D;Pe59+(oZ=OY z4<8bDeE7b5HM*g4o#%^QFj>bvTOexT2EC}g+3GjBd(&$1cc&4(u#qbfabiHQI2(sP z{kiU%ZMWbiS$kvR>{e^%Ijh8CQ5i9tTMR?bd#?P`(Jo}9W9$OM{29FkAj!`7+yYRj z=fM{X;7<#bvyDzG4LoDe&cYr2PcT3|RTDW=sjew%Yk&9NDM#dTPno;;k5!B7-r|AU zb64Y^q~$NV4cM}cG;s}yL*NbLOwnG7Jv(0EzqsFV24j#Pt-X=QrCmG{afws`FJmq8 zjZm&VqKFL_yr|iVC4mz<^EZe51mABReQyLm+Px*d`Rn@Nc|eZ#TDT_6T$F`3V07;P z_7#8V1viKxrl3E^FMmV}%yojbEOoOvV?>IzkleW)m2AYcnA4fz6{IrNUl<{{B0=mg z-2nPejR7gq=YwpSc4DFTBGw5EktJ|k?RRUkm39c*kprP0y&B^<)gfW~K|p`!N!54o z_!Z@D6Gx9;LY#{haq!!lzr;O;)VrH%SzF(ow=6bhn`Vl{<$ttux8%phuuerv2x0#s z6Vy5<#jd9|d0Z5B*nq-Xt=oJ-zrVdSUyU+LF4TrY>Xf6IxnLL%r%67^wo zyWLYoDgMH1D{k|qE1lSgb%j27vo!s_&Fj6M zglnH(F+#z2>=!)Qh>Z4l+3~cOFYMQ=iZ<`h5_OyD^SKcm3KuypLge)xXpc;0{eYj>Y{?tA8%Yv!8C5E8hbDw>Tu8ya+*^K2%Zb9=lWFD~YlbujW5V zCjK55DT+f7l~Y_wNMkDF`Y2Lm4(OIcOVFq=N(Jho!R& zFTuAOS0eU`^UocAjk8lGuQS8sJfK8Za$&DKYrb@3k;5a8UV2{hhj97T++OUW>CA4? zO5m-JaBbiD^igDUG~|agDwW?Xq?{D~LdU#)(RD-D7nc_52MTHj9HD}iqqfk6_M=p{v$W*nN9RRc7bJ7R_QtrxRtv`raz4l~2~D|bwAE(vMncI5q7xv`}? zFB&IJ+Ig8X&!tWapgw7>C|`-c+$ugZwtaAlvw(Kt-S;AQu7qEK)#-qrySl*!*Xa4EumLV+@6Et9w5dpU#rEB-G zVp8VmcWt)3^f^R(ul?ubcKA2zdOx+-i3Q<-YuZV63jV(B#AYhK1GIAD>|GGvvPZ#a z5+1}gUEi%Zow+pn0`v^?_6Ll`%-=Y47~B5l1CD_fXxaXB#CF@z*Nc6si)?4f_YD{0 z$vcDGqj2MlPritb?#cw4BRd#x3)ir}Xdk1$rRR8|YHn%V{8>yM)&V<>C^7Ik*T;I9{Xx(YV2kBB!%#^Ls z^UN(_a1Czq_1he*wGn_K|BZDlW(2b#YDXDJm*a*asI(B!Xu>ix*(ka7)3QDJV=kyl zI70oiSb_)3aCI%IDY6@JS7r0Et-}dC?|0jMrr4U(Dc8%8=a2-x7K%P+ymhnzL zOjC5+1?yF;nv(b##`TAA2w6Y6H(0_nx}WC5LLig;PPQ`)){wg3HGbVdiju&%TDhF3 zrA{q;S+=8h^Ext>i;jigr%(aeCQ=wP@T6IJoRf4;Z3zB+q0*E$F*`Y-Cv<@VkrL!E zHt{qSMijxRqj~lHSsT!Is=N&@%_IU!eV@Q*s-Ucft6nMpeB4PlWT7PG2Qq+zqV7>5 zwSV@Zj|`REw>&EYjk72#Q@LU^L9)`0vw>iXlC2Fv=z4|;irkhti=E;uv!y7?>wel3 zhDHa7mqpS(O~l`MtewlRT18z@Ae#O&_gT}aFCG#{XKHJ5K|%R>LH3A9&nLH>obfnv zy;lNw0<1Ir+VR@jg@(@sAHW~lhwIi)u!$eI{Whs z;6H9x9j~D74jJZopYU+ANP}6=$+WmqlM-zXScjH7p#uS0@EJ&L1G|)l65*ApSWu-F zhVz>V(*dlLJtF8OaR5lj$|&Wd+ekPxtcM&7$58cv&d3|u$xgDheX z62`)!M9X-0xiUJxQ0qSRq6`R>vo7OD&=2VMeVMJ{w)O{e@<@9n;cApj2X^B^kqqCy z2Kt@zEliy|E{~`sKJ+j-X%jhNcj>)b9C7{+#&|k?UBZa~{v=mThU%#ICJMm${Y^yJ zzL^(UixNH=?hlGDQ!@*lW71u|kETJwA8S!c&Nb-*ws zDyyfY@ez6Q3SBL@+RU#aHG_k(k1nHgoUa!cAHd~`s1a2oE;J~4cL;A&H2Zud^7~5W zJ#t!HPwpK|aI7YSu5eengp!i%P~M)nsa)N7w)p}N$Y<*G8kqxSi`WWV*nFWe4ycxY zpd8WaloLdY(M-U93e*?K*D%JWum@Kdbmf~UnIWlRqg-pL)C$t|>`KgY?rAG;%12+~ z1W^_EznjB^33+*MvaFE^?-N+b1qe|&l_H5Mo{TII&kG>qa|XsS1g^`&HfILjyZ^6s z0^UP#7$tG{aiY#&aK@mN2#BXF+=xo}51=JBwZ^K7aQI2l-gH^T80|<^Kc=_lF|`Mw zi`R9AhIe|~J_yVeorStjwYvx2{^5rb;2KMTtD>#MDhPAX;##iB9Zou|S2w;JBkw+9 zT2@Q_c2)5o_Jv~=9%%7L10MiRo&H*)$Q1rM^<*kwy3$fn(^Ngu)iWz@?llxVW z-z_Xsg-cGpd+4iqoOT1ovU?a`P0^M| z2tZrWO8CK*3>$j5hj6)#4w{^avbZ9=NF?R}HAYIsh=4&qPq@R6^hQOx?YQ?fTk$D!_u zKR~%HsEC$%$+UrWQ6&gfas{X;lvgaF3v8w}erf0Gt#{0ISJGyr|7@5_oZs)`iz-Et zTkcfaeRN3Fv~&62@ZX0Oy-$+GpSY^KgW8kTJZX@`vo`gY$a$s5m%~gXrwiD-i*wtG7UHN|X08xO8(zeponnT* zeTV%)C;-*O-szr*LRf`Ww9h8&?7;62X)4<0M1_CMm8bmElx&*}1kyN0vrF%-|E;+S zUZ?a!|07`s$&9P!Z70GfAJ$YIbMo8ao86Stdlk+Zs4BuDVq#4J-jONmM1dV-x!p;o z0rWgG7#;Sh{FmuLh=kHnQeq!eQz~75#Gt(G6}i#_=z~}Elyg7ctr%V=tvPjBQ&fEJ zS%bGwg@v0-B}~E zH`3^*AGqx617z8Qb_gB!yX$=d#hW>RW&j~6n(bqzLGh;nt!>PV$IHDkmO^jxcs)9z zc`6g5Opvl)(SEW^9<+3iyrGVO9vU8}KnS9#)?@L`ZK=uP_fR}eu&+|o2- z#h1eH{jDDulb7MmCGR}Ivkb;RjZCh5U;pCQ_1)PuaXsMa7^x*U*1f}GdV4mSN)Lj{ zXJRRgW$_&>215mSFKb)n}dHoFF5c-g=Crs~a^{uhHRZw&vvwt*UU(Ude z`?o%7Wwn8}wdx|b=sZSW>6x;V`8*&}LX@CokT>O*@8Is>-s{@vb%2xW(qgyg^6S=SvSqtbmws0Cmv-#Ig>u#jmuZ>0e?g;w|+O@`mu%)`mIx66j(-Dp@uvGpz{^p zB?YOg6|vblCeGx8(k#U{HdFNhF1sQAK-kc?^%cm6qqEF5QCM5W8jWT$Zr)JcCgM8 z=oW+Y@qp}@tm#FD^FI{|tBiNfi@~YFhiHy&4U*psk(1Zuoh86JXO<@$41pALa$#|H za;YM_;_|vgMY=NFl{dZC?4%_Ypm2E>vXtPXPwITX7m@YxUL4dm)zVhIpQ@gVk+6U6 ze;cg_>_L_s%V$0se26~B)BhxOWa^NseO$po+6giy%3;0n-QK;UdjE8R#D}XB%$+}( zJ=`81@?nVTO|pj6z=cdR9jmIRsUU+E6`WoY#7%5MTt8@q@N8d!28rmJ9BnEE{@fUd zLj*hG=P`j%rp{ko;A$zAL*ZgDw?KNfkr!5`RP5E!yEnSVj>)UY%i-t0WMvh7$xkIK zopMcA;&87n`bfXfp#zbe%0^iN#2wDs3xSUbX^O`o}%^t^c`>b#nJlzVS%}-E~I(;pop);f}(SG-^ z;uU!_Wutt)ABeU6tdlDB;X-i)jKIpGc}U~xyiG5^%HL*_*w=se#YTYejclxXl4|4F ztSYnMu7nuxpawSfQ-|+7BLHpmF7Ef5C3ctR*c?G$!nTHN1tH*>PLj5`2U`RJfSa^W zxnEm1ZF2r{pgeNjZm>9uVy&6Ddf?9|K40os3vTYaay_*U{4j(+f_BrV&W_t^6_)RN zvqd^s(IuMr#;J_(ZBx^w_DsS9QNY1W_MYy4c@NHF6c84~Wp#e`8BD3-K@*MnT>TlDAfg4WN%+AF!Nr;=_d<{3ZaCxWnJEn-+&{0~h+9q$Y#TzQ>#eo)| zlQK1YU&WDnsu#X+kBg(<^uTRuUOW~|4rI~%E|Kr69HWiqoD$k;V07_yXc$HM07fSO zb$ACs1t|qYeNpP_}KsfGg1@4p!MScuFL-dl&+^ws3t96GdF%zT+Y{^ zO@J7VHu3AYjCTRiMRBv2NZhma9arUb!z)l$LmpM98oEgrHSJzkTKKc_temL}_>G#w z2)x>w^^ZJlGg`p*BvHUe-3BqcSm7yp(J4OO@6{ zq-U(>$!;8P?21#QM}Yfj#zVzExglgm@7OAje^y0KBtXN|0(nNhE#q$HDhi7M52YTbsRD83cm-(_2g zldjzGIT&8pGw7L%ocDb-wl^Z4HPY((YbvOXOge{O*7S&%dmN_?PGlV4z*x&%Pn@IM zPh9gUCG<+ZC=`v%(#Ogun0|~=3Y~Yc@*}0{X3TWMnFEctenVR!Yo=~i#}f}F1|OwWBZQ)ZsDF=FP5vVML|^VDhos-* z;J@O-|Ge8Q?@m?yPuEY$BV6m(E7e?0D9b>nmecB{@qaYsucz!wvRZdsxNf1Ews#Yq z6%h@r{+5uX9jlqSW#*`6b}D2`tZ?T`I3#UKF13$ z+cs0H>BEd#G$#wihgB)MQpsna@LY)3RFL<(nAoS)W*~(%veTl3B3zwZ8}P+_0ccBt zEB>ajSX^Xme91WRovJR;Q65K%;5*8-PwNjHYTB!I3f_qpM!`T^%@9(|Y1bctCn7^g zu5gC^fySL~FcVunBV7~RVqYMe@j8#4FDYH%KgwgdLrP9gX-Fw*=yE5(P#Z zC^1Pi1l(g#4V8va2ttK#*OQ-O&R=6nbY{h|hZUq{*>U^b zbs=|u^II2|Yg!~Ja0;Y;Ei2JB+_`b!UxAdvl#^NYv^7i=oqby--)2X2YE=uRBdAVY z!4oM>K$JCV@3Zp=lp49uM0^GGd|sOue`B1;7S@0#b8MiUN<2@CdY}nYx*Mn%EZf#d z;)=)BK>lV6?MKNK7Cf&>qZ>BpU^QrnU`lVBud;K!TO`#VPm7z<$S<~38X4U#$cMvc zo>+@w&v9FCoDf8S%n?n=sE1RU37KkU6fMB(QjYin)nKFrNO7_(IEEN|<3nq2^cs#` z;n39+?sRopyk7a)zS+v|#mVj}OI3gNj(yNapc3Bh?K}ry_jbo~_8&zB&Hc-zXuSXV z^)W6R%%HNvVR~%)i2j<}DM=WF`%!`%)MRr@nVlY1gZK?`I9VE4-i%RRzPaMiLt)Q) z+J;@`moF%)di*hbhgZLMd8?2A+q)VtLT+8Yt$vT3lwTbqcIJ?>nRO%h3!?|mE;F>H0#rmdoJWMw3f6=TEwU| z@YsgA?yrCd9d}c`u!C?6d+=8CUk2Jg60Eb%biw9AQ$%jw*AkBt0;Kv=Z_<}w7jWOA z?u)^%l7rTLVQ|g4I*8XsIw?bDXg4lwa)x0Xm_rN5!c>c~|K;b-pW+VSQHrzn;sb?9 z0MBF6@#lauLT!?x9xiG*q5_mJyY@T8)_ii-APcCllnwzN@_|pzf6{0|bT%lr#yXOH zoJOFp9Vu48#c1JM_j^-nQJWJAe~UZ}Qa(KY3TZ;BL=d$*(b;|AtZain^>%gHPb;;#yOUOdlN{M(Oo!nhgRATJW1c z2z>r}51&s2&+r?T$0W+U0_5fIP7m9JlJMUqWbQD(tgy8&zKaRqa!VVjHr;?cN5*u$ zw`ooFAe;dT6qMRP3d&8(B9Le>kTe?3)o(DN#v)r|sBx(`I2hK^?1te3vsk7A%syPcoNKqm>Fj zWAerB94>tJ^(y#SU1y!2qOwh!hKum0`7F*%WI}6tp{Vw@9hkalRPYq`G+z$ax$ypG z`AenGiASPTU$|GSJ>C>}V|u`QI>L+z^W*Io1br*E99X~=Kb_My)QfKc5R0by))+tdG4kgYQLj3E4{vA}&D-s1ubLIZ z&3RQTW6#?{(^D|=T8dbmoeyPR_xp5>H=$gRZ@&m>_E~qHfeCl!ii^@!*M%J${Fs%t zZK{5IxFBI>_;z(z*e;T=0|>d_E_q~@EtwY3cAHcI8K9XXT&@qEre~(gGe_>potm8+ zw*LAU3KKdiyZy{m+Qzlkd+ib&w0*8x*EyeX>37XH3m>VP0lw^${sY=0(q8o!O(cB# z42Or#zHa5S);wCqdcO7TzHS+=#=q{ZclQG5I3!FC`m0j7xP4bIWTZt{Rxe_t{fFJA zF|ov83!?JB-42;reI5fou{?8qh$hZD)QjQM;ZxC(P4(wsl@N3lo>1AUdL~CcqzH+ag?~_)2NTGDVl7EJ zldVDxm^j1A@WaVo0*EXRgZeJqc<)b&-zAOZkCRxc7&{9Hc>mFe)+2E}l$Gs@=u8{6 zc?Xc#-S}P_Vo-VByYyRQO4BDu{S*Hrih>S#8(E3GoCX_MfpTp-L1<}BW!TdFX;rD+ z1*mMEn#Ypot$@FVhEd*-fQy5RI-fT&&f0H&o1#kn_S{Lf-$e5z4e9#xmSw;;{h8Y; zKW-up`@OG6*`sMzgapR*KU(D^?+yB%0|k_f7OOc3GQzTQO35UsZ6vZ~<2TxrR1lP< zMTBc6vK_#M4IQuR+%Qx}#3Xyt+AqQW^I78Q#t^#H8=4v;!O+D5!CSOl9a^;~H+>t> zb5-$=DRVMndNTQix7FfR9&Lc!d`-et*a<8Z^)mB9^|ApSH@N(6e$K&y#!G~TAI>sb zq`Z{r*F^ykre!CiUH>ks?0_pprRSf!+eue^W~2N*|XE7oXz90oSJx~DAfYd?BKG;r#~tUI_UYj{7%C8G!) z4c*e)oRO}YS}%>(5LYW9;K00lco8SEKi|(B5JrpW!}5dmKBZ2Oj>uH&fIk%!T`3_Qhnl-oCK%ysz)Hj74Y*f6ib zy?lCtY%HzyXaOCA$f^$-C9d%hW=3ibJT?2_l(xJn1-=F*O>V5L&FP@Y;Rawv_612s ztl10!-dS+aP-y460SNWCfk&=|`=9at(H}EC%iYx!mJHg3op0T|*F5o6rrEd0-eair zu!}A_Hs18&6}Da~3MYtX|Ml)BDhibyw0-t&HB;ukrg zt$639OhC|`L6;N#p=AZ6&rtf@?*oN5o>&Mf1S;FK!xq^eIc@|5fwO#vjPm}O!2n3B z{P$Fm=OGT*V&h4QYDN^{v1HVq^C#drB>ubFZhbgFX-$#Fh0_y{0lYQx=rg(yU4NQ6 z+VVh96KBi;D3h8rr`5g#yGSaFPv!x1Rdz?pPc2h=ZC#VkRgjArUAsGyafC?LtkGoXeSt8*!boK|cExU!90Iq4bP@W-FRiWz7HlNV^6D zEps}Z8pQ@}62HYKa64|`=Nm~5^!rcK8d3uGpVQfL_QNV|$f=ziWK{5A8%hU<* z@;H@|<9spYheoQgq-{c5z4EY*^KehtxnonQuh_TnjZ(xxrtdg$M9)MJ;I5q@1t)}F zq9Yp1u5gOj%E%}F%-lua62Ll@r&6QZV5AeeSe!Y8% zc4-*%w0i~hpLSc^A778{L-wzw{=n*WQ6P)(Ce;sm-rQ9BGn2MS##xHMf&ItgSA*&Q zT+$PHFY!0S)C=;<{C+<8dr)N8+Idi7%Zoi=nZ zJ3}puAOSN+(_|f0$Ifc*IY<7Fg&=l?PtW;7`d+6!mJ1r%6vRKZc4dY+Tr> zqqF7`HGWFwuCTqPwbRzbIm*{#PHV)6Z^a}4ZhIcnk1KHft3Q#~{g@odb!5?j+i62xKX5A15#xQ;N z?R9D-G029R!r!uHu?~JvnkimVUDBzGd~z|cXZu>X@BHpQ#SJvCPZ%z(kyQ$Y7D>G36IuAiq6j4iRM!Rr<_S?ms9rw5Tlw5N{6CcwncI$>iGJFAEo%P zjfp-(CD#4fCeEmz$k4OQ-Fz^eH$_G1DBi4pN z&qU)LyLGZ18Ie^uQ&SCND)xwB*7EWdiLJ@cltt-)xTAiecn-`Sq_H4ZuqNu-zwRh38USi<>s*-h0FxvCrnl6CDPYbsB1)n;`z!Yl|?Y$0vzg~9@7-g71JdE*J3 z0Eb9lx>ToyV9q5cVG^*WXq1?L&c)>Ah*D14`09uDkx;`*n03?Sbv4T)r%!CY-BnR# z$Tyhrd6#S?Uoc+Y+fbdQ35PF?T=5}>^gLO)1Y>>J9>Mc`ovwR&p#$- ze#ok0#U(=`UL-VD{#jwf413CLMysR7>pLA;H)Vo9R^yyRxioSg{eiVn75$8FmT=ZN zk4G@$y|?w;08K=k1?eFA)TPmvl7-=*8;-}VA=`6LC|#~aJwVhitT|TBrze>Cy1ye@ z^){}0;nm~QUdpKhOFRyP2?OVlhx^Hr;>NR>0rD3n+5U=xyR>D-yK%<88<7OvL6|&CZy{%^tv9?1syQjY>Jjj;u&AATq{|UdwLF`QK zJzg>0y4X&{Rgg3z3TMtfs4l)Lp{7?i3T4K4<8{mM^&1%T{C1F?>fU$D*7NLN_U?q4 zS%@M&#R_=N&nrsG2R>dB{De4IoUU!F72|;(H}L|KSpxh!?&72rv4g#8gc8z1~$2khVZ}h)chI}F{*>GS3_#y3`#U&NkayL!t z0uxo}O~|BqZ+_YqG#?TNpGcE3G*{;v-T0#}3( zHv&Lgls#bhOWyD*6&Rjf8~)|c1h{Q4X-#ls*sZOibpom5K|X)1-Mu;Qx2kT+tcw>1 z1}BPkFt(I_nIZ*t)t*~5LZdJ{k69Z*wc0d@v8aWhPMi9Qr}pV9dtc2<_}7) zV^_ra9cnz!r;x1|j(Z!iTIUql2?(tc;yZfu11bF84*Q^{;GL*vM6Cf86?zli;P_Hc|5y(d6UAKrX*K-Usz_S+5Sp-}1I8 zdBhBa^s&cZ?;i;b^bUhB&qcaih3ijs>vmkL?7rq@q7n?BFs4MW0HMs2{OCGR)jZM( zw}MC6<6p0(e^q_e`>?YMMSd6Haf@tuy6|6#sT0j#@Rzhqa(~@)=7H5Vy5-TH7RvS7 zKKU5;cB|86jQ=)2(sSB}vbUkm_i3h|4vbQ4cd{&Do%joq(^|(pe8SvvG*`gY;nWLd zj2=V_nvfk+95?^lw}hVbBnG-y0IwURd!LGe`!^&J$c&?QnEdEq2wUc(d^FuN?{@

@8f%Yh2>OuuwE9+`c^98M&=-tf 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

;Ugu!{vwP5ctD@bolBSyL{r-H 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�pV?CpGVrSvYH?dzwJoFM}DL=od{vlRR=&X+?ZD2 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 literal 0 HcmV?d00001 diff --git a/macos/macos.py b/macos/macos.py new file mode 100644 index 0000000..3af9ecc --- /dev/null +++ b/macos/macos.py @@ -0,0 +1,456 @@ +""" +TG WS Proxy — macOS menu bar application. +Requires: pip install rumps cryptography psutil +""" +from __future__ import annotations + +import json +import logging +import os +import subprocess +import sys +import threading +import time +import webbrowser +from pathlib import Path +from typing import Optional + +import psutil +import rumps + +# ── bootstrap: ensure proxy core exists, then import ─────────────────────── +sys.path.insert(0, str(Path(__file__).parent)) +import updater + +_proxy_dir = Path(__file__).parent / 'proxy' +_proxy_core = _proxy_dir / 'tg_ws_proxy.py' +_proxy_init = _proxy_dir / '__init__.py' + +if not _proxy_core.exists(): + print('proxy/tg_ws_proxy.py not found — downloading from GitHub...') + _proxy_dir.mkdir(exist_ok=True) + _proxy_init.touch() + downloaded = updater.check_and_update() + if not downloaded and not _proxy_core.exists(): + print('ERROR: could not download proxy core. Check internet connection.') + sys.exit(1) + +if not _proxy_init.exists(): + _proxy_init.touch() + +import proxy.tg_ws_proxy as tg_ws_proxy + +# ── paths ─────────────────────────────────────────────────────────────────── +APP_NAME = "TgWsProxy" +APP_DIR = Path.home() / "Library" / "Application Support" / APP_NAME +CONFIG_FILE = APP_DIR / "config.json" +LOG_FILE = APP_DIR / "proxy.log" +FIRST_RUN_MARKER = APP_DIR / ".first_run_done" + +DEFAULT_CONFIG = { + "port": 1080, + "host": "127.0.0.1", + "dc_ip": ["2:149.154.167.220", "4:149.154.167.220"], + "verbose": False, +} + +# ── state ─────────────────────────────────────────────────────────────────── +_proxy_thread: Optional[threading.Thread] = None +_stop_event: Optional[object] = None # asyncio.Event, set from thread +_config: dict = {} +_exiting: bool = False + +log = logging.getLogger("tg-ws-tray") + + +# ── helpers ───────────────────────────────────────────────────────────────── + +def _ensure_dirs(): + APP_DIR.mkdir(parents=True, exist_ok=True) + + +def _setup_logging(): + _ensure_dirs() + fmt = "%(asctime)s %(levelname)-5s %(name)s %(message)s" + logging.basicConfig( + level=logging.DEBUG if _config.get("verbose") else logging.INFO, + format=fmt, + handlers=[ + logging.FileHandler(LOG_FILE, encoding="utf-8"), + logging.StreamHandler(sys.stdout), + ], + ) + + +def _acquire_lock() -> bool: + _ensure_dirs() + lock_files = list(APP_DIR.glob("*.lock")) + for f in lock_files: + try: + pid = int(f.stem) + if psutil.pid_exists(pid): + try: + psutil.Process(pid).status() + return False + except psutil.NoSuchProcess: + pass + f.unlink(missing_ok=True) + except (ValueError, OSError): + f.unlink(missing_ok=True) + + lock_path = APP_DIR / f"{os.getpid()}.lock" + lock_path.touch() + return True + + +def _release_lock(): + for f in APP_DIR.glob("*.lock"): + try: + if int(f.stem) == os.getpid(): + f.unlink(missing_ok=True) + except (ValueError, OSError): + pass + + +def load_config() -> dict: + if CONFIG_FILE.exists(): + try: + with open(CONFIG_FILE, encoding="utf-8") as fh: + cfg = json.load(fh) + merged = {**DEFAULT_CONFIG, **cfg} + return merged + except Exception as exc: + log.warning("Config load failed: %s — using defaults", exc) + return dict(DEFAULT_CONFIG) + + +def save_config(cfg: dict): + _ensure_dirs() + with open(CONFIG_FILE, "w", encoding="utf-8") as fh: + json.dump(cfg, fh, indent=2) + + +# ── proxy lifecycle ────────────────────────────────────────────────────────── + +def _run_proxy(cfg: dict): + """Runs in a daemon thread. Blocks until the proxy stops.""" + import asyncio + + stop = asyncio.Event() + + global _stop_event + _stop_event = stop + + dc_opt = tg_ws_proxy.parse_dc_ip_list(cfg["dc_ip"]) + log.info("Starting proxy on %s:%d", cfg["host"], cfg["port"]) + + try: + tg_ws_proxy.run_proxy( + port=cfg["port"], + dc_opt=dc_opt, + stop_event=stop, + host=cfg["host"], + ) + except Exception as exc: + log.error("Proxy crashed: %s", exc) + finally: + log.info("Proxy thread exited") + + +def start_proxy(cfg: dict): + global _proxy_thread, _stop_event + _stop_event = None + t = threading.Thread(target=_run_proxy, args=(cfg,), daemon=True) + t.start() + _proxy_thread = t + log.info("Proxy thread started (port=%d)", cfg["port"]) + + +def stop_proxy(): + global _stop_event, _proxy_thread + if _stop_event is not None: + try: + # _stop_event is an asyncio.Event living in the proxy thread's loop + # We signal it thread-safely via call_soon_threadsafe on its loop + import asyncio + loop = getattr(_stop_event, "_loop", None) + if loop and not loop.is_closed(): + loop.call_soon_threadsafe(_stop_event.set) + else: + _stop_event.set() + except Exception: + pass + _stop_event = None + + if _proxy_thread and _proxy_thread.is_alive(): + _proxy_thread.join(timeout=5) + _proxy_thread = None + log.info("Proxy stopped") + + +def restart_proxy(): + stop_proxy() + time.sleep(0.5) + start_proxy(_config) + + +# ── settings window (rumps — runs on main thread) ──────────────────────────── + +def open_settings(_sender=None): + """ + Settings dialog using rumps.Window (native macOS, main-thread safe). + Each field is edited in a separate window because rumps.Window has + one text input. We collect all fields sequentially. + """ + host = _config.get("host", "127.0.0.1") + port = _config.get("port", 1080) + dc_ip = _config.get("dc_ip", []) + verbose = _config.get("verbose", False) + + # ── Host ── + w = rumps.Window( + message="Введите host (например 127.0.0.1):", + title="Настройки — Host", + default_text=host, + ok="Далее", + cancel="Отмена", + dimensions=(320, 24), + ) + resp = w.run() + if not resp.clicked: + return + new_host = resp.text.strip() or host + + # ── Port ── + w = rumps.Window( + message="Введите порт (например 1080):", + title="Настройки — Port", + default_text=str(port), + ok="Далее", + cancel="Отмена", + dimensions=(320, 24), + ) + resp = w.run() + if not resp.clicked: + return + try: + new_port = int(resp.text.strip()) + except ValueError: + rumps.alert(title="Ошибка", message="Порт должен быть числом.") + return + + # ── DC IPs ── + w = rumps.Window( + message="DC IPs через запятую (например: 2:149.154.167.220, 4:149.154.167.220):", + title="Настройки — DC IPs", + default_text=", ".join(dc_ip), + ok="Далее", + cancel="Отмена", + dimensions=(400, 24), + ) + resp = w.run() + if not resp.clicked: + return + new_dc_ip = [x.strip() for x in resp.text.split(",") if x.strip()] + try: + tg_ws_proxy.parse_dc_ip_list(new_dc_ip) + except ValueError as exc: + rumps.alert(title="Ошибка DC IPs", message=str(exc)) + return + + # ── Verbose ── + w = rumps.Window( + message="Verbose logging? Введите 'да' или 'нет':", + title="Настройки — Verbose", + default_text="да" if verbose else "нет", + ok="Сохранить", + cancel="Отмена", + dimensions=(320, 24), + ) + resp = w.run() + if not resp.clicked: + return + new_verbose = resp.text.strip().lower() in ("да", "yes", "1", "true") + + new_cfg = { + "host": new_host, + "port": new_port, + "dc_ip": new_dc_ip, + "verbose": new_verbose, + } + save_config(new_cfg) + _config.update(new_cfg) + log.info("Config saved: %s", new_cfg) + + resp2 = rumps.alert( + title="Настройки сохранены", + message="Перезапустить прокси сейчас?", + ok="Перезапустить", + cancel="Позже", + ) + if resp2 == 1: + threading.Thread(target=restart_proxy, daemon=True).start() + + +# ── first-run dialog ───────────────────────────────────────────────────────── + +def show_first_run(): + host = _config.get("host", "127.0.0.1") + port = _config.get("port", 1080) + rumps.alert( + title="TG WS Proxy — Первый запуск", + message=( + "Прокси запущен!\n\n" + "Чтобы подключить Telegram Desktop:\n\n" + "1. Telegram → Настройки → Продвинутые\n" + " → Тип подключения → Прокси\n\n" + "2. Добавьте SOCKS5:\n" + f" Сервер: {host} Порт: {port}\n" + " Логин/Пароль: пусто\n\n" + "Или нажмите «Открыть в Telegram» в строке меню." + ), + ok="Понятно", + ) + FIRST_RUN_MARKER.touch() + + +# ── rumps app ──────────────────────────────────────────────────────────────── + +def _load_icon() -> Optional[str]: + """ + Return path to icon PNG. + Works both in dev (next to macos.py) and inside a PyInstaller .app bundle + where datas land in sys._MEIPASS. + """ + import sys as _sys + bases = [Path(__file__).parent] + if hasattr(_sys, '_MEIPASS'): + bases.insert(0, Path(_sys._MEIPASS)) + for base in bases: + for name in ("icon_tray.png", "icon.png"): + p = base / name + if p.exists(): + return str(p) + return None + + +class TgWsProxyApp(rumps.App): + def __init__(self): + icon_path = _load_icon() + super().__init__( + name=APP_NAME, + title=None if icon_path else "TG", + icon=icon_path, + template=False, # monochrome template: respects Dark/Light mode + quit_button=None, + ) + self.menu = self._build_menu() + + def _build_menu(self): + host = _config.get("host", "127.0.0.1") + port = _config.get("port", 1080) + dc_list = ", ".join( + f"DC{e.split(':')[0]}" for e in _config.get("dc_ip", []) + ) + items = [ + rumps.MenuItem("Открыть в Telegram", callback=self.open_in_telegram), + rumps.separator, + rumps.MenuItem(f"Прокси: {host}:{port} [{dc_list}]"), + rumps.MenuItem("Перезапустить прокси", callback=self.restart), + rumps.separator, + rumps.MenuItem("Настройки…", callback=self.settings), + rumps.MenuItem("Открыть логи", callback=self.open_logs), + rumps.separator, + rumps.MenuItem("Выход", callback=self.quit_app), + ] + return items + + # ── callbacks ──────────────────────────────────────────────────────────── + + def open_in_telegram(self, _sender): + host = _config.get("host", "127.0.0.1") + port = _config.get("port", 1080) + url = f"tg://socks?server={host}&port={port}" + webbrowser.open(url) + log.info("Opened telegram socks link: %s", url) + + def restart(self, _sender): + log.info("Restart requested from tray") + threading.Thread(target=restart_proxy, daemon=True).start() + rumps.notification( + APP_NAME, "Прокси перезапускается", "", sound=False + ) + + def settings(self, _sender): + open_settings() + + def open_logs(self, _sender): + subprocess.Popen(["open", str(LOG_FILE)]) + + def quit_app(self, _sender): + global _exiting + _exiting = True + log.info("Quit requested") + stop_proxy() + _release_lock() + rumps.quit_application() + + +# ── entry point ─────────────────────────────────────────────────────────────── + +def main(): + global _config + + _ensure_dirs() + _config = load_config() + _setup_logging() + + log.info("TG WS Proxy tray app starting (macOS)") + + if not _acquire_lock(): + rumps.alert("TG WS Proxy уже запущен!") + sys.exit(0) + + log.info("Config: %s", _config) + log.info("Log file: %s", LOG_FILE) + + # ── Auto-update proxy core at startup ──────────────────────────────── + def _do_update(): + updated = updater.check_and_update() + if updated: + log.info("Proxy core updated — reloading and restarting proxy") + import importlib + global tg_ws_proxy + try: + import proxy.tg_ws_proxy as _fresh + importlib.reload(_fresh) + tg_ws_proxy = _fresh + except Exception as exc: + log.error("Failed to reload proxy core after update: %s", exc) + restart_proxy() + rumps.notification( + APP_NAME, + "Обновление установлено", + "Proxy core обновлён и перезапущен.", + sound=False, + ) + else: + start_proxy(_config) + + threading.Thread(target=_do_update, daemon=True).start() + # ───────────────────────────────────────────────────────────────────── + + if not FIRST_RUN_MARKER.exists(): + # Delay slightly so rumps app loop is ready before showing alert + def _first_run_timer(sender): + sender.stop() + show_first_run() + t = rumps.Timer(_first_run_timer, 1) + t.start() + + app = TgWsProxyApp() + app.run() + + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/macos/macos.spec b/macos/macos.spec new file mode 100644 index 0000000..a44606d --- /dev/null +++ b/macos/macos.spec @@ -0,0 +1,88 @@ +# -*- mode: python ; coding: utf-8 -*- +# PyInstaller spec for macOS — builds a .app bundle +# Usage: pyinstaller macos.spec +# +# Before building, generate icon.icns: +# iconutil -c icns TgWsProxy.iconset -o icon.icns +# (iconutil is built into macOS, no install needed) + +import sys +from pathlib import Path + +block_cipher = None + +a = Analysis( + ['macos.py'], + pathex=[str(Path('proxy').resolve())], + binaries=[], + # Bundle icon_tray.png so it's available next to the exe at runtime + datas=[ + ('icon_tray.png', '.'), + ('updater.py', '.'), + ], + hiddenimports=[ + 'proxy.tg_ws_proxy', + 'updater', + 'cryptography', + 'cryptography.hazmat.primitives.ciphers', + 'cryptography.hazmat.primitives.ciphers.algorithms', + 'cryptography.hazmat.primitives.ciphers.modes', + 'rumps', + 'psutil', + 'asyncio', + 'ssl', + ], + hookspath=[], + hooksconfig={}, + runtime_hooks=[], + excludes=['tkinter'], + win_no_prefer_redirects=False, + win_private_assemblies=False, + cipher=block_cipher, + noarchive=False, +) + +pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher) + +exe = EXE( + pyz, + a.scripts, + [], + exclude_binaries=True, + name='TgWsProxy', + debug=False, + bootloader_ignore_signals=False, + strip=False, + upx=True, + console=False, + disable_windowed_traceback=False, + argv_emulation=True, + target_arch=None, + codesign_identity=None, + entitlements_file=None, +) + +coll = COLLECT( + exe, + a.binaries, + a.zipfiles, + a.datas, + strip=False, + upx=True, + upx_exclude=[], + name='TgWsProxy', +) + +app = BUNDLE( + coll, + name='TgWsProxy.app', + icon='icon.icns', # Finder/Dock icon — generate with iconutil (see top comment) + bundle_identifier='com.tgwsproxy.app', + info_plist={ + 'NSPrincipalClass': 'NSApplication', + 'NSAppleScriptEnabled': False, + 'LSUIElement': True, + 'CFBundleShortVersionString': '1.1.0', + 'NSHighResolutionCapable': True, + }, +) diff --git a/macos/updater.py b/macos/updater.py new file mode 100644 index 0000000..0eda599 --- /dev/null +++ b/macos/updater.py @@ -0,0 +1,100 @@ +""" +updater.py — автообновление proxy/tg_ws_proxy.py с GitHub main ветки. + +Логика: + 1. Скачивает актуальный файл с GitHub raw + 2. Сравнивает SHA-256 с локальной копией + 3. Если отличается — сохраняет новую версию, возвращает True + 4. Вся работа синхронная (вызывается из фонового потока) +""" +from __future__ import annotations + +import hashlib +import logging +import shutil +import sys +import urllib.request +from pathlib import Path +from typing import Optional + +log = logging.getLogger("tg-ws-updater") + +RAW_URL = ( + "https://raw.githubusercontent.com/" + "Flowseal/tg-ws-proxy/main/proxy/tg_ws_proxy.py" +) + +# Локальный путь к файлу ядра (рядом с этим скриптом) +_HERE = Path(__file__).parent +PROXY_CORE = _HERE / "proxy" / "tg_ws_proxy.py" + +TIMEOUT = 15 # секунд на скачивание + + +def _sha256(path: Path) -> Optional[str]: + """SHA-256 файла или None если файл не существует.""" + if not path.exists(): + return None + h = hashlib.sha256() + with open(path, "rb") as fh: + for chunk in iter(lambda: fh.read(65536), b""): + h.update(chunk) + return h.hexdigest() + + +def _fetch(url: str) -> bytes: + """Скачать URL, вернуть содержимое как bytes.""" + req = urllib.request.Request( + url, + headers={"User-Agent": "tg-ws-proxy-macos-updater/1.0"}, + ) + with urllib.request.urlopen(req, timeout=TIMEOUT) as resp: + return resp.read() + + +def check_and_update() -> bool: + """ + Проверить обновление proxy core. + + Возвращает True если файл был обновлён, False если уже актуален + или произошла ошибка (ошибки логируются, не бросаются). + """ + log.info("Checking for proxy core update: %s", RAW_URL) + try: + new_content = _fetch(RAW_URL) + except Exception as exc: + log.warning("Update check failed (network): %s", exc) + return False + + new_hash = hashlib.sha256(new_content).hexdigest() + old_hash = _sha256(PROXY_CORE) + + if new_hash == old_hash: + log.info("Proxy core is up to date (sha256: %s…)", new_hash[:12]) + return False + + log.info( + "Proxy core update detected: %s… → %s…", + (old_hash or "none")[:12], + new_hash[:12], + ) + + # Атомарная замена: пишем во временный файл, потом переименовываем + tmp = PROXY_CORE.with_suffix(".py.tmp") + try: + PROXY_CORE.parent.mkdir(parents=True, exist_ok=True) + tmp.write_bytes(new_content) + shutil.move(str(tmp), str(PROXY_CORE)) + except Exception as exc: + log.error("Failed to write updated proxy core: %s", exc) + tmp.unlink(missing_ok=True) + return False + + # Выгрузить старый модуль из sys.modules, чтобы следующий import + # подхватил новый файл с диска + for key in list(sys.modules.keys()): + if "tg_ws_proxy" in key: + del sys.modules[key] + + log.info("Proxy core updated successfully") + return True