From 7389265b074ebf1945d3bd00c153b41ac3e61d83 Mon Sep 17 00:00:00 2001 From: Tyler Brownell Date: Thu, 15 Sep 2022 00:05:21 -0400 Subject: [PATCH] Updated Logo --- .nvmrc | 2 +- CustomStamina.png | Bin 30259 -> 16029 bytes config/config.json | 126 ++++++++++++++++++++-------------------- packageBuild.ts | 142 ++++++++++++++++++++++----------------------- 4 files changed, 135 insertions(+), 135 deletions(-) diff --git a/.nvmrc b/.nvmrc index d6af9a0..cd9b7db 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -v14.15.3 +v14.15.3 diff --git a/CustomStamina.png b/CustomStamina.png index 37129d12366cce753de818fc87a6630cdc05e07b..a55251e1d0bfe84f3d7ef00f06412c5566555f1c 100644 GIT binary patch literal 16029 zcmeIZ`yG13;o-gCpBCU-U z+D#1gN{uWzZi|t`NW9$iL;MwqCj}EoEJuaXNo7ZPY6)y7o}4@>n|MEsbbI;nu-1ta z?Jt;r?5$O2GuwC#(%Qe;t;~c4=NDUeX-j54@{U>B{aRDg*(qwAA^EzN2FZ{#w!4Y~ z|H?WhOB!de@kFd8Z~N_YsG6-YME+J zcA#WUwa@b5kF*H2u(Ukc{y9l;vEFt0*!hv`SCxQqMbbUO3uqwIr@?zgfAPF6Oxw^P zDBU(d*cfu_-#_+1%Y$!;>9%35Oop(}o^UHe5he?k4ra}?JbmA4XqCXr`wGf$kU~dISHZ^EAYn!Bc(x?f)M0rORvjX%y zmt01k{&bTR{W2z%CT9KFF}WndnWu$qLLN+{1d%*hr5;>uZFMiuc~Onx5mm!y(eIvyb} z`pPDy+ukze9!V>8+Jv2FJUNlNWIDEmz&!fSQBmMd?1at?B8qG!2=m0Q1e?mYgyUpI z@>_DTPmgaeR?==pXA)}bS^vYKknt zOpjVtsqG7HpF$~Z)+uxv{BfzJ56l6DU2pY(Uz&f;u_rJQr?Q9fYkmj|WZ8teewiCz zgtmC#>-Wy_!@>|3Q_UY5abF)6 z-8`=E;=Ff-8bI~a^YKL<@EVUb``{pB?*hn&C&iU8NiaSlnz#y?vmW_y{Wvv5-(Y7j6UQ|53~Mc?tAhmoI5iZ@Y>)7McpXytUYnEQ@xL7O2`i0j`gZz;s?^eE@t4Lif_thM)U7-rZLG z%cH&<|H@OX&T97zMS9Jko;epDi zSo%eSR5Trf9iz@o$Q2W6_+nVi<;x;@-=28Uj~F&*kjgWud@?1Xri|8Oe~xf5N2|Q4 zVcp}!yW!FT>Hv{H%ybOy(AZZUvel%xvqvaZm25w$W1_^Qc3AB$t3MQ2;~35c2T^`= zjG*cje~p+=s3h1m#7f>&4dOYgq28SaEZ(>EJenYQRRA@FANek9-i)sMc596$)`OGr z5*gdvdJU}Tb4@+048<>#lJp`>x%eSYT*WE17h%m)166qP^t2)1bgEixQ_y(2RwD>i zdkvSyI+>-`++l=EOT5X6YAwe-9J>q%MP{`8a$d}OP6*^1*SdC1gZF1;>OvZP;dBrJ1a_(=yo!vbf1?DWp6jOePkrcc#iiwB zGq-7=DHni)MQj^^a}GZux6rtie_zFngJ0*E)E?%zpyQp1mX&{@u^X&Z14HTw4%tMZ>*R>rztTy@T@>i&TIuaYrhzI$Hgqc2kKoq@GKRlt1 z*6V8Holr#U#r}qNd&g&s0yf>eAvG-f`AEHc=Rl;S*VDv~hPdDetW)WU11iAm{@|o) zQ9;om2<5(Eiuu}U4|q8NMd1n#o9V8HeMkag?%XBZB8?T#NO@a@RwX?wW-@z^_=rJ6 zYu+Q)E&@5LN9%ADer9Q5-V*g$XlAh(M5JE}!$jdoaglB~!ZARjKUAG=fE}iN1`Zd) zQqadyIu(IlZqN8}A#ZuqZKIR1tB7aU8e+5T!Vvtcf1`!=ZSQYgXLrK57%$xY>!!&OB22&j2 zzmIPevJ4D>kF|({p79G$mK$J=A2%nVUcm3H!-Y9qGLc1khJ1#9bFbxseH%6EtRD_w zC5@-oVR{8Y~g@?FXwadQ;YnUDST z#yALYRO=VhdS9-LXBp4+@f{mb$VZl#y58P;>p6K64FPzg{Fnkf*~tT6(a58IXG+B5qMJT?mx$mbgLSY>4F; zJ~s(<4w$4tfOHqz(F9fKpybb!ebyA?rla8FH)Vk8!~NYrR7OdN3%hUzkdGhim=#g< z22$`5^6~s|rz;SBnh@#LWZ@3eo zxoXyKNQ?Y|#tq2!hVjtTY1~p%N46El{{0O##1Z%_DXX{aI?qa#o2S6R{amCM$lQ^J z#GVfTriXpu0cUVz*L9U#1GKSll1ip=Zv?3ZkO$VgX%K*$ODeLVG?p*GwDq1rYX%S~ zuFgTkN9&mP2!>EAGTNjp9K4yJ2CR zC8LmcMOwW(ueu-c@nQ_K$RGmB*rLb{vf2-WG?QB&!U~^v(olBL5(EY;U~SPUV_T;#0GF15WEBQS3knA3y$NZNMpNV%J7>+4 z41GS!{Ct1zIQ|yy5Y}dUgW-}FWgDL{?0&3{El8?1EF{J3Eg_V6FC+Ae`JPkRR>wmm z#)9#BoHDVJaIYcOmYe|$=0QeiUi#k7^&p|6ryqlldtaQd>&E^A;jErNIQ7c{g~Nuh z%j?$3*`d>=VATwiRc%hFL(rV#%7=-hFm3we zo$>1xy95v-vI{G|m=^1e$XHzFoj8m?O1GXR(Td8SjG8JY1e(Q21n_i5eJH8h`f1>M zFE*k7X~!vKo*hAyXQr~ZBj~r@?BHsbRA&I+Ee^aSnz9E#Sa^_003&`{{d#Jd*9@g! z#c0c2ysnaomxNWM2uiWAszRTMdH!SZ3*i#HmgQ7_7Un8c7M}PJpb7F_v`tK z`E$+(PhlzbbRIJOyIMt715u*eOmG*2ON&#_nz&H4@`xkqeX1;$i4zuN{hyA8dq_Bq*;R@dQSgu`E=(K0*`Y3}MPDa?QS=IVJl!oxFUw<}Zbht2C0P%R7j%_PGVrm%+R`b1xC>P7 zAySWBInJ@Yr)6Q|GQKJ%@mJ-A6E6Qku(S9%$K;%41!@8SeaW3(aHHQARF~eus;U)rc7fdOorkb9u=5tT zI?uQnY8Gf7!KbFSKx_Qo* zkEsL`|D9CNIjeO!3t{%t34bc zDPrdtnVs$2t{yx^!(!d6{A|Cm>uM=^4Nt&{HVvU=pA-ZXeQ0j=y7$Xcw_l${F|t-w z>Kz()D4uCsdaca&N|D?ZLzfz>xLs0aXrP$=7y=$3_p9l&w;m4iU{;a5e_xx${?FEt zAX^-X_nuhvh2=t|p4Jw0_QLC5lRBfs5oP{5`!dUcm=XeWbJru2HGu`kE2ZHX(=y-qOLz`-#B$ zl!P4%TXF-hV=`Bx)*fjZJ4Z2AuEFzA6Rl307pg6XkzWK4rtg1tCr7?B6O6O~*Iw0y`$hfru_vb= zkOvxn&W__kx{Nl?0a^DEA2PX}P#HH-Opy3{=DO9X2%ey$Stsr;6G!TGPZpjwkY_}P z`2_TxuSR)Mbdj>nY#p<@e>_10fZbJ-0h^~`L^sHi2i$5tN+A0_@}k!455F)hh;VO7 zHi*-_GQy)~gS?@pE5eFC{z9TcZNl5?waz$hJ8SLWfBKi7wX5cW`|C%&dhny4Y?C^+ zKB?TPj;rqxMGB#*>5~7tD+z8_PYu73H|N;7q5SwR09jKQZ*1wca++AhJqH*ZloS4f zhdBY3*x0{VumQSI{HbxJKI0h;LXEO3!LpPrcs1F5RCe5tzzL%F3&8H8mmPJSoCQLG z#w`l|Gp?P9e5IKRWSu?IimWi zB4?A;z8CRi1ymU-iVmO(5Cczm`VV&=DizQ?&seB_L`_H_9jWI`dQ0DLdJC7!>3i=8JX#`!uar>n05W-=iAcb66SXx~b z-8Nhu8*i07ssi5Sp@e=v5dTpj_b}H;3Z&wVzg?(%2{tmC5AvR!GGO`%+4X>@$1R9c z^$9aV6)U&zhKnQ(F_{UfzU0EQ*KJ*$2KXT^GNC4Z#6@2)V~7&GH|`BjfAt+h1&;1a z0+?Y-puf8$IMYEguJ6_{({!)Phqq;emcf(p9)yjJDUk_YEKAf&&@{g;-Ej>%H zaagODx0UC0&OI;i_hoN*`J;J)8w9}2v{%78gx$XitDRzvPg|$nSto zMW*8MZ%YIl1p1d9$>9f!qs|mzk^av+WM#D_{eD$8L(5Tce_iq~`F9D282j{@LDmjO zVw<|-c*DaK{K--*?tHw0%Apo->MDrKlci z@<6c-el^s}^xkNSb>`gGdQL^I*W=_3qIR1wraWe?C#) z-<^StdonN9-y+V}>t3VE8GK7*FjnXZU#PPpvyd;>$CmL_pICXO>3#knlF$AgKMMjd zLj(flduFi>4=&79IuaxCbzWs`mRw2}0Rbv8+d8G;zQtW8(Ouxory3KwKQb194}P0OhjI4W(CPuHw_ z^m~#fSCJo0{RrGhY0b}@(`yx$&bs7Axwl~mu?*YxJFw7v^SpH&=I0&%@r_gRkF&sE zwIT7|KQApuMa_;LcJPW{ApRk>hhOjbp{E-zUW=lSh)1PJ`@az}peb8-IVHPdz%p-$ zXg}lrW23*Mack9zTP1$#MHEd%5cns?7?JU6FIn;iw!({ae+2g^^CwLW;{{jodi+@%8_e zenG&<)A*K3R>N4%A{(ccRVjDA_6s^EA|yA7j)_VFFSuvUq!#a%9>U6QzSP=o^AuwD zFF;=0_?c)0XSkbS@au0sC|{FG>s(aEHYg$q2NH2A`&e+Ca4*)yC#6J1LObIS9Ts15 zxAaooyxFNQw4(2w%R4Nbhb(%)T8jmh)v4<+Dlb(EScvHsuTWx)%dDRTyjfxGPsBH$ zC^nS#AYZ5U7GI!Q;0gPs)x}LHqGBbStYK>{|&Qzvfp)0 ziT(_sUklCvE7vJ|d#c8(+u8UGktz6UC9SDIO(A;}EM-b_)u zu7YS$S7#@eE6wdIarUcFy!PCQ-==p;z(Ot8i*0>^p!nAmg0?Et*7ZpWo z3J+NZ1ZL0HwZrlT)@V8X`$e7^p=GWe#%8r03hLc$c^SwH59;~qwifht|LK9fkOP!H zjB*eccX%H1kY-k%XLR(%Dq-V>HjWlvN6(Xm6s)B3jE-8H6)apGR1~k`((d95yuK7Z zU5P-UOt5vYqnVP@NBt{dZr}oR#@=9|%EcaTC&ol}IIm&bbP@z1i0*dD1 zw(6ad_6Y+ZX@ptwyggZZQ@u8m3ltvuM}}G@l)oyHnX%{SS9+Wxe%UUD6T|k*8yJ(@sLOmv)+aD%$@a$D&rPb$i3&h4b$L>24LU z`K&DV!2%6bR)R%?0Fz`+zB4~&e@%)CB4(7waJ*YmVi9F!(RF{5Pd zIzcb#AaVNL{k1P?$fx?zTx}=NcTCof&B71vP3p+f3^XQ!D(xqd*>_?(Yq=JCiyJ#m z$$eG5Tf@_Rk&A3SijyFy!aA37->B|Btu+fNXvPOK(iA^Rt%m8)?VC5;&ip1{IDhSZ zS6Lw25_B9E&!-w;8X5r)a-TV(GJqHkI?ekQIp%V3B5o9^<3fDGva3Kh0!MylMqMFB zQPUEwz&c2^)FzMdMuSR_-OQ2Z4~St*CFoUIUNQ2o-S+{7|C_wq_KbJ>$)T{nWSwKh z9jB_8T`WGZrty0nr`ChN9w1AeWC3VgfEQLfBw#5VbjjP|$zO*j*D%$h3vfh*z#sD` zsn=%r(`;nynFp40-_SwL<$3(9GE(#$G{1C?Z|nOZQ)u zqgR7&!D!}?kO?YNEv{2O=yFJww3<4aFx=0qfLwrwyCm;CJn+Q|84G;jX*xK z=xUz(2*(TVjhPg8!mfDZrH9;G-R14k7Vy*}cmwvg230C{J8W3)G+#sYsFtNS{9{@^ z!k=|d8g2Ae6P^b&T5hrQJr-`0yeUMfNq4Mclk5kT~?d*B= zrolp@XxKVCt4%Ua_`jvQ9j9FRM)bG5;2$4@R$n%vGq}u6660LCcHKXASfRT0zbOc`Q0ERbw{Ig5{Q8Q8S#Llj9BnO`mNeDW8&5&OsQ!CXuC z_aX+VtRt^l3MNcPhdSV#lOtpz{?Ze9krN`8;Z-BpMheDNFDF&10rvZSWWv&+-p%nl z22{Hzv-LN#d3ENiZgcD2et0h@~Yg}%`ypg47z%He?yjhLdu(-9j<&U zGaI9&tR8<+n~sa4$J#tlIlTSm(s`X{T?-c2GqIzb<~M&g2nHRkOUGqhz27;wP?6zg z$-W7xJyuuK70fnv4mKgAh6e4_r-hEEcIcP1tqi-$Vl)*AzjSX|9R|n&FY+ES#FEP$ zBcoE-ePF*SHo8lgdAOI8^P(@oecPr!_F9J*BoHP&JJ86T=9E0Y&D{?4e%qWa{tE%4_3n@VeHVGdNc9w()=px_5SJ(f{PeZ}r-`vY%+Xkw-WnlxWqHdq(dfyWG5`eEed_FkupGYI zA8gDovzaWcPEK_bb!_(b`7x-fFn^hAHQhf^CZToA73zOTm~-z)%n#3(N!uNfYA9CE zNUA1Q!O@aYMy;J~b(o>KsomAO_U=5-gQds&YfVwf&9Z9?{z-_K=>Ur3&N+GWD8*ng zzn3E7DlP{A=|_0o#BgHNF-oy+E+6-_;F|hJhB`-<`SOp+wQVE|(0;Cn4ocm!QOgk@ zV82uuRsOW}nmg5cRtWp7xp)uz`%sVu{dI=hi{&io&4K0Q$mEk+ml^Hk$Sj3gR#e_1;90a$qVn za7lE~>ffAS_|3Ui(%h=<%Mp+u-Cd#ldOuD1b@IU~zPIqIRJrM^^{B=e&4=7*iY2sQ z`Q1<3W#A6%c&CHyDf5R&gQ}Li-Zz#7oZmy2&wba6-B72_7}rdDB|&GdF1VpHcyC;v zb3DMW09xP3IplcK{g^I)@On+cQ2*DTrU9Y5FRq zr=c`rPXi4*v$*Cb_ui9S2Ra8{d;|x^lCxlmoha(^FQvG%3yrY1#8^{&K8t!v3$ydQ zAZwJ6OuA_k24yWIZ}R1$_LJ}9T1Nz&*8Ms@63Lbsij70B^mrcH27^8NdnwBw=J;GA zm8t!QYtYY*Q#yC&L2Y>9?7Ek;v7lH|`jm$*Mx)ja8z<|Mw5|jw8ZtgM!%Wh+Gky$W zOPcZW!R!9dzYFIwwMuytP8!Y;LmOfnKloBOp&7Eh*b)`BJ8BP_Zs5``+F8W+Oa3^W z4{F_>o3PCugt*UFIRoGN^BCSBjrlxHp|a=iTcy9>Es#l^dzcy8*nf&#F)1$jPcNlgZP?1M^^dE+_I$#DotVYzvVaUq=vk{grH zF#jEaZL+Yw>zF*MbO!#E=V7@0^t1A>|2$>5yL$@9;HNr&R^RLdgvlExMu;nNA`pTZFWoIwAJjnEh{Xt;5K@*0qg$Zms+QIRe z3DhsdPdO&rhTkF|BLrT`@Bfg$!#dVxxP%4c8lagcPd|=@l$Ut$ON>okqr%DYp#3OXvA2|ZK*p9-+?1i))dCEp)%s|Qf-v7;>N(JH7i0g(1xm(PFcLDwhrf(FRL&`9P;q;RyhU`c2c?;7 z)Qc6J$8Vi*y*|Y52L1FNA+8KGGHDN~hHL_s_#_f|Z-Qpk-EEE_$-2an6~`P$tK~k# z3FSv!Mvqj)EDG-RA*>bO5)=trpn*%uB*YSbHpD8uw;+F;6fco(5IEJh354(mjC|OE zqFRNPxDfX4oIGQUgEK^vo&jWFl+0lGW)LF49T7NGw^JLr5Zn2}-0wxFHa4G&3?7BIg5 z&5A*+PN00;^rBtvvlFqbZk+FKN~TvuKCq z3>NQN^30S~wvCsbT7lw9I<_*Wb*toDLI3~9Cl(8aT8Ldn(@Jb=@NGR@T2>1yXcUIw z(!?XuPKG;p!pmR2C0wc3H3|b>@IsDjPZ;k9R;lq!K(`%mX$m)!x1a2TQ8?vrX@tdt zI108Tz_C#6X7hDi8b6)`uSnOyc!gvIM6%)e=x@IZhcycZnE+E6kTVdhxSnABdzNv6 zPO`mHtC}V|&CtwnoJxb!fWuUrPD+o%#!!#p*Q+>YB&vzqKoGo|aN$Ey@@S)b`Ak&+ z-&O#xVqMB4Pl83`UJyg>$QK1h1J+NYXJ>XdCUty$|BHRrNT=k{a(&Xp8~%W+mZWU% z=^qa=-3h54@nz*8*YJo>TLjv(kTV2o(MB7wyXXja6@peiQwK!YqUuDs;{O8RSVET( z><@M}B6S%AA{TACI>wvY@mn#A= zhQyzt#kRxYq!D{C|4{yDnZU&$3q0%YUr`XF))`UB0K-o02I*7)o0Ui*n8H#lWKjVD za||emef==Cm0~BlnBPDMCNG1t&4y6JMwi}v@h>JFeUT1KtD-@`$CY2aBOzKABmi2R z!W_c3dk2Col?l6J0C8GN{4Xxr0WUn$C`VVM5`aO4!|P0Lc!A_-SDx;h6YA!2{5+F? zK9KCWr1T$+B6U4GV+_u$vD!l*(G#S`B>4I4gZ`eh0e9u=BrkY+1-QPPnqOynw{L2$ zot)z&>w=`>yUOf$520$)UvZqI$x9hOKqG);DpLcoe-C2j7N1a@c5EzLDr+0 zpCCaP2g0a$k1a{%Id(r{y(;`EpO9M&=-7W-VQKF6`34(;NAWqzf;z1-e=(RwGoxsw zY)hAaReR*vvkfM4vhV_Ud3qnPuUhFKYhYi#at6zdawzs6KvIG<<5`QBTeBrU>a`HG zxVPuvvq-W~gRYSs7Uf$QmVh3_G1yXtxs$$S_pT|`$^?N~2|+caBMN=T_9%Zb?zkZ> zd{PW;6nh2Ye|S$FP0Bvpb`%V`7#h@=Yo? zl>)MJRgw5tCWNjs`SWa1q9Cm+d9os&a^7+PQS^65jQ)$peRRtX^9O`0l_aZ%dy)z# z|8W#(E|p;33`iu$EnZA=*&>1$-@-=r(2*kOfY9f zNQl(^>Re_P1|_#%50vlIFhaT7WV3?^%O+FGiB0};R|}cVk!^3)!0x%R3%)4OXKu?- zySWMG%sBseV@_jC7>&>^Qpm0uE{)AOx#b!Tv_?`^-(2OH4XHg`>(O1!lL4FlQ-9^b_=97uh1;b8tp^(m?n;cfd?ZNB)dOwRoUFG zvV8+4Z>GYxBa-cOF3e@>eVW+fqjHMm_Aau3P;cJ7wM7n^7d^5<`K! zD3?hyT;=ItrzYjIoD*mN%lV^@;3eom0Y}E(n^CV*n$F&~AwB?x-hTE3n()Kt4AuXO z$Mp3ro>d%}2`rj&j1|~xxxNgF}mJG=1)V%qN$=689 z{wt{**HtE%#WWxj@YjAzQz!2SS`|%_y?UfBJn&QEM>R~(sNSC!$Of4;(|Z_H?+gB* zQvvlW&7HiFO>I+8+Os5AwsV@aubpl?)o~2bg)L#N6PTZ31LIy&;JA5~9M_|O_Dq^i zG?;#DCZ8sCdoDh22VF7{Vbfo|#@_eV1b1W|u%mN)YHZt}lk>p+y4Nb#6kGaeT1{-7J5DvCHhvf03A{xi468fbalM~o zbi6IZ5a?jB;~Qn#Wfhd%#A0L=2<_+5B*Jz_9ZQ2lY%?^=)V#!haL$(@j?pWoyfTBp z>W9S`6X4*28OA0txj$+@p~UZ~shnQ%L!?O9xXBx}SfET0<;yiuzVVOJKVA4Hu*LIo zT(*#spZ+y=Z0K_(?H69~v{zl&QDiP(>9sMStu?V)Z92dd@^!MImiNCN+Im;6sOs_G zBBdLVkeRoJ?9=O)F@adO^oY5x54W)X?O)V<36%{nqiHNkFoz2wLv39OP)FiLgPF{y zQOSDSy4I7)g}vjR8LQJ`Yywxhn`w z(9~W80pw>E^8gD2E{O+7iRAwSvqa|d7GF-Q_$goGKpe4qInav`W4ME2C0}k8sO6T3 zD@d=PH>Q7(<-36fRJuF6dqahSjDg?h?!{>Y1sjT!SQ)Nnh&p?eB;3~=SDe?Pd~Opz!=V!ELm#7VyZ zRvJuMCx3z{bXhAM31^Cgb(#)X$*h82s6C!7`yK7X4J2I;ta>+fDVZP4E7%W!{j|k@ zWNT(4OAPp7UqR-0@AuhYSt6D#E)lI&W z7Psj3!Ikrs;5Oe{xQ#WJQoBGqlbS4A&s^(*3;*8+fcBeo!FM!1UH{N-HRW{CIw8k3 z*@8LFJHG76Qo=vIgNMkHccA|M*m*(5p5XPI^@@HKx3S6acWk3Xho5Nj2x+(NOT$?u zAurIr>4!u!0+q-Bhonz{xq`u0%-2UU2{yLgAO$CM1rIm9;iDwfIi+?z<%=1Yw6nEI z8rq>;(H6|UOgi-`rWY~HomI3Mk><#f^T(0Kimgs7$+_l>n$kvJxaV@H4Te`zH_S{P zKs+Aa%bcv#aey5p$*7e&`++5(<;|%Hk7E8Wg$=p;_+^0C3ZHxU_jl=|*UjY&D!Gq! z`R?y?(o9`M%2y&K(S%pCH)rd=t9u{%hgME6Dewca2232!Rzo*mOT2FXEf!q!r3^rt z_YIV?M5js}o4W5N&qpZOMjsr34b78HN{xtkUMMiUwN4Xre%zg~uDCQb5lDDu!)I(V z4wglOWf2@|+}off$NyK0zqsOM;Y-mZFv{GNS#odZ zuok$)G_b3Al3{jyNmjWsYHrXrmKk-2E>)r>43sa*pBN_Ga&8d0cf~UKLRv|IFM!u` zkmhLW2Dv-o$&HFQLt-XL``ED;JUz1h%a9(bngpD>z1v}7ZziMJGX}mE+ z!76EiA%+1aM7ME!Sdd69eEE@|5?>1usC}G!yu`?QUb#+Sn)!=)C|v72r!X`ROz$Ao zlUu&DBpegg*3Y}0*CcoYIWUl6YXj5|(LNE)t=x~K6gLO~Xycv=Yvqx7{>f+1(q|voe^0`A-p3ckq(&5|b?^qc z5-z3ysdwd%B}QnrH!C)yLDRAd(yy+&;8va>dCH2>-cRC={PRb_cQ~k)!Qte+ku$CVgIwoo9W{gHLO5I8?1$6vz&*!LbZ3tWtfS9aK8NgPh z6!w=l#oo)1Y_Q;jO0!2ENj9Z+9U{Gs*!7ARcq~KIC9Z;{iB=TZZ)n0Y@muV+Fc&Wn zhe*;i;n-skS5tuQ^ZB1Uh=3v&kB8Q&;e%Ll$ab(H*y;yZkz>tJ6v*omG`k(iq~ zxBHQp`&-Hfe0SiW?&umK0#wHSW;3;Aw%o9FPD{Tadfw|n$pGhL0nXFn21i}EXqJDx zYCbThoUl)n(-$NicTAKl_Xa@`q9A7PSz(<5svDB;*o-nt*sj^2n6?phFO_#~2ka<8 zos}7(;IVq+a{(RN&znbsBH#FdxkE|&)wE#r(v$aOgbZo_O<*nsSs@&TfaKbzG3 zOv<>Tq?uoW)IR`+ekDNbDRin;R=AVFX$`(zzBzwKgQ5)z))B6;nzeW-Vxi`Ge z>u?0#moz^5>AR^1I?QKnFamt7NQBIPL*>?XG&O`8Pxi!DIcJnO`}7gIUpwcs)motFtIKP2=nY&qoURXI>Skoyvn%h`wTbo|12t8s zrL!ZK`9m8nZ$}rPHwYvq>Fr`}>0k|~v#_?Ya}oz1)i;Cb?5xDW`T}a)YA!O?wswlX zZq_=!>bjP`4wfQTU`Yu&F>fd!z|k6RPUr0ib8?4zi-Z5kg#zCneujYQ{xyL+h=cz# zDFZc4IvHm-YdS$LZca;XZb3RB5iTop3v){g3l2J7ZeAV;H$Q}jpOc##$|nNl=coIx z4;UEE&FT$QTUP$R1_S;Q2iwBoE>H->%gc+)i;v6M%?83FA|e9e=7sR`asn+l-F=+k z=H8r6?hOAeLDt&c(#_5VZs+Vo_aM>S!r22Z4hE+BpEWqT{2#GS?*FwYz@&0Qco zT-*<9`tOEnYXAS6Iy(NJ*6wg^>;F67|DS^0b$wi{A==jN&K_=-z{$N~co@nBD&uBt z4tI9bb#{jR_cm(UI>VjaZJk}{czL<_=~(pboUEL^+*$v1P*Z~{Il05loh+@DWW~XN z2rfH2E2xYd504->uOJ`4h%gV2oUAktue>zyk(Cybe!(lt{oj3Moh>~at)1Zi-Ph{> z_7(ac`#yld(FGV;*4oX^)7nbj&DoLe-T^?0ibk%&;RBl z_!8woGX?AI&L- zwx#Hn2MnG==Q3aum`^|fXkQ+oxCmBmth{#=nX@L4Kr$yBa3jfPkd+I)DWPQ`5U}pw z_#&fM2?sLBMgqL9_!durIcB8F^g99~kS{*9AIfqAMoQm|lNEM#LlOGK$mMTdN=hTS zonHb^$qY2i->P|!?l3W~36pg%ED~DZ_Wwv+{%|T@e zKoPW{mZkQx##YaWiH0R@mvOK2x(;LEDeoZ^y;GjZ#;?jCu{Bkt$8a$!_h`{8k%~aR5U; zC*%PEAo)l#^eSnT*hl!0pCc`W5p)%wX>G$oHcd8#|qS8gah9 z=THAL+-q4R`XUcj)&e+cyKY?IDamv&rbtq4wr`!7H4QFSaZVRjI0Zyf-aa-PpMVwQ zyGj2DWM+D3Ij6HX&0ZLMsA`I`vPNV@woOS|v4Rq9RHGZz*egf~Xd2+CAoL#wwrpwq ze69rJO3x6aGb4{rqJVI(1jE}B$Zno}a= z@S~&(zjsjyLc@z%kL7FlUo@cnr%8<)rLlisR3NMbml5FCLLjWx8dQ5@kaLGHVTl;~zq! zi%OW=-CqXqy1kX9^ybBZs(nV(2u#Kw^?6B1P|X+4@B;`k8kWFv`MiLp9h=Yy0K|TT z*sp3&*BDHgZu$z!Q9Si4m8gWNv5uKKdoLybltNU!MQtFz0Q=EtF+<( z+0!v(Ph4l3!%RwffU5o4xErKM1r!`0taxp4^xc1h8MC1$DT0VpDv!upI%L-eG=39b>J=#Q2uY1ZAYHTJjrH*H_WW;TK1cb4C z&jq6@s9JZD6Htt5sKdJB=Gtb`378b*7I!L0Vu8WFiK{}Wn@13=)Ku4}lCUgP#%5g|!-nXpIniPgR3 z%bdx8@*^c0o#g|S?-~ZLI#Na_X_avbb)dB>Dp3pINLIn`O%6hTg5St7ez2Rf>^@&k zpC!L4hQ4hoP}RO`eq0d`|2`yf*0?3Pa4GY|*2&4~bhST?uN;Q5ExumfBv3E%rTJ!& z;sz}T)u;f5rA?GQwd?$ zTb|t)m(5BCj~Yp}Djx43HixJkJ$RUEQ}AMXas$4d*ecq-%xZWcqE0L-umZWN6^mYk z43$AC6Xlqnj4H&}^<7pN2TB3&+;lkInhrfkUOqf|tV4-v8+kKgRI?6Kd^{~V9Z8TY zAs5=J1N+d4{p5uQTo*=4Ly;=SBj{Tz5)t-kx+Yoa?4@-iPmSt`0}S%FeIC{AMKj$4 zxMiZx7=}19}s<^aPMTGmtQd2Ng(^Es>jZsPn@5*YkM){ zfJZieiei}ZLqk2R2BPXtF_-Sw*4z;+!XVj)ty)&J-6~ z)=xKoZRuuz2Acb3C0r5?xDW8Km$PI+6AEB(w#oV?TV^)y{4YU_ksVj7ryWx;3Zt#{ z-`c)8_eXHp=Ti(KeB5G$@u=SDymy}+n@u9riHRCOY8k^#PQbCT2Q?TKdP(H0_a>O4 zGrQZXUUySfKGYY7)iRaQ-6ZoeaKz_Ks`-B86Sr6NfKgm+Sc$r!itFY#(GP7Hox%^x zg0`j3k}c^nF@UpW(BJEhwYCq)*UW!hWN0gSv`vaAO<+t7x6ABmcg)|@UJ#{`COV+) zzSNl#8|i9-9VLW#1_O$wGaYBlEYwi-dSbUFUhrrtkxG;yr%nuXC(ZbqvP7jn*-uFfMwpsinTXw z0D!P0145Df$!*7QK%DFhr|t73&Z(4Pj7y(O$o5d?>i=*&Cq{;oM(^pDzJV794{ag` z_H@|LDm%60?ev`WEdj~0kPxCc&tyO-w*&T^9%|C0uZ;TFrC5h8d-nUglaHV}R!0&w z-Yw8Vhv3+uq$Vi%wpRIib*oU;x6qaanEK}Kcs0LpJHOB_1#%}sJ^$xBN8}_uF0=Ji z*IsvnNP%F|2#t|R`#D=RU&k|GaI+3C7{s0il8l3h?HwbaSSI`6&u5fWvG{45VM1v% z^|A77kf(XQ*4{Kjg{B?%6J0Cey_rq>Hh9+b`v*)#Moq(Kid3-VM}?AEf-vsr2hP_E z=7YteRi5~BfXC^zN0@q6i;E`#%f3xXmRjjW!WtsU^b7vTn|#g=*!bWX- z!Ft$yoTZA)T#xSl(zz3bvC0k^0-9yAQIOV`eq6RQ_MUOrDL=B{-~7QE+t|~TRfEoKiMCqjvc3ox@>>+bM^Gu{WiKo~ zHS*M*`APyBn)*tb0*}uGSxWRMY7rl4yYbS@6B^eSmY)2Bk47a;%bQuRphh^zq#L}w ze~`HI^6s7&x2c>0H{k7;-@)>AjMiv!7`yycNleXyf~17@8*dJx8oyy}4}XHm<`VaR z0Gx_*2C6@I|5wu=6F+JRRIDCkKzJTFrhZ(ejKnX@FKdyvLLSl)x2Yt*jnQFHroK01 zG=F{4iPLS^AvujDcK0oX{N}sId`goxt20LC+Te}WnYmBhRPhjM_Qj;F z8)EQIkDI}d9To-V6v>?x+9MG1TUE>sfrN=Xde-2ZW7}m^(FP$vhkqV=4s%yL`0mR# z*F25Drb>@LBgoQ647Y`~(cFu0slC?V>klxr!Zq0#p*;{AJ(Hj$d);~b_Hu@h<4r%! z5b4;|5q8&WP;Iz$*6+WmN7e9L8b$jUO~$WZ7h=F|lwM9g$MSYT%J?N;Emx7ES27C; zNaX@@{wmelWJk_|F0+Dr=@{M%*&O#8-m%XHK?DzBr7*SMDR!7+JO$qp~h-RUK)E+3!VkxSR*|UJGS_I{&ikFdF*6}-e|zv4UAJaKA|VX zp5_u*s1lUoXKT9LU35)BX{2QLtJ)~_OqcRO3xfuw>*)GoBAmuA#^hvd?c~zeB%Zqxu7R>yRc+%Wt@I}w^CKk)jL9~ zdh(i-sWg8Xv~bgDnfPHsQYoBsMD#MC$>{E6Q+7-qTM{|4MtBf&u}Q{Ck{IQ)1#{m7Hdnhq|Y?! z`1c#l{V!luFL-{+UvMBXOn$pl|pmm3ZO9O}tKK&UtZj!Ah!K(4?dDMI8 zU5H6?MM|CmDaC?KW#-YDU&XncwhN7(D?TB~wC#R6Cz|>-;w|&TnZaojE*RXS^z1Sr zsW^y>K0fOE6(>bw>zC+(w0~UN>S$zz-q3TEJu9lk_<&#NEOhq|SE{l!ijO~)d+q_`d@W}662~K@f zYnS+f?9eHDtQ!L4{n^9-OyRI=mh63#{6l;Nl6oHh*R(FpKvMttFz!#whh4h~P=_H$ z#4``G*1-i7Nl*J?%Ci=I zHD95?k+-9U^55h?%$woc^o>JlS*hi-^bpXyHk0^@#c2w|LBZE%a~&worc({y=U1NW zc;^4;dAcP1Zy?Bw1PX#GnG2VoW=cW$DkS&u)Nn&6r+kh7cdwcKrpDyb0IktS$74E* zg_U1t%PIbiG<1a6Y_Hm!*c1pI5r53kv-5ZoLw0KO`ma=jx|kh z{$@}VO|*+S@O@a>Z&K`;6gwK;`@OK$UqFYc+>)<$oAlpP%Lgh~<_5rOqweOGEXnjc zKNY5R$sFOg4>l9DD2;AKGmxi}~7ii%^ zJLv{L`knI1MOw)9clK|HA8_iOD1Z=r1S|F}u*b@YH7UEU)GZMW+rwkuTnibOsV!~_ zAt>C->jd9p^;^%FVHmt7wt)xCrXFED9N_+2xa{KiiL_IbAy)>UEn!@(ZFj>qZZ3AaGD%h z69qdVT^eb+Y#>_AufNQNzP&4q9j~*Z_s9OXsZ8RTUDYD z{bulxzvdEU_b2!FNd(HP2w$2mw9-!G`DfJ>#6m?MteezQ;@~;S9DlKUYJ>%pa|JRL zFb%j_Oej$L?~C5FzR8aMw9SniOG7!yrR<62(q3_qd1hDLpBwIj0&bfgQia*hJ~b8I=U%%*Ko+#Q5Tqh z)3W-f?S$e)NSCheW_rJ9g~4sEu{3cUzV-~>!NnR8l z$DW3gKPG9G-Q8C&bz}pYTOLeLwpW^>z4eGxu{)5Ss1tC^wRz{FeIuAooM8<=8a!8} zZ7McGDpbehk`x$}o2)P8-r9u(BEobh#LdGm&>!}&u}e~M;be;G1vNpYf>2)Z`73Tx zCg>rr1U8CJj(ESd=`W7W-yvBjIh;3sX-04$pj(McN05o{8}` z@5u-*P_)FC8^Yy!p+gu77Q?1XV=Tc3KD@fW{(#*Qxtx9CrwHUrD?zAt@e2g%kQ5x= zy4getHuEb^*2n~W^u#p{u62Sg8?J;~k~=n#drJhd6B91OUrhMiu~6vIpegn# zuvonXzYpJPD!-0ZaW7$^YHt7RS$XW138D%fgcP6Yj5D&Jd|OtVg1$sHY^43%AZYda z9fo)x1%lao_Zh#&2Gy+?+4=DdA>)x!Ov)i-7}q})5r5&oq|+$==u~29$T{>pPh!Gf z7K7j4;ER($suPbfYdik7idFV9$;tAQ@--#d-(U8KWlnTC=dPRSIK*2!U@9L6D~W{0 zfLM!w278^HyIx}clbP6u@jP#ZxI8p>2wjN!5LiG%Wd-o`eSf%+XJ%GCk>tQeWDTv! z$wVI>DRMg3kO-fj;KesRrzpr3r)ljv?G70lfk{^0MvW6PpfcD@5LU&QO5% zD1-pdY}pDaInB)QbfHxop~qfL^lVsGKmW%|PeG}!R~dEh?+6X8;HJ{MJi5*dOBr>= zU&67&b>4`7p{?$A-SB#;BwzEHce)~6M#|lN?j3BiKkf1Zly-;ink1t@ZD+d-YZl0H zz7N-9sq}0`O()i{eD~&X=U`1%HdBJqHaS<+x?x?)H7z<3-KLf0)ehV zDx-5Yg_dIZE>6O|yX(2Ek$w?-T+v1G2*mI2fnpG|o$5?oF%MHt=%KRd3;N4NM5;3S zh>o1h$3uL@Vz+&r6i#FGuX=GPgx)IXHg3+j!*fsLAid6GW z5(Zc|I#^_Osog$af(w4ai*Yau^w53Oqgh^r*0t=;lGm{~5KU}vIgnhpcVE2@6ir~i zD4Q(zvm#uGZ)zQr{C4rzZ~gE_OTK15>0tHRa7O!PdAhGrG3%pEbgPXXoJ)M<-V2j9 zmO(Vo>ooOT%XKa~6_Iiwa6rtpO~Bd{*vH~8ANG=E0Gr;wZqOi5vtHPzae^`+3ugfA z_g0}h?*0@_QtVZt=wPK}mIk|aacJy59jzV4%Gfgk$wN8Pr4^%actRty2PYWK2nhJU zy+l2HiaaHxX^taBRx}2EniLUf(Csmf&k&mC!CS?s)){a_S&z9sk|5Zr+l8#m^)hN; zW#^LE!8Ps_zZn-Q##&yF9UjrHc4c-C{drStDX&Wp?LpmhK5ZZ17wsJP{$sxsO;e@T zAa+x6P~>q)t(AkB^@9Fogr*R^cs!n9sn&;UhQ=E`#x2D{#(RgSQu>=8^MMqk#*Nq_ z+nz$rW^`Wq8%;vv*VC**O3M;f?}ycmy5=v7Bd~1sK}_fqb|wiBPcV3ldGzTS zyLNtD4VbUcNy%8Q=T|i_3^c9Q zD1qG`D>`F(ZJ{j73M8Ul^N;+MpLz{5kNAk^v!0x=HDa`N)-BESR!lgXf^hc*W7DW$ zOPLDmMY;Yo^Z8rQZ0rGcu}=EU!WYT(FWg>GPmVqZi=9`b9xCkG(WzEZI-U_(ZnHM; zE?sFyTdWoPqPkn;`*TnNM<9rF;El33`HC0}Kx11AXtgPu6yYljcG58Yuzg09pkmGQ zS~?x22d8Xt(Jh{#EJQI=s&wsM8GY1xhIl)6*IS{>Sfa~^!(VUwlWz#gW&6^e`pqi> zNv<2G;U-0yLzL}Dqd(Q&4N15bBQLMQhS7laq0d$-@33?4yku2Bl$M z-fiind*_X<-A8rYeqeD^vFT6LFh9gc6Il%^Q3JR6=K=mr?z@x^Yv7qBBSh(z1lE-u7N5^NfS>ieddSfElx}VjX8e)ti{-Jq@22jR zmtD|Ym&Z%Tj|s#6DvRVBwSA}sWf{NDQxm7~^XlsH7tFoU&N#Op;SRh#D0z<0n{lAV zi-Y>5O=v-`$M)UARCo3?;8k7~@*3`?$OdTT3Z4BjzWOpQdl^2hKJvP|5I;X0E1X@F z4MTp*P=Nfva)h`jY2TQUza~!2-s1Gy$v_l%-(*s&?LU=aOVvNkm{R!?-sXxkcOU;X ze$f>$Q6(ZzV9o+23zv&ojo)N9PM+mmX+?|zoU z8cC7!w96Roce5rG!G-h#-%u6Zgc0xLQop;p-RMCXT(L@-(OtN;i(My@;s{G%si2yAzzMp6kRTZ?860a(XHzeqWZAz()1=xM2MnE+n6rEp!ORLtqh-U&SbOgajvwQiS5*kU zm(!rW)lF737IkW`{d@pL-U|nqR51m*>~E+qjznfb*mURvrNaGc zN9CcjZ$v1ihJbPn6TZWTrt7l(SIRNH&k%U?`|MVN;rrS1JH%7qcN`AOxrkTBdR)1; zZX7Akw7=K7b#6)(S{K=3<&AclvDxF~etz%5G^FV1*_(0G zG!fM2i9c75c;@w!bpNK7xIj5xVZ58P>n4;Fu8b=G3gocJ-k0r%r7DAEE!%64ANImY zHI*t;Kkr9ndH_1CcTKKs8>j-w*WhF&zZg;z^vQ6WWJHs)7VA0;xOvSOt8kLYSi0p^ zQyh-;4AjJ0S4W&~TN-uob;u;Kp@BaBD2~=E)Wm7npGLEGT)1a0#0nP?(WsQ6N z(|xe5PWmi8;?Q>b@ecD9^&A{&j@W#3I~=vDie+hqH)W1EjLF=SUl}`uhoC z(5rRnq%Bpk_%x2jlY-1W9C0{V$(8o(zg0W2ic@qUXVB;|&lf^B?K3HU2~@FIi>t|a z!Moh#2EDJ!*+#Zg*7BY^-XJ${Ri@U({abBOJv7GT?IOic%J0zDB5okj5>s5XCsN;0%w!E6NV|c4~Y7-CtRrq9NP~^H;A+YwkvYvJM}% zRq?C+x0;F)pLHv!vpv)?AurKw@Fs?Y(eUI#V?U;TcN+EJAb49wRS*yi)REg`rygly z+x-&gjW>{$A_i}0@3KnmELAq%5>5Fj4fwfUOGhvWpm^dJyKhAh)v;M;o?L_GL*%eA zUd+1pv3vx}c4w?&My;ms??3IGowd6(fb#jW+xm}dBEhs*UJ`RQ1kzt* z4uA9dYt;?lS!Zb2GeykByRAA;ciLx;F+^=2e%yE($zVF=ZrBT*GQi zVi2DIg@fb~>v-or#WEIxQr6cGMt|gZs#4jhF#}JevXLbj=Cms+;}w%7e#|1HY5nv) z`p+lNlot1G4}IfK(Pr-?G@T=i39y!>^WuEhGk$m+l4WWD(X~8W>;f^Rn#x$3A64;O zJ5XjXg46CX_-~vWbsdG)$)FC9BCL%UpK0R9$_lY?qxTo<500}p`eZvQtc`L>P2rn^ z@(`)G5NUTXh)UGGkq_^BGxn0z_Gs0^>ZU^k$l5sdoC;HnJmdpF&%uAGj^f{xmAa_T zdv0{2fmVR(N-oY~3n#);4gFtKPQKoAi;L7Oc6YiFgi6{mjr1a1D;>xbk z9-=BdX-Wa*)k3F~Uw|U0q9gSA(b5m(;)+DV$>@0hNqJOas(~#BBjG!Eh0!BSXur$$~km6xYWegR4rvwEH zg~lK7VA&l74*&A&n3o;xzqP;Zu^{2H=>Nj<(DgrxrYWaYgH_8$btz%7NxW#wkb1zQ zQ8(W((#M=b{jYZKbln;|JqssA_^Y%DCEOU$vMcv(Nc(LP=zX3&)WM`o30~~tt=2yMF!Znm!#0fN0qXCG)(bfNofJ*fZl&!B=*!yn318a65BdZtuje{ z*#JFap_hJ>^htsNZCLle6*zOxKKFm`kja;WwG(qj5`ni(_@--plsn+gfO<|T0_R^? z%AW{$OTm*rHFPC_ygAVbig@G?J~ZL0cMmC}XV%cUR2Zw#){pI1b@Yw`IcUD0(JW3_ zz?xnNXip6n%7X~F=yf@#b<`9TKf33ugZ2~{nyufBS@M;^qVl6tQsciAL=6M(h6J6A z+YaFF?^Gmt0CRcCyj#>1YB{a_pYz@3y6ZV-HvTjS5HYw^XCtHg_G_>S)6~pvr7R`#}73*** zC|qdg!i@5hNTYtISxeZ1vWGrBdujDl5~D2I$~bmgn2g%bFo-8=IlgYTW+o==_wl9- z?HmkAHjOOH1b7Ng*MmO2EdB{0yW6wl0t6B*p8HSr-UuA+!2q~+sVV9RuvQ18Ig+=c z_$&JC$-tJ%api>TR59n+VW-uDzvy4W9cS%l87c?}QIYG*pQyj>@gp&1JAW=KojY4m zo$CDMLe_mEeI-NjtGbuM#Y~DXXG6O%1C_Oz{v&cy!N}xG=Q-aTeNzzX{gda_Nw;Rj zI?5k5zB}j|JO)34aRxpRgfjMwn#qV1#p%7#0sZ013-(521_rH#=@21D4{v1a5}TIL zTttG(FaH*T!|qIGvwG9v&CER#@eO2i_XMoXap1RJGv|}g=i#ZNxvYD(W|*S|!ME`~ zrWt$iq0TL-n}ugMWH zT}pT*xkWmYqsOjk%mMA5lHhSJJD6#_@2lxvF5sQFkxSK9QYU0h7FWB|&gRYZKC>Gwmq{=ZK$OcAjRo&3w=?3l!{0^CF%g#PkrZYS z9W>TS)i`V$r0=4rikG{+6@W`GgN*??w)8q4>;1^WZ-92k!&jHRP`$2oPG4Q9qL1>t z11-um3Fnn8+zgF|+_4ZOx60QZYe`-lz{8EeDnhyJ=pK&roJt_0eLo|Sbp3A9#|lOo zi6IsKqcl1XNW!zF2+4Gp4vkL8wGU2+3cj%$ ziO_Q;4ywDt~6;m51Pg9b6BOO3p`jy0&+=r?778c*}@#z0xW}ohD+$Ux$E_Dn+{2KzH6p)_aABjo>u_J>~@k`%mjb3*L_NFGELl9M;Es8Lc(MwEJ%&NCZn@yTx-P=t|7vcwc>w|xo=RN=mm$5HqXgq?51IO%2T;#b! z#b|xkyV4ovzwK2dbqiULVy};|Fn9nhP2S!u$uB{Cc9hkw!G?kJs6%xaf<`9}W=8nUf=u;&Kh$BCU)euWYX8dhNnNg_H=7RYO;g(BGjuGHdd zk!31av0=OM9>aEK1!Y{zcc(6K1#M`Q5sm%HA*RyJ$F0)nim5+mI|=bEFBG&h{|<^8CVl+d9?+xiPL*FAyY{d(M{C8J4OA4ch6` z6y3M3BmSG0g8u#|2VC!z?9hg!z)?I;qT4e=rHwmooQ8Ixp~4QR85qwhTN*-sbDzYq z*r7V^C)gyWU!1s--PwzfCaz7k8BsUuJ|DKq*h=j=>Q-SwtL92OlL&2?!oXSWGVdNx z#dBg>;nMY6>Fa&k5xhmn2`8CbSRZ7xnJG*qC8#^EA7jAYIX_Fj+zHW>F#mPx-$U11 z7+Y4y@iQqwU9%SL{)0l*>Xyvi5e-?Yoq+z3peh!mI{kv_r=-3`$236E-HE56v(x-T zERBNm!z|;MXR1orkg&F~8^*aq1?0ZGp1wAwnD%sk}VlcB~R?r z0`-U7;#MpW){A^IXqOL$7 zi%Kc7co{on)%vB%G;7t5EhfYk{%6SK%j=qiS(gJow|k%4*RZ3?9o}mupVQu?Y6C*4 zmE?rCXWk>4MJl*3q4;#c;pu^ULqct##95*6$w~P!{p6l1FWtArmQ1HjI3dPN$A9I1 zfFo%0=^Oj*H~2vFp^ONLc{g`Eb3DmLF6Gy;+n`=M%zOpx@DbiU^}Y&4b+Alnm6L3p zWOJ{lZLX_;@ke_NQ~n|T?e~5|&rLvrTG*52O?`IW$tOM&`0BZ2sDpKYW z6n4=!mP~Xm7&=6Zc=q^yw9Q#&>iDmu^{uT#0HSzJkg+N*Mnp5@yAFnZ^#W^w(RyYv-A!Ak$ zzj=LCBo}2oyV1=&48c3-0eh$Kr!VLzEbT z=|jDfcVltfg7nm1ym*qe_{HklHtLe_GhN_$OmF^(IhyUklA2qt_|01b^Gs=E_7c5- z>F&_sU7zdz<6xnd@ zkedJfDiSh72{v$<#3d0mrKtR}xS8-;!%A}-v} zgh~bo5Lrk}NEOv%*U!a9!kx8ZWZ_I_w4!E__ZtN8D@_z zQ}W^YdCz8K8lMe#9VAR;*Uy5x2G=pvP?}Z-m|JwvXIpXGIw4nJumZh--^~=whRUgzN`efl^swhha&$!4J_10R{VD3te zuWZQ#6QR%dmr1)~Up|Q;lmwXHz59@5Nq{Ldn#J)B(K;kuGv9)IUVzIORey4^HjNGP zBHAOCsH4uRB%=3k7{qA$2PJoer~Tcp_s+Lk2iPK4Y|gEx^~N(0fFrKHC>48l9TF2U zP;tdD>Tlro_Ua)vF^YR8QP;EYzE(5(;g~?;_2%Ncc)0!@3!4KD&+CLxi?kl5Xvjf2 z;)Jk3R0<2o(>W%up^?$IS;##y$*h=UlXT^n(}!ig#smVrT6|Uo33FE}glNKVp4QK$2utj`3vPYVqYRzHlz<(5yca(O*s703GL2@y#1ZQTnM;K=90 z__d95JocX%%BJT3kO2s#0B2@>I=^V_-9>4mLCL!_J3301mKc-$C)!t#wvS@N?!&@2(6%1OWC=uqfv5 zg>j?!ohbz)eI-z;_9(fu&_?vvYixM~law@q>oSuby{+Zgzr+Q6%})^uACu(Jj>@_1 zDo2>GSL}feX$aZB-2dUx|MvIsQ`*1E({luscmR{hI4B`56fp5g_K??w3sj zL1Q@|=oQW`x#wYLCuu}l@4kD7USr7*)BOGRy?dTSfAF!onP^&ZzZ~sfl2QJexmRQ# zD!gLdfI>3qi)5oz-2l!|VAZ$#zmP?f<*`30QETIXBGXR)fvB;^FOnuYkD4t3vOu_! zm7n_FCFW{ZWq)LkK;0(5%2*DBYlw7pI_C3`=WY9bfjm>KS&!E0ZNwd~Fp;*$cqQaj zoiw^Rsa(AQl<6y&NwM2PsGlXO^}ML#2U3+O%>WjcwGlpjBSu|G5f-u?9k7BZM3H;v zh&x9hhk^Po*D{ft-V;ClxEJ{<)iFl{6OJutvX2Bu7dICUXCAPZDuUR7LD_!1%d-s5 zaq!9KkWsR~E9o7d)(9O8kXWglm!ThFl7JK|e(TMn<9Ld1!L#nE@c_6!!dWstFg5`p znfA=nA8@`#lhtfcnAHUdW)$x;Jw9}>rB@4|=x0_u0XwHX3 z%>_>w|AHz&&}T!RZwm=)+d01(Ntz>g)4&+}lk?!F@yq%je!FzRl9K4JM@8I6eNl{$ z(|o<&0C|mNiSyy6PmxU$B`dM%!qDdqyp4vlOS={PY)K1W$Ou^<_rL>W_F5Vs&O{{B zX7K8t1n=s1npyAP8a6@J$`QytH&#q+3E-kyI(Dn&+Dw(P|uOTy2``o z&%Vf9MJTen#?LudF8n&DY8`b@9d2rgPpyn!`5a4zo9oQRDSBFZzAzu8fZ+K1E|Rr1}iR|hT3#ww|7L{8=YL!44uq+-+iV=xo6DPh!ZPJ+93w;m4S9RuJY7`cPK)C zSgmxQ_T$ch`i8ja6F;g}g(io5=}UM-$^I>S|MdxVu3Fyh=hnlgl5I1A=AxB5q~i2oIRr0FwEQ^2ya^|=vsOKp%d03 z@)C*T^U!75m$0Eqlj+qs^L(HlO+bNPHgMxt6;oUeL@kUwK^9LX*4p}P)nTLqk%Ka4 z;++qXx`lsUMdQtDL+EV{^o5^cOp^p-_1eB^gkH_Jy)|0P5;u_G=18mgnGxVvsgN{f zTvSGAPf7QAqWo27vRX_{YKranAv$&HUTs&^139?$35sn*^^Y_XQhnp8$|XK}gb$Rc zE4_fESVsBhmRiRxH_NVQUiP!Wy74D!rM&eIm-w9A2Vo7!?ts_h5&*Ivj<7n?|D8BRih(dgO~x z%Qy9>$~_>c5D>t$bp^xbl%8DUAfqG3@lGSo!*l~)nlGjn8TR0lyg$SKn|WoX&=Gr+ zmQfu8a97|!c3PJDldzE8w+Z#->I#v!+i>fy=RL|9*b$xcwP5E_!_8|G@h9Y!pz~B>}OiH#PP2YRa1-(KKz*^_8 zqdnSQI^Ci=eRL4@lfz#=Cy~Q8JZaeo+UbAeAqE~R-sTl9FLti1cXkIYBuhpfzA56r zhgmtCxgf(}+p05s5tnu}rfgO2-U(RS;TNqjKa_{ti4C=*1>0VR?Q zse+8Yb0BnG7P8y?`Yy!e#x?x>BuFEWg0C9Szudd8m`M$nsp6ue)K~(YP0{Sp^gVt;osnb$g;DpfMr|V?Pq{tn_c@|3JkPvLj;ek8I zKH*hijP*Hu|8oA5(0jK(_0iLhghpHmX{JC_g(Z6!` zm?Stf^1CA6Yp4D3T6IUnd~Z>G>_=CRntv5&gYQgIifi6WINe#t0+o;;K0Su@Lj%ha zY4li`%a*y2qR?wEPsTuGT)J`gKE$y!Hk;_qIu^gMO9KtwJqaD->8DKf=PxKuLe#NR zX6>W)(8HaP;`c_^(r=2CK6ntk$GTv-ApMB&>f`;vMUnvhc*ZH)R9M8E{e;X{+B!Y9j&a4G zYmQB}%N0oW4mK@0h(OEt16k^)tUXwwYM$%`NEQjztwBx|x|I`lb&SIKNw2=L5lUj2 zNw*)%Z0?d7{!r)qle`pvt(f_=m{>xg^9{xQev*WD&^<$SX1(;|Aj6=KSSe1=izMD* zQON*Vho&Z~(AaNwzr}}f{(Q)mBqW-n#~-Xvd2Wg9^i2JItbc5d$CK|? zx-h!luC0grfkkOxk=ACj|Vpi^%;3u)6oJD4bfK!73`od%-V8i|NMDi zxeJ7B_NK}ovRR$i_7Q5rsA#<|Kf|%!>m>dp8~1nHj8FaSs(3f3Tg(S7d&{M|s0dtI zOP<=YRug=7Oe1X{^=FZB@FHwvc6+N85e-XRBRI?aOkVd`E(B!ckz>kCe$eE}yw)(1dvp<2cs^HYB zQNd~Ns@N*hu5khWu+B@ZGyB9=Hvh+wVW^c&jke<9ckRdM(8|-XcbM6Nd%GC#b#?qT zX~J@*A{+{~AVE79q9!wHaPEyGj6#Ma>nox3ymoqPbY1w-|0-o9&4*;`QGt|m^jB^Gi1I?hdNr*@}GmiVV@ zqf)wm8YwBG)7Pj05)Jf!3IkzCLDJbG(58$dA6f7vZxo~o-0yp&TL&lSU z3kqo4%7Yqy-AT>n2*Hn7GTtUCnHo2}G%Yfh^-E4;cmj1 znNo1gUg+P9mK<>QlX1ltIax03f%|YfJ$WvAK3TGNy607)cwRiz4Y=-&R>!xMFTS1{ z#QEpYp8-_&uBtjUl53$|tYAGMlB;0Ww)lZ0fKh7Tm$%t z#?;z*oTrh1Vf~$W#5|}ms|Xk~9Z#9s^OYmHtWTYARS*ovmlOnXqnq;rDny()pAMBw z7g<-vT0bg|jZDo;-1sNl__NvdmgdSF1Cb%%N}=5_g3IF7RWAFKb(cPFKV0h%&NNWm z<<|WF)b?KSaDGwLFcBq)h!R9ZCwlbWq7x*dGkUMV=nO*iI$DH5)abp9DADWay(Ze| zy|?#~|K0n0+jsHZxbQQ_bM`rBul=08)*6sYdQ6I zm4CPEO*7>L+MTw0jg(_*k-fWb8@n%bixwoPk$;P*`s6lqb|tS3FlA% zx&w+A1(_53=AE21EG{4l?AoU*BnYvsyA8nudbJR0c#z2^+{cd6@6Kz<@?LuTrb#H> z0YM%ZoU;%Vd6r_km&Yboj7k09WKw&A)-!tEI=o}9N;11q0C*X0+kUJ(nZ1Q+H(cZ$ zl0+#duf0^aZ?YMp9gI<{YhUDZFZ})juq2s&jUyq!Z2xKI{TG)})L7tPwrKaLH+hX? z$z#*yN3Snq6#rHS^ya8|)diwJDKfQc5WF>72$hJGFp5K-)alB7CT1x(T;2aM~P&wO`jD zzI1({$FwSd7%?IrJzNoik6*?vWZ+6;J_Hv|*gNkV$m(pjPH*=S&UgNT@M7~`+hsp_ zuHag@(4E*C;=wtmteejx@hcI1SlGN?ZvV~kz~D1;yH@F zLlb=25435km4II9Ezyk2-k7jmNTr4i%rWUKA9!yyS#ynR_W%LCgT;3?gew1xQg#U* ztUHLiaMVC93cv`i!G7Pb?|O7bZ~3AQEpt?IrfQfWWvqb?{ghF}(=rI9dFftBSKVY> z&1;g=+a3Og?N!b>>c6g}7GrUzDTS)s9A4UDciojQOEk8*e$JnPJ7LZD?&#;4@tFBG zL@iyGe?6*GapzHmG{E59_4TMMW0Q+ajQH+;FYPqfoi?c0uzcBu7 z^W+pc8<}K>t#zQ2A#*{8ba`Vpge-R!TAII5!N?FZU8!rDVf5Fug*}MZ06Of?QZhqo z7_~rV%6gY0H$b|I2bduE;;rrSGE=)^A2XG(68ln8?KDRw$fCpM99-YK)6AKWx9qak zHcdmug#1cXGFe=@KI+gqy9o#0+~i^pw_e%-!m@{i=tx5hDysxp|DsX=WaiabMcndV z&Pvyh+&AxhpixV10sHGWu*pjnoXqW`E;R=!QcVX&0Y>ZiQS^DLiwx6<|6;pH^K}=e zcBLBea9a;WZ@1*AMV3CnD@1PX3=U;+ zW~<-&wASWFEx{vO1(J5nOI)NtJPQMlkjYz*i><`tvh^eImbq-%(Epvn`itv~T~jUq zTGxt@iq6_HT9$EfuW$wi_p^LCXS%x_LBW}QZ^yf95XD!Y%`uTcW4zc-JSD?w_BL)= zG@$1JDds~~>*xE!_7UqA#%HqBUw zL1Q%tpcbg6Gi~6y?%D1EUwvKYBt7!J;+gx(=Xb4^=Zm2iKY1xV^1-Xt1548n6Bn-_ z3ul0$_1sdJ`iS@ znJds^4t>q?Dwxs%6R6>2uH`n!7ThbN{!37Zzv{KQcJP--G9WFOC2N6Qzh+-ByosV< zt54ZwPi?uKQc#|raCP#j0i!G!zI`MSt68I6T#0a&auE)|6aa$dfD6EpV2H*S7 zF!X*#E#0Z+tb1>+$IBCTY`b*-4VlB+V6@MPG=d?Y9zHR6ABPU)t7%-pF<{S#0w7}6 zz`vqel&`alDXvb>yh6)Ls(QAMe#}^K+y{<|Y%YBN!`8X`Pskj`^MEMLsuqUwg`j^G z*G~KUN}!Z~`LURePgPb%E4iN9o%OcJBX)w`+P@xWP8QP#S8yZ2(;UuK>&Oz13{N|} zT9?R71gMZDc`b%EKJ@@^@5aAba$Q70Mk{NQi5N86E|>Q$5K&Rf7mS#1=JwUG{_Zp* zZ=qE~<^->p0`|q`=s74&k5{D;U=kgXjm9>|uM|vd1x!(E2<0 z8O=k6K>E@h9?{osN0I;v!$La#K!l6?-5UT0>nCy@XY$I~TrT8TkDk<*)gTOuRyKow zaVBU`2FMs0X@XzF%w9;~%;5dE1DoUs=JM?rH%Zj1xW0kKfYMvpK#CNU#GMXY%hkbs zDCflNX4o(5*P6-C<#abFS^XV)DV2e~PdODXfY>PvDaY&S)KbSE9^ev5CJWUa;g#Bc zMWj};dj9HVd=!=|G^T&d3IYfW8kk2E>0b5MhL-#`r)>Pbi&g7q3uCc0NfeU+*d^s} zaR-!mMAc7By@}!;{E|*sxqaH?`16el9c8Bw&*?)yFna#7B7M+u^nL#lm8@C0YeR&| zE@hFLCSgNzpvgBSGcw5P58;WBRHY@3#~FAe|JVK1zkG@$%PCm2G%G|htGoG(ei)fx z+Db)3&d$Rg_~V+%_c7yf7`CGL*aZfu-Dl;KDRcOFSX9=bSUfF3hkDikYjA|EQJm~w zBFgk`2-uYYk}5^9I=Dm{EEG0BOk$UzXsE@I%JY2gGG|>)!|M&*VDpe~bj79BmOaxJ|^zMwQ6{0~6=OR1j>auu3z zl(-nl*KlQTmuss7HO{~lmTrRR$AT>`D*lVPX^VA zm);)!?9!vBm!3X#XaH6S#S9ohDMCL!&_W2zWv7UMp~9c_k69b6tLKJgpgvjsV>eaK zORdI`V_UDzIROaH6LGWTic=-Lq8}Wu3`QBU^iD>VcSk^eZAJw*(``W+Z1oBQ*P3v)1Xq z6*Dz^-`SrNU1DYK_8xEHdoA=4K4lBwgOmj{!!O!m+qg`b$jx znZieMv_b<7VX1GJBC(VVHTgpN~I!zFbJ)?>hb+h65<0Bw`<5*;f3Up@kXyuv%?= z6v+!9ucSWzp>pu<&mK!w60i z8u>YYYwd>`$iF47c!biIKSA^A+5$W%3GAm>hmN7ji;875wPSCHT!I_v=1(SCO)%&# zNrPcbLr~tSfyx@~DR#jq+{_|;XG_*-^8xBZ&ocR#;nEj9#q7(J{J8Ynzf&^{&cbn0p>tzikXU&3>{Th z<<~Qg>3L@^U@gQ9zgb_X#5I3;4Y2E0av!P1gB_`*s>Fubs=@7d8IzZQ7Z2$7qo1Q9 zbd%ijYg0gtE?XCgH$&3@@Jdrw`EC41N^p3oKAg>${)IH7w%Xe-fVqTqt{sGicjkm! zx z^aK?EI#~qPrGk@bXl3JpijH_uf6Rp&T`jd*(-)p_5r05Bc6`3&L62!`+vNTU1SsMi zz`b^{nB@<}-XS*NchjV%!fQ}3;2AhdLwV872=ppBr(!h1x|E>i%-q8WS}8z~yP{rB z@h&(x&TqVf3C(P3vde?(&4VuAdVO<0zhdw=6cs3Lc5!K4Wv9e+^Q$`z)8N4Xqu^c8 zjkJa0!)-lqj|k`)pO1>m+v7jE!cb5bhVE*VdP%iUEFSks6JW#Af}OOH_)gLcZV^b{X#sHS)9oXvF)(s73Zvohg+5Lc~ z3@B?fllQ4z>n-qT)=16V9jFVsjY~u{1>UE$uhRzyX^x=xl1J^`&LBFuPz`8FsXwDj zDZnUsHMa)X{oLO{Py))8>gA1Ch`pU~ctd5ee_wBsENNcVax zz{MAlG}Xb}Zp1sUu=RPxRhzk$#b~4Zaz_PtwNkkNcsOMJ)IK+>K*JF%cW1@&hgL(s z@!f^M>rER7k6sBvhb#7Vwb&w z`<1h~kg!#TF678Ct&ywOo%Xfk!cKKH{eQFkLX_jVKTZ%BXg?%~FcN6W8Q zsD(i3F%YOm7vh4a3t(ap*Z2XzhU)`c4vPUM7NcY-pOC42W-IiY!>pe8qZJL<0a$6>U|tpBLN&o z)P?RHN*+33Df-;guVoVS`_FUSM1}xKB)B)q(^Ql&=s2E_*)t$`|ApWkc00ktPEe7z z-jcIBjwAuDrX?(YWc71643aCWzIa*#r&Gw_in_Iw?mfLx*+S7>I2qz#R!cDbz=8jK z+KTtu_7T|?Eh>=huAtP-jFY#3tiuR6dLO@yOi**JFK6w9RaestdMF^U%x7=yY9C4W zaTim&CaWf+&~|5Ptwo+oqvRYGbe_0xMpa`bVFJ_gjiRGflu6!;Q)h-JWde`#&}i~Z z`BZ|T-#0F&@TDmlx5>z#ae9YPqNp0NUqp}yQFR^MyAS^bn1=yHG0!4N4x0qge`9?e zh`xf38wZuVk73Pf98DfW0Wh=&4WKgs?o8^A&2hJ~TbxrNq0sy|`>~Yf)8W3Mi6>xl zgaAM;a`Huqj#;t*E8L2A)d7ifm{I@tnUG%4q#z4$qpJARsYGh2YSj%Zu(Mc-k-7z*;I%;Ovg9YkWbCSM5XLi0pWvh7vNR49Z2Nf=D=0!_Lx8 z8Ut~OK@ZkXyahjzTUfo@DH(!ao68=c@92dBX>#vUO(@YY)!II0rEj5Y-^T*F-hLz@ zzl+6Ri|<4RHee-l>qki#K-@%?m1L&Kx^PJ7>~pFH2YdYkfIDdx{-RgMWAMkSLMGxN zZvyyYn^i(8ZsoRb43*Qk@F#W$l;%yqr>5SI`yTHP3}f_29@{7J8T0W6^uuaI+y#CGhwfXQbv3;Lq*RcbeEvkOB&k>i^lb{WyJ7I zJnn7PtZ8&N{3j)O9jE|&tzyW@1RJ(AVFFZO!^Ct>%TLwvm9}Gz1G}jz8bD?!Yo;>o zKd0w?RA$E&6X%OU38-8p@>fS|c6Q_q^S>eP=qp!f+qxq>-CazoqW;R6%#1p{26pB$ ze`U!XDj7lQr!Te-CaQFN?yZ2az-BHqKr`7)C4N<<Hjw#v;fdIy*$NQYFRaJ^#708C0ggAQmorx4Nn|h=5XrPe+Hai09kf2g~nOZ`OK}D;8qj zcz&Tiac_>sN*{sU;+XkwtcDV3>;xr$e22fcM8Qd07#r*~&v$!!%^0O^9jR|bv zv-*Tx6|NHvsHf0WPN^h#_Rr}kD!`X~TciZ_Wu9PMqERfBE~M;+LM$zfEbpP5#%t9P zsym@F=zKJlAR>v>lV_CIK%xd#$H0e@!Bqn2n*P1ZXc7*97Q&AO?)H5Rtuh;BWNJ0> z@nv9E3|-QLWQ?3DSynvlX`EXf_57(&sa{j3-^{9_wVlAQ}tzKre1HV?3D2( zUsHG~?LcT71(cqg>If?SO4K&Z@{QY^QJ%Cb#DKLcAM~2Zx_)?-PCT-NBt>9ji63MW zgW$B+;z5+dcVw0yM{4xoj8m`);v>n_eMop+ic{1yES1xFQ|!4eFHzdWi0IT&wr4% z2Al7{#<*tp%QbsIb{GYm&B_Fh^qMl&9B=8lsj6IFN^uK!TJs>I8R3w^!8rx0hy%2? zXJFy4b8Te~HP(NI3XroUUjx)UtMBkvD;J$#+0ZRl(wJ;XqF`Q$^Ei^2(sCyyW_RkSXYoaPKsvA1Cri~I} zP<}AwFqa#fWk`!&VP4-h>XIlu$+yEHi*e_qGjdq4u*#LC+lk+X%<-e_G)30N6r=3- zy`%OtKRaF)Y{6+K^R$Fev4FwI?CZ}er*QF#SfvK@Xoy=!nBzYo%Bd61Btq?0&O({o+5fRbP4tgGk;X=my7)m;(aWHe|J~? zi85F-;Is&QKVbI<_tGP`VSYBR&2m=)M&>g34Oq_?n4xtpm9=J}g#=1PFDx4@+Oe$fJqzRQ5Ve zGgfqpp~a(w(;D;q!IeLroJ3{M`uTB!2h$q@J;*tY-Yg3VN?KNG_mw_swVV z+}`u22wW`jFjW@#dWw_IMS!5p+?q2p+^6aFoA{+E<=Dc#;sYsr6RmF1Hl0~ZINt^- zFeb6wHH~iA>3Ktq=JbeSF}OC&-&Dcuo{de>YIOjJ*7ONB{0#J_psqpFDajWwxo6UK@5lAz?%aoke5x_FI@qe+BE=EjBu=6gg_eJgvyiA=m3=!O-EVcg z6XyC^mfVsU?MQ75^$$9>(BQ4*ze#StVZ89r+}zqlUC6fOA_hGd+wQ3=Y?$<%!h8dI zd$eTY-f9tUJcLKI??thjlSTj>?wUWWmKJjNucYW-n3QKWyid1|w3_#gKla4H5`Ti6 zvk+ktBL+<+mu5e0c~-JI8qQ8BB9v)DU zwBffTzRoFNY=^s2SmaK7@1h1}JU%hy-h-Bhm&P9#tpabpJ_{c|87s$JduZ+0GrN6G zqOnTuR_Zj6rkrTj4zc9zO-@rR29l%Qw+Kmh(+Ty06F$Ci>07BEs7%0Pd7|IhadV$qs@%PZ>M9%Sh$4p}PP5zKEcx3m)Z4ny5|s z?g{}fbPi^JSWmSU+~|q zJgPVs2~2kQdh{*GKJ0HEuoTW$!i?KjFm(iZ@bA(+*2~0(ZORkkbL%<{8XM)$WE`Y6fq&V;KGk=!uxKd#MW=ii@KD5&XpHJ*x%xeCjr zpyKi`c&#_jDi9!}E)vT-BKL8=Vgtu2fflyBqT}+zmbsL)Q8LdA!y}~Ls&_j|W6bQM zS&{c?H5o~`=rI~clT9=8O)s=srAT4j9ot?0bp*1463IGbJD95}rAFzP>hyhDSpl_8 z^~>cmpc|7BWR=;cRe8rP<@QUPQLVe7x zMH-u%1_=#_@U;)uC$F`9Q@$R49A-gbQa)k0^J?}P&1HSlu3zV;Ie4N2CVB!4CCKebf4l-F&Og<3Ef}$lI4qgQvR(Xe7yYP?w07<%Q)2 zwSihV?{&hjt+sB%Fi_!Olce98g$QdYVqk4^*ZFi>wIn#G)o8TFBg6HDc9l?sUe~wQ zPo%p_zt$eRy4hgAJK@2ayd~+WE)f(j7P$M_RzW9XwIJMv0VAsrgTNy_@$J=>x zQJ(|I?8rI`kJ`58ax?DVn1NYM92%3~{Ijcsl=S3!XQSJ+4J_ixhJ>koc`b>9GCH`& zBDFdfb9jQn+5OJH4Ik&rE(N#4aT=2Hi$^epKBU72{FGYM<}2~vyl`~D`4Ktd=v zR|tNrx>7kfi3?DdCFvE0hL;ZMtPSiSY1WkEh?Bgt>++_ABpFFPkmJ|@Emv?h5*?Tb zsW?;1EVH>>%M@Df(dS$0$|e@Zo7kj=Elu2KpOY|FSyYzsF7w~j^0ue@8jHE_b@mF= zh=+J*YdNu`#b%pUkkzE=P+hjg)KWs|MJ}wk1=+Y|TjaL8`|l@J4}_~{A_XmcdURfv zM=U%;yxp%eb=eYR!2&XI6zsCHaFAVis`b-cJlSqP5_jjiwEQ@oj4cgB)zBVuN9T#a zRrRf1^ct=qLAtw4s29zoJZsVrn2HoajQX$HG`orasMCs@uO_esFoM{5(Vl`ri9Tsm zR5eNd-k!CIYIAkxQ4nPv`GCOWZHJD`+!HbOR3VoVE;pFXdBfX@WB2&-WYuaFf=1Yv zTpAXtZbAq&x)i3jU_69mtzxdgHt|e>jfxj#uMlojJ@G$Su}zxRV+%@y8q(jZ9Jk@y zTl!g^5*^3$(BH(CJ|BLHYq-JMxw^fF$+$ZCSr#hsNj13GS%|UBjw9)`Lc_$DeX+B5 zJ{1#7{NtgW&JPOLGPYatrM2bWf)pAKo~UEt>i0XRqI!Z#oWfo4Z7webX`fhWxhL5= zImg-U4Md&MgJn+%H!~(iTC3u@aquA~uFe+|=Rl5gFO+q0^|C!RJ~FTkTl#a|x#$

