From c02e906621ab2ef308974e3591fe13f290f7d1b9 Mon Sep 17 00:00:00 2001 From: the-coderok Date: Thu, 20 Mar 2014 16:28:02 -0700 Subject: [PATCH] Working version with sounds --- VsDingExtensionProject/Resources.Designer.cs | 12 ++++- VsDingExtensionProject/Resources.resx | 13 ++--- VsDingExtensionProject/Resources/ding.wav | Bin 0 -> 371928 bytes .../VsDingExtensionProject.csproj | 21 +++++++- .../VsDingExtensionProjectPackage.cs | 48 ++++++++++++++---- VsDingExtensionProject/packages.config | 3 ++ packages/repositories.config | 4 ++ 7 files changed, 79 insertions(+), 22 deletions(-) create mode 100644 VsDingExtensionProject/Resources/ding.wav create mode 100644 VsDingExtensionProject/packages.config create mode 100644 packages/repositories.config diff --git a/VsDingExtensionProject/Resources.Designer.cs b/VsDingExtensionProject/Resources.Designer.cs index e79e744..dc9f7dc 100644 --- a/VsDingExtensionProject/Resources.Designer.cs +++ b/VsDingExtensionProject/Resources.Designer.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:2.0.50727.42 +// Runtime Version:4.0.30319.18449 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -19,7 +19,7 @@ namespace VitaliiGanzha.VsDingExtensionProject { // class via a tool like ResGen or Visual Studio. // To add or remove a member, edit your .ResX file then rerun ResGen // with the /str option, or rebuild your VS project. - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "2.0.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] internal class Resources { @@ -60,5 +60,13 @@ namespace VitaliiGanzha.VsDingExtensionProject { } } + /// + /// Looks up a localized resource of type System.IO.UnmanagedMemoryStream similar to System.IO.MemoryStream. + /// + internal static System.IO.UnmanagedMemoryStream ding { + get { + return ResourceManager.GetStream("ding", resourceCulture); + } + } } } diff --git a/VsDingExtensionProject/Resources.resx b/VsDingExtensionProject/Resources.resx index 891c592..4b7f1b3 100644 --- a/VsDingExtensionProject/Resources.resx +++ b/VsDingExtensionProject/Resources.resx @@ -1,13 +1,4 @@  - R6wY6`iA>Qfid-r<_H^i zSa6)=qpYKIkqyS8>2{(&0Zwr2);7IB%SF@`9=SF#U^i%yvloD z^h?0b-UxG=6bykkm;KTDoZH2)mOHMwku|JYk6zSs1Jlie9DaKb<5^Fz*6d%UsR?Y+ zjP?)K7P#jdDcdRg6yt1fb(4qi)Hl)Pb^jnw8<=!tbGN`$^9c7V*Hc?7^0fIBzSKmr zx0^NGVfMM)4PJ_6qc`CT**dyGxP+V~DFX9D(pAOOExCBBO1tlq>RS5gf2ve zM^@8sqrRhCBa>N`p=JEBs^ii|@oANZJ2&JdlM(g`|2L!p|D^iF{3P*mUUPE-=g`ApNW?Gao!5+ zGDkb_0!upG-IU8%VCuyAU{P>eIcwPC{bQKFpdGL*PFMP_ur*mE;gM6N3+dNl8DpP7 zz+1tYDjCNZp&Eep3XMc&Mnt1z#43h4>^S#w&{lDRT%~+2To}yfehaANa?6*$6%Nv8-8-{?Kf`fOXrxn&HnU+I#d zX77XGhA+Nx=8g7W?Zt)>?j-G0-{8g{enwNhFQ<94JHa&Dw%(2!TX`>Q8RSPzJ$P<{|7&mRsD(j$Cer?w7)Onj z+K5PbE9$W<0-Gj5IhzCzL~Kq=WhmoR$Tf6AL`U>nWCp%Fq7T~?@>p<1IYCw;_Nun> z%7fdnriT2B&kg#H4^f1%PKh3HG0sZiYIL7ONX(TT^Zp`x=P417_dVv_CAQ&Tk(|IO z#uMipw#(dwqtUNsCF&9|wmytVH_dQewrR~u_b#6HsrdLwU@_Pbx-SQOAV zRr)9B|Mje}IPEd6siryptmcDMzJ@@|4PDXajbmt~{(Ydkb*!hir@$UYO|pE$G4l)d zO3MlE7)Lv<()WQ?Pj|qtvkudJ1Pz2otP32J29Z|DSEQq8Ju8w|COFD;%C4g+K?~`7 zq08ywus7(OPz$qCJ)K`D3z8-ZbCgZ&n?Zg&H8>T+)R(dU$!v^Gf>oR*<|@H{+Ai+q z&z2Us2S}yvA)>FISZ<#{Cu|y>=#RxS?8VFvh8wI>Et9#n2}2KSy9Ms+FFP|W!Dg#t zfAe9FQM1ZtZW!aMY;5J>=#w2iEdkS0r>6O%FTHUN`A0)86|MP5M#I&JHr{dnwD++G z`H!1-0$R45+0HbclW8?`hP#Hc?*>GS?buKRemc2C^l#uVX(u8^rlCeimgBnw)3`2n zl;j?MLiG>wYv={~OZXGyWVjFS7+T2*SFaY`ksg+R{Q-U-YQ%zno0gHiSQLj;ygD*H#{SGv;3PGv5*_DLA$y&j5C%AtV;bG=E>%-n5Ov= z*~T!(^TV8G<2are!aNVO9$$T9o&RRjCZARpuA z+%|T61r`=3xVwbK-7QGa#ob+ky9N#J4#C|&90CLn?zVRPj8FHS`;VWTo$jjYs<+;! z=eN3`!`CX{%eO+bS^6LPwO}6ErK0dBS|u=?Z1DdkE)2GGT#6FMef_rZ1`Z&v#P8rQ z&tRGqf86SkFrS@|zlS^d=18Mm^S$SU!P!>f3CV-uw>&3cFmE;TYo2~$mz;~;RT8hp zpYs^mS4e$w{>h!nxfoANdWfIL2e@Uf;?hrUzv~%0?iGz9afxa^-$>=4tAJKh*lLag zuYjS>B=q&6T{Ow}IY#(LHmyQt zLhM~g5A0Fyqz^U!{l1D7{k8$r`#zIxOIv5&_5Y@JiQSI;VYUxy$nU=?+ztHZ2!!W5 zJn9j#AMMTM<}Si^&R4XF@2!=TP=&Qmn2ajK6%tCi1$S?8RYHHFWdQyA+ZRJf&!d(JK96))UI#kS z!C5kHnl(o_64)=6ip~-$>Q9Mm@8s_nY`-=4N^?-$KJ#LHF*YVHi0gQ~jt|lv-(v1f z_6|tM{REWFHwSLZ*MoG(^Hg-?Z0Y$g;lG5*o;o=OO52m$aD9?H;S))PN#O*CP|@+?VQEgniLO2+4S2l*r( z^-O@|qC2-hgolnXV7#Y|amrU$ZSAY6)OWX5`-}CBdZ;kd^-Q!SvcP^r_vYKBr*Qq# z9>X^2&CIWvXJdij(7^WC;Pje5wZo%gdS-!jq}K6 z>A0cRlei4#^@(JZYmJmFW_f=l(QNi^eey`)&eIZp$=!~mB!3pSW`iEV2NPC1BH82l zpE&}kd5%TUk*zn{>8;Gwk=#-ozU!KAHS<=~vioHDiKm~^&1q|dxo_45+oy1p@`;F{ zhkV7%o&16{FKL-Jg^kO&sZ9)Ah!l-}&C0JfN?W9dzUMb){dl9TOFtpE3uJ}XMki)I z)z1FtNMC%7gRQ(6`yJ=Y$IC* z4dZPRwd=4M?|WzLitB7;`6|JFo_qWn$2fNbK3C#EG$*G34&+W}f9ClOHORe*Kbu2$ z&Pn(qZoRvH_F`g(oVDzmI{-zK4x;l3m~(qV;&Gw1dmp^&`(ieT4`}1!e44EQ)K^Lk ztmmj7Y+y9t#z&6`g90yw4w)Odq8Vdha;9dK3+#x^h%5;FsccJcreFUt(HQU}q%TZc zuAa;q7=@9fzR5*66QcY{=OY!TPt zLavS0YEN5jzBjLO!Q)YmIVEi6qYLD2Mo^+CQL+)kw<;i-i-2nAMfboj!;t zKTE?yX(?ul%mH$b;F93|=<1BFYLB0t^gn;p(}O=HRm$ucT@w5?h~;IOLybpii&>SQ z*W4o zA>Rz^r0+L2$J-xoc0Ci9i?uy9$hY{NU_kcQba;-zY8G{E{mMM-U2I+RRs_e~Gf0LsS6af2^sI+8USLDBx1zD6VXRUTgDHt`ImtKQ zanDJ-uZ2nRjmhVP8}NQSuW)$YMtBxrMvU0x>0ChY(o~k zVZKIw`59L$JWHq^Xd=|~pCUB_Ex@^uqPt=PVtdt*!HY(&tczA4qbALkmCdRY?4%El z){_l&XQ;ac{kOr;%me6B<^^=b{{zej@3ST=*R?OE70ZeGL`42;c&d0kx?b9>{vzGC z>In1jW)c?f!0zq~tbng2gK;-N)axQ6+zUlR8t!)RUE*!7LiT~+N{(JY&e0wfOuEBe zN+{$w=H22M?@Wy!C+tYh2 z{VaFS^4Y#Fe`_%;M*qhd0S~_{|vR#+{)|NEpt!!4*U|V%`FTW ze2*yQN2x2gDOO$EGy5*+Bd(@ZU9~LBz1iC7E(8uZdy~Ur9jOK9^!$K*;(udzv;Agw z%p0+O+3TSx32XUv-rUZPPU>+83*sa^D88-TtvklndUC)Dj&1lG8O|?Ys%Yrj93K?J zaa>*~r7D=etUU$gt&jRnK%;J)5PXZ@Wq!1~r)|Kr%ueQi{_IL9R6UeGRwpx}^h$fI zrT;9UFG&BQZqE8uJ{md@o+*FwH#cTvY^RIUe6~{Z8Iv+)%M5(cPeuDH@3f}ThOACF znZ$<^gwK&(LSJPg-_(3UZrPkchfowWb{3^?-Tkel9>`|9-=Z&$gF*vgqU(S5bPmFM ziMv^eBpz%|@*y$%VQxwM0Efq8cm_(T@e{dF!V&Z`VIEA5uZFgHrjVJ^ap4O7$8nwR zb~Q3ASE`oZ)k8Zi6*BsBMd=RPO=Ow&oRo-e;0FiC@zjl9*>pX0Ty81f3;)04z-+oA(+3x2e1K~+*Mlp8Ro19ze%;bs z$`kf78X;O_sCYj5M(U=_v+HJucnbc<^%MHzBCfh{zPBOB5$A-9ee-Z#&rrL*8{(QQ zY>wMbzGOR%mgn%G0y!zVoV1e*ByN$C;|h7MxKiUMi#4*9;F7cV!50z>;Er*f$tu?i z{x_kZqXXjH#pwpmU&b7dU_5Y@Hz!Ji>3Gr}7NozD=gLGrDPn62gEj5EnT56n9CTvn zZ}nz$YGkfT0=UF|CM5^v%j()=?Zw1z6@NYipL_E@f*m~)A?GJGgox>-Sx}=PhgsQn0f&25X6+)$bc8;=15K;sp3tQcbup$4N9S=@2(O@tu^%*T*x%Ss}io&_0nT z6B9qff8zVYp5EtZrDG%4ggYo!0r{K>W;NGhZL@Q$T370+72pmUD{Qxq4q9O}H`0cL z{QF7!%-r~JhM(=p%xir24~XRoe+;~e?awHrO-wtjS4so=tn_h8$1G2Drd_MIl-p#z z)d#0@^xV&SEII9e^k&9OvrzDh)+RPxKB6Cud}0;C9ms?*FYJi!68fuC`94-Ja?f@g zIwjmxqC5C4p%gwVAd)?Su0RUCF>XXslzNIQ(prBUNH<#fnep21*Xx8{t6!oY zVxQID!he|o|7dnL^9yL7c?e|p|D;bs1`A43(B=8@*vF9d8~0UA4`@iAG<45wp2}kdZ$) zSt}FSBtMj;$b7wH;HWh}a~9i@agW{1w7YPD&1SRcI<1aYKrTv)MP{Kxq5rtf;roIS z{VecW4L)G4!;(ECIW7#R#F=iMb6MsGS3KL`e1@t>6NLo+SCp?kd2Og~u{!Z8{1OxT?YyKrTDNv2QvNQjw$hMeE*%gXv5B;l+8Ci#o zX8u&2gzhP6(Us8>TGNnXw)fvCMG9=4`^*&P`R2UkeZ%8^JFKHRtyR+L1p3Pr;Ai6mwDJf67O>Y9v|T6lh}p zm-XB%>wjVt369n3M9Rpyl#XGCaoWF{rexj+Gc&To>zUKo-oSbD-^f<&hPqmotsK!Y z$Qc>V(TKfiEVttC>S<&qJB8+vCcrH-#UtDd_9sOPLf>WZhtr=*(uEUX`Q zoK;IK#M))c2f8MnMwjFE@zp%>&Iyjqp7Z>1-*ntMZXvAaYX>K}cc9kNJJOT%7ap*Y zQg^erql|t|O4SD2y_e_spxJ}v1F8B<+%9&R>kt~t<3MMwmVYJs>0eC4!NXeVs1<#w z}{q1_hw!Kef%1Ahr5`nJWwlR z-jiPd5^F*BMZ55AWKsB^mcsu^yO1QCUU)-z&1N_|(T(mn8gk!bD_os%cE@$0snFRq zo$T`^BO~E1IGjxf6S93mofGQwG4C=*g6pWKhqxo|E%_dg?fKXwu*rKK>~iiz3g3ZC zK|w*H|4CW;M8`O7gS1?0A|xA~@EY5Zb^@rS=D{N(U&**&32sne13ngL0CI)?HdrK1 zd7-G`$;OYsU)E6nC+o8Rs(C!PK^LOuluBxoXit*`AFz-9|KM_eMf5gc|JLwzdPII> z^fXizg9EaT*TtUl2joWL0j;2T#oEKCqH5#{KN(JPlwxjo4%)>Nvd`=Z*vhqvD=*!X z7IJsoRZ-oz9KfG&nZ;)-3~MG{z|G@|3U2pH$9*yAuE1UMwn53hmf(lyA#3Hz2^Whu zadt9=-^Hql@#bSOqE!&v*?-e~`u|XIQ?wc0NP7jhMVH{Rp&|IBe;!RU=r#x-XdzD97Xrx_XGye(W50*>6o<<0_syN}T;F4^kmI7DCb z*TFHH;W(Lc{7${4kfk8uwmg)x6)dQgwu2^^x3w?yb@V&f5u5|xXWa(RGhfqLSr3gR zfv3vYaF58GSk1s^Wk6>azic=T%}*i8fZPvH0Y?Tx@?SH zFP#Y=G=lOKb*E85E(P94%Me%W1OJD-UP#gQ^0};k$YQt;72$6I;8@0%xfZdhZU@}s zqPULZy^zUM=bza07KL#M2#iQ91M(+sfi>d$kaFI3;&5kI*I;42_W&Lr7XUNk{$p3Y zeL;Jd8+{SRll(Y`aElg}QVm6Fr&W>C?Kj?d{T%+yCan$w%XJHtlNXTW$Y*jobP?YV z`JfrjYqg23Q=6&nqXmo?wjOeiAJY#0)^;U6&L|eSp;l8y#abHU!#Z6YJPp4EzMvh! znkW=51Y+`ZTZ`c^2189v=awoSskgGnp{e^F3FaW_chFy`&9&riN!M@{_j@GSb&KK2 zNjkXW1jA9v*;%aUUC0fLFM)?8Mq!0)Q_!`x=QLv$8o_+-40V|L>A}5_@l7} zycS6%ry?0361{IWQBJEqy<%*$`CqsT-4a?!4~J4LcjT*nFIHJytL==fvnEE~fy~e? zv?dfrH^PHp`h zNJ)>Mgxst6TCTj(I%%fsDX)9ylXdY`F-jbWM<)`_OgJjEkN@gu=*@J`aE|g77xTyG z7PDe^WI5dF*exFKWVb(Y~aT+>{Hb=gAtg0RG!{di;~@ zWgi8|^4s;#F2_$WOwy27ILCD)4W%DYca;abyzAImUkVuOOF|{RSBc-XTX-f-akS(E zuD*Df=Mk*t84R1c?!Y)nMI||v zWrPPsuA{G^yl`r0AZ-}->$Rf^$`^T9q`h`IxL>ajIH!}qS8Z#swfZrVO+KSciSPyv zwYBO7`qQ2Mj&w<&iWLrdjNY+sYJcrRY^BvWTF+L!ox~%ebIB+9#&JJl9p z`FX!}QJiW$lkt9e688QxIUntZz?M9N#!~^w~4=r z+nn9Gz3z9Yif0-u@7@GAI$ojxznHv2mH7~zDyT+Pak$=I?4+xF2jeoXX)R=jSWUx# zt&|HmIog!G3pK$xLY937k6K3LZ|$IbI@VFU9NuJ92qjp#LKUpv!{?1nQC*#+e2bmd ze~DbNl0!dPC~yk=2>fLILLaOt(LzQSb+p>SOqC^2Kb98{j^*X<$Q!sG+DYO!Gi*QJ z7??ylvxUM^I#2qCev+zyo#J{lmRGo<DzO56AURD_s%aFGE*pu$M7y&4X8Wa= zLreAl;s4}Tq-yjAULCgKl;I3|B%G!1j9!y#C>@^l+ z5$uOC{Fv1e_Rv$(7JAQdi*`Lww>FKkC zGVUVIiP9l$+iQZnSEIuNYRe zs#aC)BQG^(MP}2)&;oGXwl?tuzc7Djr$wWm^dssRb-TGoUJKU5{cOL) z?|6qZ$~P8sI0|z!T>a5JcSjI*ZDg8b26!$^Kw*5Ed}eF;k>-7&p8j1}r5)j$>W#=( zA(0%ffsfqLe| zkYBqTg-TJiWHhWl2*peo%uPLkGIUu$H&2Jo>s?}n)W%v#dApfEHiCI$-(U@S9KNeg z!i~*mw*U4-b{5~XqhEh(vlz0*NGAO(a?mIAA*;y*(SpTYHviUBpY`?KU?JaBn8#Oy z2%f^iH;2oSB8+jpz|Y*n;9YlZ(BIVq#H6Ee55F0IK*zY+thcbttRYsj-y(gDn*3|C zGtOgs`7eQ*u@ZMt?~nnpd*r{!0Q@|12!x`X^_QHc?o@eOYFi~-!3qSM(h{M&*8jrT z92fgbd!fFQYnt)VyYzIZ5ZE4^1FDCjY;t5U)#PN8>2tL#x?1UpUdx1Ar?lhOYpwbD zW-qQ5xQa&-4VD!D1S1_@kjHrhEOhKe*`=3U8{xQAiyPtw_^_`zd=~!_G)Q<0^T+2R zalR75KKEwFUdJN0BvkTV!M(hOG-X9wBEwnFE8&3#rK-Yo`!1fR|*GA5&dF8dy^JDrjES6i|t96UKGOL9OFd^6IyD*%u>utScv>=)-t(9v-LPZGNbIv3|0f+u9Vw zj<|!w>mgzp2XMCIv$>tPtmh%f?@`z}*FumXRYeltn*0m%@`U~_{AR2aLfU*jpfw<= z1`nxK-nt2DXfM&4*aLhtJQ!yNAHws&TC8%oxcMadQN5(>ixt)7@IzxrXpGq^^ust2 zuBMNSJyfo#X;I0n9NtOC1QWo!00))?pV8gnpxID9tKZR=sfE}rc?WXJ5%OLB#wBWR zxLl@8wzJB3x=mFTgzPNUt`hP&oNS1sgIB^Xyo5W$UqiA~8kBUeqpQ3tX-8igEAQ3e zLDxibS}G$P;NM9vFmu+1>s?FOLT6dlTIvo;^V88nw3?*R1m0&V{2bllbLo4y1^R#J zt)bC%)_Hv?+aiAlr6d1<$HCRi3T(3;2XE+?!j0`&^0CNgd3SJ{ddF{9z5W7PuHYl( zLU@z?CF3Itv~$6cW}3e_mHZj>vfp-+4gO*ci2iB}Q-QX?%%+S3R_p}+RX)MRtKIkl zMjE%B?jxO$i0^TKzzO0UkjHTmEOt~uJEXbffRIZ_<~~T@&=uEt==6?<*hkPb?=*bI z{f;Z+ydm}%N7?&et=+%iWX}{h*Zm9Z@8nT_aW9@oE^s{DYQMX-if@gT;!}N)kZ6?V z_L%8Vr|+!_aG|yX-HMgMbs~=t3njxBp+tHmTvb02ts^&7V&Tr(o!}y!27c-Xf{pZ( z;Y;d;SZz6|Hj8{Ql;AjO2E1Tq@OQw6o3JI(W>yI`OaH@sq3!~0lpN%xT%Qjs<%NDa z5)ND6xF)bNIY;`TbwV~cS=tKf zbF17bwvVI3`I@ipeuUS1Ccv|v6wt%&b3S(DL34#cB!D;agFtq%vh_@CX6z7a8|{SU z<}5Obj-n(T(1Fqze)vr_kBRHn=!;kd0M;w@R2%Jtz38&cy+x6yHldC{)(> z3PE!qUlfcXYw-~DgI@>wOWoOWM+?^0aT_E`%W*})Eqowr98=LM_i3=&%YnVV17L#B zW_5bXa!;J4#O-3#ahp5p>W)p1UM(@U)%KC6g?TX!XO%8t3*98C6 znufb6d1EX(UcD9`YupUZw)zBW)24x&)~#TQIWfZPkL9JxNWFCo(t^=4uvv5j-Vkd< zRJ*$BVYElRSwBz#543MkWlI#hS^1^U6iBIXrZB*!1iu!>qFT=Lpo*szDC{c?xB6b8 zZMI@ynp+nxJ5D?H37=eFh~_rYHFqOa({&kblRn@|{Ag|hsw2ecWwE(gM-q+lqF@~6 z@|ZpfyysJok_et_v`ojIjyT$7GSH}ua**T4lbu_Y? zij}OoTq<1#e*;UcHt2))0;_Uw5*IsSV2-F-5LP2S!(dtr0)`5uvbL>?Am?OrWKV8^#t|LYoC=D<5$KWh*yA zZNaDO2RMfsuUFRQKOU1)hiu8b<5R;%oNFw*iWMP;+iR=hYx^uDi-sbEN z??=$xlMB~%jpSxZPleIE+wly~byh&2AKp^H^V$f!+baUuVCHomfrjGc(0DaECA*@8a_Ev#};#fGeESKx=m{u))5cV_dD# zVaElsO>8Hm@=YW^p6%EQ1CFv_pra5tBUZI1OVdzmGzn+YcBG$KihE_hw>s!o$v(Y4 zdSkq#JFO~4EB0AA25QHK!Yz@mFkgg#{*jSZuV`WYOYD{WRH+rcsVxu7dP2CA@gO`( zUl7f%9hciGKh)YWhtVQ($*dHm^fk%^b&9@IUTOQ1X>35O9jqpw zg~imK@Rr^Htg!mivY@>=9mN@)NDHGJchY=FcF;EX94HQ(VU+^DiS@hK&2&39nrV(C zy4GtkV@-R2G*1`W(_aJP0Dy;B~e5%Om^BgWXLSgQ4}GEZ-+^J*1Sj^($`Mq65kqQEj@ z*le!W(PR2^WxO>aHkEykTm*e0AHbQ2pW#@0x=~qgW;5RCQ)y$ZFsz_5)JZKtuzr%9 zGv|}*YyiGv6X3>ihrvQ&9#|`ug44vYXsVD(K5*~(II>Bqge<2Q9&n3rriY-yo`3LK zSAZ+yNDyZW4o5a_nUlvQ>{rVo=W6&wnt~b$m{cSSIX7I#uc0-C*49{|s+GnA>fu(~ zjIC3!9D9x1nN7J{T5m2x8BJ;_FVP+4B#6|1lH zpgWBGW()d6`vTr8r_d$26}~R(D5uJyc6wLv&~(`ZnmCdz=!Cx~G64UKP~$_C!bBgUIjB z4E~ZhLW<{WIcMPn*IF2Hz5)*&^WdK%!ZU51e_fQ9@5!18U9EIsj=4)%V;19wTegbS zCNz2BJ986?(^uno^$J$xtLUw~3v5tUSrxRFdRJqY(%kwG8$~mt)9I7wZ0l$2rje|U z);{Qo%4Dl`Y!fRTO@djG5pa8S1ZX68qnA|9d}ydzi0)MPLu}{F3TkswPy2=RHVWd( zbSeyjb*wJVK}BwamB2r;it&}0N>brH^e-L{>hVYE3h|KD%+b+Ga|Erfj-$*WRY37} zE}cgT36}j*c7Q_mc})|)(9ObX){4WhKk_4c-cLl!&G$5T{)wJR#u|3MG24J)Hn}(% zT-3V2MCBcv6YB^wqAyvs*ix&e{7C<#gp~hj6Jk>gEwa*l7WvnF5e*qDAW*jiTYZuvh)mB}popE^$lF#}XT-w@iGf%p~ zZnz4_;AXOxLN8`_rPwIGA&lcX<7L>x7efDv3GiRX2JqIYfhw*tXuT5=MM~s%2_?ny zoZ!H?q;o7R<@^p#Nx5KA;XbTOvTPPkUviWF!yPgw^Q-Mz@_9Gf_m$HPm(QV4S^{;*oeAA}l|Fpf_X#Ea<*VxU+tRvieP=iEl z3iSluVf$Y!1e{a}7MFIQY~m_H_y_z4TuW+&4mvl$S?-I_a&JeK+!e@1XLJ5dM;N%y;L_e^cFUIyNYFi1;$alT2JPW>aT^b#(dF1KMDIlc|H|aBk9~( z^j&bHwo*&e^4+Rm^j|B6-=sF@;Y_L+TeT*rT!e(=G1W=&%!^!H$$ zG9DVyVsN#6?zTr(TMwdZ^%QxzvPsDwtEz2|T+?$$RvEn_Nye7wOzns~MrowYiTz`E zqHC-|kq*=dm!bbg=2#iAwq}C%r@qR3qMl_jr5SRlg^5dp+*SP)DQO+Y6Tlku3uy$u z@C1|>Td;cKSoS~RBsj|Js3`Z1>xomiFh;{W0Qho6cm zaJ$r!)scqNeBwn~fq%z_;bu0w@F(hIjU`=;KHNM#JGV%mgj*OEAeLzJOm688I9$nu zPofrF6PW=sBV|FG*f%Su@>4IMeNs9Yn_|CP(`=uZHPJD2RcxZwUpZrZ(uQfR%P)E;fkt zplf)6UKKXdu#m}$*)io5_k|QAg~ZD!*;{@#FNQU>t*>E|(4ZXlRE)UCdm=)y5TVwer<{qw&wG+3bd%zx>vepz1&>z@; z@$Gn^JPYrS)j%#e%4#XOtUGE`eVP7M`OTasPqgyMtE{c^Z1b3MRL`wlQ!PDRu56Wy z1*t3AjlGCWrhB5Q*+U*+DC$j3HGWZl+FO7fVKpTS%~b!w>-9mnptTQ`v318 z=CHQHF1BCz4~!NbqHBCR&Q|4!Ksgu^0Vg=%~PH`T5Uhln%4193U)Y&-t$Q zNjWu$`^xLky4XBWQ+{dLuJy)ry`9>`tRk1ULeZ(#`DjyXVXTqaL+PkzXb!cnT`kn3 zoul>H;z(ikGm=cl#}1iARIkz1n4vAD_0>-BpfUiLRacRB+CtLNY>R8MwQvAx3;J0#g$_tNUgk1*@;-OUbMZEG3cOfzia%Q4G@EA>M5 zzRVE(Gd2_b8v6(y#V8%DoHFNW=d^LgE%~Q;FZ#e57X4`rkJ)|`N~+OME2M2S9>|X^ zA=Z`Ei6XEldWqe%rv+~m$(p7YGsatUwZY)N`U2I~R*@BYer|%>X3 zBlszFgK&{96rQt5{4RKz$oML{z&{5orOs@Y^E%D%D#ETh8-kOLoCr&!$PGS|uSRl7 z-(W?@K)^eAkRkpBiVG3=mAuAN(G6}6C?XWJZ~1&WM+ni$d{wZT{IFTmhwyHSxuwQn zZh#gho7LC&k@_C4)g<;_XT~+Nu6@5MDi&)l7Xwq}(rlOga$c@|)n6NZRUa)UUuUbL zkAV^aa6_~l7$L8uK5eC`84vUz{YyIz6SQmickM5-R3~J!xfOYA7VS`*emNCCp@{22 zk8}UfzFavVkghhN^#Mr*C56r`MY>AYJI>PYc0EwkaTx9tExeQO$rmB^Y!A+ohOk4@ zCz>JdWle;F&?4tiPt=BNW^cLQtqeZNe9b4Cv$#a7Hr_%v*-X|$)>ODo?~UTrm*|GP z484+bz_ZH#=)bC9R@T>Oym>*1+8xUrtf~B-dXzoZbJb@i8!37%tCh;LqjF>LFt!#v zjb*SG@@(o?znkxjnnpZJ)2_mf+HgEct4(_8!$}L%#5vdd z?iWU}LtGf-#=FpFP?>C@>$&PyGk&glnY&}Zf4sCad|@-U|A3>+l}OOvqe^NjTB;O= z9N=`1!6$+w0HFwrV#vSgr_@?3VMx=p1+} zRvlz1Tj&p+vt##eLkC;+Hn@g2E0k6(Ca7<2RKT?GtvVX zFG9SV+d~TDNqh*r7b>#>Viy_{rqI27KQ@Ql0q<;X??3brzHaOweKk9qsk&Wpjz&$j zZop{-EyEmb?4@L9++n;n2Gmmi0e$6Zpo-j*Es~pCE9|yHQ|*z; z8)5lZ^IL3|nHh^WpUdTq?rKP@qqkA>n2Y5D_Dp^+EfGWPNzA6&%Zb(ob-3|df38)r zwy3thf-)UcS1ZFY+7LL_h=QxuKQ>!8g`R<5%*wd5=_IM9i*&Mn$9@`*GQbqzM?5=4 z!d4-Eily>*tULS%I@yk$vvE_@9X`VY*je(;$|Nt$wPc%l29L6eB8N@J{R2F-y1{^P zA70S2U=MvI{G=BHRZZLc)hcAPXYyIb+S45?yDVifuLqD7&>G+6Tp+ z?#Z`};&PHXS-xcard-pPsJw=BK^bQ(itRJa=wPdHY@k&}-eGQ5rW?n#(t1-fSvyAO zsLeoUH9LHuc7dJrWVprr4Sb*ub{{;jMxut+WqjG1LVnVkq>)W(l+a@M3+W76@!RYP zbvyPyaU{dG24R_)-|o#NlLp*gt_D8B?}H_UkD#*f1{~s>!b;o=+iP2^Ql zs`Z8pwyKgA)>3rang|}#j#LDq&6T;L`2kXA0k?9BMdU7Yn9|bD?Ju-a+Fqrp{+k?U z9F3JWmd7UO)#VXdhB8wvuK%GJMpwDGH7xer8X3z=&&c1c6KcG*N55_CGneTR8q`F{ zv|i|$o)b?pm*D$!JMILt&>?&XZs#6=qJjm=iG|P{~uf=m-PcAjpxq=o!pQhOl2bpS6V(jmg{r?J;SrmBCN7mw@R*=oFi+ot=Ku=d$B= zG`goYwsU+xmY@sNZ4Nf?SiALf`bPc8ZYVc^UnvNSYQw;1{fkW*m|%US>&?cns5ucQ znTN?96L3lN1ZfGvc&$xDZcaACotyz~^DSU^VK~BqhZr2>SCdrRIpvCDB;!X`9UHHpyxMp)*^Zgx)uN!BR*}xtso^jq+6Zfw+MT{o4$()- zXgW{*(>kX)&8|iR{iAtFO`>0v`}C+{QJ1=uQgx91EfdYlrpI_f7wej=l-Vc{6)D69d4`C%|b)}s$-D&7II6N!x_mFYP9=7w-Nx)No# zIoX3jA36orFu%gd`axJ*gYb|VXYZPBrg8cjv$ru-pJp0r8>@_Z)&lAwYp5z(y|rUT zn*Le4WS{Bw6f2e361g8cDR*F-l?>WVi&>A2ujUL|$b1Z*8~sqgsD!86E-YuPPIx@q ziw4;Q%r1BU2oa5`Tz}BVcFxwgW9Sp9L{{UkTradmm=9xOakxY30*^_Jka%h^~5bn}*f!~aibfwL0&qG(+(P@-^i`~}dvmIK1{-y&;%$Qk-elXs! zV|qH6tEE7X_8n}|a)W1jd1gm)I>08QR|P%H74WMu6dA@-bkn?#>e6|rAovgdgg-$g z9AUTdYIYPSf~t5lT#t(3_wX@!2iozM*d!qj%PIC@xx^M=g>Vwic(2KM33WCm=<#o1?}8Kc}hR@OctOYBXKkv5xiAX|*ySV!=2 z^A$d3JVS1y0<39FVXe#y)*n`;QIC$(r_c*Fwc|f+G+nP>wN4l-Ov%b+^r!2z=`2Of z4<0EMK`-?#JELV|vy66ht4)la$4Z(VU{?d-lEz8=)QFE0gqL@@IXG>^15tH}sftN%Lq8)W2=IPJZ)kEZr;}>tt1k zO}4JZ3RpntXJ)A_4Z-l}hs=B$PtVvnGphb%vKC@1jD4()Rh3<$C+JJojhZ%b@?U7* zcUXw9m)^KNzFfG4rGK#Af>*|TLfc7_=s;&e7s0Y9rMJi-9<_2y&33)}RoH1J_Ai@PHfv)yPbk zgfV^tqr?D<_=TXKFbV7teu6oI7e)A^_$^nCYe;JIYwSInRJcwM;Zh+xoXsbm}7a^4cps*vY}=o{MUE_9~d9)DAOFaG7H%gkk>Ya{<{@~ zldO?=rsX6H?e@}TYdbzqzoKDa9qf*Jf(%>L6eFF$eC|Hz!S#Y|$#irT6({o`kw`)lhYWdi9br`#>y4iNEBXt_btq-PRzNR7L04Qrb zhlPxZ=%?`nm9svf5Itzem)CF}Itzl>0dA4nKp|eZiIheXnU2e0!U1%I{{ae!(|{zs z2c@L7aGf~c{%ZU2Bklu9AP>03r~y9`Ci0&_b?zbXl4fu%s$lcIf5AQ3GThzP7r(Q1 zpq-Z8k+eRrG+K)CV5#{LBpZd`J?%KSX2;3)>JEC%o|iw>-q_QezWOa=rnb?{sWrBM z*4`SbZ8k^g(~KX+K;4c}S`&I)y-dBTMa!yjY=B+4b~P?pDb{iGGj*8rK$_t|&CLYd z#OjCN&^-7#n2sKx@9_U9Itw5vk|qjQR#o@REbi_Ohs)u1I2`VNxVyW%ySux)91e@S z>)~!Y(_Q-Ke-RTGK|sK4cU5J+{NAeuya^O`vcNKDKGu5cX&EOs-^7`VW2QhoHaYYF zd#$^49x8QdFnWWc!xh zF~#U&(;N<%nxvLJWHOOG>O9#dGC+C12<-OGkqzD!>>w+cr+DU`Im<9k}s`lt%rU^C1Kn#wK)PAuNEp378$GpaPSRVT=H_1LD< z^UY5ET@5!GWG%bWKWI03U2H>ds6mDTpV|?*(620-h?`z6`80A^PKn%<=ORsHKCixb z6ff_8=$V)1b>}7B@ki%GMyi#qTu_*$_?QN178j#Ku zyG-`Z?q>VRQC5aFV^Mq-?dwd0b?y@KJWz_<2)-tXaJn!pcolcy#7-Hvj_dL2flcgc zU*r zp{#gMw)j)+20yK7BBrYb^0LT^Gm@*y@eAmpenEZA-=-FbMRJd9E?%n~zNd3|SIwyi zv#Gs#CY`@uR~EC?1le2)HD7EpO+^E;Ni@OJrZx0ZM@h6!K>ox#!zYmg_7SYMNXgn7 z>;QRAi{X9PkJ&)z>Li7O?niP9!zJpXN^1hUX*$$sQ@TGnac()MSaWw6?z2mwsoMi4 zIwxTO|BGg1*XVNS$tvM))WbIBS!{@xwHeqc`wH(_?@3a@9WxvL(u?7)jDpkRz5Pp! zG$n*loyB7LPz(}%HXMpw_j7N5F`B4a)}qC-bH?(rcl^yj$GA^y`p*& z?o@FlR=6sQ+--J=Y-ES{MHQ~Tm=@KE*Z{eg#t}==Pn(nc^mm!9BBib) z>&X}iVyl|uH`1q&l;|g{>MWC}p{k-hsOJdRzVsj2;r=Om+|OoT;?JkQx}?AAx2l3o zrjC&7G6!m0nb}d5haJ-EX?k0dekCdC1^NX_V2}Bn_r}`gCp6?m**SKd$7Vy^zLW%O z&}yMx^mXV9of7(i?yXAB;J{X-`CkN*JEwyCSRgc&_6$~}6$7W~VW$-fwko&n~RzHgLtbls*-A@?j(eLWG-c(B1iq$%mt6Jd_sX3Uk^A+Sa+ijch4E7eIb|q#{ z^@W^xXM9}fZ?-@UbrBYe;c&-)O0MF5`_j*DlH+%LCYs2QDk~nV$v)L%{l%(?2;j~# zQ$A2%L>BB)lG#;WXPd@rV&{0=F7V5mx1x?-t48B_c}Bh^C1i*ek@(Bq=5(9! zpgEBw1-)zgv640s?{2R%hgiBFpYSQ@2;JE=GSk8QyFhaiALlw713p>o-iO&($&KR0 zd2LqJiB0!8IiZO2j(Ds9RHKh!CK-$;%1inbc@R%sqQ}%1Ai6$TqN|xsriLnECktag zc+JS@NPO}zoYC6w9epB_U48R9A|LYEn;}zSB^2Ka=_%fCRo<_lN{O5}?fL5WR!_ZB zx|laX=kf}ncGo~n^-D>D^^vc-`N~xBSCD=F2$&~k!WpcC+vm;8Wi~isf*bsIC^~|=;Lo(8- zLt;DK$wzjZ>T{O^$XjO zoNxB2b$X@Qf@EJwHJ>(95%ye7=SOu@9%c8T-f@=>p)Zijj|YO!A)TF>SX~!`JA5_G z$h-11tbiMz-VDqF8$1NVLiuQu&{?`VxSKT(+~tRzw@!eMc9+r#?s0hG?7=nNh}LAq z*+;B|x080xGAo=1W`xtx#OAY2GTOxcv^~ff-2z6+m(a<-4nHG7=n&av|Ba+D&%Ie{ zyofK;si@j9E< zO=kz7R&XXT8K;{g$qe@s%yQZwxpx-bBFCMzkk$3cQzrnwcpn(dUcv%sMVHu*)G;O5 zWSy05Mn2=2J`0JBwe8IW{oIt4BkXfu+B*JA8_&;ZKYP!07C*DfB&vx1a=SNBZI0Yj zT_cZFT<^Zh>rYlCL_=9fHt=(+aX81l5RTRvuqS;T>86wVQ`B>DT4vVSWFNamdxd1Z5w=V z-m%g45T?-WCr?OAlMwPL3X{bW(#pSPr+7Wh2ye40=)V+|L@Ga#Y#+%Xi-v^=hLu*AcNfwO^b<9FF9*4hcv)PW{6en`NEs5mr#tZDR6RAn|a z)PQ?|?M^-SquYV+4D_VW16iPT;33K6mVn;;Domrb=~*IZ7rU9E3c+TXtZbVZ2R}`B zyUVuIOUYb`*O>W#!XfPUskhDM@T!s428stm|}MtbOc3R7t09=%G6p zZ##VAybDgoJd~!4MD?aN_ydyRb1mWwVY?Z6km*sU3;b{fk|z!!nXoQs!q$=q$pm}N z8u+17(S@=v?IG^LOg{#-kzx7-evkJevB;~+`XRm9Yp>_vZd$^hhpV-Pd@RrS4^?Y# zm7W_}V-`hP+o4`|d&y61>Z7WjTMv?1>}8Pz_KJ11GkUB(se=5F3A3K0GD|@_(^2dU zjN}6$q0MxVJ~)Y>nNt}!_T&+GhjnBxIz^{sTB46% zOr{@wkF58L*gwT6-ABHV=hR%WO8@I;G4uS^CX0|dy`x0`Tra?>4@6SAIuusd1AhS^Fo zhCM}MV`>6raeoCD*qsnhK=x>(t7?! zvKO5$-B35LEK|t%>Y9I9W%r|W3jeH{@86TtMKi2#FM5;I;7D72C>+uI!#{MbND)2K zORlO3A*!pSBAsdKkFW{+X=IdN0lta$a9Mpsh5L{lZEKpgq=Ie&j?P1)bq}Pwe_%3I zYVheFWDGB3A3M{GaF>~dffIIMU?XgCXR#d4PhOwhac;q2*OC|RGjbMrwpUmm^yc}Q zq4oK8DD5mH>zu20s59OEi#s;c9sweNuXKIs3ZR(-NxQtiPo{x02(Gkav@M4*-{uy;zPM34^ zLQxUt?JLOze=HOe7oe7`1t(QeQqepxN9`k>9ERxtZK7_vFn_#L_9ridDdvKq;VT)l2eMzf93QovS{slSe zZYE66n*{WbeMnxBcji1aRRw8Ak(=K2UO-bX3AFMa+IL<9B+y={TymZ)ry7bks*Yb) zXTn-Nt>~?H%5^F$ss;JX5u_^4dtXdVFJh|T%;ABzPUjbmRT9-uDt%8ZvB$+`a!TZY z9P&?Ssg9F!=CaLA)|kQYR-@vsE3wUH3fpdhoh2I5U>*OImBj8i0Y0g!Bw64x*^Z|_ zbyKpO&R~9v4Rq4d`_6pqIxgChPP84#N0KsZ5;As+Xm-+vDf5VpH+$F#!&r06DKge>Po;v_n8lB!@-N9+e&RPxV?RFc-wXc*g(0|L--cq_5AaggU;V zs*e3Gl95uPA_cacEvzADNUV zB;c$iZ=B=gg);=AoOARdYlb<8!tr2Y;1Co>XWEP?hWyrTnlDPR(!OR3En$U8MaT~Ytb$^?Jv}K~(p};M zeDWr7iEH+_Nr&hHxdU>o2KVKU3bj?zJ>-3)RLBmEc)=T(+ocRKTXJm{`w zqXKIv4gE!1M3tt6V$GptVijUFqjK{-!B);W)I(nJyKW(--DLEmdki|bmw`DsX=-+! z{)x2hZF`vIw;R|C6UELOg#>qdQjqj8S%9cs`24=&j5QX?7b#&|MamoEeNeId>av&E ziyA>AZ?@VQnXA4=BJzt@MgAq0h&yrvGNqloj;2TC2-X7~4Bm02tBTILnL4M&n2&M^ zDJQ4UPBMhlz)gNtFGGD|DceDM(2;a6Oy-+$R`nYix+Uo$=M8<%OL4|CyEsD#R-vsz zlopHXOlM==(=ci{pBK93vJsrMdjz=<@QGOo1U6xhZ%x1ZjER%0( zGS!18)*f$R=JHcGPaFXWSQ|EzZr~UT=WK_#P7V5$C+8dZIJY>T8l1w8hXgGZb)Pnk z%Ef9$#Yc}`Kc{K%i`&sHA6$nBXg~HV*qdewM#E|MDin8?;+y(}HNf5XF-hTUvole& zT+5X8^RD-!WWdF>)I{BGeEB18D3 zm=PWznnpVNKO@&M&!%QLpWh>9u!t8kT)z9gL8ggGBg===h$3FZ`$xp{I;!iDq9&L3 z%SQQmp^|70hvjk7TPG#Ct#6l-c;qN*s1;~=lAU&dt65f_a=dZg=-AZyBh;Lct1{&psbcAUUwu-3GConluT{kpi%TjkjevwM}_V z`;bN3x~ME!o0qK7y~sv+isTkMNZ31NsaM2ojI2`yy`r+YAMMvc7UZ@t5m)}{{S+^} z7UH>|)ep&Ck)CRDc!vHO^GzR!xu_F`tLm(gF*voJAbZN=LZDiin=}`v;2gSfF32IQ zhwi{y+J!VWOu-%KGMUE~ljWR4d?!7<&d0E5_K{Dft+2<66}*o#=vcIW)ErtdYAS0S z`pMr0TDgC@6$1PCjzDc>398U1foG63An_z^Ll?6w>^=nfEOH;&?Uc@TJDl&rKFlSn z$yrj(EP(8)7;P(ZP~)|PoL**9(pznkV~tu}oD+@YH!rUG7@4omV&+MDueth;-#(r= z?$?qje>$?ZK8U1Cy zzyxRnE9g$L45zW5usZ3)^3wiT*{*;TPC-y^a`+Og4}U~Gg$hw8Xv0vL*+6+`i96nH z?%WO};=6+h+2-IedLodCG4~t$!ItqXG=uY)EXUdIE2o$3i^P8sUV${Et)VC>Lz9^8 zG=X|cvx*bwOXT!@WC7{!MVm=}a%3Pj%7wCz7@{`%rFAcVqeiwF&-xK6p-L+A;EsDq zAM`%!uHIpN#>UU{r`Uhsd|`D^-t?q#D;mF+^_@HKWLPi)t*_*TLW%gB84LwAIw@)#ub8-NNo zBwkEHn>xHyL*$AC@2LOIqsVAgiu@9Tk?GFjJrxhpb+E(V;Q3-eWQ6J#?y0}TjMgQ? zv30Y^P^C~IdMwI_C3pelNK?`4PBwe*;haC3GFg!hSJR=Dc}2#M1|$=9_AlvM1E~2B zmWjNh`RM>!k{`#pUI5MpPLoQZ^zdIO7i|>k$>Iga@P6(LXDV;yE~by&%5WLI3yJU? zIn1w9bRw|9@R=#wh(9+w`B2k~2W=vjg4`k@C}%puWmyLX`zhh?$a?ZDW-T(j@y*#V zRq5T%t#$hWrrzD8u1hvQuP}=!2DJ!C(zwy+r;(m&~F zti($okrfUeBYUDo!@*c<=#*GbS^uc`&ZS^E_mSH-@Rc_VPGIwcu~_|JM>Zyqo+ojS z;S{ML_TR6a%do`#2j06UA&y&x3bvXqfw*i2s!jWKX?{`W;kiU#Ho&h&U;B^ACy~!4 zRt0o+-3Tw4&nBWx5@F0`QOE3(Y4rc=@f=w3HM7LOZNEn***B37CZ*rbB$l^yS?%Zw zHh^=dNwOe&D(7;lAMul>JwHOuux-?3jc``k7OAS^IGa7-Or}ko4typrkA26PzjsjtcW!CIe)iA#Uxkf)kfp*GR55fWREVjj(}ZWMMv<=a7EZ+0i>dx;WxXq? zIOHLN{n=!oXie@&WvA%@HkW;heOCih8Y-Km@Xd6BEMy_s1pWmY4~F7iLCq zi9H+KNB+W7qj*5EV@@weuyyER9~jsKPOv9ByeC3>cQ}#+2VgRtNfW|qmIZ6rL-s8@ zYai1Vq%vfLzwK7|jy}C6A_kohK$ArlK>A31ayv58T=B-Ju)kkal;!-MYKWIl@AK;D zy{Ho;mi1*nb=RM(vw3)zWB7zg6kcMwgry!C$)ywcjnD~QT@vikI8F=a5aW-AqH-@N z)evr(ZlpQMZ|~vvOTm(vHEgLVhx<Mm}Wq~ZptCJNG$@)F&vZqUJ|1RYG! zgGpzRQRuNK%~z9&ycU$=qv!6+_TW~Y#Jk1`Jl*$}TJg;Qq>{h1DT$a}ck=fb=^GSP~0jIW8 zV7%B3QGOrD;hiAgA}j0$uc)bjGd-$qirl(Bo)$Abt8vJwhlsJdg{p_l)_-CR@=K3M z5q~=r^MAo9eu zH_cg0S393+d?$v*;t!nsj0CsSPN5p~SEvsC7P?JmgzmDv!7@&&z()5IzZf_}7X_Pu zAG|@92hWqSfmCqYc?0)ZQuZ1mY#b@Tr`vn%w@J<3nAmiHZAj`8q2s_zISwxQePN>a zjqHg8NYBVEMdU2Q9n75X7rk6mC95eF*bDthTnvDuLO zxap5l6Gdt~;cFSEz|Bt9P-fHY+CzLb;RE4y(}&N z&>(l{Xwgg0Lsvmwc|dJbDOG&~NFYA(7uxDbAWrqW+Myzzy(j-NyLB6V$(~2LX^Jv* znwrJ-stw4)&19oZ6`cMrr*Y_EsEC#Ib>_lrHUWmQOt`LqoyOXw9Cl*m;cB28R0{Tk z^MT%Q+kFP-oab}_$8Ze`jH_nbY>YI2*`A{*E_l8xSgZDbEEZO_u8CLTSYlfn~SiR>^Xu>$F? zXX5$4j7-F5m_CxtMu$VDWaN?}UTb;Xd+$H;4|s89B2UPGS4!3QR!Zv)6gfl<|AcJd z{ZzXmT~ME_uj@r()LZm==kTAQ=YPA%s#p63Yytlb5()|Eaj})Y#9FKkdYJ4zmB8 z56CjTBukvd(NHP09a!$YS{!p1kv}h{N`E^wu|D5{mtyeiwi+$~H5V_?*f2iv3{iBaX z&g(9b1$tHFu^R7jT)ib_Mm1KXH9k_BC;iNjQ>3M}H=v)|qT~S_~ z7I#M#sxqm^jsf0A!4lCo&Um;M$Oq{|4d7YmKE#RIOk0MovMktNE_eI8zj?aAbmqI0 zXdm|}9CaR}w`(Ex&|A=zyO~ddOin!9$CJTOJ{E?vY&0z`z^0RC{2_X;(`ncFEIacq zvJ4w6cR^4kAikPu3Y#vviQTLswzj%$OR3MMml~@*bxR)76~t)FM^0t0cx7!T@2KhF z9Y^wM9Iod%ayk+R&&(jXhJ2RiVS;K%2j~U#plMHwku9(Z9*}di6PeAH5SQ10kE}N> z&dTv=w5@v++67y}&d>nJ6;+fLjq1YUMUCR^LTj8TsVGgl$fB@7-GW5sBCNF8aHm*I9^jPnJ4*(AFm1gEpF-QQ^{hKqwu7Nv z;5msM+E0>3WrC4WZy*QO1&KnJSd+k2-rPCwG+~omOiOn+5Z|dnej)p{omGN@Sotg_ z$yr0>YQLCt$gMwO9c&+}Q2AX??&Ewmw)%#5A28Yv`Lwkj-m>iNGMoH zuJZYnbUJ^&Uh4a*mKZ4G%8mYS8Rc1ZBfM3o4`0`b!&9^f|Eafnm(^{dkhRDwGuZp$ z6UiYf(;MoDMMpP zK6J=7h>Bo+_ny`dM6+7XLEfG1#I7T&I}d&F&uo1sKB>Y14$!ZV7sldy@`E0?`B)qK zj5fC?;Gn%~+mZ=71U+RXtO=fy*65%s&>5urPHwUJ_)f|O5IzqIV&oskABHyc?g zM|pe1QmpShk<5#wYDLznbz#tdqfT%lTtGYc=T7-)<$l>1RoNQip(XMv#t$W85mlNc zH#6xxy9Zrt=^z*VLc%lw5=c9s37br((M4E0qsf)$`aNJ6&IA*>PpWfKG3 z>FCCFlQ=`%;dsAUJbKWr1!>$4aFMeQ??mN&iH@sZsa1BivT#6MVng*?{;#QnZ`U6Vo_o9^Q`jL@ zLs#CP?67--jdjC(u`}Gg#4`qK@*g4K>tfwtD`KBz+hW(^Ce~EvY*Y|k&_#lC0^#6g zybmZ7j|#n`ErVTY+Q5D~+!=#f^(cNBN;+-HcBi^M=xi`PA8C593&_I#Z4aAwwu5Rz zx{K~4nIA#UFoGQ2LabWj<78`t*e5po>t&Q*T)p(#s;20{>?+dAW%7l;RUJV`$&*L{ zGcnQ<`R^Eg37M@jsFXBUcsH|YfV_AB-_w8OW!6zu;4gI_%JykSAN5_=X{OLK&p(fy%O_({d0Lf_c*fZ_M1ex zS;#3Kwx!r`q})fr3*?91+BPh!D#PO! z){uT=9b~slXfl(8)zSab6nY;r*0o4JGt%JonrgbmygHn*jPTLHw3p7ifzL9rToc|aYod$qpYT%5HLfCid5^_u(MAl= z@x@z9#Bt~)Br;n|Sbg;`<7NQ%3%6)ant{Gx6R{Wh2d?wPNEYT`dHFWJmGy9c(jviT zbVsN;oe}kgK8bq5`b7QWy+S43xWScyp)THX#-9hXv3kKiv{PU;t?TAx?{RXVX)#^| zrXc};4zltc=)g>2$)@Ry4b zsK^oTf&38Zh`9qZ#XWD09})+>Hu7|&j=B~;sTzmxsmtLWDz$f3{_@|8Oe(GDf&QA) zIBTCo+lb0+r0mDq=+bNr)|fjWJFUffKx?d4V>`p3hjSm(qgL};yf2b<&4c@JhS!&l ziq(^Pv7XSCv5v8Mm=^LV7~B2N%^xV}Bo97koq{nGf_3P3oOM-m+S6sMFDs9=d>%-G zGtUNGm~(WPi3g`mPutB7)r^#pgE7D72xf3%H60mkyGGvVw~>yjxZhU37F$Jgm0qOL z%lve@6Ye-5UdW6%>8px4*R^#OzniJ#SF-bPuPrHNnkjOS9;+{^y>^f~hQ75jthpM- zi|9Vidi3lTC$Etqyvo zo$fp&&7J!6Jm16;@+o`^`-OAm9L@v|PEMxI?`m;T7nW6&tMbZEY9;oS&5;plg(qQVSxdK9Pt+Wp zNHsKB2!NK1^HKNxSph zu#0PS5|6W`c^CT^TV$hXDWXYM_#5}1W5^k1vg_zp^90_Q_hg0LXUmf6W-Pg*c9A7= zISI&|V!mBH6)CS841?-PJrcP4yldN0lMjFm*Pi zr0_(3Bd1hNa#**vLEF(RBx7_YS{Qv5hjkvl#kA!IkY(CI{$U58IXyyg7Q_<4X%>We ztQC}CX{e=b*;0!4_DPm56(mWvzO>t8>TDmb|l0Pz%*@`;o7n_rt`6E1lzO50efvuUg6 z>QCmpYDUVc0nk_#rdoBxcegb1%{QPTDF-d!G|50akjAtr$xWk4419whNDCf?m)s-A zobQj_`8OOX4j?2URjOw71wNg|B4A>FOtQm55!+1hlLuk0?_ z6o#nIw7=d;r5e4z z1DPOopayO3?nGi~6HkeI&t6&>wb$BC1t^F2WzNN(ts=VuPoW07Q|{9|q!n9khp-Ar z-Hx#JX?nt83CU~UlR7#X&f5z^HW?3=ia!Y6#%o%MMY@=LswS$ks*4^hyXtF#Vfw-? zbyxn2^iL7>UZ;>P3=_-D9RH|s&}EQ9W->)p8$CeZP;u>CwUabc&yWybg}&0f>@(iA zvfeIdWDM+MRRYoI-rGtOx-NUhOS7r05z9cQVW)bCwZ^|AXayaF&$S|^r5z$j z^pMo%4l%MnNsM`01^u6U;Ke8s|@4MVYysq@}WB=uKWn2B;FUIcF^IvE!HMmATzl^ zMnM^}ndT=&*-}yjwUB>l3?!rJu~L}MD?>WBH}neJ1~*uW9toVHB(Q{KMlW)r_SAo34_yP<*9HDQbdP37 zA~>#o?wwb?@U1>4_Nry7rz&FJ$|-g+W-l;Rm&VaQXl=6*_1~wkl{AA`G%dboZ^oap#?m=SYm%2;=ovsG~kXc8PgNVk5cd zkGF9}Df3*o`jafIzN=`=`kR3>uf}qhZXvl&qVlTdx{I7+_6Zyhi%VvV-@q(I^?iZJ ztTD4&<-nO(1W(T)FkLRd=`Ufcl}8WiQ>Y{UjUMcoun!$)y;%*i5Z%hV*d5rylCe^3 zG@nVe!{~s(2Ur~}OVfnz&?mv2tWa_H`UWv`7 z2UrqxCdMYk_%bWmUhFNCkr}X?%tI&C0{sF$NDWhPe$dKyVJ3Q;XL>(OccjoJi-hPH zc_DtvH-36m7m4PUzLrs_b)6MsMN7HbkEb4a7gRT|m|o;%)J>6o9w@%bTiAV;)+yCW zlSf^)dDULBTm1>_|Nb(Y1}ecTQiRSYA89>wWVgqa1W*ID*u``Q`v7IoC$qs_1+N1` z;Y@HSB*LtwqroEVaG()y;+AsKVqH*y#||829RiZ>a#J7^dj%e`w)7Rvfh_7|WKSwH zkF2J5$tCzfhT?qo8uHEYbU~yx`oJyG2AQ-@q^7?Y{l5wHMWoW-i`(KqtW3M3YA{a? z$4^|*QSBGUWM{cRl*V68jNIrFz1W+lmth)d4*!OlEqbe7I9;iL2`g*u-*PXRDn~&z zbpsmfxzN-^lh!s5nL=uirEncjxWAzn-GcOLYML3{!*$6ho|#m2`;&En0CJ<3U~F(C z%^A$VQU~_4Em$Sh=dGN&NO$$58Qd+nHhppu>8zHt1fC?QD3h)9sck_A+BQ(g<|N(h zUGv#i(pgAr`Q5Ja=h@L-dYjc7XG(i#^uOLB6^%SoQCUDVP@8>?YH|ymQf$&vtkdaL zB3(e=lGk-l!7zm>qnU`V_bg(u`5|fZZaM7D#i;wH&2uG$o$s2L~bs0wnbOpLqcW#x+&coH7ho#hN28>a^=R8yHjw-;A+ z717ts5@*bQQQe#sWp!IQQ^nCsR3rOVrGfLq#+-enO|mSeZaC)v?#B+{94aR0e(hmmZgfSF7RsqG}aoJLLyPU_>F z#kH9(wDjYSFc-mQ>-$j`V^-y;9I5`DHUF{g7n`u)3v52-|v zIBK~!OFlu;t2`!)#J0Ia0+K^KCBMWbbOYipr>i45o{Xd+iEU!^&NYBoHa9fI^USj= zk$bFxJ)yD*od?!;e%c&vQ^fdZW8)z#3&69!JA}ONBZfDk@D)g zS6u#$9*a@(7*6-L`2QiHzEvg`aph5wS=^Pl6RC&Z5k17asatzf^fj-ZzU!ybyc&t!S5y+_z-@~+veLT0kG*ashl?x;IgcQ?Qn_Z@sf zeIz5QSzmc>_8PO|f6x-nS;*#0CVTlkn}&b2b#d>>Mb`p_x-=;{f@IAR^tjKYYi&GA z$pbQ;{9%*A2;Cmys-X~t>vDxi1_IMtUdeIxzG`aL>&|+bd8$U*=c+vEq3e;dW~B|- zWoCtaj~T2>(5=;5Um?x)19D6+C!0(X5^V?DllY!Ygz;t^9c!+!`{o>PVIT3tI9(5- z!V^ZH8s2Wm;<3TBDa(rWz;N`HG-Ew!PJRy#@Rra5E7V+gyWm;3AGCLq(wfd84t zda(~WwdktOi|nc!=7@ilwPXX;Nls8H)F?%DBlSRkkey90`Of5#jcrXi$i9~O>`^t# zT+zf(yB6n$qxBrvrT5Y{W(-?w53(>iW^X|sT7iy6clTqm6rC)^ka5n(55Xj?;Ljob zoSin{yD+n6033DaK-s`gG*>2;YJNbgFO2&x{WVt`u{^fTygZ)C9i$dy!n2eP- zm$CIG;h2pAZ z`T~v7g)nQP8~bQGvm)TIrbwVwXTPB&UjbKm4_MAu!xNT{O8TAl#pI@H^qSL%I)Q&^ z$3R{B5>LcW&N0fJ>MRBSf$r1hd@^+AOVDrG05kV7Rhb?oouM=gCzoM2o*f-*A-ctW zhk`hXxl9I;2FR;#gEjgbNVy7Lp+jI4`r9{%{#b#IG%eK#y-y!dFHK>!$mUm9>?+k8 ziGd^dw0`O#CXOC&3#wjZw>(WY%Z|ii%F9}H+Dy}7ecUY6Q^-Nxg61`i*lE+26|!;J z8O$k|N@C$&SR10)5o9SF;QrW&{GvHv09```)aK3Mth1R!yERG0Ku=OSkPrwu*cZBj zUUZ`PD87V0MsBz@G~+|?d)6a6*?A<>o5C~t3qAu*K`<{Q6UmR&BcqSVDp(KeNkz<} zt3bEvW0+nLA6CoS-w5vEms$9a1`GgxKUi*-rW z#MDIRVJ*?ctit#Fpx;!l5I&~HWn3b}PeT^A6Obj*) ze2ev7JkwO=F+-hxn%EW$M! zqMxBP6h;-OJO4q}VpjS#H!tJ~Gy~(_fVkK(kLOd_1)2h9c}&sD?4hRWJeWB> zPF|C@)O*ogr@*dyjsHbitcbG6@oKhOBgg8}Si{EiYnXms3Dd{Br{8*2^-2GtDkp2G z9Qw7?m|-=L^pSHgEhY^e_J0aa|3@0*S@f5kW|CsU@-sY((!)KxwQRd-j^6CD*sZiD zRrxIvMgsAz`yL7grXtIQ-ZQ5lpTIL94fNR=M60-0Aeoy08SceoGI~;qQ41@uVjK=_ zd0kk@yJPB*GDiz@st^47TUY|Gjbb`>^A)`&fSjN_?ShU1*+KmRG8k(v1|D>o7`zg zX7SkA8^=XP=5KVQ<>vpV?8ezS?5=r5E7?JG0s(pg@}T=E0V##+e?Okj_gG=noIqBv>cLDOy=s0ZZb?_1b_8{$z{?*Fn9&Kml!*sLWo;OoP@LfNK zp}GKlsN*56QU%UhLN<_y*$lnWgVx8?LO+_ty8AGHgKEM{+=aW*JaCCdk?P0|uRsp7 zB_`|t{g0N3C zL<*prO^7LW_0ijN#uU}bNL3vnuXPbPYA%v7_CI9W))`6SAdj#~{tXdKoh&79k*aD4 z*`QzJBrUxSVPzAI3_%gT#Ju74>}=kVbY^2A0nXL$kiXbwdxq^WnsrClSst4m)f$P; z?Pug0&4rWKw|2S9$*Mpb(m$X{JNE*rSZiq&R*hYNi);+Z!OvOFkJyTADrrYQ;GgWx z9^f=HEBT0i#Ex!&{Og<{E%;8@Lr2kMkd|%53aY(1#|G+_EDNfpTlHaBV-AqT_PiZO z;@UoN5$n+$$O^?H`IsSvaXp_R@1UQphUCt6d=tOZbNV42VH%)%Ukjb1xydM63TvIS zCYJNkq;|L1>h43*2K}usSz??_{bHG553f$jITvgbhvPjP#V}*zPqvW#?ZjeXcLXgE zOhR*^7Sb|w7+s{tSku5+{>vHZ9O14z0-fP4X)9+k&PRHn^X4DCi{t^j1fO_%RB79g zB2ES}7ae?~SVq*c4?t{Ep5`(y=}uLQ?U!F@LFpl>dkE>A)|mPe$22iUwXt&VbMHGt2uimgAPrJdB1kBb($byMEge!ycZWy`{OK-f zkVZnfB_$+e=Dqiv{r&tNo^f!1nfJc;+#PGLwf1D!#uc$e;Ck z7uU=7u^Ht|I74+0@x2H;n^-&9+_Hb^>u#I6DqG~ZdLPE>JeLVn?;}&kJfY*K zkoFrM6=nwfBCT6&e$JCjOPGmT-|K2YDP z1$wGQhDOgyry!#Cg*&CDb8ey(cTH7Ka>%VPi9R2ST4gW5AnU9q>%~$P2a0xn zMpq@`Z04Bhu2sx3`Gsydlb_jqZ$9y|=+|ChHYZG#q|AY4cp}HmJ0|Vt;Tcw^fDj+>NH3E`l13e}x750@ral{F*FQ%mt6BJljENuYCQ`q=4weRA+7J}yx9D3p z6BXu+Xit|s7-qAE6T=?%IPS-fql3{dZkLA4E|2o>N(Mu0M!PE9?qETwS!fNa1jdXH zJ~6|?UHEUtQkOJP7t|6tssD9@%`g`=^IaZT*Qbd1_w+?-GV9e)Wh3k_ikYd(#=b(^ zJW}_Llrx7o>rKrgxJw=VN^qkGNFF~oT%jMu>e}iI_0&zKclo4?d0#fu*A%6{yruGS zFITEGE+JgX%sMW(r#3`us`sMhrDODt9U3gB-`X5puo7M9rbO$=*ywd!GgiwR{6q8E z4Yr(H7rsXy@{1G<3ad0^|7h@m>ST+GxasbQ`q3SQi?-5FD*s02OXHZeDpyP*!(JON zVI;4g+dt};grT&Rt%f(?u{80f_*cBj{I|VX7b#$p#^yE0W1TJ(dr>cnWH2%Q5qS6Q zz2thIS5KaJx9wK18c243dqk&qGt>?@PsYhPH%?`6RrN_*L0_O>$nQRvU)?7#3m$}} zrG8LKF2yI7596n~-tm`gqv)-$bZ|X*0zYeaI0Q_qQM9vL8LjM^1ek*-d7)}r7?Ul4=`)Fv22v%>^_7JJ7p$2n{(jlHf4k8u5k*<}Xk z>g2iiyv_2NiId(stxlpl;zuzZ&%+h)krqcvN}3or50Uk1J6*^MZR(-;x@7iH^cnaxeRnEwS$rB=V(N?j{d1q1aDd(D#ux8JjsO0uE>dkR(D{jJ>Q3DsIp7=!nNF*(8 z3gBwB-;Kd*Vj7wBI4+-G>eDh=YN`jelj)68U@Ey(y+P8Xs63)_Zq*lMeYUIKnm}U zZHf0xA+HZEP`xFyX`|XxrQmu3XY{Go@=7mR4DF{w@9PsKY#spdSjzj}-1 zPt#LfBePARHcBO<@Tc4f($-&(4Ew2;VP)AIPGN4|(A{-~+)=rQuiH`dk{{swJl)-v z{8C<)$VV=ja^WEEavS`hCrg5`gF6}iV*9w3wzA4#+wtA5>jI%M6T(>2!LHSf-Aa0f zvSgFbVdiFa4?!@JgNdA1BV7r#LYB(6Z1Fg5QmVb)Ot>tc!uPn0Ltagj%-?A)!7IHA z^J0q5;E$)WtqB*ulpdqk>(A9%^9^3A$I1Hh@l%a+%kgQd?6p#r%_B~1DHOx?bP`uW z7qW-o0{(L7zvX9+Ic7%)$+e-1!$m9@o$JTRYU1IwSedQ&WBAQ%I#7CrH zbUbdd>+O5N&*95pJSx7U#O49flyWe-RHg>$)mHqt&sdyv-DF%#*gPZW!w%|OJ6r9y zojFfeWR_!RnyT*D3gCLew|IjFHkBVrV*jPu;N8>9sn)ZRM_x*5zXjar5)zvF@&$~v zWH^aVlT_5L?|ZM9@8@v!y!P&v83;#gmrFs_{2Fa(#c(!VLp2p2y(g!lO*pe%aLP(& z9qvT=T&3WYs~jYxCcWdDhT~i+`_4YGe}`)w8{OPCR5Abc(4C?mxPPO&>_0&=%SjYP0*D8O#vo z-SEa;S(90c>MF8{jG2k4`wmdHLBSUFeYBE#8NXQ^J`x+EtL)97W>^djTN{@oC@qxE8788T!()!8#_u znf23fjY{Btl77<7y;TXhV;S5oWAI$OO`L4%e4fa*`o7++`gzIJSp17RM|Ml9n6Fi~ zm_JpHNOe8TJEEWJswOG(+(jxhMbt@yzb0MzB~?TxSA}uUNb7wgzj+NLk-rV0%~j5hBcCUxMk{TS!Yw)Ema08e z^0sd@!RWP9)feRw)`BOD=l+zGc>zIIU+lt%v!Vu6V%^kn)b~ilSrSU`u-fhn)xxyRIk_<_^OV?J7kFIhy&as?+qH% z)_y8@FwJop$)t9B4Pm<#)Y!Q*H4S@6#%I#LxS}%mw=_Lr2z=sbXOw#8h=H zx<)>Z{^0(JZ*AM7idhxx3tHOYpgNxixg}MQ4>a?fJ5G1~1M{xsHba<5z6=a~_ZMni z^dD&&bb<|=gll|;gYhLdMBjFn8YG?nw+!NTKHkn`GIt&ASP7)cSk`hIi zgEXJ_%JFBt{HwUV6~on6>(Q|d@fc_2O!kQoko(=&iOUd_!U8Ralja=9k>juiW`)9~%QZ%Ktbx0mq`hoQvOwXAyZNs>DUh<5_;#jz+W4MisHA^mi8TP-5mw z+{6BoZ_PtyGy8QS)x!*wyJoN$@3HJPN2wH^>D0QNHv^{q3a;^AH6G{nW$0l0#!T_n zMo#Nr$65c?(NT2JOpnARh-&E-R$)u?| zNJ(N;G~-PzTgFVnjizX{pc+q|H?oir#m9;)_V*_!3|ux2OO!yXs+C`-3|d-c-B7=SJHv`~~(D@$wjY$mISxwZ?3~ zy{D4#)H$;Yb>w}iOTy=!gm{8Y; zw{<%HeKkM+zS|f-$!3pc;2M`khlRI6SylA9TNW)Wm4lV;QP9M$2zTS!Qw|@>`tg}0 zd;A={M$XD4`jZH?;cvE$9V17>OjH@`%|ZLzo9mkJYHpLG4-qMT)~U>WHj2UE#8>@= zd8sBd`$%tEn_fD-pHZ*Gt!F|^I(;@~o$eoV#_Wzny$$|5zm9h-az%d}vlQ=`H}YBJ znk?{#D2-0)#v7M-OtFbld8 zzlGc|$R!Gj+qz+P+~iM?D;tF$sA{%@dS(A7ecTr=r`!$`swClNT&(ez4pvYfrcrIe z&n1of#(k<_0Gs@_i?x@aLYc07FS|Ly zQ&+-lifqvTfI?o3ZDVRBsEi`-Ykxyb{m3Ifc}z*K4!*|KW1gvmF^$!d$XN9hX3!)r z76fmcX%BPgj6CHcbDRa*)l<5CPlZ& zqFJJW($R`$OmvZ{A5=3X!Y;a}{Y?Gtl>8-u-9fG@rSI4tx{E8SKNs9p)o|HG*XhhF z_nF^Kl16F}f$QlQKa;5eXK9G);Kj&WHq>l2Q}n|bfB85OD}R$7Yg#2G*M$##kbdvJu^?E{iIDe%GGcWY&ta&SFAcV zp=o5V>wHdB1F`rZMx?NQYY$Qv7B$83%(_RFniMzKpP1n{N5;8}k@k3m4NzTB>^Eng zwF6ep=hWMa)IKI6%l%ak}N-#+F6J_GU&~9-v=tIidUsXZ7LAA4^)eWZ43+cRj%Vt|o%?$rhIl_CY zIsWnU!aQ;z%;h#QyRJnK{f~MU#_6iIggI|5O7>NHzRO5m`MK(#N=j=z-ObT`-DkK< z&roOFF{(}H(&;wtiK*rq_{-c{c5P$;->l*tle0Lgd}0jT(C2iFX}l_Kfk}qi8P`cI zZUeLLK}@43xwpCmHEdTm!u;XZ>P+&ps!2upv*dJ{)uFJN+7hHyb%I(lH(10xG67zp z)$M*eFw85@gNk%jE7Y%HBh}JQ1MP3-61qRbN6cqeN|)$5c^2|a4v*aW=B z+{C_(a+`jtgL`FfyXj$iYL=Joe0*=b-mcrF_-wDnWhzB@IQXC4fN%I-+zsIxs@wQX z9*X8>GG9(2^dw!~if}D%TDerWASxY#d2%MGEBpC=ZQwwUQu|#MbJ*4OlE`Imp%nH< z;*-5fZ}1MAW~P;wlBcgfn_y#~7vrKP?ghb6n}?5@LInW$HwiaZ?@ z(^Z2^Y9u}5{P16!(M7nPN#VEjzn|*H_8(o5{vwM!S39J!q*4d$r>b69T74O0R1c$j zsM|A3Z+dScxsBo{HdZeQFPgXEZttPJjp{i`=*j+KpVUiwqPH&Rz zy0mVk_VOB^qrZRQ7n0p~FN7fwRyF(Kx2?eopg%~`Lj4>3 zjtOp!KhZUhTyQfY-}8)(RtxZSy$P?dF!S{fL6_s%boJk?UUk^n1Ju<2 ze4Jx4({H6W-^A4OqW=HjpS6uR^)0C0ZvT*VULyOwSCgF57&n4tpssjZupcCc8)_!l z?@dk6o#nPVn(sO82$RS*s(8>!-H3lAdE)a>tEF?-X#!fSNuksFxnyPgzhkzErmOwizZ{D{()SLPIR?`MYeNT zF`Q?2M;p6}@zY(2xYjOwx5loGI}~P${u$&6lLV_k5I)dfUzrxJ zvG&xLa5=KdVAIhRr5o$#J#yLD08_^t)6-E!XV=ehkf*36Vja3iwg>6ZzvW>;6qOXVh*tmqM!xk<2!*4v_L zKrm2!8ed#Ze%D2^zZ>8#yqjbb#P|*?6PfL*y+LHrAtp)uvuB%1aqu^qSeB-W2eHZBjtT z>NnEd#7b&!DIMnD&5f%dIpRyYVr;qmEyxkBwv&VJq;D{f{E+~C`dpRCc9psIsr}sb3=>ML zV67Al&a$0-l3Yjg)WRikWmPwu$7Hp4yxO*Cq_}%ZcVr`%RKG|eGsmCoE%xI4&0I}k z7$48|ltZI!C{sW?8p}`inLG-Tt7Fk? zvMxGN#s#sWZDFP(?QCszAgp70gw|VtkKtE#pZ}vv%&bm(FZ3?`y;qg)=sfjyc9+jT z?T+HKk=2Xp7&DTdSN!Cvcg%em8=Fq8iJgqcXnlR%?`iIvdTeaj?>&SqFu;!Y4u(rn ztCrEf+MBZ3{p8k3dD|Q0{2fTLsF!GUwp!s`Pj0CNqE(pT&6LA<-0a71qITRTE?fNl zFjsU#uq@aSZD}vZpW*47$5x9|Jew#`!ijE#HOzt120yrd@!g2cP1s&l$Q_TLY|G#43oM4krYWpoJn&jq3H&ox2jbKpg zB|jdW@&1Rdb4+fRD)yl}8xzRXNN)W5J~Op+N$-Ddw%09e=G6$En#n;IX0FLVA?E9` zFgQQZW#}S1Qa?9$70d;fg4tSs$%+TeZ)!?FClLPuyYz~vCUH-25?#wKl7(S$aM(+{ z>Sl5&+E=}cE>n}3EVK>_xliz(^xco_2>dX910D>|rF~p^$rzv0jmMc_dKe#^cNM^g zUPc$958moM4sLq!VFE9X4r`a2D+?u?+XNysRL>4K=$&D1eTBQfS@y_Z`U`ml=eu^K zoVy+QmL2nHMMq*)IS{@#Yy!RDI_n&EkA4cPCTs9kWe*yvbm3L%=@wEGh0}CZ%GK5d z*f=|w&0w$HUeMh)_5!Y7In-!oc@yH(DT%8pFXGzlccc@`6gga~{X-+Ip2l83iw(&07OWtF5 z&MU#G9H0Z3Hz(8yFv@$lgs(6|*f5bx4b`ReK{bJ?@?~$Ly!PkHX3(5nk$375?7X&K zR>M94vmWf^GnjnkY-nbNMNL!oP5l|}kxRA*OxE%Cb)M{YckBt- z9^O$Mf=aqvG*lzwi>jsZWzixwaCd_NwuBuW&UAkUzteM#RzYx7oeaA%Cz&k&kZ1F< z#mndeVKZHXIoT-i@rO3OegqH0GYQeF^pt#&u974sBluK8ojm5HUg2LbH&8${)i1oh zDhJb=x3~!8_2MP5nZnHWf9#w|hBseD|DJo{=am!wY%*gtxOBbrICX$+QRhA0cfVHH z!fzL>@)8Ft&G4X;J{hK0V_m#^AD!nLwbnM!Wx3Yewk3N^vw+htC6W{i>#1n8uqudm zZ<^?6c^kb({ci1aSH%uee}-Te;Y0AL>fTcJ8}5WZ^CA9bV{|^X%EY~OggH%`{YH5Gai zH!qslH4iJ;y6#MvR!s^AGxe`!(7T)UXa^Fj<+_%hugaK;FcXXmO+7XY4CYy>1Ok6V zuE+^Ji}}q^c@)Vi>tgP@F){VnW6)o%ili|o{NY|TuaiGVpY@C5Qr8}AqpBqIUVwnt z(7);!uQ>VOAN2v~!6CnsxQD41$rd&R=h-soV6Srt^&J;JQ&oUJTl z*_oDJ4|j>pV3*$Panp55S*8|AX{oA)*~jW?&_Mqh?TWW?dc7h(p*j>l-*t(W2hGY8 zjKtRh31I;nI5r{sicnT3iN<2{Xwc( zOjY$f_B=b{FX|Tw(&8G`(XSobIpQKEV&?h>W0u2ospy@H`QGallfu6eiH+R!3&uS5 zO2wA;&c!D4&d2ufs>J5=zhYy~QGYDnWB*2)s%M}MBO{${KmSm88jL&<)!ZN{2Wpd+ zesZtAA5JnW!inY{k#`dOg&$pS83wn$F6@Rwsxmtd*2nLah4>ME&K8aZL6)$K{XVF{ zMBuWzj{D8e;XOUfwgGt<#q@dy-pEI}j~8q{ubur3WkD{}2B(gVT2x-Y5dG3NIS~6? zE+kl^(k85?YbJOCXZe5l)^7A3n`wR?eZvgsb)H zu&&;1`=A{U+&%fyPE@EMgEf^W%hWkS# zGpf9C`nFD}vf%WU)jw!k`=jl@UUrm1{iK2M^ibW)41^K9NxCpYKI)&4?(n=icuAPQ zu7*36($ujPOoA|-84>K%Q<)Z44u518HBnZ|CRa;mbuGSjJcuShZmC9 z%j~Y2F1D%}Y3J&J?k{zoscr?`T{@V%?gQ_b%k5>5F{U%Bimmds)Pgl%KtBj(=t7m^p1UGa>k7Jy7@)?G3K;?RF#i>Bh?~P+@JnN zmyTJ`U9+DPVqqv`_AW}CcaCX7Wo9FpVRolQH-8hH_6s_NR$l6`snxZl{5xnSZO_`Cp%4fJKl`7Cv{Fxg%9Nf2;6GW+(~x1KFtQ!GvQ(|$`f+J<&tkf zSkjn{?f`Y#YyXM+EV5M2fb3lKmg@!Pk*TRO`e~W;uPR4szh@uP4Hr?BQ zs#3?)R()e@sX_@ZDwAN3e!{byKQaRMhIamDT`|&JEsOjrljuB)L=LEa{tl*UncOc@vF8SRH(}Sc^S*Vl{!&*6H|jNB0d>~Y(*?MizflV}*JJzxs+zwA zFNQukhxdcgoRNxnXvS z360ndRh+3qBa^^2@e0~sz2C!vUN-xkd19C7C+@1Msx;Z8wTP*Xlg((DV<%;@`9z)5 zhp0nG!X8U)UXpWKqYoSmOE!x{bW-(|DxtrV1?IB*n=Mew{A;eae-XY;B^e9D<$t(7 z4^;1)Kizjci}l#n>6syHvTWieu;p>Elv2A~5&bRNv78_yrQK3J!wm)XZy-CQtm~OAgv5V}ayMyL&r#=N^AqMX5AX(}DktVj7$`C#m9TaB1mDAmdFUbD5 zX5rRgZSXJqbkn;{(M0T^7%K0hv6vrpCi4unDcC<2h3R}8hr?o0Em}|RqCM!vrc&eb zyCO2fc0>o3!JM@#y%DaeUqWtqPtibbR4q(LSgPCg5%q^YCRgacR_c9{OaHDqsVjO5 zTJ(CtEFJ9bsg!35zsPs0lvjq$tAlYn(zr-0Vs3pAo@q7s-|0Z;kD?@1Q#aLb4ogb2hkY!?~CFnRb*4`=}*BN#=63W)B=fw%7-u2>mZMQ z8zj+F*|EC@p3Z&uhg&VX>~)C`-{)D(r_$LyavZmiv+f$4r);(-J4f1^1z|#Oc39gB z!<63d%#b#^-fFy@az&VN^-~wa7HUpt!PT0|VLR6)m)#aGJUH!#!%XZ^>+KD*7dd;w z;YNOjBB2BkVG8Pu824NsLEBT9?y9nkQ_Iy5PQ?%IInLsNSKf{FC%c0F7BbB-v}8@B zqvTds?O4?_?5i5%H<2wU0T=QTx?y&nxMFUqY+^35hq(G7j$`xiAj~Lv)dI0Dhsq9% zw~Rfd>W8&e>hPj`Xvc~tSz+}SbpPti_9J$ZE%v{#qaqh=hRAnrFMUQekeveh4^@C3 zE0LVi*?7%tZPC8WQ6Hge%cy%vO_Nhrd4IU6{w~+h{}*@QvC>}`R+ZUIH4sjEA9o*J zVJXvwh}g!><{a!$3)MbJte@eO+=V!T_l~*h)^L}00aa`)nQ z=% z!VGi^z%@z-Jzeo&mwgdD2_L~FIB3@f1;AbF@?7?E9|l?7^8nlxt-)9Bd)So^!i7SZ#!=g?77We zHPhW6q?`Ih^mA`M&M#ffKc=*o&)oM4>TS5cj*O&33)GWMy1&8V$*IM=tW$gA@!Ys? zrlA8HM}%r8H*vC=hC<0J-ATRQ-PYx# zi_WZ4zykeGeKcQv;}wTno?Kmk(NK>0aj}Rozxg9f=-uKvyP!k-+pEeoHqy(O$4>XY z@kV?X}C$9Iows3LDoAsajuj8lzQg{%)0R^ zwf9ubgSGt>pO>0AWIlw+y+$oWkBC34?!eya2YLqn3H8vPZS)K4(df_ip;V^|hxvm? zr^@aPlWbl;vO`(-7!>k_+2wx11!)&u$aA$x+NpvngPN)S;-3C4M`e}7$UbS}uFC>@ zP)>*aq;gnJ+J@=mKAf_mc8+UcPoo0*oOzx`>z&>fm%a9~Y~}8M1LiP>yL4R6*zeRs zn~p8oQ|WB>urYM6ZUx7}pQ)XO~c6h1TX5gF2-b$W5&x7ORRX5G?)hff3 z;J&GAhL}C(U;Qz-UN!GyJZz!cp|9KHS79^lCY{yKYkY47?i9(rWq5M6(Y@%fzwairzZ$M-_!#C(lF_EDkUZ0qa@ZvV5gjog~%KGCz=g z`kbscMy2wypjywWet^mTlm1#YBky$QmE3j{bZ^&IXLfPwx}6G==)?TTAuruWFl{F@ zTi<6tQf(cP#${La>8bFu0sp`L-<&;+M<03`H5 zuGa_f*ZdAFa}Lw{u?}^SV?&S};5pw#t#A~^{io7{d+`aKcqWsN-=B9=)mAqa)^ssf z$Ne4VW2amO_eYQpkILk(O1KKwk0^Ykdf@<@E4*SGpkSZOeCr=LO!I63TM?vSq{|yN zamRwk_Gqxu#s{-($FM1`4ewwct`8r&tyIR(!_F#~ZHj|ID2MEi@|i0t_t+~woF3t% zBy+puOYXo16higouqy@spg3C|{w5+-Fa@PP6W9Fg*ZTzzsoTV--gt|*P~F&mJP)Ur z<_08MSJNHfxLsFiO*uGy>D5a!OU0S=Af=V?*Jui3b2iSS>p8`J_4myEKEn%es?>&i z@uhwZM`Jh}B_d{o^f1j}54~h6enRCzalcwW&>!mrC?q0is_+U{>+~L#7nh!c%ne7Y ziKdCl>tzH<4y3K0NHrw?UGjv3Sl{-`m}Pzk^O--JIp04fu~*A$&hz}6PRo>fCmV5^n)mp1&fG$YG7ao2 zlWvSlTuQH{+F?$@BPmO#Hb@szGj(y&|A4j^O^@L?73yRg9?!FCeR`g-X5|HCqSymkhcQM0SeNF0uEPsedYW z-&Ao0%ratbQrWEf!9sW<^QAVCtPP06`<%3S@X2#acXijr=s#UMp5-mXg6p~_+_?$= ze+;s%68!oz31>J8#F%jUy#Du+o-6dsO~V0x)2Gvqt; z7}4Hft48Go+$UA(hP)G$$|J5Rcl#8;aKdnv5{jIdKEj5LJq5WVdX$ zy``wFC*5o!iJ&THQ=zpkulC z1ufhiHx2IgesvOjFmNrv&sLg)^1Vrcqu(!_=b?JHZf4r*x8`g3oy&A+7T_Co5@&@w zY_oV8$>wd3Y3C)19qH|f>FH&TX@I{(H*X8>mH&F@y}aHr>ZGRLhx#PEtx`OBKjPPQ zitZ+@>aSPHMEw(fOw;6ls*y~UPX&xcPJlyUEhf#05}Cr$QX!1Uf^ZcmKw-CpY?;G# zq~7gpe~^*(lq|OG<%nJ5j@dZy$?xqi=q~<8G&;$w=#o8PkJ=%ep2D(?47}SWS9gdx zE!-jXH63A3wSk^F&?C(we6xSUOM@pHZg~xFpqIP6D&^^pm1E+cGq%wqC;NlX>< zj!2TyB-G_i3eH1oo!<=8JE=q7*KC4N8Sp7vPG56F+6&wvN$(n|UhFwo3-jvdV3te( z=gAknfiuYWwiljK$-`UWcVV;e28`GtHc7C?ZjR=)e@1JCU4z*{qA(JSz~ApW&RZF6 zvG^?bq+JUCj_(yViDnGvN1w4*=O3of`Kb?^h998XyUQeZf@PPLO>K|c0`5asOnSMU z^x+Gc#uk@;N{g@mcE6EBw!zZxMrOT@r!pU%(Ub6kd>f9ETwzX_PNzXY zdb_@%!toy-efWSlH8&h)_lFn5qV`=d$Nn0evv-4!-P@p@+Z!x%3sGC#5B4w{>*zKx zomSlM`P})zE~P6aImrHv!8wMwJ#G=Gr?~H!ApIsesE@MI-Jh4HRG{s39yOFFZ3^Bg z-=S<4{~k_gqj*+7@IL*|+0N_heTaJGmKpCaHh=paahq*ps<8RZ!IVUp3d$aaQ?C(wH2Q#N;Al=a+Ve=q7Ss|TVA7t_9$viFBZi%|0Ecztp3^L~}8D z%mVwrjy|lr<6&Av52S{=sfLpym#M^D-y5l_zrri#uxh0f>U260(fqD@Bk$C0-hEH~ z27Y>3D|J$5!cFfOXz3^-z%%_DGvifEj7!2G{}*@7ekO&##q9B3oA10&xF=t7Pl|Zg zO9D4i(HZ}urJluqi~!Y4ncR& zALg`E+)Lun9e3XimF;e@45k8`;g+~_?x6cn;@x!F>oTZ{_&U+EsQGl%J>fLxR)4|Z z9S7o7flT-@9N(lamA+|jsYP~#`rba0U+7T_^Zl;42~t36Nd{`z7r1L&bJjg|QzREB zxr=<18{(4p0%6qmw&lv&%PZJi8vY#22Z(Yzr+Mqlhbn<42jW1&%XK!-}?h zm>%cT?BSyzL2x4YDSAGb7L5jb!Cd!5H{$koDja}k^NHx-ux-#Yd=ZQZdxk5+yZp*Q zrpRo2SPv!b2lj~l&_-MiTOK8JZ`a8FgkEtp?mkUja+l1talhO5Kt?X2{OhS+(4pUf zgZsWyprIe(8{J&}j2B&M)fj$rAj8zJQbYBSSJFcMkv@_d2bVYCgIA<7CqFm!(Hn`% zR=F#m!zH_jIv<;**Xt?zwXVzdiSjx>-QVZ_7UD-~(87vaH@%JuHH|3(t2C;9Qx6oZR5eOUs#|WhRB>s@ z^MAUZ>4DeVTyCSCMfZ@${$zg*KeawSk>i7vL7$*J?ysqX!Qsp3g>W>S`~1;eVUOse zFb40QiGgQ#1|QnkupaNnIC~2va8b9-egO7poJT$^?|yenK_BXJM)C6I9nYgaR9Dq& zsiLpRFzSx|RQ?s=*zGb|Q44lQ3A2+tm_z5myZNapL9MeKm#ISD40c+bFq!>7d1`N% z9bSH~q&LFbXF7O&%{_d$8kl5w0bipc|4$p4o@>{3~ze7g+z($iAcaU19F? zE|*j4&=F^H)7)QV`Qdh&%Vqn5T`YG=L3Cp574my6_d&Q0|Fh<7IUZq`g&S>SYMHZm zjiqq$Wc&Zzrgqy+_};CBH8b43@4C2=@Xt!qWp9uw;0|kKocxEFz2%;#gB?Ey%s#K) zNZs|Cs8k9ZWQ2}2GxRwM_qPAynGcy{Q8=8c+f9;+%QGw#!+ zbPiouuf*;C9aE`_RBrd_B@`z*fn4U=I!hsVFZXRfc7;8&f7=Dz+3~hGcQ?jvvl4FR z4)?MT@qOzToDD|>!@{RQbM|rc2&?04Q;dyO$?zM$#1q^zXdmqWKW%sLVURv-&+ea* z!Ck6@jqLvZH&_(xWIyz3J1wl?KD6y!Jv+)Z=Gk0iH%lqBxxbQ?kI_Ly)dtpyl3qyW;>JJLf3$-UJw>k0oVl9!3ug3h4+%@zkn~a6MmDX zi>l4MVjs>jDRnmHkXjYi@5sUp$uyc8ZUBC1`*dqBwOQ#cHs`z;&-jUXGC%Vc_{-Qm z>-jN}eEwCxpg-Nu@8|W|)a{-2UYJk43g$MdroYV3`n5U5l=rrN4}R%3?di>+J$pcV z`r~ArRCg2up70HNlHK%`*K|7gw;$j`QAEvGwbWs@rQT%LFb(APG@G@u%N?TpA7F9y zsa-a>h#N%|jdSa%UE1(GE=75~My|_gDGUV82KLN?>tsk>%eEoLEKEL8o~BUf^TgKKC0rISC!bV)CHL+ze*#}tyc0x2FSPPE zOi;zBbvCM1M8m~uCr-EH$q2uyng1bYU@s%pWa_6H)T8&+dsI|+Wrj+DzhVhxRc$;Y z`>Kij`|e;@BjHSJC$}F{>(mle5SNI4x{In#%*n1_Qk~SLc9~5i`bDSaWUtX*aHa3_ zai90osX;i5Hsk;Qr4RjzIr(^YX&PAtH|D&{2ln+fzb`FC&@Ml;)#;vY@B|OA`E3q# z>-lUVJBdvB1b%ELC%9$oxA*KKaLn0sV6&-NFQJ;LL3~S2B2=psM&OoO!PR!}xp#De>3Pz+qvo09 z3cH-{9(n##JJ((T&$8iTGU`X<{6_39_!QwPj|Z z9%>%yuKd}1=De;9^1fH4)n{P>q~&QXO5S0%#3@||F4{vaWvlNnK6j@AoXb})QD6}{lX$*bV^?Tc%4KqqBn2FR4)M-!8!2s_3EtrsD9u(^#n

