Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5)

Side by Side Diff: chrome/test/data/third_party/kraken/tests/kraken-1.1/audio-beat-detection-data.js

Issue 11348021: Automate Kraken benchmark with Chrome Remote Control. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 var console = undefined;
2 // Audio sample data.
3 var channels = 2,
4 rate = 44100,
5 frameBufferLength = 2048,
6 getFramebuffer = (function(f) {
7 var frames = f,
8 current = 0,
9 max = frames.length - 1;
10
11 return function() {
12 if (current == max) {
13 current = 0;
14 }
15 return frames[current++];
16 };
17 })([
18 new Array(-9.063918018914485e-12,-3.261597155551632e-12,-7.691810383070319e-11,- 4.440857404031107e-12,-1.680772881984538e-10,6.000556301843929e-11,-1.9150961372 282893e-10,2.4246665786265e-10,-4.565171851655947e-11,5.450795370620654e-10,3.36 2514988669574e-10,9.004306744664348e-10,9.466241124300723e-10,1.175186170598863e -9,1.6831636084901902e-9,1.1990984871701471e-9,2.3562511941577213e-9,8.144737662 085788e-10,2.725613068577104e-9,-6.554523590551753e-11,2.5597279851297117e-9,-1. 405781158148045e-9,1.7045438394092116e-9,-3.0212734536405605e-9,1.44216333319846 5e-10,-4.585516411026447e-9,-1.9632779846290305e-9,-5.679597681051973e-9,-4.2883 98525176262e-9,-5.877284880995148e-9,-6.374909933271056e-9,-4.851113288850684e-9 ,-7.722416484057248e-9,-2.47689069254875e-9,-7.892031916867381e-9,1.089234369366 9204e-9,-6.61385790579061e-9,5.384448886758264e-9,-3.872107523505974e-9,9.678744 916641335e-9,5.3583804060508555e-11,1.3082328997882087e-8,4.604661096863083e-9,1 .4708005480201791e-8,9.020721947194943e-9,1.3861386705116274e-8,1.24670700429874 16e-8,1.0221797630549645e-8,1.4191283703723911e-8,3.973642304089253e-9,1.3679061 439120233e-8,-4.147063581427801e-9,1.0777899461800189e-8,-1.2912646063512057e-8, 5.7606563963474855e-9,-2.0772752407083317e-8,-6.882053815715494e-10,-2.611232474 6918603e-8,-7.566866244701487e-9,-2.7557987891668745e-8,-1.3718089775238695e-8,- 2.427747425315374e-8,-1.8031725446121527e-8,-1.6211833653301255e-8,-1.9651333005 29942e-8,-4.18648893329987e-9,-1.8145057012475263e-8,1.0134575845199834e-8,-1.36 06820559175503e-8,2.4460184988583933e-8,-6.6646101970491145e-9,3.622632149813398 4e-8,1.6094849897285712e-9,4.304074607830444e-8,9.874586481828374e-9,4.314259527 404829e-8,1.6751737774711728e-8,3.579163276867803e-8,2.1068517597200298e-8,2.150 7027270217804e-8,2.2072077499046827e-8,2.0971653302837012e-9,1.9569721843026855e -8,-1.95445934991767e-8,1.3969719603323938e-8,-3.986041718917477e-8,6.2123315380 80207e-9,-5.5206413662745035e-8,-2.396835618867499e-9,-6.249566553151453e-8,-1.0 421006280125766e-8,-5.979339334771794e-8,-1.6550259829273273e-8,-4.6752756333034 995e-8,-1.9834619280345578e-8,-2.479977112557208e-8,-1.9848005905487298e-8,2.984 3314486299732e-9,-1.6751785736346392e-8,3.2283470119409685e-8,-1.124725823586914 e-8,5.8215224640889573e-8,-4.4262269405237475e-9,7.614446673187558e-8,2.44911357 86064433e-9,8.2506318221931e-8,8.19313505928676e-9,7.549270009121756e-8,1.192084 2091228678e-8,5.54726611312617e-8,1.3204600968208524e-8,2.5057047992049775e-8,1. 2132561622024696e-8,-1.1224615015237305e-8,9.258342537066255e-9,-4.7597982444358 42e-8,5.454737994625702e-9,-7.796932521841882e-8,1.702851637475078e-9,-9.6952994 96570442e-8,-1.136488791964041e-9,-1.0082637658115345e-7,-2.519120245736417e-9,- 8.824257946571379e-8,-2.3383373015661846e-9,-6.056658463649e-8,-9.41838385060123 e-10,-2.176004265663778e-8,9.601706096873386e-10,2.218358652328334e-8,2.47759657 23478066e-9,6.417361220201201e-8,2.774252605419747e-9,9.717964388755718e-8,1.300 9872068536765e-9,1.1542026356892165e-7,-2.0265045197476184e-9,1.153803879105908e -7,-6.7495498079495064e-9,9.647719423355738e-8,-1.1913705577626388e-8,6.12494446 2726489e-8,-1.623966028319046e-8,1.502435864608742e-8,-1.8389696876397466e-8,-3. 4896281420060404e-8,-1.7278706465617688e-8,-8.040503729489501e-8,-1.236391611314 5024e-8,-1.1392285870215346e-7,-3.8492862231009894e-9,-1.2967566931365582e-7,7.2 48555089489628e-9,-1.2469702426187723e-7,1.920039238711979e-8,-9.9380230267343e- 8,2.98255180553042e-8,-5.747872222627848e-8,3.68760453284267e-8,-5.5446549573900 94e-9,3.8477701025385613e-8,4.810972953350756e-8,3.3544857558354124e-8,9.4760721 935927e-8,2.2083437301034792e-8,1.2670979288031958e-7,5.314396478439676e-9,1.385 6883640528395e-7,-1.442367381088161e-8,1.2817720573821134e-7,-3.3992773040836255 e-8,9.6993083786856e-8,-4.995281699393672e-8,4.988867274846598e-8,-5.91591415854 964e-8,-5.620970799924407e-9,-5.9357120107961236e-8,-6.059254786805468e-8,-4.966 4652834735534e-8,-1.0611310585773026e-7,-3.084448252366201e-8,-1.347611942037474 4e-7,-5.303653960453403e-9,-1.4182997176703793e-7,2.3200103171916453e-8,-1.26107 053688429e-7,5.0111530924823455e-8,-9.008256540710136e-8,7.080907948875392e-8,-3 .954905736236469e-8,8.139625862213506e-8,1.7340529012699335e-8,7.941753921159034 e-8,7.14021481940108e-8,6.436970778622708e-8,1.1391774989988335e-7,3.79068154643 3916e-8,1.3805393450638803e-7,3.6889740151480055e-9,1.399694014025954e-7,-3.3120 28695745539e-8,1.1943076572151767e-7,-6.66380657321497e-8,7.98368589016718e-8,-9 .120827826336608e-8,2.7651497092051613e-8,-1.023566014168864e-7,-2.8660446460548 883e-8,-9.759249763874323e-8,-8.001645568356253e-8,-7.691699011047604e-8,-1.1819 189182915579e-7,-4.293638866670335e-8,-1.3714550561871874e-7,-5.487733045761445e -10,-1.3398140197296016e-7,4.376378370807288e-8,-1.0939224637240841e-7,8.2933105 7161653e-8,-6.751718473196888e-8,1.1043897529816604e-7,-1.5242454409758466e-8,1. 2139599903093767e-7,3.8936597945848916e-8,1.1341180794488537e-7,8.63029541164905 8e-8,8.706772547384389e-8,1.193270264820967e-7,4.592902058675463e-8,1.3286879152 474285e-7,-3.930692660247814e-9,1.2498067292199266e-7,-5.482997877948037e-8,9.71 8515769918668e-8,-9.866953121218103e-8,5.418847948135408e-8,-1.28227270579373e-7 ,3.083594934949474e-9,-1.3834954870617366e-7,-4.782260987212794e-8,-1.2684265016 1052e-7,-9.036366321879541e-8,-9.491133567962606e-8,-1.1782764630652309e-7,-4.70 599381685588e-8,-1.2601940113654564e-7,9.539609990838471e-9,-1.1390253007448337e -7,6.612728498112119e-8,-8.372249027388534e-8,1.1371697183903962e-7,-4.059829450 397956e-8,1.4452912466822454e-7,8.344371416058038e-9,1.5326465074849693e-7,5.515 137502243306e-8,1.3801113141198584e-7,9.23356182624957e-8,1.0062770883223493e-7, 1.1407795597051518e-7,4.653392693398928e-8,1.1714049463762422e-7,-1.607532240655 0185e-8,1.0134900918501444e-7,-7.747640040633996e-8,6.957183984468429e-8,-1.2793 385906206822e-7,2.7206713326677345e-8,-1.5925049012821546e-7,-1.8734009898935255 e-8,-1.6610192687949166e-7,-6.078472836179571e-8,-1.4693922878450394e-7,-9.22423 8795013662e-8,-1.0430580488218766e-7,-1.0823826812611514e-7,-4.45076224764307e-8 ,-1.0649359438730244e-7,2.3321303999068732e-8,-8.764186532062013e-8,8.8620360827 46272e-8,-5.5072241877951456e-8,1.410538743584766e-7,-1.4327970809802082e-8,1.72 15407410731132e-7,2.783478691981145e-8,1.7669236740402994e-7,6.45675726218542e-8 ,1.5355695381913392e-7,9.00446011087297e-8,1.0598996880162304e-7,1.0038979780802 038e-7,4.1135439943218444e-8,9.426747737961705e-8,-3.103694723449735e-8,7.304740 989866332e-8,-9.927160249389999e-8,4.052454016800766e-8,-1.5279019294212048e-7,2 .248076613753369e-9,-1.8300160320450232e-7,-3.542269766398931e-8,-1.848854367381 1364e-7,-6.637513649820903e-8,-1.578263635337862e-7,-8.573766052677456e-8,-1.057 6047060339988e-7,-9.064876138609179e-8,-3.660183267584216e-8,-8.067998180649738e -8,3.896485267773642e-8,-5.78489469660326e-8,1.091430661404047e-7,-2.62304631348 79756e-8,1.6287407333948067e-7,8.762894410097033e-9,1.9158729003265762e-7,4.1304 232922811934e-8,1.9057252131915448e-7,6.612271619133026e-8,1.597534549091506e-7, 7.93595944514891e-8,1.0373634040661273e-7,7.916997901702416e-8,3.111855662041307 4e-8,6.597691282195228e-8,-4.683636234403821e-8,4.234251704815506e-8,-1.17954286 33831762e-7,1.2487103795422172e-8,-1.7106017935475393e-7,-1.8456139727618392e-8, -1.9774194015553803e-7,-4.5320295072315275e-8,-1.936883222697361e-7,-6.376741623 626003e-8,-1.5938736908083229e-7,-7.099095000739908e-8,-1.0007260442534971e-7,-6 .614403957883042e-8,-2.4920090879732015e-8,-5.042738848715089e-8,5.4377210290113 e-8,-2.6831063593135696e-8,1.2543733873826568e-7,4.190550129123949e-10,1.7713182 387524284e-7,2.660926767816818e-8,2.0133609268668806e-7,4.734960157293244e-8,1.9 421217700710258e-7,5.9309229527571006e-8,1.568193965795217e-7,6.075319447518268e -8,9.495667541159492e-8,5.1793612954043056e-8,1.8258184297792468e-8,3.4318482278 195006e-8,-6.131359242544931e-8,1.1618418227499205e-8,-1.3134261678260373e-7,-1. 2217928002655754e-8,-1.8090540265802701e-7,-3.3030893575869413e-8,-2.02283018779 78083e-7,-4.731122515977404e-8,-1.9216858504478296e-7,-5.279125758761438e-8,-1.5 218093096791563e-7,-4.880642023863402e-8,-8.86045441461647e-8,-3.636942480511607 e-8,-1.1396908305982834e-8,-1.794975901248108e-8,6.737802493717027e-8,2.99673530 43502953e-9,1.354440257728129e-7,2.2661327037099e-8,1.8223443021270214e-7,3.7564 55413395088e-8,2.0054038429861976e-7,4.51666153367114e-8,1.8762639797387237e-7,4 .429934108429734e-8,1.4564022876584204e-7,3.534657722070733e-8,8.125561379301871 e-8,2.0145094481449632e-8,4.6065018466379115e-9,1.627221024591563e-9,-7.23151174 497616e-8,-1.672687943710116e-8,-1.3754423378031788e-7,-3.1527999766467474e-8,-1 .8101286514138337e-7,-4.0092068331887276e-8,-1.9611144352893461e-7,-4.0920408395 095365e-8,-1.8069772522721905e-7,-3.3960340317662485e-8,-1.373995388576077e-7,-2 .060184201013726e-8,-7.316809558233217e-8,-3.4121434566714015e-9,1.8424062275812 503e-9,1.4342575127557211e-8,7.58872715778125e-8,2.930133291556558e-8,1.37478934 90290153e-7,3.862820463496064e-8,1.771775828274258e-7,4.053629965028449e-8,1.890 4509602180042e-7,3.4620917688243935e-8,1.7153544717984914e-7,2.1940055106028922e -8,1.2769024237968551e-7,4.8280348607931955e-9,6.461311841121642e-8,-1.352575651 4809473e-8,-7.684699099286263e-9,-2.9658723477155036e-8,-7.788023737020922e-8,-4 .047191026756991e-8,-1.3512089935829863e-7,-4.380772722356596e-8,-1.707102228465 3736e-7,-3.8862765450176084e-8,-1.794353323703035e-7,-2.6359270322018347e-8,-1.6 033061456255382e-7,-8.440215637506299e-9,-1.1676839051233401e-7,1.16957998841371 59e-8,-5.586884554986682e-8,3.035879103663319e-8,1.2666705906383413e-8,4.4031899 903984595e-8,7.810783131390053e-8,5.001792047210074e-8,1.3038322776992572e-7,4.6 951285526120046e-8,1.6163825478088256e-7,3.50808093685373e-8,1.6741982733492478e -7,1.6268021596488325e-8,1.4730845521171432e-7,-6.305238997583729e-9,1.049095459 3933566e-7,-2.867316517551899e-8,4.721489688108704e-8,-4.677700715660649e-8,-1.6 551972237266455e-8,-5.7190277402696665e-8,-7.641661170509906e-8,-5.7750845883219 88e-8,-1.232217812230374e-7,-4.798507191594581e-8,-1.500348929539541e-7,-2.92437 62966757458e-8,-1.531775808416569e-7,-4.518951435272811e-9,-1.327244092408364e-7 ,2.2034459590258848e-8,-9.240281428901653e-8,4.5795644609825104e-8,-3.8925911383 103085e-8,6.247649508850373e-8,1.9126481731746026e-8,6.888492265488821e-8,7.2689 64452578075e-8,6.35182573205384e-8,1.1363691498900153e-7,4.687864318952961e-8,1. 360183716769825e-7,2.144827604411148e-8,1.3692603317849716e-7,-8.680026475360592 e-9,1.1685883549716891e-7,-3.846272988994315e-8,7.954528058462529e-8,-6.27487821 7027435e-8,3.126580239154464e-8,-7.716540295632512e-8,-2.020383149670124e-8,-7.8 89514108683215e-8,-6.68497079914232e-8,-6.720723888520297e-8,-1.0167435959829163 e-7,-4.3645762559663126e-8,-1.1975075153713988e-7,-1.1832858248794764e-8,-1.1891 678042275089e-7,2.308856750232735e-8,-1.0001188144315165e-7,5.528772462071174e-8 ,-6.663564988684811e-8,7.921842382074828e-8,-2.4482059046704308e-8,9.05698840369 9506e-8,1.9629631253792468e-8,8.703290887979165e-8,5.8861960638978417e-8,6.87470 5604786868e-8,8.742540558159817e-8,3.8344889929931014e-8,1.0143502748860556e-7,5 .755360632520024e-10,9.94316948776941e-8,-3.843843643380751e-8,8.249778460367452 e-8,-7.219536968250395e-8,5.3968339130960885e-8,-9.489680508067977e-8,1.88000086 60946332e-8,-1.0243961412470526e-7,-1.728548326696e-8,-9.314704385587902e-8,-4.8 73542280847687e-8,-6.811089292568795e-8,-7.102593002628055e-8,-3.107823687287237 e-8,-8.131225115448615e-8,1.2109261149362283e-8,-7.877756758034593e-8,5.44384661 79362877e-8,-6.463856294658399e-8,8.88658746589499e-8,-4.182719237633137e-8,1.09 48871675964256e-7,-1.441798502810343e-8,1.1255299625645421e-7,1.309215491573923e -8,9.71264810800676e-8,3.652399271913964e-8,6.531689678013208e-8,5.2654801407925 333e-8,2.1990270937521927e-8,5.965749494407646e-8,-2.597437287477078e-8,5.728079 6994518823e-8,-7.077982644432268e-8,4.6758000138424904e-8,-1.0498003177872306e-7 ,3.0479803569960495e-8,-1.2271735272406659e-7,1.1502635288707097e-8,-1.207218360 832485e-7,-7.012232572378707e-9,-9.89030155551518e-8,-2.232631501897231e-8,-6.04 2829170382902e-8,-3.253148150861307e-8,-1.126556270492074e-8,-3.677537208091053e -8,4.0744591700558885e-8,-3.5281200183590045e-8,8.714194166259404e-8,-2.91752755 28814382e-8,1.2022522355437104e-7,-2.0171768255750067e-8,1.3433009371510707e-7,- 1.0184898258103203e-8,1.2679538485826924e-7,-9.48340073136933e-10,9.845307857858 643e-8,6.285233666858403e-9,5.355287413522092e-8,1.0912705405985434e-8,-8.745786 317376769e-10,1.2994831877222168e-8,-5.6121411518006425e-8,1.3126058462376022e-8 ,-1.0319883614329228e-7,1.2198796639495413e-8,-1.3430187095764268e-7,1.112147174 3535949e-8,-1.4410350956950424e-7,1.0556746588008536e-8,-1.306638210962774e-7,1. 0739150013705512e-8,-9.579873250231685e-8,1.1414194034387037e-8,-4.4841215185442 707e-8,1.1911470920722422e-8,1.4175789431192243e-8,1.1336403815676022e-8,7.17888 6107794824e-8,8.836241960352709e-9,1.186250813134393e-7,3.879819132635021e-9,1.4 692922434278444e-7,-3.515509661156102e-9,1.5184838275672519e-7,-1.26685080203969 85e-8,1.3226078010575293e-7,-2.226547479722285e-8,9.100791231730909e-8,-3.054695 696391718e-8,3.4484436639559135e-8,-3.5622434779725154e-8,-2.835523815747365e-8, -3.585806140904424e-8,-8.741915280552348e-8,-3.0262789607604645e-8,-1.3310236113 28419e-7,-1.8791553202390787e-8,-1.5785127516210196e-7,-2.495440298844187e-9,-1. 5741350978260016e-7,1.6527152979506354e-8,-1.315653577194098e-7,3.53888935933355 24e-8,-8.419365826739522e-8,5.085162513296382e-8,-2.2711049041390652e-8,5.987803 319840168e-8,4.3106652469759865e-8,6.020332676826001e-8,1.0267898886695548e-7,5. 082233300868211e-8,1.4632553302362794e-7,3.229512657298983e-8,1.6684182924109336 e-7,6.800249252592039e-9,1.6068939601154852e-7,-2.209532112829038e-8,1.286030908 4317123e-7,-4.9929113288271765e-8,7.551252423354526e-8,-7.203408358691377e-8,9.7 82965548765787e-9,-8.431845088807677e-8,-5.810602488054428e-8,-8.400549944553859 e-8,-1.1723588499990001e-7,-7.020152992254225e-8,-1.5800895880602184e-7,-4.41822 22325162e-8,-1.737094663667449e-7,-9.329681915914989e-9,-1.6161074256615393e-7,2 .929103004589706e-8,-1.2344602851044328e-7,6.566628485416004e-8,-6.5162296891685 4e-8,9.377239962304884e-8,4.008910536867916e-9,1.0857223031734975e-7,7.301743210 06416e-8,1.0690452256767458e-7,1.3076454763449874e-7,8.811070983938407e-8,1.6789 185508514493e-7,5.428115912309295e-8,1.7830146248343226e-7,1.0058755606223713e-8 ,1.6015852111195272e-7,-3.7988669987498724e-8,1.1621219186963572e-7,-8.234437132 159655e-8,5.337874142696819e-8,-1.1572207370136312e-7,-1.8349950892115885e-8,-1. 3226288331225078e-7,-8.749950097808323e-8,-1.2855345232765103e-7,-1.429532971997 105e-7,-1.0428958319153026e-7,-1.757441623340128e-7,-6.246106920571037e-8,-1.805 0761241283908e-7,-9.007450785247784e-9,-1.5636099703897344e-7,4.8020453391472984 e-8,-1.0706388309245085e-7,9.967530445464945e-8,-4.043157275646081e-8,1.37521709 57559429e-7,3.290755046236882e-8,1.5501495909120422e-7,1.0121155469278165e-7,1.4 862459352116275e-7,1.535100864202832e-7,1.18511877644778e-7,1.8137095025849703e- 7,6.863422186142998e-8,1.8026273096438672e-7,6.241009486984694e-9,1.502937152508 821e-7,-5.9178759670430736e-8,9.6205269528582e-8,-1.1734320537470921e-7,2.661998 621533712e-8,-1.587992954910078e-7,-4.7336740749415185e-8,-1.7646118521952303e-7 ,-1.1382016396055405e-7,-1.6681565284670796e-7,-1.621684049268879e-7,-1.30589882 0191942e-7,-1.8461685158399632e-7,-7.275829716490989e-8,-1.7754862824403972e-7,- 1.8693526726565324e-9,-1.4207904541763128e-7,7.12196168706214e-8,-8.387929995024 024e-8,1.350101968000672e-7,-1.226757717631699e-8,1.791784427496168e-7,6.1287053 65426868e-8,1.9624867775291932e-7,1.2500586876740272e-7,1.8285521719008102e-7,1. 6869270780262013e-7,1.4037811979505932e-7,1.8536968582338886e-7,7.48375583725646 7e-8,1.7239531757695659e-7,-3.954397698180401e-9,1.3188457614887739e-7,-8.386642 491586827e-8,7.036361182599649e-8,-1.523217889598527e-7,-2.283826461280114e-9,-1 .982851216553172e-7,-7.440858951213158e-8,-2.140455137578101e-7,-1.3446904745251 231e-7,-1.9650781268865103e-7,-1.7288331832787662e-7,-1.4777623391637462e-7,-1.8 356305986344523e-7,-7.492307929624076e-8,-1.648810297183445e-7,1.103651925404847 1e-8,-1.199205286184224e-7,9.681468782218872e-8,-5.59659980581273e-8,1.689130897 375435e-7,1.6679663872309902e-8,2.1575439745902258e-7,8.635897330577791e-8,2.295 4650091833173e-7,1.419358568455209e-7,2.0757832430717826e-7,1.745807907127528e-7 ,1.5273110420821467e-7,1.791784427496168e-7,7.311207639304484e-8,1.5513171547354 432e-7,-1.9145318219671026e-8,1.064367722847237e-7,-1.0973732855745766e-7,4.1019 006857823115e-8,-1.8441545535097248e-7,-3.0559448305211845e-8,-2.312367399781578 6e-7,-9.680942980594409e-8,-2.424790750410466e-7,-1.4716398766267957e-7,-2.15915 846979442e-7,-1.7366949123243103e-7,-1.5523812635365175e-7,-1.7224643045210541e- 7,-6.954682874038554e-8,-1.4331929776290053e-7,2.801593268486613e-8,-9.171864689 960785e-8,1.2229020285303704e-7,-2.5874314246721042e-8,1.9846278576096665e-7,4.3 56334670774231e-8,2.4440464585495647e-7,1.054514413567631e-7,2.5260820279982e-7, 1.4994745356489148e-7,2.214165988334571e-7,1.7008042618726904e-7,1.5534149611085 013e-7,1.6284681692013692e-7,6.44118358650303e-8,1.2965963946953707e-7,-3.735416 953531967e-8,7.608232976963336e-8,-1.3411838040156e-7,1.0896656021941453e-8,-2.1 069845956844802e-7,-5.533853197903227e-8,-2.5495873501313326e-7,-1.1200258853705 236e-7,-2.5974125605898735e-7,-1.5012123810720368e-7,-2.2402615229566436e-7,-1.6 379334510929766e-7,-1.5313399615024537e-7,-1.5110805406948202e-7,-5.793131663267 559e-8,-1.1440880598456715e-7,4.684170562541112e-8,-5.986959195070085e-8,1.44862 86659121106e-7,3.543078719303594e-9,2.207816862664913e-7,6.554610365583358e-8,2. 626331934152404e-7,1.1621221318591779e-7,2.637312945807935e-7,1.4756460586795583 e-7,2.2374074148956424e-7,1.548379913174358e-7,1.487551344325766e-7,1.3720556069 07452e-7,5.036477546127571e-8,9.785939880657679e-8,-5.614236897599767e-8,4.34420 4285189335e-8,-1.5416648579957837e-7,-1.707385877125489e-8,-2.2839421376374958e- 7,-7.386714173662767e-8,-2.672012158200232e-7,-1.1786644904532295e-7,-2.64480519 26308835e-7,-1.4220435673450993e-7,-2.2060758908537537e-7,-1.4329432929116592e-7 ,-1.423892257435e-7,-1.2135944871261017e-7,-4.200282432975655e-8,-8.033579490529 519e-8,6.490785153800971e-8,-2.7174962724529905e-8,1.6168131367066962e-7,2.93317 72566365544e-8,2.3324616904574214e-7,8.000931472906814e-8,2.684793400931085e-7,1 .1679284739329887e-7,2.619423185024061e-7,1.3401688647718402e-7,2.14724678926359 05e-7,1.2929177728437935e-7,1.3426242162495328e-7,1.0383159576576872e-7,3.316171 1598950205e-8,6.218888870535011e-8,-7.2784388294167e-8,1.1450310921645723e-8,-1. 6707475936073024e-7,-3.9966550957615254e-8,-2.350818988361425e-7,-8.371193871425 93e-8,-2.6633134098119626e-7,-1.1286404344446055e-7,-2.5612271770114603e-7,-1.23 02950835874071e-7,-2.062390649371082e-7,-1.1300813440584534e-7,-1.24638148690792 15e-7,-8.492092717915511e-8,-2.4177921886803233e-8,-4.378986773190263e-8,7.94188 6792650621e-8,3.3493563478259603e-9,1.7003641517021606e-7,4.864789104885858e-8,2 .3368514234789473e-7,8.475183221889893e-8,2.606714133435162e-7,1.060008898434716 7e-7,2.47080549797829e-7,1.093205383995155e-7,1.9534485318217776e-7,9.4666759764 55008e-8,1.1381365538909449e-7,6.495940851891646e-8,1.540166749691707e-8,2.55246 27744744066e-8,-8.446616561741394e-8,-1.6848247241796344e-8,-1.7028382615080773e -7,-5.507182265773736e-8,-2.2888355033501284e-7,-8.29474018360088e-8,-2.51466133 24977807e-7,-9.61746167149613e-8,-2.3492745526709768e-7,-9.30190964254507e-8,-1. 8228004705633793e-7,-7.453374450960837e-8,-1.0211371659352153e-7,-4.430629019225 307e-8,-7.190720907601644e-9,-7.786582045810064e-9,8.7595566355958e-8,2.86836154 8280518e-8,1.6756843024268164e-7,5.8966605820387485e-8,2.2055249360164453e-7,7.8 16283442707572e-8,2.387361348610284e-7,8.340805379702942e-8,2.1982599207603926e- 7,7.430342918723909e-8,1.6732249719098036e-7,5.291352067615662e-8,8.988544664134 679e-8,2.3342494159805938e-8,-9.657696864451282e-11,-9.029974989971379e-9,-8.849 696087054326e-8,-3.851283736366895e-8,-1.6168071681477159e-7,-6.009787512084586e -8,-2.086184167637839e-7,-7.031114535038796e-8,-2.2255642306845402e-7,-6.7776383 61654681e-8,-2.0198783090563666e-7,-5.339874320497984e-8,-1.5078565240855824e-7, -3.0144647666929814e-8,-7.74920465573814e-8,-2.4640200990688754e-9,6.10748429608 0656e-9,2.4536632281524362e-8,8.688752473062777e-8,4.6019223987059377e-8,1.52454 90203597e-7,5.827331506225164e-8,1.930607993472222e-7,5.9356413117939155e-8,2.03 05571979406523e-7,4.9406320812295235e-8,1.8167025928050862e-7,3.057391495531192e -8,1.3301294643497386e-7,6.593907642127306e-9,6.530615337396739e-8,-1.7924634221 344604e-8,-1.0502304803594598e-8,-3.8357740095307236e-8,-8.251703320638626e-8,-5 .09184445718347e-8,-1.3977266632991814e-7,-5.334685226898728e-8,-1.7391343476447 219e-7,-4.531527508788713e-8,-1.8041541238744685e-7,-2.847492908131244e-8,-1.591 7244411411957e-7,-6.137511832093878e-9,-1.1437219882282079e-7,1.7349023551105347 e-8,-5.37032178726804e-8,3.741698151316086e-8,1.296049845223024e-8,5.01374586292 5134e-8,7.517348876717733e-8,5.296352867389942e-8,1.2356650813671877e-7,4.522172 5031296955e-8,1.512654534963076e-7,2.825746747703306e-8,1.548669530393454e-7,5.2 072621770093974e-9,1.3483074212672364e-7,-1.9566755327105056e-8,9.52491490124884 9e-8,-4.127851127577742e-8,4.305459810893808e-8,-5.561204829973576e-8,-1.3186848 946133978e-8,-5.95453570895188e-8,-6.468775382018066e-8,-5.194998209390178e-8,-1 .0382181869772467e-7,-3.385292757229763e-8,-1.252602146450954e-7,-8.305409693321 053e-9,-1.266889739781618e-7,2.01266487920293e-8,-1.0901331393142755e-7,4.616561 000148067e-8,-7.604103302583098e-8,6.477917224856355e-8,-3.372076662344625e-8,7. 212108243948023e-8,1.0917915460595395e-8,6.628347648529598e-8,5.093718868920405e -8,4.771956696458801e-8,8.057844524955726e-8,1.924885140169863e-8,9.609434670210 248e-8,-1.4367117273650365e-8,9.62030739515285e-8,-4.7215870324635034e-8,8.21144 1127059516e-8,-7.326191564516193e-8,5.714957751479233e-8,-8.743310786485381e-8,2 .6044631340482738e-8,-8.657399064304627e-8,-5.926722224103287e-9,-7.009103342170 42e-8,-3.384931801519997e-8,-4.016405341644713e-8,-5.3931231036585814e-8,-1.4717 116414431075e-9,-6.401522512078373e-8,3.953713800797232e-8,-6.376927785822772e-8 ,7.571323124011542e-8,-5.454768370327656e-8,1.0044124110208941e-7,-3.89743775031 0928e-8,1.0882675383072637e-7,-2.034499857472838e-8,9.862651495495811e-8,-1.9718 697785719996e-9,7.074959285091609e-8,1.3404161336438847e-8,2.9227308573354094e-8 ,2.4029375822465227e-8,-1.9362573766557034e-8,2.931786724502672e-8,-6.6935633924 45867e-8,2.9780522936562193e-8,-1.0524054516736214e-7,2.673979793144099e-8,-1.27 27836917747481e-7,2.1905208313910407e-8,-1.2855795716859575e-7,1.691088868938095 4e-8,-1.0796576077609643e-7,1.2917411140733748e-8,-6.808754449139087e-8,1.036471 5308242012e-8,-1.4907442391631776e-8,8.924573080548726e-9,4.308567014277287e-8,7 .658934819687602e-9,9.625129138157718e-8,5.343167686078232e-9,1.3539460042011342 e-7,8.767813142185332e-10,1.5334450154114165e-7,-6.316128065009252e-9,1.46242811 63833075e-7,-1.5995510693755932e-8,1.1431623647695233e-7,-2.7000339741789503e-8, 6.198324342676642e-8,-3.7368934613368765e-8,-2.7429507554188604e-9,-4.4677328503 43964e-8,-6.947900033082988e-8,-4.65375258329459e-8,-1.271353227139116e-7,-4.116 12219863855e-8,-1.657535761978579e-7,-2.787074038224091e-8,-1.7821416520291677e- 7,-7.4418835538381245e-9,-1.6152242210409895e-7,1.78118000349059e-8,-1.174446140 339569e-7,4.425945121511177e-8,-5.236780964423815e-8,6.74662032906781e-8,2.36166 9260153576e-8,8.292775532936503e-8,9.827665792272455e-8,8.690673070077537e-8,1.5 920657858714549e-7,7.721943973137968e-8,1.9588374300383293e-7,5.381905054946401e -8,2.01472317939988e-7,1.9046609622819233e-8,1.7406878782821877e-7,-2.2527601117 87211e-8,1.1716433334640897e-7,-6.468043523000233e-8,3.9226861758834275e-8,-1.00 46120735296427e-7,-4.755322891014657e-8,-1.2333094900895958e-7,-1.29169279716734 3e-7,-1.283278550090472e-7,-1.920576551128761e-7,-1.1305681368867226e-7,-2.25346 44017468963e-7,-7.831395976154454e-8,-2.2272135424827866e-7,-2.8210422442498384e -8,-1.835907994518493e-7,3.026283934559615e-8,-1.1333888494391431e-7,8.819482388 844335e-8,-2.2601398086408153e-8,1.3610795690510713e-7,7.434063320488349e-8,1.65 50283987726289e-7,1.6180867135062726e-7,1.70341195371293e-7,2.2526110399212484e- 7,1.482129619034822e-7,2.537052807838336e-7,1.0096973568352041e-7,2.415877418115 997e-7,3.468574050202733e-8,1.8983951122208964e-7,-4.1086096302933584e-8,1.05884 95058527769e-7,-1.1468043936702088e-7,2.5876758513732057e-9,-1.7411272779099818e -7,-1.0371854131108194e-7,-2.0902572828163102e-7,-1.9581293031478708e-7,-2.12472 9689967353e-7,-2.5837624662017333e-7,-1.8223526865313033e-7,-2.805332712796371e- 7,-1.2142896821387694e-7,-2.5772834533199784e-7,-3.826910699444852e-8,-1.9261226 213984628e-7,5.501317446032772e-8,-9.477400908508571e-8,1.4396246683645586e-7,2. 0663790678554506e-8,2.141380548437155e-7,1.353819669702716e-7,2.5345423182443483 e-7,2.3077254240888578e-7,2.542422521401022e-7,2.909561942487926e-7,2.1468599697 982427e-7,3.054196326957026e-7,1.3936859488694608e-7,2.708362671910436e-7,3.8804 98411490407e-8,1.9175661236658925e-7,-7.20061592573984e-8,8.003340923323776e-8,- 1.7581527345100767e-7,-4.695015576317019e-8,-2.5569300987626775e-7,-1.6888239429 135865e-7,-2.9772394327665097e-7,-2.6572107003630663e-7,-2.942533399163949e-7,-3 .216046877696499e-7,-2.4395217224082444e-7,-3.2649120385030983e-7,-1.54154022879 99314e-7,-2.794814122353273e-7,-3.692490579965124e-8,-1.8526327494328143e-7,9.23 838996413906e-8,-5.7667513431169937e-8,2.1058662014183938e-7,7.687667391564901e- 8,2.963788858778571e-7,2.0058980965131923e-7,3.4519857194936776e-7,3.07385420228 4565e-7,3.573021274405619e-7,3.7416907616716344e-7,3.1087432716958574e-7,3.70650 1559008757e-7,1.8159762760205922e-7,2.960990173050959e-7,3.2668427962789792e-9,1 .7206878055731067e-7,-1.4935011449779267e-7,2.215257310922425e-8,-2.558177527589 578e-7,-1.244094391950057e-7,-3.4790230074577266e-7,-2.48221766696588e-7,-4.0844 787463356624e-7,-3.424703720611433e-7,-3.83691684646692e-7,-3.784057298616972e-7 ,-3.049817678402178e-7,-3.52345750798122e-7,-2.4648699081808445e-7,-3.1957475243 87116e-7,-1.5783344053943438e-7,-2.518800101825036e-7,3.3997068271673925e-8,-6.3 0552534630624e-8,2.2121484732906538e-7,1.4892148669787275e-7,3.141547040286241e- 7,2.5954253146664996e-7,4.2449011061762576e-7,3.912932697858196e-7,5.71127657167 3807e-7,5.997012522129808e-7,5.73685213112185e-7,6.688356961603859e-7,3.76762329 77901236e-7,5.146665671418305e-7,1.2447100061763194e-7,2.9143745905457763e-7,-7. 52123909819602e-8,5.3134645128238844e-8,-2.977363067202532e-7,-2.684394928564870 5e-7,-6.520573947454977e-7,-6.28192310614395e-7,-9.370967291033594e-7,-8.5705448 78239161e-7,-8.548654477635864e-7,-9.001176977108116e-7,-5.94005030052358e-7,-8. 865962399795535e-7,-4.7458777885367454e-7,-8.468994110444328e-7,-3.5121499308843 34e-7,-6.936784302524757e-7,-8.961339403867896e-8,-4.980943231203128e-7,1.230076 236424793e-7,-3.2142719419425703e-7,2.4483753691129095e-7,-8.036778353925911e-8, 3.2601849397906335e-7,1.5931499319776776e-7,2.634457132444368e-7,3.0757396984881 78e-7,1.0006087336478231e-7,4.02592405635005e-7,-1.3917727414991532e-8,2.7964540 549874073e-7,-1.6491451049205352e-7,-1.252113293048751e-7,-4.322458266869944e-7, -3.4416802918713074e-7,-5.973930683467188e-7,-1.608441806411065e-7,-5.6074816257 02349e-7,-9.189005822918261e-8,-6.423296667890099e-7,-4.1814701035036705e-7,-8.8 45384513733734e-7,-6.042727704880235e-7,-6.649395345448283e-7,-1.497745927281357 6e-7,2.076261296224402e-7,6.342019105431973e-7,9.887080523185432e-7,0.0000011756 283129216172,0.0000012178294355180697,0.0000014045423313291394,0.000001216908231 0720114,0.0000014515543398374575,0.0000013197013686294667,0.00000137268625621800 31,0.0000014580078868675628,0.0000013222773986854008,0.0000011356053164490731,0. 0000010844875077964389,1.0777938541650656e-7,2.2619612138896628e-7,-7.4826027685 04876e-7,-7.17060970600869e-7,-6.657965059275739e-7,-8.349057907253155e-7,-3.209 282795069157e-7,-3.6607696074497653e-7,-3.680989948406932e-7,-1.1575120595352928 e-7,-4.95609242534556e-7,-3.544887476891745e-7,-5.947504178038798e-7,-8.18500154 7644788e-7,-7.568756359432882e-7,-9.477171829530562e-7,-7.301545679183619e-7,-6. 806443479945301e-7,-6.662963869530358e-7,-7.349966608671821e-7,-9.22325568808446 4e-7,-0.0000011680775742206606,-9.623134928915533e-7,-0.0000011299755442450987,- 5.716998430216336e-8,-4.1727275856828783e-7,0.0000012798651596312993,4.575892944 558291e-7,0.0000017962800029636128,0.0000010811531865329016,0.000001247553427674 5748,0.0000010263622698403196,6.50961169412767e-7,3.0017449148544983e-7,6.232056 648514117e-7,-2.1072614231343323e-7,5.681872607965488e-7,-1.0082136014943899e-7, 5.6389637848042184e-8,-3.821854477337183e-8,-1.9356215830157453e-7,-8.7070645804 48787e-8,3.1259128263627645e-7,3.307707174826646e-7,6.644752374995733e-7,5.65769 0280713723e-7,2.2780943709221901e-7,-9.992874083764036e-8,-3.080589294768288e-8, -4.176954746526462e-7,3.027119532816869e-7,2.994362375829951e-7,2.15870869624268 38e-7,4.623799156888708e-7,-6.439171329475357e-8,-1.8978136040459503e-7,6.838890 840299428e-7,1.823492823405104e-7,0.0000016455330751341535,0.0000014614304291171 72,0.0000012464244036891614,0.0000017142567685368704,1.521793251413328e-7,8.7344 31844459323e-7,-2.2615671468884102e-7,3.06045933484711e-7,-2.8238775939826155e-7 ,7.30272518012498e-8,-0.00000103277864127449,-6.274767088143562e-7,-0.0000019067 788343818393,-0.0000013300996215548366,-0.0000018798998553393176,-0.000001139165 4197723255,-0.0000017127154023910407,-0.0000010173259852308547,-0.00000221725463 2341792,-0.0000019248880107625155,-0.0000020913898879371118,-0.00000212423356060 75358,-5.66933863410668e-7,-2.713406956900144e-7,8.740189514355734e-7,0.00000172 01797390953288,0.000001283963001696975,0.0000020493916963459924,0.00000145843455 3569532,0.0000017541703982715262,0.0000023141244582802756,0.00000247092384597635 83,0.000003410554882066208,0.0000036500086935120635,0.000002940127160400152,0.00 00032614680094411597,9.374844012199901e-7,0.0000014839671393929166,5.36780817128 6015e-7,0.0000010193630259891506,0.0000026928789793601027,0.00000254477527050767 1,0.0000042918609324260615,0.000004003791673312662,0.0000036620276659959927,0.00 0004126029125472996,0.0000026585357773001306,0.0000032682805795047898,0.00000298 4725369969965,0.000002696561978154932,0.0000035732336982619017,0.000002965909288 8323357,0.0000024645387384225614,0.0000024580745048297103,7.03024511494732e-7,8. 939995268519851e-7,3.9872708157417946e-7,4.0552660607318103e-7,2.736072133302514 e-7,5.195767585064459e-7,-6.794140290367068e-7,-3.420753387217701e-7,-8.34415232 0205467e-7,-9.72813950284035e-7,-8.701111937625683e-7,-0.0000012382436125335516, -0.0000019544306724128546,-0.0000023187603801488876,-0.000002346559995203279,-0. 0000032190364436246455,-0.000002146023462046287,-0.0000034883794342022156,-0.000 002175008376070764,-0.0000032290981835103594,-7.618077688675839e-7,-0.0000014997 837070040987,3.1260697141988203e-7,-6.726122592226602e-7,-0.00000180816005013184 62,-0.0000030780636279814644,-0.0000033705023270158563,-0.0000045586630221805535 ,-0.0000017679449229035527,-0.0000024891428438422736,-7.876126346673118e-7,-8.45 7274702777795e-7,-0.000001939183221111307,-0.0000018313490954824374,-0.000003037 5533697224455,-0.0000032928546715993434,-0.000002612765911180759,-0.000002794165 7663177466,-1.2583780062414007e-7,-1.304837837778905e-7,0.000002071829158012406, 0.0000012727984994853614,0.0000010511553227843251,-1.8225119902126607e-7,-8.2059 87001019821e-7,-6.519076123367995e-7,-5.326791665538622e-7,7.292591703844664e-7, 3.8590383155678865e-7,6.530359542011865e-7,8.554245312097919e-8,-2.8931327733516 81e-7,-0.0000011364130614310852,-3.044409879748855e-7,-0.0000015163764146564063, -2.6364565997027967e-7,2.97657777537097e-7,6.473703706433298e-8,0.00000182779797 3419365,7.450047974089102e-7,0.0000011695537978084758,8.898541636881419e-7,0.000 0016373277276215958,0.00000214285728361574,0.000004091570190212224,0.00000466709 6163757378,0.000004342218744568527,0.000004851250650972361,0.0000016070987385319 313,0.000002105672592733754,-8.746696380512731e-7,-4.304055778447946e-7,-9.53932 840275229e-7,-0.000001061122361534217,9.499452744421433e-7,-3.891087771989987e-7 ,0.0000013530089972846326,-2.494775799277704e-7,-0.0000016349131328752264,-0.000 00132011086861894,-0.0000037219176647340646,-0.0000016550230839129654,-0.0000018 801339365381864,-5.213034341977618e-7,3.8171768323991273e-7,4.5613657562171284e- 7,5.042894031248579e-7,8.237010433731484e-7,3.6334296282802825e-7,8.760717378208 938e-7,0.0000012198424883536063,2.7994315132673364e-7,0.000002176149791921489,-5 .067900019639637e-7,0.000002342127800147864,-8.856314934746479e-7,0.000001478166 3821850088,-0.0000013078295069135493,-3.082652710872935e-7,-0.000002103236283801 3796,-0.000002368892637605313,-0.000002730813321250025,-0.0000034160445920861093 ,-0.0000024211738036683528,-0.0000029086347694828874,-0.000001562975739943795,-0 .0000019350463844602928,-0.0000014834488410997437,-0.0000014534834917867556,-0.0 000016977220411718008,-0.000001213783093589882,-6.728521384502528e-7,-5.77432388 1269083e-7,6.11771270087047e-7,9.30576675273187e-7,8.939668418861402e-7,0.000002 7284738735033898,0.0000018481326833352796,0.000003407468284422066,0.000004100708 338228287,0.000003105833684458048,0.000004962969796906691,0.00000294698497782519 55,0.0000037807042190252105,0.000002233268787676934,0.0000031275560559151927,8.6 82991392561235e-8,0.0000028762378860847093,-0.0000017796860447560903,6.712042477 37478e-7,-0.000001924816388054751,-0.0000020046747977175983,-0.00000193949904314 64976,-0.000002175224835809786,-0.000002797315119096311,-9.022790550261561e-7,-0 .0000029163450108171673,-4.2059861016241484e-7,-0.000002293946636200417,-8.70950 7710591424e-7,-0.000002271910261697485,-0.000001970868197531672,-0.0000018012976 85233294,-0.0000029321738566068234,-4.773514774569776e-7,-0.00000236885603044356 7,5.963245541806828e-8,-3.129603953766491e-7,8.343644140040851e-7,0.000001990498 731174739,0.0000029133886982890544,0.0000031243421290128026,0.000003403108166821 7666,0.0000025283086415583966,0.0000014670375776404398,0.0000014539837138727307, 1.7197021406900603e-7,6.120799866948801e-7,7.339646117543452e-7,-1.7980983102461 323e-7,0.00000206096865440486,2.195063188992208e-7,0.0000024490736905136146,9.11 5740340348566e-7,0.000001012251686915988,-7.794897669555212e-7,2.750641669990727 7e-8,-0.0000024963355826912448,4.2787877418959397e-7,-0.0000011866404747706838,- 6.74784530474426e-7,1.879491264844546e-7,-0.000002654897798493039,-3.36756897922 8963e-7,-0.0000023314582904276904,-6.135625199021888e-7,-7.370135222117824e-7,5. 8683184533947497e-8,8.916401839087484e-7,0.0000014124995004749508,0.000002813352 239172673,0.0000026935217647405807,0.0000029301741051313,0.000002235738520539598 5,0.000001388805912938551,0.0000018279930600328953,0.000001394297441947856,0.000 0029639745662279893,0.0000018493608422431862,0.0000016150321471286588,3.59928776 56099154e-7,-0.000002704265398278949,-0.0000010994443755407701,-0.00000482881932 8395184,-0.0000013743367617280455,-0.000005059882369096158,-0.000002426815854050 801,-0.000006455979018937796,-0.000003922141331713647,-0.000006152407877380028,- 0.0000028160709462099476,-0.0000024322541776200524,0.0000010553062566032168,3.09 33875905247987e-7,0.0000034888794289145153,4.5727097131020855e-7,0.0000020634572 59282586,0.0000012197371006550384,-2.0020483049165705e-8,0.000002714480842769262 4,2.0493121155595873e-7,0.000002951913074866752,5.058386705059092e-7,0.000003211 7116006702418,-0.0000018270185364599456,0.0000033168328172905603,-0.000004480983 534449479,4.185849320492707e-7,-0.000003851749170280527,-0.000002551806574047077 4,-0.000001983080892387079,-0.0000010308563105354551,-0.000002553476633693208,0. 0000011045649443985894,-0.000003134451389996684,-7.845445111342997e-7,-0.0000015 007548199719167,-0.000004307928065827582,-7.732348876743345e-7,-0.00000588957482 2504073,-6.64547201267851e-7,-0.0000036463213746174006,0.0000014335303148982348, 9.660944897404988e-7,0.0000030718933885509614,0.000002293975967404549,0.00000404 5246441819472,4.4917024411006423e-7,0.00000643897510599345,0.0000013571220733865 63,0.000005552279162657214,0.000003269643684689072,7.760314701954485e-8,9.674236 025603022e-7,-0.000001983548600037466,-0.000003136755140076275,6.122683657849848 e-7,-0.000005188488557905657,0.0000012430969036358874,-0.000005397181666921824,- 0.0000011439969966886565,-0.000004655254997487646,-0.0000034371810215816367,-0.0 000031633135222364217,-0.000004312693818064872,-4.008234952834755e-7,-0.00000418 18429963313974,0.0000022276451545621967,-0.000004215441549604293,0.0000017187583 125632955,-0.0000034841016258724267,6.790135671508324e-7,-0.0000010553040965533, 0.0000027846174361911835,2.2888437456458632e-7,0.0000037306460853869794,-3.53962 2639436857e-7,4.354231180059287e-7,-4.999796487936692e-8,-0.00000238118991546798 5,3.447065068939992e-7,-0.0000015586550716761849,-0.000001388713258165808,0.0000 010854568017748534,-0.0000035118382584187202,0.0000024505141027475474,-0.0000027 599924123933306,0.0000012928514934174018,3.452988153185288e-7,9.147630066763668e -7,4.678361165133538e-8,0.0000029235700367280515,-0.000004951607479597442,0.0000 02497083642083453,-0.0000061007790463918354,-0.000002038024604189559,-8.92883008 4187211e-7,-0.000005155670351086883,0.0000024980663511087187,-0.0000027834005322 802113,0.0000030437615805567475,0.0000020207432953611715,0.000005872328074474353 ,0.0000023667914774705423,0.000008525761586497538,-0.000001744319888530299,0.000 006328796189336572,-0.0000031836743801250122,5.817118449158443e-7,-0.00000276040 3958745883,-0.0000035621792449092027,-0.000005721019078919198,-0.000003190766619 8094375,-0.00000798531254986301,-0.0000031328777367889415,-0.0000070579048951913 14,-0.000006145962288428564,-0.0000067292294261278585,-0.000004455939688341459,- 0.0000036864155390503583,0.0000028903127713419963,0.000003648249503385159,0.0000 055629725466133095,0.0000065096337493741885,0.000002313576715096133,0.0000032996 22903796262,-7.386475431303552e-7,0.0000011346337487339042,-0.000002999298430950 148,0.0000012600233958437457,-0.000004482871645450359,0.0000012339850172793376,- 0.000005028339273849269,-3.190280040143989e-8,-0.0000065708190959412605,-0.00000 2137759793185978,-0.000007463507699867478,-0.000002253582579214708,-0.0000062142 55336089991,-7.441607294822461e-7,-0.000005036740731156897,-8.026523801163421e-7 ,-0.0000038829380173410755,-0.0000014424687151404214,-0.000002219082944066031,-0 .0000020632605810533278,-2.967931038710958e-7,-0.0000033134051591332536,0.000003 112592821707949,-0.000001956977257577819,0.000004888274361292133,0.0000012583019 49746965,0.000002539396518841386,0.0000012315238109295024,0.00000295739391731331 12,-3.9749210145600955e-7,0.000007965088116179686,-3.201979836831015e-7,0.000008 430645721091423,-5.8561276716773136e-8,0.0000023614306883246172,-6.8120363039270 16e-7,-0.000002683240154510713,-0.000002635863893374335,-0.000002422957550152205 ,-0.000004931941020913655,6.032428245816845e-7,-0.000004697282747656573,9.093607 786780922e-7,-0.000004782049927598564,-0.0000014407632988877594,-0.0000074239114 837837406,-7.167645890149288e-7,-0.000005518366833712207,0.000001723038053569325 7,0.0000018537798496254254,3.114373328116926e-7,0.00000475042725156527,-0.000002 284921265527373,0.000001991696535696974,-0.0000018958348846354056,0.000001816775 4660680657,-4.297342002246296e-7,0.000005431287263490958,-2.5431930339436803e-7, 0.000006547586508531822,-0.0000019510043784976006,0.0000021715609364036936,-0.00 0005160231921763625,-0.000003922723863070132,-0.00000864976755110547,-0.00000697 77229327883106,-0.00001098142092814669,-0.000004680390702560544,-0.0000097587817 43585132,0.0000025811777959461324,-0.0000064820569605217315,0.000006200225016073 091,-0.0000068604194893850945,-0.000001493326294621511,-0.000008256333785539027, -0.00000808436016086489,-0.000005116302872920642,-0.0000019706062630575616,-0.00 00036357112094265176,9.638056326366495e-7,-0.000006723561000399059,-0.0000100438 48305940628,-0.000005082299139758106,-0.000017330961782136,0.0000022783654003433 185,-0.000010823952834471129,0.000007848390850995202,4.930726049678924e-8,0.0000 09791321645025164,0.000010214233043370768,0.000006767637387383729,0.000014693004 231958184,6.522810167552962e-7,0.00000584156759941834,0.000001056483142747311,-0 .0000061027412812109105,0.000005941973086009966,-0.000003799846808760776,0.00000 32200546229432803,0.000007958360583870672,-0.000002986663048432092,0.00001082110 5206559878,-0.0000017829129319579806,5.535289915314934e-7,0.00000234845037994091 4,-0.000008360521860595327,0.0000030174969651852734,-0.0000035998295970784966,0. 000003019416453753365,0.000005565047104028054,0.0000018894493223342579,0.0000023 230936676554848,-0.0000034996205613424536,-0.000009694063919596374,-0.0000087511 28007133957,-0.000014601409930037335,-0.000007933239430713002,-0.000009449898243 474308,-0.000002970120021927869,-0.000001097449057851918,-9.543623491481412e-7,0 .00000434171261076699,-0.000004111882390134269,6.79061088249e-7,-0.0000044968596 73963627,-0.000008936454833019525,0.0000034232402867928613,-0.000009793602657737 21,0.000009566062544763554,-3.9706472421130456e-7,0.000004433742105902638,0.0000 03042325033675297,-0.0000030128887829050655,-0.0000029714519769186154,-0.0000031 87324637110578,-0.000004348108632257208,-0.0000033043913845176576,0.000002110427 658408298,-0.000010759151336969808,0.0000043579448174568824,-0.00001797520599211 566,-8.999119245345355e-7,-0.000014672106772195548,-0.0000032756438486103434,-0. 000003837559233943466,7.575903282486252e-7,0.0000024387154553551227,0.0000023866 900846769568,0.00000110207599846035,-3.6517462831398007e-7,8.478238555653661e-7, 3.2741291988713783e-7,0.000003992907295469195,0.0000034631802918738686,0.0000039 670776459388435,0.000002545645429563592,0.0000018931576732938993,0.0000018666979 71308895,0.000004212356543575879,0.0000053428002502187155,0.00000782159713708097 1,0.000004359905233286554,0.000005222345862421207,-0.000005469212737807538,-0.00 00021719831693189917,-0.000014025296877662186,-0.000007200156233011512,-0.000013 071728062641341,-0.000008534292646800168,-0.00000858534622238949,-0.000009768594 28192256,-0.000009199759006150998,-0.000009531527211947832,-0.000010971834853990 003,-0.000005088163561595138,-0.000006511634637718089,-0.000001014210738503607,- 0.0000015070510244186153,-3.342962884289591e-7,-0.0000030100443382252706,8.83394 7049424751e-7,-0.000003861757249978837,0.000002195649585701176,0.000002458319613 651838,-1.23842681887254e-7,0.00000901737621461507,-0.000003161710992571898,0.00 0009653032066125888,-0.0000028306942567724036,0.000009005831088870764,9.14692321 8850134e-9,0.000010942871995212045,0.0000025969563921535155,0.000009264066648029 257,0.0000022111939870228525,6.530254381686973e-8,-9.742769861986744e-7,-0.00000 6675535132671939,-0.000003203911774107837,-0.000003444060439505847,-0.0000023708 191747573437,0.000001115949544328032,5.889252463475714e-8,-4.270693807484349e-7, 0.000001317725491389865,-0.0000026383902422821848,0.0000010433889201522106,1.824 5710009523464e-7,0.0000014354809536598623,0.000004203336175123695,0.000001658768 496781704,6.893950512676383e-7,0.0000023416355361405294,-0.000008033041922317352 ,0.000007374636879831087,-0.000007646023732377216,0.000008112931027426384,5.1108 88992021501e-7,-0.0000038381062950065825,0.0000019791827980952803,-0.00001196679 1134909727,8.282994201636029e-8,-0.00000741668827686226,-9.075603202290949e-7,-0 .000007570427897007903,-0.000009879624485620297,-0.000012811858141503762,-0.0000 15449104466824792,-0.000011708017154887784,-0.000005085837074148003,-0.000013832 926015311386,-0.000002735949237830937,-0.00001657587563386187,-0.000017186963304 993697,-0.0000036362621358421165,-0.000018992810510098934,0.00000785633710620459 2,-0.0000052445338951656595,0.0000016284280945910723,0.0000011946658560191281,-1 .574869372689136e-7,0.0000027136939024785534,0.00000893616470420966,0.0000071660 11528170202,0.000008467269253742415,0.0000052992504606663715,0.00000213242674362 8457,-0.0000022123847429611487,0.0000036260689739719965,-0.000002493302417860832 ,0.0000036938338325853692,0.000005352163043426117,-0.000002791706265270477,0.000 009312153451901395,-0.000001128120175053482,0.0000035371313060750253,0.000011255 68087445572,-0.0000020741836124216206,0.000012978097402083222,2.395776448338438e -7,-0.000004805451681022532,0.000002885989260903443,-0.00001947880446095951,-1.5 120596685846976e-7,-0.000016683519788784906,-0.000007136851309041958,-0.00001119 3683349119965,-0.000014262281183619052,-0.000010445800398883875,-0.0000093020717 03132242,-0.000006918155577295693,0.000010121770174009725,-0.0000032635687148285 797,0.000020283247067709453,-0.0000016351533531633322,0.000010875545740418602,0. 000003298426008768729,7.659355674149992e-7,0.000006105294687586138,-0.0000028685 344659606926,0.0000018908134507000796,-0.000006559243047377095,-0.00000193764185 49654773,-0.000005664392574544763,-0.000003935931545129279,2.3137319260513323e-7 ,-0.00000724212304703542,-4.4132727339274425e-7,-0.000008509233339282218,-0.0000 07299334811250446,-0.000008296520718431566,-0.00000775383068685187,-0.0000098880 88243314996,-6.643310825893423e-7,-0.000009194859558192547,0.0000012217028597660 828,-0.0000027014796160074184,-0.000005580995548370993,0.000005727384177589556,- 0.000007603383437526645,0.000008626728231320158,6.461232260335237e-8,0.000002496 3719624793157,0.00000464674667455256,-0.0000041028060877579264,2.581153353276022 e-7,2.623970658532926e-7,-0.000006722665148117812,0.000012226168109918945,-0.000 011507665476528928,0.000016527443222003058,-0.000011158333109051455,0.0000042172 537177975755,-0.0000065073568293883,-0.000012681543921644334,-0.0000026030968456 325354,-0.000012896824046038091,2.7767310939452727e-7,-7.741859917587135e-7,1.64 17632764387236e-7,-2.5143609150291013e-7,-0.000006684098025289131,-0.00001117376 4505656436,-0.000009685449185781181,-0.000015014666132628918,-0.0000022032122615 200933,-0.000009355964721180499,-1.9668235040626314e-7,-0.0000019861199689330533 ,-0.000008735361916478723,2.1953218265480245e-7,-0.000010307759112038184,-0.0000 09043864338309504,-7.931564027785498e-7,-0.00001973225880647078,0.00000756219924 36936125,-0.000012366611372272018,0.000009776677870831918,0.00000898778216651408 ,0.000007269413345056819,0.0000215316831599921,0.0000028081617529096548,0.000014 63560329284519,0.0000013555286386690568,-8.18370210708963e-7,0.00000397611256630 6256,-0.000005741392214986263,0.000006475459940702422,0.0000016396104456362082,0 .0000032634761737426743)
19
20 ,
21
22 new Array(0.000003079756197621464,-0.000007045533948257798,-0.000005584218797594 076,-0.000014535641639668029,-0.000009336939911008812,-0.000009002875231090002,- 0.000005781885192845948,0.00000253107532444119,-0.000002653517412909423,0.000005 2440332183323335,2.61081083863246e-7,-0.000004180499217909528,-0.000001123604306 485504,-0.00001392687681800453,-0.000013051283531240188,-0.000008770004569669254 ,-0.00002213554034824483,0.000006507052603410557,-0.000012553733540698886,0.0000 08663148946652655,0.0000043216405174462125,-0.000003365547172506922,0.0000096661 31518315524,-0.0000036936494325345848,0.000008714309842616785,0.0000117466779556 70748,0.00001345210421277443,0.000016736059478716925,0.000014740943697688635,0.0 000011494975069581415,0.0000037885874917265028,-0.000013101015611027833,-0.00000 28683189157163724,-0.000007050486146908952,0.000006106271939643193,0.00000702923 6712696729,0.000013492718608176801,0.000005168927600607276,0.0000072642469604033 98,-0.000009827103895077016,-0.00000253483312917524,-0.000016045227312133648,-0. 000009338813470094465,-0.000011414746950322296,-0.000013670570297108497,-0.00000 9242834494216368,-0.000013137173482391518,-0.000009129987120104488,-0.0000111717 97268616501,-0.0000058122036534768995,-0.000011200489097973332,-0.00000449141816 7162919,-0.00000646262924419716,-0.000006156059498607647,3.744167713648494e-7,-0 .000003603997356549371,-0.0000037651313959941035,9.045492106452002e-7,-0.0000114 86084076750558,-0.0000013693146456716931,-0.000005032851731812116,-0.00000780413 8476785738,0.000005861616500624223,-0.000010557558198343031,0.000001025069195748 074,-0.000010377891157986596,-0.00001071288625098532,-0.000007369986633420922,-0 .000011507268027344253,0.0000020538736862363294,-0.000008385878572880756,0.00000 9365067853650544,-0.000009505479283689056,0.000005552293714572443,-0.00000392943 8207705971,0.000001957044105438399,0.000007157846994232386,0.0000056181561376433 82,0.000008056893420871347,0.000004114352577744285,0.000004444902970135445,-0.00 00015129552366488497,0.000009714583939057775,0.0000034346257962170057,0.00001618 4803826035932,0.000013940394637756981,0.000017429176295991056,0.0000162159776664 339,0.000018516269847168587,0.000009985662472900003,0.00001675341081863735,-5.47 4975068864296e-7,0.000010761052180896513,-0.000010513853339944035,0.000006836903 139628703,-0.000015860308849369176,0.0000032462696708535077,-0.00001927302764670 4577,-0.0000022639590042672353,-0.0000182041221705731,-0.00000642911572867888,-0 .000009331621185992844,-0.000010752169146144297,-0.000006398724053724436,-0.0000 1092150341719389,-0.000013978446986584459,-0.0000019830717974400613,-0.000011518 278370203916,-7.679133773308422e-7,0.00000411232394981198,-0.0000156221267388900 74,0.00001020661602524342,-0.000023934420823934488,0.000003655438376881648,-0.00 0017996595488511957,0.000005628106464428129,-0.000014397246559383348,0.000023149 037588154897,-0.000012422369763953611,0.00003686188574647531,-0.0000051646748033 81786,0.000029579034162452444,-0.000004279142558516469,0.000011904862731171306,- 0.000011054169590352103,0.0000026817510843102355,-0.000007146421012294013,7.3001 19477804401e-7,0.00000716379463483463,-9.475870115238649e-7,0.000011135504792036 954,-0.0000028848432975792093,0.000004333846391091356,-0.00001217265071318252,0. 00000525720497535076,-0.000030126569981803186,0.000012700701518042479,-0.0000376 28265999956056,0.000014790118257224094,-0.00002364890133321751,0.000018574042769 614607,-0.000005623247034236556,0.00002481713454471901,-0.0000035716459478862816 ,0.000016272791981464252,-0.00001041365885612322,7.962548806972336e-7,-0.0000041 17006483284058,0.000002073728182949708,0.000012243942364875693,0.000011528453796 927352,0.000014823122910456732,0.00001140338645200245,0.000006756795755791245,0. 000006846646101621445,0.000009838297046371736,0.0000024178214061976178,0.0000193 38038327987306,-0.0000035010277770197717,0.000020548633983707987,-0.000007397225 54499167,0.000016951227735262364,-0.000011693926353473216,0.00001124812479247339 ,-0.000018294836991117336,4.6700102984686964e-7,-0.000020315797883085907,-0.0000 1102216265280731,-0.000019213801351725124,-0.000017865449990495108,-0.0000179307 00778379105,-0.00001534548937343061,-0.000010813826520461589,-0.0000036453557186 17793,-0.000004975350748281926,0.0000019148487808706705,-0.000009077783943212125 ,-0.000004406498646858381,-0.000008117423021758441,-0.000006159430995467119,0.00 00044337293729768135,-0.0000020885263438685797,0.00001081783830159111,-0.0000062 843064370099455,0.000009586233318259474,-0.000010778067007777281,0.0000132386994 66455728,-0.0000024827570541674504,0.000012394535588100553,0.0000083593868112075 14,-0.0000011964989425905515,0.000011864392945426516,-0.000006844144081696868,0. 00001212747156387195,0.000005946681085333694,0.000008978144251159392,0.000013611 196663987357,0.0000014777727983528166,0.000004516868557402631,-0.000001135800971 496792,-4.0124223232851364e-7,0.000004324659130361397,0.000007783763066981919,0. 0000074882691478705965,0.00001351374066871358,0.000005585980943578761,0.00001352 5607755582314,0.0000072519515015301295,0.00001596198126208037,0.0000113306332423 23529,0.00001667377546255011,0.000011497910236357711,0.00001142141263699159,0.00 001416644317941973,0.0000030732642244402086,0.000019874687495757826,-0.000009063 298421096988,0.000012172569768154062,-0.00001685972347331699,-0.0000065433537201 89771,-0.000007671710591239389,-0.00000897354129847372,0.0000036098872442380525, 0.000008662557775096502,-0.000004769496172229992,0.000016347627024515532,-0.0000 18694472601055168,-0.0000016639005480101332,-0.00001712615448923316,-0.000021529 813238885254,-0.00001112355494115036,-0.00001515701660537161,-0.0000124107391457 07339,0.000004771038675244199,-0.000005557539680012269,0.000004452776920516044,0 .00001637774403207004,-0.000011125454875582363,0.000028977285182918422,-0.000008 31189208838623,0.000017143711374956183,0.00001176083787868265,0.0000014372878922 586096,0.000018619317415868863,-4.095253984814917e-7,0.0000057142856348946225,0. 000003475568746580393,-0.0000069119478212087415,0.000007696536158618983,-0.00000 3389268840692239,0.000012544330274977256,0.000012063308531651273,0.0000075440393 629833125,0.00001954874096554704,-0.000004191128937236499,0.00000939492565521504 7,-0.000002214434289271594,-0.000004688718945544679,0.000007948830898385495,-0.0 00009118418347497936,0.0000011970444120379398,-0.0000056666431191843,-0.00002026 224865403492,-0.0000019875728867191356,-0.00002999846219609026,-0.00000394397011 4050899,-0.000012564681128424127,-0.000010138632205780596,0.00001746085581544321 ,-0.000013649312677443959,0.000027959269573329948,-0.000010523734999878798,0.000 012849625818489585,0.000001351437390439969,-3.670769785912853e-7,0.0000149730894 9183207,0.000002791178758343449,0.000012750263522320893,0.000013458100511343218, 4.066057215368346e-7,0.00002175646659452468,0.0000032445300348626915,0.000016274 08346394077,0.000014102012755756732,3.48547814610356e-7,0.000009687917554401793, 0.0000011480459534141119,-4.2791418763954425e-7,0.000019152239474351518,-6.34140 5196508276e-7,0.000018948061551782303,0.0000036513481518340996,-0.00000625315715 29689245,0.000009545680768496823,-0.000024813129130052403,0.00001665227864577900 6,-0.000018440034182276577,0.000017343440049444325,-3.587248897929385e-7,0.00001 0243666110909544,0.00000628847419648082,-2.8749840907948965e-7,-0.00000384063469 0277511,-0.000006959578513487941,-0.000013347347703529522,1.2497545753831218e-7, -0.000008933499884733465,0.000012038509339618031,0.000004157961939199595,0.00000 892525349627249,0.000014358175576489884,-0.0000017458401089243125,0.000015531888 493569568,0.0000011401114079490071,0.000013105558537063189,0.0000122832179840770 55,0.000013530539945350029,0.000011530215488164686,0.00001159277690021554,5.3504 90255295881e-7,0.0000063530819716106635,-6.013257234371849e-7,0.0000031688239232 607884,0.000008902071385819,-0.0000030289324968180154,0.0000104135970104835,-0.0 00009928397048497573,0.000004485893896344351,-0.000005377505658543669,-0.0000013 817983699482284,0.0000027258081445324933,-0.00001797814547899179,0.0000054275951 69749111,-0.00003357703462825157,0.00001153597349912161,-0.000016713764125597663 ,0.00001749700095388107,0.00001582923869136721,0.000018839591575670056,0.0000243 07311832671985,0.000028232167096575722,0.000012363442692731041,0.000033139000152 00488,4.921504341837135e-7,0.000008201181117328815,-0.000004780452854902251,-0.0 0002234796374978032,-3.537929842423182e-7,-0.000019479883121675812,0.00000353394 92114871973,0.0000019553631318558473,-0.000006310787284746766,0.0000048780952965 898905,-0.000016523783415323123,-0.000006488742656074464,-0.00000970436303759925 ,-0.000006401556220225757,0.0000040938898564490955,-0.0000037819918361492455,0.0 000036536346215143567,-0.000015109381820366252,-0.000009658116141508799,-0.00001 6028870959416963,-0.000012950125892530195,2.9602941253870085e-7,-0.0000048607880 671625026,-0.0000029371478831308195,-0.000002008118826779537,-0.0000143046345328 91214,0.000009825911547522992,0.000006691116141155362,0.00003514895070111379,0.0 0003057632056879811,0.00003202812513336539,0.0000256546882155817,0.0000053903063 41723772,0.00002182609387091361,0.000009715551641420461,0.000023998347387532704, 0.000029058137442916632,0.000014241700228012633,0.000018586209989734925,0.000014 010002814757172,0.0000015582974128847127,0.000022730857381247915,-4.405572724408 5574e-7,0.000007286446361831622,-0.000004155114311288344,-0.00001567324579809792 3,-0.0000013827599332216778,-0.000014323575669550337,0.000014420313164009713,-0. 000004594429810822476,0.00001533803515485488,-0.000003257871640016674,-0.0000015 057372593219043,-0.000002804571522574406,-0.000008264756615972146,-0.00000201134 2530749971,-1.9574802934130275e-7,-0.0000025387560071976623,0.000005554818017117 2135,-1.6860264295814886e-8,0.0000012650032203964656,0.000004872145836998243,-0. 0000017890718027047114,0.000006571066933247494,0.000007390759037662065,0.0000020 470258732530056,0.000013906128515372984,-0.000004494631411944283,5.9315325984243 83e-8,-0.000005363530362956226,-0.000019025612346013077,-9.746487705797335e-8,-0 .000022788828573538922,0.000005759361101809191,-0.000019057089957641438,0.000006 455238690250553,-0.000020634686734410934,1.0177009812650795e-7,-0.00001946551492 4377203,-0.000004779817118105711,-0.000005687471002602251,-0.0000019742819858947 77,0.000007814288437657524,6.800347023272479e-7,0.000006204283181432402,0.000002 2189678929862566,0.000003214903017578763,0.000011109933439001907,0.0000142645185 40585414,0.000020891659005428664,0.000024231410861830227,0.000021565774659393355 ,0.00002063306419586297,0.000018980705135618336,0.000019460489056655206,0.000016 109910575323738,0.00002946244967461098,0.000004959099442203296,0.000031635663617 635146,-0.000011636377166723832,0.000012494529073592275,-0.000017649961591814645 ,-0.000009775249054655433,-0.000009684803444542922,-0.000012299901754886378,-0.0 000045431584112520795,-0.000004680217443819856,-0.000009361619959236123,-0.00000 6417827080440475,-0.000009478884749114513,-0.000008635995982331224,-0.0000022102 64710811316,-0.0000013944970760348951,-0.0000027300702640786767,3.41947185233948 4e-7,-0.000005760077328886837,-0.000005887148290639743,0.000009123318704951089,- 0.0000018179079006586107,0.000034976685128640383,0.00000800656562205404,0.000043 15484329708852,0.0000026375134893896757,0.000026162653739447705,-0.0000097772881 41776808,0.000008337022336490918,-0.0000043383224692661315,0.0000080428790170117 28,0.000011266129149589688,0.000007552520855824696,0.000007821462531865109,-0.00 0010834794011316262,-0.0000071405156631954014,-0.000023741020413581282,0.0000010 096468940901104,-0.000008777444236329757,0.000024047909391811118,0.0000108448939 4997945,0.000021773150365334004,0.000009878775927063543,-0.000002468845650582807 ,0.0000019583242192311445,-0.000011829857612610795,0.000007180449301813496,0.000 0019898930077033583,0.00002007572038564831,0.000023562599380966276,0.00002249370 8456750028,0.00003725415081134997,0.000009227091140928678,0.00002510488775442354 4,-0.000004577635081659537,-0.0000057226006902055815,-0.000007426877800753573,-0 .000013954405403637793,-0.000007396818546112627,0.000010363718502048869,-0.00000 5682496066583553,0.000023153961592470296,0.000005215436885919189,-5.851776450072 066e-7,0.000008301271009258926,-0.00002839875378413126,-0.000008671786417835392, -0.00002114908602379728,-0.000016385081835323945,0.000010340518201701343,-0.0000 03332814912937465,0.00001631920167710632,-0.00000240609824686544,-0.000016839172 53103573,-0.000019458128008409403,-0.00004172520129941404,-0.0000279889518424170 1,-0.00002957127071567811,-0.00002257167943753302,-0.0000011277380735918996,-0.0 00006745275186403887,0.000029834796805516817,0.00001443145356461173,0.0000488942 3871645704,0.000019520353816915303,0.000028781312721548602,0.0000110173814391600 9,-0.000002304964709765045,0.000015570509276585653,0.000006559727353305789,0.000 02491160194040276,0.0000246861109189922,0.00002092513932439033,0.000005571321253 228234,0.000019767994672292843,-0.000017234433471458033,0.000029364162401179783, -0.000006860925623186631,0.00003287310028099455,0.000014419410035770852,0.000025 70765900600236,0.000020948997189407237,0.000014982444554334506,0.000011336225725 24473,0.000005069058261142345,-0.000007599034233862767,-1.9249199567639153e-7,-0 .00002135621070920024,4.192748974674032e-7,-0.00001811559559428133,0.00000520402 6820138097,-0.00000684716133037,0.000006793804459448438,-0.000007115300377336098 ,-9.464126833336195e-7,-0.000015396170056192204,-0.000005022252480557654,-0.0000 057560728237149306,0.00000310011228066287,0.00001830806468205992,0.0000056901626 52172148,0.000025002680558827706,-0.0000018066829170493293,0.0000168831429618876 43,-9.190588343699346e-7,0.00001677891305007506,0.000008744715159991756,0.000017 492679035058245,0.000009262767889595125,0.000009641324140829965,-0.0000079443179 85675298,0.0000026682307634473545,-0.000028819362341891974,-5.567349248281062e-9 ,-0.000027849970138049684,2.9275554425112205e-7,-0.000011288384484942071,8.63940 8122235182e-8,-0.000010010178812080994,-0.0000057664710766403005,-0.000018038146 663457155,-0.000005938334197708173,-0.000011676184840325732,0.000005387365945352 94,6.286371672103996e-7,0.000010601774192764424,0.00000795031610323349,0.0000068 78713065816555,0.000014448815818468574,0.0000053991193453839514,0.00001912121297 2095236,0.0000037922372939647175,0.00002377148666710127,0.000004110886493435828, 0.000028523567380034365,0.000009884578503260855,0.000025298351829405874,0.000009 547493391437456,0.000019423143385211006,0.0000016244050584646175,0.0000169859904 4175353,-0.0000035492291772243334,0.000010943429515464231,-0.0000043472005017974 88,0.0000019216581677028444,-0.000004650058144761715,-0.000010098739949171431,-0 .000013551755728258286,-0.00002283834692207165,-0.000026392148356535472,-0.00001 2812127351935487,-0.000015902620361885056,0.00001567458821227774,0.0000123088047 98522033,0.00002283371395606082,0.000024552044123993255,0.000011854270269395784, 0.00002660317659319844,0.000012907260497740936,0.00003121679401374422,0.00001518 5296433628537,0.00002326429785171058,-7.34506613753183e-7,0.00001232855720445513 7,-0.000023603226509294473,0.000014685990208818112,-0.00003268428554292768,0.000 009220393621944822,-0.00002234849307569675,-0.000007605170594615629,-0.000011407 089004933368,-0.000006624821708101081,-0.000009982724805013277,0.000012631094250 53699,0.000003306656026325072,0.00002181891250074841,0.000024524020773242228,0.0 00007929559615149628,0.000019206416254746728,-0.000012103923836548347,-0.0000024 10376964689931,-0.000014605987416871358,-0.000003715801540238317,-0.000006302369 911281858,0.000010128199392056558,-0.000007889429980423301,0.0000141671916935592 89,-0.00001256161522178445,0.0000057639072110760026,-0.000005861424597242149,-9. 619938055038801e-7,0.00000681865458318498,0.0000016880826478882227,0.00001154487 0176294353,0.0000037514641917368863,-2.56049020208593e-7,0.000001471470341130043 4,-0.000014694560377392918,0.000007349543466261821,-0.000010221549928246532,0.00 0018233196897199377,-7.090650342433946e-7,0.00002102341750287451,-0.000006131372 174422722,0.000020034074623254128,-0.000009446019248571247,0.0000197422741621267 05,0.0000019139167761750286,0.000014728439964528661,0.000014092046512814704,0.00 0003048159214813495,0.000020496132492553443,-0.000008900403372535948,0.000023662 334569962695,-0.000005791300736746052,0.000022625017663813196,0.0000075333286986 278836,0.000012899877219751943,-0.0000017856511931313435,-0.00000680937773722689 6,-0.000028199405278428458,-0.00001746432280924637,-0.00003172568540321663,-0.00 0006750207376171602,-0.00001866254024207592,-0.0000010079621688419138,-0.0000130 11737792112399,-0.00000956672738539055,-0.000004242810973664746,-0.0000021195946 82881143,0.000006584605671378085,0.00002223004776169546,0.000006579176442755852, 0.000033968506613746285,0.000009475802471570205,0.000025046378141269088,0.000017 056823708117008,0.000005184896053833654,0.000012699285434791818,-0.0000063068628 15108616,0.000008491949301969726,0.000004087344223080436,0.000018048402125714347 ,0.000011509853720781393,0.000021365476641221903,-0.000005565815172303701,0.0000 06844592917332193,-0.000022027259547030553,-0.000005569290806306526,-0.000021205 73481079191,-0.000002695209104786045,-0.00001900665483844932,4.4863107007131475e -8,-0.000016556557966396213,-0.000010590822967060376,-0.0000065892354541574605,- 0.000017760654372978024,-8.225159149333194e-7,-0.0000025858541903289733,0.000001 1124238881166093,0.000020903720724163577,0.00001814771349017974,0.00002748042606 9814712,0.00004084043393959291,0.0000177144720510114,0.00004253354563843459,0.00 0010023189133789856,0.000033290092687821016,0.0000067583277996163815,0.000030763 236281927675,-0.000003997994099336211,0.00001618833266547881,-0.0000148868475662 31154,-0.000012435123608156573,-0.00001306923968513729,-0.00002227741242677439,- 0.000013466869859257713,-0.000015753304978716187,-0.000023232454623212107,-0.000 01852498644439038,-0.00002162655619031284,-0.0000210459329537116,-0.000007508241 65152153,-0.000011541855201357976,0.000005184509518585401,-0.0000010159284329347 429,0.000017868627764983103,0.000005208628408581717,0.000021801406546728685,0.00 0004908810751658166,0.00000935355910769431,0.000002482380750734592,0.00000203746 98124214774,0.000012640602108149324,0.0000043602076402748935,0.00002184876939281 8213,-0.000003835069946944714,0.000009052029781742021,-0.000015977773728081957,- 0.00000437899689131882,-0.000015400755728478543,-0.0000011541671938175568,-0.000 007877672032918781,-8.166315268454127e-8,-0.000005477804279507836,-0.00000758038 36807608604,-0.000016252544810413383,-0.000015123989214771427,-0.000031259660318 02818,-0.000023901306121842936,-0.00002719650547078345,-0.00002844541631930042,- 0.000010009978723246604,-0.000019015275029232726,-0.000002046205736405682,3.0927 870398045343e-7,0.000004475987225305289,0.000018435192032484338,0.00001729377800 0748716,0.000025111336071859114,0.00002306950045749545,0.000019393164620851167,0 .000024574750568717718,0.000011862235623993911,0.00003010806358361151,0.00000874 0132216189522,0.000028634845875785686,0.000012442340448615141,0.0000200711128854 8913,0.000022071695639169775,0.00001786083885235712,0.000019058017642237246,0.00 0014229030057322234,-0.000005833061550220009,-0.0000042547835619188845,-0.000027 18412179092411,-0.000025061946871574037,-0.00003152936915284954,-0.0000327788802 6786968,-0.00003887666389346123,-0.000034648659493541345,-0.00005027401130064390 6,-0.00003677815038827248,-0.00004247226388542913,-0.00002903110726037994,-0.000 020898798538837582,-0.000010089145689562429,-0.000010234728506475221,0.000006811 966159148142,-0.000005313822384778177,0.0000156254736793926,0.000009165262781607 453,0.00002019751991610974,0.00002104634950228501,0.000026244979380862787,0.0000 20415984181454405,0.00003609451960073784,0.000021696680050808936,0.0000403553967 771586,0.00002973491973534692,0.00002806495649565477,0.000031540897907689214,0.0 00004485058980208123,0.000023197349946713075,-0.00001706145121715963,0.000012635 712664632592,-0.0000292308959615184,0.0000058418190747033805,-0.0000300730916933 38938,-1.1923079057396535e-7,-0.00002137258525181096,-0.000009712542123452295,-0 .000012220786629768554,-0.000016407961084041744,-0.000012456388503778726,-0.0000 15059623365232255,-0.000008678027370478958,-0.000009216743819706608,0.0000199287 00567106716,0.000004287425326765515,0.00004467799226404168,0.0000201618713617790 5,0.000024435452360194176,0.000019308243281557225,-0.000007724876013526227,0.000 009188834155793302,-0.0000019114108908979688,0.000012105027053621598,0.000020556 29374808632,0.000020270883396733552,0.000018115131751983427,0.000011637602256087 12,-0.00001510960100858938,-0.000021670934074791148,-0.00005311196582624689,-0.0 0005914847133681178,-0.00005459808380692266,-0.00006084770575398579,-0.000027462 207071948797,-0.00003233471579733305,-0.000024315484552062117,-0.000018734393961 49479,-0.00003443852983764373,-0.00001817194242903497,-0.000014029920748725999,- 0.000009114837666857056,0.000012373760910122655,-0.000003239905254304176,0.00001 0735915566328913,-5.519689239008585e-8,-0.0000018883721395468456,0.0000031132165 0769969,-0.0000017775488458937616,-0.000006557762844749959,0.0000151791209646034 99,-0.00000455604003946064,0.000022281594283413142,0.000017691370885586366,-0.00 00038258062886598054,0.000012033361599605996,-0.000019834642444038764,-0.0000100 00385373132303,0.000010684007975214627,0.000009171661986329127,0.000045177199353 92961,0.00004714382521342486,0.0000477431713079568,0.00005181042797630653,0.0000 26211499061901122,0.00002550805947976187,0.000003884897068928694,0.0000066230668 3807401,0.000017071641195798293,0.00003120501423836686,0.00004284991882741451,0. 00006512828258564696,0.000018203174477093853,0.00004200913826934993,-0.000014842 201380815823,0.000003909772658516886,0.000008061370863288175,0.00002196376226493 1574,0.00003848099004244432,0.00005715851148124784,0.000043984284275211394,0.000 06707866123178974,0.000052957908337702975,0.00006693915202049538,0.0000496159264 00292665,0.00005375961336540058,0.0000309937859128695,0.00003500019374769181,0.0 00029505476049962454,0.000029334600185393356,0.000023507789592258632,0.000014650 66452510655,-1.0310985487649305e-7,-0.000006374973509082338,-0.00000867575909069 2736,-0.000009088520528166555,-0.000021084319087094627,-0.000024063272576313466, -0.0000631984366918914,-0.0000610212046012748,-0.00009105104982154444,-0.0000752 8847345383838,-0.00008082981366897002,-0.00007128059951355681,-0.000073387360316 70123,-0.00008348179107997566,-0.00009302627586293966,-0.00010063370427815244,-0 .00010311997175449505,-0.00009475899423705414,-0.00006107790977694094,-0.0000571 0756522603333,-0.0000045567167035187595,-0.000016807351130410098,-0.000008728594 366402831,-0.000024047727492870763,-0.000054534481023438275,-0.00006562787166330 963,-0.00006661251245532185,-0.0000764136275392957,-0.00004220175833324902,-0.00 005006900755688548,-0.000025705265215947293,-0.000036733610613737255,-0.00002846 791539923288,-0.0000510317986481823,-0.000025806351914070547,-0.0000495201275043 6552,0.000005754276116931578,-0.0000016414161336797406,0.0000425573016400449,0.0 0004579619053401984,0.00004338672079029493,0.000038616690289927647,0.00002901865 4458923265,0.000013091679647914134,0.00003744493369595148,0.00001991765020648017 5,0.000044882068323204294,0.00003138934698654339,0.00002662312181200832,0.000016 957039406406693,0.000012313065781199839,0.000002333392103537335,0.00001934301690 198481,0.0000014684613915960654,0.000014003498108650092,-0.000012435083590389695 ,-0.00001898372829600703,-0.000038960213714744896,-0.00003305000063846819,-0.000 03180839848937467,-0.000003220078497179202,0.000009098755072045606,0.00001692907 972028479,0.00001644175426918082,-0.0000025018243832164444,-0.000015483534298255 108,-0.00001627800338610541,-0.000018092352547682822,-0.000013463391951518133,0. 0000019396563857299043,-0.00003174218363710679,-0.0000160226827574661,-0.0000545 3410267364234,-0.00004583518239087425,-0.000040986185922520235,-0.00003565602310 1182655,-0.00001567927210999187,-0.000013575969205703586,-0.00001865458580141421 4,-0.000008182525562006049,-0.000031149891583481804,0.000004068513590027578,-0.0 00022341226213029586,0.000019159466319251806,-0.00001293922196055064,0.000003855 884187942138,-0.00003387294782442041,-0.00002583240348030813,-0.0000579616134928 07373,-0.000027385123757994734,-0.000033527012419654056,0.0000016514985645699198 ,0.00003071745595661923,0.000041599003452574834,0.00007069997809594497,0.0000718 6799484770745,0.00005709023025701754,0.00006439198477892205,0.000029486905987141 654,0.000029499340598704293,0.0000209078880288871,0.000017297805243288167,0.0000 13292264156916644,0.000027950874937232584,-0.0000013293877145770239,0.0000191512 08107359707,-0.000006482500339188846,-0.0000067296255110704806,-0.00000769724192 6507559,-0.000014276416550274007,0.0000016702936136425706,0.00001517243617854546 8,0.00004288800846552476,0.00006377120007527992,0.00006793632928747684,0.0000713 2426253519952,0.00002048872920568101,0.000012990089089726098,-0.0000487092365801 80004,-0.000047732733946759254,-0.00007167227886384353,-0.00006812359788455069,- 0.000064849853515625,-0.00008061769040068612,-0.00006814341759309173,-0.00010230 079351458699,-0.00008719259494682774,-0.0001180777617264539,-0.00008941548003349 453,-0.00011921609257115051,-0.00003779408143600449,-0.00008811964653432369,0.00 0030435225198743865,-0.000025285318770329468,0.00004108916618861258,0.0000144336 21799980756,0.00001024217635858804,-0.000005194896857574349,0.000005180342213861 877,-0.000034165761462645605,0.000023372396753984503,-0.000010869540346902795,0. 00002539250453992281,0.00003357906825840473,0.000018433291188557632,0.0000306255 5697397329,0.000026741767214844003,-7.219643407552212e-7,0.00003656093031167984, -0.000001136163632509124,0.00003117337473668158,0.000021541796741075814,0.000029 3058437819127,0.000043496882426552474,0.000037782541767228395,0.0000713938570697 7919,0.0000416023212892469,0.00009288021101383492,0.00005254682037048042,0.00009 893468813970685,0.00006880204455228522,0.00010826986544998363,0.0000592799042351 5439,0.00011457254731794819,0.00005459919702843763,0.00010707223555073142,0.0000 94101473223418,0.00010680824925657362,0.00011209934746148065,0.00010920516069745 645,0.000056838165619410574,0.00008033691119635478,-0.0000068494009610731155,0.0 00025022674890351482,-0.00002701147059269715,-0.000019174229237250984,-0.0000358 6516322684474,-0.00004372096373117529,-0.0000652634262223728,-0.0000754293578211 2181,-0.00009048141509993002,-0.00010400706378277391,-0.00006278631190070882,-0. 00007421393820550293,0.0000025940585146599915,-0.000008294062354252674,0.0000325 960099871736,0.000008096650162769947,0.00003069816739298403,-0.00000374994988305 84344,0.000056778833823045716,0.000025616709535825066,0.00007991064921952784,0.0 0004987000284017995,0.000045740198402199894,0.000019337981939315796,0.0000045446 84998109005,-0.000008798326234682463,0.000008757365321798716,-0.0000021096132059 028605,0.00001856036215031054,0.000004826958502235357,0.000005461828550323844,0. 000007710723366471939,0.000010949572242680006,0.000018963972252095118,0.00004450 4369725473225,0.00002303562177985441,0.00004023867586511187,0.000010020921763498 336,-0.000025972738512791693,-0.00001586198777658865,-0.00007700323476456106,-0. 00004665309825213626,-0.000055274140322580934,-0.000052602150390157476,-0.000006 1497439673985355,-0.00001668721961323172,0.000008728478860575706,0.0000133300218 29460748,-0.0000029871407605241984,-0.000004125208306504646,-0.00000262936396211 44393,-0.00002612005664559547,0.0000065824074226839,-0.000017083671991713345,-0. 0000046906184252293315,-0.00001556396091473289,-0.00002643541301949881,-0.000032 81334284110926,-0.000039624956116313115,-0.00004113918112125248,-0.0000718778028 3857137,-0.00006438163109123707,-0.0001236143143614754,-0.00011173521488672122,- 0.00012688638526014984,-0.00011649612861219794,-0.00006469413347076625,-0.000059 87553595332429,-0.000014351888239616528,-0.000007210273906821385,-0.000016002846 678020433,0.000014015030501468573,-0.000009058734576683491,0.0000346393062500283 1,0.000044094260374549776,0.00006039829531800933,0.00007179840031312779,0.000062 37921479623765,0.000030082985176704824,0.000039645121432840824,-0.00000104394348 45466167,0.000020206653061904944,0.00001813493508961983,-8.59565261634998e-7,0.0 00021399320758064277,-0.000031689640309195966,0.000003812285285675898,-0.0000319 8267222614959,0.00001682609217823483,0.0000013957578630652279,0.0000415434478782 1174,0.000013956621842226014,0.00004097841519978829,9.028317435877398e-7,0.00001 3097586816002149,-0.000017888380170916207,-0.000026429661375004798,-0.0000428224 84829230234,-0.00003054921762668528,-0.00004142971010878682,-0.00000153198652697 0286,-0.00001933212115545757,-0.0000132069308165228,-0.000039306974940700457,-0. 00004899566920357756,-0.000061745238781441,-0.000037255726056173444,-0.000020425 879483809695,-0.000015082103345775977,0.000013367198334890418,-0.000030932817026 04145,-0.000012532468645076733,-0.000054078089306131005,-0.00003815422678599134, -0.00006230008148122579,-0.000032039140933193266,-0.000044264997995924205,9.8339 66032601893e-7,-5.77034370508045e-7,0.000045075670641381294,0.000020452816897886 805,0.00004831075420952402,0.000016518073607585393,0.00002406950807198882,0.0000 28525224479380995,0.000029365415684878826,0.00002138098716386594,0.0000150898122 22868204,-0.00003114295031991787,-0.00005498417158378288,-0.00005744315421907231 ,-0.00008467251609545201,-0.000022096755856182426,-0.000038503785617649555,0.000 013987733836984262,-0.000011090352927567437,0.000002372082235524431,-0.000031918 280001264066,-0.000031449904781766236,-0.000032338593882741407,-0.00003993864811 491221,-0.000005635174602502957,-0.00003002981611643918,-0.000012256874470040202 ,-0.00002950612542917952,-0.000029784107027808204,-0.000014617784472648054,0.000 01263211561308708,0.00002073836003546603,0.000060902915720362216,0.0000268529147 4335827,0.00002972178117488511,0.000003865030521410517,-0.000011656133210635744, -0.0000019173003238392994,0.000016705547750461847,0.000012224107194924727,0.0000 58518213336355984,0.000023397415134240873,0.00006208814738783985,0.0000143346751 42890774,0.000048294361477019265,-0.000011518812243593857,0.00003706568531924859 ,-0.000009435871106688865,0.00004311736120143905,0.000036349370930111036,0.00005 881915785721503,0.0000780311384005472,0.00005478940511238761,0.00009043554018717 259,0.00005104908996145241,0.00008298666216433048,0.00006888940697535872,0.00006 298254447756335,0.00007044045923976228,0.000054575710237259045,0.000053540374210 57001,0.000060902479162905365,0.00005536368189495988,0.00004294863174436614,0.00 005029814929002896,0.000005725249138777144,0.000005086803867015988,-0.0000107003 21581680328,-0.00004252125654602423,-0.000021980682504363358,-0.0000580422565690 24175,-0.00005544697341974825,-0.000054441989050246775,-0.00008118953701341525,- 0.00004292158700991422,-0.00007777901191730052,-0.000035333177947904915,-0.00007 716101390542462,-0.00005428513395600021,-0.00008297056774608791,-0.0000670280642 225407,-0.00005144996976014227,-0.000014605345313611906,-0.00000779076071921736, 0.0000432292181358207,-0.00003144462971249595,0.000004673118382925168,-0.0000854 1214629076421,-0.00005519864134839736,-0.00006174968439154327,-0.000014400528016 267344,0.000012012095794489142,0.000047868241381365806,0.000030405124562093988,0 .00002368395507801324,0.000001922777300933376,-0.000011832757991214748,0.0000026 430798243382014,0.000012279679140192457,0.00003241767262807116,0.000024375991415 581666,0.00003544256105669774,-0.00002144496829714626,0.0000066679922383627854,- 0.00006405106250895187,-0.000002957086053356761,-0.00005756971222581342,0.000015 621615602867678,-0.00003508651934680529,0.00001469517155783251,-0.00004308757706 894539,-0.000010895128070842475,-0.0000762795825721696,-0.00001937178421940189,- 0.00009255228360416368,-0.000009577730452292599,-0.00007198793900897726,-0.00001 064251409843564,-0.00004143540354561992,-0.000017639989891904406,-0.000028664611 81838531,-0.000003194289547536755,-0.00001008950584946433,0.00002567749470472335 8,0.0000337935853167437,0.00002025209141720552,0.00004816519140149467,-0.0000301 3358946191147,0.000005368628990254365,-0.00005807228444609791,-0.000014198250937 624834,-0.000024669036065461114,0.00002980853787448723,0.00001305967180087464,0. 0000615404496784322,0.000003169276169501245,0.000039045036828611046,-0.000026213 239834760316,0.000006035425030859187,-0.000030444816729868762,-0.000012050156328 768935,-0.000019078106561210006,-0.000029675369660253637,-0.00003179919440299272 5,-0.000055997508752625436,-0.0000721602700650692,-0.00009207191760651767,-0.000 10938722698483616,-0.00013436700101010501,-0.00012641138164326549,-0.00016193154 44258973,-0.00012095387501176447,-0.00015179513138718903,-0.00009973258420359343 ,-0.00012022676673950627,-0.00008012935722945258,-0.0001016552560031414,-0.00005 4741190979257226,-0.00008083759166765958,-0.00000593823006056482,-0.000027226520 61493136,0.000044529537262860686,0.000031446641514776275,0.00007436021405737847, 0.00005673569467035122,0.00008370971045223996,0.000051376631745370105,0.00005631 861131405458,0.0000279171799775213,-0.0000013176068023312837,0.00000148613980854 86144,-0.000035487813875079155,-0.00001107328716898337,-0.000028035083232680336, -0.000009004481398733333,-0.000013428236343315803,0.000007951015504659154,-0.000 012215399692649953,0.000026802747015608475,-0.000010574289262876846,0.0000173737 0803311933,0.000018003340301220305,5.736237653763965e-7,0.00006992507405811921,0 .00002058242716884706,0.00009748925367603078,0.000049604932428337634,0.000077572 25830573589,0.0000480062335554976,0.000046539622417185456,0.00004074132084497250 6,0.0000359866680810228,0.000044753498514182866,0.00003149465555907227,0.0000340 2285074116662,0.000016869544197106734,0.000012217524272273295,0.0000144168943734 25748,0.00001694033562671393,0.00002633786789374426,0.00003387614560779184,-0.00 00031246981961885467,0.000006746628059772775,-0.00006808514444855973,-0.00004248 36362071801,-0.00007945387915242463,-0.000040809682104736567,-0.0000413162342738 3602,-0.000006584262791875517,-0.000027186131774215028,0.000009418003173777834,- 0.00001379865534545388,0.000029131773771950975,0.00003061928873648867,0.00005724 620132241398,0.00004902021464658901,0.0000633458184893243,0.00001430543215974466 9,0.000058562731283018366,-0.000027793557819677517,0.000046056477003730834,-0.00 0024998287699418142,0.00002725913145695813,0.000025247172743547708,0.00003989202 3778520525,0.00004112611713935621,0.000050569287850521505,-0.0000145351723404019 14,0.0000067802211560774595,-0.00004382204497233033,-0.000026799832994583994,-0. 000016543841411476023,-0.0000244089933403302,-0.000021907017071498558,-0.0000531 4009467838332,-0.00005711687481380068,-0.00007939628267195076,-0.000062877392338 12317,-0.00005297015013638884,-0.000055925644119270146,-0.0000416878356190864,-0 .000044781805627280846,-0.00005816018165205605,-0.000014692141121486202,-0.00003 8615464291069657,0.000015342511687777005,-0.0000019092221918981522,0.00004032142 896903679,0.000013651363587996457,0.0000466067940578796,0.000017852991732070222, 1.3027107570451335e-7,0.0000011722290764737409,-0.0000434878165833652,-0.0000218 12964405398816,0.000001429963049304206,0.00001604595672688447,0.0000882757303770 6316,0.00010605066927382722,0.00011196303967153654,0.00014238811854738742,0.0000 7170428580138832,0.00009203513036482036,0.00005030815373174846,0.000053205138101 47531,0.00006844555173302069,0.00007133291364880279,0.00004482951044337824,0.000 057309403928229585,-0.00004976908894605003,-0.000016540670912945643,-0.000123684 92025416344,-0.00006704733095830306,-0.00012687843991443515,-0.00008667777001392 096,-0.00010667263995856047,-0.00010933732846751809,-0.0000810641358839348,-0.00 00843552261358127,-0.00003626633406383917,-0.000011461594112915918,-0.0000038000 34392043017,0.000010872363418457098,-0.00001115972099796636,-0.00002482012314430 9036,-0.000016356738342437893,-0.00003160407504765317,0.000021647872927132994,0. 00000160533340931579,0.000044044452806701884,0.000006865130671940278,-0.00002127 6600818964653,-0.00004543062095763162,-0.0001009973420877941,-0.0001095084589906 0369,-0.00008220582094509155,-0.00012713325850199908,-0.000009265588232665323,-0 .00009223717643180862,0.00001942663948284462,-0.00004278800042811781,0.000014971 864402468782,-0.000015608507965225726,0.000012556516594486311,-0.000019972958398 28439,-0.00001677776890574023,-0.00004871925193583593,-0.00008439271186944097,-0 .00009608511754777282,-0.00012681048247031868,-0.00012660387437790632,-0.0000949 1848322795704,-0.00009672807937022299,-0.000038584679714404047,-0.00004915422323 392704,-0.000011407275451347232,-0.00003619683411670849,0.000020544717699522153, -0.000004877408628090052,0.000057512861530994996,0.00005082879215478897,0.000023 422402591677383,0.00003235676922486164,-0.00007216427911771461,-0.00004412558337 2078836,-0.00013907243555877358,-0.00007763699250062928,-0.0001589777530170977,- 0.00009526571375317872,-0.0001702349109109491,-0.00015039237041492015,-0.0001819 9183978140354,-0.00018227424880024046,-0.0001656827371334657,-0.0001417865860275 9242,-0.00009661682270234451,-0.00006982849299674854,-0.000024176955776056275,-0 .000023143686121329665,-0.000021666413886123337,-0.000022818921934231184,-0.0000 4684945088229142,-0.00003441434455453418,-0.000010103430213348474,0.000003203291 2713475525,0.00006675547047052532,0.00008603621245129034,0.00010718784324126318, 0.0001322274620179087,0.00010200230462942272,0.00010818237205967307,0.0000960612 9606254399,0.00009692880848888308,0.00011241745960433036,0.00014431362797040492, 0.00011704491771524772,0.00014793468290008605,0.00008428628643741831,0.000059725 869505200535,0.00006823895819252357,0.00001569482628838159,0.0001179823011625558 1,0.00008751583663979545,0.00017217642744071782,0.00014552491484209895,0.0001464 2594032920897,0.00009886995394481346,0.0000820255299913697,0.0000389802225981839 ,0.0000945738865993917,0.00006543559720739722,0.00017948643653653562,0.000131759 95263736695,0.000207908742595464,0.00013581017265096307,0.0001348408404737711,0. 00007278104749275371,0.000048818663344718516,0.000009134634638030548,0.000017496 26790115144,-0.000027329901058692485,0.000009467278687225189,-0.0000575728699914 17974,-0.000054372627346310765,-0.00011624617764027789,-0.00017348630353808403,- 0.00019637461809907109,-0.00020912816398777068,-0.00020959861285518855,-0.000091 73363650916144,-0.00011212546814931557,0.000036042500141775236,2.328306436538696 3e-8,0.00005594479080173187,0.00004100982187082991,0.000023640137442271225,0.000 02810826299537439,0.000004636331141227856,0.0000017502184164186474,-0.0000016116 446204250678,-0.000008960413651948329,-0.00001896120375022292,-0.000017643205865 169875,-0.00007192717748694122,-0.00006774204666726291,-0.00011022477701772004,- 0.0001006519451038912,-0.00004939598875353113,-0.000025064480723813176,0.0000695 0402894290164,0.00008736859308555722,0.00013112671149428934,0.000117262556159403 18,0.00009332889749202877,0.00006975586438784376,-0.000007504016139137093,-0.000 0017577287962922128,-0.0000711821558070369,-0.00003985501825809479,-0.0000087043 00853423774,0.00001219889509229688,0.00010966281115543097,0.00010688483598642051 ,0.0001459826744394377,0.00014799759082961828,0.00012049888755427673,0.000153198 00877477974,0.0001315882836934179,0.0001693947851890698,0.00013466438394971192,0 .00013570465671364218,0.00003885695696226321,0.000019557321138563566,-0.00007597 58404456079,-0.00006659913924522698,-0.00009499234874965623,-0.00006112013215897 605,-0.00007698169065406546,-0.000060936577938264236,-0.00006680353544652462,-0. 00007666349119972438,0.000022440679458668455,0.000004864556558459299,0.000125512 39342428744,0.00011123484728159383,0.00006374843360390514,0.0000694217742420733, -0.00006522072362713516,-0.000034445423807483166,-0.000056505523389205337,-0.000 03903900505974889,0.000005489092927746242,-0.000015380668628495187,-0.0000130675 90771242976,-0.000028134491003584117,-0.000019961922589573078,0.0000111160088636 0975,0.00003626819307100959,0.00007595207716803998,0.00005631609747069888,0.0000 51114606321789324,0.000038434911402873695,4.5267279347172007e-7,0.00005972612052 5738224,0.00003945884600398131,0.00009166861127596349,0.00010432150884298608,0.0 0008447789878118783,0.00009268712892662734,0.00006632134318351746,0.000032154312 066268176,0.00006209970160853118,3.4997174225281924e-7,0.00007809824455762282,0. 0000330825278069824,0.00011409471335355192,0.00009687244892120361,0.000109922926 64013803,0.00010118685167981312,0.000043402149458415806,0.00003681848829728551,0 .00002333584961888846,0.00002146193219232373,0.00008825006807455793,0.0000887869 1733116284,0.00010468476102687418,0.00011617453128565103,0.000010868432582356036 ,0.00003768633177969605,-0.0000832886653370224,-0.00006463406316470355,-0.000095 75632429914549,-0.00009790592594072223,-0.00008047091250773519,-0.00008127279579 639435,-0.00011930312030017376,-0.00010817989095812663,-0.00019761906878557056,- 0.00018406282470095903,-0.00025037425803020597,-0.00022929937404114753,-0.000281 75031184218824,-0.00026143481954932213,-0.00030704058008268476,-0.00032354859285 987914,-0.00028720812406390905,-0.0003314026980660856,-0.00023685301130171865,-0 .0002623709151521325,-0.00020041537936776876,-0.00023299336316995323,-0.00014768 19161325693,-0.0002481380943208933,-0.00007395316060865298,-0.000199330243049189 45,-0.00001707856063148938,-0.00007966350676724687,0.00003398122498765588,0.0000 10577972716419026,0.00004213210195302963,-0.000016719475752324797,-0.00003703224 865603261,-0.00011134900705656037,-0.00007891521818237379,-0.0001067439879989251 5,-0.000002282263267261442,0.000002869634954549838,0.00004155691203777678,0.0000 3237165219616145,-0.000040039492887444794,-0.00005632107422570698,-0.00011622216 698015109,-0.00010217920498689637,-0.000052099829190410674,-0.000006442031008191 407,0.00011611672380240634,0.00016018351016100496,0.0002177420974476263,0.000245 85469509474933,0.00016871566185727715,0.0002069331967504695,0.000097233358246739 95,0.00016305266763083637,0.00010130155715160072,0.0001628038880880922,0.0000990 5041952151805,0.00012441941362340003,0.00005324347148416564,0.000066610773501452 06,0.000056269716878887266,0.00009563506318954751,0.0001445938105462119,0.000204 67364811338484,0.00022031216940376908,0.00027645783848129213,0.00018519532750360 668,0.00023159629199653864,0.00010800627205753699,0.0001519494253443554,0.000120 27759657939896,0.00017234316328540444,0.00015244039241224527,0.00021870264026802 033,0.000060043548728572205,0.00012630523997358978,-0.00008305638039018959,-0.00 003651895167422481,-0.00011915012873942032,-0.0000871685188030824,-0.00004178694 8713706806,-0.000004809240635950118,0.00004110886584385298,0.000093799018941354, 0.00001830440669436939,0.00009007014887174591,-0.00008894543861970305,-0.0000083 88842616113834,-0.00012280653754714876,-0.000059225996665190905,-0.0000468625657 9589099,-0.000004007886218460044,0.000010301017027813941,0.00006117883458500728, -0.000004959066245646682,0.00006308007868938148,-0.00005623497781925835,0.000001 6901053641049657,-0.00012405106099322438,-0.00009191863500745967,-0.000180241811 90412492,-0.0001593408960616216,-0.00019957635959144682,-0.00017160963034257293, -0.00017814745660871267,-0.00013509401469491422,-0.00011708180682035163,-0.00006 468065839726478,-0.00006644428503932431,-0.000022329521016217768,-0.000058721092 50049107,-0.000030379385862033814,-0.00001940926449606195,-9.50950834521791e-7,0 .00007214264041977003,0.00007613632624270394,0.00011203531175851822,0.0000966960 7970863581,0.00008747195533942431,0.00006836865213699639,0.000107871564978268,0. 00009087040234589949,0.00019871782569680363,0.00016566846170462668,0.00027179048 62947762,0.0002240440808236599,0.00026444465038366616,0.00022366063785739243,0.0 002072927018161863,0.00016754464013502002,0.00017488887533545494,0.0001174586504 9306303,0.00018788142187986523,0.00012361693370621651,0.00018892365915235132,0.0 001353108964394778,0.00012977307778783143,0.00008753158908803016,0.0000370881462 0040357,0.000010673960787244141,-0.00001981318746402394,-0.00003052715692319907, 0.0000012943901310791261,-0.000012440191312634852,0.00007004603685345501,0.00005 3042742365505546,0.00011080254625994712,0.00010929033305728808,0.000105384511698 50305,0.00010385063797002658,0.0001238908589584753,0.00009580529876984656,0.0001 9793650426436216,0.00016720773419365287,0.00024815084179863334,0.000244694354478 2698,0.00019588206487242132,0.00019575741316657513,0.00005647114085149951,0.0000 33640259061940014,-0.00008082586282398552,-0.00010941842629108578,-0.00012342522 6774998,-0.0001422984933014959,-0.00009261527156922966,-0.00010913527512457222,- 0.00009859810234047472,-0.00011477481893962249,-0.00013260109699331224,-0.000142 56648137234151,-0.00009395734377903864,-0.00008956607052823529,-0.00000325765245 1793547,0.000024219256374635734,0.00006157296593300998,0.00009329195017926395,0. 0000909910086193122,0.00009424033487448469,0.00007284159801201895,0.000068315115 64087123,0.00001874280314950738,0.00005567546031670645,0.000005360243903851369,0 .00006956124707357958,0.00004115957926842384,0.00008636829443275928,0.0000672085 4435116053,0.00010175880743190646,0.000058497971622273326,0.00010565094271441922 ,-0.00000532744888914749,0.00003650475264294073,-0.00008412737224716693,-0.00005 737183892051689,-0.00004074765456607565,-0.000015765856005600654,0.0001207062450 7032335,0.00012950683594681323,0.0002018612576648593,0.0001815898867789656,0.000 1366319484077394,0.00012036338011967018,0.00008128847548505291,0.000085335581388 79016,0.00012598736793734133,0.00011848862050101161,0.0001826434163376689,0.0001 5625306696165353,0.00019109569257125258,0.00017093791393563151,0.000204206095077 09742,0.00018747098511084914,0.00021713862952310592,0.00019607768626883626,0.000 15462526062037796,0.00015112361870706081,0.00005944148142589256,0.00007137679494 917393,0.00002383520950388629,0.00001862557473941706,-0.0000068000390456290916,- 0.000017121023120125756,-0.00010218597890343517,-0.00007586612628074363,-0.00017 44521432556212,-0.0001242063590325415,-0.0001295977272093296,-0.0001048371632350 6087,-0.00002151472472178284,-0.000034661545214476064,0.00004824878487852402,0.0 00019321976651553996,0.000060638627473963425,0.000033946442272281274,0.000049855 512770591304,0.00003052474494324997,0.00003425036265980452,0.0000197220106201712 04,0.00003538441160344519,0.00002866454451577738,0.00006024901085766032,0.000071 92634075181559,0.00005440136737888679,0.00007213866047095507,0.00001919904389069 4156,0.000010913217920460738,0.000045549073547590524,0.000012097194485249929,0.0 0010095175093738362,0.00006870793731650338,0.00007156033825594932,0.000038354362 91410588,0.000020153316654614173,-0.000019508930563461035,0.0000535928484168835, 0.00003740128158824518,0.00010149527952307835,0.00011497524246806279,0.000083905 50647163764,0.0000843971865833737,0.00003986573210568167,0.000023354001314146444 ,0.000007602353434776887,0.000020408371710800566,-0.000010802616088767536,0.0000 26732461265055463,-0.000005622944627248216,0.0000034467293517082,0.0000308746784 86725315,0.000010173034752369858,0.00007900789205450565,0.0000685180420987308,0. 00007322894089156762,0.00007221940177259967,-0.000027310783480061218,-0.00004468 2725274469703,-0.0001466236572014168,-0.00017769132682587951,-0.0001849088585004 2105,-0.00021317791834007949,-0.00014575586828868836,-0.00016396366117987782,-0. 00008703183266334236,-0.000096126452262979,-0.00003868097337544896,-0.0000615423 5597932711,0.0000013577704294220894,-0.00006000530629535206,0.000037194851756794 38,-0.000029292279577930458,0.00005176669219508767,0.000037953537685098127,0.000 04797007568413392,0.0000610950737609528,0.00007513132004532963,0.000035335040593 054146,0.00014191074296832085,0.000057879464293364435,0.00018908843048848212,0.0 001475651515647769,0.00020764136570505798,0.00022060774790588766,0.0002539044944 5694685,0.0002503087744116783,0.00030238457839004695,0.0002672707778401673,0.000 2528578625060618,0.000237257219851017,0.00013433310959953815,0.00013784827024210 244,0.00008091441122815013,0.000059937723563052714,0.00008225104829762131,0.0000 5401169983088039,0.00003974448191002011,0.00004953946336172521,-0.00001010763662 6344174,0.00001073527801054297,-0.000020950206817360595,-0.00003656994522316381, -0.00005993116428726353,-0.0000808492986834608,-0.00011625375918811187,-0.000094 4273269851692,-0.00010681073763407767,-0.00007551605085609481,-0.000075862990343 01192,-0.00009075189882423729,-0.00008544810407329351,-0.00012747022265102714,-0 .00006861256406409666,-0.00007860875484766439,0.000004575975708576152,0.00004120 101948501542,0.00003772617856157012,0.0000848198906169273,-0.0000095777277238084 93,0.000012361198059807066,-0.00005892533590667881,-0.00005592560046352446,-0.00 008714772411622107,-0.00006369994662236422,-0.0001394686260027811,-0.00008136204 269248992,-0.00015996844740584493,-0.00010361209569964558,-0.0001112668760470114 6,-0.00008401738159591332,-0.00014169493806548417,-0.00011784620437538251,-0.000 2762835065368563,-0.00022666376025881618,-0.0002874225901905447,-0.0002262777124 9972284)
23
24 ,
25
26 new Array(-0.00014015505439601839,-0.00009424725431017578,-0.0000367982174793724 ,-0.000012330742720223498,-0.000009979183232644573,-0.000005074737146060215,0.00 0015334489944507368,0.000006053265224181814,0.000033470423659309745,0.0000294706 38764905743,0.00009303881961386651,0.00010694590309867635,0.00022122845984995365 ,0.00022976046602707356,0.00027943524764850736,0.00024943548487499356,0.00018163 1650775671,0.00012874089588876814,0.000033948716009035707,0.00001643829637032468 ,-0.000038822603528387845,-0.000005076801244285889,-0.000026619280106388032,-0.0 00004013060788565781,-0.000020743873392348178,-0.000060739057516912,-0.000092095 22977471352,-0.00015305288252420723,-0.0001557939249323681,-0.000169573584571480 75,-0.00011526542220963165,-0.00008990408241515979,-0.00003546544030541554,-0.00 0018380367691861466,0.000005372870873543434,0.000013720681636186782,0.0000055437 97669815831,0.00003979273242293857,-0.000014010610357217956,0.000058910089137498 29,-0.00001633692954783328,0.00006351392949000001,-0.000011691547115333378,0.000 035224747989559546,-0.00004958381759934127,-0.000023805565433576703,-0.000121631 00473117083,-0.00007665240264032036,-0.00016238178068306297,-0.00010357973224017 769,-0.00012000015703961253,-0.00009269107249565423,-0.000049141810450237244,-0. 00005715646693715826,-0.00004356173303676769,-0.00003632663720054552,-0.00001985 907510970719,0.0000020384477465995587,0.00012762073311023414,0.00011586706386879 086,0.00021797671797685325,0.00020374754967633635,0.00008666064240969718,0.00011 644592450466007,-0.00006568098615389317,-0.000046202490921132267,-0.000041370753 02423909,-0.00007593315240228549,0.000004579069354804233,-0.00002532761573093012 ,-0.00009905502520268783,-0.00007579676457680762,-0.00019283377332612872,-0.0001 7823997768573463,-0.00014772501890547574,-0.00019722098659258336,-0.000132163724 62920845,-0.000167879305081442,-0.00019680026161950082,-0.00015686158440075815,- 0.0002077507524518296,-0.00015023740706965327,-0.00017501234833616763,-0.0001341 5997091215104,-0.00017168966587632895,-0.00013525885879062116,-0.000151677391841 07631,-0.00012130104005336761,-0.00008563465962652117,-0.000041452833102084696,- 0.00007153890328481793,-0.000001365100615657866,-0.00008754107693675905,-0.00002 52203899435699,-0.00003187061520293355,-0.000009977433364838362,0.00002215737367 8055592,0.00003242286038585007,0.00003615911191445775,0.00009324029088020325,0.0 00014359744454850443,0.00007800778257660568,-0.000049274443881586194,-0.00005691 000842489302,-0.00007130674202926457,-0.00010760929581010714,-0.0000364531224477 10484,-0.000047757712309248745,0.000054562337027164176,0.000027955291443504393,0 .00009254179894924164,0.00002200369090132881,-0.00004265725874574855,-0.00010851 425759028643,-0.0001688027841737494,-0.00016441606567241251,-0.00021186693629715 592,-0.0001573815243318677,-0.00018332900071982294,-0.0001501880760770291,-0.000 10138592188013718,-0.00008154666284099221,-0.00013429764658212662,-0.00008883286 500349641,-0.0001400368637405336,-0.00010151389869861305,-0.00004361960600363090 6,-0.00004538596476777457,-0.000031638654036214575,-0.00003416767867747694,-0.00 006974972347961739,-0.00005143813177710399,-0.00010723905870690942,-0.0001257229 3053381145,-0.00002397704156464897,-0.00009767053415998816,0.0001157250226242467 8,0.00005432979014585726,0.00007883126090746373,0.0000620109640294686,0.00007341 729360632598,0.00004993831316824071,0.00011931547487620264,0.0000584132794756442 3,0.00005921594856772572,0.00001511409482191084,0.000033078180422307923,0.000019 489067199174315,0.000033935510145965964,-0.000011722012459358666,0.0000430402942 5838962,-0.000035746488720178604,0.00003718510197359137,-0.000058436104154679924 ,-0.00001174940280179726,-0.00013024899817537516,0.000020506238797679543,-0.0000 7963776442920789,0.00003176229074597359,-0.00005422571848612279,-0.0000263685342 3609864,-0.00014182373706717044,-0.000049795104132499546,-0.00017246516654267907 ,-0.00009185299859382212,-0.00017978546384256333,-0.00013231371121946722,-0.0001 6474576841574162,-0.0001400558976456523,-0.00015335241914726794,-0.0001470029092 160985,-0.00018156964506488293,-0.00014865070988889784,-0.0001718680141493678,-0 .00012142615742050111,-0.00014900251699145883,-0.00007435568841174245,-0.0001245 9667050279677,-0.00008725070802029222,-0.00011005691339960322,-0.000086267093138 30361,-0.00012864137534052134,-0.00004616122896550223,-0.0001554132904857397,-0. 00009952057007467374,-0.00021355791250243783,-0.0001459539489587769,-0.000232414 06597662717,-0.00013092698645778,-0.00017168368503917009,-0.00015152087144088,-0 .00015848565089982003,-0.0001564635313116014,-0.00018872391956392676,-0.00011087 577149737626,-0.00015771349717397243,-0.0000527798110852018,-0.00008749643166083 843,-0.000036134504625806585,-0.00004221020935801789,-0.00008243389311246574,-0. 00005874632915947586,-0.0001164921632152982,-0.00013457277964334935,-0.000148354 3310314417,-0.00019349232024978846,-0.00023352073912974447,-0.000230754376389086 25,-0.00028925627702847123,-0.00027289867284707725,-0.00029771780828014016,-0.00 03031028318218887,-0.0002913945645559579,-0.0003263660764787346,-0.0001589888706 8033218,-0.00020953141211066395,0.000021462499717017636,0.000016161218809429556, 0.00006929994560778141,0.00007043606456136331,0.000042957883124472573,-0.0000216 64078303729184,0.000008055478247115389,-0.00008845835691317916,0.000065828047809 19105,-0.000016302576113957912,0.00015406384773086756,0.00010176366777159274,0.0 0009414566011400893,0.0000354732692358084,0.00007631623884662986,-0.000012391613 381623756,0.00007941365765873343,0.0000648690911475569,0.00001397199412167538,0. 00010448538523633033,0.000029168595574446954,0.00008860438538249582,-0.000066095 86125705391,-0.00006593324360437691,-0.0002065992885036394,-0.000155209170770831 4,-0.00018771870236378163,-0.00007774525874992833,-0.00012997548037674278,-0.000 07887235551606864,-0.0000391396097256802,-0.000076210533734411,-0.00008767627150 51882,-0.0000996374583337456,-0.00014420422667171806,-0.0001080437286873348,0.00 0032678239222150296,0.00001941799564519897,0.00008381356747122481,0.000031045052 310219035,0.00006379729165928438,0.000027837693778565153,0.00006071649841032922, 0.00002810096339089796,-0.000023521930415881798,-0.000042365853005321696,0.00002 2846543288324028,-0.000005697456799680367,0.00003526679938659072,-0.000042564104 66041416,-0.0000757251400500536,-0.00013366315397433937,-0.00011955667287111282, -0.00011828384594991803,-0.00017747009405866265,-0.00016866534133441746,-0.00017 41003361530602,-0.00016113329911604524,-0.00020356231834739447,-0.00011542462743 81876,-0.00034802500158548355,-0.00014464158448390663,-0.0003696058120112866,-0. 00011752495629480109,-0.00038095645140856504,-0.00015291014278773218,-0.00038505 35140372813,-0.00025106975226663053,-0.00019905260705854744,-0.00026828600675798 95,0.0000021677478798665106,-0.0002483882417436689,0.0001757844293024391,-0.0002 012909681070596,0.00042002167901955545,-0.00011912333138752729,0.000566192960832 268,0.000036280973290558904,0.0006151891429908574,0.000419270625570789,0.0007446 972886100411,0.0009848694317042828,0.0007311853696592152,0.0014010249869897962,0 .000447156373411417,0.001734805991873145,0.000048851674364414066,0.0020867618732 15437,-0.00039686530362814665,0.002081888262182474,-0.0007315071416087449,0.0017 690588720142841,-0.0011235257843509316,0.0012453674571588635,-0.0015300138620659 71,0.0005929881590418518,-0.0015843822620809078,0.00013364609912969172,-0.001662 310678511858,-0.0004051764262840152,-0.0017336646560579538,-0.000820968765765428 5,-0.0017958111129701138,-0.0008799072238616645,-0.0023105277214199305,-0.000937 5008521601558,-0.0026750226970762014,-0.00045945230522193015,-0.0030114245600998 4,0.00032612154609523714,-0.0037594083696603775,0.000844741880428046,-0.00424871 7334121466,0.001590814790688455,-0.004585081245750189,0.0022387588396668434,-0.0 04611271433532238,0.002747831167653203,-0.004052754957228899,0.00329692405648529 53,-0.003427402814850211,0.0034304591827094555,-0.0024721764493733644,0.00359664 3218770623,-0.001401375513523817,0.003709446405991912,-0.0006295255152508616,0.0 034894035197794437,0.000059773577959276736,0.003397291759029031,0.00038508654688 484967,0.0033650926779955626,0.0005159653373993933,0.003734476398676634,0.000302 70108254626393,0.0044049047864973545,-0.0007104952237568796,0.004650060087442398 ,-0.0020415415056049824,0.004571670666337013,-0.003501879284158349,0.00416337046 7722416,-0.00479539530351758,0.0036168238148093224,-0.005974814295768738,0.00277 4751279503107,-0.007256212644279003,0.001289845909923315,-0.007495714817196131,0 .00010230821499135345,-0.006734591443091631,-0.0007406961522065103,-0.0058114556 5956831,-0.0016243165591731668,-0.00462182704359293,-0.002173752523958683,-0.003 6379247903823853,-0.002846694318577647,-0.002800004556775093,-0.0035107601433992 386,-0.0017736477311700583,-0.003419754095375538,-0.0011825866531580687,-0.00278 14360801130533,-0.0008575308602303267,-0.0018417327664792538,-0.0002217306027887 389,-0.000598331680521369,0.0005840326775796711,0.0008799363858997822,0.00109960 86057275534,0.0021491702646017075,0.001309904851950705,0.0030024773441255093,0.0 020673295948654413,0.003890095977112651,0.003430642420426011,0.00431709038093686 1,0.004580176901072264,0.003661549184471369,0.00580180948600173,0.00271712034009 39703,0.007631687913089991,0.0020412683952599764,0.009570170193910599,0.00118168 45508292317,0.010828486643731594,-0.00026033760514110327,0.010754303075373173,-0 .0022562353406101465,0.009428870864212513,-0.00440824031829834,0.007848612964153 29,-0.006088739261031151,0.006158956792205572,-0.007177523337304592,0.0037708010 05885005,-0.00812677014619112,0.0011826830450445414,-0.008794397115707397,-0.000 5873069749213755,-0.008513960987329483,-0.0010649776086211205,-0.007513529155403 376,-0.0007121718372218311,-0.007079744245857,-0.0002848606090992689,-0.00774886 4591121674,0.0008878273656591773,-0.008503956720232964,0.0035180600825697184,-0. 008739612065255642,0.006504544522613287,-0.009005337953567505,0.0089409453794360 16,-0.00949372723698616,0.0112361591309309,-0.009555941447615623,0.0133177991956 4724,-0.008684584870934486,0.014238296076655388,-0.007197503000497818,0.01384911 4067852497,-0.005386539734899998,0.012764517217874527,-0.003275955095887184,0.01 142237801104784,-0.0009684885153546929,0.010298161767423153,0.001699306420050561 4,0.009333365596830845,0.00391809456050396,0.008427868597209454,0.00449916161596 77505,0.008336156606674194,0.0039911759085953236,0.008962663821876049,0.00274521 15900814533,0.009156675077974796,0.00011548047768883407,0.008277789689600468,-0. 00374692864716053,0.006709702778607607,-0.008039569482207298,0.00510604539886117 ,-0.011835870333015919,0.0028857786674052477,-0.014525201171636581,-0.0005683306 371793151,-0.015833331272006035,-0.004239668603986502,-0.015388516709208488,-0.0 06670473609119654,-0.012940594926476479,-0.007479296065866947,-0.008850338868796 825,-0.007622465491294861,-0.004532064776867628,-0.0072344085201621056,-0.000834 4601956196129,-0.0057411170564591885,0.0022335564717650414,-0.003289198270067572 6,0.004121846053749323,0.0008299641194753349,0.005279644392430782,0.003736786311 492324,0.0047928947024047375,0.0013215296203270555,0.0010782248573377728,-0.0000 13336036317923572,-0.0011458239750936627,0.0031413149554282427,-0.00009486293856 753036,-0.0011687587248161435,-0.0041114469058811665,-0.017392633482813835,-0.01 5722988173365593,-0.034477073699235916,-0.027795441448688507,-0.0457157380878925 3,-0.036322321742773056,-0.05450707674026489,-0.0428432859480381,-0.062652535736 56082,-0.047500766813755035,-0.05975385755300522,-0.041561610996723175,-0.032463 666051626205,-0.013804420828819275,0.01827487349510193,0.03537826985120773,0.082 66807347536087,0.097795769572258,0.15217961370944977,0.1658187061548233,0.220645 81513404846,0.23351822793483734,0.28683555126190186,0.298629492521286,0.34690228 10459137,0.35707736015319824,0.3909241557121277,0.4009797275066376,0.41560578346 25244,0.4274917244911194,0.4247729480266571,0.43869462609291077,0.42078956961631 775,0.43660423159599304,0.4062882959842682,0.42413580417633057,0.386065095663070 7,0.4054466187953949,0.36459267139434814,0.38485953211784363,0.34501156210899353 ,0.3655964732170105,0.32996436953544617,0.34972891211509705,0.3208392858505249,0 .3385865390300751,0.31652164459228516,0.3319227993488312,0.31623896956443787,0.3 296041488647461,0.3198554813861847,0.3315024673938751,0.32542842626571655,0.3357 532024383545,0.3314844071865082,0.3411482274532318,0.33733949065208435,0.3469061 255455017,0.3416065573692322,0.3515341877937317,0.34387338161468506,0.3546553254 1275024,0.3446221947669983,0.3560125529766083,0.3444567918777466,0.3554940521717 0715,0.3434079587459564,0.3537798523902893,0.34088873863220215,0.350746393203735 35,0.3382267653942108,0.34693875908851624,0.3369491696357727,0.3435756266117096, 0.33618712425231934,0.3405708968639374,0.3352181017398834,0.337916761636734,0.33 44864845275879,0.3360024392604828,0.3347020149230957,0.33500710129737854,0.33559 557795524597,0.3345468044281006,0.3356438875198364,0.33335721492767334,0.3347622 4541664124,0.3313899040222168,0.33328360319137573,0.3290165960788727,0.330224305 39131165,0.325093150138855,0.3257369101047516,0.3194625973701477,0.3204400241374 9695,0.3130733370780945,0.3142836391925812,0.3061066269874573,0.3078814744949341 ,0.2988135516643524,0.30184903740882874,0.2917783856391907,0.2964288294315338,0. 2853374481201172,0.2916559875011444,0.27951890230178833,0.2874945402145386,0.274 495929479599,0.2842196524143219,0.27030646800994873,0.28150874376296997,0.266069 11420822144,0.27893924713134766,0.26149675250053406,0.2760584354400635,0.2568477 988243103,0.27202627062797546,0.2516094148159027,0.26775065064430237,0.246177673 33984375,0.26375263929367065,0.240883007645607,0.2583709955215454,0.234802484512 3291,0.2521602511405945,0.22854775190353394,0.24681374430656433,0.22324083745479 584,0.24198345839977264,0.21861906349658966,0.23773431777954102,0.21457253396511 078,0.23431454598903656,0.2108982503414154,0.23115283250808716,0.207310408353805 54,0.22855831682682037,0.20408383011817932,0.22669631242752075,0.200902044773101 8,0.22472351789474487,0.19726240634918213,0.22214411199092865,0.1932938694953918 5,0.2187594175338745,0.1889563798904419,0.21419735252857208,0.18386077880859375, 0.20839394629001617,0.17786459624767303,0.2017228603363037,0.1712917685508728,0. 19439153373241425,0.16436927020549774,0.18625706434249878,0.1569976955652237,0.1 7753638327121735,0.14927631616592407,0.16906782984733582,0.14145801961421967,0.1 6131752729415894,0.13372083008289337,0.15394407510757446,0.1261877566576004,0.14 700950682163239,0.11899550259113312,0.14078551530838013,0.11220572888851166,0.13 472723960876465,0.10562274605035782,0.1288258135318756,0.09939584136009216,0.123 34570288658142,0.09371078014373779,0.11740842461585999,0.08796590566635132,0.110 85216701030731,0.08191831409931183,0.10430294275283813,0.0758076012134552,0.0974 7365862131119,0.06946639716625214,0.09014172852039337,0.06285040080547333,0.0824 4733512401581,0.05589297041296959,0.0747237503528595,0.0486995093524456,0.067485 83912849426,0.04179181903600693,0.06031538173556328,0.034901268780231476,0.05304 372310638428,0.02791520208120346,0.04633215442299843,0.021517589688301086,0.0397 66762405633926,0.015343964099884033,0.03282143175601959,0.008753910660743713,0.0 258503258228302,0.0020630136132240295,0.01878304034471512,-0.004641629755496979, 0.011329539120197296,-0.01166088879108429,0.003378555178642273,-0.01919080317020 4163,-0.005097053945064545,-0.027227118611335754,-0.013719238340854645,-0.035376 80208683014,-0.022374339401721954,-0.043488986790180206,-0.03137648105621338,-0. 05187668651342392,-0.04053819179534912,-0.0604567751288414,-0.049499429762363434 ,-0.06884048134088516,-0.05849288031458855,-0.07712171971797943,-0.0677367001771 9269,-0.08554264158010483,-0.07693895697593689,-0.09397900104522705,-0.085967645 04909515,-0.10236804187297821,-0.09495700895786285,-0.11071249842643738,-0.10388 500988483429,-0.11891487240791321,-0.11278313398361206,-0.1271471083164215,-0.12 161137163639069,-0.1353926956653595,-0.1302194446325302,-0.14331747591495514,-0. 13882678747177124,-0.15112300217151642,-0.14760717749595642,-0.15909935534000397 ,-0.1563674807548523,-0.1669865846633911,-0.1650761067867279,-0.1746624708175659 2,-0.1739044189453125,-0.1824301928281784,-0.18288172781467438,-0.19044317305088 043,-0.19180621206760406,-0.1984090507030487,-0.2006174921989441,-0.206191062927 2461,-0.2095491737127304,-0.2141258418560028,-0.2184688150882721,-0.222164690494 53735,-0.22707563638687134,-0.2299291044473648,-0.23560881614685059,-0.237564712 76283264,-0.24421198666095734,-0.24524550139904022,-0.2526945173740387,-0.252858 430147171,-0.2611212730407715,-0.2604433596134186,-0.26948052644729614,-0.267909 7056388855,-0.27768683433532715,-0.2752090096473694,-0.2859497666358948,-0.28264 039754867554,-0.29414576292037964,-0.29005101323127747,-0.30205854773521423,-0.2 971515655517578,-0.31004756689071655,-0.30430930852890015,-0.3181053400039673,-0 .3115376830101013,-0.32590630650520325,-0.31850019097328186,-0.33365267515182495 ,-0.32542774081230164,-0.3414079546928406,-0.33242523670196533,-0.34893766045570 374,-0.33921313285827637,-0.3563483953475952,-0.3458234965801239,-0.363626986742 01965,-0.35227999091148376,-0.3707098960876465,-0.3586232364177704,-0.3778350651 2641907,-0.36508598923683167,-0.3848576247692108,-0.3714151680469513,-0.39160320 16277313,-0.3774167597293854,-0.3983784317970276,-0.38348257541656494,-0.4050813 317298889,-0.38953205943107605,-0.4114915728569031,-0.3952938914299011,-0.417921 39410972595,-0.40107113122940063,-0.4242797791957855,-0.4067872166633606,-0.4302 13063955307,-0.4120813012123108,-0.4359695613384247,-0.41720691323280334,-0.4416 967034339905,-0.4222995638847351,-0.44718682765960693,-0.42709559202194214,-0.45 248913764953613,-0.43165889382362366,-0.45770472288131714,-0.4361976385116577,-0 .4627995789051056,-0.4406948685646057,-0.467723548412323,-0.4449848532676697,-0. 4723993241786957,-0.4489439129829407,-0.47690653800964355,-0.4527551233768463,-0 .4812902808189392,-0.4565407931804657,-0.48539483547210693,-0.4600854218006134,- 0.48930904269218445,-0.4634152054786682,-0.4931594729423523,-0.4667051434516907, -0.49675899744033813,-0.46982237696647644,-0.5000807046890259,-0.472706079483032 2,-0.5032362341880798,-0.47544509172439575,-0.5061864256858826,-0.47804278135299 68,-0.5089499354362488,-0.4805164635181427,-0.5115028023719788,-0.48277598619461 06,-0.513809084892273,-0.48477935791015625,-0.5159985423088074,-0.48671194911003 113,-0.5179522633552551,-0.4884487986564636,-0.5195164084434509,-0.4897882044315 338,-0.520979642868042,-0.4910416007041931,-0.5224595069885254,-0.49237152934074 4,-0.5237541198730469,-0.4935266375541687,-0.5248284339904785,-0.494403481483459 5,-0.5256340503692627,-0.4950096309185028,-0.5261802077293396,-0.495440483093261 7,-0.5266210436820984,-0.4957996904850006,-0.5268115997314453,-0.495865643024444 6,-0.5266780257225037,-0.4956287741661072,-0.5264650583267212,-0.495410054922103 9,-0.526107668876648,-0.495071142911911,-0.5254742503166199,-0.49441009759902954 ,-0.5246858596801758,-0.4936348795890808,-0.523658812046051,-0.4927383065223694, -0.5223727226257324,-0.4916102886199951,-0.5210084915161133,-0.4903441369533539, -0.5194172263145447,-0.4888645112514496,-0.5174907445907593,-0.4871516525745392, -0.5154325366020203,-0.48535043001174927,-0.5132569074630737,-0.4833911061286926 ,-0.5109375715255737,-0.4812907576560974,-0.5085335969924927,-0.4791760146617889 4,-0.5059165954589844,-0.4768742620944977,-0.5030509233474731,-0.474284589290618 9,-0.500028669834137,-0.4715332090854645,-0.4968000054359436,-0.4686275422573089 6,-0.49335336685180664,-0.46553701162338257,-0.4896450638771057,-0.4621837139129 6387,-0.48560720682144165,-0.4585230052471161,-0.4814741313457489,-0.45481631159 78241,-0.47733908891677856,-0.45113861560821533,-0.47292858362197876,-0.44719982 147216797,-0.46825575828552246,-0.4430288076400757,-0.46353116631507874,-0.43884 843587875366,-0.4587159752845764,-0.43462270498275757,-0.45373016595840454,-0.43 027472496032715,-0.44851088523864746,-0.4257199764251709,-0.4430246949195862,-0. 42090100049972534,-0.4373963177204132,-0.41597795486450195,-0.43161025643348694, -0.4109745919704437,-0.42553985118865967,-0.40570569038391113,-0.419309616088867 2,-0.4002203345298767,-0.41303032636642456,-0.39467763900756836,-0.4066188335418 701,-0.38908135890960693,-0.4000610113143921,-0.38337835669517517,-0.39337468147 27783,-0.37749603390693665,-0.3865426182746887,-0.37144654989242554,-0.379580318 9277649,-0.36532968282699585,-0.37244653701782227,-0.3590787649154663,-0.3651274 4426727295,-0.3526001274585724,-0.35773417353630066,-0.3460187315940857,-0.35031 47065639496,-0.339443564414978,-0.3428031802177429,-0.3328033685684204,-0.335119 18783187866,-0.32598936557769775,-0.3272414207458496,-0.318989634513855,-0.31930 7416677475,-0.31192755699157715,-0.3114268183708191,-0.30487531423568726,-0.3034 377694129944,-0.29770565032958984,-0.2951779365539551,-0.29031598567962646,-0.28 677380084991455,-0.2827863097190857,-0.2784140706062317,-0.27522894740104675,-0. 2700554132461548,-0.26765698194503784,-0.26152825355529785,-0.2599930167198181,- 0.25285422801971436,-0.2521980106830597,-0.24422062933444977,-0.2443566769361496 ,-0.2356354296207428,-0.23653943836688995,-0.22694560885429382,-0.22870162129402 16,-0.218154639005661,-0.22078363597393036,-0.20938779413700104,-0.2128010392189 026,-0.20065683126449585,-0.20482154190540314,-0.19187307357788086,-0.1968518048 5248566,-0.18300488591194153,-0.18880067765712738,-0.17411771416664124,-0.180645 4360485077,-0.16525717079639435,-0.17248183488845825,-0.15638071298599243,-0.164 3337905406952,-0.14744843542575836,-0.15611480176448822,-0.13846251368522644,-0. 14778637886047363,-0.12942667305469513,-0.1394030600786209,-0.12038421630859375, -0.13102714717388153,-0.11140423268079758,-0.12266922742128372,-0.10246630012989 044,-0.11430176347494125,-0.09349130839109421,-0.10590529441833496,-0.0844936668 8728333,-0.09749168902635574,-0.07557141780853271,-0.08910224586725235,-0.066753 87918949127,-0.0807742029428482,-0.057972121983766556,-0.07248006016016006,-0.04 91742342710495,-0.06414788961410522,-0.04038545489311218,-0.05578262731432915,-0 .031651221215724945,-0.04744748771190643,-0.023004386574029922,-0.03917189687490 463,-0.014445883221924305,-0.03089878335595131,-0.005930168554186821,-0.02258383 8552236557,0.002562102861702442,-0.014277668669819832,0.010952816344797611,-0.00 60509974136948586,0.01916518434882164,0.002093313727527857,0.027261536568403244, 0.010179467499256134,0.03536767512559891,0.01820770837366581,0.04351209476590156 6,0.026199307292699814,0.05165395140647888,0.03420865908265114,0.059800952672958 374,0.04223240911960602,0.06799114495515823,0.05020764097571373,0.07624260336160 66,0.05816218629479408,0.08457324653863907,0.06622572243213654,0.092930845916271 21,0.07437774538993835,0.10108152031898499,0.08233530074357986,0.108790919184684 75,0.08987627178430557,0.11614792048931122,0.09715694189071655,0.123443596065044 4,0.10448165237903595,0.13069337606430054,0.11183199286460876,0.137596994638443, 0.11889855563640594,0.1440371870994568,0.12557530403137207,0.15028083324432373,0 .13212789595127106,0.15657037496566772,0.13878726959228516,0.1628297120332718,0. 1454436331987381,0.16891765594482422,0.15190395712852478,0.1749131679534912,0.15 824180841445923,0.1809864193201065,0.16467547416687012,0.18716280162334442,0.171 22480273246765,0.19334079325199127,0.17770837247371674,0.19944238662719727,0.184 03005599975586,0.2054712474346161,0.19027374684810638,0.21147370338439941,0.1965 131163597107,0.21746426820755005,0.202686607837677,0.22337956726551056,0.2087024 450302124,0.22914519906044006,0.2145642787218094,0.23477570712566376,0.220340371 13189697,0.2403235286474228,0.22606170177459717,0.24574553966522217,0.2316922098 3982086,0.25093889236450195,0.23718631267547607,0.25590190291404724,0.2425687015 05661,0.2607375681400299,0.24794656038284302,0.26550406217575073,0.2534227371215 8203,0.27017199993133545,0.25899767875671387,0.27470505237579346,0.2645891606807 709,0.27907735109329224,0.27013954520225525,0.28324833512306213,0.27565181255340 576,0.2872246503829956,0.28112611174583435,0.2910986542701721,0.2865204811096191 4,0.29492753744125366,0.2917826473712921,0.2986379861831665,0.2968660891056061,0 .30215686559677124,0.3017169237136841,0.30556589365005493,0.306292861700058,0.30 898672342300415,0.3105788826942444,0.31235742568969727,0.31453004479408264,0.315 48088788986206,0.3180347979068756,0.31830263137817383,0.3210201859474182,0.32099 11286830902,0.32356560230255127,0.32369938492774963,0.32582664489746094,0.326392 9486274719,0.3278847932815552,0.3289925754070282,0.32976004481315613,0.331543296 57554626,0.33151277899742126,0.33410102128982544,0.33320218324661255,0.336563825 6072998,0.3347967565059662,0.3387991189956665,0.3362775146961212,0.3408724367618 561,0.33779776096343994,0.34296247363090515,0.33957409858703613,0.34508305788040 16,0.34163421392440796,0.34706878662109375,0.3438357412815094,0.348814994096756, 0.34612223505973816,0.35035955905914307,0.34857824444770813,0.3517402708530426,0 .3512190878391266,0.35293614864349365,0.35391637682914734,0.35395580530166626,0. 3565821945667267,0.35486266016960144,0.35927093029022217,0.35572633147239685,0.3 6204156279563904,0.356637567281723,0.3648494482040405,0.3577037751674652,0.36761 653423309326,0.3589226007461548,0.3702812194824219,0.3601362705230713,0.37273502 349853516,0.3612326383590698,0.37484031915664673,0.36232203245162964,0.376582950 35362244,0.36361539363861084,0.37812894582748413,0.3651997447013855,0.3796727657 318115,0.3670227825641632,0.3812750577926636,0.3690119981765747,0.38286787271499 634,0.3711033761501312,0.3843686878681183,0.37321075797080994,0.3857674300670624 ,0.37523677945137024,0.38710513710975647,0.37706899642944336,0.3883553445339203, 0.37854859232902527,0.3893587589263916,0.37954261898994446,0.38997459411621094,0 .3800737261772156,0.3902926743030548,0.3802680969238281,0.39055025577545166,0.38 013553619384766,0.39079850912094116,0.37950754165649414,0.3908044993877411,0.378 2094717025757,0.3903343379497528,0.3761543035507202,0.389335036277771,0.37324771 28505707,0.3877517879009247,0.3694034218788147,0.38540199398994446,0.36476823687 553406,0.38222476840019226,0.3597945272922516,0.3785027265548706,0.3550059795379 6387,0.37467244267463684,0.3508549928665161,0.371074914932251,0.3479050397872925 ,0.3680570721626282,0.3469204604625702,0.3661377429962158,0.34853217005729675,0. 3658168911933899,0.3528748154640198,0.36726272106170654,0.35964274406433105,0.37 02837824821472,0.36830464005470276,0.37445157766342163,0.37805625796318054,0.379 10306453704834,0.38772836327552795,0.3833930492401123,0.3960375189781189,0.38656 750321388245,0.4019690752029419,0.3881657123565674,0.4048866331577301,0.38796383 142471313,0.40447235107421875,0.38597115874290466,0.40075889229774475,0.38259869 81391907,0.394109308719635,0.3785688579082489,0.3850228786468506,0.3744800388813 019,0.3740721046924591,0.37065625190734863,0.3620791435241699,0.3674893379211426 ,0.3500944972038269,0.3655659258365631,0.33906349539756775,0.3652535676956177,0. 3297199308872223,0.36647671461105347,0.3227653205394745,0.36900168657302856,0.31 85165226459503,0.372326135635376,0.31588882207870483,0.37477192282676697,0.31177 088618278503,0.37278440594673157,0.3019689917564392,0.36187323927879333,0.282528 1023979187,0.3380492031574249,0.25039106607437134,0.29856887459754944,0.20400939 881801605,0.24250024557113647,0.14459776878356934,0.17187324166297913,0.07684291 154146194,0.09231474250555038,0.00776814017444849,0.011855741031467915,-0.055005 37157058716,-0.060879603028297424,-0.1035246029496193,-0.1170259341597557,-0.129 14299964904785,-0.14721639454364777,-0.12436288595199585,-0.14353066682815552,-0 .08681271970272064,-0.1035139262676239,-0.021452229470014572,-0.0323348119854927 06,0.06164011359214783,0.05947559326887131,0.15169209241867065,0.160428866744041 44,0.2398754358291626,0.2607254385948181,0.3191983103752136,0.3522929549217224,0 .3837544322013855,0.42822763323783875,0.4290175437927246,0.4831486642360687,0.45 28612196445465,0.514176607131958,0.4562394618988037,0.521668553352356,0.44294753 670692444,0.5091447830200195,0.41847264766693115,0.4822106659412384,0.3884967267 513275,0.44692263007164,0.3579346537590027,0.40867704153060913,0.330831319093704 2,0.37211814522743225,0.31042635440826416,0.34127500653266907,0.2987293004989624 ,0.31904998421669006,0.2959997057914734,0.30647990107536316,0.30091267824172974, 0.3027843236923218,0.3113101124763489,0.306190550327301,0.3247837424278259,0.314 60651755332947,0.3388565182685852,0.32574155926704407,0.3511863946914673,0.33718 350529670715,0.35997089743614197,0.34681347012519836,0.3642255961894989,0.353250 3843307495,0.3637520968914032,0.35595330595970154,0.3590213358402252,0.355075210 3328705,0.351114958524704,0.35131362080574036,0.3415455222129822,0.3457548916339 874,0.3318597078323364,0.3396145701408386,0.32324835658073425,0.3339275717735290 5,0.31639763712882996,0.32932248711586,0.3115268051624298,0.3259360194206238,0.3 084493577480316,0.32346779108047485,0.3066614270210266,0.3213740587234497,0.3055 570721626282,0.3191356658935547,0.30470365285873413,0.3164435923099518,0.3039399 981498718,0.313181608915329,0.30320900678634644,0.30928266048431396,0.3023843467 235565,0.3046846091747284,0.3013804256916046,0.2994810938835144,0.30038815736770 63,0.29404520988464355,0.2997879981994629,0.28885146975517273,0.2997121810913086 ,0.28411442041397095,0.2998063862323761,0.2796758711338043,0.2995368540287018,0. 2752785384654999,0.2986152470111847,0.2708359360694885,0.2969832122325897,0.2663 668990135193,0.29451480507850647,0.26180583238601685,0.2909870147705078,0.257039 45755958557,0.2863495647907257,0.25208550691604614,0.2808309495449066,0.24710004 031658173,0.27474072575569153,0.2422293871641159,0.26830995082855225,0.237562760 71071625,0.261757493019104,0.23320716619491577,0.25537675619125366,0.22930194437 503815,0.2494843453168869,0.22595880925655365,0.24431155622005463,0.223225370049 47662,0.23989641666412354,0.2210220843553543,0.235987588763237,0.219014227390289 3,0.2321094125509262,0.21664059162139893,0.22785964608192444,0.2134196013212204, 0.2231336086988449,0.20920293033123016,0.21797817945480347,0.20404097437858582,0 .2123415470123291,0.19792068004608154,0.20616373419761658,0.19082854688167572,0. 19966572523117065,0.18301355838775635,0.19332806766033173,0.1749725341796875,0.1 8755415081977844,0.16715316474437714,0.18249043822288513,0.15979434549808502,0.1 781284064054489,0.15299631655216217,0.17435649037361145,0.14673756062984467,0.17 08746999502182,0.1408073604106903,0.16724835336208344,0.13490109145641327,0.1631 2113404273987,0.1288263201713562,0.1582898050546646,0.12252052128314972,0.152611 1662387848,0.11592620611190796,0.14601793885231018,0.109025739133358,0.138634786 0097885,0.10197537392377853,0.13071639835834503,0.09501562267541885,0.1224543377 7570724,0.08824774622917175,0.11396884173154831,0.0816502720117569,0.10543704777 956009,0.0752602368593216,0.09703152626752853,0.06912031024694443,0.088747479021 54922,0.06306732445955276,0.0804801806807518,0.05680617690086365,0.0722487270832 0618,0.050199929624795914,0.06413860619068146,0.04326504096388817,0.056058719754 219055,0.03589431941509247,0.04781285300850868,0.02787492424249649,0.03942457586 526871,0.019239455461502075,0.031131481751799583,0.010328397154808044,0.02302238 1588816643,0.001407034695148468,0.014940470457077026,-0.007533639669418335,0.006 808610633015633,-0.016492079943418503,-0.0012192577123641968,-0.0252340827137231 83,-0.009038610383868217,-0.03353056684136391,-0.016785575076937675,-0.041423678 398132324,-0.024613576009869576,-0.04908459633588791,-0.03248251974582672,-0.056 559376418590546,-0.04031608998775482,-0.0638224333524704,-0.04819875210523605,-0 .07095935940742493,-0.05626891925930977,-0.07813222706317902,-0.0645412430167198 2,-0.08543310314416885,-0.0729595273733139,-0.09288822114467621,-0.0815194621682 167,-0.10053624212741852,-0.09023560583591461,-0.10840082168579102,-0.0990730300 5456924,-0.11644048988819122,-0.1079840436577797,-0.12459170818328857,-0.1169343 7397480011,-0.1328069120645523,-0.12586098909378052,-0.14102135598659515,-0.1347 116231918335,-0.14916948974132538,-0.14354576170444489,-0.15726426243782043,-0.1 5246544778347015,-0.16536462306976318,-0.16142883896827698,-0.1734473705291748,- 0.17029942572116852,-0.18144424259662628,-0.17903432250022888,-0.189326286315917 97,-0.18777750432491302,-0.19719542562961578,-0.1966264843940735,-0.205126598477 3636,-0.20549310743808746,-0.21306931972503662,-0.2142835110425949,-0.2209626287 2219086,-0.2230629175901413,-0.2288345843553543,-0.23193064332008362,-0.23672154 545783997,-0.24084587395191193,-0.24458253383636475,-0.24968738853931427,-0.2523 565888404846,-0.25840240716934204,-0.26002565026283264,-0.2669919431209564,-0.26 75635516643524,-0.2754093110561371,-0.2748936712741852,-0.2835761606693268,-0.28 195685148239136,-0.2914767563343048,-0.2887730896472931,-0.29917678236961365,-0. 2954060733318329,-0.3067672550678253,-0.30192068219184875,-0.31432220339775085,- 0.30839264392852783,-0.32188379764556885,-0.31489381194114685,-0.329456180334091 2,-0.3214408755302429,-0.3370295464992523,-0.328012615442276,-0.3446136713027954 ,-0.33462363481521606,-0.35221201181411743,-0.34130868315696716,-0.3597670793533 325,-0.34802311658859253,-0.36719390749931335,-0.3546490967273712,-0.37447810173 03467,-0.36113351583480835,-0.38167330622673035,-0.36753392219543457,-0.38878887 89176941,-0.37389105558395386,-0.39575546979904175,-0.38014477491378784,-0.40252 387523651123,-0.38622432947158813,-0.4091200828552246,-0.39214345812797546,-0.41 55809283256531,-0.3979530334472656,-0.42190879583358765,-0.40365856885910034,-0. 4280899465084076,-0.40922433137893677,-0.43409258127212524,-0.4146045446395874,- 0.43986040353775024,-0.4197533428668976,-0.44537705183029175,-0.4246469438076019 3,-0.4506929814815521,-0.4293072521686554,-0.4558223783969879,-0.433762162923812 87,-0.4606941044330597,-0.43799930810928345,-0.4652884602546692,-0.4420054554939 27,-0.4697306454181671,-0.4458353519439697,-0.4741453230381012,-0.44958731532096 863,-0.47850847244262695,-0.45330822467803955,-0.4827500581741333,-0.45696678757 66754,-0.4869179129600525,-0.46052834391593933,-0.4911094307899475,-0.4640166759 490967,-0.49528059363365173,-0.4674590229988098,-0.49924901127815247,-0.47079247 23625183,-0.5029004216194153,-0.4738979935646057,-0.5062958002090454,-0.47672280 66921234,-0.5095095038414001,-0.47928720712661743,-0.5124505758285522,-0.4815814 197063446,-0.5149758458137512,-0.48357388377189636,-0.5171502828598022,-0.485319 22698020935,-0.5192136764526367,-0.4869314432144165,-0.5212603807449341,-0.48844 6980714798,-0.5231381058692932,-0.48984047770500183,-0.52472984790802,-0.4911395 013332367,-0.5261441469192505,-0.4923926889896393,-0.527509868144989,-0.49356329 441070557,-0.5287466049194336,-0.49457594752311707,-0.5296869277954102,-0.495416 16439819336,-0.5303183197975159,-0.49609023332595825,-0.5307528972625732,-0.4965 6811356544495,-0.5310207605361938,-0.4968433976173401,-0.5310498476028442,-0.496 968537569046,-0.530831515789032,-0.49698033928871155,-0.5304620265960693,-0.4968 6378240585327,-0.5299873352050781,-0.4966042637825012,-0.5293381810188293,-0.496 2059259414673,-0.5284557342529297,-0.49565649032592773,-0.5273529887199402,-0.49 49106276035309,-0.526007354259491,-0.4938989281654358,-0.5243396759033203,-0.492 57004261016846,-0.5223512649536133,-0.49095845222473145,-0.5201387405395508,-0.4 8915889859199524,-0.5177398324012756,-0.48719456791877747,-0.5151124596595764,-0 .4850119352340698,-0.5122785568237305,-0.482637494802475,-0.5093286633491516,-0. 4801918864250183,-0.5062897801399231,-0.4777042865753174,-0.5031248927116394,-0. 475080281496048,-0.49982544779777527,-0.4722902476787567,-0.4963882863521576,-0. 46941402554512024,-0.49277254939079285,-0.46646642684936523,-0.48896169662475586 ,-0.46334540843963623,-0.48497438430786133,-0.45997869968414307,-0.4807762503623 9624,-0.4563928246498108,-0.4763081669807434,-0.45262888073921204,-0.47160157561 302185,-0.4486851990222931,-0.4667295813560486,-0.4445449113845825,-0.4616792798 0422974,-0.4402090609073639,-0.45640772581100464,-0.4357064366340637,-0.45095518 231391907,-0.43107399344444275,-0.4453774094581604,-0.4263157844543457,-0.439654 55889701843,-0.4214092791080475,-0.43376171588897705,-0.4163581430912018,-0.4277 29070186615,-0.4111863970756531,-0.42157092690467834,-0.40588706731796265,-0.415 25986790657043,-0.40044105052948,-0.4087994396686554,-0.3948689103126526,-0.4022 263288497925,-0.38919609785079956,-0.3955446183681488,-0.38339942693710327,-0.38 87292444705963,-0.3774532377719879,-0.3817715644836426,-0.37138763070106506,-0.3 7467828392982483,-0.3652406632900238,-0.36746498942375183,-0.3589944839477539,-0 .36015987396240234,-0.35260990262031555,-0.3527684509754181,-0.3460889160633087, -0.3452497124671936,-0.33946171402931213,-0.3375682830810547,-0.3327275514602661 ,-0.3297394812107086,-0.32584986090660095,-0.3218045234680176,-0.318824678659439 1,-0.31380194425582886,-0.31171417236328125,-0.3057512938976288,-0.3045653700828 552,-0.29762595891952515,-0.29733529686927795,-0.28938376903533936,-0.2899689376 3542175,-0.2810479402542114,-0.28250637650489807,-0.2726821303367615,-0.27501970 529556274,-0.2642843723297119,-0.26749780774116516,-0.2558106482028961,-0.259891 00337028503,-0.24728626012802124,-0.25220686197280884,-0.23876431584358215,-0.24 447709321975708,-0.23021483421325684,-0.23670168220996857,-0.22157728672027588,- 0.22887814044952393,-0.21286465227603912,-0.221002995967865,-0.20411089062690735 ,-0.21303793787956238,-0.19533251225948334,-0.20500221848487854,-0.1864926666021 347,-0.19693033397197723,-0.1776198148727417,-0.18884466588497162,-0.16875708103 179932,-0.1807192862033844,-0.15989913046360016,-0.1725713461637497,-0.151025310 15872955,-0.16447541117668152,-0.14213839173316956,-0.15643048286437988,-0.13326 241075992584,-0.1483512669801712,-0.12442145496606827,-0.1402113437652588,-0.115 59772491455078,-0.13205887377262115,-0.10671859979629517,-0.12390013784170151,-0 .09771277010440826,-0.11567951738834381,-0.08856542408466339,-0.1073403730988502 5,-0.07931990921497345,-0.09885535389184952,-0.07004343718290329,-0.090271085500 71716,-0.06076359748840332,-0.08171606063842773,-0.051445167511701584,-0.0732515 3797864914,-0.042089834809303284,-0.0647740513086319,-0.03280926123261452,-0.056 217558681964874,-0.02369919791817665,-0.04774121567606926,-0.014719998463988304, -0.03951798379421234,-0.005831114947795868,-0.031474702060222626,0.0028619803488 254547,-0.023466356098651886,0.011266704648733139,-0.015539433807134628,0.019486 743956804276,-0.007796190679073334,0.02764134854078293,-0.0002129673957824707,0. 035642001777887344,0.007213525474071503,0.043391402810811996,0.01440890878438949 6,0.051025353372097015,0.021428555250167847,0.05867929756641388,0.02841665595769 8822,0.0662369579076767,0.03535858541727066,0.07358866930007935,0.04218956828117 3706,0.08084963262081146,0.0490066260099411,0.08807537704706192,0.05589109659194 946,0.09510941803455353,0.06279647350311279,0.10187757015228271,0.06977587193250 656,0.10846224427223206,0.07693607360124588,0.11485867202281952,0.08415903151035 309,0.12102552503347397,0.09127787500619888,0.12707127630710602,0.09834423661231 995,0.13310644030570984,0.10538395494222641,0.1391477882862091,0.112285383045673 37,0.14532488584518433,0.11914981156587601,0.15184150636196136,0.126239299774169 92,0.15870630741119385,0.13356147706508636,0.16585108637809753,0.141081720590591 43,0.17339038848876953,0.1491435021162033,0.1814194768667221,0.15807709097862244 ,0.18974897265434265,0.16768202185630798,0.198135644197464,0.17754817008972168,0 .20657123625278473,0.18749697506427765,0.2151017040014267,0.1973915696144104,0.2 2352728247642517,0.20688694715499878,0.2315070927143097,0.21554161608219147,0.23 887209594249725,0.22295071184635162,0.24563157558441162,0.22886541485786438,0.25 171032547950745,0.23340195417404175,0.2569041848182678,0.23695433139801025,0.261 075884103775,0.23977386951446533,0.26421427726745605,0.24187617003917694,0.26638 98468017578,0.24339160323143005,0.2677948474884033,0.24464905261993408,0.2686662 3759269714,0.24582798779010773,0.2691427767276764,0.24681979417800903,0.26940131 187438965,0.24747145175933838,0.26977843046188354,0.2477508783340454,0.270543456 0775757,0.24775663018226624,0.27185192704200745,0.24776995182037354,0.2739870250 225067,0.2481580376625061,0.27716192603111267,0.2491474449634552,0.2811815738677 9785,0.25096777081489563,0.28582748770713806,0.25415366888046265,0.2912615537643 4326,0.2592353820800781,0.29756784439086914,0.2661699652671814,0.304396003484725 95,0.274442195892334,0.3113973140716553,0.2835386097431183,0.3184615671634674,0. 2930457592010498,0.3254229426383972,0.3025587797164917,0.33204150199890137,0.311 6576075553894,0.33815014362335205,0.3198394179344177,0.3434916138648987,0.326698 4820365906,0.34775760769844055,0.3323238790035248,0.35095351934432983,0.33714330 196380615,0.35330039262771606,0.34139373898506165,0.3547760844230652,0.345176875 5912781,0.35519939661026,0.34872883558273315,0.354733943939209,0.352186858654022 2,0.35391494631767273,0.35551464557647705,0.3531007468700409,0.3588149845600128, 0.35216692090034485,0.362111359834671,0.3509524166584015,0.3649575114250183,0.34 97481942176819,0.3669162392616272,0.34890446066856384,0.3680737018585205,0.34819 650650024414,0.36864179372787476,0.34714847803115845,0.3686122000217438,0.345714 65849876404,0.36799123883247375,0.34409332275390625,0.36683329939842224,0.342215 74664115906,0.36515533924102783,0.33987826108932495,0.3631545305252075,0.3370873 6300468445,0.36112385988235474,0.33407649397850037,0.3591340482234955,0.33116063 475608826,0.35727792978286743,0.3285318911075592,0.35586118698120117,0.326248914 0033722,0.35493436455726624,0.3246261179447174,0.3543103337287903,0.324245810508 728,0.3542410731315613,0.3252984285354614,0.35525748133659363,0.3275124430656433 ,0.35742220282554626,0.3308638334274292,0.3604626953601837,0.33558639883995056,0 .3642706573009491,0.34152770042419434,0.3687928318977356,0.34815678000450134,0.3 7390872836112976,0.3549131751060486,0.3794596493244171,0.36118724942207336,0.384 9322199821472,0.3664550185203552,0.3894926607608795,0.3704560697078705,0.3926383 2569122314,0.37284305691719055,0.3941919207572937,0.3731362521648407,0.393718242 64526367,0.3713011145591736,0.39081722497940063,0.36774566769599915,0.3857673704 624176,0.36292165517807007,0.3792005181312561,0.35753628611564636,0.371642500162 12463,0.35247477889060974,0.3638255000114441,0.34811195731163025,0.3568190634250 641,0.34460335969924927,0.35156095027923584,0.342583566904068,0.3486330211162567 ,0.3424295485019684,0.3483543395996094)
27
28 ,
29
30 new Array(0.3436359763145447,0.3507392704486847,0.3458445370197296,0.35553568601 608276,0.349070280790329,0.36218830943107605,0.3529009521007538,0.36989903450012 207,0.3567352890968323,0.3776802718639374,0.3602409362792969,0.3845756947994232, 0.3624301850795746,0.38984495401382446,0.36204901337623596,0.3930245339870453,0. 35958513617515564,0.39386096596717834,0.35623884201049805,0.39222022891044617,0. 35106125473976135,0.3883177638053894,0.34256747364997864,0.38292935490608215,0.3 323298692703247,0.3768877685070038,0.323260098695755,0.37063145637512207,0.31569 92495059967,0.3646821975708008,0.3084883987903595,0.35974499583244324,0.30189198 25553894,0.35562121868133545,0.29641395807266235,0.3507556915283203,0.2904132902 622223,0.34314075112342834,0.28101786971092224,0.33097949624061584,0.26616284251 213074,0.31287649273872375,0.2446533590555191,0.2879803478717804,0.2151623666286 4685,0.255038857460022,0.17608602344989777,0.21176795661449432,0.127042829990386 96,0.15780548751354218,0.07108964771032333,0.09810417890548706,0.014752926304936 409,0.040358446538448334,-0.035008858889341354,-0.010328201577067375,-0.07317540 794610977,-0.05101863294839859,-0.09570048749446869,-0.07671763747930527,-0.0980 4818034172058,-0.08093484491109848,-0.0764317587018013,-0.06037058308720589,-0.0 3042197786271572,-0.01648930460214615,0.03596554324030876,0.0465453676879406,0.1 1531345546245575,0.12299899756908417,0.1989039182662964,0.20528899133205414,0.27 868446707725525,0.28483620285987854,0.34824496507644653,0.3541155457496643,0.402 80720591545105,0.40809503197669983,0.43914052844047546,0.4442239999771118,0.4560 6517791748047,0.46168196201324463,0.4549923837184906,0.4612167477607727,0.439566 13540649414,0.4456948935985565,0.41455766558647156,0.41990524530410767,0.3848838 806152344,0.3890814185142517,0.35493040084838867,0.35762137174606323,0.328004002 57110596,0.3289647400379181,0.30628281831741333,0.3057825565338135,0.29118373990 0589,0.2896957993507385,0.28327441215515137,0.2809591591358185,0.281885534524917 6,0.2787399888038635,0.2854923605918884,0.28177735209465027,0.2925439476966858,0 .2886710464954376,0.30161160230636597,0.2977151870727539,0.31119534373283386,0.3 0709391832351685,0.31999343633651733,0.31554341316223145,0.3271985352039337,0.32 24572539329529,0.3323807716369629,0.3273491859436035,0.3353782892227173,0.329818 87459754944,0.3363034129142761,0.33001670241355896,0.33541586995124817,0.3284981 2507629395,0.33304548263549805,0.32565680146217346,0.32961732149124146,0.3217451 870441437,0.3255370557308197,0.31720080971717834,0.3211156129837036,0.3124954998 4931946,0.3166646659374237,0.30782362818717957,0.3124258816242218,0.303187429904 93774,0.3084467351436615,0.29864123463630676,0.304767370223999,0.294305860996246 34,0.3015163242816925,0.290192186832428,0.29865914583206177,0.28612279891967773, 0.2959946393966675,0.28194108605384827,0.29342013597488403,0.27772849798202515,0 .2908669412136078,0.273634672164917,0.2881903052330017,0.26963305473327637,0.285 3950262069702,0.2656824290752411,0.2825847864151001,0.2619113028049469,0.2796349 2274284363,0.2584269642829895,0.2764520049095154,0.2552037239074707,0.2733556032 180786,0.25225701928138733,0.27060335874557495,0.24962079524993896,0.26795327663 42163,0.24718371033668518,0.26519572734832764,0.24481931328773499,0.262498050928 11584,0.2424980103969574,0.25986188650131226,0.2400670051574707,0.25692054629325 867,0.23722389340400696,0.2534322142601013,0.23384401202201843,0.249374151229858 4,0.2300342619419098,0.24467289447784424,0.2258572280406952,0.23934808373451233, 0.22128351032733917,0.23365342617034912,0.21636269986629486,0.22778062522411346, 0.21126005053520203,0.22179719805717468,0.2061673104763031,0.21593421697616577,0 .20118600130081177,0.2105105221271515,0.19625036418437958,0.2056254893541336,0.1 9125910103321075,0.20119091868400574,0.1862357258796692,0.1970648467540741,0.181 17842078208923,0.19303493201732635,0.17590683698654175,0.1889193207025528,0.1702 8747498989105,0.18464966118335724,0.16439872980117798,0.18007981777191162,0.1582 980751991272,0.17496532201766968,0.15188351273536682,0.16928313672542572,0.14509 545266628265,0.1632496416568756,0.13801680505275726,0.1569652110338211,0.1307449 7878551483,0.1503717601299286,0.1233326643705368,0.1435215175151825,0.1158232390 8805847,0.1365867406129837,0.10827413201332092,0.12966367602348328,0.10077520459 890366,0.12275254726409912,0.0934087336063385,0.11584542691707611,0.086196050047 87445,0.10892727971076965,0.07917298376560211,0.10195941478013992,0.072435073554 51584,0.09491272270679474,0.06601165235042572,0.08778388798236847,0.059838365763 42583,0.0805385559797287,0.05387263000011444,0.07305917888879776,0.0480366796255 1117,0.06523420661687851,0.04212284833192825,0.057080116122961044,0.035945665091 27617,0.04865209758281708,0.029429901391267776,0.039905570447444916,0.0224606413 39421272,0.03080851025879383,0.014893142506480217,0.02146265283226967,0.00671625 6495565176,0.011982964351773262,-0.001997239887714386,0.0024438141845166683,-0.0 11165347881615162,-0.007014747243374586,-0.020593587309122086,-0.016242871060967 445,-0.030016787350177765,-0.025171050801873207,-0.039254624396562576,-0.0336878 7094950676,-0.04812806844711304,-0.041668251156806946,-0.056405309587717056,-0.0 4917296767234802,-0.0640219897031784,-0.056338705122470856,-0.07114075869321823, -0.06319992244243622,-0.07793767005205154,-0.06988830864429474,-0.08454476296901 703,-0.07669203728437424,-0.09115692973136902,-0.08373631536960602,-0.0980460941 7915344,-0.09103355556726456,-0.10550685971975327,-0.09883319586515427,-0.113699 60010051727,-0.10741837322711945,-0.12249250710010529,-0.11673317849636078,-0.13 16787600517273,-0.1266242116689682,-0.14125868678092957,-0.1370970606803894,-0.1 5116144716739655,-0.1480569839477539,-0.16098646819591522,-0.1592252403497696,-0 .1704384982585907,-0.17041613161563873,-0.17959284782409668,-0.18150544166564941 ,-0.18844667077064514,-0.19222383201122284,-0.1967857927083969,-0.20232486724853 516,-0.20461004972457886,-0.21179530024528503,-0.21210674941539764,-0.2207169234 752655,-0.21930965781211853,-0.22912082076072693,-0.2262527346611023,-0.23705273 866653442,-0.23312364518642426,-0.244648739695549,-0.23997023701667786,-0.252114 77279663086,-0.24670550227165222,-0.2596213221549988,-0.2534589469432831,-0.2672 247886657715,-0.2604459822177887,-0.27498531341552734,-0.26765093207359314,-0.28 30657362937927,-0.2750389277935028,-0.29154103994369507,-0.2827794849872589,-0.3 002829849720001,-0.29098790884017944,-0.3091878592967987,-0.29958197474479675,-0 .31826746463775635,-0.3085162043571472,-0.32745054364204407,-0.31784147024154663 ,-0.336588978767395,-0.32749396562576294,-0.34562060236930847,-0.337244659662246 7,-0.35447514057159424,-0.3468747138977051,-0.36298662424087524,-0.3562729358673 0957,-0.3710893392562866,-0.3653349280357361,-0.37888044118881226,-0.37389066815 37628,-0.3864019513130188,-0.38183271884918213,-0.3935663104057312,-0.3891750276 0887146,-0.40029746294021606,-0.39585989713668823,-0.4066075086593628,-0.4017512 2022628784,-0.4125635325908661,-0.4069103002548218,-0.41820240020751953,-0.41154 420375823975,-0.42346662282943726,-0.415698766708374,-0.4283090829849243,-0.4193 916618824005,-0.4328407943248749,-0.42285987734794617,-0.4372495412826538,-0.426 31256580352783,-0.4416581094264984,-0.4297977387905121,-0.4461841285228729,-0.43 35118532180786,-0.451017290353775,-0.43769797682762146,-0.4563363194465637,-0.44 22340989112854,-0.46220043301582336,-0.4469219446182251,-0.4685121476650238,-0.4 519149363040924,-0.4750834107398987,-0.4572798013687134,-0.4817622900009155,-0.4 6262893080711365,-0.4883791208267212,-0.4676629602909088,-0.4945853352546692,-0. 4724624752998352,-0.5000262260437012,-0.47698476910591125,-0.5046371221542358,-0 .4809568226337433,-0.5084781646728516,-0.48434996604919434,-0.5114843249320984,- 0.4873488247394562,-0.5136945247650146,-0.48995310068130493,-0.5154111385345459, -0.49210289120674133,-0.516903281211853,-0.4939757287502289,-0.5183118581771851, -0.4957995116710663,-0.5198625922203064,-0.4976169764995575,-0.521746039390564,- 0.49945729970932007,-0.5239163041114807,-0.5014687180519104,-0.5263248682022095, -0.5037275552749634,-0.5290380120277405,-0.5061351656913757,-0.5319313406944275, -0.5085968375205994,-0.5346949696540833,-0.5110976099967957,-0.5372004508972168, -0.5135430693626404,-0.5394700765609741,-0.5157400369644165,-0.5414009094238281, -0.5175819993019104,-0.542862057685852,-0.5190489888191223,-0.5438710451126099,- 0.5200487375259399,-0.5444741249084473,-0.5204949378967285,-0.5446802377700806,- 0.520462155342102,-0.544552206993103,-0.5200443267822266,-0.5441441535949707,-0. 5192134380340576,-0.5434141755104065,-0.5179857611656189,-0.542346179485321,-0.5 164980292320251,-0.541022777557373,-0.5148156881332397,-0.5394992828369141,-0.51 29062533378601,-0.5377427935600281,-0.5108166337013245,-0.5357125997543335,-0.50 86457133293152,-0.5334264039993286,-0.5064231157302856,-0.5309809446334839,-0.50 41735768318176,-0.5284898281097412,-0.501957893371582,-0.5259407162666321,-0.499 7645318508148,-0.5232195854187012,-0.49752259254455566,-0.5203320384025574,-0.49 52189326286316,-0.5174044966697693,-0.4928598403930664,-0.5144237279891968,-0.49 038657546043396,-0.5112305283546448,-0.48774129152297974,-0.5077933073043823,-0. 48493388295173645,-0.5042111873626709,-0.4819803535938263,-0.5004695653915405,-0 .47884082794189453,-0.49646249413490295,-0.4754530191421509,-0.4921858608722687, -0.47181081771850586,-0.48766329884529114,-0.4679860472679138,-0.482830226421356 2,-0.4640211760997772,-0.4776991307735443,-0.45984530448913574,-0.47242566943168 64,-0.4554009437561035,-0.4670521914958954,-0.45078036189079285,-0.4614571332931 5186,-0.44608256220817566,-0.45564666390419006,-0.4412424862384796,-0.4497779309 749603,-0.43617334961891174,-0.44387221336364746,-0.43095916509628296,-0.4378197 193145752,-0.4257330596446991,-0.43161824345588684,-0.4204648733139038,-0.425328 5229206085,-0.4150194823741913,-0.4189133048057556,-0.4093530774116516,-0.412326 48491859436,-0.40354013442993164,-0.40559619665145874,-0.39763739705085754,-0.39 87126648426056,-0.3915990889072418,-0.3916330635547638,-0.3853526711463928,-0.38 440752029418945,-0.3789190351963043,-0.37710270285606384,-0.37238672375679016,-0 .36967653036117554,-0.36577948927879333,-0.3620924651622772,-0.3590465188026428, -0.35440847277641296,-0.3521696627140045,-0.3466413915157318,-0.3451785445213318 ,-0.3387884497642517,-0.33814793825149536,-0.3308127522468567,-0.331040769815444 95,-0.3227776885032654,-0.32384273409843445,-0.31471219658851624,-0.316522598266 60156,-0.30657118558883667,-0.3090512454509735,-0.2983539402484894,-0.3015242218 9712524,-0.2901151776313782,-0.2940562069416046,-0.2818600535392761,-0.286547273 3974457,-0.273529976606369,-0.2788337171077728,-0.2650870978832245,-0.2710044085 9794617,-0.2565560042858124,-0.2632352113723755,-0.2479782998561859,-0.255432009 69696045,-0.2393481284379959,-0.24740611016750336,-0.2306208461523056,-0.2392400 9501934052,-0.22179831564426422,-0.23113234341144562,-0.21295014023780823,-0.223 05995225906372,-0.20411615073680878,-0.21488721668720245,-0.19526320695877075,-0 .20662233233451843,-0.1863834410905838,-0.19836333394050598,-0.17753858864307404 ,-0.19014336168766022,-0.16875573992729187,-0.18192589282989502,-0.1599741280078 888,-0.17364239692687988,-0.15114164352416992,-0.16524434089660645,-0.1422814726 8295288,-0.15676435828208923,-0.13342416286468506,-0.1482381820678711,-0.1245436 5193843842,-0.13959383964538574,-0.11561007052659988,-0.13077281415462494,-0.106 67137056589127,-0.12187683582305908,-0.09781067073345184,-0.11302471160888672,-0 .08900970220565796,-0.10418687015771866,-0.08015486598014832,-0.0953154638409614 6,-0.07122906297445297,-0.08648769557476044,-0.06236971542239189,-0.077794939279 55627,-0.05368009954690933,-0.0692458227276802,-0.04515216499567032,-0.060865372 4193573,-0.036801550537347794,-0.05274923890829086,-0.028654571622610092,-0.0449 5047777891159,-0.020618632435798645,-0.03741208463907242,-0.012603923678398132,- 0.03005238249897957,-0.004660770297050476,-0.022837206721305847,0.00323756039142 60864,-0.01571357250213623,0.011317364871501923,-0.008542641997337341,0.01970715 820789337,-0.0011973455548286438,0.028333887457847595,0.0063246265053749084,0.03 72132882475853,0.014011144638061523,0.04643452912569046,0.021950438618659973,0.0 5588231235742569,0.03010193258523941,0.06538072973489761,0.03810767084360123,0.0 7491307705640793,0.04572763293981552,0.08436762541532516,0.05330805480480194,0.0 9348076581954956,0.06125878542661667,0.10222368687391281,0.06920412927865982,0.1 1063101887702942,0.07641875743865967,0.11829406023025513,0.08306580036878586,0.1 248847246170044,0.09005635231733322,0.1309305727481842,0.09756209701299667,0.137 03811168670654,0.10473161935806274,0.14279481768608093,0.11117547750473022,0.147 5921869277954,0.11762325465679169,0.15196004509925842,0.1246354728937149,0.15684 883296489716,0.1316998451948166,0.1621231585741043,0.1381763368844986,0.16694250 70285797,0.1442692130804062,0.17123211920261383,0.15050184726715088,0.1757591217 7562714,0.15688656270503998,0.18093281984329224,0.16307076811790466,0.1863034367 5613403,0.16888675093650818,0.19129076600074768,0.17447316646575928,0.1959274560 213089,0.1800549030303955,0.2006806880235672,0.18569731712341309,0.2057897746562 9578,0.1912769377231598,0.21109235286712646,0.19677548110485077,0.21643885970115 662,0.20245715975761414,0.22195398807525635,0.20854544639587402,0.22783887386322 021,0.21492406725883484,0.23414868116378784,0.22138294577598572,0.24080960452556 61,0.22791072726249695,0.24772141873836517,0.2345348745584488,0.2548198699951172 ,0.24109560251235962,0.26203206181526184,0.24734240770339966,0.26913875341415405 ,0.2531210780143738,0.2757990062236786,0.25837716460227966,0.2817825675010681,0. 26302066445350647,0.28703317046165466,0.26686960458755493,0.2914980947971344,0.2 698267996311188,0.2951238453388214,0.27205488085746765,0.29802095890045166,0.273 80669116973877,0.3004281520843506,0.27521419525146484,0.30253762006759644,0.2764 592170715332,0.3044890761375427,0.2779090106487274,0.30645057559013367,0.2798351 9434928894,0.3086082339286804,0.2822890281677246,0.31110501289367676,0.285368263 72146606,0.31396785378456116,0.28918546438217163,0.3170616328716278,0.2935610711 5745544,0.3201717436313629,0.29820433259010315,0.3231307864189148,0.303085833787 9181,0.3258450925350189,0.308247447013855,0.328314870595932,0.31352299451828003, 0.33062970638275146,0.31873950362205505,0.33277279138565063,0.32381922006607056, 0.33449500799179077,0.3285626173019409,0.3355770409107208,0.3327631652355194,0.3 3607345819473267,0.3364887833595276,0.3361404836177826,0.33987191319465637,0.335 8767628669739,0.3428524136543274,0.3354545533657074,0.3454176187515259,0.3351161 479949951,0.34774285554885864,0.33497175574302673,0.3499442934989929,0.335027128 45802307,0.35206130146980286,0.33532264828681946,0.3542133569717407,0.3358570337 295532,0.3563973605632782,0.33655038475990295,0.35835447907447815,0.337370216846 46606,0.35992562770843506,0.3382839858531952,0.36120814085006714,0.3391556143760 681,0.3622129559516907,0.3399306535720825,0.3627970814704895,0.340738445520401,0 .36299434304237366,0.34162911772727966,0.36302265524864197,0.34250450134277344,0 .3629917502403259,0.34339553117752075,0.36288395524024963,0.3444414734840393,0.3 6270594596862793,0.34560033679008484,0.3624858260154724,0.34673959016799927,0.36 22548580169678,0.3479076623916626,0.3620994985103607,0.349197655916214,0.3621264 100074768,0.3505156636238098,0.36238744854927063,0.3517214357852936,0.3628728985 786438,0.35284072160720825,0.3635386526584625,0.3538372218608856,0.3641984164714 813,0.354625403881073,0.36477917432785034,0.35517418384552,0.3654242753982544,0. 35551297664642334,0.3663182854652405,0.3556709885597229,0.36749815940856934,0.35 56704521179199,0.3688485622406006,0.35551950335502625,0.37021782994270325,0.3551 963269710541,0.3715476989746094,0.3546697497367859,0.37288153171539307,0.3539202 2132873535,0.37423309683799744,0.3529627323150635,0.37555593252182007,0.35187280 17807007,0.37683695554733276,0.3507084548473358,0.3780277371406555,0.34938400983 810425,0.3789185583591461,0.34771719574928284,0.3792995512485504,0.3455829322338 104,0.3791392147541046,0.3429500460624695,0.37842699885368347,0.3398516178131103 5,0.3770616948604584,0.3363795876502991,0.37503236532211304,0.33264100551605225, 0.3724556863307953,0.32876861095428467,0.3694303035736084,0.3250260651111603,0.3 6613425612449646,0.32172974944114685,0.3629182279109955,0.31904760003089905,0.36 003610491752625,0.3171144723892212,0.3575168550014496,0.3162133991718292,0.35543 16759109497,0.31647419929504395,0.35392361879348755,0.31762418150901794,0.352965 47412872314,0.31939736008644104,0.3524459898471832,0.32169878482818604,0.3522231 876850128,0.32382136583328247,0.3515649437904358,0.323943555355072,0.34879955649 375916,0.31993407011032104,0.3419891595840454,0.31043753027915955,0.329835504293 4418,0.29507070779800415,0.3119099736213684,0.27397388219833374,0.28838664293289 185,0.24728214740753174,0.2595595121383667,0.21489554643630981,0.225432619452476 5,0.17702044546604156,0.1861249804496765,0.13509336113929749,0.14292919635772705 ,0.09184535592794418,0.0985659807920456,0.05040176957845688,0.05621499568223953, 0.01354043185710907,0.018598206341266632,-0.016510628163814545,-0.01215223222970 9625,-0.03795430064201355,-0.03417684882879257,-0.048723407089710236,-0.04525898 3969688416,-0.045718543231487274,-0.04232113063335419,-0.025622978806495667,-0.0 22208139300346375,0.012788698077201843,0.016318827867507935,0.067243292927742,0. 07123502343893051,0.13267022371292114,0.13764043152332306,0.20275083184242249,0. 209126278758049,0.27113276720046997,0.27916431427001953,0.33227863907814026,0.34 21016037464142,0.38191530108451843,0.3935193717479706,0.41712698340415955,0.4302 797317504883,0.4366118311882019,0.45090678334236145,0.4410606920719147,0.4560153 4843444824,0.4329354763031006,0.44800302386283875,0.4156544506549835,0.430219948 29177856,0.39290153980255127,0.40635135769844055,0.36821553111076355,0.380020856 8572998,0.3446190655231476,0.3543797731399536,0.32438135147094727,0.331869691610 3363,0.30896732211112976,0.31416574120521545,0.2989675998687744,0.30204507708549 5,0.29409757256507874,0.2953417897224426,0.29348260164260864,0.29323530197143555 ,0.2960135340690613,0.2946128845214844,0.3005402088165283,0.2982521057128906,0.3 060187101364136,0.3029651343822479,0.31161439418792725,0.30772703886032104,0.316 62559509277344,0.31167834997177124,0.32043734192848206,0.31415697932243347,0.322 7097988128662,0.31484824419021606,0.32350826263427734,0.313800573348999,0.323121 1006641388,0.3112623393535614,0.3218221068382263,0.3076017498970032,0.3198344409 46579,0.3033114969730377,0.31740814447402954,0.2989150285720825,0.31485068798065 186,0.2948548495769501,0.3124483525753021,0.2914617955684662,0.31033024191856384 ,0.2889053225517273,0.3084651231765747,0.28716087341308594,0.3068024814128876,0. 2860954999923706,0.3052840530872345,0.2855125665664673,0.30369892716407776,0.285 07593274116516,0.30171483755111694,0.2843456566333771,0.2990935146808624,0.28295 36199569702,0.295750230550766,0.28065529465675354,0.29166868329048157,0.27728027 10533142,0.2869117259979248,0.2727862298488617,0.28164681792259216,0.26730614900 58899,0.2760713994503021,0.2610625922679901,0.27038443088531494,0.25432145595550 537,0.26479262113571167,0.24741120636463165,0.2594027817249298,0.240626424551010 13,0.25418317317962646,0.23414039611816406,0.24914424121379852,0.228119432926177 98,0.24441100656986237,0.2227998822927475,0.2400449812412262,0.21833443641662598 ,0.2359958440065384,0.2146882712841034,0.23225922882556915,0.2117394655942917,0. 2288622409105301,0.20933091640472412,0.22570477426052094,0.20720435678958893,0.2 2260309755802155,0.20500941574573517,0.21942651271820068,0.2023804634809494,0.21 604958176612854,0.1989881694316864,0.2122812718153,0.1946185678243637,0.20795966 684818268,0.18923088908195496,0.20303267240524292,0.1828848272562027,0.197518810 62984467,0.1756948083639145,0.1914731115102768,0.16792836785316467,0.18498684465 885162,0.1600073128938675,0.17818424105644226,0.15231330692768097,0.171236261725 42572,0.14508582651615143,0.16434428095817566,0.13850338757038116,0.157649874687 19482,0.1326969563961029,0.1512037068605423,0.12764720618724823,0.14503470063209 534,0.12316109985113144,0.13916251063346863,0.11896595358848572,0.13355253636837 006,0.11481080204248428,0.12815110385417938,0.11050844192504883,0.12291742116212 845,0.10589440912008286,0.11774105578660965,0.10077223181724548,0.11239765584468 842,0.09496051073074341,0.10665403306484222,0.08838188648223877,0.10038005560636 52,0.08106671273708344,0.09346766024827957,0.07306445389986038,0.085844397544860 84,0.06449486315250397,0.07751166075468063,0.0555633008480072,0.0685629546642303 5,0.046484850347042084,0.059176962822675705,0.03744354099035263,0.04958879575133 324,0.02862597443163395,0.0400613471865654,0.020237747579813004,0.03086978569626 808,0.012458212673664093,0.02223091758787632,0.0053418781608343124,0.01419978216 290474,-0.001248285174369812,0.006708775646984577,-0.0075348149985075,-0.0002906 918525695801,-0.013653511181473732,-0.006836937740445137,-0.01968599110841751,-0 .013062719255685806,-0.02580053173005581,-0.019140519201755524,-0.03219126909971 237,-0.025186140090227127,-0.038921840488910675,-0.03132248297333717,-0.04595652 595162392,-0.03771370276808739,-0.05326448380947113,-0.044453129172325134,-0.060 802243649959564,-0.05154811590909958,-0.06848271191120148,-0.05902509018778801,- 0.07619261741638184,-0.06691370159387589,-0.08379656076431274,-0.075179561972618 1,-0.09120871871709824,-0.08378754556179047,-0.0985087901353836,-0.0927452594041 8243,-0.10586851090192795,-0.10203513503074646,-0.11339233070611954,-0.111605450 5109787,-0.12117552012205124,-0.12139799445867538,-0.12939989566802979,-0.131309 1218471527,-0.1381993591785431,-0.1412314921617508,-0.147567480802536,-0.1511681 228876114,-0.15748564898967743,-0.16116419434547424,-0.16794219613075256,-0.1711 844801902771,-0.178798109292984,-0.18121357262134552,-0.18982529640197754,-0.191 3289576768875,-0.2008262723684311,-0.20152945816516876,-0.21157817542552948,-0.2 1168290078639984,-0.22180645167827606,-0.22168974578380585,-0.2313070297241211,- 0.23146215081214905,-0.23995310068130493,-0.24079033732414246,-0.247631385922431 95,-0.24947047233581543,-0.25434255599975586,-0.2574461102485657,-0.260235786437 9883,-0.26465606689453125,-0.2654263377189636,-0.2709711790084839,-0.26997777819 633484,-0.27640077471733093,-0.2740896940231323,-0.28114989399909973,-0.27805638 313293457,-0.2854735553264618,-0.28208595514297485,-0.2896733283996582,-0.286363 6612892151,-0.2941269874572754,-0.2911421060562134,-0.299156129360199,-0.2965962 886810303,-0.30497097969055176,-0.30276089906692505,-0.31174346804618835,-0.3096 446990966797,-0.3195430338382721,-0.3172059655189514,-0.32825422286987305,-0.325 2774477005005,-0.3376973867416382,-0.33369049429893494,-0.34769386053085327,-0.3 423401415348053,-0.3579603135585785,-0.3510512709617615,-0.3681504428386688,-0.3 595849275588989,-0.37799546122550964,-0.36778882145881653,-0.38724061846733093,- 0.3755456507205963,-0.3955906927585602,-0.3826776444911957,-0.40288683772087097, -0.3890700340270996,-0.4091619551181793,-0.3947434425354004,-0.41446515917778015 ,-0.3997305929660797,-0.4188607931137085,-0.40407246351242065,-0.422581762075424 2,-0.4079211950302124,-0.42594799399375916,-0.4114592969417572,-0.42920154333114 624,-0.41479772329330444,-0.4325565695762634,-0.41806554794311523,-0.43624836206 43616,-0.4214438498020172,-0.4404276907444,-0.4250420928001404,-0.44514799118041 99,-0.42889899015426636,-0.45045268535614014,-0.43308261036872864,-0.45633125305 17578,-0.4376424252986908,-0.4626504182815552,-0.44253748655319214,-0.4692232012 748718,-0.44769778847694397,-0.47585803270339966,-0.45304206013679504,-0.4823276 400566101,-0.4584178030490875,-0.4884132742881775,-0.4636516273021698,-0.4939763 54598999,-0.4686329960823059,-0.4989304542541504,-0.47326552867889404,-0.5032305 717468262,-0.4774376451969147,-0.5069249272346497,-0.4811008870601654,-0.5101109 147071838,-0.4842684268951416,-0.5128448009490967,-0.48692530393600464,-0.515177 2499084473,-0.489045113325119,-0.5172102451324463,-0.4906660318374634,-0.5190343 856811523,-0.4918709993362427,-0.5206844806671143,-0.4927436411380768,-0.5221881 27040863,-0.49338048696517944,-0.5235728621482849,-0.493878036737442,-0.52482485 7711792,-0.49429672956466675,-0.5259182453155518,-0.4946802854537964,-0.52686220 40748596,-0.4950801134109497,-0.5276737809181213,-0.4955251216888428,-0.52834665 77529907,-0.4960111081600189,-0.5288761854171753,-0.4965241551399231,-0.52926951 64680481,-0.49703070521354675,-0.5295256972312927,-0.4974631071090698,-0.5296366 214752197,-0.49775710701942444,-0.5296010971069336,-0.4978855848312378,-0.529417 3359870911,-0.4978395700454712,-0.5290791988372803,-0.49760928750038147,-0.52857 82217979431,-0.4971923828125,-0.5278950333595276,-0.4965905249118805,-0.52700024 84321594,-0.4957980513572693,-0.5258727073669434,-0.4948074221611023,-0.52450722 45597839,-0.4936217963695526,-0.5229060649871826,-0.49225279688835144,-0.5210745 334625244,-0.49071353673934937,-0.5190219283103943,-0.489006906747818,-0.5167518 258094788,-0.4871183931827545,-0.5142611265182495,-0.4850262403488159,-0.5115514 397621155,-0.4827241599559784,-0.5086349248886108,-0.4802265465259552,-0.5055283 308029175,-0.47755685448646545,-0.5022464990615845,-0.47473302483558655,-0.49879 78935241699,-0.4717614948749542,-0.49517983198165894,-0.4686356782913208,-0.4913 797676563263,-0.4653436839580536,-0.487384557723999,-0.4618803858757019,-0.48318 97020339966,-0.4582536518573761,-0.47879987955093384,-0.4544786214828491,-0.4742 203950881958,-0.4505634307861328,-0.46944403648376465,-0.4464946985244751,-0.464 44201469421387,-0.44223523139953613,-0.4591920077800751,-0.43775704503059387,-0. 45380234718322754,-0.4331594705581665,-0.4482576847076416,-0.4284302294254303,-0 .44253525137901306,-0.42354726791381836,-0.4366333782672882,-0.4185048043727875, -0.43056467175483704,-0.4133080244064331,-0.42434409260749817,-0.407969176769256 6,-0.41797903180122375,-0.4025009870529175,-0.41146841645240784,-0.3969133198261 261,-0.40480536222457886,-0.3912079930305481,-0.39798280596733093,-0.38537937402 72522,-0.3909948766231537,-0.37941497564315796,-0.3838372826576233,-0.3733018636 703491,-0.3765070140361786,-0.3670300245285034,-0.3690025210380554,-0.3605952560 901642,-0.36132562160491943,-0.35399699211120605,-0.3534850478172302,-0.34723922 6102829,-0.3455008566379547,-0.3403315842151642,-0.3374013602733612,-0.333290189 5046234,-0.3292185664176941,-0.32613515853881836,-0.3209799826145172,-0.31888967 752456665,-0.312707781791687,-0.3115767538547516,-0.3044171929359436,-0.30421483 516693115,-0.2961137294769287,-0.2968105673789978,-0.287792831659317,-0.28936243 057250977,-0.2794452905654907,-0.2818763852119446,-0.2710641622543335,-0.2743810 713291168,-0.26264554262161255,-0.26692333817481995,-0.25418442487716675,-0.2595 4583287239075,-0.2456752061843872,-0.2522677481174469,-0.23711907863616943,-0.24 508249759674072,-0.22852902114391327,-0.2379646897315979,-0.21992439031600952,-0 .23087120056152344,-0.21132147312164307,-0.2237369269132614,-0.2027295082807541, -0.21647736430168152,-0.1941550076007843,-0.20900630950927734,-0.185608595609664 92,-0.2012595534324646,-0.17710696160793304,-0.1932099461555481,-0.1686650216579 4373,-0.18486526608467102,-0.16027802228927612,-0.17625293135643005,-0.151906520 12825012,-0.16740408539772034,-0.14347873628139496,-0.1583499312400818,-0.134919 13676261902,-0.1491309106349945,-0.1261826902627945,-0.13980576395988464,-0.1172 7005243301392,-0.13044916093349457,-0.10821488499641418,-0.12113991379737854,-0. 09906162321567535,-0.11194673925638199,-0.08985001593828201,-0.10291466861963272 ,-0.08060862869024277,-0.09405313432216644,-0.07135115563869476,-0.0853361561894 4168,-0.06207706779241562,-0.07672415673732758,-0.0527779683470726,-0.0681973919 2724228,-0.04344412684440613,-0.0597696527838707,-0.03406934440135956,-0.0514701 6420960426,-0.024658385664224625,-0.04331723600625992,-0.015245087444782257,-0.0 35315826535224915,-0.0059119537472724915,-0.02747313305735588,0.0032121874392032 623,-0.01980186440050602,0.011983063071966171,-0.012294502928853035,0.0202839039 26610947,-0.004899730905890465,0.02805602177977562,0.0024668164551258087,0.03530 5388271808624,0.009879233315587044,0.04209442436695099,0.017361540347337723,0.04 8530109226703644,0.024878814816474915,0.054752327501773834,0.03234849125146866,0 .060921311378479004,0.039657074958086014,0.06720253825187683,0.04667987674474716 ,0.0737491250038147,0.053318336606025696,0.08068063110113144,0.05954745411872864 ,0.08805586397647858,0.06543652713298798,0.09584701061248779,0.07112129032611847 ,0.10393153131008148,0.0767485499382019,0.11212043464183807,0.08244599401950836, 0.12021806091070175,0.08833739906549454,0.1280810832977295,0.09456155449151993,0 .13564449548721313,0.10125024616718292,0.1429145187139511,0.10847346484661102,0. 14995212852954865,0.11621200293302536,0.15686100721359253,0.12438612431287766,0. 1637716144323349,0.13290725648403168,0.17080920934677124,0.1417008340358734,0.17 805525660514832,0.15069368481636047,0.18551437556743622,0.15979520976543427,0.19 309350848197937,0.16889125108718872,0.20060132443904877,0.1778457760810852,0.207 78822898864746,0.1865084320306778,0.2144312858581543,0.1947418451309204,0.220418 60222816467,0.20246091485023499,0.22577153146266937,0.20964892208576202,0.230588 3765220642,0.21632149815559387,0.23496666550636292,0.22246390581130981,0.2389624 1188049316,0.22799497842788696,0.24260258674621582,0.23279574513435364,0.2459189 2957687378,0.23678524792194366,0.248972088098526,0.23999035358428955,0.251852065 3247833,0.24255631864070892,0.2546519935131073,0.2446899116039276,0.257434666156 7688,0.24658453464508057,0.26022133231163025,0.24839113652706146,0.2630153596401 2146,0.25023961067199707,0.2658284306526184,0.2522519826889038,0.268677294254303 ,0.25450819730758667,0.2715691924095154,0.25701192021369934,0.27451860904693604, 0.2597254514694214,0.2775866389274597,0.2626533806324005,0.2808864414691925,0.26 58756375312805,0.28452950716018677,0.2694924473762512,0.28857049345970154,0.2735 5408668518066,0.29300549626350403,0.2780616283416748,0.29779940843582153,0.28300 735354423523,0.3028869032859802,0.28836995363235474,0.3081473112106323,0.2940548 062324524,0.3134058713912964,0.2998628318309784,0.3184770941734314,0.30553561449 050903,0.3232085108757019,0.31082984805107117,0.3274981677532196,0.3155636787414 551,0.33131009340286255,0.3196343183517456,0.334693044424057,0.3230331242084503, 0.3377578556537628,0.3258383572101593,0.34059277176856995,0.3281615078449249,0.3 431852161884308,0.3300800919532776,0.3454265296459198,0.3316163420677185,0.34718 337655067444,0.33276650309562683,0.34835436940193176,0.33353832364082336,0.34888 52083683014,0.33397525548934937,0.34878212213516235,0.33417609333992004,0.348130 82218170166,0.3342997133731842,0.3470771014690399,0.33452531695365906,0.34577572 34573364,0.3350061774253845,0.34440669417381287,0.33591654896736145,0.3430499434 4711304,0.3373476266860962,0.3417830169200897,0.3393924832344055,0.3406777977943 4204,0.34211084246635437,0.33976149559020996,0.3454728424549103,0.33902826905250 55,0.3493778705596924,0.33848339319229126,0.3537086248397827,0.33814239501953125 ,0.35832053422927856,0.33798927068710327,0.36298319697380066,0.3379756510257721, 0.367387592792511,0.33807292580604553,0.37124550342559814,0.33829233050346375,0. 37436410784721375,0.3386392295360565,0.37662485241889954,0.3390907347202301,0.37 79562711715698,0.3396499454975128,0.3783873915672302,0.34038105607032776,0.37810 13786792755,0.3413267135620117,0.37735795974731445,0.3423877954483032,0.37633788 58566284,0.3433307409286499,0.3750898241996765,0.34391772747039795,0.37361714243 888855,0.3439900279045105,0.3719516694545746,0.3434370756149292,0.37012267112731 934,0.34218382835388184,0.36813002824783325,0.3402870297431946,0.366023212671279 9,0.3380109965801239,0.36398354172706604,0.3357272148132324,0.36226099729537964, 0.33372917771339417,0.3610217273235321,0.3321700394153595,0.36028921604156494,0. 3311302959918976,0.36000531911849976,0.33064302802085876,0.36006680130958557,0.3 306368291378021,0.3602849245071411,0.33094003796577454,0.36038947105407715,0.331 3939571380615,0.36014264822006226,0.3319329023361206,0.3594413101673126,0.332550 91309547424,0.3583035469055176,0.333262175321579,0.35682225227355957,0.334120571 61331177,0.35518160462379456,0.33519402146339417,0.3536582589149475,0.3364360332 4890137,0.35249993205070496,0.33761170506477356,0.3517909646034241,0.33839920163 1546,0.3514852523803711,0.3385346829891205,0.35154107213020325,0.337834209203720 1,0.35194092988967896,0.3361801505088806,0.35261058807373047,0.3336349129676819, 0.35345658659935,0.3305266201496124,0.35447537899017334,0.32715994119644165,0.35 55591106414795,0.32322508096694946,0.3559531271457672,0.3175520896911621,0.35401 16250514984,0.3086777627468109,0.3478134274482727,0.2957591712474823,0.336183428 76434326,0.2788720726966858,0.31906312704086304,0.25848230719566345,0.2969681620 5978394,0.23497503995895386,0.2704699635505676,0.20897898077964783,0.24048924446 105957,0.18193909525871277,0.20885144174098969,0.1558382213115692,0.177981719374 65668,0.13207562267780304,0.14971758425235748,0.11074550449848175,0.124490015208 72116,0.09111859649419785,0.10174734145402908,0.07264640182256699,0.081006743013 8588,0.055400654673576355,0.06237410008907318,0.03992924839258194,0.046395827084 77974,0.02733016386628151,0.034069087356328964,0.019738657400012016,0.0273500829 93507385,0.020428039133548737,0.02936420403420925,0.03283391892910004,0.04347808 286547661,0.058930449187755585,0.0716032087802887,0.09811178594827652,0.11300875 246524811,0.14728772640228271,0.1644417643547058,0.20188573002815247,0.221186295 1517105,0.25695711374282837,0.27817416191101074,0.30791592597961426,0.3306912481 7848206,0.350985586643219,0.3748006820678711,0.3835350275039673,0.40769463777542 114,0.40427765250205994,0.4279574751853943,0.4132527709007263,0.4356182813644409 ,0.41165298223495483,0.43197256326675415,0.4015686511993408,0.41925567388534546, 0.38561078906059265,0.4002455770969391,0.366449773311615,0.37785640358924866,0.3 4647783637046814,0.3547900319099426,0.3276962637901306,0.3333113193511963,0.3116 696774959564,0.3151399791240692,0.29941827058792114,0.3013957142829895,0.2913617 491722107,0.2925622761249542,0.2874203622341156,0.28850555419921875,0.2871525287 628174,0.2885909676551819,0.2898179292678833,0.29186418652534485,0.2944632172584 5337,0.297207772731781,0.30010247230529785,0.3034416735172272,0.3058544397354126 ,0.30943411588668823,0.3109593391418457,0.314269483089447,0.31481796503067017,0. 31740063428878784,0.3171224594116211,0.3186621069908142,0.3178839385509491,0.318 1406259536743,0.31725195050239563,0.316037118434906,0.31534016132354736,0.312621 26564979553,0.31226426362991333,0.3082268536090851,0.308246910572052,0.303196132 18307495,0.3035838305950165,0.29779696464538574,0.2985372245311737,0.29221609234 809875,0.29333794116973877,0.2866310179233551,0.2882595360279083,0.2812523841857 91,0.28361350297927856,0.27627500891685486,0.27966001629829407,0.271820247173309 3,0.27655261754989624,0.2679551839828491,0.2743443250656128,0.26474589109420776, 0.2729955017566681,0.26223862171173096,0.27235203981399536,0.2603779137134552,0. 2721307873725891,0.2589706778526306,0.2719634175300598,0.2577463686466217,0.2715 0285243988037,0.2564413845539093,0.27051520347595215,0.25483351945877075,0.26887 375116348267,0.2527434229850769,0.26650017499923706,0.25004786252975464,0.263380 4380893707,0.2466958910226822,0.25963321328163147,0.2426961213350296,0.255464315 4144287,0.23809194564819336,0.2510066032409668,0.23295894265174866,0.24626436829 566956,0.227402463555336,0.24122701585292816,0.2215176224708557,0.23593056201934 814,0.2153458595275879,0.23035825788974762,0.20890077948570251,0.224396705627441 4,0.20224258303642273,0.21798449754714966,0.19549128413200378,0.2112288475036621 ,0.1887451559305191,0.20431013405323029,0.18202441930770874,0.19738520681858063, 0.17536643147468567,0.19055110216140747,0.16883938014507294,0.1839984655380249,0 .16257824003696442,0.17794819176197052,0.15667736530303955,0.1724846512079239,0. 15111711621284485,0.16753928363323212,0.14582769572734833,0.1630040556192398,0.1 4079080522060394,0.1587768942117691,0.13602802157402039,0.15470734238624573,0.13 150058686733246,0.1505787968635559,0.1270667314529419,0.1461588740348816,0.12255 257368087769,0.14124834537506104,0.11782138049602509,0.1357063204050064,0.112752 2885799408,0.12947916984558105,0.10719695687294006,0.12260617315769196,0.1010220 1998233795,0.11518053710460663,0.09419147670269012,0.1073247492313385,0.08678228 408098221,0.09920886158943176,0.07892881333827972,0.09102530777454376,0.07078107 446432114,0.08291636407375336,0.06251612305641174,0.07497084140777588,0.05435857 9218387604,0.06728880852460861,0.0465414822101593,0.05996242165565491,0.03921813 145279884,0.05297655612230301,0.03241787850856781,0.046202197670936584,0.0260835 73698997498,0.03949197754263878,0.020098615437746048,0.03272058069705963,0.01425 711065530777,0.025761678814888,0.0082787424325943,0.01850035786628723,0.00190845 13187408447,0.010851874947547913,-0.005016744136810303,0.0027487576007843018,-0. 01258590817451477,-0.005826480686664581,-0.020820386707782745,-0.014778167009353 638,-0.02963588386774063,-0.023947954177856445,-0.03883322328329086,-0.033239111 30428314,-0.04814644157886505,-0.04261285811662674,-0.05732439458370209,-0.05197 104811668396,-0.06621380895376205,-0.061148837208747864,-0.07475987076759338,-0. 07004342973232269,-0.0829121470451355,-0.07866489887237549,-0.09059935808181763, -0.08702351152896881,-0.0978403389453888,-0.0950472503900528,-0.1047862023115158 1,-0.10268557071685791,-0.1115979254245758,-0.11004021763801575,-0.1183612346649 1699,-0.11728629469871521,-0.1251428872346878,-0.12451077997684479,-0.1320313811 302185,-0.1317625343799591,-0.13910743594169617,-0.1392054706811905,-0.146423473 95420074,-0.1470346599817276,-0.1539798080921173,-0.15527844429016113,-0.1617045 1045036316,-0.16384781897068024,-0.16952913999557495,-0.17271344363689423,-0.177 47634649276733,-0.181866854429245,-0.18558655679225922,-0.19120028614997864,-0.1 938110888004303,-0.20056191086769104,-0.20207038521766663,-0.20982769131660461,- 0.21033170819282532,-0.21886520087718964,-0.21855482459068298,-0.227587252855300 9,-0.22667238116264343,-0.2360503226518631,-0.23466581106185913,-0.2443537116050 7202,-0.24255190789699554,-0.2525116801261902,-0.2503094971179962,-0.26056379079 818726,-0.25791803002357483,-0.2686459720134735,-0.265402227640152,-0.2768164277 076721,-0.2727625370025635,-0.2849910259246826,-0.27996397018432617,-0.293118476 8676758,-0.28702080249786377,-0.3011983036994934,-0.29396578669548035,-0.3091249 167919159,-0.3007667064666748,-0.3167557120323181,-0.3074030876159668,-0.3240934 0143203735,-0.3139421045780182,-0.33121705055236816,-0.32043159008026123,-0.3381 509780883789,-0.32684582471847534,-0.34494221210479736,-0.3331971764564514,-0.35 17029881477356,-0.3395477533340454,-0.35848891735076904,-0.345898300409317,-0.36 53014898300171,-0.35221612453460693,-0.37220367789268494,-0.3585188388824463,-0. 3792582154273987,-0.3648207187652588,-0.38640761375427246,-0.37110307812690735,- 0.393545538187027,-0.37739109992980957,-0.40060749650001526,-0.3837079405784607, -0.4075193405151367,-0.3899625539779663,-0.4141964614391327,-0.3960525691509247, -0.42061641812324524,-0.4020005464553833,-0.42677319049835205,-0.407833874225616 46,-0.4326091706752777,-0.4134617745876312,-0.4380987286567688,-0.41878932714462 28,-0.44331538677215576,-0.4238043427467346,-0.4483404755592346,-0.4285103082656 8604,-0.45318907499313354,-0.4329345226287842,-0.45785045623779297,-0.4371677339 076996,-0.46233269572257996,-0.4412577748298645,-0.46668684482574463,-0.44517225 02708435,-0.47099173069000244,-0.44895413517951965,-0.47526106238365173,-0.45273 566246032715,-0.4794234335422516,-0.4565529525279999,-0.48346206545829773,-0.460 336834192276,-0.487442284822464,-0.4640561640262604,-0.49133917689323425,-0.4676 953852176666,-0.49503153562545776,-0.4711844027042389,-0.49849700927734375,-0.47 44860529899597,-0.5017921328544617,-0.4776119589805603,-0.5048731565475464,-0.48 050105571746826,-0.5076683163642883,-0.48306500911712646,-0.5102288126945496,-0. 4853420853614807,-0.5126030445098877,-0.48742344975471497,-0.5147296190261841,-0 .4893101155757904,-0.5166022181510925,-0.49098825454711914,-0.518316924571991,-0 .4925043284893036,-0.519883930683136,-0.4938730001449585,-0.5212352275848389,-0. 4950759708881378,-0.522398829460144,-0.4961559772491455,-0.5234311819076538,-0.4 971415400505066,-0.5242810845375061,-0.4979563057422638,-0.5249060392379761,-0.4 9855610728263855,-0.5253487229347229,-0.4990082085132599,-0.525596022605896,-0.4 993344843387604,-0.5255888104438782,-0.49945956468582153,-0.5253779292106628,-0. 49935832619667053,-0.5250194072723389,-0.4990674555301666,-0.5244154930114746,-0 .4985846281051636,-0.5235034823417664,-0.4979121685028076,-0.522404134273529,-0. 49709317088127136,-0.5211771130561829,-0.49610140919685364,-0.5196942687034607,- 0.4948584735393524,-0.517902135848999,-0.4933931529521942,-0.5159035325050354,-0 .4917854070663452)
31
32 ,
33
34 new Array(-0.5137231945991516,-0.49000853300094604,-0.5113903284072876,-0.488100 528717041,-0.5088633298873901,-0.48603248596191406,-0.5061661005020142,-0.483784 7948074341,-0.5032707452774048,-0.4813406467437744,-0.5001466274261475,-0.478753 4177303314,-0.49685049057006836,-0.4760761260986328,-0.49342668056488037,-0.4732 472896575928,-0.4898289442062378,-0.47021234035491943,-0.4860019385814667,-0.467 038094997406,-0.48194417357444763,-0.4637599587440491,-0.4776892066001892,-0.460 30497550964355,-0.4732748866081238,-0.45665597915649414,-0.46869802474975586,-0. 4528677761554718,-0.46391454339027405,-0.4489230215549469,-0.45892152190208435,- 0.4447893500328064,-0.4537576138973236,-0.44052648544311523,-0.4484187066555023, -0.4361549913883209,-0.44290804862976074,-0.4315980076789856,-0.4373047649860382 ,-0.4268632233142853,-0.4316164255142212,-0.42204850912094116,-0.425716727972030 64,-0.41714534163475037,-0.4195888936519623,-0.41207751631736755,-0.413399130105 9723,-0.40687015652656555,-0.40720468759536743,-0.401580274105072,-0.40087157487 86926,-0.39620015025138855,-0.3943476378917694,-0.39074966311454773,-0.387730658 0543518,-0.3852769136428833,-0.38106489181518555,-0.3797324001789093,-0.37430536 74697876,-0.3740321695804596,-0.3674202561378479,-0.3681885004043579,-0.36038067 93689728,-0.36222216486930847,-0.3531627357006073,-0.35607028007507324,-0.345806 18143081665,-0.3496861755847931,-0.3383495807647705,-0.3430899977684021,-0.33075 21343231201,-0.3362985849380493,-0.3229793906211853,-0.3293401896953583,-0.31505 8171749115,-0.32228440046310425,-0.30699875950813293,-0.315151184797287,-0.29878 74746322632,-0.30789127945899963,-0.29045185446739197,-0.30051279067993164,-0.28 202396631240845,-0.29308781027793884,-0.2735027074813843,-0.2856077551841736,-0. 2649257779121399,-0.27798640727996826,-0.2563796639442444,-0.2702132761478424,-0 .24790993332862854,-0.2623620629310608,-0.23951497673988342,-0.2544562816619873, -0.23120757937431335,-0.24646149575710297,-0.22298353910446167,-0.23839533329010 01,-0.21476247906684875,-0.2303106039762497,-0.20644812285900116,-0.222194939851 76086,-0.1980222761631012,-0.21401672065258026,-0.18950195610523224,-0.205814197 6594925,-0.18083666265010834,-0.19762080907821655,-0.17196400463581085,-0.189405 21776676178,-0.1629542112350464,-0.18119071424007416,-0.15394656360149384,-0.173 07928204536438,-0.14496801793575287,-0.16509070992469788,-0.13598699867725372,-0 .1571563482284546,-0.12707515060901642,-0.14925628900527954,-0.11832299828529358 ,-0.14137746393680573,-0.10971798002719879,-0.13344717025756836,-0.1012502536177 6352,-0.1254633218050003,-0.09293901920318604,-0.11750493198633194,-0.0846833214 1637802,-0.10955502837896347,-0.07634306699037552,-0.10155733674764633,-0.067943 53574514389,-0.09359082579612732,-0.0595434196293354,-0.08573566377162933,-0.051 0471872985363,-0.0779324322938919,-0.042377568781375885,-0.07014453411102295,-0. 03362184390425682,-0.06238359585404396,-0.02486787736415863,-0.05453343316912651 ,-0.01613004505634308,-0.0464804507791996,-0.007472425699234009,-0.0383221507072 4487,0.0009909719228744507,-0.030160509049892426,0.00918087363243103,-0.02193778 00822258,0.01705806702375412,-0.013661175966262817,0.024636313319206238,-0.00543 17861795425415,0.031981587409973145,0.002793937921524048,0.03918281942605972,0.0 11097252368927002,0.0463932529091835,0.01936565339565277,0.05372148007154465,0.0 2748739719390869,0.0609898716211319,0.03553415834903717,0.06804285198450089,0.04 353989660739899,0.07528826594352722,0.05137953907251358,0.08313757926225662,0.05 894308537244797,0.09104142338037491,0.06621246039867401,0.09819495677947998,0.07 324355840682983,0.10493610799312592,0.08019237220287323,0.11213169991970062,0.08 720662444829941,0.11955674737691879,0.09431906044483185,0.1262604296207428,0.101 57740116119385,0.13215814530849457,0.10906890779733658,0.1380482316017151,0.1167 1863496303558,0.14434769749641418,0.12434201687574387,0.15068860352039337,0.1318 7485933303833,0.15661653876304626,0.13927049934864044,0.1622142195701599,0.14633 619785308838,0.16797444224357605,0.15291756391525269,0.17413830757141113,0.15904 036164283752,0.18042199313640594,0.16477809846401215,0.18657466769218445,0.17019 487917423248,0.19275277853012085,0.1753728985786438,0.1990659385919571,0.1803634 762763977,0.20531892776489258,0.18523544073104858,0.21139419078826904,0.19012044 370174408,0.21729907393455505,0.1950494647026062,0.222874253988266,0.19997343420 98236,0.228011816740036,0.2050219029188156,0.23290342092514038,0.210371196269989 ,0.23768731951713562,0.21597397327423096,0.24231691658496857,0.2218102216720581, 0.2469380795955658,0.2279721051454544,0.2518135607242584,0.23417289555072784,0.2 5691327452659607,0.23994697630405426,0.26207083463668823,0.24547690153121948,0.2 672507166862488,0.25112250447273254,0.27232447266578674,0.25628194212913513,0.27 704593539237976,0.260145902633667,0.28139808773994446,0.26323676109313965,0.2855 0174832344055,0.2666539251804352,0.2893005907535553,0.27030205726623535,0.292754 97794151306,0.27338463068008423,0.29604265093803406,0.2760785222053528,0.2992770 3738212585,0.27935171127319336,0.302398145198822,0.2835429012775421,0.3054103255 2719116,0.28810322284698486,0.3083387315273285,0.29246801137924194,0.31105777621 269226,0.2966208755970001,0.3135039806365967,0.3009149432182312,0.31568992137908 936,0.30537116527557373,0.3176348805427551,0.30956944823265076,0.319342285394668 6,0.31316643953323364,0.3208901584148407,0.3162834644317627,0.3223532438278198,0 .31914156675338745,0.32372766733169556,0.3216931223869324,0.3250102996826172,0.3 238937258720398,0.32619887590408325,0.32591819763183594,0.32724729180336,0.32787 463068962097,0.32814714312553406,0.32968413829803467,0.3289378583431244,0.331348 7470149994,0.32962244749069214,0.33299732208251953,0.33025267720222473,0.3346602 3206710815,0.3309943675994873,0.33627644181251526,0.33193162083625793,0.33788472 414016724,0.3330099880695343,0.3396027088165283,0.33427178859710693,0.3414598703 3843994,0.33584967255592346,0.3433850407600403,0.3376842141151428,0.345325887203 21655,0.3395330309867859,0.34727874398231506,0.34122443199157715,0.3492124080657 959,0.3427020013332367,0.3510623872280121,0.34393221139907837,0.3528021872043609 6,0.3448846936225891,0.3544255197048187,0.345511257648468,0.35589224100112915,0. 3457866907119751,0.35723280906677246,0.34584540128707886,0.3586302697658539,0.34 591227769851685,0.3602270781993866,0.3460692763328552,0.36193689703941345,0.3463 064730167389,0.36358287930488586,0.34671613574028015,0.36508455872535706,0.34736 17732524872,0.3663909435272217,0.3480914235115051,0.36737513542175293,0.34872686 862945557,0.36788907647132874,0.3492404818534851,0.3678523302078247,0.3495707213 8786316,0.3672947287559509,0.3495337665081024,0.3663550615310669,0.3490635156631 47,0.36519855260849,0.34828177094459534,0.3639591932296753,0.34726089239120483,0 .3627973198890686,0.3459911048412323,0.36188578605651855,0.3445943593978882,0.36 128389835357666,0.3432638645172119,0.360962837934494,0.3419889211654663,0.360964 50686454773,0.3406458795070648,0.36137494444847107,0.33931952714920044,0.3621819 9133872986,0.3382019102573395,0.36331093311309814,0.3372468650341034,0.364741653 20396423,0.33627501130104065,0.3664785623550415,0.33529964089393616,0.3684471249 5803833,0.3344076871871948,0.3704620599746704,0.33351296186447144,0.372295439243 31665,0.3325388431549072,0.3738071024417877,0.3315884470939636,0.374964773654937 74,0.33070746064186096,0.3756759762763977,0.32981252670288086,0.3757368624210357 7,0.3289702832698822,0.3750419616699219,0.3283597528934479,0.37365415692329407,0 .32795339822769165,0.37158074975013733,0.32762959599494934,0.36872994899749756,0 .32744911313056946,0.36513349413871765,0.327328085899353,0.36083292961120605,0.3 2647183537483215,0.3553459048271179,0.3234274387359619,0.3475061357021332,0.3167 162835597992,0.3361029028892517,0.30550384521484375,0.3206931948661804,0.2899272 14384079,0.301763653755188,0.2707938551902771,0.28021207451820374,0.248929217457 7713,0.25686004757881165,0.22513742744922638,0.23259875178337097,0.2009105384349 823,0.20892499387264252,0.17861606180667877,0.18800251185894012,0.16042542457580 566,0.1717921644449234,0.14698050916194916,0.16082054376602173,0.137036055326461 8,0.15366528928279877,0.12817446887493134,0.14766347408294678,0.1180309355258941 7,0.14030992984771729,0.10540719330310822,0.1303406059741974,0.09064079821109772 ,0.11794678121805191,0.07512999325990677,0.1043713390827179,0.06083159148693085, 0.09155081957578659,0.05038084089756012,0.08213365077972412,0.047207534313201904 ,0.0794491171836853,0.05470795929431915,0.08676983416080475,0.07482234388589859, 0.1060170903801918,0.10722704231739044,0.13688474893569946,0.1495549976825714,0. 17697802186012268,0.19809097051620483,0.22259706258773804,0.24851331114768982,0. 2695668935775757,0.29662609100341797,0.3139076828956604,0.3389118015766144,0.352 3290455341339,0.37274593114852905,0.3825106620788574,0.39645275473594666,0.40318 10462474823,0.40939658880233765,0.414045125246048,0.41200780868530273,0.41564178 466796875,0.40561020374298096,0.4092215895652771,0.3921266198158264,0.3965846300 125122,0.3738146126270294,0.37977224588394165,0.3530846834182739,0.3607764244079 59,0.33230307698249817,0.34146547317504883,0.3134949207305908,0.3235333561897278 ,0.29809248447418213,0.30826473236083984,0.2869272828102112,0.2963654398918152,0 .2803330719470978,0.2880798876285553,0.2781458795070648,0.2833423912525177,0.279 7280550003052,0.28175947070121765,0.28418320417404175,0.2826170325279236,0.29055 237770080566,0.28502604365348816,0.29783299565315247,0.2880639433860779,0.305053 7407398224,0.2908852994441986,0.31150898337364197,0.29286256432533264,0.31685498 356819153,0.29363778233528137,0.3209408223628998,0.29303422570228577,0.323654919 8627472,0.2910189926624298,0.3249479830265045,0.2877538502216339,0.3248835802078 247,0.28355008363723755,0.3236102759838104,0.2787551283836365,0.3212985694408417 ,0.27375152707099915,0.31806454062461853,0.2689562439918518,0.31393393874168396, 0.2646617591381073,0.30892059206962585,0.2609400451183319,0.3031262159347534,0.2 577987313270569,0.2967284619808197,0.2553180754184723,0.2899474501609802,0.25354 68339920044,0.2830822467803955,0.2523913085460663,0.27646496891975403,0.25167721 50993347,0.27031591534614563,0.2512190043926239,0.2647823095321655,0.25084474682 80792,0.25996577739715576,0.25032496452331543,0.25594156980514526,0.249491512775 42114,0.2525883615016937,0.24821141362190247,0.24961310625076294,0.2463173717260 3607,0.24674704670906067,0.24365116655826569,0.24378450214862823,0.2401501387357 7118,0.2405320256948471,0.23586493730545044,0.23689839243888855,0.23092935979366 302,0.23295597732067108,0.22551023960113525,0.22881460189819336,0.21975609660148 62,0.22456791996955872,0.21381458640098572,0.22040949761867523,0.207882672548294 07,0.21659861505031586,0.20215559005737305,0.2132403701543808,0.1967152506113052 4,0.21023744344711304,0.19153043627738953,0.20741993188858032,0.1865344047546386 7,0.20455028116703033,0.18163129687309265,0.2012627124786377,0.17666466534137726 ,0.19717349112033844,0.17145000398159027,0.19201600551605225,0.1658248007297516, 0.18561972677707672,0.15966778993606567,0.1779114007949829,0.15292170643806458,0 .1690191626548767,0.14558954536914825,0.15924739837646484,0.13767898082733154,0. 14891751110553741,0.12920112907886505,0.1383480280637741,0.12023596465587616,0.1 2793944776058197,0.1109166145324707,0.11810696125030518,0.10136047005653381,0.10 913249105215073,0.09172657132148743,0.1011713445186615,0.08230516314506531,0.094 3390354514122,0.07342809438705444,0.08870010823011398,0.06534087657928467,0.0842 1285450458527,0.058251891285181046,0.0807342454791069,0.0523688979446888,0.07804 303616285324,0.047738026827573776,0.07584884017705917,0.04413424804806709,0.0738 0872964859009,0.04118501394987106,0.07154276967048645,0.038487426936626434,0.068 6652734875679,0.03558041900396347,0.06486204266548157,0.0319744274020195,0.05993 484705686569,0.027289263904094696,0.05376472324132919,0.021312803030014038,0.046 30828648805618,0.013984277844429016,0.03766322135925293,0.005423426628112793,0.0 2805314213037491,-0.0040769875049591064,0.01772705465555191,-0.01415500044822692 9,0.0069579556584358215,-0.024425312876701355,-0.003892548382282257,-0.034451521 933078766,-0.014451511204242706,-0.04383676499128342,-0.024486973881721497,-0.05 239381641149521,-0.03391285985708237,-0.06015949696302414,-0.04270743578672409,- 0.06728138774633408,-0.05091959983110428,-0.07397614419460297,-0.058692574501037 6,-0.0805329903960228,-0.0662003830075264,-0.08724270761013031,-0.07359982281923 294,-0.09432008862495422,-0.08105243742465973,-0.10188722610473633,-0.0886934027 0757675,-0.10994412750005722,-0.09654761105775833,-0.11832835525274277,-0.104541 89777374268,-0.1267707496881485,-0.11260934174060822,-0.13502219319343567,-0.120 74155360460281,-0.14292706549167633,-0.12895497679710388,-0.15042932331562042,-0 .13724792003631592,-0.15755988657474518,-0.14559385180473328,-0.1644189208745956 4,-0.1539762169122696,-0.1711602807044983,-0.16242380440235138,-0.17798106372356 415,-0.17097726464271545,-0.1850680112838745,-0.17961308360099792,-0.19250938296 318054,-0.1882379651069641,-0.20026762783527374,-0.19674423336982727,-0.20821866 393089294,-0.2050238698720932,-0.21618175506591797,-0.2129627764225006,-0.223947 22700119019,-0.22049042582511902,-0.23134419322013855,-0.22762390971183777,-0.23 82839024066925,-0.23443394899368286,-0.24473749101161957,-0.24101610481739044,-0 .2507375478744507,-0.24751800298690796,-0.25642403960227966,-0.2541276514530182, -0.26202377676963806,-0.26100021600723267,-0.26775965094566345,-0.26823353767395 02,-0.2738083004951477,-0.27590224146842957,-0.28030723333358765,-0.284046173095 7031,-0.2873222529888153,-0.2926250100135803,-0.2948102355003357,-0.301531702280 04456,-0.30264827609062195,-0.3106444776058197,-0.31068146228790283,-0.319839328 52745056,-0.3187355399131775,-0.328976571559906,-0.32663577795028687,-0.33791092 0381546,-0.334236741065979,-0.3465123176574707,-0.34141790866851807,-0.354682296 5145111,-0.34808236360549927,-0.3623671531677246,-0.3542081117630005,-0.36956351 99546814,-0.3598801791667938,-0.3763040602207184,-0.36523255705833435,-0.3826392 590999603,-0.37037503719329834,-0.38862234354019165,-0.3753855526447296,-0.39430 0252199173,-0.38032299280166626,-0.3997267782688141,-0.3852221369743347,-0.40498 611330986023,-0.39010003209114075,-0.41017886996269226,-0.39498022198677063,-0.4 1537636518478394,-0.3998861610889435,-0.4206025004386902,-0.404814749956131,-0.4 2585769295692444,-0.4097353518009186,-0.4311356544494629,-0.4146151840686798,-0. 43641966581344604,-0.4194323718547821,-0.44168272614479065,-0.42417213320732117, -0.44688862562179565,-0.4288170039653778,-0.45198318362236023,-0.433341622352600 1,-0.45690152049064636,-0.43771636486053467,-0.46159815788269043,-0.441922336816 7877,-0.46606379747390747,-0.4459584057331085,-0.4703110158443451,-0.44983175396 91925,-0.4743539094924927,-0.45354267954826355,-0.4781973659992218,-0.4570796489 715576,-0.4818352460861206,-0.4604245722293854,-0.4852607846260071,-0.4635674059 391022,-0.4884822368621826,-0.46651771664619446,-0.49152228236198425,-0.46929827 332496643,-0.4943970739841461,-0.4719245731830597,-0.4971011281013489,-0.4743885 397911072,-0.4996146559715271,-0.47666504979133606,-0.5019261240959167,-0.478735 17870903015,-0.5040473341941833,-0.4806043803691864,-0.5060036182403564,-0.48229 50065135956,-0.5078047513961792,-0.4838182032108307,-0.5094174146652222,-0.48514 917492866516,-0.5107952952384949,-0.48625442385673523,-0.5120333433151245,-0.487 2269034385681,-0.5131012201309204,-0.48804327845573425,-0.5139797925949097,-0.48 869040608406067,-0.5146780014038086,-0.4891781508922577,-0.5152041912078857,-0.4 8951324820518494,-0.515548050403595,-0.4896860122680664,-0.5156898498535156,-0.4 896797835826874,-0.5156195759773254,-0.4894915819168091,-0.5153493285179138,-0.4 891391396522522,-0.5149028897285461,-0.48864948749542236,-0.5142913460731506,-0. 4880334436893463,-0.5134984850883484,-0.4872722327709198,-0.512488603591919,-0.4 863273799419403,-0.5112295150756836,-0.4851687550544739,-0.5097134113311768,-0.4 8379451036453247,-0.5079579949378967,-0.48222753405570984,-0.5059928894042969,-0 .4804929196834564,-0.5038410425186157,-0.47860074043273926,-0.5015115737915039,- 0.4765486717224121,-0.49900615215301514,-0.474336177110672,-0.4963277280330658,- 0.4719712436199188,-0.4934810698032379,-0.46946513652801514,-0.49046316742897034 ,-0.4668181240558624,-0.48725906014442444,-0.46401435136795044,-0.48385322093963 623,-0.46102750301361084,-0.48024654388427734,-0.45783665776252747,-0.4764598906 0401917,-0.45443978905677795,-0.4725186824798584,-0.4508539140224457,-0.46843555 56964874,-0.44709959626197815,-0.46420466899871826,-0.44318661093711853,-0.45981 03165626526,-0.43911513686180115,-0.4552389979362488,-0.43489035964012146,-0.450 48898458480835,-0.43053045868873596,-0.4455726444721222,-0.42605772614479065,-0. 44050833582878113,-0.42148131132125854,-0.4353029131889343,-0.4167920649051666,- 0.4299459159374237,-0.41197001934051514,-0.4244259297847748,-0.40699324011802673 ,-0.41875192523002625,-0.40184569358825684,-0.41294997930526733,-0.3965213298797 6074,-0.40703457593917847,-0.39102911949157715,-0.40099236369132996,-0.385388314 7239685,-0.3947983682155609,-0.379618763923645,-0.38843998312950134,-0.373739868 4024811,-0.38192009925842285,-0.3677789866924286,-0.3752404749393463,-0.36176937 81852722,-0.3683972954750061,-0.3557269871234894,-0.3613896369934082,-0.34962818 026542664,-0.3542184829711914,-0.3434188663959503,-0.3468770682811737,-0.3370527 3270606995,-0.33935868740081787,-0.3305167555809021,-0.3316848576068878,-0.32382 51209259033,-0.32391107082366943,-0.31700414419174194,-0.3160881996154785,-0.310 0919723510742,-0.30822646617889404,-0.30314183235168457,-0.30031096935272217,-0. 29620152711868286,-0.29234418272972107,-0.28928154706954956,-0.2843485474586487, -0.28234970569610596,-0.2763228714466095,-0.2753610908985138,-0.2682276368141174 3,-0.2682851552963257,-0.2600266933441162,-0.26110294461250305,-0.25172695517539 98,-0.25379523634910583,-0.2433546781539917,-0.24635474383831024,-0.234911292791 36658,-0.2388077676296234,-0.22638581693172455,-0.23121139407157898,-0.217807203 53126526,-0.22362297773361206,-0.20924493670463562,-0.2160770297050476,-0.200738 20650577545,-0.20858462154865265,-0.19224850833415985,-0.20113219320774078,-0.18 370383977890015,-0.19366946816444397,-0.17507335543632507,-0.1861170083284378,-0 .16637077927589417,-0.17841219902038574,-0.1576009839773178,-0.17055565118789673 ,-0.148741215467453,-0.16260384023189545,-0.1397855281829834,-0.1546183526515960 7,-0.13077619671821594,-0.14663778245449066,-0.12177445739507675,-0.138696074485 7788,-0.11282160133123398,-0.1308393031358719,-0.10394816100597382,-0.1230967789 888382,-0.09519916772842407,-0.11543876677751541,-0.08661489933729172,-0.1077828 6308050156,-0.07818744331598282,-0.10004876554012299,-0.06986398994922638,-0.092 20118820667267,-0.06159941852092743,-0.08424758911132812,-0.053382694721221924,- 0.07621950656175613,-0.045204222202301025,-0.06816849112510681,-0.03702538460493 088,-0.06016238033771515,-0.02880621701478958,-0.05225931107997894,-0.0205509662 62817383,-0.04448086768388748,-0.012302905321121216,-0.0368179976940155,-0.00410 0114107131958,-0.029257260262966156,0.004040226340293884,-0.021784842014312744,0 .012096323072910309,-0.014362379908561707,0.020029857754707336,-0.00692225992679 59595,0.027816027402877808,0.0005943924188613892,0.035470448434352875,0.00819482 6543331146,0.043032705783843994,0.01583489030599594,0.05053168535232544,0.023451 924324035645,0.05797713249921799,0.030986033380031586,0.0653659775853157,0.03837 75532245636,0.07267146557569504,0.04556902498006821,0.07983017712831497,0.052524 030208587646,0.08677184581756592,0.05924297124147415,0.09348134696483612,0.06576 123833656311,0.10002323985099792,0.07214471697807312,0.10649779438972473,0.07848 785817623138,0.11298158764839172,0.08489495515823364,0.11951449513435364,0.09144 071489572525,0.12612414360046387,0.09814945608377457,0.13283410668373108,0.10502 535849809647,0.13964423537254333,0.11209312081336975,0.1465175449848175,0.119381 57677650452,0.15339161455631256,0.12685833871364594,0.16019673645496368,0.134401 26180648804,0.16686761379241943,0.14185304939746857,0.1733635812997818,0.1490966 0816192627,0.1796974241733551,0.15606801211833954,0.1859397441148758,0.162720113 99269104,0.19217726588249207,0.16901637613773346,0.19845536351203918,0.174973383 54587555,0.20475313067436218,0.1806771457195282,0.21099962294101715,0.1862298846 244812,0.21710392832756042,0.19168782234191895,0.22298064827919006,0.19706708192 825317,0.22857160866260529,0.20239682495594025,0.23385636508464813,0.20773008465 766907,0.23883312940597534,0.21309153735637665,0.24349918961524963,0.21845038235 18753,0.24790242314338684,0.22379642724990845,0.2520396411418915,0.2290711402893 0664,0.2559488117694855,0.23422284424304962,0.25970956683158875,0.23919197916984 558,0.263393372297287,0.24391581118106842,0.267034649848938,0.24837423861026764, 0.2706506550312042,0.25261327624320984,0.2742699086666107,0.25670841336250305,0. 27793049812316895,0.2607170045375824,0.2816528379917145,0.26468127965927124,0.28 542274236679077,0.26866281032562256,0.2891985774040222,0.2727433443069458,0.2929 27622795105,0.27697640657424927,0.2965553402900696,0.281343013048172,0.300024896 8601227,0.2857591211795807,0.3032781183719635,0.2901217043399811,0.3062680363655 0903,0.29434892535209656,0.3089806139469147,0.2983919382095337,0.311450213193893 43,0.30222588777542114,0.3137483298778534,0.30583545565605164,0.3159512281417846 7,0.3092058300971985,0.31811270117759705,0.31232768297195435,0.3202593922615051, 0.31520572304725647,0.3223975598812103,0.31785526871681213,0.3245071470737457,0. 3202867805957794,0.3265295624732971,0.32250121235847473,0.3283746540546417,0.324 5077431201935,0.32995209097862244,0.3263428807258606,0.33120396733283997,0.32806 700468063354,0.3321175277233124,0.32974594831466675,0.332724928855896,0.33144006 13307953,0.3331047594547272,0.3331981897354126,0.33337944746017456,0.33504244685 173035,0.33369430899620056,0.33695265650749207,0.3341796398162842,0.338876098394 3939,0.33491915464401245,0.3407588005065918,0.33593639731407166,0.34255740046501 16,0.3371926546096802,0.3442245423793793,0.3385861814022064,0.3457033038139343,0 .33996182680130005,0.3469533324241638,0.3411432206630707,0.34797245264053345,0.3 419831097126007,0.34877270460128784,0.34240439534187317,0.349345326423645,0.3424 091935157776,0.3496764302253723,0.34206104278564453,0.3498052656650543,0.3414638 340473175,0.34984588623046875,0.3407500982284546,0.3499334454536438,0.3400661349 29657,0.3501625061035156,0.33954519033432007,0.35058847069740295,0.3392795324325 5615,0.3512694835662842,0.3393147885799408,0.3522685766220093,0.3396602869033813 5,0.35359981656074524,0.3402900993824005,0.3551881015300751,0.34113386273384094, 0.356891930103302,0.3420846462249756,0.3585565388202667,0.34303149580955505,0.36 004331707954407,0.34388241171836853,0.3612383306026459,0.344550758600235,0.36207 38983154297,0.34493643045425415,0.3625553846359253,0.34495019912719727,0.3627432 882785797,0.3445638120174408,0.3626939058303833,0.3438241183757782,0.36242505908 01239,0.3428187668323517,0.361955851316452,0.3416540026664734,0.3613665103912353 5,0.3404766321182251,0.36078914999961853,0.33948343992233276,0.36033061146736145 ,0.3388586640357971,0.3600243926048279,0.3386785686016083,0.35987240076065063,0. 3388814926147461,0.3599116802215576,0.3393232822418213,0.3602134883403778,0.3398 509621620178,0.3608211874961853,0.34033000469207764,0.36171820759773254,0.340633 8095664978,0.3628429174423218,0.3406321406364441,0.36408504843711853,0.340205281 97288513,0.36525389552116394,0.3392985761165619,0.3661157488822937,0.33797401189 804077,0.36651450395584106,0.33633241057395935,0.3663865327835083,0.334231257438 65967,0.3655090928077698,0.33098775148391724,0.36318421363830566,0.3254320025444 031,0.3582824468612671,0.31642067432403564,0.3497524857521057,0.3034154772758484 ,0.33714884519577026,0.2866259813308716,0.3206908106803894,0.2667217552661896,0. 3009462058544159,0.24460870027542114,0.2786709666252136,0.22157062590122223,0.25 50315260887146,0.19945719838142395,0.2318165898323059,0.18042144179344177,0.2111 6450428962708,0.16621296107769012,0.19487625360488892,0.15751305222511292,0.1837 9129469394684,0.15367744863033295,0.1775275021791458,0.1528540998697281,0.174536 70501708984,0.1523725986480713,0.17242954671382904,0.14946037530899048,0.1686578 6910057068,0.1421966850757599,0.1614331305027008,0.13021358847618103,0.150368571 2814331,0.1146666407585144,0.13641898334026337,0.09762406349182129,0.12132522463 798523,0.08152692764997482,0.10719214379787445,0.0690765306353569,0.096471086144 44733,0.06320425868034363,0.09195809066295624,0.06661736965179443,0.096321523189 54468,0.08097830414772034,0.11124186217784882,0.10628615319728851,0.136736467480 65948,0.1408746838569641,0.17110836505889893,0.18190903961658478,0.2114475965499 878,0.22600501775741577,0.25431403517723083,0.269742876291275,0.2963105738162994 4,0.3100496232509613,0.334465891122818,0.3444552719593048,0.3664591610431671,0.3 712193965911865,0.3907356262207031,0.3893691599369049,0.4065472185611725,0.39870 530366897583,0.4139246642589569,0.399762898683548,0.4135751724243164,0.393675297 498703,0.4067177474498749,0.38196316361427307,0.3948909044265747,0.3663367927074 4324,0.37975722551345825,0.3485592305660248,0.36291125416755676,0.33033540844917 3,0.3457352817058563,0.3131875991821289,0.3293605446815491,0.29833319783210754,0 .314715713262558,0.28659963607788086,0.3025423586368561,0.27838796377182007,0.29 330089688301086,0.27369534969329834,0.2870592176914215,0.2722085118293762,0.2835 167944431305,0.27343297004699707,0.28217101097106934,0.2767919898033142,0.282486 6473674774,0.28169888257980347,0.2839967906475067,0.287453293800354,0.2861731350 4219055,0.29337456822395325,0.2885313928127289,0.29889997839927673,0.29071503877 63977,0.30358970165252686,0.2924956679344177,0.3070765733718872,0.29371619224548 34,0.3090613782405853,0.2942705750465393,0.30936959385871887,0.2941321134567261, 0.3079759478569031,0.29334330558776855,0.30495354533195496,0.29192981123924255,0 .30042779445648193,0.28982827067375183,0.2946094274520874,0.28691163659095764,0. 28784412145614624,0.2830761671066284,0.2805746793746948,0.27829596400260925,0.27 32338309288025,0.27262943983078003,0.26617667078971863,0.2662232518196106,0.2596 7875123023987,0.2593178451061249,0.25392982363700867,0.25221049785614014,0.24899 810552597046,0.24517767131328583,0.24483585357666016,0.2384195476770401,0.241359 6510887146,0.23206254839897156,0.23851251602172852,0.2261812388896942,0.23622904 71792221,0.22080402076244354,0.2343699336051941,0.21592116355895996,0.2327447235 584259,0.21152155101299286,0.23120062053203583,0.20762799680233002,0.22964338958 263397,0.20428478717803955,0.22795343399047852,0.20150336623191833,0.22592258453 36914,0.19921478629112244,0.22331036627292633,0.19725462794303894,0.219950109720 2301,0.19537846744060516,0.2157791703939438,0.19330155849456787,0.21079583466053 01,0.1907530426979065,0.2050483673810959,0.18751242756843567,0.1986832618713379, 0.18341392278671265,0.19196321070194244,0.17835724353790283,0.18518690764904022, 0.1723581850528717,0.17857202887535095,0.1655905842781067,0.17220304906368256,0. 15833452343940735,0.1660631000995636,0.1508517861366272,0.16009025275707245,0.14 331141114234924,0.15421250462532043,0.13582764565944672,0.14836138486862183,0.12 851488590240479,0.1424730122089386,0.12145394831895828,0.13647493720054626,0.114 61437493562698,0.13027110695838928,0.10786096751689911,0.12374910712242126,0.101 05203837156296,0.11681777238845825,0.09411272406578064,0.10944677889347076,0.087 0223417878151,0.10168059915304184,0.07978898286819458,0.09362272918224335,0.0724 7429341077805,0.08540672063827515,0.06521251797676086,0.07717220485210419,0.0581 5443769097328,0.06905745714902878,0.05138806998729706,0.06120937690138817,0.0449 33073222637177,0.053783953189849854,0.03879239410161972,0.04690658301115036,0.03 2958440482616425,0.040596701204776764,0.02735314890742302,0.03471525385975838,0. 021802255883812904,0.028989167883992195,0.01609962061047554,0.023105600848793983 ,0.010090738534927368,0.016811873763799667,0.003688353579491377,0.00996324233710 7658,-0.0031575006432831287,0.002516126027330756,-0.01046459749341011,-0.0054945 28915733099,-0.018199991434812546,-0.013961371034383774,-0.02628650888800621,-0. 02269870787858963,-0.03463251143693924,-0.03145888075232506,-0.04313544929027557 4,-0.039992015808820724,-0.051663435995578766,-0.0481300912797451,-0.06007212027 9073715,-0.05583951249718666,-0.06826416403055191,-0.063203364610672,-0.07621887 32624054,-0.07035306096076965,-0.08395205438137054,-0.077405646443367,-0.0914683 4164857864,-0.0844445675611496,-0.09877212345600128,-0.09153379499912262,-0.1059 095486998558,-0.09873364865779877,-0.1129670962691307,-0.1060994565486908,-0.120 02304196357727,-0.11366908252239227,-0.12711678445339203,-0.12144944071769714,-0 .13426116108894348,-0.12941238284111023,-0.1414547860622406,-0.13750536739826202 ,-0.1486705243587494,-0.14567208290100098,-0.1558549851179123,-0.153868690133094 8,-0.16296620666980743,-0.16206611692905426,-0.17001113295555115,-0.170243144035 33936,-0.17703497409820557,-0.17837992310523987,-0.1840820014476776,-0.186455458 40263367,-0.1911834478378296,-0.19444873929023743,-0.19838199019432068,-0.202350 6760597229,-0.20574374496936798,-0.21018409729003906,-0.21332889795303345,-0.218 01145374774933,-0.22115075588226318,-0.2259119749069214,-0.2291652262210846,-0.2 3393920063972473,-0.23729002475738525,-0.24209696054458618,-0.24542775750160217, -0.25034987926483154,-0.2534793019294739,-0.2586488425731659,-0.2613561749458313 ,-0.26694440841674805,-0.2689962685108185,-0.2751891016960144,-0.276373058557510 4,-0.2833440899848938,-0.28349441289901733,-0.2913866341114044,-0.29039308428764 343,-0.29930567741394043,-0.2971133589744568,-0.307087779045105,-0.3036977052688 5986,-0.3147141635417938,-0.31017762422561646,-0.322174072265625,-0.316573977470 39795,-0.3294750452041626,-0.32290157675743103,-0.3366340100765228,-0.3291724324 2263794,-0.34366050362586975,-0.33539602160453796,-0.3505537211894989,-0.3415790 2002334595,-0.35731732845306396,-0.34772777557373047,-0.3639681339263916,-0.3538 4660959243774,-0.37052851915359497,-0.3599322438240051,-0.3770109713077545,-0.36 596933007240295,-0.38341113924980164,-0.3719328045845032,-0.38971376419067383,-0 .3777962625026703,-0.395904541015625,-0.3835383355617523,-0.4019785523414612,-0. 3891465663909912,-0.4079378843307495,-0.39461749792099,-0.4137786626815796,-0.39 99519944190979,-0.41947999596595764,-0.4051479697227478,-0.42500901222229004,-0. 4101989269256592,-0.43034130334854126,-0.41509705781936646,-0.43548041582107544, -0.419841468334198,-0.44045743346214294,-0.42443957924842834,-0.4453069567680359 ,-0.4289010763168335,-0.4500356912612915,-0.4332244396209717,-0.4546093940734863 3,-0.4373864233493805,-0.4589867889881134,-0.4413633644580841,-0.463238507509231 57,-0.44523024559020996,-0.4673311710357666,-0.448950856924057,-0.47124043107032 776,-0.4524918496608734,-0.47496506571769714,-0.4558508098125458,-0.478512376546 85974,-0.45904505252838135,-0.4818895757198334,-0.46209385991096497,-0.485100716 35246277,-0.465003103017807,-0.48814600706100464,-0.46776124835014343,-0.4910202 920436859,-0.4703477919101715,-0.4937116503715515,-0.4727475941181183,-0.4962054 7890663147,-0.4749591052532196,-0.4984930157661438,-0.47699394822120667,-0.50057 73305892944,-0.47886550426483154,-0.5024701356887817,-0.48057854175567627,-0.504 1794180870056,-0.4821264445781708,-0.5057013034820557,-0.48349958658218384,-0.50 70251822471619,-0.4846949577331543,-0.5081486105918884,-0.48571905493736267,-0.5 09087085723877,-0.48658329248428345,-0.5098643898963928,-0.48729389905929565,-0. 5104926228523254,-0.4878467321395874,-0.5109565854072571,-0.48822930455207825,-0 .5112249851226807,-0.48842892050743103,-0.5112738013267517,-0.4884416460990906,- 0.5111058354377747,-0.4882757067680359,-0.510748028755188,-0.48794835805892944,- 0.510232150554657,-0.4874734580516815,-0.5095677971839905,-0.4868512451648712,-0 .5087315440177917,-0.4860653281211853,-0.507678210735321,-0.48509278893470764,-0 .5063723921775818,-0.48391830921173096,-0.5048164129257202,-0.4825429618358612,- 0.5030500292778015,-0.48098352551460266,-0.5011188387870789,-0.4792636036872864, -0.49903959035873413,-0.47740641236305237,-0.49679604172706604,-0.47542843222618 103,-0.4943670630455017,-0.4733349680900574,-0.4917532801628113,-0.4711179733276 367,-0.4889707863330841,-0.4687599241733551,-0.4860231280326843,-0.4662455618381 5,-0.48288673162460327,-0.46356797218322754,-0.4795306921005249,-0.4607272446155 548,-0.47594529390335083,-0.4577200412750244,-0.4721463918685913,-0.454535454511 64246,-0.46815428137779236,-0.45116257667541504,-0.4639756381511688,-0.447600990 53382874,-0.45960667729377747,-0.4438607692718506,-0.4550493359565735,-0.4399534 1658592224,-0.4503166675567627,-0.43588492274284363,-0.44542694091796875,-0.4316 6229128837585,-0.4403962194919586,-0.42730194330215454,-0.4352371096611023,-0.42 28253960609436,-0.42995357513427734,-0.41824057698249817,-0.4245334267616272,-0. 4135271906852722,-0.4189499616622925,-0.40864601731300354,-0.41317906975746155,- 0.4035632312297821,-0.40721848607063293,-0.3982691168785095,-0.4010874032974243, -0.3927765190601349,-0.394808292388916,-0.38710835576057434,-0.388395220041275,- 0.3812902271747589,-0.38185957074165344,-0.3753519058227539,-0.3752199113368988, -0.36932194232940674,-0.3684973418712616,-0.3632151782512665,-0.3616992533206939 7,-0.3570241928100586,-0.3548104763031006,-0.35072851181030273,-0.34780266880989 075,-0.3443145751953125,-0.34065306186676025,-0.33778634667396545,-0.33335644006 729126,-0.33115726709365845,-0.3259279131889343,-0.3244384527206421,-0.318397581 577301,-0.31764116883277893,-0.31079593300819397,-0.3107862174510956,-0.30313619 97127533,-0.3039014935493469,-0.2954109013080597,-0.2970024645328522,-0.28761050 10509491,-0.2900755703449249,-0.2797442376613617,-0.28308728337287903,-0.2718347 3110198975,-0.276012122631073,-0.26388534903526306,-0.2688480317592621,-0.255861 7889881134,-0.2616053521633148,-0.2477174997329712,-0.2542847990989685,-0.239437 72912025452,-0.24687598645687103,-0.23105037212371826,-0.23937740921974182,-0.22 259145975112915,-0.23180991411209106,-0.2140737771987915,-0.22420412302017212,-0 .20549969375133514,-0.2165747880935669,-0.1968955248594284,-0.20891325175762177, -0.18831145763397217,-0.20120587944984436,-0.1797809600830078,-0.193454280495643 62,-0.17129217088222504,-0.18567350506782532,-0.16281338036060333,-0.17787405848 503113,-0.15433865785598755,-0.17005404829978943,-0.14589308202266693,-0.1622116 5657043457,-0.1374913901090622,-0.1543581485748291,-0.1291087418794632,-0.146511 7484331131,-0.12070388346910477,-0.1386767327785492,-0.11226113140583038,-0.1308 3478808403015,-0.10379426181316376,-0.12296002358198166,-0.09531185775995255,-0. 115040622651577,-0.08679930120706558,-0.10708432644605637,-0.07824482023715973,- 0.09910604357719421,-0.06966972351074219,-0.09111578017473221,-0.061114951968193 054,-0.08311952650547028,-0.052599892020225525,-0.0751243606209755,-0.0441096276 0448456,-0.06713724881410599,-0.03562984615564346,-0.05916077643632889,-0.027179 516851902008,-0.05119534954428673,-0.01879652589559555,-0.04324730113148689,-0.0 10496310889720917,-0.03532908856868744,-0.002260833978652954,-0.0274476930499076 84,0.0059290193021297455,-0.019598383456468582,0.014061875641345978,-0.011778898 537158966,0.022105101495981216,-0.004013461992144585,0.03003648668527603,0.00364 57106471061707,0.03785426914691925,0.011150557547807693,0.04555843397974968,0.01 8492722883820534,0.053134094923734665,0.02570323459804058,0.060557737946510315,0 .03281550854444504,0.06780894100666046,0.039834704250097275,0.07486822456121445, 0.04675022140145302,0.0817132443189621,0.053574249148368835,0.08833374828100204, 0.060355111956596375,0.0947575718164444,0.06714500486850739,0.10105312615633011, 0.07395663857460022,0.10729896277189255,0.08076008409261703,0.11355335265398026, 0.0875229686498642,0.11985470354557037,0.09424670785665512,0.12623825669288635,0 .10095816850662231,0.1327301263809204,0.10766972601413727,0.1393246352672577,0.1 1436689645051956,0.14602354168891907,0.12108242511749268,0.15275464951992035,0.1 2784253060817719,0.15944001078605652,0.13467952609062195,0.166034996509552,0.141 6047364473343,0.17252594232559204,0.1485820859670639,0.17891503870487213,0.15553 797781467438,0.18521401286125183,0.162397101521492,0.19144229590892792,0.1691051 870584488,0.19761662185192108,0.1756211370229721,0.20373423397541046,0.181898117 0654297,0.20976819097995758,0.18788672983646393,0.21567688882350922,0.1935629546 6423035,0.22141236066818237,0.1989491879940033,0.22691985964775085,0.20410071313 381195,0.23214197158813477,0.2090718001127243,0.23703992366790771,0.213898688554 7638,0.24161241948604584,0.21860937774181366,0.24588878452777863,0.2232365906238 556,0.24990510940551758,0.2278122901916504,0.25369614362716675,0.232351243495941 16,0.25730907917022705,0.23684369027614594,0.2608065903186798,0.2412618994712829 6,0.26424169540405273,0.24557729065418243,0.26763802766799927,0.2497827410697937 ,0.2710042893886566,0.2539080083370209,0.2743600904941559,0.2580043077468872,0.2 7772846817970276,0.2621048092842102,0.28109848499298096,0.2662014663219452,0.284 4138741493225,0.27026814222335815,0.28761327266693115,0.27430057525634766,0.2906 782627105713,0.2783187925815582,0.2936345636844635,0.2823316752910614,0.29650774 598121643,0.28631120920181274,0.2992847263813019,0.2902001440525055,0.3019166290 7600403,0.29392778873443604,0.30435478687286377,0.2974175214767456,0.30658364295 95947,0.3006058931350708,0.30862122774124146,0.30347740650177,0.3104944229125976 6,0.306072473526001,0.312222421169281,0.3084503412246704,0.31383374333381653,0.3 1065377593040466,0.3153923749923706,0.31272828578948975,0.31698936223983765,0.31 476086378097534,0.3186992406845093,0.3168686330318451,0.3205533027648926,0.31914 153695106506,0.3225567936897278,0.3216134309768677,0.3247084319591522,0.32428947 0911026,0.3269837200641632,0.3271740972995758,0.3293130397796631,0.3302511274814 6057,0.33160120248794556,0.3334524631500244,0.3337690830230713,0.336663126945495 6,0.3357566297054291,0.33975350856781006,0.33749690651893616,0.34260159730911255 ,0.3389246463775635,0.3451049029827118,0.34002384543418884,0.3472021222114563,0. 34083592891693115,0.3488919138908386,0.34139955043792725,0.3502168655395508,0.34 16992127895355,0.35122162103652954,0.3416895866394043,0.35192933678627014,0.3413 449227809906,0.3523486256599426,0.3406597077846527,0.35248973965644836,0.3396291 136741638,0.3523767590522766,0.3382820785045624,0.352059006690979,0.336735785007 4768,0.35161373019218445,0.33517172932624817,0.3511255085468292,0.33373728394508 36,0.35066133737564087,0.33248984813690186,0.3502699136734009,0.3314389586448669 4,0.3499961793422699,0.33060356974601746,0.34987717866897583,0.33000418543815613 ,0.3499266803264618,0.3296352028846741,0.3501513600349426,0.32948991656303406,0. 350592702627182,0.329603374004364,0.3513304591178894,0.33003976941108704,0.35242 897272109985,0.33083397150039673,0.35388806462287903,0.3319631814956665,0.355650 00772476196,0.3333580195903778,0.35762736201286316,0.334903359413147,0.359702587 12768555,0.33642998337745667,0.3617240786552429,0.3377501368522644,0.36353924870 49103,0.33872780203819275,0.365033894777298,0.3393082618713379,0.366128921508789 06,0.33948349952697754,0.3667609691619873,0.339260458946228,0.3669013977050781,0 .33867549896240234,0.366586297750473,0.3378073573112488,0.3658924102783203,0.336 74895763397217,0.364884614944458,0.3355695903301239,0.3636193573474884,0.3343061 8047714233,0.36218708753585815,0.33296605944633484,0.3606922924518585,0.33153450 48904419,0.35918036103248596,0.3300207853317261,0.35764509439468384,0.3285069167 613983,0.35611510276794434,0.3270561099052429,0.3546077311038971,0.3254457414150 238,0.352856308221817,0.3229660391807556,0.350090354681015,0.3185683786869049,0. 3452148139476776,0.3112976551055908,0.33729299902915955,0.30062180757522583,0.32 587888836860657,0.28643596172332764,0.3109724819660187,0.2689546048641205,0.2928 783595561981,0.24881073832511902,0.2723010778427124,0.22731277346611023,0.250582 84401893616,0.20648010075092316,0.22969430685043335,0.18861271440982819,0.211803 30216884613,0.17556962370872498,0.1986304223537445,0.1681668758392334,0.19092623 889446259,0.1659921258687973,0.18827880918979645,0.16763757169246674,0.189289793 37215424,0.17113277316093445,0.19200463593006134,0.1743386834859848,0.1943642944 097519,0.175251305103302,0.19451621174812317,0.17233914136886597,0.1910596489906 311,0.16496074199676514,0.18336881697177887,0.15363140404224396,0.17187567055225 372,0.1398496776819229,0.157985121011734,0.12555719912052155,0.1435789316892624, 0.11268371343612671,0.13053175806999207,0.10308875143527985,0.12063667923212051, 0.09868810325860977,0.11577457934617996,0.10131668299436569,0.11781617254018784, 0.11223071813583374,0.12809985876083374,0.1316116750240326,0.14688126742839813,0 .15844237804412842,0.17319311201572418,0.19076986610889435,0.20511654019355774,0 .2261192500591278,0.24018003046512604,0.2618753910064697,0.2757151126861572)
35
36 ]);
37
38 function runTest(test, iterations) {
39 for (var i = 0; i < iterations; i++) {
40 test();
41 }
42 }
43
44 /*
45 * DSP.js - a comprehensive digital signal processing library for javascript
46 *
47 * Created by Corban Brook <corbanbrook@gmail.com> on 2010-01-01.
48 * Copyright 2010 Corban Brook. All rights reserved.
49 *
50 */
51
52 ////////////////////////////////////////////////////////////////////////////////
53 // CONSTANTS //
54 ////////////////////////////////////////////////////////////////////////////////
55
56 /**
57 * DSP is an object which contains general purpose utility functions and constan ts
58 */
59 DSP = {
60 // Channels
61 LEFT: 0,
62 RIGHT: 1,
63 MIX: 2,
64
65 // Waveforms
66 SINE: 1,
67 TRIANGLE: 2,
68 SAW: 3,
69 SQUARE: 4,
70
71 // Filters
72 LOWPASS: 0,
73 HIGHPASS: 1,
74 BANDPASS: 2,
75 NOTCH: 3,
76
77 // Window functions
78 BARTLETT: 1,
79 BARTLETTHANN: 2,
80 BLACKMAN: 3,
81 COSINE: 4,
82 GAUSS: 5,
83 HAMMING: 6,
84 HANN: 7,
85 LANCZOS: 8,
86 RECTANGULAR: 9,
87 TRIANGULAR: 10,
88
89 // Loop modes
90 OFF: 0,
91 FW: 1,
92 BW: 2,
93 FWBW: 3,
94
95 // Math
96 TWO_PI: 2*Math.PI
97 };
98
99 ////////////////////////////////////////////////////////////////////////////////
100 // DSP UTILITY FUNCTIONS //
101 ////////////////////////////////////////////////////////////////////////////////
102
103 /**
104 * Inverts the phase of a signal
105 *
106 * @param {Array} buffer A sample buffer
107 *
108 * @returns The inverted sample buffer
109 */
110 DSP.invert = function(buffer) {
111 for ( var i = 0, len = buffer.length; i < len; i++ ) {
112 buffer[i] *= -1;
113 }
114
115 return buffer;
116 };
117
118 /**
119 * Converts split-stereo (dual mono) sample buffers into a stereo interleaved sa mple buffer
120 *
121 * @param {Array} left A sample buffer
122 * @param {Array} right A sample buffer
123 *
124 * @returns The stereo interleaved buffer
125 */
126 DSP.interleave = function(left, right) {
127 if ( left.length !== right.length ) {
128 throw "Can not interleave. Channel lengths differ.";
129 }
130
131 var stereoInterleaved = new Array(left.length * 2);
132
133 for (var i = 0, len = left.length; i < len; i++ ) {
134 stereoInterleaved[2*i] = left[i];
135 stereoInterleaved[2*i+1] = right[i];
136 }
137
138 return stereoInterleaved;
139 };
140
141 /**
142 * Converts a stereo-interleaved sample buffer into split-stereo (dual mono) sam ple buffers
143 *
144 * @param {Array} buffer A stereo-interleaved sample buffer
145 *
146 * @returns an Array containing left and right channels
147 */
148 DSP.deinterleave = function(buffer) {
149 var left = new Array(buffer.length/2);
150 var right = new Array(buffer.length/2);
151 var mix = new Array(buffer.length/2);
152
153 for (var i = 0, len = buffer.length/2; i < len; i ++ ) {
154 left[i] = buffer[2*i];
155 right[i] = buffer[2*i+1];
156 mix[i] = (left[i] + right[i]) / 2;
157 }
158
159 return [left, right, mix];
160 };
161
162 /**
163 * Separates a channel from a stereo-interleaved sample buffer
164 *
165 * @param {Array} buffer A stereo-interleaved sample buffer
166 * @param {Number} channel A channel constant (LEFT, RIGHT, MIX)
167 *
168 * @returns an Array containing a signal mono sample buffer
169 */
170 DSP.getChannel = function(channel, buffer) {
171 return DSP.deinterleave(buffer)[channel];
172 };
173
174 // Biquad filter types
175 DSP.LPF = 0; // H(s) = 1 / (s^2 + s/Q + 1)
176 DSP.HPF = 1; // H(s) = s^2 / (s^2 + s/Q + 1)
177 DSP.BPF_CONSTANT_SKIRT = 2; // H(s) = s / (s^2 + s/Q + 1) (constant skirt gain, peak gain = Q)
178 DSP.BPF_CONSTANT_PEAK = 3; // H(s) = (s/Q) / (s^2 + s/Q + 1) (constan t 0 dB peak gain)
179 DSP.NOTCH = 4; // H(s) = (s^2 + 1) / (s^2 + s/Q + 1)
180 DSP.APF = 5; // H(s) = (s^2 - s/Q + 1) / (s^2 + s/Q + 1)
181 DSP.PEAKING_EQ = 6; // H(s) = (s^2 + s*(A/Q) + 1) / (s^2 + s/(A*Q) + 1)
182 DSP.LOW_SHELF = 7; // H(s) = A * (s^2 + (sqrt(A)/Q)*s + A)/(A*s^2 + (sqrt(A)/Q )*s + 1)
183 DSP.HIGH_SHELF = 8; // H(s) = A * (A*s^2 + (sqrt(A)/Q)*s + 1)/(s^2 + (sqrt(A)/ Q)*s + A)
184
185 // Biquad filter parameter types
186 DSP.Q = 1;
187 DSP.BW = 2; // SHARED with BACKWARDS LOOP MODE
188 DSP.S = 3;
189
190
191 /**
192 * DFT is a class for calculating the Discrete Fourier Transform of a signal.
193 *
194 * @param {Number} bufferSize The size of the sample buffer to be computed
195 * @param {Number} sampleRate The sampleRate of the buffer (eg. 44100)
196 *
197 * @constructor
198 */
199 DFT = function(bufferSize, sampleRate) {
200 this.bufferSize = bufferSize;
201 this.sampleRate = sampleRate;
202
203 var N = bufferSize/2 * bufferSize;
204
205 this.sinTable = new Array(N);
206 this.cosTable = new Array(N);
207
208 for ( var i = 0; i < N; i++ ) {
209 this.sinTable[i] = Math.sin(i * DSP.TWO_PI / bufferSize);
210 this.cosTable[i] = Math.cos(i * DSP.TWO_PI / bufferSize);
211 }
212
213 this.spectrum = new Array(bufferSize/2);
214 this.complexValues = new Array(bufferSize/2);
215 };
216
217 /**
218 * Performs a forward tranform on the sample buffer.
219 * Converts a time domain signal to frequency domain spectra.
220 *
221 * @param {Array} buffer The sample buffer
222 *
223 * @returns The frequency spectrum array
224 */
225 DFT.prototype.forward = function(buffer) {
226 var real, imag;
227
228 for ( var k = 0; k < this.bufferSize/2; k++ ) {
229 real = 0.0;
230 imag = 0.0;
231
232 for ( var n = 0; n < buffer.length; n++ ) {
233 real += this.cosTable[k*n] * buffer[n];
234 imag += this.sinTable[k*n] * buffer[n];
235 }
236
237 this.complexValues[k] = {real: real, imag: imag};
238 }
239
240 for ( var i = 0; i < this.bufferSize/2; i++ ) {
241 this.spectrum[i] = 2 * Math.sqrt(Math.pow(this.complexValues[i].real, 2) + M ath.pow(this.complexValues[i].imag, 2)) / this.bufferSize;
242 }
243
244 return this.spectrum;
245 };
246
247
248 /**
249 * FFT is a class for calculating the Discrete Fourier Transform of a signal
250 * with the Fast Fourier Transform algorithm.
251 *
252 * @param {Number} bufferSize The size of the sample buffer to be computed. Must be power of 2
253 * @param {Number} sampleRate The sampleRate of the buffer (eg. 44100)
254 *
255 * @constructor
256 */
257 FFT = function(bufferSize, sampleRate) {
258 this.bufferSize = bufferSize;
259 this.sampleRate = sampleRate;
260 this.spectrum = new Array(bufferSize/2);
261 this.real = new Array(bufferSize);
262 this.imag = new Array(bufferSize);
263
264 this.reverseTable = new Array(bufferSize);
265 for (var i = 0; i < this.reverseTable.length; i++) {
266 this.reverseTable[i] = 0;
267 }
268
269 var limit = 1;
270 var bit = bufferSize >> 1;
271
272 while ( limit < bufferSize ) {
273 for ( var i = 0; i < limit; i++ ) {
274 this.reverseTable[i + limit] = this.reverseTable[i] + bit;
275 }
276
277 limit = limit << 1;
278 bit = bit >> 1;
279 }
280
281 this.sinTable = new Array(bufferSize);
282 this.cosTable = new Array(bufferSize);
283
284 for ( var i = 0; i < bufferSize; i++ ) {
285 this.sinTable[i] = Math.sin(-Math.PI/i);
286 this.cosTable[i] = Math.cos(-Math.PI/i);
287 }
288 };
289
290 /**
291 * Performs a forward tranform on the sample buffer.
292 * Converts a time domain signal to frequency domain spectra.
293 *
294 * @param {Array} buffer The sample buffer. Buffer Length must be power of 2
295 *
296 * @returns The frequency spectrum array
297 */
298 FFT.prototype.forward = function(buffer) {
299 // Locally scope variables for speed up
300 var bufferSize = this.bufferSize,
301 cosTable = this.cosTable,
302 sinTable = this.sinTable,
303 reverseTable = this.reverseTable,
304 real = this.real,
305 imag = this.imag,
306 spectrum = this.spectrum;
307
308 var k = Math.floor(Math.log(bufferSize) / Math.LN2);
309 if ( Math.pow(2, k) !== bufferSize ) { throw "Invalid buffer size, must be a p ower of 2."; }
310 if ( bufferSize !== buffer.length ) { throw "Supplied buffer is not the same s ize as defined FFT. FFT Size: " + bufferSize + " Buffer Size: " + buffer.length; }
311
312 for ( var i = 0; i < bufferSize; i++ ) {
313 real[i] = buffer[reverseTable[i]];
314 imag[i] = 0;
315 }
316
317 var halfSize = 1,
318 phaseShiftStepReal,
319 phaseShiftStepImag,
320 currentPhaseShiftReal,
321 currentPhaseShiftImag,
322 off,
323 tr,
324 ti,
325 tmpReal,
326 i;
327
328 while ( halfSize < bufferSize ) {
329 phaseShiftStepReal = cosTable[halfSize];
330 phaseShiftStepImag = sinTable[halfSize];
331 currentPhaseShiftReal = 1;
332 currentPhaseShiftImag = 0;
333
334 for ( var fftStep = 0; fftStep < halfSize; fftStep++ ) {
335 i = fftStep;
336
337 while ( i < bufferSize ) {
338 off = i + halfSize;
339 tr = (currentPhaseShiftReal * real[off]) - (currentPhaseShiftImag * imag [off]);
340 ti = (currentPhaseShiftReal * imag[off]) + (currentPhaseShiftImag * real [off]);
341
342 real[off] = real[i] - tr;
343 imag[off] = imag[i] - ti;
344 real[i] += tr;
345 imag[i] += ti;
346
347 i += halfSize << 1;
348 }
349
350 tmpReal = currentPhaseShiftReal;
351 currentPhaseShiftReal = (tmpReal * phaseShiftStepReal) - (currentPhaseShif tImag * phaseShiftStepImag);
352 currentPhaseShiftImag = (tmpReal * phaseShiftStepImag) + (currentPhaseShif tImag * phaseShiftStepReal);
353 }
354
355 halfSize = halfSize << 1;
356 }
357
358 i = bufferSize/2;
359 while(i--) {
360 spectrum[i] = 2 * Math.sqrt(real[i] * real[i] + imag[i] * imag[i]) / bufferS ize;
361 }
362
363 return spectrum;
364 };
365
366 FFT.prototype.inverse = function(real, imag) {
367 // Locally scope variables for speed up
368 var bufferSize = this.bufferSize,
369 cosTable = this.cosTable,
370 sinTable = this.sinTable,
371 reverseTable = this.reverseTable,
372 spectrum = this.spectrum;
373
374 real = real || this.real;
375 imag = imag || this.imag;
376
377 for (var i = 0; i < bufferSize; i++) {
378 imag[i] *= -1;
379 }
380
381 var revReal = new Array(bufferSize);
382 var revImag = new Array(bufferSize);
383
384 for (var i = 0; i < real.length; i++) {
385 revReal[i] = real[reverseTable[i]];
386 revImag[i] = imag[reverseTable[i]];
387 }
388
389 real = revReal;
390 imag = revImag;
391
392 var halfSize = 1,
393 phaseShiftStepReal,
394 phaseShiftStepImag,
395 currentPhaseShiftReal,
396 currentPhaseShiftImag,
397 off,
398 tr,
399 ti,
400 tmpReal,
401 i;
402
403 while ( halfSize < bufferSize ) {
404 phaseShiftStepReal = cosTable[halfSize];
405 phaseShiftStepImag = sinTable[halfSize];
406 currentPhaseShiftReal = 1;
407 currentPhaseShiftImag = 0;
408
409 for ( var fftStep = 0; fftStep < halfSize; fftStep++ ) {
410 i = fftStep;
411
412 while ( i < bufferSize ) {
413 off = i + halfSize;
414 tr = (currentPhaseShiftReal * real[off]) - (currentPhaseShiftImag * imag [off]);
415 ti = (currentPhaseShiftReal * imag[off]) + (currentPhaseShiftImag * real [off]);
416
417 real[off] = real[i] - tr;
418 imag[off] = imag[i] - ti;
419 real[i] += tr;
420 imag[i] += ti;
421
422 i += halfSize << 1;
423 }
424
425 tmpReal = currentPhaseShiftReal;
426 currentPhaseShiftReal = (tmpReal * phaseShiftStepReal) - (currentPhaseShif tImag * phaseShiftStepImag);
427 currentPhaseShiftImag = (tmpReal * phaseShiftStepImag) + (currentPhaseShif tImag * phaseShiftStepReal);
428 }
429
430 halfSize = halfSize << 1;
431 }
432
433 var buffer = new Array(bufferSize);
434 for (var i = 0; i < bufferSize; i++) {
435 buffer[i] = real[i] / bufferSize;
436 }
437
438 return buffer;
439 };
440
441 Sampler = function Sampler(file, bufferSize, sampleRate, playStart, playEnd, loo pStart, loopEnd, loopMode) {
442 this.file = file;
443 this.bufferSize = bufferSize;
444 this.sampleRate = sampleRate;
445 this.playStart = playStart || 0; // 0%
446 this.playEnd = playEnd || 1; // 100%
447 this.loopStart = loopStart || 0;
448 this.loopEnd = loopEnd || 1;
449 this.loopMode = loopMode || DSP.OFF;
450 this.loaded = false;
451 this.samples = [];
452 this.signal = new Array(bufferSize);
453 this.frameCount = 0;
454 this.envelope = null;
455 this.amplitude = 1;
456 this.rootFrequency = 110; // A2 110
457 this.frequency = 550;
458 this.step = this.frequency / this.rootFrequency;
459 this.duration = 0;
460 this.samplesProcessed = 0;
461 this.playhead = 0;
462
463 var audio = /* new Audio();*/ document.createElement("AUDIO");
464 var self = this;
465
466 this.loadSamples = function(event) {
467 var buffer = DSP.getChannel(DSP.MIX, event.frameBuffer);
468 for ( var i = 0; i < buffer.length; i++) {
469 self.samples.push(buffer[i]);
470 }
471 };
472
473 this.loadComplete = function() {
474 // convert flexible js array into a fast typed array
475 self.samples = new Array(self.samples);
476 self.loaded = true;
477 };
478
479 this.loadMetaData = function() {
480 self.duration = audio.duration;
481 };
482
483 audio.addEventListener("MozAudioAvailable", this.loadSamples, false);
484 audio.addEventListener("loadedmetadata", this.loadMetaData, false)
485 audio.addEventListener("ended", this.loadComplete, false);
486 audio.muted = true;
487 audio.src = file;
488 audio.play();
489 };
490
491 Sampler.prototype.applyEnvelope = function() {
492 this.envelope.process(this.signal);
493 return this.signal;
494 };
495
496 Sampler.prototype.generate = function() {
497 var frameOffset = this.frameCount * this.bufferSize;
498
499 var loopWidth = this.playEnd * this.samples.length - this.playStart * this.sam ples.length;
500 var playStartSamples = this.playStart * this.samples.length; // ie 0.5 -> 50% of the length
501 var playEndSamples = this.playEnd * this.samples.length; // ie 0.5 -> 50% of t he length
502 var offset;
503
504 for ( var i = 0; i < this.bufferSize; i++ ) {
505 switch (this.loopMode) {
506 case DSP.OFF:
507 this.playhead = Math.round(this.samplesProcessed * this.step + playStart Samples);
508 if (this.playhead < (this.playEnd * this.samples.length) ) {
509 this.signal[i] = this.samples[this.playhead] * this.amplitude;
510 } else {
511 this.signal[i] = 0;
512 }
513 break;
514
515 case DSP.FW:
516 this.playhead = Math.round((this.samplesProcessed * this.step) % loopWid th + playStartSamples);
517 if (this.playhead < (this.playEnd * this.samples.length) ) {
518 this.signal[i] = this.samples[this.playhead] * this.amplitude;
519 }
520 break;
521
522 case DSP.BW:
523 this.playhead = playEndSamples - Math.round((this.samplesProcessed * thi s.step) % loopWidth);
524 if (this.playhead < (this.playEnd * this.samples.length) ) {
525 this.signal[i] = this.samples[this.playhead] * this.amplitude;
526 }
527 break;
528
529 case DSP.FWBW:
530 if ( Math.floor(this.samplesProcessed * this.step / loopWidth) % 2 == 0 ) {
531 this.playhead = Math.round((this.samplesProcessed * this.step) % loopW idth + playStartSamples);
532 } else {
533 this.playhead = playEndSamples - Math.round((this.samplesProcessed * t his.step) % loopWidth);
534 }
535 if (this.playhead < (this.playEnd * this.samples.length) ) {
536 this.signal[i] = this.samples[this.playhead] * this.amplitude;
537 }
538 break;
539 }
540 this.samplesProcessed++;
541 }
542
543 this.frameCount++;
544
545 return this.signal;
546 };
547
548 Sampler.prototype.setFreq = function(frequency) {
549 this.frequency = frequency;
550 this.step = this.frequency / this.rootFrequency;
551 };
552
553 Sampler.prototype.reset = function() {
554 this.samplesProcessed = 0;
555 this.playhead = 0;
556 };
557
558 /**
559 * Oscillator class for generating and modifying signals
560 *
561 * @param {Number} type A waveform constant (eg. DSP.SINE)
562 * @param {Number} frequency Initial frequency of the signal
563 * @param {Number} amplitude Initial amplitude of the signal
564 * @param {Number} bufferSize Size of the sample buffer to generate
565 * @param {Number} sampleRate The sample rate of the signal
566 *
567 * @contructor
568 */
569 Oscillator = function Oscillator(type, frequency, amplitude, bufferSize, sampleR ate) {
570 this.frequency = frequency;
571 this.amplitude = amplitude;
572 this.bufferSize = bufferSize;
573 this.sampleRate = sampleRate;
574 //this.pulseWidth = pulseWidth;
575 this.frameCount = 0;
576
577 this.waveTableLength = 2048;
578
579 this.cyclesPerSample = frequency / sampleRate;
580
581 this.signal = new Array(bufferSize);
582 this.envelope = null;
583
584 switch(parseInt(type)) {
585 case DSP.TRIANGLE:
586 this.func = Oscillator.Triangle;
587 break;
588
589 case DSP.SAW:
590 this.func = Oscillator.Saw;
591 break;
592
593 case DSP.SQUARE:
594 this.func = Oscillator.Square;
595 break;
596
597 case DSP.SINE:
598 default:
599 this.func = Oscillator.Sine;
600 break;
601 }
602
603 this.generateWaveTable = function() {
604 Oscillator.waveTable[this.func] = new Array(2048);
605 var waveTableTime = this.waveTableLength / this.sampleRate;
606 var waveTableHz = 1 / waveTableTime;
607
608 for (var i = 0; i < this.waveTableLength; i++) {
609 Oscillator.waveTable[this.func][i] = this.func(i * waveTableHz/this.sample Rate);
610 }
611 };
612
613 if ( typeof Oscillator.waveTable === 'undefined' ) {
614 Oscillator.waveTable = {};
615 }
616
617 if ( typeof Oscillator.waveTable[this.func] === 'undefined' ) {
618 this.generateWaveTable();
619 }
620
621 this.waveTable = Oscillator.waveTable[this.func];
622 };
623
624 /**
625 * Set the amplitude of the signal
626 *
627 * @param {Number} amplitude The amplitude of the signal (between 0 and 1)
628 */
629 Oscillator.prototype.setAmp = function(amplitude) {
630 if (amplitude >= 0 && amplitude <= 1) {
631 this.amplitude = amplitude;
632 } else {
633 throw "Amplitude out of range (0..1).";
634 }
635 };
636
637 /**
638 * Set the frequency of the signal
639 *
640 * @param {Number} frequency The frequency of the signal
641 */
642 Oscillator.prototype.setFreq = function(frequency) {
643 this.frequency = frequency;
644 this.cyclesPerSample = frequency / this.sampleRate;
645 };
646
647 // Add an oscillator
648 Oscillator.prototype.add = function(oscillator) {
649 for ( var i = 0; i < this.bufferSize; i++ ) {
650 //this.signal[i] += oscillator.valueAt(i);
651 this.signal[i] += oscillator.signal[i];
652 }
653
654 return this.signal;
655 };
656
657 // Add a signal to the current generated osc signal
658 Oscillator.prototype.addSignal = function(signal) {
659 for ( var i = 0; i < signal.length; i++ ) {
660 if ( i >= this.bufferSize ) {
661 break;
662 }
663 this.signal[i] += signal[i];
664
665 /*
666 // Constrain amplitude
667 if ( this.signal[i] > 1 ) {
668 this.signal[i] = 1;
669 } else if ( this.signal[i] < -1 ) {
670 this.signal[i] = -1;
671 }
672 */
673 }
674 return this.signal;
675 };
676
677 // Add an envelope to the oscillator
678 Oscillator.prototype.addEnvelope = function(envelope) {
679 this.envelope = envelope;
680 };
681
682 Oscillator.prototype.applyEnvelope = function() {
683 this.envelope.process(this.signal);
684 };
685
686 Oscillator.prototype.valueAt = function(offset) {
687 return this.waveTable[offset % this.waveTableLength];
688 };
689
690 Oscillator.prototype.generate = function() {
691 var frameOffset = this.frameCount * this.bufferSize;
692 var step = this.waveTableLength * this.frequency / this.sampleRate;
693 var offset;
694
695 for ( var i = 0; i < this.bufferSize; i++ ) {
696 //var step = (frameOffset + i) * this.cyclesPerSample % 1;
697 //this.signal[i] = this.func(step) * this.amplitude;
698 //this.signal[i] = this.valueAt(Math.round((frameOffset + i) * step)) * this .amplitude;
699 offset = Math.round((frameOffset + i) * step);
700 this.signal[i] = this.waveTable[offset % this.waveTableLength] * this.amplit ude;
701 }
702
703 this.frameCount++;
704
705 return this.signal;
706 };
707
708 Oscillator.Sine = function(step) {
709 return Math.sin(DSP.TWO_PI * step);
710 };
711
712 Oscillator.Square = function(step) {
713 return step < 0.5 ? 1 : -1;
714 };
715
716 Oscillator.Saw = function(step) {
717 return 2 * (step - Math.round(step));
718 };
719
720 Oscillator.Triangle = function(step) {
721 return 1 - 4 * Math.abs(Math.round(step) - step);
722 };
723
724 Oscillator.Pulse = function(step) {
725 // stub
726 };
727
728 ADSR = function(attackLength, decayLength, sustainLevel, sustainLength, releaseL ength, sampleRate) {
729 this.sampleRate = sampleRate;
730 // Length in seconds
731 this.attackLength = attackLength;
732 this.decayLength = decayLength;
733 this.sustainLevel = sustainLevel;
734 this.sustainLength = sustainLength;
735 this.releaseLength = releaseLength;
736 this.sampleRate = sampleRate;
737
738 // Length in samples
739 this.attackSamples = attackLength * sampleRate;
740 this.decaySamples = decayLength * sampleRate;
741 this.sustainSamples = sustainLength * sampleRate;
742 this.releaseSamples = releaseLength * sampleRate;
743
744 // Updates the envelope sample positions
745 this.update = function() {
746 this.attack = this.attackSamples;
747 this.decay = this.attack + this.decaySamples;
748 this.sustain = this.decay + this.sustainSamples;
749 this.release = this.sustain + this.releaseSamples;
750 };
751
752 this.update();
753
754 this.samplesProcessed = 0;
755 };
756
757
758 ADSR.prototype.noteOn = function() {
759 this.samplesProcessed = 0;
760 this.sustainSamples = this.sustainLength * this.sampleRate;
761 this.update();
762 };
763
764 // Send a note off when using a sustain of infinity to let the envelope enter th e release phase
765 ADSR.prototype.noteOff = function() {
766 this.sustainSamples = this.samplesProcessed - this.decaySamples;
767 this.update();
768 };
769
770 ADSR.prototype.processSample = function(sample) {
771 var amplitude = 0;
772
773 if ( this.samplesProcessed <= this.attack ) {
774 amplitude = 0 + (1 - 0) * ((this.samplesProcessed - 0) / (this.attack - 0));
775 } else if ( this.samplesProcessed > this.attack && this.samplesProcessed <= th is.decay ) {
776 amplitude = 1 + (this.sustainLevel - 1) * ((this.samplesProcessed - this.att ack) / (this.decay - this.attack));
777 } else if ( this.samplesProcessed > this.decay && this.samplesProcessed <= thi s.sustain ) {
778 amplitude = this.sustainLevel;
779 } else if ( this.samplesProcessed > this.sustain && this.samplesProcessed <= t his.release ) {
780 amplitude = this.sustainLevel + (0 - this.sustainLevel) * ((this.samplesProc essed - this.sustain) / (this.release - this.sustain));
781 }
782
783 return sample * amplitude;
784 };
785
786 ADSR.prototype.value = function() {
787 var amplitude = 0;
788
789 if ( this.samplesProcessed <= this.attack ) {
790 amplitude = 0 + (1 - 0) * ((this.samplesProcessed - 0) / (this.attack - 0));
791 } else if ( this.samplesProcessed > this.attack && this.samplesProcessed <= th is.decay ) {
792 amplitude = 1 + (this.sustainLevel - 1) * ((this.samplesProcessed - this.att ack) / (this.decay - this.attack));
793 } else if ( this.samplesProcessed > this.decay && this.samplesProcessed <= thi s.sustain ) {
794 amplitude = this.sustainLevel;
795 } else if ( this.samplesProcessed > this.sustain && this.samplesProcessed <= t his.release ) {
796 amplitude = this.sustainLevel + (0 - this.sustainLevel) * ((this.samplesProc essed - this.sustain) / (this.release - this.sustain));
797 }
798
799 return amplitude;
800 };
801
802 ADSR.prototype.process = function(buffer) {
803 for ( var i = 0; i < buffer.length; i++ ) {
804 buffer[i] *= this.value();
805
806 this.samplesProcessed++;
807 }
808
809 return buffer;
810 };
811
812
813 ADSR.prototype.isActive = function() {
814 if ( this.samplesProcessed > this.release || this.samplesProcessed === -1 ) {
815 return false;
816 } else {
817 return true;
818 }
819 };
820
821 ADSR.prototype.disable = function() {
822 this.samplesProcessed = -1;
823 };
824
825 IIRFilter = function(type, cutoff, resonance, sampleRate) {
826 this.sampleRate = sampleRate;
827 this.cutoff = cutoff;
828 this.resonance = resonance;
829
830 switch(type) {
831 case DSP.LOWPASS:
832 case DSP.LP12:
833 this.func = new IIRFilter.LP12(cutoff, resonance, sampleRate);
834 break;
835 }
836 }
837
838 IIRFilter.prototype.set = function(cutoff, resonance) {
839 this.func.calcCoeff(cutoff, resonance);
840 }
841
842 IIRFilter.prototype.process = function(buffer) {
843 this.func.process(buffer);
844 }
845
846 // Add an envelope to the filter
847 IIRFilter.prototype.addEnvelope = function(envelope) {
848 if ( envelope instanceof ADSR ) {
849 this.func.addEnvelope(envelope);
850 } else {
851 throw "Not an envelope.";
852 }
853 };
854
855 IIRFilter.LP12 = function(cutoff, resonance, sampleRate) {
856 this.sampleRate = sampleRate;
857 this.vibraPos = 0;
858 this.vibraSpeed = 0;
859 this.envelope = false;
860
861 this.calcCoeff = function(cutoff, resonance) {
862 this.w = 2.0 * Math.PI * cutoff / this.sampleRate;
863 this.q = 1.0 - this.w / (2.0 * (resonance + 0.5 / (1.0 + this.w)) + this.w - 2.0);
864 this.r = this.q * this.q;
865 this.c = this.r + 1.0 - 2.0 * Math.cos(this.w) * this.q;
866
867 this.cutoff = cutoff;
868 this.resonance = resonance;
869 };
870
871 this.calcCoeff(cutoff, resonance);
872
873 this.process = function(buffer) {
874 for ( var i = 0; i < buffer.length; i++ ) {
875 this.vibraSpeed += (buffer[i] - this.vibraPos) * this.c;
876 this.vibraPos += this.vibraSpeed;
877 this.vibraSpeed *= this.r;
878
879 /*
880 var temp = this.vibraPos;
881
882 if ( temp > 1.0 ) {
883 temp = 1.0;
884 } else if ( temp < -1.0 ) {
885 temp = -1.0;
886 } else if ( temp != temp ) {
887 temp = 1;
888 }
889
890 buffer[i] = temp;
891 */
892
893 if (this.envelope) {
894 buffer[i] = (buffer[i] * (1 - this.envelope.value())) + (this.vibraPos * this.envelope.value());
895 this.envelope.samplesProcessed++;
896 } else {
897 buffer[i] = this.vibraPos;
898 }
899 }
900 }
901 };
902
903 IIRFilter.LP12.prototype.addEnvelope = function(envelope) {
904 this.envelope = envelope;
905 };
906
907
908
909 IIRFilter2 = function(type, cutoff, resonance, sampleRate) {
910 this.type = type;
911 this.cutoff = cutoff;
912 this.resonance = resonance;
913 this.sampleRate = sampleRate;
914
915 this.f = Array(4);
916 this.f[0] = 0.0; // lp
917 this.f[1] = 0.0; // hp
918 this.f[2] = 0.0; // bp
919 this.f[3] = 0.0; // br
920
921 this.calcCoeff = function(cutoff, resonance) {
922 this.freq = 2 * Math.sin(Math.PI * Math.min(0.25, cutoff/(this.sampleRate*2) ));
923 this.damp = Math.min(2 * (1 - Math.pow(resonance, 0.25)), Math.min(2, 2/this .freq - this.freq * 0.5));
924 };
925
926 this.calcCoeff(cutoff, resonance);
927 };
928
929 IIRFilter2.prototype.process = function(buffer) {
930 var input, output;
931 var f = this.f;
932
933 for ( var i = 0; i < buffer.length; i++ ) {
934 input = buffer[i];
935
936 // first pass
937 f[3] = input - this.damp * f[2];
938 f[0] = f[0] + this.freq * f[2];
939 f[1] = f[3] - f[0];
940 f[2] = this.freq * f[1] + f[2];
941 output = 0.5 * f[this.type];
942
943 // second pass
944 f[3] = input - this.damp * f[2];
945 f[0] = f[0] + this.freq * f[2];
946 f[1] = f[3] - f[0];
947 f[2] = this.freq * f[1] + f[2];
948 output += 0.5 * f[this.type];
949
950 if (this.envelope) {
951 buffer[i] = (buffer[i] * (1 - this.envelope.value())) + (output * this.env elope.value());
952 this.envelope.samplesProcessed++;
953 } else {
954 buffer[i] = output;
955 }
956 }
957 };
958
959 IIRFilter2.prototype.addEnvelope = function(envelope) {
960 if ( envelope instanceof ADSR ) {
961 this.envelope = envelope;
962 } else {
963 throw "This is not an envelope.";
964 }
965 };
966
967 IIRFilter2.prototype.set = function(cutoff, resonance) {
968 this.calcCoeff(cutoff, resonance);
969 };
970
971
972
973 WindowFunction = function(type, alpha) {
974 this.alpha = alpha;
975
976 switch(type) {
977 case DSP.BARTLETT:
978 this.func = WindowFunction.Bartlett;
979 break;
980
981 case DSP.BARTLETTHANN:
982 this.func = WindowFunction.BartlettHann;
983 break;
984
985 case DSP.BLACKMAN:
986 this.func = WindowFunction.Blackman;
987 this.alpha = this.alpha || 0.16;
988 break;
989
990 case DSP.COSINE:
991 this.func = WindowFunction.Cosine;
992 break;
993
994 case DSP.GAUSS:
995 this.func = WindowFunction.Gauss;
996 this.alpha = this.alpha || 0.25;
997 break;
998
999 case DSP.HAMMING:
1000 this.func = WindowFunction.Hamming;
1001 break;
1002
1003 case DSP.HANN:
1004 this.func = WindowFunction.Hann;
1005 break;
1006
1007 case DSP.LANCZOS:
1008 this.func = WindowFunction.Lanczoz;
1009 break;
1010
1011 case DSP.RECTANGULAR:
1012 this.func = WindowFunction.Rectangular;
1013 break;
1014
1015 case DSP.TRIANGULAR:
1016 this.func = WindowFunction.Triangular;
1017 break;
1018 }
1019 };
1020
1021 WindowFunction.prototype.process = function(buffer) {
1022 var length = buffer.length;
1023 for ( var i = 0; i < length; i++ ) {
1024 buffer[i] *= this.func(length, i, this.alpha);
1025 }
1026 return buffer;
1027 };
1028
1029 WindowFunction.Bartlett = function(length, index) {
1030 return 2 / (length - 1) * ((length - 1) / 2 - Math.abs(index - (length - 1) / 2));
1031 };
1032
1033 WindowFunction.BartlettHann = function(length, index) {
1034 return 0.62 - 0.48 * Math.abs(index / (length - 1) - 0.5) - 0.38 * Math.cos(DS P.TWO_PI * index / (length - 1));
1035 };
1036
1037 WindowFunction.Blackman = function(length, index, alpha) {
1038 var a0 = (1 - alpha) / 2;
1039 var a1 = 0.5;
1040 var a2 = alpha / 2;
1041
1042 return a0 - a1 * Math.cos(DSP.TWO_PI * index / (length - 1)) + a2 * Math.cos(4 * Math.PI * index / (length - 1));
1043 };
1044
1045 WindowFunction.Cosine = function(length, index) {
1046 return Math.cos(Math.PI * index / (length - 1) - Math.PI / 2);
1047 };
1048
1049 WindowFunction.Gauss = function(length, index, alpha) {
1050 return Math.pow(Math.E, -0.5 * Math.pow((index - (length - 1) / 2) / (alpha * (length - 1) / 2), 2));
1051 };
1052
1053 WindowFunction.Hamming = function(length, index) {
1054 return 0.54 - 0.46 * Math.cos(DSP.TWO_PI * index / (length - 1));
1055 };
1056
1057 WindowFunction.Hann = function(length, index) {
1058 return 0.5 * (1 - Math.cos(DSP.TWO_PI * index / (length - 1)));
1059 };
1060
1061 WindowFunction.Lanczos = function(length, index) {
1062 var x = 2 * index / (length - 1) - 1;
1063 return Math.sin(Math.PI * x) / (Math.PI * x);
1064 };
1065
1066 WindowFunction.Rectangular = function(length, index) {
1067 return 1;
1068 };
1069
1070 WindowFunction.Triangular = function(length, index) {
1071 return 2 / length * (length / 2 - Math.abs(index - (length - 1) / 2));
1072 };
1073
1074 function sinh (arg) {
1075 // Returns the hyperbolic sine of the number, defined as (exp(number) - exp( -number))/2
1076 //
1077 // version: 1004.2314
1078 // discuss at: http://phpjs.org/functions/sinh // + original by: Onno M arsman
1079 // * example 1: sinh(-0.9834330348825909);
1080 // * returns 1: -1.1497971402636502
1081 return (Math.exp(arg) - Math.exp(-arg))/2;
1082 }
1083
1084
1085 /*
1086 * Biquad filter
1087 *
1088 * Created by Ricard Marxer <email@ricardmarxer.com> on 2010-05-23.
1089 * Copyright 2010 Ricard Marxer. All rights reserved.
1090 *
1091 */
1092 // Implementation based on:
1093 // http://www.musicdsp.org/files/Audio-EQ-Cookbook.txt
1094 Biquad = function(type, sampleRate) {
1095 this.Fs = sampleRate;
1096 this.type = type; // type of the filter
1097 this.parameterType = DSP.Q; // type of the parameter
1098
1099 this.x_1_l = 0;
1100 this.x_2_l = 0;
1101 this.y_1_l = 0;
1102 this.y_2_l = 0;
1103
1104 this.x_1_r = 0;
1105 this.x_2_r = 0;
1106 this.y_1_r = 0;
1107 this.y_2_r = 0;
1108
1109 this.b0 = 1;
1110 this.a0 = 1;
1111
1112 this.b1 = 0;
1113 this.a1 = 0;
1114
1115 this.b2 = 0;
1116 this.a2 = 0;
1117
1118 this.b0a0 = this.b0 / this.a0;
1119 this.b1a0 = this.b1 / this.a0;
1120 this.b2a0 = this.b2 / this.a0;
1121 this.a1a0 = this.a1 / this.a0;
1122 this.a2a0 = this.a2 / this.a0;
1123
1124 this.f0 = 3000; // "wherever it's happenin', man." Center Frequency or
1125 // Corner Frequency, or shelf midpoint frequency, depending
1126 // on which filter type. The "significant frequency".
1127
1128 this.dBgain = 12; // used only for peaking and shelving filters
1129
1130 this.Q = 1; // the EE kind of definition, except for peakingEQ in which A*Q i s
1131 // the classic EE Q. That adjustment in definition was made so that
1132 // a boost of N dB followed by a cut of N dB for identical Q and
1133 // f0/Fs results in a precisely flat unity gain filter or "wire".
1134
1135 this.BW = -3; // the bandwidth in octaves (between -3 dB frequencies for BPF
1136 // and notch or between midpoint (dBgain/2) gain frequencies for
1137 // peaking EQ
1138
1139 this.S = 1; // a "shelf slope" parameter (for shelving EQ only). When S = 1,
1140 // the shelf slope is as steep as it can be and remain monotonically
1141 // increasing or decreasing gain with frequency. The shelf slope, in
1142 // dB/octave, remains proportional to S for all other values for a
1143 // fixed f0/Fs and dBgain.
1144
1145 this.coefficients = function() {
1146 var b = [this.b0, this.b1, this.b2];
1147 var a = [this.a0, this.a1, this.a2];
1148 return {b: b, a:a};
1149 }
1150
1151 this.setFilterType = function(type) {
1152 this.type = type;
1153 this.recalculateCoefficients();
1154 }
1155
1156 this.setSampleRate = function(rate) {
1157 this.Fs = rate;
1158 this.recalculateCoefficients();
1159 }
1160
1161 this.setQ = function(q) {
1162 this.parameterType = DSP.Q;
1163 this.Q = Math.max(Math.min(q, 115.0), 0.001);
1164 this.recalculateCoefficients();
1165 }
1166
1167 this.setBW = function(bw) {
1168 this.parameterType = DSP.BW;
1169 this.BW = bw;
1170 this.recalculateCoefficients();
1171 }
1172
1173 this.setS = function(s) {
1174 this.parameterType = DSP.S;
1175 this.S = Math.max(Math.min(s, 5.0), 0.0001);
1176 this.recalculateCoefficients();
1177 }
1178
1179 this.setF0 = function(freq) {
1180 this.f0 = freq;
1181 this.recalculateCoefficients();
1182 }
1183
1184 this.setDbGain = function(g) {
1185 this.dBgain = g;
1186 this.recalculateCoefficients();
1187 }
1188
1189 this.recalculateCoefficients = function() {
1190 var A;
1191 if (type == DSP.PEAKING_EQ || type == DSP.LOW_SHELF || type == DSP.HIGH_SHEL F ) {
1192 A = Math.pow(10, (this.dBgain/40)); // for peaking and shelving EQ filter s only
1193 } else {
1194 A = Math.sqrt( Math.pow(10, (this.dBgain/20)) );
1195 }
1196
1197 var w0 = DSP.TWO_PI * this.f0 / this.Fs;
1198
1199 var cosw0 = Math.cos(w0);
1200 var sinw0 = Math.sin(w0);
1201
1202 var alpha = 0;
1203
1204 switch (this.parameterType) {
1205 case DSP.Q:
1206 alpha = sinw0/(2*this.Q);
1207 break;
1208
1209 case DSP.BW:
1210 alpha = sinw0 * sinh( Math.LN2/2 * this.BW * w0/sinw0 );
1211 break;
1212
1213 case DSP.S:
1214 alpha = sinw0/2 * Math.sqrt( (A + 1/A)*(1/this.S - 1) + 2 );
1215 break;
1216 }
1217
1218 /**
1219 FYI: The relationship between bandwidth and Q is
1220 1/Q = 2*sinh(ln(2)/2*BW*w0/sin(w0)) (digital filter w BLT)
1221 or 1/Q = 2*sinh(ln(2)/2*BW) (analog filter prototype)
1222
1223 The relationship between shelf slope and Q is
1224 1/Q = sqrt((A + 1/A)*(1/S - 1) + 2)
1225 */
1226
1227 switch (this.type) {
1228 case DSP.LPF: // H(s) = 1 / (s^2 + s/Q + 1)
1229 this.b0 = (1 - cosw0)/2;
1230 this.b1 = 1 - cosw0;
1231 this.b2 = (1 - cosw0)/2;
1232 this.a0 = 1 + alpha;
1233 this.a1 = -2 * cosw0;
1234 this.a2 = 1 - alpha;
1235 break;
1236
1237 case DSP.HPF: // H(s) = s^2 / (s^2 + s/Q + 1)
1238 this.b0 = (1 + cosw0)/2;
1239 this.b1 = -(1 + cosw0);
1240 this.b2 = (1 + cosw0)/2;
1241 this.a0 = 1 + alpha;
1242 this.a1 = -2 * cosw0;
1243 this.a2 = 1 - alpha;
1244 break;
1245
1246 case DSP.BPF_CONSTANT_SKIRT: // H(s) = s / (s^2 + s/Q + 1) (constan t skirt gain, peak gain = Q)
1247 this.b0 = sinw0/2;
1248 this.b1 = 0;
1249 this.b2 = -sinw0/2;
1250 this.a0 = 1 + alpha;
1251 this.a1 = -2*cosw0;
1252 this.a2 = 1 - alpha;
1253 break;
1254
1255 case DSP.BPF_CONSTANT_PEAK: // H(s) = (s/Q) / (s^2 + s/Q + 1) ( constant 0 dB peak gain)
1256 this.b0 = alpha;
1257 this.b1 = 0;
1258 this.b2 = -alpha;
1259 this.a0 = 1 + alpha;
1260 this.a1 = -2*cosw0;
1261 this.a2 = 1 - alpha;
1262 break;
1263
1264 case DSP.NOTCH: // H(s) = (s^2 + 1) / (s^2 + s/Q + 1)
1265 this.b0 = 1;
1266 this.b1 = -2*cosw0;
1267 this.b2 = 1;
1268 this.a0 = 1 + alpha;
1269 this.a1 = -2*cosw0;
1270 this.a2 = 1 - alpha;
1271 break;
1272
1273 case DSP.APF: // H(s) = (s^2 - s/Q + 1) / (s^2 + s/Q + 1)
1274 this.b0 = 1 - alpha;
1275 this.b1 = -2*cosw0;
1276 this.b2 = 1 + alpha;
1277 this.a0 = 1 + alpha;
1278 this.a1 = -2*cosw0;
1279 this.a2 = 1 - alpha;
1280 break;
1281
1282 case DSP.PEAKING_EQ: // H(s) = (s^2 + s*(A/Q) + 1) / (s^2 + s/(A*Q) + 1)
1283 this.b0 = 1 + alpha*A;
1284 this.b1 = -2*cosw0;
1285 this.b2 = 1 - alpha*A;
1286 this.a0 = 1 + alpha/A;
1287 this.a1 = -2*cosw0;
1288 this.a2 = 1 - alpha/A;
1289 break;
1290
1291 case DSP.LOW_SHELF: // H(s) = A * (s^2 + (sqrt(A)/Q)*s + A)/(A*s^2 + (sq rt(A)/Q)*s + 1)
1292 var coeff = sinw0 * Math.sqrt( (A^2 + 1)*(1/this.S - 1) + 2*A );
1293 this.b0 = A*( (A+1) - (A-1)*cosw0 + coeff );
1294 this.b1 = 2*A*( (A-1) - (A+1)*cosw0 );
1295 this.b2 = A*( (A+1) - (A-1)*cosw0 - coeff );
1296 this.a0 = (A+1) + (A-1)*cosw0 + coeff;
1297 this.a1 = -2*( (A-1) + (A+1)*cosw0 );
1298 this.a2 = (A+1) + (A-1)*cosw0 - coeff;
1299 break;
1300
1301 case DSP.HIGH_SHELF: // H(s) = A * (A*s^2 + (sqrt(A)/Q)*s + 1)/(s^2 + (s qrt(A)/Q)*s + A)
1302 var coeff = sinw0 * Math.sqrt( (A^2 + 1)*(1/this.S - 1) + 2*A );
1303 this.b0 = A*( (A+1) + (A-1)*cosw0 + coeff );
1304 this.b1 = -2*A*( (A-1) + (A+1)*cosw0 );
1305 this.b2 = A*( (A+1) + (A-1)*cosw0 - coeff );
1306 this.a0 = (A+1) - (A-1)*cosw0 + coeff;
1307 this.a1 = 2*( (A-1) - (A+1)*cosw0 );
1308 this.a2 = (A+1) - (A-1)*cosw0 - coeff;
1309 break;
1310 }
1311
1312 this.b0a0 = this.b0/this.a0;
1313 this.b1a0 = this.b1/this.a0;
1314 this.b2a0 = this.b2/this.a0;
1315 this.a1a0 = this.a1/this.a0;
1316 this.a2a0 = this.a2/this.a0;
1317 }
1318
1319 this.process = function(buffer) {
1320 //y[n] = (b0/a0)*x[n] + (b1/a0)*x[n-1] + (b2/a0)*x[n-2]
1321 // - (a1/a0)*y[n-1] - (a2/a0)*y[n-2]
1322
1323 var len = buffer.length;
1324 var output = new Array(len);
1325
1326 for ( var i=0; i<buffer.length; i++ ) {
1327 output[i] = this.b0a0*buffer[i] + this.b1a0*this.x_1_l + this.b2a0*thi s.x_2_l - this.a1a0*this.y_1_l - this.a2a0*this.y_2_l;
1328 this.y_2_l = this.y_1_l;
1329 this.y_1_l = output[i];
1330 this.x_2_l = this.x_1_l;
1331 this.x_1_l = buffer[i];
1332 }
1333
1334 return output;
1335 }
1336
1337 this.processStereo = function(buffer) {
1338 //y[n] = (b0/a0)*x[n] + (b1/a0)*x[n-1] + (b2/a0)*x[n-2]
1339 // - (a1/a0)*y[n-1] - (a2/a0)*y[n-2]
1340
1341 var len = buffer.length;
1342 var output = new Array(len);
1343
1344 for ( var i=0; i<len/2; i++ ) {
1345 output[2*i] = this.b0a0*buffer[2*i] + this.b1a0*this.x_1_l + this.b2a0*t his.x_2_l - this.a1a0*this.y_1_l - this.a2a0*this.y_2_l;
1346 this.y_2_l = this.y_1_l;
1347 this.y_1_l = output[2*i];
1348 this.x_2_l = this.x_1_l;
1349 this.x_1_l = buffer[2*i];
1350
1351 output[2*i+1] = this.b0a0*buffer[2*i+1] + this.b1a0*this.x_1_r + this. b2a0*this.x_2_r - this.a1a0*this.y_1_r - this.a2a0*this.y_2_r;
1352 this.y_2_r = this.y_1_r;
1353 this.y_1_r = output[2*i+1];
1354 this.x_2_r = this.x_1_r;
1355 this.x_1_r = buffer[2*i+1];
1356 }
1357
1358 return output;
1359 }
1360 };
1361
1362
1363 /*
1364 * Magnitude to decibels
1365 *
1366 * Created by Ricard Marxer <email@ricardmarxer.com> on 2010-05-23.
1367 * Copyright 2010 Ricard Marxer. All rights reserved.
1368 *
1369 * @buffer array of magnitudes to convert to decibels
1370 *
1371 * @returns the array in decibels
1372 *
1373 */
1374 DSP.mag2db = function(buffer) {
1375 var minDb = -120;
1376 var minMag = Math.pow(10.0, minDb / 20.0);
1377
1378 var log = Math.log;
1379 var max = Math.max;
1380
1381 var result = Array(buffer.length);
1382 for (var i=0; i<buffer.length; i++) {
1383 result[i] = 20.0*log(max(buffer[i], minMag));
1384 }
1385
1386 return result;
1387 };
1388
1389 /*
1390 * Frequency response
1391 *
1392 * Created by Ricard Marxer <email@ricardmarxer.com> on 2010-05-23.
1393 * Copyright 2010 Ricard Marxer. All rights reserved.
1394 *
1395 * Calculates the frequency response at the given points.
1396 *
1397 * @b b coefficients of the filter
1398 * @a a coefficients of the filter
1399 * @w w points (normally between -PI and PI) where to calculate the frequency r esponse
1400 *
1401 * @returns the frequency response in magnitude
1402 *
1403 */
1404 DSP.freqz = function(b, a, w) {
1405 if (!w) {
1406 w = Array(200);
1407 for (var i=0;i<w.length; i++) {
1408 w[i] = DSP.TWO_PI/w.length * i - Math.PI;
1409 }
1410 }
1411
1412 var result = Array(w.length);
1413
1414 var sqrt = Math.sqrt;
1415 var cos = Math.cos;
1416 var sin = Math.sin;
1417
1418 for (var i=0; i<w.length; i++) {
1419 var numerator = {real:0.0, imag:0.0};
1420 for (var j=0; j<b.length; j++) {
1421 numerator.real += b[j] * cos(-j*w[i]);
1422 numerator.imag += b[j] * sin(-j*w[i]);
1423 }
1424
1425 var denominator = {real:0.0, imag:0.0};
1426 for (var j=0; j<a.length; j++) {
1427 denominator.real += a[j] * cos(-j*w[i]);
1428 denominator.imag += a[j] * sin(-j*w[i]);
1429 }
1430
1431 result[i] = sqrt(numerator.real*numerator.real + numerator.imag*numerator.i mag) / sqrt(denominator.real*denominator.real + denominator.imag*denominator.ima g);
1432 }
1433
1434 return result;
1435 };
1436
1437 /*
1438 * Graphical Equalizer
1439 *
1440 * Created by Ricard Marxer <email@ricardmarxer.com> on 2010-05-23.
1441 * Copyright 2010 Ricard Marxer. All rights reserved.
1442 *
1443 */
1444 // Implementation of a graphic equalizer with a configurable bands-per-octave
1445 // and minimum and maximum frequencies
1446 GraphicalEq = function(sampleRate) {
1447 this.FS = sampleRate;
1448 this.minFreq = 40.0;
1449 this.maxFreq = 16000.0;
1450
1451 this.bandsPerOctave = 1.0;
1452
1453 this.filters = []
1454 this.freqzs = []
1455
1456 this.calculateFreqzs = true;
1457
1458 this.recalculateFilters = function() {
1459 var bandCount = Math.round(Math.log(this.maxFreq/this.minFreq) * this.bandsP erOctave/ Math.LN2);
1460
1461 this.filters = [];
1462 for (var i=0; i<bandCount; i++) {
1463 var freq = this.minFreq*(Math.pow(2, i/this.bandsPerOctave));
1464 var newFilter = new Biquad(DSP.PEAKING_EQ, this.FS);
1465 newFilter.setDbGain(0);
1466 newFilter.setBW(1/this.bandsPerOctave);
1467 newFilter.setF0(freq);
1468 this.filters[i] = newFilter;
1469 this.recalculateFreqz(i);
1470 }
1471 }
1472
1473 this.setMinimumFrequency = function(freq) {
1474 this.minFreq = freq;
1475 this.recalculateFilters();
1476 }
1477
1478 this.setMaximumFrequency = function(freq) {
1479 this.maxFreq = freq;
1480 this.recalculateFilters();
1481 }
1482
1483 this.setBandsPerOctave = function(bands) {
1484 this.bandsPerOctave = bands;
1485 this.recalculateFilters();
1486 }
1487
1488 this.setBandGain = function(bandIndex, gain) {
1489 if (bandIndex < 0 || bandIndex > (this.filters.length-1)) {
1490 throw "The band index of the graphical equalizer is out of bounds.";
1491 return;
1492 }
1493
1494 if (!gain) {
1495 throw "A gain must be passed."
1496 return;
1497 }
1498
1499
1500 this.filters[bandIndex].setDbGain(gain);
1501 this.recalculateFreqz(bandIndex);
1502 }
1503
1504 this.recalculateFreqz = function(bandIndex) {
1505 if (!this.calculateFreqzs) {
1506 return;
1507 }
1508
1509
1510 if (bandIndex < 0 || bandIndex > (this.filters.length-1)) {
1511 throw "The band index of the graphical equalizer is out of bounds. " + ban dIndex + " is out of [" + 0 + ", " + this.filters.length-1 + "]"
1512 return;
1513 }
1514
1515 if (!this.w) {
1516 this.w = Array(400);
1517 for (var i=0; i<this.w.length; i++) {
1518 this.w[i] = Math.PI/this.w.length * i;
1519 }
1520 }
1521
1522 var b = [this.filters[bandIndex].b0, this.filters[bandIndex].b1, this.filter s[bandIndex].b2];
1523 var a = [this.filters[bandIndex].a0, this.filters[bandIndex].a1, this.filter s[bandIndex].a2];
1524
1525 this.freqzs[bandIndex] = DSP.mag2db(DSP.freqz(b, a, this.w));
1526 }
1527
1528 this.process = function(buffer) {
1529 var output = buffer;
1530
1531 for ( var i=0; i<this.filters.length; i++ ) {
1532 output = this.filters[i].process(output);
1533 }
1534
1535 return output;
1536 }
1537
1538 this.processStereo = function(buffer) {
1539 var output = buffer;
1540
1541 for ( var i=0; i<this.filters.length; i++ ) {
1542 output = this.filters[i].processStereo(output);
1543 }
1544
1545 return output;
1546 }
1547
1548 }
1549
1550
1551
1552 /**
1553 * MultiDelay effect by Almer Thie (http://code.almeros.com).
1554 * Copyright 2010 Almer Thie. All rights reserved.
1555 * Example: http://code.almeros.com/code-examples/delay-firefox-audio-api/
1556 *
1557 * This is a delay that feeds it's own delayed signal back into its circular
1558 * buffer. Also known as a CombFilter.
1559 *
1560 * Compatible with interleaved stereo (or more channel) buffers and
1561 * non-interleaved mono buffers.
1562 *
1563 * @param {Number} maxDelayInSamplesSize Maximum possible delay in samples (size of circular buffer)
1564 * @param {Number} delayInSamples Initial delay in samples
1565 * @param {Number} masterVolume Initial master volume. Float value: 0.0 (silence ), 1.0 (normal), >1.0 (amplify)
1566 * @param {Number} delayVolume Initial feedback delay volume. Float value: 0.0 ( silence), 1.0 (normal), >1.0 (amplify)
1567 *
1568 * @constructor
1569 */
1570 MultiDelay = function(maxDelayInSamplesSize, delayInSamples, masterVolume, delay Volume){
1571 this.delayBufferSamples = new Array(maxDelayInSamplesSize); // The maxim um size of delay
1572 this.delayInputPointer = delayInSamples;
1573 this.delayOutputPointer = 0;
1574
1575 this.delayInSamples = delayInSamples;
1576 this.masterVolume = masterVolume;
1577 this.delayVolume = delayVolume;
1578 }
1579
1580 /**
1581 * Change the delay time in samples.
1582 *
1583 * @param {Number} delayInSamples Delay in samples
1584 */
1585 MultiDelay.prototype.setDelayInSamples = function (delayInSamples){
1586 this.delayInSamples = delayInSamples;
1587
1588 this.delayInputPointer = this.delayOutputPointer + delayInSamples;
1589 if(this.delayInputPointer >= this.delayBufferSamples.length-1)
1590 this.delayInputPointer = this.delayInputPointer - this.delayBufferSample s.length;
1591 }
1592
1593 /**
1594 * Change the master volume.
1595 *
1596 * @param {Number} masterVolume Float value: 0.0 (silence), 1.0 (normal), >1.0 ( amplify)
1597 */
1598 MultiDelay.prototype.setMasterVolume = function (masterVolume){
1599 this.masterVolume = masterVolume;
1600 }
1601
1602 /**
1603 * Change the delay feedback volume.
1604 *
1605 * @param {Number} delayVolume Float value: 0.0 (silence), 1.0 (normal), >1.0 (a mplify)
1606 */
1607 MultiDelay.prototype.setDelayVolume = function (delayVolume){
1608 this.delayVolume = delayVolume;
1609 }
1610
1611 /**
1612 * Process a given interleaved or mono non-interleaved float value Array and add s the delayed audio.
1613 *
1614 * @param {Array} samples Array containing Float values or a Float32Array
1615 *
1616 * @returns A new Float32Array interleaved or mono non-interleaved as was fed to this function.
1617 */
1618 MultiDelay.prototype.process = function (samples){
1619 // NB. Make a copy to put in the output samples to return.
1620 var outputSamples = new Array(samples.length);
1621
1622 for(var i=0; i<samples.length; i++){
1623
1624 // delayBufferSamples could contain initial NULL's, return silence in th at case
1625 var delaySample = (this.delayBufferSamples[this.delayOutputPointer]==nul l ? 0.0 : this.delayBufferSamples[this.delayOutputPointer]);
1626
1627 // Mix normal audio data with delayed audio
1628 var sample = (delaySample * this.delayVolume) + samples[i];
1629
1630 // Add audio data with the delay in the delay buffer
1631 this.delayBufferSamples[this.delayInputPointer] = sample;
1632
1633 // Return the audio with delay mix
1634 outputSamples[i] = sample * this.masterVolume;
1635
1636 // Manage circulair delay buffer pointers
1637 this.delayInputPointer++;
1638 if(this.delayInputPointer >= this.delayBufferSamples.length-1)
1639 this.delayInputPointer = 0;
1640
1641 this.delayOutputPointer++;
1642 if(this.delayOutputPointer >= this.delayBufferSamples.length-1)
1643 this.delayOutputPointer = 0;
1644
1645 }
1646
1647 return outputSamples;
1648 }
1649
1650
1651
1652
1653 /**
1654 * SingleDelay effect by Almer Thie (http://code.almeros.com).
1655 * Copyright 2010 Almer Thie. All rights reserved.
1656 * Example: See usage in Reverb class
1657 *
1658 * This is a delay that does NOT feeds it's own delayed signal back into its
1659 * circular buffer, neither does it return the original signal. Also known as
1660 * an AllPassFilter(?).
1661 *
1662 * Compatible with interleaved stereo (or more channel) buffers and
1663 * non-interleaved mono buffers.
1664 *
1665 * @param {Number} maxDelayInSamplesSize Maximum possible delay in samples (size of circular buffer)
1666 * @param {Number} delayInSamples Initial delay in samples
1667 * @param {Number} delayVolume Initial feedback delay volume. Float value: 0.0 ( silence), 1.0 (normal), >1.0 (amplify)
1668 *
1669 * @constructor
1670 */
1671 SingleDelay = function(maxDelayInSamplesSize, delayInSamples, delayVolume){
1672 this.delayBufferSamples = new Array(maxDelayInSamplesSize); // The maxim um size of delay
1673 this.delayInputPointer = delayInSamples;
1674 this.delayOutputPointer = 0;
1675
1676 this.delayInSamples = delayInSamples;
1677 this.delayVolume = delayVolume;
1678 }
1679
1680 /**
1681 * Change the delay time in samples.
1682 *
1683 * @param {Number} delayInSamples Delay in samples
1684 */
1685 SingleDelay.prototype.setDelayInSamples = function (delayInSamples){
1686 this.delayInSamples = delayInSamples;
1687
1688 this.delayInputPointer = this.delayOutputPointer + delayInSamples;
1689 if(this.delayInputPointer >= this.delayBufferSamples.length-1)
1690 this.delayInputPointer = this.delayInputPointer - this.delayBufferSample s.length;
1691 }
1692
1693 /**
1694 * Change the return signal volume.
1695 *
1696 * @param {Number} delayVolume Float value: 0.0 (silence), 1.0 (normal), >1.0 (a mplify)
1697 */
1698 SingleDelay.prototype.setDelayVolume = function (delayVolume){
1699 this.delayVolume = delayVolume;
1700 }
1701
1702 /**
1703 * Process a given interleaved or mono non-interleaved float value Array and
1704 * returns the delayed audio.
1705 *
1706 * @param {Array} samples Array containing Float values or a Float32Array
1707 *
1708 * @returns A new Float32Array interleaved or mono non-interleaved as was fed to this function.
1709 */
1710 SingleDelay.prototype.process = function (samples){
1711 // NB. Make a copy to put in the output samples to return.
1712 var outputSamples = new Array(samples.length);
1713
1714 for(var i=0; i<samples.length; i++){
1715
1716 // Add audio data with the delay in the delay buffer
1717 this.delayBufferSamples[this.delayInputPointer] = samples[i];
1718
1719 // delayBufferSamples could contain initial NULL's, return silence in th at case
1720 var delaySample = this.delayBufferSamples[this.delayOutputPointer];
1721
1722 // Return the audio with delay mix
1723 outputSamples[i] = delaySample * this.delayVolume;
1724
1725
1726 // Manage circulair delay buffer pointers
1727 this.delayInputPointer++;
1728 if(this.delayInputPointer >= this.delayBufferSamples.length-1)
1729 this.delayInputPointer = 0;
1730
1731 this.delayOutputPointer++;
1732 if(this.delayOutputPointer >= this.delayBufferSamples.length-1)
1733 this.delayOutputPointer = 0;
1734
1735 }
1736
1737 return outputSamples;
1738 }
1739
1740
1741
1742
1743
1744 /**
1745 * Reverb effect by Almer Thie (http://code.almeros.com).
1746 * Copyright 2010 Almer Thie. All rights reserved.
1747 * Example: http://code.almeros.com/code-examples/reverb-firefox-audio-api/
1748 *
1749 * This reverb consists of 6 SingleDelays, 6 MultiDelays and an IIRFilter2
1750 * for each of the two stereo channels.
1751 *
1752 * Compatible with interleaved stereo buffers only!
1753 *
1754 * @param {Number} maxDelayInSamplesSize Maximum possible delay in samples (size of circular buffers)
1755 * @param {Number} delayInSamples Initial delay in samples for internal (Single/ Multi)delays
1756 * @param {Number} masterVolume Initial master volume. Float value: 0.0 (silence ), 1.0 (normal), >1.0 (amplify)
1757 * @param {Number} mixVolume Initial reverb signal mix volume. Float value: 0.0 (silence), 1.0 (normal), >1.0 (amplify)
1758 * @param {Number} delayVolume Initial feedback delay volume for internal (Singl e/Multi)delays. Float value: 0.0 (silence), 1.0 (normal), >1.0 (amplify)
1759 * @param {Number} dampFrequency Initial low pass filter frequency. 0 to 44100 ( depending on your maximum sampling frequency)
1760 *
1761 * @constructor
1762 */
1763 Reverb = function(maxDelayInSamplesSize, delayInSamples, masterVolume, mixVolume , delayVolume, dampFrequency){
1764 this.delayInSamples = delayInSamples;
1765 this.masterVolume = masterVolume;
1766 this.mixVolume = mixVolume;
1767 this.delayVolume = delayVolume;
1768 this.dampFrequency = dampFrequency;
1769
1770 this.NR_OF_MULTIDELAYS = 6;
1771 this.NR_OF_SINGLEDELAYS = 6;
1772
1773 this.LOWPASSL = new IIRFilter2(DSP.LOWPASS, dampFrequency, 0, 44100);
1774 this.LOWPASSR = new IIRFilter2(DSP.LOWPASS, dampFrequency, 0, 44100);
1775
1776 this.singleDelays = [];
1777 for(var i = 0; i<this.NR_OF_SINGLEDELAYS; i++){
1778 var delayMultiply = 1.0 + (i/7.0); // 1.0, 1.1, 1.2...
1779 this.singleDelays[i] = new SingleDelay(maxDelayInSamplesSize, Math.round (this.delayInSamples * delayMultiply), this.delayVolume);
1780 }
1781
1782 this.multiDelays = [];
1783 for(var i = 0; i<this.NR_OF_MULTIDELAYS; i++){
1784 var delayMultiply = 1.0 + (i/10.0); // 1.0, 1.1, 1.2...
1785 this.multiDelays[i] = new MultiDelay(maxDelayInSamplesSize, Math.round(t his.delayInSamples * delayMultiply), this.masterVolume, this.delayVolume);
1786 }
1787 }
1788
1789 /**
1790 * Change the delay time in samples as a base for all delays.
1791 *
1792 * @param {Number} delayInSamples Delay in samples
1793 */
1794 Reverb.prototype.setDelayInSamples = function (delayInSamples){
1795 this.delayInSamples = delayInSamples;
1796
1797 for(var i = 0; i<this.NR_OF_SINGLEDELAYS; i++){
1798 var delayMultiply = 1.0 + (i/7.0); // 1.0, 1.1, 1.2...
1799 this.singleDelays[i].setDelayInSamples( Math.round(this.delayInSamples * delayMultiply) );
1800 }
1801
1802 for(var i = 0; i<this.NR_OF_MULTIDELAYS; i++){
1803 var delayMultiply = 1.0 + (i/10.0); // 1.0, 1.1, 1.2...
1804 this.multiDelays[i].setDelayInSamples( Math.round(this.delayInSamples * delayMultiply) );
1805 }
1806 }
1807
1808 /**
1809 * Change the master volume.
1810 *
1811 * @param {Number} masterVolume Float value: 0.0 (silence), 1.0 (normal), >1.0 ( amplify)
1812 */
1813 Reverb.prototype.setMasterVolume = function (masterVolume){
1814 this.masterVolume = masterVolume;
1815 }
1816
1817 /**
1818 * Change the reverb signal mix level.
1819 *
1820 * @param {Number} mixVolume Float value: 0.0 (silence), 1.0 (normal), >1.0 (amp lify)
1821 */
1822 Reverb.prototype.setMixVolume = function (mixVolume){
1823 this.mixVolume = mixVolume;
1824 }
1825
1826 /**
1827 * Change all delays feedback volume.
1828 *
1829 * @param {Number} delayVolume Float value: 0.0 (silence), 1.0 (normal), >1.0 (a mplify)
1830 */
1831 Reverb.prototype.setDelayVolume = function (delayVolume){
1832 this.delayVolume = delayVolume;
1833
1834 for(var i = 0; i<this.NR_OF_SINGLEDELAYS; i++){
1835 this.singleDelays[i].setDelayVolume(this.delayVolume);
1836 }
1837
1838 for(var i = 0; i<this.NR_OF_MULTIDELAYS; i++){
1839 this.multiDelays[i].setDelayVolume(this.delayVolume);
1840 }
1841 }
1842
1843 /**
1844 * Change the Low Pass filter frequency.
1845 *
1846 * @param {Number} dampFrequency low pass filter frequency. 0 to 44100 (dependin g on your maximum sampling frequency)
1847 */
1848 Reverb.prototype.setDampFrequency = function (dampFrequency){
1849 this.dampFrequency = dampFrequency;
1850
1851 this.LOWPASSL.set(dampFrequency, 0);
1852 this.LOWPASSR.set(dampFrequency, 0);
1853 }
1854
1855 /**
1856 * Process a given interleaved float value Array and copies and adds the reverb signal.
1857 *
1858 * @param {Array} samples Array containing Float values or a Float32Array
1859 *
1860 * @returns A new Float32Array interleaved buffer.
1861 */
1862 Reverb.prototype.process = function (interleavedSamples){
1863 // NB. Make a copy to put in the output samples to return.
1864 var outputSamples = new Array(interleavedSamples.length);
1865
1866 // Perform low pass on the input samples to mimick damp
1867 var leftRightMix = DSP.deinterleave(interleavedSamples);
1868 this.LOWPASSL.process( leftRightMix[DSP.LEFT] );
1869 this.LOWPASSR.process( leftRightMix[DSP.RIGHT] );
1870 var filteredSamples = DSP.interleave(leftRightMix[DSP.LEFT], leftRightMix[DS P.RIGHT]);
1871
1872 // Process MultiDelays in parallel
1873 for(var i = 0; i<this.NR_OF_MULTIDELAYS; i++){
1874 // Invert the signal of every even multiDelay
1875 outputSamples = mixSampleBuffers(outputSamples, this.multiDelays[i].proc ess(filteredSamples), 2%i==0, this.NR_OF_MULTIDELAYS);
1876 }
1877
1878 // Process SingleDelays in series
1879 var singleDelaySamples = new Array(outputSamples.length);
1880 for(var i = 0; i<this.NR_OF_SINGLEDELAYS; i++){
1881 // Invert the signal of every even singleDelay
1882 singleDelaySamples = mixSampleBuffers(singleDelaySamples, this.singleDel ays[i].process(outputSamples), 2%i==0, 1);
1883 }
1884
1885 // Apply the volume of the reverb signal
1886 for(var i = 0; i<singleDelaySamples.length; i++){
1887 singleDelaySamples[i] *= this.mixVolume;
1888 }
1889
1890 // Mix the original signal with the reverb signal
1891 outputSamples = mixSampleBuffers(singleDelaySamples, interleavedSamples, 0, 1);
1892
1893 // Apply the master volume to the complete signal
1894 for(var i = 0; i<outputSamples.length; i++){
1895 outputSamples[i] *= this.masterVolume;
1896 }
1897
1898 return outputSamples;
1899 }
1900
1901 /**
1902 * Helper method (for Reverb) to mix two (interleaved) samplebuffers. It's possi ble
1903 * to negate the second buffer while mixing and to perform a volume correction
1904 * on the final signal.
1905 *
1906 * @param {Array} sampleBuffer1 Array containing Float values or a Float32Array
1907 * @param {Array} sampleBuffer2 Array containing Float values or a Float32Array
1908 * @param {Boolean} negate When true inverts/flips the audio signal
1909 * @param {Number} volumeCorrection When you add multiple sample buffers, use th is to tame your signal ;)
1910 *
1911 * @returns A new Float32Array interleaved buffer.
1912 */
1913 function mixSampleBuffers(sampleBuffer1, sampleBuffer2, negate, volumeCorrection ){
1914 var outputSamples = new Array(sampleBuffer1);
1915
1916 for(var i = 0; i<sampleBuffer1.length; i++){
1917 outputSamples[i] += (negate ? -sampleBuffer2[i] : sampleBuffer2[i]) / vo lumeCorrection;
1918 }
1919
1920 return outputSamples;
1921 }
1922
1923 /*
1924 * BeatDetektor.js
1925 *
1926 * BeatDetektor - CubicFX Visualizer Beat Detection & Analysis Algorithm
1927 * Javascript port by Charles J. Cliffe and Corban Brook
1928 *
1929 * Created by Charles J. Cliffe on 09-11-30.
1930 * Copyright 2009 Charles J. Cliffe. All rights reserved.
1931 *
1932 * BeatDetektor is free software: you can redistribute it and/or modify
1933 * it under the terms of the GNU Lesser General Public License as published by
1934 * the Free Software Foundation, either version 3 of the License, or
1935 * (at your option) any later version.
1936 *
1937 * Please note that only the Javascript version of BeatDetektor is licensed
1938 * under the terms of LGPL version 3; ports of BeatDetektor or derivatives
1939 * in other languages are licensed under the terms of GPL version 3.
1940 *
1941 * BeatDetektor is distributed in the hope that it will be useful,
1942 * but WITHOUT ANY WARRANTY; without even the implied warranty of
1943 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1944 * GNU Lesser General Public License for more details.
1945 *
1946 * You should have received a copy of the GNU Lesser General Public License
1947 * along with this program. If not, see <http://www.gnu.org/licenses/>.
1948 *
1949 * Please contact cj@cubicproductions.com if you seek alternate
1950 * licensing terms for your project.
1951 *
1952 */
1953
1954
1955 /*
1956 BeatDetektor class
1957
1958
1959 Theory:
1960
1961 Trigger detection is performed using a trail of moving averages,
1962
1963 The FFT input is broken up into 128 ranges and averaged, each range has two mov ing
1964 averages that tail each other at a rate of (1.0 / BD_DETECTION_RATE) seconds.
1965
1966 Each time the moving average for a range exceeds it's own tailing average by:
1967
1968 (moving_average[range] * BD_DETECTION_FACTOR >= moving_average[range])
1969
1970 if this is true there's a rising edge and a detection is flagged for that range .
1971 Next a trigger gap test is performed between rising edges and timestamp recorde d.
1972
1973 If the gap is larger than our BPM window (in seconds) then we can discard it an d
1974 reset the timestamp for a new detection -- but only after checking to see if it 's a
1975 reasonable match for 2* the current detection in case it's only triggered every
1976 other beat. Gaps that are lower than the BPM window are ignored and the last
1977 timestamp will not be reset.
1978
1979 Gaps that are within a reasonable window are run through a quality stage to det ermine
1980 how 'close' they are to that channel's current prediction and are incremented o r
1981 decremented by a weighted value depending on accuracy. Repeated hits of low acc uracy
1982 will still move a value towards erroneous detection but it's quality will be lo wered
1983 and will not be eligible for the gap time quality draft.
1984
1985 Once quality has been assigned ranges are reviewed for good match candidates an d if
1986 BD_MINIMUM_CONTRIBUTIONS or more ranges achieve a decent ratio (with a factor o f
1987 BD_QUALITY_TOLERANCE) of contribution to the overall quality we take them into the
1988 contest round. Note that the contest round won't run on a given process() cal l if
1989 the total quality achieved does not meet or exceed BD_QUALITY_TOLERANCE.
1990
1991 Each time through if a select draft of BPM ranges has achieved a reasonable qua lity
1992 above others it's awarded a value in the BPM contest. The BPM contest is a has h
1993 array indexed by an integer BPM value, each draft winner is awarded BD_QUALITY_ REWARD.
1994
1995 Finally the BPM contest is examined to determine a leader and all contest entri es
1996 are normalized to a total value of BD_FINISH_LINE, whichever range is closest t o
1997 BD_FINISH_LINE at any given point is considered to be the best guess however wa iting
1998 until a minimum contest winning value of about 20.0-25.0 will provide more accu rate
1999 results. Note that the 20-25 rule may vary with lower and higher input ranges.
2000 A winning value that exceeds 40 or hovers around 60 (the finish line) is pretty much
2001 a guaranteed match.
2002
2003
2004 Configuration Kernel Notes:
2005
2006 The majority of the ratios and values have been reverse-engineered from my own
2007 observation and visualization of information from various aspects of the detect ion
2008 triggers; so not all parameters have a perfect definition nor perhaps the best value yet.
2009 However despite this it performs very well; I had expected several more layers
2010 before a reasonable detection would be achieved. Comments for these parameters will be
2011 updated as analysis of their direct effect is explored.
2012
2013
2014 Input Restrictions:
2015
2016 bpm_maximum must be within the range of (bpm_minimum*2)-1
2017 i.e. minimum of 50 must have a maximum of 99 because 50*2 = 100
2018
2019
2020 Changelog:
2021
2022 01/17/2010 - Charles J. Cliffe
2023 - Tested and tweaked default kernel values for tighter detection
2024 - Added BeatDetektor.config_48_95, BeatDetektor.config_90_179 and BeatDetektor .config_150_280 for more refined detection ranges
2025 - Updated unit test to include new range config example
2026
2027 02/21/2010 - Charles J. Cliffe
2028 - Fixed numerous bugs and divide by 0 on 1% match causing poor accuracy
2029 - Re-worked the quality calulations, accuracy improved 8-10x
2030 - Primary value is now a fractional reading (*10, just divide by 10), added win _bpm_int_lo for integral readings
2031 - Added feedback loop for current_bpm to help back-up low quality channels
2032 - Unified range configs, now single default should be fine
2033 - Extended quality reward 'funnel'
2034
2035 */
2036 BeatDetektor = function(bpm_minimum, bpm_maximum, alt_config)
2037 {
2038 if (typeof(bpm_minimum)=='undefined') bpm_minimum = 85.0;
2039 if (typeof(bpm_maximum)=='undefined') bpm_maximum = 169.0
2040
2041 this.config = (typeof(alt_config)!='undefined')?alt_config:BeatDetektor.conf ig;
2042
2043 this.BPM_MIN = bpm_minimum;
2044 this.BPM_MAX = bpm_maximum;
2045
2046 this.beat_counter = 0;
2047 this.half_counter = 0;
2048 this.quarter_counter = 0;
2049
2050 // current average (this sample) for range n
2051 this.a_freq_range = new Array(this.config.BD_DETECTION_RANGES);
2052 // moving average of frequency range n
2053 this.ma_freq_range = new Array(this.config.BD_DETECTION_RANGES);
2054 // moving average of moving average of frequency range n
2055 this.maa_freq_range = new Array(this.config.BD_DETECTION_RANGES);
2056 // timestamp of last detection for frequecy range n
2057 this.last_detection = new Array(this.config.BD_DETECTION_RANGES);
2058
2059 // moving average of gap lengths
2060 this.ma_bpm_range = new Array(this.config.BD_DETECTION_RANGES);
2061 // moving average of moving average of gap lengths
2062 this.maa_bpm_range = new Array(this.config.BD_DETECTION_RANGES);
2063
2064 // range n quality attribute, good match = quality+, bad match = quality-, min = 0
2065 this.detection_quality = new Array(this.config.BD_DETECTION_RANGES);
2066
2067 // current trigger state for range n
2068 this.detection = new Array(this.config.BD_DETECTION_RANGES);
2069
2070 this.reset();
2071
2072
2073 }
2074
2075 BeatDetektor.prototype.reset = function()
2076 {
2077 // var bpm_avg = 60.0/((this.BPM_MIN+this.BPM_MAX)/2.0);
2078
2079 for (var i = 0; i < this.config.BD_DETECTION_RANGES; i++)
2080 {
2081 this.a_freq_range[i] = 0.0;
2082 this.ma_freq_range[i] = 0.0;
2083 this.maa_freq_range[i] = 0.0;
2084 this.last_detection[i] = 0.0;
2085
2086 this.ma_bpm_range[i] =
2087 this.maa_bpm_range[i] = 60.0/this.BPM_MIN + ((60.0/this.BPM_MAX-60.0/thi s.BPM_MIN) * (i/this.config.BD_DETECTION_RANGES));
2088
2089 this.detection_quality[i] = 0.0;
2090 this.detection[i] = false;
2091 }
2092
2093 this.ma_quality_avg = 0;
2094 this.ma_quality_total = 0;
2095
2096 this.bpm_contest = new Array();
2097 this.bpm_contest_lo = new Array();
2098
2099 this.quality_total = 0.0;
2100 this.quality_avg = 0.0;
2101
2102 this.current_bpm = 0.0;
2103 this.current_bpm_lo = 0.0;
2104
2105 this.winning_bpm = 0.0;
2106 this.win_val = 0.0;
2107 this.winning_bpm_lo = 0.0;
2108 this.win_val_lo = 0.0;
2109
2110 this.win_bpm_int = 0;
2111 this.win_bpm_int_lo = 0;
2112
2113 this.bpm_predict = 0;
2114
2115 this.is_erratic = false;
2116 this.bpm_offset = 0.0;
2117 this.last_timer = 0.0;
2118 this.last_update = 0.0;
2119
2120 this.bpm_timer = 0.0;
2121 this.beat_counter = 0;
2122 this.half_counter = 0;
2123 this.quarter_counter = 0;
2124 }
2125
2126
2127 BeatDetektor.config_default = {
2128 BD_DETECTION_RANGES : 128, // How many ranges to quantize the FFT into
2129 BD_DETECTION_RATE : 12.0, // Rate in 1.0 / BD_DETECTION_RATE seconds
2130 BD_DETECTION_FACTOR : 0.915, // Trigger ratio
2131 BD_QUALITY_DECAY : 0.6, // range and contest decay
2132 BD_QUALITY_TOLERANCE : 0.96,// Use the top x % of contest results
2133 BD_QUALITY_REWARD : 10.0, // Award weight
2134 BD_QUALITY_STEP : 0.1, // Award step (roaming speed)
2135 BD_MINIMUM_CONTRIBUTIONS : 6, // At least x ranges must agree to process a result
2136 BD_FINISH_LINE : 60.0, // Contest values wil be normalized to this finish line
2137 // this is the 'funnel' that pulls ranges in / out of alignment based on tri gger detection
2138 BD_REWARD_TOLERANCES : [ 0.001, 0.005, 0.01, 0.02, 0.04, 0.08, 0.10, 0.15, 0 .30 ], // .1%, .5%, 1%, 2%, 4%, 8%, 10%, 15%
2139 BD_REWARD_MULTIPLIERS : [ 20.0, 10.0, 8.0, 1.0, 1.0/2.0, 1.0/4.0, 1.0/8.0, 1 /16.0, 1/32.0 ]
2140 };
2141
2142
2143 // Default configuration kernel
2144 BeatDetektor.config = BeatDetektor.config_default;
2145
2146
2147 BeatDetektor.prototype.process = function(timer_seconds, fft_data)
2148 {
2149 if (!this.last_timer) { this.last_timer = timer_seconds; return; } // ignor e 0 start time
2150 if (this.last_timer > timer_seconds) { this.reset(); return; }
2151
2152 var timestamp = timer_seconds;
2153
2154 this.last_update = timer_seconds - this.last_timer;
2155 this.last_timer = timer_seconds;
2156
2157 if (this.last_update > 1.0) { this.reset(); return; }
2158
2159 var i,x;
2160 var v;
2161
2162 var bpm_floor = 60.0/this.BPM_MAX;
2163 var bpm_ceil = 60.0/this.BPM_MIN;
2164
2165 var range_step = (fft_data.length / this.config.BD_DETECTION_RANGES);
2166 var range = 0;
2167
2168
2169 for (x=0; x<fft_data.length; x+=range_step)
2170 {
2171 this.a_freq_range[range] = 0;
2172
2173 // accumulate frequency values for this range
2174 for (i = x; i<x+range_step; i++)
2175 {
2176 v = Math.abs(fft_data[i]);
2177 this.a_freq_range[range] += v;
2178 }
2179
2180 // average for range
2181 this.a_freq_range[range] /= range_step;
2182
2183 // two sets of averages chase this one at a
2184
2185 // moving average, increment closer to a_freq_range at a rate of 1.0 / B D_DETECTION_RATE seconds
2186 this.ma_freq_range[range] -= (this.ma_freq_range[range]-this.a_freq_rang e[range])*this.last_update*this.config.BD_DETECTION_RATE;
2187 // moving average of moving average, increment closer to this.ma_freq_ra nge at a rate of 1.0 / BD_DETECTION_RATE seconds
2188 this.maa_freq_range[range] -= (this.maa_freq_range[range]-this.ma_freq_r ange[range])*this.last_update*this.config.BD_DETECTION_RATE;
2189
2190 // if closest moving average peaks above trailing (with a tolerance of B D_DETECTION_FACTOR) then trigger a detection for this range
2191 var det = (this.ma_freq_range[range]*this.config.BD_DETECTION_FACTOR >= this.maa_freq_range[range]);
2192
2193 // compute bpm clamps for comparison to gap lengths
2194
2195 // clamp detection averages to input ranges
2196 if (this.ma_bpm_range[range] > bpm_ceil) this.ma_bpm_range[range] = bpm_ ceil;
2197 if (this.ma_bpm_range[range] < bpm_floor) this.ma_bpm_range[range] = bpm _floor;
2198 if (this.maa_bpm_range[range] > bpm_ceil) this.maa_bpm_range[range] = bp m_ceil;
2199 if (this.maa_bpm_range[range] < bpm_floor) this.maa_bpm_range[range] = b pm_floor;
2200
2201 var rewarded = false;
2202
2203 // new detection since last, test it's quality
2204 if (!this.detection[range] && det)
2205 {
2206 // calculate length of gap (since start of last trigger)
2207 var trigger_gap = timestamp-this.last_detection[range];
2208
2209 // trigger falls within acceptable range,
2210 if (trigger_gap < bpm_ceil && trigger_gap > (bpm_floor))
2211 {
2212 // compute gap and award quality
2213
2214 // use our tolerances as a funnel to edge detection towards the most likely value
2215 for (i = 0; i < this.config.BD_REWARD_TOLERANCES.length; i++)
2216 {
2217 if (Math.abs(this.ma_bpm_range[range]-trigger_gap) < this.ma _bpm_range[range]*this.config.BD_REWARD_TOLERANCES[i])
2218 {
2219 this.detection_quality[range] += this.config.BD_QUALITY_ REWARD * this.config.BD_REWARD_MULTIPLIERS[i];
2220 rewarded = true;
2221 }
2222 }
2223
2224 if (rewarded)
2225 {
2226 this.last_detection[range] = timestamp;
2227 }
2228 }
2229 else if (trigger_gap >= bpm_ceil) // low quality, gap exceeds maximu m time
2230 {
2231 // start a new gap test, next gap is guaranteed to be longer
2232
2233 // test for 1/2 beat
2234 trigger_gap /= 2.0;
2235
2236 if (trigger_gap < bpm_ceil && trigger_gap > (bpm_floor)) for (i = 0; i < this.config.BD_REWARD_TOLERANCES.length; i++)
2237 {
2238 if (Math.abs(this.ma_bpm_range[range]-trigger_gap) < this.ma _bpm_range[range]*this.config.BD_REWARD_TOLERANCES[i])
2239 {
2240 this.detection_quality[range] += this.config.BD_QUALITY_ REWARD * this.config.BD_REWARD_MULTIPLIERS[i];
2241 rewarded = true;
2242 }
2243 }
2244
2245
2246 // decrement quality if no 1/2 beat reward
2247 if (!rewarded)
2248 {
2249 trigger_gap *= 2.0;
2250 }
2251 this.last_detection[range] = timestamp;
2252 }
2253
2254 if (rewarded)
2255 {
2256 var qmp = (this.detection_quality[range]/this.quality_avg)*this. config.BD_QUALITY_STEP;
2257 if (qmp > 1.0)
2258 {
2259 qmp = 1.0;
2260 }
2261
2262 this.ma_bpm_range[range] -= (this.ma_bpm_range[range]-trigger_ga p) * qmp;
2263 this.maa_bpm_range[range] -= (this.maa_bpm_range[range]-this.ma_ bpm_range[range]) * qmp;
2264 }
2265 else if (trigger_gap >= bpm_floor && trigger_gap <= bpm_ceil)
2266 {
2267 if (this.detection_quality[range] < this.quality_avg*this.config .BD_QUALITY_TOLERANCE && this.current_bpm)
2268 {
2269 this.ma_bpm_range[range] -= (this.ma_bpm_range[range]-trigge r_gap) * this.config.BD_QUALITY_STEP;
2270 this.maa_bpm_range[range] -= (this.maa_bpm_range[range]-this .ma_bpm_range[range]) * this.config.BD_QUALITY_STEP;
2271 }
2272 this.detection_quality[range] -= this.config.BD_QUALITY_STEP;
2273 }
2274 else if (trigger_gap >= bpm_ceil)
2275 {
2276 if ((this.detection_quality[range] < this.quality_avg*this.confi g.BD_QUALITY_TOLERANCE) && this.current_bpm)
2277 {
2278 this.ma_bpm_range[range] -= (this.ma_bpm_range[range]-this.c urrent_bpm) * 0.5;
2279 this.maa_bpm_range[range] -= (this.maa_bpm_range[range]-this .ma_bpm_range[range]) * 0.5 ;
2280 }
2281 this.detection_quality[range]-= this.config.BD_QUALITY_STEP;
2282 }
2283
2284 }
2285
2286 if ((!rewarded && timestamp-this.last_detection[range] > bpm_ceil) || (d et && Math.abs(this.ma_bpm_range[range]-this.current_bpm) > this.bpm_offset))
2287 this.detection_quality[range] -= this.detection_quality[range]*this. config.BD_QUALITY_STEP*this.config.BD_QUALITY_DECAY*this.last_update;
2288
2289 // quality bottomed out, set to 0
2290 if (this.detection_quality[range] < 0.001) this.detection_quality[range] =0.001;
2291
2292 this.detection[range] = det;
2293
2294 range++;
2295 }
2296
2297 // total contribution weight
2298 this.quality_total = 0;
2299
2300 // total of bpm values
2301 var bpm_total = 0;
2302 // number of bpm ranges that contributed to this test
2303 var bpm_contributions = 0;
2304
2305
2306 // accumulate quality weight total
2307 for (var x=0; x<this.config.BD_DETECTION_RANGES; x++)
2308 {
2309 this.quality_total += this.detection_quality[x];
2310 }
2311
2312
2313 this.quality_avg = this.quality_total / this.config.BD_DETECTION_RANGES;
2314
2315
2316 if (this.quality_total)
2317 {
2318 // determine the average weight of each quality range
2319 this.ma_quality_avg += (this.quality_avg - this.ma_quality_avg) * this.l ast_update * this.config.BD_DETECTION_RATE/2.0;
2320
2321 this.maa_quality_avg += (this.ma_quality_avg - this.maa_quality_avg) * t his.last_update;
2322 this.ma_quality_total += (this.quality_total - this.ma_quality_total) * this.last_update * this.config.BD_DETECTION_RATE/2.0;
2323
2324 this.ma_quality_avg -= 0.98*this.ma_quality_avg*this.last_update*3.0;
2325 }
2326 else
2327 {
2328 this.quality_avg = 0.001;
2329 }
2330
2331 if (this.ma_quality_total <= 0) this.ma_quality_total = 0.001;
2332 if (this.ma_quality_avg <= 0) this.ma_quality_avg = 0.001;
2333
2334 var avg_bpm_offset = 0.0;
2335 var offset_test_bpm = this.current_bpm;
2336 var draft = new Array();
2337
2338 if (this.quality_avg) for (x=0; x<this.config.BD_DETECTION_RANGES; x++)
2339 {
2340 // if this detection range weight*tolerance is higher than the average w eight then add it's moving average contribution
2341 if (this.detection_quality[x]*this.config.BD_QUALITY_TOLERANCE >= this.m a_quality_avg)
2342 {
2343 if (this.ma_bpm_range[x] < bpm_ceil && this.ma_bpm_range[x] > bpm_fl oor)
2344 {
2345 bpm_total += this.maa_bpm_range[x];
2346
2347 var draft_float = Math.round((60.0/this.maa_bpm_range[x])*1000.0 );
2348
2349 draft_float = (Math.abs(Math.ceil(draft_float)-(60.0/this.curren t_bpm)*1000.0)<(Math.abs(Math.floor(draft_float)-(60.0/this.current_bpm)*1000.0) ))?Math.ceil(draft_float/10.0):Math.floor(draft_float/10.0);
2350 var draft_int = parseInt(draft_float/10.0);
2351 // if (draft_int) console.log(draft_int);
2352 if (typeof(draft[draft_int]=='undefined')) draft[draft_int] = 0;
2353
2354 draft[draft_int]+=this.detection_quality[x]/this.quality_avg;
2355 bpm_contributions++;
2356 if (offset_test_bpm == 0.0) offset_test_bpm = this.maa_bpm_range [x];
2357 else
2358 {
2359 avg_bpm_offset += Math.abs(offset_test_bpm-this.maa_bpm_rang e[x]);
2360 }
2361
2362
2363 }
2364 }
2365 }
2366
2367 // if we have one or more contributions that pass criteria then attempt to d isplay a guess
2368 var has_prediction = (bpm_contributions>=this.config.BD_MINIMUM_CONTRIBUTION S)?true:false;
2369
2370 var draft_winner=0;
2371 var win_val = 0;
2372
2373 if (has_prediction)
2374 {
2375 for (var draft_i in draft)
2376 {
2377 if (draft[draft_i] > win_val)
2378 {
2379 win_val = draft[draft_i];
2380 draft_winner = draft_i;
2381 }
2382 }
2383
2384 this.bpm_predict = 60.0/(draft_winner/10.0);
2385
2386 avg_bpm_offset /= bpm_contributions;
2387 this.bpm_offset = avg_bpm_offset;
2388
2389 if (!this.current_bpm)
2390 {
2391 this.current_bpm = this.bpm_predict;
2392 }
2393 }
2394
2395 if (this.current_bpm && this.bpm_predict) this.current_bpm -= (this.current_ bpm-this.bpm_predict)*this.last_update;
2396
2397 // hold a contest for bpm to find the current mode
2398 var contest_max=0;
2399
2400 for (var contest_i in this.bpm_contest)
2401 {
2402 if (contest_max < this.bpm_contest[contest_i]) contest_max = this.bpm_co ntest[contest_i];
2403 if (this.bpm_contest[contest_i] > this.config.BD_FINISH_LINE/2.0)
2404 {
2405 var draft_int_lo = parseInt(Math.round((contest_i)/10.0));
2406 if (this.bpm_contest_lo[draft_int_lo] != this.bpm_contest_lo[draft_i nt_lo]) this.bpm_contest_lo[draft_int_lo] = 0;
2407 this.bpm_contest_lo[draft_int_lo]+= (this.bpm_contest[contest_i]/6.0 )*this.last_update;
2408 }
2409 }
2410
2411 // normalize to a finish line
2412 if (contest_max > this.config.BD_FINISH_LINE)
2413 {
2414 for (var contest_i in this.bpm_contest)
2415 {
2416 this.bpm_contest[contest_i]=(this.bpm_contest[contest_i]/contest_max )*this.config.BD_FINISH_LINE;
2417 }
2418 }
2419
2420 contest_max = 0;
2421 for (var contest_i in this.bpm_contest_lo)
2422 {
2423 if (contest_max < this.bpm_contest_lo[contest_i]) contest_max = this.bpm _contest_lo[contest_i];
2424 }
2425
2426 // normalize to a finish line
2427 if (contest_max > this.config.BD_FINISH_LINE)
2428 {
2429 for (var contest_i in this.bpm_contest_lo)
2430 {
2431 this.bpm_contest_lo[contest_i]=(this.bpm_contest_lo[contest_i]/conte st_max)*this.config.BD_FINISH_LINE;
2432 }
2433 }
2434
2435
2436 // decay contest values from last loop
2437 for (contest_i in this.bpm_contest)
2438 {
2439 this.bpm_contest[contest_i]-=this.bpm_contest[contest_i]*(this.last_upda te/this.config.BD_DETECTION_RATE);
2440 }
2441
2442 // decay contest values from last loop
2443 for (contest_i in this.bpm_contest_lo)
2444 {
2445 this.bpm_contest_lo[contest_i]-=this.bpm_contest_lo[contest_i]*(this.las t_update/this.config.BD_DETECTION_RATE);
2446 }
2447
2448 this.bpm_timer+=this.last_update;
2449
2450 var winner = 0;
2451 var winner_lo = 0;
2452
2453 // attempt to display the beat at the beat interval ;)
2454 if (this.bpm_timer > this.winning_bpm/4.0 && this.current_bpm)
2455 {
2456 this.win_val = 0;
2457 this.win_val_lo = 0;
2458
2459 if (this.winning_bpm) while (this.bpm_timer > this.winning_bpm/4.0) this .bpm_timer -= this.winning_bpm/4.0;
2460
2461 // increment beat counter
2462
2463 this.quarter_counter++;
2464 this.half_counter= parseInt(this.quarter_counter/2);
2465 this.beat_counter = parseInt(this.quarter_counter/4);
2466
2467 // award the winner of this iteration
2468 var idx = parseInt(Math.round((60.0/this.current_bpm)*10.0));
2469 if (typeof(this.bpm_contest[idx])=='undefined') this.bpm_contest[idx] = 0;
2470 this.bpm_contest[idx]+=this.config.BD_QUALITY_REWARD;
2471
2472
2473 // find the overall winner so far
2474 for (var contest_i in this.bpm_contest)
2475 {
2476 if (this.win_val < this.bpm_contest[contest_i])
2477 {
2478 winner = contest_i;
2479 this.win_val = this.bpm_contest[contest_i];
2480 }
2481 }
2482
2483 if (winner)
2484 {
2485 this.win_bpm_int = parseInt(winner);
2486 this.winning_bpm = (60.0/(winner/10.0));
2487 }
2488
2489 // find the overall winner so far
2490 for (var contest_i in this.bpm_contest_lo)
2491 {
2492 if (this.win_val_lo < this.bpm_contest_lo[contest_i])
2493 {
2494 winner_lo = contest_i;
2495 this.win_val_lo = this.bpm_contest_lo[contest_i];
2496 }
2497 }
2498
2499 if (winner_lo)
2500 {
2501 this.win_bpm_int_lo = parseInt(winner_lo);
2502 this.winning_bpm_lo = 60.0/winner_lo;
2503 }
2504
2505
2506 //if (typeof(console)!='undefined' && (this.beat_counter % 4) == 0) cons ole.log("BeatDetektor("+this.BPM_MIN+","+this.BPM_MAX+"): [ Current Estimate: "+ winner+" BPM ] [ Time: "+(parseInt(timer_seconds*1000.0)/1000.0)+"s, Quality: "+ (parseInt(this.quality_total*1000.0)/1000.0)+", Rank: "+(parseInt(this.win_val*1 000.0)/1000.0)+", Jitter: "+(parseInt(this.bpm_offset*1000000.0)/1000000.0)+" ]" );
2507 }
2508
2509 }
2510
2511 // Sample Modules
2512 BeatDetektor.modules = new Object();
2513 BeatDetektor.modules.vis = new Object();
2514
2515 // simple bass kick visualizer assistant module
2516 BeatDetektor.modules.vis.BassKick = function()
2517 {
2518 this.is_kick = false;
2519 }
2520
2521 BeatDetektor.modules.vis.BassKick.prototype.process = function(det)
2522 {
2523 this.is_kick = ((det.detection[0] && det.detection[1]) || (det.ma_freq_range [0]/det.maa_freq_range[0])>1.4);
2524 }
2525
2526 BeatDetektor.modules.vis.BassKick.prototype.isKick = function()
2527 {
2528 return this.is_kick;
2529 }
2530
2531
2532 // simple vu spectrum visualizer assistant module
2533 BeatDetektor.modules.vis.VU = function()
2534 {
2535 this.vu_levels = new Array();
2536 }
2537
2538 BeatDetektor.modules.vis.VU.prototype.process = function(det,lus)
2539 {
2540 var i,det_val,det_max = 0.0;
2541 if (typeof(lus)=='undefined') lus = det.last_update;
2542
2543 for (i = 0; i < det.config.BD_DETECTION_RANGES; i++)
2544 {
2545 det_val = (det.ma_freq_range[i]/det.maa_freq_range[i]);
2546 if (det_val > det_max) det_max = det_val;
2547 }
2548
2549 if (det_max <= 0) det_max = 1.0;
2550
2551 for (i = 0; i < det.config.BD_DETECTION_RANGES; i++)
2552 {
2553 det_val = (det.ma_freq_range[i]/det.maa_freq_range[i]); //fabs(fftDa ta[i*2]/2.0);
2554
2555 if (det_val != det_val) det_val = 0;
2556
2557 //&& (det_val > this.vu_levels[i])
2558 if (det_val>1.0)
2559 {
2560 det_val -= 1.0;
2561 if (det_val>1.0) det_val = 1.0;
2562
2563 if (det_val > this.vu_levels[i])
2564 this.vu_levels[i] = det_val;
2565 else if (det.current_bpm) this.vu_levels[i] -= (this.vu_levels[i ]-det_val)*lus*(1.0/det.current_bpm)*3.0;
2566 }
2567 else
2568 {
2569 if (det.current_bpm) this.vu_levels[i] -= (lus/det.current_bpm)* 2.0;
2570 }
2571
2572 if (this.vu_levels[i] < 0 || this.vu_levels[i] != this.vu_levels[i]) this.vu_levels[i] = 0;
2573 }
2574 }
2575
2576
2577 // returns vu level for BD_DETECTION_RANGES range[x]
2578 BeatDetektor.modules.vis.VU.prototype.getLevel = function(x)
2579 {
2580 return this.vu_levels[x];
2581 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698