1 // Copyright 2014 Emilie Gillet.
2 //
3 // Author: Emilie Gillet (emilie.o.gillet@gmail.com)
4 //
5 // Permission is hereby granted, free of charge, to any person obtaining a copy
6 // of this software and associated documentation files (the "Software"), to deal
7 // in the Software without restriction, including without limitation the rights
8 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 // copies of the Software, and to permit persons to whom the Software is
10 // furnished to do so, subject to the following conditions:
11 //
12 // The above copyright notice and this permission notice shall be included in
13 // all copies or substantial portions of the Software.
14 //
15 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 // THE SOFTWARE.
22 //
23 // See http://creativecommons.org/licenses/MIT/ for more information.
24 //
25 // -----------------------------------------------------------------------------
26 //
27 // Resources definitions.
28 //
29 // Automatically generated with:
30 // make resources
31 
32 
33 #include "streams/resources.h"
34 
35 namespace streams {
36 
37 static const char str_dummy[] = "dummy";
38 
39 
40 const char* string_table[] = {
41   str_dummy,
42 };
43 
44 const int16_t wav_gompertz[] = {
45        0,     12,     24,     36,
46       48,     60,     72,     84,
47       96,    108,    120,    132,
48      144,    156,    168,    179,
49      191,    203,    215,    227,
50      238,    250,    262,    274,
51      286,    298,    310,    323,
52      335,    348,    360,    373,
53      386,    399,    412,    426,
54      439,    453,    467,    481,
55      496,    511,    526,    542,
56      558,    574,    591,    608,
57      625,    643,    662,    681,
58      700,    720,    741,    762,
59      784,    807,    830,    854,
60      878,    903,    930,    956,
61      984,   1013,   1042,   1072,
62     1104,   1136,   1169,   1203,
63     1238,   1275,   1312,   1350,
64     1390,   1430,   1472,   1515,
65     1559,   1605,   1651,   1699,
66     1749,   1799,   1851,   1904,
67     1959,   2015,   2072,   2131,
68     2191,   2252,   2315,   2380,
69     2446,   2513,   2582,   2652,
70     2724,   2798,   2873,   2949,
71     3027,   3106,   3187,   3270,
72     3354,   3439,   3526,   3615,
73     3705,   3796,   3889,   3984,
74     4080,   4177,   4276,   4377,
75     4479,   4582,   4686,   4793,
76     4900,   5009,   5119,   5231,
77     5344,   5458,   5574,   5690,
78     5808,   5928,   6048,   6170,
79     6293,   6417,   6542,   6668,
80     6796,   6924,   7053,   7184,
81     7315,   7448,   7581,   7715,
82     7850,   7986,   8123,   8261,
83     8399,   8538,   8678,   8819,
84     8960,   9102,   9244,   9387,
85     9531,   9675,   9820,   9965,
86    10110,  10256,  10403,  10550,
87    10697,  10844,  10992,  11140,
88    11288,  11436,  11585,  11734,
89    11882,  12031,  12181,  12330,
90    12479,  12628,  12777,  12926,
91    13075,  13224,  13373,  13522,
92    13670,  13819,  13967,  14115,
93    14263,  14410,  14558,  14705,
94    14851,  14997,  15143,  15289,
95    15434,  15579,  15723,  15867,
96    16011,  16154,  16296,  16438,
97    16580,  16721,  16861,  17001,
98    17141,  17280,  17418,  17555,
99    17692,  17829,  17964,  18099,
100    18234,  18367,  18500,  18633,
101    18764,  18895,  19026,  19155,
102    19284,  19412,  19539,  19666,
103    19792,  19917,  20041,  20165,
104    20287,  20409,  20530,  20651,
105    20770,  20889,  21007,  21124,
106    21241,  21356,  21471,  21585,
107    21698,  21810,  21922,  22032,
108    22142,  22251,  22359,  22466,
109    22573,  22679,  22783,  22887,
110    22991,  23093,  23195,  23295,
111    23395,  23494,  23592,  23690,
112    23786,  23882,  23977,  24071,
113    24165,  24257,  24349,  24440,
114    24530,  24619,  24708,  24795,
115    24882,  24969,  25054,  25139,
116    25222,  25305,  25388,  25469,
117    25550,  25630,  25709,  25788,
118    25865,  25942,  26019,  26094,
119    26169,  26243,  26316,  26389,
120    26461,  26532,  26603,  26672,
121    26741,  26810,  26878,  26945,
122    27011,  27077,  27142,  27206,
123    27270,  27333,  27395,  27457,
124    27518,  27579,  27639,  27698,
125    27756,  27814,  27872,  27929,
126    27985,  28041,  28096,  28150,
127    28204,  28257,  28310,  28362,
128    28414,  28465,  28515,  28565,
129    28614,  28663,  28712,  28759,
130    28807,  28853,  28900,  28945,
131    28991,  29035,  29080,  29123,
132    29167,  29209,  29252,  29294,
133    29335,  29376,  29416,  29456,
134    29496,  29535,  29574,  29612,
135    29650,  29687,  29724,  29760,
136    29796,  29832,  29867,  29902,
137    29937,  29971,  30005,  30038,
138    30071,  30103,  30136,  30167,
139    30199,  30230,  30261,  30291,
140    30321,  30351,  30380,  30409,
141    30438,  30466,  30494,  30521,
142    30549,  30576,  30602,  30629,
143    30655,  30681,  30706,  30731,
144    30756,  30781,  30805,  30829,
145    30853,  30876,  30899,  30922,
146    30945,  30967,  30989,  31011,
147    31032,  31054,  31075,  31096,
148    31116,  31136,  31156,  31176,
149    31196,  31215,  31234,  31253,
150    31272,  31290,  31308,  31326,
151    31344,  31362,  31379,  31396,
152    31413,  31430,  31446,  31463,
153    31479,  31495,  31510,  31526,
154    31541,  31556,  31571,  31586,
155    31601,  31615,  31630,  31644,
156    31658,  31671,  31685,  31698,
157    31712,  31725,  31738,  31750,
158    31763,  31775,  31788,  31800,
159    31812,  31824,  31836,  31847,
160    31859,  31870,  31881,  31892,
161    31903,  31914,  31924,  31935,
162    31945,  31955,  31966,  31976,
163    31985,  31995,  32005,  32014,
164    32024,  32033,  32042,  32051,
165    32060,  32069,  32078,  32086,
166    32095,  32103,  32111,  32120,
167    32128,  32136,  32144,  32151,
168    32159,  32167,  32174,  32182,
169    32189,  32196,  32203,  32210,
170    32217,  32224,  32231,  32238,
171    32244,  32251,  32257,  32264,
172    32270,  32276,  32282,  32288,
173    32294,  32300,  32306,  32312,
174    32318,  32323,  32329,  32334,
175    32340,  32345,  32350,  32356,
176    32361,  32366,  32371,  32376,
177    32381,  32386,  32390,  32395,
178    32400,  32404,  32409,  32413,
179    32418,  32422,  32427,  32431,
180    32435,  32439,  32443,  32447,
181    32451,  32455,  32459,  32463,
182    32467,  32471,  32475,  32478,
183    32482,  32485,  32489,  32492,
184    32496,  32499,  32503,  32506,
185    32509,  32513,  32516,  32519,
186    32522,  32525,  32528,  32531,
187    32534,  32537,  32540,  32543,
188    32546,  32548,  32551,  32554,
189    32557,  32559,  32562,  32564,
190    32567,  32569,  32572,  32574,
191    32577,  32579,  32582,  32584,
192    32586,  32588,  32591,  32593,
193    32595,  32597,  32599,  32602,
194    32604,  32606,  32608,  32610,
195    32612,  32614,  32616,  32618,
196    32619,  32621,  32623,  32625,
197    32627,  32628,  32630,  32632,
198    32634,  32635,  32637,  32639,
199    32640,  32642,  32643,  32645,
200    32647,  32648,  32650,  32651,
201    32652,  32654,  32655,  32657,
202    32658,  32660,  32661,  32662,
203    32664,  32665,  32666,  32667,
204    32669,  32670,  32671,  32672,
205    32674,  32675,  32676,  32677,
206    32678,  32679,  32680,  32682,
207    32683,  32684,  32685,  32686,
208    32687,  32688,  32689,  32690,
209    32691,  32692,  32693,  32694,
210    32695,  32695,  32696,  32697,
211    32698,  32699,  32700,  32701,
212    32702,  32702,  32703,  32704,
213    32705,  32706,  32706,  32707,
214    32708,  32709,  32709,  32710,
215    32711,  32712,  32712,  32713,
216    32714,  32714,  32715,  32716,
217    32716,  32717,  32718,  32718,
218    32719,  32719,  32720,  32721,
219    32721,  32722,  32722,  32723,
220    32723,  32724,  32725,  32725,
221    32726,  32726,  32727,  32727,
222    32728,  32728,  32729,  32729,
223    32730,  32730,  32731,  32731,
224    32731,  32732,  32732,  32733,
225    32733,  32734,  32734,  32735,
226    32735,  32735,  32736,  32736,
227    32737,  32737,  32737,  32738,
228    32738,  32738,  32739,  32739,
229    32739,  32740,  32740,  32741,
230    32741,  32741,  32742,  32742,
231    32742,  32742,  32743,  32743,
232    32743,  32744,  32744,  32744,
233    32745,  32745,  32745,  32745,
234    32746,  32746,  32746,  32747,
235    32747,  32747,  32747,  32748,
236    32748,  32748,  32748,  32749,
237    32749,  32749,  32749,  32749,
238    32750,  32750,  32750,  32750,
239    32751,  32751,  32751,  32751,
240    32751,  32752,  32752,  32752,
241    32752,  32752,  32753,  32753,
242    32753,  32753,  32753,  32753,
243    32754,  32754,  32754,  32754,
244    32754,  32754,  32755,  32755,
245    32755,  32755,  32755,  32755,
246    32756,  32756,  32756,  32756,
247    32756,  32756,  32756,  32757,
248    32757,  32757,  32757,  32757,
249    32757,  32757,  32757,  32758,
250    32758,  32758,  32758,  32758,
251    32758,  32758,  32758,  32758,
252    32759,  32759,  32759,  32759,
253    32759,  32759,  32759,  32759,
254    32759,  32760,  32760,  32760,
255    32760,  32760,  32760,  32760,
256    32760,  32760,  32760,  32760,
257    32761,  32761,  32761,  32761,
258    32761,  32761,  32761,  32761,
259    32761,  32761,  32761,  32761,
260    32761,  32762,  32762,  32762,
261    32762,  32762,  32762,  32762,
262    32762,  32762,  32762,  32762,
263    32762,  32762,  32762,  32762,
264    32763,  32763,  32763,  32763,
265    32763,  32763,  32763,  32763,
266    32763,  32763,  32763,  32763,
267    32763,  32763,  32763,  32763,
268    32763,  32763,  32763,  32764,
269    32764,  32764,  32764,  32764,
270    32764,  32764,  32764,  32764,
271    32764,  32764,  32764,  32764,
272    32764,  32764,  32764,  32764,
273    32764,  32764,  32764,  32764,
274    32764,  32764,  32764,  32765,
275    32765,  32765,  32765,  32765,
276    32765,  32765,  32765,  32765,
277    32765,  32765,  32765,  32765,
278    32765,  32765,  32765,  32765,
279    32765,  32765,  32765,  32765,
280    32765,  32765,  32765,  32765,
281    32765,  32765,  32765,  32765,
282    32765,  32765,  32765,  32765,
283    32765,  32765,  32765,  32765,
284    32766,  32766,  32766,  32766,
285    32766,  32766,  32766,  32766,
286    32766,  32766,  32766,  32766,
287    32766,  32766,  32766,  32766,
288    32766,  32766,  32766,  32766,
289    32766,  32766,  32766,  32766,
290    32766,  32766,  32766,  32766,
291    32766,  32766,  32766,  32766,
292    32766,  32766,  32766,  32766,
293    32766,  32766,  32766,  32766,
294    32766,  32766,  32766,  32766,
295    32766,  32766,  32766,  32766,
296    32766,  32766,  32766,  32766,
297    32766,  32766,  32766,  32766,
298    32766,  32766,  32766,  32766,
299    32766,  32766,  32766,  32766,
300    32766,  32766,  32766,  32766,
301    32767,
302 };
303 const int16_t wav_db[] = {
304   -32768, -32768, -24576, -19783,
305   -16384, -13746, -11591,  -9770,
306    -8192,  -6799,  -5554,  -4428,
307    -3399,  -2453,  -1578,   -762,
308        0,    716,   1392,   2031,
309     2637,   3213,   3763,   4289,
310     4792,   5274,   5738,   6184,
311     6613,   7028,   7429,   7816,
312     8192,   8555,   8908,   9251,
313     9584,   9907,  10223,  10530,
314    10829,  11121,  11405,  11683,
315    11955,  12221,  12481,  12735,
316    12984,  13227,  13466,  13700,
317    13930,  14155,  14376,  14592,
318    14805,  15015,  15220,  15422,
319    15621,  15816,  16008,  16197,
320    16384,  16567,  16747,  16925,
321    17100,  17273,  17443,  17610,
322    17776,  17939,  18099,  18258,
323    18415,  18569,  18722,  18872,
324    19021,  19168,  19313,  19456,
325    19597,  19737,  19875,  20012,
326    20147,  20281,  20413,  20543,
327    20673,  20800,  20927,  21052,
328    21176,  21298,  21419,  21539,
329    21658,  21776,  21892,  22007,
330    22122,  22235,  22347,  22458,
331    22568,  22676,  22784,  22891,
332    22997,  23102,  23207,  23310,
333    23412,  23514,  23614,  23714,
334    23813,  23911,  24008,  24105,
335    24200,  24295,  24389,  24483,
336    24576,  24667,  24759,  24849,
337    24939,  25028,  25117,  25205,
338    25292,  25379,  25465,  25550,
339    25635,  25719,  25802,  25885,
340    25968,  26049,  26131,  26211,
341    26291,  26371,  26450,  26529,
342    26607,  26684,  26761,  26838,
343    26914,  26989,  27064,  27139,
344    27213,  27286,  27360,  27432,
345    27505,  27576,  27648,  27719,
346    27789,  27860,  27929,  27999,
347    28067,  28136,  28204,  28272,
348    28339,  28406,  28473,  28539,
349    28605,  28670,  28735,  28800,
350    28865,  28929,  28992,  29056,
351    29119,  29181,  29244,  29306,
352    29368,  29429,  29490,  29551,
353    29611,  29671,  29731,  29791,
354    29850,  29909,  29968,  30026,
355    30084,  30142,  30199,  30257,
356    30314,  30370,  30427,  30483,
357    30539,  30594,  30650,  30705,
358    30760,  30814,  30868,  30923,
359    30976,  31030,  31083,  31136,
360    31189,  31242,  31294,  31347,
361    31399,  31450,  31502,  31553,
362    31604,  31655,  31706,  31756,
363    31806,  31856,  31906,  31955,
364    32005,  32054,  32103,  32152,
365    32200,  32248,  32297,  32345,
366    32392,  32440,  32487,  32534,
367    32581,  32628,  32675,  32721,
368    32721,
369 };
370 
371 
372 const int16_t* waveforms_table[] = {
373   wav_gompertz,
374   wav_db,
375 };
376 
377 const uint16_t lut_env_linear[] = {
378        0,    257,    514,    771,
379     1028,   1285,   1542,   1799,
380     2056,   2313,   2570,   2827,
381     3084,   3341,   3598,   3855,
382     4112,   4369,   4626,   4883,
383     5140,   5397,   5654,   5911,
384     6168,   6425,   6682,   6939,
385     7196,   7453,   7710,   7967,
386     8224,   8481,   8738,   8995,
387     9252,   9509,   9766,  10023,
388    10280,  10537,  10794,  11051,
389    11308,  11565,  11822,  12079,
390    12336,  12593,  12850,  13107,
391    13364,  13621,  13878,  14135,
392    14392,  14649,  14906,  15163,
393    15420,  15677,  15934,  16191,
394    16448,  16705,  16962,  17219,
395    17476,  17733,  17990,  18247,
396    18504,  18761,  19018,  19275,
397    19532,  19789,  20046,  20303,
398    20560,  20817,  21074,  21331,
399    21588,  21845,  22102,  22359,
400    22616,  22873,  23130,  23387,
401    23644,  23901,  24158,  24415,
402    24672,  24929,  25186,  25443,
403    25700,  25957,  26214,  26471,
404    26728,  26985,  27242,  27499,
405    27756,  28013,  28270,  28527,
406    28784,  29041,  29298,  29555,
407    29812,  30069,  30326,  30583,
408    30840,  31097,  31354,  31611,
409    31868,  32125,  32382,  32639,
410    32896,  33153,  33410,  33667,
411    33924,  34181,  34438,  34695,
412    34952,  35209,  35466,  35723,
413    35980,  36237,  36494,  36751,
414    37008,  37265,  37522,  37779,
415    38036,  38293,  38550,  38807,
416    39064,  39321,  39578,  39835,
417    40092,  40349,  40606,  40863,
418    41120,  41377,  41634,  41891,
419    42148,  42405,  42662,  42919,
420    43176,  43433,  43690,  43947,
421    44204,  44461,  44718,  44975,
422    45232,  45489,  45746,  46003,
423    46260,  46517,  46774,  47031,
424    47288,  47545,  47802,  48059,
425    48316,  48573,  48830,  49087,
426    49344,  49601,  49858,  50115,
427    50372,  50629,  50886,  51143,
428    51400,  51657,  51914,  52171,
429    52428,  52685,  52942,  53199,
430    53456,  53713,  53970,  54227,
431    54484,  54741,  54998,  55255,
432    55512,  55769,  56026,  56283,
433    56540,  56797,  57054,  57311,
434    57568,  57825,  58082,  58339,
435    58596,  58853,  59110,  59367,
436    59624,  59881,  60138,  60395,
437    60652,  60909,  61166,  61423,
438    61680,  61937,  62194,  62451,
439    62708,  62965,  63222,  63479,
440    63736,  63993,  64250,  64507,
441    64764,  65021,  65278,  65535,
442    65535,
443 };
444 const uint16_t lut_env_expo[] = {
445        0,   1035,   2054,   3057,
446     4045,   5018,   5975,   6918,
447     7846,   8760,   9659,  10545,
448    11416,  12275,  13120,  13952,
449    14771,  15577,  16371,  17152,
450    17921,  18679,  19425,  20159,
451    20881,  21593,  22294,  22983,
452    23662,  24331,  24989,  25637,
453    26274,  26902,  27520,  28129,
454    28728,  29318,  29899,  30471,
455    31034,  31588,  32133,  32670,
456    33199,  33720,  34232,  34737,
457    35233,  35722,  36204,  36678,
458    37145,  37604,  38056,  38502,
459    38940,  39371,  39796,  40215,
460    40626,  41032,  41431,  41824,
461    42211,  42592,  42967,  43336,
462    43699,  44057,  44409,  44756,
463    45097,  45434,  45764,  46090,
464    46411,  46727,  47037,  47344,
465    47645,  47941,  48233,  48521,
466    48804,  49083,  49357,  49627,
467    49893,  50155,  50412,  50666,
468    50916,  51162,  51404,  51642,
469    51877,  52108,  52335,  52559,
470    52780,  52997,  53210,  53421,
471    53628,  53831,  54032,  54230,
472    54424,  54616,  54804,  54990,
473    55173,  55353,  55530,  55704,
474    55876,  56045,  56211,  56375,
475    56536,  56695,  56851,  57005,
476    57157,  57306,  57453,  57597,
477    57740,  57880,  58018,  58153,
478    58287,  58419,  58548,  58676,
479    58801,  58925,  59047,  59167,
480    59285,  59401,  59515,  59628,
481    59739,  59848,  59955,  60061,
482    60165,  60267,  60368,  60468,
483    60566,  60662,  60757,  60850,
484    60942,  61032,  61121,  61209,
485    61295,  61380,  61464,  61546,
486    61628,  61707,  61786,  61863,
487    61939,  62014,  62088,  62161,
488    62233,  62303,  62372,  62441,
489    62508,  62574,  62639,  62703,
490    62767,  62829,  62890,  62950,
491    63010,  63068,  63125,  63182,
492    63238,  63293,  63347,  63400,
493    63452,  63504,  63554,  63604,
494    63654,  63702,  63750,  63797,
495    63843,  63888,  63933,  63977,
496    64021,  64063,  64105,  64147,
497    64188,  64228,  64267,  64306,
498    64344,  64382,  64419,  64456,
499    64492,  64527,  64562,  64596,
500    64630,  64664,  64696,  64729,
501    64760,  64792,  64822,  64853,
502    64883,  64912,  64941,  64969,
503    64997,  65025,  65052,  65079,
504    65105,  65131,  65157,  65182,
505    65206,  65231,  65255,  65278,
506    65302,  65324,  65347,  65369,
507    65391,  65412,  65434,  65454,
508    65475,  65495,  65515,  65535,
509    65535,
510 };
511 const uint16_t lut_env_quartic[] = {
512        0,      0,      0,      0,
513        0,      0,      0,      0,
514        0,      0,      1,      1,
515        2,      3,      4,      5,
516        6,      8,      9,     11,
517       14,     16,     19,     22,
518       25,     29,     33,     37,
519       42,     48,     53,     59,
520       66,     73,     81,     89,
521       98,    107,    117,    128,
522      139,    151,    164,    177,
523      191,    206,    222,    238,
524      256,    274,    293,    313,
525      334,    355,    378,    402,
526      427,    453,    480,    508,
527      537,    567,    599,    631,
528      665,    700,    737,    775,
529      814,    854,    896,    939,
530      984,   1030,   1077,   1127,
531     1177,   1230,   1283,   1339,
532     1396,   1455,   1515,   1577,
533     1641,   1707,   1775,   1844,
534     1916,   1989,   2064,   2141,
535     2220,   2302,   2385,   2470,
536     2557,   2647,   2739,   2833,
537     2929,   3027,   3128,   3231,
538     3336,   3444,   3554,   3667,
539     3782,   3899,   4019,   4142,
540     4267,   4395,   4525,   4658,
541     4794,   4933,   5074,   5218,
542     5365,   5515,   5668,   5824,
543     5983,   6144,   6309,   6477,
544     6648,   6822,   6999,   7179,
545     7363,   7550,   7740,   7933,
546     8130,   8330,   8534,   8741,
547     8951,   9165,   9383,   9604,
548     9829,  10057,  10289,  10525,
549    10765,  11008,  11255,  11507,
550    11761,  12020,  12283,  12550,
551    12821,  13096,  13375,  13658,
552    13945,  14237,  14532,  14832,
553    15137,  15445,  15758,  16076,
554    16397,  16724,  17054,  17390,
555    17730,  18074,  18423,  18777,
556    19136,  19499,  19868,  20241,
557    20618,  21001,  21389,  21781,
558    22179,  22582,  22990,  23403,
559    23821,  24244,  24672,  25106,
560    25545,  25990,  26440,  26895,
561    27355,  27821,  28293,  28770,
562    29253,  29742,  30236,  30735,
563    31241,  31752,  32270,  32793,
564    33321,  33856,  34397,  34944,
565    35497,  36056,  36621,  37192,
566    37769,  38353,  38943,  39539,
567    40142,  40751,  41366,  41988,
568    42617,  43251,  43893,  44541,
569    45196,  45857,  46526,  47201,
570    47882,  48571,  49267,  49969,
571    50678,  51395,  52118,  52849,
572    53587,  54332,  55084,  55843,
573    56610,  57384,  58165,  58954,
574    59750,  60553,  61364,  62183,
575    63010,  63843,  64685,  65535,
576    65535,
577 };
578 const uint16_t lut_square_root[] = {
579        0,   4095,   5792,   7094,
580     8191,   9158,  10032,  10836,
581    11585,  12287,  12952,  13584,
582    14188,  14768,  15325,  15863,
583    16383,  16887,  17377,  17853,
584    18317,  18769,  19211,  19643,
585    20065,  20479,  20885,  21283,
586    21673,  22057,  22434,  22805,
587    23170,  23529,  23883,  24231,
588    24575,  24914,  25249,  25579,
589    25904,  26226,  26544,  26858,
590    27169,  27476,  27779,  28080,
591    28377,  28671,  28962,  29250,
592    29536,  29818,  30098,  30376,
593    30651,  30923,  31193,  31461,
594    31726,  31990,  32251,  32510,
595    32767,  33022,  33275,  33526,
596    33775,  34023,  34269,  34512,
597    34755,  34995,  35234,  35471,
598    35707,  35941,  36174,  36405,
599    36635,  36863,  37090,  37315,
600    37539,  37762,  37984,  38204,
601    38423,  38640,  38857,  39072,
602    39286,  39499,  39711,  39922,
603    40131,  40340,  40547,  40754,
604    40959,  41163,  41366,  41569,
605    41770,  41970,  42170,  42368,
606    42566,  42762,  42958,  43153,
607    43347,  43540,  43732,  43924,
608    44114,  44304,  44493,  44681,
609    44868,  45055,  45241,  45426,
610    45610,  45793,  45976,  46158,
611    46340,  46520,  46700,  46880,
612    47058,  47236,  47413,  47590,
613    47766,  47941,  48116,  48290,
614    48463,  48636,  48808,  48980,
615    49151,  49321,  49491,  49660,
616    49829,  49997,  50164,  50331,
617    50498,  50663,  50829,  50994,
618    51158,  51321,  51485,  51647,
619    51809,  51971,  52132,  52293,
620    52453,  52613,  52772,  52931,
621    53089,  53247,  53404,  53561,
622    53717,  53873,  54029,  54184,
623    54338,  54492,  54646,  54799,
624    54952,  55105,  55257,  55408,
625    55559,  55710,  55861,  56011,
626    56160,  56309,  56458,  56606,
627    56754,  56902,  57049,  57196,
628    57343,  57489,  57634,  57780,
629    57925,  58069,  58214,  58358,
630    58501,  58644,  58787,  58930,
631    59072,  59214,  59355,  59496,
632    59637,  59778,  59918,  60058,
633    60197,  60336,  60475,  60614,
634    60752,  60890,  61028,  61165,
635    61302,  61439,  61575,  61711,
636    61847,  61982,  62117,  62252,
637    62387,  62521,  62655,  62789,
638    62922,  63056,  63189,  63321,
639    63453,  63586,  63717,  63849,
640    63980,  64111,  64242,  64372,
641    64502,  64632,  64762,  64891,
642    65020,  65149,  65278,  65406,
643    65406,
644 };
645 const uint16_t lut_svf_cutoff[] = {
646       54,     57,     60,     64,
647       68,     72,     76,     81,
648       85,     91,     96,    102,
649      108,    114,    121,    128,
650      136,    144,    153,    162,
651      171,    182,    192,    204,
652      216,    229,    243,    257,
653      272,    289,    306,    324,
654      343,    364,    385,    408,
655      433,    458,    486,    515,
656      545,    578,    612,    648,
657      687,    728,    771,    817,
658      866,    917,    972,   1030,
659     1091,   1156,   1225,   1297,
660     1375,   1456,   1543,   1635,
661     1732,   1835,   1944,   2060,
662     2182,   2312,   2449,   2595,
663     2749,   2912,   3085,   3269,
664     3463,   3669,   3887,   4118,
665     4362,   4621,   4895,   5186,
666     5494,   5819,   6165,   6530,
667     6917,   7327,   7760,   8219,
668     8705,   9220,   9764,  10340,
669    10949,  11593,  12275,  12995,
670    13757,  14562,  15412,  16309,
671    17257,  18256,  19310,  20421,
672    21591,  22822,  24116,  25078,
673    25078,  25078,  25078,  25078,
674    25078,  25078,  25078,  25078,
675    25078,  25078,  25078,  25078,
676    25078,  25078,  25078,  25078,
677    25078,  25078,  25078,  25078,
678    25078,  25078,  25078,  25078,
679    25078,  25078,  25078,  25078,
680    25078,  25078,  25078,  25078,
681    25078,  25078,  25078,  25078,
682    25078,  25078,  25078,  25078,
683    25078,  25078,  25078,  25078,
684    25078,  25078,  25078,  25078,
685    25078,  25078,  25078,  25078,
686    25078,  25078,  25078,  25078,
687    25078,  25078,  25078,  25078,
688    25078,  25078,  25078,  25078,
689    25078,  25078,  25078,  25078,
690    25078,  25078,  25078,  25078,
691    25078,  25078,  25078,  25078,
692    25078,  25078,  25078,  25078,
693    25078,  25078,  25078,  25078,
694    25078,  25078,  25078,  25078,
695    25078,  25078,  25078,  25078,
696    25078,  25078,  25078,  25078,
697    25078,  25078,  25078,  25078,
698    25078,  25078,  25078,  25078,
699    25078,  25078,  25078,  25078,
700    25078,  25078,  25078,  25078,
701    25078,  25078,  25078,  25078,
702    25078,  25078,  25078,  25078,
703    25078,  25078,  25078,  25078,
704    25078,  25078,  25078,  25078,
705    25078,  25078,  25078,  25078,
706    25078,  25078,  25078,  25078,
707    25078,  25078,  25078,  25078,
708    25078,  25078,  25078,  25078,
709    25078,  25078,  25078,  25078,
710    25078,
711 };
712 const uint16_t lut_svf_damp[] = {
713    65534,  49166,  46069,  43993,
714    42386,  41058,  39917,  38910,
715    38007,  37184,  36427,  35726,
716    35070,  34454,  33873,  33322,
717    32798,  32299,  31820,  31361,
718    30920,  30496,  30086,  29690,
719    29306,  28935,  28574,  28224,
720    27883,  27551,  27228,  26912,
721    26605,  26304,  26010,  25723,
722    25441,  25166,  24896,  24631,
723    24371,  24116,  23866,  23620,
724    23379,  23141,  22908,  22678,
725    22452,  22229,  22010,  21794,
726    21581,  21371,  21164,  20960,
727    20759,  20560,  20365,  20171,
728    19980,  19791,  19605,  19421,
729    19239,  19059,  18882,  18706,
730    18532,  18360,  18190,  18022,
731    17856,  17691,  17528,  17367,
732    17207,  17049,  16892,  16737,
733    16583,  16431,  16280,  16131,
734    15982,  15836,  15690,  15546,
735    15403,  15261,  15120,  14981,
736    14843,  14705,  14569,  14434,
737    14300,  14167,  14036,  13905,
738    13775,  13646,  13518,  13391,
739    13265,  13140,  13015,  12892,
740    12769,  12648,  12527,  12407,
741    12287,  12169,  12051,  11934,
742    11818,  11703,  11588,  11474,
743    11361,  11249,  11137,  11026,
744    10915,  10805,  10696,  10588,
745    10480,  10373,  10266,  10160,
746    10055,   9950,   9846,   9742,
747     9639,   9537,   9435,   9333,
748     9233,   9132,   9033,   8933,
749     8835,   8737,   8639,   8542,
750     8445,   8349,   8253,   8158,
751     8063,   7969,   7875,   7782,
752     7689,   7596,   7504,   7413,
753     7321,   7231,   7140,   7050,
754     6961,   6872,   6783,   6695,
755     6607,   6519,   6432,   6346,
756     6259,   6173,   6088,   6003,
757     5918,   5833,   5749,   5665,
758     5582,   5499,   5416,   5334,
759     5251,   5170,   5088,   5007,
760     4926,   4846,   4766,   4686,
761     4607,   4527,   4449,   4370,
762     4292,   4214,   4136,   4059,
763     3982,   3905,   3828,   3752,
764     3676,   3601,   3525,   3450,
765     3375,   3301,   3226,   3152,
766     3078,   3005,   2932,   2859,
767     2786,   2713,   2641,   2569,
768     2497,   2426,   2355,   2284,
769     2213,   2142,   2072,   2002,
770     1932,   1862,   1793,   1724,
771     1655,   1586,   1518,   1449,
772     1381,   1313,   1246,   1178,
773     1111,   1044,    977,    911,
774      844,    778,    712,    647,
775      581,    516,    450,    385,
776      321,    256,    192,    127,
777       63,
778 };
779 const uint16_t lut_2164_gain[] = {
780    32767,  31340,  29975,  28670,
781    27421,  26227,  25085,  23993,
782    22948,  21948,  20993,  20078,
783    19204,  18368,  17568,  16803,
784    16071,  15371,  14702,  14062,
785    13449,  12864,  12303,  11768,
786    11255,  10765,  10296,   9848,
787     9419,   9009,   8617,   8241,
788     7882,   7539,   7211,   6897,
789     6596,   6309,   6034,   5772,
790     5520,   5280,   5050,   4830,
791     4620,   4418,   4226,   4042,
792     3866,   3698,   3537,   3383,
793     3235,   3094,   2960,   2831,
794     2707,   2589,   2477,   2369,
795     2266,   2167,   2073,   1982,
796     1896,   1813,   1734,   1659,
797     1587,   1517,   1451,   1388,
798     1328,   1270,   1215,   1162,
799     1111,   1063,   1016,    972,
800      930,    889,    850,    813,
801      778,    744,    712,    681,
802      651,    623,    595,    569,
803      545,    521,    498,    477,
804      456,    436,    417,    399,
805      381,    365,    349,    334,
806      319,    305,    292,    279,
807      267,    255,    244,    233,
808      223,    214,    204,    195,
809      187,    179,    171,    163,
810      156,    149,    143,    137,
811      131,    125,    119,    114,
812      109,    104,    100,     96,
813       91,     87,     84,     80,
814       76,     73,     70,     67,
815       64,     61,     58,     56,
816       53,     51,     49,     47,
817       45,     43,     41,     39,
818       37,     36,     34,     32,
819       31,     30,     28,     27,
820       26,     25,     24,     23,
821       22,     21,     20,     19,
822       18,     17,     16,     16,
823       15,     14,     14,     13,
824       12,     12,     11,     11,
825       10,     10,      9,      9,
826        9,      8,      8,      7,
827        7,      7,      6,      6,
828        6,      6,      5,      5,
829        5,      5,      4,      4,
830        4,      4,      4,      3,
831        3,      3,      3,      3,
832        3,      2,      2,      2,
833        2,      2,      2,      2,
834        2,      2,      1,      1,
835        1,      1,      1,      1,
836        1,      1,      1,      1,
837        1,      1,      1,      1,
838        1,      1,      0,      0,
839        0,      0,      0,      0,
840        0,      0,      0,      0,
841        0,      0,      0,      0,
842        0,      0,      0,      0,
843        0,      0,      0,      0,
844        0,
845 };
846 const uint16_t lut_compressor_ratio[] = {
847      256,    255,    255,    255,
848      254,    253,    252,    251,
849      250,    248,    246,    245,
850      243,    241,    238,    236,
851      234,    231,    228,    226,
852      223,    220,    217,    214,
853      211,    208,    205,    202,
854      198,    195,    192,    189,
855      186,    183,    179,    176,
856      173,    170,    167,    164,
857      161,    158,    155,    152,
858      149,    146,    144,    141,
859      138,    136,    133,    131,
860      128,    126,    123,    121,
861      119,    116,    114,    112,
862      110,    108,    106,    104,
863      102,    100,     98,     96,
864       95,     93,     91,     89,
865       88,     86,     85,     83,
866       82,     80,     79,     77,
867       76,     75,     73,     72,
868       71,     70,     69,     67,
869       66,     65,     64,     63,
870       62,     61,     60,     59,
871       58,     57,     56,     55,
872       54,     54,     53,     52,
873       51,     50,     50,     49,
874       48,     47,     47,     46,
875       45,     45,     44,     43,
876       43,     42,     41,     41,
877       40,     40,     39,     39,
878       38,     38,     37,     37,
879       36,     36,     35,     35,
880       34,     34,     33,     33,
881       32,     32,     32,     31,
882       31,     30,     30,     30,
883       29,     29,     29,     28,
884       28,     28,     27,     27,
885       27,     26,     26,     26,
886       25,     25,     25,     24,
887       24,     24,     24,     23,
888       23,     23,     23,     22,
889       22,     22,     22,     21,
890       21,     21,     21,     20,
891       20,     20,     20,     20,
892       19,     19,     19,     19,
893       19,     18,     18,     18,
894       18,     18,     18,     17,
895       17,     17,     17,     17,
896       16,     16,     16,     16,
897       16,     16,     16,     15,
898       15,     15,     15,     15,
899       15,     15,     14,     14,
900       14,     14,     14,     14,
901       14,     14,     13,     13,
902       13,     13,     13,     13,
903       13,     13,     12,     12,
904       12,     12,     12,     12,
905       12,     12,     12,     12,
906       11,     11,     11,     11,
907       11,     11,     11,     11,
908       11,     11,     11,     10,
909       10,     10,     10,     10,
910       10,     10,     10,     10,
911       10,
912 };
913 const uint16_t lut_soft_knee[] = {
914        0,      0,      0,      0,
915        0,      0,      0,      1,
916        1,      2,      3,      5,
917        6,      8,     10,     13,
918       15,     19,     22,     26,
919       31,     36,     41,     47,
920       53,     61,     68,     76,
921       85,     95,    105,    116,
922      127,    140,    153,    167,
923      182,    197,    214,    231,
924      249,    269,    289,    310,
925      332,    355,    380,    405,
926      431,    459,    488,    518,
927      549,    581,    615,    649,
928      685,    723,    762,    802,
929      843,    886,    930,    976,
930     1023,   1072,   1123,   1174,
931     1228,   1283,   1339,   1398,
932     1457,   1519,   1582,   1647,
933     1714,   1783,   1853,   1925,
934     1999,   2075,   2153,   2233,
935     2315,   2398,   2484,   2572,
936     2661,   2753,   2847,   2943,
937     3041,   3141,   3244,   3349,
938     3455,   3565,   3676,   3790,
939     3906,   4024,   4145,   4268,
940     4393,   4521,   4652,   4785,
941     4920,   5058,   5199,   5342,
942     5487,   5636,   5787,   5940,
943     6097,   6256,   6417,   6582,
944     6749,   6920,   7093,   7268,
945     7447,   7629,   7813,   8001,
946     8191,   8385,   8581,   8781,
947     8984,   9189,   9398,   9610,
948     9825,  10044,  10265,  10490,
949    10718,  10949,  11184,  11422,
950    11663,  11908,  12156,  12408,
951    12663,  12921,  13183,  13448,
952    13717,  13990,  14266,  14546,
953    14829,  15116,  15407,  15701,
954    15999,  16301,  16607,  16916,
955    17229,  17547,  17868,  18192,
956    18521,  18854,  19191,  19531,
957    19876,  20225,  20577,  20934,
958    21295,  21660,  22029,  22403,
959    22780,  23162,  23548,  23939,
960    24333,  24732,  25135,  25543,
961    25955,  26371,  26792,  27217,
962    27647,  28081,  28520,  28963,
963    29411,  29864,  30321,  30783,
964    31249,  31720,  32196,  32676,
965    33162,  33652,  34147,  34646,
966    35151,  35660,  36175,  36694,
967    37218,  37747,  38282,  38821,
968    39365,  39914,  40469,  41028,
969    41593,  42162,  42737,  43317,
970    43903,  44493,  45089,  45691,
971    46297,  46909,  47526,  48149,
972    48777,  49410,  50049,  50694,
973    51343,  51999,  52660,  53326,
974    53999,  54676,  55360,  56049,
975    56744,  57444,  58151,  58863,
976    59581,  60304,  61034,  61769,
977    62510,  63257,  64010,  64770,
978    65535,
979 };
980 
981 
982 const uint16_t* lookup_table_table[] = {
983   lut_env_linear,
984   lut_env_expo,
985   lut_env_quartic,
986   lut_square_root,
987   lut_svf_cutoff,
988   lut_svf_damp,
989   lut_2164_gain,
990   lut_compressor_ratio,
991   lut_soft_knee,
992 };
993 
994 const uint32_t lut_env_increments[] = {
995   276301411, 231949934, 196150997, 166999666,
996   143068141, 123273939, 106787653, 92967541,
997   81312526, 71428035, 63000899, 55780710,
998   49565850, 44192924, 39528695, 35463892,
999   31908401, 28787528, 26039050, 23610894,
1000   21459288, 19547282, 17843559, 16321476,
1001   14958281, 13734481, 12633316, 11640330,
1002   10743016, 9930523, 9193410, 8523437,
1003   7913397, 7356972, 6848604, 6383397,
1004   5957029, 5565672, 5205932, 4874792,
1005   4569569, 4287864, 4027536, 3786669,
1006   3563542, 3356609, 3164482, 2985906,
1007   2819752, 2664995, 2520711, 2386061,
1008   2260283, 2142684, 2032635, 1929561,
1009   1832939, 1742290, 1657176, 1577196,
1010   1501984, 1431202, 1364541, 1301717,
1011   1242466, 1186549, 1133742, 1083841,
1012   1036655, 992009, 949741, 909701,
1013   871748, 835755, 801600, 769172,
1014   738367, 709089, 681248, 654760,
1015   629547, 605536, 582659, 560852,
1016   540056, 520215, 501277, 483193,
1017   465917, 449406, 433620, 418521,
1018   404074, 390245, 377002, 364316,
1019   352160, 340506, 329331, 318610,
1020   308322, 298445, 288962, 279851,
1021   271097, 262683, 254593, 246811,
1022   239325, 232121, 225185, 218507,
1023   212074, 205876, 199903, 194146,
1024   188594, 183239, 178072, 173087,
1025   168275, 163628, 159142, 154807,
1026   150620, 146573, 142661, 138879,
1027   135221, 131683, 128260, 124947,
1028   121741, 118636, 115630, 112719,
1029   109899, 107166, 104518, 101951,
1030    99463,  97050,  94709,  92439,
1031    90236,  88099,  86025,  84011,
1032    82056,  80157,  78313,  76521,
1033    74781,  73090,  71446,  69848,
1034    68295,  66785,  65316,  63887,
1035    62497,  61145,  59829,  58549,
1036    57302,  56089,  54907,  53756,
1037    52636,  51544,  50480,  49444,
1038    48434,  47450,  46491,  45556,
1039    44644,  43755,  42888,  42043,
1040    41218,  40413,  39628,  38862,
1041    38114,  37384,  36671,  35976,
1042    35296,  34633,  33985,  33353,
1043    32735,  32131,  31541,  30965,
1044    30401,  29851,  29313,  28786,
1045    28272,  27769,  27277,  26796,
1046    26326,  25866,  25416,  24975,
1047    24545,  24123,  23710,  23307,
1048    22911,  22524,  22146,  21775,
1049    21412,  21056,  20708,  20367,
1050    20033,  19705,  19385,  19071,
1051    18763,  18461,  18166,  17876,
1052    17592,  17314,  17041,  16774,
1053    16512,  16254,  16002,  15755,
1054    15513,  15275,  15041,  14812,
1055    14588,  14368,  14151,  13939,
1056    13731,  13527,  13326,  13130,
1057    12936,  12747,  12561,  12378,
1058    12198,  12022,  11849,  11679,
1059    11512,
1060 };
1061 const uint32_t lut_lp_coefficients[] = {
1062   590672516, 319034455, 133800766, 67976239,
1063   63327094, 62214607, 61121376, 60047077,
1064   58991393, 57954009, 56934619, 55932918,
1065   54948609, 53981397, 53030993, 52097114,
1066   51179478, 50277811, 49391841, 48521302,
1067   47665932, 46825472, 45999668, 45188271,
1068   44391035, 43607717, 42838081, 42081892,
1069   41338919, 40608937, 39891723, 39187058,
1070   38494727, 37814517, 37146221, 36489633,
1071   35844551, 35210779, 34588120, 33976383,
1072   33375380, 32784926, 32204838, 31634936,
1073   31075046, 30524993, 29984607, 29453721,
1074   28932170, 28419793, 27916429, 27421923,
1075   26936121, 26458872, 25990026, 25529439,
1076   25076965, 24632464, 24195797, 23766828,
1077   23345422, 22931447, 22524774, 22125276,
1078   21732827, 21347304, 20968586, 20596554,
1079   20231092, 19872084, 19519417, 19172981,
1080   18832666, 18498365, 18169974, 17847387,
1081   17530504, 17219225, 16913451, 16613085,
1082   16318033, 16028202, 15743500, 15463836,
1083   15189122, 14919272, 14654199, 14393820,
1084   14138052, 13886814, 13640026, 13397610,
1085   13159489, 12925588, 12695832, 12470147,
1086   12248464, 12030709, 11816816, 11606715,
1087   11400339, 11197623, 10998503, 10802914,
1088   10610795, 10422085, 10236722, 10054649,
1089   9875806, 9700137, 9527587, 9358098,
1090   9191619, 9028094, 8867473, 8709704,
1091   8554736, 8402520, 8253007, 8106150,
1092   7961901, 7820214, 7681044, 7544346,
1093   7410077, 7278193, 7148653, 7021415,
1094   6896437, 6773681, 6653106, 6534675,
1095   6418348, 6304089, 6191861, 6081629,
1096   5973356, 5867008, 5762550, 5659950,
1097   5559175, 5460191, 5362968, 5267474,
1098   5173678, 5081550, 4991061, 4902182,
1099   4814883, 4729137, 4644917, 4562195,
1100   4480945, 4401140, 4322755, 4245764,
1101   4170144, 4095869, 4022916, 3951261,
1102   3880881, 3811754, 3743857, 3677168,
1103   3611666, 3547330, 3484139, 3422073,
1104   3361112, 3301236, 3242425, 3184662,
1105   3127927, 3072202, 3017468, 2963710,
1106   2910908, 2859047, 2808109, 2758078,
1107   2708937, 2660672, 2613266, 2566704,
1108   2520972, 2476054, 2431935, 2388602,
1109   2346041, 2304238, 2263180, 2222853,
1110   2183243, 2144340, 2106129, 2068599,
1111   2031737, 1995532, 1959971, 1925044,
1112   1890740, 1857046, 1823952, 1791448,
1113   1759523, 1728167, 1697369, 1667120,
1114   1637410, 1608229, 1579568, 1551417,
1115   1523768, 1496612, 1469939, 1443741,
1116   1418011, 1392739, 1367917, 1343537,
1117   1319591, 1296073, 1272973, 1250285,
1118   1228001, 1206114, 1184617, 1163504,
1119   1142766, 1122398, 1102393, 1082744,
1120   1063446, 1044491, 1025874, 1007589,
1121   989630, 971991, 954666, 937650,
1122   920937, 904521, 888399, 872564,
1123   857011, 841735, 826731, 811995,
1124   797521, 783305, 769343, 755630,
1125   742160, 728931, 715938, 703176,
1126   690642, 678331, 666240, 654364,
1127   642699, 631243, 619991, 608939,
1128   598084, 587423, 576952, 566667,
1129   556566, 546644, 536900, 527329,
1130   517929, 508696, 499628, 490722,
1131   481974, 473383, 464944, 456656,
1132   448515, 440520, 432667, 424954,
1133   417379, 409938, 402631, 395453,
1134   388404, 381480, 374679, 368000,
1135   361440, 354997, 348668, 342453,
1136   336348, 330352, 324463, 318678,
1137   312997, 307418, 301937, 296555,
1138   291268, 286076, 280976, 275967,
1139   271047, 266215, 261469, 256808,
1140   252230, 247733, 243317, 238979,
1141   234719, 230535, 226425, 222388,
1142   218424, 214530, 210705, 206949,
1143   203260, 199636, 196077, 192582,
1144   189148, 185776, 182465, 179212,
1145   176017, 172879, 169797, 166770,
1146   163797, 160877, 158009, 155192,
1147   152425, 149708, 147039, 144417,
1148   141843, 139314, 136830, 134391,
1149   131995, 129642, 127331, 125061,
1150   122831, 120641, 118491, 116378,
1151   114304, 112266, 110264, 108299,
1152   106368, 104472, 102609, 100780,
1153    98983,  97218,  95485,  93783,
1154    92111,  90469,  88856,  87272,
1155    85716,  84188,  82687,  81213,
1156    79765,  78343,  76946,  75574,
1157    74227,  72904,  71604,  70328,
1158    69074,  67842,  66633,  65445,
1159    64278,  63132,  62007,  60901,
1160    59815,  58749,  57702,  56673,
1161    55663,  54670,  53696,  52738,
1162    51798,  50875,  49968,  49077,
1163    48202,  47343,  46498,  45669,
1164    44855,  44056,  43270,  42499,
1165    41741,  40997,  40266,  39548,
1166    38843,  38151,  37470,  36802,
1167    36146,  35502,  34869,  34247,
1168    33637,  33037,  32448,  31870,
1169    31301,  30743,  30195,  29657,
1170    29128,  28609,  28099,  27598,
1171    27106,  26623,  26148,  25682,
1172    25224,  24774,  24332,  23899,
1173    23473,  23054,  22643,  22239,
1174    21843,  21454,  21071,  20695,
1175    20326,  19964,  19608,  19258,
1176    18915,  18578,  18247,  17921,
1177    17602,  17288,  16980,  16677,
1178    16380,  16088,  15801,  15519,
1179    15243,  14971,  14704,  14442,
1180    14184,  13931,  13683,  13439,
1181    13199,  12964,  12733,  12506,
1182    12283,  12064,  11849,  11638,
1183    11430,  11226,  11026,  10830,
1184    10637,  10447,  10261,  10078,
1185     9898,   9722,   9548,   9378,
1186     9211,   9047,   8885,   8727,
1187     8571,   8418,   8268,   8121,
1188     7976,   7834,   7694,   7557,
1189     7422,   7290,   7160,   7032,
1190     6907,   6784,   6663,   6544,
1191     6427,   6313,   6200,   6090,
1192     5981,   5875,   5770,   5667,
1193     5566,   5467,   5369,   5273,
1194     5179,   5087,   4996,   4907,
1195     4820,   4734,   4649,   4567,
1196     4485,   4405,   4327,   4249,
1197     4174,   4099,   4026,   3954,
1198     3884,   3815,   3747,   3680,
1199     3614,   3550,   3486,   3424,
1200     3363,   3303,   3244,   3187,
1201     3130,   3074,   3019,   2965,
1202     2912,   2860,   2809,   2759,
1203     2710,   2662,   2614,   2568,
1204     2522,   2477,   2433,   2389,
1205     2347,   2305,   2264,   2224,
1206     2184,   2145,   2107,   2069,
1207     2032,   1996,   1960,   1925,
1208     1891,   1857,   1824,   1792,
1209     1760,   1728,   1698,   1667,
1210     1638,   1608,   1580,   1551,
1211     1524,   1497,   1470,   1444,
1212     1418,   1393,   1368,   1343,
1213     1319,   1296,   1273,   1250,
1214     1228,   1206,   1184,   1163,
1215     1143,   1122,   1102,   1083,
1216     1063,   1044,   1026,   1007,
1217      989,    972,    954,    937,
1218      921,    904,    888,    872,
1219      857,    841,    826,    812,
1220      797,    783,    769,    755,
1221      742,    729,    716,    703,
1222 };
1223 const uint32_t lut_exp2[] = {
1224    65536,  65713,  65891,  66070,
1225    66249,  66429,  66609,  66789,
1226    66971,  67152,  67334,  67517,
1227    67700,  67883,  68067,  68252,
1228    68437,  68623,  68809,  68995,
1229    69182,  69370,  69558,  69747,
1230    69936,  70125,  70315,  70506,
1231    70697,  70889,  71081,  71274,
1232    71467,  71661,  71855,  72050,
1233    72245,  72441,  72638,  72834,
1234    73032,  73230,  73429,  73628,
1235    73827,  74027,  74228,  74429,
1236    74631,  74833,  75036,  75240,
1237    75444,  75648,  75853,  76059,
1238    76265,  76472,  76679,  76887,
1239    77096,  77305,  77514,  77725,
1240    77935,  78147,  78359,  78571,
1241    78784,  78998,  79212,  79427,
1242    79642,  79858,  80074,  80292,
1243    80509,  80727,  80946,  81166,
1244    81386,  81607,  81828,  82050,
1245    82272,  82495,  82719,  82943,
1246    83168,  83394,  83620,  83846,
1247    84074,  84302,  84530,  84759,
1248    84989,  85220,  85451,  85682,
1249    85915,  86148,  86381,  86615,
1250    86850,  87086,  87322,  87559,
1251    87796,  88034,  88273,  88512,
1252    88752,  88993,  89234,  89476,
1253    89718,  89962,  90206,  90450,
1254    90695,  90941,  91188,  91435,
1255    91683,  91932,  92181,  92431,
1256    92681,  92933,  93185,  93437,
1257    93691,  93945,  94199,  94455,
1258    94711,  94968,  95225,  95483,
1259    95742,  96002,  96262,  96523,
1260    96785,  97047,  97310,  97574,
1261    97839,  98104,  98370,  98637,
1262    98904,  99172,  99441,  99711,
1263    99981, 100252, 100524, 100797,
1264   101070, 101344, 101619, 101894,
1265   102170, 102447, 102725, 103004,
1266   103283, 103563, 103844, 104125,
1267   104408, 104691, 104975, 105259,
1268   105545, 105831, 106118, 106405,
1269   106694, 106983, 107273, 107564,
1270   107856, 108148, 108441, 108735,
1271   109030, 109326, 109622, 109919,
1272   110217, 110516, 110816, 111116,
1273   111418, 111720, 112023, 112326,
1274   112631, 112936, 113243, 113550,
1275   113857, 114166, 114476, 114786,
1276   115097, 115409, 115722, 116036,
1277   116351, 116666, 116982, 117300,
1278   117618, 117936, 118256, 118577,
1279   118898, 119221, 119544, 119868,
1280   120193, 120519, 120846, 121173,
1281   121502, 121831, 122162, 122493,
1282   122825, 123158, 123492, 123827,
1283   124162, 124499, 124837, 125175,
1284   125514, 125855, 126196, 126538,
1285   126881, 127225, 127570, 127916,
1286   128263, 128611, 128959, 129309,
1287   129660, 130011, 130364, 130717,
1288   131072,
1289 };
1290 const uint32_t lut_log2[] = {
1291   524288, 524656, 525023, 525389,
1292   525753, 526116, 526478, 526838,
1293   527197, 527554, 527910, 528265,
1294   528619, 528971, 529322, 529671,
1295   530019, 530366, 530712, 531057,
1296   531400, 531742, 532082, 532422,
1297   532760, 533097, 533433, 533768,
1298   534101, 534434, 534765, 535095,
1299   535424, 535751, 536078, 536403,
1300   536728, 537051, 537373, 537694,
1301   538014, 538333, 538651, 538968,
1302   539283, 539598, 539912, 540224,
1303   540536, 540846, 541156, 541464,
1304   541772, 542078, 542384, 542688,
1305   542992, 543294, 543596, 543896,
1306   544196, 544495, 544793, 545089,
1307   545385, 545680, 545974, 546268,
1308   546560, 546851, 547142, 547431,
1309   547720, 548008, 548295, 548581,
1310   548866, 549150, 549434, 549717,
1311   549998, 550279, 550560, 550839,
1312   551117, 551395, 551672, 551948,
1313   552223, 552498, 552771, 553044,
1314   553316, 553588, 553858, 554128,
1315   554397, 554665, 554932, 555199,
1316   555465, 555730, 555995, 556259,
1317   556522, 556784, 557045, 557306,
1318   557566, 557826, 558084, 558342,
1319   558600, 558856, 559112, 559367,
1320   559622, 559876, 560129, 560381,
1321   560633, 560884, 561135, 561384,
1322   561634, 561882, 562130, 562377,
1323   562624, 562870, 563115, 563359,
1324   563603, 563847, 564089, 564332,
1325   564573, 564814, 565054, 565294,
1326   565533, 565771, 566009, 566247,
1327   566483, 566719, 566955, 567190,
1328   567424, 567658, 567891, 568124,
1329   568356, 568587, 568818, 569048,
1330   569278, 569507, 569736, 569964,
1331   570192, 570419, 570645, 570871,
1332   571096, 571321, 571545, 571769,
1333   571992, 572215, 572437, 572659,
1334   572880, 573101, 573321, 573541,
1335   573760, 573978, 574197, 574414,
1336   574631, 574848, 575064, 575280,
1337   575495, 575709, 575923, 576137,
1338   576350, 576563, 576775, 576987,
1339   577198, 577409, 577619, 577829,
1340   578039, 578248, 578456, 578664,
1341   578872, 579079, 579286, 579492,
1342   579698, 579903, 580108, 580312,
1343   580516, 580720, 580923, 581125,
1344   581328, 581530, 581731, 581932,
1345   582132, 582332, 582532, 582731,
1346   582930, 583129, 583327, 583524,
1347   583721, 583918, 584115, 584311,
1348   584506, 584701, 584896, 585090,
1349   585284, 585478, 585671, 585864,
1350   586056, 586248, 586440, 586631,
1351   586822, 587012, 587202, 587392,
1352   587581, 587770, 587959, 588147,
1353   588335, 588522, 588709, 588896,
1354   589082, 589268, 589453, 589639,
1355   589824,
1356 };
1357 const uint32_t lut_lorenz_rate[] = {
1358        3,      3,      3,      4,
1359        4,      4,      4,      4,
1360        5,      5,      5,      5,
1361        6,      6,      6,      7,
1362        7,      7,      8,      8,
1363        8,      9,      9,     10,
1364       10,     11,     11,     12,
1365       12,     13,     13,     14,
1366       15,     15,     16,     17,
1367       18,     18,     19,     20,
1368       21,     22,     23,     24,
1369       25,     27,     28,     29,
1370       30,     32,     33,     35,
1371       36,     38,     40,     42,
1372       44,     46,     48,     50,
1373       52,     55,     57,     60,
1374       63,     66,     69,     72,
1375       75,     78,     82,     86,
1376       90,     94,     98,    103,
1377      107,    112,    118,    123,
1378      129,    135,    141,    147,
1379      154,    161,    168,    176,
1380      184,    193,    201,    211,
1381      220,    230,    241,    252,
1382      263,    275,    288,    301,
1383      315,    329,    344,    360,
1384      377,    394,    412,    431,
1385      451,    471,    493,    515,
1386      539,    563,    589,    616,
1387      644,    674,    705,    737,
1388      770,    806,    843,    881,
1389      921,    963,   1007,   1054,
1390     1102,   1152,   1205,   1260,
1391     1317,   1378,   1441,   1506,
1392     1575,   1647,   1722,   1801,
1393     1883,   1970,   2060,   2154,
1394     2252,   2355,   2463,   2575,
1395     2693,   2816,   2945,   3079,
1396     3220,   3367,   3521,   3682,
1397     3850,   4026,   4210,   4402,
1398     4603,   4814,   5034,   5264,
1399     5504,   5756,   6019,   6294,
1400     6581,   6882,   7196,   7525,
1401     7869,   8229,   8605,   8998,
1402     9409,   9839,  10288,  10758,
1403    11250,  11764,  12302,  12864,
1404    13451,  14066,  14709,  15381,
1405    16083,  16818,  17587,  18390,
1406    19230,  20109,  21028,  21989,
1407    22993,  24044,  25142,  26291,
1408    27492,  28748,  30062,  31435,
1409    32872,  34374,  35944,  37586,
1410    39304,  41099,  42977,  44941,
1411    46994,  49141,  51386,  53734,
1412    56189,  58756,  61441,  64248,
1413    67184,  70253,  73463,  76819,
1414    80329,  83999,  87837,  91850,
1415    96047, 100435, 105024, 109822,
1416   114840, 120087, 125573, 131310,
1417   137310, 143583, 150144, 157003,
1418   164177, 171678, 179521, 187723,
1419   196300, 205269, 214647, 224454,
1420   234709, 245433, 256646, 268372,
1421   280634, 293455, 306863, 320883,
1422   335544,
1423 };
1424 
1425 
1426 const uint32_t* lookup_table_32_table[] = {
1427   lut_env_increments,
1428   lut_lp_coefficients,
1429   lut_exp2,
1430   lut_log2,
1431   lut_lorenz_rate,
1432 };
1433 
1434 
1435 }  // namespace streams
1436