r!Yp9O@|Iw1#risc;wtvTScu=a5e@{{U^y6He z=KF2piJZ^(ItLP(6bBF=6n}wg%`^Nx=WicBFNyk2B~w|{HAzml*N6Gj1JzHZ)&UM7 z?|8@es`Kh0x{vaDmMRUZ{HIcCg}OsdyzyUN{qUbydwi@DtpI{ijquYEXG%Xl7la*8**>r~&rGpD`ewxIQV$!?@B zY$&+|+u)Tnp_-e-|EC}~{HnGwfw{+Q^*!~PUhpe}j>r^65z!H6lCkO%5n>#yfLi)0 zapo?O;ywKf8U3lI=3^>S6?c!OboUL-CH;+QY`QWrSVaH#BTgXsVaooYUzyc9p3gTq zg?l&=(}^*I%^93;ikpn4p;?Z5L32G?e~PCz##L`Vn;UKcUS^Xp+#)<)YTY(sdpyxq+JIMJ*?9cTj#2iWV?QF zD;jY3i>h?I+Yx<{oV6KDb%X?xh)6V>SXzZBn3?YV6*c_{yP9djFin$q}D~_ zz4^FBOf$JmH#3MGLbKF(9WSrdbD5>AG$aGZlfPQXZTW*4Rs(kn4*Fpkjm{?x$moV} ziHxLo929nyRm>R^+pDevXxk{}|3BKqZkoMqr`vP5g)031nu1^LqB>6|@Ee&f_#?TJ~_P^xa_J)cRHF`C?W7ypBTRIyK} zXFL73e*|6Y@1PUaP_Ne_+dU_aOy}=URL6;f(}}{lsVokVM;6fatYt2@OS;NN&eAw? z)Ks}c*Oh@Mv%i#)ostP2!fWTDaLuDqx^(Ini$9?KS6(t{{|rs<=dJ;sC}&+s*O9ud z2z6X~p4vFBdM_1kSNahAV8Nt&*iURhn+jIX2evXDWO_Lic8ZWom}_PN@vnfP#8SrS2iN)0KT#WWTU_Cr-~90a#FLkMF~6*?pH1NY$*HW z6P<>;{<~|4GWn*Qb6eo4Tm&a@;DsmI_Ee6ncElATqh^qiE)@|gjl838_XP!pEaXq7 zxr)TFGW^@}ym#HCAijUhbjW=3sd;9rk~r&rtkzI9y;X(OGnJV;dy{yuj_AEhb`v+p z;7nJASn(~h#1-&5FRBqBFY}34o2dS->kH~JJ4`R?M{0}yOHIT4&uLKK^2$VTK0W+(XMoPsn3fNm8-*!IN}P*EaqrA$P|UB z>tdHUq*s=fBA@8YEyaVgFk8PPCe!)b!5wCZ!H07zz$sNulL*x^N0&t0`6oCcPX99OHJAkhX9;zR2QzghRV-e=yUZ7eQq`S zkpa}Q6ZBR!gMM>{9>S|$$rY63Rj$@8z>Syk>!4n&PxAQ{pUar7dW1<~em1j+NtfC8 zJlm9KCUyn?kBRy-I-9ztFQ1uIQ|mOF8Jp}s`nOZ29;x1&dXpv z+VF0F!n^$fq-Y=N_zmRwIr2SmYb+6rdWbxem>wzv`u1G>Nj8v%_vI&^&LxtBe=(Ym z{5%cYL0?{=?0ZHHv!Cv2np#LlvPW8xaSkv)&#Zg!vm2`qbZPEWHV`32lnC((sHx^r zF)r8H$$<%UeSJb@)O)CZ9`ccaSW}GZp_={xEFm4!)^fTlS+Wd0R1IR$k9w*;hI{B4 zu6r?6?hvZp3RE2D`I!T_&U!qtoG!BbK;}QCRC2D;km=vyfA$xX;IrxXp8J3%ZbxI8k|jRJ*OMejd?Ec2OsrX;wzA3LC5tSmR(en=K|o&*uAf=S(z{lKkXM(p*yTtmmUcY61(Tx4dxe$>N>3_RjJP zn3(12n#xQt$6?@c%iJ$~&X(lDVN>bwD0F{|F_8y7>Q+=r99+bY~=%QTcYDsD(yLv5_~rivF0Aw#cAGyP2Ag`{$sIl zpGGoi+Df$D3d-I`Y7<{yb8?dLboOT!K3~f5URI<=ugg8_3;U!uRc$p@ombY0pSO=a zQ3+KP^!pGeWyk+l_oKj2+EWR07C14l5(o%g;M zk#8oiYbST)9IqSZ5z%kv|5rY@`08;^>CgQ8p{NYIQ0;W0GipqQQ5GdrZXyO%9N2s@ zergSVLLKhs5NXNxgPS2qxyNrfEB9e>U3L$6O4BmS{7~)Y^e15o#hu}-RD#jdRyOce z*#Bhb56J&-__=XJtoOkh67cRmmSudu!(=GK9m-1|mWTI)x`g*>4i2ps_;6PzJ2rNy?^=r%X>5XNHm%@{vG8<)75LDMY2tg!H=2puJ?y; zhxf|8-4@miZ>9IsJwenxSK*i8D7n)s#9vM22KIWEf9m*9e!=4KahZ|*av0mKhrHn) z@CU*f(YSDS^dOB{8om-GSkpSP4mDx0r4re#o#7w;Te<$7DEWNk_rD?aVm$qXPQ8cM zuh66A(c5Cnl|f&5$@4v(?o!e3t=3Uz1>HoG?d^>{g}k> zK7Z>D?Y%*+cz+|re#S4Ujd$kF?(M%;`3z&F_+0Z=N8wdQ}!+L2#Zpy8#co zLVm(Mhpb9cqrULs;&s#!cc-_IS=BC41@U>CQ{<37OZyHjN4_`CMC|1H@M!jTc(K-XJ*u}N_R9d zj@_KY=D(8>xm$Fz{KgJByJi{flEeKz$?X|Gi%sUqtdCaO%E+!2y* zWTIT%6N!y>seJ26x{Ivl`?WRtjU_spG^WCT!2Ag;!4z4D*(CTW`aFe| z=o&TD!;omV-B-IsI-4ASXII8rvYt&sPS?u-xY6CJLQ_X4Ly?j8!hERL!}1#y{Kjm1 z(VH0IspfDt`+jLUUpdtN^jc=IljQF}y>*`P{Hgs%pI8^$LI!hSZWELb=*JoewU7=! z0EGs^v0`(&RTlYza8NXnKF{VIj1PxKL*&c{$c&5$H_OIV((Mi55UZ6vXm)R&L;LV< zIm&@ngbKs$$6JS0cJ*|i=Qqm5F9;t9zY)WI9S-(>S-2&f?3quGhHaEa(VTFXoL+Ib zJ1h$i$?vTXSL%CNSSzxF5o%rnVXtD3Z(zyMl6_drihsl|%#XIPiaEi@Z2LZI4kj<2GgBGNJ|p+6|a;cM=7h<|I~hv+qH2_M*{ z^PBoq_%8f?i+40H+8K_wGH|0Z0y>>1_UhriI~4C6^@5Ef`6p9&0xx+&KK%-|=mAfR5`pjLX(ah%jak+q5M!kjFAK@d9 zloc3eBoK|}#;a00VB8W}nJ4)O)7k%<+|$=x9zBPpDQ6`P@;&y6ul9+{cH)LeTFlll z*c){dnVkh4<1GGQnAe4^s^USfB#(>ndI3xLD(~iHe(LkA*>hxlE}4BCR=$nTE1|7TLRWEML=O$0YL@=HWA-EYvgx9n+o1D_YMFbiqnL@VZ9MRK*g*3zyOJs-?cPGs$$ zgz1Zn`QM^}ccMGY#B;l7>+7# z;g=j!TbnmolLz~US(f`Y8zP@d&i*3GJl}7)jAVC4@H~gWiY_v>XNc?jq4rR?cOE2e z>HKn6TjQH=wEU6(@w>BXy8EIzj_1k@SF&j-^!?4;i(O|m&v>gY+p}WF7ii5Fe4q8|wnfvmf1VU9aegVJYhh-W8Ii7{cO`DR(v!$9~SI|sVP0I(%W-1b*k%4VD;}~*(cM_OMTxJ1v|+DbYY=8qve_2 z`-#}ErZeMV@Fdx>@z(1mSq-1UhTjqF;C-wz-WBp?pVOb$#MP67{m$`gi$Qi`fPJD} zf-Oe$y_Ww8o^b6)^>L%#|B6=^DWhEV665YPGY@Tqu+)PR!NE!XuDsK9fFT0WM#ki2m zYBXRSb3_Vp9={lh(E5D54gZ8?77h56mp(t>^10V z2A}j8i%~8-=^M%NHJ05wjqT|p2JIUi(W@tTW zgpAB`qnc&rw;HwfyZ(u6OE0_eW6#8z2*h25ubcS22iTm@oyYm^W%K*naPga{6W%p- zMq{noDrZ`4@pLY0rdha_r_`iVRp$N&>Xbp+rI6P1KA@N#S13Oj?;fV7Px4Nlp`is zX;7@W`YbY-(kcbz6V{!Yk)Gbc_wdG!D+u)xzh{B0()03<56XC6#bUN6{aN((STu#L zpQgnv5bq-L-6T&LswEK>Ch zIeinRFEYRR=J0^|-AN{gE9dehI;m?XI_*p5?lk*_-hc7AnxEDf1>4IF_A&lJuG9;4 zPd2wY@GDzP9KYw&zg+c=Sj!?Pe5LwvGJPCM2ObAFv@Qs$q4l!h9-tuYt%sP=ACbZ8!U0 zS(9Bfy4p%a5~Z_viMgz9zWtb))>^80w-si45S2F5{`KwmE&8zm z-OTEASlQD23dmG}<3gX#HJZ^zI>oMqsXW&)cyld&jADOo@P92-zZ^miQ_hBW?V)uc z9P4O41I=s%uH9yScbWM_)SKWsV{rLW$3?D_>#9e2d@1F3R%!=1Pto{H_}GL^Xolkj z{%aUl068llK^ZMt3#V3~#b+q+9+~@q{C+P6-wJUmXnUr}EML6Q5F*qHmY~lkY}`sM zHj{weqmKQRONi1*wRL=7TgidJ1zOajUHOjk z^_58mj?%7O{G!%bERL@qGGqC2n1m)~zD#VtdmVR|@d2HokZ=zRxX4DSs`EO=VE2 zl&7&*IR>4w@%u!4YUw(KG@?zKawSk<&U@4MtB@3r>%qf$O)e;XBkdC@2lEXX9HlqSF&xJfmeTpbyVtuuFX&Tly z-bVP)*4VnB#Mx}qty0(L#=dXmzq$5J zozWB}8j|PQXc&-yfRqR7vPndqHgWsrUfYt|j^v_~D|J@lopmkDHl{(A{vyb699|!n zX$xU?pf<~=Tr|yN=X12k#<7^o*=SXT0teLYL6wwmDtwMxC4H9%VH)973q7@+7HA(Lo-s55` bqT{$W + @@ -52,7 +53,7 @@ true - ..\..\..\..\..\..\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\Microsoft.VisualStudio.TestWindow.Interfaces.dll + $(DevEnvDir)\CommonExtensions\Microsoft\TestWindow\Microsoft.VisualStudio.TestWindow.Interfaces.dll @@ -60,6 +61,22 @@ + + + ..\packages\Microsoft.Composition.1.0.20\lib\portable-net45+win8\System.Composition.AttributedModel.dll + + + ..\packages\Microsoft.Composition.1.0.20\lib\portable-net45+win8\System.Composition.Convention.dll + + + ..\packages\Microsoft.Composition.1.0.20\lib\portable-net45+win8\System.Composition.Hosting.dll + + + ..\packages\Microsoft.Composition.1.0.20\lib\portable-net45+win8\System.Composition.Runtime.dll + + + ..\packages\Microsoft.Composition.1.0.20\lib\portable-net45+win8\System.Composition.TypedParts.dll + @@ -146,6 +163,7 @@ + Designer @@ -154,6 +172,7 @@ + diff --git a/VsDingExtensionProject/VsDingExtensionProjectPackage.cs b/VsDingExtensionProject/VsDingExtensionProjectPackage.cs index 82974d4..5dad53f 100644 --- a/VsDingExtensionProject/VsDingExtensionProjectPackage.cs +++ b/VsDingExtensionProject/VsDingExtensionProjectPackage.cs @@ -1,15 +1,17 @@ using System; +using System.ComponentModel.Composition; +using System.ComponentModel.Composition.Hosting; using System.Diagnostics; using System.Globalization; +using System.IO; +using System.Media; +using System.Reflection; using System.Runtime.InteropServices; -using System.ComponentModel.Design; using EnvDTE; using EnvDTE80; -using Microsoft.Win32; -using Microsoft.VisualStudio; -using Microsoft.VisualStudio.Shell.Interop; -using Microsoft.VisualStudio.OLE.Interop; +using Microsoft.VisualStudio.ComponentModelHost; using Microsoft.VisualStudio.Shell; +using Microsoft.VisualStudio.TestWindow.Extensibility; namespace VitaliiGanzha.VsDingExtensionProject { @@ -30,6 +32,7 @@ namespace VitaliiGanzha.VsDingExtensionProject // in the Help/About dialog of Visual Studio. [InstalledProductRegistration("#110", "#112", "1.0", IconResourceID = 400)] [Guid(GuidList.guidVsDingExtensionProjectPkgString)] + [ProvideAutoLoad("{f1536ef8-92ec-443c-9ed7-fdadf150da82}")] public sealed class VsDingExtensionProjectPackage : Package { private DTE2 applicationObject; @@ -59,25 +62,50 @@ namespace VitaliiGanzha.VsDingExtensionProject /// protected override void Initialize() { - Debug.WriteLine (string.Format(CultureInfo.CurrentCulture, "Entering Initialize() of: {0}", this.ToString())); + Debug.WriteLine(string.Format(CultureInfo.CurrentCulture, "Entering Initialize() of: {0}", + this.ToString())); base.Initialize(); - applicationObject = (DTE2)GetService(typeof(DTE)); + applicationObject = (DTE2) GetService(typeof (DTE)); applicationObject.Events.BuildEvents.OnBuildDone += BuildEventsOnOnBuildDone; applicationObject.Events.DebuggerEvents.OnEnterBreakMode += DebuggerEventsOnOnEnterBreakMode; - IComponentModel componentModel = Microsoft.VisualStudio.Shell.Package.GetGlobalService(typeof(SComponentModel)) as IComponentModel; + var componentModel = + Microsoft.VisualStudio.Shell.Package.GetGlobalService(typeof (SComponentModel)) as IComponentModel; + if (componentModel == null) + { + throw new Exception("componentModel is null"); + } + + var operationState = componentModel.GetService(); + operationState.StateChanged += OperationStateOnStateChanged; } + + private void OperationStateOnStateChanged(object sender, OperationStateChangedEventArgs operationStateChangedEventArgs) + { + if (operationStateChangedEventArgs.State.HasFlag(TestOperationStates.TestExecutionFinished)) + { + PlaySound(); + } + } + private void DebuggerEventsOnOnEnterBreakMode(dbgEventReason reason, ref dbgExecutionAction executionAction) { - System.Media.SystemSounds.Asterisk.Play(); + PlaySound(); } private void BuildEventsOnOnBuildDone(vsBuildScope scope, vsBuildAction action) { - System.Media.SystemSounds.Asterisk.Play(); + PlaySound(); + } + + private void PlaySound() + { + SoundPlayer player = new SoundPlayer(Resources.ding); + player.PlaySync(); + } #endregion diff --git a/VsDingExtensionProject/packages.config b/VsDingExtensionProject/packages.config new file mode 100644 index 0000000..6b8deb9 --- /dev/null +++ b/VsDingExtensionProject/packages.config @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/packages/repositories.config b/packages/repositories.config new file mode 100644 index 0000000..47531e1 --- /dev/null +++ b/packages/repositories.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file