From 98e90f8a257657b707a3fcb64ab7c22148883b53 Mon Sep 17 00:00:00 2001 From: Chris Moeller Date: Wed, 26 Jun 2013 02:54:15 -0700 Subject: [PATCH] Implemented ATRAC3plus support --- ext_includes/maiatrac3plus.h | 28 + ext_libs/at3plusdecoder.def | 5 + ext_libs/at3plusdecoder.dll | Bin 0 -> 427008 bytes ext_libs/ext_libs.vcxproj | 8 + fb2k/foo_input_vgmstream.vcxproj | 8 +- fb2k/in_vgmstream.cpp | 1 + src/coding/at3_decoder.c | 28 + src/coding/coding.h | 5 + src/libvgmstream.vcxproj | 5 +- src/libvgmstream.vcxproj.filters | 1901 +++++++++++++++--------------- src/meta/riff.c | 40 +- src/vgmstream.c | 56 + src/vgmstream.h | 17 + 13 files changed, 1146 insertions(+), 956 deletions(-) create mode 100644 ext_includes/maiatrac3plus.h create mode 100644 ext_libs/at3plusdecoder.def create mode 100644 ext_libs/at3plusdecoder.dll create mode 100644 src/coding/at3_decoder.c diff --git a/ext_includes/maiatrac3plus.h b/ext_includes/maiatrac3plus.h new file mode 100644 index 00000000..26ac668f --- /dev/null +++ b/ext_includes/maiatrac3plus.h @@ -0,0 +1,28 @@ +// The following ifdef block is the standard way of creating macros which make exporting +// from a DLL simpler. All files within this DLL are compiled with the MAIATRAC3PLUS_EXPORTS +// symbol defined on the command line. This symbol should not be defined on any project +// that uses this DLL. This way any other project whose source files include this file see +// MAIATRAC3PLUS_API functions as being imported from a DLL, whereas this DLL sees symbols +// defined with this macro as being exported. + +#ifdef _WIN32 +#ifdef MAIATRAC3PLUS_EXPORTS +#define MAIATRAC3PLUS_API __declspec(dllexport) +#else +#define MAIATRAC3PLUS_API __declspec(dllimport) +#endif +#else +#define MAIATRAC3PLUS_API +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +MAIATRAC3PLUS_API void* Atrac3plusDecoder_openContext(); +MAIATRAC3PLUS_API int Atrac3plusDecoder_closeContext(void* context); +MAIATRAC3PLUS_API int Atrac3plusDecoder_decodeFrame(void* context, void* inbuf, int inbytes, int* channels, void** outbuf); + +#ifdef __cplusplus +} +#endif diff --git a/ext_libs/at3plusdecoder.def b/ext_libs/at3plusdecoder.def new file mode 100644 index 00000000..ad21cb1b --- /dev/null +++ b/ext_libs/at3plusdecoder.def @@ -0,0 +1,5 @@ +LIBRARY at3plusdecoder.dll +EXPORTS + Atrac3plusDecoder_openContext @1 + Atrac3plusDecoder_closeContext @2 + Atrac3plusDecoder_decodeFrame @3 diff --git a/ext_libs/at3plusdecoder.dll b/ext_libs/at3plusdecoder.dll new file mode 100644 index 0000000000000000000000000000000000000000..2251113c5dc2e917525f0b0a8724f4f7f9668d25 GIT binary patch literal 427008 zcmeFaeSB2a)jv9uIY|bXFoOn&8a38v)5aiUlzUYC@1nfI%w zet!49{OGO}x99$pd+tvum_9S*z6TcG zb$vp@$W)_h*SLqjZGLEcb>zSQMSu0T@ZSI8JJk;U)T-~s(`s+3mUzB#)py{z=$CtV z`l4T+s5bHUlg9HHf8KV_j~7v$5e&*)CR2$y*7V*V_RWaI^_XI=8f6}3G8LOmrrEJP zTKNqg4*V}b9EB(xV=~2>_WLFX5k?;F5r{j&OulGj(?wUmgEUMN81xKd{i`AY$| z*Si zuE3dSXaX&U{^d}8?z`@N02w7GQa}S!HlD>_$d@;?-2Wf`e~tnbi%QTndTEQv#QNnu zlJ|7=jg{fC)&*vV(p-QfUvn{jt!Oc$jh**3=irV0b`Z0F_S}57cV0(E+q{kg;;)?b zu~MtIt2%CmPB}8#sv=1|!_10Gre&OF*;~Eg>hbK5{!7SRrT&}8OeVDMleSXbh4Ohv z?eUrVY7xsi=Fhuhw`8IUP=DBygeJnC#IVN^_Sp3AtTvgVjUZj_v(BtwpH!;z95a=w zV0dgIkYO&Xv(UP19vdw`>@ayMSgw?wYqjLso;>rg&3m{yZ?Rc*h0FB0z>XE#yltK_ zY?@@>?h3cRYaP|8Op^j*mo_orTsEYoaqoy}D3 zOz&1IKtfM)*b`*?j{I%6}KaX|X!9J+kZ8cHhF>D{JkdFKfHJqD%^*IIE zJizyYoHHXa8Er;c(N+9+MtE!zDvtIM=!YKq#NdF!M71!v%vYF1{U07{BSO|$izKh$z$*YJPHMnc~uo9<{Kk5?f+ZTtSv^O>Zx@?0xdgdFHYy zr6I*Lz|J{+%VSuO?M-iY2A9RNZl&B7h-GgpbvC@mvA?GK12GxLn8%9lPqUN;(?3xs zn^sAqSDMwy<|&?kGFQmrvLXG+Gj#(NkB#k9%0u2`)!#y1b|n3ifaQz%J18%D#RV?a zm13jYm=6prx{dQ^;+NxB2?Wcc$Stw5sX%UkCLP}|W6u0*Dy%F4k z0=FQ??NE9raO+Y^Z6u6`tFL2K1D2`~`;@(zuC0i`V$_*Z3mlF#t+67iwY%NooZ6-5xiUYr# zr;f00=#_JebQmE!Zoqi+*>mCTlnPphw^Qcuuq@}mTZ37GL$mClG>6Q)N7P@TakX1(Z#}hC95g7;p{G?*M7#NUokLG5}u1XN0?01fgG4fA!aiY za&5@7!%fO!sV$=|0+ErAb3Ns4LIx$*I+)k`@A5h*@6!bMQU~S5D?`8JI27wJP$Es_ zE4hiR;8!7|Od>CXcUC&UauO9QD?vC;$xV_!kFl@*_2uwZlC!#-DkN#Py4@Dmsjk=`(im)j*@fthD)IGYW= za|dV`{lQ}M;ut+4NCd42d#tLol1bjB>2Z#5x4g$n=>HQ{L5ZWK9N8x+u8?!D``66E zBIH&Yh$@K4k>v9+o`MLK9uj%}n^NUnEqqGk`4RMR^rc+Q3lA+V$m{V1vLkh5L@?mZ z4X`euD#o&j&QkOXb@diFS zs0W7jk7Zc@?Be|c1Cnemd6_k)?smiCntq|hbqiTsqssJ;s0)W$T%*2dagB;tTx4!h zwY9$oP_VY-b1}6GP&y+Fo*T)QN$QmIN5TOsnQC!(mH%czj4}=U;2F=A7ObzU3MIAB zfsvLBrNDP7uY+~7Lg~nR?ZKESSHt`onqdUcp`00EHfjblSE$koa9ZXdr+KD>%W~un zVljZ_bUEyeM?rR0{@e`M9!?9Fc?u!A}!+WzqV%7&(J2Ovsjc2I8{Kt-dJ z++>y^-(pe=Q#@B>9B$Z4%$CuWHCnBa>}%Wel#-T^d@iN7FK{at*7QyoT(74fle#d~ zq$Zl>?3+y0Rv(5KGgmM}I9Z&pK4(a{U`V)lNVp^tj)CN4amleazl#c9 zCn~khe%|az_w8tf5>Gz_!xWTZ<5==|?=jE!SXD5iElYCRo4MXk%wnT0-5JO3R@Tqp zFjfUYn;fU)biW_?Da(UgQZJf3SF*fh)%FI3(>qzyc%rLizkU1al{wFWedF0`9!0sN z_Gm`SepQ+bJ*i4>_yJTIa|Oc_Gf5jtnQCHQ!)|I*zkUi(N002W!suh=1I(018Uf0( ze8Abl)lj1o6eoHT#;l&}#9&O#G($gS97Et48nmjNuM;)VCOTEpmwbw1qft?|f9 zh1KOod825gpwsW(C-0TQrTunqDTxh~j>|D$4#s%C3+=-WLLHY$^6uiWdzRk!Jv3oK zT$vR96KO{M9mD{EdB!|paH!!E3(|LF2#2yt9rk8YE;Q1K*1FJ23xRqA1 z{Vc~CTThms%c?Gg8KJ~0MUqlvRf=p%kwYm;REm<6qGY8gMJY;Eiqe##>y)AiO3_56 zC{roQ*6Th2{H0dK3=7)H#cIEPj}ezEA@UMv@^2XlWk^usL6&KrzXuYKFoGTAItpfA zX($&!I{|d#3}JA#k0ffwA^JmX- zL4UhH41H;Dx*0jCvmk+c5TzEInFTs!C6S3|{2#=!PG(VHO}0`jCibI^57}{ShiNWJq4eMVS>^(McIya%TK;M{X<;Tt4e?_k-^Ov8@51NF(+uh^Fqp z7!chwn+yrN_gRXgh@UQ`ehE?B&k>j98mNARjbaMHdr>WlbvzX#xEDf__ zD{H!O5$aZ?8;OamS=l$$+ziDQuo}Zz3tR2r8Eg(Vs))_7s$hrJF~wA-B&G+|&#*eP zZ*uz^_EOd1Qk&-)&Yv)_gSn)aN`t(U9tYz_hh5Hj;)nN7X4K*#J0lN$0zom6O`X}` zbHEVeR{OBn*lerd1 z;njFAFmE1AEHINz8BOUPnsQ)hN^oe(0HsW-ry)d5#7c?Oy|L~)LW-9+T@pMs%qSpUO! z0L)+tku?0LMU>JqJcYU-{HHCHQiBwE4;Ql_(f-ds+!)W3Wu>ZLcAD7F5?Q?G>Wsr# zW!9QmDyu~o!$06NL&i)jK2M!2Im@i>e*`i!PG>!6t+{c>dI(DTesvAyBmvWC{Iqmn zsI@uN+a&wr?S;ye5Q}#{Xm#tXsvmrp(Iz|1o>81u2X)8afw<%iR>fiT3wJXMBrIpK zxeT)M&pw_sd!9%l1%Cw5S1biA@Rxu}Rkj=`4Ch{ZV-`9M^s;+3f|P8~2NU5dVR693 z{^%Y=?$``cWQ3JcYm2<(otCbSy3*Bw$-jRlUmNPA@;<#@?tuasbd`7wf z6;V$sE_93xyQg{%3NB7V8&vL$>gud0(`$C3<#Gp@2vinTy)EdwDrRLIDucU%>a(CA z8f=r)(oTzSMwvc|3i4J^kXiDm+IES>$-Xq80DwVr`|2V~!!7y+g^l(a z`dUaMyWpj)RLXTYL*E2#%Lib~VSxA{i@6)a8`RJ`F5xaK%*PZay~2$~cI0jg>8L55 zGc;Vgtan2J!Hz0&2HkJ7iyA%*p{LmG5?mWQX>_DI!`0s&)OUBI`{j@8?^c>hsUJmw zTx4?|a=%ahOpLm9;LxqS@v4EEC4Anqh0Gh1r%c}UCmyOU%m`;?ztpnH?5Ig&i7)BD zhd`1;&hmEA-K?pMtP8ZkEgPrE=l1gqtclm9G`&a_v5N~~>NvMhYwopZKVX5YO8YqD zuu=|c*qf$dLdu*<-Ep44T>1{Of0)!Fw^_Bapxl(#{aL*7nmU%eMyU#^JE>XuR#VL^h-#w1U^24_3_QAJU!MK-rm2QSrnvf8 z{4rOb-{$Rk78tImM`66^oAClqg{PlYg|y_APEnEjW#&3wh`u8W%F}P4^>bE^E;7eY@;<29DP9qfBa0T)m3N?@#n@MATn$=4KK&w9T>?9ZcJeX-j*|d zBDL!%baArTdu-V?tS+QJm}2<^+UQVviMPf1W?c+>6B=}?r;pWjGmjt8d&A2vk=s)& z2boz^;_ODQZYad*o<8s4hesH*`+!Zj@Ae((K{Fr+bM<0;@n>_6v2WjcFYI}+)Z^fC zXTM!u2_T8*%7f~%8^C#Lb}O^P5?mr>RvP1LlZwrDZ!VRr(xG52mfdQZReey>@`4Z^ za1_afyf;NF?2&h;;GG0P%j-dicwWovMTpp2%hM4ePS*1J5F)14^7;`X{?zgY5E|r8 z_^j>#rocnD98t=<)hRa6D*Z~#aI1RR=Q|w$QIq1S;Uv`C1c6bkXC9Y!6(EaBi)}E1qwk5@Wo$-R9!@M zcSsGpX{8dqOMFpob&3vdyczNf4ss35XQp|`d56p=HfGN(R&ER~G5>yS!SuWhu5)6R zuN{Ok+Rzqvq#JVrKK@&w8Q`z@l$Juh_By#P$y7a8u1hpkR|xr33$1(&TFW6T02+O^U&}d8&*NH74?TOdoL+kN zYB@SRbuFilo_$(QKRx@koB?{mT6pDzA2z)9u@;*G(SL<^Z0rQm0{gVs96Vc1rutje zSA$R>pFLMyz-D4uZ5fsXGuk4N+J5cvwUn;yLm)(fE(Ahf0jX_@my0rV+PI#PLVHB;r~{9DmeXMcghC#~<}J5!WW-_@mw- z;`WF*{-{qBaYJz9c-U9p27`lWV}EonA#w}wcvavr%IIsFKWg=xK?v${;3H_kAN8vR zeYS`={-|#eaoa>3f7CxN;#x%_xpsZ~*lhL0x@`7*&0>n|?R+B0A%6dVhM5>h#0HSBs^n|J-#{YvP;?>(Vd5 zLO)KDHRrfiVC})OzrSE~kA@+Vza8)w*zwjY-g^B7qk3p|gVD0UjLbnla%mVb3ob!? zzev_K44gcoM@0BBeu{{05fQ@R+;FZQeQ#fVADALCv*khwd2B7d7n9N7w$m7+dUqWO zhiQVVcxNLooDAMwYY?NZrB|h@Tk+0CKwk)7WX54^!BNWlykUFO2jelcaXU!Es0b^F z6y2_^r2SNtp2}+PE)1nP4ecama?nxxckXi|Q;Mvynwv5XzqS(gEr?RYBpIs*@W-h? zr!-bDI;0eg+=K~Xj^yOoF*_{pLj|W1qj-*HahI&U`56pctckxccfGP8Q$VsgKt_Kfh${sf59V(6xnboyzSd~&=Br`Fijb_kVecCRw!#`T9 zPie(-#L0H;_K@*{NS-(%aLt7=L$i&D)N%3@nY$lb$>O>cY{YfE`^k*M+=N!jVU@Sh z-1lW7)xOpoJdOlkOQFYkcnVy>)_NYLc)-sDDD4vIZ10ItTrh0fusj z0sks`5lJWaoqQJt7UtOZcHJ&Wp@nhco>Yk04w4~!?EC>3=6>?G9vx^{7ML%rp+B4 z65Q|ZP`z!aFuemLQN4SNV6W=!G=hHBd%y?|sNQZP*spqz@}SBj^e^Cnz`s%pTS{^D zaBJHBa$XF~X$ZD@8(Faes5}Q?n0#EDM+UGFHJYM&w7FT4IFf2a^=fm?J*dWJWW@}N zqIDyBWHj1O(S1fV8Q@egtW%2aH=^UB(ft%XU_?jA#aulU9i-@~cJHku=B_==vy08P zvE(bT1)MG-9Ev^IUkQ*poPDcd6Tbzyv`XLz>7j!PC zCL;PpSAy@-&qC*-nvB!2wl?_QHFX9I{Gd_=g1kiC&8m7at&{h{But?x#qEA1Y(#=T zr$@UTYIA&#Kc|=G7X@Pw(zV;6E-!{Y^!s!AwA-O7>80PF)34nQO-V1vHlW=OEqO6Q zLGAW|hV%76sa8Gp78nE;bq?MD;Th6az!|e>D;%ueu4OsuY>8!H0l?Y4{2F=hRnE8S zu3-7eA}?I2rr%-V?o&1U33iayUlPO|h` zZw2TXr(X%k;9j0S!3<(0#mMvZfbk%j92DrhlwlCC*p&|wN`8@qChPv{Kf zV|Nne_>{`2*;hB=Ma^%JgHr80HUD24`Udqw)A(1b&w~ds&*qONbqnGVxkW_sN0Yiu zL~aw2{L!SgipW+GNe^e|vS*z8mtSgBpNo2irtV+%A@dw%7_c6HiH1xI4KxrZNRPUb zc3ow(X-%;lFmBdTSpqQ^>MtfFtk{#}jc99VCmB=M?t;;*zPg8gH+0hPO9$|)Nsa2- zZVJqS%}=^yBVM?50^wRA3=tU*$W*hiI~se`wMTggNE5yI`3vj~dZA`8An?h1?bECZ zZYJzeVRd^jMi*j`c8Wo|aS5@vg=Qm2U@bHt%jX<*-^R#~!J1Ff()U?*x4#D_^m~z;9c_a%q7e)8rY=u%k_^3zb5gUtd6e($g?oK)Q4vc6KUt{g9sk zT*a{8$!bVk!=@z4wKrmJcriR^$xe9D>PD!Nw;qrLu48!)xpqRL$#WSp`wDKfAr>Cw zHCRdT6-*!}ohgva3MM3D1Vs)7IR;Z9Q6>Q$>cABAyU3WrW+WnSR>4iS<>Qrtn;Zm0 zq&~hGKafXJlL;u4xsu#^1~{l4o@1kJk#`(mq8*QeFp<;Ac#{hzI3!V^p>_h#w#*8! zMFEg)2G(kHxprJCryOCLiWRlbQ9;<#hei9z4s`<`Q^w5127vH`*rBGw{IKjT3s3wZ z)-Pxk=AeEvt=3}{eW{!JQp%L~B&o&LGkyy!U|kp)6vUXY2N@{n$BwNHoyJQKh6WzY zIBeMqtAMOCm#$RpYJsuLTZhulg-Z!GPl`4NL%`aN$nS@TN?6W*c&W&09*u0h++wyP z1X~!qN=EZ8Kb%%%DbvdVKYUkYCDTi{FkOU6P}{<=YqhQ)&O&)_n&6d&FfH-fS09Ge z!7M&kQ+~|bCTz3vxmI2mbH*g^;7dC`*XkQ%Dv;drchk?Ymi_ohlM`?29*0)?oH~!po!c=`1Q?`J-Tw@*Sfp^BGAA?~kgq!?=FtbPy>S+s|I0Sg7&`u38I9h2k?-myS-<0`+ErxXv zYZyzLcvUtmAZxxZ2wq^@X?N#hlPdk-$wd|A<>j}P>Cd)7S@zNf<@gTwc>@`+kPbl!xAN#r5j|H#`;~0*PUy;KbL^|LDZ#ste%t)6dcUhl zb8S4{4*yEk0nJNG`-u0}($lpP@vim9cf-uB+N^o+MWo-mlqapGq;)5EQ@MW4OUopF zZ#Dh8TKulZwW?O_fd38uUGG&xvb`e}cC-+hAquM@yhyNLB!T+v5VKx%9DnBao ziw2&d22S>BvBgy609-#+y_)NBzi8tb-o{-m{)Fpz!EOHg>b3IY{)AL|b!|M^r^VjO z3;F~81Zq{Q+NE)PPQHic%lG&bCi1N7PkyAuE~Kpc{HG#tbZV~E{uelkZT^G;o^hT3 z1&(>bTzYLoH3Bq_O`8UMUm&1BwuCZX;Bo&8oE{0Yq6G+8fqswXGN3)VSNpS8bzE~9 zAf4PpxbD$nsaeb!+O?`JqDl&G(p;N0w03|9-;X|VwI1)#xXX?3ebw)@)!49B}b+_e*_WQYHall!QgR^G3zP34vO{r4TE zu7_2B-_etRo8TjmFf%IOrman+TmqUuYq1;}0`+|kKcMQ>Hb}gpJs=-ZU<*-T(+~=D zocx=1P+Lom3-G{xZ7q2-H00bvpnxpClLtZXwIvk2@8pMqDmTXnu2FRfTAVD6Uc-+84TbsrcHv3%%sKYona=!>_ zI{x=4I2|H^yX9P+{=2|cytiEaf`9w94ST4fHveA#UAz2uQ5IrJ^1X5nTU#bT_1}k7 zhh*s>DEPb~=nyDjlh2F8jbZYO`n(cCDF|u1eO@cV zG}!v@>i2nVcuC?}90;ZHP@)m1ttAha&zoeV`0s1=d6V%%rG4HMg!saqHx(hcPE6Wb znpOI|X?XuOy&v#-uS57sgbA_<2;acVPDF^dAo{$SMu;FIy~gwQ`n)+tUTwe6ODZ{q z=O!(T09qm^ozGi>cf!zr-!`AO%t&P0)>5soFxPHFE_K?c;EnfG8`IjMlfYKw2=w3g zytbBm35kE(h)uP%n|VU7wssQ&pyqogPiY%AQn<-W53(>}XSS!{y@{gvy3k4H@q-WsiA^h0twbU_Mft<|XNvClj!32KLB<4@B z5@Vdw)~{(J+zaF+e}aS33Yg?iutgI0h{QxKHW5*f<^pE*Cj@_hvL8W`*RSam85~+{ zKO%Vsn?Ip%Fv9`LAZ^uRlSKuRti>jYAW>;OYvVO+4fzvl5e-Pteh-xga7?tnHRw;M z7l~FaRu>JC_hda2?Qb3MCsd0JXuUU5nzvoR93l!;BXPh;T+@wq{Ut0B(LhN;X-(?AdjNE>wzhrB_n#hnHn+KlvCp>6W$B3Jd2#ZTj z^d~HhL=#_W1zYt9(TV&kBZ;#_Vz1F#=)TqiyJCSwQzXZ1{NL zl6Yw{2@e)e{0*ylBvD0MLHV&%;(wNkXixE9tTa8w>wK0s@f81EA?ob$Kg*kVivO+< zbsqOW%bR#gG(=j!Uwqu((83$ybe2g;V3o$-K)VaICpmp(A`w<>{0-}PB#~5;(|Dxr zZ&=SG=ThVfQK#SkEC>530lcX5sQ+2s#8dotg{ZUJ|159fDgL`c)Oo=FEN|i|`kiEZ zE!JUQy#kFeZgR4^EpS$8O*?a-2$^RaWbD;g2YgDrr(hMAxB8o~sTR!EmIK>Yo85}c z*xzFECxnm_i3NDkX756DCXY6u2}Bq3Xv~avPUO*&h%VvLd$gvlRH;89k)k)Pp%)Dc zfK6LP-3}2g>OPKWQ8$5)+@fxHsJ4o_ts+{~4du0S0v%M;q>0Vq z(FYKn#-n+YO>8!g?nZPfLaYudfM6_waSp8J@>DD#Y!yv#tTwF?O+Z<06-{s&Y+56l zfacsPn&1@Mv_>=mHM*5I;prAs2V$c7frfBBxZS?`6Syici7@sv)LAthUfDi&()qT% z@!LAq!7*hIGny`VM*8H)p|Fh8aCk@0uh_O0GMsjsVWo3y1zST(nT?ff4bgNRQ%^d4 zMsW`38TZl1LWFTtm#=u!Nx-x09sBko$6`|%+ppiT2QWP(F*`PL;)s;}<&qa;W*|PF z;`a_7tQuS|$9V^~d!{UUGeXr<(MYVmoSL5|iBu;)(pF=gPv%K@UWcf~;z>c)80?|E4ViPWjH&Qisz=Ce zF(OF&CZp|RJqzdSuv4O$V8E7mS{T6{30QG5du}C=9wktmD+w&ST!a+$7rPKv6IaoC zs1GhA4tg%O)QVj00JT87GWb>?DhM!873v#S**U5vTG^&ls>v6F7AW(V)yH1ru(S$T zb|T|U^;aC2)o*-qUQQY@&a2tDHDCEV}dF$kE&vz&n9@OW|wPfqxBPAq5V zk~^b-4MH?D3t`*oem_znror1dOFY#pDB*B8;8p*b+cQ(_H-F!c{Q=*Hd z?eF=~GE434!v*K7Z&3r zWoZaw1<=ER2-?7e;X-hQy>S%82YOL#yx{c0`Ei_K!8QsmO8fQr*TZ2ER5;=F)2{*R zx7dD#OO5`6kT_m(IS87?yV~BggD8qZvCzFfWQUFjLN51X!<7Cqe_w3Dn=7dQo+_h5 zUQi~fqNnNT871o~(iCjaCZ$6Arm>d}N1m{C_ps+0CzpmLx2Z)ps8X}R|BAH;+m}U> z`_sV9MyBtHOo|IA-G+K^rZ!7$7VJ$d4=Uy&_``9S-6(c^KH;Xn3%!D4eN(eI&eelL z0*;)Bg_^eN>jkT`xZFXWyv^WAE9c2P&XZhuaGo?yJrD9c=#Bl_pcN;%LGLGC1$4l6 zkivg~&z=sZ?0~w7Pvy$dBo5Nj5CrFi4?9ndF>HwmYYf_gSyKy=1?2`Kyw zr=-SDh;!t;LUO9S`XHDAn>L-hYp|6v#C&kDTi~~y_{OcsWa)3QZ z9NA_%bhe*KZ_Gvv4s*2PFh@4!afKF}%n%4lMg?#13iPWei67gt{e|k_HAsJv&ejQ#@m^Yhwt-W2?U zO(YS0^TaDreY0XC5YU?u!QO_tSV5z-?!$s5Ny9$8WUZhv(avSG!jPXzQ6Buy`t>Pz zQC1Kgmdv}miMmj9_aS`|N&uh5Q9Q~}6c_iDQB6Y-;rigvpgy49yN>eY zCxH;e6Re)dVcAPPD07zC$yvtUOv+4^+whAqv^50bevMwRH-vbnKPq47bq!Oap9c5-mVa9BtW6JFtn}LKb&0$8rXyw)|nd;>KkIL9D2OTd7?f zqUGdpEAxn4`VAn|1q9~f%W6Oh!;0=+fuXmO4#Pl%v1hTV7D3j$1-~=x+n=O?fR6+D z3SXRXzEd-SHPbQ^+fI2Z)$BLceGlV6(7rvM9ps}xHAs=CE;nN!_y{|7=Vx@?kyRS3 zxmNu}HYkemBC7u>rxF7QxTQ=$xZgDlXdW;vAq`ef5ToQI((VEhWm`@%&{Twb6%n$TqnCg4qEKq>p-i; zae5x2g-I7jh8y*#em%tGqA3?rv3eR z0iwEK%&PugIh}^t#XSl5gl7biPNGmeUr)5W@GUTZwKMeBNj~gkAkO*l#M+e@Vs5 zL!iFxFWV4p-=1t{(qFcS9MG5RptWm|>2!y+I#%A_AF#;p+gY5YL+-g%iG%*-=QH*i z3;+%4-Y^6=t`8H@>@bnJ7WMJ|rU{CtPantM0VdnOI8HtfAqo*T;THiLw^E1`R&aC! z6n98j!O?y6948J*z!AjDx|M+P_Q8?`Ag`fWlWNNW@nIDh=LYWq{(mO?g~hR+svC~J z^$X}fgiOQHZ+c0mHcCU54yXcZwCN?@Dj39IjVFjFy0W-1*_+Q3C{J*{ZBi+xB_@}O z#UR(9etthnIY_Yj8fC}s82!u^;%>-~&ow|ei7Q^rH4l?PTxY{rtggtRyxguL>!RBk zF{yT?)>f$RO+niZxeaORD;F&hRncAz;bz0R17_4AzD($Gsuy#WCa)<0W}P`59v}pyr@HHCdQLCkPfYhpIw)F12Gj z5v4pJIl&=`9CS~i3{~VQp-zQW#Oet-GKX$e=xjCO;5{My&GzOscyL1~y#rhH|lW z^1WM?@dObL!(z_G8Qc9>lw*Y+Lw}+JDsTuGhmN^=tx4r~3>p3cmX}nBZMupy23ZDG zunxn7-}#90a$h1yKNC)q3ggVQU=KJwu~Sw5=moM)tHI6ibsW@>;g$I@oficpt-Mk3*OD?DTC2tk?OQQSFQ7?WI3kMZ1-z=^>a=v4KjEu#ITk29= zafF*C_a6xh5AJ@tTQZ1LTrLU!=tx|DxF7dNUcF38$H~Dyx>mBya~1ZK0~OPSHz8qr zrQ(DWDsVfMO{5c+;!-5k@dYPzH1qe2+mR3fit_T8q7g~41jf=~^6Nl%azFq0dFUhy z=qzsY!4Ba8XI;O&@s}WPlqYas)c~x}Armd$ztBNO|8fp7WC`c>p}_Q!s5sichxE^% z19@qKV8$^B6`pZ;DC&aG+ zuiRAu9e*MRFG4Gjqhbx^sR}8#K(GS><2ZrwH5}tZ`cIJq174{upJoJAA!k+4T|X4n z&xWJQ1%l%XeL*UY4`pB^&~F_HHSu#uzZBI1U%G~c_<0ny0wFGfY%!cQmB`2vTx6I%%mG5I{pBBpwK%ZXM}RH6`KbS8squ1 zNK}4J^b1^z&b1ohOSuD`=xcQHGRn7t^1V(RmQ@$3nFH;QHCQUj_iIM!pUjVf2K9G7 zK*P`(9ZH;i`YUZX~_-|mVC13o|%;_eF0f!MDnI55p@0SDfUS~v$L z<2A~GNq8CLz%i7k%BEyv3p?)EnqWCZ9%LKduvow~lteuJ#`P$5bvx(LSVg)bkVr&L zix74HX22_5K~yE5b6v>ZI2!~UO5A@8AtR|mN*wFi3@C{dG>g4c|9^Ig_bA`pinJtfIc7p*(F*4y|L=H15Tckff5p9EOE6)fHj4_;s`IRyLGZwwzy!1X zBOk#_)bHGlA<^D=<50@jo6CS5P^SB(f(G8G^mcZRi^C!Pfk;E1=~O=;zX(|1uDY)3 zD~$0iqmAGjl3G*<2u|U=Kjk*VoduFk0ZFr5LHFipuhc(s5u8PRAi1gLE#&0Z=^_36 zv%riDU>HK6u$d^V4^sHAlsufm9u(#T)*}S&N6Zic_g_e05%IMIen_qF&O9vfhJ)`s?Vz){&{UIh9;)M-lrRJ!w(Rz%wyV>t1Q zWg=l*3H?RNs}k3>?4*1(Q{lv~AmKMHj@J)vLQM&K4jHz-`RO(Ug@z$J|BsZ6JB0JC zMao38(LR=8cunqC=3$BOj_A$XqDklnl%H9_tAF6@t1qKuvS+!!7p*80WL~wo=D#Xm zCuDIStO02%uWHvH#CVJ=pjr_egfy0tr&?7}swu0RW=wmPrYugYe5<@ElS1)eBy##X zWuk@qH(Z{EVZilU;;UNTZPtKB|AnO9(D3) zEaG3dRe>`g`fmmqPR4{#ex2$t)!aX`0#`!Q`n17MN1q0n6TXt4UZUipB=wgBF7_|6 z)k&O_VA3B{R$Gj)yotwxt3u!^tRqlk?)9`*JKwnV0q~IhLGt$+M<<2QNy2@ms1@g8 zV-#tmffrAAzenrtgDffd5lVX|*|YswPf;cI=4s$BQhpg-l~ABV=W}^hW4(?hgklX{ z%}o(Y=fm`)RQI3g#}Z=pZ^DkykCNe!l`izhhKBoN?dp`!f9#KyzS18X(U0VMs5R3v zI+P_8BlwO~q!Y$TV=Sr6s{VXKhw+Wi;;Xls|2|Z5f|j~WuA)4 zjMH*OI*c9x=8in({O2McQYJx1v3oRi#f*4SP zPFtM&Iry1i@Z^e%3&}|#aA~|XOx9gwoZ$F64Exqvi33=e&)A!uir{ug|HH3_;s(vj zaf|pQR#R#|c#i9E<-ruZ$eHGvxxkh-%z!{6FzLOER}#Stm2k`=l@w7bF3Fl|rK2+i zBe6_}kO$*!xPf_j(WV3v8HU(YVhi|wqz2Gk z8X1_NKlb$nAEad9P;OJF$CCmieEQ|o7(xeRwzSjjHMpnFIlpv@ z%~Sfab_ibIjX1h~O&9aET=cCN+i)kEy%|cyq~@hSWy30lJ{dB!RdM|)?5(dH-a^#X z-$b7b9o}$XVTb*(ho~Pb=*s8A9%FdxJVH~*$gl+u2z_1S963PF;oBHuc=OZncKEA@ zx9h0DMc;gI>lK3=^bI<-3TNEVqqycs2fq%0Oio*jz45K{z#4{BU0;zH0qI(za@{FN z-uMKPqr({nFH-e-)~~5QYQE1Ztr@53=HPKPNjOZcPD@de#~?C?ykXKf_a|6V$Ty_C zN_X;7?nBY)1Y1OZg?=-JBrNlYQOVxyC!&^%smx4_xA1Z$!-@DiL}U1X$rSO&6(&J? za;y*^`2F`SnW(RN3b-Zox`ho1rPYJrp!EENk}=>xOJf+dIV^_)-_MT1R+Ws@-HM|__o}?MSz3C4WMFYS=-HWKf0U)9zqb}sT zDS1#!R>yNSnH>)buR|qjQ7U&C(0qm4CnNNUyuu3=X0*bwlw2PAPc$a(Q;TX77NyWi_GGJbq8(ouu~`)x?veIMj(EU=Y=ziD;+#0%{SLW1T)`aUdNoKN zH=FH^e;dlLQP$!C@E5<|pWjHF#q-z9#+Vt7@J|Ga8vq62`=0><11kbW$S~dq{Xat? z;O!ert?#h2dfyWuRK`qI+ER%F`VQQOii=Y3pu30-3sL=93YTv1&~79>7Zg9*H6z~1z8 zR7yC*P|7Blr-C{8*>H|LX&@Mi52_UySxDqxONql7i-M6U=>;Q`y=}{4UrTv325VP^ zh8HOKIO>?joov`+2M=@*E+8@>|4IqG3X*JT43=yFLBSY_Kr0>K)(D)tz-yw}{fj6| z4`O5ZLv6I2Wg{owK-SBx0N&pG27W;?K1&JVWTn1^wkO=$vpBB$7X5)W04d?#2ck}kMF;{KbO*Ut$|xCD zWmDF@C`aICQBTMVH3XdU-}|S1{Brt5>?{rx3mkVd#1hlQzCtN@F$0_1=ecv zS_$vM-<@&T*-B8lWBEoR%p$-=qrgSWFTyHSJZG(d<23>_P>Ps>C~pC7&>s}j*ZmwV z3;seE&~}FqGZ{G5Qd+r{CMb~}2+Vw~wqK;RoSF8S0?gVB{I4iSeT*XZGc1D-J;2dBr zv=(77aAvwc64Vp3^l=q@!`AtKg~Le3er4ivV@-N+avtH2;r8~!|4sI`I-9T0kioqO z5yHyG&AfGb#L#}kFti5(BaOk4#zV5Vxzk7 zQ0*4gZ_xjdX%FvuXt+<&T~Ke(e7FrZ6ul1)1}fKfFCiIrE;o+ZA&OfZU!AMp`xxk- z@c7~Al)eQ)p|nUNmr^pUW0=MzNfMY5lL--!7bbBnkpA@**mwo-D4=wObq9c;t%F&% zOYO}mcmbuTdTcDr0q?^v0L0v}oYPssr4ao~N%a4V>sD{rQwX2%E02CH#J{BEuZH;4 zDnPKxx^;Rhfe4YwHTW*`fe2reRxT{?izMRlLXO8Xvbpp@$8 z4l-7dB#{yi{E$P4dXq)He7vK2DL{i8rJKw2f2n{DMWK7(8-e!6rwFkBsshR)6!}~O zO~}ZCWqvHuA)VZk+@d3IBt`@Nl@NR5x5&tan}nYfiZY3?FS*Hryji~@y-@QLXgo4; z$-jtciY*=sJlIA@-3sITA+cDvPhSAw;9zwD95Q&u*IbJ46BH)l+bCAd<(OopT@Lty zWb$}7?)%5~8f$*!X5)~Px8&X!9h8w;0ngL=Gek2faM*y5k5_!@m@M#M7I#V7o4-TM zTY-6G7dGC)8AOvxfH211{4o%Kr;|WUHZO6gSU)US38Jr(PPHKk=GbMNwiv`Wt_IPj zlT`%ojCAU0BwIe?mg+dwHjW!*k*pq(mF$wl7@d+abxU_V=+eX`3zr3k@s>V z4h|uYEn>%gfIc5?#|e63y%UhfFq%<3#ZXIhMv*CI6ibH8D6lC(ohL=t_pl#*jQ8-; zS@>pB-E=w)AP3`X``9hhaYO|dcB?Zb_8E(F#?;-Ei#1rxcAbZ6|3P~aX{NE4%ngG( zL3V5|#$;pgl->oC4KW^Z|2O6|_*e}M%vr@&vHPC-U;Qm`dWVqiD$`(L{W01tn8bfC*U& zMTxn%-l>CM&;zd|pliIB2JazG^Qg3OeN4_Q%n(>1u7%2)ZN=IUZozqt@W6P9oBSba z_{LO4B7In-#GI&mcB+CJ-H^;&5O*3|IPa3 z0phlAGJgM`_rGJE2cIO(PsHvK_}^0@VRQtAOytBo^mKa~zQKV=zAX?Nem)|-8eO{~ zeG1!XCNBL#7xVsIRFTnE34e(CBIngxOx2T!9WkEjSF8jz5}rRA9ZfeQh(u$46J9~g zX`>6oAl3v6rhd4mFAcRJG9S=j@5pQ#4BWpPgkcD~QU89K{H#C^&Qwhvei4#ScSy7wHb}c+Cvrb5bG+6d4C2kSi92T zSB%{IF@{~Vc%=T{&A@tEs*-Cv^;eQ@>^n=fgjqpQ+*yZh2qX3TkmuAZNS$P|;2!HS zi%00UBPy2ej6L-mimw;(Ry~i$MVo=H6-GEN^$k(4E{U{b$` zjMYsPNm&9@Cj~{MqzAl+q%48&PYQ`hi~bfxQkK9~lg^9C7`>e$DN6twD0F^CwsjWm8CFn6Zx#gMz&|NK{rE zx#}g5f?~eJ^)Eju1mLh`hHn$LH;1$9*l;_mfNr}(?(xlK@{D1k3kU%!QOZ$wFEVaTQ70Fp-`!2>?KU&8jLnj+8ZxN zo?)B_`ZV;VLb_(McPc?voG%86jvIT0u)hfk!ruHtNOZoKW4-(;E4a{lXvIK0_mn-jf@IA>`Ce)n(bG2A|!^$yEUt^swO6($eH)%*3yy~z7 zhYesS$Uqz_CY&G1smYgAU__9BNOrFZR8fMP24@gfn~5{A&?bhCX>zSS)l^+X?1#e{ zx~l;&PD|X0elf8Udm1*=7baSKS+i4@UC!_GXT@pxtYAz(O%W)Cs69KiRws8Jj>%3F zFx!|p51+mg!h`1BYog2nM-WNw{RSY%Xh{e26&lBKDg^5_&0*_i!Yu}=_F?}1_d`GnTp!?})^F#CraCC}RFayQr>V=XZgo(PaDNJ$kygk`V)|)$meSQ6hx4a{be%qgu7iky5&mna;K8)v9leRF zXf|gwScqfwMeGpY)z-tjy4X2R(QTp_P zDy=1rW*piji#0Ny!2ePAwNxla@DDo2Rf%-*i0-y)LGdTAoY4I+rGlTgOc0Xm@H z_XQk83>dmZkB)CCSc%0urXuw23Q2ORm57AHIB*=|FpkYRD;{cY0T3ny$Ng#OYs)Nq zDmr^`Xo2P+;}}CrpS{sClspmf74si)-l8nAf{ldRg9ep{q4ItWT3~Zw*25TJXj`1R zg{!<{IM#}*Osan@*ItS)p391{^oahx1TUjm$t7uQ)}?9q(&I>c{;K5CG@toK)Prxp zTlNcw?8B+cu6d0FR;(AzNGoC`H$h%+;(62>hx1{QS15SslQNjLBWW7lkp@uEvh!i9 zyCJHDXvv~K>!$#aKAsLUc^!dB;sXaG*9SB;e#G)-WO4Wr0C^{-&B=W1qW;Cl!?Q((esdZG57w{ktYRAnOs1syq|qsa2^4f)&;r2toYz4+k{(H|eVKY2 zo=Zv`xzwesKXp#3g!`v13Qs5D6FWM*KVS`d>) zVo__Qn^uVSIf>XM1|jKp*2X|cOe7?j(n3yfnaP*i0JpA?Ksr45!@d`H0{J>y|gAnT104zA91 z(GiXu$BC3Irn+QlE|miF44%b;Al%eOEq`B1wS*SLibDi2YY`OVB-L_|l2HqWm0V2L zsU~bRB40A5&~;Yz4u^AATx#u~$OfIkP4pP-v=Gi4GK|O-jxj}O(#V#wsIG|8W61cz zP4;qPX|8NX5#RA~g%pV^*uw44f1_?WVGa95j5@Kp#1Y+$({%jsiuvhH(KCEB1^?io z3#Z`N#7c-8DwjqfC|jB&L*JHk!fPH;xFrrLFdDCN2ds4{;JLVuo3yW?ZEcdg(1A}} z!z$tmGj`~82TZX^1(6f^vvCSrt+GkTd1(vb3P#8j2o+q#2mG8{;%>w`}W zr`nJJ@s~2Vagw_1PArm;BHO@?aJZYf7W;8q?(mtjezEVcGUa#llFeu{A+Xer1@#R!AG#8pt_PJ<@KD}9D7 zL?2^qoJWc*>R0FTl8ng;X2_5>m>=K+EazaEjFcFef)ORAl=s3z&lzNh0^&;5h-vAU;ny2n99|SxVRkHh8cb~}Tc}(^Pq{CX zW+i9wq4YGRHWl-o)MR}k&CC7tU8I846lHGeb+j^AkXk|oaFE}n<~z#5V{HrIk({`< zAhpb_$54q*l)xg;D76rWxi$m5Knz`7=*!0>7Zzha?Ni0WMvp)ojL*5LDX5BShIoX_ z(AosyEoP(Wn`(M5>QI+BD#Ybt8EqBFF%kcn_|L|FP9*nYhl-RkeJctWxiQ0p*G_-e z&DYyT$X#KjBsB>Tb-^C0PNgrec_%^8fHbrxT>_@RguEHYkUTdP3xu9gd}2y3fy-!+ zO4tbxg9*nhDP{!SV$nosIf%poB24~_Tu{1VX zf1M<+lYk)*{zO%do~dVH3k)zyqAO*7g*e)%+C*uyQsI9{O(p)bHTZJSOh%U_h;L$+ zptF!j^DTBoLx;5<+;-Z+zo)HP^vUhZrgYj1GL)Dup(AnP7T`OH#3DkecRsnxUWQq#QD^^QR8M0w8=iRC7~PRq6Wx zJdJg>Qe6T>xg!U0$?#`<3oAiy-;K{ZD`s^v4l_{A(>xzDq#BLF{S#x+iYdS6AZT=* z(Wz*ZO-cffu?*a2alO0@CyX!2Xggh)WX30~KxtF>`(@#p#PC=NnbgAMvhdp#`ZUC& z3kJESBK-DDJrl9au#)D_Tc{);zlnBJ>~@$= zy#U^ZhTvcM`$YdenAsP%`cA;L7hk%T@Ue4xIkgS(T#q;c3B13B;e%fg)<|h%){$$`NJy``Fxg#y{t>wmCTjs;E%!Lh(pdR}86Y zv31dGz@eW=CTd|((d>CdzhMlR5uVG8wo`>5y8Z&hmwPhPkq|hgFGl9@*lcvcZ?CII z;eF#xrr++l6QPTE$%o_heiR8D(qj^-Jfq;)MwwGRpu4`} zV&unFcAmSQrbyU!jm5vEkbGCjBu`3Q6bDv_)xV3f`dQSCk9K-bd+hpjl+$HI=#PQR zKwofbSSPJ>Y9)R|w$bvW1!dR}Sskm-M%IqNgLE=zA2KyKS6d>TG5p^VwMXc8McQUx~Epv?mqccBc=iFSadON}W=S5-15x z3|wtlHxoVVO}&(nsB#`cf$!OSZpKOx*a2#oJ~v4`8-A1ay|>w$X!d8s>09Y3tUTQ?#(m869&--5I{e%gWaVY`7+w{)#wT0 zZ0i?7gE;ISwS(DeJ!jXW6~aJm{N z3<8#nu3UWE6QiODl`?#P-gE6@+Z|c4vlhoWsuL>o`NRvT?e~Fr{ded}B}w1NAIvxZ zjzD6CehX#LS0m160$-x91w;^KC;|CyD4Mu!=-Iu6R#SL_zL|PWC?J51Og=NE;>*st z(%xLFiM3blwhpST;pKJA|0AVExl_MD4B<~Zeb^_?Gu4;tGNS62gO0W^t}e#sa_}CA z!$D^3VVFPIHdj&9wtgEjMD)sDY%`0fDBfvSIOnx$T%3SDn+q(}rRGX~71(gj9NcXT zK^lXU$};^Vx*4p$H{WWWe+MZo)L*|0P>cxINcvS&fRG_F%^bZ@wuq%;%^PfTS!Iv~(4^X7`b%BGkBwEA z5USE7oZ|D^{GQ)!s!Q+%#};5pvJTzkiVnQQZ2_d~-FRHMjqL^H$-cbbQ7w^nR92{$ zm<{GomE2~znfP)_z9d!+Z<7}YfJw2cq{gb^Z5p8H#?w+CZ&M+OYVWx%!B?9G39LOt zW!0~z=t0RlEbPfwB!OHaSUdLrN%oc3?3l1x`aD3xUpmDcp^@j;wvj=FPN0JJ$MUK0 zOE&O%fCY5U+zqpBz<&UUc#0mNIJ5n7$+^zCf2g*fd~*6L%G3^>3rn`Q`3cEoC|<*t zq=pshCro4TM&j=!zEan|LYZ-J=#E++#$mONHB?NMU!YS*E9*{J>5FB`Lg9ng8KaQ{o14#i^p2XmVb?2%Ft94vbT}ss- zF0D(bh3XbCV7d03AoK<#PWS>rVF&cdHr0Shbiuy32X`}Kj!=P_cr{)wn%aUFU;Xuj z(4|esf>YX+@9M(D&=i2@T>W)tNR*Oj!<&wU4wzP6TSwH%Ug-QbqdTF)v1Ve zw!_>X{T+F`&LeM4wbdt7%wD96sJdBki>70*K1~XFjIX<8we6FMAxEU#oNwq8-2i-1xmmp`T)fKI>~edX+kn+& zuQZEqF}gUlmon^Vw4|^te{0MK58KSGtJymhuNGq3cNag6`9!yc#sF*NH5zKn|4tmx zB!Jb8`FJt1Q#1>pyfGienhm&901F!P?~4N@%jgx2`TrINvj|j) zKzdnXg&M&w?vjyyg4Kl46%L8r30GO8MNb*_G$ zs}|X>1^Tr>&9Pq>>eq$pQv0<;zm}-U^4hrdmH?Ak%DP3l1yYx)?qSN<__nnc_ZO2f z9bUzJgeG~pAYd7baZ05+jQwC$oIk9jJL){DTs{Ow3moRwHGDg*Qr$QWpnu*AH}PFs zqtzx)k8JqJ8=!<`bfGNy zGUmN9=AxdZ>RrWp2#gwLi?t}cH7&e#ZQZrYYQox_l!s^`yNYY2$PhEMtN7AL)w_W3OILxTTCkVQ8<#f}yjHX}iA{uHT}OtrO=U!7&8&!WOR1iF3h8sV#h zsR30kk>M!<*j_LKoo7P@V9jn=D$SEAyj=K-?ehMTpp(B-ayUn))u~oiOE0M=kd_`& zZwd0+jMa9=WFImf&Mm4dKuBsVNsW2;b48CMcwVhM)g?0+U+Ohh_pgAe)cnifG_v6e zYkk7twvmybKqydAS^M^jAds5`RWG@TeA&Yfg5zYeNJO@W&E4R-kBoU4G}*DTI(UAq zgj73Ro|M9I?7Bo5dV$9HQa}k(^$5jKM<%@_kd8C^E7Y~0u=`XcpihPR6hc#>Zlv%E zbr&mag}Rcku_vRt?>l2`MxMEFc5SeM??1E2$!m+Uc!hlCcoyJ9YroW&6vs({!Fe$g ziYeq)+o5FyGHcy)sr()`CIDwhti2b{V#E`?O?#0U=`k?$uyL4|sc!`u8Y z5F1U+*}|7wZ{Ue;#X;nVL2Gs6Ds7KUrX;+eNC-1cWUTM7yQ|&OwPdu!gTW!)krvA!Q@37L{v{Rh% zdmn7yA=^l^y~CI;0Y^vO>e?C7mzzjgH%=Xa(o~5aez>lnE^B3_@{a{jg@Ca12u@kg zuRASbp;}?{RWtk!cpuMD)fr7gyAD6}lW_jWJfZ%H8nw?1t9D z?CfnVh1tNTj~yGXn$uD>OQc<;N4Cq?(auQGJpn6y3-zrr>R*EW7o&OZGNZdu{_ZVFQp00;16+yQlbkpb- z*S@sZf6^Oynf^4d6qb9Lar$(yyw&k|La_94cW69JbWpHt=_JV1$KZ)kCe0mSR`!BP?-|Vh>H(Bq+vt1g>Z=J%*A~3M>FOV0O8jJ$hHz z^R#4;p!>~q>6du-NjII%`Z ze>ync`%vA)QOK$*eLx3X z6`nuc;!}}Rxpi&@(QzVC8lzv_U)uiYMRrOeyOKd`Yy17*(qwn6>3XQEz$c(<`{wc+ zM|UuYl}k-$06Rd;p9zBid-0Mq$ed4=z8bk(quJ2{w3MBWtUB(%gT&-*KgaShECtsFC95yO% znX(wMiIv_USc~Nw> z<)j0XT9aE+7V%SbzISI^pjdtVV)|GXgHh4NtwravtCADY%>Q4{%?i5ajtTvo&r>=V zS&nGJ4aTh*j)wV6)mNxSYjP}wvpD*(hCU^gTPp51-QlY>)}z-?v(P9m$lDuDEG}%A ze@pPBR5Nd&Jpp+{Jtr7Ek>Z4gITwXoW`8s_uMIcNMHw_8T$HiDFFNizN_Tap+_H#z z?hSp^noI=?^Gh>AZVI0>cT8{=rCsKIsV$)Hg_T755S%C-quX0-IrTG|0?5gmLAm;%Xy{F^fwtfjf?1AYRqx&5j?pB+E-!D7Qr$~bGX}cg$#a=w$7awOjuN* z+~93-m9t+e7m7v}apoqVK7bu#+^fR#gma<5SL`gx>8arS3iUb&+c1A#73UU%7u6+{ zs~7ozbCQ!P!B{w@aa+|hj9t(-wY5{P$RFcYB`v0 zX(mg3Q>T*h9aK4bEUzsf|5PUnKupuEr8vf|ClKWhIVvh&zTv%s=U-ygwESJc)aK6M zn8BVM3t0i8HCot|evixxoPBb1s|a4PfY&P|&|(K7MaQ8hO_HdzKdO{u4DJu7N;xa5_p-w)um#j*%<=mrFYY0u z2SXL+U=3@s&*)67$xjx~|N7ZqPNQ-L1N%=GS5yWl{~^Ay#bsZ`sT!=md8mp-|1xPm zEH0Bio{HWbQ?82Nhhby(Tj>u-X&u_DmIOK1TD?-w!|ji3V{Rr%Rf8$QruD4oSYb{7 zC5dEL_2@_}aY2{FTIsup)B>~ZkAGS8lOxf;92G4>_;?0S#Z%yddG_OM+?oeAPv7oi ztT|bx>w?7pa2b5x(6>Vg#bKS0{u=Q9xQ)()z-0($pZ)@wnX`qtH-~Cx0jjj# zursMGkhdMu!Vyr321&CUH0ao9&>;;{qd_M$==f-m`&&}`6Qe;H8q_};G(&@iMuX;P(C}zbi3T~q zkCEE1)*#nt&?XIXj|R19kY^NVkmY=h?H*B_`xx^1iy!?DwylwDNyXqx}Z?!cWT8#-> zwlBOU+ZW+4rtFkzgSTr2tk+AQ98(+OczT+0b{+Ob;Y9$L7%Hp!P zTPoRH9@qAXbl@HCym>;gI*TlHlG-)BnSy@W7&;wH#bv4U)jUtGdX(kMyixpb*zXU> zdy#vfz*XaI?x8#`&p?CC^%jvL6}}cXVVou40^!r%rVoh4?>maLmV6uMh+Ho;!^}T6t za8dNanDJ#a!??q9I(Stqhu=RZ{HS_IWLG+aGaX~H0!znK>W;Zm-68KqC+r^Y80o*& zv1IZ7lUqc^^6?Fv&8Vg1yKkTBIj)Z)C-2H!lI-g++O!m)LLC$4qtsm%cB?G<2W789 z`|b$mG6~ef@ozHhZ`^{;asAAbtOmhL(9c}H?xRTI-;AMiHYU}jE?dzNXpl2 z-Kas^jW)Md-aJKmdp>BfUyvP+@M&YrQWUnKNiE~mJ@VP4>Ts_5zD!LNd>xhM>70|T z2`w&fA#9iP`q0NK@vJkhWs+Jci7$%ohg*F!X31nf&;_^#+sVKY%x+Dvh4(kufY681 zHb?B>OZ+@$!gJQ?(_5WAM!%J}8_mGa9SI4ILB&M}6nQ1G{p_E^jyQr7c{r?KV)PG@ zLQ6`?Y43;>o*oH(HWC_+g=F&6SYz%dS#+QyG_gY6P97peao3%ru4j)>WzEu&w%rFU zW)e$c^K`j66^`LtW1A}>cn;=mvehV8Q{IK`x`cg2m%GuDnYHE6a*=n9H@3Qv)LU2C z35`y7<7plJE`$NWWr=LN6J*mqPjAIT8LE=8N3;8%JZw?X0}MCYS1vZ1`dpQP*UDCBVy^$pL`8AUPMSbda~@$DA#8%D7} zJ0CpEThr8Jf` z9-jdYoKX=P^=_*YaXF;?BDP&s#$&zohNEtAr1=;DkvdNR9%&YExcLyjk>*_5%kmL! zKB9rWyoUAJr|^S^B>cmJ^80j;{Jyx4-DoDMA23VzP@-{obvW-2E7eu7`LUgyd&lFq#b%{7TY@9nW9JI1*S0J;W0``ik>ARn9mWG+_&LpTO&1ih1Cw66<^gYbhnfA>CvMU`t(WJzL;?5eH{ zeIQ%TP>c~yvPP! zx9K;AK8R-JeB^z`bwQ2X@~ffAHwuxAQUpqWz|9!mdYkW%u_6;WXqIJ`sqpl& z=#O+QRJz@)yXgY)!1gLZzDhh(Kx6`dR zj%S~laZJl{bIL5xvx39j$E0kFK(F;WW`rT7e)=)9rs#P7yeG*urq~uCN@eZCFoRZl zw;;CAoorjnV+>V#n`_x)#^U$I;=N7f0(^>(AUm?X5c%CTzyj9mwQU04Aw}460_)MR zr_O>M)39BmVLRG*W5m*G9cxGO=KCEl05?O*o_i!X-xMRGU`oJB-$U{F^~Zx#>RikE zUZj8I1yR0TfjPwDi|jAkbq-VH6;b|;7&MV%a1nW1I!L$BOQpx*dqAA8kav!?pWn%m z(j#Sc9t`Np@O@$}Rlt%5aIqB{2P!qb>TqN^qPg3pW#pSpek7P8R!7Xa^zG6*;7AGu zo`e-HN4T-OvTG+W4^~Rd`(s3j9#jtdu8_DwGyHm^97_DSqwlwjJq9OaXp@W> z9p14A$c}FLk+>Z_{2)}%uC0~zrx7W>hbzZk@(y21T^Upvr*P2` ztXaHGf21d%uPN9g6#o^L>M#;;hngT{*S1A-2glMZu?cg9GR;M+!bLsCKd-__&CRXO zi&lq=_H`{GJW2KR$@vgnbx z1^^jsm}@g_BR@5uj#<i8I?*){h|; z`B}Rl4YX8KU-44dS?qB@2WwP5dpD| zM_Y%1*Auw-t8vaB8N5(RKpi?nZ|GXG<;k<2|1%vJaru9cv)k<7f4XidJlUL$dS|Ib zfum($!HJubBGnd0(zYh}Pi^fHaaM}y`eZH%;m2+ASC6UI6k##8LvdM#H~HorBZKv0 zFkZ@lhKyKYZI_*HOqg?i-rlmZGAoq%x%F0yaJ~Rl4@lM^We-Rh>*)|;B38O;7FGM+ z&cfw&H{YCdGQ89mbrNEY@YeV{)}_|?cW-3X%JM$L^fr5BwFB&_@fZ0vCTn;bb}Tmp z$JW4^C)N0Sg6-aCy1mcrUYXOroN*NnTlU2_VGO+xD`@Pvmo5pEmDTp_8`)FZ3&0*s zn%yxody?jw95Y;;Ju~k-bFD`d9)9weWqf)%=<@%4!#~NruebcxXO0V(c#J!+^xs#T zz^umEow^gIOgp)fmj`%>KDqin&BmkgqvJb-*B&f%CDYH^Fgln=d2X}Bo!70t#(ZCD z)@E31J=R*EwKh%7m!%N(qE16I!iicj55{6bWL|3Bo@w2lVckAMrN|Ww6>pifaPO5V(son4ghp$ZS&c|t{jUsEZ z-Al@_^G;Jwv&KtBY(qtkU(6O;0I}Rb@MCP-%BHv$efrC?Ent52wtK66TSv$ZgzlLN*9@ptEpW>xXSvhp&Y6p;yhj1;vw| zHT(@+>g#5;}SLX?_A~8VSt19w7X3 z13x)k0p-)6hhlGuIy3oR4IY%v^_h1`+vY8k9yve%A!(yj^eM`>c1o0bm4sDQ(tSUA zg!jl+-HF@mPMl(jC_IhxMfv{|oNQuMQQJ3Ap zzrkW%pz)ryjb6M>cT*gbb>1pQ9W#Ans~+(Uo2)lS`jrs}u19>s7J;7`@i(Q))n7W| zZ+^*$YuLz$-z!aTY?tmRv)<%-TG?sWd1_l^jsD}`kVTkB=<9wnRg>i#)&?&!wytpm zGu3*5uU!LA=B~?9t?x){JJpALA|@xPoa3=gTV@Mcj})&7s0%5CVTIv47GJJp@A6^GpqV@!n$VRbVJXE*?`1@z zGmW9o&ITV5Fc+i^V|P&0f93;jv1_Oob)qQlzP|P|y){GQ#`Uq92;#J4eFn<9Aod4& zZII*e9j@>l?(p-OFlA@#pzkn^K3#JL-EpF_jCEDpzbY9E&wxEx)O8uJ!7HWZtIH?9p%F}5)S&owvJ#wK4XQ&A@0 zI#PFFS9U*>P)|ORFxmXtEGT#t6K68JBB3&Ht;`$S46s5Se2w(lqA0wm*3_x_jHI#* zoi$bOm8qJlzAMtIjyhj$w^VXxA1!~)QeTIa5|fr=Y98d#Twg2P&ucPeSzY|aE^pH} z>A2b~#zp;10XAVty-mvjJ}cymos+q?);#s`V;nupE0?bq5eLbD^LJy(-JHrRsjRh_ z%h}D~EtGDS)Ha^fjTu{}Qlv3}!^>)slt~MC87Nqr=xzRpLa;Js@#4lZVa906Y7unF z-P_l?c4RVdVJ&uK$f#>u35UyZr&YaTY{|V z18@aQ0kxhWBis?4hLuFVH##8Du zv6t`Rt?^W!4(}oCeWnA}^pM6jZ_{spAh8e7D4`-kK4d}HWGzyh!GVV#W1A4J=7!B{ zMa=e+bbtN|wc*Bw`VaW>gW!d&frO?5!O7m8+*o=bnk+Ml`=?*oFo5i(fkpS7Nb%%n zg+XX=y9=%hofPBgNir)rzj>Er#~lz+XLu`T3Lu?va=BH=W#99BmOoDjcW@l0WPH{4 z1R&XJil}!~HHY9XIgd*nZ#$41x$_}7&4%gadh>yjfk zcq0FH4_U2@og`e6h&jKRzgVhF8!8%p(AHW!?k|`7OQfzWUjNj!uw2N zn)jJ1c>RpL1J3qJwuk477mc+Z|LJvOV49t;av9xNeBaOD`grbK)$7DrIf7Glr)w2N zz}6&fr>h(R<2YA<#nnecsEhW=T}bpHFS!*FKAQ6ZN`WU;#U32^0i%3+w;Y zW)L64K_ zGL}_$VD2NvuaI%~JSgM?h%eNCzDbif03dX28cjW$6T%1rHHZ2YDY241rdmiXb5{KE zX>-B2i7VEAQj{1xU_gjY&VR^z=biHPshpt*S0JBst=kY#zd<9u=&6$VzA&9?N(wSlDTVCBdNOm7Wta1EbNTM zNOkB&&2_~Lg`|xZtGJwg?ZAu(cL6A_h0 z)ehUXEObGgt0FvG;#Bagh@`s7U`O78XS-=V-h7PqEbhH-JXyk;RG*?v)1u5Y?5A&F z{2Jzo^(ebMbvd@J)@;dLUD6F2O_v~Q5)ec-5js2nN9!(XJUxS)HcmD>bJ{T$G}<`V zcjsR$tMLYpqXCq|)UG%Ss+`6U*s>W0&KOFopQMvkk`&o&Rbz=x&SXHm(-!|gOBiIn zNae9@n>tSymeIJ%V{NmnGbIMmk0VpDzw}X*{Ux`ZlHJL)`iZeGB860M(U&HM!Indk zFxl#P);jM_%yf!Qw3endEzUhJG!?t7r9PZT7xkMB_k#yWHP%im@*&9B&8Rvt@e)3| zdW4ZScWYLf*(=izzWoQ9zStE*HR9mlElZ)ZOIMsOmBXd_`0}n!KuGON%cHr#5{ji- zjSTKGW1gJHbObqX`Kq)T#O^_%M5SMdK4k}z?JUi9>S|2CNARr!L5)Xb zEJ%d5d3PdO@jf>_NKC@|RKVB)Zpn6k{2$R3lCJSn5YDk>JV_3MlX49kXB6@h>QDtex(CNk_RW zJNR`8`rCr{x`Z98Wpb1=tU`O#ADJZc1O)rYcqOQOBC2Y~pp8;HiL^z2I7?*vhuUiT z3@yD#LiYTJOLvs~E0Z&Iq5P&7$nTW7@;iHu{LY)jZ_PdFtMnuFCjFR_s~<@-^<(-B z{kS}v$HVs}E#qMpId&}8PuGqB&j{z%ZjpDbPV7p02tp%zzU>mZ<0js^l1liM3U?(f z*0Ew*zAP3(rEpuDqpRT--l0bh``y$+`S9YTA>P}29j3NollR(MwytU)BzZJbP$>=> zaPOy`7+?oy?q_K@y}|7t;z}}lW@LC%K7O?CTmZ1y6z0A2RfwtYBHME7pNVYn^!+N9@la&L5Wc=h_TT4C z^+x3_Z=>>-*O9#4(F$_AVK}m3*tGs%^Tp6*RKD^yDqndW$(Oa>w`JnT-fz)gK764O zM}PUE%KO~WFZS)xFY8;=6`AvAmcCwlm_q4HIVPTQ(!K7oj~}zLAC%bp&93KU;25fP z9;4Uk?6$I-7r)DA*^v^7=edv9`)}c=g}-0&H*LRIyS5f5v@A+!ElwogmPLt1r_<=t zx$hgvoxUDPt5YSQ;Kdh))ZwQisqVMa7@Y}HLr4a(EhDky@f9kP$zK|O9{ybX4O5R3 z{2k}dTzK!X@WT6!@l-q&&*MCCsdH~XPke*jdx9s9o$lpUocnOKcrTvr?;DP|A~fCM z>~{{uy2G@j(Ethh=cvg?l9r3i0;1$D>E&0Q-LC8Kc z2&tca{Maz%9y~@V*5F(8G`0way2a9*8LJNxjSuxGw2Vr5|EP4dfELEa>;tFqp^U8e&I(BFs4vL7 zMJmMKL;O9$-{br}$=@#ie$O9$ok?G3^333g-_Co}c;b)iUR)L5C-EMhxIDbq&C|`( z#nW~6*w}q^jQo!CH_V^!FQdk$*hvqJ8VmhSYe$U(Z6l2hJA3RN%@!o6M4#BpaUpN> z0p860#?fu<@23QBjhPSK&)iOynJzS@LI_fIE^{)4zZ+$8Rs!0#641A53i$bEfS(Pk z_}RLah<^sQ?OVXMZ3MP$+uF#^219cX`VH21f^FRSmlw!cC?rMzt^%zftl z^`Q@qqu$_U>}**#Q_V@?bD^xz)$2kZ)+-2Dyh!AL|4!D9Wgu;=?)u!bb~c;S zlk-ZMx!e9?OzWhUbM+VP>a09VLLXQ4ead<=dP7(iL35HrQC?^J`FqE;SM^P1ff#|N z#Gx*r@?8bPkv6W4`{);IEfN+9gCDV}VTI?}Z*~l>2HtIU%G0?&x`^;CK!gn;&Hldq zhxfm~|IoO-p%a52oBgCpBgMjO-{5=B{p-g2Nw?9x&g&=bhA}tf5OF@9g7OX%auf0l zzCC!zc$*8GxbNpJDW@7gH=`N^f5A?6sT`QAo%2`b7OaIM%i&nTR#>hW5?<&mebbc` zo@SO{W3CSOYJHOrk7`TIK=u;F!Amx~?k}jDC_$>cG{9E6fI?#Sm@(a10EbR4+tQL$ zGembLS~Dw%!);sy1(W@F3fgcvS~Ju0Tig_RL~XX^x9H8z)j|t%;cwmQI*QhTl?0;C zNVQ`on=!>%UfXID+dvlh%`T|}a_KUUxx|xS=Ekc8tF@z}yzKc^@Nv;`u>hHP!e4Xa zvm$((XK7hrS=EZF<-1)Dt0%rIk%Q3h^C|At{7FrGi&ccGeIDk^WVe~r5`$FOkTieN zJu%2a8Ej{32F&Q;&%i3r}>P@wM7poOYQKTFgW{ambq`WaAb^z$aQT0fVmTlDi5 zb(4OsQj7I-wOXj3$d&YSjhdyOYt>Bs461DX+@vz~bBjvjDOJ$)QY8!2);*ruB|(ub zt9~66k)!&H4$8Jsy{&_yNK~)spePX49vysGg3s#UBNBW<2OpK-4jp`4f)DASoO@Fd z9ehE8cj{o91UKs79tp0|!EOnDouIDrK6xwG5prNjmFVC>3C`2OLlV4F2aibb5*_T7 zAhH>ncT9rk=%A8dvJQ$gR-JlA5*(LczYg|G@Gm-eLV|DW;E)7g)4^d0?$JRJU8-kw zP@J5oCkW~)i)d0kq9f$qXZ4^CipEQ|>R_4#x9MPp1cN%5DZziy!7K?@>tMD7%XM&u z1WR;qrUd8dV6FtO)WKO2yhI1*NH9|e=SuJ#9W0PwvJNhk;HjOlDwoLH-*~fjE|%cC zIv9}Pn>u)t1o!FSG6}Zp;4Ko|se`K|_zQx@o=kiGm6eSarkkORO5D6%$bl{M)$0%k z2i*l?4~V}#5yq7GJ0oiowj{Esm1c8p3wuB$DJFKEu5eMd+07NdMKkIg-Ur(_RF4m* zi0gM0=m?Zq>1*|_9iKaVB;LoQep|n0O8`E?Ja64K5l^X`#EmB%E{9`dy4kMQ4bVQ^k__%Q_NqC4s6+n5ZfIl;ZG4XQm$CLV`C>}iirNtWXo+t zvH(_~kYNGzsO#81%Snn1@vXC)1kXyb&85EJOtUmg9EtoVKn}Lv_ZUwxW*PZ(yll(& zWatB+TqLl-Zp5H8;;M)XF$~|eZ=9%}8l;F52s&!IlI`jT)IUEBtY5UhWnIa-`kf+j z8~{*IN!5qq_4_&6FsWTz@Io-Nv{s!vFtDewOsv4 z9%fhM*5k6Yi*c-){FZE%VF8duvG9v1DwkANXa@3Z$wTKi+E52iv!6-X*8kZI#URwa(1(m(?``|~&;VkSWVF&Efc*mw#F|F(_!5!VXow|RQ(C#uZ@ zv95dLOxMkPD&BSNqq@!|N8tiSq4`s@8SztCR}QqfJizs@pg3Md8Z$W;1bPibjfx-wDY#Vqw6e4V6XReF}> zt)H4;s*tF>FH;p6CngkftaKGP^Xbj;PtAf6A*6BgbSPEj=tN?C9-V{N^=!XBoV`91 z<{7!^(W$s6l>@)+N0YrTEp)q#-U38+1L)Vf9P*KJkaNskfxX^`a1`&;mXZLL1DlH0S4R zMg6(;pDJ12@qa=VRoK8J2|MZWcVWs~>}hJ->@|8n3m1E$DaH++EaUgqN(|$~ZBTf; zef$U^m`IAy+osjl&O=ys`u8*e>&s&o)*m7AW>K78SU=1K9V^`EFa278?Ty^UM_Mv% zx}Ky-D+UTYMzAt~i!JoNRdH7_@f12X*Eq#(>RdU?AmiK03Qpw!`myMFAaFVf5`);# zbj0F9&M}x%q8Cvf3M!5^%WbRm$IMW#&eEFoWW1z~xF%F=jVZzG3OdcABkB&?(P4i@ zGX|v@qMN>7+BiAhMq)OLc9aIzIjcvSS6?2lI89rqE00Y28hBw{Z-?>4bCj2vZyA5~(ovhtw~cqVwMSEeY#6sC@K@-QpDg(iP+@`m$bPYKmHe!Ygd6CX zuZ4QpAb!<+yFH4Lrgoc8EKWy#UkeQw?|OroM7^JgU7vR=P}lW9|LhDVV+-=N(5K6m zcMKjjI(#{=FEL+75TxPPhd#xcbL0#1xw)?zEEL)}eXR&tA(6Npzjn+N5%qG2Km0G>y!EHKPSg1C1lbGnM?=G_+V4jQ7 z>Ivo$GXag_LRnPAEQ|#yL#^OA3Fp3AdDu1KIOZsmG2DWnD2-l7mC=({s*q&Yp_Y#% zSGS_%gYK$t&@dqc{nE;Fq?KZ2ewyP>pVARVmP1`U@=>4gENoa?BGTH~;>W{lG)hr_ zYCn}^o;LnEwf(O&^@p-3(9}7)so$tj_2Q;P$X6_GfT)DvM4MN_-6dH-rE$12N$sN4 z*y^#_t^igu(3kia>6UdxFQuALiwgDc(u*CcG*(&pCic0(07?rRQBKLqx2qpBM)d^D z#~GGX*vnD`DwW(c-duoUFC1AYzc0>}-v?*%iw;dQ6mKG5hZ~uy-ldZ+oTI$DB%!kE zJiDa6r%1vI)!lwF$?Ug1kc1<-q4`Fsdb4vH2*mF#NpHaUQ+qras(1#9y5=C?df-6PGJd>gQni%o$2g*7WV9FbhD^kI#G zFtLz{{1*ilbT?s<^c&u-^dZ5@2c^$0d@-9}^ObP3k7qbCi{JcupZBhSk-j~_~Y7j<4n23dDv(&*T4KsBw zc^}}+XCl@__7L0S8h%g^W8~wd*3;78>aQ|5j!E6q{2JD>GOJ^ng z8;H8du9aP;sj&&8d+(icFfcmJ{Gp(CYoh7Vv}RGu!tt|Ww54ldvg~^urk)jjKbOg1 z2Os|j^J1yMH4a0KpO#J+?S*gAGW zK}%#BK+xILlP9cGqBYkY-04icwy^aI^~w+=vR~^Z1f*249|MjyYeH#CAjSe<)$^J--HS>L%purj~Zld*^Jhv+qHPdxf#~ zHj6!&T@&5XpAmCrrW%iBk{9SGSYozI2MECK0BQPs?=x4#Q9{t5#{aa;@=$tRYE?~m zoZS~P@Ezg^v?iR#FX6^dPfMd;{9kHx*e*RzonlQl^=O%zTFbO~ih&>94K^K*cgCZ{ z+Le)3Xl%-oj<`qQD|}%+GsW0aG_qf8|I;%0a$bqGzPaQiY{>7|`@PT17gbz)Vpu1r z@xQ1WKcOzQx+a`!Y9O;kw|tJYyp5JW4y&=QJ#V0*qE?QZMx%f>x0RW?$83xy?F{U770`?0o>HNA#lI3s#Zh58nu zs_0d*2PA z8M0TcgzdnTB~4wTzt-#g6?-geTvxPcpqR~FeucUX`~3>MXg^OmVKbAya*K2W8h}!U)xP;1A_Q45n|s`S4voc#$a0=5T~iJ4b!64X!Uk z{m08AjKEVJ%)T!5TatEAfdY>Bl27z_g~}AMjBr;K>KeLOTLO>pOCt7&cE!1+Rg%;e z*JMOWu>^seZGgXHV;H$MLEnwKkwdS_j2jFsi+px+V#t;gO?J_#qPQN@xu4uEC?| zq{;`6#?)e{xSY0v?5OkgFje@f=Axs5_gf^}6CkYe1ewjJcZoxB} zo)?8rv{^@C^%8>fjJf0SrWW@DK9v=yJ?JY5x=TV6%j!-<-DP#3M4e@I16F#j@M11I z2TwAB7ue~40bOGJ@MVHz8uw!kTR3hgVxDy6vt!iUk;KsjhiqPS-OX%CEo z>B3co+D{9~SbfGbR#r+opx7B_iZR;}79lc1P!yY_oQHI_(@Q?;tPS6^{7??+s($!& zkixr@@8W1!GTqStbMl2_AKFq)QEj$zI-4^5E@{{1nZTG*RfvAhQQsJ;nb~E&8C@u{ zuC-~?0nqT>htT@Y$?o29`I`Wx1_a#8=HPflQOmOYCp;CQcmyKvI zpdDx$RzhgZK!c1g2ha^GF_bw_urMJw2?6aIl5z)8zxsxJQ^l$C%t}=$VR|at#?P^F zDS(LdE7fmL5o^B2ZW96&+hVf+?p&DfqK7z|uCAx1Rn$uasIf^e(?hRcS^T<#lSLVN z@?nf$YdnMGhc`N;L&a{61hYQHN08%@`00`3`cf0Ty#)ewPX4c@B?YyPM>+bNo<+6l1E}OyVSHs6d$M9mqjG&? zFDFv*BD9N7WSd@qFrg;M@oP_4f#}27Qx-(mMC<6ZA`Yu&=-)K`Yv-(kI`f%!<^YUM z+1iTLEjpTvMA5eLiPg_GP(V!}ghwT@8^W3*4mR8Ob}Xy9 z+m&tg(q(edR%5+esuP;9Yw{Qfd#MNNfRp(r$#^{^s(8J+BSqbIy+C^DRk~WY2HW`)>M2+j zv!Ow^K%7|xh~?^)rFi5Le#59g&hC7*IfVoc(`l~g4m($e^;>j|8PAx0w0o|sjL+pB zPP2pq@@qYnbdh-)`B(GdO|x-qBJRY-sdL5doQS2q8_dqz+S2lGa&zmu|0cJ4D=q>c zCS0%hHT}_M&V{5E!(-FxIb`kME7UiK7Xt)Q2xZSB#F$w@OX9ePpDzbLz49kF147q@RRbUkCw`uQFA0k$nDo) z*034!euFElKVqJ!b4RkEvkP7Re!LBIbI*Vy^ilPSz8)m}I0c|a(F5eC`Z!^4Hb@bW z-0|QnM>(Y8ko`|UtC55D_PLZ{I!QaO(Jf6oL+_8WTVbB!O-xi;EQA>Ne2zae=4okn z@N$jEZsXX{A2YN6?w#q%-iwP)JMJ9gxa+OC*~@B--fcC;(6->~I&qe9tpBaHw{FVL zc!!JD-oeQlR!kVWWy?A-_fLJz2R2{uR%W*8$!?TmY7LFB8P+zVM_+tq9B@Qu#$s*w zAsha-Bbr7&X@k2Zb!gXHw`6C?pI*Pk-93nmAA%&cFT>$D{O*d5UH>#0S|(>Nx{@B{ zclbKuT(|e&AMcMVfGstn=&*$_Bs~iObCjvONr73>Ub+9t zUF*AsMYQDCjJD=L*2SE+)ft<7&d}<{O=($4-#srlfxv|l7(?J90-@{7l1%uJ1!kGp z&Rrt&dkJJ!{WGgVY(b2|b<8R9z;(zG6ZIG(Z!@N(OYsd*T=nJM5_UP{-ips*Pq zsYkz04#^MW8&0qr>!+>+dFlHVa2l_#1QLMy5rFuWK)?MrS={XOb-A_O!WyhYhoni| zF>#90E$6TnfvMsc#oCY&DZ-7wr zoo+78@GqW(2fegy=Ry3;>oMzeyQosHdA-~8w3A1446jH03q0%E%a)WQ+edZ=3nos{ zxnz`U7HlskT}3EGXduq^*rljDex<($1uRZ^jaG#ztw4iZo9C^0Jk!P!oJeMGgH|o0`p$j>aK83+hEs`~}mIas_bXE)J zR7Ee;AM2=d?ecN6r26am)NTo-8M_{knlb^;N7yZhr?wJMSLvE?j-<{JZjmJF+uy^K zQszs27G|dPp5O#~l=MAO9(LjMgHb<|v2ll-l~E^NBh{6R97H!8PjC9-uS&JhO^+12 zYGo2(s8A4IM3-cW%L_?>A5q~)sIakTrd;ck!m-O2k;|;qOfIv^bj0RVzMfNg|9DPi z7@IO#z||TUEbjaYw`lahA5=^!ZXBP>tQXtH`i#88joVxew6bNzk(L#f;7x(xO#$mM zt{bf_N&ZEyElFxnw(B9cJu=?r=b!;HI`+BW_y|oRpr>~#0h!+3<`2j^zdF;~{1*c1 z?SDtA`H&2_x9Lf;PJlp0_;(f^Nl=%eJkhrqB&iTJh#^LfMvUq4 zVkg9l9TO`yG?pT9+`WKLRE;iE1~RxtRp~