6QWGKnXnHh}g;F>op7%uE%~I}~0PeEu3?L)#XA9J}A)|)A+vVynibDJm zNfm&WaEsw$cQ?BQRwJ~@DTZaS zr$Rz3aG_d7RuF&@SB}QkEfnzlM?o3JoKv^UlsL?5NV@&9qX^L0Y8jj9E#7Sg*+$Cm z$-jZ!E*x~UU)$0=#%EL42arU4A@f9S>{y^rVVuD7Ff1yvdRd?ZWz>IQ zKU>dD`ZexwDGMz<^(;M* zh0N;|e~G$j3t-_x{*ERuJhRx~k(X6G8hp2805U#3IQ+5w9Py&hIs{sJJ?uMNtg)ud za05QeRb;4Z2~ObKzNv2#s8;SM?UA|l&L)nYU8fc(I(G1gMVGh;(~^Tzs+%!Pz2Ki% z$Go%WB|ZuO@bOIaO4S&3{li#wNz@kJGqH*$7Cikiy16Wkk z-RuP7m2^}(7!vo5))MFt>d|XPc>ob3^4=v!X&VaNu+|X~YNBOob~;ZTJ~nHYgoI3n zgSu2~xBujlt3t#tBrM-lPZ43rPAQ-}8nQXEoavQ|;8|JfaHtOcQ`35D6nA;2uU@I3IBJ!)n_tT~2KUVkuuOa+ zoZ-ISdBnBd(Wv}*t_nr|`$0U9sOAd{#kH{D!^w9;2k*_gh%M#^^}Jd}c*VW8`*j2J z8ogU)^%))zV}KOEtas%8Hpm%^*K!5jf-S#wC_p``jGs^x$RW_I?!Ne^nEkh|gtvH` z7#5ac3u=_tQ|%Tv3>QWLPsBHf?Bh@9ip0kIW0YZ@rB5YrZfmt>$U&hu0l>S%FUB)n zJ`}1OdF}kalg-sZ*9@C^Iq>?KZgPvXe&Wyb9zBudgXNkVHW?}TFP|kfbcXrz=gsMV zM!uwgP3VjYbv;gR(-!Ym%DLxDO3HLUNO~l3akydqPIC&j3DzUKJeh0-0UN+r&*_31 zrdU4_X$!-#?@-0h*zhrAZ7EBo>Ry}dO&E}9^NHK_EzmqoL~OCzQ_$NAn_vrT`~{`` z3P0xpmao+wEIvH~gW)fI(|SNT;Fypof5YIu>x@kHyzZi35R)c>C1YlIv_8(9>(h#v z=J+{N*ii|re>ro7$t;6Oyax%RUzZ*_${$8IN^j@~yX*6g#70}j{;DXp~1x%>jiY~=ZSpjlMwGqiT5!w=R9nIsNtsP z?qOcFd*#?{D#z;$aP-obWZ&Y6TXmVglbelOw&qqL(OSxAd8}BX*iqEgwG`A%0uoFI zFe$67V>By}_#s~>YPUbjy5pf!_S}j6J2WOIizn*nIT*WIcs)+2#TqT|Gqj8 z87X&ZAoE+^70S}5I}2|7q3piFpR8nQ_+4KM?$C0Z?L{vmw%>zuIz1x3?ZuVtOJ<*a z*9A7}#bXhs(QBI}QeA7lpcB$Kkl0ljK?Q_daRh<>FAl^@_oq0}>kZK#{x&kBapB*{pMjSjV=!0t(uL$l)s-2d9Ak0&YJ7e^zYd)#^NZS$Txr~O4Vf6I#NtN&jKYc0HV0{fiQ}^E+V%*J& z2MXA;Y0iaYTHil5O!3z|5&eikSpvU`n66WCZHhaC49_{-uif|&`k>G?ojktw0>_n~ zXFHGS9mD0 zEaiEB7g%@lXO-Y@J#7{`yDCEz36l^?*8-PZa%PUn=-!zEQD9 z-Q^n>U`%IMICP8)^~X+@3E!N;j~8L)!74giFUWp(%+sD>)TVYC%(v)Ykz7^1eT@PY zxfvJy@vbaLiUQ5COl+JPP0aS2h5t$22#1?;e4TFB6$NB5l2U#;`b6I5s@b=T%z?}T z>073v@*D*>di?P%JSl}!tIaEZ{*&;`cl4JwIB2=fe`;qSzvUd|^f!aJzdXapidaTN z31krsXsO-kNC$cLP#l5VKP>z_+{vq zec2|C+?lq_?;3d_)0%csRS~uQTE{kL4J5H=MxLeCX%poRw#kl5iFL5$PrZ70C_sYy zFm}po$ho3w!a?)YGw)EsHchv@A6tTPLqkc$X2{=AyAIEzrAB%YH$hj}^m;f~TzA4H z>O%k;iiEy=4&IP=_QDFpzU$KaN@>>oynMj_RqP0R_NWm3RL~Eicw_jLT5bcsR3V&O zdAPTx_W88(@{?H_H~uAlk5p8Yw>Quq?Z=Beg2t=H+4f9wH+}r z6cnoH9ELwr#Zk-AyemB1i?2GSO1M@mDjZ8datEj=RARY|hf{aq+|_5dueeqCSFFNH z`%3}OfYwOMK@W{L3II>>fcue;Ll+z34gR&;G%h#8_mAr$`P^o+QChYubt#7hWGtO~ zqwn28C@8YAqU;{Pw}#5|6r=%PJt*fe~Zcg>c9Vg2 { - return !exclude.includes(filePath); -}}); -fs.moveSync(path.normalize(`${__dirname}/../~${modName}`), path.normalize(`${__dirname}/${modName}`), { overwrite: true }); -fs.copySync(path.normalize(`${__dirname}/${modName}`), path.normalize(`${__dirname}/dist`)); -console.log("Build files copied."); - -// Compress the files for easy distribution. The compressed file is saved into the dist directory. When uncompressed we -// need to be sure that it includes a directory that the user can easily copy into their game mods directory. -zip({ - source: modName, - destination: `dist/${modName}.zip`, - cwd: __dirname -}).catch(function(err) { - console.error("A bestzip error has occurred: ", err.stack); -}).then(function() { - console.log(`Compressed mod package to: /dist/${modName}.zip`); - - // Now that we're done with the compression we can delete the temporary build directory. - fs.rmSync(`${__dirname}/${modName}`, { force: true, recursive: true }); - console.log("Build successful!"); -}); +#!/usr/bin/env node + +// This is a simple script used to build a mod package. The script will copy necessary files to the build directory +// and compress the build directory into a zip file that can be easily shared. + +const fs = require("fs-extra"); +const glob = require("glob"); +const zip = require('bestzip'); +const path = require("path"); + +// Load the package.json file to get some information about the package so we can name things appropriately. This is +// atypical, and you would never do this in a production environment, but this script is only used for development so +// it's fine in this case. Some of these values are stored in environment variables, but those differ between node +// versions; the 'author' value is not available after node v14. +const { author, name:packageName, version } = require("./package.json"); + +// Generate the name of the package, stripping out all non-alphanumeric characters in the 'author' and 'name'. +const modName = `${author.replace(/[^a-z0-9]/gi, "")}-${packageName.replace(/[^a-z0-9]/gi, "")}-${version}`; +console.log(`Generated package name: ${modName}`); + +// Delete the old build directory and compressed package file. +fs.rmSync(`${__dirname}/dist`, { force: true, recursive: true }); +console.log("Previous build files deleted."); + +// Generate a list of files that should not be copied over into the distribution directory. This is a blacklist to ensure +// we always copy over additional files and directories that authors may have added to their project. This may need to be +// expanded upon by the mod author to allow for node modules that are used within the mod; example commented out below. +const ignoreList = [ + "node_modules/", + // "node_modules/!(weighted|glob)", // Instead of excluding the entire node_modules directory, allow two node modules. + "src/**/*.js", + "types/", + ".git/", + ".github/", + ".eslintignore", + ".eslintrc.json", + ".gitignore", + ".DS_Store", + ".nvmrc", + "packageBuild.ts", + "mod.code-workspace", + "package-lock.json", + "tsconfig.json", + "CustomStamina.png" +]; +const exclude = glob.sync(`{${ignoreList.join(",")}}`, { realpath: true, dot: true }); + +// For some reason these basic-bitch functions won't allow us to copy a directory into itself, so we have to resort to +// using a temporary directory, like an idiot. Excuse the normalize spam; some modules cross-platform, some don't... +fs.copySync(__dirname, path.normalize(`${__dirname}/../~${modName}`), {filter:(filePath) => { + return !exclude.includes(filePath); +}}); +fs.moveSync(path.normalize(`${__dirname}/../~${modName}`), path.normalize(`${__dirname}/${modName}`), { overwrite: true }); +fs.copySync(path.normalize(`${__dirname}/${modName}`), path.normalize(`${__dirname}/dist`)); +console.log("Build files copied."); + +// Compress the files for easy distribution. The compressed file is saved into the dist directory. When uncompressed we +// need to be sure that it includes a directory that the user can easily copy into their game mods directory. +zip({ + source: modName, + destination: `dist/${modName}.zip`, + cwd: __dirname +}).catch(function(err) { + console.error("A bestzip error has occurred: ", err.stack); +}).then(function() { + console.log(`Compressed mod package to: /dist/${modName}.zip`); + + // Now that we're done with the compression we can delete the temporary build directory. + fs.rmSync(`${__dirname}/${modName}`, { force: true, recursive: true }); + console.log("Build successful!"); +});