From 290ac24d886bbe92b8ba4d663f296d429b133c1b Mon Sep 17 00:00:00 2001 From: Nuno Duque Nunes Date: Sat, 30 May 2026 02:50:43 +0000 Subject: [PATCH] refactor: core directory restructure - core/framework/: flag.sh, hook.sh, help.sh, command.sh, mixin.sh - core/app/: wgctl-specific context.sh, json.sh - core/framework/mixins/: json_output, no_color mixins - core/core.sh: sources framework/core.sh + app/core.sh - PYTHONPATH exported in app/core.sh for lib/ module resolution - command::_load_mixins: uses _FRAMEWORK_DIR for mixin path --- core.sh | 22 ----------- core/__pycache__/json_helper.cpython-311.pyc | Bin 135356 -> 0 bytes core/{ => app}/context.sh | 25 +++++-------- core/app/core.sh | 20 ++++++++++ core/{ => app}/json.sh | 3 +- core/{ => app}/json_helper.py | 0 core/core.sh | 12 ++++++ core/{ => framework}/color.sh | 0 core/{ => framework}/command.sh | 0 core/{ => framework}/command_mixins.sh | 3 +- core/framework/context.sh | 35 ++++++++++++++++++ core/framework/core.sh | 22 +++++++++++ core/{ => framework}/flag.sh | 0 core/{ => framework}/fmt.sh | 0 core/{ => framework}/fmt_helper.py | 0 core/framework/help.sh | 1 + core/framework/hook.sh | 1 + core/{ => framework}/log.sh | 0 core/framework/mixin.sh | 1 + .../mixins/json_output.mixin.sh | 0 core/{ => framework}/mixins/no_color.mixin.sh | 0 core/{ => framework}/module.sh | 0 core/{ => framework}/test/test.sh | 0 core/{ => framework}/ui.sh | 0 core/{ => framework}/utils.sh | 0 wgctl | 2 +- 26 files changed, 105 insertions(+), 42 deletions(-) delete mode 100644 core.sh delete mode 100644 core/__pycache__/json_helper.cpython-311.pyc rename core/{ => app}/context.sh (81%) create mode 100644 core/app/core.sh rename core/{ => app}/json.sh (99%) rename core/{ => app}/json_helper.py (100%) create mode 100644 core/core.sh rename core/{ => framework}/color.sh (100%) rename core/{ => framework}/command.sh (100%) rename core/{ => framework}/command_mixins.sh (98%) create mode 100644 core/framework/context.sh create mode 100644 core/framework/core.sh rename core/{ => framework}/flag.sh (100%) rename core/{ => framework}/fmt.sh (100%) rename core/{ => framework}/fmt_helper.py (100%) create mode 100644 core/framework/help.sh create mode 100644 core/framework/hook.sh rename core/{ => framework}/log.sh (100%) create mode 100644 core/framework/mixin.sh rename core/{ => framework}/mixins/json_output.mixin.sh (100%) rename core/{ => framework}/mixins/no_color.mixin.sh (100%) rename core/{ => framework}/module.sh (100%) rename core/{ => framework}/test/test.sh (100%) rename core/{ => framework}/ui.sh (100%) rename core/{ => framework}/utils.sh (100%) diff --git a/core.sh b/core.sh deleted file mode 100644 index 3def78e..0000000 --- a/core.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash - -# ============================================ -# Core Bootstrap -# ============================================ - -WGCTL_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" - -source "${WGCTL_DIR}/core/log.sh" -source "${WGCTL_DIR}/core/context.sh" -source "${WGCTL_DIR}/core/utils.sh" -source "${WGCTL_DIR}/core/module.sh" -source "${WGCTL_DIR}/core/command.sh" -source "${WGCTL_DIR}/core/command_mixins.sh" -source "${WGCTL_DIR}/core/flag.sh" -source "${WGCTL_DIR}/core/json.sh" -source "${WGCTL_DIR}/core/ui.sh" -source "${WGCTL_DIR}/core/color.sh" -source "${WGCTL_DIR}/core/fmt.sh" -source "${WGCTL_DIR}/core/test/test.sh" - -command::_load_mixins diff --git a/core/__pycache__/json_helper.cpython-311.pyc b/core/__pycache__/json_helper.cpython-311.pyc deleted file mode 100644 index 54cb7e6d3dda3bbced8f5596d4c33812964e2fd6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 135356 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

