From c138bf91b48a288ee4ad45ba72254e8be5eddab2 Mon Sep 17 00:00:00 2001 From: Ivan Cohen Date: Fri, 24 Apr 2020 10:51:26 +0100 Subject: [PATCH] DSP: Revamp DSP module --- examples/Assets/DSPDemos_Common.h | 4 +- examples/Assets/Impulse1.wav | Bin 90246 -> 0 bytes examples/Assets/Impulse2.wav | Bin 37902 -> 0 bytes examples/Assets/reverb_ir.wav | Bin 0 -> 648404 bytes examples/DSP/StateVariableFilterDemo.h | 19 +- .../Builds/Android/app/CMakeLists.txt | 90 +- .../Android/app/src/main/assets/Impulse1.wav | Bin 90246 -> 0 bytes .../Android/app/src/main/assets/Impulse2.wav | Bin 37902 -> 0 bytes .../Android/app/src/main/assets/reverb_ir.wav | Bin 0 -> 648404 bytes .../VisualStudio2015/DemoRunner_App.vcxproj | 73 +- .../DemoRunner_App.vcxproj.filters | 110 +- .../VisualStudio2017/DemoRunner_App.vcxproj | 73 +- .../DemoRunner_App.vcxproj.filters | 110 +- .../VisualStudio2019/DemoRunner_App.vcxproj | 73 +- .../DemoRunner_App.vcxproj.filters | 110 +- examples/Plugins/DSPModulePluginDemo.h | 2207 +++- examples/Plugins/MidiLoggerPluginDemo.h | 2 +- .../Builds/Android/app/CMakeLists.txt | 14 +- .../AudioPerformanceTest_App.vcxproj | 11 +- .../AudioPerformanceTest_App.vcxproj.filters | 13 +- .../Builds/Android/app/CMakeLists.txt | 90 +- .../AudioPluginHost_App.vcxproj | 73 +- .../AudioPluginHost_App.vcxproj.filters | 110 +- .../AudioPluginHost_App.vcxproj | 73 +- .../AudioPluginHost_App.vcxproj.filters | 110 +- .../AudioPluginHost_App.vcxproj | 73 +- .../AudioPluginHost_App.vcxproj.filters | 110 +- extras/AudioPluginHost/CMakeLists.txt | 4 + extras/Build/CMake/JUCEConfig.cmake.in | 2 +- .../Builds/Android/app/CMakeLists.txt | 14 +- .../NetworkGraphicsDemo_App.vcxproj | 11 +- .../NetworkGraphicsDemo_App.vcxproj.filters | 13 +- .../UnitTestRunner_ConsoleApp.vcxproj | 73 +- .../UnitTestRunner_ConsoleApp.vcxproj.filters | 110 +- .../UnitTestRunner_ConsoleApp.vcxproj | 73 +- .../UnitTestRunner_ConsoleApp.vcxproj.filters | 110 +- .../WindowsDLL_StaticLibrary.vcxproj | 11 +- .../WindowsDLL_StaticLibrary.vcxproj.filters | 13 +- .../juce_audio_basics/juce_audio_basics.cpp | 3 +- modules/juce_audio_basics/juce_audio_basics.h | 4 +- .../sources/juce_MemoryAudioSource.cpp | 31 +- .../sources/juce_MemoryAudioSource.h | 21 +- .../utilities/juce_CatmullRomInterpolator.cpp | 75 - .../utilities/juce_CatmullRomInterpolator.h | 146 - .../utilities/juce_GenericInterpolator.h | 493 + .../utilities/juce_Interpolators.cpp | 184 + .../utilities/juce_Interpolators.h | 228 + .../utilities/juce_LagrangeInterpolator.cpp | 437 +- .../utilities/juce_LagrangeInterpolator.h | 146 - .../juce_WindowedSincInterpolator.cpp | 10026 ++++++++++++++++ modules/juce_core/maths/juce_MathsFunctions.h | 44 + modules/juce_core/threads/juce_SpinLock.h | 3 + .../filter_design/juce_FilterDesign.cpp | 8 +- .../juce_dsp/frequency/juce_Convolution.cpp | 4 +- modules/juce_dsp/frequency/juce_FFT.cpp | 8 +- modules/juce_dsp/juce_dsp.cpp | 14 +- modules/juce_dsp/juce_dsp.h | 24 +- .../processors/juce_BallisticsFilter.cpp | 121 + .../processors/juce_BallisticsFilter.h | 142 + .../juce_dsp/processors/juce_DelayLine.cpp | 121 + modules/juce_dsp/processors/juce_DelayLine.h | 309 + .../juce_dsp/processors/juce_DryWetMixer.cpp | 172 + .../juce_dsp/processors/juce_DryWetMixer.h | 110 + .../processors/juce_FirstOrderTPTFilter.cpp | 114 + .../processors/juce_FirstOrderTPTFilter.h | 144 + modules/juce_dsp/processors/juce_IIRFilter.h | 6 +- .../juce_dsp/processors/juce_LadderFilter.cpp | 162 - .../processors/juce_LinkwitzRileyFilter.cpp | 142 + .../processors/juce_LinkwitzRileyFilter.h | 136 + .../juce_dsp/processors/juce_Oversampling.cpp | 54 +- .../juce_dsp/processors/juce_Oversampling.h | 111 +- modules/juce_dsp/processors/juce_Panner.cpp | 136 + modules/juce_dsp/processors/juce_Panner.h | 112 + .../processors/juce_StateVariableFilter.h | 45 +- .../juce_StateVariableTPTFilter.cpp | 130 + .../processors/juce_StateVariableTPTFilter.h | 159 + .../{processors => widgets}/juce_Bias.h | 2 +- modules/juce_dsp/widgets/juce_Chorus.cpp | 131 + modules/juce_dsp/widgets/juce_Chorus.h | 157 + modules/juce_dsp/widgets/juce_Compressor.cpp | 117 + modules/juce_dsp/widgets/juce_Compressor.h | 103 + .../{processors => widgets}/juce_Gain.h | 0 .../juce_dsp/widgets/juce_LadderFilter.cpp | 169 + .../juce_LadderFilter.h | 72 +- modules/juce_dsp/widgets/juce_Limiter.cpp | 91 + modules/juce_dsp/widgets/juce_Limiter.h | 98 + modules/juce_dsp/widgets/juce_NoiseGate.cpp | 122 + modules/juce_dsp/widgets/juce_NoiseGate.h | 103 + .../{processors => widgets}/juce_Oscillator.h | 0 modules/juce_dsp/widgets/juce_Phaser.cpp | 147 + modules/juce_dsp/widgets/juce_Phaser.h | 199 + .../{processors => widgets}/juce_Reverb.h | 2 +- .../{processors => widgets}/juce_WaveShaper.h | 0 93 files changed, 17992 insertions(+), 1828 deletions(-) delete mode 100644 examples/Assets/Impulse1.wav delete mode 100644 examples/Assets/Impulse2.wav create mode 100644 examples/Assets/reverb_ir.wav delete mode 100644 examples/DemoRunner/Builds/Android/app/src/main/assets/Impulse1.wav delete mode 100644 examples/DemoRunner/Builds/Android/app/src/main/assets/Impulse2.wav create mode 100644 examples/DemoRunner/Builds/Android/app/src/main/assets/reverb_ir.wav delete mode 100644 modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.cpp delete mode 100644 modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.h create mode 100644 modules/juce_audio_basics/utilities/juce_GenericInterpolator.h create mode 100644 modules/juce_audio_basics/utilities/juce_Interpolators.cpp create mode 100644 modules/juce_audio_basics/utilities/juce_Interpolators.h delete mode 100644 modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.h create mode 100644 modules/juce_audio_basics/utilities/juce_WindowedSincInterpolator.cpp create mode 100644 modules/juce_dsp/processors/juce_BallisticsFilter.cpp create mode 100644 modules/juce_dsp/processors/juce_BallisticsFilter.h create mode 100644 modules/juce_dsp/processors/juce_DelayLine.cpp create mode 100644 modules/juce_dsp/processors/juce_DelayLine.h create mode 100644 modules/juce_dsp/processors/juce_DryWetMixer.cpp create mode 100644 modules/juce_dsp/processors/juce_DryWetMixer.h create mode 100644 modules/juce_dsp/processors/juce_FirstOrderTPTFilter.cpp create mode 100644 modules/juce_dsp/processors/juce_FirstOrderTPTFilter.h delete mode 100644 modules/juce_dsp/processors/juce_LadderFilter.cpp create mode 100644 modules/juce_dsp/processors/juce_LinkwitzRileyFilter.cpp create mode 100644 modules/juce_dsp/processors/juce_LinkwitzRileyFilter.h create mode 100644 modules/juce_dsp/processors/juce_Panner.cpp create mode 100644 modules/juce_dsp/processors/juce_Panner.h create mode 100644 modules/juce_dsp/processors/juce_StateVariableTPTFilter.cpp create mode 100644 modules/juce_dsp/processors/juce_StateVariableTPTFilter.h rename modules/juce_dsp/{processors => widgets}/juce_Bias.h (95%) create mode 100644 modules/juce_dsp/widgets/juce_Chorus.cpp create mode 100644 modules/juce_dsp/widgets/juce_Chorus.h create mode 100644 modules/juce_dsp/widgets/juce_Compressor.cpp create mode 100644 modules/juce_dsp/widgets/juce_Compressor.h rename modules/juce_dsp/{processors => widgets}/juce_Gain.h (100%) create mode 100644 modules/juce_dsp/widgets/juce_LadderFilter.cpp rename modules/juce_dsp/{processors => widgets}/juce_LadderFilter.h (63%) create mode 100644 modules/juce_dsp/widgets/juce_Limiter.cpp create mode 100644 modules/juce_dsp/widgets/juce_Limiter.h create mode 100644 modules/juce_dsp/widgets/juce_NoiseGate.cpp create mode 100644 modules/juce_dsp/widgets/juce_NoiseGate.h rename modules/juce_dsp/{processors => widgets}/juce_Oscillator.h (100%) create mode 100644 modules/juce_dsp/widgets/juce_Phaser.cpp create mode 100644 modules/juce_dsp/widgets/juce_Phaser.h rename modules/juce_dsp/{processors => widgets}/juce_Reverb.h (95%) rename modules/juce_dsp/{processors => widgets}/juce_WaveShaper.h (100%) diff --git a/examples/Assets/DSPDemos_Common.h b/examples/Assets/DSPDemos_Common.h index 4c5d67548b..589d597be9 100644 --- a/examples/Assets/DSPDemos_Common.h +++ b/examples/Assets/DSPDemos_Common.h @@ -312,8 +312,8 @@ struct DSPDemo : public AudioSource, inputSource->getNextAudioBlock (bufferToFill); - dsp::AudioBlock block (*bufferToFill.buffer, - (size_t) bufferToFill.startSample); + AudioBlock block (*bufferToFill.buffer, + (size_t) bufferToFill.startSample); ScopedLock audioLock (audioCallbackLock); this->process (ProcessContextReplacing (block)); diff --git a/examples/Assets/Impulse1.wav b/examples/Assets/Impulse1.wav deleted file mode 100644 index 98d402cd04dacc98ae3386075de99995f3bf9c37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 90246 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 diff --git a/examples/Assets/Impulse2.wav b/examples/Assets/Impulse2.wav deleted file mode 100644 index c548b22cdde8c51043aaf157de895583ff985847..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37902 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≻ynz0_3y9-O!1pgZY8eITJD(qbh zHh+X;Hb715$W1p$ji<<@59Fnm)Pz2g+8bIEnR0A5z1*KxA5XVDMn&(?PIgk(J|XYe zNISfOeE$$_^C(&U2if{4>FE%((H_1`f|AhmBw!qdMZCvv{YB2JVOAdz=VB#k zrZU4yaqh0tZm0b9Ii(t*NI9wST8vZ_DJYE!3q+BcC2yUpP|Z}{PLn;}f?j^0G|N`5 zBx5`GB9B*LQ59%>Dq+LI_KpJi4fw-sVsjvrG^MLJv6LIx2Lk z39g+7zBmt4{XlCMBJ)1ra1cMK34YE8!is=x3&CmZt)YNTTKH^3D2_uM+6DbE2H{8` zeU!*BCB~+Ro(%+oLpL{r%nPK0Y&iNL>A*r#zz`fXLY_`1Hg}P+^RUSi^2G|$w})h5 z9QkrQ`BEpD@q-k#n-rc8m&HT8WC)xIXC_0LtH1zXsFH^*d<_owUG?&TExXC*u!Ar28f-C#;+Qjc9U&%`AcO!=T4Z+~FZm=z|WO2cC(r7yE$9I-;kZNKz*n7ZFA( z_(KHqQJ|RtXx43Xk0!c(J06se*@O~H3-D+@2JR)GQGC+|;KFvOqLf&(8{Y4T&r^dB z?gM`AfmV`9*6y%mi0oTT@;yw|bS6Q+Y2Ti~ukO(qs<2it?fDG2%a|Gpkmk5jS193# zASz7;1uDs63|u~kWc~~sj)ZdqfyY^3YBPR4567Gd=L>`lf<4H?ju$IGW-FY|$if_C z8U>Paf$+;C>6v5v=LM47E4-#kVJe?*I7_r6Q1IcHgw{G$Z6ls~JXxPDd=kZj4ht7( z@~K-y-2+pR;i8pByg3#UHw$6j6}fa=lpUv-FA@LUig38HHTAf$F9Kc%wtOPk9Ps%R zY%PW~&e1kKAe(D2P9#u2jWWX@GfoGpnIdeR46SFLoTdA9u4t-yEz>nMP`5AETNbLR zGpxTeQ7uqQzde_o^Iot14BKXp?*7B7!xgjqWX|RC>;Ht$ z`(--qf>nd!6%77@QoeQb)W!9J&*;ROCE}N!lX#Ngh4Iv@_(^|*am08c0v#~1m^h!- zfBg8=A>9GX=&4i0zZj2+Tv}Jeqlvbvf4V+XCvpaV+~I989ZmM(cb}hVQWvtgq99me zo+2AMtLO|?@DO)G=YLs;T`9VARNFT&7PqVA^He|zw|*Jh z^P9G>7JD<XGBF{rxqwhE}N;%LgE6)^Je(YJb0 zp53F`*25dUD31h0&vY0v3Z3@~IM}DmtHW=n$bq|f3L)yPCN{LGq9blV>vV6Hf%5`+)vQ;e9(&PnaZi ziatXw4>4u7UcnywG5R``b$v`zuSqv3iaX<@vEgk^tr6oVM>UGg^>4uY0HM+Rd?Ap|R*XCqj+g zpP>3Co5^lt#qOo~&t+|wpyVpX<6DB+pGceLjh!As(6T}2ZpoRJo|cz_53YV8-PMzGxUKji@((60x0_mt`qOVQR;+v3AGQlPh}i1m7= znf*RhJ+2kGOEs{=idw+#`D!1(owMh;i~BIgVbpp1W6l?$eb^ecvl%mzL(~|3rc71N zogtkoiHwl9TCI(=>Qqgsh;(logQ*YulZkcS*vu2Magl-sjGxs}Y!>`8j27M;Zy)+Q z_D!wBy>)1-O>0O&-(IX~&&AF=2b)5%R!gM5p5J;!tLE?Dj$O}dvX6HBEU6nE|K}aw zu-djC;{AEPayU(^MJSv~w(QVbDoNPU>+=h-Y8ejP12FseB8U<|LiKp`P=X{qO)pBN zZJMugb~>YI#r7)G(CT4L^WLX>R67ziD-G3OjcC>yacZyXctorI8q<26prUxM8Fq|q zJF4-GYQq)PlT2015q3a_TGD)#9ffKqpR&Bxs7G`$qvEw*{Gfdl8r;jK=}Qb( zMAKW+^cL=+Mi1(Y--0rAG<8=110uC@W8m2>_L&x(>B_GDh5BDrbF4$&>{mnQV3#vB z=sz%cNY|nnTM}lJY(*5lGz$0%mJ}H!tfgF7WvCNMnG*o3s7jkhYrY zPWsTX5@xCEVE%iGv}7>3jd(O~=vftV(0{yggOavoiW#j)67%ja5wn~G?hk}X+9IZw zfYu?ltDIOSk{tVQG-$EZe#=nKXG!?J!PB1No4O;kabb7Fu&S=~`+@#2brIKnaOGA0 zz{-K0C&X*fK9x1fPN#vgFoolzVIQH;^~o4fCJN{qU(qejHs!x@7j$b&x+5lgoFv!x z2_7Jly|-lvX$tL&^3HY2&Bx@nThKR`P~9*~?wlxR z?Rn$szryvK&Z&n@H_tPgua=w3!*oA(SQO1SI8kSLuFI%?jrEI#rak%Aj6vhD9Tplt zjc83K*S;FfxnZamp?@G&i>0OgN}}?lU-S45M*k)aF-(i>P_f@io}Rijo|9arzjgRP zkv+)NV)WlErNal=zeZ`mGI84%(Y0}Y>{nsA<jvI4eH&y#7Ez^^cH%jw2r_X!MdeTWxzR$eW$-J6Qvua|U z7C=?%Uz5Ts(R2MGSbJp#pwp@6ll28B!a5 zp!POh!*Qvq-B*qJaHf7Vw>g8kwL*K+huwWv%XOJbPpIb12CCzK>f>eP&^V5ojFObb z8PKA?T*BEMMc;pm6`w$(uc2ucf zht%XD<#}>V4HR832~R*Rgd+Qo=(h&ZOG6Z`mRt{1=2%FJi{!(;Vv9Pt!&||fSozpo zA$VB6`M1~!k_X)qM`H3Q4e>{F#erOz_CD$8UB%?M^w|q}?<(a#nPSKht$Bu=idHNL zL~bU?_a`8iQkAo35sES;b{`}sDi6lPFRx)KrR45ez=|j2+$GrM`6O7PfQ#X`d5TQ~ za2bYft_I$;6Mk1w=V8!|Nu+NFc|ur!6?%0&%$&9fmV$#?_|h}bX#x7d16)<4FsTAQ z4#;`M(9F-6wi+pN1mqild!K_(ZsOslfNwtW>kPQu6CQgAR{Bv}BY*@A%IqPqQH8WO zkVNt(SG!U^?4j4G(oV1_GjeF2&w!(Y)TvJpJ(>RY1=;l#y=g0H*IZgxEx5Fa_RknH z31#LV19tZ?Jv=cZ9(8ICYQ3JSc#7H0qFMYwqi#{{7>b!j6kTn3ekaL4P+GMb`ngVE zvYW7!OdSnEk_-5|9?ESHevY;5+o)iohu;(@CXyzf#z^2}laz7Ezp{z+^RoU$dTm16}s~gR;dMZoh?&znU$YTpUr3WyD@ARG98t4{|wrUmGqX&G};fE zYYhFwVyZ2V@}`@7Y%OW=QVM#EypKdak`H}pgdZp2^OunaauD5alFeb|0VcF%j$%$1 zXxA;f+5wGGS7@4ywG$AKT{_R1<*Ve>zV&ch$8{|)13pY!ZNnMHfjMoWF8p^~(uC5eWHRZ>KY(oktAZSA2Y zTGG%|l!}I;$mZG4bN2Z?zyIKz*L}|Cb${;ry53h@YgH$_FVK221Ha?fd^L?2vZ`fR z5<04T`*$~J>N4Hw>ws>AVeB06zh#CM2ZiiE=Fwd^yFkun6zfp}w{@l-l!!z>O})R% z{E`jNQq%_-U5e7l{i)93iA(xT-JTyVU48X;YFxC(Oq2F?Y4N208oIcJ3D^9(Pz}%{ zlZ#6)L}%<|-CLP0&Y>nryq8mWg7VEs$4@uaZ-3ckP3-t@cgLm@rv#*f(|H$nTmhwb z$>Hz@Z`aq8P(04Lr5Vs(v+pyA5`XK^>5kz@n2MgSdwWd!K3n4)Ms)LN{k0ulg*H#T zB_Q$^$7gKL?dCHN=zGyks}e1NJ(~~AG|lpDwmD?j*SWc8qIT2Z_7kOT(ckr3Wo_TR z4aYNDPK+{k)VF2KB)fIeR&b1ik48C;hyJwd7qCTvy5Vo>wE33JID^`eIdiB`g1lHr zPN<=LV(1Gk)b~=pPC*v_629Iyw{8IH<4mT($naFt&L42;HA}Zlh`mbPT!ef`V)}nZ zZ@i!$;^^HBGI0^JiBr?`j~d#A)i<2kwoL#{W@S_TgrykfS+}uUJdDie@CbO z3mx(&(e~fPrN2^2Yhzk}EC%W#7E~=y`**PH*P+q%?BQQq?=-ADT|LF6CDy-g`w;Er zJq^xb#@*c-_cW7B)$KZp-?q~g&H{-@`j>{4G;%x9j01_iXBLl$H55b$CR| z_T}1IZ*v8t@)ap@ca(?cipnla*j{K`v&gX!O6`Z2`~6HeInZ4=f6iRfynQZ}9aup_U{xMg$X02o;LR62X8)@Qky(75&k;o?Ww>AHkUi zcH%wq3~L*i#uJHji$Xx`|+u^`+nWU0>kNEhKKIvxG9#d80q$!rV5z&R`&E0e$;lpJ`rR; z1LuNKc?{gUGx2sBcI2igz((}QP5k7E=z4-=+c$Cfb4lGfS#Lr-=YS$7MZ^qI#OxG3 ze=e2W#YNquR4O*(fTTJd4PGH`zJX19D$+be;7)kSZ>ZrSO!PySF9W+hz^r;9pexc| z$rD-N*_piYmw=t+8vpSfw{i;;*q~2*%n91b9&l4JDlZ_}k1gmTsCNQvZ$VuTKYS!? zZG^tq3&%6z3m1iVWrQIguvsVxJqEsa7QMd=2LHt7eFwJ=C9)pCvz&;D4XA4sc14Um zEynt*Q4f$0aRM`gSz#d00sQ+k=A8rbHe z+D9Ykw>{gIJSB6(TXMRQLBCp-2U>b_E&n;27QJYi*r=bor2dh!-Y1~`&QN`yvrRvo zbW(ZS_9(5rRx_2-#Jttkdg!7T8RqG9*VUFxPXj_xvK!{gPi#&aO{k&g?d%(fNGcO{ z|CQ#+(O=)?p#dWIw~A%gC39ce&K@Sc8|BcnK>FC*X}p&_!OuC?N746~^8}H+bdA%Z zs|v5T4(>|ZstFxNW!WyXQyhG(>?jjwQ&OuM%Kf%@!FXWbB4S=8^X32=*lymm2>Pbh z{g=R9Ue$cgjx3x~yP-zkU0t($hW1^2O#;=TK3r3i+7PN5w|>|NSa*W=Hm@h$2Fb+N14)|_t4$kz-+TgMb=MIAN7M@_Q3o{rGx zuQRXSPL6p_yJxaNr?~l}g(DBZbA4e>kIpQ|dr`#a0}^45SRkaW2gP4qq`lUP$3!c3 zx)PBeZR+({<{0%!KU_0PnZaVvM|rynYrRBZ2ayZMpu3e&^D?kz4B%J+u)6;{yB(Hs z^P(x6X71lK(q{u*FZQNtpx^n|d=35cIBFb9E=$Jlx=@Ze|jz68MV zOMfhr9oom>lg)m8Y$ob?w_X%JhB*UJtJBPDQ>jc1d15YgB83JU$p5ZURwqkDIo%QG zITZ`86udHo3=*6(6?sKt+YsD7M5JzwyHyHh%Fwjw7sT^9V;F>SAMGo z$?PCH-~{xmK)xpl3w(f%V|b6%jFp_D*=6=0V$qWNj1v|pSkwBzuwi-Yt6!SX0qxl% z+ry>WN^?tGd^;*`bv@8t?bIAsqN@-$*5(-FhBmnQn+gLON9;HCPHf)Sf&AgzqWML? zKHGeuk_p(Q8+eZ{uQ0nFrJ}BwDUvqFTWuzb29Maoo1U#IP<9Ouok#JtnI^RIP|dgh!(mz-S}x8lF->y zGK08r$2cxcRM*KYZ6a(=lRIvRl?}|1wM5H%{zfVMh5>_?!+pOYcP7HWoAJB(Lcx1t z;K^U%G$KCGH#owqepPZjZm&>pJIo&OD_bZ?GrFT;cb#Ox|{&rWMTJ3GLsE zAGUy-K8QZW3OTRvs}%QSlgRBO(^D^>Q$(fSQeBwI?g&xE&E_KQRY6kvYOvbAr{%tf zD%H`vcBQ=Vm3i$j*`xW^8=S0YAk)!FKIE^kBSNxy0U*i4F7D)~E&0$1U#;GeP^FZ>?Yd$oK}Ei3i{>Q8e8=KvoMVA(Lh!3^5H;y-A>ypF>3zEEX0$P7RtH^2@1 zQOB{+8!x=WIWW*gyk`JFWKmOu++5qV;sl?GLd zeB0%{ip9jWktD^pZrw zq66&$Z0NAEZD)!8uc@W*j?Oi`i5;k~7*@Zdo1s|rZ*-Zi` zkD2>!Y|Kj~Teh|>4x#wf8gMrq@JZL*nG3jKnq0yk;;BjZc&?0#ui#gU;fV22Pk;R4 z17zVDao$_x#(i1;NVs2>va1YsRoT?q;Qb7?4Lp_#+AWy}-;cMeACFeP?g*oz0T&(I zmrIOhrvn*M-y(-or=`*v_I9_W1K-;n_mbXK+Ks*>8=Pp{| zOBQ@bWL2g~*Aj)hA*v0p&Iim{xCbqS@OZ**Zut#t8_H~d2wsn(``ZbN4pRlo`PS~1 zYZ#k2%2a%rN~+M$2q&vFI`1lrqnkePsu?16%dZ;8x9H@vjf<1?#T`u6Q!d5PgfBG6 zhMVtb4c7V0tXPBfTkYD{7`ni8AkZ`?!}2HEGJl_W>Oy+p0<&lytA0y9_T*GI|KB0^ zb7OZe0^W((8Gg{?^PFlCTu4HpX7v3?^o>>&e+XTYCYk&g>-1LQzeRK%l{BiPWhT*) zV9B=2;_`{&!R6A|khErtY-x^Sb+q*I31yE9;&)Q{=5)fRO*U#L8t<+!CnC8~@~+#F zVZWrFjSvtj?$raRO(T|$X7|Ne33=AD6gq4&Wft-2hm9j`nV>YIrpSEO+ZZ3AJA2_a*NsZT;?^NcHg7e{+4dp zqnzu(ez>G?PUf-;Wj51=BQlu>B^=F`zK<8;yGkb7fE`5QiBI4a9Oirv8P^GFrjS*A zg<cEf5Z5$ zhU$1e#u*sb0V&wPwTGjkVSM>(bcii5(_36`0j9o@-OB^Bj>^y1A!$KM&t@FFta@}= z)bLTAzfzR(O1-LC+)%FWFGwHx*$gsEi8ZS5-s1kWJO{_aU8JkmA&9Gp4F;@ki``ya zPB^+Fl__$8Ymd?8lZ98wl+74il$Nj2Ewh-GNky$W-kLZ5?ZX(IzN@ah zgIPS*Fmoige3+5G2UhXsvq#|$)7e3n@rw~q@<8#gb`&d@JY7o+*(%HOlx&zL`#{RB z$fVuoE6x^4#Cg)@dy@Jr@h83b{Y1%{BJtox5jjNKQiP7rkhJ$lH%dkKyWmAj@yoBU ziC0mb3_W%gXx)!)tzuK2p#4sAV;Q(&1XpYeCm*AW_QC^J(_|KW;R&Z0iiT|f<^Xt6 z2zYKb*3u3v?uM_o0NqN(hO5x*SCS>KkOO@sY9)H1K=S4`N*2<-abpea z^>KXd3??9wof$-*=tEx6l0P1qyyseeyfiNPZ8AC<{XZGUEHYSrTTK&ZoXvyO9tyWT?gr$G5xuzCb2-iC~L2}evI zI&4K2Efv#Y$il^w{ZQz{Z?3l$SayO>ErF%?z}vZKr~wr%#d`?Yk7VM&Oe{%H zbp44RUMaf#Uc7vY*soBsBVIfqLOk!asHUq(;Ye&7j{ohA=4rt6=g=LPTWsRHe4r<7 zq*jJm)QP5w&c>)O`Wybb8wKsp6WcerHV>cOW-l}ZSGB75HKfmLjXqm{Ijni#sef-a zH}0zW_cpG1Lu9>vc-xf5e>1+f_B&pG??Y=e+H_u_Sy0j3P_M1((RNO5s5`GI0L_QG z=#Kog9P%|hK1@x0VkT#EvW3)(3}9eAGkY;OPcNY7pxJ@Qv^ca+Pl8@cBrX*P_9LQ~ zi@i0(Za2yJa>>V9>9|Pg{+IH%=Ou?uDC`TR)_p|J4RUFg>P$D8rbQLvB1!71(kaBc zqlz`Pc+Ob)!TH#ET=9xR6;5)_j2z^|bJxH-RD`Y)oHz)zy9Tl|An^~V`wk#>59GHA z7%>TotP~0tqp9vd#t@?7BP1*(tZtpItZ3|0Xu~eqh*spiPC9QPal=nCeZIK$o-{LA zlINnrj%N}G}svWO!#A2Vg23)P~2(mD_IY#*`56LmO6?2T1FJxVO{ zRIKtL!sp2ry~c)}mTx@-UvH5e8UncV7I$~$QcvUk11WSCI;-3?r5xyq8H3AM_@W{I z7;TfOk6cCO4AsuW%+TESI3In)rPfHRVqr_`M%xzrf#&^yrWG!_hLXnD3w3+z8_S0o zTzr~JP8n~HYCU_?=1XirJ^Pso;hY5(bX@)Y@`31U-sm9--Oy;eNwAu~J39=?-o zD3*;Yl0^E->_^BB2a9!P=?guPep?*9j<8(A$1Fm-rl99P1I7Y);B3yh3M^`-JyXCz zf6bQ*K~!V3g8>{g8Lh`lwlTVd_RKRTT%ZG*j9e`<@3Zm8LuTV|W1ou*^VP6El-qtq zx4K10dZ@W42YNr&-has7$ug~iIb9;@UBFItqR?}k$exkKa3)V~`f7HHzYwvL6_r9C zA9H6WAoI8L`%)3nJMKdie(DVinM4Vt?AcFZ|F4WiDvq{gD)L0@quKj+#dAHmx4*=B z24?;aQNUm(th2~h$BqC*fdPQ@Dghk>#VuIGSzy60R@B3nKHwz|druzjCU(prb7Dk+m1Gi0 zIFlAK3Mc27lXKBKpG~O;;XY;NOL5?X3UlsZVb?rM!$3|^L$wrA;jied9hOnoDfb}L zRxw44((gQMIh3vQ*l$i6p!3^p*??+0#n7EXwc+pRX<6FOqo}zh?O#hN>Ff4=o!A4> zdQ`>ZN>jre!ReLR!42vaN(rwKmr-oOKy>16u2VgB;Exb4;O$Mw=u<@M1aaVUktJF- zJW8}1RK~p$_tGfuJQa5^E4%rN<|nJb$M|#`mHTTV;<;j6IdQQcmXHF<;CZN~-ln+&i{}aWj_h8pkvav^inr341XrR|A z%=@iyzaEqB5#SMM;a9G@c695etxA0HIf`+zzp){hfD&Sd7t0d0d>k9$D# zcuqtK$aCJ3#wSeya{F-O`UBR=hNytPW9ef9fd~Uxw1rO*k&o}NUoVpt6WAl8%+|fz z=Owx=gXqrjnp@wBkuyV$5>Eytbc-awZRzo97Ls z^Z^#DD+jRYK`QzNe;V9)-P6q zIwEMkYD*Uac2YnN*j-3!I}Vau5Q&xm^INbg1-R-ZT#^M|y9_8ofUhToh6zA`5xBYo zJl+icnF4G)115dv2gA@Bp4T0P!@hGT+Y#Ry_RT+J_X_^}VANPH?90Qlr}1!i{LKpP z=qD`vv(SZv`?dfdrT~kc0&|D({gc3Ul0E1R(-?cC4vzdnYgrhwkdGsfIc=u8ui&6e zJ<&t3E!K?aA%tFOf4z?{$$sWGUc%=jH-Z2@C zaK!{B^Cq^So&FOeUYE_vCdq0yaV~|j4PwSVNp|l)dXJObEs@3C6jrU^hi9_k8`*0f zl3oVx@dLt<28TUC<+tG-7lG5SpneP!brbrqgWl7OWIU%snvgv$)GQg~??Gnv0BWw9 zQ``Bw9W2MU@#i{|kN&Xpr&)&hG6|I?z6Y~#xM|iAW^<=Q-RRJmF%C@ z$jd_R29HKna%vd=P|8ibgym!j=RTp*IIz$ibzK2}*o9SGKF8!AM)I1q3R;w=u+gb z6L32Ywx0}yvtVGB5LN&v7J#RY31DB;DbhM=$Dnas^BB~yp1CeZWEE7}E%09f-4FAB|L}!sHXQ=TY-Pq} zfgvdOIg!tcY2C$gR!K$)#zyB&Js3cP%V&|0w4 z7oneGQ43K!LQ-3eyVZ#g&LS#dF&m7>4wOtT!Y_}K2Ido%8cbcUGwg_8l|3s2Lo>R^54!Oa z&enjT3!!5dfg&xiHG^B{Ck&ZEuRh7V?Lk@{yE{Ph6+hE_o#C3ZXkw_>Jnp3<(}C6Ix-$(z7)9rYRQ(4senv?H+hN^?|Kq`{S((uBZTYPUN|&}{u# z#AlN*{Wi3s1-!o&I64d-oeUh%!KHrS4}Y}rl+bR2K`}y@1a)c_zE?u;_wjRIf_KyT zfs3HnXME%nFjmS1k-&!COxM!@Xv>UR3OtuEMYn((p7coyytvf@}19f2uya^AsBai}Ns&!}2;5-%vTQI$wGY1C1a?DR6Vut*ud zPyO+d`oc=J>l~ZcThz-z8($ywF9+N2DXQego?1eF);U{MHO?Td0H;L#kZdJ5V^Ghn9`y3?Y2uXUbzJqnKj$wxt$G^kl8M z^P2V;mB~lmawW(Ru&%*8PB*gP-%~Hml^_3x{A&B_TL0}$>qSF-&h-{$=O%Sdi-B)D zThx|qG0d8(O}<7ZZ`9|nXS;kdeLckoY@!%{;QczLOEPpginTi5Ta$pjuF(2AxJV9< z^+LK>VEr*z`v^YN042PE@(%$quzVjQT@D{_ zV48M7_zots6Bv+B4^ac5F?7EKAaf;sC<F|U*MpwNRNKdvRBBR%ff^dIN25O@e_iN0OiXWd3PacJ5%>E8mn|}vpe2FnP%to^QN*S#rfo4)tqBaS8u2~z)n7k z6ce)@+-AzNJ9SjI%9{?_6n{{x9;_-+DCZ*b_(95LxabcqpY#U4s}_Gv1yqkQ51gMi z6{)fov?H0MEj#~|IGH7V&SIz1?i=^?vYzP!So1Aun%XtW1iGX|5<7NvXBb8Z91{p6!6nj zHc7j#)>J>OEm&?c{%vs^Ynt7^v19KpJ+Q4oOcw#?*GRgZ2JeTZ0;bgD4hPw)jXUqq1dZq_dw(44b6RtE7)-OX|Oi z<4=n_YO%IcBG2Ve&?bDsb9N_+URrEf?hjiPomeb1@`>K+o}S>Xy_m*bc4)QEiibBx2t$hyeiyTnue*#0kS8#>NhE}_`_-jk=rZP zt8=7xr>Xu_iplPZcOyjR%hKWdvE`Mbm~JRMn=s!;KrwOW5%RS&=Gzr+-U*j<2lpGH zmE%Cp2JZ3-ntK3fJ`C*%c1PCUbGUV>rv;>#Ggh7d=00-U@>up3zXQuJh&HB3ZotAy5-ijEHeUCemrjbQ9y z9H|F~IS}3*fS3I-Hk})SKo?K2wk!FHiEPh&_S-;abZ_S6U8>rb@^Yd$sU_orWxvd* zm|_0eL${#He91+d@Y(EhRBP>=_dM46PcvUg)6VpvG zt5ky+K1#l35mDr?=utq7gcVyH#jE0#XHZFMZ}k9`xO|dw?nsf9YnFMEm~mS)^ba<7 z7j~c>8Aif?`Xk|2uZ`_bcax)gYeG7jq&>Cv-}GOybl5*#ezsx4RL$efrpRF}ULltL&CQDrQ6y{S z7cuxIZO8`pZ>z5659`#&`0hG?xXE0-61*#-qSwGB(X<_ke!j%c{)K--gvYr=f;}YM z!;)8{U(>L}{pgoiBIrA^eIs$y$1&y9vD=Bl#>rd&fyOSYW4miEdBnG>OqwOqXu>tVqi98WbwB^qeR7)tPiz+yDpDtrEs(uyOfgs&uW%ZX#vO zGl#^GWyPl7A!g-5llwta@@Vs@j+Ow7TzJJ2HjY};-$cx$GpFkRJY?!pb$4QpL*ZQ(&<=aGoq9bM zdmG4X%tNF!vtuX{5yYmnqZxVZ(KoofkSo81DH8?PbI7htASD=j&O#^O0Ox;Uc547% z9WnlZup%F)LbwC{u+C^rr$y0DL&)NH?C`FDU!5rb$2P zY=47)CjDf9!C%3&O*f7m%+35~@W09vvHCT8xU0^_Pla6jD2x9IL9>qZ+5{xjQLlY~ z7asgM09fV*c3%T7TLg-q!(;;(84crR*w!1;Z^8yOf@LUiXFeFYPGr~uBwZ7?3{$WIhv#>Kz{E`v=NTsVo!Sj)lprO#L zL6Y`l$bNu~x(u62rP8jbDnr~*gLt12S*9ROBSi)mBz_oiXeP3z7R!1LW6!WJJ&}#4 z@S)ey-AhsLYNXFaASoG|+m*i@2le~SB@KlgP3)g!D6~8MyE6nCEk9mcU(GC8#4WgP zRNkWBl;~?0GFHklJDXkhL}yvfeE+S1TBtb*Z9l(JJC?Pk|027(x85l?`;TtfG1_v+ zzqwUP={L0Hsi-e%!-opeO=He2BVE^EC@Hj>1{mLPeerB*lgC_d?;GK)3bS z>{9qMiy=Aq4ma${Q&Eg7K6Aae?WAPRPKj2g%pNR*@>E;Z%6+?3rJq$TACyacRZIIT zKW8h(O;@IGkRMX29uAVdxTjS5ikE~d`eYFNYso(sB3+4x$J+AwdUV$hU0zA6>Ig9u9n8%`f=|q`@M}z zDlI11e6*U<`;oW)W6S%~?z7mmaC*vJPBos2^amSlDS9=+YiW%RDV)G+ImDrbz0e=) zzLS^EM6WFd2Is=UePEIjdFn0r?L-e=5uRAk9ciHQIdWtqIOrlgLjq==fOMOYu}gr@ z53#bfeCILPfW2I+4lBU9rSXJUGSjIGQLHD^s_}bE$c<&hltWbgVR3aTHFB8bZzT0> zulQ^Lwd$-yJcbV7B)RQOS%t((sEEmuzT3zTejtl06soq!gJuCYR>`a$qQ09XeMf>! ztmvWx{InidS0Q6hqRWP2@13D7ZFs&7u(pwi?JHae6dgIk?JO4${KIr`l|5a|26`$g zDE5Pc>J-avm8h+WNRH9UD^(o(Mt&}j87`L(#_6X8vRn)O&O!d)VtUhYMe1crmamxe zhe17M_iTh|wxZ+ifbU|2N(6xCV4oAKGiM~)(^CUCjs zi0TX*-38fap`jtjqHHRbhZlSySJpx&*IWD@fyVu&S2H>9qlVkh**Q*n1m}CW=u1!X ziy!N!ALXt#7&J+2m)GW;1lF<4YFT3Y1aSioaYxSbFV_eqV}wrb;O$F7W+y0jEVyt5 zG;9`JD~HMp(XuVzO#**)0nCDonf)6 zl|Fy8D25CA6f&ufx8F;i`^$B3CubBhVSCBGFg+lWvbZrF0-3^z?5&=>Vm50{>ZxyG z9~VHqNAoy_7uE=0j*EBC0~bz~9TdU?wcpf%o8_lo*wznH zI2GHDlPGIO*}T1~bULdJ@2%>Xr+gwP!Pl~*>y$QMB-{0h_-2u4p*-dZu_0DGv;yn# z2^BvOf^qz>Tn`MF1dUq0N>Yr>cgbU4k0elc~gXAA1}>JjWbR3{H+ z8pmk-is)#r{Y^R@cuxaArXDqEzSvX0cx|UGR7izkW-C?m+guk-J&2{E7FzusY%ES% z2}^Hv7WI52=(xGzm7j3#s{tHMxl&g01h(FU=>O&gU}= z#XT1Zi7zAxoxw@hBoj8niw8(1YSEmFqQ1BAflYWKjl1o{^S0m@S7N(Tad;%MI}AH~ z7JeRuI9);7!jbk%$kSbD{W+*agDzD9w80zuAQ=;Z^zhYB+LgW$W?w8zXRe>G0r!UYX7tr~G52^M!hN>5gm!}!cVfn}55%WUDr-V6Zj$^OhMt8aSA6nb#P0(N6+wPdbl*DQC4|lq^AWd@9(hdWOt|zdCFu+OH;9a$20E9S zwoDOvjyGmzvx5<1=ndLNWk`EKd1Pn{^T<1$G<#&0j^lO7GfWHb8}nWpHhwhQh8mXj zqVq80!lQi4KhwC5P+}RGUyZ!0rpNWdLng6P!bBIv{ETCgo-;sTjI3@1+R{fh+KtGc zCcTY_rv^zKoTT?8(yu?Hn@>pkK+=h3v3EDCh*#Wb5Ls0pO-Jz!qX{S%g<_C99AfPX zCMF_IvqAhWQkTznpN%%faG$>-?E)jo1*4Ma1)sUhbM&d{tm|f`Yzv#Xg&s4E`)wd& z)47hTDPjlreh8h>pPN63^7zU6ezv%1*vHwVsw;Odg_cBce$`A^J?B1!-E2)4yTkVL zV2{7!cCBH92%t&C{WL+(`|>kg(Vz+;;uvOl2JCep-gkq>n25-0h<8uXmOEHwvZ(t? zB6gHm@f}h%ZWY>|`RUv+B=tEXX9UibUKElBmD%X$q zVE*&Z5>a4z(!p#!8&~cz`mp3)(s27Ebr?5pyhyk0HgZcCnP6&`viTb ztt-eCV3+}X=a6XZ1 z>&UNYVZD}ewW(bHOPr9!L$UmVtwKyJA8;4w>dBuh12?_q*Hl80orI4FJk?Q%^oQ2( z62^$YaaV!ua!~FA`SgLU-qN*|$etp2WFp#g3BnG;z6+Jc(~J5l6g; z-|s{#`-!e<#20pmLbpk7oFKw4NIG^TZ01Xzo+S=G5s&4FA#21-=8IIpV(}*;*G;q{ z3SaMwpUy=e&qt?TK)83X(gz9O1-|+S_ln|!rXzP@Umk{g^(yN}@xji>xGnAl{}Hi*)Jl#2p#L&FRRU?!*RVagrC5ax4!f zSY)C6zUAgkQ}{deM#rE0;6;W-nL+?z=yqEmQG;u?a3RLfF_F(YW=v{h=X#ruZeklw zk_Y0rEsyCdXSrejn94WoW}eNS$GuYU_*|jLM|kK7oCpB$NkI4)z&9RD>ksz!gRU=x zh5%43ia6~9hk0Q6+ra0=c*A4RZ3f||2cE4Xehm`R#}iv|VTvE#IZ4R9y{O0|;ltsQn+%javj2kQmt55fJf zu<8T&As<+H7cz_hGj2kCIU(mE1cvgzLm>MUVc=z`Q#e?zMh@%(MWa#c+~#=~bY(oK ziAKsZq2UkUk>%huKe)Cd*f<8(4+i~bK`E7>(_f$q4h>cTcKtwjw1DIbUt_oymY*8P zT%`C>cj?E^#VtwX|dZeMn z^YG^TNO&+-J_0>-539~Ytpu3#IcR%Fe8zXgvJuPeq{TW}D z8uE#@c#}{y&D^l0^kmM}nC%Oh-h_Ev7-QvuM1;`SGE8SusB;fYJu9iYTH{SIlQ+sp zn&|;K#!?$vmSUQ|i~9B4yg!?A-(>lbK^5P(Ja|b~gH*3OWZV_{S{#)#j`OafY@rV~Hgxb%~mE*&0fcA9aXgg%(5Qe|U3Jd?g{R|l@ z-rFQSA18)C$dCUKWn?M81&JoiSC@AYy`H4*6fC~(rE+wUt{_wsf@Nrc@@<;jDOh$O zQSotrcz|5_YacN%OBs}p9}ZKFtH<_TlS{oZZoNc)617&=dwVwQLR@$wAFss1W(rdJZ`9w z>c#skrAfxFbJ;mR%&$j*Gqb20SxEJH=FSuJl%5-V5j&Lzt~o8r+lN^1P244H#vb|l zZlbZMq7NhP=%{e3lFX`>`%aMBt(FJ-$y!aaUup8qjgs}N<=QNKZlbJ<6t4G>>Fxrf z;-s2u{L-&t=qqDvCX$r&t|ZJ#gixl#$KA|--U37G4ey`xsTzY#6dO@x%#qN;ZW^Dy zAd^oTTeB_2^G#@XGyBD~V}^;5nXMJKrVrn?f}qWmNMRnZm=QuONp;-xedMq2;Kp0j zk9o+T)r^M-&FjJ`4d`rw-&u%T|G41sqQI+A@A2YCHt4~@68t-Q2$x#vteU0LYaj59 zUQ&F3C?r(MZWBG-BSB>1PrF1ne8lcG*uXMTtPDx)NlYmQxRvPYc)^;FQ;^5!B><0U zcHlv7@Ih)_E4_KF*-l4U9vlA5A^);kz|(BITk~RqscE`4;)AivCY{GX2A_1M>^j3?z1g+7VEQRO zr5(sE1nk#=UwXh#Y~bJ4rSnR(=?pft1n>P0&l)XWevH`rND}ssn3W`%bda#oh$f#Q zwx4k4XB-cswQxEB@6x7}<9efab&?*fZiC4^&y4vAZgzz@z>%)-Fl*x22XMv`zWTY~ktcLKz$F#{S(QxqK44Kf zop}LB?n{Gjfu~7y;xKUYCnjSc6!De$xe4lZihfrD)*PgY?4hR_q~;mq)63jn2PG97 zW&Plt9;U6`p%eGaita$>aO&+cUKz%?HnTl9vlvbH3*nDzsUsf&_pWrt64+}y{lX3X zv4)x0jQUSyix=U_x$K}Jq7~iPuxznqANypxnApfIQHbjgbGg~#$xTOXZ(>wIteGkCD~7fDmyIP5A__KT3qtTD^XzJ7`vo#0iaZIk)70i33;5HG1{EQEgZ0sFJP@t5 z`Wj|AYOIdzPRBG&4$R(C?aC_h-8$W&O3T~6`uC-z$6CXv2XslTVdHcT-)*?z0ftOA z&PzbM%{3pLLY#hLY0MX`x1~NNi`VMt>IssPY3!ss(&8~(uQYkyD`9P$e9TJt%N7}& zgB`Y!#4i`QpT*~@rH3!W*{kJw>A;NhN=YW)wOT#+2FFaZ0krH{SUvbH{rtEx86-D3 z$)7q|tYpiGZI*BqwkXPCWjI{Ou)JdViDJvbd$hHhwS&lr+xkD3%(n5mfWgM^_WHyC z{l$%joQ3+7o5q4Q`b+;Ax7BM4H|m#_Yh3#4hE3Bh2KC#rb?XX^&L;iPrxyGFjB6fI zcZ1CMM>_Z~`RpCt=O}Zegw8(6g->KR|KnYL@q-Egof)Wih22V^3;!VphoJTckQ3YR zW({)HB$8i4mQ0rn{0MLBEUAcrFL#tk9gx7U5_20;)F}H~hdkM2TkZY5w$b&^#}kV%Xr7D57~;&;8!X_s*+ zh)>8tM~o*Ff@9C3KYYLtTZ|h7HFjOIp?ltwQM0#X11)1>^(Bll2s_l$_f=SGE$Kc z8QHUJQi(Dut7MkMH-y&n^o+aCy}$eW52~m8+;cvk_xtrqQD19=zs%8`dnX2-&~VG~ z+s$gj1lcB575zs3@si=r;FenYb}w=D9pa$3vfM;N=8J8X0P3>%X{+QOBn3L+eqEsN zY{9l1bt`2@r4aGAO<@Bm@TS2#hH)8U`~WoLjvD7V>VAbAUEHmH=NKIx>EPETQvs3o{r{PQ?6z;|GEq2b9_mqm^XJF2U^` zo!eX(@rh~WDD(cz^xd^BC(;&^MT6`_Lk*ZR*QZo(p)wXZC0udHwRnFqJ9_H1YRo1smT zj9pxr{ijSD))AYRn-sp*t2*O=WT|bQQR*ceP@8*C^Ay}4{2b-!Ug1;KeqXls2dGq^7WR5qx z4JXd7VB3}we_9DSZ-@mR((y2KvmU_hFryB>7z&^Mff<{@i(Qa&9yYMGY(|dohhZj*U2iS^^WRuVA ztas?^Pi{vyQ2n0}wqGo5C3P#{=S0Xen)077!@Uh`x9`M-UuNgGWQS05(n%85S$dd= zy?wYBX9(rQbz~zEKUq+A@%}5snc>8iH~4cia$Z+CRsr(t2j^pm$9K@?N)+>vjQt1? ziqrxpusVRgIANr5pT{*%IPOkd1xTAp{2He(8o!5jbbsFiQi8LANS$W$MD0RxRJMQLY9<9h)sfBF3f zkd*{TCv@r%y7dcvX+bs*MIBm^-&R28KKlC`)J}l8uV7e5plq@nPfPo<$=J!*GKO-m z5vP2oTVBL*3v;5$>dEnM^xVp6*9Rruo#NXD!vExJ@BL5B| z{Qxz-CGLwumVBIB3VQF8ni7&iGXHsAxbRFG^@RVEA}j5u3|3Y+Ke;LLI$yT2uWXZT z39?9b=gbP5F{8$ma8#a`Yt9$}K7X=2y8?V68zF%$GTZ(j{4-nls8N!@*qeu-jeN2( zN_=OMplsDA|-J`K)7q{#+$TSzs(1k!&}O4eolVS3G3Ft3C@=?z4T}kE?b5I*ABWf*KTgEjo2C!e4Kxu@Hm8*?v+g%X4PT$(drJ*r<8Y54gL4@kG~Y0}i~MzQLocmd z)YjB?33e_sADJdDoymGX7nE%F4qrha#723%=8ZU7=52=I;B=v9q||<)VEQ8e4dS0( z0&~A`-5`us^B32`{lobM$Dn-+{w@b64CU7*qmMp9KnhX&KwP$p^y-3($CJ@L@VMXP z#QD-mXIh&LdVZ(NB8h(i%tuU~7^Qj_L*Htyo|>fY4AlWzD=}I%eY!n-Ztr3dAg&bapm5LhYMZ-YymV89vF zG7}XuWXL_@#~kX&3Tj6a=0`j;eu8>ThAQE&hWx2|uu*&Uq$;UM8~jJLX{C;cSFbMB zf|Z*2{WP14wVc1Yu)EdRhpItMtVVC4-!9Pg+fJ1!ki1L2|z`v@b*+ zdLEs+Bd2D=98Pxh1V=i`t%BqwWAWJw^0!c-%Nnq~2_NbTlHRi0{G{?I%k0IX%~P{5 zO1xli@oa@D9jiHvzc=MJ43YjQ63$d9^BF&RsWfPic$1d8OvLwh<4PI73KhF0$XjcK zUl>4*cxDSck|cn2FfEzW{(^&_TbvG|Ouc1T8Ik{;3wS|luZccq$giA~-hsT=5hP9~ zy0U;g0T-!J?~TBkA@&{stzwBMFF{Ou;@JZ^GZv1m#kniwW%n;Q!YD6k*%)zYGuiSSKRhT`RY)%fgY0H-NFDV5ii!|fRYT|_ zsDA<}UZqTb$jaSh$10+vm%^n(6&dit3aIV|n#`5$cFGrLNPk`Bz76}8wh)!3l5TXD9@Xm7i7PnvGp(&)<2 zW`o-{+1sa?rd87oznTpi(v-N~eBS`Ex#HQ|h zJ2~chtuj5{>0fL3j1@ni&jzd}^>rig!2yO8EK(yIo@9vEewlE*_*%txs;a&~X2GZgR!@ym1T9RSy zRH~y_!?@{a`SON1AG!8bgHI&>_r+8hAVgGHCSPQW!r9<@Q}!D6#-#?u`ZPG)pg$-& z1n38w@#Mkvg*))WJ9TI)Uf^55b+?pbuMeQ*QGWV|pQXbO_38fdrC`IBt{`%LL%|8K zG1S;LR-SKf;`U2FyO>8r;k_%^hzwy&EbsW4Q`qCybGa?2grd$|Dlcg6v-jVM3Jfb= zj}Ld?BA3crYdP^4+}2n4aG%)aBW_+mt_r~fL%IdZimlb}IBegYCW_GQ3`Uws=r*Xj zz9HsZRn^@i7Tc>vY$HB~(iiLrzhYuaBr#ot<7MLa7C0h{_{D?n0@6Q{qZ*-_cG3X` z-E4#p>_GGF#N)qFkCsA_me@8@K${8AO2H-`rDTis$)NchoFmJTy`?*`vU?Y~kH55V zmwa$D&gv~!tr6!glH62cmGZ2g6@D0S+IW6;OUbp8?bKU(_0jSt8rO^FlD=Zb9CN24 z;o&XQy<%Zjg)#gLKdiSYrijfRWo{f~+3v_5@h}@l@ox{9h9nECo|tO&;?Z)`!UuBd zSktx|cq7Hw{0H0;r1(=|<5$KqHGE`ap?X1SJ^%GIs1n3I@8m=CrKk1syEu7To$SB@ zhpn>5N>uL%+)cz4E0kYDZaYC-*h_6oBsJ^|Z*ORDn1AWJqYI|Kh zxh*y9koMJJ`e3@QbqV7#%IajkYG+5QpxJ73x^~|ab;bpCE4_MfV|9yf>hUkt`9sw6 zhG<^jQt1=bb!wHHRuvS)_@vU?i|At$DRpPsFhjw1QC)1vd#lKqH^}84M4~Mf<^}!d zkUK8O{XB?*%hH`K5bwax;-r>$g=v?CRtve1ro7cs%gPp9Kb2+JS4%{_IccD|U5=?Z zz~ni{;B_4UuJ2#k5}z`qVjE^{xo6KfGYJPgGwB49 zZx+IPa}G_Vi&{Qn8W?ew2kTIb$UiF}=uBa6PjYRlxF?WIcEkt6D4UJa`5-#)EI53K zKHUI=R?^!H@Q)WAR1L)|RP=WE(1Qxz4&rEft0@0s=}}uii&c!0l4|eAyxb{EtLZ}} z(y*iC%wXBkgoX?Ob^D=e9`Nx32b{sAN5Hxh=)(scecLuRtSh$j6#)11O6dmkmF&XGe_ zi{a7OAy7d{DcPFBLfO?wvvKqNpqle!~ zxBDoo8AF{yx7}3t@=#s8>c}8s&1cmN6H2+SUi=V6it0Xh&|!DA%{FA~tP1@E!#gm% z1U~$x(hEVPE9p=J7L7;K^FUNj;Ppmsd=n4lq+O9Ul}H@rxg-dA)xC^&hE z1ucZd1M#`@d`m}Z=0g5&t>ieDPf3vZcwV8#wFwiH({;^YQ9LU@zA4T~k?O|a!4eL8 zj`3LRHxo}8DRzD%s*m$ZGHusYZcV;)xs;2cK-LG|z?`wt#v@2{ zmiyEY?M};wJ5!(6gNW&L)D%?xfZ4X6tiGb^5KX%bRE;H7$6wNC)~YA$q5KbO+Q*PH z(=>ju1m&b|eH4{OGQ?tNUqJtG0yhm*es|f!lT^7%>#m}Tzv9fjaN<4T@eYuz=e<5k zKF9g=I+1?O1)KRkr`TQTTtqka!(47>zU5654p_{M4zLf7o9BgEj*PZY|Cy?Kv)nCX zi#Ocic%yHU5L0hd98yEOn5z2;`xlsAg$Zz-*+(Uwrr1Hl#Lcm6d5Y-u#nPq)o@>u; zw8NL)aVKAj2Rwxf|HQWs#QsS*B1!Uckt{dlqS4Z=P_W>cbpI3lwpA`^M>^e?w=AZ0 zGi38P)kS-Gc9ME>pj>ntUIl$dBxRPl2{Fo)S3btuvu~BS3 zta)iJ{5ZxuZa+FJnpP+|uD#~jI_mv7OW-?dP&3YZI-MKO_vlSqWeOiIQ)m+|#AG7^ zC@rlE0mwTWB~B#MU&7>mii-uTicn=;l2`g^veG0a)${NIz8$Oid0tdMQeXWc1T0Yd z1q+*#)kps0byroV9&$D5%q9)z7|GPwbM?i{{_$Li8#8AYw;`1Z@!;!O!ZA+h7lR(O z!;z!l)JTcr!7~qeLT^|dCpT>eE`OE#21uJJXf%p(50Gtzu!JbDMfO-GTc z#nS#O=t*Ol!(j6S+1OrIHZou(PTVP}5(MiE{A?$8LJ~tZTKJ1%K`T>0uvmM};MZIX zx6=Qr62fEamrW5Cy3}{L%R2rSv` z=wJwBPs1aB<)8rgk&bMX$l>yy zYm(6lJW|PVx8cl1po@;MeufHjiEHmj#hUqG+iN{ip5pYC|D1aY5$bzFgb;&c0wKXgwjeb*hJ!aaGM8}d>uFq zqMr{1+7Yzd8F}$4>JyfX1|rZ;3O2*N-6X4~;PXW3t($b;j1}XR-U{Dz7QQ&)CLj3d zlep&^{?}gVzq7mpBgYLF-jqv&CJGY|NMB@rt+Zx?aQD(q*6V=C~SE;w|o^!Y7r87R5zl?{Hn z&Xhh`6Cq)^YceX!!3`#uaY#B<2FLc0J8g$yt7YG>AS_J|`z;SzBLp~5e92t_`tvbg#r?zhgq6~}7;e=8 zx&IJuU~BCW0geBK-HYLB=4-*8b|8yYX7|_DQr)f_S@2wy{27J+rNxABqTM3Z&mz%!(8Q(;*rn(f1P&7|YwxjV7+1CITaL-m=%4l)ozCw5gdoLbLb zz9#bM zXD4{0GXZRZ4ExVwOD(W;89O=vrFwE5mLi26abpiuIDWS+ApWDAZ4YPPhG`^pjUqmH zfgKOY?x*Eeb>x`0a@}pR;3IhMNWQxQZ3>8Ap{Tbf>C}>_IY6D@h}T+1X^qv6Q8~7z zdX}k{g_12rl{kQG^;~tsg<9jMiqX@~YnXeZRKK>;#YL)Kd#IE_>TCAo$ldB&Rj}=R zwR)AjcA+ZF8ecF|ectgen-QXkO|Aid_gilEmq(p8tJdKMKTWCO!qL;FL_L@J!ZcwR zr#Ww`P;)-Tre-zls4M2|E3B?Po3)rF!nqGYtZgX2dJboIS#*EKzfP7HMF{x}s@)|- zMG=iw3pdrIas&MsO(xwH?vdnPLY#J(up#iiJmM3S0>cO;v3Yk4a`%!GX2M2pAom0~ z@db=u0lJNZqjexG5q6y*zZYTgRB7BUG%o_57>i!4!^(GBpETU>J2-V1=Ow_ONATV~ z5Eo%hHITpKA8)`29bViB?rbhPr-AKzg;p%e(8kCS(eE+#juH%@EEb+Hv1$^ zyp_qv*NbQ4#ZIfR&jURFA+}A#N=EcishIajJfOyBR*1<5@MTeC8%rnMCC6^ELTmTm z2hIh^16IRH`()+J`BlM_zJf!RgIWq*lED=(wDJKQoP>Hrqkw-((3d#+nwU6;C`qEw zJ;K_D8J9!!|Hs@!#6`^DnaJiFvzkSFlbCt83E$34mt5lKeOmS>+O?xMP9?Paslx39 z8&5{ACg{~fMmcJ`5;coM^maJv1k&b!CSkH>Fq%!fV`%bHCNV%K(oRKVy z(YRhBQ@?074kN!W(`erktL~|DJc%E?N@3|2*sJc|MXz$`H+K>2MU5{&Pr8#1-_V;4 z#EQAd@eQ;rh8@ZzrCW6Fgpgnd+E83(YuV^xsqZhyoufH^;S&72M01_E`t^ zQ2%qZ`SDLpdfP1Mt8Mnm=8Uz~opZLg{H))3**VX)IkC~MXorn{q}{Kt*1CDNaz|_5 z57uLzSnW8jn`6>N)T&Q!*E$eP-Xrw|Z_?p{>The5pUos4m7iGCu}!dxGvWQ7519cj zl&~G_rL19=I7!LX*wY;?0^u_R>$w zMgyqoacApH#UOUvLKt-R0_Mz+pX5GV?BBa211wo<_l|(Vt*NbdJzD%6dHU zcobcfPwdX7zsw~|3+bDXYFR*ySWi7kCZ8xv7BkVmfc%j-qO&WsZ6j29g4Q>l1fqgs|u> zzcqp%-B+x4gvvy|%V|t+Ocbl#}%BX%&O^#Cy zZ>i_4$RabfAQlZ7L-`Jg@ z4XZ2Je^kTi7i^-oA^jwK@w1_79=oBBVY3a}(@x*`n24alG zDa^Pg-@N>v$+M}sCfuC(#ngF*S=?rxI@jEA+_Eph9Db3#_}9Ei;JVdYDsBrm{&8n| z;V#Ky?L~YgLRwXW$EM1UEK=}OU^)nnc0etAqc#T#p_Vx1PKEuY*7RVm_fQR2smqpW zX6C8er0cvY)q%^cTp{-!)cqsLALOwZEKy)w`O*~ z)>>uw*p4mJer;s4{*%T&)++dudbFc9YOBiW5>xb@zIBwi+@A7TD%-Unw(k(yS-}e) z>+cLv@S?9d)4NMu8nlY>sM3kJ}e#D5QTk*>6o08FT)I=un5 z0`*}6)I?H!c-YgH+}#s(s6+4pYM+SCzagfcfp=5M){*jv)l~ja+*rk^4haXRsbjYA z>$KX`1KiS)x+4R*^L4uWx422qb$L#F>OQUhD&KsX`sF|2S6^mXHs1c7{1_=8OhC^# zu%{5b>Wz+u$;!!p-+F2BGn9TAi*HdD7F+fw{Eb3P0C8*spZgqr+r(J{;5CYyHc8HG z!)65Ht?`y_nc~;}Y;Kh3e4o4VUigmr+?GNoM)bYTzqx?3SMcvf$c~5j6Q4la2;p@d z^1L9rAElT+(*B;z>moT|Eu#sA9XBy9F2vTwj4}@?S<5V&!zlemevsN_4YOg0X5=zj zpReh*pL*LzJLo_1)+nu-BX(j<(G1j%Q|DEHm*-VE13{XOiQg+rJE&Sm$rf9S2p53Duk)s*IcTf@-?zEIFbV z&0Rq+zEb0l!XG`TakF9T*F?8ySe*`I{h=}sS-Tz#o`LK9<+nRTrM9XW|44h z8ctr%ANnp@o#6V^iER$D$E(C;V=UXs#gn#{UC(hpHT%g;-oJ}G{!%{cDLiZ;8wGJ< zDfU%KM|OxW+Q}Wl1;rY3z+Tu}fIJL*ftDE3QK)Q(Jgx{wFF-qAF>Ee$YJzXHgRD*} zodo4)lDrg^uasZ4A^&y(TocNz1hkz^Ep>y7)2Z?{@W^>Oc?Ec!$=r4WijnQrZQ#Mt zj^p9^;Z*ZBX#7W_=n1h?LwFyg&?i`3M@O9mJ>D}3XF*&&qq2u6mMNVAslLp$^-y7@ z&i@QQ#;Mw*!9gsu?-!^%N55_Yk~dNcH(>T&5)YMET_d_YkSkxI{`H{QWORHTN?w4b z>>w7lL!CI{mn+oAlK84zyM$_JEH%>7%1z{@K&@+wGjx=R7w11E5(C75+o;ViVLOf7 zHwk^T@YY{`M6JA3$Jh6hYvZ`8bV;{^+g^j0{NO5E;K_%0hd<)+d&0kyqT!eruuiP> z5LZtZtvDexLF}+X%swJs$rnpUie$0);ee2G0}rExem&&(Ui^&{VDl8dd=5-i3CexM zue}&|8O?~mZKjan*;42EbnXHGGMJU=s2j_)?5Z#gRO~zQL8+=>37si3d!MSh?VMl%EOKE}9)Q&)S4fXbDk~2k>5|KrW(!rgSrY;JlxTlur}rwZ$Xt(gxm zt#gy;v(2q;Kc?c(YSKH4Uj`lb4rtI++$0r3$|v=T`GjGy-kkpf?YpTKv#k6Ycd20zH?0` zBxa5^E4iju72D|3&sZ^?YN@cM zQ^}RfGj2=61%2h~Hgf+^m=KPa z&mxN6ip?zKv(w@kEBf|Damx>SGLNq$F$F_KhNTJ<}{d4Hpz>3iUG6NApe@ z=ImELUMe=;q*7Ys+dY_5J^1DW=vV{i{hK^n&OLA-T%Gu_UQm%SU-OWC+VE~$@dlD9uA)w!{Uzsla&yvYS_?PNA(qvfflMvX{nsrjWuPE&IOeW(M? z#ZfG!m`8$o)B2}UehJmRvz%H&=C=gTzYsy!V8bHf=~omVOmt~Zv~(ftcc9vh=SRrs||7@Rqu3fo5ZbRv`rq*rVHhSv6~(Rrex#M2c1YLozPXs!s=^@f54< zM94kU-8&3!4$}4S0iK-FejX|NL~7C;r12@LF^lnw1N6CF1@Hm*s1sl(-Oowvrx&2xqQ~o-6r5qlA-v`7b2j`8xM_47ctWJ5**zyI9(4 zxK3L0jb&WRk*1au?~!GE@4-)9X&giHK68u(72K6m#@=`NpG!?Ut;Go!%`3l)zN z&6s-2-Y{XYGha|6bsHjX=?vEYkrp~ZC80{ZhaGPd-7RR|8EPj*N@2_>YqFwVrBFA^ zvelQIiF0E#e_x`^znb|UAe*OM=?-r1(S3U^S(ochJ;&bjb;@sd`Km^leoq1_E&$&e zPX!c8Rv5(*02F}25RkG&stf^lZi}-P0wG^;S_b|)34A^XFXNqiLg&81>U?(=1p5bQZ6D!o1aes`_G(T%{*Le6C#GzX$o)j2B<;C|9&MAK&PFLG$gdN=^XoCPJQP*i`~)sesj$;R@Q${FkU}fuOHkn`jDQRZCE&}VP>X& z$7EB|75$<#i}fW#^Shij$Jk+ovIMl8=X7W$p>|l zP73Hs^lBs>^+odsNDo5bEH->2V2*PxG9NRb6^zesyNn7*r>n8tNvwN=bX`yAz4x@5rs7yA#Y|ggq zXZkRNMJjVkA1>P2GT&S1`jmYaB!2wDkI4}|{l$~B@Pg;qca+q7lHBIGG)E7Je)8oA zbZr>$DkENGLYAVC@>cyw4VX^?H9bK?X)$#!g4%wBDxF2IYD-;rXIMxTl{5C0@+dyHMprE^8U$6>r+XpTYiA4Kt8A( zm%E$)_!sQiE^aV3iqN{}^^?8(egooua{)_H*Jm zy#6u&^F5vtEe`K3p+C}}{?d`pAf=b|{4bm`Sc(oste6C-uaT=h)Ml ztO}G=V+iHB`&14?Q-Jy+=<*SEc_=%aLVSf(t_;K7rJUzPVT{zF?%wJ7y`f=etruLutACpb?ve1$< zrKRFyzsy$lvi~y6-zquJot19`(_+rH8Jd>Kf3qS_o)OIFDc5OY=4<-@*i8G?MOHo44$77 zr`(Yi1xvg8iM|~H@Zmg`Aiu_zs&8cHL#EbMbPZuz*j^P7Ws2yfmVcQuf2s{HS-PD@ znGU7?r+&|h@-g+;C9=Xpi0Ot}Ow-uCCTC@->1bxuVpUpqO{PpcHnY0(ii*m!iI_`% z+iBP18G3TC(V0kC+o zvC(gJD@GKO=@w_j&Uu739$I@O$`Vz_rdL{eJ!h5d*`@(}!YOvBiJyy$8OUa6tCt(CK^xl1iRY2q1xew=_R>h$7abjsqYlG`jj&=WncfMH_K|k~7W@3g zUOmL(7t+YN!V5d_`VnvW1EN0gc3B`WO0Y@*%1yb)e_&uMDcT)2XXQ-|ApI%KUJ9C5 zpc#(fVtXPwSw2S-!&=Ib>xh#%(!DV9({_pAN!=M~e1B?ijx=lr)h0$NbEMv`m)=oS z)e`weCu&p{VBM&v|G^m!lxaWOe2`RZ52QPJcQE1Ak}L(p1ec0eNyfKJP?8Te6C`fRwUj!SQ#+^xJ*$A$CJ$vK~*Q=1V zlQ{1XR%!QiXwBt$@%PI3vxoSPAI1A#f?W$qaqq@_lCEqQqb|tDYsC}(V9F3Y!~znQ z;~mFgWgb>HLl+n+G#Ra5D4qU|zCD)8bVQ>P$#xDAGDlwdhp2B4bgfB22WRvpH~oNz zUCH))QKADmc_mTXKuq027B?Xs{U|(@d|6K&??fK5(34yVn;EK_foNNq%Jv%cj!^ZT z1v4?TqzhD>aRCs{xxgGQ1MZWViK9W4lEpeIck*DAoW{W=boC3_Gm89r5wyI6JVwCu zTsY?r4E+EUUutl)l1K+p{iVoG^3_RL*G^g-Ew(s^D{aJ+d-0cBLh2Q)KO+>|NK0=C zeU?e#`-HgT(tw`AEtRZn!wn>;_7ivYftQwIb2F5GQ4;ndYOnluA6o1Pk}^=42e>~I zr9J>T8{j%uc;OLn=>r3HgLgr2Ko)Rrhuju{`&Pu*|K!yhh~Z1+C6kExuJV^ZXv=dc zHygEDCk6CI!<-}|1N)lsEQ6$fg`YLScp4rNE#8j}cM)!t32k@rl_|o7CtThn zv6$xMHn?~vo7)e+Qy6!>asF|RO2LD?`F_Ksgc(9!ciG{e=%8GGPD-nlrlcSbX-s^o zg5SN#foX*Q7xX-wbyWld1Xb@^y@^OlAW0FQgi(^Ic2-LXE^z0x2mKKS$&T=_keIOqFp6a z*O3mo2=|3kRUV*YIyrHS+&h)H?kP>*fa=_E_)l3I ze;yKJXPb}B#vYH10q=3M^oHgd>8RPT_%7yy43z{PH^iVnDrUSe6e+K*l7`?~VfqM@ zRfZ7!*SrV|IzQIMMZ9u@JN;8Q_mdyAQE=!gdUO&dZ^WBjg?9g>gMJD*7Ci75*4={> zR|yfrkXybmaxSWDDsHq#?rX*7t}xIUZ}12G2LUjNo>V$| z6|=}mr=?SQWZ8O&E+s2<(y%yk$ZqM*aq`P_xtgI4?Ug(IB9+^8!cF3BsC@Mx0w3gt zj%eB%(C;%`cpvoY4Xs`S=K)}h23EC{&rF7?^Q8T&;p@{lOUbwEMZ+?5=dbvsH_`F8 z_XPMafAX4}wP3@6i1wW-Z>X*Wo<)Z8guJ>2MVFagSbU!ZTwrrw0PUWAMl3o^m z*Bjz-KVkD#G&xg9@Pe!A#M*NCo&kHEl+0C9)MMNTg0;@L+!yvt5ye8Z~3-n$6s}&>Y51yM$ro;{=O%(rHD*r#Y z`#6=ubh##jx!eR+#nZaGNE<~dvy{zasj(x7AtR|H#i$FQX8EI@G9jhGk&4Tq2xP~g z{Q&GLgN^pf+n<3CUBHd5G7$uK&%>cf=;kp&F|~EM#EqOv*7KH>?o>u|OY&GMqm8Bd zGudXR#mJDLXm&VP`Uu90{G9C|WrWxxTn2Swp(qiGh3bLSvk*rINH+&cPF7M) zycB#EpVrA~z45YNa%Qebd>ddmOJL_>*d~un zZb5iV z-*=GTIettooV=Gm&>nuA%ZCR5h1r$WSAKJVFW8CSJQf~Y5*+*DjrH8S?b7TdcJyvp zamufA1Iu@^dp*JR{oG7%pufv2^LEQJ;rT;(;Q&E#UU$glJs(L5(@e1+3ig7PgZyl< zNM*})Jf84So+`>HL{=<*U(d*=J`+bAKB|J#{+8)H z9rfLyrtFC|&o#=giNP5y3^X> z^h<{7(VjlEh?u^II@uM<`$?`GUr!F;%dg#Zd}VMutvr4deho)ti9RC+qj~Osnb^T!E)oVW9-lG z#=H*vm-VKBTLnDbY#xoR*I6>p$P=EhO8Qs*A2*VsO!@rrJjPcot|-IJOF<9f;%<5VilQP+A4MWY? zZ53dFs@YZxc1fc$w3}86>wBt4WU}r%=eB_@a4F&CB#0b-@WaON~hE5@H zo;Yp-v9&XtH-?zzP7V1;4BoFQv8NP67B`K~+@mv9(pi(N9Wec^#Aba0ZF9$VUJy0! zx9tgcGVi|a{u1K!RNJ)c$}GbAq6^`BR;OgfLgs5KYS5U}dgrV-^Ih!xJ>ufIZGKk6YAE-$5;cI16}Q3I!Ns@_zhz}^U@uB5Zk^Qj}t zSeK?$uN~~bA7oxI7iULx_u-dosM}YBf=u#i44&SF+!rcGjU~R5F#Id5Jb-TY1=Ib> z|29fq6y4{Z_;woO)=Fp$R4Jc0AFYaO!nN{XS}1Q=k&0MhX^)A5C+6y33aiRoyis=B zZdM$)x`F1H^}I(H^Y|$C-#oLoi{aI2YkD~MNtMQBD_!-Z0 z?`=oOjO>+_QDlTrD5EmVEGcB~y&6VFcC@XCRHS4}5!oUc(Lkhi$MZbroZtEV1HJUR zy62ql_w#wbqg&P+cc|a_vTp9z`j`dvGbigf{f{^LA5S(!P{V^)vX5SBQ%lA%`CSQf zXh()H2xieWorKZtKtzbjsy}*oP?L0Bm^s6E`c!qh5EE6bk*bO5+*Fg$O{U@F%}k$| zwoW$Z#1D_R78Nn3mLn{GB$?tz7LEIuHkf0+8=KsBH{CtSsOpc=;D73dtJQID#iU^I zpfmPM!p-)8Ri*H`AC1aoM}8@0rDSZD%v;s-HFB<#+$LY@`$n3VEo~Yl4Zkjt3PZ0t z$;DjyxI_N?P#R;aoKKgN-YD7Il&Q-}WJ9t!ix}@EnG-0dY&D8woMtv_B5e4a#;rk> zF6_=!{P+&bb`WYYX!BQ?6AM;~qWL`-RwOKVhMwqzhO_X&biwI4o*9qt?iP0LM(u`( z9v5KN3-OE%9N3%}8$fTUVjA#cx%hGe{~HwUw`D^P3o8-Jw-lN@q)+#weWrB99AIHd za%1Q$6D6hz>EJAbE%M5G$!DLrr#MLw=+7S`7Ebv6#hh{9EvRE3A3|OE17yXHdL|&Naom z4j|sUtbc^KuVhaM(jURxW!d{Q=3R15n^(J_OT&a~@sK-BiuQxRvsm|#+AGMTIhn7A z#Yf~>`5<<;)G(KwdSaMfOSwDVZvh2I4VUf_=ktbnZOQ4W(hWta8zXOVAVZOo3Tdxa zg!`)_Em%SVtFnfLRm}T4s<#G5+6d)CKno(AT>#cz5M2j=<)z}pEudw0RhyA8)kzi8 z7>&`2eC`)NOSI&muwY?ME;e0^oB0Y|Z81y~I4@m2OL)Buc{&KaGvIm?q1p}>3Ig9O zbWgxNZ!z0VXvirVrw67>NQ;Y1HBiZFLT5FW>+dPPxl+t5`C_!hH$Jz5@mlD z&y^wb>8fVEaQS1^G!7ytQ|-yX+IgzmdvIcf=>7_A10vr+Pp-l-wV<&R{uu{)j=@ID z!01eTtAzdig?F@JclTo-A3CKS{=1QIHfnu{a-cir`_0Sa@C-lYnhUOOLK@D)s&aCm z2OfNw9)6BaDD+(@OtEL`NnqD`*6b)ty9eC+u*3;yVLm-|3g75LxqU3)1v$MI^G`PI zFUrU!69=Q6mr2P%IN%eh*b8UolY2Me){&$~6l^t9NofuFdx5S8=~Q}UV4Y7(b7WSr zQ`){0JdKui2ymK_yx*S3s^yBwFwmB0i($YR%Fm{%Ic$9+?6L>wJ%rz;+W zRQ&gC8LZ-SfY1@DD~-jGZ$xu%)stT0Em5B zMN;S0Okcz19bw$_RXKr8=nlhXGRre?)G(8sGSp7Sp>tv_y7vlngiamJCw{4zEj@pEQE_rM^Hz- z+;Tj%ZmxhOB<-AXqCoi_NqU}8+`K6FL_bWSXHLi@h_yT`Te$%@t(@@*SbULjIq39S z=6v`(l@gf(_RmxNUjp}&%2ji?stw5+0P8c!xsGt`FJfr}vlTK)gaID3>ow4B8%t>k z@(RI2?h)vQx>PeONBsC6^R^LgQaX67cx??0-m21%p#2iKw2@4k`2QB^_FIkV0y3bN zk#!z<)7$7?GwQ!rQ?`%FuhnbYv9?{*HaX07t14w4xOGNc>|;^enrc93}53!IJ;O`fw8m&I5!7P&*5YDfPCilsA%^>Fd=UnOUV*yD&Y zuu4$rWDk|_X{y{~7@j>{PD?;DgXEzrQQ`u5`$F{ZjLiAfcY7#Vb@0JMg|i^+HV|W5 z`1%+v3IQJ@*(Mk8ZZ4>w4rbfH_|afsbM$8fI8lg9BsO3+ZWPOMitwHpY{)DjZ6vc# z7CdsOYQDe;1{YHC>%H{dNW6Y09Z-S>Ceo&9D61h$EkUg|uqqMnJjN_bkjr7V)fc60 zV_^h7cW2xG!S;EykukD1r9Ee$nTN@+U8u1ONtudlJ}Z5mz;V^eo(XXK2{QW|2)Ij& z7lO8xY-9l|?GCXcn=l6rx=+()U@v#-QjQPmh|?4N`V%?jgNJ32qH6ST9O>4Xhhvr1 z^+0=2;rVLw(aMf@v{#bc-kk1Fle~|Tk1q`MiZZml!Ec}v)<%Exq?}=_Yur%2dRyzB zD7}x+HTIG6&g)}>rS{JZ4`ZYWL>gEiU7D&C{*op%r=g2wJz@FQO3(9f<9FrsV`LdY zuCK+HN6_3-yt9N}=p;-GV=)tjOX-Y%$`8M?{k*x^1(aHec}GD{jd=AXczRn{LqM&s zaK{Jsdye;PMptx*Cu4Jd!}@aJPB%Dsix?LHF5eeRW`fUa!~;{n6l?KD9GHGnxKRYI zCkRGu;O$f)YdG9{Q!sUcbN2`rC&CLIg@UKB?+u(c2CZs>F9##uq39Wdn(5)Ohv;5C zT=)w;>xeiD^raax+k#fkgOB2nxfftHsHFo7t4Dbqsq-tea}jaOM)w1W>I%A=O#IzZ zzq_R89GDtLwygzg9ZBgUMy<$$g-nr^Pk-pwBE>D51{_g*+S8Bm%2h{lK3-|jRJl7< z`LkONLdr%L**i-4Z6~|$AOqIO$J*1$?_~FS`Yv42+Jb;-q+$%buz>P(?wy;AxZ)SH zprYWHjd1ok!F`i(aGE$_pJ=TU{~SM=3Es{*K*^oz4%X-=@Qpy}p*S3;^8`8mf z2EGTsVkw=rrKnh{=7xf7dCCl0yifUXm%d#~Z1%8eD=Bw<#@uJGQvkoGS^ouHOVF2< zAb*lD{yR%^6T9?f6`#aI65)+|WrvczOcZ;|gIoo-b<*Wz)VH-{+Z?{UWC-5H<~kX= zeIXx^VNPo$g5%RiOCQJU^%}#0Y5zBaHoeeaj?%SUWN>%aWet&9y6Nmid6bKeyVx$+ z>*jS-!Y}D=L!wmc+nG``FR6MM^FJW#0>S?8isLYtyNG%g!jK*8%q}#rI|yljIc@3O z6s%2v2RjP~ccRp-;?z}mah%FxmoQOKKiwc6AE(w0Qn@*()1RxR+*S22S644m`Svw( z4^%xFYHYJo)h@z#d^^>qF2+@##8e+6k1TQG8qMns;@OL8tBGQ(3{{x5c>aax^HR7Y zie1MG3*KPIg*dGzS~Ldvgo4!0umjiTe&K3zYV(9Xc|a5$3GPIyCy~DU70&6c?W1f7 zQ6Bj!Dch6_veLVklKP%VvYgzCX^oXF0pNqJ;^PdbjZ~a2!nw@}%!Mub(C{$mrO;;F zh3w0Cr}(ap#YQlf5ODuHjXn)dY^Oe30QVk#?g>t{rLH$v&KvS+It!goW}jo+xzK$K zNRB7&aiHrA>i7aYSVlYTg`M+=_iW_df%tqwi>-)XKm24YxwaMe*hacM#%+gDO$N5U z&-^#y_5+|a8Fwn_8ioVVSE~sbAve^2O4W|?BoJ&+C#Fvqf4AGt^TVWd|moAS!?4jZ|tu1d@p}X)9&b|_+HjY z)qKLmvo7TJLaFH?`umrB_aXf~iHx1hd`sz=B&PWSTwXDCHY#WgCj7wn_kkx)LS-G$ zI0}3=wYs&?Ga8O@5&T_Ihcm*qw`it?czy=n(pTh;zu5PJg@hxg2tT&s)g6TD*T~6S z25m{x;kwFY-Oper9}ycNt5=)tqhv@PKj8eJ15@Va7oS`IlU@0}#aACg=g zWq#-X8YJK2tdisM?dy6zll6#bP>Q_|T zO4bH4ZiM8Wvg78;CpYN%PT4XRHBBNL+hGSkI&L{W=gM9m!yb>A)LK}v1bC~(j9IYh zF7c#43R%NTy0~vQai0~w{a1*nLB3H!-D*5phrN9S-V@>JpiUd{zG33LLfpVzZ0#cq zA0-~I5Zda6x<+Et;{vzznoJhDJ`?VQ30sy5gVu|CZ{kLuRr^Nc;5zmF1^C1a&Bv2C zwO`yBiPhO*msRR+>Sl9bjd8Vw21sp z1CDe`x3p`B51gm#3_V0k0d=@H;Si9cwlp&!_`~ zs=2WOokFS=BL)2*)rd)=Dn*^xOSL^f^Xsq5qfj$&x;pN+COBJ7KWZeE=HC;|kinY1 z!!-+gX+nOgR;^LrGZlCDQ_b&!rFN{oXA8BN)lzVbR`4cmUu*N%FxxEMsjF~|qoMNv zVV+7Z3RMN1RlfXIyS1Wy{%EfLVBKSl4i&@1yGAP*-a5f(Z-yv*)J%A&>Tj!g>#7#I zsHN@dAHT#!h3fK?LP!_Q>1+7oK#kdDBwSSMPQdI0)$f&nr-vJ2=<|nxCsjvpq~il}DB&;JdOfR?baV!W&2dZI$?A`tZqeoUe}O z+gC+tKlhVb&C*I<(yTSwJC~%R|FpY)NQJICqhHdmb-GL-=l;+^5BXW1-ZelGY78G5 z(xJO#&h1G*O-gHkCZ6q2g}*!T2sA45Lq|8ES=Cs+i}j0RYUxxq%U9-`e6Bl{TfnXM7eo#y`5jPv7qN6m4a5S6N?R)TYh zO1_Uez7wau9G}H*i zBujRd$fS>atraR-uEY`OI+h%ZfFaIw=V&OOWLakLMq_xm8YluPE(c$t5jT(~EXU4v z;M!(k`%^Y$lE_J77c5nGL)qveRpl7A;+?u|EURp5)aX029&bD%3+&G|zPBFkcxC+E z0=>Ivyeb|ozGqZ{@b-V|yn(numiT=a?z<6}zQaMIU~C&9t|43c2djIMUAr;dA-i2f zdG1nrD12{kX!90)Yo_l$8QAsGH7{ZN#%fPZWIWSyI+@~z^~bYG_1U@s7nNmsbqB&^ zu}8gAopcOngAPl*#_5hUwNB~PUk4Wr|>{btak}}Hj-nf#d$|4I<4w$1P)D8ug-?^ zg4OmIyWLV{?8jc$M6aWG(Rbm_3%sr#dw;>!g=k{}{_!4GsWG47_YXwMEKnpM%=saY zpt6jv{|>EM)Aqg4IXC*R1%iImF9POurVap(OD5{$p!Hm`{TXXxN4OEppD7tRMEgkL z^Q%u<#puNU-NUuJl+Z)ubcn+9Bz2pVrk2zxR`FcQIz3XRWP#i7m7LSCe1j6d7FFy} zbmQwn09 z>R@&@$>glRV{EG_t`3CXH{w@57&{Av&xIGI!l}dJJAZN7JXP5}aj>9XI);zm)xEB& z`hQp7h*WiatUldHm3mR#f3TPsqdpcZ3~*8xGi*Cwb;$%TKPw7F(6mSxxd|A)wX1kaHBdrA#vk?L4UdqgR*kYE3k|2W7)Hp}~LHDETb%PHth1*ftOI1WT6}_yPZR%EU!!=$#R6`4)Qj zL01Mtn*lI*IpBB22YgNZnm)Zn7mKv76Y*U^sz1s(pOyC~r2E5__CpMgVe+4;`rJp- z<>$KT$%fHsI=7R0vjAQ5DjoMrpL?TAi_-ow)!V0PU+&b$&DL!jY53G#Z@gZbr#37& zBl~|gOxmV!GEaytx&2&DM3hbz=#}e!cm~JCW z)Add@(mJN)CX2O0w1-;AuRCayN~FwoT27U@uu2P$O8dWPXU9u>e(C;bWV>kw?J4Mjsqi2P8Chmuhtx9+IK5IVCLAs^WhNONr{PiTLu1>aLqu|59};M&u{L zn$P0anQDux;-S}SEfp@kRoBiI-Z-eM9E3b;e&PuIHw%j@h0_MqE>z@A_H9h;SIz8g zRHFiD*(>o_rn0P5Sm7y~>u^?%L2HTUx6ng3^e|Jqw-fx6Qt!2m`Kjvpr$6mw-7rge z8LGecQ9plB{fuV1b|34{ysv)(bcXwNpZxTi(%PLz4Lq+~mMWE8sOfM`ZWB`@98<3P z*WS(`8$;?AWYAqx>YKW<_+i?g(X7=$or^o*uIC&lNTn1neWD-UH_~)J6fDLK&wU#Xkib_kmOGQN;|fdFlVt>}}hH$`CNH zhv>8d?1>czXM#oN#bK>s!d$UUI5cY^UI>MOZ-uMwuzILq#>-ZIc-0_K^B$dD&j#&7 zv4`myHR9)m-*%{kD<{iA{VVxVPq2EM{Gbbq%8*qpsJ*eWuraBbr;Hh|9Db$r$&hzC zkydl%f>q?8x!nFE*`FfWInaOrjbAsVa{!j^>B9-lz(byj3>I%HzHsM5_`98F#x$vqV zi!m1-%?FEs&^`(B+*+?fw0E1ZsSI-pT!V1oUycxGB#zVJi)TcCBV6B5^>8xc47b|N z&^$yvVmp}7PLmYOt`5;0+CsNisz-}-TNm}QIx=*eYUD}EIbeHlut%eWGV@@I+ zbr*8di`iIUl?Oi_qyZJMkt5l};P((^)>t&Wg<{zPjoT&9SpZjEk@`e{pqB>DBJgoF z@FYw{k$!VGTI!-_Ux;a}?ptpXYo%MbSfPz{?oslpL%OAT(((@a{&x+T*r2J=ucC(I z!}P`-Ws%(utE5YMD7E}OdS%WPW_^1k)2Mdp` zu%I&W>^i2(SN(m@mQ7S=PXp_G)hQpqHd*!19jd3QULJwWQ*0Lx@3;vQEQ$}q{*{)$I&I}}9hSO$)w!UzA zG+1i_t4ctRkAOV@eg&X!0J!uS#EtB@<8xT_F@4TI*mmVrd`BFr?IKWnL`0~xZ~)<8a=JaGlgxJ!4apw)DG!2{l~qgP*n!RFMthH(QUPu5*C zBK$nH-L5>`K`MXCb3Q2z0_4=r%GX-y>qePfk)C{z8s3n6Bc$afa>oPG`lIsWd(t^u z<^4}-;t%EFblLAB;XJW{_Vi|%TwFnqH&U8hVM8`5#1Fi+C#TYYt%0PR1PkBNrJKRA z5@t661pEU}+k)3RsBQrMWFVem>NpTry=6xhW4^QN7Vy6zXz&8eZMi4}r+j19v+x^N zFqELlZ@{S~sA?iCJ_E-@!&(IUpMmDbfN?BL2?YKHu%E&{e}p|&unU{uXUKFHz!y&n zjKPkdgmY^vqsf>-ti@*H*PhLbCw86KdllX2!Wu23r5o6#yRgq!XQk>y6I2G( z!#O~pNY%6pdj3LnW(*p0LzNhgn)|4Z-9+!=L_T#-SS3hyxFbOaI%9PK%(TJ>i$R4B zeaT@nUZRppTIhxT+S40PVDqiSc?LXRrHpL>RcN<)XrCSD}i zQNFcGS>8sjxFe5GkeHo3Am7m1Uf$fWH`bv1y*5?TABCy$A*nwxDK9)_|h$`H{v>cq(4-PmXGzX|KSFnskH}?vk z2I3oo1mhf>`30YDD?Cra(HTM`7yOC|jRc(gMmUy(d?JPCYf+AyplyiGWZ)nHMg2iO zdf3AVnLdQ$o`SoB;iaXFJpxTV=#K#)WdnKAlhMW`u8e%Tq0HZ`JQ=AZe3Q=ql{*C) zl9T0CNAx?E%kJCs;lt!RJM<$u$zfmgK|^J3+~x$`2F!3YLw0N?WfaI?M@xOpl!zx1 z_mt6#vVFDUny7dmAOY`5`E(j<#adL;cV+C%d{#E%|4HU1Z*b@|Xb}tOZ(uPKwjK_9 zbw@{1V9V2}W*&Ms4EJ-!oPzF@iw7JNJVp!QD}*=Eg0ZPEG*Pgz7QUSp?s^L&_6z>E z1+rO4=_@LBLS?v^{teq46!&h$w^xXjt#A&7vbVe8e{|mi)q*hz|+VcnXG98 zw#JjSv0?m$wfY0Cen^fkqCK*eb+?GBn_@Yc)C&r?gAz}rYn5*-6WaQgoH2;cV=Z|0xvsgE)JmGLdl)pw~Z^x(K%X0G23CYV>NO-UXufH%+RMII^eaPg~)qtJ z<}kbhcRUO-t+7=TFggtJX@l?{jxq2a8En4`EV&FSJm9pJpbnsU_gL*p6g7@zo<*_^ zGgKp@qhG5KZ;tZ@S@#LdjIU^;*boD(h1{r$;&y_|K}c-`Z@flPn_$^|{(wd2&*1~h z(1|D5ZzZbzg>8qRTUB^M6>N!xR6jV2;>?+Me5WQWn_`rkcl$!Wx2d7C{ zzqLa*$x^cJh@Ud}rGDEaf^`N<2ii4Q&QUSeojm=?j<#S%Gl6R+=$#H6x1w`hA>T!g zdj!|`itn}}ZJju28GhPFb)k)*>#aJRAVfG)xir&8;K@Uq3FI{6VNj zSo9uJ7omS0s9K3bM}a>nD7=t`E`ob{vL~gCr$!(6(`loXrgKPst#o3aa;=BdHc}pu zW0<&8%6)C{*=~4|WY|)nKQi6`PUzeG&=0TEPb|^@zGe8FYFPVH>MqLD-IS5nl*bL} z@W*ueSyt5ono*Fu0uPQy=W@j}eT7V|`o~Jq{*KY?ld2!c#QBwah=plljwZ0cv}lph z-PLB}(u}tLFgp@s!We)tBNQT z4+V*9Z{pdPgk||~VG|+YE7PpQ^IFqB=TOvj#pWlh-zS^Yfxv@O%w_g*lr(b}U2HEE zJ|UbZ>}5~&wl2ZfZ!@KAvC;86_wrjh5 z>mWEdRPk5>HA6|0wy1Ak8a)LaeNTY{I(v~NSRkWBz!T#R*I?JB@Y`SH@elOvCyX2o z);oySVXRM%II@Ti)`^~5Xs2i~?LDngiAfikLtCNcA^->A-Iu`PaR{9TcB7zwPoTF4 zomaDy16g_;?PX4z{vbozklJO$XuooJA8G8OM4Qm>qVi!c{oF{o>&obC{P`a&81 z8E72|r-I~NB%Hi-b1>aB5N&!-2V6#7RBxb*%^Ee#1 z7Z);GJG2Rx6OEA9r3n#rqCyj;gCOET!kiG=l_7Qx03v{$#c2(d+NA^mneuPi? z3jU6GR2HuNj*jP}NgGgyOt{4qnW|x@$8eb~_!$8!+OwHe;N>vN(+F(_l8IJKn4`RR zqT*Hgr3(p=CA*nV{zmtAlytVSuIpAq!V~RTMgONt>kz4@t#!t? z^c|P!{!TZ1h}NxWEsZVL1^ZR&YoSdF{4yQ!#?2!Oobys}yo#SJR5|w+`Y%&o?Iz?tRo?-^ zH=v;}@qIJR`dpl3rCH&EYksRg2BC;;>eOM2s%e2ltiUp_I%}cFd$VyC}`u)0M^YxmV<5klg$d3Fsq_ zuP1ncyler@KPzY0vCzM={d>k63Ov_w$XogF2V9$?bP9#bM=KwzVg6aAuq8q}$vYLQ z4yASso*2O5QsKH~%xwuQi)2aeu=^J_!VeCx1WvZ_>nOk-G<=`P8w!n^!>*Yu_&SXD zVEJ9pk_YsC3&f{<&lSj%Fd4=0%{TI;9P+xTpW)+1^iDiH(2mlj z@L@j=%790Y(wwWXsxuqY9vL37rJK+TYcQw)g&zPzop8ZOIJ6djb3~3yg}mjsd*c5S zj8mrsiwok#<-)LcD&Cy+e64O@guxokkp+0PU^KA~-CAYTI|%LCXmtM(yjP~-d$iH! z8k?OUT&-?D63o?!4j!PDA_&U?-)1!O0o?pvy#(+#_|(H7N{0It;4~ZZ%wcdkINTX| z)v?Ea(0y;__8afdp+bakc`W4?fG*p}+siKpuTj*HzsI^-HQWP+Shsi8C6)Lp@WBLG!f;^RPp=9oR;dIZMl(L-Q*%%RG{9{0@7BRXLmrG!J0&W(D1KX{>sE9 z>W-&b)IC-1bfzsAFG1Goo^bayeIA1!f2LUjQ0OaKkq-(=>HDtiZ3V4cLKY8X&nje9 z0ke&i5_^Ja9Sl~J0Y&58G4XhM{`j7~VO@b8&|yUM1= z;B%qUZZ5prk~B?$o0gDo61>`zwsAl%Htf+t3OM&;o_1hYHJz5gN|sXY#@!7m&rOZ1BU>Hle1Ga~O1C#+_q^%E$ zx+v`KHYObbMyS0N|hjo*mQD7Y85Qi&qxR8*W3a}zP2`&F63?x3~x{>eSq>mMf!*j!s^UA?Wy?=;uI9&fRT6sQS z&tEhoOz)ej{JNtI{rAdhbNO+9}a%2`8);rxUxytn3Y$>i~OX zkx8S`xKeVe8_sP?dzWIXc67uf!DtD+y+wGLPXEjiK0Kk9zhH8U&a}n7?$IGmNcDos z6X5ip^q4O|->L0lR(qJ*U!YSv)5XK6?M-6dkM@rs2m8_~@5vyMHW*3SMbapqCI^s) z7EG`q*H$opV=@r~lTPH&Y_LYB*yjQAUU3`+uiR94?xN{}R=EM*{>FlK!--}f zJ`8SY176I4F)P79ALttffEz^9KzkW%914ohf|*0WITtW_I`GM3D`tV(mWm zE9gx)F(dFRF}DS${b|-7P^n=SiJ&}!@w6mwh6W4y_**Z~o#A(A|0wFP7Olu2_wT^9_M|08@7_?ZykgcflnXZOz#PK$f+WFXeB+wDS=faR{Gij7?h${G?m4TKJoZUxf(WE3tWr5cm%}P7(PI zG&@neSA#fp0ePe66Gh(#(Cm}&V+o`hA@K*;(Gfcbfa4mZ{9+TXgLWg?9v`;g9_1P4 z{IPUr7xMKp*)v=zUqR>v`9wn!93&flDcicqXQLFJe9q~l1hkf`6XZipnC*(EGp zfw$f>j~e(eku{Uy$Z_md8#L!HJvtKkCD8qgki#+h`8W#tOyPahY8V^$5Zyk@_`g}# z1vJ}$zSe;5BT%aauw)c^dK9`YK&>~xq#5WB&mLQ%l=r|Q8eR$jF@52tr!0Irc-o&m z8p(EkqW#9x&gas>%q;nXyTK?@{^DwQ-BNiSZU{Z2__dVg6)R1t)OQFuRVCj_AdZ_9^J-!| zfq0wKBi1x(Ca=2Fgk<{o1-ssYS@;9au)1>tyv}BYTA)j1gZo4ODE4g^TolWGeSmAf zGF^MLAPA%_M*us%*Xf|kd{j9Y-1bHnjKEG; z)b|^!y$KV(u;_ANssUTmS#wKpX`1L+Vzh@S7)cCA0kL+6+>5kmhNL%O^Uu3tiBQb@8BH%h`i9 z^ut|-AJMox7Wa;Nq_HU<=}0%$@fUSz!9KQRcCFbj2X-NX?XY1L`Rv^lno`Q<2T{d_eXwB3;=%{Fl2GhlqBxO?WG)$ky7VjoZ0L{)2ez%b>lFutZ*cqZ44|?qj;Kf2FEyOxr>{~(`BxDABSyUCtt@aQqwS;{=d&|VhodOR(uBeP;D$Wo%S zsp`IbS;bb>N`dtGZDDkBL5j+Ai|o~pyvT>_LeQq!`9iX{Wt8I z&3wx6n>-d;j2*2&D+}S=KyVui9uB}xi(mBv_SbaK9BRZwT7W(=cSQ z(hf*ZaujK=RIDNU`^Z*vNoKy*0kLYc4HCEaszYk(V@>lN@rHz1n$1TzVw0y0McEcb}DG^01y8F<6A>+xf-H| zJ@&!AywmXlmLCGX5dDV0(h}X>&64tAPsmhGaK{hDa0AJf=o^m`D!QBUTmXw7%RU%SqaNO@!WAcM^6O>mU} z=ztWdI+D=KlFbTb{42@!h#W4;-JIlJZRI)L z@!YTYyOQhuh)o>Ht|r6H>58k=eK$S3g6*T!-v)TDVLZ{n?>X}vVO1F;uOa7nybnd8 zxy)a{Um&RKiaWT0#Ut_5=YSi`gNH!A)A3G*vkmz2HTVb$=T^h`zgXx8E8pP48o+IC z(?0|D9fj=!iN=Wb13!L(eK%Rg57sM$oy-0Ilg++L1jOt!l-ek2`&51&LqGhL4xFW& zh|=R0tyychT1jPF1J8cEd7*!8!J>}pA2(w-MZemM4H#|M{*o~ysiy(EXVTepP<}%m za0j@>{GSx+SC%&yg{WfRmx4e{*?PZsP+UtFeh57Qb?68MF-QRMxu3~(VrI;;L68Q*6?FQrM} zm{YM7)Dpy2Nz@S_ciA`%Y?kE-gW#j13eVVF=t)ZdLf+UaEQ6OQX|@fP_|d+xVB{OR zppJdzIF!>Y!=E*aWy6Zu=&NjIf3RvVv-bj1=d-1*pm+__wgUW>-RIf=-!OgS*k)T$ zzK2~~1Rh4ShFd{>G>d8kRQuTOH1@)u@l=&zH1n}!Zll?Oa>}RrF}c+LH%&6omRG4+ zBHeh1KIlP<=2P8s;_O5}yd{mgQJxYX7(hENqGb{E<2UN?f-VnWv%XT(d{%>*T}yD@ zjkOH|k?UDjE*Kun8t8%j3|7z({#eF(T?G#gv#HHM;sQ2gCL7b6t$0M&bzHq9c%*FvyLgG_V(i;fmYPncZABb-Yep4lTF3}l{ zh@&k_>rN`Sv##^Vl62-;NX}NX;!X71STJ}LYZni0>R1tkv(A7agJ7@$T-*lNj)x;N zp)?Ni_fBh9*fT13Oe<1TCx)*a*)w zM00;Yg9D0ehknmNAC9BR;pp{8RI&@PHn?IZqFy-WJPHrQyf-@68;AG7KSpEo5bW%V zOHXr$4)(u~ZQ5Wl8drWsY%V^(7`a>FejX_G2Rbthad+(xOQhL}8m@shOHh6}__!Wj z4+E|Iku(+y@L@az-;J<)|~sJNzNjMW*Og7Ts-w z2BlKI#}{tV4VU1JU-ZCOXfl-DwTJLHJGTg~`^o1UIgYz0g+7#Ei!U^Bd##Qjf z4wRY-YyZFvS7FFZxO5lX^BOeqgZ#dl)E3?y$^1ToEHC=tC^+4dl=y;uJdM@{9GWb9 z=dh0VrLn%uI$3H|MHd%w_XI7ql{wET$wMBe-*YKhK(XVB^Mv9mTXqE0}wZ7B@h5`RQ;L zRlcItP4S{?df*aHo6Po`3(=QY#AKncj;&iEOc)CmU*oV8;HeXG??W#ljN64;A+g;I z-1LROGwOE9Lh)uHa+lzFQ;3@`ga~4M2O)5_m{o$Weiw}=VY*6nD;te4sLWlEW~REf zD|)s`efbys+eBTS27`C2das3(e~CQly|$akCsFpng2Nh^dJKQO2CrG+Boov)9JQQ+ zo?4?nOOQ%|$$?0X(2B7rtv71xiQcS0`sv7WI{GjVRdz>#-O*A5eEJrSJ_F%y_`Myp zSp~TZySN2B+5%KXftT0W6b;zig?&1~#>Uf`YR2s|r>yA|Tl#M#*=9+(!(~Apndz&n z9YUs$QNk`O0p3c>Hp-U!%Ip*Jqwyq}O2c!>r7Mz`hVJXpA;=$uwvf? z#nzW~SgE{BV&QtFxD}Ych|Em_{AYIU1qVTT=pFnsllDJ}zDCo&L-D58%=#dnRLZz_ zIPfXxH615sz&X#+?vrSNCGzn6e+RcY1E*GjsrA^k1{4E<&mP0maBvq$Jn@z$@cdu& z^c#3{3$@M!gMXr(1*Kk_RcWJHjS z>0oRUx%mrptRWenfx|3nmItm4Wnu>SkEHXC=kk01_;t?xMuYaGNu?B}9a5>ZKWVBo ziBcL`w2Wv;lr*HFq$mpQp(Q008j6-gN~E2}~9BI!yHA<4a-7c;#dVHtCjv3z+l`?g(KsjWja*6KJmK9nPem02hb}A)|bP85;})a z@fKe8R@eVv6qVAH-l169#2}Sv$}~QJ$@TzDitBRTSJx6T<@O0;$p4WIZ#P*(la=vJlmxA@u^ZAtH=K+ zrcd>H)Yi=QN!Wy)}PQHHIdd)ay#{ zEoE2|_Z^^|2xX5w`HA_k=Ow#*n&ixG3Som~u-gmGdO}r!=+X&fkCI(a_%=?oYYg{i zij)>mw?N$e4;r7u7cRh;(;sKJ*&S}w1H-u>X^mahfYniYybb=Iqt8+B<}JlNg&%z( z<}0i{3a*V=vm%fTz1hQ9-VE0F1e<$+6&__=yJY3uYa{+4W)E5X_!I`R_!# zX#BWXTzDc3Rkd5WIyOkX-BRs1P~Cn(+fmgT255CwYxRa`XV=x*ey{G5TrKZDI)kgN zUR0kh{1^PXT6SzrHq^#V`{%VmyEpisR#D>${uQlPJ=#~-=0ba*IyOR_>aD$63ybQg z1CHXC0#&Xsi`R;c!6Xy1O`5{7w%G1Jcw>vc)4{+4TaJT&kvPf{$_;3O9>`=+PBc+A z9iBm%ynBmA8NS>^a$a+4Je{c$PjpDmYkDQ&Nh|Ep z9HsANV5FG53JWa6gCKO}A}#_=hX|<-nO_mIJ*}h}a>@Q0j^mAqul=Gs7ZG+{EUakhvZ&UPod)f7lwN??|R82UzjAKz6Q*m9^pT7O^+`xKS=d zwNoxRz^U1a=L<60D#z}m*#sQ@zPQ1bK?hIc#A(s80=W7>65m7cxncIpii z3O7{u*wQ7gdb^NOLv_L&%AKIflfR$LXtyBEe?p^6t7@ZdYmzL=@R8(|LnGJI^;F0? zOR_7${5{F+{|C9nyyEfSrSnpGpabCz71k2kCi8y7;nozs)*Y_4<*#SK#B>(*m%4Od zVh!Duy`M?gC7E6TuINO8t3_Xb)a@oD8A(2qT_Z*JXX^XTqK5l%LH#mY9T~3f{!ev2 zq7JRlj?7kbqqRBKLS}6wd!+sxX(PeSleO**QIcxqlmD*I|NZ(r?V3mt5v6^xS@>pa zuLcX*1}hcd-|5=iEuvGfcA2B-yHfkjM%cw`SzqD)Q#+=EI50`AKT-@*)%N|w?IXh1 zOQfvAaqGpC!4!H}$lH+5NztGToP)&W=WKg-WbjSnJ-lG*ROLVnJU^#&O@sGu zmGav#NK(x+K(>doNLb>fc{dmqtk9TcQuDEzbF-;kXH8vsLC#PXq+zs&64x2?U+^_2 z#CJ!&xWCAM$Iksy{o1e}@oFPma2u}%jHMUN)cPw?W|V^eiibnhDM2Fith)L?F{?st zsw*CK6Z0$84IPEAB0^>fxn7+N5!Ij7)o(UR;TIoG0aG!gIc^-LY-#O-yYB^nM4vuCBIKG+&W95 z97e97U)eC(oElt&sdZ?RAMARIl4_D2jT;>xVH{d@f{rb4%58d8EFL@2iyNX%Jqp<) zCRSikys*B3w{DB(q4-{+6(-=dI_TdBPYy=AOffzH2P_l4OHsBVZ}O*G`_yJ8FtCrR zNd$8P_23*fq>Vbinz0e;#J>EJuUa{RyXC5e-u!2!x^zE()<@W$;ii|x@nUZ1f$R_8 zL%6e%GCz-`Q+looj2x!Cehwe3m9oW5eoez4EGCSP_T&S!tmqz>WdCcOm37e|-N>tN z)62Gs`UOAT;bYpMvnxL|U##xVmHX=KN9@cHl}}~iC$w2tVNpNrO-o29slL9SG7GAM z+S4nw`rQ*8IZONcEJns@w;jflO;y>B>bg;tu7+R%3zkh7mCKPd~0ZD&!8#T88iJn%6wOI0{L+k zl!5fc93mUh#%!8oMs_Qyr!&R(p*P7SvoKP-n>w79t_H8Yl>8B-!XWQ!hbM!>I#&4< za--xefc2nMUxxG zql=Zu1paD?()Kd%`+|RP;Hh?eQf`eW->y6Bx*8URK|_I3^Ise%tmJwXsxmh^cvR~L zl<>29)Nb_JRvl`LGgnmiPZVtft6hhPSfA>Sz)yosq0S~IjA5u?@u1Or1muh2P zs6VEupR{U1zIxeCw3#NJc?g$$k-AZ=*@-`1iI|?Ww@BspwbI>M4p?3O3&eg&REAW3DGzD@aQ6S~!&zp*5(9)CTbp4a6cUXhUl4|aij znS9Gz$QY}Pn8-5jD!m`E%c@d6fJ^dW6JPGrS0i_s1~N`KP?@$wljEuAL~2U5Dg94r zJXR}Dr)%^qY80Lrl|TBycO~+Mro4IuU*^TuwdSF~%+9i{7vNSqwsr~JUJZYLQcx}p z4I+7e@4{*FMKtok{!`JR70MaG$uOZ?BqGg3|6`(AQ*m~VSZg5OXvDv+B0f{S+gF@_ zqCQ$6KC7y_MYt{&r!NSD&tmLlv2Hk?%oXW}@M>+${eht!(9@B!mtcPbD13&`QejgV z?Hj@tw*jjhwxR%P+4295u`ap%NHBNkpzIo;xOpqmLAUOnvNS|vWue*7L}!AN=0u{- z>&}`c?R7mr)zHaihAD{$bbB}`2Kl;9jg;z4-RY^^bb)U4Aiij?&a6u;H9<4fj1`_# zdZj`0lf1+W`o^)VOQB~vND9j0HxxS$vQari+CD=XAg+mC$8Kl4B7&}kp@nu*ohZl;lkui zQ0i=jDG*T(J|W;U4Q8$eo128oz^oR1+6g<7aA-U{bHgK&&aoKh?14OMoEZ;e|A@dW zuu$-1JY-i0yVEd(V|)xuvc>J2;6@xCm<4)mh}OdV!z9-e?^2SvHn%QNswclMjQT-q zf?yL7=&}6Y^k^OH^MwrSa{u4dH=3{fLKPMKQ&UJ6ytosbI>qaBfdD`Lw>uql5&F_8W&3^o)_U}L~p`?W{A%i+Lgy=_fqkxVBl%$Y!4}LvL#|A>? zIttQ<9p-f46)iHP1INj45RDF`M^p^0x|C?+>@#8VBCIYv=0pTFgXDk z>CPmDel%lgds(;_PzgIyhGUtch%-@s@CmiJCJ*H98@h1*0`d zXEeTgn&@L1+3IdNO;b5cskGF5EaQVdDg%b_t69o0KjwH?X?_h7S17wnNm2^^Ytd(> zRCL6zm-+T+(JzYoI|<80T;D_N_v8KJh2bimtXrdY2A)QT64v+-xx}$EC*jYGnuepR z?OD@CTxMXOujlga;E=$V|A8+bxK@`1f+Cx*x0}_xkLPD9chKP9_6l4HOU1Nj@?f(Cwnn=Gz$w-7iGiK_gdMS^4?#Y(2#h2ZI6~{pIJS*v5*Ag zN4?c=5!D?7wVE^4lRs8h+^F_+td<^Wqtbt+1GPbO{RS}3YpW`Q*iOBFrHi@w$A6Y>6+H*7L%6d2yqc7ve6qlQ zdz4id>2H8CsSS%5qr48}w?-&QzKVyH(#>4+q`tCzo@S__vS)(kjGhwJNaNt582(f` z`zcKyC_^?WX3>gW1I5%=@ps|}?3Hf5Y|U5R=QyN>aNCEZFPL>XqB)DV#zhSv`klB` zi5MzY+z}Nn;$^<-=_+>Fsb7}}^BnD&HKKl$_V)_mu~XaDO}L!bK4>Gl#A~PhRu7)m z{z_6e@6qN4t5cJ-lY>oEH0W zQz$-|i)m|csR1tV$Lq!7!Va_u5SE!3-&7=6lU=@QnM(JgRVyReD5^RyhuG6<*lU>g zQk~zAt!gIXeA)O}V)k7IapG@t?r4JVd-2M1xV|mFvYrN|FzLV#+|F*~fWu;D+MFHT z&rGK=c84{KVhukqr%$ZcQ2x(?w@l);i9GNN4;!I`8!5#(ip^-HL0wG~PsO#jX2Uea z$VT&YqB3KcW^a3?#6VM)!!vx9q%nME8J9d>i}5_I96n_-yUt+c$mZ{&lp@&j6SDL*YqzTBZ?3-nsQOxE^%|yia@NY!Kt+Z2 zzmwXbbJg{x>ih4iWs*8$u(;Y@eAy+WmOHnqX2#cKF1GwC7Qe(hpT(%5RQs-wnw#N8 z5j+p%O<~Dv$m$^EdEU6TkV;z9x}shkp433}9>QPSib?j|)K5IO=6f1qS!4b>5uIMK zgCi*X7_0n5UK?5bGT1+yNuG~u9ag^x4hhiBhUxWKT>($Z;O=-fG#So>GxN#tFrDf2 zhBM8$mjQ%1aqj{ed5EVLP#;+polb{Sxl9V19pgUvBy)4QAIbV1o75bnhv89QplVp! z721VEy%w-BkEBw!xDAE;qYksNe-;f15%L@o^HlvZke=(RBQN4JAMKOjxT2BvdzQ$1 zRsF|D6qi(QC{gEqs{ZYx`d3u{TA@Z+Y9+_x&t9!Oxt;B$K06{N7pR5P@sPXl{)Ar| z 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� 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�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Ⓢ0oyshj|L_@pdVuX>Q0w1U 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

;6r*{C_+>IW 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 F{|5))HK70i literal 0 HcmV?d00001 diff --git a/examples/DemoRunner/Builds/VisualStudio2015/DemoRunner_App.vcxproj b/examples/DemoRunner/Builds/VisualStudio2015/DemoRunner_App.vcxproj index 34b9341edc..0b86ac9981 100644 --- a/examples/DemoRunner/Builds/VisualStudio2015/DemoRunner_App.vcxproj +++ b/examples/DemoRunner/Builds/VisualStudio2015/DemoRunner_App.vcxproj @@ -242,10 +242,10 @@ true - + true - + true @@ -254,6 +254,9 @@ true + + true + true @@ -1427,24 +1430,60 @@ true + + true + + + true + + + true + true true + + true + true - + true true + + true + true + + true + + + true + + + true + + + true + + + true + + + true + + + true + true @@ -2453,10 +2492,10 @@ - + - + @@ -2983,21 +3022,33 @@ - + + + - + - - + + - - + + + + + + + + + + + + diff --git a/examples/DemoRunner/Builds/VisualStudio2015/DemoRunner_App.vcxproj.filters b/examples/DemoRunner/Builds/VisualStudio2015/DemoRunner_App.vcxproj.filters index 9867f02d9b..1ec8388045 100644 --- a/examples/DemoRunner/Builds/VisualStudio2015/DemoRunner_App.vcxproj.filters +++ b/examples/DemoRunner/Builds/VisualStudio2015/DemoRunner_App.vcxproj.filters @@ -374,6 +374,9 @@ {DDF4BA73-8578-406D-21F8-06B9BC70BFEA} + + {73374573-0194-9A6E-461A-A81EEB511C26} + {5DD60D0E-B16A-0BED-EDC4-C56E6960CA9E} @@ -676,10 +679,10 @@ JUCE Modules\juce_audio_basics\synthesisers - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -688,6 +691,9 @@ JUCE Modules\juce_audio_basics\utilities + + JUCE Modules\juce_audio_basics\utilities + JUCE Modules\juce_audio_basics @@ -1915,24 +1921,60 @@ JUCE Modules\juce_dsp\native + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + JUCE Modules\juce_dsp @@ -3141,16 +3183,16 @@ JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -4731,13 +4773,19 @@ JUCE Modules\juce_dsp\native - + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors @@ -4746,15 +4794,15 @@ JUCE Modules\juce_dsp\processors - - JUCE Modules\juce_dsp\processors - - + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors @@ -4767,15 +4815,45 @@ JUCE Modules\juce_dsp\processors - - JUCE Modules\juce_dsp\processors - JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + JUCE Modules\juce_dsp diff --git a/examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj b/examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj index b758445937..55dc65aab8 100644 --- a/examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj +++ b/examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj @@ -242,10 +242,10 @@ true - + true - + true @@ -254,6 +254,9 @@ true + + true + true @@ -1427,24 +1430,60 @@ true + + true + + + true + + + true + true true + + true + true - + true true + + true + true + + true + + + true + + + true + + + true + + + true + + + true + + + true + true @@ -2453,10 +2492,10 @@ - + - + @@ -2983,21 +3022,33 @@ - + + + - + - - + + - - + + + + + + + + + + + + diff --git a/examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj.filters b/examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj.filters index b63a5a9e35..cbab95c68b 100644 --- a/examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj.filters +++ b/examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj.filters @@ -374,6 +374,9 @@ {DDF4BA73-8578-406D-21F8-06B9BC70BFEA} + + {73374573-0194-9A6E-461A-A81EEB511C26} + {5DD60D0E-B16A-0BED-EDC4-C56E6960CA9E} @@ -676,10 +679,10 @@ JUCE Modules\juce_audio_basics\synthesisers - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -688,6 +691,9 @@ JUCE Modules\juce_audio_basics\utilities + + JUCE Modules\juce_audio_basics\utilities + JUCE Modules\juce_audio_basics @@ -1915,24 +1921,60 @@ JUCE Modules\juce_dsp\native + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + JUCE Modules\juce_dsp @@ -3141,16 +3183,16 @@ JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -4731,13 +4773,19 @@ JUCE Modules\juce_dsp\native - + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors @@ -4746,15 +4794,15 @@ JUCE Modules\juce_dsp\processors - - JUCE Modules\juce_dsp\processors - - + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors @@ -4767,15 +4815,45 @@ JUCE Modules\juce_dsp\processors - - JUCE Modules\juce_dsp\processors - JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + JUCE Modules\juce_dsp diff --git a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj index da5e8887eb..2039a25a0d 100644 --- a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj +++ b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj @@ -242,10 +242,10 @@ true - + true - + true @@ -254,6 +254,9 @@ true + + true + true @@ -1427,24 +1430,60 @@ true + + true + + + true + + + true + true true + + true + true - + true true + + true + true + + true + + + true + + + true + + + true + + + true + + + true + + + true + true @@ -2453,10 +2492,10 @@ - + - + @@ -2983,21 +3022,33 @@ - + + + - + - - + + - - + + + + + + + + + + + + diff --git a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters index 6eb8769081..b9f848a1eb 100644 --- a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters +++ b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters @@ -374,6 +374,9 @@ {DDF4BA73-8578-406D-21F8-06B9BC70BFEA} + + {73374573-0194-9A6E-461A-A81EEB511C26} + {5DD60D0E-B16A-0BED-EDC4-C56E6960CA9E} @@ -676,10 +679,10 @@ JUCE Modules\juce_audio_basics\synthesisers - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -688,6 +691,9 @@ JUCE Modules\juce_audio_basics\utilities + + JUCE Modules\juce_audio_basics\utilities + JUCE Modules\juce_audio_basics @@ -1915,24 +1921,60 @@ JUCE Modules\juce_dsp\native + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + JUCE Modules\juce_dsp @@ -3141,16 +3183,16 @@ JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -4731,13 +4773,19 @@ JUCE Modules\juce_dsp\native - + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors @@ -4746,15 +4794,15 @@ JUCE Modules\juce_dsp\processors - - JUCE Modules\juce_dsp\processors - - + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors @@ -4767,15 +4815,45 @@ JUCE Modules\juce_dsp\processors - - JUCE Modules\juce_dsp\processors - JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + JUCE Modules\juce_dsp diff --git a/examples/Plugins/DSPModulePluginDemo.h b/examples/Plugins/DSPModulePluginDemo.h index f1ea735558..51fc046248 100644 --- a/examples/Plugins/DSPModulePluginDemo.h +++ b/examples/Plugins/DSPModulePluginDemo.h @@ -27,7 +27,7 @@ version: 1.0.0 vendor: JUCE website: http://juce.com - description: Audio plugin using the DSP module. + description: An audio plugin using the DSP module. dependencies: juce_audio_basics, juce_audio_devices, juce_audio_formats, juce_audio_plugin_client, juce_audio_processors, @@ -50,516 +50,1835 @@ #include "../Assets/DemoUtilities.h" -//============================================================================== -struct ParameterSlider : public Slider, - public Timer +namespace ID { - ParameterSlider (AudioProcessorParameter& p) - : Slider (p.getName (256)), param (p) - { - setRange (0.0, 1.0, 0.0); - startTimerHz (30); - updateSliderPos(); - } + #define PARAMETER_ID(str) constexpr const char* str { #str }; - void valueChanged() override - { - if (isMouseButtonDown()) - param.setValueNotifyingHost ((float) Slider::getValue()); - else - param.setValue ((float) Slider::getValue()); - } + PARAMETER_ID (inputGain) + PARAMETER_ID (outputGain) + PARAMETER_ID (pan) + PARAMETER_ID (distortionEnabled) + PARAMETER_ID (distortionType) + PARAMETER_ID (distortionOversampler) + PARAMETER_ID (distortionLowpass) + PARAMETER_ID (distortionHighpass) + PARAMETER_ID (distortionInGain) + PARAMETER_ID (distortionCompGain) + PARAMETER_ID (distortionMix) + PARAMETER_ID (multiBandEnabled) + PARAMETER_ID (multiBandFreq) + PARAMETER_ID (multiBandLowVolume) + PARAMETER_ID (multiBandHighVolume) + PARAMETER_ID (compressorEnabled) + PARAMETER_ID (compressorThreshold) + PARAMETER_ID (compressorRatio) + PARAMETER_ID (compressorAttack) + PARAMETER_ID (compressorRelease) + PARAMETER_ID (noiseGateEnabled) + PARAMETER_ID (noiseGateThreshold) + PARAMETER_ID (noiseGateRatio) + PARAMETER_ID (noiseGateAttack) + PARAMETER_ID (noiseGateRelease) + PARAMETER_ID (limiterEnabled) + PARAMETER_ID (limiterThreshold) + PARAMETER_ID (limiterRelease) + PARAMETER_ID (directDelayEnabled) + PARAMETER_ID (directDelayType) + PARAMETER_ID (directDelayValue) + PARAMETER_ID (directDelaySmoothing) + PARAMETER_ID (directDelayMix) + PARAMETER_ID (delayEffectEnabled) + PARAMETER_ID (delayEffectType) + PARAMETER_ID (delayEffectValue) + PARAMETER_ID (delayEffectSmoothing) + PARAMETER_ID (delayEffectLowpass) + PARAMETER_ID (delayEffectFeedback) + PARAMETER_ID (delayEffectMix) + PARAMETER_ID (phaserEnabled) + PARAMETER_ID (phaserRate) + PARAMETER_ID (phaserDepth) + PARAMETER_ID (phaserCentreFrequency) + PARAMETER_ID (phaserFeedback) + PARAMETER_ID (phaserMix) + PARAMETER_ID (chorusEnabled) + PARAMETER_ID (chorusRate) + PARAMETER_ID (chorusDepth) + PARAMETER_ID (chorusCentreDelay) + PARAMETER_ID (chorusFeedback) + PARAMETER_ID (chorusMix) + PARAMETER_ID (ladderEnabled) + PARAMETER_ID (ladderCutoff) + PARAMETER_ID (ladderResonance) + PARAMETER_ID (ladderDrive) + PARAMETER_ID (ladderMode) - void timerCallback() override { updateSliderPos(); } + #undef PARAMETER_ID +} - void startedDragging() override { param.beginChangeGesture(); } - void stoppedDragging() override { param.endChangeGesture(); } +template +constexpr void forEach (Func&& func, Items&&... items) + noexcept (noexcept (std::initializer_list { (func (std::forward (items)), 0)... })) +{ + (void) std::initializer_list { ((void) func (std::forward (items)), 0)... }; +} - double getValueFromText (const String& text) override { return param.getValueForText (text); } - String getTextFromValue (double value) override { return param.getText ((float) value, 1024) + " " + param.getLabel(); } +template +void addAllAndMakeVisible (Component& target, Components&... children) +{ + forEach ([&] (Component& child) { target.addAndMakeVisible (child); }, children...); +} - void updateSliderPos() - { - auto newValue = param.getValue(); +template +void prepareAll (const dsp::ProcessSpec& spec, Processors&... processors) +{ + forEach ([&] (auto& proc) { proc.prepare (spec); }, processors...); +} - if (newValue != (float) Slider::getValue() && ! isMouseButtonDown()) - Slider::setValue (newValue); - } - - AudioProcessorParameter& param; -}; +template +void resetAll (Processors&... processors) +{ + forEach ([] (auto& proc) { proc.reset(); }, processors...); +} //============================================================================== -/** - This class handles the audio processing for the DSP module plugin demo. -*/ -class DspModulePluginDemoAudioProcessor : public AudioProcessor +class DspModulePluginDemo : public AudioProcessor, + private ValueTree::Listener { public: - //============================================================================== - DspModulePluginDemoAudioProcessor() - : AudioProcessor (BusesProperties().withInput ("Input", AudioChannelSet::stereo(), true) - .withOutput ("Output", AudioChannelSet::stereo(), true)), - lowPassFilter (dsp::IIR::Coefficients::makeFirstOrderLowPass (48000.0, 20000.0f)), - highPassFilter (dsp::IIR::Coefficients::makeFirstOrderHighPass (48000.0, 20.0f)), - waveShapers { { std::tanh }, { dsp::FastMathApproximations::tanh } }, - clipping { clip } + DspModulePluginDemo() { - // Oversampling 2 times with IIR filtering - oversampling.reset (new dsp::Oversampling (2, 1, dsp::Oversampling::filterHalfBandPolyphaseIIR, false)); + apvts.state.addListener (this); - addParameter (inputVolumeParam = new AudioParameterFloat ("INPUT", "Input Volume", { 0.0f, 60.0f, 0.0f, 1.0f }, 0.0f, "dB")); - addParameter (highPassFilterFreqParam = new AudioParameterFloat ("HPFREQ", "Pre Highpass Freq.", { 20.0f, 20000.0f, 0.0f, 0.5f }, 20.0f, "Hz")); - addParameter (lowPassFilterFreqParam = new AudioParameterFloat ("LPFREQ", "Post Lowpass Freq.", { 20.0f, 20000.0f, 0.0f, 0.5f }, 20000.0f, "Hz")); + forEach ([] (dsp::Gain& gain) { gain.setRampDurationSeconds (0.05); }, + dsp::get (chain), + dsp::get (chain)); - addParameter (stereoParam = new AudioParameterChoice ("STEREO", "Stereo Processing", { "Always mono", "Yes" }, 1)); - addParameter (slopeParam = new AudioParameterChoice ("SLOPE", "Slope", { "-6 dB / octave", "-12 dB / octave" }, 0)); - addParameter (waveshaperParam = new AudioParameterChoice ("WVSHP", "Waveshaper", { "std::tanh", "Fast tanh approx." }, 0)); - - addParameter (cabinetTypeParam = new AudioParameterChoice ("CABTYPE", "Cabinet Type", { "Guitar amplifier 8'' cabinet ", - "Cassette recorder cabinet" }, 0)); - - addParameter (cabinetSimParam = new AudioParameterBool ("CABSIM", "Cabinet Sim", false)); - addParameter (oversamplingParam = new AudioParameterBool ("OVERS", "Oversampling", false)); - - addParameter (outputVolumeParam = new AudioParameterFloat ("OUTPUT", "Output Volume", { -40.0f, 40.0f, 0.0f, 1.0f }, 0.0f, "dB")); - - cabinetType.set (0); + dsp::get (chain).setRule (dsp::PannerRule::linear); } //============================================================================== - bool isBusesLayoutSupported (const BusesLayout& layouts) const override - { - // This is the place where you check if the layout is supported. - // In this template code we only support mono or stereo. - if (layouts.getMainOutputChannelSet() != AudioChannelSet::mono() && layouts.getMainOutputChannelSet() != AudioChannelSet::stereo()) - return false; - - // This checks if the input layout matches the output layout - if (layouts.getMainOutputChannelSet() != layouts.getMainInputChannelSet()) - return false; - - return true; - } - void prepareToPlay (double sampleRate, int samplesPerBlock) override { - auto channels = static_cast (jmin (getMainBusNumInputChannels(), getMainBusNumOutputChannels())); - dsp::ProcessSpec spec { sampleRate, static_cast (samplesPerBlock), channels }; + if (jmin (getTotalNumInputChannels(), getTotalNumOutputChannels()) == 0) + return; - lowPassFilter .prepare (spec); - highPassFilter.prepare (spec); + chain.prepare ({ sampleRate, (uint32) samplesPerBlock, (uint32) getTotalNumOutputChannels() }); - inputVolume .prepare (spec); - outputVolume.prepare (spec); - - convolution.prepare (spec); - cabinetType.set (-1); - - oversampling->initProcessing (static_cast (samplesPerBlock)); - - updateParameters(); reset(); } + void reset() override + { + chain.reset(); + update(); + } + void releaseResources() override {} - void processBlock (AudioBuffer& inoutBuffer, MidiBuffer&) override + void processBlock (AudioBuffer& buffer, MidiBuffer&) override { - auto totalNumInputChannels = getTotalNumInputChannels(); - auto totalNumOutputChannels = getTotalNumOutputChannels(); + if (jmin (getTotalNumInputChannels(), getTotalNumOutputChannels()) == 0) + return; - auto numSamples = inoutBuffer.getNumSamples(); + ScopedNoDenormals noDenormals; - for (auto i = jmin (2, totalNumInputChannels); i < totalNumOutputChannels; ++i) - inoutBuffer.clear (i, 0, numSamples); + if (requiresUpdate.load()) + update(); - updateParameters(); + const auto totalNumInputChannels = getTotalNumInputChannels(); + const auto totalNumOutputChannels = getTotalNumOutputChannels(); - dsp::AudioBlock block (inoutBuffer); + const auto numChannels = jmax (totalNumInputChannels, totalNumOutputChannels); - if (stereoParam->getIndex() == 1) - { - // Stereo processing mode: - if (block.getNumChannels() > 2) - block = block.getSubsetChannelBlock (0, 2); - - process (dsp::ProcessContextReplacing (block)); - } - else - { - // Mono processing mode: - auto firstChan = block.getSingleChannelBlock (0); - - process (dsp::ProcessContextReplacing (firstChan)); - - for (size_t chan = 1; chan < block.getNumChannels(); ++chan) - block.getSingleChannelBlock (chan).copyFrom (firstChan); - } + auto inoutBlock = dsp::AudioBlock (buffer).getSubsetChannelBlock (0, (size_t) numChannels); + chain.process (dsp::ProcessContextReplacing (inoutBlock)); } - using AudioProcessor::processBlock; + void processBlock (AudioBuffer&, MidiBuffer&) override {} - void reset() override + //============================================================================== + AudioProcessorEditor* createEditor() override { return nullptr; } + bool hasEditor() const override { return false; } + + //============================================================================== + const String getName() const override { return "DSPModulePluginDemo"; } + + bool acceptsMidi() const override { return false; } + bool producesMidi() const override { return false; } + bool isMidiEffect() const override { return false; } + + double getTailLengthSeconds() const override { return 0.0; } + + //============================================================================== + int getNumPrograms() override { return 1; } + int getCurrentProgram() override { return 0; } + void setCurrentProgram (int) override {} + const String getProgramName (int) override { return {}; } + + void changeProgramName (int, const String&) override {} + + //============================================================================== + void getStateInformation (MemoryBlock& destData) override { - lowPassFilter .reset(); - highPassFilter.reset(); - convolution .reset(); - oversampling->reset(); + copyXmlToBinary (*apvts.copyState().createXml(), destData); + } + + void setStateInformation (const void* data, int sizeInBytes) override + { + apvts.replaceState (ValueTree::fromXml (*getXmlFromBinary (data, sizeInBytes))); } //============================================================================== - bool hasEditor() const override { return true; } + AudioProcessorValueTreeState apvts { *this, nullptr, "state", createParameters() }; - AudioProcessorEditor* createEditor() override - { - return new DspModulePluginDemoAudioProcessorEditor (*this); - } - - //============================================================================== - bool acceptsMidi() const override { return false; } - bool producesMidi() const override { return false; } - const String getName() const override { return "DSPModulePluginDemo"; } - double getTailLengthSeconds() const override { return 0.0; } - - //============================================================================== - int getNumPrograms() override { return 1; } - int getCurrentProgram() override { return 0; } - void setCurrentProgram (int) override {} - const String getProgramName (int) override { return {}; } - void changeProgramName (int, const String&) override {} - - //============================================================================== - void getStateInformation (MemoryBlock&) override {} - void setStateInformation (const void*, int) override {} - - //============================================================================== - void updateParameters() - { - auto newOversampling = oversamplingParam->get(); - if (newOversampling != audioCurrentlyOversampled) - { - audioCurrentlyOversampled = newOversampling; - oversampling->reset(); - } - - //============================================================================== - auto inputdB = Decibels::decibelsToGain (inputVolumeParam->get()); - auto outputdB = Decibels::decibelsToGain (outputVolumeParam->get()); - - if (inputVolume .getGainLinear() != inputdB) inputVolume.setGainLinear (inputdB); - if (outputVolume.getGainLinear() != outputdB) outputVolume.setGainLinear (outputdB); - - auto newSlopeType = slopeParam->getIndex(); - - if (newSlopeType == 0) - { - *lowPassFilter .state = *dsp::IIR::Coefficients::makeFirstOrderLowPass (getSampleRate(), lowPassFilterFreqParam->get()); - *highPassFilter.state = *dsp::IIR::Coefficients::makeFirstOrderHighPass (getSampleRate(), highPassFilterFreqParam->get()); - } - else - { - *lowPassFilter .state = *dsp::IIR::Coefficients::makeLowPass (getSampleRate(), lowPassFilterFreqParam->get()); - *highPassFilter.state = *dsp::IIR::Coefficients::makeHighPass (getSampleRate(), highPassFilterFreqParam->get()); - } - - //============================================================================== - auto type = cabinetTypeParam->getIndex(); - auto currentType = cabinetType.get(); - - if (type != currentType) - { - cabinetType.set (type); - - auto maxSize = static_cast (roundToInt (getSampleRate() * (8192.0 / 44100.0))); - auto assetName = (type == 0 ? "Impulse1.wav" : "Impulse2.wav"); - - if (auto assetInputStream = createAssetInputStream (assetName)) - { - currentCabinetData.reset(); - assetInputStream->readIntoMemoryBlock (currentCabinetData); - - convolution.loadImpulseResponse (currentCabinetData.getData(), currentCabinetData.getSize(), - false, true, maxSize); - } - } - - cabinetIsBypassed = ! cabinetSimParam->get(); - - } - - static inline float clip (float x) { return jmax (-1.0f, jmin (1.0f, x)); } - - //============================================================================== - AudioParameterFloat* inputVolumeParam; - AudioParameterFloat* outputVolumeParam; - AudioParameterFloat* lowPassFilterFreqParam; - AudioParameterFloat* highPassFilterFreqParam; - - AudioParameterChoice* stereoParam; - AudioParameterChoice* slopeParam; - AudioParameterChoice* waveshaperParam; - AudioParameterChoice* cabinetTypeParam; - - AudioParameterBool* cabinetSimParam; - AudioParameterBool* oversamplingParam; + // We store this here so that the editor retains its state if it is closed and reopened + int indexTab = 0; private: //============================================================================== - /** - This is the editor component that will be displayed. - */ - class DspModulePluginDemoAudioProcessorEditor : public AudioProcessorEditor + void valueTreePropertyChanged (ValueTree&, const Identifier&) override + { + requiresUpdate.store (true); + } + + // This struct holds references to the raw parameter values, so that we don't have to look up + // the parameters (involving string comparisons and map lookups!) every time a parameter + // changes. + struct ParameterValues + { + explicit ParameterValues (AudioProcessorValueTreeState& state) + : inputGain (*state.getRawParameterValue (ID::inputGain)), + outputGain (*state.getRawParameterValue (ID::outputGain)), + pan (*state.getRawParameterValue (ID::pan)), + distortionEnabled (*state.getRawParameterValue (ID::distortionEnabled)), + distortionType (*state.getRawParameterValue (ID::distortionType)), + distortionOversampler (*state.getRawParameterValue (ID::distortionOversampler)), + distortionLowpass (*state.getRawParameterValue (ID::distortionLowpass)), + distortionHighpass (*state.getRawParameterValue (ID::distortionHighpass)), + distortionInGain (*state.getRawParameterValue (ID::distortionInGain)), + distortionCompGain (*state.getRawParameterValue (ID::distortionCompGain)), + distortionMix (*state.getRawParameterValue (ID::distortionMix)), + multiBandEnabled (*state.getRawParameterValue (ID::multiBandEnabled)), + multiBandFreq (*state.getRawParameterValue (ID::multiBandFreq)), + multiBandLowVolume (*state.getRawParameterValue (ID::multiBandLowVolume)), + multiBandHighVolume (*state.getRawParameterValue (ID::multiBandHighVolume)), + compressorEnabled (*state.getRawParameterValue (ID::compressorEnabled)), + compressorThreshold (*state.getRawParameterValue (ID::compressorThreshold)), + compressorRatio (*state.getRawParameterValue (ID::compressorRatio)), + compressorAttack (*state.getRawParameterValue (ID::compressorAttack)), + compressorRelease (*state.getRawParameterValue (ID::compressorRelease)), + noiseGateEnabled (*state.getRawParameterValue (ID::noiseGateEnabled)), + noiseGateThreshold (*state.getRawParameterValue (ID::noiseGateThreshold)), + noiseGateRatio (*state.getRawParameterValue (ID::noiseGateRatio)), + noiseGateAttack (*state.getRawParameterValue (ID::noiseGateAttack)), + noiseGateRelease (*state.getRawParameterValue (ID::noiseGateRelease)), + limiterEnabled (*state.getRawParameterValue (ID::limiterEnabled)), + limiterThreshold (*state.getRawParameterValue (ID::limiterThreshold)), + limiterRelease (*state.getRawParameterValue (ID::limiterRelease)), + directDelayEnabled (*state.getRawParameterValue (ID::directDelayEnabled)), + directDelayType (*state.getRawParameterValue (ID::directDelayType)), + directDelayValue (*state.getRawParameterValue (ID::directDelayValue)), + directDelaySmoothing (*state.getRawParameterValue (ID::directDelaySmoothing)), + directDelayMix (*state.getRawParameterValue (ID::directDelayMix)), + delayEffectEnabled (*state.getRawParameterValue (ID::delayEffectEnabled)), + delayEffectType (*state.getRawParameterValue (ID::delayEffectType)), + delayEffectValue (*state.getRawParameterValue (ID::delayEffectValue)), + delayEffectSmoothing (*state.getRawParameterValue (ID::delayEffectSmoothing)), + delayEffectLowpass (*state.getRawParameterValue (ID::delayEffectLowpass)), + delayEffectFeedback (*state.getRawParameterValue (ID::delayEffectFeedback)), + delayEffectMix (*state.getRawParameterValue (ID::delayEffectMix)), + phaserEnabled (*state.getRawParameterValue (ID::phaserEnabled)), + phaserRate (*state.getRawParameterValue (ID::phaserRate)), + phaserDepth (*state.getRawParameterValue (ID::phaserDepth)), + phaserCentreFrequency (*state.getRawParameterValue (ID::phaserCentreFrequency)), + phaserFeedback (*state.getRawParameterValue (ID::phaserFeedback)), + phaserMix (*state.getRawParameterValue (ID::phaserMix)), + chorusEnabled (*state.getRawParameterValue (ID::chorusEnabled)), + chorusRate (*state.getRawParameterValue (ID::chorusRate)), + chorusDepth (*state.getRawParameterValue (ID::chorusDepth)), + chorusCentreDelay (*state.getRawParameterValue (ID::chorusCentreDelay)), + chorusFeedback (*state.getRawParameterValue (ID::chorusFeedback)), + chorusMix (*state.getRawParameterValue (ID::chorusMix)), + ladderEnabled (*state.getRawParameterValue (ID::ladderEnabled)), + ladderCutoff (*state.getRawParameterValue (ID::ladderCutoff)), + ladderResonance (*state.getRawParameterValue (ID::ladderResonance)), + ladderDrive (*state.getRawParameterValue (ID::ladderDrive)), + ladderMode (*state.getRawParameterValue (ID::ladderMode)) + {} + + std::atomic& inputGain; + std::atomic& outputGain; + std::atomic& pan; + + std::atomic& distortionEnabled; + std::atomic& distortionType; + std::atomic& distortionOversampler; + std::atomic& distortionLowpass; + std::atomic& distortionHighpass; + std::atomic& distortionInGain; + std::atomic& distortionCompGain; + std::atomic& distortionMix; + + std::atomic& multiBandEnabled; + std::atomic& multiBandFreq; + std::atomic& multiBandLowVolume; + std::atomic& multiBandHighVolume; + + std::atomic& compressorEnabled; + std::atomic& compressorThreshold; + std::atomic& compressorRatio; + std::atomic& compressorAttack; + std::atomic& compressorRelease; + + std::atomic& noiseGateEnabled; + std::atomic& noiseGateThreshold; + std::atomic& noiseGateRatio; + std::atomic& noiseGateAttack; + std::atomic& noiseGateRelease; + + std::atomic& limiterEnabled; + std::atomic& limiterThreshold; + std::atomic& limiterRelease; + + std::atomic& directDelayEnabled; + std::atomic& directDelayType; + std::atomic& directDelayValue; + std::atomic& directDelaySmoothing; + std::atomic& directDelayMix; + + std::atomic& delayEffectEnabled; + std::atomic& delayEffectType; + std::atomic& delayEffectValue; + std::atomic& delayEffectSmoothing; + std::atomic& delayEffectLowpass; + std::atomic& delayEffectFeedback; + std::atomic& delayEffectMix; + + std::atomic& phaserEnabled; + std::atomic& phaserRate; + std::atomic& phaserDepth; + std::atomic& phaserCentreFrequency; + std::atomic& phaserFeedback; + std::atomic& phaserMix; + + std::atomic& chorusEnabled; + std::atomic& chorusRate; + std::atomic& chorusDepth; + std::atomic& chorusCentreDelay; + std::atomic& chorusFeedback; + std::atomic& chorusMix; + + std::atomic& ladderEnabled; + std::atomic& ladderCutoff; + std::atomic& ladderResonance; + std::atomic& ladderDrive; + std::atomic& ladderMode; + }; + + ParameterValues parameters { apvts }; + + //============================================================================== + void update() { - public: - //============================================================================== - DspModulePluginDemoAudioProcessorEditor (DspModulePluginDemoAudioProcessor& p) - : AudioProcessorEditor (&p), - dspProcessor (p), - inputVolumeLabel ({}, dspProcessor.inputVolumeParam->name), - outputVolumeLabel ({}, dspProcessor.outputVolumeParam->name), - lowPassFilterFreqLabel ({}, dspProcessor.lowPassFilterFreqParam->name), - highPassFilterFreqLabel ({}, dspProcessor.highPassFilterFreqParam->name), - stereoLabel ({}, dspProcessor.stereoParam->name), - slopeLabel ({}, dspProcessor.slopeParam->name), - waveshaperLabel ({}, dspProcessor.waveshaperParam->name), - cabinetTypeLabel ({}, dspProcessor.cabinetTypeParam->name) { - //============================================================================== - inputVolumeSlider .reset (new ParameterSlider (*dspProcessor.inputVolumeParam)); - outputVolumeSlider .reset (new ParameterSlider (*dspProcessor.outputVolumeParam)); - lowPassFilterFreqSlider .reset (new ParameterSlider (*dspProcessor.lowPassFilterFreqParam)); - highPassFilterFreqSlider.reset (new ParameterSlider (*dspProcessor.highPassFilterFreqParam)); + DistortionProcessor& distortion = dsp::get (chain); - addAndMakeVisible (inputVolumeSlider .get()); - addAndMakeVisible (outputVolumeSlider .get()); - addAndMakeVisible (lowPassFilterFreqSlider .get()); - addAndMakeVisible (highPassFilterFreqSlider.get()); + if (distortion.currentIndexOversampling != parameters.distortionOversampler.load()) + { + distortion.currentIndexOversampling = roundToInt (parameters.distortionOversampler.load()); + prepareToPlay (getSampleRate(), getBlockSize()); + return; + } - addAndMakeVisible (inputVolumeLabel); - inputVolumeLabel.setJustificationType (Justification::centredLeft); - inputVolumeLabel.attachToComponent (inputVolumeSlider.get(), true); - - addAndMakeVisible (outputVolumeLabel); - outputVolumeLabel.setJustificationType (Justification::centredLeft); - outputVolumeLabel.attachToComponent (outputVolumeSlider.get(), true); - - addAndMakeVisible (lowPassFilterFreqLabel); - lowPassFilterFreqLabel.setJustificationType (Justification::centredLeft); - lowPassFilterFreqLabel.attachToComponent (lowPassFilterFreqSlider.get(), true); - - addAndMakeVisible (highPassFilterFreqLabel); - highPassFilterFreqLabel.setJustificationType (Justification::centredLeft); - highPassFilterFreqLabel.attachToComponent (highPassFilterFreqSlider.get(), true); - - //============================================================================== - addAndMakeVisible (stereoBox); - - auto i = 1; - for (auto choice : dspProcessor.stereoParam->choices) - stereoBox.addItem (choice, i++); - - stereoBox.onChange = [this] { dspProcessor.stereoParam->operator= (stereoBox.getSelectedItemIndex()); }; - stereoBox.setSelectedId (dspProcessor.stereoParam->getIndex() + 1); - - addAndMakeVisible (stereoLabel); - stereoLabel.setJustificationType (Justification::centredLeft); - stereoLabel.attachToComponent (&stereoBox, true); - - //============================================================================== - addAndMakeVisible(slopeBox); - - i = 1; - for (auto choice : dspProcessor.slopeParam->choices) - slopeBox.addItem(choice, i++); - - slopeBox.onChange = [this] { dspProcessor.slopeParam->operator= (slopeBox.getSelectedItemIndex()); }; - slopeBox.setSelectedId(dspProcessor.slopeParam->getIndex() + 1); - - addAndMakeVisible(slopeLabel); - slopeLabel.setJustificationType(Justification::centredLeft); - slopeLabel.attachToComponent(&slopeBox, true); - - //============================================================================== - addAndMakeVisible (waveshaperBox); - - i = 1; - for (auto choice : dspProcessor.waveshaperParam->choices) - waveshaperBox.addItem (choice, i++); - - waveshaperBox.onChange = [this] { dspProcessor.waveshaperParam->operator= (waveshaperBox.getSelectedItemIndex()); }; - waveshaperBox.setSelectedId (dspProcessor.waveshaperParam->getIndex() + 1); - - addAndMakeVisible (waveshaperLabel); - waveshaperLabel.setJustificationType (Justification::centredLeft); - waveshaperLabel.attachToComponent (&waveshaperBox, true); - - //============================================================================== - addAndMakeVisible (cabinetTypeBox); - - i = 1; - for (auto choice : dspProcessor.cabinetTypeParam->choices) - cabinetTypeBox.addItem (choice, i++); - - cabinetTypeBox.onChange = [this] { dspProcessor.cabinetTypeParam->operator= (cabinetTypeBox.getSelectedItemIndex()); }; - cabinetTypeBox.setSelectedId (dspProcessor.cabinetTypeParam->getIndex() + 1); - - addAndMakeVisible (cabinetTypeLabel); - cabinetTypeLabel.setJustificationType (Justification::centredLeft); - cabinetTypeLabel.attachToComponent (&cabinetTypeBox, true); - - //============================================================================== - addAndMakeVisible (cabinetSimButton); - cabinetSimButton.onClick = [this] { dspProcessor.cabinetSimParam->operator= (cabinetSimButton.getToggleState()); }; - cabinetSimButton.setButtonText (dspProcessor.cabinetSimParam->name); - cabinetSimButton.setToggleState (dspProcessor.cabinetSimParam->get(), NotificationType::dontSendNotification); - - addAndMakeVisible (oversamplingButton); - oversamplingButton.onClick = [this] { dspProcessor.oversamplingParam->operator= (oversamplingButton.getToggleState()); }; - oversamplingButton.setButtonText (dspProcessor.oversamplingParam->name); - oversamplingButton.setToggleState (dspProcessor.oversamplingParam->get(), NotificationType::dontSendNotification); - - //============================================================================== - setSize (600, 400); + distortion.currentIndexWaveshaper = roundToInt (parameters.distortionType.load()); + distortion.lowpass .setCutoffFrequency (parameters.distortionLowpass); + distortion.highpass.setCutoffFrequency (parameters.distortionHighpass); + distortion.distGain.setGainDecibels (parameters.distortionInGain); + distortion.compGain.setGainDecibels (parameters.distortionCompGain); + distortion.mixer.setWetMixProportion (parameters.distortionMix / 100.0f); + dsp::setBypassed (chain, parameters.distortionEnabled.load() == 0.0f); } - //============================================================================== - void paint (Graphics& g) override + dsp::get (chain).setGainDecibels (parameters.inputGain); + dsp::get (chain).setGainDecibels (parameters.outputGain); + dsp::get (chain).setPan (parameters.pan / 100.0f); + { - g.setColour (getLookAndFeel().findColour (ResizableWindow::backgroundColourId)); - g.fillAll(); + MultiBandProcessor& multiband = dsp::get (chain); + const auto multibandFreq = parameters.multiBandFreq.load(); + multiband.lowpass .setCutoffFrequency (multibandFreq); + multiband.highpass.setCutoffFrequency (multibandFreq); + const auto enabled = parameters.multiBandEnabled.load() != 0.0f; + multiband.lowVolume .setGainDecibels (enabled ? parameters.multiBandLowVolume .load() : 0.0f); + multiband.highVolume.setGainDecibels (enabled ? parameters.multiBandHighVolume.load() : 0.0f); + dsp::setBypassed (chain, ! enabled); + } + + { + dsp::Compressor& compressor = dsp::get (chain); + compressor.setThreshold (parameters.compressorThreshold); + compressor.setRatio (parameters.compressorRatio); + compressor.setAttack (parameters.compressorAttack); + compressor.setRelease (parameters.compressorRelease); + dsp::setBypassed (chain, parameters.compressorEnabled.load() == 0.0f); + } + + { + dsp::NoiseGate& noiseGate = dsp::get (chain); + noiseGate.setThreshold (parameters.noiseGateThreshold); + noiseGate.setRatio (parameters.noiseGateRatio); + noiseGate.setAttack (parameters.noiseGateAttack); + noiseGate.setRelease (parameters.noiseGateRelease); + dsp::setBypassed (chain, parameters.noiseGateEnabled.load() == 0.0f); + } + + { + dsp::Limiter& limiter = dsp::get (chain); + limiter.setThreshold (parameters.limiterThreshold); + limiter.setRelease (parameters.limiterRelease); + dsp::setBypassed (chain, parameters.limiterEnabled.load() == 0.0f); + } + + { + DirectDelayProcessor& delay = dsp::get (chain); + delay.delayLineDirectType = roundToInt (parameters.directDelayType.load()); + + std::fill (delay.delayDirectValue.begin(), + delay.delayDirectValue.end(), + (double) parameters.directDelayValue); + + delay.smoothFilter.setCutoffFrequency (1000.0 / parameters.directDelaySmoothing); + delay.mixer.setWetMixProportion (parameters.directDelayMix / 100.0f); + dsp::setBypassed (chain, parameters.directDelayEnabled.load() == 0.0f); + } + + { + DelayEffectProcessor& delay = dsp::get (chain); + delay.delayEffectType = roundToInt (parameters.delayEffectType.load()); + + std::fill (delay.delayEffectValue.begin(), + delay.delayEffectValue.end(), + (double) parameters.delayEffectValue / 1000.0 * getSampleRate()); + + const auto feedbackGain = Decibels::decibelsToGain (parameters.delayEffectFeedback.load(), -100.0f); + + for (auto& volume : delay.delayFeedbackVolume) + volume.setTargetValue (feedbackGain); + + delay.smoothFilter.setCutoffFrequency (1000.0 / parameters.delayEffectSmoothing); + delay.lowpass.setCutoffFrequency (parameters.delayEffectLowpass); + delay.mixer.setWetMixProportion (parameters.delayEffectMix / 100.0f); + dsp::setBypassed (chain, parameters.delayEffectEnabled.load() == 0.0f); + } + + { + dsp::Phaser& phaser = dsp::get (chain); + phaser.setRate (parameters.phaserRate); + phaser.setDepth (parameters.phaserDepth / 100.0f); + phaser.setCentreFrequency (parameters.phaserCentreFrequency); + phaser.setFeedback (parameters.phaserFeedback / 100.0f * 0.95f); + phaser.setMix (parameters.phaserMix / 100.0f); + dsp::setBypassed (chain, parameters.phaserEnabled.load() == 0.0f); + } + + { + dsp::Chorus& chorus = dsp::get (chain); + chorus.setRate (parameters.chorusRate); + chorus.setDepth (parameters.chorusDepth / 100.0f); + chorus.setCentreDelay (parameters.chorusCentreDelay); + chorus.setFeedback (parameters.chorusFeedback / 100.0f * 0.95f); + chorus.setMix (parameters.chorusMix / 100.0f); + dsp::setBypassed (chain, parameters.chorusEnabled.load() == 0.0f); + } + + { + dsp::LadderFilter& ladder = dsp::get (chain); + + ladder.setCutoffFrequencyHz (parameters.ladderCutoff); + ladder.setResonance (parameters.ladderResonance / 100.0f); + ladder.setDrive (Decibels::decibelsToGain (parameters.ladderDrive.load())); + + ladder.setMode ([&] + { + switch (roundToInt (parameters.ladderMode.load())) + { + case 0: return dsp::LadderFilterMode::LPF12; + case 1: return dsp::LadderFilterMode::LPF24; + case 2: return dsp::LadderFilterMode::HPF12; + case 3: return dsp::LadderFilterMode::HPF24; + case 4: return dsp::LadderFilterMode::BPF12; + } + + return dsp::LadderFilterMode::BPF24; + }()); + + dsp::setBypassed (chain, parameters.ladderEnabled.load() == 0.0f); + } + + requiresUpdate.store (false); + } + + //============================================================================== + static String getPanningTextForValue (float value) + { + if (value == 0.5f) + return "center"; + + if (value < 0.5f) + return String (roundToInt ((0.5f - value) * 200.0f)) + "%L"; + + return String (roundToInt ((value - 0.5f) * 200.0f)) + "%R"; + } + + static float getPanningValueForText (String strText) + { + if (strText.compareIgnoreCase ("center") == 0 || strText.compareIgnoreCase ("c") == 0) + return 0.5f; + + strText = strText.trim(); + + if (strText.indexOfIgnoreCase ("%L") != -1) + { + auto percentage = (float) strText.substring (0, strText.indexOf ("%")).getDoubleValue(); + return (100.0f - percentage) / 100.0f * 0.5f; + } + + if (strText.indexOfIgnoreCase ("%R") != -1) + { + auto percentage = (float) strText.substring (0, strText.indexOf ("%")).getDoubleValue(); + return percentage / 100.0f * 0.5f + 0.5f; + } + + return 0.5f; + } + + static AudioProcessorValueTreeState::ParameterLayout createParameters() + { + using Parameter = AudioProcessorValueTreeState::Parameter; + + auto valueToTextFunction = [] (float x) { return String (x, 2); }; + auto textToValueFunction = [] (const String& str) { return str.getFloatValue(); }; + + auto valueToTextPanFunction = [] (float x) { return getPanningTextForValue ((x + 100.0f) / 200.0f); }; + auto textToValuePanFunction = [] (const String& str) { return getPanningValueForText (str) * 200.0f - 100.0f; }; + + AudioProcessorValueTreeState::ParameterLayout layout; + + layout.add (std::make_unique (ID::inputGain, + "Input", + "dB", + NormalisableRange (-40.0f, 40.0f), + 0.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::outputGain, + "Output", + "dB", + NormalisableRange (-40.0f, 40.0f), + 0.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::pan, + "Panning", + "", + NormalisableRange (-100.0f, 100.0f), + 0.0f, + valueToTextPanFunction, + textToValuePanFunction)); + + layout.add (std::make_unique (ID::distortionEnabled, "Distortion", true, "")); + + layout.add (std::make_unique (ID::distortionType, + "Waveshaper", + StringArray { "std::tanh", "Approx. tanh" }, + 0)); + + layout.add (std::make_unique (ID::distortionInGain, + "Gain", + "dB", + NormalisableRange (-40.0f, 40.0f), + 0.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::distortionLowpass, + "Post Low-pass", + "Hz", + NormalisableRange (20.0f, 22000.0f, 0.0f, 0.25f), + 22000.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::distortionHighpass, + "Pre High-pass", + "Hz", + NormalisableRange (20.0f, 22000.0f, 0.0f, 0.25f), + 20.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::distortionCompGain, + "Compensat.", + "dB", + NormalisableRange (-40.0f, 40.0f), + 0.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::distortionMix, + "Mix", + "%", + NormalisableRange (0.0f, 100.0f), + 100.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::distortionOversampler, + "Oversampling", + StringArray { "2X", + "4X", + "8X", + "2X compensated", + "4X compensated", + "8X compensated" }, + 1)); + + layout.add (std::make_unique (ID::multiBandEnabled, "Multi-band", false, "")); + + layout.add (std::make_unique (ID::multiBandFreq, + "Sep. Freq.", + "Hz", + NormalisableRange (20.0f, 22000.0f, 0.0f, 0.25f), + 2000.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::multiBandLowVolume, + "Low volume", + "dB", + NormalisableRange (-40.0f, 40.0f), + 0.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::multiBandHighVolume, + "High volume", + "dB", + NormalisableRange (-40.0f, 40.0f), + 0.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::compressorEnabled, "Comp.", false, "")); + + layout.add (std::make_unique (ID::compressorThreshold, + "Threshold", + "dB", + NormalisableRange (-100.0f, 0.0f), + 0.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::compressorRatio, + "Ratio", + ":1", + NormalisableRange (1.0f, 100.0f, 0.0f, 0.25f), + 1.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::compressorAttack, + "Attack", + "ms", + NormalisableRange (0.01f, 1000.0f, 0.0f, 0.25f), + 1.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::compressorRelease, + "Release", + "ms", + NormalisableRange (10.0f, 10000.0f, 0.0f, 0.25f), + 100.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::noiseGateEnabled, "Gate", false, "")); + + layout.add (std::make_unique (ID::noiseGateThreshold, + "Threshold", + "dB", + NormalisableRange (-100.0f, 0.0f), + -100.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::noiseGateRatio, + "Ratio", + ":1", + NormalisableRange (1.0f, 100.0f, 0.0f, 0.25f), + 10.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::noiseGateAttack, + "Attack", + "ms", + NormalisableRange (0.01f, 1000.0f, 0.0f, 0.25f), + 1.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::noiseGateRelease, + "Release", + "ms", + NormalisableRange (10.0f, 10000.0f, 0.0f, 0.25f), + 100.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::limiterEnabled, "Limiter", false, "")); + + layout.add (std::make_unique (ID::limiterThreshold, + "Threshold", + "dB", + NormalisableRange (-40.0f, 0.0f), + 0.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::limiterRelease, + "Release", + "ms", + NormalisableRange (10.0f, 10000.0f, 0.0f, 0.25f), + 100.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::directDelayEnabled, "DL Dir.", false, "")); + + layout.add (std::make_unique (ID::directDelayType, + "DL Type", + StringArray { "None", + "Linear", + "Lagrange", + "Thiran" }, + 1)); + + layout.add (std::make_unique (ID::directDelayValue, + "Delay", + "smps", + NormalisableRange (0.0f, 44100.0f), + 0.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::directDelaySmoothing, + "Smooth", + "ms", + NormalisableRange (20.0f, 10000.0f, 0.0f, 0.25f), + 200.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::directDelayMix, + "Delay Mix", + "%", + NormalisableRange (0.0f, 100.0f), + 50.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::delayEffectEnabled, "DL Effect", false, "")); + + layout.add (std::make_unique (ID::delayEffectType, + "DL Type", + StringArray { "None", + "Linear", + "Lagrange", + "Thiran" }, + 1)); + + layout.add (std::make_unique (ID::delayEffectValue, + "Delay", + "ms", + NormalisableRange (0.01f, 1000.0f), + 100.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::delayEffectSmoothing, + "Smooth", + "ms", + NormalisableRange (20.0f, 10000.0f, 0.0f, 0.25f), + 400.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::delayEffectLowpass, + "Low-pass", + "Hz", + NormalisableRange (20.0f, 22000.0f, 0.0f, 0.25f), + 22000.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::delayEffectMix, + "Delay Mix", + "%", + NormalisableRange (0.0f, 100.0f), + 50.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::delayEffectFeedback, + "Feedback", + "dB", + NormalisableRange (-100.0f, 0.0f), + -100.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::phaserEnabled, "Phaser", false, "")); + + layout.add (std::make_unique (ID::phaserRate, + "Rate", + "Hz", + NormalisableRange (0.05f, 20.0f, 0.0f, 0.25f), + 1.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::phaserDepth, + "Depth", + "%", + NormalisableRange (0.0f, 100.0f), + 50.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::phaserCentreFrequency, + "Center", + "Hz", + NormalisableRange (20.0f, 20000.0f, 0.0f, 0.25f), + 600.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::phaserFeedback, + "Feedback", + "%", + NormalisableRange (0.0f, 100.0f), + 50.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::phaserMix, + "Mix", + "%", + NormalisableRange (0.0f, 100.0f), + 50.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::chorusEnabled, "Chorus", false, "")); + + layout.add (std::make_unique (ID::chorusRate, + "Rate", + "Hz", + NormalisableRange (0.05f, 20.0f, 0.0f, 0.25f), + 1.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::chorusDepth, + "Depth", + "%", + NormalisableRange (0.0f, 100.0f), + 50.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::chorusCentreDelay, + "Center", + "ms", + NormalisableRange (1.0f, 100.0f, 0.0f, 0.25f), + 7.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::chorusFeedback, + "Feedback", + "%", + NormalisableRange (0.0f, 100.0f), + 50.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::chorusMix, + "Mix", + "%", + NormalisableRange (0.0f, 100.0f), + 50.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::ladderEnabled, "Ladder", false, "")); + + layout.add (std::make_unique (ID::ladderMode, + "Mode", + StringArray { "LP12", + "LP24", + "HP12", + "HP24", + "BP12", + "BP24" }, + 1)); + + layout.add (std::make_unique (ID::ladderCutoff, + "Frequency", + "Hz", + NormalisableRange (10.0f, 22000.0f, 0.0f, 0.25f), + 1000.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::ladderResonance, + "Resonance", + "%", + NormalisableRange (0.0f, 100.0f), + 0.0f, + valueToTextFunction, + textToValueFunction)); + + layout.add (std::make_unique (ID::ladderDrive, + "Drive", + "dB", + NormalisableRange (0.0f, 40.0f), + 0.0f, + valueToTextFunction, + textToValueFunction)); + + return layout; + } + + //============================================================================== + struct DistortionProcessor + { + DistortionProcessor() + { + forEach ([] (dsp::Gain& gain) { gain.setRampDurationSeconds (0.05); }, + distGain, + compGain); + + lowpass.setType (dsp::FirstOrderTPTFilterType::lowpass); + highpass.setType (dsp::FirstOrderTPTFilterType::highpass); + mixer.setMixingRule (dsp::DryWetMixingRule::linear); + } + + void prepare (const dsp::ProcessSpec& spec) + { + for (auto& oversampler : oversamplers) + oversampler.initProcessing (spec.maximumBlockSize); + + prepareAll (spec, lowpass, highpass, distGain, compGain, mixer); + } + + void reset() + { + for (auto& oversampler : oversamplers) + oversampler.reset(); + + resetAll (lowpass, highpass, distGain, compGain, mixer); + } + + float getLatency() const + { + return oversamplers[size_t (currentIndexOversampling)].getLatencyInSamples(); + } + + template + void process (Context& context) + { + if (context.isBypassed) + return; + + const auto& inputBlock = context.getInputBlock(); + + mixer.setWetLatency (getLatency()); + mixer.pushDrySamples (inputBlock); + + distGain.process (context); + highpass.process (context); + + auto ovBlock = oversamplers[size_t (currentIndexOversampling)].processSamplesUp (inputBlock); + + dsp::ProcessContextReplacing waveshaperContext (ovBlock); + + if (isPositiveAndBelow (currentIndexWaveshaper, waveShapers.size())) + { + waveShapers[size_t (currentIndexWaveshaper)].process (waveshaperContext); + + if (currentIndexWaveshaper == 1) + clipping.process (waveshaperContext); + + waveshaperContext.getOutputBlock() *= 0.7f; + } + + auto& outputBlock = context.getOutputBlock(); + oversamplers[size_t (currentIndexOversampling)].processSamplesDown (outputBlock); + + lowpass.process (context); + compGain.process (context); + mixer.mixWetSamples (outputBlock); + } + + std::array, 6> oversamplers + { { + { 2, 1, dsp::Oversampling::filterHalfBandPolyphaseIIR, true, false }, + { 2, 2, dsp::Oversampling::filterHalfBandPolyphaseIIR, true, false }, + { 2, 3, dsp::Oversampling::filterHalfBandPolyphaseIIR, true, false }, + + { 2, 1, dsp::Oversampling::filterHalfBandPolyphaseIIR, true, true }, + { 2, 2, dsp::Oversampling::filterHalfBandPolyphaseIIR, true, true }, + { 2, 3, dsp::Oversampling::filterHalfBandPolyphaseIIR, true, true }, + } }; + + dsp::FirstOrderTPTFilter lowpass, highpass; + dsp::Gain distGain, compGain; + dsp::DryWetMixer mixer { 10 }; + std::array, 2> waveShapers { { { std::tanh }, + { dsp::FastMathApproximations::tanh } } }; + dsp::WaveShaper clipping; + int currentIndexOversampling = 0; + int currentIndexWaveshaper = 0; + }; + + struct MultiBandProcessor + { + MultiBandProcessor() + { + forEach ([] (dsp::Gain& gain) { gain.setRampDurationSeconds (0.05); }, + lowVolume, + highVolume); + + lowpass .setType (dsp::LinkwitzRileyFilterType::lowpass); + highpass.setType (dsp::LinkwitzRileyFilterType::highpass); + } + + void prepare (const dsp::ProcessSpec& spec) + { + prepareAll (spec, lowpass, highpass, lowVolume, highVolume); + bufferSeparation.setSize (4, int (spec.maximumBlockSize), false, false, true); + } + + void reset() + { + resetAll (lowpass, highpass, lowVolume, highVolume); + } + + template + void process (Context& context) + { + const auto& inputBlock = context.getInputBlock(); + + const auto numSamples = inputBlock.getNumSamples(); + const auto numChannels = inputBlock.getNumChannels(); + + auto sepBlock = dsp::AudioBlock (bufferSeparation).getSubBlock (0, (size_t) numSamples); + + auto sepLowBlock = sepBlock.getSubsetChannelBlock (0, (size_t) numChannels); + auto sepHighBlock = sepBlock.getSubsetChannelBlock (2, (size_t) numChannels); + + sepLowBlock .copyFrom (inputBlock); + sepHighBlock.copyFrom (inputBlock); + + auto contextLow = dsp::ProcessContextReplacing (sepLowBlock); + contextLow.isBypassed = context.isBypassed; + lowpass .process (contextLow); + lowVolume.process (contextLow); + + auto contextHigh = dsp::ProcessContextReplacing (sepHighBlock); + contextHigh.isBypassed = context.isBypassed; + highpass .process (contextHigh); + highVolume.process (contextHigh); + + if (! context.isBypassed) + { + sepLowBlock.add (sepHighBlock); + context.getOutputBlock().copyFrom (sepLowBlock); + } + } + + dsp::LinkwitzRileyFilter lowpass, highpass; + dsp::Gain lowVolume, highVolume; + AudioBuffer bufferSeparation; + }; + + struct DirectDelayProcessor + { + DirectDelayProcessor() + { + smoothFilter.setType (dsp::FirstOrderTPTFilterType::lowpass); + mixer.setMixingRule (dsp::DryWetMixingRule::linear); + } + + void prepare (const dsp::ProcessSpec& spec) + { + prepareAll (spec, noInterpolation, linear, lagrange, thiran, smoothFilter, mixer); + } + + void reset() + { + resetAll (noInterpolation, linear, lagrange, thiran, smoothFilter, mixer); + } + + template + void process (Context& context) + { + if (context.isBypassed) + return; + + const auto& inputBlock = context.getInputBlock(); + const auto& outputBlock = context.getOutputBlock(); + + mixer.pushDrySamples (inputBlock); + + const auto numChannels = inputBlock.getNumChannels(); + const auto numSamples = inputBlock.getNumSamples(); + + for (size_t channel = 0; channel < numChannels; ++channel) + { + auto* samplesIn = inputBlock .getChannelPointer (channel); + auto* samplesOut = outputBlock.getChannelPointer (channel); + + for (size_t i = 0; i < numSamples; ++i) + { + const auto delay = smoothFilter.processSample (int (channel), delayDirectValue[channel]); + + samplesOut[i] = [&] + { + switch (delayLineDirectType) + { + case 0: + noInterpolation.pushSample (int (channel), samplesIn[i]); + noInterpolation.setDelay ((float) delay); + return noInterpolation.popSample (int (channel)); + + case 1: + linear.pushSample (int (channel), samplesIn[i]); + linear.setDelay ((float) delay); + return linear.popSample (int (channel)); + + case 2: + lagrange.pushSample (int (channel), samplesIn[i]); + lagrange.setDelay ((float) delay); + return lagrange.popSample (int (channel)); + + case 3: + thiran.pushSample (int (channel), samplesIn[i]); + thiran.setDelay ((float) delay); + return thiran.popSample (int (channel)); + } + + jassertfalse; + return 0.0f; + }(); + } + } + + mixer.mixWetSamples (outputBlock); + } + + static constexpr auto directDelayBufferSize = 44100; + dsp::DelayLine noInterpolation { directDelayBufferSize }; + dsp::DelayLine linear { directDelayBufferSize }; + dsp::DelayLine lagrange { directDelayBufferSize }; + dsp::DelayLine thiran { directDelayBufferSize }; + + // Double precision to avoid some approximation issues + dsp::FirstOrderTPTFilter smoothFilter; + + dsp::DryWetMixer mixer; + std::array delayDirectValue { {} }; + + int delayLineDirectType = 1; + }; + + struct DelayEffectProcessor + { + DelayEffectProcessor() + { + smoothFilter.setType (dsp::FirstOrderTPTFilterType::lowpass); + lowpass.setType (dsp::FirstOrderTPTFilterType::lowpass); + mixer.setMixingRule (dsp::DryWetMixingRule::linear); + } + + void prepare (const dsp::ProcessSpec& spec) + { + prepareAll (spec, noInterpolation, linear, lagrange, thiran, smoothFilter, lowpass, mixer); + + for (auto& volume : delayFeedbackVolume) + volume.reset (spec.sampleRate, 0.05); + } + + void reset() + { + resetAll (noInterpolation, linear, lagrange, thiran, smoothFilter, lowpass, mixer); + std::fill (lastDelayEffectOutput.begin(), lastDelayEffectOutput.end(), 0.0f); + } + + template + void process (Context& context) + { + if (context.isBypassed) + return; + + const auto& inputBlock = context.getInputBlock(); + const auto& outputBlock = context.getOutputBlock(); + const auto numSamples = inputBlock.getNumSamples(); + const auto numChannels = inputBlock.getNumChannels(); + + mixer.pushDrySamples (inputBlock); + + for (size_t channel = 0; channel < numChannels; ++channel) + { + auto* samplesIn = inputBlock .getChannelPointer (channel); + auto* samplesOut = outputBlock.getChannelPointer (channel); + + for (size_t i = 0; i < numSamples; ++i) + { + auto input = samplesIn[i] - lastDelayEffectOutput[channel]; + + auto delay = smoothFilter.processSample (int (channel), delayEffectValue[channel]); + + const auto output = [&] + { + switch (delayEffectType) + { + case 0: + noInterpolation.pushSample (int (channel), input); + noInterpolation.setDelay ((float) delay); + return noInterpolation.popSample (int (channel)); + + case 1: + linear.pushSample (int (channel), input); + linear.setDelay ((float) delay); + return linear.popSample (int (channel)); + + case 2: + lagrange.pushSample (int (channel), input); + lagrange.setDelay ((float) delay); + return lagrange.popSample (int (channel)); + + case 3: + thiran.pushSample (int (channel), input); + thiran.setDelay ((float) delay); + return thiran.popSample (int (channel)); + } + + jassertfalse; + return 0.0f; + }(); + + const auto processed = lowpass.processSample (int (channel), output); + + samplesOut[i] = processed; + lastDelayEffectOutput[channel] = processed * delayFeedbackVolume[channel].getNextValue(); + } + } + + mixer.mixWetSamples (outputBlock); + } + + static constexpr auto effectDelaySamples = 192000; + dsp::DelayLine noInterpolation { effectDelaySamples }; + dsp::DelayLine linear { effectDelaySamples }; + dsp::DelayLine lagrange { effectDelaySamples }; + dsp::DelayLine thiran { effectDelaySamples }; + + // Double precision to avoid some approximation issues + dsp::FirstOrderTPTFilter smoothFilter; + + std::array delayEffectValue; + + std::array, 2> delayFeedbackVolume; + dsp::FirstOrderTPTFilter lowpass; + dsp::DryWetMixer mixer; + std::array lastDelayEffectOutput; + + int delayEffectType = 1; + }; + + using Chain = dsp::ProcessorChain, + dsp::Gain, + DirectDelayProcessor, + MultiBandProcessor, + dsp::Compressor, + dsp::Phaser, + dsp::Chorus, + DistortionProcessor, + dsp::LadderFilter, + DelayEffectProcessor, + dsp::Limiter, + dsp::Gain, + dsp::Panner>; + Chain chain; + + // We use this enum to index into the chain above + enum ProcessorIndices + { + noiseGateIndex, + inputGainIndex, + directDelayIndex, + multiBandIndex, + compressorIndex, + phaserIndex, + chorusIndex, + distortionIndex, + ladderIndex, + delayEffectIndex, + limiterIndex, + outputGainIndex, + pannerIndex + }; + + //============================================================================== + std::atomic requiresUpdate { true }; + + //============================================================================== + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (DspModulePluginDemo) +}; + +//============================================================================== +class DspModulePluginDemoEditor : public AudioProcessorEditor +{ +public: + explicit DspModulePluginDemoEditor (DspModulePluginDemo& p) + : AudioProcessorEditor (&p), + proc (p) + { + comboEffect.addSectionHeading ("Main"); + comboEffect.addItem ("Distortion", TabDistortion); + comboEffect.addItem ("Multi-band", TabMultiBand); + + comboEffect.addSectionHeading ("Dynamics"); + comboEffect.addItem ("Compressor", TabCompressor); + comboEffect.addItem ("Noise gate", TabNoiseGate); + comboEffect.addItem ("Limiter", TabLimiter); + + comboEffect.addSectionHeading ("Delay"); + comboEffect.addItem ("Delay line direct", TabDelayLineDirect); + comboEffect.addItem ("Delay line effect", TabDelayLineEffect); + + comboEffect.addSectionHeading ("Others"); + comboEffect.addItem ("Phaser", TabPhaser); + comboEffect.addItem ("Chorus", TabChorus); + comboEffect.addItem ("Ladder filter", TabLadder); + + comboEffect.setSelectedId (proc.indexTab + 1, dontSendNotification); + comboEffect.onChange = [this] + { + proc.indexTab = comboEffect.getSelectedId() - 1; + updateVisibility(); + }; + + addAllAndMakeVisible (*this, + comboEffect, + labelEffect, + basicControls, + distortionControls, + multibandControls, + compressorControls, + noiseGateControls, + limiterControls, + directDelayControls, + delayEffectControls, + phaserControls, + chorusControls, + ladderControls); + labelEffect.setJustificationType (Justification::centredRight); + labelEffect.attachToComponent (&comboEffect, true); + + updateVisibility(); + + setSize (800, 430); + } + + //============================================================================== + void paint (Graphics& g) override + { + auto rect = getLocalBounds(); + + auto rectTop = rect.removeFromTop (topSize); + auto rectBottom = rect.removeFromBottom (bottomSize); + + auto rectEffects = rect.removeFromBottom (tabSize); + auto rectChoice = rect.removeFromBottom (midSize); + + g.setColour (getLookAndFeel().findColour (ResizableWindow::backgroundColourId)); + g.fillRect (rect); + + g.setColour (getLookAndFeel().findColour (ResizableWindow::backgroundColourId).brighter (0.2f)); + g.fillRect (rectEffects); + + g.setColour (getLookAndFeel().findColour (ResizableWindow::backgroundColourId).darker (0.2f)); + g.fillRect (rectTop); + g.fillRect (rectBottom); + g.fillRect (rectChoice); + + g.setColour (Colours::white); + g.setFont (Font (20.0f).italicised().withExtraKerningFactor (0.1f)); + g.drawFittedText ("DSP MODULE DEMO", rectTop.reduced (10, 0), Justification::centredLeft, 1); + } + + void resized() override + { + auto rect = getLocalBounds(); + rect.removeFromTop (topSize); + rect.removeFromBottom (bottomSize); + + auto rectEffects = rect.removeFromBottom (tabSize); + auto rectChoice = rect.removeFromBottom (midSize); + + comboEffect.setBounds (rectChoice.withSizeKeepingCentre (200, 24)); + + rect.reduce (80, 0); + rectEffects.reduce (20, 0); + + basicControls.setBounds (rect); + + forEach ([&] (Component& comp) { comp.setBounds (rectEffects); }, + distortionControls, + multibandControls, + compressorControls, + noiseGateControls, + limiterControls, + directDelayControls, + delayEffectControls, + phaserControls, + chorusControls, + ladderControls); + } + +private: + class AttachedSlider : public Component + { + public: + AttachedSlider (AudioProcessorValueTreeState& state, StringRef strID) + : label ("", state.getParameter (strID)->name), + attachment (state, strID, slider) + { + addAllAndMakeVisible (*this, slider, label); + + slider.setTextValueSuffix (" " + state.getParameter (strID)->label); + + label.attachToComponent (&slider, false); + label.setJustificationType (Justification::centred); + } + + void resized() override { slider.setBounds (getLocalBounds().reduced (0, 40)); } + + private: + Slider slider { Slider::RotaryVerticalDrag, Slider::TextBoxBelow }; + Label label; + AudioProcessorValueTreeState::SliderAttachment attachment; + }; + + class AttachedToggle : public Component + { + public: + AttachedToggle (AudioProcessorValueTreeState& state, StringRef strID) + : toggle (state.getParameter (strID)->name), + attachment (state, strID, toggle) + { + addAndMakeVisible (toggle); + } + + void resized() override { toggle.setBounds (getLocalBounds()); } + + private: + ToggleButton toggle; + AudioProcessorValueTreeState::ButtonAttachment attachment; + }; + + class AttachedCombo : public Component + { + public: + AttachedCombo (AudioProcessorValueTreeState& state, StringRef strID) + : combo (state, strID), + label ("", state.getParameter (strID)->name), + attachment (state, strID, combo) + { + addAllAndMakeVisible (*this, combo, label); + + label.attachToComponent (&combo, false); + label.setJustificationType (Justification::centred); } void resized() override { - auto bounds = getLocalBounds().reduced (10); - bounds.removeFromTop (10); - bounds.removeFromLeft (125); - - //============================================================================== - inputVolumeSlider->setBounds (bounds.removeFromTop (30)); - bounds.removeFromTop (5); - - outputVolumeSlider->setBounds (bounds.removeFromTop (30)); - bounds.removeFromTop (15); - - highPassFilterFreqSlider->setBounds (bounds.removeFromTop (30)); - bounds.removeFromTop (5); - - lowPassFilterFreqSlider->setBounds (bounds.removeFromTop (30)); - bounds.removeFromTop (15); - - //============================================================================== - stereoBox.setBounds (bounds.removeFromTop(30)); - bounds.removeFromTop (5); - - slopeBox.setBounds (bounds.removeFromTop (30)); - bounds.removeFromTop (5); - - waveshaperBox.setBounds (bounds.removeFromTop (30)); - bounds.removeFromTop (5); - - cabinetTypeBox.setBounds (bounds.removeFromTop (30)); - bounds.removeFromTop (15); - - //============================================================================== - auto buttonSlice = bounds.removeFromTop (30); - cabinetSimButton.setSize (200, buttonSlice.getHeight()); - cabinetSimButton.setCentrePosition (buttonSlice.getCentre()); - bounds.removeFromTop(5); - - buttonSlice = bounds.removeFromTop (30); - oversamplingButton.setSize(200, buttonSlice.getHeight()); - oversamplingButton.setCentrePosition(buttonSlice.getCentre()); + combo.setBounds (getLocalBounds().withSizeKeepingCentre (jmin (getWidth(), 150), 24)); } private: - //============================================================================== - DspModulePluginDemoAudioProcessor& dspProcessor; + struct ComboWithItems : public ComboBox + { + ComboWithItems (AudioProcessorValueTreeState& state, StringRef strID) + { + // Adding the list here in the constructor means that the combo + // is already populated when we construct the attachment below + addItemList (dynamic_cast (state.getParameter (strID))->choices, 1); + } + }; - std::unique_ptr inputVolumeSlider, outputVolumeSlider, - lowPassFilterFreqSlider, highPassFilterFreqSlider; - ComboBox stereoBox, slopeBox, waveshaperBox, cabinetTypeBox; - ToggleButton cabinetSimButton, oversamplingButton; - - Label inputVolumeLabel, outputVolumeLabel, lowPassFilterFreqLabel, - highPassFilterFreqLabel, stereoLabel, slopeLabel, waveshaperLabel, - cabinetTypeLabel; - - JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (DspModulePluginDemoAudioProcessorEditor) + ComboWithItems combo; + Label label; + AudioProcessorValueTreeState::ComboBoxAttachment attachment; }; //============================================================================== - void process (dsp::ProcessContextReplacing context) noexcept + void updateVisibility() { - ScopedNoDenormals noDenormals; + const auto indexEffect = comboEffect.getSelectedId(); - // Input volume applied with a SmoothedValue - inputVolume.process (context); - - // Pre-highpass filtering, very useful for distortion audio effects - // Note : try frequencies around 700 Hz - highPassFilter.process (context); - - // Upsampling - dsp::AudioBlock oversampledBlock; - - setLatencySamples (audioCurrentlyOversampled ? roundToInt (oversampling->getLatencyInSamples()) : 0); - - if (audioCurrentlyOversampled) - oversampledBlock = oversampling->processSamplesUp (context.getOutputBlock()); - - auto waveshaperContext = audioCurrentlyOversampled ? dsp::ProcessContextReplacing (oversampledBlock) - : context; - - // Waveshaper processing, for distortion generation, thanks to the input gain - // The fast tanh can be used instead of std::tanh to reduce the CPU load - auto waveshaperIndex = waveshaperParam->getIndex(); - - if (isPositiveAndBelow (waveshaperIndex, numWaveShapers) ) + const auto op = [&] (const std::tuple& tup) { - waveShapers[waveshaperIndex].process (waveshaperContext); + Component& comp = std::get<0> (tup); + const int tabIndex = std::get<1> (tup); + comp.setVisible (tabIndex == indexEffect); + }; - if (waveshaperIndex == 1) - clipping.process (waveshaperContext); - - waveshaperContext.getOutputBlock() *= 0.7f; - } - - // Downsampling - if (audioCurrentlyOversampled) - oversampling->processSamplesDown (context.getOutputBlock()); - - // Post-lowpass filtering - lowPassFilter.process (context); - - // Convolution with the impulse response of a guitar cabinet - auto wasBypassed = context.isBypassed; - context.isBypassed = context.isBypassed || cabinetIsBypassed; - convolution.process (context); - context.isBypassed = wasBypassed; - - // Output volume applied with a SmoothedValue - outputVolume.process (context); + forEach (op, + std::forward_as_tuple (distortionControls, TabDistortion), + std::forward_as_tuple (multibandControls, TabMultiBand), + std::forward_as_tuple (compressorControls, TabCompressor), + std::forward_as_tuple (noiseGateControls, TabNoiseGate), + std::forward_as_tuple (limiterControls, TabLimiter), + std::forward_as_tuple (directDelayControls, TabDelayLineDirect), + std::forward_as_tuple (delayEffectControls, TabDelayLineEffect), + std::forward_as_tuple (phaserControls, TabPhaser), + std::forward_as_tuple (chorusControls, TabChorus), + std::forward_as_tuple (ladderControls, TabLadder)); } - //============================================================================== - dsp::ProcessorDuplicator, dsp::IIR::Coefficients> lowPassFilter, highPassFilter; - dsp::Convolution convolution; - MemoryBlock currentCabinetData; - - static constexpr size_t numWaveShapers = 2; - dsp::WaveShaper waveShapers[numWaveShapers]; - dsp::WaveShaper clipping; - - dsp::Gain inputVolume, outputVolume; - - std::unique_ptr> oversampling; - bool audioCurrentlyOversampled = false; - - Atomic cabinetType; - bool cabinetIsBypassed = false; + enum EffectsTabs + { + TabDistortion = 1, + TabMultiBand, + TabCompressor, + TabNoiseGate, + TabLimiter, + TabDelayLineDirect, + TabDelayLineEffect, + TabPhaser, + TabChorus, + TabLadder + }; //============================================================================== - JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (DspModulePluginDemoAudioProcessor) + ComboBox comboEffect; + Label labelEffect { "Audio effect: " }; + + struct GetTrackInfo + { + // Combo boxes need a lot of room + Grid::TrackInfo operator() (AttachedCombo&) const { return 120_px; } + + // Toggles are a bit smaller + Grid::TrackInfo operator() (AttachedToggle&) const { return 80_px; } + + // Sliders take up as much room as they can + Grid::TrackInfo operator() (AttachedSlider&) const { return 1_fr; } + }; + + template + static void performLayout (const Rectangle& bounds, Components&... components) + { + Grid grid; + using Track = Grid::TrackInfo; + + grid.autoColumns = Track (1_fr); + grid.autoRows = Track (1_fr); + grid.columnGap = Grid::Px (10); + grid.rowGap = Grid::Px (0); + grid.autoFlow = Grid::AutoFlow::column; + + grid.templateColumns = { GetTrackInfo{} (components)... }; + grid.items = { GridItem (components)... }; + + grid.performLayout (bounds); + } + + struct BasicControls : public Component + { + explicit BasicControls (AudioProcessorValueTreeState& state) + : pan (state, ID::pan), + input (state, ID::inputGain), + output (state, ID::outputGain) + { + addAllAndMakeVisible (*this, pan, input, output); + } + + void resized() override + { + performLayout (getLocalBounds(), input, output, pan); + } + + AttachedSlider pan, input, output; + }; + + struct DistortionControls : public Component + { + explicit DistortionControls (AudioProcessorValueTreeState& state) + : toggle (state, ID::distortionEnabled), + lowpass (state, ID::distortionLowpass), + highpass (state, ID::distortionHighpass), + mix (state, ID::distortionMix), + gain (state, ID::distortionInGain), + compv (state, ID::distortionCompGain), + type (state, ID::distortionType), + oversampling (state, ID::distortionOversampler) + { + addAllAndMakeVisible (*this, toggle, type, lowpass, highpass, mix, gain, compv, oversampling); + } + + void resized() override + { + performLayout (getLocalBounds(), toggle, type, gain, highpass, lowpass, compv, mix, oversampling); + } + + AttachedToggle toggle; + AttachedSlider lowpass, highpass, mix, gain, compv; + AttachedCombo type, oversampling; + }; + + struct MultiBandControls : public Component + { + explicit MultiBandControls (AudioProcessorValueTreeState& state) + : toggle (state, ID::multiBandEnabled), + low (state, ID::multiBandLowVolume), + high (state, ID::multiBandHighVolume), + lRFreq (state, ID::multiBandFreq) + { + addAllAndMakeVisible (*this, toggle, low, high, lRFreq); + } + + void resized() override + { + performLayout (getLocalBounds(), toggle, lRFreq, low, high); + } + + AttachedToggle toggle; + AttachedSlider low, high, lRFreq; + }; + + struct CompressorControls : public Component + { + explicit CompressorControls (AudioProcessorValueTreeState& state) + : toggle (state, ID::compressorEnabled), + threshold (state, ID::compressorThreshold), + ratio (state, ID::compressorRatio), + attack (state, ID::compressorAttack), + release (state, ID::compressorRelease) + { + addAllAndMakeVisible (*this, toggle, threshold, ratio, attack, release); + } + + void resized() override + { + performLayout (getLocalBounds(), toggle, threshold, ratio, attack, release); + } + + AttachedToggle toggle; + AttachedSlider threshold, ratio, attack, release; + }; + + struct NoiseGateControls : public Component + { + explicit NoiseGateControls (AudioProcessorValueTreeState& state) + : toggle (state, ID::noiseGateEnabled), + threshold (state, ID::noiseGateThreshold), + ratio (state, ID::noiseGateRatio), + attack (state, ID::noiseGateAttack), + release (state, ID::noiseGateRelease) + { + addAllAndMakeVisible (*this, toggle, threshold, ratio, attack, release); + } + + void resized() override + { + performLayout (getLocalBounds(), toggle, threshold, ratio, attack, release); + } + + AttachedToggle toggle; + AttachedSlider threshold, ratio, attack, release; + }; + + struct LimiterControls : public Component + { + explicit LimiterControls (AudioProcessorValueTreeState& state) + : toggle (state, ID::limiterEnabled), + threshold (state, ID::limiterThreshold), + release (state, ID::limiterRelease) + { + addAllAndMakeVisible (*this, toggle, threshold, release); + } + + void resized() override + { + performLayout (getLocalBounds(), toggle, threshold, release); + } + + AttachedToggle toggle; + AttachedSlider threshold, release; + }; + + struct DirectDelayControls : public Component + { + explicit DirectDelayControls (AudioProcessorValueTreeState& state) + : toggle (state, ID::directDelayEnabled), + type (state, ID::directDelayType), + delay (state, ID::directDelayValue), + smooth (state, ID::directDelaySmoothing), + mix (state, ID::directDelayMix) + { + addAllAndMakeVisible (*this, toggle, type, delay, smooth, mix); + } + + void resized() override + { + performLayout (getLocalBounds(), toggle, type, delay, smooth, mix); + } + + AttachedToggle toggle; + AttachedCombo type; + AttachedSlider delay, smooth, mix; + }; + + struct DelayEffectControls : public Component + { + explicit DelayEffectControls (AudioProcessorValueTreeState& state) + : toggle (state, ID::delayEffectEnabled), + type (state, ID::delayEffectType), + value (state, ID::delayEffectValue), + smooth (state, ID::delayEffectSmoothing), + lowpass (state, ID::delayEffectLowpass), + feedback (state, ID::delayEffectFeedback), + mix (state, ID::delayEffectMix) + { + addAllAndMakeVisible (*this, toggle, type, value, smooth, lowpass, feedback, mix); + } + + void resized() override + { + performLayout (getLocalBounds(), toggle, type, value, smooth, lowpass, feedback, mix); + } + + AttachedToggle toggle; + AttachedCombo type; + AttachedSlider value, smooth, lowpass, feedback, mix; + }; + + struct PhaserControls : public Component + { + explicit PhaserControls (AudioProcessorValueTreeState& state) + : toggle (state, ID::phaserEnabled), + rate (state, ID::phaserRate), + depth (state, ID::phaserDepth), + centre (state, ID::phaserCentreFrequency), + feedback (state, ID::phaserFeedback), + mix (state, ID::phaserMix) + { + addAllAndMakeVisible (*this, toggle, rate, depth, centre, feedback, mix); + } + + void resized() override + { + performLayout (getLocalBounds(), toggle, rate, depth, centre, feedback, mix); + } + + AttachedToggle toggle; + AttachedSlider rate, depth, centre, feedback, mix; + }; + + struct ChorusControls : public Component + { + explicit ChorusControls (AudioProcessorValueTreeState& state) + : toggle (state, ID::chorusEnabled), + rate (state, ID::chorusRate), + depth (state, ID::chorusDepth), + centre (state, ID::chorusCentreDelay), + feedback (state, ID::chorusFeedback), + mix (state, ID::chorusMix) + { + addAllAndMakeVisible (*this, toggle, rate, depth, centre, feedback, mix); + } + + void resized() override + { + performLayout (getLocalBounds(), toggle, rate, depth, centre, feedback, mix); + } + + AttachedToggle toggle; + AttachedSlider rate, depth, centre, feedback, mix; + }; + + struct LadderControls : public Component + { + explicit LadderControls (AudioProcessorValueTreeState& state) + : toggle (state, ID::ladderEnabled), + mode (state, ID::ladderMode), + freq (state, ID::ladderCutoff), + resonance (state, ID::ladderResonance), + drive (state, ID::ladderDrive) + { + addAllAndMakeVisible (*this, toggle, mode, freq, resonance, drive); + } + + void resized() override + { + performLayout (getLocalBounds(), toggle, mode, freq, resonance, drive); + } + + AttachedToggle toggle; + AttachedCombo mode; + AttachedSlider freq, resonance, drive; + }; + + //============================================================================== + static constexpr auto topSize = 40, + bottomSize = 40, + midSize = 40, + tabSize = 155; + + //============================================================================== + DspModulePluginDemo& proc; + + BasicControls basicControls { proc.apvts }; + DistortionControls distortionControls { proc.apvts }; + MultiBandControls multibandControls { proc.apvts }; + CompressorControls compressorControls { proc.apvts }; + NoiseGateControls noiseGateControls { proc.apvts }; + LimiterControls limiterControls { proc.apvts }; + DirectDelayControls directDelayControls { proc.apvts }; + DelayEffectControls delayEffectControls { proc.apvts }; + PhaserControls phaserControls { proc.apvts }; + ChorusControls chorusControls { proc.apvts }; + LadderControls ladderControls { proc.apvts }; + + //============================================================================== + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (DspModulePluginDemoEditor) +}; + +struct DspModulePluginDemoAudioProcessor : public DspModulePluginDemo +{ + AudioProcessorEditor* createEditor() override + { + return new DspModulePluginDemoEditor (*this); + } + + bool hasEditor() const override { return true; } }; diff --git a/examples/Plugins/MidiLoggerPluginDemo.h b/examples/Plugins/MidiLoggerPluginDemo.h index 77ad482257..7a8508f923 100644 --- a/examples/Plugins/MidiLoggerPluginDemo.h +++ b/examples/Plugins/MidiLoggerPluginDemo.h @@ -235,7 +235,7 @@ public: bool hasEditor() const override { return true; } AudioProcessorEditor* createEditor() override { return new Editor (*this); } - const String getName() const override { return "MIDILogger"; } + const String getName() const override { return "MIDI Logger"; } bool acceptsMidi() const override { return true; } bool producesMidi() const override { return true; } double getTailLengthSeconds() const override { return 0.0; } diff --git a/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt b/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt index 6c84a7689b..5fd6cbb869 100644 --- a/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt +++ b/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt @@ -98,16 +98,17 @@ add_library( ${BINARY_NAME} "../../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.cpp" "../../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.h" "../../../../../modules/juce_audio_basics/utilities/juce_ADSR.h" - "../../../../../modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.cpp" - "../../../../../modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.h" "../../../../../modules/juce_audio_basics/utilities/juce_Decibels.h" + "../../../../../modules/juce_audio_basics/utilities/juce_GenericInterpolator.h" "../../../../../modules/juce_audio_basics/utilities/juce_IIRFilter.cpp" "../../../../../modules/juce_audio_basics/utilities/juce_IIRFilter.h" + "../../../../../modules/juce_audio_basics/utilities/juce_Interpolators.cpp" + "../../../../../modules/juce_audio_basics/utilities/juce_Interpolators.h" "../../../../../modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.cpp" - "../../../../../modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.h" "../../../../../modules/juce_audio_basics/utilities/juce_Reverb.h" "../../../../../modules/juce_audio_basics/utilities/juce_SmoothedValue.cpp" "../../../../../modules/juce_audio_basics/utilities/juce_SmoothedValue.h" + "../../../../../modules/juce_audio_basics/utilities/juce_WindowedSincInterpolator.cpp" "../../../../../modules/juce_audio_basics/juce_audio_basics.cpp" "../../../../../modules/juce_audio_basics/juce_audio_basics.mm" "../../../../../modules/juce_audio_basics/juce_audio_basics.h" @@ -1506,16 +1507,17 @@ set_source_files_properties("../../../../../modules/juce_audio_basics/sources/ju set_source_files_properties("../../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_ADSR.h" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_Decibels.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_GenericInterpolator.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_IIRFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_IIRFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_Interpolators.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_Interpolators.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_Reverb.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_SmoothedValue.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_SmoothedValue.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_WindowedSincInterpolator.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/juce_audio_basics.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/juce_audio_basics.mm" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/juce_audio_basics.h" PROPERTIES HEADER_FILE_ONLY TRUE) diff --git a/extras/AudioPerformanceTest/Builds/VisualStudio2019/AudioPerformanceTest_App.vcxproj b/extras/AudioPerformanceTest/Builds/VisualStudio2019/AudioPerformanceTest_App.vcxproj index 1d072bc9c4..e8b4cf4e80 100644 --- a/extras/AudioPerformanceTest/Builds/VisualStudio2019/AudioPerformanceTest_App.vcxproj +++ b/extras/AudioPerformanceTest/Builds/VisualStudio2019/AudioPerformanceTest_App.vcxproj @@ -223,10 +223,10 @@ true - + true - + true @@ -235,6 +235,9 @@ true + + true + true @@ -2047,10 +2050,10 @@ - + - + diff --git a/extras/AudioPerformanceTest/Builds/VisualStudio2019/AudioPerformanceTest_App.vcxproj.filters b/extras/AudioPerformanceTest/Builds/VisualStudio2019/AudioPerformanceTest_App.vcxproj.filters index e7c0c87387..ca6aa84887 100644 --- a/extras/AudioPerformanceTest/Builds/VisualStudio2019/AudioPerformanceTest_App.vcxproj.filters +++ b/extras/AudioPerformanceTest/Builds/VisualStudio2019/AudioPerformanceTest_App.vcxproj.filters @@ -508,10 +508,10 @@ JUCE Modules\juce_audio_basics\synthesisers - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -520,6 +520,9 @@ JUCE Modules\juce_audio_basics\utilities + + JUCE Modules\juce_audio_basics\utilities + JUCE Modules\juce_audio_basics @@ -2535,16 +2538,16 @@ JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities diff --git a/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt b/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt index a3e34d5fa8..0b936e6459 100644 --- a/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt +++ b/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt @@ -115,16 +115,17 @@ add_library( ${BINARY_NAME} "../../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.cpp" "../../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.h" "../../../../../modules/juce_audio_basics/utilities/juce_ADSR.h" - "../../../../../modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.cpp" - "../../../../../modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.h" "../../../../../modules/juce_audio_basics/utilities/juce_Decibels.h" + "../../../../../modules/juce_audio_basics/utilities/juce_GenericInterpolator.h" "../../../../../modules/juce_audio_basics/utilities/juce_IIRFilter.cpp" "../../../../../modules/juce_audio_basics/utilities/juce_IIRFilter.h" + "../../../../../modules/juce_audio_basics/utilities/juce_Interpolators.cpp" + "../../../../../modules/juce_audio_basics/utilities/juce_Interpolators.h" "../../../../../modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.cpp" - "../../../../../modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.h" "../../../../../modules/juce_audio_basics/utilities/juce_Reverb.h" "../../../../../modules/juce_audio_basics/utilities/juce_SmoothedValue.cpp" "../../../../../modules/juce_audio_basics/utilities/juce_SmoothedValue.h" + "../../../../../modules/juce_audio_basics/utilities/juce_WindowedSincInterpolator.cpp" "../../../../../modules/juce_audio_basics/juce_audio_basics.cpp" "../../../../../modules/juce_audio_basics/juce_audio_basics.mm" "../../../../../modules/juce_audio_basics/juce_audio_basics.h" @@ -934,27 +935,51 @@ add_library( ${BINARY_NAME} "../../../../../modules/juce_dsp/native/juce_neon_SIMDNativeOps.h" "../../../../../modules/juce_dsp/native/juce_sse_SIMDNativeOps.cpp" "../../../../../modules/juce_dsp/native/juce_sse_SIMDNativeOps.h" - "../../../../../modules/juce_dsp/processors/juce_Bias.h" + "../../../../../modules/juce_dsp/processors/juce_BallisticsFilter.cpp" + "../../../../../modules/juce_dsp/processors/juce_BallisticsFilter.h" + "../../../../../modules/juce_dsp/processors/juce_DelayLine.cpp" + "../../../../../modules/juce_dsp/processors/juce_DelayLine.h" + "../../../../../modules/juce_dsp/processors/juce_DryWetMixer.cpp" + "../../../../../modules/juce_dsp/processors/juce_DryWetMixer.h" "../../../../../modules/juce_dsp/processors/juce_FIRFilter.cpp" "../../../../../modules/juce_dsp/processors/juce_FIRFilter.h" "../../../../../modules/juce_dsp/processors/juce_FIRFilter_test.cpp" - "../../../../../modules/juce_dsp/processors/juce_Gain.h" + "../../../../../modules/juce_dsp/processors/juce_FirstOrderTPTFilter.cpp" + "../../../../../modules/juce_dsp/processors/juce_FirstOrderTPTFilter.h" "../../../../../modules/juce_dsp/processors/juce_IIRFilter.cpp" "../../../../../modules/juce_dsp/processors/juce_IIRFilter.h" "../../../../../modules/juce_dsp/processors/juce_IIRFilter_Impl.h" - "../../../../../modules/juce_dsp/processors/juce_LadderFilter.cpp" - "../../../../../modules/juce_dsp/processors/juce_LadderFilter.h" - "../../../../../modules/juce_dsp/processors/juce_Oscillator.h" + "../../../../../modules/juce_dsp/processors/juce_LinkwitzRileyFilter.cpp" + "../../../../../modules/juce_dsp/processors/juce_LinkwitzRileyFilter.h" "../../../../../modules/juce_dsp/processors/juce_Oversampling.cpp" "../../../../../modules/juce_dsp/processors/juce_Oversampling.h" + "../../../../../modules/juce_dsp/processors/juce_Panner.cpp" + "../../../../../modules/juce_dsp/processors/juce_Panner.h" "../../../../../modules/juce_dsp/processors/juce_ProcessContext.h" "../../../../../modules/juce_dsp/processors/juce_ProcessorChain.h" "../../../../../modules/juce_dsp/processors/juce_ProcessorChain_test.cpp" "../../../../../modules/juce_dsp/processors/juce_ProcessorDuplicator.h" "../../../../../modules/juce_dsp/processors/juce_ProcessorWrapper.h" - "../../../../../modules/juce_dsp/processors/juce_Reverb.h" "../../../../../modules/juce_dsp/processors/juce_StateVariableFilter.h" - "../../../../../modules/juce_dsp/processors/juce_WaveShaper.h" + "../../../../../modules/juce_dsp/processors/juce_StateVariableTPTFilter.cpp" + "../../../../../modules/juce_dsp/processors/juce_StateVariableTPTFilter.h" + "../../../../../modules/juce_dsp/widgets/juce_Bias.h" + "../../../../../modules/juce_dsp/widgets/juce_Chorus.cpp" + "../../../../../modules/juce_dsp/widgets/juce_Chorus.h" + "../../../../../modules/juce_dsp/widgets/juce_Compressor.cpp" + "../../../../../modules/juce_dsp/widgets/juce_Compressor.h" + "../../../../../modules/juce_dsp/widgets/juce_Gain.h" + "../../../../../modules/juce_dsp/widgets/juce_LadderFilter.cpp" + "../../../../../modules/juce_dsp/widgets/juce_LadderFilter.h" + "../../../../../modules/juce_dsp/widgets/juce_Limiter.cpp" + "../../../../../modules/juce_dsp/widgets/juce_Limiter.h" + "../../../../../modules/juce_dsp/widgets/juce_NoiseGate.cpp" + "../../../../../modules/juce_dsp/widgets/juce_NoiseGate.h" + "../../../../../modules/juce_dsp/widgets/juce_Oscillator.h" + "../../../../../modules/juce_dsp/widgets/juce_Phaser.cpp" + "../../../../../modules/juce_dsp/widgets/juce_Phaser.h" + "../../../../../modules/juce_dsp/widgets/juce_Reverb.h" + "../../../../../modules/juce_dsp/widgets/juce_WaveShaper.h" "../../../../../modules/juce_dsp/juce_dsp.cpp" "../../../../../modules/juce_dsp/juce_dsp.mm" "../../../../../modules/juce_dsp/juce_dsp.h" @@ -1654,16 +1679,17 @@ set_source_files_properties("../../../../../modules/juce_audio_basics/sources/ju set_source_files_properties("../../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_ADSR.h" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_Decibels.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_GenericInterpolator.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_IIRFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_IIRFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_Interpolators.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_Interpolators.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_Reverb.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_SmoothedValue.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_SmoothedValue.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_WindowedSincInterpolator.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/juce_audio_basics.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/juce_audio_basics.mm" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/juce_audio_basics.h" PROPERTIES HEADER_FILE_ONLY TRUE) @@ -2473,27 +2499,51 @@ set_source_files_properties("../../../../../modules/juce_dsp/native/juce_neon_SI set_source_files_properties("../../../../../modules/juce_dsp/native/juce_neon_SIMDNativeOps.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/native/juce_sse_SIMDNativeOps.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/native/juce_sse_SIMDNativeOps.h" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_Bias.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_BallisticsFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_BallisticsFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_DelayLine.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_DelayLine.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_DryWetMixer.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_DryWetMixer.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_FIRFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_FIRFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_FIRFilter_test.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_Gain.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_FirstOrderTPTFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_FirstOrderTPTFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_IIRFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_IIRFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_IIRFilter_Impl.h" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_LadderFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_LadderFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_Oscillator.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_LinkwitzRileyFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_LinkwitzRileyFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_Oversampling.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_Oversampling.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_Panner.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_Panner.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_ProcessContext.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_ProcessorChain.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_ProcessorChain_test.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_ProcessorDuplicator.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_ProcessorWrapper.h" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_Reverb.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_StateVariableFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_WaveShaper.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_StateVariableTPTFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_StateVariableTPTFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Bias.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Chorus.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Chorus.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Compressor.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Compressor.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Gain.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_LadderFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_LadderFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Limiter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Limiter.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_NoiseGate.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_NoiseGate.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Oscillator.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Phaser.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Phaser.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Reverb.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_WaveShaper.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/juce_dsp.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/juce_dsp.mm" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/juce_dsp.h" PROPERTIES HEADER_FILE_ONLY TRUE) diff --git a/extras/AudioPluginHost/Builds/VisualStudio2015/AudioPluginHost_App.vcxproj b/extras/AudioPluginHost/Builds/VisualStudio2015/AudioPluginHost_App.vcxproj index 18672b7509..07d54ed376 100644 --- a/extras/AudioPluginHost/Builds/VisualStudio2015/AudioPluginHost_App.vcxproj +++ b/extras/AudioPluginHost/Builds/VisualStudio2015/AudioPluginHost_App.vcxproj @@ -230,10 +230,10 @@ true - + true - + true @@ -242,6 +242,9 @@ true + + true + true @@ -1220,24 +1223,60 @@ true + + true + + + true + + + true + true true + + true + true - + true true + + true + true + + true + + + true + + + true + + + true + + + true + + + true + + + true + true @@ -2190,10 +2229,10 @@ - + - + @@ -2647,21 +2686,33 @@ - + + + - + - - + + - - + + + + + + + + + + + + diff --git a/extras/AudioPluginHost/Builds/VisualStudio2015/AudioPluginHost_App.vcxproj.filters b/extras/AudioPluginHost/Builds/VisualStudio2015/AudioPluginHost_App.vcxproj.filters index b68f2d2aeb..38fdba80ef 100644 --- a/extras/AudioPluginHost/Builds/VisualStudio2015/AudioPluginHost_App.vcxproj.filters +++ b/extras/AudioPluginHost/Builds/VisualStudio2015/AudioPluginHost_App.vcxproj.filters @@ -314,6 +314,9 @@ {DDF4BA73-8578-406D-21F8-06B9BC70BFEA} + + {73374573-0194-9A6E-461A-A81EEB511C26} + {5DD60D0E-B16A-0BED-EDC4-C56E6960CA9E} @@ -586,10 +589,10 @@ JUCE Modules\juce_audio_basics\synthesisers - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -598,6 +601,9 @@ JUCE Modules\juce_audio_basics\utilities + + JUCE Modules\juce_audio_basics\utilities + JUCE Modules\juce_audio_basics @@ -1630,24 +1636,60 @@ JUCE Modules\juce_dsp\native + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + JUCE Modules\juce_dsp @@ -2781,16 +2823,16 @@ JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -4152,13 +4194,19 @@ JUCE Modules\juce_dsp\native - + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors @@ -4167,15 +4215,15 @@ JUCE Modules\juce_dsp\processors - - JUCE Modules\juce_dsp\processors - - + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors @@ -4188,15 +4236,45 @@ JUCE Modules\juce_dsp\processors - - JUCE Modules\juce_dsp\processors - JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + JUCE Modules\juce_dsp diff --git a/extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj b/extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj index 28617459cf..858a4fd42a 100644 --- a/extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj +++ b/extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj @@ -230,10 +230,10 @@ true - + true - + true @@ -242,6 +242,9 @@ true + + true + true @@ -1220,24 +1223,60 @@ true + + true + + + true + + + true + true true + + true + true - + true true + + true + true + + true + + + true + + + true + + + true + + + true + + + true + + + true + true @@ -2190,10 +2229,10 @@ - + - + @@ -2647,21 +2686,33 @@ - + + + - + - - + + - - + + + + + + + + + + + + diff --git a/extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj.filters b/extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj.filters index a7db45264f..b3ba2bee37 100644 --- a/extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj.filters +++ b/extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj.filters @@ -314,6 +314,9 @@ {DDF4BA73-8578-406D-21F8-06B9BC70BFEA} + + {73374573-0194-9A6E-461A-A81EEB511C26} + {5DD60D0E-B16A-0BED-EDC4-C56E6960CA9E} @@ -586,10 +589,10 @@ JUCE Modules\juce_audio_basics\synthesisers - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -598,6 +601,9 @@ JUCE Modules\juce_audio_basics\utilities + + JUCE Modules\juce_audio_basics\utilities + JUCE Modules\juce_audio_basics @@ -1630,24 +1636,60 @@ JUCE Modules\juce_dsp\native + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + JUCE Modules\juce_dsp @@ -2781,16 +2823,16 @@ JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -4152,13 +4194,19 @@ JUCE Modules\juce_dsp\native - + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors @@ -4167,15 +4215,15 @@ JUCE Modules\juce_dsp\processors - - JUCE Modules\juce_dsp\processors - - + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors @@ -4188,15 +4236,45 @@ JUCE Modules\juce_dsp\processors - - JUCE Modules\juce_dsp\processors - JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + JUCE Modules\juce_dsp diff --git a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj index 3e204cef44..aa757ea964 100644 --- a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj +++ b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj @@ -230,10 +230,10 @@ true - + true - + true @@ -242,6 +242,9 @@ true + + true + true @@ -1220,24 +1223,60 @@ true + + true + + + true + + + true + true true + + true + true - + true true + + true + true + + true + + + true + + + true + + + true + + + true + + + true + + + true + true @@ -2190,10 +2229,10 @@ - + - + @@ -2647,21 +2686,33 @@ - + + + - + - - + + - - + + + + + + + + + + + + diff --git a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters index 3aaa7a4583..3f20abf9e6 100644 --- a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters +++ b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters @@ -314,6 +314,9 @@ {DDF4BA73-8578-406D-21F8-06B9BC70BFEA} + + {73374573-0194-9A6E-461A-A81EEB511C26} + {5DD60D0E-B16A-0BED-EDC4-C56E6960CA9E} @@ -586,10 +589,10 @@ JUCE Modules\juce_audio_basics\synthesisers - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -598,6 +601,9 @@ JUCE Modules\juce_audio_basics\utilities + + JUCE Modules\juce_audio_basics\utilities + JUCE Modules\juce_audio_basics @@ -1630,24 +1636,60 @@ JUCE Modules\juce_dsp\native + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + JUCE Modules\juce_dsp @@ -2781,16 +2823,16 @@ JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -4152,13 +4194,19 @@ JUCE Modules\juce_dsp\native - + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors @@ -4167,15 +4215,15 @@ JUCE Modules\juce_dsp\processors - - JUCE Modules\juce_dsp\processors - - + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors @@ -4188,15 +4236,45 @@ JUCE Modules\juce_dsp\processors - - JUCE Modules\juce_dsp\processors - JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + JUCE Modules\juce_dsp diff --git a/extras/AudioPluginHost/CMakeLists.txt b/extras/AudioPluginHost/CMakeLists.txt index 7e288b5e6e..95f92b74b8 100644 --- a/extras/AudioPluginHost/CMakeLists.txt +++ b/extras/AudioPluginHost/CMakeLists.txt @@ -52,3 +52,7 @@ target_link_libraries(AudioPluginHost PRIVATE juce::juce_dsp juce::juce_opengl juce::juce_video) + +if(CMAKE_SYSTEM_NAME STREQUAL "iOS") + juce_add_bundle_resources_directory(AudioPluginHost ../../examples/Assets) +endif() diff --git a/extras/Build/CMake/JUCEConfig.cmake.in b/extras/Build/CMake/JUCEConfig.cmake.in index 5207058d92..7744edc643 100644 --- a/extras/Build/CMake/JUCEConfig.cmake.in +++ b/extras/Build/CMake/JUCEConfig.cmake.in @@ -1,7 +1,7 @@ # ============================================================================== # # This file is part of the JUCE library. -# Copyright (c) 2017 - ROLI Ltd. +# Copyright (c) 2020 - Raw Material Software Limited # # JUCE is an open source library subject to commercial or open-source # licensing. diff --git a/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt b/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt index 29293e87c6..7086feb335 100644 --- a/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt +++ b/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt @@ -102,16 +102,17 @@ add_library( ${BINARY_NAME} "../../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.cpp" "../../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.h" "../../../../../modules/juce_audio_basics/utilities/juce_ADSR.h" - "../../../../../modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.cpp" - "../../../../../modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.h" "../../../../../modules/juce_audio_basics/utilities/juce_Decibels.h" + "../../../../../modules/juce_audio_basics/utilities/juce_GenericInterpolator.h" "../../../../../modules/juce_audio_basics/utilities/juce_IIRFilter.cpp" "../../../../../modules/juce_audio_basics/utilities/juce_IIRFilter.h" + "../../../../../modules/juce_audio_basics/utilities/juce_Interpolators.cpp" + "../../../../../modules/juce_audio_basics/utilities/juce_Interpolators.h" "../../../../../modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.cpp" - "../../../../../modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.h" "../../../../../modules/juce_audio_basics/utilities/juce_Reverb.h" "../../../../../modules/juce_audio_basics/utilities/juce_SmoothedValue.cpp" "../../../../../modules/juce_audio_basics/utilities/juce_SmoothedValue.h" + "../../../../../modules/juce_audio_basics/utilities/juce_WindowedSincInterpolator.cpp" "../../../../../modules/juce_audio_basics/juce_audio_basics.cpp" "../../../../../modules/juce_audio_basics/juce_audio_basics.mm" "../../../../../modules/juce_audio_basics/juce_audio_basics.h" @@ -1585,16 +1586,17 @@ set_source_files_properties("../../../../../modules/juce_audio_basics/sources/ju set_source_files_properties("../../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_ADSR.h" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_Decibels.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_GenericInterpolator.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_IIRFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_IIRFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_Interpolators.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_Interpolators.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_Reverb.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_SmoothedValue.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_SmoothedValue.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_WindowedSincInterpolator.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/juce_audio_basics.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/juce_audio_basics.mm" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/juce_audio_basics.h" PROPERTIES HEADER_FILE_ONLY TRUE) diff --git a/extras/NetworkGraphicsDemo/Builds/VisualStudio2019/NetworkGraphicsDemo_App.vcxproj b/extras/NetworkGraphicsDemo/Builds/VisualStudio2019/NetworkGraphicsDemo_App.vcxproj index 4f5ababf79..ff2a57d1f2 100644 --- a/extras/NetworkGraphicsDemo/Builds/VisualStudio2019/NetworkGraphicsDemo_App.vcxproj +++ b/extras/NetworkGraphicsDemo/Builds/VisualStudio2019/NetworkGraphicsDemo_App.vcxproj @@ -223,10 +223,10 @@ true - + true - + true @@ -235,6 +235,9 @@ true + + true + true @@ -2132,10 +2135,10 @@ - + - + diff --git a/extras/NetworkGraphicsDemo/Builds/VisualStudio2019/NetworkGraphicsDemo_App.vcxproj.filters b/extras/NetworkGraphicsDemo/Builds/VisualStudio2019/NetworkGraphicsDemo_App.vcxproj.filters index c8ae8119b7..1713ecfff3 100644 --- a/extras/NetworkGraphicsDemo/Builds/VisualStudio2019/NetworkGraphicsDemo_App.vcxproj.filters +++ b/extras/NetworkGraphicsDemo/Builds/VisualStudio2019/NetworkGraphicsDemo_App.vcxproj.filters @@ -538,10 +538,10 @@ JUCE Modules\juce_audio_basics\synthesisers - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -550,6 +550,9 @@ JUCE Modules\juce_audio_basics\utilities + + JUCE Modules\juce_audio_basics\utilities + JUCE Modules\juce_audio_basics @@ -2670,16 +2673,16 @@ JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities diff --git a/extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj b/extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj index cef4ae3a2b..0cc5d787be 100644 --- a/extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj +++ b/extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj @@ -239,10 +239,10 @@ true - + true - + true @@ -251,6 +251,9 @@ true + + true + true @@ -1283,24 +1286,60 @@ true + + true + + + true + + + true + true true + + true + true - + true true + + true + true + + true + + + true + + + true + + + true + + + true + + + true + + + true + true @@ -2303,10 +2342,10 @@ - + - + @@ -2785,21 +2824,33 @@ - + + + - + - - + + - - + + + + + + + + + + + + diff --git a/extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj.filters b/extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj.filters index 25e2315dd5..88b9ebed4e 100644 --- a/extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj.filters +++ b/extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj.filters @@ -338,6 +338,9 @@ {DDF4BA73-8578-406D-21F8-06B9BC70BFEA} + + {73374573-0194-9A6E-461A-A81EEB511C26} + {5DD60D0E-B16A-0BED-EDC4-C56E6960CA9E} @@ -625,10 +628,10 @@ JUCE Modules\juce_audio_basics\synthesisers - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -637,6 +640,9 @@ JUCE Modules\juce_audio_basics\utilities + + JUCE Modules\juce_audio_basics\utilities + JUCE Modules\juce_audio_basics @@ -1723,24 +1729,60 @@ JUCE Modules\juce_dsp\native + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + JUCE Modules\juce_dsp @@ -2931,16 +2973,16 @@ JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -4377,13 +4419,19 @@ JUCE Modules\juce_dsp\native - + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors @@ -4392,15 +4440,15 @@ JUCE Modules\juce_dsp\processors - - JUCE Modules\juce_dsp\processors - - + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors @@ -4413,15 +4461,45 @@ JUCE Modules\juce_dsp\processors - - JUCE Modules\juce_dsp\processors - JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + JUCE Modules\juce_dsp diff --git a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj index 7617069b10..a27581ad11 100644 --- a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj +++ b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj @@ -239,10 +239,10 @@ true - + true - + true @@ -251,6 +251,9 @@ true + + true + true @@ -1283,24 +1286,60 @@ true + + true + + + true + + + true + true true + + true + true - + true true + + true + true + + true + + + true + + + true + + + true + + + true + + + true + + + true + true @@ -2303,10 +2342,10 @@ - + - + @@ -2785,21 +2824,33 @@ - + + + - + - - + + - - + + + + + + + + + + + + diff --git a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters index 6090599833..e64d57000f 100644 --- a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters +++ b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters @@ -338,6 +338,9 @@ {DDF4BA73-8578-406D-21F8-06B9BC70BFEA} + + {73374573-0194-9A6E-461A-A81EEB511C26} + {5DD60D0E-B16A-0BED-EDC4-C56E6960CA9E} @@ -625,10 +628,10 @@ JUCE Modules\juce_audio_basics\synthesisers - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -637,6 +640,9 @@ JUCE Modules\juce_audio_basics\utilities + + JUCE Modules\juce_audio_basics\utilities + JUCE Modules\juce_audio_basics @@ -1723,24 +1729,60 @@ JUCE Modules\juce_dsp\native + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + JUCE Modules\juce_dsp @@ -2931,16 +2973,16 @@ JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -4377,13 +4419,19 @@ JUCE Modules\juce_dsp\native - + + JUCE Modules\juce_dsp\processors + + + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors @@ -4392,15 +4440,15 @@ JUCE Modules\juce_dsp\processors - - JUCE Modules\juce_dsp\processors - - + JUCE Modules\juce_dsp\processors JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\processors + JUCE Modules\juce_dsp\processors @@ -4413,15 +4461,45 @@ JUCE Modules\juce_dsp\processors - - JUCE Modules\juce_dsp\processors - JUCE Modules\juce_dsp\processors - + JUCE Modules\juce_dsp\processors + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + + + JUCE Modules\juce_dsp\widgets + JUCE Modules\juce_dsp diff --git a/extras/WindowsDLL/Builds/VisualStudio2019/WindowsDLL_StaticLibrary.vcxproj b/extras/WindowsDLL/Builds/VisualStudio2019/WindowsDLL_StaticLibrary.vcxproj index b10892c463..fb0a6b9fbc 100644 --- a/extras/WindowsDLL/Builds/VisualStudio2019/WindowsDLL_StaticLibrary.vcxproj +++ b/extras/WindowsDLL/Builds/VisualStudio2019/WindowsDLL_StaticLibrary.vcxproj @@ -222,10 +222,10 @@ true - + true - + true @@ -234,6 +234,9 @@ true + + true + true @@ -2108,10 +2111,10 @@ - + - + diff --git a/extras/WindowsDLL/Builds/VisualStudio2019/WindowsDLL_StaticLibrary.vcxproj.filters b/extras/WindowsDLL/Builds/VisualStudio2019/WindowsDLL_StaticLibrary.vcxproj.filters index a9da2e00e2..46cbea29ed 100644 --- a/extras/WindowsDLL/Builds/VisualStudio2019/WindowsDLL_StaticLibrary.vcxproj.filters +++ b/extras/WindowsDLL/Builds/VisualStudio2019/WindowsDLL_StaticLibrary.vcxproj.filters @@ -535,10 +535,10 @@ JUCE Modules\juce_audio_basics\synthesisers - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities @@ -547,6 +547,9 @@ JUCE Modules\juce_audio_basics\utilities + + JUCE Modules\juce_audio_basics\utilities + JUCE Modules\juce_audio_basics @@ -2637,16 +2640,16 @@ JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities JUCE Modules\juce_audio_basics\utilities - + JUCE Modules\juce_audio_basics\utilities diff --git a/modules/juce_audio_basics/juce_audio_basics.cpp b/modules/juce_audio_basics/juce_audio_basics.cpp index b44855f387..9fe3e779c5 100644 --- a/modules/juce_audio_basics/juce_audio_basics.cpp +++ b/modules/juce_audio_basics/juce_audio_basics.cpp @@ -59,7 +59,8 @@ #include "buffers/juce_AudioProcessLoadMeasurer.cpp" #include "utilities/juce_IIRFilter.cpp" #include "utilities/juce_LagrangeInterpolator.cpp" -#include "utilities/juce_CatmullRomInterpolator.cpp" +#include "utilities/juce_WindowedSincInterpolator.cpp" +#include "utilities/juce_Interpolators.cpp" #include "utilities/juce_SmoothedValue.cpp" #include "midi/juce_MidiBuffer.cpp" #include "midi/juce_MidiFile.cpp" diff --git a/modules/juce_audio_basics/juce_audio_basics.h b/modules/juce_audio_basics/juce_audio_basics.h index 6c26bfda88..ce3a1c1d5f 100644 --- a/modules/juce_audio_basics/juce_audio_basics.h +++ b/modules/juce_audio_basics/juce_audio_basics.h @@ -88,8 +88,8 @@ #include "buffers/juce_AudioProcessLoadMeasurer.h" #include "utilities/juce_Decibels.h" #include "utilities/juce_IIRFilter.h" -#include "utilities/juce_LagrangeInterpolator.h" -#include "utilities/juce_CatmullRomInterpolator.h" +#include "utilities/juce_GenericInterpolator.h" +#include "utilities/juce_Interpolators.h" #include "utilities/juce_SmoothedValue.h" #include "utilities/juce_Reverb.h" #include "utilities/juce_ADSR.h" diff --git a/modules/juce_audio_basics/sources/juce_MemoryAudioSource.cpp b/modules/juce_audio_basics/sources/juce_MemoryAudioSource.cpp index 220a38dd6e..abb1e1fd46 100644 --- a/modules/juce_audio_basics/sources/juce_MemoryAudioSource.cpp +++ b/modules/juce_audio_basics/sources/juce_MemoryAudioSource.cpp @@ -24,7 +24,7 @@ namespace juce { MemoryAudioSource::MemoryAudioSource (AudioBuffer& bufferToUse, bool copyMemory, bool shouldLoop) - : isLooping (shouldLoop) + : isCurrentlyLooping (shouldLoop) { if (copyMemory) buffer.makeCopyOf (bufferToUse); @@ -50,7 +50,7 @@ void MemoryAudioSource::getNextAudioBlock (const AudioSourceChannelInfo& bufferT auto n = buffer.getNumSamples(), m = bufferToFill.numSamples; int i; - for (i = position; (i < n || isLooping) && (pos < m); i += max) + for (i = position; (i < n || isCurrentlyLooping) && (pos < m); i += max) { max = jmin (m - pos, n - (i % n)); @@ -70,4 +70,31 @@ void MemoryAudioSource::getNextAudioBlock (const AudioSourceChannelInfo& bufferT position = (i % n); } +//============================================================================== +void MemoryAudioSource::setNextReadPosition (int64 newPosition) +{ + position = (int) newPosition; +} + +int64 MemoryAudioSource::getNextReadPosition() const +{ + return position; +} + +int64 MemoryAudioSource::getTotalLength() const +{ + return buffer.getNumSamples(); +} + +//============================================================================== +bool MemoryAudioSource::isLooping() const +{ + return isCurrentlyLooping; +} + +void MemoryAudioSource::setLooping (bool shouldLoop) +{ + isCurrentlyLooping = shouldLoop; +} + } // namespace juce diff --git a/modules/juce_audio_basics/sources/juce_MemoryAudioSource.h b/modules/juce_audio_basics/sources/juce_MemoryAudioSource.h index f8b1883e33..414cc65c3c 100644 --- a/modules/juce_audio_basics/sources/juce_MemoryAudioSource.h +++ b/modules/juce_audio_basics/sources/juce_MemoryAudioSource.h @@ -29,7 +29,7 @@ namespace juce @tags{Audio} */ -class JUCE_API MemoryAudioSource : public AudioSource +class JUCE_API MemoryAudioSource : public PositionableAudioSource { public: //============================================================================== @@ -52,11 +52,28 @@ public: /** Implementation of the AudioSource method. */ void getNextAudioBlock (const AudioSourceChannelInfo& bufferToFill) override; + //============================================================================== + /** Implementation of the PositionableAudioSource method. */ + void setNextReadPosition (int64 newPosition) override; + + /** Implementation of the PositionableAudioSource method. */ + int64 getNextReadPosition() const override; + + /** Implementation of the PositionableAudioSource method. */ + int64 getTotalLength() const override; + + //============================================================================== + /** Implementation of the PositionableAudioSource method. */ + bool isLooping() const override; + + /** Implementation of the PositionableAudioSource method. */ + void setLooping (bool shouldLoop) override; + private: //============================================================================== AudioBuffer buffer; int position = 0; - bool isLooping; + bool isCurrentlyLooping; //============================================================================== JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (MemoryAudioSource) diff --git a/modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.cpp b/modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.cpp deleted file mode 100644 index 3f5ea5139a..0000000000 --- a/modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.cpp +++ /dev/null @@ -1,75 +0,0 @@ -/* - ============================================================================== - - This file is part of the JUCE library. - Copyright (c) 2020 - Raw Material Software Limited - - JUCE is an open source library subject to commercial or open-source - licensing. - - The code included in this file is provided under the terms of the ISC license - http://www.isc.org/downloads/software-support-policy/isc-license. Permission - To use, copy, modify, and/or distribute this software for any purpose with or - without fee is hereby granted provided that the above copyright notice and - this permission notice appear in all copies. - - JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER - EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE - DISCLAIMED. - - ============================================================================== -*/ - -namespace juce -{ - -struct CatmullRomAlgorithm -{ - static forcedinline float valueAtOffset (const float* const inputs, const float offset) noexcept - { - auto y0 = inputs[3]; - auto y1 = inputs[2]; - auto y2 = inputs[1]; - auto y3 = inputs[0]; - - auto halfY0 = 0.5f * y0; - auto halfY3 = 0.5f * y3; - - return y1 + offset * ((0.5f * y2 - halfY0) - + (offset * (((y0 + 2.0f * y2) - (halfY3 + 2.5f * y1)) - + (offset * ((halfY3 + 1.5f * y1) - (halfY0 + 1.5f * y2)))))); - } -}; - -CatmullRomInterpolator::CatmullRomInterpolator() noexcept { reset(); } -CatmullRomInterpolator::~CatmullRomInterpolator() noexcept {} - -void CatmullRomInterpolator::reset() noexcept -{ - subSamplePos = 1.0; - - for (auto& s : lastInputSamples) - s = 0; -} - -int CatmullRomInterpolator::process (double actualRatio, const float* in, float* out, int numOut, int available, int wrap) noexcept -{ - return interpolate (lastInputSamples, subSamplePos, actualRatio, in, out, numOut, available, wrap); -} - -int CatmullRomInterpolator::process (double actualRatio, const float* in, float* out, int numOut) noexcept -{ - return interpolate (lastInputSamples, subSamplePos, actualRatio, in, out, numOut); -} - -int CatmullRomInterpolator::processAdding (double actualRatio, const float* in, float* out, int numOut, int available, int wrap, float gain) noexcept -{ - return interpolateAdding (lastInputSamples, subSamplePos, actualRatio, in, out, numOut, available, wrap, gain); -} - -int CatmullRomInterpolator::processAdding (double actualRatio, const float* in, float* out, int numOut, float gain) noexcept -{ - return interpolateAdding (lastInputSamples, subSamplePos, actualRatio, in, out, numOut, gain); -} - -} // namespace juce diff --git a/modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.h b/modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.h deleted file mode 100644 index 292783714a..0000000000 --- a/modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.h +++ /dev/null @@ -1,146 +0,0 @@ -/* - ============================================================================== - - This file is part of the JUCE library. - Copyright (c) 2020 - Raw Material Software Limited - - JUCE is an open source library subject to commercial or open-source - licensing. - - The code included in this file is provided under the terms of the ISC license - http://www.isc.org/downloads/software-support-policy/isc-license. Permission - To use, copy, modify, and/or distribute this software for any purpose with or - without fee is hereby granted provided that the above copyright notice and - this permission notice appear in all copies. - - JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER - EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE - DISCLAIMED. - - ============================================================================== -*/ - -namespace juce -{ - -/** - Interpolator for resampling a stream of floats using Catmull-Rom interpolation. - - Note that the resampler is stateful, so when there's a break in the continuity - of the input stream you're feeding it, you should call reset() before feeding - it any new data. And like with any other stateful filter, if you're resampling - multiple channels, make sure each one uses its own CatmullRomInterpolator - object. - - @see LagrangeInterpolator - - @tags{Audio} -*/ -class JUCE_API CatmullRomInterpolator -{ -public: - CatmullRomInterpolator() noexcept; - ~CatmullRomInterpolator() noexcept; - - CatmullRomInterpolator (CatmullRomInterpolator&&) noexcept = default; - CatmullRomInterpolator& operator= (CatmullRomInterpolator&&) noexcept = default; - - /** Resets the state of the interpolator. - Call this when there's a break in the continuity of the input data stream. - */ - void reset() noexcept; - - /** Resamples a stream of samples. - - @param speedRatio the number of input samples to use for each output sample - @param inputSamples the source data to read from. This must contain at - least (speedRatio * numOutputSamplesToProduce) samples. - @param outputSamples the buffer to write the results into - @param numOutputSamplesToProduce the number of output samples that should be created - - @returns the actual number of input samples that were used - */ - int process (double speedRatio, - const float* inputSamples, - float* outputSamples, - int numOutputSamplesToProduce) noexcept; - - /** Resamples a stream of samples. - - @param speedRatio the number of input samples to use for each output sample - @param inputSamples the source data to read from. This must contain at - least (speedRatio * numOutputSamplesToProduce) samples. - @param outputSamples the buffer to write the results into - @param numOutputSamplesToProduce the number of output samples that should be created - @param available the number of available input samples. If it needs more samples - than available, it either wraps back for wrapAround samples, or - it feeds zeroes - @param wrapAround if the stream exceeds available samples, it wraps back for - wrapAround samples. If wrapAround is set to 0, it will feed zeroes. - - @returns the actual number of input samples that were used - */ - int process (double speedRatio, - const float* inputSamples, - float* outputSamples, - int numOutputSamplesToProduce, - int available, - int wrapAround) noexcept; - - /** Resamples a stream of samples, adding the results to the output data - with a gain. - - @param speedRatio the number of input samples to use for each output sample - @param inputSamples the source data to read from. This must contain at - least (speedRatio * numOutputSamplesToProduce) samples. - @param outputSamples the buffer to write the results to - the result values will be added - to any pre-existing data in this buffer after being multiplied by - the gain factor - @param numOutputSamplesToProduce the number of output samples that should be created - @param gain a gain factor to multiply the resulting samples by before - adding them to the destination buffer - - @returns the actual number of input samples that were used - */ - int processAdding (double speedRatio, - const float* inputSamples, - float* outputSamples, - int numOutputSamplesToProduce, - float gain) noexcept; - - /** Resamples a stream of samples, adding the results to the output data - with a gain. - - @param speedRatio the number of input samples to use for each output sample - @param inputSamples the source data to read from. This must contain at - least (speedRatio * numOutputSamplesToProduce) samples. - @param outputSamples the buffer to write the results to - the result values will be added - to any pre-existing data in this buffer after being multiplied by - the gain factor - @param numOutputSamplesToProduce the number of output samples that should be created - @param available the number of available input samples. If it needs more samples - than available, it either wraps back for wrapAround samples, or - it feeds zeroes - @param wrapAround if the stream exceeds available samples, it wraps back for - wrapAround samples. If wrapAround is set to 0, it will feed zeroes. - @param gain a gain factor to multiply the resulting samples by before - adding them to the destination buffer - - @returns the actual number of input samples that were used - */ - int processAdding (double speedRatio, - const float* inputSamples, - float* outputSamples, - int numOutputSamplesToProduce, - int available, - int wrapAround, - float gain) noexcept; - -private: - float lastInputSamples[5]; - double subSamplePos; - - JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (CatmullRomInterpolator) -}; - -} // namespace juce diff --git a/modules/juce_audio_basics/utilities/juce_GenericInterpolator.h b/modules/juce_audio_basics/utilities/juce_GenericInterpolator.h new file mode 100644 index 0000000000..74475c6d96 --- /dev/null +++ b/modules/juce_audio_basics/utilities/juce_GenericInterpolator.h @@ -0,0 +1,493 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ + +/** + An interpolator base class for resampling streams of floats. + + Note that the resamplers are stateful, so when there's a break in the continuity + of the input stream you're feeding it, you should call reset() before feeding + it any new data. And like with any other stateful filter, if you're resampling + multiple channels, make sure each one uses its own interpolator object. + + @see LagrangeInterpolator, CatmullRomInterpolator, WindowedSincInterpolator, + LinearInterpolator, ZeroOrderHoldInterpolator + + @tags{Audio} +*/ +template +class JUCE_API GenericInterpolator +{ +public: + GenericInterpolator() noexcept { reset(); } + + GenericInterpolator (GenericInterpolator&&) noexcept = default; + GenericInterpolator& operator= (GenericInterpolator&&) noexcept = default; + + /** Returns the latency of the interpolation algorithm in isolation. + + In the context of resampling the total latency of a process using + the interpolator is the base latency divided by the speed ratio. + */ + static constexpr float getBaseLatency() noexcept + { + return InterpolatorTraits::algorithmicLatency; + } + + /** Resets the state of the interpolator. + + Call this when there's a break in the continuity of the input data stream. + */ + void reset() noexcept + { + indexBuffer = 0; + subSamplePos = 1.0; + std::fill (std::begin (lastInputSamples), std::end (lastInputSamples), 0.0f); + } + + /** Resamples a stream of samples. + + @param speedRatio the number of input samples to use for each output sample + @param inputSamples the source data to read from. This must contain at + least (speedRatio * numOutputSamplesToProduce) samples. + @param outputSamples the buffer to write the results into + @param numOutputSamplesToProduce the number of output samples that should be created + + @returns the actual number of input samples that were used + */ + int process (double speedRatio, + const float* inputSamples, + float* outputSamples, + int numOutputSamplesToProduce) noexcept + { + return interpolate (speedRatio, inputSamples, outputSamples, numOutputSamplesToProduce); + } + + /** Resamples a stream of samples. + + @param speedRatio the number of input samples to use for each output sample + @param inputSamples the source data to read from. This must contain at + least (speedRatio * numOutputSamplesToProduce) samples. + @param outputSamples the buffer to write the results into + @param numOutputSamplesToProduce the number of output samples that should be created + @param numInputSamplesAvailable the number of available input samples. If it needs more samples + than available, it either wraps back for wrapAround samples, or + it feeds zeroes + @param wrapAround if the stream exceeds available samples, it wraps back for + wrapAround samples. If wrapAround is set to 0, it will feed zeroes. + + @returns the actual number of input samples that were used + */ + int process (double speedRatio, + const float* inputSamples, + float* outputSamples, + int numOutputSamplesToProduce, + int numInputSamplesAvailable, + int wrapAround) noexcept + { + return interpolate (speedRatio, inputSamples, outputSamples, + numOutputSamplesToProduce, numInputSamplesAvailable, wrapAround); + } + + /** Resamples a stream of samples, adding the results to the output data + with a gain. + + @param speedRatio the number of input samples to use for each output sample + @param inputSamples the source data to read from. This must contain at + least (speedRatio * numOutputSamplesToProduce) samples. + @param outputSamples the buffer to write the results to - the result values will be added + to any pre-existing data in this buffer after being multiplied by + the gain factor + @param numOutputSamplesToProduce the number of output samples that should be created + @param gain a gain factor to multiply the resulting samples by before + adding them to the destination buffer + + @returns the actual number of input samples that were used + */ + int processAdding (double speedRatio, + const float* inputSamples, + float* outputSamples, + int numOutputSamplesToProduce, + float gain) noexcept + { + return interpolateAdding (speedRatio, inputSamples, outputSamples, numOutputSamplesToProduce, gain); + } + + /** Resamples a stream of samples, adding the results to the output data + with a gain. + + @param speedRatio the number of input samples to use for each output sample + @param inputSamples the source data to read from. This must contain at + least (speedRatio * numOutputSamplesToProduce) samples. + @param outputSamples the buffer to write the results to - the result values will be added + to any pre-existing data in this buffer after being multiplied by + the gain factor + @param numOutputSamplesToProduce the number of output samples that should be created + @param numInputSamplesAvailable the number of available input samples. If it needs more samples + than available, it either wraps back for wrapAround samples, or + it feeds zeroes + @param wrapAround if the stream exceeds available samples, it wraps back for + wrapAround samples. If wrapAround is set to 0, it will feed zeroes. + @param gain a gain factor to multiply the resulting samples by before + adding them to the destination buffer + + @returns the actual number of input samples that were used + */ + int processAdding (double speedRatio, + const float* inputSamples, + float* outputSamples, + int numOutputSamplesToProduce, + int numInputSamplesAvailable, + int wrapAround, + float gain) noexcept + { + return interpolateAdding (speedRatio, inputSamples, outputSamples, + numOutputSamplesToProduce, numInputSamplesAvailable, wrapAround, gain); + } + +private: + //============================================================================== + forcedinline void pushInterpolationSample (float newValue) noexcept + { + lastInputSamples[indexBuffer] = newValue; + + if (++indexBuffer == memorySize) + indexBuffer = 0; + } + + forcedinline void pushInterpolationSamples (const float* input, + int numOutputSamplesToProduce) noexcept + { + if (numOutputSamplesToProduce >= memorySize) + { + const auto* const offsetInput = input + (numOutputSamplesToProduce - memorySize); + + for (int i = 0; i < memorySize; ++i) + pushInterpolationSample (offsetInput[i]); + } + else + { + for (int i = 0; i < numOutputSamplesToProduce; ++i) + pushInterpolationSample (input[i]); + } + } + + forcedinline void pushInterpolationSamples (const float* input, + int numOutputSamplesToProduce, + int numInputSamplesAvailable, + int wrapAround) noexcept + { + if (numOutputSamplesToProduce >= memorySize) + { + if (numInputSamplesAvailable >= memorySize) + { + pushInterpolationSamples (input, + numOutputSamplesToProduce); + } + else + { + pushInterpolationSamples (input + ((numOutputSamplesToProduce - numInputSamplesAvailable) - 1), + numInputSamplesAvailable); + + if (wrapAround > 0) + { + numOutputSamplesToProduce -= wrapAround; + + pushInterpolationSamples (input + ((numOutputSamplesToProduce - (memorySize - numInputSamplesAvailable)) - 1), + memorySize - numInputSamplesAvailable); + } + else + { + for (int i = numInputSamplesAvailable; i < memorySize; ++i) + pushInterpolationSample (0.0f); + } + } + } + else + { + if (numOutputSamplesToProduce > numInputSamplesAvailable) + { + for (int i = 0; i < numInputSamplesAvailable; ++i) + pushInterpolationSample (input[i]); + + const auto extraSamples = numOutputSamplesToProduce - numInputSamplesAvailable; + + if (wrapAround > 0) + { + const auto* const offsetInput = input + (numInputSamplesAvailable - wrapAround); + + for (int i = 0; i < extraSamples; ++i) + pushInterpolationSample (offsetInput[i]); + } + else + { + for (int i = 0; i < extraSamples; ++i) + pushInterpolationSample (0.0f); + } + } + else + { + for (int i = 0; i < numOutputSamplesToProduce; ++i) + pushInterpolationSample (input[i]); + } + } + } + + //============================================================================== + int interpolate (double speedRatio, + const float* input, + float* output, + int numOutputSamplesToProduce) noexcept + { + auto pos = subSamplePos; + int numUsed = 0; + + while (numOutputSamplesToProduce > 0) + { + while (pos >= 1.0) + { + pushInterpolationSample (input[numUsed++]); + pos -= 1.0; + } + + *output++ = InterpolatorTraits::valueAtOffset (lastInputSamples, (float) pos, indexBuffer); + pos += speedRatio; + --numOutputSamplesToProduce; + } + + subSamplePos = pos; + return numUsed; + } + + int interpolate (double speedRatio, + const float* input, float* output, + int numOutputSamplesToProduce, + int numInputSamplesAvailable, + int wrap) noexcept + { + auto originalIn = input; + auto pos = subSamplePos; + bool exceeded = false; + + if (speedRatio < 1.0) + { + for (int i = numOutputSamplesToProduce; --i >= 0;) + { + if (pos >= 1.0) + { + if (exceeded) + { + pushInterpolationSample (0.0f); + } + else + { + pushInterpolationSample (*input++); + + if (--numInputSamplesAvailable <= 0) + { + if (wrap > 0) + { + input -= wrap; + numInputSamplesAvailable += wrap; + } + else + { + exceeded = true; + } + } + } + + pos -= 1.0; + } + + *output++ = InterpolatorTraits::valueAtOffset (lastInputSamples, (float) pos, indexBuffer); + pos += speedRatio; + } + } + else + { + for (int i = numOutputSamplesToProduce; --i >= 0;) + { + while (pos < speedRatio) + { + if (exceeded) + { + pushInterpolationSample (0); + } + else + { + pushInterpolationSample (*input++); + + if (--numInputSamplesAvailable <= 0) + { + if (wrap > 0) + { + input -= wrap; + numInputSamplesAvailable += wrap; + } + else + { + exceeded = true; + } + } + } + + pos += 1.0; + } + + pos -= speedRatio; + *output++ = InterpolatorTraits::valueAtOffset (lastInputSamples, jmax (0.0f, 1.0f - (float) pos), indexBuffer); + } + } + + subSamplePos = pos; + + if (wrap == 0) + return (int) (input - originalIn); + + return ((int) (input - originalIn) + wrap) % wrap; + } + + int interpolateAdding (double speedRatio, + const float* input, + float* output, + int numOutputSamplesToProduce, + int numInputSamplesAvailable, + int wrap, + float gain) noexcept + { + auto originalIn = input; + auto pos = subSamplePos; + bool exceeded = false; + + if (speedRatio < 1.0) + { + for (int i = numOutputSamplesToProduce; --i >= 0;) + { + if (pos >= 1.0) + { + if (exceeded) + { + pushInterpolationSample (0.0); + } + else + { + pushInterpolationSample (*input++); + + if (--numInputSamplesAvailable <= 0) + { + if (wrap > 0) + { + input -= wrap; + numInputSamplesAvailable += wrap; + } + else + { + numInputSamplesAvailable = true; + } + } + } + + pos -= 1.0; + } + + *output++ += gain * InterpolatorTraits::valueAtOffset ((float) pos); + pos += speedRatio; + } + } + else + { + for (int i = numOutputSamplesToProduce; --i >= 0;) + { + while (pos < speedRatio) + { + if (exceeded) + { + pushInterpolationSample (0.0); + } + else + { + pushInterpolationSample (*input++); + + if (--numInputSamplesAvailable <= 0) + { + if (wrap > 0) + { + input -= wrap; + numInputSamplesAvailable += wrap; + } + else + { + exceeded = true; + } + } + } + + pos += 1.0; + } + + pos -= speedRatio; + *output++ += gain * InterpolatorTraits::valueAtOffset (lastInputSamples, jmax (0.0f, 1.0f - (float) pos), indexBuffer); + } + } + + subSamplePos = pos; + + if (wrap == 0) + return (int) (input - originalIn); + + return ((int) (input - originalIn) + wrap) % wrap; + } + + int interpolateAdding (double speedRatio, + const float* input, + float* output, + int numOutputSamplesToProduce, + float gain) noexcept + { + auto pos = subSamplePos; + int numUsed = 0; + + while (numOutputSamplesToProduce > 0) + { + while (pos >= 1.0) + { + pushInterpolationSample (input[numUsed++]); + pos -= 1.0; + } + + *output++ += gain * InterpolatorTraits::valueAtOffset (lastInputSamples, (float) pos, indexBuffer); + pos += speedRatio; + --numOutputSamplesToProduce; + } + + subSamplePos = pos; + return numUsed; + } + + //============================================================================== + float lastInputSamples[(size_t) memorySize]; + double subSamplePos = 1.0; + int indexBuffer = 0; + + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (GenericInterpolator) +}; + +} // namespace juce diff --git a/modules/juce_audio_basics/utilities/juce_Interpolators.cpp b/modules/juce_audio_basics/utilities/juce_Interpolators.cpp new file mode 100644 index 0000000000..37a39261ff --- /dev/null +++ b/modules/juce_audio_basics/utilities/juce_Interpolators.cpp @@ -0,0 +1,184 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ + +#if JUCE_UNIT_TESTS + +class InterpolatorTests : public UnitTest +{ +public: + InterpolatorTests() + : UnitTest ("InterpolatorTests", UnitTestCategories::audio) + { + } + +private: + template + void runInterplatorTests (const String& interpolatorName) + { + auto createGaussian = [](std::vector& destination, float scale, float centreInSamples, float width) + { + for (size_t i = 0; i < destination.size(); ++i) + { + auto x = (((float) i) - centreInSamples) * width; + destination[i] = std::exp (-(x * x)); + } + + FloatVectorOperations::multiply (destination.data(), scale, (int) destination.size()); + }; + + auto findGaussianPeak = [](const std::vector& input) -> float + { + auto max = std::max_element (std::begin (input), std::end (input)); + auto maxPrev = max - 1; + jassert (maxPrev >= std::begin (input)); + auto maxNext = max + 1; + jassert (maxNext < std::end (input)); + auto quadraticMaxLoc = (*maxPrev - *maxNext) / (2.0f * ((*maxNext + *maxPrev) - (2.0f * *max))); + return quadraticMaxLoc + (float) std::distance (std::begin (input), max); + }; + + auto expectAllElementsWithin = [this](const std::vector& v1, const std::vector& v2, float tolerance) + { + expectEquals ((int) v1.size(), (int) v2.size()); + + for (size_t i = 0; i < v1.size(); ++i) + expectWithinAbsoluteError (v1[i], v2[i], tolerance); + }; + + InterpolatorType interpolator; + + constexpr size_t inputSize = 1001; + static_assert (inputSize > 800 + InterpolatorType::getBaseLatency(), + "The test InterpolatorTests input buffer is too small"); + + std::vector input (inputSize); + constexpr auto inputGaussianMidpoint = (float) (inputSize - 1) / 2.0f; + constexpr auto inputGaussianValueAtEnds = 0.000001f; + const auto inputGaussianWidth = std::sqrt (-std::log (inputGaussianValueAtEnds)) / inputGaussianMidpoint; + + createGaussian (input, 1.0f, inputGaussianMidpoint, inputGaussianWidth); + + for (auto speedRatio : { 0.4, 0.8263, 1.0, 1.05, 1.2384, 1.6 }) + { + const auto expectedGaussianMidpoint = (inputGaussianMidpoint + InterpolatorType::getBaseLatency()) / (float) speedRatio; + const auto expectedGaussianWidth = inputGaussianWidth * (float) speedRatio; + + const auto outputBufferSize = (size_t) std::floor ((float) input.size() / speedRatio); + + for (int numBlocks : { 1, 5 }) + { + const auto inputBlockSize = (float) input.size() / (float) numBlocks; + const auto outputBlockSize = (int) std::floor (inputBlockSize / speedRatio); + + std::vector output (outputBufferSize, std::numeric_limits::min()); + + beginTest (interpolatorName + " process " + String (numBlocks) + " blocks ratio " + String (speedRatio)); + + interpolator.reset(); + + { + auto* inputPtr = input.data(); + auto* outputPtr = output.data(); + + for (int i = 0; i < numBlocks; ++i) + { + auto numInputSamplesRead = interpolator.process (speedRatio, inputPtr, outputPtr, outputBlockSize); + inputPtr += numInputSamplesRead; + outputPtr += outputBlockSize; + } + } + + expectWithinAbsoluteError (findGaussianPeak (output), expectedGaussianMidpoint, 0.1f); + + std::vector expectedOutput (output.size()); + createGaussian (expectedOutput, 1.0f, expectedGaussianMidpoint, expectedGaussianWidth); + + expectAllElementsWithin (output, expectedOutput, 0.02f); + + beginTest (interpolatorName + " process adding " + String (numBlocks) + " blocks ratio " + String (speedRatio)); + + interpolator.reset(); + + constexpr float addingGain = 0.7384f; + + { + auto* inputPtr = input.data(); + auto* outputPtr = output.data(); + + for (int i = 0; i < numBlocks; ++i) + { + auto numInputSamplesRead = interpolator.processAdding (speedRatio, inputPtr, outputPtr, outputBlockSize, addingGain); + inputPtr += numInputSamplesRead; + outputPtr += outputBlockSize; + } + } + + expectWithinAbsoluteError (findGaussianPeak (output), expectedGaussianMidpoint, 0.1f); + + std::vector additionalOutput (output.size()); + createGaussian (additionalOutput, addingGain, expectedGaussianMidpoint, expectedGaussianWidth); + FloatVectorOperations::add (expectedOutput.data(), additionalOutput.data(), (int) additionalOutput.size()); + + expectAllElementsWithin (output, expectedOutput, 0.02f); + } + + beginTest (interpolatorName + " process wrap 0 ratio " + String (speedRatio)); + + std::vector doubleLengthOutput (2 * outputBufferSize, std::numeric_limits::min()); + + interpolator.reset(); + interpolator.process (speedRatio, input.data(), doubleLengthOutput.data(), (int) doubleLengthOutput.size(), + (int) input.size(), 0); + + std::vector expectedDoubleLengthOutput (doubleLengthOutput.size()); + createGaussian (expectedDoubleLengthOutput, 1.0f, expectedGaussianMidpoint, expectedGaussianWidth); + + expectAllElementsWithin (doubleLengthOutput, expectedDoubleLengthOutput, 0.02f); + + beginTest (interpolatorName + " process wrap double ratio " + String (speedRatio)); + + interpolator.reset(); + interpolator.process (speedRatio, input.data(), doubleLengthOutput.data(), (int) doubleLengthOutput.size(), + (int) input.size(), (int) input.size()); + + std::vector secondGaussian (doubleLengthOutput.size()); + createGaussian (secondGaussian, 1.0f, expectedGaussianMidpoint + outputBufferSize, expectedGaussianWidth); + FloatVectorOperations::add (expectedDoubleLengthOutput.data(), secondGaussian.data(), (int) expectedDoubleLengthOutput.size()); + + expectAllElementsWithin (doubleLengthOutput, expectedDoubleLengthOutput, 0.02f); + } + } + +public: + void runTest() override + { + runInterplatorTests ("WindowedSincInterpolator"); + runInterplatorTests ("LagrangeInterpolator"); + runInterplatorTests ("CatmullRomInterpolator"); + runInterplatorTests ("LinearInterpolator"); + } +}; + +static InterpolatorTests interpolatorTests; + +#endif + +} // namespace juce diff --git a/modules/juce_audio_basics/utilities/juce_Interpolators.h b/modules/juce_audio_basics/utilities/juce_Interpolators.h new file mode 100644 index 0000000000..c30d92b7cb --- /dev/null +++ b/modules/juce_audio_basics/utilities/juce_Interpolators.h @@ -0,0 +1,228 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ + +class Interpolators +{ +private: + struct WindowedSincTraits + { + static constexpr float algorithmicLatency = 100.0f; + + static forcedinline float windowedSinc (float firstFrac, int index) noexcept + { + auto index2 = index + 1; + auto frac = firstFrac; + + auto value1 = lookupTable[index]; + auto value2 = lookupTable[index2]; + + return value1 + (frac * (value2 - value1)); + } + + static forcedinline float valueAtOffset (const float* const inputs, const float offset, int indexBuffer) noexcept + { + int numCrossings = 100; + float result = 0.0f; + + auto samplePosition = indexBuffer; + float firstFrac = 0.0f; + float lastSincPosition = -1.0f; + int index = 0, sign = -1; + + for (int i = -numCrossings; i <= numCrossings; ++i) + { + auto sincPosition = (1.0f - offset) + (float) i; + + if (i == -numCrossings || (sincPosition >= 0 && lastSincPosition < 0)) + { + auto indexFloat = (sincPosition >= 0.f ? sincPosition : -sincPosition) * 100.0f; + index = (int) std::floor (indexFloat); + firstFrac = indexFloat - index; + sign = (sincPosition < 0 ? -1 : 1); + } + + if (sincPosition == 0.0f) + result += inputs[samplePosition]; + else if (sincPosition < numCrossings && sincPosition > -numCrossings) + result += inputs[samplePosition] * windowedSinc (firstFrac, index); + + if (++samplePosition == numCrossings * 2) + samplePosition = 0; + + lastSincPosition = sincPosition; + index += 100 * sign; + } + + return result; + } + + static const float lookupTable[10001]; + }; + + struct LagrangeTraits + { + static constexpr float algorithmicLatency = 2.0f; + + static float valueAtOffset (const float*, float, int) noexcept; + }; + + struct CatmullRomTraits + { + //============================================================================== + static constexpr float algorithmicLatency = 2.0f; + + static forcedinline float valueAtOffset (const float* const inputs, const float offset, int index) noexcept + { + auto y0 = inputs[index]; if (++index == 4) index = 0; + auto y1 = inputs[index]; if (++index == 4) index = 0; + auto y2 = inputs[index]; if (++index == 4) index = 0; + auto y3 = inputs[index]; + + auto halfY0 = 0.5f * y0; + auto halfY3 = 0.5f * y3; + + return y1 + offset * ((0.5f * y2 - halfY0) + + (offset * (((y0 + 2.0f * y2) - (halfY3 + 2.5f * y1)) + + (offset * ((halfY3 + 1.5f * y1) - (halfY0 + 1.5f * y2)))))); + } + }; + + struct LinearTraits + { + static constexpr float algorithmicLatency = 1.0f; + + static forcedinline float valueAtOffset (const float* const inputs, const float offset, int index) noexcept + { + auto y0 = inputs[index]; + auto y1 = inputs[index == 0 ? 1 : 0]; + + return y1 * offset + y0 * (1.0f - offset); + } + }; + + struct ZeroOrderHoldTraits + { + static constexpr float algorithmicLatency = 0.0f; + + static forcedinline float valueAtOffset (const float* const inputs, const float, int) noexcept + { + return inputs[0]; + } + }; + +public: + using WindowedSinc = GenericInterpolator; + using Lagrange = GenericInterpolator; + using CatmullRom = GenericInterpolator; + using Linear = GenericInterpolator; + using ZeroOrderHold = GenericInterpolator; +}; + +//============================================================================== +/** + An interpolator for resampling a stream of floats using high order windowed + (hann) sinc interpolation, recommended for high quality resampling. + + Note that the resampler is stateful, so when there's a break in the continuity + of the input stream you're feeding it, you should call reset() before feeding + it any new data. And like with any other stateful filter, if you're resampling + multiple channels, make sure each one uses its own LinearInterpolator object. + + @see GenericInterpolator + + @see LagrangeInterpolator, CatmullRomInterpolator, LinearInterpolator, + ZeroOrderHoldInterpolator + + @tags{Audio} +*/ +using WindowedSincInterpolator = Interpolators::WindowedSinc; + +/** + An interpolator for resampling a stream of floats using 4-point lagrange interpolation. + + Note that the resampler is stateful, so when there's a break in the continuity + of the input stream you're feeding it, you should call reset() before feeding + it any new data. And like with any other stateful filter, if you're resampling + multiple channels, make sure each one uses its own LagrangeInterpolator object. + + @see GenericInterpolator + + @see CatmullRomInterpolator, WindowedSincInterpolator, LinearInterpolator, + ZeroOrderHoldInterpolator + + @tags{Audio} +*/ +using LagrangeInterpolator = Interpolators::Lagrange; + +/** + An interpolator for resampling a stream of floats using Catmull-Rom interpolation. + + Note that the resampler is stateful, so when there's a break in the continuity + of the input stream you're feeding it, you should call reset() before feeding + it any new data. And like with any other stateful filter, if you're resampling + multiple channels, make sure each one uses its own CatmullRomInterpolator object. + + @see GenericInterpolator + + @see LagrangeInterpolator, WindowedSincInterpolator, LinearInterpolator, + ZeroOrderHoldInterpolator + + @tags{Audio} +*/ +using CatmullRomInterpolator = Interpolators::CatmullRom; + +/** + An interpolator for resampling a stream of floats using linear interpolation. + + Note that the resampler is stateful, so when there's a break in the continuity + of the input stream you're feeding it, you should call reset() before feeding + it any new data. And like with any other stateful filter, if you're resampling + multiple channels, make sure each one uses its own LinearInterpolator object. + + @see GenericInterpolator + + @see LagrangeInterpolator, CatmullRomInterpolator, WindowedSincInterpolator, + ZeroOrderHoldInterpolator + + @tags{Audio} +*/ +using LinearInterpolator = Interpolators::Linear; + +/** + An interpolator for resampling a stream of floats using zero order hold + interpolation. + + Note that the resampler is stateful, so when there's a break in the continuity + of the input stream you're feeding it, you should call reset() before feeding + it any new data. And like with any other stateful filter, if you're resampling + multiple channels, make sure each one uses its own ZeroOrderHoldInterpolator + object. + + @see GenericInterpolator + + @see LagrangeInterpolator, CatmullRomInterpolator, WindowedSincInterpolator, + LinearInterpolator + + @tags{Audio} +*/ +using ZeroOrderHoldInterpolator = Interpolators::ZeroOrderHold; + +} // namespace juce diff --git a/modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.cpp b/modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.cpp index d0026d15bd..0fd5ce840e 100644 --- a/modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.cpp +++ b/modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.cpp @@ -23,381 +23,6 @@ namespace juce { -namespace -{ - static forcedinline void pushInterpolationSample (float* lastInputSamples, float newValue) noexcept - { - lastInputSamples[4] = lastInputSamples[3]; - lastInputSamples[3] = lastInputSamples[2]; - lastInputSamples[2] = lastInputSamples[1]; - lastInputSamples[1] = lastInputSamples[0]; - lastInputSamples[0] = newValue; - } - - static forcedinline void pushInterpolationSamples (float* lastInputSamples, const float* input, int numOut) noexcept - { - if (numOut >= 5) - { - for (int i = 0; i < 5; ++i) - lastInputSamples[i] = input[--numOut]; - } - else - { - for (int i = 0; i < numOut; ++i) - pushInterpolationSample (lastInputSamples, input[i]); - } - } - - static forcedinline void pushInterpolationSamples (float* lastInputSamples, const float* input, - int numOut, int available, int wrapAround) noexcept - { - if (numOut >= 5) - { - if (available >= 5) - { - for (int i = 0; i < 5; ++i) - lastInputSamples[i] = input[--numOut]; - } - else - { - for (int i = 0; i < available; ++i) - lastInputSamples[i] = input[--numOut]; - - if (wrapAround > 0) - { - numOut -= wrapAround; - - for (int i = available; i < 5; ++i) - lastInputSamples[i] = input[--numOut]; - } - else - { - for (int i = available; i < 5; ++i) - lastInputSamples[i] = 0.0f; - } - } - } - else - { - if (numOut > available) - { - for (int i = 0; i < available; ++i) - pushInterpolationSample (lastInputSamples, input[i]); - - if (wrapAround > 0) - { - for (int i = 0; i < numOut - available; ++i) - pushInterpolationSample (lastInputSamples, input[i + available - wrapAround]); - } - else - { - for (int i = 0; i < numOut - available; ++i) - pushInterpolationSample (lastInputSamples, 0); - } - } - else - { - for (int i = 0; i < numOut; ++i) - pushInterpolationSample (lastInputSamples, input[i]); - } - } - } - - template - static int interpolate (float* lastInputSamples, double& subSamplePos, double actualRatio, - const float* in, float* out, int numOut) noexcept - { - auto pos = subSamplePos; - - if (actualRatio == 1.0 && pos == 1.0) - { - memcpy (out, in, (size_t) numOut * sizeof (float)); - pushInterpolationSamples (lastInputSamples, in, numOut); - return numOut; - } - - int numUsed = 0; - - while (numOut > 0) - { - while (pos >= 1.0) - { - pushInterpolationSample (lastInputSamples, in[numUsed++]); - pos -= 1.0; - } - - *out++ = InterpolatorType::valueAtOffset (lastInputSamples, (float) pos); - pos += actualRatio; - --numOut; - } - - subSamplePos = pos; - return numUsed; - } - - template - static int interpolate (float* lastInputSamples, double& subSamplePos, double actualRatio, - const float* in, float* out, int numOut, int available, int wrap) noexcept - { - if (actualRatio == 1.0) - { - if (available >= numOut) - { - memcpy (out, in, (size_t) numOut * sizeof (float)); - pushInterpolationSamples (lastInputSamples, in, numOut, available, wrap); - } - else - { - memcpy (out, in, (size_t) available * sizeof (float)); - pushInterpolationSamples (lastInputSamples, in, numOut, available, wrap); - - if (wrap > 0) - { - memcpy (out + available, in + available - wrap, (size_t) (numOut - available) * sizeof (float)); - pushInterpolationSamples (lastInputSamples, in, numOut, available, wrap); - } - else - { - for (int i = 0; i < numOut - available; ++i) - pushInterpolationSample (lastInputSamples, 0); - } - } - - return numOut; - } - - auto originalIn = in; - auto pos = subSamplePos; - bool exceeded = false; - - if (actualRatio < 1.0) - { - for (int i = numOut; --i >= 0;) - { - if (pos >= 1.0) - { - if (exceeded) - { - pushInterpolationSample (lastInputSamples, 0); - } - else - { - pushInterpolationSample (lastInputSamples, *in++); - - if (--available <= 0) - { - if (wrap > 0) - { - in -= wrap; - available += wrap; - } - else - { - exceeded = true; - } - } - } - - pos -= 1.0; - } - - *out++ = InterpolatorType::valueAtOffset (lastInputSamples, (float) pos); - pos += actualRatio; - } - } - else - { - for (int i = numOut; --i >= 0;) - { - while (pos < actualRatio) - { - if (exceeded) - { - pushInterpolationSample (lastInputSamples, 0); - } - else - { - pushInterpolationSample (lastInputSamples, *in++); - - if (--available <= 0) - { - if (wrap > 0) - { - in -= wrap; - available += wrap; - } - else - { - exceeded = true; - } - } - } - - pos += 1.0; - } - - pos -= actualRatio; - *out++ = InterpolatorType::valueAtOffset (lastInputSamples, jmax (0.0f, 1.0f - (float) pos)); - } - } - - subSamplePos = pos; - - if (wrap == 0) - return (int) (in - originalIn); - - return ((int) (in - originalIn) + wrap) % wrap; - } - - template - static int interpolateAdding (float* lastInputSamples, double& subSamplePos, double actualRatio, - const float* in, float* out, int numOut, - int available, int wrap, float gain) noexcept - { - if (actualRatio == 1.0) - { - if (available >= numOut) - { - FloatVectorOperations::addWithMultiply (out, in, gain, numOut); - pushInterpolationSamples (lastInputSamples, in, numOut, available, wrap); - } - else - { - FloatVectorOperations::addWithMultiply (out, in, gain, available); - pushInterpolationSamples (lastInputSamples, in, available, available, wrap); - - if (wrap > 0) - { - FloatVectorOperations::addWithMultiply (out, in - wrap, gain, numOut - available); - pushInterpolationSamples (lastInputSamples, in - wrap, numOut - available, available, wrap); - } - else - { - for (int i = 0; i < numOut-available; ++i) - pushInterpolationSample (lastInputSamples, 0.0); - } - } - - return numOut; - } - - auto originalIn = in; - auto pos = subSamplePos; - bool exceeded = false; - - if (actualRatio < 1.0) - { - for (int i = numOut; --i >= 0;) - { - if (pos >= 1.0) - { - if (exceeded) - { - pushInterpolationSample (lastInputSamples, 0.0); - } - else - { - pushInterpolationSample (lastInputSamples, *in++); - - if (--available <= 0) - { - if (wrap > 0) - { - in -= wrap; - available += wrap; - } - else - { - exceeded = true; - } - } - } - - pos -= 1.0; - } - - *out++ += gain * InterpolatorType::valueAtOffset (lastInputSamples, (float) pos); - pos += actualRatio; - } - } - else - { - for (int i = numOut; --i >= 0;) - { - while (pos < actualRatio) - { - if (exceeded) - { - pushInterpolationSample (lastInputSamples, 0.0); - } - else - { - pushInterpolationSample (lastInputSamples, *in++); - - if (--available <= 0) - { - if (wrap > 0) - { - in -= wrap; - available += wrap; - } - else - { - exceeded = true; - } - } - } - - pos += 1.0; - } - - pos -= actualRatio; - *out++ += gain * InterpolatorType::valueAtOffset (lastInputSamples, jmax (0.0f, 1.0f - (float) pos)); - } - } - - subSamplePos = pos; - - if (wrap == 0) - return (int) (in - originalIn); - - return ((int) (in - originalIn) + wrap) % wrap; - } - - template - static int interpolateAdding (float* lastInputSamples, double& subSamplePos, double actualRatio, - const float* in, float* out, int numOut, float gain) noexcept - { - auto pos = subSamplePos; - - if (actualRatio == 1.0 && pos == 1.0) - { - FloatVectorOperations::addWithMultiply (out, in, gain, numOut); - pushInterpolationSamples (lastInputSamples, in, numOut); - return numOut; - } - - int numUsed = 0; - - while (numOut > 0) - { - while (pos >= 1.0) - { - pushInterpolationSample (lastInputSamples, in[numUsed++]); - pos -= 1.0; - } - - *out++ += gain * InterpolatorType::valueAtOffset (lastInputSamples, (float) pos); - pos += actualRatio; - --numOut; - } - - subSamplePos = pos; - return numUsed; - } -} - -//============================================================================== template struct LagrangeResampleHelper { @@ -410,58 +35,28 @@ struct LagrangeResampleHelper<0> static forcedinline void calc (float&, float) noexcept {} }; -struct LagrangeAlgorithm +template +static float calcCoefficient (float input, float offset) noexcept { - static forcedinline float valueAtOffset (const float* inputs, float offset) noexcept - { - return calcCoefficient<0> (inputs[4], offset) - + calcCoefficient<1> (inputs[3], offset) - + calcCoefficient<2> (inputs[2], offset) - + calcCoefficient<3> (inputs[1], offset) - + calcCoefficient<4> (inputs[0], offset); - } - - template - static forcedinline float calcCoefficient (float input, float offset) noexcept - { - LagrangeResampleHelper<0 - k>::calc (input, -2.0f - offset); - LagrangeResampleHelper<1 - k>::calc (input, -1.0f - offset); - LagrangeResampleHelper<2 - k>::calc (input, 0.0f - offset); - LagrangeResampleHelper<3 - k>::calc (input, 1.0f - offset); - LagrangeResampleHelper<4 - k>::calc (input, 2.0f - offset); - return input; - } -}; - -LagrangeInterpolator::LagrangeInterpolator() noexcept { reset(); } -LagrangeInterpolator::~LagrangeInterpolator() noexcept {} - -void LagrangeInterpolator::reset() noexcept -{ - subSamplePos = 1.0; - - for (auto& s : lastInputSamples) - s = 0; + LagrangeResampleHelper<0 - k>::calc (input, -2.0f - offset); + LagrangeResampleHelper<1 - k>::calc (input, -1.0f - offset); + LagrangeResampleHelper<2 - k>::calc (input, 0.0f - offset); + LagrangeResampleHelper<3 - k>::calc (input, 1.0f - offset); + LagrangeResampleHelper<4 - k>::calc (input, 2.0f - offset); + return input; } -int LagrangeInterpolator::process (double actualRatio, const float* in, float* out, int numOut, int available, int wrap) noexcept +float Interpolators::LagrangeTraits::valueAtOffset (const float* inputs, float offset, int index) noexcept { - return interpolate (lastInputSamples, subSamplePos, actualRatio, in, out, numOut, available, wrap); -} + float result = 0.0f; -int LagrangeInterpolator::process (double actualRatio, const float* in, float* out, int numOut) noexcept -{ - return interpolate (lastInputSamples, subSamplePos, actualRatio, in, out, numOut); -} + result += calcCoefficient<0> (inputs[index], offset); if (++index == 5) index = 0; + result += calcCoefficient<1> (inputs[index], offset); if (++index == 5) index = 0; + result += calcCoefficient<2> (inputs[index], offset); if (++index == 5) index = 0; + result += calcCoefficient<3> (inputs[index], offset); if (++index == 5) index = 0; + result += calcCoefficient<4> (inputs[index], offset); -int LagrangeInterpolator::processAdding (double actualRatio, const float* in, float* out, int numOut, int available, int wrap, float gain) noexcept -{ - return interpolateAdding (lastInputSamples, subSamplePos, actualRatio, in, out, numOut, available, wrap, gain); -} - -int LagrangeInterpolator::processAdding (double actualRatio, const float* in, float* out, int numOut, float gain) noexcept -{ - return interpolateAdding (lastInputSamples, subSamplePos, actualRatio, in, out, numOut, gain); + return result; } } // namespace juce diff --git a/modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.h b/modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.h deleted file mode 100644 index 6bff03e0ef..0000000000 --- a/modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.h +++ /dev/null @@ -1,146 +0,0 @@ -/* - ============================================================================== - - This file is part of the JUCE library. - Copyright (c) 2020 - Raw Material Software Limited - - JUCE is an open source library subject to commercial or open-source - licensing. - - The code included in this file is provided under the terms of the ISC license - http://www.isc.org/downloads/software-support-policy/isc-license. Permission - To use, copy, modify, and/or distribute this software for any purpose with or - without fee is hereby granted provided that the above copyright notice and - this permission notice appear in all copies. - - JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER - EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE - DISCLAIMED. - - ============================================================================== -*/ - -namespace juce -{ - -/** - Interpolator for resampling a stream of floats using 4-point lagrange interpolation. - - Note that the resampler is stateful, so when there's a break in the continuity - of the input stream you're feeding it, you should call reset() before feeding - it any new data. And like with any other stateful filter, if you're resampling - multiple channels, make sure each one uses its own LagrangeInterpolator - object. - - @see CatmullRomInterpolator - - @tags{Audio} -*/ -class JUCE_API LagrangeInterpolator -{ -public: - LagrangeInterpolator() noexcept; - ~LagrangeInterpolator() noexcept; - - LagrangeInterpolator (LagrangeInterpolator&&) noexcept = default; - LagrangeInterpolator& operator= (LagrangeInterpolator&&) noexcept = default; - - /** Resets the state of the interpolator. - Call this when there's a break in the continuity of the input data stream. - */ - void reset() noexcept; - - /** Resamples a stream of samples. - - @param speedRatio the number of input samples to use for each output sample - @param inputSamples the source data to read from. This must contain at - least (speedRatio * numOutputSamplesToProduce) samples. - @param outputSamples the buffer to write the results into - @param numOutputSamplesToProduce the number of output samples that should be created - - @returns the actual number of input samples that were used - */ - int process (double speedRatio, - const float* inputSamples, - float* outputSamples, - int numOutputSamplesToProduce) noexcept; - - /** Resamples a stream of samples. - - @param speedRatio the number of input samples to use for each output sample - @param inputSamples the source data to read from. This must contain at - least (speedRatio * numOutputSamplesToProduce) samples. - @param outputSamples the buffer to write the results into - @param numOutputSamplesToProduce the number of output samples that should be created - @param available the number of available input samples. If it needs more samples - than available, it either wraps back for wrapAround samples, or - it feeds zeroes - @param wrapAround if the stream exceeds available samples, it wraps back for - wrapAround samples. If wrapAround is set to 0, it will feed zeroes. - - @returns the actual number of input samples that were used - */ - int process (double speedRatio, - const float* inputSamples, - float* outputSamples, - int numOutputSamplesToProduce, - int available, - int wrapAround) noexcept; - - /** Resamples a stream of samples, adding the results to the output data - with a gain. - - @param speedRatio the number of input samples to use for each output sample - @param inputSamples the source data to read from. This must contain at - least (speedRatio * numOutputSamplesToProduce) samples. - @param outputSamples the buffer to write the results to - the result values will be added - to any pre-existing data in this buffer after being multiplied by - the gain factor - @param numOutputSamplesToProduce the number of output samples that should be created - @param gain a gain factor to multiply the resulting samples by before - adding them to the destination buffer - - @returns the actual number of input samples that were used - */ - int processAdding (double speedRatio, - const float* inputSamples, - float* outputSamples, - int numOutputSamplesToProduce, - float gain) noexcept; - - /** Resamples a stream of samples, adding the results to the output data - with a gain. - - @param speedRatio the number of input samples to use for each output sample - @param inputSamples the source data to read from. This must contain at - least (speedRatio * numOutputSamplesToProduce) samples. - @param outputSamples the buffer to write the results to - the result values will be added - to any pre-existing data in this buffer after being multiplied by - the gain factor - @param numOutputSamplesToProduce the number of output samples that should be created - @param available the number of available input samples. If it needs more samples - than available, it either wraps back for wrapAround samples, or - it feeds zeroes - @param wrapAround if the stream exceeds available samples, it wraps back for - wrapAround samples. If wrapAround is set to 0, it will feed zeroes. - @param gain a gain factor to multiply the resulting samples by before - adding them to the destination buffer - - @returns the actual number of input samples that were used - */ - int processAdding (double speedRatio, - const float* inputSamples, - float* outputSamples, - int numOutputSamplesToProduce, - int available, - int wrapAround, - float gain) noexcept; - -private: - float lastInputSamples[5]; - double subSamplePos; - - JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (LagrangeInterpolator) -}; - -} // namespace juce diff --git a/modules/juce_audio_basics/utilities/juce_WindowedSincInterpolator.cpp b/modules/juce_audio_basics/utilities/juce_WindowedSincInterpolator.cpp new file mode 100644 index 0000000000..94950233b5 --- /dev/null +++ b/modules/juce_audio_basics/utilities/juce_WindowedSincInterpolator.cpp @@ -0,0 +1,10026 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ + +const float Interpolators::WindowedSincTraits::lookupTable[] { + 1.000000000000000000e+00f, + 9.998321499902942389e-01f, + 9.993287014045605376e-01f, + 9.984899584999463729e-01f, + 9.973164281284172539e-01f, + 9.958088193720359138e-01f, + 9.939680430327538785e-01f, + 9.917952109771142055e-01f, + 9.892916353363806481e-01f, + 9.864588275627174108e-01f, + 9.832984973421626806e-01f, + 9.798125513652424790e-01f, + 9.760030919561943907e-01f, + 9.718724155618675420e-01f, + 9.674230111014888722e-01f, + 9.626575581785837832e-01f, + 9.575789251564525983e-01f, + 9.521901670987075184e-01f, + 9.464945235764864462e-01f, + 9.404954163440536474e-01f, + 9.341964468846075675e-01f, + 9.276013938282199334e-01f, + 9.207142102439148657e-01f, + 9.135390208080165220e-01f, + 9.060801188509671755e-01f, + 8.983419632849326542e-01f, + 8.903291754145852277e-01f, + 8.820465356335611684e-01f, + 8.734989800091675916e-01f, + 8.646915967580026674e-01f, + 8.556296226152392270e-01f, + 8.463184391004026086e-01f, + 8.367635686825474206e-01f, + 8.269706708478274937e-01f, + 8.169455380725142435e-01f, + 8.066940917045994919e-01f, + 7.962223777571848515e-01f, + 7.855365626169290572e-01f, + 7.746429286708844675e-01f, + 7.635478698551215748e-01f, + 7.522578871285925395e-01f, + 7.407795838757467166e-01f, + 7.291196612414603262e-01f, + 7.172849134018910444e-01f, + 7.052822227749226958e-01f, + 6.931185551739007522e-01f, + 6.808009549084045320e-01f, + 6.683365398358420695e-01f, + 6.557324963676841589e-01f, + 6.429960744341879364e-01f, + 6.301345824114912286e-01f, + 6.171553820149802139e-01f, + 6.040658831628585856e-01f, + 5.908735388138642852e-01f, + 5.775858397830959667e-01f, + 5.642103095399239043e-01f, + 5.507544989919713752e-01f, + 5.372259812591544392e-01f, + 5.236323464417774742e-01f, + 5.099811963866732745e-01f, + 4.962801394553849055e-01f, + 4.825367852983662442e-01f, + 4.687587396391774686e-01f, + 4.549535990726381041e-01f, + 4.411289458808779762e-01f, + 4.272923428712149252e-01f, + 4.134513282397586642e-01f, + 3.996134104646188456e-01f, + 3.857860632325655903e-01f, + 3.719767204029549301e-01f, + 3.581927710127054132e-01f, + 3.444415543260631041e-01f, + 3.307303549328605707e-01f, + 3.170663978989262666e-01f, + 3.034568439722529765e-01f, + 2.899087848484924179e-01f, + 2.764292384992768636e-01f, + 2.630251445668272403e-01f, + 2.497033598282397682e-01f, + 2.364706537327855851e-01f, + 2.233337040154965702e-01f, + 2.102990923902373910e-01f, + 1.973733003254070084e-01f, + 1.845627049053287227e-01f, + 1.718735747803255554e-01f, + 1.593120662083951089e-01f, + 1.468842191913231343e-01f, + 1.345959537079954305e-01f, + 1.224530660475812854e-01f, + 1.104612252451845633e-01f, + 9.862596962246501786e-02f, + 8.695270343564839854e-02f, + 7.544669363325365308e-02f, + 6.411306672577052335e-02f, + 5.295680576943356810e-02f, + 4.198274746613558234e-02f, + 3.119557938143482229e-02f, + 2.059983728250635790e-02f, + 1.019990259779169663e-02f, + 3.897210076277699062e-17f, + -9.995804885990083877e-03f, + -1.978360764887690526e-02f, + -2.935966712899029663e-02f, + -3.872040732740943125e-02f, + -4.786241918501666498e-02f, + -5.678246223045373131e-02f, + -6.547746609606562573e-02f, + -7.394453190101335505e-02f, + -8.218093350085642346e-02f, + -9.018411860300616645e-02f, + -9.795170974756001181e-02f, + -1.054815051531433207e-01f, + -1.127714794274846111e-01f, + -1.198197841425640842e-01f, + -1.266247482742862418e-01f, + -1.331848785067307750e-01f, + -1.394988594011491723e-01f, + -1.455655534299787057e-01f, + -1.513840008762573630e-01f, + -1.569534195989277237e-01f, + -1.622732046646232218e-01f, + -1.673429278466408709e-01f, + -1.721623369919041413e-01f, + -1.767313552568272883e-01f, + -1.810500802130950160e-01f, + -1.851187828244720002e-01f, + -1.889379062958614630e-01f, + -1.925080647959259983e-01f, + -1.958300420546892351e-01f, + -1.989047898376287982e-01f, + -2.017334262978687787e-01f, + -2.043172342081740200e-01f, + -2.066576590745419495e-01f, + -2.087563071332755593e-01f, + -2.106149432335147065e-01f, + -2.122354886072851110e-01f, + -2.136200185292154441e-01f, + -2.147707598681500851e-01f, + -2.156900885329726125e-01f, + -2.163805268150296168e-01f, + -2.168447406296239166e-01f, + -2.170855366591212532e-01f, + -2.171058594002854003e-01f, + -2.169087881185291500e-01f, + -2.164975337118347498e-01f, + -2.158754354871634251e-01f, + -2.150459578522372073e-01f, + -2.140126869256352149e-01f, + -2.127793270682061255e-01f, + -2.113496973388519218e-01f, + -2.097277278777923137e-01f, + -2.079174562204673671e-01f, + -2.059230235452841895e-01f, + -2.037486708584572426e-01f, + -2.013987351192330633e-01f, + -1.988776453088292318e-01f, + -1.961899184464536705e-01f, + -1.933401555558005303e-01f, + -1.903330375854543621e-01f, + -1.871733212866534823e-01f, + -1.838658350518955764e-01f, + -1.804154747178837448e-01f, + -1.768271993363320083e-01f, + -1.731060269161642517e-01f, + -1.692570301406509103e-01f, + -1.652853320630413847e-01f, + -1.611961017842489241e-01f, + -1.569945501161558454e-01f, + -1.526859252341015438e-01f, + -1.482755083221153625e-01f, + -1.437686092144501160e-01f, + -1.391705620369629026e-01f, + -1.344867208518796264e-01f, + -1.297224553094619426e-01f, + -1.248831463100814054e-01f, + -1.199741816801844635e-01f, + -1.150009518656041618e-01f, + -1.099688456456556773e-01f, + -1.048832458714182708e-01f, + -9.974952523157622208e-02f, + -9.457304204915860379e-02f, + -8.935913611247510435e-02f, + -8.411312454351556334e-02f, + -7.884029770702483120e-02f, + -7.354591516343182700e-02f, + -6.823520166875686466e-02f, + -6.291334322457314832e-02f, + -5.758548318104762115e-02f, + -5.225671839602590713e-02f, + -4.693209545307914371e-02f, + -4.161660694135679156e-02f, + -3.631518780004174690e-02f, + -3.103271173013015527e-02f, + -2.577398767619723877e-02f, + -2.054375638074063329e-02f, + -1.534668701362280202e-02f, + -1.018737387906320201e-02f, + -5.070333202553640312e-03f, + -3.894325756689964161e-17f, + 5.019274968688979509e-03f, + 9.983228159422152803e-03f, + 1.488768611509041877e-02f, + 1.972856824609843865e-02f, + 2.450188951836063458e-02f, + 2.920376304695326483e-02f, + 3.383040259369500535e-02f, + 3.837812496701634851e-02f, + 4.284335232256628045e-02f, + 4.722261436309905386e-02f, + 5.151255043626536828e-02f, + 5.570991152903332494e-02f, + 5.981156215754928479e-02f, + 6.381448215134405411e-02f, + 6.771576833088721603e-02f, + 7.151263607757946117e-02f, + 7.520242079537053925e-02f, + 7.878257926329076954e-02f, + 8.225069087826682168e-02f, + 8.560445878770081563e-02f, + 8.884171091137989251e-02f, + 9.196040085238070538e-02f, + 9.495860869672850813e-02f, + 9.783454170166935859e-02f, + 1.005865348725034220e-01f, + 1.032130514280261008e-01f, + 1.057126831547209184e-01f, + 1.080841506499338051e-01f, + 1.103263034543625065e-01f, + 1.124381200742803483e-01f, + 1.144187078940081537e-01f, + 1.162673029792436336e-01f, + 1.179832697719408463e-01f, + 1.195661006775294716e-01f, + 1.210154155453490032e-01f, + 1.223309610432607719e-01f, + 1.235126099274892336e-01f, + 1.245603602088281303e-01f, + 1.254743342164319486e-01f, + 1.262547775604956901e-01f, + 1.269020579952085670e-01f, + 1.274166641834456049e-01f, + 1.277992043647412090e-01f, + 1.280504049281650791e-01f, + 1.281711088917953933e-01f, + 1.281622742905593748e-01f, + 1.280249724742810735e-01f, + 1.277603863178479460e-01f, + 1.273698083454741226e-01f, + 1.268546387711058931e-01f, + 1.262163834570771692e-01f, + 1.254566517931865743e-01f, + 1.245771544984256851e-01f, + 1.235797013476476885e-01f, + 1.224661988255190126e-01f, + 1.212386477101517479e-01f, + 1.198991405888646528e-01f, + 1.184498593085685503e-01f, + 1.168930723633207630e-01f, + 1.152311322216329759e-01f, + 1.134664725961638115e-01f, + 1.116016056584608895e-01f, + 1.096391192014578575e-01f, + 1.075816737524645378e-01f, + 1.054319996394198350e-01f, + 1.031928940132054995e-01f, + 1.008672178288464866e-01f, + 9.845789278844846448e-02f, + 9.596789824874003838e-02f, + 9.340026809611248759e-02f, + 9.075808759205977738e-02f, + 8.804449019193870407e-02f, + 8.526265433997994025e-02f, + 8.241580024348756084e-02f, + 7.950718662917011237e-02f, + 7.654010748455197799e-02f, + 7.351788878741070954e-02f, + 7.044388522618756643e-02f, + 6.732147691431115966e-02f, + 6.415406610136678567e-02f, + 6.094507388403559711e-02f, + 5.769793691971696753e-02f, + 5.441610414572558424e-02f, + 5.110303350694805208e-02f, + 4.776218869481312773e-02f, + 4.439703590041457065e-02f, + 4.101104058459904139e-02f, + 3.760766426780321608e-02f, + 3.419036134239462205e-02f, + 3.076257591024030361e-02f, + 2.732773864819467574e-02f, + 2.388926370415486722e-02f, + 2.045054562630352346e-02f, + 1.701495632810792399e-02f, + 1.358584209160797196e-02f, + 1.016652061148060233e-02f, + 6.760278082314462311e-03f, + 3.370366331490179130e-03f, + 3.889521720231377172e-17f, + -3.347646226505052690e-03f, + -6.669440334209695946e-03f, + -9.962295642995425485e-03f, + -1.322317341155379231e-02f, + -1.644908538369398501e-02f, + -1.963709627384800302e-02f, + -2.278432618984587571e-02f, + -2.588795299108807499e-02f, + -2.894521458031795724e-02f, + -3.195341112725825355e-02f, + -3.490990722244410177e-02f, + -3.781213395966125795e-02f, + -4.065759094545921132e-02f, + -4.344384823429099651e-02f, + -4.616854818789777049e-02f, + -4.882940725763235124e-02f, + -5.142421768849166769e-02f, + -5.395084914370364831e-02f, + -5.640725024878998073e-02f, + -5.879145005410169045e-02f, + -6.110155941490798270e-02f, + -6.333577228818905447e-02f, + -6.549236694536995917e-02f, + -6.756970710030717198e-02f, + -6.956624295191975171e-02f, + -7.148051214093797956e-02f, + -7.331114062032219325e-02f, + -7.505684343898266775e-02f, + -7.671642543851386886e-02f, + -7.828878186273431627e-02f, + -7.977289887990460238e-02f, + -8.116785401757553586e-02f, + -8.247281651009769066e-02f, + -8.368704755890117586e-02f, + -8.480990050573701533e-02f, + -8.584082091914502222e-02f, + -8.677934659449468291e-02f, + -8.762510746802033845e-02f, + -8.837782544534880658e-02f, + -8.903731414509374886e-02f, + -8.960347855816586105e-02f, + -9.007631462352130858e-02f, + -9.045590872114415981e-02f, + -9.074243708313121937e-02f, + -9.093616512381758055e-02f, + -9.103744668995188138e-02f, + -9.104672323199845818e-02f, + -9.096452289771120303e-02f, + -9.079145954918992067e-02f, + -9.052823170469484482e-02f, + -9.017562140655861758e-02f, + -8.973449301659575106e-02f, + -8.920579194047170701e-02f, + -8.859054328255137889e-02f, + -8.788985043280389542e-02f, + -8.710489358739707810e-02f, + -8.623692820466778708e-02f, + -8.528728339820713933e-02f, + -8.425736026884980689e-02f, + -8.314863017740434237e-02f, + -8.196263296000964871e-02f, + -8.070097508804566222e-02f, + -7.936532777456997700e-02f, + -7.795742502929374484e-02f, + -7.647906166414730755e-02f, + -7.493209125152387740e-02f, + -7.331842403732392877e-02f, + -7.164002481095702035e-02f, + -6.989891073448464831e-02f, + -6.809714913312167606e-02f, + -6.623685524933471680e-02f, + -6.432018996280304546e-02f, + -6.234935747852995286e-02f, + -6.032660298541026728e-02f, + -5.825421028757805930e-02f, + -5.613449941087523404e-02f, + -5.396982418679260179e-02f, + -5.176256981624846598e-02f, + -4.951515041557684460e-02f, + -4.723000654710355489e-02f, + -4.490960273669408059e-02f, + -4.255642498066016660e-02f, + -4.017297824440700660e-02f, + -3.776178395520819048e-02f, + -3.532537749148359496e-02f, + -3.286630567095341626e-02f, + -3.038712424003185350e-02f, + -2.789039536681189174e-02f, + -2.537868513997948439e-02f, + -2.285456107598123413e-02f, + -2.032058963675330288e-02f, + -1.777933376029512333e-02f, + -1.523335040635749593e-02f, + -1.268518811948355154e-02f, + -1.013738461162063884e-02f, + -7.592464366493653291e-03f, + -5.052936267896138492e-03f, + -2.521291254032028643e-03f, + -3.882802707905923401e-17f, + 2.508489369517248428e-03f, + 5.001753535334178304e-03f, + 7.477396204630696805e-03f, + 9.933050295659225093e-03f, + 1.236638008438947431e-02f, + 1.477508331123026167e-02f, + 1.715689324600980226e-02f, + 1.950958070945080572e-02f, + 2.183095604941610521e-02f, + 2.411887107025306037e-02f, + 2.637122091361803269e-02f, + 2.858594588921111249e-02f, + 3.076103325390444967e-02f, + 3.289451893780558772e-02f, + 3.498448921585006754e-02f, + 3.702908232357217388e-02f, + 3.902649001576798810e-02f, + 4.097495906681519057e-02f, + 4.287279271148002058e-02f, + 4.471835202509810703e-02f, + 4.651005724208144565e-02f, + 4.824638901176293154e-02f, + 4.992588959065285409e-02f, + 5.154716397024793756e-02f, + 5.310888093959532930e-02f, + 5.460977408187722010e-02f, + 5.604864270435185730e-02f, + 5.742435270104698924e-02f, + 5.873583734766929521e-02f, + 5.998209802826119652e-02f, + 6.116220489320042114e-02f, + 6.227529744820328728e-02f, + 6.332058507406373993e-02f, + 6.429734747692100738e-02f, + 6.520493506891764102e-02f, + 6.604276927917780704e-02f, + 6.681034279509827367e-02f, + 6.750721973401248299e-02f, + 6.813303574535393980e-02f, + 6.868749804350914034e-02f, + 6.917038537161544764e-02f, + 6.958154789662478190e-02f, + 6.992090703601620827e-02f, + 7.018845521660418973e-02f, + 7.038425556595274968e-02f, + 7.050844153696640693e-02f, + 7.056121646629046062e-02f, + 7.054285306721332083e-02f, + 7.045369285782319968e-02f, + 7.029414552522963988e-02f, + 7.006468822671796381e-02f, + 6.976586482876150075e-02f, + 6.939828508487122516e-02f, + 6.896262375331772831e-02f, + 6.845961965581227882e-02f, + 6.789007467828668541e-02f, + 6.725485271496202400e-02f, + 6.655487855694536270e-02f, + 6.579113672664134438e-02f, + 6.496467025931394745e-02f, + 6.407657943317585092e-02f, + 6.312802044942868174e-02f, + 6.212020406372047165e-02f, + 6.105439417052395401e-02f, + 5.993190634198172773e-02f, + 5.875410632280082118e-02f, + 5.752240848281407054e-02f, + 5.623827422886059496e-02f, + 5.490321037767217222e-02f, + 5.351876749147910922e-02f, + 5.208653817808057279e-02f, + 5.060815535715459945e-02f, + 4.908529049460156474e-02f, + 4.751965180674513900e-02f, + 4.591298243623419262e-02f, + 4.426705860150847993e-02f, + 4.258368772170978422e-02f, + 4.086470651893956557e-02f, + 3.911197909977250781e-02f, + 3.732739501795391546e-02f, + 3.551286732021802228e-02f, + 3.367033057717121886e-02f, + 3.180173890119344232e-02f, + 2.990906395331716441e-02f, + 2.799429294104273033e-02f, + 2.605942660905504957e-02f, + 2.410647722480178945e-02f, + 2.213746656089659454e-02f, + 2.015442387629913859e-02f, + 1.815938389822458268e-02f, + 1.615438480672493765e-02f, + 1.414146622387316317e-02f, + 1.212266720947206833e-02f, + 1.010002426519698848e-02f, + 8.075569349063350597e-03f, + 6.051327902095616530e-03f, + 4.029316889058113388e-03f, + 2.011542855081033601e-03f, + 3.874175350567572650e-17f, + -2.003331727797961342e-03f, + -3.996488516257723500e-03f, + -5.977524551525892349e-03f, + -7.944513855095518967e-03f, + -9.895552094544582400e-03f, + -1.182875836621732034e-02f, + -1.374227694822771975e-02f, + -1.563427902220560287e-02f, + -1.750296436223446397e-02f, + -1.934656298946970526e-02f, + -2.116333679096629727e-02f, + -2.295158110128149576e-02f, + -2.470962624546017145e-02f, + -2.643583904205206586e-02f, + -2.812862426485629452e-02f, + -2.978642606212655863e-02f, + -3.140772933202141265e-02f, + -3.299106105312992615e-02f, + -3.453499156894547506e-02f, + -3.603813582521487452e-02f, + -3.749915455913428036e-02f, + -3.891675543941802012e-02f, + -4.028969415631109691e-02f, + -4.161677546067264061e-02f, + -4.289685415130901208e-02f, + -4.412883600978426135e-02f, + -4.531167868199265092e-02f, + -4.644439250583275169e-02f, + -4.752604128436910269e-02f, + -4.855574300393437209e-02f, + -4.953267049666788130e-02f, + -5.045605204704892155e-02f, + -5.132517194203765898e-02f, + -5.213937096448940933e-02f, + -5.289804682956641274e-02f, + -5.360065456392785338e-02f, + -5.424670682753111178e-02f, + -5.483577417793748798e-02f, + -5.536748527706834150e-02f, + -5.584152704041558252e-02f, + -5.625764472876377403e-02f, + -5.661564198253816321e-02f, + -5.691538079894768037e-02f, + -5.715678145214542205e-02f, + -5.733982235668498573e-02f, + -5.746453987460405782e-02f, + -5.753102806651958639e-02f, + -5.753943838717312520e-02f, + -5.748997932591520116e-02f, + -5.738291599267093812e-02f, + -5.721856964997878298e-02f, + -5.699731719174516015e-02f, + -5.671959056940642507e-02f, + -5.638587616623912807e-02f, + -5.599671412060634040e-02f, + -5.555269759897443066e-02f, + -5.505447201958245385e-02f, + -5.450273422768755344e-02f, + -5.389823162335748846e-02f, + -5.324176124282154615e-02f, + -5.253416879443297688e-02f, + -5.177634765033799907e-02f, + -5.096923779498445384e-02f, + -5.011382473164045781e-02f, + -4.921113834813311411e-02f, + -4.826225174304939192e-02f, + -4.726828001367859577e-02f, + -4.623037900700535663e-02f, + -4.514974403509764561e-02f, + -4.402760855626140085e-02f, + -4.286524282336175162e-02f, + -4.166395250074144546e-02f, + -4.042507725118998224e-02f, + -3.914998929443946202e-02f, + -3.784009193869437848e-02f, + -3.649681808671064592e-02f, + -3.512162871797221836e-02f, + -3.371601134852347803e-02f, + -3.228147847003334792e-02f, + -3.081956596968622730e-02f, + -2.933183153250423780e-02f, + -2.781985302771665045e-02f, + -2.628522688080791453e-02f, + -2.472956643287790510e-02f, + -2.315450028896036058e-02f, + -2.156167065694567300e-02f, + -1.995273167876449386e-02f, + -1.832934775548567333e-02f, + -1.669319186798288307e-02f, + -1.504594389482788452e-02f, + -1.338928892906133400e-02f, + -1.172491559548742221e-02f, + -1.005451437013836664e-02f, + -8.379775903540833196e-03f, + -6.702389349412756978e-03f, + -5.024040700403363362e-03f, + -3.346411132483765802e-03f, + -1.671175359577019423e-03f, + -3.863648162376423474e-17f, + 1.665458043716377392e-03f, + 3.323553190096430274e-03f, + 4.972652767551836474e-03f, + 6.611138585273553490e-03f, + 8.237408484711907647e-03f, + 9.849877870182622078e-03f, + 1.144698121717139215e-02f, + 1.302717355693413029e-02f, + 1.458893193601275978e-02f, + 1.613075684932130729e-02f, + 1.765117364548211831e-02f, + 1.914873390312786527e-02f, + 2.062201677691140322e-02f, + 2.206963031200360678e-02f, + 2.349021272589388309e-02f, + 2.488243365633890924e-02f, + 2.624499537434637694e-02f, + 2.757663396111778922e-02f, + 2.887612044790845850e-02f, + 3.014226191780771530e-02f, + 3.137390256847804454e-02f, + 3.256992473493734719e-02f, + 3.372924987150486414e-02f, + 3.485083949207803955e-02f, + 3.593369606795079885e-02f, + 3.697686388242336919e-02f, + 3.797942984150279311e-02f, + 3.894052424003760504e-02f, + 3.985932148267041369e-02f, + 4.073504075904751942e-02f, + 4.156694667276145810e-02f, + 4.235434982355489736e-02f, + 4.309660734236082924e-02f, + 4.379312337879810030e-02f, + 4.444334954079259131e-02f, + 4.504678528604074556e-02f, + 4.560297826507851010e-02f, + 4.611152461576945721e-02f, + 4.657206920907153852e-02f, + 4.698430584599172510e-02f, + 4.734797740568404828e-02f, + 4.766287594469555827e-02f, + 4.792884274741274209e-02f, + 4.814576832780684268e-02f, + 4.831359238262550315e-02f, + 4.843230369622460174e-02f, + 4.850193999728014821e-02f, + 4.852258776766780329e-02f, + 4.849438200384208891e-02f, + 4.841750593109390294e-02f, + 4.829219067110925023e-02f, + 4.811871486329679509e-02f, + 4.789740424039561073e-02f, + 4.762863115891774468e-02f, + 4.731281408502291397e-02f, + 4.695041703646362502e-02f, + 4.654194898128217323e-02f, + 4.608796319397825969e-02f, + 4.558905656990844268e-02f, + 4.504586889871579902e-02f, + 4.445908209762516189e-02f, + 4.382941940547854798e-02f, + 4.315764453841920700e-02f, + 4.244456080816757376e-02f, + 4.169101020386845047e-02f, + 4.089787243851888271e-02f, + 4.006606396102018602e-02f, + 3.919653693492577279e-02f, + 3.829027818498920155e-02f, + 3.734830811264253092e-02f, + 3.637167958156230230e-02f, + 3.536147677450902915e-02f, + 3.431881402264831682e-02f, + 3.324483460858414924e-02f, + 3.214070954436337030e-02f, + 3.100763632572139938e-02f, + 2.984683766386852025e-02f, + 2.865956019612891231e-02f, + 2.744707317676135447e-02f, + 2.621066714931024125e-02f, + 2.495165260184606035e-02f, + 2.367135860646735895e-02f, + 2.237113144445156826e-02f, + 2.105233321844750261e-02f, + 1.971634045311482925e-02f, + 1.836454268561935055e-02f, + 1.699834104740382407e-02f, + 1.561914683865467043e-02f, + 1.422838009688787327e-02f, + 1.282746816108333576e-02f, + 1.141784423279322037e-02f, + 1.000094593564865818e-02f, + 8.578213874691159244e-03f, + 7.151090196945879447e-03f, + 5.721017154652988448e-03f, + 4.289435672562395829e-03f, + 2.857783920694851112e-03f, + 1.427495893958731022e-03f, + 3.851231532396259107e-17f, + -1.423282343340041833e-03f, + -2.840938099612009063e-03f, + -4.251563993045895384e-03f, + -5.653767874212517128e-03f, + -7.046170070757393038e-03f, + -8.427404721911885624e-03f, + -9.796121095514335672e-03f, + -1.115098488629330704e-02f, + -1.249067949418276348e-02f, + -1.381390728146736184e-02f, + -1.511939080757592098e-02f, + -1.640587404037048558e-02f, + -1.767212354279941791e-02f, + -1.891692963381457968e-02f, + -2.013910752248064540e-02f, + -2.133749841423027843e-02f, + -2.251097058825281272e-02f, + -2.365842044503514013e-02f, + -2.477877352310193029e-02f, + -2.587098548403953327e-02f, + -2.693404306491827341e-02f, + -2.796696499726556220e-02f, + -2.896880289177323695e-02f, + -2.993864208796185450e-02f, + -3.087560246806111269e-02f, + -3.177883923439979441e-02f, + -3.264754364963919769e-02f, + -3.348094373922329975e-02f, + -3.427830495545182432e-02f, + -3.503893080263100618e-02f, + -3.576216342278743660e-02f, + -3.644738414147634387e-02f, + -3.709401397325490235e-02f, + -3.770151408643012542e-02f, + -3.826938622673421719e-02f, + -3.879717309962135707e-02f, + -3.928445871091951203e-02f, + -3.973086866561512109e-02f, + -4.013607042458825630e-02f, + -4.049977351915948903e-02f, + -4.082172972334963124e-02f, + -4.110173318379706925e-02f, + -4.133962050731876392e-02f, + -4.153527080614199951e-02f, + -4.168860570087641604e-02f, + -4.179958928133744450e-02f, + -4.186822802537215615e-02f, + -4.189457067588118339e-02f, + -4.187870807626980357e-02f, + -4.182077296460211258e-02f, + -4.172093972677210633e-02f, + -4.157942410904505448e-02f, + -4.139648289036141487e-02f, + -4.117241351483449247e-02f, + -4.090755368491114791e-02f, + -4.060228091570139419e-02f, + -4.025701205102193148e-02f, + -3.987220274173181034e-02f, + -3.944834688697711200e-02f, + -3.898597603899465330e-02f, + -3.848565877215900932e-02f, + -3.794800001699184799e-02f, + -3.737364035988401112e-02f, + -3.676325530931268126e-02f, + -3.611755452936806637e-02f, + -3.543728104143289981e-02f, + -3.472321039488834166e-02f, + -3.397614980774645715e-02f, + -3.319693727813939621e-02f, + -3.238644066761971890e-02f, + -3.154555675725123631e-02f, + -3.067521027749671447e-02f, + -2.977635291292965100e-02f, + -2.884996228281870578e-02f, + -2.789704089865994302e-02f, + -2.691861509974309216e-02f, + -2.591573396786606143e-02f, + -2.488946822232386211e-02f, + -2.384090909631557051e-02f, + -2.277116719593108921e-02f, + -2.168137134289090454e-02f, + -2.057266740222485346e-02f, + -1.944621709609118537e-02f, + -1.830319680494362292e-02f, + -1.714479635726702186e-02f, + -1.597221780910678887e-02f, + -1.478667421462878662e-02f, + -1.358938838894852355e-02f, + -1.238159166447296011e-02f, + -1.116452264200503558e-02f, + -9.939425937859529617e-03f, + -8.707550928239674026e-03f, + -7.470150492127149849e-03f, + -6.228479753931915469e-03f, + -4.983794827149027815e-03f, + -3.737351560261789520e-03f, + -2.490404286130025371e-03f, + -1.244204576092051940e-03f, + -3.836937714341790683e-17f, + 1.240967106592762116e-03f, + 2.477460866896080867e-03f, + 3.708253077802783210e-03f, + 4.932124414085086068e-03f, + 6.147865620704987162e-03f, + 7.354278692082365058e-03f, + 8.550178037189383809e-03f, + 9.734391629351839964e-03f, + 1.090576213965407243e-02f, + 1.206314805286936957e-02f, + 1.320542476485127813e-02f, + 1.433148566034425815e-02f, + 1.544024317019840505e-02f, + 1.653062980698680531e-02f, + 1.760159917805776894e-02f, + 1.865212697506991868e-02f, + 1.968121193909236344e-02f, + 2.068787680036934112e-02f, + 2.167116919188432494e-02f, + 2.263016253588231996e-02f, + 2.356395690253657721e-02f, + 2.447167983997980412e-02f, + 2.535248717494724760e-02f, + 2.620556378330855113e-02f, + 2.703012432980111263e-02f, + 2.782541397630681687e-02f, + 2.859070905804561927e-02f, + 2.932531772709678214e-02f, + 3.002858056268817993e-02f, + 3.069987114772966194e-02f, + 3.133859661110379585e-02f, + 3.194419813525677804e-02f, + 3.251615142867379793e-02f, + 3.305396716285353975e-02f, + 3.355719137343705916e-02f, + 3.402540582517922518e-02f, + 3.445822834048845734e-02f, + 3.485531309129908523e-02f, + 3.521635085407364557e-02f, + 3.554106922777330868e-02f, + 3.582923281466892512e-02f, + 3.608064336390364585e-02f, + 3.629513987775428302e-02f, + 3.647259868057688842e-02f, + 3.661293345045708858e-02f, + 3.671609521362455969e-02f, + 3.678207230172601816e-02f, + 3.681089027208912096e-02f, + 3.680261179114461406e-02f, + 3.675733648121128072e-02f, + 3.667520073088332416e-02f, + 3.655637746929544379e-02f, + 3.640107590457612730e-02f, + 3.620954122683402165e-02f, + 3.598205427605740553e-02f, + 3.571893117533903733e-02f, + 3.542052292987402790e-02f, + 3.508721499220928547e-02f, + 3.471942679425710915e-02f, + 3.431761124661530937e-02f, + 3.388225420576965186e-02f, + 3.341387390978267646e-02f, + 3.291302038310394557e-02f, + 3.238027481116542705e-02f, + 3.181624888545521446e-02f, + 3.122158411978745787e-02f, + 3.059695113851780904e-02f, + 2.994304893747514948e-02f, + 2.926060411840791450e-02f, + 2.855037009776879506e-02f, + 2.781312629068145512e-02f, + 2.704967727096032129e-02f, + 2.626085190807075573e-02f, + 2.544750248194389483e-02f, + 2.461050377657450841e-02f, + 2.375075215335195958e-02f, + 2.286916460509363230e-02f, + 2.196667779176278423e-02f, + 2.104424705887289471e-02f, + 2.010284543959429265e-02f, + 1.914346264158977087e-02f, + 1.816710401962278246e-02f, + 1.717478953499241082e-02f, + 1.616755270285690979e-02f, + 1.514643952852146903e-02f, + 1.411250743377312315e-02f, + 1.306682417434898782e-02f, + 1.201046674963833320e-02f, + 1.094452030571538628e-02f, + 9.870077032812075643e-03f, + 8.788235058334580366e-03f, + 7.700097336538626325e-03f, + 6.606770535970839416e-03f, + 5.509363925787424780e-03f, + 4.408988262061687424e-03f, + 3.306754675183733866e-03f, + 2.203773559457802150e-03f, + 1.101153465996373331e-03f, + 3.820780814485725242e-17f, + -1.098585276486098786e-03f, + -2.193505935265162299e-03f, + -3.283671765059895803e-03f, + -4.367999845902193791e-03f, + -5.445415613796268477e-03f, + -6.514853914614496255e-03f, + -7.575260046206469533e-03f, + -8.625590787711353430e-03f, + -9.664815415077104843e-03f, + -1.069191670181151264e-02f, + -1.170589190400125879e-02f, + -1.270575372865473569e-02f, + -1.369053128444692319e-02f, + -1.465927101395613288e-02f, + -1.561103760651160084e-02f, + -1.654491489078413133e-02f, + -1.746000670628177626e-02f, + -1.835543775292705626e-02f, + -1.923035441792335376e-02f, + -2.008392557913836474e-02f, + -2.091534338425668146e-02f, + -2.172382400498286056e-02f, + -2.250860836560024739e-02f, + -2.326896284521650510e-02f, + -2.400417995305826127e-02f, + -2.471357897620288582e-02f, + -2.539650659916279848e-02f, + -2.605233749477112518e-02f, + -2.668047488584292248e-02f, + -2.728035107711810139e-02f, + -2.785142795702474916e-02f, + -2.839319746882786391e-02f, + -2.890518205076497357e-02f, + -2.938693504479734583e-02f, + -2.983804107364120342e-02f, + -3.025811638577266885e-02f, + -3.064680916813381298e-02f, + -3.100379982630099840e-02f, + -3.132880123190676103e-02f, + -3.162155893714221899e-02f, + -3.188185135619839294e-02f, + -3.210948991353843734e-02f, + -3.230431915892578026e-02f, + -3.246621684916723566e-02f, + -3.259509399656147777e-02f, + -3.269089488407847521e-02f, + -3.275359704732655475e-02f, + -3.278321122339819538e-02f, + -3.277978126671703824e-02f, + -3.274338403204220954e-02f, + -3.267412922481752885e-02f, + -3.257215921908560019e-02f, + -3.243764884321845982e-02f, + -3.227080513374773474e-02f, + -3.207186705760879664e-02f, + -3.184110520314317044e-02f, + -3.157882144023508447e-02f, + -3.128534854998637343e-02f, + -3.096104982436503894e-02f, + -3.060631863628960475e-02f, + -3.022157798064227172e-02f, + -2.980727998672943677e-02f, + -2.936390540273656549e-02f, + -2.889196305275088666e-02f, + -2.839198926695188710e-02f, + -2.786454728559313240e-02f, + -2.731022663742679185e-02f, + -2.672964249324305541e-02f, + -2.612343499522145479e-02f, + -2.549226856281475509e-02f, + -2.483683117590470071e-02f, + -2.415783363599420183e-02f, + -2.345600880621569531e-02f, + -2.273211083096061610e-02f, + -2.198691433594817182e-02f, + -2.122121360957183317e-02f, + -2.043582176638020914e-02f, + -1.963156989356096283e-02f, + -1.880930618131524887e-02f, + -1.796989503802343471e-02f, + -1.711421619111335238e-02f, + -1.624316377455840843e-02f, + -1.535764540394315113e-02f, + -1.445858124004167390e-02f, + -1.354690304186740787e-02f, + -1.262355321016035703e-02f, + -1.168948382228147259e-02f, + -1.074565565949768715e-02f, + -9.793037227638747358e-03f, + -8.832603772118776536e-03f, + -7.865336288311713595e-03f, + -6.892220528280442078e-03f, + -5.914246004853488010e-03f, + -4.932404994047567826e-03f, + -3.947691536835270382e-03f, + -2.961100441250685226e-03f, + -1.973626285828549223e-03f, + -9.862624253675238758e-04f, + -3.802776777737574016e-17f, + 9.841730514465974952e-04f, + 1.965272972826986615e-03f, + 2.942321165824257449e-03f, + 3.914345157906578068e-03f, + 4.880379562147291184e-03f, + 5.839467027964861424e-03f, + 6.790659181857343525e-03f, + 7.733017557214086520e-03f, + 8.665614512298646516e-03f, + 9.587534135515569239e-03f, + 1.049787313708307364e-02f, + 1.139574172625059875e-02f, + 1.228026447321984953e-02f, + 1.315058115493771343e-02f, + 1.400584758395503719e-02f, + 1.484523641955660424e-02f, + 1.566793796039387537e-02f, + 1.647316091786455577e-02f, + 1.726013316951060736e-02f, + 1.802810249172396087e-02f, + 1.877633727107054853e-02f, + 1.950412719356916028e-02f, + 2.021078391128274671e-02f, + 2.089564168560189075e-02f, + 2.155805800663082583e-02f, + 2.219741418810250791e-02f, + 2.281311593728354431e-02f, + 2.340459389934918671e-02f, + 2.397130417573897082e-02f, + 2.451272881602797882e-02f, + 2.502837628287757701e-02f, + 2.551778188965732330e-02f, + 2.598050821035589528e-02f, + 2.641614546142960138e-02f, + 2.682431185526281195e-02f, + 2.720465392494783932e-02f, + 2.755684682011533618e-02f, + 2.788059457358115292e-02f, + 2.817563033860144908e-02f, + 2.844171659655807607e-02f, + 2.867864533492812257e-02f, + 2.888623819541892568e-02f, + 2.906434659218049346e-02f, + 2.921285180003846058e-02f, + 2.933166501271905480e-02f, + 2.942072737106802074e-02f, + 2.948000996129596790e-02f, + 2.950951378331144459e-02f, + 2.950926968923310578e-02f, + 2.947933829220211049e-02f, + 2.941980984564465662e-02f, + 2.933080409316416587e-02f, + 2.921247008927130642e-02f, + 2.906498599118855983e-02f, + 2.888855882199470315e-02f, + 2.868342420540245102e-02f, + 2.844984607248968178e-02f, + 2.818811634073307634e-02f, + 2.789855456571845721e-02f, + 2.758150756593012731e-02f, + 2.723734902104646763e-02f, + 2.686647904419447314e-02f, + 2.646932372864202465e-02f, + 2.604633466943028636e-02f, + 2.559798846047255452e-02f, + 2.512478616767030437e-02f, + 2.462725277861903608e-02f, + 2.410593662949834029e-02f, + 2.356140880976381052e-02f, + 2.299426254527723104e-02f, + 2.240511256053460618e-02f, + 2.179459442066713701e-02f, + 2.116336385391225788e-02f, + 2.051209605527045191e-02f, + 1.984148497207598519e-02f, + 1.915224257223392679e-02f, + 1.844509809588383564e-02f, + 1.772079729127159706e-02f, + 1.698010163562099079e-02f, + 1.622378754181329208e-02f, + 1.545264555169341587e-02f, + 1.466747951683269359e-02f, + 1.386910576759178837e-02f, + 1.305835227133488388e-02f, + 1.223605778065572393e-02f, + 1.140307097248631669e-02f, + 1.056024957896441879e-02f, + 9.708459510942056905e-03f, + 8.848573975026030602e-03f, + 7.981472585042176035e-03f, + 7.108040468822868913e-03f, + 6.229167371217365738e-03f, + 5.345746754226499142e-03f, + 4.458674895167382204e-03f, + 3.568849983769900418e-03f, + 2.677171219111589007e-03f, + 1.784537907287459457e-03f, + 8.918485607199820456e-04f, + 1.375963414501481870e-16f, + -8.901135408467832598e-04f, + -1.777601304782279023e-03f, + -2.661576896985846409e-03f, + -3.541159164019371322e-03f, + -4.415473066061055551e-03f, + -5.283650541348036689e-03f, + -6.144831361984745034e-03f, + -6.998163980273221924e-03f, + -7.842806364743631908e-03f, + -8.677926825066678909e-03f, + -9.502704825047591716e-03f, + -1.031633178291084009e-02f, + -1.111801185810167188e-02f, + -1.190696272384546804e-02f, + -1.268241632471873645e-02f, + -1.344361961850560477e-02f, + -1.418983530162710137e-02f, + -1.492034251745096018e-02f, + -1.563443754680784656e-02f, + -1.633143448005669809e-02f, + -1.701066587006366121e-02f, + -1.767148336547917642e-02f, + -1.831325832371670168e-02f, + -1.893538240305999570e-02f, + -1.953726813334768359e-02f, + -2.011834946470413346e-02f, + -2.067808229381145821e-02f, + -2.121594496723701664e-02f, + -2.173143876136030342e-02f, + -2.222408833845995052e-02f, + -2.269344217855321158e-02f, + -2.313907298660076647e-02f, + -2.356057807471537494e-02f, + -2.395757971904149269e-02f, + -2.432972549099499809e-02f, + -2.467668856258116092e-02f, + -2.499816798553347250e-02f, + -2.529388894404376378e-02f, + -2.556360298088074245e-02f, + -2.580708819671996904e-02f, + -2.602414942253634608e-02f, + -2.621461836493719708e-02f, + -2.637835372434049752e-02f, + -2.651524128593106544e-02f, + -2.662519398335435120e-02f, + -2.670815193513444846e-02f, + -2.676408245383069331e-02f, + -2.679298002797401990e-02f, + -2.679486627685148323e-02f, + -2.676978987823442138e-02f, + -2.671782646917223933e-02f, + -2.663907852000062249e-02f, + -2.653367518173962297e-02f, + -2.640177210708273547e-02f, + -2.624355124520492619e-02f, + -2.605922061064226344e-02f, + -2.584901402652179520e-02f, + -2.561319084244592648e-02f, + -2.535203562735873287e-02f, + -2.506585783774740658e-02f, + -2.475499146155598143e-02f, + -2.441979463821075669e-02f, + -2.406064925518100819e-02f, + -2.367796052152183056e-02f, + -2.327215651886596973e-02f, + -2.284368773035500011e-02f, + -2.239302654802176329e-02f, + -2.192066675915328375e-02f, + -2.142712301218852727e-02f, + -2.091293026271947089e-02f, + -2.037864320018679606e-02f, + -1.982483565587724039e-02f, + -1.925209999284902343e-02f, + -1.866104647842747183e-02f, + -1.805230263992868914e-02f, + -1.742651260428690341e-02f, + -1.678433642227292188e-02f, + -1.612644937800953443e-02f, + -1.545354128449657159e-02f, + -1.476631576587938456e-02f, + -1.406548952719811375e-02f, + -1.335179161237267514e-02f, + -1.262596265118436090e-02f, + -1.188875409602925537e-02f, + -1.114092744922038150e-02f, + -1.038325348163284326e-02f, + -9.616511443484248786e-03f, + -8.841488268055055361e-03f, + -8.058977769158835736e-03f, + -7.269779833172840267e-03f, + -6.474699606447542784e-03f, + -5.674546678917565326e-03f, + -4.870134264732259473e-03f, + -4.062278380735639960e-03f, + -3.251797023616004832e-03f, + -2.439509346553158861e-03f, + -1.626234836185142018e-03f, + -8.127924907184056955e-04f, + -3.761300170173902632e-17f, + 8.113270716327609542e-04f, + 1.620376098912416430e-03f, + 2.426338204803805097e-03f, + 3.228409064469819033e-03f, + 4.025789703243586731e-03f, + 4.817687287821219300e-03f, + 5.603315909897037261e-03f, + 6.381897361469502858e-03f, + 7.152661901059502447e-03f, + 7.914849010088072581e-03f, + 8.667708138679361060e-03f, + 9.410499440156691597e-03f, + 1.014249449352174620e-02f, + 1.086297701321397788e-02f, + 1.157124354546169333e-02f, + 1.226660415055517636e-02f, + 1.294838307038302834e-02f, + 1.361591938058873304e-02f, + 1.426856762672633859e-02f, + 1.490569844380274823e-02f, + 1.552669915862028849e-02f, + 1.613097437434502304e-02f, + 1.671794653674912173e-02f, + 1.728705648159101563e-02f, + 1.783776396262254024e-02f, + 1.836954815972504512e-02f, + 1.888190816670458697e-02f, + 1.937436345829177120e-02f, + 1.984645433591701591e-02f, + 2.029774235185137846e-02f, + 2.072781071132718048e-02f, + 2.113626465227521484e-02f, + 2.152273180233675934e-02f, + 2.188686251283411544e-02f, + 2.222833016940416184e-02f, + 2.254683147902725865e-02f, + 2.284208673320283281e-02f, + 2.311384004705211576e-02f, + 2.336185957414964667e-02f, + 2.358593769691042299e-02f, + 2.378589119238579130e-02f, + 2.396156137334416389e-02f, + 2.411281420453805294e-02f, + 2.423954039408468888e-02f, + 2.434165545991162638e-02f, + 2.441909977124352010e-02f, + 2.447183856513244701e-02f, + 2.449986193805772303e-02f, + 2.450318481264677009e-02f, + 2.448184687959331640e-02f, + 2.443591251487354371e-02f, + 2.436547067238563694e-02f, + 2.427063475216228658e-02f, + 2.415154244432998407e-02f, + 2.400835554901284072e-02f, + 2.384125977240247538e-02f, + 2.365046449923850422e-02f, + 2.343620254196809860e-02f, + 2.319872986687494115e-02f, + 2.293832529749150265e-02f, + 2.265529019562997209e-02f, + 2.234994812038883921e-02f, + 2.202264446551434676e-02f, + 2.167374607551639937e-02f, + 2.130364084095871455e-02f, + 2.091273727336449839e-02f, + 2.050146406019705617e-02f, + 2.007026960039413541e-02f, + 1.961962152095459225e-02f, + 1.915000617509209774e-02f, + 1.866192812249098040e-02f, + 1.815590959221258585e-02f, + 1.763248992881976882e-02f, + 1.709222502230338045e-02f, + 1.653568672240555287e-02f, + 1.596346223795577085e-02f, + 1.537615352184286931e-02f, + 1.477437664226473150e-02f, + 1.415876114090650062e-02f, + 1.352994937871285740e-02f, + 1.288859586992923897e-02f, + 1.223536660509748700e-02f, + 1.157093836370297682e-02f, + 1.089599801717802338e-02f, + 1.021124182297453685e-02f, + 9.517374710428586071e-03f, + 8.815109559144568979e-03f, + 8.105166470632777995e-03f, + 7.388272033942047505e-03f, + 6.665158586030823715e-03f, + 5.936563467627156351e-03f, + 5.203228275329005968e-03f, + 4.465898110698729960e-03f, + 3.725320827109799334e-03f, + 2.982246275101344511e-03f, + 2.237425547001025122e-03f, + 1.491610221569002930e-03f, + 7.455516094238633746e-04f, + -4.603360121389620097e-17f, + -7.442960892099980894e-04f, + -1.486590660381493286e-03f, + -2.226140979308201089e-03f, + -2.962208314840183033e-03f, + -3.694058673076393295e-03f, + -4.420963525583790008e-03f, + -5.142200530928310413e-03f, + -5.857054248801788626e-03f, + -6.564816846046666980e-03f, + -7.264788793882578921e-03f, + -7.956279555653332503e-03f, + -8.638608264420137572e-03f, + -9.311104389740483545e-03f, + -9.973108392984011278e-03f, + -1.062397237054689761e-02f, + -1.126306068434249248e-02f, + -1.188975057895664926e-02f, + -1.250343278487292369e-02f, + -1.310351210718740250e-02f, + -1.368940799924666003e-02f, + -1.426055512066000397e-02f, + -1.481640387915378679e-02f, + -1.535642095575079358e-02f, + -1.588008981277712686e-02f, + -1.638691118421688533e-02f, + -1.687640354795164402e-02f, + -1.734810357944292433e-02f, + -1.780156658643218884e-02f, + -1.823636692425711220e-02f, + -1.865209839139694153e-02f, + -1.904837460488604042e-02f, + -1.942482935525157578e-02f, + -1.978111694065281395e-02f, + -2.011691247992323031e-02f, + -2.043191220423512186e-02f, + -2.072583372713042438e-02f, + -2.099841629268202337e-02f, + -2.124942100157323904e-02f, + -2.147863101490525214e-02f, + -2.168585173556427867e-02f, + -2.187091096700358173e-02f, + -2.203365904931835206e-02f, + -2.217396897251361007e-02f, + -2.229173646688911367e-02f, + -2.238688007048804385e-02f, + -2.245934117357874585e-02f, + -2.250908404016256636e-02f, + -2.253609580652320837e-02f, + -2.254038645685636430e-02f, + -2.252198877604117550e-02f, + -2.248095827963758273e-02f, + -2.241737312121652378e-02f, + -2.233133397715249616e-02f, + -2.222296390902992261e-02f, + -2.209240820383755882e-02f, + -2.193983419214646027e-02f, + -2.176543104448896288e-02f, + -2.156940954617817680e-02f, + -2.135200185082751848e-02f, + -2.111346121285143443e-02f, + -2.085406169924960626e-02f, + -2.057409788099558851e-02f, + -2.027388450437186615e-02f, + -1.995375614261341718e-02f, + -1.961406682823892828e-02f, + -1.925518966646928148e-02f, + -1.887751643015150166e-02f, + -1.848145713662151246e-02f, + -1.806743960696060095e-02f, + -1.763590900811298073e-02f, + -1.718732737835180352e-02f, + -1.672217313659431215e-02f, + -1.624094057608432493e-02f, + -1.574413934297350451e-02f, + -1.523229390034704089e-02f, + -1.470594297825480838e-02f, + -1.416563901031964515e-02f, + -1.361194755751050575e-02f, + -1.304544671967466062e-02f, + -1.246672653544142993e-02f, + -1.187638837111369521e-02f, + -1.127504429917872836e-02f, + -1.066331646707572613e-02f, + -1.004183645686986676e-02f, + -9.411244636485087758e-03f, + -8.772189503162801036e-03f, + -8.125327019812878665e-03f, + -7.471319944934195698e-03f, + -6.810837156787309839e-03f, + -6.144552972502608131e-03f, + -5.473146462815121210e-03f, + -4.797300763120759294e-03f, + -4.117702381546011793e-03f, + -3.435040504733359156e-03f, + -2.750006302037344939e-03f, + -2.063292228833295185e-03f, + -1.375591329636196821e-03f, + -6.875965417295367256e-04f, + -3.712671580871972529e-17f, + 6.865076563281155998e-04f, + 1.371237974366756743e-03f, + 2.053505374957837522e-03f, + 2.732627836105371629e-03f, + 3.407927571765508035e-03f, + 4.078731705322887272e-03f, + 4.744372937087731369e-03f, + 5.404190205152949872e-03f, + 6.057529338961288590e-03f, + 6.703743704936756392e-03f, + 7.342194843549852169e-03f, + 7.972253097187404283e-03f, + 8.593298228216065052e-03f, + 9.204720026634211766e-03f, + 9.805918906718476616e-03f, + 1.039630649208695898e-02f, + 1.097530618860973091e-02f, + 1.154235374461037682e-02f, + 1.209689779782041619e-02f, + 1.263840040855540407e-02f, + 1.316633757860326444e-02f, + 1.368019975532520915e-02f, + 1.417949232048846230e-02f, + 1.466373606336292788e-02f, + 1.513246763763515662e-02f, + 1.558524000170355243e-02f, + 1.602162284194235189e-02f, + 1.644120297853483154e-02f, + 1.684358475349722120e-02f, + 1.722839040053121898e-02f, + 1.759526039636302719e-02f, + 1.794385379324603749e-02f, + 1.827384853232209144e-02f, + 1.858494173755794940e-02f, + 1.887684998999094102e-02f, + 1.914930958204142525e-02f, + 1.940207675166573387e-02f, + 1.963492789614775663e-02f, + 1.984765976534554055e-02f, + 2.004008963423044992e-02f, + 2.021205545457873884e-02f, + 2.036341598569508388e-02f, + 2.049405090406888896e-02f, + 2.060386089188653500e-02f, + 2.069276770434292853e-02f, + 2.076071421571710346e-02f, + 2.080766444419874725e-02f, + 2.083360355547297926e-02f, + 2.083853784509219140e-02f, + 2.082249469968529276e-02f, + 2.078552253707531203e-02f, + 2.072769072539770024e-02f, + 2.064908948133232364e-02f, + 2.054982974758300454e-02f, + 2.043004304975895233e-02f, + 2.028988133283307627e-02f, + 2.012951677737172956e-02f, + 1.994914159575129214e-02f, + 1.974896780859568615e-02f, + 1.952922700168944689e-02f, + 1.929017006363938427e-02f, + 1.903206690457660832e-02f, + 1.875520615621007955e-02f, + 1.845989485356032758e-02f, + 1.814645809871968940e-02f, + 1.781523870700396292e-02f, + 1.746659683587628575e-02f, + 1.710090959704086561e-02f, + 1.671857065212146304e-02f, + 1.631998979235366534e-02f, + 1.590559250273780936e-02f, + 1.547581951111101986e-02f, + 1.503112632261381296e-02f, + 1.457198274004087128e-02f, + 1.409887237057541251e-02f, + 1.361229211942506165e-02f, + 1.311275167088374154e-02f, + 1.260077295736035038e-02f, + 1.207688961692321428e-02f, + 1.154164643992243444e-02f, + 1.099559880526047861e-02f, + 1.043931210689104556e-02f, + 9.873361171136581238e-03f, + 9.298329665421793330e-03f, + 8.714809499028142170e-03f, + 8.123400216482846645e-03f, + 7.524708384200954649e-03f, + 6.919346971004516206e-03f, + 6.307934723150263913e-03f, + 5.691095534499056308e-03f, + 5.069457812466930842e-03f, + 4.443653840398907248e-03f, + 3.814319137009273761e-03f, + 3.182091813536080255e-03f, + 2.547611929256090018e-03f, + 1.911520846010968415e-03f, + 1.274460582389453983e-03f, + 6.370731682176064472e-04f, + 1.081397080984820549e-16f, + -6.361188020413131080e-04f, + -1.270645034688974500e-03f, + -1.902943049573664223e-03f, + -2.532380387505061333e-03f, + -3.158328408659244208e-03f, + -3.780162917995376869e-03f, + -4.397264785285395425e-03f, + -5.009020559139008844e-03f, + -5.614823074421015914e-03f, + -6.214072052459541223e-03f, + -6.806174693455702487e-03f, + -7.390546260511059347e-03f, + -7.966610654700514993e-03f, + -8.533800980628097194e-03f, + -9.091560101911401459e-03f, + -9.639341186054086255e-03f, + -1.017660823817454450e-02f, + -1.070283662307290606e-02f, + -1.121751357513068974e-02f, + -1.172013869554890987e-02f, + -1.221022443644520679e-02f, + -1.268729657134461120e-02f, + -1.315089465161116758e-02f, + -1.360057244838422906e-02f, + -1.403589837959812528e-02f, + -1.445645592167801516e-02f, + -1.486184400552278267e-02f, + -1.525167739639943926e-02f, + -1.562558705739423154e-02f, + -1.598322049607744932e-02f, + -1.632424209406116086e-02f, + -1.664833341914373141e-02f, + -1.695519351975287997e-02f, + -1.724453920141957169e-02f, + -1.751610528503054487e-02f, + -1.776964484662796329e-02f, + -1.800492943854209438e-02f, + -1.822174929166297391e-02f, + -1.841991349867593691e-02f, + -1.859925017810457049e-02f, + -1.875960661902498217e-02f, + -1.890084940633438015e-02f, + -1.902286452647648438e-02f, + -1.912555745354639625e-02f, + -1.920885321571724064e-02f, + -1.927269644195031550e-02f, + -1.931705138897083646e-02f, + -1.934190194851057379e-02f, + -1.934725163483910423e-02f, + -1.933312355262460300e-02f, + -1.929956034518492611e-02f, + -1.924662412320928689e-02f, + -1.917439637405042932e-02f, + -1.908297785170610245e-02f, + -1.897248844762847511e-02f, + -1.884306704251837231e-02f, + -1.869487133928060194e-02f, + -1.852807767733529593e-02f, + -1.834288082849799481e-02f, + -1.813949377465985668e-02f, + -1.791814746751756518e-02f, + -1.767909057061923042e-02f, + -1.742258918401042023e-02f, + -1.714892655178226061e-02f, + -1.685840275283847015e-02f, + -1.655133437521590783e-02f, + -1.622805417430966263e-02f, + -1.588891071536682048e-02f, + -1.553426800063207637e-02f, + -1.516450508153929268e-02f, + -1.478001565636058098e-02f, + -1.438120765373634632e-02f, + -1.396850280252506793e-02f, + -1.354233618842332412e-02f, + -1.310315579781915797e-02f, + -1.265142204935544926e-02f, + -1.218760731368947504e-02f, + -1.171219542194896698e-02f, + -1.122568116339099642e-02f, + -1.072856977278602644e-02f, + -1.022137640805312678e-02f, + -9.704625618685933791e-03f, + -9.178850805514197561e-03f, + -8.644593672357078762e-03f, + -8.102403670126549079e-03f, + -7.552837433952721592e-03f, + -6.996458213902527305e-03f, + -6.433835299872929167e-03f, + -5.865543441244903435e-03f, + -5.292162261885334160e-03f, + -4.714275671091273240e-03f, + -4.132471271074346537e-03f, + -3.547339761581234756e-03f, + -2.959474342255256820e-03f, + -2.369470113338262643e-03f, + -1.777923475318417051e-03f, + -1.185431528126037071e-03f, + -5.925914704819672469e-04f, + -3.657082924657467151e-17f, + 5.917472853565048079e-04f, + 1.182056483865000056e-03f, + 1.770335984084810870e-03f, + 2.355997055758636289e-03f, + 2.938454436983550105e-03f, + 3.517126917070770645e-03f, + 4.091437914513436185e-03f, + 4.660816049491952121e-03f, + 5.224695710346304901e-03f, + 5.782517613461616614e-03f, + 6.333729356008878375e-03f, + 6.877785961000690458e-03f, + 7.414150414123792977e-03f, + 7.942294191823096386e-03f, + 8.461697780117830373e-03f, + 8.971851183644980604e-03f, + 9.472254424431190978e-03f, + 9.962418029908697709e-03f, + 1.044186350969892804e-02f, + 1.091012382070481734e-02f, + 1.136674382005683007e-02f, + 1.181128070548041059e-02f, + 1.224330444265740725e-02f, + 1.266239817917228644e-02f, + 1.306815864464697975e-02f, + 1.346019653668105442e-02f, + 1.383813689223166964e-02f, + 1.420161944407984794e-02f, + 1.455029896204724192e-02f, + 1.488384557864121625e-02f, + 1.520194509882482302e-02f, + 1.550429929362267742e-02f, + 1.579062617728919579e-02f, + 1.606066026778677283e-02f, + 1.631415283033408117e-02f, + 1.655087210380375498e-02f, + 1.677060350976731021e-02f, + 1.697314984400075458e-02f, + 1.715833145028389933e-02f, + 1.732598637634284386e-02f, + 1.747597051180499114e-02f, + 1.760815770805244929e-02f, + 1.772243987987905459e-02f, + 1.781872708887428242e-02f, + 1.789694760847562044e-02f, + 1.795704797064969285e-02f, + 1.799899299418070836e-02f, + 1.802276579456344244e-02f, + 1.802836777551610967e-02f, + 1.801581860214731406e-02f, + 1.798515615582916075e-02f, + 1.793643647084725012e-02f, + 1.786973365291627536e-02f, + 1.778513977966790505e-02f, + 1.768276478323590681e-02f, + 1.756273631508084576e-02f, + 1.742519959321422313e-02f, + 1.727031723200050592e-02f, + 1.709826905473061168e-02f, + 1.690925188917933447e-02f, + 1.670347934637539389e-02f, + 1.648118158282851561e-02f, + 1.624260504647542444e-02f, + 1.598801220662182665e-02f, + 1.571768126817298800e-02f, + 1.543190587046214431e-02f, + 1.513099477099881518e-02f, + 1.481527151447596842e-02f, + 1.448507408738769486e-02f, + 1.414075455862428936e-02f, + 1.378267870642391028e-02f, + 1.341122563207439514e-02f, + 1.302678736077021032e-02f, + 1.262976843004335811e-02f, + 1.222058546619729687e-02f, + 1.179966674918666268e-02f, + 1.136745176639336087e-02f, + 1.092439075576322714e-02f, + 1.047094423877575897e-02f, + 1.000758254372885632e-02f, + 9.534785319831791742e-03f, + 9.053041042603243369e-03f, + 8.562846511087114296e-03f, + 8.064706337396969349e-03f, + 7.559132429115091208e-03f, + 7.046643465073196971e-03f, + 6.527764365051815301e-03f, + 6.003025753936333010e-03f, + 5.472963420876755282e-03f, + 4.938117773999208156e-03f, + 4.399033291224269636e-03f, + 3.856257967746062627e-03f, + 3.310342760733056815e-03f, + 2.761841031809351716e-03f, + 2.211307987882755663e-03f, + 1.659300120877342261e-03f, + 1.106374646939666147e-03f, + 5.530889456780919066e-04f, + -2.562212629853384453e-17f, + -5.523361628926795478e-04f, + -1.103365028790336249e-03f, + -1.652534151487132074e-03f, + -2.199293704964780296e-03f, + -2.743097032196961139e-03f, + -3.283401190029548548e-03f, + -3.819667489593037233e-03f, + -4.351362031714790628e-03f, + -4.877956236795205104e-03f, + -5.398927368629055645e-03f, + -5.913759051650750720e-03f, + -6.421941781095417100e-03f, + -6.922973425571511859e-03f, + -7.416359721553146198e-03f, + -7.901614759304937882e-03f, + -8.378261459764673943e-03f, + -8.845832041915659832e-03f, + -9.303868480194682489e-03f, + -9.751922951488184790e-03f, + -1.018955827128389773e-02f, + -1.061634831855159944e-02f, + -1.103187844894640973e-02f, + -1.143574589593108516e-02f, + -1.182756015943418025e-02f, + -1.220694338166910739e-02f, + -1.257353070975459307e-02f, + -1.292697064479079137e-02f, + -1.326692537705756285e-02f, + -1.359307110701880525e-02f, + -1.390509835182837141e-02f, + -1.420271223705014962e-02f, + -1.448563277331862270e-02f, + -1.475359511768305730e-02f, + -1.500634981939290638e-02f, + -1.524366304989917265e-02f, + -1.546531681686134224e-02f, + -1.567110916196697012e-02f, + -1.586085434238630049e-02f, + -1.603438299570249595e-02f, + -1.619154228817324542e-02f, + -1.633219604619749049e-02f, + -1.645622487087768787e-02f, + -1.656352623558475859e-02f, + -1.665401456645098158e-02f, + -1.672762130573241662e-02f, + -1.678429495799975413e-02f, + -1.682400111913467597e-02f, + -1.684672248812496553e-02f, + -1.685245886166945525e-02f, + -1.684122711162113276e-02f, + -1.681306114531371312e-02f, + -1.676801184883415854e-02f, + -1.670614701332074833e-02f, + -1.662755124438308404e-02f, + -1.653232585475732791e-02f, + -1.642058874032645624e-02f, + -1.629247423965218475e-02f, + -1.614813297718115451e-02f, + -1.598773169030448180e-02f, + -1.581145304046532168e-02f, + -1.561949540852535824e-02f, + -1.541207267461631135e-02f, + -1.518941398271757108e-02f, + -1.495176349021716013e-02f, + -1.469938010272622657e-02f, + -1.443253719443338481e-02f, + -1.415152231429803349e-02f, + -1.385663687839711923e-02f, + -1.354819584875125403e-02f, + -1.322652739897053030e-02f, + -1.289197256707447573e-02f, + -1.254488489584905733e-02f, + -1.218563006111956712e-02f, + -1.181458548832869243e-02f, + -1.143213995781868463e-02f, + -1.103869319922974775e-02f, + -1.063465547543513724e-02f, + -1.022044715644565907e-02f, + -9.796498283722697084e-03f, + -9.363248125350869672e-03f, + -8.921144722528617441e-03f, + -8.470644427841999072e-03f, + -8.012211435799141551e-03f, + -7.546317306102053729e-03f, + -7.073440480148323294e-03f, + -6.594065791253660332e-03f, + -6.108683969096916598e-03f, + -5.617791138891340720e-03f, + -5.121888315793346122e-03f, + -4.621480895060380706e-03f, + -4.117078138476948368e-03f, + -3.609192657567809014e-03f, + -3.098339894123382839e-03f, + -2.585037598558611194e-03f, + -2.069805306636893476e-03f, + -1.553163815081216479e-03f, + -1.035634656603983328e-03f, + -5.177395748811913952e-04f, + -3.594753584560424697e-17f, + 5.170634750964393008e-04f, + 1.032931616641648070e-03f, + 1.547087070033249757e-03f, + 2.059014877257667187e-03f, + 2.568202991233530484e-03f, + 3.074142786564025911e-03f, + 3.576329566188138527e-03f, + 4.074263063429547048e-03f, + 4.567447938941549164e-03f, + 5.055394272060948803e-03f, + 5.537618046079833753e-03f, + 6.013641626959552108e-03f, + 6.482994235012814500e-03f, + 6.945212409090805589e-03f, + 7.399840462817311795e-03f, + 7.846430932424257321e-03f, + 8.284545015748243785e-03f, + 8.713753001960018382e-03f, + 9.133634691605685765e-03f, + 9.543779806553546671e-03f, + 9.943788389443802139e-03f, + 1.033327119225793331e-02f, + 1.071185005362884461e-02f, + 1.107915826452845684e-02f, + 1.143484092198099322e-02f, + 1.177855527046098826e-02f, + 1.210997103065078462e-02f, + 1.242877071524243864e-02f, + 1.273464993148456723e-02f, + 1.302731767018629021e-02f, + 1.330649658090683578e-02f, + 1.357192323307192076e-02f, + 1.382334836277147004e-02f, + 1.406053710501154602e-02f, + 1.428326921120452730e-02f, + 1.449133925169799296e-02f, + 1.468455680315914995e-02f, + 1.486274662064523792e-02f, + 1.502574879420732167e-02f, + 1.517341888988939583e-02f, + 1.530562807500203924e-02f, + 1.542226322756440338e-02f, + 1.552322702982500066e-02f, + 1.560843804578798157e-02f, + 1.567783078268716879e-02f, + 1.573135573636695247e-02f, + 1.576897942054480972e-02f, + 1.579068437994683369e-02f, + 1.579646918732351482e-02f, + 1.578634842436942021e-02f, + 1.576035264658639731e-02f, + 1.571852833214611861e-02f, + 1.566093781482364236e-02f, + 1.558765920108961048e-02f, + 1.549878627146459784e-02f, + 1.539442836625458041e-02f, + 1.527471025580193729e-02f, + 1.513977199540266459e-02f, + 1.498976876505400853e-02f, + 1.482487069421324286e-02f, + 1.464526267176276438e-02f, + 1.445114414139052512e-02f, + 1.424272888261022586e-02f, + 1.402024477765924718e-02f, + 1.378393356452596412e-02f, + 1.353405057637283200e-02f, + 1.327086446763305755e-02f, + 1.299465692707358656e-02f, + 1.270572237812851030e-02f, + 1.240436766682034841e-02f, + 1.209091173759783630e-02f, + 1.176568529743146629e-02f, + 1.142903046851825692e-02f, + 1.108130042995956500e-02f, + 1.072285904878491486e-02f, + 1.035408050070699311e-02f, + 9.975348881000042217e-03f, + 9.587057805905971689e-03f, + 9.189610004980062336e-03f, + 8.783416904796481281e-03f, + 8.368898204444107092e-03f, + 7.946481443246316417e-03f, + 7.516601561152745289e-03f, + 7.079700452249429281e-03f, + 6.636226511847269707e-03f, + 6.186634177609999508e-03f, + 5.731383465191587125e-03f, + 5.270939498854294337e-03f, + 4.805772037546594995e-03f, + 4.336354996921345552e-03f, + 3.863165967780911834e-03f, + 3.386685731435247395e-03f, + 2.907397772465186801e-03f, + 2.425787789381585267e-03f, + 1.942343203677738541e-03f, + 1.457552667765169528e-03f, + 9.719055722931030025e-04f, + 4.858915533437137995e-04f, + 8.998451329969168033e-17f, + -4.852804372203572384e-04f, + -9.694623365727714258e-04f, + -1.452059993443630213e-03f, + -1.932589906371710072e-03f, + -2.410571260246647390e-03f, + -2.885526406203937043e-03f, + -3.356981337736776681e-03f, + -3.824466162554774652e-03f, + -4.287515569716226875e-03f, + -4.745669291575628328e-03f, + -5.198472560085647988e-03f, + -5.645476557004205746e-03f, + -6.086238857560498199e-03f, + -6.520323867144547751e-03f, + -6.947303250588880534e-03f, + -7.366756353621596760e-03f, + -7.778270616075868595e-03f, + -8.181441976453041054e-03f, + -8.575875267442242128e-03f, + -8.961184602012178466e-03f, + -9.336993749696280778e-03f, + -9.702936502709572433e-03f, + -1.005865703153830532e-02f, + -1.040381022966105004e-02f, + -1.073806204706719697e-02f, + -1.106108981225218876e-02f, + -1.137258254238081648e-02f, + -1.167224124132068379e-02f, + -1.195977918526302392e-02f, + -1.223492219565827481e-02f, + -1.249740889920878534e-02f, + -1.274699097467286470e-02f, + -1.298343338624937185e-02f, + -1.320651460332445369e-02f, + -1.341602680637729757e-02f, + -1.361177607885452785e-02f, + -1.379358258483857035e-02f, + -1.396128073234834122e-02f, + -1.411471932212687332e-02f, + -1.425376168178382232e-02f, + -1.437828578517633127e-02f, + -1.448818435692682781e-02f, + -1.458336496199062575e-02f, + -1.466375008020243120e-02f, + -1.472927716574510063e-02f, + -1.477989869149929497e-02f, + -1.481558217824864229e-02f, + -1.483631020872940888e-02f, + -1.484208042652921528e-02f, + -1.483290551985472217e-02f, + -1.480881319020316278e-02f, + -1.476984610598764888e-02f, + -1.471606184118155226e-02f, + -1.464753279906179893e-02f, + -1.456434612114611976e-02f, + -1.446660358143379496e-02f, + -1.435442146607433973e-02f, + -1.422793043860267476e-02f, + -1.408727539089408773e-02f, + -1.393261528000593226e-02f, + -1.376412295108748671e-02f, + -1.358198494655285873e-02f, + -1.338640130172517699e-02f, + -1.317758532717458811e-02f, + -1.295576337798411137e-02f, + -1.272117461019173744e-02f, + -1.247407072466863269e-02f, + -1.221471569870679480e-02f, + -1.194338550559997762e-02f, + -1.166036782251413627e-02f, + -1.136596172695676817e-02f, + -1.106047738216157407e-02f, + -1.074423571171940345e-02f, + -1.041756806379570341e-02f, + -1.008081586528326509e-02f, + -9.734330266250949479e-03f, + -9.378471775056540852e-03f, + -9.013609884502808353e-03f, + -8.640122689421677812e-03f, + -8.258396496082181723e-03f, + -7.868825423824252902e-03f, + -7.471810999326916093e-03f, + -7.067761743930141109e-03f, + -6.657092754429278468e-03f, + -6.240225277775035030e-03f, + -5.817586280110769240e-03f, + -5.389608010588473400e-03f, + -4.956727560406810548e-03f, + -4.519386417521461217e-03f, + -4.078030017478383173e-03f, + -3.633107290827413370e-03f, + -3.185070207573783597e-03f, + -2.734373319130519765e-03f, + -2.281473298231648152e-03f, + -1.826828477275332062e-03f, + -1.370898385557953137e-03f, + -9.141432858685172996e-04f, + -4.570237109078288933e-04f, + -3.525929546010641032e-17f, + 4.564681634404971059e-04f, + 9.119222132217494076e-04f, + 1.365905160004667876e-03f, + 1.817962048792683442e-03f, + 2.267640413821652746e-03f, + 2.714490730398470830e-03f, + 3.158066863236440400e-03f, + 3.597926510843086571e-03f, + 4.033631645515631595e-03f, + 4.464748948511986122e-03f, + 4.890850239961540627e-03f, + 5.311512903093372658e-03f, + 5.726320302360849920e-03f, + 6.134862195051104215e-03f, + 6.536735135972274353e-03f, + 6.931542874822234357e-03f, + 7.318896745846920765e-03f, + 7.698416049407258259e-03f, + 8.069728425079554859e-03f, + 8.432470215927469551e-03f, + 8.786286823586514014e-03f, + 9.130833053819266409e-03f, + 9.465773452203021798e-03f, + 9.790782629625502387e-03f, + 1.010554557727417341e-02f, + 1.040975797081422800e-02f, + 1.070312646346415798e-02f, + 1.098536896768670043e-02f, + 1.125621492522658335e-02f, + 1.151540556523688447e-02f, + 1.176269415025001618e-02f, + 1.199784620976064760e-02f, + 1.222063976119941615e-02f, + 1.243086551809268608e-02f, + 1.262832708521319930e-02f, + 1.281284114054117608e-02f, + 1.298423760386959412e-02f, + 1.314235979189961462e-02f, + 1.328706455968696638e-02f, + 1.341822242831278503e-02f, + 1.353571769866840878e-02f, + 1.363944855125505048e-02f, + 1.372932713191544682e-02f, + 1.380527962342858322e-02f, + 1.386724630291150812e-02f, + 1.391518158498825965e-02f, + 1.394905405069915734e-02f, + 1.396884646213872837e-02f, + 1.397455576282423569e-02f, + 1.396619306381172501e-02f, + 1.394378361559041324e-02f, + 1.390736676580064946e-02f, + 1.385699590283483162e-02f, + 1.379273838539456926e-02f, + 1.371467545809203735e-02f, + 1.362290215319624312e-02f, + 1.351752717864009370e-02f, + 1.339867279241668298e-02f, + 1.326647466350721130e-02f, + 1.312108171949675703e-02f, + 1.296265598104565965e-02f, + 1.279137238340016282e-02f, + 1.260741858513507452e-02f, + 1.241099476433735194e-02f, + 1.220231340244982976e-02f, + 1.198159905600587605e-02f, + 1.174908811650030374e-02f, + 1.150502855865119002e-02f, + 1.124967967731822956e-02f, + 1.098331181335730246e-02f, + 1.070620606869824784e-02f, + 1.041865401094608894e-02f, + 1.012095736781302990e-02f, + 9.813427711702541953e-03f, + 9.496386134773091015e-03f, + 9.170162914817906255e-03f, + 8.835097172309763769e-03f, + 8.491536518964717603e-03f, + 8.139836698186228570e-03f, + 7.780361217764370299e-03f, + 7.413480975203700848e-03f, + 7.039573876068914819e-03f, + 6.659024445737531453e-03f, + 6.272223434958205251e-03f, + 5.879567419619150664e-03f, + 5.481458395132861143e-03f, + 5.078303365855517913e-03f, + 4.670513929954199853e-03f, + 4.258505860148748337e-03f, + 3.842698680752674144e-03f, + 3.423515241440691897e-03f, + 3.001381288178317595e-03f, + 2.576725031746534850e-03f, + 2.149976714294795244e-03f, + 1.721568174367767547e-03f, + 1.291932410834989269e-03f, + 8.615031461717679489e-04f, + 4.307143895238358311e-04f, + -1.330885637378024658e-17f, + -4.302067493707025154e-04f, + -8.594736065816692546e-04f, + -1.287369774051150230e-03f, + -1.713466340056074740e-03f, + -2.137336707761578608e-03f, + -2.558557021419832853e-03f, + -2.976706589314977430e-03f, + -3.391368303029395053e-03f, + -3.802129052617245642e-03f, + -4.208580137271933364e-03f, + -4.610317671079266870e-03f, + -5.006942983457264747e-03f, + -5.398063013881818258e-03f, + -5.783290700513624497e-03f, + -6.162245362338608992e-03f, + -6.534553074447273235e-03f, + -6.899847036085403514e-03f, + -7.257767931111701668e-03f, + -7.607964280510494219e-03f, + -7.950092786617034279e-03f, + -8.283818668712937539e-03f, + -8.608815989672613522e-03f, + -8.924767973335575449e-03f, + -9.231367312302321895e-03f, + -9.528316465851647404e-03f, + -9.815327947693202118e-03f, + -1.009212460327926254e-02f, + -1.035843987640591192e-02f, + -1.061401806485215774e-02f, + -1.085861456480968767e-02f, + -1.109199610387191955e-02f, + -1.131394096236322706e-02f, + -1.152423918279525498e-02f, + -1.172269276725893851e-02f, + -1.190911586256368677e-02f, + -1.208333493295382470e-02f, + -1.224518892024368394e-02f, + -1.239452939122312469e-02f, + -1.253122067220243524e-02f, + -1.265513997057455924e-02f, + -1.276617748328832784e-02f, + -1.286423649213934428e-02f, + -1.294923344579684485e-02f, + -1.302109802850088746e-02f, + -1.307977321537517543e-02f, + -1.312521531431613646e-02f, + -1.315739399443144331e-02f, + -1.317629230101505927e-02f, + -1.318190665705944176e-02f, + -1.317424685131877472e-02f, + -1.315333601295100296e-02f, + -1.311921057277957818e-02f, + -1.307192021122943054e-02f, + -1.301152779300470720e-02f, + -1.293810928858945414e-02f, + -1.285175368266549059e-02f, + -1.275256286955382679e-02f, + -1.264065153580123772e-02f, + -1.251614703004294733e-02f, + -1.237918922028838700e-02f, + -1.222993033878752925e-02f, + -1.206853481464722870e-02f, + -1.189517909438159854e-02f, + -1.171005145058865056e-02f, + -1.151335177896088170e-02f, + -1.130529138384659196e-02f, + -1.108609275258971849e-02f, + -1.085598931889009827e-02f, + -1.061522521543183453e-02f, + -1.036405501604320198e-02f, + -1.010274346765773629e-02f, + -9.831565212357994479e-03f, + -9.550804499793438818e-03f, + -9.260754890270634504e-03f, + -8.961718948827171807e-03f, + -8.654007930606116492e-03f, + -8.337941457855730515e-03f, + -8.013847188892069678e-03f, + -7.682060479362260927e-03f, + -7.342924036161159809e-03f, + -6.996787564356483392e-03f, + -6.644007407482657376e-03f, + -6.284946181578719530e-03f, + -5.919972403337297497e-03f, + -5.549460112752437578e-03f, + -5.173788490645978184e-03f, + -4.793341471466837367e-03f, + -4.408507351756223852e-03f, + -4.019678394675591307e-03f, + -3.627250431002364273e-03f, + -3.231622456996959773e-03f, + -2.833196229547020346e-03f, + -2.432375859003425757e-03f, + -2.029567400113351655e-03f, + -1.625178441472032017e-03f, + -1.219617693898372018e-03f, + -8.132945781564861155e-04f, + -4.066188124353766527e-04f, + -1.255183464083940188e-16f, + 4.061527825679167288e-04f, + 8.114313961304521613e-04f, + 1.215429048341218040e-03f, + 1.617740701170319395e-03f, + 2.017963476201877198e-03f, + 2.415697057295686061e-03f, + 2.810544090212879591e-03f, + 3.202110578810242990e-03f, + 3.590006277401872493e-03f, + 3.973845078907196904e-03f, + 4.353245398391843331e-03f, + 4.727830551627599208e-03f, + 5.097229128292139061e-03f, + 5.461075359441391712e-03f, + 5.819009478893136939e-03f, + 6.170678078162634105e-03f, + 6.515734454602445554e-03f, + 6.853838952405788033e-03f, + 7.184659296134813210e-03f, + 7.507870916452765928e-03f, + 7.823157267734456854e-03f, + 8.130210137252638636e-03f, + 8.428729945633239504e-03f, + 8.718426038289772001e-03f, + 8.999016967555456201e-03f, + 9.270230765236708165e-03f, + 9.531805205328850242e-03f, + 9.783488056638036182e-03f, + 1.002503732506817256e-02f, + 1.025622148534208536e-02f, + 1.047681970193385138e-02f, + 1.068662203900417294e-02f, + 1.088542965913968583e-02f, + 1.107305501070874297e-02f, + 1.124932200365959603e-02f, + 1.141406617359526365e-02f, + 1.156713483397583953e-02f, + 1.170838721630671625e-02f, + 1.183769459818636779e-02f, + 1.195494041909911376e-02f, + 1.206002038384902317e-02f, + 1.215284255354657367e-02f, + 1.223332742406933564e-02f, + 1.230140799193264051e-02f, + 1.235702980751857485e-02f, + 1.240015101562292471e-02f, + 1.243074238329506739e-02f, + 1.244878731495606579e-02f, + 1.245428185479465800e-02f, + 1.244723467645303394e-02f, + 1.242766706002694684e-02f, + 1.239561285641773217e-02f, + 1.235111843908625294e-02f, + 1.229424264327155618e-02f, + 1.222505669274922754e-02f, + 1.214364411421739454e-02f, + 1.205010063941019949e-02f, + 1.194453409505086793e-02f, + 1.182706428076905555e-02f, + 1.169782283511792108e-02f, + 1.155695308984023249e-02f, + 1.140460991254168763e-02f, + 1.124095953794393248e-02f, + 1.106617938789930186e-02f, + 1.088045788035994950e-02f, + 1.068399422750770586e-02f, + 1.047699822325738259e-02f, + 1.025969002036108101e-02f, + 1.003229989734856151e-02f, + 9.795068015547647028e-03f, + 9.548244166444083345e-03f, + 9.292087509640511306e-03f, + 9.026866301692599431e-03f, + 8.752857616103554630e-03f, + 8.470347054767179973e-03f, + 8.179628451162134981e-03f, + 7.881003565601285565e-03f, + 7.574781772854489656e-03f, + 7.261279742466121394e-03f, + 6.940821112095421283e-03f, + 6.613736154219424825e-03f, + 6.280361436535699012e-03f, + 5.941039476420039225e-03f, + 5.596118389785657496e-03f, + 5.245951534708952028e-03f, + 4.890897150183600751e-03f, + 4.531317990370226784e-03f, + 4.167580954717115850e-03f, + 3.800056714327025055e-03f, + 3.429119334948160357e-03f, + 3.055145896976142229e-03f, + 2.678516112847336220e-03f, + 2.299611942215314033e-03f, + 1.918817205297107184e-03f, + 1.536517194780740196e-03f, + 1.153098286686640977e-03f, + 7.689475505726472288e-04f, + 3.844523594784173275e-04f, + 7.713589460388476895e-17f, + -3.840227171148354263e-04f, + -7.672298454569775623e-04f, + -1.149236690145042554e-03f, + -1.529660193323781423e-03f, + -1.908119317586332020e-03f, + -2.284235426939436406e-03f, + -2.657632664926935610e-03f, + -3.027938329540865066e-03f, + -3.394783244538977351e-03f, + -3.757802126807970565e-03f, + -4.116633949400874508e-03f, + -4.470922299891161820e-03f, + -4.820315733689854894e-03f, + -5.164468121973136636e-03f, + -5.503038993878216732e-03f, + -5.835693872631364174e-03f, + -6.162104605273097113e-03f, + -6.481949685660806648e-03f, + -6.794914570427616589e-03f, + -7.100691987590134792e-03f, + -7.398982237502254970e-03f, + -7.689493485860325432e-03f, + -7.971942048476048787e-03f, + -8.246052667536663341e-03f, + -8.511558779087890353e-03f, + -8.768202771477389898e-03f, + -9.015736234510263528e-03f, + -9.253920199077345435e-03f, + -9.482525367023937612e-03f, + -9.701332331039827506e-03f, + -9.910131784361380508e-03f, + -1.010872472008433366e-02f, + -1.029692261989997165e-02f, + -1.047454763207558877e-02f, + -1.064143273851355688e-02f, + -1.079742191073151426e-02f, + -1.094237025462001418e-02f, + -1.107614414384500319e-02f, + -1.119862134177232113e-02f, + -1.130969111180511570e-02f, + -1.140925431603640253e-02f, + -1.149722350212928346e-02f, + -1.157352297835191959e-02f, + -1.163808887670370745e-02f, + -1.169086920408306425e-02f, + -1.173182388145829064e-02f, + -1.176092477101533564e-02f, + -1.177815569126870569e-02f, + -1.178351242013314648e-02f, + -1.177700268596670700e-02f, + -1.175864614660714416e-02f, + -1.172847435643616099e-02f, + -1.168653072151761875e-02f, + -1.163287044286803393e-02f, + -1.156756044792955386e-02f, + -1.149067931032693446e-02f, + -1.140231715800252288e-02f, + -1.130257556983401725e-02f, + -1.119156746085197413e-02f, + -1.106941695618434904e-02f, + -1.093625925386791653e-02f, + -1.079224047667651058e-02f, + -1.063751751312634955e-02f, + -1.047225784783175143e-02f, + -1.029663938139156396e-02f, + -1.011085024000046503e-02f, + -9.915088574987292874e-03f, + -9.709562352492116799e-03f, + -9.494489133505876546e-03f, + -9.270095844503068935e-03f, + -9.036618538908790590e-03f, + -8.794302149650478143e-03f, + -8.543400233051267126e-03f, + -8.284174704334627132e-03f, + -8.016895565012135613e-03f, + -7.741840622440153072e-03f, + -7.459295201834709003e-03f, + -7.169551851041272746e-03f, + -6.872910038367072844e-03f, + -6.569675843783693604e-03f, + -6.260161643820879619e-03f, + -5.944685790473217164e-03f, + -5.623572284449645554e-03f, + -5.297150443101252340e-03f, + -4.965754563364804634e-03f, + -4.629723580069068818e-03f, + -4.289400719951269245e-03f, + -3.945133151734599684e-03f, + -3.597271632626723118e-03f, + -3.246170151593960954e-03f, + -2.892185569777141942e-03f, + -2.535677258412258675e-03f, + -2.177006734621175950e-03f, + -1.816537295443911102e-03f, + -1.454633650479946480e-03f, + -1.091661553510198676e-03f, + -7.279874334719225624e-04f, + -3.639780251556599890e-04f, + -3.369908401361916715e-17f, + 3.635804026494091068e-04f, + 7.263977434430309238e-04f, + 1.088087749724279355e-03f, + 1.448287680655482423e-03f, + 1.806636690402828576e-03f, + 2.162776189022377980e-03f, + 2.516350200682577424e-03f, + 2.867005718868611067e-03f, + 3.214393058213963015e-03f, + 3.558166202608354332e-03f, + 3.897983149238446517e-03f, + 4.233506248216929377e-03f, + 4.564402537464701606e-03f, + 4.890344072516150664e-03f, + 5.211008250917694221e-03f, + 5.526078130903779376e-03f, + 5.835242744032488431e-03f, + 6.138197401474478412e-03f, + 6.434643993655418670e-03f, + 6.724291282955277560e-03f, + 7.006855189179749324e-03f, + 7.282059067523997259e-03f, + 7.549633978756757104e-03f, + 7.809318951363577316e-03f, + 8.060861235391183002e-03f, + 8.304016547750365032e-03f, + 8.538549308736993748e-03f, + 8.764232869544244173e-03f, + 8.980849730547869544e-03f, + 9.188191750152601561e-03f, + 9.386060344002900707e-03f, + 9.574266674365642868e-03f, + 9.752631829506541034e-03f, + 9.920986992890266226e-03f, + 1.007917360204479626e-02f, + 1.022704349694264145e-02f, + 1.036445905775955530e-02f, + 1.049129333188454291e-02f, + 1.060743015006561894e-02f, + 1.071276423158474926e-02f, + 1.080720127836987295e-02f, + 1.089065805795989307e-02f, + 1.096306247525190812e-02f, + 1.102435363297093844e-02f, + 1.107448188081278095e-02f, + 1.111340885322339295e-02f, + 1.114110749578882571e-02f, + 1.115756208022166719e-02f, + 1.116276820794095091e-02f, + 1.115673280225443556e-02f, + 1.113947408916339532e-02f, + 1.111102156682138194e-02f, + 1.107141596369005596e-02f, + 1.102070918544608043e-02f, + 1.095896425070500523e-02f, + 1.088625521563825124e-02f, + 1.080266708757151098e-02f, + 1.070829572766292780e-02f, + 1.060324774277076644e-02f, + 1.048764036663119362e-02f, + 1.036160133047638564e-02f, + 1.022526872323565802e-02f, + 1.007879084146987361e-02f, + 9.922326029202397854e-03f, + 9.756042507818011092e-03f, + 9.580118196210777107e-03f, + 9.394740521373458678e-03f, + 9.200106219628658571e-03f, + 8.996421128710744425e-03f, + 8.783899970919039138e-03f, + 8.562766127568535030e-03f, + 8.333251404975441923e-03f, + 8.095595792220260448e-03f, + 7.850047210942715306e-03f, + 7.596861257427847160e-03f, + 7.336300937249773911e-03f, + 7.068636392749921664e-03f, + 6.794144623630500764e-03f, + 6.513109200950242123e-03f, + 6.225819974820153910e-03f, + 5.932572776096196529e-03f, + 5.633669112378537902e-03f, + 5.329415858627153425e-03f, + 5.020124942711203311e-03f, + 4.706113026214525825e-03f, + 4.387701180821052503e-03f, + 4.065214560613866247e-03f, + 3.738982070617613389e-03f, + 3.409336031925057006e-03f, + 3.076611843746769430e-03f, + 2.741147642725723539e-03f, + 2.403283959864889810e-03f, + 2.063363375414229133e-03f, + 1.721730172063813159e-03f, + 1.378729986799676023e-03f, + 1.034709461766141576e-03f, + 6.900158944939007019e-04f, + 3.449968878405673157e-04f, + 0.000000000000000000e+00f, + -3.446276050693368302e-04f, + -6.885395064473497171e-04f, + -1.031390373933058213e-03f, + -1.372836314259132063e-03f, + -1.712535215489931510e-03f, + -2.050147089260192981e-03f, + -2.385334410513898287e-03f, + -2.717762454401503706e-03f, + -3.047099630002055894e-03f, + -3.373017810537275608e-03f, + -3.695192659748559091e-03f, + -4.013303954115152519e-03f, + -4.327035900590155311e-03f, + -4.636077449543945204e-03f, + -4.940122602601876300e-03f, + -5.238870715073626685e-03f, + -5.532026792676994140e-03f, + -5.819301782261442936e-03f, + -6.100412856246560135e-03f, + -6.375083690498107615e-03f, + -6.643044735364164385e-03f, + -6.904033479612515893e-03f, + -7.157794707005572452e-03f, + -7.404080745267220716e-03f, + -7.642651707196129220e-03f, + -7.873275723692764461e-03f, + -8.095729168475295640e-03f, + -8.309796874264679251e-03f, + -8.515272340233715279e-03f, + -8.711957930518144516e-03f, + -8.899665063600716020e-03f, + -9.078214392388751081e-03f, + -9.247435974810619408e-03f, + -9.407169434773821060e-03f, + -9.557264113329744237e-03f, + -9.697579209904895123e-03f, + -9.827983913467562213e-03f, + -9.948357523507136632e-03f, + -1.005858956071708186e-02f, + -1.015857986727966046e-02f, + -1.024823869666328068e-02f, + -1.032748679285360252e-02f, + -1.039625545894891021e-02f, + -1.045448661506321979e-02f, + -1.050213284548926623e-02f, + -1.053915743508587223e-02f, + -1.056553439486431802e-02f, + -1.058124847675941289e-02f, + -1.058629517758200196e-02f, + -1.058068073216014530e-02f, + -1.056442209568751386e-02f, + -1.053754691530808460e-02f, + -1.050009349097712034e-02f, + -1.045211072564902234e-02f, + -1.039365806485362080e-02f, + -1.032480542573286329e-02f, + -1.024563311561991173e-02f, + -1.015623174025468214e-02f, + -1.005670210173764852e-02f, + -9.947155086336527396e-03f, + -9.827711542269031153e-03f, + -9.698502147594538492e-03f, + -9.559667268359363368e-03f, + -9.411356807146858960e-03f, + -9.253730042196249908e-03f, + -9.086955457261344099e-03f, + -8.911210562389308004e-03f, + -8.726681705811039844e-03f, + -8.533563877139486997e-03f, + -8.332060502084964390e-03f, + -8.122383228901621996e-03f, + -7.904751706788885890e-03f, + -7.679393356479695225e-03f, + -7.446543133253041326e-03f, + -7.206443282618896044e-03f, + -6.959343088928202255e-03f, + -6.705498617166942392e-03f, + -6.445172448203926978e-03f, + -6.178633407762102944e-03f, + -5.906156289395311614e-03f, + -5.628021571754467968e-03f, + -5.344515130431467045e-03f, + -5.055927944681215189e-03f, + -4.762555799315829584e-03f, + -4.464698982081711544e-03f, + -4.162661976823887194e-03f, + -3.856753152753953674e-03f, + -3.547284450136960633e-03f, + -3.234571062715784710e-03f, + -2.918931117198290178e-03f, + -2.600685350131433544e-03f, + -2.280156782488628776e-03f, + -1.957670392303650399e-03f, + -1.633552785677109664e-03f, + -1.308131866494795974e-03f, + -9.817365051840280538e-04f, + -6.546962068479288350e-04f, + -3.273407791097072712e-04f, + 4.043570989833329463e-17f, + 3.269967137754016561e-04f, + 6.533206378577746144e-04f, + 9.786440702132328823e-04f, + 1.302640659735354979e-03f, + 1.624985733145793004e-03f, + 1.945356619862989578e-03f, + 2.263432974515657958e-03f, + 2.578897096781404205e-03f, + 2.891434248225943724e-03f, + 3.200732965834694743e-03f, + 3.506485371918194750e-03f, + 3.808387480088745985e-03f, + 4.106139497000982005e-03f, + 4.399446119558816405e-03f, + 4.688016827295758519e-03f, + 4.971566169637211575e-03f, + 5.249814047762459135e-03f, + 5.522485990789751178e-03f, + 5.789313426009380474e-03f, + 6.050033942903848549e-03f, + 6.304391550690290578e-03f, + 6.552136929139138963e-03f, + 6.793027672418951342e-03f, + 7.026828525731477169e-03f, + 7.253311614507366133e-03f, + 7.472256665937161355e-03f, + 7.683451222625906421e-03f, + 7.886690848162170725e-03f, + 8.081779324404252465e-03f, + 8.268528840294541229e-03f, + 8.446760172019297450e-03f, + 8.616302854343038317e-03f, + 8.776995342953978693e-03f, + 8.928685167666237238e-03f, + 9.071229076335495314e-03f, + 9.204493169351136636e-03f, + 9.328353024581554839e-03f, + 9.442693812655188201e-03f, + 9.547410402472212773e-03f, + 9.642407456851329745e-03f, + 9.727599518224548311e-03f, + 9.802911084305539202e-03f, + 9.868276673664756402e-03f, + 9.923640881156430005e-03f, + 9.968958423152556383e-03f, + 1.000419417254796474e-02f, + 1.002932318351319220e-02f, + 1.004433070597993659e-02f, + 1.004921218985568680e-02f, + 1.004397327897390071e-02f, + 1.002862979479642036e-02f, + 1.000320770989520693e-02f, + 9.967743111250705959e-03f, + 9.922282153414410666e-03f, + 9.866881001593018341e-03f, + 9.801605764722259168e-03f, + 9.726532418607795535e-03f, + 9.641746719220965420e-03f, + 9.547344106246909851e-03f, + 9.443429596991709252e-03f, + 9.330117670766156779e-03f, + 9.207532143871193647e-03f, + 9.075806035321471940e-03f, + 8.935081423451458893e-03f, + 8.785509293556969038e-03f, + 8.627249376736262007e-03f, + 8.460469980100025419e-03f, + 8.285347808531550937e-03f, + 8.102067778184653124e-03f, + 7.910822821914111069e-03f, + 7.711813686845882775e-03f, + 7.505248724294873164e-03f, + 7.291343672252590877e-03f, + 7.070321430670069122e-03f, + 6.842411829768484458e-03f, + 6.607851391620159567e-03f, + 6.366883085243799263e-03f, + 6.119756075469458441e-03f, + 5.866725465831302069e-03f, + 5.608052035751829104e-03f, + 5.344001972290637024e-03f, + 5.074846596729006530e-03f, + 4.800862086276046561e-03f, + 4.522329191175403912e-03f, + 4.239532947506496723e-03f, + 3.952762385971762653e-03f, + 3.662310236965878128e-03f, + 3.368472632229732935e-03f, + 3.071548803391624394e-03f, + 2.771840777700751261e-03f, + 2.469653071265261093e-03f, + 2.165292380101938724e-03f, + 1.859067269314046813e-03f, + 1.551287860709699411e-03f, + 1.242265519177247843e-03f, + 9.323125381350914204e-04f, + 6.217418243711637623e-04f, + 3.108665825923342669e-04f, + 6.717146213127583512e-17f, + -3.105450687918437651e-04f, + -6.204564161774286978e-04f, + -9.294227950051989944e-04f, + -1.237134230733572199e-03f, + -1.543282331983834290e-03f, + -1.847560599181306829e-03f, + -2.149664730972687243e-03f, + -2.449292928118728188e-03f, + -2.746146194552807982e-03f, + -3.039928635312416725e-03f, + -3.330347751041712323e-03f, + -3.617114728774667616e-03f, + -3.899944728711154593e-03f, + -4.178557166699342108e-03f, + -4.452675992145861683e-03f, + -4.722029961080219732e-03f, + -4.986352904100606331e-03f, + -5.245383988940638745e-03f, + -5.498867977395256908e-03f, + -5.746555476355140642e-03f, + -5.988203182702574526e-03f, + -6.223574121828233212e-03f, + -6.452437879537288590e-03f, + -6.674570827115577747e-03f, + -6.889756339339682574e-03f, + -7.097785005216259401e-03f, + -7.298454831247235333e-03f, + -7.491571437024912607e-03f, + -7.676948242966399882e-03f, + -7.854406650007556001e-03f, + -8.023776211084653054e-03f, + -8.184894794238147323e-03f, + -8.337608737184420971e-03f, + -8.481772993207853037e-03f, + -8.617251268236572961e-03f, + -8.743916148971660543e-03f, + -8.861649221950897853e-03f, + -8.970341183436947655e-03f, + -9.069891940027947907e-03f, + -9.160210699899310610e-03f, + -9.241216054595012552e-03f, + -9.312836051294730300e-03f, + -9.375008255495077131e-03f, + -9.427679804050792534e-03f, + -9.470807448532998427e-03f, + -9.504357588870533669e-03f, + -9.528306297250627166e-03f, + -9.542639332264922503e-03f, + -9.547352143296350749e-03f, + -9.542449865152758184e-03f, + -9.527947302962450418e-03f, + -9.503868907356978132e-03f, + -9.470248739975935248e-03f, + -9.427130429338478543e-03f, + -9.374567117135889846e-03f, + -9.312621395008722006e-03f, + -9.241365231882207529e-03f, + -9.160879891942457637e-03f, + -9.071255843345765041e-03f, + -8.972592657761846446e-03f, + -8.864998900862054027e-03f, + -8.748592013871738307e-03f, + -8.623498186314530051e-03f, + -8.489852220086737886e-03f, + -8.347797385005961690e-03f, + -8.197485265989208972e-03f, + -8.039075602022388231e-03f, + -7.872736117090798832e-03f, + -7.698642343250202899e-03f, + -7.516977436023509172e-03f, + -7.327931982316876480e-03f, + -7.131703801056546270e-03f, + -6.928497736752988953e-03f, + -6.718525446209536699e-03f, + -6.502005178594330234e-03f, + -6.279161549105892817e-03f, + -6.050225306465603983e-03f, + -5.815433094476260209e-03f, + -5.575027207895101936e-03f, + -5.329255342869666442e-03f, + -5.078370342195653343e-03f, + -4.822629935656748412e-03f, + -4.562296475713070905e-03f, + -4.297636668809446704e-03f, + -4.028921302576533685e-03f, + -3.756424969205551280e-03f, + -3.480425785277831575e-03f, + -3.201205108333276313e-03f, + -2.919047250469300383e-03f, + -2.634239189257616548e-03f, + -2.347070276275515198e-03f, + -2.057831943546030353e-03f, + -1.766817408183218516e-03f, + -1.474321375543928428e-03f, + -1.180639741184265909e-03f, + -8.860692919223937727e-04f, + -5.909074063099545391e-04f, + -2.954517548118973532e-04f, + -3.191480037364917763e-17f, + 2.951505029420960018e-04f, + 5.897030050987488040e-04f, + 8.833616617872707506e-04f, + 1.175831829311610932e-03f, + 1.466820360203527135e-03f, + 1.756035896659971941e-03f, + 2.043189161879899619e-03f, + 2.327993249011680189e-03f, + 2.610163907422230218e-03f, + 2.889419826001986703e-03f, + 3.165482913225662470e-03f, + 3.438078573687941564e-03f, + 3.706935980840707877e-03f, + 3.971788345662486015e-03f, + 4.232373180990945533e-03f, + 4.488432561260610569e-03f, + 4.739713377386114979e-03f, + 4.985967586540838471e-03f, + 5.226952456585757904e-03f, + 5.462430804905994176e-03f, + 5.692171231422111718e-03f, + 5.915948345547154125e-03f, + 6.133542986866762428e-03f, + 6.344742439328332831e-03f, + 6.549340638727800534e-03f, + 6.747138373295004030e-03f, + 6.937943477180526231e-03f, + 7.121571016657480234e-03f, + 7.297843468859207573e-03f, + 7.466590892878511958e-03f, + 7.627651093066531961e-03f, + 7.780869774372829901e-03f, + 7.926100689579733752e-03f, + 8.063205778290625028e-03f, + 8.192055297540449046e-03f, + 8.312527943906498212e-03f, + 8.424510967003927958e-03f, + 8.527900274261378949e-03f, + 8.622600526880391109e-03f, + 8.708525226889919993e-03f, + 8.785596795218742969e-03f, + 8.853746640715155422e-03f, + 8.912915220054325877e-03f, + 8.963052088482293539e-03f, + 9.004115941354405919e-03f, + 9.036074646436131896e-03f, + 9.058905266942841872e-03f, + 9.072594075305043249e-03f, + 9.077136557654227889e-03f, + 9.072537409034447248e-03f, + 9.058810519353838187e-03f, + 9.035978950099398527e-03f, + 9.004074901847999857e-03f, + 8.963139672615380235e-03f, + 8.913223607094592979e-03f, + 8.854386036843783780e-03f, + 8.786695211493011221e-03f, + 8.710228221048086500e-03f, + 8.625070909378744488e-03f, + 8.531317778987176914e-03f, + 8.429071887160986820e-03f, + 8.318444733624745513e-03f, + 8.199556139810507127e-03f, + 8.072534119878281914e-03f, + 7.937514743624142846e-03f, + 7.794641991421518389e-03f, + 7.644067601350621258e-03f, + 7.485950908677277416e-03f, + 7.320458677849650715e-03f, + 7.147764927190735675e-03f, + 6.968050746469218841e-03f, + 6.781504107540342781e-03f, + 6.588319668252944766e-03f, + 6.388698569828255708e-03f, + 6.182848227920212554e-03f, + 5.970982117573007432e-03f, + 5.753319552299874899e-03f, + 5.530085457510665325e-03f, + 5.301510138520690307e-03f, + 5.067829043382217347e-03f, + 4.829282520779390811e-03f, + 4.586115573237751521e-03f, + 4.338577605899722467e-03f, + 4.086922171123733884e-03f, + 3.831406709168724920e-03f, + 3.572292285227009461e-03f, + 3.309843323076701056e-03f, + 3.044327335621568181e-03f, + 2.776014652595465773e-03f, + 2.505178145706950243e-03f, + 2.232092951502079141e-03f, + 1.957036192228632423e-03f, + 1.680286694983667639e-03f, + 1.402124709426648972e-03f, + 1.122831624348555194e-03f, + 8.426896833769130903e-04f, + 5.619817001094690135e-04f, + 2.809907729590478470e-04f, + 0.000000000000000000e+00f, + -2.807078058981391780e-04f, + -5.608504013647517628e-04f, + -8.401463959614267896e-04f, + -1.118315534473937048e-03f, + -1.395078977776910336e-03f, + -1.670159581991349264e-03f, + -1.943282175656975462e-03f, + -2.214173834640201406e-03f, + -2.482564154505302687e-03f, + -2.748185520076693727e-03f, + -3.010773371923358872e-03f, + -3.270066469502342678e-03f, + -3.525807150696843618e-03f, + -3.777741587494939240e-03f, + -4.025620037552721069e-03f, + -4.269197091394013634e-03f, + -4.508231915003397400e-03f, + -4.742488487571064684e-03f, + -4.971735834156138824e-03f, + -5.195748253041122811e-03f, + -5.414305537549929381e-03f, + -5.627193192117104295e-03f, + -5.834202642391930586e-03f, + -6.035131439175642903e-03f, + -6.229783455990234309e-03f, + -6.417969080087524217e-03f, + -6.599505396713676100e-03f, + -6.774216366448439740e-03f, + -6.941932995450164623e-03f, + -7.102493498440299972e-03f, + -7.255743454271620582e-03f, + -7.401535953931983637e-03f, + -7.539731740839664825e-03f, + -7.670199343300234535e-03f, + -7.792815198996800620e-03f, + -7.907463771397596833e-03f, + -8.014037657972214804e-03f, + -8.112437690114479572e-03f, + -8.202573024681410890e-03f, + -8.284361227063144831e-03f, + -8.357728345709419457e-03f, + -8.422608978046395439e-03f, + -8.478946327725278564e-03f, + -8.526692253154843221e-03f, + -8.565807307276868815e-03f, + -8.596260768553768902e-03f, + -8.618030663145858153e-03f, + -8.631103778264705498e-03f, + -8.635475666698075314e-03f, + -8.631150642510639071e-03f, + -8.618141767933615305e-03f, + -8.596470831465410564e-03f, + -8.566168317214016212e-03f, + -8.527273365520683310e-03f, + -8.479833724913378445e-03f, + -8.423905695446994024e-03f, + -8.359554063495495263e-03f, + -8.286852028071115678e-03f, + -8.205881118751968267e-03f, + -8.116731105309984984e-03f, + -8.019499899138108831e-03f, + -7.914293446583613167e-03f, + -7.801225614304001070e-03f, + -7.680418066767507809e-03f, + -7.552000136030336853e-03f, + -7.416108683929066407e-03f, + -7.272887956833709935e-03f, + -7.122489433116511483e-03f, + -6.965071663495360846e-03f, + -6.800800104421189651e-03f, + -6.629846944682925639e-03f, + -6.452390925411476304e-03f, + -6.268617153670886545e-03f, + -6.078716909829352984e-03f, + -5.882887448911673298e-03f, + -5.681331796138239937e-03f, + -5.474258536861224822e-03f, + -5.261881601117059278e-03f, + -5.044420043014674268e-03f, + -4.822097815188827914e-03f, + -4.595143538549655710e-03f, + -4.363790267563028361e-03f, + -4.128275251306491068e-03f, + -3.888839690540101934e-03f, + -3.645728491045435640e-03f, + -3.399190013480753690e-03f, + -3.149475820010231263e-03f, + -2.896840417964342308e-03f, + -2.641541000791211135e-03f, + -2.383837186564273774e-03f, + -2.123990754310813977e-03f, + -1.862265378427587111e-03f, + -1.598926361455722204e-03f, + -1.334240365481033667e-03f, + -1.068475142436885140e-03f, + -8.018992635760308074e-04f, + -5.347818483891565765e-04f, + -2.673922932415280962e-04f, + -9.079959879021497232e-17f, + 2.671258950737993680e-04f, + 5.337167918945780664e-04f, + 7.995048963151187319e-04f, + 1.064223488808225876e-03f, + 1.327607191801307438e-03f, + 1.589392235393608270e-03f, + 1.849316721191365896e-03f, + 2.107120883999156515e-03f, + 2.362547351101621299e-03f, + 2.615341398882998439e-03f, + 2.865251206523531432e-03f, + 3.112028106524595324e-03f, + 3.355426831810707448e-03f, + 3.595205759164358736e-03f, + 3.831127148753331844e-03f, + 4.062957379511429948e-03f, + 4.290467180140932618e-03f, + 4.513431855509694376e-03f, + 4.731631508217054409e-03f, + 4.944851255114078407e-03f, + 5.152881438560737853e-03f, + 5.355517832217622683e-03f, + 5.552561841166678107e-03f, + 5.743820696166867384e-03f, + 5.929107641855835276e-03f, + 6.108242118712046975e-03f, + 6.281049938603144346e-03f, + 6.447363453748070593e-03f, + 6.607021718930415448e-03f, + 6.759870646807101223e-03f, + 6.905763156161545159e-03f, + 7.044559312960290212e-03f, + 7.176126464077911202e-03f, + 7.300339363562619553e-03f, + 7.417080291323936703e-03f, + 7.526239164128890706e-03f, + 7.627713638804527879e-03f, + 7.721409207549118775e-03f, + 7.807239285264657921e-03f, + 7.885125288831035251e-03f, + 7.954996708249086751e-03f, + 8.016791169590116797e-03f, + 8.070454489695856257e-03f, + 8.115940722582272102e-03f, + 8.153212197509116660e-03f, + 8.182239548684301991e-03f, + 8.203001736582492612e-03f, + 8.215486060864016227e-03f, + 8.219688164889776480e-03f, + 8.215612031835866150e-03f, + 8.203269972420074163e-03f, + 8.182682604260985149e-03f, + 8.153878822898639675e-03f, + 8.116895764514334491e-03f, + 8.071778760395010785e-03f, + 8.018581283196542925e-03f, + 7.957364885067841689e-03f, + 7.888199127706180952e-03f, + 7.811161504422274408e-03f, + 7.726337354300897436e-03f, + 7.633819768552089179e-03f, + 7.533709489153867997e-03f, + 7.426114799896956116e-03f, + 7.311151409948320190e-03f, + 7.188942330057568331e-03f, + 7.059617741539236935e-03f, + 6.923314858168461497e-03f, + 6.780177781137243509e-03f, + 6.630357347223709771e-03f, + 6.474010970332770391e-03f, + 6.311302476576784518e-03f, + 6.142401933065200215e-03f, + 5.967485470584375090e-03f, + 5.786735100350979578e-03f, + 5.600338525028452849e-03f, + 5.408488944204285429e-03f, + 5.211384854526987694e-03f, + 5.009229844711029882e-03f, + 4.802232385620449663e-03f, + 4.590605615646119360e-03f, + 4.374567121599736569e-03f, + 4.154338715345936607e-03f, + 3.930146206405986734e-03f, + 3.702219170760879478e-03f, + 3.470790716094145426e-03f, + 3.236097243712496643e-03f, + 2.998378207386371425e-03f, + 2.757875869357837798e-03f, + 2.514835053763304993e-03f, + 2.269502897720573724e-03f, + 2.022128600335697159e-03f, + 1.772963169880989280e-03f, + 1.522259169403208240e-03f, + 1.270270461017685608e-03f, + 1.017251949147536440e-03f, + 7.634593229678904650e-04f, + 5.091487983134088255e-04f, + 2.545768593114422170e-04f, + 5.893834195817279027e-17f, + -2.543255338102004309e-04f, + -5.081440021684953965e-04f, + -7.612004278544677463e-04f, + -1.013240852227075906e-03f, + -1.264012589796192692e-03f, + -1.513264481263194719e-03f, + -1.760747144774524840e-03f, + -2.006213225141300748e-03f, + -2.249417640770990170e-03f, + -2.490117828070589987e-03f, + -2.728073983073443527e-03f, + -2.963049300051106942e-03f, + -3.194810206873958253e-03f, + -3.423126596884991813e-03f, + -3.647772057057938316e-03f, + -3.868524092214752682e-03f, + -4.085164345078219975e-03f, + -4.297478811945374191e-03f, + -4.505258053766428641e-03f, + -4.708297402422947572e-03f, + -4.906397162001897849e-03f, + -5.099362804867554194e-03f, + -5.287005162340526442e-03f, + -5.469140609795000892e-03f, + -5.645591245996113387e-03f, + -5.816185066500464615e-03f, + -5.980756130952048950e-03f, + -6.139144724111944909e-03f, + -6.291197510464445995e-03f, + -6.436767682251153498e-03f, + -6.575715100791147336e-03f, + -6.707906430950256842e-03f, + -6.833215268632009988e-03f, + -6.951522261168058443e-03f, + -7.062715220494850468e-03f, + -7.166689229008634497e-03f, + -7.263346738000107591e-03f, + -7.352597658577248937e-03f, + -7.434359444991439289e-03f, + -7.508557170290937506e-03f, + -7.575123594233416392e-03f, + -7.633999223396016783e-03f, + -7.685132363431001340e-03f, + -7.728479163421451623e-03f, + -7.764003652300489888e-03f, + -7.791677767305085246e-03f, + -7.811481374443590177e-03f, + -7.823402280964399449e-03f, + -7.827436239820800487e-03f, + -7.823586946135632075e-03f, + -7.811866025676963803e-03f, + -7.792293015364394268e-03f, + -7.764895335833248320e-03f, + -7.729708256092200462e-03f, + -7.686774850317674296e-03f, + -7.636145946835978977e-03f, + -7.577880069352489409e-03f, + -7.512043370494353445e-03f, + -7.438709557741495296e-03f, + -7.357959811827293611e-03f, + -7.269882697699128586e-03f, + -7.174574068135403972e-03f, + -7.072136960122816021e-03f, + -6.962681484106240416e-03f, + -6.846324706228426420e-03f, + -6.723190523685911024e-03f, + -6.593409533333032847e-03f, + -6.457118893672204353e-03f, + -6.314462180376954545e-03f, + -6.165589235498591079e-03f, + -6.010656010514694655e-03f, + -5.849824403383760418e-03f, + -5.683262089774722935e-03f, + -5.511142348648704649e-03f, + -5.333643882371955774e-03f, + -5.150950631548067808e-03f, + -4.963251584760376527e-03f, + -4.770740583420043056e-03f, + -4.573616121923121738e-03f, + -4.372081143319735304e-03f, + -4.166342830707624179e-03f, + -3.956612394562757443e-03f, + -3.743104856225459159e-03f, + -3.526038827764110296e-03f, + -3.305636288440114059e-03f, + -3.082122358004176291e-03f, + -2.855725067054290869e-03f, + -2.626675124688376134e-03f, + -2.395205683690529615e-03f, + -2.161552103486554573e-03f, + -1.925951711112042913e-03f, + -1.688643560434465851e-03f, + -1.449868189872311657e-03f, + -1.209867378858563115e-03f, + -9.688839032931976462e-04f, + -7.271612902323416720e-04f, + -4.849435720621983882e-04f, + -2.424750404039046129e-04f, + -2.993458375907816894e-17f, + 2.422374771728505677e-04f, + 4.839937973155881718e-04f, + 7.250260894964933667e-04f, + 9.650924493755287268e-04f, + 1.203952181715645022e-03f, + 1.441366041441651457e-03f, + 1.677096473002762708e-03f, + 1.910907847800708860e-03f, + 2.142566699447316300e-03f, + 2.371841956615023273e-03f, + 2.598505173249376302e-03f, + 2.822330755915376365e-03f, + 3.043096188049002060e-03f, + 3.260582250895563590e-03f, + 3.474573240909645862e-03f, + 3.684857183408437892e-03f, + 3.891226042261025642e-03f, + 4.093475925410680442e-03f, + 4.291407286024813764e-03f, + 4.484825119075430515e-03f, + 4.673539153157502297e-03f, + 4.857364037355267616e-03f, + 5.036119522974105353e-03f, + 5.209630639960896592e-03f, + 5.377727867838498661e-03f, + 5.540247300990066084e-03f, + 5.697030808130492709e-03f, + 5.847926185810888196e-03f, + 5.992787305808217578e-03f, + 6.131474256255946623e-03f, + 6.263853476381850416e-03f, + 6.389797884721984053e-03f, + 6.509187000688825345e-03f, + 6.621907059378241700e-03f, + 6.727851119505293652e-03f, + 6.826919164367567169e-03f, + 6.919018195741605953e-03f, + 7.004062320623680518e-03f, + 7.081972830736373535e-03f, + 7.152678274725585150e-03f, + 7.216114522985169963e-03f, + 7.272224825048948307e-03f, + 7.320959859500953196e-03f, + 7.362277776360223042e-03f, + 7.396144231905143855e-03f, + 7.422532415909789162e-03f, + 7.441423071271871179e-03f, + 7.452804506020377015e-03f, + 7.456672597697913858e-03f, + 7.453030790120977571e-03f, + 7.441890082528809791e-03f, + 7.423269011139091954e-03f, + 7.397193623136587293e-03f, + 7.363697443128093892e-03f, + 7.322821432105069799e-03f, + 7.274613938962194541e-03f, + 7.219130644628227352e-03f, + 7.156434498872478629e-03f, + 7.086595649857397282e-03f, + 7.009691366515777115e-03f, + 6.925805953836947082e-03f, + 6.835030661154887534e-03f, + 6.737463583536625229e-03f, + 6.633209556377676723e-03f, + 6.522380043316587661e-03f, + 6.405093017587785986e-03f, + 6.281472836939533053e-03f, + 6.151650112247645033e-03f, + 6.015761569964638532e-03f, + 5.873949908548246022e-03f, + 5.726363649019010349e-03f, + 5.573156979804561387e-03f, + 5.414489596030440909e-03f, + 5.250526533426200064e-03f, + 5.081437997018541791e-03f, + 4.907399184788277351e-03f, + 4.728590106474792054e-03f, + 4.545195397714440512e-03f, + 4.357404129703668430e-03f, + 4.165409614584718312e-03f, + 3.969409206751546570e-03f, + 3.769604100281869798e-03f, + 3.566199122702250202e-03f, + 3.359402525296319511e-03f, + 3.149425770172853845e-03f, + 2.936483314308355533e-03f, + 2.720792390786955402e-03f, + 2.502572787458282825e-03f, + 2.282046623241240982e-03f, + 2.059438122297536054e-03f, + 1.834973386307630792e-03f, + 1.608880165078690333e-03f, + 1.381387625716168745e-03f, + 1.152726120594538663e-03f, + 9.231269543609431621e-04f, + 6.928221502061572470e-04f, + 4.620442156413446209e-04f, + 2.310259080137343159e-04f, + 0.000000000000000000e+00f, + -2.308009546876257196e-04f, + -4.611448551480424674e-04f, + -6.908002864531671621e-04f, + -9.195367518942560445e-04f, + -1.147124904077175120e-03f, + -1.373336774636224914e-03f, + -1.597946002337608667e-03f, + -1.820728059342699347e-03f, + -2.041460475406135615e-03f, + -2.259923059786094965e-03f, + -2.475898120643176686e-03f, + -2.689170681712491420e-03f, + -2.899528696030911467e-03f, + -3.106763256509465377e-03f, + -3.310668803139505106e-03f, + -3.511043326630707874e-03f, + -3.707688568276315544e-03f, + -3.900410215849520103e-03f, + -4.089018095338427944e-03f, + -4.273326358329034881e-03f, + -4.453153664852741063e-03f, + -4.628323361519555770e-03f, + -4.798663654760284072e-03f, + -4.964007779010489244e-03f, + -5.124194159669920833e-03f, + -5.279066570679284004e-03f, + -5.428474286561691883e-03f, + -5.572272228779376162e-03f, + -5.710321106265994241e-03f, + -5.842487549997011850e-03f, + -5.968644241469281582e-03f, + -6.088670034966893116e-03f, + -6.202450073495178670e-03f, + -6.309875898273007572e-03f, + -6.410845551679807824e-03f, + -6.505263673558881257e-03f, + -6.593041590787944613e-03f, + -6.674097400032071199e-03f, + -6.748356043603334110e-03f, + -6.815749378356467103e-03f, + -6.876216237559267495e-03f, + -6.929702485681070272e-03f, + -6.976161066051603243e-03f, + -7.015552041349363589e-03f, + -7.047842626885069371e-03f, + -7.073007216654443596e-03f, + -7.091027402140489926e-03f, + -7.101891983853740598e-03f, + -7.105596975605809294e-03f, + -7.102145601518914352e-03f, + -7.091548285781580294e-03f, + -7.073822635167690588e-03f, + -7.048993414343677349e-03f, + -7.017092513995498021e-03f, + -6.978158911814610725e-03f, + -6.932238626389115345e-03f, + -6.879384664053103844e-03f, + -6.819656958754997597e-03f, + -6.753122305011623888e-03f, + -6.679854284022603873e-03f, + -6.599933183026034100e-03f, + -6.513445907982721647e-03f, + -6.420485889683830161e-03f, + -6.321152983382738975e-03f, + -6.215553362058191117e-03f, + -6.103799403422135138e-03f, + -5.986009570792679216e-03f, + -5.862308287957658688e-03f, + -5.732825808160025433e-03f, + -5.597698077343937588e-03f, + -5.457066591803097846e-03f, + -5.311078250381432928e-03f, + -5.159885201379617314e-03f, + -5.003644684325990639e-03f, + -4.842518866777322309e-03f, + -4.676674676317842463e-03f, + -4.506283627929590085e-03f, + -4.331521646914106120e-03f, + -4.152568887545756218e-03f, + -3.969609547645198966e-03f, + -3.782831679262896318e-03f, + -3.592426995666025014e-03f, + -3.398590674828782209e-03f, + -3.201521159624679935e-03f, + -3.001419954927217991e-03f, + -2.798491421825367344e-03f, + -2.592942569162944196e-03f, + -2.384982842615481630e-03f, + -2.174823911519171114e-03f, + -1.962679453667881199e-03f, + -1.748764938296653790e-03f, + -1.533297407473102874e-03f, + -1.316495256117520629e-03f, + -1.098578010873439530e-03f, + -8.797661080547270916e-04f, + -6.602806708906880156e-04f, + -4.403432862964624440e-04f, + -2.201757813928862664e-04f, + 2.040351603294562245e-17f, + 2.199624206685035094e-04f, + 4.394902728878673139e-04f, + 6.583630006562409291e-04f, + 8.763609210572648189e-04f, + 1.093265444530637075e-03f, + 1.308859293828115375e-03f, + 1.522926721436776171e-03f, + 1.735253725253141800e-03f, + 1.945628262290407520e-03f, + 2.153840460208438813e-03f, + 2.359682826453400172e-03f, + 2.562950454799774267e-03f, + 2.763441229090153693e-03f, + 2.960956023969243955e-03f, + 3.155298902413077380e-03f, + 3.346277309858471712e-03f, + 3.533702264740658325e-03f, + 3.717388545249705484e-03f, + 3.897154872122122679e-03f, + 4.072824087288320731e-03f, + 4.244223328198080784e-03f, + 4.411184197655197183e-03f, + 4.573542928992711636e-03f, + 4.731140546427802310e-03f, + 4.883823020440311580e-03f, + 5.031441418021543807e-03f, + 5.173852047649186298e-03f, + 5.310916598845810341e-03f, + 5.442502276186440141e-03f, + 5.568481927626215550e-03f, + 5.688734167023349123e-03f, + 5.803143490740288873e-03f, + 5.911600388211953397e-03f, + 6.014001446374228968e-03f, + 6.110249447855176444e-03f, + 6.200253462834825341e-03f, + 6.283928934487773878e-03f, + 6.361197757929115161e-03f, + 6.431988352589909121e-03f, + 6.496235727955871307e-03f, + 6.553881542609762793e-03f, + 6.604874156524493181e-03f, + 6.649168676560485158e-03f, + 6.686726995128343919e-03f, + 6.717517821984657529e-03f, + 6.741516709135119897e-03f, + 6.758706068827057510e-03f, + 6.769075184619558622e-03f, + 6.772620215526905380e-03f, + 6.769344193237896226e-03f, + 6.759257012420358431e-03f, + 6.742375414127462462e-03f, + 6.718722962329050537e-03f, + 6.688330013598418541e-03f, + 6.651233679991463629e-03f, + 6.607477785162285504e-03f, + 6.557112813765961223e-03f, + 6.500195854205608435e-03f, + 6.436790534788347680e-03f, + 6.366966953360074857e-03f, + 6.290801600496780284e-03f, + 6.208377276335759996e-03f, + 6.119783001136048020e-03f, + 6.025113919665214118e-03f, + 5.924471199513612826e-03f, + 5.817961923445152776e-03f, + 5.705698975897815182e-03f, + 5.587800923754974829e-03f, + 5.464391891511682919e-03f, + 5.335601430968130686e-03f, + 5.201564385586319485e-03f, + 5.062420749651009438e-03f, + 4.918315522382780622e-03f, + 4.769398557154420036e-03f, + 4.615824405966431621e-03f, + 4.457752159344428866e-03f, + 4.295345281821967565e-03f, + 4.128771443180331673e-03f, + 3.958202345618636216e-03f, + 3.783813547031247577e-03f, + 3.605784280576109987e-03f, + 3.424297270716869252e-03f, + 3.239538545929211699e-03f, + 3.051697248262471695e-03f, + 2.860965439950404268e-03f, + 2.667537907270099533e-03f, + 2.471611961848510855e-03f, + 2.273387239617670301e-03f, + 2.073065497626217380e-03f, + 1.870850408910636978e-03f, + 1.666947355636944159e-03f, + 1.461563220720618573e-03f, + 1.254906178138427263e-03f, + 1.047185482141736864e-03f, + 8.386112555867926812e-04f, + 6.293942775949764364e-04f, + 4.197457707565461658e-04f, + 2.098771880941680316e-04f, + 5.182902902306673378e-17f, + -2.096745186397723764e-04f, + -4.189355009176130525e-04f, + -6.275726997620592390e-04f, + -8.353766989667140222e-04f, + -1.042139123179063390e-03f, + -1.247652846640042714e-03f, + -1.451712200463105501e-03f, + -1.654113178248326063e-03f, + -1.854653639823899535e-03f, + -2.053133512912701415e-03f, + -2.249354992523720179e-03f, + -2.443122737868256775e-03f, + -2.634244066605816777e-03f, + -2.822529146228016077e-03f, + -3.007791182387730897e-03f, + -3.189846603989948855e-03f, + -3.368515244858865266e-03f, + -3.543620521803565997e-03f, + -3.714989608904360665e-03f, + -3.882453607850389066e-03f, + -4.045847714158852700e-03f, + -4.205011379113398479e-03f, + -4.359788467263430063e-03f, + -4.510027409328340973e-03f, + -4.655581350359307320e-03f, + -4.796308293012311458e-03f, + -4.932071235793691541e-03f, + -5.062738306144363987e-03f, + -5.188182888232652744e-03f, + -5.308283745332808071e-03f, + -5.422925136671735008e-03f, + -5.531996928630324509e-03f, + -5.635394700194489362e-03f, + -5.733019842553966489e-03f, + -5.824779652754896557e-03f, + -5.910587421317968493e-03f, + -5.990362513738736391e-03f, + -6.064030445795148827e-03f, + -6.131522952591644815e-03f, + -6.192778051276466925e-03f, + -6.247740097375581447e-03f, + -6.296359834692139695e-03f, + -6.338594438727926730e-03f, + -6.374407553588771515e-03f, + -6.403769322343668378e-03f, + -6.426656410812841419e-03f, + -6.443052024767408938e-03f, + -6.452945920529682723e-03f, + -6.456334408969627466e-03f, + -6.453220352899971361e-03f, + -6.443613157878890461e-03f, + -6.427528756435856722e-03f, + -6.404989585742853347e-03f, + -6.376024558759821499e-03f, + -6.340669028889607886e-03f, + -6.298964748184136819e-03f, + -6.250959819150409338e-03f, + -6.196708640210494418e-03f, + -6.136271844877025546e-03f, + -6.069716234711278365e-03f, + -5.997114706136989597e-03f, + -5.918546171190292200e-03f, + -5.834095472290020540e-03f, + -5.743853291122007730e-03f, + -5.647916051732237638e-03f, + -5.546385817934258548e-03f, + -5.439370185137868373e-03f, + -5.326982166714451343e-03f, + -5.209340075018284791e-03f, + -5.086567397188134117e-03f, + -4.958792665860112768e-03f, + -4.826149324926455597e-03f, + -4.688775590479438843e-03f, + -4.546814307086526931e-03f, + -4.400412799544136007e-03f, + -4.249722720265064653e-03f, + -4.094899892456855747e-03f, + -3.936104149252287777e-03f, + -3.773499168959473186e-03f, + -3.607252306599120252e-03f, + -3.437534421903807366e-03f, + -3.264519703955130747e-03f, + -3.088385492637782913e-03f, + -2.909312097094693232e-03f, + -2.727482611368168587e-03f, + -2.543082727414555134e-03f, + -2.356300545685272984e-03f, + -2.167326383463741464e-03f, + -1.976352581158412423e-03f, + -1.783573306742843468e-03f, + -1.589184358546649181e-03f, + -1.393382966593760411e-03f, + -1.196367592691694598e-03f, + -9.983377294733853085e-04f, + -7.994936985940647280e-04f, + -6.000364482887320626e-04f, + -4.001673504937983648e-04f, + -2.000879977366511349e-04f, + -2.778966336884198701e-17f, + 1.998952182369787911e-04f, + 3.993966205749271080e-04f, + 5.983037606844037121e-04f, + 7.964169835089038611e-04f, + 9.935376254762236150e-04f, + 1.189468213520454305e-03f, + 1.384012662713176006e-03f, + 1.576976472307146200e-03f, + 1.768166919997466715e-03f, + 1.957393254204812128e-03f, + 2.144466884189903406e-03f, + 2.329201567810756240e-03f, + 2.511413596733711156e-03f, + 2.690921978917853227e-03f, + 2.867548618186650019e-03f, + 3.041118490714745520e-03f, + 3.211459818250186199e-03f, + 3.378404237904315821e-03f, + 3.541786968339587227e-03f, + 3.701446972192292979e-03f, + 3.857227114570970297e-03f, + 4.008974317473392411e-03f, + 4.156539709971333353e-03f, + 4.299778774016645676e-03f, + 4.438551485724410994e-03f, + 4.572722451997321066e-03f, + 4.702161042356552134e-03f, + 4.826741515851794284e-03f, + 4.946343142927884552e-03f, + 5.060850322128870871e-03f, + 5.170152691528663233e-03f, + 5.274145234779758183e-03f, + 5.372728381679093071e-03f, + 5.465808103155446809e-03f, + 5.553296000587267314e-03f, + 5.635109389366979755e-03f, + 5.711171376633489283e-03f, + 5.781410933099281717e-03f, + 5.845762958906964256e-03f, + 5.904168343452670387e-03f, + 5.956574019124233517e-03f, + 6.002933008903923832e-03f, + 6.043204467795012733e-03f, + 6.077353718035662794e-03f, + 6.105352278070978224e-03f, + 6.127177885260168266e-03f, + 6.142814512301600360e-03f, + 6.152252377365692929e-03f, + 6.155487947931146189e-03f, + 6.152523938326903176e-03f, + 6.143369300988309016e-03f, + 6.128039211442289080e-03f, + 6.106555047042762537e-03f, + 6.078944359483547284e-03f, + 6.045240841122706543e-03f, + 6.005484285157759554e-03f, + 5.959720539698134222e-03f, + 5.908001455786886062e-03f, + 5.850384829429483569e-03f, + 5.786934337694401610e-03f, + 5.717719468954846757e-03f, + 5.642815447348050774e-03f, + 5.562303151533275723e-03f, + 5.476269027836244349e-03f, + 5.384804997872509429e-03f, + 5.288008360747798245e-03f, + 5.185981689939928203e-03f, + 5.078832724969969611e-03f, + 4.966674257977718963e-03f, + 4.849624015320279195e-03f, + 4.727804534317043249e-03f, + 4.601343035271158316e-03f, + 4.470371288899312352e-03f, + 4.335025479308940791e-03f, + 4.195446062664641082e-03f, + 4.051777621689569946e-03f, + 3.904168716153416478e-03f, + 3.752771729500774690e-03f, + 3.597742711777335116e-03f, + 3.439241219017221893e-03f, + 3.277430149254536695e-03f, + 3.112475575329156242e-03f, + 2.944546574657440699e-03f, + 2.773815056141443278e-03f, + 2.600455584395403811e-03f, + 2.424645201466829776e-03f, + 2.246563246236072363e-03f, + 2.066391171676635035e-03f, + 1.884312360164382659e-03f, + 1.700511937020543225e-03f, + 1.515176582480621701e-03f, + 1.328494342278832389e-03f, + 1.140654437039362876e-03f, + 9.518470706689883707e-04f, + 7.622632379441338004e-04f, + 5.720945314859912732e-04f, + 3.815329483207086005e-04f, + 1.907706962172203138e-04f, + 0.000000000000000000e+00f, + -1.905870919690720166e-04f, + -3.807989009460705778e-04f, + -5.704443104011880719e-04f, + -7.593329578651235225e-04f, + -9.472754258310465579e-04f, + -1.134083431521770496e-03f, + -1.319570015332951216e-03f, + -1.503549727762363468e-03f, + -1.685838814639319377e-03f, + -1.866255400470208034e-03f, + -2.044619669715354044e-03f, + -2.220754045819160229e-03f, + -2.394483367813274831e-03f, + -2.565635064319175124e-03f, + -2.734039324775422008e-03f, + -2.899529267722648820e-03f, + -3.061941105977069883e-03f, + -3.221114308530460043e-03f, + -3.376891759017279938e-03f, + -3.529119910591425012e-03f, + -3.677648937060845960e-03f, + -3.822332880132129837e-03f, + -3.963029792618880109e-03f, + -4.099601877475613464e-03f, + -4.231915622519577709e-03f, + -4.359841930709697395e-03f, + -4.483256245856345398e-03f, + -4.602038673638307598e-03f, + -4.716074097811356024e-03f, + -4.825252291494681184e-03f, + -4.929468023428436492e-03f, + -5.028621159100716588e-03f, + -5.122616756646161500e-03f, + -5.211365157425208207e-03f, + -5.294782071198274320e-03f, + -5.372788655813301971e-03f, + -5.445311591332913613e-03f, + -5.512283148530877468e-03f, + -5.573641251695150671e-03f, + -5.629329535678900300e-03f, + -5.679297397148663600e-03f, + -5.723500039982650292e-03f, + -5.761898514779588421e-03f, + -5.794459752444061987e-03f, + -5.821156591819873563e-03f, + -5.841967801349767786e-03f, + -5.856878094745045400e-03f, + -5.865878140655318707e-03f, + -5.868964566334378651e-03f, + -5.866139955304165016e-03f, + -5.857412839025080524e-03f, + -5.842797682586693166e-03f, + -5.822314864439076185e-03f, + -5.795990650190794430e-03f, + -5.763857160505719661e-03f, + -5.725952333136686070e-03f, + -5.682319879139611715e-03f, + -5.633009233318153446e-03f, + -5.578075498953882598e-03f, + -5.517579386883428826e-03f, + -5.451587148989341623e-03f, + -5.380170506176684860e-03f, + -5.303406570913458962e-03f, + -5.221377764418140034e-03f, + -5.134171728582574354e-03f, + -5.041881232723846064e-03f, + -4.944604075264455272e-03f, + -4.842442980444399032e-03f, + -4.735505490173459210e-03f, + -4.623903851138305189e-03f, + -4.507754897281265882e-03f, + -4.387179927774727435e-03f, + -4.262304580617813123e-03f, + -4.133258701986374309e-03f, + -4.000176211472765767e-03f, + -3.863194963354634262e-03f, + -3.722456604035540191e-03f, + -3.578106425806113627e-03f, + -3.430293217074662122e-03f, + -3.279169109222944672e-03f, + -3.124889420243918709e-03f, + -2.967612495321265455e-03f, + -2.807499544515807202e-03f, + -2.644714477722959114e-03f, + -2.479423737071674658e-03f, + -2.311796126935456146e-03f, + -2.142002641728153745e-03f, + -1.970216291661061950e-03f, + -1.796611926638601179e-03f, + -1.621366058471044799e-03f, + -1.444656681584796090e-03f, + -1.266663092413158409e-03f, + -1.087565707650077398e-03f, + -9.075458815500990310e-04f, + -7.267857224613794324e-04f, + -5.454679087747773278e-04f, + -3.637755044768799673e-04f, + -1.818917744922234167e-04f, + -6.738072953108251659e-17f, + 1.817167060868667974e-04f, + 3.630755832968266678e-04f, + 5.438944072423667351e-04f, + 7.239916725462016735e-04f, + 9.031867748685456793e-04f, + 1.081300191851528036e-03f, + 1.258153662800393048e-03f, + 1.433570366922595502e-03f, + 1.607375099944760447e-03f, + 1.779394448933648617e-03f, + 1.949456965144877449e-03f, + 2.117393334728095468e-03f, + 2.283036547119419220e-03f, + 2.446222060952827054e-03f, + 2.606787967325983370e-03f, + 2.764575150259260348e-03f, + 2.919427444189183745e-03f, + 3.071191788339645758e-03f, + 3.219718377819110952e-03f, + 3.364860811295488155e-03f, + 3.506476235101599771e-03f, + 3.644425483631654871e-03f, + 3.778573215889237825e-03f, + 3.908788048053789092e-03f, + 4.034942681936477468e-03f, + 4.156914029198645506e-03f, + 4.274583331213595815e-03f, + 4.387836274453780008e-03f, + 4.496563101292173729e-03f, + 4.600658716111065936e-03f, + 4.700022786615127950e-03f, + 4.794559840251754780e-03f, + 4.884179355646818196e-03f, + 4.968795848967465581e-03f, + 5.048328955131142076e-03f, + 5.122703503783020661e-03f, + 5.191849589970850935e-03f, + 5.255702639451336616e-03f, + 5.314203468567116513e-03f, + 5.367298338639234223e-03f, + 5.414939004826021217e-03f, + 5.457082759404304449e-03f, + 5.493692469434578556e-03f, + 5.524736608777790041e-03f, + 5.550189284437050813e-03f, + 5.570030257202884111e-03f, + 5.584244956587067731e-03f, + 5.592824490035200498e-03f, + 5.595765646414466166e-03f, + 5.593070893778484716e-03f, + 5.584748371416978392e-03f, + 5.570811876203813663e-03f, + 5.551280843262597353e-03f, + 5.526180320974835580e-03f, + 5.495540940361090358e-03f, + 5.459398878871563054e-03f, + 5.417795818627875980e-03f, + 5.370778899163226178e-03f, + 5.318400664714218601e-03f, + 5.260719006122124147e-03f, + 5.197797097407722174e-03f, + 5.129703327088560444e-03f, + 5.056511224312396427e-03f, + 4.978299379887104678e-03f, + 4.895151362290443668e-03f, + 4.807155628749874669e-03f, + 4.714405431485941232e-03f, + 4.616998719219183103e-03f, + 4.515038034043206486e-03f, + 4.408630403773131437e-03f, + 4.297887229881802197e-03f, + 4.182924171140340805e-03f, + 4.063861023085189352e-03f, + 3.940821593436607748e-03f, + 3.813933573597338717e-03f, + 3.683328406365983000e-03f, + 3.549141150000212786e-03f, + 3.411510338771623577e-03f, + 3.270577840155389476e-03f, + 3.126488708801145999e-03f, + 2.979391037436725231e-03f, + 2.829435804855929236e-03f, + 2.676776721147767438e-03f, + 2.521570070325003087e-03f, + 2.363974550512310240e-03f, + 2.204151111858506946e-03f, + 2.042262792337711051e-03f, + 1.878474551605653284e-03f, + 1.712953103082745163e-03f, + 1.545866744432049548e-03f, + 1.377385186606322909e-03f, + 1.207679381635921347e-03f, + 1.036921349334177364e-03f, + 8.652840030934819777e-04f, + 6.929409749502218625e-04f, + 5.200664400946462904e-04f, + 3.468349410021595147e-04f, + 1.734212113648546741e-04f, + 4.550251594910668594e-17f, + -1.732541050876819561e-04f, + -3.461668523119788257e-04f, + -5.185645016036600878e-04f, + -6.902739988253162214e-04f, + -8.611231493274518678e-04f, + -1.030940790473021396e-03f, + -1.199556962955737344e-03f, + -1.366803080743145661e-03f, + -1.532512099472770496e-03f, + -1.696518683134078977e-03f, + -1.858659368870755474e-03f, + -2.018772729737835104e-03f, + -2.176699535252429873e-03f, + -2.332282909579588056e-03f, + -2.485368487193882845e-03f, + -2.635804565865009202e-03f, + -2.783442256814043243e-03f, + -2.928135631893509418e-03f, + -3.069741867644090218e-03f, + -3.208121386087987512e-03f, + -3.343137992118676207e-03f, + -3.474659007352662483e-03f, + -3.602555400312496166e-03f, + -3.726701912812024550e-03f, + -3.846977182422010779e-03f, + -3.963263860895238633e-03f, + -4.075448728436278055e-03f, + -4.183422803705368759e-03f, + -4.287081449448809645e-03f, + -4.386324473654241302e-03f, + -4.481056226133709602e-03f, + -4.571185690440540857e-03f, + -4.656626571033325307e-03f, + -4.737297375602708346e-03f, + -4.813121492483313744e-03f, + -4.884027263077780033e-03f, + -4.949948049224051072e-03f, + -5.010822295443905297e-03f, + -5.066593586014279949e-03f, + -5.117210696809050205e-03f, + -5.162627641864468188e-03f, + -5.202803714625973616e-03f, + -5.237703523840436977e-03f, + -5.267297024062328296e-03f, + -5.291559540748885272e-03f, + -5.310471789923680921e-03f, + -5.324019892394351271e-03f, + -5.332195382515387931e-03f, + -5.334995211492236412e-03f, + -5.332421745228884194e-03f, + -5.324482756726165410e-03f, + -5.311191413043757879e-03f, + -5.292566256844271830e-03f, + -5.268631182543137906e-03f, + -5.239415407093645990e-03f, + -5.204953435441478891e-03f, + -5.165285020688987344e-03f, + -5.120455119014034190e-03f, + -5.070513839394155328e-03f, + -5.015516388191593698e-03f, + -4.955523008659636248e-03f, + -4.890598915436772734e-03f, + -4.820814224098224007e-03f, + -4.746243875842361994e-03f, + -4.666967557390416105e-03f, + -4.583069616186550947e-03f, + -4.494638970986890303e-03f, + -4.401769017932832123e-03f, + -4.304557532207274433e-03f, + -4.203106565376605631e-03f, + -4.097522338526705075e-03f, + -3.987915131304275475e-03f, + -3.874399166978647214e-03f, + -3.757092493644813031e-03f, + -3.636116861689554780e-03f, + -3.511597597648849663e-03f, + -3.383663474586599915e-03f, + -3.252446579127917913e-03f, + -3.118082175285466148e-03f, + -2.980708565217376257e-03f, + -2.840466947061273412e-03f, + -2.697501269989864385e-03f, + -2.551958086636046431e-03f, + -2.403986403039817116e-03f, + -2.253737526269895732e-03f, + -2.101364909875016573e-03f, + -1.947023997324411840e-03f, + -1.790872063594110223e-03f, + -1.633068055064607060e-03f, + -1.473772427887728434e-03f, + -1.313146984991218642e-03f, + -1.151354711883460216e-03f, + -9.885596114266794344e-04f, + -8.249265377453095672e-04f, + -6.606210294368872974e-04f, + -4.958091422553860149e-04f, + -3.306572814353150912e-04f, + -1.653320338249910076e-04f, + -2.551386587880797004e-17f, + 1.651723734761380335e-04f, + 3.300189614740527827e-04f, + 4.943741272349469777e-04f, + 6.580728886553833265e-04f, + 8.209510837512715370e-04f, + 9.828455351376394825e-04f, + 1.143594213357676742e-03f, + 1.303036398898462693e-03f, + 1.461012842732159695e-03f, + 1.617365925221177182e-03f, + 1.771939813229538550e-03f, + 1.924580615284706168e-03f, + 2.075136534633631631e-03f, + 2.223458020043932865e-03f, + 2.369397914196333301e-03f, + 2.512811599526118631e-03f, + 2.653557141365132238e-03f, + 2.791495428245575894e-03f, + 2.926490309225380886e-03f, + 3.058408728100418372e-03f, + 3.187120854371934629e-03f, + 3.312500210839413109e-03f, + 3.434423797694213451e-03f, + 3.552772212992939740e-03f, + 3.667429769391414990e-03f, + 3.778284607026904680e-03f, + 3.885228802437357565e-03f, + 3.988158473412363458e-03f, + 4.086973879674651519e-03f, + 4.181579519293593741e-03f, + 4.271884220739164024e-03f, + 4.357801230486726615e-03f, + 4.439248296089245809e-03f, + 4.516147744637950996e-03f, + 4.588426556536215166e-03f, + 4.656016434517300413e-03f, + 4.718853867841324261e-03f, + 4.776880191610652533e-03f, + 4.830041641149988331e-03f, + 4.878289401399377341e-03f, + 4.921579651277259264e-03f, + 4.959873602972050821e-03f, + 4.993137536128673497e-03f, + 5.021342826899958915e-03f, + 5.044465971838839151e-03f, + 5.062488606612373584e-03f, + 5.075397519523472574e-03f, + 5.083184659832008616e-03f, + 5.085847140871759681e-03f, + 5.083387237965185726e-03f, + 5.075812381143095242e-03f, + 5.063135142681596430e-03f, + 5.045373219473861526e-03f, + 5.022549410259432613e-03f, + 4.994691587739028341e-03f, + 4.961832665607723673e-03f, + 4.924010560544767219e-03f, + 4.881268149203150074e-03f, + 4.833653220246830577e-03f, + 4.781218421489157218e-03f, + 4.724021202189871739e-03f, + 4.662123750573998575e-03f, + 4.595592926639679825e-03f, + 4.524500190327651952e-03f, + 4.448921525128770975e-03f, + 4.368937357210857936e-03f, + 4.284632470151218328e-03f, + 4.196095915364042757e-03f, + 4.103420918317851433e-03f, + 4.006704780641143562e-03f, + 3.906048778218370893e-03f, + 3.801558055383750991e-03f, + 3.693341515321936323e-03f, + 3.581511706790642402e-03f, + 3.466184707282398206e-03f, + 3.347480002746349489e-03f, + 3.225520363994377124e-03f, + 3.100431719920501098e-03f, + 2.972343027662367743e-03f, + 2.841386139839377056e-03f, + 2.707695669005051858e-03f, + 2.571408849450755249e-03f, + 2.432665396503416125e-03f, + 2.291607363462537170e-03f, + 2.148378996320580991e-03f, + 2.003126586416237656e-03f, + 1.855998321172221827e-03f, + 1.707144133066539190e-03f, + 1.556715546994994403e-03f, + 1.404865526175997237e-03f, + 1.251748316758327694e-03f, + 1.097519291286103453e-03f, + 9.423347911819565052e-04f, + 7.863519684062989651e-04f, + 6.297286264551491203e-04f, + 4.726230608546003620e-04f, + 3.151938993142525320e-04f, + 1.575999417021628837e-04f, + 7.784442283331923853e-17f, + -1.574472615986340432e-04f, + -3.145834862862096032e-04f, + -4.712507837750268031e-04f, + -6.272918888083930770e-04f, + -7.825503188873347447e-04f, + -9.368705310580024981e-04f, + -1.090098077600495973e-03f, + -1.242079760465078378e-03f, + -1.392663784299297746e-03f, + -1.541699907915918119e-03f, + -1.689039594049394563e-03f, + -1.834536157250591781e-03f, + -1.978044909775040876e-03f, + -2.119423305318431615e-03f, + -2.258531080456323715e-03f, + -2.395230393648445800e-03f, + -2.529385961670430668e-03f, + -2.660865193337756500e-03f, + -2.789538320388635587e-03f, + -2.915278525399034055e-03f, + -3.037962066602765791e-03f, + -3.157468399492973938e-03f, + -3.273680295087870538e-03f, + -3.386483954743054609e-03f, + -3.495769121399434042e-03f, + -3.601429187156589447e-03f, + -3.703361297068739032e-03f, + -3.801466449061457163e-03f, + -3.895649589871598342e-03f, + -3.985819706919274674e-03f, + -4.071889916022448409e-03f, + -4.153777544869190555e-03f, + -4.231404212169127994e-03f, + -4.304695902407762974e-03f, + -4.373583036132095911e-03f, + -4.438000535702448651e-03f, + -4.497887886447530723e-03f, + -4.553189193166368338e-03f, + -4.603853231924096880e-03f, + -4.649833497094323954e-03f, + -4.691088243605770480e-03f, + -4.727580524354188865e-03f, + -4.759278222747725245e-03f, + -4.786154080356886005e-03f, + -4.808185719646517267e-03f, + -4.825355661771149086e-03f, + -4.837651339421160553e-03f, + -4.845065104711230967e-03f, + -4.847594232107986685e-03f, + -4.845240916398877579e-03f, + -4.838012265708960952e-03f, + -4.825920289577491362e-03f, + -4.808981882111157055e-03f, + -4.787218800235539494e-03f, + -4.760657637071705889e-03f, + -4.729329790469200510e-03f, + -4.693271426731996689e-03f, + -4.652523439578401879e-03f, + -4.607131404381258066e-03f, + -4.557145527738585764e-03f, + -4.502620592430119431e-03f, + -4.443615897820203317e-03f, + -4.380195195770275780e-03f, + -4.312426622131352791e-03f, + -4.240382623888087031e-03f, + -4.164139882033739311e-03f, + -4.083779230256361775e-03f, + -3.999385569522737396e-03f, + -3.911047778650672546e-03f, + -3.818858620962382270e-03f, + -3.722914647117278510e-03f, + -3.623316094226521674e-03f, + -3.520166781352995246e-03f, + -3.413574001506695325e-03f, + -3.303648410246657133e-03f, + -3.190503911006380925e-03f, + -3.074257537259608274e-03f, + -2.955029331648956637e-03f, + -2.832942222203055620e-03f, + -2.708121895767779796e-03f, + -2.580696668782614736e-03f, + -2.450797355535883071e-03f, + -2.318557134031954108e-03f, + -2.184111409608732648e-03f, + -2.047597676446088772e-03f, + -1.909155377104432803e-03f, + -1.768925760238825853e-03f, + -1.627051736631422978e-03f, + -1.483677733692766133e-03f, + -1.338949548574867041e-03f, + -1.193014200049233526e-03f, + -1.046019779297893606e-03f, + -8.981152997709223890e-04f, + -7.494505462600843963e-04f, + -6.001759233424719181e-04f, + -4.504423033485727233e-04f, + -3.004008740059210055e-04f, + -1.502029859132318287e-04f, + 0.000000000000000000e+00f, + 1.500568648773128620e-04f, + 2.998166840477804458e-04f, + 4.491289786934320964e-04f, + 5.978438669215414185e-04f, + 7.458122140882831198e-04f, + 8.928857822246706166e-04f, + 1.038917378413064868e-03f, + 1.183761001968396554e-03f, + 1.327271990275858586e-03f, + 1.469307163138363920e-03f, + 1.609724965492229879e-03f, + 1.748385608347759190e-03f, + 1.885151207813307852e-03f, + 2.019885922067833454e-03f, + 2.152456086142171161e-03f, + 2.282730344379329916e-03f, + 2.410579780439001552e-03f, + 2.535878044720715069e-03f, + 2.658501479078634582e-03f, + 2.778329238704075124e-03f, + 2.895243411057801981e-03f, + 3.009129131734148907e-03f, + 3.119874697142386698e-03f, + 3.227371673896960082e-03f, + 3.331515004807996620e-03f, + 3.432203111369802693e-03f, + 3.529337992646119828e-03f, + 3.622825320457822695e-03f, + 3.712574530779899368e-03f, + 3.798498911258710829e-03f, + 3.880515684766671931e-03f, + 3.958546088913222558e-03f, + 4.032515451435444119e-03f, + 4.102353261397662619e-03f, + 4.167993236131739207e-03f, + 4.229373383854271966e-03f, + 4.286436061903056705e-03f, + 4.339128030537392315e-03f, + 4.387400502253299348e-03f, + 4.431209186566910548e-03f, + 4.470514330227219786e-03f, + 4.505280752820716751e-03f, + 4.535477877737257441e-03f, + 4.561079758469966522e-03f, + 4.582065100227887371e-03f, + 4.598417276843720300e-03f, + 4.610124342964186731e-03f, + 4.617179041515659735e-03f, + 4.619578806441900290e-03f, + 4.617325760715732842e-03f, + 4.610426709631436880e-03f, + 4.598893129389029603e-03f, + 4.582741150986642878e-03f, + 4.561991539441702728e-03f, + 4.536669668366456049e-03f, + 4.506805489927790190e-03f, + 4.472433500226501331e-03f, + 4.433592700134834745e-03f, + 4.390326551636334652e-03f, + 4.342682929716723365e-03f, + 4.290714069857965926e-03f, + 4.234476511192970805e-03f, + 4.174031035382547508e-03f, + 4.109442601280248290e-03f, + 4.040780275454714486e-03f, + 3.968117158643618379e-03f, + 3.891530308217908476e-03f, + 3.811100656737222755e-03f, + 3.726912926682747658e-03f, + 3.639055541457847723e-03f, + 3.547620532748325950e-03f, + 3.452703444340344142e-03f, + 3.354403232495308754e-03f, + 3.252822162986789261e-03f, + 3.148065704904799266e-03f, + 3.040242421338187288e-03f, + 2.929463857049219994e-03f, + 2.815844423254667064e-03f, + 2.699501279633036762e-03f, + 2.580554213680439322e-03f, + 2.459125517537331940e-03f, + 2.335339862413496597e-03f, + 2.209324170741059669e-03f, + 2.081207486184459728e-03f, + 1.951120841642063749e-03f, + 1.819197125372980488e-03f, + 1.685570945387657215e-03f, + 1.550378492237483022e-03f, + 1.413757400346775340e-03f, + 1.275846608024381462e-03f, + 1.136786216300893085e-03f, + 9.967173467317232399e-04f, + 8.557819983114523963e-04f, + 7.141229036455263310e-04f, + 5.718833845226121287e-04f, + 4.292072070347436501e-04f, + 2.862384363927389136e-04f, + 1.431212915810999909e-04f, + 3.976073045763746639e-17f, + -1.429813477578194541e-04f, + -2.856789428524072441e-04f, + -4.279494027150967353e-04f, + -5.696499149979476154e-04f, + -7.106383808068707187e-04f, + -8.507735570776003928e-04f, + -9.899151979507884221e-04f, + -1.127924195003721704e-03f, + -1.264662716200822120e-03f, + -1.399994343423132705e-03f, + -1.533784208438585678e-03f, + -1.665899127179875554e-03f, + -1.796207732195136955e-03f, + -1.924580603139482322e-03f, + -2.050890395178425665e-03f, + -2.175011965176371249e-03f, + -2.296822495544894628e-03f, + -2.416201615627299338e-03f, + -2.533031520501645515e-03f, + -2.647197087084067826e-03f, + -2.758585987417253894e-03f, + -2.867088799034697190e-03f, + -2.972599112290812313e-03f, + -3.075013634552971071e-03f, + -3.174232291152105818e-03f, + -3.270158322995199603e-03f, + -3.362698380743715538e-03f, + -3.451762615465765304e-03f, + -3.537264765675776721e-03f, + -3.619122240676629892e-03f, + -3.697256200123399950e-03f, + -3.771591629733630612e-03f, + -3.842057413070905456e-03f, + -3.908586399332766859e-03f, + -3.971115467079878135e-03f, + -4.029585583845121145e-03f, + -4.083941861567453452e-03f, + -4.134133607797787699e-03f, + -4.180114372630844115e-03f, + -4.221841991318395042e-03f, + -4.259278622526630094e-03f, + -4.292390782202119143e-03f, + -4.321149373017542893e-03f, + -4.345529709371441680e-03f, + -4.365511537920943770e-03f, + -4.381079053631709713e-03f, + -4.392220911332943636e-03f, + -4.398930232770211640e-03f, + -4.401204609153669053e-03f, + -4.399046099203249988e-03f, + -4.392461222697331344e-03f, + -4.381460949535757529e-03f, + -4.366060684332634563e-03f, + -4.346280246558699781e-03f, + -4.322143846257833419e-03f, + -4.293680055366262162e-03f, + -4.260921774667682412e-03f, + -4.223906196422148006e-03f, + -4.182674762710170135e-03f, + -4.137273119538274584e-03f, + -4.087751066756856698e-03f, + -4.034162503844153022e-03f, + -3.976565371615301513e-03f, + -3.915021589919383607e-03f, + -3.849596991390978259e-03f, + -3.780361251326535416e-03f, + -3.707387813760094821e-03f, + -3.630753813817203315e-03f, + -3.550539996427677474e-03f, + -3.466830631483622076e-03f, + -3.379713425530830959e-03f, + -3.289279430087042790e-03f, + -3.195622946681347856e-03f, + -3.098841428714084380e-03f, + -2.999035380240086535e-03f, + -2.896308251778681887e-03f, + -2.790766333258949596e-03f, + -2.682518644211763417e-03f, + -2.571676821320250696e-03f, + -2.458355003445216510e-03f, + -2.342669714244821622e-03f, + -2.224739742507099091e-03f, + -2.104686020319705697e-03f, + -1.982631499200445194e-03f, + -1.858701024317035294e-03f, + -1.733021206922603788e-03f, + -1.605720295138181623e-03f, + -1.476928043214278908e-03f, + -1.346775579404299638e-03f, + -1.215395272583683463e-03f, + -1.082920597750686208e-03f, + -9.494860005465256434e-04f, + -8.152267609301555324e-04f, + -6.802788561468293017e-04f, + -5.447788231302409367e-04f, + -4.088636204751821168e-04f, + -2.726704901212254279e-04f, + -1.363368188880890964e-04f, + -8.417792963206818356e-17f, + 1.362027052598085422e-04f, + 2.721343056259442508e-04f, + 4.076582175196397572e-04f, + 5.426384021722333592e-04f, + 6.769395020654857481e-04f, + 8.104269765506644935e-04f, + 9.429672365128469180e-04f, + 1.074427777944659190e-03f, + 1.204677314294974296e-03f, + 1.333585907462621518e-03f, + 1.461025097303440606e-03f, + 1.586868029520704633e-03f, + 1.710989581813802214e-03f, + 1.833266488158666763e-03f, + 1.953577461096326229e-03f, + 2.071803311908859517e-03f, + 2.187827068564226606e-03f, + 2.301534091313028798e-03f, + 2.412812185822113195e-03f, + 2.521551713735463440e-03f, + 2.627645700551932938e-03f, + 2.730989940714999460e-03f, + 2.831483099809944254e-03f, + 2.929026813770171413e-03f, + 3.023525784994855574e-03f, + 3.114887875283365529e-03f, + 3.203024195497624661e-03f, + 3.287849191864475069e-03f, + 3.369280728833792034e-03f, + 3.447240168413722491e-03f, + 3.521652445905853156e-03f, + 3.592446141966990254e-03f, + 3.659553550929970766e-03f, + 3.722910745317228355e-03f, + 3.782457636486660606e-03f, + 3.838138031351646592e-03f, + 3.889899685123011756e-03f, + 3.937694350023167832e-03f, + 3.981477819927187536e-03f, + 4.021209970890143003e-03f, + 4.056854797524065380e-03f, + 4.088380445191790516e-03f, + 4.115759237989136295e-03f, + 4.138967702491964246e-03f, + 4.157986587248014773e-03f, + 4.172800877997954669e-03f, + 4.183399808614909378e-03f, + 4.189776867755429235e-03f, + 4.191929801219356974e-03f, + 4.189860610020690324e-03f, + 4.183575544175400195e-03f, + 4.173085092216739442e-03f, + 4.158403966452908773e-03f, + 4.139551083985980491e-03f, + 4.116549543515387807e-03f, + 4.089426597953691074e-03f, + 4.058213622886065394e-03f, + 4.022946080909405378e-03f, + 3.983663481891361151e-03f, + 3.940409339192868857e-03f, + 3.893231121902388826e-03f, + 3.842180203134375367e-03f, + 3.787311804446883475e-03f, + 3.728684936439468408e-03f, + 3.666362335593461707e-03f, + 3.600410397423470070e-03f, + 3.530899106009756632e-03f, + 3.457901959986858006e-03f, + 3.381495895065876871e-03f, + 3.301761203172812187e-03f, + 3.218781448286551963e-03f, + 3.132643379065020751e-03f, + 3.043436838351391838e-03f, + 2.951254669653231681e-03f, + 2.856192620692367314e-03f, + 2.758349244126263259e-03f, + 2.657825795542260918e-03f, + 2.554726128830706305e-03f, + 2.449156589045835622e-03f, + 2.341225902863081770e-03f, + 2.231045066746887174e-03f, + 2.118727232942822086e-03f, + 2.004387593412520346e-03f, + 1.888143261828470910e-03f, + 1.770113153750305698e-03f, + 1.650417865105977249e-03f, + 1.529179549100039177e-03f, + 1.406521791675539998e-03f, + 1.282569485656734343e-03f, + 1.157448703700234525e-03f, + 1.031286570183274475e-03f, + 9.042111321594720934e-04f, + 7.763512295141050895e-04f, + 6.478363644484194097e-04f, + 5.187965704260827501e-04f, + 3.893622807153351221e-04f, + 2.596641966575497277e-04f, + 1.298331557961695734e-04f, + 0.000000000000000000e+00f, + -1.297045562884773494e-04f, + -2.591500575455231805e-04f, + -3.882064382682380425e-04f, + -5.167441535531211438e-04f, + -6.446343090221472215e-04f, + -7.717487899651593111e-04f, + -8.979603895682745050e-04f, + -1.023142936102136233e-03f, + -1.147171418941898315e-03f, + -1.269922113292209966e-03f, + -1.391272703494883479e-03f, + -1.511102404795431394e-03f, + -1.629292083446334978e-03f, + -1.745724375030405316e-03f, + -1.860283800883534306e-03f, + -1.972856882504857214e-03f, + -2.083332253837852453e-03f, + -2.191600771314119924e-03f, + -2.297555621549458339e-03f, + -2.401092426587344512e-03f, + -2.502109346584675646e-03f, + -2.600507179840733183e-03f, + -2.696189460070382710e-03f, + -2.789062550825482587e-03f, + -2.879035736973885838e-03f, + -2.966021313145917292e-03f, + -3.049934669061640530e-03f, + -3.130694371657468528e-03f, + -3.208222243931873989e-03f, + -3.282443440433375874e-03f, + -3.353286519319528813e-03f, + -3.420683510916569352e-03f, + -3.484569982714951809e-03f, + -3.544885100737864888e-03f, + -3.601571687225699116e-03f, + -3.654576274581390269e-03f, + -3.703849155525655665e-03f, + -3.749344429416276783e-03f, + -3.791020044687998507e-03f, + -3.828837837374106986e-03f, + -3.862763565674989016e-03f, + -3.892766940542859502e-03f, + -3.918821652255656887e-03f, + -3.940905392957132734e-03f, + -3.958999875144887486e-03f, + -3.973090846091481033e-03f, + -3.983168098188016350e-03f, + -3.989225475204148490e-03f, + -3.991260874462022705e-03f, + -3.989276244926093229e-03f, + -3.983277581214771101e-03f, + -3.973274913544052635e-03f, + -3.959282293617159831e-03f, + -3.941317776478633732e-03f, + -3.919403398354929027e-03f, + -3.893565150507910695e-03f, + -3.863832949131735649e-03f, + -3.830240601327010268e-03f, + -3.792825767190527789e-03f, + -3.751629918062933215e-03f, + -3.706698290979619330e-03f, + -3.658079839375025927e-03f, + -3.605827180092993720e-03f, + -3.549996536761576733e-03f, + -3.490647679591208329e-03f, + -3.427843861661717968e-03f, + -3.361651751765054510e-03f, + -3.292141363875685824e-03f, + -3.219385983321982822e-03f, + -3.143462089736679104e-03f, + -3.064449276867864478e-03f, + -2.982430169333176711e-03f, + -2.897490336404670141e-03f, + -2.809718202914781877e-03f, + -2.719204957374711431e-03f, + -2.626044457401114501e-03f, + -2.530333132549811032e-03f, + -2.432169884655409342e-03f, + -2.331655985780983504e-03f, + -2.228894973881932924e-03f, + -2.123992546292832913e-03f, + -2.017056451144963979e-03f, + -1.908196376826750383e-03f, + -1.797523839601251243e-03f, + -1.685152069494012198e-03f, + -1.571195894568736418e-03f, + -1.455771623709985587e-03f, + -1.338996928029888246e-03f, + -1.220990721022854842e-03f, + -1.101873037586910105e-03f, + -9.817649120378681756e-04f, + -8.607882552375694957e-04f, + -7.390657309618451016e-04f, + -6.167206316344765651e-04f, + -4.938767535509734369e-04f, + -3.706582717193119820e-04f, + -2.471896144450557429e-04f, + -1.235953377853419590e-04f, + -4.959890100963354769e-17f, + 1.234719638747178042e-04f, + 2.466963672028767455e-04f, + 3.695493965506171539e-04f, + 4.919077359883478268e-04f, + 6.136486907666624611e-04f, + 7.346503102443730469e-04f, + 8.547915099445561275e-04f, + 9.739521926155840070e-04f, + 1.092013368178181270e-03f, + 1.208857272437798046e-03f, + 1.324367484443061309e-03f, + 1.438429042375458577e-03f, + 1.550928557853214172e-03f, + 1.661754328537675893e-03f, + 1.770796448927353453e-03f, + 1.877946919233882935e-03f, + 1.983099752229050636e-03f, + 2.086151077959072422e-03f, + 2.186999246221175627e-03f, + 2.285544926703325219e-03f, + 2.381691206687666998e-03f, + 2.475343686220975951e-03f, + 2.566410570660377331e-03f, + 2.654802760502929671e-03f, + 2.740433938410591005e-03f, + 2.823220653347242176e-03f, + 2.903082401745072944e-03f, + 2.979941705620986828e-03f, + 3.053724187568778933e-03f, + 3.124358642553495477e-03f, + 3.191777106439702780e-03f, + 3.255914921186875855e-03f, + 3.316710796650810048e-03f, + 3.374106868931566437e-03f, + 3.428048755212193075e-03f, + 3.478485605037506118e-03f, + 3.525370147984284441e-03f, + 3.568658737678078504e-03f, + 3.608311392117048363e-03f, + 3.644291830264629207e-03f, + 3.676567504879116322e-03f, + 3.705109631549780621e-03f, + 3.729893213914910709e-03f, + 3.750897065039809040e-03f, + 3.768103824936940016e-03f, + 3.781499974214817122e-03f, + 3.791075843845443261e-03f, + 3.796825621044523733e-03f, + 3.798747351262270894e-03f, + 3.796842936286857866e-03f, + 3.791118128466208596e-03f, + 3.781582521057830042e-03f, + 3.768249534720393822e-03f, + 3.751136400164309208e-03f, + 3.730264136982911188e-03f, + 3.705657528689156911e-03f, + 3.677345093986788237e-03f, + 3.645359054308939216e-03f, + 3.609735297660244310e-03f, + 3.570513338802807409e-03f, + 3.527736275829614857e-03f, + 3.481450743173182798e-03f, + 3.431706861099539409e-03f, + 3.378558181742752180e-03f, + 3.322061631737472948e-03f, + 3.262277451510458420e-03f, + 3.199269131295992552e-03f, + 3.133103343942434792e-03f, + 3.063849874581625003e-03f, + 2.991581547234064588e-03f, + 2.916374148427355699e-03f, + 2.838306347908428270e-03f, + 2.757459616531154987e-03f, + 2.673918141405439829e-03f, + 2.587768738396670036e-03f, + 2.499100762065002874e-03f, + 2.408006013138405590e-03f, + 2.314578643615823259e-03f, + 2.218915059596944257e-03f, + 2.121113821939972673e-03f, + 2.021275544848643961e-03f, + 1.919502792494091415e-03f, + 1.815899973775997930e-03f, + 1.710573235331645401e-03f, + 1.603630352903246976e-03f, + 1.495180621172954036e-03f, + 1.385334742178912079e-03f, + 1.274204712426525677e-03f, + 1.161903708809525985e-03f, + 1.048545973456544876e-03f, + 9.342466976205273310e-04f, + 8.191219047299183901e-04f, + 7.032883327184241478e-04f, + 5.868633157534830069e-04f, + 4.699646654841184022e-04f, + 3.527105519262883665e-04f, + 2.352193841077147634e-04f, + 1.176096905914035935e-04f, + -1.816279043680416122e-17f, + -1.174912783408097822e-04f, + -2.347459735184355596e-04f, + -3.516462717890174536e-04f, + -4.680748348545702049e-04f, + -5.839149175424285850e-04f, + -6.990504847680064412e-04f, + -8.133663276656900908e-04f, + -9.267481787707859599e-04f, + -1.039082826136560620e-03f, + -1.150258226274457644e-03f, + -1.260163615803283491e-03f, + -1.368689621697415744e-03f, + -1.475728370022750873e-03f, + -1.581173593054908304e-03f, + -1.684920734670451118e-03f, + -1.786867053909769803e-03f, + -1.886911726606242201e-03f, + -1.984955944983589262e-03f, + -2.080903015122214511e-03f, + -2.174658452197730102e-03f, + -2.266130073399595744e-03f, + -2.355228088437774474e-03f, + -2.441865187547984182e-03f, + -2.525956626910913581e-03f, + -2.607420311401180066e-03f, + -2.686176874584755934e-03f, + -2.762149755888469640e-03f, + -2.835265274865544395e-03f, + -2.905452702486107687e-03f, + -2.972644329382842596e-03f, + -3.036775530987343309e-03f, + -3.097784829494083791e-03f, + -3.155613952592319516e-03f, + -3.210207888911055518e-03f, + -3.261514940123977010e-03f, + -3.309486769664863031e-03f, + -3.354078448008697769e-03f, + -3.395248494475826620e-03f, + -3.432958915520433179e-03f, + -3.467175239468593684e-03f, + -3.497866547674528641e-03f, + -3.525005502067194568e-03f, + -3.548568369062852102e-03f, + -3.568535039823742677e-03f, + -3.584889046845683540e-03f, + -3.597617576861870340e-03f, + -3.606711480053335483e-03f, + -3.612165275560820770e-03f, + -3.613977153296067668e-03f, + -3.612148972054406073e-03f, + -3.606686253934421674e-03f, + -3.597598175073908090e-03f, + -3.584897552715274240e-03f, + -3.568600828617066786e-03f, + -3.548728048831968108e-03f, + -3.525302839875490025e-03f, + -3.498352381312806562e-03f, + -3.467907374795066184e-03f, + -3.434002009579821546e-03f, + -3.396673924574244215e-03f, + -3.355964166942346574e-03f, + -3.311917147321609932e-03f, + -3.264580591697720767e-03f, + -3.214005489989122874e-03f, + -3.160246041396339717e-03f, + -3.103359596574423087e-03f, + -3.043406596690569153e-03f, + -2.980450509430481246e-03f, + -2.914557762021494861e-03f, + -2.845797671343432839e-03f, + -2.774242371199536934e-03f, + -2.699966736824086378e-03f, + -2.623048306706114718e-03f, + -2.543567201809550458e-03f, + -2.461606042274317591e-03f, + -2.377249861685521663e-03f, + -2.290586018998170062e-03f, + -2.201704108209648781e-03f, + -2.110695865872344850e-03f, + -2.017655076542951807e-03f, + -1.922677476264368895e-03f, + -1.825860654179994359e-03f, + -1.727303952382239390e-03f, + -1.627108364096408778e-03f, + -1.525376430304876962e-03f, + -1.422212134918130876e-03f, + -1.317720798598115244e-03f, + -1.212008971343053179e-03f, + -1.105184323943502606e-03f, + -9.973555384197396820e-04f, + -8.886321975514789584e-04f, + -7.791246736123785127e-04f, + -6.689440164231939519e-04f, + -5.582018408351800513e-04f, + -4.470102137591960715e-04f, + -3.354815408535864675e-04f, + -2.237284529868988829e-04f, + -1.118636925881364959e-04f, + -2.071470033548900873e-17f, + 1.117500000493719706e-04f, + 2.232739117441697070e-04f, + 3.344596811326808606e-04f, + 4.451957086194700233e-04f, + 5.553709608865004844e-04f, + 6.648750821302810846e-04f, + 7.735985045027994698e-04f, + 8.814325576476730742e-04f, + 9.882695772205538597e-04f, + 1.094003012286658312e-03f, + 1.198527531486872971e-03f, + 1.301739127868568706e-03f, + 1.403535222275920568e-03f, + 1.503814765196793968e-03f, + 1.602478336965568358e-03f, + 1.699428246223005749e-03f, + 1.794568626535442959e-03f, + 1.887805531077050170e-03f, + 1.979047025283286153e-03f, + 2.068203277383505716e-03f, + 2.155186646722974993e-03f, + 2.239911769789048289e-03f, + 2.322295643856428504e-03f, + 2.402257708169032186e-03f, + 2.479719922580636039e-03f, + 2.554606843576476966e-03f, + 2.626845697602746450e-03f, + 2.696366451631782273e-03f, + 2.763101880895990278e-03f, + 2.826987633724481735e-03f, + 2.887962293419586799e-03f, + 2.945967437115027624e-03f, + 3.000947691558917239e-03f, + 3.052850785768143008e-03f, + 3.101627600505197247e-03f, + 3.147232214530348154e-03f, + 3.189621947585512783e-03f, + 3.228757400070635542e-03f, + 3.264602489375515067e-03f, + 3.297124482833800954e-03f, + 3.326294027269616291e-03f, + 3.352085175110586929e-03f, + 3.374475407044334914e-03f, + 3.393445651198981165e-03f, + 3.408980298832289899e-03f, + 3.421067216516832533e-03f, + 3.429697754812713849e-03f, + 3.434866753422505335e-03f, + 3.436572542826982733e-03f, + 3.434816942403465419e-03f, + 3.429605255032289191e-03f, + 3.420946258200424379e-03f, + 3.408852191614762661e-03f, + 3.393338741341164321e-03f, + 3.374425020488695717e-03f, + 3.352133546462037709e-03f, + 3.326490214808674843e-03f, + 3.297524269690380733e-03f, + 3.265268271012441645e-03f, + 3.229758058246862303e-03f, + 3.191032710989869740e-03f, + 3.149134506296154788e-03f, + 3.104108872836428955e-03f, + 3.056004341927853838e-03f, + 3.004872495489709604e-03f, + 2.950767910979716115e-03f, + 2.893748103369611722e-03f, + 2.833873464221980509e-03f, + 2.771207197931811923e-03f, + 2.705815255200260967e-03f, + 2.637766263811031336e-03f, + 2.567131456780837821e-03f, + 2.493984597959450489e-03f, + 2.418401905157508119e-03f, + 2.340461970880830869e-03f, + 2.260245680754550089e-03f, + 2.177836129720765214e-03f, + 2.093318536097558535e-03f, + 2.006780153586758438e-03f, + 1.918310181321814228e-03f, + 1.827999672049080305e-03f, + 1.735941438535555485e-03f, + 1.642229958299797413e-03f, + 1.546961276764474095e-03f, + 1.450232908928234844e-03f, + 1.352143739658173346e-03f, + 1.252793922705604940e-03f, + 1.152284778546037915e-03f, + 1.050718691150112800e-03f, + 9.481990037877905493e-04f, + 8.448299139744811252e-04f, + 7.407163676634808108e-04f, + 6.359639527935932865e-04f, + 5.306787922987215612e-04f, + 4.249674366892458523e-04f, + 3.189367563120465432e-04f, + 2.126938333988559937e-04f, + 1.063458540127559251e-04f, + 5.580875061456703527e-17f, + -1.062366589427715403e-04f, + -2.122572729776368709e-04f, + -3.179553195023174803e-04f, + -4.232247100881988380e-04f, + -5.279598968701624921e-04f, + -6.320559782838149239e-04f, + -7.354088040427114292e-04f, + -8.379150792517338136e-04f, + -9.394724675511614224e-04f, + -1.039979693190289578e-03f, + -1.139336641928036893e-03f, + -1.237444460659308312e-03f, + -1.334205655669700157e-03f, + -1.429524189420069849e-03f, + -1.523305575764726449e-03f, + -1.615456973509339471e-03f, + -1.705887278216311432e-03f, + -1.794507212166710506e-03f, + -1.881229412389207739e-03f, + -1.965968516670845660e-03f, + -2.048641247464260805e-03f, + -2.129166493608392920e-03f, + -2.207465389784019332e-03f, + -2.283461393625221911e-03f, + -2.357080360412389282e-03f, + -2.428250615272878506e-03f, + -2.496903022820505004e-03f, + -2.562971054165676978e-03f, + -2.626390851230865024e-03f, + -2.687101288310514684e-03f, + -2.745044030815619023e-03f, + -2.800163591146226632e-03f, + -2.852407381639556275e-03f, + -2.901725764542836122e-03f, + -2.948072098963223399e-03f, + -2.991402784751522655e-03f, + -3.031677303277889764e-03f, + -3.068858255062130534e-03f, + -3.102911394223503531e-03f, + -3.133805659718869735e-03f, + -3.161513203341241758e-03f, + -3.186009414453190580e-03f, + -3.207272941434331694e-03f, + -3.225285709824096680e-03f, + -3.240032937145292686e-03f, + -3.251503144396590377e-03f, + -3.259688164206146245e-03f, + -3.264583145641404907e-03f, + -3.266186555673606436e-03f, + -3.264500177299172780e-03f, + -3.259529104323136660e-03f, + -3.251281732813429259e-03f, + -3.239769749237986739e-03f, + -3.225008115300036140e-03f, + -3.207015049490388476e-03f, + -3.185812005378460370e-03f, + -3.161423646667512952e-03f, + -3.133877819042292512e-03f, + -3.103205518841122348e-03f, + -3.069440858586877912e-03f, + -3.032621029414926759e-03f, + -2.992786260439455476e-03f, + -2.949979775101472298e-03f, + -2.904247744546611422e-03f, + -2.855639238081619617e-03f, + -2.804206170763586491e-03f, + -2.750003248176786843e-03f, + -2.693087908455917955e-03f, + -2.633520261617509212e-03f, + -2.571363026262532200e-03f, + -2.506681463717044551e-03f, + -2.439543309680427315e-03f, + -2.370018703451564571e-03f, + -2.298180114807654630e-03f, + -2.224102268611033526e-03f, + -2.147862067223294154e-03f, + -2.069538510805925442e-03f, + -1.989212615590480685e-03f, + -1.906967330203344566e-03f, + -1.822887450130181207e-03f, + -1.737059530408692877e-03f, + -1.649571796640214366e-03f, + -1.560514054410137245e-03f, + -1.469977597210741713e-03f, + -1.378055112961429048e-03f, + -1.284840589220490525e-03f, + -1.190429217186597059e-03f, + -1.094917294586464536e-03f, + -9.984021275502952091e-04f, + -9.009819315715012801e-04f, + -8.027557316540494606e-04f, + -7.038232617473004970e-04f, + -6.042848635718732616e-04f, + -5.042413849374186366e-04f, + -4.037940776560225800e-04f, + -3.030444951553179869e-04f, + -2.020943898931319878e-04f, + -1.010456106780149166e-04f, + 0.000000000000000000e+00f, + 1.009407085266458343e-04f, + 2.016749925046095251e-04f, + 3.021016427750876994e-04f, + 4.021198650188813296e-04f, + 5.016293808337416761e-04f, + 6.005305281877486908e-04f, + 6.987243611467527623e-04f, + 7.961127487778794053e-04f, + 8.925984731294979088e-04f, + 9.880853261891541211e-04f, + 1.082478205724416668e-03f, + 1.175683209910467547e-03f, + 1.267607730649530483e-03f, + 1.358160545491613001e-03f, + 1.447251908062810368e-03f, + 1.534793636914284342e-03f, + 1.620699202701525671e-03f, + 1.704883813609845864e-03f, + 1.787264498941020874e-03f, + 1.867760190778164960e-03f, + 1.946291803649916963e-03f, + 2.022782312115050697e-03f, + 2.097156826190940942e-03f, + 2.169342664553446445e-03f, + 2.239269425435684406e-03f, + 2.306869055157482768e-03f, + 2.372075914217887990e-03f, + 2.434826840887931946e-03f, + 2.495061212241576985e-03f, + 2.552721002565519828e-03f, + 2.607750839092839740e-03f, + 2.660098055006482071e-03f, + 2.709712739661699482e-03f, + 2.756547785980618080e-03f, + 2.800558934973623130e-03f, + 2.841704817345394509e-03f, + 2.879946992147500422e-03f, + 2.915249982440988770e-03f, + 2.947581307936787947e-03f, + 2.976911514583215936e-03f, + 3.003214201075224757e-03f, + 3.026466042260897698e-03f, + 3.046646809425394842e-03f, + 3.063739387434716906e-03f, + 3.077729788725812928e-03f, + 3.088607164131847160e-03f, + 3.096363810535085210e-03f, + 3.100995175343106407e-03f, + 3.102499857787075627e-03f, + 3.100879607044029155e-03f, + 3.096139317188489372e-03f, + 3.088287018981677665e-03f, + 3.077333868510032794e-03f, + 3.063294132687598148e-03f, + 3.046185171640329852e-03f, + 3.026027417993118994e-03f, + 3.002844353083898229e-03f, + 2.976662480131725321e-03f, + 2.947511294389127540e-03f, + 2.915423250312139825e-03f, + 2.880433725783904282e-03f, + 2.842580983431017543e-03f, + 2.801906129074849608e-03f, + 2.758453067362536676e-03f, + 2.712268454625132129e-03f, + 2.663401649013388741e-03f, + 2.611904657964648872e-03f, + 2.557832083055883686e-03f, + 2.501241062301404455e-03f, + 2.442191209956580140e-03f, + 2.380744553889864272e-03f, + 2.316965470589540683e-03f, + 2.250920617872494492e-03f, + 2.182678865366110329e-03f, + 2.112311222834577142e-03f, + 2.039890766424525773e-03f, + 1.965492562907071757e-03f, + 1.889193591993552652e-03f, + 1.811072666805763759e-03f, + 1.731210352583364151e-03f, + 1.649688883710983146e-03f, + 1.566592079150942642e-03f, + 1.482005256369143794e-03f, + 1.396015143841002710e-03f, + 1.308709792228250146e-03f, + 1.220178484316535592e-03f, + 1.130511643807194247e-03f, + 1.039800743054220596e-03f, + 9.481382098429354081e-04f, + 8.556173333027085976e-04f, + 7.623321690519257836e-04f, + 6.683774436695268453e-04f, + 5.738484585908526416e-04f, + 4.788409935259931006e-04f, + 3.834512094969080875e-04f, + 2.877755515921519335e-04f, + 1.919106515382334099e-04f, + 9.595323018441329955e-05f, + 2.961728936009675573e-17f, + -9.585243231666533902e-05f, + -1.915076630217971002e-04f, + -2.868695882022341873e-04f, + -3.818425002487855048e-04f, + -4.763311838281015891e-04f, + -5.702410112587507447e-04f, + -6.634780371952385403e-04f, + -7.559490925245654922e-04f, + -8.475618773830773632e-04f, + -9.382250532000561190e-04f, + -1.027848333675624067e-03f, + -1.116342574603918251e-03f, + -1.203619862451413194e-03f, + -1.289593601602254461e-03f, + -1.374178600184431222e-03f, + -1.457291154392131340e-03f, + -1.538849131220664879e-03f, + -1.618772049531532397e-03f, + -1.696981159369096662e-03f, + -1.773399519450076641e-03f, + -1.847952072749128047e-03f, + -1.920565720107696725e-03f, + -1.991169391792951045e-03f, + -2.059694116937665648e-03f, + -2.126073090792308593e-03f, + -2.190241739725098773e-03f, + -2.252137783906322643e-03f, + -2.311701297615694015e-03f, + -2.368874767115570264e-03f, + -2.423603146033716672e-03f, + -2.475833908202009024e-03f, + -2.525517097901476115e-03f, + -2.572605377465290739e-03f, + -2.617054072194128448e-03f, + -2.658821212542411203e-03f, + -2.697867573534989526e-03f, + -2.734156711378059063e-03f, + -2.767654997229715939e-03f, + -2.798331648100023990e-03f, + -2.826158754851514684e-03f, + -2.851111307275881745e-03f, + -2.873167216223860253e-03f, + -2.892307332769767248e-03f, + -2.908515464394205354e-03f, + -2.921778388171670463e-03f, + -2.932085860953250172e-03f, + -2.939430626537135362e-03f, + -2.943808419822793298e-03f, + -2.945217967948095782e-03f, + -2.943660988411156160e-03f, + -2.939142184182125771e-03f, + -2.931669235812944720e-03f, + -2.921252790556253757e-03f, + -2.907906448507473381e-03f, + -2.891646745787318507e-03f, + -2.872493134784635110e-03f, + -2.850467961482642393e-03f, + -2.825596439894601745e-03f, + -2.797906623637558873e-03f, + -2.767429374675792631e-03f, + -2.734198329268788634e-03f, + -2.698249861160541534e-03f, + -2.659623042050382122e-03f, + -2.618359599388156086e-03f, + -2.574503871538993439e-03f, + -2.528102760365492311e-03f, + -2.479205681277817097e-03f, + -2.427864510805224571e-03f, + -2.374133531743618380e-03f, + -2.318069375937653262e-03f, + -2.259730964756961977e-03f, + -2.199179447329721766e-03f, + -2.136478136597202548e-03f, + -2.071692443256429803e-03f, + -2.004889807660292528e-03f, + -1.936139629744864461e-03f, + -1.865513197057068430e-03f, + -1.793083610957797377e-03f, + -1.718925711075672356e-03f, + -1.643115998089900122e-03f, + -1.565732554922428339e-03f, + -1.486854966419205639e-03f, + -1.406564237604140694e-03f, + -1.324942710588779184e-03f, + -1.242073980223971008e-03f, + -1.158042808578502083e-03f, + -1.072935038332762650e-03f, + -9.868375051760999109e-04f, + -8.998379492968846009e-04f, + -8.120249260550908496e-04f, + -7.234877159284703501e-04f, + -6.343162338246114773e-04f, + -5.446009378495034713e-04f, + -4.544327376257831556e-04f, + -3.639029022542405989e-04f, + -2.731029680102384292e-04f, + -1.821246458690281339e-04f, + -9.105972895404852794e-05f, + 2.249668800172135414e-17f, + 9.096286107495146821e-05f, + 1.817373693953476012e-04f, + 2.722323270597744641e-04f, + 3.623569146858229449e-04f, + 4.520207824765948832e-04f, + 5.411341407166387263e-04f, + 6.296078496082298161e-04f, + 7.173535083574583433e-04f, + 8.042835434204669747e-04f, + 8.903112958232611450e-04f, + 9.753511074673767468e-04f, + 1.059318406334858621e-03f, + 1.142129790509272816e-03f, + 1.223703110928572564e-03f, + 1.303957552787602704e-03f, + 1.382813715509965393e-03f, + 1.460193691210495345e-03f, + 1.536021141570667560e-03f, + 1.610221373050487641e-03f, + 1.682721410364203859e-03f, + 1.753450068146556471e-03f, + 1.822338020740059362e-03f, + 1.889317870034044975e-03f, + 1.954324211290346669e-03f, + 2.017293696890905524e-03f, + 2.078165097944757213e-03f, + 2.136879363695696771e-03f, + 2.193379678672519300e-03f, + 2.247611517526280130e-03f, + 2.299522697502668928e-03f, + 2.349063428498731048e-03f, + 2.396186360655621055e-03f, + 2.440846629443004217e-03f, + 2.483001898191590853e-03f, + 2.522612398034211525e-03f, + 2.559640965217286051e-03f, + 2.594053075748732184e-03f, + 2.625816877349718484e-03f, + 2.654903218680989673e-03f, + 2.681285675817290850e-03f, + 2.704940575946320012e-03f, + 2.725847018271134597e-03f, + 2.743986892097757119e-03f, + 2.759344892093201339e-03f, + 2.771908530701254220e-03f, + 2.781668147706524256e-03f, + 2.788616916940388039e-03f, + 2.792750850124972248e-03f, + 2.794068797854331460e-03f, + 2.792572447715026187e-03f, + 2.788266319550961395e-03f, + 2.781157757880268772e-03f, + 2.771256921475067844e-03f, + 2.758576770117475430e-03f, + 2.743133048548284346e-03f, + 2.724944267627588904e-03f, + 2.704031682729127542e-03f, + 2.680419269393146536e-03f, + 2.654133696265428919e-03f, + 2.625204295352332774e-03f, + 2.593663029624824687e-03f, + 2.559544458007235838e-03f, + 2.522885697788194298e-03f, + 2.483726384495194266e-03f, + 2.442108629274998555e-03f, + 2.398076973826478078e-03f, + 2.351678342933034675e-03f, + 2.302961994645597293e-03f, + 2.251979468168421438e-03f, + 2.198784529503366135e-03f, + 2.143433114908959661e-03f, + 2.085983272233949380e-03f, + 2.026495100187157301e-03f, + 1.965030685606198105e-03f, + 1.901654038790769660e-03f, + 1.836431026968307709e-03f, + 1.769429305960019570e-03f, + 1.700718250118553624e-03f, + 1.630368880610306992e-03f, + 1.558453792115264015e-03f, + 1.485047078020867951e-03f, + 1.410224254186159386e-03f, + 1.334062181355563604e-03f, + 1.256638986300702377e-03f, + 1.178033981771610395e-03f, + 1.098327585339919834e-03f, + 1.017601237215742414e-03f, + 9.359373171227939204e-04f, + 8.534190603167809844e-04f, + 7.701304728322726310e-04f, + 6.861562460439943638e-04f, + 6.015816706295592760e-04f, + 5.164925500217144947e-04f, + 4.309751134365081789e-04f, + 3.451159285661133287e-04f, + 2.590018140253294793e-04f, + 1.727197516388577871e-04f, + 8.635679865857319275e-05f, + 0.000000000000000000e+00f, + -8.626369941502123060e-05f, + -1.723475421202091517e-04f, + -2.581650452840001070e-04f, + -3.436300875175078229e-04f, + -4.286569952255241947e-04f, + -5.131606284134141056e-04f, + -5.970564658633488713e-04f, + -6.802606895961190543e-04f, + -7.626902685335093437e-04f, + -8.442630412771376771e-04f, + -9.248977979226647274e-04f, + -1.004514360827295531e-03f, + -1.083033664249621842e-03f, + -1.160377832784585195e-03f, + -1.236470258513610188e-03f, + -1.311235676795854824e-03f, + -1.384600240623468786e-03f, + -1.456491593469362491e-03f, + -1.526838940554491693e-03f, + -1.595573118465392530e-03f, + -1.662626663052574382e-03f, + -1.727933875544430866e-03f, + -1.791430886811391570e-03f, + -1.853055719717038941e-03f, + -1.912748349496546643e-03f, + -1.970450762103117051e-03f, + -2.026107010465434590e-03f, + -2.079663268602624775e-03f, + -2.131067883544039959e-03f, + -2.180271425003505598e-03f, + -2.227226732761336536e-03f, + -2.271888961708070937e-03f, + -2.314215624507658369e-03f, + -2.354166631838931854e-03f, + -2.391704330178351379e-03f, + -2.426793537088085383e-03f, + -2.459401573976375491e-03f, + -2.489498296300512482e-03f, + -2.517056121184375189e-03f, + -2.542050052425464269e-03f, + -2.564457702869174776e-03f, + -2.584259314130737690e-03f, + -2.601437773647668344e-03f, + -2.615978629048301869e-03f, + -2.627870099825200655e-03f, + -2.637103086304351703e-03f, + -2.643671175903983435e-03f, + -2.647570646679886421e-03f, + -2.648800468156370640e-03f, + -2.647362299445082338e-03f, + -2.643260484656465709e-03f, + -2.636502045611470533e-03f, + -2.627096671863705067e-03f, + -2.615056708045107071e-03f, + -2.600397138550693873e-03f, + -2.583135569580662441e-03f, + -2.563292208561044304e-03f, + -2.540889840966167532e-03f, + -2.515953804569251093e-03f, + -2.488511961150026430e-03f, + -2.458594665690286458e-03f, + -2.426234733091499601e-03f, + -2.391467402450208560e-03f, + -2.354330298930778966e-03f, + -2.314863393275341449e-03f, + -2.273108958995205108e-03f, + -2.229111527288808303e-03f, + -2.182917839734724828e-03f, + -2.134576798809103074e-03f, + -2.084139416280047803e-03f, + -2.031658759533671622e-03f, + -1.977189895887380630e-03f, + -1.920789834949013144e-03f, + -1.862517469082529712e-03f, + -1.802433512041404706e-03f, + -1.740600435833956081e-03f, + -1.677082405886637763e-03f, + -1.611945214571482154e-03f, + -1.545256213167279678e-03f, + -1.477084242324090734e-03f, + -1.407499561103702770e-03f, + -1.336573774667974704e-03f, + -1.264379760689891439e-03f, + -1.190991594563459415e-03f, + -1.116484473487968287e-03f, + -1.040934639504879694e-03f, + -9.644193015667102938e-04f, + -8.870165567158059617e-04f, + -8.088053104554945427e-04f, + -7.298651963925226931e-04f, + -6.502764952346872223e-04f, + -5.701200532242376492e-04f, + -4.894772000905328905e-04f, + -4.084296666057908869e-04f, + -3.270595018261514210e-04f, + -2.454489901024086416e-04f, + -1.636805679449392656e-04f, + -8.183674082536929162e-05f, + -3.536521155687695770e-17f, + 8.174726056185484973e-05f, + 1.633228270606075061e-04f, + 2.446447484770642063e-04f, + 3.256314188286605011e-04f, + 4.062016589873803664e-04f, + 4.862747979789591962e-04f, + 5.657707536813316989e-04f, + 6.446101128410288350e-04f, + 7.227142103289445341e-04f, + 8.000052075557968854e-04f, + 8.764061699685609655e-04f, + 9.518411435521427575e-04f, + 1.026235230259113333e-03f, + 1.099514662293880982e-03f, + 1.171606875175669731e-03f, + 1.242440579510656730e-03f, + 1.311945831400333469e-03f, + 1.380054101417801157e-03f, + 1.446698342082995128e-03f, + 1.511813053771716119e-03f, + 1.575334348993146514e-03f, + 1.637200014972404940e-03f, + 1.697349574477985271e-03f, + 1.755724344834148822e-03f, + 1.812267495060354474e-03f, + 1.866924101083174007e-03f, + 1.919641198966668804e-03f, + 1.970367836109312640e-03f, + 2.019055120359112502e-03f, + 2.065656266998848294e-03f, + 2.110126643557067375e-03f, + 2.152423812401290867e-03f, + 2.192507571073842951e-03f, + 2.230339990331663483e-03f, + 2.265885449854030363e-03f, + 2.299110671585404518e-03f, + 2.329984750682085725e-03f, + 2.358479184033766222e-03f, + 2.384567896334751410e-03f, + 2.408227263680306953e-03f, + 2.429436134667956135e-03f, + 2.448175848984440826e-03f, + 2.464430253462965986e-03f, + 2.478185715597053772e-03f, + 2.489431134500083229e-03f, + 2.498157949302601787e-03f, + 2.504360144981462345e-03f, + 2.508034255617927130e-03f, + 2.509179365084111650e-03f, + 2.507797105160097621e-03f, + 2.503891651086268943e-03f, + 2.497469714558282327e-03f, + 2.488540534174480279e-03f, + 2.477115863348166615e-03f, + 2.463209955699809280e-03f, + 2.446839547946541571e-03f, + 2.428023840308957040e-03f, + 2.406784474457862241e-03f, + 2.383145509025629081e-03f, + 2.357133392709743602e-03f, + 2.328776934998069703e-03f, + 2.298107274548326535e-03f, + 2.265157845255661752e-03f, + 2.229964340045592890e-03f, + 2.192564672431069738e-03f, + 2.152998935874733330e-03f, + 2.111309361000000308e-03f, + 2.067540270696137036e-03f, + 2.021738033165410009e-03f, + 1.973951012961244755e-03f, + 1.924229520069206407e-03f, + 1.872625757084688284e-03f, + 1.819193764541884861e-03f, + 1.763989364451496421e-03f, + 1.707070102106509864e-03f, + 1.648495186215746637e-03f, + 1.588325427427724965e-03f, + 1.526623175309085347e-03f, + 1.463452253841756060e-03f, + 1.398877895506348739e-03f, + 1.332966674019096277e-03f, + 1.265786435792502209e-03f, + 1.197406230189095033e-03f, + 1.127896238640391496e-03f, + 1.057327702704293892e-03f, + 9.857728511335100193e-04f, + 9.133048260301522472e-04f, + 8.399976081621432457e-04f, + 7.659259415173617783e-04f, + 6.911652571721143201e-04f, + 6.157915965516007339e-04f, + 5.398815341610210556e-04f, + 4.635120998645952885e-04f, + 3.867607007918734689e-04f, + 3.097050429510698013e-04f, + 2.324230526274301040e-04f, + 1.549927976471593514e-04f, + 7.749240858556649941e-05f, + 0.000000000000000000e+00f, + -7.740640823447261787e-05f, + -1.546489694066701043e-04f, + -2.316500881890203695e-04f, + -3.083324985177912040e-04f, + -3.846193410553054690e-04f, + -4.604342401558712806e-04f, + -5.357013802596746321e-04f, + -6.103455816376617384e-04f, + -6.842923754112235652e-04f, + -7.574680777731551771e-04f, + -8.297998633349399841e-04f, + -9.012158375281924391e-04f, + -9.716451079872685803e-04f, + -1.041017854843918943e-03f, + -1.109265399862380090e-03f, + -1.176320274348555822e-03f, + -1.242116285764278049e-03f, + -1.306588582982534663e-03f, + -1.369673720118763302e-03f, + -1.431309718874978175e-03f, + -1.491436129336623072e-03f, + -1.549994089162047605e-03f, + -1.606926381106289162e-03f, + -1.662177488824047355e-03f, + -1.715693650896988340e-03f, + -1.767422913032514007e-03f, + -1.817315178384378135e-03f, + -1.865322255945725321e-03f, + -1.911397906968511154e-03f, + -1.955497889364013041e-03f, + -1.997580000042790960e-03f, + -2.037604115153256439e-03f, + -2.075532228180405718e-03f, + -2.111328485869323496e-03f, + -2.144959221939368461e-03f, + -2.176392988557203194e-03f, + -2.205600585540104519e-03f, + -2.232555087262260568e-03f, + -2.257231867239448825e-03f, + -2.279608620370068926e-03f, + -2.299665382812773017e-03f, + -2.317384549483214162e-03f, + -2.332750889154779940e-03f, + -2.345751557151114393e-03f, + -2.356376105620029086e-03f, + -2.364616491381328796e-03f, + -2.370467081343168980e-03f, + -2.373924655484415357e-03f, + -2.374988407402560224e-03f, + -2.373659942429402498e-03f, + -2.369943273319134042e-03f, + -2.363844813515844894e-03f, + -2.355373368009962363e-03f, + -2.344540121795531118e-03f, + -2.331358625942570734e-03f, + -2.315844781301389533e-03f, + -2.298016819857692100e-03f, + -2.277895283760072130e-03f, + -2.255503002043453362e-03f, + -2.230865065074793489e-03f, + -2.204008796749007838e-03f, + -2.174963724465795757e-03f, + -2.143761546920198904e-03f, + -2.110436099741713409e-03f, + -2.075023319018890790e-03f, + -2.037561202748555591e-03f, + -1.998089770251173809e-03f, + -1.956651019594995121e-03f, + -1.913288883074297899e-03f, + -1.868049180789196646e-03f, + -1.820979572375211594e-03f, + -1.772129506933642308e-03f, + -1.721550171215585189e-03f, + -1.669294436113043234e-03f, + -1.615416801513268677e-03f, + -1.559973339574200445e-03f, + -1.503021636479029855e-03f, + -1.444620732731039447e-03f, + -1.384831062049924873e-03f, + -1.323714388933566266e-03f, + -1.261333744948669490e-03f, + -1.197753363816366759e-03f, + -1.133038615360030133e-03f, + -1.067255938382161932e-03f, + -1.000472772539666867e-03f, + -9.327574892878164135e-04f, + -8.641793219624978621e-04f, + -7.948082950727303935e-04f, + -7.247151528757850725e-04f, + -6.539712873074342899e-04f, + -5.826486653404457788e-04f, + -5.108197558453200652e-04f, + -4.385574560281823480e-04f, + -3.659350175192179139e-04f, + -2.930259721875476224e-04f, + -2.199040577568145362e-04f, + -1.466431432977234172e-04f, + -7.331715467149604577e-05f, + -1.583863635030426600e-17f, + 7.323450476167464791e-05f, + 1.463127100768226222e-04f, + 2.191612068271459025e-04f, + 2.917068999868720029e-04f, + 3.638770818979462419e-04f, + 4.355995050724186771e-04f, + 5.068024544486168575e-04f, + 5.774148190301226381e-04f, + 6.473661628350382271e-04f, + 7.165867950855838104e-04f, + 7.850078395671508278e-04f, + 8.525613030890458839e-04f, + 9.191801429783286312e-04f, + 9.847983335396156852e-04f, + 1.049350931415344917e-03f, + 1.112774139782065014e-03f, + 1.175005371319211289e-03f, + 1.235983309887723515e-03f, + 1.295647970858855580e-03f, + 1.353940760033357088e-03f, + 1.410804531092786597e-03f, + 1.466183641527706851e-03f, + 1.520024006987588487e-03f, + 1.572273153999021768e-03f, + 1.622880271001914641e-03f, + 1.671796257653338251e-03f, + 1.718973772351856891e-03f, + 1.764367277935770294e-03f, + 1.807933085512109829e-03f, + 1.849629396373906774e-03f, + 1.889416341965344378e-03f, + 1.927256021857423661e-03f, + 1.963112539697747360e-03f, + 1.996952037100198536e-03f, + 2.028742725443338692e-03f, + 2.058454915547453749e-03f, + 2.086061045202587064e-03f, + 2.111535704522703519e-03f, + 2.134855659102633321e-03f, + 2.155999870956868715e-03f, + 2.174949517221738769e-03f, + 2.191688006604752131e-03f, + 2.206200993566935931e-03f, + 2.218476390226378162e-03f, + 2.228504375973802080e-03f, + 2.236277404792865950e-03f, + 2.241790210280533453e-03f, + 2.245039808364943448e-03f, + 2.246025497720799922e-03f, + 2.244748857884364644e-03f, + 2.241213745072582770e-03f, + 2.235426285713204824e-03f, + 2.227394867694926922e-03f, + 2.217130129349095119e-03f, + 2.204644946176507331e-03f, + 2.189954415335300473e-03f, + 2.173075837908174709e-03f, + 2.154028698969212043e-03f, + 2.132834645472967295e-03f, + 2.109517461990493593e-03f, + 2.084103044319416103e-03f, + 2.056619370996764975e-03f, + 2.027096472745798170e-03f, + 1.995566399890039318e-03f, + 1.962063187769620600e-03f, + 1.926622820196907150e-03f, + 1.889283190990552431e-03f, + 1.850084063629192947e-03f, + 1.809067029067121680e-03f, + 1.766275461756697642e-03f, + 1.721754473924256863e-03f, + 1.675550868146924400e-03f, + 1.627713088280349860e-03f, + 1.578291168789072458e-03f, + 1.527336682531643414e-03f, + 1.474902687055531115e-03f, + 1.421043669457084475e-03f, + 1.365815489864515746e-03f, + 1.309275323601538730e-03f, + 1.251481602091836709e-03f, + 1.192493952565831317e-03f, + 1.132373136630967277e-03f, + 1.071180987769143524e-03f, + 1.008980347826006095e-03f, + 9.458350025562797456e-04f, + 8.818096162916508503e-04f, + 8.169696657985963404e-04f, + 7.513813733923349223e-04f, + 6.851116393769219248e-04f, + 6.182279738784716289e-04f, + 5.507984281427341774e-04f, + 4.828915253653128263e-04f, + 4.145761911257870138e-04f, + 3.459216834955630552e-04f, + 2.769975228912344525e-04f, + 2.078734217432808354e-04f, + 1.386192140517258974e-04f, + 6.930478490043769405e-05f, + 3.850678557016620008e-17f, + -6.922536466905694359e-05f, + -1.383016930421246003e-04f, + -2.071595989147220697e-04f, + -2.757299955756169576e-04f, + -3.439441650576845872e-04f, + -4.117338269385969812e-04f, + -4.790312066215028815e-04f, + -5.457691030282071530e-04f, + -6.118809556363564821e-04f, + -6.773009107949520824e-04f, + -7.419638872516609194e-04f, + -8.058056408262444324e-04f, + -8.687628281669950792e-04f, + -9.307730695263674928e-04f, + -9.917750104935054486e-04f, + -1.051708382622899233e-03f, + -1.110514062899539038e-03f, + -1.168134131981801499e-03f, + -1.224511931164258289e-03f, + -1.279592118005431134e-03f, + -1.333320720565457380e-03f, + -1.385645190200188951e-03f, + -1.436514452861111955e-03f, + -1.485878958850318310e-03f, + -1.533690730982715860e-03f, + -1.579903411108077825e-03f, + -1.624472304948763358e-03f, + -1.667354425209425627e-03f, + -1.708508532916933748e-03f, + -1.747895176951601770e-03f, + -1.785476731731549735e-03f, + -1.821217433014094391e-03f, + -1.855083411780856367e-03f, + -1.887042726174312105e-03f, + -1.917065391455589646e-03f, + -1.945123407956183582e-03f, + -1.971190786997232842e-03f, + -1.995243574752887921e-03f, + -2.017259874035835007e-03f, + -2.037219863985523585e-03f, + -2.055105817641905350e-03f, + -2.070902117388888439e-03f, + -2.084595268254915961e-03f, + -2.096173909059424311e-03f, + -2.105628821396557989e-03f, + -2.112952936449467856e-03f, + -2.118141339630974854e-03f, + -2.121191273048350125e-03f, + -2.122102135792170319e-03f, + -2.120875482051600824e-03f, + -2.117515017060413347e-03f, + -2.112026590880362788e-03f, + -2.104418190030685459e-03f, + -2.094699926974599290e-03f, + -2.082884027475962168e-03f, + -2.068984815841183947e-03f, + -2.053018698063778860e-03f, + -2.035004142890892240e-03f, + -2.014961660833440929e-03f, + -1.992913781143200273e-03f, + -1.968885026782406667e-03f, + -1.942901887413728572e-03f, + -1.914992790439534482e-03f, + -1.885188070122604002e-03f, + -1.853519934820884200e-03f, + -1.820022432372197857e-03f, + -1.784731413665374862e-03f, + -1.747684494436782749e-03f, + -1.708921015333154415e-03f, + -1.668482000282380450e-03f, + -1.626410113216474832e-03f, + -1.582749613192508320e-03f, + -1.537546307957996655e-03f, + -1.490847506009852948e-03f, + -1.442701967196525136e-03f, + -1.393159851915445457e-03f, + -1.342272668957837298e-03f, + -1.290093222055339146e-03f, + -1.236675555184266412e-03f, + -1.182074896683267323e-03f, + -1.126347602242422363e-03f, + -1.069551096823031762e-03f, + -1.011743815566986619e-03f, + -9.529851437568570560e-04f, + -8.933353558887932458e-04f, + -8.328555539196910067e-04f, + -7.716076047526932357e-04f, + -7.096540770239413622e-04f, + -6.470581772568036877e-04f, + -5.838836854464510024e-04f, + -5.201948901420694023e-04f, + -4.560565230917139183e-04f, + -3.915336935171430800e-04f, + -3.266918220842130881e-04f, + -2.615965746362512961e-04f, + -1.963137957579778382e-04f, + -1.309094422360982627e-04f, + -6.544951648425400908e-05f, + 0.000000000000000000e+00f, + 6.537321308021720669e-05f, + 1.306043822607082607e-04f, + 1.956279867336831537e-04f, + 2.603787911287086792e-04f, + 3.247919108976276181e-04f, + 3.888028772701663366e-04f, + 4.523477017143444248e-04f, + 5.153629398383980818e-04f, + 5.777857546699370411e-04f, + 6.395539792487880222e-04f, + 7.006061784722651719e-04f, + 7.608817101308743870e-04f, + 8.203207850733748325e-04f, + 8.788645264429036270e-04f, + 9.364550279239102458e-04f, + 9.930354109440190161e-04f, + 1.048549880772794290e-03f, + 1.102943781463442676e-03f, + 1.156163649582898304e-03f, + 1.208157266677142242e-03f, + 1.258873710421226384e-03f, + 1.308263404403530459e-03f, + 1.356278166495282879e-03f, + 1.402871255759119157e-03f, + 1.447997417850374223e-03f, + 1.491612928867637770e-03f, + 1.533675637609531331e-03f, + 1.574145006197766577e-03f, + 1.612982149027046997e-03f, + 1.650149870004234296e-03f, + 1.685612698041884239e-03f, + 1.719336920772085442e-03f, + 1.751290616448417667e-03f, + 1.781443684006613678e-03f, + 1.809767871255424246e-03f, + 1.836236801171283600e-03f, + 1.860825996272981193e-03f, + 1.883512901053582605e-03f, + 1.904276902449677372e-03f, + 1.923099348328973467e-03f, + 1.939963563980765578e-03f, + 1.954854866594344254e-03f, + 1.967760577713456756e-03f, + 1.978670033656380715e-03f, + 1.987574593893788513e-03f, + 1.994467647378149553e-03f, + 1.999344616820692734e-03f, + 2.002202960914168783e-03f, + 2.003042174501439791e-03f, + 2.001863786692200525e-03f, + 1.998671356932133197e-03f, + 1.993470469030853877e-03f, + 1.986268723157068750e-03f, + 1.977075725811386266e-03f, + 1.965903077789286045e-03f, + 1.952764360148673750e-03f, + 1.937675118198656623e-03f, + 1.920652843527819766e-03f, + 1.901716954092479844e-03f, + 1.880888772387422731e-03f, + 1.858191501723117835e-03f, + 1.833650200635677813e-03f, + 1.807291755457605693e-03f, + 1.779144851079101806e-03f, + 1.749239939931425750e-03f, + 1.717609209225661468e-03f, + 1.684286546482327823e-03f, + 1.649307503388023569e-03f, + 1.612709258017795862e-03f, + 1.574530575463451180e-03f, + 1.534811766908859409e-03f, + 1.493594647195765511e-03f, + 1.450922490924287005e-03f, + 1.406839987134609086e-03f, + 1.361393192616601943e-03f, + 1.314629483896238502e-03f, + 1.266597507949261160e-03f, + 1.217347131692460890e-03f, + 1.166929390305300809e-03f, + 1.115396434435750447e-03f, + 1.062801476344078485e-03f, + 1.009198735040490926e-03f, + 9.546433804735578524e-04f, + 8.991914768259076738e-04f, + 8.428999249761178706e-04f, + 7.858264041852376820e-04f, + 7.280293130684387321e-04f, + 6.695677099108536621e-04f, + 6.105012523900892442e-04f, + 5.508901367652243143e-04f, + 4.907950365958332764e-04f, + 4.302770410520321762e-04f, + 3.693975928787344835e-04f, + 3.082184260775406768e-04f, + 2.468015033684312445e-04f, + 1.852089534950353614e-04f, + 1.235030084373483811e-04f, + 6.174594059430125743e-05f, + 2.096293806310516030e-17f, + -6.167264836248043244e-05f, + -1.232099870881719884e-04f, + -1.845502086537135426e-04f, + -2.456317774361367959e-04f, + -3.063934913834511463e-04f, + -3.667745432764744212e-04f, + -4.267145815201261821e-04f, + -4.861537704029955404e-04f, + -5.450328497660459227e-04f, + -6.032931940205293235e-04f, + -6.608768704559289274e-04f, + -7.177266967809564115e-04f, + -7.737862978399837359e-04f, + -8.290001614485750878e-04f, + -8.833136932931055871e-04f, + -9.366732708404333684e-04f, + -9.890262962043143858e-04f, + -1.040321247916032189e-03f, + -1.090507731549242732e-03f, + -1.139536529148920665e-03f, + -1.187359647415603143e-03f, + -1.233930364598734937e-03f, + -1.279203276052626528e-03f, + -1.323134338411260068e-03f, + -1.365680912338360217e-03f, + -1.406801803812153832e-03f, + -1.446457303904537337e-03f, + -1.484609227016050938e-03f, + -1.521220947530623618e-03f, + -1.556257434854668676e-03f, + -1.589685286806867721e-03f, + -1.621472761327541912e-03f, + -1.651589806477331930e-03f, + -1.680008088696766707e-03f, + -1.706701019300830170e-03f, + -1.731643779183499347e-03f, + -1.754813341709760346e-03f, + -1.776188493773842719e-03f, + -1.795749855005169008e-03f, + -1.813479895104255042e-03f, + -1.829362949293911016e-03f, + -1.843385231871876419e-03f, + -1.855534847853930556e-03f, + -1.865801802697809961e-03f, + -1.874178010100366288e-03f, + -1.880657297862605663e-03f, + -1.885235411818870100e-03f, + -1.887910017828480034e-03f, + -1.888680701830295272e-03f, + -1.887548967962307056e-03f, + -1.884518234750538193e-03f, + -1.879593829373407774e-03f, + -1.872782980009604853e-03f, + -1.864094806279484534e-03f, + -1.853540307791953041e-03f, + -1.841132350810590528e-03f, + -1.826885653054665781e-03f, + -1.810816766652771246e-03f, + -1.792944059268252940e-03f, + -1.773287693417722457e-03f, + -1.751869604005822220e-03f, + -1.728713474100759947e-03f, + -1.703844708977252705e-03f, + -1.677290408455194264e-03f, + -1.649079337563943938e-03f, + -1.619241895563655999e-03f, + -1.587810083356924057e-03f, + -1.554817469325785705e-03f, + -1.520299153629931172e-03f, + -1.484291731004316970e-03f, + -1.446833252095214512e-03f, + -1.407963183375834622e-03f, + -1.367722365683123140e-03f, + -1.326152971419345067e-03f, + -1.283298460463622734e-03f, + -1.239203534838731165e-03f, + -1.193914092180647360e-03f, + -1.147477178059556511e-03f, + -1.099940937201084957e-03f, + -1.051354563658511796e-03f, + -1.001768249987922176e-03f, + -9.512331354778615728e-04f, + -8.998012534875231673e-04f, + -8.475254779470752691e-04f, + -7.944594690758058310e-04f, + -7.406576183728511139e-04f, + -6.861749929372944591e-04f, + -6.310672791747117981e-04f, + -5.753907259474574801e-04f, + -5.192020872264638655e-04f, + -4.625585643030877768e-04f, + -4.055177476203069577e-04f, + -3.481375582814421167e-04f, + -2.904761892961940780e-04f, + -2.325920466240080111e-04f, + -1.745436900735062170e-04f, + -1.163897741181921285e-04f, + -5.818898868865390200e-05f, + -3.951477669352645278e-17f, + 5.811860852513058267e-05f, + 1.161083951789106388e-04f, + 1.739111186764226750e-04f, + 2.314687965911455317e-04f, + 2.887237634590489712e-04f, + 3.456187284925843007e-04f, + 4.020968328478077619e-04f, + 4.581017063869804681e-04f, + 5.135775238795969085e-04f, + 5.684690605867797827e-04f, + 6.227217471732920040e-04f, + 6.762817238922043568e-04f, + 7.290958939893588033e-04f, + 7.811119762742447376e-04f, + 8.322785568051721625e-04f, + 8.825451396379117895e-04f, + 9.318621965879654058e-04f, + 9.801812159573458638e-04f, + 1.027454750177579689e-03f, + 1.073636462323048543e-03f, + 1.118681171448473750e-03f, + 1.162544896706745696e-03f, + 1.205184900203477068e-03f, + 1.246559728547386213e-03f, + 1.286629253055807933e-03f, + 1.325354708576141497e-03f, + 1.362698730886437387e-03f, + 1.398625392638811350e-03f, + 1.433100237810905602e-03f, + 1.466090314633128333e-03f, + 1.497564206959974605e-03f, + 1.527492064055464794e-03f, + 1.555845628765160742e-03f, + 1.582598264047852974e-03f, + 1.607724977842486065e-03f, + 1.631202446246891868e-03f, + 1.653009034987472543e-03f, + 1.673124819160033650e-03f, + 1.691531601223876481e-03f, + 1.708212927233296189e-03f, + 1.723154101292263601e-03f, + 1.736342198219845579e-03f, + 1.747766074415657220e-03f, + 1.757416376916791541e-03f, + 1.765285550639219018e-03f, + 1.771367843798416159e-03f, + 1.775659311506234831e-03f, + 1.778157817542435270e-03f, + 1.778863034301330324e-03f, + 1.777776440915891046e-03f, + 1.774901319563383737e-03f, + 1.770242749958432374e-03f, + 1.763807602041371232e-03f, + 1.755604526871366649e-03f, + 1.745643945735682106e-03f, + 1.733938037488337493e-03f, + 1.720500724132964119e-03f, + 1.705347654666533944e-03f, + 1.688496187202536726e-03f, + 1.669965369393517111e-03f, + 1.649775917174820059e-03f, + 1.627950191853253523e-03f, + 1.604512175565338738e-03f, + 1.579487445132431861e-03f, + 1.552903144340421785e-03f, + 1.524787954674487571e-03f, + 1.495172064539795074e-03f, + 1.464087137001309370e-03f, + 1.431566276076835656e-03f, + 1.397643991619413597e-03f, + 1.362356162825694014e-03f, + 1.325740000408985944e-03f, + 1.287834007477042493e-03f, + 1.248677939155022100e-03f, + 1.208312760996174511e-03f, + 1.166780606223920529e-03f, + 1.124124731849302948e-03f, + 1.080389473709662384e-03f, + 1.035620200475557496e-03f, + 9.898632666728486313e-04f, + 9.431659647690965754e-04f, + 8.955764763732448116e-04f, + 8.471438225995464935e-04f, + 7.979178136459807611e-04f, + 7.479489976393288025e-04f, + 6.972886087997711303e-04f, + 6.459885149773112378e-04f, + 5.941011646141058575e-04f, + 5.416795331870154695e-04f, + 4.887770691848273815e-04f, + 4.354476396749826271e-04f, + 3.817454755153243395e-04f, + 3.277251162670002699e-04f, + 2.734413548635745875e-04f, + 2.189491820928326409e-04f, + 1.643037309479273775e-04f, + 1.095602209032437102e-04f, + 5.477390217168007973e-05f, + 0.000000000000000000e+00f, + -5.470634094252695156e-05f, + -1.092901120256077629e-04f, + -1.636964959141602542e-04f, + -2.178709215633056469e-04f, + -2.717591188977905368e-04f, + -3.253071731207118249e-04f, + -3.784615785968173970e-04f, + -4.311692922574608179e-04f, + -4.833777864735189634e-04f, + -5.350351013432206020e-04f, + -5.860898963437366797e-04f, + -6.364915012948296367e-04f, + -6.861899665835708047e-04f, + -7.351361126015605119e-04f, + -7.832815783443825139e-04f, + -8.305788691267564604e-04f, + -8.769814033650232248e-04f, + -9.224435583820854738e-04f, + -9.669207151891035966e-04f, + -1.010369302200565247e-03f, + -1.052746837839338510e-03f, + -1.094011971990893574e-03f, + -1.134124526265950332e-03f, + -1.173045533032109934e-03f, + -1.210737273177340265e-03f, + -1.247163312568430474e-03f, + -1.282288537169006893e-03f, + -1.316079186783988613e-03f, + -1.348502887397804448e-03f, + -1.379528682075299327e-03f, + -1.409127060396503806e-03f, + -1.437269986396952099e-03f, + -1.463930924987541645e-03f, + -1.489084866828790932e-03f, + -1.512708351636820334e-03f, + -1.534779489899245307e-03f, + -1.555277982980894256e-03f, + -1.574185141601471948e-03f, + -1.591483902668316052e-03f, + -1.607158844449279840e-03f, + -1.621196200072613954e-03f, + -1.633583869342330195e-03f, + -1.644311428859175465e-03f, + -1.653370140439019498e-03f, + -1.660752957822507871e-03f, + -1.666454531671149753e-03f, + -1.670471212846983723e-03f, + -1.672801053974688886e-03f, + -1.673443809286669515e-03f, + -1.672400932753375074e-03f, + -1.669675574502914881e-03f, + -1.665272575535695033e-03f, + -1.659198460741494619e-03f, + -1.651461430228174168e-03f, + -1.642071348972851856e-03f, + -1.631039734807969606e-03f, + -1.618379744756649665e-03f, + -1.604106159732930550e-03f, + -1.588235367624443381e-03f, + -1.570785344776701219e-03f, + -1.551775635899458553e-03f, + -1.531227332417528422e-03f, + -1.509163049289567434e-03f, + -1.485606900320671090e-03f, + -1.460584471994783983e-03f, + -1.434122795855729757e-03f, + -1.406250319466170913e-03f, + -1.376996875975918010e-03f, + -1.346393652331567652e-03f, + -1.314473156161391357e-03f, + -1.281269181370805988e-03f, + -1.246816772484174701e-03f, + -1.211152187770746713e-03f, + -1.174312861193657241e-03f, + -1.136337363221307049e-03f, + -1.097265360542288778e-03f, + -1.057137574726171045e-03f, + -1.015995739872469503e-03f, + -9.738825592923504131e-04f, + -9.308416612674603454e-04f, + -8.869175539322839185e-04f, + -8.421555793258690996e-04f, + -7.966018666606091347e-04f, + -7.503032848565528582e-04f, + -7.033073943892899100e-04f, + -6.556623985011526476e-04f, + -6.074170938261656567e-04f, + -5.586208204781806371e-04f, + -5.093234116545103949e-04f, + -4.595751428051017724e-04f, + -4.094266804203762987e-04f, + -3.589290304887579673e-04f, + -3.081334866766899275e-04f, + -2.570915782841462450e-04f, + -2.058550180275716367e-04f, + -1.544756497035134832e-04f, + -1.030053957862678347e-04f, + -5.149620501158499536e-05f, + -2.384103929205831118e-17f, + 5.143137502784089743e-05f, + 1.027462063910287337e-04f, + 1.538929628910742572e-04f, + 2.048203475057252935e-04f, + 2.554773487812054080e-04f, + 3.058132918724349066e-04f, + 3.557778891797814462e-04f, + 4.053212905313948854e-04f, + 4.543941328619231237e-04f, + 5.029475893377426772e-04f, + 5.509334178794880440e-04f, + 5.983040090345575221e-04f, + 6.450124331513995514e-04f, + 6.910124868096819382e-04f, + 7.362587384591508678e-04f, + 7.807065732238670707e-04f, + 8.243122368263766566e-04f, + 8.670328785894033810e-04f, + 9.088265934721979824e-04f, + 9.496524631011158801e-04f, + 9.894705957539746879e-04f, + 1.028242165258874252e-03f, + 1.065929448770301484e-03f, + 1.102495863385499807e-03f, + 1.137906001565360849e-03f, + 1.172125665326259570e-03f, + 1.205121899169577957e-03f, + 1.236863021717049538e-03f, + 1.267318656022278301e-03f, + 1.296459758529015880e-03f, + 1.324258646649080235e-03f, + 1.350689024933432675e-03f, + 1.375726009812287777e-03f, + 1.399346152880900310e-03f, + 1.421527462709165374e-03f, + 1.442249425155372978e-03f, + 1.461493022165247842e-03f, + 1.479240749039111274e-03f, + 1.495476630152138510e-03f, + 1.510186233113277763e-03f, + 1.523356681351052851e-03f, + 1.534976665115079944e-03f, + 1.545036450884612481e-03f, + 1.553527889176402723e-03f, + 1.560444420746071904e-03f, + 1.565781081178877019e-03f, + 1.569534503867175447e-03f, + 1.571702921373700117e-03f, + 1.572286165181262111e-03f, + 1.571285663831225405e-03f, + 1.568704439454675749e-03f, + 1.564547102701767346e-03f, + 1.558819846076479193e-03f, + 1.551530435685405255e-03f, + 1.542688201411057929e-03f, + 1.532304025521471613e-03f, + 1.520390329729599246e-03f, + 1.506961060717611732e-03f, + 1.492031674142519585e-03f, + 1.475619117141234709e-03f, + 1.457741809354577093e-03f, + 1.438419622491405236e-03f, + 1.417673858455001249e-03f, + 1.395527226055938864e-03f, + 1.372003816336560527e-03f, + 1.347129076533619364e-03f, + 1.320929782707246439e-03f, + 1.293434011065339607e-03f, + 1.264671108014265698e-03f, + 1.234671658967309224e-03f, + 1.203467455944029225e-03f, + 1.171091463995042447e-03f, + 1.137577786487074328e-03f, + 1.102961629284945943e-03f, + 1.067279263868331236e-03f, + 1.030567989421257843e-03f, + 9.928660939341588630e-04f, + 9.542128143592528474e-04f, + 9.146482958600143324e-04f, + 8.742135501974977914e-04f, + 8.329504132961628631e-04f, + 7.909015020336008844e-04f, + 7.481101702980445106e-04f, + 7.046204643591989737e-04f, + 6.604770775986386951e-04f, + 6.157253046455315841e-04f, + 5.704109949650640419e-04f, + 5.245805059471973005e-04f, + 4.782806555435268323e-04f, + 4.315586745004174507e-04f, + 3.844621582371941467e-04f, + 3.370390184187921768e-04f, + 2.893374342713311603e-04f, + 2.414058036903930554e-04f, + 1.932926941919554573e-04f, + 1.450467937548224429e-04f, + 9.671686160493662174e-05f, + 4.835167899075133784e-05f, + 0.000000000000000000e+00f, + -4.828949753345398863e-05f, + -9.646826098282474608e-05f, + -1.444879116922577944e-04f, + -1.923002935030318679e-04f, + -2.398575209931877504e-04f, + -2.871120273819045897e-04f, + -3.340166120515270496e-04f, + -3.805244876394365660e-04f, + -4.265893266524579085e-04f, + -4.721653075582231689e-04f, + -5.172071603070152717e-04f, + -5.616702112394265662e-04f, + -6.055104273346537417e-04f, + -6.486844597567101994e-04f, + -6.911496866543188596e-04f, + -7.328642551735467438e-04f, + -7.737871226406448826e-04f, + -8.138780968755867382e-04f, + -8.530978755963916508e-04f, + -8.914080848753665014e-04f, + -9.287713166103488344e-04f, + -9.651511649741133930e-04f, + -1.000512261806224762e-03f, + -1.034820310913592929e-03f, + -1.068042121246285314e-03f, + -1.100145638916268705e-03f, + -1.131099978028938862e-03f, + -1.160875450297352155e-03f, + -1.189443593411230841e-03f, + -1.216777198133303000e-03f, + -1.242850334097847032e-03f, + -1.267638374286776453e-03f, + -1.291118018160179043e-03f, + -1.313267313420094689e-03f, + -1.334065676387146760e-03f, + -1.353493910971104207e-03f, + -1.371534226218442407e-03f, + -1.388170252420803863e-03f, + -1.403387055769956442e-03f, + -1.417171151546464019e-03f, + -1.429510515830663278e-03f, + -1.440394595726007159e-03f, + -1.449814318086319878e-03f, + -1.457762096740287039e-03f, + -1.464231838207676094e-03f, + -1.469218945903567495e-03f, + -1.472720322828254208e-03f, + -1.474734372742105958e-03f, + -1.475260999826186192e-03f, + -1.474301606830856525e-03f, + -1.471859091716282196e-03f, + -1.467937842790105170e-03f, + -1.462543732349215952e-03f, + -1.455684108833884020e-03f, + -1.447367787504157772e-03f, + -1.437605039649846777e-03f, + -1.426407580346835237e-03f, + -1.413788554773978299e-03f, + -1.399762523106214953e-03f, + -1.384345444001102527e-03f, + -1.367554656697077568e-03f, + -1.349408861743359471e-03f, + -1.329928100382799265e-03f, + -1.309133732610135619e-03f, + -1.287048413929449148e-03f, + -1.263696070835965916e-03f, + -1.239101875048799527e-03f, + -1.213292216521904285e-03f, + -1.186294675262172631e-03f, + -1.158137991984896625e-03f, + -1.128852037637259912e-03f, + -1.098467781822281067e-03f, + -1.067017260156693896e-03f, + -1.034533540596639092e-03f, + -1.001050688766642752e-03f, + -9.666037323284525605e-04f, + -9.312286244263419952e-04f, + -8.949622062474039356e-04f, + -8.578421687353971186e-04f, + -8.199070134983350812e-04f, + -7.811960129497022435e-04f, + -7.417491697247534464e-04f, + -7.016071754140860680e-04f, + -6.608113686563731959e-04f, + -6.194036926336412294e-04f, + -5.774266520130750657e-04f, + -5.349232693788336665e-04f, + -4.919370411988257261e-04f, + -4.485118933715837031e-04f, + -4.046921363984502134e-04f, + -3.605224202266125153e-04f, + -3.160476888090664981e-04f, + -2.713131344280844096e-04f, + -2.263641518278198237e-04f, + -1.812462922031631745e-04f, + -1.360052170909635560e-04f, + -9.068665221087721649e-05f, + -4.533634130168751519e-05f, + -1.119205495635177410e-17f, + 4.527673019179228291e-05f, + 9.044832780293992876e-05f, + 1.354694371103048339e-04f, + 1.802949136270320799e-04f, + 2.248798693188531084e-04f, + 2.691797175024917524e-04f, + 3.131502173809525350e-04f, + 3.567475181720213820e-04f, + 3.999282027853717433e-04f, + 4.426493310053094079e-04f, + 4.848684821356317727e-04f, + 5.265437970650557525e-04f, + 5.676340197111919006e-04f, + 6.080985378017700815e-04f, + 6.478974229535403896e-04f, + 6.869914700090091119e-04f, + 7.253422355920121755e-04f, + 7.629120758449196762e-04f, + 7.996641833101642005e-04f, + 8.355626229197331365e-04f, + 8.705723670581514643e-04f, + 9.046593296642918905e-04f, + 9.377903993392572779e-04f, + 9.699334714277904395e-04f, + 1.001057479042750638e-03f, + 1.031132423002631329e-03f, + 1.060129400652862165e-03f, + 1.088020633543997301e-03f, + 1.114779493940055944e-03f, + 1.140380530131902001e-03f, + 1.164799490531472428e-03f, + 1.188013346524613607e-03f, + 1.210000314060736106e-03f, + 1.230739873959466437e-03f, + 1.250212790915166154e-03f, + 1.268401131182280697e-03f, + 1.285288278925214404e-03f, + 1.300858951217885064e-03f, + 1.315099211679921550e-03f, + 1.327996482737379275e-03f, + 1.339539556497333726e-03f, + 1.349718604227470977e-03f, + 1.358525184432789320e-03f, + 1.365952249523105658e-03f, + 1.371994151066654273e-03f, + 1.376646643626202498e-03f, + 1.379906887175804363e-03f, + 1.381773448097536276e-03f, + 1.382246298759191167e-03f, + 1.381326815675158054e-03f, + 1.379017776254279782e-03f, + 1.375323354139781646e-03f, + 1.370249113147892998e-03f, + 1.363801999813117269e-03f, + 1.355990334549495588e-03f, + 1.346823801438608650e-03f, + 1.336313436656531026e-03f, + 1.324471615553049963e-03f, + 1.311312038398147750e-03f, + 1.296849714811698206e-03f, + 1.281100946894079716e-03f, + 1.264083311076190895e-03f, + 1.245815638708950906e-03f, + 1.226317995413717370e-03f, + 1.205611659215808989e-03f, + 1.183719097484903357e-03f, + 1.160663942707366959e-03f, + 1.136470967116147033e-03f, + 1.111166056205482996e-03f, + 1.084776181158849176e-03f, + 1.057329370218964941e-03f, + 1.028854679030497465e-03f, + 9.993821599864546878e-04f, + 9.689428306109160735e-04f, + 9.375686410107936589e-04f, + 9.052924404308006949e-04f, + 8.721479429470286020e-04f, + 8.381696923342349089e-04f, + 8.033930261436254697e-04f, + 7.678540390285455838e-04f, + 7.315895453557641741e-04f, + 6.946370411414883386e-04f, + 6.570346653508382520e-04f, + 6.188211606008807691e-04f, + 5.800358333080047517e-04f, + 5.407185133199405181e-04f, + 5.009095130741225872e-04f, + 4.606495863245328032e-04f, + 4.199798864786004988e-04f, + 3.789419245869958758e-04f, + 3.375775270294791236e-04f, + 2.959287929392034368e-04f, + 2.540380514093228668e-04f, + 2.119478185249197815e-04f, + 1.697007542644115945e-04f, + 1.273396193133593797e-04f, + 8.490723183468631443e-05f, + 4.244642423929934338e-05f, + 2.489132717092975244e-17f, + -4.238930944730621606e-05f, + -8.467888767193799395e-05f, + -1.268262760429604032e-04f, + -1.687892163075062216e-04f, + -2.105256929093874817e-04f, + -2.519939750065616508e-04f, + -2.931526581448565673e-04f, + -3.339607055468352646e-04f, + -3.743774889740940815e-04f, + -4.143628291230573081e-04f, + -4.538770355138195783e-04f, + -4.928809458321817922e-04f, + -5.313359646865749471e-04f, + -5.692041017412580173e-04f, + -6.064480091878560880e-04f, + -6.430310185189792816e-04f, + -6.789171765674388570e-04f, + -7.140712807754315923e-04f, + -7.484589136597800171e-04f, + -7.820464764390349256e-04f, + -8.148012217900297898e-04f, + -8.466912857015470575e-04f, + -8.776857183947638259e-04f, + -9.077545142802680937e-04f, + -9.368686409224388084e-04f, + -9.650000669841776822e-04f, + -9.921217891239340544e-04f, + -1.018207857820698729e-03f, + -1.043233402101169816e-03f, + -1.067174653146455267e-03f, + -1.090008966755562705e-03f, + -1.111714844644859455e-03f, + -1.132271954563242268e-03f, + -1.151661149204728438e-03f, + -1.169864483900832875e-03f, + -1.186865233076385287e-03f, + -1.202647905454177829e-03f, + -1.217198257994649147e-03f, + -1.230503308558112416e-03f, + -1.242551347278776424e-03f, + -1.253331946640669171e-03f, + -1.262835970246984230e-03f, + -1.271055580275981447e-03f, + -1.277984243617538056e-03f, + -1.283616736686040089e-03f, + -1.287949148906458816e-03f, + -1.290978884872014988e-03f, + -1.292704665172990245e-03f, + -1.293126525897621585e-03f, + -1.292245816807471729e-03f, + -1.290065198190826342e-03f, + -1.286588636399150143e-03f, + -1.281821398072865732e-03f, + -1.275770043064026376e-03f, + -1.268442416064888972e-03f, + -1.259847636952461181e-03f, + -1.249996089860607850e-03f, + -1.238899410992382174e-03f, + -1.226570475186708736e-03f, + -1.213023381254520064e-03f, + -1.198273436100851744e-03f, + -1.182337137650689993e-03f, + -1.165232156597218035e-03f, + -1.146977316992536366e-03f, + -1.127592575702190524e-03f, + -1.107099000745486849e-03f, + -1.085518748545065719e-03f, + -1.062875040110370555e-03f, + -1.039192136180123365e-03f, + -1.014495311350580541e-03f, + -9.888108272168318318e-04f, + -9.621659045558878355e-04f, + -9.345886945805340160e-04f, + -9.061082492943768954e-04f, + -8.767544909794978232e-04f, + -8.465581808478967385e-04f, + -8.155508868906216624e-04f, + -7.837649509569552704e-04f, + -7.512334550985514227e-04f, + -7.179901872135618750e-04f, + -6.840696060258972568e-04f, + -6.495068054360894584e-04f, + -6.143374782808354653e-04f, + -5.785978795380620956e-04f, + -5.423247890156327302e-04f, + -5.055554735623122827e-04f, + -4.683276488392193763e-04f, + -4.306794406911591301e-04f, + -3.926493461576842912e-04f, + -3.542761941630523837e-04f, + -3.155991059257000266e-04f, + -2.766574551271435236e-04f, + -2.374908278813562743e-04f, + -1.981389825446179249e-04f, + -1.586418094068897395e-04f, + -1.190392903058594805e-04f, + -7.937145820385292140e-05f, + -3.967835676875259741e-05f, + 0.000000000000000000e+00f, + 3.962366806029014220e-05f, + 7.915281349029238485e-05f, + 1.185477524848153186e-04f, + 1.577689911456342596e-04f, + 1.967772650253714708e-04f, + 2.355335783858113143e-04f, + 2.739992431308870902e-04f, + 3.121359173761859267e-04f, + 3.499056436162521094e-04f, + 3.872708864514444720e-04f, + 4.241945698375216493e-04f, + 4.606401138207244462e-04f, + 4.965714707217308132e-04f, + 5.319531607333346764e-04f, + 5.667503068964558190e-04f, + 6.009286694197791883e-04f, + 6.344546793099163770e-04f, + 6.672954712786205531e-04f, + 6.994189158952225562e-04f, + 7.307936509524349481e-04f, + 7.613891120155314102e-04f, + 7.911755621249407519e-04f, + 8.201241206232327396e-04f, + 8.482067910791271214e-04f, + 8.753964882812977381e-04f, + 9.016670642761047145e-04f, + 9.269933334240764138e-04f, + 9.513510964518079316e-04f, + 9.747171634758099818e-04f, + 9.970693759769062425e-04f, + 1.018386627704094679e-03f, + 1.038648884488686591e-03f, + 1.057837202950029669e-03f, + 1.075933748075338925e-03f, + 1.092921809657792587e-03f, + 1.108785817577722472e-03f, + 1.123511355912956439e-03f, + 1.137085175865973829e-03f, + 1.149495207496349907e-03f, + 1.160730570248186353e-03f, + 1.170781582263828594e-03f, + 1.179639768475975034e-03f, + 1.187297867471814568e-03f, + 1.193749837123847697e-03f, + 1.198990858983596747e-03f, + 1.203017341435374133e-03f, + 1.205826921608644554e-03f, + 1.207418466048858175e-03f, + 1.207792070147742499e-03f, + 1.206949056335355347e-03f, + 1.204891971037466616e-03f, + 1.201624580403049501e-03f, + 1.197151864807891562e-03f, + 1.191480012141583498e-03f, + 1.184616409886339811e-03f, + 1.176569635997314197e-03f, + 1.167349448595342331e-03f, + 1.156966774484061893e-03f, + 1.145433696504678973e-03f, + 1.132763439742820021e-03f, + 1.118970356602857433e-03f, + 1.104069910766385543e-03f, + 1.088078660052710107e-03f, + 1.071014238199964868e-03f, + 1.052895335586819490e-03f, + 1.033741678915853354e-03f, + 1.013574009880266035e-03f, + 9.924140628370767443e-04f, + 9.702845415105564161e-04f, + 9.472090947510056159e-04f, + 9.232122913743140771e-04f, + 8.983195941091211278e-04f, + 8.725573326793036348e-04f, + 8.459526760497619287e-04f, + 8.185336038648948062e-04f, + 7.903288771097757327e-04f, + 7.613680080244982808e-04f, + 7.316812293033188221e-04f, + 7.012994626104158578e-04f, + 6.702542864450650520e-04f, + 6.385779033898540073e-04f, + 6.063031067753177393e-04f, + 5.734632467957093789e-04f, + 5.400921961110872679e-04f, + 5.062243149706446149e-04f, + 4.718944158933642270e-04f, + 4.371377279425392405e-04f, + 4.019898606301749847e-04f, + 3.664867674887073131e-04f, + 3.306647093468514844e-04f, + 2.945602173475719322e-04f, + 2.582100557452125193e-04f, + 2.216511845199241977e-04f, + 1.849207218476427064e-04f, + 1.480559064630949787e-04f, + 1.110940599542368509e-04f, + 7.407254902655125068e-05f, + 3.702874777472067589e-05f, + 1.371254292486084993e-17f, + -3.697641838836769948e-05f, + -7.386333685080383616e-05f, + -1.106237275354719183e-04f, + -1.472207424002393370e-04f, + -1.836177501005376326e-04f, + -2.197783726069668013e-04f, + -2.556665215157765151e-04f, + -2.912464340157351313e-04f, + -3.264827084761888032e-04f, + -3.613403396206332991e-04f, + -3.957847532506383946e-04f, + -4.297818404862966193e-04f, + -4.632979914890506846e-04f, + -4.963001286333401738e-04f, + -5.287557390949833508e-04f, + -5.606329068237270391e-04f, + -5.919003438689767176e-04f, + -6.225274210275311962e-04f, + -6.524841977839308848e-04f, + -6.817414515139428016e-04f, + -7.102707059225399746e-04f, + -7.380442586892487162e-04f, + -7.650352082938549928e-04f, + -7.912174799963587243e-04f, + -8.165658509465838124e-04f, + -8.410559743992581695e-04f, + -8.646644030108421603e-04f, + -8.873686111969257854e-04f, + -9.091470165279773525e-04f, + -9.299790001438900484e-04f, + -9.498449261678874270e-04f, + -9.687261601014614341e-04f, + -9.866050861835819630e-04f, + -1.003465123697943424e-03f, + -1.019290742213164363e-03f, + -1.034067475742384131e-03f, + -1.047781935809330650e-03f, + -1.060421823409143580e-03f, + -1.071975939853697006e-03f, + -1.082434196491879799e-03f, + -1.091787623296736802e-03f, + -1.100028376312290647e-03f, + -1.107149743954318269e-03f, + -1.113146152160276754e-03f, + -1.118013168384754657e-03f, + -1.121747504438212967e-03f, + -1.124347018167691677e-03f, + -1.125810713979439898e-03f, + -1.126138742204658245e-03f, + -1.125332397310586279e-03f, + -1.123394114960401657e-03f, + -1.120327467926549893e-03f, + -1.116137160863255560e-03f, + -1.110829023945101137e-03f, + -1.104410005379749494e-03f, + -1.096888162803940974e-03f, + -1.088272653573009452e-03f, + -1.078573723955405161e-03f, + -1.067802697244547546e-03f, + -1.055971960801616169e-03f, + -1.043094952043956310e-03f, + -1.029186143394582309e-03f, + -1.014261026209532400e-03f, + -9.983360937008427163e-04f, + -9.814288228736027086e-04f, + -9.635576554969104172e-04f, + -9.447419781291415113e-04f, + -9.250021012192831361e-04f, + -9.043592373064512696e-04f, + -8.828354783409939847e-04f, + -8.604537721515002468e-04f, + -8.372378980823497055e-04f, + -8.132124418277322840e-04f, + -7.884027694888517653e-04f, + -7.628350008812852896e-04f, + -7.365359821204960078e-04f, + -7.095332575148247155e-04f, + -6.818550407942288718e-04f, + -6.535301857058335630e-04f, + -6.245881560060952261e-04f, + -5.950589948810114296e-04f, + -5.649732938262623386e-04f, + -5.343621610190059943e-04f, + -5.032571892141756960e-04f, + -4.716904231986256981e-04f, + -4.396943268360438742e-04f, + -4.073017497369382724e-04f, + -3.745458935874993508e-04f, + -3.414602781722681792e-04f, + -3.080787071247825435e-04f, + -2.744352334413967037e-04f, + -2.405641247936734649e-04f, + -2.064998286741144789e-04f, + -1.722769374108738480e-04f, + -1.379301530872341895e-04f, + -1.034942524008109811e-04f, + -6.900405149830530008e-05f, + -3.449437082158992495e-05f, + 0.000000000000000000e+00f, + 3.444433717537312282e-05f, + 6.880401766040344078e-05f, + 1.030445539143494854e-04f, + 1.371316284694892038e-04f, + 1.710311282792226217e-04f, + 2.047091788099896501e-04f, + 2.381321778435391604e-04f, + 2.712668289555900309e-04f, + 3.040801746373052975e-04f, + 3.365396290272290244e-04f, + 3.686130102209533182e-04f, + 4.002685721262641268e-04f, + 4.314750358328316138e-04f, + 4.622016204652085376e-04f, + 4.924180734885345943e-04f, + 5.220947004376862242e-04f, + 5.512023940402758712e-04f, + 5.797126627053133911e-04f, + 6.075976583493116747e-04f, + 6.348302035331886400e-04f, + 6.613838178833868642e-04f, + 6.872327437713459134e-04f, + 7.123519712269649109e-04f, + 7.367172620617903596e-04f, + 7.603051731785161974e-04f, + 7.830930790451201724e-04f, + 8.050591933112499331e-04f, + 8.261825895472138482e-04f, + 8.464432210854224304e-04f, + 8.658219399455064280e-04f, + 8.843005148257124162e-04f, + 9.018616481435636715e-04f, + 9.184889921098693746e-04f, + 9.341671638215605540e-04f, + 9.488817593593959444e-04f, + 9.626193668776509334e-04f, + 9.753675786743276274e-04f, + 9.871150022309649764e-04f, + 9.978512702125698873e-04f, + 1.007567049418917103e-03f, + 1.016254048679934505e-03f, + 1.023905025688631211e-03f, + 1.030513792766163958e-03f, + 1.036075221554958858e-03f, + 1.040585246636590612e-03f, + 1.044040868072351400e-03f, + 1.046440152865581131e-03f, + 1.047782235345830204e-03f, + 1.048067316476006608e-03f, + 1.047296662084868128e-03f, + 1.045472600028134798e-03f, + 1.042598516282698499e-03f, + 1.038678849979428548e-03f, + 1.033719087381135097e-03f, + 1.027725754813292765e-03f, + 1.020706410556256006e-03f, + 1.012669635708591783e-03f, + 1.003625024032280683e-03f, + 9.935831707915917296e-04f, + 9.825556605982765750e-04f, + 9.705550542768091827e-04f, + 9.575948747645024592e-04f, + 9.436895920619294822e-04f, + 9.288546072504160834e-04f, + 9.131062355939434513e-04f, + 8.964616887440624146e-04f, + 8.789390560668727381e-04f, + 8.605572851122642768e-04f, + 8.413361612465680012e-04f, + 8.212962864701133696e-04f, + 8.004590574423870028e-04f, + 7.788466427383010891e-04f, + 7.564819593593443900e-04f, + 7.333886485245473975e-04f, + 7.095910507669888961e-04f, + 6.851141803613563976e-04f, + 6.599836991102931479e-04f, + 6.342258895159663982e-04f, + 6.078676273653686388e-04f, + 5.809363537579391706e-04f, + 5.534600466042048465e-04f, + 5.254671916251264134e-04f, + 4.969867528824211626e-04f, + 4.680481428698100464e-04f, + 4.386811921962611408e-04f, + 4.089161188926386807e-04f, + 3.787834973728029320e-04f, + 3.483142270813974271e-04f, + 3.175395008601156806e-04f, + 2.864907730651890965e-04f, + 2.551997274681527816e-04f, + 2.236982449728073510e-04f, + 1.920183711814943037e-04f, + 1.601922838431261954e-04f, + 1.282522602162407851e-04f, + 9.623064438038904595e-05f, + 6.415981452841493812e-05f, + 3.207215027289962711e-05f, + 0.000000000000000000e+00f, + -3.202435169696419165e-05f, + -6.396871647107672993e-05f, + -9.580103453013783627e-05f, + -1.274894067670554485e-04f, + -1.590021266806003833e-04f, + -1.903077120544014096e-04f, + -2.213749363623242509e-04f, + -2.521728598694509757e-04f, + -2.826708603974881218e-04f, + -3.128386637238008165e-04f, + -3.426463735844534645e-04f, + -3.720645012513128301e-04f, + -4.010639946537739552e-04f, + -4.296162670168992745e-04f, + -4.576932249873889727e-04f, + -4.852672962200506594e-04f, + -5.123114563973639067e-04f, + -5.387992556561681809e-04f, + -5.647048443954880668e-04f, + -5.900029984401524482e-04f, + -6.146691435362195647e-04f, + -6.386793791542513593e-04f, + -6.620105015772862009e-04f, + -6.846400262516423845e-04f, + -7.065462093789202968e-04f, + -7.277080687284316705e-04f, + -7.481054036504530087e-04f, + -7.677188142710961042e-04f, + -7.865297198508461448e-04f, + -8.045203762893993540e-04f, + -8.216738927602709611e-04f, + -8.379742474599812278e-04f, + -8.534063024570928127e-04f, + -8.679558176273523317e-04f, + -8.816094636625075804e-04f, + -8.943548341408386320e-04f, + -9.061804566487988806e-04f, + -9.170758029437478922e-04f, + -9.270312981492120604e-04f, + -9.360383289747114437e-04f, + -9.440892509532578013e-04f, + -9.511773946908641834e-04f, + -9.572970711231403289e-04f, + -9.624435757751192066e-04f, + -9.666131920216366113e-04f, + -9.698031933463969285e-04f, + -9.720118445989208052e-04f, + -9.732384022497203710e-04f, + -9.734831136448424821e-04f, + -9.727472152621121065e-04f, + -9.710329299722829204e-04f, + -9.683434633094111085e-04f, + -9.646829987556522013e-04f, + -9.600566920467877531e-04f, + -9.544706645056394391e-04f, + -9.479319954115860043e-04f, + -9.404487134153821952e-04f, + -9.320297870093062660e-04f, + -9.226851140636999115e-04f, + -9.124255104419481694e-04f, + -9.012626977066420320e-04f, + -8.892092899308199835e-04f, + -8.762787796288336881e-04f, + -8.624855228225505183e-04f, + -8.478447232590492723e-04f, + -8.323724157971091513e-04f, + -8.160854489806475048e-04f, + -7.990014668176755822e-04f, + -7.811388897844821115e-04f, + -7.625168950755145496e-04f, + -7.431553961197853112e-04f, + -7.230750213856750215e-04f, + -7.022970924967909898e-04f, + -6.808436016816696431e-04f, + -6.587371885813887371e-04f, + -6.360011164391399848e-04f, + -6.126592476972289288e-04f, + -5.887360190265250072e-04f, + -5.642564158146420091e-04f, + -5.392459461393457349e-04f, + -5.137306142544784474e-04f, + -4.877368936155090711e-04f, + -4.612916994728182745e-04f, + -4.344223610612315406e-04f, + -4.071565934140700962e-04f, + -3.795224688310699706e-04f, + -3.515483880292340994e-04f, + -3.232630510065746267e-04f, + -2.946954276481456654e-04f, + -2.658747281046207941e-04f, + -2.368303729738942764e-04f, + -2.075919633156370829e-04f, + -1.781892505295539549e-04f, + -1.486521061281701210e-04f, + -1.190104914343625921e-04f, + -8.929442723454692366e-05f, + -5.953396341846094902e-05f, + -2.975914863569874771e-05f, + -1.469383061752921166e-17f, + 2.971352712842046073e-05f, + 5.935156925200977569e-05f, + 8.888438470625297655e-05f, + 1.182823834615285115e-04f, + 1.475161567260801273e-04f, + 1.765565063211114430e-04f, + 2.053744737984555227e-04f, + 2.339413692715925134e-04f, + 2.622287999318306112e-04f, + 2.902086982211098056e-04f, + 3.178533496333097114e-04f, + 3.451354201170366942e-04f, + 3.720279830524620595e-04f, + 3.985045457759202716e-04f, + 4.245390756258103919e-04f, + 4.501060254847104552e-04f, + 4.751803587924769172e-04f, + 4.997375740056823846e-04f, + 5.237537284800026236e-04f, + 5.472054617520811680e-04f, + 5.700700181981503386e-04f, + 5.923252690478518056e-04f, + 6.139497337318547063e-04f, + 6.349226005425641405e-04f, + 6.552237465884745531e-04f, + 6.748337570230266303e-04f, + 6.937339435292449487e-04f, + 7.119063620434466517e-04f, + 7.293338297005069531e-04f, + 7.459999409853247188e-04f, + 7.618890830752056463e-04f, + 7.769864503587980151e-04f, + 7.912780581184908910e-04f, + 8.047507553635035353e-04f, + 8.173922368022044829e-04f, + 8.291910539426864280e-04f, + 8.401366253119868770e-04f, + 8.502192457848813112e-04f, + 8.594300950141066115e-04f, + 8.677612449551008961e-04f, + 8.752056664789573028e-04f, + 8.817572350682475763e-04f, + 8.874107355915474612e-04f, + 8.921618661531745048e-04f, + 8.960072410156486164e-04f, + 8.989443925934634261e-04f, + 9.009717725175072972e-04f, + 9.020887517705425190e-04f, + 9.022956198950072941e-04f, + 9.015935832754222229e-04f, + 8.999847624985231375e-04f, + 8.974721887952514209e-04f, + 8.940597995695863213e-04f, + 8.897524330201562462e-04f, + 8.845558218614805405e-04f, + 8.784765861525543331e-04f, + 8.715222252413793759e-04f, + 8.637011088350353069e-04f, + 8.550224672055297846e-04f, + 8.454963805427627172e-04f, + 8.351337674665857812e-04f, + 8.239463727109863026e-04f, + 8.119467539939648334e-04f, + 7.991482680876762579e-04f, + 7.855650561042518912e-04f, + 7.712120280131833138e-04f, + 7.561048464071653402e-04f, + 7.402599095340949053e-04f, + 7.236943336132475825e-04f, + 7.064259344547092496e-04f, + 6.884732084018442772e-04f, + 6.698553126167958562e-04f, + 6.505920447301977031e-04f, + 6.307038218764186291e-04f, + 6.102116591367832835e-04f, + 5.891371474128742191e-04f, + 5.675024307539662440e-04f, + 5.453301831613886286e-04f, + 5.226435848948802945e-04f, + 4.994662983050689653e-04f, + 4.758224432173879066e-04f, + 4.517365718931811943e-04f, + 4.272336435935402852e-04f, + 4.023389987724907877e-04f, + 3.770783329259057943e-04f, + 3.514776701234272852e-04f, + 3.255633362501970246e-04f, + 2.993619319860350001e-04f, + 2.729003055499868075e-04f, + 2.462055252376792419e-04f, + 2.193048517797492180e-04f, + 1.922257105497324930e-04f, + 1.649956636492767566e-04f, + 1.376423818992599316e-04f, + 1.101936167654500256e-04f, + 8.267717224668583544e-05f, + 5.512087675440251894e-05f, + 2.755255501160192006e-05f, + 0.000000000000000000e+00f, + -2.750905501689023422e-05f, + -5.494696436636345655e-05f, + -8.228619770668268139e-05f, + -1.094993676073878112e-04f, + -1.365592569419782647e-04f, + -1.634388460653853027e-04f, + -1.901113397495802181e-04f, + -2.165501938502928923e-04f, + -2.427291416781312899e-04f, + -2.686222200484022333e-04f, + -2.942037949834695591e-04f, + -3.194485870425304262e-04f, + -3.443316962534629451e-04f, + -3.688286266226424733e-04f, + -3.929153101984506676e-04f, + -4.165681306646761548e-04f, + -4.397639464411628790e-04f, + -4.624801132689337598e-04f, + -4.846945062576402791e-04f, + -5.063855413743057745e-04f, + -5.275321963523644251e-04f, + -5.481140310006175909e-04f, + -5.681112068929672181e-04f, + -5.875045064196726674e-04f, + -6.062753511821435647e-04f, + -6.244058197136283239e-04f, + -6.418786645088341578e-04f, + -6.586773283467862658e-04f, + -6.747859598912580702e-04f, + -6.901894285541135439e-04f, + -7.048733386080151741e-04f, + -7.188240425351924510e-04f, + -7.320286536001779053e-04f, + -7.444750576348447895e-04f, + -7.561519240253451084e-04f, + -7.670487158910010940e-04f, + -7.771556994460668971e-04f, + -7.864639525364079805e-04f, + -7.949653723436894259e-04f, + -8.026526822505372595e-04f, + -8.095194378612496173e-04f, + -8.155600321732297967e-04f, + -8.207696998952141061e-04f, + -8.251445209094316778e-04f, + -8.286814228754654961e-04f, + -8.313781829745840735e-04f, + -8.332334287941438105e-04f, + -8.342466383525489566e-04f, + -8.344181392661235552e-04f, + -8.337491070600727781e-04f, + -8.322415626266423810e-04f, + -8.298983688343719274e-04f, + -8.267232262932451212e-04f, + -8.227206682813439833e-04f, + -8.178960548394521293e-04f, + -8.122555660409656268e-04f, + -8.058061944451279162e-04f, + -7.985557367425892995e-04f, + -7.905127846029615362e-04f, + -7.816867147349541335e-04f, + -7.720876781703026525e-04f, + -7.617265887835813565e-04f, + -7.506151110607858345e-04f, + -7.387656471301075898e-04f, + -7.261913230692261566e-04f, + -7.129059745042091046e-04f, + -6.989241315155087344e-04f, + -6.842610028674840552e-04f, + -6.689324595785751861e-04f, + -6.529550178495424672e-04f, + -6.363458213682250285e-04f, + -6.191226230095402778e-04f, + -6.013037659503773147e-04f, + -5.829081642191303019e-04f, + -5.639552827005720349e-04f, + -5.444651166170623056e-04f, + -5.244581705078699748e-04f, + -5.039554367282136470e-04f, + -4.829783734907900630e-04f, + -4.615488824727865158e-04f, + -4.396892860113637874e-04f, + -4.174223039115742672e-04f, + -3.947710298905243330e-04f, + -3.717589076824774933e-04f, + -3.484097068291740662e-04f, + -3.247474981805008798e-04f, + -3.007966291308984577e-04f, + -2.765816986165605708e-04f, + -2.521275318992345573e-04f, + -2.274591551626225019e-04f, + -2.026017699469456171e-04f, + -1.775807274479320418e-04f, + -1.524215027065971577e-04f, + -1.271496687156270196e-04f, + -1.017908704690000349e-04f, + -7.637079898086366356e-05f, + -5.091516530030798363e-05f, + -2.544967454785041741e-05f, + 0.000000000000000000e+00f, + 2.540824275175630965e-05f, + 5.074952154213560791e-05f, + 7.599841324713188062e-05f, + 1.011296292473662763e-04f, + 1.261180407145145923e-04f, + 1.509387036954135824e-04f, + 1.755668839686425260e-04f, + 1.999780816492812915e-04f, + 2.241480555170535154e-04f, + 2.480528470440098191e-04f, + 2.716688040976286797e-04f, + 2.949726042963528197e-04f, + 3.179412779943405166e-04f, + 3.405522308726428231e-04f, + 3.627832661150276234e-04f, + 3.846126061465318354e-04f, + 4.060189139133383055e-04f, + 4.269813136835948837e-04f, + 4.474794113487838955e-04f, + 4.674933142057642490e-04f, + 4.870036502007597822e-04f, + 5.059915866164069404e-04f, + 5.244388481841380598e-04f, + 5.423277346042669565e-04f, + 5.596411374573758216e-04f, + 5.763625564908231172e-04f, + 5.924761152646927393e-04f, + 6.079665761428002836e-04f, + 6.228193546145188893e-04f, + 6.370205329341033923e-04f, + 6.505568730647005556e-04f, + 6.634158289153857567e-04f, + 6.755855578598123036e-04f, + 6.870549315261518814e-04f, + 6.978135458484613016e-04f, + 7.078517303707442540e-04f, + 7.171605567954273622e-04f, + 7.257318467687813622e-04f, + 7.335581788968564615e-04f, + 7.406328949860011826e-04f, + 7.469501055028914937e-04f, + 7.525046942499604482e-04f, + 7.572923222527377452e-04f, + 7.613094308564032336e-04f, + 7.645532440298472834e-04f, + 7.670217698761347402e-04f, + 7.687138013491711264e-04f, + 7.696289161771383436e-04f, + 7.697674759941319994e-04f, + 7.691306246821071795e-04f, + 7.677202859261749368e-04f, + 7.655391599869575776e-04f, + 7.625907196945825228e-04f, + 7.588792056696464167e-04f, + 7.544096207772237267e-04f, + 7.491877238207874951e-04f, + 7.432200224837051672e-04f, + 7.365137655266115572e-04f, + 7.290769342498153649e-04f, + 7.209182332305319723e-04f, + 7.120470803455674876e-04f, + 7.024735960906073294e-04f, + 6.922085922080986782e-04f, + 6.812635596364262705e-04f, + 6.696506557935362697e-04f, + 6.573826912090139371e-04f, + 6.444731155192746008e-04f, + 6.309360028408991924e-04f, + 6.167860365379857716e-04f, + 6.020384934000156665e-04f, + 5.867092272469688922e-04f, + 5.708146519793728339e-04f, + 5.543717240911742901e-04f, + 5.373979246641968867e-04f, + 5.199112408629773122e-04f, + 5.019301469495465393e-04f, + 4.834735848383831772e-04f, + 4.645609442115968056e-04f, + 4.452120422152791297e-04f, + 4.254471027583006421e-04f, + 4.052867354349356968e-04f, + 3.847519140935204570e-04f, + 3.638639550730222647e-04f, + 3.426444951302156034e-04f, + 3.211154690804265380e-04f, + 2.992990871745817845e-04f, + 2.772178122359930490e-04f, + 2.548943365805551777e-04f, + 2.323515587436648325e-04f, + 2.096125600378590220e-04f, + 1.867005809653108641e-04f, + 1.636389975088607706e-04f, + 1.404512973260482907e-04f, + 1.171610558701005774e-04f, + 9.379191246244331451e-05f, + 7.036754634058427660e-05f, + 4.691165270578145734e-05f, + 2.344791879487271815e-05f, + 1.447139493247874122e-17f, + -2.340850393945113271e-05f, + -4.675407264888852574e-05f, + -7.001328871061514335e-05f, + -9.316286111268942802e-05f, + -1.161796485306134486e-04f, + -1.390406824191185795e-04f, + -1.617231898906969537e-04f, + -1.842046163583829115e-04f, + -2.064626479199869254e-04f, + -2.284752334619991466e-04f, + -2.502206064611250252e-04f, + -2.716773064617690556e-04f, + -2.928242002086798895e-04f, + -3.136405024138114671e-04f, + -3.341057961368736713e-04f, + -3.542000527599929792e-04f, + -3.739036515368039746e-04f, + -3.931973986967992316e-04f, + -4.120625460867281776e-04f, + -4.304808093307158469e-04f, + -4.484343854917819923e-04f, + -4.659059702174845512e-04f, + -4.828787743535818602e-04f, + -4.993365400096493739e-04f, + -5.152635560612082175e-04f, + -5.306446730741198057e-04f, + -5.454653176364612647e-04f, + -5.597115060851909612e-04f, + -5.733698576140564907e-04f, + -5.864276067510603525e-04f, + -5.988726151936528234e-04f, + -6.106933829909588687e-04f, + -6.218790590626611069e-04f, + -6.324194510452570833e-04f, + -6.423050344567614702e-04f, + -6.515269611716821042e-04f, + -6.600770671990646883e-04f, + -6.679478797567967160e-04f, + -6.751326236362062069e-04f, + -6.816252268518211213e-04f, + -6.874203255717539112e-04f, + -6.925132683248836490e-04f, + -6.969001194819386376e-04f, + -7.005776620080852567e-04f, + -7.035433994855702167e-04f, + -7.057955574054943209e-04f, + -7.073330837287954750e-04f, + -7.081556487170125340e-04f, + -7.082636440342657963e-04f, + -7.076581811226278617e-04f, + -7.063410888537339193e-04f, + -7.043149104602236445e-04f, + -7.015828997513892445e-04f, + -6.981490166179902005e-04f, + -6.940179218320851728e-04f, + -6.891949711482260339e-04f, + -6.836862087132502142e-04f, + -6.774983597924347884e-04f, + -6.706388228206039545e-04f, + -6.631156607872861451e-04f, + -6.549375919657807231e-04f, + -6.461139799966924375e-04f, + -6.366548233369270175e-04f, + -6.265707440859499865e-04f, + -6.158729762017194510e-04f, + -6.045733531191070480e-04f, + -5.926842947843961179e-04f, + -5.802187941200323941e-04f, + -5.671904029341022849e-04f, + -5.536132172898791236e-04f, + -5.395018623509823539e-04f, + -5.248714767185811651e-04f, + -5.097376962770673765e-04f, + -4.941166375654838707e-04f, + -4.780248806924582670e-04f, + -4.614794518122551344e-04f, + -4.444978051810356389e-04f, + -4.270978048115207926e-04f, + -4.092977057456325968e-04f, + -3.911161349647420196e-04f, + -3.725720719571632062e-04f, + -3.536848289632427730e-04f, + -3.344740309187047944e-04f, + -3.149595951167335258e-04f, + -2.951617106099559715e-04f, + -2.751008173737486736e-04f, + -2.547975852520000407e-04f, + -2.342728927071314657e-04f, + -2.135478053963316245e-04f, + -1.926435545956132946e-04f, + -1.715815154940239279e-04f, + -1.503831853799458774e-04f, + -1.290701617419976258e-04f, + -1.076641203064520068e-04f, + -8.618679303362720165e-05f, + -6.465994609572296963e-05f, + -4.310535785803166131e-05f, + -2.154479688593094298e-05f, + 0.000000000000000000e+00f, + 2.150734959899484319e-05f, + 4.295564411312584395e-05f, + 6.432337281627700971e-05f, + 8.558914358778801847e-05f, + 1.067317042889163222e-04f, + 1.277299639610350547e-04f, + 1.485630138241603702e-04f, + 1.692101480553038985e-04f, + 1.896508843258684759e-04f, + 2.098649840776009373e-04f, + 2.298324725174021228e-04f, + 2.495336583111203762e-04f, + 2.689491529567958729e-04f, + 2.880598898186698250e-04f, + 3.068471428031533201e-04f, + 3.252925446583616268e-04f, + 3.433781048797137779e-04f, + 3.610862272039176181e-04f, + 3.783997266745809350e-04f, + 3.953018462627122791e-04f, + 4.117762730263829513e-04f, + 4.278071537938969346e-04f, + 4.433791103553099983e-04f, + 4.584772541480976356e-04f, + 4.730872004228363326e-04f, + 4.871950818755382503e-04f, + 5.007875617336743747e-04f, + 5.138518462839280912e-04f, + 5.263756968296791783e-04f, + 5.383474410673522387e-04f, + 5.497559838709404180e-04f, + 5.605908174750933934e-04f, + 5.708420310473718206e-04f, + 5.805003196410431958e-04f, + 5.895569925205944436e-04f, + 5.980039808525682747e-04f, + 6.058338447549957298e-04f, + 6.130397796995799755e-04f, + 6.196156222612016684e-04f, + 6.255558552100400158e-04f, + 6.308556119424503159e-04f, + 6.355106802471486953e-04f, + 6.395175054041730848e-04f, + 6.428731926145374613e-04f, + 6.455755087594301040e-04f, + 6.476228834882815982e-04f, + 6.490144096357687228e-04f, + 6.497498429685649897e-04f, + 6.498296012632502226e-04f, + 6.492547627174425229e-04f, + 6.480270636970132886e-04f, + 6.461488958227519508e-04f, + 6.436233024006336820e-04f, + 6.404539742004272803e-04f, + 6.366452445880759490e-04f, + 6.322020840178591873e-04f, + 6.271300938911197539e-04f, + 6.214354997887679231e-04f, + 6.151251440855713855e-04f, + 6.082064779547860164e-04f, + 6.006875527722377360e-04f, + 5.925770109296073186e-04f, + 5.838840760673158665e-04f, + 5.746185427377923640e-04f, + 5.647907655106131422e-04f, + 5.544116475315949552e-04f, + 5.434926285482021132e-04f, + 5.320456724144572097e-04f, + 5.200832540887690824e-04f, + 5.076183461388823585e-04f, + 4.946644047682729551e-04f, + 4.812353553790131599e-04f, + 4.673455776866451889e-04f, + 4.530098904026903664e-04f, + 4.382435355011193574e-04f, + 4.230621620855109567e-04f, + 4.074818098737383954e-04f, + 3.915188923177147684e-04f, + 3.751901793757405701e-04f, + 3.585127799555410831e-04f, + 3.415041240464490179e-04f, + 3.241819445590930424e-04f, + 3.065642588915733278e-04f, + 2.886693502413833915e-04f, + 2.705157486821331970e-04f, + 2.521222120247453859e-04f, + 2.335077064829918579e-04f, + 2.146913871629504706e-04f, + 1.956925783966609658e-04f, + 1.765307539399361904e-04f, + 1.572255170548387095e-04f, + 1.377965804968402466e-04f, + 1.182637464271945108e-04f, + 9.864688627111849629e-05f, + 7.896592054191218808e-05f, + 5.924079865161975436e-05f, + 3.949147872881094546e-05f, + 1.973790746354780164e-05f, + 0.000000000000000000e+00f, + -1.970238010284559686e-05f, + -3.934944082275756825e-05f, + -5.892148151755434546e-05f, + -7.839891264075306743e-05f, + -9.776227530943462282e-05f, + -1.169922607052078226e-04f, + -1.360697292888009540e-04f, + -1.549757298090502554e-04f, + -1.736915180877542444e-04f, + -1.921985755616629511e-04f, + -2.104786275631484471e-04f, + -2.285136613218662050e-04f, + -2.462859436695555878e-04f, + -2.637780384304916933e-04f, + -2.809728234808804288e-04f, + -2.978535074603023448e-04f, + -3.144036461191332854e-04f, + -3.306071582858338361e-04f, + -3.464483414389500442e-04f, + -3.619118868686585066e-04f, + -3.769828944131547489e-04f, + -3.916468867560180043e-04f, + -4.058898232707585751e-04f, + -4.196981133992728607e-04f, + -4.330586295517413042e-04f, + -4.459587195157615211e-04f, + -4.583862183627433859e-04f, + -4.703294598410216135e-04f, + -4.817772872445234334e-04f, + -4.927190637473565383e-04f, + -5.031446821946852560e-04f, + -5.130445743409007284e-04f, + -5.224097195269496782e-04f, + -5.312316527889542495e-04f, + -5.395024723908887479e-04f, + -5.472148467749195742e-04f, + -5.543620209233284749e-04f, + -5.609378221266176105e-04f, + -5.669366651531786106e-04f, + -5.723535568162687118e-04f, + -5.771840999348496837e-04f, + -5.814244966853034362e-04f, + -5.850715513418501545e-04f, + -5.881226724039281687e-04f, + -5.905758741095224786e-04f, + -5.924297773340420807e-04f, + -5.936836098749646720e-04f, + -5.943372061230182968e-04f, + -5.943910061214307226e-04f, + -5.938460540152537288e-04f, + -5.927039958934639209e-04f, + -5.909670770271131714e-04f, + -5.886381385074528462e-04f, + -5.857206132884568801e-04f, + -5.822185216389217429e-04f, + -5.781364660097343096e-04f, + -5.734796253225910197e-04f, + -5.682537486870293739e-04f, + -5.624651485531170217e-04f, + -5.561206933077393524e-04f, + -5.492277993230843978e-04f, + -5.417944224662266713e-04f, + -5.338290490794490428e-04f, + -5.253406864414295312e-04f, + -5.163388527197619636e-04f, + -5.068335664260176796e-04f, + -4.968353353848055896e-04f, + -4.863551452290165310e-04f, + -4.754044474335747460e-04f, + -4.639951469007321709e-04f, + -4.521395891103186892e-04f, + -4.398505468486206245e-04f, + -4.271412065301010948e-04f, + -4.140251541266666644e-04f, + -4.005163607192301599e-04f, + -3.866291676868795061e-04f, + -3.723782715496072680e-04f, + -3.577787084799967311e-04f, + -3.428458385006848889e-04f, + -3.275953293837695238e-04f, + -3.120431402691025606e-04f, + -2.962055050186841124e-04f, + -2.800989153242122590e-04f, + -2.637401035854408898e-04f, + -2.471460255771968360e-04f, + -2.303338429226980228e-04f, + -2.133209053914711568e-04f, + -1.961247330399053007e-04f, + -1.787629982130247515e-04f, + -1.612535074256399813e-04f, + -1.436141831415453836e-04f, + -1.258630454695097874e-04f, + -1.080181937944321024e-04f, + -9.009778836248835666e-05f, + -7.212003183910606612e-05f, + -5.410315085817400264e-05f, + -3.606537758129155149e-05f, + -1.802493128582126862e-05f, + -1.334841303324302416e-17f, + 1.799127779618168215e-05f, + 3.593083138609340919e-05f, + 5.380067592915723640e-05f, + 7.158293045321104055e-05f, + 8.925983570849392351e-05f, + 1.068137718653035880e-04f, + 1.242272760380188604e-04f, + 1.414830596179534239e-04f, + 1.585640253977377951e-04f, + 1.754532844705931341e-04f, + 1.921341728876877549e-04f, + 2.085902680570638303e-04f, + 2.248054048683053446e-04f, + 2.407636915270301768e-04f, + 2.564495250836037240e-04f, + 2.718476066412367303e-04f, + 2.869429562284523142e-04f, + 3.017209273216939929e-04f, + 3.161672210038205064e-04f, + 3.302678997451251666e-04f, + 3.440094007935225488e-04f, + 3.573785491609914131e-04f, + 3.703625701941320385e-04f, + 3.829491017167877117e-04f, + 3.951262057331397641e-04f, + 4.068823796806154101e-04f, + 4.182065672215850910e-04f, + 4.290881685642916978e-04f, + 4.395170503031860959e-04f, + 4.494835547696116843e-04f, + 4.589785088844519070e-04f, + 4.679932325046681232e-04f, + 4.765195462561217800e-04f, + 4.845497788459313506e-04f, + 4.920767738478327470e-04f, + 4.990938959546221661e-04f, + 5.055950366925160639e-04f, + 5.115746195925331957e-04f, + 5.170276048147706216e-04f, + 5.219494932218531839e-04f, + 5.263363298985630810e-04f, + 5.301847071150910407e-04f, + 5.334917667319233727e-04f, + 5.362552020450717756e-04f, + 5.384732590707796192e-04f, + 5.401447372694501321e-04f, + 5.412689897091851800e-04f, + 5.418459226697609071e-04f, + 5.418759946885404492e-04f, + 5.413602150503207117e-04f, + 5.403001417237128035e-04f, + 5.386978787471504403e-04f, + 5.365560730682539118e-04f, + 5.338779108407521986e-04f, + 5.306671131837313420e-04f, + 5.269279314085348852e-04f, + 5.226651417191434303e-04f, + 5.178840393923420668e-04f, + 5.125904324446496933e-04f, + 5.067906347932736285e-04f, + 5.004914589190106924e-04f, + 4.937002080395005770e-04f, + 4.864246678015905052e-04f, + 4.786730975021753222e-04f, + 4.704542208472601629e-04f, + 4.617772162595178012e-04f, + 4.526517067449197353e-04f, + 4.430877493295452938e-04f, + 4.330958240781504313e-04f, + 4.226868227062654973e-04f, + 4.118720367981569454e-04f, + 4.006631456434114435e-04f, + 3.890722037049972786e-04f, + 3.771116277322665187e-04f, + 3.647941835326885492e-04f, + 3.521329724160614195e-04f, + 3.391414173259668587e-04f, + 3.258332486726308631e-04f, + 3.122224898823369732e-04f, + 2.983234426785867904e-04f, + 2.841506721102148633e-04f, + 2.697189913421606591e-04f, + 2.550434462248571854e-04f, + 2.401392996580377489e-04f, + 2.250220157652570890e-04f, + 2.097072438956290921e-04f, + 1.942108024690222747e-04f, + 1.785486626815674697e-04f, + 1.627369320880489372e-04f, + 1.467918380782401184e-04f, + 1.307297112638300613e-04f, + 1.145669687930290083e-04f, + 9.832009760999397456e-05f, + 8.200563767584910741e-05f, + 6.564016516846416676e-05f, + 4.924027567815219766e-05f, + 3.282256741602081771e-05f, + 1.640362445206236378e-05f, + 0.000000000000000000e+00f, + -1.637180023455527615e-05f, + -3.269533462575305538e-05f, + -4.895424210242561722e-05f, + -6.513225850968472699e-05f, + -8.121323284108457146e-05f, + -9.718114332507469882e-05f, + -1.130201133496294995e-04f, + -1.287144272095247152e-04f, + -1.442485456605490041e-04f, + -1.596071212651732553e-04f, + -1.747750135148174182e-04f, + -1.897373037137282015e-04f, + -2.044793096097578128e-04f, + -2.189865997580020041e-04f, + -2.332450076030689249e-04f, + -2.472406452664517324e-04f, + -2.609599170254186065e-04f, + -2.743895324706472098e-04f, + -2.875165193297870496e-04f, + -3.003282359445427004e-04f, + -3.128123833895385809e-04f, + -3.249570172213065876e-04f, + -3.367505588461240803e-04f, + -3.481818064961628547e-04f, + -3.592399458034899098e-04f, + -3.699145599619731075e-04f, + -3.801956394677196631e-04f, + -3.900735914289291096e-04f, + -3.995392484366653077e-04f, + -4.085838769884034077e-04f, + -4.171991854566158182e-04f, + -4.253773315953880327e-04f, + -4.331109295782838197e-04f, + -4.403930565612024142e-04f, + -4.472172587646578920e-04f, + -4.535775570701503011e-04f, + -4.594684521259947778e-04f, + -4.648849289583206301e-04f, + -4.698224610836477188e-04f, + -4.742770141197898636e-04f, + -4.782450488924013302e-04f, + -4.817235240350806647e-04f, + -4.847098980813407910e-04f, + -4.872021310473242527e-04f, + -4.891986855046963432e-04f, + -4.906985271436078684e-04f, + -4.917011248261453924e-04f, + -4.922064501312485964e-04f, + -4.922149763925275263e-04f, + -4.917276772309548717e-04f, + -4.907460245849183233e-04f, + -4.892719862405896280e-04f, + -4.873080228661261920e-04f, + -4.848570845536456569e-04f, + -4.819226068734645927e-04f, + -4.785085064455284654e-04f, + -4.746191760334893435e-04f, + -4.702594791673116756e-04f, + -4.654347443007680212e-04f, + -4.601507585106936983e-04f, + -4.544137607452196142e-04f, + -4.482304346287416166e-04f, + -4.416079008317367900e-04f, + -4.345537090140839465e-04f, + -4.270758293507777911e-04f, + -4.191826436494728442e-04f, + -4.108829360697150140e-04f, + -4.021858834539161960e-04f, + -3.931010452806725248e-04f, + -3.836383532514024155e-04f, + -3.738081005214428367e-04f, + -3.636209305872444616e-04f, + -3.530878258416693307e-04f, + -3.422200958094793414e-04f, + -3.310293650756770912e-04f, + -3.195275609193634256e-04f, + -3.077269006664550737e-04f, + -2.956398787743567697e-04f, + -2.832792536622980853e-04f, + -2.706580343011211979e-04f, + -2.577894665766888188e-04f, + -2.446870194409517208e-04f, + -2.313643708652139079e-04f, + -2.178353936102799936e-04f, + -2.041141408280510209e-04f, + -1.902148315096290467e-04f, + -1.761518357948250199e-04f, + -1.619396601583952301e-04f, + -1.475929324880076194e-04f, + -1.331263870693465308e-04f, + -1.185548494938537772e-04f, + -1.038932215042936427e-04f, + -8.915646579370446799e-05f, + -7.435959077332714683e-05f, + -5.951763532474445284e-05f, + -4.464565355180115499e-05f, + -2.975869954784884257e-05f, + -1.487181219344128483e-05f, + 0.000000000000000000e+00f, + 1.484177398541613872e-05f, + 2.963860719904158576e-05f, + 4.437567248797690006e-05f, + 5.903823293163951847e-05f, + 7.361165654203178363e-05f, + 8.808143082849284827e-05f, + 1.024331772123446792e-04f, + 1.166526652770380289e-04f, + 1.307258268399512900e-04f, + 1.446387698318426075e-04f, + 1.583777919701953075e-04f, + 1.719293942132778794e-04f, + 1.852802939815504897e-04f, + 1.984174381336592573e-04f, + 2.113280156841942253e-04f, + 2.239994702510968052e-04f, + 2.364195122205586396e-04f, + 2.485761306175752138e-04f, + 2.604576046709465229e-04f, + 2.720525150615433867e-04f, + 2.833497548429932469e-04f, + 2.943385400246083098e-04f, + 3.050084198064263339e-04f, + 3.153492864566233744e-04f, + 3.253513848222112969e-04f, + 3.350053214640939868e-04f, + 3.443020734077864120e-04f, + 3.532329965021145852e-04f, + 3.617898333778522433e-04f, + 3.699647209993159932e-04f, + 3.777501978020017677e-04f, + 3.851392104098344126e-04f, + 3.921251199262121398e-04f, + 3.987017077932429100e-04f, + 4.048631812141973915e-04f, + 4.106041781344828734e-04f, + 4.159197717771173663e-04f, + 4.208054747289555891e-04f, + 4.252572425744124453e-04f, + 4.292714770740190195e-04f, + 4.328450288854669421e-04f, + 4.359751998253025848e-04f, + 4.386597446699808871e-04f, + 4.408968724953503567e-04f, + 4.426852475541531284e-04f, + 4.440239896916363025e-04f, + 4.449126742997511793e-04f, + 4.453513318109698395e-04f, + 4.453404467331309718e-04f, + 4.448809562272690614e-04f, + 4.439742482307769997e-04f, + 4.426221591287388775e-04f, + 4.408269709767168466e-04f, + 4.385914082787080990e-04f, + 4.359186343244749818e-04f, + 4.328122470908071003e-04f, + 4.292762747118040057e-04f, + 4.253151705236267433e-04f, + 4.209338076896006566e-04f, + 4.161374734119831350e-04f, + 4.109318627370653408e-04f, + 4.053230719607911351e-04f, + 3.993175916422970020e-04f, + 3.929222992332770761e-04f, + 3.861444513314888326e-04f, + 3.789916755669021876e-04f, + 3.714719621295073122e-04f, + 3.635936549481525153e-04f, + 3.553654425299459119e-04f, + 3.467963484702393361e-04f, + 3.378957216435445662e-04f, + 3.286732260858342197e-04f, + 3.191388305792130522e-04f, + 3.093027979500185209e-04f, + 2.991756740919330917e-04f, + 2.887682767254974537e-04f, + 2.780916839063471402e-04f, + 2.671572222938670333e-04f, + 2.559764551930417240e-04f, + 2.445611703817801011e-04f, + 2.329233677365916448e-04f, + 2.210752466696249048e-04f, + 2.090291933900031019e-04f, + 1.967977680028590282e-04f, + 1.843936914593410459e-04f, + 1.718298323712722203e-04f, + 1.591191937038941441e-04f, + 1.462748993604876967e-04f, + 1.333101806727993762e-04f, + 1.202383628109180238e-04f, + 1.070728511266315022e-04f, + 9.382711744432409014e-05f, + 8.051468631319089826e-05f, + 6.714912123485984206e-05f, + 5.374401088052293570e-05f, + 4.031295531131948081e-05f, + 2.686955221609669864e-05f, + 1.342738318029786585e-05f, + 0.000000000000000000e+00f, + -1.339908894537428966e-05f, + -2.675643224788563980e-05f, + -4.005864893978847017e-05f, + -5.329244186287420863e-05f, + -6.644461092502548262e-05f, + -7.950206623069222111e-05f, + -9.245184107248077213e-05f, + -1.052811047708897691e-04f, + -1.179771753494133872e-04f, + -1.305275320327536741e-04f, + -1.429198275556728382e-04f, + -1.551419002705676728e-04f, + -1.671817860417565296e-04f, + -1.790277299150954120e-04f, + -1.906681975514930251e-04f, + -2.020918864131418622e-04f, + -2.132877366918702598e-04f, + -2.242449419689906455e-04f, + -2.349529595963345725e-04f, + -2.454015207887385404e-04f, + -2.555806404182784557e-04f, + -2.654806265008874768e-04f, + -2.750920893665808145e-04f, + -2.844059505045345624e-04f, + -2.934134510748270851e-04f, + -3.021061600789069551e-04f, + -3.104759821811575835e-04f, + -3.185151651745712952e-04f, + -3.262163070835866359e-04f, + -3.335723628976332462e-04f, + -3.405766509294967594e-04f, + -3.472228587927296962e-04f, + -3.535050489929618660e-04f, + -3.594176641281607277e-04f, + -3.649555316935231171e-04f, + -3.701138684869255359e-04f, + -3.748882846112615666e-04f, + -3.792747870705806133e-04f, + -3.832697829571900684e-04f, + -3.868700822273337075e-04f, + -3.900729000635904330e-04f, + -3.928758588224299966e-04f, + -3.952769895658223660e-04f, + -3.972747331762911953e-04f, + -3.988679410551167681e-04f, + -4.000558754039121919e-04f, + -4.008382090901287695e-04f, + -4.012150250975650445e-04f, + -4.011868155632819922e-04f, + -4.007544804028019764e-04f, + -3.999193255258539845e-04f, + -3.986830606453539640e-04f, + -3.970477966826979296e-04f, + -3.950160427728647184e-04f, + -3.925907028732052292e-04f, + -3.897750719802241096e-04f, + -3.865728319589897214e-04f, + -3.829880469902513843e-04f, + -3.790251586406653394e-04f, + -3.746889805619719256e-04f, + -3.699846928252342087e-04f, + -3.649178358966703251e-04f, + -3.594943042620016315e-04f, + -3.537203397064425225e-04f, + -3.476025242579046902e-04f, + -3.411477728013451389e-04f, + -3.343633253723441497e-04f, + -3.272567391384403391e-04f, + -3.198358800770878963e-04f, + -3.121089143591786099e-04f, + -3.040842994476012479e-04f, + -2.957707749203746634e-04f, + -2.871773530283563362e-04f, + -2.783133089975229658e-04f, + -2.691881710862687534e-04f, + -2.598117104082893068e-04f, + -2.501939305319653465e-04f, + -2.403450568670490101e-04f, + -2.302755258500093155e-04f, + -2.199959739394581452e-04f, + -2.095172264330585757e-04f, + -1.988502861177488868e-04f, + -1.880063217650495839e-04f, + -1.769966564835590396e-04f, + -1.658327559405899988e-04f, + -1.545262164652106557e-04f, + -1.430887530451063164e-04f, + -1.315321872294559114e-04f, + -1.198684349503653277e-04f, + -1.081094942754574683e-04f, + -9.626743310399233169e-05f, + -8.435437681917366869e-05f, + -7.238249590935302358e-05f, + -6.036399357051934749e-05f, + -4.831109330284252872e-05f, + -3.623602651371357099e-05f, + -2.415102013999141309e-05f, + -1.206828430174254195e-05f, + 0.000000000000000000e+00f, + 1.204169312897504154e-05f, + 2.404470899092571738e-05f, + 3.599702712991723069e-05f, + 4.788670473170228393e-05f, + 5.970188852229866780e-05f, + 7.143082654988841410e-05f, + 8.306187983826528306e-05f, + 9.458353390051201588e-05f, + 1.059844101013897441e-04f, + 1.172532768573817302e-04f, + 1.283790606632529297e-04f, + 1.393508569345262404e-04f, + 1.501579406552106444e-04f, + 1.607897768203369465e-04f, + 1.712360306633601821e-04f, + 1.814865776584426626e-04f, + 1.915315132879176962e-04f, + 2.013611625657108102e-04f, + 2.109660893075433882e-04f, + 2.203371051389893943e-04f, + 2.294652782330296192e-04f, + 2.383419417686963803e-04f, + 2.469587021029656941e-04f, + 2.553074466481195588e-04f, + 2.633803514474035304e-04f, + 2.711698884419244454e-04f, + 2.786688324219942182e-04f, + 2.858702676567446673e-04f, + 2.927675941959327296e-04f, + 2.993545338382966954e-04f, + 3.056251357610912951e-04f, + 3.115737818059637109e-04f, + 3.171951914164931581e-04f, + 3.224844262232151398e-04f, + 3.274368942722000880e-04f, + 3.320483538937818360e-04f, + 3.363149172082760107e-04f, + 3.402330532659012994e-04f, + 3.437995908186134266e-04f, + 3.470117207218301322e-04f, + 3.498669979643943373e-04f, + 3.523633433256204432e-04f, + 3.544990446585373207e-04f, + 3.562727577988377661e-04f, + 3.576835070995022250e-04f, + 3.587306855913434921e-04f, + 3.594140547701693143e-04f, + 3.597337440115922912e-04f, + 3.596902496149280318e-04f, + 3.592844334779736470e-04f, + 3.585175214048202355e-04f, + 3.573911010492562368e-04f, + 3.559071194966300722e-04f, + 3.540678804874658795e-04f, + 3.518760412864115083e-04f, + 3.493346092005057690e-04f, + 3.464469377510762094e-04f, + 3.432167225039049318e-04f, + 3.396479965626749342e-04f, + 3.357451257309863640e-04f, + 3.315128033486363182e-04f, + 3.269560448080700604e-04f, + 3.220801817572939820e-04f, + 3.168908559958683816e-04f, + 3.113940130707873932e-04f, + 3.055958955794286277e-04f, + 2.995030361870785703e-04f, + 2.931222503666503615e-04f, + 2.864606288686135879e-04f, + 2.795255299294358681e-04f, + 2.723245712269062205e-04f, + 2.648656215911465348e-04f, + 2.571567924801972712e-04f, + 2.492064292294373924e-04f, + 2.410231020841035532e-04f, + 2.326155970245017573e-04f, + 2.239929063938051238e-04f, + 2.151642193382072939e-04f, + 2.061389120696203742e-04f, + 1.969265379611917521e-04f, + 1.875368174860041030e-04f, + 1.779796280096115294e-04f, + 1.682649934469443648e-04f, + 1.584030737944329339e-04f, + 1.484041545483235042e-04f, + 1.382786360200012393e-04f, + 1.280370225594695995e-04f, + 1.176899116981768777e-04f, + 1.072479832222307631e-04f, + 9.672198818729011848e-05f, + 8.612273788649634355e-05f, + 7.546109278254378857e-05f, + 6.474795141533576512e-05f, + 5.399423929640585659e-05f, + 4.321089780154245503e-05f, + 3.240887307268698056e-05f, + 2.159910494042194029e-05f, + 1.079251587830625557e-05f, + 0.000000000000000000e+00f, + -1.076758788963704548e-05f, + -2.149944317856241301e-05f, + -3.218482225573323713e-05f, + -4.281305323283309065e-05f, + -5.337354656864646082e-05f, + -6.385580558576757243e-05f, + -7.424943686907754835e-05f, + -8.454416053583386234e-05f, + -9.472982036711456591e-05f, + -1.047963937908457071e-04f, + -1.147340017065515562e-04f, + -1.245329181421548671e-04f, + -1.341835797335974307e-04f, + -1.436765950179864047e-04f, + -1.530027535312186607e-04f, + -1.621530347014577759e-04f, + -1.711186165298485740e-04f, + -1.798908840500873269e-04f, + -1.884614375589472831e-04f, + -1.968221006098050266e-04f, + -2.049649277617257863e-04f, + -2.128822120766777921e-04f, + -2.205664923580282378e-04f, + -2.280105601234851175e-04f, + -2.352074663059836263e-04f, + -2.421505276765508960e-04f, + -2.488333329829885750e-04f, + -2.552497487991398626e-04f, + -2.613939250791943547e-04f, + -2.672603004122885910e-04f, + -2.728436069726557201e-04f, + -2.781388751610882780e-04f, + -2.831414379336380212e-04f, + -2.878469348139965243e-04f, + -2.922513155861687336e-04f, + -2.963508436644055012e-04f, + -3.001420991378207152e-04f, + -3.036219814873026852e-04f, + -3.067877119727112443e-04f, + -3.096368356887807777e-04f, + -3.121672232883608046e-04f, + -3.143770723720249469e-04f, + -3.162649085434524054e-04f, + -3.178295861302663341e-04f, + -3.190702885703869526e-04f, + -3.199865284642772981e-04f, + -3.205781472938346467e-04f, + -3.208453148089736979e-04f, + -3.207885280832979214e-04f, + -3.204086102406083158e-04f, + -3.197067088542942777e-04f, + -3.186842940220061915e-04f, + -3.173431561183079385e-04f, + -3.156854032283730655e-04f, + -3.137134582660339763e-04f, + -3.114300557798812749e-04f, + -3.088382384513568856e-04f, + -3.059413532891418143e-04f, + -3.027430475243637962e-04f, + -2.992472642115744834e-04f, + -2.954582375405406932e-04f, + -2.913804878643640249e-04f, + -2.870188164496020400e-04f, + -2.823782999543770502e-04f, + -2.774642846407175700e-04f, + -2.722823803275761204e-04f, + -2.668384540913915862e-04f, + -2.611386237210131574e-04f, + -2.551892509343225957e-04f, + -2.489969343639438274e-04f, + -2.425685023197270455e-04f, + -2.359110053357878537e-04f, + -2.290317085103517163e-04f, + -2.219380836464229334e-04f, + -2.146378012019111564e-04f, + -2.071387220576676933e-04f, + -1.994488891124380440e-04f, + -1.915765187133722193e-04f, + -1.835299919314087671e-04f, + -1.753178456905652674e-04f, + -1.669487637607092330e-04f, + -1.584315676229787050e-04f, + -1.497752072176369788e-04f, + -1.409887515839194623e-04f, + -1.320813794016571026e-04f, + -1.230623694444957564e-04f, + -1.139410909545171644e-04f, + -1.047269939484425535e-04f, + -9.542959946509581922e-05f, + -8.605848976438549571e-05f, + -7.662329848777562182e-05f, + -6.713370079033298594e-05f, + -5.759940345433426073e-05f, + -4.803013499474702882e-05f, + -3.843563576630159076e-05f, + -2.882564808243503731e-05f, + -1.920990635599448016e-05f, + -9.598127271662273025e-06f, + 0.000000000000000000e+00f, + 9.574823537103811872e-06f, + 1.911673833977519833e-05f, + 2.861619593263633836e-05f, + 3.806371388693437398e-05f, + 4.744988525275912425e-05f, + 5.676538789203427777e-05f, + 6.600099370314859348e-05f, + 7.514757772787978142e-05f, + 8.419612713200058348e-05f, + 9.313775005050625494e-05f, + 1.019636842889295287e-04f, + 1.106653058722401322e-04f, + 1.192341374330203445e-04f, + 1.276618564308877656e-04f, + 1.359403031950059157e-04f, + 1.440614887822626452e-04f, + 1.520176026433699178e-04f, + 1.598010200896498841e-04f, + 1.674043095534119953e-04f, + 1.748202396351221399e-04f, + 1.820417859305353066e-04f, + 1.890621376316773902e-04f, + 1.958747038953250451e-04f, + 2.024731199731614757e-04f, + 2.088512530979652713e-04f, + 2.150032081205004760e-04f, + 2.209233328918379412e-04f, + 2.266062233865404583e-04f, + 2.320467285618302712e-04f, + 2.372399549487279324e-04f, + 2.421812709709947786e-04f, + 2.468663109882154221e-04f, + 2.512909790595921756e-04f, + 2.554514524253027516e-04f, + 2.593441847026279235e-04f, + 2.629659087941870811e-04f, + 2.663136395061924231e-04f, + 2.693846758746589278e-04f, + 2.721766031979693879e-04f, + 2.746872947744395253e-04f, + 2.769149133438811154e-04f, + 2.788579122323372257e-04f, + 2.805150361996677278e-04f, + 2.818853219897804355e-04f, + 2.829680985836939208e-04f, + 2.837629871559238016e-04f, + 2.842699007349416287e-04f, + 2.844890435688079782e-04f, + 2.844209101973068656e-04f, + 2.840662842322885578e-04f, + 2.834262368481505552e-04f, + 2.825021249847073845e-04f, + 2.812955892649861810e-04f, + 2.798085516307519159e-04f, + 2.780432126988811935e-04f, + 2.760020488419260187e-04f, + 2.736878089965273718e-04f, + 2.711035112035945611e-04f, + 2.682524388844043702e-04f, + 2.651381368570786159e-04f, + 2.617644070980710701e-04f, + 2.581353042536924927e-04f, + 2.542551309067299522e-04f, + 2.501284326036580432e-04f, + 2.457599926480392495e-04f, + 2.411548266659954384e-04f, + 2.363181769497842621e-04f, + 2.312555065858830860e-04f, + 2.259724933739240289e-04f, + 2.204750235432793924e-04f, + 2.147691852741365984e-04f, + 2.088612620301268357e-04f, + 2.027577257097531386e-04f, + 1.964652296239523634e-04f, + 1.899906013075300696e-04f, + 1.833408351718813763e-04f, + 1.765230850071902420e-04f, + 1.695446563417966825e-04f, + 1.624129986670188350e-04f, + 1.551356975356094168e-04f, + 1.477204665421056229e-04f, + 1.401751391936988090e-04f, + 1.325076606798998916e-04f, + 1.247260795497873826e-04f, + 1.168385393054425164e-04f, + 1.088532699203247078e-04f, + 1.007785792914005370e-04f, + 9.262284463377021455e-05f, + 8.439450382689701034e-05f, + 7.610204672104689636e-05f, + 6.775400641307872908e-05f, + 5.935895050042970316e-05f, + 5.092547232225660091e-05f, + 4.246218219656006581e-05f, + 3.397769866242637815e-05f, + 2.548063973595517562e-05f, + 1.697961418894217532e-05f, + 8.483212859017624744e-06f, + 0.000000000000000000e+00f, + -8.461495318869855788e-06f, + -1.689278775621859074e-05f, + -2.528544417573815790e-05f, + -3.363109204902172219e-05f, + -4.192142777555209638e-05f, + -5.014822491167240422e-05f, + -5.830334230039153014e-05f, + -6.637873209411312210e-05f, + -7.436644766219583183e-05f, + -8.225865137590645756e-05f, + -9.004762226295531552e-05f, + -9.772576352426085543e-05f, + -1.052856099056577086e-04f, + -1.127198349174101543e-04f, + -1.200212578946849995e-04f, + -1.271828508920051467e-04f, + -1.341977454053923206e-04f, + -1.410592389156038187e-04f, + -1.477608012463634826e-04f, + -1.542960807315748824e-04f, + -1.606589101858277410e-04f, + -1.668433126724388452e-04f, + -1.728435070639570102e-04f, + -1.786539133898150888e-04f, + -1.842691579663201804e-04f, + -1.896840783043778154e-04f, + -1.948937277903842115e-04f, + -1.998933801363103201e-04f, + -2.046785335949608540e-04f, + -2.092449149366440572e-04f, + -2.135884831840112908e-04f, + -2.177054331017576675e-04f, + -2.215921984383175921e-04f, + -2.252454549169022465e-04f, + -2.286621229734833933e-04f, + -2.318393702396226929e-04f, + -2.347746137681952429e-04f, + -2.374655220005397348e-04f, + -2.399100164736049493e-04f, + -2.421062732660711372e-04f, + -2.440527241826416158e-04f, + -2.457480576760017301e-04f, + -2.471912195061305153e-04f, + -2.483814131370483272e-04f, + -2.493180998712305895e-04f, + -2.500009987222372404e-04f, + -2.504300860263741746e-04f, + -2.506055947944560284e-04f, + -2.505280138049976969e-04f, + -2.501980864404289577e-04f, + -2.496168092681825537e-04f, + -2.487854303687649961e-04f, + -2.477054474131509354e-04f, + -2.463786054921205315e-04f, + -2.448068947003734946e-04f, + -2.429925474785403472e-04f, + -2.409380357163841445e-04f, + -2.386460676207832049e-04f, + -2.361195843522810752e-04f, + -2.333617564342224063e-04f, + -2.303759799387175490e-04f, + -2.271658724538751066e-04f, + -2.237352688370258271e-04f, + -2.200882167587254817e-04f, + -2.162289720426820811e-04f, + -2.121619938068343967e-04f, + -2.078919394110624542e-04f, + -2.034236592171233195e-04f, + -1.987621911667231361e-04f, + -1.939127551835801355e-04f, + -1.888807474057235954e-04f, + -1.836717342542969276e-04f, + -1.782914463453192841e-04f, + -1.727457722510192901e-04f, + -1.670407521174195056e-04f, + -1.611825711451174772e-04f, + -1.551775529402107034e-04f, + -1.490321527423956686e-04f, + -1.427529505375406372e-04f, + -1.363466440619829170e-04f, + -1.298200417059508136e-04f, + -1.231800553235984548e-04f, + -1.164336929571301011e-04f, + -1.095880514828144936e-04f, + -1.026503091863229081e-04f, + -9.562771827530503561e-05f, + -8.852759733689483329e-05f, + -8.135732374798783709e-05f, + -7.412432604604385269e-05f, + -6.683607626845965535e-05f, + -5.950008226812831386e-05f, + -5.212388001323979862e-05f, + -4.471502587911416735e-05f, + -3.728108893993130443e-05f, + -2.982964326820167396e-05f, + -2.236826024970074687e-05f, + -1.490450092183243395e-05f, + -7.445908342878064974e-06f, + 0.000000000000000000e+00f, + 7.425739736475704763e-06f, + 1.482386710490919136e-05f, + 2.218698638297385948e-05f, + 2.950775724944274754e-05f, + 3.677890207012403487e-05f, + 4.399321310054077095e-05f, + 5.114355959833892794e-05f, + 5.822289483842819512e-05f, + 6.522426302397340788e-05f, + 7.214080608657170231e-05f, + 7.896577036881257869e-05f, + 8.569251318300049464e-05f, + 9.231450923951847092e-05f, + 9.882535693872643605e-05f, + 1.052187845203471448e-04f, + 1.114886560645364380e-04f, + 1.176289773387779070e-04f, + 1.236339014852947521e-04f, + 1.294977345434665896e-04f, + 1.352149408021485982e-04f, + 1.407801479768994418e-04f, + 1.461881522073272849e-04f, + 1.514339228700169496e-04f, + 1.565126072024935349e-04f, + 1.614195347342348315e-04f, + 1.661502215206463087e-04f, + 1.707003741761581588e-04f, + 1.750658937030649676e-04f, + 1.792428791126197800e-04f, + 1.832276308353748221e-04f, + 1.870166539177443887e-04f, + 1.906066610022775826e-04f, + 1.939945750890921376e-04f, + 1.971775320762906734e-04f, + 2.001528830773817175e-04f, + 2.029181965139526369e-04f, + 2.054712599821023459e-04f, + 2.078100818912826861e-04f, + 2.099328928746136498e-04f, + 2.118381469697695253e-04f, + 2.135245225699071707e-04f, + 2.149909231442836445e-04f, + 2.162364777284813886e-04f, + 2.172605411843266446e-04f, + 2.180626942299304465e-04f, + 2.186427432404015815e-04f, + 2.190007198200883928e-04f, + 2.191368801473969510e-04f, + 2.190517040934920065e-04f, + 2.187458941163810658e-04f, + 2.182203739321322280e-04f, + 2.174762869651921987e-04f, + 2.165149945799773028e-04f, + 2.153380740961488441e-04f, + 2.139473165901802359e-04f, + 2.123447244860358321e-04f, + 2.105325089380130263e-04f, + 2.085130870089506230e-04f, + 2.062890786472634959e-04f, + 2.038633034664208931e-04f, + 2.012387773306926119e-04f, + 1.984187087511740796e-04f, + 1.954064950962511793e-04f, + 1.922057186209438458e-04f, + 1.888201423195703249e-04f, + 1.852537056065179267e-04f, + 1.815105198299485519e-04f, + 1.775948636234848943e-04f, + 1.735111781010148112e-04f, + 1.692640619000253591e-04f, + 1.648582660788071937e-04f, + 1.602986888732223973e-04f, + 1.555903703187100698e-04f, + 1.507384867433899029e-04f, + 1.457483451382290192e-04f, + 1.406253774102959029e-04f, + 1.353751345253480795e-04f, + 1.300032805459848623e-04f, + 1.245155865716643785e-04f, + 1.189179245871088876e-04f, + 1.132162612255646118e-04f, + 1.074166514535061193e-04f, + 1.015252321834391158e-04f, + 9.554821582143662340e-05f, + 8.949188375630919609e-05f, + 8.336257979698908499e-05f, + 7.716670356510142823e-05f, + 7.091070384951115571e-05f, + 6.460107192972675580e-05f, + 5.824433487497955288e-05f, + 5.184704882602284872e-05f, + 4.541579226631734119e-05f, + 3.895715928963878430e-05f, + 3.247775287090116139e-05f, + 2.598417814704357540e-05f, + 1.948303571479631031e-05f, + 1.298091495202827620e-05f, + 6.484387369576324119e-06f, + 0.000000000000000000e+00f, + -6.465731169933958513e-06f, + -1.290632771657884088e-05f, + -1.931535523998722761e-05f, + -2.568642976144864805e-05f, + -3.201322405145375435e-05f, + -3.828947388208588727e-05f, + -4.450898419751903002e-05f, + -5.066563519664518423e-05f, + -5.675338832188378036e-05f, + -6.276629214833436183e-05f, + -6.869848816762920277e-05f, + -7.454421646074183764e-05f, + -8.029782125450870081e-05f, + -8.595375635638307819e-05f, + -9.150659046230223595e-05f, + -9.695101233261035672e-05f, + -1.022818358312054416e-04f, + -1.074940048230266600e-04f, + -1.125825979255044379e-04f, + -1.175428331093993729e-04f, + -1.223700721448543901e-04f, + -1.270598248885527321e-04f, + -1.316077534080812585e-04f, + -1.360096759398110458e-04f, + -1.402615706766127137e-04f, + -1.443595793822601773e-04f, + -1.483000108290968150e-04f, + -1.520793440561845624e-04f, + -1.556942314450015955e-04f, + -1.591415016101448729e-04f, + -1.624181621026041017e-04f, + -1.655214019234404826e-04f, + -1.684485938457612995e-04f, + -1.711972965433097588e-04f, + -1.737652565239656850e-04f, + -1.761504098667907340e-04f, + -1.783508837614152301e-04f, + -1.803649978487851233e-04f, + -1.821912653624264543e-04f, + -1.838283940697296227e-04f, + -1.852752870127996935e-04f, + -1.865310430487398998e-04f, + -1.875949571893940915e-04f, + -1.884665207407716647e-04f, + -1.891454212426279299e-04f, + -1.896315422087889631e-04f, + -1.899249626691283926e-04f, + -1.900259565141956190e-04f, + -1.899349916437565312e-04f, + -1.896527289206770522e-04f, + -1.891800209317994808e-04f, + -1.885179105576068514e-04f, + -1.876676293527271906e-04f, + -1.866305957394497354e-04f, + -1.854084130166551892e-04f, + -1.840028671867227714e-04f, + -1.824159246031662005e-04f, + -1.806497294418971144e-04f, + -1.787066009992514435e-04f, + -1.765890308199928246e-04f, + -1.742996796587417414e-04f, + -1.718413742784095856e-04f, + -1.692171040893801167e-04f, + -1.664300176333031469e-04f, + -1.634834189156041844e-04f, + -1.603807635908042269e-04f, + -1.571256550050320762e-04f, + -1.537218401001562711e-04f, + -1.501732051841159817e-04f, + -1.464837715721702366e-04f, + -1.426576911038343165e-04f, + -1.386992415405413062e-04f, + -1.346128218489411334e-04f, + -1.304029473750683709e-04f, + -1.260742449145932711e-04f, + -1.216314476844448554e-04f, + -1.170793902013302941e-04f, + -1.124230030725036544e-04f, + -1.076673077044100317e-04f, + -1.028174109349222682e-04f, + -9.787849959470351147e-05f, + -9.285583500357369501e-05f, + -8.775474740762446567e-05f, + -8.258063036294733172e-05f, + -7.733893507179906781e-05f, + -7.203516467725131118e-05f, + -6.667486852207986337e-05f, + -6.126363637798329517e-05f, + -5.580709265104459485e-05f, + -5.031089056941896167e-05f, + -4.478070635923045353e-05f, + -3.922223341459007002e-05f, + -3.364117646783503998e-05f, + -2.804324576573561864e-05f, + -2.243415125772841104e-05f, + -1.681959680200483478e-05f, + -1.120527439532200600e-05f, + -5.596858432283831980e-06f, + 0.000000000000000000e+00f, + 5.579678786350002526e-06f, + 1.113659040131433947e-05f, + 1.666518747469618845e-05f, + 2.215996829939644689e-05f, + 2.761548227605910744e-05f, + 3.302633528924318619e-05f, + 3.838719500969946610e-05f, + 4.369279611777013815e-05f, + 4.893794544267782349e-05f, + 5.411752701278543923e-05f, + 5.922650701192542296e-05f, + 6.425993863709400348e-05f, + 6.921296685271543028e-05f, + 7.408083303713561935e-05f, + 7.885887951679374148e-05f, + 8.354255398385457916e-05f, + 8.812741379313725198e-05f, + 9.260913013432653981e-05f, + 9.698349207564205016e-05f, + 1.012464104751122735e-04f, + 1.053939217560361348e-04f, + 1.094221915430763865e-04f, + 1.133275181557522266e-04f, + 1.171063359561930271e-04f, + 1.207552185482215309e-04f, + 1.242708818248938415e-04f, + 1.276501868619005589e-04f, + 1.308901426543747110e-04f, + 1.339879086947369589e-04f, + 1.369407973894841402e-04f, + 1.397462763129272100e-04f, + 1.424019702960989549e-04f, + 1.449056633492160203e-04f, + 1.472553004161910543e-04f, + 1.494489889600180950e-04f, + 1.514850003778564957e-04f, + 1.533617712449332308e-04f, + 1.550779043865114734e-04f, + 1.566321697773859439e-04f, + 1.580235052684658486e-04f, + 1.592510171403173336e-04f, + 1.603139804835744661e-04f, + 1.612118394063934590e-04f, + 1.619442070692711196e-04f, + 1.625108655477295867e-04f, + 1.629117655235336551e-04f, + 1.631470258052963916e-04f, + 1.632169326794885361e-04f, + 1.631219390930484540e-04f, + 1.628626636689312806e-04f, + 1.624398895561451970e-04f, + 1.618545631159456772e-04f, + 1.611077924460503359e-04f, + 1.602008457448726990e-04f, + 1.591351495179624102e-04f, + 1.579122866289444445e-04f, + 1.565339941974661477e-04f, + 1.550021613467485204e-04f, + 1.533188268035131036e-04f, + 1.514861763532199430e-04f, + 1.495065401536325306e-04f, + 1.473823899099098260e-04f, + 1.451163359145451060e-04f, + 1.427111239555983182e-04f, + 1.401696320967573881e-04f, + 1.374948673329850774e-04f, + 1.346899621254734052e-04f, + 1.317581708198773619e-04f, + 1.287028659518289764e-04f, + 1.255275344438603485e-04f, + 1.222357736979611648e-04f, + 1.188312875880578206e-04f, + 1.153178823568962413e-04f, + 1.116994624217160199e-04f, + 1.079800260933631265e-04f, + 1.041636612134171070e-04f, + 1.002545407141449194e-04f, + 9.625691810593006150e-05f, + 9.217512289710953982e-05f, + 8.801355595103532931e-05f, + 8.377668478539886923e-05f, + 7.946903881866790591e-05f, + 7.509520456875234419e-05f, + 7.065982080891584666e-05f, + 6.616757368602117870e-05f, + 6.162319180617105993e-05f, + 5.703144129297408308e-05f, + 5.239712082341619980e-05f, + 4.772505664658922863e-05f, + 4.302009759036991954e-05f, + 3.828711006119116657e-05f, + 3.353097304204050925e-05f, + 2.875657309374543029e-05f, + 2.396879936476407346e-05f, + 1.917253861437825900e-05f, + 1.437267025445376776e-05f, + 9.574061414716567378e-06f, + 4.781562036525325622e-06f, + 0.000000000000000000e+00f, + -4.765823710467572352e-06f, + -9.511139797770952161e-06f, + -1.423121539568319248e-05f, + -1.892135876000095219e-05f, + -2.357692390252032815e-05f, + -2.819331516332007593e-05f, + -3.276599171692918774e-05f, + -3.729047200786769084e-05f, + -4.176233811142703061e-05f, + -4.617724001535500485e-05f, + -5.053089981838045005e-05f, + -5.481911584154466779e-05f, + -5.903776664846981624e-05f, + -6.318281497064232792e-05f, + -6.725031153416303120e-05f, + -7.123639878426539594e-05f, + -7.513731450417200934e-05f, + -7.894939532493793865e-05f, + -8.266908012303817257e-05f, + -8.629291330264409008e-05f, + -8.981754795950380526e-05f, + -9.323974892372517958e-05f, + -9.655639567864357899e-05f, + -9.976448515324246556e-05f, + -1.028611343856743177e-04f, + -1.058435830556215613e-04f, + -1.087091958832444314e-04f, + -1.114554648928591494e-04f, + -1.140800115393030879e-04f, + -1.165805886954139077e-04f, + -1.189550824989598954e-04f, + -1.212015140576370412e-04f, + -1.233180410108325074e-04f, + -1.253029589470822374e-04f, + -1.271547026761611632e-04f, + -1.288718473550913872e-04f, + -1.304531094673266076e-04f, + -1.318973476546234471e-04f, + -1.332035634012388348e-04f, + -1.343709015702383085e-04f, + -1.353986507918701350e-04f, + -1.362862437040613826e-04f, + -1.370332570453443202e-04f, + -1.376394116005415203e-04f, + -1.381045719998066825e-04f, + -1.384287463716805618e-04f, + -1.386120858510235900e-04f, + -1.386548839427931658e-04f, + -1.385575757428196932e-04f, + -1.383207370168273054e-04f, + -1.379450831391416433e-04f, + -1.374314678926119766e-04f, + -1.367808821314652607e-04f, + -1.359944523088843157e-04f, + -1.350734388713058730e-04f, + -1.340192345214945692e-04f, + -1.328333623526271043e-04f, + -1.315174738557150504e-04f, + -1.300733468028466666e-04f, + -1.285028830087897415e-04f, + -1.268081059737171702e-04f, + -1.249911584097946639e-04f, + -1.230542996545981637e-04f, + -1.209999029743675174e-04f, + -1.188304527602330177e-04f, + -1.165485416206351921e-04f, + -1.141568673732511950e-04f, + -1.116582299398947146e-04f, + -1.090555281478102406e-04f, + -1.063517564410224357e-04f, + -1.035500015053626303e-04f, + -1.006534388109464010e-04f, + -9.766532907587492868e-05f, + -9.458901465512266783e-05f, + -9.142791585846299308e-05f, + -8.818552720148400341e-05f, + -8.486541359380171191e-05f, + -8.147120646848431092e-05f, + -7.800659985692548243e-05f, + -7.447534641334087790e-05f, + -7.088125339309563760e-05f, + -6.722817858922308187e-05f, + -6.352002623131395697e-05f, + -5.976074285119170978e-05f, + -5.595431311967590562e-05f, + -5.210475565880340852e-05f, + -4.821611883387434797e-05f, + -4.429247652966449879e-05f, + -4.033792391527355533e-05f, + -3.635657320185136960e-05f, + -3.235254939766243925e-05f, + -2.832998606480489144e-05f, + -2.429302108193049522e-05f, + -2.024579241723850257e-05f, + -1.619243391613931063e-05f, + -1.213707110770494373e-05f, + -8.083817034238642389e-06f, + -4.036768108108601457e-06f, + 0.000000000000000000e+00f, + 4.022436437324076239e-06f, + 8.026519205701394352e-06f, + 1.200825915466515436e-05f, + 1.596370392708562708e-05f, + 1.988894185342372352e-05f, + 2.378010579081847397e-05f, + 2.763337690325799793e-05f, + 3.144498837921355557e-05f, + 3.521122908304340009e-05f, + 3.892844713680019853e-05f, + 4.259305342891470467e-05f, + 4.620152504646010591e-05f, + 4.975040862773826440e-05f, + 5.323632363207353587e-05f, + 5.665596552365893460e-05f, + 6.000610886662674704e-05f, + 6.328361032838766603e-05f, + 6.648541158852724214e-05f, + 6.960854215060292317e-05f, + 7.265012205430279883e-05f, + 7.560736448556652138e-05f, + 7.847757828228031152e-05f, + 8.125817033344999527e-05f, + 8.394664786969736913e-05f, + 8.654062064313692193e-05f, + 8.903780299482053388e-05f, + 9.143601580795497152e-05f, + 9.373318834539185970e-05f, + 9.592735996986403448e-05f, + 9.801668174559524367e-05f, + 9.999941792013674572e-05f, + 1.018739472852775956e-04f, + 1.036387644160876654e-04f, + 1.052924807872517206e-04f, + 1.068338257660048085e-04f, + 1.082616474810422510e-04f, + 1.095749135670224514e-04f, + 1.107727117842931974e-04f, + 1.118542505136681491e-04f, + 1.128188591261970936e-04f, + 1.136659882279879026e-04f, + 1.143952097802875201e-04f, + 1.150062170951232128e-04f, + 1.154988247069874726e-04f, + 1.158729681211121310e-04f, + 1.161287034390441527e-04f, + 1.162662068623534605e-04f, + 1.162857740754014629e-04f, + 1.161878195082552873e-04f, + 1.159728754809229666e-04f, + 1.156415912302182657e-04f, + 1.151947318206731616e-04f, + 1.146331769410351999e-04f, + 1.139579195879890020e-04f, + 1.131700646388664324e-04f, + 1.122708273152050117e-04f, + 1.112615315391279159e-04f, + 1.101436081846065776e-04f, + 1.089185932257956109e-04f, + 1.075881257847022211e-04f, + 1.061539460805467204e-04f, + 1.046178932833044002e-04f, + 1.029819032739389583e-04f, + 1.012480063139884254e-04f, + 9.941832462721362205e-05f, + 9.749506989611064225e-05f, + 9.548054067616838824e-05f, + 9.337711973079915206e-05f, + 9.118727129001866780e-05f, + 8.891353823589849862e-05f, + 8.655853921798483167e-05f, + 8.412496570189726970e-05f, + 8.161557895436345137e-05f, + 7.903320696801201077e-05f, + 7.638074132934370719e-05f, + 7.366113403320848053e-05f, + 7.087739424737539320e-05f, + 6.803258503057929422e-05f, + 6.512982000765911157e-05f, + 6.217226000532499622e-05f, + 5.916310965216279986e-05f, + 5.610561394646146512e-05f, + 5.300305479558382887e-05f, + 4.985874753042966284e-05f, + 4.667603739873827257e-05f, + 4.345829604087496334e-05f, + 4.020891795178530215e-05f, + 3.693131693280893166e-05f, + 3.362892253699031918e-05f, + 3.030517651164982165e-05f, + 2.696352924175526110e-05f, + 2.360743619783213642e-05f, + 2.024035439200125525e-05f, + 1.686573884576587145e-05f, + 1.348703907309045250e-05f, + 1.010769558241483277e-05f, + 6.731136401002770680e-06f, + 3.360773625198592391e-06f, + 0.000000000000000000e+00f, + -3.347814468650473784e-06f, + -6.679325865479849946e-06f, + -9.991219678161110501e-06f, + -1.328021406688385974e-05f, + -1.654306308815880257e-05f, + -1.977655986962290348e-05f, + -2.297753973280750991e-05f, + -2.614288326084785529e-05f, + -2.926951930822502027e-05f, + -3.235442794958472064e-05f, + -3.539464336494777658e-05f, + -3.838725665850617859e-05f, + -4.132941860839394398e-05f, + -4.421834234486570842e-05f, + -4.705130595439784442e-05f, + -4.982565500735158521e-05f, + -5.253880500681173683e-05f, + -5.518824375649152762e-05f, + -5.777153364550003561e-05f, + -6.028631384797333815e-05f, + -6.273030243562301752e-05f, + -6.510129840139457593e-05f, + -6.739718359242333320e-05f, + -6.961592455074339493e-05f, + -7.175557426013427060e-05f, + -7.381427379772556206e-05f, + -7.579025388895909592e-05f, + -7.768183636476383978e-05f, + -7.948743551975573677e-05f, + -8.120555937048918389e-05f, + -8.283481081280139394e-05f, + -8.437388867751212612e-05f, + -8.582158868373181084e-05f, + -8.717680428922131703e-05f, + -8.843852743731167663e-05f, + -8.960584920002047696e-05f, + -9.067796031711479563e-05f, + -9.165415163093462887e-05f, + -9.253381441698060807e-05f, + -9.331644061029057509e-05f, + -9.400162292779464348e-05f, + -9.458905488691879318e-05f, + -9.507853072082816524e-05f, + -9.546994519078202349e-05f, + -9.576329329621814776e-05f, + -9.595866988323466294e-05f, + -9.605626915229089865e-05f, + -9.605638406600895262e-05f, + -9.595940565808516048e-05f, + -9.576582224440011919e-05f, + -9.547621853752977987e-05f, + -9.509127466593055836e-05f, + -9.461176509920040452e-05f, + -9.403855748086969134e-05f, + -9.337261137029724230e-05f, + -9.261497689531161055e-05f, + -9.176679331735186228e-05f, + -9.082928751089830238e-05f, + -8.980377235912744038e-05f, + -8.869164506774372268e-05f, + -8.749438539906182540e-05f, + -8.621355382846783715e-05f, + -8.485078962544303713e-05f, + -8.340780886146616484e-05f, + -8.188640234708234958e-05f, + -8.028843350057289605e-05f, + -7.861583615068542543e-05f, + -7.687061227593963936e-05f, + -7.505482968307974337e-05f, + -7.317061962734104652e-05f, + -7.122017437715785402e-05f, + -6.920574472607888617e-05f, + -6.712963745464778354e-05f, + -6.499421274506274500e-05f, + -6.280188155146197997e-05f, + -6.055510292871261671e-05f, + -5.825638132264141731e-05f, + -5.590826382463881251e-05f, + -5.351333739358024485e-05f, + -5.107422604809699472e-05f, + -4.859358803218347312e-05f, + -4.607411295717206477e-05f, + -4.351851892309470621e-05f, + -4.092954962253340614e-05f, + -3.830997142993496893e-05f, + -3.566257047950555911e-05f, + -3.299014973471602795e-05f, + -3.029552605247514392e-05f, + -2.758152724501864632e-05f, + -2.485098914252425363e-05f, + -2.210675265954265012e-05f, + -1.935166086816063607e-05f, + -1.658855608095106957e-05f, + -1.382027694664882434e-05f, + -1.104965556150336744e-05f, + -8.279514599188903814e-06f, + -5.512664462229372086e-06f, + -2.751900457687248369e-06f, + 0.000000000000000000e+00f, + 2.740280156290214512e-06f, + 5.466206651186378539e-06f, + 8.175072218564196470e-06f, + 1.086419834758086399e-05f, + 1.353093790349696553e-05f, + 1.617267770547626131e-05f, + 1.878684105880902989e-05f, + 2.137089023916455868e-05f, + 2.392232892650095790e-05f, + 2.643870458635503993e-05f, + 2.891761079620682311e-05f, + 3.135668951483809152e-05f, + 3.375363329250938944e-05f, + 3.610618741995035084e-05f, + 3.841215201419369719e-05f, + 4.066938403936110963e-05f, + 4.287579926060773578e-05f, + 4.502937412942688007e-05f, + 4.712814759873801425e-05f, + 4.917022286611355612e-05f, + 5.115376904367083672e-05f, + 5.307702275320218851e-05f, + 5.493828964523271308e-05f, + 5.673594584069856022e-05f, + 5.846843929414990829e-05f, + 6.013429107736878215e-05f, + 6.173209658237591092e-05f, + 6.326052664298879500e-05f, + 6.471832857406342385e-05f, + 6.610432712770806260e-05f, + 6.741742536584356324e-05f, + 6.865660544852231900e-05f, + 6.982092933759627743e-05f, + 7.090953941532209665e-05f, + 7.192165901764468636e-05f, + 7.285659288195965404e-05f, + 7.371372750925019328e-05f, + 7.449253144060441825e-05f, + 7.519255544814984439e-05f, + 7.581343264061586552e-05f, + 7.635487848374452387e-05f, + 7.681669073589902474e-05f, + 7.719874929929503027e-05f, + 7.750101598737158502e-05f, + 7.772353420888149114e-05f, + 7.786642856940284227e-05f, + 7.792990439101760668e-05f, + 7.791424715101048608e-05f, + 7.781982184050777879e-05f, + 7.764707224406404028e-05f, + 7.739652014127399414e-05f, + 7.706876443157189042e-05f, + 7.666448018344928735e-05f, + 7.618441760939247533e-05f, + 7.562940096792763350e-05f, + 7.500032739420971781e-05f, + 7.429816566067238063e-05f, + 7.352395486933000228e-05f, + 7.267880307736313862e-05f, + 7.176388585770229430e-05f, + 7.078044479637946680e-05f, + 6.972978592846818902e-05f, + 6.861327811449984264e-05f, + 6.743235135927742136e-05f, + 6.618849507510502698e-05f, + 6.488325629143087644e-05f, + 6.351823781301141390e-05f, + 6.209509632871848778e-05f, + 6.061554047316198814e-05f, + 5.908132884331902243e-05f, + 5.749426797245979628e-05f, + 5.585621026359582951e-05f, + 5.416905188480572637e-05f, + 5.243473062876452025e-05f, + 5.065522373885282526e-05f, + 4.883254570422391761e-05f, + 4.696874602629149840e-05f, + 4.506590695899598622e-05f, + 4.312614122539617790e-05f, + 4.115158971296881845e-05f, + 3.914441915014531378e-05f, + 3.710681976655663884e-05f, + 3.504100293947658921e-05f, + 3.294919882896850676e-05f, + 3.083365400421063813e-05f, + 2.869662906354593466e-05f, + 2.654039625068195532e-05f, + 2.436723706957190895e-05f, + 2.217943990043698863e-05f, + 1.997929761939633796e-05f, + 1.776910522413144273e-05f, + 1.555115746807415747e-05f, + 1.332774650545313544e-05f, + 1.110115954964658368e-05f, + 8.873676547184104307e-06f, + 6.647567869740949601e-06f, + 4.425092026438055660e-06f, + 2.208493398703637141e-06f, + 0.000000000000000000e+00f, + -2.198178737447286155e-06f, + -4.383854146707416475e-06f, + -6.554860478846427014e-06f, + -8.709057022211050465e-06f, + -1.084433018625070958e-05f, + -1.295859554782643898e-05f, + -1.504979985813177589e-05f, + -1.711592300826502171e-05f, + -1.915497995162542054e-05f, + -2.116502258133142226e-05f, + -2.314414156091539193e-05f, + -2.509046810662869737e-05f, + -2.700217571967648383e-05f, + -2.887748186688327340e-05f, + -3.071464960822724050e-05f, + -3.251198916982059171e-05f, + -3.426785946094130863e-05f, + -3.598066953382340031e-05f, + -3.764887998489755495e-05f, + -3.927100429636594712e-05f, + -4.084561011694002843e-05f, + -4.237132048071104532e-05f, + -4.384681496316908579e-05f, + -4.527083077345597480e-05f, + -4.664216378202475170e-05f, + -4.795966948291004048e-05f, + -4.922226388992814933e-05f, + -5.042892436618977834e-05f, + -5.157869038634893284e-05f, + -5.267066423112145597e-05f, + -5.370401161365963874e-05f, + -5.467796223744639814e-05f, + -5.559181028545831532e-05f, + -5.644491484037703408e-05f, + -5.723670023577102494e-05f, + -5.796665633817722128e-05f, + -5.863433876011653090e-05f, + -5.923936900414046228e-05f, + -5.978143453809256339e-05f, + -6.026028880180132370e-05f, + -6.067575114554413853e-05f, + -6.102770670064889110e-05f, + -6.131610618268607763e-05f, + -6.154096562777286157e-05f, + -6.170236606257552899e-05f, + -6.180045310866599611e-05f, + -6.183543652194144397e-05f, + -6.180758966790510722e-05f, + -6.171724893364212428e-05f, + -6.156481307740533954e-05f, + -6.135074251677746099e-05f, + -6.107555855644340075e-05f, + -6.073984255665435130e-05f, + -6.034423504353361045e-05f, + -5.988943476241735355e-05f, + -5.937619767549151724e-05f, + -5.880533590502611506e-05f, + -5.817771662356323390e-05f, + -5.749426089246688652e-05f, + -5.675594245028995661e-05f, + -5.596378645244941432e-05f, + -5.511886816375996041e-05f, + -5.422231160540798414e-05f, + -5.327528815799189400e-05f, + -5.227901512228311736e-05f, + -5.123475423943163698e-05f, + -5.014381017231689294e-05f, + -4.900752894983425071e-05f, + -4.782729637590838818e-05f, + -4.660453640505390237e-05f, + -4.534070948633992719e-05f, + -4.403731087762476868e-05f, + -4.269586893198487468e-05f, + -4.131794335821765057e-05f, + -3.990512345738859756e-05f, + -3.845902633734535553e-05f, + -3.698129510720333325e-05f, + -3.547359705373742065e-05f, + -3.393762180168319212e-05f, + -3.237507945996893324e-05f, + -3.078769875582971604e-05f, + -2.917722515883962726e-05f, + -2.754541899685784069e-05f, + -2.589405356588684348e-05f, + -2.422491323584912912e-05f, + -2.253979155425681131e-05f, + -2.084048934980605179e-05f, + -1.912881283781196876e-05f, + -1.740657172949882254e-05f, + -1.567557734707370159e-05f, + -1.393764074653252662e-05f, + -1.219457085009355482e-05f, + -1.044817259020866579e-05f, + -8.700245066967668165e-06f, + -6.952579720797126885e-06f, + -5.206958522265940783e-06f, + -3.465152180804485261e-06f, + -1.728918374115329284e-06f, + 0.000000000000000000e+00f, + 1.719876547628855035e-06f, + 3.429003076962415618e-06f, + 5.125691268998652680e-06f, + 6.808274319193801364e-06f, + 8.475108548458095382e-06f, + 1.012457498199488445e-05f, + 1.175508089444992680e-05f, + 1.336506131998390598e-05f, + 1.495298052582536945e-05f, + 1.651733344796259886e-05f, + 1.805664708766448577e-05f, + 1.956948186756530129e-05f, + 2.105443294611633769e-05f, + 2.251013148919803211e-05f, + 2.393524589783997623e-05f, + 2.532848299093816370e-05f, + 2.668858914198573803e-05f, + 2.801435136885023771e-05f, + 2.930459837571368657e-05f, + 3.055820154629149815e-05f, + 3.177407588758812874e-05f, + 3.295118092341596186e-05f, + 3.408852153701416018e-05f, + 3.518514876214479022e-05f, + 3.624016052209482158e-05f, + 3.725270231609142734e-05f, + 3.822196785265903228e-05f, + 3.914719962953973575e-05f, + 4.002768945985303464e-05f, + 4.086277894419950948e-05f, + 4.165185988850534184e-05f, + 4.239437466744202404e-05f, + 4.308981653332471270e-05f, + 4.373772987044972097e-05f, + 4.433771039486739487e-05f, + 4.488940529969052062e-05f, + 4.539251334604474478e-05f, + 4.584678489985638750e-05f, + 4.625202191471458748e-05f, + 4.660807786111483166e-05f, + 4.691485760241596739e-05f, + 4.717231721794196576e-05f, + 4.738046377366677880e-05f, + 4.753935504100859647e-05f, + 4.764909916429116248e-05f, + 4.770985427749255010e-05f, + 4.772182807094424499e-05f, + 4.768527730869501094e-05f, + 4.760050729730926094e-05f, + 4.746787130690479115e-05f, + 4.728776994528908763e-05f, + 4.706065048609898603e-05f, + 4.678700615188301687e-05f, + 4.646737535312531160e-05f, + 4.610234088422814617e-05f, + 4.569252907753687694e-05f, + 4.523860891650402077e-05f, + 4.474129110914775088e-05f, + 4.420132712297902665e-05f, + 4.361950818261826370e-05f, + 4.299666423135587823e-05f, + 4.233366285792369062e-05f, + 4.163140818980473975e-05f, + 4.089083975440875428e-05f, + 4.011293130948711432e-05f, + 3.929868964417050821e-05f, + 3.844915335206358214e-05f, + 3.756539157780807174e-05f, + 3.664850273859330111e-05f, + 3.569961322208241148e-05f, + 3.471987606224959691e-05f, + 3.371046959463910820e-05f, + 3.267259609256267485e-05f, + 3.160748038579001628e-05f, + 3.051636846325336133e-05f, + 2.940052606132795206e-05f, + 2.826123723927484845e-05f, + 2.709980294337047645e-05f, + 2.591753956132967314e-05f, + 2.471577746857528420e-05f, + 2.349585956792650177e-05f, + 2.225913982430233876e-05f, + 2.100698179596996784e-05f, + 1.974075716392971998e-05f, + 1.846184426098673837e-05f, + 1.717162660205524496e-05f, + 1.587149141723013810e-05f, + 1.456282818918089089e-05f, + 1.324702719634344427e-05f, + 1.192547806344194722e-05f, + 1.059956832081574480e-05f, + 9.270681974018148597e-06f, + 7.940198085143243810e-06f, + 6.609489367292647408e-06f, + 5.279920793626897963e-06f, + 3.952848222338136709e-06f, + 2.629617038940430149e-06f, + 1.311560817197689786e-06f, + 0.000000000000000000e+00f, + -1.303759398535709597e-06f, + -2.598427068487143802e-06f, + -3.882729655845572457e-06f, + -5.155411989361711008e-06f, + -6.415238281346936499e-06f, + -7.660993301316896363e-06f, + -8.891483521387926858e-06f, + -1.010553823239075562e-05f, + -1.130201062965311224e-05f, + -1.247977886752223057e-05f, + -1.363774708165704589e-05f, + -1.477484637820374348e-05f, + -1.589003578899699857e-05f, + -1.698230319197812681e-05f, + -1.805066619602823882e-05f, + -1.909417298952157264e-05f, + -2.011190315188001194e-05f, + -2.110296842749134194e-05f, + -2.206651346138940222e-05f, + -2.300171649612773008e-05f, + -2.390779002935145109e-05f, + -2.478398143156065395e-05f, + -2.562957352368102888e-05f, + -2.644388511403268635e-05f, + -2.722627149437084187e-05f, + -2.797612489471199853e-05f, + -2.869287489668749573e-05f, + -2.937598880525030119e-05f, + -3.002497197854884801e-05f, + -3.063936811588928184e-05f, + -3.121875950370617492e-05f, + -3.176276721952791073e-05f, + -3.227105129396500970e-05f, + -3.274331083079011072e-05f, + -3.317928408523108317e-05f, + -3.357874850062376207e-05f, + -3.394152070364435874e-05f, + -3.426745645835545690e-05f, + -3.455645057935714278e-05f, + -3.480843680437391041e-05f, + -3.502338762665158155e-05f, + -3.520131408756888464e-05f, + -3.534226552992613248e-05f, + -3.544632931239619902e-05f, + -3.551363048567052514e-05f, + -3.554433143086765164e-05f, + -3.553863146080914930e-05f, + -3.549676638480726685e-05f, + -3.541900803763526229e-05f, + -3.530566377340024634e-05f, + -3.515707592505213643e-05f, + -3.497362123031461193e-05f, + -3.475571022484123395e-05f, + -3.450378660343666126e-05f, + -3.421832655021186221e-05f, + -3.389983803856685431e-05f, + -3.354886010192489469e-05f, + -3.316596207616956312e-05f, + -3.275174281475231333e-05f, + -3.230682987747619881e-05f, + -3.183187869396395209e-05f, + -3.132757170286612567e-05f, + -3.079461746785293406e-05f, + -3.023374977148131389e-05f, + -2.964572668803002056e-05f, + -2.903132963641206598e-05f, + -2.839136241429471749e-05f, + -2.772665021457329989e-05f, + -2.703803862533824987e-05f, + -2.632639261451207689e-05f, + -2.559259550032325886e-05f, + -2.483754790880125541e-05f, + -2.406216671948075119e-05f, + -2.326738400050288322e-05f, + -2.245414593433224767e-05f, + -2.162341173525594566e-05f, + -2.077615255991108366e-05f, + -1.991335041200381325e-05f, + -1.903599704245014085e-05f, + -1.814509284612314400e-05f, + -1.724164575641496121e-05f, + -1.632667013878813598e-05f, + -1.540118568453151252e-05f, + -1.446621630586251739e-05f, + -1.352278903357414166e-05f, + -1.257193291837421751e-05f, + -1.161467793707110403e-05f, + -1.065205390473139910e-05f, + -9.685089393960801953e-06f, + -8.714810662380517595e-06f, + -7.742240589422758301e-06f, + -6.768397623508250075e-06f, + -5.794294740669309052e-06f, + -4.820938415660515435e-06f, + -3.849327606567640099e-06f, + -2.880452753939940837e-06f, + -1.915294795392051711e-06f, + -9.548241966549667941e-07f, + 0.000000000000000000e+00f, + 9.482311090557935979e-07f, + 1.888935715883699196e-06f, + 2.821194570845099363e-06f, + 3.744103462554891212e-06f, + 4.656774069485003328e-06f, + 5.558334789141776895e-06f, + 6.447931544071930670e-06f, + 7.324728563978056132e-06f, + 8.187909143270469283e-06f, + 9.036676373374730734e-06f, + 9.870253849204916702e-06f, + 1.068788634918657437e-05f, + 1.148884048828036910e-05f, + 1.227240534347507200e-05f, + 1.303789305126774333e-05f, + 1.378463937664554480e-05f, + 1.451200425317579174e-05f, + 1.521937229378508572e-05f, + 1.590615327188085737e-05f, + 1.657178257248893217e-05f, + 1.721572161311536899e-05f, + 1.783745823408358416e-05f, + 1.843650705811206880e-05f, + 1.901240981896380926e-05f, + 1.956473565900515327e-05f, + 2.009308139556312985e-05f, + 2.059707175598756487e-05f, + 2.107635958138817672e-05f, + 2.153062599901698230e-05f, + 2.195958056332863746e-05f, + 2.236296136575796357e-05f, + 2.274053511332031568e-05f, + 2.309209717614148783e-05f, + 2.341747160407918292e-05f, + 2.371651111261625155e-05f, + 2.398909703825292155e-05f, + 2.423513926363566866e-05f, + 2.445457611271804443e-05f, + 2.464737421625526288e-05f, + 2.481352834797943618e-05f, + 2.495306123182613461e-05f, + 2.506602332061461824e-05f, + 2.515249254661017629e-05f, + 2.521257404442358010e-05f, + 2.524639984673718367e-05f, + 2.525412855336374039e-05f, + 2.523594497417534085e-05f, + 2.519205974646584022e-05f, + 2.512270892732973375e-05f, + 2.502815356166727978e-05f, + 2.490867922644573402e-05f, + 2.476459555187455187e-05f, + 2.459623572016065511e-05f, + 2.440395594254615678e-05f, + 2.418813491533502720e-05f, + 2.394917325564173359e-05f, + 2.368749291761338170e-05f, + 2.340353658988623544e-05f, + 2.309776707505748077e-05f, + 2.277066665197028110e-05f, + 2.242273642161569420e-05f, + 2.205449563747421783e-05f, + 2.166648102113158283e-05f, + 2.125924606400766132e-05f, + 2.083336031605244481e-05f, + 2.038940866226966761e-05f, + 1.992799058793915062e-05f, + 1.944971943340819870e-05f, + 1.895522163933315886e-05f, + 1.844513598326477953e-05f, + 1.792011280845339264e-05f, + 1.738081324577142443e-05f, + 1.682790842964813208e-05f, + 1.626207870890487679e-05f, + 1.568401285338399734e-05f, + 1.509440725727218157e-05f, + 1.449396513998789486e-05f, + 1.388339574554209775e-05f, + 1.326341354123314987e-05f, + 1.263473741656307925e-05f, + 1.199808988324299363e-05f, + 1.135419627714907315e-05f, + 1.070378396308057514e-05f, + 1.004758154317770732e-05f, + 9.386318069818621378e-06f, + 8.720722263832011000e-06f, + 8.051521738837318949e-06f, + 7.379442232510721810e-06f, + 6.705206845569983647e-06f, + 6.029535289243417829e-06f, + 5.353143142001254931e-06f, + 4.676741116269359137e-06f, + 4.001034335873452788e-06f, + 3.326721624913985331e-06f, + 2.654494808772660456e-06f, + 1.985038027915242428e-06f, + 1.319027065167622758e-06f, + 6.571286870779092537e-07f, + 0.000000000000000000e+00f, + -6.517121785112947791e-07f, + -1.297371932417118936e-06f, + -1.936354843466996782e-06f, + -2.568048570502482838e-06f, + -3.191853411264083243e-06f, + -3.807182846237992518e-06f, + -4.413464064061555844e-06f, + -5.010138468054313338e-06f, + -5.596662163456622115e-06f, + -6.172506424989349086e-06f, + -6.737158144353800846e-06f, + -7.290120257347119171e-06f, + -7.830912150263285036e-06f, + -8.359070045291263937e-06f, + -8.874147364643450859e-06f, + -9.375715073171476542e-06f, + -9.863361999259346438e-06f, + -1.033669513378841540e-05f, + -1.079533990703045404e-05f, + -1.123894044331291381e-05f, + -1.166715979335118242e-05f, + -1.207968014415581310e-05f, + -1.247620300645970784e-05f, + -1.285644937961374137e-05f, + -1.322015989395755990e-05f, + -1.356709493066716393e-05f, + -1.389703471911742539e-05f, + -1.420977941183009213e-05f, + -1.450514913708843372e-05f, + -1.478298402933197354e-05f, + -1.504314423747151812e-05f, + -1.528550991127199633e-05f, + -1.550998116600103277e-05f, + -1.571647802553678724e-05f, + -1.590494034416860253e-05f, + -1.607532770733858182e-05f, + -1.622761931159687079e-05f, + -1.636181382406056196e-05f, + -1.647792922169452577e-05f, + -1.657600261074252277e-05f, + -1.665609002666740320e-05f, + -1.671826621496820962e-05f, + -1.676262439326730422e-05f, + -1.678927599507833507e-05f, + -1.679835039567758540e-05f, + -1.678999462052671192e-05f, + -1.676437303670283319e-05f, + -1.672166702781419629e-05f, + -1.666207465288855371e-05f, + -1.658581028974159263e-05f, + -1.649310426334120225e-05f, + -1.638420245970092517e-05f, + -1.625936592584267462e-05f, + -1.611887045638726128e-05f, + -1.596300616733423785e-05f, + -1.579207705761010350e-05f, + -1.560640055896726747e-05f, + -1.540630707483150961e-05f, + -1.519213950869398463e-05f, + -1.496425278266009707e-05f, + -1.472301334677091966e-05f, + -1.446879867971653761e-05f, + -1.420199678156508936e-05f, + -1.392300565914552601e-05f, + -1.363223280470680123e-05f, + -1.333009466849801069e-05f, + -1.301701612590346651e-05f, + -1.269342993977575572e-05f, + -1.235977621860146935e-05f, + -1.201650187114281883e-05f, + -1.166406005819747346e-05f, + -1.130290964210320150e-05f, + -1.093351463463301477e-05f, + -1.055634364390535124e-05f, + -1.017186932094184607e-05f, + -9.780567806489146604e-06f, + -9.382918178734033738e-06f, + -8.979401902509168731e-06f, + -8.570502280611855256e-06f, + -8.156703907820469213e-06f, + -7.738492128206995299e-06f, + -7.316352496326938200e-06f, + -6.890770242859669408e-06f, + -6.462229745260318158e-06f, + -6.031214003986479169e-06f, + -5.598204124829813786e-06f, + -5.163678807894833656e-06f, + -4.728113843739430985e-06f, + -4.291981617188459184e-06f, + -3.855750619313580188e-06f, + -3.419884968058363287e-06f, + -2.984843937987475483e-06f, + -2.551081499598767520e-06f, + -2.119045868650204413e-06f, + -1.689179065920102918e-06f, + -1.261916487812816974e-06f, + -8.376864881983608732e-07f, + -4.169099718748218678e-07f, + 0.000000000000000000e+00f, + 4.126385921509365552e-07f, + 8.206095647815305072e-07f, + 1.223525630207122030e-06f, + 1.621008796236126059e-06f, + 2.012690696024970467e-06f, + 2.398212904138698659e-06f, + 2.777227238591446030e-06f, + 3.149396048634148933e-06f, + 3.514392488089205312e-06f, + 3.871900774045785298e-06f, + 4.221616430751789221e-06f, + 4.563246518543961347e-06f, + 4.896509847698758431e-06f, + 5.221137177081410397e-06f, + 5.536871397505274410e-06f, + 5.843467699721675325e-06f, + 6.140693726988073073e-06f, + 6.428329712173628339e-06f, + 6.706168599377329854e-06f, + 6.974016150064908968e-06f, + 7.231691033732799246e-06f, + 7.479024903134298036e-06f, + 7.715862454119090782e-06f, + 7.942061470155300043e-06f, + 8.157492851613173758e-06f, + 8.362040629923898268e-06f, + 8.555601966717204414e-06f, + 8.738087138086968224e-06f, + 8.909419504128689090e-06f, + 9.069535463915167161e-06f, + 9.218384396096766158e-06f, + 9.355928585322825753e-06f, + 9.482143134692021052e-06f, + 9.597015864467235791e-06f, + 9.700547197287537744e-06f, + 9.792750030137629163e-06f, + 9.873649593339112619e-06f, + 9.943283296844531363e-06f, + 1.000170056413215178e-05f, + 1.004896265399734296e-05f, + 1.008514247056514156e-05f, + 1.011032436185004009e-05f, + 1.012460390719635526e-05f, + 1.012808769395258744e-05f, + 1.012089308373725277e-05f, + 1.010314796865800678e-05f, + 1.007499051786728413e-05f, + 1.003656891483040004e-05f, + 9.988041085702172294e-06f, + 9.929574419209254656e-06f, + 9.861345478440398626e-06f, + 9.783539704959164481e-06f, + 9.696351115651413914e-06f, + 9.599981992730900805e-06f, + 9.494642567327615031e-06f, + 9.380550697087179814e-06f, + 9.257931538216254041e-06f, + 9.127017212404176378e-06f, + 8.988046469065492662e-06f, + 8.841264343334779069e-06f, + 8.686921810258770176e-06f, + 8.525275435626184639e-06f, + 8.356587023873447459e-06f, + 8.181123263510028723e-06f, + 7.999155370499712271e-06f, + 7.810958730038508927e-06f, + 7.616812537163261916e-06f, + 7.416999436624914182e-06f, + 7.211805162456990385e-06f, + 7.001518177666605594e-06f, + 6.786429314468350961e-06f, + 6.566831415485732412e-06f, + 6.343018976325844570e-06f, + 6.115287789940895410e-06f, + 5.883934593178742717e-06f, + 5.649256715913496299e-06f, + 5.411551733154688679e-06f, + 5.171117120509288493e-06f, + 4.928249913373739521e-06f, + 4.683246370226741163e-06f, + 4.436401640376830997e-06f, + 4.188009436517276560e-06f, + 3.938361712429462095e-06f, + 3.687748346167128183e-06f, + 3.436456829041018457e-06f, + 3.184771960722456336e-06f, + 2.932975550760869950e-06f, + 2.681346126811560784e-06f, + 2.430158649854029301e-06f, + 2.179684236669581299e-06f, + 1.930189889838635696e-06f, + 1.681938235501949860e-06f, + 1.435187269127313838e-06f, + 1.190190109498106053e-06f, + 9.471947611406282867e-07f, + 7.064438853882597620e-07f, + 4.681745802695258113e-07f, + 2.326181693934783062e-07f, + 0.000000000000000000e+00f, + -2.294607496822518279e-07f, + -4.555512536303946545e-07f, + -6.780652116471304469e-07f, + -8.968030132995199105e-07f, + -1.111571892074599649e-06f, + -1.322186069669318649e-06f, + -1.528466890336115189e-06f, + -1.730242945231773840e-06f, + -1.927350186716386900e-06f, + -2.119632032570274826e-06f, + -2.306939460105835373e-06f, + -2.489131090168029246e-06f, + -2.666073261019773634e-06f, + -2.837640092136482743e-06f, + -3.003713537930782497e-06f, + -3.164183431450152543e-06f, + -3.318947518098628411e-06f, + -3.467911479445268386e-06f, + -3.610988947198002060e-06f, + -3.748101507421474508e-06f, + -3.879178695106657928e-06f, + -4.004157979193569750e-06f, + -4.122984738168565981e-06f, + -4.235612226366478793e-06f, + -4.342001531119113841e-06f, + -4.442121520894592501e-06f, + -4.535948784595755533e-06f, + -4.623467562178467021e-06f, + -4.704669666773933905e-06f, + -4.779554398499982279e-06f, + -4.848128450155944567e-06f, + -4.910405805006164935e-06f, + -4.966407626865209352e-06f, + -5.016162142699305776e-06f, + -5.059704517976509766e-06f, + -5.097076724993110270e-06f, + -5.128327404419833975e-06f, + -5.153511720311018673e-06f, + -5.172691208831328023e-06f, + -5.185933620952477709e-06f, + -5.193312759386582571e-06f, + -5.194908310018822646e-06f, + -5.190805668113285727e-06f, + -5.181095759564734449e-06f, + -5.165874857474497392e-06f, + -5.145244394333831128e-06f, + -5.119310770095809750e-06f, + -5.088185156423761042e-06f, + -5.051983297406574915e-06f, + -5.010825307025710792e-06f, + -4.964835463670194371e-06f, + -4.914142001988321737e-06f, + -4.858876902370465571e-06f, + -4.799175678352467995e-06f, + -4.735177162236423786e-06f, + -4.667023289215640662e-06f, + -4.594858880296614592e-06f, + -4.518831424306328092e-06f, + -4.439090859272008081e-06f, + -4.355789353459791187e-06f, + -4.269081086352130785e-06f, + -4.179122029845473253e-06f, + -4.086069729946137843e-06f, + -3.990083089234567233e-06f, + -3.891322150369041671e-06f, + -3.789947880894861469e-06f, + -3.686121959618365274e-06f, + -3.580006564802584169e-06f, + -3.471764164435954700e-06f, + -3.361557308819947231e-06f, + -3.249548425715061173e-06f, + -3.135899618280506402e-06f, + -3.020772466037677946e-06f, + -2.904327829076243898e-06f, + -2.786725655720860965e-06f, + -2.668124793866750565e-06f, + -2.548682806187309839e-06f, + -2.428555789406447020e-06f, + -2.307898197824789105e-06f, + -2.186862671278643330e-06f, + -2.065599867705792124e-06f, + -1.944258300480321568e-06f, + -1.822984180674020067e-06f, + -1.701921264393156922e-06f, + -1.581210705329814697e-06f, + -1.460990912660235641e-06f, + -1.341397414412057306e-06f, + -1.222562726419054144e-06f, + -1.104616226963808055e-06f, + -9.876840372108532818e-07f, + -8.718889075168336299e-07f, + -7.573501096980523593e-07f, + -6.441833353263205178e-07f, + -5.325006001176824594e-07f, + -4.224101544649153790e-07f, + -3.140164001606101186e-07f, + -2.074198133468546951e-07f, + -1.027168737185703904e-07f, + 0.000000000000000000e+00f, + 1.006425082962560188e-07f, + 1.991265228250998696e-07f, + 2.953721320865672257e-07f, + 3.893036808413146083e-07f, + 4.808498032861632466e-07f, + 5.699434500219715067e-07f, + 6.565219088541263631e-07f, + 7.405268194708413983e-07f, + 8.219041820579037521e-07f, + 9.006043599106572324e-07f, + 9.765820761143821518e-07f, + 1.049796404370967154e-06f, + 1.120210754056259219e-06f, + 1.187792849601788622e-06f, + 1.252514704296207476e-06f, + 1.314352588615897804e-06f, + 1.373286993192450102e-06f, + 1.429302586538256487e-06f, + 1.482388167650501341e-06f, + 1.532536613626721034e-06f, + 1.579744822422699780e-06f, + 1.624013650897105724e-06f, + 1.665347848284486069e-06f, + 1.703755985248906983e-06f, + 1.739250378670976522e-06f, + 1.771847012329051112e-06f, + 1.801565453633872846e-06f, + 1.828428766587697603e-06f, + 1.852463421131862093e-06f, + 1.873699199062873253e-06f, + 1.892169096686314783e-06f, + 1.907909224391436775e-06f, + 1.920958703325515738e-06f, + 1.931359559352847449e-06f, + 1.939156614480256200e-06f, + 1.944397375938704227e-06f, + 1.947131923107859303e-06f, + 1.947412792470748310e-06f, + 1.945294860790306117e-06f, + 1.940835226696380303e-06f, + 1.934093090874000321e-06f, + 1.925129635041577493e-06f, + 1.914007899911128539e-06f, + 1.900792662316812488e-06f, + 1.885550311703490783e-06f, + 1.868348726157043199e-06f, + 1.849257148168054309e-06f, + 1.828346060309234932e-06f, + 1.805687061008333849e-06f, + 1.781352740599210893e-06f, + 1.755416557827082551e-06f, + 1.727952716981022353e-06f, + 1.699036045830707816e-06f, + 1.668741874531441462e-06f, + 1.637145915666299804e-06f, + 1.604324145587388401e-06f, + 1.570352687212907484e-06f, + 1.535307694438660471e-06f, + 1.499265238310532749e-06f, + 1.462301195107119339e-06f, + 1.424491136473709433e-06f, + 1.385910221746217664e-06f, + 1.346633092594916054e-06f, + 1.306733770119299951e-06f, + 1.266285554515691827e-06f, + 1.225360927433250136e-06f, + 1.184031457134546194e-06f, + 1.142367706564255042e-06f, + 1.100439144428898935e-06f, + 1.058314059384136389e-06f, + 1.016059477418145401e-06f, + 9.737410825169423452e-07f, + 9.314231406881861787e-07f, + 8.891684274188879932e-07f, + 8.470381586302859329e-07f, + 8.050919251930470272e-07f, + 7.633876310564211735e-07f, + 7.219814350382115897e-07f, + 6.809276963207535929e-07f, + 6.402789236869417325e-07f, + 6.000857285259880680e-07f, + 5.603967816352038095e-07f, + 5.212587738328753669e-07f, + 4.827163803963257315e-07f, + 4.448122293282582582e-07f, + 4.075868734547717757e-07f, + 3.710787663445438682e-07f, + 3.353242420407537163e-07f, + 3.003574985858815201e-07f, + 2.662105853160385845e-07f, + 2.329133938960602585e-07f, + 2.004936530600967300e-07f, + 1.689769270175546171e-07f, + 1.383866174786039171e-07f, + 1.087439692488582841e-07f, + 8.006807933651531888e-08f, + 5.237590951157132493e-08f, + 2.568230225109257904e-08f, + 0.000000000000000000e+00f, + -2.466033232770569548e-08f, + -4.829008168683121073e-08f, + -7.088265816141993268e-08f, + -9.243346323606733125e-08f, + -1.129398551695146863e-07f, + -1.324011115659184628e-07f, + -1.508183892432858115e-07f, + -1.681946815011221211e-07f, + -1.845347728928822297e-07f, + -1.998451916121546072e-07f, + -2.141341596039432244e-07f, + -2.274115405148332402e-07f, + -2.396887855988568836e-07f, + -2.509788776975187057e-07f, + -2.612962734148978839e-07f, + -2.706568436096965910e-07f, + -2.790778123294188281e-07f, + -2.865776943115482094e-07f, + -2.931762311773865084e-07f, + -2.988943264486187393e-07f, + -3.037539795124567178e-07f, + -3.077782186659332945e-07f, + -3.109910333676799518e-07f, + -3.134173058274048922e-07f, + -3.150827420621620873e-07f, + -3.160138025468559683e-07f, + -3.162376325911064067e-07f, + -3.157819925664867536e-07f, + -3.146751881132046538e-07f, + -3.129460004522320042e-07f, + -3.106236169256348513e-07f, + -3.077375618915215213e-07f, + -3.043176280902072482e-07f, + -3.003938086063936412e-07f, + -2.959962295410709180e-07f, + -2.911550835096173451e-07f, + -2.859005640803434774e-07f, + -2.802628012618049063e-07f, + -2.742717981466135591e-07f, + -2.679573688192066510e-07f, + -2.613490776251264430e-07f, + -2.544761799041636744e-07f, + -2.473675642799770811e-07f, + -2.400516965988118414e-07f, + -2.325565656058897010e-07f, + -2.249096304424925012e-07f, + -2.171377700460247078e-07f, + -2.092672345282480135e-07f, + -2.013235986056343617e-07f, + -1.933317171473633572e-07f, + -1.853156829093616031e-07f, + -1.772987865099094365e-07f, + -1.693034787059287238e-07f, + -1.613513350178359175e-07f, + -1.534630227503889525e-07f, + -1.456582704530633583e-07f, + -1.379558398535355063e-07f, + -1.303735002995515733e-07f, + -1.229280057368551819e-07f, + -1.156350742435759375e-07f, + -1.085093701420685361e-07f, + -1.015644887007500715e-07f, + -9.481294343366335435e-08f, + -8.826615600362021996e-08f, + -8.193444872566309993e-08f, + -7.582703966755611925e-08f, + -6.995204033572834065e-08f, + -6.431645593190529234e-08f, + -5.892618816136430419e-08f, + -5.378604056816772665e-08f, + -4.889972636892558379e-08f, + -4.426987875170946693e-08f, + -3.989806360360980105e-08f, + -3.578479462389621212e-08f, + -3.192955077725143908e-08f, + -2.833079603795987602e-08f, + -2.498600136841822765e-08f, + -2.189166887745841221e-08f, + -1.904335809309968632e-08f, + -1.643571428675994097e-08f, + -1.406249877778086397e-08f, + -1.191662114752070737e-08f, + -9.990173286071856191e-09f, + -8.274465192170869078e-09f, + -6.760062445140820835e-09f, + -5.436825263828806997e-09f, + -4.293949063640696908e-09f, + -3.320006422643590005e-09f, + -2.502990363837817991e-09f, + -1.830358857702062856e-09f, + -1.289080449029138733e-09f, + -8.656809086711142593e-10f, + -5.462908092693271412e-10f, + -3.166939230097100569e-10f, + -1.623763376571505723e-10f, + -6.857618579388846575e-11f, + -2.033388168720926172e-11f, + -2.542758678303834900e-12f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f, + 0.000000000000000000e+00f +}; + +} // namespace juce diff --git a/modules/juce_core/maths/juce_MathsFunctions.h b/modules/juce_core/maths/juce_MathsFunctions.h index 6faa880ae9..ca6ca67af8 100644 --- a/modules/juce_core/maths/juce_MathsFunctions.h +++ b/modules/juce_core/maths/juce_MathsFunctions.h @@ -130,6 +130,50 @@ Type jmap (Type sourceValue, Type sourceRangeMin, Type sourceRangeMax, Type targ return targetRangeMin + ((targetRangeMax - targetRangeMin) * (sourceValue - sourceRangeMin)) / (sourceRangeMax - sourceRangeMin); } +/** Remaps a normalised value (between 0 and 1) to a logarithmic target range. + + The entire target range must be greater than zero. + + @see mapFromLog10 + + @code + mapToLog10 (0.5, 0.4, 40.0) == 4.0 + @endcode +*/ +template +Type mapToLog10 (Type value0To1, Type logRangeMin, Type logRangeMax) +{ + jassert (logRangeMin > 0); + jassert (logRangeMax > 0); + + auto logMin = std::log10 (logRangeMin); + auto logMax = std::log10 (logRangeMax); + + return std::pow ((Type) 10.0, value0To1 * (logMax - logMin) + logMin); +} + +/** Remaps a logarithmic value in a target range to a normalised value (between 0 and 1). + + The entire target range must be greater than zero. + + @see mapToLog10 + + @code + mapFromLog10 (4.0, 0.4, 40.0) == 0.5 + @endcode +*/ +template +Type mapFromLog10 (Type valueInLogRange, Type logRangeMin, Type logRangeMax) +{ + jassert (logRangeMin > 0); + jassert (logRangeMax > 0); + + auto logMin = std::log10 (logRangeMin); + auto logMax = std::log10 (logRangeMax); + + return (std::log10 (valueInLogRange) - logMin) / (logMax - logMin); +} + /** Scans an array of values, returning the minimum value that it contains. */ template Type findMinimum (const Type* data, int numValues) diff --git a/modules/juce_core/threads/juce_SpinLock.h b/modules/juce_core/threads/juce_SpinLock.h index 532df8e418..14f7c6b021 100644 --- a/modules/juce_core/threads/juce_SpinLock.h +++ b/modules/juce_core/threads/juce_SpinLock.h @@ -75,6 +75,9 @@ public: /** Provides the type of scoped unlocker to use with a SpinLock. */ using ScopedUnlockType = GenericScopedUnlock; + /** Provides the type of scoped try-lock to use for locking a SpinLock. */ + using ScopedTryLockType = GenericScopedTryLock; + private: //============================================================================== mutable Atomic lock; diff --git a/modules/juce_dsp/filter_design/juce_FilterDesign.cpp b/modules/juce_dsp/filter_design/juce_FilterDesign.cpp index c8e0ebf7df..3b28c462e9 100644 --- a/modules/juce_dsp/filter_design/juce_FilterDesign.cpp +++ b/modules/juce_dsp/filter_design/juce_FilterDesign.cpp @@ -545,7 +545,7 @@ ReferenceCountedArray> { arrayFilters.add (*IIR::Coefficients::makeFirstOrderLowPass (sampleRate, frequency)); - for (auto i = 0; i < order / 2; ++i) + for (int i = 0; i < order / 2; ++i) { auto Q = 1.0 / (2.0 * std::cos ((i + 1.0) * MathConstants::pi / order)); arrayFilters.add (*IIR::Coefficients::makeLowPass (sampleRate, frequency, @@ -554,7 +554,7 @@ ReferenceCountedArray> } else { - for (auto i = 0; i < order / 2; ++i) + for (int i = 0; i < order / 2; ++i) { auto Q = 1.0 / (2.0 * std::cos ((2.0 * i + 1.0) * MathConstants::pi / (order * 2.0))); arrayFilters.add (*IIR::Coefficients::makeLowPass (sampleRate, frequency, @@ -580,7 +580,7 @@ ReferenceCountedArray> { arrayFilters.add (*IIR::Coefficients::makeFirstOrderHighPass (sampleRate, frequency)); - for (auto i = 0; i < order / 2; ++i) + for (int i = 0; i < order / 2; ++i) { auto Q = 1.0 / (2.0 * std::cos ((i + 1.0) * MathConstants::pi / order)); arrayFilters.add (*IIR::Coefficients::makeHighPass (sampleRate, frequency, @@ -589,7 +589,7 @@ ReferenceCountedArray> } else { - for (auto i = 0; i < order / 2; ++i) + for (int i = 0; i < order / 2; ++i) { auto Q = 1.0 / (2.0 * std::cos ((2.0 * i + 1.0) * MathConstants::pi / (order * 2.0))); arrayFilters.add (*IIR::Coefficients::makeHighPass (sampleRate, frequency, diff --git a/modules/juce_dsp/frequency/juce_Convolution.cpp b/modules/juce_dsp/frequency/juce_Convolution.cpp index 4b51d850b6..dcfef0a00e 100644 --- a/modules/juce_dsp/frequency/juce_Convolution.cpp +++ b/modules/juce_dsp/frequency/juce_Convolution.cpp @@ -685,7 +685,7 @@ struct Convolution::Pimpl : private Thread /** This function copies a buffer to a temporary location, so that any external audio source can be processed then in the dedicated thread. */ - void copyBufferToTemporaryLocation (dsp::AudioBlock block) + void copyBufferToTemporaryLocation (AudioBlock block) { const SpinLock::ScopedLockType sl (processLock); @@ -725,7 +725,7 @@ struct Convolution::Pimpl : private Thread } else { - auto interpolated = dsp::AudioBlock (interpolationBuffer).getSubBlock (0, numSamples); + auto interpolated = AudioBlock (interpolationBuffer).getSubBlock (0, numSamples); for (size_t channel = 0; channel < numChannels; ++channel) { diff --git a/modules/juce_dsp/frequency/juce_FFT.cpp b/modules/juce_dsp/frequency/juce_FFT.cpp index a69cd462f4..d3c82a966e 100644 --- a/modules/juce_dsp/frequency/juce_FFT.cpp +++ b/modules/juce_dsp/frequency/juce_FFT.cpp @@ -167,7 +167,7 @@ struct FFTFallback : public FFT::Instance { auto* input = reinterpret_cast*> (d); - for (auto i = size >> 1; i < size; ++i) + for (int i = size >> 1; i < size; ++i) input[i] = std::conj (input[size - i]); perform (input, scratch, true); @@ -681,7 +681,7 @@ struct FFTWImpl : public FFT::Instance auto size = (1 << order); if (! ignoreNegativeFreqs) - for (auto i = size >> 1; i < size; ++i) + for (int i = size >> 1; i < size; ++i) out[i] = std::conj (out[size - i]); } @@ -780,7 +780,7 @@ struct IntelFFT : public FFT::Instance auto size = (1 << order); if (! ignoreNegativeFreqs) - for (auto i = size >> 1; i < size; ++i) + for (int i = size >> 1; i < size; ++i) out[i] = std::conj (out[size - i]); } @@ -971,7 +971,7 @@ void FFT::performFrequencyOnlyForwardTransform (float* inputOutputData) const no performRealOnlyForwardTransform (inputOutputData); auto* out = reinterpret_cast*> (inputOutputData); - for (auto i = 0; i < size; ++i) + for (int i = 0; i < size; ++i) inputOutputData[i] = std::abs (out[i]); zeromem (&inputOutputData[size], static_cast (size) * sizeof (float)); diff --git a/modules/juce_dsp/juce_dsp.cpp b/modules/juce_dsp/juce_dsp.cpp index 07a397228d..ebe502e312 100644 --- a/modules/juce_dsp/juce_dsp.cpp +++ b/modules/juce_dsp/juce_dsp.cpp @@ -49,8 +49,14 @@ #include "processors/juce_FIRFilter.cpp" #include "processors/juce_IIRFilter.cpp" -#include "processors/juce_LadderFilter.cpp" +#include "processors/juce_FirstOrderTPTFilter.cpp" +#include "processors/juce_Panner.cpp" #include "processors/juce_Oversampling.cpp" +#include "processors/juce_BallisticsFilter.cpp" +#include "processors/juce_LinkwitzRileyFilter.cpp" +#include "processors/juce_DelayLine.cpp" +#include "processors/juce_DryWetMixer.cpp" +#include "processors/juce_StateVariableTPTFilter.cpp" #include "maths/juce_SpecialFunctions.cpp" #include "maths/juce_Matrix.cpp" #include "maths/juce_LookupTable.cpp" @@ -58,6 +64,12 @@ #include "frequency/juce_Convolution.cpp" #include "frequency/juce_Windowing.cpp" #include "filter_design/juce_FilterDesign.cpp" +#include "widgets/juce_LadderFilter.cpp" +#include "widgets/juce_Compressor.cpp" +#include "widgets/juce_NoiseGate.cpp" +#include "widgets/juce_Limiter.cpp" +#include "widgets/juce_Phaser.cpp" +#include "widgets/juce_Chorus.cpp" #if JUCE_USE_SIMD #if defined(__i386__) || defined(__amd64__) || defined(_M_X64) || defined(_X86_) || defined(_M_IX86) diff --git a/modules/juce_dsp/juce_dsp.h b/modules/juce_dsp/juce_dsp.h index 31fd8ec895..3ba412ba04 100644 --- a/modules/juce_dsp/juce_dsp.h +++ b/modules/juce_dsp/juce_dsp.h @@ -243,17 +243,29 @@ namespace juce #include "processors/juce_ProcessorWrapper.h" #include "processors/juce_ProcessorChain.h" #include "processors/juce_ProcessorDuplicator.h" -#include "processors/juce_Bias.h" -#include "processors/juce_Gain.h" -#include "processors/juce_WaveShaper.h" #include "processors/juce_IIRFilter.h" #include "processors/juce_FIRFilter.h" -#include "processors/juce_Oscillator.h" -#include "processors/juce_LadderFilter.h" #include "processors/juce_StateVariableFilter.h" +#include "processors/juce_FirstOrderTPTFilter.h" +#include "processors/juce_Panner.h" +#include "processors/juce_DelayLine.h" #include "processors/juce_Oversampling.h" -#include "processors/juce_Reverb.h" +#include "processors/juce_BallisticsFilter.h" +#include "processors/juce_LinkwitzRileyFilter.h" +#include "processors/juce_DryWetMixer.h" +#include "processors/juce_StateVariableTPTFilter.h" #include "frequency/juce_FFT.h" #include "frequency/juce_Convolution.h" #include "frequency/juce_Windowing.h" #include "filter_design/juce_FilterDesign.h" +#include "widgets/juce_Reverb.h" +#include "widgets/juce_Bias.h" +#include "widgets/juce_Gain.h" +#include "widgets/juce_WaveShaper.h" +#include "widgets/juce_Oscillator.h" +#include "widgets/juce_LadderFilter.h" +#include "widgets/juce_Compressor.h" +#include "widgets/juce_NoiseGate.h" +#include "widgets/juce_Limiter.h" +#include "widgets/juce_Phaser.h" +#include "widgets/juce_Chorus.h" diff --git a/modules/juce_dsp/processors/juce_BallisticsFilter.cpp b/modules/juce_dsp/processors/juce_BallisticsFilter.cpp new file mode 100644 index 0000000000..627b2116f8 --- /dev/null +++ b/modules/juce_dsp/processors/juce_BallisticsFilter.cpp @@ -0,0 +1,121 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +//============================================================================== +template +BallisticsFilter::BallisticsFilter() +{ + setAttackTime (attackTime); + setReleaseTime (releaseTime); +} + +template +void BallisticsFilter::setAttackTime (SampleType attackTimeMs) +{ + attackTime = attackTimeMs; + cteAT = calculateLimitedCte (static_cast (attackTime)); +} + +template +void BallisticsFilter::setReleaseTime (SampleType releaseTimeMs) +{ + releaseTime = releaseTimeMs; + cteRL = calculateLimitedCte (static_cast (releaseTime)); +} + +template +void BallisticsFilter::setLevelCalculationType (LevelCalculationType newLevelType) +{ + levelType = newLevelType; + reset(); +} + +template +void BallisticsFilter::prepare (const ProcessSpec& spec) +{ + jassert (spec.sampleRate > 0); + jassert (spec.numChannels > 0); + + sampleRate = spec.sampleRate; + expFactor = -2.0 * MathConstants::pi * 1000.0 / sampleRate; + + setAttackTime (attackTime); + setReleaseTime (releaseTime); + + yold.resize (spec.numChannels); + + reset(); +} + +template +void BallisticsFilter::reset() +{ + reset (0); +} + +template +void BallisticsFilter::reset (SampleType initialValue) +{ + for (auto& old : yold) + old = initialValue; +} + +template +SampleType BallisticsFilter::processSample (int channel, SampleType inputValue) +{ + jassert (isPositiveAndBelow (channel, yold.size())); + + SampleType cte = (inputValue > yold[(size_t) channel] ? cteAT : cteRL); + + if (levelType == LevelCalculationType::RMS) + inputValue *= inputValue; + + SampleType result = inputValue + cte * (yold[(size_t) channel] - inputValue); + yold[(size_t) channel] = result; + + if (levelType == LevelCalculationType::RMS) + return std::sqrt (result); + + return result; +} + +template +void BallisticsFilter::snapToZero() noexcept +{ + for (auto& old : yold) + util::snapToZero (old); +} + +template +SampleType BallisticsFilter::calculateLimitedCte (SampleType timeMs) const noexcept +{ + return timeMs < static_cast (1.0e-3) ? 0 + : static_cast (std::exp (expFactor / timeMs)); +} + +//============================================================================== +template class BallisticsFilter; +template class BallisticsFilter; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/processors/juce_BallisticsFilter.h b/modules/juce_dsp/processors/juce_BallisticsFilter.h new file mode 100644 index 0000000000..f110ad2e65 --- /dev/null +++ b/modules/juce_dsp/processors/juce_BallisticsFilter.h @@ -0,0 +1,142 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +enum class BallisticsFilterLevelCalculationType +{ + peak, + RMS +}; + +/** + A processor to apply standard attack / release ballistics to an input signal. + This is useful in dynamics processors, envelope followers, modulated audio + effects and for smoothing animation in data visualisation. + + @tags{DSP} +*/ +template +class BallisticsFilter +{ +public: + //============================================================================== + using LevelCalculationType = BallisticsFilterLevelCalculationType; + + //============================================================================== + /** Constructor. */ + BallisticsFilter(); + + //============================================================================== + /** Sets the attack time in ms. + + Attack times less that 0.001 will be snapped to zero and very long attack + times will eventually saturate depending on the numerical precision used. + */ + void setAttackTime (SampleType attackTimeMs); + + /** Sets the release time in ms. + + Release times less that 0.001 will be snapped to zero and very long release + times will eventually saturate depending on the numerical precision used. + */ + void setReleaseTime (SampleType releaseTimeMs); + + /** Sets how the filter levels are calculated. + + Level calculation in digital envelope followers is usually performed using + peak detection with a rectifier function (like std::abs) and filtering, + which returns an envelope dependant on the peak or maximum values of the + signal amplitude. + + To perform an estimation of the average value of the signal you can use + an RMS (root mean squared) implementation of the ballistics filter instead. + This is useful in some compressor and noise-gate designs, or in specific + types of volume meters. + */ + void setLevelCalculationType (LevelCalculationType newCalculationType); + + //============================================================================== + /** Initialises the filter. */ + void prepare (const ProcessSpec& spec); + + /** Resets the internal state variables of the filter. */ + void reset(); + + /** Resets the internal state variables of the filter to the given initial value. */ + void reset (SampleType initialValue); + + //============================================================================== + /** Processes the input and output samples supplied in the processing context. */ + template + void process (const ProcessContext& context) noexcept + { + const auto& inputBlock = context.getInputBlock(); + auto& outputBlock = context.getOutputBlock(); + const auto numChannels = outputBlock.getNumChannels(); + const auto numSamples = outputBlock.getNumSamples(); + + jassert (inputBlock.getNumChannels() <= yold.size()); + jassert (inputBlock.getNumChannels() == numChannels); + jassert (inputBlock.getNumSamples() == numSamples); + + if (context.isBypassed) + { + outputBlock.copyFrom (inputBlock); + return; + } + + for (size_t channel = 0; channel < numChannels; ++channel) + { + auto* inputSamples = inputBlock .getChannelPointer (channel); + auto* outputSamples = outputBlock.getChannelPointer (channel); + + for (size_t i = 0; i < numSamples; ++i) + outputSamples[i] = processSample (inputSamples[i], (int) channel); + } + + #if JUCE_SNAP_TO_ZERO + snapToZero(); + #endif + } + + /** Processes one sample at a time on a given channel. */ + SampleType processSample (int channel, SampleType inputValue); + + /** Ensure that the state variables are rounded to zero if the state + variables are denormals. This is only needed if you are doing + sample by sample processing. + */ + void snapToZero() noexcept; + +private: + //============================================================================== + SampleType calculateLimitedCte (SampleType) const noexcept; + + //============================================================================== + std::vector yold; + double sampleRate = 44100.0, expFactor = -0.142; + SampleType attackTime = 1.0, releaseTime = 100.0, cteAT = 0.0, cteRL = 0.0; + LevelCalculationType levelType = LevelCalculationType::peak; +}; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/processors/juce_DelayLine.cpp b/modules/juce_dsp/processors/juce_DelayLine.cpp new file mode 100644 index 0000000000..01bf4605d9 --- /dev/null +++ b/modules/juce_dsp/processors/juce_DelayLine.cpp @@ -0,0 +1,121 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +//============================================================================== +template +DelayLine::DelayLine() + : DelayLine (0) +{ +} + +template +DelayLine::DelayLine (int maximumDelayInSamples) +{ + jassert (maximumDelayInSamples >= 0); + + totalSize = jmax (4, maximumDelayInSamples + 1); + sampleRate = 44100.0; +} + +//============================================================================== +template +void DelayLine::setDelay (SampleType newDelayInSamples) +{ + auto upperLimit = (SampleType) (totalSize - 1); + jassert (isPositiveAndNotGreaterThan (newDelayInSamples, upperLimit)); + + delay = jlimit ((SampleType) 0, upperLimit, newDelayInSamples); + delayInt = static_cast (std::floor (delay)); + delayFrac = delay - (SampleType) delayInt; + + updateInternalVariables(); +} + +template +SampleType DelayLine::getDelay() const +{ + return delay; +} + +//============================================================================== +template +void DelayLine::prepare (const ProcessSpec& spec) +{ + jassert (spec.numChannels > 0); + + bufferData.setSize ((int) spec.numChannels, totalSize, false, false, true); + + writePos.resize (spec.numChannels); + readPos.resize (spec.numChannels); + + v.resize (spec.numChannels); + sampleRate = spec.sampleRate; + + reset(); +} + +template +void DelayLine::reset() +{ + for (auto vec : { &writePos, &readPos }) + std::fill (vec->begin(), vec->end(), 0); + + std::fill (v.begin(), v.end(), static_cast (0)); + + bufferData.clear(); +} + +//============================================================================== +template +void DelayLine::pushSample (int channel, SampleType sample) +{ + bufferData.setSample (channel, writePos[(size_t) channel], sample); + writePos[(size_t) channel] = (writePos[(size_t) channel] + totalSize - 1) % totalSize; +} + +template +SampleType DelayLine::popSample (int channel, SampleType delayInSamples, bool updateReadPointer) +{ + if (delayInSamples >= 0) + setDelay(delayInSamples); + + auto result = interpolateSample (channel); + + if (updateReadPointer) + readPos[(size_t) channel] = (readPos[(size_t) channel] + totalSize - 1) % totalSize; + + return result; +} + +//============================================================================== +template class DelayLine; +template class DelayLine; +template class DelayLine; +template class DelayLine; +template class DelayLine; +template class DelayLine; +template class DelayLine; +template class DelayLine; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/processors/juce_DelayLine.h b/modules/juce_dsp/processors/juce_DelayLine.h new file mode 100644 index 0000000000..250ac07c98 --- /dev/null +++ b/modules/juce_dsp/processors/juce_DelayLine.h @@ -0,0 +1,309 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +//============================================================================== +/** + A collection of structs to pass as the template argument when setting the + interpolation type for the DelayLine class. +*/ +namespace DelayLineInterpolationTypes +{ + /** + No interpolation between successive samples in the delay line will be + performed. This is useful when the delay is a constant integer or to + create lo-fi audio effects. + */ + struct None {}; + + /** + Successive samples in the delay line will be linearly interpolated. This + type of interpolation has a low compuational cost where the delay can be + modulated in real time, but it also introduces a low-pass filtering effect + into your audio signal. + */ + struct Linear {}; + + /** + Successive samples in the delay line will be interpolated using a 3rd order + Lagrange interpolator. This method incurs more computational overhead than + linear interpolation but reduces the low-pass filtering effect whilst + remaining amenable to real time delay modulation. + */ + struct Lagrange3rd {}; + + /** + Successive samples in the delay line will be interpolated using 1st order + Thiran interpolation. This method is very efficient, and features a flat + amplitude frequency response in exchange for less accuracy in the phase + response. This interpolation method is stateful so is unsuitable for + applications requiring fast delay modulation. + */ + struct Thiran {}; +} + +//============================================================================== +/** + A delay line processor featuring several algorithms for the fractional delay + calculation, block processing, and sample-by-sample processing useful when + modulating the delay in real time or creating a standard delay effect with + feedback. + + Note: If you intend to change the delay in real time, you may want to smooth + changes to the delay systematically using either a ramp or a low-pass filter. + + @see SmoothedValue, FirstOrderTPTFilter + + @tags{DSP} +*/ +template +class DelayLine +{ +public: + //============================================================================== + /** Default constructor. */ + DelayLine(); + + /** Constructor. */ + explicit DelayLine (int maximumDelayInSamples); + + //============================================================================== + /** Sets the delay in samples. */ + void setDelay (SampleType newDelayInSamples); + + /** Returns the current delay in samples. */ + SampleType getDelay() const; + + //============================================================================== + /** Initialises the processor. */ + void prepare (const ProcessSpec& spec); + + /** Resets the internal state variables of the processor. */ + void reset(); + + //============================================================================== + /** Pushes a single sample into one channel of the delay line. + + Use this function and popSample instead of process if you need to modulate + the delay in real time instead of using a fixed delay value, or if you want + to code a delay effect with a feedback loop. + + @see setDelay, popSample, process + */ + void pushSample (int channel, SampleType sample); + + /** Pops a single sample from one channel of the delay line. + + Use this function to modulate the delay in real time or implement standard + delay effects with feedback. + + @param channel the target channel for the delay line. + + @param delayInSamples sets the wanted fractional delay in samples, or -1 + to use the value being used before or set with + setDelay function. + + @param updateReadPointer should be set to true if you use the function + once for each sample, or false if you need + multi-tap delay capabilities. + + @see setDelay, pushSample, process + */ + SampleType popSample (int channel, SampleType delayInSamples = -1, bool updateReadPointer = true); + + //============================================================================== + /** Processes the input and output samples supplied in the processing context. + + Can be used for block processing when the delay is not going to change + during processing. The delay must first be set by calling setDelay. + + @see setDelay + */ + template + void process (const ProcessContext& context) noexcept + { + const auto& inputBlock = context.getInputBlock(); + auto& outputBlock = context.getOutputBlock(); + const auto numChannels = outputBlock.getNumChannels(); + const auto numSamples = outputBlock.getNumSamples(); + + jassert (inputBlock.getNumChannels() == numChannels); + jassert (inputBlock.getNumChannels() == writePos.size()); + jassert (inputBlock.getNumSamples() == numSamples); + + if (context.isBypassed) + { + outputBlock.copyFrom (inputBlock); + return; + } + + for (size_t channel = 0; channel < numChannels; ++channel) + { + auto* inputSamples = inputBlock.getChannelPointer (channel); + auto* outputSamples = outputBlock.getChannelPointer (channel); + + for (size_t i = 0; i < numSamples; ++i) + { + pushSample ((int) channel, inputSamples[i]); + outputSamples[i] = popSample ((int) channel); + } + } + } + +private: + //============================================================================== + template + typename std::enable_if ::value, SampleType>::type + interpolateSample (int channel) const + { + auto index = (readPos[(size_t) channel] + delayInt) % totalSize; + return bufferData.getSample (channel, index); + } + + template + typename std::enable_if ::value, SampleType>::type + interpolateSample (int channel) const + { + auto index1 = readPos[(size_t) channel] + delayInt; + auto index2 = index1 + 1; + + if (index2 >= totalSize) + { + index1 %= totalSize; + index2 %= totalSize; + } + + auto value1 = bufferData.getSample (channel, index1); + auto value2 = bufferData.getSample (channel, index2); + + return value1 + delayFrac * (value2 - value1); + } + + template + typename std::enable_if ::value, SampleType>::type + interpolateSample (int channel) const + { + auto index1 = readPos[(size_t) channel] + delayInt; + auto index2 = index1 + 1; + auto index3 = index2 + 1; + auto index4 = index3 + 1; + + if (index4 >= totalSize) + { + index1 %= totalSize; + index2 %= totalSize; + index3 %= totalSize; + index4 %= totalSize; + } + + auto* samples = bufferData.getReadPointer (channel); + + auto value1 = samples[index1]; + auto value2 = samples[index2]; + auto value3 = samples[index3]; + auto value4 = samples[index4]; + + auto d1 = delayFrac - 1.f; + auto d2 = delayFrac - 2.f; + auto d3 = delayFrac - 3.f; + + auto c1 = -d1 * d2 * d3 / 6.f; + auto c2 = d2 * d3 * 0.5f; + auto c3 = -d1 * d3 * 0.5f; + auto c4 = d1 * d2 / 6.f; + + return value1 * c1 + delayFrac * (value2 * c2 + value3 * c3 + value4 * c4); + } + + template + typename std::enable_if ::value, SampleType>::type + interpolateSample (int channel) + { + auto index1 = readPos[(size_t) channel] + delayInt; + auto index2 = index1 + 1; + + if (index2 >= totalSize) + { + index1 %= totalSize; + index2 %= totalSize; + } + + auto value1 = bufferData.getSample (channel, index1); + auto value2 = bufferData.getSample (channel, index2); + + auto output = delayFrac == 0 ? value1 : value2 + alpha * (value1 - v[(size_t) channel]); + v[(size_t) channel] = output; + + return output; + } + + //============================================================================== + template + typename std::enable_if ::value, void>::type + updateInternalVariables() + { + } + + template + typename std::enable_if ::value, void>::type + updateInternalVariables() + { + } + + template + typename std::enable_if ::value, void>::type + updateInternalVariables() + { + if (delayInt >= 1) + { + delayFrac++; + delayInt--; + } + } + + template + typename std::enable_if ::value, void>::type + updateInternalVariables() + { + if (delayFrac < (SampleType) 0.618 && delayInt >= 1) + { + delayFrac++; + delayInt--; + } + + alpha = (1 - delayFrac) / (1 + delayFrac); + } + + //============================================================================== + double sampleRate; + + //============================================================================== + AudioBuffer bufferData; + std::vector v; + std::vector writePos, readPos; + SampleType delay = 0.0, delayFrac = 0.0; + int delayInt = 0, totalSize = 4; + SampleType alpha = 0.0; +}; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/processors/juce_DryWetMixer.cpp b/modules/juce_dsp/processors/juce_DryWetMixer.cpp new file mode 100644 index 0000000000..450400b8ad --- /dev/null +++ b/modules/juce_dsp/processors/juce_DryWetMixer.cpp @@ -0,0 +1,172 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +//============================================================================== +template +DryWetMixer::DryWetMixer() + : DryWetMixer (0) +{ +} + +template +DryWetMixer::DryWetMixer (int maximumWetLatencyInSamples) + : dryDelayLine (maximumWetLatencyInSamples) +{ + dryDelayLine.setDelay (0); + + update(); + reset(); +} + +//============================================================================== +template +void DryWetMixer::setMixingRule (MixingRule newRule) +{ + currentMixingRule = newRule; + update(); +} + +template +void DryWetMixer::setWetMixProportion (SampleType newWetMixProportion) +{ + jassert (isPositiveAndNotGreaterThan (newWetMixProportion, 1.0)); + + mix = jlimit (static_cast (0.0), static_cast (1.0), newWetMixProportion); + update(); +} + +template +void DryWetMixer::setWetLatency (SampleType wetLatencySamples) +{ + dryDelayLine.setDelay (wetLatencySamples); +} + +//============================================================================== +template +void DryWetMixer::prepare (const ProcessSpec& spec) +{ + jassert (spec.sampleRate > 0); + jassert (spec.numChannels > 0); + + sampleRate = spec.sampleRate; + + dryDelayLine.prepare (spec); + bufferDry.setSize ((int) spec.numChannels, (int) spec.maximumBlockSize, false, false, true); + + update(); + reset(); +} + +template +void DryWetMixer::reset() +{ + dryVolume.reset (sampleRate, 0.05); + wetVolume.reset (sampleRate, 0.05); + + dryDelayLine.reset(); +} + +//============================================================================== +template +void DryWetMixer::pushDrySamples (const AudioBlock drySamples) +{ + jassert (drySamples.getNumChannels() <= (size_t) bufferDry.getNumChannels()); + + auto dryBlock = AudioBlock (bufferDry); + dryBlock = dryBlock.getSubsetChannelBlock (0, drySamples.getNumChannels()).getSubBlock (0, drySamples.getNumSamples()); + + auto context = ProcessContextNonReplacing(drySamples, dryBlock); + dryDelayLine.process (context); +} + +template +void DryWetMixer::mixWetSamples (AudioBlock inOutBlock) +{ + auto dryBlock = AudioBlock (bufferDry); + dryBlock = dryBlock.getSubsetChannelBlock (0, inOutBlock.getNumChannels()).getSubBlock (0, inOutBlock.getNumSamples()); + + dryBlock.multiplyBy (dryVolume); + inOutBlock.multiplyBy (wetVolume); + + inOutBlock.add (dryBlock); +} + +//============================================================================== +template +void DryWetMixer::update() +{ + SampleType dryValue, wetValue; + + switch (currentMixingRule) + { + case MixingRule::balanced: + dryValue = static_cast (2.0) * jmin (static_cast (0.5), static_cast (1.0) - mix); + wetValue = static_cast (2.0) * jmin (static_cast (0.5), mix); + break; + + case MixingRule::linear: + dryValue = static_cast (1.0) - mix; + wetValue = mix; + break; + + case MixingRule::sin3dB: + dryValue = static_cast (std::sin (0.5 * MathConstants::pi * (1.0 - mix))); + wetValue = static_cast (std::sin (0.5 * MathConstants::pi * mix)); + break; + + case MixingRule::sin4p5dB: + dryValue = static_cast (std::pow (std::sin (0.5 * MathConstants::pi * (1.0 - mix)), 1.5)); + wetValue = static_cast (std::pow (std::sin (0.5 * MathConstants::pi * mix), 1.5)); + break; + + case MixingRule::sin6dB: + dryValue = static_cast (std::pow (std::sin (0.5 * MathConstants::pi * (1.0 - mix)), 2.0)); + wetValue = static_cast (std::pow (std::sin (0.5 * MathConstants::pi * mix), 2.0)); + break; + + case MixingRule::squareRoot3dB: + dryValue = std::sqrt (static_cast (1.0) - mix); + wetValue = std::sqrt (mix); + break; + + case MixingRule::squareRoot4p5dB: + dryValue = static_cast (std::pow (std::sqrt (1.0 - mix), 1.5)); + wetValue = static_cast (std::pow (std::sqrt (mix), 1.5)); + break; + + default: + dryValue = jmin (static_cast (0.5), static_cast (1.0) - mix); + wetValue = jmin (static_cast (0.5), mix); + break; + } + + dryVolume.setTargetValue (dryValue); + wetVolume.setTargetValue (wetValue); +} + +//============================================================================== +template class DryWetMixer; +template class DryWetMixer; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/processors/juce_DryWetMixer.h b/modules/juce_dsp/processors/juce_DryWetMixer.h new file mode 100644 index 0000000000..11b4998518 --- /dev/null +++ b/modules/juce_dsp/processors/juce_DryWetMixer.h @@ -0,0 +1,110 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +enum class DryWetMixingRule +{ + linear, + balanced, + sin3dB, + sin4p5dB, + sin6dB, + squareRoot3dB, + squareRoot4p5dB +}; + +/** + A processor to handle dry/wet mixing of two audio signals, where the wet signal + may have additional latency. + + Once a DryWetMixer object is configured, push the dry samples using pushDrySamples + and mix into the fully wet samples using mixWetSamples. + + @tags{DSP} +*/ +template +class DryWetMixer +{ +public: + //============================================================================== + using MixingRule = DryWetMixingRule; + + //============================================================================== + /** Default constructor. */ + DryWetMixer(); + + /** Constructor. */ + explicit DryWetMixer (int maximumWetLatencyInSamples); + + //============================================================================== + /** Sets the mix rule. */ + void setMixingRule (MixingRule newRule); + + /** Sets the current dry/wet mix proportion, with 0.0 being full dry and 1.0 + being fully wet. + */ + void setWetMixProportion (SampleType newWetMixProportion); + + /** Sets the relative latency of the wet signal path compared to the dry signal + path, and thus the amount of latency compensation that will be added to the + dry samples in this processor. + */ + void setWetLatency (SampleType wetLatencyInSamples); + + //============================================================================== + /** Initialises the processor. */ + void prepare (const ProcessSpec& spec); + + /** Resets the internal state variables of the processor. */ + void reset(); + + //============================================================================== + /** Copies the dry path samples into an internal delay line. */ + void pushDrySamples (const AudioBlock drySamples); + + /** Mixes the supplied wet samples with the latency-compensated dry samples from + pushDrySamples. + + @param wetSamples Input: The AudioBlock references fully wet samples. + Output: The AudioBlock references the wet samples mixed + with the latency compensated dry samples. + + @see pushDrySamples + */ + void mixWetSamples (AudioBlock wetSamples); + +private: + //============================================================================== + void update(); + + //============================================================================== + SmoothedValue dryVolume, wetVolume; + DelayLine dryDelayLine; + AudioBuffer bufferDry; + + SampleType mix = 1.0; + MixingRule currentMixingRule = MixingRule::linear; + double sampleRate = 44100.0; +}; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/processors/juce_FirstOrderTPTFilter.cpp b/modules/juce_dsp/processors/juce_FirstOrderTPTFilter.cpp new file mode 100644 index 0000000000..812a9cdf8c --- /dev/null +++ b/modules/juce_dsp/processors/juce_FirstOrderTPTFilter.cpp @@ -0,0 +1,114 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +//============================================================================== +template +FirstOrderTPTFilter::FirstOrderTPTFilter() +{ + update(); +} + +//============================================================================== +template +void FirstOrderTPTFilter::setType (Type newValue) +{ + filterType = newValue; +} + +template +void FirstOrderTPTFilter::setCutoffFrequency (SampleType newValue) +{ + jassert (isPositiveAndBelow (newValue, static_cast (sampleRate * 0.5))); + + cutoffFrequency = newValue; + update(); +} + +//============================================================================== +template +void FirstOrderTPTFilter::prepare (const ProcessSpec& spec) +{ + jassert (spec.sampleRate > 0); + jassert (spec.numChannels > 0); + + sampleRate = spec.sampleRate; + s1.resize (spec.numChannels); + + reset(); +} + +template +void FirstOrderTPTFilter::reset() +{ + reset (static_cast (0)); +} + +template +void FirstOrderTPTFilter::reset (SampleType newValue) +{ + std::fill (s1.begin(), s1.end(), newValue); +} + +//============================================================================== +template +SampleType FirstOrderTPTFilter::processSample (int channel, SampleType inputValue) +{ + auto& s = s1[(size_t) channel]; + + auto v = G * (inputValue - s); + auto y = v + s; + s = y + v; + + switch (filterType) + { + case Type::lowpass: return y; + case Type::highpass: return inputValue - y; + case Type::allpass: return 2 * y - inputValue; + default: break; + } + + jassertfalse; + return y; +} + +template +void FirstOrderTPTFilter::snapToZero() noexcept +{ + for (auto& s : s1) + util::snapToZero (s); +} + +//============================================================================== +template +void FirstOrderTPTFilter::update() +{ + auto g = SampleType (std::tan (juce::MathConstants::pi * cutoffFrequency / sampleRate)); + G = g / (1 + g); +} + +//============================================================================== +template class FirstOrderTPTFilter; +template class FirstOrderTPTFilter; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/processors/juce_FirstOrderTPTFilter.h b/modules/juce_dsp/processors/juce_FirstOrderTPTFilter.h new file mode 100644 index 0000000000..b2d884d696 --- /dev/null +++ b/modules/juce_dsp/processors/juce_FirstOrderTPTFilter.h @@ -0,0 +1,144 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +enum class FirstOrderTPTFilterType +{ + lowpass, + highpass, + allpass +}; + +//============================================================================== +/** + A first order filter class using the TPT (Topology-Preserving Transform) structure. + + This filter can be modulated at high rates without producing audio artefacts. See + Vadim Zavalishin's documentation about TPT structures for more information. + + Note: Using this class prevents some loud audio artefacts commonly encountered when + changing the cutoff frequency using of other filter simulation structures and IIR + filter classes. However, this class may still require additional smoothing for + cutoff frequency changes. + + see StateVariableFilter, IIRFilter, SmoothedValue + + @tags{DSP} +*/ +template +class FirstOrderTPTFilter +{ +public: + //============================================================================== + using Type = FirstOrderTPTFilterType; + + //============================================================================== + /** Constructor. */ + FirstOrderTPTFilter(); + + //============================================================================== + /** Sets the filter type. */ + void setType (Type newType); + + /** Sets the cutoff frequency of the filter. + + @param newFrequencyHz cutoff frequency in Hz. + */ + void setCutoffFrequency (SampleType newFrequencyHz); + + //============================================================================== + /** Returns the type of the filter. */ + Type getType() const noexcept { return filterType; } + + /** Returns the cutoff frequency of the filter. */ + SampleType getCutoffFrequency() const noexcept { return cutoffFrequency; } + + //============================================================================== + /** Initialises the filter. */ + void prepare (const ProcessSpec& spec); + + /** Resets the internal state variables of the filter. */ + void reset(); + + /** Resets the internal state variables of the filter to a given value. */ + void reset (SampleType newValue); + + //============================================================================== + /** Processes the input and output samples supplied in the processing context. */ + template + void process (const ProcessContext& context) noexcept + { + const auto& inputBlock = context.getInputBlock(); + auto& outputBlock = context.getOutputBlock(); + const auto numChannels = outputBlock.getNumChannels(); + const auto numSamples = outputBlock.getNumSamples(); + + jassert (inputBlock.getNumChannels() <= s1.size()); + jassert (inputBlock.getNumChannels() == numChannels); + jassert (inputBlock.getNumSamples() == numSamples); + + if (context.isBypassed) + { + outputBlock.copyFrom (inputBlock); + return; + } + + for (size_t channel = 0; channel < numChannels; ++channel) + { + auto* inputSamples = inputBlock .getChannelPointer (channel); + auto* outputSamples = outputBlock.getChannelPointer (channel); + + for (size_t i = 0; i < numSamples; ++i) + outputSamples[i] = processSample ((int) channel, inputSamples[i]); + } + + #if JUCE_SNAP_TO_ZERO + snapToZero(); + #endif + } + + //============================================================================== + /** Processes one sample at a time on a given channel. */ + SampleType processSample (int channel, SampleType inputValue); + + /** Ensure that the state variables are rounded to zero if the state + variables are denormals. This is only needed if you are doing + sample by sample processing. + */ + void snapToZero() noexcept; + +private: + //============================================================================== + void update(); + + //============================================================================== + SampleType G = 0; + std::vector s1 { 2 }; + double sampleRate = 44100.0; + + //============================================================================== + Type filterType = Type::lowpass; + SampleType cutoffFrequency = 1000.0; +}; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/processors/juce_IIRFilter.h b/modules/juce_dsp/processors/juce_IIRFilter.h index 7acb921c64..f295590b02 100644 --- a/modules/juce_dsp/processors/juce_IIRFilter.h +++ b/modules/juce_dsp/processors/juce_IIRFilter.h @@ -86,7 +86,7 @@ namespace IIR Note that this clears the processing state, but the type of filter and its coefficients aren't changed. */ - void reset() { reset (SampleType {0}); } + void reset() { reset (SampleType {0}); } /** Resets the filter's processing pipeline to a specific value. @see reset @@ -105,6 +105,10 @@ namespace IIR processInternal (context); else processInternal (context); + + #if JUCE_SNAP_TO_ZERO + snapToZero(); + #endif } /** Processes a single sample, without any locking. diff --git a/modules/juce_dsp/processors/juce_LadderFilter.cpp b/modules/juce_dsp/processors/juce_LadderFilter.cpp deleted file mode 100644 index 55d7b983c6..0000000000 --- a/modules/juce_dsp/processors/juce_LadderFilter.cpp +++ /dev/null @@ -1,162 +0,0 @@ -/* - ============================================================================== - - This file is part of the JUCE 6 technical preview. - Copyright (c) 2020 - Raw Material Software Limited - - You may use this code under the terms of the GPL v3 - (see www.gnu.org/licenses). - - For this technical preview, this file is not subject to commercial licensing. - - JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER - EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE - DISCLAIMED. - - ============================================================================== -*/ - -namespace juce -{ -namespace dsp -{ - -//============================================================================== -template -LadderFilter::LadderFilter() : state (2) -{ - setSampleRate (Type (1000)); // intentionally setting unrealistic default - // sample rate to catch missing initialisation bugs - setResonance (Type (0)); - setDrive (Type (1.2)); - setMode (Mode::LPF12); -} - -//============================================================================== -template -void LadderFilter::setMode (Mode newValue) noexcept -{ - switch (newValue) - { - case Mode::LPF12: A = {{ Type (0), Type (0), Type (1), Type (0), Type (0) }}; comp = Type (0.5); break; - case Mode::HPF12: A = {{ Type (1), Type (-2), Type (1), Type (0), Type (0) }}; comp = Type (0); break; - case Mode::LPF24: A = {{ Type (0), Type (0), Type (0), Type (0), Type (1) }}; comp = Type (0.5); break; - case Mode::HPF24: A = {{ Type (1), Type (-4), Type (6), Type (-4), Type (1) }}; comp = Type (0); break; - default: jassertfalse; break; - } - - static constexpr auto outputGain = Type (1.2); - - for (auto& a : A) - a *= outputGain; - - mode = newValue; - reset(); -} - -//============================================================================== -template -void LadderFilter::prepare (const juce::dsp::ProcessSpec& spec) -{ - setSampleRate (Type (spec.sampleRate)); - setNumChannels (spec.numChannels); - reset(); -} - -//============================================================================== -template -void LadderFilter::reset() noexcept -{ - for (auto& s : state) - s.fill (Type (0)); - - cutoffTransformSmoother.setCurrentAndTargetValue (cutoffTransformSmoother.getTargetValue()); - scaledResonanceSmoother.setCurrentAndTargetValue (scaledResonanceSmoother.getTargetValue()); -} - -//============================================================================== -template -void LadderFilter::setCutoffFrequencyHz (Type newValue) noexcept -{ - jassert (newValue > Type (0)); - cutoffFreqHz = newValue; - updateCutoffFreq(); -} - -//============================================================================== -template -void LadderFilter::setResonance (Type newValue) noexcept -{ - jassert (newValue >= Type (0) && newValue <= Type (1)); - resonance = newValue; - updateResonance(); -} - -//============================================================================== -template -void LadderFilter::setDrive (Type newValue) noexcept -{ - jassert (newValue >= Type (1)); - - drive = newValue; - gain = std::pow (drive, Type (-2.642)) * Type (0.6103) + Type (0.3903); - drive2 = drive * Type (0.04) + Type (0.96); - gain2 = std::pow (drive2, Type (-2.642)) * Type (0.6103) + Type (0.3903); -} - -//============================================================================== -template -Type LadderFilter::processSample (Type inputValue, size_t channelToUse) noexcept -{ - auto& s = state[channelToUse]; - - const auto a1 = cutoffTransformValue; - const auto g = a1 * Type (-1) + Type (1); - const auto b0 = g * Type (0.76923076923); - const auto b1 = g * Type (0.23076923076); - - const auto dx = gain * saturationLUT (drive * inputValue); - const auto a = dx + scaledResonanceValue * Type (-4) * (gain2 * saturationLUT (drive2 * s[4]) - dx * comp); - - const auto b = b1 * s[0] + a1 * s[1] + b0 * a; - const auto c = b1 * s[1] + a1 * s[2] + b0 * b; - const auto d = b1 * s[2] + a1 * s[3] + b0 * c; - const auto e = b1 * s[3] + a1 * s[4] + b0 * d; - - s[0] = a; - s[1] = b; - s[2] = c; - s[3] = d; - s[4] = e; - - return a * A[0] + b * A[1] + c * A[2] + d * A[3] + e * A[4]; -} - -//============================================================================== -template -void LadderFilter::updateSmoothers() noexcept -{ - cutoffTransformValue = cutoffTransformSmoother.getNextValue(); - scaledResonanceValue = scaledResonanceSmoother.getNextValue(); -} - -//============================================================================== -template -void LadderFilter::setSampleRate (Type newValue) noexcept -{ - jassert (newValue > Type (0)); - cutoffFreqScaler = Type (-2.0 * juce::MathConstants::pi) / newValue; - - static constexpr Type smootherRampTimeSec = Type (0.05); - cutoffTransformSmoother.reset (newValue, smootherRampTimeSec); - scaledResonanceSmoother.reset (newValue, smootherRampTimeSec); - - updateCutoffFreq(); -} - -//============================================================================== -template class LadderFilter; -template class LadderFilter; - -} // namespace dsp -} // namespace juce diff --git a/modules/juce_dsp/processors/juce_LinkwitzRileyFilter.cpp b/modules/juce_dsp/processors/juce_LinkwitzRileyFilter.cpp new file mode 100644 index 0000000000..5987445993 --- /dev/null +++ b/modules/juce_dsp/processors/juce_LinkwitzRileyFilter.cpp @@ -0,0 +1,142 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +//============================================================================== +template +LinkwitzRileyFilter::LinkwitzRileyFilter() +{ + update(); +} + +//============================================================================== +template +void LinkwitzRileyFilter::setType (Type newType) +{ + filterType = newType; +} + +template +void LinkwitzRileyFilter::setCutoffFrequency (SampleType newCutoffFrequencyHz) +{ + jassert (isPositiveAndBelow (newCutoffFrequencyHz, static_cast (sampleRate * 0.5))); + + cutoffFrequency = newCutoffFrequencyHz; + update(); +} + +//============================================================================== +template +void LinkwitzRileyFilter::prepare (const ProcessSpec& spec) +{ + jassert (spec.sampleRate > 0); + jassert (spec.numChannels > 0); + + sampleRate = spec.sampleRate; + update(); + + s1.resize (spec.numChannels); + s2.resize (spec.numChannels); + s3.resize (spec.numChannels); + s4.resize (spec.numChannels); + + reset(); +} + +template +void LinkwitzRileyFilter::reset() +{ + for (auto s : { &s1, &s2, &s3, &s4 }) + std::fill (s->begin(), s->end(), static_cast (0)); +} + +template +void LinkwitzRileyFilter::snapToZero() noexcept +{ + for (auto s : { &s1, &s2, &s3, &s4 }) + for (auto& element : *s) + util::snapToZero (element); +} + +//============================================================================== +template +SampleType LinkwitzRileyFilter::processSample (int channel, SampleType inputValue) +{ + auto yH = (inputValue - (R2 + g) * s1[(size_t) channel] - s2[(size_t) channel]) * h; + + auto yB = g * yH + s1[(size_t) channel]; + s1[(size_t) channel] = g * yH + yB; + + auto yL = g * yB + s2[(size_t) channel]; + s2[(size_t) channel] = g * yB + yL; + + if (filterType == Type::allpass) + return yL - R2 * yB + yH; + + auto yH2 = ((filterType == Type::lowpass ? yL : yH) - (R2 + g) * s3[(size_t) channel] - s4[(size_t) channel]) * h; + + auto yB2 = g * yH2 + s3[(size_t) channel]; + s3[(size_t) channel] = g * yH2 + yB2; + + auto yL2 = g * yB2 + s4[(size_t) channel]; + s4[(size_t) channel] = g * yB2 + yL2; + + return filterType == Type::lowpass ? yL2 : yH2; +} + +template +void LinkwitzRileyFilter::processSample (int channel, SampleType inputValue, SampleType &outputLow, SampleType &outputHigh) +{ + auto yH = (inputValue - (R2 + g) * s1[(size_t) channel] - s2[(size_t) channel]) * h; + + auto yB = g * yH + s1[(size_t) channel]; + s1[(size_t) channel] = g * yH + yB; + + auto yL = g * yB + s2[(size_t) channel]; + s2[(size_t) channel] = g * yB + yL; + + auto yH2 = (yL - (R2 + g) * s3[(size_t) channel] - s4[(size_t) channel]) * h; + + auto yB2 = g * yH2 + s3[(size_t) channel]; + s3[(size_t) channel] = g * yH2 + yB2; + + auto yL2 = g * yB2 + s4[(size_t) channel]; + s4[(size_t) channel] = g * yB2 + yL2; + + outputLow = yL2; + outputHigh = yL - R2 * yB + yH - yL2; +} + +template +void LinkwitzRileyFilter::update() +{ + g = (SampleType) std::tan (MathConstants::pi * cutoffFrequency / sampleRate); + R2 = (SampleType) std::sqrt (2.0); + h = (SampleType) (1.0 / (1.0 + R2 * g + g * g)); +} + +//============================================================================== +template class LinkwitzRileyFilter; +template class LinkwitzRileyFilter; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/processors/juce_LinkwitzRileyFilter.h b/modules/juce_dsp/processors/juce_LinkwitzRileyFilter.h new file mode 100644 index 0000000000..b918845fdd --- /dev/null +++ b/modules/juce_dsp/processors/juce_LinkwitzRileyFilter.h @@ -0,0 +1,136 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +enum class LinkwitzRileyFilterType +{ + lowpass, + highpass, + allpass +}; + +/** + A filter class designed to perform multi-band separation using the TPT + (Topology-Preserving Transform) structure. + + Linkwitz-Riley filters are widely used in audio crossovers that have two outputs, + a low-pass and a high-pass, such that their sum is equivalent to an all-pass filter + with a flat magnitude frequency response. The Linkwitz-Riley filters available in + this class are designed to have a -24 dB/octave slope (LR 4th order). + + @tags{DSP} +*/ +template +class LinkwitzRileyFilter +{ +public: + //============================================================================== + using Type = LinkwitzRileyFilterType; + + //============================================================================== + /** Constructor. */ + LinkwitzRileyFilter(); + + //============================================================================== + /** Sets the filter type. */ + void setType (Type newType); + + /** Sets the cutoff frequency of the filter in Hz. */ + void setCutoffFrequency (SampleType newCutoffFrequencyHz); + + //============================================================================== + /** Returns the type of the filter. */ + Type getType() const noexcept { return filterType; } + + /** Returns the cutoff frequency of the filter. */ + SampleType getCutoffFrequency() const noexcept { return cutoffFrequency; } + + //============================================================================== + /** Initialises the filter. */ + void prepare (const ProcessSpec& spec); + + /** Resets the internal state variables of the filter. */ + void reset(); + + //============================================================================== + /** Processes the input and output samples supplied in the processing context. */ + template + void process (const ProcessContext& context) noexcept + { + const auto& inputBlock = context.getInputBlock(); + auto& outputBlock = context.getOutputBlock(); + const auto numChannels = outputBlock.getNumChannels(); + const auto numSamples = outputBlock.getNumSamples(); + + jassert (inputBlock.getNumChannels() <= s1.size()); + jassert (inputBlock.getNumChannels() == numChannels); + jassert (inputBlock.getNumSamples() == numSamples); + + if (context.isBypassed) + { + outputBlock.copyFrom (inputBlock); + return; + } + + for (size_t channel = 0; channel < numChannels; ++channel) + { + auto* inputSamples = inputBlock.getChannelPointer (channel); + auto* outputSamples = outputBlock.getChannelPointer (channel); + + for (size_t i = 0; i < numSamples; ++i) + outputSamples[i] = processSample ((int) channel, inputSamples[i]); + } + + #if JUCE_SNAP_TO_ZERO + snapToZero(); + #endif + } + + /** Performs the filter operation on a single sample at a time. */ + SampleType processSample (int channel, SampleType inputValue); + + /** Performs the filter operation on a single sample at a time, and returns both + the low-pass and the high-pass outputs of the TPT structure. + */ + void processSample (int channel, SampleType inputValue, SampleType &outputLow, SampleType &outputHigh); + + /** Ensure that the state variables are rounded to zero if the state + variables are denormals. This is only needed if you are doing + sample by sample processing. + */ + void snapToZero() noexcept; + +private: + //============================================================================== + void update(); + + //============================================================================== + SampleType g, R2, h; + std::vector s1, s2, s3, s4; + + double sampleRate = 44100.0; + SampleType cutoffFrequency = 2000.0; + Type filterType = Type::lowpass; +}; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/processors/juce_Oversampling.cpp b/modules/juce_dsp/processors/juce_Oversampling.cpp index ebf3ebe134..f3fc9912dd 100644 --- a/modules/juce_dsp/processors/juce_Oversampling.cpp +++ b/modules/juce_dsp/processors/juce_Oversampling.cpp @@ -356,8 +356,9 @@ struct Oversampling2TimesPolyphaseIIR : public Oversampling::Oversa } } - // Snap To Zero + #if JUCE_SNAP_TO_ZERO snapToZero (true); + #endif } void processSamplesDown (AudioBlock& outputBlock) override @@ -414,8 +415,9 @@ struct Oversampling2TimesPolyphaseIIR : public Oversampling::Oversa delayDown.setUnchecked (static_cast (channel), delay); } - // Snap To Zero + #if JUCE_SNAP_TO_ZERO snapToZero (false); + #endif } void snapToZero (bool snapUpProcessing) @@ -498,10 +500,10 @@ private: coeffs.coefficients.clear(); auto inversion = one / denominator[0]; - for (auto i = 0; i <= numerator.getOrder(); ++i) + for (int i = 0; i <= numerator.getOrder(); ++i) coeffs.coefficients.add (numerator[i] * inversion); - for (auto i = 1; i <= denominator.getOrder(); ++i) + for (int i = 1; i <= denominator.getOrder(); ++i) coeffs.coefficients.add (denominator[i] * inversion); return coeffs; @@ -531,8 +533,9 @@ Oversampling::Oversampling (size_t newNumChannels) template Oversampling::Oversampling (size_t newNumChannels, size_t newFactor, - FilterType newType, bool isMaximumQuality) - : numChannels (newNumChannels) + FilterType newType, bool isMaximumQuality, + bool useIntegerLatency) + : numChannels (newNumChannels), shouldUseIntegerLatency (useIntegerLatency) { jassert (isPositiveAndBelow (newFactor, 5) && numChannels > 0); @@ -620,8 +623,21 @@ void Oversampling::clearOversamplingStages() } //============================================================================== +template +void Oversampling::setUsingIntegerLatency (bool useIntegerLatency) noexcept +{ + shouldUseIntegerLatency = useIntegerLatency; +} + template SampleType Oversampling::getLatencyInSamples() const noexcept +{ + auto latency = getUncompensatedLatency(); + return shouldUseIntegerLatency ? latency + fractionalDelay : latency; +} + +template +SampleType Oversampling::getUncompensatedLatency() const noexcept { auto latency = static_cast (0); size_t order = 1; @@ -654,6 +670,10 @@ void Oversampling::initProcessing (size_t maximumNumberOfSamplesBefo currentNumSamples *= stage->factor; } + ProcessSpec spec = { 0.0, (uint32) maximumNumberOfSamplesBeforeOversampling, (uint32) numChannels }; + delay.prepare (spec); + updateDelayLine(); + isReady = true; reset(); } @@ -666,6 +686,8 @@ void Oversampling::reset() noexcept if (isReady) for (auto* stage : stages) stage->reset(); + + delay.reset(); } template @@ -712,6 +734,26 @@ void Oversampling::processSamplesDown (AudioBlock& outpu } stages.getFirst()->processSamplesDown (outputBlock); + + if (shouldUseIntegerLatency && fractionalDelay > static_cast (0.0)) + { + auto context = ProcessContextReplacing (outputBlock); + delay.process (context); + } +} + +template +void Oversampling::updateDelayLine() +{ + auto latency = getUncompensatedLatency(); + fractionalDelay = static_cast (1.0) - (latency - std::floor (latency)); + + if (fractionalDelay == static_cast (1.0)) + fractionalDelay = static_cast (0.0); + else if (fractionalDelay < static_cast (0.618)) + fractionalDelay += static_cast (1.0); + + delay.setDelay (fractionalDelay); } template class Oversampling; diff --git a/modules/juce_dsp/processors/juce_Oversampling.h b/modules/juce_dsp/processors/juce_Oversampling.h index b1eb1f4315..d673916f78 100644 --- a/modules/juce_dsp/processors/juce_Oversampling.h +++ b/modules/juce_dsp/processors/juce_Oversampling.h @@ -21,24 +21,23 @@ namespace juce namespace dsp { -//============================================================================== +//=============================================================================== /** - A processing class performing multi-channel oversampling. + A processor that performs multi-channel oversampling. - It can be configured to do 2 times, 4 times, 8 times or 16 times oversampling - using a multi-stage approach, either polyphase allpass IIR filters or FIR - filters for the filtering, and reports successfully the latency added by the - filter stages. + This class can be configured to do a factor of 2, 4, 8 or 16 times + oversampling, using multiple stages, with polyphase allpass IIR filters or FIR + filters, and latency compensation. The principle of oversampling is to increase the sample rate of a given - non-linear process, to prevent it from creating aliasing. Oversampling works - by upsampling N times the input signal, processing the upsampled signal - with the increased internal sample rate, and downsampling the result to get - back the original processing sample rate. + non-linear process to prevent it from creating aliasing. Oversampling works + by upsampling the input signal N times, processing the upsampled signal + with the increased internal sample rate, then downsampling the result to get + back to the original sample rate. - Choose between FIR or IIR filtering depending on your needs in term of - latency and phase distortion. With FIR filters, the phase is linear but the - latency is maximised. With IIR filtering, the phase is compromised around the + Choose between FIR or IIR filtering depending on your needs in terms of + latency and phase distortion. With FIR filters the phase is linear but the + latency is maximised. With IIR filtering the phase is compromised around the Nyquist frequency but the latency is minimised. @see FilterDesign. @@ -57,52 +56,62 @@ public: numFilterTypes }; - //============================================================================== - /** - Constructor of the oversampling class. All the processing parameters must be - provided at the creation of the oversampling object. + //=============================================================================== + /** The default constructor. - @param numChannels the number of channels to process with this object - @param factor the processing will perform 2 ^ factor times oversampling - @param type the type of filter design employed for filtering during - oversampling - @param isMaxQuality if the oversampling is done using the maximum quality, - the filters will be more efficient, but the CPU load will - increase as well - */ - Oversampling (size_t numChannels, - size_t factor, - FilterType type, - bool isMaxQuality = true); - - /** The default constructor of the oversampling class, which can be used to create an - empty object and then add the appropriate stages. - - Note: This creates a "dummy" oversampling stage, which needs to be removed first + Note: This creates a "dummy" oversampling stage, which needs to be removed before adding proper oversampling stages. + @param numChannels the number of channels to process with this object + @see clearOversamplingStages, addOversamplingStage */ explicit Oversampling (size_t numChannels = 1); + /** Constructor. + + @param numChannels the number of channels to process with this object + @param factor the processing will perform 2 ^ factor times oversampling + @param type the type of filter design employed for filtering during + oversampling + @param isMaxQuality if the oversampling is done using the maximum quality, where + the filters will be more efficient but the CPU load will + increase as well + @param useIntegerLatency if true this processor will add some fractional delay at the + end of the signal path to ensure that the overall latency of + the oversampling is an integer + */ + Oversampling (size_t numChannels, + size_t factor, + FilterType type, + bool isMaxQuality = true, + bool useIntegerLatency = false); + /** Destructor. */ ~Oversampling(); - //============================================================================== - /** Returns the latency in samples of the whole processing. Use this information - in your main processor to compensate the additional latency involved with - the oversampling, for example with a dry / wet functionality, and to report - the latency to the DAW. + //=============================================================================== + /* Sets if this processor should add some fractional delay at the end of the signal + path to ensure that the overall latency of the oversampling is an integer. + */ + void setUsingIntegerLatency (bool shouldUseIntegerLatency) noexcept; - Note: The latency might not be integer, so you might need to round its value - or to compensate it properly in your processing code. + /** Returns the latency in samples of the overall processing. You can use this + information in your main processor to compensate the additional latency + involved with the oversampling, for example with a dry / wet mixer, and to + report the latency to the DAW. + + Note: If you have not opted to use an integer latency then the latency may not be + integer, so you might need to round its value or to compensate it properly in + your processing code since plug-ins can only report integer latency values in + samples to the DAW. */ SampleType getLatencyInSamples() const noexcept; /** Returns the current oversampling factor. */ size_t getOversamplingFactor() const noexcept; - //============================================================================== + //=============================================================================== /** Must be called before any processing, to set the buffer sizes of the internal buffers of the oversampling processing. */ @@ -127,7 +136,7 @@ public: */ void processSamplesDown (AudioBlock& outputBlock) noexcept; - //============================================================================== + //=============================================================================== /** Adds a new oversampling stage to the Oversampling class, multiplying the current oversampling factor by two. This is used with the default constructor to create custom oversampling chains, requiring a call to the @@ -171,7 +180,7 @@ public: */ void clearOversamplingStages(); - //============================================================================== + //=============================================================================== size_t factorOversampling = 1; size_t numChannels = 1; @@ -180,11 +189,17 @@ public: #endif private: - //============================================================================== - OwnedArray stages; - bool isReady = false; + //=============================================================================== + void updateDelayLine(); + SampleType getUncompensatedLatency() const noexcept; - //============================================================================== + //=============================================================================== + OwnedArray stages; + bool isReady = false, shouldUseIntegerLatency = false; + DelayLine delay { 8 }; + SampleType fractionalDelay = 0; + + //=============================================================================== JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (Oversampling) }; diff --git a/modules/juce_dsp/processors/juce_Panner.cpp b/modules/juce_dsp/processors/juce_Panner.cpp new file mode 100644 index 0000000000..1986a5b5b7 --- /dev/null +++ b/modules/juce_dsp/processors/juce_Panner.cpp @@ -0,0 +1,136 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +//============================================================================== +template +Panner::Panner() +{ + update(); + reset(); +} + +//============================================================================== +template +void Panner::setRule (Rule newRule) +{ + currentRule = newRule; + update(); +} + +template +void Panner::setPan (SampleType newPan) +{ + jassert (newPan >= -1.0 && newPan <= 1.0); + + pan = jlimit (static_cast (-1.0), static_cast (1.0), newPan); + update(); +} + +//============================================================================== +template +void Panner::prepare (const ProcessSpec& spec) +{ + jassert (spec.sampleRate > 0); + jassert (spec.numChannels > 0); + + sampleRate = spec.sampleRate; + + reset(); +} + +template +void Panner::reset() +{ + leftVolume .reset (sampleRate, 0.05); + rightVolume.reset (sampleRate, 0.05); +} + +//============================================================================== +template +void Panner::update() +{ + SampleType leftValue, rightValue, boostValue; + + auto normalisedPan = static_cast (0.5) * (pan + static_cast (1.0)); + + switch (currentRule) + { + case Rule::balanced: + leftValue = jmin (static_cast (0.5), static_cast (1.0) - normalisedPan); + rightValue = jmin (static_cast (0.5), normalisedPan); + boostValue = static_cast (2.0); + break; + + case Rule::linear: + leftValue = static_cast (1.0) - normalisedPan; + rightValue = normalisedPan; + boostValue = static_cast (2.0); + break; + + case Rule::sin3dB: + leftValue = static_cast (std::sin (0.5 * MathConstants::pi * (1.0 - normalisedPan))); + rightValue = static_cast (std::sin (0.5 * MathConstants::pi * normalisedPan)); + boostValue = std::sqrt (static_cast (2.0)); + break; + + case Rule::sin4p5dB: + leftValue = static_cast (std::pow (std::sin (0.5 * MathConstants::pi * (1.0 - normalisedPan)), 1.5)); + rightValue = static_cast (std::pow (std::sin (0.5 * MathConstants::pi * normalisedPan), 1.5)); + boostValue = static_cast (std::pow (2.0, 3.0 / 4.0)); + break; + + case Rule::sin6dB: + leftValue = static_cast (std::pow (std::sin (0.5 * MathConstants::pi * (1.0 - normalisedPan)), 2.0)); + rightValue = static_cast (std::pow (std::sin (0.5 * MathConstants::pi * normalisedPan), 2.0)); + boostValue = static_cast (2.0); + break; + + case Rule::squareRoot3dB: + leftValue = std::sqrt (static_cast (1.0) - normalisedPan); + rightValue = std::sqrt (normalisedPan); + boostValue = std::sqrt (static_cast (2.0)); + break; + + case Rule::squareRoot4p5dB: + leftValue = static_cast (std::pow (std::sqrt (1.0 - normalisedPan), 1.5)); + rightValue = static_cast (std::pow (std::sqrt (normalisedPan), 1.5)); + boostValue = static_cast (std::pow (2.0, 3.0 / 4.0)); + break; + + default: + leftValue = jmin (static_cast (0.5), static_cast (1.0) - normalisedPan); + rightValue = jmin (static_cast (0.5), normalisedPan); + boostValue = static_cast (2.0); + break; + } + + leftVolume .setTargetValue (leftValue * boostValue); + rightVolume.setTargetValue (rightValue * boostValue); +} + +//============================================================================== +template class Panner; +template class Panner; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/processors/juce_Panner.h b/modules/juce_dsp/processors/juce_Panner.h new file mode 100644 index 0000000000..7991051409 --- /dev/null +++ b/modules/juce_dsp/processors/juce_Panner.h @@ -0,0 +1,112 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +enum class PannerRule +{ + linear, + balanced, + sin3dB, + sin4p5dB, + sin6dB, + squareRoot3dB, + squareRoot4p5dB +}; + +/** + A processor to perform panning operations on stereo buffers. + + @tags{DSP} +*/ +template +class Panner +{ +public: + //============================================================================== + using Rule = PannerRule; + + //============================================================================== + /** Constructor. */ + Panner(); + + //============================================================================== + /** Sets the panning rule. */ + void setRule (Rule newRule); + + /** Sets the current panning value, between -1 (full left) and 1 (full right). */ + void setPan (SampleType newPan); + + //============================================================================== + /** Initialises the processor. */ + void prepare (const ProcessSpec& spec); + + /** Resets the internal state variables of the processor. */ + void reset(); + + //============================================================================== + /** Processes the input and output samples supplied in the processing context. */ + template + void process (const ProcessContext& context) noexcept + { + const auto& inputBlock = context.getInputBlock(); + auto& outputBlock = context.getOutputBlock(); + + const auto numInputChannels = inputBlock.getNumChannels(); + const auto numOutputChannels = outputBlock.getNumChannels(); + const auto numSamples = outputBlock.getNumSamples(); + + jassert (inputBlock.getNumSamples() == numSamples); + ignoreUnused (numSamples); + + if (numOutputChannels != 2 || numInputChannels == 0 || numInputChannels > 2) + return; + + if (numInputChannels == 2) + { + outputBlock.copyFrom (inputBlock); + } + else + { + outputBlock.getSingleChannelBlock (0).copyFrom (inputBlock); + outputBlock.getSingleChannelBlock (1).copyFrom (inputBlock); + } + + if (context.isBypassed) + return; + + outputBlock.getSingleChannelBlock (0).multiplyBy (leftVolume); + outputBlock.getSingleChannelBlock (1).multiplyBy (rightVolume); + } + +private: + //============================================================================== + void update(); + + //============================================================================== + Rule currentRule = Rule::balanced; + SampleType pan = 0.0; + SmoothedValue leftVolume, rightVolume; + double sampleRate = 44100.0; +}; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/processors/juce_StateVariableFilter.h b/modules/juce_dsp/processors/juce_StateVariableFilter.h index 8638f27af9..dc43c65b94 100644 --- a/modules/juce_dsp/processors/juce_StateVariableFilter.h +++ b/modules/juce_dsp/processors/juce_StateVariableFilter.h @@ -31,14 +31,21 @@ namespace StateVariableFilter /** An IIR filter that can perform low, band and high-pass filtering on an audio - signal, with 12 dB of attenuation / octave, using a TPT structure, designed + signal, with 12 dB of attenuation per octave, using a TPT structure, designed for fast modulation (see Vadim Zavalishin's documentation about TPT structures for more information). Its behaviour is based on the analog state variable filter circuit. - Note: The bandpass here is not the one in the RBJ CookBook, its gain can be + Note: The bandpass here is not the one in the RBJ CookBook as its gain can be higher than 0 dB. For the classic 0 dB bandpass, we need to multiply the - result with R2 + result by R2. + + Note 2: Using this class prevents some loud audio artefacts commonly encountered when + changing the cutoff frequency using other filter simulation structures and IIR + filter classes. However, this class may still require additional smoothing for + cutoff frequency changes. + + see IIRFilter, SmoothedValue @tags{DSP} */ @@ -56,10 +63,19 @@ namespace StateVariableFilter using ParametersPtr = typename Parameters::Ptr; //============================================================================== - /** Creates a filter with default parameters. */ - Filter() : parameters (new Parameters) { reset(); } + /** Creates a filter with default parameters. - Filter (ParametersPtr parametersToUse) : parameters (std::move (parametersToUse)) { reset(); } + The classes in the StateVariableFilter namespace are deprecated. you should + use the equivalent functionality in the StateVariableTPTFilter class. + */ + JUCE_DEPRECATED_WITH_BODY (Filter(), : parameters (new Parameters) { reset(); }) + + /** Creates a filter using some parameters. + + The classes in the StateVariableFilter namespace are deprecated. you should + use the equivalent functionality in the StateVariableTPTFilter class. + */ + JUCE_DEPRECATED_WITH_BODY (Filter (ParametersPtr parametersToUse), : parameters (std::move (parametersToUse)) { reset(); }) /** Creates a copy of another filter. */ Filter (const Filter&) = default; @@ -137,7 +153,10 @@ namespace StateVariableFilter for (size_t i = 0 ; i < n; ++i) output[i] = processLoop (input[i], state); + #if JUCE_SNAP_TO_ZERO snapToZero(); + #endif + *parameters = state; } @@ -173,6 +192,13 @@ namespace StateVariableFilter JUCE_LEAK_DETECTOR (Filter) }; + enum class StateVariableFilterType + { + lowPass, + bandPass, + highPass + }; + //============================================================================== /** Structure used for the state variable filter parameters. @@ -183,12 +209,7 @@ namespace StateVariableFilter struct Parameters : public ProcessorState { //============================================================================== - enum class Type - { - lowPass, - bandPass, - highPass - }; + using Type = StateVariableFilterType; //============================================================================== /** The type of the IIR filter */ diff --git a/modules/juce_dsp/processors/juce_StateVariableTPTFilter.cpp b/modules/juce_dsp/processors/juce_StateVariableTPTFilter.cpp new file mode 100644 index 0000000000..4dc30db241 --- /dev/null +++ b/modules/juce_dsp/processors/juce_StateVariableTPTFilter.cpp @@ -0,0 +1,130 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +//============================================================================== +template +StateVariableTPTFilter::StateVariableTPTFilter() +{ + update(); +} + +template +void StateVariableTPTFilter::setType (Type newValue) +{ + filterType = newValue; +} + +template +void StateVariableTPTFilter::setCutoffFrequency (SampleType newCutoffFrequencyHz) +{ + jassert (isPositiveAndBelow (newCutoffFrequencyHz, static_cast (sampleRate * 0.5))); + + cutoffFrequency = newCutoffFrequencyHz; + update(); +} + +template +void StateVariableTPTFilter::setResonance (SampleType newResonance) +{ + jassert (newResonance > static_cast (0)); + + resonance = newResonance; + update(); +} + +//============================================================================== +template +void StateVariableTPTFilter::prepare (const ProcessSpec& spec) +{ + jassert (spec.sampleRate > 0); + jassert (spec.numChannels > 0); + + sampleRate = spec.sampleRate; + + s1.resize (spec.numChannels); + s2.resize (spec.numChannels); + + reset(); + update(); +} + +template +void StateVariableTPTFilter::reset() +{ + reset (static_cast (0)); +} + +template +void StateVariableTPTFilter::reset (SampleType newValue) +{ + for (auto v : { &s1, &s2 }) + std::fill (v->begin(), v->end(), newValue); +} + +template +void StateVariableTPTFilter::snapToZero() noexcept +{ + for (auto v : { &s1, &s2 }) + for (auto& element : *v) + util::snapToZero (element); +} + +//============================================================================== +template +SampleType StateVariableTPTFilter::processSample (int channel, SampleType inputValue) +{ + auto& ls1 = s1[(size_t) channel]; + auto& ls2 = s2[(size_t) channel]; + + auto yHP = h * (inputValue - ls1 * (g + R2) - ls2); + + auto yBP = yHP * g + ls1; + ls1 = yHP * g + yBP; + + auto yLP = yBP * g + ls2; + ls2 = yBP * g + yLP; + + switch (filterType) + { + case Type::lowpass: return yLP; + case Type::bandpass: return yBP; + case Type::highpass: return yHP; + default: return yLP; + } +} + +//============================================================================== +template +void StateVariableTPTFilter::update() +{ + g = static_cast (std::tan (juce::MathConstants::pi * cutoffFrequency / sampleRate)); + R2 = static_cast (1.0 / resonance); + h = static_cast (1.0 / (1.0 + R2 * g + g * g)); +} + +//============================================================================== +template class StateVariableTPTFilter; +template class StateVariableTPTFilter; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/processors/juce_StateVariableTPTFilter.h b/modules/juce_dsp/processors/juce_StateVariableTPTFilter.h new file mode 100644 index 0000000000..8594397fc8 --- /dev/null +++ b/modules/juce_dsp/processors/juce_StateVariableTPTFilter.h @@ -0,0 +1,159 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +enum class StateVariableTPTFilterType +{ + lowpass, + bandpass, + highpass +}; + +//============================================================================== +/** An IIR filter that can perform low, band and high-pass filtering on an audio + signal, with 12 dB of attenuation per octave, using a TPT structure, designed + for fast modulation (see Vadim Zavalishin's documentation about TPT + structures for more information). Its behaviour is based on the analog + state variable filter circuit. + + Note: The bandpass here is not the one in the RBJ CookBook as its gain can be + higher than 0 dB. For the classic 0 dB bandpass, we need to multiply the + result by R2. + + Note 2: Using this class prevents some loud audio artefacts commonly encountered when + changing the cutoff frequency using other filter simulation structures and IIR + filter classes. However, this class may still require additional smoothing for + cutoff frequency changes. + + see IIRFilter, SmoothedValue + + @tags{DSP} +*/ +template +class StateVariableTPTFilter +{ +public: + //============================================================================== + using Type = StateVariableTPTFilterType; + + //============================================================================== + /** Constructor. */ + StateVariableTPTFilter(); + + //============================================================================== + /** Sets the filter type. */ + void setType (Type newType); + + /** Sets the cutoff frequency of the filter. + + @param newFrequencyHz the new cutoff frequency in Hz. + */ + void setCutoffFrequency (SampleType newFrequencyHz); + + /** Sets the resonance of the filter. + + Note: The bandwidth of the resonance increases with the value of the + parameter. To have a standard 12 dB / octave filter, the value must be set + at 1 / sqrt(2). + */ + void setResonance (SampleType newResonance); + + //============================================================================== + /** Returns the type of the filter. */ + Type getType() const noexcept { return filterType; } + + /** Returns the cutoff frequency of the filter. */ + SampleType getCutoffFrequency() const noexcept { return cutoffFrequency; } + + /** Returns the resonance of the filter. */ + SampleType getResonance() const noexcept { return resonance; } + + //============================================================================== + /** Initialises the filter. */ + void prepare (const ProcessSpec& spec); + + /** Resets the internal state variables of the filter. */ + void reset(); + + /** Resets the internal state variables of the filter to a given value. */ + void reset (SampleType newValue); + + /** Ensure that the state variables are rounded to zero if the state + variables are denormals. This is only needed if you are doing + sample by sample processing. + */ + void snapToZero() noexcept; + + //============================================================================== + /** Processes the input and output samples supplied in the processing context. */ + template + void process (const ProcessContext& context) noexcept + { + const auto& inputBlock = context.getInputBlock(); + auto& outputBlock = context.getOutputBlock(); + const auto numChannels = outputBlock.getNumChannels(); + const auto numSamples = outputBlock.getNumSamples(); + + jassert (inputBlock.getNumChannels() <= s1.size()); + jassert (inputBlock.getNumChannels() == numChannels); + jassert (inputBlock.getNumSamples() == numSamples); + + if (context.isBypassed) + { + outputBlock.copyFrom (inputBlock); + return; + } + + for (size_t channel = 0; channel < numChannels; ++channel) + { + auto* inputSamples = inputBlock .getChannelPointer (channel); + auto* outputSamples = outputBlock.getChannelPointer (channel); + + for (size_t i = 0; i < numSamples; ++i) + outputSamples[i] = processSample ((int) channel, inputSamples[i]); + } + + #if JUCE_SNAP_TO_ZERO + snapToZero(); + #endif + } + + //============================================================================== + /** Processes one sample at a time on a given channel. */ + SampleType processSample (int channel, SampleType inputValue); + +private: + //============================================================================== + void update(); + + //============================================================================== + SampleType g, h, R2; + std::vector s1 { 2 }, s2 { 2 }; + + double sampleRate = 44100.0; + Type filterType = Type::lowpass; + SampleType cutoffFrequency = static_cast (1000.0), + resonance = static_cast (1.0 / std::sqrt (2.0)); +}; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/processors/juce_Bias.h b/modules/juce_dsp/widgets/juce_Bias.h similarity index 95% rename from modules/juce_dsp/processors/juce_Bias.h rename to modules/juce_dsp/widgets/juce_Bias.h index 0a89aa83a2..70a685da70 100644 --- a/modules/juce_dsp/processors/juce_Bias.h +++ b/modules/juce_dsp/widgets/juce_Bias.h @@ -96,7 +96,7 @@ public: auto&& outBlock = context.getOutputBlock(); jassert (inBlock.getNumChannels() == outBlock.getNumChannels()); - jassert (inBlock.getNumSamples() == outBlock.getNumSamples()); + jassert (inBlock.getNumSamples() == outBlock.getNumSamples()); auto len = inBlock.getNumSamples(); auto numChannels = inBlock.getNumChannels(); diff --git a/modules/juce_dsp/widgets/juce_Chorus.cpp b/modules/juce_dsp/widgets/juce_Chorus.cpp new file mode 100644 index 0000000000..8c0e2896e9 --- /dev/null +++ b/modules/juce_dsp/widgets/juce_Chorus.cpp @@ -0,0 +1,131 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +//============================================================================== +template +Chorus::Chorus() +{ + auto oscFunction = [] (SampleType x) { return std::sin (x); }; + osc.initialise (oscFunction); + + dryWet.setMixingRule (DryWetMixingRule::linear); +} + +template +void Chorus::setRate (SampleType newRateHz) +{ + jassert (isPositiveAndBelow (newRateHz, static_cast (100.0))); + + rate = newRateHz; + update(); +} + +template +void Chorus::setDepth (SampleType newDepth) +{ + jassert (isPositiveAndNotGreaterThan (newDepth, static_cast (1.0))); + + depth = newDepth; + update(); +} + +template +void Chorus::setCentreDelay (SampleType newDelayMs) +{ + jassert (isPositiveAndBelow (newDelayMs, static_cast (100.0))); + + centreDelay = jlimit (static_cast (1.0), static_cast (100.0), newDelayMs); +} + +template +void Chorus::setFeedback (SampleType newFeedback) +{ + jassert (newFeedback >= static_cast (-1.0) && newFeedback <= static_cast (1.0)); + + feedback = newFeedback; + update(); +} + +template +void Chorus::setMix (SampleType newMix) +{ + jassert (isPositiveAndNotGreaterThan (newMix, static_cast (1.0))); + + mix = newMix; + update(); +} + +//============================================================================== +template +void Chorus::prepare (const ProcessSpec& spec) +{ + jassert (spec.sampleRate > 0); + jassert (spec.numChannels > 0); + + sampleRate = spec.sampleRate; + + delay.prepare (spec); + + dryWet.prepare (spec); + feedbackVolume.resize (spec.numChannels); + lastOutput.resize (spec.numChannels); + + osc.prepare (spec); + bufferDelayTimes.setSize (1, (int) spec.maximumBlockSize, false, false, true); + + update(); + reset(); +} + +template +void Chorus::reset() +{ + std::fill (lastOutput.begin(), lastOutput.end(), static_cast (0)); + + delay.reset(); + osc.reset(); + dryWet.reset(); + + oscVolume.reset (sampleRate, 0.05); + + for (auto& vol : feedbackVolume) + vol.reset (sampleRate, 0.05); +} + +template +void Chorus::update() +{ + osc.setFrequency (rate); + oscVolume.setTargetValue (depth * (SampleType) 0.5); + dryWet.setWetMixProportion (mix); + + for (auto& vol : feedbackVolume) + vol.setTargetValue (feedback); +} + +//============================================================================== +template class Chorus; +template class Chorus; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/widgets/juce_Chorus.h b/modules/juce_dsp/widgets/juce_Chorus.h new file mode 100644 index 0000000000..42934a8a49 --- /dev/null +++ b/modules/juce_dsp/widgets/juce_Chorus.h @@ -0,0 +1,157 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +/** + A simple chorus DSP widget that modulates the delay of a delay line in order to + create sweeping notches in the magnitude frequency response. + + This audio effect can be controlled via the speed and depth of the LFO controlling + the frequency response, a mix control, a feedback control, and the centre delay + of the modulation. + + Note: To get classic chorus sounds try to use a centre delay time around 7-8 ms + with a low feeback volume and a low depth. This effect can also be used as a + flanger with a lower centre delay time and a lot of feedback, and as a vibrato + effect if the mix value is 1. + + @tags{DSP} +*/ +template +class Chorus +{ +public: + //============================================================================== + /** Constructor. */ + Chorus(); + + //============================================================================== + /** Sets the rate (in Hz) of the LFO modulating the chorus delay line. This rate + must be lower than 100 Hz. + */ + void setRate (SampleType newRateHz); + + /** Sets the volume of the LFO modulating the chorus delay line (between 0 and 1). + */ + void setDepth (SampleType newDepth); + + /** Sets the centre delay in milliseconds of the chorus delay line modulation. + This delay must be between 1 and 100 ms. + */ + void setCentreDelay (SampleType newDelayMs); + + /** Sets the feedback volume (between -1 and 1) of the chorus delay line. + Negative values can be used to get specific chorus sounds. + */ + void setFeedback (SampleType newFeedback); + + /** Sets the amount of dry and wet signal in the output of the chorus (between 0 + for full dry and 1 for full wet). + */ + void setMix (SampleType newMix); + + //============================================================================== + /** Initialises the processor. */ + void prepare (const ProcessSpec& spec); + + /** Resets the internal state variables of the processor. */ + void reset(); + + //============================================================================== + /** Processes the input and output samples supplied in the processing context. */ + template + void process (const ProcessContext& context) noexcept + { + const auto& inputBlock = context.getInputBlock(); + auto& outputBlock = context.getOutputBlock(); + const auto numChannels = outputBlock.getNumChannels(); + const auto numSamples = outputBlock.getNumSamples(); + + jassert (inputBlock.getNumChannels() == numChannels); + jassert (inputBlock.getNumChannels() == lastOutput.size()); + jassert (inputBlock.getNumSamples() == numSamples); + + if (context.isBypassed) + { + outputBlock.copyFrom (inputBlock); + return; + } + + auto delayValuesBlock = AudioBlock(bufferDelayTimes).getSubBlock (0, numSamples); + auto contextDelay = ProcessContextReplacing (delayValuesBlock); + delayValuesBlock.clear(); + + osc.process (contextDelay); + delayValuesBlock.multiplyBy (oscVolume); + + auto* delaySamples = bufferDelayTimes.getWritePointer (0); + + for (size_t i = 0; i < numSamples; ++i) + { + auto lfo = jmax (static_cast (1.0), maximumDelayModulation * delaySamples[i] + centreDelay); + delaySamples[i] = static_cast (lfo * sampleRate / 1000.0); + } + + dryWet.pushDrySamples (inputBlock); + + for (size_t channel = 0; channel < numChannels; ++channel) + { + auto* inputSamples = inputBlock .getChannelPointer (channel); + auto* outputSamples = outputBlock.getChannelPointer (channel); + + for (size_t i = 0; i < numSamples; ++i) + { + auto input = inputSamples[i]; + auto output = input - lastOutput[channel]; + + delay.pushSample ((int) channel, input); + delay.setDelay (delaySamples[i]); + output = delay.popSample ((int) channel); + + outputSamples[i] = output; + lastOutput[channel] = output * feedbackVolume[channel].getNextValue(); + } + } + + dryWet.mixWetSamples (outputBlock); + } + +private: + //============================================================================== + void update(); + + //============================================================================== + Oscillator osc; + DelayLine delay { 5000 }; + SmoothedValue oscVolume; + std::vector> feedbackVolume { 2 }; + DryWetMixer dryWet; + std::vector lastOutput { 2 }; + AudioBuffer bufferDelayTimes; + + double sampleRate = 44100.0; + SampleType rate = 1.0, depth = 0.25, feedback = 0.0, mix = 0.5, + centreDelay = 7.0, maximumDelayModulation = 20.0; +}; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/widgets/juce_Compressor.cpp b/modules/juce_dsp/widgets/juce_Compressor.cpp new file mode 100644 index 0000000000..80ce6aa01c --- /dev/null +++ b/modules/juce_dsp/widgets/juce_Compressor.cpp @@ -0,0 +1,117 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +//============================================================================== +template +Compressor::Compressor() +{ + update(); +} + +//============================================================================== +template +void Compressor::setThreshold (SampleType newThreshold) +{ + thresholddB = newThreshold; + update(); +} + +template +void Compressor::setRatio (SampleType newRatio) +{ + jassert (newRatio >= static_cast (1.0)); + + ratio = newRatio; + update(); +} + +template +void Compressor::setAttack (SampleType newAttack) +{ + attackTime = newAttack; + update(); +} + +template +void Compressor::setRelease (SampleType newRelease) +{ + releaseTime = newRelease; + update(); +} + +//============================================================================== +template +void Compressor::prepare (const ProcessSpec& spec) +{ + jassert (spec.sampleRate > 0); + jassert (spec.numChannels > 0); + + sampleRate = spec.sampleRate; + + envelopeFilter.prepare (spec); + + update(); + reset(); +} + +template +void Compressor::reset() +{ + envelopeFilter.reset(); +} + +//============================================================================== +template +SampleType Compressor::processSample (int channel, SampleType inputValue) +{ + // Rectifier + auto env = jmax ((SampleType) 0.0, inputValue); + + // Ballistics filter + env = envelopeFilter.processSample (channel, env); + + // VCA + auto gain = (env < threshold) ? static_cast (1.0) + : std::pow (env * thresholdInverse, ratioInverse - static_cast (1.0)); + + // Output + return gain * inputValue; +} + +template +void Compressor::update() +{ + threshold = Decibels::decibelsToGain (thresholddB, static_cast (-200.0)); + thresholdInverse = static_cast (1.0) / threshold; + ratioInverse = static_cast (1.0) / ratio; + + envelopeFilter.setAttackTime (attackTime); + envelopeFilter.setReleaseTime (releaseTime); +} + +//============================================================================== +template class Compressor; +template class Compressor; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/widgets/juce_Compressor.h b/modules/juce_dsp/widgets/juce_Compressor.h new file mode 100644 index 0000000000..6a54404488 --- /dev/null +++ b/modules/juce_dsp/widgets/juce_Compressor.h @@ -0,0 +1,103 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +/** + A simple compressor with standard threshold, ratio, attack time and release time + controls. + + @tags{DSP} +*/ +template +class Compressor +{ +public: + //============================================================================== + /** Constructor. */ + Compressor(); + + //============================================================================== + /** Sets the threshold in dB of the compressor.*/ + void setThreshold (SampleType newThreshold); + + /** Sets the ratio of the compressor (must be higher or equal to 1).*/ + void setRatio (SampleType newRatio); + + /** Sets the attack time in milliseconds of the compressor.*/ + void setAttack (SampleType newAttack); + + /** Sets the release time in milliseconds of the compressor.*/ + void setRelease (SampleType newRelease); + + //============================================================================== + /** Initialises the processor. */ + void prepare (const ProcessSpec& spec); + + /** Resets the internal state variables of the processor. */ + void reset(); + + //============================================================================== + /** Processes the input and output samples supplied in the processing context. */ + template + void process (const ProcessContext& context) noexcept + { + const auto& inputBlock = context.getInputBlock(); + auto& outputBlock = context.getOutputBlock(); + const auto numChannels = outputBlock.getNumChannels(); + const auto numSamples = outputBlock.getNumSamples(); + + jassert (inputBlock.getNumChannels() == numChannels); + jassert (inputBlock.getNumSamples() == numSamples); + + if (context.isBypassed) + { + outputBlock.copyFrom (inputBlock); + return; + } + + for (size_t channel = 0; channel < numChannels; ++channel) + { + auto* inputSamples = inputBlock .getChannelPointer (channel); + auto* outputSamples = outputBlock.getChannelPointer (channel); + + for (size_t i = 0; i < numSamples; ++i) + outputSamples[i] = processSample ((int) channel, inputSamples[i]); + } + } + + /** Performs the processing operation on a single sample at a time. */ + SampleType processSample (int channel, SampleType inputValue); + +private: + //============================================================================== + void update(); + + //============================================================================== + SampleType threshold, thresholdInverse, ratioInverse; + BallisticsFilter envelopeFilter; + + double sampleRate = 44100.0; + SampleType thresholddB = 0.0, ratio = 1.0, attackTime = 1.0, releaseTime = 100.0; +}; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/processors/juce_Gain.h b/modules/juce_dsp/widgets/juce_Gain.h similarity index 100% rename from modules/juce_dsp/processors/juce_Gain.h rename to modules/juce_dsp/widgets/juce_Gain.h diff --git a/modules/juce_dsp/widgets/juce_LadderFilter.cpp b/modules/juce_dsp/widgets/juce_LadderFilter.cpp new file mode 100644 index 0000000000..c44bee8324 --- /dev/null +++ b/modules/juce_dsp/widgets/juce_LadderFilter.cpp @@ -0,0 +1,169 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +//============================================================================== +template +LadderFilter::LadderFilter() : state (2) +{ + setSampleRate (SampleType (1000)); // intentionally setting unrealistic default + // sample rate to catch missing initialisation bugs + setResonance (SampleType (0)); + setDrive (SampleType (1.2)); + + mode = Mode::LPF24; + setMode (Mode::LPF12); +} + +//============================================================================== +template +void LadderFilter::setMode (Mode newMode) noexcept +{ + if (newMode == mode) + return; + + switch (newMode) + { + case Mode::LPF12: A = {{ SampleType (0), SampleType (0), SampleType (1), SampleType (0), SampleType (0) }}; comp = SampleType (0.5); break; + case Mode::HPF12: A = {{ SampleType (1), SampleType (-2), SampleType (1), SampleType (0), SampleType (0) }}; comp = SampleType (0); break; + case Mode::BPF12: A = {{ SampleType (0), SampleType (0), SampleType (-1), SampleType (1), SampleType (0) }}; comp = SampleType (0.5); break; + case Mode::LPF24: A = {{ SampleType (0), SampleType (0), SampleType (0), SampleType (0), SampleType (1) }}; comp = SampleType (0.5); break; + case Mode::HPF24: A = {{ SampleType (1), SampleType (-4), SampleType (6), SampleType (-4), SampleType (1) }}; comp = SampleType (0); break; + case Mode::BPF24: A = {{ SampleType (0), SampleType (0), SampleType (1), SampleType (-2), SampleType (1) }}; comp = SampleType (0.5); break; + default: jassertfalse; break; + } + + static constexpr auto outputGain = SampleType (1.2); + + for (auto& a : A) + a *= outputGain; + + mode = newMode; + reset(); +} + +//============================================================================== +template +void LadderFilter::prepare (const ProcessSpec& spec) +{ + setSampleRate (SampleType (spec.sampleRate)); + setNumChannels (spec.numChannels); + reset(); +} + +//============================================================================== +template +void LadderFilter::reset() noexcept +{ + for (auto& s : state) + s.fill (SampleType (0)); + + cutoffTransformSmoother.setCurrentAndTargetValue (cutoffTransformSmoother.getTargetValue()); + scaledResonanceSmoother.setCurrentAndTargetValue (scaledResonanceSmoother.getTargetValue()); +} + +//============================================================================== +template +void LadderFilter::setCutoffFrequencyHz (SampleType newCutoff) noexcept +{ + jassert (newCutoff > SampleType (0)); + cutoffFreqHz = newCutoff; + updateCutoffFreq(); +} + +//============================================================================== +template +void LadderFilter::setResonance (SampleType newResonance) noexcept +{ + jassert (newResonance >= SampleType (0) && newResonance <= SampleType (1)); + resonance = newResonance; + updateResonance(); +} + +//============================================================================== +template +void LadderFilter::setDrive (SampleType newDrive) noexcept +{ + jassert (newDrive >= SampleType (1)); + + drive = newDrive; + gain = std::pow (drive, SampleType (-2.642)) * SampleType (0.6103) + SampleType (0.3903); + drive2 = drive * SampleType (0.04) + SampleType (0.96); + gain2 = std::pow (drive2, SampleType (-2.642)) * SampleType (0.6103) + SampleType (0.3903); +} + +//============================================================================== +template +SampleType LadderFilter::processSample (SampleType inputValue, size_t channelToUse) noexcept +{ + auto& s = state[channelToUse]; + + const auto a1 = cutoffTransformValue; + const auto g = a1 * SampleType (-1) + SampleType (1); + const auto b0 = g * SampleType (0.76923076923); + const auto b1 = g * SampleType (0.23076923076); + + const auto dx = gain * saturationLUT (drive * inputValue); + const auto a = dx + scaledResonanceValue * SampleType (-4) * (gain2 * saturationLUT (drive2 * s[4]) - dx * comp); + + const auto b = b1 * s[0] + a1 * s[1] + b0 * a; + const auto c = b1 * s[1] + a1 * s[2] + b0 * b; + const auto d = b1 * s[2] + a1 * s[3] + b0 * c; + const auto e = b1 * s[3] + a1 * s[4] + b0 * d; + + s[0] = a; + s[1] = b; + s[2] = c; + s[3] = d; + s[4] = e; + + return a * A[0] + b * A[1] + c * A[2] + d * A[3] + e * A[4]; +} + +//============================================================================== +template +void LadderFilter::updateSmoothers() noexcept +{ + cutoffTransformValue = cutoffTransformSmoother.getNextValue(); + scaledResonanceValue = scaledResonanceSmoother.getNextValue(); +} + +//============================================================================== +template +void LadderFilter::setSampleRate (SampleType newValue) noexcept +{ + jassert (newValue > SampleType (0)); + cutoffFreqScaler = SampleType (-2.0 * juce::MathConstants::pi) / newValue; + + static constexpr SampleType smootherRampTimeSec = SampleType (0.05); + cutoffTransformSmoother.reset (newValue, smootherRampTimeSec); + scaledResonanceSmoother.reset (newValue, smootherRampTimeSec); + + updateCutoffFreq(); +} + +//============================================================================== +template class LadderFilter; +template class LadderFilter; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/processors/juce_LadderFilter.h b/modules/juce_dsp/widgets/juce_LadderFilter.h similarity index 63% rename from modules/juce_dsp/processors/juce_LadderFilter.h rename to modules/juce_dsp/widgets/juce_LadderFilter.h index e5ab9fb985..eed20521fe 100644 --- a/modules/juce_dsp/processors/juce_LadderFilter.h +++ b/modules/juce_dsp/widgets/juce_LadderFilter.h @@ -21,62 +21,67 @@ namespace juce namespace dsp { +enum class LadderFilterMode +{ + LPF12, // low-pass 12 dB/octave + HPF12, // high-pass 12 dB/octave + BPF12, // band-pass 12 dB/octave + LPF24, // low-pass 24 dB/octave + HPF24, // high-pass 24 dB/octave + BPF24 // band-pass 24 dB/octave +}; + /** Multi-mode filter based on the Moog ladder filter. @tags{DSP} */ -template +template class LadderFilter { public: - enum class Mode - { - LPF12, // low-pass 12 dB/octave - HPF12, // high-pass 12 dB/octave - LPF24, // low-pass 24 dB/octave - HPF24 // high-pass 24 dB/octave - }; + //============================================================================== + using Mode = LadderFilterMode; //============================================================================== /** Creates an uninitialised filter. Call prepare() before first use. */ LadderFilter(); /** Enables or disables the filter. If disabled it will simply pass through the input signal. */ - void setEnabled (bool newValue) noexcept { enabled = newValue; } + void setEnabled (bool isEnabled) noexcept { enabled = isEnabled; } /** Sets filter mode. */ - void setMode (Mode newValue) noexcept; + void setMode (Mode newMode) noexcept; /** Initialises the filter. */ - void prepare (const juce::dsp::ProcessSpec& spec); + void prepare (const ProcessSpec& spec); /** Returns the current number of channels. */ - size_t getNumChannels() const noexcept { return state.size(); } + size_t getNumChannels() const noexcept { return state.size(); } /** Resets the internal state variables of the filter. */ void reset() noexcept; /** Sets the cutoff frequency of the filter. @param newValue cutoff frequency in Hz */ - void setCutoffFrequencyHz (Type newValue) noexcept; + void setCutoffFrequencyHz (SampleType newCutoff) noexcept; /** Sets the resonance of the filter. @param newValue a value between 0 and 1; higher values increase the resonance and can result in self oscillation! */ - void setResonance (Type newValue) noexcept; + void setResonance (SampleType newResonance) noexcept; /** Sets the amount of saturation in the filter. @param newValue saturation amount; it can be any number greater than or equal to one. Higher values result in more distortion.*/ - void setDrive (Type newValue) noexcept; + void setDrive (SampleType newDrive) noexcept; //============================================================================== template void process (const ProcessContext& context) noexcept { const auto& inputBlock = context.getInputBlock(); - auto& outputBlock = context.getOutputBlock(); + auto& outputBlock = context.getOutputBlock(); const auto numChannels = outputBlock.getNumChannels(); - const auto numSamples = outputBlock.getNumSamples(); + const auto numSamples = outputBlock.getNumSamples(); jassert (inputBlock.getNumChannels() <= getNumChannels()); jassert (inputBlock.getNumChannels() == numChannels); @@ -99,35 +104,36 @@ public: protected: //============================================================================== - Type processSample (Type inputValue, size_t channelToUse) noexcept; + SampleType processSample (SampleType inputValue, size_t channelToUse) noexcept; void updateSmoothers() noexcept; private: //============================================================================== - Type drive, drive2, gain, gain2, comp; + void setSampleRate (SampleType newValue) noexcept; + void setNumChannels (size_t newValue) { state.resize (newValue); } + void updateCutoffFreq() noexcept { cutoffTransformSmoother.setTargetValue (std::exp (cutoffFreqHz * cutoffFreqScaler)); } + void updateResonance() noexcept { scaledResonanceSmoother.setTargetValue (jmap (resonance, SampleType (0.1), SampleType (1.0))); } + + //============================================================================== + SampleType drive, drive2, gain, gain2, comp; static constexpr size_t numStates = 5; - std::vector> state; - std::array A; + std::vector> state; + std::array A; - SmoothedValue cutoffTransformSmoother, scaledResonanceSmoother; - Type cutoffTransformValue, scaledResonanceValue; + SmoothedValue cutoffTransformSmoother, scaledResonanceSmoother; + SampleType cutoffTransformValue, scaledResonanceValue; - LookupTableTransform saturationLUT { [] (Type x) { return std::tanh (x); }, Type (-5), Type (5), 128 }; + LookupTableTransform saturationLUT { [] (SampleType x) { return std::tanh (x); }, + SampleType (-5), SampleType (5), 128 }; - Type cutoffFreqHz { Type (200) }; - Type resonance; + SampleType cutoffFreqHz { SampleType (200) }; + SampleType resonance; - Type cutoffFreqScaler; + SampleType cutoffFreqScaler; Mode mode; bool enabled = true; - - //============================================================================== - void setSampleRate (Type newValue) noexcept; - void setNumChannels (size_t newValue) { state.resize (newValue); } - void updateCutoffFreq() noexcept { cutoffTransformSmoother.setTargetValue (std::exp (cutoffFreqHz * cutoffFreqScaler)); } - void updateResonance() noexcept { scaledResonanceSmoother.setTargetValue (jmap (resonance, Type (0.1), Type (1.0))); } }; } // namespace dsp diff --git a/modules/juce_dsp/widgets/juce_Limiter.cpp b/modules/juce_dsp/widgets/juce_Limiter.cpp new file mode 100644 index 0000000000..16bf64562f --- /dev/null +++ b/modules/juce_dsp/widgets/juce_Limiter.cpp @@ -0,0 +1,91 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +//============================================================================== +template +void Limiter::setThreshold (SampleType newThreshold) +{ + thresholddB = newThreshold; + update(); +} + +template +void Limiter::setRelease (SampleType newRelease) +{ + releaseTime = newRelease; + update(); +} + +//============================================================================== +template +void Limiter::prepare (const ProcessSpec& spec) +{ + jassert (spec.sampleRate > 0); + jassert (spec.numChannels > 0); + + sampleRate = spec.sampleRate; + + firstStageCompressor.prepare (spec); + secondStageCompressor.prepare (spec); + + update(); + reset(); +} + +template +void Limiter::reset() +{ + firstStageCompressor.reset(); + secondStageCompressor.reset(); + + outputVolume.reset (sampleRate, 0.001); +} + +//============================================================================== +template +void Limiter::update() +{ + firstStageCompressor.setThreshold ((SampleType) -10.0); + firstStageCompressor.setRatio ((SampleType) 4.0); + firstStageCompressor.setAttack ((SampleType) 2.0); + firstStageCompressor.setRelease ((SampleType) 200.0); + + secondStageCompressor.setThreshold (thresholddB); + secondStageCompressor.setRatio ((SampleType) 1000.0); + secondStageCompressor.setAttack ((SampleType) 0.001); + secondStageCompressor.setRelease (releaseTime); + + auto ratioInverse = (SampleType) (1.0 / 4.0); + + auto gain = (SampleType) std::pow (10.0, 10.0 * (1.0 - ratioInverse) / 40.0); + gain *= Decibels::decibelsToGain (-thresholddB, (SampleType) -100.0); + + outputVolume.setTargetValue (gain); +} + +//============================================================================== +template class Limiter; +template class Limiter; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/widgets/juce_Limiter.h b/modules/juce_dsp/widgets/juce_Limiter.h new file mode 100644 index 0000000000..e2732c2339 --- /dev/null +++ b/modules/juce_dsp/widgets/juce_Limiter.h @@ -0,0 +1,98 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +/** + A simple limiter with standard threshold and release time controls, featuring + two compressors and a hard clipper at 0 dB. + + @tags{DSP} +*/ +template +class Limiter +{ +public: + //============================================================================== + /** Constructor. */ + Limiter() = default; + + //============================================================================== + /** Sets the threshold in dB of the limiter.*/ + void setThreshold (SampleType newThreshold); + + /** Sets the release time in milliseconds of the limiter.*/ + void setRelease (SampleType newRelease); + + //============================================================================== + /** Initialises the processor. */ + void prepare (const ProcessSpec& spec); + + /** Resets the internal state variables of the processor. */ + void reset(); + + //============================================================================== + /** Processes the input and output samples supplied in the processing context. */ + template + void process (const ProcessContext& context) noexcept + { + const auto& inputBlock = context.getInputBlock(); + auto& outputBlock = context.getOutputBlock(); + const auto numChannels = outputBlock.getNumChannels(); + const auto numSamples = outputBlock.getNumSamples(); + + jassert (inputBlock.getNumChannels() == numChannels); + jassert (inputBlock.getNumSamples() == numSamples); + + if (context.isBypassed) + { + outputBlock.copyFrom (inputBlock); + return; + } + + firstStageCompressor.process (context); + + auto secondContext = ProcessContextReplacing (outputBlock); + secondStageCompressor.process (secondContext); + + outputBlock.multiplyBy (outputVolume); + + for (size_t channel = 0; channel < numChannels; ++channel) + { + FloatVectorOperations::clip (outputBlock.getChannelPointer (channel), outputBlock.getChannelPointer (channel), + (SampleType) -1.0, (SampleType) 1.0, (int) numSamples); + } + } + +private: + //============================================================================== + void update(); + + //============================================================================== + Compressor firstStageCompressor, secondStageCompressor; + SmoothedValue outputVolume; + + double sampleRate = 44100.0; + SampleType thresholddB = -10.0, releaseTime = 100.0; +}; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/widgets/juce_NoiseGate.cpp b/modules/juce_dsp/widgets/juce_NoiseGate.cpp new file mode 100644 index 0000000000..3a4f59c134 --- /dev/null +++ b/modules/juce_dsp/widgets/juce_NoiseGate.cpp @@ -0,0 +1,122 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +//============================================================================== +template +NoiseGate::NoiseGate() +{ + update(); + + RMSFilter.setLevelCalculationType (BallisticsFilterLevelCalculationType::RMS); + RMSFilter.setAttackTime (static_cast (0.0)); + RMSFilter.setReleaseTime (static_cast (50.0)); +} + +template +void NoiseGate::setThreshold (SampleType newValue) +{ + thresholddB = newValue; + update(); +} + +template +void NoiseGate::setRatio (SampleType newRatio) +{ + jassert (newRatio >= static_cast (1.0)); + + ratio = newRatio; + update(); +} + +template +void NoiseGate::setAttack (SampleType newAttack) +{ + attackTime = newAttack; + update(); +} + +template +void NoiseGate::setRelease (SampleType newRelease) +{ + releaseTime = newRelease; + update(); +} + +//============================================================================== +template +void NoiseGate::prepare (const ProcessSpec& spec) +{ + jassert (spec.sampleRate > 0); + jassert (spec.numChannels > 0); + + sampleRate = spec.sampleRate; + + RMSFilter.prepare (spec); + envelopeFilter.prepare (spec); + + update(); + reset(); +} + +template +void NoiseGate::reset() +{ + RMSFilter.reset(); + envelopeFilter.reset(); +} + +//============================================================================== +template +SampleType NoiseGate::processSample (int channel, SampleType sample) +{ + // RMS ballistics filter + auto env = RMSFilter.processSample (channel, sample); + + // Ballistics filter + env = envelopeFilter.processSample (channel, env); + + // VCA + auto gain = (env > threshold) ? static_cast (1.0) + : std::pow (env * thresholdInverse, currentRatio - static_cast (1.0)); + + // Output + return gain * sample; +} + +template +void NoiseGate::update() +{ + threshold = Decibels::decibelsToGain (thresholddB, static_cast (-200.0)); + thresholdInverse = static_cast (1.0) / threshold; + currentRatio = ratio; + + envelopeFilter.setAttackTime (attackTime); + envelopeFilter.setReleaseTime (releaseTime); +} + +//============================================================================== +template class NoiseGate; +template class NoiseGate; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/widgets/juce_NoiseGate.h b/modules/juce_dsp/widgets/juce_NoiseGate.h new file mode 100644 index 0000000000..fbf423ffee --- /dev/null +++ b/modules/juce_dsp/widgets/juce_NoiseGate.h @@ -0,0 +1,103 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +/** + A simple noise gate with standard threshold, ratio, attack time and + release time controls. Can be used as an expander if the ratio is low. + + @tags{DSP} +*/ +template +class NoiseGate +{ +public: + //============================================================================== + /** Constructor. */ + NoiseGate(); + + //============================================================================== + /** Sets the threshold in dB of the noise-gate.*/ + void setThreshold (SampleType newThreshold); + + /** Sets the ratio of the noise-gate (must be higher or equal to 1).*/ + void setRatio (SampleType newRatio); + + /** Sets the attack time in milliseconds of the noise-gate.*/ + void setAttack (SampleType newAttack); + + /** Sets the release time in milliseconds of the noise-gate.*/ + void setRelease (SampleType newRelease); + + //============================================================================== + /** Initialises the processor. */ + void prepare (const ProcessSpec& spec); + + /** Resets the internal state variables of the processor. */ + void reset(); + + //============================================================================== + /** Processes the input and output samples supplied in the processing context. */ + template + void process (const ProcessContext& context) noexcept + { + const auto& inputBlock = context.getInputBlock(); + auto& outputBlock = context.getOutputBlock(); + const auto numChannels = outputBlock.getNumChannels(); + const auto numSamples = outputBlock.getNumSamples(); + + jassert (inputBlock.getNumChannels() == numChannels); + jassert (inputBlock.getNumSamples() == numSamples); + + if (context.isBypassed) + { + outputBlock.copyFrom (inputBlock); + return; + } + + for (size_t channel = 0; channel < numChannels; ++channel) + { + auto* inputSamples = inputBlock .getChannelPointer (channel); + auto* outputSamples = outputBlock.getChannelPointer (channel); + + for (size_t i = 0; i < numSamples; ++i) + outputSamples[i] = processSample ((int) channel, inputSamples[i]); + } + } + + /** Performs the processing operation on a single sample at a time. */ + SampleType processSample (int channel, SampleType inputValue); + +private: + //============================================================================== + void update(); + + //============================================================================== + SampleType threshold, thresholdInverse, currentRatio; + BallisticsFilter envelopeFilter, RMSFilter; + + double sampleRate = 44100.0; + SampleType thresholddB = -100, ratio = 10.0, attackTime = 1.0, releaseTime = 100.0; +}; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/processors/juce_Oscillator.h b/modules/juce_dsp/widgets/juce_Oscillator.h similarity index 100% rename from modules/juce_dsp/processors/juce_Oscillator.h rename to modules/juce_dsp/widgets/juce_Oscillator.h diff --git a/modules/juce_dsp/widgets/juce_Phaser.cpp b/modules/juce_dsp/widgets/juce_Phaser.cpp new file mode 100644 index 0000000000..38a84eaa6a --- /dev/null +++ b/modules/juce_dsp/widgets/juce_Phaser.cpp @@ -0,0 +1,147 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +//============================================================================== +template +Phaser::Phaser() +{ + auto oscFunction = [] (SampleType x) { return std::sin (x); }; + osc.initialise (oscFunction); + + for (auto n = 0; n < numStages; ++n) + { + filters.add (new FirstOrderTPTFilter()); + filters[n]->setType (FirstOrderTPTFilterType::allpass); + } + + dryWet.setMixingRule (DryWetMixingRule::linear); +} + +template +void Phaser::setRate (SampleType newRateHz) +{ + jassert (isPositiveAndBelow (newRateHz, static_cast (100.0))); + + rate = newRateHz; + update(); +} + +template +void Phaser::setDepth (SampleType newDepth) +{ + jassert (isPositiveAndNotGreaterThan (newDepth, static_cast (1.0))); + + depth = newDepth; + update(); +} + +template +void Phaser::setCentreFrequency (SampleType newCentreHz) +{ + jassert (isPositiveAndBelow (newCentreHz, static_cast (sampleRate * 0.5))); + + centreFrequency = newCentreHz; + normCentreFrequency = mapToLog10 (centreFrequency, static_cast (20.0), static_cast (jmin (20000.0, 0.49 * sampleRate))); +} + +template +void Phaser::setFeedback (SampleType newFeedback) +{ + jassert (newFeedback >= static_cast (-1.0) && newFeedback <= static_cast (1.0)); + + feedback = newFeedback; + update(); +} + +template +void Phaser::setMix (SampleType newMix) +{ + jassert (isPositiveAndNotGreaterThan (newMix, static_cast (1.0))); + + mix = newMix; + update(); +} + +//============================================================================== +template +void Phaser::prepare (const ProcessSpec& spec) +{ + jassert (spec.sampleRate > 0); + jassert (spec.numChannels > 0); + + sampleRate = spec.sampleRate; + + for (auto n = 0; n < numStages; ++n) + filters[n]->prepare (spec); + + dryWet.prepare (spec); + feedbackVolume.resize (spec.numChannels); + lastOutput.resize (spec.numChannels); + + auto specDown = spec; + specDown.sampleRate /= (double) maxUpdateCounter; + specDown.maximumBlockSize = specDown.maximumBlockSize / (uint32) maxUpdateCounter + 1; + + osc.prepare (specDown); + bufferFrequency.setSize (1, (int) specDown.maximumBlockSize, false, false, true); + + update(); + reset(); +} + +template +void Phaser::reset() +{ + std::fill (lastOutput.begin(), lastOutput.end(), static_cast (0)); + + for (auto n = 0; n < numStages; ++n) + filters[n]->reset(); + + osc.reset(); + dryWet.reset(); + + oscVolume.reset (sampleRate / (double) maxUpdateCounter, 0.05); + + for (auto& vol : feedbackVolume) + vol.reset (sampleRate, 0.05); + + updateCounter = 0; +} + +template +void Phaser::update() +{ + osc.setFrequency (rate); + oscVolume.setTargetValue (depth * (SampleType) 0.5); + dryWet.setWetMixProportion (mix); + + for (auto& vol : feedbackVolume) + vol.setTargetValue (feedback); +} + +//============================================================================== +template class Phaser; +template class Phaser; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/widgets/juce_Phaser.h b/modules/juce_dsp/widgets/juce_Phaser.h new file mode 100644 index 0000000000..39bd381b70 --- /dev/null +++ b/modules/juce_dsp/widgets/juce_Phaser.h @@ -0,0 +1,199 @@ +/* + ============================================================================== + + This file is part of the JUCE 6 technical preview. + Copyright (c) 2020 - Raw Material Software Limited + + You may use this code under the terms of the GPL v3 + (see www.gnu.org/licenses). + + For this technical preview, this file is not subject to commercial licensing. + + JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER + EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE + DISCLAIMED. + + ============================================================================== +*/ + +namespace juce +{ +namespace dsp +{ + +/** + A 6 stage phaser that modulates first order all-pass filters to create sweeping + notches in the magnitude frequency response. + + This audio effect can be controlled with standard phaser parameters: the speed + and depth of the LFO controlling the frequency response, a mix control, a + feedback control, and the centre frequency of the modulation. + + @tags{DSP} +*/ +template +class Phaser +{ +public: + //============================================================================== + /** Constructor. */ + Phaser(); + + //============================================================================== + /** Sets the rate (in Hz) of the LFO modulating the phaser all-pass filters. This + rate must be lower than 100 Hz. + */ + void setRate (SampleType newRateHz); + + /** Sets the volume (between 0 and 1) of the LFO modulating the phaser all-pass + filters. + */ + void setDepth (SampleType newDepth); + + /** Sets the centre frequency (in Hz) of the phaser all-pass filters modulation. + */ + void setCentreFrequency (SampleType newCentreHz); + + /** Sets the feedback volume (between -1 and 1) of the phaser. Negative can be + used to get specific phaser sounds. + */ + void setFeedback (SampleType newFeedback); + + /** Sets the amount of dry and wet signal in the output of the phaser (between 0 + for full dry and 1 for full wet). + */ + void setMix (SampleType newMix); + + //============================================================================== + /** Initialises the processor. */ + void prepare (const ProcessSpec& spec); + + /** Resets the internal state variables of the processor. */ + void reset(); + + //============================================================================== + /** Processes the input and output samples supplied in the processing context. */ + template + void process (const ProcessContext& context) noexcept + { + const auto& inputBlock = context.getInputBlock(); + auto& outputBlock = context.getOutputBlock(); + const auto numChannels = outputBlock.getNumChannels(); + const auto numSamples = outputBlock.getNumSamples(); + + jassert (inputBlock.getNumChannels() == numChannels); + jassert (inputBlock.getNumChannels() == lastOutput.size()); + jassert (inputBlock.getNumSamples() == numSamples); + + if (context.isBypassed) + { + outputBlock.copyFrom (inputBlock); + return; + } + + int numSamplesDown = 0; + auto counter = updateCounter; + + for (size_t i = 0; i < numSamples; ++i) + { + if (counter == 0) + numSamplesDown++; + + counter++; + + if (counter == maxUpdateCounter) + counter = 0; + } + + if (numSamplesDown > 0) + { + auto freqBlock = AudioBlock(bufferFrequency).getSubBlock (0, (size_t) numSamplesDown); + auto contextFreq = ProcessContextReplacing (freqBlock); + freqBlock.clear(); + + osc.process (contextFreq); + freqBlock.multiplyBy (oscVolume); + } + + auto* freqSamples = bufferFrequency.getWritePointer (0); + + for (int i = 0; i < numSamplesDown; ++i) + { + auto lfo = jlimit (static_cast (0.0), + static_cast (1.0), + freqSamples[i] + normCentreFrequency); + + freqSamples[i] = mapToLog10 (lfo, static_cast (20.0), + static_cast (jmin (20000.0, 0.49 * sampleRate))); + } + + auto currentFrequency = filters[0]->getCutoffFrequency(); + dryWet.pushDrySamples (inputBlock); + + for (size_t channel = 0; channel < numChannels; ++channel) + { + counter = updateCounter; + int k = 0; + + auto* inputSamples = inputBlock .getChannelPointer (channel); + auto* outputSamples = outputBlock.getChannelPointer (channel); + + for (size_t i = 0; i < numSamples; ++i) + { + auto input = inputSamples[i]; + auto output = input - lastOutput[channel]; + + if (i == 0 && counter != 0) + for (int n = 0; n < numStages; ++n) + filters[n]->setCutoffFrequency (currentFrequency); + + if (counter == 0) + { + for (int n = 0; n < numStages; ++n) + filters[n]->setCutoffFrequency (freqSamples[k]); + + k++; + } + + for (int n = 0; n < numStages; ++n) + output = filters[n]->processSample ((int) channel, output); + + outputSamples[i] = output; + lastOutput[channel] = output * feedbackVolume[channel].getNextValue(); + + counter++; + + if (counter == maxUpdateCounter) + counter = 0; + } + } + + dryWet.mixWetSamples (outputBlock); + updateCounter = (updateCounter + (int) numSamples) % maxUpdateCounter; + } + +private: + //============================================================================== + void update(); + + //============================================================================== + Oscillator osc; + OwnedArray> filters; + SmoothedValue oscVolume; + std::vector> feedbackVolume { 2 }; + DryWetMixer dryWet; + std::vector lastOutput { 2 }; + AudioBuffer bufferFrequency; + SampleType normCentreFrequency = 0.5; + double sampleRate = 44100.0; + + int updateCounter = 0; + static constexpr int maxUpdateCounter = 4; + + SampleType rate = 1.0, depth = 0.5, feedback = 0.0, mix = 0.5; + SampleType centreFrequency = 1300.0; + static constexpr int numStages = 6; +}; + +} // namespace dsp +} // namespace juce diff --git a/modules/juce_dsp/processors/juce_Reverb.h b/modules/juce_dsp/widgets/juce_Reverb.h similarity index 95% rename from modules/juce_dsp/processors/juce_Reverb.h rename to modules/juce_dsp/widgets/juce_Reverb.h index 3d986005db..16a3b581c9 100644 --- a/modules/juce_dsp/processors/juce_Reverb.h +++ b/modules/juce_dsp/widgets/juce_Reverb.h @@ -53,7 +53,7 @@ public: //============================================================================== /** Initialises the reverb. */ - void prepare (const juce::dsp::ProcessSpec& spec) + void prepare (const ProcessSpec& spec) { reverb.setSampleRate (spec.sampleRate); } diff --git a/modules/juce_dsp/processors/juce_WaveShaper.h b/modules/juce_dsp/widgets/juce_WaveShaper.h similarity index 100% rename from modules/juce_dsp/processors/juce_WaveShaper.h rename to modules/juce_dsp/widgets/juce_WaveShaper.h

;6r*{C_+>IW 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 F{|5))HK70i literal 0 HcmV?d00001 diff --git a/examples/DSP/StateVariableFilterDemo.h b/examples/DSP/StateVariableFilterDemo.h index aa6158b44d..db40e3048a 100644 --- a/examples/DSP/StateVariableFilterDemo.h +++ b/examples/DSP/StateVariableFilterDemo.h @@ -59,8 +59,6 @@ struct StateVariableFilterDemoDSP void prepare (const ProcessSpec& spec) { sampleRate = spec.sampleRate; - - filter.state = new StateVariableFilter::Parameters; filter.prepare (spec); } @@ -78,18 +76,21 @@ struct StateVariableFilterDemoDSP { if (sampleRate != 0.0) { - auto cutoff = static_cast (cutoffParam.getCurrentValue()); - auto resonance = static_cast (qParam.getCurrentValue()); - auto type = static_cast::Type> (typeParam.getCurrentSelectedID() - 1); + filter.setCutoffFrequency (static_cast (cutoffParam.getCurrentValue())); + filter.setResonance (static_cast (qParam.getCurrentValue())); - filter.state->type = type; - filter.state->setCutOffFrequency (sampleRate, cutoff, resonance); + switch (typeParam.getCurrentSelectedID() - 1) + { + case 0: filter.setType (StateVariableTPTFilterType::lowpass); break; + case 1: filter.setType (StateVariableTPTFilterType::bandpass); break; + case 2: filter.setType (StateVariableTPTFilterType::highpass); break; + default: jassertfalse; break; + }; } } //============================================================================== - ProcessorDuplicator, - StateVariableFilter::Parameters> filter; + StateVariableTPTFilter filter; ChoiceParameter typeParam {{ "Low-pass", "Band-pass", "High-pass" }, 1, "Type" }; SliderParameter cutoffParam {{ 20.0, 20000.0 }, 0.5, 440.0f, "Cutoff", "Hz" }; diff --git a/examples/DemoRunner/Builds/Android/app/CMakeLists.txt b/examples/DemoRunner/Builds/Android/app/CMakeLists.txt index 71331edca7..7a30259853 100644 --- a/examples/DemoRunner/Builds/Android/app/CMakeLists.txt +++ b/examples/DemoRunner/Builds/Android/app/CMakeLists.txt @@ -117,16 +117,17 @@ add_library( ${BINARY_NAME} "../../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.cpp" "../../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.h" "../../../../../modules/juce_audio_basics/utilities/juce_ADSR.h" - "../../../../../modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.cpp" - "../../../../../modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.h" "../../../../../modules/juce_audio_basics/utilities/juce_Decibels.h" + "../../../../../modules/juce_audio_basics/utilities/juce_GenericInterpolator.h" "../../../../../modules/juce_audio_basics/utilities/juce_IIRFilter.cpp" "../../../../../modules/juce_audio_basics/utilities/juce_IIRFilter.h" + "../../../../../modules/juce_audio_basics/utilities/juce_Interpolators.cpp" + "../../../../../modules/juce_audio_basics/utilities/juce_Interpolators.h" "../../../../../modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.cpp" - "../../../../../modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.h" "../../../../../modules/juce_audio_basics/utilities/juce_Reverb.h" "../../../../../modules/juce_audio_basics/utilities/juce_SmoothedValue.cpp" "../../../../../modules/juce_audio_basics/utilities/juce_SmoothedValue.h" + "../../../../../modules/juce_audio_basics/utilities/juce_WindowedSincInterpolator.cpp" "../../../../../modules/juce_audio_basics/juce_audio_basics.cpp" "../../../../../modules/juce_audio_basics/juce_audio_basics.mm" "../../../../../modules/juce_audio_basics/juce_audio_basics.h" @@ -1078,27 +1079,51 @@ add_library( ${BINARY_NAME} "../../../../../modules/juce_dsp/native/juce_neon_SIMDNativeOps.h" "../../../../../modules/juce_dsp/native/juce_sse_SIMDNativeOps.cpp" "../../../../../modules/juce_dsp/native/juce_sse_SIMDNativeOps.h" - "../../../../../modules/juce_dsp/processors/juce_Bias.h" + "../../../../../modules/juce_dsp/processors/juce_BallisticsFilter.cpp" + "../../../../../modules/juce_dsp/processors/juce_BallisticsFilter.h" + "../../../../../modules/juce_dsp/processors/juce_DelayLine.cpp" + "../../../../../modules/juce_dsp/processors/juce_DelayLine.h" + "../../../../../modules/juce_dsp/processors/juce_DryWetMixer.cpp" + "../../../../../modules/juce_dsp/processors/juce_DryWetMixer.h" "../../../../../modules/juce_dsp/processors/juce_FIRFilter.cpp" "../../../../../modules/juce_dsp/processors/juce_FIRFilter.h" "../../../../../modules/juce_dsp/processors/juce_FIRFilter_test.cpp" - "../../../../../modules/juce_dsp/processors/juce_Gain.h" + "../../../../../modules/juce_dsp/processors/juce_FirstOrderTPTFilter.cpp" + "../../../../../modules/juce_dsp/processors/juce_FirstOrderTPTFilter.h" "../../../../../modules/juce_dsp/processors/juce_IIRFilter.cpp" "../../../../../modules/juce_dsp/processors/juce_IIRFilter.h" "../../../../../modules/juce_dsp/processors/juce_IIRFilter_Impl.h" - "../../../../../modules/juce_dsp/processors/juce_LadderFilter.cpp" - "../../../../../modules/juce_dsp/processors/juce_LadderFilter.h" - "../../../../../modules/juce_dsp/processors/juce_Oscillator.h" + "../../../../../modules/juce_dsp/processors/juce_LinkwitzRileyFilter.cpp" + "../../../../../modules/juce_dsp/processors/juce_LinkwitzRileyFilter.h" "../../../../../modules/juce_dsp/processors/juce_Oversampling.cpp" "../../../../../modules/juce_dsp/processors/juce_Oversampling.h" + "../../../../../modules/juce_dsp/processors/juce_Panner.cpp" + "../../../../../modules/juce_dsp/processors/juce_Panner.h" "../../../../../modules/juce_dsp/processors/juce_ProcessContext.h" "../../../../../modules/juce_dsp/processors/juce_ProcessorChain.h" "../../../../../modules/juce_dsp/processors/juce_ProcessorChain_test.cpp" "../../../../../modules/juce_dsp/processors/juce_ProcessorDuplicator.h" "../../../../../modules/juce_dsp/processors/juce_ProcessorWrapper.h" - "../../../../../modules/juce_dsp/processors/juce_Reverb.h" "../../../../../modules/juce_dsp/processors/juce_StateVariableFilter.h" - "../../../../../modules/juce_dsp/processors/juce_WaveShaper.h" + "../../../../../modules/juce_dsp/processors/juce_StateVariableTPTFilter.cpp" + "../../../../../modules/juce_dsp/processors/juce_StateVariableTPTFilter.h" + "../../../../../modules/juce_dsp/widgets/juce_Bias.h" + "../../../../../modules/juce_dsp/widgets/juce_Chorus.cpp" + "../../../../../modules/juce_dsp/widgets/juce_Chorus.h" + "../../../../../modules/juce_dsp/widgets/juce_Compressor.cpp" + "../../../../../modules/juce_dsp/widgets/juce_Compressor.h" + "../../../../../modules/juce_dsp/widgets/juce_Gain.h" + "../../../../../modules/juce_dsp/widgets/juce_LadderFilter.cpp" + "../../../../../modules/juce_dsp/widgets/juce_LadderFilter.h" + "../../../../../modules/juce_dsp/widgets/juce_Limiter.cpp" + "../../../../../modules/juce_dsp/widgets/juce_Limiter.h" + "../../../../../modules/juce_dsp/widgets/juce_NoiseGate.cpp" + "../../../../../modules/juce_dsp/widgets/juce_NoiseGate.h" + "../../../../../modules/juce_dsp/widgets/juce_Oscillator.h" + "../../../../../modules/juce_dsp/widgets/juce_Phaser.cpp" + "../../../../../modules/juce_dsp/widgets/juce_Phaser.h" + "../../../../../modules/juce_dsp/widgets/juce_Reverb.h" + "../../../../../modules/juce_dsp/widgets/juce_WaveShaper.h" "../../../../../modules/juce_dsp/juce_dsp.cpp" "../../../../../modules/juce_dsp/juce_dsp.mm" "../../../../../modules/juce_dsp/juce_dsp.h" @@ -1841,16 +1866,17 @@ set_source_files_properties("../../../../../modules/juce_audio_basics/sources/ju set_source_files_properties("../../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_ADSR.h" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_CatmullRomInterpolator.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_Decibels.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_GenericInterpolator.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_IIRFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_IIRFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_Interpolators.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_Interpolators.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_LagrangeInterpolator.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_Reverb.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_SmoothedValue.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_SmoothedValue.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_audio_basics/utilities/juce_WindowedSincInterpolator.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/juce_audio_basics.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/juce_audio_basics.mm" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_audio_basics/juce_audio_basics.h" PROPERTIES HEADER_FILE_ONLY TRUE) @@ -2802,27 +2828,51 @@ set_source_files_properties("../../../../../modules/juce_dsp/native/juce_neon_SI set_source_files_properties("../../../../../modules/juce_dsp/native/juce_neon_SIMDNativeOps.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/native/juce_sse_SIMDNativeOps.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/native/juce_sse_SIMDNativeOps.h" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_Bias.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_BallisticsFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_BallisticsFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_DelayLine.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_DelayLine.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_DryWetMixer.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_DryWetMixer.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_FIRFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_FIRFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_FIRFilter_test.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_Gain.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_FirstOrderTPTFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_FirstOrderTPTFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_IIRFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_IIRFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_IIRFilter_Impl.h" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_LadderFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_LadderFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_Oscillator.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_LinkwitzRileyFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_LinkwitzRileyFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_Oversampling.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_Oversampling.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_Panner.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_Panner.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_ProcessContext.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_ProcessorChain.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_ProcessorChain_test.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_ProcessorDuplicator.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_ProcessorWrapper.h" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_Reverb.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_StateVariableFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) -set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_WaveShaper.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_StateVariableTPTFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/processors/juce_StateVariableTPTFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Bias.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Chorus.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Chorus.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Compressor.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Compressor.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Gain.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_LadderFilter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_LadderFilter.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Limiter.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Limiter.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_NoiseGate.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_NoiseGate.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Oscillator.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Phaser.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Phaser.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_Reverb.h" PROPERTIES HEADER_FILE_ONLY TRUE) +set_source_files_properties("../../../../../modules/juce_dsp/widgets/juce_WaveShaper.h" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/juce_dsp.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/juce_dsp.mm" PROPERTIES HEADER_FILE_ONLY TRUE) set_source_files_properties("../../../../../modules/juce_dsp/juce_dsp.h" PROPERTIES HEADER_FILE_ONLY TRUE) diff --git a/examples/DemoRunner/Builds/Android/app/src/main/assets/Impulse1.wav b/examples/DemoRunner/Builds/Android/app/src/main/assets/Impulse1.wav deleted file mode 100644 index 98d402cd04dacc98ae3386075de99995f3bf9c37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 90246 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 diff --git a/examples/DemoRunner/Builds/Android/app/src/main/assets/Impulse2.wav b/examples/DemoRunner/Builds/Android/app/src/main/assets/Impulse2.wav deleted file mode 100644 index c548b22cdde8c51043aaf157de895583ff985847..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37902 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≻ynz0_3y9-O!1pgZY8eITJD(qbh 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 z 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� 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�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Ⓢ0oyshj|L_@pdVuX>Q0w1U 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