a5TYrHX`!Vd|6YfP9$RaKmMU&y7o z`BT03PN0g+niUziaIC$*8cMR*?NW2^LsW~M@ks^}x^OMWvzT4}saxLaJE}pvN*Chh zL*ucnaj<)XxfZ66!OhJZd1$Q#1akV#9 zm&V*Vmx0JT+)$6yYAnOA{sYXfs%ogW9HGr-%5-9<&J)a9cbl<|G`CtCGb_}4^p+m4 z3f1@nMtY0bZIpR#_9;iqN;=z@wYce9_Arrp{TB8M-2FE;J;SrL)<< ztfzxuH&hN8xbqcX7osUfUbIwDFoH*Ydp3ZWzM07$a4w&clI$ z7J_-3ALA3;n~Hn;Od2NJ5RsPYwI{1w?IERRhsEnWj-xh5)^f-%(_egI%QyVRL))s& zWOJ*F>xRuODJQg}zzUanOX3M66b*PkrJA8RBrv-Aon16&z)=vIq3zcqH=F>O1# z75g#NQm*{QwFWp+lv!wWf*nKtSJp+Um#@?ulkmlC=rH69uEFEYsr(DJuE5I!47BXh zMle~fNtgTYw$27_t<8kuT2~_TQT4L%DfQThJxO+1ONVT%9_Aa6__b)_Z@G&Zv@Z4d z=Wls@Wp!(ZjP_@UUsdk!?C~K7aWk91rQa^+ZUh3U_--}RCYheG&R3ms9uHoqU$}<3 zk4uwe12ri8QUg~oo{T0(HhY}kcFSU8hSDmQlpz5vS8}@(cu*3YS`wOtoTAtru-0d& z2sl&4K72z)rCRoPB-bAnyY)Z^#HE&`sm?e4s3LWl1=t@1R75*ex?M83V})!5h?dBj5cd zmeW^9AddiH&u%BLRB!7|fXCRH=JGa&iQ|$hZ&L#S-7jB_elNc|Bb2WO(C=v3)im z?pQQQ{R#Fy*8dy?9Ut#~3otI)?)a(AlTxUx-}c08oTDe|d9n5UGS%?_^YRfp1l&Z&r)E$pVhV>JdS(!;gVrMZU&Ot_ET#K-TWHvhb|MMC_RQrhKI( znSyTqP+D*$8`-Te9X|hBS<^ zgms4}Q9FT{r5Q}Kyn*M14}4iTiTo#pi3wepKRGz1@#>3ZLZzDtdSSr1&Dep$Ec}Li zhk^$dxN3qI;^)rWbSJO*q0CTyo#=v~f*$oUqs~-|*5%*s2~CV;V6QBd`L|~Vm*h_l zU1@yV=Ug{4|J!LBE-@Em(w)$pDc+q$IBL|~xt*Dh{FdPBYfn~mstt$Wj*3$M2C*j= zj9}T&T%7E}E1^i>(V|F+8z&RNYnW$drOUrNm=;+eljY#Of|sNaEmHPC3f39}$?o9a z8MXlj!f%;2e;IISaANSV&Ru6Na;@0L;mpPvwGgBwGsZ)v8AG>%1w%!_n~kBG(0RJr z!hF&cVL#v2ylfhWiif@)yucVL4BAQTY~!ic!yiO*<4qp*`2`dfJ@-o@_UVN#L)XGM zK9f)@+Ime`I5DVf`jhPWJli*05te754k#%FE55^qP{K3SX@2OcDg&e z*R`po7&4t$cWXfHLCUAcYobKApWfSWw6~#sZHv3Jz{!PkeK(R5E-U^_-!zQt;EED5 zlgP|1jB_*Sm~A_Zl6SG#+(0`nTn^jcX6D=nq{YiHj4>1uk-Dw zV~ndE-n(`Sp4^%S85zd5%3`_6{-n zhTI#js>_WOTgzMB4JT_b3^`dGN@~d{iGFCV==Y<&OOuHFP)b9`)h!v(F{j&GAbY1V zjh)(3tmh-nI87Eh-OAFMkCdr4aCOQcTz)CyG1(IYenbeIX$-Y<; zQWS?*kgB0Qw`IH_$WTLluhvu^5lyA2bZtSW5CCRljN6m>d=tbQbNkr56Srt`8FrR( z{gPR>!j0A_S?)jEI7aP4PRHEJgk!<2(C+2~+Y-$#qiqbgA284Uhs5f6_82p+?;XKq zVb!ys)3~%ezy%_Kyf!2Ma{AWU5l{ypJLH5PmLe`Bnsd4NaVWXdd3j`gLi2&G>2i7# zH0duMg_6l4;>ncHcRTx;p>pd&irJCVi4)V>r{Jp@(pqX^vv0x34T<^nX+dXaauK2n zbAhK}PHymW2J`yO$%AjpFx9PI?tguY+uZ$w!BY-q>e$h*PDh1nAgKl0(}e0^T0?$r z$Xf?NNPzr?s5*swUI|4HSIR&2)T1$3!10-9+4CV_PLmC_2iMSCvvRBqvQ{Qqu3Yuc zS`PqeLHr(ggxyK5swNi9HywFds&baU{k6QE(ESS%2_y^Hn+|2fV~O46zNGj_UYoCoIY3jQ_mRc_7TJRqsq1WOl?!w`MsX6RQ zCX+9h_u$4mjoM$WQK7x2%axl8QNcN5oR*60cN>QoDwHhfRm`EP;%K6?pSgRzKxGq- z%b+S7IjS_l5~5P9rN)~tma>w~p}}{e?!iO;A&%_~aYkYlUorD5)F&?plBBI{s2|dE zaHi@+b60M|2HKxVRGXsk?0W12(+e z9yqS08Z~gBgbW#iFD8W@Qzj^mOU&P489QpMn6n5HWvpbN{zWq>8Tg5n`gS$~bZ1w;Cx&nX8W9BHCaQOkW>NjWF?Y<4zMnC3V=b7d_SjJe>?o5cmWdLnVTZ7}~7709&>U~sU z{{8xft8;^&#=dg5%C*r6*S97wC~lDy1JyzfR*KQckQj}OR42|6*<4mk9bG13eVYsi z&yzj1YQdgUmPaHtXbp!&IdTq8Mgrwi=C-QPM>_HZvPKR`YzjG9t{}Co<44olVvd@RZ|!bPE~arGSI;RL zKD%jf>~DQ=B;%dlfjx!aKI>L`!8cf>$->B1sC?v$1%Zfbenmiu`U!-tMqF7@i#eQl z5le7jYNir3Hi|eYk-Kl?pZXSrF-1eGc9R!0e_46TP2W%|EK+(?739R9Ta~jL4yCl z-$^%hA%!Hq{}AC}{<3+A`zZNReC&NrUdh*yyR&fiHa?@biZz+Vf0_w)A< ze~<9@IDgOc$JqRT;O|5VGp&RC9^vmee~!yWjm`h{ck+M4-w6^V)-G{u$YG}y9f6p; z4%~Eja#m-H#w$F-R52Eco74KSGeBsC1PTH83EL_|#879f0^f$q6P?RuEa1{b8B^yH zF64^;(pwR;JL)sTBABCC?=zl4k6Q%+qOpUgX6~;!bkiu8EwNGdNJL^}OrAk)>u2OO4qFnvQL8+aBb%>^#jZzOX zUPjy516&~XtY+f_0^I4zkQKgPm>09X?*Oo~tX<&@U($_G#wHqi`4?<&54;f*O2ut& zhg(*B)>(8K+uL-t1%aJyx+iA1!<|K+jWWYsI#lOe!e(fgD>|QioI<4TY5}50&SJw8 zq+^ZiZMuUFh}BPDyUHP&&_t;sQn#VtbQuBI_-Lkg=h7iSC)?k3kLx+R3A4Xte9_1dky~h_1>J5c?al1qff{dcKYzck@xJ-WwC+#_&%M*Sy)U*q zyO6qb!$`MVA@S$m+hSFlO1wJ&G0)w+V?tS4+=kDl>G@cF1UhD5qa5EbY0Y6M=E%JQETUWxI z6fK%WJ}^u{GUb-0*@De)i)Y43YRz}_W|nR4#s?YJPHkB#a)u3P5`9S5n)hyv-9b_y z@`W+#YWd=#=)Uqubpjhgvx5|qThGO#Fe2>(i?|#k_vRK~!FA1hxAjq4ryPmfG@;>| z*;`Vh&Q3>eNyD7{;NWSl$-N?!WG!$-CzPv)$+Lj%l-lu$;F{df8nZ<-j?Xx=i?WqU zY|UwLr1X&L`yWCJ4h8ZKm-DYeuvMnL+6)(qOp!2p`FmuKiV@v$W6zAoouTo@N$!3# zP9`Eoa7D**q;3e0<<2_i@`n0jdKcQOB{gzOkJ%wRx|>nk*_7eGtILXiP?x`TrzvDD2#< z!br{Qho~=U#|_osXg@9mGmf9NN0v*meV7v*sgxZTdr)>xOaf8c_6D%=z$DBQ!NKP6 zV~^E5ro4#m%+QhWwd}Eq-VHmwFQekVmcsrLA#1&VDcExpwGYT1Ed`4>D{^y4QSEhEwrJZt>Zch1vH?A8)aoCFLmExJJ;bg)3^oEmJ>yy3z z+4K7Q9p>)50}V%~zOLw%yaSp}pld4ffKS$-HLYDp#?O0)`-g+sh?r8v+(vztDYA5~ zaJv-Ur+vrTET%D%vdKsu#Mpg|dW$spVog##I&s`ZgK>P}nMn=lFUN)UShGhP@P~_D zFbk8#zO*nA`%;b=g2td|MdSO{HR3t0-h*FL?5OGy*!Ch%Z~Qa?@o{Ln`LWrNe@k?LVlS z`dIa}H=I4~pC)0P5nj5d@#s`0&gP`+jJ>^uIUk|BF<*VXx6Uc{-=UuB|H)>lmjY?CQ7Mkr3orHp%QRROA{w;*esRl9{5Y;fy%_Kfk@sh9h}zJn*;{xuU);s!9;06?vHSE1+CS&=sReQ^YzHYn(sZ{eA1i4$SBZwF<`ss> z)4~vvyiJB<)52)w*Z8VUo{5c?f*>?jfn$4uM^IQ^qNf}Tir60^xX0>NlX{iU@ zo<7Shs8mYJ4}Wb*@L(doBk1h!C@ZJ793wVK85@&)dLK7FxLh5fICiG@dR|I!@e@5% zVUIEUlH5WawO7i~nGJ0`L{dR{$^M229T!inW;SMGd#N7VByC0wgc?`dSPx6pS)Vc)djZ}W7sFzCpfqmHmm>kHk}S)sVML6n=i9D0N#gYxG1I^5Ix zrI+AUY)%`UUXps+JaG0&N5qa$8dVCVx9Es{cQogeMx)y3hoK|#^(Ih_`O4iI(@Ss6 z;+c-*9gZzVThfs8PO6q1n!2lSfHX&&UA#51_vDn@9CS!NY~rUD3WHF3g=3`+4=0*v zL)Cz-Xu!s<4VYYLv|f3j*@uj#+h;T#k)Tx? zCnAqxj-en0s&7ak3!2i6DJC6+u2It0=o|JOzpHqTZks5XshgCKk8J3#i73B$++A?) z*K}SL*tLZAyvhQV5>hh9#ZiufZ8joDktf1jRW8iK&T{ro8@@_9aOy1+Jy?F7FOQeO z?vUfIyUEd!oGU%lLz-5W3v2hDko%O?r2eCC?f>ib?LOM+f0w?^qeOwjj5ZIuR`C7pNqbg0{?H(w|ZHAt#1n`;_uP7on9!{w{u+9xAL~sBDwns z%jlBJ*PTMR!^w1P-#mFvqrXyq zWPzMcJ5|VeA2|WW&zi1yp?XT0HOW7vtV)tkN|_I*F3PIfO`*jnU#K3MTI%cn{L`$^ z_>T3cFdotN+11PYNzW;!Q3H#a)SGdu=saE0)55Q;c#JCE=D%)3YEc_bG=}q&hDDqc zf1cIPESZFbMt?`2_92CPt9TG9XQ4JR1&PG>Hl0L)=KI6 z&wmI{QuCibUam&0IQ0_;CR9=Ip2P9yl@2>O_n2Fk=SYcFQciaaSy*>Kv0HzHLWtz! zY4+u51iJXEqzCFrxAC7ZWuVyp^QU4t6~-TxL0TB~T*>`$T@vDT+_2>@R1cR#ldh(P zE$5Pypt&=9evhtRqPH{qAMwKkrVADdtmhB9c>4X<;i=`+7~Oa;gD-&ZcZaQ(E+<+=J&7?^AVzyi&K_ zrYSQ|eaAX&iq|POJoO4LD>kWeCY7d~?vzsI?XU027JsZ7`F*Nayt2m_Yf_W+P<~%} zg)^76;o<%Zo*}^mdat+FL<1jS{g93-V0$@dwI<9 zxRtvw?5ZPT`Oql=p`+3wmUE;sV!3?w;yD5i4Qyoh2@i#mu5pc%-||(R!pNcn9P@CD z$mC%x?~A!#J>m#kX0j8_ZZg>e9AQ~vYh!Pyis=7RThf|$YXzUn@LyCNdv+lzA+;z< zzRdg!-FUW7c1V<`^Q;{SXtapl-_ z*OT69V|JX9+c|!m*50iD)vz6OueqdPudBbSQ$00#6K})HkD7<=JavWM7|Th8I{mM5 z$kZ9IN{>hQnc^Pxl2%UfaBSp0c5(WMg0$p}wB#&~iHuISZ%XglKRpyBxYV)Be~m^* z=2zDp$yxrNagUT`;$??1^Mjtc!EI7 z!BfSr82pap3`f{vK9v$Olnlvj!R@*Hrrt8gh{KNLee*WE=OU01D`NSQY!D}-JIl>< zp5ws!(~V5Iz8f4PR_KG}Z2DE2@O8aD=T`|6`-wzwAEkd+l~ahW>m3 zaqP42oT4o_L=t5$BV(#~~XA+FN^n$do&1n(aV$D7nd^yXWhz~~G}z5@ z4usp>EVIG)U`&XcWhOWXz5)$G-7FUHGj<+u&pWe_d@H73|1~2lJXUP@@H!c1P51k+ z;g_Aa>IDpKS~4)x)|%wH?dp6Ckp zo*W)su!UTDBzyZWkZQ{KFzEwXM&4_3?zF1ey0EYN!Us&TTl$(gR<-`rP9FZs2wWhq zO|c&M5=xPeA4PZvZLo9FKdIVBc!k)#CavWVUGad})Z~R)QVlt+!M7SXR@-sXCb>|R z;LUM1p0opJdSCODI(+18wmj|Rw1~A^!j^eZ!yvll*WtL$tz=nHv6Xz5>?p4p6RgX`lt35 zM^N$-|L0}xf-Ot*Wznf#;$ntiZzrrsSA)qb?KM%L{&WtdD^H(lCV^6uGc|ji0fx3D zSh==bE!y(&w6K))5tq{JE7I(l=&Bj%_QG^?|MVyL-XSsnSW2}EO}E**VD zSEhFj4B{h?nU2i~W_}6Qqsx{4XiWS3v_3a@=&Ceku0xM0AC)>MdefN_+VgXVE-Qx} zO_d@FbO>dj0F3RIo+L9z@=AH>%U&{Xi>^e&a?$uG(OglYmmGPfT*rRYsP6{-QwF)B zL^<`WD2lxAL(h|5(T7 zSlA}ukf;yu1qgDB64-z!Ni&8IsgyR*1Z zE&sG@SJwmO+UwE(3yl8n$5~3v&gs*9EoqfwFJC?{|&jUWbjk^j;&= z!j>@U`>#Qvc=>;p?+B$wXQcPC1eMa6%gU$!jI`O#>EDf&f+K8+d>gLFeF$+$fvNdx z=5Q8md{eDYxXjvN%Q&g}s&rm^sp`4(H-G(CxjBcPHfAkbRBiPR?AU9{H9D}qTc!Hv zA>Z>nvn8lq@4ER!ag12Y+e4)D%ww_aYCH9N-jg+CV~zQ_OuCf+g0E3_bOiZe0Zvcn(npUK1ZdK7DgYN;~2r>jjm_XhsU4F$A&&K=2NRHVI?dx1~|rC zV%FptY$F*D#Vjrge0T3YcROO4=&una_5-XgWHeCx$Nc9<&?wXR_fB&6-Ew8UImx4{W)=_Ltg5Q9gt@Ywx2>wmH=fsVl2yC9Uc;Bbn;pBq z;(V*tbZ=6lp#4d8f(|742JN-itg1zEr|DN!3xSAemEUq_7>;ea?eWL>b_VBRlLB;h zC&D&+^{O(T@UB%JpFyb_qTA)H&>6qC4kq7Vh~Mb4m7hX4O|d+ZWll1sZuQRc7BXj9 zgxs^NLT;Qi@SL|*$~KIj4K8u)|4QR@wyGUPY=KIlTI5_Nl}hrXs5J;r1&V!qcNI%q zYB%qM_;B^Ay_%%POGA39?yTf;ztlf;y+P$;=3tB;>o&*LtNWXtXN#vK=)C{@52@b6 zMY6gfJRia+JvgnDYOp9O?Q%uc;&HteJ5?=qs#@%H*K4s;)ncdA!hcP^V_VbhNv+jS zW+XL)Rl&F0>&)A!7rYuwRuplkUif2r;Vo1VUn)RCdIey28i6KUAf?A?){HYgi_)ap zCmWf(P5z&v3d1gS*~*vtMcf}rGP=Y+(q$(?|41){$epA_?jK3chUgvnUrFmD@75H; z%7un-h%V8+6kEw#B&&+8%X~^mb7}R*+H6c}&@Pubm*3pns0XI_#d>LF%7K4W z6}=+AuO92WZ1&yx5n^`=Pd4w0`R!xl{6_gebqkTfX-dsA%jkr?Wo*J08JV!vIV7>V zKkV4OPC9|J-|tUqiu|R4)bQLd!;@hl!;{V=!;?Yb*gfx<992)^2T`TR*gg5oCIfuz z2OC1jjIU7hNf%x~AHjR@ z7RN<75r87Mmpb?WgD6+WPMKS-_?DP%`(8ugZqWV2gP$6gOMCPS8~C(pO*sVfGaJQ?z6nb=&HX9kxzRKtJzXZUUI z`lwx)erG8U6LpdDyTQY}?d=`I%no121(BC!{V|KoZ#UMT4yG)586GJ+h5W_`kR>{KG<^+TCFcYEl|As#Z`P+^k}rUgj>hH+>pHm$D@ z2M2j;zfj(je{K@Dy!zLo+~)A1DetV1q(P~@S4MMsGbvQwb@u;sgm-a!j(*AO+}xAq zCi%__yhj)*bJRtD_dd0`9wRlzJ4eDh--|BxNiEFb(;(tiG>(k!ID*KpWkeQr9mLTj z9$6etU2i#6_SLQ1*>i&VWYM9OOsm72d8haBa|}AuC9kM{0z!+Tz^8J#gf94x`F~9U zZ9_e^K+q373=+T#;63mq*bMf8W1t|+Q_BOT*uDFBY5|}%2mz5`97q5Q!7{KC>;T8X z1>oJ+Q>za;f?yB}W`P$$7FY)gzy;vf&r@pxg28AI59Wi#;2p3WtOnb_5pW53Qnosv z1?UX=fg#{g5DSvPbKn*5Ay^I0fXe1bzGmrkP_wi=q*-j2Wd2g-lgparx~H4vP5ceN zyYaD)w>>ESOv2g>(5i>0)~dP6$GFBUp(m2TwG6Hu?%`?qOQvSo`hjK{7d^om9Tzua ze00*}8Pkd1)6-JQHKJ(o*as0t!i|_db^44ar(0uYjgN^}K{ff30dqvTVY1S!eAvM7 zcu2cn>&U-At*YjuwbQKHbjp|n$LKb@Hj#I#tXiTLuSIL)@wIBPgh+s+`8!dwYt!_w zNraI!lrhrn@!v>Sa-OM8CiNNEjMP=yD&0<$*eGwbHcl^3lGaMQk5WydT#4{FN+l^- zDRs0K$G;eDLU{>|bnY)t=l9n;i98ZWEt>SKAR2i^J5x5&?OvX)oifB|vyfj5B}vjt zVWn1fN|Zz`?@TR@x{TMRl5Pxnhy)VK%Pf*L(ywT*yQe>i_|fF~Tj^A^kEA2A6ggQb z)eQd5&`YgkC~c95kGejAP|`-yBPv?mC|_r-YkB>Dzg)+Xx{{ShrGqY4k({`sL`LcE zmS4B>{Nj*K5#$sRk z=Ws$Ab+}tP6=SfXKX=hOmCHL6Dat6BM&DEIEYRUF`sa@;Q zxx5~R41QaWsxdEpRO%u*D-AnMFWa4c#*lfJ@_gWqjVPpZ`zD+e&SuSEy1; zd&{V^>Mb*svc=J675zf`LL&7LO)EVimcPbqVAM?Y5<^bybU8`io2<8oX!us>qVc#A z^!er2TBJgr(u002Dbbrr#I}=)=vC=Y>TgBNexx5qYekdqboy%LF;<~Z<+{jUQWYsk z@15?fUxoHm^WQ{0wRU<4smV;zPr%O@?-et4KW!+vha%k}g!}c}BfV&dHsG$;hSR@> z($9w7<*HE+slAkPGCfTCU_}mA89w^jsN+;O3%AKy37<-@0*8-tv&ecP6PCqJ5zJ`^ zEo8i#rH1&!e6B<*g87)O7Ba!jA`6=paD7;dVNVr`hdH&c6~gkdptiAYmPX?; zP~-HnBrpaIBloI&Za_D3zsmCu-SCOXa(g;#`u`TM7D1A9xLN3 zPU}KzSA^sjD&rDEWqD4LV(*_26C*qzCh6hmIJ<5iX4nT#pPV!~I&Sh)F?|!TjgO8S z7BgPf>S43Az6mkWNioA>rbWk3nvoC_Hj6Lx5pnn={3i@ciXK08fIT`PnjayIafVfw z;%Cf=8$NkjOal3rhj;ND89h0v|BQr6f%|exF^)77wZ3sP5@RY|mAa_%R9ujB#Q%;w zoSv1^(0%*I*%K!@B{-7W#`Lkr#>ONdP2_}-22UQB5S=i4?Rg`X5{4Q6J|Uq?!nQC zPQS<*@%DHZcj;Hq#bTn#qQqd&kFSUOxoxH{Ylt^s$2 zYr-LLEqE|o8y*GA&+tuv1K@bL9y|xG4=;opz)RqUa3*{Yyd1t4&W0Pon_w%P4>yJn z!%g5KxG8)IZU$@5(jQ-zC{%XSAqM%K5!)L2aks9 z!;|13I0c>xFM{1rXiH%;oCSNqE8!||F6;yEfc@YCxITOw4uVTyH&J-c5g+!0z2E@2 z3fv6#fjh!}a4)z%91aJ;QLr0|F&?f0&w+j5g|HvI1g;Nf!a;C0?1rMugR8*%U>~>; zt`DDqgJARXgtO9aa241J`@n7CAUII2H=`VK9Ud;%;V8Kd$I10plt-?^3*|bzMEu)Q z9`T2li$9z#{v8>Y;t%JGKYUpHyD~1tAHF31FrS{ZxCJ6F*ar>}cQ526ZkW>r7Pk=O zC2lxexF6*d4yT;LgDIzQB;yk{&tZJR_2DJ3=)yi^B|4lUYD@8Z0v^TO1Zi2g3*eRT z_i!%!H+Tn}2^YYuceUg2F1Q5#4!!~Jf%#OINjiW`5K<1%oMhodO3%=OD~BLZy&oD8pp*T9pw?hfz69R{c1 zHp7LuWv)2`KMya&-vj2`V-`fHuLWdnV1B{P@*Zq~UxpjPGB>q?{|-U=^*Ux72=FX3hIH}DF0CA=2i59h)8 z@ILqfxDd{T&%k@(Eb^-Ym*Ud>nodE+m``&=TAa z!Ls&h2j9S*0Lxmd6YQO?o(XiMK0R^Q!u_mVCw_HU)<`zkihmm15grE18m%+j3-@ez zA@1gIIPQsX3hrj`aNMzQ6#OEbjei?B4)-*87Mu#p+N?J`ANO-`AnqV|G4Ahu?r@Ox}7Q)woN8=s^2jH#?Ps05OENjtTa1!nX za0>hvco94k&VZM~t%z3-UWWTII39Nscm?hW@LG5syaV0{ABI=JXW(r32D}~idx;-1 zf;$qwKHL!ZXjpXnPjD;T8{iQ5Yj_m=Asi3?2@WJ)19&0sH{m7l7`PPwE^sF9r(jt_ zhrr8mzW`ft2f}M{r@*an_kiF4;la2k!=vCC@C4WdC&9ZT@*|0#jV1{^3+L;JV_NJ`vHojw`=;7E5%8=dx|sNsXX%$Gu@f4Jckn_&-fLq z@bbJ(j6A;-BRhX$5_uw|_z5RVuS7nCP^`kq?tz%e)JTlo8Bca6#Uz&3OXU~GGg>k7 z#9B@A_&lAN=E0>G9KF#Sr(OEx{w@56J{6r$M_o8a5`bIn2 zKNNrIAMLb0JZV;aq#aK@q-UspGF%hgB7H>q%%j+)pS08ZX%Fc37~LL*UHVHqQh7+X zPsc7#Peh)RvG?a`w(2utmoUNGDsNdYa$=1 zW1{v1_E0^YL?kHwQeWwJ?I>BeZkM>j^|;diBwvXueNf8Z54-e3k%^MI)V+@;dRO|R zq$%==(aRa8r!W1o9l1V?zw}M9iyWkXN}5tm>7(rkF$BBxQz>TzcIm5Pf0Vz2aV0tX zhV)&deWm}lBeaxLuD2t!lx>z?FJ*s953lUf&y6tB*QKpR4$|MHO+}v4=cQ~?o@siS zBlI%MK9|uhG9Dyfsk@8`X-DZ-GA_g}{ZPh+*d=`#A0oHPb&>I6wB0zp{3>4=KSmj3 z3>kJAM-_I}_oSRMo(%tKdRrLfmv&V4M3=ZS&ZPVjcf4Na0kovXD3W$mV@HiWBev8> z#-Oya)Y=$}l8UshMh{c9?4wIj`mxAJ$$gqG(;>QyM5jxt4-&`F<5CXU#ZWq3`jC`Q zl}U8A~9bEHM4Bf=vA$4#8IPCmAQ}J4u&jbtf>As zNH4z%Gu+wdq%5I&JE$;&bv@oU^Q z7k|;rhQDZ8!>(pLmHupJnPnbPT57zDeo{W_ZyeW+xl-1P?I@X~sn$qpC9UQf*@yKwL|+?#Fe$SoB@!PpISSO*X1MmwnI8nU$u^!!2DzAZ;5Z%$Lq3HIzav!{&F6s z!Y(UBwXSQ2eAMbrt;1xG+88_0%r1s~oL&yq|I{6UVV5!~yDFcuPuBBR_9=QBDEoAm zbmH~0Du1<#RdzWMW2CA2kn(>@Z+q1*rG+GnlB4twWtY<*6?RwuitrQk{-naoNk1dJ z_!#zyx=dA=NqU~o7<)*=$iSi{MAOR>wEN!?YcwUoMpP&!!MwJ5u4FT*ZlPubTKP}YWun$4 zDqpo8Qhisgzvax0v2HW`MMq1YHrB-I4s4QMe)(&xHRTM1vBp(*TXJfl9rckqsx^k{ z$I32$jdlDK*5tDGl5sLomycQtPSyLBT9c{r7;7ozk~p&7oT}GZtr@54`bMph)m@xg zJF7c8wSH3lRjql|ots+gsZ`ahpzfgLzDnvK<6Es)WW*cxX?h#0wXOU$?m5)mthyIb zZKmw%Zda|Vj4&c2H6GMjRpq7bSJd6Gx?hpA9mc(j_*ASD<@~J}W4)q!e}!B1T;pCx z-BGK19d%c&*0U;Kwf<54PuW#Dm0kYId?4#|bqB8QSL7s=_^Wx_xR*EFDwet~YaQ3? z;�*GquWHg%{~mxaHnUPQl1EqhHF2F$a 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 z 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�e)Qd{3!+aC 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 G;Qs;FhMcMZ literal 0 HcmV?d00001 diff --git a/ext_libs/ext_libs.vcxproj b/ext_libs/ext_libs.vcxproj index 75fbcd3e..3ce6da42 100644 --- a/ext_libs/ext_libs.vcxproj +++ b/ext_libs/ext_libs.vcxproj @@ -50,6 +50,14 @@ + + Building library stub + lib /def:at3plusdecoder.def /machine:x86 + at3plusdecoder.lib;at3plusdecoder.exp;%(Outputs) + Building library stub + lib /def:at3plusdecoder.def /machine:x86 + at3plusdecoder.lib;at3plusdecoder.exp;%(Outputs) + Building library stub lib /def:libmpg123-0.def /machine:x86 diff --git a/fb2k/foo_input_vgmstream.vcxproj b/fb2k/foo_input_vgmstream.vcxproj index 98cb0454..d724555e 100644 --- a/fb2k/foo_input_vgmstream.vcxproj +++ b/fb2k/foo_input_vgmstream.vcxproj @@ -68,7 +68,7 @@ Disabled ../ext_includes;..\..\foobar\foobar2000\SDK;..\..\foobar\foobar2000\helpers;..\..\foobar\foobar2000\ATLHelpers;..\..\foobar\foobar2000\shared;../../qaac/mp4v2/include;../../fdk-aac/libSYS/include;../../fdk-aac/libAACdec/include;%(AdditionalIncludeDirectories) - WIN32;VGM_USE_G7221;VGM_USE_MP4V2;VGM_USE_FDKAAC;_DEBUG;_WINDOWS;_USRDLL;IN_VGMSTREAM_EXPORTS;%(PreprocessorDefinitions) + WIN32;VGM_USE_G7221;VGM_USE_MP4V2;VGM_USE_FDKAAC;VGM_USE_MAIATRAC3PLUS;_DEBUG;_WINDOWS;_USRDLL;IN_VGMSTREAM_EXPORTS;%(PreprocessorDefinitions) true EnableFastChecks MultiThreadedDebug @@ -78,7 +78,7 @@ EditAndContinue - ../ext_libs/libg7221_decode.lib;../ext_libs/libvorbis.lib;../ext_libs/libmpg123-0.lib;%(AdditionalDependencies) + ../ext_libs/libvorbis.lib;../ext_libs/libmpg123-0.lib;../ext_libs/libg7221_decode.lib;../ext_libs/at3plusdecoder.lib;%(AdditionalDependencies) %(AdditionalLibraryDirectories) %(DelayLoadDLLs) true @@ -93,7 +93,7 @@ ../ext_includes;..\..\foobar\foobar2000\SDK;..\..\foobar\foobar2000\helpers;..\..\foobar\foobar2000\ATLHelpers;..\..\foobar\foobar2000\shared;../../qaac/mp4v2/include;../../fdk-aac/libSYS/include;../../fdk-aac/libAACdec/include;%(AdditionalIncludeDirectories) - WIN32;VGM_USE_G7221;VGM_USE_MP4V2;VGM_USE_FDKAAC;NDEBUG;_WINDOWS;_USRDLL;IN_VGMSTREAM_EXPORTS;%(PreprocessorDefinitions) + WIN32;VGM_USE_G7221;VGM_USE_MP4V2;VGM_USE_FDKAAC;VGM_USE_MAIATRAC3PLUS;NDEBUG;_WINDOWS;_USRDLL;IN_VGMSTREAM_EXPORTS;%(PreprocessorDefinitions) MultiThreaded @@ -103,7 +103,7 @@ NoExtensions - ../ext_libs/libvorbis.lib;../ext_libs/libmpg123-0.lib;../ext_libs/libg7221_decode.lib;%(AdditionalDependencies) + ../ext_libs/libvorbis.lib;../ext_libs/libmpg123-0.lib;../ext_libs/libg7221_decode.lib;../ext_libs/at3plusdecoder.lib;%(AdditionalDependencies) %(AdditionalLibraryDirectories) %(IgnoreSpecificDefaultLibraries) %(DelayLoadDLLs) diff --git a/fb2k/in_vgmstream.cpp b/fb2k/in_vgmstream.cpp index 6f54d544..4faef338 100644 --- a/fb2k/in_vgmstream.cpp +++ b/fb2k/in_vgmstream.cpp @@ -288,6 +288,7 @@ bool input_vgmstream::g_is_our_path(const char * p_path,const char * p_extension if(!stricmp_utf8(p_extension,"ast")) return 1; if(!stricmp_utf8(p_extension,"asr")) return 1; if(!stricmp_utf8(p_extension,"ass")) return 1; + if(!stricmp_utf8(p_extension,"at3")) return 1; if(!stricmp_utf8(p_extension,"aud")) return 1; if(!stricmp_utf8(p_extension,"aus")) return 1; diff --git a/src/coding/at3_decoder.c b/src/coding/at3_decoder.c new file mode 100644 index 00000000..e4c09422 --- /dev/null +++ b/src/coding/at3_decoder.c @@ -0,0 +1,28 @@ +#include "../vgmstream.h" + +#ifdef VGM_USE_MAIATRAC3PLUS +#include "maiatrac3plus.h" +#include "coding.h" +#include "../util.h" + +void decode_at3(VGMSTREAM * vgmstream, + sample * outbuf, int channelspacing, int32_t samples_to_do, int channel) { + VGMSTREAMCHANNEL *ch = &vgmstream->ch[0]; + maiatrac3plus_codec_data *data = vgmstream->codec_data; + int i; + + if ((0 == vgmstream->samples_into_block || data->samples_discard == vgmstream->samples_into_block) && 0 == channel) + { + uint8_t code_buffer[0x8000]; + vgmstream->ch[channel].streamfile->read(ch->streamfile, code_buffer, ch->offset, vgmstream->interleave_block_size * vgmstream->channels); + Atrac3plusDecoder_decodeFrame(data->handle, code_buffer, vgmstream->interleave_block_size * vgmstream->channels, &data->channels, (void**)&data->buffer); + data->samples_discard = 0; + } + + for (i = 0; i < samples_to_do; i++) + { + outbuf[i*channelspacing] = data->buffer[(vgmstream->samples_into_block+i)*data->channels+channel]; + } +} + +#endif diff --git a/src/coding/coding.h b/src/coding/coding.h index d779ffdf..eb49785d 100644 --- a/src/coding/coding.h +++ b/src/coding/coding.h @@ -96,6 +96,11 @@ void decode_g7221(VGMSTREAM *vgmstream, sample * outbuf, int channelspacing, int32_t samples_to_do, int channel); #endif +#ifdef VGM_USE_MAIATRAC3PLUS +void decode_at3(VGMSTREAM *vgmstream, + sample * outbuf, int channelspacing, int32_t samples_to_do, int channel); +#endif + void decode_acm(ACMStream * acm, sample * outbuf, int32_t samples_to_do, int channelspacing); diff --git a/src/libvgmstream.vcxproj b/src/libvgmstream.vcxproj index 2daadc4a..60c00f7a 100644 --- a/src/libvgmstream.vcxproj +++ b/src/libvgmstream.vcxproj @@ -56,7 +56,7 @@ Disabled ../ext_includes;../../qaac/mp4v2/include;../../fdk-aac/libSYS/include;../../fdk-aac/libAACdec/include;%(AdditionalIncludeDirectories) - WIN32;VGM_USE_G7221;VGM_USE_MP4V2;VGM_USE_FDKAAC;_DEBUG;_LIB;%(PreprocessorDefinitions) + WIN32;VGM_USE_G7221;VGM_USE_MP4V2;VGM_USE_FDKAAC;VGM_USE_MAIATRAC3PLUS;_DEBUG;_LIB;%(PreprocessorDefinitions) true EnableFastChecks MultiThreadedDebug @@ -70,7 +70,7 @@ ../ext_includes;../../qaac/mp4v2/include;../../fdk-aac/libSYS/include;../../fdk-aac/libAACdec/include;%(AdditionalIncludeDirectories) - WIN32;VGM_USE_G7221;VGM_USE_MP4V2;VGM_USE_FDKAAC;NDEBUG;_LIB;%(PreprocessorDefinitions) + WIN32;VGM_USE_G7221;VGM_USE_MP4V2;VGM_USE_FDKAAC;VGM_USE_MAIATRAC3PLUS;NDEBUG;_LIB;%(PreprocessorDefinitions) MultiThreaded @@ -93,6 +93,7 @@ + diff --git a/src/libvgmstream.vcxproj.filters b/src/libvgmstream.vcxproj.filters index 3a31a0ad..f52edb16 100644 --- a/src/libvgmstream.vcxproj.filters +++ b/src/libvgmstream.vcxproj.filters @@ -1,950 +1,953 @@ - - - - - {93995380-89BD-4b04-88EB-625FBE52EBFB} - h;hpp;hxx;hm;inl;inc;xsd - - - {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx - - - {07c49d19-cbf2-4e9f-b45d-d8a087f7926b} - - - {4d311953-abb4-4e92-adcb-bcad28c13312} - - - {f3158382-6a38-463f-aaba-1a1618a18868} - - - {4367a8fa-d09f-489d-86b3-ab8fa707e5b2} - - - {8c0f574c-7490-47c3-aa37-ba7d30ad8e72} - - - {e273dc50-87c5-4d9b-8c71-773a369f00c5} - - - {54878363-4abe-444e-aa77-4757e09edb4d} - - - {f05d3f7e-37a3-4373-b1bf-b952af37854c} - - - {e729b7b3-e13c-4cf9-9ded-428c209b6f62} - - - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - meta\Header Files - - - coding\Header Files - - - coding\Header Files - - - coding\Header Files - - - coding\Header Files - - - layout\Header Files - - - - - Source Files - - - Source Files - - - Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - coding\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - layout\Source Files - - - layout\Source Files - - - layout\Source Files - - - coding\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - coding\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - layout\Source Files - - - meta\Source Files - - - meta\Source Files - - - meta\Source Files - - - coding\Source Files - - - meta\Source Files - - + + + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hpp;hxx;hm;inl;inc;xsd + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {07c49d19-cbf2-4e9f-b45d-d8a087f7926b} + + + {4d311953-abb4-4e92-adcb-bcad28c13312} + + + {f3158382-6a38-463f-aaba-1a1618a18868} + + + {4367a8fa-d09f-489d-86b3-ab8fa707e5b2} + + + {8c0f574c-7490-47c3-aa37-ba7d30ad8e72} + + + {e273dc50-87c5-4d9b-8c71-773a369f00c5} + + + {54878363-4abe-444e-aa77-4757e09edb4d} + + + {f05d3f7e-37a3-4373-b1bf-b952af37854c} + + + {e729b7b3-e13c-4cf9-9ded-428c209b6f62} + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + meta\Header Files + + + coding\Header Files + + + coding\Header Files + + + coding\Header Files + + + coding\Header Files + + + layout\Header Files + + + + + Source Files + + + Source Files + + + Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + coding\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + layout\Source Files + + + layout\Source Files + + + layout\Source Files + + + coding\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + coding\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + layout\Source Files + + + meta\Source Files + + + meta\Source Files + + + meta\Source Files + + + coding\Source Files + + + meta\Source Files + + + coding\Source Files + + \ No newline at end of file diff --git a/src/meta/riff.c b/src/meta/riff.c index 4b3a48a4..379f412e 100644 --- a/src/meta/riff.c +++ b/src/meta/riff.c @@ -165,6 +165,21 @@ int read_fmt(int big_endian, fmt->coding_type = coding_NGC_DSP; fmt->interleave = 8; break; +#ifdef VGM_USE_MAIATRAC3PLUS + case 0xFFFE: /* WAVEFORMATEXTENSIBLE */ + if (read_32bit(current_chunk+0x20,streamFile) == 0xE923AABF && + read_16bit(current_chunk+0x24,streamFile) == (int16_t)0xCB58 && + read_16bit(current_chunk+0x26,streamFile) == 0x4471 && + read_32bitLE(current_chunk+0x28,streamFile) == 0xFAFF19A1 && + read_32bitLE(current_chunk+0x2C,streamFile) == 0x62CEE401) { + uint16_t bztmp = read_16bit(current_chunk+0x32,streamFile); + bztmp = (bztmp >> 8) | (bztmp << 8); + fmt->coding_type = coding_AT3; + fmt->block_size = (bztmp & 0x3FF) * 8 + 8; + fmt->interleave = 0; + } + break; +#endif default: goto fail; } @@ -208,7 +223,11 @@ VGMSTREAM * init_vgmstream_riff(STREAMFILE *streamFile) { /* check extension, case insensitive */ streamFile->get_name(streamFile,filename,sizeof(filename)); if (strcasecmp("wav",filename_extension(filename)) && - strcasecmp("lwav",filename_extension(filename))) + strcasecmp("lwav",filename_extension(filename)) +#ifdef VGM_USE_MAIATRAC3PLUS + && strcasecmp("at3",filename_extension(filename)) +#endif + ) { if (!strcasecmp("mwv",filename_extension(filename))) mwv = 1; @@ -341,6 +360,11 @@ VGMSTREAM * init_vgmstream_riff(STREAMFILE *streamFile) { break; case coding_NGC_DSP: break; +#ifdef VGM_USE_MAIATRAC3PLUS + case coding_AT3: + sample_count = (data_size / fmt.block_size) * 2048 * fmt.channel_count; + break; +#endif default: goto fail; } @@ -384,11 +408,25 @@ VGMSTREAM * init_vgmstream_riff(STREAMFILE *streamFile) { // override interleave_block_size with frame size vgmstream->interleave_block_size = fmt.block_size; break; +#ifdef VGM_USE_MAIATRAC3PLUS + case coding_AT3: + vgmstream->interleave_block_size = fmt.block_size / fmt.channel_count; +#endif default: // use interleave from above break; } +#ifdef VGM_USE_MAIATRAC3PLUS + if (fmt.coding_type == coding_AT3) { + maiatrac3plus_codec_data *data = malloc(sizeof(maiatrac3plus_codec_data)); + data->buffer = 0; + data->samples_discard = 0; + data->handle = Atrac3plusDecoder_openContext(); + vgmstream->codec_data = data; + } +#endif + if (loop_flag) { if (loop_start_ms >= 0) { diff --git a/src/vgmstream.c b/src/vgmstream.c index a2a2c52f..a8ccd893 100644 --- a/src/vgmstream.c +++ b/src/vgmstream.c @@ -453,6 +453,16 @@ void reset_vgmstream(VGMSTREAM * vgmstream) { } #endif +#ifdef VGM_USE_MAIATRAC3PLUS + if (vgmstream->coding_type==coding_AT3) { + maiatrac3plus_codec_data *data = vgmstream->codec_data; + + if (data->handle) Atrac3plusDecoder_closeContext(data->handle); + data->handle = Atrac3plusDecoder_openContext(); + data->samples_discard = 0; + } +#endif + if (vgmstream->coding_type==coding_ACM) { mus_acm_codec_data *data = vgmstream->codec_data; int i; @@ -642,6 +652,18 @@ void close_vgmstream(VGMSTREAM * vgmstream) { } #endif +#ifdef VGM_USE_MAIATRAC3PLUS + if (vgmstream->coding_type == coding_AT3) { + maiatrac3plus_codec_data *data = vgmstream->codec_data; + + if (data) + { + if (data->handle) Atrac3plusDecoder_closeContext(data->handle); + free(data); + } + } +#endif + if (vgmstream->coding_type==coding_ACM) { mus_acm_codec_data *data = vgmstream->codec_data; @@ -952,6 +974,10 @@ int get_vgmstream_samples_per_frame(VGMSTREAM * vgmstream) { #if defined(VGM_USE_MP4V2) && defined(VGM_USE_FDKAAC) case coding_MP4_AAC: return ((mp4_aac_codec_data*)vgmstream->codec_data)->samples_per_frame; +#endif +#ifdef VGM_USE_MAIATRAC3PLUS + case coding_AT3: + return 2048 - ((maiatrac3plus_codec_data*)vgmstream->codec_data)->samples_discard; #endif default: return 0; @@ -1047,6 +1073,9 @@ int get_vgmstream_frame_size(VGMSTREAM * vgmstream) { #ifdef VGM_USE_G7221 case coding_G7221C: case coding_G7221: +#endif +#ifdef VGM_USE_MAIATRAC3PLUS + case coding_AT3: #endif case coding_MSADPCM: case coding_MTAF: @@ -1433,6 +1462,17 @@ void decode_vgmstream(VGMSTREAM * vgmstream, int samples_written, int samples_to chan); } break; +#endif +#ifdef VGM_USE_MAIATRAC3PLUS + case coding_AT3: + for (chan=0;chanchannels;chan++) { + decode_at3(vgmstream, + buffer+samples_written*vgmstream->channels+chan, + vgmstream->channels, + samples_to_do, + chan); + } + break; #endif case coding_ACM: /* handled in its own layout, here to quiet compiler */ @@ -1592,6 +1632,17 @@ int vgmstream_do_loop(VGMSTREAM * vgmstream) { data->samples_discard = vgmstream->loop_sample; } #endif +#ifdef VGM_USE_MAIATRAC3PLUS + if (vgmstream->coding_type==coding_AT3) { + int blocks_to_skip = vgmstream->loop_sample / 2048; + int samples_to_discard = vgmstream->loop_sample % 2048; + maiatrac3plus_codec_data *data = (maiatrac3plus_codec_data *)(vgmstream->codec_data); + vgmstream->loop_ch[0].offset = + vgmstream->loop_ch[0].channel_start_offset + + vgmstream->interleave_block_size * vgmstream->channels * blocks_to_skip; + data->samples_discard = samples_to_discard; + } +#endif #ifdef VGM_USE_MPEG /* won't work for fake MPEG */ if (vgmstream->layout_type==layout_mpeg) { @@ -1857,6 +1908,11 @@ void describe_vgmstream(VGMSTREAM * vgmstream, char * desc, int length) { case coding_G7221C: snprintf(temp,TEMPSIZE,"ITU G.722.1 annex C (Polycom Siren 14)"); break; +#endif +#ifdef VGM_USE_MAIATRAC3PLUS + case coding_AT3: + snprintf(temp,TEMPSIZE,"ATRAC3plus"); + break; #endif case coding_ACM: snprintf(temp,TEMPSIZE,"InterPlay ACM"); diff --git a/src/vgmstream.h b/src/vgmstream.h index a2aa707f..c03326e7 100644 --- a/src/vgmstream.h +++ b/src/vgmstream.h @@ -38,6 +38,10 @@ enum { PATH_LIMIT = 32768 }; #include #endif +#ifdef VGM_USE_MAIATRAC3PLUS +#include +#endif + #include "coding/acm_decoder.h" #include "coding/nwa_decoder.h" @@ -142,6 +146,10 @@ typedef enum { #if defined(VGM_USE_MP4V2) && defined(VGM_USE_FDKAAC) coding_MP4_AAC, #endif + +#ifdef VGM_USE_MAIATRAC3PLUS + coding_AT3, +#endif } coding_t; /* The layout type specifies how the sound data is laid out in the file */ @@ -720,6 +728,15 @@ typedef struct { } g7221_codec_data; #endif +#ifdef VGM_USE_MAIATRAC3PLUS +typedef struct { + sample *buffer; + int channels; + int samples_discard; + void *handle; +} maiatrac3plus_codec_data; +#endif + /* with one file this is also used for just ACM */ typedef struct {