gGfjTBzO!pofftIgMXy864!*So9;Yi6Siin^ml zQKoyMC_)eSgQ6Z#V8;{cQz1vxf^vj)3mxj;yqTdME7IgeRbeZ17uGwG0-#zl%;keS&WgmU~b;blbn zGyDf%{FNiL;>P&Fw*qelW-VVF|I)Zv+?`mnM=ahGu_qN&XOEZ0Pl!bwQc=f0YoxX! zjnr18k=hCcsagA07_OPi`xcq6RkUt!tF*1cd+mZXMd0R+J>(FZu9kS zE5aJO%Z>&oB=V6D@MYJ_Zf2##XfH;Cfpf~Prt@wGk=%I^&S98TzG>w1u$zfC%F0Ia zqY53RW*I96PewcJtwzIPD6gy4!g*^xBN(hsRdh_)7{{mO9$~{547}}i9Y0G;@^6Nb z?6X#&z`Up>zhO>ThxFnq&Q-P)yd9JgCWNdzhABHHk*rdeL7xvOLXPLoyTTk+;Db|+ zup_QoU#oIFU;fX+k5 z1^*z7f+vo{-Y4Wg71E47nmC!n;9=C~Ul7n(oJ!no`#OBSV3)Nvm(-7;J9wTc)j@ux^4G^vOWzNSjHKnv7^n zubk`2zDbspG!7l-1I$F2u{PDRl1!u<_=Mmy09c+HOvTHyAZ8@0`N@kMEH^TOdrua`#Dp_RIPi;c+MQhz1)L0;7Q(=Ij6%o zj4(401j(ks2wz{$8x?c6Rb;Z>W}Y-X6J#YEKwH>?{vl!bi0~Uos>rT{3kau7feA(t zC_I5PvhYeEF6(5&{B4o8mAi>}!9xJIWurKd_qDr?GQ<*Q!NNCAzj}J6Y_|AMs=iTm zrRxvszF8->ZG5*(Y}@*MqqtzFv|uNe4@eU0RVSS!_;IXp6cFy+K5ZbBFz zMuV`=NSTG>AZ1{GfKUu*moGS?$dfcW@}^C%PzQ7yJ_=L&NeS zQHbK3(1R(x@Ct>oUL0k_6^vtC!y^H*d>`Zkg77+?3jdP8XDJ>B>vs0Wlv9A6zY?}k zClX$wSfm0%7JXy>l!Ntgk_rl6phwiOK|<7w?vlYn56SeGSJxQA?;+mzDZwB*!fnXm zl9mODd!4sTc58XEsOED0#rmYXJHgIm&4M_8%W5e0eP}QjJAXbv?WR*d(q)cYh6Z@u|mUNc%sEqArgXu#WravWcW+(WBMHSJ| z<bk|c)l%K+_v<#?sM~O5Sgh-l z>iXVYF4b*`nPAcrvjT0D)!(w?T`)XUz=st2Y3674fiA?Bz3D`%XKq6&RjH>cSy(w& zN!Es$(UcpGPs;bO;6^O0xB(HaVqw6@jt|^L(S3>H7M!si@-<^v1lyvtu@Z?~95Mjk z_#89#Bw5R?Iy3=mjNkw|T69IP#cn>SkD>vH4AdmAlV zOpfoF%m{zaYNW8uN@4dhf*YJ$UDm&F8UZycO%LJkZH^aglFM`g04BC?DAh#^#Y)8&bDF?_AjvLQh!)!Ii*Hfrgx=}duIU*#)! z^fmm;2bi@`ynv!rv6`>IgW#bxyq0J=i66fj}s35H^ zY5}v#c2&o`oq`o6{b~Cph}wC)6&waZM}NdJehmwWur;nKXS%#(ccu4UfIj-eDZ84f zim$SxK2+b4O|PwE9c!8k+j#3K(R-Df`BUGtf*HuOs=EAK=dIH)eB6KeZiwU>mrYT24?A!-9v{m<7Aa_b*i zXh((i7v)RkdEnC6?xQrht$6R!*gjTi?DtWc+`e${(%3&%X}J3+O>U36cWF2(O?bYx zcR+1aGv5iS{x)waD6(l&p+~sx`W`p$$w}e9Yl?zADGKhIA_t$LR2G)P#+J~NW&HtR z`1r_>;N$&dSLGiYKHcNn+6JdVL(CCWU?P}u$wB6GE9GDu%0YHt4$Al4{8(@hE~Mb1 zX*iU!V}XtAg2FdZ)xsYU_+tWpLf{I(K1Q;`z8$<)Hch9j%;ON&0A`q}r<_laJv+0Y zPnn0XFr-;GpZ-CrT%MY-avUFlgDZIW0MB)3B!z{+#A#X8$3n`0SU*6n3-k9N^n+$8 zw?6<#*-yYv2v#l%4Zvo2c_G2*2pjmihv_NN6EcPHbtDTC{?Du>*g8V^F6Bw!LyFLi zxfm-4d%>9(=ZecNG+$~4%hX;N-IlP|;G8R{OjNC(tpdO)7Hp6THYB(WNsH^{U1xVi z9ipXLvQ#H5)pLdQvC}hcV&O`uaOIgDa}G}=aBjggEc1=l+F0+Lw`BTstms^LIxI{7 zN#J9Z0Z3LW$%~Yq*$29iEGo*0b+e{!=HL|}S+`)e41`C)8YC-Nb7t$!vZ~AbFYb>8 zW{SnKrBc~aI2ExjW+392^ESr=vsG8NeRub_cK_+Xw+BS;F3GzqVo7oZk>_D#ixbwi z&@QZevvOt$RvHU?q=h{q*CRiJF)qcNN^o^JC9Y11*?y&1T)19ZxE`dF{7mHPK9M|K z-dEO~UlSb=U5%293Fa0jo7*B=qZ>tc!|l0R- zVzF|mRJl}pyJDt6tZbJm+i`pKXZEIJSIzW^m7P*$CvLA5EoDhp(V0ELVho?FHD$f) z%~#i3`V4k5VKCS=s~QrbFk1Hx0(vz{HAS2Ccy)KmR6Cn%f6b$DvH@!s6>AB!vx&*S zGD3H(XF!R|hu)$Fl(LE;eJ@*?Dbou~RSohlgtGFlw=DyDX*?&3sXFmm;Zp<{R$}t2 zwe)i@fgXT1a~288k}0ZCpfs5&;%4g|1*r;ug-3<>*x+vubvq7P<&91;CXQ%Gdww+5VTZ9t!wJ_!Ot~H(q#%QY|I$C_s=_YszdZch6#V z_k`*QQVV~JNEOsczlQ*IQYSiEN!v`@>;bW4lT@-P!X*pJUl}<+66=mPhy~43L356K zte;mY?-$$6>+vOLd%e9)aP-1ple2G$`D#ZO$r=|~5!Q703|f2->GU05jTSYXH)oli zU$U4x2()NY`zzB~sZ7eDsOhPO*u6Bmg%Ko$ULNa2qX?_I81*R)5+grII?j#E1^he^$;_(xq-%pe^lH$Q#HFoEZ!&;Z+ySF??!RoyDPqL5{q|9#k<6U-BQ7B zk=rA2dlKn0&8#Kn-aR#|i}1R$8+%QLtEQ^n1?H>uMnKJkMzSY{s%`?UWaPdkazX}X z10LocjICzUGi$)GI6Gz0DZ=Ow2^cL_bq_d7Z)S%cElpv#KM12GY>Qjcd8x0EM_aUu zohf_RF4O|y=8Ye=>-}QzRwkPF=cb%I7j~X7Ou2NerIQCUwwP+NQMHz?U8md+*jn!Vwa+_p zTFax6-cRO? z*tA^#<@A_EJ*kM|Y(3F-6z`O3`wEoK9l&+_r`#HC4L9$|GL0a-C=0v!f}A_$Id>{@ z?o{U7Da^T3m2;;^edl$rzRc4HnC?QgqF+lg@KHa6_(ZWVE(jAVPttuNa3VP`(Z%D0fs9ph5rPboXnAA=$NOBALDDQ;|#F>-I9~zQe5_85%vv4{e;X97?_)Dl^LiKV-L;xL`8rl!#N^t z)9&a{%zo);yzfT&qD1++ndfG!-U%m`tfQwb)6Qsb^w6ap5YRN*&KQ`irOn73E#5JP zg?~i_lnDHY0F}4RBTK70=muMSEu#>lg&FbtCjDgeF(YHB4h0fMr7R>km&M;jj3Q2P z)FmVHIidp4mlz$%?9kr8Ma&dgZ|R1F_ab#S;0H?H6tt zI3kb$B1Q3qYq3Nmv+R4F6_RvJ8A@P&I28rG@vS5NL8k~mwlQIDOIMAb+e-K^6`tuV^72% z6)Re$idI-VRkY6pu9S)u8>Nbkk?jzl$F{$*`_%_|SQssJlY1M|v_76U8!kg~$_uX|j+;w0a#fRSVzv-XZI@>2MS}iSFovdw| zZB5p9ykFmSqrPi)<&`3_ew|dmE?HCm#+p~x#CzY`^5zz-0Us5c)<{ij#G18I&Dvy5 z!^|UJfBdVD&#u1GC$?{r+Be;D*%lPsG5~yNuz9>cC4iqEFZ+4>X9b2rvc^)R`7ERn z>EE;zyuA19UZ_JlPoHZu15zkXCoyWo8kw)1kEhft*#Zb zJHEM8bE~)S-PP|^t8bwTIrfs?10dd-h30JGgU5gk-t_hroBp7zx7d2s=0@;pv8A`% zakbn`;VL7At5+j@t=QSOzF}=r?ZEmx^SLdd1n`Lvmg_jvA zynOQ-{P@8V=Z>}3AFMF~YL-hxPO;_EzXxYPztGLY+0mF$>$M0#U~BBsR0Ot8J@G*u zd8zp_c}itf^8n$KLd8SE_bCUT<56ErR6v?NU&e{p^N#v?>q5Vn%`@st<{kC( z<(jX5>dRXCz-7(XGfQ}E2C(sUfix-v`mcPh2G3bL*;RlJN`g0Iq-gZUV8zW_ECv-LtKD`RNGqM5C0Y2iER z89zA|PHQNHnS#NjH+zp%62eU5K#rN#SqL))1UY6_c_GX+5+=)_!4Ot!F@!_HasQ+< zFosRXNJXG$(wTkdq+1EIci~Cq9eAS3d$KrBp2caFv?{++-90(qY|L!_*_i70RA1!B(d$P`mQ7l~&78y%;;4S9;^gN^j&fCh1Jbd<c13zA#m;x11HdVE?vgrpCD@rx@rk}es~wTx2BWZeV6R&tpAby;iDTn<#u5XSDA--HG0(5>MOiiETTVmKr;SMTNhmG!0C}BVFwkcBVp*@r{KsyDu9_^pHv3hZ znZgbug`ImU@Z)dWoO_p<|8_;!-X-QAF0mraxS_);p_hSXQnm`d1&j!eEHqHU4tN?g z%G}p5CoG^nP@!dvh`EPe#;-Tw8^g*3dz3Apy;HGz$;|+F?kf*F@*opY`_GYw6?tIa zR#1|7YwmGh<**?SJMyr_b2Gr5`^kgnUUR^hk!oEzz{A$9&A?A^%_ClQhF!e#9hX)! zoanE7LROg)o6jD<%{>4+Mi3|(COs95G3m<@Q0y3OWXJe*coK&_q5U!0%OZ2N__k~` zC?pYAZ8j)e#Er=X!|>*T%{qt)tY)aE4GPKE#z*oFhKY(z@);Yt@(4mPW9AOyoeMXR z;m0qh@Si_c0mCSu@L!Nrww1uI%<(|g^f6yQ^{ajT3%}aeljDMH6@ zD-_Dm^Lh>8etNo@z!m^l@O+uVS>eh6-F3?jd9xX_JZX8L(lutP$Lu{M(2@yMB2{y? zn3btbm#WhXA0gfed`IvU0MtcbURM_5XC6;hHqF>>RCXl$cP1*Hkh^+(^;;X>+%Q`r zHg-#m-MA-KY?9<*vG0jw|L$zWwQp^DbJOe!v2nH3xH>1|KsMsK_ZwH}z(}K>3 zinkr3QW}Ik$U$Xhk>9ZDD~S0u_Ewf=g+_T*lU}=o27`J&r!pp<?sjr1@}7qz_$k@H6F zlB2@n;8`lY*KdRHFu2d3?s{`3qPUZ_LKjGL-vVml`-@vx|OoB4~ACbM1JJ#i)UVh=4kP2Yu~R~dZT8kSkocZbill$ zuq3)A)^KUZg@Q{35o@xfoXMQG#23c<;!UsZ5=&a8l2)?gzFAnLecljncx{JRvPddf z1m#p0Nv5r(a)I1s(NpoVgsUZCX~`vEG8nHAUo0zQ$OewDkrIV@vR3YjKL6-M=(LZq ziF|MxaeSEEU~GNc0_Q}uCpa9m6|jeXo)iwqa;GT$`{3z8W|0$2S(!e8?48>vIH{uX zZ%`OCE?JiZhBq+ir`;{SN)Z;wEnzd1)+DPJz=j0wf^IpiG`+~cYRmm9>Y5CXZ-fC> zu2@ftu|Q^%e-0{1&Y{Jh_k&{}bR&(h3D^#7O6cxUsg)z^Uq?TSFs7zVZH-HuD+kh9TxXfLcv!gh6MFI=FJ6rZS#sLs|xP=6*UQmPfM3 zFZ3i?wQAp_^U(2;5qU6RQ)h(XHHD~0tfPQ<1P4A{_HekF(rf`p?}zw2-FSrn)9u-V zP|CaWvAqME{lnwDY^Ek-K%z`jMO&eVGcX?73LnxuvteUA)HcNrF43PUJ7xly$c3=o zEAyg3!wQO7{*z2^CkN@JM;Uoo6iCbc5Ah!q0Z5Oz0$fmX&7R(5x+S(eSzdAZ(8WU+ zj$Ar&dFOSl(7iKayI!i>sIUJKLUW@*jkJs0=Ho5a!2tE9Hsmhv=;81x~4i+6F*m`_J5l;&N>C+Mm{x zSq@E^!qQ8QSZlm@W++j(Oe|a`6)r;n)!iHtI_F`LbPlq$Pq9C+KTTQ1_pdWy1% z09yglSAkYk#0<(TCc7)G!B_qb4X_B}oH2X=qsw3YO6Viv_g$!5WhS4R8EE@iV2HEV}6n&*9>B!K|P($n=Z#6fwn2MgDz~s za@3Z0lLeHm%|5wUAr6UqNXrzqCJO|8{zHdA0R~R^M--9~cF)#BLnA@|fZ#&?Zx!6s zfd2{gq-jj1nB!y`Gi6r@Nv%mvA-g+BTE^t*5+0)(k!O-xcQQ}wx}bw+vU<_F zX?NCS^J_~M6u)xh{Ee<_e0VD~b3{)OJGdRI*YkSt%BDO9kDx z%pf~IusC3T?QD%KiY$s(h?X|V(w0b{a>pQ?kUlaUgBG#(qDChQ)ZIew7=>B!5G9gx zd$KsJT7@jV;gE__Q+cS)-EfGkp_D`Aq1vu}H}g=e%25=^@gQH3r zz%g0;m|sCNnY9b+nXIR>MT*>8x8YUU&3gv0i2=hxv`~?^DIi=gQ14Y~Ym@9--ePVq zg-CFdCf$Yy__X{!#em3yd9>rP$PIFsa~>=M|;D!=-_;z!DZAgCFBRNKA1M zZx%9B^g?nhdVP}Dm+-Fn@~&CCtgQ;O`Gt$#s(G{Ki*;YBn_YBc;hKmg;i)4#?COQ^ z_kZ9VhDK?09};suiSs2mU$PXA1=^(2#fj3#e~+JC`6p|>u_m#8Z{m^1#1;Fb75l`F z$EA+PpkP3CKxtO#qY6*Fttqo|FadwkJI zk#}mI$Hgj5tWTd^$5!|B6+yj$gz3RZ`K7~ z8B?SwNWT$^G#QIYY#62+9UB`vCK`3H;a3JNIkL$ewo82i<3IaO9`T2uvId4wR#Y~*4@?LZob}bMR+*FVnc$=lz9dd!_SET>>w^-W=&HW z?OzZuPH|u@S|QNlWRerQ9}wi=m+UdhieJ#{m;IcDZTMxwFXm?qnjLwGTRz8E7&**_ zHtxt2>96NcqZ6EkO|mwN@W{L=K&EOZ%CJRAvwGe%)|@m}B~9JDX>2)ZY)Tq4)_o3m zp&W$?YkopPr%z4htEhe1FPfH+$l20`a?V3YxYVZU@QCNS3nAgs)(kkB~| zX9&_U<$A$IW#CyzMM!ui%ZZQ}QdavUCGdfxDV&xGh$4)7nZF8I5}as3;6ysD5cvq> zp>e@Ok3Warr}tqawBkuxx=&Pt;+l&wXBe0wRW9fX49#Ebs&VLFzDjABL z7B7q-SAa~H%VLi~qA;l3!b+qpM28HL)(CKwt^BUIDnnotVy~Bkw*iE@%ZuHd6*facR0-Ch z)dBlRfXMcwx8jxX`EYEj=xqcmHGcYrcUi)_Ea@(NW%v2ru}UO#H%sp3nerR%&V;)& z{h&N<65WlGyD=WR;a-w(FG)YBh!>0QCdu72W4+;SPq^EYh2>FO)OPzO=V6Xa_laD! z#8oG_Y7_-H@X2$YUmi77kM=s-Z|z@Yxb9d&aFuiO2J?G{uFY%A@2#;SJgi>LS`eLv z+(+*Kyli~g^s@P7%RTsCKxDG?CTz_wKgu<_nzBXAs0kys5QdB$9`9{>bvg2AfvsC) znnzVa7=Gz?l>)MWjDxlyqyDPl;?cBPLSOS^fY0GOm?!#UOwxrrxrg4v{JAvh8vrvY zH#+WM4+))v!*glWw{qSz;4WxU$hkCHuAVmy>PeSIF$K z-!`)KIF{W@=swj)_My;)ieqR%Aw`;eK$BL z$t+AiI2;w^K^61g;2INL<1L4ws2C=p4rtKOZ^nND1C4Pf*wTttRWRVE2|D||sybk3 zPsVuQfWzydpAXX7(f4T_Kz1^sljXV4wI}*f#&v6v@e=y>^YraF&KTx2JXPYl8LeKK z)#fgIW&8Q<(I;aEMfXCEd>wPQY%?%6X`RTHA|Be8{3~oiSIF{!PCZ=1~(f05wUZR-1R>Qk>3F8R6SPb z*~l=LaSQV~+Q2FQo8V+q+w<=l+x|eYL5@8@-Z`FJKqTng>B8XeCC0^fPCoQ7W8O1y zKk@A+0u%oBpdacMPz2?DOitzC({tLGR`_J!>9*zm3r$O>G5JQVM_f;~7S)Ilm|u2= z_3F{E8bOf4L8YcwSVkKVrH|Tv7xKCr?wYeWB8{)Ko^Q>S3OKtZXSZlsC0SM_(r0e1 z(scYFwR$hvkgm>AxA=_QgZz|h2RSJi=9TCWApxH$3sEJCjE2NBZ!7Z%W5?aIT4l{2 z;UVO)ovQUQ_sq`v^G>jbvs}t%SR%die!imlmSrj`dT3RFvsmIA@ZuiQJURvBSZV5gr zeUQ*WKJqt{euLW}obdr;s<<)w7>Ys~b?ThsE4Y&t^W_)EY2&cX-i&$$i~09BAcZtm zLQnSPS-+opK?dU}s04OUt-{7`0fSck3WEKmOt6o=fX4ixV8_wm_*jO`NKUnVyn-4yB|kVk!rDMSHHG3u7oF@#byh_-XO2j%yIc!ko_c03=Vu9-w^ z;wCz*#cU6oS6(>(LX4Le$23)z)2=x?ewF%AN(tbadotD{dK)A!EgsS?Ba2Z;s|=D} z`1+wgQcx%cCH@f+^=Ey3oZ)x90N-foZ8l%6awB-P+0xr)zuIP|@KPg%+ietHSps;C zbN5wXPgNsee)XMyM8;Yan;iimJWC&0m7V6HBj-nO&e3kO_7 zP)rC2LDr9<0UdxtdH8{6eYq0_7X}Da=X6+4y2Hv^L=Pjv7<%kSH1a{CT5K=v`kd*K z{j&F>7h5hdZqKYGVF4Y|Em^t|An)$K28u?cTY1$|+1qBm+Ggo(w_jam1k^ApGE+B^ z7}|anHiT3YpO%gphmbZ5qZ+i2X>yaIhq6!6LmBePO(ioCeb7i5@?nE9T6)OB%GQy< zF~6_n@NwJ>wzNT4o#7>@aduIITm^uWI4k2ps#TN=)9r$JP8Ll(fu^BS25XUqmJel7 z|LgliSA*ngNVwL=Pt6`rw5(59*2}YsngY&zc?0s$f4P?Gh1v(i(hxA0swwU42+P$T zB6E_gVlTW*tLGb?_)1tughJQ^Lcugeym=C3-}jp|VmV7#Wz@o(vn9}e52$#k-)U3c zD|VZ8h|H&$?ZKn+9t~(#rJ#YaOgy*&t*q zW}D#f5N%gMZ5$vg2sx+0k@4|k$0u4z6>zDqL9tnAXe0BEhULpTmg8?(XV=OGRu0NX z?opX+^5-M>vV~P^0jGt6zU4kVKQt5=ftJ5qWx@^`8UI9JADUqR z95qS>4>=igQ0yhwf(bDOiWSdbD!^Q*kk{x@$*{lm-GoC2u zh#ZL=nE?Yf=_-i&6RsMZb8heS_UI$$c1>ejERyT_qy5uIW0g`tgUB^XjHMBwIF3me&1-gJy%FJKBQVTyZ?=={_vJca3$ee>l6 z)!e^VhB}!-v3^TENg2kzLl}9P(a-R-eq?9H3?<7yp3|dSJC=KV=`pNMnSTV!qnV{w zq(bbXbmcth<*`a*Q^p{wVMPq=0kEm(8&z89Of33x#J8W12?JSLKmY@Nyggdou&bjHz)x?JjFTx6K;%m}Y|oEr0`#0#v``djz4e zey^c`@@jILrv&$x69!dtT4ne6*qDE0a1=%-dBzemK^b7!KIIB!qrPpCdnaQDF?>%v zA&|Rl^+otzIDod&q570{_())c&$IbLy4z;oARI(`T1W?HkQ)(H74u+yog!~u#Ba4O z*LB~*vdfN(j#wj@xP=W;VMD~qa6apq9&9(vbbv)}nZzwiq|a>MoiB#mcTwuhLF5*- z`A1LSF7v~08Uc5P?YE9E%sp~7eaDI*thZ!iW~`RbC(;@{8nRBeu^d@u#Z~FEIcXUL zkX|I8K`EzbXLQwaO21>d;GfSce@=dTS$_5@j(smphdBpSK2+o(Pm48_;cJ;Xgo1}T z?7+s7m1-3O(%#~2%sHCQrKZt9f21@&{ZNjz7t|`?(|>om)}~M2rChfAELS^fL$y53 zejpF&t?pZ#dA=d@bMLad|S`%XT?e32J=4R)5Fg z4qt;j8;0fSk9ap}N;#aKQ)Q}C#x}tWh1p8vrEeMD2BYTj5Ks>c+k8JhbIAv49NH70 zIY&lV17stcsc|xH>sfP?O8gwhx;Mhl60K-Vg$cNgTDMw%e>KJee z1`pPO2~y3Vu<#uul+jm!LWI89b1A-kJ;!CdsW-P?v-{t9@!jKz>JG7bk5s)UYEPEb#_frc7Mw|6^IMKL9W#q&n?&Dg$+tSXW3Cj! z^h9+h&iD@bDwZyjN|z-{mnBQ9qg$g}Z`lo{t+%mzZYdSSL*A4XfZd*>97^M` zD=m_(@vS~3*urp*ratytluhE`0RXJRpsFH36>u$dtvWuRF(qRz!vxz zy6=z%o5x_8hZ#i8Xut+iAos2LXCcrmIy}i@Bd@!pfsL^ix85~2lnirXJJ|MWInH&b zpPT-IrtI`(u#tYCvdKR%(gu{5Kei zhxln;#O$>8d}sj3gP0wT9t~o)cz~S&WW=0Yz3JUmH&*XRtlklCN-S7`bEZh|uR3O1uXKs68>QBb*(b@Wg-{Vtq9vQ!-rDizj+xOb+r*~L zQWJKbPd~a@RnImpSOu9}Rl8Kx4$pu}s+-+wvp?V~uxJB(1s0*a8DK@pQ4yZv=sw&n zS<66d%Nsjh-4QKMpAx|vCJP%LYc%GyvUCDqNYRoNdXp{EBW^z`739<%_3iqH(Vs4a4d`+_ve zehP^D9w=MhAKfUdP%q=ayQaPDO|P5P1b)_E{5v|SJ@jlp9xh)6epy+9f#DweDR{1$V7QFKSISO{QB93;{=;GTpsJXfvn$ zc@^pTZ1-&4;(7DRQ?vKzDJApfm9O4&zL9FZt!#4DV@JkMVjU9%dm2jN%F>1L`+TiI znS-C^!DCS|246-YaINonnX`-@-(yU!<7>I&YRRrQvR0gTtRy%HPkPdGmh7q7#%81N zJtmccOd>X)+_5WD)})n9VDe<+R&h_lcdTrJ9Dp(=WAZUJ%33skb~ja-i_T^wHV-MD zKG+n*CL`^FV_r^R5cMXU0AlztO*|j6iRUi7ltjVuxCKByzhnNkGr{$XT))KiBXA!q zcDJ>I7%5{>J~9>=!O##z79)?C5 z!E<{f+oS$DH|>E~vey`+4We#;LX4+hkctDt(O*I_R2m>PYY8sPl{#TQW?y% zRS(x}_^#tyj&~P*zgS$eTUxVQ{g51WJWR@QfXFcm&DmmM9pEU)|49onX0q%Hm&L4a zI9_$cTW7k&$_}ZrBT=vnr^qdrxaA3MIg8X0^X^+8Y|Hs?lEtHv=3V*pf?h>0z!}MH8bpbY{I8utz(CL&=!Cn)-bc$8QZSL z>2!BKxnFRFdLH8~w8JcK#Vn{|5oKq$cXA~4Y63m$_$XJsDa>h05jNu+I9kt-xhV{3 zD#ttMH;XB&+N<08o{g?1Jr zeHqnD1n(VA!GA52H7!1-rU0hOaaI;$y9~*1%pyWruqR6(>@spcLBcPEGCYP@Q%j6jtwZzsW zYTDx`M6M&jbwJy!YGItC2?x7dI<=BvrcQ4JbB(WO?8`j+OsHy3QLl6s^&8UA7!%}T%rdR)g z$4CwyFtK2RzGLnO;|}?q)RK3Mqy*PmR#^yYHm88Wp-L4&OO62z5gJqu-od!a&QAah zVM`@-DS$RtY2NH&2++;m?|I$&3rB;Rw})*T$m@WrR)S{wy}>Zn1B6IQAKH46d(0D<~Z4yaw zWK3}^3RDkKZaY(XC3VI_$AkW$k7;iB1z}u}(Yc1*M;(tDW<7{w?f-y8YF&2OIBB7R zIAxQZe6F=C@wT*U?ZPz)c1E9@g$J`W(IWXLAj3w?wYKma@b6?{3)Lk)A7A4;c)G`T z$ApjDjxxy7>QRbRpv*Aagz@7Oz7|2iO@S12Cd*Z%HsvBK$h6!swhUm}U`!b{tuR%6 z9req|Vm9-zSwPIYwV71P89FPd8O&Q zZQp8pcZ=AwQ|j3%-}}*HPe_kFn{a*yecoYr7M!R-7#Hw%CD0@iv@S4#`)*zZw4PqY3u`(S1O2 zA3#8x3B;}C)4O9;2{*Ynjc%QWRKe(|qiOkxsQdO!mp6(TSXQvX{Mt=5)h(aj>Hqf5 zgnOIl-X^)XA&`@CX=LZ!rcH~2x9O6ZHWz_tz_e*rrcHBP6)79M=d=lt=>txiIu6V) zecA*!B5ch;-Iz)-**iXgDGk~`n54B61;@kypTtBl4_`LH(4n9WqB5l|zXTVoGdWBu_JR6Sk3K!|-($k}yhHdM|j3ym;ISi zp@h%SYt9lNc1RBYBa7%+?DL4Yj1c`o1c2zVMEE#}esH!mQ9OwA`}=-);I9rOo_t2! z^Q^SzS^4IV4h5t`6AAZoqWd|?{Tu=sl%~V7j%@^7*}z_h4hcTjX|2+-?N43CpT3@4vV|c0?>|k;+ao`52Y0{#`-=+Dej>Hqc6o+Vg6E#S<4dFQ9yr%tpo-_wei7_Q3PKCB&yNzmV@FuW$Di_o6NW$iQe|E@)ZRFmK;#@S1J`?+ zNxMO43%kQk%;!y^mTac&Z+kR>Xri{j=$j7cLB%@cXxc1*~!M!k=BnRO@<7$hmfo*A=iR{g-KdpP2f>| z!tdaQaESo%ZYQnm(}aIPH!c&{L4d69bNB|-Uq12ye9pKF%8s;M!?WC!@f>8nCk#&* zE*mjZImonEXhS4dy=vY2Y4Z6!50dOZKUGnq#ZFQ7bu(rRt+km@vwi)e`-S5 z_*o*M2p`@42g5&rj!G1F;f!yNu8ggWu9ttQAtNo@ss*y$V9Ik@mU7B=VrT?*SHgaJ zc7!T~>D+yre!fW{Yxw!Q^z%yu7_Xp%LdRtF8;%}y!wt)1x4QjO*4o}YP zqQ7KXBM^FlvSOcGbTvz^W|+db3(jmw+KZ!n!d{J&mf%lIg$tqCtk&yuI?9qz*r*>9j|(SVfT%N-Lw8H+rK&feSczMx43Yhv~ZtT z`nXj3I9$QvyggSzKCp{OJx&2|78`|X2!4`!9GLP|x7=n=8FoXt?7rxZ9eBTP`Hi~e zv&~nyZ+3paIZ?MdPuEN0rV*rQo1XX^%=dz=ls+D zGuu9Zo2k&{(-%+2cO@3Ckx#K=tyHmAEbNgAp|;U#E&Gr_#4=Y}erenLrA;?Vo8tJ2 z#c*i*ereZ@(yrOnSNg=#O;YKmhyztxR&i+?tAWayKw`;8`Ak2*WpX%*=8DRqf%J|5 zP1q5jqUO@+coAt-%B5_glFNX^i%le5RNc!y&4#G9^2EC7EqUeC`BO0tF1ftTlDB!L z=7x7=!n=|*9JeK~*=NZTQfF)vOPi$9rbKB|5*s1xy0|OukUud|x)>UZw;YDT?%O|e z8VaeY93);<0PLh9)LxDvDgkFGq*_N0ahKjKE{)i4ne2`-`dMVs=Fj%gFXBIDT<@&Q>RXyI_Epz`ObHZoR@Ov$+?JRkdR%3 zzzVO;czMRau9xOqoijKMf|i@5%ZE#sOQkF2(v>$$*A17h8(JWh*2|^!H|%oh=CB)% z!NM-6;$#<%K_`d-CQt6rTmO*~_I}HRbzy8ND8Q=U&A(0kzzd{QnnVyqflJ{V4L|3BW>ySmRt&hM%(-&r++gjk)C@gl8`ywfQpS84Y3h7A6*@|el$m!iEdPW+ z7J2NY(FEPDYt;jG04@XJPC{qbQ|8vJPPo20d7anwezKj?w7Ki;wh!#d>-~-oQtU`S zDoU-Nn()!=>^i^e;{+eBKlVH8GLk;daL{$Oovw3gT=?;)Qs85{y{?}n+bPYg$=fnJ;m>9#Z&~5` zv*mWA22*j`xUo&+U*lo|F*7_ZF{#fgNPU3*VvkraV@&Epac3Mo31@8`MTRYCLXXa> zz(_iEBthC?xPKNl5ABdeP(9en>NccNX;+U6E>ob}YGxgRndAgB$<@7LJ&`wzQ>4-f zjC4_?t}$9F)g>F4iRIim^Qr}6rSk=!kqN3%C0oWA8=UdSm!n%?7`76BxWtuKDB<7H zvrkh(4iYRmA-o;J^C3dh*hDD3AEEB14GE*APCG5wKG%N7ncTq}R~kW{u# zE?bA3q4Q$HK5>7e-0+B4|41+~n0On}4YNX1f{C}B?x#0~%Egr8;LhOAaFgULk)0)? zdd5mYX|v8CrxvZ90CFImVkXi5X7Pniqr(X8fKS-M06rTT!CVg~_hkEfssj}4d2ak+ zX+vqS!Ki3%IofpQL>GiYB<)gbfJy@=a4E1GE1=kmCGuAYjTpizw{VdFG(<@p%P^q{ zH>{;KN=?6qLeCTEeh*&>rGRA8pN-N#?u>Am=q|zuj#{uy^5n^$JkgV10XS%ry}Sz5q_^J5RBp5lslL+q_QWQq08vBYc#p<6C}z2eX)tXMl}Y8( z*TANh@JQULld0_F4CQ|xMF(gCDHg#-tr~+ZeM<1~g`|EM7-_R7)|}quntd0O$3KuD z`De=hnUZIg?3pF1XLRydmEe;HZPyNsvN(mT3D$>6+sZtYZuZ@1#-#lj&D_z*4;i3o zRudG@^F#~6+~^m6_*3Bg06iCAHz^blzHL4a;-KwF${l6^oEd8{BwIg=o@ zH+OQxs^=~+ib7>9C`NdSrCl^^Cx<9CUMJdt*qoeEu^k#>Bw8PJl60JHn)M#N7*Sz# znUt=;5g9OW8wcSfRPZB$BBDNGbhEHmBg@*0-peeG5)`ozgbdp+pyX!m3_a)t;jP3m z8)s-goYc_Xt&7fH_&4b+vLrH1%1=U44?-J8xsk1QdLDewOcpjV)j)EZo&^ski-C)? zJEX@;#4J-CVs^H*wgVu@ISB?{i&+~BHxELJric$K*uxO52}0BPlFE6@w^vn{)ESp* zDpH}~Ee38U+gdqzagb8nYJP++e%&$ZZ&Y8+9b;(>6?jx+v?e1n$t4_jq)D@nI2oLG z;g3Gd9BICSaz7>Tc$$L;R_TIpndB{&y~W^C=v`^XIBf$1gY+uwuHsMw6ILCSvIBB9 z3+9Y~pV^_Km#2g%Bx(xWT_w=&2uaXB;`Omj6m%Fu(=Kf6-x%EZD{Li|`>|^;5%_4K z?F&MPYYeRfPA;4wM`4U9U=>=eg~qaG1VwkD+(kiXY)~;v z!Z#`h)c(kj4VxUKE~uC#t9SJNvf^mk>I}h;Ya63Dnzj}W3Cw=tU@1ZYZ@8wdCSQRh zE?yuH1Zt{E>iz>Zduo`bEdjP^x`3anOedNU9KQE9QPgA-+AH$sQ?UFc9o$OByaQJl z1xQy6Gq1A?>bHn$jQtTD-pp4ty4FK(-35lQ3f$mRICtH{w$O%@K9O-;rzWvWwb zSNH%PU=gK8Q==1^ISj)#lIHJdiuxjk!G-VB1KOPKbm1pWXVt&6Rv1iT?%$cTqyCbn z^yetbF}^mXMeo{IRu9gWrmvN!uO%*IjCbeT?vzkg9|9wX%fe@`%tC-Zd{+4A6)5PI%f52N`6LfMIl-+6p9~L;?tGj~PX2HtN%TLA^TtX37wN6c zoXg9JnNv)zZi^}UXffe~;?MLkI7XaF&uo2aYbalG7Rt^-(OC#yr|LdB6Tb7yBxkYg zEEd(1;|= zsGs0Wom8DqWbQ+gn#(GTQb1-8U%?BzHF3y0*UU>qur=;M8+qySvtN(#ICBu?rK60C3D$I zuOa{vOS73w_+l3M#8d5ZsyWY=k;b(6b0IItW;V~+6epf7pWScMcvJtzTWj$SzSdG0 zZVyUzehVez4>xA7F1A#h6?bw(H0R1zVHwUS!%3{!foYO+mh7A*s%Px}Ok>Sb#Eh@* z1DWQMp5bmb2l?iGAhQ?yVz@O>;=gba_^F}grLkqu22gXVZEF2hfCIRCV zm_wHnnfg>Q91>5)eX&dDzBqYZj^q7oJ5qy8N(0~jAG$Bj;qHrd^by4sRj)h710q~IShT^@ zYW9}s>G5FYw<>RnGlP}i*_>op`8}4;CPT>(Te+y`o!%t<80#$(n|-jibjNq5@G5$T zbb9zPzKWi4y9UKuJ-dVa*QFR#aZN5Y=zg<5qGQvjZv`=HQmq`ftVyMs%Jw9|JjK+T zb{o|E_Cf(rr=qD-aBNl=Fs=aD{TO4)XdG~5D*^|~-0F>K!5x89H`qH9)dXv2=m~N; z9^YqiuC}Hmr#KX%=Nj2_%&Aak4|^B^fk;}(Udc(UZtt8K)$0C-qYILfaD#v!5>ANH zWG~Rq?;tVYC<1k+M|T1jnik!h$p=PzC)WxwGy~TeflblLo69=S!Q&Tksm>C#3+~2e zq7kF^X8m?RU>bQEerzNTd>oa$HH7ze;c>2!2aagK&k_U-x_0^}XMS{MXwM(_zSj$H zI064iTKe;@ORmsSgeFRx2IVl88-2!f#n2`9eld(UAcP`Qj(Zu`I^XqCCA|0O#&gu& zj5~Fbelm?c((J49j;gF;fC&XJXSI#G+nRN%bBryep?@Jdlr)N?%%eu9g+DzN99T~Y ze}eL}sc-%s7tG>A)uFqUi5=97RWDRUo)DqAz)q=Py3IqXE*)`R}ZLW3@DMg*YZNX2L{%GmYhCg2O-Wr~B zV-No;`S!@ZJ)&<9E+*8LnuhUWBiFeI!1le=I(x#8vulc6*E4*$yk6w2DNVXw>Y(d@ zovzDk^YP>tnwisR2J|gh3XTjY;qu?lZ4XzgQ6$-(pF1nWI`v=_{57ZwnxS(onnqHf-f^I z%#iEVDJJRJ%qx+KcNCvPox)p$0iyN~dQKKnIe5 ziI|2A%eE1M)l2K_cy`nQ;@QM;h>8N3XQ1mSR!3NpmdkkD29;M>^+%3(;R|SmtCyXxqhH-aK2QwST0-4bFXFoB=<+TL%BE7rDa>>Wm|ZzEJ zwu|f}xwKj@-zw-~3f;uF3ctX`_!waVsUfUXDX?plbcLNyp)tq8IY*3ttRBP00nQUJ zj!_vwbHWvRla4*6*vIN5gWzz++Q)L0#zkD{#)vtijGAp6XO$cwDH-#*0GBe*3TtVB z;RFL}&@>thvsIkDEHbVb+p#ebmJMxXTS--?@pZ}|$Q8gh;qV{dx-(s!bL1?BY0V2C z;EA0C$vqey10;J&LVh)a%D|QY@`9syJ*@o_VGc7365CY(V!isKol9+ zz~40QIp{89a6^m|1*iymBlfruC;XRTUm8#BLdb2`x6x?&= zcN4nE^MZ0jJ#md6!Rt6N;n)!?)7%dogcc zoG0($OeD`t^O><3MDCcsRN)Z--LqX3AkwH>xzG_;!P( zujULIctKbW(MQomRMVio!Wa-b^->tc!H3#eIGSuaOxhuE|S#j|GPjS}5QRG*Z}Gw?pCj7=XExm!&XNYJqvI0Fy)+ zF)&RthJgtieH-fzi~T-t@+=NDCi^>uAm){^GX9CR$^br}j}=2o*e>R%P! zH0%wC-T-{eCnd8O?5&~GJgWL_b_4hL5daV$DB7T|$V zC;THdkJ{U~>BS=@IJjzDW}I&kevU^@Qsdv}jVIrBu@d@JLJLh7JpG=ahpFI>C8(dL z`_T04=kqS*g{vYDO6iqydgaaZIm795r1W`m`aGCXr6t06DlHMlQ)!8amkv!lhIeA> z{>IbLFw2dRy+*t%e|z}BGg(w}jx@icae`@jVnG!S|fs#Jwwi(F=lg7$O$CSEcfPsrbd{Fj2yOaToySjWmL%- zRW~zc4`<9CXoIKMjFoc6%HaBu)QsoOJ$o*6_QI3>Pex`Ar_L5rXTz|OCP~!L1GXMx zUbTJ>muRMTXdIm$#?c|vg-|@Cjp%rk!EZ0ZH<BbY zzupmjyR?eoYZP7kCjRrof};_`l6|z3?h9;hTgF*#S(jr2jCJ0C>Cql;MJ1M=@1lrXy-FGGOAErXy74@)G{HM}2({AuS&2fi23M>Y$0Egb)7@xYYYI z=zO&8R8M!3CZ_3j^AF-IE`u-Z zQSM(MfuNXwJr^n@!Y4N}M%~Qmput$5+yr91<}3!rabQFW+x@+VIy+NQ9j)QIgD>Z4 zYF9LJb@~?JFHrv5n9H5Cc!3T<&>qE5|8`1NIB__osIP9spEemw^(5B@IH0CRRuH8KNks4KuLTNMe6c=He+$6JAOBv28o z4{eitr6ZoyPzvH%-t+{9J%Pyi!K!P!#d0|Ru9ZEtB0E1TDUY0ct@q{Lm!7=(BoC)U zxO^`fPO0RX5=;r5xs{Q1x#Ia*mu7{Z7@RH6+00KVV~d=zCFmZRIhU|LJwvJFs|aoi zosR@q%eRELi5XjP4s7CouO;!nLom0de95;}_H7k?TSqd@b>}grC{Ku_sjI6A0l#2ebhfFz?ZkW6U z1GZzYt4%u433haq@F^vX-qogxHGR<54##-H2p;(XO^W@fl+g$NqHvp(QYoiYVmi1} zXz#mN506;JLsLcnLY$F&{&!$E|0{VG$(}``dXiPgV)lIOXwrDF(QKH+XzE8#uOj#@ zs8_(qJ7)b-bUv5HQ4eI60m=@J#t=SJ;o79F872iMFvPgiRWffolUuW`5cWn_saKbw znM`j#RueSJT;TNzqj=yw>eFi0rv|xsi{rS)MmKBp81;Fq>th>^_+(2A2=;&_7Neh$3w7m5wfsoJemDeDwK#aN zbf_UR%?illtB-efv?DwqQ6sTY_Y^BqW>Ryq4Hhg2puHU{cy!&~imnr`BNlL9+)wi=rOYZhvr6<;eUti-F>TRnMh2aq zrDuPdQ!b@f$mtbW+&%v1Ql3o-HA|jC*;6Qb3bEV=Q#dct?kXp77*B4cW`3Gg#$CmT zo&Y~ds#Q*m!nNqjr{=HEwf#{llIzZjnkA0wGktWu#96b#eSL+4u2lN^X7 zL62ynyk>Im!NQB;&2MUN2Xilx{uyhbT$*h0kOkeTa(8EOWlF>RslF>!%Fz@Rju{~? z+y?yK1R(2_D)np?jaV5$w~er~qBW9aJ#??i?=>qeMkbQD+oNIqpnMv2|q#3Y-&o zmg}r$s$YES~~w`>Ehwi#e?UEN~O{ba_I)iUnl$P zurq+y?D`A6{k?q~N1VQA9(d}3&<4$FW5k=;_W)nO^_{5AyD>DuIPc6e$fzv=Yb(>D zhyh9vjzDcv2MEz&G7l0l%=^;y3r-w&IHb|9EsOvOgRQ9%c!X?yU7Cv>lN1}X(QG9U zOJAb|zJhut=6Dr3Z)&;N^Ya*FiQvxY+v(QZ#G2ZfZ)hirR@38F90IYRmqua-d;JAH z?!L^}r_4Mfl-w9wDt=&N#2_PKY+@5h)*0O%J5|V|MN>(qY8A)k0CzjB`Ko3Us}XRl zIi~SUCgUeCeu)?Z%Ywa zvaO4Iw;1Pf^2u?eiIr;&@f5of*mN3FpTwv$p zHw1XR<(nFAj?_xND%n@nx8b%MM(e4r(h+|qi#qO-{6(_ADCiggH+}_~vX@@i)W0dn z{@qH+4LiQuAf=SbDW$Y?&P9RndNE^Gs6132*(>>G%f8v7dVYqdr(f9Izd6YM-G);? zIEA~o?eexUTVfI_KyslrSQ9*bD>Xkn4Hc)B%BjeArIb>9$aFDh3C_rAaq6P*p75T5 zR-VD5AMk(?Bk38Td{#KrO8+kUFZ)CI_ZdAOIvzS6-bpFfGZoXO;T%g*Umm+DAyWau zabM6(ngFLw-lfM|n$DPhkpd-PoZr^VRIGrDDaz}yF&fPe^R5xGrkqSwK7Q#KJ}&Ty z8+%U=d}Ui$)5pdI)Se;L_xSJeLUsY{Zcu&K<2~Y9@X#|pB@B(553Gn;m9+JBAtw5 zfnP|Ty|QPo$j-6U=tuF1uO~KuFZskLHtz%zKf#J^L!SFE73^{S^O4z+vpW!F-SDAN zr0ynzPHGyLrGrnyU`6B8yzbDg69gs(o4nB!WyBSh4e6by(U=qANeXGX(GgczHsP|+ ztk5jt+C*w3XSwVw7uA#ZlWu2Ej`w*#b>m`!euA@oARqX}6X0@$`UI9TijWJs4^FOq z)su)aKtfks2$IJga_A5U)B;UWwiG=GclT6M3k03Pckd-eTD_XhP(>s#jiw0AQ_MT7 z*#oX4>t@>i7*=Ad2iWR7&Pog>sPGS{ESoz2aBSz_&YLdgRY%T^R4x?rR)>9I-?g%l zyy=m%!+Enu@=7DE?C+FtawK8Qo0tK`0whq%%KFx3tmv)`%Q$X&sK&ebXw5}Suv@e1 zx50o_qay|^Xh632Aq=p7D;%>mh#!)8BBv0h4Y$!;K5DsU7MPQ}3Ks24FRF~EZ^+#| zERO0MGJ3VT78Fsr${pN=3(ZG5$W^z>pQ`RIS9~(8S0k95>^O_yRc9bYpA97( zW#;Sst!%nqA@LeYlV?`Qbe?<_?R6!UTcmRbt&sKw3;g={99~1C)3U^Ro8Uf>r z3>a^_y`QEQi*7o>`4;`F2fL8)^P^oK!h6CF$+JWD?7)RV1qcrci*5Ju7q?-)F8|fnkgtzGDP}`T%@lC1ZvO5 zJvYyz`wCt}2x+bm-R{EHSh>bu)Jp_mjDR5$V>@(>7>LD#J%%dveqh6+t z!$~D#Qpre3K+K&JIuklGuu#2yJ9i4d97!jS7QnmXg{jfOV|0zA0CZR*RY1kxC_~bM z)nW3R+KIrn^pBe@!+uw{7MtOoq!)TtLR1mf?C=JX2^;-066E7aCgQU+niI@iKIRT6 zF8iZ7M$KuQvN0N)RF=sdXoIF4PzO%3v)^8FapV)g#QN#)_ao(f#h3J-~NaR+XDAoY?Hvl12p2k5!reh*_*g9;Ga5vC5Z?IhP_=_ew%;rb@`olrArNH+n@{y75XS+LBV9OMNyq?2cqeo-)}}CVI+Xh`{oa zBJ(9rx$G$yJ>_bipy|Cn8q>$vXq z;qrQ}v!>8}z0g6|MRvL_u1Um?_si4PEpxoT)Q&Vh$N#rcotX$V3)~nlUPn?!x&Mq8 zpYWFBRopf3;^R&ZiezEIi^rWR=XR6t0wJH^s{n}+QhW-eaCZCu!u=ftDnWb-KqUzd zDnsip6!(+wFjpX4bIao+>{S?C6E%6!Zbp(fi5) z%{k(hfY-uOGU7)p^mtlf{V$rvLg%R9D~yHPC|HK|mre`M*k}KrAB$w-l7FeO&}%X3 zH*M-Lo8n6uAxE1Ro_`w)wZp(CByQoP=7qvJ+-Bq)(i&buay4u2A*m|&kOYFXr5IbV zr>m)z3n4gN@if}Qr2xd1W08zUom8fqQ6q|NEu%hY8^cJDUo*m_hdgc)@xVh5G4>!6 z5?rT>nCOr>GMGU>i6mD8-!pFE?@=ye5waGrm;WcSnyi;WFl)lb=Qo-#+8GEbf|Ps*MzXCv%Lk_$0ckX%R# zCImO!@@9uxz|Z%V%3kpE-AOqknR(AIyR9^!rEPED#eNdDm z700=;j;x99*M+Kut z2jL81c|!WXcF|(f!xkQa765HkVJk>HR!(%0q4fm}N8&pPtB{N)Gc}W_g$`t0Elf4P z@nq8}Y^?bYw(i7+PD$pA3v=?|0eGCJ#bqU$M0_4ZO;eYak;2k}wxL`x0}9uh5MR!p z|6Iqj9pU2x6_S6x?4RFPPmY*#`?uZnO&x{+`v^3}WnZb{s9p6AQ5jhv`YUn1-T4;0 zz%G|O%Vp1UTo~Dx?(|ULyIGRENOmKbm)k}5JEDJfsO9;#OKp)v1c=C)Dd)^Y7EZ}i zEqkg(Pxa&rEeRcY{@A5s;WICuf8qQ<&R~XAyihJ)DCI1YbAY{<;FLT|WwtTq+hYno z(GhA1b_6>lPZ6}=MGuP}bBvqp;?+UrlI(Xma?~Lgn-c@YkmGG!On@8{b;!}(VP` zk-gOus}ILnojmF$$$y&ItYRda;&eRt!X-4Kdn%uBq=CQkLWJVnO~2VF2R{UknGL z-}Y`Bazgg!-Iv@KlP)J|B^bOhYyw&2(|DRovN>jPa(b0vmRIN=F*H;mwhKMRu!!j~ z&L2*syKW?-9w02{FDtGLJ4yQ{Ar+ysOY`!?QA%R&SZidpD(7LZME0g2vnpWYUlE;(}$^2wDR$^!aw zPLZ8cMD>iNTC|Coh+dgsVor`~iJh2`7m(B-I+b89XQoHMF1Yvfi1DpG2>D>3P)G|C z!xd%AV5Q{KH%pVM(a0*3H{NU$90VeojDjR#Y~|Q5-R&~vP7alY&RvGMK@+S^Zdp=1z=V#79=OR)n-qAVnF>*ii~9v$ zdg3Pr)JWaI1<}3<_hYEJ0ClP^9AR{@6`hCbxMQwq&rp~k({QI_aID5pQFtInX|K`v z?fo+22k%g!_2GpP_mx#*Rwd40d9Zw-RdOztor^{FC1vo)l{?3t5;KK3#Yf!upxnJ2N z3&KGYJeq`?in$dnk}-#o2#RlmZY*>6Ld{OzLY*qeU3pc9!ET$)D0JkJ&g;;7vEI^0 zlNv#8asgo;pyE0~#V|e`)mvINBEgFAypf#T=Z{`GdhyuhW6!r= zYL{}#<(%?hJqZUZNY2L-5)M|7a8Q>Qy&Jt!goEZ%w^MUO&$O@*PJ%H{e|NZotLBQH zQdQ=M&{uXBPexMHgNV@=Od_FF25J;Gp$Fni?Ea6o(fKlR!Nl!x&2cOon~x?lAmOsX z0zk>15tO{ipyZY_@#!t!PPpuTKJ`*+1iF|3IV~{g6rGDC=OWp;2p7L0;=>qM?CJOb zwmkMT#4@h-j!AqNf3s9ghZ z*+6L83vSI_Fu4AQ^*^Y;RzI{(T39bHte56)l;=_acdZbi-K}=QyVP7=>WF?oEcK{a z9gLt;CZOY0b;hf6D1%8rw>Q2xuIO315(q#D#-`z8xE$d1#t4&SDoLsXQ zb0RoAAyegO_A@Z(V%8AjO}g*+_nf&tfXMpkEMDQLhh0JqEM^1BkQ(E0PscNVK}hZQ&;kQe zi_v6M1zPRRB!j)Xu5vz!-GQyN0R-)uKpQ)>#;2jR)@-h)xm1X znJ+u@MQ1*9WLz3@5WfztWFM5$O60T>F}W0{0kewBxvw{_xi$df#dBKZIURVOp@1;`VY`Ji@lu<2bREx=TaZ1j4vU8s3 zoHtTj`r^44&PC1*CP>8#O*y*z8+?BHRkbeUXA3S=n5(~lb&W|%;ZZZ zibCQ2l%v4k(DeHgRBW1l$-(Bn$NL^1DJp&O_zTAeG6$NZqPcPr+z}N9J)x=*Z&uhn z>@60(#bndC5hC{~vv87O<6wp4TQ2*Si|Tn>@fEie#70J?oKYEEPY-QESb^L(atCuk zXH>0{t5%6q=%gx!mPo!WvTuv1p4gU$oe?M5eFTpNk3!I;6NEz?&LLEf&}nIB5c&&T zOh6<+0^Q>R9~e>Tm~JfGZ}%`=@^&v+c({%(>PlcjhXCjGraRoDvs0*Sc0%l9AxAeu zt6A)0sxxsVT5o`)c#gk`GIf(DAhrN7;9*xJ-uy;IFoKr=(MN!Y|1h^>=C@q-GMyk1 zl9$F#zPiPe!2C~w&e?bp5}4@?{2ZKiW7>bN_*unIt3IhhPNat1#=o@b>L#rO1BU3D z2fk=@`p_oPFmtqy;`BR_<1v#a)znm>3bp*-)Hcqh(oy5Og==I=(LjcnJqssD@P-S? z!Q|V8Q|YolIkZsnXc%ZcSq7cCM2BXRPNFF^y35PwQNwCPYiF~Uy7bRaK+Ukl9)x)|?^PB6UJ+eTgs zb$LpxS<I(IPo3-j-P3W7Oq&jPg{S>cDn6W0p5fT<<#zu*$=-j21@z=S^ zrfLV%U+Cz9`v7v-hV5KRI~gppHlz zDTfAWD6fBe7?jm?(Kr2eYF@+{*>}}{vt<5o$^5}3*VaiTYvdBh_UVL+2r*~HU=k9X zA5H&ohM2ZZO4}xO14&}qe4MutEWS(h z7UBe@CuS@f=t6??$LrtQEc)stU%l+B$HmVxKgkmx-1XDKPYQ1olG0LE5O!mh>zV;& z&~m^~#v4c{hcZHTq475yX&5FPx$dz-31;_K^+`looW)}1A8o5ofJp!F=qePzl0_+P@~ni$9zK!3i943bm(e!N0E4sE_Tb; z(J!o5zD9&=7-=w4qhD?@x-rgCjC^$kIs5cG-6(R7GOySMCQ1?!Eh|(bnH+{@?5QM^ z(+5Gr&}>`GHcGH=BvJXO^AvHZNMl;1w3J8yULv&wE@&4PpaD6Ay?<$ey}vciX8B8D zZ+}K;X@5Ih3;ENZYkjsAblEz|Uo88Jg9&=fK0b5Fp0be`I!G^iL#|L4`TofebLwzH z4}S5L6a0Fh;hlYN>>F&o)*{WWm1o!TTq&(yPOBH$37(Nw6=L;8A*~eX9R1pPJ|v5GuGh@mxa$>nZ>UMvRLTB3OGcmS}Rwr z<++k?z3f{rs^^zmZb%t`?Yy3Af3`i`01Hlkx$H03f=MBs6i&`rpzV`-(6)-LJI8UM zMjt+D?{%I`=!K9w0Xua3cbe^uiB!V21vR~?)kfOzg26Q#wjhA7H}Rhze9kbU#=+gu zRwaz4oakt3W|B{M;%plA3oU0`;F!3PD^XNAM?ELn4p*P)YC9n;qRF$E5@H;ws>*Dx zMQ0cl8g(=ZCq@}>mMV=^PR`)7LH{OUIUbxzli~m>@3W0KSBddXL;?tQhE~Cgb(WM_ zE@zexBn;FJ2Bg%ba_UmJ&~v8(M44i-UU3%?=b~Vkt~@>l)aUAvj0-jfSxBErcqWC7 zgAJhp41oq;MKO{F^W)hRh#1r#hQEp@4-*Lw5yHk^=Y^CAzB2ZRZ?6zvs9+B9W`RFp zgJC4|&9KnF$w2;EeGSF9c9}&w#=7urf8XnZg?xJS%gix!pm5^UM>{@Fz0MBv_w**- zrG zcKr^!ZNIJmbJb5U!xkwVTXcI6bNMiIn;-2?i_*N43pkAO@Z%g@!SZ__Z3hmT# zI8%$f{TmudYc^}-Wn5^nl4@a6jo<1qkq-%rvU+TzR%N>YDhMM3(eZfm^qqCAi#C8O zYiF?)z`);(I)p8hY^8+RjVOVY{*E$UL!ubI_vx9Wljy=#)P>}S>sJ(1$)3G~7JMy* zQ-r*NEAAKlFZf>(uAY0X=jEQkEkiX!h4fFV*d|wOlk&F9dE0?*@la@|{$YO2(XX~7 z;Z4*z3-JGoG9=%&YmvB>K!Im%?*Jhv@w2_m|78Mq&lM9ba5RMhXA2Jq*=g(o;{0}( zT6aNf3&KsE5>~IJ9-zX%;_jDfHQt5GMZK$Mg`q7kemYdLo?)zn!+9ZJum z?ja`puK*z<&eXmw^zT+y?!^t4H}q{ANlAZh|FiqUGsN6#eo85GZt0bZn*}q53uX+=lL}_b1+#A!EE+CYG*cK>#I!;lyTKAjFH@#Le?*@by&JvadV4XYZf9jbzv0pbh;{jLuZe7OF=?_8ge^g)J$ zuCwiQowIHletfhvxz6SK*l9<4M2{RbQE(Zc(;Tr9zP?Qw(I6@eB%0B`NGlwwT>(F~ z+3}Y1UicZoQVHN!4;B&AsdxGV<5SKz)kqsS9nzkNV|=P3TcX;pvBsx}hza892`4SZ z{7M%Q6G~+3(IkU;5Q}6}i(Fv?CH0hOmK@mlM)A&ey0w%NhHaM7mFD40b;$oT<&yZ1 zyXJooS7z3vj|cW?WEex(2=uUl@WlT{QBtvWx>hh%+OXq7V}B!o({_mOZ~4;tH-){qngSb@Kt)T>XW)p%@|rmS#$&x?!yL@C8K$ccKcor(8k0&lT`;LKjY5%F#W- z=Z=|4v?0%?~k*PtDK ze;r1V%0g14;kA7)?;B_x6r{j%Ij~&Jqmxt^hTM{8qwLuzs;8_}H-#eGnRY)E?#Naa#Mw>CDhu%wTN+K> zwbEbn2AA9&^i8V9{#~XP`lIz4rw+X1>(+=KCsc$iClcPCt}h+?Jv43fCCnRd{=Jxx zY0>s56H?cT*m`3pBvWRNPRJzlgq)8T2-hizPEFbZaB^2MB8(X3r?8gplUaPMMg>K# zA$RuRVs&;Qu-jIE;y#+J51Yv^?D3$$HzL0Y+;krk#sCts{Ys zQYI|tUs=fgub>Ic%X;WA8T*Ek!i(wONJjSaq$)W5;;hTFSj5ZV>k`D&fGAtcwq6hRw+;?2kJ!i97#zF9(-l@!2Fl?U)>*J z|850l3@mu*z|{j0_D{tYI=d3W7K-_k(Y~a!7DMn<>iSXzTi}9Y3tTX4QH_i1Gb)h2 zpIJre>U5+Zq|+lGl;*Ery*ZJ9aE$3BQ#P z<)TQHpG2#MYg`Unc-^G&a($A|X%@>O!?rzEL zA@A|zFw*daz;e}KWr3M>*4|lYVB#hA=tN5Td2GZhozMY*Hj8^DzL@?-d#^XKe-7TL z??LE(Yl@R#siC}wo@-A>zN(Xe_&HiWxpGm;7<{lgcyo z14a?eA>7M+kR%;#Yi~Ny2+s`yBm9Y2BQl8}3ZsA_U~(&~AmAOCYi)#pNy7o!3GU?J z!f%~_`g~~KQ@wq?p`)Rr2>Bc83@3y-FIPcYQhH@yFwj>!mXPjRK^AS!IBq)=lFDd1 z-+Zy)aseUGvhe9!xrLX{N766$TW0z-%f^Q%k+0weB_iWH^`M6kTp_N5=snpUi6N@ zXV?162ZMFNx{<8BaK`106!ADMRQK$f;F`g*@X^SAsc4Q^G-o6wBh)&aGF42OI=Co& zHqs^)&lQX3jx1QJ{4njEs+6r0gm^WPCec?Z`6^{!B`#>g1cMzlq1{py8N}%FqIXSK zyd%abdLOn&j{ulnpIcjDyPlt2v)pmL+DF&Roi(f7*H=4m{l49f>-Q6C7U0JRi}Gp< z93Q55as6R|v$n|nVG$MjaGIU2OWAcr@`h^1hx6udsB(N%<-#>%s~Hv>(m5cs|HX17 zW?c`xc{msjIz(thp9f7EYanZ& z>8;$svcc2uR&W}=&&D~2@1caDkwkN{M$*Q8@{Oc;Xi)@Z#GkutuVb@>hAN8Tgn__R z-bEP?TDAXaYJU-mp#6IX8V0AmwRf=j+PrsLuXPR8ymw9t)XRZ-AhSjP$LIw)ZX5QN(_y>FTE`^pi|LgdYg3z z|F*7!_dt@F{#N~9!?kJe?!DGLH19oym{S{0qS3Ff;fKa;_%phOAL1~5ZQ+ppy(L4n zH_|_>mjYYmz*e>4kC+?oLl9eabGAn!7!(!z-l?LT5aTUb0hKCy~hbEl+xR*oBXV9upb&+ zc+LLql54d?>F?DKHQbo?;a(}QO%7~R8{Tei_&x4js^7Y)|DKwv^zQC~g@g9DmJHTj zOMe#-xl#_SR2zBfJ~xu;w{B!V8YvtEe&Fc;vHRQ@s^7XXzoY9h!%UU}>*c`uKBbYg ztu{;=JjUU1DK5sF!>x8&N}Fx^ecH?R2W`KL9UNOmF`ub+>n8p#-t|Q(UW57E$nm2X z*hp*8(7K^@?>&Ye{8SrDBORy+LL0}7&UxM-^tdth$p zlt1xHuNe}OEW(ADt4@I(yo;qP@_oS{_A8?X@j0yJK|B$ zsJ?C=^&AyCPBQNZ7%?4zEc`QmeonpjIn9#Mghg{d2cXzS?ejjTN0|o9=VV&*Ik7Jg z_aeEmvF#)?SZ-vM^NqVDfqj|4?m8X?W;-zGyWt(`6$87az-~FP`(~hVIM6sUr6iJm zr9RRyFzxEzf#$(^Z?)=Y&8>x_!r}UBWmY$)TiqzV`x|#s z63bWrqYa5VOQQ>mpc0(x)sTG$ReLNb{J%;yzs5D~xU4p;Wn)@u1g7#{(v{tczK$W$(U3y*mRB zD!rRB^rRR7eZ5x>?7bN{G8{M}HXjq)j?2xDN`Vt{;Dq|EgyO!zZ>87Aek;qh{MMK0 zTWSBtzg670PpscB1`bGp19ITN%|P35piMm9E_R%fkDrzTf*cUkuO*~n_*#vGIf^^? zYGjRTv2iWOyn~rNn|IWh=(jWFGZ%cFL{ezE?57&s^e4$6UpHv^9j z2ObqqoDxq9@`+CI%z3fRc%|PpLpjA9} zLOj_nAL|fLpApZVlTSY;19gV6>y} zv%S51@PxSisJN|FoOw)|c}$*p?B>iThi5)%Nv5ec&JItRJEJ}R~zlMlCvk9LTs zPRox9V%KBh`EI%E@iCk23H!PP{8^t+oA8hHYeT{vo2|T#ejrtQG#xK6^e90N>(MS; zd>uV%mZrc>3hzT|TD(3~yN}(s?7r_&_mM>X%XFU<=#c|GY9A5P$IwSkWPE+}F1|g;OoCpcANp z(ca*`m}-%y_6xgj*)QKWK!tbc@u8Dqpg{^W$bp8Nfrp0!4~vc13be?LM<*f`$eQSz zfr=+-sioIP`$7GBmTUR-KcKIli3i!7@L~^Cw^t18lLGtXz`mP-qr(9p6p+Rz<<@p7 z&>;spRIr$0{@8DbKxCgzjfsA`fk0%pEWiH`>HF*1_d~^Cg}Av<-1LZ8*(6mq$(2nv zE6)s9f-3A5AMcUR_5ydV1@6S34G9cuu1%;X6k4^BP$*KhZ>F02=4(R_tT*WO(cVx2 zf#q6u#JkiHvsg!fJLVPZ_lk9TQu)|$0K4InVta?&c1jAImIJ5NuO*?i0qnm?NT9|< zzuf={?3QH*{1J5k=|(Cup?9c5x40f24jdMbV6)IBA33h=6pdS^>E?c*y$M?s>b@q1 z9CiUZRvUil*w*-^V@QunN+#=Ace-5#Sa;rWpY!RS^F?cltoyv~X03JH5@i$$vt_T7n`Fla(*!S}a3l zL#IEixUo>&vGbE9Qu!{qe3#nvzd_0S*}qi3bz^^`>)&>R`bv47TwbR(^7H%LNUGnu zkwa*t@C;2eCYBY=jk&LbO>eVq+I1RiMa#<2e?wh2YCb$Cl|LYtKhUQ%{0no#9mt^n zUt}RMLn)K7SK$UG2|a1ui1(=xUK9Z$d3120SiV$!BRLE=0GAV`*c)kSHos9ndCk0W zReOhOv~J0V)Dqe^pe4sR%S0+)B9|{w8$`~24Gq%P_Ira(sDA6_eMHU6Gc@m-^V-h$ z+*0{kxqPkK$nyK#NUGnuksqUxD#|-Pm^Ik+Ztk_RYp36#@PPcFc2$y61F!NP6y7jQ^Vi1MI+hjIB97 z%q+*{@-C8rf%>E`pFlSIr!>$Fs0VP^p;vpn;k>c)6Sw8^XL$pRq6%UZRcPztEOY;B zti6x%-tnf^c>Rxix}F_(G+eq~)hQmJR};s5ZX7{s3}Y`T{%9~^WC;yJl%1C#P>)P7 zEVOhu7*!qtwteWb%XeLrr{w!dxq(8j}Z;kZ#{>9j_(vMQW3Ud zk=v;I*%+$dx-oxFovvWLNA>!iQu%the0`tNNOI$2Xe3Fc8A5sEt^j&m;B)AJR!3<8 zXr1FeXASJm7!E04FICC#sz%A2*WYO;0YK; z$EkwVmnHS6M(fxAC3PSt_1<2_cMd#IOrO%A>G!-rRHJo+MyWxW_-M@9nJc)Gvoy0- zo>{B5sNCElJaPYK9=*-Fwf}`$TViajVG)#O?vZEiQJX&VYi&Bc&ARD-MNKbeO@Dih z-g4kZ1H8C?vR9h9Tb{XFZTal4wdM3S>z3c5mX|7>zKYvv@Qs?dqe0xgN8W+P?~`Zl zQyag~+<4k$u{E(0cP5YWzF8uBT!d>)4vtUMdvq(gjxETDdMpeEJvR$7k}b=Omee?E zK;G2n6Cm%urg40RL*Qx(0=u){jo`0MmviAY^7NI8TW~7bb#d9{W#QA8;BXM$%TXZc zjvT&+H|}^7XC*>`a#o@WEX&NmqV33jfu>F#SjHW$an{FipBsmO8uvNty_<6qdpC{n zV!9j{T+%{#Bt~8A9y&S$I7Y!d0b@*18hwm#dpj4wZGWsQbr?P-5XjGcH zUY@BD{xGO#2<;E@78iuC5xA)VXSbFzMI}gY^4~P#vJiPN^ zap%KB%{S(K*gDiIHXoHLTjk1DwFeIWhV}rpYl0s5@6-dt<^+LSxm-^;eY)?Uc<2#n zUz5DA3913Z`&z_(EebVtW3Tw=NvX13u54HP;8AlQ+~a)*)o(p1zaUWN?1Z-spe$9^ z%a!$NBRkBE{L1K*YP4?FKT@+4bgICYRJl^FT&Xtbthqt=xYwwD>*oCr8hoYK4B*fG z52%goHaAiuIRE9YXb2<0`OR__$E7c<)eJo`TBFG^`+ef+a5d3a=t|>83d}SjL7?uO zU{?N58kjCNE8k8YDJhHWyz17Q`}28vYi9L8*XzsPS~ht4ja37yB2Fq6abIh-x^dX@ z#+@WrRS_tUsv>pJf6F}Rzai@ywQGXj``_q2;WcfAe%AaY8V|7#Jv@05*a*Jk0?;@@ ziAit<82}NLie;P{Kf&kzGXcvw4lD-T$5-r64>dyRO*+&fA8LVW$MB&x5$Dd`2*x7s z+$ZAfI4xBQa;0Vt@ojU5X+ux`625GQ8RxsX8{+WI7;n@rP;0DF*uT)nSMZPb>1D;{ zEp+8Rxl-FgKX3lRdyICee(N^>E5YZR8hrk~xiMOI3wPDs<3i*(TQoBZQ>7rOT@!#F zIqTD?2Zg=G8AhM(KO{cXB<(*e?>`KM%i;Y;#r;PWQOb>0@kF~+*&$bU^eHstOXfcK z$_q2qXgvgWYPhnks9dIqGAq}~mFv_N{mDIV5!GnjA}3m;k_yT!mMT}vQJt6T_q;(= zqjiH^XpnGCgVGPouh+0>^Ibuy5sMm;0)FX)hA~_DSQ(18)IuGB8fg7Bi8SEz8J_r5 z9q^%rH|!rSxlxN4bDz|M+!qfVly@HzABGZKv;1(2RC!dcJldx~=*Q;ozsD$p>bGvb zo0?BrV??H}L!UZY3}@XQ@sE+~XqM1RXn4r*#H)q{);YItB)3O3LC- z&6)rMC({>lmDacY+>ra{3vP7%blE4%#J&4|w(7lkXx&a9 zb-uE_Q#xO&Tq9SmQ5!UR&l^NFS~n;K4HAB=;p|uL`Rl1h>(~2r{ZXyB%9>Fl&!|!R z;|+6zw0U+v#LV&B*1V@o)Y%`o5wg-nrV?2%{eQJelfbJOoJBBT1P8=FRrRq+3e z)!bVeC-0>hJLDOfIQ;wOR(|CfKs8#oE1lY<&{1l;q#5<{42|XThvpXD<9?(1t=pHO z?>ECBOEb2~GqeTZznWW#=Qu7Da54EU&$!FMm!QF^T@$PTIrNE3863m9L+4EE(;d5j zC#4j_wt&5U6CB$)|$XYfU%bc>1aT>*&+@;ieMyv+_pjzJ`N~L&YP9aiV!U1<@Lrk0{gq0ki{#QpeF{K&(8)(og?8Lm zf`;B^-PjUptfDukG*&OvlS=F5Qf*mIH8(t21>TQwG5G~=JQO!B8nc%De_2i8#28Is zn5E-0^}2W(!+zNeVGbT8RmhxuMkCVvxcZLeDoIzM9os1O)%4hp{${% z4|Ao`O>*fbwc%M`Ys2Yn)(sD!;et#>n2bKh+_ZbVY*78yjVUM4;Zn9&4816ou9ZvI z_VGp@0c>dpp5QA9S!Ea}V;6GNgVu3=yb2ujriO>Ks0MTNu|b*>49^nkWQW-)QUdsc*8`SlDdp1?50AEQAjI z?mhnkgc&6RR^{liMGZ51OpzkAcqZiFMLFRAe{FAqp^p=(oz3o^1hm!|CE_0RH;V$0 z@C1uhf!JNR(nSFPva3bAx~q0~Hnp}aFJW%JKib}LuDwJlwY;P|X@eki2qkUpCEW?jOAzRb8ICT)E10YQvpm`g zX`~CJKQQW19_z`n%M2(2#JlWLNF8mk3%uJdc4gePO?EgCp z`j>vI_vzly>0x)C=*~mr5YfNvBgcoyqGyZb*&=(k;Nq6Y+wTdbU-0&OgWk`){{E$* zn*J4i>u>SP(7MpN{*`^Tx82F#t`yw`I9WXvk?Eqp0_WRD-a0ONmPwvvvS%4C4E2pU zovy4~p0rSAe@duX@)XLRLQy?=aFYZVLVKwRtGX^Uj()r)F7reDx^emP#pOd{l(e^=Na&4O9gS17pUdM-C7p_M=jg8c6jg11a z#$eOS6xp-{k*Kum=oNTvl#4}9yNPRNCd2a2kGdNhn>&u6RvKC!UUCjyZ9y`c*w)_J zB6P8+puz(fC2Gadwi7Lljic_C_Ooq5M?3S0KkBQkY1q)PY1@Xzx@`?Y4%JXXNq~}F zln_^uyDvXPSC3FaSWh@kNjoK{D0z&MZ&C6LC2v#m14@2E$SW4)Oeu~jqA}gCS}M1Zk{y)nq2vH1Or?lv z)i8Awru=c1ZZMfX6HPOLEt6R?At0l1nI!EcD#!R|j4#FbJ&d`+I2c#y?f@mPQNm?*-7I?ooHKkJ2kz(`?)8ceL^gnFD|T=Qa8w{8~S`>9=9D6 zT}v`t^ixax3G`D-(){#OOG>mWmRFKQceNzPbT^sqYDr!q{nU~)?TY24X|=HWa@=-= z)6|lTRC~&pO-o7>?Fb#EC23x&SxXAEE0$L~|bKdtl6FOvIUk{F>GeKN&ur)ZJ7G{b3MLak8}pUYm00=g9ah|koLGB5SKmJ~SY+qA@&U|&Um z$dfys414jI&5+!w%&=Ebo-Vml>9fzHrs|U^#rAv}4kcM)xC7CqbS~4S*eridnn|^9ZhKFj_lB^gQHgt9(0i2ek<@nV&)fVN8k&?Rx<$x^%h6zL=V?Bv}soOago*L4TIhrz=UR z1~m+Rd>V2?cVykk$hRZLoH1FPV&8`s>e3<@ozWYVBsrOeSWEJ>E0&k%r@LA*!)HhM zBQ2SdK#;5@p6T`lV>T_>Y)`Z2(ZDN7St`vdEh$Z+pIVaRqWPpHe!m@|owTIfLsLjg z&`T!tuoWNav}>u)Yu}635c^-QqRj5nuWF^s0W0I3bd0JAINi$nb?#yt~ z#~Bk}24PJtsdU*_(03_`Uqj{$t>>lEcWFs!7M0VIxknRx3Add|Ji6zYi+*B_bR~;< z^*G1eEW=}SrHFYoILDG$Ml#E&6Z7iEyez}VGPa6&TgOsZhM(0jPt2P)mdY~HY%af; zw;JbII?Kqgxw6E(Z8*m=Sw@!46&6O$Ut;ac*&oT;Zt{gFM zBhIlxmN6xoF_mQ$*<9I5rNu0x#OBIV9+}26O4%c;#Jp8w(^*Ej&6S23oWGhU6)e-n z(uM4ni*8Y}h-HE#bY+NnCvc9{*jd&(WZ|^}&aw483o943wHN2u2A);Nv%18*uCaQa z1)`FA>-}@2+v~gZ{k@XXQ@dYILD6gtY&0k?%1Ymq?b_I!fzbK z4Se@$oMWv#>lm`oJM1Idc-9GI0dF}A(R4~q@@(G4JbesBGR6E_oMY$tZII9|#2nv+ zbL?@R)q|{TF~1JySTE0dLiga4JZo(NEA@bw|G-#H0v{h_Wr+DpagMF$Ss+YZsbc;T zoMZJo3uG!~t;IREiD!XmMK9*B!#TEvXMu!uWHxIiB?xvhu~EeK^O? z^Q>-UVbx14rj-!M<2-w#19J~Ehq5Wz&3$Qu@;_nls~vqEL=I( z%CnB~tPNt}hOsuDbsSlkU9KrbJb9F7>$~PA+kRJczp z+&A_(%evD;rKCdEs9v7+1hNXG!Va;pW9&(uwbqF~lnU30h3m#@oYa4J>X3y8SBscR z^*n2%E^8Cd+RPt3Di$6c+rqQ9BCAj;+%6VwAKS*Wwj(P?DqJfTt{r=TXYD{18nI0* z+%~q8XFZ6lY^ktGENmLv#j_fal`9n<5(^KF?dDl~c&RmF;hM3%JZm4a)av*1tOKmn z)EaSW&DcSfHKyy%JBM&PPnx<%oVsW1A^ya}$SRbk?hvQ$7;EHNkMOK|accco6VE!# zAKWHR-8OcFXB|gYx>U%z;8C7+0$CYSAshCSJgXg9>Ns@ptW)&h9bmdG4BsI=&2I?0 zvYkAu3t4JMoZ(q#c_|JOJgbLll(H9z*^9<{dDas=t6t2mAA6E#t#x6V-mxX*fFz=% zhON(c>X4l&Wp5I*H;vWvtc|*?O+0He&sr;HuN~XM7k1XMeV#iFE^V{Iwk_p0r|&}d fup?h|