qt: playlist: use item title if available
[vlc.git] / modules / audio_filter / resampler / bandlimited.h
1 /*****************************************************************************
2  * bandlimited.h : bandlimited interpolation resampler
3  *****************************************************************************
4  * Copyright (C) 2002 VLC authors and VideoLAN
5  *
6  * Authors: Gildas Bazin <gbazin@netcourrier.com>
7  *
8  * This program is free software; you can redistribute it and/or modify it
9  * under the terms of the GNU Lesser General Public License as published by
10  * the Free Software Foundation; either version 2.1 of the License, or
11  * (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public License
19  * along with this program; if not, write to the Free Software Foundation,
20  * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
21  *****************************************************************************/
22
23 /* Conversion constants */
24 #define Nhc       8
25 #define Npc      (1<<Nhc)
26
27 /* Description of constants:
28  *
29  * Npc - is the number of look-up values available for the lowpass filter
30  *    between the beginning of its impulse response and the "cutoff time"
31  *    of the filter.  The cutoff time is defined as the reciprocal of the
32  *    lowpass-filter cut off frequence in Hz.  For example, if the
33  *    lowpass filter were a sinc function, Npc would be the index of the
34  *    impulse-response lookup-table corresponding to the first zero-
35  *    crossing of the sinc function.  (The inverse first zero-crossing
36  *    time of a sinc function equals its nominal cutoff frequency in Hz.)
37  *    Npc must be a power of 2 due to the details of the current
38  *    implementation. The default value of 512 is sufficiently high that
39  *    using linear interpolation to fill in between the table entries
40  *    gives approximately 16-bit accuracy in filter coefficients.
41  *
42  * Nhc - is log base 2 of Npc.
43  */
44
45 #define SMALL_FILTER_NMULT ((int16_t)13)
46 #define SMALL_FILTER_SCALE 13128 /* Unity-gain scale factor */
47 #define SMALL_FILTER_NWING 1536 /* Filter table length */
48 static const float SMALL_FILTER_FLOAT_IMP[] /* Impulse response */ = {
49 0.900000,
50 0.899980,
51 0.899920,
52 0.899821,
53 0.899681,
54 0.899502,
55 0.899283,
56 0.899024,
57 0.898726,
58 0.898388,
59 0.898010,
60 0.897592,
61 0.897135,
62 0.896638,
63 0.896102,
64 0.895526,
65 0.894911,
66 0.894256,
67 0.893562,
68 0.892829,
69 0.892056,
70 0.891244,
71 0.890394,
72 0.889504,
73 0.888575,
74 0.887608,
75 0.886602,
76 0.885557,
77 0.884474,
78 0.883352,
79 0.882192,
80 0.880993,
81 0.879756,
82 0.878482,
83 0.877169,
84 0.875818,
85 0.874430,
86 0.873004,
87 0.871541,
88 0.870040,
89 0.868502,
90 0.866927,
91 0.865315,
92 0.863667,
93 0.861981,
94 0.860259,
95 0.858501,
96 0.856707,
97 0.854876,
98 0.853010,
99 0.851108,
100 0.849170,
101 0.847197,
102 0.845189,
103 0.843146,
104 0.841067,
105 0.838954,
106 0.836807,
107 0.834625,
108 0.832409,
109 0.830160,
110 0.827876,
111 0.825559,
112 0.823209,
113 0.820825,
114 0.818408,
115 0.815959,
116 0.813477,
117 0.810963,
118 0.808417,
119 0.805839,
120 0.803229,
121 0.800588,
122 0.797916,
123 0.795213,
124 0.792479,
125 0.789714,
126 0.786919,
127 0.784095,
128 0.781240,
129 0.778356,
130 0.775442,
131 0.772500,
132 0.769529,
133 0.766529,
134 0.763501,
135 0.760444,
136 0.757361,
137 0.754249,
138 0.751110,
139 0.747945,
140 0.744753,
141 0.741534,
142 0.738289,
143 0.735018,
144 0.731721,
145 0.728400,
146 0.725053,
147 0.721681,
148 0.718285,
149 0.714865,
150 0.711420,
151 0.707953,
152 0.704461,
153 0.700947,
154 0.697410,
155 0.693851,
156 0.690269,
157 0.686665,
158 0.683040,
159 0.679394,
160 0.675727,
161 0.672039,
162 0.668331,
163 0.664602,
164 0.660854,
165 0.657087,
166 0.653300,
167 0.649495,
168 0.645671,
169 0.641829,
170 0.637969,
171 0.634091,
172 0.630197,
173 0.626285,
174 0.622357,
175 0.618412,
176 0.614452,
177 0.610476,
178 0.606485,
179 0.602478,
180 0.598457,
181 0.594422,
182 0.590373,
183 0.586310,
184 0.582234,
185 0.578144,
186 0.574042,
187 0.569928,
188 0.565801,
189 0.561663,
190 0.557514,
191 0.553353,
192 0.549182,
193 0.545001,
194 0.540809,
195 0.536607,
196 0.532397,
197 0.528177,
198 0.523948,
199 0.519711,
200 0.515466,
201 0.511214,
202 0.506954,
203 0.502686,
204 0.498413,
205 0.494132,
206 0.489846,
207 0.485554,
208 0.481256,
209 0.476954,
210 0.472646,
211 0.468335,
212 0.464019,
213 0.459699,
214 0.455377,
215 0.451050,
216 0.446722,
217 0.442390,
218 0.438057,
219 0.433722,
220 0.429385,
221 0.425048,
222 0.420709,
223 0.416370,
224 0.412031,
225 0.407692,
226 0.403354,
227 0.399016,
228 0.394679,
229 0.390344,
230 0.386011,
231 0.381680,
232 0.377351,
233 0.373025,
234 0.368702,
235 0.364382,
236 0.360066,
237 0.355754,
238 0.351446,
239 0.347143,
240 0.342844,
241 0.338551,
242 0.334264,
243 0.329982,
244 0.325706,
245 0.321437,
246 0.317174,
247 0.312918,
248 0.308670,
249 0.304429,
250 0.300197,
251 0.295972,
252 0.291756,
253 0.287548,
254 0.283350,
255 0.279161,
256 0.274982,
257 0.270812,
258 0.266653,
259 0.262504,
260 0.258366,
261 0.254239,
262 0.250123,
263 0.246018,
264 0.241926,
265 0.237846,
266 0.233777,
267 0.229722,
268 0.225679,
269 0.221650,
270 0.217634,
271 0.213632,
272 0.209643,
273 0.205669,
274 0.201709,
275 0.197764,
276 0.193833,
277 0.189918,
278 0.186018,
279 0.182134,
280 0.178265,
281 0.174413,
282 0.170577,
283 0.166758,
284 0.162955,
285 0.159169,
286 0.155401,
287 0.151650,
288 0.147916,
289 0.144201,
290 0.140503,
291 0.136824,
292 0.133163,
293 0.129521,
294 0.125898,
295 0.122294,
296 0.118710,
297 0.115145,
298 0.111599,
299 0.108073,
300 0.104568,
301 0.101083,
302 0.097618,
303 0.094174,
304 0.090750,
305 0.087348,
306 0.083966,
307 0.080606,
308 0.077268,
309 0.073951,
310 0.070656,
311 0.067383,
312 0.064132,
313 0.060903,
314 0.057697,
315 0.054513,
316 0.051352,
317 0.048214,
318 0.045099,
319 0.042006,
320 0.038938,
321 0.035892,
322 0.032870,
323 0.029872,
324 0.026898,
325 0.023947,
326 0.021021,
327 0.018118,
328 0.015240,
329 0.012386,
330 0.009557,
331 0.006752,
332 0.003972,
333 0.001217,
334 -0.001514,
335 -0.004219,
336 -0.006900,
337 -0.009555,
338 -0.012186,
339 -0.014790,
340 -0.017370,
341 -0.019924,
342 -0.022453,
343 -0.024956,
344 -0.027433,
345 -0.029885,
346 -0.032310,
347 -0.034710,
348 -0.037085,
349 -0.039433,
350 -0.041755,
351 -0.044051,
352 -0.046321,
353 -0.048565,
354 -0.050782,
355 -0.052974,
356 -0.055139,
357 -0.057278,
358 -0.059391,
359 -0.061477,
360 -0.063537,
361 -0.065570,
362 -0.067577,
363 -0.069558,
364 -0.071513,
365 -0.073440,
366 -0.075342,
367 -0.077217,
368 -0.079065,
369 -0.080887,
370 -0.082683,
371 -0.084452,
372 -0.086195,
373 -0.087911,
374 -0.089601,
375 -0.091265,
376 -0.092902,
377 -0.094513,
378 -0.096097,
379 -0.097656,
380 -0.099188,
381 -0.100693,
382 -0.102173,
383 -0.103626,
384 -0.105053,
385 -0.106454,
386 -0.107830,
387 -0.109179,
388 -0.110502,
389 -0.111799,
390 -0.113070,
391 -0.114316,
392 -0.115536,
393 -0.116730,
394 -0.117899,
395 -0.119042,
396 -0.120159,
397 -0.121251,
398 -0.122318,
399 -0.123360,
400 -0.124376,
401 -0.125368,
402 -0.126334,
403 -0.127275,
404 -0.128192,
405 -0.129083,
406 -0.129950,
407 -0.130793,
408 -0.131611,
409 -0.132404,
410 -0.133174,
411 -0.133919,
412 -0.134640,
413 -0.135337,
414 -0.136010,
415 -0.136659,
416 -0.137284,
417 -0.137886,
418 -0.138465,
419 -0.139020,
420 -0.139552,
421 -0.140061,
422 -0.140547,
423 -0.141010,
424 -0.141451,
425 -0.141868,
426 -0.142263,
427 -0.142636,
428 -0.142987,
429 -0.143316,
430 -0.143622,
431 -0.143907,
432 -0.144170,
433 -0.144412,
434 -0.144632,
435 -0.144830,
436 -0.145008,
437 -0.145165,
438 -0.145301,
439 -0.145416,
440 -0.145511,
441 -0.145585,
442 -0.145639,
443 -0.145673,
444 -0.145687,
445 -0.145681,
446 -0.145656,
447 -0.145611,
448 -0.145547,
449 -0.145464,
450 -0.145361,
451 -0.145240,
452 -0.145100,
453 -0.144942,
454 -0.144766,
455 -0.144571,
456 -0.144358,
457 -0.144127,
458 -0.143879,
459 -0.143613,
460 -0.143330,
461 -0.143030,
462 -0.142713,
463 -0.142379,
464 -0.142028,
465 -0.141661,
466 -0.141278,
467 -0.140878,
468 -0.140463,
469 -0.140032,
470 -0.139585,
471 -0.139123,
472 -0.138646,
473 -0.138153,
474 -0.137646,
475 -0.137124,
476 -0.136588,
477 -0.136037,
478 -0.135473,
479 -0.134894,
480 -0.134302,
481 -0.133696,
482 -0.133076,
483 -0.132444,
484 -0.131798,
485 -0.131140,
486 -0.130469,
487 -0.129785,
488 -0.129089,
489 -0.128381,
490 -0.127662,
491 -0.126930,
492 -0.126187,
493 -0.125433,
494 -0.124668,
495 -0.123891,
496 -0.123104,
497 -0.122306,
498 -0.121498,
499 -0.120680,
500 -0.119851,
501 -0.119013,
502 -0.118165,
503 -0.117308,
504 -0.116441,
505 -0.115565,
506 -0.114681,
507 -0.113788,
508 -0.112886,
509 -0.111976,
510 -0.111057,
511 -0.110131,
512 -0.109197,
513 -0.108255,
514 -0.107306,
515 -0.106350,
516 -0.105386,
517 -0.104416,
518 -0.103439,
519 -0.102455,
520 -0.101466,
521 -0.100470,
522 -0.099468,
523 -0.098460,
524 -0.097447,
525 -0.096428,
526 -0.095404,
527 -0.094375,
528 -0.093341,
529 -0.092303,
530 -0.091260,
531 -0.090212,
532 -0.089161,
533 -0.088105,
534 -0.087046,
535 -0.085982,
536 -0.084916,
537 -0.083846,
538 -0.082773,
539 -0.081697,
540 -0.080618,
541 -0.079536,
542 -0.078452,
543 -0.077366,
544 -0.076277,
545 -0.075187,
546 -0.074095,
547 -0.073001,
548 -0.071905,
549 -0.070808,
550 -0.069710,
551 -0.068611,
552 -0.067512,
553 -0.066411,
554 -0.065310,
555 -0.064209,
556 -0.063107,
557 -0.062005,
558 -0.060903,
559 -0.059802,
560 -0.058701,
561 -0.057600,
562 -0.056500,
563 -0.055401,
564 -0.054303,
565 -0.053206,
566 -0.052110,
567 -0.051015,
568 -0.049922,
569 -0.048831,
570 -0.047741,
571 -0.046654,
572 -0.045568,
573 -0.044485,
574 -0.043403,
575 -0.042325,
576 -0.041249,
577 -0.040175,
578 -0.039105,
579 -0.038037,
580 -0.036973,
581 -0.035912,
582 -0.034854,
583 -0.033799,
584 -0.032749,
585 -0.031701,
586 -0.030658,
587 -0.029619,
588 -0.028583,
589 -0.027552,
590 -0.026525,
591 -0.025502,
592 -0.024484,
593 -0.023471,
594 -0.022462,
595 -0.021458,
596 -0.020459,
597 -0.019464,
598 -0.018475,
599 -0.017491,
600 -0.016513,
601 -0.015539,
602 -0.014572,
603 -0.013610,
604 -0.012653,
605 -0.011702,
606 -0.010757,
607 -0.009818,
608 -0.008885,
609 -0.007958,
610 -0.007038,
611 -0.006123,
612 -0.005215,
613 -0.004313,
614 -0.003418,
615 -0.002530,
616 -0.001648,
617 -0.000772,
618 0.000096,
619 0.000958,
620 0.001813,
621 0.002660,
622 0.003501,
623 0.004335,
624 0.005161,
625 0.005980,
626 0.006792,
627 0.007597,
628 0.008394,
629 0.009183,
630 0.009965,
631 0.010740,
632 0.011507,
633 0.012266,
634 0.013018,
635 0.013762,
636 0.014498,
637 0.015226,
638 0.015946,
639 0.016658,
640 0.017363,
641 0.018059,
642 0.018747,
643 0.019428,
644 0.020100,
645 0.020764,
646 0.021420,
647 0.022067,
648 0.022707,
649 0.023338,
650 0.023961,
651 0.024575,
652 0.025181,
653 0.025779,
654 0.026369,
655 0.026950,
656 0.027523,
657 0.028087,
658 0.028643,
659 0.029191,
660 0.029730,
661 0.030260,
662 0.030782,
663 0.031296,
664 0.031801,
665 0.032297,
666 0.032785,
667 0.033265,
668 0.033736,
669 0.034199,
670 0.034653,
671 0.035098,
672 0.035536,
673 0.035964,
674 0.036384,
675 0.036796,
676 0.037199,
677 0.037594,
678 0.037980,
679 0.038358,
680 0.038727,
681 0.039088,
682 0.039441,
683 0.039785,
684 0.040121,
685 0.040448,
686 0.040768,
687 0.041078,
688 0.041381,
689 0.041675,
690 0.041961,
691 0.042239,
692 0.042509,
693 0.042770,
694 0.043024,
695 0.043269,
696 0.043506,
697 0.043735,
698 0.043956,
699 0.044169,
700 0.044375,
701 0.044572,
702 0.044761,
703 0.044943,
704 0.045116,
705 0.045282,
706 0.045440,
707 0.045591,
708 0.045734,
709 0.045869,
710 0.045996,
711 0.046117,
712 0.046229,
713 0.046334,
714 0.046432,
715 0.046522,
716 0.046605,
717 0.046681,
718 0.046750,
719 0.046811,
720 0.046865,
721 0.046913,
722 0.046953,
723 0.046986,
724 0.047012,
725 0.047032,
726 0.047044,
727 0.047050,
728 0.047049,
729 0.047042,
730 0.047028,
731 0.047007,
732 0.046980,
733 0.046946,
734 0.046907,
735 0.046860,
736 0.046808,
737 0.046749,
738 0.046684,
739 0.046613,
740 0.046536,
741 0.046453,
742 0.046365,
743 0.046270,
744 0.046169,
745 0.046063,
746 0.045951,
747 0.045834,
748 0.045711,
749 0.045583,
750 0.045449,
751 0.045310,
752 0.045165,
753 0.045016,
754 0.044861,
755 0.044701,
756 0.044536,
757 0.044366,
758 0.044192,
759 0.044012,
760 0.043828,
761 0.043639,
762 0.043445,
763 0.043247,
764 0.043045,
765 0.042838,
766 0.042626,
767 0.042411,
768 0.042191,
769 0.041967,
770 0.041738,
771 0.041506,
772 0.041270,
773 0.041030,
774 0.040786,
775 0.040539,
776 0.040288,
777 0.040033,
778 0.039774,
779 0.039513,
780 0.039247,
781 0.038979,
782 0.038707,
783 0.038432,
784 0.038154,
785 0.037872,
786 0.037588,
787 0.037301,
788 0.037011,
789 0.036718,
790 0.036422,
791 0.036124,
792 0.035823,
793 0.035520,
794 0.035214,
795 0.034906,
796 0.034595,
797 0.034282,
798 0.033967,
799 0.033650,
800 0.033330,
801 0.033009,
802 0.032686,
803 0.032361,
804 0.032034,
805 0.031705,
806 0.031375,
807 0.031043,
808 0.030709,
809 0.030374,
810 0.030037,
811 0.029700,
812 0.029360,
813 0.029020,
814 0.028678,
815 0.028336,
816 0.027992,
817 0.027647,
818 0.027301,
819 0.026955,
820 0.026607,
821 0.026259,
822 0.025910,
823 0.025561,
824 0.025210,
825 0.024860,
826 0.024508,
827 0.024157,
828 0.023805,
829 0.023453,
830 0.023100,
831 0.022748,
832 0.022395,
833 0.022042,
834 0.021689,
835 0.021336,
836 0.020983,
837 0.020630,
838 0.020278,
839 0.019926,
840 0.019573,
841 0.019222,
842 0.018870,
843 0.018520,
844 0.018169,
845 0.017819,
846 0.017470,
847 0.017121,
848 0.016773,
849 0.016426,
850 0.016080,
851 0.015734,
852 0.015389,
853 0.015045,
854 0.014702,
855 0.014360,
856 0.014019,
857 0.013679,
858 0.013341,
859 0.013003,
860 0.012667,
861 0.012332,
862 0.011998,
863 0.011665,
864 0.011334,
865 0.011004,
866 0.010676,
867 0.010349,
868 0.010024,
869 0.009700,
870 0.009377,
871 0.009057,
872 0.008738,
873 0.008421,
874 0.008105,
875 0.007791,
876 0.007479,
877 0.007169,
878 0.006861,
879 0.006554,
880 0.006249,
881 0.005947,
882 0.005646,
883 0.005347,
884 0.005051,
885 0.004756,
886 0.004464,
887 0.004173,
888 0.003885,
889 0.003599,
890 0.003315,
891 0.003033,
892 0.002753,
893 0.002476,
894 0.002201,
895 0.001928,
896 0.001658,
897 0.001390,
898 0.001124,
899 0.000861,
900 0.000600,
901 0.000341,
902 0.000085,
903 -0.000169,
904 -0.000420,
905 -0.000669,
906 -0.000915,
907 -0.001159,
908 -0.001400,
909 -0.001639,
910 -0.001875,
911 -0.002109,
912 -0.002340,
913 -0.002568,
914 -0.002794,
915 -0.003017,
916 -0.003238,
917 -0.003456,
918 -0.003671,
919 -0.003884,
920 -0.004094,
921 -0.004301,
922 -0.004506,
923 -0.004708,
924 -0.004907,
925 -0.005104,
926 -0.005298,
927 -0.005489,
928 -0.005678,
929 -0.005863,
930 -0.006046,
931 -0.006227,
932 -0.006405,
933 -0.006579,
934 -0.006752,
935 -0.006921,
936 -0.007088,
937 -0.007252,
938 -0.007413,
939 -0.007572,
940 -0.007728,
941 -0.007881,
942 -0.008031,
943 -0.008179,
944 -0.008324,
945 -0.008466,
946 -0.008606,
947 -0.008743,
948 -0.008877,
949 -0.009008,
950 -0.009137,
951 -0.009263,
952 -0.009387,
953 -0.009507,
954 -0.009626,
955 -0.009741,
956 -0.009854,
957 -0.009964,
958 -0.010071,
959 -0.010176,
960 -0.010278,
961 -0.010378,
962 -0.010475,
963 -0.010569,
964 -0.010661,
965 -0.010751,
966 -0.010837,
967 -0.010922,
968 -0.011003,
969 -0.011082,
970 -0.011159,
971 -0.011233,
972 -0.011305,
973 -0.011374,
974 -0.011441,
975 -0.011505,
976 -0.011567,
977 -0.011626,
978 -0.011683,
979 -0.011738,
980 -0.011790,
981 -0.011840,
982 -0.011887,
983 -0.011932,
984 -0.011975,
985 -0.012016,
986 -0.012054,
987 -0.012090,
988 -0.012124,
989 -0.012156,
990 -0.012185,
991 -0.012212,
992 -0.012237,
993 -0.012260,
994 -0.012281,
995 -0.012299,
996 -0.012316,
997 -0.012330,
998 -0.012342,
999 -0.012352,
1000 -0.012361,
1001 -0.012367,
1002 -0.012371,
1003 -0.012373,
1004 -0.012374,
1005 -0.012372,
1006 -0.012368,
1007 -0.012363,
1008 -0.012356,
1009 -0.012346,
1010 -0.012335,
1011 -0.012323,
1012 -0.012308,
1013 -0.012292,
1014 -0.012274,
1015 -0.012254,
1016 -0.012232,
1017 -0.012209,
1018 -0.012184,
1019 -0.012157,
1020 -0.012129,
1021 -0.012099,
1022 -0.012068,
1023 -0.012035,
1024 -0.012001,
1025 -0.011965,
1026 -0.011927,
1027 -0.011888,
1028 -0.011848,
1029 -0.011806,
1030 -0.011763,
1031 -0.011718,
1032 -0.011672,
1033 -0.011625,
1034 -0.011576,
1035 -0.011527,
1036 -0.011475,
1037 -0.011423,
1038 -0.011369,
1039 -0.011314,
1040 -0.011258,
1041 -0.011201,
1042 -0.011143,
1043 -0.011083,
1044 -0.011022,
1045 -0.010961,
1046 -0.010898,
1047 -0.010834,
1048 -0.010769,
1049 -0.010704,
1050 -0.010637,
1051 -0.010569,
1052 -0.010501,
1053 -0.010431,
1054 -0.010361,
1055 -0.010289,
1056 -0.010217,
1057 -0.010144,
1058 -0.010070,
1059 -0.009996,
1060 -0.009921,
1061 -0.009845,
1062 -0.009768,
1063 -0.009690,
1064 -0.009612,
1065 -0.009533,
1066 -0.009454,
1067 -0.009374,
1068 -0.009293,
1069 -0.009212,
1070 -0.009130,
1071 -0.009048,
1072 -0.008965,
1073 -0.008882,
1074 -0.008798,
1075 -0.008714,
1076 -0.008629,
1077 -0.008544,
1078 -0.008459,
1079 -0.008373,
1080 -0.008287,
1081 -0.008200,
1082 -0.008113,
1083 -0.008026,
1084 -0.007938,
1085 -0.007851,
1086 -0.007763,
1087 -0.007674,
1088 -0.007586,
1089 -0.007497,
1090 -0.007408,
1091 -0.007319,
1092 -0.007230,
1093 -0.007141,
1094 -0.007051,
1095 -0.006962,
1096 -0.006872,
1097 -0.006783,
1098 -0.006693,
1099 -0.006603,
1100 -0.006514,
1101 -0.006424,
1102 -0.006334,
1103 -0.006244,
1104 -0.006155,
1105 -0.006065,
1106 -0.005976,
1107 -0.005886,
1108 -0.005797,
1109 -0.005708,
1110 -0.005619,
1111 -0.005530,
1112 -0.005441,
1113 -0.005352,
1114 -0.005264,
1115 -0.005176,
1116 -0.005088,
1117 -0.005000,
1118 -0.004912,
1119 -0.004825,
1120 -0.004738,
1121 -0.004651,
1122 -0.004565,
1123 -0.004479,
1124 -0.004393,
1125 -0.004307,
1126 -0.004222,
1127 -0.004137,
1128 -0.004053,
1129 -0.003969,
1130 -0.003885,
1131 -0.003802,
1132 -0.003719,
1133 -0.003636,
1134 -0.003554,
1135 -0.003472,
1136 -0.003391,
1137 -0.003310,
1138 -0.003230,
1139 -0.003150,
1140 -0.003071,
1141 -0.002992,
1142 -0.002913,
1143 -0.002835,
1144 -0.002758,
1145 -0.002681,
1146 -0.002604,
1147 -0.002528,
1148 -0.002453,
1149 -0.002378,
1150 -0.002304,
1151 -0.002230,
1152 -0.002157,
1153 -0.002084,
1154 -0.002012,
1155 -0.001941,
1156 -0.001870,
1157 -0.001800,
1158 -0.001730,
1159 -0.001661,
1160 -0.001593,
1161 -0.001525,
1162 -0.001458,
1163 -0.001391,
1164 -0.001325,
1165 -0.001260,
1166 -0.001195,
1167 -0.001131,
1168 -0.001068,
1169 -0.001005,
1170 -0.000943,
1171 -0.000881,
1172 -0.000821,
1173 -0.000760,
1174 -0.000701,
1175 -0.000642,
1176 -0.000584,
1177 -0.000526,
1178 -0.000470,
1179 -0.000413,
1180 -0.000358,
1181 -0.000303,
1182 -0.000249,
1183 -0.000196,
1184 -0.000143,
1185 -0.000091,
1186 -0.000039,
1187 0.000011,
1188 0.000061,
1189 0.000111,
1190 0.000159,
1191 0.000207,
1192 0.000254,
1193 0.000301,
1194 0.000347,
1195 0.000392,
1196 0.000437,
1197 0.000480,
1198 0.000523,
1199 0.000566,
1200 0.000608,
1201 0.000649,
1202 0.000689,
1203 0.000729,
1204 0.000768,
1205 0.000806,
1206 0.000844,
1207 0.000881,
1208 0.000917,
1209 0.000953,
1210 0.000988,
1211 0.001022,
1212 0.001056,
1213 0.001089,
1214 0.001121,
1215 0.001153,
1216 0.001184,
1217 0.001214,
1218 0.001244,
1219 0.001273,
1220 0.001302,
1221 0.001329,
1222 0.001356,
1223 0.001383,
1224 0.001409,
1225 0.001434,
1226 0.001459,
1227 0.001483,
1228 0.001506,
1229 0.001529,
1230 0.001551,
1231 0.001573,
1232 0.001594,
1233 0.001614,
1234 0.001634,
1235 0.001653,
1236 0.001671,
1237 0.001689,
1238 0.001707,
1239 0.001724,
1240 0.001740,
1241 0.001756,
1242 0.001771,
1243 0.001785,
1244 0.001799,
1245 0.001813,
1246 0.001826,
1247 0.001838,
1248 0.001850,
1249 0.001862,
1250 0.001872,
1251 0.001883,
1252 0.001893,
1253 0.001902,
1254 0.001911,
1255 0.001919,
1256 0.001927,
1257 0.001934,
1258 0.001941,
1259 0.001947,
1260 0.001953,
1261 0.001959,
1262 0.001964,
1263 0.001968,
1264 0.001972,
1265 0.001976,
1266 0.001979,
1267 0.001982,
1268 0.001984,
1269 0.001986,
1270 0.001988,
1271 0.001989,
1272 0.001990,
1273 0.001990,
1274 0.001990,
1275 0.001989,
1276 0.001988,
1277 0.001987,
1278 0.001986,
1279 0.001984,
1280 0.001981,
1281 0.001979,
1282 0.001976,
1283 0.001972,
1284 0.001968,
1285 0.001964,
1286 0.001960,
1287 0.001955,
1288 0.001950,
1289 0.001945,
1290 0.001939,
1291 0.001933,
1292 0.001927,
1293 0.001921,
1294 0.001914,
1295 0.001907,
1296 0.001900,
1297 0.001892,
1298 0.001884,
1299 0.001876,
1300 0.001868,
1301 0.001859,
1302 0.001850,
1303 0.001841,
1304 0.001832,
1305 0.001822,
1306 0.001813,
1307 0.001803,
1308 0.001792,
1309 0.001782,
1310 0.001772,
1311 0.001761,
1312 0.001750,
1313 0.001739,
1314 0.001727,
1315 0.001716,
1316 0.001704,
1317 0.001693,
1318 0.001681,
1319 0.001669,
1320 0.001656,
1321 0.001644,
1322 0.001631,
1323 0.001619,
1324 0.001606,
1325 0.001593,
1326 0.001580,
1327 0.001567,
1328 0.001554,
1329 0.001540,
1330 0.001527,
1331 0.001514,
1332 0.001500,
1333 0.001486,
1334 0.001472,
1335 0.001459,
1336 0.001445,
1337 0.001431,
1338 0.001417,
1339 0.001402,
1340 0.001388,
1341 0.001374,
1342 0.001360,
1343 0.001345,
1344 0.001331,
1345 0.001317,
1346 0.001302,
1347 0.001288,
1348 0.001273,
1349 0.001259,
1350 0.001244,
1351 0.001230,
1352 0.001215,
1353 0.001200,
1354 0.001186,
1355 0.001171,
1356 0.001157,
1357 0.001142,
1358 0.001128,
1359 0.001113,
1360 0.001098,
1361 0.001084,
1362 0.001069,
1363 0.001055,
1364 0.001041,
1365 0.001026,
1366 0.001012,
1367 0.000997,
1368 0.000983,
1369 0.000969,
1370 0.000955,
1371 0.000940,
1372 0.000926,
1373 0.000912,
1374 0.000898,
1375 0.000884,
1376 0.000870,
1377 0.000856,
1378 0.000843,
1379 0.000829,
1380 0.000815,
1381 0.000802,
1382 0.000788,
1383 0.000775,
1384 0.000761,
1385 0.000748,
1386 0.000735,
1387 0.000722,
1388 0.000709,
1389 0.000696,
1390 0.000683,
1391 0.000670,
1392 0.000657,
1393 0.000645,
1394 0.000632,
1395 0.000620,
1396 0.000608,
1397 0.000595,
1398 0.000583,
1399 0.000571,
1400 0.000559,
1401 0.000547,
1402 0.000536,
1403 0.000524,
1404 0.000512,
1405 0.000501,
1406 0.000490,
1407 0.000479,
1408 0.000467,
1409 0.000456,
1410 0.000446,
1411 0.000435,
1412 0.000424,
1413 0.000414,
1414 0.000403,
1415 0.000393,
1416 0.000383,
1417 0.000373,
1418 0.000363,
1419 0.000353,
1420 0.000343,
1421 0.000333,
1422 0.000324,
1423 0.000315,
1424 0.000305,
1425 0.000296,
1426 0.000287,
1427 0.000278,
1428 0.000269,
1429 0.000261,
1430 0.000252,
1431 0.000244,
1432 0.000235,
1433 0.000227,
1434 0.000219,
1435 0.000211,
1436 0.000203,
1437 0.000196,
1438 0.000188,
1439 0.000181,
1440 0.000173,
1441 0.000166,
1442 0.000159,
1443 0.000152,
1444 0.000145,
1445 0.000138,
1446 0.000131,
1447 0.000125,
1448 0.000118,
1449 0.000112,
1450 0.000106,
1451 0.000100,
1452 0.000094,
1453 0.000088,
1454 0.000082,
1455 0.000077,
1456 0.000071,
1457 0.000066,
1458 0.000060,
1459 0.000055,
1460 0.000050,
1461 0.000045,
1462 0.000040,
1463 0.000035,
1464 0.000031,
1465 0.000026,
1466 0.000022,
1467 0.000017,
1468 0.000013,
1469 0.000009,
1470 0.000005,
1471 0.000001,
1472 -0.000003,
1473 -0.000007,
1474 -0.000010,
1475 -0.000014,
1476 -0.000017,
1477 -0.000021,
1478 -0.000024,
1479 -0.000027,
1480 -0.000030,
1481 -0.000033,
1482 -0.000036,
1483 -0.000039,
1484 -0.000042,
1485 -0.000044,
1486 -0.000047,
1487 -0.000049,
1488 -0.000052,
1489 -0.000054,
1490 -0.000056,
1491 -0.000059,
1492 -0.000061,
1493 -0.000063,
1494 -0.000065,
1495 -0.000066,
1496 -0.000068,
1497 -0.000070,
1498 -0.000071,
1499 -0.000073,
1500 -0.000074,
1501 -0.000076,
1502 -0.000077,
1503 -0.000078,
1504 -0.000080,
1505 -0.000081,
1506 -0.000082,
1507 -0.000083,
1508 -0.000084,
1509 -0.000085,
1510 -0.000085,
1511 -0.000086,
1512 -0.000087,
1513 -0.000087,
1514 -0.000088,
1515 -0.000089,
1516 -0.000089,
1517 -0.000089,
1518 -0.000090,
1519 -0.000090,
1520 -0.000090,
1521 -0.000091,
1522 -0.000091,
1523 -0.000091,
1524 -0.000091,
1525 -0.000091,
1526 -0.000091,
1527 -0.000091,
1528 -0.000091,
1529 -0.000091,
1530 -0.000090,
1531 -0.000090,
1532 -0.000090,
1533 -0.000090,
1534 -0.000089,
1535 -0.000089,
1536 -0.000089,
1537 -0.000088,
1538 -0.000088,
1539 -0.000087,
1540 -0.000087,
1541 -0.000086,
1542 -0.000085,
1543 -0.000085,
1544 -0.000084,
1545 -0.000084,
1546 -0.000083,
1547 -0.000082,
1548 -0.000081,
1549 -0.000081,
1550 -0.000080,
1551 -0.000079,
1552 -0.000078,
1553 -0.000077,
1554 -0.000077,
1555 -0.000076,
1556 -0.000075,
1557 -0.000074,
1558 -0.000073,
1559 -0.000072,
1560 -0.000071,
1561 -0.000070,
1562 -0.000069,
1563 -0.000068,
1564 -0.000067,
1565 -0.000066,
1566 -0.000065,
1567 -0.000064,
1568 -0.000063,
1569 -0.000062,
1570 -0.000061,
1571 -0.000060,
1572 -0.000059,
1573 -0.000058,
1574 -0.000057,
1575 -0.000056,
1576 -0.000055,
1577 -0.000054,
1578 -0.000052,
1579 -0.000051,
1580 -0.000050,
1581 -0.000049,
1582 -0.000048,
1583 -0.000047,
1584 -0.000046
1585 };
1586
1587 static const float SMALL_FILTER_FLOAT_IMPD[] /* Impulse response */ = {
1588 -0.000020,
1589 -0.000060,
1590 -0.000100,
1591 -0.000139,
1592 -0.000179,
1593 -0.000219,
1594 -0.000259,
1595 -0.000299,
1596 -0.000338,
1597 -0.000378,
1598 -0.000418,
1599 -0.000457,
1600 -0.000497,
1601 -0.000536,
1602 -0.000576,
1603 -0.000615,
1604 -0.000655,
1605 -0.000694,
1606 -0.000733,
1607 -0.000772,
1608 -0.000812,
1609 -0.000851,
1610 -0.000890,
1611 -0.000929,
1612 -0.000967,
1613 -0.001006,
1614 -0.001045,
1615 -0.001083,
1616 -0.001122,
1617 -0.001160,
1618 -0.001199,
1619 -0.001237,
1620 -0.001275,
1621 -0.001313,
1622 -0.001351,
1623 -0.001388,
1624 -0.001426,
1625 -0.001463,
1626 -0.001501,
1627 -0.001538,
1628 -0.001575,
1629 -0.001612,
1630 -0.001649,
1631 -0.001685,
1632 -0.001722,
1633 -0.001758,
1634 -0.001794,
1635 -0.001830,
1636 -0.001866,
1637 -0.001902,
1638 -0.001938,
1639 -0.001973,
1640 -0.002008,
1641 -0.002043,
1642 -0.002078,
1643 -0.002113,
1644 -0.002147,
1645 -0.002182,
1646 -0.002216,
1647 -0.002250,
1648 -0.002284,
1649 -0.002317,
1650 -0.002350,
1651 -0.002384,
1652 -0.002417,
1653 -0.002449,
1654 -0.002482,
1655 -0.002514,
1656 -0.002546,
1657 -0.002578,
1658 -0.002610,
1659 -0.002641,
1660 -0.002672,
1661 -0.002703,
1662 -0.002734,
1663 -0.002765,
1664 -0.002795,
1665 -0.002825,
1666 -0.002855,
1667 -0.002884,
1668 -0.002913,
1669 -0.002942,
1670 -0.002971,
1671 -0.003000,
1672 -0.003028,
1673 -0.003056,
1674 -0.003084,
1675 -0.003111,
1676 -0.003139,
1677 -0.003166,
1678 -0.003192,
1679 -0.003219,
1680 -0.003245,
1681 -0.003271,
1682 -0.003296,
1683 -0.003322,
1684 -0.003347,
1685 -0.003372,
1686 -0.003396,
1687 -0.003420,
1688 -0.003444,
1689 -0.003468,
1690 -0.003491,
1691 -0.003514,
1692 -0.003537,
1693 -0.003559,
1694 -0.003582,
1695 -0.003604,
1696 -0.003625,
1697 -0.003646,
1698 -0.003667,
1699 -0.003688,
1700 -0.003708,
1701 -0.003728,
1702 -0.003748,
1703 -0.003767,
1704 -0.003787,
1705 -0.003805,
1706 -0.003824,
1707 -0.003842,
1708 -0.003860,
1709 -0.003877,
1710 -0.003895,
1711 -0.003912,
1712 -0.003928,
1713 -0.003944,
1714 -0.003960,
1715 -0.003976,
1716 -0.003991,
1717 -0.004006,
1718 -0.004021,
1719 -0.004035,
1720 -0.004049,
1721 -0.004063,
1722 -0.004076,
1723 -0.004089,
1724 -0.004102,
1725 -0.004114,
1726 -0.004126,
1727 -0.004138,
1728 -0.004149,
1729 -0.004161,
1730 -0.004171,
1731 -0.004182,
1732 -0.004192,
1733 -0.004201,
1734 -0.004211,
1735 -0.004220,
1736 -0.004229,
1737 -0.004237,
1738 -0.004245,
1739 -0.004253,
1740 -0.004260,
1741 -0.004267,
1742 -0.004274,
1743 -0.004280,
1744 -0.004286,
1745 -0.004292,
1746 -0.004297,
1747 -0.004303,
1748 -0.004307,
1749 -0.004312,
1750 -0.004316,
1751 -0.004320,
1752 -0.004323,
1753 -0.004326,
1754 -0.004329,
1755 -0.004331,
1756 -0.004333,
1757 -0.004335,
1758 -0.004337,
1759 -0.004338,
1760 -0.004339,
1761 -0.004339,
1762 -0.004339,
1763 -0.004339,
1764 -0.004338,
1765 -0.004338,
1766 -0.004337,
1767 -0.004335,
1768 -0.004333,
1769 -0.004331,
1770 -0.004329,
1771 -0.004326,
1772 -0.004323,
1773 -0.004320,
1774 -0.004316,
1775 -0.004312,
1776 -0.004308,
1777 -0.004303,
1778 -0.004298,
1779 -0.004293,
1780 -0.004288,
1781 -0.004282,
1782 -0.004276,
1783 -0.004269,
1784 -0.004263,
1785 -0.004256,
1786 -0.004248,
1787 -0.004241,
1788 -0.004233,
1789 -0.004225,
1790 -0.004216,
1791 -0.004207,
1792 -0.004198,
1793 -0.004189,
1794 -0.004179,
1795 -0.004170,
1796 -0.004159,
1797 -0.004149,
1798 -0.004138,
1799 -0.004127,
1800 -0.004116,
1801 -0.004104,
1802 -0.004092,
1803 -0.004080,
1804 -0.004068,
1805 -0.004055,
1806 -0.004043,
1807 -0.004029,
1808 -0.004016,
1809 -0.004002,
1810 -0.003988,
1811 -0.003974,
1812 -0.003960,
1813 -0.003945,
1814 -0.003930,
1815 -0.003915,
1816 -0.003900,
1817 -0.003884,
1818 -0.003868,
1819 -0.003852,
1820 -0.003836,
1821 -0.003819,
1822 -0.003803,
1823 -0.003786,
1824 -0.003768,
1825 -0.003751,
1826 -0.003733,
1827 -0.003716,
1828 -0.003697,
1829 -0.003679,
1830 -0.003661,
1831 -0.003642,
1832 -0.003623,
1833 -0.003604,
1834 -0.003585,
1835 -0.003565,
1836 -0.003545,
1837 -0.003526,
1838 -0.003506,
1839 -0.003485,
1840 -0.003465,
1841 -0.003444,
1842 -0.003423,
1843 -0.003402,
1844 -0.003381,
1845 -0.003360,
1846 -0.003339,
1847 -0.003317,
1848 -0.003295,
1849 -0.003273,
1850 -0.003251,
1851 -0.003229,
1852 -0.003206,
1853 -0.003184,
1854 -0.003161,
1855 -0.003138,
1856 -0.003115,
1857 -0.003092,
1858 -0.003069,
1859 -0.003045,
1860 -0.003022,
1861 -0.002998,
1862 -0.002974,
1863 -0.002951,
1864 -0.002927,
1865 -0.002902,
1866 -0.002878,
1867 -0.002854,
1868 -0.002829,
1869 -0.002805,
1870 -0.002780,
1871 -0.002755,
1872 -0.002731,
1873 -0.002706,
1874 -0.002681,
1875 -0.002655,
1876 -0.002630,
1877 -0.002605,
1878 -0.002580,
1879 -0.002554,
1880 -0.002529,
1881 -0.002503,
1882 -0.002477,
1883 -0.002452,
1884 -0.002426,
1885 -0.002400,
1886 -0.002374,
1887 -0.002348,
1888 -0.002322,
1889 -0.002296,
1890 -0.002270,
1891 -0.002244,
1892 -0.002218,
1893 -0.002191,
1894 -0.002165,
1895 -0.002139,
1896 -0.002113,
1897 -0.002086,
1898 -0.002060,
1899 -0.002034,
1900 -0.002007,
1901 -0.001981,
1902 -0.001954,
1903 -0.001928,
1904 -0.001901,
1905 -0.001875,
1906 -0.001849,
1907 -0.001822,
1908 -0.001796,
1909 -0.001769,
1910 -0.001743,
1911 -0.001716,
1912 -0.001690,
1913 -0.001664,
1914 -0.001637,
1915 -0.001611,
1916 -0.001585,
1917 -0.001558,
1918 -0.001532,
1919 -0.001506,
1920 -0.001480,
1921 -0.001453,
1922 -0.001427,
1923 -0.001401,
1924 -0.001375,
1925 -0.001349,
1926 -0.001323,
1927 -0.001297,
1928 -0.001271,
1929 -0.001246,
1930 -0.001220,
1931 -0.001194,
1932 -0.001169,
1933 -0.001143,
1934 -0.001118,
1935 -0.001092,
1936 -0.001067,
1937 -0.001042,
1938 -0.001016,
1939 -0.000991,
1940 -0.000966,
1941 -0.000941,
1942 -0.000916,
1943 -0.000892,
1944 -0.000867,
1945 -0.000842,
1946 -0.000818,
1947 -0.000794,
1948 -0.000769,
1949 -0.000745,
1950 -0.000721,
1951 -0.000697,
1952 -0.000673,
1953 -0.000649,
1954 -0.000626,
1955 -0.000602,
1956 -0.000579,
1957 -0.000555,
1958 -0.000532,
1959 -0.000509,
1960 -0.000486,
1961 -0.000463,
1962 -0.000440,
1963 -0.000418,
1964 -0.000395,
1965 -0.000373,
1966 -0.000351,
1967 -0.000329,
1968 -0.000307,
1969 -0.000285,
1970 -0.000263,
1971 -0.000242,
1972 -0.000220,
1973 -0.000199,
1974 -0.000178,
1975 -0.000157,
1976 -0.000136,
1977 -0.000115,
1978 -0.000095,
1979 -0.000074,
1980 -0.000054,
1981 -0.000034,
1982 -0.000014,
1983 0.000006,
1984 0.000025,
1985 0.000045,
1986 0.000064,
1987 0.000083,
1988 0.000102,
1989 0.000121,
1990 0.000140,
1991 0.000158,
1992 0.000177,
1993 0.000195,
1994 0.000213,
1995 0.000231,
1996 0.000248,
1997 0.000266,
1998 0.000283,
1999 0.000300,
2000 0.000317,
2001 0.000334,
2002 0.000351,
2003 0.000367,
2004 0.000383,
2005 0.000399,
2006 0.000415,
2007 0.000431,
2008 0.000447,
2009 0.000462,
2010 0.000477,
2011 0.000492,
2012 0.000507,
2013 0.000522,
2014 0.000536,
2015 0.000551,
2016 0.000565,
2017 0.000579,
2018 0.000592,
2019 0.000606,
2020 0.000619,
2021 0.000633,
2022 0.000646,
2023 0.000658,
2024 0.000671,
2025 0.000684,
2026 0.000696,
2027 0.000708,
2028 0.000720,
2029 0.000731,
2030 0.000743,
2031 0.000754,
2032 0.000765,
2033 0.000776,
2034 0.000787,
2035 0.000798,
2036 0.000808,
2037 0.000818,
2038 0.000828,
2039 0.000838,
2040 0.000848,
2041 0.000857,
2042 0.000867,
2043 0.000876,
2044 0.000885,
2045 0.000893,
2046 0.000902,
2047 0.000910,
2048 0.000918,
2049 0.000926,
2050 0.000934,
2051 0.000942,
2052 0.000949,
2053 0.000956,
2054 0.000963,
2055 0.000970,
2056 0.000977,
2057 0.000983,
2058 0.000990,
2059 0.000996,
2060 0.001002,
2061 0.001008,
2062 0.001013,
2063 0.001019,
2064 0.001024,
2065 0.001029,
2066 0.001034,
2067 0.001039,
2068 0.001043,
2069 0.001047,
2070 0.001052,
2071 0.001056,
2072 0.001059,
2073 0.001063,
2074 0.001067,
2075 0.001070,
2076 0.001073,
2077 0.001076,
2078 0.001079,
2079 0.001082,
2080 0.001084,
2081 0.001086,
2082 0.001088,
2083 0.001090,
2084 0.001092,
2085 0.001094,
2086 0.001095,
2087 0.001097,
2088 0.001098,
2089 0.001099,
2090 0.001100,
2091 0.001101,
2092 0.001101,
2093 0.001101,
2094 0.001102,
2095 0.001102,
2096 0.001102,
2097 0.001102,
2098 0.001101,
2099 0.001101,
2100 0.001100,
2101 0.001099,
2102 0.001098,
2103 0.001097,
2104 0.001096,
2105 0.001095,
2106 0.001093,
2107 0.001091,
2108 0.001090,
2109 0.001088,
2110 0.001086,
2111 0.001083,
2112 0.001081,
2113 0.001079,
2114 0.001076,
2115 0.001073,
2116 0.001070,
2117 0.001068,
2118 0.001064,
2119 0.001061,
2120 0.001058,
2121 0.001054,
2122 0.001051,
2123 0.001047,
2124 0.001043,
2125 0.001039,
2126 0.001035,
2127 0.001031,
2128 0.001027,
2129 0.001023,
2130 0.001018,
2131 0.001014,
2132 0.001009,
2133 0.001004,
2134 0.000999,
2135 0.000994,
2136 0.000989,
2137 0.000984,
2138 0.000979,
2139 0.000973,
2140 0.000968,
2141 0.000962,
2142 0.000957,
2143 0.000951,
2144 0.000945,
2145 0.000939,
2146 0.000933,
2147 0.000927,
2148 0.000921,
2149 0.000914,
2150 0.000908,
2151 0.000902,
2152 0.000895,
2153 0.000889,
2154 0.000882,
2155 0.000875,
2156 0.000869,
2157 0.000862,
2158 0.000855,
2159 0.000848,
2160 0.000841,
2161 0.000834,
2162 0.000826,
2163 0.000819,
2164 0.000812,
2165 0.000805,
2166 0.000797,
2167 0.000790,
2168 0.000782,
2169 0.000775,
2170 0.000767,
2171 0.000759,
2172 0.000752,
2173 0.000744,
2174 0.000736,
2175 0.000728,
2176 0.000720,
2177 0.000712,
2178 0.000704,
2179 0.000696,
2180 0.000688,
2181 0.000680,
2182 0.000672,
2183 0.000664,
2184 0.000656,
2185 0.000648,
2186 0.000639,
2187 0.000631,
2188 0.000623,
2189 0.000615,
2190 0.000606,
2191 0.000598,
2192 0.000590,
2193 0.000581,
2194 0.000573,
2195 0.000564,
2196 0.000556,
2197 0.000547,
2198 0.000539,
2199 0.000531,
2200 0.000522,
2201 0.000514,
2202 0.000505,
2203 0.000497,
2204 0.000488,
2205 0.000480,
2206 0.000471,
2207 0.000463,
2208 0.000454,
2209 0.000446,
2210 0.000437,
2211 0.000429,
2212 0.000420,
2213 0.000412,
2214 0.000403,
2215 0.000395,
2216 0.000386,
2217 0.000378,
2218 0.000369,
2219 0.000361,
2220 0.000353,
2221 0.000344,
2222 0.000336,
2223 0.000327,
2224 0.000319,
2225 0.000311,
2226 0.000303,
2227 0.000294,
2228 0.000286,
2229 0.000278,
2230 0.000270,
2231 0.000261,
2232 0.000253,
2233 0.000245,
2234 0.000237,
2235 0.000229,
2236 0.000221,
2237 0.000213,
2238 0.000205,
2239 0.000197,
2240 0.000189,
2241 0.000181,
2242 0.000174,
2243 0.000166,
2244 0.000158,
2245 0.000150,
2246 0.000143,
2247 0.000135,
2248 0.000128,
2249 0.000120,
2250 0.000113,
2251 0.000105,
2252 0.000098,
2253 0.000090,
2254 0.000083,
2255 0.000076,
2256 0.000069,
2257 0.000061,
2258 0.000054,
2259 0.000047,
2260 0.000040,
2261 0.000033,
2262 0.000026,
2263 0.000019,
2264 0.000013,
2265 0.000006,
2266 -0.000001,
2267 -0.000008,
2268 -0.000014,
2269 -0.000021,
2270 -0.000027,
2271 -0.000034,
2272 -0.000040,
2273 -0.000046,
2274 -0.000053,
2275 -0.000059,
2276 -0.000065,
2277 -0.000071,
2278 -0.000077,
2279 -0.000083,
2280 -0.000089,
2281 -0.000095,
2282 -0.000100,
2283 -0.000106,
2284 -0.000112,
2285 -0.000117,
2286 -0.000123,
2287 -0.000128,
2288 -0.000134,
2289 -0.000139,
2290 -0.000144,
2291 -0.000150,
2292 -0.000155,
2293 -0.000160,
2294 -0.000165,
2295 -0.000170,
2296 -0.000175,
2297 -0.000180,
2298 -0.000184,
2299 -0.000189,
2300 -0.000194,
2301 -0.000198,
2302 -0.000203,
2303 -0.000207,
2304 -0.000211,
2305 -0.000216,
2306 -0.000220,
2307 -0.000224,
2308 -0.000228,
2309 -0.000232,
2310 -0.000236,
2311 -0.000240,
2312 -0.000244,
2313 -0.000248,
2314 -0.000251,
2315 -0.000255,
2316 -0.000258,
2317 -0.000262,
2318 -0.000265,
2319 -0.000269,
2320 -0.000272,
2321 -0.000275,
2322 -0.000278,
2323 -0.000281,
2324 -0.000284,
2325 -0.000287,
2326 -0.000290,
2327 -0.000293,
2328 -0.000296,
2329 -0.000298,
2330 -0.000301,
2331 -0.000303,
2332 -0.000306,
2333 -0.000308,
2334 -0.000311,
2335 -0.000313,
2336 -0.000315,
2337 -0.000317,
2338 -0.000319,
2339 -0.000321,
2340 -0.000323,
2341 -0.000325,
2342 -0.000327,
2343 -0.000329,
2344 -0.000330,
2345 -0.000332,
2346 -0.000334,
2347 -0.000335,
2348 -0.000337,
2349 -0.000338,
2350 -0.000339,
2351 -0.000340,
2352 -0.000342,
2353 -0.000343,
2354 -0.000344,
2355 -0.000345,
2356 -0.000346,
2357 -0.000347,
2358 -0.000347,
2359 -0.000348,
2360 -0.000349,
2361 -0.000350,
2362 -0.000350,
2363 -0.000351,
2364 -0.000351,
2365 -0.000352,
2366 -0.000352,
2367 -0.000352,
2368 -0.000352,
2369 -0.000353,
2370 -0.000353,
2371 -0.000353,
2372 -0.000353,
2373 -0.000353,
2374 -0.000353,
2375 -0.000353,
2376 -0.000353,
2377 -0.000352,
2378 -0.000352,
2379 -0.000352,
2380 -0.000351,
2381 -0.000351,
2382 -0.000350,
2383 -0.000350,
2384 -0.000349,
2385 -0.000349,
2386 -0.000348,
2387 -0.000347,
2388 -0.000346,
2389 -0.000346,
2390 -0.000345,
2391 -0.000344,
2392 -0.000343,
2393 -0.000342,
2394 -0.000341,
2395 -0.000340,
2396 -0.000339,
2397 -0.000338,
2398 -0.000336,
2399 -0.000335,
2400 -0.000334,
2401 -0.000333,
2402 -0.000331,
2403 -0.000330,
2404 -0.000328,
2405 -0.000327,
2406 -0.000325,
2407 -0.000324,
2408 -0.000322,
2409 -0.000321,
2410 -0.000319,
2411 -0.000317,
2412 -0.000316,
2413 -0.000314,
2414 -0.000312,
2415 -0.000310,
2416 -0.000308,
2417 -0.000306,
2418 -0.000305,
2419 -0.000303,
2420 -0.000301,
2421 -0.000299,
2422 -0.000297,
2423 -0.000295,
2424 -0.000293,
2425 -0.000290,
2426 -0.000288,
2427 -0.000286,
2428 -0.000284,
2429 -0.000282,
2430 -0.000280,
2431 -0.000277,
2432 -0.000275,
2433 -0.000273,
2434 -0.000270,
2435 -0.000268,
2436 -0.000266,
2437 -0.000263,
2438 -0.000261,
2439 -0.000259,
2440 -0.000256,
2441 -0.000254,
2442 -0.000251,
2443 -0.000249,
2444 -0.000246,
2445 -0.000244,
2446 -0.000241,
2447 -0.000239,
2448 -0.000236,
2449 -0.000234,
2450 -0.000231,
2451 -0.000228,
2452 -0.000226,
2453 -0.000223,
2454 -0.000221,
2455 -0.000218,
2456 -0.000215,
2457 -0.000213,
2458 -0.000210,
2459 -0.000207,
2460 -0.000205,
2461 -0.000202,
2462 -0.000199,
2463 -0.000197,
2464 -0.000194,
2465 -0.000191,
2466 -0.000189,
2467 -0.000186,
2468 -0.000183,
2469 -0.000180,
2470 -0.000178,
2471 -0.000175,
2472 -0.000172,
2473 -0.000169,
2474 -0.000167,
2475 -0.000164,
2476 -0.000161,
2477 -0.000159,
2478 -0.000156,
2479 -0.000153,
2480 -0.000150,
2481 -0.000148,
2482 -0.000145,
2483 -0.000142,
2484 -0.000140,
2485 -0.000137,
2486 -0.000134,
2487 -0.000131,
2488 -0.000129,
2489 -0.000126,
2490 -0.000123,
2491 -0.000121,
2492 -0.000118,
2493 -0.000115,
2494 -0.000113,
2495 -0.000110,
2496 -0.000107,
2497 -0.000105,
2498 -0.000102,
2499 -0.000100,
2500 -0.000097,
2501 -0.000094,
2502 -0.000092,
2503 -0.000089,
2504 -0.000087,
2505 -0.000084,
2506 -0.000082,
2507 -0.000079,
2508 -0.000077,
2509 -0.000074,
2510 -0.000072,
2511 -0.000069,
2512 -0.000067,
2513 -0.000064,
2514 -0.000062,
2515 -0.000059,
2516 -0.000057,
2517 -0.000055,
2518 -0.000052,
2519 -0.000050,
2520 -0.000048,
2521 -0.000045,
2522 -0.000043,
2523 -0.000041,
2524 -0.000038,
2525 -0.000036,
2526 -0.000034,
2527 -0.000032,
2528 -0.000029,
2529 -0.000027,
2530 -0.000025,
2531 -0.000023,
2532 -0.000021,
2533 -0.000019,
2534 -0.000016,
2535 -0.000014,
2536 -0.000012,
2537 -0.000010,
2538 -0.000008,
2539 -0.000006,
2540 -0.000004,
2541 -0.000002,
2542 -0.000000,
2543 0.000002,
2544 0.000004,
2545 0.000005,
2546 0.000007,
2547 0.000009,
2548 0.000011,
2549 0.000013,
2550 0.000015,
2551 0.000016,
2552 0.000018,
2553 0.000020,
2554 0.000022,
2555 0.000023,
2556 0.000025,
2557 0.000027,
2558 0.000028,
2559 0.000030,
2560 0.000031,
2561 0.000033,
2562 0.000034,
2563 0.000036,
2564 0.000037,
2565 0.000039,
2566 0.000040,
2567 0.000042,
2568 0.000043,
2569 0.000045,
2570 0.000046,
2571 0.000047,
2572 0.000049,
2573 0.000050,
2574 0.000051,
2575 0.000052,
2576 0.000054,
2577 0.000055,
2578 0.000056,
2579 0.000057,
2580 0.000058,
2581 0.000060,
2582 0.000061,
2583 0.000062,
2584 0.000063,
2585 0.000064,
2586 0.000065,
2587 0.000066,
2588 0.000067,
2589 0.000068,
2590 0.000069,
2591 0.000070,
2592 0.000070,
2593 0.000071,
2594 0.000072,
2595 0.000073,
2596 0.000074,
2597 0.000075,
2598 0.000075,
2599 0.000076,
2600 0.000077,
2601 0.000077,
2602 0.000078,
2603 0.000079,
2604 0.000079,
2605 0.000080,
2606 0.000081,
2607 0.000081,
2608 0.000082,
2609 0.000082,
2610 0.000083,
2611 0.000083,
2612 0.000084,
2613 0.000084,
2614 0.000085,
2615 0.000085,
2616 0.000085,
2617 0.000086,
2618 0.000086,
2619 0.000087,
2620 0.000087,
2621 0.000087,
2622 0.000087,
2623 0.000088,
2624 0.000088,
2625 0.000088,
2626 0.000088,
2627 0.000089,
2628 0.000089,
2629 0.000089,
2630 0.000089,
2631 0.000089,
2632 0.000089,
2633 0.000090,
2634 0.000090,
2635 0.000090,
2636 0.000090,
2637 0.000090,
2638 0.000090,
2639 0.000090,
2640 0.000090,
2641 0.000090,
2642 0.000090,
2643 0.000090,
2644 0.000090,
2645 0.000089,
2646 0.000089,
2647 0.000089,
2648 0.000089,
2649 0.000089,
2650 0.000089,
2651 0.000089,
2652 0.000088,
2653 0.000088,
2654 0.000088,
2655 0.000088,
2656 0.000088,
2657 0.000087,
2658 0.000087,
2659 0.000087,
2660 0.000086,
2661 0.000086,
2662 0.000086,
2663 0.000086,
2664 0.000085,
2665 0.000085,
2666 0.000084,
2667 0.000084,
2668 0.000084,
2669 0.000083,
2670 0.000083,
2671 0.000083,
2672 0.000082,
2673 0.000082,
2674 0.000081,
2675 0.000081,
2676 0.000080,
2677 0.000080,
2678 0.000079,
2679 0.000079,
2680 0.000078,
2681 0.000078,
2682 0.000077,
2683 0.000077,
2684 0.000076,
2685 0.000076,
2686 0.000075,
2687 0.000075,
2688 0.000074,
2689 0.000074,
2690 0.000073,
2691 0.000073,
2692 0.000072,
2693 0.000071,
2694 0.000071,
2695 0.000070,
2696 0.000070,
2697 0.000069,
2698 0.000068,
2699 0.000068,
2700 0.000067,
2701 0.000067,
2702 0.000066,
2703 0.000065,
2704 0.000065,
2705 0.000064,
2706 0.000063,
2707 0.000063,
2708 0.000062,
2709 0.000061,
2710 0.000061,
2711 0.000060,
2712 0.000059,
2713 0.000059,
2714 0.000058,
2715 0.000057,
2716 0.000057,
2717 0.000056,
2718 0.000055,
2719 0.000055,
2720 0.000054,
2721 0.000053,
2722 0.000053,
2723 0.000052,
2724 0.000051,
2725 0.000051,
2726 0.000050,
2727 0.000049,
2728 0.000049,
2729 0.000048,
2730 0.000047,
2731 0.000047,
2732 0.000046,
2733 0.000045,
2734 0.000045,
2735 0.000044,
2736 0.000043,
2737 0.000042,
2738 0.000042,
2739 0.000041,
2740 0.000040,
2741 0.000040,
2742 0.000039,
2743 0.000038,
2744 0.000038,
2745 0.000037,
2746 0.000036,
2747 0.000036,
2748 0.000035,
2749 0.000034,
2750 0.000034,
2751 0.000033,
2752 0.000032,
2753 0.000032,
2754 0.000031,
2755 0.000030,
2756 0.000030,
2757 0.000029,
2758 0.000028,
2759 0.000028,
2760 0.000027,
2761 0.000027,
2762 0.000026,
2763 0.000025,
2764 0.000025,
2765 0.000024,
2766 0.000023,
2767 0.000023,
2768 0.000022,
2769 0.000022,
2770 0.000021,
2771 0.000020,
2772 0.000020,
2773 0.000019,
2774 0.000019,
2775 0.000018,
2776 0.000017,
2777 0.000017,
2778 0.000016,
2779 0.000016,
2780 0.000015,
2781 0.000015,
2782 0.000014,
2783 0.000014,
2784 0.000013,
2785 0.000012,
2786 0.000012,
2787 0.000011,
2788 0.000011,
2789 0.000010,
2790 0.000010,
2791 0.000009,
2792 0.000009,
2793 0.000008,
2794 0.000008,
2795 0.000007,
2796 0.000007,
2797 0.000006,
2798 0.000006,
2799 0.000005,
2800 0.000005,
2801 0.000005,
2802 0.000004,
2803 0.000004,
2804 0.000003,
2805 0.000003,
2806 0.000002,
2807 0.000002,
2808 0.000002,
2809 0.000001,
2810 0.000001,
2811 0.000000,
2812 -0.000000,
2813 -0.000000,
2814 -0.000001,
2815 -0.000001,
2816 -0.000002,
2817 -0.000002,
2818 -0.000002,
2819 -0.000003,
2820 -0.000003,
2821 -0.000003,
2822 -0.000004,
2823 -0.000004,
2824 -0.000004,
2825 -0.000005,
2826 -0.000005,
2827 -0.000005,
2828 -0.000006,
2829 -0.000006,
2830 -0.000006,
2831 -0.000007,
2832 -0.000007,
2833 -0.000007,
2834 -0.000007,
2835 -0.000008,
2836 -0.000008,
2837 -0.000008,
2838 -0.000008,
2839 -0.000009,
2840 -0.000009,
2841 -0.000009,
2842 -0.000009,
2843 -0.000010,
2844 -0.000010,
2845 -0.000010,
2846 -0.000010,
2847 -0.000010,
2848 -0.000011,
2849 -0.000011,
2850 -0.000011,
2851 -0.000011,
2852 -0.000011,
2853 -0.000011,
2854 -0.000012,
2855 -0.000012,
2856 -0.000012,
2857 -0.000012,
2858 -0.000012,
2859 -0.000012,
2860 -0.000013,
2861 -0.000013,
2862 -0.000013,
2863 -0.000013,
2864 -0.000013,
2865 -0.000013,
2866 -0.000013,
2867 -0.000013,
2868 -0.000013,
2869 -0.000014,
2870 -0.000014,
2871 -0.000014,
2872 -0.000014,
2873 -0.000014,
2874 -0.000014,
2875 -0.000014,
2876 -0.000014,
2877 -0.000014,
2878 -0.000014,
2879 -0.000014,
2880 -0.000014,
2881 -0.000014,
2882 -0.000014,
2883 -0.000014,
2884 -0.000014,
2885 -0.000014,
2886 -0.000014,
2887 -0.000015,
2888 -0.000015,
2889 -0.000015,
2890 -0.000015,
2891 -0.000015,
2892 -0.000015,
2893 -0.000015,
2894 -0.000015,
2895 -0.000015,
2896 -0.000015,
2897 -0.000015,
2898 -0.000015,
2899 -0.000015,
2900 -0.000014,
2901 -0.000014,
2902 -0.000014,
2903 -0.000014,
2904 -0.000014,
2905 -0.000014,
2906 -0.000014,
2907 -0.000014,
2908 -0.000014,
2909 -0.000014,
2910 -0.000014,
2911 -0.000014,
2912 -0.000014,
2913 -0.000014,
2914 -0.000014,
2915 -0.000014,
2916 -0.000014,
2917 -0.000014,
2918 -0.000014,
2919 -0.000014,
2920 -0.000014,
2921 -0.000013,
2922 -0.000013,
2923 -0.000013,
2924 -0.000013,
2925 -0.000013,
2926 -0.000013,
2927 -0.000013,
2928 -0.000013,
2929 -0.000013,
2930 -0.000013,
2931 -0.000013,
2932 -0.000013,
2933 -0.000012,
2934 -0.000012,
2935 -0.000012,
2936 -0.000012,
2937 -0.000012,
2938 -0.000012,
2939 -0.000012,
2940 -0.000012,
2941 -0.000012,
2942 -0.000012,
2943 -0.000011,
2944 -0.000011,
2945 -0.000011,
2946 -0.000011,
2947 -0.000011,
2948 -0.000011,
2949 -0.000011,
2950 -0.000011,
2951 -0.000011,
2952 -0.000010,
2953 -0.000010,
2954 -0.000010,
2955 -0.000010,
2956 -0.000010,
2957 -0.000010,
2958 -0.000010,
2959 -0.000010,
2960 -0.000010,
2961 -0.000009,
2962 -0.000009,
2963 -0.000009,
2964 -0.000009,
2965 -0.000009,
2966 -0.000009,
2967 -0.000009,
2968 -0.000009,
2969 -0.000008,
2970 -0.000008,
2971 -0.000008,
2972 -0.000008,
2973 -0.000008,
2974 -0.000008,
2975 -0.000008,
2976 -0.000008,
2977 -0.000007,
2978 -0.000007,
2979 -0.000007,
2980 -0.000007,
2981 -0.000007,
2982 -0.000007,
2983 -0.000007,
2984 -0.000007,
2985 -0.000007,
2986 -0.000006,
2987 -0.000006,
2988 -0.000006,
2989 -0.000006,
2990 -0.000006,
2991 -0.000006,
2992 -0.000006,
2993 -0.000006,
2994 -0.000006,
2995 -0.000005,
2996 -0.000005,
2997 -0.000005,
2998 -0.000005,
2999 -0.000005,
3000 -0.000005,
3001 -0.000005,
3002 -0.000005,
3003 -0.000005,
3004 -0.000004,
3005 -0.000004,
3006 -0.000004,
3007 -0.000004,
3008 -0.000004,
3009 -0.000004,
3010 -0.000004,
3011 -0.000004,
3012 -0.000004,
3013 -0.000004,
3014 -0.000003,
3015 -0.000003,
3016 -0.000003,
3017 -0.000003,
3018 -0.000003,
3019 -0.000003,
3020 -0.000003,
3021 -0.000003,
3022 -0.000003,
3023 -0.000003,
3024 -0.000003,
3025 -0.000002,
3026 -0.000002,
3027 -0.000002,
3028 -0.000002,
3029 -0.000002,
3030 -0.000002,
3031 -0.000002,
3032 -0.000002,
3033 -0.000002,
3034 -0.000002,
3035 -0.000002,
3036 -0.000002,
3037 -0.000002,
3038 -0.000001,
3039 -0.000001,
3040 -0.000001,
3041 -0.000001,
3042 -0.000001,
3043 -0.000001,
3044 -0.000001,
3045 -0.000001,
3046 -0.000001,
3047 -0.000001,
3048 -0.000001,
3049 -0.000001,
3050 -0.000001,
3051 -0.000001,
3052 -0.000001,
3053 -0.000001,
3054 -0.000000,
3055 -0.000000,
3056 -0.000000,
3057 -0.000000,
3058 -0.000000,
3059 -0.000000,
3060 -0.000000,
3061 -0.000000,
3062 -0.000000,
3063 -0.000000,
3064 0.000000,
3065 0.000000,
3066 0.000000,
3067 0.000000,
3068 0.000000,
3069 0.000000,
3070 0.000000,
3071 0.000000,
3072 0.000000,
3073 0.000000,
3074 0.000000,
3075 0.000000,
3076 0.000000,
3077 0.000000,
3078 0.000001,
3079 0.000001,
3080 0.000001,
3081 0.000001,
3082 0.000001,
3083 0.000001,
3084 0.000001,
3085 0.000001,
3086 0.000001,
3087 0.000001,
3088 0.000001,
3089 0.000001,
3090 0.000001,
3091 0.000001,
3092 0.000001,
3093 0.000001,
3094 0.000001,
3095 0.000001,
3096 0.000001,
3097 0.000001,
3098 0.000001,
3099 0.000001,
3100 0.000001,
3101 0.000001,
3102 0.000001,
3103 0.000001,
3104 0.000001,
3105 0.000001,
3106 0.000001,
3107 0.000001,
3108 0.000001,
3109 0.000001,
3110 0.000001,
3111 0.000001,
3112 0.000001,
3113 0.000001,
3114 0.000001,
3115 0.000001,
3116 0.000001,
3117 0.000001,
3118 0.000001,
3119 0.000001,
3120 0.000001,
3121 0.000001,
3122 0.000001,
3123 0.000001
3124 };