2 #define HRTF_MIX_STEREO 1
3 #define HRTF_MIX_MATRIX2CH 2
5 /* Amplitude scaling factors */
6 #define M17_0DB 0.1414213562
7 #define M9_03DB 0.3535533906
8 #define M6_99DB 0.4472135955
9 #define M4_77DB 0.5773502692
10 #define M3_01DB 0.7071067812
11 #define M1_76DB 0.8164965809
13 #define DELAYBUFLEN 1024 /* Length of the delay buffer */
14 #define HRTFFILTLEN 64 /* HRTF filter length */
15 #define IRTHRESH 0.001 /* Impulse response pruning thresh. */
17 #define AMPLNORM M6_99DB /* Overall amplitude renormalization */
19 #define BASSFILTFREQ 180 /* Bass compensation filter cut (Hz) */
20 #define BASSFILTLEN 193 /* Bass compensation filter length */
21 #define BASSGAIN M_SQRT2 /* Bass compensation gain */
22 #define BASSCROSS 0.35 /* Bass cross talk */
24 #define FWRDURATION 240 /* FWR average duration (samples) */
25 #define MATREARDELAY 720 /* Matrix mode rear delay (samples) */
27 #define MATAGCTRIG 8.0 /* (Fuzzy) AGC trigger */
28 #define MATAGCDECAY 1.0 /* AGC baseline decay rate (1/samp.) */
29 #define MATAGCLOCK 0.2 /* AGC range (around 1) where the
30 matrix behaves passively */
31 #define MATCOMPGAIN 0.37 /* Cross talk compensation gain,
32 0.50 - 0.55 is full cancellation. */
34 #define CFECHODELAY 360 /* Center front echo delay (samples) */
35 #define CFECHOAMPL M17_0DB /* Center front echo amplitude */
37 #define STEXPAND2 0.07 /* Stereo expansion / 2 */
39 /* Head related impulse response (HRIR) derived from KEMAR measurement
40 data by Bill Gardner <billg@media.mit.edu> and Keith Martin
43 URL: http://sound.media.mit.edu/KEMAR.html
45 Distributed under GPL with authors' permission
48 /* EQUALIZED KEMAR HRIR
50 How to generate these data:
52 1. You need the MIT Media Lab's KEMAR data, read it into an software
53 capable of signal/time series analysis (like Mathematica, Matlab,
56 2. Construct an equalizing FIR inverse filter by calculating the
57 transfer function of the front, same side impulse response, then
58 take 1 over the absolute magnitude.
60 3. Cut the poles in the inverse filter's transfer function
61 specification by limiting the amplification to 2.5 (note, this
62 number assumes that you have correct signal processing
63 normalization of the Fourier transform).
65 4. Design the FIR inverse filter by calculating the inverse Fourier
66 transform, then chopping the coefficients down to a reasonable
67 number (N = 15 is used here), apply the Kaiser-Bessel window (alpha
68 = 2 is used here). Note the objective is remove the color bias
69 only (as if you are using an equalizer), _not_ to do a full inverse
70 filtering. (Note: beta = pi*alpha in other notation.)
72 For N = 15, alpha = 2, you should get the following impulse
75 0.001001558668605168, 0.00698457265741865, 0.040453643039829436,
76 0.012230541722147855, -0.11939760844854072, 0.16468099899755967,
77 -0.30297563073747436, 1.3140211791355982, -0.30297563073747436,
78 0.16468099899755967, -0.11939760844854072, 0.012230541722147855,
79 0.040453643039829436, 0.00698457265741865, 0.001001558668605168
81 5. Linearly convolve all KEMAR HRIR with this inverse filter.
83 6. Resample from 44.1 kHz sampling frequency to 48 kHz.
86 /* Center front (-5 degree) - not 0 degree in order to create a clear
87 front image from a finite distance */
88 float cf_filt
[128] = {
89 -0.00008638082319075036, 0.0003198059946385229,
90 -0.0005010631339162132, 0.0011424741331126876,
91 -0.001584220794688753, 0.001742715363246275,
92 -0.0011080796626780694, 0.0001651829990860167,
93 0.005235028337314985, 0.0035223828473357776,
94 0.010057681388431303, -0.033469432129545514,
95 0.013391253316233523, 0.004858462839827063,
96 0.08172161220103627, 0.26158596134500023,
97 -0.12420314583323326, -0.14298458356097565,
98 0.14421897280453896, -0.1635792507629016,
99 -0.02187136722480014, 0.2426863044711817,
100 0.07229814207917194, 0.0942742651913879,
101 0.29856830878076834, 0.2944146162057754,
102 -0.12122157003421209, -0.19640092165631157,
103 0.11623836502034968, -0.05794027397995521,
104 -0.34313138341973776, -0.19487516249168105,
105 0.010118993953802401, -0.09460218797710966,
106 -0.16761521117359582, 0.004154461610153861,
107 0.052768641758969316, -0.00041823982226147407,
108 0.021634960445143514, 0.07562793486871108,
109 0.08895407129506479, 0.039857755093416214,
110 0.044257936180422945, 0.061557584906101664,
111 0.015547268541895703, -0.023908191934932484,
112 0.009498030443468223, 0.03816269003221337,
113 -0.009820500607303615, -0.042003975527908084,
114 -0.03335447117311547, -0.029294510859746596,
115 -0.05212623136198511, -0.073427547153205,
116 -0.061190797824958836, -0.04620925059966413,
117 -0.04204619420702159, -0.02331915902615157,
118 0.00211481411477094, 0.00852563995740107,
119 0.008766809731743399, 0.008666632180812078,
120 0.018279202191625352, 0.02924332751289675,
121 0.022293148257836494, 0.012362146008584188,
122 0.008572582458807008, 0.006491370763597344,
123 -0.0019366944997535774, -0.006318669309634434,
124 -0.006457921690218669, -0.015050265524669974,
125 -0.02110660282616213, -0.017027809096377904,
126 -0.01651052305334348, -0.022770064150046673,
127 -0.01999875754219472, -0.012294792027337775,
128 -0.011506057031057188, -0.011448970577312903,
129 -0.004823572302580925, 0.0022451134042777883,
130 0.004145473526859826, 0.005629030064546135,
131 0.008588029213398785, 0.010092048834844231,
132 0.007182013245552008, 0.0014600979508720656,
133 -0.0038314646272511756, -0.003443901997881347,
134 -0.0029483418254804047, -0.007609357112679647,
135 -0.006518368948030822, -0.004495803701497202,
136 -0.007109113004849672, -0.008346237278084265,
137 -0.005560847336252453, -0.002993453167553188,
138 -0.005122897816824269, -0.004389782626604215,
139 -0.0010912633695218108, -0.0019712029474458835,
140 -0.005870162265802235, -0.005626159534954128,
141 -0.00027254977910844407, 0.0013794425431633785,
142 -0.0005919083190430062, -0.0007861203545416682,
143 -0.0007049560240893946, -0.0032720188494468868,
144 -0.004460645567968504, -0.0032018528193571696,
145 -0.0030579229375062105, -0.003593998902656612,
146 -0.0038032977997776445, -0.004613776010454773,
147 -0.0059796549143736845, -0.00420126194319768,
148 -0.0012374419948287222, 0.0008572699213050608,
149 0.0021490971020081094, 0.00047295283198381995,
150 -0.0009670277915884887, -0.001354440866080231,
151 -0.002962902746547851, -0.00533935813338141,
152 -0.005469203016468759, -0.004355784273189485
154 /* Front, same side (30 degree) */
155 float af_filt
[128] = {
156 -0.004140580614755493, 0.005790934614385445,
157 0.003318916682081112, 0.014257145544366063,
158 0.007328442487127339, -0.06550381777876194,
159 0.03502225818161845, -0.013090579770708259,
160 0.2517776798694195, 0.420770489950659,
161 -0.3418854608834852, -0.24371032493696737,
162 0.04901356150030018, -0.1778083521632833,
163 0.26448004245714163, 0.23245199964546834,
164 0.033053145803936305, 0.46811222821062415,
165 0.5359265986255611, -0.011912195468533787,
166 -0.39763432601411647, -0.034482864386898314,
167 0.029445398240649626, -0.3850940407863262,
168 -0.3272328478175581, -0.14701421403616477,
169 -0.08522137400169517, -0.14936851633336035,
170 -0.09432605283433723, 0.0991200405937827,
171 0.011075012089917331, -0.0051036489980274685,
172 0.0933903289749412, 0.1344189369609565,
173 0.10507466913017807, 0.04240159324684365,
174 0.06559270110638656, 0.026984119875617524,
175 -0.03359846103238096, -0.018000197099174275,
176 0.042031818548178244, 0.03849039666888434,
177 -0.02450829674011345, -0.03407882403088576,
178 -0.029230189282961977, -0.046964865291761734,
179 -0.09458258700116245, -0.1527349330901158,
180 -0.15411577687826097, -0.08761679790956928,
181 -0.033623549089171874, -0.007204768531481949,
182 0.008273425020444852, 0.021368717994908505,
183 0.04366608267875025, 0.05660907333076205,
184 0.06775726495503939, 0.05621881735271431,
185 0.03576231950669927, 0.02500825834889175,
186 0.015423811076054601, 0.007903258334503761,
187 -0.0053873014137761945, -0.006987955469434698,
188 -0.012027972007598602, -0.025228281243816594,
189 -0.026225091797257318, -0.023809293997344882,
190 -0.03250172017712295, -0.03195696301067249,
191 -0.01784813952189948, -0.01663267233760342,
192 -0.016184530450468065, -0.011659883749357463,
193 -0.0035378511240219163, -0.0005485800790443406,
194 0.0018432660108168625, 0.011634844139907534,
195 0.018333603402051105, 0.020447379185133056,
196 0.00850783664147828, 0.0004694148911037838,
197 -0.0017047130409786676, -0.0022409152834483997,
198 -0.000860472174892845, -0.004111075059198666,
199 -0.003527843382056666, -0.009640160874903018,
200 -0.01750044574231376, -0.015613389403672443,
201 -0.010790028120953001, -0.0095313499955768,
202 -0.007469721416726809, -0.0019186578145117315,
203 -0.00014977322572890802, -0.0029803838028179728,
204 -0.006520567233727221, 0.000035015132033882596,
205 0.009245098100543752, 0.009896930052308656,
206 0.008316744929565786, 0.004575207140193997,
207 -0.0000647420103997081, -0.004502916832871627,
208 -0.004225962213251224, -0.002886014126381486,
209 -0.006416834142585976, -0.007156609995423569,
210 -0.008840274447579472, -0.01441763751386817,
211 -0.015435817484659574, -0.00924487254924743,
212 -0.0021571721940235205, 0.0028540722992305453,
213 0.00273577475088536, -0.000788412365513805,
214 -0.0032650029728365907, -0.003880217646231338,
215 -0.0035302087299613778, -0.0038531436176586246,
216 -0.0011921632190514074, -0.0020722967099011938,
217 -0.004985351145629344, -0.0042375588844648735,
218 -0.003030360463006021, -0.0014161075428041471,
219 -0.0005083025643192044, 0.00035096963769606926
221 /* Front, opposite (-30 degree) */
222 float of_filt
[128] = {
223 -0.000013472538374193126, -0.00008048061877079751,
224 0.000043927265781258155, -0.000017931700794858892,
225 -0.000034774602476112886, -0.00009576223008735474,
226 0.0001557797638630691, -0.00018742885883751094,
227 0.00026512448626705716, -0.0001451040203319678,
228 -0.00008263233117758043, 0.0006486245853639179,
229 -0.0010631408451846698, 0.0026571994100746143,
230 0.0014179177997092787, 0.0062326502956616256,
231 -0.008194149324545333, -0.006568029415878379,
232 0.009538759710818582, 0.012309193558632693,
233 0.12336638055838955, 0.046164307101829005,
234 -0.10228706407884815, 0.04047687260345798,
235 -0.00296595313977046, -0.07057949208414134,
236 0.08172114840714612, 0.08736490764127891,
237 0.05105250431333021, 0.11627179512747428,
238 0.20717888490340705, 0.09375052213570291,
239 -0.09784374168330194, -0.010493571845901443,
240 0.053131894303891716, -0.10157443971694806,
241 -0.16264032634244974, -0.05402369511361273,
242 -0.0274403608654217, -0.09860277022495063,
243 -0.06841875821090282, -0.004434574400066223,
244 -0.0005222661652743502, -0.006231881259827263,
245 0.014410397820340159, 0.04885649512730243,
246 0.04361962569042684, 0.03399214029009391,
247 0.04961073933475931, 0.04067325604132289,
248 0.007850647519227257, 0.004564440466905299,
249 0.02257107958021618, 0.008183791928884486,
250 -0.014913479343180557, -0.018685938460856224,
251 -0.01745737397226911, -0.02327177054233603,
252 -0.03723048632685227, -0.044739390162299685,
253 -0.042651220125613766, -0.03730017561004743,
254 -0.029039465434276192, -0.01885087458914294,
255 -0.01207127752277769, -0.006779800724164512,
256 -0.001930416967444157, 0.000029454577995528385,
257 0.0013822760965755472, 0.0014799128583230202,
258 0.0002068200609199832, 0.0022254295286201083,
259 0.005143858159434566, 0.0018580542060917013,
260 -0.0019426046325146259, -0.0014464042108543495,
261 -0.0034430083560735582, -0.009692758426099499,
262 -0.011840035292593485, -0.010716508855893968,
263 -0.012939889036853034, -0.0121846427935653,
264 -0.006198503315630782, -0.0023186723099380305,
265 -0.002679872498314837, -0.003086020446226295,
266 -0.0015709623347698936, -0.0008147490468332398,
267 -0.0012384575726770983, -0.0005212877089109362,
268 0.0017707578744906142, 0.001324932723905786,
269 -0.0017023653780617696, -0.0045108927752919425,
270 -0.005422155613096912, -0.0039489323837623835,
271 -0.005295995750506547, -0.00629706566356189,
272 -0.004685732198036754, -0.0048076735568143,
273 -0.005978864279217503, -0.005928999306332966,
274 -0.004187703549017582, -0.003213999896976475,
275 -0.0028068699816073414, -0.0010889703907593833,
276 0.0003276714243495386, -0.0013015007040186994,
277 -0.003208050402434782, -0.0025115319088208545,
278 -0.0013787553006401076, -0.0018279087370218635,
279 -0.0025904836507747754, -0.002071221947222004,
280 -0.0026424212922485594, -0.0039837031817577,
281 -0.0041635566057380965, -0.004355223489150822,
282 -0.004350395332709937, -0.0036693292471930263,
283 -0.003386384394185026, -0.003972568655001128,
284 -0.004332336840023821, -0.002648767912111827,
285 -0.001384410080218114, -0.0011353792711849466,
286 -0.0013726264946164232, -0.0020075119315034313
288 /* Rear, same side (135 degree) */
289 float ar_filt
[128] = {
290 0.004573315040810066, 0.0013592578059426913,
291 0.01553271930902704, -0.0002356117224941317,
292 -0.05746098219774702, 0.03430688963370445,
293 0.00808371687447385, 0.21893535841158596,
294 0.2984357591724814, -0.3302799746504719,
295 -0.3194029149806245, 0.21633225051331056,
296 0.24371260938097083, -0.08843705549751085,
297 0.03939684701343366, 0.45386926431114494,
298 0.07599118140753386, -0.18114706160474578,
299 0.285640624686038, 0.4049515236666218,
300 -0.05347890222071792, -0.31464359045319074,
301 -0.1033502246468194, -0.04553593949283157,
302 -0.1880747731157464, -0.13629090230626037,
303 -0.10435789106123239, -0.19818232801888755,
304 -0.16701805476330397, -0.022793111199284,
305 0.058049696762683685, 0.007048321372693906,
306 -0.002966419183225961, 0.10140569697797763,
307 0.11648999956673124, 0.05218347182779882,
308 0.028427001212735392, 0.04151900310166159,
309 -0.0006960604221423734, -0.05898623212226975,
310 -0.03801934531173312, -0.029306970535287986,
311 -0.04549125782835908, -0.0599222718506552,
312 -0.058299618975430116, -0.03765579129720727,
313 -0.03559302657499581, -0.020647901025903054,
314 -0.005720957338744348, -0.0041915732688915545,
315 -0.0011470880098346143, 0.008737404798553,
316 0.023444168098121512, 0.024204226042172663,
317 0.01894897166475026, 0.020807655257479588,
318 0.021570431128040954, 0.006800556178576289,
319 -0.009000089216921362, -0.010969824547067934,
320 -0.0033653428332822374, -0.012676936164668659,
321 -0.026739938673413587, -0.023427869194287573,
322 -0.023302007105117244, -0.023647155590533712,
323 -0.021289317515613106, -0.009120487305069884,
324 0.0009251551667728967, 0.00004285344125653763,
325 -0.00009042365479456271, 0.00022573242339446494,
326 0.00720168491586098, 0.007111875505402431,
327 0.003186514817683482, 0.00810087718334745,
328 0.012619557025922575, 0.007854726400013397,
329 -0.0024013592881066267, -0.001452457473161119,
330 -0.0025535188366093945, -0.012428911627809337,
331 -0.013729251536694145, -0.0070099675146427344,
332 -0.007165284278706593, -0.01639289295622301,
333 -0.015831795079778305, -0.007305768485523729,
334 -0.003608863157004021, -0.0032640528878698084,
335 0.0030901263998481944, 0.00749497566124848,
336 0.002515185532327241, 0.00004840875738621367,
337 0.0017596043486043966, 0.0046229941553338144,
338 0.0034259167322926096, 0.003707347634186093,
339 0.0035584806528586328, -0.0019078936035275198,
340 -0.006057343815214898, -0.0069262470468817,
341 -0.004345020728618624, -0.004177623355574794,
342 -0.005373506556122508, -0.006624933928893836,
343 -0.008679541408588839, -0.010718719681595322,
344 -0.011392246979594496, -0.007893917064389902,
345 -0.0027572935365832536, -0.00006064707149834412,
346 -0.0012512537319656323, -0.0024501501002409786,
347 -0.0022106788572895998, -0.00234124933370301,
348 -0.0008953445167066823, 0.0005393670625637734,
349 -0.00033175600142209297, -0.004023994309351289,
350 -0.008655472335784443, -0.009899957354849682,
351 -0.008664952919996412, -0.00553483124503576,
352 -0.003735336089277662, -0.002754824348643885,
353 -0.0026884314856593368, -0.004084181815125924
355 /* Rear, opposite (-135 degree) */
356 float or_filt
[128] = {
357 0.0001220944028243897, -0.000021785381808441314,
358 5.823057988603169e-6, -0.00001217768176447613,
359 -0.00006123604397345513, 5.574117262531134e-6,
360 -0.00004935331914366778, 1.1771577934768211e-6,
361 -0.000059236211621095756, 9.503536190497286e-6,
362 -0.0001494445696103564, 0.00012248858284145305,
363 -0.0000963975321456313, 6.017905197665205e-6,
364 0.00003353395360402643, -0.0001931511015359506,
365 0.0005113536523931485, -0.0005676652619386114,
366 0.0012057159755477467, 0.0009370492250339692,
367 0.004596472288877981, -0.0018831773384237068,
368 -0.008208535225621212, 0.0038178646400751056,
369 0.008726517739105965, 0.06664363898418262,
370 0.06788684221502142, -0.04492315162807267,
371 -0.04019906311255255, 0.026203059677375153,
372 0.013678129114847544, -0.014334962223993527,
373 0.010141709596167392, 0.11559131576945537,
374 0.1586402064538425, 0.059975334707967023,
375 0.004671725963777715, 0.031498678282775874,
376 0.014338626006524587, -0.014749719448472231,
377 -0.02055508237941379, -0.05407690143992048,
378 -0.07767559836886143, -0.05029091786216801,
379 -0.030808335706574427, -0.03401958135442541,
380 -0.030520368430288967, -0.014168302104259355,
381 0.011907621259989802, 0.014286081013069,
382 0.006377467879613449, 0.018546823568277478,
383 0.028297012771618273, 0.025222339408338186,
384 0.021931611353415138, 0.019708894333646355,
385 0.01729258494072014, 0.017468204169564034,
386 0.009729094845051928, -0.002976992018531901,
387 -0.00956986166277019, -0.016125733548332074,
388 -0.02934094241442545, -0.04133767871051455,
389 -0.043536981145416466, -0.0385966307108608,
390 -0.02784453599342459, -0.018995135307247116,
391 -0.012849534096536747, -0.004437491064613308,
392 0.00028385411598204655, 0.003776874988516643,
393 0.008069432041547833, 0.008764754183751848,
394 0.008020908861878062, 0.006830351461360802,
395 0.002218330884267235, -0.0020478725582339444,
396 -0.003997428121462543, -0.007066287373515421,
397 -0.00940847412544698, -0.010938998446237963,
398 -0.011775483016151306, -0.011391103919484287,
399 -0.010586061195163017, -0.009842793078929053,
400 -0.007753202010139829, -0.00569213732353025,
401 -0.006506783349722073, -0.005346134281903736,
402 -0.003913089814898934, -0.0036091443854759727,
403 -0.0020328564301266287, 0.00017932870773467683,
404 0.0032779786679056357, 0.003969695813293966,
405 0.0020339334412434987, -0.00011345940675415259,
406 -0.0018344103399567666, -0.003556764701666365,
407 -0.004263523639408391, -0.002940568582022133,
408 -0.0034341188272627556, -0.006023399920020824,
409 -0.0077456903203677865, -0.007912219312377842,
410 -0.00625202770436523, -0.00530785086116117,
411 -0.005569722659634311, -0.004664448462594344,
412 -0.0037747773914077747, -0.004175649656985592,
413 -0.004659601521384289, -0.005008602967819641,
414 -0.004730625079902729, -0.0034039554356604146,
415 -0.0017110333873406587, -0.0006091938771510242,
416 -0.0016051679050678297, -0.003312864664007262,
417 -0.004505512715977288, -0.004152222189861692,
418 -0.003218596419678823, -0.0027277806209877343,
419 -0.001715005444317267, -0.0012589960071233749,
420 -0.001852908777923165, -0.002540339553144362
422 /* Center rear (180 degree) */
423 float cr_filt
[128] = {
424 -0.00005989110716536726, -0.00022790291829128702,
425 0.0002659166098971966, -0.0003774772716776257,
426 0.0004540309551867803, -0.000420238187386368,
427 0.00025518536450885686, 0.00028285526288953955,
428 -0.001016391007574093, 0.0028634984299063795,
429 0.0021574799687976045, 0.01035121276682072,
430 -0.010481720917298163, -0.013197198495899292,
431 0.0031928225328717195, 0.02903137843618603,
432 0.1632429772511569, 0.1047487989875262,
433 -0.10464685060623742, -0.09260196288035998,
434 -0.007514241993554443, 0.013596249226741712,
435 -0.019876166508450258, 0.1255626123599804,
436 0.3648170359521724, 0.19458249753223478,
437 -0.04434070930031298, 0.046582528121935265,
438 0.09484427347230277, -0.03137795311969644,
439 -0.10297437925363695, -0.09351091015917065,
440 -0.1129521092162064, -0.14925322995658827,
441 -0.1231466295584665, -0.06356719756705227,
442 -0.05442277895126282, -0.07568433015661316,
443 -0.023314932828602003, 0.04260950721318558,
444 0.02249026315598923, 0.02048195669571197,
445 0.05651342117268278, 0.05885038917623213,
446 0.03797102097397795, 0.011767394419953451,
447 0.00560502503429481, 0.005051125343961189,
448 -0.012925933188033823, -0.023918884651306566,
449 -0.013251659441678816, -0.010694772488866284,
450 -0.03080486448617846, -0.03661278237783158,
451 -0.0379227303416262, -0.042189005718490775,
452 -0.026595666344596286, -0.009759025956801257,
453 -0.002064986663513004, -0.002420117028098389,
454 -0.006629991977552491, 0.004619970897631026,
455 0.019450642967537877, 0.0173521119057514,
456 0.017641425439988062, 0.02270029598048491,
457 0.018976431925275348, 0.009299852902290885,
458 -0.001695039371619912, -0.00675162574265618,
459 -0.009380968871003034, -0.011208396125485165,
460 -0.01308640049201482, -0.0165636375633249,
461 -0.022004099870933345, -0.025173458684139286,
462 -0.016918759559175375, -0.00865150653575917,
463 -0.006999929082792643, -0.005454830010518988,
464 -0.0021129521131095317, 0.00018717090054046307,
465 -0.0002864344788569993, 0.0017615225381095569,
466 0.006985907557802283, 0.010577308310476465,
467 0.006466104789306027, -0.0014988738575948326,
468 -0.0039669755229277195, -0.0065156971200080235,
469 -0.009343206924192169, -0.0076430644693577495,
470 -0.004395214976600924, -0.003052735340422483,
471 -0.007019103043066595, -0.00974109267696527,
472 -0.007968015032797376, -0.007801513845528344,
473 -0.007535748903681969, -0.003543341967287925,
474 0.0015083125553729722, 0.0023345972556147025,
475 -0.0010043623069557037, -0.0025295765105203746,
476 -0.0023701840891643634, -0.0005908186035024362,
477 0.0029826252289082847, 0.004829048542117764,
478 0.004488360022902081, 0.00002643748103005408,
479 -0.0042100779212597295, -0.006170600558114495,
480 -0.007267149164680168, -0.006825522903494639,
481 -0.006899834372739123, -0.0073493916110062675,
482 -0.009554351265163382, -0.011790297433830197,
483 -0.010645796603734424, -0.0064661575394022106,
484 -0.002026743466524137, -0.0004337034584909932,
485 -0.0011172647031654614, -0.0017947816283674731,
486 -0.00255615052036616, -0.0017721562881944813,
487 -0.0002379619297227554, 0.0007130120121089036