From b6c09470fcc9f64da85f41344b73a8d6f7e0dd4a Mon Sep 17 00:00:00 2001 From: 2dust <31833384+2dust@users.noreply.github.com> Date: Fri, 30 Aug 2024 13:47:53 +0800 Subject: [PATCH] Add global exception catching --- v2rayN/v2rayN.Desktop/App.axaml.cs | 16 ++++++++++++++ .../v2rayN.Desktop/Views/SubEditWindow.axaml | 20 +++++++++++++++++- .../Views/SubEditWindow.axaml.cs | 1 + v2rayN/v2rayN.Desktop/v2rayN.Desktop.csproj | 7 ++++++ v2rayN/v2rayN.Desktop/v2rayN.ico | Bin 0 -> 61439 bytes 5 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 v2rayN/v2rayN.Desktop/v2rayN.ico diff --git a/v2rayN/v2rayN.Desktop/App.axaml.cs b/v2rayN/v2rayN.Desktop/App.axaml.cs index 5619e7e01a..fcebaf66fb 100644 --- a/v2rayN/v2rayN.Desktop/App.axaml.cs +++ b/v2rayN/v2rayN.Desktop/App.axaml.cs @@ -15,6 +15,9 @@ public partial class App : Application public override void Initialize() { AvaloniaXamlLoader.Load(this); + + AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException; + TaskScheduler.UnobservedTaskException += TaskScheduler_UnobservedTaskException; } public override void OnFrameworkInitializationCompleted() @@ -71,6 +74,19 @@ private void Init() } } + private void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e) + { + if (e.ExceptionObject != null) + { + Logging.SaveLog("CurrentDomain_UnhandledException", (Exception)e.ExceptionObject!); + } + } + + private void TaskScheduler_UnobservedTaskException(object? sender, UnobservedTaskExceptionEventArgs e) + { + Logging.SaveLog("TaskScheduler_UnobservedTaskException", e.Exception); + } + private void OnExit(object? sender, ControlledApplicationLifetimeExitEventArgs e) { } diff --git a/v2rayN/v2rayN.Desktop/Views/SubEditWindow.axaml b/v2rayN/v2rayN.Desktop/Views/SubEditWindow.axaml index 9c8ce129a0..a8a05b1bfa 100644 --- a/v2rayN/v2rayN.Desktop/Views/SubEditWindow.axaml +++ b/v2rayN/v2rayN.Desktop/Views/SubEditWindow.axaml @@ -49,6 +49,7 @@ + @@ -213,13 +214,30 @@ + + + vm.SelectedSource.convertTarget, v => v.cmbConvertTarget.SelectedValue).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.prevProfile, v => v.txtPrevProfile.Text).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.SelectedSource.nextProfile, v => v.txtNextProfile.Text).DisposeWith(disposables); + this.Bind(ViewModel, vm => vm.SelectedSource.preSocksPort, v => v.txtPreSocksPort.Text).DisposeWith(disposables); this.BindCommand(ViewModel, vm => vm.SaveCmd, v => v.btnSave).DisposeWith(disposables); }); diff --git a/v2rayN/v2rayN.Desktop/v2rayN.Desktop.csproj b/v2rayN/v2rayN.Desktop/v2rayN.Desktop.csproj index b0fc246cf1..c5496803fc 100644 --- a/v2rayN/v2rayN.Desktop/v2rayN.Desktop.csproj +++ b/v2rayN/v2rayN.Desktop/v2rayN.Desktop.csproj @@ -4,6 +4,7 @@ net8.0 enable enable + v2rayN.ico true true 6.55 @@ -35,5 +36,11 @@ + + + Never + + + diff --git a/v2rayN/v2rayN.Desktop/v2rayN.ico b/v2rayN/v2rayN.Desktop/v2rayN.ico new file mode 100644 index 0000000000000000000000000000000000000000..a978e0a899c972fcdaa2da4dd1449fbe700bb927 GIT binary patch literal 61439 zcmeEv2UrwIw{{IV2@FG0R6r0hkrj+2(KY8B0CCL$MORd!t~stbBIcZPKu}lFHGpf* zsB7L;%t-40yggH6Gos?|e)rzz`M-HAtGc`Dq&ju#)T!!*F&Q&q=H}*<>o8XtV<#D- zYev@wtgkL(FX*1~+JW`eVXT8bW45+#^@H^!%h6d)fazWUg9G!OV2h`kjXve zfvp(xswwwW1Tihk_U5JK3I~~I#}0|Vcm_BH`i|%;4|kG#`i|@{S>fpv*s&ws2vW#> zy+?LXD71n*distCcaV9vuc>I?+Jjkm$`uL=g6l(YNhr+1r?r!a(1OIo^8FdhHe)P{ z`XEi4Xq73GSVQt3zmGboi#BLmR8G`6U-_L|*w~c-%ssg3liJ25uM7i zB@?=`j6<{8+L+30aZCU^xMzbX_epX6*zk^J+0u#KSYB=pyMFC5YaZalei`V*5(w_< z`Oz$XWFNM8d{sPC?k&&T+KACI!=^59k>1yUy%EZu^Y&z4@H}rC-RNczT!`sk@nrIuCxZ5dj zcp7LknT}zpDt5{nr3`gsGF>A#x)yJ^8R_EMtcqRLYPeyFYaK%;XS<3n_H@IwvW|>t z+mc5f>IXQYk};wK=xWpDB~WUp-ypx z5S}Qqiv?sC1+t3**;avUyO_w%3uNyFvikz+5R51(3~Jkg=7j>92L!UQ0@+xB?6W}g zfI#+Gpm{-{`9T02)InXe0SwCZK^I`-IoWH0Y`;J@ULboe(3~MAvgZQXaj_2Ba*-Fb zrPL0*fj;0M+fUQD@I@FjCx~^?25l)VgnWP-bkckxw*L|g)InXeL0d`(A!o=6yh_^_ z2Lp9b7j4kCNPChOZ%=cYKy#W%i&P#oziPHu(@*oHK=Y*7hUQ9v=1PI)(jqX>FX&qd z{Yv@8R2FDH7HB>e>(hKJ(0nY=d|U(u&B+4I$)Y|H?U0|k|7gA!XucO{z87e|SN9#w z`Qkl1qq$$yBlJ1is&qiDKaef@5po8v&>@t`pAhA)sXtr~304&J3VH-x0Gwj=SE+kN z^j8Aoo8yP@6gz$-FhrfCdPT-BU5m2f^?0u7%kleP%Hh{ZeLDDa{x=}h?q%9p4T%D88TI^PQ$Z7BIu+Cy-1C>PEw^b$_b_Y@P#xJL=kPzQBOgoo;x zQ~hMh^8xSBG&f<#&sBv@2~~uR@ydiU?%^5gpsuP7mI`0|Q9Z~a<1EpKw$P;&(UpYN zqg{n%BV2^VQ5D6ML}lFD7*|EuOt?@NZO|4libFv6L3hS)3p|BgWCJ#jbr(i53aTKOdLU~623c{R0PQpsU55CX_Z3zx=6ybxeA@5|+fO?>7-OmBS z;XP{wmvTlzkf)gt+0ITqE`K7M8cX&F_8xe^7uuk$iVw(F-5*p&|Kx*D(1Q9)V(N+Z zV&nQ1f@2v&p`M$mFu3g}9Nd1xHi4hT!w3hp1q{FfOfDxX??pdBmf#mO{W83^2p|7R zaSZta4zxjAz)P5ng5g1<>lBw9mO- z6$5_>!JqIg`6Ml#EsW?DD7<^~QVkykDGrQ}BJx=v+9$~8v;M{W6xr2F4GZu)1z8ER zqJQ`zjvy~Hahyy0R|Ok7^hrNS$EFUfCiLo9Uk!ixk~u=>V5Lu_#PLG?3-7HlMcN5)$4ueirs)Fw0B#R>K67M4dNxh0gSzJr&K3^NZ^LQVv=5)zH|QD0 z3&tgUE9f_e{ZprM;ypY=9Zma2^cJyiDjv+~zS=%xJiwk{%mW5=1Nw)AGVbA7N$j)4 z&Y`c>^9yVh?Cu&G^B9+)6X{Fy3))gDc7BoI03V;`$EnKsQN%?&ZK8y-=KQE?Q)FJ@ zFg0_ki~c~LLkHCJJH|PZ=KQXztDa9Z;eG9z+HxB^p2`^SNPJx4*;nBfvUrxm>{&K5 zV_8g}r7>-a^2t=`YnVShrN0+{R7M?XKvF=DfPBwSJIJTC z7d$}a&%(>e(aF(S8K$IVZiuC4u%%BM3st8ooD>SVr>7z$NUW~q6)2ZS$tim26o4D8 z6^clOTpm8uGuW9fwSt{(J%&aNr7)+$(Sb3Aqi2nAOz!JB)YCJB;*=KQfwq%8WJ8B~ zQWXkRwsulPPa4M*Hu9(_%XUC6x1B^4q6me;!b9dM_l%xI734OGD0zsvwsY$!t4XL3 zJ`@PF2sJ%N1z%4eMF53CeQVIQh(hk^pzUZWx0=)m6%@4856}t$ypGBWmY%H$zD_P#A^FDIcX6d|1^b@W698-*jqaf6AR z);2&o-XfUz^HNmw_6(ORyj!;oCXvcKNu0zSiAN53AYdz3Sc5sA)^y2a?OH1W>5iqR z0*?{E^>hlhwD9B|BJ&ECTX=d}wpKm{3ZK@&&Z;OcTF9ITD}Ra`pMIjj&eDgL2!)Kr z=QHM?!5>8CNK%~JwFDoNt?k!KMMzyeIb1`gm7fRlbj_1u7c?MGvhk*_Mo zkB`i7XXG!j!<3H9aAV|OvZJ%y8Tp!w><}Y6%g7&Lzf!Cjv01W*VvL#mZkF_u3nN>| z$X1E*XtG^weXKJ6jQB9wV77m9b*fj1%^Kju$S#Yq-Eln~#Mm*d9|>M%wrE&IHmXZG zF%BI~`Ooxx1Kr;_w-ejBxIbGzyDwWgvp2=6+p(Yf*I?`C^ks)v3}VOE4rH4XtFz?< z|Mu@GV!Zm+<&$E(n*1a7;@JaMSdh=s)(&T94=1r}m(R10IUiW&+2gEjeM=VAp)A$8 z&+_y0*`(MXSv!AA7ESSK@&Q=g>Za`GwTmqM#8Kv3xfC1P-i{6KAId6}(Pw^i9owV4 z7|ZTJvF)r|m)V3teyqHW9&>jxX5_1|$rQtWeE%97+uxV{ML4QgFk(F#+K4glwPRda z^2kc;$%AXGMNk#?=hOS__RVYT;e)$W$C^zixgm!BbA*E!w@1wW=^xkG!l4z}pARV~ zc|H5%DvKT7lR1{wC!9uX>#UB<-`$MhJF=MrDzLC0Y#8~hZ0p#nYyY_07BzfCXst^0a~WW7H^kY5Ly*Z#ZA^yPMTWHO*h5*N(!fD>L(FYd zG*}y0nUu2|G}u>C!DWzL4HGK^kxQAOiEVlNff2sa3IpxS+nN~SxlCqc(%)`CC3-Hc zP}#1(i4mBTX&IZB>E|LomsD`EFJoRx3(vJp!YP)nd@iZb#ZGRbjpsTh7Iu#O`KJn% z`}H)T@H->s6?RVQ=jsYhb_x|bp5RGDmzO^c;pX;0SRKai7>qlN8w3eftg^9kB zKDk|&O0~NB`ZjCct-HEHm|eJ%KJaJXwq1KXZ_%NFszRsE zI?4*ITDPep%7=;at?wV;>l+vpT&YrRC4`2JerPPpm&pvwOls6bD?hP&l@RLIvo%xo z5B0Bk)oRtMySbzHD^>Dv^Q>0Q%iD+R80}%0I9If@cXUxccdcx1SFwr>?PaKxSVsC~ zUaq{IJ?&sPIXc+em4|*Qp^H^y)_OK3*yj*`qJHYC)ekjD$IMJj%(3%fQH*}0g2wpZ zxK$)j1#x`o>gi*AsY&CHl}PXaKk40Xl>cw}DGuMDwq%dVpV6jNo>EitUj|YhgGBKe zl$%n*GwqT=D|syyT;R#1@<+QDk*lC{58jg*dz8% z$e$C)mlG4s_2NBMTvDWo+M&%%z$hO2*Y8rh5Q32fyog1Tuc(ZdVy#ST*Wwc5S%_Vt zF4~A~l`ulSj_uP^YJ)XxU&8$X?a3b%$hQ$=z~tX3*Xb1dARk8{zf?>pW6uF=cup7A z)o2SClmM$QrEd-)RlPjQMcHDVj@UE#Szk0lzEvXICDI`x@O(mm+8*k_O%@S{CsOTMr`zPmtvxj??RKtA>t zX#g#V3u3m?@P$;Vn<{c@4QkZ-5)}Lwmp>pIkJj-$Mgr!D*m%iwG02 zRpSCq2KBf1ClJ_<|Z2@M9jJc!NOk2K9YjD2@i4+W>y(HthP5(g_#Oi7@al0Y#f_4rWIP`n%{-Xu`GNuYR>xTmOTe^vM)2XX$v`5(vt za|Xq_)OdM;;$CXK=Hv5ga-g`FKyfkA{sVS#^N)&#qVq4=N{Y(~6qged#pVQx&C$7% zc51$*_)(^qomhwBcItK%zY{2aCs6!O>W|F;PU(;MhyNk^o8lfZ$pF3s#SBGVfDOku z;&Xx~Zd_ALQS^&Y7y5&?=yUiJs=Z>2ySu<8#m&ofKZH_I|BK`RUx534fQ`8Uv_L<( z|Al)TFY12ge<}T8_@Tx6UlJPNr@~hh?IibwFn?oQU>*Z+#iio>Pw)*`fJy1A{wHXl zI->tgx!V8cItjhR7{)vXTPFJ7v|onuzvX{R8S?JbVuQTkCIeUn4=L-b=yWhvr^N0>x2~N=hrQpQhT2$x`j90IqsZg>V8l z_ES74g;Dx@`-a#qr1u!q`-TYw>2Lhx-p;L^oirP2d4)JSIk)yIdeDeAs6s4)E!zZn zg@go1n&?`1I$`Td?&)PAZQLL61MwSt{2Xd{j`9%=W|vb9BsgYto+m!-m5Hk7t3J;QC}v=bUE z-q#Kxx;xC5)6QgsLavbes7R7Kddd~!ncgqf)^clwJi@{=#2F3RV4HMOtA4ccxguh| z+%qD`OF_4_f*rjSib>-sQWh?^#wMr2vW+=)mY0trP%#M&YI+W}mPaToJ)K+8{-`q{ zqx)h5b47%;oc3D@fs>O{ur=Km8z`)Q3HKao2?VrPDAq>1v_X{FDY!q`%03C4Mm`rhgL8NO9=-J z!mVpr%ZDi}%xM$SQi)f@plvOu`awRev`NM`BAp_JFxuG+_oRJU!W%4?6FuXBx|K{e zw5F$}C+*)lIms0fgm*G+pb`eXUxLC1Dy#{9M7XknEL?$}v>?T?CO8vh*0fbC zHn40*`s)-DL>vSDP`TJZPe$}(-&zrDOZ6s@Mu-hshetS)S*8tSY*0@c7w#cfVo*3j zvt(W&mS~?Sr#?|O2yvwTWsa>aqKG#e8+ka%CPMC6$;*dsGpis^3*yaF9$`%iN7|s; z@TIXL_o3bMU^!_g@$T&9N#Nv`G;Q_fH8z&9(TqHc zj3n|j#Fyz_Npj)%B6PksjbmCEFMi0@Qk-xvG#nG@1)+-#~$%IdiM+a#CQjc&ZDutld6mR@N{O4EskYV71(5AiI(>_N28PtV8)WLxO{Gx7n&eSbQaCGJhrSz3Zsk=#NC`na+& zp%vMf9u*m#(`7MK-aOWeZ5ii9d{<>FV{5YaZ?oCQ4{uoxrSSuO*=VYJ`RqaV;PL^g z>%q3sd4>feyjgzUM{%D1d4QjIc3^aOXLj{`3cGvxC|ecdE}m(aPxbn=_Z0WlacM-lw(vkhx)RxT~;>=QKx|2+t+2Vv|Y*1(*y%*P;1=p^`8v4i?o%Li_&L3vS z(hf22$_iH9(TI6fG-h;ekj){v()l>nsD_+%Z5zny)^K5TCYZT8%9*{b9;;m5kYJcI zoQ)Vp=MXvsSg}E2jac29sAtZOrXFOK9L&Y@2RNV5z}sAW&ktufW{hsl0tpt*3Dl`( z%KEk_P45L(Wuv;5qw^GPSv`Ug)u{rjRkal9h9~>M&xTz-m%?h(HJx{64gKBO$)o$& zFyeV8_3P!|&#2U_#6lY<}7Es=XYf{FCJ$t>y>6MWewQQsrA^x5$>$1p9QPxU?iT8p!JM+R-$!11=~xy zg|iZIJ?zEz8NW6@{`>4}6427dj-nQ2T3TPLCqAQ^R9m^bNST)Gt4*|&HRZKj^$lIi z%9Rbj*g~wW?P_Fv)YQz>)XaR2v5_7T^(C@Uo%T^p%_Kil%YJgAsyGw`N!zNreQBy~ zV{5mjjGe8G*s#4-v5XVmvPVo))7;Crc#o{$?CiXvf}^)fd1_)>sVt$;kQCA4YHenA z=x|Enw5rZksXqOxI#;P|OD(KjHA$lC`qjA3rM#JGKNUqXnYN{wSvBXX>wT5=HA#vlF;zA*vy|f)1v!vf zdZuRO3H(|=Reep8)>6k2f^{N6Bqt*?GZ$y)I`!1`HAt#Q2<*+w=$Ha=K;#&knRz=q z*YNvPUxTC?&d%OuX2#;^k;&w9%xoN;-RDZ{7bR(~yR)N>nF*;j;Omw$v#n5dns1T% zMM&~pR<(kynQ1N5*OC#trJbt!ko-8mO0h~h&c}I$otdegl74+Nvog-kUYhmQB#~}- zIXka0GbJr0dbBj_uN1-aj$4JE_NwY!#>`AvU!=#``4c@!%he4yNt~Wf{5pH6`5m)( z32y*hTG}(hcbRhq>M-%71{np&v+5^#&W~BpjW>XLFYM_n%5%;lr98E#EBmWUpD@J6#U~_|A@M8qlk0Q;0Rsn#^#>23`hKm4att`Z^wUUNOR~hGKFeeZ zQyMQ}9aR;=mE-*rNk8`PQ@5`zjTf;#X^=&G8jl@#{mxwoJpDeA)V)XP(Dw9>uQ(p5 zzBu0L)J}^QE$P=vS)E8~LsxXOMT@rWB;y@Jpq!bFO#q$KX%Nz|A$6SU*QntS4T6IL z0~$AJT24hhP!NJzWFc&8lX0q3w;r!ed3_%;rT%0?tx1Y9r{5N z-LLc%TN^hT_Rh}k9-b7*@F2TGmc)$=baewMbQMXk=Vs+AqXq1_ zXw$1yQ`vI~F{lm&E-Ejc4sv#Os_5wOX}*vW!yCx7t*ph_%Z82&splhWnvXt% zjwWP?ika^e)J?@!7n#r@gPty{AozyI}hsspI_kN#+_i~R;YN{F?) zQu3t~ph|v}SE7VxsPp-_`;SsrJaD2zi&AMy?Pzah9<9^Usr;DITe{Ar>wL))YT35DR*C%C^;D&(|NTuH!rL!4#eG>ZFz*c&WCLL0QD7>c@I02?@f3poEN4+I1H z(v4*NmkPEhGwdN!tV(=0lVV^+>7{*5oG+x9n0QVC?^mMC&m0!V8^x70&pLt+;Oqt( z{th2#N2w2`Hv~)6ap*9`M?`t!dcn#(_+9|^{=o~*0pPq1z9oP%f5v%{@*$oFBE94AflG2m5xjtw5{(C{hdBjf zRV{ZZ?dW%k$q5vb6DTGpP)tssc%wiuM1f+30>xm9yt~WKSKxhKiXjRV!&QH$fb)W! z;>AUD3OIQ`5IyJzjOnl1C3>zy2{ux+GthUb&VY7&ON3&KqI*a&MuB3C;#p9fNu_wF zcs^HpCWq56&BgbT=}aU)kH`5CVN1pZaDxVwEI|`&>leoYJ@cmo8!Xxxil?jll+zAe zoPIDt@nM1DzG@yQ4lD9N@mGOju7Z?q%`*6)SgZQH31DmT02+uUF%eyuduZ3@^B>*U zrGz<9tP2|{wd?3#E+>lfD&2F{|KNe*(P|!eKZrb#K55ded5tq!7&m-O@b|+p9zX+V z;dH5J)YasG?qkd<-+iXJNvby(Uz~Q}pqOX5**Dxn?TLAk8TgTzzoDs$GKcgQvzN$+l=m&m261aeq&k^VY&;tt_q0U6it9c2m&zXBH9&uVjehX(Pjm@5_&Ct)1KM}t@`vx;7Gr>N8PN^9 zBtC<0$a%&*&t(C*z_yo!e%=pXv`b&nCE$?u0lt61=>ct=P8H4Y6R;M+x=FN|@PT=K z*a1#I<{duPz9oOqkKf<5OTfkPind7QU#Px!#{1xuigpF%&?iy9;G>K5(|itp3vgiD zFn4}0{ovv6=n`=8Gl-ypzyE>vXSf|AdNE$Hp2k`mYg2p=PW{~`*d3f-gf7CL!MOc9 z^z(lB9$f-1(O)9mpn>~%7?)VvfmRjGl_>WmUBY>{B4ZbRJ>Gu-{rK((ryY4o^#`=` z-}mYg|JDh7Z>%4n6QCdKHqfe~8F3ANN*K?g&&PEiK0Vh#_>ljUe(>>4U6S}4z{&CR z^Wvai;+KME9-l#s;~&#cd(B+jU(Ac0;~Lo%Ifo5dfqrgBAxkb-4f-K_#F>iKAI^VC z^@sM(1=>6RBJKP^Np$I3`lF&5w10K{f(LvfrzGQ-&LIeN9zdY;0G!k>=9;?1{Z{x( zeEb5pIDS<=wK#ss#t_X&usNXpll>&WP1Am&4@+u4>1>1eZ8bXIAkcY^FVfB*XzCK3 zi4c8n&|j?mB->7BCOG}veq#Q@T%er4RPQc8-!$hhyu*QSfYBKZPC}6!@~5*KVjViW zQeqx7{Uxm9(C3gp{C2MUn7=@$DuHIujyV|dNb&v`{Rgt4bQVRRvnT?cMJYlzzo7Fe zB!6@Dx2xz}jX>vS_~S3;QeDD(8d!@$k1+4RhvD>V_z$32j001SSn5~(H}og`LppOK z(3zWJX@UIlZ9eID+Q7s2=n|dZ5!cg*3E({hZhN@xhn)nipqZ~>sQgX;na&vrbk0bi zb4CK4Gb)yTI(tO12ze3uVGE&4bQY=DHqx6I4|G;ZptDK>omCRQafWyj=3n^Fh*c7; zNSgk$7V#ynU+^4pLGX)yi9i|hB2>JpvN66lPUKxeeXcP8na zmPmti{X#S*Q&O*ARDLw#;p+7xVtQQfuzsX-W8b8o&XX1UP7a^DOR7tB4o#qQXaal~ zyzc>8B<~b_wtiI6|JC(7osSdfe4Ie%b&+>i7v_W0dGjpg?B=1v(Qb(3wDi&IAf{CQzU=fnt)* zaZ;K!%lOVG+Rzz75e8rZCSU^xohuaRTp{_wRYe*kdXG7)$l9HcVO1X>W{b6$7{7wA zDvd*6EFeC^{R-q*E8+cIzBbdO^-I_I9xr?Z?&AO!otsqq%FtclmiWuxj9;mE5aWl$ zgSb{k3{NwDD4o~%{0v&KZo+$6#q|U3;h7je1l^K&5Bzk%SHYQ zr6leFVBQn=FDM?#=LU`wd>~E$Uj^$`_>9mAE@zbK?6LR^bxOK_p~4LsirD&+$RBmk zjuQGotxK>4h(|(BntX`-kZwVyu-%yZk-oKm1XzG6u`^s}fctOJF6EJ6i2HYxi*|`} z@?-y{{X3fLC36$#1`cumj`Hu)87a-0Wr78}1ly{dABYDki!#F=FMLCB|CC}Jc(-5L zHzjVI{$>mlC&ip@HOhGd_MSs>hl9s<}~qGtNL2{Ox5PG3I^yd z)+ZnmG zW2snAi*Yf^{V5?vQ5=9>UJ)Q^L28p>x)%gt93mLrSRgugwqtTU>(&O2(8h=Gst7 zAltE?@)KmMFH<>-%CH+aD}}%Na#?(~$ZH+t36$DWa-n2I>HmZ+`Ian+PVfwR5q}&@ z=@{|#C*^s>v)ad?YjF;sXW|@yoF_b^R7mwKc)jLAh;goDB{jbXbG*H6W?L+AT(TDHb zspofTnVx@=1@Qs?73kri-a;_Iq*Rd+ralCL_d_;YVa<-2F??N zqX{LNQU2$Cgb)7BEW-ayNlesLH11+U!a<~d*AeJw{_wB1MY04%9~ki4aG zctv=B0ZsoC5+FSAnNAW7VqBTZYFe<4ML&OW4X9d6e~s_roIpFu(y_wX!fg!1ngiE=51e-0CWpA0qvG=L`Ls`7KnF%Nxq7V7Ve4}yb! z4<{TiIUX(pd?!vF1EfAg3esT27!w08_&y~6ULTJ)iLpUd{OL<&#C7m}Ch?qz zhJJ7vY$1IE4V)gLQ(0c<^#U}5_P@h3Z$s@dzqKa#V!u;aDPz)i{CzgHF01-!0rg)* z6I*ew3*YoYY!h)@&LfYx@oVJLd(twmgL~L(!MWbzbOJPh7U`G-opcSq3uEDL+XHG_ zlX!=3%5_V$KkE3qL_fDr@*_QV7TO0`iu**~E+*pNxj~#-dhSQ$kz%R%JAX(x&oK=# zUrKl;O`;4W_vg|W!8p>CJM;lGaofo0CHn7DQvUf%-l-+bsU7Ax*m*VYusOx?j_;6N z|80w~cw9U2?}SycHx$p$Vy_J6n6YO$md;})P#hfRxUm0+Z|7m(5jhg>A>NO(c8DuO zCR`R$U4VVT8R_D50kjpdi$pKU0`tOm&5cywfYK~VV*Cd3L^?=+qlS+?o+GA-{e^31 zchPt7-V4!ve-O_;JJEivvz>w9M&Dw^-Xs35A@+%}*R8pCfqR;J130UM@2BzoYEf?_ zHUndgf3uX+q8dWn9F1MmR>W2d&b%Q6&eAgRia^=sE0tAFBV!pQkYdzntqBmo;>r(|}yc|M$uOy3hIK{a#!S zT^OhORx5CF{1^-TJIb6+_#{PafihN!HPaX81A2xvEY@-AzSq=yz=!?exOsl%H>LiA zcmDexJx^6aQ?oPLsr1aX@Cqslho$~&7d7~BJWS=HSrZzoE@P1 zh*hP6ZzQxyq4kE8cg#85-f{V3e;4yu<`?*fF#aPlAe>Tr09k-Gex?=u58AOF<2|o6$<)6PVzx&(&)j*bGg(r~b~a3J>JYX+-|D@z2Kq&r3QM zN~#B-McOx@RoZvr`Szl*G^~xVMI!#Fj99z)HytP!uy4%m2jIZJ;A>dO7`{3Dbt(TP z?f>tUffUD=%CJG=8j5Ix9I$qlt`EQqc;fm^Ib!Q=z&zy``|*^-cs1(4W=iFUd4=me z;7_EpFPgM`Pyc_f45WG>ErSMrjk$p90BF^m3lTdb9{D(c4FJ#J9cL7=FTOScB-v0ky8EDFz^9}oeXWS0*e$w=Zur>sbJQ2^>XF_ZTdu}Jt?|6nB zF=}c5V?2RxE?=xuHR<`g{6h{UwFkh-`PRe_nmF&EQ~bLg)Q6l8`0&!TJn@M&4r2Ib zRL0($$UEjr&3PYw1?L@c3eB+(TKAc7L;h*$BmqSVPfaBB5L6h`daZNt}JZbpC z_lR%oU0G3j0^TVX>!@Rz&>!L-Fi^8CQbNeUS7P2wL@&C2{2mci* z7Pxxx1SyN(EPqJ`nz1y@39x@s9|-5ErTk-mm9K-qD<#-JoI}wk{t+8e%B7fi5BGh! zY`=H@1OND*LStXKuxH(rZ}Kgz@HH9qY;3C@3)1-ybZYv*nA0);q3>0^^7&7j?uq^n z?jvc&xUrAJ?H_XKx{r^)Z}q=RIVJyt+LRFvY@9A-@tft6$N;f*P9ymL4*%zK|5qdK zA@zR&8)v^c->^f7?`NJUKK=vdr2P;6p|1xvO#LR`(h8a~Kz!MizR!WN06mb##6V+l z{xAAo)&E7-z|`k>PfGloB6zO3{=po;|E>sR3?BgF4Se@&Sz72p?^&j&Zj+K*q+Epm z)@4N74Y?iM^w0I63dPp(P8Hzsy*AJ)o%=M`Kg6qg{i9j~Riu0Bv)sk4f8kF;u3X2U zZ}j(_g--PMkMLcK1G_gA;aPf7gn#OPt~kY1~J`z-zm8PGFB(veiu;ktr2 zNKqa56#qWBW{i}@ua-9@PZ7E`uoikZD=peg=)6=0xK_*HJM97X8>jr#Lg?SBj40c& z;SS;%6!G07^4-7#=SRgqc>FB>t&#!GjfnFA>S8TW#1|wTz`TMz=^*w0kYaZ}Ja`@u@hl+o!2e3yZ$_#mN`(Lmx zht|e?wa=vw4{n;F?qAL$&!v6O??Eo#YY*~2z7|rGdZ@=d#w*TAY508K+W&$b?5C2G zCjXbh2A~d62QQT1@5{mCw|-O) zXG+DnfWs(m9N_#z5gDjtfi*JxBfd^7P7cN0gG@Aa127QVJ#t| zdktDaH>aI)*!&Wme}HVLt{$adD5>|uFpi2l^M$d1{dctbwJ4v5cd^7Xa; zhiuT_cqdkTzf{FD=Nqu$<7u9I0RNy-s`n}$z{_{NM@98<{s}sxmLt~BIFAcF(gYdc zOaOm3llKwNv0lKM39`UC6}+Ke!6$Mg+`}{U^?0g_HsZKa@y_Loxd-+aIHfe8ES`Uo z?DK$jO6inrzNPcUJ*Rf!`8UAfx&*&SbA8O|z}yI(d(;;5fq4E=3K#k%js>!boOkXgp%5dk;vMH;v9G7z=Pe1(nsunX7NszP_mXn89>5;J z&WN#6vOiL~#4_E(o-yJuh(${IDM=Y?Se%{x>iJiS>58_FXemOQlGbp#_m9rMa#;Wl zrJf`MtQ$ocP+80|H}dn(yiYW9^c(aRfAbV}3$Z!q2jqf;SS9X3Rz=P~OYFKPOyESE zLQ0RS3>yD6-Zf;j84YVN2;3q62<~NCT${Ip#^MxnYx~I#E)YpdJ$9Hkfa5 zeuc-bIUWgK_-V5#m66i;pDq(V_(<>*;UlQePH_5o4!ZgKPml-V(9jR?2HS~*GVb9S z;!cODpV0>M8Q>87&-$G1#L=~_)U%HTsxWGf&O z=rQ=?xyUO$LmggU6Nc(Oa9p6&hf<0B`G1q&;$RUSunU%ydQv(Ij(62Fyx#(i;dg-8+8BMFo;&@1kRRJqSS^`Jn^!g63&`jp>&V#Jwl@Leai7pG@h-a zasnl^aiIix{-5mY?~xgJpafqMGQqpFQu^U9Un9@L zA1tL`0)04uGVuchlq>(>ser!+i@yjfh#xMXifOne2nook0W$hbf!K_`=)iNaIbjf+ z69ArzVCXNzW{J(1zGj}r#Gf|L6O`AoFXhU||GEFagqPn>Q=(SWo29(g*UUNJTn;?v za^iC1IhU(i&S?Nlau)$pKZpRRUwA)>4XEFEKcd6Ta7`8bkt_Rsa;p}NN*R^GSwICL1K0)N&uI)xf;0>#Qde|8Q)v)WIOkVQj(5x;lpW74&62&1;4Q zCpvnxF1tu;LzvTOd6ZRuEAOlqqitu6J+SJ}7mZ0!4J0%uG@Hi!^WGj zLq1dw%dA&$H}>Vo^COSEY0GXu>#*9p40zRHTb|*K)TED(o^P5qahWWk`_VNc zZ^zub-ulDyk$TBpcjj*=(w;W{)_7B?UZMsbMq(f|&Z{XmurCC_h z?pw9f79Wi3(LE{TgN&6;ejfewrr9OI?DE6d5w&y@oZjtQHTdRFwv%q3cO6b(z0z)` z#Whasrk#IS>wRrDaAkV;fUEl~TkX@Tf5mik{T?4O-_`rETKOtYJ0?y$zBhx~tng;# zvW(M~gvD#g3Wn+oQ)FGQUF-adm+wBjetu=u9s72J>(nZrmtp<(MoM8)c(rEQJM@`< z;DmdXtXE~0{`owsX8EMK+04rMZGYPo>XX((x3=z+IS+GHRuKe%Yu`_-e}^u(G5iyaSdxOP;=Zi!%S7{!#z9Z+S$hcO>VX^q+6 zI_=M_=4g>Hbw4i;1S6!b!o!Lk~ zGqiilA=P?@t~zV7yLYngufBDHGfOA*(-ORY-nY$v?Y_iG`h0lUWT zGue`CY*t&lm0kAo^C|W8;+kZ(Ok8_axA)8EYk$;9=yY_+GRG$-0adcwzACubJo%&d zn`6!MtG&<8nvg5}Sgy?Q3CZ5PL`QG_q61FQZ-S;mT)B5;*H36W(Kuaiw6RXyoEIG*TN4OW4^L;;DPl|W*8Z74L-0j((zirkfUirSyp$>*ca&u<;IM@czns7We?6B*xh6F zvIvuIGgtJ;Fex{Cys_iiEoH0^%Np*@dSsk&=ebGR;n4+uX0;5-T6OsF(|fUDk4L{~ zceU2ZgfUAp9QsDI8aY4lv|g18_YUt&yrY#MEY4lB@#?ysqfKH$^Xm`V-t=&4gR0rF zW?lCOl>WKP_0IE39X@DqBVb62M6+2|Z|iQU8~=N!)WMnSR=?hGIQ5L*&^`KFTZ9`c zTq9;Jt!OzR;di|r%YB_Pmjq`={3gV>X19$V)31u#o~tcaXy@qoPkv?O8QFVMa;d;U z_X0+EoZd3Z)Npi^LE+;|cjsK3^v*M<`<)(IFKQ<&nH?AzJnqs-mrJ${jHY&SIBd9n zN@V$I0Yhe_g|5x7l-}`~){&;CAFt23*puxD|M~5kwK;BO3yxMSd*zhL*;!dXTAAJ= zG5nce)~emxe)EL>>#r{GxpVD)UhTTW`fppDJF0RivqsgLRkqdJo_N5>aCCJ&{}~_r z-P?Q|Un^os`o2+lbIaG#-IFxmaZ>e~M&TANPV4uWtte}8c*?YZ0Vj^`Et6o}YIRQi zQoXfXHs5i?EN8@p{MuFpmJ@zx6Pz}x`^`Z|t}a{|w!V+)tqB9Kq)p%JmDuA>RItjkmPsj)ShUHQc*W`q};;p=<#k4S^2RR?&~DtjaK$py!> z*G+~#?Myd%Xv<%xw0ZB=YTKe;&G(x$xNgvQX!ehN8$ZlS*3G(F=XuP8cDak18pU;7 z`ckWAec7O^6;F;GUAC}Uty42i&om4u@GoC3Eo?-}@I~&i%WOTyE*}@_9(tp%YeYnu z3O7f7C~bQFW%_}wS98X7w~cw*?9TknGl$Ne6<|~9#~DvH4jnRBr?#F)a7ISBj%U9V z+rV=lqJP`9B&2XC}vL^&fO2;kJR#Y{R!@3<_N{?2QUL@4k1w>XQR{ ziAGjyFW-pqsz3H*CW2eox*6Jp9`Or$rCPZ3tixt zHgHRe728i9TcMwsHsxqs*P}0Q<~F%IWUPJLxHrAFx4+(a>wuZtj#4i+NED)ddfo1j zd9}s`;nMRHhvR-T4?mo0968)zPNSC#rj6Jb5%RRu1GAsPy<*xu6C#%l*j)YE@Exu8 z3cp6pdbgw7gq|_CdzN8)hIhPMsbbRdC8_V)zq>vy@YK80_dM!!o@q+3>~vxjF_vk~ z%*w`E_yv^9&8=L&<6wh^`W~a+#trVYXT`i{?zf(Iu~}&HA%*qv{JBSbf=}Y6Rwf%$ zrtR!8)k@3t<+h2V^1EktkImI@YWwm~&!d)Q(pFZ@-IZzJ93Hs-r{ocdy+VQ?Ca&5i z%Q6c%r&!qDHFJqPTV`~^-|mszFfRYN{a-Ks=ur1WW|J1L&PT_OT#xVnx@#TR zZ#vj&+q@{7UOnzwnOZi?D#fDv&0m?dIfyNNp5gMb?_x{a0Z%WL((|`^(7I=LgPi6E zmwTO@sk?Gi_tBLv>+bIo&?F_SZtYX=WaX@L?&oDLo<6qui}WEWJ(fP``s`MGi|~6U z!)ClW&7QT(KUX%s`^CtpZT{otmcKggS^63ux7^san+hxUXn9P}IqB}zW^=>N)%Et6 z8st#-U>)21cD~CE<1QLUZo7FnefN_ir7T?xo|*){KQ!&biviMi}mA%7m&NS2A8Oip^pO>2&y1c1gt9?&K z<|NbJRVwoSATUGqr4Lzun&_&OHPKF-~d9574klH=KgXWr{02KY3w-Q9d% zPut1*&tA85SW-PF?_w`mO69Ssw{AaP^dSA?E7$CGZm&z*yB@Em6JKRxw;5;76qs~N zzS_^EnRR&iUHvReT{k)U`-Y208;1RMFQL3wZk1*ShW72^m@p%6d58F}as5weryfYz zJN4v8)1TJ3{t@PW?fJx|IW_ywOv#TH!cW{h6fio*XXl;sDJ@Ey#n{E2j}}(c*c@4) zS9yBy)94Me66{RxzcExS%4xTnW`+V(H zGgrM^6P?q*cdD);m}vo|k0#N2g!b8Vvc zxVqi@wllwRUb_j~d#?YbW&s^dhMl>%Y-QNq^b_7j-h0;RjcLnLUu2Kz(OQTa>iH_M zZ{JFf3$I1{x67*X`lWt{SqEK@_{7b;pcRz#Tw$@JwV72&$g8c3>v?p#+iPm-t?4ay zdo0}k!xR6bmTkt3u+e%tH`MxrccqVAE_OKSQm%evRR8=}19~O(A6eyN!K*v5ex#g9 z@=;@cTXOS$XqSqUqh`xz*Aet!mQOLD$cBZrb#ay>HTODjan2eb7H}#;m^# zb={gdS+1Wd3%i`^`mWUU>67*^*N!a+8i8S;q<7r#^YTlR;>Ma>g?!lRl0S39{IW&Tag=I_f26+ z+@vOhs}x>|KD#P=@zr}d``7M;Egy>xSH zB!spV*7a-`zvS`blY@>tKk$2~;;;0Lahr`^zR7YkJKO$U_vOFj<+O7QIzOwSewAML zcgY(6kUT=x)%%xTxpO)@CGXjob#g_|xU@M&P51n)HR5NsK$d05qHDXqE7dNq`Gt(1 z!dB}yZIk6xYmvu@6C3J2`}uLgIJ>Kd`X2GAxleY@=FG&twns81mP%}3pEW_}<8GH@ z20sKhZeo)*I$*o}R8Zn$tF^O@$DTG}zr0E9@495C*@QU1uH$C-+6P&6 zkF?z1^r+VAgokAeXJol3psv*vF5YirNe&>6jO>Ur~4K|5krX0F=5IbiSb8~I(z zRZCuOn_v5{537yydubaVEHx&6*S6&=h1uGctKKh3(!JQ`uXhI$nw-!Yc;Mru(pp=O zzM4GEv6}8K*J>8S4yQN=C-gC!;3b=)+p0zLUglmd1*UCc7viB3?MU^e>pB%V!clV2a4UUB0 z8QF5)izbWv`h`8%Zg~26R6u3jXanunvGt$5xe+whvgz`wDdl zcI#(7>zF}s-${#~ovy4#_vkzqMxh_`RFs^KYhh zlqGJdlX2PbiI?-Gs114DX5O3czGP2+%>q}Fe%ozOGB)%>SHXMeUY>wSG~Ze&8}%CIW8KSV8vvp$l2E3{=?wtv~_ zSx%caop#?NOYSmyP{Q0YhBu=IZ4SCod*GPAwiW*Fer!n0$2X1RQWuRAPAmxXsyp0E zr<~EG_5S6I1_o`54=kNvH$}I>JHyomGPmHp7XmxHbibCKu_m|a{g?qiUa{=`;prTY zcNKl7WnFpRHsfAjqc-6e*2RZqughQ7dq+~ivL)I2@k9ImxOQ)(gR5Put>%XfCg>0sw`leb3gw6WLiv~~XzFNfJTv_c1-zhG5(w9mGA zX?OeI5bihqsMFtM_~SzP$r-_cn{HKNJGumHmj&z)*1frw+N#=#DeF3CN7&u|OQGZW zZux>zwY%+3vRjZBP;Gwtw&VWl77mcI|%DqrYp=w8W45PeS%nXns~*|X2&MZHOK%XPnV^0chbtkJ3i9(px{v-14c9?SeO zVc?Blx5eFy+S98??}r~h2pNK9^CiPB>qow~j`SKEWE@>(g6>=Gv~4rr*Kl zYHQA%{8?KE9q7Kv@VBAQGSm9l4xBfp+l9=Ia~qU4Z}QiWH@ScK7TU&rX!-Jwd1D_9 z42&_oF}kJe$urkuuPKb?KGO>76kwp8**-q-uOs_CkLACvFFVossc)l8p}*4~??>(Zo-0tfS71Qr6~|oE*H^ zsbk%=y1#Lc4fb)HyeoF!$A}57gqm*kdQ3U!R>NTH$HLziX;1y*qwpv-R=4o@$RX_> zSz9pBi~*dUyZzO-Q1gN$^ov+h-|Z@j*@ z&)vFiCearSu3hTYu^^?vuWvl3jQWr-yo`@IH0=Dd!g0q_@*XC7_0Q^CIB`+si*MRG z?h2c`|AnPx^~%vBQiXZ>=f=dkU)yvuWXtgjFIxO~#Qv&zyN#P4&CRv1cPsJXuC5=~ zoby=7_F3gFj56qc^+1Yl!Nc}`Hx8KzFRq3zv^)B8(cOHfYXuh&;W*yqhs&Wo#vf1F zd^0=pWnBG7-ACF#O6$_&^z?)~+cJB}+_bYUUD&xHuuJ@*mD?-dXg%p1Gv5>zs%lIbzX7!`!9q1_q2<{`)qIYRfEc&7L5$&`Unyzbx13sehx7>kg;x z&M0FXf9vwzYH9cK{KwC`IP;eYf!zmI zt&^8cyRN62{IsD(s^|LYO=xM*Gn{?gY?Pj5KEXQjyt(%EY6&Np$*Y-r4y<#2@4KbK z$mcFL@3yUK8FM4+>Vn*vV_uIxZ?=2X=$p^awLL4G3C*?2*;VlFx0f#u&RA5sx86d- zL)SK3cl%R2wY}M?V+jtPttx0e3tw(?fBcs1*9$G~4JmW8)zt$h?f-lfpYzAXN)D#_ z-AcJQE*rNuZ)kpMg+~g^n}tI7loZD!`e5P>zP`!sMf>W91p613XZhs}Zr!nC zuU)2GJ1AI&_@}ROoEDdBTDIP;%AJSBM*1KA5dY?8+{>~ zw(j)#cUFo2yOT^*Up<`=iyNCWV>RQ-Tir>&6v~nx8TF z=xbjAZVw@=Am1x>>)~02n~!WxSbZ}J8JF|%*qwb^P=M?6>P0)G1 zG4ZyCc9>7$=5b+v*qqR5_R@XOyK^Jo58d0!^!lB<4@3H#V}9jNy{%jSUdF?FgJ#MS z4(O)7+;=j|H^Xq#hmi?)%MNV%qU%v}?Ru9J54t4GE0yJuaK#& zVtMPGC%p`E-#poW?(N3r;cUag8NH^=?2!9-!}7cOaYk=*clIu`9&Oj)<{i9=coo=;*&2rI^Hd3Zn6#Og|3PU+qIo|Xxyvf|=p$G-J{YTYxgqiuq2 zpq+QO`iFFz4zRm?Y1zH?s}FSw@l5b)xSS=N+1k#bl1{Wy*~{^cPSb-P2s=jpy09gy zyFR*ETkTB!gM-Q>RMp8cwdg)PW60=OMgFxn1F~%{#oxAj-{k#{KWw!pCT6C{26&nT zEIGW(ymj8pdFRZZxvvoRz7G8@Z%NS9#!n;jeFx};O=;CGr{@{1R>I9|M^}!Cn^JI~ zZmMBiOks1=iB|e9wO*bZn6SS6{wJmO-#6CIosnaIX^#8a*UgTO*-~lYtBe(GYdS_= zF-hBO@OHd={T&&Hk4)bsD3d9knj_jF52Jyw6F>9}bDv)ixM4xF6W zppSEeY%cSi&g$nZ zX<3kewlr&`oq2Np^LK|9-hJ`0M&5(yxVn1NjI>ufvXNcPFS_{GnO31H9~J{iyXe^G^Dj3Rw>q=7h#Ow78o()hhB* z{P`#Dp~9i2=6{&nAGpz=Z&KQ_8!tWe^m6um*telzY1EKmekL!+OuiudZONp;W7oK+ zRn$r{dtZN*c8%MA%IipWab6ae6{cot&M9CIMaa!)_X`Z=3hmox6`d z4sE=3!~492X?|fZja#&Cl~#L*LOZWPzIzq6vYMhdJ2Jab9}~;Q!iJpX5eDnebav}k zj@7ulZ&iU$&W@~!M`y0f`yu7X2JJ`|8c{E8{;}5;nP0?O?Lj8VuFUJcFzbMDB)0IZ zz4MjV2Ta>M@!Pz20((>UtdnKVT+b7`@Aitl-tEYq|cf&#Zj2{mh<4c8jfb+37{c51!3J1@lLFL~r`;n!u(15d{l+vkqz zIJm0O*qVa|9vLEMR~^G1hvqxRbd5U{XWP}}#N>i^iBGm|UEp&2hF(OZ%O5_0+R5{q zFMsknzr0@7ih^s&j~*Kyf0Or27G%pV+k{2!o_Eve@t|djz7gzb@Vj?gQ}@~~UzTU{ zt1$QBo(*ef$G%vyb6~{Lfn&6X_xI13bR%s@o%FMBrft!;t(`DeR&C2Nqa|jU&&`sr z-i-=B__A%O;PJjoWm#(rf*!<2Ju|b?Z(2BHRfmM&gcg788@Ig4yG2QNUGf)~ufMu{ zn)U00wn6P0NB(lsKf{wpAJl-$$^7F?PvI5`!6xDlPRV%%=GdwSJ(O-Gk-qUh?mMyggrs<~ zlPyG%Etw&^vP<@{7sbdn%rL)szQ6zPb6)3lUguoPeZ4=|F$(2t$9@N1eOFQ&ktL8V z-;QjVPR6@4LFyMq@|m^eJ?Iz+2T)&gn_at~x}56VlG;180rvqhg)!GxK5L47t3eD& zuj|zaLmF5ElH~5ljD%u*aT|YOo#FSIL&DUW1b_N-rurUM&{W01lwJ&X^DsTg-d1~K zcI7Jd35QwC$l>`NW(ew#p>P`~`{bmRBzY0Jvy~V6lH6t<|6*Cx#&(WS4vsb}9Rcj` zGSj~U$wdN2BZdD!OtFyQs;QItr+$0~W4{&scNPJ0q)}uA*)-VygQqei`AUT+S|04yM%! z3Yti9;)yG2PIcVLp<+aSCp5Uf)!>r5w}Z4-LxwKIW|bSW4~?$x6=;&w&Qe@mQ?KFy z>=|-Rz-+&hxBn8UZZtf5mWh0IWF%BDb(ZC!NSX-(F#vPEbY)%?SS4y?gPx>dq8u=6 zV{XDcpW;*FmDn={0v!g?6O9=3NgbN+e1;1-7lV}B*lY|X@$1*KTK}k@0=IOzPb?=N z!RzHB^69%_fHf$&5C208V~DSRDk!1|h|6cRiayNEqM*;~Pz#naWQYsn% zn(jL`pZ11RBWdClrwj=Q)32_T18~4xY{h4-4{fjGu>0hzACcA9*Q?KDLcP>!T`z-F z)pAngEr!3_@tF>T?LQ;{p0^R0G5GaA#vd9(Z+C+)I|W3D=l!*~kj&!{6H7fYM@E3=QgV&icAC7fH=^bL2$em&~aNE#?74PH0sggD-c_JZ7IyD z9~e!eYZTo$UO!Ro5~^Ur1TozT26=Phf-_dqa9#iUjH+D$F^4&1IgB zFL?v|T>Fu35i4Z;lf=AN_`ze*EqC2^>?BX5JT(DRFIESibOC9z0|Ve&%{0t=NBPJ8 zCSQdfrHa?CycYpDo61BmvKr;hGIjXCK2Kn{D#Kl=P}a7`&z;t~TMK?^-RGd5g` zpxo^y%lG9})4th)bvwT*2Z;+7;#N5UjcfUuJ%Auvm(HkIW=8TQ83>#e)0TricSQ-A z>hWUj8FlAp*p*(Q_I=?`3(wniH?p1Ly|Fj3!r@&KCMFOR=C^V5N57QcuJc z&+IQce@f@2>z#tgLF9C#JG%qtQ9Q?o9CormOBXOrJ9Z(4(3yExvoIm{cF-=43+ z8SmCL(PXcM~Q~53ncl$fUQ1_hRCu-&_XMkM(vf$}REyELdKPp$82j zgtck^GwVl?a4dfVe~x%R^egQFovr}UlWRYyvTcnxo2nzhcOW0n0vqL%+PsfDQ;8uz zaR=Vm-ujK`ex?w026WJOjtXUqG8wqyZZOlnww;q@Jy3yZHVSI5Wo1|}{DP%Eppp4O zPMZRXH61YB^MbE+D&+nd{4a)8c&v zt68w;6Cdg=4prTgUM!Z@KfDTPUJ$-zzD6Ho31T@qr`D4@=i;_ose^;Aba9TcTvOaQ z9*dHxJx+)ZW+137JdzoOn)jX8oPh?Tfw>MAZEJ{DJmxd#D>FWqviX`$LK3#ZbRSU# zw`*i6Vw6YTtS>FNM8}uO1djQKhIEwy<9K?TUiN4MI^io)nD`2TJ z>cAm8ALocRndNv=+ji2^q7I!qg0GFs)k5k$+oi*=1Wb@l%5uZveVMiwX)$RO)%&;> zsLd>;aJn~~8#5)B3PGK$7RSBKD1ysvsg+tjtwv64k% zLA<{)EyVZfSA#2xfnoR?$tP}u(H0FDc1<8|>X7YBSwJX^Q`lSOWG-gG!lq-J5tOQq zWxEEo~z5U=8km@0frKV zBekSH>0HgmR)wz(A+~qdGVapz>SxnMwf@!Huz& z?+@gWcPMT>$ieE|@BpU1r%Q+f!6KM2Cq#Q&258UkV*_!-h^PSuNw2J9FVST4CU6US z7F-4V2KR$7Ljpt*4&nnBls*LwX9!TWtuvG8qlDey#kfeuh5-BV89SUc)wFJ$JB;=D zS^GBh^GzD){?WU?LG{bOTU~07?H8B&fCFEQI^LVH>7MAB zh`0h+((vEQe0VkQji)q?@*}cU{aLZI$Evpnv7*Pa9MEr*O=2|MMwFpFihx`bB>Mpn zCbErazj+6qX(Q^*AZEp(Qfc&$;{_fX1@V5>s@Y!f?CVVv*7Cq-PYey8)ROsX-dSI@ z7NODBHStfOB*~moqyLO;;GR9}8;EHnO+ekI9_xiCG4EdZ3G&9w7Ho#`%$pt-ytsIc zlFmW7c6LlR|M4ZoV~^rU_lXte%m*w&F#=zKmPu$5NJJlJeL;8%5*6rX#}~69GUBhm zB*GVcyYK})x#if2ZGUw;6C}*R?_vCyR!S821BR=ltvsL!hGXo!V^@WmgoCrrBYQuRJdRtqA-(SKwGBH{nMp zqRXvIH&y%h8)0LK(cb5Hzy5tg!=UKiX-}1w;`}%3)9oXQCzlTRJx9qY@E^E_z8kNUc??zvH4k_m^Ben-XLhhC?xD zfo@wJdOkeo(W8jIrQAM1azI+DgE4dR@0)*V#-eMU3~I}q`G4U4(W`;}8m%=es~O5a zzMPW<%4fdZyOoLx^(WUIfK7u^R33@DCbgr*sxp(~dMe%jN|H zVD0%ypn^qU3o`cr+=67eWX0ANX*dxEdobh}J#OY8V%L)3MVE;}|6283#6H}s3$|O% znmH)+15$l4AvRucQ8>?YF=^%_0UNu!MJXpI@>us>nx#J?L1*InHwz2jcP%-G2)r`R zm&t!IzJ-nVxfxSfcAmn6`^Hu9IVly>po|fP-8PTSk;apJ$6Ixaw0<&KgF3S9knaNRe2|LRqw0L}y3uFf46R&&_U`N^7e_tc>V#HPba_ zv5I?@k_Xr-d8};EN=l~#Otic@a{u>&>5uvKaS98>lmlXRzsO$(^P)$^1Keh5Wl&LcjXj40;`QjOtkqWQ zuTPdzI4eDT$+`WW4N{1i9N@RTKIG9Vx3XQWb3ke8T65S_m5q>-gmFs3pNA-Z1aiH) z=xCy(guCJRWfp44Wj!6;qbf2TO=&>HUE0~CkF_B-#N_6F``dHg)WQ3Ov@0Q%+>NE8 zdDT+i>~Ov;EAcc+7!oYGoD=F$f-mVMkGH6oH8)$Gy{C=3o^^W4i&C+ub(pF7nem2& z^3Jda%MHP}r76ceXKSQ?2xEZP7Io?A!RV6Jeg8K)6IAfNU}=4!b@$uMyq@l{;i6DN zuE+s0%trn_n)PwEIa+7Q>=f!|jCnyr7>Zkc3o$IAHxu!Kv|(MmYG2|_c=m&!nljF1 zi;kBCUpJinJx!Y;{+rp6hZQ?aNuPx|X;MAYv#O6a%JJkKGnRGrEZ!1JB3q($Bk8qHF-a#t2^KFN}dPhRj z06U2oq!RSUjbgx%As||E|4r6!;p^`)N;T!1C;26|xJie!=CFl60k%O9HjCBt6ZzJ* zb$#i61bRFAQlA?;Y3XXciY5eOgEM|gqp}5#df?gruTmMu4qGRv}hgf2fsmoUSQUioiT) zZF&BhhA35Cy?xn)u|Q40QmDuzEelcfECRKK&bEHV%V}^2bl55ufx18#-lSru`)A_s zkyC^V?4<0^lskXU+f z5`cM;%kvB9H;Y){yp5Q1%3XM6N%q-U;4o4r@ZVvQQ~I;B7d$|T48BQPRM>!_4e&o7 z6)#`o7FB}hkP2c!R5!VsvRmfY(s8^BPj|l($au*6Uh{l_bT%|du^U|8d0YIsK@sr! z{LTiKu5C>VGh%#1U5y#xKGX=ZGKlzLTw((o{jPy^Plr0eFzRoCBFHI}0Dqj<`q57O82>&Ul#k}fdp_GWQ0G}7UH2Oa8{5&B`L zi4ifSo#F@2J5oqt(dGk5!yRcg)xNr&MNPyvvci9TYU=f(lCXEQyMSv%EM@hN7~X_q zKPX;}FI+YGvwM=Dr)}NZ-t-Ih!xk?J6=W;3NB2jpCzDDy$Q)fu>Flp|%3)|}7*KZc z;9ZwL;P!~6S*0sa05@Ya+02zY1i!_Nfl>ZLV1?S9!uJj*TnQ%Cg~&;{TdB0iApwp~ zaZYM)Qw&Ld53meGnP}k~^XVGccf>1n=#cuNHg1gLT!xi2jR{l90U&uHz~Q(Iu8P2a z8H1xv46)$4&kauCztox@E5UPNL{?ynN1Zrfd93Jc2(eY2dvvq%%zmMN)BO=7+QX3l zIQyaO@#)g|q|gJ~I5kI0o|wpysQr-WiHm?e#!(2r7Oqfk$qhJPov(vm4Zl^nrq$-9x=Y zfPdGbX!EDO%*ED6JGx9BzrHV?{7JAu8AhD9FJhTaofsf;-ye#zKk27;zKE-0#(OZx zeVowOhAi~}T2!j!0`}+*vHP>oe>G+4m~5J0(d(m)==B4)fqnA)Kx+pfW?JKFFz=kphW}aCs>wsubOXNlJ}KM*v3Rdzgds>n z)$@wqeqht)%JH|(LNDDH>8$+eiDh#w1xWX|vetWC-REud$NCGC=*zJGX#BJ+iOM<7 zk!sn;9Ki4lAiLmAl^J9~$z_WmAO`^W1v2sI4P^>E6nzk_@;Jvz(+8&AbHvUU5VN$g zcgJ}KrysL;6t&gb(RWf{7^9^~P=$fwmZm=5ybn@wabxSj)|@WImdqbN%r8LOiU98z zM~g89Vq{@=B*@r9cw!vFVyUn=`N!q;%8=#7dMEWZ1dC3b`G=t zZC}+-&^J%KM}bRmb3D|bH2ofZD$?+rhcUVEtxM7sU_&5U;#=QLU~(kt7H)T8zEoq0 z@~zE^QpE>+fwv>t-0Dvu_2}!q&{reAR#zca2p#`=d)CAMZ6=!HbpGk()$KkvoKFHa zi}$*2q2$pz&RTms&Y+)Y8hI%rS9YBYJ4d7xfuIEd2(diH0+;%7+5G((XsG%R8(a048vHoN({0%f zD3(+aMz!pmRCXkwF${?vL4fL;`}A?WY>k^vcb%KZJQ1<0V=S=TO=;0#w%?iVziafo z70#wU-k#5YVBn}c@*TbsZJcKkfr=g$pV269Z|ze8+O?z!CR2cod0cL}Aj@l>{zgm} z{EaKf)}4HsBHP(~{z#Qi>O&h-QY2vLQ>r0ebpuC*#u1Dx03LAd7%Jv2Ud$YW>~46i zA2Xr0{aAKq`%Ted=I)%6gXm{18js-+UpZfJv6ivOW<}4w^~$;TV@j1bz@&*+`*{km zUr0D_x$z9Azm7>X3Yy9;%?}HTD=|?aqlP@2FaJ|CwD0y2$(89*^V-CRON>jDmD$JY zz1GfJX(jd!q~0598I&$_u(y7C&jEF>tWf6g^SkfgPE))oD# z7#5nbvI@~q!%&%Ps)$QJEIVtWsxA}r!QvM8C46g!x|A2cYlYit{pm5X<6H* z=UtMl*$vYw*O)nOQag?dJ@k`?j5=}pNqu0vH{d33II3WpRo(ttAYSX`bmO_@gIk5+ zZMrNB_oiX$U}1&mL~t?;<{!4ji|d|eEOk*$I1J?D6W#FXZN0>o?QhJCE!4j z(Wk56r<~uR0k`nxF|~|({}X3)g$EaPH^kBZ_$X{Mu&WNmn&ODJT`a(=>pn@qlDj*9 zf)m^Mzup}zH&=_!ZT8Uj@0K{-Nb%LRuN+Jm0dV&L;#EL{5wLbsqm?wQ<%rCd(N2J0 zEX(8n52;2AiTxu{{I8TpzBsS?I!@iR8u~_0 z4%r6rhZe7rI(z?ZkK&p*%P=Wm_IPPKYeR}V zf^1_V6Cs#(tk-yPTlKEsc3CIok%b0&6#;DVck2V%D!1Zah>RA6`~n+`*0;x|;vQGM z5>(!|#QEp_EINn>J=PrLe#1UxP8VNX=f_!C$@MziHSb2c<$fNQ0sfC8 zvOVANk(G*NRo6#`Z(iO=y2p9i_zGl{OZVdkW?Jupb5?h&R^5#RVR4ZOB7b-fH=GS0 zuByu`LsQ2`v~)3%cEkeM;eG53jL@6_a=uv4crRZ&fezZ^g8-R%(qGmSxyE1$E`SX> zuNw6*%xWNS;vRwC9ti&Yd@<=u6iET-zpnp4K!7v$;vV;Y#Kj+ewu!a<7eix%`a^;| zoXiPaHCbS^s3dxu8*l}4Wyles0J%1g4xXwF=fkB*sW^wL6!3SEeN0x_8-?PMpa8?I{GEvk^p5q z`(DA`V*aK_MSMK(n9*$Gg>lHcx$RG#OZ50n?44W$#!Q|_?|z4)8T9P}UeNa;hschU zy=s_9-9Nz*E@|>|-a*OHj8VeRpLkeW2^>ealD1owW)M~6iD=S~?P>72Bbxc!9*GHt zZ1g=WN*HnmPXl;K+(&SX2q+0=?gE14bYC$M-4yuiC}JcU4|?NFBNB`x+DmK_moO!T zNLqAmJKBd4;{q?B!5F?o=rFcn2KapwF+sW}3WBdNDGaA-x|~(#X0(KVZ)1)3{q&kH zgl=PyT-2BwQfLOF9@>_-O!kv`ouHPM3Zk=4=k$1Ib}0`_%JpT$%+JKIWWU;Sr@bG$okrhFWuRXhnr z(FcyGRu>+fK91)qSp1~UjQjQNDX9JzcsN5l@6_cnS9@fjcaDS+Qv9yK z+mZUW+4z?e9D=8#lhJOH{G~cPI%c!nUvc3L3szTK?N4KAqr%9IeGAiQ5keSzka-_^ z9zhSPEYpi6C9_7|Ug+>v0KZq$kzeuAM1OXL59kkYPcowB;^*0muWy}`vx+toy$}Q} z2vBBS_m8^g-v|5_=`3U8Q&H_OCxfGuSlooawn6w5a>@X1$cm}Hb8e?K?YHLgqu-9` z9SKSoH$e5SJh7Vqo~H-av}MGV$PLNWxkb}ti8BF((;rA;WUr1lPGcd`wOiW=U<7Xe z)(fH-%=z6LQ7#Ql^rBde-bW_x|sPNiXInDoRK&q&3GP)LV<@ork%x)sgob_$f7pa5`+0sui3Ad2D3OL*dG?A@F{ z#Q*)1{(xdM3$$uPF1(Mb?~{!@o69)NZ2#=#h<0HF?8Legwfo`aF6;rXKzuZey3zSp z*}2kvdfVVW)??($ePmFu>AsU!EYYd*;3jswX z3sMTeXLf`8R6e#&0dPqKgngvIdO|FGu~qPUis94Wfjs7ObvSWX_q{lm)Q9O^1mGk@ zyygyG?z!zX3OsXW%~r^EIwbDu+#Mt-WhD)T;;Ek)3Q>8_WTB)Q6u!hzG>7)CoKNrb z$|$bLC=3k;Q4NwY4ENF}@UzDj@5lm`t$jsy#-k7rx!EP=<=HSW>4}gLeTLV-AGn0N zs@>C>_y7;th8bY%S`B=k_hA_UBuH<5+Y99hly}l!<7;tcWCrU(`2wQw3>=5Nd?-t| zNVye~x~cJI%-^HqwuX-iKnO2L7}2@<^RGcj;RN?J&7DGne`OfS0$p>v+_>FJ>Qo-C za0xd8G^>Hu%5C%)O~RPX$&+sr5X&jDUkGWN7@~%!O69$404Wi0#_LWncLJMUW$!^G z^rw6et(<;fNYO4r+s+201lybv2ZqIrM1E(Ccv71LnEuxnz%u7vzfPP$Y7UASV1k=C zl@J98>JT~EUaI86M(=l#FN?3fh)bJUW|Aje>S@Ejm@o^HIv{rt(*dC_ZDWdhRK0sb z03tV#XEm*SMFeu6-RKJjas5%ce+TXQOhcwO{cmkR5NAqI9}R;!n}tC5^i=9n!5(y` z@`za#FP0B!9gwd_n>oUL+O%=Q$avq2tAg%ZXG)Lr(l$o`b3);Ny#WM%szd546P>4B zSsKlLnEwX&VBa_~ax9I-_*#LLrpT?sk2jTLv@9vREY7_`0~9^ivI{qQo-S8??hq3Bypgr&$*Pf-$&oOHf7AaA8Dm)9U!g zoww6rvF(sZ>ST&`-<^5s_-%jlHvh5hN;i*6)2UsmgM|No7lUd$YC{9QX$mdt>jl8zhVk`xy3Vox2jNIU%K!iX literal 0 HcmV?d00001