From c5cdc4712af332f69d3f3ca2ecac43f40959de2b Mon Sep 17 00:00:00 2001 From: Benjin Dubishar Date: Fri, 21 Apr 2023 11:46:11 -0700 Subject: [PATCH] Adding move and exclude folder to SqlProjectService (#2027) * Adding move and exclude folder * Fixing cross-plat path bug in test --- Packages.props | 2 +- ...Server.DacFx.Projects.162.0.28-alpha.nupkg | Bin 59838 -> 0 bytes ...Server.DacFx.Projects.162.0.32-alpha.nupkg | Bin 0 -> 59808 bytes .../Contracts/Folders/ExcludeFolder.cs | 18 +++++++ .../Contracts/Folders/MoveFolder.cs | 31 ++++++++++++ .../SqlProjects/SqlProjectsService.cs | 12 +++++ .../SqlProjects/SqlProjectsServiceTests.cs | 44 ++++++++++++++++-- 7 files changed, 102 insertions(+), 5 deletions(-) delete mode 100644 bin/nuget/Microsoft.SqlServer.DacFx.Projects.162.0.28-alpha.nupkg create mode 100644 bin/nuget/Microsoft.SqlServer.DacFx.Projects.162.0.32-alpha.nupkg create mode 100644 src/Microsoft.SqlTools.ServiceLayer/SqlProjects/Contracts/Folders/ExcludeFolder.cs create mode 100644 src/Microsoft.SqlTools.ServiceLayer/SqlProjects/Contracts/Folders/MoveFolder.cs diff --git a/Packages.props b/Packages.props index 3017a447..2399365b 100644 --- a/Packages.props +++ b/Packages.props @@ -23,7 +23,7 @@ - + diff --git a/bin/nuget/Microsoft.SqlServer.DacFx.Projects.162.0.28-alpha.nupkg b/bin/nuget/Microsoft.SqlServer.DacFx.Projects.162.0.28-alpha.nupkg deleted file mode 100644 index 32b039ccf0249f5a9f12eaf6e676b93f3f68c829..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 59838 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

(`*Wpb`388k(zL|L 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 diff --git a/bin/nuget/Microsoft.SqlServer.DacFx.Projects.162.0.32-alpha.nupkg b/bin/nuget/Microsoft.SqlServer.DacFx.Projects.162.0.32-alpha.nupkg new file mode 100644 index 0000000000000000000000000000000000000000..bea4926a56593c40a7f1082a0d699300bfe08026 GIT binary patch literal 59808 zcmZ^qQ*b6s(C=ewV`t-yp4hf+^NDR|H@0otwr$(C&GVi*7hioBXR5j{=4z^|=T|-b z?@^Ejhd>7b0f7N&`<x z@e7-cjVX5}lTDB=Lhw7Z-a-p&#+wFe$j1x(B{&eFc_KD*z+=?eR|)z)d|JA|DxI8) zyfo;nkkHZ-;j6UpVeM(jISLx)E^0^mLNc(i=8O-*Ya$iPOJx_$SaBp{n*)-VaI2R# z)C@cJ$ij1Avn@c3h8Rn)-lySppuEt2ID?O@zf|6^GGd$-cos-CTQ5%ZXU!jvVKI@{ zn=~V307`c=h2^(e$>CfYB|4)VQJ1LTn2-8`i?%FNc8z<3M)N@jPeI^U)3ts^T0aN@ zgh4+Cz9yCh7TJ5lGyVFAHPx+Ka392c{XWKTgMU7XSK-yGPaaSn)6Cfv%N25~Gf~ER zbmfkmw(c8^z=qFN4j>j0w->a+|BB_XzkIf3cLcFm|+avNLrCC_7jy z107v~jsOuuV=;Gtf}@=!(Ae1tVC&*!4>Yb)+p?u$Md^kLbHl#EkSKG@h>y*eEzeZ; zbS?xFrQ2V>o2Dq%^Rn`KaM}(v+XV~5+Q-25a!atG693yO+4=nG&Aj72?DzSu?b}p? zZav3k@yNqzrU_OWL{+FalQ5iO)^KQfw^rgYHAJdU8r$mnU~=H|<&w@-*B8#MCTSSO zTx8a-VnHK~Iq%@=8)urJ!d@-b_gpP8iY=g*cLMps<2%*Ua2 z=C=G9+26rKUMH6q(8-Y#tvL)BHq%+c%P#ryr93WDcV|L;;olUp!mA$pS_>##s;^E$ z-%KFf)X>|TULE1Fap4y3yu&lz8dJ%B*3JqXDiPD_Oaf~fC_>Tjs)hteRpTF@?PR;X zm-B-7l{#c6DjC+FKBw*^^jseVea5KKf#F4;?#5)Q0_bX+CGH-(B@Rmo20t?4$CW2! zH0rf#s0Q{EJKLu|W(Tz1WgEh2i8$p+r9HS%h}=(`gqv!cj`F@ytP5Q0A*z*xLHI9V!vM=HebwW56IbHaKZ8@ zu`9!tI3sZMX|;H~U2t7;X>{m36#TZ_M6N$kK?>tEa)%hLqQG*40^DMTfU24a-=}zK@&}W#}Jq}1p@JoTd zAgwRS@I=W}J`gB|Q&cqCJbAal&DAM(c^5bZNa{4)9OmS#*MAxI^xDmL9L;uE|Q`#^3t)lb+3q*5cY0i-U-J$#)0Bep9D1oy~=;-vC zX)oHvEfrXKjjVD=o+2UXk8*|B>_bX|`>8p+lh|UWZHE>6pdCC{cI>+2M(FY3hEi^p z!0x2qGr(O<6T={T$5vhm)IqbS)-h`5P*x&k(HjOS3)yaZ#<^y!2hcX-Ae_o4*80Qy zqq?n?>$=Tu!dM2?)lbUN3`DG4ev`2hBv=m(y}T3%99Jz)bpy*gK6I@d<;xqU?w#F3 zVq{s~Kc?NCBY@^-y7m4ACkwgII9wM3Wz1wUKDERd5j%c3C=bgT)En+8IJ9BSe-3($ zT4yv+$`efag=UZ(T9*e)=If)g%{J6{Wml>(4Sn0F z;0}K|a6~z%Xw+DE;q)q?M5#c;{yDY1ut=N{y)`S+!Os!1#0^xVq3-%OP-7nYgM6*m zi68t+c4mz>LskP5cSLRfI>%#TA$2?Z-y=Qx;n^--f}0(Y&L`~uAZ8UWNo~6%ufhL6 z#ANH4kw8 z1m{uNI7c`jbPd8L%te+&i&q~%AX%gm=Cw}8umoXeY_)o8U2Lb2z*gsJh576A^75vU z#bYWuKeu;h=6K@9xCzPmB0jM}zy9&HBPkCRvEt;%&pwm?ukqM|!o=E4{<+`CcU3o) zOLwEIZ@>1|+Q$9L&*p#hsjfA*auHkD47mVnBeH(XGS{mu*7uV={pU9ECVc;L^01lu z5OwtQrcJYLqp!>DX9bMB)oVlZvs!5ya#)3w^vir>_!LY!eP8)RGvOcojMa6p+-egB z)g!Uy98ddcs-Cd3W87q^$e3|<`Nm%m}dG})_2v`uk`b1eKgz=*q*da zJmV*AtR7Z3Fz!0v4^aiLoLpg*d0W0qFpUp0SrXh-Kzcf+b$9zA8cPvYH!D+bl`d?2 zJmpK*uN)!mSl}q#@OCr(M2EM};M)*7Uffl5O~jL?Kgp#(UwxB2xC%KnmtP+)xbR12 z>vG;Mb3D9-FH{y^0!~sXY{P2~{TdWpG9V86dW!4s@SHGZ-n`B)?mJqdiMWfkYS*rV zeD&rwQjN^k05g{@mQ;SE-R3p5S6g2VM?;6YpS+9-8^<=!Z9G{n`*Ny~#Gunim{=4= z?lvjx&_}i+u--haeh2N1-!4@PPOc-Xtw(lR{hf;>7aL1}hf7j&TTru0+a2_bZtsc% z$E*r=LXAu-CpU$Ec>Nr8ec(YE+(R_))4p#}eVIja8))l26tV`b>Q1Nq7GX6m^zTf@ z7cMnfV>?D3XLEJPnh!vE*742^oF_p2>SNMm(gXK&+k3NLs@I|WR!i?%jM>trpLr9D z&T;+*b;0RU68VB3&#f1kPW#zT9}dOdvMEt=+T=0ZbXEFGlb%(@%VFYR#r>sbQhn*xkCJ7lDZMFJvck(lnMeBdq9bg& zNBif3PrA$d)&@YNEYsiKE4ky!Kc@ZpR#~|cFKQ`P4q3)+%UZkBK)so0;!=Jiw`_`0 z^0vOB#37Tlvf3oWykl8MbGDwS)+A3Zja=jV!%efoV{=^}=EI8LM(&9DcA^Ix@#I9b zGwvs*e!Wp&Mmf`b3U#=h;Z|j%^irhC_jZ;9Kf!hL>@~8)p8j^~V2G?l(#E+jWi!KZ zqX(c>aVk^vaJg<@&QRrUP;sOE!qTL>`<~jFi11IK*`T>mCFI%bd_&!+2)0_nUrE@; z-I3MHAZqxu%r5s*{d{(cfBBI+@_CD57HpeiR5~pPc-r$kLR_cD7&3e5xv@*5TYoqR zve<3w^_yhMAd))S4mX0vWJk!Z_61yIqNaoVZ(1FYbK&@)f`CBN{J-MT+QJxU>jVTi zyE|8DP1ur3y6Q^*{U&Be6@@jZtH@cX_BS+9q*86CiWgRT(!lAP{GFydCgUnrtdg#3 zH{xf|3x!}e3Zt~mH;XyE6S$2(O_NF0 zgljXa%oV*ebSV~`Jz0MWc10xHE#Awvawts*Ky|@x2YXi>&n;yf33VZjEVv0jy$7^w ziX_l@ER`-z!H5;uH$T#hOARzE(1%dYnbaW+8@*MKiT9WAUINcO`^*w?6Va;e`e2IiZ# zS6&;AZxJ3((9j&8LpYp7HE`txX4a;_I&cea6)mZ02AtHkj8BT0@u16>{S8O7);_Mi zKi4CGHG-DXUNZvbV&kQp!GSxtQyVks_Fuz8lBJnF>zt)#2(77z>1zvPkV#5m_fx-s z*NN+^Rd<}2YNq=QzN<1SFb40F9@0#$CsM@R+2~?&Pd8r8gWo~l5NA@s>1|DXZxOP% zH!USmUpoRX+~L2-Qe`%b?5&DHA5BzhQxPfmlpy)fbNnOstKl?IOX#0{+l8)acTqY6SA8| zwLp>wbZDGzxErcmp{Ry1Bg~ntUsK0@NAXTTpU;e*{KeBW2TbNF<(HmWTA^3Tzp2u~ z(p1}=W4UN-Oqy@untFtz1%WrHq%d(Uj#Ta~U`d->=5dWjwKAIXoSFJuE==i04dGoy z<33gf{yCf5b0p3u3wlCaL0Qa^fk@4INuprm`PNfO9CrUJd&Wi=xMF)2cv{^IRJ3aj zx#i}Lnvn-PMI@BmSxDk@w#(J7VH!wTM?Apx^nrg?gLKmt9!shU?@|S3oy<}-zk0gY zW6PT5rR%YIyC0Uv)`6A_XVcXe)>NWe>u>K%kkOxn1KZc;Pwen>Vha~EOr{>Q)(i1v z2XEl4ccB&(U&>B}Tp_MPqo9~>0aJq?OU(IZ6?yBO_RJ2S4=Mg59r>RyBhyC_4=HQ-)J?X43sgBFap>2H0?0|q_BbbEtOtlH4tS29Lt1%cJbH0!TGA{ zNxuJtZ1+JgzX0-GUT=N}5Qg^6 zeXXaD;2l;$5KNKv_-N@%EbRl`pmpg^DM-4DvkQ55PdYe3`m4WrWO}>~SDq^7{H7_T%=a zpCAgNb{_&TROvEWBmWN5_vxv+?sNmuWmizA%PCUR2yaYZ5FaS6#?4B0kmLaaxBD&( z@1QhQLp7&wmNqi=^LOIMW-cy=k)r(NP0C0_%*?x!*q9pvVLEwvU?pmGMedT6MV={ zXv3^t68p?z#5YuV^-bNQZ;!m+*Ey7zbPgxnTfA_V3+u#64h zSH0Z#*GrtY?uB3rrfbFCE|iMdBd%BJ_%B2>O!#lB97lf>z%?6e2OQzd*z^3IX99Jy z+DS8|=g0|QVkQF1&ENq~Ie*oo%auLhLOE4$$YK1Biv99__;TCvgI)Txbw};akv)-S zMaG)&U@;=;xdm-)PKqUqr9U@3ln&3T+hyyEH=iNLiQV!R5>$?hsqCbiDxUV{Ky~5O z90EDrKE`@4)@+^RAsk5ZO^fn~^<5CLvSM8!3{xy$}y~7!~=SQ#R zxAm`G)@Hp-+HY|n>#IM?8E4>S6x-G`A166_vgl(CgqGeK43m6{qFc*d#uU+G{z&2z zJt!DL`7^Z9 zx^!CZ$I{)AIe__=B}OWVA_}cKq6I2j4EBPzfxYGqLef+1bZ}#5$VoN~}Up!rXUtKRW#I?Vg(4p~>7gP)*|V=ys4@NiRm26=_=%&43L_EKf^Ll6rxWx;(<1vE$e5 z8%mjR&M1Ky*Qakni8GZUTbaK&*Gd>6%bDB?QE9vP2^(-J2rSoGBli7A^Is(^@T;*r zj?mv4dJ9EvpwJna^pcrCI)61X!9O?jY~zG4E0HefKGx(FdwG$a_hT?k&TYB{=SNLq ze7}laTbt`ua0Wj*G!?sD+&-~Eg~C--FssHz3l6pb!D&WE4WYMVjkdE&tfz z&NmY#al>4S^URq#ao0joqm9qPEs&^WnMhPx`U^5Z=caLM-zz9Beu06b$Wf8-DD!^(q0yuYmz;6Md@;tHh&lAjPs)8ci#rAkL*_X|{OXhXpz_=7s_CX3oPRN0l zo;i+@TWhV@OMFH=j2^g{Mwgk(myq!9_f(fW7gek=wdNW*!Vg_E(M34}K!-GGnmrOU zh*t%UbKlR&vKgi=*9yPh-*!D1fWervF|4%A2)NFji4$PN@^)%oh) zN^Z)IWtHqSY7qV`ydn&%R8uNpTkHR>c0l=^6Tn^6-9rL*f@8I2q-e^NhJBR1k1WLuE^QzkZZSJhu;0yPp)|ARnM)h;)_JmP8Kp+ae+upoc7jAIIr}F6d1>v7mV$RIjsZI+FbMn|A{SLU!DiTi1>-?=HEr z^Kz0ku}XFO@^fv}RMdMIB6{RMS-QE$hM33u;yGXT1=jt0e`oc&)r!6Zy3ID_0i`HL zqOd99{ltUjKCu#ll5Symh=4gCX|>p!261Z%aKuHZd;y3C!8U_HX>YLFcvpWrq?u0M zjUd(DvDt~Ny{IsIw+=-xGCLo@S-80G_O|vJWHG1z>ep_q$v@HtZSk!nRFHJ7N+2i- z!gTxTxz7l_L6H!c7zHGk^PIk>HTBuoIE$CWb(&;HJ~vyQ$8VJAgL_g!39X-~G~~#m z30m<;62+{ly0ThC)Aql$%ZyFOTvKA?O%{JC5Z@@3So5}A{aVI#70r}1m{d40AFJX= zXj*k9UBaGCBu#T8b#1Ax0x${U@{$!ODN|@G9Uje^-LGque9^454sR=aII&FLyk)dk z2NH9VojY3!y<@ULpuZ`6 z`4lH<vMKFB!BE7!-&N9uSm{ej6inF?wPtwB)q{>0wc$h-UuYp-u@R%eH^HRa zilTdDhZDUmu{o)>67MV2l+c|nS>at$C^m0XxU?0Zdw_%>@awh2?y+v^OjCS|Klypy z*o(j#FkKsSUaOYrD?zc`mbth{(zJQ~z*}zUbI%=KfTZQf5$eEhP7NaUz?c0T=HNUQ z!@`akY?(u|TSLBk3vMZz>tI3i^bG25hq|6+LoL>6P~qmXtKRg~UHLsA^xXA8td+eTdXgvaZYJ zRDd#^#;2TXTl2GX>k9RzSVA0OWU$D|78CL@CpY5pdyD07TwlNok)Ek^Fz@47iN;87 z+et}>yfKLv%`mQFvR1~lW5D>lCdhew-+npY-;T5$G)5@sLPm>(SZ<=hs6q$+4ft*L z^oI7#)a>{ol=S}4Qvr8iA20Lu#=k}o(ypQlO24d0!H8a?8|Osyt+|D%I`-_ARp(lp zTC5i$czf5HoT`>&h`n6OHH97zOg<1e-y+)^Sj(y!m(Q?c`y^ikYN=Pz9vIQiUr zNcXA-QIOOemAChXXJAh=hoAzgk`~$D6fq~>^@9>FTCH*ffh!F~d&o?&v65ex@tP@t z#l&?8UBa?jLY9*DF)!nYW~$mkvd|yCYlA)EFK5EK8*TqeDEad#FOfVC7Yt&madEGX z4vUe%<2}s%>las*ld5*_hHmFz(h<5|22=zknt|b*4qjIO4H}cJsE^AG&FL=ePo^CniT)x62eMmD@`a03550$21 zusa>J3&TOhip!B!(U-$eKd?0` z%zVmxQguo)(p%9s(aunbI_x#ave=e?mG6PL4;L?X5FD`TclU>7x~o7Y!a1(L;gMMD z6*+6*Ke5r(N27P1*zZkeLF?_hB5jCjj6lj~E(R%cfs}siIcfXbot`C@r?36p0P?jr{h)*lfDb0j?eLG8p&PYyBs$rgq_O$b=R?HczHm%z9 zt&up|{}nd_bL5E0kftmm=0NDHQ?AW7IVp&KXzHexrW3b#%Soq0qyD-_ z?YwVce>f!(a-UAOSFfV#_(y_+T3j!~AReLcnYHPAC2gP5(Cwi`xH%M+tqohr%OQELPR*ncuO)R7j5so(hc(+kILVq!w;hzCLD!TdP#viSGu|>2s4AFWKIpI}%=4Iv9pu zU!cpUUXQgZin{!0HJCP55)~5D{aNaWNYi$Ej%ANq*KmX#h+^(ao)v8FzOKHm4xluE zSu~`2pX$3GTm=xwb=Il|b5aD>GhD43PwF^faW_QO(wFt$5N9=&{Jk4rC+U#YTos~1z(3cb4miIJ zV0o!RFLPzC_s_bqQ?xWg$0J^%VLsfQ9;k?oHc!oR!4S+NKeKo5WZT^|teGAMg&cG8 zWC@@X?RMD&Cy&b`3;%w=Jy!?xxfCBR+T>TGRpW5rr6d7r5H$kyGRM= z>&B)EvqWT6QbjmYTy%Q(o`IOAv$!(TjsdK4NhRmszb6c*Z4&jW%t(&G*KAXg%8jl0 zXHG0D!YL*PDsZf@4utiLBAP`iUiWjPg2$vH z!zCMU%Tygxy<992{Z9h&{HMWRr*3_eCxL*3YJ-B%|CfN)7Dn{8KxZ}p1O5L;LjE5C z*~HqqvkTT+Mf9FS?`wN9gA}@Ll(TKL&)75`1qLQm2Ufh55fs#cm`sp_7@S#f2qh4* zMwcEP10!hy99d`X$pixeS!d;g52drlg;zsYcTivT$?IX8%+ReT=jY_%*{M?dbu<&@=}o9-W|IhP#%Q)oj|*5+35O<1(n0GJwc8gmPp(lj;oT9(B{o$T0MIyMs-B6tSPQhU+)S0dTAkUV+8 z%v0oDED&2stBN6KPzp>Kp#+X9i7wDeO6y-TM5_4)9hf=-m5(`3k$kWEY~xu_O4oWJ zbOlnqLq273VEeFHzjMF+Y9$}_1yx+WPsF_a5$Wyh_*w{ZuD&8&--@<%MQHyZi}y#R znr@X|;qnEL1lys1s}tJVA`+9HNpUq)f^NMIJF7ZbRvi*=q1*R&!rb#h7$k2-dIFEZ zco_8T{eD{fJi@b)cb|Ub_>v+g&J{Ey+uPgFM7cf(5Zc! z=Fz;Gqq-CjkIT5~J%mluB@=2QrHM>F(ed?(^S2nIxq)^`t~#E6$-?dkLC^E*k3f*}ym9hXZ9jk0mU1yz~O`$6OM7q+oM;umYKcNdm; zOfC$9S{RVy51YhVl4N(OSIw+)#z;0iKk1P|L?k|Ngn!Ii?CM&aWe}1Ri}lrcUHAe| zjNT)=LO*ln{356Yxlk-4^nqxi`b6gx_~)!$j$^}wN|dE?J*!~%>N4pUcD^DWS2zdL zzj_SRGDlbv1>}jAm)U5Q2LCaZ?0We0r!1C{pbg4fWjCtTt<71l>?d3J(Ue{~|DNTr zjETQiUz~McBhckgaYgB<*vow}ef1keZ8~I8S^a~NE|D%@KL#t?{JyH^Sw1O_qg*=L zda9ucx|Mx=WTMeUs5q5j5=U0U1MTTB_y0_YY}(y z8)=JsTa1P*v`*8)wLeEZq(t%|-jK43tYTLFfuf0Wsyj(m#r^WtphKF^N9PKXh4j%d3V} zYU=m3l#dheWKmxq_b~&=!qlA9Lp=zm`w5^?@*{xObF*oudK*C4LeH=b&&x1ckUcBT zKm{o0x3O(4TDzjv2=g7Vq-4q^BJ^+y7MGMBH;zh4kDP0|6zFBD&rX{Sq3X!Yrf8^S zpX^^b1>|!GRlUl<(~;ld@Fe5&B=a;5Hxe&Zlw}d$|1mpZa;=;`dX;c?*7a;W(88W9 zf;Q{wjT9Mi{=(8qm@686`mDg{iabuZ^=675j%c*jqdYmG;@O!sz%xW>|K-TTxvOIQ zJ>F_fF#@@VnOJ9oNQab0K_yZcA8Ai%HWwcUH2s-~eFN1!!Zp021cW zwdflaxMzG1Lrg16hH1|^G*~C<$$>$8@ui{mbQDXoppM<$it;pu3n}j-LEK>ph!cI# zFLm$?CMA%(ny^*95LRTmjH-J{QL?e*1860rHc&`*#nK~7GsXV`29Qe51ZF2kFg?|c zQ3B><#Lmtq7#(yXuu9*g(leJ8kYoe@8AJ=iDL>Acfcqe@B4_Dk{4!@9)WM;l=tFe^ zs>oIG29l*zt8ASL&bhKz`;umFI9c`BBAM#0l)X{12(dgJe zog|O>-6LX%B5qt1kO=>i5!n@<`lz~ymBn(a1|DLmLXlb>B+eBZ!bqddyuydD@CQ>q znhY*obZHtEQ@lkpYb1*hDSBA0|?>O<_1C&&QPa|e`F7~0_j#gfFr_p~<8=fN(O_j)}t}tMGnIZfw^CiWGm_1UUp4Hv2Hj>P#A< zr2DvoUEx<=^fL^2Uy=AyZZe@8BG>*)-ChU`M4a4ZCzN0e>4W$MY@x^N{Qx^C$!L- zxyJo)$YB=T@P~BHV)B+z(+Q)5ac(5GXd7*+O$X3ro8(hM%iB5sE3589!$Eoyb;OLTyCE*U=5faXqZcQEmd;GZsVcYntX@r~xeDV{4bl|<4!1s--zD8a^ z0ui4ne%AoX(ZsS*2SY5S0@3lg_N}}+ttmAQ;WI>|xGsZUE;9MYuG_tOIf1?!tC-%A zR``5ym}wDF*9hmi6i+6mJ)3vj%wrKzF{Ye-OBl0_v00*8HPA5SO>VgwpUf3X_^QuR2G@akpbYK}y z%Vj_IOtHG}(qco1WY@PGWdC)yj?Kds9Dl1#0i6R`#(?O<5;fyr=sRE?VDyB!u-{TU z6j9l07=goa+RBOO9%8Tv8P}akR1%n=V{W9xxqW0>#ON3U!dmdaCbMy| zfvc@wr@FJe`p&ZAAj|G_^*Bp`E7L?}`7L0aP#L_SbDXT6G`zy=+?s!%%f=L0HI$wpEKC@OSC&tYOkSMZa5x{A80j=GoUzt=@6Dudf{YP%{C1e| zdMVp{eQunW(Yv~K`?xnX$@UV0rt9d}8lIDO-W*SBlktrVXGK>mOKB25Gx?IL1C3BU zL$3bH!QaqNW$S5*_n2uRU8*)(Js0tch;lFWed!)Qi&4>MQkIk*Ph8=wbMv!S-5n-)(Rmv+R>3*q(92PG|US z_GI#OvTfw|By6PcJ7G8F2D1`@z946Bn{4pw2Q4$-`H9Gb?wU#j)?@tIKh+bQxt;87 zI(^*>QdJ8Stfv%KZDS($n`1L(X^5t@6UPc;87ynI%u`}`z(#?Xt%cF88bj8cv4%=$ z!t?vwwn50FFbycm#8EmH`4mN^A_bX+FO^)Cu^g;*uwl&yHPYt%r$akuOfj!~n_g{; zNAVA}N2CP@JF^i)4dzb*-R6AFIWhk6rfqIheQ(}8JGQf*ZqTf3v+|@)`>QQPz!Ivu zk)=%tS+>0);Z{M>zzl0y%ZzBn@oxu}; zi3I0aPX>SGTcqu!&X7txrhuG@@ZXxe%j+aX+lv!_84~Y5>mQJfZscGJKZ*k@B)3yR z867P-noVJqChkXuD7-`W!1Pc9K$p0iq@Q?7-AqO2k--K@hnu>-E_G0#9WS>>kL zf_b&_9y#N2an_B&n4$J6O5h4dY%r=ZEdXqZEe{`$M4KCyul(jQbO|a zbfS;#=KQJZl-8IXqW%CnVSWK8=$#M3Ug8X4UzI+y-*9gw1Bs+|wuuP*HV8TSX@}RP zYWPIR9f>m)m6H1w<$zC{%wM2`AwNNqZl^e*+d1uT^NV`Hw)l+-euC_p%Vf8eLqi2W zxj_%Le$)LPoj(}L|NaHzR|TM7)w$W9s?JqD@igt(u}tdaG9JW>3el4=9pZ)uLldj} zi(d@ho!qtx(JMaO)Io@yh|Du_lrQ;vWfF|E@Y7c@1_ zau*KAa?{D-3XD}_PvfOM=pO4BJIv2YxsKTD4P@T@GBb#_86@|*w6<_o3irNY)-UQ4 zPw5)l#&+oBA@lOsZ`%6F&qLaCTGfyFdCquz2UV;ofwgOt?-mlFUql$$0YDz^2maif zm=8Em(RH?6-e~L*aiSl%QCtr(d9ci6nM^vp#GRC7b$DUVafl*>;mkPzJpTozHb!q9 z56&M!#@FYCPaY-}()JdN4-@JU$e-w58tYEy;dh3nNSNvsnPEc~EQomL!steuhCvJk zG#i~b$-IoR`gqopKK^@@%4XLShNph^7+}<`D>KSLRi?6h{TuYy+h3u!?q{-BRPpkk zf1=qkVVrWN3i9uBPw~Y*o!*l`uJE6T6eSG)&dI0?g;P(x$j0|>UQ@jy=HgUNC_tl0 zPRO~P@Ne!FM)VmK^pBcG(pt`9ef%{hp?Hb2iTOh!I_*Y11E7}wofku8n>+EVXHy_a z*_{vYDd2sn$DXl+x^Mo87VD*tkv{1(efw}X$L{?oUp7TRCf+Qs&c(-EMRC>~TNHQ{ z%tx8V#z+1LnYtH`U;{O=z`_~%<)gw(+yaeT{wc*Fj;4>cQF33DfSvG3V6;to{w$Shz3;G*p>meguJ~7HbC`O< z@qmCQ?TxCrcm>-$Mb+ZEo;oVaHRulCz|_9~c3~m^ga05trF9P4UjNWOKE`vxfBLo` z;vt;0Z|nv>=(~?_7$?4;#xOqI>tRDep?$ie+uofqEzt$$Cp-SV>UePfM-dT8F>c7DzC_I0)!z+ml-_?| z0!uW!`uRsLVGlwS8c&aH4E;m6H%McI2_usj`nizuGHpkQ#mYjAq@x<8co&tax|O3B zbgb#sPoZ-)5}O?cv>4L44qc!fO4g6Q1{Lieh}%-Uzyqwin*nO>7rRBgq(d}V6bhY= zW`UYOcONE`U0yZ<#2_LhX3!t%Kk5-{x@5qjZ<@4#0K3|VLvkuwlChcHD_RaPN9Z6l@Sb-!QlJSEeG`F>% zd3|Hg=^y(1f*Zhwp0+Q~`}l@a*yB9z8LrRKRhNjz+AXP>Do#a)PI!YR*MWn70iGs7 zwZ&cF!TJ{j{abjWEm#_#;%JLb+PpLg*9@_wP<2&Fs`MX9B?lt;n~P-oOm;9yXSfWR z0SZ9oB7Cx_5`-P+lS;v-L<0{cK;5~!cS1{+{($P;NktX6{(NmUWHNzX&%42XQZykBwqRtRATx!m=`NMJwb)$SK*o5$7k)iu9<8g%hF3}e)r@#`vh+vv*?`A=6K@7DHVptlKq3fbF0k3q!bY9aPlTg?@LWBYir_-eVg1qbh?Y<^M|57lwg zu0-|jgP82hfCy!XcKA16mCl<8HZkl?yu&IP+|>okm!_OJU-84=xk=%W9IX>cCSBpP zJ|-XLqL8si3aK301-w7JnO+I)Y}*7f_GSn&ismncLy*JNaUq@?RoQ97y>2vZV3rn)JB!dQ2u={qo``6Ty>Mg)(Ded&0fFg_Atw_i!@{ zjnDHPxW3mbX69M~D~F1hzD#4Ci3t$0^!uFmvgcS|bisDa-XR81ZmW5D4is*Thym75g;Cc?fcwQ-oX4XK3KSn6tV#AHk$U2vK7#gu1(RxC1>Q4DRMkk;p^C=HB4q zAIuZD3JWN9HLP4lN5<>aJ@@z3(`e0etnO6ofPPjaf&Yl^VWGGs+ca(~tk2z#~QBdc_HjbplMq6@b>UZhPoKTzrmu>sp zP;h(2RVBAsX(i$5M>r-kE0om85`07a4q|z2TsX)ah=i`YA>##xV3#*J|4)4uypC(K zUTqef5j4&XrVE(oAcKyTMq^Ifap*#;yB=I#D!v%`SK`JySr|SW!+{m1HO8tWVNtNL z5J7Ac`PQ=NvdY|q8_)j!fzCoV z3&(61N(M%)NgO)U#JsKUWA@gg)_0IA1;e*ZhIDQzi>k|sZGz0gvw^i}*dnUvgD$H% zEM)5sLmTIT4IgK0Vi8EDnUEK!gE zdPK$CRi=BId12$yP&ui=!~zeSr-iyN{*3pY;Ex=~M_=#yP>c>C&o%$uqx|lRh%P*L(E)Kw{XwL55`zyl;Q{<8GUbTB0K?b+5H-!U znq-j63OF5Q>LE@q_ zvkc;F0>)GhiB$B9*a+sx0_^yjm49YEowicmZMe+4uNAQPSE=NJYtx?*=zAYrgp&m3 zf;?X{ija3H=rtN|!Qx+(qZP<@El7UM%>#H2;u}pK0csae^-Go zHC>iAkb!v$&UDi0(cK&&%^@5N+iQXTzgBmotFLY2jq)0wgxSiLz3lWwE%Kb^Z=a>HQG+U{f2 zr$y*SYm^)MV2YvLX7JznvdUY(e7aw4dCo8~>%qq3+9IRVpHNnM?5PgXrB<~}X|?py z)DL?X?ey<1j~G#U6QrWIBWKHcDegY9by&;nSsufkd!I9yW6nR^kPXTNkL2Sxj0iba zQipDh&r_5^m?-AC|33e5#vw#rCo{RZ|@8aw$gKTy}`6zMo ziE>DZL%gv!&-9<&rw));1-yREP^l5wmyj7Yv@4)*$^bAQ!v}Y!I)pH)#j=7QQf=yt z^rP*ON7k*wF!l(eqwK*8qHdSTV?O6~??>t9h{3mJHCc4L<8fsYbbxnq>gHh#j!|xr zgy&}j1qp`ZLyq0=0r@R(-Ldh}INdZ8sl8uNkRLH}hI5Lrj_9VZEY;lha6M+?HQ~2` zmr2M$H3uw6bwbjTzMaE3xMn7^JCY2``)r1nu;`vK5MuU|^TSASKUQtR6WFIg!T`~c z>V`*oDDtG>1lka3ys0*^HjbhIzNlz7$gS$g`*r7=Jg3BMov8g}ERG3@iX#@|ps@5G zniD9gB-Ox+UwtiwSyzc^eI7X5!r(G|0alPr=XOf;l3d#zgin3%3L6bUHa@xhE)HYl zN;{&(fO-kfF3vHf*Tv}tqeFbS9cYO}yX5>G|8H~eyB$IO?(tM9b*|Hom0azkYGm_a zt1E&>&dR%C!AJPm)f@GnjRqdn5Ty2F$6B8#E;+<3X&QLHTJ}Y`HQR1HyrZl?PKnWo zrVybd36h7Zu5l}_U(0p0Z5I>o*h|qD?@7{)JRc--40Ss`OXGH(k%*`{-c+9!$u3!{ zYGnL3@A5ppa2^v>LUYSHAAYPN9%Lcox<5Th6N_@RXM;SLMLhE%mK{Zu8(KHKloh($ zUc=8(7wh1PXFu0sb&t(!`aux|A1ef=*x21zC8$Vrk4Y?|<2^EhV+db7xV-| zICtJ*<7YfFOO5a@fzkHH$kR6>LvMmvcKP3>l^U$J6V&SWpole|T|{%7zGFiVsaPPO zW}j-LX*?Bc=-asNl-pCoy7xzq_Fd~YCLXpj!a+Get1M4WYt@)p?l^L3i}_WL+u8Re zk~p(2m|5n*+n7UPvA(Zc3cBlc_{ikvmOD7y+h+kUL+=kud&E6pfvhy8Wb&4&&v96B}`*`hO^>j~#)tNysC#ZN0udM0> z>5|F^Dev21k2N1>^#1{6K$^d}968# zx&+Ej1>-$Jc^;72L;Y%(h)VyCl-dI^cWL9vvoGM-l5*%1_<-@wb(VbRx(5}t=xgHL zd341b@9E6$gBUHW%Kiki9+YQlJZ=)KSYqHTKn+mYC<0u@di|`CSAm0 zAaIF@9)!`>+JCdk2lV{yQdZ~>LVl3Pq`zdDB%2SPEnh=Xx*o{N3S>VPVf;Lr`;l%@ zyxP!xJXzD#N?Du|=}%`cf8`03U`Gbffp4-S=t_2ElzRh7;f!opmJp~7PvPh2{EQ4f zQ=q&5@Fm&i_ReW5FE4|fwgUvGZS&`eS32l|$1O|H%XM1lkAgn1Pto*CX#kB-(o4L2 z>!T!VoqwaJy!^qv&H$8ss9xzHYAQCJp2vI7#l|YVjY25qa*BBmWu>~5{Nqv(3rKe9 zS76Sev{!AN z+mX#fTq_NKhcwQ{j-*>PxBfYG;Wa`!g?=rmHk!Ne1@1y;=c{aLzH4(TI?k?v_upeT zq>NOjvg%dt#WT!apY0=VUSpIgQUa;l;aBI7MlI*6K}ta?AT zViV@gSOMsB4Iv*Jm1gl?l< zJ(}J@f4Ky;q-5lFB7P}}Bb5$Hh3=qnbd5QVY~%P-V;p_Oee; z{SChpkdMFVG_>hl2Y)U2`$5Jwa^HeK^bo*(Ea1*QN;k(XF3h}!+Q#i?mha(OP&aXm zF#eJz{awzptIGSA59~j%awt)p&`NcoB1NkK*5lKMD{fI;d$^_T%m{I8IR{`93ND&i z2lR~$xq8v~nYHL6Fahy@6(T;SHMG#uSDco=EzUy?`$Y_-4@Rl>PW;iiANBx5kZ^|J zzY7M~r!XI%yQJUoyHNBuWaxV@3PgVgvOKkw{zfeQt++VgGi-iht9-I`8u)s@Q=-9} z440=9Y)ZSWBo$67rQ8ine<$sW3=L+dKbx;XxHrKhPFHYxGQ*!3{vnNEWg3;bApKjP z2EX$YoSa5*P=MeMX;X9!p6yNPg4}O?UdVT!=GEYscA7U4wgkO}8a&WzNk0uwszKuSxWDx! zLKD|g;G(igSi2VrIlTvSA2KA|gKhUhx{Gqlu$E^GdVDJBT*9TinENi%6QOsRw=fZ^ z3vNRTY-QaBY3ubw(3uVlJAwpHDWlpCrV!6J8o@s^T+6L1%RP|sCcKYr$q*zt1wPYX z%+cUA54EBOt(p$5;?3A2`|^o0Nuw6^FZLFu!%3M$udAS5NM(y%>-)fil8Xpl$360E zA;HW{f>W6%j4&Ji+-pWrBD~L*DM=#w6Mde|&x5i)RCZ^dM^LxV3s3XTXWcZIo<#Il z3JKoKa0_!DW;iLEU`Z~?X)Y%C0{7Gd6(4vK;VG`=8W(BaFQ3wPvR3b~4_wB%h1_?S z^!wJA0zc)D1?H6z{M>{-_vmX8J za{L>71bmJ0~pSDyV9mUSYUL#ClERar^g0txw#D?bg@lV0g>9M7AF*xB zncR!oUIDi<_9M2v90tNYY{5UElud};&sfO79%jy&EOQV%!7^uJ-T=h*a^8dh*?JHh zU`y1pUBUlUP|A-uM&`gwPz2>& ztWw@=#1xcyzK^iek&iI?s%;9a0w-gReuS+Cjj>DogslM=W2-su0&p|-Tpz;z2p*vp zCPA&2u*<>A^}VkUwgD1tc~?Oa=Y=`%8c4I{T?^?p?0U$yVYfh`tqnV%uPyI(=*QS^ zPQrFVkU43+odS131!J!|2)hRcF}4QtUWR+&B*t)$hSLdHdj0&YQ<=e-`F4w%kLy9E5p{ZDs5Q_?@lX>#)G4 z=UdRk*bwG?8y49(55Z#2E9bT!f!1hir@)8M##p_B%6$r9Q3}2E%FI%@E@M!prv2zq zy|dN~@eRqGwdPO-!EHH1G99qff3_%w4S`Q^b)S?yL8)7lP(komIl){`FX%(?!7PHC ziV056C-|=^$vhWFG=0U7bLqOI6ed@AbyqUY2oWmUo~qy!KO znAmGB!p#T^;l;RVnJP@kosV`XPbF!PLhze(s^z43f*X;i68fXgm2eJ16{eIgM*iZ` zr3hE|U5@Zs|Jev%?AL+tZU6ZQzx1y|_`ZG-*7XfaD1;l6{)p+REVCn?YMImbny7}m zlSZM2Pazbro7=T1pIetp(3wrJIiJctn=nBstEr-Qtle!HEW!gI0-ptW=v8v7>%vg017Gn6ZhjkJOo!IaG!E- zKEmmKnFO1e@@_wZyAuii$S}DVL9$-m8YP3^0Z!kMLeR=L z|EYL_UvTX|7ZJRWee6nxKeL=Cm?x7<%=Z4I5cm{4k_?zPv^xG{d zl71&r?t^;~e&M(m>1Pzp%_RCGNO3E~ztnjPQywQCmQd&4)%rJNf#46!^DELP z2qh~Wwu%IVeuX68p%CSJB@^KwH8TsNWE|rf`?CgL7Zo98n_hg3fzbRn~Qm#lQ%F(_vvt(H+^*iM6tu|(n z&8aQ2)NkHthJ7>`S4wjl=)*H(r4grqS6yu=?OJ!lkU718;=l_t-6a(L&5mN1(4PR0 zVwWR!eoWrwj9m?@a*|Q%CIhVq?-toGo3RUFOQ4^U0~Zy``UY1#E_`sQS}ywz7)_nU-z(Knh`pVdzZKu~9y?w6BxVI*9oo7PR@ zlL^jCpu94u*R9r;!92#+v!9hgQ?wjmt&DBROf1=%RR+(+#>cRNdY$H3NQ-h-Uq z+jJ?1U!vvyoK+5S{Y-36Rwd*`v1hXeK{;dlmGgWrWSs={1~wV7A#g`OOY5Pqr=RrQ zQ+#h^4TWd?($56?*>L#AZ_4~I>lAPV*h*qV-_Nr~nmy*C8b(Dis$n$LGv`M5xZs}Uz1i=0)>wGJ!1ks)vd6&z1G^^Cn>_*g1g(Cb3_-?d^G zaIC`YhgsPR;nV)?FR(q=k=+bG^p`D)6G!1p$gY%nuFl#8i=mH!U7mGM)?ye|X=&X8 zV=67JTj2CcOY5a@cBQ3t7_O|ev|a%P11vqyhV}uLp69^D157;^W}gF@RZ_DS^q2Es zWR+EW2b@|ZHJh2#mfZn!C8v9FQUtNaDzo;L*{fhxl~wy12oADpUkjTC%Nla^b=kj% z#U~k9-z&0lZam4->>`LCVrsTM`y$92Dr+z3b$9k9P-R7^LgE|Qn_%3@W(`TWH(PYFY|)a8^OYN5*~!-ExDi&J zY>tjY*_&bUaA}vrrJp1Ayn$`%`>*Vqq4*Su9W3?aY=Mmi_G`bKoNZ7r!W>n4&JI{G z!W=8*Ik&==5t8%1zIx8>ppUdh+#S%$n4D>M!sO8sqnY+jsH&0uM=QeJFucYbapgJp zKz)t0#G=5UoO_{QoU9?yUz4*N9vdfHdo4`NxgTC1XIesYKLDSMvwHeL_=&OoURo_4 zgyZ8ZyF3W)@n#$9avp+n4eb8l+?+??LIbPMYRGvMt{89G`Z3rv-l|~_+&SK=VGrCl z-l|~_JQ|gGX3k&WnW)URoX6oso6INREt|}}@TE=WUii)?b1(c7mD!%N4_p&WnH@P# zLazyy%>9r#!76tE3MZJYy-Pd=r%y0@vqE_WZj|NRcc<^do$q#8&i!C|5@L5tP9CYx z!2<^8``#+V_86Ssc=u#K2hT=pUz_t+2-I3FdI2WX%6`95zc}XwxUkmJ>_xb;*7VOS za$bT>6D{v~30|6LYJEe_%P@VC=^;1dyaIa}TL*KJcfqT$YO-1TlZahB*_630=QRjU zF{Rvt*yJgulzVbshgJitL+nlX!xT%(+puwpCFLDhJXQMOZvUSV+cDLW`3@YLYRP;L zeA6tMhu|#6tS{N_ZmYL)bsf?CBSCK7qeV zDegmP-B00t0~?V|*p~)IJ@zU5WMI$tszU5H#@4z&@3klUQ*ck0d4EWHBj+6*nBY*gJE!^XMFXt;b%-GfNVd|GTe}{o}GVk2L&pF@1@H**B zo?HRn!FzSGSH9^(*xq`HB^D7@FjHdp1PI$aMm2zz8P_Zg(auEAub8A4kK?{!Y=p$)*INL z6Os^1nrrp+QP?q8wrF9>i*Y|I@%fR~Q_4OTt-3FG6?K=j~8`w*kWxiiwJ!f4IVYHk#U23 zig?z*QZq*Q9OAp*$@&I)$N4njm~Ub;d~R{Ifz2viBI3jyQEa|1L40jsmz6B`C5cH3 zq|A94?Y=azW`WGRzNpieA^JDSewdJXzLF#A8f0E)#uDKZiyLIQxxV9BdE)j4a~wG# zUp&m%5%Ex}fCBNYfjwPbh1iyb(t@=v%6pWtBc9jGMk4m4#KiLf$~$P}#g*3}_Qpc9 z1_6cQ5M%4$FX~ame2rFKA5k2G1!J(P7;Jb9Ruh9wW=zf#eZ=gTyakQ2_Lt#mUmp=R zFpu+UUy)dE<17}J8hJw^EjF1Y;w~F!iMZe3q@7}kc-z3fcN~RM@s*9UuQ+Pt zIUNPreZ|ZsOQtRwnk-ITv@}W16y<84E;ItAuZnW!)-KZsQyzhS@j= zi7^J}WaoX3L1LOMZ?Kqctlhh0gC6&ctrcM_Z=h8x&1#D<8OW}Y(%hKjZ` zEt$i_*+!nIqr_%g4Wq>!HqO!FPqrFHizjWIW5f$K z&N1Q*gR{x=xELcoFtCk?Rg2FJ>~-8N)rj~OtK3+T)*|!T9fWN(u+z};V@3b7BsK(X zJx)ApVB6g{_{NL(4D37i7T*N%t%2oxZu8X&#}bK6_uTE9C^DB=T2B(iORU-_iJ-xG zs@UzDBt{t6UE&enWHH^qs+6NJMXWQh-O6s?RB?@g9aHxDrinWYY^1u^H(k7Bt6_$C z%gEc~EXbZA{>2#0m;&n@vQ%R4rEEZK!cr@*PHYTWd39o2$ZA8q*cGyBs22~0WDQeb zx36A2YhW8t&za&K8|N(Xp^^83y4yEP{3~SDcba%9>7RPJJUDG@0tskbS24#9SQO?gzN-`-M__Txm3HZ=w zr5~>#SYKw+1q3Th{#Z_#drwMFlvpUs%JkzENl6Oq^mpYcq(7_)#o1jo8J$A(pR)L! zl0v!{PfRphWI}fa!K*Wg^RiOnd^ou)SmQPDYERA6fOCug;5$iH`ivsWo)S(;rn1lFQCZU5VYIP3om%QN zTG}-?R_C5uZP(VcfVA)}+(&ETy6VuKZr7n}?*C?US!01$_7wT;!^zZx9Z5agpW0}( zOTki8lBIk~OUY8Egi;fN3Tvwx+DeMOukY$5HMEZ-YDMTH7Sccd3;e%Gl1FS za!h?_YlWTu!U^aCFRT_OR{X~UA-(Q>5o^$&JVG3 zg}wIw%=we86+f|m(%hoP%q@0p?eOMIg5PA4{@Zk!CJDz<$tx^MPi5^I$~In+OmdFW zi`DRXImwY}nL9Sm@|KfQt+EzHFjU|a-ITAuey;r~ZdX6Al^$P0)~+wHB-D7Vv^`hK zA-W3VN@?5y%Wusx>s6sK%i??_hbVIsY3xtrmhR;qZ)MBe#hlW%&NQnPa-{$N5AEyP z|94LNN+c=k`VhQ|q4fOju$;a9sen~VQf@D|Ul8P5 z!3`}Cghc!;#or|`351x8ziIfZ!=DEzK1l}J?`Cnj5TO?;fzD5cG91mYmf;MBa~L)- zY+<;Z;YyaU0by_0%ITd9Uxr_b`(SPEl5$8E&*5(RZJ=GW5B%jLG5uA5D1O`@_Y=gw z7U3*-nfZl6k&sX*0;*Lwmt}5MDt(*aKG>LXGwf8#13Tb8g>=}d%*?(M;ZMF@2p44U z=G;di9_Uo0mCMREUG|Bm^)I2Gqy2WIt74yWMyf}w0=h3;&$`tE-G;WpZ5V^c1D&VE z^PSy3aj&mQ9EAKtI?WuJfl#STp&Fm7Sc3G_L`uI=v0N1MyEUyqccs@GwbO0r&u~)G z<>GCH&eOhtmB@bt^}kkp0YAheMNtxNqEZ#Nq69i!-6s+=s4U$=w!%%mhmcOUqpdJA zgLvq)`#ZM4cUa5c#Pu*U^;Pj5RKyWwUrrL1B^`+J7Sfj$?ShTm?;H88kz#IjE0hF& zz%gEjCo9E3_qtWAVHKx~`Mg!AnQ1x7 zTGlO|@0$CmGjexesfvtbB_8P3GoH_kH?w^<^Lr|r`8}1*{GQ5YJ|Eeq6bI`SvixG@ zAmpa*f_`da?)l1n@Ji}>q#XBLt?V%R@%I&XD0j28N|nyk9>DZ?aW~fTi84dbiFBp< zdg^j9kF}l0cgZ`ILlqO0d8~PmEihDFk(#dV!E~`2WS`l?o)9#6sBDnS2DzmNxc29{ zmYqsV_HOYSTw8vQdOe@(y$8DMdi6ax=)Orks0=Dh!WP|M{sdA6xL;B~=HB@jd*MCx zYxcdbd5nCFef^EPQ@N#>B)Cidjh5h%rTjJC=cr;mk1?f+HFOBN(T-=B#?Z&Gm~X*@ zf+SZ7d740PGgJw=^Crz}1idvjky9 zm2d8w_;lD%NnGsK{LGT+bS=7dz5FQPzvi=_64S8XZT`svXWtS?5bx z!}Wr!-A}zD<$R@<{ji?fwUK$6q&M;%{|<(CGu+5!>%|3$-#QN}%gcUowkX@hDM$4~8qR5bk7;R&^sz_F>y@7c-4E?k(o-{B`;_tu z-L+G>QQr**S^s@vWNx)99{JI#%DbrxT|VW?@>Ya*Wvl2icnuHKVSKR*Q0&n znEzH+u|ho?RLC+%#PGl_oU8j5?t-8~y}3`^RQ{~%AjElJbnO$>{`Xx~QXlbk@L#SL zUeU=NP;G*3J7=$=)~vq#VvT*WQjpiW7d;Mt)5J$br^TJbxCGjba}{nULa z%RJYsm*k%9*{UA%twKt9*7?c|UTtS6fyB!^Gn6KTh1`!j5pG1v73nv6?o%)CyTh}d zb-ongx6Xa)=6=t6_Nn(W9FzGr@+>T^LVvhFa|g^(E>EN}dwJp~IAd33ke@tQyj*Nl zXzXm{x2ZPrnR+XH(Ko}p8QT&>3cb;|16wo+)AXj}4sOv#pp*H7syurlJMUD!3rzRE zt-g{s*LyeXf44%j*=9jE#XA_@&9I5@jvr8H4!jg=xxl+eT8t$h;1)eEXk7oylD}Yh z#ON>d0eD`ytoVTUH6=d|BN@dV_a>%mv44Ha=sw?ieM()Byp-aW_qfO3lm0I*jmwYw zn9F|6WxwW9Lfz{f8FxgztaxHv7Spqkj&@+ltt_*ZWwx@+H#UJ8UDo^*l zGVZ7`j%t(YmHRlBSgEY@-4wS0(>vn6P{ZE4;@pq~?eT6%gOvy~VRd{W2KnpaQ=lJQ zlSpym4M^z^?;^ytB_R=pz!HSR;c|qd;6{Ws@EXDi5QqGeVQOLuMr79{y7?^{H*8}0 zTR6P~(i?{(LREZZ64iVm7Sc_;zI7;m4<%ZeJIgdG8#lBuC zuvCzS%ft)F(=NV4c&>;~NJh#t8W0{9tq4CBmm&OIY)1ICcnIOQ;xNLa!j+l`{}O#t z(LOBmn5ay3!>^nMWenyzlp7Jcm8TKLE0fa_AxU`$VVd$n??lK{oau?^al;W7DCZ+A zR-QztE8{Y-H z{1V89bLrhL?AdZigR7P z&UMVW4mn#2FJSuB47ae(+o2EqJAXS1wP{3k2qIVSSy8eDB^UH!kTcpn$wM(Zshb1g{19Q`Yo|Q0m)*f|KhyVf zsgF4Q5%Ux|xm`|57c;D8N;RizoZLF5G%}^pNuIFQ$$rRiyOa85A9LlkijxSipCh6kAEBPqc{(Ba|! z;`C@vS97|N;W~!f8SZEJ5ku9>wKJ?{*x+URaC)sb8wM9b9JLzah$7K10 z9P!km1@Ua3c;Z|iPxLLE-ofd;oIV^+wyH@W$^nMOi3ArUQeQW5dJU)dGCa%>dJ!z> zMG}g85zi=2*Cf3PHxyt5x&Ou74#c@#6{2&Y8~>(8(_h4@Evx+aBq z8aTa{;Z}w_n7)tG2RMC%(;}7SFdWUWf#F()TN&@w)6kpyqBqOrbRnllGhEP{I2$;<_JpiH4B7Lu*aA#hz?252G-c7uu$I$Xn7%cO zW~9BGKEia7&8=WKn&E=%cR>_1WE1BaOiwP@%Jd!CtQDt^F#MP)B8ST|tjS@I;`G`a zYUz5WY|SBQ`h zFT=wO!Oxrww=mqx@GwINa4Cih7;XuWeGW4m6=XWYEesC_nO??phFfI1oahH(nmAwV z7te~{M21qJ3|7ul_9RjtxSGulsz3GZ~4|7j+U+2EneZTuf_Z#jX-5$?y&uq`{ zJx_Z+@_gYr>e0MjZ-;lg_ebxXxCriQ1bBe{PlFDO;GB>M8l7olbQXs(Y67G~FUUYj zHd1^@$;16mA@qh)+yV6kG$lr_LHhri!1(ePd;t9duOPfE<6VSzq*(BxOe;Mqnc%)W zi*i*~SN_(d4-gLR^)X3fI63jlsAM}-Y;}F_wRk?{8pmW?xd};>dwJ3~2tUdt%JCAS z3}a1RFCrMvob7Q0A4wp%s_ZDjU1dM}=zCrj6tsa8VLrI%z6hagiW{$P@oxdk-i9_0&OT;KnS4%%h1{a zmLpVPCE8lRc?cD_5^b))b=U_A+=N;va4Tvd;5LK`+zw?3?|=%RdxQ#1??vqtIDmR7 z@DvO}_%xh^@EI72JkKIj;2`ch6nG9!LCRkdD)2mvMEEzL@9kdz`p*7E+?5D;iM|cP z-RW3_hhaQYjv!RvL#V~{M+g=84RpL0_)%2xZQkH9ZOrn-~03eVWZtkfBGaUP163sUr)Jg zw1aV*GrG&0!Jk$+V`#6NACPe^i8%mk;$`~$Y#c|4GW}FG{jC=_dYK2x@mB%y&>w%5 z_#1$~f%vP!-yob%2BXF&;m8>RbSsvOzL0``mI}l1cM8rTBk(s8f1~g>8h>N(SB<|K z+%t~F-#GO5@lcF?U5tL!7bfCw686Jm(qDRmSr|<0*uEs`xwu3dK(NKzxSJf57F+KjAUuGyMG%Ca7hC z@-A1-fDMjj@wTH(eBc1F0e?Bpb({`5K~&;zuv0;rg1CaXf_ND|%lH{|29ysRl}fT} zkW%D234c3bimO^_$KM}ZW#Uh+&)|D}PEbFCWX!8^4^o!6&%xhCSnf0Ulk1=Oy8_Ff zf%(@fs^@xTjAtjDomvroH9eY~Gl|skaPM1zH{M6>9p|hLEg+ohcFKr#MaQ^(t{`338@DYvk z=hw7EmbEsltZr?HM0%!5;!rG9NvTM4`}~@Q_J)NGk>xeVw&kr{*YX~>DwNGzoU%bjFK($d~a;Tw+tf)t7RCwiJN{w%B zpSGfX*$VD+u6=N{_Q7W3dbaPZ=5VAX)W!-7?x`wE(hyUU(WUh(m$9$P3}P8#C^N35 zwK+0oCG|NmMDweLQmUr8y*a$JrLDO-9EwDyw>Gq6?<}njEnU{o-m$GL{taj7<=*Y#< zUE9{u-qO&z3Q4t*+P22l6?5<;20%v#dcT$52Z2;3bt-`-%U58HXfsg?x0MaTXZl zftZ-OqP4XF{S}k7W7}3NZ4MjQ^l)=iOCwf;=@~1USJ1P*A+iJ?)PQMitt;!6HMAi* zy0IMx9|@=qwYD~!m|=)o)G>x0+i_irG*1sj+H0DZwT4#qkk7tEN}&HO4mGiu=CG`J zDJ>YB9=m)+Lu*U>N*j&Jj6SEKrQP6=4Q&q*Ru>AlH#gNaw_|!jLu9c`)lP1S@DtT1 zbDcDQ{yE`>WtC7}S3G>gkooglLyZls5z1ORfBv|ZwuaW$m6eu@Pir&$dR66rc5*vo zZCm@m0j9?euzT!)s6P%kfj=TW(jIPZSUO_Rd_rs^ z3zxg*=?yJmM5R$`TG;Xp;gv`tOAN3#P|932;J>xc;xn2s@B~djIyQjTOKieGtN8(fSq3&`$@lS_7k^t4<)g%92(UBdv-@ujLRlQ&kSKxCg~>8yWS@OL084TXUPO zz+iJ;ILX!kLaMQC?ahXHq9q3oG5Lqs`G<7jr`DLYagh9qBAVv;^8urW`Q{uBqno1hxlyiWAwQ;%n!_!PJZsd4#v^JVCXwfqzSor8=%bMGo z#-VW=+6l*;g*e+!B|>YFW`SZs#G%jgr zJ9Au1b1UZBig(YP($I#po-qu&XP+oa>BeY_1y=Ty&ttEL>RTGIhR~vRIkhiu#h}@Y z%DOSvM3$W>PujV9F$w`WZ^(31emPeFwqO|Q!!1kEtpF!sDujO1*bKE1TG^(BPg{(B zf(sRrsE07ZX_Wi6oZ~^CTsy3)KW|ribSQJV1Tpu6XpH4Jq(<>qOHAUX*2DSCN#7)Aq8hK z!e}`%D0Mh?@j>eXD-t__aQ$6K;aHSyBK_YeVn=XpG)4x_C|yaDo6l@$Txp4+jgKXs zF`ky?0A}1AyEM*EL?3uBod2|RZvUDx|}1JqXSM`jM5?6 zpxU-Yp)uHJa-gmV)4^8tiq>}Yvf4A-aH^;_GpB`{XeVK##;!HdxXv2=#7O8}3|yrr<{Z@I6q!?9u~fIf<5jsO z`T2N|78vVqa#|YUzq-dK$7Qne7TGd2*h%cOa2Euxw7OZ223XHr_26|^&SQyZ}G z&C+qEgnb>(<}+A|5;gLCgY7C2)EO#`d>}~~sty9!LRkW~bTy+ZF4L>?3yf8l42L+d zwQVj)#{wcoua}oqhX=HXmQ%p&TUNWMv4_qjxk`bbv1Mdk`s08DO3>0zyferiC3}%h zaf5+2vXHKT8-Y7dXW~_Pa@cTmM#;?(j|gSTOUdqy$u;OSFb=G=@s`0fG^(Kt$E6wd zhK(jht&yaTad5%LVG=3wLKWLGMyoW-Jd{Q(ThRj;uC8R*F}HWjUT zG1xkrqqL;+=xz#-mbRrxx&t=YX{wUEo|`d`!`u^NQ_x-Y*A%nqJXSK0Trs1xGO+^) zjE}`HDbR5VoGCn2nV zqSMh?J)0=jtGGck8fFtoqdT%Bt>W!gbif7{P5c4eMWC%M%Sy89jTs~ZPF892Aqftd z0kZ@GA+0ykNu>^(33zH87RSCKv3I2~IVnQ~gOpWP25D6bP-^%qSU5)G{|r$oN8#Ye zs2Oowfl5(Gv!k*Q(S9*21`>*jjb&;2SdCn3hGAK21;2w-{ls+V39x34BX%NRuGjuho0gXoU_Sq|;5@&$OI>d&of{Tm=!HNDdii<7B z6Vc%WFd%r2>O7Uf$OeEiNd(huf0=DB;)CL+#ZktRh=8y`XH!P9cw3^hVr(ja9HYe` zi51YhkD&shW9cB@tehZ(T`d#~WK_wuC{7NhqJ~zhS>UK@F`&B5r`BQ# zZWh^G`yR8uuEc05Q<+o5?8{`tGOg;EG$t{dro$@cmpo93sZ)o2#&Dn#po^mDyrv4GgwYPAQWh`bcHSRO6Uk z!axv-2J=*zhy<(cxbhb-krkZgW;2N4UUNQ1pI?Fj42?L$X6J^3pH>AHfD(8ebO%XW zlrGNUOfv%*xit06>wwjZZIl=0OUjM797iLNMyD$*DP~ns2fYq5YIBO&h{G9H0K0Ujhj5K6VyYalbf+3=}rgwL}oB+8?jjsc4Y|bPtIf>TkiB*}THTRXtMq{`~y49UQaU!QutK&W- zRnVX00s9`|Kn+c!B+JQ{0nuc|a>fd*=4Mm_IT;HcTA|pY;X+?`e#%ZIUMsldi<%;m%wr8j`Vmgx=X&94?PArn|sY)%?jSDG2U0pU?IdYE;< z*(~l7tK<|lsAX+FNNzA+0jV0w3~wlVlM$dMBf{pU`SptgE$|$GVV7cqlg(CZA7cX; zHf*dDtg_kB#40;tbo;+&?G*D z%>Ifccw#_Bcr!6+X60xuG?-&NB%FlID$wGd19t-{%jje=`HYMX&dD(rsHQ!&PR!p2G+2*d4-H?O3pNF&b%xU zVHUtzI&410K#VO8gb6^?1_RB3axJ73IO>QK)xO(kYjPTF4Msy1JCWfU+7b77VK!6DB2-~6!8;o%aPR<> zCVI^apvXu+-k|VcCBZiUk|JF(p0h@+P(uUEZJ>296XTdOe$fv1NMu8ro-qc%2Gbji zmMk~!2Ydx+F_c8*NGj8u($f!SYV6A;jP1aJVPDxm@bapDJ@@LDyMh!JK3w{A$& ztV);F0C9ZHwhO{8HbC}xiv=@BVqm3|s`WZ8Ny{0_n2CnsNZuP>lHsmfWLC74IV^hH z3csP+YY=lzqTYs_TQxE|FegXBWN6fY~TB9e5N5L^%g5R?c& zLU5#}AIV@9Vw({5D$SK(comlzNmw4Awi4mMybWaaY7jEgAG9`v{`1rWktKq`0L<#R zN`=glJPgRvkz)=^lo_OgS)JfCrUmPNRDVEi8zRK7WLXHrkx~dB!B|IF84kAOX`*4{ zrVMXv_KipLTQ4Mph^l*2m$*7?nmx3ObjSjKnifUr9;{XWfJ6z zc;3DU<1E4V9+2L^mxm{fi|3R|@Tm}TFGk>gp?;87Kuy#rk@Tp6JgyG{5k58WDJOX( zG@v&4X)nQlAz|l_kS9A*75OwEn8YBEa+$^%#lGYUC@z$oqDH^;U;9;Jb_ zS3$lNp;!rNAt!j~(czp1@TpJf)+CJ+nUg&7~07ZuRaS80(dc@Rw-an0S{Tq!m5_JOJNL{vuOT8 zHRCxsmd{X=7-$7D2G&GQxF-Wz=fSU@&=>P1YQk+PAtlx|fR}t}fWY-ln zdmCQDrLE&heL2udPWUMk^#|(20i~6w8^AC};8M&{$Ul={C?%h7tQnUHqbz2q296m@ zA$(#WW6nqM04-+r96cU2sh0rt@oe;Xmqgf(&9;|hW|!;9igqKPCAjzUv8j;AC)-29 zkf0Dg^9ebXHfXCO4!uG2jIg3fZ(ydRBa2FJ|2&eDkmXiYvlysxx>fJhFo1hElEH1_J*1pU1TZZvJotbrxZT>lMO`A6xB|*nzNbt zL4?YIIq(eA$+DG_5;o5fsg14k)zGMQCh7vqEkWrv^sSa2zL{1dd_4_(QBx4osf2QI zWF=K77HFv^!p9$Bp%(@Jun5G$5HlAD!*^=exN18)5JVxFAW{v44n^f7kVAzfm+C`Dz~AUEKEW6QxTyG@{B=)fQEV^0%Rx<1b#dSVHEf0 zcvy-o_>j8{g(58I>0i|0&*H@N) zQx?NJDD01O4dHM%nu4^DMCBj6O`=K&8)ZrZ1?QU_R6v>%LCH9Ji=c@W@J2XtdbNzRjSNT>^1|}p2A+y z`7VxzA&pNlU?3(0jc5QC#5Rca?${8ap2_+~fgp`O!#x@?NutS>fGGCHnh%r7=%Hg8 zY}go`ZNOOMsI4d4EXq^*MeR>z{W_)5dHkZraaQLd=4x4v3oWMBna(>}cD~&r=~}FF z2q}ep?>qTR8TE@i{y~mDKQ*gW_D75lZ0hv4b~&5|qf63KgJK@r;b0w(A)O76Sur^s zFtVkITfahBtq!a2>DInlsjI&ZdV5Y*zqL{wTAxYPE+SWqyRubDx5kF4Mg$B^tpd_T z#(MPD>-vMIjulvbj7U!QH!Rogs)Xoina44<|<=n zBJmIxn26FWu4vj((WgaBb{1o6x-wdB<-f=3K8oqwe!w0#4PR9KE)KWUow(_!vB%(1 z{q5bmn>7|8_&NY!oS`PsX_=WTbKV4e7nq5*WmQ=#vR69=CNRJ!bQHT`+ zZ4zEI`Y?}zZV{rBW0k2%LvumXtWl|9*>GcOR%k!K|%n{jD^?(YP8t=LrkFJ{Rl+@%Jj5SKsnZU_&YfzYB^P* zDr!j7t>s`a9c8YLl@>hL_rCsENjL{^g1h)R6h-S2Farg=?fZ+7Ey7qLgnLr_#*Lp@#R1dWUGrtaFF(#Stz2ldA$&f7!=P9$ZuXt5I% z9#-}CMw7f%BI^=^_=0z}?BDiBhQ+!4h`BR3NGtzv;8SkHlJn#g^7?oz4oad(QgY0r zvmbbp1VBVY5pNL9whHi|XIz02m%?`eBBA0_1#)->6Iydx!lz6I3PI(o&==8DQ*Q@x z4=u?J7|6*}#>8P9?RRg!BelY#0ST`?5w8TEc5~t}BSfa7$lfA@QTg=uEl4E7kl%MzQ?MbqU zoKYpSiTDICHxkc_kY@ zpngJz4`Xq1)sh9hP?(sI(~1b_$tU4zU5V_XlI%uF4^jjpOn;x243R{FaR3It@$^#f zqln~~dQis3dh~^IDew?Z^iQQ9g~N8^DrabtVXbFdQs)vfAdG^p7z(WlbI*~>cn~+o zhl!7&al!?R<(LLr=)t@k2y-VS#Y0Q5&y0)b_(1b~_Zrg^kkV%Ik~#w*0=`-O-bpg_ zE)gaoO-Oj^x2=P2<;vGL_Q2$KOuw-!uMWY^-zf#;+H zA_>8=q`IT6>2ez(fXy2Wn_rh>lRJ=ZcS1R7mUIeFj=}q8o%n7@wRQNNPn$yCOcdA} z&%Djk4G2nWpocqsg{8n*yo{@08Sn}9R$M)bb}mg3acGhiPB~QW{sujtj8NJiCTOYt zuy|O`soAB|v6RAW($t|pRwkyhcSowQ8n$BYgoXK&W780vG)%pD1m0kA`uQo0t{9?}Kzqvq*|OSw}J}q#5#b4oSTk4ie$kD?ho05bNlHl+*+mk=DT` zy?rD9vtq(e2iZu8BR_Z*AHBlV%GAXZmUhr*n*pQCBMXMY%;T2uzODa^UZ+@vLd&>d zNt`ehyew;JG$8zU&<3hb-!{K%d7oM>U3{Q7dxXP66KMcG{|_Ai%B&|N8X@Ez^mFCj z&BT!90SzH+n`#rH1eZ_D)hoV+q8&P$D^=59E*a-!+zGbxfaJlSg9zrO!zoE+P;Wk3T$PCQQ z!+phg?~fdXB}oi69b&>M!ml>75;9D{!3SPZbodw2=H!`K*cI zQ=3)9z?gj3BKTiK5QmU1E+Cu`sN)II>m8I1I?u}35F~tOQa1o(P!9z6H+1D+#f9Ly z!;1ZnP=dxUi3Iz;-I?*gY7$vR4K${fRD`*ZrQqTwRi>XPBS)Hi!@A+_D2IKiS6dA- z5_jx*20w#$6Oc@FMNFO&rdq|7bvqF)AT^VyB}gP^06H=Q$B_`yOqMwa6}T3}y8~#^ zX!d-1;y|XV%JZL}qHdcm>@nwpJA$~UsfE4wAdW-a3tQUz)CKATxy=?bN%)Qz(aSEe z4pROW1cGQVsHD*5FQ7k}c{0d9s)^$PG^7@c>br{{E{5XfT1b0;D1Lquchh}Bip{$q z& zY8)$>M*@enCksh{lj%Sq!zC2>=AwjY*g}&c>_coNNVTcSx%~*mxe0b?OgKIQ33(00 zZ7F&Lp)y%cGVZ#+dzdy63My4?E(JJ4#sr=CwVYW7Si}1TEf94!eO3n4srm0O(>z`xyS#M1yW*-}aO3Uxv+-fR9Bmp$yr0(0lYiK6 z=Jn|W1b)htl}+Zxq2GHwmfS^%E%f^0-s0BNo!I%y7YY9y2&rB#s|2p;bNzmNk+2A2 zhYZc8tJ5D{6Y8k*e@C3QV!J#AzP@kXZ_Gp4(^TEIry^$2jb8D;>Q#`v8Y#w{1c!&& zUTK<4f;LqkdqhhT?SRRn93D5PHAJ$yqTIR_~o4r2&p)= z<&wS%5~-Q^%4uHSi);B^zL4tPx^ttKKfW9nkG#0rBd<+v>|MhBYVmkX8oxpL3{{@G zx&AC^fgbaJ|J+LVKF;;7e9q2LYQKebnXvqb+z_Hh&G|3Q)9Z-;=%W%5o?gUzA6 z32?~MC#`k9YChs#UgPvw3@DP=2GL7T0zYNACg|O|mkHbYf$u^j*zZRE3#Lul4Qcm* zgAvMKCT!jNiu;>i)J{upbTKLxLod-5H+LFYFUKbt+Bft{i3ggG)&PFHow%@{Aue}d zd@_Vjg-9P3+sC~xNeUb@qXCHAJN+ex^m;dwqvF55Kq3hoZw&OUPY$Vy{kzGVAaTGb zVj&zR6AI+)7Hm7evNsfl+ma(6s6RR9?YG?LoG*5Gq#Xr5U`|%%GJFC7umLGz{8mDT zFc)uGP&Yq#smzCvqX3n9J4%Nf%wt-S9kp)oO%SW-|PS}8QL}H z`>^vYL0`xH1Zk*o3LOJqcGX1Rznd3~vb0V^4OkYGA_T@JQt`i64xKtBYXEV}jbI zrP+AzZBY28LGfjLg|cnLeWVU{EK#RZlArR)N!;raMci0i#Dtl|xQvUI5`+D&eq^nH zrp6g8CW2@5|16o#AGqHy8;zCEWdTjYXWfC|8w;@A4}G!;7a>Q&B;j^Os^=I%{El3L zLDrCCK0F;(6hzpzwIk3gXr2@;n-Ne z2}cMM5itG<2fs9X;_)zaOa{NF=~-k}hkX+98&NexM-B2QeRzGYq_MW9a2*ZvZBC|4 zjC2+rld%DJ9Bk=it85l&Qvhy}Zo~2`f|lg0v=gh9sJW^px+o-+@)H$D77yt$zG#S2 zfJ-1fGAsft+%L#c2U)ORj6H@@nmIh=GAKXPzmwfidn)A7@MzGN-t1TKP!y|(mi6Bz z=R2j4@-XoHU`U07gGW>ihK8giB_#zjtyu5P(^1t3*1^gDTH``zDn^|R5X`U76Trd1 z7F29A3=oX$40oU*CI2ChQk57IGFo=UBT9{diHVto1@jaH_FYvZPf9MN486iY)g$kV z%TZXxbGqRN3x^0wRUSHuAY3{RRyzW+Vki_8&Hl}FyudNNd^G~1QYa)i3xh&A+-Oor zxsb{Y58O-S&%|DZbW$C9cmyOk#DoxNrF0*9{3?V1M==Nz^nPL2qHDdp)x*N9laF!|dA4=2ZLo-KH}MKJvt?IwBh*=8 zfe$}YAd~_G6Rl3ADHw5Mf^|%+~Vy<;iJb-TH#Abnz z8dQZ{t5McXJwy!^feEl^uC$9GiUp^j-{uwPq7`-#YN<2z*dU-l9tA!*W=iPXG(2!! zl=co+bCZq$QCwK(cf;g38L4Lp6|E2?{bIBOWupmef{Qu&)yeet-EXkY3DC}aQpw0| zQiI}P8jbO^0NkiG2ng(v4MQl)g!FwlUB#bDsui=_@L*t(2>XC`68&Jo0J082gJl6S{t_1j9UR{2V~c_C+4chm$VU)iBB(5J_VyO$_b!qe|`u( zSP^OK{KyIl{Q%1v0cj2w73`+{?fZHc-6#j^sL5H*_#O6qO&sbQKslsaHs*Z@H69}Y zbdlJNg(Y3nqE-cJLvx_YI?>(<$L4RR@KVv!!+BVSc7juhq>q``9Ug<{c};>AK=AzG zys`(8o(ZJTsCE_$BHH8eih=x1rEdW zQh^079KDpHB|AQmNJBPPMUyoW_p<_QP^+X<(+8oP6r9Oo&JczUx>lri73|JkuA*s0 zrpv|+&!H{rw#ha4d*(~A2`YAjKI1fz{yRR7fp$tUm|DihftSx`J4t9;Y!rpxeTW$* z1f#@*Ngb1V=|ZyMgR$V5O78`o60(vg9<1f0=D3}LwQ7;73*iO@mWgVV4*_aW7`!1( zLY-;Z)dtVZpS;(om;_KAY~`4A874KtnZB#@FOn@TrGfp?4h9P#0cBb;mTWhzZ%!An zjkj+|x#puMh}xMxhaKcaAe68R*Bo8(76K^Sx6 zX}iEL0z)L(n~Ni(lG67k3~!0U?=48!5#1a9QVfw&;q;7#*|q!v;1i>_^JOw z$_CItJdK#{Nc(Q%;4hujRS(DyaDs5QEAqH(Y)Yq?r-^qR94iE{&$i79DTX|07F zxkqc~8foaGXNcvKti-N~JDiePSY>J>fe#Zlj-fO;KGTFTbr&yc6mnXWrWiNNA=90N<-g{ia-A6gOMSH^MFLfu-167 z(G51eP;n|%=V+j`Fu&LlesjF*Lj@dr}4yM zT4RR2(9Rc!$jI_&{fkrxbuM;HiPz}rE$b#X_0vYP znM6Bvje$D}-`Tw3XlG?26Lm!^g;7PywCDZ}e}Xl6g^?0Kj?UQSJD2qr5qNwB5ItJc z_sw8->D5uTNi-c?;h-zeK`obDPd@-D9JXfp?$m^dfrH+QM|0DZcn7?k1c^GI{}kot zVQS@qNm=W^#xJ+pekvt-0O9qpUQ2K_DyP;r~qRrv7ogRrw664!w8jQh_MHSO6%1ZAv_!@&;-pJ=!tRN(Bp@+vjrt z%dO_L_wDU?v~w=4-O6n9$9tpy_?t5<|1@iIS@66Ev;DgxA2xE9%~}{8yUH*;og#z) z=Khgx|=szz_ zc0RTfnL`8Xl#g4$&)rg9*~?b|byl=JQN*{}DxRfDfR1IJWo(kmtdT9xGt+En2V zZ^uz68Z2q!*X=snrDc`3w$-@__{K2ROAtD&+~rle3%{1-5czN!3s;U(Fzkv|Lf(Zd z`Y(p1xcTCMk8pt~gzFlp*I8TqZ0N`t{@)5sp~js9ND!0S6y%WHbRm)S-m24?7{<`d z@w>7*#u1;SJEOUNPXwVF=1ohd< z+KZ1M=cN}zl^8Wq8CbOo2v7+};0qKMBJ~nvgQ;htl*ak|b-ZMHx=1H&zE&MFX??aTj*C@9XJ)L^}4Xi^^P#d<>k(I71D0Fl2D0^ z8LK90vyASiH*F$r1}wMeP0l{$^WWsY18q-HI^FY|d5$_e^1IjZWnPuP72cq;FgPrc zjY4NEMu~_dt~u}A$mJ(;Wq6`Gc@4hgW<6=WO$I(>&S$$>-(TZw**d@Sy$-hTT?;?j zDJmPD1v%JRG?MDib1`<b|!8?5xh$v=G`3LyH~ws`W90h`OkdB#1|orHh}s zM5jkr0Y%^P*k2_y3Z@MerbrU7a|g)SHcVbRE>qQ$ZsFIft8&vw1HKecY$acnDrvR~ zkqN>rq)SztDWn5vVmWE>0R}%O84VrtwbX536pmRz0Wb!-20GiC6ZM==g{&Bh8E~mW zoD}9%V|%deO6e+CZ1UIQ6rD}r4(W*YfBPlcb_2YxJ$m4u4CJ&g4LacXkbU1=_Ufzm z#LIS(co=UIZxCdmk-1KM7wF&oK3&~*TB5m<2B2yPkKk`h;-0yR)ctz&isvH`;TdB2 zxtcVmitQQjAM{v1>MhPXLzJUrpvQ2ZIge7eUcB0g>)p0K2oS|v2<*F!cZWuzJN)$D z-5kbNM^ScR zQs?K{X*azYpPDUpZ7fxcDjDnSqRgMS%Gfu>F*Hg)&*Jq@ zOni9n-YMOckj;3w$ySfJ%~nAkQ}%N3%*pL%&$T>bl_+fF98R1rZ@warmIo9PTC*ge zR6P1->Lt+0rQP>0bxC_h23)4)t}Goa7glX+r}`5$UDEd~EJGPb`dUvhA0pquyxz6w zYa#QociZ}AYw2E2MVW^oWN?2MXLmhrsvl(yaT!qa&o|$r5Jlr!TyeJ5xoEg5Fl^EH zZQ2|7dv8ym(S2A6UueGJoSykU`9UxR{ebwyyUO^nrc0%hO3yKOs5MNm*9DE#gVAkl zvjra-AJSEF!u_6nH}^<{rQ^=`joZwkyeLdz<IMRceAxM z7o2eOsmol)FKp=1>oMj5b-kQwgXvAYLWl###Gjt-G5eq(VmLgpz5(O0gwa2W2eF7+ zE9XUf>{_v$94Rb#1U5?wRoUpr^xuUcriT46AbupS+@E@Mj5_Omm{l3Frvho) zn4lM$0L0twxy#%u4r&&ov}v4%M=7x7tvz3SPu}>ng}QTv)^~+6?8+;!i0<;z)z*W) z%Ax0}alGq_mlJST&%y3*e@3vdeYUs$N+_H9NRBW!*>IxyX+5~UGi4y^_|;&eFf0A^+yX{X{`rF ztvAlUzk+xbNQHQx?wwQdw>jw@yODO-7$$zYwh*M~fxF2>w7id*EZ{@DO)oc>9SQf zHg3q`^26)CzlXPH<1J7=-XXE((_6_K-7WTP*^hbAy^+pHVm@?g;2XwskDXd>>Gtj@ zaeItKIw5c<7){ybyU<02uJR6~w|&jhPjGfqpLAV2_1|i`y$|=iV9zACt!()2C(*yK z;e8)Oe^SHVRm22ub0fQHO`qga?)y^d=O6N79Xh zgOQ59Yz~MU$u4!5Rf?jna}cgifVHrBaLvL9Bs5Q`Qy<+1B=#ir*v607^Y7dq8s(h6 zr))kegRPUSXUYukolmqYGnB?b<$8@7;IbmcswFCJgeij-B-3iDP2Xl5|9EBBiwIhi zF1OTL8#ZLHDk5PdqhU)V>*~kWkLS&ntHjnv`6ksjShTZmvnze^$Zk`B%~2&=!kK26 zP$tgDG9i|()@@vSHU(~$Xs2+6fSQ%iC!UU@|ADd$s0+8U7watz#DkLRdicp@wR0DxX?kBYERT2VYt|-n+gbGFA$Hc7KRl*G zb)j}3p)Jb4QpvBy^0pA`#-7z<+0igC3nVN9(zv|@|9C5kvl<-CCn7I#=RJS9jyJyN zV)yul^F`sFu)qLcBLZLi(cl+Z(R1~BzX@IHo~okxk>8A_jFf&Z~H5H$H5 zLH7`SyWDP2-gR2F1_^{KQl`~zv{qaulbjim{C&>qySlK0>@MpOzkKr+)hyl|w!Xlo z?P;5Gc}{jj7_K&X^=jf3Nj-L;K3qqIcaB)){Jfd^yXTbmF{%jW=zYrjp+>{g_B_3T zb=XDn7=>_ot7Y@mn(&2>bE_gogxA*=SO=-Ku^Thgb$(8Od9C#%s@`}jHR`<5M1L?- z4138wy?~!l+j^(=c&bUkfjrQYN&*s6Es*}*4%xln$Q1mpLU<1D*!OYZTG*9p91 zoMn&c4eTS<^Bjg}H^JPE+o6e*%^q#5;b7f5eIU*Gxz1+YmFY@pM++9l{VUhN_5mC9 zdwf*^J$ApV>-Mc;N%?2vuGjCi;cH4-S=u@fBkYw?xx=x08AI}4Sy3_~j?&gjpua-F z(&Gf2BuhSaTUe>O>14MuYa2V>i>^x_c{86Cc>HglFb-lrqDqwOvJR{34QOiX#oAh} z1nl&>Zn$dJ=GZbc6#9gPg|w@!H`^{okP`T9ba*Y8K3Ce9O}T;UHp}$7X-D6;-dp=L z{0t8ke)SYRN@Qti-E3EG?+&py`){2L9Av5xnAu<9w-w!X&7n2l+kCs=rZZ9mUnqdY zYyP!x?mu)pFp1a!Tz1=Ew~uK@lx8}2;cM3ne zg~v5{GgWum2L@h-`Cb&sqI<7;=l*WRP&V$oe9Jw>$G9olDrWEYlL2(EP(N*JLo zZ2?a;R{v@w`USVkADh006<&_Y0sl5ydD;D42rco%Xwp-{Xv)cmur?n~Qk`#yt+iGI zjnJY3b%_QxRN}^$ZM!-;7-G!@QI%C~H$kt82?=sIFb8>w$eVNPv7$uW8&b$duY6qS z?d*EO-*>05wjgpf`EA%iTfTz}%kv`gj=L*_ZitNKo_Or^3={|U)x(#R5li8sqRd92 zCf|A@)5?ltrXeYo*nj-uor|^-@=iqjalk10bXt9o*l2{IJ5FpZ$68$JX^t_%N)tp* z%dDIjpT0^-LQdJ}DrBIca~dDs3xSzUfTjDZU1EW2j+%ky*S0ZplaQ+BPCDd6E3GPt zhegD|l^aj;L=W?M(LOm}!_Ijv>qOWa9fX0I+0lXSc{omj;EW=6t!I!a%C-Wukv4ww zcZ?B}&s?qC7TgDTXFp!Nt`>*e7H#fRD!cHkEn^42v2Kd=(AyZ*fZT4ZYijw38!^4C z_icFF`N#b8>S(##?g`ihxUNJ+&Yh7_wQKLVJpDsG=H^Q89ltq5=EbM`Ps6pC-LxUg zm+!CEZoIWMPOb+V)8nz$ckh8b53vXZCW%PlgpwmWQ2NB>b0# zn>JXTW=H<=s%X3Y_Vp}0*m>U2*Lk5o4~yje+Hu{z!FZy&b{BJs1t%8%ey6_azDiK5 zlM>n9!ebOJ;Wpz}UvhqBks}^;_8Qk>hrxgRvX=h%o*|0yd$jG)pS9{J5#b~G!18++ z)1ps@*eyB;Km_@BEfVaG0#Z;9!NSct3sTxHr3?jz7VSQBPMO5p z-V_c`2sYiD;i-7&(^n423|9i>2v|7F+Y-gxyQOoCZ)_cQ{+h=4vtVJ2&u{vh9I!m6!*Az=5yYV{u&XFwEB13-19%0<` zw|V~<#Nd<1`= zZ!=~B_cnFA@i<6Ldjp`V^{cqOJ`SRHO~-q5JAESNt`=z-?6k+XKKgzvF?77wmnbb9 zd_XH7&M*D`#e4s5dcEXc15F7(3=!?605E9qF5C@NFAaNn;mxkEb(T9@yw-){j}J`_ zVO0$$C(_~e*;&0m3{!rY$gVTjJ_)2e@0Q6%`Q}Jx=`@qZEPa04Nti|FkBP!-r?h7D z>V-r2r!6*NuTr z#bGXKdl&xBxgC#Lm(h|P%Sj(f__w3Ucf&>GbNl(J=#1L^{mMur!*1{}20J#Zx|T!3 zuyHajo(rYZCs60b(Phi1+XK5CB=Bi;qm_WoXO71qKLW}+Xko@sMQ zyjv76^uCy!#yo4P&^`lQEkIoG>9jx!Cb%k9>XTuu{L8eB`UC^g?I zYS+(^yPAJokbIno3Y7YS*AQ$x?RC8``ROihhi-fY*?1`La;Chq?cP`D#o}g$a;bj* zgN4$@V4h{k{-GG=)@J)c$li=!PHp*Zd+%-SX|BOAH zrIugSaBHprS#gq~25ag7D3u`yrpo%+6hNcJIaU@{QB6=Q>9#^o+)%IPRZt|`x6Lt?~QU3sRo&WL* z3Q|jcBxKtx?8}N)$FtjKd#%fT-Qh#l_f7VE+W(!fp>&b6_OKI3n?zX^W3gcRFlp4Z z#-9H>ia(J6=6cQVAZkYTQSZ&GzxG}e&Ckbd%hgL!a4kJz&7MJnbA8d=v;ZT5$;k&+1!Bp+eCe#qa}cgp&#nsnF*n)8ADIxE6?JHmZrvCqbenI8B} zeV4j;^J3ZE(IU1Ls?48BAgd9>8%T1kjQrd!+ZOZ55nb}W>G+dh!FC2wlNnn;A{!7MOa)JVoQd?da^k(xL%NM^LYx(08<(_d8F{ zcq*Sft+%D8Zc#EHtl!b$;Ue)6&}4Tt7U0!u+x8frA>RL?lXHjCKQ3L{@mKI}*BwUP zOy@d^qR}D3U>$Ae0yGp^K29F-`Cci`e?UWGsl;KqXg{pYBl_w3#<6T{b~~AGAR5(u z?VjI?Ixh|J|5#K0tn+SJ(933Ja@&AkY9pE_@P5yc=AR=}-dJwOq1Y38^tepHEBXxw zZN1jygsZW4Skxr#tuOI1aom2sSaf5o$nP3CWu4jVI^WRiWnRLYb>)G2dF}oh!$3rJ z>Pk2+UB(ckj?9()G1fNR_K=`&iZQ8(&E2e(w3>f^fgAY2og$xk0YLY?O_+Od?YxlG z9AgeuzGOcm0KS%~Z%BsN<f%i7)C6Al%_^P3Nl zovmUeIX8M}^F4Mdrkl4)36sTTtuHgkJrrx0DBI(+_l9k6mE*A6zeFP;{bnaSvLNJv zu;Z2c?)Is_!&)KE^)~X>FI&BjAI6F}Ex0&m;?*BGm$Nm9Q$p!dYyZ7|Z>ga&0#5C2 z?8$cR)|PO19C~Z{%Eza0UpI(WcHq16bD-g8ZN}l5ytnsYi};egYlg)0yd!&6_ z#EIM4%9yY){R{7vHZ}6|g=hU%`VqZ6G;&>TqvbnQ`F&2cTH}Rr+9t)r$0o8pO+BHc zGTSYo55IsKi9;a`gj{eo)n~)_^J+X2`;b=OsmQ_}l;%d2k*(@(8GNZpc2$$d>+y9* zuC3kW-iPn=GUpzV`$^AnQog!A9evt-CKK--@iz2`48L;8Y4Tqh(^dL-nKov-g~(wB zJ6rYN{GGFNzGv4D1DB7!{^vtQe`hXS>D!S7kD5%X=+T-gaC(v(A;*KHD%&Q5ZpmxV*Fm}e`+2jl@v&v&<=V5f01RG@ zxE>z%NoAxE7S%cr=cJS(XjmP3|Qi8(1y&WQ0 zd5;lK9YDj<4aaUOSDv`+ne_W${4|O>oYToBz?A!J%*!P{?vyXfT6M2IIF33QAGS{M z+*)S)++Bc;6Qcj@KHeQ}K_&w5MV{ZNt|719EsD{Gm`-ZhN!Vg>daArzKFYl2>N3iz z*PSuhxj3F~$YIFLLZ;oA@lqe)o&mkjK-_BLuy9VRzD8bq^C!4j3k=K= zcir)f<;B{N>Zo&U@)p=}?*kqfS10?Wzs(xPxetnm;ksm`?4jOq)Q{I65@5A`a+#k_ z)=p*bv#L|!D}R?-9Ngr{-$F<8qN;PMs%)NGdYp-EnpAO5MAaJ9Pg{B&`q@;-oE!r5 z6Ju=a_Y!({>fk+RxFA}|zkCntpz_20P;R*{TkMw>+%gmORdMfyM$?n)-Z@7Z;qSc6 zQGRnpZfW}XP34B5HyPbef;cU>N_U zrSI(2^4|fyJ8zFqXa#9-2y_q-5Ezg);uN)s3Pjh{FDV8L1O)BttSxMB=VEH-qOaoV zVCt+(?_q0GoG2(a0Qe^QD6!smgGqt(+G?n{a`4s0G$l|z1JdqH}?7+--N#} zGse(v11p9W!wjgUrF&+Srv09;Yo@7cZ6r>|lv6@}KWdZvN_b4YUf8{bw7VjSB-j4t zD3aMwU^j zJD#H)bH;kXg^f%=tH zngr|;qX&{)`|jMjzYaT(vN8S6KP70DFJvRr+ts4;JxWJAXFr6M0$a8#s5ly8bW9!v zp!5#O^}Y}arvpJ}1lyMQ@r{-c+#zj1&gp7iP}b=(r>FLTx)lm|j;pU4)&4}uNV;k9 z+DkBBrsAVFVyxb-uHzCe7N;q(QM&K7XC3`H+yzo%kp_5D>g|IllU3jpZ29g=a+ndW zyr)!r8<2=g;*k!fi#nAdD%e zPOw1X(k_G@T?u&~(h{nfMR~CicA@WOx})X9QQ14bUA&iftws;b!HEe+I=J}q;xz1d zKimzU*mQN7E}dCryos35An->R6f8}sMCc6z(S=)aQaBn+J`xYRuC%;jVh z%sHey9NjrZIHi?MEZnUWSvlA^MYRlt+#Jo_6d0X2zDUFDdEwyl0+DC{f#5BGK(O3A za4=9Xux|)Q+Xq<7Vjpn_25)#*0M38(`ge^%A;0u8WrPR7LV>G7K%s%DDl=jL(EbtN z&=5o{%`Jt$K!{k<&X^Ggfb~x@JlZ#RcXxV|uPo!QEP7*mTSjsK=|5TEXn6loL(tjz z%R(l^k|M-P_VzBs!h!%oEJOesBO@c=zkRf@5ShQE{}BIAsSyZD`kxK()iB_JpvWMA zKu|caKu}PS-$)o!`@%nU>cVbY44xfPi>uculfx_SrtXP3sWl7`o_?;DW27({@-)>^ z2S-M(=fWWbVR^;HS4AFqD(f%?(>x%jF|oN#Y;N$B6icjXVJzM+F*K+Xn;SEGHuPifQe^4Vglm;yh*opKSvi`#S(9DW*vt7C_ zkVd5agm+raF_?~xXC3lT4I|D69@xT-Ncu3QG24*-4Vz}tDriRwL^gtYv`&^J+COeYWY*fpMp94ng8n) zMjzW<9t<251hmi?UzGwlnx8dZm#-Yl$asx{Gd;0aZ+bQL_N4GCO?QIJs ztF3+nXtShtE+}MXB`-zaM6-YYwSDN&i;2Z)0A2E_P|Hg+;fB$5w}N?#P1o%;ku?Gv zG^RhhPr0_O*EOn`LC_KvM7Q)*YWILSjRnfq&m#n8vmP`=bh}%BBI9p_FEMx&wl;Ca zEry_VvxSuT-yE}l?+!chaA1c(BzQBnx6kOc^0wDo_KnU!AcU=frY&`vi z4l`F};U@bO1(^TbbK(Dwx-KI#BY=sCk?9}j{c>FutFwF|2=#v; zh_Zwr6Y+n75n+21Q)1;W?6tHr{|8R~SAP8UJP+R=38lu|9eNI)Q4$9@{VJMX$F(MM z?|)F1y~ecUc;c1~N#7Fpk|^9;{2VdQjaW(AizYRV3B%l>|)8+7x?2+?`E{KCKCKZsMR@uk9Gwh-=j zWeu>qD+cSU9T?4+9r>yp3M!}k|N4w4<{xk~;sZ}^;P%x!q?-P^9MXQ+jQhE8vLVJ_ z?l;L5m7iF_RR-Tynaec|K1RbpTkz55f3+*fe?L-EnMvn!;|D9Bkb z5PF{@%F3B|8rj5|CnvXrx%?exiy~>}zxi<>=;W8BMgge*_~O6$E(`$b%Xh&*LH;NI z{s;C6C?F63a8NL`P+vm>G&nfG^IyL~K_P4b)&TN<$pFw$Yzr3`2QCH%dt+yZ|1u%~ zg#V)ySSb6ymohf|XTWg&F9jL?)!hHy(2^qmj26Oz^u|sufPjF16e5D~0(bzp@;LI? zLRtQGDJL72|K01@{Lgin|M%<4|DysigakkgzySsK&uAX{ZUX`a0iXd;|LZ@3fnwtS zqnPuTDgMW?kwI8N`5$}!drk2Fgqd1{ZQe9+g~cb1;JpUVbPuMkUjY{X-(cn!0Q?(f z@|_`SkvH6u&R~rE@S*tbRz{$UPsfEjcnL6E@`E>cAK*nEtciNRq}d`?Wv|_Nm`QX+ zR&2B@j@8=LBM*@KR&>Gd7;B7#CjEO!U&Qm44IL`-G3$$@;WNGt4;m=}Ky2ZNIz{*t8VuVYPuzb`H(*7c`m!mACn(F=bOHy%KVr_vdX zd0}v|8v-)rhmyWQy+H@OM6EstN34fYtiI+xU&zVH{NLw3Oka2kVEuPI1-SfI z07V0!eDymB7&JKbuNmMM;JMh_F@F0uhlPMfgH|#%v9-4|VI&0L|5FSO4MWz_*va16 z-t23lW$)x*?_}umHL?6xKKTDb{{Ip}+im4oMC$dCUD-iG03#&q$v+Hb1``muG;o7J zr&^}OlP7kt+HUzvkw>HQU9NLn=v(Cl;>~ZWj}wy6f%|{@zql~;QNh@!^nVWr?g2DO zR?4Mv1y$kVvS6;L<5xf&-0G2z&9{W=CcDbm{;&3~GAydCZO;JG0#ecpqjc?|K|xB8 zk`_Vfl8zaMp+k_6mKaiykTO67BqT&i2@yd=K^hMrNGc)UMn%!%d(Qc;@A}^N&%3XS z*faC2-S_?6_p{cTbP95xx^>I=jRfNMh*)$;Z)`;9UvS_HbiPdpH9!edZ%aT~H$R0ioI2`hH5mrY zQ(gMp_s(j3M_<&_d!Lt(HWBpP>8nH4!N87O0#B8%r2R_;>jpj`4MYt$@KaC)CkXyemARU>ywr<`(I zc75+u=XBPfy1x96@~veWE%-`=%9YuM~ys5wCQT|N@wB1pck z5I{jV+835YhY;i-<_QBLLI^+v5EYd$0$A`#zR6A^3LJ_r`uN8S_)stf{2q;mfaAd~ zsvpMTzP}c<(MWCinB_G->f?^$2YPi_u^%fYC8}H-2zqg_ML|T+V<4y*2xHu)R zzH4thSTW@*cwTz9-$jOL^`@1V2_Ljxp{dE)i0kbb_*Go0Y6Z ztT>{%u~i1&V7BUEdD+SGj_8^vXSo;k?~pdy*48dgMHK~A(mswT$MU2MzFTrkMq62z zA*|3UgAUm4HC^qPhU|C8-EJq0?cA-XR`cth@ublsHk9#K#`kuk44W&7Uf1GmOzN$(-_T4VeOhbaI^LuEET&iS${cFT z#%jfx?yL+)K7{Gb)y_y2E9x)YVL&h=)4}Uah6rXP0beBee%tK%FAN`nV20J-`Y%D52g0Fv*+J2G;AIaA z!+}D-BOZ7YBldve`@I96f7p~x%3E4K_?^L#Bdr|vF_A<$RinD2QUVJ!+2f3{6ofcO zAXmvJT=VM#)JB`g^4Me^#L@{y9W{ldcR+uTV)Z@iT<BX9Bu(vR~YjoXy?wgrZ_Q|lzT0A9_gDj9XNCn9Fxr2 znnjcE|L}T|0j;6F`<+YIT${^lJW}nELW$2P6e$EogI5Sbrco!H+{XDy8Q;TRbikM` zx%s>2P0qGo`^aXVE;4th)nxtxL)~0QPgkjktZA9I&3n)GGlez=2G{k@$B^YB;xnApHqmGM~FIIl;Tw#u@W`}TAaxD?SZ`^EDF4*7+z z1iu=M8F4*~F*ZX|2*osE*#^QvBbB`7>7s1gH+h_O zIhvC9kDNccar~lEtkp)7T{s$x24|#`M~6kE*m<8>dV7PC(IySmIikigLuPqbt zK`Kl7HDvNMdqicLB0aBvV`4?0xzn8R(Bn}xJjhc&rld!)8*Js}N2+QAmS04<^2wPM zms!#&CNZEb{MQ5TZp~U12tSJ;7^|-5PF7SkoktdR}F_-Icvqv~ik?CkFqaJdU zR?2ydc$b<+p8|(`${nG+Fh!v?hj`rSP75a*^;P#cWjW7g+5*#da49Rfa#gc=;IwHb zY&(bLabxU_GJj%@)U`=FK`b->+E7tB^AzL0%#s3Sme^mp%=3d2!F_JVR_dbywx?!l zu(z4WHGh(2zqO%%wXy$$j@Id~>P`kY`F}E{_RIm$lp+Q|FApCN{P!nq1ER|pZR48V zpm0%tM#3~Z7sV)DNjtdFU_elxR+(J#83 zl2}~b4Seu1XJgrY%db3LC{H%bBTw5#PN{XNeV6w?*h=91lW&Qzp6 z$<(}wk4xprsn|agFl$)2)F4Pw@NQY;+;C0bp@*}? z5#8-_jDOYN&Hk7Je3!CXkDt^3rPR<;Wmxjgg=ZH_=^klZM^-_Lt{W7aaE(7m1cLEz zgMgg;4Uh@M#H)_$`My*x-Qlv~F}ZLMkoToFqjyAM`LktRcIfLEq_Mi zqW}$fr9pp(Y#&?s_DXRAh!cS1-W#}7Li=xg2VG?mn2xTT2p}m2+Y`s4VlX{BCu?1l zxs&U@asD@O+Nv-%kF#3u;N=sCvra@nztJriVIVM_zWw`MZEU4 zH}GB(_quLe`eZi5szPTOt-N7=nf{Gwg&qmpC1-KATG>+5@)1?P?lnnD+eNZ`OUKEA z$IM+~hcCXEW-M&7Ldo82bbnlPmbL8uc@3}6gR#hKrF@d(`DX@}?jop)47igy1=hj} zV$Y&!^f_Fy90A!3$}oiq1b~Rsh2FKOMfP-w&L0J;5sh1Am4B(!$w6%YgKziOhw}=tdGw?)Qh)p<+NGd zvFP&~ugyoUeU@zeR1V~;55B{yo|k!!8~*uT>~j+}G^O^njwsR-7b4+>O&o-us3|CM z{Y;P5T1{BKEf|woZ$_1$Vj)7$ml!K~jGN`2CxUW8$U^kqcfT`kHvuT?m9p+XM?dHz zb4Vra6Rzkg+lOOg5RMIhTR8Y(bk)!fIcbCnBDv9Nf*w)!u-L42m!A;%w~+lSBLAlF zKnQs5dqJRsU!`b&FKw}M*nForWUyOV(5%M#PX}nhHf-O>nL;YJL zE`qS_s-#SIY0*-*U?wFDE~Kq5I@d#kjE2J5yOZorDSK|Yqo@aWOEe?-yh}p66igS) zDvLGaZL;{X-bR*A?L^gCafCT0)Mxtkx)S>?7S?%a));LRQIs3M+vU=WSb7oZhPHn7 zbjdyU*k&VVu;T4hPR5esEF4W$BRq5KS!G_SLAmFyln|fp7;TBpp22Qy6=b^KX=!U} zvUeM5r3xf!sl4757IwT=Ggsw-r%n6^_l$RHI661Q{jceko?s?aAy4d*^nSC;Zkfu- zCwv`L!*$-ILE#8;@%SxFZd@P)N9K$X&J}mTC#j3CM zPcI)$HSBa<5^umlMq#v?oLgqLv^h34Z}c0bxUbyBX7es2$yG_cpur+4EQrX7>w|`< zJ~!k&TQL}_!`loV5gNsdSb}sJH-G9q762icMB{J_Em@=G3%J9GlzFEE81h2Nx3S6V z`g**qft!uXWV}-YTSbD3G~k@ZWX!|j5)3)K>k9+E+aO~#f{a!8jj>2I?A+B7H&61Y zN^=tgO8+Dw_89Bm!WLgCOA>VPzEc+1Z38R>e-jW&KU3C`FZmltS%mw~#_xKE>`@YO zkCI@ZOCkj02mkz?Na&f*=a6bGT6U<7ZaSPcoHI)uiV|kvDD7p^XJHX@s!Px(HDApn z@|31YCKPnA%G<%eOgk8#Ai;#dN#1fVOOevQBRp>&`L2L#IL`87eT42?DgLN1`P&?M zleHMk18>@~bFGavR=Tx3v@=>~YQybF!&^T*d@Ja8qO4OlTJ|!_%oBGNE*AAbme6xE zp$p6Ab;VKye(NR9Q#NnLFRlqLME7eXgE1_O8q$V~|48+GDW)$~jRBmWGV_LXQ@YonDRx;tTgMiOw;-p`RB7Eha2rv+4wD|4A(RS<5)SX`bwy$By7U8 z2_3d{6(oDDHqZ6ET_v8TcCy0MVs{cBA=y?0n+0HlL8Z?>5cH4L4;iaDBNDl{L z&x5D7R0L^Fn1$Bx_PfqPUTq|Xm!n(Xukrc%#5}Qz_)ykTJ)>&^P6O^o&uxf%cGLKe z(@3Te|H1C@eksp=R=NtZQrMqrDL)(iw0q#ozSmLZU@e>QAAs_~^6PK8?FaQ)M2_^D zZ^t627g9*Nq+{8d%u8=d{#E}?$MVfw{93@b`27z1%&+ham=AoSRW z?N3RP>Fm=R?vdC>p8ZzaG+ScLD%yOQa7%q6B}vG(U4Lgf_g3zy#tuk274uze#B0oQ zmv3m7Zsr|}adVqoYM#?!s#tkmt!>8pS%d)5<|O|hQH0kgqUrE%KgMeN8|h8DW<;~O z)tQ60SedHlv2si6WPw|gyQ7&DH|HQVrmC?FQaTlXG!UuKh>97ek?Zx9GY0sZ5ZyxS zMWUQK`wrRiqUUz8Sa;e9x4>OdyTdJZY17#~4R< zE^9n%@;U1js8t4}`JEBUwXXkKcC7iy;0 zzhp|&ZV^mdH@(T3Qj;tYYS3slgE<#qzu26Vrgj9UJvgI-;gD~Q+x@fNsgA3&S^Y-X z_UjGNwR9I1)_Qqn$1UDt@P_N3ZCxNPboF0K3BgPd;uCM+Yp;3rnTr}unyMv}W;Q4Q%D6oU$Z;0}M zfu9}p3}EzPpTE1ZuXASCmdvetL8&mSZr;Q9eXIm6#*+5=a72H(6X&LjbY-q>QxT}zaik*{mRXQkKUIW5f0@1o9%l; z4>?|++BP9hBRvxR|iGAD-Sntrn9KF(xnT4n$A!R z*pKqHJP1bxsD)2=?Hm?w9}8rZet9`C%_n{{#Iba?BUYtkwF=rwc-Pe69FN$nFsB4TAq+}2FX~D%^ZVk>IR%r67t2u@aTRXb0@t6KI>skmZSib2 z&cwcj!9U4G2;~ZNI^9{ES)NjA>}^x*G=BcEWp;@qd+>S7Bg?E?`T0V2AN4CIdI^K| z`1!QV5zj1am*|yT48h4V357E=xXjlugRlwGo2pcB-Ic=>{2d)cdiJ%6lk!#6c0@d8 zDvpv0Lo$gqF)KVL`O+qzac6srqy{!*jGUl0k;9mv$WWYqN@sckK4(SCsPCArX9^GZ zrr7g~!k->p>Ae?nGk#TqKbJe2oEDRLZry)c^<5J^Wj%7a*A@4Iy_=Rp+`v6%XJPSO z_(c|tZ4LSuX&P?jJEQYGUhgv{;G5pu*z1Me?m3R{Ch#X!8PVC}bZcsu)bjk*kD;@Q z$L%w;JJCuz8A;TNgehU*7XkAQ2%at_i|ch6(@7o7%Pd+4it$q#{5rJMpg7c!A7d{D zE$)yXgF+w_;MfZiu;cR2i>bS{BT`Uc@At2Pt+LBknD8Kwi$o9z_fJvkU~}KQnh5B+ zIqHIg7p&a{6wNJ_FalccF80=zU=J^652UNL<-ulOGA5lHxtVh>7;H8J{MqYB{bRXv z2m<*UV`u5&Ea2*F`)lk3yA-`2B?Lmi`|Gh76GI@5U{_>kq_qGFgZeeF*N#WQ2s{Be z;3mMsIk4a|Lm)b*^os;%xjl7gmmr2OIz0pqL-+``rKS5Sd>a_;o1Bj|Q$({yz*X`LX%m_lW + /// Exclude a folder and its contents from a project + /// + public class ExcludeFolderRequest + { + public static readonly RequestType Type = RequestType.Create("sqlProjects/excludeFolder"); + } +} diff --git a/src/Microsoft.SqlTools.ServiceLayer/SqlProjects/Contracts/Folders/MoveFolder.cs b/src/Microsoft.SqlTools.ServiceLayer/SqlProjects/Contracts/Folders/MoveFolder.cs new file mode 100644 index 00000000..c6fc45d3 --- /dev/null +++ b/src/Microsoft.SqlTools.ServiceLayer/SqlProjects/Contracts/Folders/MoveFolder.cs @@ -0,0 +1,31 @@ +// +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. +// + +#nullable disable + +using Microsoft.SqlTools.Hosting.Protocol.Contracts; +using Microsoft.SqlTools.ServiceLayer.Utility; + +namespace Microsoft.SqlTools.ServiceLayer.SqlProjects.Contracts +{ + ///

+ /// Parameters for moving a folder + /// + public class MoveFolderParams : FolderParams + { + /// + /// Path of the folder, typically relative to the .sqlproj file + /// + public string DestinationPath { get; set; } + } + + /// + /// Move a folder and its contents within a project + /// + public class MoveFolderRequest + { + public static readonly RequestType Type = RequestType.Create("sqlProjects/moveFolder"); + } +} diff --git a/src/Microsoft.SqlTools.ServiceLayer/SqlProjects/SqlProjectsService.cs b/src/Microsoft.SqlTools.ServiceLayer/SqlProjects/SqlProjectsService.cs index bae3ede5..f9112560 100644 --- a/src/Microsoft.SqlTools.ServiceLayer/SqlProjects/SqlProjectsService.cs +++ b/src/Microsoft.SqlTools.ServiceLayer/SqlProjects/SqlProjectsService.cs @@ -81,6 +81,8 @@ namespace Microsoft.SqlTools.ServiceLayer.SqlProjects serviceHost.SetRequestHandler(GetFoldersRequest.Type, HandleGetFoldersRequest, isParallelProcessingSupported: true); serviceHost.SetRequestHandler(AddFolderRequest.Type, HandleAddFolderRequest, isParallelProcessingSupported: false); serviceHost.SetRequestHandler(DeleteFolderRequest.Type, HandleDeleteFolderRequest, isParallelProcessingSupported: false); + serviceHost.SetRequestHandler(ExcludeFolderRequest.Type, HandleExcludeFolderRequest, isParallelProcessingSupported: false); + serviceHost.SetRequestHandler(MoveFolderRequest.Type, HandleMoveFolderRequest, isParallelProcessingSupported: false); // SQLCMD variable functions serviceHost.SetRequestHandler(GetSqlCmdVariablesRequest.Type, HandleGetSqlCmdVariablesRequest, isParallelProcessingSupported: true); @@ -343,6 +345,16 @@ namespace Microsoft.SqlTools.ServiceLayer.SqlProjects await RunWithErrorHandling(() => GetProject(requestParams.ProjectUri).Folders.Delete(requestParams.Path), requestContext); } + internal async Task HandleExcludeFolderRequest(FolderParams requestParams, RequestContext requestContext) + { + await RunWithErrorHandling(() => GetProject(requestParams.ProjectUri).Folders.Exclude(requestParams.Path), requestContext); + } + + internal async Task HandleMoveFolderRequest(MoveFolderParams requestParams, RequestContext requestContext) + { + await RunWithErrorHandling(() => GetProject(requestParams.ProjectUri).Folders.Move(requestParams.Path, requestParams.DestinationPath), requestContext); + } + #endregion #endregion diff --git a/test/Microsoft.SqlTools.ServiceLayer.IntegrationTests/SqlProjects/SqlProjectsServiceTests.cs b/test/Microsoft.SqlTools.ServiceLayer.IntegrationTests/SqlProjects/SqlProjectsServiceTests.cs index 78ebce82..ec87835d 100644 --- a/test/Microsoft.SqlTools.ServiceLayer.IntegrationTests/SqlProjects/SqlProjectsServiceTests.cs +++ b/test/Microsoft.SqlTools.ServiceLayer.IntegrationTests/SqlProjects/SqlProjectsServiceTests.cs @@ -372,7 +372,7 @@ namespace Microsoft.SqlTools.ServiceLayer.IntegrationTests.SqlProjects } [Test] - public async Task TestPostDeploymentScriptAddDeleteExcludeMove() + public async Task TestPostDeploymentScriptOperations() { // Setup SqlProjectsService service = new(); @@ -816,9 +816,9 @@ namespace Microsoft.SqlTools.ServiceLayer.IntegrationTests.SqlProjects requestMock.AssertSuccess(nameof(service.HandleAddFolderRequest)); Assert.AreEqual(1, service.Projects[projectUri].Folders.Count, "Folder count after add"); Assert.IsTrue(Directory.Exists(Path.Join(Path.GetDirectoryName(projectUri), folderParams.Path)), $"Subfolder '{folderParams.Path}' expected to exist on disk"); - Assert.IsTrue(service.Projects[projectUri].Folders.Contains(folderParams.Path), $"SqlObjectScripts expected to contain {folderParams.Path}"); + Assert.IsTrue(service.Projects[projectUri].Folders.Contains(folderParams.Path), $"Folders expected to contain {folderParams.Path}"); - // Validate getting a list of the post-deployment scripts + // Validate getting a list of the folders MockRequest getMock = new(); await service.HandleGetFoldersRequest(new SqlProjectParams() { @@ -829,12 +829,48 @@ namespace Microsoft.SqlTools.ServiceLayer.IntegrationTests.SqlProjects Assert.AreEqual(1, getMock.Result.Folders.Length); Assert.AreEqual(folderParams.Path, getMock.Result.Folders[0]); + // Validate moving a folder + requestMock = new(); + const string parentFolder = "NewParentFolder"; + MoveFolderParams moveFolderParams = new MoveFolderParams() + { + ProjectUri = projectUri, + Path = folderParams.Path, + DestinationPath = $@"{parentFolder}\{folderParams.Path}" + }; + + await service.HandleMoveFolderRequest(moveFolderParams, requestMock.Object); + + requestMock.AssertSuccess(nameof(service.HandleMoveFolderRequest)); + Assert.AreEqual(2, service.Projects[projectUri].Folders.Count, "Folder count after move"); + Assert.IsTrue(service.Projects[projectUri].Folders.Contains(parentFolder), $"Folders expected to contain '{parentFolder}' after move"); + Assert.IsTrue(service.Projects[projectUri].Folders.Contains(moveFolderParams.DestinationPath), $"Folders expected to contain '{moveFolderParams.DestinationPath}' after move"); + + // Validate excluding a folder + requestMock = new(); + await service.HandleExcludeFolderRequest(new FolderParams() + { + ProjectUri = projectUri, + Path = moveFolderParams.DestinationPath + }, requestMock.Object); + + requestMock.AssertSuccess(nameof(service.HandleExcludeFolderRequest)); + Assert.AreEqual(1, service.Projects[projectUri].Folders.Count, "Folder count after exclude"); + Assert.IsTrue(service.Projects[projectUri].Folders.Contains(parentFolder), $"Folders expected to still contain '{parentFolder}' after exclude"); + Assert.IsFalse(service.Projects[projectUri].Folders.Contains(moveFolderParams.DestinationPath), $"Folders expected to no longer contain '{moveFolderParams.DestinationPath}' after exclude"); + Assert.IsTrue(Directory.Exists(Path.Join(service.Projects[projectUri].DirectoryPath, parentFolder, folderParams.Path)), "Folder should still exist on disk after exclude"); + // Validate deleting a folder requestMock = new(); - await service.HandleDeleteFolderRequest(folderParams, requestMock.Object); + await service.HandleDeleteFolderRequest(new FolderParams() + { + ProjectUri = projectUri, + Path = parentFolder + }, requestMock.Object); requestMock.AssertSuccess(nameof(service.HandleDeleteFolderRequest)); Assert.AreEqual(0, service.Projects[projectUri].Folders.Count, "Folder count after delete"); + Assert.IsFalse(Directory.Exists(Path.Join(service.Projects[projectUri].DirectoryPath, parentFolder)), "Folder should have been deleted from disk"); } [Test]