FFmpeg
aactab.c
Go to the documentation of this file.
1 /*
2  * AAC data
3  * Copyright (c) 2005-2006 Oded Shimon ( ods15 ods15 dyndns org )
4  * Copyright (c) 2006-2007 Maxim Gavrilov ( maxim.gavrilov gmail com )
5  *
6  * This file is part of FFmpeg.
7  *
8  * FFmpeg is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU Lesser General Public
10  * License as published by the Free Software Foundation; either
11  * version 2.1 of the License, or (at your option) any later version.
12  *
13  * FFmpeg 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 GNU
16  * Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with FFmpeg; if not, write to the Free Software
20  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
21  */
22 
23 /**
24  * @file
25  * AAC data
26  * @author Oded Shimon ( ods15 ods15 dyndns org )
27  * @author Maxim Gavrilov ( maxim.gavrilov gmail com )
28  */
29 
30 #include <stddef.h>
31 #include <stdint.h>
32 
33 #include "config_components.h"
34 #include "libavutil/attributes.h"
35 #include "libavutil/mem_internal.h"
36 #include "libavutil/thread.h"
37 #include "aactab.h"
38 
39 #if CONFIG_AAC_ENCODER || CONFIG_AAC_DECODER
40 #include "kbdwin.h"
41 #include "sinewin.h"
42 
43 float ff_aac_pow2sf_tab[428];
44 float ff_aac_pow34sf_tab[428];
45 
46 DECLARE_ALIGNED(32, float, ff_aac_kbd_long_1024)[1024];
47 DECLARE_ALIGNED(32, float, ff_aac_kbd_short_128)[128];
48 
49 static av_cold void aac_tableinit(void)
50 {
51  /* 2^(i/16) for 0 <= i <= 15 */
52  static const float exp2_lut[] = {
53  1.00000000000000000000,
54  1.04427378242741384032,
55  1.09050773266525765921,
56  1.13878863475669165370,
57  1.18920711500272106672,
58  1.24185781207348404859,
59  1.29683955465100966593,
60  1.35425554693689272830,
61  1.41421356237309504880,
62  1.47682614593949931139,
63  1.54221082540794082361,
64  1.61049033194925430818,
65  1.68179283050742908606,
66  1.75625216037329948311,
67  1.83400808640934246349,
68  1.91520656139714729387,
69  };
70  float t1 = 8.8817841970012523233890533447265625e-16; // 2^(-50)
71  float t2 = 3.63797880709171295166015625e-12; // 2^(-38)
72  int t1_inc_cur, t2_inc_cur;
73  int t1_inc_prev = 0;
74  int t2_inc_prev = 8;
75 
76  for (int i = 0; i < 428; i++) {
77  t1_inc_cur = 4 * (i % 4);
78  t2_inc_cur = (8 + 3*i) % 16;
79  if (t1_inc_cur < t1_inc_prev)
80  t1 *= 2;
81  if (t2_inc_cur < t2_inc_prev)
82  t2 *= 2;
83  // A much more efficient and accurate way of doing:
84  // ff_aac_pow2sf_tab[i] = pow(2, (i - POW_SF2_ZERO) / 4.0);
85  // ff_aac_pow34sf_tab[i] = pow(ff_aac_pow2sf_tab[i], 3.0/4.0);
86  ff_aac_pow2sf_tab[i] = t1 * exp2_lut[t1_inc_cur];
87  ff_aac_pow34sf_tab[i] = t2 * exp2_lut[t2_inc_cur];
88  t1_inc_prev = t1_inc_cur;
89  t2_inc_prev = t2_inc_cur;
90  }
91 }
92 
93 static av_cold void aac_float_common_init(void)
94 {
95  aac_tableinit();
96 
101 }
102 
104 {
105  static AVOnce init_static_once = AV_ONCE_INIT;
106  ff_thread_once(&init_static_once, aac_float_common_init);
107 }
108 
109 const float ff_ltp_coef[8] = {
110  0.570829, 0.696616, 0.813004, 0.911304,
111  0.984900, 1.067894, 1.194601, 1.369533,
112 };
113 
114 /* @name tns_tmp2_map
115  * Tables of the tmp2[] arrays of LPC coefficients used for TNS.
116  * The suffix _M_N[] indicate the values of coef_compress and coef_res
117  * respectively.
118  * @{
119  */
120 static const float tns_tmp2_map_1_3[4] = {
121  0.00000000, -0.43388373, 0.64278758, 0.34202015,
122 };
123 
124 static const float tns_tmp2_map_0_3[8] = {
125  0.00000000, -0.43388373, -0.78183150, -0.97492790,
126  0.98480773, 0.86602539, 0.64278758, 0.34202015,
127 };
128 
129 static const float tns_tmp2_map_1_4[8] = {
130  0.00000000, -0.20791170, -0.40673664, -0.58778524,
131  0.67369562, 0.52643216, 0.36124167, 0.18374951,
132 };
133 
134 static const float tns_tmp2_map_0_4[16] = {
135  0.00000000, -0.20791170, -0.40673664, -0.58778524,
136  -0.74314481, -0.86602539, -0.95105654, -0.99452192,
137  0.99573416, 0.96182561, 0.89516330, 0.79801720,
138  0.67369562, 0.52643216, 0.36124167, 0.18374951,
139 };
140 
141 const float * const ff_tns_tmp2_map[4] = {
146 };
147 #endif
148 
149 const uint8_t ff_aac_num_swb_1024[] = {
150  41, 41, 47, 49, 49, 51, 47, 47, 43, 43, 43, 40, 40
151 };
152 
153 const uint8_t ff_aac_num_swb_960[] = {
154  40, 40, 46, 49, 49, 49, 46, 46, 42, 42, 42, 40, 40
155 };
156 
157 const uint8_t ff_aac_num_swb_512[] = {
158  0, 0, 0, 36, 36, 37, 31, 31, 0, 0, 0, 0, 0
159 };
160 
161 const uint8_t ff_aac_num_swb_480[] = {
162  0, 0, 0, 35, 35, 37, 30, 30, 0, 0, 0, 0, 0
163 };
164 
165 const uint8_t ff_aac_num_swb_128[] = {
166  12, 12, 12, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15
167 };
168 
169 const uint8_t ff_aac_num_swb_120[] = {
170  12, 12, 12, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15
171 };
172 
173 const uint8_t ff_aac_pred_sfb_max[] = {
174  33, 33, 38, 40, 40, 40, 41, 41, 37, 37, 37, 34, 34
175 };
176 
177 const uint32_t ff_aac_scalefactor_code[121] = {
178  0x3ffe8, 0x3ffe6, 0x3ffe7, 0x3ffe5, 0x7fff5, 0x7fff1, 0x7ffed, 0x7fff6,
179  0x7ffee, 0x7ffef, 0x7fff0, 0x7fffc, 0x7fffd, 0x7ffff, 0x7fffe, 0x7fff7,
180  0x7fff8, 0x7fffb, 0x7fff9, 0x3ffe4, 0x7fffa, 0x3ffe3, 0x1ffef, 0x1fff0,
181  0x0fff5, 0x1ffee, 0x0fff2, 0x0fff3, 0x0fff4, 0x0fff1, 0x07ff6, 0x07ff7,
182  0x03ff9, 0x03ff5, 0x03ff7, 0x03ff3, 0x03ff6, 0x03ff2, 0x01ff7, 0x01ff5,
183  0x00ff9, 0x00ff7, 0x00ff6, 0x007f9, 0x00ff4, 0x007f8, 0x003f9, 0x003f7,
184  0x003f5, 0x001f8, 0x001f7, 0x000fa, 0x000f8, 0x000f6, 0x00079, 0x0003a,
185  0x00038, 0x0001a, 0x0000b, 0x00004, 0x00000, 0x0000a, 0x0000c, 0x0001b,
186  0x00039, 0x0003b, 0x00078, 0x0007a, 0x000f7, 0x000f9, 0x001f6, 0x001f9,
187  0x003f4, 0x003f6, 0x003f8, 0x007f5, 0x007f4, 0x007f6, 0x007f7, 0x00ff5,
188  0x00ff8, 0x01ff4, 0x01ff6, 0x01ff8, 0x03ff8, 0x03ff4, 0x0fff0, 0x07ff4,
189  0x0fff6, 0x07ff5, 0x3ffe2, 0x7ffd9, 0x7ffda, 0x7ffdb, 0x7ffdc, 0x7ffdd,
190  0x7ffde, 0x7ffd8, 0x7ffd2, 0x7ffd3, 0x7ffd4, 0x7ffd5, 0x7ffd6, 0x7fff2,
191  0x7ffdf, 0x7ffe7, 0x7ffe8, 0x7ffe9, 0x7ffea, 0x7ffeb, 0x7ffe6, 0x7ffe0,
192  0x7ffe1, 0x7ffe2, 0x7ffe3, 0x7ffe4, 0x7ffe5, 0x7ffd7, 0x7ffec, 0x7fff4,
193  0x7fff3,
194 };
195 
196 const uint8_t ff_aac_scalefactor_bits[121] = {
197  18, 18, 18, 18, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
198  19, 19, 19, 18, 19, 18, 17, 17, 16, 17, 16, 16, 16, 16, 15, 15,
199  14, 14, 14, 14, 14, 14, 13, 13, 12, 12, 12, 11, 12, 11, 10, 10,
200  10, 9, 9, 8, 8, 8, 7, 6, 6, 5, 4, 3, 1, 4, 4, 5,
201  6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 10, 11, 11, 11, 11, 12,
202  12, 13, 13, 13, 14, 14, 16, 15, 16, 15, 18, 19, 19, 19, 19, 19,
203  19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
204  19, 19, 19, 19, 19, 19, 19, 19, 19,
205 };
206 
207 static const uint16_t codes1[81] = {
208  0x7f8, 0x1f1, 0x7fd, 0x3f5, 0x068, 0x3f0, 0x7f7, 0x1ec,
209  0x7f5, 0x3f1, 0x072, 0x3f4, 0x074, 0x011, 0x076, 0x1eb,
210  0x06c, 0x3f6, 0x7fc, 0x1e1, 0x7f1, 0x1f0, 0x061, 0x1f6,
211  0x7f2, 0x1ea, 0x7fb, 0x1f2, 0x069, 0x1ed, 0x077, 0x017,
212  0x06f, 0x1e6, 0x064, 0x1e5, 0x067, 0x015, 0x062, 0x012,
213  0x000, 0x014, 0x065, 0x016, 0x06d, 0x1e9, 0x063, 0x1e4,
214  0x06b, 0x013, 0x071, 0x1e3, 0x070, 0x1f3, 0x7fe, 0x1e7,
215  0x7f3, 0x1ef, 0x060, 0x1ee, 0x7f0, 0x1e2, 0x7fa, 0x3f3,
216  0x06a, 0x1e8, 0x075, 0x010, 0x073, 0x1f4, 0x06e, 0x3f7,
217  0x7f6, 0x1e0, 0x7f9, 0x3f2, 0x066, 0x1f5, 0x7ff, 0x1f7,
218  0x7f4,
219 };
220 
221 static const uint8_t bits1[81] = {
222  11, 9, 11, 10, 7, 10, 11, 9, 11, 10, 7, 10, 7, 5, 7, 9,
223  7, 10, 11, 9, 11, 9, 7, 9, 11, 9, 11, 9, 7, 9, 7, 5,
224  7, 9, 7, 9, 7, 5, 7, 5, 1, 5, 7, 5, 7, 9, 7, 9,
225  7, 5, 7, 9, 7, 9, 11, 9, 11, 9, 7, 9, 11, 9, 11, 10,
226  7, 9, 7, 5, 7, 9, 7, 10, 11, 9, 11, 10, 7, 9, 11, 9,
227  11,
228 };
229 
230 static const uint16_t codes2[81] = {
231  0x1f3, 0x06f, 0x1fd, 0x0eb, 0x023, 0x0ea, 0x1f7, 0x0e8,
232  0x1fa, 0x0f2, 0x02d, 0x070, 0x020, 0x006, 0x02b, 0x06e,
233  0x028, 0x0e9, 0x1f9, 0x066, 0x0f8, 0x0e7, 0x01b, 0x0f1,
234  0x1f4, 0x06b, 0x1f5, 0x0ec, 0x02a, 0x06c, 0x02c, 0x00a,
235  0x027, 0x067, 0x01a, 0x0f5, 0x024, 0x008, 0x01f, 0x009,
236  0x000, 0x007, 0x01d, 0x00b, 0x030, 0x0ef, 0x01c, 0x064,
237  0x01e, 0x00c, 0x029, 0x0f3, 0x02f, 0x0f0, 0x1fc, 0x071,
238  0x1f2, 0x0f4, 0x021, 0x0e6, 0x0f7, 0x068, 0x1f8, 0x0ee,
239  0x022, 0x065, 0x031, 0x002, 0x026, 0x0ed, 0x025, 0x06a,
240  0x1fb, 0x072, 0x1fe, 0x069, 0x02e, 0x0f6, 0x1ff, 0x06d,
241  0x1f6,
242 };
243 
244 static const uint8_t bits2[81] = {
245  9, 7, 9, 8, 6, 8, 9, 8, 9, 8, 6, 7, 6, 5, 6, 7,
246  6, 8, 9, 7, 8, 8, 6, 8, 9, 7, 9, 8, 6, 7, 6, 5,
247  6, 7, 6, 8, 6, 5, 6, 5, 3, 5, 6, 5, 6, 8, 6, 7,
248  6, 5, 6, 8, 6, 8, 9, 7, 9, 8, 6, 8, 8, 7, 9, 8,
249  6, 7, 6, 4, 6, 8, 6, 7, 9, 7, 9, 7, 6, 8, 9, 7,
250  9,
251 };
252 
253 static const uint16_t codes3[81] = {
254  0x0000, 0x0009, 0x00ef, 0x000b, 0x0019, 0x00f0, 0x01eb, 0x01e6,
255  0x03f2, 0x000a, 0x0035, 0x01ef, 0x0034, 0x0037, 0x01e9, 0x01ed,
256  0x01e7, 0x03f3, 0x01ee, 0x03ed, 0x1ffa, 0x01ec, 0x01f2, 0x07f9,
257  0x07f8, 0x03f8, 0x0ff8, 0x0008, 0x0038, 0x03f6, 0x0036, 0x0075,
258  0x03f1, 0x03eb, 0x03ec, 0x0ff4, 0x0018, 0x0076, 0x07f4, 0x0039,
259  0x0074, 0x03ef, 0x01f3, 0x01f4, 0x07f6, 0x01e8, 0x03ea, 0x1ffc,
260  0x00f2, 0x01f1, 0x0ffb, 0x03f5, 0x07f3, 0x0ffc, 0x00ee, 0x03f7,
261  0x7ffe, 0x01f0, 0x07f5, 0x7ffd, 0x1ffb, 0x3ffa, 0xffff, 0x00f1,
262  0x03f0, 0x3ffc, 0x01ea, 0x03ee, 0x3ffb, 0x0ff6, 0x0ffa, 0x7ffc,
263  0x07f2, 0x0ff5, 0xfffe, 0x03f4, 0x07f7, 0x7ffb, 0x0ff7, 0x0ff9,
264  0x7ffa,
265 };
266 
267 static const uint8_t bits3[81] = {
268  1, 4, 8, 4, 5, 8, 9, 9, 10, 4, 6, 9, 6, 6, 9, 9,
269  9, 10, 9, 10, 13, 9, 9, 11, 11, 10, 12, 4, 6, 10, 6, 7,
270  10, 10, 10, 12, 5, 7, 11, 6, 7, 10, 9, 9, 11, 9, 10, 13,
271  8, 9, 12, 10, 11, 12, 8, 10, 15, 9, 11, 15, 13, 14, 16, 8,
272  10, 14, 9, 10, 14, 12, 12, 15, 11, 12, 16, 10, 11, 15, 12, 12,
273  15,
274 };
275 
276 static const uint16_t codes4[81] = {
277  0x007, 0x016, 0x0f6, 0x018, 0x008, 0x0ef, 0x1ef, 0x0f3,
278  0x7f8, 0x019, 0x017, 0x0ed, 0x015, 0x001, 0x0e2, 0x0f0,
279  0x070, 0x3f0, 0x1ee, 0x0f1, 0x7fa, 0x0ee, 0x0e4, 0x3f2,
280  0x7f6, 0x3ef, 0x7fd, 0x005, 0x014, 0x0f2, 0x009, 0x004,
281  0x0e5, 0x0f4, 0x0e8, 0x3f4, 0x006, 0x002, 0x0e7, 0x003,
282  0x000, 0x06b, 0x0e3, 0x069, 0x1f3, 0x0eb, 0x0e6, 0x3f6,
283  0x06e, 0x06a, 0x1f4, 0x3ec, 0x1f0, 0x3f9, 0x0f5, 0x0ec,
284  0x7fb, 0x0ea, 0x06f, 0x3f7, 0x7f9, 0x3f3, 0xfff, 0x0e9,
285  0x06d, 0x3f8, 0x06c, 0x068, 0x1f5, 0x3ee, 0x1f2, 0x7f4,
286  0x7f7, 0x3f1, 0xffe, 0x3ed, 0x1f1, 0x7f5, 0x7fe, 0x3f5,
287  0x7fc,
288 };
289 
290 static const uint8_t bits4[81] = {
291  4, 5, 8, 5, 4, 8, 9, 8, 11, 5, 5, 8, 5, 4, 8, 8,
292  7, 10, 9, 8, 11, 8, 8, 10, 11, 10, 11, 4, 5, 8, 4, 4,
293  8, 8, 8, 10, 4, 4, 8, 4, 4, 7, 8, 7, 9, 8, 8, 10,
294  7, 7, 9, 10, 9, 10, 8, 8, 11, 8, 7, 10, 11, 10, 12, 8,
295  7, 10, 7, 7, 9, 10, 9, 11, 11, 10, 12, 10, 9, 11, 11, 10,
296  11,
297 };
298 
299 static const uint16_t codes5[81] = {
300  0x1fff, 0x0ff7, 0x07f4, 0x07e8, 0x03f1, 0x07ee, 0x07f9, 0x0ff8,
301  0x1ffd, 0x0ffd, 0x07f1, 0x03e8, 0x01e8, 0x00f0, 0x01ec, 0x03ee,
302  0x07f2, 0x0ffa, 0x0ff4, 0x03ef, 0x01f2, 0x00e8, 0x0070, 0x00ec,
303  0x01f0, 0x03ea, 0x07f3, 0x07eb, 0x01eb, 0x00ea, 0x001a, 0x0008,
304  0x0019, 0x00ee, 0x01ef, 0x07ed, 0x03f0, 0x00f2, 0x0073, 0x000b,
305  0x0000, 0x000a, 0x0071, 0x00f3, 0x07e9, 0x07ef, 0x01ee, 0x00ef,
306  0x0018, 0x0009, 0x001b, 0x00eb, 0x01e9, 0x07ec, 0x07f6, 0x03eb,
307  0x01f3, 0x00ed, 0x0072, 0x00e9, 0x01f1, 0x03ed, 0x07f7, 0x0ff6,
308  0x07f0, 0x03e9, 0x01ed, 0x00f1, 0x01ea, 0x03ec, 0x07f8, 0x0ff9,
309  0x1ffc, 0x0ffc, 0x0ff5, 0x07ea, 0x03f3, 0x03f2, 0x07f5, 0x0ffb,
310  0x1ffe,
311 };
312 
313 static const uint8_t bits5[81] = {
314  13, 12, 11, 11, 10, 11, 11, 12, 13, 12, 11, 10, 9, 8, 9, 10,
315  11, 12, 12, 10, 9, 8, 7, 8, 9, 10, 11, 11, 9, 8, 5, 4,
316  5, 8, 9, 11, 10, 8, 7, 4, 1, 4, 7, 8, 11, 11, 9, 8,
317  5, 4, 5, 8, 9, 11, 11, 10, 9, 8, 7, 8, 9, 10, 11, 12,
318  11, 10, 9, 8, 9, 10, 11, 12, 13, 12, 12, 11, 10, 10, 11, 12,
319  13,
320 };
321 
322 static const uint16_t codes6[81] = {
323  0x7fe, 0x3fd, 0x1f1, 0x1eb, 0x1f4, 0x1ea, 0x1f0, 0x3fc,
324  0x7fd, 0x3f6, 0x1e5, 0x0ea, 0x06c, 0x071, 0x068, 0x0f0,
325  0x1e6, 0x3f7, 0x1f3, 0x0ef, 0x032, 0x027, 0x028, 0x026,
326  0x031, 0x0eb, 0x1f7, 0x1e8, 0x06f, 0x02e, 0x008, 0x004,
327  0x006, 0x029, 0x06b, 0x1ee, 0x1ef, 0x072, 0x02d, 0x002,
328  0x000, 0x003, 0x02f, 0x073, 0x1fa, 0x1e7, 0x06e, 0x02b,
329  0x007, 0x001, 0x005, 0x02c, 0x06d, 0x1ec, 0x1f9, 0x0ee,
330  0x030, 0x024, 0x02a, 0x025, 0x033, 0x0ec, 0x1f2, 0x3f8,
331  0x1e4, 0x0ed, 0x06a, 0x070, 0x069, 0x074, 0x0f1, 0x3fa,
332  0x7ff, 0x3f9, 0x1f6, 0x1ed, 0x1f8, 0x1e9, 0x1f5, 0x3fb,
333  0x7fc,
334 };
335 
336 static const uint8_t bits6[81] = {
337  11, 10, 9, 9, 9, 9, 9, 10, 11, 10, 9, 8, 7, 7, 7, 8,
338  9, 10, 9, 8, 6, 6, 6, 6, 6, 8, 9, 9, 7, 6, 4, 4,
339  4, 6, 7, 9, 9, 7, 6, 4, 4, 4, 6, 7, 9, 9, 7, 6,
340  4, 4, 4, 6, 7, 9, 9, 8, 6, 6, 6, 6, 6, 8, 9, 10,
341  9, 8, 7, 7, 7, 7, 8, 10, 11, 10, 9, 9, 9, 9, 9, 10,
342  11,
343 };
344 
345 static const uint16_t codes7[64] = {
346  0x000, 0x005, 0x037, 0x074, 0x0f2, 0x1eb, 0x3ed, 0x7f7,
347  0x004, 0x00c, 0x035, 0x071, 0x0ec, 0x0ee, 0x1ee, 0x1f5,
348  0x036, 0x034, 0x072, 0x0ea, 0x0f1, 0x1e9, 0x1f3, 0x3f5,
349  0x073, 0x070, 0x0eb, 0x0f0, 0x1f1, 0x1f0, 0x3ec, 0x3fa,
350  0x0f3, 0x0ed, 0x1e8, 0x1ef, 0x3ef, 0x3f1, 0x3f9, 0x7fb,
351  0x1ed, 0x0ef, 0x1ea, 0x1f2, 0x3f3, 0x3f8, 0x7f9, 0x7fc,
352  0x3ee, 0x1ec, 0x1f4, 0x3f4, 0x3f7, 0x7f8, 0xffd, 0xffe,
353  0x7f6, 0x3f0, 0x3f2, 0x3f6, 0x7fa, 0x7fd, 0xffc, 0xfff,
354 };
355 
356 static const uint8_t bits7[64] = {
357  1, 3, 6, 7, 8, 9, 10, 11, 3, 4, 6, 7, 8, 8, 9, 9,
358  6, 6, 7, 8, 8, 9, 9, 10, 7, 7, 8, 8, 9, 9, 10, 10,
359  8, 8, 9, 9, 10, 10, 10, 11, 9, 8, 9, 9, 10, 10, 11, 11,
360  10, 9, 9, 10, 10, 11, 12, 12, 11, 10, 10, 10, 11, 11, 12, 12,
361 };
362 
363 static const uint16_t codes8[64] = {
364  0x00e, 0x005, 0x010, 0x030, 0x06f, 0x0f1, 0x1fa, 0x3fe,
365  0x003, 0x000, 0x004, 0x012, 0x02c, 0x06a, 0x075, 0x0f8,
366  0x00f, 0x002, 0x006, 0x014, 0x02e, 0x069, 0x072, 0x0f5,
367  0x02f, 0x011, 0x013, 0x02a, 0x032, 0x06c, 0x0ec, 0x0fa,
368  0x071, 0x02b, 0x02d, 0x031, 0x06d, 0x070, 0x0f2, 0x1f9,
369  0x0ef, 0x068, 0x033, 0x06b, 0x06e, 0x0ee, 0x0f9, 0x3fc,
370  0x1f8, 0x074, 0x073, 0x0ed, 0x0f0, 0x0f6, 0x1f6, 0x1fd,
371  0x3fd, 0x0f3, 0x0f4, 0x0f7, 0x1f7, 0x1fb, 0x1fc, 0x3ff,
372 };
373 
374 static const uint8_t bits8[64] = {
375  5, 4, 5, 6, 7, 8, 9, 10, 4, 3, 4, 5, 6, 7, 7, 8,
376  5, 4, 4, 5, 6, 7, 7, 8, 6, 5, 5, 6, 6, 7, 8, 8,
377  7, 6, 6, 6, 7, 7, 8, 9, 8, 7, 6, 7, 7, 8, 8, 10,
378  9, 7, 7, 8, 8, 8, 9, 9, 10, 8, 8, 8, 9, 9, 9, 10,
379 };
380 
381 static const uint16_t codes9[169] = {
382  0x0000, 0x0005, 0x0037, 0x00e7, 0x01de, 0x03ce, 0x03d9, 0x07c8,
383  0x07cd, 0x0fc8, 0x0fdd, 0x1fe4, 0x1fec, 0x0004, 0x000c, 0x0035,
384  0x0072, 0x00ea, 0x00ed, 0x01e2, 0x03d1, 0x03d3, 0x03e0, 0x07d8,
385  0x0fcf, 0x0fd5, 0x0036, 0x0034, 0x0071, 0x00e8, 0x00ec, 0x01e1,
386  0x03cf, 0x03dd, 0x03db, 0x07d0, 0x0fc7, 0x0fd4, 0x0fe4, 0x00e6,
387  0x0070, 0x00e9, 0x01dd, 0x01e3, 0x03d2, 0x03dc, 0x07cc, 0x07ca,
388  0x07de, 0x0fd8, 0x0fea, 0x1fdb, 0x01df, 0x00eb, 0x01dc, 0x01e6,
389  0x03d5, 0x03de, 0x07cb, 0x07dd, 0x07dc, 0x0fcd, 0x0fe2, 0x0fe7,
390  0x1fe1, 0x03d0, 0x01e0, 0x01e4, 0x03d6, 0x07c5, 0x07d1, 0x07db,
391  0x0fd2, 0x07e0, 0x0fd9, 0x0feb, 0x1fe3, 0x1fe9, 0x07c4, 0x01e5,
392  0x03d7, 0x07c6, 0x07cf, 0x07da, 0x0fcb, 0x0fda, 0x0fe3, 0x0fe9,
393  0x1fe6, 0x1ff3, 0x1ff7, 0x07d3, 0x03d8, 0x03e1, 0x07d4, 0x07d9,
394  0x0fd3, 0x0fde, 0x1fdd, 0x1fd9, 0x1fe2, 0x1fea, 0x1ff1, 0x1ff6,
395  0x07d2, 0x03d4, 0x03da, 0x07c7, 0x07d7, 0x07e2, 0x0fce, 0x0fdb,
396  0x1fd8, 0x1fee, 0x3ff0, 0x1ff4, 0x3ff2, 0x07e1, 0x03df, 0x07c9,
397  0x07d6, 0x0fca, 0x0fd0, 0x0fe5, 0x0fe6, 0x1feb, 0x1fef, 0x3ff3,
398  0x3ff4, 0x3ff5, 0x0fe0, 0x07ce, 0x07d5, 0x0fc6, 0x0fd1, 0x0fe1,
399  0x1fe0, 0x1fe8, 0x1ff0, 0x3ff1, 0x3ff8, 0x3ff6, 0x7ffc, 0x0fe8,
400  0x07df, 0x0fc9, 0x0fd7, 0x0fdc, 0x1fdc, 0x1fdf, 0x1fed, 0x1ff5,
401  0x3ff9, 0x3ffb, 0x7ffd, 0x7ffe, 0x1fe7, 0x0fcc, 0x0fd6, 0x0fdf,
402  0x1fde, 0x1fda, 0x1fe5, 0x1ff2, 0x3ffa, 0x3ff7, 0x3ffc, 0x3ffd,
403  0x7fff,
404 };
405 
406 static const uint8_t bits9[169] = {
407  1, 3, 6, 8, 9, 10, 10, 11, 11, 12, 12, 13, 13, 3, 4, 6,
408  7, 8, 8, 9, 10, 10, 10, 11, 12, 12, 6, 6, 7, 8, 8, 9,
409  10, 10, 10, 11, 12, 12, 12, 8, 7, 8, 9, 9, 10, 10, 11, 11,
410  11, 12, 12, 13, 9, 8, 9, 9, 10, 10, 11, 11, 11, 12, 12, 12,
411  13, 10, 9, 9, 10, 11, 11, 11, 12, 11, 12, 12, 13, 13, 11, 9,
412  10, 11, 11, 11, 12, 12, 12, 12, 13, 13, 13, 11, 10, 10, 11, 11,
413  12, 12, 13, 13, 13, 13, 13, 13, 11, 10, 10, 11, 11, 11, 12, 12,
414  13, 13, 14, 13, 14, 11, 10, 11, 11, 12, 12, 12, 12, 13, 13, 14,
415  14, 14, 12, 11, 11, 12, 12, 12, 13, 13, 13, 14, 14, 14, 15, 12,
416  11, 12, 12, 12, 13, 13, 13, 13, 14, 14, 15, 15, 13, 12, 12, 12,
417  13, 13, 13, 13, 14, 14, 14, 14, 15,
418 };
419 
420 static const uint16_t codes10[169] = {
421  0x022, 0x008, 0x01d, 0x026, 0x05f, 0x0d3, 0x1cf, 0x3d0,
422  0x3d7, 0x3ed, 0x7f0, 0x7f6, 0xffd, 0x007, 0x000, 0x001,
423  0x009, 0x020, 0x054, 0x060, 0x0d5, 0x0dc, 0x1d4, 0x3cd,
424  0x3de, 0x7e7, 0x01c, 0x002, 0x006, 0x00c, 0x01e, 0x028,
425  0x05b, 0x0cd, 0x0d9, 0x1ce, 0x1dc, 0x3d9, 0x3f1, 0x025,
426  0x00b, 0x00a, 0x00d, 0x024, 0x057, 0x061, 0x0cc, 0x0dd,
427  0x1cc, 0x1de, 0x3d3, 0x3e7, 0x05d, 0x021, 0x01f, 0x023,
428  0x027, 0x059, 0x064, 0x0d8, 0x0df, 0x1d2, 0x1e2, 0x3dd,
429  0x3ee, 0x0d1, 0x055, 0x029, 0x056, 0x058, 0x062, 0x0ce,
430  0x0e0, 0x0e2, 0x1da, 0x3d4, 0x3e3, 0x7eb, 0x1c9, 0x05e,
431  0x05a, 0x05c, 0x063, 0x0ca, 0x0da, 0x1c7, 0x1ca, 0x1e0,
432  0x3db, 0x3e8, 0x7ec, 0x1e3, 0x0d2, 0x0cb, 0x0d0, 0x0d7,
433  0x0db, 0x1c6, 0x1d5, 0x1d8, 0x3ca, 0x3da, 0x7ea, 0x7f1,
434  0x1e1, 0x0d4, 0x0cf, 0x0d6, 0x0de, 0x0e1, 0x1d0, 0x1d6,
435  0x3d1, 0x3d5, 0x3f2, 0x7ee, 0x7fb, 0x3e9, 0x1cd, 0x1c8,
436  0x1cb, 0x1d1, 0x1d7, 0x1df, 0x3cf, 0x3e0, 0x3ef, 0x7e6,
437  0x7f8, 0xffa, 0x3eb, 0x1dd, 0x1d3, 0x1d9, 0x1db, 0x3d2,
438  0x3cc, 0x3dc, 0x3ea, 0x7ed, 0x7f3, 0x7f9, 0xff9, 0x7f2,
439  0x3ce, 0x1e4, 0x3cb, 0x3d8, 0x3d6, 0x3e2, 0x3e5, 0x7e8,
440  0x7f4, 0x7f5, 0x7f7, 0xffb, 0x7fa, 0x3ec, 0x3df, 0x3e1,
441  0x3e4, 0x3e6, 0x3f0, 0x7e9, 0x7ef, 0xff8, 0xffe, 0xffc,
442  0xfff,
443 };
444 
445 static const uint8_t bits10[169] = {
446  6, 5, 6, 6, 7, 8, 9, 10, 10, 10, 11, 11, 12, 5, 4, 4,
447  5, 6, 7, 7, 8, 8, 9, 10, 10, 11, 6, 4, 5, 5, 6, 6,
448  7, 8, 8, 9, 9, 10, 10, 6, 5, 5, 5, 6, 7, 7, 8, 8,
449  9, 9, 10, 10, 7, 6, 6, 6, 6, 7, 7, 8, 8, 9, 9, 10,
450  10, 8, 7, 6, 7, 7, 7, 8, 8, 8, 9, 10, 10, 11, 9, 7,
451  7, 7, 7, 8, 8, 9, 9, 9, 10, 10, 11, 9, 8, 8, 8, 8,
452  8, 9, 9, 9, 10, 10, 11, 11, 9, 8, 8, 8, 8, 8, 9, 9,
453  10, 10, 10, 11, 11, 10, 9, 9, 9, 9, 9, 9, 10, 10, 10, 11,
454  11, 12, 10, 9, 9, 9, 9, 10, 10, 10, 10, 11, 11, 11, 12, 11,
455  10, 9, 10, 10, 10, 10, 10, 11, 11, 11, 11, 12, 11, 10, 10, 10,
456  10, 10, 10, 11, 11, 12, 12, 12, 12,
457 };
458 
459 static const uint16_t codes11[289] = {
460  0x000, 0x006, 0x019, 0x03d, 0x09c, 0x0c6, 0x1a7, 0x390,
461  0x3c2, 0x3df, 0x7e6, 0x7f3, 0xffb, 0x7ec, 0xffa, 0xffe,
462  0x38e, 0x005, 0x001, 0x008, 0x014, 0x037, 0x042, 0x092,
463  0x0af, 0x191, 0x1a5, 0x1b5, 0x39e, 0x3c0, 0x3a2, 0x3cd,
464  0x7d6, 0x0ae, 0x017, 0x007, 0x009, 0x018, 0x039, 0x040,
465  0x08e, 0x0a3, 0x0b8, 0x199, 0x1ac, 0x1c1, 0x3b1, 0x396,
466  0x3be, 0x3ca, 0x09d, 0x03c, 0x015, 0x016, 0x01a, 0x03b,
467  0x044, 0x091, 0x0a5, 0x0be, 0x196, 0x1ae, 0x1b9, 0x3a1,
468  0x391, 0x3a5, 0x3d5, 0x094, 0x09a, 0x036, 0x038, 0x03a,
469  0x041, 0x08c, 0x09b, 0x0b0, 0x0c3, 0x19e, 0x1ab, 0x1bc,
470  0x39f, 0x38f, 0x3a9, 0x3cf, 0x093, 0x0bf, 0x03e, 0x03f,
471  0x043, 0x045, 0x09e, 0x0a7, 0x0b9, 0x194, 0x1a2, 0x1ba,
472  0x1c3, 0x3a6, 0x3a7, 0x3bb, 0x3d4, 0x09f, 0x1a0, 0x08f,
473  0x08d, 0x090, 0x098, 0x0a6, 0x0b6, 0x0c4, 0x19f, 0x1af,
474  0x1bf, 0x399, 0x3bf, 0x3b4, 0x3c9, 0x3e7, 0x0a8, 0x1b6,
475  0x0ab, 0x0a4, 0x0aa, 0x0b2, 0x0c2, 0x0c5, 0x198, 0x1a4,
476  0x1b8, 0x38c, 0x3a4, 0x3c4, 0x3c6, 0x3dd, 0x3e8, 0x0ad,
477  0x3af, 0x192, 0x0bd, 0x0bc, 0x18e, 0x197, 0x19a, 0x1a3,
478  0x1b1, 0x38d, 0x398, 0x3b7, 0x3d3, 0x3d1, 0x3db, 0x7dd,
479  0x0b4, 0x3de, 0x1a9, 0x19b, 0x19c, 0x1a1, 0x1aa, 0x1ad,
480  0x1b3, 0x38b, 0x3b2, 0x3b8, 0x3ce, 0x3e1, 0x3e0, 0x7d2,
481  0x7e5, 0x0b7, 0x7e3, 0x1bb, 0x1a8, 0x1a6, 0x1b0, 0x1b2,
482  0x1b7, 0x39b, 0x39a, 0x3ba, 0x3b5, 0x3d6, 0x7d7, 0x3e4,
483  0x7d8, 0x7ea, 0x0ba, 0x7e8, 0x3a0, 0x1bd, 0x1b4, 0x38a,
484  0x1c4, 0x392, 0x3aa, 0x3b0, 0x3bc, 0x3d7, 0x7d4, 0x7dc,
485  0x7db, 0x7d5, 0x7f0, 0x0c1, 0x7fb, 0x3c8, 0x3a3, 0x395,
486  0x39d, 0x3ac, 0x3ae, 0x3c5, 0x3d8, 0x3e2, 0x3e6, 0x7e4,
487  0x7e7, 0x7e0, 0x7e9, 0x7f7, 0x190, 0x7f2, 0x393, 0x1be,
488  0x1c0, 0x394, 0x397, 0x3ad, 0x3c3, 0x3c1, 0x3d2, 0x7da,
489  0x7d9, 0x7df, 0x7eb, 0x7f4, 0x7fa, 0x195, 0x7f8, 0x3bd,
490  0x39c, 0x3ab, 0x3a8, 0x3b3, 0x3b9, 0x3d0, 0x3e3, 0x3e5,
491  0x7e2, 0x7de, 0x7ed, 0x7f1, 0x7f9, 0x7fc, 0x193, 0xffd,
492  0x3dc, 0x3b6, 0x3c7, 0x3cc, 0x3cb, 0x3d9, 0x3da, 0x7d3,
493  0x7e1, 0x7ee, 0x7ef, 0x7f5, 0x7f6, 0xffc, 0xfff, 0x19d,
494  0x1c2, 0x0b5, 0x0a1, 0x096, 0x097, 0x095, 0x099, 0x0a0,
495  0x0a2, 0x0ac, 0x0a9, 0x0b1, 0x0b3, 0x0bb, 0x0c0, 0x18f,
496  0x004,
497 };
498 
499 static const uint8_t bits11[289] = {
500  4, 5, 6, 7, 8, 8, 9, 10, 10, 10, 11, 11, 12, 11, 12, 12,
501  10, 5, 4, 5, 6, 7, 7, 8, 8, 9, 9, 9, 10, 10, 10, 10,
502  11, 8, 6, 5, 5, 6, 7, 7, 8, 8, 8, 9, 9, 9, 10, 10,
503  10, 10, 8, 7, 6, 6, 6, 7, 7, 8, 8, 8, 9, 9, 9, 10,
504  10, 10, 10, 8, 8, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9,
505  10, 10, 10, 10, 8, 8, 7, 7, 7, 7, 8, 8, 8, 9, 9, 9,
506  9, 10, 10, 10, 10, 8, 9, 8, 8, 8, 8, 8, 8, 8, 9, 9,
507  9, 10, 10, 10, 10, 10, 8, 9, 8, 8, 8, 8, 8, 8, 9, 9,
508  9, 10, 10, 10, 10, 10, 10, 8, 10, 9, 8, 8, 9, 9, 9, 9,
509  9, 10, 10, 10, 10, 10, 10, 11, 8, 10, 9, 9, 9, 9, 9, 9,
510  9, 10, 10, 10, 10, 10, 10, 11, 11, 8, 11, 9, 9, 9, 9, 9,
511  9, 10, 10, 10, 10, 10, 11, 10, 11, 11, 8, 11, 10, 9, 9, 10,
512  9, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 8, 11, 10, 10, 10,
513  10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 9, 11, 10, 9,
514  9, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 9, 11, 10,
515  10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 9, 12,
516  10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 12, 12, 9,
517  9, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9,
518  5,
519 };
520 
521 const uint16_t * const ff_aac_spectral_codes[11] = {
524 };
525 
526 const uint8_t * const ff_aac_spectral_bits[11] = {
528  bits9, bits10, bits11,
529 };
530 
531 const uint16_t ff_aac_spectral_sizes[11] = {
532  81, 81, 81, 81, 81, 81, 64, 64, 169, 169, 289,
533 };
534 
535 /* NOTE:
536  * 64.0f is a special value indicating the existence of an escape code in the
537  * bitstream.
538  */
539 static const DECLARE_ALIGNED(16, float, codebook_vector0)[324] = {
540  -1.0000000, -1.0000000, -1.0000000, -1.0000000,
541  -1.0000000, -1.0000000, -1.0000000, 0.0000000,
542  -1.0000000, -1.0000000, -1.0000000, 1.0000000,
543  -1.0000000, -1.0000000, 0.0000000, -1.0000000,
544  -1.0000000, -1.0000000, 0.0000000, 0.0000000,
545  -1.0000000, -1.0000000, 0.0000000, 1.0000000,
546  -1.0000000, -1.0000000, 1.0000000, -1.0000000,
547  -1.0000000, -1.0000000, 1.0000000, 0.0000000,
548  -1.0000000, -1.0000000, 1.0000000, 1.0000000,
549  -1.0000000, 0.0000000, -1.0000000, -1.0000000,
550  -1.0000000, 0.0000000, -1.0000000, 0.0000000,
551  -1.0000000, 0.0000000, -1.0000000, 1.0000000,
552  -1.0000000, 0.0000000, 0.0000000, -1.0000000,
553  -1.0000000, 0.0000000, 0.0000000, 0.0000000,
554  -1.0000000, 0.0000000, 0.0000000, 1.0000000,
555  -1.0000000, 0.0000000, 1.0000000, -1.0000000,
556  -1.0000000, 0.0000000, 1.0000000, 0.0000000,
557  -1.0000000, 0.0000000, 1.0000000, 1.0000000,
558  -1.0000000, 1.0000000, -1.0000000, -1.0000000,
559  -1.0000000, 1.0000000, -1.0000000, 0.0000000,
560  -1.0000000, 1.0000000, -1.0000000, 1.0000000,
561  -1.0000000, 1.0000000, 0.0000000, -1.0000000,
562  -1.0000000, 1.0000000, 0.0000000, 0.0000000,
563  -1.0000000, 1.0000000, 0.0000000, 1.0000000,
564  -1.0000000, 1.0000000, 1.0000000, -1.0000000,
565  -1.0000000, 1.0000000, 1.0000000, 0.0000000,
566  -1.0000000, 1.0000000, 1.0000000, 1.0000000,
567  0.0000000, -1.0000000, -1.0000000, -1.0000000,
568  0.0000000, -1.0000000, -1.0000000, 0.0000000,
569  0.0000000, -1.0000000, -1.0000000, 1.0000000,
570  0.0000000, -1.0000000, 0.0000000, -1.0000000,
571  0.0000000, -1.0000000, 0.0000000, 0.0000000,
572  0.0000000, -1.0000000, 0.0000000, 1.0000000,
573  0.0000000, -1.0000000, 1.0000000, -1.0000000,
574  0.0000000, -1.0000000, 1.0000000, 0.0000000,
575  0.0000000, -1.0000000, 1.0000000, 1.0000000,
576  0.0000000, 0.0000000, -1.0000000, -1.0000000,
577  0.0000000, 0.0000000, -1.0000000, 0.0000000,
578  0.0000000, 0.0000000, -1.0000000, 1.0000000,
579  0.0000000, 0.0000000, 0.0000000, -1.0000000,
580  0.0000000, 0.0000000, 0.0000000, 0.0000000,
581  0.0000000, 0.0000000, 0.0000000, 1.0000000,
582  0.0000000, 0.0000000, 1.0000000, -1.0000000,
583  0.0000000, 0.0000000, 1.0000000, 0.0000000,
584  0.0000000, 0.0000000, 1.0000000, 1.0000000,
585  0.0000000, 1.0000000, -1.0000000, -1.0000000,
586  0.0000000, 1.0000000, -1.0000000, 0.0000000,
587  0.0000000, 1.0000000, -1.0000000, 1.0000000,
588  0.0000000, 1.0000000, 0.0000000, -1.0000000,
589  0.0000000, 1.0000000, 0.0000000, 0.0000000,
590  0.0000000, 1.0000000, 0.0000000, 1.0000000,
591  0.0000000, 1.0000000, 1.0000000, -1.0000000,
592  0.0000000, 1.0000000, 1.0000000, 0.0000000,
593  0.0000000, 1.0000000, 1.0000000, 1.0000000,
594  1.0000000, -1.0000000, -1.0000000, -1.0000000,
595  1.0000000, -1.0000000, -1.0000000, 0.0000000,
596  1.0000000, -1.0000000, -1.0000000, 1.0000000,
597  1.0000000, -1.0000000, 0.0000000, -1.0000000,
598  1.0000000, -1.0000000, 0.0000000, 0.0000000,
599  1.0000000, -1.0000000, 0.0000000, 1.0000000,
600  1.0000000, -1.0000000, 1.0000000, -1.0000000,
601  1.0000000, -1.0000000, 1.0000000, 0.0000000,
602  1.0000000, -1.0000000, 1.0000000, 1.0000000,
603  1.0000000, 0.0000000, -1.0000000, -1.0000000,
604  1.0000000, 0.0000000, -1.0000000, 0.0000000,
605  1.0000000, 0.0000000, -1.0000000, 1.0000000,
606  1.0000000, 0.0000000, 0.0000000, -1.0000000,
607  1.0000000, 0.0000000, 0.0000000, 0.0000000,
608  1.0000000, 0.0000000, 0.0000000, 1.0000000,
609  1.0000000, 0.0000000, 1.0000000, -1.0000000,
610  1.0000000, 0.0000000, 1.0000000, 0.0000000,
611  1.0000000, 0.0000000, 1.0000000, 1.0000000,
612  1.0000000, 1.0000000, -1.0000000, -1.0000000,
613  1.0000000, 1.0000000, -1.0000000, 0.0000000,
614  1.0000000, 1.0000000, -1.0000000, 1.0000000,
615  1.0000000, 1.0000000, 0.0000000, -1.0000000,
616  1.0000000, 1.0000000, 0.0000000, 0.0000000,
617  1.0000000, 1.0000000, 0.0000000, 1.0000000,
618  1.0000000, 1.0000000, 1.0000000, -1.0000000,
619  1.0000000, 1.0000000, 1.0000000, 0.0000000,
620  1.0000000, 1.0000000, 1.0000000, 1.0000000,
621 };
622 
623 static const DECLARE_ALIGNED(16, float, codebook_vector2)[324] = {
624  0.0000000, 0.0000000, 0.0000000, 0.0000000,
625  0.0000000, 0.0000000, 0.0000000, 1.0000000,
626  0.0000000, 0.0000000, 0.0000000, 2.5198421,
627  0.0000000, 0.0000000, 1.0000000, 0.0000000,
628  0.0000000, 0.0000000, 1.0000000, 1.0000000,
629  0.0000000, 0.0000000, 1.0000000, 2.5198421,
630  0.0000000, 0.0000000, 2.5198421, 0.0000000,
631  0.0000000, 0.0000000, 2.5198421, 1.0000000,
632  0.0000000, 0.0000000, 2.5198421, 2.5198421,
633  0.0000000, 1.0000000, 0.0000000, 0.0000000,
634  0.0000000, 1.0000000, 0.0000000, 1.0000000,
635  0.0000000, 1.0000000, 0.0000000, 2.5198421,
636  0.0000000, 1.0000000, 1.0000000, 0.0000000,
637  0.0000000, 1.0000000, 1.0000000, 1.0000000,
638  0.0000000, 1.0000000, 1.0000000, 2.5198421,
639  0.0000000, 1.0000000, 2.5198421, 0.0000000,
640  0.0000000, 1.0000000, 2.5198421, 1.0000000,
641  0.0000000, 1.0000000, 2.5198421, 2.5198421,
642  0.0000000, 2.5198421, 0.0000000, 0.0000000,
643  0.0000000, 2.5198421, 0.0000000, 1.0000000,
644  0.0000000, 2.5198421, 0.0000000, 2.5198421,
645  0.0000000, 2.5198421, 1.0000000, 0.0000000,
646  0.0000000, 2.5198421, 1.0000000, 1.0000000,
647  0.0000000, 2.5198421, 1.0000000, 2.5198421,
648  0.0000000, 2.5198421, 2.5198421, 0.0000000,
649  0.0000000, 2.5198421, 2.5198421, 1.0000000,
650  0.0000000, 2.5198421, 2.5198421, 2.5198421,
651  1.0000000, 0.0000000, 0.0000000, 0.0000000,
652  1.0000000, 0.0000000, 0.0000000, 1.0000000,
653  1.0000000, 0.0000000, 0.0000000, 2.5198421,
654  1.0000000, 0.0000000, 1.0000000, 0.0000000,
655  1.0000000, 0.0000000, 1.0000000, 1.0000000,
656  1.0000000, 0.0000000, 1.0000000, 2.5198421,
657  1.0000000, 0.0000000, 2.5198421, 0.0000000,
658  1.0000000, 0.0000000, 2.5198421, 1.0000000,
659  1.0000000, 0.0000000, 2.5198421, 2.5198421,
660  1.0000000, 1.0000000, 0.0000000, 0.0000000,
661  1.0000000, 1.0000000, 0.0000000, 1.0000000,
662  1.0000000, 1.0000000, 0.0000000, 2.5198421,
663  1.0000000, 1.0000000, 1.0000000, 0.0000000,
664  1.0000000, 1.0000000, 1.0000000, 1.0000000,
665  1.0000000, 1.0000000, 1.0000000, 2.5198421,
666  1.0000000, 1.0000000, 2.5198421, 0.0000000,
667  1.0000000, 1.0000000, 2.5198421, 1.0000000,
668  1.0000000, 1.0000000, 2.5198421, 2.5198421,
669  1.0000000, 2.5198421, 0.0000000, 0.0000000,
670  1.0000000, 2.5198421, 0.0000000, 1.0000000,
671  1.0000000, 2.5198421, 0.0000000, 2.5198421,
672  1.0000000, 2.5198421, 1.0000000, 0.0000000,
673  1.0000000, 2.5198421, 1.0000000, 1.0000000,
674  1.0000000, 2.5198421, 1.0000000, 2.5198421,
675  1.0000000, 2.5198421, 2.5198421, 0.0000000,
676  1.0000000, 2.5198421, 2.5198421, 1.0000000,
677  1.0000000, 2.5198421, 2.5198421, 2.5198421,
678  2.5198421, 0.0000000, 0.0000000, 0.0000000,
679  2.5198421, 0.0000000, 0.0000000, 1.0000000,
680  2.5198421, 0.0000000, 0.0000000, 2.5198421,
681  2.5198421, 0.0000000, 1.0000000, 0.0000000,
682  2.5198421, 0.0000000, 1.0000000, 1.0000000,
683  2.5198421, 0.0000000, 1.0000000, 2.5198421,
684  2.5198421, 0.0000000, 2.5198421, 0.0000000,
685  2.5198421, 0.0000000, 2.5198421, 1.0000000,
686  2.5198421, 0.0000000, 2.5198421, 2.5198421,
687  2.5198421, 1.0000000, 0.0000000, 0.0000000,
688  2.5198421, 1.0000000, 0.0000000, 1.0000000,
689  2.5198421, 1.0000000, 0.0000000, 2.5198421,
690  2.5198421, 1.0000000, 1.0000000, 0.0000000,
691  2.5198421, 1.0000000, 1.0000000, 1.0000000,
692  2.5198421, 1.0000000, 1.0000000, 2.5198421,
693  2.5198421, 1.0000000, 2.5198421, 0.0000000,
694  2.5198421, 1.0000000, 2.5198421, 1.0000000,
695  2.5198421, 1.0000000, 2.5198421, 2.5198421,
696  2.5198421, 2.5198421, 0.0000000, 0.0000000,
697  2.5198421, 2.5198421, 0.0000000, 1.0000000,
698  2.5198421, 2.5198421, 0.0000000, 2.5198421,
699  2.5198421, 2.5198421, 1.0000000, 0.0000000,
700  2.5198421, 2.5198421, 1.0000000, 1.0000000,
701  2.5198421, 2.5198421, 1.0000000, 2.5198421,
702  2.5198421, 2.5198421, 2.5198421, 0.0000000,
703  2.5198421, 2.5198421, 2.5198421, 1.0000000,
704  2.5198421, 2.5198421, 2.5198421, 2.5198421,
705 };
706 
707 static const DECLARE_ALIGNED(16, float, codebook_vector4)[162] = {
708  -6.3496042, -6.3496042, -6.3496042, -4.3267487,
709  -6.3496042, -2.5198421, -6.3496042, -1.0000000,
710  -6.3496042, 0.0000000, -6.3496042, 1.0000000,
711  -6.3496042, 2.5198421, -6.3496042, 4.3267487,
712  -6.3496042, 6.3496042, -4.3267487, -6.3496042,
713  -4.3267487, -4.3267487, -4.3267487, -2.5198421,
714  -4.3267487, -1.0000000, -4.3267487, 0.0000000,
715  -4.3267487, 1.0000000, -4.3267487, 2.5198421,
716  -4.3267487, 4.3267487, -4.3267487, 6.3496042,
717  -2.5198421, -6.3496042, -2.5198421, -4.3267487,
718  -2.5198421, -2.5198421, -2.5198421, -1.0000000,
719  -2.5198421, 0.0000000, -2.5198421, 1.0000000,
720  -2.5198421, 2.5198421, -2.5198421, 4.3267487,
721  -2.5198421, 6.3496042, -1.0000000, -6.3496042,
722  -1.0000000, -4.3267487, -1.0000000, -2.5198421,
723  -1.0000000, -1.0000000, -1.0000000, 0.0000000,
724  -1.0000000, 1.0000000, -1.0000000, 2.5198421,
725  -1.0000000, 4.3267487, -1.0000000, 6.3496042,
726  0.0000000, -6.3496042, 0.0000000, -4.3267487,
727  0.0000000, -2.5198421, 0.0000000, -1.0000000,
728  0.0000000, 0.0000000, 0.0000000, 1.0000000,
729  0.0000000, 2.5198421, 0.0000000, 4.3267487,
730  0.0000000, 6.3496042, 1.0000000, -6.3496042,
731  1.0000000, -4.3267487, 1.0000000, -2.5198421,
732  1.0000000, -1.0000000, 1.0000000, 0.0000000,
733  1.0000000, 1.0000000, 1.0000000, 2.5198421,
734  1.0000000, 4.3267487, 1.0000000, 6.3496042,
735  2.5198421, -6.3496042, 2.5198421, -4.3267487,
736  2.5198421, -2.5198421, 2.5198421, -1.0000000,
737  2.5198421, 0.0000000, 2.5198421, 1.0000000,
738  2.5198421, 2.5198421, 2.5198421, 4.3267487,
739  2.5198421, 6.3496042, 4.3267487, -6.3496042,
740  4.3267487, -4.3267487, 4.3267487, -2.5198421,
741  4.3267487, -1.0000000, 4.3267487, 0.0000000,
742  4.3267487, 1.0000000, 4.3267487, 2.5198421,
743  4.3267487, 4.3267487, 4.3267487, 6.3496042,
744  6.3496042, -6.3496042, 6.3496042, -4.3267487,
745  6.3496042, -2.5198421, 6.3496042, -1.0000000,
746  6.3496042, 0.0000000, 6.3496042, 1.0000000,
747  6.3496042, 2.5198421, 6.3496042, 4.3267487,
748  6.3496042, 6.3496042,
749 };
750 
751 static const DECLARE_ALIGNED(16, float, codebook_vector6)[128] = {
752  0.0000000, 0.0000000, 0.0000000, 1.0000000,
753  0.0000000, 2.5198421, 0.0000000, 4.3267487,
754  0.0000000, 6.3496042, 0.0000000, 8.5498797,
755  0.0000000, 10.9027236, 0.0000000, 13.3905183,
756  1.0000000, 0.0000000, 1.0000000, 1.0000000,
757  1.0000000, 2.5198421, 1.0000000, 4.3267487,
758  1.0000000, 6.3496042, 1.0000000, 8.5498797,
759  1.0000000, 10.9027236, 1.0000000, 13.3905183,
760  2.5198421, 0.0000000, 2.5198421, 1.0000000,
761  2.5198421, 2.5198421, 2.5198421, 4.3267487,
762  2.5198421, 6.3496042, 2.5198421, 8.5498797,
763  2.5198421, 10.9027236, 2.5198421, 13.3905183,
764  4.3267487, 0.0000000, 4.3267487, 1.0000000,
765  4.3267487, 2.5198421, 4.3267487, 4.3267487,
766  4.3267487, 6.3496042, 4.3267487, 8.5498797,
767  4.3267487, 10.9027236, 4.3267487, 13.3905183,
768  6.3496042, 0.0000000, 6.3496042, 1.0000000,
769  6.3496042, 2.5198421, 6.3496042, 4.3267487,
770  6.3496042, 6.3496042, 6.3496042, 8.5498797,
771  6.3496042, 10.9027236, 6.3496042, 13.3905183,
772  8.5498797, 0.0000000, 8.5498797, 1.0000000,
773  8.5498797, 2.5198421, 8.5498797, 4.3267487,
774  8.5498797, 6.3496042, 8.5498797, 8.5498797,
775  8.5498797, 10.9027236, 8.5498797, 13.3905183,
776  10.9027236, 0.0000000, 10.9027236, 1.0000000,
777  10.9027236, 2.5198421, 10.9027236, 4.3267487,
778  10.9027236, 6.3496042, 10.9027236, 8.5498797,
779  10.9027236, 10.9027236, 10.9027236, 13.3905183,
780  13.3905183, 0.0000000, 13.3905183, 1.0000000,
781  13.3905183, 2.5198421, 13.3905183, 4.3267487,
782  13.3905183, 6.3496042, 13.3905183, 8.5498797,
783  13.3905183, 10.9027236, 13.3905183, 13.3905183,
784 };
785 
786 static const DECLARE_ALIGNED(16, float, codebook_vector8)[338] = {
787  0.0000000, 0.0000000, 0.0000000, 1.0000000,
788  0.0000000, 2.5198421, 0.0000000, 4.3267487,
789  0.0000000, 6.3496042, 0.0000000, 8.5498797,
790  0.0000000, 10.9027236, 0.0000000, 13.3905183,
791  0.0000000, 16.0000000, 0.0000000, 18.7207544,
792  0.0000000, 21.5443469, 0.0000000, 24.4637810,
793  0.0000000, 27.4731418, 1.0000000, 0.0000000,
794  1.0000000, 1.0000000, 1.0000000, 2.5198421,
795  1.0000000, 4.3267487, 1.0000000, 6.3496042,
796  1.0000000, 8.5498797, 1.0000000, 10.9027236,
797  1.0000000, 13.3905183, 1.0000000, 16.0000000,
798  1.0000000, 18.7207544, 1.0000000, 21.5443469,
799  1.0000000, 24.4637810, 1.0000000, 27.4731418,
800  2.5198421, 0.0000000, 2.5198421, 1.0000000,
801  2.5198421, 2.5198421, 2.5198421, 4.3267487,
802  2.5198421, 6.3496042, 2.5198421, 8.5498797,
803  2.5198421, 10.9027236, 2.5198421, 13.3905183,
804  2.5198421, 16.0000000, 2.5198421, 18.7207544,
805  2.5198421, 21.5443469, 2.5198421, 24.4637810,
806  2.5198421, 27.4731418, 4.3267487, 0.0000000,
807  4.3267487, 1.0000000, 4.3267487, 2.5198421,
808  4.3267487, 4.3267487, 4.3267487, 6.3496042,
809  4.3267487, 8.5498797, 4.3267487, 10.9027236,
810  4.3267487, 13.3905183, 4.3267487, 16.0000000,
811  4.3267487, 18.7207544, 4.3267487, 21.5443469,
812  4.3267487, 24.4637810, 4.3267487, 27.4731418,
813  6.3496042, 0.0000000, 6.3496042, 1.0000000,
814  6.3496042, 2.5198421, 6.3496042, 4.3267487,
815  6.3496042, 6.3496042, 6.3496042, 8.5498797,
816  6.3496042, 10.9027236, 6.3496042, 13.3905183,
817  6.3496042, 16.0000000, 6.3496042, 18.7207544,
818  6.3496042, 21.5443469, 6.3496042, 24.4637810,
819  6.3496042, 27.4731418, 8.5498797, 0.0000000,
820  8.5498797, 1.0000000, 8.5498797, 2.5198421,
821  8.5498797, 4.3267487, 8.5498797, 6.3496042,
822  8.5498797, 8.5498797, 8.5498797, 10.9027236,
823  8.5498797, 13.3905183, 8.5498797, 16.0000000,
824  8.5498797, 18.7207544, 8.5498797, 21.5443469,
825  8.5498797, 24.4637810, 8.5498797, 27.4731418,
826  10.9027236, 0.0000000, 10.9027236, 1.0000000,
827  10.9027236, 2.5198421, 10.9027236, 4.3267487,
828  10.9027236, 6.3496042, 10.9027236, 8.5498797,
829  10.9027236, 10.9027236, 10.9027236, 13.3905183,
830  10.9027236, 16.0000000, 10.9027236, 18.7207544,
831  10.9027236, 21.5443469, 10.9027236, 24.4637810,
832  10.9027236, 27.4731418, 13.3905183, 0.0000000,
833  13.3905183, 1.0000000, 13.3905183, 2.5198421,
834  13.3905183, 4.3267487, 13.3905183, 6.3496042,
835  13.3905183, 8.5498797, 13.3905183, 10.9027236,
836  13.3905183, 13.3905183, 13.3905183, 16.0000000,
837  13.3905183, 18.7207544, 13.3905183, 21.5443469,
838  13.3905183, 24.4637810, 13.3905183, 27.4731418,
839  16.0000000, 0.0000000, 16.0000000, 1.0000000,
840  16.0000000, 2.5198421, 16.0000000, 4.3267487,
841  16.0000000, 6.3496042, 16.0000000, 8.5498797,
842  16.0000000, 10.9027236, 16.0000000, 13.3905183,
843  16.0000000, 16.0000000, 16.0000000, 18.7207544,
844  16.0000000, 21.5443469, 16.0000000, 24.4637810,
845  16.0000000, 27.4731418, 18.7207544, 0.0000000,
846  18.7207544, 1.0000000, 18.7207544, 2.5198421,
847  18.7207544, 4.3267487, 18.7207544, 6.3496042,
848  18.7207544, 8.5498797, 18.7207544, 10.9027236,
849  18.7207544, 13.3905183, 18.7207544, 16.0000000,
850  18.7207544, 18.7207544, 18.7207544, 21.5443469,
851  18.7207544, 24.4637810, 18.7207544, 27.4731418,
852  21.5443469, 0.0000000, 21.5443469, 1.0000000,
853  21.5443469, 2.5198421, 21.5443469, 4.3267487,
854  21.5443469, 6.3496042, 21.5443469, 8.5498797,
855  21.5443469, 10.9027236, 21.5443469, 13.3905183,
856  21.5443469, 16.0000000, 21.5443469, 18.7207544,
857  21.5443469, 21.5443469, 21.5443469, 24.4637810,
858  21.5443469, 27.4731418, 24.4637810, 0.0000000,
859  24.4637810, 1.0000000, 24.4637810, 2.5198421,
860  24.4637810, 4.3267487, 24.4637810, 6.3496042,
861  24.4637810, 8.5498797, 24.4637810, 10.9027236,
862  24.4637810, 13.3905183, 24.4637810, 16.0000000,
863  24.4637810, 18.7207544, 24.4637810, 21.5443469,
864  24.4637810, 24.4637810, 24.4637810, 27.4731418,
865  27.4731418, 0.0000000, 27.4731418, 1.0000000,
866  27.4731418, 2.5198421, 27.4731418, 4.3267487,
867  27.4731418, 6.3496042, 27.4731418, 8.5498797,
868  27.4731418, 10.9027236, 27.4731418, 13.3905183,
869  27.4731418, 16.0000000, 27.4731418, 18.7207544,
870  27.4731418, 21.5443469, 27.4731418, 24.4637810,
871  27.4731418, 27.4731418,
872 };
873 
874 static const DECLARE_ALIGNED(16, float, codebook_vector10)[578] = {
875  0.0000000, 0.0000000, 0.0000000, 1.0000000,
876  0.0000000, 2.5198421, 0.0000000, 4.3267487,
877  0.0000000, 6.3496042, 0.0000000, 8.5498797,
878  0.0000000, 10.9027236, 0.0000000, 13.3905183,
879  0.0000000, 16.0000000, 0.0000000, 18.7207544,
880  0.0000000, 21.5443469, 0.0000000, 24.4637810,
881  0.0000000, 27.4731418, 0.0000000, 30.5673509,
882  0.0000000, 33.7419917, 0.0000000, 36.9931811,
883  0.0000000, 64.0f, 1.0000000, 0.0000000,
884  1.0000000, 1.0000000, 1.0000000, 2.5198421,
885  1.0000000, 4.3267487, 1.0000000, 6.3496042,
886  1.0000000, 8.5498797, 1.0000000, 10.9027236,
887  1.0000000, 13.3905183, 1.0000000, 16.0000000,
888  1.0000000, 18.7207544, 1.0000000, 21.5443469,
889  1.0000000, 24.4637810, 1.0000000, 27.4731418,
890  1.0000000, 30.5673509, 1.0000000, 33.7419917,
891  1.0000000, 36.9931811, 1.0000000, 64.0f,
892  2.5198421, 0.0000000, 2.5198421, 1.0000000,
893  2.5198421, 2.5198421, 2.5198421, 4.3267487,
894  2.5198421, 6.3496042, 2.5198421, 8.5498797,
895  2.5198421, 10.9027236, 2.5198421, 13.3905183,
896  2.5198421, 16.0000000, 2.5198421, 18.7207544,
897  2.5198421, 21.5443469, 2.5198421, 24.4637810,
898  2.5198421, 27.4731418, 2.5198421, 30.5673509,
899  2.5198421, 33.7419917, 2.5198421, 36.9931811,
900  2.5198421, 64.0f, 4.3267487, 0.0000000,
901  4.3267487, 1.0000000, 4.3267487, 2.5198421,
902  4.3267487, 4.3267487, 4.3267487, 6.3496042,
903  4.3267487, 8.5498797, 4.3267487, 10.9027236,
904  4.3267487, 13.3905183, 4.3267487, 16.0000000,
905  4.3267487, 18.7207544, 4.3267487, 21.5443469,
906  4.3267487, 24.4637810, 4.3267487, 27.4731418,
907  4.3267487, 30.5673509, 4.3267487, 33.7419917,
908  4.3267487, 36.9931811, 4.3267487, 64.0f,
909  6.3496042, 0.0000000, 6.3496042, 1.0000000,
910  6.3496042, 2.5198421, 6.3496042, 4.3267487,
911  6.3496042, 6.3496042, 6.3496042, 8.5498797,
912  6.3496042, 10.9027236, 6.3496042, 13.3905183,
913  6.3496042, 16.0000000, 6.3496042, 18.7207544,
914  6.3496042, 21.5443469, 6.3496042, 24.4637810,
915  6.3496042, 27.4731418, 6.3496042, 30.5673509,
916  6.3496042, 33.7419917, 6.3496042, 36.9931811,
917  6.3496042, 64.0f, 8.5498797, 0.0000000,
918  8.5498797, 1.0000000, 8.5498797, 2.5198421,
919  8.5498797, 4.3267487, 8.5498797, 6.3496042,
920  8.5498797, 8.5498797, 8.5498797, 10.9027236,
921  8.5498797, 13.3905183, 8.5498797, 16.0000000,
922  8.5498797, 18.7207544, 8.5498797, 21.5443469,
923  8.5498797, 24.4637810, 8.5498797, 27.4731418,
924  8.5498797, 30.5673509, 8.5498797, 33.7419917,
925  8.5498797, 36.9931811, 8.5498797, 64.0f,
926  10.9027236, 0.0000000, 10.9027236, 1.0000000,
927  10.9027236, 2.5198421, 10.9027236, 4.3267487,
928  10.9027236, 6.3496042, 10.9027236, 8.5498797,
929  10.9027236, 10.9027236, 10.9027236, 13.3905183,
930  10.9027236, 16.0000000, 10.9027236, 18.7207544,
931  10.9027236, 21.5443469, 10.9027236, 24.4637810,
932  10.9027236, 27.4731418, 10.9027236, 30.5673509,
933  10.9027236, 33.7419917, 10.9027236, 36.9931811,
934  10.9027236, 64.0f, 13.3905183, 0.0000000,
935  13.3905183, 1.0000000, 13.3905183, 2.5198421,
936  13.3905183, 4.3267487, 13.3905183, 6.3496042,
937  13.3905183, 8.5498797, 13.3905183, 10.9027236,
938  13.3905183, 13.3905183, 13.3905183, 16.0000000,
939  13.3905183, 18.7207544, 13.3905183, 21.5443469,
940  13.3905183, 24.4637810, 13.3905183, 27.4731418,
941  13.3905183, 30.5673509, 13.3905183, 33.7419917,
942  13.3905183, 36.9931811, 13.3905183, 64.0f,
943  16.0000000, 0.0000000, 16.0000000, 1.0000000,
944  16.0000000, 2.5198421, 16.0000000, 4.3267487,
945  16.0000000, 6.3496042, 16.0000000, 8.5498797,
946  16.0000000, 10.9027236, 16.0000000, 13.3905183,
947  16.0000000, 16.0000000, 16.0000000, 18.7207544,
948  16.0000000, 21.5443469, 16.0000000, 24.4637810,
949  16.0000000, 27.4731418, 16.0000000, 30.5673509,
950  16.0000000, 33.7419917, 16.0000000, 36.9931811,
951  16.0000000, 64.0f, 18.7207544, 0.0000000,
952  18.7207544, 1.0000000, 18.7207544, 2.5198421,
953  18.7207544, 4.3267487, 18.7207544, 6.3496042,
954  18.7207544, 8.5498797, 18.7207544, 10.9027236,
955  18.7207544, 13.3905183, 18.7207544, 16.0000000,
956  18.7207544, 18.7207544, 18.7207544, 21.5443469,
957  18.7207544, 24.4637810, 18.7207544, 27.4731418,
958  18.7207544, 30.5673509, 18.7207544, 33.7419917,
959  18.7207544, 36.9931811, 18.7207544, 64.0f,
960  21.5443469, 0.0000000, 21.5443469, 1.0000000,
961  21.5443469, 2.5198421, 21.5443469, 4.3267487,
962  21.5443469, 6.3496042, 21.5443469, 8.5498797,
963  21.5443469, 10.9027236, 21.5443469, 13.3905183,
964  21.5443469, 16.0000000, 21.5443469, 18.7207544,
965  21.5443469, 21.5443469, 21.5443469, 24.4637810,
966  21.5443469, 27.4731418, 21.5443469, 30.5673509,
967  21.5443469, 33.7419917, 21.5443469, 36.9931811,
968  21.5443469, 64.0f, 24.4637810, 0.0000000,
969  24.4637810, 1.0000000, 24.4637810, 2.5198421,
970  24.4637810, 4.3267487, 24.4637810, 6.3496042,
971  24.4637810, 8.5498797, 24.4637810, 10.9027236,
972  24.4637810, 13.3905183, 24.4637810, 16.0000000,
973  24.4637810, 18.7207544, 24.4637810, 21.5443469,
974  24.4637810, 24.4637810, 24.4637810, 27.4731418,
975  24.4637810, 30.5673509, 24.4637810, 33.7419917,
976  24.4637810, 36.9931811, 24.4637810, 64.0f,
977  27.4731418, 0.0000000, 27.4731418, 1.0000000,
978  27.4731418, 2.5198421, 27.4731418, 4.3267487,
979  27.4731418, 6.3496042, 27.4731418, 8.5498797,
980  27.4731418, 10.9027236, 27.4731418, 13.3905183,
981  27.4731418, 16.0000000, 27.4731418, 18.7207544,
982  27.4731418, 21.5443469, 27.4731418, 24.4637810,
983  27.4731418, 27.4731418, 27.4731418, 30.5673509,
984  27.4731418, 33.7419917, 27.4731418, 36.9931811,
985  27.4731418, 64.0f, 30.5673509, 0.0000000,
986  30.5673509, 1.0000000, 30.5673509, 2.5198421,
987  30.5673509, 4.3267487, 30.5673509, 6.3496042,
988  30.5673509, 8.5498797, 30.5673509, 10.9027236,
989  30.5673509, 13.3905183, 30.5673509, 16.0000000,
990  30.5673509, 18.7207544, 30.5673509, 21.5443469,
991  30.5673509, 24.4637810, 30.5673509, 27.4731418,
992  30.5673509, 30.5673509, 30.5673509, 33.7419917,
993  30.5673509, 36.9931811, 30.5673509, 64.0f,
994  33.7419917, 0.0000000, 33.7419917, 1.0000000,
995  33.7419917, 2.5198421, 33.7419917, 4.3267487,
996  33.7419917, 6.3496042, 33.7419917, 8.5498797,
997  33.7419917, 10.9027236, 33.7419917, 13.3905183,
998  33.7419917, 16.0000000, 33.7419917, 18.7207544,
999  33.7419917, 21.5443469, 33.7419917, 24.4637810,
1000  33.7419917, 27.4731418, 33.7419917, 30.5673509,
1001  33.7419917, 33.7419917, 33.7419917, 36.9931811,
1002  33.7419917, 64.0f, 36.9931811, 0.0000000,
1003  36.9931811, 1.0000000, 36.9931811, 2.5198421,
1004  36.9931811, 4.3267487, 36.9931811, 6.3496042,
1005  36.9931811, 8.5498797, 36.9931811, 10.9027236,
1006  36.9931811, 13.3905183, 36.9931811, 16.0000000,
1007  36.9931811, 18.7207544, 36.9931811, 21.5443469,
1008  36.9931811, 24.4637810, 36.9931811, 27.4731418,
1009  36.9931811, 30.5673509, 36.9931811, 33.7419917,
1010  36.9931811, 36.9931811, 36.9931811, 64.0f,
1011  64.0f, 0.0000000, 64.0f, 1.0000000,
1012  64.0f, 2.5198421, 64.0f, 4.3267487,
1013  64.0f, 6.3496042, 64.0f, 8.5498797,
1014  64.0f, 10.9027236, 64.0f, 13.3905183,
1015  64.0f, 16.0000000, 64.0f, 18.7207544,
1016  64.0f, 21.5443469, 64.0f, 24.4637810,
1017  64.0f, 27.4731418, 64.0f, 30.5673509,
1018  64.0f, 33.7419917, 64.0f, 36.9931811,
1019  64.0f, 64.0f,
1020 };
1021 
1022 const float * const ff_aac_codebook_vectors[] = {
1027 };
1028 
1029 static const float codebook_vector0_vals[] = {
1030  -1.0000000, 0.0000000, 1.0000000
1031 };
1032 
1033 /*
1034  * bits 0:1, 2:3, 4:5, 6:7 index into _vals array
1035  * 8:11 number of non-zero values
1036  * 12:15 bit mask of non-zero values
1037  */
1038 static const uint16_t codebook_vector02_idx[] = {
1039  0x0000, 0x8140, 0x8180, 0x4110, 0xc250, 0xc290, 0x4120, 0xc260, 0xc2a0,
1040  0x2104, 0xa244, 0xa284, 0x6214, 0xe354, 0xe394, 0x6224, 0xe364, 0xe3a4,
1041  0x2108, 0xa248, 0xa288, 0x6218, 0xe358, 0xe398, 0x6228, 0xe368, 0xe3a8,
1042  0x1101, 0x9241, 0x9281, 0x5211, 0xd351, 0xd391, 0x5221, 0xd361, 0xd3a1,
1043  0x3205, 0xb345, 0xb385, 0x7315, 0xf455, 0xf495, 0x7325, 0xf465, 0xf4a5,
1044  0x3209, 0xb349, 0xb389, 0x7319, 0xf459, 0xf499, 0x7329, 0xf469, 0xf4a9,
1045  0x1102, 0x9242, 0x9282, 0x5212, 0xd352, 0xd392, 0x5222, 0xd362, 0xd3a2,
1046  0x3206, 0xb346, 0xb386, 0x7316, 0xf456, 0xf496, 0x7326, 0xf466, 0xf4a6,
1047  0x320a, 0xb34a, 0xb38a, 0x731a, 0xf45a, 0xf49a, 0x732a, 0xf46a, 0xf4aa,
1048 };
1049 
1050 static const float codebook_vector4_vals[] = {
1051  -6.3496042, -4.3267487,
1052  -2.5198421, -1.0000000,
1053  0.0000000, 1.0000000,
1054  2.5198421, 4.3267487,
1055  6.3496042,
1056 };
1057 
1058 /*
1059  * bits 0:3, 4:7 index into _vals array
1060  */
1061 static const uint16_t codebook_vector4_idx[] = {
1062  0x0000, 0x0010, 0x0020, 0x0030, 0x0040, 0x0050, 0x0060, 0x0070, 0x0080,
1063  0x0001, 0x0011, 0x0021, 0x0031, 0x0041, 0x0051, 0x0061, 0x0071, 0x0081,
1064  0x0002, 0x0012, 0x0022, 0x0032, 0x0042, 0x0052, 0x0062, 0x0072, 0x0082,
1065  0x0003, 0x0013, 0x0023, 0x0033, 0x0043, 0x0053, 0x0063, 0x0073, 0x0083,
1066  0x0004, 0x0014, 0x0024, 0x0034, 0x0044, 0x0054, 0x0064, 0x0074, 0x0084,
1067  0x0005, 0x0015, 0x0025, 0x0035, 0x0045, 0x0055, 0x0065, 0x0075, 0x0085,
1068  0x0006, 0x0016, 0x0026, 0x0036, 0x0046, 0x0056, 0x0066, 0x0076, 0x0086,
1069  0x0007, 0x0017, 0x0027, 0x0037, 0x0047, 0x0057, 0x0067, 0x0077, 0x0087,
1070  0x0008, 0x0018, 0x0028, 0x0038, 0x0048, 0x0058, 0x0068, 0x0078, 0x0088,
1071 };
1072 
1073 /*
1074  * bits 0:3, 4:7 index into _vals array
1075  * 8:11 number of non-zero values
1076  * 12:15 1: only second value non-zero
1077  * 0: other cases
1078  */
1079 static const uint16_t codebook_vector6_idx[] = {
1080  0x0000, 0x0110, 0x0120, 0x0130, 0x0140, 0x0150, 0x0160, 0x0170,
1081  0x1101, 0x0211, 0x0221, 0x0231, 0x0241, 0x0251, 0x0261, 0x0271,
1082  0x1102, 0x0212, 0x0222, 0x0232, 0x0242, 0x0252, 0x0262, 0x0272,
1083  0x1103, 0x0213, 0x0223, 0x0233, 0x0243, 0x0253, 0x0263, 0x0273,
1084  0x1104, 0x0214, 0x0224, 0x0234, 0x0244, 0x0254, 0x0264, 0x0274,
1085  0x1105, 0x0215, 0x0225, 0x0235, 0x0245, 0x0255, 0x0265, 0x0275,
1086  0x1106, 0x0216, 0x0226, 0x0236, 0x0246, 0x0256, 0x0266, 0x0276,
1087  0x1107, 0x0217, 0x0227, 0x0237, 0x0247, 0x0257, 0x0267, 0x0277,
1088 };
1089 
1090 /*
1091  * bits 0:3, 4:7 index into _vals array
1092  * 8:11 number of non-zero values
1093  * 12:15 1: only second value non-zero
1094  * 0: other cases
1095  */
1096 static const uint16_t codebook_vector8_idx[] = {
1097  0x0000, 0x0110, 0x0120, 0x0130, 0x0140, 0x0150, 0x0160,
1098  0x0170, 0x0180, 0x0190, 0x01a0, 0x01b0, 0x01c0,
1099  0x1101, 0x0211, 0x0221, 0x0231, 0x0241, 0x0251, 0x0261,
1100  0x0271, 0x0281, 0x0291, 0x02a1, 0x02b1, 0x02c1,
1101  0x1102, 0x0212, 0x0222, 0x0232, 0x0242, 0x0252, 0x0262,
1102  0x0272, 0x0282, 0x0292, 0x02a2, 0x02b2, 0x02c2,
1103  0x1103, 0x0213, 0x0223, 0x0233, 0x0243, 0x0253, 0x0263,
1104  0x0273, 0x0283, 0x0293, 0x02a3, 0x02b3, 0x02c3,
1105  0x1104, 0x0214, 0x0224, 0x0234, 0x0244, 0x0254, 0x0264,
1106  0x0274, 0x0284, 0x0294, 0x02a4, 0x02b4, 0x02c4,
1107  0x1105, 0x0215, 0x0225, 0x0235, 0x0245, 0x0255, 0x0265,
1108  0x0275, 0x0285, 0x0295, 0x02a5, 0x02b5, 0x02c5,
1109  0x1106, 0x0216, 0x0226, 0x0236, 0x0246, 0x0256, 0x0266,
1110  0x0276, 0x0286, 0x0296, 0x02a6, 0x02b6, 0x02c6,
1111  0x1107, 0x0217, 0x0227, 0x0237, 0x0247, 0x0257, 0x0267,
1112  0x0277, 0x0287, 0x0297, 0x02a7, 0x02b7, 0x02c7,
1113  0x1108, 0x0218, 0x0228, 0x0238, 0x0248, 0x0258, 0x0268,
1114  0x0278, 0x0288, 0x0298, 0x02a8, 0x02b8, 0x02c8,
1115  0x1109, 0x0219, 0x0229, 0x0239, 0x0249, 0x0259, 0x0269,
1116  0x0279, 0x0289, 0x0299, 0x02a9, 0x02b9, 0x02c9,
1117  0x110a, 0x021a, 0x022a, 0x023a, 0x024a, 0x025a, 0x026a,
1118  0x027a, 0x028a, 0x029a, 0x02aa, 0x02ba, 0x02ca,
1119  0x110b, 0x021b, 0x022b, 0x023b, 0x024b, 0x025b, 0x026b,
1120  0x027b, 0x028b, 0x029b, 0x02ab, 0x02bb, 0x02cb,
1121  0x110c, 0x021c, 0x022c, 0x023c, 0x024c, 0x025c, 0x026c,
1122  0x027c, 0x028c, 0x029c, 0x02ac, 0x02bc, 0x02cc,
1123 };
1124 
1125 static const float codebook_vector10_vals[] = {
1126  0.0000000, 1.0000000,
1127  2.5198421, 4.3267487,
1128  6.3496042, 8.5498797,
1129  10.9027236, 13.3905183,
1130  16.0000000, 18.7207544,
1131  21.5443469, 24.4637810,
1132  27.4731418, 30.5673509,
1133  33.7419917, 36.9931811,
1134 };
1135 
1136 /*
1137  * bits 0:3, 4:7 index into _vals array
1138  * 8:9 bit mask of escape-coded entries
1139  * 12:15 number of non-zero values
1140  */
1141 static const uint16_t codebook_vector10_idx[] = {
1142  0x0000, 0x1010, 0x1020, 0x1030, 0x1040, 0x1050, 0x1060, 0x1070,
1143  0x1080, 0x1090, 0x10a0, 0x10b0, 0x10c0, 0x10d0, 0x10e0, 0x10f0, 0x1200,
1144  0x1001, 0x2011, 0x2021, 0x2031, 0x2041, 0x2051, 0x2061, 0x2071,
1145  0x2081, 0x2091, 0x20a1, 0x20b1, 0x20c1, 0x20d1, 0x20e1, 0x20f1, 0x2201,
1146  0x1002, 0x2012, 0x2022, 0x2032, 0x2042, 0x2052, 0x2062, 0x2072,
1147  0x2082, 0x2092, 0x20a2, 0x20b2, 0x20c2, 0x20d2, 0x20e2, 0x20f2, 0x2202,
1148  0x1003, 0x2013, 0x2023, 0x2033, 0x2043, 0x2053, 0x2063, 0x2073,
1149  0x2083, 0x2093, 0x20a3, 0x20b3, 0x20c3, 0x20d3, 0x20e3, 0x20f3, 0x2203,
1150  0x1004, 0x2014, 0x2024, 0x2034, 0x2044, 0x2054, 0x2064, 0x2074,
1151  0x2084, 0x2094, 0x20a4, 0x20b4, 0x20c4, 0x20d4, 0x20e4, 0x20f4, 0x2204,
1152  0x1005, 0x2015, 0x2025, 0x2035, 0x2045, 0x2055, 0x2065, 0x2075,
1153  0x2085, 0x2095, 0x20a5, 0x20b5, 0x20c5, 0x20d5, 0x20e5, 0x20f5, 0x2205,
1154  0x1006, 0x2016, 0x2026, 0x2036, 0x2046, 0x2056, 0x2066, 0x2076,
1155  0x2086, 0x2096, 0x20a6, 0x20b6, 0x20c6, 0x20d6, 0x20e6, 0x20f6, 0x2206,
1156  0x1007, 0x2017, 0x2027, 0x2037, 0x2047, 0x2057, 0x2067, 0x2077,
1157  0x2087, 0x2097, 0x20a7, 0x20b7, 0x20c7, 0x20d7, 0x20e7, 0x20f7, 0x2207,
1158  0x1008, 0x2018, 0x2028, 0x2038, 0x2048, 0x2058, 0x2068, 0x2078,
1159  0x2088, 0x2098, 0x20a8, 0x20b8, 0x20c8, 0x20d8, 0x20e8, 0x20f8, 0x2208,
1160  0x1009, 0x2019, 0x2029, 0x2039, 0x2049, 0x2059, 0x2069, 0x2079,
1161  0x2089, 0x2099, 0x20a9, 0x20b9, 0x20c9, 0x20d9, 0x20e9, 0x20f9, 0x2209,
1162  0x100a, 0x201a, 0x202a, 0x203a, 0x204a, 0x205a, 0x206a, 0x207a,
1163  0x208a, 0x209a, 0x20aa, 0x20ba, 0x20ca, 0x20da, 0x20ea, 0x20fa, 0x220a,
1164  0x100b, 0x201b, 0x202b, 0x203b, 0x204b, 0x205b, 0x206b, 0x207b,
1165  0x208b, 0x209b, 0x20ab, 0x20bb, 0x20cb, 0x20db, 0x20eb, 0x20fb, 0x220b,
1166  0x100c, 0x201c, 0x202c, 0x203c, 0x204c, 0x205c, 0x206c, 0x207c,
1167  0x208c, 0x209c, 0x20ac, 0x20bc, 0x20cc, 0x20dc, 0x20ec, 0x20fc, 0x220c,
1168  0x100d, 0x201d, 0x202d, 0x203d, 0x204d, 0x205d, 0x206d, 0x207d,
1169  0x208d, 0x209d, 0x20ad, 0x20bd, 0x20cd, 0x20dd, 0x20ed, 0x20fd, 0x220d,
1170  0x100e, 0x201e, 0x202e, 0x203e, 0x204e, 0x205e, 0x206e, 0x207e,
1171  0x208e, 0x209e, 0x20ae, 0x20be, 0x20ce, 0x20de, 0x20ee, 0x20fe, 0x220e,
1172  0x100f, 0x201f, 0x202f, 0x203f, 0x204f, 0x205f, 0x206f, 0x207f,
1173  0x208f, 0x209f, 0x20af, 0x20bf, 0x20cf, 0x20df, 0x20ef, 0x20ff, 0x220f,
1174  0x1100, 0x2110, 0x2120, 0x2130, 0x2140, 0x2150, 0x2160, 0x2170,
1175  0x2180, 0x2190, 0x21a0, 0x21b0, 0x21c0, 0x21d0, 0x21e0, 0x21f0, 0x2300,
1176 };
1177 
1178 const float *const ff_aac_codebook_vector_vals[] = {
1185 };
1186 
1187 const uint16_t *const ff_aac_codebook_vector_idx[] = {
1194 };
1195 
1196 /* @name swb_offsets
1197  * Sample offset into the window indicating the beginning of a scalefactor
1198  * window band
1199  *
1200  * scalefactor window band - term for scalefactor bands within a window,
1201  * given in Table 4.110 to Table 4.128.
1202  *
1203  * scalefactor band - a set of spectral coefficients which are scaled by one
1204  * scalefactor. In case of EIGHT_SHORT_SEQUENCE and grouping a scalefactor band
1205  * may contain several scalefactor window bands of corresponding frequency. For
1206  * all other window_sequences scalefactor bands and scalefactor window bands are
1207  * identical.
1208  * @{
1209  */
1210 
1211 static const uint16_t swb_offset_1024_96[] = {
1212  0, 4, 8, 12, 16, 20, 24, 28,
1213  32, 36, 40, 44, 48, 52, 56, 64,
1214  72, 80, 88, 96, 108, 120, 132, 144,
1215  156, 172, 188, 212, 240, 276, 320, 384,
1216  448, 512, 576, 640, 704, 768, 832, 896,
1217  960, 1024
1218 };
1219 
1220 static const uint16_t swb_offset_128_96[] = {
1221  0, 4, 8, 12, 16, 20, 24, 32, 40, 48, 64, 92, 128
1222 };
1223 
1224 static const uint16_t swb_offset_1024_64[] = {
1225  0, 4, 8, 12, 16, 20, 24, 28,
1226  32, 36, 40, 44, 48, 52, 56, 64,
1227  72, 80, 88, 100, 112, 124, 140, 156,
1228  172, 192, 216, 240, 268, 304, 344, 384,
1229  424, 464, 504, 544, 584, 624, 664, 704,
1230  744, 784, 824, 864, 904, 944, 984, 1024
1231 };
1232 
1233 static const uint16_t swb_offset_1024_48[] = {
1234  0, 4, 8, 12, 16, 20, 24, 28,
1235  32, 36, 40, 48, 56, 64, 72, 80,
1236  88, 96, 108, 120, 132, 144, 160, 176,
1237  196, 216, 240, 264, 292, 320, 352, 384,
1238  416, 448, 480, 512, 544, 576, 608, 640,
1239  672, 704, 736, 768, 800, 832, 864, 896,
1240  928, 1024
1241 };
1242 
1243 static const uint16_t swb_offset_512_48[] = {
1244  0, 4, 8, 12, 16, 20, 24, 28,
1245  32, 36, 40, 44, 48, 52, 56, 60,
1246  68, 76, 84, 92, 100, 112, 124, 136,
1247  148, 164, 184, 208, 236, 268, 300, 332,
1248  364, 396, 428, 460, 512
1249 };
1250 
1251 static const uint16_t swb_offset_480_48[] = {
1252  0, 4, 8, 12, 16, 20, 24, 28,
1253  32, 36, 40, 44, 48, 52, 56, 64,
1254  72, 80, 88, 96, 108, 120, 132, 144,
1255  156, 172, 188, 212, 240, 272, 304, 336,
1256  368, 400, 432, 480
1257 };
1258 
1259 static const uint16_t swb_offset_128_48[] = {
1260  0, 4, 8, 12, 16, 20, 28, 36,
1261  44, 56, 68, 80, 96, 112, 128
1262 };
1263 
1264 static const uint16_t swb_offset_1024_32[] = {
1265  0, 4, 8, 12, 16, 20, 24, 28,
1266  32, 36, 40, 48, 56, 64, 72, 80,
1267  88, 96, 108, 120, 132, 144, 160, 176,
1268  196, 216, 240, 264, 292, 320, 352, 384,
1269  416, 448, 480, 512, 544, 576, 608, 640,
1270  672, 704, 736, 768, 800, 832, 864, 896,
1271  928, 960, 992, 1024
1272 };
1273 
1274 static const uint16_t swb_offset_512_32[] = {
1275  0, 4, 8, 12, 16, 20, 24, 28,
1276  32, 36, 40, 44, 48, 52, 56, 64,
1277  72, 80, 88, 96, 108, 120, 132, 144,
1278  160, 176, 192, 212, 236, 260, 288, 320,
1279  352, 384, 416, 448, 480, 512
1280 };
1281 
1282 static const uint16_t swb_offset_480_32[] = {
1283  0, 4, 8, 12, 16, 20, 24, 28,
1284  32, 36, 40, 44, 48, 52, 56, 60,
1285  64, 72, 80, 88, 96, 104, 112, 124,
1286  136, 148, 164, 180, 200, 224, 256, 288,
1287  320, 352, 384, 416, 448, 480
1288  };
1289 
1290 static const uint16_t swb_offset_1024_24[] = {
1291  0, 4, 8, 12, 16, 20, 24, 28,
1292  32, 36, 40, 44, 52, 60, 68, 76,
1293  84, 92, 100, 108, 116, 124, 136, 148,
1294  160, 172, 188, 204, 220, 240, 260, 284,
1295  308, 336, 364, 396, 432, 468, 508, 552,
1296  600, 652, 704, 768, 832, 896, 960, 1024
1297 };
1298 
1299 static const uint16_t swb_offset_512_24[] = {
1300  0, 4, 8, 12, 16, 20, 24, 28,
1301  32, 36, 40, 44, 52, 60, 68, 80,
1302  92, 104, 120, 140, 164, 192, 224, 256,
1303  288, 320, 352, 384, 416, 448, 480, 512,
1304 };
1305 
1306 static const uint16_t swb_offset_480_24[] = {
1307  0, 4, 8, 12, 16, 20, 24, 28,
1308  32, 36, 40, 44, 52, 60, 68, 80,
1309  92, 104, 120, 140, 164, 192, 224, 256,
1310  288, 320, 352, 384, 416, 448, 480
1311 };
1312 
1313 static const uint16_t swb_offset_128_24[] = {
1314  0, 4, 8, 12, 16, 20, 24, 28,
1315  36, 44, 52, 64, 76, 92, 108, 128
1316 };
1317 
1318 static const uint16_t swb_offset_1024_16[] = {
1319  0, 8, 16, 24, 32, 40, 48, 56,
1320  64, 72, 80, 88, 100, 112, 124, 136,
1321  148, 160, 172, 184, 196, 212, 228, 244,
1322  260, 280, 300, 320, 344, 368, 396, 424,
1323  456, 492, 532, 572, 616, 664, 716, 772,
1324  832, 896, 960, 1024
1325 };
1326 
1327 static const uint16_t swb_offset_128_16[] = {
1328  0, 4, 8, 12, 16, 20, 24, 28,
1329  32, 40, 48, 60, 72, 88, 108, 128
1330 };
1331 
1332 static const uint16_t swb_offset_1024_8[] = {
1333  0, 12, 24, 36, 48, 60, 72, 84,
1334  96, 108, 120, 132, 144, 156, 172, 188,
1335  204, 220, 236, 252, 268, 288, 308, 328,
1336  348, 372, 396, 420, 448, 476, 508, 544,
1337  580, 620, 664, 712, 764, 820, 880, 944,
1338  1024
1339 };
1340 
1341 static const uint16_t swb_offset_128_8[] = {
1342  0, 4, 8, 12, 16, 20, 24, 28,
1343  36, 44, 52, 60, 72, 88, 108, 128
1344 };
1345 
1346 static const uint16_t swb_offset_960_96[] =
1347 {
1348  0, 4, 8, 12, 16, 20, 24, 28, 32, 36,
1349  40, 44, 48, 52, 56, 64, 72, 80, 88, 96,
1350  108, 120, 132, 144, 156, 172, 188, 212, 240, 276,
1351  320, 384, 448, 512, 576, 640, 704, 768, 832, 896,
1352  960
1353 };
1354 
1355 static const uint16_t swb_offset_960_64[] =
1356 {
1357  0, 4, 8, 12, 16, 20, 24, 28, 32, 36,
1358  40, 44, 48, 52, 56, 64, 72, 80, 88, 100,
1359  112, 124, 140, 156, 172, 192, 216, 240, 268, 304,
1360  344, 384, 424, 464, 504, 544, 584, 624, 664, 704,
1361  744, 784, 824, 864, 904, 944, 960
1362 };
1363 
1364 static const uint16_t swb_offset_960_48[] =
1365 {
1366  0, 4, 8, 12, 16, 20, 24, 28, 32, 36,
1367  40, 48, 56, 64, 72, 80, 88, 96, 108, 120,
1368  132, 144, 160, 176, 196, 216, 240, 264, 292, 320,
1369  352, 384, 416, 448, 480, 512, 544, 576, 608, 640,
1370  672, 704, 736, 768, 800, 832, 864, 896, 928, 960
1371 };
1372 
1373 #define swb_offset_960_32 swb_offset_960_48
1374 
1375 static const uint16_t swb_offset_960_24[] =
1376 {
1377  0, 4, 8, 12, 16, 20, 24, 28, 32, 36,
1378  40, 44, 52, 60, 68, 76, 84, 92, 100, 108,
1379  116, 124, 136, 148, 160, 172, 188, 204, 220, 240,
1380  260, 284, 308, 336, 364, 396, 432, 468, 508, 552,
1381  600, 652, 704, 768, 832, 896, 960
1382 };
1383 
1384 static const uint16_t swb_offset_960_16[] =
1385 {
1386  0, 8, 16, 24, 32, 40, 48, 56, 64, 72,
1387  80, 88, 100, 112, 124, 136, 148, 160, 172, 184,
1388  196, 212, 228, 244, 260, 280, 300, 320, 344, 368,
1389  396, 424, 456, 492, 532, 572, 616, 664, 716, 772,
1390  832, 896, 960
1391 };
1392 
1393 static const uint16_t swb_offset_960_8[] =
1394 {
1395  0, 12, 24, 36, 48, 60, 72, 84, 96, 108,
1396  120, 132, 144, 156, 172, 188, 204, 220, 236, 252,
1397  268, 288, 308, 328, 348, 372, 396, 420, 448, 476,
1398  508, 544, 580, 620, 664, 712, 764, 820, 880, 944,
1399  960
1400 };
1401 
1402 
1403 static const uint16_t swb_offset_120_96[] =
1404 {
1405  0, 4, 8, 12, 16, 20, 24, 32, 40, 48, 64, 92, 120
1406 };
1407 
1408 static const uint16_t swb_offset_120_64[] =
1409 {
1410  0, 4, 8, 12, 16, 20, 24, 32, 40, 48, 64, 92, 120
1411 };
1412 
1413 static const uint16_t swb_offset_120_48[] =
1414 {
1415  0, 4, 8, 12, 16, 20, 28, 36, 44, 56, 68, 80, 96, 112, 120
1416 };
1417 
1418 static const uint16_t swb_offset_120_24[] =
1419 {
1420  0, 4, 8, 12, 16, 20, 24, 28, 36, 44, 52, 64, 76, 92, 108, 120
1421 };
1422 
1423 static const uint16_t swb_offset_120_16[] =
1424 {
1425  0, 4, 8, 12, 16, 20, 24, 28, 32, 40, 48, 60, 72, 88, 108, 120
1426 };
1427 
1428 static const uint16_t swb_offset_120_8[] =
1429 {
1430  0, 4, 8, 12, 16, 20, 24, 28, 36, 44, 52, 60, 72, 88, 108, 120
1431 };
1432 
1433 const uint16_t * const ff_swb_offset_1024[] = {
1439 };
1440 
1441 const uint16_t * const ff_swb_offset_960[] = {
1447 };
1448 
1449 const uint16_t * const ff_swb_offset_512[] = {
1450  NULL, NULL, NULL,
1453  NULL, NULL, NULL,
1454  NULL
1455 };
1456 
1457 const uint16_t * const ff_swb_offset_480[] = {
1458  NULL, NULL, NULL,
1461  NULL, NULL, NULL,
1462  NULL
1463 };
1464 
1465 const uint16_t * const ff_swb_offset_128[] = {
1466  /* The last entry on the following row is swb_offset_128_64 but is a
1467  duplicate of swb_offset_128_96. */
1473 };
1474 
1475 const uint16_t * const ff_swb_offset_120[] = {
1481 };
1482 
1483 // @}
1484 
1485 /* @name ff_tns_max_bands
1486  * The maximum number of scalefactor bands on which TNS can operate for the long
1487  * and short transforms respectively. The index to these tables is related to
1488  * the sample rate of the audio.
1489  * @{
1490  */
1491 const uint8_t ff_tns_max_bands_1024[] = {
1492  31, 31, 34, 40, 42, 51, 46, 46, 42, 42, 42, 39, 39
1493 };
1494 
1495 const uint8_t ff_tns_max_bands_512[] = {
1496  0, 0, 0, 31, 32, 37, 31, 31, 0, 0, 0, 0, 0
1497 };
1498 
1499 const uint8_t ff_tns_max_bands_480[] = {
1500  0, 0, 0, 31, 32, 37, 30, 30, 0, 0, 0, 0, 0
1501 };
1502 
1503 const uint8_t ff_tns_max_bands_128[] = {
1504  9, 9, 10, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14
1505 };
1506 // @}
1507 
1508 const DECLARE_ALIGNED(32, float, ff_aac_eld_window_512)[1920] = {
1509  0.00338834, 0.00567745, 0.00847677, 0.01172641,
1510  0.01532555, 0.01917664, 0.02318809, 0.02729259,
1511  0.03144503, 0.03560261, 0.03972499, 0.04379783,
1512  0.04783094, 0.05183357, 0.05581342, 0.05977723,
1513  0.06373173, 0.06768364, 0.07163937, 0.07559976,
1514  0.07956096, 0.08352024, 0.08747623, 0.09143035,
1515  0.09538618, 0.09934771, 0.10331917, 0.10730456,
1516  0.11130697, 0.11532867, 0.11937133, 0.12343922,
1517  0.12753911, 0.13167705, 0.13585812, 0.14008529,
1518  0.14435986, 0.14868291, 0.15305531, 0.15747594,
1519  0.16194193, 0.16645070, 0.17099991, 0.17558633,
1520  0.18020600, 0.18485548, 0.18953191, 0.19423322,
1521  0.19895800, 0.20370512, 0.20847374, 0.21326312,
1522  0.21807244, 0.22290083, 0.22774742, 0.23261210,
1523  0.23749542, 0.24239767, 0.24731889, 0.25225887,
1524  0.25721719, 0.26219330, 0.26718648, 0.27219630,
1525  0.27722262, 0.28226514, 0.28732336, 0.29239628,
1526  0.29748247, 0.30258055, 0.30768914, 0.31280508,
1527  0.31792385, 0.32304172, 0.32815579, 0.33326397,
1528  0.33836470, 0.34345661, 0.34853868, 0.35361188,
1529  0.35867865, 0.36374072, 0.36879900, 0.37385347,
1530  0.37890349, 0.38394836, 0.38898730, 0.39401912,
1531  0.39904236, 0.40405575, 0.40905820, 0.41404819,
1532  0.41902398, 0.42398423, 0.42892805, 0.43385441,
1533  0.43876210, 0.44365014, 0.44851786, 0.45336632,
1534  0.45819759, 0.46301302, 0.46781309, 0.47259722,
1535  0.47736435, 0.48211365, 0.48684450, 0.49155594,
1536  0.49624679, 0.50091636, 0.50556440, 0.51019132,
1537  0.51479771, 0.51938391, 0.52394998, 0.52849587,
1538  0.53302151, 0.53752680, 0.54201160, 0.54647575,
1539  0.55091916, 0.55534181, 0.55974376, 0.56412513,
1540  0.56848615, 0.57282710, 0.57714834, 0.58145030,
1541  0.58492489, 0.58918511, 0.59342326, 0.59763936,
1542  0.60183347, 0.60600561, 0.61015581, 0.61428412,
1543  0.61839056, 0.62247517, 0.62653799, 0.63057912,
1544  0.63459872, 0.63859697, 0.64257403, 0.64653001,
1545  0.65046495, 0.65437887, 0.65827181, 0.66214383,
1546  0.66599499, 0.66982535, 0.67363499, 0.67742394,
1547  0.68119219, 0.68493972, 0.68866653, 0.69237258,
1548  0.69605778, 0.69972207, 0.70336537, 0.70698758,
1549  0.71058862, 0.71416837, 0.71772674, 0.72126361,
1550  0.72477889, 0.72827246, 0.73174419, 0.73519392,
1551  0.73862141, 0.74202643, 0.74540874, 0.74876817,
1552  0.75210458, 0.75541785, 0.75870785, 0.76197437,
1553  0.76521709, 0.76843570, 0.77162988, 0.77479939,
1554  0.77794403, 0.78106359, 0.78415789, 0.78722670,
1555  0.79026979, 0.79328694, 0.79627791, 0.79924244,
1556  0.80218027, 0.80509112, 0.80797472, 0.81083081,
1557  0.81365915, 0.81645949, 0.81923160, 0.82197528,
1558  0.82469037, 0.82737673, 0.83003419, 0.83266262,
1559  0.83526186, 0.83783176, 0.84037217, 0.84288297,
1560  0.84536401, 0.84781517, 0.85023632, 0.85262739,
1561  0.85498836, 0.85731921, 0.85961993, 0.86189052,
1562  0.86413101, 0.86634140, 0.86852173, 0.87067211,
1563  0.87279275, 0.87488384, 0.87694559, 0.87897824,
1564  0.88098206, 0.88295729, 0.88490423, 0.88682332,
1565  0.88871519, 0.89058048, 0.89241983, 0.89423391,
1566  0.89602338, 0.89778893, 0.89953126, 0.90125142,
1567  0.90295086, 0.90463104, 0.90629341, 0.90793946,
1568  0.90957067, 0.91118856, 0.91279464, 0.91439073,
1569  0.91597898, 0.91756153, 0.91914049, 0.92071690,
1570  0.92229070, 0.92386182, 0.92542993, 0.92698946,
1571  0.92852960, 0.93003929, 0.93150727, 0.93291739,
1572  0.93424863, 0.93547974, 0.93658982, 0.93756587,
1573  0.93894072, 0.93922780, 0.93955477, 0.93991290,
1574  0.94029104, 0.94067794, 0.94106258, 0.94144084,
1575  0.94181549, 0.94218963, 0.94256628, 0.94294662,
1576  0.94332998, 0.94371562, 0.94410280, 0.94449122,
1577  0.94488106, 0.94527249, 0.94566568, 0.94606074,
1578  0.94645772, 0.94685665, 0.94725759, 0.94766054,
1579  0.94806547, 0.94847234, 0.94888115, 0.94929190,
1580  0.94970469, 0.95011960, 0.95053672, 0.95095604,
1581  0.95137751, 0.95180105, 0.95222658, 0.95265413,
1582  0.95308380, 0.95351571, 0.95394994, 0.95438653,
1583  0.95482538, 0.95526643, 0.95570958, 0.95615486,
1584  0.95660234, 0.95705214, 0.95750433, 0.95795892,
1585  0.95841582, 0.95887493, 0.95933616, 0.95979949,
1586  0.96026500, 0.96073277, 0.96120286, 0.96167526,
1587  0.96214986, 0.96262655, 0.96310522, 0.96358586,
1588  0.96406853, 0.96455330, 0.96504026, 0.96552936,
1589  0.96602051, 0.96651360, 0.96700850, 0.96750520,
1590  0.96800376, 0.96850424, 0.96900670, 0.96951112,
1591  0.97001738, 0.97052533, 0.97103488, 0.97154597,
1592  0.97205867, 0.97257304, 0.97308915, 0.97360694,
1593  0.97412631, 0.97464711, 0.97516923, 0.97569262,
1594  0.97621735, 0.97674350, 0.97727111, 0.97780016,
1595  0.97833051, 0.97886205, 0.97939463, 0.97992823,
1596  0.98046291, 0.98099875, 0.98153580, 0.98207405,
1597  0.98261337, 0.98315364, 0.98369474, 0.98423664,
1598  0.98477941, 0.98532311, 0.98586780, 0.98641348,
1599  0.98696003, 0.98750734, 0.98805530, 0.98860389,
1600  0.98915320, 0.98970328, 0.99025423, 0.99080602,
1601  0.99135855, 0.99191171, 0.99246541, 0.99301962,
1602  0.99357443, 0.99412992, 0.99468617, 0.99524320,
1603  0.99580092, 0.99635926, 0.99691814, 0.99747748,
1604  0.99803721, 0.99859725, 0.99915752, 0.99971793,
1605  1.00028215, 1.00084319, 1.00140472, 1.00196665,
1606  1.00252889, 1.00309139, 1.00365404, 1.00421679,
1607  1.00477954, 1.00534221, 1.00590474, 1.00646713,
1608  1.00702945, 1.00759179, 1.00815424, 1.00871678,
1609  1.00927930, 1.00984169, 1.01040384, 1.01096575,
1610  1.01152747, 1.01208910, 1.01265070, 1.01321226,
1611  1.01377365, 1.01433478, 1.01489551, 1.01545584,
1612  1.01601582, 1.01657553, 1.01713502, 1.01769427,
1613  1.01825316, 1.01881154, 1.01936929, 1.01992639,
1614  1.02048289, 1.02103888, 1.02159441, 1.02214945,
1615  1.02270387, 1.02325751, 1.02381025, 1.02436204,
1616  1.02491295, 1.02546304, 1.02601238, 1.02656092,
1617  1.02710853, 1.02765508, 1.02820041, 1.02874449,
1618  1.02928737, 1.02982913, 1.03036981, 1.03090937,
1619  1.03144768, 1.03198460, 1.03252000, 1.03305384,
1620  1.03358617, 1.03411707, 1.03464659, 1.03517470,
1621  1.03570128, 1.03622620, 1.03674934, 1.03727066,
1622  1.03779024, 1.03830815, 1.03882446, 1.03933914,
1623  1.03985206, 1.04036312, 1.04087217, 1.04137920,
1624  1.04188428, 1.04238748, 1.04288888, 1.04338845,
1625  1.04388610, 1.04438170, 1.04487515, 1.04536645,
1626  1.04585569, 1.04634297, 1.04682838, 1.04731192,
1627  1.04779350, 1.04827303, 1.04875042, 1.04922568,
1628  1.04969891, 1.05017022, 1.05063974, 1.05110746,
1629  1.05157332, 1.05203721, 1.05249907, 1.05295889,
1630  1.05341676, 1.05387277, 1.05432700, 1.05477948,
1631  1.05523018, 1.05567906, 1.05612608, 1.05657124,
1632  1.05701459, 1.05745616, 1.05789601, 1.05833426,
1633  1.05877109, 1.05920669, 1.05964125, 1.06007444,
1634  1.06050542, 1.06093335, 1.06135746, 1.06177909,
1635  1.06220164, 1.06262858, 1.06306309, 1.06350050,
1636  1.06392837, 1.06433391, 1.06470443, 1.06502996,
1637  1.06481076, 1.06469765, 1.06445004, 1.06408002,
1638  1.06361382, 1.06307719, 1.06249453, 1.06188365,
1639  1.06125612, 1.06062291, 1.05999418, 1.05937132,
1640  1.05874726, 1.05811486, 1.05746728, 1.05680000,
1641  1.05611070, 1.05539715, 1.05465735, 1.05389329,
1642  1.05311083, 1.05231578, 1.05151372, 1.05070811,
1643  1.04990044, 1.04909210, 1.04828434, 1.04747647,
1644  1.04666590, 1.04585003, 1.04502628, 1.04419009,
1645  1.04333499, 1.04245452, 1.04154244, 1.04059452,
1646  1.03960846, 1.03858207, 1.03751326, 1.03640189,
1647  1.03524976, 1.03405868, 1.03283047, 1.03156812,
1648  1.03027574, 1.02895743, 1.02761717, 1.02625804,
1649  1.02488222, 1.02349184, 1.02208892, 1.02067450,
1650  1.01924861, 1.01781123, 1.01636229, 1.01490045,
1651  1.01342315, 1.01192778, 1.01041175, 1.00887284,
1652  1.00730915, 1.00571882, 1.00409996, 1.00245032,
1653  1.00076734, 0.99904842, 0.99729101, 0.99549380,
1654  0.99365664, 0.99177946, 0.98986234, 0.98791024,
1655  0.98593294, 0.98394037, 0.98194226, 0.97994532,
1656  0.97795324, 0.97596955, 0.97399748, 0.97203326,
1657  0.97006624, 0.96808546, 0.96608018, 0.96404416,
1658  0.96197556, 0.95987276, 0.95773420, 0.95556018,
1659  0.95335291, 0.95111462, 0.94884764, 0.94655663,
1660  0.94424858, 0.94193055, 0.93960953, 0.93729154,
1661  0.93498157, 0.93268456, 0.93040503, 0.92813771,
1662  0.92586755, 0.92357910, 0.92125731, 0.91889642,
1663  0.91649998, 0.91407191, 0.91161623, 0.90913975,
1664  0.90665202, 0.90416271, 0.90168115, 0.89920934,
1665  0.89674189, 0.89427312, 0.89179743, 0.88931147,
1666  0.88681415, 0.88430445, 0.88178141, 0.87924528,
1667  0.87669753, 0.87413966, 0.87157318, 0.86899958,
1668  0.86642037, 0.86383703, 0.86125106, 0.85866393,
1669  0.85604236, 0.85344385, 0.85083093, 0.84820550,
1670  0.84556943, 0.84292458, 0.84027278, 0.83761586,
1671  0.83495565, 0.83229393, 0.82963243, 0.82697135,
1672  0.82430933, 0.82164496, 0.81897669, 0.81630017,
1673  0.81360822, 0.81089355, 0.80814924, 0.80537741,
1674  0.80258920, 0.79979611, 0.79700954, 0.79423813,
1675  0.79148780, 0.78876432, 0.78607290, 0.78340590,
1676  0.78074288, 0.77806279, 0.77534514, 0.77258187,
1677  0.76977737, 0.76693654, 0.76406441, 0.76116851,
1678  0.75825892, 0.75534582, 0.75243924, 0.74954634,
1679  0.74667135, 0.74381840, 0.74099145, 0.73819147,
1680  0.73541641, 0.73266408, 0.72993193, 0.72720913,
1681  0.72447661, 0.72171494, 0.71890515, 0.71603932,
1682  0.71312056, 0.71015250, 0.70713900, 0.70409084,
1683  0.70102565, 0.69796137, 0.69491556, 0.69189772,
1684  0.68890931, 0.68595141, 0.68302498, 0.68012852,
1685  0.67725801, 0.67440936, 0.67157841, 0.66876081,
1686  0.66595195, 0.66314722, 0.66034194, 0.65753027,
1687  0.65470525, 0.65185984, 0.64898709, 0.64608214,
1688  0.64314221, 0.64016460, 0.63714680, 0.63409034,
1689  0.63100082, 0.62788400, 0.62474577, 0.62159473,
1690  0.61844225, 0.61529977, 0.61217866, 0.60908811,
1691  0.60603510, 0.60302654, 0.60006916, 0.59716588,
1692  0.59431580, 0.59151787, 0.58877068, 0.58606495,
1693  0.58338353, 0.58070891, 0.57802356, 0.57530864,
1694  0.57254404, 0.56970958, 0.56678577, 0.56376860,
1695  0.56066951, 0.55750064, 0.55427451, 0.55101301,
1696  0.54774732, 0.54450907, 0.54132936, 0.53822744,
1697  0.53521072, 0.53228613, 0.52945979, 0.52671997,
1698  0.52403708, 0.52138072, 0.51872085, 0.51603570,
1699  0.51331170, 0.51053560, 0.50769466, 0.50478931,
1700  0.50183308, 0.49884001, 0.49582406, 0.49279905,
1701  0.48985748, 0.48679641, 0.48379429, 0.48085363,
1702  0.47796576, 0.47512151, 0.47231151, 0.46952402,
1703  0.46674486, 0.46395978, 0.46115496, 0.45832607,
1704  0.45547830, 0.45261727, 0.44974866, 0.44688011,
1705  0.44402125, 0.44118178, 0.43837094, 0.43558772,
1706  0.43282082, 0.43005847, 0.42728913, 0.42450572,
1707  0.42170567, 0.41888658, 0.41604633, 0.41318897,
1708  0.41032472, 0.40746405, 0.40461724, 0.40178943,
1709  0.39898066, 0.39619073, 0.39341940, 0.39066519,
1710  0.38792536, 0.38519713, 0.38247773, 0.37976476,
1711  0.37705620, 0.37435006, 0.37164438, 0.36893869,
1712  0.36623396, 0.36353124, 0.36083153, 0.35813533,
1713  0.35544262, 0.35275338, 0.35006755, 0.34738530,
1714  0.34470699, 0.34203296, 0.33936359, 0.33669922,
1715  0.33404027, 0.33138711, 0.32874013, 0.32609944,
1716  0.32346493, 0.32083645, 0.31821388, 0.31559703,
1717  0.31298573, 0.31037987, 0.30777941, 0.30518446,
1718  0.30259525, 0.30001202, 0.29743499, 0.29486428,
1719  0.29229989, 0.28974179, 0.28718997, 0.28464452,
1720  0.28210562, 0.27957346, 0.27704820, 0.27452992,
1721  0.27201854, 0.26951399, 0.26701622, 0.26452533,
1722  0.26204158, 0.25956526, 0.25709662, 0.25463583,
1723  0.25218294, 0.24973798, 0.24730100, 0.24487207,
1724  0.24245133, 0.24003893, 0.23763500, 0.23523959,
1725  0.23285262, 0.23047401, 0.22810369, 0.22574170,
1726  0.22338818, 0.22104329, 0.21870719, 0.21637986,
1727  0.21406117, 0.21175095, 0.20944904, 0.20715535,
1728  0.20486987, 0.20259261, 0.20032356, 0.19806259,
1729  0.19580944, 0.19356385, 0.19132556, 0.18909442,
1730  0.18687040, 0.18465350, 0.18244372, 0.18024164,
1731  0.17804841, 0.17586521, 0.17369322, 0.17153360,
1732  0.16938755, 0.16725622, 0.16514081, 0.16304247,
1733  0.16098974, 0.15896561, 0.15696026, 0.15497259,
1734  0.15300151, 0.15104590, 0.14910466, 0.14717666,
1735  0.14526081, 0.14335599, 0.14146111, 0.13957570,
1736  0.13769993, 0.13583399, 0.13397806, 0.13213229,
1737  0.13029682, 0.12847178, 0.12665729, 0.12485353,
1738  0.12306074, 0.12127916, 0.11950900, 0.11775043,
1739  0.11600347, 0.11426820, 0.11254464, 0.11083292,
1740  0.10913318, 0.10744559, 0.10577028, 0.10410733,
1741  0.10245672, 0.10081842, 0.09919240, 0.09757872,
1742  0.09597750, 0.09438884, 0.09281288, 0.09124964,
1743  0.08969907, 0.08816111, 0.08663570, 0.08512288,
1744  0.08362274, 0.08213540, 0.08066096, 0.07919944,
1745  0.07775076, 0.07631484, 0.07489161, 0.07348108,
1746  0.07208335, 0.07069851, 0.06932666, 0.06796781,
1747  0.06662187, 0.06528874, 0.06396833, 0.06266065,
1748  0.06136578, 0.06008380, 0.05881480, 0.05755876,
1749  0.05631557, 0.05508511, 0.05386728, 0.05266206,
1750  0.05146951, 0.05028971, 0.04912272, 0.04796855,
1751  0.04682709, 0.04569825, 0.04458194, 0.04347817,
1752  0.04238704, 0.04130868, 0.04024318, 0.03919056,
1753  0.03815071, 0.03712352, 0.03610890, 0.03510679,
1754  0.03411720, 0.03314013, 0.03217560, 0.03122343,
1755  0.03028332, 0.02935494, 0.02843799, 0.02753230,
1756  0.02663788, 0.02575472, 0.02488283, 0.02402232,
1757  0.02317341, 0.02233631, 0.02151124, 0.02069866,
1758  0.01989922, 0.01911359, 0.01834241, 0.01758563,
1759  0.01684248, 0.01611219, 0.01539397, 0.01468726,
1760  0.01399167, 0.01330687, 0.01263250, 0.01196871,
1761  0.01131609, 0.01067527, 0.01004684, 0.00943077,
1762  0.00882641, 0.00823307, 0.00765011, 0.00707735,
1763  0.00651513, 0.00596377, 0.00542364, 0.00489514,
1764  0.00437884, 0.00387530, 0.00338509, 0.00290795,
1765  0.00244282, 0.00198860, 0.00154417, 0.00110825,
1766  0.00067934, 0.00025589, -0.00016357, -0.00057897,
1767  -0.00098865, -0.00139089, -0.00178397, -0.00216547,
1768  -0.00253230, -0.00288133, -0.00320955, -0.00351626,
1769  -0.00380315, -0.00407198, -0.00432457, -0.00456373,
1770  -0.00479326, -0.00501699, -0.00523871, -0.00546066,
1771  -0.00568360, -0.00590821, -0.00613508, -0.00636311,
1772  -0.00658944, -0.00681117, -0.00702540, -0.00722982,
1773  -0.00742268, -0.00760226, -0.00776687, -0.00791580,
1774  -0.00804933, -0.00816774, -0.00827139, -0.00836122,
1775  -0.00843882, -0.00850583, -0.00856383, -0.00861430,
1776  -0.00865853, -0.00869781, -0.00873344, -0.00876633,
1777  -0.00879707, -0.00882622, -0.00885433, -0.00888132,
1778  -0.00890652, -0.00892925, -0.00894881, -0.00896446,
1779  -0.00897541, -0.00898088, -0.00898010, -0.00897234,
1780  -0.00895696, -0.00893330, -0.00890076, -0.00885914,
1781  -0.00880875, -0.00874987, -0.00868282, -0.00860825,
1782  -0.00852716, -0.00844055, -0.00834941, -0.00825485,
1783  -0.00815807, -0.00806025, -0.00796253, -0.00786519,
1784  -0.00776767, -0.00766937, -0.00756971, -0.00746790,
1785  -0.00736305, -0.00725422, -0.00714055, -0.00702161,
1786  -0.00689746, -0.00676816, -0.00663381, -0.00649489,
1787  -0.00635230, -0.00620694, -0.00605969, -0.00591116,
1788  -0.00576167, -0.00561155, -0.00546110, -0.00531037,
1789  -0.00515917, -0.00500732, -0.00485462, -0.00470075,
1790  -0.00454530, -0.00438786, -0.00422805, -0.00406594,
1791  -0.00390204, -0.00373686, -0.00357091, -0.00340448,
1792  -0.00323770, -0.00307066, -0.00290344, -0.00273610,
1793  -0.00256867, -0.00240117, -0.00223365, -0.00206614,
1794  -0.00189866, -0.00173123, -0.00156390, -0.00139674,
1795  -0.00122989, -0.00106351, -0.00089772, -0.00073267,
1796  -0.00056849, -0.00040530, -0.00024324, -0.00008241,
1797  0.00008214, 0.00024102, 0.00039922, 0.00055660,
1798  0.00071299, 0.00086826, 0.00102224, 0.00117480,
1799  0.00132579, 0.00147507, 0.00162252, 0.00176804,
1800  0.00191161, 0.00205319, 0.00219277, 0.00233029,
1801  0.00246567, 0.00259886, 0.00272975, 0.00285832,
1802  0.00298453, 0.00310839, 0.00322990, 0.00334886,
1803  0.00346494, 0.00357778, 0.00368706, 0.00379273,
1804  0.00389501, 0.00399411, 0.00409020, 0.00418350,
1805  0.00427419, 0.00436249, 0.00444858, 0.00453250,
1806  0.00461411, 0.00469328, 0.00476988, 0.00484356,
1807  0.00491375, 0.00497987, 0.00504139, 0.00509806,
1808  0.00514990, 0.00519693, 0.00523920, 0.00527700,
1809  0.00531083, 0.00534122, 0.00536864, 0.00539357,
1810  0.00541649, 0.00543785, 0.00545809, 0.00547713,
1811  0.00549441, 0.00550936, 0.00552146, 0.00553017,
1812  0.00553494, 0.00553524, 0.00553058, 0.00552065,
1813  0.00550536, 0.00548459, 0.00545828, 0.00542662,
1814  0.00539007, 0.00534910, 0.00530415, 0.00525568,
1815  0.00520417, 0.00515009, 0.00509387, 0.00503595,
1816  0.00497674, 0.00491665, 0.00485605, 0.00479503,
1817  0.00473336, 0.00467082, 0.00460721, 0.00454216,
1818  0.00447517, 0.00440575, 0.00433344, 0.00425768,
1819  0.00417786, 0.00409336, 0.00400363, 0.00390837,
1820  0.00380759, 0.00370130, 0.00358952, 0.00347268,
1821  0.00335157, 0.00322699, 0.00309975, 0.00297088,
1822  0.00284164, 0.00271328, 0.00258700, 0.00246328,
1823  0.00234195, 0.00222281, 0.00210562, 0.00198958,
1824  0.00187331, 0.00175546, 0.00163474, 0.00151020,
1825  0.00138130, 0.00124750, 0.00110831, 0.00096411,
1826  0.00081611, 0.00066554, 0.00051363, 0.00036134,
1827  0.00020940, 0.00005853, -0.00009058, -0.00023783,
1828  -0.00038368, -0.00052861, -0.00067310, -0.00081757,
1829  -0.00096237, -0.00110786, -0.00125442, -0.00140210,
1830  -0.00155065, -0.00169984, -0.00184940, -0.00199910,
1831  -0.00214872, -0.00229798, -0.00244664, -0.00259462,
1832  -0.00274205, -0.00288912, -0.00303596, -0.00318259,
1833  -0.00332890, -0.00347480, -0.00362024, -0.00376519,
1834  -0.00390962, -0.00405345, -0.00419658, -0.00433902,
1835  -0.00448085, -0.00462219, -0.00476309, -0.00490357,
1836  -0.00504361, -0.00518321, -0.00532243, -0.00546132,
1837  -0.00559988, -0.00573811, -0.00587602, -0.00601363,
1838  -0.00615094, -0.00628795, -0.00642466, -0.00656111,
1839  -0.00669737, -0.00683352, -0.00696963, -0.00710578,
1840  -0.00724208, -0.00737862, -0.00751554, -0.00765295,
1841  -0.00779098, -0.00792976, -0.00806941, -0.00821006,
1842  -0.00835183, -0.00849485, -0.00863926, -0.00878522,
1843  -0.00893293, -0.00908260, -0.00923444, -0.00938864,
1844  -0.00954537, -0.00970482, -0.00986715, -0.01003173,
1845  -0.01019711, -0.01036164, -0.01052357, -0.01068184,
1846  -0.01083622, -0.01098652, -0.01113252, -0.01127409,
1847  -0.01141114, -0.01154358, -0.01167135, -0.01179439,
1848  -0.01191268, -0.01202619, -0.01213493, -0.01223891,
1849  -0.01233817, -0.01243275, -0.01252272, -0.01260815,
1850  -0.01268915, -0.01276583, -0.01283832, -0.01290685,
1851  -0.01297171, -0.01303320, -0.01309168, -0.01314722,
1852  -0.01319969, -0.01324889, -0.01329466, -0.01333693,
1853  -0.01337577, -0.01341125, -0.01344345, -0.01347243,
1854  -0.01349823, -0.01352089, -0.01354045, -0.01355700,
1855  -0.01357068, -0.01358164, -0.01359003, -0.01359587,
1856  -0.01359901, -0.01359931, -0.01359661, -0.01359087,
1857  -0.01358219, -0.01357065, -0.01355637, -0.01353935,
1858  -0.01351949, -0.01349670, -0.01347088, -0.01344214,
1859  -0.01341078, -0.01337715, -0.01334158, -0.01330442,
1860  -0.01326601, -0.01322671, -0.01318689, -0.01314692,
1861  -0.01310123, -0.01306470, -0.01302556, -0.01298381,
1862  -0.01293948, -0.01289255, -0.01284305, -0.01279095,
1863  -0.01273625, -0.01267893, -0.01261897, -0.01255632,
1864  -0.01249096, -0.01242283, -0.01235190, -0.01227827,
1865  -0.01220213, -0.01212366, -0.01204304, -0.01196032,
1866  -0.01187543, -0.01178829, -0.01169884, -0.01160718,
1867  -0.01151352, -0.01141809, -0.01132111, -0.01122272,
1868  -0.01112304, -0.01102217, -0.01092022, -0.01081730,
1869  -0.01071355, -0.01060912, -0.01050411, -0.01039854,
1870  -0.01029227, -0.01018521, -0.01007727, -0.00996859,
1871  -0.00985959, -0.00975063, -0.00964208, -0.00953420,
1872  -0.00942723, -0.00932135, -0.00921677, -0.00911364,
1873  -0.00901208, -0.00891220, -0.00881412, -0.00871792,
1874  -0.00862369, -0.00853153, -0.00844149, -0.00835360,
1875  -0.00826785, -0.00818422, -0.00810267, -0.00802312,
1876  -0.00794547, -0.00786959, -0.00779533, -0.00772165,
1877  -0.00764673, -0.00756886, -0.00748649, -0.00739905,
1878  -0.00730681, -0.00721006, -0.00710910, -0.00700419,
1879  -0.00689559, -0.00678354, -0.00666829, -0.00655007,
1880  -0.00642916, -0.00630579, -0.00618022, -0.00605267,
1881  -0.00592333, -0.00579240, -0.00566006, -0.00552651,
1882  -0.00539194, -0.00525653, -0.00512047, -0.00498390,
1883  -0.00484693, -0.00470969, -0.00457228, -0.00443482,
1884  -0.00429746, -0.00416034, -0.00402359, -0.00388738,
1885  -0.00375185, -0.00361718, -0.00348350, -0.00335100,
1886  -0.00321991, -0.00309043, -0.00296276, -0.00283698,
1887  -0.00271307, -0.00259098, -0.00247066, -0.00235210,
1888  -0.00223531, -0.00212030, -0.00200709, -0.00189576,
1889  -0.00178647, -0.00167936, -0.00157457, -0.00147216,
1890  -0.00137205, -0.00127418, -0.00117849, -0.00108498,
1891  -0.00099375, -0.00090486, -0.00081840, -0.00073444,
1892  -0.00065309, -0.00057445, -0.00049860, -0.00042551,
1893  -0.00035503, -0.00028700, -0.00022125, -0.00015761,
1894  -0.00009588, -0.00003583, 0.00002272, 0.00007975,
1895  0.00013501, 0.00018828, 0.00023933, 0.00028784,
1896  0.00033342, 0.00037572, 0.00041438, 0.00044939,
1897  0.00048103, 0.00050958, 0.00053533, 0.00055869,
1898  0.00058015, 0.00060022, 0.00061935, 0.00063781,
1899  0.00065568, 0.00067303, 0.00068991, 0.00070619,
1900  0.00072155, 0.00073567, 0.00074826, 0.00075912,
1901  0.00076811, 0.00077509, 0.00077997, 0.00078275,
1902  0.00078351, 0.00078237, 0.00077943, 0.00077484,
1903  0.00076884, 0.00076160, 0.00075335, 0.00074423,
1904  0.00073442, 0.00072404, 0.00071323, 0.00070209,
1905  0.00069068, 0.00067906, 0.00066728, 0.00065534,
1906  0.00064321, 0.00063086, 0.00061824, 0.00060534,
1907  0.00059211, 0.00057855, 0.00056462, 0.00055033,
1908  0.00053566, 0.00052063, 0.00050522, 0.00048949,
1909  0.00047349, 0.00045728, 0.00044092, 0.00042447,
1910  0.00040803, 0.00039166, 0.00037544, 0.00035943,
1911  0.00034371, 0.00032833, 0.00031333, 0.00029874,
1912  0.00028452, 0.00027067, 0.00025715, 0.00024395,
1913  0.00023104, 0.00021842, 0.00020606, 0.00019398,
1914  0.00018218, 0.00017069, 0.00015953, 0.00014871,
1915  0.00013827, 0.00012823, 0.00011861, 0.00010942,
1916  0.00010067, 0.00009236, 0.00008448, 0.00007703,
1917  0.00006999, 0.00006337, 0.00005714, 0.00005129,
1918  0.00004583, 0.00004072, 0.00003597, 0.00003157,
1919  0.00002752, 0.00002380, 0.00002042, 0.00001736,
1920  0.00001461, 0.00001215, 0.00000998, 0.00000807,
1921  0.00000641, 0.00000499, 0.00000378, 0.00000278,
1922  0.00000196, 0.00000132, 0.00000082, 0.00000046,
1923  0.00000020, 0.00000005, -0.00000003, -0.00000006,
1924  -0.00000004, -0.00000001, 0.00000001, 0.00000001,
1925  0.00000001, 0.00000001, -0.00000001, -0.00000004,
1926  -0.00000005, -0.00000003, 0.00000005, 0.00000020,
1927  0.00000043, 0.00000077, 0.00000123, 0.00000183,
1928  0.00000257, 0.00000348, 0.00000455, 0.00000581,
1929  0.00000727, 0.00000893, 0.00001080, 0.00001290,
1930  0.00001522, 0.00001778, 0.00002057, 0.00002362,
1931  0.00002691, 0.00003044, 0.00003422, 0.00003824,
1932  0.00004250, 0.00004701, 0.00005176, 0.00005676,
1933  0.00006200, 0.00006749, 0.00007322, 0.00007920,
1934  0.00008541, 0.00009186, 0.00009854, 0.00010543,
1935  0.00011251, 0.00011975, 0.00012714, 0.00013465,
1936  0.00014227, 0.00014997, 0.00015775, 0.00016558,
1937  0.00017348, 0.00018144, 0.00018947, 0.00019756,
1938  0.00020573, 0.00021399, 0.00022233, 0.00023076,
1939  0.00023924, 0.00024773, 0.00025621, 0.00026462,
1940  0.00027293, 0.00028108, 0.00028904, 0.00029675,
1941  0.00030419, 0.00031132, 0.00031810, 0.00032453,
1942  0.00033061, 0.00033632, 0.00034169, 0.00034672,
1943  0.00035142, 0.00035580, 0.00035988, 0.00036369,
1944  0.00036723, 0.00037053, 0.00037361, 0.00037647,
1945  0.00037909, 0.00038145, 0.00038352, 0.00038527,
1946  0.00038663, 0.00038757, 0.00038801, 0.00038790,
1947  0.00038717, 0.00038572, 0.00038350, 0.00038044,
1948  0.00037651, 0.00037170, 0.00036597, 0.00035936,
1949  0.00035191, 0.00034370, 0.00033480, 0.00032531,
1950  0.00031537, 0.00030512, 0.00029470, 0.00028417,
1951  0.00027354, 0.00026279, 0.00025191, 0.00024081,
1952  0.00022933, 0.00021731, 0.00020458, 0.00019101,
1953  0.00017654, 0.00016106, 0.00014452, 0.00012694,
1954  0.00010848, 0.00008929, 0.00006953, 0.00004935,
1955  0.00002884, 0.00000813, -0.00001268, -0.00003357,
1956  -0.00005457, -0.00007574, -0.00009714, -0.00011882,
1957  -0.00014082, -0.00016318, -0.00018595, -0.00020912,
1958  -0.00023265, -0.00025650, -0.00028060, -0.00030492,
1959  -0.00032941, -0.00035400, -0.00037865, -0.00040333,
1960  -0.00042804, -0.00045279, -0.00047759, -0.00050243,
1961  -0.00052728, -0.00055209, -0.00057685, -0.00060153,
1962  -0.00062611, -0.00065056, -0.00067485, -0.00069895,
1963  -0.00072287, -0.00074660, -0.00077013, -0.00079345,
1964  -0.00081653, -0.00083936, -0.00086192, -0.00088421,
1965  -0.00090619, -0.00092786, -0.00094919, -0.00097017,
1966  -0.00099077, -0.00101098, -0.00103077, -0.00105012,
1967  -0.00106904, -0.00108750, -0.00110549, -0.00112301,
1968  -0.00114005, -0.00115660, -0.00117265, -0.00118821,
1969  -0.00120325, -0.00121779, -0.00123180, -0.00124528,
1970  -0.00125822, -0.00127061, -0.00128243, -0.00129368,
1971  -0.00130435, -0.00131445, -0.00132395, -0.00133285,
1972  -0.00134113, -0.00134878, -0.00135577, -0.00136215,
1973  -0.00136797, -0.00137333, -0.00137834, -0.00138305,
1974  -0.00138748, -0.00139163, -0.00139551, -0.00139913,
1975  -0.00140249, -0.00140559, -0.00140844, -0.00141102,
1976  -0.00141334, -0.00141538, -0.00141714, -0.00141861,
1977  -0.00141978, -0.00142064, -0.00142117, -0.00142138,
1978  -0.00142125, -0.00142077, -0.00141992, -0.00141870,
1979  -0.00141710, -0.00141510, -0.00141268, -0.00140986,
1980  -0.00140663, -0.00140301, -0.00139900, -0.00139460,
1981  -0.00138981, -0.00138464, -0.00137908, -0.00137313,
1982  -0.00136680, -0.00136010, -0.00135301, -0.00134555,
1983  -0.00133772, -0.00132952, -0.00132095, -0.00131201,
1984  -0.00130272, -0.00129307, -0.00128309, -0.00127277,
1985  -0.00126211, -0.00125113, -0.00123981, -0.00122817,
1986  -0.00121622, -0.00120397, -0.00119141, -0.00117859,
1987  -0.00116552, -0.00115223, -0.00113877, -0.00112517,
1988  -0.00111144, -0.00109764, -0.00108377, -0.00106989,
1989 };
1990 
1991 /* Q30 representation of ff_aac_eld_window_512 table */
1993  0x003783ba, 0x005d04f4, 0x008ae226, 0x00c02021,
1994  0x00fb1804, 0x013a30a8, 0x017be9e6, 0x01bf296c,
1995  0x02033204, 0x0247502c, 0x028adab0, 0x02cd9568,
1996  0x030fa980, 0x03513dc0, 0x03927274, 0x03d363e0,
1997  0x04142e40, 0x0454edc0, 0x0495bd48, 0x04d6a060,
1998  0x051786d8, 0x05586548, 0x059935e8, 0x05d9feb0,
1999  0x061acea0, 0x065bb680, 0x069cc800, 0x06de13f0,
2000  0x071fa748, 0x07618b80, 0x07a3c7a8, 0x07e66da0,
2001  0x082999d0, 0x086d6590, 0x08b1e640, 0x08f72850,
2002  0x093d3120, 0x09840550, 0x09cba880, 0x0a1415f0,
2003  0x0a5d41b0, 0x0aa720d0, 0x0af1a9a0, 0x0b3cce70,
2004  0x0b887ec0, 0x0bd4ac10, 0x0c214a70, 0x0c6e5130,
2005  0x0cbbba50, 0x0d098130, 0x0d57a240, 0x0da61a60,
2006  0x0df4e620, 0x0e4401d0, 0x0e9369f0, 0x0ee31de0,
2007  0x0f332000, 0x0f837180, 0x0fd412a0, 0x10250260,
2008  0x10763f20, 0x10c7c660, 0x11199560, 0x116baa00,
2009  0x11be0400, 0x1210a1c0, 0x12638180, 0x12b69ee0,
2010  0x1309f3e0, 0x135d7ac0, 0x13b12dc0, 0x1404ffa0,
2011  0x1458dd40, 0x14acb720, 0x15008120, 0x15543260,
2012  0x15a7c460, 0x15fb3160, 0x164e7520, 0x16a193c0,
2013  0x16f49740, 0x17478720, 0x179a6720, 0x17ed3720,
2014  0x183ff460, 0x18929c20, 0x18e52b00, 0x19379c00,
2015  0x1989e900, 0x19dc0ca0, 0x1a2e0280, 0x1a7fc400,
2016  0x1ad14a00, 0x1b228ec0, 0x1b738ea0, 0x1bc44540,
2017  0x1c14ada0, 0x1c64c380, 0x1cb48440, 0x1d03f420,
2018  0x1d531c00, 0x1da20160, 0x1df0a660, 0x1e3f0860,
2019  0x1e8d2340, 0x1edaf340, 0x1f2875e0, 0x1f75a700,
2020  0x1fc281e0, 0x200f0380, 0x205b2ac0, 0x20a6f980,
2021  0x20f27200, 0x213d9600, 0x21886580, 0x21d2e040,
2022  0x221d0640, 0x2266d6c0, 0x22b05180, 0x22f97580,
2023  0x23424280, 0x238ab880, 0x23d2d780, 0x241aa040,
2024  0x246213c0, 0x24a93300, 0x24efff80, 0x25367b40,
2025  0x256f68c0, 0x25b53580, 0x25faa580, 0x263fb940,
2026  0x26847080, 0x26c8cbc0, 0x270ccb00, 0x27506e40,
2027  0x2793b600, 0x27d6a200, 0x281932c0, 0x285b6880,
2028  0x289d4400, 0x28dec5c0, 0x291feec0, 0x2960bf80,
2029  0x29a137c0, 0x29e15800, 0x2a212000, 0x2a609080,
2030  0x2a9fa980, 0x2ade6b40, 0x2b1cd600, 0x2b5aea00,
2031  0x2b98a740, 0x2bd60d80, 0x2c131cc0, 0x2c4fd500,
2032  0x2c8c3600, 0x2cc83f00, 0x2d03f040, 0x2d3f48c0,
2033  0x2d7a48c0, 0x2db4ef40, 0x2def3c40, 0x2e292ec0,
2034  0x2e62c700, 0x2e9c0400, 0x2ed4e580, 0x2f0d6ac0,
2035  0x2f4592c0, 0x2f7d5c80, 0x2fb4c6c0, 0x2febd140,
2036  0x30227b40, 0x3058c400, 0x308eab40, 0x30c43040,
2037  0x30f95100, 0x312e0d00, 0x31626240, 0x31965040,
2038  0x31c9d5c0, 0x31fcf240, 0x322fa480, 0x3261ec00,
2039  0x3293c7c0, 0x32c53680, 0x32f63780, 0x3326c9c0,
2040  0x3356ec00, 0x33869d00, 0x33b5db80, 0x33e4a700,
2041  0x3412fdc0, 0x3440df40, 0x346e4a80, 0x349b3e40,
2042  0x34c7ba00, 0x34f3bd80, 0x351f47c0, 0x354a5840,
2043  0x3574ee40, 0x359f0900, 0x35c8a840, 0x35f1cb80,
2044  0x361a71c0, 0x36429a80, 0x366a4580, 0x36917280,
2045  0x36b82100, 0x36de5180, 0x37040340, 0x372936c0,
2046  0x374dec40, 0x37722340, 0x3795dc40, 0x37b91780,
2047  0x37dbd600, 0x37fe18c0, 0x381fe080, 0x38412e00,
2048  0x38620280, 0x38825f40, 0x38a24540, 0x38c1b680,
2049  0x38e0b5c0, 0x38ff4540, 0x391d6800, 0x393b20c0,
2050  0x39587280, 0x39755fc0, 0x3991eb80, 0x39ae1a80,
2051  0x39c9f280, 0x39e57980, 0x3a00b600, 0x3a1bae00,
2052  0x3a366800, 0x3a50e9c0, 0x3a6b3a40, 0x3a8560c0,
2053  0x3a9f6640, 0x3ab95400, 0x3ad332c0, 0x3aed0680,
2054  0x3b06cf80, 0x3b208d40, 0x3b3a3e80, 0x3b53cb80,
2055  0x3b6d0780, 0x3b85c380, 0x3b9dd0c0, 0x3bb4eb40,
2056  0x3bcabac0, 0x3bdee680, 0x3bf11680, 0x3c011440,
2057  0x3c179ac0, 0x3c1c4f00, 0x3c21aa40, 0x3c278880,
2058  0x3c2dba80, 0x3c341140, 0x3c3a5e80, 0x3c409100,
2059  0x3c46b480, 0x3c4cd5c0, 0x3c530180, 0x3c593cc0,
2060  0x3c5f84c0, 0x3c65d640, 0x3c6c2e40, 0x3c728b40,
2061  0x3c78ee80, 0x3c7f5840, 0x3c85c940, 0x3c8c4240,
2062  0x3c92c380, 0x3c994cc0, 0x3c9fde40, 0x3ca67880,
2063  0x3cad1ac0, 0x3cb3c540, 0x3cba7800, 0x3cc132c0,
2064  0x3cc7f640, 0x3ccec280, 0x3cd59800, 0x3cdc76c0,
2065  0x3ce35e80, 0x3cea4f00, 0x3cf147c0, 0x3cf84900,
2066  0x3cff5340, 0x3d0666c0, 0x3d0d8400, 0x3d14ab40,
2067  0x3d1bdc00, 0x3d2315c0, 0x3d2a5880, 0x3d31a440,
2068  0x3d38f900, 0x3d405780, 0x3d47c040, 0x3d4f3300,
2069  0x3d56af40, 0x3d5e3500, 0x3d65c380, 0x3d6d5ac0,
2070  0x3d74fb40, 0x3d7ca540, 0x3d845900, 0x3d8c1680,
2071  0x3d93dd00, 0x3d9bac80, 0x3da38400, 0x3dab6400,
2072  0x3db34c80, 0x3dbb3dc0, 0x3dc33840, 0x3dcb3bc0,
2073  0x3dd347c0, 0x3ddb5bc0, 0x3de37780, 0x3deb9b00,
2074  0x3df3c600, 0x3dfbf940, 0x3e0434c0, 0x3e0c7840,
2075  0x3e14c3c0, 0x3e1d1640, 0x3e256f80, 0x3e2dcf40,
2076  0x3e363580, 0x3e3ea300, 0x3e4717c0, 0x3e4f9380,
2077  0x3e581600, 0x3e609e40, 0x3e692c40, 0x3e71bf80,
2078  0x3e7a5840, 0x3e82f740, 0x3e8b9c40, 0x3e944700,
2079  0x3e9cf780, 0x3ea5ad00, 0x3eae66c0, 0x3eb72500,
2080  0x3ebfe780, 0x3ec8af00, 0x3ed17b80, 0x3eda4d00,
2081  0x3ee32340, 0x3eebfd40, 0x3ef4dac0, 0x3efdbbc0,
2082  0x3f06a040, 0x3f0f88c0, 0x3f187540, 0x3f216600,
2083  0x3f2a5a80, 0x3f335200, 0x3f3c4c40, 0x3f454940,
2084  0x3f4e4940, 0x3f574c80, 0x3f605340, 0x3f695dc0,
2085  0x3f726b40, 0x3f7b7b40, 0x3f848dc0, 0x3f8da240,
2086  0x3f96b940, 0x3f9fd300, 0x3fa8f040, 0x3fb21080,
2087  0x3fbb33c0, 0x3fc459c0, 0x3fcd81c0, 0x3fd6abc0,
2088  0x3fdfd780, 0x3fe90480, 0x3ff23280, 0x3ffb6100,
2089  0x40049f80, 0x400dd080, 0x40170400, 0x40203880,
2090  0x40296f00, 0x4032a600, 0x403bde00, 0x40451680,
2091  0x404e4f00, 0x40578700, 0x4060be80, 0x4069f500,
2092  0x40732b80, 0x407c6280, 0x40859980, 0x408ed100,
2093  0x40980800, 0x40a13f00, 0x40aa7500, 0x40b3a980,
2094  0x40bcdd80, 0x40c61180, 0x40cf4500, 0x40d87800,
2095  0x40e1ab00, 0x40eadc80, 0x40f40c80, 0x40fd3a80,
2096  0x41066700, 0x410f9300, 0x4118bd80, 0x4121e700,
2097  0x412b0f80, 0x41343580, 0x413d5880, 0x41467980,
2098  0x414f9780, 0x4158b380, 0x4161cd80, 0x416ae580,
2099  0x4173fb00, 0x417d0d00, 0x41861b80, 0x418f2600,
2100  0x41982c80, 0x41a12f80, 0x41aa3000, 0x41b32c80,
2101  0x41bc2580, 0x41c51a00, 0x41ce0900, 0x41d6f300,
2102  0x41dfd800, 0x41e8b880, 0x41f19400, 0x41fa6b80,
2103  0x42033d00, 0x420c0900, 0x4214cf00, 0x421d8e00,
2104  0x42264680, 0x422ef980, 0x4237a680, 0x42404d80,
2105  0x4248ee00, 0x42518780, 0x425a1a00, 0x4262a480,
2106  0x426b2800, 0x4273a400, 0x427c1980, 0x42848880,
2107  0x428cef80, 0x42954f00, 0x429da680, 0x42a5f500,
2108  0x42ae3b80, 0x42b67a00, 0x42beb100, 0x42c6e080,
2109  0x42cf0780, 0x42d72680, 0x42df3c00, 0x42e74880,
2110  0x42ef4c80, 0x42f74880, 0x42ff3c80, 0x43072880,
2111  0x430f0c80, 0x4316e800, 0x431eba00, 0x43268380,
2112  0x432e4480, 0x4335fd00, 0x433dae80, 0x43455800,
2113  0x434cfa00, 0x43549400, 0x435c2500, 0x4363ad80,
2114  0x436b2e00, 0x4372a700, 0x437a1800, 0x43818200,
2115  0x4388e400, 0x43903f00, 0x43979200, 0x439edd00,
2116  0x43a62080, 0x43ad5c80, 0x43b49180, 0x43bbbf80,
2117  0x43c2e800, 0x43ca0b00, 0x43d12980, 0x43d84280,
2118  0x43df5200, 0x43e65500, 0x43ed4800, 0x43f43080,
2119  0x43fb1c80, 0x44021b80, 0x44093a00, 0x44106480,
2120  0x44176700, 0x441e0c00, 0x44241e00, 0x44297380,
2121  0x4425dc00, 0x44240180, 0x441ff300, 0x4419e300,
2122  0x44123f80, 0x44097500, 0x43ffe900, 0x43f5e700,
2123  0x43eb9f00, 0x43e13f00, 0x43d6f200, 0x43ccbd80,
2124  0x43c28400, 0x43b82780, 0x43ad8b00, 0x43a29c80,
2125  0x43975180, 0x438ba080, 0x437f8180, 0x4372fd00,
2126  0x43662b00, 0x43592480, 0x434c0000, 0x433ecd00,
2127  0x43319180, 0x43245300, 0x43171700, 0x4309da80,
2128  0x42fc9300, 0x42ef3500, 0x42e1b600, 0x42d40280,
2129  0x42c60000, 0x42b79300, 0x42a8a180, 0x42991a00,
2130  0x4288f200, 0x42782100, 0x42669e00, 0x42546880,
2131  0x42418800, 0x422e0480, 0x4219e500, 0x42053680,
2132  0x41f00980, 0x41da7080, 0x41c47b00, 0x41ae3600,
2133  0x4197ab80, 0x4180e400, 0x4169e780, 0x4152bb00,
2134  0x413b5e80, 0x4123d180, 0x410c1480, 0x40f42100,
2135  0x40dbed00, 0x40c36c80, 0x40aa9600, 0x40915f80,
2136  0x4077c100, 0x405db280, 0x40432c80, 0x40282580,
2137  0x400c9280, 0x3ff068c0, 0x3fd39dc0, 0x3fb62bc0,
2138  0x3f981200, 0x3f795080, 0x3f59e780, 0x3f39ebc0,
2139  0x3f198680, 0x3ef8e100, 0x3ed82440, 0x3eb76c80,
2140  0x3e96c940, 0x3e764900, 0x3e55f980, 0x3e35cb00,
2141  0x3e1590c0, 0x3df51cc0, 0x3dd44200, 0x3db2e640,
2142  0x3d910200, 0x3d6e8e40, 0x3d4b8480, 0x3d27e600,
2143  0x3d03bc00, 0x3cdf0fc0, 0x3cb9eb80, 0x3c946240,
2144  0x3c6e9180, 0x3c489700, 0x3c229000, 0x3bfc95c0,
2145  0x3bd6bd00, 0x3bb11a80, 0x3b8bc180, 0x3b669bc0,
2146  0x3b416a00, 0x3b1beb80, 0x3af5e140, 0x3acf3300,
2147  0x3aa7ef80, 0x3a802780, 0x3a57eb80, 0x3a2f5880,
2148  0x3a069640, 0x39ddcd40, 0x39b524c0, 0x398ca540,
2149  0x39643800, 0x393bc540, 0x39133580, 0x38ea7ac0,
2150  0x38c19040, 0x389871c0, 0x386f1b40, 0x38458e00,
2151  0x381bd000, 0x37f1e780, 0x37c7db00, 0x379db080,
2152  0x37736e80, 0x37491b00, 0x371ebcc0, 0x36f45980,
2153  0x36c96600, 0x369ed300, 0x36740380, 0x3648ffc0,
2154  0x361dcf40, 0x35f27a00, 0x35c70780, 0x359b7f80,
2155  0x356fe9c0, 0x35444dc0, 0x3518b280, 0x34ed1940,
2156  0x34c17c00, 0x3495d4c0, 0x346a1d40, 0x343e4300,
2157  0x34122840, 0x33e5ae00, 0x33b8b780, 0x338b4dc0,
2158  0x335d9f00, 0x332fdc00, 0x33023440, 0x32d4cc40,
2159  0x32a7bc80, 0x327b1d40, 0x324f04c0, 0x32235280,
2160  0x31f7b100, 0x31cbc7c0, 0x319f4140, 0x3171fb40,
2161  0x31440840, 0x31157d00, 0x30e66e80, 0x30b6fc40,
2162  0x30875080, 0x30579600, 0x3027f700, 0x2ff89140,
2163  0x2fc976c0, 0x2f9ab880, 0x2f6c6780, 0x2f3e8780,
2164  0x2f111000, 0x2ee3f800, 0x2eb73480, 0x2e8a9840,
2165  0x2e5dd340, 0x2e3093c0, 0x2e028ac0, 0x2dd39680,
2166  0x2da3c480, 0x2d732380, 0x2d41c400, 0x2d0fd300,
2167  0x2cdd9ac0, 0x2cab6640, 0x2c797f00, 0x2c480d40,
2168  0x2c171700, 0x2be6a0c0, 0x2bb6ae80, 0x2b8739c0,
2169  0x2b583200, 0x2b298600, 0x2afb2400, 0x2accfa40,
2170  0x2a9ef500, 0x2a710100, 0x2a430ac0, 0x2a14f9c0,
2171  0x29e6b0c0, 0x29b81240, 0x29890140, 0x29596900,
2172  0x29293e00, 0x28f87500, 0x28c70340, 0x2894efc0,
2173  0x28625140, 0x282f4040, 0x27fbd5c0, 0x27c83540,
2174  0x27948ec0, 0x27611240, 0x272def80, 0x26fb4cc0,
2175  0x26c94780, 0x2697fcc0, 0x26678880, 0x2637f740,
2176  0x26094540, 0x25db6dc0, 0x25ae6b40, 0x25821680,
2177  0x255627c0, 0x252a55c0, 0x24fe5680, 0x24d1db40,
2178  0x24a48fc0, 0x24761f40, 0x244637c0, 0x2414c900,
2179  0x23e20240, 0x23ae1740, 0x23793bc0, 0x2343cc00,
2180  0x230e4ac0, 0x22d93c80, 0x22a52400, 0x22725180,
2181  0x2240e480, 0x2210f9c0, 0x21e2ab40, 0x21b5c7c0,
2182  0x2189d2c0, 0x215e4d40, 0x2132b900, 0x2106ba80,
2183  0x20da1940, 0x20ac9d80, 0x207e11c0, 0x204e77c0,
2184  0x201e0880, 0x1fecfea0, 0x1fbb94e0, 0x1f8a0500,
2185  0x1f59d340, 0x1f27ac20, 0x1ef67c60, 0x1ec64e40,
2186  0x1e96fdc0, 0x1e686400, 0x1e3a5a00, 0x1e0cae80,
2187  0x1ddf25e0, 0x1db18460, 0x1d839020, 0x1d5536e0,
2188  0x1d268e80, 0x1cf7ae60, 0x1cc8aea0, 0x1c99af00,
2189  0x1c6ad820, 0x1c3c5280, 0x1c0e4500, 0x1be0ab60,
2190  0x1bb35620, 0x1b861400, 0x1b58b480, 0x1b2b1a00,
2191  0x1afd39c0, 0x1acf09a0, 0x1aa080c0, 0x1a71b020,
2192  0x1a42c2a0, 0x1a13e420, 0x19e53fc0, 0x19b6eb00,
2193  0x1988e620, 0x195b3060, 0x192dc8a0, 0x1900a8a0,
2194  0x18d3c4e0, 0x18a711e0, 0x187a83e0, 0x184e10e0,
2195  0x1821b060, 0x17f55a00, 0x17c90580, 0x179cb100,
2196  0x177060a0, 0x17441880, 0x1717dd20, 0x16ebb080,
2197  0x16bf9260, 0x169382e0, 0x166781c0, 0x163b8f80,
2198  0x160fade0, 0x15e3de40, 0x15b82220, 0x158c7ae0,
2199  0x1560ea80, 0x15357240, 0x150a1400, 0x14ded020,
2200  0x14b3a640, 0x148895a0, 0x145d9dc0, 0x1432bde0,
2201  0x1407f540, 0x13dd4380, 0x13b2a860, 0x13882460,
2202  0x135db880, 0x133365a0, 0x13092cc0, 0x12df0e60,
2203  0x12b50aa0, 0x128b2120, 0x12615200, 0x12379da0,
2204  0x120e04c0, 0x11e48820, 0x11bb2860, 0x1191e600,
2205  0x1168c080, 0x113fb7a0, 0x1116cb40, 0x10edfba0,
2206  0x10c54a00, 0x109cb7a0, 0x10744560, 0x104bf420,
2207  0x1023c3e0, 0x0ffbb500, 0x0fd3c790, 0x0fabfbe0,
2208  0x0f845290, 0x0f5ccc40, 0x0f356970, 0x0f0e2a60,
2209  0x0ee70eb0, 0x0ec01610, 0x0e994040, 0x0e728d50,
2210  0x0e4bfdf0, 0x0e2592c0, 0x0dff4c70, 0x0dd92af0,
2211  0x0db32da0, 0x0d8d53e0, 0x0d679cf0, 0x0d420880,
2212  0x0d1c9680, 0x0cf74700, 0x0cd219f0, 0x0cad0eb0,
2213  0x0c882450, 0x0c6359a0, 0x0c3ead90, 0x0c1a1f80,
2214  0x0bf5af40, 0x0bd15cf0, 0x0bad2870, 0x0b891440,
2215  0x0b652530, 0x0b416020, 0x0b1dca30, 0x0afa6810,
2216  0x0ad73ee0, 0x0ab45370, 0x0a91aac0, 0x0a6f49b0,
2217  0x0a4da7f0, 0x0a2c7e20, 0x0a0ba310, 0x09eb1220,
2218  0x09cac6e0, 0x09aabc70, 0x098aee40, 0x096b57a0,
2219  0x094bf400, 0x092cbea0, 0x090db2e0, 0x08eecef0,
2220  0x08d01360, 0x08b18110, 0x089318b0, 0x0874db00,
2221  0x0856c880, 0x0838e1b0, 0x081b2730, 0x07fd99a8,
2222  0x07e03a28, 0x07c309a8, 0x07a60910, 0x07893918,
2223  0x076c99d0, 0x07502b90, 0x0733ee70, 0x0717e2f8,
2224  0x06fc09b8, 0x06e06378, 0x06c4f0b8, 0x06a9b1c8,
2225  0x068ea6a0, 0x0673cf18, 0x06592b18, 0x063ebad0,
2226  0x06247ed0, 0x060a7780, 0x05f0a570, 0x05d708b8,
2227  0x05bda128, 0x05a46e80, 0x058b7078, 0x0572a740,
2228  0x055a1330, 0x0541b4d8, 0x05298c98, 0x05119a88,
2229  0x04f9de50, 0x04e257a0, 0x04cb0630, 0x04b3ea00,
2230  0x049d0378, 0x04865308, 0x046fd918, 0x045995a8,
2231  0x04438860, 0x042db0d0, 0x04180ea0, 0x0402a1d0,
2232  0x03ed6abc, 0x03d869b8, 0x03c39f28, 0x03af0af0,
2233  0x039aaca0, 0x038683b4, 0x03728fc0, 0x035ed0b0,
2234  0x034b46c4, 0x0337f254, 0x0324d3a0, 0x0311eab0,
2235  0x02ff370c, 0x02ecb85c, 0x02da6e34, 0x02c858a8,
2236  0x02b67820, 0x02a4cd28, 0x02935820, 0x02821920,
2237  0x02710fac, 0x02603b54, 0x024f9bb4, 0x023f308c,
2238  0x022ef9e8, 0x021ef7c8, 0x020f2a40, 0x01ff908e,
2239  0x01f02974, 0x01e0f38a, 0x01d1ed94, 0x01c316d6,
2240  0x01b46f5e, 0x01a5f720, 0x0197ae28, 0x018994ea,
2241  0x017bac54, 0x016df546, 0x016070ae, 0x01532078,
2242  0x01460760, 0x01392834, 0x012c85a4, 0x01201f7a,
2243  0x0113f27c, 0x0107fb6c, 0x00fc36fd, 0x00f0a2d5,
2244  0x00e53d51, 0x00da050f, 0x00cef88c, 0x00c41869,
2245  0x00b9671f, 0x00aee754, 0x00a49b80, 0x009a8384,
2246  0x00909ca6, 0x0086e400, 0x007d56e3, 0x0073f48e,
2247  0x006abe70, 0x0061b5de, 0x0058dc65, 0x005033b4,
2248  0x0047be30, 0x003f7e30, 0x00377619, 0x002fa4d4,
2249  0x002805ee, 0x002094cb, 0x00194cb8, 0x00122856,
2250  0x000b215c, 0x00043148, 0xfffd51f0, 0xfff683a0,
2251  0xffefcd4d, 0xffe9362f, 0xffe2c57d, 0xffdc855c,
2252  0xffd682c4, 0xffd0cad4, 0xffcb6a2c, 0xffc663bc,
2253  0xffc1b06f, 0xffbd48e1, 0xffb92570, 0xffb53a54,
2254  0xffb1779c, 0xffadcd38, 0xffaa2b42, 0xffa68855,
2255  0xffa2e141, 0xff9f332c, 0xff9b7b9c, 0xff97bf2e,
2256  0xff9409e2, 0xff9067e2, 0xff8ce556, 0xff898bf0,
2257  0xff866306, 0xff8371d0, 0xff80bf63, 0xff7e4eba,
2258  0xff7c1eaa, 0xff7a2e04, 0xff787b47, 0xff770280,
2259  0xff75bd06, 0xff74a3f7, 0xff73b0b2, 0xff72dd02,
2260  0xff72237e, 0xff717ebe, 0xff70e94c, 0xff705f59,
2261  0xff6fde6a, 0xff6f6426, 0xff6eee40, 0xff6e7d0b,
2262  0xff6e1359, 0xff6db403, 0xff6d61f8, 0xff6d2054,
2263  0xff6cf267, 0xff6cdb76, 0xff6cdebb, 0xff6cff47,
2264  0xff6d3fc9, 0xff6da306, 0xff6e2b82, 0xff6eda13,
2265  0xff6fad6d, 0xff70a463, 0xff71bd9d, 0xff72f662,
2266  0xff744a80, 0xff75b5c4, 0xff773409, 0xff78c0a6,
2267  0xff7a5693, 0xff7bf0dc, 0xff7d8abb, 0xff7f2301,
2268  0xff80bc08, 0xff825854, 0xff83fa56, 0xff85a55c,
2269  0xff875d22, 0xff892598, 0xff8b025d, 0xff8cf53c,
2270  0xff8efdf4, 0xff911c48, 0xff934fc9, 0xff959675,
2271  0xff97ec86, 0xff9a4e35, 0xff9cb7d2, 0xff9f26cc,
2272  0xffa199ce, 0xffa40f74, 0xffa6867c, 0xffa8feb2,
2273  0xffab78e0, 0xffadf5c7, 0xffb07640, 0xffb2fba0,
2274  0xffb587a2, 0xffb81bfb, 0xffbaba46, 0xffbd6236,
2275  0xffc011a8, 0xffc2c679, 0xffc57e84, 0xffc83894,
2276  0xffcaf41a, 0xffcdb0b8, 0xffd06e17, 0xffd32bf7,
2277  0xffd5ea38, 0xffd8a8c3, 0xffdb6764, 0xffde25fb,
2278  0xffe0e471, 0xffe3a2b2, 0xffe66087, 0xffe91da6,
2279  0xffebd978, 0xffee9351, 0xfff14ab0, 0xfff3fef6,
2280  0xfff6af94, 0xfff95c0c, 0xfffc03c7, 0xfffea659,
2281  0x00015885, 0x0003f2e9, 0x00068a73, 0x00091e8d,
2282  0x000bae7f, 0x000e39bf, 0x0010bf96, 0x00133f78,
2283  0x0015b8c4, 0x00182ae4, 0x001a9558, 0x001cf7b2,
2284  0x001f51e0, 0x0021a3b4, 0x0023ed25, 0x00262df2,
2285  0x002865c5, 0x002a9469, 0x002cb967, 0x002ed4aa,
2286  0x0030e607, 0x0032ed88, 0x0034eb2f, 0x0036de23,
2287  0x0038c503, 0x003a9e4c, 0x003c68a6, 0x003e23dd,
2288  0x003fd0db, 0x00417083, 0x0043038b, 0x00448adf,
2289  0x00460740, 0x0047799c, 0x0048e2b2, 0x004a42af,
2290  0x004b98fb, 0x004ce50b, 0x004e2654, 0x004f5b5d,
2291  0x005081c3, 0x00519716, 0x00529920, 0x005386d0,
2292  0x0054603f, 0x00552581, 0x0055d6cc, 0x00567558,
2293  0x0057033c, 0x005782b4, 0x0057f5b6, 0x00585e46,
2294  0x0058be68, 0x005917ff, 0x00596ce4, 0x0059bcc0,
2295  0x005a053a, 0x005a43ee, 0x005a76ae, 0x005a9b37,
2296  0x005aaf38, 0x005ab07a, 0x005a9cef, 0x005a7349,
2297  0x005a3328, 0x0059dc0a, 0x00596db0, 0x0058e8e5,
2298  0x00584f98, 0x0057a3c0, 0x0056e738, 0x00561bec,
2299  0x005543df, 0x0054610b, 0x0053753e, 0x0052824e,
2300  0x005189f6, 0x00508dec, 0x004f8fc0, 0x004e8fd0,
2301  0x004d8d26, 0x004c86d7, 0x004b7c0a, 0x004a6b33,
2302  0x00495239, 0x00482f0e, 0x0046ffc4, 0x0045c201,
2303  0x00447337, 0x004310cc, 0x00419871, 0x004008e4,
2304  0x003e6231, 0x003ca460, 0x003acf8a, 0x0038e57a,
2305  0x0036e981, 0x0034defa, 0x0032c94b, 0x0030acc6,
2306  0x002e8eb4, 0x002c7452, 0x002a62aa, 0x00285bbf,
2307  0x00265eda, 0x00246b24, 0x00227f9c, 0x002098e7,
2308  0x001eb13b, 0x001cc2ef, 0x001ac899, 0x0018be3d,
2309  0x0016a198, 0x00147065, 0x00122897, 0x000fcbc5,
2310  0x000d5f03, 0x000ae77a, 0x00086a52, 0x0005eb92,
2311  0x00036e4a, 0x0000f57e, 0xfffe8414, 0xfffc1a78,
2312  0xfff9b6bb, 0xfff756d9, 0xfff4f8d0, 0xfff29add,
2313  0xfff03b87, 0xffedd94c, 0xffeb7295, 0xffe9072b,
2314  0xffe6981a, 0xffe4265b, 0xffe1b30e, 0xffdf3f2b,
2315  0xffdccb9e, 0xffda5993, 0xffd7ea0c, 0xffd57d60,
2316  0xffd31302, 0xffd0aa27, 0xffce4243, 0xffcbdb40,
2317  0xffc97595, 0xffc711a2, 0xffc4af9d, 0xffc24fa6,
2318  0xffbff1de, 0xffbd9699, 0xffbb3e44, 0xffb8e8d5,
2319  0xffb695f4, 0xffb44522, 0xffb1f627, 0xffafa8f0,
2320  0xffad5d91, 0xffab140a, 0xffa8cc1c, 0xffa68590,
2321  0xffa44066, 0xffa1fca0, 0xff9fba30, 0xff9d7902,
2322  0xff9b3916, 0xff98fa6d, 0xff96bd06, 0xff9480b6,
2323  0xff924532, 0xff900a24, 0xff8dcf41, 0xff8b9433,
2324  0xff895884, 0xff871bd3, 0xff84dd8a, 0xff829d34,
2325  0xff805a43, 0xff7e142d, 0xff7bca71, 0xff797c83,
2326  0xff7729e3, 0xff74d204, 0xff727451, 0xff70101e,
2327  0xff6da493, 0xff6b30d1, 0xff68b3f4, 0xff662d31,
2328  0xff639bd1, 0xff60ff09, 0xff5e562c, 0xff5ba3e0,
2329  0xff58ee39, 0xff563c22, 0xff5394f3, 0xff50fd1e,
2330  0xff4e7599, 0xff4bff32, 0xff499ad4, 0xff47490a,
2331  0xff450a36, 0xff42deb7, 0xff40c6cf, 0xff3ec2be,
2332  0xff3cd299, 0xff3af681, 0xff392e6a, 0xff377a4a,
2333  0xff35d9f7, 0xff344d44, 0xff32d3e8, 0xff316d96,
2334  0xff3019d9, 0xff2ed83a, 0xff2da82f, 0xff2c88bf,
2335  0xff2b78b4, 0xff2a76cc, 0xff298184, 0xff289890,
2336  0xff27bc7d, 0xff26ee21, 0xff262e28, 0xff257cdc,
2337  0xff24d9f4, 0xff244524, 0xff23be15, 0xff234488,
2338  0xff22d852, 0xff227947, 0xff22273d, 0xff21e1d2,
2339  0xff21a871, 0xff217a79, 0xff215748, 0xff213eca,
2340  0xff21319e, 0xff21305c, 0xff213baf, 0xff2153c2,
2341  0xff21782b, 0xff21a892, 0xff21e477, 0xff222bda,
2342  0xff227f26, 0xff22debd, 0xff234b09, 0xff23c394,
2343  0xff24471d, 0xff24d42b, 0xff25695c, 0xff260538,
2344  0xff26a652, 0xff274b28, 0xff27f22d, 0xff2899d2,
2345  0xff295975, 0xff29f2ad, 0xff2a96d7, 0xff2b45f4,
2346  0xff2bffe3, 0xff2cc4ba, 0xff2d9458, 0xff2e6ede,
2347  0xff2f544c, 0xff3044b7, 0xff314034, 0xff3246fa,
2348  0xff33591e, 0xff3476e0, 0xff35a060, 0xff36d534,
2349  0xff38148f, 0xff395daf, 0xff3aafd4, 0xff3c0ac8,
2350  0xff3d6ed6, 0xff3edc54, 0xff405382, 0xff41d3f5,
2351  0xff435ccc, 0xff44ed0f, 0xff4683d3, 0xff482080,
2352  0xff49c297, 0xff4b69ab, 0xff4d1547, 0xff4ec4f5,
2353  0xff50781d, 0xff522e20, 0xff53e692, 0xff55a15d,
2354  0xff575f17, 0xff592022, 0xff5ae4de, 0xff5cacb4,
2355  0xff5e75e2, 0xff603ee5, 0xff62062f, 0xff63caab,
2356  0xff658b55, 0xff67476d, 0xff68fe11, 0xff6aaea0,
2357  0xff6c5899, 0xff6dfb86, 0xff6f96e7, 0xff712a65,
2358  0xff72b59f, 0xff74382b, 0xff75b1d3, 0xff772276,
2359  0xff788a20, 0xff79e8e5, 0xff7b3ef0, 0xff7c8c98,
2360  0xff7dd249, 0xff7f108c, 0xff804804, 0xff817d0e,
2361  0xff82b74a, 0xff83fde6, 0xff855762, 0xff86c622,
2362  0xff884904, 0xff89ded1, 0xff8b8646, 0xff8d3e4c,
2363  0xff8f05cc, 0xff90dbc6, 0xff92bf2a, 0xff94af04,
2364  0xff96aa26, 0xff98af9a, 0xff9abe48, 0xff9cd543,
2365  0xff9ef3c1, 0xffa118ea, 0xffa343fd, 0xffa57423,
2366  0xffa7a890, 0xffa9e084, 0xffac1b31, 0xffae5802,
2367  0xffb09680, 0xffb2d621, 0xffb51678, 0xffb75704,
2368  0xffb99726, 0xffbbd645, 0xffbe13d7, 0xffc04f26,
2369  0xffc2879a, 0xffc4bc72, 0xffc6ed24, 0xffc918e3,
2370  0xffcb3eb8, 0xffcd5dcc, 0xffcf7549, 0xffd184d8,
2371  0xffd38c8f, 0xffd58ca4, 0xffd7854d, 0xffd97694,
2372  0xffdb606e, 0xffdd42d1, 0xffdf1da8, 0xffe0f09b,
2373  0xffe2bb00, 0xffe47c41, 0xffe633c6, 0xffe7e150,
2374  0xffe98534, 0xffeb1fb4, 0xffecb10e, 0xffee3944,
2375  0xffefb7e9, 0xfff12cbe, 0xfff29762, 0xfff3f789,
2376  0xfff54cbe, 0xfff69695, 0xfff7d4b8, 0xfff90748,
2377  0xfffa2ee5, 0xfffb4c3c, 0xfffc6003, 0xfffd6af0,
2378  0xfffe6dda, 0xffff69b8, 0x00005f4b, 0x00014e7f,
2379  0x00023646, 0x000315b4, 0x0003ebd3, 0x0004b74a,
2380  0x00057677, 0x000627e2, 0x0006ca09, 0x00075ce1,
2381  0x0007e196, 0x00085955, 0x0008c556, 0x00092751,
2382  0x00098153, 0x0009d581, 0x000a25be, 0x000a732b,
2383  0x000abe1f, 0x000b06e4, 0x000b4db1, 0x000b91fa,
2384  0x000bd266, 0x000c0da0, 0x000c426e, 0x000c6ffb,
2385  0x000c95b0, 0x000cb2f7, 0x000cc76e, 0x000cd317,
2386  0x000cd647, 0x000cd17f, 0x000cc52b, 0x000cb1ea,
2387  0x000c98c0, 0x000c7a62, 0x000c57c7, 0x000c3187,
2388  0x000c0862, 0x000bdcd8, 0x000baf81, 0x000b80c7,
2389  0x000b50ec, 0x000b202f, 0x000aeec6, 0x000abcb2,
2390  0x000a89d2, 0x000a5605, 0x000a2116, 0x0009eafb,
2391  0x0009b37d, 0x00097a9d, 0x00094030, 0x00090440,
2392  0x0008c6b9, 0x000887ae, 0x0008470c, 0x00080512,
2393  0x0007c1f6, 0x00077df9, 0x0007395a, 0x0006f45b,
2394  0x0006af67, 0x00066abe, 0x000626b6, 0x0005e38f,
2395  0x0005a1a0, 0x0005611e, 0x00052234, 0x0004e502,
2396  0x0004a95d, 0x00046f46, 0x00043691, 0x0003ff33,
2397  0x0003c90d, 0x0003941f, 0x00036047, 0x00032d9c,
2398  0x0002fc1e, 0x0002cbed, 0x00029d1e, 0x00026fbc,
2399  0x000243f2, 0x000219d6, 0x0001f17d, 0x0001caf1,
2400  0x0001a63e, 0x00018363, 0x00016256, 0x00014316,
2401  0x0001258f, 0x000109cb, 0x0000efaa, 0x0000d720,
2402  0x0000c03a, 0x0000aacb, 0x000096de, 0x0000846a,
2403  0x0000736d, 0x000063d3, 0x000055a6, 0x000048d0,
2404  0x00003d47, 0x000032f6, 0x000029dc, 0x000021d9,
2405  0x00001ae3, 0x000014ee, 0x00000fdb, 0x00000ba9,
2406  0x00000839, 0x00000589, 0x00000370, 0x000001ee,
2407  0x000000d7, 0x00000036, 0xffffffe0, 0xffffffc0,
2408  0xffffffd5, 0xfffffff5, 0x0000000b, 0x0000000b,
2409  0x0000000b, 0x0000000b, 0xfffffff5, 0xffffffd5,
2410  0xffffffca, 0xffffffe0, 0x00000036, 0x000000d7,
2411  0x000001ce, 0x0000033b, 0x00000529, 0x000007ad,
2412  0x00000ac8, 0x00000e99, 0x00001316, 0x0000185e,
2413  0x00001e7e, 0x00002575, 0x00002d4c, 0x0000361b,
2414  0x00003fd6, 0x00004a93, 0x00005647, 0x00006312,
2415  0x000070de, 0x00007fad, 0x00008f87, 0x0000a064,
2416  0x0000b242, 0x0000c52d, 0x0000d919, 0x0000ee12,
2417  0x0001040c, 0x00011b13, 0x0001331b, 0x00014c30,
2418  0x0001663c, 0x0001814a, 0x00019d4f, 0x0001ba35,
2419  0x0001d7e7, 0x0001f645, 0x00021544, 0x000234c3,
2420  0x000254b9, 0x00027505, 0x000295a7, 0x0002b67e,
2421  0x0002d7a1, 0x0002f904, 0x00031ab2, 0x00033ca0,
2422  0x00035ee5, 0x0003818a, 0x0003a485, 0x0003c7e1,
2423  0x0003eb72, 0x00040f0e, 0x0004329f, 0x000455e6,
2424  0x000478c0, 0x00049aef, 0x0004bc52, 0x0004dca9,
2425  0x0004fbde, 0x000519c5, 0x00053635, 0x0005512d,
2426  0x00056aae, 0x000582a1, 0x00059927, 0x0005ae40,
2427  0x0005c1f6, 0x0005d455, 0x0005e572, 0x0005f56d,
2428  0x00060446, 0x0006121e, 0x00061f09, 0x00062b08,
2429  0x00063605, 0x00063feb, 0x00064899, 0x00064ff0,
2430  0x000655a5, 0x00065996, 0x00065b6f, 0x00065af8,
2431  0x000657e9, 0x000651d4, 0x00064884, 0x00063bae,
2432  0x00062b33, 0x00061706, 0x0005fefd, 0x0005e344,
2433  0x0005c404, 0x0005a195, 0x00057c41, 0x00055473,
2434  0x00052ac2, 0x0004ffc4, 0x0004d410, 0x0004a7e5,
2435  0x00047b4f, 0x00044e39, 0x00042096, 0x0003f208,
2436  0x0003c1e1, 0x00038f77, 0x00035a12, 0x00032127,
2437  0x0002e476, 0x0002a389, 0x00025e29, 0x0002146d,
2438  0x0001c700, 0x00017682, 0x000123a1, 0x0000cefd,
2439  0x000078f7, 0x0000221a, 0xffffcad1, 0xffff7332,
2440  0xffff1b1e, 0xfffec253, 0xfffe6891, 0xfffe0da2,
2441  0xfffdb15c, 0xfffd5393, 0xfffcf412, 0xfffc92e3,
2442  0xfffc3032, 0xfffbcc29, 0xfffb6714, 0xfffb0113,
2443  0xfffa9a5b, 0xfffa3337, 0xfff9cbd4, 0xfff96450,
2444  0xfff8fcac, 0xfff894dc, 0xfff82cd8, 0xfff7c4a8,
2445  0xfff75c6d, 0xfff6f45e, 0xfff68c84, 0xfff62500,
2446  0xfff5bde8, 0xfff5575a, 0xfff4f179, 0xfff48c64,
2447  0xfff42810, 0xfff3c488, 0xfff361d7, 0xfff30008,
2448  0xfff29f3a, 0xfff23f78, 0xfff1e0d8, 0xfff1835b,
2449  0xfff1272a, 0xfff0cc46, 0xfff072cf, 0xfff01ad0,
2450  0xffefc469, 0xffef6fa4, 0xffef1ca3, 0xffeecb7a,
2451  0xffee7c1f, 0xffee2eb2, 0xffede33d, 0xffed99c1,
2452  0xffed5249, 0xffed0cde, 0xffecc98d, 0xffec8849,
2453  0xffec4934, 0xffec0c38, 0xffebd175, 0xffeb98eb,
2454  0xffeb62a4, 0xffeb2ead, 0xffeafd19, 0xffeacdea,
2455  0xffeaa129, 0xffea76cc, 0xffea4ef4, 0xffea299f,
2456  0xffea06e5, 0xffe9e6ce, 0xffe9c97d, 0xffe9aebb,
2457  0xffe99651, 0xffe97fd6, 0xffe96ad3, 0xffe95711,
2458  0xffe9447d, 0xffe93315, 0xffe922ce, 0xffe913a0,
2459  0xffe90588, 0xffe8f887, 0xffe8ec93, 0xffe8e1c1,
2460  0xffe8d806, 0xffe8cf77, 0xffe8c816, 0xffe8c1eb,
2461  0xffe8bd03, 0xffe8b967, 0xffe8b72e, 0xffe8b64d,
2462  0xffe8b6d8, 0xffe8b8dc, 0xffe8bc6c, 0xffe8c18a,
2463  0xffe8c840, 0xffe8d0a4, 0xffe8daca, 0xffe8e69e,
2464  0xffe8f42a, 0xffe9035a, 0xffe9142b, 0xffe926a0,
2465  0xffe93ab7, 0xffe95066, 0xffe967b8, 0xffe980ad,
2466  0xffe99b3a, 0xffe9b754, 0xffe9d511, 0xffe9f45b,
2467  0xffea1532, 0xffea3797, 0xffea5b89, 0xffea8108,
2468  0xffeaa7ff, 0xffead079, 0xffeafa55, 0xffeb259e,
2469  0xffeb5254, 0xffeb8061, 0xffebafdc, 0xffebe0ae,
2470  0xffec12ce, 0xffec462f, 0xffec7add, 0xffecb0a3,
2471  0xffece774, 0xffed1f32, 0xffed57a7, 0xffed90b2,
2472  0xffedca48, 0xffee042a, 0xffee3e57, 0xffee788e,
2473 };
2474 
2475 const DECLARE_ALIGNED(32, float, ff_aac_eld_window_480)[1800] = {
2476  0.00101191, 0.00440397, 0.00718669, 0.01072130,
2477  0.01459757, 0.01875954, 0.02308987, 0.02751541,
2478  0.03198130, 0.03643738, 0.04085290, 0.04522835,
2479  0.04957620, 0.05390454, 0.05821503, 0.06251214,
2480  0.06680463, 0.07109582, 0.07538014, 0.07965207,
2481  0.08390857, 0.08815177, 0.09238785, 0.09662163,
2482  0.10085860, 0.10510892, 0.10938110, 0.11367819,
2483  0.11800355, 0.12236410, 0.12676834, 0.13122384,
2484  0.13573476, 0.14030106, 0.14492340, 0.14960315,
2485  0.15433828, 0.15912396, 0.16395663, 0.16883310,
2486  0.17374837, 0.17869679, 0.18367394, 0.18867661,
2487  0.19370368, 0.19875413, 0.20382641, 0.20892055,
2488  0.21403775, 0.21917761, 0.22433899, 0.22952250,
2489  0.23472991, 0.23996189, 0.24521859, 0.25049930,
2490  0.25580312, 0.26112942, 0.26647748, 0.27184703,
2491  0.27723785, 0.28264967, 0.28808086, 0.29352832,
2492  0.29898979, 0.30446379, 0.30994292, 0.31541664,
2493  0.32087942, 0.32632772, 0.33176291, 0.33718641,
2494  0.34259612, 0.34799346, 0.35338857, 0.35878843,
2495  0.36419504, 0.36960630, 0.37501567, 0.38042067,
2496  0.38582069, 0.39121276, 0.39659312, 0.40195993,
2497  0.40731155, 0.41264382, 0.41795277, 0.42323670,
2498  0.42849480, 0.43372753, 0.43893452, 0.44411398,
2499  0.44927117, 0.45441882, 0.45956191, 0.46470167,
2500  0.46983016, 0.47493636, 0.48001827, 0.48507480,
2501  0.49010240, 0.49509781, 0.50005986, 0.50499037,
2502  0.50989790, 0.51478708, 0.51965805, 0.52450975,
2503  0.52933955, 0.53414668, 0.53893113, 0.54369178,
2504  0.54842731, 0.55313757, 0.55782259, 0.56248253,
2505  0.56711762, 0.57172819, 0.57631468, 0.58087761,
2506  0.58719976, 0.59173064, 0.59623644, 0.60071719,
2507  0.60517294, 0.60960372, 0.61400958, 0.61839056,
2508  0.62274670, 0.62707805, 0.63138475, 0.63566700,
2509  0.63992500, 0.64415895, 0.64836893, 0.65255499,
2510  0.65671715, 0.66085548, 0.66497005, 0.66906094,
2511  0.67312824, 0.67717199, 0.68119219, 0.68518882,
2512  0.68916187, 0.69311129, 0.69703698, 0.70093884,
2513  0.70481679, 0.70867071, 0.71250047, 0.71630596,
2514  0.72008705, 0.72384360, 0.72757549, 0.73128256,
2515  0.73496463, 0.73862141, 0.74225263, 0.74585799,
2516  0.74943730, 0.75299039, 0.75651711, 0.76001729,
2517  0.76349062, 0.76693670, 0.77035516, 0.77374564,
2518  0.77710790, 0.78044169, 0.78374678, 0.78702291,
2519  0.79026979, 0.79348715, 0.79667471, 0.79983215,
2520  0.80295914, 0.80605536, 0.80912047, 0.81215417,
2521  0.81515616, 0.81812616, 0.82106389, 0.82396915,
2522  0.82684176, 0.82968154, 0.83248830, 0.83526186,
2523  0.83800204, 0.84070866, 0.84338156, 0.84602058,
2524  0.84862556, 0.85119636, 0.85373292, 0.85623523,
2525  0.85870326, 0.86113701, 0.86353649, 0.86590173,
2526  0.86823275, 0.87052968, 0.87279275, 0.87502220,
2527  0.87721829, 0.87938130, 0.88151157, 0.88360940,
2528  0.88567517, 0.88770954, 0.88971328, 0.89168716,
2529  0.89363199, 0.89554856, 0.89743771, 0.89930025,
2530  0.90113740, 0.90295086, 0.90474240, 0.90651380,
2531  0.90826684, 0.91000335, 0.91172515, 0.91343416,
2532  0.91513276, 0.91682357, 0.91850924, 0.92019170,
2533  0.92187129, 0.92354778, 0.92522116, 0.92688597,
2534  0.92852960, 0.93013861, 0.93169897, 0.93319114,
2535  0.93458502, 0.93587626, 0.93694276, 0.93825562,
2536  0.93882222, 0.93910780, 0.93944183, 0.93981497,
2537  0.94021434, 0.94062629, 0.94103714, 0.94144084,
2538  0.94184042, 0.94223966, 0.94264206, 0.94304859,
2539  0.94345831, 0.94387033, 0.94428390, 0.94469895,
2540  0.94511572, 0.94553441, 0.94595520, 0.94637816,
2541  0.94680335, 0.94723080, 0.94766054, 0.94809253,
2542  0.94852674, 0.94896314, 0.94940178, 0.94984276,
2543  0.95028618, 0.95073213, 0.95118056, 0.95163139,
2544  0.95208451, 0.95253992, 0.95299770, 0.95345799,
2545  0.95392092, 0.95438653, 0.95485472, 0.95532539,
2546  0.95579847, 0.95627397, 0.95675201, 0.95723273,
2547  0.95771618, 0.95820232, 0.95869103, 0.95918218,
2548  0.95967573, 0.96017172, 0.96067026, 0.96117144,
2549  0.96167526, 0.96218157, 0.96269026, 0.96320119,
2550  0.96371437, 0.96422988, 0.96474782, 0.96526824,
2551  0.96579106, 0.96631614, 0.96684334, 0.96737257,
2552  0.96790390, 0.96843740, 0.96897315, 0.96951112,
2553  0.97005119, 0.97059318, 0.97113697, 0.97168253,
2554  0.97222994, 0.97277928, 0.97333058, 0.97388375,
2555  0.97443863, 0.97499505, 0.97555292, 0.97611230,
2556  0.97667326, 0.97723589, 0.97780016, 0.97836591,
2557  0.97893300, 0.97950127, 0.98007071, 0.98064139,
2558  0.98121342, 0.98178684, 0.98236156, 0.98293743,
2559  0.98351428, 0.98409205, 0.98467078, 0.98525056,
2560  0.98583146, 0.98641348, 0.98699650, 0.98758037,
2561  0.98816497, 0.98875030, 0.98933647, 0.98992356,
2562  0.99051163, 0.99110062, 0.99169038, 0.99228079,
2563  0.99287177, 0.99346341, 0.99405581, 0.99464907,
2564  0.99524320, 0.99583812, 0.99643375, 0.99702997,
2565  0.99762671, 0.99822386, 0.99882134, 0.99941903,
2566  1.00058131, 1.00118006, 1.00177930, 1.00237893,
2567  1.00297887, 1.00357902, 1.00417927, 1.00477954,
2568  1.00537972, 1.00597973, 1.00657959, 1.00717940,
2569  1.00777926, 1.00837925, 1.00897929, 1.00957926,
2570  1.01017901, 1.01077847, 1.01137769, 1.01197678,
2571  1.01257582, 1.01317482, 1.01377365, 1.01437217,
2572  1.01497025, 1.01556786, 1.01616510, 1.01676205,
2573  1.01735876, 1.01795514, 1.01855103, 1.01914627,
2574  1.01974076, 1.02033455, 1.02092772, 1.02152037,
2575  1.02211247, 1.02270387, 1.02329439, 1.02388387,
2576  1.02447229, 1.02505972, 1.02564624, 1.02623190,
2577  1.02681660, 1.02740017, 1.02798242, 1.02856326,
2578  1.02914272, 1.02972087, 1.03029778, 1.03087344,
2579  1.03144768, 1.03202035, 1.03259127, 1.03316042,
2580  1.03372788, 1.03429373, 1.03485801, 1.03542064,
2581  1.03598146, 1.03654030, 1.03709708, 1.03765185,
2582  1.03820470, 1.03875571, 1.03930488, 1.03985206,
2583  1.04039712, 1.04093989, 1.04148037, 1.04201865,
2584  1.04255481, 1.04308893, 1.04362093, 1.04415068,
2585  1.04467803, 1.04520292, 1.04572542, 1.04624566,
2586  1.04676376, 1.04727974, 1.04779350, 1.04830493,
2587  1.04881391, 1.04932048, 1.04982477, 1.05032693,
2588  1.05082705, 1.05132510, 1.05182098, 1.05231457,
2589  1.05280584, 1.05329485, 1.05378171, 1.05426654,
2590  1.05474937, 1.05523018, 1.05570892, 1.05618554,
2591  1.05666005, 1.05713251, 1.05760297, 1.05807149,
2592  1.05853828, 1.05900355, 1.05946756, 1.05993024,
2593  1.06039075, 1.06084806, 1.06130111, 1.06175099,
2594  1.06220164, 1.06265732, 1.06312146, 1.06358726,
2595  1.06403924, 1.06446186, 1.06484048, 1.06516440,
2596  1.06527864, 1.06498077, 1.06470196, 1.06425743,
2597  1.06372091, 1.06311464, 1.06246622, 1.06179277,
2598  1.06110808, 1.06042455, 1.05974495, 1.05906206,
2599  1.05836706, 1.05765243, 1.05691470, 1.05615178,
2600  1.05536069, 1.05454152, 1.05370030, 1.05284445,
2601  1.05198094, 1.05111433, 1.05024634, 1.04937859,
2602  1.04851245, 1.04764614, 1.04677586, 1.04589855,
2603  1.04501046, 1.04410500, 1.04317417, 1.04221010,
2604  1.04120649, 1.04016012, 1.03906851, 1.03792894,
2605  1.03674090, 1.03550649, 1.03422800, 1.03290769,
2606  1.03154944, 1.03015834, 1.02873938, 1.02729712,
2607  1.02583470, 1.02435463, 1.02285952, 1.02135114,
2608  1.01982974, 1.01829520, 1.01674752, 1.01518534,
2609  1.01360559, 1.01200510, 1.01038076, 1.00872996,
2610  1.00705045, 1.00533999, 1.00359618, 1.00181613,
2611  0.99999673, 0.99813477, 0.99622793, 0.99427571,
2612  0.99227814, 0.99023501, 0.98815128, 0.98603857,
2613  0.98390898, 0.98177413, 0.97964151, 0.97751528,
2614  0.97539999, 0.97329751, 0.97119933, 0.96909179,
2615  0.96696152, 0.96479824, 0.96259840, 0.96036028,
2616  0.95808180, 0.95576295, 0.95340622, 0.95101436,
2617  0.94859030, 0.94614009, 0.94367232, 0.94119555,
2618  0.93871796, 0.93624630, 0.93378636, 0.93134465,
2619  0.92892076, 0.92649974, 0.92406255, 0.92159041,
2620  0.91907411, 0.91651711, 0.91392425, 0.91130056,
2621  0.90865471, 0.90599838, 0.90334350, 0.90069934,
2622  0.89806435, 0.89543132, 0.89279335, 0.89014496,
2623  0.88748403, 0.88480945, 0.88211997, 0.87941558,
2624  0.87669794, 0.87396891, 0.87123030, 0.86848394,
2625  0.86573164, 0.86297523, 0.86021649, 0.85745725,
2626  0.85474342, 0.85193656, 0.84911455, 0.84627969,
2627  0.84343424, 0.84058046, 0.83772057, 0.83485680,
2628  0.83199134, 0.82912621, 0.82626143, 0.82339529,
2629  0.82052619, 0.81765147, 0.81476433, 0.81185593,
2630  0.80891701, 0.80594452, 0.80294885, 0.79994431,
2631  0.79694485, 0.79396166, 0.79100220, 0.78807349,
2632  0.78518123, 0.78231422, 0.77944709, 0.77655407,
2633  0.77361369, 0.77062281, 0.76758806, 0.76451506,
2634  0.76141145, 0.75828860, 0.75515892, 0.75203479,
2635  0.74892561, 0.74583682, 0.74277342, 0.73974008,
2636  0.73673754, 0.73376310, 0.73081444, 0.72788616,
2637  0.72496070, 0.72201426, 0.71902283, 0.71596990,
2638  0.71285541, 0.70968427, 0.70646064, 0.70319589,
2639  0.69991077, 0.69662714, 0.69336592, 0.69013742,
2640  0.68694302, 0.68378420, 0.68066143, 0.67757157,
2641  0.67450951, 0.67147030, 0.66844879, 0.66543949,
2642  0.66243677, 0.65943505, 0.65642754, 0.65340591,
2643  0.65036160, 0.64728630, 0.64417440, 0.64102268,
2644  0.63782771, 0.63458757, 0.63130628, 0.62799109,
2645  0.62464879, 0.62128816, 0.61792203, 0.61456438,
2646  0.61122915, 0.60792802, 0.60466971, 0.60146257,
2647  0.59831460, 0.59522876, 0.59220375, 0.58923859,
2648  0.58632936, 0.58346064, 0.58061078, 0.57775874,
2649  0.57488246, 0.57195790, 0.56896078, 0.56586637,
2650  0.56266594, 0.55937186, 0.55599898, 0.55256299,
2651  0.54909184, 0.54562376, 0.54219742, 0.53884728,
2652  0.53559047, 0.53243453, 0.52938894, 0.52645052,
2653  0.52358958, 0.52076862, 0.51795080, 0.51510761,
2654  0.51222179, 0.50927733, 0.50625944, 0.50317073,
2655  0.50002767, 0.49685021, 0.49364116, 0.49048690,
2656  0.48726128, 0.48404889, 0.48090875, 0.47783482,
2657  0.47481564, 0.47184024, 0.46889391, 0.46595836,
2658  0.46301611, 0.46005089, 0.45705924, 0.45404822,
2659  0.45102447, 0.44799543, 0.44497138, 0.44196397,
2660  0.43898547, 0.43604105, 0.43312057, 0.43020942,
2661  0.42729337, 0.42436272, 0.42141388, 0.41844400,
2662  0.41545081, 0.41244014, 0.40942464, 0.40641716,
2663  0.40342874, 0.40046292, 0.39751923, 0.39459758,
2664  0.39169692, 0.38881435, 0.38594643, 0.38308980,
2665  0.38024146, 0.37739896, 0.37455986, 0.37172187,
2666  0.36888463, 0.36604937, 0.36321735, 0.36038967,
2667  0.35756668, 0.35474832, 0.35193455, 0.34912542,
2668  0.34632129, 0.34352258, 0.34072974, 0.33794323,
2669  0.33516354, 0.33239114, 0.32962648, 0.32686967,
2670  0.32412042, 0.32137919, 0.31864044, 0.31588373,
2671  0.31309909, 0.31028631, 0.30745528, 0.30462678,
2672  0.30180656, 0.29899424, 0.29619082, 0.29339717,
2673  0.29061333, 0.28783935, 0.28507563, 0.28232266,
2674  0.27958067, 0.27684984, 0.27413017, 0.27142157,
2675  0.26872396, 0.26603737, 0.26336211, 0.26069855,
2676  0.25804700, 0.25540830, 0.25278329, 0.25017211,
2677  0.24757451, 0.24498713, 0.24240740, 0.23983550,
2678  0.23727200, 0.23471866, 0.23217624, 0.22964458,
2679  0.22712346, 0.22461258, 0.22211202, 0.21962197,
2680  0.21714290, 0.21467522, 0.21221877, 0.20977323,
2681  0.20733693, 0.20490860, 0.20248823, 0.20007615,
2682  0.19767358, 0.19528091, 0.19289781, 0.19052347,
2683  0.18815661, 0.18579693, 0.18344441, 0.18110010,
2684  0.17876595, 0.17644344, 0.17413400, 0.17183905,
2685  0.16956003, 0.16729836, 0.16505547, 0.16283278,
2686  0.15990780, 0.15776021, 0.15563325, 0.15352557,
2687  0.15143584, 0.14936270, 0.14730481, 0.14526081,
2688  0.14322937, 0.14120918, 0.13919977, 0.13720138,
2689  0.13521422, 0.13323852, 0.13127445, 0.12932216,
2690  0.12738181, 0.12545358, 0.12353773, 0.12163457,
2691  0.11974436, 0.11786730, 0.11600347, 0.11415293,
2692  0.11231573, 0.11049201, 0.10868196, 0.10688578,
2693  0.10510362, 0.10333551, 0.10158143, 0.09984133,
2694  0.09811524, 0.09640327, 0.09470556, 0.09302228,
2695  0.09135347, 0.08969907, 0.08805903, 0.08643326,
2696  0.08482183, 0.08322486, 0.08164249, 0.08007481,
2697  0.07852179, 0.07698335, 0.07545938, 0.07394984,
2698  0.07245482, 0.07097444, 0.06950883, 0.06805800,
2699  0.06662187, 0.06520031, 0.06379324, 0.06240065,
2700  0.06102266, 0.05965936, 0.05831084, 0.05697701,
2701  0.05565775, 0.05435290, 0.05306239, 0.05178628,
2702  0.05052464, 0.04927758, 0.04804510, 0.04682709,
2703  0.04562344, 0.04443405, 0.04325893, 0.04209822,
2704  0.04095208, 0.03982059, 0.03870371, 0.03760131,
2705  0.03651325, 0.03543944, 0.03437987, 0.03333454,
2706  0.03230348, 0.03128653, 0.03028332, 0.02929346,
2707  0.02831658, 0.02735252, 0.02640127, 0.02546283,
2708  0.02453725, 0.02362471, 0.02272547, 0.02183980,
2709  0.02096810, 0.02011108, 0.01926957, 0.01844439,
2710  0.01763565, 0.01684248, 0.01606394, 0.01529909,
2711  0.01454726, 0.01380802, 0.01308092, 0.01236569,
2712  0.01166273, 0.01097281, 0.01029671, 0.00963479,
2713  0.00898646, 0.00835089, 0.00772725, 0.00711521,
2714  0.00651513, 0.00592741, 0.00535249, 0.00479089,
2715  0.00424328, 0.00371041, 0.00319271, 0.00268947,
2716  0.00219928, 0.00172084, 0.00125271, 0.00079311,
2717  0.00034023, -0.00010786, -0.00055144, -0.00098865,
2718  -0.00141741, -0.00183557, -0.00224010, -0.00262725,
2719  -0.00299314, -0.00333475, -0.00365250, -0.00394867,
2720  -0.00422533, -0.00448528, -0.00473278, -0.00497252,
2721  -0.00520916, -0.00544584, -0.00568360, -0.00592326,
2722  -0.00616547, -0.00640861, -0.00664914, -0.00688354,
2723  -0.00710845, -0.00732136, -0.00752022, -0.00770289,
2724  -0.00786789, -0.00801521, -0.00814526, -0.00825839,
2725  -0.00835563, -0.00843882, -0.00850996, -0.00857097,
2726  -0.00862360, -0.00866943, -0.00871004, -0.00874688,
2727  -0.00878091, -0.00881277, -0.00884320, -0.00887248,
2728  -0.00890002, -0.00892494, -0.00894641, -0.00896355,
2729  -0.00897541, -0.00898104, -0.00897948, -0.00896990,
2730  -0.00895149, -0.00892346, -0.00888519, -0.00883670,
2731  -0.00877839, -0.00871058, -0.00863388, -0.00854936,
2732  -0.00845826, -0.00836179, -0.00826124, -0.00815807,
2733  -0.00805372, -0.00794953, -0.00784572, -0.00774156,
2734  -0.00763634, -0.00752929, -0.00741941, -0.00730556,
2735  -0.00718664, -0.00706184, -0.00693107, -0.00679443,
2736  -0.00665200, -0.00650428, -0.00635230, -0.00619718,
2737  -0.00603995, -0.00588133, -0.00572169, -0.00556143,
2738  -0.00540085, -0.00523988, -0.00507828, -0.00491582,
2739  -0.00475220, -0.00458693, -0.00441953, -0.00424950,
2740  -0.00407681, -0.00390204, -0.00372581, -0.00354874,
2741  -0.00337115, -0.00319318, -0.00301494, -0.00283652,
2742  -0.00265797, -0.00247934, -0.00230066, -0.00212197,
2743  -0.00194331, -0.00176471, -0.00158620, -0.00140787,
2744  -0.00122989, -0.00105244, -0.00087567, -0.00069976,
2745  -0.00052487, -0.00035115, -0.00017875, -0.00000782,
2746  0.00000779, 0.00017701, 0.00034552, 0.00051313,
2747  0.00067966, 0.00084492, 0.00100873, 0.00117093,
2748  0.00133133, 0.00148978, 0.00164611, 0.00180023,
2749  0.00195211, 0.00210172, 0.00224898, 0.00239383,
2750  0.00253618, 0.00267593, 0.00281306, 0.00294756,
2751  0.00307942, 0.00320864, 0.00333502, 0.00345816,
2752  0.00357762, 0.00369297, 0.00380414, 0.00391140,
2753  0.00401499, 0.00411524, 0.00421242, 0.00430678,
2754  0.00439859, 0.00448799, 0.00457487, 0.00465908,
2755  0.00474045, 0.00481857, 0.00489277, 0.00496235,
2756  0.00502666, 0.00508546, 0.00513877, 0.00518662,
2757  0.00522904, 0.00526648, 0.00529956, 0.00532895,
2758  0.00535532, 0.00537929, 0.00540141, 0.00542228,
2759  0.00544196, 0.00545981, 0.00547515, 0.00548726,
2760  0.00549542, 0.00549899, 0.00549732, 0.00548986,
2761  0.00547633, 0.00545664, 0.00543067, 0.00539849,
2762  0.00536061, 0.00531757, 0.00526993, 0.00521822,
2763  0.00516300, 0.00510485, 0.00504432, 0.00498194,
2764  0.00491822, 0.00485364, 0.00478862, 0.00472309,
2765  0.00465675, 0.00458939, 0.00452067, 0.00445003,
2766  0.00437688, 0.00430063, 0.00422062, 0.00413609,
2767  0.00404632, 0.00395060, 0.00384863, 0.00374044,
2768  0.00362600, 0.00350540, 0.00337934, 0.00324885,
2769  0.00311486, 0.00297849, 0.00284122, 0.00270458,
2770  0.00257013, 0.00243867, 0.00231005, 0.00218399,
2771  0.00206023, 0.00193766, 0.00181460, 0.00168938,
2772  0.00156050, 0.00142701, 0.00128830, 0.00114365,
2773  0.00099297, 0.00083752, 0.00067884, 0.00051845,
2774  0.00035760, 0.00019720, 0.00003813, -0.00011885,
2775  -0.00027375, -0.00042718, -0.00057975, -0.00073204,
2776  -0.00088453, -0.00103767, -0.00119192, -0.00134747,
2777  -0.00150411, -0.00166151, -0.00181932, -0.00197723,
2778  -0.00213493, -0.00229210, -0.00244849, -0.00260415,
2779  -0.00275928, -0.00291410, -0.00306879, -0.00322332,
2780  -0.00337759, -0.00353145, -0.00368470, -0.00383722,
2781  -0.00398892, -0.00413972, -0.00428967, -0.00443889,
2782  -0.00458749, -0.00473571, -0.00488366, -0.00503137,
2783  -0.00517887, -0.00532610, -0.00547302, -0.00561965,
2784  -0.00576598, -0.00591199, -0.00605766, -0.00620300,
2785  -0.00634801, -0.00649273, -0.00663727, -0.00678170,
2786  -0.00692617, -0.00707084, -0.00721583, -0.00736129,
2787  -0.00750735, -0.00765415, -0.00780184, -0.00795059,
2788  -0.00810058, -0.00825195, -0.00840487, -0.00855950,
2789  -0.00871607, -0.00887480, -0.00903596, -0.00919978,
2790  -0.00936650, -0.00953635, -0.00970931, -0.00988421,
2791  -0.01005916, -0.01023208, -0.01040130, -0.01056627,
2792  -0.01072678, -0.01088259, -0.01103348, -0.01117933,
2793  -0.01132004, -0.01145552, -0.01158573, -0.01171065,
2794  -0.01183025, -0.01194454, -0.01205352, -0.01215722,
2795  -0.01225572, -0.01234911, -0.01243749, -0.01252102,
2796  -0.01259985, -0.01267419, -0.01274437, -0.01281078,
2797  -0.01287379, -0.01293350, -0.01298972, -0.01304224,
2798  -0.01309086, -0.01313556, -0.01317644, -0.01321357,
2799  -0.01324707, -0.01327697, -0.01330334, -0.01332622,
2800  -0.01334570, -0.01336194, -0.01337510, -0.01338538,
2801  -0.01339276, -0.01339708, -0.01339816, -0.01339584,
2802  -0.01339014, -0.01338116, -0.01336903, -0.01335382,
2803  -0.01333545, -0.01331381, -0.01328876, -0.01326033,
2804  -0.01322880, -0.01319457, -0.01315806, -0.01311968,
2805  -0.01307987, -0.01303906, -0.01299769, -0.01295623,
2806  -0.01308207, -0.01304153, -0.01299802, -0.01295155,
2807  -0.01290215, -0.01284980, -0.01279450, -0.01273625,
2808  -0.01267501, -0.01261077, -0.01254347, -0.01247306,
2809  -0.01239950, -0.01232277, -0.01224304, -0.01216055,
2810  -0.01207554, -0.01198813, -0.01189829, -0.01180590,
2811  -0.01171090, -0.01161335, -0.01151352, -0.01141167,
2812  -0.01130807, -0.01120289, -0.01109626, -0.01098830,
2813  -0.01087916, -0.01076898, -0.01065793, -0.01054618,
2814  -0.01043380, -0.01032068, -0.01020670, -0.01009171,
2815  -0.00997585, -0.00985959, -0.00974338, -0.00962765,
2816  -0.00951273, -0.00939888, -0.00928634, -0.00917534,
2817  -0.00906604, -0.00895860, -0.00885313, -0.00874977,
2818  -0.00864862, -0.00854979, -0.00845337, -0.00835939,
2819  -0.00826785, -0.00817872, -0.00809195, -0.00800745,
2820  -0.00792506, -0.00784469, -0.00776588, -0.00768695,
2821  -0.00760568, -0.00752004, -0.00742875, -0.00733186,
2822  -0.00722976, -0.00712279, -0.00701130, -0.00689559,
2823  -0.00677595, -0.00665269, -0.00652610, -0.00639649,
2824  -0.00626417, -0.00612943, -0.00599252, -0.00585368,
2825  -0.00571315, -0.00557115, -0.00542792, -0.00528367,
2826  -0.00513864, -0.00499301, -0.00484693, -0.00470054,
2827  -0.00455395, -0.00440733, -0.00426086, -0.00411471,
2828  -0.00396904, -0.00382404, -0.00367991, -0.00353684,
2829  -0.00339502, -0.00325472, -0.00311618, -0.00297967,
2830  -0.00284531, -0.00271307, -0.00258290, -0.00245475,
2831  -0.00232860, -0.00220447, -0.00208236, -0.00196233,
2832  -0.00184450, -0.00172906, -0.00161620, -0.00150603,
2833  -0.00139852, -0.00129358, -0.00119112, -0.00109115,
2834  -0.00099375, -0.00089902, -0.00080705, -0.00071796,
2835  -0.00063185, -0.00054886, -0.00046904, -0.00039231,
2836  -0.00031845, -0.00024728, -0.00017860, -0.00011216,
2837  -0.00004771, 0.00001500, 0.00007600, 0.00013501,
2838  0.00019176, 0.00024595, 0.00029720, 0.00034504,
2839  0.00038902, 0.00042881, 0.00046456, 0.00049662,
2840  0.00052534, 0.00055114, 0.00057459, 0.00059629,
2841  0.00061684, 0.00063660, 0.00065568, 0.00067417,
2842  0.00069213, 0.00070935, 0.00072545, 0.00074005,
2843  0.00075283, 0.00076356, 0.00077209, 0.00077828,
2844  0.00078205, 0.00078350, 0.00078275, 0.00077992,
2845  0.00077520, 0.00076884, 0.00076108, 0.00075218,
2846  0.00074232, 0.00073170, 0.00072048, 0.00070881,
2847  0.00069680, 0.00068450, 0.00067201, 0.00065934,
2848  0.00064647, 0.00063335, 0.00061994, 0.00060621,
2849  0.00059211, 0.00057763, 0.00056274, 0.00054743,
2850  0.00053169, 0.00051553, 0.00049897, 0.00048206,
2851  0.00046487, 0.00044748, 0.00042996, 0.00041241,
2852  0.00039492, 0.00037759, 0.00036049, 0.00034371,
2853  0.00032732, 0.00031137, 0.00029587, 0.00028079,
2854  0.00026612, 0.00025183, 0.00023789, 0.00022428,
2855  0.00021097, 0.00019797, 0.00018530, 0.00017297,
2856  0.00016100, 0.00014942, 0.00013827, 0.00012757,
2857  0.00011736, 0.00010764, 0.00009841, 0.00008969,
2858  0.00008145, 0.00007369, 0.00006641, 0.00005958,
2859  0.00005320, 0.00004725, 0.00004171, 0.00003659,
2860  0.00003186, 0.00002752, 0.00002357, 0.00001999,
2861  0.00001679, 0.00001392, 0.00001140, 0.00000918,
2862  0.00000726, 0.00000562, 0.00000424, 0.00000309,
2863  0.00000217, 0.00000143, 0.00000088, 0.00000048,
2864  0.00000020, 0.00000004, -0.00000004, -0.00000006,
2865  -0.00000004, -0.00000000, 0.00000002, 0.00000000,
2866  0.00000000, 0.00000002, -0.00000000, -0.00000004,
2867  -0.00000005, -0.00000004, 0.00000004, 0.00000019,
2868  0.00000045, 0.00000083, 0.00000134, 0.00000201,
2869  0.00000285, 0.00000387, 0.00000510, 0.00000654,
2870  0.00000821, 0.00001011, 0.00001227, 0.00001468,
2871  0.00001735, 0.00002030, 0.00002352, 0.00002702,
2872  0.00003080, 0.00003486, 0.00003918, 0.00004379,
2873  0.00004866, 0.00005382, 0.00005924, 0.00006495,
2874  0.00007093, 0.00007719, 0.00008373, 0.00009053,
2875  0.00009758, 0.00010488, 0.00011240, 0.00012010,
2876  0.00012796, 0.00013596, 0.00014406, 0.00015226,
2877  0.00016053, 0.00016886, 0.00017725, 0.00018571,
2878  0.00019424, 0.00020286, 0.00021156, 0.00022037,
2879  0.00022928, 0.00023825, 0.00024724, 0.00025621,
2880  0.00026509, 0.00027385, 0.00028241, 0.00029072,
2881  0.00029874, 0.00030643, 0.00031374, 0.00032065,
2882  0.00032715, 0.00033325, 0.00033895, 0.00034425,
2883  0.00034917, 0.00035374, 0.00035796, 0.00036187,
2884  0.00036549, 0.00036883, 0.00037194, 0.00037479,
2885  0.00037736, 0.00037963, 0.00038154, 0.00038306,
2886  0.00038411, 0.00038462, 0.00038453, 0.00038373,
2887  0.00038213, 0.00037965, 0.00037621, 0.00037179,
2888  0.00036636, 0.00035989, 0.00035244, 0.00034407,
2889  0.00033488, 0.00032497, 0.00031449, 0.00030361,
2890  0.00029252, 0.00028133, 0.00027003, 0.00025862,
2891  0.00024706, 0.00023524, 0.00022297, 0.00021004,
2892  0.00019626, 0.00018150, 0.00016566, 0.00014864,
2893  0.00013041, 0.00011112, 0.00009096, 0.00007014,
2894  0.00004884, 0.00002718, 0.00000530, -0.00001667,
2895  -0.00003871, -0.00006090, -0.00008331, -0.00010600,
2896  -0.00012902, -0.00015244, -0.00017631, -0.00020065,
2897  -0.00022541, -0.00025052, -0.00027594, -0.00030159,
2898  -0.00032740, -0.00035332, -0.00037928, -0.00040527,
2899  -0.00043131, -0.00045741, -0.00048357, -0.00050978,
2900  -0.00053599, -0.00056217, -0.00058827, -0.00061423,
2901  -0.00064002, -0.00066562, -0.00069100, -0.00071616,
2902  -0.00074110, -0.00076584, -0.00079036, -0.00081465,
2903  -0.00083869, -0.00086245, -0.00088590, -0.00090901,
2904  -0.00093176, -0.00095413, -0.00097608, -0.00099758,
2905  -0.00101862, -0.00103918, -0.00105924, -0.00107879,
2906  -0.00109783, -0.00111635, -0.00113434, -0.00115181,
2907  -0.00116873, -0.00118510, -0.00120091, -0.00121615,
2908  -0.00123082, -0.00124490, -0.00125838, -0.00127125,
2909  -0.00128350, -0.00129511, -0.00130610, -0.00131643,
2910  -0.00132610, -0.00133509, -0.00134334, -0.00135069,
2911  -0.00135711, -0.00136272, -0.00136768, -0.00137225,
2912  -0.00137649, -0.00138042, -0.00138404, -0.00138737,
2913  -0.00139041, -0.00139317, -0.00139565, -0.00139785,
2914  -0.00139976, -0.00140137, -0.00140267, -0.00140366,
2915  -0.00140432, -0.00140464, -0.00140461, -0.00140423,
2916  -0.00140347, -0.00140235, -0.00140084, -0.00139894,
2917  -0.00139664, -0.00139388, -0.00139065, -0.00138694,
2918  -0.00138278, -0.00137818, -0.00137317, -0.00136772,
2919  -0.00136185, -0.00135556, -0.00134884, -0.00134170,
2920  -0.00133415, -0.00132619, -0.00131784, -0.00130908,
2921  -0.00129991, -0.00129031, -0.00128031, -0.00126990,
2922  -0.00125912, -0.00124797, -0.00123645, -0.00122458,
2923  -0.00121233, -0.00119972, -0.00118676, -0.00117347,
2924  -0.00115988, -0.00114605, -0.00113200, -0.00111778,
2925  -0.00110343, -0.00108898, -0.00107448, -0.00105995,
2926 };
2927 
2929  0x00109442, 0x00482797, 0x0075bf2a, 0x00afa864,
2930  0x00ef2aa5, 0x01335b36, 0x017a4df0, 0x01c2cffe,
2931  0x020bfb4c, 0x0254fd74, 0x029d557c, 0x02e50574,
2932  0x032c41a8, 0x03732c08, 0x03b9cb88, 0x040032e8,
2933  0x044686f0, 0x048cd578, 0x04d30738, 0x05190500,
2934  0x055ec210, 0x05a44750, 0x05e9aeb8, 0x062f0c80,
2935  0x067477a0, 0x06ba1ac0, 0x07001998, 0x074680e0,
2936  0x078d5ec0, 0x07d4d038, 0x081cf8f0, 0x0865f8b0,
2937  0x08afe0e0, 0x08fab150, 0x09466cd0, 0x09931910,
2938  0x09e0adb0, 0x0a2f1640, 0x0a7e43f0, 0x0ace2960,
2939  0x0b1eb180, 0x0b6fc4b0, 0x0bc15050, 0x0c134710,
2940  0x0c65a420, 0x0cb86340, 0x0d0b7df0, 0x0d5ef450,
2941  0x0db2cb60, 0x0e070180, 0x0e5b91f0, 0x0eb07f20,
2942  0x0f05d0a0, 0x0f5b8920, 0x0fb1a950, 0x10082e40,
2943  0x105f1400, 0x10b65820, 0x110df780, 0x1165f120,
2944  0x11be43e0, 0x1216eea0, 0x126feac0, 0x12c92b00,
2945  0x1322a620, 0x137c55c0, 0x13d61ae0, 0x142fc940,
2946  0x148949e0, 0x14e28da0, 0x153b9a80, 0x15947640,
2947  0x15ed1840, 0x16458660, 0x169deb20, 0x16f663c0,
2948  0x174ef8c0, 0x17a7a120, 0x180041c0, 0x1858d000,
2949  0x18b14940, 0x1909a140, 0x1961c820, 0x19b9b620,
2950  0x1a116480, 0x1a68c1a0, 0x1abfbd00, 0x1b164f60,
2951  0x1b6c7580, 0x1bc23120, 0x1c1780e0, 0x1c6c5d00,
2952  0x1cc0dbe0, 0x1d1532a0, 0x1d697660, 0x1dbdac20,
2953  0x1e11b280, 0x1e655b80, 0x1eb89e80, 0x1f0b7720,
2954  0x1f5dd680, 0x1fafaec0, 0x2000fb00, 0x2051c340,
2955  0x20a22ac0, 0x20f24580, 0x214213c0, 0x21919140,
2956  0x21e0b300, 0x222f7580, 0x227dd900, 0x22cbd880,
2957  0x23196ec0, 0x23669b00, 0x23b35d80, 0x23ffb6c0,
2958  0x244ba7c0, 0x249731c0, 0x24e25700, 0x252d1940,
2959  0x2594ae40, 0x25deea40, 0x2628bd00, 0x26722680,
2960  0x26bb2740, 0x2703bf40, 0x274beec0, 0x2793b600,
2961  0x27db1500, 0x28220c00, 0x28689b80, 0x28aec4c0,
2962  0x28f48800, 0x2939e680, 0x297ee080, 0x29c37600,
2963  0x2a07a740, 0x2a4b74c0, 0x2a8ede80, 0x2ad1e500,
2964  0x2b148880, 0x2b56c940, 0x2b98a740, 0x2bda2240,
2965  0x2c1b3a80, 0x2c5bef80, 0x2c9c4100, 0x2cdc2e80,
2966  0x2d1bb800, 0x2d5adc80, 0x2d999b80, 0x2dd7f500,
2967  0x2e15e800, 0x2e537400, 0x2e9098c0, 0x2ecd5540,
2968  0x2f09a900, 0x2f4592c0, 0x2f811140, 0x2fbc2340,
2969  0x2ff6c7c0, 0x3030fe80, 0x306ac6c0, 0x30a41f80,
2970  0x30dd07c0, 0x31157dc0, 0x314d7fc0, 0x31850c80,
2971  0x31bc22c0, 0x31f2c1c0, 0x3228e840, 0x325e9540,
2972  0x3293c7c0, 0x32c87e40, 0x32fcb800, 0x33307340,
2973  0x3363aec0, 0x33966940, 0x33c8a140, 0x33fa5580,
2974  0x342b84c0, 0x345c2dc0, 0x348c4f80, 0x34bbe900,
2975  0x34eaf9c0, 0x35198080, 0x35477d00, 0x3574ee40,
2976  0x35a1d340, 0x35ce2bc0, 0x35f9f6c0, 0x36253380,
2977  0x364fe180, 0x367a0040, 0x36a38f80, 0x36cc8ec0,
2978  0x36f4fe80, 0x371cde80, 0x37442e80, 0x376aef00,
2979  0x37912000, 0x37b6c200, 0x37dbd600, 0x38005d00,
2980  0x38245840, 0x3847c880, 0x386aaf80, 0x388d0e80,
2981  0x38aee700, 0x38d03bc0, 0x38f11000, 0x39116700,
2982  0x39314440, 0x3950ab00, 0x396f9e80, 0x398e22c0,
2983  0x39ac3c40, 0x39c9f280, 0x39e74cc0, 0x3a045280,
2984  0x3a210b40, 0x3a3d7ec0, 0x3a59b480, 0x3a75b480,
2985  0x3a918900, 0x3aad3cc0, 0x3ac8db00, 0x3ae46bc0,
2986  0x3afff080, 0x3b1b6840, 0x3b36d2c0, 0x3b521980,
2987  0x3b6d0780, 0x3b876400, 0x3ba0f4c0, 0x3bb96740,
2988  0x3bd03dc0, 0x3be56580, 0x3bf6dec0, 0x3c0c6140,
2989  0x3c15a9c0, 0x3c1a5780, 0x3c1fd0c0, 0x3c25edc0,
2990  0x3c2c78c0, 0x3c333880, 0x3c39f3c0, 0x3c409100,
2991  0x3c471d00, 0x3c4da780, 0x3c543f40, 0x3c5ae880,
2992  0x3c619f00, 0x3c685f00, 0x3c6f25c0, 0x3c75f280,
2993  0x3c7cc6c0, 0x3c83a2c0, 0x3c8a87c0, 0x3c9175c0,
2994  0x3c986d00, 0x3c9f6e00, 0x3ca67880, 0x3cad8c40,
2995  0x3cb4a980, 0x3cbbd000, 0x3cc2ffc0, 0x3cca3940,
2996  0x3cd17d40, 0x3cd8cb80, 0x3ce02480, 0x3ce78740,
2997  0x3ceef3c0, 0x3cf66a00, 0x3cfdea00, 0x3d0574c0,
2998  0x3d0d0a40, 0x3d14ab40, 0x3d1c5700, 0x3d240d00,
2999  0x3d2bcd40, 0x3d3397c0, 0x3d3b6cc0, 0x3d434d00,
3000  0x3d4b38c0, 0x3d532fc0, 0x3d5b3180, 0x3d633dc0,
3001  0x3d6b53c0, 0x3d737400, 0x3d7b9f00, 0x3d83d540,
3002  0x3d8c1680, 0x3d946200, 0x3d9cb780, 0x3da51680,
3003  0x3dad7f00, 0x3db5f140, 0x3dbe6dc0, 0x3dc6f480,
3004  0x3dcf8540, 0x3dd81fc0, 0x3de0c300, 0x3de96ec0,
3005  0x3df22340, 0x3dfae0c0, 0x3e03a800, 0x3e0c7840,
3006  0x3e155180, 0x3e1e32c0, 0x3e271bc0, 0x3e300c00,
3007  0x3e390400, 0x3e420400, 0x3e4b0c40, 0x3e541c80,
3008  0x3e5d33c0, 0x3e6651c0, 0x3e6f7580, 0x3e789fc0,
3009  0x3e81d080, 0x3e8b0880, 0x3e944700, 0x3e9d8c00,
3010  0x3ea6d680, 0x3eb02600, 0x3eb97a80, 0x3ec2d400,
3011  0x3ecc3340, 0x3ed59880, 0x3edf0300, 0x3ee87280,
3012  0x3ef1e600, 0x3efb5d40, 0x3f04d880, 0x3f0e5840,
3013  0x3f17dcc0, 0x3f216600, 0x3f2af340, 0x3f348440,
3014  0x3f3e1840, 0x3f47af40, 0x3f514a00, 0x3f5ae840,
3015  0x3f648b00, 0x3f6e3140, 0x3f77db00, 0x3f818740,
3016  0x3f8b3600, 0x3f94e780, 0x3f9e9c40, 0x3fa85480,
3017  0x3fb21080, 0x3fbbcfc0, 0x3fc59200, 0x3fcf56c0,
3018  0x3fd91dc0, 0x3fe2e640, 0x3fecb040, 0x3ff67b40,
3019  0x40098600, 0x40135580, 0x401d2700, 0x4026fa00,
3020  0x4030ce80, 0x403aa380, 0x40447900, 0x404e4f00,
3021  0x40582400, 0x4061f900, 0x406bcd00, 0x4075a080,
3022  0x407f7480, 0x40894900, 0x40931e00, 0x409cf280,
3023  0x40a6c600, 0x40b09800, 0x40ba6980, 0x40c43a80,
3024  0x40ce0b00, 0x40d7db00, 0x40e1ab00, 0x40eb7980,
3025  0x40f54600, 0x40ff1080, 0x4108d980, 0x4112a100,
3026  0x411c6800, 0x41262d80, 0x412ff080, 0x4139b180,
3027  0x41436e80, 0x414d2980, 0x4156e100, 0x41609700,
3028  0x416a4a80, 0x4173fb00, 0x417da800, 0x41875000,
3029  0x4190f400, 0x419a9400, 0x41a43000, 0x41adc880,
3030  0x41b75d00, 0x41c0ec80, 0x41ca7700, 0x41d3fb00,
3031  0x41dd7980, 0x41e6f280, 0x41f06600, 0x41f9d480,
3032  0x42033d00, 0x420c9f00, 0x4215f980, 0x421f4d00,
3033  0x42289900, 0x4231de80, 0x423b1d00, 0x42445500,
3034  0x424d8500, 0x4256ad00, 0x425fcc80, 0x4268e380,
3035  0x4271f200, 0x427af900, 0x4283f880, 0x428cef80,
3036  0x4295de00, 0x429ec280, 0x42a79d80, 0x42b06f00,
3037  0x42b93800, 0x42c1f800, 0x42caaf80, 0x42d35d80,
3038  0x42dc0100, 0x42e49b00, 0x42ed2a80, 0x42f5b080,
3039  0x42fe2d80, 0x4306a180, 0x430f0c80, 0x43176d80,
3040  0x431fc480, 0x43281100, 0x43305400, 0x43388e80,
3041  0x4340c000, 0x4348e900, 0x43510900, 0x43591f00,
3042  0x43612b80, 0x43692f00, 0x43712900, 0x43791a80,
3043  0x43810380, 0x4388e400, 0x4390bc00, 0x43988b00,
3044  0x43a05180, 0x43a80f00, 0x43afc480, 0x43b77180,
3045  0x43bf1780, 0x43c6b700, 0x43ce5100, 0x43d5e580,
3046  0x43dd7100, 0x43e4ef80, 0x43ec5b80, 0x43f3ba80,
3047  0x43fb1c80, 0x44029400, 0x440a2e80, 0x4411d080,
3048  0x44193800, 0x44202480, 0x44265880, 0x442ba780,
3049  0x442d8680, 0x4428a500, 0x44241380, 0x441ccb00,
3050  0x44140100, 0x440a1200, 0x43ff7280, 0x43f46980,
3051  0x43e93200, 0x43ddff00, 0x43d2dc80, 0x43c7ac00,
3052  0x43bc4900, 0x43b09400, 0x43a47d80, 0x4397fd80,
3053  0x438b0780, 0x437d9b80, 0x436fd380, 0x4361cd80,
3054  0x4353a800, 0x43457500, 0x43373c80, 0x43290500,
3055  0x431ad400, 0x430ca280, 0x42fe6000, 0x42f00080,
3056  0x42e17380, 0x42d29e00, 0x42c35d80, 0x42b39200,
3057  0x42a32080, 0x4291fc00, 0x42801900, 0x426d6d80,
3058  0x4259f680, 0x4245bd00, 0x4230ca80, 0x421b2900,
3059  0x4204e800, 0x41ee1d00, 0x41d6dd80, 0x41bf3c80,
3060  0x41a74680, 0x418f0680, 0x41768800, 0x415dd100,
3061  0x4144e400, 0x412bbf80, 0x41126400, 0x40f8cc00,
3062  0x40deea00, 0x40c4b100, 0x40aa1400, 0x408f0800,
3063  0x40738380, 0x40577d80, 0x403aeb80, 0x401dc180,
3064  0x3ffff240, 0x3fe170c0, 0x3fc232c0, 0x3fa23680,
3065  0x3f817c40, 0x3f6002c0, 0x3f3ddec0, 0x3f1b4180,
3066  0x3ef85d40, 0x3ed56340, 0x3eb27240, 0x3e8f9c40,
3067  0x3e6cf400, 0x3e4a81c0, 0x3e282140, 0x3e059980,
3068  0x3de2b280, 0x3dbf4100, 0x3d9b3640, 0x3d768b00,
3069  0x3d513640, 0x3d2b3840, 0x3d049b80, 0x3cdd6b40,
3070  0x3cb5b400, 0x3c8d8f40, 0x3c652080, 0x3c3c8c40,
3071  0x3c13f480, 0x3beb7580, 0x3bc327c0, 0x3b9b2680,
3072  0x3b737000, 0x3b4bc580, 0x3b23d740, 0x3afb5640,
3073  0x3ad21c40, 0x3aa83780, 0x3a7dbc40, 0x3a52bf80,
3074  0x3a276600, 0x39fbe0c0, 0x39d06140, 0x39a50ec0,
3075  0x3979e300, 0x394ebf40, 0x392386c0, 0x38f82280,
3076  0x38cc89c0, 0x38a0b7c0, 0x3874a740, 0x38485840,
3077  0x381bd1c0, 0x37ef1b40, 0x37c23cc0, 0x37953dc0,
3078  0x376825c0, 0x373afc80, 0x370dc980, 0x36e09440,
3079  0x36b41dc0, 0x36862100, 0x3657e480, 0x36297240,
3080  0x35fad380, 0x35cc1200, 0x359d36c0, 0x356e4b40,
3081  0x353f5880, 0x35106780, 0x34e17780, 0x34b28240,
3082  0x34838040, 0x345466c0, 0x34251940, 0x33f57280,
3083  0x33c54bc0, 0x33949840, 0x33638380, 0x33324980,
3084  0x33012500, 0x32d04480, 0x329fc7c0, 0x326fcbc0,
3085  0x324068c0, 0x32116fc0, 0x31e27600, 0x31b30fc0,
3086  0x3182e300, 0x3151e240, 0x312029c0, 0x30edd080,
3087  0x30baf700, 0x3087cd00, 0x30548600, 0x30215680,
3088  0x2fee65c0, 0x2fbbca40, 0x2f899980, 0x2f57e6c0,
3089  0x2f26b540, 0x2ef5f980, 0x2ec5aa00, 0x2e95afc0,
3090  0x2e65c180, 0x2e357b40, 0x2e047840, 0x2dd27380,
3091  0x2d9f6c40, 0x2d6b7780, 0x2d36a6c0, 0x2d012940,
3092  0x2ccb5680, 0x2c958a00, 0x2c601b80, 0x2c2b3640,
3093  0x2bf6dfc0, 0x2bc31ec0, 0x2b8ff500, 0x2b5d5540,
3094  0x2b2b2a00, 0x2af95e80, 0x2ac7dd80, 0x2a968f80,
3095  0x2a655d40, 0x2a342f00, 0x2a02e8c0, 0x29d16700,
3096  0x299f8640, 0x296d2380, 0x293a2740, 0x29068400,
3097  0x28d22b40, 0x289d1540, 0x28675280, 0x28310180,
3098  0x27fa3f00, 0x27c32f80, 0x278c08c0, 0x275505c0,
3099  0x271e60c0, 0x26e84b00, 0x26b2e880, 0x267e5cc0,
3100  0x264ac940, 0x26183a40, 0x25e6aa80, 0x25b615c0,
3101  0x25866b80, 0x25576b40, 0x2528ba00, 0x24f9ffc0,
3102  0x24cadfc0, 0x249af540, 0x2469da80, 0x24372780,
3103  0x2402b800, 0x23ccbfc0, 0x23957cc0, 0x235d3140,
3104  0x23245200, 0x22eb8000, 0x22b35cc0, 0x227c7940,
3105  0x22471d40, 0x22136840, 0x21e18240, 0x21b15d80,
3106  0x21827dc0, 0x21544600, 0x21261b00, 0x20f78600,
3107  0x20c83e00, 0x20980000, 0x20668e00, 0x2033f300,
3108  0x20007400, 0x1fcc64e0, 0x1f97d120, 0x1f642320,
3109  0x1f2f49e0, 0x1efaa840, 0x1ec73580, 0x1e94d880,
3110  0x1e636120, 0x1e32a160, 0x1e025ba0, 0x1dd24300,
3111  0x1da20e60, 0x1d717940, 0x1d407560, 0x1d0f2040,
3112  0x1cdd95c0, 0x1cabf500, 0x1c7a6940, 0x1c492340,
3113  0x1c185680, 0x1be818c0, 0x1bb83f60, 0x1b888d20,
3114  0x1b58c640, 0x1b28c240, 0x1af871e0, 0x1ac7c960,
3115  0x1a96bf00, 0x1a656b60, 0x1a340360, 0x1a02bd20,
3116  0x19d1c6c0, 0x19a12f40, 0x1970f480, 0x19411640,
3117  0x19119000, 0x18e255a0, 0x18b358a0, 0x18848b20,
3118  0x1855e040, 0x18274e00, 0x17f8c9e0, 0x17ca4a80,
3119  0x179bce40, 0x176d5a60, 0x173ef400, 0x17109fe0,
3120  0x16e25f60, 0x16b43240, 0x16861880, 0x16581220,
3121  0x162a20c0, 0x15fc4620, 0x15ce8420, 0x15a0dca0,
3122  0x157351c0, 0x1545e580, 0x151899a0, 0x14eb6ec0,
3123  0x14be63a0, 0x14917a00, 0x14649ae0, 0x14377060,
3124  0x1409d0c0, 0x13dbbb20, 0x13ad58e0, 0x137f0160,
3125  0x1350cc80, 0x1322b8c0, 0x12f4ca60, 0x12c704e0,
3126  0x129968a0, 0x126bf5c0, 0x123eade0, 0x12119300,
3127  0x11e4a660, 0x11b7e860, 0x118b5940, 0x115ef8a0,
3128  0x1132c600, 0x1106c1a0, 0x10daecc0, 0x10af4900,
3129  0x1083d7a0, 0x10589c00, 0x102d9a00, 0x1002d1e0,
3130  0x0fd842c0, 0x0fadde80, 0x0f839a50, 0x0f597700,
3131  0x0f2f76e0, 0x0f05a170, 0x0edbf9c0, 0x0eb27f30,
3132  0x0e8930d0, 0x0e600d70, 0x0e371550, 0x0e0e4950,
3133  0x0de5ab50, 0x0dbd3d20, 0x0d94fe10, 0x0d6cecb0,
3134  0x0d450220, 0x0d1d38f0, 0x0cf59130, 0x0cce0c30,
3135  0x0ca6af10, 0x0c7f7b80, 0x0c587010, 0x0c318960,
3136  0x0c0ac200, 0x0be418d0, 0x0bbd8da0, 0x0b9724e0,
3137  0x0b70e6c0, 0x0b4ad970, 0x0b2502f0, 0x0aff6930,
3138  0x0ada1250, 0x0ab50430, 0x0a9044d0, 0x0a6bda30,
3139  0x0a3bedf0, 0x0a18be40, 0x09f5e530, 0x09d35cf0,
3140  0x09b11ff0, 0x098f2890, 0x096d7120, 0x094bf400,
3141  0x092aab80, 0x09099240, 0x08e8a620, 0x08c7e850,
3142  0x08a75990, 0x0886fae0, 0x0866ccf0, 0x0846d070,
3143  0x08270610, 0x08076e70, 0x07e80ac8, 0x07c8dc60,
3144  0x07a9e440, 0x078b2348, 0x076c99d0, 0x074e4818,
3145  0x07302e50, 0x07124d18, 0x06f4a530, 0x06d73778,
3146  0x06ba0488, 0x069d0c88, 0x06804f68, 0x0663cce0,
3147  0x06478528, 0x062b78a0, 0x060fa7e8, 0x05f413b8,
3148  0x05d8bc38, 0x05bda128, 0x05a2c258, 0x05881f60,
3149  0x056db888, 0x05538e60, 0x0539a170, 0x051ff218,
3150  0x05068040, 0x04ed4b90, 0x04d45398, 0x04bb9820,
3151  0x04a31988, 0x048ad860, 0x0472d528, 0x045b0ff0,
3152  0x04438860, 0x042c3de8, 0x04153040, 0x03fe5f4c,
3153  0x03e7cb98, 0x03d17580, 0x03bb5d64, 0x03a582e8,
3154  0x038fe588, 0x037a8494, 0x03655fcc, 0x03507768,
3155  0x033bcbb4, 0x03275d28, 0x03132bc0, 0x02ff370c,
3156  0x02eb7e94, 0x02d801e8, 0x02c4c11c, 0x02b1bcbc,
3157  0x029ef578, 0x028c6ba8, 0x027a1f20, 0x02680f54,
3158  0x02563bac, 0x0244a3c8, 0x023347a0, 0x02222730,
3159  0x0211429c, 0x02009938, 0x01f02974, 0x01dff1ae,
3160  0x01cff058, 0x01c024c8, 0x01b08ef4, 0x01a12eda,
3161  0x019204b0, 0x01831138, 0x01745588, 0x0165d2c2,
3162  0x01578a96, 0x01497ffc, 0x013bb670, 0x012e3160,
3163  0x0120f146, 0x0113f27c, 0x0107310c, 0x00faa909,
3164  0x00ee57a1, 0x00e23b09, 0x00d6515b, 0x00ca9977,
3165  0x00bf1509, 0x00b3c74d, 0x00a8b388, 0x009ddb3d,
3166  0x00933bf2, 0x0088d22c, 0x007e9a70, 0x0074935a,
3167  0x006abe70, 0x00611d5c, 0x0057b1f8, 0x004e7e73,
3168  0x0045859b, 0x003cca96, 0x00344f32, 0x002c1074,
3169  0x00240873, 0x001c31ba, 0x0014863f, 0x000cfe8b,
3170  0x00059307, 0xfffe3b9a, 0xfff6f718, 0xffefcd4d,
3171  0xffe8c6f4, 0xffe1ed10, 0xffdb4c57, 0xffd4f484,
3172  0xffcef5dc, 0xffc95d0c, 0xffc4284e, 0xffbf4e14,
3173  0xffbac5ae, 0xffb68360, 0xffb27548, 0xffae87be,
3174  0xffaaa733, 0xffa6c67e, 0xffa2e141, 0xff9ef40c,
3175  0xff9afc25, 0xff970058, 0xff930f7c, 0xff8f3857,
3176  0xff8b8900, 0xff880bfe, 0xff84c9ea, 0xff81cbbd,
3177  0xff7f17ad, 0xff7cadc6, 0xff7a8c4e, 0xff78b1cd,
3178  0xff7719f3, 0xff75bd06, 0xff7492a4, 0xff7392bf,
3179  0xff72b600, 0xff71f5c6, 0xff714b72, 0xff70b0ed,
3180  0xff702232, 0xff6f9c90, 0xff6f1cee, 0xff6ea21f,
3181  0xff6e2e9c, 0xff6dc617, 0xff6d6c09, 0xff6d2425,
3182  0xff6cf267, 0xff6cdaca, 0xff6ce155, 0xff6d0983,
3183  0xff6d56bb, 0xff6dcc4c, 0xff6e6cd0, 0xff6f3832,
3184  0xff702cc4, 0xff71492e, 0xff728ae2, 0xff73ed63,
3185  0xff756b7c, 0xff77001c, 0xff78a5d9, 0xff7a5693,
3186  0xff7c0c40, 0xff7dc141, 0xff7f74aa, 0xff81298b,
3187  0xff82e2de, 0xff84a3de, 0xff8670bd, 0xff884e42,
3188  0xff8a410c, 0xff8c4c7f, 0xff8e70fc, 0xff90ae18,
3189  0xff93037e, 0xff956f12, 0xff97ec86, 0xff9a7724,
3190  0xff9d0a9d, 0xff9fa3ea, 0xffa2417e, 0xffa4e1ac,
3191  0xffa78332, 0xffaa265a, 0xffaccc26, 0xffaf758e,
3192  0xffb223d4, 0xffb4d906, 0xffb79726, 0xffba604e,
3193  0xffbd349e, 0xffc011a8, 0xffc2f4d2, 0xffc5db82,
3194  0xffc8c45f, 0xffcbaed5, 0xffce9a6d, 0xffd186c6,
3195  0xffd473aa, 0xffd760e5, 0xffda4e55, 0xffdd3bd0,
3196  0xffe0292b, 0xffe31645, 0xffe602ff, 0xffe8eef7,
3197  0xffebd978, 0xffeec1bf, 0xfff1a72c, 0xfff488fe,
3198  0xfff76689, 0xfffa3f2c, 0xfffd1245, 0xffffdf33,
3199  0x000020ac, 0x0002e66f, 0x0005a937, 0x00086839,
3200  0x000b22b3, 0x000dd7da, 0x001086ec, 0x00132f3c,
3201  0x0015d001, 0x00186897, 0x001af849, 0x001d7eb6,
3202  0x001ffbbe, 0x00226f41, 0x0024d8e8, 0x00273874,
3203  0x00298d82, 0x002bd7aa, 0x002e16d4, 0x00304af6,
3204  0x00327406, 0x00349203, 0x0036a416, 0x0038a893,
3205  0x003a9da0, 0x003c8170, 0x003e53b8, 0x0040159a,
3206  0x0041c816, 0x00436c92, 0x0045042c, 0x00468ff2,
3207  0x00481106, 0x004987fe, 0x004af466, 0x004c5599,
3208  0x004daae4, 0x004ef28c, 0x005029c4, 0x00514d9a,
3209  0x00525b57, 0x005351f7, 0x00543190, 0x0054fa43,
3210  0x0055ac2f, 0x00564938, 0x0056d3f7, 0x00574f3c,
3211  0x0057bdd7, 0x00582260, 0x00587f28, 0x0058d6b1,
3212  0x0059293c, 0x0059741a, 0x0059b472, 0x0059e73c,
3213  0x005a0976, 0x005a1870, 0x005a116e, 0x0059f224,
3214  0x0059b964, 0x005966ce, 0x0058f9e2, 0x005872e8,
3215  0x0057d407, 0x00571f82, 0x005657b0, 0x00557ecd,
3216  0x00549731, 0x0053a34b, 0x0052a56a, 0x00519fc6,
3217  0x00509482, 0x004f85a4, 0x004e74ee, 0x004d6214,
3218  0x004c4bd3, 0x004b314c, 0x004a1110, 0x0048e8c8,
3219  0x0047b5f7, 0x00467626, 0x00452690, 0x0043c405,
3220  0x00424b7f, 0x0040ba04, 0x003f0e53, 0x003d488b,
3221  0x003b688c, 0x00396eb6, 0x00375dfb, 0x00353aaa,
3222  0x003308ac, 0x0030ccb1, 0x002e8cf1, 0x002c4fd5,
3223  0x002a1be8, 0x0027f486, 0x0025d90d, 0x0023c852,
3224  0x0021c13b, 0x001fbf23, 0x001dbafc, 0x001badc6,
3225  0x00199136, 0x00176150, 0x00151b86, 0x0012bcd1,
3226  0x001044d1, 0x000db8d0, 0x000b1f43, 0x00087e89,
3227  0x0005dbe2, 0x00033b1e, 0x00009fee, 0xfffe0d82,
3228  0xfffb83cf, 0xfff90047, 0xfff6805a, 0xfff4019a,
3229  0xfff18203, 0xffeeffb2, 0xffec78ba, 0xffe9ec4d,
3230  0xffe75b4e, 0xffe4c71f, 0xffe23138, 0xffdf9ae6,
3231  0xffdd0574, 0xffda723c, 0xffd7e24a, 0xffd55567,
3232  0xffd2cabe, 0xffd04161, 0xffcdb890, 0xffcb306a,
3233  0xffc8a95c, 0xffc62406, 0xffc3a140, 0xffc12188,
3234  0xffbea542, 0xffbc2cc2, 0xffb9b7d2, 0xffb745f2,
3235  0xffb4d6ac, 0xffb268fe, 0xffaffc72, 0xffad90e8,
3236  0xffab263e, 0xffa8bcb8, 0xffa6547e, 0xffa3ed7b,
3237  0xffa187ba, 0xff9f2351, 0xff9cc055, 0xff9a5ebc,
3238  0xff97fe84, 0xff959f84, 0xff934146, 0xff90e37d,
3239  0xff8e858a, 0xff8c26c0, 0xff89c69e, 0xff876483,
3240  0xff84ffe4, 0xff82982b, 0xff802cb6, 0xff7dbccf,
3241  0xff7b47b4, 0xff78ccd0, 0xff764b6c, 0xff73c2db,
3242  0xff713227, 0xff6e9864, 0xff6bf470, 0xff694553,
3243  0xff668a0d, 0xff63c1a6, 0xff60ec34, 0xff5e0e9e,
3244  0xff5b30d3, 0xff585b8c, 0xff5595c9, 0xff52e1da,
3245  0xff5040a0, 0xff4db31c, 0xff4b3a3b, 0xff48d67e,
3246  0xff468850, 0xff445011, 0xff422ded, 0xff4021f9,
3247  0xff3e2c56, 0xff3c4cf8, 0xff3a83df, 0xff38d0ec,
3248  0xff3733c9, 0xff35ac14, 0xff343963, 0xff32db09,
3249  0xff319066, 0xff305898, 0xff2f323d, 0xff2e1bb2,
3250  0xff2d1369, 0xff2c18f8, 0xff2b2d2a, 0xff2a50e1,
3251  0xff2984f4, 0xff28c978, 0xff281e01, 0xff278245,
3252  0xff26f5c3, 0xff26785a, 0xff2609bf, 0xff25a9c8,
3253  0xff255814, 0xff2513f6, 0xff24dcc4, 0xff24b1a6,
3254  0xff2492b1, 0xff248093, 0xff247c0b, 0xff2485c6,
3255  0xff249daf, 0xff24c359, 0xff24f639, 0xff253605,
3256  0xff258312, 0xff25ddd5, 0xff2646e7, 0xff26be25,
3257  0xff274264, 0xff27d1f6, 0xff286b19, 0xff290c13,
3258  0xff29b30d, 0xff2a5e38, 0xff2b0bbd, 0xff2bb9a2,
3259  0xff29a9d2, 0xff2a53dc, 0xff2b0a5a, 0xff2bcd43,
3260  0xff2c9c76, 0xff2d7808, 0xff2e5ffa, 0xff2f544c,
3261  0xff305528, 0xff316299, 0xff327ce0, 0xff33a432,
3262  0xff34d8ba, 0xff361a8e, 0xff3768f8, 0xff38c2f5,
3263  0xff3a2784, 0xff3b9623, 0xff3d0ef4, 0xff3e9277,
3264  0xff4020ed, 0xff41ba14, 0xff435ccc, 0xff4507fd,
3265  0xff46ba84, 0xff4873ac, 0xff4a32ea, 0xff4bf7bb,
3266  0xff4dc17f, 0xff4f8fa0, 0xff516167, 0xff53361d,
3267  0xff550d79, 0xff56e7ee, 0xff58c5ff, 0xff5aa84d,
3268  0xff5c8e41, 0xff5e75e2, 0xff605d4d, 0xff6242b6,
3269  0xff6424b8, 0xff66023d, 0xff67da44, 0xff69abd6,
3270  0xff6b7646, 0xff6d38e8, 0xff6ef348, 0xff70a4ce,
3271  0xff724d0f, 0xff73eb95, 0xff757fff, 0xff770a2d,
3272  0xff788a20, 0xff79fff6, 0xff7b6be7, 0xff7cce52,
3273  0xff7e27e4, 0xff7f78fc, 0xff80c38a, 0xff820e98,
3274  0xff836378, 0xff84caaa, 0xff864990, 0xff87dff4,
3275  0xff898c30, 0xff8b4cda, 0xff8d207a, 0xff8f05cc,
3276  0xff90fb9b, 0xff930098, 0xff95138e, 0xff97332d,
3277  0xff995e2a, 0xff9b934e, 0xff9dd18c, 0xffa017e3,
3278  0xffa26550, 0xffa4b8e7, 0xffa711a8, 0xffa96eae,
3279  0xffabcefc, 0xffae31cc, 0xffb09680, 0xffb2fc82,
3280  0xffb5635a, 0xffb7ca52, 0xffba30a8, 0xffbc95a8,
3281  0xffbef8a4, 0xffc158d0, 0xffc3b557, 0xffc60d6b,
3282  0xffc86041, 0xffcaacb7, 0xffccf1cb, 0xffcf2e5c,
3283  0xffd161e8, 0xffd38c8f, 0xffd5ae88, 0xffd7c808,
3284  0xffd9d925, 0xffdbe1c8, 0xffdde1f3, 0xffdfd964,
3285  0xffe1c79b, 0xffe3abcc, 0xffe5852a, 0xffe75341,
3286  0xffe9162f, 0xffeace55, 0xffec7c15, 0xffee1f63,
3287  0xffefb7e9, 0xfff1453d, 0xfff2c6fd, 0xfff43ca8,
3288  0xfff5a5d4, 0xfff701ea, 0xfff850b4, 0xfff99288,
3289  0xfffac853, 0xfffbf2d5, 0xfffd12e6, 0xfffe2991,
3290  0xffff37e4, 0x00003eea, 0x00013ec4, 0x00023646,
3291  0x0003244d, 0x00040797, 0x0004de8c, 0x0005a734,
3292  0x00065fab, 0x0007068f, 0x00079c82, 0x000822fa,
3293  0x00089b70, 0x000907a6, 0x00096a01, 0x0009c506,
3294  0x000a1b37, 0x000a6e18, 0x000abe1f, 0x000b0bac,
3295  0x000b5701, 0x000b9f3b, 0x000be2c2, 0x000c1fff,
3296  0x000c5599, 0x000c829a, 0x000ca661, 0x000cc058,
3297  0x000cd028, 0x000cd63d, 0x000cd317, 0x000cc739,
3298  0x000cb36d, 0x000c98c0, 0x000c7833, 0x000c52df,
3299  0x000c2984, 0x000bfcf9, 0x000bcdea, 0x000b9cf7,
3300  0x000b6a97, 0x000b3700, 0x000b029d, 0x000acd79,
3301  0x000a977e, 0x000a6076, 0x000a2838, 0x0009eea1,
3302  0x0009b37d, 0x000976c2, 0x0009384e, 0x0008f816,
3303  0x0008b612, 0x0008724a, 0x00082cd5, 0x0007e5e8,
3304  0x00079dce, 0x000754de, 0x00070b62, 0x0006c1c6,
3305  0x0006786a, 0x00062fba, 0x0005e801, 0x0005a1a0,
3306  0x00055ce1, 0x000519fb, 0x0004d8f8, 0x000499b8,
3307  0x00045c30, 0x00042040, 0x0003e5c8, 0x0003acb3,
3308  0x000374df, 0x00033e59, 0x00030934, 0x0002d57d,
3309  0x0002a348, 0x000272b6, 0x000243f2, 0x00021711,
3310  0x0001ec3e, 0x0001c37a, 0x00019cc3, 0x00017830,
3311  0x000155a0, 0x00013514, 0x0001168b, 0x0000f9e6,
3312  0x0000df23, 0x0000c62e, 0x0000aef2, 0x00009978,
3313  0x000085a1, 0x0000736d, 0x000062dc, 0x000053d8,
3314  0x0000466c, 0x00003a62, 0x00002fd1, 0x00002681,
3315  0x00001e73, 0x00001792, 0x000011c9, 0x00000cf6,
3316  0x0000091a, 0x000005ff, 0x000003b1, 0x00000203,
3317  0x000000d7, 0x0000002b, 0xffffffd5, 0xffffffc0,
3318  0xffffffd5, 0x00000000, 0x00000015, 0x00000000,
3319  0x00000000, 0x00000015, 0x00000000, 0xffffffd5,
3320  0xffffffca, 0xffffffd5, 0x0000002b, 0x000000cc,
3321  0x000001e3, 0x0000037b, 0x0000059f, 0x0000086e,
3322  0x00000bf4, 0x0000103b, 0x00001564, 0x00001b6e,
3323  0x0000226f, 0x00002a68, 0x00003377, 0x00003d93,
3324  0x000048c5, 0x00005525, 0x000062a6, 0x00007155,
3325  0x0000812f, 0x00009237, 0x0000a455, 0x0000b7ab,
3326  0x0000cc18, 0x0000e1bd, 0x0000f878, 0x0001106c,
3327  0x00012981, 0x000143c2, 0x00015f30, 0x00017bb6,
3328  0x00019948, 0x0001b7e6, 0x0001d771, 0x0001f7bc,
3329  0x000218b4, 0x00023a42, 0x00025c3b, 0x00027ea0,
3330  0x0002a150, 0x0002c440, 0x0002e771, 0x00030aed,
3331  0x00032eb4, 0x000352db, 0x00037759, 0x00039c4c,
3332  0x0003c1ac, 0x0003e74b, 0x00040d00, 0x0004329f,
3333  0x000457de, 0x00047c9c, 0x0004a083, 0x0004c35e,
3334  0x0004e502, 0x00050543, 0x000523ec, 0x000540e7,
3335  0x00055c2b, 0x000575c0, 0x00058da9, 0x0005a3e4,
3336  0x0005b886, 0x0005cbb1, 0x0005dd65, 0x0005edcb,
3337  0x0005fcfa, 0x00060afc, 0x00061808, 0x000623fc,
3338  0x00062ec3, 0x00063849, 0x0006404b, 0x000646ac,
3339  0x00064b13, 0x00064d37, 0x00064cd6, 0x0006497b,
3340  0x000642c5, 0x0006385e, 0x000629f0, 0x00061766,
3341  0x000600a0, 0x0005e57d, 0x0005c63e, 0x0005a322,
3342  0x00057c97, 0x00055306, 0x00052711, 0x0004f96f,
3343  0x0004caeb, 0x00049bfc, 0x00046c96, 0x00043cbb,
3344  0x00040c3f, 0x0003daab, 0x0003a734, 0x000370f9,
3345  0x0003372d, 0x0002f944, 0x0002b6d4, 0x00026f71,
3346  0x000222fb, 0x0001d212, 0x00017d84, 0x00012630,
3347  0x0000ccda, 0x00007200, 0x0000163b, 0xffffba15,
3348  0xffff5da3, 0xffff0091, 0xfffea293, 0xfffe4367,
3349  0xfffde2da, 0xfffd809f, 0xfffd1c81, 0xfffcb66a,
3350  0xfffc4e90, 0xfffbe53e, 0xfffb7aa0, 0xfffb0f0a,
3351  0xfffaa2c9, 0xfffa3612, 0xfff9c92f, 0xfff95c2d,
3352  0xfff8eef4, 0xfff8817c, 0xfff813c3, 0xfff7a5d4,
3353  0xfff737e5, 0xfff6ca17, 0xfff65c9e, 0xfff5efbc,
3354  0xfff58390, 0xfff51830, 0xfff4adbc, 0xfff44435,
3355  0xfff3db9a, 0xfff373d6, 0xfff30cfd, 0xfff2a71c,
3356  0xfff24248, 0xfff1de9f, 0xfff17c44, 0xfff11b56,
3357  0xfff0bbea, 0xfff05e17, 0xfff00206, 0xffefa7d9,
3358  0xffef4f99, 0xffeef95d, 0xffeea53a, 0xffee533a,
3359  0xffee035e, 0xffedb5b0, 0xffed6a3c, 0xffed20f5,
3360  0xffecd9fe, 0xffec9555, 0xffec5305, 0xffec1319,
3361  0xffebd591, 0xffeb9a83, 0xffeb61f9, 0xffeb2bfe,
3362  0xffeaf89c, 0xffeac7ea, 0xffea99d2, 0xffea6e7e,
3363  0xffea45ef, 0xffea203a, 0xffe9fda0, 0xffe9decc,
3364  0xffe9c3de, 0xffe9ac56, 0xffe99789, 0xffe9845e,
3365  0xffe97295, 0xffe96219, 0xffe952ea, 0xffe944f3,
3366  0xffe93833, 0xffe92c9f, 0xffe92238, 0xffe918fe,
3367  0xffe910fb, 0xffe90a3a, 0xffe904c6, 0xffe900a0,
3368  0xffe8fddb, 0xffe8fc83, 0xffe8fca4, 0xffe8fe3c,
3369  0xffe9016c, 0xffe9061e, 0xffe90c74, 0xffe9146c,
3370  0xffe91e11, 0xffe929a5, 0xffe93731, 0xffe946c0,
3371  0xffe95833, 0xffe96b7e, 0xffe98082, 0xffe9975e,
3372  0xffe9affd, 0xffe9ca5e, 0xffe9e68e, 0xffea0481,
3373  0xffea242b, 0xffea458e, 0xffea6894, 0xffea8d52,
3374  0xffeab3c8, 0xffeadc0c, 0xffeb05fe, 0xffeb31a7,
3375  0xffeb5ede, 0xffeb8da2, 0xffebbdf4, 0xffebefbd,
3376  0xffec231f, 0xffec5802, 0xffec8e5e, 0xffecc61c,
3377  0xffecff1c, 0xffed391e, 0xffed740c, 0xffedafb1,
3378  0xffedebe1, 0xffee287d, 0xffee654e, 0xffeea23f,
3379 };
ff_tns_max_bands_128
const uint8_t ff_tns_max_bands_128[]
Definition: aactab.c:1503
swb_offset_960_32
#define swb_offset_960_32
Definition: aactab.c:1373
bits4
static const uint8_t bits4[81]
Definition: aactab.c:290
swb_offset_960_24
static const uint16_t swb_offset_960_24[]
Definition: aactab.c:1375
ff_aac_kbd_short_128
float ff_aac_kbd_short_128[128]
mem_internal.h
ff_aac_spectral_sizes
const uint16_t ff_aac_spectral_sizes[11]
Definition: aactab.c:531
ff_aac_codebook_vector_vals
const float *const ff_aac_codebook_vector_vals[]
Definition: aactab.c:1178
thread.h
bits3
static const uint8_t bits3[81]
Definition: aactab.c:267
ff_aac_codebook_vector_idx
const uint16_t *const ff_aac_codebook_vector_idx[]
Definition: aactab.c:1187
codebook_vector10_vals
static const float codebook_vector10_vals[]
Definition: aactab.c:1125
swb_offset_128_8
static const uint16_t swb_offset_128_8[]
Definition: aactab.c:1341
ff_aac_num_swb_960
const uint8_t ff_aac_num_swb_960[]
Definition: aactab.c:153
ff_ltp_coef
const float ff_ltp_coef[8]
tns_tmp2_map_0_3
static const int tns_tmp2_map_0_3[8]
Definition: aacdec_fixed.c:110
ff_aac_num_swb_120
const uint8_t ff_aac_num_swb_120[]
Definition: aactab.c:169
swb_offset_1024_16
static const uint16_t swb_offset_1024_16[]
Definition: aactab.c:1318
t1
#define t1
Definition: regdef.h:29
ff_aac_num_swb_480
const uint8_t ff_aac_num_swb_480[]
Definition: aactab.c:161
ff_tns_tmp2_map
const float *const ff_tns_tmp2_map[4]
swb_offset_1024_8
static const uint16_t swb_offset_1024_8[]
Definition: aactab.c:1332
codebook_vector6_idx
static const uint16_t codebook_vector6_idx[]
Definition: aactab.c:1079
ff_swb_offset_128
const uint16_t *const ff_swb_offset_128[]
Definition: aactab.c:1465
codes11
static const uint16_t codes11[289]
Definition: aactab.c:459
ff_tns_max_bands_1024
const uint8_t ff_tns_max_bands_1024[]
Definition: aactab.c:1491
swb_offset_480_32
static const uint16_t swb_offset_480_32[]
Definition: aactab.c:1282
swb_offset_120_16
static const uint16_t swb_offset_120_16[]
Definition: aactab.c:1423
codebook_vector4_idx
static const uint16_t codebook_vector4_idx[]
Definition: aactab.c:1061
codebook_vector8_idx
static const uint16_t codebook_vector8_idx[]
Definition: aactab.c:1096
ff_aac_num_swb_512
const uint8_t ff_aac_num_swb_512[]
Definition: aactab.c:157
bits9
static const uint8_t bits9[169]
Definition: aactab.c:406
swb_offset_120_8
static const uint16_t swb_offset_120_8[]
Definition: aactab.c:1428
swb_offset_960_96
static const uint16_t swb_offset_960_96[]
Definition: aactab.c:1346
swb_offset_480_24
static const uint16_t swb_offset_480_24[]
Definition: aactab.c:1306
ff_thread_once
static int ff_thread_once(char *control, void(*routine)(void))
Definition: thread.h:205
av_cold
#define av_cold
Definition: attributes.h:90
bits1
static const uint8_t bits1[81]
Definition: aactab.c:221
ff_swb_offset_960
const uint16_t *const ff_swb_offset_960[]
Definition: aactab.c:1441
codes5
static const uint16_t codes5[81]
Definition: aactab.c:299
codebook_vector8
static const float codebook_vector8[338]
Definition: aactab.c:786
swb_offset_120_48
static const uint16_t swb_offset_120_48[]
Definition: aactab.c:1413
codebook_vector10_idx
static const uint16_t codebook_vector10_idx[]
Definition: aactab.c:1141
kbdwin.h
codebook_vector10
static const float codebook_vector10[578]
Definition: aactab.c:874
swb_offset_128_16
static const uint16_t swb_offset_128_16[]
Definition: aactab.c:1327
AV_ONCE_INIT
#define AV_ONCE_INIT
Definition: thread.h:203
NULL
#define NULL
Definition: coverity.c:32
ff_aac_eld_window_480
const float ff_aac_eld_window_480[1800]
Definition: aactab.c:2475
ff_aac_num_swb_128
const uint8_t ff_aac_num_swb_128[]
Definition: aactab.c:165
swb_offset_1024_24
static const uint16_t swb_offset_1024_24[]
Definition: aactab.c:1290
swb_offset_480_48
static const uint16_t swb_offset_480_48[]
Definition: aactab.c:1251
aactab.h
swb_offset_120_64
static const uint16_t swb_offset_120_64[]
Definition: aactab.c:1408
tns_tmp2_map_1_4
static const int tns_tmp2_map_1_4[8]
Definition: aacdec_fixed.c:115
swb_offset_120_24
static const uint16_t swb_offset_120_24[]
Definition: aactab.c:1418
ff_swb_offset_480
const uint16_t *const ff_swb_offset_480[]
Definition: aactab.c:1457
swb_offset_960_8
static const uint16_t swb_offset_960_8[]
Definition: aactab.c:1393
ff_aac_eld_window_512_fixed
const int ff_aac_eld_window_512_fixed[1920]
Definition: aactab.c:1992
AVOnce
#define AVOnce
Definition: thread.h:202
swb_offset_128_24
static const uint16_t swb_offset_128_24[]
Definition: aactab.c:1313
ff_aac_pow34sf_tab
float ff_aac_pow34sf_tab[428]
swb_offset_128_48
static const uint16_t swb_offset_128_48[]
Definition: aactab.c:1259
ff_tns_max_bands_512
const uint8_t ff_tns_max_bands_512[]
Definition: aactab.c:1495
swb_offset_960_48
static const uint16_t swb_offset_960_48[]
Definition: aactab.c:1364
ff_aac_scalefactor_bits
const uint8_t ff_aac_scalefactor_bits[121]
Definition: aactab.c:196
ff_aac_pred_sfb_max
const uint8_t ff_aac_pred_sfb_max[]
Definition: aactab.c:173
tns_tmp2_map_0_4
static const int tns_tmp2_map_0_4[16]
Definition: aacdec_fixed.c:120
swb_offset_1024_64
static const uint16_t swb_offset_1024_64[]
Definition: aactab.c:1224
ff_swb_offset_1024
const uint16_t *const ff_swb_offset_1024[]
Definition: aactab.c:1433
codebook_vector4
static const float codebook_vector4[162]
Definition: aactab.c:707
swb_offset_960_64
static const uint16_t swb_offset_960_64[]
Definition: aactab.c:1355
tns_tmp2_map_1_3
static const int tns_tmp2_map_1_3[4]
Definition: aacdec_fixed.c:106
DECLARE_ALIGNED
#define DECLARE_ALIGNED(n, t, v)
Definition: mem_internal.h:109
ff_aac_float_common_init
void ff_aac_float_common_init(void)
swb_offset_128_96
static const uint16_t swb_offset_128_96[]
Definition: aactab.c:1220
ff_aac_spectral_codes
const uint16_t *const ff_aac_spectral_codes[11]
Definition: aactab.c:521
bits8
static const uint8_t bits8[64]
Definition: aactab.c:374
swb_offset_1024_48
static const uint16_t swb_offset_1024_48[]
Definition: aactab.c:1233
ff_tns_max_bands_480
const uint8_t ff_tns_max_bands_480[]
Definition: aactab.c:1499
ff_aac_eld_window_480_fixed
const int ff_aac_eld_window_480_fixed[1800]
Definition: aactab.c:2928
ff_swb_offset_512
const uint16_t *const ff_swb_offset_512[]
Definition: aactab.c:1449
sinewin.h
attributes.h
bits5
static const uint8_t bits5[81]
Definition: aactab.c:313
codes7
static const uint16_t codes7[64]
Definition: aactab.c:345
codes4
static const uint16_t codes4[81]
Definition: aactab.c:276
i
#define i(width, name, range_min, range_max)
Definition: cbs_h2645.c:255
codes3
static const uint16_t codes3[81]
Definition: aactab.c:253
codebook_vector4_vals
static const float codebook_vector4_vals[]
Definition: aactab.c:1050
ff_aac_eld_window_512
const float ff_aac_eld_window_512[1920]
Definition: aactab.c:1508
codebook_vector2
static const float codebook_vector2[324]
Definition: aactab.c:623
ff_aac_kbd_long_1024
float ff_aac_kbd_long_1024[1024]
swb_offset_1024_32
static const uint16_t swb_offset_1024_32[]
Definition: aactab.c:1264
ff_aac_codebook_vectors
const float *const ff_aac_codebook_vectors[]
Definition: aactab.c:1022
codes1
static const uint16_t codes1[81]
Definition: aactab.c:207
ff_swb_offset_120
const uint16_t *const ff_swb_offset_120[]
Definition: aactab.c:1475
swb_offset_512_32
static const uint16_t swb_offset_512_32[]
Definition: aactab.c:1274
codes2
static const uint16_t codes2[81]
Definition: aactab.c:230
ff_aac_num_swb_1024
const uint8_t ff_aac_num_swb_1024[]
Definition: aactab.c:149
ff_aac_spectral_bits
const uint8_t *const ff_aac_spectral_bits[11]
Definition: aactab.c:526
codebook_vector0_vals
static const float codebook_vector0_vals[]
Definition: aactab.c:1029
bits7
static const uint8_t bits7[64]
Definition: aactab.c:356
t2
#define t2
Definition: regdef.h:30
codebook_vector02_idx
static const uint16_t codebook_vector02_idx[]
Definition: aactab.c:1038
ff_init_ff_sine_windows
void ff_init_ff_sine_windows(int index)
initialize the specified entry of ff_sine_windows
Definition: sinewin_tablegen.h:101
ff_kbd_window_init
av_cold void ff_kbd_window_init(float *window, float alpha, int n)
Generate a Kaiser-Bessel Derived Window.
Definition: kbdwin.c:54
bits10
static const uint8_t bits10[169]
Definition: aactab.c:445
swb_offset_512_24
static const uint16_t swb_offset_512_24[]
Definition: aactab.c:1299
codes10
static const uint16_t codes10[169]
Definition: aactab.c:420
swb_offset_960_16
static const uint16_t swb_offset_960_16[]
Definition: aactab.c:1384
swb_offset_1024_96
static const uint16_t swb_offset_1024_96[]
Definition: aactab.c:1211
codes8
static const uint16_t codes8[64]
Definition: aactab.c:363
codebook_vector0
static const float codebook_vector0[324]
Definition: aactab.c:539
swb_offset_512_48
static const uint16_t swb_offset_512_48[]
Definition: aactab.c:1243
bits6
static const uint8_t bits6[81]
Definition: aactab.c:336
codebook_vector6
static const float codebook_vector6[128]
Definition: aactab.c:751
ff_aac_pow2sf_tab
float ff_aac_pow2sf_tab[428]
bits2
static const uint8_t bits2[81]
Definition: aactab.c:244
swb_offset_120_96
static const uint16_t swb_offset_120_96[]
Definition: aactab.c:1403
codes6
static const uint16_t codes6[81]
Definition: aactab.c:322
codes9
static const uint16_t codes9[169]
Definition: aactab.c:381
ff_aac_scalefactor_code
const uint32_t ff_aac_scalefactor_code[121]
Definition: aactab.c:177
bits11
static const uint8_t bits11[289]
Definition: aactab.c:499