From 95183fd3b3c7c2eec3c7f0deb94ab82addb4f410 Mon Sep 17 00:00:00 2001 From: Bryan Ashby Date: Thu, 4 Aug 2022 11:32:09 -0600 Subject: [PATCH] Cleanup, docs, screen shot of WFC --- art/themes/luciano_blocktronics/theme.hjson | 12 ++++++------ core/client.js | 2 +- core/client_connections.js | 1 + core/wfc.js | 20 +++++++++++++++----- core/whos_online.js | 4 +++- docs/_docs/modding/wfc.md | 2 ++ docs/assets/images/wfc.png | Bin 0 -> 55826 bytes 7 files changed, 28 insertions(+), 13 deletions(-) create mode 100644 docs/assets/images/wfc.png diff --git a/art/themes/luciano_blocktronics/theme.hjson b/art/themes/luciano_blocktronics/theme.hjson index 56a35ef7..8f6d01d7 100644 --- a/art/themes/luciano_blocktronics/theme.hjson +++ b/art/themes/luciano_blocktronics/theme.hjson @@ -300,23 +300,23 @@ statusAvailableIndicators: [ "N", "Y" ] statusVisibleIndicators: [ "N", "Y" ] - nodeStatusSelectionFormat: "|00|11{realName}\n{serverName}" + nodeStatusSelectionFormat: "|00|07{realName:<12}\n|08- |07{serverName:<10}\n|08- |07{remoteAddress:<10}" } 0: { mci: { TL16: { fillChar: . } - TL17: { width: 23 } - TL18: { width: 23 } - TL19: { width: 14 } + TL20: { width: 30 } + TL22: { width: 30 } + TL24: { width: 30 } // node status VM1: { height: 5 width: 37 - itemFormat: "|00 |11{node:<3.2} |11{userName:<12} |07{action:<14.13} |15{serverName}" - focusItemFormat: "|00|15> |11{node:<3.2} |11{userName:<12} |07{action:<14.13} |15{serverName}" + itemFormat: "|00 |15{node:<3.2} |11{userName:<12} |07{action:<14.13} |15{serverName}" + focusItemFormat: "|00|10> |15{node:<3.2} |11{userName:<12} |07{action:<14.13} |15{serverName}" focusItemAtTop: false } // quick log diff --git a/core/client.js b/core/client.js index 88367773..d40c867d 100644 --- a/core/client.js +++ b/core/client.js @@ -100,7 +100,7 @@ function Client(/*input, output*/) { // :TODO: clean this up: We have a ugly transition state in which we have a pure raw config vs a ConfigLoader in which get() must be called try { return this.currentThemeConfig.get(); - } catch(e) { + } catch (e) { return this.currentThemeConfig; } } else { diff --git a/core/client_connections.js b/core/client_connections.js index e4a75520..796c5bf5 100644 --- a/core/client_connections.js +++ b/core/client_connections.js @@ -79,6 +79,7 @@ function getActiveConnectionList( isSecure: ac.session.isSecure, isVisible: ac.user.isVisible(), isAvailable: ac.user.isAvailable(), + remoteAddress: ac.friendlyRemoteAddress(), }; // diff --git a/core/wfc.js b/core/wfc.js index da1e7be8..63343b01 100644 --- a/core/wfc.js +++ b/core/wfc.js @@ -439,11 +439,6 @@ exports.getModule = class WaitingForCallerModule extends MenuModule { totalFiles: fileAreaStats.totalFiles || 0, totalFileBytes: fileAreaStats.totalFileBytes || 0, - // totalUploads : - // totalUploadBytes : - // totalDownloads : - // totalDownloadBytes : - // Today's Stats callsToday: StatLog.getSystemStatNum(SysProps.LoginsToday), postsToday: StatLog.getSystemStatNum(SysProps.MessagesToday), @@ -532,9 +527,24 @@ exports.getModule = class WaitingForCallerModule extends MenuModule { }); }); + // If this is our first pass, we'll also update the selection + const firstStatusRefresh = nodeStatusView.getCount() === 0; + // :TODO: Currently this always redraws due to setItems(). We really need painters alg.; The alternative now is to compare items... yuk. nodeStatusView.setItems(nodeStatusItems); this._selectNodeByIndex(nodeStatusView, this.selectedNodeStatusIndex); // redraws + + if (firstStatusRefresh) { + const nodeStatusSelectionView = this.getView( + 'main', + MciViewIds.main.selectedNodeStatusInfo + ); + if (nodeStatusSelectionView) { + const item = nodeStatusView.getItems()[0]; + this._updateNodeStatusSelection(nodeStatusSelectionView, item); + } + } + return cb(null); } diff --git a/core/whos_online.js b/core/whos_online.js index fb59429e..9bc792ae 100644 --- a/core/whos_online.js +++ b/core/whos_online.js @@ -57,7 +57,9 @@ exports.getModule = class WhosOnlineModule extends MenuModule { .map(oe => Object.assign(oe, { text: oe.userName, - timeOn: _.upperFirst(oe.timeOn.humanize()), + timeOn: oe.timeOn + ? _.upperFirst(oe.timeOn.humanize()) + : 0, // :TODO: fix me. We can always track time... }) ); diff --git a/docs/_docs/modding/wfc.md b/docs/_docs/modding/wfc.md index 7e30f5ff..cdd8a75e 100644 --- a/docs/_docs/modding/wfc.md +++ b/docs/_docs/modding/wfc.md @@ -5,6 +5,8 @@ title: Waiting For Caller (WFC) ## The Waiting For Caller (WFC) Module The `wfc.js` module provides a Waiting For Caller (WFC) type dashboard from a bygone era. Many traditional features are available including newer concepts for modern times. Node spy is left out as it feels like something that should be left in the past. +![WFC](../../assets/images/wfc.png)
+ ## Accessing the WFC By default, the WFC may be accessed via the `!WFC` main menu command when connected over a secure connection via a user with the proper [ACS](../configuration/acs.md). This can be configured as per any other menu in the system. Note that ENiGMA½ does not expose the WFC as a standalone application as this would be much less flexible. To connect locally, simply use your favorite terminal or for example: `ssh -l yourname localhost 8889`. See **Security** below for more information. diff --git a/docs/assets/images/wfc.png b/docs/assets/images/wfc.png new file mode 100644 index 0000000000000000000000000000000000000000..a900f0498a930be12b3f5722212af1b47e7561d5 GIT binary patch literal 55826 zcmeFZXIN8N`#l`X*pn|4uU9UNw|BJ3s zbxGs<;}t4LZ{>^M=3I|X46r{WD{w&Q==DPve#m??=~xY$KhycGEhR~kxa2xaqAF^o zEEU`2mkyfwB%|mlHSS{SZYm9DIVFV7TVPS-;h8qcPQ~>PX`$YWoAbR{NIa7~8pek} z`+|W(M|h>EahZeHR=Db*V5hX6A7GdBN)uzHlsiJq+W^zRhL&d^qTYNJ?1X zMBui@t-RoEWtgYSttDR03fB%fV)|XNiXUG(z`?!p5l{#UJYic zD;67UBF5$D=qTYdR{qr9KDa$m7RlOfMzAXE3v0+_fnQY{3eQ_G%TJvmd#whZq6~MU z$-6LY3Wm)t#o=(2&COd{T3Y9}5B@bk%O51_DPKQXY-jWK`t)d+!b*ACMU8~x2pdxrX8A-Uq`II*G2}t|vEt`STi2Z&H2X-abBQH8o0u{ry{6 zAQnA2R;@8i`STZN&QEDkM(hhuBbf7ANGBw6b!mRy_Bm?DpWnTttg5QINhZ5@#!C|W z2#i@-@siuOOkBPRU`D&UyN5?dN9SmNovWQWF)=YWHy8J8J|h-=;rw}AC!AhQN%2{! z0FNd+NFWgYIrl|bS=m!?H>{*hhmfO9l5dSKMtL+!NT&?>4E3L{ z^px24x<6f9T1x7g3;OFr?PM^g`yB(&P?dn=DGG#ZgxhrgpZ^K7Q-+=T^UvS-cl-S{ zysJ0=`EZ0p^}Thd`q#hC@>@XBM+u=|y33X}3Dgdc9HWUx)q}_C{<@yDdy7z3!>|q3 zlrmE`h{jJJZ!uQxECC++l&q7v&5m8X7kErdQ9`0~W2SX_J_{@63!nVsn8j4XYfesQ zVzNh*LG4C#U|>0QHgP)FoN4#m-TjDh2NF$6^qfn5HPy&v{$^!mWyp(|48_{H>&D*3 zBMM8}WLie4X@K#-jlI0bAw&sm9f`3osL1@4ku2|Km*h5JSf82ej=7S+FfJs0r#!nR zUb}5E=0QODcVadKF-NObYkfczx4-X2oWf9JF{eS2rFbu7mjj5K{^OYDko71?gkc;g z%fP^E;EAVL^i^?&r<6wa9zQNoqvKH20|PjrzxW@tBrgrS6%5bin^wsb)R0H+&nW!}SGE`_v0Wds3~SsP zG&gszRU!}ZyN@|HeqHET$RFb|>WFJ>mnDFBkGXc{ z8^g-=m-`0>PB!yl7$3dPde5b9cX-t5Y%AJyB;AB<7d4+1X~O`7p3aCh3yPPtiTQz9 zsUS`vSknj#>c&ic3BM`_PqhNhQ!cEBUUM(+AS#K9soC> zR8c+iyz7QPkKEmu%daiNl*(q%4Lf15bW4!z&h65JeFED&oZT_{pBte{SS+X#16MCQ zH(yI1Uu}}bQ`^4~q06S#J_g?^2>>W2Si9ygeqoRO`SVb2Z!?GpzPqtv`IhZDI_=?w zFTF%W(|UYG^z#A_ik1I%)_3jm<5nSe`Z7)xj@7!HTUaO#!Bm5MzjFS_VuF3aYc4a- z$3u#ajv28Xjb330)^^;L$2V`?Is?L41jZASZd&GGn1o?bUxN|8;Mswj@U}MrcP?_C zZfdYPtZrGAXIPwhAx>#-@)chwDDexkqcMD}wO61F&9{A*ikh2d+Y|5h=vE;peVP0VmF_G ziSupWX&%BQMd#tRi&`m)OOf#&<8B6drd4I(vvHQ8rz5P_vg`9--UFRkcj_3ZP^4!) zPe8i|K*DBFb-yy1%p&ith3!UhG$#avw+@+LnTvRqz3*18d5Bu%#lwjRi$`BaLDe)S zg6{M$=f}#wa3|;T5KtccjE7*o^H>|;^mxbsk0AjyxrQ8 zNg1&Qi145TvJT2D~j92Lg*Jl{)x(o!X z{uIKkLx=9tYbiB_Yt)in&EVU?CmS)0X3VWy4NW0D)7e=mLCQzuF332J=tg*K{P?CE z@NgLr9Jj@R+kf&IUS3`a=c$HsURj#S+?SJ=ekSG)ll#gFR)ZvOUh==Wa^TCCPkH1k@)?bC2L zkFN}XSos&sJv=<1{PquS1q4s}Ea>eZxjOdQbFUNFOv39IO`}LWs-ZgM$_P2=lqcU( zK5l{=0EnoM7vNS#AOLY!t<>|(YUIIj;Kk?M!rICouO|$Pts4QXp8J2B~CL) zo#Kk9YKP%Z4{LqB&VWkg7sCyV&H$<+bWbZ;UfSE+`+ysszEY)n0%lffr>FLtH=9Wb zOG!zIkm_IJuzQP-0k^Q2ZHr$AEm-AN1L&xyL9)6rZ|nxW+2pL}_ZN>};t!s@97w^l znF50%rBMqCetR)gvopI_KvNXQP+OJJhGPIjF?1Y;XVrVKYB%6Mztw|AM2PZ*fA`z< z9`M0mqo7VmsU|9|w}=$pYN+E-8y(#%X1Y>Cnb=-1z#Dy~%VJ2f>!BXiY3bDvMzLnh zSs80o0Mj89Fy+pG9iI@Zg!(LqsoR+6bjUh$6@y>9WdWF7lKY6QgvZL*xf_XFi-XOw zwd*0CYoGU8j#s+*Q+qQtf^{_I1T;Yw0a|xyzly+VF^!(^+M1dg{usG2okU||>x@hH z@bKwXkg@7$(`uKQ7RNn)eBkM!>SA>BG4Fq4fK)l`W$qw(%F*X=<$Px1lolvQOMuhj z_FjO%n|^C#0Q})9^ci2Y=+Dtx2Oa(RtX86os2HBH0YT#C*4AxvbMunY(#AKZC8yp8 ziv{7SiFl!O5Ck9GX;{IGJ9T^&%>@yONz&*9xooK1*>ZAz+?+ARRph=r62YesHT_Kx zdzq>T2+%o%%Li+Wb}*x~Z*-Ig;IsKTSha0$=EDjXD}b42vo8a6@Dz<_Z56(1Qy{fT zPK&dq#NPw_K6&|}_Nm(yF(bj)j{FP&E)c(gqAX$ClU}~`sr3NYNc}Gu1i2`z5nM>& zhXEB-VHree1hB~J^`>oz`9un8g$4!!VW4VbW8=H_lJ9c*@W;o>fMqu=4Hr*?dA_{c z1L~>gv@XIKYxVx~pC=!^s+xd0q~*5=0Ra+7?&r@#;%*(T8E50bDDlK}U(Xitz< zZUG6eVS?J~hoHC->bXvmb#a}vT zWw_X;Srj++;M8H;$uIuSK%zB(ZkGny8^nw^d$q!VLfdYVt-Zfhy7`Eui-ny%^y92+ zn?(1-#Mz$>;m2StK(_VQTE6E&B_A6fAO9T>M5gnrv))hN@F8lSt+2np(HPH|K@q7)8L+{WtgWKG$9XSX<;p znvF!yLpk?iWn@wGhKxOv}m=gu)u}eYKXp!UKxg z=CXOMBBY-JPwhKuj$v*&lZR~vKbD>coc;dQH_wWoxqyr>bx>pqnF{wlu; z!3+W|&>?Q$YAEi6^T>`r*MZpWsL8~DasUT;)SS6sAVA`f`w)FXo+X&jbuH?|3o(qpgAxZF7hSeyU-x1EZl zw#ViNrHueR=HDZBU6uBWBSy znvS{U_Y+?9{ zID13h_Ft184mnQTrOx6u?G3XX9-SVA)HZth_6VZr}op%`8Mn z;0urCBeFj>@3icP85AQv+-Bv6^kG_xw&b10fwI1CPanY5o*)rB`N&9+tWX2<1lgPh zii$kpvkJu(F#NQ&Gy=fYbA?}c8P(4wzeM&GVYm0fs>KlbdrNZa; zq+B{9<+jlGu>9F$0N5&^;NS4bih=&XIuDV`o6Lbc!(*Ux=9a~`T*M59)?EdZ9eGPK`slis93g_ZmaOwaXZK`0B%zRng#4LNad%*v15##PM6h| zPKX(Eupvf>AW%Xp zKqY(rc&j?~R`slqm&FQ|hz$eIofO1r1jIu264-;&{#<5(kiVcjk!%t= zC3u5QqgiY%^rvz6c-w;+YOF^9X(R`Ambv-)*S>JX6VDkCh^qInwM8>ZWke?+wWo&Gm@<=I^q@J{Spqs9N9;tfh88DGfrrZIwsN6H_QZZCwtD|<^W}z=zS?p_N zRaIJXaq$K79+77%(_apXU*4U98|dwg+^+30bsrW0EuJ6S$rbP+G%!xuUf*{k68i?Q zb4N2j;4`EY0fQM-y~ugsnsT7mUVe!jgn+$et)1{JfXXWM2}8O*-X! z=#!G=6A~Xqp_bVUc;Xq50yxk+vqwM+sG0I+tn;y*zY(EN1wMCz&y-lSLU!dEwL@X` z4QQ{z=g(if7pHyo!sdWoscDMWYJwEDZO%*y&SBBCdC&Dmu2*@+5iUFH zUbgZsv)-Mg1_OvhlZ&y9zM}Ul$YCcIow+RTT10 z0&t58cS!Su8^N{*jFBOb$@s(!%(^dQnlCIZR33~3PU{Y90!B(>#K9IGr}A?$PGhGI za*5r`wF4;p5)?)GOpNgXEU=3^uWfcI16R0aZS`aQkznY#G!e|ro0TU-^rNDjfe>hh z67b8hYN)zOa5%04(Tkc%r+|~kzvmi`H9DYt8!`Z{Ia}OIQLI=q>j#a)>drHuTRe2N z>SFBE%?}73M)Gn(6zl!3Uui?laQ#ygG!Wr8Smu(Am1&?8un#9lDU{;@H);Vst1oP< zc;I~+exu(BI9SOgLLBT?qpI|py>tWWS0~A1!fU-tnWM2KT7>`nfzS2oXP(vV5RipA zfrWx=bMIarz!KI1WE;jRTn}O~ASI4xdH`pOv$de#T?kF{_&5eRE)9y{(Y1yVBNOsN zbU?PFcK7Cv^YvL^K9#BPJ61BAm=&@3VQUz%fQC1aYx+v0WMc9 z1oQcG50BVGoK>J9l(T4y2eE*pvuiU~VH3cvJqI&=J#~Emn3r4-7Y9iMm9jW`J(wSE zCI7JLzAEnt==`%l!V7zyhs3@F=nnVy`t=@23M;GG1Mo`)aCb7;`d2vYDiEio9U<|0;alsT%i$7J90=Ud{l52-rt`U^lK+EJ_VM09+&sxMc zjg;CSBte|1i3q1uG$;a3q7sK^F8gG9l)ys}Z5yo=7P0Hzw zO`8Z{&NX(c@+m!GK@za?g!=H)(cB@>H>N|7zLpS|PAdS?TQv!2HvdjQg}~@K8$)C# zPC>VWjC!a|mP2-^E0%6@?ivDEFA;(-BXz4x(ZKdPa=}2 z5ngH-#8#iqG|+&}C0LOhEWr{v@Q%_sa-D;^kx5K}y;Wy~QD{smIY z=8l3>%~DB5w;7lM2qVE7lnP_X1`!NFZbL~uGan?}Y$ukFLvigoB*XyuqnTEFI$t)c zzE*_h+pgPdLED`7UsW|4onbTaY=aFPu4dWMzxHD(f0*J`s5O2eLXG^%otX>C$;r-u zlsA2{YCV5`Di+VMa+s*Dc+yvBN7>syTbQ}(lnlxMD>}>tl-T3$(a}W~XajFJArtVj zN%?mZF!^xL{|0WVPxPj&1*kDAqCX_I#M zdElymZjE2_Vr;KFe?9lA0o3vKzgo|u;4g*%#SA|JRvI1?Y$~^|biK5bX1F?|D8M$^ z2JG_esxMK&5~y7P3>K^f`F`KU7YJ&!I&ae7J|A?~yyq_wU7~2(1|a1^i>L~S(?c92 z461~_Y@KPK`zRj~YmUFnlo>SCl@V;SlBWt;3xz7BdC)Y2!*|6M8yqZNd+mt)+&gGx zP%Q!Q^k&E|f&d<@PYZ$sXfi)^<>O2n$EdaMQg*;CG&RqTcAagct zaMVN-uyFw9ikVtivpC8-^f~VT>;;I#GSdGO$((+$kZ=@+ZZ)1b3OVz3wP%3Pst^SQ z09=Pk6$5@3sG-5nbGxL0MUqpAkSPilQAB*rz%pO;X3t$t&LUv#Ml&3N=6}6o99lM1 z@Nhc!t{61?Ch0*F$t8}vf`B@0Tp<4Rn4Uvq<{Mo;81rrf*fh}4LF)vx-Bz*2$g9e^rYNl8h0Bi|g4{u4z>3x&NB$mfcW%RmPHqU3qFCLbLQ)-#}I*_|Q_ zkOi!nKY+{yXzd-yXV=GxhbU=tC1tH(&FR2mR3{PgOkZo|0wNp12Y1Nj;98uU3j|Km zCDtS#D^+_yAlBq4NL>%L1UvHH{vYBvzFUWu_JYglZksR?a-n4#=b2~&m4@ruYT^F=3w>RWq- zcE6a%_q^McwLuU|a19~*xDiml$9G!ge=I2N0R|zk$)Lr6`!k@Di-4mKtl>Z?85>?7 z`)TT`_4fAabVuSFRfV8tZwndSQt=8aNnZmH9FW%*YZ@K;yW|L*!&jQ?$9gG3F#FnSNva7Q%>L05OCdxHa9ar`TDD|68u<-3ZyYQ*|F~7Yrt9 z4J4QZu&y5hXBSG0bzo~sXew>>K{07XiwkL+^T;|~KJ6}lcMl=egaOq1*UVD;L7B<} zRua3VK)4=&sj%!xS5uxvf-H`vutB}TN`C+HYu8Ksy{&_Kpsw|Rp>c8|bp*6}uziG_ zrVq||bdTo^g?lGJho?fIoVvl>&H)_(!ktm3VgUUC4!@CKVPMSA@pa#hM?e37`Mvpn z@?jtum|vWnFWKO!p`*)a&vZ@7-&YSLgG^Jsbqm-oFLR+M07u=^lG4M9^u_&;e*P!8 z@ly=wwA`jZyZ$`v>i*t)ar$j=pl_PUUz<3tZ~e?1=%jGYopnD?hQUssgMoB{j{nmS zyUjZNYo?1l`qGmWILeFPUk&cn!8DG3E&G~s*^!XWRFhuR)1W`GW$U-I@TW&amuZ8= zs81I{RvnaD3r{d3i!u{dt&35Gz1wK3c}8kV36B-^W=IS5VMxp4KymPuxs6xL(m60Pwil!C(wP#CcSZ5HnMy4YP zN39+hm)$S3vZc$6!qrD*IzROkU}DPLl!nE2mF%+AhzZTl_iSqsURE)5cYOZKP)rP4 zENi^ksD^Q}Zv%Dp?q=uPjBdE-&}=l?CUHu^OhaMNj;Hi{SwZw=Q*4A%fZuZh(a!H7^svySG^%piQ`we{;`j6Qt#@>m*8Z4J z-;B!F>mVEz*vgQismYRSx7L=VsR> z5qushys6?kXW-B-OJf;&>rajvnF?6Ri@j)?%oyG%9$v zXM$bQ!qQ;>k!qBI&tNj`wn(p3x}BnCg5J;Hwn`V$Ph#=k?md{3!`UrQM81YUXkr*` zMY_eFmZQ&8&0SP&om`oH({TE-nN><}wjeawi zN_Hc?^A&tE^)V5wM4A_h(M8a-GmD4!&Axnv_&nJjsL49o^%8Srgf;swA+b zXP5h<3j6yfvYZ;Jb%-m&lwH!=8Bu~S4jB;yE9tI7)ESd^3y3RMiSe-Z>;w`v!o`T0 zu(I|C6_I;INm@^XeUDCyIAYUe*#v9%({PQ2T2Eo()2r2HqKfmZ zb1@O>i#oQv390PZUV~uz6KN~`gj)UO-nM1)P<4u6`^9A%&YP~wZ_6vf?2yS}SaCifZr(vP!+r;dOn7d4zFK_-4MCEh@6iV4dMb_4@zh(TE!d zdc{B7k8hm0kRfhkC{$kLsw@PhwOj*@wHdWPNUtJFDmY zCfC}qKV8f4ZVFzYbdnG)fw_NEu2fz;M+ z=RB%3!G8CLsQ;Sl3-Y_4r!CRv4gKevS(EEuHg~W;vOn6URBnHx>AndNnOJEIqN_>I z_v&k)TIShmGslVf&nvc~$Yi?!vh5brcx3d_vRk1Iv-c9V3HWi(ahB4|tR$wIT+2dk zaOxQKKWf`4OhtKmZ{qjg%;(&=M6zE6oiT(1fZB64Xd?B`L4aIaNE{Wg!f8L}W5 zJ%A8GK45DJXC=%G=!|SR{PjGJ(d5d(VwP=`mZcK)N#$r!0!t_9qAlh@=qH+;9G7+0 z#d`*>I#o#r`;0_`EAK4e+Vgr=jU>;sf`Q(vVw6CW)&uW7v@Cfs%GFm*KJ$2|mONQ6 zq4ry-xh&+4>%Gj8;l zj4`&ueCZ1s%z6^`&+J*;Q``Yo3V2L^xpUi@&@tnZ)^T^SrN`Z2%T29{l|KQO($5Ee z*^I8Y;_p(ruAzOG)Ch&%1B9ZBJPxWbzlCU5jmhd@my#*aldfFcS%r z^F;TY@SFXODEfADnD{*|96NdMSVeoarA7v`IEm~Kr9T#`woDLSjBsZf*Px!}8Es+h zTCz7ikDGt^VAoH5+P%ru8mHB&F0X254Q?8Q*Rgt*myP!}%?v5HN$Y`UUbD8+%J1-xXvx;Y zs#P&u=GfWamRJ=jgWRP(L2ex%TspE7sMWbv7nVm`sbVExoo^sg?^o~odq-+h!?C(P zLQA6vF5ViaS-u|C zb`XDmSy`s!30qF_F{@Mf9*5N(5YH1cNz)Et}S{Ue`d#4yt}*B5WX_t|d>j`95R`~mG`_rhRS$;lm$9<0~dayUq~J9#OT z8wop+rpl6QwgVscihmPTtI-V6*F;>7=@S$YeU%zPdpzQ3oV(FmfJqy9rw&GRyfwNlNA$FutS;!6u7_8gURZ;)ez)G&f^^GE?S)B>M3bjaM0?nY zj}b{1is?jsD!Kyx`;JCbZ8=sDrFt^`VQf?hZA&P>@z<_DJInuIcmaM+JAj`J5Ev|` zCfnc4El0AL^&N;Qc4U6oce%?}CSlhX86PtIXb^ zA~;Vs?j#jWq5Mh8?^2R5J#Cv>PfaapbYn$_4b`KWkv$ipdk;k{=yb^I&nffKx;~Qd zVDns9t@hKMJL^OrfxQRy9el_3UQw~?Z|~$_zd|w}yUa4i5B55(y$zUx>t8Oy$i$Z{ z5)Lg-Z}&XxFTqG|@;!PEIN+8dpUAMmHN@_PuT;VId+a|3q%(mSz8i<}^e08O*haZ5 zM3#u1ke>?V4@ee=-OH7Pv;cHmSMl6=%IKfI`YIVuel6`kpH0``DN9PPwjFfL>xT1- zWTAwYJJqaC#_EXJBF&kv?B)>Hi@a0#u3n|vEaZ50g`eKvJM-h0^Y1GPwX!AXS_y`r zgiq6+WVngg@FqU4dAENbO!=U~O3`#cGJDw>cSM05x(lrvmokVz4!J~ZWSZiNROoN= zlE~R52*GGW6V3ee8q^kFPAVJLxZs8U`gIALof~#igP<$LY&<~P$=N+NnAI1@6a;X{ z8a{-&n(dS&*d}hn8@ci26hG{cXkNafiPh;1Y2mCxwo&l{BQ{U0O11o%az$-_xa7Pg zllw6r0$97EK1@^3@%PU5>GjAxD+sE-5+l97B_wUlR+G#v!N@3MFB7YD@)A~mdm}Lc zsY~bx=REAQ(-W(;Y@=U&w7gvXQJzb&{Is$@7uMAhmOk4DE}f2=q26<$Kg zal0{uvyzV94ay{*(CE~-^dV^zr~9BdzvYkf`DoUF!=Nf~WIHz^`xcTuo-Ql2?>sKR zn-$Tc>+PUk#kio>Je)42_o1JvmDWK>Fd88m*v1k*u*}o-nUZ%Y_l5$DmJvK|sHoIw zqqKs;L|U~-HnwlUs9b*(*Tcf52W=Tud#=w(Dj#dT{qpQ4Hdaes_y|(XX&d+KgiQ}jBa8TCvEgsI$q{~~&cAC+M%oUbM4m3@$i z?T+IOMzuR6avx?ihnBP!W**USKjY9y!d0eV)1A@L?$q`! zwocaq<(`p>WD+~eRP#Z+ZJv)@tEg%)rclytLa$oXuD`?9fuP=+SHd{nN1`1Uw%P~1 z5Ce{XOVz-D!#k9`@ZU~kn6n#bV2W)gj6`#LHiCJ<&LRJKuubelCI;-;I-WV0Z;Weq z>CtbOmocWt>Hve453$5>39xz^K#MINQ`aN$I_xPO;nLGVOD++5v^B8z9<pq9{IjvhFwhm2U-?tr9~#nwM|%mzKDN$BR5+)l6SB1IwQY;C}^8xo?(iX++-gw zp(#bibRQzJZDS*Kt+^M?I$T=2rwEJpl08l!gN;gExxu_&6%j@JvQ-WDSC_sFYx`<6 zQ}f0$#F_d+pSb-~VTU{ZOX`tT4E!d6DeMY$@++1T9rYa;^tT-O!QJoRXUu;_^Hck; zU2klokIXy#C%y^s|FDXGy*E+4D^6m$mP+Bu4BH-9`tp46y|PHlU+=xN*D3f-Vgzak zvaczuKZSmm!@smafL{Q+6d+be!Cx+b?!Vyu@qcdo?}`0?X-xd@um2wk<$nj{|7Jj* zBA@^HLY5yQP6D~|k%TpOxtnai^SVgO?OV0o;Qbls*wfa^ff+@si5Ul z9g6DwhipCGH+Mfl%AW9LGe8iVqbAol059@Q^vYWC_%5@kW1{IyOSg*Fv6cgOK7Lo- zT+0@RNxP75P~0!+XgFRA#iX=nfg%`Lj*xlRzZzER&5SHjXSdnW>mNSaH|KbVd*B^{ zU>wJCH&(sv75qx!S_VGr%6N=DpNxi_Tdp2TShTojBUcR@VEvS>9<75*-^zKOc+$S{ z+`Gk!pRc*~#56JEt;-Smx%5cDIWT$gul$_0=$7qW2$ARvIxc?#^XM{Z_u8cst4p7B zHAk#u60M!sb{G1yh8N~)&9jF5tS4%>Oq_}xDf;tRLr2W1ga4xI zjHUN`$kaZ;1HE`g8$#ye#eN^glonSeg}vG6KQA>PVQXl4LvGQ`mVO+W=F*aFotSwa z1I3^vwx2H9Kh~N0lP>na1z>z4orj=*l~xGgf8ui9Ww2h@u`$c-QVKzrSp* zfymBe_717^_aT3?m9`&MBE zMV4oc2j+yON~g%w?j3u%GBF?7=#USZ-(13c7_R~ESBl)wugp^yn9*23s?9G})Rwjw zhp6O>gBxDwHd<%h8v#+h>}czdrjJL=vX;AC7QEPH{dA5uRy*sYWgOWrxlR2uWBTBW zDW0D?q)&TQ%s4cwFPgN=>l<~ZZ*G|ojArsx(gvXH`|WVPC+4E#Ry87~OsedDE`iUL z?f%0B=-5!}Tn=p|g=`U%`clyUOT?OZ8NJ*@7B9?w?{@J zhaF)ewk3aGp$vLNSpSDj)`JHVDz+eJ^3B-#S{#GbrG##-1Hq0Q0@eaztjo)OIn`>!WL;1O z6`q$wzuWF>UZS@WCSVIfLSv2^mE!5xCwh`eJpX#UgsJ`CFM#c;j?YgBmyuu3KpKK~ z2!uOpifnsZZPcSD4|TAYC&f3Xz>Ql|ZaEKgq~8G;!juzQD1x zTaRh6SZZ^?W!yuh#p~V z8o;B=_WvY`+v)$7C}344>e_6PRecBhGmGBuXb9cCZb-M29tjKA+gTSCSH`{pBrByM z(#;qwhJh6+nSK)M0_;ijKTPY(vAV-$F6-|>{$`0?y4M*e>(MuJTqG+gT}lnYck6I> zx?pz6cnWAkw`a2Q^|!RDm^`I_LgIih#ipkgF?=cC1ycxOQGrpA&;Nvh^+f($K#>4D zLV@#a_$eKftDPBod)6?bwOkEAs8WtVjQq#DQ&20d!3s*7~y4 zhJJCLcZ^}@#$tBL;)7hP{$k94FjA>C&xQ&`WUCK6LIO2Kt9YF6uCd5KMI0Ts_072R z>WfX!z2K!uSl{bKbHCXq>_af!ocK<@|JrH)uP+7t|K`l)kOEi;4!l7Cq&9f7E5{Xp za!=mmAgVrc)Qn=ck$El~K659>RnAJr4wV@1o^~4A6bX_Eyym2_aWUikeCA^STR(pn zAX`P+EjRPtJ2!#k=9si3*Kw(q!r3vO%UGNaU#Wbp0&Ays%xSAL9w~)WaS`rRnC116 z!PElRUVhj;Mb`E-a5cbUZ?gRZOtVt0?+}&Xw0K7v$qk&4&~*7&9qY6KT)eGp!e?l+ z;$tG#x#_g@x5TJS?*6{~gsU$GqMx5N4t42p>%D|ea9u6(ozO(}Eo`rBAG~f@yG?b> zl4GLUjp22t!pUwQ7RNUC!HzjPT6$bqD;t}`@9h7fq0GHyTju6)VkE>`yS=t1sX9d7 z{mqQ!$t$`e^gpCpw0ziy`n#H8A971pvE_(e+NJu{E7pE7f4w#Tbsyp-cN%;vTT8m~ zfQBPM3-jp;v#$~B_((%V-=xzbj9FiXTiwB4iwAFcnh~a4f_f#dE;l{==(#@iWfMfc zvR$e%qDL@Z!DHn^t9XY`t0+#l#N?eEh$WiVi=D8Z02?|yhg{&K_|8KLh>(rc`2N2h z?<9foYF`RpI6Bx7)g?ALq{#=G5E3!t4+gywIBM3Vc3a^k|||Y-@k&#SrPj zH|`H3x{jy;7L}EnAP>a)=>gmcTUltJ6(h|FeR1sU zpzt6*6kqqSSC~$0Q@<8^D?gOqHkKp&oNaU1r{h?=S<>ErbyNT@ewD(kX!8vGtO$|o z_x`A#zoXE#u-mUWe5N%P_@tuqam_J6B0sPDd^m6abs68yG(ORL=HNBn`b;W#V;0|D z{nxh+-BCbafa_s))>(etvG+{ZoN!6HEuF7#P8jy21#IrZw@ZPS|IWBgxb#5v4BOQc z%J*8UAL{|Fh(ia|;hV!7gSj{q*nK)$`K}s9gKxZC?IT!J0bJh&W=mu6f!?a*%11+h z9wY`B<@?A*v;cIly_?3GaY%EC89lVDOj=x65C$G!Wyuv3cqt^Sa;&6v??T~rQrWhm z`^p&NOtDji)wZQh5A~T+>#L%?ZQpkf*DG#3NJ!s|jxpC5Z&Aah>$`o(MESkBmiLLN z^%@&ng!xdyaA|3aC>iB@cjK>7!`4o@jM!!!RzP4o2P-b-+mojRq}A{jVsq7Kdo>km zuGAQ_IKVoB3kySD$y5s!RyzKS>w8F%WnBIr+^d(3^5a94?~HWZ`d(GN`O5nYMfTEl z{*tRlkD7hEbCbrY9F~(%)nr}f_lNAUo8uc1ocX2ut*a|2n&ZEOE;O|CMrTQCp_9B* z`d=RtB>0k^SnKKIO|xo87)-ow%-Z_bn#cRo4oSisPfL_GH{GCJzjJUhE&Q z@`zlKb@P3PYP1=da$S1jvX&x!pjy^H<<;mLj^Mm)MQvSQnSCMqL&8GL1#!aD$_Xv0 z9Sm5!r{KyKQ8lL;-q2)TGMLmy;^=zYx5dAeO*Z_ya5CE>Y05bx6l=7=NR$^hZRglZ2EUjvpt;`s*}~WFc+<4A zE!+Pfmpa|@U`h70!R!4fof#(c^UJ;WnW=GlO&)sR56zr>AVACv#c@ERaQI$I`CQNK zyt9x)$l{1;B8dZbxae=+_M-2uQ?uJnl2WsQO3N1NalivpagygsQz8+gH_V7QPb0lhKAO%)g0YUlt|z?l!O0ld(?Eg0 z7u-|--p#T9?serq3JG|5`@&jGTK&Dyi&5-v_N(n9S_POcJIw}>l;+zVkLSRI4GNXy zAe%>VzJAXOz;7qmgDqsJfm-ja?=?$JA!&%gj8G27JC4v4S(I_X>q5SlS2V5*WO|6+MqHUe`IRuszX8`SJX+Hq3t(CD~)p9p#x4nOYSpAiu zvk6|;ZW|$XBrk$Y^>i%wOJ7KGOQ^X^CR48}VY+1D#6 zrJY@5*{n{-D&?+;+N?M7dHQ~h-g%`fu22ReZI72xx&*`WXjw0Rd)jBG8Ju&CczYK6 zzRF{@V+17vd*xE~eEz#^4A`L-({j8S+~snK$4+e6PHfgCPK8%|;|foaTnFkJuPG(6 z!AoqhWUY%c81tj%jHD^$g3EtzTG;=~qdyVN@7}|m-Y*=G$WA`p$G%U$X{1o7v$Q-E zi}g9;IFdo0<`2U>n>4sTZArQu6mm?&jg>w9O7}INd{!#c-3^`lLk%%r;c7F01~1ri zzt(xaKGj$;da`*8j5qvkzw4#5ccahTr0%LOt*DT*C*U!dfl$N5|PBqXXf_2p3*gCYH3I zM-}mU8|m1yik{(8nsXF`o0ba<=VHwx8tuEf_@>v(OAus3+2ew4zH`Mx6iRqO3g5z# z>}`fNOGAl&$H5<;>o-`%ZwryB*NWDa{d@RA3jgb<{zs-CeB$AOTRiSftQuF%cO1p7 zXIqlbv1O*SCI+=FdbG5#aK|V2lGion?eNzT8R%LKPQ2#5PEvXd4OP}oSsy|rUvoZh z%cu?6yJu+>u_=O1_NBRBHf>yb0cf+P?>d(Z9C2!jXn#c3$jB(cJ-LDAO)ypgv`ei&g`*|z!Z+7(M&k=m4PX&utYJ$PMu^$5)k0tyjb_%(AZc63WHjuV`4yr&4J)&=v0mcMZ(FgNkd#q z(dM~M_@$0$xpNmb(cHNlt9ZT83=S{y4d;Tk{cHU8NZt|;_&k6+UzX#yr?$4XBW_0* z7Z)>_k>Ap1?rq2$#3lYV20|ZPSJ1^U~ec{2&TH-IEcTr%pPA@HR?#OR1G^DO)kvK zYa4e5i7eFte(G#daNroWASI!c;9KqU^^TwW7?%WK`Em6GQ7j-v(++q@lZ)PKG&eIy-rW-==a4brDu-@xE5okAva zzm|MXSZ!+Gb=|JDwe>#pP%!D>9}RG^``XpB97 z&#CXOYhPrik=DzDGG>XTVTF8&r4+$V0N5$(o?{?S&vb*=^D8w|W5BN-y$6-)I7j57 zWp0mE6%{%EkhqQx>bwBZTww#`(7Vdg($XH5_PFq7e9bBF3kX@MOB-2W%(?A_;QE<+ zfBEh@O@c^+t#p=`jI3;x<_mq>dShD!WgB}Q|dsut9(EVS_QYG}r(ee<(9UYJ(1Gd&qeF3lXT({`k_Mxl@ zj2lF6r(SDxOdJ{PYD^)#?_#8>gPBI3#&b!9LgC6FKAz$h z-zF#H+tJ&wuJG=jo(Dt(y0o^|3^-1F)yRRY7YrY=Po3T$=!1@&1A69R4Bm1zf4TjQ zmz|8Q@Tn-h*MD;Kf1co>8|&%Wo<6?bMMk%x+x>I5ckuheu>^UE#02)x|6=bu1DeXV zwj<8SSg|mo(qvQ+5fD(S5C%p^hNdD#X-ZI}1cXpTNP?q+B2AGdC7>wMMIcB^P$7tv zAks{LC@r*r5J*V>cEB0+UhjSHci->lmw#e%&OZC>z4ltqde*c4j200qxqszxAzkl9 zKn7-V*!etpU!%2~v-R~stp#!mlFwD2C*qBJIz#@j73@5zAUMJiz0G5?Nq9$so`I7+{?}F>w!xPy+Feh)Tn#nxoqb) z5}L#z+8`o*L5W%iA8^hSHO6yh0%coC(9=5l!tcDO;knN=-Kl_kI4hoNDs8*`AsATx z^m5BIZM6!h=7nQwqre@wKm*RNbg*+tu+1&27G-}2b7|8x=IN9{-y4Gwr&2HuRN1^I zbg!Cc&ra^3HpMeCD3QV8bE~CI6S!7H%Y;4`=2~+T9zXTW1e2+Wu{0tRrX^Mlk)cv$ z&W;8bWuZ0(kM|x#2~G#2FXH8pH=Rd%VNCmby6CVUySv<|N6xMu3t#W6GnN&aU{Ee@ zy4CiUvzv2nlJ+!tb8BLlyh4fTC+pMqi}Oc*uxgYV^m~y@^qCluwThJ;)H!cgb>_mp zg^qW*L!GA$uIxpSMRkyT=?9t=<5Ut>%$Lmw?dZfFKbYJ@-PinUV@z!H`-(+HEX{rc zWTiM~duc8)13p2gU;FOr$FJynT1-J77P`V7-3Gz5h0~m-g<2cLJ_IOD?%)GJw>+)s zX(*5XqNWgsh6%q?EBuOBjMSFQi-%>jHoL*$g?F?M=I7GwhaHS{v#4&Uv#7aG?8#!H zthl>RF^7oH4HoF9u~sA!m|`T!R8d-a#RifdriFr4GA7D~-N=UYJ$3P|u!E>zImaP5 z6z__=0F)j7!D0Pc^4xwuM1oxMhay1`y>Qtoae5RUHhy=Y@at$1A-?r%gSa_hLm zA3*^PUG&JA>mpB?lvgRTAAWCm>$0M}cf-%ejd}1LSNM?qyT4j#T4DC;=@!)%SF?Ou zA*-(sfb-!*b4uKw)b)^wPX>MmM`@QvMHlZ3n!el!4d0-ThHMQNx%3J(yP*092kOWx z8!^jZj=g=@!B0p?NYu!Rw6sliMy@lP-3>fD}JZCtn%TJz|Y9{}PmztWY?6#DJ z|Kw~?Wjla(T(qCmyFuyeC;gFXSpe>D*!?dYWcJNAFM*@GfGUBzs1xrG>R?Sd75i;P zAlCwbzuUnNVTv>-tw;z)88}R^)CBV>;1xg0kfn=Bhg5TA)~RHLQW?KiKfms$W^s{h zXYDtM;I9Wohi2}AR}rmT?~=tqrjEh5I688k&*PK^&X(HG($9=(q+<^1@A&b6wbuV@47x4tr@#QE|w&q9y;HvvO}ImBqT0OKs%7a~nX5C0#+aK>eq@So+V) z#Gi}G{t&4PjeOV6v)@x;K&8Zi=%<7Kc#YTKZ3=ZUTSF$+lye)?ABpKP!i*dFYNvhK zhG6> zIQS&LuN+y}W_t4R-(3sX`OQ*&q`w4;kNb3CKC>OMx7_;Xys(9hH5 zK7s>yLDx$yT3-E>F^CoNrz(6{D_!f|suntI+l)BDTXKgi zN%M%eHA7NTgK?ScAX4T-)yfv5Q%1q)T`(c}hu?JvC&nNzcxwpSvF6dm58B)!_i<=+ zx5TVaeyd3;QNg^SxU@K{1|QKGY#ECz3VZOP#-QgpJ~7WhU>xi0hDWwROFDb-ODlmU z$#$!HVBm~N3|qCd(7*9pxvMS#bN~(9nYSS5?*^M`c7bCnx~Vi52`u2l*~Jny*ieNI zuC2uIXAswv!>wX{Jjjn-9>12e!4Q24aE?AmZT!4dBy~U&^N16No|rYC-5z0wylgN| z#`z)fjI=r`mk;s1V9+XEeRajWFvr?b!>r10hCU6&0?!jsVnX~rPXl?y29I+834Is05b-o#xnIyzdQpKf8=2+l(PTjyK8 zEUvGnamjjx6*$yfE-6p`8%e!Ks0^BMGJfBxHP1B;-r#7}<55Ik30c(MiYc}XGgDj&YflFQ=`K@_G2VC;yb8$yBc81?M;6*NU6rY{M&S}8 zo6m+5t`i!k^CORQ_pusB-;Hk0EYZo<9@xhYMR7urBCc=#^<+VIJjG%Gt~E8~pWO6z zotnU<%{r=a=(iLpm3wZfta&-nn2Vu;%-WLRcBhd1P_q*kxorv~yewY$sawR4CyD5Z zMe8DBJBkwrZO;WUbQ?*_yAL3@+~t`3;8_?9)-ChLit>v$SrUk%2l+#5M&4gAK)$}Z zYv0!V$R7(`^yWE_vu3lBzkf-fvqdDWscU`q1-)2ahGDg4k)R`u4iMe)>MTEq-RmQjojp@<;?h5~i#(T&$10EHZ)G-9&5@H7Wt6{U;>CEL5h z;t!K8rxy3IA_i?!wCvairrBOz&PmmHE&Bjg$FH1j+O@z09Yt@+{8qZX0G>tZq9yD^BH3 zv92*BN0-@&X`lr_Wc=yX#g}#oB09N9O#*!f(!ubP?IWpv0-%dLXV#T9J!Uhu`s858ksSo3k?4T{58 z9Lk0-vldFroIkQx!zCw()>Bd_PQ*1ve)EWLUJLr?fHog1_F?FHmQZuFgAWD#*TIU7 z7=Hk1xY2-je3}EinoR73{i$YEJGwo zN=hPz#2c9}Hqv8TEB{Et<@)V!P|KRs(3IaFJtJGDr71=N$dkTB!eRiSOfe9Z7e!$W zkIm)}Z%?&MU$h>)9-|+KSDX_);|nB@PIK4`lcfxxj!KQ8Ui@qV#n)aBAVjS3YTyrI zOMI);>$xyQ(dHbVJSkIOvjo_!blI(^N_N`re|lq0iS^(q5HXsix=?c#InT0Y8kBQ-zKDG|xYUfbJjF8|q2vvRf%AIa2s6%`jJFt1WE@D4;j&$HsO{O(=(%;Q5fLh>819*?L5Z*!$H3q25 zd&6t_97PyD=wX}Te}mphN#c=TuwB0-N@fgG*T zMI5sGCz}IlFY*ywYDWcBR{x6&RfUdZ*4Fkr${3$5nj7U}iD|ZOMXSDl9{$H0sHQVu z35J0D5PG?^MlhGaAVd&O-J(3+7aV>HID)8j9bk79T^Jv^qpo|YT8xF=f%e5v=qEPf zxj`Cb#mVJt##p{>Qnf5VT9tC?UI>|!Q=WUNzMIyKaJz54@APawUIczaYaBlQ&yT%7 zPZbKih|x#4qlU~_$q(8WMa5E^3L^(mw~cfp8b&d{TsV;cQzR5WXk~r8)HXw};UAW5 zoFvjYb8N)!&(`Di#KRC#8ttWQAEna2eSox&q8S*vrh&Kh=UAoPngVgP+j&yWfvzha zfA1P!jp@s@{RO_zYmgusb zjl+W5j`I2E(}Ab1xdkdt{hhO3{OtXI`0hWs7l5WL1+^Iv&}83moE5eAE{1kyeoot; zKf3ml!u%2KquU-Fd9Ee#ahu-Y7a%LEY{SyRz3u9UuR$Z}nYE1WUqh(zWh}_;SCf`X zO9w6la`ujy$d3swD=s{2w+UNue{dn^=YKmd zs@5!&CfD%&|M;8>^P8XW>s#cxwbsk|WKF&ZFuK!&vG}K49;DsY8HH*$2;pb)2q_O^ z(Vq^eM6~0KIPiTJ64GE)h28hi6Ra6~Zd@oSju^7&G~0ux)&iySCl(S}+p0QqT*Yp8UnZSblj7VRmzA^=+gAPZt4zwz=#ZW?^>I&N~k+ukx^~LIJBjHDN1| zwJDI2KD?pF=Uu*%{&FpW)3DT1NOkk`Dfrm1YCH+*N%khYUH^NOcZF?RYau_dmnW>3e%o{Lre47>>l;yKho0 zUpYXi=`u?j*?MgU?d8eEBnDC!9SboZDF&Q9Y|;}Z%<|o zIbe;Ye)U*@X(Jr#wq%e&E3$&byau!Sc-gcbH~_jiOz8gj;ihn1{x^H}i`Doa-pO~_ z0pB$P|F152E2+vNbB52DfF6w&FeL@|4o2wC!eSpid4rm)kL|bhfM+musagRU$lJ21 z#uh!h0oaO0hb#cC9z5l8hoAiJlC5JD_d~Z?M!`03D_|dwgB=N&3$me~eqEb#ywTpL zw(D4$r2#AZjy8}AOciCSA~pZhXEr%Yvsqfg+nq|T5g(>DeqkvH`6V9YkYui}n z>28$4#?iQUhgL%jW!PL+5*s9N>3V*s(x=j66pz1e?*4Y8GbZO}{!v|jybo}cremTa{van@|?xpuw5oAr72o3;*S$Bp`HC0}&Dd9*z=&j7t zfP#!@XOA0ZD1wl46aP~W6s(y&{L0B6_N^HSu6&7=T{Tz}GVgzk`u5@Pk9bN-qG(EQ zzy4zCQC}_~FTC4BxWfZNcp#?luR0WDcEXnnbnDz`K+XT)J!x}4!Du7T6r%_s&hn<6 zcEMa~{U+Q_@Jf7L5HbBT8@p2SAGeu$rFHh?EJE$BPXa7DY_kG*eGiUjP&CCO2JArN zC>n*VB;Xvqc$ilr3_6nmASB-*C&% z?7WAVO76^S2|nh<*GZ=sjJ;X_`RC*Ft&6EeR++2asx3ZjZ0N(SD{E>aoncY#5r$^_ z_(E`1TThSQ{R8}xK*aF`Wcm(b2w^R#oO(s#Gv{uTWtS||?Skpg@i z!68zhc8siT)E76LrGrBO4a}ucs~j$Sea;ezk}yx0lmh!bOxJWOJh5th1NX_xD?>4+_Kz0eZjdWRZo`U8I!{gkJmp77CR032FVLlwTVaZcZbrY> z?{to`+8@;rQ~azru6NcPP8PKut$eenOZD7T??eT-xMezR?}a~kD$a|km9PhE>q>$j zYcq5a34>hhcyrN~MITa)Gdpk!0+G7)%{y8<45(YB3`-jeA_-7epZRk!jEvpH)uXE& zF>r$FfF6MOH%W`l&;0If?=>SzvL-YV#J*4j(AVO6S-BdR5}oUW>x`~W9Y+|5TJ%IcSlPvp2Sen#EZKI7j*6|2Am3B{{tlKh5e-N)gQGK%X*aNZ9k^Tm|q-_ zzsfIi5h;|6ZG6N7P*^Dg7`j8A=(#3^CWJ_yub?BrNg@nL{!?R`$|0d_wy4R_OfC9h z8Qu<}G@1$NE9j(ZDKvNg?y7ke#f9sP;&D!MO1m&x zILeWCT`cLUee~{ATmuKeZSIbrAaVJiS3>EeIGgGRXlOUl8|EY0W+HMoZ%^(Gp4=y2 zTk-5J!$;mw7x-&8z(e5y_ynj$EzIhWTGEVC4yxNvK6rA1yTNfHc#^z;e_ebPa6;pJ zsx88fru{UphmSB-^J!}^A_2m<{I-2e)wn;uEb+IKJ`n2gBAZlD3w=NCia!D$efm?C zF5cWEUC=%R?2aLplZ*7Cm$b8qk?S?&ao3%}h8nwgo4^3OX=GsXbza zz5V^^<+e697ijSc&4N`Yr7WS+dVvLZ)P$_iU!*sGK8*e$i~R?OJl~BG5DR!OpVT<< zspA4=npiX@>L{=jWuffbFe8@=6sNYyyeEeF*FGD6q9Ud#JzE zTl!7|v^1NDLB}f@{DF43Xv@m~&6hk_JbxXlEMV0yc~Zb5p5}nQ0Q;rs zplKNXG$&p{5EPu*%UX>*n2U&N0AM&^dF>IPpB%t(B~m&#+U>IU>FsJ;>68ugS_`(7 z?K+XQ_{gnONlD?0?8C}@-UJa14A13{XWus7!NcYUg!=xct1nMSMp7%DXycwo9pF*< zt=Bk7fU~%`>XTH~gA-H9IFodQ1-+Yk*osL11#rC~XExivj*5PF=lEN#Kri6`@ z=vKT~qvYmPV@&Z!gBFFtpMI7Z!|$WEv078LEr;8I;%jw44lm?rzwY@qsKM=4mgttos0c0AAr54!wV8ZU{#FsSxC+HqG!qw$kR{DpiDuU}QpvO4(1nxEaOk3zS~q^f=&;6;I5Iu+2hf`J1OZLm=Uw?FtuE zOHoW>hAhOn2O9!1p35B$I<|qhMH^Dq_Tw>^o{*@GF!NT+BWXbf#`V8GO$>t+-q^Te zlc0V>yGCeH;;=^2#!Q6f&KASRKW*@m+pACYKIC@E`Qhb)-)sY{ZO&gn8`vB<3Yx+s zI3`%7>!gFyK=GG9{KbluTV4yl1)*lp#mWK~>OkMz+Mt2lX!=>EU|O-7CUS1bU`7OJKjIU8VQ;hTBmdMehA+>3o-snC&04mKK;GEj{k&*Ouqo$ zwP!QvfZW%N%hENE`B|?*e!-X%sKdmy1-)i~>xPLR*5g{iSz_Im>(fk}aDq{EuCk!{ ztzc@8#g;5sdGz}c2a-%aoCAz$`sxodhp)^(!E!-^4kuMk_{2dSo2kD0onkcdNFPU+ zB1aZ(<&&S@zbAS&YYD1!F3AV8W@pe2_WUL$KSb5{{!h~R@D>$n2g43HgOIRkGYIp; zqol3QCe=;2k|AcfPZV2mcq0tFA;`AYrry=VpcOEi6)}Sw^uP6fPsBFXN=Un^23UDZ zpBtanevomf4uoTofOYtu5h07xCi6#B(UqTYNNJ^T`QX4@aMsk#Eq+XRS4x9Apbxvq z-)_gsEA($^w;&s9c{vYJ?$IyQSP0w~zV_2Wuz5XfLk!S1J@ zh@%&HdKVZ>rfA!6gN4OJs)u??S>8KMR1&P=b&e^wZ<1NA3if=OAB!*fYSiRIp8}^m zz-S~332W9D$h!=0kKBIOD7B1NU>raqOx?ANLRP;XxnF!{l)oKfXZGeR%xmxUr56pJ zFU;t&=p|xzPmdcpA|j%c79obg%Z~I_vYEvPZwaBJxZ9L8R%@T`jQ$lLERTW`P%e-K zLsNn$$}^^iQ1)GPkGtq&QS?aV#wyqVN!A$)?pl+stwRxJ7{$^*;eX$hLWII6!3O0kE< za|(~QO!yjuL1OPAnjNRG3-4Dz?lms$zK#8EZcq%|haZ5z@`fma%UGUpeS&AOu+K{F z8VVoIKzk`t6RUgSlcg&mdt;aP9xk3enB>HE%AY%)CjX~e>T7+$>yvHDK_%pFH&MuO znHk7uAa3t+b`ju*oNBL>cljcsDA}m;^)RY%eFpLP zq*w15@AIh_$j}bbMOsPtp~pTpTIyb}uWo%K+(^4~x_0OOY+ zWS*J3>@7zUs!)D-83@GBRpj}NhYug_cZmro=p1Y;0+V4Fgf`$Jx*Ol933_$J-pi}q zBN@OPp_R_y|8%}&4CJ^X$v&VA=7}=KBByXdR!V9<(drMtYZk5wa6~lyaDeg*k9W2Q z-6s3<_^#^X$~pJS;IhmAz3uMbzV@1PBHNb#n7J`AOr;Mb{$Fx5Pj^2*Lj??|!kE;T z&zee>>>Bu1I2iCH5P7Vf(Mz|GD0(;i+$oIBfY~vc~ie{X7Su|zD4k;}WHuw2fuj};Q@tg*yEaht(#TurRP-NJR81i|F zJc%&lSAdIIYZ(09J^PuFR(JQxWE;LS5nWQN6GT}Xgi$^15RG_pL1pYOE&!UE)4yeM zufG$VUVt@T2n9xQUpa5Zwxs0;4BNB7W_ZI{@5W!e^gWpzwl3Y4d^oktn2cRB@@~%s z51Lrr^REVgUtWo?TS{L6D=Axmv47rX=Q1qdX<1f8S``YC9yTI|RvN09Ef*uXj+Sab z@56mE()K&J?N^%<%sz}LAIZ}0Vq>lhyr$jnkyfv>XgFlLk24E$py(b(_NyoSVgWyW))LwF z9-na<0~aj5{piK%rwBseJR*_rIG+Z29shZiYtB;0Lzn`9CI z!)~_${e_vo9#6OQkqH|EJv2A_3>eNGoP1h~tUN8GihS5Vq zL&Bd~=7_>_HXa$PaiXC3-XG)?!uoeX+`lmp%lrBlHa|7Tjf~d0;$ZJ&T?h{4srf}&=cWR*1rq6HEV3btV zyFc@Zfr~)o!C3*Y?DSC;C(u`2&dqx9wH_02E^;aYq;1-iSb1+Fov4rR>= z9S1|r<^3Av1+pVk;zD=m@03yI#?KE1fqZSgzxzkk*mOgSfhxM{+L;hwch)unXVsP` zUo|W=dJSHZPy+Q(HkQ`ibErFz(u?tl4<$st-@}jVaXVy@LuXjyZ>g|?bZnf#0U0|RygnCRy$}#x-mk@=l6PZDTmo-FhZjyqzZ)UN z^xHVb{9KJTWzm0xgeNsKox^+1x5Kw@TigXyd4IY;AL2O8>z!S(%D>}Ws9(p~mIHxY zc_W?qpP}L3+744g0Gn%B_9Q~}LbZb^z&z$h(}79s-{QHK$;}V8p|9@BUDM_Bi$5-l zVP>8b==q>{QjS5D%eO1%pXwYg}azAQImQ>#U6}8*&kc?diZ>ig)mBi@T@L{XdXP%WCA5)>lH7`&! zQB#xe76j2HMVRxRAQS+;OtsOL2grt7(ohDjCiyR=m%Z09+cz~l^t5#&yA?UvKew2Y zx(@;l^u(@o7i%(AtVa<1bcldM`MvE~*dDpXgQ|iFS;I3{Aynao7Y*}utlk>ra4?V? zC+xX)Z%9RQOWkk2^S38UY3;-2@wz35i-UdT&Wt-2C3!TB;UBE0CKV)*j+iX%tib8H z%A9uSuuB1FN%(SGkFe`i!BB()P#i$*(f!Iud_Mhz5$NW21a~rJ;XNZ(R=N#K;qmZ9 zEEJd|1XH>>4lGX!jEhwPatCKOp#TtnTZQ;!8fxQ zT{cq0vb5h1Y>M zXIUF^i#b}SC<~`$FuTA#D0AH`_8bMJhNe`gb~aWD&OT4Blzhfpv7@*5qSgh2bc+zE zO?O|P1Qx)FWd_idqr)qB=+|H3uNwUcr$s}W;hAYhzkK;h4s#i5zs%tn!VZN`c zr=t~)nIw%8weDs>Kx!p5#bJ^eb^O*n7pZy|Aif}~!F6<9Q!u4wk0Y0_l#E_}S6`{z5O+30%VtpQ$_rwj$M7BAJv z(;=I;(WmadQa8OK@_e_d`JDGeA3fq;rEnvKz1@~HW+5q(5;DHWCrUZm5}c#LPv%Dc zA@>+rCsqz=4(cGFUe!2lHqBx_B5i06oECn;kjR+nPV(`FQU(^A=(KB=gQF|kI{?07 zXO9BBJkSkc(tba9J2COB`C~< zvxJ7}+!nbte}ksqB4Oqw1HcZ&rZ2@RQB+&4iDp$t8O_+Va`-F3)qXGQosW( z>HA4@pnI)D=FHUq}|9b{-iPtu|KQQ5X zq!00~RW`P&39!D4N1bW1_EU#p&Vr)ahI)P_8P*gIQf|2(w-S?LI_x2?@~yof}7w?^^;?!mcjzQ&ndmD)t^T@vzHm zH%MmTw=T|?@aTU)jlK&d{a1gy96YrY3sjwPbOg)DLfA_D$t<2b*ZgF*r@Q+BAr=mU z?egGWyLRmfNWx{lS&ClbYK1*8(~T4apTquR|2?K*gOFM_nijIqQS99O*qrGKj%2U zGn+Wxk#l3+`=0eFcs@QP4GTuPQ>WM_<7%vaqsTfr=4^gn3M5$6ft!7e#eQEncwZwPdor^&+7>zFD&wy#Ow^_9e{90Y_qmHEBc?j!bIYmVID`j}@owjK#TJ?v zlGmeTd}(aWw?9u$u*%mtSdCbR)Uy)Cx7QXuv3j-jgyy zN?#unUN5X~#J~UpoR_$gQa56EqO7#^`m`n&(x~h{Vy(1McXzi(b8KuZb();r_Ux^E z^Ejx42NCtu!=1kggxhmig*nUW3trN?1pfrMhsfoOiZ)^~Lhypi?$ULP>DnEERpY#o zJ=OvCE(p- zXUVWbcjgw|;@OI2Vvzazztd4)Bh99U%#Us}75Vf@GM!l)fIziO+})M6Xzt&H*$u8+ zo`;#+T-=2iS0Z9*Th8DDw$}*wT>eL(q_Wa=&e7a2zq=Ay?MSiKFBUUcJUi{1+F3l> zzT4s$7~YmE#Mx)HD-SXG_+oB8kI`QpBoTveIXMl6m}n7@cHp4QwjHKk>ZolYq3R%% zqYf~hTPsFUMD|~8f8MGdOAIvGSBiiy4r_iX#n?Q#)`VjCUj6ifgjSvZlS zx#GCBeiClZi);Y)NYc>glcwrZ!tA`EJf&-Qg-1FzJ}HY1Fh3KX#|HS&^{AhrhkycE z`AB19<4QO6qCSoQHz&40h7YNh-UB-)?9rAT3I#DehfR8)K!)MMtefqq=BGUzec zP;BP)!7RKdTXwBU7FtqWfNjhpSiVZr5;J8ifzy*&x=|%KmZ> z9VNx?U}%^t^Wz3UuTJ2nfUfrccEm$aKCE*QR1)6W0cGTG^drjN+ZZ?E!OvGv$Lg_D<})$rD|UaJ=*oxX!~yB2GxoUh@g7D%2*nDiELbjJ->q~L8R`Jt5#t_BBvZQ?bXqi~vj@7k+uHy>k^wao0UB;6?Y&hp zo#n%t&Wj1Q zQ8=DY&SERR)<=i^0P=E$*ggkC{8vDx5UPFV@8_o;xCWS%{rlz;NeMuUtcKc&6h6&u|JPy(5HFws<5&w zQ>)RE+7k>{M#`qHR$9k_(>BTN*g)dt{jT>iCl^lk4aCOiPVoU@+4R`u#)C0Uq8 zfNE8DrxpVA z>tiUtJ()oQm6@|T+52zs3r#`sqjMKy#?*@q4xh-5z;*NrXW$cZjF4$K0yK3v(T}g+ zgbcOj`VOshS6`7KTwn^WqE-XKP+K zWHDyfrHvd({4*BHzl?QEhdjSL%c{j!yE64CPn=d-BOS#`hO{37GGM$sGwO`=oE07WL2nWV`LiRH2lI;F~K2=Faa{^$UHeF|CyzWISb z6q0#I9(F5Bt*&<{9u|$p>U(>zRvL=RhjA_meid+Vj(8P8rcPYV(n>EaeP@~`SN?ef zS(JKft7%5L~Db3fa87OsqYvMABaZ=tCmBz?T8b=K_9S&japIk)h z96r2%^m%2yR5Peoy^>4OwD54DLR~rc{8f-mk7nS%1PbCq1kN6u`b_Y2JD(K$*7Oct zg+*(Pb{OpXycmq__e6JPdp&#h3~Z0hfZk9(0)(}|eg*4yc9Ab>Ne11jyBOsnaG}_f zM<^@SQ#~aLaJF3EK_l2zZwMvJk_%V(+qi#JFFL10-z!XT88WpF64vrB441HcBus}dwAxeRy0_8= zpdq&OA=DICz@HHqcz{IZw!2H?4%5N0C-Rq}ff9w|XbzcjG#dCQd%ozJ%6)}zE#F?~ zvV8ZCPBMBc&T22ankXK-E+y17}5sP{DCk->w}$vu33Gw|FkB(JlC3 zW#Y-|3xq1Z)ilBgY-W%<>F<}`89(o?6xJYot?_vC`qI+UEuX`I*mU$8VqK^)&=u!R zsLOA^OVY6ZmLDLTdA`*Gbc+=y_GRZqB`_|?F_87y+xIF$tkFVl?>#b`&F(|~?KwVO z+#f67bJC-y#jXea25GS+NyQOt)A_f*@49f;04_}G8`_%_6vo?rI3PX^)L?)cDE@{v zHufY*yJV>JFv-bO(Ln>|C{RobkpRvDIAqp;{uR7Y;dIpBipt_IRl~9jftL;-rPuzt zt-2^LDiKqxjQ;ciWb#PUseb}BqW26CrHJZzj~T3SwC$P$1>7WUQBhI-^IDX+9<&M) z5C|ZUI&~1r{YU~?CcPU+fv!(!j4T-_HG4LLh(jXgT_8o=;rXR=SpDI0Y0wm{DlZX} zmexr~F_Ztt%Y3zYzgi5N+u__PUIUZ2KnqmMUr3b#S#OmE6T*_;AF#a_sAO(Pun;$I zyW>+MKt=HPt;k}^Zm~?_D4kMZ8sq@j6R5jV1w6PU-UMX56aMU_ZHbhPd}qsR$H4(V zGw!NfBhw`cO^A^V2`z6bxqkq+rY_73QZdW8!3y|O1pVQfnvd3#cUDVxZELfDvjDw9 zJN|OwM=8!pq>pzDaL)-A=f?dj@qO1+yGKx7>h3*&ZgQ(mij(+nZ}zt2{wK2yb(g+5 zbu*}4UF^AHTpE7HGr{?(^^g>_Fm_9xtgcP`qBsqNhUFuGVzSb0vt<-wUBkNV`TCf{ z!5w-02@fQ?OS8?+DR?A-GzTCPz!5@pd5!}YZr6op$>+z62^}M-P@&&8bQpO?z|=q5 zk|$3+8I8FQ25C&5RA35^ojVOO0<&|Why44*=S1z);f+*;RFL@#*YoE`T&H$};uOzj zrjT2cee^^6O{MB;-i+i!)Rfe=t|k*6O)tglN-pNlZ8{My;n{r#)>%Q%r!V*k9y2O3 zo62nqx9k(6rT*C)Jle5A&T%@ogdwej>EmGJpvBv0DIuI!&rE13IlHs?ap$f(DRv|Q zHFW^o>Iob&t|p!C;33w)qU6*F3S@%MNdO#!V@5oirX70h4e^8`^ouy-*O55ro};$p zaG6fLNl;qbg9q>yWxQ(BA3{|B?J^wCtG?nLO7d60}v z{C$dZ`{NDv)op5sar-^40}E&tPgybi3+#aC?dI=>AB~s?voBv4@0+Z0p7Y z75k741j`H`*-&*f1)Dbuo4iZ4qpggqR3S!GMiFybez;_o1?6r$U5@awhu+w5@E+Q^ z^3W}-R=ILUE{Q|}c%ioTHtqNZp<)G=J2v)j269P$W@gb|$yXr^2DS8d%17hRIB%Gd z0yftqKjxf`f;RB-eA`rpF!sKjM?T~KFpw{y)u***!;I3>>K!*LV*w^9etr63ldJkA zdFh-;;M^_i0=Rbo%;UiC3wLxFFuyggAaKOCXGloqN@3i(u&`jWASO1MROTV65FT-r zsr)F;-UB2GPuQczJ01blvgIp((IlwS0W)1ZS4I;xV2?da9^d^tV6D~tsp1%lWh`B?cD#2)@A>a7FyjifmKw?$Ikcd6_b?lxeVft^8F`^eh>~5M7DFz+|Oc zhoeeQ4k!O`C39toyDS7^*FO7>J=ZgVDS0U6dF-!oe?tOV`S34_%1XDpIG_vGlSru! z@&W6iw5sZiJs%YQfrpTpRs|+cmqn9U81ZqwjN{pyuNmZDd(O%}%7Mfk*iu(_5m3)O zn}M$-+O``AmUrXhM~7meGT?0jGnj?t@_E2fcy_qY8C=JI4$#d%xJa)FI> zCkg#IWAFZ|@=v%5ACS`;<_`=`oNNl38AylQ7U#?N*eC5tvcloRd`@wOh2bw&dLqJ@ z^Oyki$Llt`>xBnTj?!rpn;U`K8I68?0C(SyGryZTYdzbbU{2W9cwR*Nam6GhxboTE zZrQ~?a4d8sG8aU526FoVZrPdGI9;DA6;#m2?ii`9%tA(_K{oX3fy3z9NPB}2Stxe0 zH7}|F#H^FTFHwG(O@g}^X96DWYJAnPYt*O8Qs=ag1Hfb}L z0^uzd!2c34&e0l)3YHl{fRC7=F9~45<&#qm+3)P=53 z0cwX8!h>TEDxTei0EtCx$(&fj>MnQ592%%EGL&DQAppU%aq!Rlw`Q1iXB zFi9mrukZb_j?qe}!0=6<^XzpJR+W<)j6NEoBu$Xoag$epqVJxjRtGD1hnh-1R!!yW zFczKG48_BTDgcob71h7&?S{^pIL8dp&9g(1Xa3T^{Ra~ZH=7wn_F;Vqx|BpvV0tfr z+gs#Rd*6%OTNxctfHTW^cY;APon~4bQ|W=L1V5H1)NbLRKsvviT@sxji1P(P+*fpL ztaFjt5JSe&EQ&>KLcdmPF(a6g-+=f_I0%!Wh{{hJKHPJiYjcEvWHKov>8b>srv<2d zD76_##ukcRSW*VyXkJtr`ATv0>(s?kbFR&PLxgD39FQ;)TMAntI!jEF)j*(Fa)~qv zQNQpdvReG{Q}2K-rKpW3I_tLra@HTH(x$@k^ftXx8l6goYS}P_KG|8F6o?F2RD#^~ zzCSt%_}5B+ z2-?mQ%o*Tb3GW0^hkZRdAwfB=7M%7+qVZRr?Kp(;vcz2hAv@(60BrQ}f+@}&brvCB z!Mz;#;Qq^5fY$?V806MN`~g9w1o%NUlmcLJpUPnRg=%Tk7KK>Bo^n7p4paHA75dL% zdm-)~_FTpw6y%|%`zoCV558sC?HSMKnOehT;YP=%c|^FAZyz`p;v-AF%E-6fW$(Y{>26mN+#>^0it+@`aWF@oLDe1(xI1^~{cllRgx40P zDrEO?`3iwILA(3!i}l={2^#vAo3y5^q-4{fHUKzO&wx5+cp5;nr*GXU#}!$=NemHa z*ziGS^6!Q5u)erEH?JFt=5xI`0A2-duJhES+v~~F=8}``y9ILO-8cBHytR;BA(Np< zmJc4BB8(esHggLnb=#Zmo6m+Obk;ATcBF!F-2Z0`e7l9kD5X2T$@Qal2~+u2;GzoL zXiFs%3LBx=3ZU7wwE)Wk6~Ox^8aHwP@q%sk5jFM8(GU=`TR#efKE5Q-{K)aa8THty zoUE2O=}GJ)MSMID!qVyVi9>za7EwcioAeCIT!n++<7B}gUVWdLpcj_4Q7w^38W@8TZv8`S}H7DH5m z6TAAx98WjnBwj!mIa^XSIBG8`M#NSIeP3{fksrx zbaAgykE;qZfXp=>>C(oXT?x5XCHwKc`cboEQ8PWW_t-owO^W3>;7thk3it@&q+ln< zLRBbA7jN-|A2*vSm48cokZuIL=q2?2+Q=n9t0T=F_b$0HmwQE6#t$HKwHUId1z_1q z<+BxF_&;4oDUKNCs75va@aeGZj{`m@cqySzz8Q*JTUxF%R7Yp~{s=&^{c9+I z7mS#+ovhdPCTpAfdHWS$seld@r$VDJ>~b3{TLEmT6}ZMU$5fDFB#H=A0& z+C;YEsJX$AOsvMPz!y(IT^g3d#@_1qlQS$Rs4es$h$N zH9%A*ts+7g3Yf$YNmMkcf&>wWB$1#D0YZpO31mEX01N%TzUzC}_v5T}*75n3mE@W3 zaqsK8_THf3rdicKMK5=IriUTYV%00SAlI+PrAl52XOwYT5l%9-(JAJlfK~8Ls|p8x ztGhg(=bm;BO#h{O+e7Z`L?;(tX6U*3DsY!JR}W#27_~d-zdX}t@?1)d)^M_SjZe_0 zIN9(%Q4>C~m0z!M_nd%jaL3NdhLK-UziWf+ym3I^sQ2?|xGi_6mw@Il0$kxg)*858 zS#}pKdxhFWQEU#5Mdb6kYItyWky(tY;2ml#t6mdHa2YszGMQ&HDMY*!9$8mLRIXam z9um0BkXKXllbUg@hVMlq)R^7;xv@W~kz-1foQ$@UvQT2YHaom8^l=$OI~m(x-B(s* z;2Nz8S=&R~W@CeaC%=|bKTO*qGUDr=cGKUa+-n?~`KQ-a1j`1=khyqBwa(!=*zyX? zQ_>G5AGC(Hr{x{3QrLK3_WU8oK*T?d@Yt$~e0xb8H2}o@PxF#|{TJI72#B-Bmtqb(bWfyQSjd@TwYey-v4 z{MS3UQB}=ubS)&;U;u685V9gi9j=2|yPC#-(f)UMS}92?Gd=N3P*6}~hD-k23#J#e zl0u!1`UY$C0yfeYPoM4)TMVCxh#-;_FLCQM_Wp2g5=fv4)C$>Atv6A*pllFH+4l6} zp72{tCDD>cH_m7WTf*}7jCTQMU0ki45PF1)8UdmkkM_rQ-EpL;?^jFR_JWq_W0RS6 z@%oyQTHk z^%@9S{2{X>{ziCEM5v0!F zE(1EV&-|CBHI?61**uWd-6=D;#zTBMWyq&PP&N;{g$3pLW^@&&0ZN3%MCFMn8FPGdz($m5e+Lb(8lzd1> z6RV|eJRMgq((cNuVUeYh-ga&E56cSBYHxE|Zo}m%G$46#g zbh*`eIEq&+iexT$v0|%LvNt6RM0c@E5n`o>A@%$SQf!j>(1i#H-qbti`vLi%iAo#{ zaizbc0Cfv~htuGSt*UFl8Q2DdUFnUgBPKGI9^fp&jJc`{RAxQrc9Na@^nfU zkoi1hZCdp;sryyBp&=8*RTwanmsB_?bkwvCjQai>yjW{~DUjT5LW!v)LFORZX~p&a z+(aF?&fp`HkE_&P2O8Mw_)}PV-M|?A-ay`Ujd^$R?`9@Q{E%p**51}3F7<^44)d=w zm$bWkL1jJE1INIdfRMXVEZEdHNj01Lw&q->4s&UEt;LL-r*lG4^_PYIUK+}!=i?6f z{m3Fc)*0(ujI8IK;kNSeXdk_Zm)Ih-{MVbum0lkKnVjGyD=}ao)s30AdB$+ z_W)NlNO(*S6Z69!W5ZKdc=iMP_;f!>8X`pJ6d4)sd!8hNb>c-47)5Of6468(6# zYVZ;p_6_h-R=32d&-?_w3yC}H06_7F>4QTTryFF98}>yN1c4(N`dxRFjEDVaF7 zodUWD2Rw5!o(Hkb8J|A|Fl(q3O<`==l=hH`AJQTf;)w| z33TJB1dsOzBVIjClO`y)aBtXv`3fTY>Sjwm%k{Z zWFG#5>3PbpnSG|bpL!cvlooNeAn*ItRp)ck?K4tZt#`x~{?`nf zEBOqg6ZV*MlG z!9g~*)LY#`sY;d~C66_|kF9Fjht1;mG^od4W{b*j!;*T()+DUVS0pn=yoWtns_lbR2+pb{ zfx7ydtr~*zmO-X5Ec*F_R8j(h^-J9eUfT96A5oK7ri{iot0Pi?nOr=cl@2YUTbl zde*sDKv&2#x-fTCRu$!pXH`j`_6&j{5>*+eR`M4ef17n!PA@!fr2S*B*S=2O@e4lj z08|gdNUxw98ts1Yp1S{LKJt<0g4KkYnQd{dptPlKD~~~mod|vOHMD>ve^pjr^Q-FX zEe}aPa33EdCgI}NVKd!A(fC6`%N-%!MLb<4?-@kYDcM)j9o-S=(H065PF8D%1R0)D zz=mg#+V50aHPtOAu7($24irzc%PT#QxxzFS4x?UrDI_d{y(eJTbvLr!Gzwu3+<|My zbCLcVI4QX#B}jw>j_hb{Dy&eZW^4AJ3Vi=t~h^Ufr!Kp>CM4Kjz$7VcHURPYo*>DG2 znZ<9|Hnyoil>eY~0N1;H{QkEcbwAhdoW8lH#<#ZBxJzB|#u(Y?Z-vIHo>Wh=>1ny4 z6Q?vdTuywQS}htp<~l+aB{n=12}lV#a8znKhc*kawLZ3nXm5mXa<0*2bG9Eh`YvhY z-Tpo?JMkOBkz;q>sLsnvkb^mmJW-TIvxjJVK)#4(L#rUwSUB}GxTCm^0kJ-XT)d>N zO^3L^LdES3t4jOHX}rg+=i1k8-#xXWq{at-_)vun;&s6hqsN*h^6PRBG?AZ|ttYRz zw9?+{=v={CeOr|NRkaRt!pT6) z(@piE{+7G3w!ZkuFKW~NatZ#sZ4}Mk5Fh#&us6jdO`6rMN6PaY=q-<5zlKZsehB8P z&9-XbzXmAX(y3hq!*(eH{JhsB<|`+4EhEnXe;fr8yS;WyPb;uf4>zqV@O@p(x?7mT z*AX<1u4ru(BC4l(oIZPV+f+8dGW^d%9u>jo&z{@5Wx{_ zAd9W3)VH$u>ONI6AWcK1KM&5Nl;6RgAcL%fgq_?En^;F;3zLcitN<(1|N9*zMbM7!eaIH+SRcZY1j{-*!II zukju_EIVB^z$Yoox^r6|ohPci5CAlYR1yQ(NGVz_`mIY{duy1*lU)+sV=R69uK>(} zCP(_PDFX^(62F2T>O(mN0R8qMt!NCVjtEm-I4Di)i{=}Scgo8!wq?52ia-S!h1~>N zDKbjPdNVLE&@BJ4frRa{YR@v%hERUwFAA9ceE zS!6K3$A|qSGBVN`@8Z0HzEFpNb!Bco)_;rHi)#$c1oaAb^f>fOGV9?#WWf<|a}B2+ z%I`G?1;o0G?;F;nq@MZY;hcCwZssphCo#h> zyG9bz<109IPxnYGXGacvY-g1pFV?=)sCOU(7}~b1a#xOsoiaw?_g_9)>P6ka*l6YJRU_>&p~`AzjXr#3<#GQb2s1%2eU=jgI%A(rO*2T%4{q=y zW;aTfVV6sQ7rQ+eC$p;GhZk!*rDV46vcp-~y*w1oHKz`v5d67`mUI-;KgC=wtFvq# z4TvqeUdrd$XTrj2OfU(D_bR=+67>Y+vMzy+^u9qtmc#dkD8;z|IGHyhxB;tt2m-rN zf!ad(k$`r3jbbk3rUwPzk?A%UHfsG$;@ULz_xHckS5Wc2%%P8x?32QGNBei?H!SjY zM9;51*2~j3d*otkR$`~$O-}E?T*HMn*nrF&@>Aj`B;;r!c7W8B@xZu%tGm{Rlm39H` z`3`bQX9=9CsLxXxF_E6t9{f`KRch}p7wE>fQ|%7abe_>bI@dEe#DZfh9|NT;5^-J< zl&1#cSR@z0Va9Oxu@|C>Ojba7_QD(h&TvK+!K`?+H%3ZaZ(@#>@$Ns-MhQA!S)`bq z&ZY!*H^7}pcCRm>1j&U4=q7gAw>VjFeTUq-cNgR3%XU@3VD=9YMFyhnW5GBMIjK>A zB%st$76^-n%DR@*@L3k-6-UV7FY*FS{{e8}FzZi3d3f^A07s zRL;I8Ad7YrjP=zbeW|kQl8~IFCxivoN+XKWXkDyAT1iU*D;L_bzvjiMGF|EwrBcZm zAv7V|>~HO|vWa{ZVGdc{we?qV#*r^5SiAVFe-+`YdN&?7y7 z9l>u8uKpzJRnus~t+1{{QSFE0LgC{~ega-D*6q5~6*hdNe~7yufn65J4as}GDDQPH zWIcao+X7c?V>e;-j8A{M>g~f_yI&a+K{@lJf=mX^1JHRM*>w@Qs`Xs=|M3I~^Subf zJS!>?nm38p(W=u5N>ySZ)oAD>=3Sjm36WMu9YaN{`VXb(pws1wNR#Hrhd2r_2{hEe+RR-a$|Ah6;p&d7=MetX2RSvzejOgkv1&KM7b5{Jxxk6N() zFkZYAjTV2M)1kiDzLl=r(q0i~(J%HTx~&A&!4{`O(HB8#;KmYqr0BS@sQ%){kYw*Y zfyQ)2m`DbKpdPC)M)c&8~=S_cdZ`)X1%m`Ac zsAo%k+U!*D9rK5{kylxR5f--SY<@xNGH|0U+d;blwRjRTaV2w|uX{bmlx68gRe>l9 zC9KE+?AGLEmbMi`ykMnFM-cp{uhSuf@^0?Qj9YO6-uvQQSRCSVoEM^c3ms*vPAjdk z7>p_w-vn|<%D}=C6Lw4d8U@IJq|t?y&?AILMKTS;(jN{H~eQQ%+LsF${VnK&G^m32>|?8b?NhE90Zh1op*4CvKwGHS9o z0D@|hZLKGa>*LZTTHj<#p$*8|JA2!a1fiQ~{sU3$UC+#D^_G(b zWy^a8-h_`{H9cBoOCRgX%&#e>t41GV2kn%UlHjj~H%6fIN^Gy3?rq2Rjto_2@!#FY zV44;|pMIF}(>xTvsrP-!?nmf+jMAY=+Jm|7!M~kd3o1hevSBcoG(7$n>7r#BD;<)o z)qAq5{jAMn7;#l`pp^V11Q9^(ON*keUo1UMxvr;u&%Bv-1|Mb)I9TH zt|x9Mft!^zY)Y0!@Mto49!l;+D#c{*l(|%u4iokJ!vUZ?&*TE5k0)|LD>_Q(r7@3Q zh9+k5Wv(10!ETo~M@&%5D^oj;a+FneyKHXBMzds!n_HXF^kUx7I>_-&SeZu=)94ha z?;5E@5?4ODKIT!%&6aeA-7L7id9`kEYggNCwYjG*VJGRE)hvy@SQe&3E(R{qh9lU1 zNq9G*tI%L1KV?_*yR&Pn74H&I%%+M<^g$^#9@RV@em_1f2qC|nlU7-|k-@qzSGp*}IBUua^hG}OP!(i0o& z*CsoqMPfClIHKd6(W;zpvWrF6aed6T1gq``GNBoET3YO z`SrV4`yEHMD8ejz_~GOu6||KqkX|sT9F5;OPxmWO_U^{MOt1%(qx)|qS_b3HjS;jg zqLRd2)B>IvR-SDLwsK`z$?K)a^&+pUOv^(<8y2Ybc=~v10AMdX9O`7bFC5oep8qaS+55;f3de(!VOvEH5b|@ zP<{Q!YH%q_I{?pGucuO}8jq%U@>-C~;FPPaN%9ka5EzRQm2n`{@ogtqHOL$-D52x? zH3B9;CXnD9LB$Y{F90`yegljniKA+3TjQn=)o01IoLh}nc;@(b~_fzmL&^ANR zr3eslTjl`8H}mKa$yYTiUOX2-GIN9y5%+J82VB6<6+phg#^Ve67o>c=8NRR$)Ihzj;A{T+J<&aVB;-5d1rVq-nU8==;Q&e>c?ll93miXUUj^aIH5 z#I@Em3r85JjG9g;9r9f=$@e?f8q-y0fKy$ECWZ3d`)RJ+Is{8ej6E41npdt!d{fws zXk?k0PEOhQU&aPnQv=!9C^6NCbMj&c(`XIuL2jVmc#MSRK5IZy@(IrD_70G=f+%!x zcAi}_3qaZ+@jW=KLp4>4C#_eWUExIVQ` zWh;^;N>w3k_M{ZYmX6^tVtJT&20o< zF6N9N`jlrhC%(`^T=m|&oxP#voAl1=+1$fyccsh4c5{GLBC}CK!#k>9{?UY9uAI{i z@Szm%2?E4A(AE}E9Z%i`pFTU}nqVIDtkLwEvjf^$>JlAbVc?#n^zpncA6CqvLY~I<#B> z(&zZ%uStTsB&o}o$XH(c>r6$afykX4zy)cHBLc9DjHDN*c1ME5e41l85L>13mb?~t z*;ywpAX%KHgm6Wf2Z%R8ih3swNMik6(&fKybZKerNZ*f8G`CO6{qgns5K