From e017fcde15df2e184431e911469c99f3405cfd3e Mon Sep 17 00:00:00 2001 From: Kyle Newsome Date: Mon, 22 Aug 2022 22:19:33 -0400 Subject: [PATCH 1/9] add updated docs --- README.md | 8 ++++++-- rpg.gif | Bin 0 -> 909145 bytes 2 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 rpg.gif diff --git a/README.md b/README.md index d96e84b..e7faf3d 100644 --- a/README.md +++ b/README.md @@ -4,10 +4,14 @@ A Swift Entity Component System. Inspired by The Composable Architecture and foc + -## About +## Current Supported Platforms -This game engine is in its nascent days and mostly operating as a hobby project. There is no formal roadmap. Feedback and ideas are still always welcome. +- iOS, tvOS, macOS +- Web + +### Note: This is still under heavy development so documentation is sparse ## Architecture diff --git a/rpg.gif b/rpg.gif new file mode 100644 index 0000000000000000000000000000000000000000..6e23372af80b1d6eb84114bcea6bee702af222d2 GIT binary patch literal 909145 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

mCTC- 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%0Deo0njtQQZ zcse1^e91+Pum=+&QMd~qzQ6_{STGWltQs819Js6Tt6-&@EN&)Ar=!ev|Aj6caJCqs zST>7n*03<2t+Y>FN6#e6!jM3sEx+OiXIUh#zD*DBl1^U8U+|2KO2@=g7ceL6yBQW8 zJ#npgBUj7Pfk^I$-hbCV@r0K9n_i3>Bob|fa1UR(kPlNPoqn=c2jlmwSm(CbSpEV? zKIUyKUcs0GVT{vU@@;WR3KDCf(d&mTR?7F(TXP|8Z&{MyJ}T7~*-*D|_jfXB1mo zjz{j_Zt~fz2-qUKM})W)-|~F$4QQrh$yM#JVrg6+O#OJ8q#9N^l^!SutUE*0xL5lv zAk#g|$<@d05*T4V{OqM5(wS@$2w*uSUV`bz$}I4Usjn6O?;Lb<+#Z|W?=g!{muT<5 zO&T(?m+(KovhV^s)Y2>*(Y1XQepxbkuuvWJ=JKa0P_2l>ZkvJJPZ+fA0fBl|KmcPpVa2EVNtR3?C;^TKK#E)-HeYNEw3gG{| zV`kg`+%GA`<+c}fPi$dv9l<3z&{KId%$yA!NGuZl)kr-5U1AloN=n}#CudTOc5Ji( z!#gAshpe+hKp+*0W()Ap`P=~(8)kj~ly5!~v)-OcqN`h7Q37w@~i`+VL6yJrbxS6|)y-;F=xd{4U1jotler zjIycoidvvkkc(STtSuL|ye-WA*2Pm&*)~45KrF}?!FUmGhgSt+oFQO@d)>U(e$EUq z9`tX!HV}c)!m!-;E&$JA26hk-d8u~mP)tm1j7ya^rFeGa`v= z23O4)`>!eXzdgV`H5#Z7c$dH|FBMRP1`xJTTvU5;9=^UGg>ocfbL0agXuXj+tRYG- zluHBg*y0K)g491`+1`=cBoOG(2IY5>c+T+c%>sW0fk;~buSSB{%`%jzfRfz$*R|9x znZSqUxL`wt=x!%>_1sL_Rzi+^_u>aadvuVuq=xdw%{{NB7U%Ka=u9TKNv{2E zbIg^pT2lZSP9}pWe?2PL1rx0vrrH{t~d|r-0DG}NZA2OUmXap%a8&~u+ zR7}cna}|-K7p9VS*~aZENt1C*O#sJX4zeb=qjWk85>S$6LbgCf6M)SB%#GD>oim?^ zO;Gx3@Gwl1RG}ItFw7UC9%PctUBIqU9MNUYo?ToQg^zkrSPEOj7e(mKvg^CE^Duo+FM+EOIX@RM0`NI7qgoCNgU8?tFa55;eqvFZv$*t+ld2GtZ_iok5XfL$&$=&nEeC%m0S1 z;U#Z?E)RHMp+2eGDUGTpYq!Ryhh=q0H^$Tj&a~}pJv`kFuV9$tK0hj)|vr5UJsh6s>K{m zXA2wa6vXLTiogyAAL&Zma_x9 z+@Ozn@gFlJgL(SHN%akd4BJtm-YDizNq@kSve>h77V?H7y1nE0xDtq*&y0hkr~;v2Q1gLB>}%@9$W8?*KEt3lVO;^kkn1L=RdF=Y4jFZvR+OcDmaQRPJFiP|Hx2l zLqD92iNq3t*foqqPx4O&8V!0({+gehN`7{1IJrnLwZT6uKQ#5pV`^ue<#{rx=-+6& z+XCY;24g9lceE*&1Vle4W1of(?zRGeWXzVAN{r!y{BqM72fEiqy!~if{L*Q>2mndx zfMX9tM|=8L5ib*22LOd*z#n<~w*W`DIUXl3EzjX)cy1!12QmP`{WyIu7nY4E<>epz zgT~G7nL!{%m61e7=s|)ybmB4#4({9uv!EZoHvL%y*u?h1iFl-ygLn&K**|&Y+s*`< z-si#RUyRiLw-BhfNVoIpln*lJ!q6mA`_M9$av1vMA9Ee!dlW6t9DY8rOwAO9wqGF( zO5adQYW2+eUyTMsJxz%6R7N`O7>g2Nre=ui5Mm`v2S0q#2uGnr1<4Q%m`~bbac?0% zxSfuMO$N=m=pQpgCk>ph&j#Pk#)Yi0Zsgut;(xG!OqDV2w1qa8L2;rJPi+{YZ9QUt zCzRDvp9h6Ic`jg(3s)w@ds@roa-ZVitBLwDJEc$j1fWBh+*a1YA`-}E?#9I+q-(t+ zsuAVYh@#TQ7YLdUm=epeg$A9K260u+F|4AWnjSX3eZyQ?(USg5V6&8YL8R!p!S64L z|GrEL;0LOJ=NW5paaIFjfoG!3%4}gytEuDy2^VJK_^o z__cr8q=5wY49{mhVK@d^(z3d=)f-M$1RIR@S>sE*)SJJp=60WgeRLR50neJ}0QiU< z-ImQH49nM*)#nPhh?!~d`anLS-Fbrick$s=3vO)0c7j!{y2jT;E%4pdfO5yk)%xB> z_m(Y*a(u~FX6al*1~{5-uf&SHbi)*sy1j0-MxVOYbGFT*^VLPJWQ(CMz3<@m*CgcA z%;ZlO>X1GIRPG1Hxt>O%2T3CG%Ff> z3*I&dPG9Dp`3i$sqLv$NKYAfdQsXxpzu}DSW3A%7?Oxs|>`!8Xx|Kk86w?7dn+{F5 zqKwR6Jm$HI8qYOVqJBDWqN9k@V;<1KpM6<;9B5k@e5^Z_F_YpysjGuZT_@1EQ?&8Vt^n<$nJi$T zj(t_%ozY=yI() z&^>qi&3D3=$OBC@Vjc$1 zsEa}`N_SwNcrDsiT)*J!eZDGgW|`D0g(s6k;d%RVn76EB#Uux5h@=tWUYm z5|=u-&_lr+NUSGxntY5Wubef2To$4ESMaH*{%dI(&FcIeSisY?ZVV4$QB>f&9rZAORU5wi%G-N&|4IJ?9+h73Q4 zD`Am4u46Q5g*=Vg#b=#eaQ~e;!cJk~DBdUzHJl+p4kTnuS1Mu({(HoqlqIQ$tlm+o z9j_y(eUQ1Pzds&DKUcwk!xb}JGi!7|)=8_3WmDJbxAceLOzA=xB?zjORJP)4vnD7n%KmqScEB9~nlbl$Y>xuteQw$=2tE629Dc!yc8d@%!$!jwS46r{}Z`xcVZ5SUzT4k!1JG`_(veYP<3Q%9NJ zY5_v8WD>0w7xZ6dlQ^%R*~okC>Z8H&#s3n1FmcYfY)$y<|Gi)k-$;*Ejy_d%mZil1 zNi^xKT2M<$$Zd+BEhy@MpRM>np`ou9{1#lOMxDXR%oZ4ZNB~{$NRnTVY0=aBd)H7m z_Mem~Q5N7UH(Tv9!WjLfnj?dxYKhyBt!b!`gE55v)7EvaDBUB_nqXC~6e-%~5{vPg z1f?&EkI<%flc}umXmXsdf(>9V2Zj5{MOXc$5E>eibP-9$K{JXWW*FRw7`j0MF`}af z-TBJAfBH|AGx?B6AHIrGSswX5ReEw#8LF2A-GSSL#gQ^$Y zT8TLc0iqrplQ}bV=b)S@J%Y(TLzFg_;g^>35s|8h?}C7&dtKpK(}0ljg&@I+Es?4< z+iR>O-lx+dG34RKJkQjpkWDPMFK6cC&l+Y7D7UeKlojI?0otz3NOS&zntrY=9WGIj z9=v)#4*0x+G0{e=p+trIHwTcE-2JtC?N&P0nJU3YG85c%7ZrIpfR5%qrXE_!90_hE z?i|>#f^XAW+CpZD&tVbhXhYTS2$HZ`lF&ADAZtc;N}*9 z{cqTlxN=)b7#B8E$${DETsk| zxVu%sE!qYY^Ml#SI4Gg4gV}Jh#S(_OiID}xymqu^aGq!;NzRq}+4KTty4+7v?p zhtb4^HbrGc04V7%E7x#ls!F46#(x?WTm~AL7ytA##eVLY$XwB|U2Fs6ezJ;+u2OW^ zyiM10F`{fXopiQz5f*l@p)VSETiMZ<%n2I0HYSyL#>p%F&0~T^$Uxm}kL1lODQf${ zOmHw1mvT0miM}q%U>2I_PF1DHnTj3fYq*n`Utja5>wP;*DoHfv0XZT(3!eDV*i_K~ zTqSsDAL@v}%{*R-gWu-Piw_RuoN_aJ1tu1UcDL31QLJX@8UIu;*ZlNXzBEFzxKWHag()8!~%O=e({Ke<7VpApf1d?AxjC8W+V z<&9G-@9)v5#w5CUY})#;Y)=qX5_Uu5OboQ<0#`!XSYwH!sT>iElq6*Nz=tX4C*06j zJGd)s6FDcj*}?wg7FD=zentDkZP)8Lev@kgp?D=tHAXv%^{E&&JDKq;@A@Ovc~K|K zncicP2&2Qgr~}O%suOEtuFPYk;z#qp5#=o841ng=`u86`IIA5HPWT_&*gK}$;#EDP zuJZNz`~jr7z>38}`TfN_fbP+~`4#pI<&UG5M82+jErwXnmr?~W61v-VwA^q!0dya}ITD0V zvNa*H)Le1PQDE@4LwMf8|A~hW@H^{1D74e!JJCZ8c70iGQ4LzH?LsBhsS)(?JyZM= zngICnPzX5#8VTQElVyI_|Ei_;(H{o`k~M5&FE&ZwDLyie!pnssT-Dk$8GjIe(W+er zTx1U$pYp`mmW%h~H$@1f1$?de3amuV=Ah6t?PZ0qub>>ML#8*(yjYn2HU2+@z=;&w z&!~bHa?>M3I@ok4y%Ye1wg4qed)5RlkT{%My$N~_1aWo2;`9mxSzjqfmKwU+2#vWF zkyK7Hpu4G|VuM`KK^Iz56w6I9rB=Xf63zEjA+ZYpJ74~BOf;xDV)%qtFmDpDaY@Mm z2Y_t=U~U(z5rapd8VR$iRntAmC-~I^UsB(s+m947?Xc^5Z-XSqw$=1S)x>Y6ACq#V z!eSa!3V=r}7UT!+>vxJzO)#wG8*nT&67MG;;jC0wm$;L3Hiil^_mvDTfMG3tkk%iT z`FTOX!@79d4i~2DE%-+i=jV{jrX%7pRg1~JfV3qwA=BcQ{?mLkGFD@|SuGU(JR~Nj zAseBNM+2^MPnK-G%*$65Raw1hkN_Ms=6eFBlK@=G@Fy^yVJrePOH{xULPR3jQ(`*e z_90dPtv~>}SyehEX5V6~nqIfsn}`gN?ltt{A`P!m7_ zO9d{uu)A^hoM3g&9Z@sP47NPPkYn6|PK{uLfo*O60e@{3T@@^O47O6dVzoyx`bhY1 zwdwlam~T~|HIC374*?Ahh^*AvaH3`|5oAUnnToDH8S}n5w2?b#iNa4$F6VAbF2obS z>q#^cobX1fo2(z>$M9V2fh>NU;ujrQsGmu7SGzLvYD2*@zV3tuDJk+qa2xN&l0I26 zTWP7&elZfxm?)z6cGMXBn83ZD0(T0A9sDb_bb>Zv-i$5L+d6+ z!dj&>*-N1TK)B~P=F66G!1+SnvxJ)rn*Vm}hKGOf0(m;Q@S{)PsWq*C*hn#2f9)iz z$cN}fBZ<8x*#R7{tq}}rBW`GAeqKp|_6cY~8R%z_nhM({s~ouP#7&-4@uIBp5_h_U zrD=X%)pD}Qmlc&()>&3*@y}w409pu*Ww)7Pq~=?>-De%P06Rm#OdFOq>Bgt3NdKz! z6JJa+9xsDl8K11{h4{Eivuc+~F1&PYlQd@)CM z#Y}brha6zQ@^*W9N(=|$p2 ziOtKB%RZ`H6~R|6YIm*V#|Au*G5`c1@J@G*wG_k(hrmmTBkOY#{M5Ty6h+jKZ`B2Q zF$_E3akszY4Fe{8S%yTUEtt2fY zTZGk;vcmx&z#0^Q#ScGafCDax1iM`04=^OA=SE2bT{k#l0r>KwhukkvxGgc)PEG}t z4@NvedQ?mcLF0*(=6pof_4b>non-Iz2IOk^yc2rTKHQc`HVgWUM`C-bgvo{orVHf6 zfcTlg3;-azCt=f1Tq=K{RLXoD;@Uh5_cK_i2Yb`kU4?wVjLcP?f=|saQOBi2#N40p z%2uYr_~FN%j68hR&|W~s3Fu~f*j7WYT>Em*O&!`NOzlVXRg|OenCAcqgf4&>;6Mrh z_z_S>jH2cRfZ<561QGyZ=4RIo1P_yN$9|f-_#hUIHP@c8sh2L5U}%S`y!7Ae7<1Nb zG8`^d-sj?tR8smo)f%JYFQfK?`9wdm<{JeMp2Ywz9Orj3c5Aox;5vaF-GdDgD>DeX z2qJl;RT>-ofxF9K3>dQk;4MH4*z}KTXF&_1^V(mc9@#r%QnsT5ee2ss;=~N`MH7#s z8)kTMe7Q;S*D3v_Y@g=p&`|9CEOKfVd}mZqj|)9}Ipt%NS*KMw?9L2;b4=-TVSq6U zS2pmTQk^vt@vr;5(B@g_A6c|NauhRkrV>V zASMr&HD{M?Lf4N}T8=mpp;We!^=7<#cBgE^PPn&ARE}c8({>Ne{}oL4U5e|Rfzm9g z8bL#p`d;FCnLlGR++;>=bQ=Oe@IMY1U`ZedX$&!eH;gf}r;MDYwkx@d02L4FT+3I$d$et2j?kd3qDKG5{8>1z_tL~eNxE>K%h$tmS=|&_vN|o z`xh~}IjIDM>s!##3(gitovEK(`!D=DwiUiFN0;N^-4D{2Itc%_OWIoB@Yg6**y~ZE zs85Ii>n0j#^9V|oq=icxZJB9!jso^_a z=s0qWg`mMRMOTd_VlDJ^Dr9bcCX?srKnj*_1^ieBQeaRmKmh=B01BW%CAdc^wT_c1 zb$JS^)?iOujxSJfG3wOB5=Y!Z$aQONOZ|&;U;s`nq(&5gg@=P> z&yG~>DY?ya$)nLcVfVgkNED8Ix`8cSA;8d$h*rr)heBn50f=q+mdRNG%oz`I*#uI+ zkJ&i@zB7)h&wr+5PP!P~fTGKw>Wh7o`c!Ez+4pX*1y61(4PvT3E@33vqf%dEGcdHr zq~Z|`xu=Qqke@)J$Jv~pz>w!)09*hDQlOnN6+YeyRiViSAz3_5mmw|*#iVN`d+(VJ zvz#b^UAy#x)qr#w<|=;qfKEBYVwHaSCLg4>o#FqQfQ6c&{v!NRMP z=kgP5w`ODbI}LiG)JIIsuQ|r+tmP6I%(A+xgO(lOq0304$F#dc8ckFgd)SgWxS0K@ z;uQH$*FeYcQ ztq%xa9`8h8D1Yy9{V)Hotb7fpHH3yAK8+0VHx5@UlpZBfNtr zD~}^6%=C-H~x|cBn<6Dg_xX50Dr}sGW~Bac{2+o)px@cD8aD`Ezh1N8?ah- zoB|z!g15~|Gv$~ordq=p88b#9s$KsiRgHBkR&Xqx01!I)MeDY9(Uua<`t5`Ty_^|3 zs$fejMM#w8u^19z5}U@Y0mcq{Bi+s<-e9^Xz37|_nWvq+D+{5-@RucES)u}(`!Dh! zPw(EDj%J(nutbDA9Z^;#nL(^xu7t;p=%3h(X}t@ZmX6w`rT=AG8m{HMSvGBU--LOsW!pG59CkUlYr#W&`kb^7gXB2J9_0+9_Ohus(2pf zgCpmEe&_3EOnXDvYU#ZNZy^eA-vo12Q(+P^wS%B~Rm0;u{X6SRZrP&FYATL*ta&6n zbk(cc>dhY2tGd|B9_`P*>QVn)3ab8tn8j#{00v(bHo*`rEM=9hf)l~8>hwPF10>#e zV{#~AT+RAISgWzG;I-U@@BI2G20!X4pYH^p@<&S$Dxb{Ysq^)o^Dp1*`ud1?1v8ic zvWHCp9H~AVD|8A=$&nr87z>2$FG5t{Lwg1W2m-<(QCRqhkTS_bcF9mQ7a6r$rN|x< ziM8wXKBH9Z*QzOZFIxXCgehsWC1i703Xadw`aN0-jYU)ls~; z!EF^;4h@WajEH1WTyV%}WQ3MUMP?Xwaa@cRrt(psQb5(p-JW%kwvvKn;Hn0H?dA#x zj{$9w@Ue{h;9wl{dRXt6CIb~?&skVv-!tVXb*a*wyW=BIPby=)}E8VY17tT>}ScIDrCa?y1@pDp3K4EqA z;G@!$B%(C(s*3*#1JfK$Rf+acRi;RgQ)P?5bv4K&%eOsBiDcT;iK5nLkC06{DpMJ& zon@+t+r37@^(9l}(Egar%WGW1iA ztTBFQvYxbkm}QxAts69m_V;uZcL%{%=1E*=U8^j&j+v|Z-@qQoH86( zQ1N2MlR7s_XzcMPnxYv$Lf3gXQiB6+$k>Eg4OMbJ`C*zym`2)t;?{Zcog`Fr&_%{w z0INxGzyZ}PQlTQWG+`Q2fL!&3X;e{IM~7C(M4TECN(e!4T!=Nyhi*JzQh%njc*u*U zAs5J69#;SJMrOfSn1~c6IU>V`#c9!igL!cxLwNHr=1gG>EvH9eGdWS(W1xsO5*b^m zRNn#zG;k0FmwlmrTRz-PbF~Z$MPkl;qx0(!NJ^%qZ7Yg}= zJXXxnC_M#vArFX%idf4SkQ#Ync$;ohWo5y)zoLeuv3;#;j#B`DPX(JF2Oi3J6EbMSTTZAl$$R$63C5?YrH*v!z z!wg3rJ6dt_%O&HS@Xb3r%<-5K9;??xZk&XT(Y2^)4bn?vGsPze-E&k?=N8R$QAg84 z%o7S(eT|V_{~=guU}L?sWv$Rkw%T__mW(bkl^r+IvZ#%X91TFQfQosG3$DljBY{LX z&ryelq@cB$xUE|d-gqP>$`*NbB(3^|q$l^W2P0R3TfMOuXi#gs$0o&an}R z5XylzVJUWig(O|twfh>y4D6ki1RqMiBN*97n29@Wn{Fm&4ZE4=QLPuI0k=Q{((C{I ztm=UVE&^{?RE}hG%Y4;a9Qp7{Da+O+8dZ($rFFdfv;zD7RFOet&##L^fMw8}e2_=G z^JT{nc2b$_5_6>kil#RR%oEy(H#_;sk8Kd7(*L4@uQ;6saNWoN#I|=E%pHbw4G5rz z+>wvQwL&G5BMCvmfEdk{A!QJpArsb>CK(k1bXu8Q7fxZMPsoI8M_Qdk7!th7+|4!X zVAJk6n2`gmLnqd#;9+byLz*Zr7@k=ML!4I}^Hf1T?m>eFk>Eiibx$7>0FHeEfg2&= zXckfd;TM-+sFIwIeOH8FBlrV|AgYLtkT8<7LB+6_)@dt%ijtN9;oe{~?AAAVM zKTI^2AAc7UKgRM6(j$|ZRtW}MCR2-R>PSqcXU|S?v27#yT`F#Itus2I8q?bj_BP0n z`Xwh^5J04M>N2G86|y7{m6aAGM6hDUXno>~rxRuruCG8!QwO*xscJ&Vx0o+fqsoy; zjl~@%Ig(m^DofO8;YzGbQfk(thE1bGw=_fo0(&#lC#%TOqV_{tv{3&C5Z|!3EiOZq zQhFj4&Q(*MzJUU>bRulz*92(FAOR9uoZ^~gG3o3QMDMFH68~>OW2A+&>9Fr zN)DhZRooh`mm2SI(+WpC3_5m*1rSz)Ol|NdV~uh_94%*RvVf0%;t4w>t|>4oldLU` z_r%>j&#|J7BXYKS&|~^Wmt&F6_c9_6Vsb7)<*}AI{s2uV)KElvC`UZcQkjp+;%kKH zO;81iB>MRleq3Nl9>djzM)psptpq9w{Q(U&JrEqFiICpHc?b@ukQsaEj4T!yJ9yG0 zPi4`TE3ae)uy?bv2No1e zIKzoDuhUfq=RQGAsf@0zd;lE^1wj!M=HhN`$nRf~71+-X4^HWE;FBH`T6=jW#q8qe zyx3u5Uqyk&=M|-nU2)^t{xP^s3<{9@*}OW+_7U&#;)`GB<0Xs<769YG2h8ZHN|_Hs zT)>n}lJo%BBJ5c)ln!$d8qpwOSx5*;GnUJN=C`Dm&2L839{QN&@@b&Ba=wt8?~G-- z_}NK#5~;7$yHYQ(S*<1mE|=5_!7=y3)aj)hJc$2=iaz>VI*jqIFI-g#OHd=nl({WTOH7)3W_EGx<^ zL16a$RvSjlJ>99Nj>dfi4#!IxF}x1R`2BH`Ia(Yd{})F~+)_SW(qkH%6-%V$+>%Ii z+K73N3qk!E!9bP;85pXam7*`>z^B?%!$=%-K7@u1zFRSPxWa#&#J=YjmN}oLNNExo zLI1k$4{#vQGKI!BgsEfc@<6y3D@O6!Fs>nWrGXV3 zPXu)`BpAAT#A&OwL<@>YS~E5o1dneeQETs7ci;acX{>$aVKlGq4-8{l9RBs57Jde! zuvaW}QlLj3H1A$^Spjl&6hcyD;8)yVWFwaRvV79ARaY=zep7r}~ z5l-LWik=r8P1@xneW!J;{^9d7J2~o=0n@6&H*la3Hu^d)U|}3Cxbevvmaxp2t+8On zue)nm?;n`k<5qZgeq37xX3n*b<;YdXh@8tDHXJ1**MTnL-;Iw~Psw&w<&*5c8xwWR z6qNJ8Lb|xSP&=6jdd1TLY29P-U%mL>nqUqE`9;><*DH}m2I&_q1p|nrN8vygj?~a_ z&;xHQ-`r&cj!;7eB8CPERZihU9(6&>SzrGPc@BLY#}tfU3DO|R7}$+e30_T(ZZuwl ziJ&fR)8xe$yg}TlJqD+_9_5|E82v{Tr3XLt#=iyB$puskwq6q&A*v0?OmJ3~P+{&R zVYQG(vj`IKG2b`*S+=yn2t7hv+*~3#ly3FV)>sqGpxi?I3S?{)75W{T^3fOjp#y)!ni*_?YcPugPSuYv-NB^;0!85wT1$4x3O-rkDp=a{ z%oVHA3B52Jzg3s4NEHE|+Je-C+Ew5@c-#5m(r{>7XKWd{rNOh2+@uIaG;By(v|loL z8>HkGh|vo7&BYuX#~)UK4({SnhzkE$-NQC@0__OY0+f>yo&;$~QZ)ci6R`vQ>CQ0t zP8yV;?VL#)s!JMlN<5Atis@LqDNhrrA^_sY)_evS4jFkk&5B`$iuBxFtVaGpN4QAH zB%#j~Ow6Brn4j%an(c-ih9mTu$@#II$<$+U+!@Kl)}a92G-_lXFkaTWXo=VSB+`5h)}#y4><89}%PiE5)dWPj{bW(v z!r1hbO)BSATn;9R6pJ?ILeN>nG&GjCj28Kkh*3n( z^aO@2HWq0OWQ5jq01GRru^aKWJ(KTwW9`dX0v!EWWeTV z&D%jL#cD(Z2P6T|1t*nJnFavex`Ee49H(&>=W;ry23Ul1HYaiR&l5=J&rRpL!HV#4 zfkt{~(Ja9=ok$Ql#dTcMd0xkO4$JGMU^|%Sd;S7?hUa@mLv}JJcK+NMNWgX8XMghN ze->w+X@Gy)Cvs{)BbmSmAd6mT!h$*|&|ScxHE2XIXoWf`gnMWFvNI3QL~!Gyx7hi>C0cxa4fXpLGZbZWqj@+iOo2qHx6q*biT7n`A2grwnvd)5j1d#S=pqkjA3TmHjXcYh| zp(^TziVcvxjVD$eO=yxhp=Rj#M-rj|pDJpg9x4?uXrXQ@CumPl>?o)XC`xE5s76G^ zi2@Rc0CR$u9T4cx)faxw>aG4~WZ0^7vT2tI6*^_%2C86H)f|t&T|>!`D!@&z>;Z5h z0d>wQLjdTmPUrt3AgO)w6q4dlTWPqk)fu1N^SiRPI`pK3tf2vxZ< z*)Wp9P4Er~@&WI)L&9>%QSi-A{LUea0-tt9w%AT~kZ9C~>ljvnYb-!2jHVm}Z9{s7 z!sv|7Re}HBx~0tsF39c7VaANkglyn|NA+A_T%1EB#0ainQ$J9^LJ3gHnG|<5fa4m{ z6F4hteB56y%<*|A&P+nzO2XWB66)ei&=!nOmWEGBZ8Th70SHx9-0jjLAXPlAE-+{Y z07s|5TIkrTC;-uh z?M3O$&gu|f{mTFl3@YKQT*>8wB*0vfNRjpl9$hrr2bXXO z-_QREzX1b3fCrzjfKe^~k!+7u=GLCm7Lgxf%)w`nmjE`ecMT&OZLn$RUK6RUBRE&M zD8vJ(Z?P!x6T7eylQ0zHLjf@G5L59B2d(-N4Bl)CTY~YX96$pHfcl2<8GmsaqwyG1 zuoF=Smli+tFij3uOxG_C|mLXsB$JxvM56Uyh?-d z$Y4<|Zh)EQ$bSQUGG6QFF1EcaOS28JIu`)l}7N3q6C$s+} zk5nr=$pB3ADL?Wfi}5Cd@dB`^DJcjwJ%Tz-kHM5PmUc_toHO1mRteV7OVZsQLl#!_ zNaIe}7i143i*hx4a|1iGGW)Xzi!nA+a?pY@y;O`isxm(JhTl80o`Ef%QWweX}9=gTWd;W7|0rj`Mp4vI%R^i3aK2;;Oy zKXkEBG*2Vl0;n%g?@ivGn@~~D2!HRqF?CW?Pb42e0yOo!4U8l?^;EA@BqzXCH!S_y z+%%R7Hi&NR{g4}?T)hpj^hkoj1Xn9Q&oaT2FYT+9biyin*oip`7n%+Upn^|-F@Upuu{ z-!)=m-f=Va7=Q9z$8q3HgyFbv>iA+k+@(Bxv9K);6)KV)td)0z_pueucL#=XJ}GhI zbr}~ndb`GOEBClcPhbzWgCw?7-SkMc^G~z0gs3mb?X=Zeluc*!z+iGm19iwE3qU-b z+7t&U1ms67#~R%()+BG#e1_EFTM@GxIXGF5T>y5rhJX`wd+W4_KQ#Y0>-T;0_g?F_ zQFk$8leT)JH*-TZZ(}tD?>2g?av3-GR6lnTXuz=H86;!@9#LczsMf(ypD2hV1bjw) z96*^3IkUpeln(+qKEY)ww^O&VUbA;>!>^70 zq{G@1en2_2xt+IpV6*b3-}#+CHUrCfsHgcz!TBSbx|sO(_d;?R@3<;Qa$v*xtj9W! zk9n=@dal!YukZLV?P8`+B&;y14&3xPQB?6E>uc6f?WKF~57f!~49;d%e^9y}Nrcf!wdQ z*JZsPNte>TFm3J>2W8>!E#T6M#)4};xH$!d2rx0eOT4{P{KQ*)#c#0{y9T#ca|1uJ z$Fng5YqCFwe96Ol$%A~#&-yl_e8;yjKqDthXn`P}>;_6B$?>ho`0u@)+OP-}96&+- zvh5_Q^-AoSADjUah}Flt{3D-y$~S$UTXEDwJ=2Rk$yZvbb=;404E!>Gm~;QgK-5< zb6{(5(CYQMeechR@#7yeKu_}Ihey~q{^d{d%2U4M|IFfpGjuybJ`2I-AS^GAWfp4++ty zt9eLdW6dQqMvpTT4Mp;}j45e)T5>O+(c!Q}pJx9vW2+mxdsw4*aC=+idwV=sSa{@{ zTgwZ~;OG)*n94e;`ur>iD8M?985OEZx>{v=Es(LQtt~AWNH`tH_3Z`rbqx(J&Qkml>CNA6vhJ zuuLzLkJ~nPBBp(4;OtkGRtg;|gBXli#Dx-VT@3Zg6~m1kIcDS-(&I>xRz#k>GQ!IT z4q?D$&`0N8oNwyVlnaLjCO$iq{^Z+f1}B<3hF}KG=}3%>H|NgenYnYNhy*B0lEi8? zYb~uJX<@ttY*#WF$Dky0g|-SsiEEd+H4Fc@ShQ&}AT-bk4-JP51G{}2!+RfFVaML6i&rVt?S=gp%{S2in-9jGW~@{AT}4gPGpyv#Lq>u$q#g0#xcEgGdzdBPuU3VTS^t zpcuB4-@DV7fbC^ea@y`XrUIzBuC`pL||S0~r9|9H)J>6-OSMJ# zT5Azr7_5U6hB)GDfsR(xO&4IeV_b05?Ntw!$?Z61 zmS?u{0Eus|rD2?RMnY$teO?mF4>Cw#&FW;v(-B3;)pzD}$$a-N307Fa1%&Rx`d_8o zkfU6FWsVu6eRm)KA(J;vcq0RjOMnDr2tf#{&xYB$VGeP)Lml>zhd;dGw1VTkH1H`WZh%9EOt-ls zVj=@8pnwZxU;-DIAO(Ce#84nJA?&D7C*~2v?Q-WsG6Kz; zn8AC{sClV+-Zn09GO7sx2JMp*9c5C6?m2IEb|lgF4q~$zGEj1BY@^yF$UgVwXi zQT+;dznMgDbu0fkKnhYIA+DiG4C>G%{0NiEG8{003LBr~9N9=(VvB+n^iXsFBLf!Z zjeB^zzz6(5y%e}WANWYo84802HlS*Q6C%vw2I4{(HZqb+!jZ(#AWMa96PpRc+!vN& z95jtAiG4C08km@qacD*|e{+G==D@YZB}2Ep3-F;3N~;&$y2wQ%5~6ls z0%%loc-X;`wn;A?Y+-k^Rjq!7wJrVYOl7-TC9#&ER>coP?KjPBKvhJNDsJRlP5rkYOb{9)LiDefNxK^zLX=Ygp9!46Cu(tL}m~-GtqeuC>x7 zV=(^|j$Y1{nRA%coz{_vY;ce>%AN3oJ%U zh?yJbJw_Kl$OfW`q;ns8GsNCVXzYDUbnK962V~IVuD=5QZx3gT+9>WPhy?REzEMc!iu9ut0>_!#=Lr{j6wJ*vGlib}fmCSO&UeOhp7lIHZ1JTF?W+g< zoT^?s-DJ@D#b2M|z)H|aVgZDPG@|PVRWBrI&zHt@rZv4~w`qU_9~f(}DlAQBPH5D1 zMOB(dd_lXEteK~V^@vL>4MA<%*0;uWma#?1afpG*oBk}2E1P2$c_R#oX@G?f=}*_t znqjdYSWm8{J#A{U*a`*sgCBT#M@_$3ZpUTsz2vw(I44q8?x=IM)xB;^V{2%9sfOkX zy=h68p}ok%EU|}rXs0$sC>)43y9GXQUAyfdA|PvCl&xn}H>OXr(pAUKVP_MOn#5zy zfI(_aaE^D}IoDDwW67CoB$qB9VTj+qw6^fz?D`2+;BupU|ij8mL;Y*z7~} z5pgsZXhtG|kTVo;<{_b=)#-~##1%=V_&hP1I6N{OfP#U985#pf4}Thkjf0Plk%AgY z5{!_Tl93k|5}KKykunz#q#1)kfT?sNU8+qKofK`fu^bm_5*L8DfFmO!ts?da1oAL|*o9Pia%VNGii zZ2tY6a-G4oOAZ}(UAPgv#}FJdCRL!Y;qU>N#b6jeut~tcK*x>`8eFJ|@uJC+C{JGG zu<@fu1B$w-Oi9yZ7Y>0~)!aGLri}kfI(r_Rx64gYdT7whT3Sm2QVO#!7)|<%XGTC8 z?LTgmz>I=m3I5+qMV<6lh4d8Z!YP-jWDGf`EVnbIca3KOvri$vSsu(Di6%d^5(OYBi?%&04k1}G50 zl$;_;5_G(Pkw9xvZZQ9)0|E@-<+~lm3-7%0);q6XZLaH~oVVEN=)e93tmiDzm1}Un z2LpUCR5(7t!B65zAuz%eYM}~S}2q7330s?9o zK!Ard&unweINz*u%>v-%vV!}9Xe5b9jz~%yLnmEikNn``9~j0oYgW-qD>?1bRA((B z8I}~($pZx>0Hu@&B1okX5jl*}Fn?Zv-SV8RFw2*5z#b(d_Gr@Icw zpaB(Nuz~Ed!;Js86dlk$`v$0H2;#NC^U4Vu)(RgywMPq^#IQ~&|Ag_-9}PXV$6Kpy z9Ootw4Co2$PJ6fxkLzcWinPW61`}Wq0s6Mz{=@+5ub+Md$q}z{!W-L(Imh|qzwj&w zO9K9o(F-W_Ph$)_ApiVVu^}}|1E4zq803)wD8&y0s%yf@lJ*b=I3NNJn7{`K;Jzq; zP=qJUPyv*twV@@Cg+z6nMtSCr1V9N@% zTjsKg$#DY%7f7-FDe##8^8_&gMnHiv0h#?u;4q=dv8dGI00SsMCpZ&~5gecZ254d| z2gw{GVbfg*a3l&*mCXnhz@6}H&^zTB&vw$YK_^7y1Pnv~L<9tgJ$xZRb0xzfJ6+N~ucGBY1e;=xjzFC$J<79`ZzkXbC+L9F`o(~|p{-Ll(Ut28 zgn$X8@2VJJrD>30@>>TQco~~6Ug8e6>z{fuQbbYxeZ+kkQ?eY-~a+Z$zGVHmuBtdp|}BV zZg7fA;qFJ;j2Uy9sJ&kl9Q&{v+Gz>YTun`v8CzahGZq@a&rwgHg5LJF0vh<646;Dn zE8MW0E*d}psEPsI)lOzPi|)>*E8Pn<*L#B7R}mh{T^SHBhyx|s6O>lh7M0^g3041E z7-9iY@D`10L!v+e0+0Z~^47N&0ZVi^?D$*>H7)SE_17Ly<_8SeYr;7(w{2qt9f3Q&a$ zIkJ%ifU%BseB%)sKmb+1RUFC-SE&#WuA0OvUpe^{QZ8ncBi3t?r|geU&9?w-U~y8V z;(#4TzklYU+QITu-X!>dN63C|=Ia0(%l-PPm0LkstIH11hk-3Q!#bRc%42&6SyU-bdv4fD~{u**4&T%Rm7J z_M+@QJ6Xm%zVU(EfP-BMC%*)sVQY-s+XayaoE9qQO5iEaG0z0f+nIAtF+>}XvFRd2 zY4S<-91`gU(t-uu4yz{f!Dy+w8}Ssv|gczY_+kOx&uq2Y234<+PI z`Xwa)hMz)suGrv)SqP~gKqf$~dJOn1poR|PGZ$oknM*i%%cbz2y!_*z=9j+T!5tEK z!vgqr{wx0opeI1LFa->Qb0Fqt3WPBlKnoIpZvikiuortChg|=xl+vL7Fy2`ZPkF$cf0v zCZxEGp!kXK6GHlQYIS7L=eVa6eHxfKgu`CR*kymhj7q?oG78eO;#tNEIdSwlB8n^akw&Ucou37Dk` zo9R(-cfgywxfFF7WF5IzPf1kBX@=twBtlj!Ly(-yd0Wsa6`EI_7{)OD009dC0S%y? z+=-IX5*3Qj03jimLh@HplP%G*p6WT1(FvW_)PUUSo!wa(k#SoyBAv<^6@>!ZnAZnfP$esBp!~Dlr;(-3#z62z#05-BmXHi zGkAsJQGg7Ig%p{3HYKG2@P<>yS5Z?+V#-7RV4o*~1V@^uur*hZF{m){ zf*O!QFslFBB^Q>hj)xRuI4w1r>dY(fuft5KsLB~Mqnt{8n3e0soR0DlzIn0 zx+B1HXQmok1-hy)+OeeYs;}m(`AI1`IhhS`vJN|ixDX`&`IsWw2^(q#wO9$(1Z%A} ztg}|2>UeHEd!;3|u6$XdvkYiHIfnNrgR5xM|FqCt%!1a%ay=eDutnuzFn4C<;y zElGVZ**WDQ3-wvFS~v!TdItYr%Yfb4o&L}Xm2d|aXGx2?S8$-S0{f^36sZkbLJtZH zoH>2mShT!woUuuR5-_3BppsKav2})FrIoQODuKj#mr&ZOA6rmbRE=CKBbtk^fGM_c z$FiUcB<^}cL+YVrAQg*2t4=Xw77GjmkvA8@Hd{Q8B43Ajf) zgTniiIy4F>X$A`rp(iVyw>E{DcVcilwZ%%ORx7tg)|}3xMGM!BOQ0kLhX>R5e*!_T zM*y!p@()7#P2>rlW#C;o2Rw0mNyTcQb(^3@$pLulOxi1Rte7Jk1p!%UbF+AG6|<(F z#1D6Xl=7Lj^BD~ystf zRA`+)Q48960B2ArfH1!gPzX4;wJsUV&G*RR3nFoxsmmfQEvRH)3Yg>@WhWUK6wSVT zy1ElhaYK~6(SX8E3CYD84|FhQ4pTtShr|DOze&IWY+AmHsg1`ZK<-S9>YGdvCBeSJ!C+Q_pBo~dk!CDkiK*x>zv=SlSgM-ZY!omD9;I$}DXb#N7n_65xfc+&HJ6O6_WZy(~SR1UGu0Nxs6d2AKP8 zs^tJRAx+_Jn*fpa#Jb=F<-y_I3kLIR-eO?Z^PH4v4OGv0C{GZxX5N26HJeK@hSiFO z$=kF%l;aZWpD2u!D;{$IPS{?+aN)tW#*$a7+d0N!86<9qW3bDGp6HkH=!m|}92yNw zZs?dU>4)CrB8sW$jp<|%8IykKn$*Y8fGiD@SAOiF9J-zUsp*Ek;5%Lpr2gUP_e}q_ zpwq#*=ut3$_iWF>84^PZqQI#hTgb38EtwCj=0m{hrVHF6Y7CL)$G^FkuNlDBm+K^b z+yef+KfR-c6O!7E)c`@0=FZBgJ7Va5?id#CTD{#?-KC=Iq@~*c?~c`oxuc+K<>$^A z_s$xZ4Z7_*?>q|1)2{EBUAT3wuZc+}QxNr^gwX_E;W@~@Q7!Q?xJdsenNSPG ze3$gLOtOW^M*)=))lRL^gi6S^{s9_(CA~nru%Mh*KkF1H3le#d7GuwBn^T{9a5les z!u`?%+gh)HKPAd1%enW<`SOF`^u+e`*I?9E9o7DR&Mr*#PQc$Hek8GAuMEd5p6@>IL$c3OBkeDU z-Y@L`d|sCSgX7ZcVZiC>9sQ*T{AK|J6qzO?Gah9b&V{&aQYaGSlsf;cUa{GsgmU3j zzfGp{Qk0FI7*8A@DQiU zm@qXkGae)jKPM-nWQ5F+GBZ*oE@T=SR8==+F{uixT9Z<9MIRtu7ap%N|B8({L`FnJ zCNC}|PUE0L+2*H%C@R~KQ)>UZ#%0(L_T5vGB2grV&Tu?(G&)DFareSuJEH^SCqaOr34(oCVS>4=im*%zE`C|S zzy|1eMwV%^(QO!Qpel!hsTOhYJtQ=6?%Z_ z+48}~9O26u8FKVPG(ot4uz@AZL&}Jy)I$xaIK7Ju!L{PN>mV$a;PAKN*cnH};zleE zD`C1RXB!qNW5>AUB(euYEi!2%&^Td|!3ikZ3}{EJ?319h2b8P{0wb6d@=8V)8}7i; z=8TL&Cm%Ai6f?G~hNDVCYV^xT*cx*VFDc8<*+q{?k2PPDphH45kyOhOMM!y|R6cwH z>eD?TvqP*q_e{2mPXR@$Rh!0*v!7fJl_QN0jadJ}5NO}?CJ|A!xEB%k1b)NAF%o%_ zutw&THQi6;`*sfrK0u}rB8iOft3+~P#bXp@~tST zqca7`rCN&X19eJm5-kdprXa=76AbP5jl1{UU1DkcLP8fD z!2~HN={uw2jV_*3iwkHi0|WU2_>h7TupO&8`gmHr9`?4n{AxkJ;LsxGfkZb zL>u7_HcT>#n-rlVlyaI{z7wRps1N@Yc^t)oz7w7xUG9Pyk-~TkLB?djDP?ggQ=qa} zuPjL7VVArlDaa6#GC5@u;|tLu(m)k1cwrjNQP7H_@Rb9t1tSuyp9yVIiU`pJP?zM& z-Aa+CP$EH+gQyWsgs~TGA&`(nDIhan6E<0h`q41J_lM`DhMObNqX%;6gVF@ub3Rf;UWs6 zOAt1w3R=D*&7e#~LfnLs*iWM3G>xi=IrrCqM?j7nYTeO`h>}xteJ+kdZGxMcAH{jwEkCR4Luy>-BS;ZPFku50+bICrPL5BrX zgKdpD7iU(mCa!~q&&~i7GzHfP!wsZOh&qfpa;_oRVr(O(gfqzYWtsR*!UIFL1$VZA ztV&^?KA=!VBrHY-HKBwvlJ*&i%`;9quF(Z@N_Z4IC*=JE9Um00I3PRuj0Sq8ss`7=o!AEeci z8aeiEMp6f?iwDzNL!P7vlt57&5(aX$2_|iKcm#`zjZ*`r0t84-f)aE)b2Q0v*u*oXLn#f=+;K!`ngevD9a1y5U4q*|vE)GoY0lr|A_T^HdOKx(*8ge62 z1TbzkD^uqGD_^P)N#;b}n9GqUA>v#@gp_4>I)?!X>Ig`UNM;Pwct@^I(42}u{x~HE zjpwKK<@DMr^?<^_YOoEU!VJ7Xds;!q3_)OSkDyQhqMHSxR5IjwvGx#;UWA=q^N0V{LqB3f(JpZ z{wkyL*05*daE6QyC=LWc`XL-pq%$Bc1Sw-u@XrRH3=2wN>mINQrjP`N5BJ2UB;xLG zOi@KN5Q!|s&q&Jxhu{MfkP2Aov>rcQ-! zE)|yu&k)5MV9`-1kxdTrwvc9lx@v78MBqM3?^Y%RgNHMgi_Zq200zJS2tWZ8009L5 z-~fyO1U69%2w(u(QU(&>(QYI2Favf@3-qK88kfs3o242>Q5s|NTR1@Via_Z;%Nv^w zGWJ0jo^J!)fy20=GbNw^0$>2JEdnI3CXl29LI4jp&JK(~>_$sem{0lu5+MJFDcfQ; z2hr`K0JkJ!`q<#$_6b`&=85LuPQC(Ocp+&xWe!8^KXm3!24D{uKmjH|@(4ge_Q3+` z@d{`{228F1BEc~)p@ZCqX|`wcQj&vaMn!-I9A7d_IEDX|YN4=$_{f5AoC=^;2@A!6 z7Y<-FuQT!-pgIoZp@t(otwC_w!n9PR6r~RNoPsLzW^Q7U9a4iQt+Fi+&T?S??Tucg zM*>bQcTReKE_PI>nPNxMOfCQ>An_c)0kSiYtZ||O?mz}W01AMoPP7?K^hZ%t5P{T3 zvmu3u^hmRjdTK}z-U<9vAs66DAH#4;PXQ*$0t$~nGzY*m)33)4U?cUxH?OV(IsgMY zK->ZV9;j4GpRY~Xv|y~%P4{t4G2u<;R89qGqclJRR>(+Fn!vS~LI*00SH#+YsOg5P$#- zK-36eQg`niJs<+`>Y9j$pj_~pjK}W|N3FnNpQuG}?h7CHs{%_2G{2NI6(I4TFu+P1rC?$ZpJdNi?$r251P$jx6#Zhk3Q{@3HH#8pBf(Av zay4BOF9J?L238;iQXm0l7Cb{B1X#cYQUG2bfILmM8~ycLuZdJ6OD4UB!!#)ppU_`M zwjMw;mNb&&3g8GPHu5ZhS685CF>N{rVE0%623Ei=p+QWqiB+@z7Fip`6m26Q>+WLm z0t62SDbHd{wF z@Um7KIXA5~O7+&sLDK8A`qOBCmii6&KsE?FdG#r7>5xIoo&kz;|m5;9=!5V@Gq` z#%(mWCIK1&Xvq{PNqfVt^{_y)~u6YYm!(by%JT(N- zm2pM5MbUONwE%WI*Lkr3hTD%S?hp40mD*m0K0jb3AVACP77|$@6DzbC9z`Qe_c*LI z3%~j*Y7J++kl{#4JHk2r`tn>LErqyM7=RJiR0TZ3;%Nj`xHS2MMA3yI0i0a_%yS8=bgXJf52xsmYCt%^T(n^c zr?iL9@hW~;MdIa`1QJ8AU^Dnap6P66xf9n7XL(nU~X2`9B;r9tHg z{_@vOji+8IsL8SFbeil&8Fg7YCuKTbFb*jYts=?;WTYBvOebY*il)vIboOMY3W$wh zWvj6!Y^EA@rD^+G)hy`^3I1|de0tT80w=it0Ip5JpQpO6^==_t`f%)euhE*XR|ZLf zZ5h@9i7*K>TDPdlfeXFyesG`TJl;5L|GHo!C20c?SFiTr64r9JsyCYiI ztwix8DZ^)KTb+%ivCzju4x#DDBqu`uc^%vVp~Vluk9%jvcOfClCAU4Trh$>*D=H+e)q;LdWW%n|W28owy1T8mdzKreBkp97sKKO8U62~Hc7k(s z^L)yW&tQwY3Jh$fb+V;fB&VtWV!N%F(b1)_>4UwhvWvA~zh4%|(bq4K?IK(yRnR=5 zA98Q$g3UK+yU{lW?P8xjo554vJvFEvBexs05b8}mVCj6eq6yPxFz)dxtF3&E z+mnrjA@GD#nytha9dE(-((N~ykz96aWrNo*FKT??=7YIp{FXN%9gD@gXD0?@Y9v@u z8fvs0XlGug=XfRa*cHep`B7hE3bmJt(-+&a zACw6+yNZ6f0n2!UM5n{rT11^h7)o1aPGsuGkrT)msE+<$kUqKpbnCO;3!%%Fu%7B^ zMNqQ7J;(n0{#ar(Kr&1J(Qn{adCO!tUg5_{D~#|S>p#J6bx2y{hF&^Q4DJS23GD3y zf4**hs}7%4{l4)}e53Bh?gFDnZ*f~yf|q;kdBUa{T|BiZUwRI~)n6It{!Av4_4EHV zF;#9zHDWJD|MgE$tuEjL27$x5{BBms3ApFcb;ZN~w?dv zVK2@-eMuE2wFcra5Jqa=6%16J$Y;3;2na5+A+cz@TqHsxb10z@HJK*0YQ18y8ELji zp*$s1tVSXWXEU7tt(v`-zQ@D>y>7qbB_GWvlUa71NkBX_Kr9?KEHpGoJb*zyNSFmW z0%j?N$q{9O9YR1%LS>Bxnw}PETx@1tNOn>hbv_(Af?ZarW>DzzuJShF2@lJNjEIPA zolZ#{EI2oSi9X42TxfiWnLd>UW<24_Kt3&$kF!!~psp`lpJopwg^PzZBaWw8!(FTK z2M+_RBV)t|5ggQ+Vs^;c0YcJViBm=4Q8yy1!Z|`m<=U!AN+^s0IZ4ukXP_KW18F4| zyOvh|APnS6h7gb9LViQJ@Fc~XRbXD!#gR(Dq8yANL-i*Ng`x41K)S#IiiDU&-Y@~@ zZOylFUYS1sQFLHhR4N)>q8-BK-Ip~`!G4uiZoyY1P1X{@TBT^fVg)(SG*xDhrL2S> zTxbfh$S+k!z#zurYuDgVk}Mx4452{*M42C)t(bOnFRNA*f2pi<_2oee3N&a$u^@jc!nr#EwybrIr{W-UUaI_2GCT9)1}VSRiGbvE*?N$lwem zl>I{ED2bU_T4RAw1;Ls06xhT_UJhx6n!BX=%S@tG@!%lc%-O`9qLI0am3Q#w8=Z^^ z(UdzYP4o;+`iMuVKF7^CpQZkE0ai?9G_{vNl>!c z0nR|+^2s+RC_`&u;EeMbJ@Y(CDC16Ya)vl(_OjAIpB%4QOG6FxVLwN$G+}38X7wXg zGp+PQA_tHtyrOo+R7qoj`50WWlruy_^c>6~+-t|BFx_{@eK*W_^UZ8aOsSo>S9S~D zH{Jl#jW{G=le~uGZ2%^Z%`$*O^~oZ}lSxU%8q)P!mUEqn6C~L(l4d9oJ<>xDO>@}l zs>7aP>1ZA&PPtfIoM7R3d+v46y#qga5@5f33_-^CW=uiKBSTOhA0$su^UF*B&pa~J zN1y!%LtsC>_sXAVP1(D93W)j0A;FDI=)c7CJZ8Bn)4ktUe?0T*Xh47W*4Mv({fz6X zAOZ{^0S8zRDP*943N+vX6{wC2G?0M>X^hZVlbN9<%`6ZJR2MR^m_A`EUbQ&|5_oYG z2`&&Y96%upBe+1YZJ{9cbKVO1pgiOq;{#IRL-ufZ!ynGDhe>G_^n4gZ>2ZK7U|A0n zm*}t&jef)Uf~{{>lXT() z=Oid2j&X|9hR~Y?y$Z0!Rv|$WRd7W&1{olEvMD25x~7JLrHf3K0iD=-B!&b!PHGm0 z6WAoe1Hc9aw+5&;xIbwgHew+aMN&yzOtNLHW?IXw=3;Hj!Ok=P$ZLjLok~j6o1}Z|aex5~ z;2C5|9Lp-oiMWJzW;45Oc23vf?8u-15Vq@wJv;~wo4CXe9sn&;teF+&=L2Q{5SiwQ zp;G*DSqepr6|wrx4S9rgQ3RMI7*Y;LBnw^0LMw_(9141=H>fUl@{~OsTG1Lg%LUf* z%myIh@p5^~Vh(ebA1vbajycT~faMg%kaj> znf+;0Tl&$eO@PW2VeN7_quMGKd0i%>0W&bv7e7GBRi1$X`jMO%K`1nE3qq1ybi9oas6D+9 zR{(O z*}Fb~s-yh^u#_p_@W&!hol_A-Gtk90qq39#%n~0$nizKu8;7o3A!36@$_M=Y^~0C_ zxeE|&0?K7|xrrm0#CJuL8S?&a;x}gT|j=`GCV#?q5T^pKJZ?-#z&y z$N&A4FLnNNoZEn$m$e)4tys&Q9E25M=$RP;lH1G07)vM#d+?hWARJ&hOOhRkf{@OW z4MJkzi3R3PbZnqGq>EXl3ngga3PO(m1OVRv7Qm*xVDfpH(t8-Q%g9F_;FbTvm>#l)pqFSvA-oHOzTPNe0x5N8v~nB9K~q zp~sBj6d2wRmfbTTTDKt~8j9G})y%zR*rmOmGeFn?a2uHEAwwh^q|srez22tnAt0t& zA1+%RN(yu+jEMMxHIYf9G|FvAVkDXYYIWFbtclN!gFIY@BHThFf}$k0Oh!ybDXK|C zd=w#Sm@4WashQd;!lE9ommjhs%jICD-C+zWpn7@Prs-lY?&6vG;xO)FF#_W;{$dOY zqcIjh0!*I0_|mKlOiF1%H}TE?q;LvLg~3HFz}7g{Ji!fu&7WF`K&v1lF`i>ErsFy) zV>(t|11cMY@nRp+<2-I!JSv-}EuAYGqCDQ=J=)_w_F>u>!qBV~ln@AjF^pS<(B8qB z>WBrl3{ok`Mh2pwP^eVov?D&M7e5B1JnAAq*5gR}g`Y0rvH408iiG{?&E7(Q){MWpA26vF5k+jMP4jh>hw&rKQur98$rG6AIo2NPvORETC8V3Aa0!#98+pRv=u(HKqm!m5y?@@T-K zb){%c+GA#>RodaB38LE!Vl2)~9h@X`zD8IwCoIMw9Y9#68RzSr1DFb9j|Q_y)3Ly`{44V@!81&mD)XCh*$>Ej>9Vw4@gHXY|4mKqM?%80F( zej*|)HfMeAXP2o~EfOMqD%*hSApwpB^1x=8?c=IE)W3e2f;9L3E|hoQWtb zNWda2S702a91+_8b847!Vwr-%q=q@@fG%FxFy=^lB#ugFj`Apu*5i))s4MD$u6zi< zJkmV@9c9>)C)mPdkcX=cmvLnXzhR2)>D~ZIKu89u9Rz8Y_Nb=$=b^-7JCZ3cCZj$2 zp_!_wFtTYcwrOPgqMOPonLfa0o~WfX0bpEccuQ_97jW>6BvIRm~Gj zIKdS_2EEiws5}de97uAVN2d&wj&Oqp!Y8r)sHl3XkAmu^dgP^^hyo745CmZmGHA0Z zp%T^sv@&b|w0bJEV(YX<>zUQ5@?2C^T~@BDg+#;xI>bR`K?nuRMWSj%$HZS3gy<8< zNcyDc;2nboNGqgn>%Ly=zE&%=Drd7ItC(tPsCucVa_X`YU$7qR9pI>`ZcjNViItk- zU4F!JI4RYHh9eZ1A!I@?42X1$L^SpZ%vi?6md!5N-mqoqs4AzZCM>BHtHHV=@eS;K z5P_ujE2S!+ntilCF=tKIff~71fzV@tiR%*~nXPM4{r0yu2-fXgdY0QQy-Fl?m2CLngYN5@{ zuT-r6U$zy(Nmor+0-p$tn4Q6S5L_uZ2!POzVL>iP2$XGxrv>)HuUD?c5$K zae{8>hVIcOE!M`yh}KzGq3)kCViv|qiFz!9lppHCMXS(5>W=8alwa&WWD>g+ z@9`Ez`I;~2qA#u-Enq}1!mUSaLWN>|0c;AKN`Rnk+D?e@+XoGT;TeKAHp~D;GT6{BnnzcdJZTdIF&_MA?_$y2fG6Q z1QrDOQt$+~@C%#o(P9!_q$^FOC>46laHJ2oiCg-OLrmyJ2bJLve}V5N0}LNZ`ATpF zqwf;is1xhP1w#*hSrtY2CCD~Q#xe$;Y;S8+L?e0w;|^~BN(GTVa1x{O`RaxQLvb3% zFq@e|*UldmUxhf(`4JZtJZmozQQvtU#al~iahxmnAw2#5aN5ZuF2TEP%UVG$>@Nw@Jy zC-EFaGtL5aLOI=tWb0Wv|GuUI?rR(Ey(E32|z|8-#d z^=F6Sv2`io8@#UQJ*XkTja^7UzV_Gb?_UlX@+ z3pR3-Hv6(#H8X}=#={ja5*L@#D9Ay2N_LG=%S!!icVD#`&jE3Rc6e{LazF8MJ9A;n z@_D;5D}Qx+!*_6}ww1_p*J1%$Q^7cDQFHXz5hQ^YqDnUhcx(Hya@@5bfAuQEw?N2u zeEYN{4>f0-H(`tSaBuc|2eu_+@KI9{tCq+`O0;9ho?_|DW+Y4hW9Ob_D+^|87KT^& zcwabqQ#g8$^jH&vjbDj;AM#L(t~|#N#86{+81ohUOGkxOy-=Z$(+7nbvm5C4@ACK> zV|Zzg%bazz`N_xT*Hcx>$JPDeQ`IiGOVvMhryTp6T zxwe2!0vrTEI8K4BOT8SIKzq42x-DOFsa(2QQNf6(=QxSFQx}~nUkGBXLjJ_Nx$FBnl(q8M zHhAE+YiE0Z$Fyw!h&Nq9m)aLMC5TA(`yFT;tN#et+iV6X^f zrz&q^Deh$0V|OFVIu}oS%K)UqRIWyNkrT)r-IbxIhX7 zYNCe7;0(!lfV*9T!Oi>qX942nfIdxPS>LOL=bcE41fmB>lRd@*^}o z<+Fa2)AwpaOX||4)pNc8WWeD=VNbfu!7WJ!@D;*WgTh}&Q9;Yhd_6pU{NQE=-y1*W1HP9GKUg4v6p_D5tbhnOzX+^=3t&C9P=@%Y z$G+)_WJQC8ND+GAKXu?gSV(^Ndp{5aghOJH`1pvDnT*W&ggPZt$)kF;J}6TycPmMa zRw4;ZG?HD@SxT1Lt$wwQ#i4$Q=G$AR-0$W8!n#OGlE^zmOjKNCY;=5tL^PVDd>A?V z;Amo$xRBTa?fewo@+_5DadCkWfEj_93QY@*wHgimTA+iVSfnVGG9?`rHl+|b6VZrd zZgzf#W~7`xBK){mcFg#7lh}6pmI;?hSwR({aM||U&hX}zu#>O5g0&UiObq{~Xz%~` z7m$JmLS&*HM3_(^6lx7EVbT=omN!O&WDIig0mg?Y*fMaCv8B#PJG>_5i}X>3hL0XO zxP-}46S5H>P%gxoQ>Ubcl?vW$bm3m3ZP`+pICLR{(oYK@=yJLM%ajYfnk~J!RD)7% zT(@fF%Aug4on_79>^bdW&1O}}5|zpS6l)YsadA!L11-a{x*zxYmHD@>hD(>Sokg73 zS=vcRlw4yb)M}%z;tqWssI(WGKy0F6_J>)t=B)&k7*w2E^&-ZN3ukhMN83w%FXJvN zg-r?{+0RJQRbN-IGHgNFgHS7%rC_~NzaaMX+vMd_ zFK7NbvEV#_-GkhMa@3)IohB<{lE!Ix!TkekAS{{V%p*`I^s0HRx3Vg0FSDXFvu+CP zv^WHd`}CQDjsvP1?ZF34E2KaX%{p+1wO~7|B`AoCDWp!Y`NxxvGJs{2xjNE-0z4#u z;3-~MBrXG*Y#Oo1oB|jCNhOmqWO7L-AE1uBvM7Wijt3HHK!OGy$Pxl6qTq4?r@FlI zkOm-_XG{y(U^9-cG$^ykAOHX%`2+SOBdVz)s3RgGLJTA!w6q%n0~fEZ zt*pJkzrwsqLJ_vLArk@t9KpoUzR@EbdNLQV&(ho4-A6*h(taZvGUXDI>FDc~h<@zo zGV1dZd(*-qapB(g(HAlUI*d88~HGxYEx;Auky+{Lqj>2AghJ(wwQYC(r+%D@CmQkn&$km@fY;{2(I| zJf}k1$#e8TQlzF;sWy`E6RA?6B5CeyNp`H*qcZOZ37D+Z14J1&RiiMVfB^)@B8I>f zpg;lxe**&^EVwY?!+}fXMP>m3g1Qgn#))%>vfRp&@f49%BxUBwpF@L=bHPv{(3n$i z(zBUs9@3d&=b0Vb9PK>j;8C!7nrLPr8T5!29jddY(Fq0|K%k(cLAY=zWXjM$Mu58* zLdeiwYhr)_0}O;8FTOna^XAi!FI53iEei?|FiSA|=5*=N@81`4L6IUx_26e;egqC^ zAb$NdqDX-H5hz3^|Gd-SffEX7;XjKs!pH*@{$u}Pg%kQGh9CwCApmnA2oZu?h`>e~ zSJx>p0V20BGk{|V+~t^#IpWCUk3I&;OawHB(3k@A3HKTvN;V0bOgC|6(~?v=$)t-{ z;t^#bQ(C#CIdQaelV??8S!R~?>DDEdV4~@zk~eLp36(F{XJ~wg9;#@fj4H|uNq)Q+A2V;cW9g;9)z=iJoOYV&be>)c2OL~Ug=vJLUNapW z@1*MLr=&X4A{+&Pr$BRlxb;hmdPq=;0SXZ5M~$W+Kmd-%I+m=l$Tq92v+@NXtPr#u zIo~y}@=98^uLifR3?jL@T4~&-IvIq1q*VVdr`~ST6uJCK@<0L!Ft2v)5@3XhgG=p)Rn;q7l2pr1{Sc0N-XK(;p=w>Fp%-l8!S`G(o8q)^wUt6 zV)O<`Pe6bH&%r#KBs9a!XC_={`>ofQe%m$K?pT8k$N;6nfpQfP41%6Zl;cMpVkA(2 z01QNcK?D={jbzk>7yfkLf&V=L0zyE+cDd6jVk+9UjVx=oxKVB?iJNL}DXWffUBq_} z=t0yJ5k#OXFWPRB!2s6wR^ZWv?uTujifd0p%rAUg-tPJR`O9pDHUfx*?!YgN6b z$Erjq2m+-0-OX@z!UyciQgpEkbNm3f)LjidSX7S|vlt!*AR=%Ma13O;COqKv&Rvh| zRPhiPoYE8mfv)QyIv@a^4|M;a1C)8g1+dpCJ0aqG3fQ6`xj0Dic=3e|oK(Kj*e&-B zk#hDaSNwh$x%Vk=k`NGr7?3!C3Y-9s0@`B;W$-h12+cacazN5BFacIZ;A(e?WshV@ z%URm8ma!}vD|b18#SQKtS_7K|HTN1I{t#Sv;0yxw(6vICFaRAmfi$Pt2JD%!PrqVZ z!M1rY0~Bge;B1sQ!6}}&5zJr>j8>&qR>{eo>X`6MSF9d6!Lzxs6f%&e3ihdj6Nu7@ ztV>s~ex(3aYD{AU5CV=C%Fu>7^r2Ui!8xhMO6FXPk>*OK1k4yuHR2GG$or_*;&?X> z_$dH(JOMxZ$pJoUk2?SVA^_qTIDx?_EMhp#sl#Siz?vGsV~d2@nAq1TjCyX8%haJI zjfd1RNx~o$=)g)(Kmq>&4LCykSJ5UwQv)Wm4F z!JAtikPsQ{6ORU|M%@sBw|VUi0R%K(O}`q}!ZxjMwBsuJ8rJ}$rfNEGT&rZ+HBSVB zjz18BLIDl{fji2e0~9!bK{Szy)}^F-R0Jc%WcaHuHgL6Qo6KZWwMO~1u`_T?$=Za1VBNw28sWJCIQGy*bM+tw{i?@a*m6e)JW)mDw_mz}yzhjg~ppReAi z6vU0t<4W_)yD+M{(7n#0fO^CIS~z%>l^^K*^AAC2z$U^qg$(Y(A}&0RE(g#NBETnw z2voquFn+O&V@%^2+c?HDI3yLF`Qs*yHufK3Ftzo z3<$pSIRFFP%;eOazF(G^jr~n)kv+#um#jkw1sE}Ns(3vVGU1vUIH@0Jv|O&n zr^;XswP628omf%_Ha^l7f@0&lupb}#)vgNSQtR22dNA0C%y_e^D+bV3XlrP|Qh=q< zH|a1NyUNHub`1gR+AtcLa*my>kd;T||CY>MYx{6(KzO5q;!9tBc&WeoB2#y~R;TDr z_lf@4z>a;4Y@wL7g|$1rG@F?!Qi>Do1n^Vxjk1&g99kEfO<2Pk+?zsRAjhzVLb55^ z+8u>>$=tf#07pehq6H7aaR+V{-c18}`|BSEYw(iK5RopVmpe3R^BzH> zK0TmT1MqjR>k1sMm6-#x$p`X&P+rH%my*sO9k%l5Rpz3p&+yWHD8_K_nXda-rp4Oc$fNiI6J z6i85Hl~)gX>gVPIpn$OaM-BD{r%SWhjEFWms#RIO@|gE<=JCA_58FiIp;AY*BOaBF zs(BrwFIhTJ<)ROJzN(g9LiYHo`Pys6KY_n|?d!vP-OolrjhGT}93CMNxf;mv<~!Md zA9J)3^=`Ef{7H8%b(n0OnYuweZ_-+vz;j6tJ`ex7yiX5GP@?;xu=XQLuMYHc$^G1a z|NB#qsntv+{`lX%{^7rWKa_v}@|S=7*M004fZJDin}I#E2N&Ao4w=*x8L0DuDc2x`?S!BK=FafD8&WU7K$QYa6oA^{Bm0gP~k z*~b}r*8n8A6{Zn}lQ4$=P=;i9hOI#XSD1xZ7&`HAf@a8tVrUw2h=%@$WCQqq*I-Q+ z)O(rdhnklNK2%h@=X-|eD!dmV2e1H(*oZnPIe{o576L)nP>6qMc@W5mi1j0iq7Q%$SVU2aCJtE$1MNjmU`fG+=S$VY?Erq;2v?Z(jkM@e zodO~S@*&Y-L>?#)=GY-60zB~eQUX#BndF5Ka0Tv=WcSf#w&srL=#TCAj}{Vd_K1&s z0xstmkSD_x0m(cZl91CqNqA_mp=jxFifAs50Z|ESR8{VDxe~7oYIOsH)OTQldmQc zWn_%j2Nz>gb-{sTO44CxBU|gji_9onz?G7*w}8}E2_ocjzyXDn7bX9v5(;E_aSFCQ zoDv}10s$_`X6L{mUilUPr(xwF32VuMdOxmMup4L+WLVWGOu7Cw%FG z4qCXDtD$}2vXNA{2n&D?|HXZ&hi&kZD&#n1V!4j{HB=drNyO-Y|L3@-QZSS&7GKd{%LqrO_|I7&3@f6myI+}Uxgd7OO-piS{IQ2`tak_iFIjuEmOH#&TaP#X5J z2wvC#4G@eCaGILLVXmT`5GRqAwU-a-nKTM6W+F_UQKN<_4{p+!&J#fKAOX~9jc#H8k3iYdMssm?jBwe6W^|4{)G=SZj(9D{t`t5YUO8c!hk*e3ZZ`4yu|V z6ro5t6=nL88pU6-g_YG=9oRyax9LNR8jFb_jI5D;@7ah$N)HujO3X8yp;DY-X+$mR zNSiZB2_THPMV9!XnNakk60nGcH-i)?1l70zMT$T5Q$hbo>Xiw=3EnwA6xpPcMM0mV zBu@~ly_u$1dMU6W2@uc#%gU*az?>{7819!NT((UeR;Y7V@e+l@dj)(p=(KX3@D%&;)UxPPm#)ZuD7LL zXek~_qPX~M07sDeL4Pk4mE-A`c>R z05Z^<+ew`H;sy*sZ^Xo;;VGq_G7lOXPwHuzw5Lhq*|TqWj8}4@MUbbA5ScU^WtWyz z;Q;ytWo*Qv0sFC~S3lktC)jymBnvWBv6F(UmK+ke(q}|7izyQ_Joieocp0oj zq_b;jto8RLk9wKSdMZv*hGxQkw1rh#>a=*#$BC(de^{vHENn%^G0^7 zdvAn_$+~`sD4K%0bF2xluc=WPnR}DEgq2gH`E>MU=|G_nHTW?M)2%(Z8IGc<`psd3P0WeyQy|z-H8gGk~varH&Z-?od>j2SjDRHNLq{=QL>04>Y80l#bo@u zSzN|!Q^rx4t&G^Tx@j91fQ6lCouZ@0BUuTn7sYm?fKl9^eq5k{tQA<{y7IFQPI1V7 z><0^i$bj6XoJF9V$H~!x)&mEGi}& zI(!rl%XpYwOQg=q6(H!C(ac|bMakOS&GD8Mv4)e5Tf}LYfz0M?2A1y3rP08oCM5Oae06=q573$`9*rDjHd+vWjAIiK8NUZkU3dyVCt( zDl5&(nq-K72*P)$)0!t0yW!KMDAQ9>KQ2ACt9aD5F)KRlA%^PGeA1>0Dtbe+bJ=XY z;^&dc2#vxqh*#Z=;PPRP>COMVb*XURF3Agv5fU5X=#(Yh*3j6Dw73pvUDwvjTX>z; zvsj5zht;zv6?&Y$&hB6!JRCFioGqVuN&5)dWOHU} ziJmS>u3#gt6=GE)8=6YUB!pa=-7J)_8EYY33I7$+Pnus$!q6#$WR@+G;P-kySmYsfAw^_8#Uz7`~XO&T3L`dCUutRzf7rCGy7 zB*DSwD!f?$#HyCr^1}as%Ha1nmrCm2ItkBWZEIy(+o>JEie{pkdyB`U;e!d1`n`zJ z{W&2H2e{e*A$%!(#LbMxU_ykP?U0}73gG4%#m6)o;|$J`?FiNQTbj)-C+=|4iF+<- zlmks|96*w*8a(3NE#z&1FBcQ-_c@Xfq@j%4hzP+cGnE&bz+WlD5k5pixv~1Kr_!oS z{uj&hGudV1w?(z%Xi2NMS3jT5D#~@W1hs;=@es94+{cu=n}J?9Ib8$ zpz%qpH=ZpyKIi`v8QL|7p@m42d~Pm9-nG`odvQWC?qrlCS=}M(n4(v`P0oc@ajVD6 z4%HjwuB~Wo>*f6t?EmvSW@Nv;};xkcp&oj7>Znt)%~A3cu2NSw?3seGBW zDg4RFo5&SkXz?Jo#Oj;e@Vw)?zSQt6!I2*9n8je>u1Q?Vhz`r2V&E2X&43ZyM+r%#wjQ#HBUjCDOd!$Dm>2L2o*@dU} zE{sqFkvEZESs>6*grQy{4_DrkBSZBL`;oxSLDUNuYRFlZ%|YS<>htT^cCXsv56 zt(-`!MgJxU7KoN&e1dq?epjH@P4}7XwLV?r{dww65Bs^D>uI&f(Af?JuY}uQiavx6 zhpwp^zX*JF)Uz>K!cpX7-6E9gM(MES@S~Vvjf}dSNxuaIl8cO3G#-)3q(<3vHZvRv zWh(!9BBzvV@iN>JqZBGLBas{y2id}`)pECiK;pysXuM6y!-~vM@cx*Fh9nw_9-bh~ zkOBd{F8X8|AQmORFyS&cWiI|G_=KvGswf&7*dVC#oXRr)GWaMLP$4KOLn9+)65|3M zL`FVDSV^g%I4(4zl%u9FsWOr{z>=4(FWiJUH>tTXt&O_2kHnrK&>pCcw~C#xDIn4o zh}26ZGMF{8d=o^5KMY~Vj>w)jO#&(NG_FXWfmR^!V&p_&hKg1~eZ%BVqY{On5HX_g zM+Supd}O7Out=R7X-Z;k#B)-@f;6ZMIvn{36h|a-9())P%nP1t8JNfz^@Ib`C{F)5 z9PIS;+M89aWKh+rtK*iWU7tiLDIwXqd+Ww(sY%OhG><-EMm3wSY1O&T#PpK^@Z}>x zUiMtN;@4z7rGH@&vGmGsMz9ngQ~bndq#2eg`$XguQCO-{U?6_`-bvYe1C0m_ z@vEW(@9U)t=341RzAjqoq`u#bK#4mUfD$Sg28pOkEGi5!NjhY-Gh!>trr;2YWw_e^ z1i2BH2r#ZHq&dn)t;(<}km+FT7#j|&5dZwo4oq))~pnB=7-N6=(45Hl<+lRuck^kXDGlpriAd9?H;k=bN`u{Rm; z{H(AmgmY^|W)wq16)TEk<|>(xtFgH;yHlncPYTi^ndy?-4xB>2b7C23)^gAZBmv^U zwe4m~Bug~dctFY{*yK;N-^{QHjRO`bQ3)@va3z!~JtCqfN{Cmf>D4;HQ1b%8~{cr;#POL-zGekfJ{O57%j zxu+>2_8F9mAB{kT4Sb$h$0m4Bog+zA&B$ipTx+={r$|<*A`)h4Qnx%>08PM_&@wLh z8Kri)qKcLDm7xMr%)%Jv>mt_JW|L*k*=G1^#<>(zG0UYSlyEkcR-NTJrO2CMu4kor z-ep?m*n|OBH$9$d>#VGcD615odd+lev`p-Civ|ctn}7{YK%s>eP#_@!0Sd6EtxQ7! zrH#D#-rH}QogRB@J?_@}?mFu&f}XU-E&@bdZ8E$RRR2*`Z-kXnY!a4uCYsHGN&@5_ zT1`2Hoo4y7Cnv`bbIJ9RWH5jL0n!Gc1QcF)0Rc|e|snoSnOv3Q{(>36Nq$=eMFiN0Q~ZwyC^qonmvezC`Z z%Kl}_do6+qHXwlnx8K$R3s^t_0vN!F4x$^a$nSm&Y~XDe*gmIlhzb$ZiiFnXz<@cV z8V`huZEW*E%H07%fzb?RG=~HTEXYpTNQ9bLff&LRAtD7ylOT*h1z9;^0=vsy?pjcS z5~NK4VDJl(XgHM?%J7CubYc_Nl!PZfYe`JZMhzQcMJ-P84^$gQ7}`P|F|uML7l0rL zEdoJtgeN#(2^SmHh`*7DB`eg(0|?yq!xz8}1rtz!0tjFLAHf6vTG22g2;qoGeJt{f ziFBl;-lxbjB14j8$_jWGSxHCgV}#*ijun1mA5Y{b4}>sEdnl5W0|}&*n&?DAer1Ff z=urlGd>aZvU;*E`W+uK9?d3}*QPBj|CD9tgoMn-Y}*IIIi#+Qj|rDZg=oB?=>y z#sku^#Wih732Y)57yc5yc(KO_2N*zlWN^D$suP`g+@lOoP=a^i*+d{MxQ!~j$p;BuTCacia;!AqRZ697SCv;-~xFv9LoK!l7&lmr#>oeNx$ zf&(0aq~SygzQ*JodyY^BOI?gdsuL~JSz({Sf>2ih)`S7*ln5TUT>#;BRzBV?1TrWh zFATT>7%24svuY~8CUa2bw8}hVx@IC4;Fc9VRba;K2vW@Pr7w8EtU$#jV;LLKBBYH0 z8hC&lTrk(A>b0qLf$EsRD1jbanAua@K4kIxu$YwO7kY(&SCo2O6 z@FD;MkgEyOaMw*dLbafs6HYbKQi+X$DWmKw?1O%`#11|Zl1MJNG+Qy>Ep7*NI=NLvL^{5zyRz@zzfa1QZMTp3Yms=tuU z7n30~d6@_zYhh}2`cj>HN@2uG7}X*cL5ro1H2@&!vJ6xZ$S{+@00zh|2xun+70W=p z6c|7QfK1Y51Wdi0U@xVPY$lXw)d<(Kg;h=e5=vQf!y**+igOd8yDM!3qj60E~q?pF++Tk=yGqfSBooms$0yIp-P}GLaht zQq~p#p+iFuKn4gvfCC~hHvu4E0vKSy3XuBo6<}Zj2*`H?902ka1fXuLezp^cyTTzi z3Ax|!)-c=wV#h6oQq%PcQpN%S+BrZ57SQPID3O5`fSkum&%mo?0PMLAU;q-~cfLmb z*#LRR%{C9f0haL(R(vO+snKC#KugX4Tj%H$2S5M;SUf-rSez0PSUOV0yMlPwWC0-v zL3UH%(FdfV)DB)qQ!7$$Ii zBY=Pd6hHt6C_Rf6;MN30?B!qbMpN;Jq~rkX%&6(44F4h~WHEZ-5+tfMiDj zfUg4I&H#KT08T Khll!e|ozFa*!*niA{hs!Igp2k0800Nn16;?4rjPXP>o0Xm=t zZLk6mzyRiH0QN_1bg&Ji4+VuVr~F~y=%gJ|E5e5GOtgRx62RBgF9H#40BB+9tZ?ZP zz@Y{J!ML#HP{IJ0Fbp#RD1rg!%nb>?3H(Hm{LDcP7yttz&;e#AOYH6nS0DudN(~rI z4hCRN3QG(Du_LJJ;Rq#MTn+{OkTp8WfC9XO{!`OWguzXpl*6kUAkBAHi-GEU>NDcAM@cPmNAkN^#c;EMlwD}$pQp;_DnzU z;j(lJ8Wj>l95O1|?d{f)ZbTty_-_d}W>M~u3os&LbTX&*WEd#GCg7{Na^xl-;~u)M zx-3fq3P5(!rs}BwZl2zeCaW$0j!|}I5M@?obi@!aSIT27OyI=MS}^Cn#=}?)k!Te2 zF#|1LK55ll0>6x0Iv%!J|c2FlV zTaz?d(=thL9<)S#v_W!svnPY)WOP$EwLrxnDgjuK*-|XUh(HaPv#P?U6mF_FrBf}H z17qkXI0egIPKI%&vpdgXgf75cpyc3CC)WzX;L0;L(d8wu=rY{XgjS<-#_pxGgig|v zJh2hJ#K#aY14+W<{Qee^_~6h)6LA*5841PvR-U`l5VU}^V>e>Ol>hu*_290Ny^BiP05r^#XwC%>B1x^Pl0Ya00HvG4Giu< zW`M~EMs0!WsZjsagY;C~h9qMaRZ;!4>mv10XTm7ai%}^R=rWZ9j!d8yt`A;x;accS zl!7HfRffpKQ&Cm>L>2e6s87nIC0vz@o@f|Vb%}sw$!OJ8r{h*z>QXFH`|{xk`?QfB zECA2{%NjuN8sj2Tgo`xvLjyW#uZVFI4CYkFv`K_(BU7mmLXs0(^i5nO8wZ0+F5sFr z0e-jv9hfSE+{Z{tP$ORC=cIsHzob%wHFSK_D^`!HlmmyXb$sxOCkSz3TEr_2PzdS{ z2~);ikyJHA;la#cVZWeLp5RwAVN-T;2zaFyl>masF^87GV^sze2oD_h<6FViYmyS? zP~iXw23mBt@j^JOu#uy+cH$(DXinbLhHH@~y4BREK_O&4U)i6Im_dFrj4zUra>~>=Db`tcqpq#cFhvBYp!*zy|oNNKq3{-3m^g0_i zH%LW$7NzUF;cUNlT)aSQ8rN6~p%NIT^3wJvm4u|ov>Llp|^sCse^JO=hc7CW7jTxeBr%c6UnV z&I0=9Us1ac>6qFgp7bH-v$ZI_r@E1cRkhWSNz5&2D5Plrow6zO;l zsHty7Q6Q+G0d^&M^yL!h0#fS&jn6GpF2pK0S9_fpk;7KQ5{6!^IBjMBkCpz_d}(4= zs%kab7+~TyUf$LT3YSp%_KBexVso~jwozq>mm2Kgpu+JpW=_^dIAW{vsMZwsGz+FF5huZU zi31n00GqQSirvzb#^DW0dL^XRrU~_Q{~?m0ZA)2bpip8eKAKg95#k&ncqKH2+qXQG zsS}lQuB`w9Ek?vtY6q%etwz)R{D1nWbK6^zlyQZEm zIFZ9uYjS85@C16+fu=kdAZk{=T!ThK2}5^5T)oQHnihMlqa+kt2ohmo`Qv^y!J>CJ zT)7IXC7Y`z8zi9QDkHW|LfUw#Yfoh$QE#NL4Y1r;nMWoSIo?OL4egihIc$A|QcI9U z#Pw*B}v0%k12<0gl@VNkbbBW{|lxe#um z^1ceJ3^G^-g--qpBgNzryYkIop_D(tN{191X9bnZ+7pBSfdl^UHEV(rLf2DXxnt`I zY=@(l$Hlgn#W%bmvW1lcPCB}a)+#jOQ4qz&hdQ8>WNodr$+*Kw%u<9EP^za}WljT! zXd;6_0W`4rs^oapSc3`Tfr!1kYIt0V^0|8r!4@hZ8s7Px@us8e&P6LD%dQuwhyP9=5{nAlq(+}y92*0sQ5X0+BBGuKg+IhX0^)y_;vl#XMp`?w4jyVqd0ncW^|@x zgo#FSy@hAA_iWvhXnmAy-AO%RgiHV+idx*sy{I(+59(mt)xF#~ps3ru+{K;tE@0Ky zT?F1;-4|jqP=|AnNHIXEj9}rDS;GwgzTjIF;4>%By|~mBFyI~D;9EH26C)q$9p3*T zAT;3KEq>!G-rc=u1VH}UME+Yuo;K`21j>-)RX*iezG_+?&p2S^U4G{4!19i_l2ZD` zHHjHgdRF4vNY;Dj8>tKC{pDp|C~6+%Y5wS${^dmgJ!tPA!rk0oT?0CvglLc6IezOa ze)e3Q>xaP(&K)qE`wu3&7(&%3?4vO7)lJ#|G=G^LgPvNySh(&n;U2hi(BfWuuqA08p= zGv3u#+l8`$_K1J^UA_3L{`s9h_tC`psXy!EeHYv})>_CqMTMP}$cn)iUZc93C00^7 zxz(Bf4wxVi{J#2|KmCjUn~L@Qr4{=ECeEx|6j4}cOVT_29|$g-i{?U+9Fs^SW%L<| zJ~G*20nucJSZ$VQlw_vj@iELDqtojD^_I9?!(|#~TujVpL{kw(>8E#HEd3DR<3G%OrYTwHLLcABD|N?6KarfyP9eTZmGfwHP)cx6n+ zu08Z!)(sDPQ2-O89YOfk6=ja`s+NZ7&P`*d#$v9PHXbBEAY~c~7RE{(EIgPmx}U#a z$cVlhiikjQEHsEWr{Q&plxCDAd0~=?;V@6e!C_gJ2ue1G!oCN|IN;ec58e?YSlV%{ z2Xas&M+c_Nks)pp1TihAw4C(m0ECw+UE+k9^QO*C4R^kjz)VII5f^T;tCL9@E;LQ$ zAzWIC7$!}f{MCW5pg_|&6pG0InDya;&9a@CVH#5w=oF!6fi@bTjvrJ%aE{0*psprD zVn--Fuo&l!3@9J?(TQUW3>igf6kdX+cq!vyS`01CWtE?mu50e(fx-vQAej#ucpj_- zPRRr64nP%52@bFZ15EPkTW8a4!K9Ie6%l3=R5;Iijj_~eOx>iqi-DcjZPmY3uTN4c zUZ-mC4?oAqJ{_Qd-UWS^&sNi@ygC_f#le3szvh7Q3+CgGuRp(p`U&{QC&4|2UBX0k zxeP&xE>7V!1rc(r0tQyk{R5eFWoUPaAX+sb18Tt#gHbJ_Ed!tg2^26u0yOQ{qKW&J zl;QyeK=2wUH`-|905S~!aNCSH0-0lwL#jhwk0ud`V~0f*5sM}him}vOf5|3JH|RW2 zBPb0_B}NgXAb}8fQ{wp` zeiHiU6oL}EKoo}E;hsQh5J3@5VUn@P6f@ld#)AxT(8nPNX`##@Q*_bBL5XdLMQHb6 zif4U!$%Ut^g)UH1UR6->$(A-&ae%JifI~&E3n1F-ufHm3EUqiAcw?+v8cP#VvwUPu zB^i>61ZSU2QHBJ9fLov^5Nyj&0}&x{EtCT_*_M0YvSJM;ky?xGXVAPUtgp)A$n0wk zxHdo)&=R~aj;;;=tWK@t*#aMD<6RnFz78!{q6v;=AoOA=W6%Y>69&06r z#xgW=>3#cP4X`a)bNz|eRn+NW*I7@o@7HH@O|@KTi##nYf+)ArDrri13@cb;n8}%E z+P$^H9dfu;03MdL4+MG;*i1;Pyj=eI3ic+a?Z~-(` zs^W8xU~9eqZbj%!OS_g%FqyYG_YJhRc~e-smWS(kb+;^4$b0sTy zO_dsR?M|bTl4Me;BTzDiO_EWSV;pa1+4wx zq6n&iGsN=VFisM(H1Okg(UXE0+SHJP%u55FvPK+Y)|NlG#1hYlk{jS9G&to3RCqvD z4Kb1t4Zw*)>GMxA$OR}6jv;(A8lMK=my9}*5DoiC(T)&u8@Zs+dPVt(N2;>7su*rE zAX3X)Hgd*pv4m2Qp+Joy#-<` z=T#{hXg~={&@mXapaq3hLK}*Ph8DB{a0_D2hVUq7=&TMzjFQYWv;@gnp(71+kQge_ zAgU1I1G4}qL>)SXmMZk142@}wc0{9>&M2qp)5}f)f3yg*V|~4C%ltBJOb<8)8@$>6UaA(fyWLtv0dJu5u0d zf@_U(>zec(inzl?*r9ssUgEwtE)4UKEvTSA%hd_JYfwi(>+qT{4pI%yBCL7;R)_@3 zlFFi=I&DTNzy%TA(5(!ag3LIu1O?lrTNiRq6&mmd!wqdjtTGP=#c-pVLJ)qTgJ*b$G5>NjeC65*v>e}Jl*l2+@=U@>hY@7DF)s8z__;5FO6z& zp;gA})o!>)2K7r1D6C|qB}W5tZ?cV$nOYLQmbtHdt#OXo%x24}ZJ;cTDV_g#TbDW# zrUVVtVCkHqO7aPJk`=}Cz93~Zh!PQ?oX8SXhEd?L0uf%2w4@=CWf^XEWzZANoEu8a zxcIq?diHZ(sCLYH-V>QTnnG+-z06c6bJeES=c^qdi{x@O4&9XSHZx@ZUArO2fK963 zJf3mR7-CsNj?v$lftqqg!8KMhIqzl1FNXtOf%DgR&AlgJE)%a6`+pNsD{H z93?TsHN{lhxU4%~aozl!)u!&E&IyUoQcrx%b+}E?^BivEXlhVHEBr zrGwI#yqS2y$-@YEUt|cCB}hgQTCXK)QyiCva$K5EPsWa_7VVw?Poe0m*7z{$P7J^I zeeWK(b#Nr5pye{f=8%FTwv1sB_?DFzS3*cLP9cheG_E1deiIY{zjVCo#`D)cb8v-T zYNr1@^+$g@=uBIn z1u3`(czw$k!pl}=2N;rJIVneYDc~xg2BknvDe&G|ZC4zY;TeLK8E#jYyh#OK;Rx>G z6uDIsDbUScF_VnzspLWl;7 z31TRU;wT2<+c8NQfmJHD2@e90gq)Eo?obQ8qFCvRlK2L2P}wZ%q8afbEHYOZ zV>y~5DYD)yaFQPFf;k%7HB`dOog+iYgLYBiJmO?@57ZkYh;Fq)3L1{2bciFqcVE$b(RVu}Q;(9K#w7sF4NkcP077%{@+LKb2FTneTjrlWA&e;LBXGi8P%36hw1PI( zf^s2eJyxbiGG})l;Q$okME0I%jv{Ds$|af|RzYQfoThhrXGFe@YpSO(?$DAsTC=4C zSJ>t+zNLHW=1AT{Ns7srTvkyEXLDI!Eo4ANAdX)uSWJ$ie==uWq?BPI#F;>+A1x-N zoC#S;OG;{IM{)paN~l+s1QrCScw)r=JOYHHFwYQCgz2oOAVBC=mgs-h2`1=_cz(rx zhJoTG2i%AQ29ae@V#E;4{G6#hsGIWn5%{CUr`N9^{6G z)1DF!v1$lm^f=Sgq1m>X%W?`=5V1nrn%8Q$F!*-4+re>;U zHl=Rp4OISUA1p;HeG<&DD1o*oslp|E_NgAtCn?rvnLth}=;Lh~Dy??qTqdJ#pky&Z zsT`$}Lndd03hS^sr-e!cp_b$SV$OyO!GV*0W~hoNnm(&dg6C#dRA;KHm%a>C62z>2 zYfZwZg(L(0XqRMOXu3Ga%Z-b?_Jw0iLbtAKQWC3hAVdy!#5@9|u9)j{9D!CQX}=z1 zVY+J_5Sq+Y0yMDFJfukq2w=r(Y?_b>sW=J6LcH(Xy(1pz44{}5c>EQ4vjHG%}&JqI7s;kRFBv`%)&pL&c*Q{X@K-XDi>-5Qi zm)I>zc!}A{k`Msq!h-GpQby~ha+Y;{$2$`48gPK&W|J-0pKAosDa2y79-DO%?&LN> z%l<7suIX4PMTKbxCuyR+jY74y!AN)|Xb_>_I`1%Q zYKGeGMk1SnTo(_CqNmjE0tM^#n&alG=)t0DA|#kK7UM>V7leJH`hu(5+-eOG@1QDz zC1j+Fu8i+Vo**>9eIRP-cg3UC&9if5+FDj2O(sDtpb3m#-I1Fvu3 znydR7>vbX-We_EkIRr>fa+ikyj67~$`hu`9vTr_$XH>%NLSzUM42%*O4nY9SjR1p$ zg&1IZ>kI=O(Z;8nUT9fj>z5M@hxuyS^>Fz#4&0%=zQgKwA%?Vv_(oWcMG&KhbNupNUq70_nl9}WGet~s>gG@4Tg>^DAiFa&qkPi|E0|jv! z86TPj0UC=k9~T#x9HSW=2{Hi{5fiOcS6;HSS&IP?udWdUG6|)mroX4b#K4Og5)>E0 z%*DgN(9anf$rm!t&6wAW+0xzL#Ma8u*^AicnACdf5(@zb$x0t4A_+pDM{1)N4+#kb z1{_QnGZ2A{0Ra#yOvrGd!-fzY$}kW{AQc%103LWip^v_gO!j#Ux#SQcktjiqT$%FB z1qq8(w#*>I6HA#mN$T_nQ_fBQoiTUL6iI=Cq@xlF3`p>y!V*m%9(4K?ie}Aess<=P z;HqmY1O~zmFfg$!*|TQTqFp;NtN~VDCn!)rK)?W+o?=?nb~WZFQWAZ+TQ-A zr4JQ2C__Q6R|v-P8ZLvl@#4sjD>pEJE62ySnw#Z)C{1&b>P$N8WQQ3Qs;L zGIMCkt544w>45+VPJrm3;e!Sa6sF1;5lZ|383OdS0R|gv00IWRg|*053iO6RgA6(d z;e!%Z$RJn-bYNhC1vXg!R{++iXPsv=v_LCBm>h0?lchF z2`cn>LI?U8L0xGS?Dn4m7=Tb6sdblLQ|YI&iD88; zwB*XgB4F5x(E$HVXC^h;eMV|cXFQqZu{AP#oiz}sc?>55z|pD-ab{2if0@RVzyUHS z1=lOPIBVSixD2HKOSl6ZaDcH-VkL^X&zNhbIQA9>lQ|C*a6keQjIiSg`AKlW2SVm{ zhExGCFwhhOIhil76+KKwFQb^I<(KwyJTaJyATcqT*Vxn%fB{HS6a@mL%)yCtmfCR&3R8zCgL6qr^wkei zxJW9W;$g4YM7Ox_$Ixy`M^6RVl~B~b%v&8Qs^obgU1j6h^;VyNt!cgV{!(^}_#$1Z zGzVpY0EqS7NA)NDBp`qR2sogC<euEa#iw#P37m z+n(SK$U=pc=wqlU1v?;+zV)@DeX;sPk$7`Ciw$He60``!2tvdm8c~QAalnI$2*4}- zjBq7sp%iQPG2Ah*ClYvIo*ZD2;fc>qbwfb9JXjp%B4ThiCod)KJJ_tUDeXttftP)ZyDU6{ms?e1pu|TmZ7&17)8la4bWxF~aFoF4k z79^0BfhW8z3=_;t1?zNx-G~c$izpY-(8V)ew5tHx>y%*VXi1_KE?;>u7)*u%HA)l! z0dVOA!ay-VCd2^>VJM9fc@r#VII`+*NDoUO2Rgh_jH3KB8Hm#qJJumBej?+f8`Hxg)&W(0 zN{a%es1s51bI^oV=O-^Q3P#PR46?o?31^*SPWq4pu_8s6Xq{?W&srYy!NH=to2yy( zidMcVqp4lGYhMRjR>JDlut(8ON&R}*!aDY_cbzI!)+fz;*Ist10|vN?;a-U-yZ}m-`)_4u`!vGI+m2*8L;+sFRL_0eyc^!jLy=SjeTi-p{)j-CzX z@b?+Ues5Ic*BZ_}weF8mDU)-9_bUJFv-a2r-4E6H?;W*KZTszHE#UbSesWQtY63((h^kOU{rKg z6F&t376t*()fzTZ5;b-mxfX%=AX22leLL7Jj4%_QFkrjnf!${a$siM-AYh!PUf$I^ zMQBla&}3(VWb%g^>O_CmV1IQKK9#{2mGXSl0f%*jc5~=^=75E0ms)`*U=0vkO9fT< zCV!)VFgZjo$To#SSS;RWdJRBf(c*{^$8CU>0T4ihzB65(xQS&}6ph7vMA888Ab$_= zGNaTnxaWv+2z;hT0naCRQ-~jjaDB_72Z84_wWVwSd=V2z^=;1=hU5_d27@pvHi1Pq zg^gGl2*!VLz=@XFKuzT_Y9a}AM_$t=5=638H?~p_KwP3O5iEhQEz7`U>tFd)nSZh0BzgXj5|n48JHz-z-iDGdKFlDu$M=Y za0u;zUW|5x&?O3Zh!i=7UN5LEi_nJ0GK1=94$UBI(vpO=*n`EOOMUlKy>(i;CUn;@ zk^Yz)i>Fe{xP!=c6YzFXHQ7RjAbL7+W9vm7<~3R(q6bF#f^0~G5SNZq7%Ifj2MhF6 zEC`Qrrv{Z_F#IQLyF(Lsg=W8)A_h|;Klus&H_0sLF^-l*Nu73$#ubE)xNwq?24dKc zS)!B&X-rK90T`);G{=!^xCpCgE+QF~>)3LqvV=OvPqxTzCF7D~$zaW3ENC#6v;%tK zk(S3Ih0Lf}yx3G4=y?sG=TnQ&c4K0ePIwzo_$h1Yh{RH9X-6bt^Nw36hGf-zYoJGgum{q(fR~m} zF1Usxupb~vDu;QStJZag6E~+)fsfgqpdt(!CTheoiwZ|n-nBF{%)h`@VY=2P#snO!9UyeWeb$t4xoqb}8fOMrqrCSCqH zJKFYi`RE24S%rfjEv8sXMe1m75LpcA9Z|p^=u~S9=anb=r6vWY`+}lo6Q*X$l4vSf zUTRW{umBQjqM)^=XzHbK_*7ylrza_=nL>A9Sc1S{6@n;TXLhDD6%Tk=K3s(la9EVu zXcB|7P>hNcAwyiHVPQoYsoYhQccqPzN~xtmVD3UBBmom8YJ?Ses^Etz-2th?qniE3 zfL{r7Txped>Y;3=9(yEo1URezyc(;!Lx{4Pj$a99gNSCd+N*BntAN>Gb9AiA>a58c ztzdaF2*_#EYGrvbW?<)L-UzK==_$lF3eEacDTZN3+I}^8iP$D0>xw{;5Q9D19@Zdm zCczr#sveN4a7G81{-!2GacEmPUEFa8le%6s)Lt{H9{M@3z)FMg$#`g%l>5R|IER_i z#-^mQd}S#j!cZE_Fd`4|M9`oxC+Zy?`;xvjD#@6X80sRKhM?`JuLFyLW^)W0sFl_c zZ7|EOG8-PhMoa$ZYf<;IUJ^y$w@so+6STQ?H_9C|NQ3ppo9aM=QVD=e=3inGwVh&| zF~^qd=xRNu8I<*~HYtJs2^!A8vEsTK1LlvM zc^$E~wmrM5ElYDWiy}MOV6JK|2f8AhwybBeszZmbrM8JJ${kC49r2)cTE+-T*|alq zxGo}4n1Z!giH{*^rj(luB?`RVVOm@okL+l&-17j>N4EcHwi!2ZYUgHz)1!4YZTo7F zK065X@?#mNCPaFqP2jIi+Xy>{2a_yv7 zMt?{Y<(fihn2B=5u6PPsl5=~J~Cjg3|eDQ zwiA$+x}qza66+H`TXEvF!ozmMjF}sWrCvOVUg|e9srhTw(7MGo!`5~U>MMRxmL;25 zQXbP;G@5uXGIxumsWp60cMi1#bAtX ze|1(%$UQ0MFDZzcoRq%<2XHWvW2I!Or=ebNsD(-6eUY`tcd##e8F`5OZ>JHE7CBu- zA!uU78nXAk2BWt^ddc7cymAW@f<{3cU}0m{g&r1GiUCysdER{qaI~c35KFYf<(GS~1HPFcppoWA?wa;>f zvXH4zK+O(s%42Fm!O@GH;4@1`XUwk?dmMXX!TcA)+;6($vJ_Cyxz!1k@&Op8QGw{D zC8b{fXP9=(W}3?tqgXhxcO_L>i^~WzS4)|)qXH<FGiDYpu{FJNceiALAASluZ^iF-G27X%ap`2Y1Pu>+wQCDs*(KQn{^^i}mQ#6?pc#ShSSjL^siN zre}~QGW-DHO8Ad+vP;3Rci6#MFb+^24jA2%>fekQLF;xNjM?H8=G0xHhh5A6)6m)Z zY}Kk|mdH(I+e;OcMF<-^xI)g(=5TsxU{sRDRwB|9CvCv(W)-@mJ9kP_)KR2vg=eJ_ z({*Lidwr&2)ybs+gXn;$C!SPJi+iX>VkOcHb*t1y$JA)9rge3aBWLMUO*jZwd+P8) z4!q1CN#McOm#m4i5L?4Drj+Ov%kMY4iB5Dg9pEOx-EbX|FvWqtjA<7CmfAKmMZCo0 z2@1?T>cF6jls(B_mXBMucJ=9|dT@C8SrV;2@rMbHRV5u+|Vg5m*b|3<0{PyiE^Km==g#Um@{*2j`?I!M^Heza?0O6^Di~ zxT(!m9_$x|;;Y-$!SFpf#;3bmMkfgcb_okV`nzcHm&G5JagW%liy%E_K!tl67GKNf zfAQ5BOyJBEHi?U=g!6^U{l2OoW{)6&%q0Va%s>9%|0U*+{o+uK56WWH33JS!gv|eF zOb8UZNQu>8V#bnZP%4Ri$R7lZ#z0 zr(TVI9Y(EHMqFcy4b>_KsI^65)pl(s6$e4Bzyt0x@W8-=0XR-6g#|Ga5A*hhh13o>V;in|4;;6uc-R? zv5Jy#Q8e^f^Wjp|1>D;B%nL2Hua`Z3rs#FiD!x!w*#|!S=)3HveTbrqsPU#aAd;<) z8m26(77HsYvAzOoIXS*!?x5{3gUY|`z{0FUBiP~paGM4(Tk1nuDqO2Bbuw8%$Kg6l z>Vf`5k%BcKt#PT2`n1A_IlySzkH`~M%cr=;SoDY=(!hhPO87jpv7`|=C<6kO=d)BxQ2*&P7^*5z6MWByAW|?1{rSruNKAyE?tIQ9MkL zEJ{A~Oz96QI2gR|Cjh04bU{rqE6E;EnPQ^AKR?wc#(ii>g1Tc=og>i6W??A6V&cp6 zR@aE)Ku5*i0?VtIWaY+`3PUu8!=dJr3NBJ+JqA{Gj!M!Lu24-&thJuyXs&IG^3&N{ z9E+=%WmBX}yhs2m3Lnp=qeinVdi+S1dZo<&=-qu?0_aI<>M%kxBl%sT2z=osSYd<< zPS{{r8!nish!b4c;fwcuO@gbCZ!mv81zQmZJ-K z=9@pxIc1!yi-r`QiBoOnrMBByXPQ&KabtG4AnO=i<+CIcK8qOXM|R|s73wYo&eiMp zD6qtg2B;WST7#1UkmO0(hNHl**@jwfxaa1S)s5_iyVSh7J|b?q0nc0GoT_~q*|5r3 zK$>h8uQS~F(9+7ACk_AyD+my1zyJn1IN<~pR5$^I3KE#m(5LKl96|h6G?`oGZ1cxl zMTN;qX%Qai0<{N5EchUA#JplQ)M7&aGqZfiYw|!yn1`T&2gnqF0OIpQ@zajqBWGEu+0#_NDx2) z2vC3m96$mTV6O!z2!R6xFaY4RXce2mR{NkdC=5nPHjzW0(#F#uy-b865_p1niZZ?g z6~|Ok(2*15Kmrn!pam`XLIX=cfawW<6X$ya6XdnQY;{VAQ}I;$2B#P=K!YHykj(5( z)GX6L#TSZ`0SRQVJru~Hfh5qO03ukpr(8>aMf}N@iYTKZf-n;*`O6#c0D(emK^&U- z6M+;YmBb8UJvX#r4Zo1R7u0b7iy^Rp0}L>LArQu2{WIf%D)>lZ2{8Z{_y7k!p~SRt zfs;t^!@)h+P=SU{)0GpSp? zhmsG_00%_C0n15CE9p>Bx={|6HI4fC^MC%7Fo|&`|?Sk!!N2&Kl2&qeZ$* zD#$SD-=0PtTV`dY0&?3Gb}EDGl|Zc93o1~@O4Le8K$!Sj>Z;CHL~^pU9UMCXT&~j! zbRF)3*>Os7N^uPy8XyE7C;?e{s)BuPudF5TA^{jMtlYfSH1d4pLRq>laM&xNKZ+Q^ z5M)te{%92s7;IrZ5C;~lmIX3kEovP&JqGZ@FTJ2_c0?=0t|IYEc7}xywBoik1B-3QL~IA`7@M zsK&}FK>`5?fDCphgTmHV1w70z3Bb5o5PXpc2t{2U2Rs?nJW|4$#YrSag|T~7Dz^q^ zgfcVWgaH^p1_wld01gm=30SWLqFb#BKyZQ?S^xnA7{CAuFn|Qa2M+&AF?ED=*-5gr zw`FJ((&R)VGfEMs7dSuw24KJl$iM;LfB*(UPy*J@nYtE`;}du|0E9Xb#aHG4p|(oC zV^VTy8+!!SO7ap#gM=E6%pgOQseu7lm;nly0Gppcwg^}t1ap3E2qxe>9r3ULFf~{e ztlZrrr5aU`rep?2|8N&yRgS9HDFpl4CmY8&nw^UXU@9PxffcO41u}5K3R2LHF+qUT zzL^f4cn!`fL%WC~^BW~O@BtBg-~$1yPqe0k>J2WFNdh7g0nBhh3Jkm0$6i5H#xwu{ z6u_!)Y}b`*5fCBj8-twq#3w94M~`Tg;Gz-@!Lyq1DJ8>Y4Nr72EO1COfN=p3;D8G- z4g-w4Km%i{cn3OwfetXB5MBc zcncJ;AH+y|GhlAY$1g+flehdT*eE8X9(^A0m^*bWGosLkosW9S#(L^$VFVx`?+W0d zg$;lK2NZDiwI_f9q(^|OqZX(UK!zmBc6sALN#=7;OrK?Cd}nA<=m051U&0E{%O(_A10Zf`R#fV_?f{)!_q zG6PlO|3xbXC$8G**4_^oIwETZ5EdY6T)M!*FpK~Sz{0*S?;m(AW-!WN&wvc* zy`~4gyw3!NP2(;g0E%GvIIyPdL;fl&6v~MHnBsQKiPv&vN~Yi&xWx_mWCNka?zRxk zRi}Gv+k3r)oU;uarrZ})SREHaCjjP}Q0-{X~zd#cY zEJ-*^D;~fM&>&joMHxX)!Nh@g_`wt>&Apmz@1}g(pPIx^#A)`9}m&B}@^y{G{a-RWs$A_1Q4!VCa`4u}9QOy1nfeV(iU zrtAz8VAw`LCckUIkf!Wjp%1-hF;F4clu8aT(HJz*yl(DQ=;r0LY6^rYOWfoQ`X&WI zBN`gcZ32Uv;vfOLaPQuW3L|I*V88^POe$^eEFVtLUR zGOJuJDYI$>`KmAX>MxCACqghzjzUI`A|Y}?SQa8Nz2E?3pwbS=0i3J=;s6aT(+D_V z69T{mU?2sY?g9Xl!S+gpMDtnt@;HWW4p!lXKyktRQbS5pG}-a97{+4W#pFV-NH`+{ zslYKV;|MI{ALJ(wpJoY$01_l*Ld-H#Olttdk}L;6#%gmq9mh5;W(Z0TAKfAzQK2ql zj5a@mlWf!Z42QVP(`fvG6s7~r#sU~Vuq#jzKX#Uepe&%R2QA9k$(a@vH0;eA`O%nd^|HxuJOm72+|MT9q0UVxe z%2*>D{i7s)q(g~>K0wr~Eb>9#j~I~QuS}y9utGGEV+y=s3zURGI|wS~ii41FVkYey zjnG6Z(d0}aYh=npOk*gU5Ib;3M51ttL;@l<@FfV(38DbpuEstXA$Jr70&|D#UIj@p z13RZ69X%8!UeptEf;nbNQG6uaqQQwescDF^;>>hney_5IR6vLjO$CH3=+LX&YWnU^ z1f>)iOXN%c100?}aqK`7VxmR2DO-Gzb_f+eP!vHnwNxs?cIxW=a0A6kfj&e{j+7!n zT~$A*tte zRYX({KCBI}7S(oS0$ei_Km6r1pof+!j%>O{5cux4c@BNPtxEmp8iBXwSD)O&hu z84=CwSg2bw@mp;}SLJ6qfP(EHAsMJ+R;wx_XavIC!ga(k7upLsV&qoQ6db=tGK8fq z>~TYUl^7j$BlW`L$RQOvv=A6_8*Yp`xKHC|3hZcR1v7^xZYL<+%r*S zDqkJME_yaeidBG6ZweBE6~q)I(}E%D=5MA=dA6!;a{qCYPsrOD&H>-|J!P1>V(K7%S)MqAuQA7U!FIH`6=PxRD-Plu<^csG10c7OZ# zfLXyCEXP$z!*4T@D1sILMi+1DW2*RuZKiV2stO?}{{kbBL?BGXa@A2{QM4~GB6PW+ z3PX~2^l*Zkuyl)KB*(=#wcr?Jw{?DN|I~5CkRvYP!&Gqx*9)3)EwW4=EQ3g@)Iml7HsTat(Wog> zW+_Z45{~PPa<+Y7Rnh3=C$y7*C&Pug7>um}5(n-U-A4n~K?a0iihc(Q0%L1rq6q9~ zgcIa=$;UFhz==-7GA5&JR*a90KoJ5LR~|VgH2D}pk3FhP4q;6MJ|T%eR!0^+jGk3I**(Q#Z=^IB}nTt+C`c#fC@PIn+XM-wb)~s zf}ZbrpT8N4{h^)#8aJ}+9e5`XO(iCpWHIzvn*HqqV(pOI;}>dKn3$m!DyWt-t?MjW z_?7`TVb%B;fur;IPlk8$;FIot;iS8cw7O1Xpqb`Yjzw?R3?LvwKYDT2<6MQ-|9HCp ze7bOL+NTR44~TUaS0e0?I_P9T0|6uGoVux@niBmZsiT^z83K!uq^D7@YV(3cf*Po` z`m0GR0NOzWOkn4p8J)Pzkh9H@{Sc-u|0%AsZLZ}yuF-<6>zb~yCa?LLu2VPq>hojC zwNmuquMr}!t{E5pda?DPPg0j@Wdd3~g0U65ur0f?4TDhFp|AN`1C#(Vo*AuGJGHm%7MyvtVVkvMTea8WoMij9wJjYwK@rxuh8IDO27x+qG2f0QR3~Ow zaiubDDG6SI+i?4~VJZWjd$y-LwaNM}V(qMB?GsXayB(U9we6gw+o8Yv-@x0u(fhpB z``?IRytggA&6~Tk?Kt}Qm=qxv)+D@6V@VgX0|nU{hUb zw$a;{ED1JHd*=quxnbKka6zrB|C_pDyS6iY!&BQjrchzj6mP)8JxsMrF#}W8t0g#` zwVB1UK|Ho;p%Y}=5u?hi$@?x0g}ZlL+sx&?ch1L&e8`Pl$lsd-OpL&foV>SN1VrGR z)MKO_wif)sWYc1*j~G{|oL+U~E5enP!5hhcTr4cS$jQ9OAv)W*o0TDaA#)wmNXXx(-{bym8oHJX5}num0j@yX4@oG z*6E`9REKXdF;^K(nCLeI|1&?H0XG+Y85~hB#z1(=xDOhj05XBx_JEx&Rd@_zl>NZH zb3$NkD^)sXW$;{52)V0^128%nKIHP-OXVJ38$$Zvlaqk-hWgqU7&NRP05E|SI0o(J zK}R$iK0W#wmh>f>0i9wEcYdWP<-#dw!DTG*Okcuv+Yr~yt&G!@>OSOI!d%#oU6h14 z7DyKDoGv--0glY~FSH=qk2O2vC=Ljrd|iI{WF8*4J&p&ON5tUJ4Za?RLp&A512N-B zAU%C*OKkqdB@B7n;2n-sGaBUi4^qD7sb1d$XaV{irCY&-0P$B$?&}468rEv;seyat zLG0gF0$x3h`)F-x{}wdmL($$?c68>G(UXWNFa9w4S2oe@b78yxEbY(OB%Oe4kdEw& z3GETTmBQ>&6x+9W$PcKOHkUOasjh;1L!;1Lo3scC`2B5*19c>yz{MjelUh0T7UX`O6>y z0I>k#(f5~M`U5@TVXBj;1u&Odj;@x3nr0@P(s@<^e<7?dmC+I%uZ$CP;!`!&$ApY- zcqlr)mD>j@=Hd@+eZB#*rqwtr~E$0j4q^ z=rx-5AY6t~+BEc&k?sJ5JkvHsg3~60rHi@R%~Uk=LCt}WP;BpSUpij^(mWuYp8x?IJBE{t*VT~3pbf!;#{SKxJvcT!n4Q#D*I}tXxktM%! zjG_{E##v-Vrd;{+15r*o`CP($&eQP*iYP^cK2*^+x(!}ubp8kNVSkj~bPvs(v?H#( z&xaj*zN4;k0uSrMj`tElw^eagcu1vk92}uCl6qhR80KP#7{kJ?LnR)Yxv}4LL9s# z-)~+uQ2-I@o%tF_XCboymu}(3Q);NK)?aHV83UM~a|IT~0sf(;i3sxSQ{t9vP{7zw z9Iz4Mg%EaFkTs7?dKDxWG%*Qzkg747m=b`h)17-ZfEQk@oqA`gdAVf>6EfJBRuV)U zXlq8f-m;1i10=w!u&)g*KI>52(GBSMe}X*l5#;vC*lhnydQJh$CU3oXO}ZR~A~-^T!M%&LJCUPLc{ zBM$iBi6;(l0Ri0ultGYctm#mbLr2Lqm{6*mL8MJGiPS@d?wtmqa~Z8Wiu!Yb86#v+ z_%VVqPWa-oCtkPDMziz4vfrkZl{=ZtJa>>h=@RG)+Ac?oJDEE$*~!oB_S^Z6II#^6xfpfAatPEC2?h zRoe!#fG;!wE4oPlX~Lq61P;V-OMs3DB7}{t3?u{LYt%hD*1>yZigOs!AO=DA6AdCF z4ke2OX4Ihva#SsYZGfEui)9O}tcG1qGsY3BK&yB0ZEsZ=LcNH$guUHCdQXrQt?s~! z0C-_*HhY_Jjg#%DP7<>apDh!E?hzLp-|BDPpBUc5HWJDoY z(ve3RtYN7VK1zdB!yHx=V-U=p?kN{M-yw|DIZEwB5f3UL%w&L~ORA}l5g8&6mm#ZN z)NK`mN*FP5#z!dbOgFz;MKOu#1!N`@FTZ+R^(b&XGcp33)M5(uuyQ)d&_NF3=mbs1 zs6whhXB*oH-#Yoh&gIC!8~otII-R143`8?;4Qr+}rx49z8nR&z*e5|5#xNohv}XmC zra>9%&|DIsVLf|j!!jU(85-h)7u={pHU>(kc#xwPiUvnL_9Y3?5)zsU2n$m>E?ZuJ znG2N|9~p|jhDt1_Gwqkq#Dce{A#-RlxEoQADFyuDZEa+r|3Cva(Z#3UWDWgbUueV# zRjaTA0^l3t*&tz+2$2RkY}*7)QhLV>5EY?9bJ|ba`pkV+EMm{&V>98Z%r7K!u7>>Q zQ0s*=3epFao)j#k7$v4pB6f0;(aC|XLfCU%h^nDk=}FJgRYy1jb_pZmKc%@>el}CD z`wZrqkk;3l&dm@({po2}t2EWlO{pJ%0BbxInr)i29^w3+rzmp(JwRu-Tk4jWjI)QI zi0xczAcYyws!zA#udi-h>oMQD*MS-oe*wj*MCUeOd0`NI5ZiC!~kSq1~VYR8=RbMB`&+QO;~jeZm2>N==q^8T4imL^@rHnM_fa2 zB0O3t1#uv;;Rz2_he5WmQ3H?wpr*CD(?zXYi)`9wh(HACP>W>1hq^0YsjODsa_JH> zkAkS!I&?`2m$^)iE0;NR070%hz{eys+wvJP9hz%@TIVFMwzUzhE}yHb=RWiC&w$48 zp!rYsXP4r%O!=GF+h0 zP!u$vS*>b9^RbbyUiGYNZR=ONt_|wlkt{(5|JGN6%&Qli#%p@b32p_#L890ON|p17 zkm1{gq+6>hmNQwmgr``QBUwyMJ`@In)O(2Nnm1t+!*Y{G$mu$G=CAYJ?m7;01>@wxi2!TdOwVu$Jw$!piIiFnd}m-jp_3_yBJJ zogLazXBzfxbbVvfAO5D_$p`(2mk(U!82+}Q2QKqt<{GA-BabK><)ur3^n>OAw$~rE z$}v4E?TTGH*jp!#l2;qyM3%bThivz$|Kr{6F26h9^X~T`@BQz1r@4vU#$F+3kgMiM z%4F(j2r=ezPdpLy{M|Fr6NdGFV+XY~gf`0yuwc;}yWlTVK8h84MY z_;2>LgH<$$Lq^#|Bg9u|Xp~}c#o2wy+s#ni5!w8~8uP_p`&D2BV&L&<-tvuK-gO}P zHJ`ZMTUZT6;R##zq}XN%m{d54|B6{2RdCf)ZN>+f*|lj zA0AyE9^DJxU>!PQbUk7udPxA>Ur8lk$3WpFY9cl~!X_#T3SmPkS;TMUS1Ed8NEsm9 zNn#!T*ebf>(-B^Z$>P<>VhlzVRoPk0FTp^-ZE&}6K1*18D-zys9F+L(C8p1`H zp@|gM3Q6K8VF-;O|HfrM}(%jd@!Bm+b;?cpe@q;>P$xLh`du35LreixE zBPBAU$+1h<$$&t zkz`FuVnLpoJRX)By&^<@N&c-MJ1jsVDWM2f?q7$>CzQ6gT~aexTWLqKk2Tw;Zhb&p!2ja>@a zh~*)Ud4gCWBP}w5|5eK6U^+!XUJzWOQ{)^YC}e|5O#_l7Vc}Z~z)KVs4ryJf`71DyA{|r&aV%X<3;wOq~C!)E;S3*LR_yKupUm>t$J#1g> z97u~E7IR3z2e^cg>S#Ku=rd#wjX4NjLf>O@Mul(+PrTwtMS^WU1BpiIKx(K2*jNn4_lowUIx zv>Aei{FVuBkfJiG?iJXeCgpyf!5Se+wpdB0k^`t>$*3xc907=PjL)NvnbjyssJbet zb}E@1D5jDmbHda`Vg{Dp);ZV;E~w1MtR{3?%7T(9t!|^H9;B2gDS2GQFf9phV`LpwZ3wazA}AOeG0tC@BqZ~mt-j+n|g+OpOmBOtpTYQ zDz@gOY!Fqb<(2$uViv@>g6qW6VZm~pB7P_waLze>pI2GJ7_cKJ&=&RBllR2y$dc^z z)hl^g;wn}MVqnSuZps_U9#v#W6XaIMY~6+CY&&Xde+Hug;=>qyNDEr6E!wH$O|6m8 zigt*KO7Vex$y3o??Nw<-RyOUiI!Z=zWZNp>i-jCVGHhb0&AS-e*@%*Fr9~^brpJkF z|JtVG)9M@`;-SYR;yBhrIVvtw30)r$-E=fUi$sSa>f6l%uG+>U+n!+?RIuq* zHcYCccG5jKo9D9K(iZFGI-J?y8TE$hDH!d)a3 zR%z=^&V($N2ay%HOhY&t;MbDJ-vTc(3NE@<3xJXp9$McDuI`tNNA&*g^j>Qv&Lis? ztp;3&pfV=s5`|o#LCui|q7<)J9i{jhqw9J}%Np&^9f-lIU<^vgePyOq*rmkUZ%H=k zMXl#yX=^4(RR-+Ab-)k1jOF9iryE=ZI6h6nb>PpHSn|Pfi5`5zj}#zG9X#)L?j%leucvf zJ0a8Na3mVpa)Aa3%g;6lLVcu+MT96TRk7l2!cyRAc|=C2h_PL+0qsWdO)>?2V(A9O zgf-!Ub3lj=Wo#7+*kgWe+gY$Qjz;$i7=7CC8n<3SLQ0zEFSkH|e|*Gsyil&P%Wq~= z14@M(39VPX0YChl>RfWzh{JILG9hai`Oc#vv zA^8La3IH+yEHD570Q>+S0RRU7z(7Jq{Ah?s*&|UH2pCCO1R;o8uh?uLAc;l@1L5J4 zEk`fpu6d2UWGF{=G$XG^DVc{vZMSE-5)={{Zg>X?1Bnq10S_WFA|iBFZZZJ|NfQwY zG6S8To}r+lqNSvrP)M2t0tJ(OR~!^F5^=C*92Xj|c4W758fm=0S-E6rySd312LS^S z6GBKI95S|q8Wdp+5lK@`1v20R84^KJ6K`1x&Vv-5M7nFM6IE(nsKN6#QUh2H!T`Eewkk|^!%5hUo~pbXXW z1tJot*1(&zTH-`fkLHE{K|7Hg3k0)b(Om`UXpmM!BAh}8pXT8x0Rl&jQL{qb`bKM4 zL00uZsMocSKMD_IgxwP~pUSo}C_td;v27kCAH7Pw(CASlUdsZzsmZdY#y^KIo0sU4{XA1<6@J>STC?;*~-c*j{1u?Xs@#JTn6*oX1Me!V+(y57Tc4~};{$A^$c zd=SBb8hiKcIf&4J^l`BI_$y}I1^>hT|C13WAZ0b}L(PF2Ab4PV)&%s^gBR%nQZ_`$ zBOyW+lF?p*8!FiU;fD);K!G3umiQV=R;5@Kfh5vYn298wIG~J^@x&R6gyr^u5gzgg zVuC>O803&fWWzy+!3@HgWJ>;oSd*MVNMDZ}`e@}5vn&8X0}yE001=wWP?3;e!a?MZ zRHnIM60fw0#2-~HaDbe2Hb7NaBNC#L8g7F5=7?4;$tOO4RL2Jz7ugo21bsmw$sCPE z`k17FK?c)jlvkONCR}vc|ZdX5O|G%aNPpu0-?&e5@B$_6cu*s(X*6SDwz2uyw!{>KBZwB!@9# z;)(>N8E*_Mn8q%fHnR!YgAvJ~Q4rpH*P*c34@O~3)N*vb#>8SCHBsa`Iu)|X zvpp@T9oU;`=EX#>q7d=w}ZiZZgr~7wY^5jl|yN@D)^wFAPA1S8V zcYl3gH$g4ZVq(7`ft|zWToXxHA+J^gBUVii9`t{WMy}sOrsLUav)jMgZj+n;;&zaM z07p1i&_e^}q@DDYVLH_c2yY$$fjI@r4A1LDLH01fj4*CKNwAyi1o*$W1+asV?9I>S;RcT|iAm?;$sO5n zw|acUNySS@1|YDdErF_(BddvVXk`X$Wbh2h`JntzNJ7kIBYw2BCFFJ@59J9ZVw;?y zAgP8a{RD^teOv&|U{!~SvC@$DDq_#1VhturFBr4H9TJ-ehwud>4V9ooAnMY*o#4z4 z#mmAhxW>gvli3Y|(duvc#D=7t+J!U8i7g%5y>=+ak z`az&<(g3I$&`ZjsC{%XBQ3IEuwKec+8j8dM0UL>ik+C6?1T>s)ZZ^OjPNE* zeOw%@T1#3;s|;1Cifx)jhht32C@>rZQ-x4SjxBGSC%c`*u4&BzdUPxH2%Pi^^+l{K zaUgVUq8j|FJG97PPDz*x5frPID&|gageX}87Vy%*PVWH~X^%f4rK`?f%(Jqhq8zwJ z+L)Bqvuvow9$V5qCY`UU4kay4PW#!~ItFXsI|*8-H827BLQ`T2jRYwOKhT;sCPGLY z!bxVT z%Js}L>~Fbli!pDe@~0PW5kf!lQ;aEu*+tUuRY?9@l*7xxai#8szPy4gQG81kZ?czf z!jjkKAmlKU>$-#iUFpv7B7pf}Byx~uK}FVF>q3z;v`_*|{*++r7OI|#+6b+r^2a&M zj5GTf?JLXc2uBe(A1N*~5#;FGPD#W*k`COg_B^rZEMu%x+cZ1>(~E`EJsJr=-WGE+ zUCH896PDqWG?OC;>&Vub7Q(468xBWaAE(7peV)g9MO)@X2Uk1%!pyB@SYI~btzTR% zLmIRcp=QFF4RUVFf|u>wywXH|SxIM%t$1dF><+BwJ3s-9)67Nt+Aq~h)r`G-MHm-M zh}}CT9O%8bBfLT*o2sS~@542r>|wl^<@P#HO@vg#h27kiVYY~{m*gPf0j#Q4gEMIB zW>NeAYN@iWX>z_$1xm%f>$Mhs-MCu`<>iZnxx(VY?kT`eQ8W$;noDvLIK)-p= zr7d)!`)n4R8Y>Kyd65&^qf2!HCeDHG8ire92u-<_Pq)7R5w6cHEey7rD!sl+1O}?? zrNYY>Gp@z1yPb<@zqOIyj`o_7xbAELOCP`F&d6SdRet=Eir~)mwDkB2(>XC%`I|?Y zhmP?Ba?!wOvOqaOV2hAnn2Mp6c{R|H;%h&E8uBaObn{)*jBlMs1Cg6*Bub=1 z#O@aL;_!xc(s_YI5hL{eycsCcesmRl;QPLQV~^47Z?vd2pFv5#kACr`@B8Un-}m%c zXOv5Jkq1yPKuRF_@*ji;gD+nYAB5UNd$M>@2Rm=XZUe!FgkbF3zaF5WPyLU;dmzoR z<|mbA`!|67XMekAfCMNcOm$WiLK6h$W^*(!88d1BK~^hc^gxUCH(4efX(w%^QewN7 zf$nBKP_YLmw-aM$b$n(9a1}C!vQV)m6kWj++(mfQqbkEx24ePpoFjG8=7YONA*cf{ zkAYilaX9Q}F8@_(Zzj!ENx>2Vh1ukb@zq0#O5H z8$6Utv~&hx@+Mb>2lDiYNl-TI(FY)?gCYZf)1iXN(+5!02DGy`7uarcrB8KrZkz-% z(-BWACjvv`D|KLdt5Xd?$bvbzW4E{ll;&ywYNUb*^BE23QDSmIY|=FO(@d&mDWe2K zIiv+xHxXT$5!YXgIrw3+n`llX6A-b(3s1j&xEgvyeURHHFahlLMI%%LI*M^I9HJE>Um~pr{gD z5*A4YU=az104QS=r(8IfKHx|diorSm7eGp16*juYL-t07k_3t_VIowCYAh!LpaMpR zSC6B0OGN2&YL=6`R)uO&m7U`1RNY>!qiszMQL=1Z+tL3OeR9VI4~q=q%a zQ&rUylTeYXBbw5dS5U!%<%clFK^(Y;Yrn*g>C#Fkqhzvq4YpyG1qPEMV1gVGk{Q)s zH90F`WfgNmS@1J3^th8{z+$kOF88r5L5U447)~dN3w5?BP}66Pfh_{U3$3RTdT;>Z z=_<|9hi3quRFRkBd3n}ho>t(JL`R){rWIp}6X3{i5`s3jVu)}_ESV&2cI8gRp*QKr zGFb^jrF5J-GZKr4F9h;h)8Zxn%XAnj#+SUPA9+@b{c?zv!EHu?C0=GRA|*NUSZWgk z7J1TNqtSYD5k+DlC+g-$9)>3!vtTYN91TzaFxrwH2A^y~nuzyJ8Csk4)0_hlR%-ZX z%a$@lqdWf@q+KvxT6Cii@DP5{Th3^lK(rsgwM>+eLzKmIFk%zZ`Fs$7Z*F8zE%u9z zL2$?jM_4d(Z<-79mZnH)J#0#Xf{_goCSWQmb;(5s3fUcuB|TfYL%xAiq!J!hAwd*( zae_t(IW<$}XpR-nPtgd$2ML^aW7cpv z7S9oV?ly`!z3Fa0~7Tn#Idatr#B~)(h)_Jp8|cX;VJfqjIZoN-vrc9ScloNHcVC-@D>Kn~ao{@3 z;~Gh8n7Zmz1s4?m^+iR9q8+bVL0rPIt#mbhiBU6RFvn50m6(t$YaQKMGMtnaQ(CTO zNuOFrab_yD&otbGD=Uuz_F|#u+0t8A2fI87q>SsaqKpkzYQRkjQcc z)#5DXf}ZH2yf3?JGlq^vs!rdSO@pzT;o+<6$eLt$3(89g!SNAjF>+S$LHc^L>q7x! zyE=S0gZwkPWWYLgkPEaBw$$~NvAe9}lfU#cJ~_c9N>UlA*)z8wKGi9M`+FG$JiZCJ z2H`cooav+gZ}PpsSbkmk53RdA2qO=77l0e~zCc>OhJ%|J(s5R>#nA=PKSHHTVn;4GP-E%BrH4;yBoSL2Tm`HNC;MEPiH|De4c6X!xy)7 zqDRA;X1}dgbN1T@R1`mMIV{4%xa&lXPONn-e=hB?CT&LoLm4jB(w14A+{qF~Y|kP$9pbP6 zbZD+KY8*$K7b4Shqk;r~ThwAf7IFYVe#@;?4Y(af)L0!w8Fs<$vV7#VFamZcur){2(%SCoQfHF2S%BaC^;DD=sQ>>9J_m0Gx$*dN|3Mb zt%*+>mZ|t|vAAAh6*k}_)52?~Oarq6)--aNox7H1Z~w9-JvLj!eN9q?1IG$sfCQ2D#bEdb2H@1jgD`z3=BgyfPpzW|P|G+0ht zA;ob4!N$A9`4AO`yUboOSo8+M(|Io3v&mEDctE%j$x~mg=YjodTPF7U~aa%T#J=J zW7bLPgvo@;JiN_*Hm_tX22Gyg@!--%EOfDKy#b@-2|7TX+X?<_zizWz%48h}pvE5Z zwHC%NiN;-9)Ams>STZeR0UL!~f!?IrUx?4A@c(blp5SKLhO-NGA-E8@*2 zXa393F6s(A4gS_)P0Y7PfcN{Vq$Ekx5nk~n zh4gdaF(#&)!xnjxvS&+ooUnxAgh)_>T=|3%dSAYw(b(+kiKQ$9#Lnj2PqB)NFuuv++P4W%qW$oygBY*nN5 z=B6jdj!<#qYiMk>v@6r-OEHp}kB}HSH23}F|2XN5BCQhgFCj1V)jA>W{qW!Z;a>jo zKddLTRprnA&N}A$@1TYZ1Q}U|BP3=t$7FG7EDkw=1V6)hMzOs``%uaX|*6E0wo$C3>(H2!6+m$>eOT!7TPNLAT9eaFEcms zI6>z`LD?KPH9J!&0v?EDKIR%Th%T0DX_JJ?IBt1umt=l*v3zlji;;V4VkVn|xq9K`;N`2Co}VN1 ziu%@yKU|0%I3m&E_5u6ds>QZcx^IBvsy6jdTZ6#+%sY>j#YA|nk@l*hPO>?Y!OfNJ zxG;^onkpObr~^qm4Mf%4OTabQCX8@EQSL$iEe*V^E9|Z>1{qABtu#Oj#L0k5>%d5$ zQ}6-T91P~I$jo66KfqiG@~t7Ji$)HvBHQsW@lrew3F!J;?L84-Spb3(#qmbSi+hEbAe|E!w#rf8loVlYuVclpEsbf>NC%nxGoO^5Fp@y z2s!{kh7&{?@*GylNNQNBwtYsunw}Z|m01(fX`lc@zF?zHG~o0CI>GFKl?+0>RhAP2 zib8?d^$Jc%xOsts^AFGx9A;Uo@RC8UEdqUj!4IC*Moxmdn`j@UT4sb1S|{xSi)S{> z8JZ8jD9e{F9$?^~7G!v#1r#hGz<`~VBCqFYWY#%m?q~*V!<(6&nrZr+;TGqtqXt{* zFEw~dFEK^#O`&$xwpgJIt=er!x9R3h6jRc;KmYeH|2_2R{%k4T6w^A2i_zO(-Z4jDS7i zAcurBWf`bp1~Wk6(&vuRfZmay1Vk&!(MV7$YS{~8MUhrj;Pn?0DJTIaR&&>#(j%UekL%Z9S_ zCTCzUC^>Oc3AWNZp$+B#JA8DbzTOobH~vHlsdL?wC^Hy5y`>plOvEJb5|PP?VLf{o zz+ooHfK!wOlZzw`TrPz~xGe{cD-;h`c)=EUJtZn}gOp0TB^q1=KorDtR5%c6$~)fj zE6@lgVAK~&t}KHsf_N5R;>M>sy+N97X~QSyKs*opvLyWzW^ra!tgApr5Qb#S=H~bn zq39-8bGk|lo03QBs6hj~%%%rQ07#&ezyl%ZiB`V38hCNimKXULGWi9j3VuakmeETC zNCvVtj^a$`u+tDIfX!Z_K#aY_f(I;c#yXfYp!8zMIJsDW1(0+rDrDg?`3^EWHXk8x^6WRwWEvP)?mp zwFTgiM@kMU10H)y*2J1%4rXMIx1P|}J|1)*F>4&f3IPG9TB<~@c_c&GN*D_+ivqba zghEC(GPgBg0A}4A0)!@m2vi^fR7u$ZWKe(s9KaD`k!&ZWIs~`Lg-#)>tB@G-5I_TL3V~XZH2~yELVzSIA|z5bW3dty6FtjZ zZ;2H!ngrJWKb$1qz3@kz{gtEy7I59(DIfyd?JjJoB3>CRU;qYCS^@+sDyz;bH&=P< z7SKeMWC5x;c%`gVs&vO0ekysfngnm(JFPB2;JOUJz;+#=00nFy1o|w>vnl`r5RhO4 z1eggx1L}lzt~U&k+7dB4Ow|ekhmSduN}sw=h&jcDieUJH$grT$ zooGgtB@Zpef{Z5+W()Z99}o&K-$($05D?A+7^naa6%7SOjoN(05l8s~O$Q2$DN^b! z9jR0QEoxa`s8mmMRX1sqk6TLyG_BkoiqX59JK{m27c$ogd&d{NRC_#IFfyk-o@ zAOzY3X$2&VYk_F{Ri!ERwr|Z}diBE^tpfMCO;VDXTtRi%$_gQMnG=ZYWiN%cl*<4s zB5UEUD>q4k1jvd22gtwy%~n9)dQyno?yYZOEP(~WTmdz>yWbSg>y<37q<6c#2AO1%ZTM6k&0QRmv+N0AN6$zp4k2)vN;Fu9$m= z02wG?=tB?lnt48f8oR&+4PbMQR8ezFpvEjwj{_>VilDsJ)#_c}!;e?@;r0BPOPZa8 zcu_mu|HFdXg;>>>W6H1vp7(A75x_u<4M47cY**;yjX;fI-~xb~d>$A2EoC4gi*as9 zs)nbEJC36#GCbl>^wvvlB$5!%e7oCDs})buD1p|R(Y3p6zzR~Z0vVV9%t`C%0I(~7 z3Isj@?#T9pe;bLnP3MZ5e~VRF0lSMwC^B4dIibX)JPs*IeBuMfWmRNe^4e1dmtVp4 zWsrgwZ&v}=9Y6uddV#?2ycM&E?BQGe1u7Oa@?&tRCR{;;8x#0E*DBFi^>>D(W2K z|H8CRiYn0S@$#%e#7-(`BxRswhIm32Xkl7Z1IdgKK z@A^a_0dWugfMfES!8(wF(59=D4rTaQgI}yb3X5VlEJckx5LncJ>k!Xal0yTfA|eXl zA6zQ}6VL}0fCoQ`0!<+GR-gz2AO+D6NIX!J?29+_EBWy7P=L=}vk-TJp04$LQv7ikTa0Ot%1QhECe~W(9|4(ed z<_{ns0m_L#6i=k?>I6lA4&mXsaOr8NgEF|qqU6gUVx$ap3;e*ZjASgvkdBvzr1k=U z>5NgMK(Q*&tEPHl28}81`o!@Ng9- z23h5W_)@*rL;dc?41&Qk%7O}4FAKUuEYE>gj^QU(sXK(g&E~R??#dsn&`q|$6vGlM z2jMCB5RvL39&W}~&xj3Xxl9NS*Qw@}Y8{N;C$bes<<~a=uIeRlivJ*SCvuCa< zFMD$ku|^iAGdi~OJCSo0nbI-cW-sIfbLi$&4gls*Q*E+fV`?dL#7aKXZb(#1ac~R5 zz92yTlWvgFq7GDXYRPi=Q!dhGxcE~(Rp=W3QU$Avmb|9A?8OUC|ID;rre#8+Ye=y~ zIn=96)Ur5qMNg3c6KO?Dlo?XgC{uJp4Q&-$hl6qygytv`r~rjrrwCkU1V+FFh_pzN z)JT;SN#kfqois_4v_VJ-*exS1mULQNmRH*?Cd1#mhl4#{{#-m<5gu@`8a<7r6oHm4LuomN``>=4KzFOLD_h{H2_%MY&BB=419p<`RPmI6+T9$g_|MWAVg zwsw_DY~AZ?n06Hcpq&hqKPLepL^B@f#;X=o!Xk8W`c?$YCLZ_!+|WcLZf2rlL7i3v zcL&gr^3Pb^bmAV@Vn8sBbZ%CL&!A?Pft@+C$d!cLqCqN?I+|I};x|EoNWk7I1KX;YM}>a(5p_HqRw0boxr z(2ilSED-E=E-beYVDABBICA^;11`oWtWG}M)VEqwixA>i{-nNAR@{ODD(8x~P8Pp_ zLj$7cdFH0}b_-SL_J;5FZta)eP74~I@Qa&4I3Qq)<jJU zF!l|A_YCh_}nrIeW&m8toa6Y%>+ zIh&(do9h!2@0XjmIh?^co1M8F$2puI09?=SkVPR}+KEP4bd*=>Qn;kPFe4>dWDvEn z5rqP5MSumt*_$ExoC#W-qdAiYz@RM;=E8X=K{=A6xr!CK`V=~xcgvw8*_k(4oFyPt zmw`K!Wh}iQ0lMfA?u3RUfux;EOynXDKpMkzBV`5IF{w0*?x14}S)uDwqqAAJDteqZ z`T)pSOjg?Ly2zJ{T1*Tv6gsLxIULe){}l?F%S z0dhqU%0xc9mp4YZ= zt3|^G@F(9%ah>xxW_GJ7d$yff3Kn~|o$9bBVW{<5uRW8gnObD>dZ~5m?1o#*KJ>VO zySKZ!xAR&8z%{I^3nV=7M(8LghC!F%go_J}Lyx6pDWhv$GF<#wyp-Fykz2DEtN@_# zyp=n!U6+I<`?e#SvKMT@kZ%DJaK0y7w{QEug_^x7yQ5P_dQrGb_Vae$Y%K`pJ`>`$ zpaP5QFJnT(hL|is(ulz?{~QxKR<{3}wqY*;KK#S$d!>gO`L>$DD#fphTK~Y0r2jgp zcN(~@nyd9f61Cc|onr*#i!eXo#|sh<*x?q0C9?nq$nl^IX!nfJ&WKJ8K!)5F@W-xe zJjSDXt}NTixtgf$GNGY*uuHtKvl_RNPpEbAvL_qI$$X`EQNaH@hwp~la4me(?bdW8 zKl8Je%q!j2MA+WsDLCw1xb4a0obx<<%~@*~MI6zcYQK?>jN$XK%bCAFye1)W(MMdP zN4&5FdbYh9b`r$AMlL`Q7~WzOfm4^%v7n2FgiPEGMZ=@iuf+=HXwx&@n<*W)bqmuQ zfP_^_w-PYe8&cSb|9#kvz1Wfc*p)rmr9cZd3&X5(>wfqrY%zOL*c_%ZeqFAtN9LUt z!m1)c1FC=n%$(Vm{oKu+*dcwrC$Svux7`KW9N}Hw>D`;(o!;*~-`#!R=luZ20;2p% z9ia7gWRM~}n1(tg9A%VJ#Ds{VD6T8*7GOaHYEs|l{od`J-|=1J^&O#i+Mz!_Qy%;z@tc2IoHenD9>vQ_3|^SUby z2_V9JOSEJ5|4JcmreXziF`wa78sMz}*`gN1H2~V6y*}&dZR-L5po2ZKVXlPrZ>|o% z@Dn=m9lx9H_wXfO@r8Q79a`}*AJ{K%4n9Dv48+2nCY9{sia3UsQHwm@jIV6QN9N2C z!hjHp-lX5k465crUc+oAU;lKmiV?r}ck-Gs|M4aNnz5eiD?8YW-|uU3@GJl73!04U z&+N}SgC)sO;BFLYMW6TW?a{hA%2OISREfL$8J2_>_TGE?UYp6wr@>y7nP0!J+4qCr z_bb2fb06_nSokSlFUTwZVk))})D5Fy8CG(I_rq#=Hij_d86v_2* zp>(He|8Z7E$uu8h@?0L5K^6x{yxClHaV&i-6zClt76=6}1`H?)8AcvDDoP?wW;#A{ z7Ic1khCVtnf|`n=ni3UNo`OCojeNkp39e0bB~5W;Xeeb!Wk7{#(PGK)-mdk!DM_TI z$q-*$U|pe6j76(uh%AW|q@t2Cio2SNmy#B-ue-OizRSbU%d6Al2f!}*0V`8M(WL|m z8e;#{jNt`4YRO%y`0@<&+)TOv3dsMoHM$ddV35eXGQB}-B)iEJvc z5@yPoGGDSArLx`5l{Rhelkq`D127GhaLDrP7Y8mKxjpf9O9K`N5E`73+K|~VH2xfR z|8#0Bn>09C*EIDe6x>akI!6_0E3?wimvY_BJ?ZY=IvM%+>IK|)WTSjRMKlnyO<9#| zQMhbbQ&3s92Z1k%ZyNoOu4de~}8vZXO= zFiN*?;cCzJq$E}E-Jej(bPbzi5h;IR$J3e=9PT54IE1le(TKoje6 zqZycJo)@AUUuZ>(L1`)R0b4$m0+*gY!c-2Cdk#rbk~$JvsG)}9?z|zXBVqu#F@T%LfpYxd23OUipQJrFF`zv(rj326_Hy*FY50HrwqN(%8bSxXrfd zt+`*QC4vaUvfHk^@BUhBofrKASyc8$SdqRANuvZbTu7UZFtk{bd7iEG`{#NcEAfzxE2R#~&x!aiQ|A#lZ(AbMVp0DyM96FK+0L zMb!(wQMG}r9zQqWEfmO6*^p;PNi)V!Yk}Of(@z_kK)TaGMxE83$>H!(RqqVy7QjfL zU9x*L-09Is`x_b3a=>Wk2OIk;GSqX^Ew3!IKxcHQrGd6pc+UZDiww$L!H40{KAchB zXfx&AKWD%w!U*cp{juC3$DR4*IwmlbomC@E4YWv8SbBsM26GV^cp%J25)w{!lrI<} zZ3P-4*vSFhin_Kr=9T+SXz+&)pTOj@@FI9aNtISKM{9B!JwRTX|8-1O)m2wJn4v2z zxt)~{+j{`wlRv)s<)eST`suU3zWV`4jk^fbG2WP)dV78KVx~PNNB&&b4uEU>k~eUt z1oyQsfe2jS@WA&p<9TlujLQYuoI{=qT5x)#$%X_l_&4i}$AThU+~Yb`z;!wBcfx95 zBUs3*%n>UJA^;fLME9Y8n2tm`d=`r|bAc1Bs34ab7{98OL)dKvV@uE-qFmU*U^!8E zbBiM9j0M7@FmEYG*%B9_H$8)J@G;EsMQ66RB0)s2i`iq0(&~i5CW4QOEfgQ`I7UYm z!f$Ghdz?m|)u1j+gCb{h2CAx24ewMV51kPtBmdV(>L^1F|EbyC9GxgfIacy%2Nagw zJ|ID~QLuI-WDf=(<0@zQad1u0&VoD`xDmb*5MxN!8x6Hdx?ysB1HvQbqOhork!*&} zdt5;3w?{Xa&J8S52zRn^$j*F0k*AyH4v$#6WhfCwOeCHzhj&NKJ&_T;8s`&zDb8@3 z@0{vPCp&#f&UN;RWG6f3EwVUF#*uQ3)EL*ah6Wks{iBP6d(kb47KCY2sau^-@z$!ro5T#y=Cl?!WX$Bs#K zeHp!|JGr{m1jbZ-@RQ*n8&u4p29=sh*$9aK5TOZ9^D(rWg6%S9i*9nYn_-=3Mr+#8 zu0HgfeuXGr1KZAsqO+69V-s51u$WtH39`@&2xC_ykRtvAdXdei7TU@)t zyShu5&NQ`q#c2CB3L~mL_A}?Xry9yig-7ylDq%Z-=pJHG9fFW{y9?eAO7$BQb*@Z7yWWbT zHNNs)1N@#MOto6G3W=*Ge&fm>*ii@$&Fim#|20$=023I&{M8pSmpFj=LRh&Go-kTh z!VBc7F^!ttF!nTj+YIkBOC1giFesoMWQ>@@8cwli4(dh3QI_@!(`_<$n_p32)_`r=b@ZcF^Im;9_0(ltc${CmE zVcG-Y5N#0nJZ^3X)ky^Fi&T|1MSoyUnhK5u|H7S1k813Y{q&ThGI0KWkCd z!Jf8^hkY`9HU+2?7TqG>pp-WDdp-9%R1Mwj`f@W7a04}7o`$&L%Mc- z>t0v;)-Q!Hit7&QP|vvRoaKyW|D7`LoPw3!Ri$jcTdy=7;?UWrcdNbk{Y@p8`_t8} zmB&XRRCQ2_9ZG8X%42@=anSsEXk~dNkV!!eYM87@Z~D~@w{2Hu{K@t0J$1g)Hy8np$a?ktS&ult;m(q=qQDqMJ0@C^N_Sl*4{Hwp=D^6#9>!m)pF#IcR z(wNjnvVVQ;e?R=uxPsVzMz)d;*vVOzkVoQ9eUrm)1a;DQW;uAs8AD-I9qLff?9OO5 zbBUvv+xs0{%Hh*TxtpGG#{$xdNX;5(*c$;_T>M4Q(3wZa@l&S+4q7Q(mr2g_Nua^O zkK4@9P~};}#R0@vLlY1Y|LP2tA#Fw%_@4WPAihx`@?6}aRf`6O97uUdL*$L@4PXtP z+eX=m(5+gs^-o!Z8Z;rHon1w-MTYO?91-4|zQLNs(b^6URCq|snz2U{5Z>}I!>@s$ z6;j){J8;vfw|&3Yiq15oL*kp&`1_offtVz$KbxnV7OPi{tE5c07se z0AW}N;2!d!)NmB11=_on-Xal0LL|lm&`NDx!PvBj(Li9XIAR+1T&yuw$BDsF!NI;n zOh3VlTvf)H&_S`0N5PHaw5cJ@4aBj5*@rL_Go9edmEI?|mEjZ{`|05=0$U%V&6Knm z(M^n-NZzJY)>xPs|1L1%iz(wWLgH(28rWRpgb7$MHUl9EgoBVpI6B)H@L7X|qUvoU zt6`zfkzp=?;g402cQu(77zK22&^<;T7C;){*kU|pn)Mw;LHtlz&>;m_#jz4n0Cv zcwpZK;(_@=M3$Ua;4E5oz!Fu24Q6CkSq_AG{Y^nmrJET6z}yTFPSZl>3%6NCvTR2X z<<}1NP+wkz|AK_0f|Z6DD42qIga&lvTWXnwQ5q7C2T9Vx{$}vNr+__{andq z!er`{8PYTb@U~UMM4C80smVU7yRQ5sHsN=Sj9uhXCX~Lz{pbSXm zf~=Iva9RbHFrNi(-``ZkxtxK38JoAsBK6#652|rv~UEP%76d}Y7KcDn&qg5ISvLn=h6*Coj%5pN@~6#6?DuJK^ zq=3P~*7YUKjHj}dj%XMJdY(oyrYeLnV?tiQRV)CGLKdKAs-Vi~ld2ywv6#P*3W_xv z{~)9ysp=Qe*&3b(tEx^7WgtXe-sc@QN(wZ<3JgFBq`(NsUqB_@Q3_~cNCP9?!XL~E z9jHid?PA7MVYkZHJQh^*Wk8Z~sla+01uTsVNPr2X0D$7^^DUh!Lafb^pRyQi^PN(; zY@G@UjPs$Yzk-yJas%n*0f&(1o(*H8xWIIws|%bS$%g04h9{XE0g0yU&HiHR;Ox!X z)nbAyJ`F1sn2UB843B2P9Pj}QZ~zRX0OD~h9rIm43b=rio(#>f?aa6>%fPM4kWq7zZQUxUXc(|17kuY0h(|z0hu(^kv~1DG0xrgN&JyV2_KC>_LMwm$0w|S8KotZr z5~`<^+D>w0#kf^X@ zhq0@*trTvT5C?w?XcCGtNo|<1ahzcvWJ#FJP|X?8($5!W)6Uq@&)dw#%dK>T&yT*p3|DWTc=1|r=T;kca3p~vQ!(HXn~1z5iE{-eKmRVTJceOX zO_-7~5-v1o@IWXkDC^)Qx^e&lIU!~qJZJ!ctDgf6SguK<>JG_ar`$cNQ)*OOQK>rC zA?3Dizc--7F`?V6!2w`)H9CFEH&cd}g(rnwz+_xpHx%lrZ1A{p2Evz&ToA<>*%4)R zu4&6A&4^q%q`8e=U2NvEXYEu&OR#{l1lijLi{7n4Tr}3tWYlK(2JA|gtqv;zE&~Dt z-2XCsP{!e;^@&7gJpxlY zLjH)jNOsye1R9l}I$0?609gBh6b%tN0i{KRI`uRmBNApvA%+wRQ~ym;R0z?S5O;hf z;)N(`$l)A|w0PoSf^2An8Gulx#~FD1^5PUSB*~^nNth#BIeDa!+ndH< zqKYA@m6=tYe+G(2lED%3Cohzt@_`5(7>VZ*Za(UfLrowzo}_S|HweDM^o< zHe1Ueri9kUkFhu^>9EOq6QxggWowZcZenuBuz$*>O->e#kpJqn-YV(IO#`)iBrED1 zROVeAsRHe?u&f%#x{vxRZ=0=@+2cM=3=9ido+x4PB0C**Q5IQU@f)$hvWl(3WZa_3 zO<{7J)3leR+Sw%jtm0p{{1{{HqZ^BilqzFLL!8X0>?2#7XEbMpYmcf+Y|J|5ZjeXSa%#ehAwvAdTPld&q1qBXh6M;%=J=Whuvj0Vr#9rwZvT64zr9PelDOYqd+%48>-!5E7)H}NFs`hec5 z^^y6o|0k}mwtwgW1!SMA{Ps)b5C80g0EzaOhX&-YMnmA!a%kj-SCI&Sbt)TAUN?lb zgzZ?)x&?_k#}5u}WK2m3;k`si!iPz(gdwa)SkRO~46fo-=-UhmM@U0t)$oQg2n*n3 zM+q6O@C_|284@57!;%c;ZE%20kM7_eAmXDX?;FAu8W)d3EI|Z|$|4rGsKx0>M*|P} z00+28MlEt+TaHO%D%#NwAhtpST`Z#<<48w2UjL?gwOdXWfFY`)NUmFX90aErCIbpk4#g(Y2yTq*n7yL*L6(L2lxBxA538_Uo#88rV!Qv!wXb`0m0v?)SCkz!~76uDx zBw$3v5TTUINKnxeIV1&KiVV=f-tYxgP;HX1fRR;V!6P`R2t~33SFN7lxe;9fMJDj7*vzKIkiiDE3mInHRwA~2XqRg>O>PMg%Cb6k8JlDL^oS{`DG zh`=SAPG`QX)e;uWOayQG^q?VJ$tS>Jh7!;Q#W7G*Xs5Ur5>Bx@LS!ML;-eBpCSpza z(ep@8!%w`}f}S?`AyIEoh8R(yPg>HF9sj4GQ$^JzAz=+uNhy+1h~|=!C;0LYD1}4D z>d?=1JO!Jm$*7Xj$*NB3EtYpHl^EK2GEl^#6f&5aS?VB9GK`BBQJHB1w+g4r0n;M5 zsM!13ARyT#^sT$e6IA}7mG_Mx9#mAQH`h_nm{jkq!ceME#KTEpC9h^mc&1m-0I&2I zEtN(~2s*aI6{?*tO~!2L!ZbSu&a%a`5hYs~0E-SBl}ikCQVAfCu%Tw&Wktj+-Wu#$ zmZNlwBbUskAka64qGEKf;|v+rV#hl#LG22D0qQuAL0s~TAt0nEXD4YkNvZV$w5>CS zbyf0F5|Ndq-|bhS{K2ZU0_vkzS^r{F@H(29pr*aC=!QXCBGd=igNYk)q%rI}8Kf4D zw5$a#EF>EfP`&9`n?dZfgaJxp${|10dhkfSlSm|S#Va~Yz%42!)**N=0bN;P0vPs8 zEWi>GGEIlXeu6rfjfI3jR7b7m#fWO0HDOvBRCk3if_&ZWaQN^Pirv|Y?bfCxwg4<{ z6?w)Jb(AmP)Fi6Vw}jjp)T$(Di!1&WCgTd^Pha_ib4)v^HVR}jf>NEBokNd7{Vbp1 z4dqTkJB>G)7qh78jUsLKjnb@_Cwx0Z`%LAU9yjZ73usm@45}VCU{K9}IaW6>!|2de zIvyjsG&nY@5W-pd)1D5smH#~{YE4Umh^4mleel9jm~6Vz^Kl_7MmxV8{Q-XqST6<1 zA|prNXblFub*a`@H9D2;m{cfAPP?}3Ww*&H&EA4smWgaHKukhK5fz7Kp%OBW^VRHe``j zi>sV=>^S+4t`Xtg2$CCD$Xw|Hm4$?oCm@1!;T*;@jGyIE4fS}3vx0IE4~+`mqI%U* zk|5HmH;6nn$0+#BgR2g58`MPUDfS0?z{+c|PaK#wp#pf=_1 zy1Ege<{XX!=Fb?gWieEgl(4ZNB7Oiy$5qgVYu4HCH$-{}2V_lZ3iGS)tT?HuC_fW( zE@Bly3N>4>JY~UX)WhOq84*9EG-4%|fye38$^?V5WKg_+cotK28H;h;FWBSOq!=`V z+t)nv9Zy)e9=Xcm2bKgGQ%yPCU)tR9w6aF1K6aLR3_JvNc(R51C2SHaX=QV)l4%sxVK1U&#L^Vk z^F&k_B}t-$ab^)8l6{oir@Kb1zV8KKzW2jM81~8=%Jl$7znOIu-#Sa}Z96uNb({XX#_W;MEBQE$4bSE`| z;Dk#=EdPZF3r#_DvI7O6V+UE74jl&v^Y90{SA1eXiTD>3^T%*W;fEV>7(EgV^$}pn zg$8agNqRPjE#n(XW{pn4cM?%p2s0vN!dsg(56*ZIGGtw@bbcvS4LxUV&jbkh<9zv- zBlU9|T7VVX6$rUkGnLaXl>=Hx@c_TbGfg2t7g7eVBR~S^4q)gJ$dx|~SwHlEKfGp+ z6~qxv(nEA`2KL~MMKnYtLLk6E7&DSw_ds1lRFj^xhNveO`m&N@GEs=Zl06xeJh_s5 z<7C6gk{YB+M6^gXc?>|=28$6mLs?`~<7CaCI1?vDxY&(j<%JCMmBBa*Uq}rdfhf(< z9RFasEmkBaIbnqa>6KNumT3u>YB`r+$tCJlmqZ9|d0>Sc#%pg7murTWbQwR`(_fTB zNFzCPo!|xyL`hxJEEMKe01_F@7%G&PIJIX>t)O(7`I+F?DN+QQ3r3n8G=mgimXS$= zh!zf&F$5oAL#^VdhIB#1bh0_HLTqiwTfe&HOa2+_D+XF{qR7Y79n_@I^)uEh? zVw}neMh5Yf#Q7z)a9&=5n-Ex?{I_cssGTZ^P}b>7Oc57MG@i(kJbMA1jq;p@bXU;m zIkq50QZ$N|$WHub39oPt(6yNbw?=RjpwT&?a1;#`K%fLlCZp1sc?Og$!-6qYn*Vg@ z5x*x`_C^;1nxO;AN)q=0o;aHO*AY~h2cpA-Q*?6Nph_ghXGT*D$CwDoI5UQMkmopf zhgV6gfPp!ISzKsPDHlWCHv|t=9bf_p%Ya_IVve> zcs`OsMP3JCZ@@)oG!uLT2EBJ;I(4Q}Fofa|Z8|CpG3r(NfThLsUcBfOXj%nv@K9(L z7Vvg59=AxG6fa2taFjqvk>WSBR3ChjBbyS8^Vfg*(v^ zFDHx-gfFqJzrT(llm>N#Y?A492S75FSr6boK~@4^RM!B9K6FHYb*gyuzkwDn&FpG26PMrTU^v z)nYjI3K%kN?TB%YKONfB>lux7rF_CI(nMXQ8}42LWn02I;jDN z7;S+kB^f%SV0o;Xm3ZI|t8q4N@@Nl9>aTj5*p088!4Gj$qFbNUk%+omUbfdB3)jlgv>shMlw zH)LH#r3H69Q`24jAtpszGd@ctp@0Zh@>n4wsaS=yprL%=pc?!&W`7x%T5}El(?O6n zW*zHY4mkzD^s#utqIm`rn&GI)B8y@eSkJPgCjo~kfjFljWA+wG4$*q58x7+^0bzCk zipI0oM7F_1y9L%ckR>nM$W>u_BV0QLb;mlV5_m%~A^#*0JYsA7m}_vCeBTPEV`^t) zDhE@5u8?4D7C{sl=Pzb6f(gbchww9MN0^RE7>O_n6~!4R1SCN0x^D+Ar zxN=|^%e9#h`Vo_tIPQo__r_JTAU|c=Gg+}cKRR9_`wtF@qW{h?qj;cNnlmgUR|u{O z!JnGJwDYG6jDWK7h#b7YMzAO{&||VALRunG{jeD!RS-~Ww7;4PFMNLOy9!%T8@8z# zGuL)kDIN(27`tk9H9W-nK?g2u#50Uq=#gMVti&^0!ZYCxT_d89$85wiwV`vTDk8bh z3r(wWy$Q5EQ=mH4hQ(Z*#%PQoyrivetRdv_0pk`r11A$mFgUe`GMV69v`454`^TAZ z!<+(dZ_&OKV3K7576#{Bd|bx|yT^HK6Op{gk&K^=j7oo;uUIz81Y4+1f{$GHa$gvR zvJk+bp{Z~NK$bRmcvNH*SXp<1GjYWxKG%kz)_D<8hW|x83-&7ul^9dKJC3sUSeH}_ zXQHrKhcmTG%MQUNVbmLAgNV)awZyksUu=t8+&S&L6t>Z|I1{#bvQt6B5u_KW%4!jw zhZ>owuz$M|(lbQooGj`5Chd%T7FVMW34E`lmp;;V`E(Bc$}yz;C=C22D9o%*;aDH> z%Z$pyWs{W2j2dh>RS_M|xa)|~tdY^{4K{jskwPc7*wGU$UV!+s(rnP=oX_kuFN>;% z>2(pI`-&qyV6{_TO(ZE3CnX|z$|fr>4viFUX38@?In)fRH1mQn6~o@L5Q(se-zZlq zJ=8_>0SnRqB~4Q&?JZfosgl7$v5>%09o8dgU;mU*&oG?@0GBLK)_sQK3vlaINGR5F z-C1Bk44k{E_)xNMm8d$2MDs+g?zoIA;f+;;L~gb;A@mMWy*T1Nv6}Co zN}x3in0A>rPFWN2vUUG0nsh+n89orDMBtz4 z2wgM+i(*J4F5)6U;vyiRa$Mppe&Qm2NQ@#zF+N7^iJ$@M;w?TM8gSwsx)+@>3@WF4 z%@}sW*%&BiFP(I~4?&42=};VTTX?xON^UeAnM9`@3lF6Mo^g0BJweIQu@`v5H(fJ&;mE`_ zuZ!^B;$yo-vt)4-Pq;WvE&`{xbSiBC)^ui8{=gi~m{yA|GH)s~LweB&7+)Tk6c;2t z-b>L{cf7uwG=o0Zva^a$@#$dzrvG~w8s6O0)|KEyRkc)GuXmbE#fwa`{$=923_Z#w zdCt&q(7#Ew6;*Mg8&i3m+;`e^5p{9w{$QaVo$Zeji^{69=TjS%b$AZxIoFMunx11v z)XDG8y_G$Ft&DL^Nh~v{L)?;*QGOgH?}Yv(H)_VLaz=M< z6uHh1nm1F)n~fPs2!&I)KrVo?3Ks9P)$)FO%MB?oqJitp=#!}D$_nj~q)gPF!bsX% z*pwMPf@r2Q7k4Y~sEIFay%IT((;hnRb6y5zF;k}E7)p3Ej^-ohpbnB@cX>NncU?3C z4F`gf^k?(92^loip{xom(f`nZ>T#gjBjhOr_$*XhJsifj#Tqva)=i$GGeBPFdOPug zr!6oA2S7zYet%x!AO!`O6Vo3p5Hj+&eZU^99b#kg@(?_C>18pb9hH8ZM>9?Py{_jR~j zl9KNr5mC-QQH`J_xA4?tuoUdpQRBN2UBLhd@I4)H0w*8_L1nC7s?0~*?G1xs;n?^> z5$45T2a?z^XW)3Xmbh2YTSV387a#xxAOI0{u@SN~6KVSmVNl@0s@%IqDh~uQ;gC4e zXfm7&QpsEaiB=PVemMtB@V0Ury8lfNDv5x&@n{GS}2l3Fj)Vc z0<8ww2G0%=69o&|E+}NA5{c4=uoeLcF`HyQG&q$qmM%iENJm98BxEE^Nx@_u8X6WL z8XzDf9&+D!C3t0eg}xk1QH_hSgdPM4NSqJzN(cx91OkvxlaI5xTem|c!wii0h1u%K$is##0*PV@zENR7u}BCIZJ&tPsM(3)|vQcnBd*jc4D#fgk$PIvkmv!P8yIf?Sv`u3WyN ztqR6cwkbnI1s|wt$ZQXF(|NEUBY-4h%+aSmw4J*obkSd_KlDMwQuMYCE|7o=S42`m zdzwiSn}93DmqS7d%o?i@iAlZ((US_R*!=OumxCY}<~Rt?P|3Hdx;UVK1$5yrm)06v zYe1pIVgKulFCY+rIT;xor!Wq2{7sdrh+E|=2)ZcktM+oN$g@-=u*DV#dU-=A;xZsm zJtz**U?3UoC;>PRC&|%E-yVucgU6ssNXc7hLxfw8PwGd)j8SuYnX zg#bxQ^(g#OP(-+sb30uS{SktK`WuqNdVu>UB0`;fgr_T}yyuW6z~EDc5X>V%`a4ueNmvzAVG&& zA(AX~pf_+dQm}t`UGI_Mq%6=7^JKtsHxEz{RuWK+m4w!0QO&bTD~y}sz#QB3Y&*d& zu>Xn{ReXN%g!DIT0}~3!1Jv25IH5HC zX{CphkYHeg3kD%!`6gvpP@gpI(4{d5rJ)-5iTSf0gIDCZ7%;Gw3(p=>zJ2s_|_ z0Sq8O0R<2cfMXdz05zQf1}H#=1hN}qKSx~VaNeE>OQbyrUOe&EJAM0tApKZ0I}Fhd znDz;A$dG}NKMn|B068MqtBd_G2;omj7F|Gy0q)^4-mul98Inw@jBgb!SRq1k_3BM$ zpsjY11ipeASOpo^*h%y$V6ba_fPooMU;+mmD2SH8(@kV6YYK>RD$2lu98g`(asQWB zLzNjw^Eu_Sn9|35p#Vs)P>VhlMk+i?Uw5wsvj zWT3PWajZtTxS-cOxSt=5P#4w+!0gsXfDmy{9Jh#(01A+(M1_!sBov_qzm^`x+>nPg z#33$(;KLr;5N$ss;t_FJBN-Th19)oU2cRG!%ZN}IQnaFFq!=4~JW&H&eBu%`&5)~&;l2bK`ZPhwJ=^=aidMIZxLvXVaIbfpO9Ap&!Plbz-aCnwa|&QpG1BIt9#1oVQk zfi=K^XOI9FWUv4bkN^ZSumIG!Wu>_J>kU0RgF-j=C6~Zco};9XJ*c@(jgm8-rqo*` zs)-V7a#JezP~}LsnbK;i#H1?K=~Pv@5PM`&2%#JSJuJ#4dVuw-q!hv3I51DO zT6C>tW$RntnS@Zj)va~?Kmzl*2uwu1 z1ci8#m9lE>;uGxJ*2-Fx2=pl{YZ})rifC1<%IGR-Lz`OEt~RtnAjM2nds6zaBLUTz z1_5LcO9Nm)E)h5Z{8EsD1k^TMAqW8rT#y2vl5LRoqFB+47MzCStBaXbt!k?irR%a5 zwL~E8N{llU&B4lT1yR$gT;)v6k=Ku|^#ps%fJ#rqC;&j!n*R{~suv5S0Ddb-!2?9( zH`=fO1}iAQNo?{yLiY2qVZqlvz_3jBX7rTd4euY|YvF|4DtiZbgAEV2nG>}BIM3yW=KMK(&uvr4wsAuAOr(AKmk0CfR89plJdkM1uO9He-l8KXr?1y zmV0c5keP@_41`I6DMdFq06ZEFL1UfK7#?|AO|5ZgU@^lfC-EY0~b&r077G|l*KC;h&nhONIFPT6CqiPionADe3&rK z>}E8BApnC5p$sbspRK?m)Jl{XsX+~DB9%HiGZq1Wr~ihCzvVex^`!UQn)I|bbr!-r%7>Ft!VgwuTx^)ZDgRWjh zi4IX;1UPLPH@>x}%END81A9!N^9%8S<8kGkVTW8%n$KG_3M^}xh-(Z$0m@vujWcO_X&JW?f+0){oY~zICx{Jr+-oVAyd%f&aitH9Sa=HWTp2ka^TlvPr<&2s zoN{y=`kCrllEkOy3huM!eCe-#G+5g<^-I6B17Cmoqgf;NwVyTY8$<%AT#8D-fHn;> zfOc|0fQUqtfCI=s$-+?F8MwcI;b?2{o@1~7B8?0rj58=qow$JdvL*q$Z~RP8^k!ju zf<%KJkTedE{wNUjE-(Wpa5N@x0xfVWp8xIuJ5WC^NeTdDNMMf$s0BYBZB85}5n`bh z7De$8f(#mi@jNGl9AjaA<-?dKIh2l@fCK_FunXjm3nK7!5R^0F`tC1A3aV$sH+A~t~tHZH=LK#7E7 zW9E>(6igBBr{IL|4<<_lZXpZ_u?(kBV1O+R4Ur0iS2u^2gVduBlj@&7{xkC7IZ5kF+$8G+=$uuvME(IBjm8MRSF20$B^ zvHVKu9N4YVSOOgYE^T1sIcku+K1y_o4_8J863(F=H=-UjqN4=S8>c55SukrTZXW^C z8O5*~At2*C(Gn%_6Qhw57r<{0vJ#bMA&n6f`^N8#(bf775$q6JG9v?$>;c9^euiKx zHqLCYM|3iT7o&nZhyiIJ1IvDKA|X-au1Szt9Xf zW&jwaC>1dQu|^STL7XhgNS>lPsB$^TLNx|q4_}Uos#4g*u}ZK|D_7zVBB3cV;S!z* zAC$5Xjj{`dG7;G_4Uf_b6aViKq0kZ!Yyf03643_}_Y!OLvL^Eb_bgHqOR+wzO%>jO z9LiD~_+dFvVa%{?7q+1}f(JXKg2YnNFCNnqa)EWSBQ`{nEwCUa1vBMvj~Gw$ARH1W z!7pn@4*|Ci*syQ=7?3At^9Vcd0q!9bD&@6aq9MvcwEW>U*v`!WVxq2Mk!%JRY@y3M z1A1)cNG8G_KA;m9a5TaX>U47f53CalLiF4+^q`MC&9gkw^E}lvJ=t?TL+|enf}b2C zGYlhNmeV|#<>Y!OHk?8uzhWymE+duAgL1K1jzDkvvON{lJs0$K%IxYAa5g10LMe1Y zEwn;0R6?IFLo0Mc{r~R6`on)ZBhs==JI*aR3A!D*FIw+)Te#J*T=t+tVJES8?pd&+CCLF9K0j88lh4De-v`L}VNt1L) zt?xED?>mKH{9rRXxv@J}Px}g@M&9W$Vn&A+6i;IRhJa%Qgv2|w6DGsR%dldk8V9~WJ*>C zgfygq-o!w2@!&S|2E+gB>}mlE*;EYF1r44MS2gJNVDnW|6@4fVRkih1_f$|v-qH&H-5!;S4~IVIj7!G!J9pPxCTXW*^r2c(i9@$wPbAM=7+gf;K`CRiQj4 zI8fqU8ntzdqiNA2P@+fxf#K3PbqGX2D0TGd{#9tbHbQfYLB%$f!nQ%j);v$9Y{eE) zccfQ+gB{97Mcw~)JxUHaO72%-R4u5?yBdQxh#*1Tvpm4nYza3)J@jxb7ICwtV0)Bk zhjRNAHX;$pdqL7ISr1abqfX)wVqc*E|;oZO`^++mk$gHh6JQiJnkP2c$CKA$rMS zm}2ixht4ysqB2#`KvGOk1oUr-7d>+g_msDIiPmv_v}^5b2n@GeeO7(9j|hgcRWr0x z38DeAVP7vbdSHeogcCT40}LLp7K9>F1qrkS#C0iz;H)GRnkx~s7JV02c9{}>i&k>A zrhLnjX3hUrgVoc6H~4(ZlX(Y6Xndtg{HGS_Q!SjzeGpFE%4?%{k z?N)e18~_)D!`FPtH}q(>ci)n7YuEbju6NOQiJcfQZS{$d_;RJ#?;s9ZNJAGy!7Cv% zB*&+V1L-=XDG;(iO>M_+kRl6OS1i;ajN6#p#PKn)r85soD=RrVJoyZg_mBfQky-hbVL6s%d6o^i{>15R7$qFmW?R_J$vz4R9PR$(Cex?@ zK<@u_QjhrzXnC0r*_D|Yke&INp}CeD4l0_6izEq(nqZ4FK#a&}j5?u7RuV+#CK^Gp z)Edfw8fcv@qx(6ih5C>Gxs;&DL5k!jYGP3<6^=1S zy97jkiB2OldJRiS1csWV_gQdDx~sYRtGzm`!FsI4x~#$4)$pM}k;5esqeAqvMPL7z zOO*;T0%M1y%06<8to7Qg`C6|BxvvO0ngbiK345APrmzL~uoXM88M~;zN}Eq*Zv+85 zoMZ_s<7iY@bkjkz{o)HeE7ur%uooMV5nHrFo3KY(s8f5iU)hfr8IzDet))wPTcL)D zB=}rK%*w zo*5gchr7FnJF$;DtxtumRm8Qrt3oJ#N;<~*rgSzQiep$J@vwM(#dZ${c9K$OZ&~&{IuD8zdOsnIpol~3J{ul96382dV>%cy!9Mh&E-6_ z{n*VH`^>{S%9otc%i7V&+RVXvky%5wfn%A>fjwZwQBdJ+o%bquMa9XSt08^S75%I) zyqO`qkda)~D}2>yw#JFPT9TH!S)x)ySw$VI)@5R;BY~<_(8$x)!bAW1&`X`v<*m#W z{n(*A*(V)q(|T^1%V3!#n|?zDNkpRnn8dxCUNa=) za(MpgbEE)bMw=CUH6(lBJtXX1OC_uT*TH_Nw%{o-8td8q;nV**qmM*;BSjJn1em^| zP-Y%}8nSwqX+EKzc~; zStdZBDDpkuGdjm#=ykj^A;Xd-N<#nhRlh+B#AIDYLaO4Eb$+%VfAu|IUBLuu8D{@% zzxV&Xx2cpXXar>W_c?eSi7?zUv93{MA4H6|HSlTsm^Z>ESslDpPubM)Rc$2qY32 zv1mLZlgcHt>3l+?Qjt_9p$ui%O!axeQe>HnCd0{;&uRZ|V*%+#DOfnYZolJ|T<`TE zdHYFR2oeq&79t)h_DMX*JS-Z@Ts%Cq6+nb7Wh8b+3i(;(jgpp{emrShtrCH)y28H7 z#?ordzFHkD=t5{PecjRqXPFioAE%xvn=va-4r2{QuSye6Ut3#0gf$9NKs3m-UHxu@ zVs)RZrxPQ)znfBtjC_pD*WcUIi`d!9|#^ah;X68e;L00i6{Xe#efM# zaAhechIMl41P4d^P~1hKbva}RPD zFnKg7uXRZ?S(+v**OFB@$$5fxG3wf+GTRopjpthm8@oa2v#Z@N4WDJ4&aE6udF3bP?B6hPLzWP$bueM99h)kSqVV3G`)>5l$BxSZXsa70-;`?>k8j#kEOX zt%GtR!2%03;EH5lJg|#`SD?kjZ1_RgSr={z1zZtfU;)kn@V%6sO9Se%KqKHKK}Lip z9?@JB%zSmr7?VsVOJ7KURE=-4@rNRcBs%|i*-#PT)FDeQt@Qwjpftjn5}xU(qkdjA z_|9b%jG+OQzL9g`7GzM_8J4jj#+8aq-dCN2Jhft8F+64QA`(Ij;n5>eHi3naO}J$o znGufJ1R5cw@r!$9aTOAY?g?@M2foqC#B@p?L6~BDM#$rHH9Er6WgBg(g%twsqJ?># zl4=4E(Xw?OQxKvT2nwN}x-KsE(WNw?M(EZk|Fk5RM~f=BddT z?(&u=w#yxG22zQsA!)#B0JBCKS3v)u-~l;NIWWKvueQ-(1_u?L5CeweAjOY5OtBg= zT)VGh2gp@dQ)1YgvJrxCF^DDL$VXsQOsS0WN@!6DCuX+Z_{TVcK!IhFWqrWG2bPK~ zQ~}DENJov=DY!r_QaqjPubi$T#2m7{(r9PVCOz7pYQn)3yb5z@4oqDP!PL5Fvc*%S-hDykFT4HWg6a=yb5sDLYlB0PCIJ`Agv3X++k;vp76||G&oQ)9f@-)H zz$c)^K1Gm@CIS_y|LiU{z<^)`i2}VYknVy+00ka&Cz5ngNqdoc3k!{qv#phoe1^fH zpR!~JML|qpLG;&3*04K~#4m@+@gJLv2ejG^Vt~OZf_QpjD_dD%H&*P)n+{`+Js?7f zxtZV*uF!@92mx`=0D}~k5(cYL%S0L&P%ny=1U4376=Z>p8pQ~f*x_u25D=CdU=m0o z6lo8K^i(SX^oG=!=XU=K>y!;I6d<*%a2s_q9qyFafW-;{gGyF-5-f)bl3El52p|E|bZz4vG2>=B83;3(FFB)4IHXKo22+sT z3+79rmrG=PplOi`Ud|fP3PEracrBySMaoH+bDA@q0|`jW1QX78J|raTgC{sobPr7Y3Sdyv|B+23Zo!b8oIpcs9^o_o5DigDp^v@1rei`hm`GOO0v9}0 z3>7s($2Q0!)k$=%O;}7myJ`%OZc$u%jjHNWa8sw!=%kmrA~H2m(hXiQuUI9*aqM~w zGDWh+frND^&tm|-ugHFDBi?83V6t%`E-?Ij$I)|00va-D_V2h|N=YA}Ya~Lai#Ts4J2^Sf7 z)$1Kc7pW9jRsaQ{KvR7}(w(g=6N%mHde5uI(q{J#khQG`b-EhcR`vo5_<#${x`LI6 zmPf1b=@b8|MOtktfw=Llf@-tJzRvj82q`eD3j_dzPw_Lt6x@w!a|@%6ENQ{Lj$tYn3=X7;nZY61s*=!DfMl3V|=t%9q3<|QcU zUX@X!Al}e`duf>rAIL&KgSHJQ)H28pCD9QcW|FoJBQ~3=vWn zQF#Dsm1^#CTV}W0<}|wxw@09^5IwKV1X-wjZ6fr`40>`JwJAWL5JBV>Z$*aq0L_&Q zjdCh*%7p0jZSQ-N%re-fwy%%F*egOibflb5@k8aYb?2OfU%4HB^0oI@k`YMzHbE5&C+FXZPA!;_hdy3PN? zLd>FKBe(r%LS}5hhD0!j-i|jprk1 z?TLRup)9Jy2+_^GKkyNSXA3WK?^xmwg(v*sb0Xu>1OWgc`2+^P*<-PgJeWnQdYx=Ou#!x7JO9cq zWC#%FJGN0gNDE5 z2WIJ;h=cu=zW7()fR_9xpb`AUp-O#79GDt@8Z4HJ2p>G+27m)0Asl-u>6ZWD5npU! zTz(&NqK6`MVCYncEY{&-N6!?I;uac;C!7=_iAjrf?mYikff>|7;hXg$eK_P_|x^_jAeyq8Mhb1~E2b)^9 zhGcZWwsj#0P)h;MiBG2^PYhH9P{G6Z@Qn~f&=q^?64Y3d_i zq9$xW$F9~yId2?+r7X!>xk!~6lryFp93YC46;QgSYd%&aGU_9GwyOUGKf?*bo-ofe z0FOI1J$K!lrD3N?W_>^)4~LA>`rDR|5F7=#`v%KPrRpjXk%|d6R}M8ZPqDa2rQG^QubE+H$~Lxt@%mct+qFsV)&BC9)J_ zcw)_wZz0W>zva9`o`&ASr*I;l8TvAFBpufCR)_Jn1!$yDs|aeCB>3|X4;&DP(*no% z$VO_XI+EOKtV~6Uy7Js4yW81~2-oV60$qB^;hUD*u}UB>1n@B4#770iq4XM!%WL^j zzvRP@;mJ+S27^BOmngGY&=FTJ7l=MkrXg~RvF7fcJ>4^KTOR+;)M*(5GI>oRzsF5n&%)iO6C8w;Jl1&t^_*mu*g^wV)V~aT_s5 z@?4@kC?GB;_9Gsin&$|1@k0u?DH}oZbe&q|iC9>u#%m1Nu7O=7f(uXx1z2aPG$=$P zuPDjEBvBw5vaTtd3ZkWk=tD>qC^lOnq7f@)mm&&Lbz2Ey8lKn-a+HB0r%>JOCKxYx zBqSaA2u}Do(W10{VuCSK978Y{#xN?SJ<#%5%TlBuTgm^?j&r=@@nE(LJo*tC%*&%7 zc{K?^Hl=hSvVs|#W|axXA&hqrg(WIvq>2b(T3s?i2CSqJEGjIMm5iDZUQsPfn$jcG zI%O(Rsiab*W`?XhWgqyl%38LPO0jejDusYULP#W&V5`Ij{KLY&g)B3oiJW01CklU^ zv6$Mi31Bz@u1A9F4HDeo;P%ALZ7OFj#VQtMPFDm_sH2+!Gy_-sq|MDh#!vS^MLx{X zxbd~)7|2+sbGC8`4%m<+Py$^?{80{(zyTuj`A-|rpphX2FJqX>3Bw$rA_s+!gK6;x z3U8u>N^qhU1yu+umZ%sm+~{^Fg-J&UX$0yGLL~nWqzOKImO%tvqXB|g#Hv{4vN$zG zHtI> zen%U2;R%F$C|v;iaY>As>NfjuZ5wEr{U`Td9{ZO307#G>Dlqf;) zz|m<9v&ST{%uargnGN+;8<< z3S#}3lPX?@8SoL;ujB$~j>eST5;03d{TTlsTv6y<4b5(ILnQ*yUUM1J_Vv3_(2IOW zBD2h#K}O5H;JQAVo4rbb15iY7C_bVSE%%c;i#&gjv=wegx8gb!Y;`v{20epCVK;9>ifjJBd`_FE31c+_k=%w2+)Z z!z)fyTs4U;SZVgP1_NQuWYCJw`tz~HvPwY<5n6|(p^nyRX(!YMk90_Z#*XmTC<8*i3LBZSl5f-e?eF-Mev7x3vKh* zXv3*0hZnFu@47C-->IHhUyF;`+B$J*ra&>KBr9=Jl)VsU$&3hqN@ zy}8>0k@UAyw+;!~af?dl_5dE|mmz|fnG$YCjsm!3Mrx3SFvwsO9EtZI^(_`FJ_rcM zo$uNU_FfX^rxmQ48{Db^=efUp?qiwtAD`k0Rzd0xn_^^L>M%n?#BAK$)XEQ{QLH)8 z*0+LdC(OFo&TRT^@P;$InEZ7(7sn#;ye_+Mfm(RQoiGTs8PtJYb?8bqTM)*5{0NUE zIcljqhpt#^9kvOXQ&hg$&}0E00mK>2QA?7Y`~0*&4?55_M;OQrz2>{xPgfQfj-zw- z0@^F~(WQ0sBN$K!f}+^E-oXD?6w8sU|?0G}ZC2`@U(`OIB4`O1V%-2p?#m zMdt2?E8vZ{pZ8|q_?re2uEsi&cBp`tK;UPy2{=j4Z~NGpE+`NR!R3MQp(BZgFes6V zPwaaXe^11O-M1;qO#LE;coU4SPFhQh{)dxrrVp5+S7oSqa5-UBh(%}*gJdd#&>sFn zL3+AoFf*NcS~$o9OYYl`0-?gdGzbIUp@Z%j#!~n9S~7xGs>By178g#2B$%WGRs%M~ zRW<#0ODqFH<)cjiLSO$H@*omOdwP?82eVJNrhEjZF0@Bg%E1;jl_;TyW$sj5VBsZ| zhJP|QP{;>-#Ybn+GlR7;fWA<2>Er%PS- zUALlB;iHD2VFlVEZxrpjDQj4qO5%mKg)-qvYqX=ivLQ2Sv zLBTZ1rC+E}g682I8dxN`a6pRo6S=Wt#PT zV??KNDeD1Z9O)0$FbEJaQDv6}LO2k+N0PaiI=y&{ypRw{6a_*gi2aBZqTmnyW^%AF zZgbR8b0ldlLlbKxFV)}x9~#gt8HR_dfI6*kmWptI@90VWS2i>j3afP#@)$aOSt99XV5jGNe`t|!QgMr@A==S2mMLx$7J_#IXLcw88t?&T(}PLiAI4^c&1rtu z#$=|l4EqsVo)vp7s!;2Jp?TC;@{9 zB334%1hJnigKmP!XenWaI{H0G1|NLLCP&6wUWKNLV4*1CCXGNn@ zMpCBz@sboZeaYcup~Mz`I;R`Mqlq$$mUv`bxesc(2yv($*QiPG!V}O%sKwD}>Y{0u z$OL@n2!^7kq?Jk6p;21;hL)OS9ykh6mx7LZrz1*{hA1XQ;H2_-sPQpA(m_sHR@-k(6W_vx|s}#PF5H#K(%&cvQ0UrHb}U7 zPN=WLF{gjy67LFk()uQO@Qf1ju(42e?Fg{~DniM)au!&z|5LG8uplp&5vygc3bL^z zn;@An85CQx5vvZ2IW|O>u_`M<8^w<0mU0@KvN&s@570ZFkXs7pvxDexsTXWLnN%Da z7E9F&)gT6Kw{i9mG)DVy*FddS2NWjaw2??`K#@{X3r$vMGrl1sPId}dWg7pMp?IKX zZXKZsWtW8{{$bL&Y|mk#PFFaVhljae2$(N)v|m_z_Q zwQ_=`ldXb8xc75Ee^RiLd%1&Kx4O`{Cy}{xA+SJGf}T6Mn7dzecS*^aDJvmeTdKAX z0tE?DS#0HjOW%k~>5uYub_nad}h*rH5iJQ%euDkVc~P8{X2Mro$fFcmyJ{ zJygrCb~9l+5*}?xDjGR%2oY@$DyshDfP2{~nmeb)a;nvrd29;1D1s{6vMxR$duIV! z6AHcIM4BdBt#t#B_;q`}+fj%LS&GxM>cP6xWx%P6F>|r5y7+tgOFaMQdN(*o3e^{4 z@DY`#LOUyn4`@dOMM-QA6)oUK08ziyfo(9F*#p}a8pJKGp|(HsBC;VeWN0O5Xf*@zR9@42-w0s{KXFQgn36EgQ0kdQFxpHL%5KP;A^X& z92W*bIJ6K!<%7G9K*WF*UyWdnNf0PYF%MF)nFZOES};M9R+;~{`b|^-O(aq}$&SLY5J-4d9 zbvj+^O9Y`v%Z`Wzz3?|yv}h=CFnEG0$-zzLD<@MR%abS_0jXpW1z62;XDHdXg?ctW z)QZG6r!6?mxzMsIA(8ex3L&PR$8()vC>%Jo05O$PF~hWr3!h?WNL|^TNS#L+!n|{L z!bjaT2|?8Cc@}9>&)7_7;4r@0xg+1O{Mgpi$` zjm=Im(g${M*@FW;t~sG-VF?_7q6utamRvS3!8rEx)#;#|nXn$AZCOwRKoRwQWO78b zt&+4`+pv9T#q5K#o4UsGoX+VUy}g`kQKZE+C$zI_#E1(xEhEjlU##NP*+Ct4Y}|#6 zbxAzkDa;E5-Kzg8Xa})LY`q+gY}b*rD0k6WV5L>p4ZV^qPI&=qS^SF#6m^eNb(PJC zB4{BcrW7IJm>^``?M-I_qZEOHSnV7^2QbQr*029u%w#@-L?oh2)K*?^ILw7i7bMb= z=Fks>j9)UgTBp2B>E|tP(64ryis9pk{lnUHlxXY2_@G zWf9_?cBMKAed}reFujGWOxI@Q+q+_Xe860|75ObVd|fQF6w6aF(Mf^iQ+(yKJQP~4 zk4aV##FCM@NR2``O9IHd?Kh4!D&ImGxA$oo!xGZ1a1+P zeSSNJh{}gL#z>?%*c!@F;()sJ8R4r5cMDpYn$MaS=z%n-(spkFl<5-2#2}=>Tmv8A zWG^9PLTHg6&v7GA^WN+t=Q=7Onb97Yv9JGggXlg5bvG6lsZoDkg5ig$+AUqil)xX_ z^+naOP=S5jnlMGcEmihGvkq13U@hy#HNdvRC$2VTr>y55>=HP=QzOw9cuQN^fgH|= zu-EPCWYjX0hzzfmD#%FBmf?&f7TAyBmcCRMjA$1oF&U#V@KRFn|DF*9knjXB0U;0q zB=GPg5CH;E0B$(H0Z&<)k?}%|la}#L3eY!{9(2p?>tmNZ88uuQ=yO` zMFurH%M|yRhT9r9PXPx&00O}C7T^IMPy#3*^bQ~Z0l>{G1oN_-^H~1g#r5({PeITi z22fvcvk~=7PxCR{4s%aNhzJU;zps z00Ypsc>fP=Cet>V_s*=$Wv|Q!kslwBqV;L`sv{m6U=Qc2_@hyEn-}twKvp4NNR~g& zM=AspfC4D+0-o>rGSC7EF95xnhB3Z9%ar;$&dt?yS;g>Bkt5EkFZ|wJIZ{hJ=VlL^w4wIYT=|L^3!sWIjY!M_FB4 zNry~1URg;s>*^MUO32j4*3?=&JmTgQk-07|Bv6xclcNP4Gm2_qM`TV4IrRvw(a!^JI5`6zIu#>2)83mb%G(eL`A!@Rl-He!=Ire6wkYmNBEqNB*7q?&_ zb}95$LW2bdmYth>OfHwbbms=ju;=gIR7VckJrE!OQ4b{swvc=QoWPOJQq+e0QQ-3#S|CL8F`!^e7ILCi5(2(cF~5U_*1dGZiWn&IpiOpuW>0>eqK zFak@2`S{31&L@`)l(RYlxa%$mVqUu~90BbEx1f$(U{m!@)4;|eAo7wy8H_xVQw}c;wlE_NMKRFiAQ*ty z2Asn~O5~0`P}w<-g>IDIhDaa*860q6R2e`3K?N362-l!DEI%2Zzy?r4Nmhq9r7q$G5*z@)1MG^pVTmE` zm}8Bpt5}YWN!Iv^BbIUYvjhYXzydBxXgLKLP7q*#aX0vGLS}eAumQK4@ngky9WoG% z+h+W%u8@O!fYv!{WMb)(9d2OYgoy>&KECQn zgazg%TiJvgeOvU-*#;XB5WHQME%SOoyjhw}!$B0A&`XQp-b^bg-P($Kg(bGoTY}rRopV*+P zt~yqRnGU&XSr;9^F8JA(pYizf?_VEAGuFSKiQ;aRlfmx}7=Q?bpaf$wo|r=9fH(wT zEVG%-h3+M*T;N74(ohb6*3+A(`GFeo5dp*Khra--&|wQuRstd>!1hrGU-`S({eqIi z1T9R5J;b4177zf|{m_SFBjOQrxR?S^%!k3bhXx*?x&weG0uito115k07OcPpF4*D< zFfaiH>>_sPc>r)uC#3dVP7p(i$QMQ!FN)lX1588W9S>l!1T+zkJhaRD_;WR00}~XfCEe?11sPn3|!zz>7?X9DM5=Lrc*Lm z8A}hh@ex-1#Ktz}0acC2ljf$A!$j&*heCuQFIQN|8iuS;7~`W6`PjrD4uFY$H0B+9 zsKjRWkOE4uLjo9s083iH0tz@0iagoHP_BRi(}C6k2#^3UAc8JCbkwE3H;C29QV@iQ zr${mqz9iT&nMcfH0QLyYA0qRQ@7r1iW4I|UKnzv@^jbm{6O^t&G-L;06h$>CimX5& z4&jl30u(?35^O*lE`R|HWN=a!$U`3u=l}`AHGw$T

*mM3T&YE~i4Lgi7W%YUWAYo3qt)(cTiWCpx&QS^>Q&Jz@wKGZ9dlh zt_^C|)g!Y}EpH3aX@a<-DkA)(KOQ(d>@r4RRbQK=R4aH&H>-YchTJv3@Qh2sJyM5b zmx+v~mHv8c;!_pGXy;jAaVsncW{7>>Q84&TNPfC#@L_fPtLXG{vy1`T!av|<*&t?~ zF*>%wQe*RUxj!s=c*)=*O4*>YG7TB{YSHv&ZIn4>04SvyEfv0?@THSYwfK2Dgh_cY zx)u<#T2yNDR>8+!;!#$D8)_>58zwUnSxBKP;3Aiit@}w|S>uciu2*>GlKa>~ts*8z zQAF>Dh?oqWusrRwUt@ChAhqdWw%S2WwY^fKH)Cg?=>3it&5)T{fQnWajq6Y1cHhk_Em$_ulefFDE8TYkq&3O66risp)Y|Pj(fw`4-Cn=nvm)>pW0;;|&$K?V8i0|} zr?@udZq-J3{Hsx?3NTu;9-CZ$eIY8`_SMi-e`4zjB8JupeS}!Wk~4Re zzi%`q*(;{E&?2pA8mHrX?lrz~^z@f!j08_fE#wW&5*R=!NlBtPOONi6rlNC@V7(rv z>x{s920wXQa3kUrqqgB`d6vR}8(kXd?-!4u8D1})7ubRTqSo^Wf6 z?}4o@dp{RanvI!>1M&<*739S~6S@f%S*ZcTJ6J6hvKsKF z#asH}xpu4SwP$<9&s+iT3ev5ukF;IuZvh`?zf2rFR#r1Zq91C$)%?5g%eC%`zVntF zXMm@5Hj*_cSlZQ;(Nm9Z(e)LULHQev`joQ`V|TSPt;upAZw7KI8&@|HS$-!_&|J$F zmeOB!d#yi4c*pNq1AeXUv8^gaY<;lwmoZzi#@<%3*@yEwr0;JjP2F`e?XDR|)ITo2 z5q#>|Q(7*K^cx3SEd?L5tT!#)s(WvX=(p93vFqovugwG&eZ2|J4N6@1i&v186oTrO zBlut2+yC|6a4~Bb^?5m3Z9jQBuM%!Qo3c9HT^sssgK@qlWeJi8&}!cnvAepXlJWkT zHs1%$npE?qQ6Cd?Pp%_7-V{%hl)~yv=HBF)_d{}aA72p(O7=U8x8LtL&^N!gjkwqO zUZkO+cbQ?sYLcJ_U~72PvmeMXnQ;ZNl5 zOKg4^?;?v$zb_(*yQLtey%(m*jYAHP2CBPCMp^+kbJcnXN67tzY! z-$y}E+~iL`qF)gzi$thCv?~Vd_-C8^L1^thuYdoz=cp4-?G6sPu1LDTf`8}asBX~3 zn-D@PpmM!ry%BZPN~-J~QZ$Yn z1;P_|xXTGD)5NJNi95-$inTlBz40owQLyqI#Zs>LrDTX7ORqYqajgp^eTUxA=Q~ApP0iy?=X%Hh_Rq;qBhH2Aa`9 zWI%d=yZd)H`ZgRt8oaqM5ly6mZ|>dm{dAA_}vX9n=2fIe|ppU2_IMPfe(FR*orD%+;bqo@{i2@3fYeVPa9x?+x6BQ0pB=u6QNk2^CoDN?DBmVT z?16(}xOUV&E#Z@qe>_%xpB77fe{z3of$RhmfA6(NYX}Z&bqq7X1&d3JlBL7i0PgpW zjXaJAK6#!=g3I3TkCQRCS^?Ug9=4ywa$Ub3DE_(`hoK+&a9r2}=+yzwZ|%ESwm#IJ zYpezQn~kFR2}m+M>K{~rVWJ)Gxj*G_H&OQ)?7@i(;noZDy@%c1jUJc?c@HtVizpTP z+$IRV_N1_O$8vl!&LGYC>?u>fC@Ohcfn{3cKk7UFyB0lpCGkYSU zet+`p3t6beL{sJO`5%cEI0oTo_iAfsgZP7-I5iaCCzE z-Hv3EG+_QMH+q8C_9W47@TnvM06lQST$gDuM|WF)LgZr;KNvMiff0xcCl0t~IN29J zT&{fdOs$9=62~!o#+eEZ@i>m>NVaT}>f~ydaRjulTw+m$ZVzZl1%vPR7O6o_Hmfy$ zh#3b3<7p6pZxe{CYws4f_E<0?N;vN!WOA!gFd+17kN+SAgi5II2fSnk$)|yXBobqF z09F$CUq+6iWe{3UoJYe2Vl(v73mSf|9}$kxeyotc`G9V!L_0~G10V-R^ztAB&@G(T z5`sxq0PfH-qAR$<2O%UwrOo zB#`!p%^e`O6WCRdNjH77iinH<6gu9JIPe`8@zYN&RGeBT6Q36`4l9VK0&>+~3VCO< zSmDUd!Xal){JBZ-oDof71j6)dX#Tgz2N69AsFQpO62Z&n7X&S)JIHI_mB?7|RLFe< zj^6L4xu?EPd{H1#SQj?Oqn?ndClSgYk_-|A1TzJ+qZ9ju5=?06`3nG#scGfw|KQ$) zE?d#xj-W$EMMBUZ-y6U^!uziu4lm&=lFn7V%#%3hNl*xV`-6+OAeb8Ieul=~p5FBi z!`;@vxs>4+t?1w0DZb)=;531I6)&rLM<)GG;C%*2{*PEF`pa!e$noEDV=PJdvM=^u z_)Bbb`Q797vMY09um|q*)N5%b@7WAV74nu)fp#ia=?lk_vsLdiD9+oz|Fj*iP8oQ6q$-1yQa?mB|Z z^NWUQL>$hW1nCGEuE_*Tf@zC0&o|NPq;!k1D~Mq<<1HI9LDaB7VzeJj%cIvZ6_}Nn zI4FdDDFwq*K3WqUly@{AvMLeBVseHB-c&Ggv~4RLIH3#+t@3g08pK4yiF`flwoP0N zsh*vK;_}$XQh{Xp$=*s=uv~;8H!941;z3jh(%Tjb8=of%+o}$oBLcXtf#Blg8^`g} z=Sl^~dTSe*EyKKY|F!T;fc*J;grG@Gx+bX^0GfCr9qE`I6&FHw^o05M*jt`?nn6Ae z548DKg#dntWjafvy-dZhgsg>s(dX*vfP-gQr{Pa&Z{x3Un`*s!1Rxk{0>?|R5X7UI+NLut@ zQx^gQp-dSO;88as4hYBAVj^!I1UM|i<`3;#%0L0IQbTbUT~Zl+H!O+LReMRYFd3x* z7WpHaV>t?E<}nSJ>?Gv`h>wh`IPm7Xl9^R6!@zc0zdmx?UduPQd0g``$J>-(P^5;A zM$zTDH%<;A)AU9MH*ysQjJWF6_PN98$YOG3P4yB0U>ydoJKWa7wfwM$OHL%9`|o&3 z!E&Hy;Mo}EsE4OV2}U_OCk5+>wD>&v<;vq+ zsP4|qhnjqu)lGHFCbwPQ3@DWK$I~um^es!1GuOlxQIl3yIxReG-gDRyyTkx$GZQYa zfT-Cd0Gna|luz^@S)NxozvR9#TkDae*~Yp~Yv!I+u5G%KOJaaoD=2HUB#BTmkzs_% zghcX%v?#rE`@OE}Pu#fRyZ(GM@R4H;W9L5CiO_2w`I~dno?|8XJ6PD!%<|ymlXZ<) zb~7`*$>RAqLHuHz&059f)8u`v&4+5)E8$WTA9aWCK9)D`Nv|FVUt$$L&gm!}!_!BT zOD*Cf01$k&auxK>rEBss(;`V`F0pa+WOn#9yo-eH55Fb}!`6GziLid5XFd$sW)S^Y z1-sDqdh++^ph`a|e{3H29F9Z46`hK=X~N8a)6qLDEpq`x?@(46jAQFNHe&snaN8U4 zN2l6v>%WdxLp4K!OIc=fPTT*hTo-7M*SIC~B-Q(TmQ3}d?AJ&Gzeti`UE{R=H!?+T zZyIHIz})7>$7A2u>F%{3F*KVEUwlZD`+v?sNVCXV{p)0Jvn+!qaon45ASx}}Y zO~^k!iXBuco2pGYn1Rr0gt^06bnqU83g|{l`b86xNRCzJ(PVLL_)X87WPYs1{_O_J zN1DYScQ1K6%G<0$To^gu{UE38O|$VR+-iG$S9FT`Wke|O9V~&NPuX&oATKqlt3mn# zIfS={B^J@_yQ^IiqXb*$?wUC6j!Q=QC+i6%`X!_A?QS)|i5)GIq5N#Ad+ugN$yMxI z`D#~|%`(QDRV~=1_FzXeqiQ(U_bWwhwX69UkOlk67!!tBSUO|Rsr2gGlIrb{t+Yru z+jkWxaO(h}I;+WRlUOsQL+eMT4!ovHUL3_s`=zkiCGm;6dFVeKzDQo|qk+U_>pVWt z2alzzi+bqJn5vv`O%~V4D7DFu0P5payDaw^w{b3U8bF#&P$|OZ)eCwfH*&=dsnxkY zKij~djb^l{5(*!i4lrIk*>(24q*ieX)TA*1{O!^jH;-^B^lQ_4Zu_!9EHx_R5Ba#z zWC#u%Lm6T>oO+^Ts$$0Wu&Ql<*ug!etEW0l;0hp)r9P-h!!2fW@ii#S`YA4@!+^3v zZWx>CNdX%T;KN8HD6;!4`2AN(FuZyi#4xQcI&30;+byzIuqicm%2Tv4`&eUAqKvQ& zTokf~ZeeC+o@n5!>hn~uwI9nC z@4`q;$ap2(55U%`-dfDRcMNq zdX~9Q=OQ{>Hndlfp}Pjt|0c#P*{H{Z`N8}3J>!_Je3F#s56K)tY`7V;GW=?~eEUN_ zQa_gZC7Fo$E5Sa{7?PeS`g`|P3~wTO(SVc9gh82`B=Vl-I8@V^7y-&dpy~c_oG=K^3aC!t4RRhfk_Q!ukAVPktrT>W9HtE())qMAJe1Y z$TM_OYb|>UATQ<|29>&9UI5T{Ot<-J{%=dHKh>{toZ%kiUH(AeJjfW$A*p{T8@THQ zkh?vQT_%J?%l%pj7U50xgUJ_wM(h1o{8Z$vqLQ`A^f~VM?9-7>4R8DhS}+80M;|_U z|FQy$drf2homXs^_7nkGZ@6eHKe-Fr81!=WayIMtnmq2L`)yow7AjhxP6hq>GbJ{w zaNujmbps*o7V*#*M}brTGxL#`Rrv-|<>QqrIwER?4{o`T*9=wl18h0#vE8@BBs-TZ ziCc?QAf(INRt2M#jHC^njnWT#4_~4jKL$9P5a}x%0jKc>54RMe0D5&zmG@hF{!)Fa z`!;lY=UCOivfURS;FNNwGVMuC=-ng=V=6CoMccW%iB08={SedPY!Z5+ca)+c+5C!2 zTa9;UwFJvNRpc`W49ln&N+lwIqqcU~FNcu#Lfj>hw7uSA*)I1MsrJ#2=@0yYT=<(_ zd8b*b(#si&j@gcNC7s+{`jtT>P$#aS+Z>^K!KbefRM_ktdIT5KlKY^A9De=89MmgJ2Su)}xcTCVVTT`7x_{-FD zY#JqR>Mu;{@A@>(O}am1>3@;wzcCQ@y{Jn<`j7hbi+Xu#mo#QnI*n5Lzp%82ap~ZC z@3Z`eqhrz3=IQ?asVJdL&R-d=S!vv7K*5Ggp{Y!f!%Q()mY{Bilx~*z6i^}|OYDXu zpPqHwCQD5S)EWp>)y+o3vTBJy9h+=@B{GGEY~$4|mNRmFSdQ8+I!==ui-b&f6i8(| z#{rgmUnp0IIoC}I)LI1;_Q>@T%H`h7MB;=leCF1sh6sewBRu1uVto z?7~VZ==0VaO4olGsm_<~3W2z)fnO5Jd~Ni9*p#j`0B?l)zlWtC3koTDOF`4<8}SJ^ zU0#)t4VvZ|Ehzl8TKFqLs2jsEP&$(Tr&mAy5}l?f>>@+v)LrLYsCk^hrYytmR%ID` zRcF}85hYn$Y4)F%V}rvL;w9?IT7Ke0erObtzU)jNK`J@fn}{4sbY5y)u7{Ps1#}+W zbdxF1t5Zyo)sgzapEstg^)^viCVO=0Or|%jTAR+#H?IB^q5uSi^)|07xn5(hU|ij^#6q62q5-Q(l%+ul=mc6ef?oy6M02QNXBvTOZzCG-wo4=t+oy7F6+YJ*dxtoAb?T^SxolH1X=RA8DI*4sHL zqG=d}QTiS8SjltGB)+DO(fa>-9XmuQI%wS3C4YBJ5g2UMJCza?`KB}XYt@}1j zekM$_*ba+1YNN4(Q_LZTQSE=P03;?i|E=pMi>aFnyRm*9{wA|A2e7g0K0a!rM0G?oQ)@PJB5)u>k8SqB3UhjvA}4@Ek@HNChLp@~g@aY;e^S~PIZN+j7B`XSN}Z6@xlzc?CrLG3-H4)}jr zKImyQqa+d|Z6U-?J7Wj3uLo$hx=GI}z}^3epCGi|Er=$U>rn4HN^@un0K zieQp)-l#X_fr24Nt6rICO(<2IQLUCo=H3*BHm2KNcVV~QQ20SlS1{(m>+3QWdc#cM zRBoNFl%;x%$b;onkgi^BL4%@6|} z@tydzxT(ZU=EjJ|IU4+mUD;%kd$5^96$hgmOK?Hppa1@T_OUY*_fI7*U<4Qc;!OMl zAmaN*7Pa&%OL`PJBT{ODKeGg->5kA5+=4Nv)Q`ZNgXU=Nu=)PHrcoiy98-siWrSrW z@Z_$T8PHdURVF^)(;-h5q7ne72nNV4ffQgnE@o<1SQi0__fcl1TI~D!8WixVS%1aX zyvYzU0|W@h>b|;_o8d|iv}5QMOa+TH5;Ec( z`MFQPEu_?h2rN0wcvOrpCvXns$?U~iwtZigoJXht$1<=X*)wB0 z=n9h+XF#%PTz6_sg^ycF=6O0BqfbN49h70<2MDhv%XNZLYs0a)5S#VV6z_^DNz&l$ z=eZAuk>Xu$R3hP9)lU5`) z(`BdtfDF(%0V4$q2wI@TnGG=9vnGuQ1UkdD^0C#Ivz;D~XY=m$f9d&sFp%A`P&|=s zKoTf1&U@QI3vFJ7Lhv_}*#bH*IpwVgM za5&93sn>Hr_=4QDuaIMm5{-p>7$nQ7+=(>tAyE;U!@v;^A+$bjk4J_XC|PR_*m1x8 zk~z85FJ*aGM`EcZfKBL5U}lxSl+|<&5yTmJ&Ar^xP?hS(Uq_`r9j_7nh8>Ei+j1gCh=& z{u=;^qalGbw00a*HXv)D=!RO%B7PQlBwk3chP;nsxrllAQR4Qu#;pI_`DmXw(eyL2srEX-vXcg$&$gsw* z*7W}EMF(Au0|KHZe78&Z7N1$yW}7q2RJ z{@PSw2Ko?>6Zl2ZCwH~wJRXP#p<0L5A)hdPyYcXeHf1R|<<_Ja?%zE`S6grld1PKl zVN7=1Lsg!9JhQsG+4?WvG?h`%Lo1A!ql?x>>2g0$GIH7J$t4k!I*gMInYN!)s}m&S zNDy@oq_IzMAD~`AM3b2bX3OouDftU;0-;cSF*NrmivEPN%6}=s^sNHCNa7JSnn{nN z3w2}yfR)B()9gB`koPfK4E3d2{dQ#CX0;Fu@=Q^w!5 za3y13GhSp7z&kKGvo$K<{yjYU+vM1o;MLBb_Hr8P@845W^+9NCoH*1CR`%TPg zwgeN}7^)w83;Q#_B0n7)5d!XI6L{D52W;}c*DH}I*E4E$ag$t_JiFJ~;j48|o+cXNt48%=Us-}DGKBcr6F7kZ zy-+xo0CrcKml)HPV+)Q)X@whZPvktieH>_4CDyT-(dd(>8h`Wl8@RWukXXN^{e{w= z^2#nXbKf~WSeq_q?@nMHle(Z=PqKD(GMIZz=#mn_d@68YN@=gNu)pJ6sQ>WC2|x!o zB+Fm{03%NG1CoYTsnvl+QaEsT98@u(kGwLL!_;RG6SLJ~?n{g-ELStc<=vYy)M`*R zXoKChM8&w5?+#e@Y-2#z>$8wsz|%z@(2RIG_cU0Np}aLM=}MY{7gNA*)+~W{P`Oz4 zHP|kh;MeM{uYPFhv42}8OArJrI{ulOgLR^bmCc8Ebjw}8!`ac2@hVd_I(z3uHAaP0 zylo>MJ!nXM`|dS2la7AoyMOmYZM;px|Ap(e@6&;x+CJhIT0{>;g$h=tUT3c(Sm@u_ zk&)uIraQJOEvzE4rciVLMGNj#uomAXud<(N7$Fpj(fNPi2n zNkiJAB!o->x+zQ@C2RIN(tiB{FQKV*CnNrpw_p%5S+Z#aeu8mtR}X&+%+sJ<9&mXXY8!A6loF=4b0Q?4Z+<#tOLUvwgqRUlKxZ_ka$3*hDQco>}H;mTs8w zgWD1JKEvpG32FZ)Q_Ez$L91(A0I%8cpWPj+41z%xXA#dav~y+d{Z{ACbC2&Y-YvVk z65ve#f+1U8>Cac-;9$~6_gEsR@bJLv7huTm>;)0`vGUspSnEXn6F2@^`Yc`jDj*<; zn^SN3@PySY=kV~#9_D~WG3PS*GujQmTr$cej}3TNvH2NuCj`y!7H|9C@cs7-O=H*i zb0fZGl?H^!S&2QH?FbfP;XBX?zquNA#btH{=E+Lh8QIig;-*ZK)RDrM!&)5ynzv;4 zdVi{qHvDD-sl3_a`uwf|G=Z3|`+C#-Y9qr(j}2zoO4<_mjrwi4*?nS|xVZ2AFEO-p z%L&t^K=o-@0Nf8iW8fN1kEQ!$Lo|ceQB=A*Jf z5ohLY0^za84Rh24IOaN|^}{ z%Ot|r;8+!Y>={uZpEl1XM$RB+uZ5wfpP>rDtGNjMnu)7`i1$)>?FK{2+-zI1)Y${H zdiL-NZ91!Uad+~AApmQ~x}yGKoYf+XWsQ4CR&-gA&8E)!1~g6_dSgF?{xa9(mi^5e zuA!1yM9cix@-4hDwRmnYN)rJy$w=4>d#ELwC@Ci*7N4jqlt{`K_!46#J1f=!X4P_o zzit7#(Z2;VrCAm+*WK0W3%aNg7Zg4H=MxkRYKJ5-ON9Wlx$pBh4j}#_UtaRZ^$UfR?=> zuQ;6mIS89KDJ?>}h$G-z&eYw+)V)N~$5vh(r_*m2#m81|dstqlJgkyFYE%WpM@i2* zP6u$2FI32XFr+_==>kl&-@B|^>H;JM!TMHoqjntnZns%|SwfWmrR#t~Z5e!{84obJ zLq9Umkt~HSnR=m_JO!DOVwo1vnb_`3i)!iL`ga(*Swzl(vh|tj=NXdSS!lxyFYQQHg1BWbZ7Q>Z}w0|ws3bwFED3XM2N$iXEx4JDKY2T61VJN4)cyq=WLE^QY z+IqJlq{yB4s9c5I`kzr>%B>^4iu#ZlJ-*&u4n>jirrEgv7Q@6QXNxk}#flPG0rPH@ zf~aB&uje(1mxfWEh@xXo*6v8}+-j)4tAw&)z)(om!A7D+NVaM(O0S+RHnH?-v}sRn zfgTaDQ(!OaX13qPas{2Oxvpw^#Z94?;JyactIu{d$oK}s{_;g9?y=n8%iVjMcWEDa z+sC1zgTlbFpA&9ZK>?PD3YQsG6*D{%$n7ZpY?Vi5;b$7lnf0}v3*m7VrT!R_=hmfg zcS&)aT+temua5@uEfv1puEP1D>ZoXQy7P0xs!JjZbmwy`h0Myp8E8lI?zI4>|YKpSfH=~reA#fit|Lf)9;YF2ftugBb>KkZtyQ?TjkZ(XheKc ztr5QBYI0&vLv?C>w!Lh%hEc&Gt*XRa^>Y!`TJAfk=LTh?u8oH2Mep*txN3bG>d_!{ z{rQ!AU$K!SLIxS&9t<$HE!pF!uE zeW!pmd+ypuZwDYMW6vnVlruS%Gsz^A_F%JIfwqE?48TDYm7wXDFFYHchgA4Hf9h-) z%qm*8CR-x9{FL0rbElx#IJ;56E2QUkYs?;9;4|@}M7~ukzVf-0LnEZF7WEJ9WROI` zLBkWbldf9B8r{r7y*Zv|p9*UVy2agu%G$d#A9uTm_EZ#fmlic|;h#A8^{8ZK>?Nac zRx;WHJ>PbOzN4sfZ0hKY;lfY(!ie%ODSU%iYo4A~$C0+)$jZ-F5{u%^Jq`%YqK0R| zkMi4E-lV(?5w9O>dAV8y&vPkhz{1F5;$d@izt(E4fQc$#d9R=CXpuN;ZNrOe)I;~g z8J1oi);FAtVpT0AwAD(E##xW9Q*`c8^haUPi~1iCcN}=GU53QhtN#{*bnw0F6Vem9 z%Ee2i+l7{~#zl|5_-)z9_S5=qLBVez>{ec{11wNVy)rbnid(&(&9P5rqEE@G?@?wW zYeK)yhRmrBR!e!PP!VNBlog`R4#ht?6Jj{!eO%t{ITi!mMR8m34J6h6kr1KA zJmazxg8Q5PdGDq|RN(O#v|Wh`+ABFg)QDv!SUT~^RrV#nvyONn-Y*zCWMTV+gEzCo ztsC2R0xJ$&D)L-;?U$@TVv8MFQq-3nd6GAbPK?ty87QZMiLaMkC1Q{60x4t##)1(Q z3AaDbN2`lR&I(-3AD6wd6QeFn+VAVlAt@Hp4UDbjUg}}!8URDHxnrqeV_n5#!D>w- zRIJ3Pf3Lm5$nn*srQY2C%<@gtzC_V!oCsM*6Wdgt@Zu(lKUde9OcZoCzm3fh5)&$m z?1)tiU^Hp2!i|e?PIDN)>;|a4)VUXa4_7_W`d{+1jR~(wv8KOo20r#ql(^KnV5Y(I zyx({w-W=e)XjNenW>v)_7Ic+4zorAb$9^R{kDs$NJB>B{awt*}?pllFHBocuXHf4* zc=e)^QamxGI>9~ZiWz&X`^%u;bq4XwtpkHSV?}?d>S_|Yc{`-0rP1|$Kn}0-&_}1{ zb*DGux>M<~8C%8ZkLbb)3pe9bR#P-?q#~k8C+hO(6nZAv_N#d0;>GM=$%Q_#H|M;( zVM$eE1y-lpjpl2xiS^u3tv4HyOVYDs#Q<&CapsL~@@6rv0hb(yy zFX#!dh|E8KJ}%lcJc#LwuS}?NXU5~H1l!$&zpGtxD8){@f8=%yEv}C_mO@B+} zZkfyd4|mux92-a9Zi$rM9o;a{Sy$YkziJ!40(<4(KTCbqG(lw=Cl+ORIhiBz>MHE> zfZo1ajC|x46R>#+1}kUxt1veSGWlM8|9o@(=!*Tx626M>6V#hUny%vMy){7%+TTXq ztgHA>pY3mOE81lPcogY(bgv9&^1oZdg-Tx!3u2fPy`LSk!<(~{ZLL!Gmi=zKvJ0M{ zA#97N0YAB*+;bRiA`CN1Ve3j2(au+>zrg}4sr^32_~mqd30Mc5+HoUWu6&gCLozXZJXF8#2@!Bf z+a3X;W)8nfgAN(K@)nF|&b){fu92z$p74J?UH$q+v&XVBx3#jlVib5;di3|z(GkPf z@+Y*#OItq6Y5z?^6IX-z?%Jn(gVSQU*>6j>mI@=UN)NXI(F9?{ZKbea<-8bRfFMc4 zg(S;(DtGg=ua0Dlfc=h0QxZ7UxO%E-eyT0-4S)4i$fdGRT35O_TlezR?CLihfuznRoFV21@VyL_|!4OKlSJJutAFYjcA&k z8#EgXhfA9D&jk+ew*NpPWzpqly9lY6xmDd4q zh}=3EGvOo0VpzM#%U@t7Mq_lT>nLwmL3A-N@Z{LmHOcrl6P#N3@{Ssc_3m~0yf+_@ zuV4^u0S5-!IP96h-+2^*Nu0u)gyF{|W~2LxbNP#;`6U$-(EQSxW#WeBMQD`1qT&F5 zrKYp{RWYx?@gV0oCMGziv_i3pp0G+R8i7z!!WEX4z(i5`RTav$kDE(mQS+5rkdk&C zgTj8AGT9k!OY6x*X|#PxtUS>$Mk3Boo_}R@;`Z=Y8~44N9dUiuhx`s)thV)TyqX6p^ zka?N*mO`8niHV`n{}(Tv zB{&Y_L&M&Q`Q*u?Xl%3WN8fV~kunVp#Qr6gKWAJeoN!tz>da*HR$BMsm=_sg;^GCZ z!DO8}Pz=PX=l~y2&B(8I+vRmoDt-S!1}hFpEb*DWLEysRa`T&yB8C`@`73~S%;z*O2Vun&8BQmP&=IVcgadx(P8YeZcWwDy z_os_{{@l;Dxyi2;7k$$?=@aGqNh8E8q&SqD*MuLIEIx*TVf+tXnS;0|GU#{%q)QDd zjVv=yan_f0NVnyzjbxY2{80ixGuu_3kNIe%M&Oo&VNI6RuU4+?jeBBfblkiF^7yrc^r_*qH|VT!PP!7@>wOf4oQtAgU}=$LpFPk2<$TThfUGTx~e zwmGt4K2}3x{ST5yQn&y&L;^q4&}yu{~@xt8|PmL}(^ z@ny)o4qU27?cOR@Yr6NH+nM#6O@crYtH8!oq#J?^2a6wuyc>i8Y*f0J^;S-A!<#k3fT}`JDq3qCr_Of{!vdG7NBNd0Y zxYXqfkKsxLo1mKk!gK!Sj-aL!UAe?``6BJ+ zz0NA15P*#SE|k|^2dYfwb$jah&Yz>pfcU270}ZXcOXgIH&)Xcg4&~RRCm+~0*l+iT z_x=2~Zd!Bw&Y$B4fB!7(+m7uL) z8tL0G%>Th77XI1K%FkLf83Z)U*h6^x!Qb=VdE{6uCBSW8#1Fg@+q^k=35e)Nu#z&U zv;%{q$vjn?6hc}MR+>Kg_U5-@EeO-TuxQ13$}Wv&Bqhbq*w@v#%j zzxh4W^5_riHt7*0v=DblUtYjy`MocG z)}3gI@b*6*Z$XRu&Bp9WFor~jaY2bTf(8^{X`#Q|O&kqMFpS9uT+82>w*H^VyD zl24y}W^Do}lBry05uI(;iu4)U3n*F0f1NYSi5^t(n$`Zm^ zC?#JfEb9ZjbSXfod_1=obJ`9?O5}<6QiKOrhTewSAnhKJ zM(V_{H*LqG!b-ZcULu;P&6K!>5vR2>g}4AvUvvd;qcOUFzm#qvfiQqw-b2-x5ScB} z&Dshr2JW<&LOhe``z)%jHbAcGC<|Goyrlogr_WaiZhFuHc$#jG2953UANzWe(25_#C9rrY{3LbafFn^!bRQqBYKC_?6Jb@J5 zK~ss#tyy(w8YSKG5-Fx?jbrLL<@49o6`$Vl@ss4Kx=URS@Y&V2PtBn4(+7esPNb>h zevCYGb796Xe`VSz)DjGP=M8qerA)0b!X#oNaHO(!si*Z+k>b&y;-xaB#p0f{mu-M; zK=CDtoFrvgrdnNo&xRlYY@SAhlegHO+}cjNrDZg8pW#;$I>2#e>C(C)w|B>pu41LD5FWt2=q1-`;l|HM$1Z zwlTk`GD?mnWM3WIq~mby`RoJ%x4c)@rVjuee3v$&+`GZRASsgBujiz{k>NX#ujKW^ z;l_V{at&X!;e$(s;-^J58v!QR!3?d~LDAjU4~)kUHNS9 zjBAes%ZRtsPf@4mIwDql#t&jY)hOl5cx@JET^eraV!%-i@l6WP5}Z(9D<77+Ok57> z4=cE8kDkzREpp4-{;Zk&FL!s2G3zr_>hAKJ!*8LbR5_Fi!xkv~oA)yydc!s7-v*Kx zGvn0+m}6frr;X}hHdE;X$FGOWDiF1~0@6dq%*U;k^PztxXM`YEXhliHy9V>J@-Nk% zO8j@2m@EXO&ZeueH375Va`#twuHq|E@9S5wLm^x1Oae{a%~lef{M@9roRSPe!Vi*N z1ge{VQ^(~l#RNS50P?5F4+2Q`rfZH9jO;-ioCKB?@?WRDlPXX|W3B;%BufhUy{O1K z%e%c0Y}R(#W0McRd!KKghq2ghd6Qb6UB0XMuvgM&!uaN`&%Cc{U`00$^x#1=9NVkK z71C&?@+Gm1X062vnNcl}&0X~)G=h^Rw%(kc=GI7bSzvi$@yqwlqcQ749`Eq3FA%t~ z;Cf)3H&zaV=cT^9-qo5N_N?&mIrd+j2<8F+qk{mykuhv+iS%mfc(t4Vf=`Xh) z62K-!I?dxY1znH6JWl`lKJ$0pX28bV2T?Qm?(eGhHJ<%wHGw7+gg$>LmSHJmQq;>Z zhkq%&Hbq+=19_%Oz^*h`jpm|S@W?EQoQ)FIwNe}o5L}a{O0AC9T6(exodKJ|=8>MoQcL|vrhh}1H>7Bc z`AJNjcJP)X8MG<}8Z!cdT+USl#S;Aj$h}6Spey7Ss$s&M4e%?d96VD2SciG23e!B= zuefM%ulM6I-^x9q{B_Pvf83Gl}>M1LtTT^ z7O7zPa|GO!=?IGJp{8K#V2n#-?TZ#I+IsT8&zisWF@y}DpAlzj#Sc;SRSP?AA31PR z@_283D8wl_HqdV$4CEVrGLs%tl4ZR${?w7VFYyVmPyf8onAJIiH5|e&-#UhDT-*@k zh-2mmIR?UKXwE&D>MxDYBwIP$nH}>pIBQ5o<#pWM``lC(n%We=rzFluOV(>pfp3pz zUTqq^2yXfYgEypqF71UkrT;E0|A5*6=}{n76#nC5{_nB^$Fq>L5P_ewko^z{9#9$J z>c$kx%V_nQvuzsb4zWU_ghNrna{^K)DBy{}X$a(^w}g{2VPGU~(oY8mVE&4~=C6G< z<_i-MQ8kbQ8k}%gRDyiu=7Z87i=^Kam*w2I6areYd3oWj#`NbUQ&#pnmk;K#EfXdI z;7OloO)~31`7M_O@uoJ(UzOsWa~BhyMQ|C+2jK0F6Y;Ata|4-@!zWPQ82~+Ular=& zt(*=&1~|L)sjTyb7J!!kt=zf|G8Ovt+HTwkN(s7r2u0v&j?4)FkQZ|==qtyA3Z+}qJa!;-?K(5p+JrcB`JH`TB$TMvvsCTVjlYh%eIp7Oi*t zE(xzSZPv_&+)kRS2AV4>CA1G%<~-H_)D)an9|vbS+_I1PADQ3Rs*_346+8xTA9K7i zlRB!T+y2TG6q}|A1opUWaHdH#Bw}{#4Q1en?8tT2tk18_^4@a2`~es(n9P9;w*WBFRE_GAlJ%M;5dS~|*Eg(vbR zo`JS>ViI41vOyy8RMOT*~8Pz&eMCqs!|5r@WD6=GE)C!@~qVk%(KbyQBh-D2JWd1?DkH_Lfl$UYkTEKl+vkYf| zze0ifP+hye5!r0q==om_Pxz?zx#1qtCW@{jI9ir9W;GmqZyHqF%jH6?Z|V!%_=5Ll z*Y$+OQ&)O~v2lBZIsA6#<|I5ug_Kym^=_ADNNx{KoaauP->xoyo~HLR8)y5rP9L6} zVS*A%P4Jdv<-zp%n85u@>Q67yWjBEqtbj)zM00?v0u%1sDOObavcgoM&+u8T=^1Ic z&&yA`{HCq8rYttNosr=J&EkvzGTB`(n5!+UcI8vl`ffqH9mf?m?LXwlrJ8H~Zme@4 zEn^j>(=;5-Qj5hsdd!dXr0NB|Sa0<6X93?iH!)SQY=8wu*;U|Ra&Zev<9f8 z<@f0-tDOTJN6l+Tk9@kz?|K7Jt0}kbCi^TyDOXOhS482GO~>{Ng9~eOov-RxKbHR( z2oMQ>DcE6ecfUmNPC9Bm@fKbl)oZ^O)Srn#hFsGs_inD3@)KH-+g(|#*GD%`oKYze z@6zYKH3-48WycsdHpr(?JOj1>$9E*-<#bZ#-eUTgpJa!)x;g2$KChJ1$(BLbXMyaL z7{{(dO-?^WupStV}#vbrk zz@VtIpN%()On&4_iT>3uyS$?DjuDh*Nqsf|{Hqu(z_4_HmQU_mpml&o59*$(cjbQDtR6A(&-IFdq zjlSb#-A~A7sMW+h&xtIV+sxSj@l1E<<|PzVp2!W?3SW4~xUmSTd<&@CU0V?e0u-74 zjJS2_*h2SSfFujx#Z+8&8iMjP2RYk5Av*!q!8`?))?JK^zZ&9@PdwL5cg9ey%-6!7${Njd;w+B=}JDs|3sAZIz) z3xEZTLxgy72bNZRmW{t7q~h87JcdI#*sWCtt8C6TUxLk5CvR(NPofXwYXmm(lM=R+WO3hdrqCrx#Uc6mk}PsZOO%3Uz-)18M^G|buR~E zYWQXncm$*JD5vruKqUVIm}JRB{i@`(*#>kfCU7d<53hfD=uS^H2;IK6WXjjG*5L;q zdbY`8TY<_}aD07Y*xhBc(A{|LI(4jw@hGSGt&PBD$)e0g?nvDez!2k_iZr{H^h1nF zGI98#xp#WM(WsotagC~tm&%Be8!QG`R?r&}X?`mQSeEN_i3cJ_GTtikhqWr zI*L;OX!+n81wgZA8hh!^Jsk%yfNOmeD=j|cEo1K#W({+=UL$eZ$%cGd7W34$7XY*5 z`oa6*zh1x#=cN$*Q%fN^Bqi5~(D&{S)yn;OL&`ie;!aezyqg4z`rHZ%r>FSsYUaDo zln)&2>k&=Sh@NO%bXXhnZD#*_)kd@_$D1#O@4Omzpe^0$0P(#ZX9Fr77uLkRuYYXP zpFN}d%0yrl=oT~Yw$GL#MmMe1NNQgS+gYE}r3kvutvpyhB=3kGw_mN`4Gx8#- z02WIY{Y_r-ReFz7YxNoUU`35z4WS+?`J28j`?x1j*`1=Qqm#e!Xr4JfV$ftfs>%vh zZ&@u_w$gmOF6&>Cs4Qg1uX?x&c6;#E^%Yc|0=g5bt6yu#T*M;d|7m2i~SlOb7;IG#m1Lc|*QX{Hgy-3uFRN zNG=J_6o1*vt!06k;F(a5d{wlNIGH2;X?o!b9;1Tf<$uB@nLDb2LBQ1wEG!&v*xUIr zKp;@G(H&TK_9X6)vnV*nG%K;2@*L&3m6!4ku-M-{B8 zrmrSZNAJXB?O}pa4&jF8AozqUVsFMlq3R@tswiJlPnDkzoIE*&TD*J0_#bM&N0w{3YUF z=8>7vYcf|tp9la_i*7}Z9 z`+3$k!L^8DS)^`!t^ZAoaK%M)CdU&NK;M9ztJ|99tBEe504gw4BVELVLRNbQ*72i^ z?2g1q#L>X>!-=)L5}-M`HD9&u0Ui~u^(SSD_xN<7AW&LgRS{LqnTV62Wy?>*RK@-O z9@Ap6bJ;onnewlDe;vYI09XGVH349-9C^UNV?aAY*O0tH<#Sn*x<29~iZcctytA-yQnCpEega#37k02^0x7I3hK65uW>C9ES`b8Y(Jxd_J4!sFa)onxI&54V|FA%?VWU<6`EQL!;JQGE7b? zvu>b+DL{~%g_fFq%k5>cy0xk|0X$tO6txc|8^RYgK?Is0HP-2y{QeKjEAYNWljiG2P0 zL6cW!=QQTfGc?!&IT0IV$wIw@GFl_PUuYk)2nJdMrZ0uTAqB;SQ_9-#*#=rWlK^Mf zht9$5CLYlcEDa0EQZJr{=)t8!XIitWEvJIFO;r@JFr;CdaOwrp8DKdTeZ;XW;O62G z0wVk3vuup1M=*b6jd0vD+t*qmk3{pJKb2e8!h1;IGjxXWE5ey}YDuXEpk!{w6tx57 zvQ$l;Gb>NE1X)&RF#y@|PQ<%nEr2+nc#8}0I%uTDEQ0ra)Q#T#N$ph4?ABuhD$Uw+ z8j#pEJFS@!oQW%9BTP|1G$v{(f{zXo0?n4$OT*^8uBno)SxR4Fq+u_7{v?RC_`RSd zGU`}5K<$2hp)@i~W1d&9Q-1WeS>K4e@U--03l7|8!K6XD8SDjvgx$+yfHFU3qWWk7 znGuHuL@N$vCFTu(qGF5<7(z-t=IH*}1sBq=L%M1^9VfLjV6~|01>(F>HlnaoCBrPN;o=GDK0Ln@N z(6XW0y{m~ZlPIbOcf_W^Zqz+9gD}UT`Yl4lDBvc@+6E3Cl74t4NzAO(dU9VlI%==m zVj(HEv)U!Ng<0Cl375&$J0jbi#H_0{39LfTy2UGN-{y~1x@K%Cg~MqxL<8bn!SSaa zGkq{SzX!C!WoH9tEEli-Ie&Fh{HTa! zWCv_9I+XmQy^P9uRQaZIvLPubkSzycVB9Cgg+s!q?tPF&VpZvbabSUePbaeHP4NR4 z{b%j&0yH(lA5*Pw$W>hG1OXh>B@v-Fsr-m2Hfm{oC4e{l&46&v*a8|F2w-giIB1FW z=X<$ONd!m3omz+p4?^lA4|fEuOUKTELbK+=9*y1+konv9W+GMNO_;=D-;eL;+!2bc z%+ZW{uwq+aBf9@7)36bHlY~-@hsa{r!t^UMS2+!PHnfWdD+$oqU@GNrD*>YBi_vV~ zvyhmnSHvy7wK&=+hmRE~vV6Z&>aNBn+r_3I5Ve(=hJW(8XDjxTRV9~-m;}(O2QXEa z(-h>arMDer^bmmyF=W#6AAi1lnoMZfRFt`=Ka=79BDDJ?^{d32MI}QiyH~>{xAZN< z`l&f}IQi;5o?RN%+zfg-=f2SgvK|YcuX#FN&n&{P*2F$itrU%^tpiw#b3I`cl59uX z9o3-8ZLPWCVS8jWjnmo&x+MqvDAt2Ul@QIKLgBA4imJ?+`s;&N5WN@ zL>2Y+67KGSq`I{Q#d8EVGuZ=7Nn4cLe&NyA=5(WYIu)Dho&BB4s#&g6o_5xtmqxsr z->>|;XidK|JLh8YQ~(}Zbz)1m5*o>Xtv?d@?{nN>B0Z0qIQDgw5Xs$+82?^{7rwQU zq(ia=PC^Ml>>A6kXI$`)WbZpSLLNCfpq6hnR@^@i?5B+?=Bxb`5&ehj$m_;5CsT0P zu;Bw0NcBEYU0XLM$w+;$+JJ*)yDDzHabCV_`9}PF2DQ4nho{q_N4i6QN^DO{i&^zM zx=V-V{%V3E6TlP~olm2^b{lg;aMVpkZt3bum7u;DFu>w23$G}6noV-lQctbDX-nSZ zl3e7QPibTAxF{5*?0@iCYg1GE)+>7pD!Y$|x=mdad*`8HM$ZpWoP83q84%X(r1$mw zF3)-`Yu6cCa1b-(0iqgdW(w7U+OH82q*xx8yo5*Zo$eV77ZCHNa3J>e{PE@qK!8Nc zMtpnZGZ@~Ic`;jE+~fAg)@4yu(HoCbqV%hyd_)f4VqbHM{l2b@G*cRa1sX7!)6GM` za2L(FHjO|S;g$)|0JJa~1?qhDZ%C6BMCU>#8vHj%oV<}0LF%%7-?dfv)PZLNfuq6* ze1*rI13#1##yWJ(tBc2o9}4+8h#KlVJvn`)jn@N#{3k29G=GvfAbo1l7MIA5wSrlr zO$Xa&XdHl-l1nuxx-~@2M7XJbO$lBMi7mT|*Ja_vJ-A@;Xr1mAB(%J=rJc9hgslNk zrZv&U(}BuKO#c~5?T%TM6~1#0pK;`$1o~bxd1Pb0-0D>#h4^X@fhur z;Rt}eI;{>N9T1_<5=MmQ6CA&DQ3X(YTU4wXa(&2gri^g+nPkXfaWrdmOjNq2YvWjF z^ChfZut6rl!Ga~=dhb!%`E0D$$QnoN8w}eV?Uqu zwNWRS00#LsUCaQwpCZ>j6(k$-;gkuwb6QkqEpV}^GH7vSilrrp{9d=SQgP`+-RyUf)ckZ=6PPYMw^>JBv;=12P6uR$d}4?Ko!Sc8w1MQ3_y?x<%$`=%?*b* z;Nb{BsKwf{Mi6;gNO!Tqq;v`M!L?2tvEFaeqXII}}*Khagfd83BNUydMCN2hT zeA|t{4v`-=K98qV$d@AK=)T(myDY4yC*H>)Cuy0L1yl8>pQ)w5vzbk06d?f zDpI&TdxL`keaP&q$5p+AU-eh2w#XKYi6>~z2)<^cxgQv3_-8vS6JN)SJlxct{xcP0 zE8w(}Vn|Fh!9SY$VoWvQC^@-_vccWiN1N;6ERM?UVpAek3n80UKojFz80HQIEs(vI z1*)d3h5~pYWcT(%6OP9TNdk(CSO0)Qd?{f2c%2?=0_`9dypG!^j>-?{L!oc#7H+%Z z!(E`?lOzb+wG15Op}nD15nJ=J#+q-92UO0bZ zA2@O@?pD`}K$xWFady#GL z*$$m-XDt!~A?5onFuMff(uYuj3EMD2c++J2Hu_h68>AaFq(E-u3h5wmhp||0jGFi!&DSN{$j$ z)vlCj)JkDTt2p;Q6ThvLt^Z^`iw!{oAtY-wnr;l~D%r5Imm@kzW+o1{670P1 zH)fV+Q`|@rpEb}-rj$-BMUhwMyNjfgPhyE6PS@lsU+$8XWy}_J=5*4GIhg=W0PJX{ z?u^-7hC5CP!pDRNP>1_-LU5yLrz1dcQ{zHVN&rF$KP={3XsX4ow?!KgqQ@)SjMmCT zN9L|Dto4~xEVlxIWDCJ^dxt?FH{4j46A<-6ibptA?d%5QN&mMWjgP7Nq>7F6d@=7l zmYOpQ=2UN-kICG0GMheI)y_AVc7n+T-?%_jAE;+8`()`R(S%v}r-a#L1#(jiKOcN= zWt&Il9t^i&@qj(qtGqblQJuNHep{%YLFV#zSAgO!#Ko`5i29utfcE78URuS;58xGF z5&YA>H=QuBRSx4((RwTVf!itWcYx;whSaFR!{d;y#m6eP|d9+kx|U21-lbs%3Q zeqgur{^+R3IG4I*6T3|S@kQaWylz4?Itus^0}rf`eFHEIcdO!!Ref(P#W=AmR$|dS zxohB-*!GJvyxHqb2r0H}Wb@7Han8z#ZI=niL-(DVThs2*u1WzRgpJi5A##@Y-QX>a z(dn@*3;T*JS2TW$bPDtse8ix0-Q2>8M@aY^7(S2?!l&R>UoDfzL7`+rG+N)TE3Rpjka6EmEs+`p{Yb?|QwhSi=1++)7VNeq z(5dwq7<5@fEMgJHw^ZVz&lsaby4)T^0fh?GiZl4OPnqQv!T=6j!hWLVEWI8EVL6lFUmyGl4`CnRM{ z@ZB>x&k@yDeNlBWR(jttG09kW%bqGt1u$)JUFG zCs`&2(q7ab?$q&9d#6jyW5vg)=#AfWd;PDcLT?Zu+=UAV4~=J5Ug``-uhGHi`y(x{ zmPe3jE+{ugIm7!ZoTD1t{C!^?rg5AoLcz`!{*hf$e{+A08MgQT6zSJlRle`k{=L?u zgoizrb24d>%Kr4Su{Y^%k1gTu__*psdb_pHZ13kN+Bg1^8#@z*{2Xe{SNgN{$UP$8 zIrUtbdb58nk1fv#rRlYab>)@J-Lx8IY#6+HEoZN!==<|t@RiowZjvYS@mQzI))WFF=2M1_ae4R84`jV=4gZ8N(U7u%EEaUJ*Qe=&k& zE&uG#a7wO~~gbr_cVUF9#`JUrr?@>VHmwyFh6redTkj%YS!51)Dg}=oU7lf%(M|W@8$F zQ?-YuI+v%$55MWWmKA*c0=#lBNo9nql^_^NiG2N2w9<dZuy&n>CsUc}^xwmJ@2SdFdtYd#5Q zjrwjKcu0?k4>$2DR>ZUWF=bB0S0gi*YI5>P&*L!RMN|Av)9mqCBXMI*x5KJuIGMSQ zzh3U7f22I1g7JU*sTHeDZ`9!-F)R$`y5<^o-_ctS#l^ri<219F@o6AcIIF$_8S1W! z6>`qC;kxaXFQ;qMO2S+5N)*UE_lO`fR;ej+L{0q{m*rVe!sc%@Q@$Q!(_r0XHyC9r zLDS@sR_qq(XD4sK<~rM+nQNdS+%Ob0D|%VY>(my$7i3v`nC@J2_v7D%9p&K1GVKIf z!NzaK@?3X-S>fLR=NpLZXdZQC$T-e171}y z+h=WoJ1Gho~a1(VrGQD~B$y9kXHdpo^Evu{2(sLUo zGwbt-!VHJM*q@B*=l@q-PggWh1Z_r&UCPD2gd-_i+>d9-b5 z&ESI*>)%wBlAG>;n09zl@7=aQogv_5>dI=LRO zohn;US=L9k+ps1@Lzb?ZXuWVgM6Z;6LAKT4i2GsBw={VjDAe9l?vb4HR@LkCmU`_r z7GP``<-+Iu^Lyqk6tgIcut$sVm8~90b!c5;o=70yl{EmguXnE?$~k&0WjouJ7T-<# zo4q)a1FE9MPQx354zI!J3dovXCSz)sL!YY*XGFkR{>Ro?g+=}RZTPzZy9)~}ohnFo zcStu#H%fCoWxE>(a(<*+S#vzEJ2I2?HpdKP^wKUvM@e7RaU7-I!=Pb9FT0{Mmi}TZb&YYxa#4@vzOWs)#XC zI||NUhT>;PGE61EP`Dg4#Ux{-aBXiNg%&qsL4`T}hq>V3IFN5lrtYS4;J^2zK}H38ci*m3}8gGqJa@ur04o`6xn)gML0If9jn4^7Z@?bc!f5wbgEZQfUg4ip6Phr*y|F&WGHDDz0Sm;&Oe^P6t@p1Kr<28y| zD^ZbIs!%caCCeHLN4~ij61DAfxvN%7?wyfjD597M<;D26F;9`i78 zYL`N1E_RQ)n>XxhNOHOpJi;#JJ^>G9tKK#*)OpT5Shz@#Gun1bGQCaPS53;79hQWM z)n82H{fUK&j0ki!hH)95wS8Va7aMup`pT=0$w-08m+ko?uf z2A-Xeyuq0lOF$&K-#T!{f+x*K6vF}wl1x7Nkvwxgk}lIB2xrB`3EVRaI>b&E+OgM) zlc&Cg(3YTt zs_x|1^Kwh*VY<&>Ri5MFqWilduC;Mom&NMmg5ew5`v}FlrvEsTzNHbEx$`;KQ`RR> zKEW#xk=Mx7i(G;nMih^UxeBPR*x1kzmbW-AB&w@FtI!2yoXI{*tn}A(rSIWk85Kpw zLgvhUCJ5wIwRYolT5f)hG5=EfogBF*`9*i=8|oEL^>blJA19?5(28!Eg5R;y&yj z75#W^M?s~1PlHY|v836v6}r3rbp4jz`gkRKNGDk7p_Lj#s)&5({8z`0G_) z>w5vJD{ouIh()HI3f^`9RwfqV+;7U?%}`%5oJA_$9Gzcw&zXA(1vSReEc1~$pSpU& zM6C}`&BR24CRoc(#dn7_jXugUlqcD$!Skuh-zI(xo;yikdpjJgVYXf=szspjf|x&^ z%qX1Sm;cumuV)6nzaZ7GVWt+2neM%Z8l^}kShphE5xEA}_nEZ=%$z{O_|Hm*G-8rW zC7x2Pf;eu+?@ZkAMQ%uc(o0al>KpnQQgJ0uo|>hVBZwVcXdyXsxw!AZ6q(A+rbi`}qK$ok z%9l;jcS=%tW>Q*w;iIjpYacJ>rGuMYO&3s2u7HfAYQk6T*z+-KxZ*yNf zcp_w)^YS%yf5#Wk%&)TTOFc86>x~KxU38}rBx%ZS?@7GH$Y$l(0aMncE+zU3Dpgilz@wjj36>Vv-@zm9jK*=Oe z)O4BZKAZAJ#{}UaXzc=9RX!Hwb<7m_M3yf%7fzb zLtW#nP_y4DR(nFdlz8yxzJj#`j%5Ah?N7YeBe}DRnj~hhOmS4t*>^dS>yvGhVc+>P z`#({?h$(g?wXHgI-+|qZOa+Gjh!tK(EbgN6V<5ppiKqBiWK^OrU)-=GBd#XY zZpEKu{`>m0baT}C(XXFnVcX(ES0uQ>zaRc{G2A8`A1UZ1p^Mf#eb8b?B`^$^I&5^j z%ZD@K@OcQ~{n9IyU=@`7aC|gaS$c9wUW$2!O0~mU=yWs730tlD~0Zt zImYuwAu81~XekI}&_ML;_e+0gxceh@gm)kTO=-XhcX^2}6U$2w)|4<3vS9 zB56iQ7P3`bF;E+f+=LKL7yEeu2*qv8NS)<$GcQX&h5cN0ci{zQQV#^g6go-*^iy~g^sJzO*6b{Rq3>?lET z0CEi=1VGsx7$O|T134PbkSVJ_3Imk09Hz4Urr^LRR6vTqoNRx)sO#$p+-oXZc{J2*1EqnhW8hvGI2J(GO*i-f`0{{C5xs*_Jfsy~S~T6*q1m`Qm1k78b1f4z)AjPT zAWJzir)+Xf5{O6w2=81L9H4>S88QwKVG968VSr0g@w4)XQGoDpW()};y!FBiov1Bc zLZ-0M&=xHiW5mG9>>EFAyu09TU0(tkaNER?!9mN)b10Wt1kJ2OX4^o4(?(WkYEULYq~%|iYf(m4U-<~#l7*lEAPcXXaKOf#-Nq<98?>6Mz0Kf9~3Zm)gm84S0rSv1rUu|4jdl?wb`IFb!tFOy(DAl1OjvT3ZK4G3!xR zQ%NRWATa>gV6Iv8maXQ_P9DDVP6^QGX1TjQqwTOVYNSZ#heF;-sfoH#%m7py<^|vZ z`Y=G7I2rRXI=W9^M5t929}A!a=7^0kB$WF9A@3}Kz|gG>W>kIAv`nYrV&)XONK?G{ z;HTas1;yr_Y+-kt5pNLzXs>nvB{$mqF5I$$JuF0br(Z&a8LW2bgWvDvZsbRY-nE%pFxyLpli>c#Qfv{+tE#cx+~w;w^9*iI%R% zxl958=!5&Lr?LqIZoJx|^OgswK}%}fN~qzty!(2g3XwN4wSMRH(P&W{1C}@Sa-V-Z zrv}YiL@`E8_?cMJcl4nFi_!77qvH^84d_ z+tr!hN$Me^su1;AjeD~?%QEt^AlYIdkOy!Z9S7wt%KX$ui=>i$DSF+6QRZDq)>#K* z-v6vJ6d=+;(5Q!})X+Q(k9~!V zoKvKBmx}vZMrS0JH6)p7ZJyv%3nsCS?HG?5RqdLaL7}v73VRaip(;(f%HOmvWhMs4 zCi+%pCPaXq*OmpCNVg zhKM{#aRl(>SI7YU5N!+$3@PTt?CKbySdCL;pLqCVj#Mxqexj#1YJX+mvr5ExjMYh} zny1k$nHNxh5176vhtXgl3#!UQpz;{g`A$Q;ycPeB2^eEv&Vo6_27sMv5uSdE+cgUw z!^r&AgPcAgZCKk7CF)*T?Qf3|nz}u>*vSkl#v;MKN z*D^rJ-a^G+OY&RYr+AZV{w%9AaMQ9eRXnp#zp_o~sh(1^+Fm*=7YV4D%*|d`&%60q zdUP)L^B94FWibQ=Lf!n^N39<*ABw(h(%jqh?-en(uZ_^C z0#p9$6*}w2cu(+9TZ0#R9-?Ex>3}qw4Qb~mSvfVHIaSoaT)mYVL|}}0(eBTlD*N7( zD62idX5K#ua4H7EvUc_Ka{M`8{S_*A=4v_kn!`PdRPUJpt*O$l+S7fvk8oJ+zW_e6 z?0^sNU)`#xg$&Hl#=dpyQl%KTmHMf7?>+{4N;0GDOzQZUDg1*m5yoG{?qk*G>M>#t zPlGD|FKB*ZKkkA98`^``cs47 zqS`M#JoO3c&)7gwpk8}+YIV-f${1Y?T>H7!8)2@RsR;xoz$pNG@rPR7b?X`(C;;N< zbcIe*Q)L3hzZOWt77>%(;@;2~i!G z&+S>JK-tsOf%j9qpDONYy9YRspciR*EgKcI77Kp!TyRSfq&=~hB&E;5kc6>wM zmvc*0i_b4OnUBd6+C424Xyz>Oq=l*~P$^j>_Y7Q(%t2AoDMs(^uk>qM9DkgDu=Qj> zPc5=j?}GU`Qx9#=U1TWR0y{5g=KI+L*!d}o9{YW-^@ZuDZ{A*; zoRiu3FtUF$?ev1y0UBm%NQv{0Pkd1FfSm5qM67|l_F0eMIoI!bZgvoomzyp$Q~my9S<)ho-xalC4fHug{*?KFkK9E-iz% zeoz-af)>;Jw|-WSjc740kke<6pMQem(iEQ?F$6Kg;>8GXc&CvWFCyXsfMTOtdzP2F zbK_S2+6Nw%rgJwJ3;YkDB(i}{l)n`Q&bi|Zya(q{3s!A)01S0EBmXv){F~*)?*N!1 zOz$_pi(7bYpcB7^@z}V`_?$<|B1NrCz{Fh8BOO-$m5<1SY>LYYr(V;;3a}LI12BxH zGWV6w#tXNYo-a}Abr{F)lMgapGc{KwRF`?M*~s^p#sM@$<-DNw$~g6^WE>-hGD54( z>Him020N|#eZ@fpk$HT6Gdfddx&l()Dtz@7e(95n4x%gmv-JIn_@1`M-@TUqz9QD7 zlP&H0z41c~>pd2#77+<(N&PbB4?L~UJ3gJ&zq*3pUkAUvQc4Tn%mSI+{=RN`{%vJ* zpF=h+lq9tDQD9B?hkmkOmYeS*fdYmj4mw&@LR5jNqh*?KyN>tVg&~#}L(ee;n;sdd5zAlev9H(zx8@CL>-=_WFY4KUpYot-&3=91 zkKkATx2F~{$o}U%Y znLQYUi{!hP2_Uzz`#gp`bS%*P2tTb9t3$Lb{M5 z(-2eT;-TALid9FQZ!={AOs=j7XX3yhtg30l0%vCVcJ~v-K+lr9#C&Z%N?{Ba0g?BE zeoR!tZruyIEzO7|^N{yv>m1$-#Knm;q9PN|ep{*--j ztkHp7m7rW61i`=`vJ4w{k(KLFQ7|rKvML$rVVqX!tB$j7-_ryLXHh$5iA-krc$a^(&^xXJyD-FiSu!FY_x`hj`-*LJ0js=_?_QR=A(v-_4(-jg0oxx!?mIr9|yJCXM&ky5lz$b&20?4(sl8!z0913 z`c2i$wU1LqcxcZzC>1CqjhB<41e2$>HsnvVD*6>Y3$q&WElJ%3=+yO&o5AW#isDVi zX9d*H=DP|;*KMqfjO^u|3={^F-CxQW-8yJn8hyt1;hkZ+?n<=&&qX`Jx&?XUGtc~k z+*hg1KaSO*lXe=A!0@5fU|bs5(sw26!dk-R#;k@s6)%lP{cOb#s< zUL|*juPT0mLk(0i%9hUygoFZ7i1TMrauM0G<21s49^Qp@KCIBA3^0Fk z=h%DDMTr-p|2dc9u}cI4n|=UsC>Tm}nHat3NkAk4kgJl%B60ZO+Mv501Y;znm9~9H z`cC)4Az=z_Drm-jtC!eZ1%d)Vx{b(by_$$i1($Se^ki>UmGVvuzlc?VDhVrQYI=&9 zcUzN?ji{wj?saOa+w?6^UFD~)RlpMuwUN(%7!;%X2bw{~Q8kUqr-IrT+@}Q6OMMWp$B`c@X*zqtd35d*Xdn?t!;WDtmhgt;tY3b0I;|yqj%pDE>f5B+L~{^jNdM8me_@qDM}`N#q?!^uJux#=T5$#W zy!9Q8NVL4k?LpUSlbn3OXi>xUADAiMUNoh1vzuvYfmnPSk>7;yc$`MA=tvbfH53A5Ak+vRHmMiLXefi=V<< z)-7mR{kOv%I$;BZ%`!%`a1`F~jFZ%6& zze7U>`P$NT7Ctd^o6C#wwFLV!SQ9sCOzYnPDHpY#u)6h*S@501Uuti$y*HcGZS~0> zad+aV%7l`S^%M9|9g=E(Y9-^RkX^7dR0PnW=J+z$_e_HG?}pI7gP&z$~iEL7a{XTFY^ z$cexJNG}j!kJvvd2@J3H7KYnuyFOpBS@7FwjFy#rSm>)!Nipwu>AqC5S7+}3JWkW3 zgT-z{C4#Qicaq|6ARM_JxS4lEM0Hl586c84Sx=(E#LZo!7Ri0=`;jEjy-%{p+6Cd7 zqzVSvLv8jy{vmCCp}*TfR$hM=UWNO4TUZ}XjVUg-{`)x_7ACs4%)ZvWb%9@8%;{$R z(6vJD!WG~8xSQd%2qUh!^?0Dpds!MU3uE!7^5a)6(myUz@oS^L@exd08RRKA=ewua zZH+m>(YG4RrEYM0zQJVw7t&+J4fLB#G8ZRE!THsqJ?9HAlL0~E7R%L{H?GZDVf1Hw zZ`RwNY1Pll+Gz~}-L)m>SZ7&bt3eFj=##V2z?&9SY1S999NIi;Ug3|2G4l;Bz3HM( zzXZ9X-n*IoNoVzlwGV;zKho>%^w4u>?*rb#BW`XH$?N<48@q-d>rd1?)93N6((yoP zrpE1i=Kr$v`+kPcvApQmdyyncakUioIyZQPI^0tvm^eL5Ng<+y9da6HO1TzM>Ky#g zC9+){17n1;Pe$ekhA_jU2Gz`2aw6zyqO8t?xg|ox(2>`RmX8jj6!NSTC!w>ux7z=V z%x}&jw(e@?645#fs$A;Px@*yf>d|Tov?iC)Dm^hq9OkNJF~(~#wj3Ze)C&h}tUU+l zRUG+~yjZ)*2Shf|sqGkDAkK*9g*ZC0%>Qn(3LtRMQZ+nrmpF(Gv~V$!mji@{fsUtP z1v%m%X@sBbq=D)yQ^ga<7H9U)ldp_^vOiRzY8b?NK6Z~ zf~_Si?dpLrP!IJNotFR}CULGKF?ThA2nEFUBn(X^-~oy1xWqXZxj~vx{I#THm85Yj z^4)LD(t)bqWb)K%@~6XOEgWsw8g|Z*T9OYBQ-7()dHBU={Y=F}q@irEs;C!$Yuay#J9k>D@XsjZda|f3RNX6G%r>1q zKApjp9Hy5vhK{FQ*S;5@KAV-!`8AzM5*VyYSJ%tn=gj1C&7iAKVv zk=GS_XY`TL$PyjOfN*AMm}lKXBr?@!Nh7kA5LsiBSgorpCG!lYyll(*>^slSoN~g$ zc<2+29M#Kg2Uqe~8sG$-;}M_Zz?m_9nd7OE>r|K1YL*+MkyBNdV_%>9!ZoWUFVj~e z&oe0Z8lD&IiUf1Uk8S5AUgf1CGSgg-pLBY4!2>wY_;QYkBpE0w-)iMSlL+LR>hupff(EBtO6MYaXLHfa5GI)+o$!EqrN? zj5IH5U)P>r2l6=cQN4xr<{4GAhOuz0P$%uCB&O)Bcq$kA5dlhtm27buR-wsvr%Hq{ zB_3I!2b`rRl9-k}!;AQm?W>|s@uff3Bul};CC7)Vf8$FB%*(ENX~kMg zh@?tSISq-Qm8rF)5(Jl<)s-K*#*c8869yM-_vZEH1FN+87VG)nISb#o1our<^sHk! zGz)6hi^i{t#Q)^A)K^yZ7KkJi@&;ANa@|%=*H;c}6p8%FSAHfJJ6SdL`_3F52fFL3 z(Zx)gmp^!249PQ0nW{E#D0<3O^MotUexuqsq44Z$wOc~X8;JrZi*o0JN^i|td(9La zqSn43+})x!wKwNOe2tf8VbFAqYkf*ISM8towGj#B#tC&o#u=%9s#oE4iJG;@V59RDwio>FS_NZQ^tWI{ivQ{cbTdLZat6EsIO8rlj*jbg1MMBe`3IndH z@{RiJtI`eEvcKzf_oiu&^U|2O${su`zsk>Z4kEEdvq7w(%CNWb zmJVp2&Zyid;tc{cEQ-|38(%au7*4$spDvRBlj-K#(z)I!Wzk@?-ZFC4!bID;D%m=Y z%K82$omnF#3ELKnj^_@!i<#wda<}u%VBPBP_U&BUc|CdU!i4Q>8|@;;i3bVoa*gf0 zmL1$7&0=mHs#+Z)((RFmPDA=8jq7%|sWub(jy26ruD*_{wGPFZ4&IpzN9k;5w=UPj zF1N-mkD0FL$6elp-M-x2{#xCEZrwqN-64(LVKdz?+`7JV_3%jd#Ax-zx%I>+_9Qm; zB+vAu9`~dZ_GWVTW^484y508XC-xRL_U6-PGty?69CwzOPlD7p13uV+ZsXO$htO}V9e z)+a&C^Q@D9|zOM@zvu5 zG_pZFL*eVV$oe5c&Kzop_5g!Q(a9nH7C$}n=`L?W(#>{ ztTt!*ku$Y7Gpt3kBMh^}TD^vPtqYqyLVAF1+2jhc*RZ9(=y*0zLHqcOxNo78waRksA7JwsKgC>6nZlHex*Wj3LT^-VglU4@rYZ zEE9Gg>bHOV2HVr0*Q<8R4}bfg@G2QfC&H1;$1yGzqZ2Mfi^V9zh=^hn($f4QQG|Ge znLfes@fA5FA$hqqxdC*B+Au;QAyj8gdXFPYpBf(@PD(sP0EdSV2u+5J!$(Jj#^#2H z;cs+$8~mPq@c6j-!h?c=nvOP=thI0Jc=MYFHN(jX#oo@(UD{t)mw$GWZ-q9#d8@Tp z;$yzE@R*@>o+$X0(hz4&9Nc9(Lxr}N7owLzs=<6ze%Ux6N_D=VUVEy|yz&{oZhR>F zXHxn?(f7L|qfQCjw?z@#Eu71S&Wq(AQ|MOfN!g1`s73y61SUTYAV=fP1bjk!tiB2^h zxJu~(7-|(lQJ+*Q8$>`b{-uhW~ zbtZhfx^ajn$l-P)?r*f}sw_*S#F!WB(GNoj&hz%g_{h#RyBFbp%#c8lKTg?ke|ylW z%nbdMENP18nWgbUQf-!&Oux=P`+e+rxQ9JfkFRp(<5SBvGS=~D&b9I6WD6nFc67>h z_rf~mIob8>=UMMh!XEp)yCNxku6RjrEIAy{P7dl~t$AScaM-ZK)q-p*3$5A7;8S)l z@IzHbim(cI)<&0g^=vs6Wo=pjhqFY$2I5&wt!x2FaOX~PAwKQNc0$l?z}6NZTfRunPG5K z>BU$i0z4kNQvS*;N%i&+CKpbez)>=;xyVs;5hhbp$Xsa7RSZ5*domH?uEAU?Tzciq z6jIQ;0A~Hb!}glLPe`rTUaHML>e19uKC*|-^tq&_(qG->x#ozYRc^J#^XI?V4p`j& zHjh7BY21irPOVn(!Y~>r{}rkJTy%sTditC&rC0HhKuicas`jMoa}DgWWA(iIr}2s0 zHI*#nL%GM7eb99I%p+F=pHK4LWGYYf(cQLTkRwZykqax%0tt$@g|CJmZRG{$0IU+Pz0W^@@8ADt>hGTdz|OzN`Kn( zlnWee+iE|cDtYix&Di%8+s(aQAk~`C>a={Vt|Wv5 zY3R{l3`ZJYQkk*q#(4O(Cngt}jHLF|;~SA&D$_QM5Mf8{Ky8*!KV6{GJ4KI)1KlF=~>1_@0 z+gko-*P|@IDzV4qoFRLS_R~G;ld4T$LqA_HU+uOhl(8ldx7I1=%XLXA)p=O838;XT zgy94$;DpN^W!|1M?4^~n0gQ!ywMA@*DSpHVdw-k1D+Mf1(tVIPMA z`s@_{>z;(cl30}(6N(C*4JAdv;D?^@i%RF9X*m_<)E8p%X;8c=E=FALOfx(8ZQP+% zk;vf$eeZBh@LIaA{X3l_JThHi@xJB@O`}IC+R=(S4ZBBxk~Gjj~j#CTGq9Wa=*e$eLWV-S>^l6%MFzGkvd=JxoFi7$Wm3A?`+ zdqELTw@Nxz zVlU>`B3^pzJYU@ENfSA^q~E#FM}}#IV>Fc>&FQ7v6Fn_)paO&AA>T@(z-JKT@J8P**Sx^8x`pSv+`j^ZZ8@$ z>QXdAq-4!m$KKsc96YPisEqKAeaBl>*>fpFml!zgU*Sxg*eYf=hI$wcLa?y|-;^-WM&q*tY!Nvj_RE5^C%+=ftas zFNS$K3nbIt-scARvdgDqVJRI|e{FUch`!BKCma&zvh@BQkDrgwvnRcsp2e{|{FxsrhlWPzXF_lL>&<K&i9s%~!AaG+9x%$Vp za=>MNY@R55Hw%atQTcRe3vLsGN&SUaSl2SINUI(s+I6t7k^=Bvn7~=Wb>tW7(w-61 z;j?D~+XL_~esE`M0rB0Cre_WxMtydO)RO$33GcHo7Hy1NjH;OXrVa69`F$)&mRk_vuJLP-i;O?g3KwT+)`2tfo07}`sU6C##)~j zZ}~4V3%dC*w~HgKZMr2Lvp=+y6UAu-<32?QR>XOmGJ@&hp-?sq2<47Dy-R|Dh33)Y z+S{jT;xb>DF%grNTOeGE3|v4UVh9#>7i0?2v;4j};2Wm<3H#rc%7Zt-#s^+O+Hv8i z*}{)rY0IE|N*;6e@2yvq`+X`OhIz=JS+k+qJFI?a(-f&rs)&52ZK1#UEWAI7eG3 zKmL!Yn%qkO1LnZ&2mvqwpgap8T*Gt@V@M7$C?MjN9Q)`G>4SS`2ooksygmDiVf+vr z4FL+BL4D`i3CeN~jklzMHUC5S-jAUcU@Q;G|ypVj#}8XDe^a^(J~X^gDO?} zXwsH0YeO=(SDn!kdk?;!Mzy|+Fz9iR+KbROi?JROyBLnJQrEMpgBc#ij7G4re2Mu7 zB1>9~oOVXL(V(-bK~WR2F$b~qKpZ(^92y=+BM)Y331UQnnQTCeKpZJ1&T}$0Ar7Df z1Y-3R^DaWdKruMGXYo}w7v4VmxkkL@y5( zMn{FBqvC6$#LW_`*N}-cytHN7R>AQu=u>h>ft931LE`Qydn(Th0dJ689A#( znmN%VxkH&MdJ^K|B5PfO1nW`-CzD0il9>b&(@mqo(1`>#DXq+8xE}Us7MdVbI+n^v zH6Zv^wac3!eL4(K_S-{VLQbYTG*&&u8;$jIiDNZKa|K~B9N2)m$svC z{;fy!02j;~C2S?)K>5{-WL=S@KAxJ7Lr9f6ewkYpShjs9-B9#kn>s)roS7m$mVwci_H&p9*k)m{4l&b zGu5Ow^;V*wnl>9ipuv&_PkYmBX%%JDNr|&5t`_mVMY4WU73#X=>kj7;0v3zq>C$XP zWHBmP;@CH*(19On%v5*Cr_c+4 z@KFFR{t1i;6tJHAt}b_FEjNTS`ICC3zggZ&WJ(U^`JoVB8eHo&29J~pep6insKGC( z_sFiXO7byp+ z)fg-Q!#+ff!g~)LP^6`_<+^zEa!tXMn%u@;64*Kt0;O}Fbkn6o)V5@GJsm7)b+srXbBk)B z0pC(;CEIZ~J^5PG42@-*hM}h2$-CO(qRL%e-981oGdCoK%rHm8z*Gyq^R?pp6)#U- zgM_>)12r;sdXk+!_*P((e+K9NK6(&%rX#=tIk*CPdL_R25u_X2<^(hwyYVWswG7&t zH_Yfl%BwvOeaj|F@s?XyI3TQtFx;QWa7-FaTF=5E%xwei_MvHGNiTk%zoJZmW}Rf& zPW4sgQ&hDVJADy@tG+P{V+|9M1``BDg$EnT3Dcv6ys)^wjMeTwQJ2uP85p*(r}zj~ z_AFB!!Dg_>F#nlqTd-=-{JtV9-h`cz%8Vf&`J=2|MW~FCs_39lrBG4~n{*s-3l;!C zDByHl1g5|lww=HNpuSnM$L98sm%-9Z*(u9R+7!4v^*J9dnoL1VTc zYk0iIy+vU5oRN^RqnzG6OPmX2vr`+zEKCU+&b0`M694>s!5T>9LR*sC+& zUj0xE`>-30cTZ#J$1%C3PJ*bGSHKc=u^v>RKo}I8|7&vEiyid$7wK(LyLCI)6d6z0 z)Ox24MHCeyWGr+x{|GRR2x@?%{F-1QeK71yuJDDX-m;?`&`eE5Y@KJ9Ri?eJuQ!l1 zfE1M~{=g{96w87K??=NKIP|yaT*(*!u+7wAu)|y#@JXB~?*LhqM0VaVdn-V+U==z* z?~REIy}o%Hy+YlhOj6uwa18>LoSGXRnduku(yRJ~QmUc08{ppapGDt77LY?l<69YT z0}g|DIQ)(YP_oW(^GT!M3l|n{V*O5n?uC|rYcqDpcB`IH&=;8;*%63MVttrQ*=UMS zSWaBEa&J`Z?awA`m8whdwx2lH@IWIB{CBGOV3ubx@^3%c?IhiFjm#TiBls5W1Npxe zzN!*lvg{iRu3rt=^=HhIDc{?0ypIrwJ&BhX#UEYj#ribwxxHPR5x-;~qtubrMt&C1mqGu0rtNi?E#eeFc#+ASg{!Fs@hUBx_ElUn z_&uHo`d9skc!_E^eeQJawVu1=FRjVs;P-$pC*n>^irLg*WU|rrWxb}3%LJzW=A*4E z!joLc}6&nVMU%#&-{zpbi9GS zV}3xIW9;ti=h!lb+$_Oj{5W?yg1?6piz@!FMsWb#L6tw<>XWl-sY*qn(6p6aLj z|EkSz@XuJ|wU~z}^`b<3>RW_N;k)SidcUah=A4xb*Chw|9J z!*<_yOZ^qX9X4a(&Xunp1gVv`w}gjgha2yipE$!0LT74QY+}j22OIANcpee}qt}RU z40CFWx(%_YFbcKt^ZR>nS}?X`?|aI9&`&MNMS6}bX1@6~w9FfKvu9yMG@T`|CkmM1 zxJUZYj~=&tzv4R!Lb-z(Ry<58&LR{!C}3nrG=>noF9m#7g*u*5+vsDwpYgCgh4S43 zY~?h)C4hs~E*0wkAi0H$l`YsM}2N?Xs_gL~jqj z^xt}M=*Pxt`_+`aJrXRujNWG(uZY!+BXfs9|yM0f>f`dJnX$TKl~eTdva4v4Zx zeyYE=8rWM`4f|c?Y~?HPi>J91Uk{Y0<|&vSpNX*LXQ3prxlDP4UX%N2z@ZrOfF> zP@!_KsP##)OsxHypIo`V3!DC}qtz>T6VsW?Gd^0)eWrA)s>dy6nc=aVo*gF!DSfNd z(>6E`D#|}e_<|1~zC_XylTi)C-lrme$wEWSO~b_|AOgFUl4eHYb4lUhlg*w+qa5(> z3rX;a2(7r3%ZteyRSE=zy{P6;CPh&sq$aEU7j5HsAY>C*=qwp(AI8bSvVo~2QT6pD zMbdc9jVQ3OQ4oMH8DhxriMbw%Eu6jm`6CgIp2nMw-=&uvHUUqjvU#O03<9i`AVq%|5`=&I(1lAe>!`L~>Ax5{R=+4tBMIa64=CIFF>bmN4r%KS4_;cw z1gk{kW%9*A@d*4l$nNT5WK8NT@fgA(PP1o)MCJaM8Wzv6_tZv&XWrwb5Jl);nlNp~ zX6#+&f1voOXCMcWJMu_;l}4u1D2RsUad&YeW;WGjrEupKOcbFcty1dQQFR7MMpcEv z3K)ngQs?seeI%qFnh|L(>@@jn8}}Iz; z`if$h4=4iqzJ?I=265A2(*yz^wjqn`2r3tI7_9B9lOr>S*+4JqmB1y~XCyjO<(7&@ z>3T{;EUXDQM!EW)XOv3%>Jc0`q3v`#0i2g$89>|MI@~IrSw$xK#-~?Bm*rPPVyRJf zPdg%ov1}VOBcy%=0@v@%@Ka`AYUv@N9P*J*ex?Bh6Lsr?ZT?Jd;t6gP zzoQxTNa+M&4&Qk~){4QSa%s4SxPfZl`)bgXvVbz8VALO*P8(u19?b;FNRD1QN(Za> zIm^nQTsuS>Dtl$kJX-y0s^bF zglDDoA&e@^Y$94oTyVB-kWOIit4USZ*K|z zgh~(d0;+2neQc5-ww>yjMMx(altfNb$+#t%LN_=$4nY}5c%)-|NeGGun|6Ea;H(-` z=kPqQYGG;jcrc1_8^lmUM6gK=rJB4qJ{||tIUREtPG1|J?tnft8?*1Ldk+D_Bk)<| zDSiPFvt~x^M=G!4*W89HhT{}ZTgqkptZakADMWtA$U7ft>4#h{$464y-6C%Cztkm= zsjEEOOWImm2Nj%ms`KHnbM3oePu98wTKPcUXnOvtZ2)@tJrln8VJoYL6_E#}ULTfE zsK`|fzpB(qw6wKf$)4$C!RP%DqVZZLKF(d<2F^sINMsyW&d)mYRA0lI#C#_;DH;O^ z$*XX+a)MM)UUsnw^50z)VH#ul%#%@yUpp=}@I`D2I}&yw%A{FVH=JA%mX&x$tO;Au zL$><_2akHsIGnM_&DznW9@X<4Boprp`+IJT@kMo`x)xUlzfg)%6mjRLtMk~EP6%eV3sv(*BO!q0? z1=N?O3C;MNa5`&@jBlURsZ^9Q$@@VKKese=z!@`Pzc3TPS1;V1paVzb#J+i))(14^ zXKVUxX~jqfc1v?XKLppA>;C|2K$O3QJhgVULTc?N2p|?|-=h_hp{x}m+QleI=MN$3 z2$*(-LQ%SyhMf*UBo1IL+!zo^BC1kn0x$ppL}CmE_|~_^fGq+DKmZ|@kDXr&18s4n z%j^PkyWPd^ceN{{Y&2j9{yI`vMHdz0j3l|RjnbKt8IIBTgCgpU$N!?TnO~1606XZr z7~E9#v`>}}4;FI6J8^2Glu-%_wlNH!G!J*^4j4+X&L>5Z+q?Z(6=!JbZG=Wd z^v$CH#4vzyi4oypj3X&KrfyqP;w}x-<*F`}R(Y57RRmOI6MsO5So11MJ&j8f)D3Zx@tO=KWRS`n5QreH9A{OgV<>GPpr z*@iE-tPwhDqz+yffDA^(isQN%)b9~(e4q>3{bVi9qf#?ctN#gV-wL`3ing^%zebN=P@s*HK8=E5TKW$ zW12D!Xt?wcf-3R)INLPO4uG`Hfd*yfB=P?tbhvO)fkI+!ftJ6Unrov80uB4b7_g}AU%Nr#?Tob+Tm>7`}ZRb5dG-0 zZPT0-Hl}OmvnblZhvvuJHHGN|GLV6tDue&xrxPVBK<%RvWEV8xHlFSCl#fi{W*vO1 z*Zyw$_UpyqZm|r27BmH+n1Lf2ZOL>`@8a*l6#pQKoB%h_&lfz7)36T0Sb@UG?=&*! z01C^uLQT@5tOkj}G`@lB&?f=%!`A?i<+{kWFh*J~AT4yH1T&4;pw2|%BrYCKAyQ~v z%0&?j$TE!ZFmgmKM(_-fup1ia7u4boD&d>>YwfpV9-ijzx=pQiMKRK%#^z`xGNub}%Fu-1FLdD|paai@5088X4#)t5An6t8N)Usi zp9rxgO3!G3F64Yr-aOAE(9pRkuE}cd(JT&8x_|-NY}bCCWfV_-5fcY*I8u2;2!LNYENJEFwKIKD-gyN`oET7s%HKpP;Sk_t%p zE)6D)5=hX1Bb2D>TtX(3vMEJy!^G(+s}UQdEzQy_?;-~oK&=pD2yO#B*8e3X`spC?a&~+HBHGL%2{L*NQqkm+j$Bei49H;+ z)7J7bTF4}la4jz(6H{s|GKH{$5^Yh~;DrXrfFctzn<^4%MI}UYA!VmC5e(P1VXJ&D z8`c0Pz(!oK3BQO)_>>+}rz`!(OAe&$(Z^IGxsQ{%#5zOF%^6fW^b4xbsIP)ye z&QCax)0Z6TN3^deIp8+LsAZ6oIq?k)ut^ZLK@rTSI1@857v+Gc5i_=-8LX~=#Na*0 zAUe=;L|^kOb_65K;^SQ8-l5VERR1JKVhh^Q)s&X%yMNp$d;2@ z9>qbOfKmm302K8FkpHy>UH}CsYWc8jOEM)I6H-^H^&!{54yH9yeD%m&(mdY@SgSQ# zMeP+%2yWy{2K*%9G(uT)Q%t86GK8TW4*~#_VcM>$6RnB^C?LAb30eKM1w6n5oRwCa z;7PUgV4JjDr1W4PK!fm41-XDr-gQd(%Okwwll~xXOr%}IA}aE8QSsDKc4FC_MF#MW zlQQd;+CT!v@gYzE3jB3hOCTo+wmU+WPYKmO_f)f-WEAtyBbq`qbM{P);}BM{ZE~XA z&=oL{BiM+AW9#b|n}AVO6&4;~jOsyDjKG_Gs~#Aj3v>zb8X&q#pae2C4LDU@Yt|2| zwp1IHgtqG{5&x(HjN=nJ#t;_4EON;Lb)r#UV>hS;V;8Y6Xtu|W#R*7;uhJk}RiXiO z4 zzzF(s0Y4Vh3}K7zV`|CdX!K+t9>Py%#-0czdJctt(XW~;b#2WQXCpYWBJtAb$Z`K+ zp2orf8vhAri~~&gMIe@<03~2=2Jm6<>?eILljNiiHKKQIQ*o_Gw~FNn>PAEG!3n5# zde;Ikt_6q$=aoE&X7~kh+#qy?AYe5jd(rPzo%n52l^W#X0Q3S8qr!a8CKu8s0Vwrr z`o;^OwL7$sB7jIxEC%V)fH(hOBEIAa^6J+<=5Wo%5LRuZj3HMSstI1kdg@7y5*TMD zfDc49iIrG%g(O@*taKF;btUC|5&(!|sdcRbl0iU(l@rO{X(_!&3=#+g5I}8mLKx5W zwwh(>Xc%hQ)k(~`XmvJ;A0rj`P%F%bTe_cd1UT5B{uQi zz5!jQhj99sI@Snhu1Dh(4pJx#bWP4ko!|syAlB00;iM55ZvWy( ziYAdw7m=@(ksSqw5Wsq#hM*@oPzocsW(N*vWW%y}lhByArdoK1N@{iMX@xNg!U5`t z7pl60m4KM2BH3H6Bo27#T-0Lq(8mOZ0Et0Y4w#~E2Kk^a!wrO!ogkolxffxH8C@Jf zszV@|vAB`MfgEC?dB#Bfq`8}lz?$8Fg9C#@@OMpe0%eN8ekFUHgGUI)l(L#2o*n{? z5bK_d$Bo|e-U={tOl}+>I0EXy4O%KeUa$;WO4H&x4U8{?AmC<)7H9o=uDk#NDkORa zIzE)p!azh~J3KZ5qH&=cISIQi1ZrtRB&4<%FS?No3_^rAPIUOY2LJ0L3_*EG zI+6*bIvjwOl+l(Xptzzd@@Ccn1VBikK!763znVvk&cLQWgbS@IJjH0oi}H!vHf*C9 z7IwO``sAlm1XT#cI7|Wzv?(ZSoR`>U8u-F^;%ZtHDkn^5IY_3JPO6cVqg}58fOU1S z`pmG@WO^poGb)xh7TH|RCjg@B#UjsjwZIL6QU(?PH8O5&n!>J$PcoUo4AOfNn~Ejr z`q1xMRvl{%OQx^=`yc-$o)pl8$LXP+0c!%S#bzo;HA0jW)fb+oLT*w9s3SKkTT6Wg z9EqU_MCXhwpovE7|3t_L;r7G>ASfhHs6wE6(R%>^!cRgd0In&Rq5ld=&qWrFOn?A2 zT1a(_7h|@ey|x)+r~8Z(KDdcS8q=kWi|4?I=6hjNLI~Dn*H~~`tee_=q577?5YhD_ z&ghqYaZEO?^d?UC983izjK5fL4&nfg7R(T;!-*8Y0(Kc=hQLbshd@pmaW<5n-}5Gz z97P$j8QqC7B^XaFWej>oJep(49&8-O@n8(nCqiOFXK?T4B#rR}nfS<{k0!$HB(J0M zT)KJzX9CuqD_~CXAUiF|Z~Ug8dUYxjf6FlU31G-!qs!#nVIFf&&p}?;4{}3~5o0)l z^@`!>+yI`&x7BtErv9O0G$GDPxy|4Xu1u?jH|k`bE&z9G0#G_7d_x1WZts>%{5UcJ zkg6hu9(_iscZ_~TUQ7m3Uzp9G+ZoH_pUWCHSiBxIBsw5k=0g8 zx4NFX335va${zyV;yP#>7{L)$8CYr|5-8Lta^wPhLWo#P1`1UMz>)zA+<^uwQlyY! z!jUc+qhM7CnlFI{r%|1?dthx9G}%#aKYcI-3S-BOUkRCVw#x+#>mJljE+Hk92#2#> za9LnY zB&-mi3@Ko+lLZRMZarar~8g3VQ;b2wb$fs2k%{|uz2kB|SQE{1^ zC_`~%jZuMx#cV=BO4WVmosBi(c%zOvj{hMANv)}upM+b0BF=A*4NwSlmCa|G7EKU< zlnf6HGRP$|gcHC60gfPo3@C4Vu&F}ycy|RmMx-T-xWnY@IV4)xTs$? z9Wxqo8Vm0zYd_inhtgEdS@M0X~gwg3YV#g$2 zgDJE56cJKg;>4G7hbya`vN#KwT$rgNcBHWk9(yFR&L8ufvvD>T)AABpL{XI&2{z#Z z3@J2$+XWOra1?Z49h~d0tx>ZS&RZ9kFc#1H9QLjmgiZ6N99WxnHr8gqEo9!J+a|f= z(p~P`=N^&36_o{f-x+B~cP-z61J1XK?G)wPD+CnnsuulGvXAGWt!k=5AI^Z%avw-W9c{H=Bdpdgo$pwV85XvkAFLcW&_fDyn z5$Z{qugcrrar3o1ucz19DF5+gf<|a&NED%@q5Ba^n>K*eUU=O=XS^E2R65A?t%>_t z!=E2*qLY2b^UkJIZF;8auLT61-S2%(iI?S;0rTTefTb+;DN;f3ff9@$1s%wM zPhId%u|Z0MtUx<>rGtYa!~zFPmpHp6i4YFRSHH|eur5^27+wpD1emb^2!IYbB-~-> zCMK32h9!tV#DeJ7F+?Hu&>2F!0#X|AKmUNmh(fFa7POVKJ$6DXvQCA!%_$E6B~;lgTMqv0Rw;{a){!Erln6T5Lm!}q$tKeo-vT36C@$gC<8w7 zu>oHY>%L8U!rni!eqtsjIk?@6f%hNf*#pC=qzSFGn!BP zVf2{Uk>#~Zn$^^%HGj2CY-)j(D~MAel_*7R*vBKID@p-LD7&s!uVQ4PhzY2IaU|A5 z8ZS|Q|L+2pyip7v}LNJ;0` zY)Tn2{8Y`fAA`V(nnuCKUX_?8CWxX>~T1zcApSjM!eWbL{Y)u9p zfWxN&O_wEQCT*eF*pQ)twXhZLvp~70mc}U>e3V8+8)~rT7U#Jvg>G{V=2Cb))PC2c z?nF~s#OY3Sb>?GbR9ad^jQv)Ip#<+?JSw=B8dMuK{n%1K#|(9e)l^j=8`p#iNwFqX zXQy4NQUBY8R01OysKJFwOrw!tr8*;Xlq%v zM;uxvve9V=Tt(>&ygpXNe7oz2)wb95$~eX(-o~5|W~KuyfIT|)+pbOwy4Ms=px26D zhIw4XcIo&E|7(Dd`zkmgS++8sO&P%IEJH|Uh_qYG9GzLqylLqNxo0p_17-@}gnGDMOhFEN9?f15 zzSz>}f#{{VTfhxIxeH$N;)KKSTZA#CZQCNCm z;V-6UP3;I}6H{ZtHZ#T;)?*l0tc+cBZJvhP8b=3*9jr_e;kw@{dsuOGD~@^!m6kZ+d}yrtWyzO&5eeIKP`0*XT|{_kV?N!+{&KChI+gv zTMC#Dbjc*DnNM5i%d&aPItOQo3^}28dG0B(tsOO7o{j&>{EH>x`EQrV5#C0(;)U*5 zF`_A=t6vzQMUhyFTgskn_Zy)9JSngVXkGXk(3qWODP?Fac3UZ|yf0->D$|&`fd7JY zI3Dlk*yCwXg|U_G!S!3Vc!tgqk{ha2tfb6)JyB^F)!9r%U2fCOY@c1D+7G*x#G!(- zbs!!w(TT?%8z4|i@7;(;p=~^u8aQ_sHN=+v)g*nGx}!|YPyb=Km3wd3Xuw#q8s7U` zaTDsy8+Mq-_ox}3>+(&`IK$c4Q92!n3*J2&$)Z5}|JH`#A{ zdkUY%n5)^c2Z-K}e^`2n?wm_2!|G=b`!!XqwGrK~j7jD!Kqm#1KOvy)IbPXm+Sx%@ z+UZ|KK?Pm~-mO?m=?s$(^$_1JNybDVC!k5lXjPuQ)Sh5eWkAgyC0#P@)c=T#)eA0L z&P39DVP3n`4EuFN4z^v}1t6EDPtA~-Q`z8A`OGF!jccHX7Qmnm4q+1};SSnh4?dw2 z){KQr;ZIQ^6iU|Wm>43N-X%p1R%sbrxkP1nREr&)@8wlKA>81wTpAwSY~&VQNz7!m zp`6s-iz&qz^5Ivm|QB!z9nmrx)QDU3zT(+cH zn{h(@RNeh3#nkECF{#70aTAJ+pCxAEDMHUCs-o5H6)Kw9NI8)Wso=u#nXkc`udN*e z>Y}?CMK87#;&7DcMHEs5UfFR3tKn4x9tu%Y86(9!qyH{Khy<`3l>yPR z#30VZlMw!mI0_vWrk;<5AR2rdI~@~IeWTQnjSog*xm{njFri8{2s9;?vcX`2VS{aD z4z`(`*v*t6uGkhtUxp+k!W7Oq(#b8Q4@bnqB&B0=L4X~q+`$kN^1)eS>5#2W+!o|v zMQYcT8ACvt-Xw9sJuwB%QC&72T2U|^JGr7mn&2@_MhOvM7uBOCWPvMk+bVA2OoE$3 z;*|#l*E2}ixXI+qU;`o*;9Fr5`2gQRiQukiLr-oU;n`$S7)&uJl!2^A(*B?V&ckz(4VF_EJ>z6kS?37OzlN-dc;Eu>&tqyfTG z?Lj~R+)y4$!=FWs1g1&Cb>&31=EUSs1HdNeEZpqbCg}hTR{h&h$)lLmB!={sYVJt~ zxe|1C5Y#Ng6b(r`=HJyok7`DebVg@VC_@8i(FmSFb~4Opk{!dmR7YY1Njm3xh+2Gh z0Y!?W-jS0u$Xc3g-h0aDI>@I+*41SQ3CK;w^ ziL9uZ%;%)d-s*TLbX=RZQD~kykBQD2fAyIrK+iM$4f+@ZklhTNNr-O=CXyy+^o*iU zE)0wy<$$JRgS3O3H6wv?DVbCnE;fuR?ALon(nDz-ahPFPZo$)l-o6#Xa$T4&f+gqZ z;*lcOnOY^BVpZsT0SLlF0jZU|!&z%aUx(_6F4*f`^8BUCxp&0-9XU7$hNXf?h zm0|p8*;6EAG|ZAFNt~}Pt5)vetwJk8LaPZ;2LG{ID?;jK7qD38nNYJHQUT~2vqmdE zt<}E`>$&o3$ULjGva7gKD;dITvu0}==wXQ{fvnQ$d0V67K6-&-Pl2c%HnKT%BJYp>@e+-fBfbw^%EE(t1WJU(ZUi* za^27RQ_3pE&K}^#@f~YUZPnUr_o1l7d7pp!9qWN@^{L*)gsrwP=22W`cWTk4Cd}4) z-`9{N%#8{I&~4ogi?P^c*~(hinC)Ra!2cR0fZf(@0*u#S39DuN(rp>n7Oc@482|$y z0OT@&0kF|Vc_(x-ZDp8`rQB`cHc;N4sZs<{=%T1LR<5z2?g1c&+m5c=y6&s4MukyptH~F9>;`uzN)ym7mXYKE7=dE!3lUTgO+A@hNq|Y<1tQRe5e)Bb z$cVYvg(*~TzQ)GvrG+WLO%sF(>TH~co{p}xqHx`&Dwz^uE#^(pDK>ac0zB>?0K^{z zM?28YB4QLfOaJTLM#Cr2tpd2mUQn+7W(Wzf=l{kqAaSrT+1_Scs%)=@&cVd3Hjs=XkU$BP01E7I z50^kcTtdGL-jG}XeMA5T=&%m+a1vX<1Zc!rXiUPW2#IAvJ_NuU_<|Dqa0$=?0ti3> z&@gVeLIGev2!sF$nDH5#abE-gF&G1jUBeO>02-Sy9iMR%YsB%9$%y_SD!s}@395H|c zYyd7B$Tu5^EfWGoh~9n;)&cNNI@7T?)51=4GCLQ-9BnTeBtQ`y!63jg`x0;1>`ef9DwCu*TonC0@N}ZAIJ&;wp{eJ1%yICkCdN) zLle-55D>ypr?Ey%2B3a{GJwNq2TFF#LMNNCRoD?e$xl}LqloNfIfnEZaMAfbrvd8{ zoN2%jNWdc>2wh;s6euzZgurBfg-zuQ2Uzh55H}IHC11?+Gu zPXSgOz!aQvDu;koQ1&{|M{tA$R0jtF?8J6|aj!(13tDj?^v-t-L3lH=Rk$%_v`$g< z9*zztM@GeX!Eq@8pWCH%of?65bFl?XZ)5xgDiilzHwf|C;T9wSIMlQ^`-NlR#ZdEb zF@y1`BwT}FM*jpnvP~=jIS>IH*s^MaWSmG$Viy8k{B9uJ!Yph!g`c2Al8lwyMW853 zBv=3sU&7{a0-1OymHJkZLIp=>Lp+3Pwsa}Nl8{Ojz;`16284JNBuIx8LQR*zEf~NW zWz#)5i_ngNO&7u!e|c7jLSBC=BbO?+=mfNQS`^OVNdI?Ox7$`wQAa5ZM^>ovD0d&;;tqrF=N1&2m z3S%Jb)@rE1@EaGw7_4&%)HvNhfp~8SQLGD0aSNtzx0j0xpg%GwfUyd1LCHiyhz|j| zjDe!ty8oB&w?NN20z~>qlng<80~Bny5K!;nQGguFLa_S<_@YZUAc6z%`4}{TMjp&; zS8C0?o9BTH2?{H8I1#+I?)-fL;Zj8eV6v@~fo~)MW9I!b8T+b*Z zK?2BvO_MMJfwV`6$`k|!CZm8&6oH5HPM~vfJUft@+6n!p^EMMVqlY|v3_+OVa$rco zov>1(G5jYuf=zS!ijTtY%6ZA>Z=?11Yo$(9oaTiT_%;0P?j_Ofp2_1>J3nOct(O84 zKmjIu07bJqL-P$cK!#j|`hh_F)r&6_@Gvp+#sCmS;N%0KpEk3fdnr^qwBK}xSNJ-V z4F43gH!fql*<(6Ud-I04F)M)m7$EcxgS^?Jy90D}7rXN2#Cw|T*^~3Ke~<00P(Wwo z(89{VKp#LM;CIPGyi+4V0l+~HH@KB3fomy&*cbWCuaN13Z#pCKPE&M6mqC+kO&EmzPar=L z=&x?erK+17a@dkv9_@)yT7O!IJsUtx(1IB&u>%+iW0(TBFY#2X@U0u!4$l!3zV5P0C z)svy1kl5|ToxI@PJ6LGgwcX>8Nf-chv}i&>v4E1A8cUJIo*Fo;#Y_(pTo+RnC~ zLQnvaW_xx(2s?#Mu)=T*VUnhX^F-i)1PUk5B7mVViNd{dOQMxP-fETP;wouWcAS6S~3o|t!YZa3guLlqoNZ=^}f&`TidhrVS zKn4T|4S=@9X+^=7eN^j&0I?yfMJ6W)Rkc6>LCu654Q!}thlz)MTeWgsv;QP56b5`| z$}r%7Yp69^wzvhwP2WW*3HOXc5FxEYzaT(hAke8?S_cH`PI~Z$>mY|!9Xk-f>6+ZC zZy1=eS+f?bTCX@cXlj%YYGvv_1n`Drn!oU2hKPI?Ppn@T48V^XnzUr#UL#7a5K{K})uPzFTbim8yLeMfIYs}c- z$$iFC04NbRtjRT5VlgyPmJ~&F(Hfy^lmo*WAm)GuAOP{G4_h&`B?%7&HBlKVm;jo- zf*hofz6yG>2{yKvpn^q9P4iVdT+N~owWwni0|_h0XI1JL6BZsda9yv0SoX-LD^=|v zK~*IplcSwlPlE3iQqMcps#Cd;!V1NBU2lS19F6o)nTTX}U3bZPH?<5@s%=iyh>)Pt z1r8uesD49)mn^$CjY4O%HlMJ_|0K0h``_q z_d}B! z>ePPQZMW}E*#Zo_MjINnRn7bDOuAJff>)S*67PqWyeI<2;;t{&+A`3Y?=0Wm2MM%} z?AzQ3T?0^Qq-&%ND%B@heG-6)qVxb_hDx#D2Phy^M%{s`?LyXBzpbT()y{I8uUU=RHa>dD8BUxJAx4h)9O;oq@8RmasBMphpZ`A|a+n{6RZh&EXBhe=+1gIy zM?l=vmf3*A-*uHP<-e(3=ENOR7!@j(cxrL9kVPsgkObmnAwB6S7DRBwyxKTmT*!K0 zdf4zRQ8bMMNDy4Eke9)2h>$xDpx_0N;HZD1?X_ag`w4BfmSl13m=je78b;U z`2%7Q_pq-5>^|rr;~q*VKPaS-X5M?74BogT8Dwt@?7*1@GBXwOZDSJ1+e6LL z7)3_n1Omh;hEY~D8>En}HPB(CaK=R-=v~p1SpO{H28RWOO+}|2d}G6LKKaSxh_XS6 z`3`KvL&XM4W0j!Xq7%B64GOZ6K6u+(Dv!4Z(0vIC0Gf$(G}k>XAt#X>qe~;Dxe5{y zB^WK46Hsmk#S1VI6~7Q-g;?`)m4q@oA};17X3pvUqVuLOHQ2ix5=RtCWzERNTV= z&BB!o1d1J{K5GjHF+f5W;-+gs3p)`dX8#+!k<&exg=9g!)m1$zgP74{q$5>PFjxU0 zwyKqhcWGq1R-uv`F?0}0ZK?@R714FZ35s2P00YDm&wKI>S$)B)9pdx=r6?q@Wm1Du zuZ1hMk@XRfV88=@L024+W-t-_(Ifo2k-$R2I{GjbXwyJZ2V}OfXO-sEfP)mEOh}q7 zy#+gl*B4RtRtr9*=znM-9=npux32scB)+&-c4QQlyxnUPKI$NFg3${Mvd(eW^U-XG zbQM!{nLhT~+mDJC0kVSaNP+TKWDsR35PC^CGvpE*jYkk^@t(viiz6t&hZVw!5}G)M zM)UC3yY)H@alJs5s^oVceVmwb5C81WSzaQ31h!d}>R1Z^TaYs@b8sJ{gxQ3qw~^PR zjRttJfMVblh@nEpD{dkcy9P#=tWqvQ4#*1FR3aOt!bDJ6m5q7CvVOcs2rT3ymHX<| zSjwHpoR-C@8qrt@HYQhJi`+F@fQJDKtQUZH6~|RE!Xl0ThhDfJ6g`HX%}Tgd}hxpj4N2ykYSIg5hFTWI!0X z_?p?20W}C26#+6Bak3#HMgJ>6$ZJS5vXX;g0I?if*&3E27+4)5ubl!ZyAE3s<}t-< z%i|4E23Tx>LF{oj8rkJm;~W0qY)Ks>7ZSjbwBPv#`(8WV+O~;pgmKa~v-hms%oj0u zw-eh@Y5^*-S9{&d2O8yWOfn*a8O&e+D0G}1lg6_F2DR=PT|nat{kX>~s&V+zNEa!> z9fmS(1b(Od<9IfMy*M-p5iR88Huw0U@tlARA)FF|D*4Gd4s>>aLF1#VNs8$A>I(qS zU{}A*EsjDS}#0TD3eFzbslPc1s;=l%00t|=%-u0e$ z!PXsJvtd*>Gb`A-3jY=onEk^aDy??4Ptsl#_(KAOGfM?fe)0)mtc)GSy16q}@{+GS zpbn1!21woj&d#R2|97-(mj26z7k%Xg8~M|)z8CS?dhX*6A|%?*_xNTw5+At$O!eOQ z{(8Wh_hl*4`d$_O;=S){XO#HF>q17uzPnO^uy*a@_}`a4^1}~)Bu1!cGGQI|=jD6a zji3Ec97^=b?|$$XpZ*KaX4QSIe+XsM6-m1ZSkM3! zWI`$A04uD*0la_@fWj}-LNI(nA@IU5G(#~|!YMRDG-Sgw6aiUq!!|_252S!Hl*2f5 z!YR~1JiJ3B903vd!$1VYK@`M7B*a4$#8~h{L}WxmbVNpcLn(a3No>SQ906D007}$E zOC-b(hy@Yg#7)#hFU$Zh6va@i#5dG{4>-kEL_|-_08n&AQM5xo6afuf#ViCv3DE#s zM8Z|XMJlu&Kp9Oh!c%!w-lF4b(+GOvY!dMks_1V)R83-~eRo zMKJupvHwv|JWJRUf19_~+c?^f|U`2eK z$APRzeUyQKBuEjEjqf1Hdu&L0R7lsz#D45Y4U`Rsq)3d^NLIASSJ=ov{6MGiLxIdl zd<=&!EXhCALs%fmkEF!i3NBCUvtgTEGY_T6cx+OS>qSjc+KDROh|DB7$i*!P`K6{PReAv*o+P0 ztWD^^&F0ht$}F+!69+DvExYosFQK6&L{+s2{*uIQI0;*olwn`_B0s zPkf^Zgd5MIFrqohPwu2op}4yKq#Xz-B7D;({}j-EA(8|2&V5+`f%DD;tSpg1!02dg6qyJDe z7ERH7`H8Vp(I3^(qu|jv1JWY((G@+B18C7DP0=G=5lV3iCuLIKkkZ^BzADAhdpnBR zT+$?+Qr_q)DoxS(BUASy2Kj@(703VqkOB3)Kk!S^Hs;E;cGuU#ZyR{ z(?9LK7d@gm#TPUsKRqQ>LmfY-DAF%w(l@)5uWL#PSb+}^00DS_%XHKf9X_X!q)i1? zUXUHE3Dr`ilmcLiuWQs*^$jRx)KX>D+^`g(_)gP*-2FmZB}ZXhyo}gYMoCIsaE7`fB+bP0{>7rZ6#On zQ;7l?Rt)Xdb^T8ejaE3*);)+nV5QFm2moxIRcb9!XDteTS+8AC)qtg~fdyC=c>r{k z9j6e|8NE~vFagU{F@pWqiQNSVxL4g!RUwsFfn8FS2-hM~(iO?rA|2V@V1@xm0JGcJ zl`YtorPyb^SmM*zmIV=E;Mj=`*pFqgB`Vq9&{CXb*^^D#q414>?W&v2SO?XYrB&Ld zW!j}ZfN%xZ0dU%VSpgAPfnJ0G6OhWMty*G`+C&&tuO-{BZCY#{)@Uu;wKdyHiQ0(> z*S3{gwhh|>7~8qUTYU-Fw7pxl^;@MySGWb)yv^IcHCzWpTZHvm%l}LP7Z3m#kO9K2 zl)w$w!?oPE)mh6W+`UEDl$Bh`rQE*#+_lAAY#rUrrCiU|+_FVnbp71HWm<6+SE#ky z14w}sSb!85n-n111Atw`^+R8oMrw!f$P~8Q{T*CcbeUaV1b=}ML+UJGcs1@DS zT|U`O-sSz<=FMK;OnO@QL)j6yjUorl?IzA-?!Mk@St<^c_}IrGOJL zffQH)7x0Psy&8wB-}-Ie^*xb^Fp>Y2-v$0(NOIq+QD6FfQM-j;_Kn~HHX;kI;0ONS zi@jhDZr`$tqzX>p0Y23MC}9x3U;%z$0B+&^8 zIyK-Ep_E}2;s7?{B90ySMdBmAngfW|0EPePa0KBnU=ZVKf^ z-Ve^<_yuA^e!%v{R#Y`$2tH&MK4cn3*ZG~~9CqLtzGUmYgDec56~e&s}VAB1UEwE23yVkwp0AI+mSfmSZ?hfMRZDJpX>?W8P!sqvk#?=Y+i)7UNv> zWndqkU={=5`IUiq7T1sM;duUG3chCsmK~|>=6$~B+I``D#@qww=61&CN5WQsu3+Vb zW3zK-ACBQi-e(ZS+!9XchOXU=#%Ij+V}_pJR0e587FTd(XO3Rrs2yPwNn22UpNZpP!5 zPGf3T<|6Lrz_pYz=4yDJTnZN8u!bZ;)>%L{Yq5UYu0CsGNL-XvYq5sskA>^CrrbDw z>#i1GHNNYz)Q3|zy@T_b!)+%YeL>?!~f>$&|PcAezVSPY_l$1zZUDxEn}H} z>deOM&DQMB=Iqb*?9c}7(H8B}ChgNU?bJr?)mH7+X6@H@?bwFx*?wxct=nt8?Wwix z-PY}U&F%Z`?ZEAA;3jUV74G8ZZR8&A-)8RQHty#3ZRf^q=?-q_R_^15ZtSM+>$dLa z-tO-H?&)4`@wQv)J>Hux@AEcq>b=(WR_~}KR`-@~_)hQnChGULZ}@&!{624R&F}S2 z1bof!spaqaCh+{`+y6fAFfQ=pZSMvL@OxG81BdY7ZCk~CUCW-^v>sgyr(4s#T;gS0 zv<+Xp{n!$JS`Pb;d+#}E407vpC7jorQ^74*y-&JNNH}WT!>DtBe;AQYEuks|{+b~b?Fn@A1 z_U$eQ*$0PmFgNBc&*nD&@pN_bBQIODy6pXQ739ZC-va%=lD+b z*;Vx)zlQxT_2U)WS$FkY&t^!UU0fe^9k=yXxAH~c^;f6xU;p(*Nbg@K@>d^rS6>9R zW%f9KaAS{llDLLu&t@IR_EIP8y8rI>Z})b}OGc8B+N z7mawQcXLPfddGLdp7(ao_qx8|?v6*-Jtyyf7j7l@c#c2rd+&JQwsw^_d5$M};a2LACwK9N`R4}o zkjL$LFL{~|+n%oZEx%TjuX&!g_K@HBmEZZKKXsOmdEeIgp-+0uCTh`W_=Lx78OZF5 zk9g4D1J1Vk)Yf{Le&(!)_^%&;Js|t44{fZ+?63!Witp*JPkVwld$e!+vajuN7kI+H z`EHj1e^>XtFM7WZXQ}ObeE$dd!0q~hzjndDcf#HSaZmh!2YJ5-{OET4z*qdjUwXke z{F&d|$lu$2&-cntcf8;1R3Lk^FYSw01+S-jxK9PxSNqhTgt@0}t5^NIXMNJv`q{_* zg3oMK2>yweX{A&f>$wV&t5*9IuK zRcM%~xX9S(g~(JD0Q-4Fi8gs)Q+bD;!KbY+Q_dtenie?A!|*Ej>-$I(vE@^=kUGy^Rf??c}Xpt@KSOjn1|{ z*6x-iBd<0;iZxI9DsSms-+hm29Kdpn{J}BE2cf%n=NLA0SV^I)coHN1*_RJs#UlFl z{nNNH)NIJ90aL3|y=pZp)~#Cias8?_ELf`Y#)>^_wk+DUX1C63%a*OzxNy_Ts7n{^ z+q`HR1O*BJG5{<90000i0S*BG2LC{ra7Zi~kI3ZlqHG$O#0rt(tXi+wtP`Te zKD#va__KOsKWFy1Tr+zQ4f1!o$7^zInvS z%F9Wy%+JcW(9_h_*4Nl_4}yf*-pbB08nq3eN8R7)>g(*oU*=8D4ej*xoaI>I_WNw; zeVy=v1>`4?puvN61|nR@aEQK!5F<*AsBogii$^MA+{m$`L5*WTdffPBq{)*gE&7wR zGNsEWy5vpuu|l*l|GLvMDW#I$HoZ_*%%p%wM%FrVL? z1}%9KK@kN)z*-enwFp;i7dVWib5>8;G>C{`Kte#3QYC_RF4Jpm=$W`Y*Y4vBX@lUy zox~zW>|ilNzi;TwbjzLq9zl|gS8oIB?nH+3IXDE zk=6!DKMQT!F=4bpRUeD25BKjI4Yb@jXDhk_6X_bFPG5>4>i~)jl|Cuu0GTvq30A@$n_extr zpjY5ajqHcSQHmsIi5mxsDQF`0krXefk27Eaj71inB>Q#Qx3 zL!T0j%|#;-J1P@fD-t%uU>Qex0^v9va+lv3Pu2sXjH|>bi~rM^&&M1 z))K;rSqLgbTX$L!r!`uRgxdp>vbl?-a%75znOFEB1)y}edBBKfpm}H3%5rk+0MAr zv?~$54E-oXylFtZkXJ}Z;HG;^jnbh;4D-q=l^x4<61w*6+RK{Q1bh-GsLqC3qnIiY zvJfhZ1_!}Mv}}aV*91gnFF5CW&CjXDY{tw0vf{7MOpj5s7MMMa7_F8N&5%Y44}tJH zR1abG5Du5|b<@1S3{B8vC2=f8rI<}~5?f2ubu}POWyWNUcD(dhSqrguJ$6eHwh?>h zImX%>QJhZTLmb<8FpvMjvk;13B1E}LU|u6I{Mxj=cUP0)ySDkHl7s*uKqvx+-diZr zgwU%RIw)wU0s_*dsiAiSq}xL8y%#0)sse%{f(AvZ1rZP{FTXwS%Rww$;Ma8 z$jR{6<~^8W+K7!TUc^YGf>;Y^ zaART&RI&+%YodUm{=Hk=YhZ!<0P39QATEarh3en`k#=H7_*N2&B?2H~CQMH#x5alWnK9;QN-m6=GP z2#ZJa?i4^7>vlnPrNoDhNpRhkVvxZ!yl^@{ewQ+ZVmMjY$x8-dWi1hmeL`FoB(Up8 z1y+bE1!;+ofggGEu`dp@((hTSq({|cMG zEL{giUEZF%5<#v2k5dRDO@L>F>qA1-vRW@t6`6g9h1Zy3&qqAXJ_$haBoL!D#a2E6 zpM)S&0H{BRtBVeX9mUvj2M&lrrSCnY=%F7_qZyUR4Tl%Kk?TcZ?)#J^?-c+fMT~|( z>EOvIiujL8#_TL>_@j11ix>E(lGx(X`eGs+OB-8~wt+$AiLNGO0Mf>O@`K;CcPCq+ z(3I>UV+^TZ!CH-dL95&Vd^#QzeWf86CT$aqx}`SE0ms9pq={gD;!p+XCC8VoD)ixY z94d|qm32S%GIOmN{8$0NrNn6fyq85Z&ZDcICW+rY(1GH~I?U_<_+y2z8?cpwJ(ED zd{Z~~UY52G1=tWJu#*!HmWhY5sRA%E&4at?HO!zGKs@^d5*X!}IOMA5#a!hRobFb* zC>kFkw(HD*CxSLYC?I~a9aon_;UnUXoQ%IGd{bC(Ox@GS#qF%rnis%|5iC3w!<u5=VoL)b9p7x>X6`Yqi?#}FunWzIG@>Ixf#tj&T zOu4W@N`?A|zzMYI2bK`2Rnd{f?28H2!AthwBw|(8*;gRz_F;@%09aRz(mhGJ(_bHQ zeXp!z0GR2zMIf`m10?jGrE%pnG+J5$sjI#IfU3HDPqJs!eXEMdGQ46(Vp8J zlI+(?j2L@G^0^>M^{q_gw0n&d&}9W0>Q!RJ#SNu&_n8B!K9}P_lQl<9n86@PwW(t% z!y@%jj!v=_5F%rG_RimR8Vt2_y|#{*$BENce1k_f>P#OicN4M_QDB47BIN{WyVf^n zr1zbQUTdJMpVC4!PTtc6OQ8io>==Vkhu4#wEC8Z)^5-lI5%Q-axn7_+f&=ccAS7ilP8~9~eYHT7Lg#5`Mhe`0f@7;r%ru zB~9$#@@rlnc3=#tbm4qEeh%!JwRDqlMkQH>{?y3g$TNoq@jjP;1$7?0@6@$Xl0ODV zWm2{|18qGlm8cg=TrSJSaNe8*vTer+&Zt)Pd1)sz0rLR^EZ3U~Nn%T^~V6uf#m*!w^ z2BOcthB~~?@xtVuqu)LDCBdz#8C|!$jQynz^kG60GWAV&8JbmWmweuoCngRZR?^$vger<&zUvRmG=k=vz*E#1 zL${E+;ZS5#zJ58wuUzL#o6v}LRu3d{pd(lLdx4#Q!33$O8&lvxPiI*Z>>eyUcQOJX z!Ehq=aoxROgW;bDhdYiIj1r*FU#ECs_|0ci8tz9`{Z=9~ zjJ&(j#h*!fV1y5Rh$(zPyYE0R`Xl)8p(@)GHR#(dXvPNg{uqPyklbD&7E}cPl*}}d zOC1k_-7sP~cKTizIODY&e$jCEkv-;t(kS}v2Zo7n3U2S^cPH-swU9SyqGlK=^n^nX zt6d{?(N~K@N;zw!f!_q{p`#8RL&Kf`>;_Z4Bn!}tspHMO$9QUdjn9=^DXeGhK8o}iI zv+UR)v&Ml~b6F4CS{O1!uF|(;YF4kfg+i_pYwa-AM!VKCOV9vG$lQ{<2c2_Hq236< z74e`~ua;C(L6?i54|;0R(UQv-k=?&IMor-wC6&wDRGS&oS3M1JNVKbiqdTeo-a(4- zZo}@$UaX6pn?-r;nYEuKkvE8qZS*FC-TK~HB;zH9r4ltw9tF8Fh8N=uZ$Pk%#*e)G zaV`VEBjFa!pVa%L23z?XPNw;+ZCdY~%MTF94kdWy#A$3T>@)>_wikC=zV7rZj3Bkn z2;XKKed052tHamqE1}F85f;77?@gIZ@3C0@Mr)fvtHwc>enS}|VGgw*o8QUD6cZHR z8<^5-VYMBo*F9#M2%>nFr#o0DV$Cp&5fQ}AH7uV$g6(i`qUzJZJx!g4wG678TAZ_0 zfx8_t;ZP;1)<{gZF@O@%?KUKL`84Ia3s|Pi*u{|vT@=*yRc-d*9z*$_5+G-e+S8+( z;~>^W*=;AtgY9~eE!SAmBD>BM_6E~?Tl|X^L45%;0N~cAOX)Kp+oS}VwZG`omrobp z={V82#ZdbeBcYR*pkuX<$9_MaIQ7__@|fP+mmvjtrvGFj^2vJ*hEG$y*4fRwy_n%C z^npfy?I0MXvj+4bK5 z#PG=I*!T&6n11@~`ONIx{{bLgFTGh_dHasO`u@Y($MucP{{V>3U%u{s+xxzMaQNfs z=da&?{{A}#AShmAjAcv=f=$wKys3C7@dQBJH*P)w5L}Ah%j4hf#Ae|2Qs%kHYaMq) zt!f-6TFR&LQMJ1`!^nq!6 zjZL^nqc=yXbM31}@=yw&Sx4RLR?inTPE)q1_zwRMlMl=~8&-P5zHhHgbvC~1r$89_ z&AXabhmzQ&E>GKACXZ%Xb)=-V0UtXcvMd~!t1TW>xK=9vxt_MI7gbh`;nYLj6jpDM zE(++LaY?h3ISnK5LB#*fN*+oXFx?LKIv#S%~a8QV$GBV_e zfEbQUGLvp20y75~4yr3w6FQ@awlD^+$;@I0tcoWhnEfms1jRNb;Vmd0Yox!ls+Wc(>v#{56Wz&w0gWmz5~$!wmC2k$)h3ttR1W`SpTDQzz9}5?&^kI^M;AMl_Lvy&Y#)o@vu z$OxJnA7R2Jyabak#3G;Co>ci7-Ia1>L}K9!+=2P)e?^qyS4_o?@#*)&xKTWkoUC8& zn|u=GmX*%edHm}W8rwFOK<7gz&Tv0FBiHCK6#t1Qhf(19lhlO$CpWL>H&eCpf6P3# zdky)k7Do}?SYdb=$j-j`4p)p6AAqoFEgFOlc#Toxoydkl0#J^?#gTwjKCu$c(@B{n zm&7_Y-=`MmxHEf*gfM*2!$3j*oss&ThzepMuwXG*-GrD# z%1Lg>?AWZ6w^lY?C>V+5ymN9yUEt(q=V6C~xd<|a$g<+5W-2!iHx`LzLbGxS%Ml7$ z+VrtZ4K3pnp**GV!a}@=xSR~3Xqv#T%K`?)Oww1qIj1?XXaowyEG$l#Cm_)5+-vNd zEI%K-|MS=RBUn01e75AGvLH@!K?6gNVdO;qF}a^qj$<%|su-K;mRQ1=U_68V-_F4q zQpBwUokdTUo}%$2cJ{rJicD_-X;oro_3F?u0}M;HGO>1tGc!r%%3FSam5JrowB8nV zc1wU@GjJ=W-*jT(h{XvXQ(sY57GyngT;6gp27aLA|GWs76*%g z7#Cit-Pec*43($#AW$3;pAR{(@~|`xA$?8b8Iv!cH*Uc{d3?SIPu-EOb3H9c)%e5# zLbSn7&<)qa`CXq z$4dM*2ulQ(o8eT{3ahd1nO9qO$IxhO!g!)OE{6n0;vFl&2r={;kzMz`KN!KD;_1rI z8b<<$YU;WVIC!$kkEiR;u|~rLc9WbC0;+guh$j+o&9Z*d41)4@;bZfP%ZXgr6@BZE z1=s8|IarI+^YqV%WNmqHpI0I3LkaRt02VQhIoaiPxV7@@TpZtpbG;HS3p2XWUvHIIwderlOk+4D z-PFazy4G%a6T9j6Q_a5geCpWw(p$BT{Mxs#5=nd<6i@m3*G*M5LOdY1;}^w}Nw zXq&h@h(7bFsT!s2SO>=1`FtDUx?1;bl=sFb1*fGb>AgCZ|M`3YC(qY^-9gY&^>t?* z2_vr9YHlrImcr?AYs>suG5v~xY+IX6VMkmLnpAA2qdEOo}_j0P^;j7v9YOLY%({ax^!jovD z;@~GwFxOewTei8sA8=ndx^{FqXy5u^{F#XZ05UHiBX*j;=YM%Llz_PniW_fwub;}I zVA(hR?a^Qw-NZ37U4MF9n2!AtC1PMZ zSb9T?X(737Yp(oU=}G_e?gFXWwpDWBqK)V?!@4qYg9YTvyRpV)q+f!?1F{_$%jA)} zZZc28NaFgh_Xw-GXof^{gCkG>CW8bvDMJ(E8eyYr&VQS+7ue(<72L*#x6sac6buHV z)HqFLX3iO@h3Voh&|Qd)#D3g8-wxl(_EIccY0;U_e&0q{wr*A?FJC#oFY&xG)o!o# z##}XP+SPZR6?2JEk7YWPe!QRSPtErnmZx38ePz|@nG4}V5uV0LD!w}%B?#*eR}^~b zO>I$_4Pw4o{n;(U;zP2)B>CJp{FGI!LpI*>-`3%L%*4@#jU@)Gdkm$ZbP`Fjq@$9z zc7f0s61%r19WR}hq1&gm+}ITi{g_V!jQ!>+pZ%3JqWc$tPfhLkhpl$3)SfjN#3G zD|F9Y_92YUHH0&U>XP&1lnXs7uAMI{a9Gd3s>C_UD)nY|vXyB}cxtAU)t8;!F)YA# zR*zi<+M1{Pjnc!cPo+Rm`lNPXy}ROEhoV9MEKYeVpC)Jl!6i+)cMv-I@Ck%fb=_$B+-9)kg9?TNSP( zWstC0WIgy4?a}S+3Jv*ze?Mcd>`3PIfJdL-{62*npfsP6SH;L)1BNoY{8cr^r=q4T zo;|y7$*{SiBgZ|Q7@H>_uaX?i>gzcK?rG=UTXE-on=C+}6*KcJH6?r^KRqW*YDTOz z25a~6?M8VLA%^s%9=7+J#+aCeXbQAOgKsOUvj=P`4R+MMi@|5=ev%<03JUeC$i{~4 zIkUW1HBHyO;~BV%STQeYL-N_K-1f`IyBW!PcMT7XtG7H?FCHuMVHD(ze>PvwjNd;k z@FRa5sW}V&=_oVobjF6f>XG=;lHZ&59;=4|FJw`m7nX@%{PL$I)d3J|l|#PeEO5hK zQT9wSOQW%asjy}vdbzn=^{U#ly}07bEP@-Bi$?>-swK$zYTP!|_yU^L^6;CLu-4}- zZA=`HeTpo|CPTgO&t#5L=t$*J6dzD8zI)Hi`=gKS>Un|s#ORD&4|x*o*-^m?ANz1qrg{n6;q9!Emf5Dc;wHOUtrryVc@n-;W;16 z@ph4mx7isTTC?i7ZGpjjkqB;j>!ngFD4V-*OGBs8CbUg+Ws($Q#~gBqgF{F1WRH;FfVx|s>HoC%%JjLiY+R9$v2Q=o}M(8clj5GmFAm)z?WD#iYF0-B}JpGpC;k} z9rNp#KoDL$NUo?DyXG()@wTiK=9RF&pBg&4&*B&M&LeO|ndE`5@D?C<4e)v#i!CO8a#@9KA`7M(1K600S zO_0ryC>nBtzGLa;2#CbP%<50*4KESi2*i7FX7p4~D*vmY-6zCBKYBWqC z9&c$cNKimX;9gj}K42SYzxgiKt|;s~E# zG{c=QJYr!q2J4n2UF8+>W%B-kxIln)?8u2$&zf3cuIWT{M)lTa=916y4(UhqE-Yt4)d#ouW=wbrDkwt#Gtox-g#@ zs|qo_JUr5ieVm5N`>}IDl%h_n(mk{A#_hQYb(+JzxoE>I=2t@)_(T90>85uzXYc2Y zs9S5@LZ`?txw!_OF*d6K56)qpj>+nnVd6jR7Z%_lLq|*Umfjz#U5DR;YPDL4Mn>Dw zzwW%L;isjsV#fKu%8gwa=@JpCHs-sr@ZNFZfGo?UTR=Rwm^(RDP*rER`*;iSZpc#o zPs*s74phcuu%qKwy5~r@T-UEjq(zSfF=u{ocTy+MiSt3-oyCsCU-xIWg&w2BxlA1T*5gzja~%{Nc>jyvP`}#I^v&<)jCXnwQC;Dz36j#&O3Ew@7aFsjw;&AV1OuO+sc!u#c7 z%KB_~pOci6w9@7*=lM*vv-C%Q-j~{5EGu>Jei^iK7*x&%ngc7I(hH7IabOZRw_=a< z^Z*^V>P0ehh0F+_vm6lqlmp8CU`x-v{$bWrZR8?>#Nk4`9T*qdxGJ$hgk2v497@%L z?7U^*U`HXy>kWo5+Kt0BjsVPoMJ_Z44MLvOBH9e1AR0D z-2-%kg!ki`EI60i<*3=XVGxQNkhNpGqBZP$V582AhgiD<0WX<;+XQFE`>`zgZ6_!r zGSxZl6TgI7br(m@sxZfm-Zl`3!L)O=QKHboC`Ely9^+68)$7InzTiwPhggu^2jCPL z^iUOK7pwj%=0^Bc7A76gMH`LvR{>WHuH{=>Nx@PSlU(b#+)icQat`J9J0sWN7JA%6 zJ!_U}%1|OCRDi8hjyk)CJx@;K&^aBIgEh%As*Sb>k0Nezahc#W*vW~nl?!Z0HvAt%+i#U}bifa!Ru%dFm54e*Iiyy_J zshOI8J?|K1dV#kTNvts25S9hc^iof4E+Ggh9spx9Kut&+Jk*Zp_;22q&;$ylfCx0L z&sD}-2yGjoI1@x%_n`|%JeR>h{P(=uGM4OO?8saDFpWWkt^>c`7NbF-MLv}?%^9&B zfHQWudnX`g?3?BjdBP%A1B?M6BoFtzT+qo?C&uP9TcU9YdSl%8SWX1ShKJP(!8(K> zAwwBqw2T3^J2yA&yEdFV=@RMGn0*zG(t&*0Ey^4a z1F=U;SkLZ;^JW{V?1fsC=dyKs^E#xTE(KN!_$v!iJS9vBWaFIzZ9gydxQ*bzaE857 z<&R_9r+?h^IdFMiV8=h0ieuMhjJ+G&#(34)og|J`EalfAX!$m|`Tmevo<&}|0Xozx zqE_cRZh5_~mO&P9eC%Rd>&!UOr+svI_-{y=c_vT9L7hO;sC8fv^~!$i7Oi(=|ILbc zp)&cPAhRt8O>&zwgBWMyN}Bc0-Gr8 z9h-*5$K2Q4B@3JB`&KEZxwF_wGB}|#ms|;ebvBIsp4?X6FNrg{Rm!(+=u2O`Wo~RS zvKRMrCTyaFmr3NLX8{Zxo|O-PVcbp8?!^P|P4v`tQnI013idB_iyXRhABLtosb@J9 zQ99%^YVkHGQvQIVhWF&dPOCFtKjeLJc=WBn`@535ez3adw(%Y$DGzzp{JpTIvuDi> z=rbGN z-*3qip@9E7TgR)e<%z#NfjK+ij1M{4^^uu-x#xkqO4h3wgOBVF^*6M47BjA?-TQ3v z=-SVUt&0qSJon<=qm9KvsL?U4f{IdM@ZX_aKscTm%#pYk=^xAiQ%mq=H|%P%c!4}E zoWp>|D<6?uuu>}56cKne#~I-`sqVZlDDB$rngoVYQ3nR;C1uCE$%i>%O5I`MwD8B1 zvCnnXHu1jW1+_+&>@tc`=B5I{yH42(@JUa>OAa0|05O$-`|*t+smk%Z<5Zw9ZYK-X zHp8<>f|t+OH_7Yw)0#h_5T4swV%1DB~sv%?%edy*12c?v_%vL=W= z8WQ)LlL$PNx+`8q*Dwpo1Qx0sMsjjl{4+Q7>rw1Uz_+M%&j>X?jp>GEcailPE`U6{+yf1B=I7W>W zI*&eOlc8Il7(z!M;s7r8v5#!J!GF%C->Z3hgO->>>-2K%k#Otau^(p*iV+=qx@ux_ zaV$l8%z<*3-;yuHN9Tz01mr)6Ybpm}TvHv#@WbQRc4eBUs+G)(zp=XX8BJc(pRAdV z)VXIizLOV9Q~x^gaPri!!?ocVjXTG6dW|*FNd2!^5ah7E|AI*`gDXX8uRpAhB(>YxgHTu%r1xW+e{{T!hmFsLW2Rm8B zy?ehIb1b?M5Fg@~i=;404bms9Q}nJ`SIbpmTKr&3+Nzk)UY)7;DUC?>2fM_XWtLgf z2@fk}RFgNBtSsUUJcmD(V%75F)DYzB1(M=^Dr!Ug0d^8|6Kne!i$af|lb^j98pMWu zxY5rUqm8F4k&zu-SRB&Bh#_FKIx;li((RSIBffhmePHwvyyLnpfCf@l_mr#gQlrkj zU`y>e7nLYP^pP?ndjR*bBTzGqz*HFr{C2I8PYL+F91!J5y!FSXokv{ms(8Wsush!e z!#=idF=L1%e-GNM0 zc;6Ff<@X7{n%3u2JAGYsFK&rH&MG+nIDq*lmoM*bRls|I7BXlnU{)(-@9I) z{TF>#d6IT>EN+8CX7RD?65j(b5AAds-^pU#xd?8hJs^%ro6UbwL)74EEP$k&wA$c& zi6x@Hi!3!#Mb&LNssvd^Je=(T9KR zV3`Wv`$v|?KVNLnKCXL`=6_*f8gutZGeF$Ujl`9k*8R$R4S>*t@_#~cdv9Gj>`fBS zn{iWoJyjw!?IOVKmi`rN4F+4Cv0FYom6cAG-rZYK6_0E`Y_VjX&eKIotbjZ_EP4C= zkJ%zQeI<ujai>%W1Q>N5U}FpXV>%s{bl`ySy+8{%{#4pM7rav-z63 zc7nsrhEML5hx7Hn%uIaEFy&6$Un-ez?w6ISPF}cMugvwV#0UyKHJzZUgvv6CiPl+l zR4TmcK{~F=)U`KvyZiK_C|jK^sY|oeQ-ZxXiK614nRc1w!rCbZO|7iQKlj$$M7zKr zS z7ouEmJ1gUGC^%gGNIp*z*NGC7=Pl-=ax^qn7qf8op1~lvWT~N5zMb4XNMhL$)%R}_Jv4v9e^$CCCr zl5TVwV&Na3n&nd+s2(S43`cL7NfFvYDJOWt-K_dT+*=t?s4dEg$roU%VH4otyZ&Nt zPf}l>RMNMMkx0@%!^wv#l4T;}S>gmO%FJgYfx28M^VP_N!$LzPzR@=Sl7>^TYIHeB z(-}1I={oO|P6nX_NP45+JAVvUmAotj7R4>BS&tDjd)00)t?Fq!2u3hK;RRB+mc!Ig zXhE-X4jC}K-b4~r9j_A|+u$&3WKOt^P`Q)qriqX!2E{?(=tWu#Mz`s_h#Y)dFm9Vn zplB2cZ~FDlMZC`#{BZf(vq1+XX`_U(%Tga1KjoEPf8sg5^BEyHxpQ12CHpKjK&!M@~0F2bIv+ZM*bNV*sqMTrwyrieVCDE?+v(3}Lm84S}bSPLC{LBSg zBo>&_#Q4`6>dWvZ4Y8tQ?k4l1cruAqA2Nzw;2tKRm|kD~E`eGy*BuVg`B(;SM+i6R zhCr4b=W#XxUgk_=yiA@$Ak`(o)w{Zz6k%1!I)SlX=tI}>i2P#@lVOuf*l5cHBgpGc z(-Dj+)n1nSFpv_w0@OXXz_~P@7Nvw!xPrDUL-Q7hvP^5wrvvXczu0%2tkrE``$Agw z6PoTsHbB`e(h?;rXKzLP?dZEvQ(U@G*>-ovb9d6J5ht)Fm6VsV|9R4e>qF}3uuy{l zaMwX+j)fLHWPU)zN(znl-OBTy(cqTVd8&8koFb3jY{!oOAWL`aZuBdzE=h0!bxFmr z*3tUgHWSsF?$4cQ{02!LWyJ#^AdaAF^=4UoWHUuJNI)YKk?sBCrf5( z%$tPZpPlkGt5c5;2^$X4GShc|lJrp^Bi>S_OyV90EKW^tw{?cg=MulFp9{ z5ZrSzP*5!$c}76=m(wof{B|wHrskdbihqh|C#6NQdlDP@*pA^ zv0G-w^cy?eR}EXh@^6*sGBcR`b9j;xQ!A`Lvmg68kk=G;LnzZgAT zu$r&KDu9ejrNA_h_z9(Jg@eaRE(#`I<`z8U`}w8=Jw@nWMx)kfgPp=PM^u(8c$ZgB`jl>$RFBO4Bb=FJL5gQ4%S~7wb zwIVkYg3BB1DNhb$7LG$4L!xE3et_E}PYS$dz}KRMg5N@tkbhGGe>XcySGHu7cW}<7 zTR+msgQKwYYv|^h#`7UlMEtuCg&3u}a;^r=JNLSsHGGt=qklAUC*QX|S<1We zl3O@BzFu|}B7B@=g=YKi+`>^?jjF5we7e#-&BhvEh=0`YsjAL^2+N#&ABYFVvQIF= z?B!fDm4CyQj_2|@Av#M=uo3~=8k&RcwZ@BFX08k~4Qf0>v7@{53QQk_V#90e-f6v& zwG5;9HxjhDxeAaiqCRfFqnkiR9naS*h;VgMble%*@{GIKGhyDMr^JHy%L;NOR{8vC zEOn37)N*a>co?MdIxGjP?g0dyx1P9cGH1;DM{JH*3aTEin9_O3I;4?Kq7DGn!Z_|^m>C?VA)pN4*1JVDu zu7j3*VOkV0aNyj(_=R3za57>L7Zu~y;bVc#Jdc(D8;R=j;6cpv$$!Ka6xG%{9#lYw zoIRF@>i9$TNN{};6jTN=kr(~vqgYdo>q_|E<8kQeZ<`^i`K)$K>3kjl|EJa9?c&C) zOIyQG3Oz{L%+FN2poFz&KfHI50(kMRb>xF4l(Vdu(j8PIrpW*N;4LJw(-o;Pj+*d4 zoCfLc5B-~7Rrulyx}V8h)1W z(21XSXa3FT_DU8X;}lqWFCaw}u$`?KmVDhy_x4t`XT9@7&CL-@HZZXa?v(3rqz_fKhJLq6F>II zGm6O$?h7DOA!;dCak3!rUa4YVqwITqFe9?{2t%&&rO^B+=w{52u|lBFTl}tJj>r@} z?sTu|ls^>5Q^5-HQE3$6y*FMX48 zXs+ES>=>q)(FkRs(d&P%zdrx;P&K{3%2MHH?a`vxe$2Q1e*^p2&lFD`FF_drYnU|L zLr^8=2*W16o}s`Q^u;e))UsabXiD~+-f3pG2KDy}Ne~q;wu^2r6tZHKetZ%-bj?5~ zzX05(r4ilh?i^?LF2e)Q{-HUEv;9R71VrEpe+FH60)+!gY?r6s&B1{Xg--hyg<64c zgQYd=zjxYBsh=`XedlvI&7I?le<60~=_XL0Z6qnf%y6cGFc!y9ZW_I*_hEeqAL=y| zW}&xD2VI_eH-kE2Pt)mVJAc20DAL9#k)z?mx{)Tb`I7B67yd%kamEN1*hL7wX^7dv zdMJX~m`1NlM?>3+hG!8vGEQQ}%h_KEbO1{S>CZ=9UW<^2(#rr$Ap5Z+ zqC>1*G^ZzcG|wR9cX6eDGuc@K3ws)2J47Vg4Oln!mc+8w ziuqcs*+~K#X@bu)Pderrqxq4XhwdiG?#MblDnuF_f=vz0c2Wo z0WIvr1{Imt7oDHf(bMafx0vc0+Lmm)+rdM56A-p9i3~6XmZ5bvPrVjcxVVpO-Mb|FJY2NM?5qNS-C{-EckWkJm73L7>i3 zLhNvR73q&1OXnhz?W5nMm~lP3Q~L!8C~9Uw_&$vX>D>Td61X!n;?b)b5@L%TWx6z} zA63uAaw23->hSaFRHY3$e!u&{rTS8FC_?zVh2b;AlLh@yf*21#lzs20#;p?(Pn4#g znv)bk7XIiEKEE$?TB3~q#c`$>-?yy-%gC?ok)5R$c@Sr1Zn9c*LV^>cS$bDDkdr|MKty9JA^cb!xm)9AbP7H3dbTDFB}8W~YqJ7@j4r90_FDfcJ``Tt z_~LcTvWDr)MgoQydsL~X+x;Tj;{$d!O^D4~Hi&VF=pRR3D_Zv-w9&od8Z%?MIa<@f zSc|S&`W@3HzFom_tuZWV9P2WIXl&9=AuweP+Sdj4ZUIu4UR>rAx*n_}X>rcajr`L% zeRnargUM_KpXl-RA$)I-OlFk9sYUGPd!7V zr%88Apoyx-MgTMoAT2sA$3I08#R?Lc?N|HcR`!i=) zFy{W16uuu>A}gwsni7*S@SV3Qq`v~)H^o&FDKUvJOzJ3O%H$ZH#AG((cFlNl+#2_u z-U^F7Q)DU$9|8}1B68v?q~Fgm&w$Q=%z@#iFB45~69dPShhQ}DiOJR!fbA`VgpHKF z2DQ1)|7dIZzB#L^Tgod!9_@~t$>OQY{y2N7zTS~3CB$%OZse&*QsAy>Qs%fKU1C$* zJEumf!+WabQ+yit6!4ZNZ*PC!Ka4!7XN)~lCo~bc{Hq(M`{s!|fl*ZT-|Kd~cgruI zhtOl{nPnL4BL1~IfMy47#JM!;4B;*ga9BmP9>}{9Q9?h3M%sm0v?oU{=(!0VW?g_g zrI{~YmFiGRTp?C>c-7OU>#DT6H3EB^xbQsiQwG@Ls`n!8Y&Ys&et)|E;4XOm#_rkn z>jX5;My!d=H;wVFSRx<_oalsM(r@4I5NX1R8awN_iwd)M#H19@^~QAfcd_-QbGNp; zjc^-^9CI6`ttUmwNj`dAx%{{;!|N3-dS!ZLvut{_23?QPl&d65#1vtADyKF^SS};a ztdERPA65&Fp= z%f8E8aHEu;NQ$5kB)lK<>rK3>a!z7QGHS%|^G3Okgwlps1j@(n-zG|W*F^nvS|0d) z)euc$JC8oJe*FQ-wDQSlf6(V#Y8fgbLqPlV4J?iAt253zEe4M6Q(bnt2z+*@!#qJS zT-nY!#OuE1dZp)~HE+bi1ey9T9bEtRvD{r;E$&F1Pt7Ir+d%C%4!y zKgHcmjz8Q8w?Toduq?NfNoUKjVq>NJas{Dc^XkDg(Ve{4=pK*gk^gh$Hne-gS(gDFPFiU+${&lag{j}X}D3j&!UE!Q@dv15D^QLdc zvX(l0%8gHq+t`(`-M6ccYdPf}ssU;oO~ zO<|UJ;(b4rlnSp{f|Plc;x7OGUu2!-Uz2a#_qVZ)(W4sy=^QB_$moXA4WmQ4r5xRj zh?I0Ior;bILApc)L|UYzeu(bkzMkE$>&f{K91qUp_dvxR7IWZjD>L$oRsOAPPw|IAVY_HUv^&Gb(!7U$#juh?u?)TcOZ{?K z%=*)!fX?`yv0NfGE8F>*H)MvP2R>o?ei7G|Vv7x8`o#~GzjZi8S@!$uW~i zvve6>PQ_)bh@BVTZ5X%MU&b|1!SiCtM0u2@w0wdog*hwfSadzK%ckI!f+!^3s`6!q z%WF3rS3eM6y!i)3rAFzdvr*AltPJUhq@fH4h~m4Xiam`M9tv5uYL@f<%EF>kzbiXm zLEjAPGe|wU=J&Mzi&fk-J>1IEHoXT+j+ zHYZ)`2cvBezEKXOGKE5Yq1>`WWxqOrOEO8)Ki-|actbX6odY(t?O1L0;nw|W9d(d` z{J*0?BuFx7F%$XmmO(%sOB(hQug664sPewZj4l-spT0i02axZSvL;-%#8O(AMAPMT=;H9fDqQYw;k zg#G(*-N<-2fDO(LpoS?ByxrlZar1zYVOFppv-takPAFdzP2=Wu?erZyg71C$^U!={ zIX0-9)9ip~x+J?Zye=8F%0TmWUxojzlKd)$g1%}$+ssH+3XI0Ucd-}(GzP-&6GgP$ z4I5V^V3mr?nU;q>WQ3Fp2|d6CK3vh!gh%^M@tW2AzhQ$u22G?6fwYF zkbac1g#GRXO;6d#Kwd@bezZL+Xmr6Px^MU?pgX(v} z=5~TBG7BS^4uDZT&!2%SdhdcFBBYbp12!4W$Yh3Gj8mj2pOno(Sr7*LYjUKvSMg68 zdhraYBCtp(Vyp@^vxp%b!#Gg-M0?M~Ac=%D6%OrjyXs$NKLDC0iSBb5+F-qJpobhD;_Wf z23>0j<8Wg@Vctg?L-)&bY5EFk{OH-jqqXPI8wI3qby}H-i_K59rTdI*-U5-m1HVlu zK8aXUwi`Zk+czp47Xt6IN_HSgJ5WG+BUWns%qqAd97F`@!ow#|-XmSa@E*GG@e#e| zD-O+NH&V&`6lUvIXz*g0Vi(4z#d_a1?+a;-d%0nOl3k`JI?;f?kId(J_Ju%CO(3Hr zq?X?&35fynL_Jq*hQS;GEM&x&ghgu)*KysNkdC#_>IZ$3EWSn6<20hE|kh$lF2$dRyGcMdQgRi&#e=Ha7ua z01!oEVrQ2esF$mwl{J2a1(C7@$vI!3|EAr$s&B8|2j|zTW+PJ7U8c`fAAveuxgvft zSaD`{T_YBZqr#%iTSP_>mYs%axlyv>&QU6?SjL_;e)7#tTe4>4OArsTq&)6Xpx~xg zThi78gSE|8C`H64;hkAHgT>XYAoi^XHb;()YAubPykVu=L+u5^|6q!Sb~Wl;4YuO4xO051sQ zTrE~3`N^>YW8oLa4D=4y0?B{s6Rmz545|Ix>LZM4+o%zADzuJQmQZ zjD;ewo$UF70B5m&LBq^wYfiL)j^_TvdbHSQ_3UU>sr;pt9X``n&I5j)wj6^00NYbz z412mHi5-|ex)XdKC9&ylQf47k6kkKAf#wVSNS1=m83EzkentUyEePOxLv|#F7-n;d zPrL~fEK&S0Vm;t`B0$jPOXfycQ~IZf>nDk>=taG|zjK6!-qk4+tJe<*1>4SAQ4p$t za$%T&`j^_XmF`942I%*U1 zkL^(zwQMG>LfHf954LHA8%w(jn#sSNN=h~X-?&E`{BqzT+(h<-zOTZYXrP&&VCtwl z)a2~30wuTN&0GUeLnMR<#_1Z)7|fr4aTH@a5K!sG+xhr+y|jd)4#UnLtGd-)uC9z~ zq$6g5Bs9&|14ac~Aw2e|113+c48ms7)BX*&lYz>xpPy|GyrT$iUyit;^^@McM=5tJ zV98%U9vXzq=(n=IqC~7k2^!rgl-_;6|NSm>A8hQysZWQX*MbyRn^t*!LsuSVXB<49C2$ES5)&veiK{uS%?YMq0l9`TWyEwosA_TD)KilA zW>)fUR*IH6IP$@N9cJyGHu#ZLUq27!y_pR8t5jiUP%*6dpq6_5g+7Jm%haI(9QD9i z+7RQ-mnk+7i!7G(Ef#;Q{{T7IEvWJJ1@jcr;=u<>dJ`H>HVB74-XrZ5D2P4x1v6?U z=2POL7}YeScFE1tQi8KQRv}K}izf5jmyK5>k>r+)-xPpW+8{Gx=2sZ9Ugdc=Mnx2J zULy22&oF1Y#0@x9CVR3yzS^VahW(=5N-Z_RQNu;vAJziBpWWT;ZegPM#A6T;!=`KsOqu>V2KfXmV-5a;wXd8bo*$bG5(?|WX-m-{{ zuSON)o)!`3@z7*i>A^ctYED)(3qN`}gwMyan2g0?x+YYl zf@v{gJaYHH#R0f-lk*Z*w7?-sagFLA8BGJ^g?RB3swE}Hu0FVNj@f2J}BTnyJ z&)E(^`MkB+^ht?MwfG3urK~K%KOEJHvZ63B1_YW9Hqvj5MH~1UETap^RPgkVcLx=m zoVZl*;%(^2U3QBrC1~tjFcaY>7E0gLhwVyY1E2`@ID>K*Kp(e(^4!oScZATqHY-O1 zQ-z>p+{VphSJ`AJ-QKCypgTb}D_6NKX?akuO+shMCw+_vp^n-;zX@FkXQs1tuEkvg zGXf=6=R$Z=gBT(ka>h|1P_ly)w z*q^{$-YaH|9ZXba*sBa)jk$@*Vk^ZJDtFYgvcFf6mUCE{l~sLPas*PSyM?1vq89L} z5^3z?c3evj%+hUDT6pPqZJvWvd`w)$CA7^qojeHQJ}HmKo*$%XE}y{pab161jLGZC zSu-T+izbbdAvP-+0$3>CW!gKF}o}y+#H;mqZ21M$4vjyy--fiuHBM!v}{Kyhe4r8ADpOc}0}R&|#w^ z@?zb9SBdy}QO;6a49efN==I{gJm>-hrdbc)8&O05_Dk_C)y^8+yib_Rk4X=3N+_=F zyz*#3In6FLO4ROFJJl_rKhMetPWuf`*%vH);3)7Me0=7yWbr0SC~*#5G{-TYv8i(+ z#j--9Gw<#>OIW+W0$G&#m5vttD)VNW`N!OVI~ST`ak_(?oZWg=xm&98st-mILiF{*iW=}fa5RRn#qfR_^4JRsV*Ino`IJTh zFW(+S2f!N>9;d_p;Q~neCF_1lpiZQ@BaFTy98k_L$8i9`%%t_VV}G)V$H%nj7UbdEQdOauHe*kmRp(T7SSJa};=ygtMjJTwvq<7pFp3GiV9KhmrkW$ClSxhdD+MXVr81dL>v9@-vi+M&t6eR>O#p+ z{{2|}w>Ph%`H=xQ3G<3EieW-vAgDGe?%&?h0HBmDt97H;P&yMvEYtXR^4-$u=cYqNx60P{I-$@$Cem^!kQl;7MDXcfYu7jV7fkeFrBcO8`>0O-vN9%vjXs z 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 literal 0 HcmV?d00001 From 62bc65d9fe4150b25fdeabe96f2f2fc4c320a343 Mon Sep 17 00:00:00 2001 From: Kyle Newsome Date: Wed, 24 Aug 2022 00:33:16 -0400 Subject: [PATCH 2/9] prepping more operation types and assorted cleanup --- .../Rendering/Sprite/SpriteComponent.swift | 2 +- .../Rendering/Texture/TextureReference.swift | 2 + .../TileMap/TileMapRenderingReducer.swift | 1 - .../Flocking/FlockingComponent.swift | 229 +++++++++--------- .../FollowEntity/FollowEntityComponent.swift | 28 +-- .../FollowEntity/FollowEntityReducer.swift | 88 +++---- .../Separation/SeparationComponent.swift | 28 +-- .../Separation/SeparationReducer.swift | 140 +++++------ .../BasicOperationComponentContext.swift | 5 +- .../Operation/OperationType.swift | 58 +++-- .../OperationTypes/AnimateOperation.swift | 66 +++++ .../OperationTypes/MoveOperation.swift | 40 +++ .../OperationTypes/RotateByOperation.swift | 34 --- .../OperationTypes/RotateOperation.swift | 49 ++++ ...ByOperation.swift => ScaleOperation.swift} | 7 +- .../Pathing/PathingReducer.swift | 2 +- 16 files changed, 465 insertions(+), 314 deletions(-) create mode 100644 Sources/RedECSBasicComponents/Operation/OperationTypes/AnimateOperation.swift create mode 100644 Sources/RedECSBasicComponents/Operation/OperationTypes/MoveOperation.swift delete mode 100644 Sources/RedECSBasicComponents/Operation/OperationTypes/RotateByOperation.swift create mode 100644 Sources/RedECSBasicComponents/Operation/OperationTypes/RotateOperation.swift rename Sources/RedECSBasicComponents/Operation/OperationTypes/{MoveByOperation.swift => ScaleOperation.swift} (87%) diff --git a/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift b/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift index 74c3005..cae9951 100644 --- a/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift +++ b/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift @@ -19,7 +19,7 @@ public struct SpriteComponent: GameComponent { public init( entity: EntityId, - texture: TextureReference + texture: TextureReference = .empty ) { self.entity = entity self.texture = texture diff --git a/Sources/RedECS/Rendering/Texture/TextureReference.swift b/Sources/RedECS/Rendering/Texture/TextureReference.swift index 08dd206..09d6b89 100644 --- a/Sources/RedECS/Rendering/Texture/TextureReference.swift +++ b/Sources/RedECS/Rendering/Texture/TextureReference.swift @@ -6,4 +6,6 @@ public struct TextureReference: Equatable, Codable { self.textureId = textureId self.frameId = frameId } + + public static var empty: TextureReference = .init(textureId: "", frameId: nil) } diff --git a/Sources/RedECS/Rendering/TileMap/TileMapRenderingReducer.swift b/Sources/RedECS/Rendering/TileMap/TileMapRenderingReducer.swift index 3e333d5..8f02d16 100644 --- a/Sources/RedECS/Rendering/TileMap/TileMapRenderingReducer.swift +++ b/Sources/RedECS/Rendering/TileMap/TileMapRenderingReducer.swift @@ -20,7 +20,6 @@ public struct TileMapRenderingReducer: Reducer { tileSize = Size(width: Double(tileWidth), height: Double(tileHeight)) tileMap.tileMap.tileLayers.enumerated().forEach { (i, layer) in - guard let data = layer.data else { return } guard let tileSetName = tileMap.tileMap.tileSets.first?.source, let tileSet = environment.resourceManager.tileSets[tileSetName] else { return diff --git a/Sources/RedECSBasicComponents/Flocking/FlockingComponent.swift b/Sources/RedECSBasicComponents/Flocking/FlockingComponent.swift index e3115ef..e7d8bfd 100644 --- a/Sources/RedECSBasicComponents/Flocking/FlockingComponent.swift +++ b/Sources/RedECSBasicComponents/Flocking/FlockingComponent.swift @@ -1,115 +1,114 @@ -import RedECS -import Geometry - -public struct FlockingComponent: GameComponent { - public var entity: EntityId - - public var separationRadius: Double - public var separationWeight: Double - - public var alignmentRadius: Double - public var alignmentWeight: Double - - public var cohesionRadius: Double - public var cohesionWeight: Double - - public init( - entity: EntityId, - separationRadius: Double = 80, - separationWeight: Double = 2, - alignmentRadius: Double = 80, - alignmentWeight: Double = 1, - cohesionRadius: Double = 80, - cohesionWeight: Double = 1 - ) { - self.entity = entity - self.separationRadius = separationRadius - self.separationWeight = separationWeight - self.alignmentRadius = alignmentRadius - self.alignmentWeight = alignmentWeight - self.cohesionRadius = cohesionRadius - self.cohesionWeight = cohesionWeight - } -} - -public struct FlockingReducerContext: GameState { - public var entities: EntityRepository = .init() - - public var transform: [EntityId: TransformComponent] - public var movement: [EntityId: MovementComponent] - public var flocking: [EntityId: FlockingComponent] - public var follow: [EntityId: FollowEntityComponent] - - public init( - entities: EntityRepository = .init(), - transform: [EntityId: TransformComponent], - movement: [EntityId : MovementComponent], - flocking: [EntityId : FlockingComponent], - follow: [EntityId: FollowEntityComponent] - ) { - self.entities = entities - self.transform = transform - self.movement = movement - self.flocking = flocking - self.follow = follow - } -} - -public struct FlockingReducer: Reducer { - public init() {} - public func reduce( - state: inout FlockingReducerContext, - delta: Double, - environment: Void - ) -> GameEffect { - state.flocking.forEach { (id, flocking) in - guard let position = state.transform[id] else { return } - let follow = state.follow[id] - - var alignment: Point = .zero - var cohesion: Point = .zero - var separation: Point = .zero - var neighborCount: Int32 = 0 - - state.flocking.forEach { (otherEntityId, _) in - guard id != otherEntityId, - let otherTransform = state.transform[otherEntityId], - let otherMovement = state.movement[otherEntityId] else { return } - - let distance = position.position.distanceFrom(otherTransform.position) - guard distance <= flocking.separationRadius -// || (otherEntityId == follow?.leaderId && distance > (follow?.maxDistance ?? .greatestFiniteMagnitude)) - else { - return - } - - alignment += otherMovement.velocity - cohesion += otherTransform.position - separation += (otherTransform.position - position.position) - neighborCount += 1 - } - - guard neighborCount > 0 else { - return - } - - alignment /= Double(neighborCount) - - cohesion /= Double(neighborCount) - cohesion -= position.position - - separation /= Double(neighborCount) - separation *= -1 - - alignment.normalize(to: flocking.alignmentWeight) - cohesion.normalize(to: flocking.cohesionWeight) - separation.normalize(to: flocking.separationWeight) - - state.movement[id]?.velocity = - alignment + - cohesion + - separation - } - return .none - } -} +//import RedECS +//import Geometry +// +//public struct FlockingComponent: GameComponent { +// public var entity: EntityId +// +// public var separationRadius: Double +// public var separationWeight: Double +// +// public var alignmentRadius: Double +// public var alignmentWeight: Double +// +// public var cohesionRadius: Double +// public var cohesionWeight: Double +// +// public init( +// entity: EntityId, +// separationRadius: Double = 80, +// separationWeight: Double = 2, +// alignmentRadius: Double = 80, +// alignmentWeight: Double = 1, +// cohesionRadius: Double = 80, +// cohesionWeight: Double = 1 +// ) { +// self.entity = entity +// self.separationRadius = separationRadius +// self.separationWeight = separationWeight +// self.alignmentRadius = alignmentRadius +// self.alignmentWeight = alignmentWeight +// self.cohesionRadius = cohesionRadius +// self.cohesionWeight = cohesionWeight +// } +//} +// +//public struct FlockingReducerContext: GameState { +// public var entities: EntityRepository = .init() +// +// public var transform: [EntityId: TransformComponent] +// public var movement: [EntityId: MovementComponent] +// public var flocking: [EntityId: FlockingComponent] +// public var follow: [EntityId: FollowEntityComponent] +// +// public init( +// entities: EntityRepository = .init(), +// transform: [EntityId: TransformComponent], +// movement: [EntityId : MovementComponent], +// flocking: [EntityId : FlockingComponent], +// follow: [EntityId: FollowEntityComponent] +// ) { +// self.entities = entities +// self.transform = transform +// self.movement = movement +// self.flocking = flocking +// self.follow = follow +// } +//} +// +//public struct FlockingReducer: Reducer { +// public init() {} +// public func reduce( +// state: inout FlockingReducerContext, +// delta: Double, +// environment: Void +// ) -> GameEffect { +// state.flocking.forEach { (id, flocking) in +// guard let position = state.transform[id] else { return } +// +// var alignment: Point = .zero +// var cohesion: Point = .zero +// var separation: Point = .zero +// var neighborCount: Int32 = 0 +// +// state.flocking.forEach { (otherEntityId, _) in +// guard id != otherEntityId, +// let otherTransform = state.transform[otherEntityId], +// let otherMovement = state.movement[otherEntityId] else { return } +// +// let distance = position.position.distanceFrom(otherTransform.position) +// guard distance <= flocking.separationRadius +//// || (otherEntityId == follow?.leaderId && distance > (follow?.maxDistance ?? .greatestFiniteMagnitude)) +// else { +// return +// } +// +// alignment += otherMovement.velocity +// cohesion += otherTransform.position +// separation += (otherTransform.position - position.position) +// neighborCount += 1 +// } +// +// guard neighborCount > 0 else { +// return +// } +// +// alignment /= Double(neighborCount) +// +// cohesion /= Double(neighborCount) +// cohesion -= position.position +// +// separation /= Double(neighborCount) +// separation *= -1 +// +// alignment.normalize(to: flocking.alignmentWeight) +// cohesion.normalize(to: flocking.cohesionWeight) +// separation.normalize(to: flocking.separationWeight) +// +// state.movement[id]?.velocity = +// alignment + +// cohesion + +// separation +// } +// return .none +// } +//} diff --git a/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityComponent.swift b/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityComponent.swift index 3fa2a51..16bd5f4 100644 --- a/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityComponent.swift +++ b/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityComponent.swift @@ -1,14 +1,14 @@ -import RedECS -import Geometry - -public struct FollowEntityComponent: GameComponent { - public var entity: EntityId - public var leaderId: EntityId - public var maxDistance: Double - - public init(entity: EntityId, leaderId: EntityId, maxDistance: Double) { - self.entity = entity - self.leaderId = leaderId - self.maxDistance = maxDistance - } -} +//import RedECS +//import Geometry +// +//public struct FollowEntityComponent: GameComponent { +// public var entity: EntityId +// public var leaderId: EntityId +// public var maxDistance: Double +// +// public init(entity: EntityId, leaderId: EntityId, maxDistance: Double) { +// self.entity = entity +// self.leaderId = leaderId +// self.maxDistance = maxDistance +// } +//} diff --git a/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityReducer.swift b/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityReducer.swift index 43a75d2..2ec6945 100644 --- a/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityReducer.swift +++ b/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityReducer.swift @@ -1,44 +1,44 @@ -import RedECS -import Geometry - -public struct FollowEntityReducerContext: GameState { - public var entities: EntityRepository = .init() - public var transform: [EntityId: TransformComponent] - public var movement: [EntityId: MovementComponent] - public var followEntity: [EntityId: FollowEntityComponent] - - public init( - entities: EntityRepository = .init(), - transform: [EntityId: TransformComponent], - movement: [EntityId : MovementComponent], - followEntity: [EntityId : FollowEntityComponent] - ) { - self.entities = entities - self.transform = transform - self.movement = movement - self.followEntity = followEntity - } -} - -public struct FollowEntityReducer: Reducer { - public init() {} - public func reduce( - state: inout FollowEntityReducerContext, - delta: Double, - environment: Void - ) -> GameEffect { - state.followEntity.forEach { (id, following) in - guard let entityTransform = state.transform[id], - let followingTransform = state.transform[following.leaderId] - else { return } - - let distance: Double = entityTransform.position.distanceFrom(followingTransform.position) - if distance >= following.maxDistance { - var vector = followingTransform.position.diffOf(entityTransform.position) - vector.normalize(to: 1) - state.movement[id]?.velocity += vector - } - } - return .none - } -} +//import RedECS +//import Geometry +// +//public struct FollowEntityReducerContext: GameState { +// public var entities: EntityRepository = .init() +// public var transform: [EntityId: TransformComponent] +// public var movement: [EntityId: MovementComponent] +// public var followEntity: [EntityId: FollowEntityComponent] +// +// public init( +// entities: EntityRepository = .init(), +// transform: [EntityId: TransformComponent], +// movement: [EntityId : MovementComponent], +// followEntity: [EntityId : FollowEntityComponent] +// ) { +// self.entities = entities +// self.transform = transform +// self.movement = movement +// self.followEntity = followEntity +// } +//} +// +//public struct FollowEntityReducer: Reducer { +// public init() {} +// public func reduce( +// state: inout FollowEntityReducerContext, +// delta: Double, +// environment: Void +// ) -> GameEffect { +// state.followEntity.forEach { (id, following) in +// guard let entityTransform = state.transform[id], +// let followingTransform = state.transform[following.leaderId] +// else { return } +// +// let distance: Double = entityTransform.position.distanceFrom(followingTransform.position) +// if distance >= following.maxDistance { +// var vector = followingTransform.position.diffOf(entityTransform.position) +// vector.normalize(to: 1) +// state.movement[id]?.velocity += vector +// } +// } +// return .none +// } +//} diff --git a/Sources/RedECSBasicComponents/Flocking/Separation/SeparationComponent.swift b/Sources/RedECSBasicComponents/Flocking/Separation/SeparationComponent.swift index 7e46f16..548908b 100644 --- a/Sources/RedECSBasicComponents/Flocking/Separation/SeparationComponent.swift +++ b/Sources/RedECSBasicComponents/Flocking/Separation/SeparationComponent.swift @@ -1,14 +1,14 @@ -import RedECS -import Geometry - -public struct SeparationComponent: GameComponent { - public var entity: EntityId - public var radius: Double - public init( - entity: EntityId, - radius: Double - ) { - self.entity = entity - self.radius = radius - } -} +//import RedECS +//import Geometry +// +//public struct SeparationComponent: GameComponent { +// public var entity: EntityId +// public var radius: Double +// public init( +// entity: EntityId, +// radius: Double +// ) { +// self.entity = entity +// self.radius = radius +// } +//} diff --git a/Sources/RedECSBasicComponents/Flocking/Separation/SeparationReducer.swift b/Sources/RedECSBasicComponents/Flocking/Separation/SeparationReducer.swift index ff84b3a..ed0e5d7 100644 --- a/Sources/RedECSBasicComponents/Flocking/Separation/SeparationReducer.swift +++ b/Sources/RedECSBasicComponents/Flocking/Separation/SeparationReducer.swift @@ -1,70 +1,70 @@ -import RedECS -import Geometry - -public struct SeparationReducerContext: GameState { - public var entities: EntityRepository = .init() - public var transform: [EntityId: TransformComponent] - public var movement: [EntityId: MovementComponent] - public var separation: [EntityId: SeparationComponent] - public init( - entities: EntityRepository = .init(), - transform: [EntityId: TransformComponent], - movement: [EntityId: MovementComponent], - separation: [EntityId: SeparationComponent] - ) { - self.entities = entities - self.transform = transform - self.movement = movement - self.separation = separation - } -} - -public struct SeparationReducer: Reducer { - public init() {} - public func reduce( - state: inout SeparationReducerContext, - delta: Double, - environment: Void - ) -> GameEffect { - state.separation.forEach { (id, separation) in - guard let transform = state.transform[id] else { return } - - var velocity: Point = .zero - var neighborCount: Int32 = 0 - - state.transform.forEach { (otherEntityId, otherTransform) in - guard id != otherEntityId else { return } - - var distance = transform.position.distanceFrom(otherTransform.position) - - guard distance <= separation.radius else { - return - } - - if distance < 0.01 { - distance = 0.01 - } - - let headingVector = transform.position.diffOf(otherTransform.position) - let scale = 1 - (distance / separation.radius) - let relativeHeadingVector = headingVector / distance - let finalHeadingVector = relativeHeadingVector / scale - - velocity.x += finalHeadingVector.x - velocity.y += finalHeadingVector.y - neighborCount += 1 - } - - guard neighborCount > 0 else { - state.movement[id]?.velocity = .zero - return - } - - let finalX = max(-1, min(1, velocity.x)) - let finalY = max(-1, min(1, velocity.y)) - let adjustmentVector = Point(x: finalX, y: finalY) - state.movement[id]?.velocity = adjustmentVector - } - return .none - } -} +//import RedECS +//import Geometry +// +//public struct SeparationReducerContext: GameState { +// public var entities: EntityRepository = .init() +// public var transform: [EntityId: TransformComponent] +// public var movement: [EntityId: MovementComponent] +// public var separation: [EntityId: SeparationComponent] +// public init( +// entities: EntityRepository = .init(), +// transform: [EntityId: TransformComponent], +// movement: [EntityId: MovementComponent], +// separation: [EntityId: SeparationComponent] +// ) { +// self.entities = entities +// self.transform = transform +// self.movement = movement +// self.separation = separation +// } +//} +// +//public struct SeparationReducer: Reducer { +// public init() {} +// public func reduce( +// state: inout SeparationReducerContext, +// delta: Double, +// environment: Void +// ) -> GameEffect { +// state.separation.forEach { (id, separation) in +// guard let transform = state.transform[id] else { return } +// +// var velocity: Point = .zero +// var neighborCount: Int32 = 0 +// +// state.transform.forEach { (otherEntityId, otherTransform) in +// guard id != otherEntityId else { return } +// +// var distance = transform.position.distanceFrom(otherTransform.position) +// +// guard distance <= separation.radius else { +// return +// } +// +// if distance < 0.01 { +// distance = 0.01 +// } +// +// let headingVector = transform.position.diffOf(otherTransform.position) +// let scale = 1 - (distance / separation.radius) +// let relativeHeadingVector = headingVector / distance +// let finalHeadingVector = relativeHeadingVector / scale +// +// velocity.x += finalHeadingVector.x +// velocity.y += finalHeadingVector.y +// neighborCount += 1 +// } +// +// guard neighborCount > 0 else { +// state.movement[id]?.velocity = .zero +// return +// } +// +// let finalX = max(-1, min(1, velocity.x)) +// let finalY = max(-1, min(1, velocity.y)) +// let adjustmentVector = Point(x: finalX, y: finalY) +// state.movement[id]?.velocity = adjustmentVector +// } +// return .none +// } +//} diff --git a/Sources/RedECSBasicComponents/Operation/BasicOperationComponentContext.swift b/Sources/RedECSBasicComponents/Operation/BasicOperationComponentContext.swift index f1630b1..84646fa 100644 --- a/Sources/RedECSBasicComponents/Operation/BasicOperationComponentContext.swift +++ b/Sources/RedECSBasicComponents/Operation/BasicOperationComponentContext.swift @@ -3,12 +3,15 @@ import RedECS public struct BasicOperationComponentContext: GameState { public var entities: EntityRepository = .init() public var transform: [EntityId: TransformComponent] = [:] + public var sprite: [EntityId: SpriteComponent] = [:] public init( entities: EntityRepository = .init(), - transform: [EntityId: TransformComponent] = [:] + transform: [EntityId: TransformComponent] = [:], + sprite: [EntityId: SpriteComponent] = [:] ) { self.entities = entities self.transform = transform + self.sprite = sprite } } diff --git a/Sources/RedECSBasicComponents/Operation/OperationType.swift b/Sources/RedECSBasicComponents/Operation/OperationType.swift index dd63fec..e7a84ba 100644 --- a/Sources/RedECSBasicComponents/Operation/OperationType.swift +++ b/Sources/RedECSBasicComponents/Operation/OperationType.swift @@ -2,19 +2,20 @@ import RedECS import Geometry public indirect enum OperationType: Codable & Equatable { - case moveBy(MoveByOperation) - case rotateBy(RotateByOperation) + case move(MoveOperation) + case rotate(RotateOperation) case wait(WaitOperation) case repeatForever(RepeatForeverOperation) case sequence(SequenceOperation) case group(GroupOperation) case call(CallOperation) + case animate(AnimateOperation) public var isComplete: Bool { switch self { - case .moveBy(let moveOperation): + case .move(let moveOperation): return moveOperation.isComplete - case .rotateBy(let rotateOperation): + case .rotate(let rotateOperation): return rotateOperation.isComplete case .wait(let waitOperation): return waitOperation.isComplete @@ -26,6 +27,8 @@ public indirect enum OperationType: Codable & E return repeatOp.isComplete case .call(let callOp): return callOp.isComplete + case .animate(let animOp): + return animOp.isComplete } } @@ -39,17 +42,17 @@ public indirect enum OperationType: Codable & E _ = wait.run(id: id, state: &state, delta: delta) self = .wait(wait) return .none - case .rotateBy(var rotate): + case .rotate(var rotate): _ = rotate.run(id: id, state: &state, delta: delta) - self = .rotateBy(rotate) + self = .rotate(rotate) return .none case .repeatForever(var rp): let effect = rp.run(id: id, state: &state, delta: delta) self = .repeatForever(rp) return effect - case .moveBy(var move): + case .move(var move): _ = move.run(id: id, state: &state, delta: delta) - self = .moveBy(move) + self = .move(move) return .none case .sequence(var sequence): let effect = sequence.run(id: id, state: &state, delta: delta) @@ -63,6 +66,10 @@ public indirect enum OperationType: Codable & E let effect = call.run(id: id, state: &state, delta: delta) self = .call(call) return effect + case .animate(var anim): + _ = anim.run(id: id, state: &state, delta: delta) + self = .animate(anim) + return .none } } @@ -71,15 +78,15 @@ public indirect enum OperationType: Codable & E case .wait(var wait): wait.reset() self = .wait(wait) - case .rotateBy(var rotate): + case .rotate(var rotate): rotate.reset() - self = .rotateBy(rotate) + self = .rotate(rotate) case .repeatForever(var rp): rp.reset() self = .repeatForever(rp) - case .moveBy(var move): + case .move(var move): move.reset() - self = .moveBy(move) + self = .move(move) case .sequence(var sequence): sequence.reset() self = .sequence(sequence) @@ -89,6 +96,9 @@ public indirect enum OperationType: Codable & E case .call(var call): call.reset() self = .call(call) + case .animate(var anim): + anim.reset() + self = .animate(anim) } } @@ -131,13 +141,13 @@ public extension OperationType { public extension OperationType { static func moveBy(_ amount: Point, duration: Double) -> Self { - .moveBy(MoveByOperation(moveBy: amount, duration: duration)) + .move(MoveOperation(strategy: .by(amount), duration: duration)) } func moveBy(_ amount: Point, duration: Double) -> Self { var component = self - let moveOp = MoveByOperation(moveBy: amount, duration: duration) - component.appendOperation(.moveBy(moveOp)) + let moveOp = MoveOperation(strategy: .by(amount), duration: duration) + component.appendOperation(.move(moveOp)) return component } } @@ -145,13 +155,13 @@ public extension OperationType { public extension OperationType { static func rotateBy(_ amount: Double, duration: Double) -> Self { - .rotateBy(RotateByOperation(rotateBy: amount, duration: duration)) + .rotate(RotateOperation(strategy: .by(amount), duration: duration)) } func rotateBy(_ amount: Double, duration: Double) -> Self { var component = self - let rotateOp = RotateByOperation(rotateBy: amount, duration: duration) - component.appendOperation(.rotateBy(rotateOp)) + let rotateOp = RotateOperation(strategy: .by(amount), duration: duration) + component.appendOperation(.rotate(rotateOp)) return component } } @@ -194,3 +204,15 @@ public extension OperationType { return component } } + +public extension OperationType { + static func animate(_ frames: [AnimateOperation.FrameData]) -> Self { + return .animate(AnimateOperation(frames: frames)) + } + + func animate(_ frames: [AnimateOperation.FrameData]) -> Self { + var component = self + component.appendOperation(.animate(AnimateOperation(frames: frames))) + return component + } +} diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/AnimateOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/AnimateOperation.swift new file mode 100644 index 0000000..f4f38f6 --- /dev/null +++ b/Sources/RedECSBasicComponents/Operation/OperationTypes/AnimateOperation.swift @@ -0,0 +1,66 @@ +import RedECS + +public struct AnimateOperation: Operation { + public struct FrameData: Equatable, Codable { + public var texture: TextureReference + public var duration: Double + + public init(texture: TextureReference, duration: Double) { + self.texture = texture + self.duration = duration + } + } + public var currentTime: Double = 0 + public var currentFrameTime: Double = 0 + public var currentFrameIndex: Int = 0 + public var frames: [FrameData] + public var isComplete: Bool = false + + public init( + frames: [FrameData] + ) { + self.frames = frames + } + + public mutating func run( + id: EntityId, + state: inout BasicOperationComponentContext, + delta: Double + ) -> GameEffect { + guard !isComplete, !frames.isEmpty else { + isComplete = true + return .none + } + + if currentFrameIndex == 0 && currentFrameTime == 0 { + state.sprite[id]?.texture = frames[0].texture + return .none // first frame doesnt need delta applied on first tick + } + + currentTime += delta + currentFrameTime += delta + + guard currentFrameTime > frames[currentFrameIndex].duration else { + return .none + } + + currentFrameTime = 0 + currentFrameIndex += 1 + let isPastFinalFrame = (currentFrameIndex >= frames.count) + if isPastFinalFrame { + isComplete = true + return .none + } + + state.sprite[id]?.texture = frames[currentFrameIndex].texture + + return .none + } + + public mutating func reset() { + currentTime = 0 + currentFrameTime = 0 + currentFrameIndex = 0 + isComplete = false + } +} diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/MoveOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/MoveOperation.swift new file mode 100644 index 0000000..05b778a --- /dev/null +++ b/Sources/RedECSBasicComponents/Operation/OperationTypes/MoveOperation.swift @@ -0,0 +1,40 @@ +import RedECS +import Geometry + +public struct MoveOperation: Operation { + public typealias Action = Int + + public enum Strategy: Equatable, Codable { + case by(Point) + case to(Point) + } + + public var strategy: Strategy + public var duration: Double + public var currentTime: Double = 0 + + public var isComplete: Bool { currentTime >= duration } + + public init(strategy: Strategy, duration: Double, currentTime: Double = 0) { + self.strategy = strategy + self.duration = duration + self.currentTime = currentTime + } + + public mutating func run(id: EntityId, state: inout BasicOperationComponentContext, delta: Double) -> GameEffect { + switch strategy { + case .by(let point): + let percentage = delta / duration + let moveByIncrement = point * percentage + state.transform[id]?.position += moveByIncrement + currentTime += delta + case .to(_): + fatalError("not implemented yet") + } + return .none + } + + public mutating func reset() { + currentTime = 0 + } +} diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/RotateByOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/RotateByOperation.swift deleted file mode 100644 index ac17c7e..0000000 --- a/Sources/RedECSBasicComponents/Operation/OperationTypes/RotateByOperation.swift +++ /dev/null @@ -1,34 +0,0 @@ -import RedECS -import Geometry - -public struct RotateByOperation: Operation { - public typealias Action = Int - - public var rotateBy: Double // degrees - public var duration: Double - public var currentTime: Double = 0 - - public var isComplete: Bool { currentTime >= duration } - - public init(rotateBy: Double, duration: Double, currentTime: Double = 0) { - self.rotateBy = rotateBy - self.duration = duration - self.currentTime = currentTime - } - - public mutating func run( - id: EntityId, - state: inout BasicOperationComponentContext, - delta: Double - ) -> GameEffect { - let percentage = delta / duration - let rotateByIncrement = rotateBy * percentage - state.transform[id]?.rotate += rotateByIncrement - currentTime += delta - return .none - } - - public mutating func reset() { - currentTime = 0 - } -} diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/RotateOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/RotateOperation.swift new file mode 100644 index 0000000..c868d6a --- /dev/null +++ b/Sources/RedECSBasicComponents/Operation/OperationTypes/RotateOperation.swift @@ -0,0 +1,49 @@ +import RedECS +import Geometry + +public struct RotateOperation: Operation { + public typealias Action = Int + + public enum Strategy: Equatable, Codable { + case by(Double) // degrees + case to(Double) + } + + public var strategy: Strategy + public var duration: Double + public var currentTime: Double = 0 + + public var isComplete: Bool { currentTime >= duration } + + public init( + strategy: Strategy, + duration: Double, + currentTime: Double = 0 + ) { + self.strategy = strategy + self.duration = duration + self.currentTime = currentTime + } + + public mutating func run( + id: EntityId, + state: inout BasicOperationComponentContext, + delta: Double + ) -> GameEffect { + switch strategy { + case .by(let amount): + let percentage = delta / duration + let rotateByIncrement = amount * percentage + state.transform[id]?.rotate += rotateByIncrement + case .to(_): + fatalError("not implemented yet") + break + } + currentTime += delta + return .none + } + + public mutating func reset() { + currentTime = 0 + } +} diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/MoveByOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/ScaleOperation.swift similarity index 87% rename from Sources/RedECSBasicComponents/Operation/OperationTypes/MoveByOperation.swift rename to Sources/RedECSBasicComponents/Operation/OperationTypes/ScaleOperation.swift index bafee9b..69c9df6 100644 --- a/Sources/RedECSBasicComponents/Operation/OperationTypes/MoveByOperation.swift +++ b/Sources/RedECSBasicComponents/Operation/OperationTypes/ScaleOperation.swift @@ -1,7 +1,12 @@ import RedECS import Geometry -public struct MoveByOperation: Operation { +public struct ScaleOperation: Operation { + enum Strategy { + case by(Point) + case to(Point) + } + public typealias Action = Int public var moveBy: Point diff --git a/Sources/RedECSBasicComponents/Pathing/PathingReducer.swift b/Sources/RedECSBasicComponents/Pathing/PathingReducer.swift index 17832a3..e923068 100644 --- a/Sources/RedECSBasicComponents/Pathing/PathingReducer.swift +++ b/Sources/RedECSBasicComponents/Pathing/PathingReducer.swift @@ -20,7 +20,7 @@ public struct PathingReducerContext: GameState { } } -public enum PathingAction: Equatable { +public enum PathingAction: Equatable, Codable { case setPath(EntityId, [Point]) case appendPath(EntityId, Point) case requestPathingCalculation(EntityId, to: Point) From 4d2410e90e85c3ef5de5d0dea8db0e3bbfb7a257 Mon Sep 17 00:00:00 2001 From: Kyle Newsome Date: Sat, 27 Aug 2022 00:16:58 -0400 Subject: [PATCH 3/9] operations and rendering improvements prep --- .../xcschemes/RedECS-Package.xcscheme | 68 +------- .../xcshareddata/xcschemes/RedECS.xcscheme | 67 ++++++++ .../xcschemes/RedECSAppleSupport.xcscheme | 67 ++++++++ .../xcschemes/RedECSBasicComponents.xcscheme | 67 ++++++++ .../xcshareddata/xcschemes/RedECSKit.xcscheme | 67 ++++++++ .../xcschemes/RedECSUIComponents.xcscheme | 67 ++++++++ .../xcschemes/RedECSWebSupport.xcscheme | 67 ++++++++ .../xcschemes/TiledInterpreter.xcscheme | 67 ++++++++ Sources/RedECS/Component/GameComponent.swift | 2 + Sources/RedECS/Entity/EntityRepository.swift | 89 ++++++++++- Sources/RedECS/Entity/GameEntity.swift | 16 ++ .../Rendering/Camera/CameraComponent.swift | 4 + Sources/RedECS/Rendering/RenderTriangle.swift | 5 +- .../Rendering/Shape/ShapeComponent.swift | 6 +- .../Rendering/Sprite/SpriteComponent.swift | 5 + .../Rendering/TileMap/TileMapComponent.swift | 7 +- .../TileMap/TileMapRenderingReducer.swift | 19 +-- .../Transform/TransformComponent.swift | 8 +- Sources/RedECS/Store/GameEffect.swift | 138 ++++++++++++---- Sources/RedECS/Store/SystemAction.swift | 35 ++++ .../RedECSAppleSupport/MetalRenderer.swift | 2 +- .../FollowEntity/FollowEntityComponent.swift | 32 ++-- .../FollowEntity/FollowEntityReducer.swift | 42 ++--- .../Input/KeyboardInputComponent.swift | 4 + .../InteractionComponent.swift | 16 +- .../Momentum/MomentumComponent.swift | 4 + .../Movement/MovementComponent.swift | 5 + .../BasicOperationComponentContext.swift | 6 +- .../Operation/Operation.swift | 12 +- .../Operation/OperationComponent.swift | 12 +- .../Operation/OperationReducer.swift | 9 +- .../Operation/OperationType.swift | 149 +++++++++++++++--- .../OperationTypes/AnimateOperation.swift | 4 + .../OperationTypes/CallOperation.swift | 1 + .../OperationTypes/GroupOperation.swift | 5 + .../OperationTypes/MoveOperation.swift | 23 ++- .../OperationTypes/OpacityOperation.swift | 58 +++++++ .../RepeatForeverOperation.swift | 33 ---- .../OperationTypes/RepeatOperation.swift | 65 ++++++++ .../OperationTypes/RotateOperation.swift | 25 ++- .../OperationTypes/ScaleOperation.swift | 24 ++- .../OperationTypes/SequenceOperation.swift | 8 + .../OperationTypes/TimingOperation.swift | 78 +++++++++ .../OperationTypes/VisibilityOperation.swift | 44 ++++++ .../RedECSUIComponents/HUD/HUDComponent.swift | 4 + .../WebGL/DrawTextureProgram.swift | 10 +- 46 files changed, 1305 insertions(+), 241 deletions(-) create mode 100644 .swiftpm/xcode/xcshareddata/xcschemes/RedECS.xcscheme create mode 100644 .swiftpm/xcode/xcshareddata/xcschemes/RedECSAppleSupport.xcscheme create mode 100644 .swiftpm/xcode/xcshareddata/xcschemes/RedECSBasicComponents.xcscheme create mode 100644 .swiftpm/xcode/xcshareddata/xcschemes/RedECSKit.xcscheme create mode 100644 .swiftpm/xcode/xcshareddata/xcschemes/RedECSUIComponents.xcscheme create mode 100644 .swiftpm/xcode/xcshareddata/xcschemes/RedECSWebSupport.xcscheme create mode 100644 .swiftpm/xcode/xcshareddata/xcschemes/TiledInterpreter.xcscheme create mode 100644 Sources/RedECS/Store/SystemAction.swift create mode 100644 Sources/RedECSBasicComponents/Operation/OperationTypes/OpacityOperation.swift delete mode 100644 Sources/RedECSBasicComponents/Operation/OperationTypes/RepeatForeverOperation.swift create mode 100644 Sources/RedECSBasicComponents/Operation/OperationTypes/RepeatOperation.swift create mode 100644 Sources/RedECSBasicComponents/Operation/OperationTypes/TimingOperation.swift create mode 100644 Sources/RedECSBasicComponents/Operation/OperationTypes/VisibilityOperation.swift diff --git a/.swiftpm/xcode/xcshareddata/xcschemes/RedECS-Package.xcscheme b/.swiftpm/xcode/xcshareddata/xcschemes/RedECS-Package.xcscheme index c5d2808..f866326 100644 --- a/.swiftpm/xcode/xcshareddata/xcschemes/RedECS-Package.xcscheme +++ b/.swiftpm/xcode/xcshareddata/xcschemes/RedECS-Package.xcscheme @@ -70,23 +70,9 @@ buildForAnalyzing = "YES"> - - - - @@ -98,9 +84,9 @@ buildForAnalyzing = "YES"> @@ -132,20 +118,6 @@ ReferencedContainer = "container:"> - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/.swiftpm/xcode/xcshareddata/xcschemes/RedECSAppleSupport.xcscheme b/.swiftpm/xcode/xcshareddata/xcschemes/RedECSAppleSupport.xcscheme new file mode 100644 index 0000000..258a0ee --- /dev/null +++ b/.swiftpm/xcode/xcshareddata/xcschemes/RedECSAppleSupport.xcscheme @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/.swiftpm/xcode/xcshareddata/xcschemes/RedECSBasicComponents.xcscheme b/.swiftpm/xcode/xcshareddata/xcschemes/RedECSBasicComponents.xcscheme new file mode 100644 index 0000000..4baf1d6 --- /dev/null +++ b/.swiftpm/xcode/xcshareddata/xcschemes/RedECSBasicComponents.xcscheme @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/.swiftpm/xcode/xcshareddata/xcschemes/RedECSKit.xcscheme b/.swiftpm/xcode/xcshareddata/xcschemes/RedECSKit.xcscheme new file mode 100644 index 0000000..e4ef8f3 --- /dev/null +++ b/.swiftpm/xcode/xcshareddata/xcschemes/RedECSKit.xcscheme @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/.swiftpm/xcode/xcshareddata/xcschemes/RedECSUIComponents.xcscheme b/.swiftpm/xcode/xcshareddata/xcschemes/RedECSUIComponents.xcscheme new file mode 100644 index 0000000..9f0d8c8 --- /dev/null +++ b/.swiftpm/xcode/xcshareddata/xcschemes/RedECSUIComponents.xcscheme @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/.swiftpm/xcode/xcshareddata/xcschemes/RedECSWebSupport.xcscheme b/.swiftpm/xcode/xcshareddata/xcschemes/RedECSWebSupport.xcscheme new file mode 100644 index 0000000..ecaa375 --- /dev/null +++ b/.swiftpm/xcode/xcshareddata/xcschemes/RedECSWebSupport.xcscheme @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/.swiftpm/xcode/xcshareddata/xcschemes/TiledInterpreter.xcscheme b/.swiftpm/xcode/xcshareddata/xcschemes/TiledInterpreter.xcscheme new file mode 100644 index 0000000..ba01149 --- /dev/null +++ b/.swiftpm/xcode/xcshareddata/xcschemes/TiledInterpreter.xcscheme @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Sources/RedECS/Component/GameComponent.swift b/Sources/RedECS/Component/GameComponent.swift index 82a29e8..5854c65 100644 --- a/Sources/RedECS/Component/GameComponent.swift +++ b/Sources/RedECS/Component/GameComponent.swift @@ -1,3 +1,5 @@ public protocol GameComponent: Codable, Equatable { var entity: EntityId { get } + + init(entity: EntityId) } diff --git a/Sources/RedECS/Entity/EntityRepository.swift b/Sources/RedECS/Entity/EntityRepository.swift index 0a6aead..15450d4 100644 --- a/Sources/RedECS/Entity/EntityRepository.swift +++ b/Sources/RedECS/Entity/EntityRepository.swift @@ -1,6 +1,11 @@ public struct EntityRepository: Equatable, Codable { + public struct Constants { + public static let rootTreeId = "Root" + } + public private(set) var entities: [EntityId: GameEntity] = [:] public private(set) var tags: [String: Set] = [:] + public private(set) var tree: EntityTree = .init(id: Constants.rootTreeId) // TODO: use for rendering to power transform and show/hide capabilities public init() { } @@ -13,20 +18,96 @@ public struct EntityRepository: Equatable, Codable { public var entityIds: Dictionary.Keys { entities.keys } - - public mutating func addEntity(_ e: GameEntity) { +} + +// MARK: - Entity Lifecycle + +public extension EntityRepository { + mutating func addEntity(_ e: GameEntity) { assert(entities[e.id] == nil, "adding duplicate entity \(e.id)") - entities[e.id] = e + var e = e e.tags.forEach { tag in tags[tag, default: []].insert(e.id) } + + var parentId = Constants.rootTreeId + if let entityParent = e.parentId { + parentId = entityParent + } + var tree = self.tree + let result = insertEntity(e.id, intoTree: &tree, withParent: parentId) + self.tree = tree + assert(result, "Failed to find parent in tree '\(parentId)'") + e.parentId = parentId + entities[e.id] = e } - public mutating func removeEntity(_ id: EntityId) { + mutating func removeEntity(_ id: EntityId) { // assert(entities[id] != nil, "removing already removed entity") entities[id]?.tags.forEach { tag in tags[tag]?.remove(id) } + var tree = self.tree + _ = removeEntity(id, fromTree: &tree) + self.tree = tree entities[id] = nil } } + +// MARK: - Tree Management + +public extension EntityRepository { + mutating func insertEntity( + _ eId: EntityId, + intoTree tree: inout EntityTree, + withParent pId: EntityId + ) -> Bool { + if tree.id == pId { + tree.addChild(EntityTree(id: eId)) + return true + } else { + for i in 0.. Bool { + for i in 0.. EntityId { public struct GameEntity: Hashable, Identifiable, Codable { public var id: EntityId + public var parentId: EntityId? public var tags: Set public init( @@ -17,3 +18,18 @@ public struct GameEntity: Hashable, Identifiable, Codable { self.tags = tags } } + +public struct EntityTree: Hashable, Codable, Identifiable { + public var id: EntityId + public var children: [EntityTree]? + + public var childCount: Int { children?.count ?? 0 } + + mutating func addChild(_ c: EntityTree) { + if children == nil { + children = [c] + } else { + children?.append(c) + } + } +} diff --git a/Sources/RedECS/Rendering/Camera/CameraComponent.swift b/Sources/RedECS/Rendering/Camera/CameraComponent.swift index 57cd502..5d82616 100644 --- a/Sources/RedECS/Rendering/Camera/CameraComponent.swift +++ b/Sources/RedECS/Rendering/Camera/CameraComponent.swift @@ -7,6 +7,10 @@ public struct CameraComponent: GameComponent { public var offset: Point = .zero public var isPrimaryCamera: Bool = true + public init(entity: EntityId) { + self = .init(entity: entity, zoom: 1) + } + public init( entity: EntityId, zoom: Double = 1, diff --git a/Sources/RedECS/Rendering/RenderTriangle.swift b/Sources/RedECS/Rendering/RenderTriangle.swift index d9ceaf9..736a175 100644 --- a/Sources/RedECS/Rendering/RenderTriangle.swift +++ b/Sources/RedECS/Rendering/RenderTriangle.swift @@ -11,17 +11,20 @@ public struct RenderGroup { public let transformMatrix: Matrix3 public let fragmentType: FragmentType public let zIndex: Int + public let opacity: Double public init( triangles: [RenderTriangle], transformMatrix: Matrix3, fragmentType: FragmentType, - zIndex: Int + zIndex: Int, + opacity: Double = 1 ) { self.triangles = triangles self.transformMatrix = transformMatrix self.fragmentType = fragmentType self.zIndex = zIndex + self.opacity = opacity } } diff --git a/Sources/RedECS/Rendering/Shape/ShapeComponent.swift b/Sources/RedECS/Rendering/Shape/ShapeComponent.swift index 84b390c..256e5c2 100644 --- a/Sources/RedECS/Rendering/Shape/ShapeComponent.swift +++ b/Sources/RedECS/Rendering/Shape/ShapeComponent.swift @@ -8,7 +8,7 @@ public struct ShapeComponent: GameComponent { triangulate() } } - public var fillColor: Color + public var fillColor: Color = .pink public private(set) var triangles: [Triangle] = [] @@ -25,6 +25,10 @@ public struct ShapeComponent: GameComponent { } } + public init(entity: EntityId) { + self = .init(entity: entity, shape: .rect(.zero), fillColor: .clear) + } + public init( entity: EntityId, shape: Shape, diff --git a/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift b/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift index cae9951..3f2d8dd 100644 --- a/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift +++ b/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift @@ -16,6 +16,11 @@ public struct SpriteComponent: GameComponent { public var entity: EntityId public var texture: TextureReference public var animation: SpriteAnimation? + public var opacity: Double = 1 // TODO: implement rendering implications + + public init(entity: EntityId) { + self.init(entity: entity, texture: .empty) + } public init( entity: EntityId, diff --git a/Sources/RedECS/Rendering/TileMap/TileMapComponent.swift b/Sources/RedECS/Rendering/TileMap/TileMapComponent.swift index 4033fc0..b0c397e 100644 --- a/Sources/RedECS/Rendering/TileMap/TileMapComponent.swift +++ b/Sources/RedECS/Rendering/TileMap/TileMapComponent.swift @@ -2,7 +2,12 @@ import TiledInterpreter public struct TileMapComponent: GameComponent { public var entity: EntityId - public var tileMap: TiledMapJSON + public var tileMap: TiledMapJSON? + + public init(entity: EntityId) { + self.entity = entity + self.tileMap = nil + } public init( entity: EntityId, diff --git a/Sources/RedECS/Rendering/TileMap/TileMapRenderingReducer.swift b/Sources/RedECS/Rendering/TileMap/TileMapRenderingReducer.swift index 8f02d16..82ae37a 100644 --- a/Sources/RedECS/Rendering/TileMap/TileMapRenderingReducer.swift +++ b/Sources/RedECS/Rendering/TileMap/TileMapRenderingReducer.swift @@ -9,25 +9,26 @@ public struct TileMapRenderingReducer: Reducer { environment: RenderingEnvironment ) -> GameEffect { state.tileMap.forEach { (id, tileMap) in - guard let transform = state.transform[id] else { return } + guard let tileMap = tileMap.tileMap, + let transform = state.transform[id] else { return } // let cameraRect = environment.renderer.cameraFrame - let tileWidth = tileMap.tileMap.tileWidth, - tileHeight = tileMap.tileMap.tileHeight, - layerCols = tileMap.tileMap.width, - layerRows = tileMap.tileMap.height, + let tileWidth = tileMap.tileWidth, + tileHeight = tileMap.tileHeight, + layerCols = tileMap.width, + layerRows = tileMap.height, tileSize = Size(width: Double(tileWidth), height: Double(tileHeight)) - tileMap.tileMap.tileLayers.enumerated().forEach { (i, layer) in - guard let tileSetName = tileMap.tileMap.tileSets.first?.source, + tileMap.tileLayers.enumerated().forEach { (i, layer) in + guard let tileSetName = tileMap.tileSets.first?.source, let tileSet = environment.resourceManager.tileSets[tileSetName] else { return } let matrix = transform.matrix(containerSize: Size( - width: tileMap.tileMap.totalWidth, - height: tileMap.tileMap.totalHeight + width: tileMap.totalWidth, + height: tileMap.totalHeight )) var renderTriangles: [RenderTriangle] = [] diff --git a/Sources/RedECS/Rendering/Transform/TransformComponent.swift b/Sources/RedECS/Rendering/Transform/TransformComponent.swift index 0177e31..de53fe4 100644 --- a/Sources/RedECS/Rendering/Transform/TransformComponent.swift +++ b/Sources/RedECS/Rendering/Transform/TransformComponent.swift @@ -9,8 +9,12 @@ public struct TransformComponent: GameComponent { public var scale: Point = Point(x: 1, y: 1) public var zIndex: Int = 0 - public var parentId: EntityId? - public var isHidden: Bool = false + public var parentId: EntityId? // TODO: implement rendering implications + public var isHidden: Bool = false // TODO: implement rendering implications + + public init(entity: EntityId) { + self = .init(entity: entity, position: .zero) + } public init( entity: EntityId, diff --git a/Sources/RedECS/Store/GameEffect.swift b/Sources/RedECS/Store/GameEffect.swift index 34d0465..f2c6cf5 100644 --- a/Sources/RedECS/Store/GameEffect.swift +++ b/Sources/RedECS/Store/GameEffect.swift @@ -29,38 +29,114 @@ public indirect enum GameEffect { } } -public enum SystemAction { - case addEntity(EntityId, Set) - case removeEntity(EntityId) - case addComponent(EntityId, AnyComponent) - case removeComponent(EntityId, RegisteredComponentId) - - public func map( - _ stateTransform: WritableKeyPath - ) -> SystemAction { - switch self { - case .addEntity(let e, let tags): - return .addEntity(e, tags) - case .removeEntity(let e): - return .removeEntity(e) - case .addComponent(let eId, let registeredComponent): - return .addComponent(eId, registeredComponent.map(stateTransform)) - case .removeComponent(let e, let registeredComponentId): - return .removeComponent(e, registeredComponentId) - } +public extension GameEffect { + static func newEntity( + _ entityId: EntityId = newEntityId(), + with c1KeyPath: WritableKeyPath, + _ modify: (inout C1) -> Void + ) -> GameEffect { + var c1 = C1.init(entity: entityId) + modify(&c1) + return .many([ + .system(.addEntity(entityId, [])), + .system(.addComponent(c1, into: c1KeyPath)) + ]) } - - public static func addComponent( - _ component: C, - into keyPath: WritableKeyPath - ) -> Self { - .addComponent(component.entity, AnyComponent(component, into: keyPath)) + + static func newEntity( + _ entityId: EntityId = newEntityId(), + with c1KeyPath: WritableKeyPath, + _ c2KeyPath: WritableKeyPath, + _ modify: (inout C1, inout C2) -> Void + ) -> GameEffect { + var c1 = C1.init(entity: entityId) + var c2 = C2.init(entity: entityId) + modify(&c1, &c2) + return .many([ + .system(.addEntity(entityId, [])), + .system(.addComponent(c1, into: c1KeyPath)), + .system(.addComponent(c2, into: c2KeyPath)) + ]) } - - public static func removeComponent( - ofType type: C.Type, - forEntity entity: EntityId - ) -> Self { - .removeComponent(entity, String(describing: C.self)) + + static func newEntity< + C1: GameComponent, + C2: GameComponent, + C3: GameComponent + >( + _ entityId: EntityId = newEntityId(), + with c1KeyPath: WritableKeyPath, + _ c2KeyPath: WritableKeyPath, + _ c3KeyPath: WritableKeyPath, + _ modify: (inout C1, inout C2, inout C3) -> Void + ) -> GameEffect { + var c1 = C1.init(entity: entityId) + var c2 = C2.init(entity: entityId) + var c3 = C3.init(entity: entityId) + modify(&c1, &c2, &c3) + return .many([ + .system(.addEntity(entityId, [])), + .system(.addComponent(c1, into: c1KeyPath)), + .system(.addComponent(c2, into: c2KeyPath)), + .system(.addComponent(c3, into: c3KeyPath)) + ]) + } + + static func newEntity< + C1: GameComponent, + C2: GameComponent, + C3: GameComponent, + C4: GameComponent + >( + _ entityId: EntityId = newEntityId(), + with c1KeyPath: WritableKeyPath, + _ c2KeyPath: WritableKeyPath, + _ c3KeyPath: WritableKeyPath, + _ c4KeyPath: WritableKeyPath, + _ modify: (inout C1, inout C2, inout C3, inout C4) -> Void + ) -> GameEffect { + var c1 = C1.init(entity: entityId) + var c2 = C2.init(entity: entityId) + var c3 = C3.init(entity: entityId) + var c4 = C4.init(entity: entityId) + modify(&c1, &c2, &c3, &c4) + return .many([ + .system(.addEntity(entityId, [])), + .system(.addComponent(c1, into: c1KeyPath)), + .system(.addComponent(c2, into: c2KeyPath)), + .system(.addComponent(c3, into: c3KeyPath)), + .system(.addComponent(c4, into: c4KeyPath)) + ]) + } + + static func newEntity< + C1: GameComponent, + C2: GameComponent, + C3: GameComponent, + C4: GameComponent, + C5: GameComponent + >( + _ entityId: EntityId = newEntityId(), + with c1KeyPath: WritableKeyPath, + _ c2KeyPath: WritableKeyPath, + _ c3KeyPath: WritableKeyPath, + _ c4KeyPath: WritableKeyPath, + _ c5KeyPath: WritableKeyPath, + _ modify: (inout C1, inout C2, inout C3, inout C4, inout C5) -> Void + ) -> GameEffect { + var c1 = C1.init(entity: entityId) + var c2 = C2.init(entity: entityId) + var c3 = C3.init(entity: entityId) + var c4 = C4.init(entity: entityId) + var c5 = C5.init(entity: entityId) + modify(&c1, &c2, &c3, &c4, &c5) + return .many([ + .system(.addEntity(entityId, [])), + .system(.addComponent(c1, into: c1KeyPath)), + .system(.addComponent(c2, into: c2KeyPath)), + .system(.addComponent(c3, into: c3KeyPath)), + .system(.addComponent(c4, into: c4KeyPath)), + .system(.addComponent(c5, into: c5KeyPath)) + ]) } } diff --git a/Sources/RedECS/Store/SystemAction.swift b/Sources/RedECS/Store/SystemAction.swift new file mode 100644 index 0000000..26a62f2 --- /dev/null +++ b/Sources/RedECS/Store/SystemAction.swift @@ -0,0 +1,35 @@ +public enum SystemAction { + case addEntity(EntityId, Set) + case removeEntity(EntityId) + case addComponent(EntityId, AnyComponent) + case removeComponent(EntityId, RegisteredComponentId) + + public func map( + _ stateTransform: WritableKeyPath + ) -> SystemAction { + switch self { + case .addEntity(let e, let tags): + return .addEntity(e, tags) + case .removeEntity(let e): + return .removeEntity(e) + case .addComponent(let eId, let registeredComponent): + return .addComponent(eId, registeredComponent.map(stateTransform)) + case .removeComponent(let e, let registeredComponentId): + return .removeComponent(e, registeredComponentId) + } + } + + public static func addComponent( + _ component: C, + into keyPath: WritableKeyPath + ) -> Self { + .addComponent(component.entity, AnyComponent(component, into: keyPath)) + } + + public static func removeComponent( + ofType type: C.Type, + forEntity entity: EntityId + ) -> Self { + .removeComponent(entity, String(describing: C.self)) + } +} diff --git a/Sources/RedECSAppleSupport/MetalRenderer.swift b/Sources/RedECSAppleSupport/MetalRenderer.swift index 607aa59..fcbf162 100644 --- a/Sources/RedECSAppleSupport/MetalRenderer.swift +++ b/Sources/RedECSAppleSupport/MetalRenderer.swift @@ -74,7 +74,7 @@ public class MetalRenderer: NSObject, MTKViewDelegate { pipelineDescriptor.colorAttachments[0].isBlendingEnabled = true pipelineDescriptor.colorAttachments[0].rgbBlendOperation = .add pipelineDescriptor.colorAttachments[0].alphaBlendOperation = .add - pipelineDescriptor.colorAttachments[0].sourceRGBBlendFactor = .one + pipelineDescriptor.colorAttachments[0].sourceRGBBlendFactor = .sourceAlpha pipelineDescriptor.colorAttachments[0].sourceAlphaBlendFactor = .sourceAlpha pipelineDescriptor.colorAttachments[0].destinationRGBBlendFactor = .oneMinusSourceAlpha pipelineDescriptor.colorAttachments[0].destinationAlphaBlendFactor = .oneMinusSourceAlpha diff --git a/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityComponent.swift b/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityComponent.swift index 16bd5f4..b35d4e9 100644 --- a/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityComponent.swift +++ b/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityComponent.swift @@ -1,14 +1,18 @@ -//import RedECS -//import Geometry -// -//public struct FollowEntityComponent: GameComponent { -// public var entity: EntityId -// public var leaderId: EntityId -// public var maxDistance: Double -// -// public init(entity: EntityId, leaderId: EntityId, maxDistance: Double) { -// self.entity = entity -// self.leaderId = leaderId -// self.maxDistance = maxDistance -// } -//} +import RedECS +import Geometry + +public struct FollowEntityComponent: GameComponent { + public var entity: EntityId + public var leaderId: EntityId + public var maxDistance: Double + + public init(entity: EntityId) { + self = .init(entity: entity, leaderId: "", maxDistance: .greatestFiniteMagnitude) + } + + public init(entity: EntityId, leaderId: EntityId, maxDistance: Double) { + self.entity = entity + self.leaderId = leaderId + self.maxDistance = maxDistance + } +} diff --git a/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityReducer.swift b/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityReducer.swift index 2ec6945..b1a8619 100644 --- a/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityReducer.swift +++ b/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityReducer.swift @@ -1,24 +1,24 @@ -//import RedECS -//import Geometry -// -//public struct FollowEntityReducerContext: GameState { -// public var entities: EntityRepository = .init() -// public var transform: [EntityId: TransformComponent] -// public var movement: [EntityId: MovementComponent] -// public var followEntity: [EntityId: FollowEntityComponent] -// -// public init( -// entities: EntityRepository = .init(), -// transform: [EntityId: TransformComponent], -// movement: [EntityId : MovementComponent], -// followEntity: [EntityId : FollowEntityComponent] -// ) { -// self.entities = entities -// self.transform = transform -// self.movement = movement -// self.followEntity = followEntity -// } -//} +import RedECS +import Geometry + +public struct FollowEntityReducerContext: GameState { + public var entities: EntityRepository = .init() + public var transform: [EntityId: TransformComponent] + public var movement: [EntityId: MovementComponent] + public var followEntity: [EntityId: FollowEntityComponent] + + public init( + entities: EntityRepository = .init(), + transform: [EntityId: TransformComponent], + movement: [EntityId : MovementComponent], + followEntity: [EntityId : FollowEntityComponent] + ) { + self.entities = entities + self.transform = transform + self.movement = movement + self.followEntity = followEntity + } +} // //public struct FollowEntityReducer: Reducer { // public init() {} diff --git a/Sources/RedECSBasicComponents/Input/KeyboardInputComponent.swift b/Sources/RedECSBasicComponents/Input/KeyboardInputComponent.swift index 59d8a3a..fb1eee6 100644 --- a/Sources/RedECSBasicComponents/Input/KeyboardInputComponent.swift +++ b/Sources/RedECSBasicComponents/Input/KeyboardInputComponent.swift @@ -28,6 +28,10 @@ public struct KeyboardInputComponent: GameComponent public var pressedKeys: [KeyboardInput: Bool] public var keyMap: [Mapping] + public init(entity: EntityId) { + self = .init(entity: entity, pressedKeys: [:], keyMap: []) + } + public init( entity: EntityId, pressedKeys: [KeyboardInput: Bool] = [:], diff --git a/Sources/RedECSBasicComponents/InteractionComponent.swift b/Sources/RedECSBasicComponents/InteractionComponent.swift index 1a4fa25..e061152 100644 --- a/Sources/RedECSBasicComponents/InteractionComponent.swift +++ b/Sources/RedECSBasicComponents/InteractionComponent.swift @@ -6,15 +6,19 @@ public struct InteractionComponent: GameComponent { case selection } public var entity: EntityId - public var interactionType: InteractionType - public var action: Action + public var interactionType: InteractionType? + public var action: Action? public var radius: Double public var triggerTags: Set + public init(entity: EntityId) { + self = .init(entity: entity, interactionType: nil, action: nil, radius: 0, triggerTags: []) + } + public init( entity: EntityId, - interactionType: InteractionType, - action: Action, + interactionType: InteractionType?, + action: Action?, radius: Double, triggerTags: Set ) { @@ -59,7 +63,7 @@ public struct InteractionWhenNearbyReducer: Reducer state.interaction .filter { $1.interactionType == .proximity } .forEach { interactionId, interaction in - guard let interactionTransform = state.transform[interactionId] else { + guard let action = interaction.action, let interactionTransform = state.transform[interactionId] else { return } @@ -71,7 +75,7 @@ public struct InteractionWhenNearbyReducer: Reducer return } if interactionTransform.position.distanceFrom(triggererTransform.position) <= interaction.radius { - effects.append(.game(interaction.action)) + effects.append(.game(action)) } }) } diff --git a/Sources/RedECSBasicComponents/Momentum/MomentumComponent.swift b/Sources/RedECSBasicComponents/Momentum/MomentumComponent.swift index 0240c6a..f7b4f0a 100644 --- a/Sources/RedECSBasicComponents/Momentum/MomentumComponent.swift +++ b/Sources/RedECSBasicComponents/Momentum/MomentumComponent.swift @@ -4,6 +4,10 @@ import Geometry public struct MomentumComponent: GameComponent { public let entity: EntityId public var velocity: Point + + public init(entity: EntityId) { + self = .init(entity: entity, velocity: .zero) + } public init( entity: EntityId, velocity: Point diff --git a/Sources/RedECSBasicComponents/Movement/MovementComponent.swift b/Sources/RedECSBasicComponents/Movement/MovementComponent.swift index bb95fd1..3cf2be1 100644 --- a/Sources/RedECSBasicComponents/Movement/MovementComponent.swift +++ b/Sources/RedECSBasicComponents/Movement/MovementComponent.swift @@ -6,6 +6,11 @@ public struct MovementComponent: GameComponent { public var velocity: Point public var travelSpeed: Double public var recentVelocityHistory: [Point] = [] + + public init(entity: EntityId) { + self = .init(entity: entity, velocity: .zero, travelSpeed: 1) + } + public init( entity: EntityId, velocity: Point, diff --git a/Sources/RedECSBasicComponents/Operation/BasicOperationComponentContext.swift b/Sources/RedECSBasicComponents/Operation/BasicOperationComponentContext.swift index 84646fa..f1c4c2d 100644 --- a/Sources/RedECSBasicComponents/Operation/BasicOperationComponentContext.swift +++ b/Sources/RedECSBasicComponents/Operation/BasicOperationComponentContext.swift @@ -6,9 +6,9 @@ public struct BasicOperationComponentContext: GameState { public var sprite: [EntityId: SpriteComponent] = [:] public init( - entities: EntityRepository = .init(), - transform: [EntityId: TransformComponent] = [:], - sprite: [EntityId: SpriteComponent] = [:] + entities: EntityRepository, + transform: [EntityId: TransformComponent], + sprite: [EntityId: SpriteComponent] ) { self.entities = entities self.transform = transform diff --git a/Sources/RedECSBasicComponents/Operation/Operation.swift b/Sources/RedECSBasicComponents/Operation/Operation.swift index 0d75fde..2da1384 100644 --- a/Sources/RedECSBasicComponents/Operation/Operation.swift +++ b/Sources/RedECSBasicComponents/Operation/Operation.swift @@ -1,17 +1,14 @@ import RedECS // TODO: Implement these: -// Repeat Count -// Scale -// Rotate -// Show/Hide -// Animate // Follow Path +// speed increase/decrease public protocol Operation: Codable & Equatable { associatedtype Action: Equatable & Codable var currentTime: Double { get } + var duration: Double { get } var isComplete: Bool { get } mutating func run( @@ -22,3 +19,8 @@ public protocol Operation: Codable & Equatable { mutating func reset() } + +public extension Operation { + static var InstantDuration: Double { 0 } + static var InfiniteDuration: Double { -1 } +} diff --git a/Sources/RedECSBasicComponents/Operation/OperationComponent.swift b/Sources/RedECSBasicComponents/Operation/OperationComponent.swift index 8661124..1139053 100644 --- a/Sources/RedECSBasicComponents/Operation/OperationComponent.swift +++ b/Sources/RedECSBasicComponents/Operation/OperationComponent.swift @@ -6,15 +6,21 @@ public protocol OperationCapable: GameState { var operation: [EntityId: OperationComponent] { get set } var transform: [EntityId: TransformComponent] { get set } + var sprite: [EntityId: SpriteComponent] { get set } } extension OperationCapable { var basicOperationComponentState: BasicOperationComponentContext { get { - BasicOperationComponentContext(entities: entities, transform: transform) + BasicOperationComponentContext( + entities: entities, + transform: transform, + sprite: sprite + ) } set { self.transform = newValue.transform + self.sprite = newValue.sprite } } } @@ -23,6 +29,10 @@ public struct OperationComponent: GameComponent public var entity: EntityId public var type: OperationType? + public init(entity: EntityId) { + self = .init(entity: entity, type: nil) + } + public init ( entity: EntityId, type: OperationType? = nil diff --git a/Sources/RedECSBasicComponents/Operation/OperationReducer.swift b/Sources/RedECSBasicComponents/Operation/OperationReducer.swift index f3e8c7b..e2b2e98 100644 --- a/Sources/RedECSBasicComponents/Operation/OperationReducer.swift +++ b/Sources/RedECSBasicComponents/Operation/OperationReducer.swift @@ -4,15 +4,18 @@ public struct OperationComponentContext: GameSt public var entities: EntityRepository = .init() public var operation: [EntityId: OperationComponent] = [:] public var transform: [EntityId: TransformComponent] = [:] + public var sprite: [EntityId : SpriteComponent] = [:] public init( - entities: EntityRepository = .init(), - operation: [EntityId : OperationComponent] = [:], - transform: [EntityId: TransformComponent] = [:] + entities: EntityRepository, + operation: [EntityId : OperationComponent], + transform: [EntityId: TransformComponent], + sprite: [EntityId : SpriteComponent] ) { self.entities = entities self.operation = operation self.transform = transform + self.sprite = sprite } } diff --git a/Sources/RedECSBasicComponents/Operation/OperationType.swift b/Sources/RedECSBasicComponents/Operation/OperationType.swift index e7a84ba..11fb476 100644 --- a/Sources/RedECSBasicComponents/Operation/OperationType.swift +++ b/Sources/RedECSBasicComponents/Operation/OperationType.swift @@ -4,12 +4,45 @@ import Geometry public indirect enum OperationType: Codable & Equatable { case move(MoveOperation) case rotate(RotateOperation) + case scale(ScaleOperation) case wait(WaitOperation) - case repeatForever(RepeatForeverOperation) + case `repeat`(RepeatOperation) case sequence(SequenceOperation) case group(GroupOperation) case call(CallOperation) case animate(AnimateOperation) + case opacity(OpacityOperation) + case visibility(VisibilityOperation) + case timing(TimingOperation) + + public var duration: Double { + switch self { + case .move(let moveOperation): + return moveOperation.duration + case .rotate(let rotateOperation): + return rotateOperation.duration + case .scale(let scaleOperation): + return scaleOperation.duration + case .wait(let waitOperation): + return waitOperation.duration + case .sequence(let sequenceOperation): + return sequenceOperation.duration + case .group(let groupOp): + return groupOp.duration + case .repeat(let repeatOp): + return repeatOp.duration + case .call(let callOp): + return callOp.duration + case .animate(let animOp): + return animOp.duration + case .opacity(let opOp): + return opOp.duration + case .visibility(let visOp): + return visOp.duration + case .timing(let timing): + return timing.duration + } + } public var isComplete: Bool { switch self { @@ -17,18 +50,26 @@ public indirect enum OperationType: Codable & E return moveOperation.isComplete case .rotate(let rotateOperation): return rotateOperation.isComplete + case .scale(let scaleOperation): + return scaleOperation.isComplete case .wait(let waitOperation): return waitOperation.isComplete case .sequence(let sequenceOperation): return sequenceOperation.isComplete case .group(let groupOp): return groupOp.isComplete - case .repeatForever(let repeatOp): + case .repeat(let repeatOp): return repeatOp.isComplete case .call(let callOp): return callOp.isComplete case .animate(let animOp): return animOp.isComplete + case .opacity(let opOp): + return opOp.isComplete + case .visibility(let visOp): + return visOp.isComplete + case .timing(let timing): + return timing.isComplete } } @@ -46,9 +87,13 @@ public indirect enum OperationType: Codable & E _ = rotate.run(id: id, state: &state, delta: delta) self = .rotate(rotate) return .none - case .repeatForever(var rp): + case .scale(var scale): + _ = scale.run(id: id, state: &state, delta: delta) + self = .scale(scale) + return .none + case .repeat(var rp): let effect = rp.run(id: id, state: &state, delta: delta) - self = .repeatForever(rp) + self = .repeat(rp) return effect case .move(var move): _ = move.run(id: id, state: &state, delta: delta) @@ -70,6 +115,18 @@ public indirect enum OperationType: Codable & E _ = anim.run(id: id, state: &state, delta: delta) self = .animate(anim) return .none + case .opacity(var opacity): + _ = opacity.run(id: id, state: &state, delta: delta) + self = .opacity(opacity) + return .none + case .visibility(var visibility): + _ = visibility.run(id: id, state: &state, delta: delta) + self = .visibility(visibility) + return .none + case .timing(var timing): + _ = timing.run(id: id, state: &state, delta: delta) + self = .timing(timing) + return .none } } @@ -81,9 +138,12 @@ public indirect enum OperationType: Codable & E case .rotate(var rotate): rotate.reset() self = .rotate(rotate) - case .repeatForever(var rp): + case .scale(var scale): + scale.reset() + self = .scale(scale) + case .repeat(var rp): rp.reset() - self = .repeatForever(rp) + self = .repeat(rp) case .move(var move): move.reset() self = .move(move) @@ -99,6 +159,15 @@ public indirect enum OperationType: Codable & E case .animate(var anim): anim.reset() self = .animate(anim) + case .opacity(var opacity): + opacity.reset() + self = .opacity(opacity) + case .visibility(var visibility): + visibility.reset() + self = .visibility(visibility) + case .timing(var timing): + timing.reset() + self = .timing(timing) } } @@ -140,32 +209,44 @@ public extension OperationType { } public extension OperationType { - static func moveBy(_ amount: Point, duration: Double) -> Self { - .move(MoveOperation(strategy: .by(amount), duration: duration)) + static func move(_ strategy: MoveOperation.Strategy, duration: Double) -> Self { + .move(MoveOperation(strategy: strategy, duration: duration)) } - func moveBy(_ amount: Point, duration: Double) -> Self { + func move(_ strategy: MoveOperation.Strategy, duration: Double) -> Self { var component = self - let moveOp = MoveOperation(strategy: .by(amount), duration: duration) + let moveOp = MoveOperation(strategy: strategy, duration: duration) component.appendOperation(.move(moveOp)) return component } } - public extension OperationType { - static func rotateBy(_ amount: Double, duration: Double) -> Self { - .rotate(RotateOperation(strategy: .by(amount), duration: duration)) + static func rotate(_ strategy: RotateOperation.Strategy, duration: Double) -> Self { + .rotate(RotateOperation(strategy: strategy, duration: duration)) } - func rotateBy(_ amount: Double, duration: Double) -> Self { + func rotate(_ strategy: RotateOperation.Strategy, duration: Double) -> Self { var component = self - let rotateOp = RotateOperation(strategy: .by(amount), duration: duration) + let rotateOp = RotateOperation(strategy: strategy, duration: duration) component.appendOperation(.rotate(rotateOp)) return component } } +public extension OperationType { + static func scale(_ strategy: ScaleOperation.Strategy, duration: Double) -> Self { + .scale(ScaleOperation(strategy: strategy, duration: duration)) + } + + func scale(_ strategy: ScaleOperation.Strategy, duration: Double) -> Self { + var component = self + let scale = ScaleOperation(strategy: strategy, duration: duration) + component.appendOperation(.scale(scale)) + return component + } +} + public extension OperationType { static func wait(duration: Double) -> Self { @@ -181,14 +262,14 @@ public extension OperationType { } public extension OperationType { - func repeatForever() -> Self { - if case .repeatForever = self { + func `repeat`(_ strategy: RepeatOperation.Strategy) -> Self { + if case .repeat(let op) = self, op.strategy == .forever { return self } var component = self - let repeatOp = RepeatForeverOperation(operation: self) - component.appendOperation(.repeatForever(repeatOp)) + let repeatOp = RepeatOperation(strategy: strategy, operation: self) + component.appendOperation(.repeat(repeatOp)) return component } } @@ -216,3 +297,33 @@ public extension OperationType { return component } } + +public extension OperationType { + static func visibility(_ strategy: VisibilityOperation.Strategy) -> Self { + return .visibility(VisibilityOperation(strategy: strategy)) + } + + func visibility(_ strategy: VisibilityOperation.Strategy) -> Self { + var component = self + component.appendOperation(.visibility(VisibilityOperation(strategy: strategy))) + return component + } +} + +public extension OperationType { + static func opacity(_ strategy: OpacityOperation.Strategy, duration: Double) -> Self { + return .opacity(OpacityOperation(strategy: strategy, duration: duration)) + } + + func opacity(_ strategy: OpacityOperation.Strategy, duration: Double) -> Self { + var component = self + component.appendOperation(.opacity(OpacityOperation(strategy: strategy, duration: duration))) + return component + } +} + +public extension OperationType { + func timing(_ strategy: TimingOperation.Strategy) -> Self { + .timing(TimingOperation(strategy: strategy, operation: self)) + } +} diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/AnimateOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/AnimateOperation.swift index f4f38f6..b68a2c1 100644 --- a/Sources/RedECSBasicComponents/Operation/OperationTypes/AnimateOperation.swift +++ b/Sources/RedECSBasicComponents/Operation/OperationTypes/AnimateOperation.swift @@ -10,11 +10,15 @@ public struct AnimateOperation: Operation { self.duration = duration } } + public var currentTime: Double = 0 public var currentFrameTime: Double = 0 public var currentFrameIndex: Int = 0 public var frames: [FrameData] public var isComplete: Bool = false + public var duration: Double { + frames.reduce(0) { $0 + $1.duration } + } public init( frames: [FrameData] diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/CallOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/CallOperation.swift index ae098a0..6e6b646 100644 --- a/Sources/RedECSBasicComponents/Operation/OperationTypes/CallOperation.swift +++ b/Sources/RedECSBasicComponents/Operation/OperationTypes/CallOperation.swift @@ -2,6 +2,7 @@ import RedECS public struct CallOperation: Operation { public var currentTime: Double = 0 + public var duration: Double { Self.InstantDuration } public var action: GameAction public var isComplete: Bool = false diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/GroupOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/GroupOperation.swift index 44623d8..52f8b90 100644 --- a/Sources/RedECSBasicComponents/Operation/OperationTypes/GroupOperation.swift +++ b/Sources/RedECSBasicComponents/Operation/OperationTypes/GroupOperation.swift @@ -7,6 +7,11 @@ public struct GroupOperation: Operation { public var currentOperationCompletionCount: Int = 0 public var isComplete: Bool { currentOperationCompletionCount >= operations.count } + public var duration: Double { + let max = operations.max(by: { $0.duration < $1.duration })?.duration + return max ?? Self.InstantDuration + } + public init( operations: [OperationType] ) { diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/MoveOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/MoveOperation.swift index 05b778a..749fdc8 100644 --- a/Sources/RedECSBasicComponents/Operation/OperationTypes/MoveOperation.swift +++ b/Sources/RedECSBasicComponents/Operation/OperationTypes/MoveOperation.swift @@ -10,6 +10,7 @@ public struct MoveOperation: Operation { } public var strategy: Strategy + public var amount: Point = .zero public var duration: Double public var currentTime: Double = 0 @@ -22,15 +23,21 @@ public struct MoveOperation: Operation { } public mutating func run(id: EntityId, state: inout BasicOperationComponentContext, delta: Double) -> GameEffect { - switch strategy { - case .by(let point): - let percentage = delta / duration - let moveByIncrement = point * percentage - state.transform[id]?.position += moveByIncrement - currentTime += delta - case .to(_): - fatalError("not implemented yet") + if currentTime == 0 { + switch strategy { + case .by(let amount): + self.amount = amount + case .to(let location): + let currentPos = (state.transform[id]?.position ?? .zero) + self.amount = location.diffOf(currentPos) + } } + + let percentage = delta / duration + let moveByIncrement = amount * percentage + state.transform[id]?.position += moveByIncrement + currentTime += delta + return .none } diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/OpacityOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/OpacityOperation.swift new file mode 100644 index 0000000..aafe041 --- /dev/null +++ b/Sources/RedECSBasicComponents/Operation/OperationTypes/OpacityOperation.swift @@ -0,0 +1,58 @@ +import RedECS +import Geometry + +public struct OpacityOperation: Operation { + public typealias Action = Int + + public enum Strategy: Equatable, Codable { + case by(Double) // degrees + case to(Double) + } + + public var strategy: Strategy + public var amount: Double = 0 + public var duration: Double + public var currentTime: Double = 0 + + public var isComplete: Bool { currentTime >= duration } + + public init( + strategy: Strategy, + duration: Double, + currentTime: Double = 0 + ) { + self.strategy = strategy + self.duration = duration + self.currentTime = currentTime + } + + public mutating func run( + id: EntityId, + state: inout BasicOperationComponentContext, + delta: Double + ) -> GameEffect { + if currentTime == 0 { + switch strategy { + case .by(let amount): + self.amount = amount + case .to(let opacity): + let current = (state.sprite[id]?.opacity ?? 0) + if opacity > current { + self.amount = opacity - current + } else { + self.amount = -(current - opacity) + } + } + } + + let percentage = delta / duration + let opacityIncrement = amount * percentage + state.sprite[id]?.opacity += opacityIncrement + currentTime += delta + return .none + } + + public mutating func reset() { + currentTime = 0 + } +} diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/RepeatForeverOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/RepeatForeverOperation.swift deleted file mode 100644 index b9a7c28..0000000 --- a/Sources/RedECSBasicComponents/Operation/OperationTypes/RepeatForeverOperation.swift +++ /dev/null @@ -1,33 +0,0 @@ -import RedECS - -public struct RepeatForeverOperation: Operation { - public var operation: OperationType - public var currentTime: Double = 0 - public var isComplete: Bool { false } - - public init( - operation: OperationType - ) { - self.operation = operation - } - - public mutating func run( - id: EntityId, - state: inout BasicOperationComponentContext, - delta: Double - ) -> GameEffect { - - let effect = operation.run(id: id, state: &state, delta: delta) - - if operation.isComplete { - operation.reset() - } - - return effect - } - - public mutating func reset() { - currentTime = 0 - operation.reset() - } -} diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/RepeatOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/RepeatOperation.swift new file mode 100644 index 0000000..2ba3010 --- /dev/null +++ b/Sources/RedECSBasicComponents/Operation/OperationTypes/RepeatOperation.swift @@ -0,0 +1,65 @@ +import RedECS + +public struct RepeatOperation: Operation { + public enum Strategy: Equatable, Codable { + case forever + case times(Int) + } + + public var strategy: Strategy + public var operation: OperationType + public var totalTime: Double = 0 + public var currentTime: Double = 0 + public var isComplete: Bool = false + + public var duration: Double { + switch strategy { + case .forever: + return Self.InfiniteDuration + case .times(let times): + return operation.duration * Double(times) + } + } + + public init( + strategy: Strategy, + operation: OperationType + ) { + self.strategy = strategy + self.operation = operation + } + + public mutating func run( + id: EntityId, + state: inout BasicOperationComponentContext, + delta: Double + ) -> GameEffect { + + let effect = operation.run(id: id, state: &state, delta: delta) + + currentTime += delta + totalTime += delta + + switch strategy { + case .forever: break + case .times(let count): + if Int(totalTime / currentTime) >= count { + isComplete = true + } + } + + if operation.isComplete { + currentTime = 0 + operation.reset() + } + + return effect + } + + public mutating func reset() { + currentTime = 0 + totalTime = 0 + operation.reset() + isComplete = false + } +} diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/RotateOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/RotateOperation.swift index c868d6a..dc04a74 100644 --- a/Sources/RedECSBasicComponents/Operation/OperationTypes/RotateOperation.swift +++ b/Sources/RedECSBasicComponents/Operation/OperationTypes/RotateOperation.swift @@ -10,6 +10,7 @@ public struct RotateOperation: Operation { } public var strategy: Strategy + public var amount: Double = 0 public var duration: Double public var currentTime: Double = 0 @@ -30,15 +31,23 @@ public struct RotateOperation: Operation { state: inout BasicOperationComponentContext, delta: Double ) -> GameEffect { - switch strategy { - case .by(let amount): - let percentage = delta / duration - let rotateByIncrement = amount * percentage - state.transform[id]?.rotate += rotateByIncrement - case .to(_): - fatalError("not implemented yet") - break + if currentTime == 0 { + switch strategy { + case .by(let amount): + self.amount = amount + case .to(let angle): + let rotation = (state.transform[id]?.rotate ?? 0) + if angle > rotation { + self.amount = angle - rotation + } else { + self.amount = -(rotation - angle) + } + } } + + let percentage = delta / duration + let rotateByIncrement = amount * percentage + state.transform[id]?.rotate += rotateByIncrement currentTime += delta return .none } diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/ScaleOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/ScaleOperation.swift index 69c9df6..6da1a93 100644 --- a/Sources/RedECSBasicComponents/Operation/OperationTypes/ScaleOperation.swift +++ b/Sources/RedECSBasicComponents/Operation/OperationTypes/ScaleOperation.swift @@ -2,29 +2,41 @@ import RedECS import Geometry public struct ScaleOperation: Operation { - enum Strategy { + public enum Strategy: Equatable, Codable { case by(Point) case to(Point) } public typealias Action = Int - public var moveBy: Point + public var strategy: Strategy + public var amount: Point = .zero public var duration: Double public var currentTime: Double = 0 public var isComplete: Bool { currentTime >= duration } - public init(moveBy: Point, duration: Double, currentTime: Double = 0) { - self.moveBy = moveBy + public init(strategy: Strategy, duration: Double, currentTime: Double = 0) { + self.strategy = strategy self.duration = duration self.currentTime = currentTime } public mutating func run(id: EntityId, state: inout BasicOperationComponentContext, delta: Double) -> GameEffect { + + if currentTime == 0 { + switch strategy { + case .by(let point): + self.amount = point + case .to(let point): + let scale = state.transform[id]?.scale ?? .zero + self.amount = point - scale + } + } + let percentage = delta / duration - let moveByIncrement = moveBy * percentage - state.transform[id]?.position += moveByIncrement + let scaleIncrement = amount * percentage + state.transform[id]?.scale += scaleIncrement currentTime += delta return .none } diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/SequenceOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/SequenceOperation.swift index f9fd190..a94e8ef 100644 --- a/Sources/RedECSBasicComponents/Operation/OperationTypes/SequenceOperation.swift +++ b/Sources/RedECSBasicComponents/Operation/OperationTypes/SequenceOperation.swift @@ -4,6 +4,14 @@ public struct SequenceOperation: Operation { public var currentTime: Double = 0 public var operations: [OperationType] + public var duration: Double { + if operations.isEmpty { + return Self.InstantDuration + } else { + return operations.reduce(0) { $0 + $1.duration } + } + } + public var currentOperationIndex: Int = 0 public var isComplete: Bool { currentOperationIndex >= operations.count } diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/TimingOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/TimingOperation.swift new file mode 100644 index 0000000..0f946b2 --- /dev/null +++ b/Sources/RedECSBasicComponents/Operation/OperationTypes/TimingOperation.swift @@ -0,0 +1,78 @@ +import RedECS +import Geometry + +public struct TimingOperation: Operation { + public typealias Action = GameAction + + public enum Strategy: Equatable, Codable { + case easeIn + case easeOut + case easeInOut + } + + public var strategy: Strategy + public var operation: OperationType + public var duration: Double + public var currentTime: Double = 0 + + public var previousPercentage: Double = 0 + + public var isComplete: Bool { currentTime >= duration } + + public init(strategy: Strategy, operation: OperationType) { + self.strategy = strategy + self.operation = operation + self.duration = operation.duration + } + + public mutating func run(id: EntityId, state: inout BasicOperationComponentContext, delta: Double) -> GameEffect { + + let adjustedPercent = strategy.timing(currentTime / duration + delta / duration) + let deltaPercent = adjustedPercent - previousPercentage + let effect = operation.run(id: id, state: &state, delta: deltaPercent * duration) + previousPercentage = adjustedPercent + + currentTime += delta + + return effect + } + + public mutating func reset() { + currentTime = 0 + previousPercentage = 0 + operation.reset() + } +} + +public extension TimingOperation.Strategy { + func timing(_ t: Double) -> Double { + switch self { + case .easeIn: + return easeIn(t) + case .easeOut: + return easeOut(t) + case .easeInOut: + return lerp(easeIn(t), easeOut(t), t) + } + } + + func easeIn(_ t: Double) -> Double { + square(t) + } + + func easeOut(_ t: Double) -> Double { + flip(square(flip(t))) + } + + func flip(_ t: Double) -> Double { + 1 - t + } + + func square(_ t: Double) -> Double { + t * t + } + + func lerp(_ a: Double, _ b: Double, _ t: Double) -> Double { + ((b - a) * t) + a + } +} diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/VisibilityOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/VisibilityOperation.swift new file mode 100644 index 0000000..295ee11 --- /dev/null +++ b/Sources/RedECSBasicComponents/Operation/OperationTypes/VisibilityOperation.swift @@ -0,0 +1,44 @@ +import RedECS +import Geometry + +public struct VisibilityOperation: Operation { + public typealias Action = Int + + public enum Strategy: Equatable, Codable { + case show + case hide + case toggle + } + + public var strategy: Strategy + public var currentTime: Double = 0 + public var duration: Double { Self.InstantDuration } + public var isComplete: Bool = false + + public init(strategy: Strategy) { + self.strategy = strategy + } + + public mutating func run( + id: EntityId, + state: inout BasicOperationComponentContext, + delta: Double + ) -> GameEffect { + guard !isComplete else { return .none } + isComplete = true + switch strategy { + case .hide: + state.transform[id]?.isHidden = true + case .show: + state.transform[id]?.isHidden = false + case .toggle: + state.transform[id]?.isHidden.toggle() + } + return .none + } + + public mutating func reset() { + currentTime = 0 + isComplete = false + } +} diff --git a/Sources/RedECSUIComponents/HUD/HUDComponent.swift b/Sources/RedECSUIComponents/HUD/HUDComponent.swift index 64f5b4b..61e3905 100644 --- a/Sources/RedECSUIComponents/HUD/HUDComponent.swift +++ b/Sources/RedECSUIComponents/HUD/HUDComponent.swift @@ -22,6 +22,10 @@ public struct HUDComponent: GameComponent { public var entity: EntityId public var children: [HUDElement] + public init(entity: EntityId) { + self = .init(entity: entity, children: []) + } + public init ( entity: EntityId, children: [HUDElement] diff --git a/Sources/RedECSWebSupport/WebGL/DrawTextureProgram.swift b/Sources/RedECSWebSupport/WebGL/DrawTextureProgram.swift index c3353cf..9c10d31 100644 --- a/Sources/RedECSWebSupport/WebGL/DrawTextureProgram.swift +++ b/Sources/RedECSWebSupport/WebGL/DrawTextureProgram.swift @@ -49,6 +49,7 @@ extension DrawTextureProgram: WebGLProgram { if let p = self.program { program = p } else { + print("texture program create") let p = try createProgram(with: webRenderer) program = p self.program = p @@ -106,8 +107,8 @@ extension DrawTextureProgram: WebGLProgram { _ = gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, true); // flip Y // alpha transparency support - _ = gl.blendFunc(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA); _ = gl.enable(gl.BLEND); + _ = gl.blendFunc(gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA); // other texture parameters, nearest neighbour _ = gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE) @@ -202,7 +203,12 @@ extension DrawTextureProgram: WebGLProgram { varying vec2 v_texCoord; void main() { - gl_FragColor = texture2D(u_image, v_texCoord); + vec4 color = texture2D(u_image, v_texCoord); + if(color.w == 0.0) { + gl_FragColor = color; + } else { + gl_FragColor = vec4(color.xyz, 1); //todo: read alpha from buffer + } } """ } From 69b6ea3fee80bfb0c83bca6ca37de8ae6b2edda7 Mon Sep 17 00:00:00 2001 From: Kyle Newsome Date: Sat, 27 Aug 2022 01:04:28 -0400 Subject: [PATCH 4/9] alpha support in metal, webgl needed --- Sources/RedECS/Rendering/Color.swift | 9 +++++++ .../Rendering/Sprite/SpriteComponent.swift | 2 +- .../Sprite/SpriteRenderingReducer.swift | 3 ++- .../DrawTriangleProgram/Shaders.metal | 20 +++++++------- .../RedECSAppleSupport/MetalRenderer.swift | 27 +++++++------------ 5 files changed, 31 insertions(+), 30 deletions(-) diff --git a/Sources/RedECS/Rendering/Color.swift b/Sources/RedECS/Rendering/Color.swift index 720439d..c99c209 100644 --- a/Sources/RedECS/Rendering/Color.swift +++ b/Sources/RedECS/Rendering/Color.swift @@ -70,4 +70,13 @@ public extension Color { alpha: 1 ) } + + func withAlpha(_ alpha: Double) -> Color { + Color( + red: red, + green: green, + blue: blue, + alpha: alpha + ) + } } diff --git a/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift b/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift index 3f2d8dd..029ef9c 100644 --- a/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift +++ b/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift @@ -16,7 +16,7 @@ public struct SpriteComponent: GameComponent { public var entity: EntityId public var texture: TextureReference public var animation: SpriteAnimation? - public var opacity: Double = 1 // TODO: implement rendering implications + public var opacity: Double = 1 public init(entity: EntityId) { self.init(entity: entity, texture: .empty) diff --git a/Sources/RedECS/Rendering/Sprite/SpriteRenderingReducer.swift b/Sources/RedECS/Rendering/Sprite/SpriteRenderingReducer.swift index 8b3255c..6aa6d91 100644 --- a/Sources/RedECS/Rendering/Sprite/SpriteRenderingReducer.swift +++ b/Sources/RedECS/Rendering/Sprite/SpriteRenderingReducer.swift @@ -60,7 +60,8 @@ public struct SpriteRenderingReducer: Reducer { triangles: [topRenderTri, bottomRenderTri], transformMatrix: transform.matrix(), fragmentType: .texture(spriteComponent.texture.textureId), - zIndex: transform.zIndex + zIndex: transform.zIndex, + opacity: spriteComponent.opacity ) ]) } diff --git a/Sources/RedECSAppleSupport/DrawTriangleProgram/Shaders.metal b/Sources/RedECSAppleSupport/DrawTriangleProgram/Shaders.metal index 98852aa..668342e 100644 --- a/Sources/RedECSAppleSupport/DrawTriangleProgram/Shaders.metal +++ b/Sources/RedECSAppleSupport/DrawTriangleProgram/Shaders.metal @@ -78,12 +78,7 @@ vertexShader(uint vertexID [[vertex_id]], texCoord = texCoord / textureInfo[vertexID].texSize; out.texCoord = float2(texCoord.x, texCoord.y); - if (textureInfo[vertexID].texCoord.x == -1 && textureInfo[vertexID].texCoord.y == -1) { - out.color = vertices[vertexID].color; - } else { - // Pass the input color directly to the rasterizer. - out.color = float4(0, 0, 0, 0); - } + out.color = vertices[vertexID].color; return out; } @@ -91,14 +86,17 @@ vertexShader(uint vertexID [[vertex_id]], fragment float4 fragmentShader(RasterizerData in [[stage_in]], texture2d colorMap [[ texture(TextureIndexColor) ]]) { - if (in.color.x == 0 && in.color.y == 0 && in.color.z == 0 && in.color.w == 0) { - constexpr sampler colorSampler(mip_filter::nearest, + if (colorMap.get_width() == 1 && colorMap.get_height() == 1) { + return in.color; + } + + constexpr sampler colorSampler(mip_filter::nearest, mag_filter::nearest, min_filter::nearest); - half4 colorSample = colorMap.sample(colorSampler, in.texCoord.xy); + half4 colorSample = colorMap.sample(colorSampler, in.texCoord.xy); + if(colorSample.w == 0) { return float4(colorSample); - } else { - return in.color; } + return float4(colorSample.x, colorSample.y, colorSample.z, in.color.w); } diff --git a/Sources/RedECSAppleSupport/MetalRenderer.swift b/Sources/RedECSAppleSupport/MetalRenderer.swift index fcbf162..7b3e78a 100644 --- a/Sources/RedECSAppleSupport/MetalRenderer.swift +++ b/Sources/RedECSAppleSupport/MetalRenderer.swift @@ -154,6 +154,7 @@ public class MetalRenderer: NSObject, MTKViewDelegate { var lastBoundTexture: TextureId? for renderGroup in queuedWork.sorted(by: { $0.zIndex < $1.zIndex }) { + let color = renderGroup.color?.asVectorFloat4 ?? vector_float4(0, 0, 0, Float(renderGroup.opacity)) var triangleVertices: [AAPLVertex] = [] var textureVertices: [TextureInfo] = [] var uniforms = Uniforms( @@ -165,15 +166,15 @@ public class MetalRenderer: NSObject, MTKViewDelegate { triangleVertices.append(contentsOf: [ AAPLVertex( position: renderTriangle.triangle.a.asVectorFloat2, - color: (renderGroup.color ?? .clear).asVectorFloat4 + color: color ), AAPLVertex( position: renderTriangle.triangle.b.asVectorFloat2, - color: (renderGroup.color ?? .clear).asVectorFloat4 + color: color ), AAPLVertex( position: renderTriangle.triangle.c.asVectorFloat2, - color: (renderGroup.color ?? .clear).asVectorFloat4 + color: color ) ]) var texSize = vector_float2(0, 0) @@ -247,7 +248,6 @@ public class MetalRenderer: NSObject, MTKViewDelegate { scaleFactor: 1.0, bundle: nil, options: textureLoaderOptions) - } } @@ -264,20 +264,13 @@ extension Point { } public extension Matrix3 { + /** + V V 0 V + V V 0 V + 0 0 1 0 + V V 0 v + */ var asMatrix4x4: matrix_float4x4 { -// return matrix_float4x4(columns: ( -// .init(x: 1, y: 0, z: 0, w: 0), -// .init(x: 0, y: 1, z: 0, w: 0), -// .init(x: 0, y: 0, z: 1, w: 0), -// .init(x: 0, y: 0, z: 0, w: 1) -// )) - - /* - V V 0 V - V V 0 V - 0 0 1 0 - V V 0 v - */ return matrix_float4x4(columns: ( .init(x: Float(values[0]), y: Float(values[1]), z: 0, w: Float(values[2])), .init(x: Float(values[3]), y: Float(values[4]), z: 0, w: Float(values[5])), From d6ccd814855ab19b1f549dab1dfe6c19fb57d5f1 Mon Sep 17 00:00:00 2001 From: Kyle Newsome Date: Sat, 27 Aug 2022 09:58:56 -0400 Subject: [PATCH 5/9] Opacity for webGL and single draw program --- .../{DrawTriangleProgram => }/Shaders.metal | 0 ...xtureProgram.swift => Draw2DProgram.swift} | 79 ++++++++-- .../WebGL/DrawTrianglesProgram.swift | 147 ------------------ .../RedECSWebSupport/WebGL/WebGLProgram.swift | 4 - Sources/RedECSWebSupport/WebRenderer.swift | 37 ++++- 5 files changed, 99 insertions(+), 168 deletions(-) rename Sources/RedECSAppleSupport/{DrawTriangleProgram => }/Shaders.metal (100%) rename Sources/RedECSWebSupport/WebGL/{DrawTextureProgram.swift => Draw2DProgram.swift} (73%) delete mode 100644 Sources/RedECSWebSupport/WebGL/DrawTrianglesProgram.swift diff --git a/Sources/RedECSAppleSupport/DrawTriangleProgram/Shaders.metal b/Sources/RedECSAppleSupport/Shaders.metal similarity index 100% rename from Sources/RedECSAppleSupport/DrawTriangleProgram/Shaders.metal rename to Sources/RedECSAppleSupport/Shaders.metal diff --git a/Sources/RedECSWebSupport/WebGL/DrawTextureProgram.swift b/Sources/RedECSWebSupport/WebGL/Draw2DProgram.swift similarity index 73% rename from Sources/RedECSWebSupport/WebGL/DrawTextureProgram.swift rename to Sources/RedECSWebSupport/WebGL/Draw2DProgram.swift index 9c10d31..2a09c64 100644 --- a/Sources/RedECSWebSupport/WebGL/DrawTextureProgram.swift +++ b/Sources/RedECSWebSupport/WebGL/Draw2DProgram.swift @@ -3,10 +3,11 @@ import Geometry import RedECS import GeometryAlgorithms -final class DrawTextureProgram { +final class Draw2DProgram { var triangles: [RenderTriangle] var textureSize: Size var image: JSValue + var color: Color var projectionMatrix: Matrix3 var modelMatrix: Matrix3 @@ -17,12 +18,14 @@ final class DrawTextureProgram { triangles: [RenderTriangle], textureSize: Size, image: JSValue, + color: Color, projectionMatrix: Matrix3, modelMatrix: Matrix3 ) { self.triangles = triangles self.textureSize = textureSize self.image = image + self.color = color self.projectionMatrix = projectionMatrix self.modelMatrix = modelMatrix } @@ -31,18 +34,20 @@ final class DrawTextureProgram { triangles: [RenderTriangle], textureSize: Size, image: JSValue, + color: Color, projectionMatrix: Matrix3, modelMatrix: Matrix3 ) { self.triangles = triangles self.textureSize = textureSize self.image = image + self.color = color self.projectionMatrix = projectionMatrix self.modelMatrix = modelMatrix } } -extension DrawTextureProgram: WebGLProgram { +extension Draw2DProgram: WebGLProgram { public func execute(with webRenderer: WebRenderer) throws { let gl = webRenderer.glContext let program: JSValue @@ -56,6 +61,7 @@ extension DrawTextureProgram: WebGLProgram { } let positionLocation = gl.getAttribLocation(program, "a_position") + let colorLocation = gl.getAttribLocation(program, "a_color") let texcoordLocation = gl.getAttribLocation(program, "a_texCoord") let projectionMatrixUniformLocation = gl.getUniformLocation(program, "u_projectionMatrix") @@ -63,6 +69,7 @@ extension DrawTextureProgram: WebGLProgram { let textureSizeLocation = gl.getUniformLocation(program, "u_textureSize") // MARK: - Attributes + // MARK: - Attribute; Position let allTriangles = triangles.flatMap { renderTriangle in [ @@ -82,8 +89,27 @@ extension DrawTextureProgram: WebGLProgram { _ = gl.bindBuffer(gl.ARRAY_BUFFER, positionBuffer) _ = gl.bufferData(gl.ARRAY_BUFFER, trianglesArrayData, gl.STATIC_DRAW) + // MARK: - Attribute; Color + let allColors = triangles.flatMap { _ in + [ + color.red, color.green, color.blue, color.alpha, + color.red, color.green, color.blue, color.alpha, + color.red, color.green, color.blue, color.alpha + ] + } + guard let colorsArrayData = JSObject.global.Float32Array.function?.new(allColors) else { + throw WebGLError.couldNotCreateArray + } + // Bind the color buffer. + let colorBuffer = gl.createBuffer() + // Bind it to ARRAY_BUFFER (think of it as ARRAY_BUFFER = positionBuffer) + _ = gl.bindBuffer(gl.ARRAY_BUFFER, colorBuffer) + _ = gl.bufferData(gl.ARRAY_BUFFER, colorsArrayData, gl.STATIC_DRAW) + + // MARK: - Attribute; Texture + let allTextureTriangles = triangles.flatMap { renderTriangle -> [Double] in - guard let textureTriangle = renderTriangle.textureTriangle else { return [] } + let textureTriangle = renderTriangle.textureTriangle ?? RenderTriangle.noTextureTriangle return [ textureTriangle.a.x, textureTriangle.a.y, textureTriangle.b.x, textureTriangle.b.y, @@ -119,11 +145,16 @@ extension DrawTextureProgram: WebGLProgram { // Upload the image into the texture. _ = gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, self.image) + // MARK: - Setup + // Tell WebGL how to convert from clip space to pixels _ = gl.viewport(0, 0, gl.canvas.width, gl.canvas.height) // Tell it to use our program (pair of shaders) _ = gl.useProgram(program) + + // MARK: - Bind Data + // MARK: - Bind Position // Turn on the position attribute _ = gl.enableVertexAttribArray(positionLocation) @@ -138,11 +169,28 @@ extension DrawTextureProgram: WebGLProgram { let offset = 0 // start at the beginning of the buffer _ = gl.vertexAttribPointer(positionLocation, size, type, normalize, stride, offset) + // MARK: - Bind Color + + // Turn on the position attribute + _ = gl.enableVertexAttribArray(colorLocation) + // Bind the position buffer. + _ = gl.bindBuffer(gl.ARRAY_BUFFER, colorBuffer) + + // Tell the attribute how to get data out of colorBuffer (ARRAY_BUFFER) + let sizeC = 4 // 2 components per iteration + let typeC: JSValue = gl.FLOAT // the data is 32bit floats + let normalizeC = false // don't normalize the data + let strideC = 0 // 0 = move forward size * sizeof(type) each iteration to get the next position + let offsetC = 0 // start at the beginning of the buffer + _ = gl.vertexAttribPointer(colorLocation, sizeC, typeC, normalizeC, strideC, offsetC) + + // MARK: - Bind Texture + // Turn on the texcoord attribute _ = gl.enableVertexAttribArray(texcoordLocation); // bind the texcoord buffer. _ = gl.bindBuffer(gl.ARRAY_BUFFER, texcoordBuffer); - // Tell the attribute how to get data out of positionBuffer (ARRAY_BUFFER) + // Tell the attribute how to get data out of texcoordBuffer (ARRAY_BUFFER) let sizeT = 2 // 2 components per iteration let typeT: JSValue = gl.FLOAT // the data is 32bit floats let normalizeT = false // don't normalize the data @@ -173,7 +221,10 @@ extension DrawTextureProgram: WebGLProgram { var vertexShader: String { """ + precision mediump float; + attribute vec2 a_position; + attribute vec4 a_color; attribute vec2 a_texCoord; uniform mat3 u_projectionMatrix; @@ -181,11 +232,14 @@ extension DrawTextureProgram: WebGLProgram { uniform vec2 u_textureSize; varying vec2 v_texCoord; + varying vec4 v_color; void main() { vec3 position = vec3(a_position, 1.0); gl_Position = vec4((u_projectionMatrix * u_modelMatrix * position).xy, 0.0, 1.0); + v_color = a_color; + vec2 zeroToOneTexture = a_texCoord / u_textureSize; v_texCoord = zeroToOneTexture; } @@ -198,16 +252,21 @@ extension DrawTextureProgram: WebGLProgram { // our texture uniform sampler2D u_image; + uniform vec2 u_textureSize; - // the texCoords passed in from the vertex shader. - varying vec2 v_texCoord; + varying vec4 v_color; + varying vec2 v_texCoord; // the texCoords passed in from the vertex shader. void main() { - vec4 color = texture2D(u_image, v_texCoord); - if(color.w == 0.0) { - gl_FragColor = color; + if (u_textureSize.x == 1.0 && u_textureSize.y == 1.0) { + gl_FragColor = v_color; } else { - gl_FragColor = vec4(color.xyz, 1); //todo: read alpha from buffer + vec4 color = texture2D(u_image, v_texCoord); + if(color.w == 0.0) { + gl_FragColor = color; + } else { + gl_FragColor = vec4(color.xyz, v_color.w); + } } } """ diff --git a/Sources/RedECSWebSupport/WebGL/DrawTrianglesProgram.swift b/Sources/RedECSWebSupport/WebGL/DrawTrianglesProgram.swift deleted file mode 100644 index 6ff7923..0000000 --- a/Sources/RedECSWebSupport/WebGL/DrawTrianglesProgram.swift +++ /dev/null @@ -1,147 +0,0 @@ -import JavaScriptKit -import RedECS -import Geometry -import GeometryAlgorithms - -struct DrawTrianglesProgram { - var triangles: [RenderTriangle] - var color: Color - - var projectionMatrix: Matrix3 - var modelMatrix: Matrix3 - - init( - triangles: [RenderTriangle], - color: Color, - projectionMatrix: Matrix3, - modelMatrix: Matrix3 - ) { - self.triangles = triangles - self.color = color - self.projectionMatrix = projectionMatrix - self.modelMatrix = modelMatrix - } -} - -extension DrawTrianglesProgram: WebGLProgram { - func execute(with webRenderer: WebRenderer) throws { - let gl = webRenderer.glContext - let program = try self.createProgram(with: webRenderer) - - // look up where data locations - let positionAttributeLocation = gl.getAttribLocation(program, "a_position") - let colorLocation = gl.getAttribLocation(program, "a_color"); - let projectionMatrixUniformLocation = gl.getUniformLocation(program, "u_projectionMatrix") - let modelMatrixUniformLocation = gl.getUniformLocation(program, "u_modelMatrix") - - let positionBuffer = gl.createBuffer() - let colorBuffer = gl.createBuffer() - - // Tell WebGL how to convert from clip space to pixels - _ = gl.viewport(0, 0, gl.canvas.width, gl.canvas.height) - - // Tell it to use our program (pair of shaders) - _ = gl.useProgram(program) - - // Turn on the attributes - _ = gl.enableVertexAttribArray(positionAttributeLocation) - _ = gl.enableVertexAttribArray(colorLocation); - - guard let projectionMatrixDataArray = JSObject.global.Float32Array.function?.new(projectionMatrix.values) else { - throw WebGLError.couldNotCreateArray - } - _ = gl.uniformMatrix3fv(projectionMatrixUniformLocation, false, projectionMatrixDataArray); - - guard let modelMatrixDataArray = JSObject.global.Float32Array.function?.new(modelMatrix.values) else { - throw WebGLError.couldNotCreateArray - } - _ = gl.uniformMatrix3fv(modelMatrixUniformLocation, false, modelMatrixDataArray); - - // MARK: Position - - _ = gl.bindBuffer(gl.ARRAY_BUFFER, positionBuffer) - // Tell the attribute how to get data out of positionBuffer (ARRAY_BUFFER) - let size = 2 // 2 components per iteration - let type: JSValue = gl.FLOAT // the data is 32bit floats - let normalize = false // don't normalize the data - let stride = 0 // 0 = move forward size * sizeof(type) each iteration to get the next position - let offset = 0 // start at the beginning of the buffer - _ = gl.vertexAttribPointer(positionAttributeLocation, size, type, normalize, stride, offset) - - // MARK: Color - - _ = gl.bindBuffer(gl.ARRAY_BUFFER, colorBuffer) - // Tell the color attribute how to get data out of colorBuffer (ARRAY_BUFFER) - let sizeC = 4 // 4 components per iteration - let typeC: JSValue = gl.FLOAT // the data is 32bit floats - let normalizeC = false // don't normalize the data - let strideC = 0 // 0 = move forward size * sizeof(type) each iteration to get the next position - let offsetC = 0 // start at the beginning of the buffer - _ = gl.vertexAttribPointer(colorLocation, sizeC, typeC, normalizeC, strideC, offsetC) - - let allTriangles = triangles.flatMap { renderTriangle in - [ - renderTriangle.triangle.a.x, renderTriangle.triangle.a.y, - renderTriangle.triangle.b.x, renderTriangle.triangle.b.y, - renderTriangle.triangle.c.x, renderTriangle.triangle.c.y - ] - } - - let allColors = triangles.flatMap { triangle -> [Double] in - return [ - color.red, color.green, color.blue, color.alpha, - color.red, color.green, color.blue, color.alpha, - color.red, color.green, color.blue, color.alpha - ] - } - - guard let trianglesArrayData = JSObject.global.Float32Array.function?.new(allTriangles) else { - throw WebGLError.couldNotCreateArray - } - - guard let colorsArrayData = JSObject.global.Float32Array.function?.new(allColors) else { - throw WebGLError.couldNotCreateArray - } - - // Bind the position buffer. - _ = gl.bindBuffer(gl.ARRAY_BUFFER, positionBuffer) - _ = gl.bufferData(gl.ARRAY_BUFFER, trianglesArrayData, gl.STATIC_DRAW) - - _ = gl.bindBuffer(gl.ARRAY_BUFFER, colorBuffer); - _ = gl.bufferData(gl.ARRAY_BUFFER, colorsArrayData, gl.STATIC_DRAW) - - _ = gl.drawArrays(gl.TRIANGLES, 0, triangles.count * 3); - } - - var vertexShader: String { - """ - attribute vec2 a_position; - attribute vec4 a_color; - - uniform mat3 u_projectionMatrix; - uniform mat3 u_modelMatrix; - - varying vec4 v_color; - - void main() { - vec3 position = vec3(a_position, 1.0); - gl_Position = vec4((u_projectionMatrix * u_modelMatrix * position).xy, 0.0, 1.0); - v_color = a_color; - } - """ - } - - var fragmentShader: String { - """ - // fragment shaders don't have a default precision so we need - // to pick one. mediump is a good default - precision mediump float; - - varying vec4 v_color; - - void main() { - gl_FragColor = v_color; - } - """ - } -} diff --git a/Sources/RedECSWebSupport/WebGL/WebGLProgram.swift b/Sources/RedECSWebSupport/WebGL/WebGLProgram.swift index b9c3800..8f514a6 100644 --- a/Sources/RedECSWebSupport/WebGL/WebGLProgram.swift +++ b/Sources/RedECSWebSupport/WebGL/WebGLProgram.swift @@ -38,8 +38,6 @@ extension WebGLProgram { return program } - _ = gl.deleteProgram(program) - throw WebGLError.couldNotCreateShader(gl.getProgramInfoLog(program).string) } @@ -53,8 +51,6 @@ extension WebGLProgram { return shader } - _ = gl.deleteShader(shader) - throw WebGLError.couldNotCreateShader(gl.getShaderInfoLog(shader).string) } } diff --git a/Sources/RedECSWebSupport/WebRenderer.swift b/Sources/RedECSWebSupport/WebRenderer.swift index d9edeb3..6eff33c 100644 --- a/Sources/RedECSWebSupport/WebRenderer.swift +++ b/Sources/RedECSWebSupport/WebRenderer.swift @@ -20,16 +20,21 @@ open class WebRenderer { private(set) var projectionMatrix: Matrix3 = .identity - lazy var textureProgram: DrawTextureProgram = { - DrawTextureProgram( + lazy var drawProgram: Draw2DProgram = { + Draw2DProgram( triangles: [], textureSize: .zero, image: .null, + color: .clear, projectionMatrix: .identity, modelMatrix: .identity ) }() + lazy var emptyImage: JSValue = { + createEmptyImage(size: .init(width: 1, height: 1)) + }() + public init( size: Size, resourceLoader: WebResourceManager @@ -55,29 +60,32 @@ open class WebRenderer { for renderGroup in queuedWork.sorted(by: { $0.zIndex < $1.zIndex }) { switch renderGroup.fragmentType { case .color(let color): - try DrawTrianglesProgram( + drawProgram.update( triangles: renderGroup.triangles, - color: color, + textureSize: .init(width: 1, height: 1), + image: emptyImage, + color: renderGroup.color ?? .clear, projectionMatrix: projectionMatrix, modelMatrix: renderGroup.transformMatrix ) - .execute(with: self) + try drawProgram.execute(with: self) case .texture(let textureId): if let image = webResourceManager.textureImages[textureId], let imageObject = image.object, let width = imageObject.width.number, let height = imageObject.height.number { - textureProgram.update( + drawProgram.update( triangles: renderGroup.triangles, textureSize: .init( width: width, height: height ), image: image, + color: renderGroup.color ?? .init(red: 0, green: 0, blue: 0, alpha: renderGroup.opacity), projectionMatrix: projectionMatrix, modelMatrix: renderGroup.transformMatrix ) - try textureProgram.execute(with: self) + try drawProgram.execute(with: self) } else { print("no texture loaded for", textureId) webResourceManager.startTextureLoadIfNeeded(textureId: textureId) @@ -106,6 +114,21 @@ open class WebRenderer { _ = glContext.clearColor(0, 0, 0, 0.1) _ = glContext.clear(glContext.COLOR_BUFFER_BIT) } + + private func createEmptyImage(size: Size) -> JSValue { + let document = JSObject.global.document + var canvas = document.createElement("canvas") + canvas.width = size.width.jsValue + canvas.height = size.height.jsValue + + var ctx = canvas.getContext("2d") + ctx.fillStyle = "rgba(0, 0, 0, 0)" + _ = ctx.fillRect(0, 0, size.width.jsValue, size.height.jsValue) + + let img = JSObject.global.Image.function?.new(size.width.jsValue, size.height.jsValue) + img?.src = canvas.toDataURL() + return img?.jsValue ?? .null + } } extension WebRenderer: Renderer { From e48e90f6ec24282559d9b7e7ae85fb88396b97a0 Mon Sep 17 00:00:00 2001 From: Kyle Newsome Date: Sat, 27 Aug 2022 12:20:11 -0400 Subject: [PATCH 6/9] Create RenderableComponent protocol and move majority of rendering logic to component layer --- .../Rendering/RenderableComponent.swift | 3 + .../Rendering/Shape/ShapeComponent.swift | 23 +++++ .../Shape/ShapeRenderingReducer.swift | 19 +--- .../Rendering/Sprite/SpriteComponent.swift | 58 +++++++++++ .../Sprite/SpriteRenderingReducer.swift | 57 +---------- .../Rendering/TileMap/TileMapComponent.swift | 93 ++++++++++++++++++ .../TileMap/TileMapRenderingReducer.swift | 98 ++----------------- 7 files changed, 189 insertions(+), 162 deletions(-) create mode 100644 Sources/RedECS/Rendering/RenderableComponent.swift diff --git a/Sources/RedECS/Rendering/RenderableComponent.swift b/Sources/RedECS/Rendering/RenderableComponent.swift new file mode 100644 index 0000000..6999a65 --- /dev/null +++ b/Sources/RedECS/Rendering/RenderableComponent.swift @@ -0,0 +1,3 @@ +public protocol RenderableComponent { + func renderGroups(transform: TransformComponent, resourceManager: ResourceManager) -> [RenderGroup] +} diff --git a/Sources/RedECS/Rendering/Shape/ShapeComponent.swift b/Sources/RedECS/Rendering/Shape/ShapeComponent.swift index 256e5c2..fc224cd 100644 --- a/Sources/RedECS/Rendering/Shape/ShapeComponent.swift +++ b/Sources/RedECS/Rendering/Shape/ShapeComponent.swift @@ -59,3 +59,26 @@ public struct ShapeComponent: GameComponent { } } + +extension ShapeComponent: RenderableComponent { + public func renderGroups(transform: TransformComponent, resourceManager: ResourceManager) -> [RenderGroup] { + do { + let triangles = try shape.triangulate().enumerated() + .map { (i, triangle) -> RenderTriangle in + RenderTriangle(triangle: triangle) + } + let matrix = transform.matrix(containerSize: rect.size) + return [ + RenderGroup( + triangles: triangles, + transformMatrix: matrix, + fragmentType: .color(fillColor), + zIndex: transform.zIndex + ) + ] + } catch { + print("⚠️ couldn't render shape", error) + return [] + } + } +} diff --git a/Sources/RedECS/Rendering/Shape/ShapeRenderingReducer.swift b/Sources/RedECS/Rendering/Shape/ShapeRenderingReducer.swift index 564709c..d572585 100644 --- a/Sources/RedECS/Rendering/Shape/ShapeRenderingReducer.swift +++ b/Sources/RedECS/Rendering/Shape/ShapeRenderingReducer.swift @@ -11,24 +11,7 @@ public struct ShapeRenderingReducer: Reducer { ) -> GameEffect { state.shape.forEach { (id, shapeComponent) in guard let transform = state.transform[id] else { return } - do { - let triangles = try shapeComponent.shape.triangulate().enumerated() - .map { (i, triangle) -> RenderTriangle in - RenderTriangle(triangle: triangle) - } - let matrix = transform.matrix(containerSize: shapeComponent.rect.size) - - environment.renderer.enqueue([ - RenderGroup( - triangles: triangles, - transformMatrix: matrix, - fragmentType: .color(shapeComponent.fillColor), - zIndex: transform.zIndex - ) - ]) - } catch { - print("⚠️ couldn't render shape", error) - } + environment.renderer.enqueue(shapeComponent.renderGroups(transform: transform, resourceManager: environment.resourceManager)) } return .none } diff --git a/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift b/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift index 029ef9c..22f0e3d 100644 --- a/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift +++ b/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift @@ -1,3 +1,5 @@ +import Geometry + public typealias CompletedAnimationId = String public struct SpriteAnimation: Codable, Equatable { @@ -82,3 +84,59 @@ public struct SpriteComponent: GameComponent { return nil } } + +extension SpriteComponent: RenderableComponent { + public func renderGroups(transform: TransformComponent, resourceManager: ResourceManager) -> [RenderGroup] { + guard let textureMap = resourceManager.getTexture(textureId: texture.textureId) else { + return [] + } + let textureRect: Rect + if let frameId = texture.frameId, + let frameInfo = textureMap.frames.first(where: { $0.filename == frameId }) { + textureRect = Rect( + x: frameInfo.frame.x, + y: textureMap.meta.size.h - frameInfo.frame.y - frameInfo.frame.h, + width: frameInfo.frame.w, + height: frameInfo.frame.h + ) + } else { + let size = textureMap.meta.size + textureRect = Rect(x: 0, y: 0, width: size.w, height: size.h) + } + + let renderRect = Rect(center: .zero, size: textureRect.size) + let topRenderTri = RenderTriangle( + triangle: Triangle( + a: Point(x: renderRect.minX, y: renderRect.maxY), + b: Point(x: renderRect.maxX, y: renderRect.minY), + c: Point(x: renderRect.maxX, y: renderRect.maxY) + ), + textureTriangle: Triangle( + a: Point(x: textureRect.minX, y: textureRect.maxY), + b: Point(x: textureRect.maxX, y: textureRect.minY), + c: Point(x: textureRect.maxX, y: textureRect.maxY) + ) + ) + let bottomRenderTri = RenderTriangle( + triangle: Triangle( + a: Point(x: renderRect.minX, y: renderRect.minY), + b: Point(x: renderRect.maxX, y: renderRect.minY), + c: Point(x: renderRect.minX, y: renderRect.maxY) + ), + textureTriangle: Triangle( + a: Point(x: textureRect.minX, y: textureRect.minY), + b: Point(x: textureRect.maxX, y: textureRect.minY), + c: Point(x: textureRect.minX, y: textureRect.maxY) + ) + ) + return [ + RenderGroup( + triangles: [topRenderTri, bottomRenderTri], + transformMatrix: transform.matrix(), + fragmentType: .texture(texture.textureId), + zIndex: transform.zIndex, + opacity: opacity + ) + ] + } +} diff --git a/Sources/RedECS/Rendering/Sprite/SpriteRenderingReducer.swift b/Sources/RedECS/Rendering/Sprite/SpriteRenderingReducer.swift index 6aa6d91..850b0a1 100644 --- a/Sources/RedECS/Rendering/Sprite/SpriteRenderingReducer.swift +++ b/Sources/RedECS/Rendering/Sprite/SpriteRenderingReducer.swift @@ -11,59 +11,10 @@ public struct SpriteRenderingReducer: Reducer { ) -> GameEffect { state.sprite.forEach { (id, spriteComponent) in guard let transform = state.transform[id] else { return } - guard let textureMap = environment.resourceManager.getTexture(textureId: spriteComponent.texture.textureId) else { - return } - - let textureRect: Rect - if let frameId = spriteComponent.texture.frameId, - let frameInfo = textureMap.frames.first(where: { $0.filename == frameId }) { - textureRect = Rect( - x: frameInfo.frame.x, - y: textureMap.meta.size.h - frameInfo.frame.y - frameInfo.frame.h, - width: frameInfo.frame.w, - height: frameInfo.frame.h - ) - } else { - let size = textureMap.meta.size - textureRect = Rect(x: 0, y: 0, width: size.w, height: size.h) - } - - let renderRect = Rect(center: .zero, size: textureRect.size) - - let topRenderTri = RenderTriangle( - triangle: Triangle( - a: Point(x: renderRect.minX, y: renderRect.maxY), - b: Point(x: renderRect.maxX, y: renderRect.minY), - c: Point(x: renderRect.maxX, y: renderRect.maxY) - ), - textureTriangle: Triangle( - a: Point(x: textureRect.minX, y: textureRect.maxY), - b: Point(x: textureRect.maxX, y: textureRect.minY), - c: Point(x: textureRect.maxX, y: textureRect.maxY) - ) - ) - let bottomRenderTri = RenderTriangle( - triangle: Triangle( - a: Point(x: renderRect.minX, y: renderRect.minY), - b: Point(x: renderRect.maxX, y: renderRect.minY), - c: Point(x: renderRect.minX, y: renderRect.maxY) - ), - textureTriangle: Triangle( - a: Point(x: textureRect.minX, y: textureRect.minY), - b: Point(x: textureRect.maxX, y: textureRect.minY), - c: Point(x: textureRect.minX, y: textureRect.maxY) - ) - ) - - environment.renderer.enqueue([ - RenderGroup( - triangles: [topRenderTri, bottomRenderTri], - transformMatrix: transform.matrix(), - fragmentType: .texture(spriteComponent.texture.textureId), - zIndex: transform.zIndex, - opacity: spriteComponent.opacity - ) - ]) + environment.renderer.enqueue(spriteComponent.renderGroups( + transform: transform, + resourceManager: environment.resourceManager + )) } return .none } diff --git a/Sources/RedECS/Rendering/TileMap/TileMapComponent.swift b/Sources/RedECS/Rendering/TileMap/TileMapComponent.swift index b0c397e..d35c2dc 100644 --- a/Sources/RedECS/Rendering/TileMap/TileMapComponent.swift +++ b/Sources/RedECS/Rendering/TileMap/TileMapComponent.swift @@ -1,4 +1,5 @@ import TiledInterpreter +import Geometry public struct TileMapComponent: GameComponent { public var entity: EntityId @@ -17,3 +18,95 @@ public struct TileMapComponent: GameComponent { self.tileMap = tileMap } } + +extension TileMapComponent: RenderableComponent { + public func renderGroups( + transform: TransformComponent, + resourceManager: ResourceManager + ) -> [RenderGroup] { + guard let tileMap = tileMap else { return [] } + let tileWidth = tileMap.tileWidth, + tileHeight = tileMap.tileHeight, + layerCols = tileMap.width, + layerRows = tileMap.height, + tileSize = Size(width: Double(tileWidth), height: Double(tileHeight)) + + var renderGroups = [RenderGroup]() + tileMap.tileLayers.enumerated().forEach { (i, layer) in + guard let tileSetName = tileMap.tileSets.first?.source, + let tileSet = resourceManager.tileSets[tileSetName] else { + return + } + + let matrix = transform.matrix(containerSize: Size( + width: tileMap.totalWidth, + height: tileMap.totalHeight + )) + + var renderTriangles: [RenderTriangle] = [] + + for r in 0.. GameEffect { state.tileMap.forEach { (id, tileMap) in - guard let tileMap = tileMap.tileMap, - let transform = state.transform[id] else { return } - -// let cameraRect = environment.renderer.cameraFrame - - let tileWidth = tileMap.tileWidth, - tileHeight = tileMap.tileHeight, - layerCols = tileMap.width, - layerRows = tileMap.height, - tileSize = Size(width: Double(tileWidth), height: Double(tileHeight)) - - tileMap.tileLayers.enumerated().forEach { (i, layer) in - guard let tileSetName = tileMap.tileSets.first?.source, - let tileSet = environment.resourceManager.tileSets[tileSetName] else { - return - } - - let matrix = transform.matrix(containerSize: Size( - width: tileMap.totalWidth, - height: tileMap.totalHeight - )) - - var renderTriangles: [RenderTriangle] = [] - - for r in 0.. Date: Sun, 28 Aug 2022 00:32:01 -0400 Subject: [PATCH 7/9] bitmap font rendering support, metal done, webgl needed --- .../xcschemes/RedECS-Package.xcscheme | 24 +-- .../xcshareddata/xcschemes/RedECS.xcscheme | 20 +++ Package.swift | 3 + .../RedECS/Rendering/Label/BitmapFont.swift | 166 ++++++++++++++++++ .../Rendering/Label/LabelComponent.swift | 84 +++++++++ .../Rendering/RenderableComponent.swift | 59 +++++++ .../Shape/ShapeRenderingContext.swift | 15 -- .../Shape/ShapeRenderingReducer.swift | 28 --- .../Rendering/Sprite/SpriteContext.swift | 2 +- .../Sprite/SpriteRenderingReducer.swift | 31 ---- .../TileMap/TileMapRenderingReducer.swift | 22 --- .../TileMapRenderingReducerContext.swift | 15 -- Sources/RedECS/ResourceManager.swift | 3 + .../MetalResourceManager.swift | 53 +++++- Tests/RenderingTests/BitmapFontTests.swift | 129 ++++++++++++++ .../RenderingTests/CameraRenderingTests.swift | 13 +- Tests/RenderingTests/HitTestingTests.swift | 13 +- .../Resources/Media.xcassets/Contents.json | 6 + .../pt-mono.imageset/Contents.json | 21 +++ .../pt-mono.imageset/pt-mono.png | Bin 0 -> 162604 bytes Tests/RenderingTests/Resources/pt-mono.fnt | 100 +++++++++++ .../Utilities/EnqueueGrid.swift | 15 ++ .../Utilities/RenderingTestSystem.swift | 23 +-- .../snapshotText-_.Bitmap-Font.png | Bin 0 -> 15449 bytes .../snapshotText-_.Chars-_.png | Bin 0 -> 18089 bytes .../snapshotText-_.Welcome.png | Bin 0 -> 13998 bytes 26 files changed, 681 insertions(+), 164 deletions(-) create mode 100644 Sources/RedECS/Rendering/Label/BitmapFont.swift create mode 100644 Sources/RedECS/Rendering/Label/LabelComponent.swift delete mode 100644 Sources/RedECS/Rendering/Shape/ShapeRenderingContext.swift delete mode 100644 Sources/RedECS/Rendering/Shape/ShapeRenderingReducer.swift delete mode 100644 Sources/RedECS/Rendering/Sprite/SpriteRenderingReducer.swift delete mode 100644 Sources/RedECS/Rendering/TileMap/TileMapRenderingReducer.swift delete mode 100644 Sources/RedECS/Rendering/TileMap/TileMapRenderingReducerContext.swift create mode 100644 Tests/RenderingTests/BitmapFontTests.swift create mode 100644 Tests/RenderingTests/Resources/Media.xcassets/Contents.json create mode 100644 Tests/RenderingTests/Resources/Media.xcassets/pt-mono.imageset/Contents.json create mode 100644 Tests/RenderingTests/Resources/Media.xcassets/pt-mono.imageset/pt-mono.png create mode 100644 Tests/RenderingTests/Resources/pt-mono.fnt create mode 100644 Tests/RenderingTests/__Snapshots__/BitmapFontTests/snapshotText-_.Bitmap-Font.png create mode 100644 Tests/RenderingTests/__Snapshots__/BitmapFontTests/snapshotText-_.Chars-_.png create mode 100644 Tests/RenderingTests/__Snapshots__/BitmapFontTests/snapshotText-_.Welcome.png diff --git a/.swiftpm/xcode/xcshareddata/xcschemes/RedECS-Package.xcscheme b/.swiftpm/xcode/xcshareddata/xcschemes/RedECS-Package.xcscheme index f866326..6798e6d 100644 --- a/.swiftpm/xcode/xcshareddata/xcschemes/RedECS-Package.xcscheme +++ b/.swiftpm/xcode/xcshareddata/xcschemes/RedECS-Package.xcscheme @@ -160,6 +160,20 @@ ReferencedContainer = "container:"> + + + + - - - - + + + + + + + + [RenderGroup] { + guard let font = resourceManager.fonts[font] else { + return [] + } + + var currentOffsetX: Double = 0 + var maxHeight: Double = 0 + var renderTriangles: [RenderTriangle] = [] + do { + for character in text { + let characterData: BitmapFont.Character + if let data = font.characterMap[String(character)] { + characterData = data + } else if character == " ", let data = font.characterMap["space"] { + currentOffsetX += data.xadvance + continue + } else { + continue + } + let renderRect = Rect( + x: currentOffsetX, + y: (font.common.base - characterData.height - characterData.yoffset), + width: characterData.width, + height: characterData.height +// origin: .init(x: currentOffsetX, y: -(characterData.height - characterData.yoffset)), + //center: .init(x: currentOffsetX - (characterData.width / 2), y: characterData.height + characterData.yoffset), + ) + let textureY = font.common.scaleH - (characterData.y + characterData.height) + let textureRect = Rect( + origin: .init(x: characterData.x, y: textureY), + size: Size(width: characterData.width, height: characterData.height) + ) + let renderTris = try renderRect.triangulate() + let textureTris = try textureRect.triangulate() + for i in 0..<2 { + renderTriangles.append( + RenderTriangle( + triangle: renderTris[i], + textureTriangle: textureTris[i] + ) + ) + } + maxHeight = max(maxHeight, characterData.height) + currentOffsetX += characterData.xadvance + } + let textureName = font.page.file.split(separator: ".").dropLast().joined(separator: ".") + return [ + RenderGroup( + triangles: renderTriangles, + transformMatrix: transform.matrix( + containerSize: Size(width: currentOffsetX, height: maxHeight) + ), + fragmentType: .texture(textureName), + zIndex: transform.zIndex + ) + ] + } catch { + return [] + } + } +} diff --git a/Sources/RedECS/Rendering/RenderableComponent.swift b/Sources/RedECS/Rendering/RenderableComponent.swift index 6999a65..43935b1 100644 --- a/Sources/RedECS/Rendering/RenderableComponent.swift +++ b/Sources/RedECS/Rendering/RenderableComponent.swift @@ -1,3 +1,62 @@ public protocol RenderableComponent { func renderGroups(transform: TransformComponent, resourceManager: ResourceManager) -> [RenderGroup] } + +public protocol RenderableGameState: GameState { + var transform: [EntityId: TransformComponent] { get } +} + +public struct RenderableComponentType { + var getRenderComponent: (EntityId, State) -> RenderableComponent? + + public init(keyPath: KeyPath) { + getRenderComponent = { id, gameState in + gameState[keyPath: keyPath][id] + } + } + + func renderComponent(entityId: EntityId, state: State) -> RenderableComponent? { + getRenderComponent(entityId, state) + } +} + +public struct RenderingReducer: Reducer { + public typealias State = ContextState + public typealias Action = Never + public typealias Environment = RenderingEnvironment + + var renderableComponentTypes: [RenderableComponentType] + + public init( + renderableComponentTypes: [RenderableComponentType] + ) { + self.renderableComponentTypes = renderableComponentTypes + } + + public func reduce( + state: inout State, + delta: Double, + environment: RenderingEnvironment + ) -> GameEffect { + + state.entities.entities.forEach { id, entity in + renderableComponentTypes.forEach { type in + if let renderComponent = type.renderComponent(entityId: id, state: state), + let transform = state.transform[id] { + environment.renderer.enqueue(renderComponent.renderGroups(transform: transform, resourceManager: environment.resourceManager)) + } + } + } + return .none + } + + public func reduce( + state: inout State, + entityEvent: EntityEvent, + environment: RenderingEnvironment + ) { + + } +} + + diff --git a/Sources/RedECS/Rendering/Shape/ShapeRenderingContext.swift b/Sources/RedECS/Rendering/Shape/ShapeRenderingContext.swift deleted file mode 100644 index 7701934..0000000 --- a/Sources/RedECS/Rendering/Shape/ShapeRenderingContext.swift +++ /dev/null @@ -1,15 +0,0 @@ -public struct ShapeRenderingContext: GameState { - public var entities: EntityRepository = .init() - public var transform: [EntityId: TransformComponent] - public var shape: [EntityId: ShapeComponent] - - public init( - entities: EntityRepository = .init(), - transform: [EntityId: TransformComponent], - shape: [EntityId: ShapeComponent] - ) { - self.entities = entities - self.transform = transform - self.shape = shape - } -} diff --git a/Sources/RedECS/Rendering/Shape/ShapeRenderingReducer.swift b/Sources/RedECS/Rendering/Shape/ShapeRenderingReducer.swift deleted file mode 100644 index d572585..0000000 --- a/Sources/RedECS/Rendering/Shape/ShapeRenderingReducer.swift +++ /dev/null @@ -1,28 +0,0 @@ -import Geometry -import GeometryAlgorithms - -public struct ShapeRenderingReducer: Reducer { - public init() {} - - public func reduce( - state: inout ShapeRenderingContext, - delta: Double, - environment: RenderingEnvironment - ) -> GameEffect { - state.shape.forEach { (id, shapeComponent) in - guard let transform = state.transform[id] else { return } - environment.renderer.enqueue(shapeComponent.renderGroups(transform: transform, resourceManager: environment.resourceManager)) - } - return .none - } - - public func reduce( - state: inout ShapeRenderingContext, - entityEvent: EntityEvent, - environment: RenderingEnvironment - ) { - - } -} - - diff --git a/Sources/RedECS/Rendering/Sprite/SpriteContext.swift b/Sources/RedECS/Rendering/Sprite/SpriteContext.swift index 52a39a2..eca88e8 100644 --- a/Sources/RedECS/Rendering/Sprite/SpriteContext.swift +++ b/Sources/RedECS/Rendering/Sprite/SpriteContext.swift @@ -2,7 +2,7 @@ public struct SpriteContext: GameState { public var entities: EntityRepository = .init() public var transform: [EntityId: TransformComponent] public var sprite: [EntityId: SpriteComponent] - + public init( entities: EntityRepository = .init(), transform: [EntityId: TransformComponent], diff --git a/Sources/RedECS/Rendering/Sprite/SpriteRenderingReducer.swift b/Sources/RedECS/Rendering/Sprite/SpriteRenderingReducer.swift deleted file mode 100644 index 850b0a1..0000000 --- a/Sources/RedECS/Rendering/Sprite/SpriteRenderingReducer.swift +++ /dev/null @@ -1,31 +0,0 @@ -import Geometry -import GeometryAlgorithms - -public struct SpriteRenderingReducer: Reducer { - public init() {} - - public func reduce( - state: inout SpriteContext, - delta: Double, - environment: RenderingEnvironment - ) -> GameEffect { - state.sprite.forEach { (id, spriteComponent) in - guard let transform = state.transform[id] else { return } - environment.renderer.enqueue(spriteComponent.renderGroups( - transform: transform, - resourceManager: environment.resourceManager - )) - } - return .none - } - - public func reduce( - state: inout SpriteContext, - entityEvent: EntityEvent, - environment: RenderingEnvironment - ) { - - } -} - - diff --git a/Sources/RedECS/Rendering/TileMap/TileMapRenderingReducer.swift b/Sources/RedECS/Rendering/TileMap/TileMapRenderingReducer.swift deleted file mode 100644 index 43bfff5..0000000 --- a/Sources/RedECS/Rendering/TileMap/TileMapRenderingReducer.swift +++ /dev/null @@ -1,22 +0,0 @@ -import Geometry -import GeometryAlgorithms - -public struct TileMapRenderingReducer: Reducer { - public init() {} - public func reduce( - state: inout TileMapRenderingReducerContext, - delta: Double, - environment: RenderingEnvironment - ) -> GameEffect { - state.tileMap.forEach { (id, tileMap) in - guard let transform = state.transform[id] else { return } - environment.renderer.enqueue( - tileMap.renderGroups( - transform: transform, - resourceManager: environment.resourceManager - ) - ) - } - return .none - } -} diff --git a/Sources/RedECS/Rendering/TileMap/TileMapRenderingReducerContext.swift b/Sources/RedECS/Rendering/TileMap/TileMapRenderingReducerContext.swift deleted file mode 100644 index 2798905..0000000 --- a/Sources/RedECS/Rendering/TileMap/TileMapRenderingReducerContext.swift +++ /dev/null @@ -1,15 +0,0 @@ -public struct TileMapRenderingReducerContext: GameState { - public var entities: EntityRepository - public var transform: [EntityId: TransformComponent] - public var tileMap: [EntityId: TileMapComponent] - - public init( - entities: EntityRepository, - transform: [EntityId: TransformComponent], - tileMap: [EntityId: TileMapComponent] - ) { - self.entities = entities - self.transform = transform - self.tileMap = tileMap - } -} diff --git a/Sources/RedECS/ResourceManager.swift b/Sources/RedECS/ResourceManager.swift index 5840364..4c316cc 100644 --- a/Sources/RedECS/ResourceManager.swift +++ b/Sources/RedECS/ResourceManager.swift @@ -10,6 +10,7 @@ public enum ResourceType { case image case sound case tilemap + case bitmapFont // TODO: preload sprite animation dictionary } @@ -18,6 +19,7 @@ public protocol ResourceManager: AnyObject { var animations: [TextureId: SpriteAnimationDictionary] { get set } var tileMaps: [String: TiledMapJSON] { get set } var tileSets: [String: TiledTilesetJSON] { get set } + var fonts: [String: BitmapFont] { get set } func preload(_ assets: [(String, ResourceType)]) -> Future @@ -29,6 +31,7 @@ public protocol ResourceManager: AnyObject { func loadJSONFile(_ name: String, decodedAs: T.Type) -> Future func loadTiledMap(_ name: String) -> Future + func loadBitmapFontTextFile(_ name: String) -> Future } public extension ResourceManager { diff --git a/Sources/RedECSAppleSupport/MetalResourceManager.swift b/Sources/RedECSAppleSupport/MetalResourceManager.swift index df664a9..50d550d 100644 --- a/Sources/RedECSAppleSupport/MetalResourceManager.swift +++ b/Sources/RedECSAppleSupport/MetalResourceManager.swift @@ -4,7 +4,7 @@ import TiledInterpreter import MetalKit public final class MetalResourceManager: ResourceManager { - public enum Error: Swift.Error { + public enum MetalResourceManagerError: Swift.Error { case fileNotFound(String) case fileLoadFailure(String) case fileDecodeFailure(String) @@ -15,6 +15,7 @@ public final class MetalResourceManager: ResourceManager { public var tileMaps: [String: TiledMapJSON] = [:] public var tileSets: [String: TiledTilesetJSON] = [:] public var textureImages: [TextureId: MTLTexture] = [:] + public var fonts: [String : BitmapFont] = [:] public var resourceBundle: Bundle public let metalDevice: MTLDevice @@ -37,14 +38,14 @@ public final class MetalResourceManager: ResourceManager { } return Future { resolve in guard let path = self.resourceBundle.path(forResource: name, ofType: ext) else { - resolve(.failure(Error.fileNotFound("\(name).\(ext) in \(self.resourceBundle.description)"))) + resolve(.failure(MetalResourceManagerError.fileNotFound("\(name).\(ext) in \(self.resourceBundle.description)"))) return } let url = URL(fileURLWithPath: path) guard let jsonData = try? Data(contentsOf: url, options: .mappedIfSafe) else { - resolve(.failure(Error.fileLoadFailure(url.absoluteString))) + resolve(.failure(MetalResourceManagerError.fileLoadFailure(url.absoluteString))) return } @@ -53,9 +54,8 @@ public final class MetalResourceManager: ResourceManager { resolve(.success(decoded)) } catch { print(String(data: jsonData, encoding: .utf8)) - resolve(.failure(Error.fileDecodeFailure("\(name).\(ext):" + String(describing: error)))) + resolve(.failure(MetalResourceManagerError.fileDecodeFailure("\(name).\(ext):" + String(describing: error)))) } - } } @@ -68,6 +68,8 @@ public final class MetalResourceManager: ResourceManager { return .just(()) case .tilemap: return self.loadTiledMap(id).toVoid() + case .bitmapFont: + return self.loadBitmapFontTextFile(id).toVoid() } } if futures.isEmpty { @@ -166,4 +168,45 @@ public final class MetalResourceManager: ResourceManager { } } } + + public func loadBitmapFontTextFile(_ name: String) -> Future { + var name = name + var ext = "fnt" + let nameSplit = name.split(separator: ".") + if nameSplit.count > 1 { + name = String(nameSplit.dropLast().joined(separator: ".")) + ext = String(nameSplit[nameSplit.count - 1]) + } + return Future { (resolve: (Result) -> Void) in + guard let path = self.resourceBundle.path(forResource: name, ofType: ext) else { + resolve(.failure(MetalResourceManagerError.fileNotFound("\(name).\(ext) in \(self.resourceBundle.description)"))) + return + } + + let url = URL(fileURLWithPath: path) + + guard let data = try? Data(contentsOf: url, options: .mappedIfSafe), + let string = String(data: data, encoding: .utf8) else { + resolve(.failure(MetalResourceManagerError.fileLoadFailure(url.absoluteString))) + return + } + + do { + let decoded = try BitmapFont(fromString: string) + + resolve(.success(decoded)) + } catch { + print(String(data: data, encoding: .utf8)) + resolve(.failure(MetalResourceManagerError.fileDecodeFailure("\(name).\(ext):" + String(describing: error)))) + } + } + .flatMap { font -> Future in + self.fonts[font.info.face] = font + let imageName = font.page.file.split(separator: ".").dropLast().joined(separator: ".") + return self.loadImageFile(name: String(imageName)) + .map { _ in + font + } + } + } } diff --git a/Tests/RenderingTests/BitmapFontTests.swift b/Tests/RenderingTests/BitmapFontTests.swift new file mode 100644 index 0000000..b5a15a1 --- /dev/null +++ b/Tests/RenderingTests/BitmapFontTests.swift @@ -0,0 +1,129 @@ +import XCTest +import SnapshotTesting +import RedECS +@testable import RedECSAppleSupport +import MetalKit +import CoreImage +import CoreGraphics +import Geometry +import GeometryAlgorithms +import RedECSBasicComponents + +class BitmapFontTests: XCTestCase { + var mtkView: MTKView! + var renderer: MetalRenderer! + var store: GameStore>! + + override func setUp() { + super.setUp() + + let device = MTLCreateSystemDefaultDevice()! + self.mtkView = MTKView( + frame: .init(origin: .zero, size: .init(width: 600, height: 480)), + device: device + ) + self.renderer = MetalRenderer( + device: device, + pixelFormat: mtkView.colorPixelFormat, + resourceManager: MetalResourceManager(metalDevice: device) + ) + mtkView.delegate = renderer + renderer.mtkView(mtkView, drawableSizeWillChange: .init(width: 600, height: 480)) + + let reducer: AnyReducer = + ( + RenderingReducer(renderableComponentTypes: [ + .init(keyPath: \.sprite), + .init(keyPath: \.label), + .init(keyPath: \.shape) + ]) + .pullback( + toLocalState: \.self, + toLocalEnvironment: { $0 as RenderingEnvironment } + ) + + + CameraReducer() + .pullback( + toLocalState: \.cameraContext, + toLocalEnvironment: { $0 as RenderingEnvironment } + ) + ).eraseToAnyReducer() + + store = GameStore( + state: RenderingTestState(), + environment: RenderingTestEnvironment( + metalRenderer: renderer, + metalResourceManager: renderer.resourceManager + ), + reducer: reducer, + registeredComponentTypes: [ + .init(keyPath: \.transform), + .init(keyPath: \.sprite), + .init(keyPath: \.shape), + .init(keyPath: \.label), + .init(keyPath: \.camera), + ]) + } + + func testLoadFontFile() throws { + let fontFile = URL(fileURLWithPath: #file) + .deletingLastPathComponent() + .appendingPathComponent("Resources") + .appendingPathComponent("pt-mono.fnt") + + guard let fontData = FileManager.default.contents(atPath: fontFile.path), + let fontString = String(data: fontData, encoding: .utf8) else { + XCTFail() + return + } + + let font = try BitmapFont(fromString: fontString) + + XCTAssertEqual(font.info.face, "PT-Mono") + XCTAssertEqual(font.page.file, "pt-mono.png") + XCTAssertEqual(font.characters.count, 95) + } + + func testBitmapFontRender() throws { + snapshotText("Welcome") + snapshotText("Bitmap Font") + snapshotText("Chars--@!_=+?\"'\\") + } + + func snapshotText(_ text: String) { + let exp = expectation(description: "wait for async") + renderer.resourceManager.resourceBundle = .module + renderer.resourceManager.preload([("pt-mono.fnt", .bitmapFont)]) + .subscribe { result in + switch result { + case .success: + break + case .failure(let err): + XCTFail("\(err)") + } + exp.fulfill() + } + waitForExpectations(timeout: 2) + + let entityId = "TextEntity" + let label = LabelComponent(entity: entityId, font: "PT-Mono", text: text) // _':~.,-! Cool you + let transform = TransformComponent( + entity: entityId, + position: .zero, + anchorPoint: .init(x: 0.5, y: 0) + ) + let camera = CameraComponent(entity: entityId) + + store.sendSystemAction(.removeEntity(entityId)) + store.sendSystemAction(.addEntity(entityId, [])) + store.sendSystemAction(.addComponent(transform, into: \.transform)) + store.sendSystemAction(.addComponent(label, into: \.label)) + store.sendSystemAction(.addComponent(camera, into: \.camera)) + + renderer.clearQueue() + enqueueLine(into: renderer) + store.sendDelta(1) + assertSnapshot(matching: mtkView, as: .image(renderer: renderer), named: text) + } + +} diff --git a/Tests/RenderingTests/CameraRenderingTests.swift b/Tests/RenderingTests/CameraRenderingTests.swift index e1cdf6c..b263660 100644 --- a/Tests/RenderingTests/CameraRenderingTests.swift +++ b/Tests/RenderingTests/CameraRenderingTests.swift @@ -39,15 +39,12 @@ class CameraRenderingTests: XCTestCase { let reducer: AnyReducer = ( - SpriteRenderingReducer() - .pullback( - toLocalState: \.spriteContext, - toLocalEnvironment: { $0 as RenderingEnvironment } - ) - + - ShapeRenderingReducer() + RenderingReducer(renderableComponentTypes: [ + .init(keyPath: \.sprite), + .init(keyPath: \.shape) + ]) .pullback( - toLocalState: \.shapeContext, + toLocalState: \.self, toLocalEnvironment: { $0 as RenderingEnvironment } ) + diff --git a/Tests/RenderingTests/HitTestingTests.swift b/Tests/RenderingTests/HitTestingTests.swift index 30e5481..8105675 100644 --- a/Tests/RenderingTests/HitTestingTests.swift +++ b/Tests/RenderingTests/HitTestingTests.swift @@ -34,15 +34,12 @@ class HitTestingTests: XCTestCase { let reducer: AnyReducer = ( - SpriteRenderingReducer() - .pullback( - toLocalState: \.spriteContext, - toLocalEnvironment: { $0 as RenderingEnvironment } - ) - + - ShapeRenderingReducer() + RenderingReducer(renderableComponentTypes: [ + .init(keyPath: \.sprite), + .init(keyPath: \.shape) + ]) .pullback( - toLocalState: \.shapeContext, + toLocalState: \.self, toLocalEnvironment: { $0 as RenderingEnvironment } ) + diff --git a/Tests/RenderingTests/Resources/Media.xcassets/Contents.json b/Tests/RenderingTests/Resources/Media.xcassets/Contents.json new file mode 100644 index 0000000..73c0059 --- /dev/null +++ b/Tests/RenderingTests/Resources/Media.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Tests/RenderingTests/Resources/Media.xcassets/pt-mono.imageset/Contents.json b/Tests/RenderingTests/Resources/Media.xcassets/pt-mono.imageset/Contents.json new file mode 100644 index 0000000..75abbd0 --- /dev/null +++ b/Tests/RenderingTests/Resources/Media.xcassets/pt-mono.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "pt-mono.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Tests/RenderingTests/Resources/Media.xcassets/pt-mono.imageset/pt-mono.png b/Tests/RenderingTests/Resources/Media.xcassets/pt-mono.imageset/pt-mono.png new file mode 100644 index 0000000000000000000000000000000000000000..424c752c8c0b93e17565614d5873a2c234fedebe GIT binary patch literal 162604 zcmV)@K!LxBP)BE1ZQLxAY_vg;$?V;oX(lt{{G@3qJ`_O^!KmPq;Qw2}Cn0L9?Tam?khm;cmfj@-EE=vY<#k5o0f^m&*sM6pBI0EL{uRZtU4R5Z z`^X8`V)zNfJ8YaF;u6EP09P2E5Ad?jnUOMxUqvh^s*L``+lU9}BlcPZ2XpY-jyyG} zttleQMaed+noc9ry@UIIwng1*#M^^UkFzj+6yF25_LnMhmf?pGpH<}CbcnAmX|u%; z|7E#p3GpKUUAw%6atiT2#A8)^yd3Cssj4^8z$>TJnP(8+gLrkpJj%xIMEtceUz`ec zeo~wa<_{hK;NmJRuzL3+9o0iVC08s$)vACv7|KExH6jmbd4gn8^0FkllzkRT6fd|P0n zrwSVAXrbt(XrcJk;OyVRDf#{Yw^VBW$m{6QFhZvPBk<6w!tZERBfJcLd1$M3&)TehHS09YRtkN(Z(GDi^F2;vKBX;HY+Q*UEnTqUvgh@A9J5aYSek}G;8j! zqp=F+X_rylpF&#LEj%b>g+0Q~5^H*5N-?MwSLAe5T{?GXqX;9WfX;*4pXw6&V*io?m|<6;W0GAb4f<-njQ>$>Q>9MPr@ zwU=n+0I+*9IKpp9{{0u*d8K7@p9VPmCp-6AwmA>rtOL;dXv;Q$XXCx^0IWWyc=l3w zC&Xgk0yx!!!@*Zi8qcdA>-AfBZYACT*nGWS|NH%Vee(m<-vGFv{{#Oecnig2*2@3@ z061k>NoGw=04e|g00;m9hiL!=000010000Q0000000N)_00aO4009610hXWx00aO4 z009610v`YX001iQuM+?OKmbWZK~#7F>|F(*RK?dHLg|nWDM6(bln_L^R1^aQMd?&Y zu@yu`6bq0L5kXKCLJn?X0D+AEk5~(K$-5c$7QhO?>_Eo13OEV44VWCjx<-960G9*L1H*-qVB|Bf z9+=p97p_j1D(ZGRDaQIqnU`~(gv^So;oA>Ur zJO*y*A>$Ju2Ni+zV!3|+WF1Qi-~gc`@H^lspy+fE^ew>nfDijrpoC+(egO^wvXe?l zzyZm-!0Eu57SjG6um~`zfgN&B;1u8n;6FggOPcIl_5tSt-v-tPCRN=)R8d1)gggpl z8knw5Kz1_GKpg~P9b;Z_;5QDK8Tda14wX*lZchCAR8shnu}S&0j}6-c0+4Z=^raCBM#zQk-mYCt|4GuD$}`fPjZZ*Q_;dP{P+(;k32g5cRJ{0&s$hXaDp$@t zDovWu&*AaozpMER=ZJ{KAlO*i&kvms?(=WsZ*#^4%`iMmRMXSE5IILA-b0+UQ+GcwM}_EY*XUE zpK#$!nrY&UFsXqvsAs~6^d0a#6$W3lEcFnOdBB-UP{@!WBc5eu6Wi3Fz}1qsfGkfg zho=`720wCZpLyW1G2b|?S{5+&^#?4YU`5~hU~pN&UnU; zo#sJjWXD1JIIx^MqA2X_wY2QLJI_Rfi&o@bsK z;Q4Xx&$|9T+3guy2iE&wa2Gr@F9ubfgL}?z_O;mTdRz-hNt_!-3uBJU_46>-lcxa?i&fedT$$MSD+{EZIz0OU?$+*8x)k zu$|F5rcRy4v+##sJ+HpzoLz|*u@q}x~(uKpWNZY zRnL+YU)~szR+t3GZ-jf@m(5 z1eom+mP=AiL{e9$-4q%gvQtUj~DF%X$;@IM$ zHtMRYu2MO3*80yVDHi36>~6cz)j_DQ4Q+d ztr|ACTQ#VEx2kYcB|9?1XFDd4=D_qb;0r*Vv3xe4d-^qD=zq}sLVrm9x0p{~2G zgvyjLlYYLgPItAswqRj(YsISS?mHh)@4q`nZCZasjrnl0!eGEwsVpq3fPM+F8Iq9Z z`yvf@-+8|(UAmm=+_8sRxpcewc=T7Q(6vP!U&Xp@D!Mqrya||-_N-a6tG5P?RKNaw zP`&ZmFuh9AtxF$z3A6zbYE~nBiDo9GveboE&x>YVJNHo^4*y(b&vuRV?7`Q04s}Pu zPDFsT+XHW(nc(n$#rrrlL1nxRu7{ya-}6})@-V0_vh5w zm3!3duMSmtax;j52SBX`a)g_-;OMC%wdusuf@RP`#IsYt>`?XU`GU%quYhkb8bk9N zV-}K1&(pj=&Md`g$aLqy6fy+e1Yp-f#2%)p4gJ zkkbzhdGh2}Uw%GE4MUx{uJ{e6eg?|N+O--=Fq(lzmV8H}TeTZ+D6I+{};>5lE6REy?sz%1b&`Ur5avlJLezVO7tWP@jVHLai26I~(vqNoSkV&KQX$AKZ= zg}^^P=nRIo!qn=Kj_SJ^%hdIFN2mdMP!)lA>!+i4+O%oavri9D)4p1uuDOPNiUy9} zxpe6aBD{`C_}dL}aWJDQR;Z$Gy|t>TV|1G`b%Hwn=kFv5dw>f_xL^w;fK~7Kb)&(`QUpix&S7fQ6MYmCBqsi^`cZ zx1JU^y{Eal=_YTVVe58Rd*-?bUgY=@a9LohPSGVLDC&g zMCZ<*v)Rtr7Kb)&V?G|LrcM7M0898z&p!RCYUDI@c3Q%h5D}+&qPFkcq66A-+Vtiv z8*RbIY)hCl8N3n-yLae3{ra0pYTNeTyaBzx zhi!{P8#itmDP2B~;!KR25$>o_SEWtkedJg@ByBmcOg7<@>1zDM57o>4daJYl>f)rX z9BH%1`4JdPU_EaSYy>oIfIPa4$f>?01=u0q?qEB|aUV>+qv6bByWJHv z8|a1@-o=3*09yl-64;@b*+W-nwqon5I|-jgLqY!Mv-(l*z*dJY6F(oL`u6UpGH1zR z^59;ybpu|1MmE{x2iwEIalp$4xE9R3@n8we`?6JDIy>fsaWg!8xg>lMnx-HSPJpA1 zzkw0UY|*@pet~K>5Ku=TUwZK+p(B%pnHLxhuqDuP^viokzHC;w`s#ENM=VUfsCPp} zIQYH%ggxrGFq`w=Y=QJ7;>-IMqAQk!JX<#%_r}dUv^IEb+w`XgGa5ThUEG-vkDU!D z8)_qiFXsK~1mlx7c-goPXqbjktUz@~8?(B{>2!2*Rng9Z-w?Av+P7mq7W zzSPZ`Bexy)BxG@YJr+QH7XfYgh8{C&vQIChpD*(HqB$79%l$*x^-K+Bd@vIXTJDWE zl=1A`dcwaAaq?u(j(mbe_VdVI>o*q5I4?e+ToBX= z_-Xz|T^a3NUh7uv^IUb+)pi2IrT>N8H-XH+KyU{fcLBqdXZY+!#OR8GxYd8BSnEKM zhT mOa>kCJmy*6T^;$Q<3yR^yvimQ$UmEXz8Kvp<_Ybi2iJB6R~5-1U-+4u9a@B z?pd{Lr(gVw7jE)k3BgX+aqwRQj08r4*~sYr__KbEsGZjDXRqCN-{fFYhE`~M5519zd}1+5+K0OaHYCIng|FqaD~xv4z2RjsLa zzI{GnmS@-2lYaVm>%b+?_RW8JRxI7_nKa=$Prnxjdm7Yl;t5ixp9n)i&U%avv!*Ze z#mNqZi2BA|V5LfyGkkU!H_iN0ziBPuaG9BS`UYHpR)4*~CCSu3JWVMjE zX)?cVsaRES%`I29q9;w7w00ShZUu}49t5+I(V^Xwex0VI@$mkO9_&c+q)mI3;dR1s zHaiX29GC$Z32-(!7-%|A&{{sX)8YlbsV7^> zyY|&vcI`M>U+oT-e#UOo;M=kJZ_fuqKJ`?uR@=@izPpMKW`aS7;TBoRdwFIU9|sn$ zj+OlE&{qIiPdOv>%g=1tuJO#7wbG}rRd;_{uo2-?*?Lw(_@n?f>N;MQCG*VWH}v~y z!6sX$i{NGZ7$2ku1DAny*bhfcij#*O+xM{L&WTT8O7Xv65``C;I#IgvIR(jSsnw9O zGT)fYiZ2j--yAr?{~<;t9{bVMSQLVP#{#+b17qa}}2__$aF9q=#5ai{8mZ6MUWeS?SPTIm;6iD6TYL1#-3?F0gX*-G_#1x7AY9zg~!)Z|EnTwCkeg5A52> zp`9RJgC2tPw|J({_|j(OY$6mq0#AlkweF~|%9XF+FBfr)`*fsQw|}E-Y`Oc2l@z+RAw|Ciy3ie z!G3&6jBKSmaDW3c1Dg$%e1y^AAav7}O&$!G*kE95X3}OmMnqe(&GyZR1f&3Fr;~QS40SsnaJ_^Og_=az%$Xp93AgGg?f>9Aij^xDtG)YndnLnv*RCDvvq>MTc|UxsxFhc( zwz=9J%=YbD)TZBl5lz@}#@Df!a=YuU`@Mra>Op`G9#pt7V~2U|-rr|othXHk(7WLF zsJMSJex%yH7fw$4q+Q}iuK3Db*x0Ew5=$bPy&zYo?#@O{^)5EA4X#M*IOuuqobDSK z{VJf}sD_Rq;CJ|aD*hurWOV{Su0Ut`R>teVXCSZmC50JH$71x7I>8LnG=8`x(1H^d zom`~R;h?{6x*$v%VyzttIniXtTGv4GqSK!bt7$v}iH(69H;?dLSeh_oy(T<$YByF7 z-j4w@3x(*UuVa@M>emfxg^i8ly}*&;kccK{^3{PW8OMbS=T+Md_p2Q^8_foOO!?+O zzgK^c!Jjj!_#itN+6&WLn5pUSI;2uMjnI)Jhtv~2+o)3Ia;tmpzeBBB?X++3-@Ijm z>h)9y)v9$9RkLn6RqXmK>b_=m)JNFTe*E|!>Kp%U?XwWqX^Ag@$=TD*UiVb0VZA2) z&j<9Hzi6)7y=R96JqY3>vBYEk0RL~v!}Hj_oIH-CE@z!wC(U(g`}HMtyiAGmn+sA~ ziR8|mdikZ5pAUR8euQ|_eAl*wNppsyOL6YJnHU6Y_p95LZ@o>Qr|8JyfH|Cv6=6ml zKN}y?gn?5*48+)v$ithMY5wd+xi#{y5Lu06OLF7Rcvk>9PeH`MpHCbm?uDFKkNynq@)B z_`a-?{<2=$3@Mj+-|N0Xf=&Q&K`ddIL%_o&SpDrBj{xEa+Y$#&e%#8XHV0}5kqBlN z$kchyV~VO)zTN1-v`+o{bNyY86E8>NQyn@IV+)wsncvOMbmT|xslgaL=)9y9q?cd# zTg$s$;W`k=!Be6`!aEjL6{hAg0;){VYR6c2Teg1fDh}Q#FPmRoLG=&nX!v<#W)Zhl zy+b|Sr@wii^aC!bcjTI{yL2qDDb8A603M?y z2s9M;hnlzcYh-nH;-}Bko&7o$;WzoDM_NgF=fXBbjHfV#G_Qg0y~5EJ2N@cm9N^pU4p7IA9Tw+JAO?sf8BDH!y(sba z>)%J6(MQ9>#mNhfw%JHHz{ZQSt59%@cvicurZ;byb~fZN7A%_QzKTHDgPGsKBOkC6 zP%qy(jDNs<2pC@jUD4sk461aT^8NGpakXVDi$McN)vFykT!S-CO!d6*^Utfigp+1w zKqj2X!D~Dm;K1ZYvBc1930cf1#j6&0ps8J#7ya~u`fc;C65VMK;V$<{7~5P3%g=P+ zX$^dDqYK(eGiU0ZI`*Wu04>3vQQ?Y#nc$8^Ysnv=X)I!(SYnCLg`AlBx@EJFFE_Bu zQXb4`(;(rUd=W9U>MCx<6|ijV@DezFlMP)uvK1?Ky{cKGp7()sbl@8Iq%S|Qr92Hw zB+D*#*jUjYK+tXq`{VdAHET9jM;v|mT=9;d){k<9#XxIA#UzFg(WKsJ^}r=WsipBtVP4v zal@5;{1cPkvPD~c8nVN31I#84ov22Fmcn>0m#+Lyeb5a@N3vVs zXR+KPBOTc~g2+Oq3~smn%(L*oaB}PC&$4aQxcb_6yWRw%D^{rNEg;5gg%3{+-;w%l zAM2`k?7jv^&g|LK)QJ;+i6{;qIT}xH;8GJC33f1Q(ifkoW)HN|Y1i80=i!#^)SGX= zEK5)~gAMzJ18#-pR!4R&iWg&L$e2MlZdwlW0L1nkTj(ut1cV-C(}5isc{M*B0>d^q z6T<<%Z*b(NQoI0A%a#Zb-@bi&Y&m|)*&gxGX3Db#=d?+^(d`n`4J=lygnelqJH=Q+ z9SFOL0(pkwqc~Vo+8HKz$BwPo`8QkQ;|yzvSQ21PM%Xuj*B<-*h?+X}Gu0CHM3xsb zXUwcxx9Y5hjUbDLKKPAvnb8Rvz7b8wl3v7T&6eF;c&s2SxXT5otD|$aEJ%Y7^eES7 zje@ddGfyt3Y%!^|9(bJ`u^WbZ^XM3+ug2 zn(IO^=>Rcl@+aa=bA)Y4W_mp0XA6)C?^--)Y*Q63T+~~Mpf`7Q;iwrjPNpAh0N(9D zH(VtS`tBiw)kP@f2)pZ+Q@Hp*@|)X#V+3r#b?m%HC1b{nCQXci@f|p@*N$qJZHa*1 zFT6(%A2iRnc4O>_jJMBPaIHnhf;6)g-os4A?mHbiAqHo5?4Sly z$jH&}s)rwLXY!Z1&Y2V4or7@i02`M{*OEW6AeyDH0-}t3T&U}xQ*ftGofL1H=WI(d z(ME?;)Qx%yfR;2kPWiub4mfOxzBQxN%i%#NnX;*i^{l?+k%D`ZIgUQ zq2cep|5BIaN@S#8p4HMN%Lxn3xb+@!>RnYfSM+pl37R{1UN32-iEZtE|Bi(-sAvGa zi5HGw#w=;oZ8_^O;>?RH5-c!!S#HsiTxPn9fw@7TQ->ZtIf(bqKaZ=)Uw!Ixi|m6) zJ6s_8BRHO-2T#=2-$Ob1%RJySa33yVwBRX=P82elj-|3_!aK=XSWX(W^AX<*QQA*v z$K?GnI&i8e0|s5`km>2tr&GCo7cFIhs-+UDuE=J_XgZ++lR7*fLgzt@Q2&1r@^&C+ z0n34WgBl5f-2r#}b|n*@z$W9@fUBtEq=R27TX)Yd1>Wukh9%D=&1K zgu(kAjL+ty*vPOfbXt%9iTCSH{>f~ls_!;VUnrrZ{KcMdGpC5ilqqwZG|}(WDf5`p z$_)Y00Mo2Tw%oDCYdQp&B-ZJSyoJ&S*Z9Z;Q#~O;=Q3~Kybka72+|gepEyc!JGldV z;r^3YVqh}!#)zDe^1&puk;ledF6L!=5Qf>sAmL(ZM%uC5h{*MjiF?>NEq6COd-wRw z?))sVR6GJ%$H1$5bAE&-A4%FXiTd^QKtn{f7b05ImTl9~%1iQaQX3I*6#5@Vu*ZR{ zCsiUuu=_(4@#{5iO0gSZk@M>Yy@^I5StLXXGEIX+T}5x|N4f&uJ>gJJQ8x#OYsKO+ z%@W!A^=smEuyyM;#`iJzxq|qtx*_&i6G~+h0qj`ZX`!`kfL^+@(~v1sCRMsrd0S_bUfU7$GO>S;BUuFO=k-louEkw* zfxzYq1~GgUgn5?O;}fFrJu!&*vw#o(aUm+hU|<$T5wq$ z9aFtpEz^-x*w@o1*<0HW!D%wxV+?yC?<9lH;1OY)-cHg^t+h z_3N*gVY$-4tF!49?Isbm@rMiUZOX@WcoUhJn6d z*<(qXnGlcLIeO%|7EB!s%G}PK6D#>F(I`l`2)vuafd= z;dkB}U@JM+wj?t>0rBg~x@yf*HJ@Al_;3NGS0D7+2YPF!qvs7U*8#aK<~PJ~{DT@4 z>y{mqIi-5I@TK4SOuThgH%~d%5UU3JR-PpV2 zCB$mPrb&|~?(+fPOP4O$^7Uh6J48V1#rzdD(+N*GG)rEk4AoJuV3ed?-<~p!1X{*U#kM+2a)T@jz2&O z<8bS*Yi1JbC^|51BJJ^mX=L?QPmw_rGESa8VM}1$4o|8bDrsmgmuNV_7toRpCoi&P z%`V@b=jTCu8ztABfUgM9?>&HoO{nSaSlD}g4}2O}9mvMj zfmEu;lh3Pstl3=%?@1n}hoaBTZWTo?_cGnP{Waj-6XnkKXOPYDhXf=sg?U zt-kqc0S?I10}xS@OJi75QO$rq0pssnD3c(vy|&Be*R4PDCRsr8kMWC6p%pPhdGiec z`5if@PoA_x|884S7=29i;j#W2th~sES%w8B&6b;xUw~Lm3zwQ6Yu8k98?NLB-F3D) zvI`e3rZ~U~(%n`D`*vVwV5Fnmvk0R>cPu(mSgkar_dn1wy~7@jVZvs}kii!oadAmV z$M17J?<1q4?m(zp7?PdXV~;Xx08U&yarpZmW_jJbxjIBFiD=G*>>ZTPkAT0hPndvS z+;r8hjaj)Po8J_M4zU1t$5IicY0_1}M(f+NEBN7SmP(virrFyo*0|vE}^Eo zW4TrYHo%FnYgX)5n}0o~hP?B!;`u%rSRsL2zvQJnEgosC{^5&3FYJTCsntctp3;nQ zP-v(qHGaY<^~hs)tE0z`c%7WIWx{a`U2u5Yf*;nat(*Q(!-r0gAT$fvmY_5XF{tNd z;E~+=yWVmq2 z5&nXO^VHovU&w&T5gs{hJ+9OL{)0k_oEwX`pgAqSxY zaI>aT_76vHTnybOYX1HApX#-N&#A6Yw!%FfScPChr67bUOfyivg&8zOvAN4Vsg;Wp zzhrD^MRYK-c${5Eww$!qGA>wx*8R{?B#E!lElpaSj>{|-8mSJ2C^eiTM6jeX@xVnF5-j8 z55$|MS(>sP6Pcz0`W+H4`&zShg^7-J==$qRs(N+r6gSqlUSf%bX)16)VJLmSbyqNT z#jRv(mhV#Cx;zCxzu*($T{fVcl;y~g7UqWfxNof)zhPPM{d)EJr{5~Q~$BrI}lO{O=#R-Vve^hXzgfblq6=xz~lH9eM`wtB4GgM?mN3dsR z5Wa`1aeG~FXeX}eGbSs3-0Hv)n3KekgeK$tOyZMS3suwr!u7#q8@O}E7ZdR786eTb z%PH%IP3!T&;{|U-PNuPtvS!Ps`oA<-?|;vdC7URc8^kPN%#;(sF*f;7H58fMAAeR& zo3cQaE?v%B0p&>o1IYsi_o-hu{w(Y?O&-~fhGrmO)SZ$Ml#GO1f2Jvk!7u-uJPkty z)5!kKWAR<-$i~ySeUOqn7T>!f>;QA;h3+(c=`d;bIfbPDf$tN*TY&R~le@-_9X;%= z-OO*)a#PVk*qvKWER%ov*&My8N5aE=0~qQh@E+macVJJPG?g!Zi~jK1;lab`y-!EN zglSd~z7jZ^Uq8TB9bg)E@7^ISG^1HzNsDk#ijXe&E`-@-$K^f6SU7Yiu4fL$CFzKF zB`SWrzIWelZ#hz7VD)OX6;BFqfSW+Nh$W$>yJOic0v9ftr|LGSpvv5oSMQ$EYon}b z4$|NSN?(2Xy?v2PVK{TAUzJM{#3R&AR1P z#mYt0v(Ni&&)Y5GgPM?GSGJ&hDb>TRKkP{je)-4v!_&dMB-Trsu5`F|Q{_qOG(`{} z2WcAkuE?Did@*c+Nweh^4!I6Y9AM2f%!~-gj_fi;y z%vpg5_#ZHuj^#mwE5wL%=gO<@zqh3~<;)l0%9V@NFTbv#H{mRBl%|sBXCtDW%cwas z)h7T@PXbI9w`&=X0}lTWamX75xGTX=kny7}hkK#9d#XzH>(v)i#(TY>krY;in<}YM z!#U%kni?A8_hE-lNd{+9?}yKhIedCLZ27n2Y1 zn_>xQvfv~uK%3EKK;{(c=+ts6nPpjd zp*u}s@P5SXvqessjRJN%-UrmhD5s;T3R(>$#Q=A!?Sz_hzx3ySY zrfF@>-S$?R$jd`*E%4j6WVr_;bHSrBJ-NX^A3!SQPe;)FG{V~c%ZJ;ScJhP=y@ZWd zUZ+c!PPZZQ%)4%goB-ZGgg=?gcO>3PUyQ}KE#4(!(YI-nhwSh6_)Ns4?RIx8C~9># zurF{ra5qo`r^?-Xwo&g7j;OMn(|>0mx^B=Ax4GK6kot5C)}8nte`DQchm!&<_3AU&qzs z-5*siztTtjckw^(KuP#u=FeXMA5K4KN7&uASoBJvm#@J1)sZ339{nC_-db2_J^;*S zJH$h`fy5Lv9NeTXeW&bujAAi}k1tZYPy=Fs?oOc42ETn@tUj z^?ip&kI8gI~HA6na_-mXu&AlK=|}?-MlLmwjXGIac&*u z&kSa};f57(I7!DpjvrH7wrui$J`itNe30x~^Y`nq+yX5-2eGC>Y}?w~;M-M(D!V!s zzh1_Y6^b;ol?U%{rT9IF21LZTMvw9PAaV|z!fG$PLK5}Y%v$*EA&>F5+o(q$>15A3 z%R!U+3DqW0$KsZ`2oARa=XpImc<0i^yY`CGl7=%gj>GQN{RKO0C)<+D^rMLXYU)to z=E|yJgC=Gvk8T__4Se$jwcEE9@f4hE0p9|i0Y(J&EXAfH5|W(Ed`cWhZv7*SpR-H7 z9fybTZQR7y2wo65RdBL`1r;qirI4AR$c$cn>q~BiNM1laK9u&z?QIdm~1lgz6bi$HF++xHbdsq=nPtAw#*^ zN}@63(zP2f;cr z7-ypf_W@6<`^&Gy4Ofn+0iBki~%(Irye^9V3Z0&(`K!O3^FQJp*Ww0Gq-guib@BLO2Y z!|hlo@+7dY$madc`ZFhHE)-<1ea$sFyqDYvllKNepDp>QN)mPBMoqn=8R`wBG3D!t z`fFr|hf~;Z96Dk{kCZIg5erBO0aAkgPT53}9j2jOy%rsdOHSoV)oqb=V98)RqyYLZ z(Lr~DuCiFSZk2s5-=E+;DEx_N@|ieJ`5g6c+KeoQUb^$4egM}|{`tMGaeimP=P_-WDS0Eq$*mZxOij+@ilNQkh6dnft;bt03HIi1ZsG!RcCeYJ3b20T0^xGu2o(!5TC`1GfaQI0cysW}`rW2(q*=aYcl=oMe4fiZV*eR-7 z-qDqDeEZ#0br9dXIdBZ7nVE@W3NSec`9$;>fgOKLgK49Xj;{VUOmcTvUg3|_OdVkW zM6WOX(!qY);vKorQ3^7@|B>_AHDmJr7#&z)4Nz$yM;lwW{U**_2mV1UQJaozUCUXs zFE?=OpB!lr9T+!}_V8d4*v^rar}-W_h*vHQYsoRko0G|VypNYk{$C8Yy@x3B`r%5q z-saWa%8Qk&m)cs+wJiyz5f8H|NPeFc`TDXfCqH$u;O8uEYqWsRQ7{+*4>rE~y51LF z?%@}o#LsqQ-gm3jvroUO^to?Aq*bkQhng^MhI;*#_w^1Z3C}X8Zu~Hi+iWf9XVKx1 zT>g4e81)%j6bz8KTpvU-eY*Z>rj+%=PW=*9n!jL<+PW3(9@FBK<*gN~DlWe|z)t%K zu|#S{+Obgneu?DwV|rHW>-FG~DYNd_h2?4?lF>9eWQJ~LM5b#6cBo(%n6$)SL`iR%z(K2rpTGV* zF5Wc%vMnz9B<#5 zZyMO4jCAOfXz(5RG_PVFr8`8)FX!3l+SzXfjPI_ZS}KmFV=*=8IJR_3CYuI3C1$6k zlb-rXX2Sf_|AF9iF=1fI)_FqvdO^tF~lS@5tKUN}Kb!p<~AK`#Qt|n<%jbAnt@d2gO2R;d`7K+&{ zi;&4bH_E`J3Z41!VX>km{B&c-zjN0%dJF6kB8WK-?rh{Wbi;Qtlc!7&s~$&4+F1uU zAiNDTlZRWjRehi8r#fRt);&!gR7DD3=hM@wA0&6|+^X)qzoy=352M zTUgp)8#52%^eX6eb$t-YB``f3lQ1dJd{=a0r+(~rs4HcSjN^M2ov&V|oG{u5el9Lx1c?rk2Sm0-|+#@F;`*O<;zeFat{_glA%go70i(Z@A ze_)UL!FP+Fw@@IfL%S#Kk0tp=zrA1jlh%?8(Y+~A@`E+qfQf@sPkGg>1>-F`7?}nh z9HDY%GZe^mw8cR5T8b~E{Q>dl&YZ5GEhr0Gw-wDEd{pncvi-@bKYH{9_{B#CrP{z} zJAHYK{}Vl0s}DvF)=Sf-s6lAjIFQ=`MC#{E3lZ-8vj5I|s@Yeib7`(Q@BlCpU}vh= zhOWjD{QS~hgA>>O{d?7{@4mL>y=PleD9t*slDhFg&`-u$uauE49@V3_Qu~ze36d#} z2%_m&{3BqkB07cY@0kK^(A94w9C4O~PE#D&%$v&%Bu|_&O`;^2y2woy?t6gjhAfQi zJPDpD!Z&t29v+rE9cTgzU0Xyw_sna;LX+#yrEP~KqM6GRfO!~S$s5b6C!cu6=qZo% zoOv_s6LZgibrSjGftK*U$Hl{?KaQ+9f?ox!3iJXr(M7L+#L;Kw!8^(U{oXOW^33yK z$8Fm;3nQmgOT-ew!gwRX)`6)#noDC*%QIC&49%}E<`yRa9W_&q-Q;2w*KYoNd zd*-ZPx>`Qe);|A{J1Ck&nke%yM;g%Z2dRX{KLrw^vQ&~-su)MMIK(oNB#>qD2Kpya z5;94$c;i zMFVq-k&5Yc)xX^S`{^gs^tBRFHoB3A?`Yi7J+kaE7 z+cni443CkSJ8!1n5jK)1)ZyZVi)tM{d>r-RyQ)R2J5}v^H>sJkzJia|km8O5?*>k# zB|<0+ezRk+GwKTSM#qmIezP+1a~6Yv%VD-6%5s{un--o>F?s5zCS80sGUMjW*4Vmj zf!~W4%RMNW;EqKqSD?xmG}dJFFjWqO-4XvdsMGJ9kAqrl}^YJE(AagpfyU6CpeZ70VXwoh9^dPoOzw+wS z!bX!boPD-K5c*NL>yoQgvw_N+Hy^$a$)}#^)>qB>c7&Z(P+M)-t_cBxYjKAn#oevY z;spv6*W&K3!J$}-7l+~&q__lk_hP}_-8bLfv(NsS|8&h{W*y~S?{nYR^@RRwx(@k$ zKKh+^?|S_|JnY+{Obd*(iiWqoWKA3@aWzvQ}ht>KjPKyRm|5>E}8Ip=QuRXbtoR zdN0u-jq1*C8YU&V4A()!KwerOWhSNYg&Ic+ zV#W~mL{v(mlBgRnSQ|LvA4_MXi_nUvg}Z>%h%)fCX&?3x1mCVQr&3}4#c+}175g<; z3PfgTN7h?Kyz-BN?Y9#aVMD{}Ns;^Ua^?2^`*YAm)8^ifaq}hal-4uj%`0jSehv-j zZVZOlwKa{Tm;4FrBW*6~%b#`uua_Ba{iA%z)Dr+M8^tB(c|h@^Nn!WYHKmhdQ@(Z5 z(l_DOc>lsvW}%lT{5Eb}Ol*h7_QX>C+Vu8M5Q-d^tA7g*q9v^3_Nay5vj-V|O zbnz=R5tV-kNT@6d?_zeD@e!C!#w^rnPgBZR+_q`%*1c?1YpwkvXnqyl>Yroty_%6 znM}6Tmu*g@`4#^(qM9|K&(HWh&aieKx)%24@Y%)K*IN}cQfUY!4pz(SX-2JU|MuT2>E8^!VrEPThs82TDz!=Hx(Dmj9e@he`Vl%eF!+cAsEU*UQb-)ckGe!E|sFkYaW)?dLwn zBce_H3u#SniTnDBmXh05ieO@Gfblgqx7kq8@nGAPbJlj}m?#ls*(ZXbf$uQpeS|_* zC|0$rX(!`bfy%te5OYg~(F+{KW>}3}>-~;$NNcErObNc>WMCaSv4z$h0&o8Pk5Mw! zi?h3dY*=lMLJCV27i<*`B;Q$1oovccC7E&jepUXdR9&1p7HtpjrQtmEaw4j6;;jhu zPStYf-JZ>1m2S4D+m@=7%epsd1KO%5P?Hb+9k4fS1KCm3F*(@wYIISre$k~3QK@i&hZl}(7CP;XB+R2E#4&0-?_SyJ~zCXP(wZO&ADQmi}Xzbhrj z4tUnl73zcQ``AZ3v{>s=wA%SeCpe$-diU4DKm3+ii){ZggKok*(Pr_glsoz_85RE8 zEtHh%?Pbje+bnX46g^uwU)e4V7OL_|PrKfRvA@`(ZC09Rt!IB1;BJXTtbcDp9}S*J zBX2|!wV^gkYB~%aj6EC8OWVBX6eP#WJ|5lQb{0BY&UlMX@85wXXG$zi-J^<9grJlC z{Stgg{on^c_&yTSws&~iOEWQ<4_|6VC}bKLK@m@8bRHlV2G6YBTbeJ1Rn^WP?*;4+P$z5*d_OQN3V{ z3x{)#-OvCzqu-u)@LuA;exxfH+A%?^>)>QI@q_1W|2y$w=Rh@76Q|`usBgThRECQ1 z8y0sU5?e|6Jc->qS?D$%(@inY_{Plq7IVuLYXdvUKfOM==zJ?y*P_(h3n@jpWC+Kc z-$U)g=^FXDu#0DYFXm|y!pQt|SfdNE%p!R@VHQZYNkec-zg&0Zk2gC-a%ZH3+no98 z|1?0DALp_E1E7U8ZJ8F43*8m)Z?m9Oax9KP5_511eD$t4f2nynMW_+8gn1B&RBqlJ z{JkFb$=cT}R>4U^V!v?^%OFqfl9 z`HNS;J&NA>3izr~B9hMkv@YmAu_@?|yq8KkM}CphV4*D?OqNstM1qeMQ3lc`3!nWp zHXvseEnz>ghnS^N(5q}wFAJ1TIZssIZ6jVHV*MqTk=&!iR)*ko*Pd+#XJOw99ZlT! zr`04n+ucC(>-F3h_#l_<2nfnd<8haB_n~WT&vm;o^WtafEfvWi;Y3@(-{$&Wc}vq- zE5b^TU2>U{FBp5bmE`8^8y{_m@LRzu(gZ?;<6+k_@O>ZL?w70-+{op!#ez{R20cFn z63lnS&}xhOx1!&+@>>3pIq3f?N2&P5=JFS)KgknfGK|@RU*n7v!5~&dVgxhlN#2&p z&%J@Y;9?;~WW8~@*NWNA12g&uJSUqDPj~t?3yV(4zZc>uaGv02nvJZ+FMBOqe9g>7 z$H5os2kfIBt0Z}Do!f-uM7-=R*;u>%4ISG-K&d^}tZ2GgHdMx!^GK`s@DcE?6p3G$93{^!P3NIjadTfw;9}Zo zb@tBRf!r}PCCs~jr$bbHOnO+(|#ktbHy7Xl{4nS*E~M9BoQ<1M?-mP<7#nnS=zSxz~DB{NABG{9xk%b zW;RSeYD{zJR|kE&7D=#V^&5)!MgKlZ!2$>oU{bV$#NZS$6qy)fBVys*UK|~}zyo8f z3>#weBg(=7ncgA#j#&@aC-s*p!F3W4j9B_CpA-9?|HK5Wm*0hLP_KGgQE0-5NlEN1RFQ`RA8c<7U8hAdA-~`(?iFPfYi$4Y z;V#yhk-CJy|RJqjC-s*UUNs@A9a zp^RQ(>bh$qq13FmfLR@F8|iZ+pg4~7<_9q4Ooz|m2NvEm;t1MkI4alWQprJyh0xNj z&ZG_R85``h?i0!@6{O3%>;Vy}KmAQb-fjHwChC z8;s*nGR_e5P2_vwej8TFg_iX8^D)WYMD9c*tLJo~;m;1WnWDz$sZtr!^gmvkFRgob z1?D2$*vS#ZpVlM)mN z|A0L-)m^~**n^=8D<$wlnkm)U{(Aw=-=KMvTJvMnj8m8N6qyoys_0%PTQnCID+)o5 zEzvLDZ5ux;()5~-g&{Jt4z6YTivqYimV6|z=+C=|Yt^O$#d1{{jIIeHQ}EdSw^^BQ zp&)J^A=ta zc^;r=Cbgx?DALOJ6()`Gy*TpV8foNb86p${_RRlev`QURyR*I*Df3lF<^3tW} zI`=Xl<8P$h{{7?iBc%)-GHHthtzq({n<o^#fm&r**q|WN zKw6)m4la(?R|epzIhl!AM)~jMm63GYL_ouAeP{A_P+=zzfs^9*OPwBm9Ia_`_BCq! z{xIZrN99bRzy6iCM=NFyv-QE~;DVxKSe^~^1vh@16nUXL5ou@|KVsL}#Re->`xG7k z;->|l0$wqDVD1XX?#R>r=)Q&h{)iS&XDs;wizBv#rkm6l5mHh5DVWbRfS(H7WQ#($ z4hSMiO>Rqt?nO0NV#e1!AJwns#Q@D#_uwv2q(F{K&Y9A~-@GTVzOZ0jc80|IGtq{Y zbf;NVyS9`$L>-dOZmdsFDvqJ%XyN|y`p{Rg?kMXTu;T*%6OQ1iQdCAcO-# z$x*I^=zH#8C!J+<#w2nAzdG{4Q#hRygnN(t=WjhVa==sUroRr|>mC2{F@ZK%}9fJid;i&`$!mQzO_RT~X zTa0PLu5u`a?$4ozL2(qqM}FqHV7GYMYffLe6216FfrvEJaztMQEj&;1iONZcH7s~6 zc7v2kx&!BUU>W%>8`urZST6)PO9UxCWCO)4GMX;D8Uc-%cX%93vZUV_9jIi7X3(q{{&&38I~-ziy}eLY0_@p-J&>YMVfW+&jstOyAZrt*!`a#PK_Q!laZ zTqiVw(ZBh*?_$LW7Gl3nh#k{qt{0O2V!Mg1>yye z7D6#trW4zc^p54I`43sPz*0qT=8ii|-Y5xe!P!qC>3i`S;4$YCc8`8X;z-CL2=j=n zV_&_*4u;eGpo+^OwJR*!Rs+lfL3n>E*Aj3G z{`eyIvvxH!b(@5PhccPt{JqAo{z?KmHrAT$5+E#aUu9Tg7vXo_Pqhw?UWaycZ#bN7 ze^5RZxe-1jxE#S!>YBscvpIfhrLB2FvDdKd#Q^GU#?V2GR~xO`BDNSyGqlJOXjcG# z?zbBcy)DD(jFC z_0&t)DmD=+MW6*lbFN8Atl$YAG(o=sBoVp7~*|#bY zi@OlS@Gd(HoqsDFm{Nwzluk>oRPY1d1d;5VUcJh(8w)eXb^CpE_Mw0m{2unuKD}o< z@)Ln4_CT2Y)Ua7j8&nXg`F3uV1bzT$?PkIGgG7LTDyIXR!0Qsq98Pt^bs4S5SlBqx-=o(UF6?FZ+8$X*epY5A8qSf+h|pD99h%|ncJROK0P4RHlL z|NFzc*DPRUH38+Y z$SAyVFL+)sm5{z82BvWE$I~LnaszHt*>c$z>jFFe4RA+Wrc0WE*6gCWwwG=6zxVBT zYYN;`@{{sMP8dPi_~Em|xyD{-D%w3rUl^KB_$$9swWCf#%!emI0rZI+hhw~$`!dE= zz8vVAyf9V>{1q#=isX}PfQ^&rK@(&QV=U%{_E?83z*bSpfvt#Ia75_t-6r^s1ZSi$ zE2DDoefKGTBVH*51UnuP8XHQA;ScZ3%+!z*_Sn{I0(&MJ0EIwB$Pvg8O~cc)9LW)C zxyuk)KwE{V9|AP)x+Ux*^${}AO~X@gbKWOfB9vpkA9XcFK;>9V3r`1=2D*S1r5d*Z zbE$CrrI3?3q+~>AS`eicKnybDf_6p-yM=~Adsti|;!ss-)ju2Q8{t!B593PAJ!iiW z?!w?mKzYKGc_Bf(6F21#xMMDh$L@zAp`n`yq3Y#vxCGz=Rjt1UPy>mpDhmGiBK%wS z40QBU-eXlx3V;wkLGm^o8|#qaQZtJV)7RE$wT4v`$&|E#d_cqi@lU%gb6$`IP81e^ z7CB^iJqt+0+(;561g{AX>?MpPMYExr$dq%8BC)1=Px{YsV-3{)*c}lWgN4Q#Kk~*& zA#DZYD>Pzu^#P=kN^~hN{4rS&6)_u8f7T+gSBE`e5BRR2pc4c%o+$3hNX*?w1lEQ)(h%eSoPmy%r|JhD;Rp9c z;#r8&Ij|g-ys7B?sBvOPZqI`9sEik&E{O>$djJ4{bR(LW3-L$#N$_T5>Wh%?Bu%eq zYn9Yd@;&dKmKz(^M*?QM98ZzfR@B{Q#4DFB$C)+K)I=4mpLR%LQ^UcBRqNSI@3BlX zfET&)Skb(W@fWwfj&P^z%kO>T*tQ#DcHa}^*BM7?Q| z*24A=wI=|@SqxC)i;K3P#D;(rwKk3+L+It%FPC~9IKHG}r1WNh;F5-a``g~%s;~V* z+dRatPPF4>Xr$uEZ{!EP=WF_b&zdWr2(ukTYsE7?|3%r`jL{SGJ@T!K$#IlhwqX2| zBNX$~TCQrq&l`;1nwr(q$%7js z5wM;PM9tL^|M!`<>F^_&tmltrA$=jY^(U{tUWZ7$9;=GH=0_a2#(oY|uuCP!r2)iY z3M$I?*B>fRD%8q;{ytljIe0b(I$>{83!(AAbr$>zfpQ~@3=lx?PHcU%o7;5klHP{t zOu#AWJ5V?cg;1j*CH$aTX+TeBBpY%vJ)v$;IhiFo9M`F0TaR5-sr>fRw`m^=)dGd2 zX^-=*(R4$zp+vb%aSw|AYqGC0@gCuEWa{EC0=lCa*GWQdQFsL6u#p6}?0l|_hS1tt9QiCrghI$y!tZsH<(d`qj|fguB(Icxbi_^ixu0|z`v zJoVlPMObmJe9>*0_p~_9CXu=9&9TXBuz%FH*`NRNaH;G!dp)MVH1mY$qGD)K_6)jN zppkvW^hHRW*o~+`SRituUnU-SunyE@RbS~==0gVd>-waMF6<2VRjz1Dy1RQ(CP#|1C20+iI!@XN|$pFX6)beiRF10TVqAe zn;Z+##N6JCWaMw(=p~qWSrh>KwI)PRaiw~h2K%>g!(70a{U)LY0pEHSg|gVL z$KlGqZ$5P`n;jtYx-$;=hnPICl|8iaHn2@>!0ivUHH7db*b%eL=&1kL7pL$W{j=8F z8zL;G{0hqL+RLbST9fQ>e_1kY549V-JJu?^cfvmICJU|BX%xAe2-{B`5iLXev@erb zU21ptzzWhQ?fMp?_{{3nX0C3a*a`pap3j$kq(h!NzAaoQquyY9uTRZ838Mlcn^nGq`$N8TY zee>e`b+TDQG0|`CySYEaPrg;D*hb{n=>_lD{qrq)Ad#!2pEGwAHtL7}6@Km~USqjY zFH!BDi@OSdVxoMVLe(X^VwdO;@MNZ|;t+F&i5rUkbpx>qAt?-xSSeinU13`!gGr-W z;TR!ID9h+I?-7e`pkXZ$3!mBwiIFcFjJ~*s7QHF->=up3b^OSO@%FUJ!z?f=BmTZy z1qzXP5`&}3*sRb&bbvgrFZ547hzU1Zg4xmI;Qxxvmd)NA z{c|7sBXyx5WS1bO>0b-3)ZJAQ{z3*Y|DjRh*%gEDXH}!7)okg~BeY~CRCgOx)}P>W7cD4e72T?U?{au#UC(z)!5s0 zHQZwJfp%3SW%r9>(FwcuUAjJHER}7YBNqJc0&{oEQ_PnE7thzv9bb}Ogqy4RdLE5y}5{xGsLbJr!Mm%eGE|%T+3)2>xwn-E}2$FwhEcy zL{;Om!>|acT?j#KMeko4$)Rm7^#Sc$OH0gcQqdFvs>C2!^2=}_U$m;r0VujI3aPvRe*+?UsR&W9LvCt28FYcMlwf*TL&3qXp zRTc)2mh5pau2e0z>0f-W3X1*W_Vj8+efD7pz%^M2Hm5xdC;mKL_~nN#3#i!2kaeN~ zRp?@|QyFwnueHU6v0)+eK6&?%vW=-Gzz zElZ+DnT${|j}|IF_Gg2dWzv}r-O+n{x=J>7*1Xj4{J_~>YROuGJ3{zNZn6|}L;rQw z>+M|^^-$ELCsgFg^qUXrEAP{hG)XRZSgFK#Xg~PWZyLfkEti26oY7RoDXm|KE@tOP z7}RBcQf3d9sHqt3?9HspSg5Ovd5UHsfGng)I7n5pV_r4Z6xi)~7QL$14eD)wK6pR8 z|LgZi(DpLG+mRvY{9#1)-Mqe6|FxSZs7JBJrNgzP=HT4kZx)+p2J)i$12 zWU5AVm3^hyY9*H@Z&a6WqcW=U!5-5c^Lc`3*`OksAI|@Bd${Uf{l0ns3eH$U;E`Rb zKZc)o8$zbq{?nh6N35f7hDyYzch;NuOSp*75h44tn}}{-Vl!41B}q~Zqwi|R#WhU& z<5XHa?B;KSF6HMzCjp<_4wq#LloE7OfNA&sIdAv-^*pu&-Y?W(n~~}uT_m$)l!0r(zSNaccu4XLqe^qY`L7wx@Pz5{2FrwN}q_1MpLbXVq@cf%NPj+`S zYy)UyWAvT_X+%#=!*jBPJ~}-&3ZM0aRYpNmh{b@*kX7eObgtyKj8+D-#I=!+->@CN zRK8$oHq&FZsK%nB?*n>vrQ7+7%>;D)prlARQYl6PGHsSmgq9=HPAGqhpDgdTKcmog zw@m8k;Q4nRg_z-98Z;$b@9?c`j^$gckniz0^Vv%jo&(T*lBgdWfp&vCSJ=Yf{A{IR z_*<6VQNFKNC;Zdt6y0CfefYl!w~XgQ$g7$GH%G)tX!DL+Qb4^XRW~=~1arV;&Dr12 zZWgnD_K&TH=VIQCdiDbsOELjrXc@WV2nRpehyCtAc$^$PCUE5Er}Hm+t@);&XE#GY z(9OO_;0X5|n2bn*@Pi&1&`KmBw@Xdhlmq#wP|fPvQRaFs2Zzb-cU@s7j#GW?$h1^A z=AQ1?@r--WDTFJ}-XbK+w=&8qbH(bN;LqRSlrD}h@=)RA2bC^GpQhHllvF)6w#xOk z=ecl-Xrt8R_<>BtaS>js6COcsz*CY(*{!6_o=^c}QacsI;vk-xq* zvNyJB&^+O3%+U;1Sf1T7UX}7eZ?18&NB~ z`U1G_lO6xR*1t>x1rHQuyqJ1n+xN6ud_zii>RHNtzQ@CwHYi|)jOF9q%_I)7gzKGq z3xnIrLD0lszjTJ9vwkXOW{zA(LWC!@nVL6n;;{2b%$_8b0M^;ID@uu(z14J`ykx7t zeAUI6=q>LGvoHD2#>ei!z%EYloD_bl8^WJD=$A!hA*h&_8ga3|UfLpP0a=uBUg0X#@A32)gs#+?o zqn+!i)&hhgv1`44{ms05rwKn`*!I1lsPEYA8JFHzGR=2g`T0tyASp72l<%)uS{kk? zB2Z0$E-K~f0OUoJ!p?)kf%(=(=s%McGe)()6b*3ARD1<5qUt)bKcmS!k4c z;`W}+etZst`ArO%e!UO@`&T)bl1}&@y@9k+uYUSW;f^M>s&={uCx8X!j?C$7@x{>m z;CIikh<>$cOOg7ZbJ#fMW?>V4CMnj@*)R8GI>Q=W<76-;Ni+U z?L}|AVG~)NzpWuuS-HrUF`Qk?Wp~UX+=o+-F8Iu8ao9GwQ;90G2%MEpOSIf3=ok`C z?iS(d=*WptoT6(ShDH`o2C`m!HuM%AtL?t>IGEs8Uj{rw^bXgBHT35+47g$(I(YwK zx}cuBoZ(|axcQ71_ek$61?o+J%D4U5ZXVz1%UNYC?O~G_fbg>wo0XKWJnakq=vgC%o{_!a6cE*k5KOD|6{w?ODv}agaeL|7KQDP@^Cb>V~ z`@kgChu&Owg+)I_%2%#=O`=iPz{SnvE?os!yxT%@mi|iQiRCD!(oO2nUW`exaGDwG ztg7_cn9thMJanriM*JN5Wy26(fkB6AYoN|)^>!_ae>A1HtD-4d<5j@P#iktbG|+sv zw86$1MR~WNTiA4gv@t7Xyd|@G2-f|;I7Wx*6bn&^oOTcFs6!md0LGsY(;@UzoF7P6erL%zR z08t=X3xqxXJGIf!eU7f!`(^%tGmo-@LvLutX#e5< z%`oG!Ivs3`qm;Rd9|6Q@qfN0PC38-!Lr#FXo7@BYJ`F`tzsZ+}B z%n9|e-N#V5r$lw@ZO-hC*bZnksBlU&lErg8PFG4!d?5ASZxPo?#pzMvoqeQ23qSCl zhT%?W#h z;7ZL|4-R=2yyTkV>MV=Ibse?tYpP?U!nsn{PEmjw+UoO4jAA?Z6R{?1?V_cVE8k`& z)`PE9Gef|GAD0}Ul;AbE4xl~!19Z@bM5mtM=n^y7n?Pj#SKMj47|C@(^T9#c#@>J? zD#kgPQ(5CRTS}+EkL?^Q3P+}RH#7DLkUhDd7hk9&MaJyX!$9Al6!=%T8cyT!k&t;18v+ww$R>Sslp5o*hXXjf*STSk z=6lndq-gbbw-Kt%r#a`g``;f#UkLBj$vF*4 zA{=$tr>2%Rq${|L4%* zsI39U{v$S-B`A;#2VS*g_o1DHVeAJXTk+V6PH6%|+BV4owEE{Ln(0b2;efQb_?Z~& zYt9SbAGemr8LM_QqpqJqnHV_=t13uqw4xGxV1`g+V=*@W(R9(mDEtp6MThI%pjm}y zpErXHJGi`~yx%sS5O5Ex$!+d^Ya?&*oC*H@zKyHK@M*rE;;_79X+m)otZfn=+XJf= z#nB1`3qaD}1gGB$(H~@)m1S#9%D*+V>cqZbp9{cdG!Dvm@+~4N(p(p)Wgr)iQQ_%x zSQKJ67yQX`^_RBucI#_-kM>XJjj-hvsVrh3J;H);GJLaUl=B1RT#Y+)*r~*%FBiI>EXxxD+}|tO z*c%ZWiNc;G<~*h;f@0M$|FJ$%ih)E!o@3_2bB{le$jD$Wr}I?gt|6l{IbT@+NkY|tlw@Mg6m*boL zv%y4WPxpk67#QK_!(X?SpqKyX&akXw+c&;FvS|;28-Ve{X#{f?>qhU`5YS|(a;Z{0 zoz*RZBoPd8b)jQ1&65b8S27O2T{p&dmWT^8?}Obu++O`y+q~rd=4?)2A(dS2j&cu$ zhvIYP2F}f(*`6IenP>R!TLE-rF&57rAyQ?e3LDyxp{KiZ@tO8#pPqDbChshSZrb=9 zv|<82lSF32PIjd}@ssJF*5u|Cm>EG{!r1u{0_=t*$2>;7IczNcwhs?EyKP+SmRQl= z?%^$1cT{Fq+M6oH=nolO$CGVK-0dP}<+7a-Ur!e(O)J5N`4Z85@bHKB4pi5(!2E_a zzg`AB`x#!fKE(s$=sMQ3Lk!kim95w6Te?8LZ)>l*O!BI~6HyD~J^^tg!xTR=<%OvK z;$ev4;_>~#W1T2FIPspzlwJ*&%iMG4gZziu$5-FEMVmFh@s`_mA4(Gc*M?PH4`rLG zwy}SYNBc+X00a#>0HIXt>#D`hFNFyTHT%GWt)%%^ixWQ>K}W;rTka)7dPfkS+58+z z3(YCzD$$I)W(lMVynr*@zZP$8QICTPJk=<2ttE68A)6w8c*qjI1x+`If5H@{b>m z8VXN(CO(iga#wjJ7+o6ZqFyh#=z6*w7ynYGOPcn@a)QM+bkO&^R9BQPiAbv4$IFiq z1LAH*`7~xJ>5El%$ZqFNqQniae^-|0>LU&N?cqPWQIWPg1TKNKC8MLYRY3^h?+d0u z-;5J*`w=w2WzMjKVG+mI1n{i60C}88^St9h7rZWE-~Ct78V&~QyVm>K(JWCPAj6#+ ziVV4%x(X5e+A_z2k1SH<3_hb{^e`2ls<3@Mojc zvd?-ElwX?q{V)>5<2_Vfx=>%c4_P*W8R(S<29X<&m)f2!YL}p0?LQ(FO2a<4cX6Mw zf4h(junu82Kc;$r!cLmiP29CzWEIqf<;+{^OeRWG)Bl*2I1AiF>esVJ;a&0I| zDuRfX`9|(eHe(6zr4%Q`$l_CxHYY;IL6bm}NDKK%ZF*hiZE|o5y6I^X`Kx3`r|$2>T)}m4e>zhuN+gbTG}A8?^sog6@C3X^ z_{|53PC}PKYkkmcU|yoXcD2KMy13szOL#7BV8!_tK9vjk7*B9E9-#|BC_B$AIc1$$Cl@t?KWJ^lgZGJ<}~%3_9=xxie2!IEorMAagqbKhLcQS&rc_`=pB}>wCA5t&>&M9iM)r| zXxaNy7PRvh0+}`2KJ}7NL=H7StI4(*vyRlNhqIMp%y_uz#;Ym$RJLE39~LP=B5}#@ zz-jatG{c7d;a^XGm9T=g&aJCO_v1rE1!HH-m8!-(|Z+eH+ zRLg=45YEk|wW^)d()jGYW6vM_8b3+$39HUkKxnXp{+;LHW-v)>1Rh`y?7w+=+VWRD zafA0GuCAmt;2{w!UX~K7wE)R`3SwI%-Y=vLe|X_80BkxuYpv6d_}2xC@B>`G#R9V< z7{p6H$CdDIN}r=jET4^J6?Ofa5(?TB9|!_|lIf zV?f31s*w=@7XXZM4(MN0S>B~lj^jz4`?*)(=@?=WXYs5c8nA>~uTGT)6=5>;$H>#3 z5JD}s5VIGntK(_lY6oR_3tn-!&S6W}#E{NEhW<*-6uo%rCh0?iHCdVYavd}!n`(*LM8)7FOcPd-iW)ZjB7U1$JHZ=5t zImHk#ATQ2=EV7E-qPZ~ZCSo-==d8S>m{Tk>UrO2=D1Bn~rbp^R&5P5% z|MTeX!jD=Sdg*~;k0mD{4XA5QdBrtexQH2!oW2;ro!DV`R@RFkxJajAR#M zd|`O+lMdR5mV1ddXEHDuq2{X`>axH#uy@;>63dk6q^WxjZwp(mYC*Ic$7liz}p;tJBm{A%_o%3W2RnxPj(LO0zk zWll|t-+t9vSreymnYI3!AUhCNg~S0yrD2hJtaW?4_ZO3^asA!!_si~4r@kT8Z>Ydx zxEhRVBfbA?jWsLF;oD65a({7C8Hpvh4Lq7uEP2ngV0n)yhMk}N-Hob{jxi2D%%EFU ze$&iYtYm%pN+&a)TlZ$K!+q4+#b=3h>oK-~6r~o$G0u$=ebdrx2qPB3FlBXv9I5wa z!ioX|+}C3F5IlKtA~v)tpy<0g>PRNqOvKkTp!mnqIEeL2(}1XVm+U zD5T1f5*S8a7gWyBI`*ZtI8xfKy!Ox%p>5eDSt%~k(&wj%M#6UOY^<}Ql;&I%DS<{mlHq4^l`%R`5MB178NjS04dOxHd*eeLi1d^s~n zK=k*M4z!h`g46%5vz>v3h%fuX_;(#giU|lRA}T|kr7eA|hwh9_Lc@x8wN`Bsp7uD+ zLTCJYt&BD{4a>hgMlWBr;fB|oDwaw}D4_1^&oMGuUG4kP;b7b>(Vu^5;F&n%DUX`U z3<956#2&U*Uh1ZuLwJxVMx;Y&RQln`BJWQLMWt%dWRMcAUYkd>YHWWdx~&_zX`iKT z`i600vgbto^BVHD&yd6c!mih4+McD;Xu!U){KIB-s;X-}^fG*$6{=)Y`e!ZV1Gn64@5!o>c|#IYP|TyC zNI{{xInD(n;L!7PRSTF2Q(RL$bnXQMh9RM$(+}K~U=!?)n3j8lB*qUAEUIOYnN>;o z`Q5KH{0cNtWX5B_DY~b}c`BupA61Vl zb<9^g7(Zh2H~&VdTE7y9LM4Zh4!>OZT^~voCV(|nu2WiJ*$<@NB z_1j`R?YVL*W*vPU7TV8FWN0!x1dMpo7oFd>EHXoldd|)Co4f@HVj#$95QYP;xrdUE zh}_xw7><`;?6wACq^{5z9vfvPr*b>%qTUGxYlNn1NQ+9*dm{tRmI`^Yx_Hjgxy*v@ z4-Ur@L+&HtS;&R2g|&A0%tp*QjrA{NDX^lvZ(PeslkOVU{N2nl{bvfu?EWA`D#tly zqMTSGfpzkO3#sp z8Oi!-&EaqMIn8`<vAQbJW~`x$k;$9ttt}1e_CSvD!AModakiRY4K-4-bQp&VkmX`Cp$m!IsElh8xl+|bT9ZF>T zF{)YdndpnpQ;5R~Iq5N{Ll%PrMQ*`ShwZBAL+cu|BdDYN35(zgX)`>~!ucmuO`np> zZnxAlN|=7+c20+%Q9JWzr7b>5y#LCU6(x;v# ztxf%~k{L)edOGnj!t_0BKn*|*J3N(Db{P_%X$ZH4Qlprkp{icm<7N8^9_wj%z+z|y zg+wu-PP0trqp$C7XRKZv>$Hqw9FCO=rd#))q+xFbd`1)bbyf0$1h_uH1s5CE!Vo?1 zChF@YlEPght~?3B8MQFQ$Urxajd~R`?Jw?efquPdSXj4te?i&&i6=xY z(t)UL2>`Q>e4tu_G8P+A9*YFYjN0BNjBCmqs8`Xkx;8E)eRD6BbW`Fq#aQYuu+!hG zrtO7Y2s$TO{e}FBG=KyccaQKo*`J4a=Ghfqj1<(jo>ja)GU6J%km*9GFyUEq9!&*` zhWbqK?t1~T6PWqp+ik6?*Qu_aO$*D}%g_wdqx(9RzJRKssx3P#-ckRz{gq27bV{@Jza1&$H&nwdXpc6Q4$gCmAzFd4(Py(ko zSDX=ah9>DLwk!j{>qH@erXM0mdW}qHi9%cD>Z$%o^_dTzao6f)hV-og88k)2SG7LC z28Yy)MHgU;Ruu@Q#wpUFKSWmje6V9Vt%f;n#U{jzV2_1nhtdMlX5^V^rmUVvP8$vZ zs1LF6&q!{UiFQGT?ove}j8;PQ+1s2jTq6&o8eeHgbjU8VXd7MQPe(CkG36BBhEu!O zVoET1emgYZZ~XmD6!N1|H`>J~hrsO942nxCgKlSvL5Q;1Fp^wEFB(%V<+N$I3 zm&0|5AvyElVckuM0Zg~?kTeyX)9QCP@yl-}{&sbQ5dYaTSHAFoO|pP8_*fm$Exc{( zVVzQx(Q!%81xn3Gmv5;ao!L5PX5U*gd=bATzt7E%Yn=o@_i+hhjcVkb>`92@0GCEW#;*%n?W8I3+%C z2ZvwrXHxX%^bFrRZ?h#7oEdEVE)oGWzO~Lh{7nX+?@so1f9lkqsNKXne4?DdhJ+3qsEQE_?GDBy&ByXDrPi@BHg{I}4+mW( zF%jqgbiHYqpcwI+_n8ZUGbf?4v&8H#`T1n8XI zdYF}u91wBU1X!2_V$xS3#)EzG36g7E(t8nfTeuMhvHj;GpdjhP7*y~)kDk1`7!u8R z<4N}YSxL3XFn5xD<{uhyN>iBoK)RpLZ5oKeo|f`gk|s?8<^Ik{=6--JCX?$s4K~m< z)ohp8N^idehNRb)6ps?O+nbY57Hc`^~T z71Lmls1T5dv~ws?#BkU_v||Z-gziIK*F8V&ffAp#Dtw*+jO#~&2lM59J^_z zUC>iv3hF#BCMilGYNPzlsKGx-t;_#JpGneUW$2whU93k?0hH&+Clm09db;|o^6Xu) zqws|lghW2a6JA7LeR>jYxrNzQ&Y7zmi2+$o78=n`7uHoL6Xqm~jg3RGu}VuU?k|$K z_Y=!P8rky?)kMEc)3cg%^U{!dicx|K?ar)ronQLqS4>GZ5hCM|S{c?hU;d4Kj2Hwy z5e<0k*cfr$!Gm4E1*!dd?=QY~7z5hA#0~ox9=ueRe9LcNcY3ej>HG;5ifN8VhW!8o zW==3>QE@&s|DedtYGwXI;o}~Guw1Q3EgC|S{Jeiw_ON$PKfu zdsC!*8zZ%%JIkth9OQ>#WMzcJf%NvVtIqT>sSJ_zEaq0hpb|FR?9?-P@nCa=(sc2) z=G=|wIH+T-1y(3hsf60;-KYtlmc{~y_%>snQZVtQtasS;IT7)Az|3X?`;k1A!HEO1 zK9Xn*1dHDX&i$FVi3M%F)Bf_i_Ck|M&*6ai$j|#?6L5aS^q$E+Z5_jTFLQ!>rW2 zqkebZxPB(UL)AMbFg#PN(GTHFYP0=#^>!?c?>YP*y3Q)9tv2e`A!u=TcZcE?yg0P6ls9q?zBL0cM_nuoqYfJ&$&CdN%l@g-t3kAt~KW~4N;cKnXZ*} zZO7lW=nxy@tShX<4f*UrQ5Nrx(ka#C{^WDvByHAWEJ;h??PoTcn$pep zS-4XsPMG7mK&3vZ19|QBFK*a>W)3XqHwycNI zr}5IQ#nMQc?`7m6^^}b$PQgP8W+lwYTA#vq_X?oMH9c9j^qA{6mP*Q@Uu!yLrG~dg zFajph{e_CQ4Bfi@?qR{+jn%Q{kh9xrzD>x42}31B@jbdQ2S`+Ya>&}?WN{eW&|||m z-GW~%pG4sgJi!mW1a_#6BFaPW%k9=`!jk=yZMyZkOn#N3%*Qz|0S*p?dfDl`obKyU z>oux1J1UOmAGLIUj%GhtCf*O_p5)Fr_^aXwB99R+7IbBi#qY)^f6~#BBXHsS&}EV4 z6Wr-OKp*z;wxQ=G<+n}c7SbDA5mq7K>)o@bXi9|j*E+q9)!Hv@W4ofDhCCpoe2FBT zjRjS>lPD*u;zCqK2#w;azK+)?fgm37!f;C=vbcA&@~583ho4qWT?i}Qdx!tr52|=4 zoH>urG%;2O71_amo5&RwFTx1Oe8h$)J@K9%z%MK&lzG58 zmg>e#)m!9G5;#rK8H|87HcC}vxdQ0HI}lmNM+6=kT`S_Zh>}n2v^Yl^m%(%v=aIdV zm^I3;w|%Maz?*;3Tg3^;<8bI}pG2sJS>hgC^f)&Ys?>2{ZzLKyh07sn`jK_uMaWm@ z1G=j6CbVpO^(xw6Sy((oJN8$ z+Coi(Hu6htJ>b?-1h}bsNRitrH0ewuSXprAo?NzSar=C$Wnpo}q>BF&#|549bU7WF zFW+JlzT<1$sMz|gQbHDi^a8zjhE{GWCScF8b%p>y5Wc0~|JDfj%e*V8K zfP7;-CF;2^X3_v&aQ}^+meKD z=O0-?pzi$um=+C2td(S+Ip@P{na($9OQX+J7R)*gPU669Cz=C4Xd3_f{&vZ9-(d50 zaA>k#Ahx}d8C|XaK?EjuZ8kV%^B_56{I3k@Vh=>nORrok6CTQ@szTvH?Y*1)_Lg?? zGq3!O7S{bgS(vJT7Cs{>=lhN|7}6ULP?^{!&Yf%EGOB+hJdcK>s5kkcModQJSrinN z56jFKR4vtJ7=&x#xF5NVj%VSMiU4xcFG)tyg^AeF0D^!(`a*}V^Y1g<3L_=l0-k0n zdf_bKQTY-{CsZ z!#kXAYK6z=2{wGD<;1TDJNU_^CCrqW>Yz1QSBB(qCyv!0hP|5zw{LNGnVMcG&wUyf znj`D{=$3tl*c#I<-Lr6Mxqi0XU;SDp_fguT-CBO!`h10$R5u_CSqY*Fq6nU=a(a3A z^XH7|+udk$v&O7k3WrlSndI+(cN?E8l(UtJa-_5UZu*@{05}sT&r>GzJS#(?zTGfa&x9whVYP~w|1_X}r!WP+E!t(psFO0~_Q2q1FF~&#~H_F1mWQURC zBhGqoSDt%e-HS^x*|z!yu(2VQ>IbKm!L%DuyLOh4it)aBc$XAULo9^@A?sCP;E?ur z)p~8q>+{9 zY^3b&5@4zB>$ii~LzkpXHT|MjY^>e1+%yHBq{!bpvtUgI^tb8C3y(#A z!D1e|ZUpTt=7+hhxgRdenhf6DFIl@y*MQz-u+hLf(zT-$#6-PHjCc%p&5=B`kusX< z1F3xgez!895S3Y)>AhVrTs(@y9kg~WCh?ll*rsvo-+uCbrx~FBCX$+Ywq@UmC~im; zzVj2*`BVmW28{!*$yj3dNpzzx`oYM@P}fa1 z$W?8j==gd|_4LFCl30@IMUxyUcqLo}MX!V3_}}x5AJUV*HD1X1sZx-eS7CZRB-Qyo8PtIA z#$LOuu_O;^F_xYxUQJ)tMJ$`q1Lm6ZH*v2ZGbs<#+#CE;0ZV(8k}+92D1!~+ApH{? zE9g|C1+g315P@)08JKv#RqlvS;Zqdu;xTYmxK1UNj;F~PmHsdDp&S3MUh`tfFQAaa zb<}oWm6LZ%`|NU0$=t2jGTzp)-{$L6*lfkH(ifH1982YsmHJd{?ThV$Eb}}6+0?fJ z&+X)Ji8(1sj3WKkBd-uAWoUv0vj0yK+lOamDjX8njJ8>QA(x zp(0ygVq-4@cScLja4~LV^Hf)nt@eTK4%8k$XY8G>v0sf>`B%;CVYTX)+n0A<2)H9Y zu33g+6Pf)1HXJdq0LX1{An+b2h#-W7F7Wm5UqcP7z4@^t4&+Ch1cSB&%a20n*kPlX z`hZ=f$?DqY;1fK3cK!3XZuoY`%C5_3`BiL0_!?WE6{fK!x48tpfJ*7Yrr&k#WZ94BWes(9)U2Gs@p*SqXShUAU%9O%=T9Ka zsYsw%@592oOu#zP=uYv6v~2+&l(5IGfnzm&zuvW5LN?=6)|-EJD>ZP*JVV$spsY?l zd?B?$w3qz7!b&1lha2N37RHXyeq#7OFAu^?J+*C)@?^Y@LsxlM@<~)3W}y9JKiD?& z>@tO^fQ7kaD{{X=g<@Ax>!t*IkWV#$!25picEU80h8d}BD^EzC+`b4Q6JZ)Tf&+or z{z%YyE6A@UJo4C#M=}H_p=%AMkMj8tJ+-v>Qn~coFN(=5jph*QY=3O(pryyU-u;J) zR_%nQA{O+tUu7jqv3$OfZhTLubYo9D>~i(mn)<&P3umrJH8c2{N9Q81>LXKQY9cR9 za@6P5UB`)8&_|bWBYN+@ZC)=F^XZVn^SXQkt?d5P(hSTywM){7&9wY_w94aZRq{^J z{j!O9-B__pa~AIP3?!0n1k=ONxO}4V#At7B1t|}<*%K2{uLb*iUKUam(a$!$WF=Cv z9&!KBv?Gh;xzXVGY=BmaV@0DqzvI^Cfrk%%vF!|CNTml=3ven*5oX{?CsaUzof>aX zHE-J4Q?t+oEEyd4@O_qK9SQT@UwK#oj%f&2cnUtYDCi`y^xVl z@E7h%{OHRI_RSXMD&zGZ^0YE3`lwA5ZVAd!KTqYh^e`1~r z3{N+5|H)~(AUhEH#ukG_a&n>8NX=`h@S(f^?|3y$!C?XrcghBI{ypY?l&Br%lYOM4iJA<83$lDx?fX+#Y;wHGDl4&9FtoWvN~ zBJ&1q{RQr9B5VUK^@fxDNy)hSTIw6*t(+C|ltvg*I1SORKDs}}@1v{4HY1smsX?L{ zPnGpW$gJ!WCB1G}ARE^{X?M~&Zzzb_Q#LWE?--vaXJ&}V#zQivd|>^I{6@j)_S2aK z*m=rfZ(_1BT>ngG;q_ON6(IRue~RBj^rymfrU___%@)~bxk8Ju0%^s?Z&ViI@HX7~ z^bV4E_a4t;uT88t`q{6aBZsj`WYY@15GNYUH))Kq2*`aEpnPE-_;yG8#4PllU3>7{ z3KiF$(rC>4%DRRGqXTf;dHT15V@A+l`g65eD=qIG7gW6VS>RgyHt&ilVdCBA>EGZh zN%Zr{7@us+CC5*U^{zeqINGvc>f;4QSu zgThXGAl;!3+_pw-9xBRY#jj+8OXuPvs!W3;2dt=zjq2*3hivvzv~e>2TWMr&<8H>( zfbgg|!rsS@gF=BsvmN72Ho_~|xPfp5QEJlWaJnqF6?}sHTvzMT>Xs(LU>E;mPeV7r z*EGu*dsV92F-sYg1si+qCy^_9#WdKe{WsqPHX~-y$tcAD<4+_kh_?+kN3SPc_%1YZWh;f2K7)_iCql(P;E353rp?$5v4UVAFfC=KApnFPN1D9wDf_5*tnY3L^mQllfU7kOY!aj-{zmDR_+Tdyf;XS@X(mVJ;yunry{ zYjzu@pTGF=YsQzmkS!n_JyTq2=%5~kfcS{U@pQMkz(aIphpRBUeHcqYKdN9E2z_2$ zlVCPv(*cTKw-%+|XE|@&*@7|U5lx)ysdrc_%m%-6Kcy@g(HbNutE>Bq5bclm3U~|U zqJ9Paa-;&vfV+iq`An0-IkFMJk&g5ro0Ag=_} z!wl5HwYraC+TYbu#o`O~MmL&p<({-^zylyFA~&Tb2n2O01aFJvNPVQuQA_i7b}Oem zV$~uwG^fp#>+-v~N=t5cD(+|S9JAv{93@;jK?uBl>eG=d1gL$M!++Zp;ZY#&9YT7p zOK#U`L1gxE3gmq$BBN(U86ZvUQAwk^7qPeSnT{*5v}rTl0S1kdjzi_?(<+EAtw6yd z|J51H=MtVBQ1c`C3o>pZ+0#Ux1P>ET9@rnc4=MTg$~&*aG2gJQWaz)JmwaN+xufu z_om^d1Kgl~S$qkPNg@HknZwGUs@2-wPppO~oY`jguwHMbTAaL%1M1kqfSfaOLJiz# zX_^EcQ&=S{#h(U#6^B}`dDT3Rc@#EVKdFn;>-Gd(HD^AQs$RT^A%X1;z9PiihfykoUvZ%7l7rc@EQW+)WPON z(GSKQ*2@Hs$=w2qbbV#eW-JdlbUwdfXzq}`!Yusz+XrfaUBuitQrQcRx)A8m@>=W< zx1(*+>}+_&*rGZi z`mnYHx*G3+wnT$;qZ8GH%<;$BU7N20jp#5NlWts>G!I0WQW2qOmZY)HnJh1 zTvXnMdKH{L7jydVc_4x-X0H+TTb=x894G10byg)ct{W= zvgbayUf?sdr`9&0H+@)@c%ZU-RRfBk0gg~8ZN{?!8miy~&~zT{*OYLW!{RvAL9GAs zg;B;PBg+Vaq~t@41N)K9vDaOH-eu??ODOn$(y{VKS)bhMg==kzPA+KKjr7=jM%)d^ev!qkoF-vDm+JK^^_V{AN# zFNPcTaD789X0cRJsEF&~Qrq_B)0ruht6rrf(Y$myLsHgjKyEV*+2iG#OfK0wN7F zYq6+#7H5^Z)8rPxkJB$C8Ja%Qkyl9_PCSU-W3{)%Nwa!U{?gSr5Ea?wJLOcRHi;?} zUy*JS&YJi2;ltcM+yjTv@v-6~^BLh_@2i~V4z0|i8Jwl-?1X>@Cm}x;gw$XRnnb1! zLw{M=^+K65hLq$U`=+mjY0sOj4uyU>CYlVluaeahV8`K5=Yq91O_KAKg(YVOLvL+; zZ)K&bWFI1DRzGmW*nx^KL(wiNiSfvHX|Jl<)&8w-_Lkv?KJ$%_joMTg#8X(ceS$N# z;YvL4eRg^f%L6srUk>(sqs&?t%}RJB`fZZK;XnMYv6-`(DHF7hVp~AG1-MkNnf8S4 zLTO}TIec9y^??{0Y#s@g>>iLJNtud!F6^h(<^6Z9b6_gcQVS{Ggf+oA&(<@OjA!s9 zr!lbX&F+<#Q=av0-NtwG&CPBztZ^^doeV{pW(wHH4F;-Tg^QQi-c%;-r@w6{q=#re zCEZmlU^>a?V!CB=J44DzdS~t7@6hI$!h_)+VM3{b=8ns<=#%0P*n1p%z55K$5jgqy z8OiCEIuI1>u87T!9x@@W)Pj*;7NZ#c%Z1}H)mR7rXgP$UV?R*5y?@^gkN8X2%uSpA z<%7STpQd|efMrOg^Q=jeMg7m)U8RqMQb5c5_VmSpmSsb@#yIc&=~X^y!fD6yVUs)Y zLx)toCrDdWTSv0tpsT%FZ#1y^lIGzkOj+z~sW^AK$CzEYS-}-``%GKk>CY#N^}P6V z?+>1u+&!_I;`uyUj{>tp^Wh^ff`)+bgWw?{Ncmbhawrkj~o!SEXhJVAedru0?Ml#YQ%tVk2CQ zo&-%k(PH?E@e&U_&qo9PvZQz4$G451g?`7mIW|5?zyI<(RsGre0M#F7$<ihdFeEW#JqHmEr$q@aw+qx~ zYXslf6nZ~Qv24DblK3Axa$*vElJoEZDhHaEb}F)gNJ(u8_43j_pa zpv;CjpI|4gKDr@tTKTWiVQE1jDwWhn8}MH8z4RE+n`(y(2uJRZydW`&dnk1# zfG-87bQ|G)d{^2?I4FGuwVV_0?&#-SJ3pz)qV3tXes7JlCuY)s%>`id8>~coPN<2t zuWJ_mXw-&T(s`{Nj+8(%4&(H@eA>McJqFqu52g;YRR|TU|+^YMdw7Z!ra7 z9AjfAH|_98!t`bf!s$4DAjVVoy@aIO=OPco%6AgC{U8EoV-!A|W46M}to28$CGGw$ zXM;bsn)UT-)PHuK6sE+&h$fB1G{aPiLh%ukkVXC2YqY#Q+P%4u8{}A{#Irb^Vw^dX zoOyl*ppKhlyIV#nefKsp&>Mn>5KFXtDq`AxM%*cO>G19>tDlFQCt(LPoWjYyoy zYMIXS4QxbMLzGcCaVNB+uO2vP+Kbb$nRK}}@CwdN_B|1(Q5YLb#K`pkUaY(vMNJ|; z$pRN!e=;*~P@Bw>X#GMi?Y&)BvWhthx5`pgFXoQ`29l^xE+2?rT0|pW(hH!EE%uyC zxX~MN)#G70l{{7aSfQfmq&P+)l`}`$@k5KYHEaaLADk5HreklQ!S;0eE80jxNRk+a z7;Y_k)r9{x)qX^o}gM|VixtBMpS#hULlZ<`IKp=Aw!4Z??B$QQ<{gwDT{Ruvt} z7RrzIk_b*j6qPXz?Z>N4-P+InJ8;>|m-u8CQTpQ_N#6weIZE(=ERJAGFdGV6zt}fq z(ZIYP>>&*De(N>3l~|3WN%8KcCZ9G}AouF}U>Y_#&K7{M|eTBbkk?Xne}*)chHPbGCT3Va{jS+w+qgxc0f zGUCtcr2on7*~PJ#T>5V>jN{T;dO8zNZ{TYcXlA3!K9M?MjjufonGua*=4Bi8%Tz!C zA4Dj*$$BHJH+v;MG;PDd$mPwrV@s98jfv_b$?6fw#6DwfOTq#wzjKX05p;dWDa ziSklap_^?5;~XW^R5V0s@YZWy-#4IeS-vRjY=XHeWr+tYrC#wIq8KGPoVfJtgnHQa z!!5VsP!Ia&M`8CYJ7yRp7*bBBZLaisFQveBqY+uQgsb~*9RC#dmFi*l*&kmRm8Gt-WOUwUyaZYRC}CX_ z!NVZ{S#h=U7nm}&^6yN*f}@w0(S{mFYJU3Dfb$jK(d~+(RfKI#89k#-M0MN}guIP% z;{83B&S@?0E9cs&dfk@}@l@4H6(jsN?wj?h8ajow_>`eR7(w+VVG?rOtF8p5EOO&{ z+NYcwKNIXW&bLT?23{$%FtWaQA>xIzs4hiKWQ8OY`WN;=`$IZ%>HUmkPEc0QqwFPwPtereF?k{x=s(=(G?mn~kl(G!tdEdgH1 z!X7^PmLjhc$LuM+#4Xg!vl^j1MYPi(E}Mh#N7k7*=Efi^Z~{6-@LT8QD0uux>JN?( zQB$criOVO5cCZ9*G`tf>$oUyfhie6|7t}rdtIP73k3uVeyYxDol>c%#iyC`>iJ?|m zAdguJ9PR`8l#2FLJr-5In%sIPQpXcC?Yg|Z!65QiA|yV)dm{TZODq*gnA$n&`D(16Sr;nq8aRUuC=LO!a-QlC!~xN$5tj5gk~jfLO-D3kP->}86%iZv+D2Ds7Otw zV(E?ykoX``9XC$=ir1^KnhcNT&}8mL%(l>y`t$8}_1PwjpPJm*y+E-apBwG;gCt_w zRi{@=Oy74wj)}p&nD42wOb6=IB34Rw*BXISw-VO_7!KU(Pjm>=aobiEBu1yFg^uO3 znta}4urHpH77qP*H}a;@)lZvMHwg2mr~6T(zWa>{coE^pBG9J z91FW0vm$A_QhUSPA^bskDO(sXi0U3mYWXcogoD8e>^PHLxx%@#cblX4$BOCoyeyXt zMTc~>z738%^A{R1Y!KV@5^3TvFDD_8HR2UtQl@{`Trg|cu%<);8DaPgzgpzN8Pp11*xlF^=R~86Htiy@_NDQ5l z*L+DH9*;Wx3w1FRNRVFIW4~t`1sRj`pHbL}e z^#F(Kr>3vv_QnV}bcp8-+r6dtiIQSBRHj8-sO&pxOW>^JAKKkLFCmX6UOUIpEX4TF zF4I^zqeMxlF++}C-vnQ!r|r%+vK>ASy;Rje17SK5xIT#avVO2qjRmTeMo>(| zAbPVM5qXAEEc+U|UY@K3K^C;XCp^M^*iu(mxaW&b#$hCHE|R1SRKWk?nvVv{OYKI} zCeMO7V6$k1~Y^U?gpD=Qf&3PO^$iM?vITuvY*r3cusutiTN8mOE7b0^DR9+P8-bN$QOz<}bGbdL{ADgskbP3@ zdh8K{Q-|J)jJC3EE?DUu=#3XE!v(ly9g3Ok&zGaq4oXch1uFbg${}%fSa)q#nMLf5 zo%TN0uDzEYh)K`K5&#cJN!A!^L{1@=%%81zX8F>z5Bf#$KY&IOYU3mcMjYAqTQeX3 zlL?Q#IS2?aXiXkCa+yAt*gsq6$vrSWBy1+fC$z89%Xk4$vw9K673f$oIgcL${93FL z!BY46hhz#{L3T$ycVaoTPyp$*mHrVAlR{X%)dZu#0t1}YUMryQOInEYW|;>wxzIH>Y?GXzH?zanXF61)sxVLx24B%{XO z(r0Z5X0fNH3ma}}KgV>U&{%6YciV`NXMx~!1&ZSk^Lq?C{Ha~KNL^#CWk+q&jImWQ zUH6ZreXcd<-x8ZX&_&OT4vV->eAN~q^v5_vNMwx=kJ0C1YMQG=>C z_jRzIiRxUx7hf{e-5d+7*vKHcqF+B1Vxw>c05l}l#z5I5@n?#XJ}gz%i!KMIUsrc6HRN6;<_-e0t zL>d^iED>$So&0)Uu(Y-mYEaD7I|w8-R`4)WgK291_vm zi|nspu{$v|pkV$Us^;#^yIKWCH_}DGu_%?fnE92kKd5#UARzeF*bHS`4A=pbpzyI+ z#>~uYJ<-X{Xzv;Rs-5+7mw`(kK;f|;3Ya#p)#?Gmji_#$&OsKd3Gt^AJ|2Q<9-SK% zj6*&f$s?)=7fT+WvV=3Uhfqenz=^>JoO>$GhRZQcIdc1FZV9tFZ(V)53#Ujlx#M?M zB>v(Vt0bDR)q-L(9dwtpf>EUzookGY#{FB$44)hb{(8Ot3*RgCmQRcRZfG=M+4rtH z%_H$YOApxU(B~GaB2IJ$_JCkC=x(+yt>`4A7MtQaIu9;eGju)k|BjyZcSAHu#Emj| zC^Up7rV437dw%9p9+)@hkVNQkS+XLH4N8;H2 z1=j7cJUOe$BWW=vU)NmZr#>jlRz8XNpKy6bN-d;9A0exdQyGr;g!guTs-Wxql~No# z|DYLi)ZiYiunjf1;psllJqVRz=2u)me~3iiCx641UMQ$ra=yBUIX;(XBkJxf0VJVp zSq5}Lorn|;l1xMs+fH`Y1Mj#U|4w#(E^Tw>@|J06klz+qsqUi-1C84*droqGHx~7>(qYP3ph{h=$=*KlaN~zT_&>`N5k3v91s1#AcrYv>?b;MUNaN&UPgbn z*N;?w7y)pcsa067`2mqZs|j3C{5~4PtX?Y#-V>`#&fxkS*CYzq(3Jcq-^GqEpI;Yr zF_t=4W=D)bcb|U603+NpXsze_&D~(hu3beR88GAv6+wMH%WAL)y}FAo?W0J)4Pn_} zNzgVUJgZC(=@PLCV5TCr${M^9-pNnQ!lbn351ch@25ek2D^tfCJu#|VC`M3)F9xY0 z&gcJmpJxB=%fK-rXf|;&K1FwPf06w633+XTz%Y$x2uJS7jZGH{s<5Q%296qkVVFwW z>MA9wWRS7AiHDrAC%uuUiSj{M?&lianozPrv52<8%M3mLz&<_~u>$L)i+{UsmYl|G z@V6l{cWan=cr2W$x^4qziEguhzDmh+=HPO4>ju?|=xZW%@EzBSi@$F-RGq)_1=L$w za(s`<(6wEzdA7Q18G#!*W83~(a?EvLXJPYd?IYyJwYZie?d$kU1-yPlsrBkaxObjU z%$#_^usK1zMJ1=@qX<$yf>mK8?DFbza;UeMB6j}wD3UhC%WU!OU1pBXtv z`z`8HX!5_RO3pcEs={!Is}e{cFyTXqBhV8Oeuo3aKS8h0*-=K`5KK@Gy=Bl{70Fnn z%xVpK#IO$O6^4Y_Uf6u^tIXqGkzi%mVA}W3OV-L7mV^1@j*z9K(fu^Nh>%6CGSzrz z2T4J|#Gqm`dRj$WoOB&M@zgseZjK<2f3rC6+Prv}+)UqPbVk$hb2c7t)g~)CaZdus zoSsL;8ud{k_>Ga`vUCQ|hoN%mMVb-nkM#PwbhQ*o$hXpvWRp3BcJeINNsE_2y7d~! zd~kFT8gK|<=fayuqm1w=HaLQZ$1-YIoT$eUuZMD2SDB3ouLBVYgK--G!ifI*^R3PE zqLg|#tf8n`sOa3trF0M~h}+)f5!;U5<|HI58F!WKU5n`taj3g?QoKK>KGO&>RFd|y z^eY|Ta>tuk@zqcx<2hpE9T!Vw+09^p&cD+SzY2&>{od6e&LiJEEYEi#-|;3*Z(w?1 z!%W^e@YZ9UB0s$uvBmtI>Ug>L1xSfjrhFe<-G@ax0brNX0S+VFl8lrhJK;KsCh^&k zo4OM8$pM#h#VGDP`?fyTa>KrD0%?s08vTx~7zQ%Ch+xw0^bmF?6Im}T*q2Q|laeNB z{pCXyfCq900yU=ydR(^Scbc49G;74=4jTjz*_|VD_q=I$oreIs7-B=x>k+?BzCjnllsoYTl{U@?-_f#AaOxvyytGQ+P`+|WcWDlDa@+^`C0Fl! z`V)510OcT> zNwfE%-k|9NG6Bm?sz6mFK13X1^{Fk?*!zu;#%B`+1I^L ze?faGr>XbCSDP~bDbrWr!CurV0dA*DDh+;hB}WtHw3nm28~4ZAjv6e_g!CB^MOr;d zfRrFo!{YLYqU0m9(g`ToMJRn(vAM9nVOQVwd9nzU!;3q%ru1+q^A9r3C;xlJ|D2B! z%VJI%ES$;Lo2&qOw>O*^R_O9FE!#e0WL)-s5ATIlEM=xJ}d&f^RNPw1FiIck+&HKZKtQ$PLeRI4ypM3s16wP^vRJ-D z8)5KzQS1BR^?fC119%IlK0KxUY}Sn%@B#TC0D)usbFfzMaxxpGHNo9K)IX?AEFMKc z;2b~?LQ^kVWp2GMhZiR5IyNWLDvgQxgv`X0bf*i9iS$h^hBAq&ERv4dQAPDX`=pl| z$doLKdLh#nSE}u%+g$d>ZKd0_vltQkumWJyTP0n&xz{&-h$GZ~VvvY1sG^Q-)6-fC z_6|~uC!~<7)#B(!Fjz#@FT>nJCv|YGkoV88PupdW4VQ|Qn%1W6G$UiN5*eIZBMg^h z>!}mJCQ>1oVXX*LiZZF6a0^4R6iH0xV$waAXuK^XSJ&IMcsYiQL^z<4K~S%NBLn^5 z78JO<6#+yFkr784aa)R2B2o;6eKOgzz;lXD9?chTTMqV{1TOV|!^q1;&PUk*j041+ z6jFNkJ{}j&tad;1bc9dibB1{v$!rIDLb7ok-+TaFj+8oKn0_*74y&GL&XIaC`9atY z=&3%;$ar63deyt9?{-} z8o3*vg|k4H-z$KWhc4 zZ+J^*bO)orBtiTIsX7o_3X~|i+O6d4gm~Q0^GztXxM4Ck5U=Y3MR%R^m)Ra)Qw(b9 z<|qm;-8=Bdz)Tunp#D1t+{SlDn7dK5D5{_f3#~duE?52V?^U?yxjRK5qe*>O`;H1V zt0Q#1%j&A3CkqZL8Ye1cki!;)Hw^fHc{aPUs}uK7nt}j+Dt>d1aLYt^eGW}L*2nUg z-@D|S7)qIf2L+$;b?Hb1^MB~aR=&Nur+MeC~^~vHL=Y_?-53Rh+!l#a<4{> z)eY8kzdBZeqN++_1y7bE8yt0+{dUp%`9yYnwp}wEIO5hsBDp7UW!l4oIJ*OC2DM)| z=vQ*qCq5g|%wMP{A~AD(vDNkx^g7X*C>Y>1+s(8(SCe85{;KWdTG{c^xnFVNE}RRW znSaHe?!Q6b90i*nsPbb#=gOc%IXsbAZ!t(Z^x26^GJ`V_^yNGeQxPasf|Z==96l`w zn{IyERm$XsCv9&4PgUiGim11fBDdVT7X?fLSi|~GZ#wB3_$bjK-Ur0VV<5l zBiyty%13YVpFHq{z&NtocruCoulxbqZB=TwHkyK_re6j+v#;lR(9PIWL{f-?X%6st zZu+MrYr<^j+QU0a?7q25p5Jg0i+&HKW#_ZDcp9~0@ z$L(H;LsV?NOTu~z$7*vkVBeMSud$FLBZtc-p-v~364n42&|-%%=p<`0UgdM{iowP= zRjIBjC0!sJNAH;b`*jA)di(TK z8Iqv%HE{?*&@@mBRfS-BWH@cUbr3&_q2T6T%ld()c;Yzwlkl=Ha9!9>ar{th|Ucf$@<_r)bZ*MLy(EE1r(Wozx zI8^N4n#P;t|6=?$b!d{m{lI|DmY&3Ncl(j4iR2xGwMc-SvUoM%q|0h7EWEv})_kUF zsbxMr@y&jpG2DtQJC!-vbqkW?L0)9gNaUR0z?;I!oU7Ul@Nk8$C1#8A>*m(y8w*qx z>Ik%-$X)mA_KtD+)vYZS-ub$1dpHWIX*b+zVR0k3 zU~S_KdAh*0C$pT+>>1=n{&a51>cr6+(|nZN?0Hv5%EfOY;k`!b`|WC$LJ$j zx}?vYuEbMkKjbg|S?qlz_5NQLU8B@d6fN@TJh*aQ9Eh zijX7wdv}oMUvOWw!OQOjVRbzheH&WtL3@VPl16?}$WI{1xko$K21#WlKln}KQ`DR- zbZ^ql#p^%K#)cz#d+J;_`mfpd*1?bA zam~pmev~!JF7>cYF`az>#8gYgQn}T826%G-x|OoK?xa#pXg1x^Q`#rfx9x%RRkUB+ zOTym-=M?+B!0D9P%dXZrG}eKRLf`(H{CvKT^cxq!mOXQw5~a~nPM=L3iqeIf4yGd= zsr}dQ2Nu5S%}(S$BFb2Z!hZ3JrY*}Ria<0+hj98Y`gvI-lq<})FRW80S~dbV?1*`c zOn$z+a7g}z^2s0Ym?UICNr$s`5~c8H7I?qMF%({#X&wQ4q1$YE z1p;{)ff{Hu9o5CcPY6bH`}%jG$~9U!xi@w%8o6+u=E5Y_2b+9u8rOd$@yVd`ux-=3 z&i-=l;r;8EU%oemnVh^Vg&Fs)PgZvVt{T}c%ae}A{0?KbD?gha@8w3rkthZ8oca{@HT^QhdytGwXV7@m zLS(T=EyX;Kxi?S`iq-**p(}`bL|JG{Z#!_j&^T`6;w&p{X8A)rqu;7C8wmCEgYP}m zM6yaa%O$Dy72yhzPDNb;EVkHepy;Lec45^DCugvzF;%p(|1_EE<4>s1=I+bny7{=%t!pOao#O)|{ z9v^|rKFscu8usq{{}JI$Y&`fmAQpN-6qEbSio2i%!vtf(fm1^xrBsE{CQE344JDyT z61ru2v)jo&?&Kc|j&8oEDily$x}Q9ysJ&`}ins41iuue2NXT9WJvF+&%Y$CO?};-` z%7mjo+A_B8?8Uc$JHA<*#jIs}X)fk)D+@VX1WCLv?g#l=%&O&@Uk#4kYV>U3aWcd1 zEt{I-Oze1?EP5TYEs9?xDfs>*_Sbv<@B;QGV!_yp)S#y}dS;eLju|Y80c5AImZS(< z&j-;z0{QI?POlge6^)&u)m#-~aHdfT7ywfB&4Cw3cS~+yPwkCQIaf_7U;?sxK?x*t#@I-swAEoVT8g+O0jS6M*AjJV zjbJ~IlKET#&SFJ@Tr7;GoMHd&>U0>=D_pdY`M4lrQsT z&dfF8PI;n6FM-Gh-kU>EANc*?7xn1=QWs1e{T4Iy9W!o(seDCAnW_lwPg#n1?*mzA z?*={w;11XwJ3}VCAEXD_5^DSJo*fONN6$`CW(K_kec*uLE*uel4&S@Co1mARGPwlpjp6 zv_Cd1u~8a9MHoz7H@c=-O#YJ5JMX<}UV;uiVBzltYznLfqqX8D>ND7F|BuWTj7J%7gF+ z7*j_@BQVbk09npi=7}YNErFi^_W)&U##3D$FwI*vFne~x%krcesmnqqpJE<=SX-orkh93Dx{2mKAeyud_I3IXnUb)=$Z*Yu~t7AwDJ zyS*0e`PgS%ov|}=VVQFNbF#O>#yFMUm3w|2vH1E+VZ?Hm%7!`IO!}KUYhC1sBaZZC z8wz^%rV~L;1hCY$;LBP;7ccQ-H65Nki1hEvE)bm3xJh?Re>yr z{DznZ_-_N2?J!J(hdjSOV$uBGj}c2a9d-gGoqO6p5-qQGWXN}nY1XfMt)Gvye*{ca zfpKb+9ZQLmJNKaxPJP9^ui&|E<(>%kzWIDvu_lB25h(PfN?jDo4`qUKKGLC^&u?Nf zW?mQ@M~N42I{cpYkNP~>`AYeb{_sQ2#;7ONN=EKo@{EW+u$pO%jDm)MCw|Fj-&?Kjs!GLcIfW0j=uadZ(xG7ysaRk&9se z7`Vgw#WUPPNg!Ry(^}(2O5k@M{Lf+-M+Drf;&@rU13vC!X8q_oqwMij2fhM~9XY`x z4n$?OHeY{n=)+#;s7DFzK_ck0g5Qu&`y1|Pw=fGP^OrrVL@){gZ8UK3kPm{qP@V|j z-Wv~&_w4Cem8Y7SW3yqVynTTyfWHH016jF@1+ttj0PdhfmtA@A(qy?9_7(e(4)6jS4n-+z zJm7P*1AfauZtQ#G?H6ek{yGxKjYTM>u^`2R%RGBLYae(r|75YxjG0rS^1_cI-+1G# zvZ#kN0Myg)y+O z!XB$0DVVH4$&)>9*)jan{5eiJTF~&_gux0$)nZLoDV+*5qX2*wB-}o7cpr_l?~$tA$p?$-FNL@T zm8Q^%r-=T2{mo~dM1eg{DFacjxVFLYW&WC#t1@KO9qqn+bniC^!+?w99c6kFtZRTn zfHwnA2POjM1`8U?BYWNJfLxSO2zW4nl@@jM3-C+eV?b6IC4k2O4+AQ2Is}E=lm#BG zo;2Mv!;(gR`z#XKw`ss%+wppa^vosC-FtLa5}L09d-xtn>`!Re@UK3_v<`|B_)Fu+ zT!6h)sSA~aCUuew*bslH1l*7-@>*W3Y`G!3Ufo7YLbI*!h-0q?za!~?R`K&p5v;x> zXal|+r*U|jI@zd=6oOQKs7uJ?zhkLH3(-6Uw{4ZN=?Bw_fBq%aXpmLlPfP9E4YAq# zD2;j|ES1&qcbkbC7RtdFt{xCwm>6I$uQqT?jBjd=^&tC9NvBL5A6TIn>V`kuq3=Ps zCz(gX+&&N%QuTzHhs&Cy5NJQ@PR&M!A-<_a6e`#K;;!Q`pPz6H3zw8y*b4Ivb);*$ z=Y~b>&Lb(O+!}f~j*AJ)Cw@v0tJ zJ@B6yI!G<6Q%=g}9q0354e6QN2)HrP0vpGU>PW%l^RFP?uQ)$!{=%4!i$pI~qKugK z=Pcim!2Y`We>r@J+4RdsDHG}kRhe5_-l^I%0Ruo|N%jiV+D1UKi|GlNLi8rX@J zEWo{3>+yl^p^kS7ON|ri#XDLJ51A#^UB0~SFxY3KeBXbMp?ehAd(B?sM;?~1u=DNW zk?_YUn1=-VaVg)K#m@F4HihF|-y?yYm4S4XaPC=dZm1QoGVyFP57v72^sEq&GLmh~ zvwK{4G!MQ7pvQWRDR)Ul!>JZV(s(p?;S8(k-%mCZCVXp#fBl(RvUH(x;0S>YeFY%P z&K_WPfDOp=z;-|pSD6$!{R|v3SxwGhEVX(WoQqMn`m4&_t3Fgh4V@ji;cWHn> zHzRtG%Bb;2&`$J3vdPA!S3s2MH`=iH`&Yn- zUzEQd`Gp@L#^DEq?T8vJrxXev;uj`N&CPnJ6L1j8xnJjw+wL>DuqVhdg|$(`re^Rb zACQDlRet}0pR5`dinJQ|*a4Ky6&yLs%PL&?Z``zAtu%l09k6dwHxISkj#Vo7SRE`U z03Q~D`t`1rv%M_c6EImhbOR>KQ`UT}Wsm1-lfF3XDhW(a62_p@G@PfKGErIXVCDO9 z_6!ZC8RPH+QnCwkP$qk_%#2p3*Ag7s7nbkZM$OFA&poPVeQ^qhJ*DR~P6Cs?eE~M? zI)xB0H)b);IPzeoXHU;c9cm1HcI)ODRuA0wgt;9%x@99D2xa=g(z!eUeIA@)Rk`97 z*!Xvac?72*eDe86=J^*o`6tQV3^FzjHvsnm(*aIFu)|PJBXNXuO~V_^-R(M>^Uf<7 z9J@s^R$;IVOi{`gWn4CNiqL+Y!@e|VXp6J1cOf5Wvk%|Pa z0C*!GmzQi*J%|}~dj4T6M=cfU*%!U{yYK3VPQ;-BPpeye=r$c6Yp3zpIgZz`u;W~m zMEq`hX}L<##sGdiad^gz?-)#ASzyDO5>O0+WSh-9^$SAM{^e{BE676Y)~z-Rapu~2 zJle%RFS+sHSPx3Uo)4J)&a1~P9c!|wuypvOO3Q|d}F%8s@GRo(?S3V5dY#Q$M$;8x&{_`%M1AZ(vFS7r+&b*3P)eHD1D~QL4Pf3+1iD7$ifVPt)JcoY8?W}4MkP~z zK^BT5kVNJ~aK@aht0}j8)qcIo9qQ($*;#71wKdGkgSX$Adp@t zD_M>z{O>l@Rb!mK?0s`U4J?<|h56P~51!I4XP{9y``jbH9fnge_9_Wmm`(qWz3+hE zv3lb^QbsmKQkg|1DKwNF*@O@ZNtr35Es|vQugqkmGAfl4Q9{TFm9ojorm~_a{oe2Q zy3e_v^W48@+|T&Y`@XK{b3Ny}&$!NY_CCja_)@_uRX+6PFr+1RlG$ky_y#utc=JTA z+_~)$V0u_ArLCV;GGvUZj{WQwR0GXQd>Bytx6BO5A#O2X8(=37cEEQ9V6+}=X4sJ|$zE!BInyvAYB3p0;harwT0LUeQ+*B?)CIH+J#)LI1)jV#`zD!={T;DA=qK&Xww45qaR>raICR7f%k_oopo9> zZn+N2tNkrtx%PtFu<$-K+dVDLo*k53gFd{BLVhD2O*$LiA?^9s8^OWZT zSjmrK@htwG&4#4`!qwY^t>Ys-oXad3D>_5$-m_D!3|@oy!q~Ue$%dXZWt`kiW(um| z!#7vnoj3#6Yxk9@1#LeA)ULp-z;VFhKrifp#@oQr9vp-3Z-CJtld+Hu!+YM4Y$rP9 z8ds?ojG)ctMh;}CHNIi$+< z2nnpmeLzoQ!k2KqEs>>0;hr2XSoQ??zL0?73-uJ<8?xXZi;hOJT#EfAc=Kh`mcRr6 z6OM7+rnMPN3o8yu^9kkr<%DvFL#9*Js&VjbzOX`%yZRO`o@=zI`d(jg9U**179mWy zT?;W28;px>+)zP&^nfb;0$mb!30iQqMgKoX-h&V^_ek*ZD41OFU>_VJ-K0?~9X(=i zUYJ;5Cf#j#wQA8`4h)$?W5Sb%==4Fl#S7MjyVHpCrJn=u21?pPO%!r~frJ4)U{?mp zWaRT4jJzcd583+@KelfPTqp0 zdlC;wwls1yZqzbx08huqOD_(y<>jb9R_F-_!lO&4CsKuF(fqYGf0pf7fFovc&%=Wf z?^YZ!p0I9W^MB4_-qg5dxujj&{W}vrwcV|=+(jbW8lLW5VU$Pnj`4tGD1X>6id?)i zkbDJAnSeTY;AmU!@u8TcwcgnnvGhV9I3Frq6~2}@cFg-9Fk}(}H@LBcx@Rx(#>-giM zGfvLSmE<9|>EgEKatgO7;6~Q`LGIVAS&iLwLA}MX@GsD%G@i$!YT4-2g#FmjqpD`z z+nn2aeemSYnK}*bzz!@7piJCpzQu|aR}YwLcpP4xqp%zbb4iUVmG4$h_3G!Qw{ds) z_up017I({4LlK^vHP&5~yPDdyZ-SQ?S85*uVRkJgld$uU70(HJahY*1Z>D(oa{H_W zu}%+TnC!p@c$81paQJEY!9{!v9tNFWf7dbkyv>*?Xpem3-3?}Vx~k+1&D)M&*FsFh z0oaxy9$&aU!E;9dQw|vJY{65DdBwt6{!7b-g%hVA0|x`eA09sX=>4zMr8rCA0wSGP zNI%l?K35CG6yVpkhKGJ1-)yV|Ucik2Q{S8Dd@vF1#A9ZGR^>|772iUc|K)0hk&!(` zMt3EF?*cKlltuh_i4GNSEnwP9XK+b)=;h7pmN8l>$iIX@hc6Bu{o!Vj<1R%F zz)rBod$w1y1IQD9dGI9h>#t5w%NB3KO#%;L*A)ki*pJ(`tGv5no&pd}$g^qFdesb- zs9VUD+5$7TGa&Zj`C~$QWD_k!ZkKMY?QQ1d&OA~Jh!#(FcwGvWqto|*0-G^)@?iVM z=F?%V`C}yP>Vu%WOKc5`=4hpg^PLWNHVu?5peDVU`TqFh4^_9}ow#;AXb^q~ZrIqi z0h0gizzV>6z|O$QKsPVRHehH-stDg_?jk_HG1x1aO;l7=gx)&;VRGk*xUk9tuqxZy6mFYzj?1+lNM zz_G}ndAfPRVj3s;yK#3M&w+UJglEl)(|uS$}EnC-B);41nI6sw88`%2+2uM-gy0=x&^zJ631e?D%F-w-bQH>h$u3EKh z8!o-Pm5L z{?i#BkaT*h%$I;`OI)wY+fo}sT*K*)Dz?r~Nz*fLDKnHYrvD3pCrG;w8bAtRc!+lx9gKzjq+~{~F{T2l#3)B#*Xi@sP1XwG*%$kevfk<|RZFqem{pO$ zKK!#jiy7>EVAC-(3U+YPe4adcGF2Ur9h-(M$YjxHjZBM%r4poH2E4|Eg8TR1#S4$z zCB?*(2!^`l=Z&g1rZ3jxAee?zP+1AFGKdDOsA>S+!Z&WhFsEYVgJC+8giK7Bv6s!q zhE^=!svdgqQDnZ1wtqL_V=-_XFsp6ggLZpdd>G3#pdt@)x@X5m6(9U;D|g`IB5H6- zk+0^344>^HGJOQb)q!6aYpZbgQguAe_0%(6aD(jOko*f^M;}Lk0xZ3V&(o()tNt%P zt?p}88zZ%&hTU-xwSnu5MnWq5F?ol4NdIx-5B2KnFWGFn+}cEeH=ae**rmK`^47?4CumVPZgTWh|VJ-K$kC9b{b z1bd;JKA3B)e)s)ybyv+Ys`Z2SC|;jp64Tq$lW)kudxc)YyY@V5&;l1mTA7b5DGyqy zkUPj|9tt)Y&9&_L!w)-0@;Onf5i0|`#f*I)Y8zvxY9&;9Cc{GYhR@jZp|WxL%C^US z`|Pp(ybVF2@FDn{_%q@AcEva9z4s^Dd;ZDtLSP9JNdps^I_%SNb-MMcAA6M}efl*J z_So>r>1_KDrwQAQH!yizU}wV%?1^7WO%~>IWo}QE-eboPv)#OfkDyk@HjGLqC%vP3 zBNps<_U9s$txV8-${2XIa!a25{kPwoU3!is`udHrAA|Y_>`pZH$GeOORx_60pzRm^y&B5m>;PiL(yLY*byVCP~o*!3=c;PRYMEbevkUaJ_e%?bWck4Cu~_&}jrfYvRD#bs#l= z(LwmLX3eUqR;g*MP<_$YfC97e{4S7EU%8-|Dv(KKfOx=EKMJK6sM&d20 z&-d-29_#)f)7cJ*WDGDGb{{qNd7Z_=c|XbHOX+c@!|){k1$ft-XDy!V z^SC;I>vRNYU=Xr!so`>A z!B}9SvFy1IPQrB=F0iytZZmJ^H1@T6qxt6JP;OjMPRO@@;~M)3f(_8!Z0yIXf?ZI0 zNZQ28#E*S?O!d%C*q)(VQ}-XuO@nL(dD=TqD7IrunbYs5s8p+O2G0>#83l;tc& z^WrQZ!Jl3TZxEjQ7CD+b>yWI5h4a-{QF=TFtfox*Too;fB^DEjP>&utqFS`7gUi$Y zX9w~}d~iB}m3A^<9hhK_NN#0b6JVI4cnfOn`nSuL)ajqRFPYkwFDUVmIBi;YkR4BW zgvhYT4uUx@ztISzGE94E#(T%udol?wejqMx!WLcZakrhb(wz-t1A93z6Oe_oH1J8_ zPr#BuY3yF^KRmz_dTwus7W_jGSbfA;=QTJVy+2P~d1XN-mon`T4|}jGj06Q>ghn|gsgrA###Za zH8RLl82Fm$1d}(iWzS)(P`%9l0FB6U;Hs+%2jzFh#ZN!61Mb2~mx_llVTao|)7zh~ zklW3#mYx4vpk2 zd*@gI@EU9L3qg~^M@FCT*o5MbLrl1VwUV($m9owNaw_0YAV+dP00#o4LgO_dqlUdJ zXLFz@^|;BfZiPsL=uie$SOEw$X?(wWW7K44hnE%pPq15x&rr`_z&0-cf8j(j8<^Y5 zU#+-?aOTXvPI}XdcAp2g_I`+ls^;Ad0uG(sPK9lam}pBjAx)aa#3abFbO5NsP5@<> z0!qI00BUwzOlUz?izdm6RUmh+Jgys)-iLzkh1+iI#;dwv1`%U=$L6JY;uhaH~4w)0G)CZ`OW!@N=;0!U#}D+^_hEnQ*p~ zPPwCNhD@_*MhF7^Z_)fgxxPp1s_Iqih-{`D9XPlTH%hNC#{YnrWj^9kB?5KWgQ77m zZgj*t=t2@ax**S7kgpZLp6%NQX!mSGG8&d=A+$spFY)7+OB=X{|Gt*ByxT1wgPk@& zR-kDKY{_Z>Zvegl`~xV!i|hIicuJMKy{H<8H{Llc7hp(qLQ%O1jm!9PAEI!%QH7i+ z+jPZxn7`4`XO>c5&Yh{2FJBa}ruk>YF0}V2&rzLlaiYaLV9!JGYVm0}=-Hq_(;)f8 z8hDbe^XGAx`ZGPW-UL#`R6s@b`YYoDm4}v(jqbx8o7-nm(0VA;5P@x%JU8&{^W9Wk z95mdxX&u=)GLQ#Ce=&Bgy)kl%T=ybo&Qxh1O~-QQ@~It%tJVk3uk=1MKYypQr)Y7{jY_T$#a}XGA)5ZlU(>Wm_b`UiHhGPDJ69ILo;Jw;tP#8QVu* z()eQESJB{g#f`{MtD?m)vqC`p66So#zMcM1Y9T%nZR~^{qcllS*zmdP%0hvB01w0u z{PBF21=}t9tdVYQ8K;kV;f@upz%x(1KKJ}%>Zdi|87oZq=D^pD##vH1 z<pPM`pLs?YX*R8_gFwAzgA&&*S9W@Jj?yISR%s(!tDwF^~9^!`%AIe04Oc%qC*Z;@%$c0v*inw2~5LVntDKh@V z!Xwx&8%qIRxo&uxyi0>KXP9MO@cQUBG&!=Plg>0C=(IR~!fm&xdzya1!P_-%Uh;-Xm;wP*$UURs9GGY zdSwQ09%$yx+7_^ECSHL%497vi92mB9Vs_$3JW}SSi(?M?JD|ZEhQq7_vXJ2J0+Qgd3s?)uqlNAw#MJ{JRToCF*Xt z;buJR8R*eab0Homn)2RwoBhN1m}YClL05;H{=ln&-iDDS`6J-dz)+*1W6)=#HWJtj z$kEodK-qG7ckNr$=n<1JeN&%WPQ9u#1mF5_4$?{1s0dS5j@xK04D^D2Eno)T?)xYX zaB`ZEmAFJ09g!72c<}JCZqKO49(^W|QD_b`R&rvWf7<@3zy4CqTGmwWp#W#mi+8k6 z@Jw4cn!*2F%qMqn6)cEgXuf>2WW%PlIK$G}SfTnAunF)eKQzpOIvdD_W+*T_H)C*w zlQHA;z^GO8ErUaGJQKp3jsfX`ErBocBPKu`NLzR%V%KR7d?PJ~BsgLpgjRm7Ye`tLtO8yE4?*ktoqX`p7O6N&34rCB=a|Ixf4gy2u3UM|Tzf(ViLoX4{i8L;{@GN$6?3e9-)J0E z!@Co9;!&TkoLRu!G{O3ghb#?8tkl?R&IRNIxQ$ofyBp9Q4ucK_tPmyxIYrh5C{tuS z5Ao0=P1VMY>)ZsB-YYC{LE1eOh;KjzM+y7C1tx4<1U~unJ=LmpJ)F5X;qaE+#*CmX z=x^piqeUWkdK-lkBcBePTBvV%Wj1nYD)*XQ809kPSEAX4xWV{A+@a*<|K!u1F)jGF zalQ&f1EAfg7_)ytj0G}H5Mi9+IHS5g)m3jc-X*$=jgUPke`p zry$>rTdLaqCL9*#tqz_>WhQKN4RV{DkCBGWbdZx;irelc@AbmP7Prm41ywKb?Vwm zT7G_;Oh=+b@siXsP{t4u)L}4VdV+u@J1nlvCBa zZwfja5z4*sFNEqghPRZvL*>K8kv9L8*!8vi+eOA1)2t=%q|peYZijv)AXVw%kDEAx zq=1pHBB${JaASasfg&?u=(w@S7?=cEz21Bk(%Yk@643tqgL5cHj~+2rkOFe6w)v)d z*nG$#O}Mk;^HOul+_B`A72_rzRl=<0i^qLbH-@)(IB_{-fh z-2V6()-QOLBqfCd1qafnOYh_=EguU@lr{8y1};7)D@fMSwa8SsEPB$G6Of6juyRkJa6a;A@nT~vk@k2H^)r)D| z9fyWir?c<{y>!{vHuvxC4^97K^f=WcYjavID%X}MX^g3s12W9PH5^SsLw0D(h>G!8 z6wi1Ikg=9CN?JSiWBn&@0#qS&9IsvbgCaVR4$mZ9t}eMGuWZg>USzs5&+?6UyYr(R z808xfU4g5OMjEOd5wY>g#~q+U|M!CH70;&i>fT2O5ZVYM?=7S~4IHM*h{tHetuhiB zhd?S$q>_jk+QY?dbj4c?+CTJYs*dO{zwGdi3R$0>6G*gS*>9xo^>jy-eL$eD^~_DP zN1HaF6E3kf#TCu%k@5mYQ-C>?CI1uHI&Hz<7VU?87nWuNdjdI%aU+Wbkp+{u4F-Nd zw!!MK8~J#J$SF=+1i&jJ*QEsHT?|rI{CRdj{pHy7{qGK?xSdo=(FJhJ0;S{6^Ll2G zpuT;fMV3&?oftd`=NvW34kxamxqQhVz?%~+SZ2|N+++y3zK0)HeCErWUzNPRwDjO% zf-b%^Wbe_M4`>cMQa(%HSXSl4EJ)WEcJ-n`y<0cR3v}NG3r!F9X;Nd9?ez$19BrCG1z$<}`ffIlmfT)SX0;kb9+Ib1s&DgpI zZ`%l1@*TugD^_puPniE>>}!?01b9!IH~ucilLi*J(`J@lB=QCrN`A_hFMr_DQ7s=E zYU>&wHh9M)F$-zNgkYK*FbQM6{i`gfPZ{ehs03lH`5!xW3_FAt7%NmmPE8TP}6MXvm2}(SctUXXN!(TvTHdVxE;vKhFV3~@yYZ#qi;p`4%Bf&ze_^N2b z2B>HNl80ES0w&;wTt_3U5;tyn5YHVQI$PV{h8w9Qf?2s= z7lE1xEKHr;xi7&*u4q^&mldBh^K1^djC#oeJDxo}$K#uM(&X1FpsN9yH?Ie>^Hc!H zj?*yU9$;Dm>z~6wcJx*OD*|m`Ii42ehD9SC|7Z~;&Xzh!2VSKxz{Vke{dK&yvUmdsh? zQ!;~;GF)iJd%ps(GC)S9UWAQ?mMs>_g+MZV12`YJT_coKa4~eA1U5G&&6~Cn(w1-O zGO~1mnbHgEjD}l~toXYd=XWlM_)Xt~@?{C@ODY(!y z@_jWgs1q1V+y%TuIv9S`6gps92qY_(<-iTVgTNC&R&;rRw*qTu8Vc@X!J$4LK9#i! zoyIJ&eD3v)vFs1IFv_KZiIezbq@!X@QG6OVs5gnY<@uQB@N7h{Cs_;xn1-c+Lx78b z>W9A8da@FkyMx zt}%r1S<`9(pZZ(Al>yE4*aDmjTmxhW?LnXb&!c6~2ZE`=a5CMjkv`MpSFxO|KOLvS zj&uN6e|`e|8^|)wQCCqQ^J@^WF?T2fS|FBZ+-m?=L0)OFuv8JOb1!19!vBc4k?pcs~eT}RP zmI5g!j$^tfTej>b zi0a~tFIN3ucumgo=*X=Mx0``ufwO@dfk%K@fL8;n0v`ev0t)a!C3%;GUzU8Hi~YWG zY{&7>^dK1C&X>_)#X^h4PQ)CtBcgvtsW4U1Dj z^?0l|WJ?#wP|$DP>JdDfyxG2hm1#PjZX&_Mn4)Xmw6&Yh-7rH~rgs56^tu1t>HZB&ieNMT4001&)2A&+!F@rlIqaVG%!|qQ_wKiY4KgQN?Y!vgK1YtT~j@q*1FB6a<@} zZ@O}&8Yw%so=ow|H~X{YHV^iIE)NsA?8S-QKD~zo#h(dpzrO#AOTPN`nx^d8c{)}6 z;m#;qHa4O;!pP>;raf_+En5y(RulGpyZ%WTH)dK29#2cbflu3yu=EuL3Z@Ktd34I| z?Wf$dHQ}a;JF&cO*>FYzHu!98#odrWZ=~jnd`g*zy*e?4;V^c?skmwtKa3h2exiV(V zl(Klix)j`895#My)ohrun!GajO*?G6!SkX71J~Bbg&WM>xHR?1=5@c@ z{)MEOM_5NpetV`{o{W1puOd&Z`C(s5;lfwjJdVTfq6x~M6z7Rl^sMCXrxb_;c}HH7 znHuDZ;PP-(PbQeHCN}=UEgbpd*}hL3SiMoX4{Em!4Or?0<&*R_DO771R0p^OgrP}-8O*Q@-O z7jW#02Ozb|=OegKJZtvH>X%=(i;TPgH5YoO*Is*rs(`n4c+I>_d5{C#9mWhm^_peX z+B-!EN35G^rw+r5sIJvup(VQ~iBTl?xN_ot3M=1DO7BK_btIm%@dMD&7%g zy`pyu>?P8$xZVh1BHyUg1kINZ%a*xK9-ZP@5T5vDCOe9qNqoa29}eqXjpf z<$xzE3|X)6{rC~8L^McQY4VwkIA3kcZ-LOdBiz>ZsfuZ%tY#aYa=uD79I+&D)9U2ptnQ?IQ z&O58fK~4#Z35zYbPEp=lW;H6iU}dyzEh)6|U#skR6)958mDkN(G$-izkCZ1q#&g`f z-1pbtxQysR4^aP!Muie3(y-(cfG7&zPwU#>HM9X0j8( zBp~%Pki7KLysA1Xb#2u#36+Q;+;7|dvufPzE_=S6De1SjRs?qI(nHSwasgMsBOl|6 z=N;@&R<)K9Me93?(F`RYdtrPn)U&t#S-4~Y_6vU-i@cg+ z(V}^BQvvlPN_3i;=%J>a_ZVlAFGHlQaldWr7S;E~Ubrqjs7&sM7d3!fU-1LSVW~B6 z4)6l@mh0V9L47dg3+cQV2F6dyDKrg0gp+yC?p>;V$7a&|rq!KjTueTQ?D!-XbV5bT zhko(|N1{)pmiu1_%IgE%qKwz`vu0+`ab~Nl)j`=sGH=CM=L?4eL8r(ycHD z417l2UFTLcW5zV~H>QGIU?rj}5-I{9gmyKI0aPS>kTySne1WbSrk4%`w(y>U$vwbB zKtE8xSmLRAPJ0Mw{z3jikJ`b4IM##g89T7NVZ&P0=-#T{M&)Bz8KhlCQf9)?9r926 z@Ez5#ab+3Ri3}9Rj+Yqa`iOzJ6cE9P zAwJJwYV4zrr>H75O1q5;nc8`XNfa)>&?q4wbD}MCLJX7c_&UR}c=79HDv7ch5K_x8 zogNx6EYLfJeDrX~`_#L*rpAKTK+mwglS_KzF;x6QkJ_QqboJ_0s(a7&szT-Ky^SI3 zqI$spRHMRRBr;;*bdc=4;C8)oWl|Kg^TD$` zn{+`+_x zaUYP@`~auJu(+by(DJt{zEPF$x=}sy&|~UBtmWk4!&OEmS}?R$L&Zu5KEwP;RT^Q)XMkEvtU{*Yu2oC6Ex?t4fy4vMpNyJUfa!S%mFElI9Q&Fal;nwTuJh!|l{-~@ zp8or9wF@JXX&+5elctPA!?`b&|6ijl4IbJzmAJh*-;r@ThWH8|c2cu|H7j+~}k!Q;PitN5XV2h@&Vw#qKTZ*jI}$EfHX4 z*a!F!Fq4->~BR`(u<-8XQ(X0@E z#A9iE&tz-xK|``U1LQm#<0RI&Wo*0vd=5xjfDeGxtJ6d_HSp5G0yys>rn-=tri%}a zZQQh8UdUttn2pOat<&{}9V=NjVw5vpU`JvAuo*Cs&QLi2*7yIPwAA^sx;i(45wxJ3rGqO<<4tRL(KoQ1T{{ zE^wr@Y4bYs&5>>|^Kp(;&a|*%t!w*_-CJ7)G}ZwmEJAbVZ$z@Kn56F3U^H85Ggcx(fF49JmX zyzm_y4g*dGGVRj}SmCmul>wFj76r10&OFIV{URX!XMC|D*$vzV`~kRJV_M1wF9aB` z9KqBFvJoo@q->$!S7?3<MQ)H_wWZ3z0>DtQ0Q>+CbS@7&Zfc1bzc#Mq}lXmT(K0 zHw0D$-URf@1uYj?88YK91afMWars{W=IxaKf*>9lm`5)Mn)Ife?93bh?gO4nxCEY; z0eZ{JztGzVWW)Sl2F5GPK08L20y)LSih2idC6IaZzfwW7gTO|d0Lnl$za0Ffoc{u_KxYJUG(#DQ z=Ng!@>a6Sgk$H4g*I3EM&W8i!YoR5L?F>pQx&d0#{ z7&spT=VRb}44jXF^D%Hf2F}O8`4~7K1OLCpKr+`@&UV}thlj<0-Y{^%mOCmo0TTr- zuyKK%J2||-H3sf3I_)+1|KOWzKxW~Q>n&*+2lS^fun;i6MlQ_SyKJ~F#kC)^=*-Ox zM6RFh)VK!fY9QrJ1eo8-0=e##*1*MF?qcJ@emp=Kx%q-|lWgF+gT;+yFF%c|Yi60cDy1Y#oK+M3}b& z#=9_oE!=(%ECdV(J77>7$gm~~rNH10U}@krKyEn53(O2;{Bj|m8xDw!;~hY5kYFRa z9>{IJ)K4a`QZEm@6Lnf@EKpWoz4jJ(bYiaZzAKAdE7?kJLY%RCw~C<0h!l{>wwH_=NecCveS7z@Jb+e z)KPBk@M7oXFmN|;BXBv8yC>5EE(Oz;z{)_@%`A)b^Aq4);C}{KarXeSr^JHD5kR8I z2Br^?36LnX1p~kGv`)Y?W(Gh0EK9(Tl5qPPaIa6lBFV!H{XK9nFp-Ln>E8f24R{h5 z$0^^RB?C7BwHnJx5-YN8a)giwa71w*@Uujiz%3i8mwoW~4R$I3-Nf?YCSfbyh9x~X zvI59tIA4l~XZR)v-`D2*B`nxE@OTd2@@ApVm;v|Q;0fyPgNZ{w{Y~7nhL`GFq%Hp z9I$hQ_V^gq)=ePUCm_%t&_zq+v@crB30?Laq5&(*=YY=wNxMLQoOfhyS2vfrRprf- zPvyX^$h;Xj8!oQ<8N%^6cEXO)XjWwOX|JE4BEW`7kjN zCLGt{pS{by@)h|nzp;1eCHd5k-|d!0!=$gxmOeogIz5okUKNS z4ck1>Q4M}sNU@s?xfsPGMh{W_`adB&@yCkY{V*IG;FD^2etvO1SS($ z7fc4$v6=F|KVE)X8gCL6D_UIYiJYht`QFnJTt3QoUVcXhXU&=))N0(9XgwZBHq3mS zwqi#+9;gUM3xFIADqK&cIy}-{@y@|t@&44}Z|30>)4aBv;7qp&VB~W}#DWM7s82Dx7 z)1K`Qov>uZ4%y*k8juyN3wM;SqB^vHTvflTj=CT{@`>?_HcWuvUk2QUnju4OG&H&K z*7=pHo@$Qh79d%Kk#-v__MX)6y0HdUWYN+;pOiQ_aSTnAhV>#Y^k)OThDy*gRH zZWGn`o)+rf`)Vk@V+6Pw$c}un;)OgTf(RGN#s%rqt8CdBuK>i3`&&Y9B`v`T$utUNu%8GGrYvuAPcOs z;&L068`1lp_vH_2`n37#?z`*BEw`!sutREx(e_`*KVK%SQN5lTIs6^frZqdPF64Hp z)I>LE5rsQ%TkX}OuUhlNUNvaI$Uvi_{q`&0_2@ZG9RIPxTj>ZF2f+dy4NcN?B*hN3 zV=qeBY00l_OuNkJ8TaWuSiLuSw#ssGRwD}=m#IKkU}F$bO|opRUv?V1nz0iip3O_= z7jlXv&Rm}@_pY7~g7r!E9621D;NkjB9SG@`T`zwfzowqam@%WOT(P=(so(4B`xQIX zCY4HGV2lh4Nnk00j@ zufV_f_t$~Z4lITF^iF>BS@qXnnV_;}bHlGoGIkZ9!FlS5plE1m@kn#h+pw5q40x<{ z+@7K_u_DyXB-FF?#j54LZmmXYJ}T34Wy>2bR0jav3fDFWL(>Nr#Bc4V(5^`m353Cp zm>>b7dqbz3^1H=YeW-0$HEYHabpzgKaUql++M|$RBv)Gyk9(JIWTJ&J=F`dFEL^X8 zcJHJ3QtQY#W~*MTQp{KT7) z-Q|%0;YKFp2;!TlT;vxWQrprx$*50qVf6kqD$lRxtWsAO;{d>g=RmQCo(MF9>1a?9S9g}N+mW}Mjc8vaXhdWlN z0x$M`RXu`7i5P0(%g`g98Sy0fSk{sy3)By*SIQjiVa(O?%?>V<^Rb}(cxQrh)Lio@ zcvTU1YRI@3PyGMMIGNTt$|!hMVaFwz0fZ-n;v-2vVMD|QteJ8C_&BCFPyTrV(;7MD ztros5!+B2{1CY5aDSF=Wa^gy3huMOkug240me+$T7r5D^e>K;!#oRr0TzQHqe$QX>A zbcF>U8E<@>W8L~6ZU18~8+6P(Wx%B8xCtZF!bKcF#}C`_Y_|n&yjXf9>7@&9If76& zed5Fk$?Jdp^`|^`^$*q)xxRQ=-plbmQAX#nE^x8k*fh(-oSDm2`wq?Q7Z!)X$#URo zR{;M6dm3(c|Nd4FV-4f+pwLKM>d^hNYp2?bHO|9$RE{y8C-)`l5NKT z1ebYTpRjB)pJ79Q&F=@u=l6*8g-+>MWBsMjbi)U9W$(-zlsM znOD)7Oet{rRkoQ-WrgzChu&RAwrj4wE~H$hp2C`z?dM4!ypv`ndZe?S`2TJX$EAj zds#91(HHhHuY{FFj0gt3%zDWJ@J&G=1`X|_YSy_8z3`cqVRVv<!7lgjFoPu~w%)rrDqg1O*n zfjb3f=@}BCuz)-mPnMR4+=K6RK=w?(*YtjA&hA$Xp6tnEo3d~CBd;-alE$K^h?BXS%BoR``t zj1E(mu85$yb1DL)`}Mbja(v*ew@0a_Sd8ZL*>mU4a@~`U8Od@jW89bz#!W&m+Jy!1O@&+%Z0L zw$gIP2DknmIdWJ%*v6_@G~Z@;qrTruPnw+)`QVN{pV>fPAT^NuId!WD>dR$}mULlo z{nPSC;liCCt&E+XJ^El9WyYXFMYHZbAI6TkamE@|#^rqALf{S{$_UtbD7Q4!-)hr_&1CK+>#7diUGrNIDf&T!R-Zuj40WM-Mo^E0~Gw+dy7bsHzbbv&mNw6vHvEpE1^8$zc6@XoU zb!f;!$Z4SV?Yi>Qm5q^B{Mf<0o=m!HBX}%;&V%-6wQ#E?bD{v;z1OFdt z+ONWVBOqtk=(`r0`FY*CACZ>_Xd9v&#y|7m0U+ZgH?S~}g@E;<4RjbP-`jQ~(Z^u; zKCl%nb?w$hz5eP1>?*D6MiMs(^dI<)`tajPv|_;1t2NqbqegC67@+`B7_lY+MOXef zrQt2q7ekK)nayPhpn9hFqpA$n1a2%<#?2y3pbXg6P`6HFHF?T7S|hNh=(}MN7q(1V zUeQnHAN-&VYqD> z!?_Br&&q+NP--)dHZ9l-dN^=A@Q|hNC9i-6WiQEj@!3EM1I$3k?f471**d?zoNAf}jsepCl`e zZ#{a^KH12*H4%44ju|yorRR=06F!7(^^dDmr!K9~;L!^K_A=XRI(~)mMt`766w05= zj%hH%{Ypzh`zs3NF<}q**$kw&KFJEbn}H30?SMIe>ebi#tBbKN#T{A%(}7_CTi(~s zZdh)GaRDGlwtgT3EJ@koj>cPVxzmk1%1hbbnKZ^uqc5P<5cn6+3zW4HurBZ-;8cxJ z5`t&onsw!+zu_QotJd|Tjwyc4b+Vyl?Yh*$U6+vGsrVS#aG z;?JmIEvKOYSYZRpkw+2WCqRLLgL`B2@RQKON{8+0tFOhGs@t_K@r9MJ zUtlLm>cva25h;5%WChJvvL5Jp^Vx@Tp&zJFjS4MrWd9bhF_85E8u1+l!-mY`+=K)7cN}%6|UO&UFFK1JE%|> z;Le5s_^WJ;eIplC>9O!TEkOHYqQW$e5xiorr-CuBP`;|fp(`U8ef05U_50ypjTKJR zb^^LxRb${s6}c=K{kZYiIfd`LfYpJlVV3|m0Am4;e3k*rv&X%1rJ2scw3bes# zsEvReu_O;n=%eS|b+1{nPibj^Pm>tz>Y zYRmm{t~pwSZ#F7nf#+lhHs4=<*`al4BJi9ce5fzM&fP$n$q8Yfl_5KIg+rLdqje7) zO$9cK$8jQVE{N(Fv1;;URJ)-q>@eEg;UUa);#1*{91AjAbX1ZV)D=$iq*l^_OpRYg zjqFKDW6UcTyfXd^!N30@Xe#+rV?QochuxJiE+$EFB-2gg#Ir7vKK#(~@xC(){3R9L z5)w<_OTgh~;e$V(|MAMU8s~;A*l5x5l2^gu`#>zD;I0_V)%WXz{(}jJ&PTobJnr4u z(;n6r(oM2JA{u`|VNMqFSouH>lccdawd}72y@%hN_Th!2b|--z@Lod;oE9RW!3sWN zqe83cFGRoFmKS_a;(C?@AS>Ly7QsCmslpM=<1ymshmF};g~%fo<^bkOt&)rbWC5G* zGV$Ofm>8Did+g{@o8>9{BN|Py2*OV@HF}OolKyr0W8lW=B!L2YQP`Go=Zj`z<*DAjWdEI0yrF0r;~YWenZZ6g3d2_Mi-P1$j09|lWpGo%hvkLyJlX<7ys zYUay#8A%7UY@T^@_8Job=J}6-Y|s?WgsE|FPQw)(7x7boLX90iT#b8cxYiM+KmOmb zHIhL~nZTc@WO%Of2?fycO*KI=c7t01250}iz3NgnXaC*rGcP+PlyKXqx zozpgRXtI_2%)-WIBSFrB|)RE5Z1$MEm}NJtyuYu zu|U3w&PEtszSPJK3s^`#kUykbd^tg<4(He}mBeQ{34ouBV$65+MdE->LxBh9J`>HQ zhFvI?Jw1_`;rHj4TXV^9+9M-xAhlqdMaM@%rXU&P8Szc;Q+h29+hGq`r%!N_7N5*5v zj~HXBzuO=2(m^uD%Oo*(9IaGzSfs;&&>NgM(`oY8pMT1IUX~YYEIK^ti93@H;T?!c zcKo*m_5`}!K3>Xq^Ub%21^Lsm4Zxm%Ym4t}n6Wn;FR+rP-vVsNZn;I4o!q>`gRQ)N zgzJtPmP2g=Oq(1mnM3=O+6Q*+gSz+HCKWa`9C=Ly2F=~#J9dEI3DzgJpLxwkK8y%W zC2Pv(fdl)DG1bWPSE1yx<0(`gggLE9)cSC53*(#i!PkV>6-LYD+mAG|7`b5y6`}qG zA#YAW$U061JdDH>*e)Nx*F0-LZBGAo0sh60Gy&~Dc?)TMNAZvA z5Ns%kUjv^4ehZ8b5dKsZVSJqOz!^KOG9t{A=MtBT$t%7$W6(h)xlG#82VouvgVY7u z=dj`OAJ>|bRuYv<%Noq|?0rRUSP&^9pApi3Byp5799Y2#N;=i6XJ5B~QID*SVEZxO zRj?qam9g|glVn2Kr~;{^3E2M70}~(NJ^RNP$$JPM88hM`BMUNHbo``O#`rnKOr9_r%*a>tGxkvDzhF|F^H%jOd5Sx_1DGTRAJ=_zpnJEF-oN9uMm}_8!6b{0PFiti3Vk$3yqoP|EX+2-?aF+SknY@q2gg&UPEb$a zg+}XTKUO}EMdKU6d@{`P(>ynBx1ESXkeM<&{xV%S)y7lxKmGJwI2J53#OHy%fFA%8 z21Z>_oI#fBuER7XWrC3%CvGJPM_h1Tv}m4s>zz?*&KEPxv>n+otx=fe#%^6BgsNs{OqaZe{I1cY3?M)&#Ec9Os8k7M8 zat#TPsVT0jJkj$7)eWx-8a~F>h7D`gm~pR}PpWNv8>bx4qEl!yC7& z$A-l#BTw{NaHU1ZPkLmGpHa*%S(!d(Ty=k}w{umv&NtK_F>0_q^%GME!W(yF+XYiv zzaBa$UUK2~A}o+IukmTy9NBW>Y}Dnd1g^IrNLuj^4#{i9$|b7*%TFuoHB(wU0IUr> z%#S#r4BS+uJ6;3w=BW3aE6u5)(}i2i2jjfO^Un>IXOVyV?U4E&7ZfgAzDN%8@t!pe zY@pucTC{sRVzJ&ftJfKlPJ=boj6aYDpk5mRm8b7K0Dp5`-A403pyza zTmJ_{kNF*VlQy(Rt`*30UNtRsdW8o z6g5_B-d$f+sDK`=M>f7!l=sqn*m|4~R*Q+;HEPrq^$^Z?O?-Q_n()?0-1X#&(G(W1 z2G#(^R(ZpL0Xs689wt77HkOP&zpXgqC+!z1SVVg6Z@l@M>f5iU$+sn7%!Pe6sP5D+ zXd7(r19b>=y=6)}N)MH8sB$FF$YLDa4r~a#4k&=@>=k?J88T)NnT6|$uz?#t7`9*lU%PXu4Ua*^yqGUwr)47Wy$H6K!mKi|J1|;@vncH3 z0ZN2XB}lsR?;JzKhQ(w;%4ldV%;wF@*{=ZbGD$u{#oZY7w!A6HpAjnu^!8x6?Zmoljb4A zE+tHR0{6F;yF<`x# zQ^w4S>j=CY^t$UysbWQn<4_>8Bft~q=~B|Ej(F^fSJU&6GYyoh7w~1H;Za>VsBg!G zOI zXvU?+Asgl9LA^KdR5Ckny`Jg_9bt4ch*7{cK)bVc+790k;;@sb|z1n|ZuNv}7U!&a{#9P4qMkAuifZFjB(Q>dM*Cu(PYo|wgs$6;- zKY7`WRQF!(?Zd}Az+p--ml(gathOI9aya|eDYIP=&b|bxE-wofM@MQZIkmpuLjBjN zQyAutkj%&(C>A^lnk{c!Ai`>iMKN;4#Vvv(G6!$hzv%w3VL1iN$OE9<`j{_Ye#brC z0_)akgttM4;X|Mu{$BxZb3P;f_l4;Nw86rki?`&Gr!6B5(-t@cXKj_4-ryxW_1rTr z2MRdk;j`6Uy0wNWg%g;A|4%g?NpT&BC5dz$_cQ_W3J)Fta~lpFcJ{urX2ULH+Jl}s zh(|ucM!V++r=*4s9;3Joo^QzTx_`hmKu%TE2GX`)IBhI`yW$(wnhV0(HP?VLX2^uC z_SsZ!Y>U0RXbCKymy)NTvF%5kd1Y(;z#|yt{i&YE15p}UL!AtqYc!&$Y#@IG-WbJR zkTFMa+?P5r*7D3hzvSTEOxl= zy@cA0OC3+(s+3cwPvJ@CGkB;gBc=^6lQP3u5MES!C(?;K`}owaW)tvBYm9#Lf9k7w zvjY0gW(=0Y#DHPfLZ8KsTTC*$WkI_-*K$T4vFOa?&G?jE0%CFqRIy_vfL*A&_k76v z=*(YW(GfTim>B3xB}}xui7^b}8h%JnP544s@n|tKuLN>|P|aWPg}Sd<8Y@x8R9lRsodC$(doz5nf$W>(yzZI(O)a ziu1};vUO*Rr?uLPQ|PPvgcO{$O6yaAZi`i z4Ko|+FrYwVoI?nj27_*pjM`q373LR?Fe^KJ)2Y!|KrLE~9escf-?R@WsrNpZC|dfj z8`NKH4c|0*670Bhbi(~-;Pvx-X^`(zJpV#>bxZkTs#Tl%Skv0-(@7k$mMdRWy*B)1x2(9~glzr#{!iX-(F|{fTHY6P z$I@XaJ%OB`WQU~@ur-jKlV^YffPH`*7Bv7C0x}N{1xh%$75l;VP0;!ICJ_HR&T8G= zK;_i8|H6JgU?|yWI{?i025F*s(Slgi-?UJ4uo?pAa z_S%x@vA4B(cfdzvzir#$Xd@R?8Tx7e!dZ`7U;E<@FC`_Ta+_vsEM2xx{jz&Uu#Dir zX@)mOPCxKPp3Wg%IKOVl^70gO$^80 z&kn?#d|juq&}s1958tZCF+#QAebDSZ#s`dR&0F$eYA%PM#UTRmSD?&kL3M$<@4lS- znW|d7G#VR3rImg{f`9jJ@QFEwt8fN;CxMl*`~4$KPz5h2nMxJRq3&|3i6@bm*R zUr=U&fByMf@k$xKvMON7b_MRGa<|huruR8Yn*FZ_XST51eMMT%uXOL(9#fAT1UWzv zxyWC+QVpX;wSxT-l4c$yP$d(hp^Zu{V-K{O_L`I`H@$EO%t#@9HGfCq`TmP+s zS__yeAJ~?B)8XXu%^>Y9+R+shUuo}kSRXD3YeEB^@Uc|dlaa`>+sPydRJwoa$rmv{ zn$>t$3Pc<8k+2H>L6MsW0riweR&9rUf29MU8 z@-Id>2>Y{upIA5@^i<$jU>_j)UIwfVTmlprH(|K?deK}*E+(Q5GoS9ZpsGcuCAl5U zs{xPDlb>ag3LIB96;?%x#kEzTi5 z^-Nb)>gEDC;M!5n1X(_?6H^H&a$EWdks;+uh-2~{hl;P{`{JMDg;A{{R+-jefV~>d z)e^1*=I5(!0|q{eYr;PeO;bSfVT*E?PEV*oL!Wo_m3k2bGr|d@;Zt?RaWg1WUS~*d z_p~6rMaM$A4eo{dO$KqS{fHDH9#1gG;cQ2o@!1Dz4yLba)~N5a*O1wW%}WXw&tEI2 zg+GP8O`F!?HNpMr4{Qs~ku#SnT&NhxNuPeF#!3J_}McdIbM#`?=hM|))#|u%QAlq4wV<#?hbQ4q!lrFZ{a~V8 zd6GSQPFbhp8z?;W&nb1jwQ}_65w#7wC)ch2Q7$p{Z2mF+a0K`mka3w@u;qo|w(QCE zC^2p#7yp=f{sR!XVKIVgHH6G<5r!2y9A!0~ZU*j!`eF4doN0j;9clL+u-N?eq%n#M zoPf)L9Cr5w#sy?c5HGYp+F4PFS<@DEh>%sFaH7$mql%pne``Qg6?mN-KA37C8B zy47kWMlH9LD<2fsH{5U&MuOSQHA8t|Hy`i-Fs*$35Rl2VieyL951bzl=CJ;cF zFUEadIq*d8(W8f{#g0+|;C6nT1^5zvNW-#q+or%2l}-zJ1|uLu&Hx#PGI><1WW$4@ zKVYpkPGH)w@p~PZSO+GO07h=wA^l$jBcq91M(#NTw`U$s29Zx^q$qK^3Oqh^_@t=* z1D+DncAo_geLekTf7`2`_{eW-_@Lb=W6wq^H%qW=S+mgx(QyV-TZviXuv@M{f7Pxos`32ezc>SQR#J%M& z_5M8hr|SD+FV(cg-S%2Wu#B{r7%*RO3aP7M(*%bKM~!$_7Hv&@Q@-vvg*{{DG-Hh_ zr#Q#h8VS)l&V`4rY!l$eH6H={(J?#j^YAgc09+g()08@5xF0_HyW}(TP1*jz^s)ua zZ)Xe8gK*$NJd);QGUuCe9iglN_%lF;p`zC(%iwaZ#+gvx2M!0abAzG0Y>v1bY8&7u zz`ucM3p&r4JRd0bY3psw+)delO7dJoeY(wgHwR;S;2SrrpE8|0c0$R}5EOQAk-mDK-#!ee$)fU28tB(RZCmY9S1)OphE1 zDo_WF-3aPZnAHM8VC-l?MZujcx7~S-dI%3by*p{F;;jU>AGBw32uDafc=!AZJ=AR# zu2G}j7%IDU#E!AYNMIaOM%N%Ng7YvR0NWYY&F*b2=MB>1f<@u4J?P!1yLU&Ql08+}P4EL-_%Bc+TtC-O5I1dPXX@@qV*pzTw3R{cZE%Q>|d^6~E?s zM{Y)hmVe)Ypn|^3*o~qthB+3UWb17e+U3*-7xjq*Ua64_2m5%Mo>O|9SN|2a;PNJ1 zHbxPFvRN`lv>VZGfpb0YQclGo%nUZ=I(GD^eb?F<=(_oz zR?--%82&tLYRg60c)_Rz+budY2{#fh`GXaF|JQ*cnl(+4_rEGLe{4w$?OBpFsYqF}R%j<$XwkkY6cRsc*>}knm6WuQ7D`H+HASU_Qjt`) zR46La;{W~5oioqe`##Hkwio}8^S~Y0eCV~9-;IHHV?h1A)FC+M7V0M;i0_96tQUI=T zT_^FXSF7bcfR65XNaOD~ipBsN@$bZuMRSnw=GNl8dCemUU9;A5H|KF1x)x>N!dfB2sI`)`co zO`+?`iooX0u6Ms!<}9JR#0g>c1576j4kfVce!eUupLICBe z0%Uq~fr*wlI8B-YSTMSKZ=s##GU#jIUzR5G7Nn}n zQMcIqM(OrjF$SV9^J`#w%&%IP&fdbxE3WJC-yaYOc2qltdmH z*$+o{n^z;E00egaUmv}_)6nq&xLxAJF*!2Y#&F&~xqL;WU6;{C;lf2!CmciWK!4b$ z0@;|y%5!OiO$4?FYT!}ke3+!eq9>324_qSjwnv@P?{dVVpbdeXDRESN2CyEGGlx3B z%0PzkA-@jDeE1u@fQ$%F1~7Ej$8?urq+lU-V#d`^Gx`? z4*VL(&YsiSSoI1)IY4x7>ssr(?o($}Vf8faH)Q(HNb?1gvM%fOiOCkFEptEu3zBSor=t_gy2O$HhV)%S@v^iN!Ma{81jPF8d<5 za_KVCKYLfwxbIlpQH5&{De_p*@xdv{wb=2GkI=_vFfQ{=etc2c4!27V8q$N_gucMZ zz~AYJ0bFjG3A~Zv{L;T#)tcsMga@^Z1bFt-d+*K0T@>$-jBvHV?J!pY`7rDRve7PU z5QYalAdugc5Zt^!i`m!Coqu{nUW2tt92qcw0S{u*;L4apWR8~E=p4d0e8=;|_!rfA z=V8DL9STpr(7v^0GqnKsdN?o(_WuEocl^Ryse7x$KqU7$@q$d5YDdn{5%Av#WSwCL zR{(ev@Kj(qppC)X9fu4W8}*E}4eQsb*>jjB3%(ZJ`YKf#_65Mhj9&$q>|B|rxj>F| zSSKjcA3(}f1Xv7s7Lc7#6`%!vaC(0?tcaO>irzWX-@46Khs}tH`CYkL06jft~Aa>xyBKd@1ICopcuqD3%@wf69G?E+~p;FFB<@VH^><{Mk#Jf>rO zm8#X99n_>}9#tDRt|J*6sV=|==!gT)AWU~G&rf|y-P^XiDp|60qy<4>UW`m9Kl8fk z+`Wx@&OZ`mN5T~(zWV@38Nrm%cL=FkfaYnSt^+(L z>)EGgs%mGl?K6O<>Bk>8sunjk3a<5&0KJd*{e_`U#`p)sOuG&6uRugT!x1np8q8)C zs1wC6hZk?R95Qe$&bLClNoJA?b%vdb_jbD7-D&qeC>G^l;(6Q&Lpl|ggpKo+23`M{ z_JRcuRvp^)Q0?1wSNY`K3aKI6ChP>`u1W{E?KV;4&5r(H#yJfi;htEsjGFZpcja1O z=RphsdGy6&ecTfh z+T9T{?vY`5;B9><>f8B+bu;`WJO-UvDm&n ze}SFZlA=d!ffQ$X8hH9JJ6<-lPQ8%em?me2S3sV&_jK`ePD-XqL`MJl=O6u@le3Y4 zm2Lzu9vp|jyM&;7*8%E+^Bb!#zx-Su6*CRj^~N|3MWPrpk7|JTDfgnYBO+7{-Q%qnYkN zJ#3mdX`H&VWqVZ;r?$#N&7y6NrGUq9pSF2lQV8_@fwutT0XwX>NWhDUPC2=f>Ts`V z4@@P{a^r_bsEishQO}e%ZQP(gOx(WXS1f7mRJ=l&AI0&)A^k-;83y9hJr~Dq3?9~# zp#tpPe-+1GHJMS!sKwTqPAE-NQ0TI+2)*%8OP=K>`DW~|zWPGl+4@@b?|=X5m$wNy zh9uyZ`rPSe;7XYBI~Hb2z~pV_D+|>+-1V~Mm!H*d+qdDW-QV@QFYcb>J0jl1$U4Tn z6~N%ag6Kvo%4=1)+%#YitEh$Xu+6tFzoj^wr_+m_){WQSsV|=5t*YFi$ju})dA8NB z+qUY4{O`a2#&=ak^bzx{qt&a|))!VChJlO*$)Ayp?^W(<(?ZRi_of%_l?rD`e~L#8 zlh4B;469tJs?xi-z?&zF4sEqPBEG2;ZB*%@i#^VTX5J-`eV zDLzZ;D^|zS0b%jmLSzrYL7^aA3!>AVxBwz2j$sLJFiPDWY>^@By$6zuOox zw5R^q&aa3(`cT8mo7D%IhMVv^3b@pBM*V#oz8rOvRt*~ZfI1ux@Ez{X8c{UDWsqB} zSP50EcnPm#V??15Gm77mPZsNkoyV^m_!#C$aqM-|l#}E!ggmBI!{^LRuEtG$PN!mc zRjhcLS}+Hb!k}Kr+*DpWN)j3|Nh5YKjUSH&sZ<5&d0^!b515P*0f{drLO1{@Q>vUQ zQyQxQQb#3LNZI(&>7b$at5LiQB?2thdn3*qHZK2Z;Amc-Fm2M~z=Rkp-#U^bn|4c{ zjJbXLZ>nvFTX0dB9*21eDK!+9S>lLc9t8hZ64vRyo}N|s!&Ts*0{S4+TD8tjNoN~3 zt=H$leZA@nNrr<)K6_ilBcUl}MM5dBgpsmBP(rvqg-hy+;?gw>A{S)kjilOX^hoi~ z!1;%7&NQoE#^1)J#fdL<;Xkw+jhe8{)(~&zV8cc}_=Kuhv694z%2)W8!m}WDiNI6P zdBL59C~`?04w#)InXC*pZVHz89g8SV%oGwZQM$s^z2J+u(v;sva3m#-0vp6Swa--- z;dI%z-k!lIOmR4{Asum`HNvRA|}Ml~0HY(DA!OV$DRUNU~`! ziS3~BV0Rws*|NzXZY19fjL;#G$l$kU1U-cJEAMya?>gO(_4a92!;v_u4HYv3OQUMg zd|1<~wov4caQZ|v%?aUGiU5__cL6@2*v1SwT0(3@9L}_M@&B;^xC=b)s??USrU(o& z+z@!Q(?qN&H^4^b<1m@2V*_T|mz9;`8pLJ0#1kgw+MDrt8TcgpN{H2iqH-#q^q-6A zQVJ6)J>ib`X4G-h;AMNi8!>xeL_gi$4*bw@)jX?o*HQW2n^Jn9z^k$4pJk}P|4>_d zjyxf2KghhcnuFwt2!J$iw*6EU5Y$f`{!yZ)wp6jKWNMJuXE@jP8fJM7h4Q2HY{BPP z98mhbMcn7*B;>`?fH>FOr7SM1_lJ5qL=Se1*RT_vWPFe@iG!d(a7;5uvU5=PNNwK1 zyx@5#f<)Jz54AGkP?2**$0v;Ud4GW&dmzMJQeTbC6`MGi!WMbBy4)WIM|>*}3=G!? z=s}w-v_och*M~zVq&$)Am5=S!+Usgof+KPzMF93Hte2{Pz?I9FX3qlz$~L<?Oz@yL2b)y1wXVs{jiuKkK01c(g!v5?cy^pR%8pXa(3} zt<^KS#3I4_AjYA{v3lra$x1YjpZA#!_u9f1%06T#Q?D-hx2xnM@Fd1co%f=%!Z(p8 zN&f9mz3PssKb;LGA7Lo6M4^9tn2~0gX3p-6-v~PgsfHoFb40H%M{kyL)aOz!jr2%> z>FVN&Z*7GhjMvP;_HIrry!83KyCFDpmj8n6Vt(ZXp!Ah;#t>h8hCA*w?^<D+M9sJub1Us>sw|A@K2&5-X`raAO z;Ul6Y7**u^ioX~ltbcn)a$GKs_E8^uGf)_Z9Hm1XMZN=f{WlW|uLo>Krx(MoOjJXh z5LydKmih|amF+1KEE(Jc;t5d~(Gzb}M|NI%Xfya}&-cKuOt^U?LB+@*6UVRYm;%FI zFr0!t1&1x}CojKz7=^B;ND2j~WZO-kVSuq~-uE>8Jr-~N55&FeGAd>wZuB@F1_QC) z=->$rRtfusBgiMD*a;gizXv}k-&fZA5Ie%%)@QqmP3u|OpU|t%-RRWS6V!iQTsD&o zMya>4^xNP@56X{xufS3up5^_bh$k4-Q&Me%y`c7EV*&!s{EB?jpcx~YzR5#4{G3iR zBKNYt8?n+8((}sY+VZDF=uK0_AT_-~@bxSPjg9nyLca0>hkFD3PDKBEr~SR~;h0`P z`{+;Hjci`~Z;ZjUwvYZ=@oLQpc;L}A`F+yY`>%m!Z0LfMo_ZOoYhSD zY#1lMKE^VLrnVtY?*TxTUh>`m-*3w`x_>+C7T&-|amv>MJN0xR z0al6PPv~y6v1iM5zRw14dj_a>)*ps?&C3VRjJZFUHSyRk6nwP^rm-<$_Qr*~@8BUO zuK9pCeZGk86aH!vq!TQ#o>#Tsq}T|0k1FtMe`6jl^62J&Vo=I<{^~=&c*oyisoSo> z=%-IJ^|uY9>Gbgz_HAGV_eHqzi9JV^;`XoxBbLpe7o>)!iBAAKfunqWH~XKEyJ|%VQkkt=sKdh)IxmPGSh$|Yz$EP2 zI5*r>8f(t@2fs9EL0$S4z===PH7g4`F|3aZX&p$pX3>^2mo#EQrlKpsKHK5 ze%i<`^=?^eR>AdT;EE&J0cb#x_tzH;GIEB$fuFm52D29O=$tuH@beoH$)s$*h8{MR zbzYlLLRi2`l5}AYT4UPzYBWTTcvkrStK2Mf9vT04{y1p?Q+#)S{d^}pK@R!;nUH-E z!E@o6=m9#}Swz&JxHNXc(S7L5VDbLOhMI$5<}`VVbziu|5q=HI&XrYn3iT@yN;j;ViJKJsHGnZY0Qk*7owyCos@?Js$7Ky==p zgQ2F1X@>fxd+xngf!nD^;T`f9FWj_h6tg$TMfWnQ>W{qGCH}(@TE(T$ z=X;CA(&-mo50VhF5?aJ@*j98kk!i2)kbf)X5GdSwsTciF=b`B?g;TF)Oj*UKYs|d1- zfF#B07l&iK03PirY3=PiQH z3(Z}BF~O5zWB#~qr|hlid(_|WIeXZVrB7U4(s-h~VL|snOP?iYXuj?zxm3ti$lLI? zbIA;HN7=a~W_}g0X(LdMf-Mep+D2O`cBxt#t5>A9G+}Xa9_nNi!W=I~3hQMM<-df_ zt9|mH(7EE$kg~((5ebMXW8m_m6R&T$neVv>Y6_#JYl^~iwNKQB^_?W~ zung5*s;azI;XR0PAMahft<=0TQ11?53E&Ojfa4;L=tT=4h)$P?_4(+XEQ+aZUhdLj zC9ZgDT5vn-F8GD$$k^P@X{V5d8XKE2D2naG$qz|eOh5l>LO8uyT;Ioe7y(^20qHkt zH#&;WkHg^uw(_e$G>FYRtU8my;RAJn@t-9%D3Hzzx)N^W*Up3K1Dsl(#6AX%FQAA6 zp7j)T?%Vh6e*%G#CPKN@T-Bx!ucU#>CeEAoLyPZQyNM+u$L|fsGK&R!lC4(tb?v*i zNA)(!H$bSs&Q~c&qlSxe)bkRP#%Ku@TQ-@9X=VhmUQEQS=7qeRy&7qx7QhXMHmlGY zFirMFWL^FC+sT_vH5*gm%8t*~9|4aYQ@XB-itR39l}>`KUJYhjOi6euQ~4ykm`4|< zv&bdNmPUP_qpg*#4TQFPJEjvh*yaE;_Y>703ObU$zQjzH7Sd__Txi^b=F)>dW0+zd z@?u{Ms)W}|vfSH$U}%_t=wHa^OW@9P@6%}&wgh(rF(}Ss1#7;0do4GH<|uXR41Zf) zekCv;C0c9aKP)XHBz)EmHeaWcdb{N%+G9Pb(bzkasmw$lVJYbq46z|*UvK+sxjJiC zdx7fP^`QM&##%HHF%wsdh$;!&fNiD;x7GVmpsG)ZdfKee*$mu{Zkb@^m)?OAl#ogG zl_~EE;<_qoucR$^Cf&iSIEbIsVJ>i{x8bxFIi3!Hs7G(Zw99ZW8d?#d(i+Jl`gQ|4 z3nlXgD2xlWvWMUtg=*)R5l9rHp0i5E)5O#%Tf~qu+S6`Ru(@t;@Hjbx;EHa1ot=0P zgT-R-wP#RWIHL(4%*|XC)FMIQ>-9#@Z(Xmp55go)c4)xiFxlxpw|+ZV{nyi>Iv-nch_^{4+@h8+#SaWS@ErfL7TZ_*U`Cv#c?LXU~qw6>raq^i(M9>n&%&GUZg`62FIlOIxIo zv$I%cps$!IQzjf)uv!-RK8=j#-6Nci^e~ z`66TrM2=gubs)67z992ICnOj8fYHE~=v(=0ifI0ME;iE>LK{Zma8< zG$?xGs^j3waa}LZ!u4nh0YdVE5eY3jk#t+TKirG(dDgkWLG2rwGN~F9WO^fIG^X0e zPYNnALSJ{~_zsy+%slpY7f^4XFUETVAtBF`H2Eq2bd=hdw)7RQZ@b0#d1mYOfoW$< zS3)Bb9!CdU7b{ItPq)Nt^TJ-A(2MPtJEny~LO<0EC585qhZtv%&W$-bN`*WecU zhojs$CGmCXcRFEQ!&=SlIFrovQ1TX9@1i{@n5xqx`+SKZnHp9o1UvF&`wW=pZ-KmL zgvL^7wU*OMa4GdlLB*k^Zu)IMB)7Rft{;gfr#BldhNMFUVvC8`ER+IqoMF=bZf|cN zEHEJF7zLO}wPO%_ktvx-Io`c|`ZH}@sIbYC2cb6q1T?oE{_*Kzf7a-=~XTm3T|gV*hjN2T)-F=JbykM zyqnPYSu(kYQPHIrhr^jPp7I!cI518sPEi4SpdH7P2^DI`NJ*`ww;iT-^~LNV=k7rvB5w%&tXhO*lYO~7sZORUWqH+|AYNTe`4Jf8(_NkW!8sG7 z)T09VwZ1i$;1go4pUvLW>ITF9g)T&`KllXl>uwe?yoE*cHuVY9-d2$ zaRFghRV7k|`?4K~hgPGt6M6{S8C6UWZ1g_9&-#S_=t+=vfG^hYmw&jX)d@?FR~MSr z@nkgUgQVM7ZXO6$%7k1UIHVz6-+7W&pAOl%SKA~z-JI_YbTp~cST4lY>JJJSU~rNF z;CE=P2y-@IR} zDiG=9tc=f1Ivf3HLN4t^M=oZ^ZULB^cPvRHn9UJ`KWmFgLvP5bf`ms6z9|0GB)U*D z1Dll6A0H*XcZVgjw11R?iJng6``Jp2SIY&4A`pI{r1fyxWc7k+e5a7H7z^W3=4vu? zAJ1BUFp;C6z22IZ;aMo@;HBKKaZns|H4~+Uaemw_olv1Qo#}ktB~jnYyCF`_VH23o zX3l&?9}zpD*Wd3#-+7vPv-RRSFWucexH177fGJzOk@x^QP&A%hjW}=ornBjoMn^vh zu{%M0L%h^xY59PnbF3_oPm%uEd{*7+X^~4asROc`Jk#%qwb}mhGCO+{{t$8_vHYb* zJ`>Q5lX}Abm4?@czF1VLp7So|?h* zB}Q3GFA6B0_eBt~WK^03{ew_`n}VJ(64!qbU)ITwgK4hqRm320M4I7$Y<=-(!h(D* zcOTX`J*}`oXHBQ@^91hoiNO}C0Q}sNcq@Kx5wf~`DN+j*`1A}XKB!LE5SzumE*fH} z0j>0y4ssaYiAjgG4f`(!~K}FYqw%ubnesyaTdYgB?vd$W&n+H~OCa4BP z(6M}zdL8IG@770x~2cxmBr{39H|CES)(v_Kr&M7tAMnRkHG)VT00*q@IzmAW(6&u zz=_jAfVh_qd6$9;mbh2P(*}$4Hy)LRiL73PR!E-uhAPTEE;`=YJcg&P+XK{>zo6Z^ zXlAE3y3q*t$xfS$|ANz?kVyu!e#+&tvt_Y5tD`eyX8$Ys!f~-~gpg@2qR*k3n^jMc ziNAQpSC!a(j%Tv?Lqo4Cyf^3a|r^G=a-lw$lTX z*H#ZwvQ)&gfp4y{&-eQ#YX*Nx&T~g*fU(Jbu zc0T+5iE?3ZcS!X=zLF#)c{)(A-l!QP|WsT{pLpB})?L zlGO2ovV1O8yk0&Pq|9zbnxc{kVvD=TKpSWtstplgNH7FZx^-`lA24@L=srM03C>3R zNaDN0sR~Ap4T&zWgN%OM9u=e?X;EMBn1LXRg_z7iuuRs@#m~C^1K6d4-*PEWAx-}F z?CkBU_cc^kR#Ffo5)O$Ou-xsYhLt^jFCQVcj*C69R~q915>;T?@UDV-sPfn-F7)kn zrqiX=snRwa*ng_W+FLS-J=GT8{akd=QrQcqkxzwwGC8J&9t~JQ??=XF1qPEr4wnzu ziN`aFV)!f+N0qw@>1vZ8gA`;FWeHFM^yOHmQkZ(&4c;Qkk8g&&cs+dP_?Jp_kEGh= zy&Nm!uHPqi)xbyK5*5-aKOTL}+q7vCmQ9;VoEsL2*QM!j`!i&JvGzWN_FUh8m$|5 zkKSt{k&mT`+u7c85_0S~6&UL6PL=_--rh-oNmnL&qt#BxH%<7N?ylep&8FXn$X2Vh z@>}*tOWnLR2(b_pkAG~ar$0=l76uLu zzw#;~G5br*MJ($xbdKyeU)&ARF;I>Ef?AxG4_tUh$XHJqQ+hm_@)@zdUiROKN9C7B zKT+Q|!x^7MeNzej%nm}TBUVh{hqt4;L!Y%KAtyrU(bw0MMQnfGn-Q{8FHbvhlaaA3 zxJKN201wSZ?YDVsQO#66ljU(PmKhPelB$Q$AHzeUjZ|xe^N=343#JJZxMlJ;;Q_4G9JbSonzE8Im*DMZan3LsTmhY#519bWAC#!m6bg$ta!J6EH1Sxv7Bs_a!)g1tuD{|IT(wV3gy5+6A#j2SPgK#_9H7wlqBQ*5+2jbjF--8z44bf z#<_w#*B&o$fs}!M&P$PhB9EMaPRi`J;-O{51Wp27(~dKiTx-&Md)ee5n^=^-;0VWQ z!JU-Ho?1lCGX}nRstlaHYk252hAuy*ZD)LYm*6azpD%4S;gsDPH4I7(CJ<40tEHrF z{NL<<{RZo1AgLfFrTuE+X9DJthe1zU{jd4 zkiECxS~g>pR(xlu?Ez2$=aEC*+^(l2To!iJxqcw#2Sn^cD3IGFPc5%;-*64_w5emR zU!CK>d>Mb&qw7*4zV=|-uL7D|+Tu+4Nn2_|=<_W~?8nB_zR@~=XCn%-8P;(WxXQMt z*)&a2GA8w}X>YME_6rTNys&IZ-RgrE<9ipj^(HWJ$a@2>%``bU}Mo55* z*B%8Wl&l181sE5)-EBK{wYQMw$2qbzYy|uXG?H0RWrRPmnF6Gl$E0~lbWFZQOoMI2 ztkIfvGv5aw`7>s{wEvZv7&!Za>9R`ZWFMQ#ViKXS%BQg^GW_ih{2rJk%*VSZnD)+t za^8BM{|j@3RlO-)@c9{(UP8;)ORUgyw9C1kM5p$&Z)%91+GOOw6R8YyDs~gk`79VX zMBBbVM6pF&yD&@C3J_=EshH25fu>+9IXCJ2>ZP9usWkZwAt8LI`#9+zt#)^lDg&sH z7>UN?vCP4+1Sr1NH8Af$-?yyC*>Z`?XuULGC&1TzS%PFjnGTwm*?QzB1mVB|p80#c zhh?sg(yQJa|3iPo%qnlqU1;w*$BZHpfmS~LVvp1ke?|2a-+(JHzg1p)HAYHVFA{L;XvdO}dhIX;JJp8K@4084ioW;gika+VEW zZKdaGH4hr`@-iMdU=L=6V!&nN`iv4=kRw`W`&BQR&)^d~j|B2!fT;nyrFzv?k6&c1 z_2{wE{Ifo;xhqo#IiS*J-E^t6AbO-(5ptxDUy@L9Qt6s6;UkkLbEh_r>B{HggRT|v zpC~5rO=qdxMyTU5YNe0jrOEDO0ejl5M2ldj()hsQ4yYAosErYb8f(CgdZK=B|13|K zY^p~)JwE6(?>mF$8aQ}_JhlVaR3NqPR@(*sNPYB%Y#&9cHoC!J9(EE@k{YWFRCj3r zzgjt&-R9RVuD&z-*tqKaRp-d!i{`sc&TuJ}9n1B1hdl4K$ok5OUL{G<^Jh~sQnvm# z_9SgJ`0-etC*sQ0Cre!BQUZJsk&c8BFI7*=_M&D_A(v769B_2ZKhML=$mijXDPzck zh+b?k4ypkRpu^}{Bvy+AW(0o@ond088^`TJP#u@^@dh270fuO&?3 z-f`H$ueS1UNw;e_rvSu5i%u4_=+6Y?&&Z)UxSF|lmkWy&L1iKYw}0UE*{6@+-(g%3 z5@DvZ%2lA8LG-%YI1D|M)@H;iy=`cg|-9ku1lqVQznM_Kulyz zOm`k`^!70G4BVg`mMVZtwt$+1(!bX0?~`hBIkLi{&abofC#f=?(?B0U#4Ua|DZz!g zb9o`-(KeEhqgTm{0~BJp{hsMT2dJK}8_^TK7`?ezw_P;E__^L%>jeIB;%>BRlhP+o zqxehcZJI5FLgho*_C;4qW~3i)!e+c4bf>WN@-WR7`gW}?sV9AUia0*i_;5SVwQBzG zd^AB`8OOPVw@NfTO|i^2xRw|^oYHFniqHjG)f$=7^$&A`T!#Bm;lth0jEDW3m{3l0 z_B5QckQR5oE&^fkrhKTS^A z3si0;ra507C99)I{AnnP*rb`~95yfhZykmw7Mar%`23MV;)gc4aP^#t_!q$Y9Rfeo z!|y}h|44Id=~ib3qbEN_$BVb!vXf9$u1b&c{Ib1?~RKXA%?^-eAw?@uG(+j z5}*a!m1^y$Y6Ivhh%!!3T{uXWug2G~4aS5%X?IEZ_^hBCb(7nmM!BRLnN6rkFPogW zyXJBiPaV497S;=TQmxmJ>iL?#B85GXwZyluED52 z&orP$#01wyjQI{JE!Pa4leqY&8CMD}`>OSbo%9>qOeq>a?z|Tva{3)a>9hN0-=)Pk6%`UHdNPOc>qpW4sGTKJxcNCAxj&VBcZnnkG8 z#iYmlEfwS|BLjiLLqw&JG*VY(*t4mdWA3br@lx4xSg5@s4T*?!S6Qkm`p(vv;(*Vv zqoW)qRb^ek`m$Tu(d~IxP>dy!`nT7gBUx}~MSAnfxJ}jzPz|dl?f*_+;JV)G4@{lU zh}6n^02aY8bb6bN(S%eJeTivTw4)-epMbAYO?0bP2|ZF&Kr+2&4Tz`vy~{{6{$j(Y zK_i}q4|wET+|s;xg%>HmgElqPl3>t zv+^k5B+h6O4|Ap0TBBf+))vUFtIHH%MmT-e>Col5(Oks?f^i9XE@qbHLIM!jx3GMm zoGpX4qfs0SiJstdx)3ev5!6Blx@hB7COzOy1K>Jx$5IFgX-cnd6scX;G=zCWFnPbd zFd26ZI#j1sNpZ-x;F3-#6mQv4e^l9k~^8{^PA<}j?As+^f(yQx?Aw- z#+3o3_$j=s$wU1_wMlKSaV_EZXm+{g>4l&Xy0>D=SWbn%f``X@frZ@k?rReOyFa~; zGWd+c@?>A}-w&RPe3}6AX74b@dQs^{=J4I>Dhh z`ZMR$QT(TDiI6poXz751SOm6Ywz$Zwx_fWERM0d>ag~pr{n^`^DVNHMju(O$)Np^k zZf%5QIF(zi4yL~6^b4_v5xgMo6b`NKXg>zSmq3Y8`dcf470tCVjBcW^HT1Y_ibx=7 z4+hg{fl$AdM5OrIYxCxnda1Z?74GoGbMaHg*YHxJPGCeqD38eL2h2qV*M^?MEf0D_ zv~-`mUsk{+{i?aT-iyBqqus`GmBs4ycJjAm@7}3uN$hi|UbcF~;OHR+%kZc6&&xRL z>r(_mT;ac5#v3emBTq)^MGhQ6mH{W^*ZMtD8?1MCowd6%E*d}L8{OhX^h{Q@j`bY^ zEBV?M+)@x+YZbwN{#&~<*|lQe^E*(&PLZAm?;xZ~@pk)l8;{g!DngODA^?!jU^J zt;qT5tq18S3HYE~knx}L9VU_)vI9;q2zi3}SC!vi=#u03fyv8?pwWCcK>&&LhZZy+ zh8o%5G~meG!P&nagb)MnN21Pyx1jig80-dIqtuVrNuH1jA#+f4t+g8elk#N8mL=3lY5wDUDUZwDZRU7ttF({F7X7Hv> ztH6&4fv&>_pm(|2t$nfiQ1Wdd-xLoNS3EZDhgHU3!$KTBZ8%Cg`LBt!3ntsa^ZDSY zuj`EnEd<4Kw!y`iW1WHZI7==hS8?{&b&U{dPJ>4(GVK0Wnz{xtI5Esit2`AU^G2}ucYLGx{dYh@&uC3p%16SPIFM$~>* zR)GNgHifh)-ee&&9*9Lf{-H9hGBr-ty*o$m^QuE)}prrIUj4CQp4VRqOtvnC9gHIXs}`sm&LKkaPF5=BHeOh5?N%fU0v}M8w(^K z!tVLt*I3VcXr9spFWf(Cz^fOpF#CSeuocgNnURxs)8qIUF7?Z(pyT?ebxM?)zTMhj zj0tAgfmm#csS>Ho_y+3qSn-oC@!=L^UIg=YdqVB6)H*?YPikG$`31pwx~ZQG*E@k# zW9at&kg@~>H@tUmFPv&}b|IVr;hRHhrE_BgaJM>9ibR8yJ>7gvr_Ww~D+WXUf#{iS zzW25|vza-MABPoyGNpew(><247R1-F**loZ!j|>)rg?q}9R1$H&-gTtmGuJi)pNf` z2FugI5Sc?zrh@GYi>UH+wOcrw!sxEwA2p%8jXD8yFHhqm>?pyLX)Xd_@j{TiRkA#E zjCuAOf8^U8#v4|JccKfU!5!VO;P>h-%C-nrhhi5H5J+*s4LO;c#h@3@6eVPZpex8? z^weOkW?lfFyA@ULHV5{xJVpcH+o103diy28zI~G4| z;MdJig?#C=OXCJ|M(ty!+L44xsi_1jF?J_UPE3a@{@U1B8=G#?Di>#-uI811!myy9 zst+iED4@8?vGWdR-h9dj26OR{L3x$i)K4C`8+#m&^%#-s_Bf_tu;V$|<6`e|feodu4Isb9K+F z&3q0z=m2}=7@LeCyde^F$3hDpr-W=4lV+DXCN;nOPB=%&L`DmR(Qej$z2|KWo#d?U zrjkl0jciV}k8+W}-HWrx+~hak`yUy=5 z;*ltgZyPn4^Ct%R)C3dzeAom;b$ts$;N%;XzFBo|`#a#+n`kC{xs_66vU!kOsjcm? zwVNz!2HI58C&tWb*vgDAefdHR%tOCqke~5rP$@oW0exECS`v}j&K<*Ue<^?y=nQgq zZi6HEk&jzbwIVS9q=vXG%UyoJY@4Cj%ya|}Q<aW`=ROY*; z(TJ$7_s}?EsSFan+d{~9@1arorQ5FXyIbu#!?_YpZug@{dVWpGp4O5c455L?+TWV} zhQjQa*_%Y`I|`PC`NF~GPnRamY36QzZ^`FsUi9xz_R51Y6XUOj!6-yE__}}8W;#(< zaYw;piP*)-2OHNOSvT{Zh!nb+-D`^pu=HJ;fB8t7Hd-)y^VfAeWIeh)vxyK|3EdvU z5=|9hJuF-)Ye^mX5*hJ&dn~0B5Fxm}o6%_FU!{sS6yNeb{!TE7kWAaR^)2B}*pH{@ z36|997-h14)=%7Ch#qt+PJwKOba-R6G!FJ_X6@i$ZlE37JNye>p;V+9xSZI;i1UsS zr|L=-%v$^g2Wr3|5cIDg#9uWtDmUC+=)hJFCZGf?90cKLSv<(DWq?eiOAO~Au3cvI z1Qhm)rKZ^W6bcPRU?yyN*m1i~Fv4~fOXR(B&g&7WI-gm7nEnYNbO?>o#jz)LvugED zIjAr!eX;D;rc^Y4(P?c3mtM8~c0pNqguXc%lHE&-j$6a+e5mG0@6q!qnCC`XgQ8NS zmjKnHZ@vm7zZwf9Dfm;PBeUfqL(t&_U8C6B;^$rr!-nRG>~Hct{RLDg-Y6Y(=N_@_ znrDb6oL0whvJgW65`{e2C?U0FlrsFAsw`ia>nnSx!^(ze|SR+md3+hL|)uW zn?|zaD$8tDJ%Q?Wt5cM1n!OO0H-SG7Qs2WCWBLfkx}aj zmTb<%P)Fo^|2;&TN)xF{_bw#C`;4N%B#x(k@-$-KsXg>;#WHaGA- zjZAMyFu5{a$F17+C(ilVvX26j--E$e`q;V|G3lYMntWAcWf88?q%kw%f`FMnU1$}5 zY(V}s!WXjE2RlA-%Dh#n&Amxe$1}l{GnE>$N9O_Ry)AnBAR6an6wHpNlJ5DM{V;3w zkLGc#D5nq9wZn6K1Y-k*hIgu3#qyd?J=N8w!8v+fP^ z1s-iInq0Nh#`8^+x0`qrhwqaIwFuK8FS4H7Of#;8BSfyAf!O+fk928fP9vm#1!=H7 zKBwE(zA4$tEp2|FXPoTYx2_#dW*0C%2#rHYM~waeikIW8_+|#*&JYqEb)>JsWzH@X zuc!1oC`2o`E4JHC!tyxhPq z-m(Y6A|u)6XY9<2T}6)hQSb{Hse-WmjH8S z^E(eB4e~ar<}PY1bDSLIzaBur)5b^9}nnsMn?}&IJyA5FFs9@(c}~WnAW@1D=thV5Fbio z1Q48+;Ke@G=sniTWd4M5aoBtfTH?=AG&T+xI}!H)P6=c0d+K57;g-VYZ;Jw)?=tu+ zlzC3ja5)$-U%nkO!tK-XRxa%ejeO*7_kj8g2LGD>Od(2YeG;n z>??&lVA%iZdbCt>gKd}xv!EjIR}Ruo4cOvJp|22}tST#E*pMEr7uX01kq*32JnS(VbSgqdB=PrL29s!_F5>H%Y~S3Ymq z7skv~j|{Og4Hg5#&MyLCd~bXoPX?!%?nf-@kVA)F*U0>cd<62I^v_j~mxKFJ-bmLM zGIgUyV& zwJ-b8Iau{U1o#}VAu7bPSU+*>&s7uBoSeG97-hns8{TAl;7sre)bvdXL>vF_ z2_(C7t5jPsMzGVNqlN1W(FjW$zXixDA)4EPnC%s;H9!OSG!GY-A9w)8S8k>2Td~~k zSU;_^0Z$jBmDG6uVgbt@HY7r8``-SjAJPh3Z+0(uFLN)lC1R~9y%2|p_d}f-16Ce(x9c|@lFX>{LFey4V;lC<-?i~w{cxOx%T^}!d;fHb9tlX zK4FhxI1||SQoWnCRzv54ZL*o7B+2G`Cf0yEgqc#Do6C*5Aw9TQ&sXW(RDEw&mrpX(EQ-~%D>vdA^mz9>D!GkUdeK8!o=y^XBIBqw( zCKJmGxM^ZcHsq%PGvvN@A{DUx)(!1R0)S_R%>vs0nPmeOZ?6jTW?2#s!KA)8r~7KkqExAUuDZ z!xY;AXj7&-hQCmhrMR~2N^s8K=lg>7;jYbrMZ#P64w5siEHgj0tMq)?7+n%!!Xz;h zh|YNKk6ilXA0L!i4hM99 zT{tmcZF=7srPkWX%*1*yiU(m1j9%@Th!<`P{_8edrstIa8Eb+=V{{OdEBYEv-*KMT zhK>8Tz8cq@bY{6JZ;vtyH%SlY&W1yL%%G99yV=$u1huk-I*iHa)KYGhYabT)wvH{i z(;T03J^&}@U4SQgD~|M&2Y0NT8nJsSdv(V@PG`EGRCT^Y{i;(oDhMVuzo#;^Yl4Ni ziC-U4Fm4z0b}@Od?UoC6qc=9nr?cGmDj991bB?gI?L-V8?g!O2!zZ9@zFHorT&0?f zz@d_}%ECj#@#z#M9S*x;pbW|FWa@MNw}nh-BZ_4BS|f%AHJyQP!--A%JyvZA=P96E z0bDa<8OlCkLO#QEu1{;v)z^yUw!*0woJqbK5|`w@Wd9v5@a#0FpS;+f-|;+&OX=b` zX6rij1E0VTaT?F8Mt86*B6@bu>pYUf3wM7QG`58 zpi#VfjaPA^m#QT(Uv;nd;!~lwA$UEeGdQo5On>N?{LT176cl+FAlx+$az6~$c8Y|^ zUwR!&N^D4$sx{2(h$vjn(?${CNb1)+Q5i-<`7)C%7Tm>PS1Ga;GyIN;%&H_Nes6UD zXyckotNcU4@B(dm&!1~syI@Z=G$&xN2<8bl30?}#$^Oaq&j^vvIfvDm99ipaM$PS3 zPo-bkhsUG!=7q0LqKVUGSY-glMoy*XHRMFz_B^%Zp-3e0WH7#H>3s{P?Zi>~9Cl@( zZo}<;hcI^dFmIo+q3Hl(*N#Cf_^a&60kbpJRt7H8fuX!)~1Zo#pNb6X@{`W=KkdR5%+(N2pg@ z8M<}&zJXisg*VykMmpp0H3>rR=3A`H^eVVZUi-iF3`hP5COMC3?VtO=2Fh9Z=~g&j zNU?6Ac{N!_wKV8s@l(VeNqpWXw3(gPF5=;!YRT$VjgX?s!O5h+h7_r7Fv~yny2m5N z<;7~51=yf;Ic?NQW)WheI(!K!eHJY>14UHX;EO@Q`{=LSND`(+LaM92xN$3}xqG5{ zlm$_s=4s1Lbu$H>wvWAYlXJ$jpchZqXK*sjb;gtRmzYg0+>BQ< z21A{w)}F9uQXR6r`FR}iQC$n3yqA&V3n{LOEHK&2MU5;QBJefe2$9>5q`pK(Smt0H zxIO#{nRvtcpKu(U|M%ZS!3%YtYdo>XhHXzQYFS6sp99oS+J@(Atj&Hm3P#hmf`ymn z`caXU1#e*U;5m>VT0ft%c6Ypbs1ENEO-AO4&goc?h<{B`9s?U1oX@Zyglmw$qXB`+ zGuT5EfnzXfSrNgK#2&D&6P2??N6UCNMTcBW$h9T3`>l>6l#v&s}utt z?f=IDsJren4Lj}hiin#@QsYp;;rbuS&LKL|whPy>ZQHh;bZpz~*yz}1$LiR&ZQH8Y zwobl(tus7>GpRwXch#V(o?W%yy|3%8j&SxU&Tr`R4@h2ARmH(EoO3%T23|c1A>GQ& z;!~{PoRA*{@CAN6o{jL6q zsB$Hfu{a!5xbrI2-(~n?kN3d2S8+T?+{g1>C!B24?WK=HsCE2_)IJ=w`+XeXV??1; z?BY38B&bpI5o&mZ%h-Xk`b=7F0pr$z_XL3e_HoX*;j!@mN=cB(*-u^gmvtP%&6}ZlYbzm^_$g&LoNby z#MGw_bnI&NNe9J!M1=v?;o-tL_k9aB_xjz|!zraiNFYv$OXhs_Rldtqz6JcGlu)46 zRlbZNs#eFw!%nLdEMLdGE!hoYzHWmAZ+oVHx+J;F-*==IjnZoS$0M`(s-(G8=2P9x z+Oe$ls9Fc0EG=-<4aV!1EV@DB%}E}LTWwWk_WRuS2;pMTZsD_4%ZP(U@eib+>ie7p+A)sWtzI_s_Dd_*KJ#T?jIcqYEFoa?KO=Qh2 zU+CI9&*OWlt$++si76WPj8VeTvR5l)ag1cqPgfx8AN@7qxT271=UxFQ4P*EiE!ZbD zJdE}zGTV1rT|2lLOhWu4(IjCsg86}9TCU=%Dc)3{AQ(p6smH`r+s8nSS8=^#{^5wm zkTrCowcU_JS!$b5QAKZs6Q+;?nj{Kekge1Fp-ZJ{PqqK!RkK|PEMixj$^UPHQYF*@ zr+M=uw5fP{-YS+(q01)q0?z^JI`Fv_)T7g4;r3sdLf(OgbQKbWtiQeBxp3am#*-3& zK8OyK4v*vtaY1ANUJtV8dP1Y~a8Sjeyuw($1~bQ*1{Y-jf0-Zolh5B8Wu)*Ua(LRM z3ghQev`3sKUKdRdY8;*#t|4JUt`*e>Y4m0Stf^G}rk^6*N_~Wcmk4P3f!~{T?Rai4 zEKGSEZ#tMF9waQdK69iBFJ)<2NQUZm?<`PGdr}ir2bkL^pxcH=47K3C@N|bN6i|+E zy9RfUy_|;=qpv7B5*BKo#dQ<7qt_^68vDgR=?Z0|23R(CPNYS5fraFy2GFG0a2SXm zfC!)`F|weBYk&)ia!2if0qpY1wTb@>(uunCpn5o@x{byv{NwRm^E(}VcyxN_{^UPs z1RTA9s1)Fil___o%y6fLK^Bep(wj;7aD(P;j;DG$ zu}RqJ3eU-j%$rea*_bq;R2M0BQ-z+I?SZ*ROwGpOOGCx%AaY;}qdfzJdnZV?n7W{y zX>Ov3ge5s~TdR9hdQGypvWgs}_JDU`Mg$ksIaa3vWHVuX861koQu)09)kDYhWTnl`gzvaX`#Y$H|StqzG{T`-)lkr?f{6XFi(K$G1Q$I`mFCt;1wN$f}Kmw?7lDVv*BA?-K%>f*bYK zk<`xD8Es+yg9@gC=Yx@aXV?`dl9+3>fLX20hU3F%1(p1YAkdA+^9RM@`WNv3|L~~_ zI=5YSGqkMLTOfKQr5|jMAe9TxGOi1H(k(P2&ST_pH?)Idn4dcAeXH<8bjyNyr$2)_ z{37Y63%xhj zX?VkJ>gfmifs@8i+xZ&=R@`Xt4gitqaV=&th83cx-q}B@iAXu^Gy-3W9(X3;C#lx@}*)xOJXfVnEpnoX!Tv)P#IKPUiMZ%i3v zqp1!241p$^KjA+%nrW+TXWYsV%fcXz#mP-ZJ3<>i03pz_hepU(Icq4{Z%&@=iv?mBs z!Z{lvcbM7iF$u%gQg_I{Yb@L(W)_&iI(x_*Q<*^tqU~A;ba70lbdmk6*w{aE5C%CO z7AJ8f5@~_~FL)p$tk;6EQ8shR@EL?X8PK7lx39wI$>I@5% zcBItm!(P2(0j5=1b9e8gv3gnoUZ(zyNrMT&o)DH=1ZSh9amy>>VEcEQOwRMnsa#sq zcyQ2z$x7k%w#B6Tku#~|bs}M+)6BiJD)Fh04M~F)DjnTC4~pLW1>K>CU#+N|P>i1W}14FjL*<*M&khH)nZ2Xy?kU_)B( zc(SL1eMZk?o4KGhidqFWA=)lpSF55N-zVl<2C5WYwyMc}LLYr}fvnsLAi!wl02yOp zlo=%Nc)q( zX*5siu&dJ(^sz7BGqHIp*JF@*><`S1;=C%?sVckko5;}qWYu3mDM6^*@P_QlM{N}YzrNZZ=w6oNK7yzIwf^vyrMg_<_L2}9wdQW_`}6i z_hV1Q=f~)H0YkO~W=X)c+7HZ2Rt1XyQqsc)>B$a`E+2>Ifa-`Y<-2p=V6_0DR`X@0 z3_%%Gh*^tkl?0}v&bj50`a5C*vdWj(WaaAlq+uUULFYM9mXzA*$&djnrY{Pdkzv(G zLTA8_5gtNM%XxiZ{9-;KDoJ65fOX~;aQv61J1)s>^8w&I)-|hnS4`0-BvvtA3W=|( z$p18ocFiOw(Zd&CBe#LO*)ib<_KF&f3NF@u^SB}Va3OV0vh`B;h@>&B&3;~XuCsYH?2CoKAMVJ%znV#WArg8& zyw(RgEMhCkl32b&5S9R+*g6YcV|V@NZ+{!WO1c9zJ}ff~IO9$Cz%Kj&kI}{u#gW@d z9Yvpk_dWx8s*zYW!h&9*j>xxOVyW^fiRWR5C|kmf$1-)_ybZ6DsJaNSisgC1D}qB? z{?3&CK-q!M+vqISzjlB&DF~paH0ycH7_3gcc3-Tw%LWyw{vON|yDT_%vRX|g%$TNk zuqZ2l#7;XE8UZZlRRJ^QzNs-+(i*lv1#0NGsKLGVPH1;8vpSkmrxB~igZ zs!k02zw6<~N1y!>`CnRj(pLU>I8a2#0wl*|8!A<#S&^t$S)IsAoi&?5cHCd{eikpz zw%xWmfd!f}E7dH$s`>Yeo-n*{@1>XG#jW*k>vKFmx;VzZJTW36Xtj7D9P8J!S- zl~R43nz(bWNqE5dbn4S;ty-YK#|gjMhnOF-D$gYx`*C*B&s3t|w(MnA{=~OO7|9**0Gh6|NXmD!LAjrI(InDzK*biIoYW z;VzY%Gd)~VJ|Cy~;qs$IrG)L^@rr(%Cb^U~QVCWAJf1K)WsJA7$S8xU4%?xpy@Ij) zVeDZ9F|t#cTmN$W_NX`C%0|e%cbEx&a%8iBB|y8cZ>EZ2F{$&-FzU#aq4;6SI10uz zn`J$h+Dr(S-2Jz1)^GV-whvRmH`zQOv$?t!mwk} z?VUM|lL|x%&{_|dRyox7x=j7N*A%|R0H&j-GC`2NeEyvV>kWzml_Q_kU5TZ(W3}O! z0iv9M;MMzI)lDqVLvv0 zU~?ZL_B1q8vEf4HNhv&Cm~-$%;@;c<@9+q2Rtf>taRD&54Cq&}LDNAQ9$zA4d_l*+ z=q0chn0Q1O*DU7)vd%4OsQxa5zpzvQa_X7We=YX38;xhB9>=W^M&TavySP}tjW zZP=}St^3#)jjPaR=<+qXQ#v>a^#Nn`1}$HIbp8IMW!l(OLr^k+45HqQrfC3B}3&7D8`lP2wWVH)#E z6e1>Q{T~-d%)w)6!8+kE;1evy z3r94soDapap*r|fV%-tW-Ck-xIFF$m`E0s(OD-n~m3TYbT@}u!&kn7U4mT3|q442t z5YTpE-@^v`&ZiW3V@!w{yQd&u)*sTuSqu*%DE6&N)Rb(mukyuX&2vivfzfp^rGRcmD>j{OiVwcz2{d0oib))| zzU!+2q0V&ljGXL`16zYKOOfW0oLNGA<82lZnkgn0pFok-z)#Dk;fS{Nq0Kw4*G5Fb z5=d|=5pL^2gjF(^={5FOFghzgHV(0unjstai$gU~H^gL{D%eaZky8YAvg99eRRnE* z-hb`@4{q-ETjx-UYf_eQ>}*kT4+Hpv(mUB*;$F=geh>k0Um$Pb7f>d4r1U|!kwd5W zHLK6wFB8?ayJAOk?}76lO-%*iaus?k-kSkzV^=iTLB1B86+iJQyVa(yp8J+6Zi=s=;`GJ777`JFxup`JVrT;wgiDL)@V?ZT2@C$Cl38FK^najBA4>v8m_7kRGUa=sBbgw1aTcHOG6uF+ZGBr^9EifY z{ZNpykxi?afP1m+YTI-$`TrNxFu{~>hpvTq98smky!BazJ zFo=~Oz^wf;g=5{;SG%M95S-vZO4^<)4Ra!=QqATw*chuMN$BDpS-xrT;z`1U zAzzgJO%VT5X&6(r`LD+vj&>+ zSaLmno_d>|+sthkpHEjT3GT1wXROL?uXlFtuv<;Zf$0!eTD(@4(5M8Z@((Fz(WBez zKb<8H1_L)6$=m_8o1v@)k};zk6Ja8w z38J{$CgGn&8brjONQP1FzU4PYn_Nu|Nmy5FvpoJ#KJeLq<%$hOz4a4m*FA8##oH0g z$Dt$^K>N+vlEJAcU9RVq^AM0$r2-i!42Io9y!oZ3v z{BF3vT8;m+x1NpDR*$SjL+W57@*Xff?#@c6Md7+Eh!?Mb=7LV=lQJj@1Qs5)IX$M5 zjvoN^7c+NV1`gU3IQm5KItVP9dgCqXxL$#=nM2d@rlo3-Y{1lsG4u8^&J9eyeC7{6 zdP-d;I^BYc;~Dg>a{{7&lfoW7zL(}X@-@K;<3|}%Y!6}T6=N{!78MI{%4~Uv%KYfg z^h^39(V}N;qtR(|if3fK?jMJK4>y9pMUxCf9tr|$PPK|+YYToPJmim*LthJ^EZ%NI zs!rj!HZ8>L{3l|$Y^eygfuvgjvSlO%ZnGo^Y;096E$LR9sVqA$nxegj(*;fM*x8vz zKUd;vb;(5YPlnK-1f-%Bhz)8PWl$+G>LxCG!eNqI(HP(q+x-LyH0tMH%;<%ZF@5!W zul|#Gz;*>3jkIU;KGwNpQ2Ih3Tvc0q{)%HHcs)@eDKcy~^ZB?PdU)1Wxap|yk3MGa z6l3q1=alMmF~HAZlA`wzDX&B!`yu^k1INsE5e5e{*${CIoQkdze5{jqIrp1V19w0s z#o=~p6+N($s+4~b8JM;}8(Oz!f~+~%0gFQ(NMLe^8bLF+pTUnW1keZcv8B(b1Pla} z1)QW(xRCJh;8Ai4-Y>#EJ|xwgWK(B&vU!>eT5SJb;?e24A0COMq{ZERGU()kdL^LM z_UflLuD@$=oK~pGU_UEEc-~g1Q0U>?+AXr0@%q}fr^Tw!i|aBxP8=AMeV!FXTxp=o zk+ueY-T7Rx%Yt#pesex11azTb>}cnJ1+xsCvY}OIiYbS={5p1yVrzh*fX{@xPg?@( z&>M-4M zR|zpO-y_X3XYi}NN1J6uvqBaM(DNfNy@`$*@EO>Cue?HgJ$vt~^7)f8uB z*470gyqmoUJpDx?0Aj7h1B)pj67%Opi;nbPB|Ottxf-n+C*JX8FKTTA>w2aT{w6U9 z95$PJGK1Q*Gmj^}KXT=(NQP0CUK7w&A*t0rk{}+r3@HFqd*?%(if=?gku32{d`(XA zB)!-mmDj-^i2w!1=q_yp7H)?`CWOP zIKy25!Cz76E1iCyuKyd-EET*9De#e!UeE7gJa=4~qc8LZT-^7D4Up93 zBrsHpwd5EWoC`GQQGBISUj?7K!4yXT?|vdQ)>?^lV<_GAY9cA|RdP}h^{FVxB+~U0 z8AvE0qw3)pWIFX~qbb1`WXM`18{hZo7UtWYx$jpKT`SjqKf=uH|3xr8dFEIY`@h`X zU;q002+0!f1KLIZ@VPytt25lwt@}DAbg&;I^him7Va>An*Cpye{fU+`f7Aw%KNcF> z$|u#j1dDHKre5C|fbDH4tlI$?XHkXw+owjN5r-0rfJ1xda1`#rLNe+6{Y9HwaU+Qb zzN!DPt}zcBVRKG-#YdL)mP2UQ@DFx zq+$=jzNdS6iJmy|=WGg069PyN5>Lb1cgnw?O>KQUJyx_G_@VVDn3vhcL-5usRY2cM zGLxeUi^BtNeN=9KharqwWjHFA^DdzreC}+HyukIY{>AXaVXje%_CkDjNTH(gOki7R z^3A(k*Haipnu%cacsgs546G#@ni_D0`lXKbD{!|M0EUsEqv#xf^{e)QPEk{K#5n*C zo7D>-8lcl+ivo`;XlhS?0qzOEYY>g;ZYYeTnYPZrpLjDe??})o_tVcnpuE~igf>}kN0Bun8=WDx% zzUtXB#sbMH=P2=UEd`OEZCQijsK;# z@~}FF|V~?a;-kvJQ zMp4hEZ>gehx5mWJ_@<1pb&3iX!IP%D<(QV}#X%eRT*UPf%97?2EaTN_Xt9U!O_!Gc z?%*;!S9U*mLP%%Tm$|yI&PBLhEsbqQe}7r8ST_BXEgSxRz1qk5ImBd&OpeaiCVMzA z7m=VHA)Vz`7?qV#qirO*hO;1;p533I4YwcH9`&T}DF4D9@uIk9<4GR58tfKT5$v|s ztT2b}#qCzZc=~t&wJ_mcT^Hu*h$u?A`fuCsTWEcjx5Drmix(Xu)kqm^0kMN-ken25 zR>LdQ>A`=Aygz<8b#MKtSJfaKu8Lv&4}2beMuFT3dUen+!+{5FU&(gZqhGu9z0$o`y&!xfMXWfBXV)zg=U(Y*ul%49 zGy;Y_fs;z+IJ1mcpF$M2H4X;oZJ*{6fNfVVZ-s&O{Dpn8epktT%JBOHd`9RCvv_mH zY&(hfOLnN~{N0&WLEP2AHYlow-7A^K1D5FQ%>Hlg2KLq6AmrWsvE^q z=Z;%%klpzbRU?X~7f;Ky`QxAL;5{wGme`qWUc!@K-Wi4jKo=c?U>WJe{N!Z9TIYpL z*k8SYX)FbFz&ptyGS4AG(InGtiVMZw^e{V0i?gijJ6sdTWf1I+Bo_pU$gSviP!6Q{ z5ztOYRd=YC7&&PyYdk4#WMAqt8iyUvDR|fY(~oaGDTGx$vMJ;4;0d{_NDv%TXd+3)6qw%@Y*1qukqY%PT9dOkal*{i21u2pU!c07{qx^G8!*WT{u`OT& zuSKKSvE*AjZSJzmrILpI2?Lp7D^|+!xCk{O!dT}edm;C`VN#T+j!N&F-62!&*xy29 zqnI8CEgTd=55Z0GBd5-aO+lzb1Yf-(buNx){SV>msOoKONh5~QY0+jr@S^hd&d1Xc z!&3weJI%X`yIMpV+)^-jr$x0)t{6$OMD+gU!J^xzW>NiJOf^cw2rg@Km%2TBkTpa{ zoc34V&AI96S~=P%BT)?hT1xgQpP@@vgOHm%+}|I%)! z0~%W{lGFW``0SGmta%2432gx=pG{a|dptCCw7~8*0K#)=o!|QH_-CL^Q$_2#Y*lxYw;U zFTN2eM<{f9jig}Csl^GLEQu}2J1(aS=Y|^WeF}pV0-xF(M8Sm>m$P+g-wWwAEI*=Y^nH%Mfj&$-%LpckNU!m$@nmN&A5HcJQ zv(qw-9-a%bDln zdNE}@qI{>DfFzk5Y)i`}>%|`TK)2xoC4TeUQK!+;uJEE$3Z2GN6%~#UqTBjz}VmXQ6DNySO zwpb|sCfN_&wMAqF+-8nCt9}4p6yFY)vxjaHphpB?u#%(YrIkLtTHX{j zPa#U>G_q1=dID*MZh`*(ONMCJ$gJ753?7T^xtEE7Yvxa!M0h=5NdmDLiJ>yd9^lS39Ok|ydq%)`+b(V;r?aFCA z&u7c+;O>PyW)0B#%eyVkNv4<(;V?XcO2h)_paG44oG+TlpQ4q!Sdrt7?=iGAwskyb zTmC>7WR)q_DZwsjB-8mRU98mEIn1AnGQorp-NdIitfrdwN`UH3K*9*^dQyu$5}VFK z>s0AO>7)FD-+Q{hV%x7i70GpXUjj-~hXN48q3gxGun&$|=$o&{#5rCnCEYzlI`x3L z@jrzQL@FH})Q37@@tB9%@MnYC8GuGOfrG}9WJL^@o3g7 zh1_^mSsecKIxT~_r^976x4UmsN$dMny)vQsMQA0TwrIAOjB@jdxKK9?A?=N2Y;!M< z*;^J?a8&VR(JT!v)d=#^a0_Ilp96}>o_zR+mMkP@B*{e|@Ul$?ln)UV!tKB~j{-4Gsf z=}mHJ0D?2aO0^?=@=q~F6J@5YHRQgqrE|Y)s23(HQkBiZ;^k&IyQn4p1s`w-_?lBL z?rZ67Epi5vnDPJy91k%w7KnSqkRt{aM`7yO;HUS->KHn`x9F~o=ks?rB>?G7+zlfd zIP8YVV>|@;gdE0(pyN0M_+>k>kC2C4#*Xz8 zYNM$Id7}O9otcYoDSg1oi0&YgQJ~-WN6bH%)78T(PwU(Ehc>b}#$eGDFm7fJk5mC`bEmcmVan8#B#0>%@Y ztSC#A@xj6%eD9$9#AvZP19WKFKarqsv!%G5cwA&KSfllcJa<$y?Y1f4pjyvwYT$ z<+)bc-OIcQ5=I!(7f}4nx)Z1~kUi)$*=OW&frwI-<^qbOEjFMDU_d~aOmcSc(>{D+rDk+0)?L~;leckwYY#QmpTIXrMmBbM07pr`1jvZNN*{7>Tyb=|a3iadGk zBj!e`JZ0<@eXCiGKVZj$P6ALLsFp9UF&I1sJ#?ld(!)d-41rQI|0;ua_IMkuSSff! zv~L^CCKw10So=UBpF)z{#Uo&Y1#6i^aq^O@?HkcOVGB_`??H{G(_ZUJT!co1!!_D{ zc|LJpA!5hDce=h%G^N{;mi@CP6T!$E+$bWXjMzl{%pXx;jWm<`GB3!nqMo3P1Gk$t zP8s`^!5$U^u47LaQ|NT4P@DJftCJAL6clSPXzC==+Vza`{Ut&_52Fi&yId(I}abBfwQw?UEEQLyF z*%%vNU4}_E-O^Mn7+L8~tU7yemI5MdGt|<^osB09=bcYim0O4-7V{?trtLL5Z9c(j zT0i^Val^jR=h|&a9Zzn6RVWWmAbj}@;~)j^3beu54c%5^sbs7Dxg>92BU?Y8M5g=F zQbeq_qW0~0_9ENX`7`y92Z{e&ao?GHhZ&MxX3Y@ z2>OK1#aF(OT;@U9?to#hZBLi8?PWn--a%&`UI=0s3-EYacTRJ*-W-g{)@!WBh)YH% zfvmU$x0zqPbZIxMTRcudu5u8%xP{5}!3Lnoo4jpTh!77)l zHldtOK+ueJwinDcL%F}JGtDfWqpMK3Ir(f?o|VD%yvAP|*SLK#?e?#`;)d^T$vjzH=aTSeY-wSh=N(G)&&F%#zY6+n1f0Q8A|;}L64js z@G&yEVf3fdh0@{-!b$5IInwPj4#f{=l(?A2p4j+Nb5l^*kVe>fQnnU>r`fTpI*Uv` z8sF^))NFZCb3CE+KjTr*gwvrU^E?D1Xdxl?CO66BgOKj}iLHv!Ae&C<{#0}a*z^WP zglpVM8V)Z6WaivIu>(k1y*D8m*+fyQt1y539#q>jDm9&cP0*Juj^mg2arzXWc;Hp8 zcP@^NwHyJpao_GW5W;Q;Z12x=w-o)Hy5{J-CPF>s z50YF|cE^)h-??1Ogtc3v8vRe=SJ{n6X#+FtWa=`cB)5#d zd9PV0UCFEbW%CVdzpF+cBF{NsC4r7v*j(aJYW!5tFM>2hXQZ5DnC2Gj6+WnL4$+jw z3`hH;kLZ1#xQj&JZb$WEqi4lY`?ZVv4+68>B%9}6im?v1xq%ttk_Tb1r_^MJ|4Uc2 zr*FYLk0ZeTc77rz9d6@%vj%~auzI6ux!#Vy z)aLS1dNx_sK=@2vhZcYTZ1W)SmEy6)70$oH;|z!zo{u#Dq54=)D=O}V@9m^i_@dVa zm`^YsRU&<$>`XJxG@nJf-@or;2!iVwRs;D~@q?sIAw4xB9H)+PJ0Ce^$$|+Lm>j1# zEmQK>{(-#*H3UD5T_);@KM$*tP~n)9-i@5$F{R<_@0SeINqEH`8k$dCh#D^JYwQv+ zRdvt28;bMw#`mC|odh~Lg*C+~kM=1%rj=gxRXR~BMhC?%2~Z;470p7cBVhb8@A3{U z^;7|GZny0~BSH4)-^)Cg$BmoW4pf{d`{{P+kuS!-!H+4<9|k!|Sf33`~(M0*p-q7UM@ zJ~qN61Nyu$faq|1MAg28c#FnLE!ZLIH{3&H+bLdXy}R7y0Nk0L~hTo9oYXnwJBvI zlO*k&97&N9+jq!rHar3JKscj4M?!PCZyt`8uO7yPQ}uhSN@A9@w}Fh?!J($~*~QiI zfzdn6bR?{6YeKIU@(X8-4K3hMKje7;59k95iy>MxcsD2#@H?d}UMdQUsBaP~6J!$E zpW^PP8`py-Jw9SB9;=yA6wLWc%l7$VM5MsX5yJm9fDDMLG518PzWXCrZaqllji1YE zVK)`V=zimYiU9KEucLLxt=9+gOYAx)EvnUYD*)AY$Gf7d=cVpp2FyGupasJC_joV4 z#Xm0Okh;x(I_dhBa4#qWw7sKmP_*z#5)+KFwC;EmV38*ClD=LK7@3DiUD5BoMVaP& zHe!NxCL=YmD$kgE$xY_ytgLdYSyWv9;8r_%moF4Ap9BKB0p8HE@9)<=W4u>_xlOX& zPIUXUzaBiC|8Y6qwZ531y@1L7g-rF+^S^tI5hR(&h0kx_?}jjN*KjZ`4pZ;0zaLk4 zoe|M^?I=)Ga=fUCEM)R!nQ^$y$>!9e)>VXi! zgglCEGz?3?fkGEsGgZlx?=#yy1?AO_c6X7Q+(cb>j+Y=zZMjTGivR;^-l;dBH&)0% zQSMK-;2CNHgC5UmquHk=fXcHun?c51Z?>Je*u3<GbsD#X?5~5}is>({v(3kC)%9`rxSuRvxYq!Ihsjm_zLeYyGc0 zuaLJMgJ88zl>)xGPaA>9G->#V`5ic;)ryseq_GL<{msKkcJ+8e0<#nM4yXyjmzn1w zc+23?^cO+{kb~RA3B7QB>(99>g(B}z2^2om1&b^R$OT#WsJBh(OnGU*-T`n3%QEyS z)Pv3BfsRB{%ya{_+=&Id;b&}UU>yf)l!C%qG?xY3eIeToa6|VENUOXhNP>m{cLuDe z$bA+1->8~rHp^YqG;+5NVyN;|61FD}(g7z64$NF~0Q=H$bfL{6>N#8=5$*kE`7TqT z9CBvlBR`taq4zMZ&=WAbVqk3VVHSG0SdenQ0D^^4nVcg?IgKW}q0%mFRng~B9D8#! zxcEC)?P60x{wY~A;HrBmu@G5uT9}F+MhLBt$t*l#Zh?h0DioBc!fRqq0^gD)?2+lU zb-1JtxE)yyMz_Q!7k$wx-eE%`+Cb9^M(z)oG zFfZF{Mx95TLwPpf^F6W#|3vsk{ItuX9XwYwJ~gf9)qf5l1=Ud!FoR^wvx^VltFv6K zI+#x_MixBXsrH{M7Us+=Rqm2^6c_%1>M{CoB$#zt8@I#E5`Wp&F9l_{}T>I(`5{6}awrFr$2LA6yxiWUJ zK9uAR4XJ54xHIPmSyqUI<&(mQmIV*iqal}179Fqjc$Y)nV~KVFqb*2Tf{q%gNe)lo zOgZ(p8ssS!vilTcz_rlP4UpVr?`;qmsZNNy!{+uTx%%nhlgvXyW^_JkTG8Xc>fh$+ zKS-)!1x$-HkZvUR6sC#b`VpRpEk^l1#!kjU7R0;@_ta*P2x|3S!wJR2=3VB7Ur<==FP=M>Oem3pL*=yN5MC zp1xGxQC20lKbqu>yd|7$6fEz;bI&Tj5mB~hY{Rwkc7J)#g+Mc zHa=%v@VE0hBd#rhxL~tIn%h87s&SjyR*QYh)bzo`6Pz)pqeqxqD4c2!Afm>Skd*q~<#Gx&5&jVT6H>IGp?kE0gE7Y{XUE~mpJOtiV&cf6H9{JU36v++jrRHO9np(}=1M(7X;$Fi59=umLrb8rIL4jfEKNijF9 z*EIpNhp|l_k8kIsao-S>bYIx?#g=G-qoSf6H1tvEXl6lc&Di2J(!TT4UwABNhj>Hm zuzXOtg~{aE45oc+fm^n%Ai`fq<@}3myv!nCy-tRn!HEbHEAV@xSkgFi^J285?{$(y z+Wah2a=nUoJv1o5YIt^t4WAG)CAw%eQ;OF-gN zYC0tRLKIJng}ci23}OMoT@eSybr1NOpAvF!b8ccoYy~|*yd(9mF?TdSfVe871F3I_ z#)$OqBNcM9>Gs#b=>eix%od*?fCgV^`Tu$p$0u_!9fRm<#+$N z)Z>2(lmeg2Sa*5b2DBg>a8Lv+Kxm}14$Oy9Z0XIRhcX&=-nTBER#}7K%!v-h(dx2EYAx_qQik} zQ_lY?_0KMO9)>R@=+^Dan>V;rg14WYzvZWY)=Pc#i^$MKuVTQX8Kz?DwbSY~9Q)lj zdi!GvNFxc#1|J+YS3%PrJC{iEz7el6OH;#w5B{h$4xPax$)xB{h$*BDZ-zthHSCL< zG@Exp#JK{+_!v5x23ge=s=8#OheZ(0<&G5Z8Ia z9#f!jq1qp5PBEV2L8`pMOUInWrTKekiNr@p9Rt~^Qf%EZEt34YLepR{5Z`+Hbz{r| z`x0qMz3V%{h<3g}lyMcsWSw#WI1r>9{FRe?479N?xSjwfOY=__%E`g?E+&5h-Widp z$?2UnZRSE~IpzSUMK~O}m#3L2opp!IT?sXfQuZG_{&Az_|@pEA-UjM^=Pq4%L z)CXvlfGaBYo0bT-B^f)m8imDdl1?D~A!L7c0C7YYyiwZz%ko>uZFs?D{4CaBzmLUu zzc^P?s&$%qvc|Dzt|_-vH7^5|C>@IVY9JwB=h-b|b@q3hsi^?C)-Z_uJWF!hu>kW? zmx9Bnv4BL`?1Jg0(@XjBxVZ`gk9>G>#7eOmuMc=q6MlA!Y`&wcWf{J?L zW@^{V5bEkEQm}H-T(oxmpE%xmp>$bP84b(&+zn0krCDYSBe z(za|qAVw`>Dj>eLDT`d#`#zAkAEs{w=p33Yx_&eSoV(Ut_w~N!Eqm?k?0;synZLTepYG+!yK6&j-mCny74PH)!Z-Rx^R;AoX+((h7O5e;MbnK_vFEku82px7hA_JPo@eaFenxwJ zOOtP~>s|1$V&r?fP^l4q(l@2-BR41e{w-Sme10*9OO>gj(dDQOtPp6V_C4>pPd^J& z8hZgs0JmJ*Vi%Hq2741ybAc<~3pM2&uX2}^h;w6_4(LTg`YGzog9&{~A+KXf4f9|Z zSw~VLx!HNbF-5=`6U*}TUlu98RO3=%ipo`kiKuknwO^>khh4}1XUiV_6H89h`eO)+ zoM#BrTI~b+tVbLR&L<+$bn+5b_cjw5)hVyL(b)Gr+4z(zwu)k^oeg#0R(IMGJ_7$1 zT$8jb)RsMBqVhHH_KB?15lZnkFZWbC$<`GJMeC-6+} zm@hYFedEJl{i-o;C70A_rPYvRHH?MJV@cytS(D5JBs`XF4B>9q=ka@lm2+Du(;?Md z1gkyu8WDJe78NRs1IAum=ezKbJB}%a=W33d*}y*3qg|bXzZEkF$8#HuTsGcI_+wfKBf;#S)`L(Rq|&>6N*RV80g=`Yf3*UB8lQaGSw_3tg69O7&bk)5hZWmL zC7(;>VM)tnTzKk zk)T&0V_qkFC{6e@t83z+hwXngXWiy?tUvu@g(CT8-caSa^cspsA+1fZCXP<|QR0^T zG9oar57dSF1$hy9IP#0+3ij6&xHceO%g+LE3ESpbc=*P6Y;4l2FS-{G()q8eE`Hmj zHusT32gDGxCuPITCflsQqZGD6u@o}oPW4#l3sKzuLv>B*_0`AX%*j@?Ogg*l$sAn? z6w-`I&$Bn>IO4>HDDoE^EIUQI{UGS$wIZi(6h>QE=`M?9R56X`kHI#ap@etZhT~SW zk61(J+v7p;;#NS=C|f29iIx~p?D$&s&>{wEV#USh)fE(tvo70z0LG@W1PxR|b&ycR zzSb5GXJJk)QFf#eL)Sp}lCg?Z<~F2v3LX6jdX0uIK!!sk$$cEuH-jQiLxIxZXE8#A zL&m`bY>@4B;#kbdb=c3pwPAVXb+WYBTjJXUmn^QdiDV?2o*|6O)h@Y}#)KmuZ28!F zU2Wf-$t<5-CIrt@Dy@_LCHXfe{^Tq=-Em=O_B1XZB{P5RVG;N~i!%(=XbId>%7@5q z!dq6cwB~uk2~02mxn4%O*iLa8PpxyQ<0O z3B`L?YqE2C-Mey^4<9S_B)?-X7QDI7;|P#&_{@@Va+Tyi0MhOWu23OXguMc7@DaO| zvnCiCXabq+CRl5J?w`x4OPY*djT_mAdmET~P6iG4f#h0EI$Fdaqdx{TLJSJ24mpkR zkCy@p#>RlKiIdZ%M(HzvRHeXku|ajP0+FNb<+) z^4fO9$*ieCWr5!PnXGz+8LzJo5dve<59%N?yy_J`%tSHcY0+|Ljh+JrZm{Df&2JLt zUuc`Oo&nD60eirh*a1a+f%TupM`Dx)EvIG=b%@??PkH~POg65JDdy81u`dyTI z{q(7YL2VN)%3bE=?HTRrzVLiImYp^_Biv;ba>kB`d!^tnIR5ul(szAVek98$i)T@6 zGFR}7UE%W^Hhny15b1MjlYMt9Am}@_bUDl~zu<*0x2q}1Y9E*V^z6IG$^7DmnJo1%7*BIV*-dn44&8c`e z^_fqOkCq&fVQ1i-Ey{&F9wRjJ{!{j42`|9fbO-QE3Aq{M|GtONNd&V2On@Ct-u|}{ zgpFDdp!T=sF6(gCjzEmN%_z$=(On;XG`*VP1At%`dvI8?gm;g zJLAC&^*sxaPlS`unS-CR1~;jJ={b(0Oy4RNP%9{Z9$oAV4bYtGfB7@j@Z4Gih4R^I zFkK6;OWO=Sz3iA55Ad9bMacEDKKuHUN{sJY_syc>8J)K>haC?PkG<|@9~YygFDLb^ zh~k5?K^1dZ!@pttZBQB}eY1II`RO9-*&jY3*NBhep!Q%Yc{p*I&D`X5wLR#_q0dl& zZiQ^raT%w(`S?3N$-V3Yn84>@UpX_^r#OEKT|A52&} zicWosZ?6AzTz|%=Ox^j@a&OalOT}y)6!-P{u`>VowQc%0xzR6=r}gR_=r~J;`OV&6 z6nqvei|*rkfc<*q+@&)iw}qNC>Q=Sf_0l1;jp~oz>UL1e1R==P??hU4@((e{2rcHR zL#@MCJGWxd6VPQbYEkQ4ed3)y->cCRHSLX;`2Cter%W{cYp$}$F%SMj#XED!6s;@| z%ej0OyA<41gm^$K;JR9R%@{wb4!;w&*e*dk8G_=b;Sk+UAG`+it$FAObrnr)o`UJ@ z=)rW4w5*1SyUezjZ3=|E+ve74-|ck*gC0E^%cIdHhvG39x5IP)h=7y^OBzal?nM(XjA>m!hJtM zm23;}5Bv=-X7B(*ztId|b_~XBVYJWM-7)k?0O$ShQBePUHF3ZUlPV3BE&%*BBwQ2@ z22F_+{P9j5nOEE7Csn0)AIn|-HSgp_qU{y)HLgnc5Sicd@VI}T zh|i}cyV(IveB85W>>%@hA=oa6v`w^1sU7gATDHqqZLEUj?_bsHK&Em!@Cti9!6Rt- z>=^L`yb#gk2Vj~gcy*M^3BQMokwm8dAb7Qua>@_94F%tX$9fX|%shwjvD|^-b(!ut zY`G9>t8Ev(r`QseoaEB)2e{n% zPFE}zmJdovoD{MB9LN;_*ovw$)(_4E(+9I0fIwf-NQEfooi@WXpxZgMw3oLB6n2!l z?D8ZYTnYkiK4k9RaO8+VW*J?7?9vCD_2Vd<^z!dBjzM&-KWLhKzlWBGAE3iSHpmv0 z@IXGeWwM{u^7-<*AKG2_aMz4=g{?A9Z|dgEQCT{aU;ePH@_Lg-VUD?x{GH%G=s)R` z%G-%+db1Bq$}!OJH#Oe~tfk5Rk%%iU#vILCXQp<*8oc^6hK4hy%Yvm%#z1N8{f0YT z(Pxlf?GFE`=%lto#XYb&aT=B7ydWXX^F2*4sqPoWqA4ikR404YZdYKg$<77$e*xQG6+INmlcDxygXZP|baW4_H^P{}aD98l?4NMx4zg zghw|9_?DknJg08!WbSAj^m(_9wrrN-5Sf$*B4u<^#UVxfJ^buQ4Z%h5*ILQZZm6e_ zyJ#3*Q##(WWMcxgat>R_L!}O@IScAoGcD{5be=f#}R`7b? zMvK$Yr#n1?WLWfDB;;o43iLsKGF8)LE?kU*kq~{zI%FR5S0v2+_F3u@YlOaNC?~W( z)w^Eq!vE{z%^ovFsp=!ql#$iQ0ed8Rj;$`7NFaO{fJU|JYtms7Qv&193X}*75(9{v zr(S7;SudC6viCFej#!uyqBhDpnr64aa@_X_Z&vgIDuo{uP?-g2NjpJtf38P0-RV z>5bhSXKU)cZ|h?YRRj4fsh-s|3YEwLiu3iFw{=B!FT!r%X9Y0x_@CNbSK$2({pd<< zXrf(;awS)l^A~oMBX!t4Z|mgZcQk_jX7!MXQ^NOv?}7-R#H?`8slVjP>nE+g?bu7c zwDj5WJ_&ac0dzT8pee-dr;&}QTaT!h9{wG-cEAnJ)k}veg`34~bfQ#F#$1`xd{oX(QGUkn4SnXa6o zWOq@A1%=OLf50Lh%Q&}7`8nWbbgb#c1@W4x28e@b6g9!WCi&S zA)^a8jZ=MCdr%uAqKRG5(K{Q8tV+{(9yYw{$5+s#QkVNNVbmiMjunXvm-#rklI z7{h2-F@3X-1v)Xu&F6T^#N7j9PF>PDYpf4}6(>dwxGAEEuc6`+5QQuibQ8Z+nr;m?_anDTOm(IGpNH zi&=u@Vs<5iFU`RGmX|DK#8OcraycU*5i7cf4&pE4-g2W1f}=P##v)f}kmb>x+lG3% zF`MUMv)0jdBtMLM@6!td`OnPsqF61PgsRU8tWC37BElzR{)w~$(&2011?QD!C#&99 z{rT!O^JTG<^{T0|(L~tSY36rJj`uq$P53u#@cT`e2{jSlSGM)u`dj@*E4NPVA2Yw! zp2q0>c{k?I-92tEOijz48}C2E@AC|Epf8dRL-SONDD3ZWnw{fw4-h{THoE-CxV8%j z%bqM^$UmCQX*3*%;KKj*^=k17BZJrG1vyc)o_b^g?EERn0Am1*JF%D?zB7;Qy-Xp$ z(v9KC62;72VpJW^h~AHzf~9*?=W-^UPQax|qwWt8^afxX_anqHoE>Gt5rAYq^ZjO@ zU-m=2XpZ~-Xlqh>03HIp_U*(C4=z2qgUBgb;X|cB*#zA<94}8>@{cf8#9(?6kP zxhZn(eR&4l)_{lY@zghq&B*+Q&R@IY1g&|E>cSP>sb?lpoR*N{;P$Q+(7T2~>3 zNG9~`kwjMo-&Y8MixZ){;NKFhpXQhP80;#<9CaO8!7ABhOnS})p6)8!*kkO1`co2F zHIT&M3mCx>jG*@bCHM1X1^+m=0q3vjbyQ@g?cMHTrV5e$S|n@r6PZx9~~7 zQ9H>Nu?ciPV*}4gENMk%3&Y#?G7Kyk$HsqHx%997wl1R+L>nVGLs&{1mr%z3Oic(w z%sfr*9Xp{@cD>UC3YspuY@JDpo;`!s5isLP0wlMKCL<1K>o_})SQyvd_U}^QveqSc zLFE#${?Hrb_pvnnD%#HlzVzmW5~P>T#c{2S)_j)(UpH--9YP!k7ktSnMyAbxHqa&D zToi;rrHU1LVX=JBC17%;A(-3EZ^jwpJQ`voVe*G0|KoUBAok;MraklPQW0rBYw^9W z-9++DOcvLj)KWW{aNytlf#^YJ3hRrq(_jnRcT`tV*eU=C{5X2rlrwo?RfzXf1znLa z8%2j8@wa^KL@w(tOu+fq>C2;if+%CG9KKp}o=?Oe)i2wK6=vg|R1a&a`67eg&&G^$ zM-ljmF}wEN^_!I*V?W2MduYt0=spG9g^sQ{EpvCT!YGSIicdcBe-CoC2bqVmFg9 zF$;M*MgwGi!>5}_#$amHXw^hWhU?Els_V@p?z53lMD?G<4#|!3uA1lZ1-D)t}@lsO$^_!Vv`qb@^D$d*kwW zxV|T--O!8Q&*SEVjz-lBO&k^Gh+Je2KeyYuW=yu!WbVfnq66kgN3)4HMmlHiJ*Iyw zRGvF&#!&Fq1PfxE$FuCw#13@*!mW#Dg{HrZFK}Qa`}x|&Lft_o-@Fr<3iHSnN>8Q8 zU4tu_a7#z<6VBkt3R*RXy>7y z+DShi2Dnn^R?XM2Y-1w@-GzN$c=IjC@S{=1-wRWBx{igHF&Q?`d*Dq&^k{(kYJ3~~SoQWTI6;FaqJPrV3AUcFTZ z!&<>CnLd(ed3Wg?&8USQw=pEy?Mc?cs==>VpI%zxX+PHJH&Q{9iYx+gp;TbzVcOwQA@bcb6t>1s%*v&lF+1Z8-eVy|J0YI*B zo<*xL1_(T%3U4o7Q5C7(DdeAzCBq5pPB0UPj_!5*T!Nah%#K`T`7e{}2d1$q!6h^n zY3NVh-EMv)w}aD~^GrIQ^&(L(tgX#ONaXAjolhOtxB8XOo9LW4@zN|onUVN@gb3to zJ$-4edeX9N+W9(3eG6mMD8N~?e(ozvGoyUC-M-*v$cI*G81igm7kme<4~2S+HKGa> z{2i4P93WAV@^6y>^S&=XfjJEu^D9+6$~+#8Y?=NM_Tg%I|4MSG^_dKCP1zk* z!2iZT7I-SQ`ezZLfP=(YM86C{p|y3lQ#+1GP~V@|tAt@MAjR8JO&Q?Y-+`QENI?xt zh_H&3_R0jelRhH)3muc$*;wxmNLG|tc2?18+?(TsO_zXa$&8nh`JkUkZw$jrF1p#{ z^+Kr}m%>qryB_R0L`q<&-!{&&IYh1-J!h98jAlL9WBIk8Vu@*e<_|8TS;7cK(M;wl zwYE=eiB^~U{nSY6_D8;)ix7<@LiQw;Oo7eZ_Pae%N>2b`ZHhr5BMUpZPP(oQ2fX^D ze0CFY>Fs{vb)&}~dsiY3z^C~W1@T6+SX7p@{w4}Yio*KW0T>g|`2FUS=02sFBc{x5 zj7)EDZJLaSpPD984G64amAYF=r^kH?U`CQdq59qUH&vcXTH+}Y+;#$5h5VtK| zyMd-`Y?hCnE%X&C2*$qRSyu5XWYNxs_4GiSRU z7x=OK^$L$3&v>NTIf@_~^wlcSZHGZK&?9-6e=p`O5sT=??Qj*-obbi{-Gd;o1TOE_ zBBuW`t`i}ig2(L$O}6jy$5o8tGdYa2ruluTVdx3-241w%6b9iLawU5{#mPTFIpxeU z*4s-;afv?D#@lOoe&oS4v4l%KIw+;su7}XoFwI3w7orT?uMx;J12-YY_0|^`2waHU z@)fI}woe7klIG^~x}(~|NjZhhcCD*U>ZsapCN)Ar!D;f=n$?!>LnR(;Hn$LHqFHcg zW_0ZsRG?57nZ1SJPygC$B>~1!qPH-pDudkd1fXlm6OP)8-+2{*zyoWim5A}JzZ-{& z_TV;_>t}T>UlN7_NqVD$E&72!Ue8hJ&b<7!ra+F?DZof2{-tQ)s%L060Yn~|o_95n z*V!o>DMYvZMuiwL!`S1a(#<;aaH%Xct9#Q8TUB4rMi^k-0oXoE7=ZL*8qd=QrfF8` zA=VO(>?;$WVhgZ`W+-+ZN^0X6E&Z@&5ZoPLw|22HdeQ3%gt^YUet^0*pW59{i88RR zD!u}H_3-hWJ7!}f;}Z=WO+KRrHslb#oqnddtZwp(h{G;XSl#iK7~C03*y5PZ>=&6r zP4U23gn3Ao!s)4<6fQarmxMK>iq}w)W6^(cbYWd*gyy#136N|-y^<&H)^&8763HHm6O z`SqVYccRuWXnw5)owK7JxI;E-|A1WN>eW9n#i^n^L5yKq1@nwv_K9;yTuwxYr+u=w zvpqc4Fh4GGS!u^67jYuE(@rKiA6?Hh@LbD$htD3XI zK5}l(^CFnu`t5yu7Wdi#2`2LaF(09A?>1+Ax-p%c8PZI4@!6IUjRjiEg*)cI4fZYA_J$P4%KbOS`Kp{Jmi#GK%_&zf1?TLKWmfI;?t}adEd3rC5LDV(u+sY_t8F-Vmg;*re>K64F-cskGgIDa61iLj$Mbd zsA$9ldvwlV1IUgjh$4WaVja>BnSfM6SIwwxKP?avtB2Bzqy=R&Oww$&FzjyIy5VyC z;ZyXOC_oiL2I3OC(}w063Eg28Y_rhaJ=uySxwLem5HMwNZ2|kf@v^RJ`~vGf_-?`{ z^6v9_+GDkO@I2qxEZdAn+~s8ZX)^F6y0QD2P+k=@dRQE;X4L;Ei$U6}%<2ku3hR1N z(B#j4HYnMn;P@pkL9!Ye`Yb?E0Cs^{#ABFR{3i4&)jqS^|1bQ&7}KV?B}6^ zYSRTPD@1MT56E>nagVe4MBU(gPiJTF5qOV@!TssW`DpV>RByN7`BaaV0UQhjQCgSq z*XmPtnnP=4Pp7Bruz1T2NR1R(rn>razo4kh=XrlJp6K+xnn{?O!4&o%m8rE~Y8X3< zX4G7YlrIn7uuR}B-f;VN+&|I{x1qb`|N2il!S92|z!F(3Y$RPX2Dk4EO>L@iSEjc)R%d$g5I!XsD`WQ&7W1hxHI zuZ@L%i`@FTlj`q9I@Ln?)}Bm>HqJ*xwW_s|icRZef0X^X&ZO3Y>YXT5@4cL$=%E6% zv>)K%#S+QTc(4gm@L4qsZ%?=lwfY@$vC>4o{8NgGyuUwRkr~g<0l_#!^{@<8a5-{4 z%HxKU7-8z7DRtgAp8mEsAzSPYO3dONVy-pzGb0FnDbJ>xfDRjzdFfNC4&4u=M;U%M)3H!B!NpXh zw{Rrf`WyXm&oGd9wau;zH52Js<^^A^eAV%HkFTGt#MF2JVz6mv*rn_bnEA@!phu)) zlO-Jt)-;xxq_l!>na`y=WXemA{&U zt&r0WaQJMlvdT9K>DKd?ZFeo`C%5-hJ(bAT39rEqo^Pr}ENB}|6u?sws30iU5JDzU z3x%!-vFW$Tu$5}SQzDiko`W+yE@LqNSda_lcGCCX(jP4;YoVjvg}Z19riHq4Cli!5 zhRJ9w?G%n~tgdohh=bpx2kN+b2n1~@RJgjzb6^duYL3w7ZA`Q-r+?s4g1|eD|zouJDjcKUC|pK*tfZh@F3G zGVKg_k9U`n^~UAH1(zO((f*CoS8G;w)j)xMd!uI#3Z22mkw#fmz}u~s_`=$HpV%BN z#L_b!lU#ZqYx8Bdl5kcjtP?I>+-KOLblcq7=sxJ($hm)Bs3@Pss6@4(XEMVc*dm9~ zv8qWMFLtEcpkpI){U`Mv4Ca-bk86@FB(|TB1xSO$fFR0^3Ta~P5Rt@cJn_QPl!hmjJ#vyulu{;RKe0gH-sZqdJd82S zX!J#-w_6-JcEbCis7o@osWuu4{U7~SM?n2?hsi)?TWJ2q5CiB>BcvMQIy%Lt$BqXx z1l3-`_+4WF*stLay!Cufo(wnIEt2@aK{4qu#SP1fyz7;vp4XW)s)0H%d{E~AI)f++ z&=yKr$)x%a+M4p-Ecb79^N2#1`~{j^Ue>vUtnBiHUlgaZAZR3N)kdv`$S3L zaUi4n7mj!nNR}zQZI?ym#26n4Is>(vPNhbfgK@27GOJULBY>^bfBTl2a9meW(9zLE40yVkmYrL_IaMjd!-OzH|1h^7ah^;aki zp@%XBT!OtgYT7}wep9PclA+7)O@cq|FXB^`=PJH}i7l)clAaF3aw#1W05M+&2?s@w`=!l7H^Th{g) zBzx73CD<>QDm(U6dNM#sqH5M7Hbxec9vZy5u!-0s?({Npq+jL#@9d^#6HW(@CnNyz zlIBvJ0w`Jf%=yRNc*%u+=)-*PZx|q!`5q#JNdpd5N47+_@`lF~m8dhs81uNK0m}Je zGce3T))d>N*E=6`TSn9h?b1^Xg$AmVYTz$jHdP8?RhW+Xs~CxRE2%v%*0;R5$aR)3 zw;Qg^tz$;8_XW2mofucXpO!R}Z`^-*T;sdC4D~2c>0BoBcEb{bNksF0`Q13%Crw*d z1%yV17Kd^5@X?m|$x*VKlHeDCWxQt#2f~31h$H=16NsBCDGul^qGc;YGUR{ADlyeA z%|iPEhHaWbk;e1Ls^-=V`ms+$8u}5nfU+GjVmVA63pU=5$M)3ZJG4OPlV;1uHda%@JtyD4crqKMm z_8^FjNt==GsfaAM2bhSr*x&=F$1^fdRMpT9cL9ao-ZQR?WH;ykx57InCLAKFi2P)5 zpY_FZPa9RVG_QMYsX=`}%l3WTqJilwYkx?A%TcIt24UgbxP=+}#^5Bt`mIFK6!n`i_I*GXSk;$0`nNJfm?Bso_p&5(`U3sqtd4_Kuqj+H zmYFvIGZs7l{a z=elnVh&Awj-#EfLF`L-!p3rLDrOYAqi)ty3IOHlMv~NA6vq*Z;RyJ}~%0@mTy34<@ z+i+Dhw|ObvklTviZpr;d2he>YKyyUz>ivK6*s5 zZnhJ_Cc)jj_4~D>4X|fzDSF>7(}6iibI@k3g>zl(i(>*A=N`II8YD-a_Q4^ZX(Se( z?WY0u^wS}bsCD%4eX0VRioT`PTkcng|MK<_kEIDb`|fA8m&CWbGHbixb_MUefxdp` z$c0qKvU6;I`vU#xlss+mAp*FO2!Lgm0K+Anf@9?UP_~iRhLK9=(=zh#5AHv~=Zc$U z68yOlKzc^kDf{KyMCn)G_$&XCHjycNEHZqlE_z93OSZqsM!6V^%2~4O)@pR zX;F;==fqgk&3hPC#h~>u~z=mcthebV z<<%Cj0LiT)!w8?{wYVKmStoKDw(aETHak`N9~o)Cynk>-aGG6HU!uOov-RMp^=kyV zh0!j>mT%Gv^`XER{VMD@tHY(R*PG!N!bGwtdJ`2jFh|!vz0_t0(c(&2ey}u!)7O>GX%I{)%O+N}m;0PUkO}8CJ zUqISrw>W(7=ck`Am~ZT!c!CGVqDnsCIik+NvB6mhJS|{eJ)~;Otne8*t7zf3<613* z!&;W!mYy8>h(P7@`u!yMx8+=aml@x}Q@o3}QQK06F1(lg=eIS`;m&f|M+`Z{P2!l1 z^+E;_N)aZEcBqgLBj$|2Pw$#gNeIcts9NP9N1}aACX#&frurB{j7~1LNoPu0)DYwX zG(0<31LCnAHE=YF$abFZpytY_{ycln^SY;IwY;QcklStxKE=_VVn7{sK^8kqK}Sz6 zvPnX5=apE)`0c9`yPweeelto;%2c6tqk$X7pPY3dHbN~F(%*>)BoT_HVjT^Eo!x>G z>axT}QF(RK*x;TTeC0@LEP$oBDdeI;El%ZCyw5s}i?+!#8N>tMp%hucNUoBxWh?o# zA8j8*T<1m3cmCU+J=%yGO>awrs$&WEbLmIw{<~jKgw)o38{#Q#`WDvK3_gW4INMn~ z48J{;n$e)C*hlz{pNs;iW=j+g{z}p&)+EVsELQirFm6;Evf#1h(wp!&kGK+?9|YeR zy>;dGZH_!)m#aQtZ|zhK`wKe=)Wz-{jE$!A=)&j{zaWF#nO+fw#m)!|Bcki#{v<%r zjRmJxwnK<<*3hzQVcLrx#Sy_w$&(y%#|g_e`7#=nKp&t!BvOgCB_;RuGiaR@dXG_L#J#f4}Ue7t5@b5{}c| z=~r>#-LMKuXLcJiDCV9WG78;?y^%yGpo=qQX^+eOqZ51BY z_qk~v%J^5lI;q{p5HU#5X)x6N9)kIx3A8JmJ>cI2=Xbig}w_&4}gM;2j&p3V@g^v+JM>NyMn)N8JyVIVc)Uy{ZOwq)^0hjPozE=L^`D?8(e%n4k>n%i zf}L=K6+)I1?V3Sn4!rGW`JNB?HxeUPGc?`sE&e8ov3m0>aE z&(enF19TyFk}`nlk#3%2Ft#WT1v>T%U1|CS_?En!G5Vm7o#J|(w~gYPRw#Hlu{L)t zztCXT4hr}DHc4XOVo=2$u>IST&N!I%W|<<3^( zV|O{0kRi>w{0eua4u#HCNae`6XskGWTp_MMS(z5kHlNX~O(^xzqk(X_mOcAZETQ60 zbVwZcjKb+KxqnkG`#Om!M`a2S;|VEo{(_6ZSuG2p3VIhQm>FTx{k10u;eoIXX4oP9 z0&Hkh{6S@ppY=v^{VV5%nM6^R|9^udMEFr&f}>z)6d*`G|; zMG2a+!@!htUflJ}ttbvo4=DER@8RL*>{4m>Rc>RxAExE1RTE-~BMB7vcFAfGgclld zdn<)U?6iPCP3JJM*4F)Ci|07BLY5;9aNe3Phciaon@UI}edK*PwEy!be{{wC^m;w; zdZ15=M3^}J1|!L%jldb`%ykLaG=UVu1QK}iian?>1(X!~;eIW|w6LJZK=Mr#s-Idd z#MncSng9CL|2$Q1i8VjW)%B!5Ld97+b>ZtyO+$G7>1r2ZI6t}be*HFWhIZ`^7W3~k zcMYD)_jLHSqDOdwD(uZTCaGNBRMZ#2N)$Rpk-nkuEV-^r_x_LXYqO!qm|}b=%$gG8g1&pcw+0>H zm-XWyr~>@&lZdl0y+xCzG;aA({9n_v^lG=M7z-d=Q^?~e7TKC)U7nNH%yPl`+Cyw?hmo}B30JJq z5N_A42_zA4?I70zmVj9MRe5oPS$4dkOw@jn4m-u_Eo85gff$m|rI&*3r>Y{KgX0SH zAT7%%dIX1o^P}cgrGQo#bC@0`i9%^t$|T$hq$H>JUD&5kZiG$d(lM|b*dHUG0HSh1 zMv*=u8w5;34Gvedupa(YYUTy~p&10{JN4F6t12)+Hc=?ZjdlC4SOVy6M8kvR?4U^5*E#qMsD0osVvJ4{l28Zgk4^bc zn@AKMM2LSs6@wuuVpIiT8weEQbtpU#3&{sfh(YkV=ZHM4M;khUY8(0Z7+@_=U z-(wH?!EA~P#AgDAeksq?g$eVLT`Yv!>Iy-Fq&hHY8M$Cd{62uP{oR3U=;#aQ~S) zs#Tns9Qy#}{H%GELg8Qo! zc_?>NPNmh$)Z5weERp|a06c2ab~Y7#2%>oAQ8CknIlGj&Z!C29@3*={OY1^w1P+#4 zn3iEOIU7W9$NlP}x@`IV0llS{)vd$cps=xTBUVWp-y8w6k`KUkFJY0#0i*~^Hq8J$ zBwh^!_Z-Pt3_$j!6h_GTe@TTiBraiL1b5Ps(7fhueAic;*clSY zM5*{3ztG>4FaG#cQjgKy?0{}r0NvPy9@M(v>0LJ)!wzIsaD zugKoTG*dRUiFEJD_7SMQ)Ix%*LMFG1v~&$=3p-!A-p5xJU0Os^_*&9Mue{$W(F_0b zRMp62NX#OfVfq;&q)qWo8nR%RD=GXE@K42X)nl2|OHibIO34#y#f|OnP)_3p75kHr zvvYw!z!P~+*!_pqvzpK8tjWoqqPjLj6ytYc*{Bmtxp&8J(qag$`}mEmobVWO4JDuq zw3;RH@frx&yTI2zuVwrR6T6}R#V{4=RNx+SSbxdqc5IvWX24&od~bsl>tNF5+A_HD zHyNaBkX{7Y+Jzhj+x-uV()#rEhaw@}6A~`-{i9!HGPhkOB92fd!kut0y>UpD1UrcI zRr7T1xkIn+YkpSZ^H85s^Wsul?u}(Q(Wkh-9w`$|MxoJEx%BR~qjny`BuXWGE z5d>IQ@oH~K|6n&#WzJWB5*3}Bbb71DkqK+vo~iN@c_Xwu4({m*xIB_qD--=@aO_&L zP>e|U&~OAij*FXi%AhX2&Z3f+;QZl}@PV@P;>6z38_CqG&Bdmt9 z5g2^X@lsC@Z(B@4;-SW0my9h&v-CBt+RD=_GZch_96LEvRO*CFtAFwOJdzKXcMZs`q={a!7hhJ;RQ*yb$x(W;5CVC;@LAD=XF>;9{ttqN0s98Ja4X1 zMv#S~dTE_^&FdHGCBYE!QQN=mF_G@;QSiILY7cG0lBlrCBTvM2^E!R0fURBQ-&Mr9 zt2NP3uqz+hY{c_c5?37x|GWQU6L3N|b81$VSGz&sN!6ZibW&1drc>PZ=N9z|?QX4a z5UX(4LRder_H$?H@ogjuQ4U2w)zj(i&BstTAhvj^^DRkNu+5`KWQ)Tf$Ha~NXJ#Xa5%j>C&7DfWzV75SIxI^e z*?X^O@i!~5gU>B;2=@_%?HTT!sP%RSV%rA=_tD^2x#(kbkuU>-S;1p1t}vo<56GLb4W$yaXjy&djmm<{ ztd;JyT5Hf@0K!Pew`cUxbF5BV;~TXb3T-CqVY<>ne?0?P{nxK`%e9Mj!3_hPBB^%tN`ZC269>`VN*QV1 zB81pd8V!-SQ=6SRMI2W}9t&@ntAci6#F(AioY{f1mpA%uA1vXKvL)!cixUb=z??|( zLKbLi>#-=30QW*a;xXyoK2QZ_No2r`2EjA~ngSzoGNW zgHvGe;n9<_!?eE`e-k2Avz-s2$pOEHF?f4KvJbsS;9;Ym!xPqI!ocQUg)uk(%qYU0 zS%(F0gYA*%Id0I&m8fmtu+(_P$YheEUmhva8>)D|&6ZTelT(MB@&x!M^p0 zUb_4zH7faia=A%uy}KH z37ClSUU%{93X!!UH7Ua`9htKcCOsI)Amw=Y&Y-4J75u9+doW+Lqkom%DrO>QAyz69 zJu0*f`E5%4JxTqsp=Zr26T8`N9@8+{g_d>?hWv|n?bPD*Y=0`MEr{Y*zd-Jzo1Zli zDKrIf@0XKHXub3d7MIK)Jl@MTFKv$TSvQY7_4h*;1LTqD4JyWT@-0>TW&1yK&=)GT zt66ouTTOeV>vqTo=DIb@f@ognrapaGGzU!^Htzmk#BUqVcAuw?Qop6``+R(CHP9>M zyVWaWSRPqg;cl|*HxQyU#-CVxZP@7;+QG+>I`)pU8XMfTti|~-7D!>z1w$3^>sG}l z6?$f)%|_ILXx=7vOa$Ry^{rp&NT0D}?uhuxrQngZ`>D*dqw0nM9kKcNL9e=Rs4d?NH9azkbO@^!vAz0>AzF>(F{)=d;dU`|f+*z4x8_-YdV~@85cF-94?f z_Bwm-v!}C%{^oPkKkGNF!%Rv=)1+|=r=arRa&r~ae_(I*zg8`IZSpmggoAGW^X7Ft zspRpy3e%I($A%4=5T7gbzMYI8GbeWOMVDJTrB806FvO-!S(qrt%3AsTA2Ceb_;SXk zQY?x8Y}K{(qn(_5Ol8HIHfa?@#p}yWX-BU!Hf?f9Kg^%5SoV7iQ!YMV$s{_Y^WqD) zU3F|wx2e-n=iqhDc`h5#oQs!Z%0?sE15A%xi z+6n0g9T(1D8!LX{Wxm{O?VR5pF>FeLj#$~`^YNQlGTk`37COq%?;)C({yaRtnM75y6|2YNwRwfb zIlc_m3(3H%FB0RIvT2_|(junz{bQG7sMmsi*4dmDLGj=f=<> zO3;Jf3#GnLdgWC&_`iV6WaY7E_W|*EEd7e_fA{4xucD6PnNHck>mU&M?i-7zuZCGO zSy|6cewOfL%2RL$rEFNQsr2sDEhbbPH{pGATeUJ~;a92NlLQV~`M_Ssd+15ZBQlsV zK^9k9^g<7TLvai2_GDKXDs4}-^dHp6yo?(yOI>r0xw+C6=9S*v%*s{EH8`#L11`a; zen&ZsXg0^`pj%-qon-IUgL0ldinSex3X$;q^DZ(SISTNB*$wD7;8j!l`U}llFu7Da zDy&(%(k#H}M$?j}3~{3h2U8buSh%?8ntdjkGPbXH2Fib5k1oZ1N-=N?cqpxE*r>E3`atSGRBR^dIwO2 z3Abt33w-i~;foi*46Xzm3*>Wb24;nD;$)==``iJK_P~#UixUEEy5yj&Cx}sp z$e~Oi4FxU>u71aj{;D_$;uY4No^GXN@o6Q?zkBy?Q?u4hNy}r`=i6m@N70!?J$R_f zV_u!0j=f>}&$~C|yPDh+em(5x)6M0&&6__Ne}|dkC~ynVm^5r$)8C)610mgktaQ18 z<`5vK(KsL63CN+i;Xa3^&FYwsKb;n2o|Q+(64AaMi=%z#$IKH?HkI^ITA1GeSrOa^ya{+Ukd^Okz(;``sl`F%!DO9~ zAv9C^`t=^fTKi)IrZgZc;Laj0WBf|XN? z=fyo8`LX-9TWgX;;U2Z5Fwax}3opddc6~@I^ZA!LO8#4#-(YqFUIY9ukQFcWI~d4D zjC#KVWP>B{<$}*l?Ru5XRo9+tcJ5+v7GNvIUUM>715e5jXxyZh>G|q&GSy0tojZ17 zIq65z7<+qJDEL)j$oj(yS%BXXm{xo=h0q6lzE?g}ghMio%jvP|Qm~0NPdWK?rDb_c zc*)>)<(UnOU*W7prOK&e3)^6>R7VnX9Q&nEo>*krDRdbR+AJ(!g2? zfy{phlVV`)3E|Nk!cI~r2Nu6kN4ePOrq7lPLW_= zh=f}@)EG&ZW5U}(5!k*03Ln1N#8!Own;Q=5l0>XH^W|;_JsYSfz>0#sN1y*!xcdQb z0kTp_2e%_ocsYgShQoH4`p(;ve7Ol-xO74h_JGRe^v#B~d*V|KRyMvj__Aqd1;a)p zJ7^37;l-*Wr?aMI22)|BR1Q9f$G-Xc=PWv2U-o8S$DctTML+hqmZ)sX&~#NDKOFsu zFLxzq)4^&43jN%Vmu1m0G?iK=oggplMA*9mS!w#ZsQqS-HktJpc&-iea``bv-zvj5 z>m(Cm{aASlZLxDN4ARP$5x#>XhEMV3%n!*Kp}Z|0c`D9p`JZ~So6kEX#Jfd#Id$Wv z7r{HA-}^q_v=Co9=bI`sms4SW92clenF>RiXgQ+J)2HOYa%0Hx>$}mTX86zlC*r3L zgdczs_SvV)UAb0XPM`B#QW}`rgPNdzLkEpbh>N@zTyTlc!%k6N!RrttvSljFD_4wH z!>oyBC-;y)B!X^M!~*QS3NR`g{iG=$%Er7PKt=);VE@s&QyD7}z+Sh|@dJO4SMfem zCO~@#T=IEVd<9J*1SJd=ggE)nP8CofbMIgzY^=0Dbv{uop|p(320EwX z?UnB^M<0c{(#!89NRMeVCi>!9z`@4l>};?w!k+*NP{y)l--=!H`?5=}@Q44WBk)uq zNdEJ;dhfz11ip^6d&`(fHWrAXr;J#_Wt`y(Kf&@i@O0p_K<%3T1$$dy!h^#dhE4D& z3tZ|4Y{L%!Sd9G~2b9N-z(D7d)$%30gz39w-=LR_eiieSc>%n*cnRx(5sWglv&3|+ zD8Bfqa@(EmT~+>SRqw((=91xhkn!ChoD7t1GEXQt<>b@EQ}_@!r$0SNaCrXNTlG2A z%$_3>g_a{BW;*2-R0d7x`u4E5e2IPGU?-ZeH89X4`HgvPU6y|;7BYF8z?p9ET8dwk zk1O2-z@z+!7DH#>zWy zm-BfLwkCzZ&G0{iVar#1C(B|r9r?@+>pvu`675kftZW~$$V%W7;K#tZK)&eAb03)h zZGc^X=Kxm$UF89LI$-bhVjxGS_W=10F((M?fNbQR2a+xw{DHu4fERGJ99P_xDs^q} zV!)G2V7Z!YB~A3O4dBEF&2LsJ{n93@8HqzIY12wrilbyDYKbcB0mixPae0MJb z3h;Ca$#=Ref1Wigl*s~W!LzDY=BCw=vLvx{E7VJ~pyG|0566!5^?Jo~>{Rb?_+z`Zf=BuPgKY>NFrQLENd#ODOkhYw4F3!KFpbYux_)4AC}`Bw z{0XdMfi68%R9G>-6apnKyAltK)aHX*KORvreI`5i4hA_}G|O<1Jq(Q_A(g=fh;BQ~;O^Z0tc0dmD0e1Dyyt3QJUZJcC^x z%a@wz=6cX1O9B_dPvYa|&2x&P&h*lf^kc@3@Y!C1!xcO~AccL8`twYxm%4Y3XB6Vu z5I=&0WR6yOtV#W-r@+-$md&E$7g+L~SHLCI0?230Z!VYi8kRHD#KoypzEEZnmcUl7 zSUpY(d6gW`>N!;VsAi*z$B76E5koB@*!3jxD~NM~jVvG?;Q>@Qnn zhk|i(^b>Bt;FT8GP)H@fJs?-eMm_kjbOQMS-!?21!gqu87@`CqqZOou(8KgQ2weJY z8x|6?0ZeFEEvGtC*mowfg+I9~{dG;t)RH18+@+L zu*u5Je<}R%bKqb_Xt)8^Z3eS>K^?i@r$~{rNs?>e`hQ7OO0sddv$X>02}8qBgp=XE zkA82y)l1H8IuReLC6Dk!lZz~7O#KS`s-~F_$Bi@-Cyy~3uy-H?2f)qVKCv0_FW`6} zJ4x()g=z};WCoPCF*6oN&4!{rUEG16P$=Qxeim=P7aJBfVC6|qsB*h&V}glV)ygN*C`VjS!gMgK!Fm0xN`g>qZD73 z%Fj-sUi6>(ks<1A(Ee!9YfLkI&R1Gw}fGH~{ zE^j^NnBzng8w#SF$m^XHT%bTf9It?x1!S`3^IyAJS1=JAxSoge$!a-Oy?Dwl!B5N8 zt5%p_esPcWBZ4`s%mmo|e*>71p&8Cf3$3}_4A5xUVAML%Eac; zZe4rJktCmgIY&0O&HsEhMl*|a!5M$%18gL=a1Tt^nw)nY+8B)s@p3B8 zgN3l?I6e3n33=oR&au^|O^*3PjG`m_G_57=LNw`|K7Ts8RAI`WD%|=r&jq-G@2acH z1`5+h)58}e4}&nzJQo|*m7FGn8Z~SV6E>w|072bJOx9f^-y0IpCD|GhZdi_2N}lLR z!7@CiU_j{9-&Nw7`Ogw%;R&;@BJz|!?C>MBVIe6S3ReRwuV?0m{T1K?o}cWIxaO+s z%*{B*iM=r{xjY`6*8lV)mK@ut>@!p5?!OZ{u~8ZovbnV6 zbpqkE&wplhhg$ut-o zd`80GIAVv>Ed>e|aQro@-QzbbwLvEN&uL!nW+y2BSBVWvLMtPLng00YC{x}f^vTL$ z60*#^prc>kMPdd|mhvBkQJF&g*|56$`bwOp-KFEpL56v<68MpsE}a;_%nilI=Y6_k zcNZ3we<`*PcnyowOZmedg*4!BRPI#7DF%gpPrN_iccsnH+@$n8s)Wy~rCHdtU(!$bPcCZm&`sHp2VDhOWR~RhSPx&B+D;NM}}+Kx^$-}f$0wj z^M|Gw_XJcaf7ysW3w(kUY!t38d!A`>e@i*`yf8+(gm4^mtB!>W7dB-uWftsB>S9)| z{=tkGIoR|c(A(d$Q35RUfmMOifcpyAX;}cgk`XSzbeMdDqyyp5P%4M0$HBc5Xq5MV^s%4Ahk#+Ina{TsrB1M}_U!UKmiFjFmeKr@L z)mMT^p9#NDn?zyu_I)@=9lRWgB~AGG1LO(_529AE9*bE2P>=0g89~{6D8?m`Ve^Wu zAS_)0rB7l$20z!R;7AHH=acVDW8AGEQ!J24(ejfdo**y?m#F#U(J`F-9MO0X^|_ti zoQ9wvKaTBxxMZMcRw(}lxcpA0qdYtlz@~$^z4X!i5`StRdPecjhM(VXJVW-noXWFWx)CD=%Xw)&|AE+?d;4v7I6k$= zj(a$Ke%__yLGDH@HZQ0Pt$6~;%3*E=Lph3-AF)Ifs1K$5QP@bUad`YuSRIYVM>#~w zu_z+>53T+lsKhUlj2$;&i||L~N7IC(>& z2dOHX(?HW%>3E3S>wSis{0AHm*Bi3<2%6Ztv6Oi2npJWrAlH#|c^?~4;t9u}Y!1e^ z6;Vf@+wyx07AP&Db)`oNaC-mt+qSq)h=6g(h%nBG;o-jmF27}6y*{_qk<&4qI=9M^ zVv>##IDbeyC1HC67LxEg$ZX*2z_WmIE8oabgAI`vlJV$sE?vL&+8c1u+l43xcsNyx zrhP_v*8)0t=uAqM-Q0jL5B5w(9ulq3pNSscJD1Tj`0-I+#HnRj(^))y zI_edUkKsAxr@Ryp&Q$ke^BPwHs|c0mCMpk(@$8vc(R~kqce4;=h^7w=_b=YZbU0I0 z_0U9}HkMh0T$_OTbd{mIyk#xA_2l#NSbGngPM+Vvu-8;~^M{`_1v!Ob z^<liw_NJ;mG$&~I2oSdO>j<{Y0_6A-JtOewE5&0+$Q-C|+ zC*#BjB7sNuSF3WDse}77iXb1PGO&5gaDMRT^jNzNY)=H5;I{+NRhZ(tcYe5FfW5jS zcy=8}jqckYJaOEMOxNj)eO=j`jO^H^{50Z5Nx@uMLHZS08HHGtw zVL;~b=fVCJ_rkg9bMJlf?l__fho~Oen2B{21Q zNV0qU+3-$5IA=l%uzq%(!EBiPVCl4b@loH<)yO`1RQuR4VfY)%Y9;s{dsh5boA%IJ zcTNwuX)Wc8V3JS39eSr8FgIi9?i~WiN_?{ytk$xy6sCh8-EX=1Hd+N#=U4l@VA{5C z9&S|F^Wuy9F_4wmOyHNmRlqDD>5u2$i4Bt;Bse_(u+^m{r+ZW{64B06li7>503WFk z)xEDwH{Y=achrY-e|zt~FPLk}6f^Cyp^}^2G_Pr41=9ePF&iKYN5Z^R9s9tXuW`tMlytC!KrfzF zaKZT(Yp~p@PKW4^pY`k4VYOR)y}^9kAF}pG6h+HV+Ui&xroh#oT;i|%^ba*G2_IXO zFB{X1gm>(8)*ue(!8>t0NN{-mVe8%M!IK1-M?Uyv*Z0rF?#uA)>0}5U(-shwC!h{~ zGvsGkX6I>(FC!DXsG19XLvb+|1_IeBOn}5*K(HfO2;7cqDq%D6=%bI39uudO030>k z0vt(425_^|7QgV)ATzu|GH>3e8ccJs@9^yIB`;Iv#^4Mt23k3raU$yrFLw0E%^Wzo z0H*_Y_yN{_9Lx>Q-#)WsI%MW>#IjK3&71!zPWjyvOx5YLB92>bzTMw-{v_xJ0;5i~ zsrayok4*ASfN%77;lPla;eP=S?A@xB!^!8NY=;u@8{IxXJ>{0V@DyM8o5I`n>j{TvEo{JWY&`7gP|ez|Y4q zCv1c)FiuzDt7pjMJHe4WD@(4xTs*-HL1FcroVF1V^rzpqGHCkG-4?O|cZ zD^vJI8TyeO%g$b?isYaU4 zl#HovDV5bCy&{5})!9S~NN}Sc?3(XfBkPkPmRSJYdg7!do3#A8Ncy`~)L>1r-kXjH_ zPi`*r?lj>ul?F01k~J!nQ-(i;15lwjumWZCkn@y^IPOYqTZ*7<4E_Vlw7=#}e2}L) z(*GXZE8_KvPk~o|U?%BFF+P-pgYh!mXifqC7nlnEM1X6&Kl==6AJUN@z&&UNdpda@ zX;Lf8TL<7KAocqZXv+g^(V!p5keG7j92*bzmajO^)veKRj6c~m1>Ur~L z2M$VNCc)&D!yX*%*~3;=eD45Rp?(G&51a*LyzF4y4a@`*-a~mh=%f|1-YCiUha+DH zpc#S13t`}N7@tY`8Lp$2gjopCa7)3;Rc!AC*y(WP!}>)rTw}_Sumi{^6y@T#W3O6hy{+R*%a5;D0$MS+nfutvtsC8#O{~mZ& zWcM>DB6J6xw6a&0Ds4{3^}6n*p#Z$hvv7xn2MG?(pM_08PGn_e08~BKu3c?I#o$Z& zx9<_Mvr^EWt*LWQV^?S?lj;6n?2YlDfM-u}l<(45#A^?0pF9$YVk{-Du%>n8Sfl(?I!XUJm4N zv^`MykAwYP;7PzJ&=5rRJwoJ=X$^$p@sIajcrxoAOJ5e|8%n_5JM&t8C>4&-=1r;C zl-@II!p?@AraqS!EThLE@L;~ClHt?S&Jl|MM-LqB3W$Qi(JpjXy}g#}kkP&5o3CYo z3hjU$z@4;k-^(&waUDD$Jn(#6NygP#@_mIw7QU8?y=+85rL|kbGB8&w?Q-5pLUBw} zAg%mP#Jip>uwf~xj*!Xn!SX3B5pHrd?b|&cmj_`K%b(D~qKq3Bl|xxtk5F{BV4uzB z&z46C$Q0(+u)S&W87ZGXV#)i+!VL=_^8<~hKX1~bk9~M5!THVm8?{gpnyk3$_#R2@ z2f*(+AS+IR$6B-x9tyH4p0ekn$IN5vE$o8H3L_afy$`^yVW%SnK@RWk_J9>ys^q&3 zVXTagBt3WMH+kSurx*Rm$ZriEWKw9~Q@*$QzbcnM`Dsae&FZzW@8%IDqsbvFdm~Q( zS&^p$PS11$t^&3LO2x%Zq8`+N{Tk05wvJJc_b`pZrKY})T$0_f{fi)RNmv1nxxkXj zm&T+bwSde=R+goJ0$#@Xu$c7f*@iPIm7Z8C)IMJD|(FkId<B}&#=mDa@#qmv z1S$f1i)L-jWtX}-;y>^m0Q?YG33wu~AdnRSdm|44*;=#$3UCVOnrp6$7dFZVy!Lwc zz!Lnv592rA!?U}WoFDr|KL%Po`R&GAd2%^I`10Qlyb4$j*c><)$d~UZAZ|@O-n=_( zlI%d1!ewPqW~euWk}ZXHFw7>v1A(c44a+75@+Q7v@AP*%`f+q@|3bKNVNdND;Cdh{ z%y)sTl+ax>eSs5!cyO5#;)^5C08=W9*|WYil`GYtQ-Qq9r(`f2p34}(Q=JD5c`b{M z6)RLRkGJaN^Iiwv6iD+AdmvN7Sav(jLi3$U_n)4GcpI>^;|^sfs% zpO!ShXO|AZX&C8#GV>eLqIo+x;>7YC1hXmd2jEN~%NzAM0;oWmqQHBBGk|RL1gU(R1;M!oZqnKf;Z`TEOs2KT!wKg|Zf zlD%aN#0T?L{MeXy-P;*cL^!n+6FrHw*?<*d#d=68$Oozcia^>mx)Qd*W zjU9&Z)($9(!N>rbBs5+DP2?(yW?Z)R_&Hs*L=BC zCVmmanMJ<5DF=dX?71OuO* zjcF=qf&ih#%Nbk3TO>ob%+dWqx7Wirk*w6_suRcP#3Egn%=sX@yh3@j)2{bjT)y`6ecr&0!Pkz6Ff>WmUga(aeZ1&8h zS<1AQp|WMl`?B63a|CD&8sV#bccXZI`1wM+b-z1ovL6RKBnJRl!TzdpCXb)*=tVb= zU(4XxXBG41lmc%~p&uAUR{gpU2I-4(sqxV4_42?N%Z1V3qf+MbpW;Gs%Oj(m4IwGx`3kU;DQ&i}~*ZJ53TkV%U@*O>I8#xiEF?^A_r z=bq`E@J!?@TRNefl=t{@YkghgbvHiEO5|4 z{s<^6up&G-j86qGA%LR`Il}$HhijvU!?Fcn0uZh4H5Xza#T#{zIty^> z?(Vx98We6bW6DB&kiA>vQ6!JR=js^`*n?+flMGl1tYrX4fXyDM7pL)by!Y<=%#4q| z!gsd%a>!?#D3vXrtYG2@<@32K>LRnA7dP5sKyaC9mvov|BWVB#u@Dcx=xNWp8$6 zhojTsZ%;5|Kls$#T>duW9m%3BG_{iT{p1;%-2bR~`6WC)74pguSBrTt9rj;5H?3^! z1a85I?yR%UN#K_Nn|95bascPR@j0L5mU-&EK#z8@9#VR&zFL(0y(=Ia2HXSu6UdRj zfJ}$MmW-dCoOY9MA^|!1zY455`sHX{fSWYsG>uRi-%;~kGj-CJ=7Gj7Wpx^^EXR3h zhsbmyPtxeweSn$!=`wTGm1Pp%m3G)hFze%~uB>Zec=qXDa{9*Wy@wlO#R^qb1)691 zj+Az!1J%qiNa9B1&Q(MaVZJ<|=fwCWA z{KWU=xb$tm{$dK^*p}n5KY@z}s1pxglp(c!s7G2hG`#Kco>~p$1(dwUPv2MHHoJLd z7(GDSe^4JYXYNeuLO2uniP*CK`~j~Afg>0+ZTbZBJeERp2P`*u*=U_y>dmWUxq**I z&@5c|xuoeYziyFb&qra&H%1lsj&zo6?hErX4%LwjRhO=9(C|u!>jZ?b*S(n}Az%f> zDa+CH|7hws)2HuC=KjVlvgmk5k+V&Y7yFqG_=q}t&P=(rkq3qbn?Pfz6iziK1GIi-5jU)4!Z~61v{-otsotG^63Y{KCDZuHdoz|WcgPlWmR!-qG@N>_% zm%J0*`NM<(@J7*&PrcyMkKX?KNILPeCU2e{fOn6bsvrOiLV&s0GUWrSmA`b^5;Jas zOBab6)JZ`aXw^&2q?92~ODihmfKSt&{PBzp#gW%eo0cw}^IAUSrD|9h6>4gk!#|F_ z*h;rwW8QgtqA6Y+drufjuo-&NNvD`cnmuVaZ>k9;;UHv&3B4vdOmTx?_n*7X!!7C= zel+&r3E02$+{vu0Df|3h5`>KBSEbCGaKRLQ4wx0R97kbr{~hQ%kcG6;_K!+PeJm z<2VAH1b%y|cuSQaUC4yAjjH2k*ss*2={?xIw~CwurodNXOZ;KwwgXs*4P^6{4b00g zzGY6rras9dn{Lcj!XfDKQYY#riretN|N1+h>~+XSM}8=;+W@?xj)x)9gWXD0|_k1^T963CqKwW zn7kzJsg5npoBetUrFW;ivWn^RCj?~U@cFd<$c7~$*ym3Oi0DxMh~&8@)A*Rgdjrx{ zh(94hegT$V3ws^6SHBKNj1O`9TeKn(#cUy9iEzroBCVpYIRk+|t^3i`s8v4Ps0>8t z%RYG;JG-vy7|w>TCS-Agp933DP(l$U-2|FURha6vYv(Q*mA&*b-vbC;w+8@`LHtm|pT`FFq z!uUD@SJDy!j$nJJ-^^K4%+;mOHQiq9fPCK+cvAtz6gs;7NojPPF>?yi?s_RtHa<>& z)wA}nfkG0%qQwg&{#4H{dzh3s$w>h5pe(le>ci7JDMwsTP_1S;*QhWOcN&I13rt!C zV9Amf8kWw?313d*rLs0JX%%o5_1HV6iw2e)rBej8(lsn({}{;b8+(kh(U0Erd)BH zZaY*8u4I}h7f2H;e>|Ny>>rDva_Q?YFhk#dGa$sTI|3sce#a2a@)yYX9bvqZbHr2X znxdu|df}^9uMm}0?hy`G=AGrutr%JA;fpq&)iBEdCuqEBOjhDI16_qS z4AYF4Uv;MGixqpkK0uO$Kfp|MZuRZ-w(K^81ncOq%?m znUBlEG%hXc)PYNFyFUMvlG1d1zGn*iJoV>>Ws%ET0dh4iULia)zW0lvLzTxf`ECjD zP|?3|cAoM(UBQ{>mwN^IRSOZXX5?&KT0QZAxvF$Ax&MY!RemF*^#(U2^SRz1jqfCt zua*Nrz1abIjve?G%Fc!03xWB(x@p31_MDkQYk%0lrUs;`pRSTFsi_k}RPO}-1d1dM zFAshGB$RpX<;UmBK_17#;;HRPD z!sPzMHehyv8J6Rm#ELulHpUCQuDIeFbNsO<2Gfk8w4=UUputUpUw!?B8S~)?d?#Z6DFOH$ zijB&r3BFk!li_tEz4_hig>J7InKGpZ;$a%_3gsEING8BMITyG*aAx~k0u<87b2imXI&ll22fkw?Y7BHP%h8yBMf0dDFh7sdG- zp}D~3#qNAf1$N`NfVI<@2)v0FtSB@*P}Yan-|T^U=2!JP4VE?5(Fo>bsw0=?E8v$3jrFvApYq;|36og03$XKhkhSkKmnqZ+!$x4T zcwz@1TquSOfw7BGKmk6l@+ zOblmZN!i2^Ix&`qG`t*9o&<~nMM1O;=;Yyu{uuUnNxCFSho_-%p49rIA3AuN7)DmyFqScbAWjX z>`=4<{s_!eC!d~`!60C1U|s;z?gk*sVy1cS>qR@$o-b8-V5V>l7+8kFGQ;i{L6fX< z%PziZAYhL8*Gd4O2Aa<&UYnc#|dH7<#*s!Kp*%FOM$9uGLwx%O`i$&gMc%D$>@E* z)}YBt;PZ3#!jB_tUykrI^D5F*2_8lMkszuLydHQpkeQuI9_MMk0DcU754Zrhw}3q( zR@ST}E(4wnJRGRH?Sy?La6XWQ`vV{gvBFufuz@M89w|%~oY}zXDZ(@L=G??>z-xge zfklA%fvJEm1V?x5!2Alz$31ph>4JZJi z*8!;?D}f7ueECxW8>@L9qT*h2OFO-@ENNB&jlV33S>Pr4HzCF zg~)R3JO`Y_aNhGd=KyyD^8~^Pk{h8+XeKfX2<@yyn7}^)e+K@Wz=S*$NS${4n~G!* z_ko~233xQ{U?2+w=ZUgRz{VA|N1@@=F{uJ1s0{c^7e+ukRf&D44KLz%u z!2T52p91?+V1EkiPl5d@us;R%r@;Oc_`jC|dHIbcRqF7Y3qQ{BV?VzW@Y?|Ao%x}V zAJX^3|DP$q#S#4eaS)K-Benwf!~fnCU|qrw-g_IkXylX>k#Nz$7r?L{{PueuF#NF` zUh*w)E=+znPX(7CfZscl0ly(H0EXjCMyr1O=EnsltP{CVVI`3D;r|&()v$175|J-` zI$*;v9=OOOqD=DMWzAwRlf|MA9l`y2g_h~^%on(r-0PYuS1yc z^MEe_-vy=vrgKB!Z9tZreGM%8OMqR0>obY`IS}(fqas(^+y~?X-w9-65tY}cMOuc?qnL!||kYzhWaUodFNiKMbso zQpFMWXQPk~?nmHmV3;rLW(V7Ebiy*9k02u~b8om;LyyD5%Bee?`R5>jJ?^l-(x);x zjAUzHDonsz;&_BQPs8Q0CBOf^O^#LJu??Y9UzL?Tw`#ye>XE`^0zaA}EbPtR)2TrA zsB!|=f{DG7D6kbo#{t>k`aoT&b5xiH!ty{i0#V_05VDbv0&K{s=gtuE@o=vN{wL(0 zsk0v#I5N2^6(jF3FI@Ogvl+LP{*CjiLa+jEru$DJe{~*U!*bF9tBkxbt3wET(oumO zqK?2uKt6*HU%_z+kQIRs4d8gw_ptU&FgpWZ1G3WES8xa-Vz2eIG!fQC*uXU5nFdV< zLs>GFy!>ih7k&h-4z}Z%quFz2sGE(%g~0Z}4nT9(ndizC4Yd2fBc{CLV~$1`>k5TW zVUhBC#TC~Y|Hu~-{PD-{{&|P&OkGC*BycDEhQ)b+~LZDLp5nscn(;liq(?wIKOvrG`l^ameVD!QDI|J`PLfd z-n$za9HoIfP#6sGUY8v^cbac;zx~IbPBViBzlL*_RtGe}G|@~r$^n^Ksi3$9@S>&j ziaDoxo8j*aP`O9JlOqXMb~yp|HUzH0Sze`3$b8_rLOoyUYW~9gDS#t^Cjs39(G%bl zR3 zg%?~Le>Md05J=mokn9)WI$A>TwYqts((_&Wn)A+MrwYKtvA{$5o`12uI{7Ai3LLK< zDa^~^?+S1As`r>4ycJR9+I-+C%HGJ}ckrxCBF~ipHZ0kd0Y8pkfB6Ls%Rq?Ki1CpQ zcicB^(n`ui_);~A8>IR3<(IVJrE%9>bG^B*@f|vvy%scg1BVE0;*Zml2N)*HefYmN4e9_3YZ&QW zz^n~C9cXw6==?c9nDG-wo37p3X{U)nMSy%?$^oYX_a^Y2Y^D)(?$F&Fc@+9>NU!F& zkLg_;;lF z^Z4o9fCDoMUx+J`$jQ!&6`OQxaM+@`@Io{y3ijFh^>=kTLk0lU{G2hXT z$G+EVSk-L%^;f5>&_Z5ITnnVZCkAI2~kc$#`7F^`5Hd(6^1JO8|k4DPiKQpV~> zo;RT*kHGh!HSF56^Sm`zJTEIJSs74jrupGV9Dyrl-N4M0x%NggYuY07c&kqGGG)h4 zS-0L&%`|H0>MbhK)YHVbdQS&$b$R(O#PFAR>9FNO{Q2YY_;xKnLYI!;3Ch+|6cnye z!C{@|?ZM;Bh~bk=v2!mlO>i|YM_m@q^=R36w$T9I=vnyCLviJHZMm{nDs`O1ZGrD{ zV|DB$llr^?lt!I5t=7;HEz;=_j6m75_kekKf#=R!tIa>=?}iNt^?HKCMHK4 zB{&>U*pg|S-iQB(n?4>i!jPHlU1;@KN4c8WMtM5S($=2bu)45ZM=rA-PmapG@+a5G z`KE1HL|K~|Vka8~(+_YWhGPVdZl+HDQtqafARC??zc53d>dFyJSM*vvU~lar&+S{6 z!ZDd1{8rQNEmZDSkY?K9haX|8++NG)Y2rH~+8Zd{-Mp^YriY{f?5o$V#8tj-K*7-7 zN*^+}!(9c)k%C#dYPosfp?hEh3%M+?_ul8#p#~>ItJjgRum^jPdUz&Za88>DG3TB8 zzxkeA8BH41b@(IfdBwDDM>^@RO0{yyRH#wQ$ePAh?9gNDxYcnXeaaT zut}IlK0A0m^Dh$H9>oN4X8;Y$eotq{$BM@&i^rfH)2 zr~X14mEQ@DY;ip;Udb?d!h9T?ev3<&!*H!b*+G*I8%Ny)zl_{ksfOWnv4#J@?4^#pH2pYf-x#4`k)*Tf zN1jNHk*9Px&WIzHQ&q$Tm;#pkLpc*!3}BhFIvst~F{Uc6CHLTJ&z{^GwajWfjLY(f zz?|?W*CfH08SjIAMBXK_TISOb^_j5E&0y%{&+WBw6BAAZj2NLbF}@tzS2EX?)P5i)ziE#3Q}!}?*` z1}%P}LXv5cUihhBr-|QFuL=4Vz%3y;shpP~K!zwdBHmQ3QY#@(sC)kby%FC(%0Cg7 z`N3H*kI7QDGo%Yb;=4C9NzygvO@ zEX;tuunJVJRNY)xw!FEqT*Ww_mB>3#X3hG@e1{93w*Iok9CAouQ}wo5=EfTl|w*5kHw8nD!_oGU~MugL( z0(?-!$~%R40ht~_^MT2F(pjw8ySoPquEByk!QDN$yGuxDNFcat zL*pLY-5nYYc6jgoe15^%qrPt&qiT(+`OHPvvxQVH#^4&3)k^0AhCOA0-y97SX2)n9 z0*6Dz{KIZ9x?j0jbYHO_maZuiYYGZKgz`l&-r(+2iAnL@KQ#AsUm)<}1S^Fknx}5Z zT6Oma85736JmX^TGw^i9bc#5*g;7Ad@|%St(cZa{Vh82G{^Qv$i6)0(9R?+<=|0h) zlkFIy2qD8ENv~q+hkwISclBQw?P+dy1L+k3P%cw#(`sX%i*gNl%g4#?e^F#^ND0$m z83Eo8HBvRgdvO@&5^^`7s$9$l@1xb3g*>m|htFc{kUj&6d8VmJagoP`=NcZJjt8r* zc#KWgPMgKF9^cCw-|1zOBd(#N$~K1VsRPL0qQ0p(6{fO-Q9xZfl`{00$urTmkjQJusV@p&y&gZuh*@9Ne$|szjmzf8NbUbQdEZy;^^A z&NF%6LqzbRcyN;sWsu^fqm0j?Z#nnv$J%H&MtdP%2)w1}Jr>5S19o73;fi~iYkp2> z&LtRMw%&4H`kitm-t>a-?<@G!&w3*yGUF3(%~7Ql*yi6^^M-PP-{(}Ltkbj{n5>k)fDwR0XmXHy+>1j@Z`j0I=b&QM2g7JM_917;xRp#iD0e1AWg{jr%q@=!VgXQo-@9*cb zLY;SHKiftHHK`|Sk`E(Wd6F@x0(=spi=G4&r_-DJWReFm1Zuuaka9&d>)YiZ;)fo- ztML96TkcWnPI(>Plq-pd3$SD$5-A z9XEoHgGhVk@rM$(yAdko)v2tTpyHLREZpMW=+M`zt!jbv9rZ4YC&CChJF_}(FM3Ym z*@&_!3ZG4>T3NJt8)9lV10_4tL_`oE$R6ik-iR)yhxQBSX=#wkdGKtO0Dl1|DZi4H z_^oAg-$A6Ps+Fza*qLMi?+6h)EE3C?l+Uf239K`Y`3BiSjvA+%VG+*{ea45I(&jv6 z?6D`-MV_-FT95@!_n&E5U;-r%pHc=;Z}AW1gT-Gl)!ll8kb40W6aJrLKU_!>)P*{Y z$+OiF1auN+OYiLWQUq+)Qm%s7?&60srV8VYg*2!Eg#x_n`@ixqM@Ez_6UY*NaSk}A*n!MAy?x_jw9IsD_SzpxMgzN8 z#KapXqGWC9lLoc32^q@h`OvNF5GAdqEC-j%lCIXQ#3i5})jqE@ogZhu2iWwwaEa;w zaCgrv1V|g3!0E{jeIMvwRm5H&$c_dW|PhJEC03t)uhx@t?+=@Vy(hT%IJtb0N82+ABfC zdo);xEhMi(yHEy>>pR_mwA4SeBc5*v#Woj4rs({iI+vdwSzYlV)^i6%Cl!_xyS5;` zS~Q>-V7|)8ie%kH>ppbK9ChNaZdmSKXA=T;A!&`kd^bhK znW824W6iA+T5VxxBmJgHQoifc|Eq8iH98%I`8;J9jp2~G5I`=v(&X5kD{|3>LZR5b zV7v6RYa93D`zcr~M1H7_TXAi?wmJGKxWN#=mpUbiypNGwvS5k|RgoXL<pboT>y;qYWpnR-JkHT(*Gph`YbId%9?~a?`1^L$sZ|Y z@`5JCp|K7OHQXbR%CBdwJU2(Ck)Ve8GCXvH0>|Q@ckK~W0T&n)QeTz`Wspx>?Zp{z z55l(b6cpZyRFLQdsTLik1@4JdzLV%$X%81l9GNE*VD4YkDms^thT!r+FICstDZS#1 z2xh&JV>mg8h@$KOd|Pgb^+dk;SBtE!UDCdqRA#pUeRR!FeE20>qo!tw+NQ7v(-uym zGrcPH$ox-6CU^7>*6Hy(af6xruBO~B95X5pL9VB@gRKW3C(__`(}6^HPr&0+@;)A7 zcuJ>Xmk$AP#nrRkT$%8qb_XT$>-y`JozQ>F$jC#dqZWZcn|7I!5rDbf9f@wnK zeTU@S36rfVavC8+$l2?x4yknSTqqyDQyUvqQe@W)=+UjmM)lC9D9~a3&9vp0+m{YQ zW0zN1(0M0Tb~9o}i3djyH*AZR7&kv(l4;$TLwp-We@A?l9dey=5mJCLB6MR>7G9QnYX5*D@A{{g zw>g5;Y(hKAS_3ld-g&>C;-CyHe`O!Bu1GL30W@?gjQnKc}|vsd&G&uFU>1=@0(<3x9Mh zJA`BJq7>N|$tR?g5k1W(($j`(o%E$?t5&Aj{1^Ysrl~fG=#`{Lot?17zPuYyE&36Z zyy8ucE>Aq|9$8-F%SqJ2kJF0uGFyZ=#M$E1B&ukWI?q?ZldQ|ucLyRJze zjfx!pA?eeVjuho{XF0EMX*dwF5%e_IA!4phIXd#AN5yXaYrVzh=kOb<7X0&_!>GOd z{kD_K^N$qQxUcKbW>P+Qao;-bm;?dOl&mm{=o51r@%z_L9sJjD2&mc3>qJbQCvU~3 zzg1^{=w3Kk^ZLb+*Kp^YwB9FXC~|Iebc|A#Y-D(iMbRj?qSB3d?y>VP7<-4d9xt2g z&0gjqYWXz~nh2%lv0g9|UHw>S_c+Jd5Oae1P8N#ohl0HGi0kQ}G|3~wX+lmnF|ilr z`X|5NIQ((ZNxvy(8|}R3MZJp*bsWtc2iev8n^|yMVi~sX^%xb3{m#IMwdY%I@|_0; zug0MGt{&ygzYh5z9F{&!?ilWNaF+kR?K4}@v)ExVvi`M%H~T)%Ws))JH^!)7`Q|G(xrDS3;vMMMhPDio=Dua66lb z!tG}9>!-CKfGv$u(%;5j9C|%JLo6-S8|_Z0MFv-QqeskrgP;n}w;OU^b^kvi$NdLU zOz^z}iDXv%1Cz++(wBwP2h*!Cug73waCnPy%iIpuC+B4`_-%>XbZV#Fp9s-58DcN- z6-Z$AJd~%uby;A1Sd(U8A0L@$FdSNqfW3diaG!Dn!>FQDD3mL^3}v%6lgv^Rh_7Qfen%9c8gZ0b>J%iey_PiqGSTwP#m4?Q+{zxrxH%rL_v(4nY6{0`ugsA}rUqs;<@i z@=rN1&^yoK4(E3X%Jl4?!0wrtu>D|h`H8z9YjC7%79lT3=LvQl?-_7`vI2u|s=m%& z=YHEDnvpE17StZRa3>eE0Kpw2 zB0FRCe>j1W(SNl%pMD=jYNo0p){T`RG1H+UfQ~`N1`^T9mJP$t;C!}Vzdy9I8C}Q? z??n6O5c4jrP99G05FI({{49wFQ(o5faD2wi>u~BHhr%!(Mj>x6L66OcuBu#CqpQda zU=YFm4-fzEo#%yJAE*ccgsJc@A1)Wp+=PY+M=3lSwCZf`xZtb+r|O3Tbbz_nbmV z@eHahglig-sUYGpv8!LiF&~Eu`{mthq4GzcQ9S+W@8S30NW$(7uH6Sh{B^D=k~j9Q z3cK&K=N%U*++E`%Er7|(T!BijF)92ru96Zf2Om12#6i#9zqauWbXY>0sFOQ#03{0( zlDm-zqO-ZjGUR&?xsR@Lf*%npDxFCW5Qh!a%cWA!&A*Q7vvQUDRk@=)JFqb1J`lrQcc$|-(V!vBEu$4t zPCy9N4~-H3g!IJ^kyLOPtCOkd;L23Ln)vor{ojX&Ok276@D~`r>zzkCBC?iyq~|!o zU@P&wHHQ4gu&Ov>v zS`cY&l-xmQvy1s{I<$;$WYX-Il=D`maRt^!JXV6KN5 zGaT@xvrhll65B(TQLv?R|Z(&lDbe;Spz8O4- zEckfNaa(}ZyXT&ZlHukAfFM|hLbTa1Nlfy`rHYn=xs$TDZv+2$m+PKImpv;|)&w=O zmYZ3xrdWuO<8}IifaNizCLjG-U+gZ`P78jTuevg++5*w_0{$!v{g8*Mld!L<*0qJ z>BxBN>E0$eQf1$J=kyo9oHCJ4ph+!!YX@!g5196_SS?r25Ty{=5Vx9rHUV8%Vf75h zMSJj^2zkf$5_EdxC^V6|#_T1^HH__8j#;YVNILxPoTDp7sgA&YM-#g%Kez>bi0ZZr zR;@Y^*KAjhIlPWSJvFWw=FZ>o+g2}2wvcf*SBSZSayP+!^46M-m{apK*T%q=)r@<9ZzmWe#`t1 z_?yw1{LC8>af17x2x$or%(mGo{b=lS-q?rskFq|nEc4ZsUrFkzWZHipw?-F0J~CJG z!quB%k9`Wg6j9F`Y#+Lp9+mzlCD|QXC&h%$;h3%ZT`p{URe>-~gYJ1l< zoCXnV-v6%V*3)Mdqa(AR54AZHHEL#@0K}h+;V!(Xmrhpt7Yv!kIS;Q9j}E_e&>X5X zGuvji{a7K=40<=RJ>2CF_lrht0jr4bRD+>?J8F5oqT%wMk;59JKmL$ZcuZil(?Q}GfTpjvOSFFDXDQKULS`K%)D>aOE9QwdD6T>5pMOW&IC1$3X2K=++- zx?Ni$^+H4-Vh8b1Sc`Y4AM8)vKf;K{Z+Fi6jF*_|BZ2}Y7-W}bE~PLt$uNNosz3{J zCu1zk+jNZ5cMKwrRw(3bWM*%PA2c)bhtFhIVVL z(s3c#$+Wus^d;!-SH<tPQ_{gtQ>wwD0k z&SU++8GJxt&^w$=Dc=LNbZ4XK(D%XyL41DV7Gu|lBqwNC!*u$T{hct%Pr==+e|0+3 z$9Q5LJC2tV>Z0vyB`yG5^opu_pIs|_^cwJ^xJ09zSwcD<)i5V~Z&;^ciWnXHzJfun zHyam13)sAR3HSIxgp?sMxF=KR5f4{@J0JMU{8UaQEe^;~koJ;E;MEUcPBBC0^#eT6 z{9sg^3a~U31R0jxx=&J>`XR3q^d=uK@5A^`{q$}Za^0RhTww@Wn?aVvxK=@jGxJD} z#*kpD#6F0|nI(ZQJIaG3O`-$)9( z4w6{uZRClw2AORgLr3+Nrc4V4qaPlVo0r4z0_o1)=<(Bf`;56B<@U)tk*kcb_i>Ax z#My(#!~yyG^Gs5iW|7DAui8g<9r&Or@BX?C$l%C>Us*j?%q1((HyRxnM*OACwtgnU z%6{#5jmu#ly7S4_EOkf%J80wAnE!bf2m2)GWf99-+W4byCszz`!@gt$@|ldwkd-l7 zZg#=Gb`nNJUiw2K&jJw3*SEJVvPYC88y(c6bvWJkXvIB18&tYAc-?=&xB<5Uqtzc* z{I-@X!Enq|+K9wTkJbwKJ*Omlxe^WhhuF%T+q^bc8C0D*l}-t)Z5?*&q=^so}NM9MhVd%9eUExxcBtq>6MUeY|`$YZ*W3Hk8^jZzsLMgCtGUM zr=8viw7dmBEVPTWW%x`K@MLI3h*JZ+h?!{3uSLzb8XPB3Pl3qRZ!=|G9KHQ)Q_+m9 z3Rbpf#QIWU&1~Q>??TOY=X)NLzyiIu%#LTp)k_0;1=~CLIw?g28om&QSm)&qjbyDD z@^7S~s>EDp<9B4ig5=kJc{B_(f>OvwY%(!v7mj$@2qkeL0R!e>n~-1IvQuw?KCnqc z+yp0=cyg>>KdI?YeZ|cG8k3G2#_MIX0O{*evDcz7a+3E#2Gy*CXv`F)aYtEj{d9p_ zhVO#WqAJqEYmzp};<%mLbx8f;h=|j6XMI4eS@>Z4dgcDGUwq}q9|$^d2m6h6$%GWO zw5>^WKOtSf+I+Y*9RM90S0`Q`Utr9r8W~2gsD(njnIcjeg^U_tpAIjiW+qe~Mng=* z^w0PM?Q1Gs)j%|5Q1kFIe*3Bz%jxG}Vd%<(NR)RNQVBDMvZ_)#>^~PypmLN?bsv^W z1I7D}xUCHRonGHg-Nj>=ul+7qrZn`3gle%q97_sY^k7fdCZ&@o%0JQ?!@!EBhNgGP z=bxSAQ;}q1TdHSzMQ<<}=NN=IwpQ{+P!kTCfC0ud%`Os4JqQU}?`@?h0ZGnBMnp^y zbaZ^xBM2f_jAss^vwU)vR@J)YTS)7m zvg{xDwy38+BNfbSz30um?JDf@cYE1eO;6v`di7I5Z{r+Wb|PMUSPA7y+I2n{wr!w&MxTB{GV_YcNBLULQP;& z6j5wrfro#Y@`*Vxp0KQwrR$!2{mUOKTic0$4kYAlqRv^~#|p*JzP@bCU?Y8N&6%oSCr?i`^0{MZjwq zJ6>89|FQKy4Hrp^R{xXBD9+kAxD*@+`v*rMg0duFe~vtSEQX-~c!>Pswez98u-Zdq z$^t!epWUE=^OY!@g}%s}iU@v4Djg*N2Ur#gN}F!2h&(cbdK}-NL_TS-PBo(>7gUtj z0KcteWV5Vzoq|Kc5&8#uo{T2?kJboKA(ry|WG=a9Hk)!-Lgorc@s2!G2WB(`_(Wxs zO8%;Z-ZBZ$U_K*jj5q>hQSLuIYUE|e2gMe%5W@M;ydTCLg+rl z9MR0&&ozf9_|A@lhB>}8=aMXLofeF>;eKz1>xMZ;Ye7u$n2#p+tI24EwOM%deL0T~ zwO&)RPw&g+YW+0Iku~_9WpTDOT96-1cuy^cA7cX}Vfw zZOmgun#1A0IIV{BO=$#Dt&CC%pgQ69h zTGcUQxIgWfd&~=~J8?*1+OESD!j8dbC!T7yA9&oy`r8fTe-<=f{j29E z9$qa?@1;{y4J%|24fi~8O{4Cyxu=WbJwP-5P=Ig%eiXg~h{+>u3t(DFjYQlV3T6(J z4XT6j5adF6q-Z-jitV=rm5INSPs3jqsFP%W36Tf5qc-+1Ue^GHv)v%>hqFvY6(f#~ z&kyUvb}~(F3q@E1YyCIzKY~jkAH6LW^hnv8oz$gYXvFecR!J>jdn(duuPi-H>Z>rYq3`KEe zKiK4-iGt4f1O!Qn#Ia6+#z4$5%tE-(L-1Zl5QE|f(BtfHXLmJC_mc}R*Qdt^Hg&tb z7nsRhd=ZQ9+#}pL2vzVYeS;UV4u@5YzABYJ`Hrjs#k`!PvN*Ysk!0Nb1Jr3sM|`RS zN>A^_;{8ruq1^my@f!_O@?y=Rq6wPs`)4q@+UfjLeD@JDt%t^U&+G7TRn(U?8>h=G z-y)xszeRYn(ZeyS3#C*$DQD-UaGn#Yiu;2eY}hCgX|x^mTxqL{(LbKVXrhIf(rLt> ztSl0UxQ|mkhry?w|L=;FQ4n`iwB@;FX4wd`U24WoLNI{uIg&W}R(AYPJ#AjUFz_X} z+v0sMUF^^6ND&$o_R<L{i81*mrQGVX_zDMW`f34?OcBor^DQfE?4uH)-Bz0G`*SHRREs7OlT5gYw;w~pzklm{{yQpvI;30- zDHHJ$NNTjDn0n|d))MC%hP3PX%(g|O&88;!qW5A^V_b~e-COG7OdR6*yx7-A6>*M} z*WIQge%<|=8tR2$V)M@~dynFE0*1#FJ53#2n)OcEEoE=0ym3)BV^|T3G zHTH!`L?yA_RV@i|WkG*Ayab%SgmRm2Vx*Q1u2UX~I=?#1fX*QMC$cC-(Ru_WV0P>| zm@YJBfsdAhdzhON;8i$J3nVNAMX!~z)O$=gL$gn^4I6L4UZ|F{HADUp6i-3@CM}(p z@$88mDdUPQ6qg#Y{yTpP-Hx(!zG-%IeyrV8+EF{HA&K0WBkMSJ5NZZu=>%ahO5$Yq za(4P{BV#=)G(3D4a+^&yO@WPpvjtfE7XG+@@3H`^S@rl|=K4KvHM5=4bk))0p3%~f zz7?Ut75<<;#*%CVP%4&Ea1hRV%Skgns1jhQxb zDv&^wPi_@_y4Q8w^{zhfKHwYTwAwVEUqVl(?h%Uih%tl`0L1%SjMqmPPykpI zm9f(mh!wh5^JAP!@E~rIwcXN`-MB-Y8OTwRQsez!4%z`$VJ0?oa;qvwiKCOcB`Olj z@;f`b;FlWH!tUO9d?No8l*YDc5nOId*;ED=s+sT2_JW@vecyiR7}V{kB_B{v%=c!0 zklb#-vCkEz{v2(MoK9c%OyxS952Q*5%p-WgD+=koLNr;4t5M6s9cyakFCa-SHD=~Z zvIm<%B;u#vc7!NLVa{^EMU=1HxRIj8FBsh7qX3~N*=H=(&}ZVK0Ri>D+{a2eDfyOt z*nOz6l=vEjD43Sp-uTHBrLbJUw8SOEzIUsG9?`}5TKjnNcV~FZo@!O4hoGEg`>-u$ zZdajG(!g~tSyc%dDa0(uynVXxVbLq{* z-v-W7)-~$NI4+&`YfDTtPN-}L7@662*2kTOJlj+|tOQ3^#g38)pH5Q`u}Sg+A5kkU zZS=_Z5{(Z_2ml{i@^Wk^yxlHKu29OfixUB{m9Yu`r^0r$mVmcw{~7Q5XUq1o_5)L9 z=3ivUHtBqVbrToYyI#+z!@m9N=-Y1`nAEPMVIdw{dD}5tMd(+@w%B+tkkBvma7gKr z{5%A&QhF?X89}bK5=w(C>{`x@o(d%m?8WgG>4g_G!rXT*+Y^B&vD29v)}X^d?4<-0 zdKGetV6@8d`z0HeGm(f&20p$b^0rZT+aqo$TjR4{_I(d0DIY0??6$aqZO89+IA$+c zE8uYC6X%80;N^>gz|Ha3<>vMd?ItZ%r=#jo`LpW}a{0PdhLP2d;=8h+6M35O2_-^!D;}3~7x0RlIgA*Ed$jCVV*68+T52)OTw--ovl2$GGM@e8 zV-Z7oTvV{~4~js!b>TP+7D`WXG+F|kWK4m6QnGVYNraqv9Jqhh+`*%VqfX9&vEd7j zSf$Wxqp<@to6ckYu83or;S7M+pVOsr8bA=WktIHCJ^ehzD9a{$YBE9R( z!gZlmbB*|R22u(G{OK9p+}j(HomVPrKkr&=&Ru{*Qprjct!xbKnJ0{JpR*;K>S125 zT#WX#qYHjIKSK)9#;*bHE(@{-Uf8$aef(R_@2DH#e}A$M>8<*v=iQ;|H4;~BhdueH zB!0C`(sHOr*y&9cyix4EgJS}j6c(0j5h+f0mE1HHM=;Q3Zlc{}732tG{_4WU)Y=d? zM)*=M zS=XH~&=hhk*|F!%)Ijk2>zz?P_Pr*v1x19v&?@N{^kErEcuXod1ppewW*foptWbz` zpBUN|RaY$cI)(@LEc~_{>&5CeJ&%Bb_s1uQPu8+DwzIY%@cInk6ZsMM1q|=4_U#3@ zJ&uet;`M!-8u`MD>&rB6iC8a#6yJ28uJ$DnUZ2RE;MCB6HA{#nj}DjDEa+H!P&xF9)?Hj8x&XTYwE2&6_DLA?+=DUS?MHs8t(d$=qL?y^ zUuJZhV`>6cKfQTnW zg1d+xa^x*f?`F4iL?j;#y$Ma1V%1lAZmZKmV zEe5jdL?{P~L>KB1?NXk7xc5X==v}bb$`;9KGZQ&xw~957l}V>&YzVS88{8F(KfB7= zE)%;+*WyhNz72R`?pk8S;-~7Xjo1^B*Xs9zI1Bp&1@~uyUK`23#l3Xd@`!Kmg0o-* z@jhNKCiAJ}4}r1B+qp{p(aVerS?2&-<9y*kkF(XaE~>?f0}&SrG}-VGS;7VZcN-3F z&y!j2;l%K8o*depx%S3HGR^S3lOe}1i-}X`$Ntss*F<|z08R5C%LK=f=#PLZEq3SE zaxg2IS?85|A|f6h?hC2u%JW@qtj8lU11>C%;7{Z}q|7AOI{{(1>d62mKl{p!t$^y+ zzo0J*6z!IxppyopTy_`3L(we5)#0(6+mzN{3uhp|TZmRcdfbh0rH}l4(|GItkw)6M z2sA6FtNB)7P~hva+fvW|X_G|n!iTbKh2Wq$-ro4{!QHkx{T@L4UM89J1k4GK$^xHW zre7004&i@_xK4R-yx`WAPxaF$(OAxu7q+Yg)fN<1dPnlQJ>nE27NN@S6B_0XG!C&C z=58V_my&9t5<6DZlyFhBp%0owRLYTpfFm`vp3A6lJGL)*URjkw0EZfU&-Rfj_gjfPWv3d}+sPYyX;ZPwMlfc2%m01pB%5Z@t&K3JJF1 zyl3_bG4^*m=IGc9)^-~>1BYX>I>~inl4g9*eULMrqV}5g_as`H7Q9Sx><5=M>F1l4 z${SP>bm&ZB0kPtaksVuQ#jXv1{y~Nh z7Aj$xKAHvFRy|9Rw4vN8#XMn#XqN=DCfWP%LK1*oCu;(lHE$JLxdEYHp4q!^HXeyITo7c0ie+vdvs9y9Ut>Z?uUCD0O0zsLYq~Wx z1x~P5Hk${rzC0}znqC&;z*=J%>+kOc=2-?Zw0fE0p;#*y*`Mf7LT@HK&&vG62+EqS zM@b6R=O2-u)D(PwLB&E|%W#(u!&-KSbG`+uW^BER91q=G^ft=N<6ws}e*}*cPZy{v z$&7`cX0TNs7WFhQLr+O?$c=lZr*a(ga_8)ITAxoV2ZYs5huW*xBOMB~it-`?igIDQ zyVg#h>jX1-m;C=>O>j4_yEPw8A2DnFG2mOFS?+y+u;Vn@FR(*@KDxr%pPoD7d6l&o9&;n)FtNkgcSKA=?u(>ve{#Hl3E`C*5bs8DHxK-*| zz*nSq5Klk6c$5^@HSuAFaLAh?eH{O>^;0v7o1>yPt7NX|r}wIk5{_CO6K-|v;K%Bb z@E3{aZ0_T&a{&rlOY#ZL!f$m)4=2=XfGLBaYL4N~4|eBKEo$j;e3Ir(HY~eYqn*+E zQ*_D7@bBe@3?(4cu&U#vIN!T?fOy0o-<6D~ubojmBAB^>WLq*N?z8kZKeostJ@!2} zX1Lx2TsihXLTz#jvV102&K-1np}tb?od5rd2)MT2u6-ofZGfw;-Ue9rw&nD+?{h5n f|BW#e27ZHO<`XbCW98(AdA}57Rb{F^nuh%k8V-)Z literal 0 HcmV?d00001 diff --git a/Tests/RenderingTests/Resources/pt-mono.fnt b/Tests/RenderingTests/Resources/pt-mono.fnt new file mode 100644 index 0000000..5136248 --- /dev/null +++ b/Tests/RenderingTests/Resources/pt-mono.fnt @@ -0,0 +1,100 @@ +info face="PT-Mono" size=64 bold=0 italic=0 charset="" unicode=0 stretchH=100 smooth=1 aa=1 padding=0,0,0,0 spacing=2,2 +common lineHeight=72 base=57 scaleW=406 scaleH=543 pages=1 packed=0 +page id=0 file="pt-mono.png" +chars count=95 +char id=32 x=156 y=502 width=0 height=0 xoffset=0 yoffset=60 xadvance=38 page=0 chnl=0 letter="space" +char id=33 x=75 y=249 width=16 height=54 xoffset=14 yoffset=7 xadvance=38 page=0 chnl=0 letter="!" +char id=34 x=297 y=459 width=27 height=28 xoffset=9 yoffset=7 xadvance=38 page=0 chnl=0 letter=""" +char id=35 x=253 y=360 width=43 height=46 xoffset=1 yoffset=10 xadvance=38 page=0 chnl=0 letter="#" +char id=36 x=244 y=2 width=34 height=66 xoffset=5 yoffset=-0 xadvance=38 page=0 chnl=0 letter="$" +char id=37 x=64 y=72 width=43 height=55 xoffset=1 yoffset=6 xadvance=38 page=0 chnl=0 letter="%" +char id=38 x=109 y=72 width=43 height=55 xoffset=1 yoffset=6 xadvance=38 page=0 chnl=0 letter="&" +char id=39 x=326 y=459 width=14 height=28 xoffset=16 yoffset=7 xadvance=38 page=0 chnl=0 letter="'" +char id=40 x=178 y=2 width=31 height=67 xoffset=6 yoffset=7 xadvance=38 page=0 chnl=0 letter="(" +char id=41 x=211 y=2 width=31 height=67 xoffset=8 yoffset=7 xadvance=38 page=0 chnl=0 letter=")" +char id=42 x=211 y=459 width=39 height=38 xoffset=3 yoffset=5 xadvance=38 page=0 chnl=0 letter="*" +char id=43 x=362 y=415 width=41 height=41 xoffset=2 yoffset=14 xadvance=38 page=0 chnl=0 letter="+" +char id=44 x=342 y=459 width=18 height=26 xoffset=13 yoffset=44 xadvance=38 page=0 chnl=0 letter="," +char id=45 x=124 y=502 width=30 height=13 xoffset=7 yoffset=31 xadvance=38 page=0 chnl=0 letter="-" +char id=46 x=63 y=502 width=17 height=17 xoffset=14 yoffset=44 xadvance=38 page=0 chnl=0 letter="." +char id=47 x=323 y=2 width=36 height=63 xoffset=5 yoffset=6 xadvance=38 page=0 chnl=0 letter="/" +char id=48 x=197 y=72 width=40 height=55 xoffset=3 yoffset=6 xadvance=38 page=0 chnl=0 letter="0" +char id=49 x=80 y=360 width=36 height=53 xoffset=4 yoffset=7 xadvance=38 page=0 chnl=0 letter="1" +char id=50 x=124 y=193 width=37 height=54 xoffset=4 yoffset=6 xadvance=38 page=0 chnl=0 letter="2" +char id=51 x=202 y=193 width=36 height=54 xoffset=5 yoffset=7 xadvance=38 page=0 chnl=0 letter="3" +char id=52 x=328 y=249 width=43 height=53 xoffset=2 yoffset=7 xadvance=38 page=0 chnl=0 letter="4" +char id=53 x=240 y=193 width=36 height=54 xoffset=4 yoffset=7 xadvance=38 page=0 chnl=0 letter="5" +char id=54 x=239 y=72 width=39 height=55 xoffset=3 yoffset=6 xadvance=38 page=0 chnl=0 letter="6" +char id=55 x=2 y=360 width=37 height=53 xoffset=3 yoffset=7 xadvance=38 page=0 chnl=0 letter="7" +char id=56 x=122 y=136 width=37 height=55 xoffset=4 yoffset=6 xadvance=38 page=0 chnl=0 letter="8" +char id=57 x=280 y=72 width=39 height=55 xoffset=3 yoffset=6 xadvance=38 page=0 chnl=0 letter="9" +char id=58 x=205 y=415 width=17 height=42 xoffset=14 yoffset=19 xadvance=38 page=0 chnl=0 letter=":" +char id=59 x=191 y=360 width=18 height=51 xoffset=13 yoffset=19 xadvance=38 page=0 chnl=0 letter=";" +char id=60 x=298 y=360 width=41 height=46 xoffset=2 yoffset=12 xadvance=38 page=0 chnl=0 letter="<" +char id=61 x=362 y=459 width=38 height=24 xoffset=3 yoffset=22 xadvance=38 page=0 chnl=0 letter="=" +char id=62 x=341 y=360 width=41 height=46 xoffset=2 yoffset=12 xadvance=38 page=0 chnl=0 letter=">" +char id=63 x=2 y=136 width=38 height=55 xoffset=2 yoffset=6 xadvance=38 page=0 chnl=0 letter="?" +char id=64 x=17 y=72 width=45 height=57 xoffset=0 yoffset=17 xadvance=38 page=0 chnl=0 letter="@" +char id=65 x=141 y=249 width=45 height=53 xoffset=0 yoffset=7 xadvance=38 page=0 chnl=0 letter="A" +char id=66 x=163 y=193 width=37 height=54 xoffset=5 yoffset=7 xadvance=38 page=0 chnl=0 letter="B" +char id=67 x=321 y=72 width=39 height=55 xoffset=3 yoffset=6 xadvance=38 page=0 chnl=0 letter="C" +char id=68 x=339 y=136 width=39 height=54 xoffset=4 yoffset=7 xadvance=38 page=0 chnl=0 letter="D" +char id=69 x=118 y=360 width=35 height=53 xoffset=6 yoffset=7 xadvance=38 page=0 chnl=0 letter="E" +char id=70 x=155 y=360 width=34 height=53 xoffset=6 yoffset=7 xadvance=38 page=0 chnl=0 letter="F" +char id=71 x=362 y=72 width=39 height=55 xoffset=2 yoffset=6 xadvance=38 page=0 chnl=0 letter="G" +char id=72 x=220 y=305 width=39 height=53 xoffset=3 yoffset=7 xadvance=38 page=0 chnl=0 letter="H" +char id=73 x=261 y=305 width=39 height=53 xoffset=3 yoffset=7 xadvance=38 page=0 chnl=0 letter="I" +char id=74 x=2 y=249 width=35 height=54 xoffset=4 yoffset=7 xadvance=38 page=0 chnl=0 letter="J" +char id=75 x=135 y=305 width=41 height=53 xoffset=4 yoffset=7 xadvance=38 page=0 chnl=0 letter="K" +char id=76 x=41 y=360 width=37 height=53 xoffset=5 yoffset=7 xadvance=38 page=0 chnl=0 letter="L" +char id=77 x=302 y=305 width=39 height=53 xoffset=3 yoffset=7 xadvance=38 page=0 chnl=0 letter="M" +char id=78 x=343 y=305 width=38 height=53 xoffset=3 yoffset=7 xadvance=38 page=0 chnl=0 letter="N" +char id=79 x=154 y=72 width=41 height=55 xoffset=2 yoffset=6 xadvance=38 page=0 chnl=0 letter="O" +char id=80 x=278 y=193 width=36 height=54 xoffset=5 yoffset=6 xadvance=38 page=0 chnl=0 letter="P" +char id=81 x=280 y=2 width=41 height=64 xoffset=2 yoffset=6 xadvance=38 page=0 chnl=0 letter="Q" +char id=82 x=2 y=193 width=39 height=54 xoffset=5 yoffset=6 xadvance=38 page=0 chnl=0 letter="R" +char id=83 x=42 y=136 width=38 height=55 xoffset=4 yoffset=6 xadvance=38 page=0 chnl=0 letter="S" +char id=84 x=47 y=305 width=42 height=53 xoffset=2 yoffset=7 xadvance=38 page=0 chnl=0 letter="T" +char id=85 x=43 y=193 width=39 height=54 xoffset=3 yoffset=7 xadvance=38 page=0 chnl=0 letter="U" +char id=86 x=188 y=249 width=45 height=53 xoffset=0 yoffset=7 xadvance=38 page=0 chnl=0 letter="V" +char id=87 x=235 y=249 width=45 height=53 xoffset=0 yoffset=7 xadvance=38 page=0 chnl=0 letter="W" +char id=88 x=282 y=249 width=44 height=53 xoffset=0 yoffset=7 xadvance=38 page=0 chnl=0 letter="X" +char id=89 x=93 y=249 width=46 height=53 xoffset=0 yoffset=7 xadvance=38 page=0 chnl=0 letter="Y" +char id=90 x=178 y=305 width=40 height=53 xoffset=3 yoffset=7 xadvance=38 page=0 chnl=0 letter="Z" +char id=91 x=80 y=2 width=30 height=68 xoffset=9 yoffset=7 xadvance=38 page=0 chnl=0 letter="[" +char id=92 x=361 y=2 width=36 height=63 xoffset=4 yoffset=6 xadvance=38 page=0 chnl=0 letter="\" +char id=93 x=112 y=2 width=30 height=68 xoffset=6 yoffset=7 xadvance=38 page=0 chnl=0 letter="]" +char id=94 x=252 y=459 width=43 height=35 xoffset=1 yoffset=6 xadvance=38 page=0 chnl=0 letter="^" +char id=95 x=82 y=502 width=40 height=13 xoffset=3 yoffset=60 xadvance=38 page=0 chnl=0 letter="_" +char id=96 x=2 y=502 width=20 height=18 xoffset=12 yoffset=5 xadvance=38 page=0 chnl=0 letter="`" +char id=97 x=44 y=415 width=39 height=42 xoffset=4 yoffset=19 xadvance=38 page=0 chnl=0 letter="a" +char id=98 x=161 y=136 width=43 height=54 xoffset=-1 yoffset=7 xadvance=38 page=0 chnl=0 letter="b" +char id=99 x=85 y=415 width=39 height=42 xoffset=3 yoffset=19 xadvance=38 page=0 chnl=0 letter="c" +char id=100 x=206 y=136 width=43 height=54 xoffset=3 yoffset=7 xadvance=38 page=0 chnl=0 letter="d" +char id=101 x=126 y=415 width=39 height=42 xoffset=3 yoffset=19 xadvance=38 page=0 chnl=0 letter="e" +char id=102 x=316 y=193 width=36 height=54 xoffset=5 yoffset=6 xadvance=38 page=0 chnl=0 letter="f" +char id=103 x=82 y=136 width=38 height=55 xoffset=3 yoffset=19 xadvance=38 page=0 chnl=0 letter="g" +char id=104 x=91 y=305 width=42 height=53 xoffset=-1 yoffset=7 xadvance=38 page=0 chnl=0 letter="h" +char id=105 x=354 y=193 width=36 height=54 xoffset=6 yoffset=6 xadvance=38 page=0 chnl=0 letter="i" +char id=106 x=144 y=2 width=32 height=67 xoffset=3 yoffset=7 xadvance=38 page=0 chnl=0 letter="j" +char id=107 x=2 y=305 width=43 height=53 xoffset=1 yoffset=7 xadvance=38 page=0 chnl=0 letter="k" +char id=108 x=39 y=249 width=34 height=54 xoffset=7 yoffset=7 xadvance=38 page=0 chnl=0 letter="l" +char id=109 x=318 y=415 width=42 height=41 xoffset=2 yoffset=19 xadvance=38 page=0 chnl=0 letter="m" +char id=110 x=2 y=459 width=41 height=41 xoffset=0 yoffset=19 xadvance=38 page=0 chnl=0 letter="n" +char id=111 x=2 y=415 width=40 height=42 xoffset=3 yoffset=19 xadvance=38 page=0 chnl=0 letter="o" +char id=112 x=251 y=136 width=43 height=54 xoffset=0 yoffset=19 xadvance=38 page=0 chnl=0 letter="p" +char id=113 x=84 y=193 width=38 height=54 xoffset=3 yoffset=19 xadvance=38 page=0 chnl=0 letter="q" +char id=114 x=131 y=459 width=40 height=41 xoffset=3 yoffset=19 xadvance=38 page=0 chnl=0 letter="r" +char id=115 x=167 y=415 width=36 height=42 xoffset=4 yoffset=19 xadvance=38 page=0 chnl=0 letter="s" +char id=116 x=211 y=360 width=40 height=49 xoffset=1 yoffset=12 xadvance=38 page=0 chnl=0 letter="t" +char id=117 x=272 y=415 width=44 height=41 xoffset=1 yoffset=20 xadvance=38 page=0 chnl=0 letter="u" +char id=118 x=45 y=459 width=41 height=41 xoffset=2 yoffset=19 xadvance=38 page=0 chnl=0 letter="v" +char id=119 x=224 y=415 width=46 height=41 xoffset=0 yoffset=19 xadvance=38 page=0 chnl=0 letter="w" +char id=120 x=88 y=459 width=41 height=41 xoffset=2 yoffset=19 xadvance=38 page=0 chnl=0 letter="x" +char id=121 x=296 y=136 width=41 height=54 xoffset=2 yoffset=19 xadvance=38 page=0 chnl=0 letter="y" +char id=122 x=173 y=459 width=36 height=41 xoffset=4 yoffset=19 xadvance=38 page=0 chnl=0 letter="z" +char id=123 x=2 y=2 width=37 height=68 xoffset=4 yoffset=7 xadvance=38 page=0 chnl=0 letter="{" +char id=124 x=2 y=72 width=13 height=62 xoffset=16 yoffset=6 xadvance=38 page=0 chnl=0 letter="|" +char id=125 x=41 y=2 width=37 height=68 xoffset=4 yoffset=7 xadvance=38 page=0 chnl=0 letter="}" +char id=126 x=24 y=502 width=37 height=17 xoffset=4 yoffset=24 xadvance=38 page=0 chnl=0 letter="~" +kernings count=0 diff --git a/Tests/RenderingTests/Utilities/EnqueueGrid.swift b/Tests/RenderingTests/Utilities/EnqueueGrid.swift index 511ab92..7649db3 100644 --- a/Tests/RenderingTests/Utilities/EnqueueGrid.swift +++ b/Tests/RenderingTests/Utilities/EnqueueGrid.swift @@ -43,6 +43,21 @@ func enqueueGrid(into renderer: MetalRenderer) { } } +func enqueueLine(into renderer: MetalRenderer) { + let rectRow = Rect( + origin: .init(x: -480, y: 0), + size: .init(width: 960, height: 1) + ) + renderer.enqueue([ + RenderGroup( + triangles: try! rectRow.triangulate().map { RenderTriangle(triangle: $0) }, + transformMatrix: .identity, + fragmentType: .color(.green), + zIndex: 0 + ) + ]) +} + func enqueuePoint(_ point: Point, into renderer: MetalRenderer) { let circle = Circle(center: point, radius: 6) renderer.enqueue([ diff --git a/Tests/RenderingTests/Utilities/RenderingTestSystem.swift b/Tests/RenderingTests/Utilities/RenderingTestSystem.swift index 4de9584..844717f 100644 --- a/Tests/RenderingTests/Utilities/RenderingTestSystem.swift +++ b/Tests/RenderingTests/Utilities/RenderingTestSystem.swift @@ -4,34 +4,15 @@ import Geometry import RedECSBasicComponents import RedECSAppleSupport -struct RenderingTestState: GameState { +struct RenderingTestState: RenderableGameState { var entities: EntityRepository = .init() var transform: [EntityId: TransformComponent] = [:] var shape: [EntityId: ShapeComponent] = [:] var sprite: [EntityId: SpriteComponent] = [:] + var label: [EntityId: LabelComponent] = [:] var camera: [EntityId: CameraComponent] = [:] - var spriteContext: SpriteContext { - get { - SpriteContext(entities: entities, transform: transform, sprite: sprite) - } - set { - self.transform = newValue.transform - self.sprite = newValue.sprite - } - } - - var shapeContext: ShapeRenderingContext { - get { - ShapeRenderingContext(entities: entities, transform: transform, shape: shape) - } - set { - self.transform = newValue.transform - self.shape = newValue.shape - } - } - var cameraContext: CameraReducerContext { get { CameraReducerContext(entities: entities, transform: transform, camera: camera) diff --git a/Tests/RenderingTests/__Snapshots__/BitmapFontTests/snapshotText-_.Bitmap-Font.png b/Tests/RenderingTests/__Snapshots__/BitmapFontTests/snapshotText-_.Bitmap-Font.png new file mode 100644 index 0000000000000000000000000000000000000000..432f06afec93cff9099cefe8bef01d3e40c22ec1 GIT binary patch literal 15449 zcmeHu=UWro7p`IhQ8*Srx{8WQQ<2_OL_iRfE-eBF5CVjr&=OH02ntqEX(D2zh8lW; zU__oKGkf;hd#{d4+U`NVyOLqIkdSG z=d){Preq=%n~YLblbyh!BKqD}Zp}#hCqub|auzvSK)(h`UUSEH1W(mHejv#R-Kfl4 zqN=NyCsYnbIPu9#= zk#G*HIG{8tjNvi$NhuJBRC7n;)VkOJ`Uo%qc1E^Qn&k1lAk1V?vtLt#kG3D9(QScS_c@aj|_r?fVSn zuh8Dq1|!KhU2IK|0Z?W3jXv|y=ol9X62`-rPYfeQgEC(kd; z*M5~jDs0N^QfIq$<%}V-woGSst=L(IA)%&X&mS}XZ_gS0W zA)E8IHUW*irfj#5HVGzR%+tb)0JSS*qE@y+?aI-^FQ?;EQ7@k>eEXw62TpC=o6 z5`_6F?8G?qlzliuGGVRIAQ_Mw79E!MurEv7e~c6@Zo-+)=ukG<92kt73fNczi>quI zX_vLKnnau5@W+AE`8d92{K8Pa3m(;gZd}jXla^uX?CM@xqacVjP8_P_U%xiyuWxsU z`NkpA^QuI{O%pNg0e9?^RRYBN9kgVh{(Dr=*V1!g!1CT7pv>C-w(&a(i^0(fw&IF8e z{n!tYf1;dAfJ31YUVttO9kMi-6IKp(K+^n{Qy&1cTTcBK7{yv#N*pn*Y#pQJjMZ3` z(s4-I^Y?>pGXFO~Gd^y;Z(OPg7|?p8(B}lBG3g`WP)dfu=3o{}T**oCfFGI@zR?BH z5GR9L&;|EM+%LwgD%<2b^9p&tmgV?{rDSSH9nO8EzuIccnh_wB9b9D=7S{3e9C?${ z;gex>paQ+Mw|;i+!J`b59R|=lh)Tk4Dtsh)zqqD<-&uw2Yj>X^G0AX6XhWZwVfe3a zm6W_V_<;^*aV}fqkZ0^Bc6qU;FKM-pKXn{bFhtS5da3o4V8>`}<++88$dBejw~CXU zAq=yuBuDsuAcQwAO>ZHymY;wWZca?na3&@*k4d)!+=glXZTD6zmjFh~@0N?WJjBw4 zCoPOFK#okW5t3I3tJt7wd2N!WC&QZ7332V)_bk>|PUM2ewB(|{f!ifP@`rZsgRFMa zo<0y4wKdk$a(8k+yvzi}M@@5riC+NM5ILN#<@|{dS*P1EuikI=C_RNsh;yJT-<3P` zFa|2|e71R=+TbwGr8a>JB<>ZMk;{y`g(DsP1*ORnX&KK7r`t$l&$(Iiik>mdSESFR zh>k9^%MjuRc6%enMA;qkIp#(=B5>9tdP*&x)&_EFt*fLZQ<2E{kd4}w4&pouXj||Sk->d{zCA=YOcBta2BYB$cc}I`%=fSto0UuI0+iyjQYaP!unFN_Q(WQ*`^xKLkC@S zx>v^2-_a1R5PKCtMYG1U^~=Z!6SV#d)9H_*=u9V#S-f!o$yCi;A;uccDW z)RCK$>x&Uyi=#eLdY~4iH737B&pm9@*NaVy-lvq7Aw#b2v0>aDFyQ%Qhtfz1!@hse{=oQKQ{*xPB z5{fqz7+fDoy;Vds+j=7d+)}eK2O2Z$#m!}xR_I^M;ndi7%$;}BX|fnvEpJ)C?1yqo ziOF2_nn}4LKzquvc^AptC?6k_6}ma&Tn}UhUr&4>rmvgBTh+Y6QBuMl2FbMa5!lHQ zz4N@z!8%4+^$JE&EqZOht|hGVX23+FM~V`;kSE z!VS>3pU1q$E4Vl{`dSY!1a06K&7{1H~qTHGe@peKx5x17&!42CxoJJDoKC1m4P z@^YpYVRAsjWjVG1HprcxHdhEVDvqYsV~kpYyUMQ@1fgzoR|iSmL_N~eO75QMPlj)` z!Am*IYeTkhL~6tu$rS4^k+e~Yo!ZzV?sdHJvD@LR;_?KRv^SVN9v;q_2t?-fEuPf(IWuuG_Lrcq1V!&Eic5qi` z;m2m^ioMs^_6O|t<-O(uRbpImp+&^>~bg z2tf^T3nQDzq*qRI2b0BQWk%0JB}p&Nmweo>J$d@D;*;dob#++kUz9#yzGGeRc$0en zbj{p*S)|m9%c&8S=;b7?s{-_{>rBj!45O{cu2G+_th>ha*0}J1DWfPcCx4&SBmaAJCe;C%=iT>r6$)S%n$l;B~iDThSX)J9!X>V*3*vCn9p8p29JX=dH#$tH*TG>fz)JzSm3~hBI?!THwA9 zJGppa#ps~Mnb|0ugufwsQPY(lUDG`3Iue1m))owBS?*!o#(4|{cDn4v?Q zEMgo0turdXSth5TyiH0wim!#5XPe!~Gt`S;Hl>T>Jiu1)j4txEuM>}QcxeE*kukgY zV|~n0P7Jn_#guAhHNhU{8rOPor2`3iD=DUF6Sgho%=gdU*0nm(L4uaXNDr+Y^9THu@A??1Gh+WuZ$f!nZ>D^CzX^V z`<5Er8YoNOu}M4RVa*kell0S`9@2_VdDOLv_xLA#J8Pxnj5)i+sL3kjm%Yt_XO@Oo zrJ8+rn;HTq(u?g8$%W~~hltW!IfXfeTb)E1`CyW)b^+3Q@JbUnS?LjjV3Sh07WrmGdY9B2A^UN(+Hu7$7;mmzZjj0qC|r&gPte{ z&2@UOk-=m*yGN_MfVme-;)NHndSyzWexwUSA8)Af?w$td4&H__xRCWta|JbGBD5~L z{@&dW`KXw!L0+laDL}Kb0O02V@?G^kd+NQyPIf6r^Zsri(Qyy0G+JB0B;b6mhuH)c zmX=Vc;uOCqoOUT1=ZY^iU(fLVT zeqj|I5L4tH^wr!rH;VPD?e0Lue8LYS%49ZUnt)|%-60W@T3okvmhBZ=JdoAhN z%{u#*TOl>}@$q)Fi{%i9k*ZDw`-#b6D*F_{`7P{DSfRtA#M3|J%8YfzY)rUP)BPRj zTRPQ{tmP=2he1%wz$veeC)#^uD==OzRkQASs3daDEDyp{Ol{teB#ypZ1GdPI+L@dz z1H014M&OqxOl+&vx;M_d*CSF3^M>+m`suQXM(o9!BLC_A>UpiNS1&d;Act%EqA#YJ zR;idg2Ty4h1f8yVC=GAweM262Qh>qXaONfJ^q7bVBo3W3vLK_cQG$6j>I@;Gw{EEWu^gbU2346ah z>ei~XPw{+9-DxCPedPXo{9CulGYPE4F|7IM>UEX)R#IWspmoB#f`zlyzFEv$Hefq@ zW=@Y@gg+S3HCVkq8E0FprX6JLm-caQS&0qFeDlo5jZTZ;#JchRC0J12aqWb)ihB{2 zu{e|YaWWv%07fz`%Ggi3PBN+`B|Nq^I(m~y2@@~-*zB>i{5iM1hfLoGz5zM9*hrCT zpX<>P??~%fr3#W~2@Gkdie!d}^m*?mB#XIEcEaC{2N$P}1}0NW5AWG`^UkY-<5xT0 z&HTuC9OLV`>78_{Nwr6RKGCuWg+CYm>+LHVQ>N6$*JVSuGFDUzpSS4$?lbd^nqr~? zp?qdX)rYGxpkXiz)K@l{^CVSepH!Da7`lVx0(y%vmoop529xKnH;cCK!qN=BK8|tw zq@PhzdH_o~dFss%%2DNcRQZcUT3!TxG*gv@63ePaIx0tWQd~afgkb8nyq_I=klk#j z0k@Z4#Mq_hpa-&qN_;+ZrBbc;KGrf$NX!kSfn4 z0b~#?&J#cLg749E%$qIjU3I=j_p+X69{`peyjEdkScduR>NOk-Os>0DA$hF~9e%{{?>l(D3P6mK3kwkm zxP^5Nm^IT{TRu=Gadru(g=~;dEv5=NuB*FMv^P?L!d^o+bjsX0-%la?yQYPmW|9ND zUE3^|ZX=M;WsQ~%@0o0%da`+mLj@!tFlbHKsc=>64$h83;&?=lseS4C3Pi*$HLApi z<1)14i-rXF@Itr7k|F<%Eq$P%baVAk!c}|$ZcQUuT-I|TvNva;xiiae_~w~&NRsf+ z64N2$TX%*(MV-YZuzSD`DBy|ytetY77p%rCj&uPf!0PE!7#GCy^@ascYRQ79j;XT> zF`%h)$M1>!6^cn!c`v3v_w!ufRFsvKZ38uZxi^?F8XD%f@Xo_@WdD_k)+v9qJUVu> zq(b?l@qj<6>-^L4xKM2Hk<5lRnb!H)lW$${TH#8>!TVbKiz|+o&7-qucLO36sVYIbJj&Fj*OtO*bx5_i5~9f&50bJo$3~x-WesXvwRP9Ln4)IBVcM6zgvNfmpa=dxGlGQY$ zP;)c`r1znPqVb!l%W9>V16UoMmvbb(aGK-X^YW7qI#aof6j!vFM zwYN1e!;>SY|pTTsd(-$1>{@#*0DLeo%SEC&(sCnwfR}1 zf;?TJozPU@GBW z3Y1h*DpDUq!Jk`#!A9fZAl0z%C$r#M1Uo{8hahF(v7iZ8a$x~Ht_SCPS|pAjhK3-a z44=>0yeM;g8HxN9-<2elC-u=bp8$bRy{XCS?b2g>37g)O?t68d-^MaXrpreJ6}Q$T z8?ED2CgawBg}Q`2UlU}@9bv4M#P?gP>R-Vhjc@TRApP$yPd^^A0qLf4*G*1yAd@0q z-<~cg0gN^cG0>?7FWL;OQ9ph|Nl`7>zXd#W#>Av(xS{|k#PI6Gxv#DdwlfY`v6pH9 zx(lD^Sp;g?G2^H^o$|&mZ`BAJte+1`GkUZ9dMgWXEP%A@%)x4*QgOeM0e~u_pcTO< zb%(A`t-}@L`TQg;oO@|F@RW6f5~q*Hc0l8lo=k0E@lz09=S)ZLP)DZ_yMZv;;F~3EZr}4Bs z&u_GGGajyEV9nlN-~OmS&FM3s^V>CG#ci&&-VyYrEux~RtwRn(0ePCksu$CMW>%=~ zT|1T=z4cjqNiL*`!5T$~tx<6dXM4Fg<-GWI5?iTi=x&_fZZ)PWIJEdRqJ z?2dQfl3>qYR1vVv-qQU*F#i*ZXwLvganMt^&k_c`<*3QC)`BdA4z4O?h98dgo$dk< z*gY}Ln^Vr{CJ;WPS^TAfwVdLjEU0Po*Dxg&E>DyWX(o?`&b;Ca>kuH0DM<@(<26R* zykGXiV8VIShD*SUL0_&csMZqii<@f4N_n`XSGsq+q|7H}*7WIV#&fBAq$WlfC+NC< z#w!CENyWB?vI?&`mmrH(<{eg8?m(tnNaMNqx&vMv0(i$9bu&?QlcNQic(AfeB*3Et z)u5*Dezfck#Xig@NKS9Ij$G@OqI1#%u}Msap-0RC^5Z1|+_;Rc#7T8Lus;R2Jfxgt zu8^Q>$XWK89z*1b@XxbM+G7hxRr0DDeDQz3xZ%qG_Gx|3k0>4YdI-ON?#DI%rtbB0 zy$d-I(sx0*PCg@&MK?Jb1aNoUm{YQaTfSHlJ(QZ?YMvT#vXiK5Tvo?=>-FM>j!3qI zPvF{Iy`)b_Yh_Sw+NlZ-Rl;kM(HV6ck-tb(=(zHP9}9_v9KNtV%s^at1lnS6NcK<}qoN z(tRexB4{kIAj>nhO1FS}0z2Yu(Y8w}Pu7^dIc3_Cauj>9zTq4NhtVsXz&f_Nlo%T$ zb?Bs^dcJGUxKXqEE~maNbrga8f~IT&fo(9~Fj@+pVZRsk0DiRK?+0VvE65~b4AvKy z)4?Iqyr`ikUOWzN99dOBCj)vJ7TpbeBlV!hnUB*NFmx?1Jgw$vxuV$=INgK?_o9ck6gc=x6(ZKUqOXW za3XMd^xpuZ3CF@b7j?onU1MF&OMBbBeMY#Yi;1V4Sb>c0E-I4m522&z7AvfYS%Ji#x*%V-^a%g8E?1gBb zXrGD3mqL>#*7byFD;M;)iT2{prKjl)T-5T_9-}4&$h%e9J74`pdUK2-rWZ&$4EGYV z8(E(5w^I0|RS|x(ZdMTO8TDa7M{=|-iMu|3CKqEC2&WN0aT3d^IfTq59w?q&9x6G=V~aZ zsvaOiWZ!hAMQo=x((^*MiZOF5L%SC)PbT0VjwblA*PAceOn{fauGdSlyDnol(`bk@ z;*tE*1kyOHE@NUnU>8Z#TbBDmoAx$qmhje)G!R|by|DwgHheca`*HESu8haK0f^KH z@i@x&*SBZWtNBFbGGlLMWjLedt6q(N(mWP0o^cq=N>@$->(^oHQ=(pO-E}*K9_S7a zk*5d9JkbJ&{CtjcMLl2 zpU>_1#JraD8LQ{Z-NO>^lgQw`xv=?pnSyaY=-0dG5{Uv-FxjzTFZ~vk_S52JQa{z# zBNHKDf-mkb#h-Hd7thCymMzbbGvKlz4X3Pgbi)R+@vnk`NAtu~g8k%Mhr!icXZZg0 z_lTXOa{+!XOb5BGlb7zCk!<+c^1f{gLfJKHXZ`n($Y0;A-;uiE-Ka|q|Kl|q|5JkY z5ji0CAD#IrM!;C+%Z&>OZHnR#&E%W92}<*Owl~*_$$9=JN$+gZ5OhHoCx@twz~vX{U3jNLBP*mn1H~4lc@VoZWoVRI+&d#pnRVRopFST*35P< z_0K3}7!FU@NeR~R&9bdVIO0d9%fCc|ZHcNoZamQVjv&m|kdRCB6NI{in*J}N4RaU=r{p7^b+ z7Xn=&f*!s4Z>Ha_2pHXehW%IRf0X>^llqs{^JfG7F&FJM`K7dQWb=l>rBBOI8!VPB4Ou*c9pfAO_6v$Ly@b$vO+ZAXh8B9S zNq~eFN&?A=@Ap2>`Q`fu&UL)5?8)BQQ})WttXb=xb?-1Ojo0+FEVL996!gkU@;Ve0 zltvU3=N4%$l7I1GzHUtZI_IYI`V~d_ARCH&@!Zx(`K`J-#Ut`L4aK=H_7oTXWFa3c zl#wH&}^RP$$ zu~lF^RwHH=T=Y996Zi-io_Sk=>b_6--G}M4;o+CA)7}k!Nd9C)kd)ju`mWJ*eS#?` zB^T{dGBMK`;4)jgq=0?Xx6KepGa)54#fyBR@>NOc?8%)#3Q8KTKgsiJ4^hQz;j$Fx zE?jx}Cpnf2q=+c_zxQu)wYy$carvLz>FSHsq2cRHub-4 zbW>h1ik9VN_@^$e_FRVli1H_irlP523(;ZwuXJ250~Of+Bi5gUjqZx&i;D%%|10TB zvY_IB1^wHj{}~T|hwh*G^LLK^Q51ib(I2(=SL^;+oc=B^e^%kY>*ybI+v}cKKGquTuJPnIXum59nE@oeozO5j#cRUR-AEijwfLsz7;8Q|NkLhs*i@x&yQ8JpVf7phk~3^<%1JC%h$Ob#`A zzI4u8QOMXc_gX28a$RWiT5I9p;|hGa%jAt|GR#*?8Oc1arm7mxY;g-?{7cP&&K)(P zFGwUPxNf<0D;KCF7Wlrv&FMnZ69h~RRFe1$pdPQP-MSg3pw=y=W>q>Pqp(ET5bEE# z3K69Yr#(fPv5yiNk5=cBG9Gx%yF}O-YY!l=vmANA0E5rZ)KZ?>=gxjysZ*%qQ-IEW zn+{1Jf=<@NUiBrF(mTSZiioca0#uVrFVS-z`a&5rrA|JWtqGabK3b^OnaeoS+&-eO z04%}$O`lsihv4Zgs(M(1FmXHOF9JiIVO0qIXLI$iv=CAxcnSf;*-zC^=Q)r_i= z0<`ZXoShh=#3O(9W2d_C+6sJ&_Uk~wg0LFdA$VE(QY8TWi=#hBtO9N@aE9SQjTXVu zJ*QDRxUct0uk@Bc_yVLFGV&qS_@jWyl1QZ5)YQ~)jl!NUX0{?cmACU6oJESRlE)0nK<1P2V1m->UKWTZ!I#mHlqJq-&3 zyG#hMwcSFsoK;8AV-baD1F>7axPf6En16`xkvBY3Dy~gH)wSL^*}TP51+4Q$`DAac zbK*CyZnvE`>qzZket97THhW~SY9IDJ@<~n5%$qxuG&h`svPGr{;YW9vyYoiHRMgXV zs>aGdwYxiq+cSL4+uNz4?`=#ClD4!Q{rbSzlyD|Kl_(a`0?+N~r9&fGDx`=sUZp?P z<9&f9mJnjl<2993X1Zs-VOhHKb4b?J6EdDz507FIGcf$>6q{_p;_}$@4!Ax?hEiu) z69AcC81J1Obl5LUAL@t07|xuLJ6dHXb&=hoi%T6jwH52@7Cg~rA|y1#-I^mlUi=Kj zXE%)HyDr$RC*7x;=f5YuE8aDJZrZZIKSN6fE!V8>xGHh?(4`Y!I#i?!qcI;p373@F zN0@KrxM2OSOjr6ts!F3+>p$zA-<9ke_TVq3A4d+a>C}k@FKc+7F@rXcJpLB6eaCm(~0)cek;( zgxe7}u%iY01Up{`hDIZ02MZ^ zw7<@yylJqZD8Nh9)Lkztuh7f__Sy$kD0v<}^I0AKQsCGkql!=`cc^UKdhDfnQlOd~ zJAZ};CNUkQB+yijm1Vi23P_iI1%yS!R2y2bak3#7FBCFQ{m2HCE7Xg8xOMJAxI7oq zjq8E5M}$1zQdH*0(@P_*Q_9rDG2?3!x(zK(@jRiI-2aO46P1#?V#rLU7R^JwoB(NK}9?JxR`&t=8Pj?wmC4B z0*4AiQIlD>gpKCCSJo!)Z=PrkQRk}L%fieYd+#ukJFc7}>pYk+t+0I}$B2uc_XC18 zz%t)tGW>vg;b*#j>+cVc!$DN(?mBORa-};9g=D!$$7&{|N>T<{;DY*k8I>i6!${n#@W$ueWRoVCWPv0h%1zE zSg1eyU?#+8SRQ9T%H2nvXtNlpWSTi3NB)Rnq_@dIRv&oc{2ci&-dy|o9a>vrP?kFM z*46be%Ut#0sI1XR&25p@tYpB_)JPTyYXewer_@N>UVX#WX4#iX*GDV z>(W3n&B9`wR?@Mdrw2DbQJ|WelIACGwvevm5Cm5H0moyXFRnP&nU=t>-jDmG%H1+MGI6Az18>Zib@x14Uz;+9*Ibkp2A!7>0CdodI${>Tgi&Rgi%=p;nY3J zY%%s$HR%y}I&zGGl;MxRy@%a&`o_@)1mmCGaVV3_yr@9IJN)=wjI~N`{_+*r#SFjc z+oQ$OGJB3Cux^|51KXim=aGEB8HUU`3DW7le&Cw19=~0jc>74y3`8G-34ssxBw^;T z2LhVz9mg)#3M3|X+UBua?yhP8%+^#*Ryz1%`-h>*oCMwT!57ufU%Z@9mXfl>uqmB_ z51U=cGaYhp5t1MtuN2IfA1UW4Mj@EHVtWs05GUpjMAK#MdCM;T5Y(?u*wSOK!f3Hq zJIyug`|C7Zfr;WhZcA`uXQEf8f!f6IfeTuV8y)2h~BJj4iXoSv|WB2R(_+cqIJzvi0fcr>L? zysI(wHD@ERs<=H(kAW+bcV_HH?RXHxi=IzeMB3LN710Ll{f=~!nUm3*Z#I$zjoEeD z7P;N~%S;;>)l;87IC%f7dZ@ni{CVeJNsg)T`Ffs%E@t~XOz975=O&vEPThof-1|+1 zz3}x#N3yVW*^Flww@JZNu#Ksn4_nfT@E9ME@4Gn@x7UHPGZE&6)M9>w?IYR`%xwV4 z22x}*ZrmwH6taDBHOkNN-abU%XZP|*+U=*4``#Bpp88pc?}1P_v!N|#scW$K6Meak z6KU$aBcA%aVMdws)D8TwPsDN)=2T*DK1|Yof8aEK-i}#A*{`}ej0Ma4E|t{Tn%&h? zr^Z;6$L*(lcP073Qm8-h_k}cNK(6=l?j3Y#uiVL7*l9IHUjJ>%>F|B~nZl4Uh?l$f z*KA*rU!__)83^(H$Ry#Fnu>hgjlMTJbk6l^DZ+b0axv>pi%nOBdP-B=^7SD#1(EjN zd9!s#GWJ@q*jD1S#1qy1Ohht^$W6i6h_R_>QscI=+)|D9-4PN!6ZZQy%Rgff@3ktp zx?&qBC}X6>jW}-a6tnqz?*z62jp8*6HIm4tXpW%q?1Npa%5pkaZ zjII7G%&pL2I^wm@`(2zSVX|YBdn39k(vDb9o#Kd1YwsqW%ui8wIugD!&sZ zU2c&`s#y2xR&%d!`%OdvRO{EnGCM|QPLZAVOB06?x9!KfbK#%5K!@s_Grdf#%hLuL zhtS6Hh{?|}b~>)4X0^hjxIVvOyY`y;i&<^znxrT08yR!^XP32;adL&g?{&6@P>)Cv zqtApF8ECsoC=r;6-M0y05#)g#$!^^)?auOkv>WX0QiIE|4xsAXKq^<<;*{T|TTOUYM zx{iRZB-~XiIM#8pRHqM7`_OoRKVEs>`@LS{ zWhO~gKSVUf8)uT?KGHLi4Q*eGo;%;El)V#Lj&FYp}+ENxd!Vs3_VFO5!?{#R+bD?Y@z z1{v--;>C=P@Ga+qmD~k`P!5jA4;RiR?4bU}mCtvMCn{!Aory@mEMHO?qq;uqTC*26 z#aUXPUQP;la7l8r5PspO2n|^9-Y^WiA#_=C{GEi~v;CB%dr`LVEK)>8WCbEH?_@hd zdLFqgpXogPjUDLTzUaIEI=Mpnu^bE{3%zHH?B>;ddtXn{-A7WhRnT5U>N$2=G$nIF z7IqV2@Zqw#xAtqugxuWmmFZ%%{K0!j7Cftg3%(aTO&?uEZ;<&mY>c2M72*MivB()n zt0$mGm%AV<)nQU0Oq!r}c{95Aa|{0F7>V^NYwn*O{h#YJKbw`$eKER&)k8LKI_g>qgXPqo-Lkj2t&Y4a9{0-qr`TfJ3#tut(1Ph@4d=I zMT~=2k@QQqR{|PNw&u}b-=vMR6kO-gZRmu1RC8#nGB72B*m&ZLQ7S>V&HjK0GJ{vxl#4vWZFaFHsXN?eko)P~=vl{Dl z?htNnE7Y!W97s4ktH6F9>geK8_EzMAQM{j>41=yjbgML69qvex#vo4^D4e`&F^jaO6UsLM&xrbRN5%Tm#khfb{H8v*q~NQO-L5UWuln3ZjL-b?p3zvk9H zDr#b37h&pm6U=qaZB=w=+w9H4b$q|meJSJ~+BnJK+<2c5?COZ)(VNX! zhB%H>Y@W|}!8=Y-^h+cf()@`e*wSh#!s7(G8@ro)7!q?=GTA)thQ$??oB zg(6cK#&^ZJGZ9ilEk%)RCm&|JoF*$Ra9_;?yw0j^LkPF~%w?s(H$K{JkevhhiZ^Gz z=!BkepPqL-L-mdzz%Sk`Uw*PZ@*l&7uOcdL#;Hk8MShN@m|!*Pg^9jRFv#ty@=pka zx*bP~m|~nQvy(UB7ucQT1D?sR=W#$LN^>R-)#7DR1@B0$8{4!gIoL=qYB#)YJI&fX znqcM?j_tP38ce7muXk z*`%;~LM+rO_*&fMTcVW8DnYpI(jt{Zx7#{e`h9P~9{qd)sC3LjaXzlw6CxDKIrz=DM z=FD(N6PG05QC8+o)fmIoz);2jS$D6y!|~D}+;Mi$a0KnCFWdqf!(eXN zCF#F|yrcO@zhrgF$-+)gicdIxgtCOb?7%0xLa*GlapSrB(NhuFvDqNOblGlNlB!^* zf2b()Tg{-u+KKS|@P6*fpW)5UCIN@{jb+*Eb z^JKA;5i#`wi^O@L#}YY?aB=S|pc?-86KWsQ+0k})W(4U<{=f^zwO&4A;>+k`gR`>+ z0NoAC2b=y1(ZooR!LO17ey1OP9n5Z&XC~-j+a`ID!frMh*-zGz1Wj3#*Pq<|CeF-# z7nHt{hskO6dik*c9thnZG#$YeZtnL3X0PKO3%B+U2a95l@+d$c4uXtmCw-Jr;g`qRIAZzc8>%k%+ulN zarZ?ATCcHY_o+825@P0|^n|QwpGFDC8qc)Q8!uG4j_*DyJ4=lWirSA0)QGMPppM^CE`Lqe~qzjQpP4k$ay8?ztQw#cbOHgO&yh??EzL zd%?LdkU#Nc<9BX?zuGj#=1~`n>W2XXQb6KkSFQyTSsE!F*+w{2vd0MlOLV{v2c^4B z423}47N3BIgs#JQ30Tlj?^%7pbWw2GwuI|_Q$OAh3(!u(_4&5XH!NS&?rpoX(H$`F zuB)e@=}x#cJNqU}r!kY(xCNIb7mk)Wj|$q#@!q%s)zubfSRw)B9x?FaRQ8Hi1BAfR zAQZ8}AIrgWu+Hif`*t7=(xMqd1L)<`?I?E$-R;naY;I{KWybTYLWjj7 z5Y$2u`-Q}@=}$x#=Ckuc^KGzvGU`~uC^ZIe*s>J#KEpMvA+6D%XW)RJ(cYf7I`k8I zhjK#lH>1QL6irqbow>`li|su5*4<}36t35G4#G$qMsaMviK-GrUDmqj(!~29?;X#3 z2i@(%VIQ;ue2O#sZHcX)U2%vB<?K97w$lHL=GgrUwRnE4xF9>0f zd8jwcCq4ec2U|)dbj=tfO4L^gfeZdF!#LMhmt#$CJcQ!5&+##8% z#@!os^b>Bd3FoMj2L1tOkTt@1jZZcy2Va5E9!^%g0dFalGxUj~VB;dzCo`&Q%5&=- z@|o?0b>3GHo3%euw@=^Vgl{>DsnyS1c9mZ@`MqbKKr) zd0O19zCCt=?ZR5JvkjBso8&&hHZzB@(iGEFXf1vuqN0ah%p$FYUq9=oM7hNZ z9eFx8rZvwCN`ZU`?;iCsXUiX(3cO{!3vhZ8K?gDj2y(}F7i4ZuSIvwC>C`u`=1>F2 z&+rNS#&;zf-R(ua9Y51DMZ#A19r{^YqVzH+=pWxZ8!5gMG4^1b=!(Bx1nH<`Jr-1; zV&AYTV5G}Jqze0ly2BbwUv2-e0NVeQwO8Y;UGNc59X}f(n1RC^(k{$ZN)|KLZDfIr z1-E@u&>O?P%l6c*)rtYWUSv4x6soS&SW3qI{VQ$PoO%ywDd4XD8DKOYB(ZM29M~Yp{?T0F($I1-l9N2vt z^-9c4oSJZNeN5+2*Ce*-8x^EH*&!!)X%$zd45fMrjtyS=ZPN|k^3Zzms`}3G>9?5< zt5DL`Cu!Rok|=;JTyj4h*;l9bnMVt1_Cj-MYUWf{t)T@}%zC^0(&h5;a`U|4#fHub z#{m=lAJ~Xrc)#K7dN%!rR5tCh;M(^KcTVSr=PG_`z=+W2p4u4SU%^yOa9lh;Q~MJp zz&Stg3*bmr3*!M)2zV84eE|dA@Wh2I5TM28goi%f?b+W&b=?dCE z&mE1jm`co=Tt~LthKxS#UVh3}K`4xxlKzrig}BLYv}LLZ^4rI?YUSpYZMu}d>FzUW zx{D2RT#?G0#06gj`MazZ=ll3sABh1i7*)!1zSB7a4(_R*sS7xXgY zn(33Aki`AqthF&+js4pVj-wq7{cnTt3cO_|#GZIufuY4WC$G76G-74`m*9>^lwaf8-5m=y-bl`W)VIYh$_U*nVq4w3n>I{#|VkAch zCdkXC4NkFOhnKtZMb{p*CW>YX>V;nR;U6BT^be#}o{#=w{ zBZ3$Ok+)w=0%DkO+7ECKUPa}}q#rzYkkutHu*-W1e@}=%a%&v&s&Y_UQEBTaGi}Xa zbD(XZmBQs;yPBox2cB#jWNGPyRS=Y*)fZNiEodH&9xp;=O8lwvohY zvm``Ec{@gnJw{sUbZS*1p2>~(&c_XQ!F~fj(oYQpWFmpQk^a>@eWR5lqRctVKgiE2 zQP5n;&MJK8vO$B>QO}}mOdlBqmH=Jf98|V0`h2?sC*~=&e*OB;_EYN_*~AD`z18MT ztiU3WPG4`qI72VXXjfyUTQjb?WP+Ftem`Lvaubw<@;IQ_R{Ihf=#-v;w8Q4yi9gaN z?{=yhRG6$8E5``#!E(SpDA5O${AGS=EaCU-DI)QOUJ#oFV?Yi+@T665z3!6JK4ANh(6Db@}Z3$CBZ>aR00)OqxM4Jer2;BAz`v zR`6ag`-R?R1xUf`80oHkOFC3>p&!{@!~Nza?j^h3)6_*jv861XswwJab%tUHbu7c< z9r9leH~M~1soIR>^Excfw+85=8DT|VqQ2oB*s5QpoEko$wH1kd#nVd4MECb|A~HN3 zB6bESVsXJ7ILECTyMfqlYDR6?79`Yg*vlBDv6ss;7vb-M*Dw5Xqr|kq0&~XzVqjiQ zG-NiecP}Hm(#V}+OjFp2ul2RmjaUSFy!BxunUiRrd2gM&*SqX}s}xT@@>{Km9pPcs=82E!~Y+qS*EIX~DxB%)?TF zBTpE>B;7Y#`XlN_Sk1wm%Q<<585iqWiI&X#(wb_mKg6nk#$>Ir(B=D zlCiJs=X%B*86B;+ak}bv@*$0dr7*Hr7wq}~Y?PBbR;;b+e!e*yRgi4)Z3f%;;vw(H z6!bg2wlE-Y#Gt~W45(bOV*FMjPh3ndS1=@8YC&OkyZKt8&VB#YwEDx6mn-`|>6Ay9%E;J%~tXz(GZn z1orWfzOeUDyemSVv=MIrr(e92#0XpQTA!TiRp^3wQs!8SHF zpM-=&U*v$Vtauw+8C$qJ^8*?VB$04dl-A|tjdp_A`pjsa==i*6U+}=P(iCH9; zieM@RV`u{Rw~^WCkHT)&qsPLTx5@Cvdkd!Tw#IleGTsxQuudkueYs59xqbgQfr zY+G=FU8-slAEHBgAih1-z%$IRTt!@oktv+ci=v_aRwbd=2Ba62&LqBPPg_mXR3+$? zw^q9~n(KUcbB3pvjJPRy+9kp%;dZ>FFYhcd%!Aj5cDr4qtY5|oRTu7uu(Q^Ro^Zo2>_PqDpQ}m$4pJ*NKh4M z#(v0HDax7Ov<&EBZ#*}{oXJy@+M_ckE;-atWai${Ri*5@8e8YrcMzNhj_KU;8qCHID7 zihS<}IM&F}jKa2b-&Pl2#IJ|ZNz^7*z?5~*pJKiev{o*a8-U9dFijhR!xfiwmuU0h z8JjaN&#YOzlTd+pLDBUo@~($u-%84GaxbSr#%GONG8$yW;+kgCj`-Bni(eiSrRI)m z_wI;N)!RCYV2(rSH>2$DA5$IZ2cPV3_*@^0vNkmLsPi(8gBREY7N~n<-7ZQ8=1M+8 zUKPEp)&cCBD=9znf3~9Ag#1CLOMHsSmOa0UXRSzF2q5V5cCmVVvgsM=8fge{h7aA5 zJ$v!M$4|riXk=t`b=Hk^->yO0oGO{q#P8f|XFaiZBxEOJ{%#eHraae*cK75P&qe&S z5vrz;k$9vHH|UOG<=Y-~7Lp+z$Q|?N^9(=E6S}&|>DC!aPhauG56|D3O6&qk$i`z< z4^UQe!Er`OKPdOtPtN=KJ;zgHe3oWyEIklMl06$jq7N_^L{*h22cE108>I=6}q)2!nDiZ|!-StGS`}?@S@4W^8fp4rW zp1ev|n|yEr<77PoP4_+x(`nIQ2WvrFcjL01iVEQ2rP|vcq3KePb`M@J9`Cqs?P3f4 z@$soy%RPBBYNGG`)9s9H6c>8D)|d>zyArJ7&{j74ujMViL))UsLIA-mKWTGJ%LIT_ z1PR@JpqdzdW6fu*186fMCLQT#m;2OloWEM>z<6m1E-i4L{qktM=|jypMa#pj7p~Lx zMG(4M1R*OVCsqiySA77?290c4KiXDmb}*d1UueF&H6>DDPJreAv?@;e#e2)L%jHBp zps~)8Am)*5c^)xT>)L2_B+hhTV{lW&5seuI(wL~{p%)6j29&VOi*)}uWcIBi(2to-MZm-z6*_bZ!_CC zoJ)N$;1+HN*y9iU`7)?@Ler~YsBA_m6LIj`G)ub8200{~xh5;3j$o{DWr8S?V|}t$ zDFrr*{g2N8o3P>*-Q@MmOZzvJ&UQZL&#LK3jS_yR$6D)_EV; zPwmX+hzM$e%$6}A>#F2Q!u7F42orS@4;U<+aDT4uyr<+JF3sNc-$sq{(bCOOySgrP zIjnGi1(ft8gn|-$@7rz!5Wu>E)Qnl(hlXqCOMAaD;Fw?B{W-jW z|2Fe|zZ=CvldmrqpC1cqM7NW}3m6>X^BaV&w8T1z1N^3Qx4xoe)(f=Y+&6TYRBHx# z4?2e&)*`_tk-1&Nut4`kgr7WTy>RF01F3k@_rM~8Z>@f(zJ z<#&OcXt9@4l)l4RM=9nS-9YMzx)S~J)>J6V$Rl?I(}YnnsJQhR8&8(pGY?CZevmki z9pK&a&z>Hl|4LWAPgRdxTMom0FLoso=CvlpjZ2jW)}G^;S|%pIVgT&RGBI!*mL!uV zEm8Zx?X_i-_#zP9W49t0gO8uZeVO2CvdAKbt1{X;PO(p?Ht`)G3{g3z&f7@`SkY#C zE$m(H3s)XyQtB4@-zkGTIc_~P;KUuKvx#09)G^KhI>Pl3wM=CWtXWA)VPKNpcZ%rtNej*2BLNva&oriFip0N}GMZI(&X7X|@3p%MsE~W)n;s>JRotxE4AhoTp_QX`_$LpHxE;wEU>u{8JY$ajo&nOD_J84J@lCp=lNI zK5nB3_Ry9LFp}exr`W0x&2BF8AehgNT0@qG>q;`kIRi7bQnD)r=Fg@E660Bh2)U|) z3C0fmHEbTnLk>FZDQFP`UFj750Znm(^2R+*gRXCv$N_7xcB?MZl^3tbf!mg__DGbj z0tp4SgF|ycpPXiktHz2g9kK%_;Ak4X6t){ z+k|o*&uy4sf^Y%pT?o_M%ln5-(vRmpJqP-1bto2fNi+V2`A+RkUiGb za{c%xa@C)*#L&}z0z)~~YMZBaOGXfeQ2rBp97$%`D6(Apm(V6bj*FaXilzI9(Ds=2 zisfy4rGIH_TVy`U*6i=k|FGe1kvVRWPw)Ss>->i?=Si;5(`oh9f5Mvo*ZL{>CB$6+ z<>4uk*>(5mFa685%OF$nGFY4beV#n>b!_N`e^_$u8e|^dV3gUv`L)T{N^<1r$^Ur* zOP-g3wi}9q|K@*4zRtgM?jLa~uXD9myWL~{H~$T;cHxn4|2#d-|5x?>S9ku^{Qn;Y}kUh{TMt;``OG_RTAl!^lgWSKUpbu0De zfMsRkfJ2TTI9pDrsHiA7BnpU#3MdFXbnEwj^?(1oczSU@oOSj(`|N%8K5Ko~cP$=X za&}PMrM^o_N=osG|-So5S~3 zm5Sc4_k3-&y)G@SXY_&ouOR73Ce!SDk1BthIP9;p!%g$Ms%`Trx&LZCl-*w1UVuFM zU3I4?_1{5AIy_u?=gv#DtDtYaOG!)j9QuDlJfKps=N>ZsyXs;8f3|(sN@|ypald|P zwG*+BW~W8)^Q1xROaJ{g~9hul>hL{n&mxfBx}JeK#jR48;$V{;xav z;irB$U#b6lh{C_Eol~6NTp^zu*;>>_hOh`%#6q6SuA;oyKOM&-%W`3z*8-NJO?+L2 zfhF$ul@CGIUvZvsXLBgoDkkK=o=YnOMRzx60=0!U+ropleZ^age*X7v5zg~+NPjms z?yX;Z)6@D41qvddvsNBRF~W zb7t+^W=1_$ya=rv@DzZ(-OHmli}$ay19|Oe%@vXWQ(>N{tuNrkza5ml(Y_a>D%dG}7-LRe}eVO(d)> zjCAk&7ZxV{B7v21h3BU+EW}H)lUVf*iy&`XswKUnlk!V}h ziD*~o`Qeov2lU+x0F{7Ym(fd&J+FAKxG~Ab zx#dQVV(8aYwd`v*2dvSF_kH6i`k~dF+JF&cSL>u~MzTeCj+y~3(P}ex*57u=SS+fE zyUP$VUeelc!BVT8h+#(WdY$|RIG$^11-XXfu7*xqs+mtL-PWCA;*7$I+wPN@W&w`{Ex0n3#< zd=utRrvaRv)C_1F-T|ZUSn}dF9#9scKrT~k*9EcNgHDbJlX1NKSbwH-| z*#!3?6Fv|};-$yWKTFdVO>cGf!5d197M|(U1cq}Tp|Vc+jbyJ5EOn-tlF1vNGYmu9 zh3K#n64PWVhS2#>Fs$e{)7aGbMt?SuWu)&@@#Z$EjCZErisz6fRIb=7yRkOp9n~C@4ompTt}Cmd)$jv=Igca+hRBU}e#_J63ho zc`mO;&$8QH&6i2u4yHB^-53_tGwi6`?zTgB%y)kP3bl`Q4f8OVmDa~V+{I&4ra`uA z8;ak!mI!QsJD8AEWh|DPuR99%s_0~hWd;pW6L>#7w{i#g>z3j5}^YXww zCCy=@jP?YZv4)!vT+x+YY1IagN11~7qlWE0Uf+OOD zq``oDieBPZy?GXO?kQBBjknE3{g;SjFV_mD3F$r_!M(qN zXC)F}RmB*NGToNl9w?gnz=0smfgB_$z*5h*F26kFxl?EIqUqRto3`kW4X)|2k(f7MR<-fdr zE20$tvHa z5%%%2tE)zG9A*yC`dJtLzPOY#UyfcL^}1AM6_G0OC$AK^QxGwAB%fHVo$sp$G^k%1 z(rcSZ#l2~`*~bX#$xIO(n<7OUt(PM6A*=?|Ek4o3w?NYn4CeqvCYTjj!`+bOhT!x*VzT|Jl3_J$-^fmGIFL0-LcQPCKUI#&ISXBBix=$|^@DO-d;{bHH zH|e;mR(T$EV^A5-THBbj$1{ugU>8o}m!smr1y~jU=2n*H>TFhnXU-L8J2Tr|@3X-L zbXJ%LJl%@hW~Ca&(+XU}Q^d>ka{A)1`+{pSV_Ch_(E$5~N+J>C|76ZShLaYl<_%=5 zJHp&J936DMte@a4TrKFGm7Q(s8r+KJ51XY)Hs{N7`Xkkc_*eUJ1D9~4$NgTAnISz1 zYkVv$g1>H-7Kal+^}F_>h&jg9(deeGJq$~ZjTjw-yBRMCw8QER=naN0QcXv zDKWOfK1aYAx#?k@!Z}qb=d&{eO;Q?h)3|O>(1?nit;|SCuz6a^6PByLHQ>-#H?UEJ_PI2)-L*Ace(bQ|)(0<5x6ZSqxJ1}ej1S+XoTH*LMq(z`Df@#ys8Ji#S{9?gzDM zT4-IRnoW3Sq=SW=iB=eWJ& z_)`y)Pw$Hm+-e^?5B2&7SP1U;+bk)XjB+6+U`kH3 zD@)%{?4ZNkYgUtXiJ}OA9TPv7fGqq8WvmDfO3?8dDcc~POY~^=(yKDZ2$oqS|7kL^@32eN7k@)dtrOjj!D;rs2%eh zQ9{{boX#auC#c?`<3j^UBOddltR_+`zW1NgC8z<`KvV{DDvnYJt*dZItqO5v6djvO z&kN^865B0+Af=kau$Q8Odm@jX<&hdIeTJPMZABsR69`lp2x@_kC9d(CvPDsA&4})p z%g}m3`NM$6eaM7C0lw>3!lcL4m4JfzzKBG}u;&}a6L2^?x@PtDzV-#3ek7H=LH`Hd z=O_TLLGt`0xNRz`i<3vbbsRGL8Jvx#z1Q%rrF|TVuM)IdAs3)U{dz~AUXsx24~mf( z83k3tQrS|?637u_LpJsgJn6OZgNvwg%0wW~%3EfXJ4ffWsq-dp_qlN}*v(8n?Pa`O zx3eiUaedIi4y5qFOVjSSXH%o7CyG&4tM#WF2ihoxdQswb>cGV*rm>R@V%Bb!qD~Lg7x-?dx7(I`td6*pKI;SJ3mx&07s?Z3Y&s(Wn#b^69=FT^siJ%2KAr-zky2c65oxuUh+R zDFLa*Ih{F~Fzy#u@A8^)Nw7%7Xam|6lJVAp(#)#*s;+#F3-0=+Lxwnh%P7>*k~&x) z(^$f<3hMa{leE<6Q+rcz=8RU)R>InIt)VaUtE?UX?03gJ_KvENCTwdB5ioMaddQM zBN?@l%>z~kUf_hBFAC~W!ev{8Wi_6#HqrU~_vXHtu?5Sb*s+XqpKE$Oz7_1wGQgDw zOq6GXB`shw!DE5YDbOC9ni_hp)$8SMLSGPiaVg8&ckEHA*s*6-^k9FsWkM8ltac2; zA>BnYYau-*r*HJ{bj&g+)51sDJ0|#yH!&}p=R}Np5nJyo00r%LH=Z2S1Ec@4!ODS;yQcff;31CpTvw8(t&)lltCrpOWRuec)(df%(iFLLMRN?P_xb@J)f;5J2xM zs}f#N4?cc3vuAbQv28vJFzPos0`9e#O1ya+PAb!AL}Cc%r_PLq;ErTkH6lgDmx>6{ zcBQaSXe*JY)y1$E^fOBY2hemC83;yoGs#Tnean_M5^!x5)99s@M9_>sz5B zoSatn@K>8(MSl?}7`hp%BBCKEqkfjBh^Hx^p&hGykW~4c
K!mlBjUYBr9h^qEc$38JPEQ?R=u%-C&p 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 Date: Sun, 4 Sep 2022 15:07:13 -0400 Subject: [PATCH 8/9] many improvements --- Package.resolved | 9 ++ Package.swift | 6 ++ Sources/RedECS/Entity/GameEntity.swift | 2 +- Sources/RedECS/GameState.swift | 18 ++++ Sources/RedECS/Reducer/Reducer.swift | 6 +- .../RedECS/Reducer/Reducers/AnyReducer.swift | 8 +- .../RedECS/Reducer/Reducers/Resending.swift | 20 +++++ .../Rendering/Camera/CameraComponent.swift | 18 ---- .../Rendering/Label/LabelComponent.swift | 3 + .../Rendering/RenderableComponent.swift | 34 ++++++-- .../Rendering/Shape/ShapeComponent.swift | 37 ++++----- .../Sprite/SpriteAnimatingReducer.swift | 1 - .../Sprite/SpriteAnimationDictionary.swift | 8 +- .../Rendering/Sprite/SpriteComponent.swift | 19 ++++- .../Rendering/Texture/TextureReference.swift | 2 +- .../Rendering/TileMap/TileMapComponent.swift | 11 +++ Sources/RedECS/ResourceManager.swift | 2 +- Sources/RedECS/Store/GameEffect.swift | 4 +- Sources/RedECS/Store/GameStore.swift | 12 +-- .../RedECSAppleSupport/MetalRenderer.swift | 21 ++++- .../MetalResourceManager.swift | 5 +- .../Operation/OperationComponent.swift | 54 ++++++++++-- .../Operation/OperationReducer.swift | 32 +++---- .../OperationTypes/AnimateOperation.swift | 18 +++- .../OperationTypes/OpacityOperation.swift | 2 +- .../RedECSWebSupport/WebResourceManager.swift | 83 +++++++++++++++---- 26 files changed, 325 insertions(+), 110 deletions(-) create mode 100644 Sources/RedECS/Reducer/Reducers/Resending.swift diff --git a/Package.resolved b/Package.resolved index 2151e7b..914ef6d 100644 --- a/Package.resolved +++ b/Package.resolved @@ -19,6 +19,15 @@ "version": "0.14.0" } }, + { + "package": "swift-collections", + "repositoryURL": "git@github.com:apple/swift-collections.git", + "state": { + "branch": null, + "revision": "48254824bb4248676bf7ce56014ff57b142b77eb", + "version": "1.0.2" + } + }, { "package": "swift-numerics", "repositoryURL": "https://github.com/apple/swift-numerics.git", diff --git a/Package.swift b/Package.swift index b8b1099..3bada54 100644 --- a/Package.swift +++ b/Package.swift @@ -53,6 +53,11 @@ let package = Package( // .package(path: "../Geometry"), // .package(url: "git@github.com:RedECSEngine/Geometry.git", .branch("develop")), + .package( + url: "git@github.com:apple/swift-collections.git", + from: "1.0.2" + ), + .package(url: "https://github.com/pointfreeco/swift-snapshot-testing.git", from: "1.9.0"), ], targets: [ @@ -70,6 +75,7 @@ let package = Package( dependencies: [ .product(name: "Geometry", package: "Geometry"), .product(name: "GeometryAlgorithms", package: "Geometry"), + .product(name: "OrderedCollections", package: "swift-collections"), "TiledInterpreter", ] ), diff --git a/Sources/RedECS/Entity/GameEntity.swift b/Sources/RedECS/Entity/GameEntity.swift index e49b016..a87bb60 100644 --- a/Sources/RedECS/Entity/GameEntity.swift +++ b/Sources/RedECS/Entity/GameEntity.swift @@ -2,7 +2,7 @@ public typealias EntityId = String public func newEntityId(prefix: String? = nil) -> EntityId { let prefix = prefix.map({ "\($0)-" }) ?? "" - return prefix + "\(Int.random(in: 0...Int.max))" + return prefix + "\(Int.random(in: 0...Int.max))" + "\(Int.random(in: 0...Int.max))" // TODO: weak implementation of a uuid string, needs improvement } public struct GameEntity: Hashable, Identifiable, Codable { diff --git a/Sources/RedECS/GameState.swift b/Sources/RedECS/GameState.swift index d210aa8..8525d5c 100644 --- a/Sources/RedECS/GameState.swift +++ b/Sources/RedECS/GameState.swift @@ -11,6 +11,24 @@ public extension GameState { if var component = self[keyPath: keyPath][entityId] { modifyBlock(&component) self[keyPath: keyPath][entityId] = component + } else { + assertionFailure("Component not found \(C.self) for \(entityId)") + } + } + + mutating func modify( + _ keyPath1: WritableKeyPath, + _ keyPath2: WritableKeyPath, + ofEntity entityId: EntityId, + modifyBlock: (inout C1, inout C2) -> Void + ) { + if var component1 = self[keyPath: keyPath1][entityId], + var component2 = self[keyPath: keyPath2][entityId] { + modifyBlock(&component1, &component2) + self[keyPath: keyPath1][entityId] = component1 + self[keyPath: keyPath2][entityId] = component2 + } else { + assertionFailure("One or more components not found \(C1.self), \(C2.self) for \(entityId)") } } } diff --git a/Sources/RedECS/Reducer/Reducer.swift b/Sources/RedECS/Reducer/Reducer.swift index bd50d36..479a3ce 100644 --- a/Sources/RedECS/Reducer/Reducer.swift +++ b/Sources/RedECS/Reducer/Reducer.swift @@ -5,11 +5,13 @@ public protocol Reducer { func reduce(state: inout State, delta: Double, environment: Environment) -> GameEffect func reduce(state: inout State, action: Action, environment: Environment) -> GameEffect - func reduce(state: inout State, entityEvent: EntityEvent, environment: Environment) + func reduce(state: inout State, entityEvent: EntityEvent, environment: Environment) -> GameEffect } public extension Reducer { - func reduce(state: inout State, entityEvent: EntityEvent, environment: Environment) { } + func reduce(state: inout State, entityEvent: EntityEvent, environment: Environment) -> GameEffect { + return .none + } } diff --git a/Sources/RedECS/Reducer/Reducers/AnyReducer.swift b/Sources/RedECS/Reducer/Reducers/AnyReducer.swift index ced9ce6..ee29cd4 100644 --- a/Sources/RedECS/Reducer/Reducers/AnyReducer.swift +++ b/Sources/RedECS/Reducer/Reducers/AnyReducer.swift @@ -2,12 +2,12 @@ public struct AnyReducer: Redu var reduceDelta: (inout State, Double, Environment) -> GameEffect var reduceAction: (inout State, Action, Environment) -> GameEffect - var reduceEntityEvent: (inout State, EntityEvent, Environment) -> Void + var reduceEntityEvent: (inout State, EntityEvent, Environment) -> GameEffect public init( _ reduceDelta: @escaping (inout State, Double, Environment) -> GameEffect, _ reduceAction: @escaping (inout State, Action, Environment) -> GameEffect, - _ reduceEntityEvent: @escaping (inout State, EntityEvent, Environment) -> Void + _ reduceEntityEvent: @escaping (inout State, EntityEvent, Environment) -> GameEffect ) { self.reduceDelta = reduceDelta self.reduceAction = reduceAction @@ -25,7 +25,7 @@ public struct AnyReducer: Redu } public static var noop: Self { - AnyReducer({ _, _, _ in .none }, { _, _, _ in .none }, { _, _, _ in }) + AnyReducer({ _, _, _ in .none }, { _, _, _ in .none }, { _, _, _ in .none }) } public func reduce(state: inout State, delta: Double, environment: Environment) -> GameEffect { @@ -36,7 +36,7 @@ public struct AnyReducer: Redu reduceAction(&state, action, environment) } - public func reduce(state: inout State, entityEvent: EntityEvent, environment: Environment) { + public func reduce(state: inout State, entityEvent: EntityEvent, environment: Environment) -> GameEffect { reduceEntityEvent(&state, entityEvent, environment) } } diff --git a/Sources/RedECS/Reducer/Reducers/Resending.swift b/Sources/RedECS/Reducer/Reducers/Resending.swift new file mode 100644 index 0000000..9ea71b0 --- /dev/null +++ b/Sources/RedECS/Reducer/Reducers/Resending.swift @@ -0,0 +1,20 @@ +public extension Reducer { + func resending( + _ transform: @escaping (Action) -> Action? + ) -> AnyReducer { + return AnyReducer( + { _, _, _ in .none }, + { state, action, env in + let effects = self.reduce(state: &state, action: action, environment: env) + if let resultingAction = transform(action) { + return .many([ + effects, + .game(resultingAction) + ]) + } + return effects + }, + { _,_,_ in .none } + ) + } +} diff --git a/Sources/RedECS/Rendering/Camera/CameraComponent.swift b/Sources/RedECS/Rendering/Camera/CameraComponent.swift index 5d82616..5acb172 100644 --- a/Sources/RedECS/Rendering/Camera/CameraComponent.swift +++ b/Sources/RedECS/Rendering/Camera/CameraComponent.swift @@ -44,21 +44,3 @@ public struct CameraReducerContext: GameState { self.camera = camera } } - -public struct CameraReducer: Reducer { - public init() { } - public func reduce( - state: inout CameraReducerContext, - delta: Double, - environment: RenderingEnvironment - ) -> GameEffect { - if let camera = state.camera.values.sorted(by: { $1.isPrimaryCamera ? false : true }).first, - let transform = state.transform[camera.entity] { - let renderer = environment.renderer - let size = renderer.viewportSize - let projectionMatrix = camera.matrix(withRect: Rect(center: transform.position, size: size)) - renderer.setProjectionMatrix(projectionMatrix) - } - return .none - } -} diff --git a/Sources/RedECS/Rendering/Label/LabelComponent.swift b/Sources/RedECS/Rendering/Label/LabelComponent.swift index 358e2de..debda18 100644 --- a/Sources/RedECS/Rendering/Label/LabelComponent.swift +++ b/Sources/RedECS/Rendering/Label/LabelComponent.swift @@ -6,6 +6,8 @@ public struct LabelComponent: GameComponent { public var font: String public var text: String + // TODO: color support + public init(entity: EntityId) { self = .init(entity: entity, font: "", text: "") } @@ -19,6 +21,7 @@ public struct LabelComponent: GameComponent { extension LabelComponent: RenderableComponent { public func renderGroups( + cameraMatrix: Matrix3, transform: TransformComponent, resourceManager: ResourceManager ) -> [RenderGroup] { diff --git a/Sources/RedECS/Rendering/RenderableComponent.swift b/Sources/RedECS/Rendering/RenderableComponent.swift index 43935b1..7376319 100644 --- a/Sources/RedECS/Rendering/RenderableComponent.swift +++ b/Sources/RedECS/Rendering/RenderableComponent.swift @@ -1,9 +1,17 @@ +import Geometry +import GeometryAlgorithms + public protocol RenderableComponent { - func renderGroups(transform: TransformComponent, resourceManager: ResourceManager) -> [RenderGroup] + func renderGroups( + cameraMatrix: Matrix3, + transform: TransformComponent, + resourceManager: ResourceManager + ) -> [RenderGroup] } public protocol RenderableGameState: GameState { var transform: [EntityId: TransformComponent] { get } + var camera: [EntityId: CameraComponent] { get } } public struct RenderableComponentType { @@ -39,14 +47,28 @@ public struct RenderingReducer: Reducer { environment: RenderingEnvironment ) -> GameEffect { - state.entities.entities.forEach { id, entity in - renderableComponentTypes.forEach { type in - if let renderComponent = type.renderComponent(entityId: id, state: state), - let transform = state.transform[id] { - environment.renderer.enqueue(renderComponent.renderGroups(transform: transform, resourceManager: environment.resourceManager)) + if let camera = state.camera.values.sorted(by: { $1.isPrimaryCamera ? false : true }).first, + let transform = state.transform[camera.entity] { + + let renderer = environment.renderer + let size = renderer.viewportSize + let projectionMatrix = camera.matrix(withRect: Rect(center: transform.position, size: size)) + renderer.setProjectionMatrix(projectionMatrix) + + state.entities.entities.forEach { id, entity in + renderableComponentTypes.forEach { type in + if let renderComponent = type.renderComponent(entityId: id, state: state), + let transform = state.transform[id] { + renderer.enqueue(renderComponent.renderGroups( + cameraMatrix: projectionMatrix, + transform: transform, + resourceManager: environment.resourceManager + )) + } } } } + return .none } diff --git a/Sources/RedECS/Rendering/Shape/ShapeComponent.swift b/Sources/RedECS/Rendering/Shape/ShapeComponent.swift index fc224cd..049aaec 100644 --- a/Sources/RedECS/Rendering/Shape/ShapeComponent.swift +++ b/Sources/RedECS/Rendering/Shape/ShapeComponent.swift @@ -61,24 +61,23 @@ public struct ShapeComponent: GameComponent { } extension ShapeComponent: RenderableComponent { - public func renderGroups(transform: TransformComponent, resourceManager: ResourceManager) -> [RenderGroup] { - do { - let triangles = try shape.triangulate().enumerated() - .map { (i, triangle) -> RenderTriangle in - RenderTriangle(triangle: triangle) - } - let matrix = transform.matrix(containerSize: rect.size) - return [ - RenderGroup( - triangles: triangles, - transformMatrix: matrix, - fragmentType: .color(fillColor), - zIndex: transform.zIndex - ) - ] - } catch { - print("⚠️ couldn't render shape", error) - return [] - } + public func renderGroups( + cameraMatrix: Matrix3, + transform: TransformComponent, + resourceManager: ResourceManager + ) -> [RenderGroup] { + let triangles = triangles.enumerated() + .map { (i, triangle) -> RenderTriangle in + RenderTriangle(triangle: triangle) + } + let matrix = transform.matrix(containerSize: rect.size) + return [ + RenderGroup( + triangles: triangles, + transformMatrix: matrix, + fragmentType: .color(fillColor), + zIndex: transform.zIndex + ) + ] } } diff --git a/Sources/RedECS/Rendering/Sprite/SpriteAnimatingReducer.swift b/Sources/RedECS/Rendering/Sprite/SpriteAnimatingReducer.swift index bfb56a9..a756c9e 100644 --- a/Sources/RedECS/Rendering/Sprite/SpriteAnimatingReducer.swift +++ b/Sources/RedECS/Rendering/Sprite/SpriteAnimatingReducer.swift @@ -61,7 +61,6 @@ public struct SpriteAnimatingReducer: Reducer { state.sprite[entityId]?.runAnimation(animation, animationId: nil, repeatsForever: true) state.transform[entityId]?.scale.x = config.flipX ? -1 : 1 - case let .runOnce(animationId, entityId, animationName, config): guard let sprite = state.sprite[entityId], let animationDict = environment.resourceManager.animationsForTexture(sprite.texture.textureId), diff --git a/Sources/RedECS/Rendering/Sprite/SpriteAnimationDictionary.swift b/Sources/RedECS/Rendering/Sprite/SpriteAnimationDictionary.swift index 4e2208b..c26d4d0 100644 --- a/Sources/RedECS/Rendering/Sprite/SpriteAnimationDictionary.swift +++ b/Sources/RedECS/Rendering/Sprite/SpriteAnimationDictionary.swift @@ -12,15 +12,15 @@ public struct SpriteAnimationDictionary: Codable { case textureMapDoesNotContainAnyAnimations } - private let name: String - private var dict: [String: Animation] + public let name: String + public private(set) var dict: [String: Animation] public subscript(index: String) -> Animation? { dict[index] } - public init(textureMap: TextureMap) throws { - self.name = textureMap.meta.image ?? "texturemap" + public init(name: String, textureMap: TextureMap) throws { + self.name = name guard textureMap.meta.frameTags?.isEmpty == false else { throw Error.textureMapDoesNotContainAnyAnimations } diff --git a/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift b/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift index 22f0e3d..5a26d61 100644 --- a/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift +++ b/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift @@ -1,4 +1,5 @@ import Geometry +import GeometryAlgorithms public typealias CompletedAnimationId = String @@ -54,6 +55,9 @@ public struct SpriteComponent: GameComponent { guard var runningAnimation = animation else { return nil } + if runningAnimation.repeatsForever == false { + print(animation?.animation.name, runningAnimation.currentFrame) + } runningAnimation.currentTime += delta @@ -70,6 +74,7 @@ public struct SpriteComponent: GameComponent { textureId: texture.textureId, frameId: runningAnimation.animation.frames[0].name ) + print("run once anim complete", animation?.animation.name) animation = nil return runningAnimation.id } else if isPastFinalFrame { @@ -86,7 +91,16 @@ public struct SpriteComponent: GameComponent { } extension SpriteComponent: RenderableComponent { - public func renderGroups(transform: TransformComponent, resourceManager: ResourceManager) -> [RenderGroup] { + public func renderGroups( + cameraMatrix: Matrix3, + transform: TransformComponent, + resourceManager: ResourceManager + ) -> [RenderGroup] { + let projectedPosition = transform.position.multiplyingMatrix(cameraMatrix) + if abs(projectedPosition.x) > 1.05 || abs(projectedPosition.y) > 1.05 { + return [] + } + guard let textureMap = resourceManager.getTexture(textureId: texture.textureId) else { return [] } @@ -100,6 +114,7 @@ extension SpriteComponent: RenderableComponent { height: frameInfo.frame.h ) } else { + print("using full texture, no frame info", textureMap.frames) let size = textureMap.meta.size textureRect = Rect(x: 0, y: 0, width: size.w, height: size.h) } @@ -132,7 +147,7 @@ extension SpriteComponent: RenderableComponent { return [ RenderGroup( triangles: [topRenderTri, bottomRenderTri], - transformMatrix: transform.matrix(), + transformMatrix: transform.matrix(containerSize: renderRect.size), fragmentType: .texture(texture.textureId), zIndex: transform.zIndex, opacity: opacity diff --git a/Sources/RedECS/Rendering/Texture/TextureReference.swift b/Sources/RedECS/Rendering/Texture/TextureReference.swift index 09d6b89..0e4cf0f 100644 --- a/Sources/RedECS/Rendering/Texture/TextureReference.swift +++ b/Sources/RedECS/Rendering/Texture/TextureReference.swift @@ -1,6 +1,6 @@ public struct TextureReference: Equatable, Codable { public let textureId: TextureId - public let frameId: String? + public var frameId: String? public init(textureId: TextureId, frameId: String?) { self.textureId = textureId diff --git a/Sources/RedECS/Rendering/TileMap/TileMapComponent.swift b/Sources/RedECS/Rendering/TileMap/TileMapComponent.swift index d35c2dc..2e36bd1 100644 --- a/Sources/RedECS/Rendering/TileMap/TileMapComponent.swift +++ b/Sources/RedECS/Rendering/TileMap/TileMapComponent.swift @@ -1,5 +1,6 @@ import TiledInterpreter import Geometry +import GeometryAlgorithms public struct TileMapComponent: GameComponent { public var entity: EntityId @@ -21,6 +22,7 @@ public struct TileMapComponent: GameComponent { extension TileMapComponent: RenderableComponent { public func renderGroups( + cameraMatrix: Matrix3, transform: TransformComponent, resourceManager: ResourceManager ) -> [RenderGroup] { @@ -55,6 +57,11 @@ extension TileMapComponent: RenderableComponent { size: tileSize ) + let projectedPosition = rectForTile.center.multiplyingMatrix(cameraMatrix) + if abs(projectedPosition.x) > 1.125 || abs(projectedPosition.y) > 1.125 { + continue + } + guard let tileIndex = layer.tileDataAt(column: c, row: r, flipY: true) else { continue } guard tileIndex != 0 else { continue } // empty @@ -99,6 +106,10 @@ extension TileMapComponent: RenderableComponent { } } + guard !renderTriangles.isEmpty else { + return + } + let textureId = tileSet.image.split(separator: ".").dropLast().joined(separator: ".") renderGroups.append(RenderGroup( triangles: renderTriangles, diff --git a/Sources/RedECS/ResourceManager.swift b/Sources/RedECS/ResourceManager.swift index 4c316cc..30ba241 100644 --- a/Sources/RedECS/ResourceManager.swift +++ b/Sources/RedECS/ResourceManager.swift @@ -53,7 +53,7 @@ public extension ResourceManager { return nil } do { - let dict = try SpriteAnimationDictionary(textureMap: textureMap) + let dict = try SpriteAnimationDictionary(name: textureId, textureMap: textureMap) self.animations[textureId] = dict return dict } catch { diff --git a/Sources/RedECS/Store/GameEffect.swift b/Sources/RedECS/Store/GameEffect.swift index f2c6cf5..a2f6ee1 100644 --- a/Sources/RedECS/Store/GameEffect.swift +++ b/Sources/RedECS/Store/GameEffect.swift @@ -1,10 +1,12 @@ public indirect enum GameEffect { case system(SystemAction) case game(LogicAction) - case deferred(Future) case waitFor(PendingGameEffect) case many([Self]) case none + + /// This case is intended primarily for asset loading. + case deferred(Future) public func map( stateTransform: WritableKeyPath, diff --git a/Sources/RedECS/Store/GameStore.swift b/Sources/RedECS/Store/GameStore.swift index 84565e7..c979132 100644 --- a/Sources/RedECS/Store/GameStore.swift +++ b/Sources/RedECS/Store/GameStore.swift @@ -60,9 +60,9 @@ public final class GameStore { public func sendSystemAction(_ action: SystemAction) { switch action { case .addEntity(let entityId, let tags): - addEntity(entityId, tags: tags) + handleEffect(addEntity(entityId, tags: tags)) case .removeEntity(let entityId): - removeEntity(entityId) + handleEffect(removeEntity(entityId)) case .addComponent(let entityId, let componentRegistration): assert(isComponentTypeRegistered(id: componentRegistration.id), "Attempting to add a component type that is not registered \(String(describing: componentRegistration.id))") componentRegistration.onAdd(entityId, &state) @@ -77,17 +77,17 @@ public final class GameStore { handleEffect(reduceBlock(&state, environment)) } - public func addEntity(_ id: EntityId, tags: Set) { + public func addEntity(_ id: EntityId, tags: Set) -> GameEffect { state.entities.addEntity(GameEntity(id: id, tags: tags)) - reducer.reduce(state: &state, entityEvent: .added(id), environment: environment) + return reducer.reduce(state: &state, entityEvent: .added(id), environment: environment) } - private func removeEntity(_ id: EntityId) { + private func removeEntity(_ id: EntityId) -> GameEffect { registeredComponentTypes.values.forEach { componentType in componentType.onEntityDestroyed(id, &state) } state.entities.removeEntity(id) - reducer.reduce(state: &state, entityEvent: .removed(id), environment: environment) + return reducer.reduce(state: &state, entityEvent: .removed(id), environment: environment) } public func addComponent( diff --git a/Sources/RedECSAppleSupport/MetalRenderer.swift b/Sources/RedECSAppleSupport/MetalRenderer.swift index 7b3e78a..55440c5 100644 --- a/Sources/RedECSAppleSupport/MetalRenderer.swift +++ b/Sources/RedECSAppleSupport/MetalRenderer.swift @@ -49,6 +49,10 @@ public class MetalRenderer: NSObject, MTKViewDelegate { var projectionMatrix: matrix_float4x4 = matrix_float4x4() + private lazy var emptyTexture: MTLTexture = { + creatyEmptyPixelTexture(device: device)! + }() + public init?( device: MTLDevice, pixelFormat: MTLPixelFormat, @@ -193,14 +197,17 @@ public class MetalRenderer: NSObject, MTKViewDelegate { ]) } - if let textureId = renderGroup.textureId, - lastBoundTexture != textureId { - if let texture = resourceManager.textureImages[textureId] { + if let textureId = renderGroup.textureId { + if lastBoundTexture != textureId, + let texture = resourceManager.textureImages[textureId] { renderEncoder.setFragmentTexture(texture, index: TextureIndex.colorMap.rawValue) lastBoundTexture = textureId } else { // print("Texture not found: \(textureId)") } + } else { + renderEncoder.setFragmentTexture(emptyTexture, index: TextureIndex.colorMap.rawValue) + lastBoundTexture = nil } renderEncoder.setVertexBytes(&uniforms, length: MemoryLayout.size, index: AAPLVertexInputIndex.uniforms.rawValue) @@ -233,6 +240,14 @@ public class MetalRenderer: NSObject, MTKViewDelegate { updateDelta() } + func creatyEmptyPixelTexture(device: MTLDevice) -> MTLTexture? { + let descriptor = MTLTextureDescriptor() + descriptor.width = 1 + descriptor.height = 1 + descriptor.usage = .shaderRead + return device.makeTexture(descriptor: descriptor) + } + class func loadTexture(device: MTLDevice, textureName: String) throws -> MTLTexture { /// Load texture data with optimal parameters for sampling diff --git a/Sources/RedECSAppleSupport/MetalResourceManager.swift b/Sources/RedECSAppleSupport/MetalResourceManager.swift index 50d550d..949a0ae 100644 --- a/Sources/RedECSAppleSupport/MetalResourceManager.swift +++ b/Sources/RedECSAppleSupport/MetalResourceManager.swift @@ -14,11 +14,12 @@ public final class MetalResourceManager: ResourceManager { public var animations: [TextureId: SpriteAnimationDictionary] = [:] public var tileMaps: [String: TiledMapJSON] = [:] public var tileSets: [String: TiledTilesetJSON] = [:] - public var textureImages: [TextureId: MTLTexture] = [:] - public var fonts: [String : BitmapFont] = [:] + public var fonts: [String: BitmapFont] = [:] + // Apple Specific public var resourceBundle: Bundle public let metalDevice: MTLDevice + public var textureImages: [TextureId: MTLTexture] = [:] public init(resourceBundle: Bundle = .main, metalDevice: MTLDevice) { self.resourceBundle = resourceBundle diff --git a/Sources/RedECSBasicComponents/Operation/OperationComponent.swift b/Sources/RedECSBasicComponents/Operation/OperationComponent.swift index 1139053..af72eae 100644 --- a/Sources/RedECSBasicComponents/Operation/OperationComponent.swift +++ b/Sources/RedECSBasicComponents/Operation/OperationComponent.swift @@ -1,7 +1,8 @@ import RedECS import Geometry +import OrderedCollections -public protocol OperationCapable: GameState { +public protocol OperationCapableGameState: GameState { associatedtype GameAction: Equatable & Codable var operation: [EntityId: OperationComponent] { get set } @@ -9,7 +10,23 @@ public protocol OperationCapable: GameState { var sprite: [EntityId: SpriteComponent] { get set } } -extension OperationCapable { +extension OperationCapableGameState { + public var operationContext: OperationComponentContext { + get { + OperationComponentContext( + entities: entities, + operation: operation, + transform: transform, + sprite: sprite + ) + } + set { + self.transform = newValue.transform + self.operation = newValue.operation + self.sprite = newValue.sprite + } + } + var basicOperationComponentState: BasicOperationComponentContext { get { BasicOperationComponentContext( @@ -27,18 +44,43 @@ extension OperationCapable { public struct OperationComponent: GameComponent { public var entity: EntityId - public var type: OperationType? + public var operations: OrderedDictionary> public init(entity: EntityId) { - self = .init(entity: entity, type: nil) + self = .init(entity: entity, operations: [:]) } public init ( entity: EntityId, - type: OperationType? = nil + operation: OperationType + ) { + self.init(entity: entity) + self.newOperation(operation) + } + + public init ( + entity: EntityId, + operations: OrderedDictionary> = [:] ) { self.entity = entity - self.type = type + self.operations = operations + } + + public mutating func newOperation(_ type: OperationType) { + let name = newEntityId() + newOperation(name: name, type) + } + + public mutating func newOperation(name: String, _ type: OperationType) { + operations[name] = type + } + + public mutating func removeOperation(name: String) { + operations[name] = nil + } + + public mutating func removeAllOperations() { + operations.removeAll() } } diff --git a/Sources/RedECSBasicComponents/Operation/OperationReducer.swift b/Sources/RedECSBasicComponents/Operation/OperationReducer.swift index e2b2e98..be70716 100644 --- a/Sources/RedECSBasicComponents/Operation/OperationReducer.swift +++ b/Sources/RedECSBasicComponents/Operation/OperationReducer.swift @@ -1,6 +1,6 @@ import RedECS -public struct OperationComponentContext: GameState, OperationCapable { +public struct OperationComponentContext: GameState, OperationCapableGameState { public var entities: EntityRepository = .init() public var operation: [EntityId: OperationComponent] = [:] public var transform: [EntityId: TransformComponent] = [:] @@ -35,22 +35,22 @@ public struct OperationReducer: Reducer { environment: Void ) -> GameEffect, GameAction> { var effects: [GameEffect, GameAction>] = [] - state.operation.forEach { (id, operation) in - guard var actionType = operation.type else { - state.operation[id] = nil - return - } - - let effect = actionType.run(id: id, state: &state.basicOperationComponentState, delta: delta) - effects.append(effect.map( - stateTransform: \.basicOperationComponentState, - actionTransform: { $0 })) - - if actionType.isComplete == true { - state.operation[id] = nil - } else { - state.operation[id] = OperationComponent(entity: id, type: actionType) + state.operation.forEach { (id, operationComponent) in + var operationComponent = operationComponent + for (key, operation) in operationComponent.operations { + var operation = operation + let effect = operation.run(id: id, state: &state.basicOperationComponentState, delta: delta) + effects.append(effect.map( + stateTransform: \.basicOperationComponentState, + actionTransform: { $0 } + )) + if operation.isComplete == true { + operationComponent.operations[key] = nil + } else { + operationComponent.operations[key] = operation + } } + state.operation[id] = operationComponent } return .many(effects) } diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/AnimateOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/AnimateOperation.swift index b68a2c1..0aa99bf 100644 --- a/Sources/RedECSBasicComponents/Operation/OperationTypes/AnimateOperation.swift +++ b/Sources/RedECSBasicComponents/Operation/OperationTypes/AnimateOperation.swift @@ -36,9 +36,10 @@ public struct AnimateOperation: Operation { return .none } - if currentFrameIndex == 0 && currentFrameTime == 0 { + if currentTime == 0 { state.sprite[id]?.texture = frames[0].texture - return .none // first frame doesnt need delta applied on first tick + currentTime += delta + return .none // first frame doesnt need frame delta applied on first tick } currentTime += delta @@ -68,3 +69,16 @@ public struct AnimateOperation: Operation { isComplete = false } } + +public extension SpriteAnimationDictionary { + func operation(for name: String) -> AnimateOperation? { + guard let anim = self.dict[name] else { return nil } + let frames = anim.frames.map { + AnimateOperation.FrameData( + texture: .init(textureId: self.name, frameId: $0.name), + duration: $0.duration / 1000 + ) + } + return AnimateOperation(frames: frames) + } +} diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/OpacityOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/OpacityOperation.swift index aafe041..d838f63 100644 --- a/Sources/RedECSBasicComponents/Operation/OperationTypes/OpacityOperation.swift +++ b/Sources/RedECSBasicComponents/Operation/OperationTypes/OpacityOperation.swift @@ -47,7 +47,7 @@ public struct OpacityOperation: Operation { let percentage = delta / duration let opacityIncrement = amount * percentage - state.sprite[id]?.opacity += opacityIncrement + state.sprite[id]?.opacity += opacityIncrement // TODO: this doesnt work for shapes or labels currentTime += delta return .none } diff --git a/Sources/RedECSWebSupport/WebResourceManager.swift b/Sources/RedECSWebSupport/WebResourceManager.swift index 3f08872..701779a 100644 --- a/Sources/RedECSWebSupport/WebResourceManager.swift +++ b/Sources/RedECSWebSupport/WebResourceManager.swift @@ -4,24 +4,24 @@ import RedECSUIComponents import TiledInterpreter public final class WebResourceManager: ResourceManager { - public enum Error: Swift.Error { + public enum WebResourceManagerError: Swift.Error { case fileNotFound case fileLoadFailure - case fileDecodeFailure + case fileDecodeFailure(String?) case windowLocationOriginNotAvailable case jsFetchFunctionNotAvailable case jsError(JSValue) } - let resourcePath: String - public var textures: [TextureId: Resource] = [:] public var animations: [TextureId: SpriteAnimationDictionary] = [:] public var tileMaps: [String: TiledMapJSON] = [:] public var tileSets: [String: TiledTilesetJSON] = [:] + public var fonts: [String: BitmapFont] = [:] - /// Web Specific Storage for image resources + /// Web Specific public var textureImages: [TextureId: JSValue] = [:] + let resourcePath: String public init(resourcePath: String) { self.resourcePath = resourcePath @@ -60,11 +60,11 @@ public final class WebResourceManager: ResourceManager { ) -> Future { Future { (resolve: @escaping (Result) -> Void) in guard let origin = JSObject.global.window.object?.location.object?.origin.string else { - resolve(.failure(Error.windowLocationOriginNotAvailable)) + resolve(.failure(WebResourceManagerError.windowLocationOriginNotAvailable)) return } guard let fetchFunc = JSObject.global.fetch.function else { - resolve(.failure(Error.jsFetchFunctionNotAvailable)) + resolve(.failure(WebResourceManagerError.jsFetchFunctionNotAvailable)) return } @@ -80,13 +80,12 @@ public final class WebResourceManager: ResourceManager { print("Loaded \(name)") resolve(.success(parsed)) } catch { - print("couldn't decode \(T.self)", error) - resolve(.failure(Error.fileDecodeFailure)) + resolve(.failure(WebResourceManagerError.fileDecodeFailure("couldn't decode \(T.self), \(error)"))) } return JSValue.null }, failure: { error in print("error", error) - resolve(.failure(Error.jsError(error.jsValue))) + resolve(.failure(WebResourceManagerError.jsError(error.jsValue))) return JSValue.null }) } @@ -102,11 +101,11 @@ public final class WebResourceManager: ResourceManager { } guard let origin = JSObject.global.window.object?.location.object?.origin.string else { - resolve(.failure(Error.fileNotFound)) + resolve(.failure(WebResourceManagerError.fileNotFound)) return } guard let fetchFunc = JSObject.global.fetch.function else { - resolve(.failure(Error.jsFetchFunctionNotAvailable)) + resolve(.failure(WebResourceManagerError.jsFetchFunctionNotAvailable)) return } @@ -121,7 +120,7 @@ public final class WebResourceManager: ResourceManager { image?.src = url ?? .null image?.onload = JSClosure({ args in guard let value = image?.jsValue else { - resolve(.failure(Error.jsError(.undefined))) + resolve(.failure(WebResourceManagerError.jsError(.undefined))) return .undefined } self.textureImages[name] = value @@ -131,7 +130,7 @@ public final class WebResourceManager: ResourceManager { return JSValue.null }, failure: { error in print("error", error) - resolve(.failure(Error.jsError(error.jsValue))) + resolve(.failure(WebResourceManagerError.jsError(error.jsValue))) return JSValue.null }) } @@ -176,6 +175,8 @@ public final class WebResourceManager: ResourceManager { return .just(()) case .tilemap: return self.loadTiledMap(id).toVoid() + case .bitmapFont: + return self.loadBitmapFontTextFile(id).toVoid() } } if futures.isEmpty { @@ -191,4 +192,58 @@ public final class WebResourceManager: ResourceManager { .toVoid() } + public func loadBitmapFontTextFile(_ name: String) -> Future { + return Future { (resolve: @escaping (Result) -> Void) in + if let font = self.fonts[name] { + resolve(.success(font)) + return + } + + guard let origin = JSObject.global.window.object?.location.object?.origin.string else { + resolve(.failure(WebResourceManagerError.fileNotFound)) + return + } + guard let fetchFunc = JSObject.global.fetch.function else { + resolve(.failure(WebResourceManagerError.jsFetchFunctionNotAvailable)) + return + } + + let url = origin + "/" + self.resourcePath + "/" + name + (JSPromise(from: fetchFunc(url)))? + .then(success: { response in + JSPromise(from: response.text()) + }) + .then(success: { value in + guard let fontText = value.string else { + resolve(.failure(WebResourceManagerError.fileDecodeFailure("\(name):"))) + return JSValue.null + } + do { + let decoded = try BitmapFont(fromString: fontText) + resolve(.success(decoded)) + } catch { + print(fontText) + resolve(.failure(WebResourceManagerError.fileDecodeFailure("\(name):" + String(describing: error)))) + } + return JSValue.null + }, failure: { error in + print("error", error) + resolve(.failure(WebResourceManagerError.jsError(error.jsValue))) + return JSValue.null + }) + } + .flatMap { font -> Future in + self.fonts[font.info.face] = font + let textureName = font.page.file.split(separator: ".").dropLast().joined(separator: ".") + return self.loadImageFile(name: String(font.page.file)) + .map { value -> Void in + self.textureImages[textureName] = value + return + } + .map { _ in + font + } + } + } + } From 231b316b62a203d555842ab431fe390c0dfa8e83 Mon Sep 17 00:00:00 2001 From: Kyle Newsome Date: Wed, 14 Sep 2022 19:17:37 -0400 Subject: [PATCH 9/9] Additional cleanup to support starter template --- README.md | 25 +- Sources/RedECS/Reducer/Reducers/Filter.swift | 6 +- .../RedECS/Reducer/Reducers/Pullback.swift | 3 +- .../RedECS/Reducer/Reducers/Throttle.swift | 2 +- Sources/RedECS/Reducer/Reducers/Zip.swift | 60 ++-- .../Rendering/Camera/CameraComponent.swift | 17 -- .../Rendering/Label/LabelComponent.swift | 87 ------ .../Rendering/RenderableComponent.swift | 11 - .../RedECS/Rendering/Shape/Shape+Rect.swift | 17 ++ .../Rendering/Shape/ShapeComponent.swift | 83 ------ .../Sprite/SpriteAnimatingReducer.swift | 8 +- .../Rendering/Sprite/SpriteComponent.swift | 280 +++++++++++++++++- .../Rendering/TileMap/TileMapComponent.swift | 123 -------- Sources/RedECS/ResourceManager.swift | 13 +- .../RedECSAppleSupport/MetalEnvironment.swift | 17 ++ .../MetalResourceManager.swift | 16 +- .../MetalViewController.swift | 12 +- .../Flocking/FlockingComponent.swift | 114 ------- .../FollowEntity/FollowEntityComponent.swift | 18 -- .../FollowEntity/FollowEntityReducer.swift | 44 --- .../Separation/SeparationComponent.swift | 14 - .../Separation/SeparationReducer.swift | 70 ----- .../Input/KeyboardInputComponent.swift | 4 + .../OperationTypes/AnimateOperation.swift | 4 +- .../ResourceLoadingAction.swift | 7 + .../ResourceLoadingReducer.swift | 36 +++ .../RedECSWebSupport/WebBrowserWindow.swift | 21 +- Sources/RedECSWebSupport/WebEnvironment.swift | 17 ++ Sources/RedECSWebSupport/WebRenderer.swift | 2 +- .../RedECSWebSupport/WebResourceManager.swift | 12 +- 30 files changed, 476 insertions(+), 667 deletions(-) delete mode 100644 Sources/RedECS/Rendering/Label/LabelComponent.swift create mode 100644 Sources/RedECS/Rendering/Shape/Shape+Rect.swift delete mode 100644 Sources/RedECS/Rendering/Shape/ShapeComponent.swift delete mode 100644 Sources/RedECS/Rendering/TileMap/TileMapComponent.swift create mode 100644 Sources/RedECSAppleSupport/MetalEnvironment.swift delete mode 100644 Sources/RedECSBasicComponents/Flocking/FlockingComponent.swift delete mode 100644 Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityComponent.swift delete mode 100644 Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityReducer.swift delete mode 100644 Sources/RedECSBasicComponents/Flocking/Separation/SeparationComponent.swift delete mode 100644 Sources/RedECSBasicComponents/Flocking/Separation/SeparationReducer.swift create mode 100644 Sources/RedECSBasicComponents/ResourceLoading/ResourceLoadingAction.swift create mode 100644 Sources/RedECSBasicComponents/ResourceLoading/ResourceLoadingReducer.swift create mode 100644 Sources/RedECSWebSupport/WebEnvironment.swift diff --git a/README.md b/README.md index e7faf3d..c48b47b 100644 --- a/README.md +++ b/README.md @@ -13,8 +13,31 @@ A Swift Entity Component System. Inspired by The Composable Architecture and foc ### Note: This is still under heavy development so documentation is sparse +## Features +- Highly modular Entity Component System +- Fully `Codable` game state +- Separation of State and Game Logic through composable reducers. +- Cross-platform, trying to have equivalents for all SpriteKit/GameplayKit capabilities (within reason) + +## Who is this Game Engine for? +- People who love Swift, first and foremost. There are a lot of options out there with far more advanced capabilities, so if you don't love Swift, you may not see a point +- Hobby Game developers, at least while this is under development for a while +- People who want to publish fun little things written in Swift to all platforms. The engine is likely to prioritize cross compatibility over performance or depth of capabilities. +- People looking for a Swift game engine to tinker with, contribute to, help measure, build and turn this into something that maybe changes who this game engine is for entirely. How meta. + ## Architecture -The engine's architecture is highly inspired by The Coposable Architecture, but a gaming-focused flavour. +The engine's architecture is highly inspired by The Composable Architecture, but a gaming-focused flavour. + + +## Roadmap Ideas (unprioritized) + +- Review best capabilities of SpriteKit and Cocos2D-iPhone and determine what this engine should provide +- Develop more components/reducers and algorithms to match GameplayKit capabilities and other common gaming problems +- Investigate Windows support +- CLI tooling + - Significantly improve resource management + - CodeGen to reduce boilerplate, help with templates +- GUI Editor diff --git a/Sources/RedECS/Reducer/Reducers/Filter.swift b/Sources/RedECS/Reducer/Reducers/Filter.swift index 89a6d09..0b09302 100644 --- a/Sources/RedECS/Reducer/Reducers/Filter.swift +++ b/Sources/RedECS/Reducer/Reducers/Filter.swift @@ -39,9 +39,9 @@ public struct Filter< state: inout R.State, entityEvent: EntityEvent, environment: R.Environment - ) { - guard predicate(state, nil) else { return } - reducer.reduce( + ) -> GameEffect { + guard predicate(state, nil) else { return .none } + return reducer.reduce( state: &state, entityEvent: entityEvent, environment: environment diff --git a/Sources/RedECS/Reducer/Reducers/Pullback.swift b/Sources/RedECS/Reducer/Reducers/Pullback.swift index 9ad633d..ca7523a 100644 --- a/Sources/RedECS/Reducer/Reducers/Pullback.swift +++ b/Sources/RedECS/Reducer/Reducers/Pullback.swift @@ -41,12 +41,13 @@ public struct Pullback< state: inout GlobalState, entityEvent: EntityEvent, environment: GlobalEnvironment - ) { + ) -> GameEffect { reducer.reduce( state: &state[keyPath: toLocalState], entityEvent: entityEvent, environment: toLocalEnvironment(environment) ) + .map(stateTransform: toLocalState, actionTransform: toGlobalAction) } } diff --git a/Sources/RedECS/Reducer/Reducers/Throttle.swift b/Sources/RedECS/Reducer/Reducers/Throttle.swift index 0362cbf..59903dd 100644 --- a/Sources/RedECS/Reducer/Reducers/Throttle.swift +++ b/Sources/RedECS/Reducer/Reducers/Throttle.swift @@ -48,7 +48,7 @@ public struct Throttle< state: inout R.State, entityEvent: EntityEvent, environment: R.Environment - ) { + ) -> GameEffect { reducer.reduce( state: &state, entityEvent: entityEvent, diff --git a/Sources/RedECS/Reducer/Reducers/Zip.swift b/Sources/RedECS/Reducer/Reducers/Zip.swift index 1c837c2..2af5e49 100644 --- a/Sources/RedECS/Reducer/Reducers/Zip.swift +++ b/Sources/RedECS/Reducer/Reducers/Zip.swift @@ -33,9 +33,11 @@ where A.State == B.State, state: inout A.State, entityEvent: EntityEvent, environment: A.Environment - ) { - a.reduce(state: &state, entityEvent: entityEvent, environment: environment) - b.reduce(state: &state, entityEvent: entityEvent, environment: environment) + ) -> GameEffect { + .many([ + a.reduce(state: &state, entityEvent: entityEvent, environment: environment), + b.reduce(state: &state, entityEvent: entityEvent, environment: environment) + ]) } } @@ -88,10 +90,12 @@ where A.State == B.State, ]) } - public func reduce(state: inout A.State, entityEvent: EntityEvent, environment: A.Environment) { - a.reduce(state: &state, entityEvent: entityEvent, environment: environment) - b.reduce(state: &state, entityEvent: entityEvent, environment: environment) - c.reduce(state: &state, entityEvent: entityEvent, environment: environment) + public func reduce(state: inout A.State, entityEvent: EntityEvent, environment: A.Environment) -> GameEffect { + .many([ + a.reduce(state: &state, entityEvent: entityEvent, environment: environment), + b.reduce(state: &state, entityEvent: entityEvent, environment: environment), + c.reduce(state: &state, entityEvent: entityEvent, environment: environment) + ]) } } @@ -144,11 +148,13 @@ where A.State == B.State, ]) } - public func reduce(state: inout A.State, entityEvent: EntityEvent, environment: A.Environment) { - a.reduce(state: &state, entityEvent: entityEvent, environment: environment) - b.reduce(state: &state, entityEvent: entityEvent, environment: environment) - c.reduce(state: &state, entityEvent: entityEvent, environment: environment) - d.reduce(state: &state, entityEvent: entityEvent, environment: environment) + public func reduce(state: inout A.State, entityEvent: EntityEvent, environment: A.Environment) -> GameEffect { + .many([ + a.reduce(state: &state, entityEvent: entityEvent, environment: environment), + b.reduce(state: &state, entityEvent: entityEvent, environment: environment), + c.reduce(state: &state, entityEvent: entityEvent, environment: environment), + d.reduce(state: &state, entityEvent: entityEvent, environment: environment) + ]) } } @@ -213,12 +219,14 @@ where A.State == B.State, ]) } - public func reduce(state: inout A.State, entityEvent: EntityEvent, environment: A.Environment) { - a.reduce(state: &state, entityEvent: entityEvent, environment: environment) - b.reduce(state: &state, entityEvent: entityEvent, environment: environment) - c.reduce(state: &state, entityEvent: entityEvent, environment: environment) - d.reduce(state: &state, entityEvent: entityEvent, environment: environment) - e.reduce(state: &state, entityEvent: entityEvent, environment: environment) + public func reduce(state: inout A.State, entityEvent: EntityEvent, environment: A.Environment) -> GameEffect { + .many([ + a.reduce(state: &state, entityEvent: entityEvent, environment: environment), + b.reduce(state: &state, entityEvent: entityEvent, environment: environment), + c.reduce(state: &state, entityEvent: entityEvent, environment: environment), + d.reduce(state: &state, entityEvent: entityEvent, environment: environment), + e.reduce(state: &state, entityEvent: entityEvent, environment: environment) + ]) } } @@ -291,13 +299,15 @@ where A.State == B.State, ]) } - public func reduce(state: inout A.State, entityEvent: EntityEvent, environment: A.Environment) { - a.reduce(state: &state, entityEvent: entityEvent, environment: environment) - b.reduce(state: &state, entityEvent: entityEvent, environment: environment) - c.reduce(state: &state, entityEvent: entityEvent, environment: environment) - d.reduce(state: &state, entityEvent: entityEvent, environment: environment) - e.reduce(state: &state, entityEvent: entityEvent, environment: environment) - f.reduce(state: &state, entityEvent: entityEvent, environment: environment) + public func reduce(state: inout A.State, entityEvent: EntityEvent, environment: A.Environment) -> GameEffect { + .many([ + a.reduce(state: &state, entityEvent: entityEvent, environment: environment), + b.reduce(state: &state, entityEvent: entityEvent, environment: environment), + c.reduce(state: &state, entityEvent: entityEvent, environment: environment), + d.reduce(state: &state, entityEvent: entityEvent, environment: environment), + e.reduce(state: &state, entityEvent: entityEvent, environment: environment), + f.reduce(state: &state, entityEvent: entityEvent, environment: environment) + ]) } } diff --git a/Sources/RedECS/Rendering/Camera/CameraComponent.swift b/Sources/RedECS/Rendering/Camera/CameraComponent.swift index 5acb172..443841a 100644 --- a/Sources/RedECS/Rendering/Camera/CameraComponent.swift +++ b/Sources/RedECS/Rendering/Camera/CameraComponent.swift @@ -27,20 +27,3 @@ public struct CameraComponent: GameComponent { Matrix3.projection(rect: rect, zoom: zoom) } } - -public struct CameraReducerContext: GameState { - public var entities: EntityRepository = .init() - - public var transform: [EntityId: TransformComponent] = [:] - public var camera: [EntityId: CameraComponent] = [:] - - public init( - entities: EntityRepository = .init(), - transform: [EntityId: TransformComponent] = [:], - camera: [EntityId: CameraComponent] = [:] - ) { - self.entities = entities - self.transform = transform - self.camera = camera - } -} diff --git a/Sources/RedECS/Rendering/Label/LabelComponent.swift b/Sources/RedECS/Rendering/Label/LabelComponent.swift deleted file mode 100644 index debda18..0000000 --- a/Sources/RedECS/Rendering/Label/LabelComponent.swift +++ /dev/null @@ -1,87 +0,0 @@ -import Geometry -import GeometryAlgorithms - -public struct LabelComponent: GameComponent { - public let entity: EntityId - public var font: String - public var text: String - - // TODO: color support - - public init(entity: EntityId) { - self = .init(entity: entity, font: "", text: "") - } - - public init(entity: EntityId, font: String, text: String) { - self.entity = entity - self.font = font - self.text = text - } -} - -extension LabelComponent: RenderableComponent { - public func renderGroups( - cameraMatrix: Matrix3, - transform: TransformComponent, - resourceManager: ResourceManager - ) -> [RenderGroup] { - guard let font = resourceManager.fonts[font] else { - return [] - } - - var currentOffsetX: Double = 0 - var maxHeight: Double = 0 - var renderTriangles: [RenderTriangle] = [] - do { - for character in text { - let characterData: BitmapFont.Character - if let data = font.characterMap[String(character)] { - characterData = data - } else if character == " ", let data = font.characterMap["space"] { - currentOffsetX += data.xadvance - continue - } else { - continue - } - let renderRect = Rect( - x: currentOffsetX, - y: (font.common.base - characterData.height - characterData.yoffset), - width: characterData.width, - height: characterData.height -// origin: .init(x: currentOffsetX, y: -(characterData.height - characterData.yoffset)), - //center: .init(x: currentOffsetX - (characterData.width / 2), y: characterData.height + characterData.yoffset), - ) - let textureY = font.common.scaleH - (characterData.y + characterData.height) - let textureRect = Rect( - origin: .init(x: characterData.x, y: textureY), - size: Size(width: characterData.width, height: characterData.height) - ) - let renderTris = try renderRect.triangulate() - let textureTris = try textureRect.triangulate() - for i in 0..<2 { - renderTriangles.append( - RenderTriangle( - triangle: renderTris[i], - textureTriangle: textureTris[i] - ) - ) - } - maxHeight = max(maxHeight, characterData.height) - currentOffsetX += characterData.xadvance - } - let textureName = font.page.file.split(separator: ".").dropLast().joined(separator: ".") - return [ - RenderGroup( - triangles: renderTriangles, - transformMatrix: transform.matrix( - containerSize: Size(width: currentOffsetX, height: maxHeight) - ), - fragmentType: .texture(textureName), - zIndex: transform.zIndex - ) - ] - } catch { - return [] - } - } -} diff --git a/Sources/RedECS/Rendering/RenderableComponent.swift b/Sources/RedECS/Rendering/RenderableComponent.swift index 7376319..d7ebc78 100644 --- a/Sources/RedECS/Rendering/RenderableComponent.swift +++ b/Sources/RedECS/Rendering/RenderableComponent.swift @@ -68,17 +68,6 @@ public struct RenderingReducer: Reducer { } } } - return .none } - - public func reduce( - state: inout State, - entityEvent: EntityEvent, - environment: RenderingEnvironment - ) { - - } } - - diff --git a/Sources/RedECS/Rendering/Shape/Shape+Rect.swift b/Sources/RedECS/Rendering/Shape/Shape+Rect.swift new file mode 100644 index 0000000..72c57aa --- /dev/null +++ b/Sources/RedECS/Rendering/Shape/Shape+Rect.swift @@ -0,0 +1,17 @@ +import Geometry +import GeometryAlgorithms + +extension Shape { + public var rect: Rect { + switch self { + case .rect(let r): + return r + case .triangle(let t): + return GeometryAlgorithms.calculateContainingRect(of: t.points) + case .circle(let c): + return Rect(center: c.center, size: c.size) + case .polygon(let p): + return GeometryAlgorithms.calculateContainingRect(of: p.points) + } + } +} diff --git a/Sources/RedECS/Rendering/Shape/ShapeComponent.swift b/Sources/RedECS/Rendering/Shape/ShapeComponent.swift deleted file mode 100644 index 049aaec..0000000 --- a/Sources/RedECS/Rendering/Shape/ShapeComponent.swift +++ /dev/null @@ -1,83 +0,0 @@ -import Geometry -import GeometryAlgorithms - -public struct ShapeComponent: GameComponent { - public let entity: EntityId - public var shape: Shape { - didSet { - triangulate() - } - } - public var fillColor: Color = .pink - - public private(set) var triangles: [Triangle] = [] - - public var rect: Rect { - switch shape { - case .rect(let r): - return r - case .triangle(let t): - return GeometryAlgorithms.calculateContainingRect(of: t.points) - case .circle(let c): - return Rect(center: c.center, size: c.size) - case .polygon(let p): - return GeometryAlgorithms.calculateContainingRect(of: p.points) - } - } - - public init(entity: EntityId) { - self = .init(entity: entity, shape: .rect(.zero), fillColor: .clear) - } - - public init( - entity: EntityId, - shape: Shape, - fillColor: Color = .white - ) { - self.entity = entity - self.shape = shape - self.fillColor = fillColor - - triangulate() - } - - private mutating func triangulate() { - triangles = (try? shape.triangulate()) ?? [] - } - - public func contains(_ point: Point, whenTransformedBy matrix: Matrix3? = nil) -> Bool { - if let matrix = matrix { - for triangle in triangles { - if triangle.multiplyingMatrix(matrix).contains(point) { - return true - } - } - return false - } else { - return rect.contains(point) - } - } - -} - -extension ShapeComponent: RenderableComponent { - public func renderGroups( - cameraMatrix: Matrix3, - transform: TransformComponent, - resourceManager: ResourceManager - ) -> [RenderGroup] { - let triangles = triangles.enumerated() - .map { (i, triangle) -> RenderTriangle in - RenderTriangle(triangle: triangle) - } - let matrix = transform.matrix(containerSize: rect.size) - return [ - RenderGroup( - triangles: triangles, - transformMatrix: matrix, - fragmentType: .color(fillColor), - zIndex: transform.zIndex - ) - ] - } -} diff --git a/Sources/RedECS/Rendering/Sprite/SpriteAnimatingReducer.swift b/Sources/RedECS/Rendering/Sprite/SpriteAnimatingReducer.swift index a756c9e..268a6fc 100644 --- a/Sources/RedECS/Rendering/Sprite/SpriteAnimatingReducer.swift +++ b/Sources/RedECS/Rendering/Sprite/SpriteAnimatingReducer.swift @@ -53,8 +53,8 @@ public struct SpriteAnimatingReducer: Reducer { ) -> GameEffect { switch action { case let .run(entityId, animationName, config): - guard let sprite = state.sprite[entityId], - let animationDict = environment.resourceManager.animationsForTexture(sprite.texture.textureId), + guard let textureId = state.sprite[entityId]?.textureId, + let animationDict = environment.resourceManager.animationsForTexture(textureId), let animation = animationDict[animationName] else { return .none } @@ -62,8 +62,8 @@ public struct SpriteAnimatingReducer: Reducer { state.sprite[entityId]?.runAnimation(animation, animationId: nil, repeatsForever: true) state.transform[entityId]?.scale.x = config.flipX ? -1 : 1 case let .runOnce(animationId, entityId, animationName, config): - guard let sprite = state.sprite[entityId], - let animationDict = environment.resourceManager.animationsForTexture(sprite.texture.textureId), + guard let textureId = state.sprite[entityId]?.textureId, + let animationDict = environment.resourceManager.animationsForTexture(textureId), let animation = animationDict[animationName] else { return .none } diff --git a/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift b/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift index 5a26d61..d1a2928 100644 --- a/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift +++ b/Sources/RedECS/Rendering/Sprite/SpriteComponent.swift @@ -1,5 +1,6 @@ import Geometry import GeometryAlgorithms +import TiledInterpreter public typealias CompletedAnimationId = String @@ -15,22 +16,31 @@ public struct SpriteAnimation: Codable, Equatable { } } +public enum SpriteType: Codable, Equatable { + case texture(TextureReference) + case shape(Shape) + case label(font: String, text: String) + case tileMap(TiledMapJSON) +} + public struct SpriteComponent: GameComponent { public var entity: EntityId - public var texture: TextureReference + public var type: SpriteType? public var animation: SpriteAnimation? + + public var fillColor: Color = .clear public var opacity: Double = 1 public init(entity: EntityId) { - self.init(entity: entity, texture: .empty) + self.init(entity: entity, type: nil) } public init( entity: EntityId, - texture: TextureReference = .empty + type: SpriteType? ) { self.entity = entity - self.texture = texture + self.type = type } public mutating func runAnimation( @@ -38,6 +48,8 @@ public struct SpriteComponent: GameComponent { animationId: String?, repeatsForever: Bool ) { + guard let type = type, + case let .texture(texture) = type else { return } self.animation = SpriteAnimation( id: animationId, animation: animation, @@ -45,19 +57,18 @@ public struct SpriteComponent: GameComponent { currentFrame: 0, repeatsForever: repeatsForever ) - texture = TextureReference( + self.type = .texture(TextureReference( textureId: texture.textureId, frameId: animation.frames[0].name - ) + )) } public mutating func applyDelta(_ delta: Double) -> CompletedAnimationId? { guard var runningAnimation = animation else { return nil } - if runningAnimation.repeatsForever == false { - print(animation?.animation.name, runningAnimation.currentFrame) - } + guard let type = type, + case let .texture(texture) = type else { return nil } runningAnimation.currentTime += delta @@ -70,11 +81,10 @@ public struct SpriteComponent: GameComponent { runningAnimation.currentFrame += 1 let isPastFinalFrame = (runningAnimation.currentFrame >= runningAnimation.animation.frames.count) if isPastFinalFrame && !runningAnimation.repeatsForever { - texture = TextureReference( + self.type = .texture(TextureReference( textureId: texture.textureId, frameId: runningAnimation.animation.frames[0].name - ) - print("run once anim complete", animation?.animation.name) + )) animation = nil return runningAnimation.id } else if isPastFinalFrame { @@ -82,12 +92,30 @@ public struct SpriteComponent: GameComponent { } animation = runningAnimation - texture = TextureReference( + self.type = .texture(TextureReference( textureId: texture.textureId, frameId: runningAnimation.animation.frames[runningAnimation.currentFrame].name - ) + )) + return nil + } +} + +public extension SpriteComponent { + var textureId: TextureId? { + if case let .texture(texture) = type { + return texture.textureId + } return nil } + + mutating func setTexture(_ texture: TextureReference) { + type = .texture(texture) + } + + mutating func setFrame(_ frameId: String?) { + guard let textureId = textureId else { return } + type = .texture(.init(textureId: textureId, frameId: frameId)) + } } extension SpriteComponent: RenderableComponent { @@ -96,6 +124,128 @@ extension SpriteComponent: RenderableComponent { transform: TransformComponent, resourceManager: ResourceManager ) -> [RenderGroup] { + + guard let type = type else { return [] } + + switch type { + case .texture(let texture): + return textureRenderGroups( + texture: texture, + cameraMatrix: cameraMatrix, + transform: transform, + resourceManager: resourceManager + ) + case .shape(let shape): + guard let triangulated = try? shape.triangulate() else { + return [] + } + let triangles = triangulated.enumerated() + .map { (i, triangle) -> RenderTriangle in + RenderTriangle(triangle: triangle) + } + let matrix = transform.matrix(containerSize: shape.rect.size) + return [ + RenderGroup( + triangles: triangles, + transformMatrix: matrix, + fragmentType: .color(fillColor), + zIndex: transform.zIndex + ) + ] + case let .label(font, text): + return labelRenderGroups( + font: font, + text: text, + cameraMatrix: cameraMatrix, + transform: transform, + resourceManager: resourceManager + ) + case let .tileMap(map): + return tileMapRenderGroups( + tileMap: map, + cameraMatrix: cameraMatrix, + transform: transform, + resourceManager: resourceManager + ) + } + } +} + +extension SpriteComponent { + func labelRenderGroups( + font: String, + text: String, + cameraMatrix: Matrix3, + transform: TransformComponent, + resourceManager: ResourceManager + ) -> [RenderGroup] { + guard let font = resourceManager.fonts[font] else { + return [] + } + + var currentOffsetX: Double = 0 + var maxHeight: Double = 0 + var renderTriangles: [RenderTriangle] = [] + do { + for character in text { + let characterData: BitmapFont.Character + if let data = font.characterMap[String(character)] { + characterData = data + } else if character == " ", let data = font.characterMap["space"] { + currentOffsetX += data.xadvance + continue + } else { + continue + } + let renderRect = Rect( + x: currentOffsetX, + y: (font.common.base - characterData.height - characterData.yoffset), + width: characterData.width, + height: characterData.height + ) + let textureY = font.common.scaleH - (characterData.y + characterData.height) + let textureRect = Rect( + origin: .init(x: characterData.x, y: textureY), + size: Size(width: characterData.width, height: characterData.height) + ) + let renderTris = try renderRect.triangulate() + let textureTris = try textureRect.triangulate() + for i in 0..<2 { + renderTriangles.append( + RenderTriangle( + triangle: renderTris[i], + textureTriangle: textureTris[i] + ) + ) + } + maxHeight = max(maxHeight, characterData.height) + currentOffsetX += characterData.xadvance + } + let textureName = font.page.file.split(separator: ".").dropLast().joined(separator: ".") + return [ + RenderGroup( + triangles: renderTriangles, + transformMatrix: transform.matrix( + containerSize: Size(width: currentOffsetX, height: maxHeight) + ), + fragmentType: .texture(textureName), + zIndex: transform.zIndex, + opacity: opacity + ) + ] + } catch { + return [] + } + } +} + +extension SpriteComponent { + func textureRenderGroups( + texture: TextureReference, + cameraMatrix: Matrix3, + transform: TransformComponent, + resourceManager: ResourceManager + ) -> [RenderGroup] { let projectedPosition = transform.position.multiplyingMatrix(cameraMatrix) if abs(projectedPosition.x) > 1.05 || abs(projectedPosition.y) > 1.05 { return [] @@ -155,3 +305,105 @@ extension SpriteComponent: RenderableComponent { ] } } + +extension SpriteComponent { + func tileMapRenderGroups( + tileMap: TiledMapJSON, + cameraMatrix: Matrix3, + transform: TransformComponent, + resourceManager: ResourceManager + ) -> [RenderGroup] { + let tileWidth = tileMap.tileWidth, + tileHeight = tileMap.tileHeight, + layerCols = tileMap.width, + layerRows = tileMap.height, + tileSize = Size(width: Double(tileWidth), height: Double(tileHeight)) + + var renderGroups = [RenderGroup]() + tileMap.tileLayers.enumerated().forEach { (i, layer) in + guard let tileSetName = tileMap.tileSets.first?.source, + let tileSet = resourceManager.tileSets[tileSetName] else { + return + } + + let matrix = transform.matrix(containerSize: Size( + width: tileMap.totalWidth, + height: tileMap.totalHeight + )) + + var renderTriangles: [RenderTriangle] = [] + + for r in 0.. 1.125 || abs(projectedPosition.y) > 1.125 { + continue + } + + guard let tileIndex = layer.tileDataAt(column: c, row: r, flipY: true) else { continue } + + guard tileIndex != 0 else { continue } // empty + + let tileSetCol = (tileIndex) % tileSet.columns - 1 + let tileSetRow = ((tileIndex) / tileSet.columns) + + let textureRect = Rect( + center: .init( + x: Double(tileSetCol * tileWidth + tileWidth / 2), + y: Double(tileSet.imageHeight) - Double(tileSetRow * tileHeight + tileHeight / 2) + ), + size: tileSize + ) + + let topRenderTri = RenderTriangle( + triangle: Triangle( + a: Point(x: rectForTile.minX, y: rectForTile.maxY), + b: Point(x: rectForTile.maxX, y: rectForTile.minY), + c: Point(x: rectForTile.maxX, y: rectForTile.maxY) + ), + textureTriangle: Triangle( + a: Point(x: textureRect.minX, y: textureRect.maxY), + b: Point(x: textureRect.maxX, y: textureRect.minY), + c: Point(x: textureRect.maxX, y: textureRect.maxY) + ) + ) + let bottomRenderTri = RenderTriangle( + triangle: Triangle( + a: Point(x: rectForTile.minX, y: rectForTile.minY), + b: Point(x: rectForTile.maxX, y: rectForTile.minY), + c: Point(x: rectForTile.minX, y: rectForTile.maxY) + ), + textureTriangle: Triangle( + a: Point(x: textureRect.minX, y: textureRect.minY), + b: Point(x: textureRect.maxX, y: textureRect.minY), + c: Point(x: textureRect.minX, y: textureRect.maxY) + ) + ) + + renderTriangles.append(contentsOf: [topRenderTri, bottomRenderTri]) + } + } + + guard !renderTriangles.isEmpty else { + return + } + + let textureId = tileSet.image.split(separator: ".").dropLast().joined(separator: ".") + renderGroups.append(RenderGroup( + triangles: renderTriangles, + transformMatrix: matrix, + fragmentType: .texture(textureId), + zIndex: transform.zIndex + )) + } + return renderGroups + } +} diff --git a/Sources/RedECS/Rendering/TileMap/TileMapComponent.swift b/Sources/RedECS/Rendering/TileMap/TileMapComponent.swift deleted file mode 100644 index 2e36bd1..0000000 --- a/Sources/RedECS/Rendering/TileMap/TileMapComponent.swift +++ /dev/null @@ -1,123 +0,0 @@ -import TiledInterpreter -import Geometry -import GeometryAlgorithms - -public struct TileMapComponent: GameComponent { - public var entity: EntityId - public var tileMap: TiledMapJSON? - - public init(entity: EntityId) { - self.entity = entity - self.tileMap = nil - } - - public init( - entity: EntityId, - tileMap: TiledMapJSON - ) { - self.entity = entity - self.tileMap = tileMap - } -} - -extension TileMapComponent: RenderableComponent { - public func renderGroups( - cameraMatrix: Matrix3, - transform: TransformComponent, - resourceManager: ResourceManager - ) -> [RenderGroup] { - guard let tileMap = tileMap else { return [] } - let tileWidth = tileMap.tileWidth, - tileHeight = tileMap.tileHeight, - layerCols = tileMap.width, - layerRows = tileMap.height, - tileSize = Size(width: Double(tileWidth), height: Double(tileHeight)) - - var renderGroups = [RenderGroup]() - tileMap.tileLayers.enumerated().forEach { (i, layer) in - guard let tileSetName = tileMap.tileSets.first?.source, - let tileSet = resourceManager.tileSets[tileSetName] else { - return - } - - let matrix = transform.matrix(containerSize: Size( - width: tileMap.totalWidth, - height: tileMap.totalHeight - )) - - var renderTriangles: [RenderTriangle] = [] - - for r in 0.. 1.125 || abs(projectedPosition.y) > 1.125 { - continue - } - - guard let tileIndex = layer.tileDataAt(column: c, row: r, flipY: true) else { continue } - - guard tileIndex != 0 else { continue } // empty - - let tileSetCol = (tileIndex) % tileSet.columns - 1 - let tileSetRow = ((tileIndex) / tileSet.columns) - - let textureRect = Rect( - center: .init( - x: Double(tileSetCol * tileWidth + tileWidth / 2), - y: Double(tileSet.imageHeight) - Double(tileSetRow * tileHeight + tileHeight / 2) - ), - size: tileSize - ) - - let topRenderTri = RenderTriangle( - triangle: Triangle( - a: Point(x: rectForTile.minX, y: rectForTile.maxY), - b: Point(x: rectForTile.maxX, y: rectForTile.minY), - c: Point(x: rectForTile.maxX, y: rectForTile.maxY) - ), - textureTriangle: Triangle( - a: Point(x: textureRect.minX, y: textureRect.maxY), - b: Point(x: textureRect.maxX, y: textureRect.minY), - c: Point(x: textureRect.maxX, y: textureRect.maxY) - ) - ) - let bottomRenderTri = RenderTriangle( - triangle: Triangle( - a: Point(x: rectForTile.minX, y: rectForTile.minY), - b: Point(x: rectForTile.maxX, y: rectForTile.minY), - c: Point(x: rectForTile.minX, y: rectForTile.maxY) - ), - textureTriangle: Triangle( - a: Point(x: textureRect.minX, y: textureRect.minY), - b: Point(x: textureRect.maxX, y: textureRect.minY), - c: Point(x: textureRect.minX, y: textureRect.maxY) - ) - ) - - renderTriangles.append(contentsOf: [topRenderTri, bottomRenderTri]) - } - } - - guard !renderTriangles.isEmpty else { - return - } - - let textureId = tileSet.image.split(separator: ".").dropLast().joined(separator: ".") - renderGroups.append(RenderGroup( - triangles: renderTriangles, - transformMatrix: matrix, - fragmentType: .texture(textureId), - zIndex: transform.zIndex - )) - } - return renderGroups - } -} diff --git a/Sources/RedECS/ResourceManager.swift b/Sources/RedECS/ResourceManager.swift index 30ba241..9a32d61 100644 --- a/Sources/RedECS/ResourceManager.swift +++ b/Sources/RedECS/ResourceManager.swift @@ -6,7 +6,7 @@ public enum Resource { case loaded(T) } -public enum ResourceType { +public enum ResourceType: Equatable, Codable { case image case sound case tilemap @@ -14,6 +14,15 @@ public enum ResourceType { // TODO: preload sprite animation dictionary } +public struct LoadableResource: Equatable, Codable { + public var name: String + public var type: ResourceType + public init(name: String, type: ResourceType) { + self.name = name + self.type = type + } +} + public protocol ResourceManager: AnyObject { var textures: [TextureId: Resource] { get } var animations: [TextureId: SpriteAnimationDictionary] { get set } @@ -21,7 +30,7 @@ public protocol ResourceManager: AnyObject { var tileSets: [String: TiledTilesetJSON] { get set } var fonts: [String: BitmapFont] { get set } - func preload(_ assets: [(String, ResourceType)]) -> Future + func preload(_ assets: [LoadableResource]) -> Future @discardableResult func startTextureLoadIfNeeded(textureId: TextureId) -> Future diff --git a/Sources/RedECSAppleSupport/MetalEnvironment.swift b/Sources/RedECSAppleSupport/MetalEnvironment.swift new file mode 100644 index 0000000..f74cc5c --- /dev/null +++ b/Sources/RedECSAppleSupport/MetalEnvironment.swift @@ -0,0 +1,17 @@ +import RedECS + +public struct MetalEnvironment: RenderingEnvironment { + public var renderer: Renderer { metalRenderer } + public var resourceManager: ResourceManager { metalResourceManager } + + public var metalRenderer: MetalRenderer + public var metalResourceManager: MetalResourceManager + + public init( + metalRenderer: MetalRenderer, + metalResourceManager: MetalResourceManager + ) { + self.metalRenderer = metalRenderer + self.metalResourceManager = metalResourceManager + } +} diff --git a/Sources/RedECSAppleSupport/MetalResourceManager.swift b/Sources/RedECSAppleSupport/MetalResourceManager.swift index 949a0ae..842adb6 100644 --- a/Sources/RedECSAppleSupport/MetalResourceManager.swift +++ b/Sources/RedECSAppleSupport/MetalResourceManager.swift @@ -54,23 +54,23 @@ public final class MetalResourceManager: ResourceManager { let decoded = try JSONDecoder().decode(T.self, from: jsonData) resolve(.success(decoded)) } catch { - print(String(data: jsonData, encoding: .utf8)) + print(String(data: jsonData, encoding: .utf8) as Any) resolve(.failure(MetalResourceManagerError.fileDecodeFailure("\(name).\(ext):" + String(describing: error)))) } } } - public func preload(_ assets: [(String, ResourceType)]) -> Future { - let futures = assets.map { (id, type) -> Future in - switch type { + public func preload(_ assets: [LoadableResource]) -> Future { + let futures = assets.map { (asset) -> Future in + switch asset.type { case .image: - return self.startTextureLoadIfNeeded(textureId: id) + return self.startTextureLoadIfNeeded(textureId: asset.name) case .sound: return .just(()) case .tilemap: - return self.loadTiledMap(id).toVoid() + return self.loadTiledMap(asset.name).toVoid() case .bitmapFont: - return self.loadBitmapFontTextFile(id).toVoid() + return self.loadBitmapFontTextFile(asset.name).toVoid() } } if futures.isEmpty { @@ -197,7 +197,7 @@ public final class MetalResourceManager: ResourceManager { resolve(.success(decoded)) } catch { - print(String(data: data, encoding: .utf8)) + print(String(data: data, encoding: .utf8) as Any) resolve(.failure(MetalResourceManagerError.fileDecodeFailure("\(name).\(ext):" + String(describing: error)))) } } diff --git a/Sources/RedECSAppleSupport/MetalViewController.swift b/Sources/RedECSAppleSupport/MetalViewController.swift index 438cba8..7ffa812 100644 --- a/Sources/RedECSAppleSupport/MetalViewController.swift +++ b/Sources/RedECSAppleSupport/MetalViewController.swift @@ -12,19 +12,25 @@ public typealias AppleViewController = UIViewController public typealias AppleColor = UIColor #endif +public class MetalView: MTKView { +#if os(OSX) + public override var acceptsFirstResponder: Bool { true } +#endif +} + open class MetalViewController: AppleViewController { public var renderer: MetalRenderer! public var resourceManager: MetalResourceManager! - public var mtkView: MTKView! + public var mtkView: MetalView! open override func loadView() { - self.view = MTKView(frame: .init(origin: .zero, size: .init(width: 480, height: 480))) + self.view = MetalView(frame: .init(origin: .zero, size: .init(width: 480, height: 480))) } open override func viewDidLoad() { super.viewDidLoad() - guard let mtkView = self.view as? MTKView else { + guard let mtkView = self.view as? MetalView else { fatalError("View of Gameview controller is not an MTKView") } self.mtkView = mtkView diff --git a/Sources/RedECSBasicComponents/Flocking/FlockingComponent.swift b/Sources/RedECSBasicComponents/Flocking/FlockingComponent.swift deleted file mode 100644 index e7d8bfd..0000000 --- a/Sources/RedECSBasicComponents/Flocking/FlockingComponent.swift +++ /dev/null @@ -1,114 +0,0 @@ -//import RedECS -//import Geometry -// -//public struct FlockingComponent: GameComponent { -// public var entity: EntityId -// -// public var separationRadius: Double -// public var separationWeight: Double -// -// public var alignmentRadius: Double -// public var alignmentWeight: Double -// -// public var cohesionRadius: Double -// public var cohesionWeight: Double -// -// public init( -// entity: EntityId, -// separationRadius: Double = 80, -// separationWeight: Double = 2, -// alignmentRadius: Double = 80, -// alignmentWeight: Double = 1, -// cohesionRadius: Double = 80, -// cohesionWeight: Double = 1 -// ) { -// self.entity = entity -// self.separationRadius = separationRadius -// self.separationWeight = separationWeight -// self.alignmentRadius = alignmentRadius -// self.alignmentWeight = alignmentWeight -// self.cohesionRadius = cohesionRadius -// self.cohesionWeight = cohesionWeight -// } -//} -// -//public struct FlockingReducerContext: GameState { -// public var entities: EntityRepository = .init() -// -// public var transform: [EntityId: TransformComponent] -// public var movement: [EntityId: MovementComponent] -// public var flocking: [EntityId: FlockingComponent] -// public var follow: [EntityId: FollowEntityComponent] -// -// public init( -// entities: EntityRepository = .init(), -// transform: [EntityId: TransformComponent], -// movement: [EntityId : MovementComponent], -// flocking: [EntityId : FlockingComponent], -// follow: [EntityId: FollowEntityComponent] -// ) { -// self.entities = entities -// self.transform = transform -// self.movement = movement -// self.flocking = flocking -// self.follow = follow -// } -//} -// -//public struct FlockingReducer: Reducer { -// public init() {} -// public func reduce( -// state: inout FlockingReducerContext, -// delta: Double, -// environment: Void -// ) -> GameEffect { -// state.flocking.forEach { (id, flocking) in -// guard let position = state.transform[id] else { return } -// -// var alignment: Point = .zero -// var cohesion: Point = .zero -// var separation: Point = .zero -// var neighborCount: Int32 = 0 -// -// state.flocking.forEach { (otherEntityId, _) in -// guard id != otherEntityId, -// let otherTransform = state.transform[otherEntityId], -// let otherMovement = state.movement[otherEntityId] else { return } -// -// let distance = position.position.distanceFrom(otherTransform.position) -// guard distance <= flocking.separationRadius -//// || (otherEntityId == follow?.leaderId && distance > (follow?.maxDistance ?? .greatestFiniteMagnitude)) -// else { -// return -// } -// -// alignment += otherMovement.velocity -// cohesion += otherTransform.position -// separation += (otherTransform.position - position.position) -// neighborCount += 1 -// } -// -// guard neighborCount > 0 else { -// return -// } -// -// alignment /= Double(neighborCount) -// -// cohesion /= Double(neighborCount) -// cohesion -= position.position -// -// separation /= Double(neighborCount) -// separation *= -1 -// -// alignment.normalize(to: flocking.alignmentWeight) -// cohesion.normalize(to: flocking.cohesionWeight) -// separation.normalize(to: flocking.separationWeight) -// -// state.movement[id]?.velocity = -// alignment + -// cohesion + -// separation -// } -// return .none -// } -//} diff --git a/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityComponent.swift b/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityComponent.swift deleted file mode 100644 index b35d4e9..0000000 --- a/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityComponent.swift +++ /dev/null @@ -1,18 +0,0 @@ -import RedECS -import Geometry - -public struct FollowEntityComponent: GameComponent { - public var entity: EntityId - public var leaderId: EntityId - public var maxDistance: Double - - public init(entity: EntityId) { - self = .init(entity: entity, leaderId: "", maxDistance: .greatestFiniteMagnitude) - } - - public init(entity: EntityId, leaderId: EntityId, maxDistance: Double) { - self.entity = entity - self.leaderId = leaderId - self.maxDistance = maxDistance - } -} diff --git a/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityReducer.swift b/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityReducer.swift deleted file mode 100644 index b1a8619..0000000 --- a/Sources/RedECSBasicComponents/Flocking/FollowEntity/FollowEntityReducer.swift +++ /dev/null @@ -1,44 +0,0 @@ -import RedECS -import Geometry - -public struct FollowEntityReducerContext: GameState { - public var entities: EntityRepository = .init() - public var transform: [EntityId: TransformComponent] - public var movement: [EntityId: MovementComponent] - public var followEntity: [EntityId: FollowEntityComponent] - - public init( - entities: EntityRepository = .init(), - transform: [EntityId: TransformComponent], - movement: [EntityId : MovementComponent], - followEntity: [EntityId : FollowEntityComponent] - ) { - self.entities = entities - self.transform = transform - self.movement = movement - self.followEntity = followEntity - } -} -// -//public struct FollowEntityReducer: Reducer { -// public init() {} -// public func reduce( -// state: inout FollowEntityReducerContext, -// delta: Double, -// environment: Void -// ) -> GameEffect { -// state.followEntity.forEach { (id, following) in -// guard let entityTransform = state.transform[id], -// let followingTransform = state.transform[following.leaderId] -// else { return } -// -// let distance: Double = entityTransform.position.distanceFrom(followingTransform.position) -// if distance >= following.maxDistance { -// var vector = followingTransform.position.diffOf(entityTransform.position) -// vector.normalize(to: 1) -// state.movement[id]?.velocity += vector -// } -// } -// return .none -// } -//} diff --git a/Sources/RedECSBasicComponents/Flocking/Separation/SeparationComponent.swift b/Sources/RedECSBasicComponents/Flocking/Separation/SeparationComponent.swift deleted file mode 100644 index 548908b..0000000 --- a/Sources/RedECSBasicComponents/Flocking/Separation/SeparationComponent.swift +++ /dev/null @@ -1,14 +0,0 @@ -//import RedECS -//import Geometry -// -//public struct SeparationComponent: GameComponent { -// public var entity: EntityId -// public var radius: Double -// public init( -// entity: EntityId, -// radius: Double -// ) { -// self.entity = entity -// self.radius = radius -// } -//} diff --git a/Sources/RedECSBasicComponents/Flocking/Separation/SeparationReducer.swift b/Sources/RedECSBasicComponents/Flocking/Separation/SeparationReducer.swift deleted file mode 100644 index ed0e5d7..0000000 --- a/Sources/RedECSBasicComponents/Flocking/Separation/SeparationReducer.swift +++ /dev/null @@ -1,70 +0,0 @@ -//import RedECS -//import Geometry -// -//public struct SeparationReducerContext: GameState { -// public var entities: EntityRepository = .init() -// public var transform: [EntityId: TransformComponent] -// public var movement: [EntityId: MovementComponent] -// public var separation: [EntityId: SeparationComponent] -// public init( -// entities: EntityRepository = .init(), -// transform: [EntityId: TransformComponent], -// movement: [EntityId: MovementComponent], -// separation: [EntityId: SeparationComponent] -// ) { -// self.entities = entities -// self.transform = transform -// self.movement = movement -// self.separation = separation -// } -//} -// -//public struct SeparationReducer: Reducer { -// public init() {} -// public func reduce( -// state: inout SeparationReducerContext, -// delta: Double, -// environment: Void -// ) -> GameEffect { -// state.separation.forEach { (id, separation) in -// guard let transform = state.transform[id] else { return } -// -// var velocity: Point = .zero -// var neighborCount: Int32 = 0 -// -// state.transform.forEach { (otherEntityId, otherTransform) in -// guard id != otherEntityId else { return } -// -// var distance = transform.position.distanceFrom(otherTransform.position) -// -// guard distance <= separation.radius else { -// return -// } -// -// if distance < 0.01 { -// distance = 0.01 -// } -// -// let headingVector = transform.position.diffOf(otherTransform.position) -// let scale = 1 - (distance / separation.radius) -// let relativeHeadingVector = headingVector / distance -// let finalHeadingVector = relativeHeadingVector / scale -// -// velocity.x += finalHeadingVector.x -// velocity.y += finalHeadingVector.y -// neighborCount += 1 -// } -// -// guard neighborCount > 0 else { -// state.movement[id]?.velocity = .zero -// return -// } -// -// let finalX = max(-1, min(1, velocity.x)) -// let finalY = max(-1, min(1, velocity.y)) -// let adjustmentVector = Point(x: finalX, y: finalY) -// state.movement[id]?.velocity = adjustmentVector -// } -// return .none -// } -//} diff --git a/Sources/RedECSBasicComponents/Input/KeyboardInputComponent.swift b/Sources/RedECSBasicComponents/Input/KeyboardInputComponent.swift index fb1eee6..a8bf5ff 100644 --- a/Sources/RedECSBasicComponents/Input/KeyboardInputComponent.swift +++ b/Sources/RedECSBasicComponents/Input/KeyboardInputComponent.swift @@ -22,6 +22,10 @@ public struct KeyboardInputComponent: GameComponent public struct Mapping: Equatable, Codable { public var keySet: Set public var action: Action + public init(keySet: Set, action: Action) { + self.keySet = keySet + self.action = action + } } public var entity: EntityId diff --git a/Sources/RedECSBasicComponents/Operation/OperationTypes/AnimateOperation.swift b/Sources/RedECSBasicComponents/Operation/OperationTypes/AnimateOperation.swift index 0aa99bf..ca546b5 100644 --- a/Sources/RedECSBasicComponents/Operation/OperationTypes/AnimateOperation.swift +++ b/Sources/RedECSBasicComponents/Operation/OperationTypes/AnimateOperation.swift @@ -37,7 +37,7 @@ public struct AnimateOperation: Operation { } if currentTime == 0 { - state.sprite[id]?.texture = frames[0].texture + state.sprite[id]?.setTexture(frames[0].texture) currentTime += delta return .none // first frame doesnt need frame delta applied on first tick } @@ -57,7 +57,7 @@ public struct AnimateOperation: Operation { return .none } - state.sprite[id]?.texture = frames[currentFrameIndex].texture + state.sprite[id]?.setTexture(frames[currentFrameIndex].texture) return .none } diff --git a/Sources/RedECSBasicComponents/ResourceLoading/ResourceLoadingAction.swift b/Sources/RedECSBasicComponents/ResourceLoading/ResourceLoadingAction.swift new file mode 100644 index 0000000..510f8dd --- /dev/null +++ b/Sources/RedECSBasicComponents/ResourceLoading/ResourceLoadingAction.swift @@ -0,0 +1,7 @@ +import RedECS + +public enum ResourceLoadingAction: Equatable, Codable { + case load(groupName: String, resources: [LoadableResource]) + case loadComplete(groupName: String) + case loadingError(groupName: String, error: String) +} diff --git a/Sources/RedECSBasicComponents/ResourceLoading/ResourceLoadingReducer.swift b/Sources/RedECSBasicComponents/ResourceLoading/ResourceLoadingReducer.swift new file mode 100644 index 0000000..800c55e --- /dev/null +++ b/Sources/RedECSBasicComponents/ResourceLoading/ResourceLoadingReducer.swift @@ -0,0 +1,36 @@ +import RedECS + +public struct ResourceLoadingReducer: Reducer { + public typealias State = S + public typealias Action = ResourceLoadingAction + public typealias Environment = RenderingEnvironment + + public init() {} + + public func reduce(state: inout State, delta: Double, environment: Environment) -> GameEffect { + return .none + } + + public func reduce(state: inout State, action: Action, environment: Environment) -> GameEffect { + switch action { + case .load(let groupName, let resources): + print("⚙️ Load start, group: ", groupName) + let future: Future, Never> = environment.resourceManager + .preload(resources) + .map({ _ in + return .game(.loadComplete(groupName: groupName)) + }) + .recoverError({ error in + .game(.loadingError(groupName: groupName, error: String(describing: error))) + }) + return .deferred(future) + case .loadingError(let groupName, let error): + print("💥 Preload Error :: \(groupName) :: \(String(describing: error))") + assertionFailure() + return .none + case .loadComplete(let groupName): + print("✅ Load complete, group: ", groupName) + return .none + } + } +} diff --git a/Sources/RedECSWebSupport/WebBrowserWindow.swift b/Sources/RedECSWebSupport/WebBrowserWindow.swift index 87b0775..e7055a1 100644 --- a/Sources/RedECSWebSupport/WebBrowserWindow.swift +++ b/Sources/RedECSWebSupport/WebBrowserWindow.swift @@ -16,24 +16,15 @@ open class WebBrowserWindow { self.renderer = WebRenderer(size: size, resourceLoader: resourceManager) } + deinit { + print("⚠️ WebBrowserWindow deinit") + } + open func setStoreAndBegin( - _ store: GameStore>, - preloading assets: [(String, ResourceType)], - onReady: (() -> Void)? = nil + _ store: GameStore> ) { self.store = store - resourceManager - .preload(assets) - .subscribe { [weak self] result in - switch result { - case .success: - self?.startWebRenderer() - onReady?() - case .failure(let e): - print(e) - fatalError(e.localizedDescription) - } - } + self.startWebRenderer() } /// If overriding, either call super or add listeners and request animation frame manually diff --git a/Sources/RedECSWebSupport/WebEnvironment.swift b/Sources/RedECSWebSupport/WebEnvironment.swift new file mode 100644 index 0000000..d32093f --- /dev/null +++ b/Sources/RedECSWebSupport/WebEnvironment.swift @@ -0,0 +1,17 @@ +import RedECS + +public struct WebEnvironment: RenderingEnvironment { + public var renderer: Renderer { webRenderer } + public var resourceManager: ResourceManager { webResourceManager } + + public var webRenderer: WebRenderer + public var webResourceManager: WebResourceManager + + public init( + webRenderer: WebRenderer, + webResourceManager: WebResourceManager + ) { + self.webRenderer = webRenderer + self.webResourceManager = webResourceManager + } +} diff --git a/Sources/RedECSWebSupport/WebRenderer.swift b/Sources/RedECSWebSupport/WebRenderer.swift index 6eff33c..0abe6a7 100644 --- a/Sources/RedECSWebSupport/WebRenderer.swift +++ b/Sources/RedECSWebSupport/WebRenderer.swift @@ -111,7 +111,7 @@ open class WebRenderer { private func clearCanvas() { // Clear the canvas - _ = glContext.clearColor(0, 0, 0, 0.1) + _ = glContext.clearColor(0, 0, 0, 1) _ = glContext.clear(glContext.COLOR_BUFFER_BIT) } diff --git a/Sources/RedECSWebSupport/WebResourceManager.swift b/Sources/RedECSWebSupport/WebResourceManager.swift index 701779a..910282c 100644 --- a/Sources/RedECSWebSupport/WebResourceManager.swift +++ b/Sources/RedECSWebSupport/WebResourceManager.swift @@ -166,17 +166,17 @@ public final class WebResourceManager: ResourceManager { } } - public func preload(_ assets: [(String, ResourceType)]) -> Future { - let futures = assets.map { (id, type) -> Future in - switch type { + public func preload(_ assets: [LoadableResource]) -> Future { + let futures = assets.map { asset -> Future in + switch asset.type { case .image: - return self.startTextureLoadIfNeeded(textureId: id) + return self.startTextureLoadIfNeeded(textureId: asset.name) case .sound: return .just(()) case .tilemap: - return self.loadTiledMap(id).toVoid() + return self.loadTiledMap(asset.name).toVoid() case .bitmapFont: - return self.loadBitmapFontTextFile(id).toVoid() + return self.loadBitmapFontTextFile(asset.name).toVoid() } } if futures.isEmpty {

Xh7L#;H%01{oJpBI|A!rgo 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�yhPPQ-D(n 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°Gu8GJ`b;1Qv=A4 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 z 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