xref: /aosp_15_r20/external/libxaac/decoder/ixheaacd_sbr_rom.c (revision 15dc779a375ca8b5125643b829a8aa4b70d7f451)
1 /******************************************************************************
2  *                                                                            *
3  * Copyright (C) 2018 The Android Open Source Project
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at:
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  *****************************************************************************
18  * Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore
19 */
20 #include <string.h>
21 #include "ixheaacd_sbr_common.h"
22 #include "ixheaac_type_def.h"
23 #include "ixheaacd_defines.h"
24 #include "ixheaacd_bitbuffer.h"
25 #include "ixheaacd_pns.h"
26 
27 #include "ixheaacd_aac_rom.h"
28 #include "ixheaacd_pulsedata.h"
29 
30 #include "ixheaacd_drc_data_struct.h"
31 #include "ixheaacd_lt_predict.h"
32 #include "ixheaacd_cnst.h"
33 #include "ixheaacd_ec_defines.h"
34 #include "ixheaacd_ec_struct_def.h"
35 #include "ixheaacd_channelinfo.h"
36 #include "ixheaacd_drc_dec.h"
37 
38 #include "ixheaacd_sbrdecoder.h"
39 #include "ixheaac_sbr_const.h"
40 
41 #include "ixheaacd_sbrdecsettings.h"
42 #include "ixheaacd_sbr_scale.h"
43 #include "ixheaacd_lpp_tran.h"
44 #include "ixheaacd_env_extr_part.h"
45 #include "ixheaacd_sbr_rom.h"
46 #include "ixheaacd_hybrid.h"
47 #include "ixheaacd_ps_dec.h"
48 #include "ixheaacd_env_extr.h"
49 #include "ixheaacd_common_rom.h"
50 #include "ixheaacd_qmf_dec.h"
51 
52 const ia_env_calc_tables_struct ixheaacd_aac_dec_env_calc_tables = {
53     {(WORD16)0x4027, 0, (WORD16)0x4000, 1, (WORD16)0x7fb2, 1, (WORD16)0x56bc,
54      67},
55 
56     // const WORD16 sbr_lim_bands_per_octave_q13[4] =
57     {(WORD16)0x2000, (WORD16)0x2666, (WORD16)0x4000, (WORD16)0x6000},
58 
59     // const WORD16 sbr_smooth_filter[4] =
60     {(WORD16)0x5555, (WORD16)0x461d, (WORD16)0x3387, (WORD16)0x1bb8},
61 
62     // const WORD16 sbr_inv_int_table[INV_INT_TABLE_SIZE] =
63     {(WORD16)0x7fff, (WORD16)0x7fff, (WORD16)0x4000, (WORD16)0x2aab,
64      (WORD16)0x2000, (WORD16)0x199a, (WORD16)0x1555, (WORD16)0x1249,
65      (WORD16)0x1000, (WORD16)0x0e39, (WORD16)0x0ccd, (WORD16)0x0ba3,
66      (WORD16)0x0aab, (WORD16)0x09d9, (WORD16)0x0925, (WORD16)0x0889,
67      (WORD16)0x0800, (WORD16)0x0788, (WORD16)0x071c, (WORD16)0x06bd,
68      (WORD16)0x0666, (WORD16)0x0618, (WORD16)0x05d1, (WORD16)0x0591,
69      (WORD16)0x0555, (WORD16)0x051f, (WORD16)0x04ec, (WORD16)0x04be,
70      (WORD16)0x0492, (WORD16)0x046a, (WORD16)0x0444, (WORD16)0x0421,
71      (WORD16)0x0400, (WORD16)0x03e1, (WORD16)0x03c4, (WORD16)0x03a8,
72      (WORD16)0x038e, (WORD16)0x0376, (WORD16)0x035e, (WORD16)0x0348,
73      (WORD16)0x0333, (WORD16)0x031f, (WORD16)0x030c, (WORD16)0x02fa,
74      (WORD16)0x02e9, (WORD16)0x02d8, (WORD16)0x02c8, (WORD16)0x02b9},
75 
76     // const WORD32 sbr_rand_ph[SBR_NF_NO_RANDOM_VAL + MAX_FREQ_COEFFS] =
77     {((WORD32)0xf801 << 16) | ((WORD32)0xfb3e & 0xFFFF),
78      ((WORD32)0x07c5 << 16) | ((WORD32)0xfa99 & 0xFFFF),
79      ((WORD32)0x0121 << 16) | ((WORD32)0xf865 & 0xFFFF),
80      ((WORD32)0xfc3d << 16) | ((WORD32)0xfd03 & 0xFFFF),
81      ((WORD32)0x0675 << 16) | ((WORD32)0x025f & 0xFFFF),
82      ((WORD32)0xfce2 << 16) | ((WORD32)0x072a & 0xFFFF),
83      ((WORD32)0xffea << 16) | ((WORD32)0xfaa5 & 0xFFFF),
84      ((WORD32)0xf8b3 << 16) | ((WORD32)0xff14 & 0xFFFF),
85      ((WORD32)0x0463 << 16) | ((WORD32)0x0605 & 0xFFFF),
86      ((WORD32)0x0333 << 16) | ((WORD32)0xf816 & 0xFFFF),
87      ((WORD32)0xf803 << 16) | ((WORD32)0xf8f3 & 0xFFFF),
88      ((WORD32)0xf85c << 16) | ((WORD32)0x0746 & 0xFFFF),
89      ((WORD32)0xfc58 << 16) | ((WORD32)0xfb76 & 0xFFFF),
90      ((WORD32)0xfa2a << 16) | ((WORD32)0xf829 & 0xFFFF),
91      ((WORD32)0x060d << 16) | ((WORD32)0x01ad & 0xFFFF),
92      ((WORD32)0x0091 << 16) | ((WORD32)0xf9bd & 0xFFFF),
93      ((WORD32)0x05f6 << 16) | ((WORD32)0xf8b5 & 0xFFFF),
94      ((WORD32)0xf849 << 16) | ((WORD32)0xf86c & 0xFFFF),
95      ((WORD32)0x026f << 16) | ((WORD32)0xfc0c & 0xFFFF),
96      ((WORD32)0x0553 << 16) | ((WORD32)0x052c & 0xFFFF),
97      ((WORD32)0x0756 << 16) | ((WORD32)0x0167 & 0xFFFF),
98      ((WORD32)0xfa57 << 16) | ((WORD32)0x0434 & 0xFFFF),
99      ((WORD32)0xfa65 << 16) | ((WORD32)0xfc5f & 0xFFFF),
100      ((WORD32)0xf80a << 16) | ((WORD32)0xf8cb & 0xFFFF),
101      ((WORD32)0x07da << 16) | ((WORD32)0xf9ce & 0xFFFF),
102      ((WORD32)0xfba0 << 16) | ((WORD32)0xffcb & 0xFFFF),
103      ((WORD32)0xffdd << 16) | ((WORD32)0x0006 & 0xFFFF),
104      ((WORD32)0xf91c << 16) | ((WORD32)0x0367 & 0xFFFF),
105      ((WORD32)0xf817 << 16) | ((WORD32)0xf8f8 & 0xFFFF),
106      ((WORD32)0x0424 << 16) | ((WORD32)0x055b & 0xFFFF),
107      ((WORD32)0xf807 << 16) | ((WORD32)0xfb5a & 0xFFFF),
108      ((WORD32)0xf801 << 16) | ((WORD32)0x07df & 0xFFFF),
109      ((WORD32)0x046c << 16) | ((WORD32)0x04c2 & 0xFFFF),
110      ((WORD32)0x02c4 << 16) | ((WORD32)0x0797 & 0xFFFF),
111      ((WORD32)0x0503 << 16) | ((WORD32)0xfa0c & 0xFFFF),
112      ((WORD32)0xf9d4 << 16) | ((WORD32)0xfd4a & 0xFFFF),
113      ((WORD32)0xf8ac << 16) | ((WORD32)0x004c & 0xFFFF),
114      ((WORD32)0xf9e6 << 16) | ((WORD32)0xf8b1 & 0xFFFF),
115      ((WORD32)0x0662 << 16) | ((WORD32)0xf88c & 0xFFFF),
116      ((WORD32)0x045c << 16) | ((WORD32)0xff0c & 0xFFFF),
117      ((WORD32)0xf926 << 16) | ((WORD32)0x0365 & 0xFFFF),
118      ((WORD32)0xf892 << 16) | ((WORD32)0x023b & 0xFFFF),
119      ((WORD32)0xff10 << 16) | ((WORD32)0xf804 & 0xFFFF),
120      ((WORD32)0x01b5 << 16) | ((WORD32)0xf8be & 0xFFFF),
121      ((WORD32)0xf9e8 << 16) | ((WORD32)0x07fb & 0xFFFF),
122      ((WORD32)0x07d9 << 16) | ((WORD32)0xf855 & 0xFFFF),
123      ((WORD32)0xf920 << 16) | ((WORD32)0x07a9 & 0xFFFF),
124      ((WORD32)0xf889 << 16) | ((WORD32)0x03f4 & 0xFFFF),
125      ((WORD32)0x0270 << 16) | ((WORD32)0xfa5b & 0xFFFF),
126      ((WORD32)0x06d3 << 16) | ((WORD32)0x03be & 0xFFFF),
127      ((WORD32)0x074e << 16) | ((WORD32)0xf803 & 0xFFFF),
128      ((WORD32)0xff87 << 16) | ((WORD32)0x05a9 & 0xFFFF),
129      ((WORD32)0x0246 << 16) | ((WORD32)0x02c5 & 0xFFFF),
130      ((WORD32)0x079f << 16) | ((WORD32)0xfb9c & 0xFFFF),
131      ((WORD32)0xf9b7 << 16) | ((WORD32)0xf9f4 & 0xFFFF),
132      ((WORD32)0xf856 << 16) | ((WORD32)0xfe5e & 0xFFFF),
133      ((WORD32)0x0698 << 16) | ((WORD32)0x07bb & 0xFFFF),
134      ((WORD32)0xfac9 << 16) | ((WORD32)0xf8e7 & 0xFFFF),
135      ((WORD32)0xf882 << 16) | ((WORD32)0x07fd & 0xFFFF),
136      ((WORD32)0x0750 << 16) | ((WORD32)0xf823 & 0xFFFF),
137      ((WORD32)0xfa5e << 16) | ((WORD32)0x04b4 & 0xFFFF),
138      ((WORD32)0x000c << 16) | ((WORD32)0x04f1 & 0xFFFF),
139      ((WORD32)0x0720 << 16) | ((WORD32)0x0439 & 0xFFFF),
140      ((WORD32)0xfa81 << 16) | ((WORD32)0x0677 & 0xFFFF),
141      ((WORD32)0x05c6 << 16) | ((WORD32)0xfa76 & 0xFFFF),
142      ((WORD32)0xfaf7 << 16) | ((WORD32)0x0117 & 0xFFFF),
143      ((WORD32)0x0265 << 16) | ((WORD32)0xfc51 & 0xFFFF),
144      ((WORD32)0xf8a8 << 16) | ((WORD32)0xfa14 & 0xFFFF),
145      ((WORD32)0x07f2 << 16) | ((WORD32)0x0344 & 0xFFFF),
146      ((WORD32)0x0697 << 16) | ((WORD32)0xfa14 & 0xFFFF),
147      ((WORD32)0xf81e << 16) | ((WORD32)0xf801 & 0xFFFF),
148      ((WORD32)0xf854 << 16) | ((WORD32)0xf810 & 0xFFFF),
149      ((WORD32)0xfe4a << 16) | ((WORD32)0xf887 & 0xFFFF),
150      ((WORD32)0xfa7f << 16) | ((WORD32)0xfdd9 & 0xFFFF),
151      ((WORD32)0x0759 << 16) | ((WORD32)0x00c0 & 0xFFFF),
152      ((WORD32)0xf851 << 16) | ((WORD32)0x02e3 & 0xFFFF),
153      ((WORD32)0x0422 << 16) | ((WORD32)0xfa4a & 0xFFFF),
154      ((WORD32)0x04e4 << 16) | ((WORD32)0x03c2 & 0xFFFF),
155      ((WORD32)0x03c9 << 16) | ((WORD32)0xfdd0 & 0xFFFF),
156      ((WORD32)0x0748 << 16) | ((WORD32)0x07bd & 0xFFFF),
157      ((WORD32)0x0396 << 16) | ((WORD32)0x07f0 & 0xFFFF),
158      ((WORD32)0x0554 << 16) | ((WORD32)0x07ba & 0xFFFF),
159      ((WORD32)0x05fe << 16) | ((WORD32)0xf8cf & 0xFFFF),
160      ((WORD32)0xf809 << 16) | ((WORD32)0x0439 & 0xFFFF),
161      ((WORD32)0x07cb << 16) | ((WORD32)0xfea7 & 0xFFFF),
162      ((WORD32)0x05d1 << 16) | ((WORD32)0xfc28 & 0xFFFF),
163      ((WORD32)0x07a2 << 16) | ((WORD32)0x0582 & 0xFFFF),
164      ((WORD32)0xfa2a << 16) | ((WORD32)0xf9df & 0xFFFF),
165      ((WORD32)0xf92c << 16) | ((WORD32)0x0719 & 0xFFFF),
166      ((WORD32)0xf97d << 16) | ((WORD32)0xf834 & 0xFFFF),
167      ((WORD32)0xf8f7 << 16) | ((WORD32)0x05fb & 0xFFFF),
168      ((WORD32)0xfa46 << 16) | ((WORD32)0xf81d & 0xFFFF),
169      ((WORD32)0x06af << 16) | ((WORD32)0x06b2 & 0xFFFF),
170      ((WORD32)0xfc27 << 16) | ((WORD32)0xf818 & 0xFFFF),
171      ((WORD32)0x07c5 << 16) | ((WORD32)0x0668 & 0xFFFF),
172      ((WORD32)0x0429 << 16) | ((WORD32)0x066b & 0xFFFF),
173      ((WORD32)0xffef << 16) | ((WORD32)0xf9de & 0xFFFF),
174      ((WORD32)0xfa60 << 16) | ((WORD32)0x046e & 0xFFFF),
175      ((WORD32)0xf854 << 16) | ((WORD32)0xfc8a & 0xFFFF),
176      ((WORD32)0x07c4 << 16) | ((WORD32)0x00bf & 0xFFFF),
177      ((WORD32)0xf89c << 16) | ((WORD32)0x06d7 & 0xFFFF),
178      ((WORD32)0xfa71 << 16) | ((WORD32)0x07e4 & 0xFFFF),
179      ((WORD32)0x0220 << 16) | ((WORD32)0x05dd & 0xFFFF),
180      ((WORD32)0x023e << 16) | ((WORD32)0x012a & 0xFFFF),
181      ((WORD32)0xfa12 << 16) | ((WORD32)0x07f2 & 0xFFFF),
182      ((WORD32)0xffdc << 16) | ((WORD32)0xf964 & 0xFFFF),
183      ((WORD32)0xfb97 << 16) | ((WORD32)0xf817 & 0xFFFF),
184      ((WORD32)0x07d6 << 16) | ((WORD32)0xf87a & 0xFFFF),
185      ((WORD32)0xf810 << 16) | ((WORD32)0x055d & 0xFFFF),
186      ((WORD32)0xfa96 << 16) | ((WORD32)0x0103 & 0xFFFF),
187      ((WORD32)0x00bb << 16) | ((WORD32)0xfe5b & 0xFFFF),
188      ((WORD32)0xfa44 << 16) | ((WORD32)0xf82d & 0xFFFF),
189      ((WORD32)0x067b << 16) | ((WORD32)0x044c & 0xFFFF),
190      ((WORD32)0x0340 << 16) | ((WORD32)0xfde2 & 0xFFFF),
191      ((WORD32)0xfa96 << 16) | ((WORD32)0x078f & 0xFFFF),
192      ((WORD32)0x06f3 << 16) | ((WORD32)0xfe89 & 0xFFFF),
193      ((WORD32)0xf80a << 16) | ((WORD32)0xffca & 0xFFFF),
194      ((WORD32)0x06bf << 16) | ((WORD32)0x00d5 & 0xFFFF),
195      ((WORD32)0xff43 << 16) | ((WORD32)0x0590 & 0xFFFF),
196      ((WORD32)0x07ff << 16) | ((WORD32)0xff03 & 0xFFFF),
197      ((WORD32)0xf99f << 16) | ((WORD32)0xf8ac & 0xFFFF),
198      ((WORD32)0x07b5 << 16) | ((WORD32)0x07bb & 0xFFFF),
199      ((WORD32)0xf99b << 16) | ((WORD32)0x0525 & 0xFFFF),
200      ((WORD32)0xff13 << 16) | ((WORD32)0x0249 & 0xFFFF),
201      ((WORD32)0xfcce << 16) | ((WORD32)0x0788 & 0xFFFF),
202      ((WORD32)0x07ed << 16) | ((WORD32)0xf8a3 & 0xFFFF),
203      ((WORD32)0x024a << 16) | ((WORD32)0xf8b8 & 0xFFFF),
204      ((WORD32)0xf956 << 16) | ((WORD32)0xfa9d & 0xFFFF),
205      ((WORD32)0x07a2 << 16) | ((WORD32)0x03ef & 0xFFFF),
206      ((WORD32)0xff7c << 16) | ((WORD32)0x0043 & 0xFFFF),
207      ((WORD32)0xf809 << 16) | ((WORD32)0x0364 & 0xFFFF),
208      ((WORD32)0xfac3 << 16) | ((WORD32)0x069b & 0xFFFF),
209      ((WORD32)0xf980 << 16) | ((WORD32)0xfbdf & 0xFFFF),
210      ((WORD32)0xf807 << 16) | ((WORD32)0x06c2 & 0xFFFF),
211      ((WORD32)0x0006 << 16) | ((WORD32)0x052e & 0xFFFF),
212      ((WORD32)0x059d << 16) | ((WORD32)0xfe5d & 0xFFFF),
213      ((WORD32)0x07b5 << 16) | ((WORD32)0x0342 & 0xFFFF),
214      ((WORD32)0xfa7d << 16) | ((WORD32)0x074f & 0xFFFF),
215      ((WORD32)0xfd36 << 16) | ((WORD32)0x05b8 & 0xFFFF),
216      ((WORD32)0x075c << 16) | ((WORD32)0x0552 & 0xFFFF),
217      ((WORD32)0xf814 << 16) | ((WORD32)0x06df & 0xFFFF),
218      ((WORD32)0x0582 << 16) | ((WORD32)0x0474 & 0xFFFF),
219      ((WORD32)0xf80b << 16) | ((WORD32)0xfe65 & 0xFFFF),
220      ((WORD32)0x078a << 16) | ((WORD32)0xf806 & 0xFFFF),
221      ((WORD32)0xfa9b << 16) | ((WORD32)0x03f7 & 0xFFFF),
222      ((WORD32)0xfc36 << 16) | ((WORD32)0xf921 & 0xFFFF),
223      ((WORD32)0x0125 << 16) | ((WORD32)0xf878 & 0xFFFF),
224      ((WORD32)0xfda9 << 16) | ((WORD32)0x0076 & 0xFFFF),
225      ((WORD32)0x0381 << 16) | ((WORD32)0xf9b0 & 0xFFFF),
226      ((WORD32)0xfd18 << 16) | ((WORD32)0x0531 & 0xFFFF),
227      ((WORD32)0xff4d << 16) | ((WORD32)0x07d1 & 0xFFFF),
228      ((WORD32)0xf848 << 16) | ((WORD32)0xfbaf & 0xFFFF),
229      ((WORD32)0x0471 << 16) | ((WORD32)0x0650 & 0xFFFF),
230      ((WORD32)0x05e2 << 16) | ((WORD32)0x07b7 & 0xFFFF),
231      ((WORD32)0xfd87 << 16) | ((WORD32)0xf98c & 0xFFFF),
232      ((WORD32)0x0049 << 16) | ((WORD32)0xf837 & 0xFFFF),
233      ((WORD32)0x07e6 << 16) | ((WORD32)0x03df & 0xFFFF),
234      ((WORD32)0xf977 << 16) | ((WORD32)0xf8bc & 0xFFFF),
235      ((WORD32)0x056e << 16) | ((WORD32)0x0681 & 0xFFFF),
236      ((WORD32)0xfebc << 16) | ((WORD32)0x06d3 & 0xFFFF),
237      ((WORD32)0x0675 << 16) | ((WORD32)0xfe06 & 0xFFFF),
238      ((WORD32)0x03d3 << 16) | ((WORD32)0xfc4b & 0xFFFF),
239      ((WORD32)0x07b6 << 16) | ((WORD32)0x0314 & 0xFFFF),
240      ((WORD32)0xf812 << 16) | ((WORD32)0xfe01 & 0xFFFF),
241      ((WORD32)0x06a6 << 16) | ((WORD32)0xf86b & 0xFFFF),
242      ((WORD32)0xfb4d << 16) | ((WORD32)0x001a & 0xFFFF),
243      ((WORD32)0x07a5 << 16) | ((WORD32)0xf928 & 0xFFFF),
244      ((WORD32)0xf848 << 16) | ((WORD32)0xfae1 & 0xFFFF),
245      ((WORD32)0xf837 << 16) | ((WORD32)0x00fe & 0xFFFF),
246      ((WORD32)0x0750 << 16) | ((WORD32)0x04a3 & 0xFFFF),
247      ((WORD32)0xf802 << 16) | ((WORD32)0x05b0 & 0xFFFF),
248      ((WORD32)0xf90d << 16) | ((WORD32)0xfe60 & 0xFFFF),
249      ((WORD32)0xfde7 << 16) | ((WORD32)0xfa8a & 0xFFFF),
250      ((WORD32)0xfe07 << 16) | ((WORD32)0xf8fd & 0xFFFF),
251      ((WORD32)0x0031 << 16) | ((WORD32)0x022d & 0xFFFF),
252      ((WORD32)0x0691 << 16) | ((WORD32)0xf931 & 0xFFFF),
253      ((WORD32)0x0715 << 16) | ((WORD32)0xf8d4 & 0xFFFF),
254      ((WORD32)0xfe8c << 16) | ((WORD32)0xfde8 & 0xFFFF),
255      ((WORD32)0x00c0 << 16) | ((WORD32)0x0463 & 0xFFFF),
256      ((WORD32)0xfba0 << 16) | ((WORD32)0x07ae & 0xFFFF),
257      ((WORD32)0x02f7 << 16) | ((WORD32)0xfb35 & 0xFFFF),
258      ((WORD32)0xfa5f << 16) | ((WORD32)0x074c & 0xFFFF),
259      ((WORD32)0xfd3b << 16) | ((WORD32)0xf80b & 0xFFFF),
260      ((WORD32)0xfa7f << 16) | ((WORD32)0xfd95 & 0xFFFF),
261      ((WORD32)0xfdda << 16) | ((WORD32)0x06a6 & 0xFFFF),
262      ((WORD32)0x03ed << 16) | ((WORD32)0xfc5f & 0xFFFF),
263      ((WORD32)0x031e << 16) | ((WORD32)0x07a4 & 0xFFFF),
264      ((WORD32)0xf82e << 16) | ((WORD32)0x006d & 0xFFFF),
265      ((WORD32)0xfe9d << 16) | ((WORD32)0xf894 & 0xFFFF),
266      ((WORD32)0x07ff << 16) | ((WORD32)0x04aa & 0xFFFF),
267      ((WORD32)0xface << 16) | ((WORD32)0x057e & 0xFFFF),
268      ((WORD32)0xff0a << 16) | ((WORD32)0xfb6e & 0xFFFF),
269      ((WORD32)0xfb49 << 16) | ((WORD32)0xfd36 & 0xFFFF),
270      ((WORD32)0xfca8 << 16) | ((WORD32)0x014d & 0xFFFF),
271      ((WORD32)0x07fe << 16) | ((WORD32)0x00e4 & 0xFFFF),
272      ((WORD32)0xfb78 << 16) | ((WORD32)0xf8c3 & 0xFFFF),
273      ((WORD32)0x0788 << 16) | ((WORD32)0x02d3 & 0xFFFF),
274      ((WORD32)0xf9f1 << 16) | ((WORD32)0x044b & 0xFFFF),
275      ((WORD32)0x01a5 << 16) | ((WORD32)0xf872 & 0xFFFF),
276      ((WORD32)0x0800 << 16) | ((WORD32)0x0663 & 0xFFFF),
277      ((WORD32)0x0254 << 16) | ((WORD32)0x02d5 & 0xFFFF),
278      ((WORD32)0xfaf9 << 16) | ((WORD32)0x031a & 0xFFFF),
279      ((WORD32)0x037a << 16) | ((WORD32)0xf81e & 0xFFFF),
280      ((WORD32)0xf823 << 16) | ((WORD32)0x01af & 0xFFFF),
281      ((WORD32)0x0190 << 16) | ((WORD32)0xf876 & 0xFFFF),
282      ((WORD32)0xf85d << 16) | ((WORD32)0x07df & 0xFFFF),
283      ((WORD32)0x0778 << 16) | ((WORD32)0xfa54 & 0xFFFF),
284      ((WORD32)0xf92e << 16) | ((WORD32)0xff55 & 0xFFFF),
285      ((WORD32)0xf916 << 16) | ((WORD32)0xfc56 & 0xFFFF),
286      ((WORD32)0x031c << 16) | ((WORD32)0x07c8 & 0xFFFF),
287      ((WORD32)0x075d << 16) | ((WORD32)0xfb01 & 0xFFFF),
288      ((WORD32)0x0722 << 16) | ((WORD32)0x0465 & 0xFFFF),
289      ((WORD32)0xfd0e << 16) | ((WORD32)0x07b7 & 0xFFFF),
290      ((WORD32)0x0783 << 16) | ((WORD32)0xf8cd & 0xFFFF),
291      ((WORD32)0x07f1 << 16) | ((WORD32)0xffb3 & 0xFFFF),
292      ((WORD32)0xf87a << 16) | ((WORD32)0x034e & 0xFFFF),
293      ((WORD32)0x07fb << 16) | ((WORD32)0xfea7 & 0xFFFF),
294      ((WORD32)0xfd21 << 16) | ((WORD32)0xfc45 & 0xFFFF),
295      ((WORD32)0x006b << 16) | ((WORD32)0xfdf3 & 0xFFFF),
296      ((WORD32)0x02f0 << 16) | ((WORD32)0xfce8 & 0xFFFF),
297      ((WORD32)0x0755 << 16) | ((WORD32)0xfd8e & 0xFFFF),
298      ((WORD32)0x0585 << 16) | ((WORD32)0x0747 & 0xFFFF),
299      ((WORD32)0xfce8 << 16) | ((WORD32)0x07f6 & 0xFFFF),
300      ((WORD32)0xfda9 << 16) | ((WORD32)0x02ff & 0xFFFF),
301      ((WORD32)0xfb2f << 16) | ((WORD32)0x06f1 & 0xFFFF),
302      ((WORD32)0xf835 << 16) | ((WORD32)0x07b8 & 0xFFFF),
303      ((WORD32)0x0714 << 16) | ((WORD32)0x049a & 0xFFFF),
304      ((WORD32)0x006a << 16) | ((WORD32)0x01b4 & 0xFFFF),
305      ((WORD32)0xfbb8 << 16) | ((WORD32)0x07c8 & 0xFFFF),
306      ((WORD32)0xfc0c << 16) | ((WORD32)0x07db & 0xFFFF),
307      ((WORD32)0xf816 << 16) | ((WORD32)0xfcc8 & 0xFFFF),
308      ((WORD32)0xf827 << 16) | ((WORD32)0xfa2c & 0xFFFF),
309      ((WORD32)0xfdd0 << 16) | ((WORD32)0x07ff & 0xFFFF),
310      ((WORD32)0x0081 << 16) | ((WORD32)0xfba3 & 0xFFFF),
311      ((WORD32)0xfe5d << 16) | ((WORD32)0xfedd & 0xFFFF),
312      ((WORD32)0x054c << 16) | ((WORD32)0x05cd & 0xFFFF),
313      ((WORD32)0xf938 << 16) | ((WORD32)0x0031 & 0xFFFF),
314      ((WORD32)0xf8e0 << 16) | ((WORD32)0x071c & 0xFFFF),
315      ((WORD32)0x07ac << 16) | ((WORD32)0x0624 & 0xFFFF),
316      ((WORD32)0x05e1 << 16) | ((WORD32)0xffb3 & 0xFFFF),
317      ((WORD32)0xfd76 << 16) | ((WORD32)0xfd0e & 0xFFFF),
318      ((WORD32)0xfd45 << 16) | ((WORD32)0x0338 & 0xFFFF),
319      ((WORD32)0x03d3 << 16) | ((WORD32)0xfcd9 & 0xFFFF),
320      ((WORD32)0x07dd << 16) | ((WORD32)0x0029 & 0xFFFF),
321      ((WORD32)0xfd86 << 16) | ((WORD32)0xfe8e & 0xFFFF),
322      ((WORD32)0x0800 << 16) | ((WORD32)0xfde6 & 0xFFFF),
323      ((WORD32)0xf88c << 16) | ((WORD32)0xf823 & 0xFFFF),
324      ((WORD32)0x07fe << 16) | ((WORD32)0xf997 & 0xFFFF),
325      ((WORD32)0xfdeb << 16) | ((WORD32)0xf9ec & 0xFFFF),
326      ((WORD32)0xfd25 << 16) | ((WORD32)0x018b & 0xFFFF),
327      ((WORD32)0xf802 << 16) | ((WORD32)0x05f9 & 0xFFFF),
328      ((WORD32)0x06ed << 16) | ((WORD32)0x0473 & 0xFFFF),
329      ((WORD32)0x02ac << 16) | ((WORD32)0x06e5 & 0xFFFF),
330      ((WORD32)0x07ec << 16) | ((WORD32)0x005e & 0xFFFF),
331      ((WORD32)0xfaaa << 16) | ((WORD32)0xf8ab & 0xFFFF),
332      ((WORD32)0x051f << 16) | ((WORD32)0x0141 & 0xFFFF),
333      ((WORD32)0x07f7 << 16) | ((WORD32)0x03ab & 0xFFFF),
334      ((WORD32)0xfaed << 16) | ((WORD32)0x01b0 & 0xFFFF),
335      ((WORD32)0xff62 << 16) | ((WORD32)0xf8d5 & 0xFFFF),
336      ((WORD32)0x07e3 << 16) | ((WORD32)0x070f & 0xFFFF),
337      ((WORD32)0x0668 << 16) | ((WORD32)0xfd0d & 0xFFFF),
338      ((WORD32)0x0645 << 16) | ((WORD32)0x03a4 & 0xFFFF),
339      ((WORD32)0x00b2 << 16) | ((WORD32)0x067a & 0xFFFF),
340      ((WORD32)0xf90e << 16) | ((WORD32)0x0326 & 0xFFFF),
341      ((WORD32)0xfcd8 << 16) | ((WORD32)0xfaa8 & 0xFFFF),
342      ((WORD32)0x07d4 << 16) | ((WORD32)0xfa34 & 0xFFFF),
343      ((WORD32)0xf866 << 16) | ((WORD32)0x072a & 0xFFFF),
344      ((WORD32)0x015c << 16) | ((WORD32)0x0460 & 0xFFFF),
345      ((WORD32)0xf9d9 << 16) | ((WORD32)0xf84d & 0xFFFF),
346      ((WORD32)0x07fb << 16) | ((WORD32)0x036a & 0xFFFF),
347      ((WORD32)0x07a3 << 16) | ((WORD32)0x07c3 & 0xFFFF),
348      ((WORD32)0x07f7 << 16) | ((WORD32)0xfbac & 0xFFFF),
349      ((WORD32)0x023f << 16) | ((WORD32)0xf92c & 0xFFFF),
350      ((WORD32)0x06d2 << 16) | ((WORD32)0xfad6 & 0xFFFF),
351      ((WORD32)0xfbf4 << 16) | ((WORD32)0xfabb & 0xFFFF),
352      ((WORD32)0xf839 << 16) | ((WORD32)0xfe27 & 0xFFFF),
353      ((WORD32)0x07a2 << 16) | ((WORD32)0xf810 & 0xFFFF),
354      ((WORD32)0xf83f << 16) | ((WORD32)0x05e7 & 0xFFFF),
355      ((WORD32)0x0278 << 16) | ((WORD32)0x0352 & 0xFFFF),
356      ((WORD32)0xfe0a << 16) | ((WORD32)0x050e & 0xFFFF),
357      ((WORD32)0xfd4c << 16) | ((WORD32)0xfce8 & 0xFFFF),
358      ((WORD32)0xff89 << 16) | ((WORD32)0xff72 & 0xFFFF),
359      ((WORD32)0xfe2b << 16) | ((WORD32)0x07c4 & 0xFFFF),
360      ((WORD32)0xfe85 << 16) | ((WORD32)0x03ce & 0xFFFF),
361      ((WORD32)0xff29 << 16) | ((WORD32)0xf8fa & 0xFFFF),
362      ((WORD32)0xfa40 << 16) | ((WORD32)0x063e & 0xFFFF),
363      ((WORD32)0x07fc << 16) | ((WORD32)0x0734 & 0xFFFF),
364      ((WORD32)0x049b << 16) | ((WORD32)0xf8b8 & 0xFFFF),
365      ((WORD32)0x0250 << 16) | ((WORD32)0x07b4 & 0xFFFF),
366      ((WORD32)0x0360 << 16) | ((WORD32)0x03da & 0xFFFF),
367      ((WORD32)0x0778 << 16) | ((WORD32)0xfc84 & 0xFFFF),
368      ((WORD32)0xf83c << 16) | ((WORD32)0x06ee & 0xFFFF),
369      ((WORD32)0x02f0 << 16) | ((WORD32)0x0539 & 0xFFFF),
370      ((WORD32)0xf983 << 16) | ((WORD32)0x00b4 & 0xFFFF),
371      ((WORD32)0xfde7 << 16) | ((WORD32)0xf894 & 0xFFFF),
372      ((WORD32)0x06b8 << 16) | ((WORD32)0x0478 & 0xFFFF),
373      ((WORD32)0xf802 << 16) | ((WORD32)0xf851 & 0xFFFF),
374      ((WORD32)0x05f9 << 16) | ((WORD32)0x00f9 & 0xFFFF),
375      ((WORD32)0xfa05 << 16) | ((WORD32)0xfdd9 & 0xFFFF),
376      ((WORD32)0x07aa << 16) | ((WORD32)0xf9ad & 0xFFFF),
377      ((WORD32)0x07a3 << 16) | ((WORD32)0xff50 & 0xFFFF),
378      ((WORD32)0x03e6 << 16) | ((WORD32)0x0800 & 0xFFFF),
379      ((WORD32)0x03b5 << 16) | ((WORD32)0x00e1 & 0xFFFF),
380      ((WORD32)0xf9e1 << 16) | ((WORD32)0x0723 & 0xFFFF),
381      ((WORD32)0x0497 << 16) | ((WORD32)0x02d3 & 0xFFFF),
382      ((WORD32)0x0608 << 16) | ((WORD32)0x07bd & 0xFFFF),
383      ((WORD32)0xfb44 << 16) | ((WORD32)0xf8d9 & 0xFFFF),
384      ((WORD32)0x0602 << 16) | ((WORD32)0xfda2 & 0xFFFF),
385      ((WORD32)0xf81d << 16) | ((WORD32)0x0201 & 0xFFFF),
386      ((WORD32)0xfcbd << 16) | ((WORD32)0xf8cc & 0xFFFF),
387      ((WORD32)0x055b << 16) | ((WORD32)0x07e4 & 0xFFFF),
388      ((WORD32)0xf834 << 16) | ((WORD32)0xfffc & 0xFFFF),
389      ((WORD32)0x0736 << 16) | ((WORD32)0x07fc & 0xFFFF),
390      ((WORD32)0xf905 << 16) | ((WORD32)0x07f0 & 0xFFFF),
391      ((WORD32)0xf8ad << 16) | ((WORD32)0xfebe & 0xFFFF),
392      ((WORD32)0xffbc << 16) | ((WORD32)0xfd06 & 0xFFFF),
393      ((WORD32)0x0094 << 16) | ((WORD32)0xf8e5 & 0xFFFF),
394      ((WORD32)0x07f6 << 16) | ((WORD32)0x07c4 & 0xFFFF),
395      ((WORD32)0xfa02 << 16) | ((WORD32)0x0800 & 0xFFFF),
396      ((WORD32)0x005e << 16) | ((WORD32)0x07fc & 0xFFFF),
397      ((WORD32)0xf8e0 << 16) | ((WORD32)0xfd75 & 0xFFFF),
398      ((WORD32)0xf94c << 16) | ((WORD32)0x07d0 & 0xFFFF),
399      ((WORD32)0x02ad << 16) | ((WORD32)0xf91a & 0xFFFF),
400      ((WORD32)0xf806 << 16) | ((WORD32)0x0776 & 0xFFFF),
401      ((WORD32)0xfe2c << 16) | ((WORD32)0x0183 & 0xFFFF),
402      ((WORD32)0x0561 << 16) | ((WORD32)0xffb5 & 0xFFFF),
403      ((WORD32)0xff97 << 16) | ((WORD32)0xf898 & 0xFFFF),
404      ((WORD32)0x07ff << 16) | ((WORD32)0x077d & 0xFFFF),
405      ((WORD32)0x055b << 16) | ((WORD32)0x07ea & 0xFFFF),
406      ((WORD32)0xf808 << 16) | ((WORD32)0xfc6d & 0xFFFF),
407      ((WORD32)0x0692 << 16) | ((WORD32)0x07f7 & 0xFFFF),
408      ((WORD32)0x07ef << 16) | ((WORD32)0x05c3 & 0xFFFF),
409      ((WORD32)0xfac7 << 16) | ((WORD32)0x042d & 0xFFFF),
410      ((WORD32)0x0783 << 16) | ((WORD32)0xfa02 & 0xFFFF),
411      ((WORD32)0x07bd << 16) | ((WORD32)0x0745 & 0xFFFF),
412      ((WORD32)0xfe39 << 16) | ((WORD32)0x0492 & 0xFFFF),
413      ((WORD32)0xfc78 << 16) | ((WORD32)0xf896 & 0xFFFF),
414      ((WORD32)0xf925 << 16) | ((WORD32)0x071c & 0xFFFF),
415      ((WORD32)0x0758 << 16) | ((WORD32)0xfc4b & 0xFFFF),
416      ((WORD32)0x05ce << 16) | ((WORD32)0xf802 & 0xFFFF),
417      ((WORD32)0xf806 << 16) | ((WORD32)0x04a8 & 0xFFFF),
418      ((WORD32)0x0636 << 16) | ((WORD32)0x078c & 0xFFFF),
419      ((WORD32)0x009e << 16) | ((WORD32)0x04b1 & 0xFFFF),
420      ((WORD32)0xfb84 << 16) | ((WORD32)0x069a & 0xFFFF),
421      ((WORD32)0x07df << 16) | ((WORD32)0x0328 & 0xFFFF),
422      ((WORD32)0x03ce << 16) | ((WORD32)0x057d & 0xFFFF),
423      ((WORD32)0x0541 << 16) | ((WORD32)0x0177 & 0xFFFF),
424      ((WORD32)0x0043 << 16) | ((WORD32)0xfa01 & 0xFFFF),
425      ((WORD32)0xfce8 << 16) | ((WORD32)0x041b & 0xFFFF),
426      ((WORD32)0xf836 << 16) | ((WORD32)0xf847 & 0xFFFF),
427      ((WORD32)0xfbbd << 16) | ((WORD32)0xf8b0 & 0xFFFF),
428      ((WORD32)0x07fc << 16) | ((WORD32)0x04e4 & 0xFFFF),
429      ((WORD32)0xfbfb << 16) | ((WORD32)0xf8e5 & 0xFFFF),
430      ((WORD32)0x0029 << 16) | ((WORD32)0x06d1 & 0xFFFF),
431      ((WORD32)0x07ff << 16) | ((WORD32)0x0791 & 0xFFFF),
432      ((WORD32)0x06a2 << 16) | ((WORD32)0xff7e & 0xFFFF),
433      ((WORD32)0xfb4f << 16) | ((WORD32)0x07bf & 0xFFFF),
434      ((WORD32)0xfe98 << 16) | ((WORD32)0xfc26 & 0xFFFF),
435      ((WORD32)0x06ad << 16) | ((WORD32)0xfef5 & 0xFFFF),
436      ((WORD32)0x007a << 16) | ((WORD32)0x01a4 & 0xFFFF),
437      ((WORD32)0x0685 << 16) | ((WORD32)0xf86d & 0xFFFF),
438      ((WORD32)0xfc67 << 16) | ((WORD32)0x0346 & 0xFFFF),
439      ((WORD32)0xf8d2 << 16) | ((WORD32)0x07fd & 0xFFFF),
440      ((WORD32)0x032d << 16) | ((WORD32)0xfa03 & 0xFFFF),
441      ((WORD32)0xff65 << 16) | ((WORD32)0x05ed & 0xFFFF),
442      ((WORD32)0x061c << 16) | ((WORD32)0x0357 & 0xFFFF),
443      ((WORD32)0xfa0a << 16) | ((WORD32)0x0794 & 0xFFFF),
444      ((WORD32)0x0531 << 16) | ((WORD32)0x034f & 0xFFFF),
445      ((WORD32)0x04fc << 16) | ((WORD32)0xf88d & 0xFFFF),
446      ((WORD32)0x0361 << 16) | ((WORD32)0xff62 & 0xFFFF),
447      ((WORD32)0x0037 << 16) | ((WORD32)0xff91 & 0xFFFF),
448      ((WORD32)0x0666 << 16) | ((WORD32)0x0753 & 0xFFFF),
449      ((WORD32)0xf9a7 << 16) | ((WORD32)0xfd1a & 0xFFFF),
450      ((WORD32)0x051c << 16) | ((WORD32)0x00a6 & 0xFFFF),
451      ((WORD32)0x043b << 16) | ((WORD32)0x04ce & 0xFFFF),
452      ((WORD32)0x05f0 << 16) | ((WORD32)0x005c & 0xFFFF),
453      ((WORD32)0x07ed << 16) | ((WORD32)0xfe72 & 0xFFFF),
454      ((WORD32)0xf991 << 16) | ((WORD32)0xf8eb & 0xFFFF),
455      ((WORD32)0xfad5 << 16) | ((WORD32)0x05c7 & 0xFFFF),
456      ((WORD32)0x00ef << 16) | ((WORD32)0xf94f & 0xFFFF),
457      ((WORD32)0xf865 << 16) | ((WORD32)0xf83f & 0xFFFF),
458      ((WORD32)0xfb06 << 16) | ((WORD32)0x069f & 0xFFFF),
459      ((WORD32)0x003e << 16) | ((WORD32)0xf805 & 0xFFFF),
460      ((WORD32)0xf829 << 16) | ((WORD32)0x02ec & 0xFFFF),
461      ((WORD32)0xf800 << 16) | ((WORD32)0xfd1e & 0xFFFF),
462      ((WORD32)0x0721 << 16) | ((WORD32)0xf82b & 0xFFFF),
463      ((WORD32)0x00d5 << 16) | ((WORD32)0x0630 & 0xFFFF),
464      ((WORD32)0x07ad << 16) | ((WORD32)0xfd2a & 0xFFFF),
465      ((WORD32)0x0411 << 16) | ((WORD32)0x07b0 & 0xFFFF),
466      ((WORD32)0x015c << 16) | ((WORD32)0xf9da & 0xFFFF),
467      ((WORD32)0x0212 << 16) | ((WORD32)0x07fe & 0xFFFF),
468      ((WORD32)0xffe9 << 16) | ((WORD32)0x07e1 & 0xFFFF),
469      ((WORD32)0xf9a2 << 16) | ((WORD32)0x07c5 & 0xFFFF),
470      ((WORD32)0xf80f << 16) | ((WORD32)0xf809 & 0xFFFF),
471      ((WORD32)0xf803 << 16) | ((WORD32)0x0026 & 0xFFFF),
472      ((WORD32)0xfa56 << 16) | ((WORD32)0x02b2 & 0xFFFF),
473      ((WORD32)0xfa5d << 16) | ((WORD32)0x0776 & 0xFFFF),
474      ((WORD32)0x07fd << 16) | ((WORD32)0xf81a & 0xFFFF),
475      ((WORD32)0xfaee << 16) | ((WORD32)0xfeaf & 0xFFFF),
476      ((WORD32)0xfeb3 << 16) | ((WORD32)0xf853 & 0xFFFF),
477      ((WORD32)0xfc82 << 16) | ((WORD32)0xf86a & 0xFFFF),
478      ((WORD32)0xf803 << 16) | ((WORD32)0x07b3 & 0xFFFF),
479      ((WORD32)0xfea8 << 16) | ((WORD32)0xf815 & 0xFFFF),
480      ((WORD32)0xf8f6 << 16) | ((WORD32)0xfa43 & 0xFFFF),
481      ((WORD32)0x0389 << 16) | ((WORD32)0xf884 & 0xFFFF),
482      ((WORD32)0x0777 << 16) | ((WORD32)0xf802 & 0xFFFF),
483      ((WORD32)0xf87c << 16) | ((WORD32)0xfb7d & 0xFFFF),
484      ((WORD32)0xf8ea << 16) | ((WORD32)0x03cf & 0xFFFF),
485      ((WORD32)0x07ff << 16) | ((WORD32)0xf94a & 0xFFFF),
486      ((WORD32)0xf9f8 << 16) | ((WORD32)0x0011 & 0xFFFF),
487      ((WORD32)0x0783 << 16) | ((WORD32)0xff19 & 0xFFFF),
488      ((WORD32)0x06cf << 16) | ((WORD32)0x0430 & 0xFFFF),
489      ((WORD32)0x032d << 16) | ((WORD32)0x068b & 0xFFFF),
490      ((WORD32)0xfd0a << 16) | ((WORD32)0xf909 & 0xFFFF),
491      ((WORD32)0xfd1e << 16) | ((WORD32)0x02c6 & 0xFFFF),
492      ((WORD32)0xf887 << 16) | ((WORD32)0xf93e & 0xFFFF),
493      ((WORD32)0xfac7 << 16) | ((WORD32)0xfe86 & 0xFFFF),
494      ((WORD32)0x00f5 << 16) | ((WORD32)0x07fe & 0xFFFF),
495      ((WORD32)0x078b << 16) | ((WORD32)0x06a7 & 0xFFFF),
496      ((WORD32)0x0602 << 16) | ((WORD32)0xfd28 & 0xFFFF),
497      ((WORD32)0x048a << 16) | ((WORD32)0xfe13 & 0xFFFF),
498      ((WORD32)0x03c0 << 16) | ((WORD32)0xfd97 & 0xFFFF),
499      ((WORD32)0x07c9 << 16) | ((WORD32)0xf809 & 0xFFFF),
500      ((WORD32)0xfcf0 << 16) | ((WORD32)0x07e2 & 0xFFFF),
501      ((WORD32)0x0348 << 16) | ((WORD32)0x002b & 0xFFFF),
502      ((WORD32)0x00c5 << 16) | ((WORD32)0x005a & 0xFFFF),
503      ((WORD32)0xf92d << 16) | ((WORD32)0x0751 & 0xFFFF),
504      ((WORD32)0x071c << 16) | ((WORD32)0xf805 & 0xFFFF),
505      ((WORD32)0xfc25 << 16) | ((WORD32)0xf841 & 0xFFFF),
506      ((WORD32)0x0235 << 16) | ((WORD32)0x04b1 & 0xFFFF),
507      ((WORD32)0xfabb << 16) | ((WORD32)0x04b5 & 0xFFFF),
508      ((WORD32)0x07e8 << 16) | ((WORD32)0x0800 & 0xFFFF),
509      ((WORD32)0xfe59 << 16) | ((WORD32)0x045e & 0xFFFF),
510      ((WORD32)0xfb08 << 16) | ((WORD32)0xfb35 & 0xFFFF),
511      ((WORD32)0x01a0 << 16) | ((WORD32)0xf90d & 0xFFFF),
512      ((WORD32)0xf82d << 16) | ((WORD32)0x07b4 & 0xFFFF),
513      ((WORD32)0x00e4 << 16) | ((WORD32)0x01b8 & 0xFFFF),
514      ((WORD32)0xfcb1 << 16) | ((WORD32)0x0242 & 0xFFFF),
515      ((WORD32)0x01ee << 16) | ((WORD32)0x041b & 0xFFFF),
516      ((WORD32)0xfab0 << 16) | ((WORD32)0xff57 & 0xFFFF),
517      ((WORD32)0xfbb4 << 16) | ((WORD32)0xf830 & 0xFFFF),
518      ((WORD32)0xf839 << 16) | ((WORD32)0x01c4 & 0xFFFF),
519      ((WORD32)0x06fe << 16) | ((WORD32)0xfefa & 0xFFFF),
520      ((WORD32)0x0186 << 16) | ((WORD32)0x0021 & 0xFFFF),
521      ((WORD32)0xfc4b << 16) | ((WORD32)0xf861 & 0xFFFF),
522      ((WORD32)0xff6f << 16) | ((WORD32)0xf871 & 0xFFFF),
523      ((WORD32)0xf89b << 16) | ((WORD32)0xff2a & 0xFFFF),
524      ((WORD32)0xf94b << 16) | ((WORD32)0xffdd & 0xFFFF),
525      ((WORD32)0x0604 << 16) | ((WORD32)0xf801 & 0xFFFF),
526      ((WORD32)0xfca2 << 16) | ((WORD32)0x07fa & 0xFFFF),
527      ((WORD32)0xfa3b << 16) | ((WORD32)0xfd33 & 0xFFFF),
528      ((WORD32)0x064f << 16) | ((WORD32)0x043a & 0xFFFF),
529      ((WORD32)0x07cb << 16) | ((WORD32)0xfddd & 0xFFFF),
530      ((WORD32)0x07f0 << 16) | ((WORD32)0xfb70 & 0xFFFF),
531      ((WORD32)0x0625 << 16) | ((WORD32)0xf9e1 & 0xFFFF),
532      ((WORD32)0xf971 << 16) | ((WORD32)0xfa1e & 0xFFFF),
533      ((WORD32)0x068e << 16) | ((WORD32)0x07fa & 0xFFFF),
534      ((WORD32)0xfddd << 16) | ((WORD32)0x0583 & 0xFFFF),
535      ((WORD32)0xfc89 << 16) | ((WORD32)0x06d3 & 0xFFFF),
536      ((WORD32)0x07f0 << 16) | ((WORD32)0x075a & 0xFFFF),
537      ((WORD32)0xf98b << 16) | ((WORD32)0xfd64 & 0xFFFF),
538      ((WORD32)0x0372 << 16) | ((WORD32)0xfe3f & 0xFFFF),
539      ((WORD32)0x056b << 16) | ((WORD32)0xf85d & 0xFFFF),
540      ((WORD32)0x047e << 16) | ((WORD32)0xfa58 & 0xFFFF),
541      ((WORD32)0x00de << 16) | ((WORD32)0xff4f & 0xFFFF),
542      ((WORD32)0x074c << 16) | ((WORD32)0xfab9 & 0xFFFF),
543      ((WORD32)0xfc15 << 16) | ((WORD32)0x0481 & 0xFFFF),
544      ((WORD32)0xf8e1 << 16) | ((WORD32)0xfa44 & 0xFFFF),
545      ((WORD32)0x0539 << 16) | ((WORD32)0x0546 & 0xFFFF),
546      ((WORD32)0x0565 << 16) | ((WORD32)0xf977 & 0xFFFF),
547      ((WORD32)0xfc2e << 16) | ((WORD32)0xfea8 & 0xFFFF),
548      ((WORD32)0xf806 << 16) | ((WORD32)0xf884 & 0xFFFF),
549      ((WORD32)0xf8bb << 16) | ((WORD32)0x04f6 & 0xFFFF),
550      ((WORD32)0xff78 << 16) | ((WORD32)0xfe18 & 0xFFFF),
551      ((WORD32)0x07f4 << 16) | ((WORD32)0x0181 & 0xFFFF),
552      ((WORD32)0x07d1 << 16) | ((WORD32)0xfdb5 & 0xFFFF),
553      ((WORD32)0x0796 << 16) | ((WORD32)0xf833 & 0xFFFF),
554      ((WORD32)0xf85e << 16) | ((WORD32)0xf9a2 & 0xFFFF),
555      ((WORD32)0xfc12 << 16) | ((WORD32)0x02a2 & 0xFFFF),
556      ((WORD32)0x07fe << 16) | ((WORD32)0x071f & 0xFFFF),
557      ((WORD32)0x0409 << 16) | ((WORD32)0xf91f & 0xFFFF),
558      ((WORD32)0x03c6 << 16) | ((WORD32)0xfe81 & 0xFFFF),
559      ((WORD32)0xfb09 << 16) | ((WORD32)0x0600 & 0xFFFF),
560      ((WORD32)0xfc7e << 16) | ((WORD32)0x0800 & 0xFFFF),
561      ((WORD32)0x07e4 << 16) | ((WORD32)0xfbb7 & 0xFFFF),
562      ((WORD32)0xfb14 << 16) | ((WORD32)0xf8d7 & 0xFFFF),
563      ((WORD32)0xffb1 << 16) | ((WORD32)0xfa69 & 0xFFFF),
564      ((WORD32)0xfd98 << 16) | ((WORD32)0xff63 & 0xFFFF),
565      ((WORD32)0x035a << 16) | ((WORD32)0x002d & 0xFFFF),
566      ((WORD32)0xf91c << 16) | ((WORD32)0x07ea & 0xFFFF),
567      ((WORD32)0x0561 << 16) | ((WORD32)0xfeec & 0xFFFF),
568      ((WORD32)0xfa57 << 16) | ((WORD32)0xf9e0 & 0xFFFF),
569      ((WORD32)0x0786 << 16) | ((WORD32)0x00b9 & 0xFFFF),
570      ((WORD32)0xf969 << 16) | ((WORD32)0x00b7 & 0xFFFF),
571      ((WORD32)0xfd6f << 16) | ((WORD32)0x0403 & 0xFFFF),
572      ((WORD32)0x049c << 16) | ((WORD32)0xf815 & 0xFFFF),
573      ((WORD32)0xfd18 << 16) | ((WORD32)0x0098 & 0xFFFF),
574      ((WORD32)0x0800 << 16) | ((WORD32)0xfedf & 0xFFFF),
575      ((WORD32)0xf89c << 16) | ((WORD32)0xf829 & 0xFFFF),
576      ((WORD32)0xfc6e << 16) | ((WORD32)0xfba9 & 0xFFFF),
577      ((WORD32)0x038a << 16) | ((WORD32)0x05b5 & 0xFFFF),
578      ((WORD32)0x004b << 16) | ((WORD32)0x0517 & 0xFFFF),
579      ((WORD32)0x042d << 16) | ((WORD32)0xf92b & 0xFFFF),
580      ((WORD32)0xf86d << 16) | ((WORD32)0xffdb & 0xFFFF),
581      ((WORD32)0xf819 << 16) | ((WORD32)0x0695 & 0xFFFF),
582      ((WORD32)0x06ff << 16) | ((WORD32)0x0727 & 0xFFFF),
583      ((WORD32)0xf887 << 16) | ((WORD32)0x034f & 0xFFFF),
584      ((WORD32)0x07af << 16) | ((WORD32)0x0773 & 0xFFFF),
585      ((WORD32)0x07ce << 16) | ((WORD32)0x06e4 & 0xFFFF),
586      ((WORD32)0x07f9 << 16) | ((WORD32)0x059d & 0xFFFF),
587      ((WORD32)0xf86c << 16) | ((WORD32)0xfda2 & 0xFFFF),
588      ((WORD32)0x0754 << 16) | ((WORD32)0xf826 & 0xFFFF),
589 
590      ((WORD32)0xf801 << 16) | ((WORD32)0xfb3e & 0xFFFF),
591      ((WORD32)0x07c5 << 16) | ((WORD32)0xfa99 & 0xFFFF),
592      ((WORD32)0x0121 << 16) | ((WORD32)0xf865 & 0xFFFF),
593      ((WORD32)0xfc3d << 16) | ((WORD32)0xfd03 & 0xFFFF),
594      ((WORD32)0x0675 << 16) | ((WORD32)0x025f & 0xFFFF),
595      ((WORD32)0xfce2 << 16) | ((WORD32)0x072a & 0xFFFF),
596      ((WORD32)0xffea << 16) | ((WORD32)0xfaa5 & 0xFFFF),
597      ((WORD32)0xf8b3 << 16) | ((WORD32)0xff14 & 0xFFFF),
598      ((WORD32)0x0463 << 16) | ((WORD32)0x0605 & 0xFFFF),
599      ((WORD32)0x0333 << 16) | ((WORD32)0xf816 & 0xFFFF),
600      ((WORD32)0xf803 << 16) | ((WORD32)0xf8f3 & 0xFFFF),
601      ((WORD32)0xf85c << 16) | ((WORD32)0x0746 & 0xFFFF),
602      ((WORD32)0xfc58 << 16) | ((WORD32)0xfb76 & 0xFFFF),
603      ((WORD32)0xfa2a << 16) | ((WORD32)0xf829 & 0xFFFF),
604      ((WORD32)0x060d << 16) | ((WORD32)0x01ad & 0xFFFF),
605      ((WORD32)0x0091 << 16) | ((WORD32)0xf9bd & 0xFFFF),
606      ((WORD32)0x05f6 << 16) | ((WORD32)0xf8b5 & 0xFFFF),
607      ((WORD32)0xf849 << 16) | ((WORD32)0xf86c & 0xFFFF),
608      ((WORD32)0x026f << 16) | ((WORD32)0xfc0c & 0xFFFF),
609      ((WORD32)0x0553 << 16) | ((WORD32)0x052c & 0xFFFF),
610      ((WORD32)0x0756 << 16) | ((WORD32)0x0167 & 0xFFFF),
611      ((WORD32)0xfa57 << 16) | ((WORD32)0x0434 & 0xFFFF),
612      ((WORD32)0xfa65 << 16) | ((WORD32)0xfc5f & 0xFFFF),
613      ((WORD32)0xf80a << 16) | ((WORD32)0xf8cb & 0xFFFF),
614      ((WORD32)0x07da << 16) | ((WORD32)0xf9ce & 0xFFFF),
615      ((WORD32)0xfba0 << 16) | ((WORD32)0xffcb & 0xFFFF),
616      ((WORD32)0xffdd << 16) | ((WORD32)0x0006 & 0xFFFF),
617      ((WORD32)0xf91c << 16) | ((WORD32)0x0367 & 0xFFFF),
618      ((WORD32)0xf817 << 16) | ((WORD32)0xf8f8 & 0xFFFF),
619      ((WORD32)0x0424 << 16) | ((WORD32)0x055b & 0xFFFF),
620      ((WORD32)0xf807 << 16) | ((WORD32)0xfb5a & 0xFFFF),
621      ((WORD32)0xf801 << 16) | ((WORD32)0x07df & 0xFFFF),
622      ((WORD32)0x046c << 16) | ((WORD32)0x04c2 & 0xFFFF),
623      ((WORD32)0x02c4 << 16) | ((WORD32)0x0797 & 0xFFFF),
624      ((WORD32)0x0503 << 16) | ((WORD32)0xfa0c & 0xFFFF),
625      ((WORD32)0xf9d4 << 16) | ((WORD32)0xfd4a & 0xFFFF),
626      ((WORD32)0xf8ac << 16) | ((WORD32)0x004c & 0xFFFF),
627      ((WORD32)0xf9e6 << 16) | ((WORD32)0xf8b1 & 0xFFFF),
628      ((WORD32)0x0662 << 16) | ((WORD32)0xf88c & 0xFFFF),
629      ((WORD32)0x045c << 16) | ((WORD32)0xff0c & 0xFFFF),
630      ((WORD32)0xf926 << 16) | ((WORD32)0x0365 & 0xFFFF),
631      ((WORD32)0xf892 << 16) | ((WORD32)0x023b & 0xFFFF),
632      ((WORD32)0xff10 << 16) | ((WORD32)0xf804 & 0xFFFF),
633      ((WORD32)0x01b5 << 16) | ((WORD32)0xf8be & 0xFFFF),
634      ((WORD32)0xf9e8 << 16) | ((WORD32)0x07fb & 0xFFFF),
635      ((WORD32)0x07d9 << 16) | ((WORD32)0xf855 & 0xFFFF),
636      ((WORD32)0xf920 << 16) | ((WORD32)0x07a9 & 0xFFFF),
637      ((WORD32)0xf889 << 16) | ((WORD32)0x03f4 & 0xFFFF)}
638 
639 };
640 
641 const ia_qmf_dec_tables_struct ixheaacd_aac_qmf_dec_tables = {
642 
643     // const WORD16 w_32[2 * 30] =
644     {0,      32767,  0,      32767,  0,      32767,  6393,   32138, 12540,
645      30274,  18205,  27246,  12540,  30274,  23170,  23170,  30274, 12540,
646      18205,  27246,  30274,  12540,  32138,  -6393,  23170,  23170, 32767,
647      0,      23170,  -23170, 27246,  18205,  30274,  -12540, 6393,  -32138,
648      30274,  12540,  23170,  -23170, -12540, -30274, 32138,  6393,  12540,
649      -30274, -27246, -18205, 0,      32767,  0,      32767,  0,     32767,
650      23170,  23170,  32767,  0,      23170,  -23170},
651 
652     // const WORD16 w_16[2 * 12] =
653     {0,     32767,  0,     32767, 0,     32767,  12540,  30274,
654      23170, 23170,  30274, 12540, 23170, 23170,  32767,  0,
655      23170, -23170, 30274, 12540, 23170, -23170, -12540, -30274},
656 
657     // const WORD32 ixheaacd_dig_rev_table2_32[4]=
658     {0, 64, 16, 80},
659 
660     // const WORD32 ixheaacd_dig_rev_table4_16[2]=
661     {0, 16},
662 
663     // const WORD16 ixheaacd_sbr_sin_twiddle_l64 and
664     // ixheaacd_sbr_cos_twiddle_l64 [32] =
665     {
666         (WORD16)0x0192, (WORD16)0x7ffe, (WORD16)0x7fea, (WORD16)0x04b6,
667         (WORD16)0x07d9, (WORD16)0x7fc2, (WORD16)0x7f87, (WORD16)0x0afb,
668         (WORD16)0x0e1c, (WORD16)0x7f38, (WORD16)0x7ed6, (WORD16)0x113a,
669         (WORD16)0x1455, (WORD16)0x7e60, (WORD16)0x7dd6, (WORD16)0x176e,
670         (WORD16)0x1a83, (WORD16)0x7d3a, (WORD16)0x7c89, (WORD16)0x1d93,
671         (WORD16)0x209f, (WORD16)0x7bc6, (WORD16)0x7aef, (WORD16)0x23a7,
672         (WORD16)0x26a8, (WORD16)0x7a06, (WORD16)0x790a, (WORD16)0x29a4,
673         (WORD16)0x2c99, (WORD16)0x77fb, (WORD16)0x76d9, (WORD16)0x2f87,
674         (WORD16)0x326e, (WORD16)0x75a6, (WORD16)0x7460, (WORD16)0x354e,
675         (WORD16)0x3825, (WORD16)0x7308, (WORD16)0x719e, (WORD16)0x3af3,
676         (WORD16)0x3db8, (WORD16)0x7023, (WORD16)0x6e97, (WORD16)0x4074,
677         (WORD16)0x4326, (WORD16)0x6cf9, (WORD16)0x6b4b, (WORD16)0x45cd,
678         (WORD16)0x486a, (WORD16)0x698c, (WORD16)0x67bd, (WORD16)0x4afb,
679         (WORD16)0x4d81, (WORD16)0x65de, (WORD16)0x63ef, (WORD16)0x4ffb,
680         (WORD16)0x5269, (WORD16)0x61f1, (WORD16)0x5fe4, (WORD16)0x54ca,
681         (WORD16)0x571e, (WORD16)0x5dc8, (WORD16)0x5b9d, (WORD16)0x5964,
682 
683     },
684     // WORD16 sbr_alt_sin_twiddle_l64[32];
685     {
686         // (WORD16)0x0000,  (WORD16)0x7fff,
687         (WORD16)0x0648, (WORD16)0x7fd9, (WORD16)0x0c8c, (WORD16)0x7f62,
688         (WORD16)0x12c8, (WORD16)0x7e9d, (WORD16)0x18f9, (WORD16)0x7d8a,
689         (WORD16)0x1f1a, (WORD16)0x7c2a, (WORD16)0x2528, (WORD16)0x7a7d,
690         (WORD16)0x2b1f, (WORD16)0x7885, (WORD16)0x30fc, (WORD16)0x7642,
691         (WORD16)0x36ba, (WORD16)0x73b6, (WORD16)0x3c57, (WORD16)0x70e3,
692         (WORD16)0x41ce, (WORD16)0x6dca, (WORD16)0x471d, (WORD16)0x6a6e,
693         (WORD16)0x4c40, (WORD16)0x66d0, (WORD16)0x5134, (WORD16)0x62f2,
694         (WORD16)0x55f6, (WORD16)0x5ed7, (WORD16)0x5a82, (WORD16)0x5a82,
695 
696     },
697 
698     // const WORD16 ixheaacd_sbr_cos_sin_twiddle_ds_l32[32+32] =
699     {(WORD16)0x7ffe, (WORD16)0x0192, (WORD16)0x7fea, (WORD16)0x04b6,
700      (WORD16)0x7fc2, (WORD16)0x07d9, (WORD16)0x7f87, (WORD16)0x0afb,
701      (WORD16)0x7f38, (WORD16)0x0e1c, (WORD16)0x7ed6, (WORD16)0x113a,
702      (WORD16)0x7e60, (WORD16)0x1455, (WORD16)0x7dd6, (WORD16)0x176e,
703      (WORD16)0x7d3a, (WORD16)0x1a83, (WORD16)0x7c89, (WORD16)0x1d93,
704      (WORD16)0x7bc6, (WORD16)0x209f, (WORD16)0x7aef, (WORD16)0x23a7,
705      (WORD16)0x7a06, (WORD16)0x26a8, (WORD16)0x790a, (WORD16)0x29a4,
706      (WORD16)0x77fb, (WORD16)0x2c99, (WORD16)0x76d9, (WORD16)0x2f87,
707      (WORD16)0x75a6, (WORD16)0x326e, (WORD16)0x7460, (WORD16)0x354e,
708      (WORD16)0x7308, (WORD16)0x3825, (WORD16)0x719e, (WORD16)0x3af3,
709      (WORD16)0x7023, (WORD16)0x3db8, (WORD16)0x6e97, (WORD16)0x4074,
710      (WORD16)0x6cf9, (WORD16)0x4326, (WORD16)0x6b4b, (WORD16)0x45cd,
711      (WORD16)0x698c, (WORD16)0x486a, (WORD16)0x67bd, (WORD16)0x4afb,
712      (WORD16)0x65de, (WORD16)0x4d81, (WORD16)0x63ef, (WORD16)0x4ffb,
713      (WORD16)0x61f1, (WORD16)0x5269, (WORD16)0x5fe4, (WORD16)0x54ca,
714      (WORD16)0x5dc8, (WORD16)0x571e, (WORD16)0x5b9d, (WORD16)0x5964},
715 
716     // const WORD16 ixheaacd_sbr_cos_twiddle_l32 and
717     // ixheaacd_sbr_sin_twiddle_l32[16]=
718     {
719         (WORD16)0x0324, (WORD16)0x7ff6, (WORD16)0x7fa7, (WORD16)0x096b,
720         (WORD16)0x0fab, (WORD16)0x7f0a, (WORD16)0x7e1e, (WORD16)0x15e2,
721         (WORD16)0x1c0c, (WORD16)0x7ce4, (WORD16)0x7b5d, (WORD16)0x2224,
722         (WORD16)0x2827, (WORD16)0x798a, (WORD16)0x776c, (WORD16)0x2e11,
723         (WORD16)0x33df, (WORD16)0x7505, (WORD16)0x7255, (WORD16)0x398d,
724         (WORD16)0x3f17, (WORD16)0x6f5f, (WORD16)0x6c24, (WORD16)0x447b,
725         (WORD16)0x49b4, (WORD16)0x68a7, (WORD16)0x64e9, (WORD16)0x4ec0,
726         (WORD16)0x539b, (WORD16)0x60ec, (WORD16)0x5cb4, (WORD16)0x5843,
727 
728     },
729     // const WORD16 ixheaacd_sbr_alt_sin_twiddle_l32[17] =
730     {
731         //(WORD16)0x0000, (WORD16)0x7fff,
732         (WORD16)0x0c8c,
733         (WORD16)0x7f62,
734         (WORD16)0x18f9,
735         (WORD16)0x7d8a,
736         (WORD16)0x2528,
737         (WORD16)0x7a7d,
738         (WORD16)0x30fc,
739         (WORD16)0x7642,
740         (WORD16)0x3c57,
741         (WORD16)0x70e3,
742         (WORD16)0x471d,
743         (WORD16)0x6a6e,
744         (WORD16)0x5134,
745         (WORD16)0x62f2,
746         (WORD16)0x5a82,
747         (WORD16)0x5a82,
748 
749     },
750     // const WORD16 ixheaacd_sbr_t_cos_sin_l32[32+32] = //exp[-i * pi/32* 3/4 *
751     // (k +0.5)]
752     {(WORD16)0x7fea,  (WORD16)0x04b6, (WORD16)0x7f38,  (WORD16)0x0e1c,
753      (WORD16)0x7dd6,  (WORD16)0x176e, (WORD16)0x7bc6,  (WORD16)0x209f,
754      (WORD16)0x790a,  (WORD16)0x29a4, (WORD16)0x75a6,  (WORD16)0x326e,
755      (WORD16)0x719e,  (WORD16)0x3af3, (WORD16)0x6cf9,  (WORD16)0x4326,
756      (WORD16)0x67bd,  (WORD16)0x4afb, (WORD16)0x61f1,  (WORD16)0x5269,
757      (WORD16)0x5b9d,  (WORD16)0x5964, (WORD16)0x54ca,  (WORD16)0x5fe4,
758      (WORD16)0x4d81,  (WORD16)0x65de, (WORD16)0x45cd,  (WORD16)0x6b4b,
759      (WORD16)0x3db8,  (WORD16)0x7023, (WORD16)0x354e,  (WORD16)0x7460,
760      (WORD16)0x2c99,  (WORD16)0x77fb, (WORD16)0x23a7,  (WORD16)0x7aef,
761      (WORD16)0x1a83,  (WORD16)0x7d3a, (WORD16)0x113a,  (WORD16)0x7ed6,
762      (WORD16)0x07d9,  (WORD16)0x7fc2, (WORD16)-0x0192, (WORD16)0x7ffe,
763      (WORD16)-0x0afb, (WORD16)0x7f87, (WORD16)-0x1455, (WORD16)0x7e60,
764      (WORD16)-0x1d93, (WORD16)0x7c89, (WORD16)-0x26a8, (WORD16)0x7a06,
765      (WORD16)-0x2f87, (WORD16)0x76d9, (WORD16)-0x3825, (WORD16)0x7308,
766      (WORD16)-0x4074, (WORD16)0x6e97, (WORD16)-0x486a, (WORD16)0x698c,
767      (WORD16)-0x4ffb, (WORD16)0x63ef, (WORD16)-0x571e, (WORD16)0x5dc8},
768 
769     // const WORD16 ixheeaacd_post_fft_tw_tab[17] =
770     {32767, 32610, 32138, 31357, 30274, 28899, 27246, 25330, 23170, 20788,
771      18205, 15447, 12540, 9512, 6393, 3212, 0},
772 
773     // const WORD16 ixheaacd_dct23_tw[66] =
774     {0,     0,     32758, 804,   32729, 1608,  32679, 2411,  32610, 3212,
775      32522, 4011,  32413, 4808,  32286, 5602,  32138, 6393,  31972, 7180,
776      31786, 7962,  31581, 8740,  31357, 9512,  31114, 10279, 30853, 11039,
777      30572, 11793, 30274, 12540, 29957, 13279, 29622, 14010, 29269, 14733,
778      28899, 15447, 28511, 16151, 28106, 16846, 27684, 17531, 27246, 18205,
779      26791, 18868, 26320, 19520, 25833, 20160, 25330, 20788, 24812, 21403,
780      24279, 22006, 23732, 22595, 23170, 23170},
781 
782     // const WORD16 qmf_c[1280] =
783     {0,      -18,    -18,    -16,    -16,    -16,   -17,    -17,    -18,
784      -19,    -19,    -20,    -21,    -21,    -22,   -23,    -23,    -24,
785      -24,    -25,    -25,    -25,    -26,    -25,   -26,    -26,    -25,
786      -25,    -25,    -24,    -24,    -23,    -22,   -21,    -19,    -18,
787      -17,    -15,    -13,    -11,    -9,     -7,    -5,     -2,     0,
788      4,      7,      10,     13,     17,     20,    24,     28,     32,
789      37,     41,     46,     51,     55,     60,    65,     70,     75,
790      81,     86,     91,     97,     102,    107,   113,    118,    123,
791      128,    134,    138,    143,    148,    153,   157,    161,    165,
792      168,    172,    175,    178,    180,    182,   183,    184,    185,
793      185,    184,    183,    182,    179,    176,   173,    168,    163,
794      158,    151,    144,    135,    126,    116,   105,    93,     80,
795      66,     52,     36,     19,     1,      -18,   -38,    -59,    -81,
796      -105,   -129,   -155,   -181,   -209,   -238,  -268,   -299,   -331,
797      -365,   -399,   435,    472,    509,    548,   588,    629,    670,
798      713,    756,    800,    845,    891,    937,   985,    1032,   1081,
799      1129,   1179,   1228,   1278,   1328,   1378,  1429,   1479,   1530,
800      1580,   1630,   1680,   1729,   1778,   1826,  1873,   1920,   1966,
801      2010,   2054,   2096,   2137,   2177,   2215,  2251,   2286,   2319,
802      2349,   2378,   2404,   2428,   2449,   2468,  2484,   2497,   2507,
803      2514,   2517,   2517,   2514,   2507,   2496,  2482,   2463,   2440,
804      2413,   2381,   2346,   2305,   2260,   2210,  2155,   2095,   2030,
805      1960,   1885,   1804,   1717,   1625,   1528,  1425,   1315,   1201,
806      1080,   953,    820,    682,    536,    385,   228,    65,     -105,
807      -281,   -463,   -652,   -846,   -1047,  -1254, -1467,  -1687,  -1913,
808      -2144,  -2382,  -2626,  -2876,  -3131,  -3393, -3660,  -3932,  -4211,
809      -4494,  -4783,  -5078,  -5377,  -5681,  -5991, -6304,  -6623,  -6946,
810      -7273,  -7604,  -7940,  -8279,  -8621,  -8967, -9317,  -9669,  -10024,
811      -10382, -10742, -11104, -11469, 11834,  12202, 12571,  12941,  13311,
812      13683,  14055,  14426,  14798,  15169,  15540, 15910,  16278,  16646,
813      17011,  17374,  17736,  18095,  18451,  18804, 19154,  19501,  19844,
814      20182,  20517,  20847,  21172,  21493,  21808, 22117,  22421,  22719,
815      23011,  23296,  23575,  23847,  24111,  24369, 24619,  24861,  25096,
816      25322,  25540,  25750,  25951,  26144,  26327, 26502,  26667,  26823,
817      26969,  27107,  27234,  27351,  27459,  27556, 27644,  27721,  27788,
818      27846,  27892,  27928,  27954,  27970,  27975, 27970,  27954,  27928,
819      27892,  27846,  27788,  27721,  27644,  27556, 27459,  27351,  27234,
820      27107,  26969,  26823,  26667,  26502,  26327, 26144,  25951,  25750,
821      25540,  25322,  25096,  24861,  24619,  24369, 24111,  23847,  23575,
822      23296,  23011,  22719,  22421,  22117,  21808, 21493,  21172,  20847,
823      20517,  20182,  19844,  19501,  19154,  18804, 18451,  18095,  17736,
824      17374,  17011,  16646,  16278,  15910,  15540, 15169,  14798,  14426,
825      14055,  13683,  13311,  12941,  12571,  12202, -11834, -11469, -11104,
826      -10742, -10382, -10024, -9669,  -9317,  -8967, -8621,  -8279,  -7940,
827      -7604,  -7273,  -6946,  -6623,  -6304,  -5991, -5681,  -5377,  -5078,
828      -4783,  -4494,  -4211,  -3932,  -3660,  -3393, -3131,  -2876,  -2626,
829      -2382,  -2144,  -1913,  -1687,  -1467,  -1254, -1047,  -846,   -652,
830      -463,   -281,   -105,   65,     228,    385,   536,    682,    820,
831      953,    1080,   1201,   1315,   1425,   1528,  1625,   1717,   1804,
832      1885,   1960,   2030,   2095,   2155,   2210,  2260,   2305,   2346,
833      2381,   2413,   2440,   2463,   2482,   2496,  2507,   2514,   2517,
834      2517,   2514,   2507,   2497,   2484,   2468,  2449,   2428,   2404,
835      2378,   2349,   2319,   2286,   2251,   2215,  2177,   2137,   2096,
836      2054,   2010,   1966,   1920,   1873,   1826,  1778,   1729,   1680,
837      1630,   1580,   1530,   1479,   1429,   1378,  1328,   1278,   1228,
838      1179,   1129,   1081,   1032,   985,    937,   891,    845,    800,
839      756,    713,    670,    629,    588,    548,   509,    472,    -435,
840      -399,   -365,   -331,   -299,   -268,   -238,  -209,   -181,   -155,
841      -129,   -105,   -81,    -59,    -38,    -18,   1,      19,     36,
842      52,     66,     80,     93,     105,    116,   126,    135,    144,
843      151,    158,    163,    168,    173,    176,   179,    182,    183,
844      184,    185,    185,    184,    183,    182,   180,    178,    175,
845      172,    168,    165,    161,    157,    153,   148,    143,    138,
846      134,    128,    123,    118,    113,    107,   102,    97,     91,
847      86,     81,     75,     70,     65,     60,    55,     51,     46,
848      41,     37,     32,     28,     24,     20,    17,     13,     10,
849      7,      4,      0,      -2,     -5,     -7,    -9,     -11,    -13,
850      -15,    -17,    -18,    -19,    -21,    -22,   -23,    -24,    -24,
851      -25,    -25,    -25,    -26,    -26,    -25,   -26,    -25,    -25,
852      -25,    -24,    -24,    -23,    -23,    -22,   -21,    -21,    -20,
853      -19,    -19,    -18,    -17,    -17,    -16,   -16,    -16,    -18,
854      -18,    0,      -18,    -18,    -16,    -16,   -16,    -17,    -17,
855      -18,    -19,    -19,    -20,    -21,    -21,   -22,    -23,    -23,
856      -24,    -24,    -25,    -25,    -25,    -26,   -25,    -26,    -26,
857      -25,    -25,    -25,    -24,    -24,    -23,   -22,    -21,    -19,
858      -18,    -17,    -15,    -13,    -11,    -9,    -7,     -5,     -2,
859      0,      4,      7,      10,     13,     17,    20,     24,     28,
860      32,     37,     41,     46,     51,     55,    60,     65,     70,
861      75,     81,     86,     91,     97,     102,   107,    113,    118,
862      123,    128,    134,    138,    143,    148,   153,    157,    161,
863      165,    168,    172,    175,    178,    180,   182,    183,    184,
864      185,    185,    184,    183,    182,    179,   176,    173,    168,
865      163,    158,    151,    144,    135,    126,   116,    105,    93,
866      80,     66,     52,     36,     19,     1,     -18,    -38,    -59,
867      -81,    -105,   -129,   -155,   -181,   -209,  -238,   -268,   -299,
868      -331,   -365,   -399,   435,    472,    509,   548,    588,    629,
869      670,    713,    756,    800,    845,    891,   937,    985,    1032,
870      1081,   1129,   1179,   1228,   1278,   1328,  1378,   1429,   1479,
871      1530,   1580,   1630,   1680,   1729,   1778,  1826,   1873,   1920,
872      1966,   2010,   2054,   2096,   2137,   2177,  2215,   2251,   2286,
873      2319,   2349,   2378,   2404,   2428,   2449,  2468,   2484,   2497,
874      2507,   2514,   2517,   2517,   2514,   2507,  2496,   2482,   2463,
875      2440,   2413,   2381,   2346,   2305,   2260,  2210,   2155,   2095,
876      2030,   1960,   1885,   1804,   1717,   1625,  1528,   1425,   1315,
877      1201,   1080,   953,    820,    682,    536,   385,    228,    65,
878      -105,   -281,   -463,   -652,   -846,   -1047, -1254,  -1467,  -1687,
879      -1913,  -2144,  -2382,  -2626,  -2876,  -3131, -3393,  -3660,  -3932,
880      -4211,  -4494,  -4783,  -5078,  -5377,  -5681, -5991,  -6304,  -6623,
881      -6946,  -7273,  -7604,  -7940,  -8279,  -8621, -8967,  -9317,  -9669,
882      -10024, -10382, -10742, -11104, -11469, 11834, 12202,  12571,  12941,
883      13311,  13683,  14055,  14426,  14798,  15169, 15540,  15910,  16278,
884      16646,  17011,  17374,  17736,  18095,  18451, 18804,  19154,  19501,
885      19844,  20182,  20517,  20847,  21172,  21493, 21808,  22117,  22421,
886      22719,  23011,  23296,  23575,  23847,  24111, 24369,  24619,  24861,
887      25096,  25322,  25540,  25750,  25951,  26144, 26327,  26502,  26667,
888      26823,  26969,  27107,  27234,  27351,  27459, 27556,  27644,  27721,
889      27788,  27846,  27892,  27928,  27954,  27970, 27975,  27970,  27954,
890      27928,  27892,  27846,  27788,  27721,  27644, 27556,  27459,  27351,
891      27234,  27107,  26969,  26823,  26667,  26502, 26327,  26144,  25951,
892      25750,  25540,  25322,  25096,  24861,  24619, 24369,  24111,  23847,
893      23575,  23296,  23011,  22719,  22421,  22117, 21808,  21493,  21172,
894      20847,  20517,  20182,  19844,  19501,  19154, 18804,  18451,  18095,
895      17736,  17374,  17011,  16646,  16278,  15910, 15540,  15169,  14798,
896      14426,  14055,  13683,  13311,  12941,  12571, 12202,  -11834, -11469,
897      -11104, -10742, -10382, -10024, -9669,  -9317, -8967,  -8621,  -8279,
898      -7940,  -7604,  -7273,  -6946,  -6623,  -6304, -5991,  -5681,  -5377,
899      -5078,  -4783,  -4494,  -4211,  -3932,  -3660, -3393,  -3131,  -2876,
900      -2626,  -2382,  -2144,  -1913,  -1687,  -1467, -1254,  -1047,  -846,
901      -652,   -463,   -281,   -105,   65,     228,   385,    536,    682,
902      820,    953,    1080,   1201,   1315,   1425,  1528,   1625,   1717,
903      1804,   1885,   1960,   2030,   2095,   2155,  2210,   2260,   2305,
904      2346,   2381,   2413,   2440,   2463,   2482,  2496,   2507,   2514,
905      2517,   2517,   2514,   2507,   2497,   2484,  2468,   2449,   2428,
906      2404,   2378,   2349,   2319,   2286,   2251,  2215,   2177,   2137,
907      2096,   2054,   2010,   1966,   1920,   1873,  1826,   1778,   1729,
908      1680,   1630,   1580,   1530,   1479,   1429,  1378,   1328,   1278,
909      1228,   1179,   1129,   1081,   1032,   985,   937,    891,    845,
910      800,    756,    713,    670,    629,    588,   548,    509,    472,
911      -435,   -399,   -365,   -331,   -299,   -268,  -238,   -209,   -181,
912      -155,   -129,   -105,   -81,    -59,    -38,   -18,    1,      19,
913      36,     52,     66,     80,     93,     105,   116,    126,    135,
914      144,    151,    158,    163,    168,    173,   176,    179,    182,
915      183,    184,    185,    185,    184,    183,   182,    180,    178,
916      175,    172,    168,    165,    161,    157,   153,    148,    143,
917      138,    134,    128,    123,    118,    113,   107,    102,    97,
918      91,     86,     81,     75,     70,     65,    60,     55,     51,
919      46,     41,     37,     32,     28,     24,    20,     17,     13,
920      10,     7,      4,      0,      -2,     -5,    -7,     -9,     -11,
921      -13,    -15,    -17,    -18,    -19,    -21,   -22,    -23,    -24,
922      -24,    -25,    -25,    -25,    -26,    -26,   -25,    -26,    -25,
923      -25,    -25,    -24,    -24,    -23,    -23,   -22,    -21,    -21,
924      -20,    -19,    -19,    -18,    -17,    -17,   -16,    -16,    -16,
925      -18,    -18},
926 
927     {
928         0x00,
929         0x01,
930         0x02,
931         0x03,
932     },
933 
934     // w1024[1536];
935     {
936         0x00007fff, 0xff377fff, 0xfe6e7ffe, 0xfda57ffa, 0xfcdc7ff6, 0xfc137ff1,
937         0xfb4a7fea, 0xfa817fe2, 0xf9b87fd9, 0xf8ef7fce, 0xf8277fc2, 0xf75e7fb5,
938         0xf6957fa7, 0xf5cd7f98, 0xf5057f87, 0xf43c7f75, 0xf3747f62, 0xf2ac7f4e,
939         0xf1e47f38, 0xf11c7f22, 0xf0557f0a, 0xef8d7ef0, 0xeec67ed6, 0xedff7eba,
940         0xed387e9d, 0xec717e7f, 0xebab7e60, 0xeae47e3f, 0xea1e7e1e, 0xe9587dfb,
941         0xe8927dd6, 0xe7cd7db1, 0xe7077d8a, 0xe6427d63, 0xe57d7d3a, 0xe4b97d0f,
942         0xe3f47ce4, 0xe3307cb7, 0xe26d7c89, 0xe1a97c5a, 0xe0e67c2a, 0xe0237bf9,
943         0xdf617bc6, 0xde9e7b92, 0xdddc7b5d, 0xdd1b7b27, 0xdc597aef, 0xdb997ab7,
944         0xdad87a7d, 0xda187a42, 0xd9587a06, 0xd89879c9, 0xd7d9798a, 0xd71b794a,
945         0xd65c790a, 0xd59e78c8, 0xd4e17885, 0xd4247840, 0xd36777fb, 0xd2ab77b4,
946         0xd1ef776c, 0xd1347723, 0xd07976d9, 0xcfbe768e, 0xcf047642, 0xce4b75f4,
947         0xcd9275a6, 0xccd97556, 0xcc217505, 0xcb6974b3, 0xcab27460, 0xc9fc740b,
948         0xc94673b6, 0xc890735f, 0xc7db7308, 0xc72772af, 0xc6737255, 0xc5c071fa,
949         0xc50d719e, 0xc45b7141, 0xc3a970e3, 0xc2f87083, 0xc2487023, 0xc1986fc2,
950         0xc0e96f5f, 0xc03a6efb, 0xbf8c6e97, 0xbedf6e31, 0xbe326dca, 0xbd866d62,
951         0xbcda6cf9, 0xbc2f6c8f, 0xbb856c24, 0xbadc6bb8, 0xba336b4b, 0xb98b6add,
952         0xb8e36a6e, 0xb83c69fd, 0xb796698c, 0xb6f1691a, 0xb64c68a7, 0xb5a86832,
953         0xb50567bd, 0xb4626747, 0xb3c066d0, 0xb31f6657, 0xb27f65de, 0xb1df6564,
954         0xb14064e9, 0xb0a2646c, 0xb00563ef, 0xaf686371, 0xaecc62f2, 0xae316272,
955         0xad9761f1, 0xacfd616f, 0xac6560ec, 0xabcd6068, 0xab365fe4, 0xaaa05f5e,
956         0xaa0a5ed7, 0xa9765e50, 0xa8e25dc8, 0xa84f5d3e, 0xa7bd5cb4, 0xa72c5c29,
957         0xa69c5b9d, 0xa60c5b10, 0xa57e5a82, 0xa4f059f4, 0xa4635964, 0xa3d758d4,
958         0xa34c5843, 0xa2c257b1, 0xa238571e, 0xa1b0568a, 0xa12955f6, 0xa0a25560,
959         0xa01c54ca, 0x9f985433, 0x9f14539b, 0x9e915303, 0x9e0f5269, 0x9d8e51cf,
960         0x9d0e5134, 0x9c8f5098, 0x9c114ffb, 0x9b944f5e, 0x9b174ec0, 0x9a9c4e21,
961         0x9a224d81, 0x99a94ce1, 0x99304c40, 0x98b94b9e, 0x98434afb, 0x97ce4a58,
962         0x975949b4, 0x96e6490f, 0x9674486a, 0x960347c4, 0x9592471d, 0x95234675,
963         0x94b545cd, 0x94484524, 0x93dc447b, 0x937143d1, 0x93074326, 0x929e427a,
964         0x923641ce, 0x91cf4121, 0x91694074, 0x91053fc6, 0x90a13f17, 0x903e3e68,
965         0x8fdd3db8, 0x8f7d3d08, 0x8f1d3c57, 0x8ebf3ba5, 0x8e623af3, 0x8e063a40,
966         0x8dab398d, 0x8d5138d9, 0x8cf83825, 0x8ca13770, 0x8c4a36ba, 0x8bf53604,
967         0x8ba0354e, 0x8b4d3497, 0x8afb33df, 0x8aaa3327, 0x8a5a326e, 0x8a0c31b5,
968         0x89be30fc, 0x89723042, 0x89272f87, 0x88dd2ecc, 0x88942e11, 0x884c2d55,
969         0x88052c99, 0x87c02bdc, 0x877b2b1f, 0x87382a62, 0x86f629a4, 0x86b628e5,
970         0x86762827, 0x86372768, 0x85fa26a8, 0x85be25e8, 0x85832528, 0x85492467,
971         0x851123a7, 0x84d922e5, 0x84a32224, 0x846e2162, 0x843a209f, 0x84071fdd,
972         0x83d61f1a, 0x83a61e57, 0x83771d93, 0x83491cd0, 0x831c1c0c, 0x82f11b47,
973         0x82c61a83, 0x829d19be, 0x827618f9, 0x824f1833, 0x822a176e, 0x820516a8,
974         0x81e215e2, 0x81c1151c, 0x81a01455, 0x8181138f, 0x816312c8, 0x81461201,
975         0x812a113a, 0x81101073, 0x80f60fab, 0x80de0ee4, 0x80c80e1c, 0x80b20d54,
976         0x809e0c8c, 0x808b0bc4, 0x80790afb, 0x80680a33, 0x8059096b, 0x804b08a2,
977         0x803e07d9, 0x80320711, 0x80270648, 0x801e057f, 0x801604b6, 0x800f03ed,
978         0x800a0324, 0x8006025b, 0x80020192, 0x800100c9, 0x80000000, 0x8001ff37,
979         0x8002fe6e, 0x8006fda5, 0x800afcdc, 0x800ffc13, 0x8016fb4a, 0x801efa81,
980         0x8027f9b8, 0x8032f8ef, 0x803ef827, 0x804bf75e, 0x8059f695, 0x8068f5cd,
981         0x8079f505, 0x808bf43c, 0x809ef374, 0x80b2f2ac, 0x80c8f1e4, 0x80def11c,
982         0x80f6f055, 0x8110ef8d, 0x812aeec6, 0x8146edff, 0x8163ed38, 0x8181ec71,
983         0x81a0ebab, 0x81c1eae4, 0x81e2ea1e, 0x8205e958, 0x822ae892, 0x824fe7cd,
984         0x8276e707, 0x829de642, 0x82c6e57d, 0x82f1e4b9, 0x831ce3f4, 0x8349e330,
985         0x8377e26d, 0x83a6e1a9, 0x83d6e0e6, 0x8407e023, 0x843adf61, 0x846ede9e,
986         0x84a3dddc, 0x84d9dd1b, 0x8511dc59, 0x8549db99, 0x8583dad8, 0x85beda18,
987         0x85fad958, 0x8637d898, 0x8676d7d9, 0x86b6d71b, 0x86f6d65c, 0x8738d59e,
988         0x877bd4e1, 0x87c0d424, 0x8805d367, 0x884cd2ab, 0x8894d1ef, 0x88ddd134,
989         0x8927d079, 0x8972cfbe, 0x89becf04, 0x8a0cce4b, 0x8a5acd92, 0x8aaaccd9,
990         0x8afbcc21, 0x8b4dcb69, 0x8ba0cab2, 0x8bf5c9fc, 0x8c4ac946, 0x8ca1c890,
991         0x8cf8c7db, 0x8d51c727, 0x8dabc673, 0x8e06c5c0, 0x8e62c50d, 0x8ebfc45b,
992         0x8f1dc3a9, 0x8f7dc2f8, 0x8fddc248, 0x903ec198, 0x90a1c0e9, 0x9105c03a,
993         0x9169bf8c, 0x91cfbedf, 0x9236be32, 0x929ebd86, 0x9307bcda, 0x9371bc2f,
994         0x93dcbb85, 0x9448badc, 0x94b5ba33, 0x9523b98b, 0x9592b8e3, 0x9603b83c,
995         0x9674b796, 0x96e6b6f1, 0x9759b64c, 0x97ceb5a8, 0x9843b505, 0x98b9b462,
996         0x9930b3c0, 0x99a9b31f, 0x9a22b27f, 0x9a9cb1df, 0x9b17b140, 0x9b94b0a2,
997         0x9c11b005, 0x9c8faf68, 0x9d0eaecc, 0x9d8eae31, 0x9e0fad97, 0x9e91acfd,
998         0x9f14ac65, 0x9f98abcd, 0xa01cab36, 0xa0a2aaa0, 0xa129aa0a, 0xa1b0a976,
999         0xa238a8e2, 0xa2c2a84f, 0xa34ca7bd, 0xa3d7a72c, 0xa463a69c, 0xa4f0a60c,
1000         0xa57ea57e, 0xa60ca4f0, 0xa69ca463, 0xa72ca3d7, 0xa7bda34c, 0xa84fa2c2,
1001         0xa8e2a238, 0xa976a1b0, 0xaa0aa129, 0xaaa0a0a2, 0xab36a01c, 0xabcd9f98,
1002         0xac659f14, 0xacfd9e91, 0xad979e0f, 0xae319d8e, 0xaecc9d0e, 0xaf689c8f,
1003         0xb0059c11, 0xb0a29b94, 0xb1409b17, 0xb1df9a9c, 0xb27f9a22, 0xb31f99a9,
1004         0xb3c09930, 0xb46298b9, 0xb5059843, 0xb5a897ce, 0xb64c9759, 0xb6f196e6,
1005         0xb7969674, 0xb83c9603, 0xb8e39592, 0xb98b9523, 0xba3394b5, 0xbadc9448,
1006         0xbb8593dc, 0xbc2f9371, 0xbcda9307, 0xbd86929e, 0xbe329236, 0xbedf91cf,
1007         0xbf8c9169, 0xc03a9105, 0xc0e990a1, 0xc198903e, 0xc2488fdd, 0xc2f88f7d,
1008         0xc3a98f1d, 0xc45b8ebf, 0xc50d8e62, 0xc5c08e06, 0xc6738dab, 0xc7278d51,
1009         0xc7db8cf8, 0xc8908ca1, 0xc9468c4a, 0xc9fc8bf5, 0xcab28ba0, 0xcb698b4d,
1010         0xcc218afb, 0xccd98aaa, 0xcd928a5a, 0xce4b8a0c, 0xcf0489be, 0xcfbe8972,
1011         0xd0798927, 0xd13488dd, 0xd1ef8894, 0xd2ab884c, 0xd3678805, 0xd42487c0,
1012         0xd4e1877b, 0xd59e8738, 0xd65c86f6, 0xd71b86b6, 0xd7d98676, 0xd8988637,
1013         0xd95885fa, 0xda1885be, 0xdad88583, 0xdb998549, 0xdc598511, 0xdd1b84d9,
1014         0xdddc84a3, 0xde9e846e, 0xdf61843a, 0xe0238407, 0xe0e683d6, 0xe1a983a6,
1015         0xe26d8377, 0xe3308349, 0xe3f4831c, 0xe4b982f1, 0xe57d82c6, 0xe642829d,
1016         0xe7078276, 0xe7cd824f, 0xe892822a, 0xe9588205, 0xea1e81e2, 0xeae481c1,
1017         0xebab81a0, 0xec718181, 0xed388163, 0xedff8146, 0xeec6812a, 0xef8d8110,
1018         0xf05580f6, 0xf11c80de, 0xf1e480c8, 0xf2ac80b2, 0xf374809e, 0xf43c808b,
1019         0xf5058079, 0xf5cd8068, 0xf6958059, 0xf75e804b, 0xf827803e, 0xf8ef8032,
1020         0xf9b88027, 0xfa81801e, 0xfb4a8016, 0xfc13800f, 0xfcdc800a, 0xfda58006,
1021         0xfe6e8002, 0xff378001, 0x00008000, 0x00c98001, 0x01928002, 0x025b8006,
1022         0x0324800a, 0x03ed800f, 0x04b68016, 0x057f801e, 0x06488027, 0x07118032,
1023         0x07d9803e, 0x08a2804b, 0x096b8059, 0x0a338068, 0x0afb8079, 0x0bc4808b,
1024         0x0c8c809e, 0x0d5480b2, 0x0e1c80c8, 0x0ee480de, 0x0fab80f6, 0x10738110,
1025         0x113a812a, 0x12018146, 0x12c88163, 0x138f8181, 0x145581a0, 0x151c81c1,
1026         0x15e281e2, 0x16a88205, 0x176e822a, 0x1833824f, 0x18f98276, 0x19be829d,
1027         0x1a8382c6, 0x1b4782f1, 0x1c0c831c, 0x1cd08349, 0x1d938377, 0x1e5783a6,
1028         0x1f1a83d6, 0x1fdd8407, 0x209f843a, 0x2162846e, 0x222484a3, 0x22e584d9,
1029         0x23a78511, 0x24678549, 0x25288583, 0x25e885be, 0x26a885fa, 0x27688637,
1030         0x28278676, 0x28e586b6, 0x29a486f6, 0x2a628738, 0x2b1f877b, 0x2bdc87c0,
1031         0x2c998805, 0x2d55884c, 0x2e118894, 0x2ecc88dd, 0x2f878927, 0x30428972,
1032         0x30fc89be, 0x31b58a0c, 0x326e8a5a, 0x33278aaa, 0x33df8afb, 0x34978b4d,
1033         0x354e8ba0, 0x36048bf5, 0x36ba8c4a, 0x37708ca1, 0x38258cf8, 0x38d98d51,
1034         0x398d8dab, 0x3a408e06, 0x3af38e62, 0x3ba58ebf, 0x3c578f1d, 0x3d088f7d,
1035         0x3db88fdd, 0x3e68903e, 0x3f1790a1, 0x3fc69105, 0x40749169, 0x412191cf,
1036         0x41ce9236, 0x427a929e, 0x43269307, 0x43d19371, 0x447b93dc, 0x45249448,
1037         0x45cd94b5, 0x46759523, 0x471d9592, 0x47c49603, 0x486a9674, 0x490f96e6,
1038         0x49b49759, 0x4a5897ce, 0x4afb9843, 0x4b9e98b9, 0x4c409930, 0x4ce199a9,
1039         0x4d819a22, 0x4e219a9c, 0x4ec09b17, 0x4f5e9b94, 0x4ffb9c11, 0x50989c8f,
1040         0x51349d0e, 0x51cf9d8e, 0x52699e0f, 0x53039e91, 0x539b9f14, 0x54339f98,
1041         0x54caa01c, 0x5560a0a2, 0x55f6a129, 0x568aa1b0, 0x571ea238, 0x57b1a2c2,
1042         0x5843a34c, 0x58d4a3d7, 0x5964a463, 0x59f4a4f0, 0x5a82a57e, 0x5b10a60c,
1043         0x5b9da69c, 0x5c29a72c, 0x5cb4a7bd, 0x5d3ea84f, 0x5dc8a8e2, 0x5e50a976,
1044         0x5ed7aa0a, 0x5f5eaaa0, 0x5fe4ab36, 0x6068abcd, 0x60ecac65, 0x616facfd,
1045         0x61f1ad97, 0x6272ae31, 0x62f2aecc, 0x6371af68, 0x63efb005, 0x646cb0a2,
1046         0x64e9b140, 0x6564b1df, 0x65deb27f, 0x6657b31f, 0x66d0b3c0, 0x6747b462,
1047         0x67bdb505, 0x6832b5a8, 0x68a7b64c, 0x691ab6f1, 0x698cb796, 0x69fdb83c,
1048         0x6a6eb8e3, 0x6addb98b, 0x6b4bba33, 0x6bb8badc, 0x6c24bb85, 0x6c8fbc2f,
1049         0x6cf9bcda, 0x6d62bd86, 0x6dcabe32, 0x6e31bedf, 0x6e97bf8c, 0x6efbc03a,
1050         0x6f5fc0e9, 0x6fc2c198, 0x7023c248, 0x7083c2f8, 0x70e3c3a9, 0x7141c45b,
1051         0x719ec50d, 0x71fac5c0, 0x7255c673, 0x72afc727, 0x7308c7db, 0x735fc890,
1052         0x73b6c946, 0x740bc9fc, 0x7460cab2, 0x74b3cb69, 0x7505cc21, 0x7556ccd9,
1053         0x75a6cd92, 0x75f4ce4b, 0x7642cf04, 0x768ecfbe, 0x76d9d079, 0x7723d134,
1054         0x776cd1ef, 0x77b4d2ab, 0x77fbd367, 0x7840d424, 0x7885d4e1, 0x78c8d59e,
1055         0x790ad65c, 0x794ad71b, 0x798ad7d9, 0x79c9d898, 0x7a06d958, 0x7a42da18,
1056         0x7a7ddad8, 0x7ab7db99, 0x7aefdc59, 0x7b27dd1b, 0x7b5ddddc, 0x7b92de9e,
1057         0x7bc6df61, 0x7bf9e023, 0x7c2ae0e6, 0x7c5ae1a9, 0x7c89e26d, 0x7cb7e330,
1058         0x7ce4e3f4, 0x7d0fe4b9, 0x7d3ae57d, 0x7d63e642, 0x7d8ae707, 0x7db1e7cd,
1059         0x7dd6e892, 0x7dfbe958, 0x7e1eea1e, 0x7e3feae4, 0x7e60ebab, 0x7e7fec71,
1060         0x7e9ded38, 0x7ebaedff, 0x7ed6eec6, 0x7ef0ef8d, 0x7f0af055, 0x7f22f11c,
1061         0x7f38f1e4, 0x7f4ef2ac, 0x7f62f374, 0x7f75f43c, 0x7f87f505, 0x7f98f5cd,
1062         0x7fa7f695, 0x7fb5f75e, 0x7fc2f827, 0x7fcef8ef, 0x7fd9f9b8, 0x7fe2fa81,
1063         0x7feafb4a, 0x7ff1fc13, 0x7ff6fcdc, 0x7ffafda5, 0x7ffefe6e, 0x7fffff37,
1064     },
1065 
1066     // WORD32 esbr_qmf_c[1280] =
1067     {0,          -1186546,   -1206390,   -1062471,   -1046947,   -1050933,
1068      -1082485,   -1122396,   -1173936,   -1219298,   -1260772,   -1316997,
1069      -1355597,   -1404525,   -1455498,   -1490700,   -1537112,   -1558008,
1070      -1597930,   -1608593,   -1649562,   -1658898,   -1682410,   -1670714,
1071      -1675824,   -1675348,   -1666012,   -1638700,   -1617055,   -1571819,
1072      -1549493,   -1485615,   -1428165,   -1361847,   -1276919,   -1194983,
1073      -1105003,   -989200,    -879420,    -751871,    -622121,    -450614,
1074      -310607,    -132571,    28980,      235016,     438734,     633406,
1075      864692,     1096803,    1339895,    1601598,    1848649,    2122999,
1076      2415952,    2701080,    2985538,    3316406,    3622393,    3940259,
1077      4260852,    4608839,    4942917,    5288310,    5626784,    5985136,
1078      6328515,    6684133,    7030778,    7391396,    7732716,    8075380,
1079      8419731,    8765975,    9076182,    9391100,    9708741,    10008661,
1080      10293439,   10552220,   10821819,   11039645,   11265949,   11482956,
1081      11638669,   11784539,   11913318,   12012598,   12073291,   12123661,
1082      12109488,   12083056,   12008111,   11897996,   11758285,   11561832,
1083      11320622,   11034259,   10702991,   10331429,   9886913,    9406378,
1084      8858722,    8258450,    7602359,    6891679,    6108894,    5263168,
1085      4353846,    3389734,    2341257,    1252469,    59280,      -1173445,
1086      -2484238,   -3873947,   -5331498,   -6857726,   -8461326,   -10140975,
1087      -11883575,  -13699290,  -15594127,  -17566036,  -19611965,  -21721843,
1088      -23904831,  -26167087,  28501020,   30903291,   33373088,   35932708,
1089      38533025,   41204290,   43922868,   46700800,   49538189,   52433173,
1090      55378416,   58381367,   61433531,   64532454,   67649516,   70814149,
1091      74006785,   77244462,   80490446,   83763389,   87048071,   90333705,
1092      93651234,   96956396,   100253776,  103544299,  106812777,  110070596,
1093      113307839,  116490844,  119652129,  122753697,  125824434,  128814117,
1094      131738494,  134616689,  137377942,  140068999,  142671836,  145186212,
1095      147541538,  149814954,  151962108,  153975151,  155839148,  157543750,
1096      159129320,  160514214,  161735011,  162781055,  163636638,  164280817,
1097      164732072,  164964105,  164976138,  164756002,  164293390,  163584206,
1098      162630172,  161399771,  159915461,  158141985,  156073666,  153722541,
1099      151082577,  148104219,  144853145,  141237995,  137319726,  133058683,
1100      128455292,  123513100,  118210392,  112548291,  106510609,  100137872,
1101      93365884,   86212508,   78687691,   70777610,   62453979,   53753139,
1102      44667031,   35154577,   25259525,   14954402,   4244630,    -6890608,
1103      -18406457,  -30341544,  -42699304,  -55453887,  -68618818,  -82200642,
1104      -96165782,  -110553355, -125349764, -140533445, -156109885, -172093527,
1105      -188451898, -205199224, -222335323, -239836757, -257714784, -275952260,
1106      -294538497, -313482466, -332775584, -352393230, -372332469, -392597065,
1107      -413168712, -434060170, -455209808, -476666786, -498364569, -520338913,
1108      -542557514, -565014393, -587687684, -610575597, -633661589, -656936416,
1109      -680382715, -703969562, -727722656, -751600834, 775583025,  799679004,
1110      823849891,  848086767,  872376077,  896724080,  921081488,  945441219,
1111      969802871,  994136341,  1018434072, 1042657661, 1066807223, 1090882501,
1112      1114809220, 1138647561, 1162337001, 1185851477, 1209202759, 1232338673,
1113      1255290785, 1277993950, 1300469611, 1322658785, 1344591629, 1366224824,
1114      1387547101, 1408538024, 1429180406, 1449479132, 1469384180, 1488911052,
1115      1508046493, 1526734263, 1544999085, 1562820250, 1580163942, 1597046622,
1116      1613433982, 1629313186, 1644687903, 1659528307, 1673810498, 1687568481,
1117      1700750320, 1713362615, 1725392676, 1736819276, 1747663266, 1757882010,
1118      1767469212, 1776457603, 1784781917, 1792491148, 1799530594, 1805935261,
1119      1811668375, 1816732182, 1821133945, 1824889769, 1827931965, 1830310413,
1120      1832022798, 1833032034, 1833389596, 1833032034, 1832022798, 1830310413,
1121      1827931965, 1824889769, 1821133945, 1816732182, 1811668375, 1805935261,
1122      1799530594, 1792491148, 1784781917, 1776457603, 1767469212, 1757882010,
1123      1747663266, 1736819276, 1725392676, 1713362615, 1700750320, 1687568481,
1124      1673810498, 1659528307, 1644687903, 1629313186, 1613433982, 1597046622,
1125      1580163942, 1562820250, 1544999085, 1526734263, 1508046493, 1488911052,
1126      1469384180, 1449479132, 1429180406, 1408538024, 1387547101, 1366224824,
1127      1344591629, 1322658785, 1300469611, 1277993950, 1255290785, 1232338673,
1128      1209202759, 1185851477, 1162337001, 1138647561, 1114809220, 1090882501,
1129      1066807223, 1042657661, 1018434072, 994136341,  969802871,  945441219,
1130      921081488,  896724080,  872376077,  848086767,  823849891,  799679004,
1131      -775583025, -751600834, -727722656, -703969562, -680382715, -656936416,
1132      -633661589, -610575597, -587687684, -565014393, -542557514, -520338913,
1133      -498364569, -476666786, -455209808, -434060170, -413168712, -392597065,
1134      -372332469, -352393230, -332775584, -313482466, -294538497, -275952260,
1135      -257714784, -239836757, -222335323, -205199224, -188451898, -172093527,
1136      -156109885, -140533445, -125349764, -110553355, -96165782,  -82200642,
1137      -68618818,  -55453887,  -42699304,  -30341544,  -18406457,  -6890608,
1138      4244630,    14954402,   25259525,   35154577,   44667031,   53753139,
1139      62453979,   70777610,   78687691,   86212508,   93365884,   100137872,
1140      106510609,  112548291,  118210392,  123513100,  128455292,  133058683,
1141      137319726,  141237995,  144853145,  148104219,  151082577,  153722541,
1142      156073666,  158141985,  159915461,  161399771,  162630172,  163584206,
1143      164293390,  164756002,  164976138,  164964105,  164732072,  164280817,
1144      163636638,  162781055,  161735011,  160514214,  159129320,  157543750,
1145      155839148,  153975151,  151962108,  149814954,  147541538,  145186212,
1146      142671836,  140068999,  137377942,  134616689,  131738494,  128814117,
1147      125824434,  122753697,  119652129,  116490844,  113307839,  110070596,
1148      106812777,  103544299,  100253776,  96956396,   93651234,   90333705,
1149      87048071,   83763389,   80490446,   77244462,   74006785,   70814149,
1150      67649516,   64532454,   61433531,   58381367,   55378416,   52433173,
1151      49538189,   46700800,   43922868,   41204290,   38533025,   35932708,
1152      33373088,   30903291,   -28501020,  -26167087,  -23904831,  -21721843,
1153      -19611965,  -17566036,  -15594127,  -13699290,  -11883575,  -10140975,
1154      -8461326,   -6857726,   -5331498,   -3873947,   -2484238,   -1173445,
1155      59280,      1252469,    2341257,    3389734,    4353846,    5263168,
1156      6108894,    6891679,    7602359,    8258450,    8858722,    9406378,
1157      9886913,    10331429,   10702991,   11034259,   11320622,   11561832,
1158      11758285,   11897996,   12008111,   12083056,   12109488,   12123661,
1159      12073291,   12012598,   11913318,   11784539,   11638669,   11482956,
1160      11265949,   11039645,   10821819,   10552220,   10293439,   10008661,
1161      9708741,    9391100,    9076182,    8765975,    8419731,    8075380,
1162      7732716,    7391396,    7030778,    6684133,    6328515,    5985136,
1163      5626784,    5288310,    4942917,    4608839,    4260852,    3940259,
1164      3622393,    3316406,    2985538,    2701080,    2415952,    2122999,
1165      1848649,    1601598,    1339895,    1096803,    864692,     633406,
1166      438734,     235016,     28980,      -132571,    -310607,    -450614,
1167      -622121,    -751871,    -879420,    -989200,    -1105003,   -1194983,
1168      -1276919,   -1361847,   -1428165,   -1485615,   -1549493,   -1571819,
1169      -1617055,   -1638700,   -1666012,   -1675348,   -1675824,   -1670714,
1170      -1682410,   -1658898,   -1649562,   -1608593,   -1597930,   -1558008,
1171      -1537112,   -1490700,   -1455498,   -1404525,   -1355597,   -1316997,
1172      -1260772,   -1219298,   -1173936,   -1122396,   -1082485,   -1050933,
1173      -1046947,   -1062471,   -1206390,   -1186546,
1174 
1175      0,          -1186546,   -1206390,   -1062471,   -1046947,   -1050933,
1176      -1082485,   -1122396,   -1173936,   -1219298,   -1260772,   -1316997,
1177      -1355597,   -1404525,   -1455498,   -1490700,   -1537112,   -1558008,
1178      -1597930,   -1608593,   -1649562,   -1658898,   -1682410,   -1670714,
1179      -1675824,   -1675348,   -1666012,   -1638700,   -1617055,   -1571819,
1180      -1549493,   -1485615,   -1428165,   -1361847,   -1276919,   -1194983,
1181      -1105003,   -989200,    -879420,    -751871,    -622121,    -450614,
1182      -310607,    -132571,    28980,      235016,     438734,     633406,
1183      864692,     1096803,    1339895,    1601598,    1848649,    2122999,
1184      2415952,    2701080,    2985538,    3316406,    3622393,    3940259,
1185      4260852,    4608839,    4942917,    5288310,    5626784,    5985136,
1186      6328515,    6684133,    7030778,    7391396,    7732716,    8075380,
1187      8419731,    8765975,    9076182,    9391100,    9708741,    10008661,
1188      10293439,   10552220,   10821819,   11039645,   11265949,   11482956,
1189      11638669,   11784539,   11913318,   12012598,   12073291,   12123661,
1190      12109488,   12083056,   12008111,   11897996,   11758285,   11561832,
1191      11320622,   11034259,   10702991,   10331429,   9886913,    9406378,
1192      8858722,    8258450,    7602359,    6891679,    6108894,    5263168,
1193      4353846,    3389734,    2341257,    1252469,    59280,      -1173445,
1194      -2484238,   -3873947,   -5331498,   -6857726,   -8461326,   -10140975,
1195      -11883575,  -13699290,  -15594127,  -17566036,  -19611965,  -21721843,
1196      -23904831,  -26167087,  28501020,   30903291,   33373088,   35932708,
1197      38533025,   41204290,   43922868,   46700800,   49538189,   52433173,
1198      55378416,   58381367,   61433531,   64532454,   67649516,   70814149,
1199      74006785,   77244462,   80490446,   83763389,   87048071,   90333705,
1200      93651234,   96956396,   100253776,  103544299,  106812777,  110070596,
1201      113307839,  116490844,  119652129,  122753697,  125824434,  128814117,
1202      131738494,  134616689,  137377942,  140068999,  142671836,  145186212,
1203      147541538,  149814954,  151962108,  153975151,  155839148,  157543750,
1204      159129320,  160514214,  161735011,  162781055,  163636638,  164280817,
1205      164732072,  164964105,  164976138,  164756002,  164293390,  163584206,
1206      162630172,  161399771,  159915461,  158141985,  156073666,  153722541,
1207      151082577,  148104219,  144853145,  141237995,  137319726,  133058683,
1208      128455292,  123513100,  118210392,  112548291,  106510609,  100137872,
1209      93365884,   86212508,   78687691,   70777610,   62453979,   53753139,
1210      44667031,   35154577,   25259525,   14954402,   4244630,    -6890608,
1211      -18406457,  -30341544,  -42699304,  -55453887,  -68618818,  -82200642,
1212      -96165782,  -110553355, -125349764, -140533445, -156109885, -172093527,
1213      -188451898, -205199224, -222335323, -239836757, -257714784, -275952260,
1214      -294538497, -313482466, -332775584, -352393230, -372332469, -392597065,
1215      -413168712, -434060170, -455209808, -476666786, -498364569, -520338913,
1216      -542557514, -565014393, -587687684, -610575597, -633661589, -656936416,
1217      -680382715, -703969562, -727722656, -751600834, 775583025,  799679004,
1218      823849891,  848086767,  872376077,  896724080,  921081488,  945441219,
1219      969802871,  994136341,  1018434072, 1042657661, 1066807223, 1090882501,
1220      1114809220, 1138647561, 1162337001, 1185851477, 1209202759, 1232338673,
1221      1255290785, 1277993950, 1300469611, 1322658785, 1344591629, 1366224824,
1222      1387547101, 1408538024, 1429180406, 1449479132, 1469384180, 1488911052,
1223      1508046493, 1526734263, 1544999085, 1562820250, 1580163942, 1597046622,
1224      1613433982, 1629313186, 1644687903, 1659528307, 1673810498, 1687568481,
1225      1700750320, 1713362615, 1725392676, 1736819276, 1747663266, 1757882010,
1226      1767469212, 1776457603, 1784781917, 1792491148, 1799530594, 1805935261,
1227      1811668375, 1816732182, 1821133945, 1824889769, 1827931965, 1830310413,
1228      1832022798, 1833032034, 1833389596, 1833032034, 1832022798, 1830310413,
1229      1827931965, 1824889769, 1821133945, 1816732182, 1811668375, 1805935261,
1230      1799530594, 1792491148, 1784781917, 1776457603, 1767469212, 1757882010,
1231      1747663266, 1736819276, 1725392676, 1713362615, 1700750320, 1687568481,
1232      1673810498, 1659528307, 1644687903, 1629313186, 1613433982, 1597046622,
1233      1580163942, 1562820250, 1544999085, 1526734263, 1508046493, 1488911052,
1234      1469384180, 1449479132, 1429180406, 1408538024, 1387547101, 1366224824,
1235      1344591629, 1322658785, 1300469611, 1277993950, 1255290785, 1232338673,
1236      1209202759, 1185851477, 1162337001, 1138647561, 1114809220, 1090882501,
1237      1066807223, 1042657661, 1018434072, 994136341,  969802871,  945441219,
1238      921081488,  896724080,  872376077,  848086767,  823849891,  799679004,
1239      -775583025, -751600834, -727722656, -703969562, -680382715, -656936416,
1240      -633661589, -610575597, -587687684, -565014393, -542557514, -520338913,
1241      -498364569, -476666786, -455209808, -434060170, -413168712, -392597065,
1242      -372332469, -352393230, -332775584, -313482466, -294538497, -275952260,
1243      -257714784, -239836757, -222335323, -205199224, -188451898, -172093527,
1244      -156109885, -140533445, -125349764, -110553355, -96165782,  -82200642,
1245      -68618818,  -55453887,  -42699304,  -30341544,  -18406457,  -6890608,
1246      4244630,    14954402,   25259525,   35154577,   44667031,   53753139,
1247      62453979,   70777610,   78687691,   86212508,   93365884,   100137872,
1248      106510609,  112548291,  118210392,  123513100,  128455292,  133058683,
1249      137319726,  141237995,  144853145,  148104219,  151082577,  153722541,
1250      156073666,  158141985,  159915461,  161399771,  162630172,  163584206,
1251      164293390,  164756002,  164976138,  164964105,  164732072,  164280817,
1252      163636638,  162781055,  161735011,  160514214,  159129320,  157543750,
1253      155839148,  153975151,  151962108,  149814954,  147541538,  145186212,
1254      142671836,  140068999,  137377942,  134616689,  131738494,  128814117,
1255      125824434,  122753697,  119652129,  116490844,  113307839,  110070596,
1256      106812777,  103544299,  100253776,  96956396,   93651234,   90333705,
1257      87048071,   83763389,   80490446,   77244462,   74006785,   70814149,
1258      67649516,   64532454,   61433531,   58381367,   55378416,   52433173,
1259      49538189,   46700800,   43922868,   41204290,   38533025,   35932708,
1260      33373088,   30903291,   -28501020,  -26167087,  -23904831,  -21721843,
1261      -19611965,  -17566036,  -15594127,  -13699290,  -11883575,  -10140975,
1262      -8461326,   -6857726,   -5331498,   -3873947,   -2484238,   -1173445,
1263      59280,      1252469,    2341257,    3389734,    4353846,    5263168,
1264      6108894,    6891679,    7602359,    8258450,    8858722,    9406378,
1265      9886913,    10331429,   10702991,   11034259,   11320622,   11561832,
1266      11758285,   11897996,   12008111,   12083056,   12109488,   12123661,
1267      12073291,   12012598,   11913318,   11784539,   11638669,   11482956,
1268      11265949,   11039645,   10821819,   10552220,   10293439,   10008661,
1269      9708741,    9391100,    9076182,    8765975,    8419731,    8075380,
1270      7732716,    7391396,    7030778,    6684133,    6328515,    5985136,
1271      5626784,    5288310,    4942917,    4608839,    4260852,    3940259,
1272      3622393,    3316406,    2985538,    2701080,    2415952,    2122999,
1273      1848649,    1601598,    1339895,    1096803,    864692,     633406,
1274      438734,     235016,     28980,      -132571,    -310607,    -450614,
1275      -622121,    -751871,    -879420,    -989200,    -1105003,   -1194983,
1276      -1276919,   -1361847,   -1428165,   -1485615,   -1549493,   -1571819,
1277      -1617055,   -1638700,   -1666012,   -1675348,   -1675824,   -1670714,
1278      -1682410,   -1658898,   -1649562,   -1608593,   -1597930,   -1558008,
1279      -1537112,   -1490700,   -1455498,   -1404525,   -1355597,   -1316997,
1280      -1260772,   -1219298,   -1173936,   -1122396,   -1082485,   -1050933,
1281      -1046947,   -1062471,   -1206390,   -1186546},
1282 
1283     // WORD32 esbr_qmf_c_24[480] =
1284     {0,          -1110444,   -1061450,   -1173936,   -1298255,   -1421516,
1285      -1537112,   -1605039,   -1666735,   -1675824,   -1647804,   -1564377,
1286      -1428165,   -1222295,   -952607,    -622121,    -191917,    302922,
1287      864692,     1514364,    2220650,    2985538,    3834304,    4720199,
1288      5626784,    6565594,    7505170,    8419731,    9286127,    10103587,
1289      10821819,   11410620,   11827466,   12073291,   12091866,   11851426,
1290      11320622,   10455283,   9223826,    7602359,    5545077,    3040242,
1291      59280,      -3410710,   -7392260,   -11883575,  -16908733,  -22449506,
1292      28501020,   35079501,   42110483,   49538189,   57380384,   65571474,
1293      74006785,   82672408,   91439548,   100253776,  108984656,  117544606,
1294      125824434,  133657291,  140936611,  147541538,  153304137,  158072273,
1295      161735011,  164066091,  164968116,  164293390,  161809905,  157452545,
1296      151082577,  142443045,  131524220,  118210392,  102262118,  83704236,
1297      62453979,   38325395,   11384478,   -18406457,  -51202360,  -86855689,
1298      -125349764, -166765646, -210911257, -257714784, -307167810, -359039643,
1299      -413168712, -469514460, -527745114, -587687684, -649178140, -711887260,
1300      775583025,  840007809,  904843216,  969802871,  1034583131, 1098858074,
1301      1162337001, 1224626701, 1285485837, 1344591629, 1401541050, 1456114148,
1302      1508046493, 1556879862, 1602509075, 1644687903, 1682982487, 1717372635,
1303      1747663266, 1773461472, 1794837630, 1811668375, 1823637828, 1830881208,
1304      1833389596, 1830881208, 1823637828, 1811668375, 1794837630, 1773461472,
1305      1747663266, 1717372635, 1682982487, 1644687903, 1602509075, 1556879862,
1306      1508046493, 1456114148, 1401541050, 1344591629, 1285485837, 1224626701,
1307      1162337001, 1098858074, 1034583131, 969802871,  904843216,  840007809,
1308      -775583025, -711887260, -649178140, -587687684, -527745114, -469514460,
1309      -413168712, -359039643, -307167810, -257714784, -210911257, -166765646,
1310      -125349764, -86855689,  -51202360,  -18406457,  11384478,   38325395,
1311      62453979,   83704236,   102262118,  118210392,  131524220,  142443045,
1312      151082577,  157452545,  161809905,  164293390,  164968116,  164066091,
1313      161735011,  158072273,  153304137,  147541538,  140936611,  133657291,
1314      125824434,  117544606,  108984656,  100253776,  91439548,   82672408,
1315      74006785,   65571474,   57380384,   49538189,   42110483,   35079501,
1316      -28501020,  -22449506,  -16908733,  -11883575,  -7392260,   -3410710,
1317      59280,      3040242,    5545077,    7602359,    9223826,    10455283,
1318      11320622,   11851426,   12091866,   12073291,   11827466,   11410620,
1319      10821819,   10103587,   9286127,    8419731,    7505170,    6565594,
1320      5626784,    4720199,    3834304,    2985538,    2220650,    1514364,
1321      864692,     302922,     -191917,    -622121,    -952607,    -1222295,
1322      -1428165,   -1564377,   -1647804,   -1675824,   -1666735,   -1605039,
1323      -1537112,   -1421516,   -1298255,   -1173936,   -1061450,   -1110444,
1324 
1325      0,          -1110444,   -1061450,   -1173936,   -1298255,   -1421516,
1326      -1537112,   -1605039,   -1666735,   -1675824,   -1647804,   -1564377,
1327      -1428165,   -1222295,   -952607,    -622121,    -191917,    302922,
1328      864692,     1514364,    2220650,    2985538,    3834304,    4720199,
1329      5626784,    6565594,    7505170,    8419731,    9286127,    10103587,
1330      10821819,   11410620,   11827466,   12073291,   12091866,   11851426,
1331      11320622,   10455283,   9223826,    7602359,    5545077,    3040242,
1332      59280,      -3410710,   -7392260,   -11883575,  -16908733,  -22449506,
1333      28501020,   35079501,   42110483,   49538189,   57380384,   65571474,
1334      74006785,   82672408,   91439548,   100253776,  108984656,  117544606,
1335      125824434,  133657291,  140936611,  147541538,  153304137,  158072273,
1336      161735011,  164066091,  164968116,  164293390,  161809905,  157452545,
1337      151082577,  142443045,  131524220,  118210392,  102262118,  83704236,
1338      62453979,   38325395,   11384478,   -18406457,  -51202360,  -86855689,
1339      -125349764, -166765646, -210911257, -257714784, -307167810, -359039643,
1340      -413168712, -469514460, -527745114, -587687684, -649178140, -711887260,
1341      775583025,  840007809,  904843216,  969802871,  1034583131, 1098858074,
1342      1162337001, 1224626701, 1285485837, 1344591629, 1401541050, 1456114148,
1343      1508046493, 1556879862, 1602509075, 1644687903, 1682982487, 1717372635,
1344      1747663266, 1773461472, 1794837630, 1811668375, 1823637828, 1830881208,
1345      1833389596, 1830881208, 1823637828, 1811668375, 1794837630, 1773461472,
1346      1747663266, 1717372635, 1682982487, 1644687903, 1602509075, 1556879862,
1347      1508046493, 1456114148, 1401541050, 1344591629, 1285485837, 1224626701,
1348      1162337001, 1098858074, 1034583131, 969802871,  904843216,  840007809,
1349      -775583025, -711887260, -649178140, -587687684, -527745114, -469514460,
1350      -413168712, -359039643, -307167810, -257714784, -210911257, -166765646,
1351      -125349764, -86855689,  -51202360,  -18406457,  11384478,   38325395,
1352      62453979,   83704236,   102262118,  118210392,  131524220,  142443045,
1353      151082577,  157452545,  161809905,  164293390,  164968116,  164066091,
1354      161735011,  158072273,  153304137,  147541538,  140936611,  133657291,
1355      125824434,  117544606,  108984656,  100253776,  91439548,   82672408,
1356      74006785,   65571474,   57380384,   49538189,   42110483,   35079501,
1357      -28501020,  -22449506,  -16908733,  -11883575,  -7392260,   -3410710,
1358      59280,      3040242,    5545077,    7602359,    9223826,    10455283,
1359      11320622,   11851426,   12091866,   12073291,   11827466,   11410620,
1360      10821819,   10103587,   9286127,    8419731,    7505170,    6565594,
1361      5626784,    4720199,    3834304,    2985538,    2220650,    1514364,
1362      864692,     302922,     -191917,    -622121,    -952607,    -1222295,
1363      -1428165,   -1564377,   -1647804,   -1675824,   -1666735,   -1605039,
1364      -1537112,   -1421516,   -1298255,   -1173936,   -1061450,   -1110444},
1365 
1366     // const WORD32 esbr_w_32[2 * 30] =
1367     {0,          2147483647, 0,          2147483647,  0,           2147483647,
1368      418953276,  2106220350, 821806413,  1984016188,  1193077990,  1785567395,
1369      821806413,  1984016188, 1518500249, 1518500249,  1984016188,  821806413,
1370      1193077990, 1785567395, 1984016188, 821806413,   2106220350,  -418953276,
1371      1518500249, 1518500249, 2147483647, 0,           1518500249,  -1518500249,
1372      1785567395, 1193077990, 1984016188, -821806413,  418953276,   -2106220350,
1373      1984016188, 821806413,  1518500249, -1518500249, -821806413,  -1984016188,
1374      2106220350, 418953276,  821806413,  -1984016188, -1785567395, -1193077990,
1375      0,          2147483647, 0,          2147483647,  0,           2147483647,
1376      1518500249, 1518500249, 2147483647, 0,           1518500249,  -1518500249},
1377 
1378     // const WORD32 esbr_w_16[2 * 12] =
1379     {0,          2147483647, 0,          2147483647,  0,          2147483647,
1380      821806413,  1984016188, 1518500249, 1518500249,  1984016188, 821806413,
1381      1518500249, 1518500249, 2147483647, 0,           1518500249, -1518500249,
1382      1984016188, 821806413,  1518500249, -1518500249, -821806413, -1984016188},
1383 
1384     // WORD32 ixheaacd_esbr_sin_cos_twiddle_l64[64] =
1385     {(WORD32)0x1921d1f,  (WORD32)0x7ffd8859, (WORD32)0x7fe9cbbe,
1386      (WORD32)0x4b6195d,  (WORD32)0x7d95b9e,  (WORD32)0x7fc25595,
1387      (WORD32)0x7f872bf1, (WORD32)0xafb6805,  (WORD32)0xe1bc2e3,
1388      (WORD32)0x7f3857f4, (WORD32)0x7ed5e5c5, (WORD32)0x1139f0ce,
1389      (WORD32)0x145576b1, (WORD32)0x7e5fe492, (WORD32)0x7dd6668d,
1390      (WORD32)0x176dd9de, (WORD32)0x1a82a025, (WORD32)0x7d3980eb,
1391      (WORD32)0x7c894bdc, (WORD32)0x1d934fe5, (WORD32)0x209f701c,
1392      (WORD32)0x7bc5e28e, (WORD32)0x7aef6322, (WORD32)0x23a6887e,
1393      (WORD32)0x26a82185, (WORD32)0x7a05eeac, (WORD32)0x7909a92b,
1394      (WORD32)0x29a3c484, (WORD32)0x2c98fbba, (WORD32)0x77fab987,
1395      (WORD32)0x76d94987, (WORD32)0x2f875261, (WORD32)0x326e54c7,
1396      (WORD32)0x75a585ce, (WORD32)0x745f9dd0, (WORD32)0x354d9056,
1397      (WORD32)0x382493af, (WORD32)0x7307c3cf, (WORD32)0x719e2cd1,
1398      (WORD32)0x3af2eeb6, (WORD32)0x3db832a5, (WORD32)0x70231098,
1399      (WORD32)0x6e96a99b, (WORD32)0x4073f21c, (WORD32)0x4325c134,
1400      (WORD32)0x6cf934fa, (WORD32)0x6b4af277, (WORD32)0x45cd358e,
1401      (WORD32)0x4869e664, (WORD32)0x698c246b, (WORD32)0x67bd0fbb,
1402      (WORD32)0x4afb6c97, (WORD32)0x4d8162c3, (WORD32)0x65ddfbd2,
1403      (WORD32)0x63ef328e, (WORD32)0x4ffb654c, (WORD32)0x5269126d,
1404      (WORD32)0x61f1003e, (WORD32)0x5fe3b38c, (WORD32)0x54ca0a49,
1405      (WORD32)0x571deef8, (WORD32)0x5dc79d7b, (WORD32)0x5b9d1152,
1406      (WORD32)0x59646497},
1407 
1408     // WORD32 ixheaacd_esbr_alt_sin_twiddle_l64[32]=
1409     {
1410         (WORD32)0x647d97c,  (WORD32)0x7fd8878c, (WORD32)0xc8bd35d,
1411         (WORD32)0x7f62368e, (WORD32)0x12c8106e, (WORD32)0x7e9d55fb,
1412         (WORD32)0x18f8b83c, (WORD32)0x7d8a5f3e, (WORD32)0x1f19f97a,
1413         (WORD32)0x7c29fbed, (WORD32)0x25280c5d, (WORD32)0x7a7d055a,
1414         (WORD32)0x2b1f34eb, (WORD32)0x78848412, (WORD32)0x30fbc54c,
1415         (WORD32)0x7641af3b, (WORD32)0x36ba2013, (WORD32)0x73b5ebd0,
1416         (WORD32)0x3c56ba6f, (WORD32)0x70e2cbc5, (WORD32)0x41ce1e64,
1417         (WORD32)0x6dca0d13, (WORD32)0x471cece6, (WORD32)0x6a6d98a3,
1418         (WORD32)0x4c3fdff2, (WORD32)0x66cf811f, (WORD32)0x5133cc93,
1419         (WORD32)0x62f201ab, (WORD32)0x55f5a4d1, (WORD32)0x5ed77c88,
1420         (WORD32)0x5a827999, (WORD32)0x5a827999,
1421     },
1422 
1423     // const WORD32 ixheaacd_esbr_sin_cos_twiddle_l32[32] =
1424     {(WORD32)0x3242abf,  (WORD32)0x7ff62181, (WORD32)0x7fa736b3,
1425      (WORD32)0x96a9049,  (WORD32)0xfab272b,  (WORD32)0x7f0991c3,
1426      (WORD32)0x7e1d93e9, (WORD32)0x15e21444, (WORD32)0x1c0b826a,
1427      (WORD32)0x7ce3ceb1, (WORD32)0x7b5d039d, (WORD32)0x2223a4c5,
1428      (WORD32)0x2826b928, (WORD32)0x798a23b0, (WORD32)0x776c4eda,
1429      (WORD32)0x2e110a62, (WORD32)0x33def287, (WORD32)0x7504d344,
1430      (WORD32)0x72552c84, (WORD32)0x398cdd32, (WORD32)0x3f1749b7,
1431      (WORD32)0x6f5f02b1, (WORD32)0x6c24295f, (WORD32)0x447acd50,
1432      (WORD32)0x49b41533, (WORD32)0x68a69e80, (WORD32)0x64e88925,
1433      (WORD32)0x4ebfe8a4, (WORD32)0x539b2aef, (WORD32)0x60ec382f,
1434      (WORD32)0x5cb420df, (WORD32)0x5842dd54},
1435 
1436     // const WORD32 ixheaacd_esbr_alt_sin_twiddle_l32[16] =
1437     {(WORD32)0xc8bd35e, (WORD32)0x7f62368e, (WORD32)0x18f8b83c,
1438      (WORD32)0x7d8a5f3f, (WORD32)0x25280c5d, (WORD32)0x7a7d055a,
1439      (WORD32)0x30fbc54d, (WORD32)0x7641af3c, (WORD32)0x3c56ba70,
1440      (WORD32)0x70e2cbc5, (WORD32)0x471cece6, (WORD32)0x6a6d98a3,
1441      (WORD32)0x5133cc94, (WORD32)0x62f201ac, (WORD32)0x5a827999,
1442      (WORD32)0x5a827999},
1443 
1444     // const WORD32 ixheaacd_esbr_t_cos_sin_l32[32+32] = //exp[-i * pi/32* 3/4 *
1445     // (k
1446     // +0.5)]
1447     {(WORD32)0x7fe9cbbe, (WORD32)0x4b6195d,  (WORD32)0x7f3857f4,
1448      (WORD32)0xe1bc2e3,  (WORD32)0x7dd6668d, (WORD32)0x176dd9de,
1449      (WORD32)0x7bc5e28e, (WORD32)0x209f701c, (WORD32)0x7909a92b,
1450      (WORD32)0x29a3c484, (WORD32)0x75a585ce, (WORD32)0x326e54c7,
1451      (WORD32)0x719e2cd1, (WORD32)0x3af2eeb6, (WORD32)0x6cf934fa,
1452      (WORD32)0x4325c134, (WORD32)0x67bd0fbb, (WORD32)0x4afb6c97,
1453      (WORD32)0x61f1003e, (WORD32)0x5269126d, (WORD32)0x5b9d1152,
1454      (WORD32)0x59646497, (WORD32)0x54ca0a49, (WORD32)0x5fe3b38c,
1455      (WORD32)0x4d8162c3, (WORD32)0x65ddfbd2, (WORD32)0x45cd358e,
1456      (WORD32)0x6b4af277, (WORD32)0x3db832a5, (WORD32)0x70231098,
1457      (WORD32)0x354d9056, (WORD32)0x745f9dd0, (WORD32)0x2c98fbba,
1458      (WORD32)0x77fab987, (WORD32)0x23a6887e, (WORD32)0x7aef6322,
1459      (WORD32)0x1a82a025, (WORD32)0x7d3980eb, (WORD32)0x1139f0ce,
1460      (WORD32)0x7ed5e5c5, (WORD32)0x7d95b9e,  (WORD32)0x7fc25595,
1461      (WORD32)0xfe6de2e1, (WORD32)0x7ffd8859, (WORD32)0xf50497fb,
1462      (WORD32)0x7f872bf1, (WORD32)0xebaa894f, (WORD32)0x7e5fe492,
1463      (WORD32)0xe26cb01b, (WORD32)0x7c894bdc, (WORD32)0xd957de7b,
1464      (WORD32)0x7a05eeac, (WORD32)0xd078ad9f, (WORD32)0x76d94987,
1465      (WORD32)0xc7db6c51, (WORD32)0x7307c3cf, (WORD32)0xbf8c0de4,
1466      (WORD32)0x6e96a99b, (WORD32)0xb796199c, (WORD32)0x698c246b,
1467      (WORD32)0xb0049ab4, (WORD32)0x63ef328e, (WORD32)0xa8e21108,
1468      (WORD32)0x5dc79d7b},
1469 
1470     // const WORD32 ixheaacd_esbr_sin_cos_twiddle_l24[24] =
1471     {(WORD32)0x430238f,  (WORD32)0x7fee74a1, (WORD32)0x7f62368e,
1472      (WORD32)0xc8bd35e,  (WORD32)0x14d9c245, (WORD32)0x7e4a5425,
1473      (WORD32)0x7ca80037, (WORD32)0x1d10d5c1, (WORD32)0x25280c5d,
1474      (WORD32)0x7a7d055a, (WORD32)0x77cbc3f1, (WORD32)0x2d168792,
1475      (WORD32)0x34d3957e, (WORD32)0x74972f91, (WORD32)0x70e2cbc5,
1476      (WORD32)0x3c56ba70, (WORD32)0x4397ba32, (WORD32)0x6cb2a836,
1477      (WORD32)0x680b5c33, (WORD32)0x4a8ea111, (WORD32)0x5133cc94,
1478      (WORD32)0x62f201ac, (WORD32)0x5d6c2f99, (WORD32)0x577ff3da},
1479 
1480     // const WORD32 ixheaacd_esbr_alt_sin_twiddle_l24[12] =
1481     {(WORD32)0x10b5150f, (WORD32)0x7ee7aa4b, (WORD32)0x2120fb83,
1482      (WORD32)0x7ba3751c, (WORD32)0x30fbc54d, (WORD32)0x7641af3c,
1483      (WORD32)0x3fffffff, (WORD32)0x6ed9eba1, (WORD32)0x4debe4fe,
1484      (WORD32)0x658c9a2d, (WORD32)0x5a827999, (WORD32)0x5a827999},
1485 
1486     // const WORD32 ixheaacd_esbr_t_cos_sin_l24[24+24] = //exp[-i * pi/24* 11/8
1487     // * (k
1488     // +0.5)]
1489     {(WORD32)0x7fded52e, (WORD32)0x5c1f4e6,  (WORD32)0x7ed5e5c5,
1490      (WORD32)0x1139f0ce, (WORD32)0x7cc62bde, (WORD32)0x1c8e3bbe,
1491      (WORD32)0x79b3ecde, (WORD32)0x27a75c94, (WORD32)0x75a585ce,
1492      (WORD32)0x326e54c7, (WORD32)0x70a35e24, (WORD32)0x3cccd003,
1493      (WORD32)0x6ab7d661, (WORD32)0x46ad5277, (WORD32)0x63ef328e,
1494      (WORD32)0x4ffb654c, (WORD32)0x5c5780d1, (WORD32)0x58a3c117,
1495      (WORD32)0x54007c50, (WORD32)0x609475c2, (WORD32)0x4afb6c97,
1496      (WORD32)0x67bd0fbb, (WORD32)0x415b01cd, (WORD32)0x6e0eba0a,
1497      (WORD32)0x37332dfc, (WORD32)0x737c5d0a, (WORD32)0x2c98fbba,
1498      (WORD32)0x77fab987, (WORD32)0x21a26295, (WORD32)0x7b808014,
1499      (WORD32)0x1666198d, (WORD32)0x7e06644a, (WORD32)0xafb6805,
1500      (WORD32)0x7f872bf1, (WORD32)0xff79f587, (WORD32)0x7fffb9cf,
1501      (WORD32)0xf3f998c1, (WORD32)0x7f6f141d, (WORD32)0xe8922622,
1502      (WORD32)0x7dd6668d, (WORD32)0xdd5b3e7c, (WORD32)0x7b38ffdc,
1503      (WORD32)0xd26c1e09, (WORD32)0x779c4afa, (WORD32)0xc7db6c51,
1504      (WORD32)0x7307c3cf, (WORD32)0xbdbf0d30, (WORD32)0x6d84e7b6},
1505 
1506     // const WORD32 ixheaacd_esbr_sin_cos_twiddle_l16[16] =
1507     {(WORD32)0x647d97c, (WORD32)0x7fd8878d, (WORD32)0x7e9d55fb,
1508      (WORD32)0x12c8106e, (WORD32)0x1f19f97b, (WORD32)0x7c29fbed,
1509      (WORD32)0x78848413, (WORD32)0x2b1f34eb, (WORD32)0x36ba2013,
1510      (WORD32)0x73b5ebd0, (WORD32)0x6dca0d14, (WORD32)0x41ce1e64,
1511      (WORD32)0x4c3fdff3, (WORD32)0x66cf811f, (WORD32)0x5ed77c89,
1512      (WORD32)0x55f5a4d2},
1513 
1514     // const WORD32 ixheaacd_esbr_alt_sin_twiddle_l16[8] =
1515     {(WORD32)0x18f8b83c, (WORD32)0x7d8a5f3f, (WORD32)0x30fbc54d,
1516      (WORD32)0x7641af3c, (WORD32)0x471cece6, (WORD32)0x6a6d98a3,
1517      (WORD32)0x5a827999, (WORD32)0x5a827999},
1518 
1519     // const WORD32 ixheaacd_esbr_t_cos_sin_l16[16+16] = //exp[-i * pi/16* 5/4 *
1520     // (k
1521     // +0.5)]
1522     {(WORD32)0x7fc25595, (WORD32)0x7d95b9e,  (WORD32)0x7dd6668d,
1523      (WORD32)0x176dd9de, (WORD32)0x7a05eeac, (WORD32)0x26a82185,
1524      (WORD32)0x745f9dd0, (WORD32)0x354d9056, (WORD32)0x6cf934fa,
1525      (WORD32)0x4325c134, (WORD32)0x63ef328e, (WORD32)0x4ffb654c,
1526      (WORD32)0x59646497, (WORD32)0x5b9d1152, (WORD32)0x4d8162c3,
1527      (WORD32)0x65ddfbd2, (WORD32)0x4073f21c, (WORD32)0x6e96a99b,
1528      (WORD32)0x326e54c7, (WORD32)0x75a585ce, (WORD32)0x23a6887e,
1529      (WORD32)0x7aef6322, (WORD32)0x145576b1, (WORD32)0x7e5fe492,
1530      (WORD32)0x4b6195d,  (WORD32)0x7fe9cbbe, (WORD32)0xf50497fb,
1531      (WORD32)0x7f872bf1, (WORD32)0xe57d5fdb, (WORD32)0x7d3980eb,
1532      (WORD32)0xd65c3b7c, (WORD32)0x7909a92b},
1533 
1534     // WORD16 ixheaacd_sbr_t_cos_sin_l32_eld[32+32];
1535     {
1536         (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)0x5a82,
1537         (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82,
1538         (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)0x5a82,
1539         (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82,
1540         (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)0x5a82,
1541         (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82,
1542         (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)0x5a82,
1543         (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82,
1544         (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)0x5a82,
1545         (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82,
1546         (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)0x5a82,
1547         (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82,
1548         (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)0x5a82,
1549         (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82,
1550         (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)0x5a82,
1551         (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)-0x5a82,
1552     },
1553 
1554     // WORD16 qmf_c_eld[640];
1555     {185,   386,   565,   759,   970,   1200,  1447,  1707,  1977,  2255,
1556      2535,  2818,  3099,  3379,  3657,  3933,  4208,  4481,  4754,  5027,
1557      5301,  5576,  5852,  6129,  6407,  6685,  6963,  7242,  7520,  7797,
1558      8073,  8349,  8624,  8898,  9172,  9445,  9717,  9989,  10259, 10528,
1559      10796, 11061, 11325, 11586, 11845, 12102, 12357, 12611, 12863, 13114,
1560      13364, 13612, 13858, 14103, 14344, 14581, 14813, 15040, 15260, 15473,
1561      15678, 15876, 16069, 16265, 16408, 16497, 16589, 16674, 16752, 16820,
1562      16879, 16928, 16969, 17001, 17027, 17045, 17057, 17063, 17063, 17056,
1563      17044, 17024, 16997, 16963, 16920, 16869, 16809, 16741, 16664, 16578,
1564      16484, 16381, 16270, 16150, 16023, 15887, 15743, 15590, 15430, 15262,
1565      15087, 14903, 14713, 14515, 14310, 14099, 13882, 13659, 13431, 13197,
1566      12958, 12715, 12467, 12214, 11958, 11698, 11435, 11168, 10899, 10627,
1567      10354, 10078, 9801,  9522,  9243,  8963,  8683,  8403,  -8120, -7836,
1568      -7553, -7270, -6989, -6710, -6431, -6155, -5881, -5610, -5341, -5076,
1569      -4813, -4554, -4299, -4047, -3799, -3555, -3315, -3080, -2848, -2622,
1570      -2399, -2182, -1969, -1761, -1558, -1360, -1167, -979,  -796,  -619,
1571      -447,  -280,  -120,  36,    186,   330,   468,   601,   727,   848,
1572      964,   1073,  1177,  1275,  1368,  1454,  1535,  1610,  1679,  1742,
1573      1800,  1852,  1898,  1939,  1974,  2004,  2030,  2050,  2066,  2078,
1574      2085,  2087,  2088,  2090,  2087,  2080,  2069,  2056,  2039,  2019,
1575      1996,  1970,  1942,  1911,  1878,  1842,  1804,  1765,  1723,  1680,
1576      1636,  1590,  1544,  1496,  1449,  1400,  1352,  1303,  1255,  1206,
1577      1158,  1109,  1062,  1015,  969,   924,   880,   837,   795,   754,
1578      714,   676,   640,   606,   572,   540,   510,   480,   452,   426,
1579      400,   376,   353,   332,   311,   291,   273,   255,   239,   223,
1580      208,   194,   181,   169,   158,   147,   -138,  -129,  -121,  -113,
1581      -107,  -100,  -94,   -88,   -83,   -78,   -73,   -68,   -62,   -57,
1582      -53,   -48,   -43,   -39,   -35,   -32,   -28,   -24,   -21,   -19,
1583      -16,   -13,   -9,    -5,    -1,    2,     7,     10,    10,    15,
1584      20,    24,    28,    33,    36,    30,    22,    15,    9,     3,
1585      -3,    -10,   -17,   -26,   -35,   -43,   -50,   -57,   -62,   -67,
1586      -72,   -75,   -76,   -77,   -77,   -76,   -74,   -71,   -68,   -63,
1587      -59,   -54,   -49,   -44,   -38,   -31,   -25,   -19,   -13,   -7,
1588      -2,    2,     5,     8,     10,    11,    11,    11,    11,    12,
1589      12,    12,    11,    9,     5,     2,     11,    20,    26,    31,
1590      36,    41,    45,    45,    44,    43,    40,    37,    33,    32,
1591      28,    23,    18,    13,    8,     1,     -5,    -8,    -9,    -11,
1592      -13,   -16,   -20,   -21,   -19,   -17,   -16,   -15,   -16,   -17,
1593      -18,   -19,   -20,   -20,   21,    21,    20,    19,    18,    18,
1594      17,    15,    13,    10,    5,     4,     4,     4,     3,     3,
1595      2,     1,     1,     0,     0,     0,     -2,    1,     2,     0,
1596      1,     1,     -1,    -2,    -3,    -6,    0,     3,     2,     1,
1597      1,     1,     1,     1,     0,     2,     2,     2,     1,     1,
1598      0,     0,     0,     0,     0,     1,     0,     0,     1,     1,
1599      1,     0,     0,     0,     0,     0,     0,     -1,    -3,    -3,
1600      -3,    -3,    -3,    -3,    -3,    -3,    -4,    -4,    -2,    -1,
1601      -1,    -1,    -1,    -1,    -1,    0,     0,     0,     0,     0,
1602      3,     1,     -1,    0,     -1,    -1,    1,     1,     1,     10,
1603      4,     1,     1,     1,     1,     1,     1,     1,     1,     -1,
1604      1,     1,     1,     0,     0,     0,     0,     0,     0,     0,
1605      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1606      0,     0,     -1,    -1,    -1,    0,     0,     0,     0,     0,
1607      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1608      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1609      0,     0,     0,     1,     0,     0,     0,     0,     0,     0,
1610      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1611      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1612      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1613      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1614      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1615      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1616      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1617      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1618      0,     0,     0,     0,     0,     0,     0,     0,     0,     0},
1619 
1620     // WORD16 qmf_c_eld2[640];
1621 
1622     {185,   386,   565,   759,   970,   1200,  1447,  1707,  1977,  2255,
1623      2535,  2818,  3099,  3379,  3657,  3933,  4208,  4481,  4754,  5027,
1624      5301,  5576,  5852,  6129,  6407,  6685,  6963,  7242,  7520,  7797,
1625      8073,  8349,  8624,  8898,  9172,  9445,  9717,  9989,  10259, 10528,
1626      10796, 11061, 11325, 11586, 11845, 12102, 12357, 12611, 12863, 13114,
1627      13364, 13612, 13858, 14103, 14344, 14581, 14813, 15040, 15260, 15473,
1628      15678, 15876, 16069, 16265, 16408, 16497, 16589, 16674, 16752, 16820,
1629      16879, 16928, 16969, 17001, 17027, 17045, 17057, 17063, 17063, 17056,
1630      17044, 17024, 16997, 16963, 16920, 16869, 16809, 16741, 16664, 16578,
1631      16484, 16381, 16270, 16150, 16023, 15887, 15743, 15590, 15430, 15262,
1632      15087, 14903, 14713, 14515, 14310, 14099, 13882, 13659, 13431, 13197,
1633      12958, 12715, 12467, 12214, 11958, 11698, 11435, 11168, 10899, 10627,
1634      10354, 10078, 9801,  9522,  9243,  8963,  8683,  8403,  -8120, -7836,
1635      -7553, -7270, -6989, -6710, -6431, -6155, -5881, -5610, -5341, -5076,
1636      -4813, -4554, -4299, -4047, -3799, -3555, -3315, -3080, -2848, -2622,
1637      -2399, -2182, -1969, -1761, -1558, -1360, -1167, -979,  -796,  -619,
1638      -447,  -280,  -120,  36,    186,   330,   468,   601,   727,   848,
1639      964,   1073,  1177,  1275,  1368,  1454,  1535,  1610,  1679,  1742,
1640      1800,  1852,  1898,  1939,  1974,  2004,  2030,  2050,  2066,  2078,
1641      2085,  2087,  2088,  2090,  2087,  2080,  2069,  2056,  2039,  2019,
1642      1996,  1970,  1942,  1911,  1878,  1842,  1804,  1765,  1723,  1680,
1643      1636,  1590,  1544,  1496,  1449,  1400,  1352,  1303,  1255,  1206,
1644      1158,  1109,  1062,  1015,  969,   924,   880,   837,   795,   754,
1645      714,   676,   640,   606,   572,   540,   510,   480,   452,   426,
1646      400,   376,   353,   332,   311,   291,   273,   255,   239,   223,
1647      208,   194,   181,   169,   158,   147,   -138,  -129,  -121,  -113,
1648      -107,  -100,  -94,   -88,   -83,   -78,   -73,   -68,   -62,   -57,
1649      -53,   -48,   -43,   -39,   -35,   -32,   -28,   -24,   -21,   -19,
1650      -16,   -13,   -9,    -5,    -1,    2,     7,     10,    10,    15,
1651      20,    24,    28,    33,    36,    30,    22,    15,    9,     3,
1652      -3,    -10,   -17,   -26,   -35,   -43,   -50,   -57,   -62,   -67,
1653      -72,   -75,   -76,   -77,   -77,   -76,   -74,   -71,   -68,   -63,
1654      -59,   -54,   -49,   -44,   -38,   -31,   -25,   -19,   -13,   -7,
1655      -2,    2,     5,     8,     10,    11,    11,    11,    11,    12,
1656      12,    12,    11,    9,     5,     2,     11,    20,    26,    31,
1657      36,    41,    45,    45,    44,    43,    40,    37,    33,    32,
1658      28,    23,    18,    13,    8,     1,     -5,    -8,    -9,    -11,
1659      -13,   -16,   -20,   -21,   -19,   -17,   -16,   -15,   -16,   -17,
1660      -18,   -19,   -20,   -20,   21,    21,    20,    19,    18,    18,
1661      17,    15,    13,    10,    5,     4,     4,     4,     3,     3,
1662      2,     1,     1,     0,     0,     0,     -2,    1,     2,     0,
1663      1,     1,     -1,    -2,    -3,    -6,    0,     3,     2,     1,
1664      1,     1,     1,     1,     0,     2,     2,     2,     1,     1,
1665      0,     0,     0,     0,     0,     1,     0,     0,     1,     1,
1666      1,     0,     0,     0,     0,     0,     0,     -1,    -3,    -3,
1667      -3,    -3,    -3,    -3,    -3,    -3,    -4,    -4,    -2,    -1,
1668      -1,    -1,    -1,    -1,    -1,    0,     0,     0,     0,     0,
1669      3,     1,     -1,    0,     -1,    -1,    1,     1,     1,     10,
1670      4,     1,     1,     1,     1,     1,     1,     1,     1,     -1,
1671      1,     1,     1,     0,     0,     0,     0,     0,     0,     0,
1672      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1673      0,     0,     -1,    -1,    -1,    0,     0,     0,     0,     0,
1674      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1675      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1676      0,     0,     0,     1,     0,     0,     0,     0,     0,     0,
1677      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1678      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1679      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1680      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1681      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1682      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1683      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1684      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1685      0,     0,     0,     0,     0,     0,     0,     0,     0,     0},
1686 
1687     // WORD16 qmf_c_eld3[640];
1688     {
1689         285,   662,   1085,  1577,  2116,  2676,  3239,  3795,  4344,  4890,
1690         5438,  5990,  6546,  7102,  7658,  8211,  8761,  9308,  9853,  10393,
1691         10928, 11455, 11973, 12484, 12988, 13488, 13980, 14462, 14926, 15366,
1692         15777, 16167, 16452, 16631, 16786, 16903, 16985, 17036, 17060, 17059,
1693         17034, 16980, 16894, 16775, 16621, 16432, 16210, 15955, 15666, 15346,
1694         14995, 14614, 14204, 13770, 13314, 12836, 12340, 11828, 11301, 10763,
1695         10216, 9661,  9103,  8543,  -7978, -7412, -6850, -6293, -5746, -5209,
1696         -4684, -4173, -3677, -3198, -2735, -2291, -1865, -1459, -1073, -708,
1697         -364,  -42,   258,   534,   787,   1018,  1226,  1411,  1572,  1710,
1698         1826,  1918,  1989,  2040,  2072,  2086,  2089,  2083,  2062,  2029,
1699         1983,  1926,  1860,  1784,  1701,  1613,  1520,  1424,  1327,  1230,
1700         1133,  1038,  946,   858,   774,   695,   623,   556,   495,   439,
1701         388,   342,   301,   264,   231,   201,   175,   152,   -134,  -117,
1702         -104,  -91,   -81,   -71,   -60,   -51,   -41,   -34,   -26,   -20,
1703         -15,   -7,    0,     8,     12,    22,    30,    33,    18,    6,
1704         -7,    -22,   -39,   -54,   -65,   -74,   -77,   -77,   -73,   -66,
1705         -57,   -47,   -35,   -22,   -10,   0,     6,     10,    11,    11,
1706         12,    10,    3,     15,    28,    38,    45,    43,    38,    32,
1707         25,    15,    4,     -7,    -10,   -15,   -21,   -18,   -16,   -17,
1708         -19,   -20,   21,    19,    18,    16,    11,    4,     4,     3,
1709         1,     0,     0,     -1,    1,     1,     -2,    -5,    1,     1,
1710         1,     1,     1,     2,     1,     0,     0,     0,     0,     1,
1711         0,     0,     0,     -1,    -3,    -3,    -3,    -3,    -4,    -2,
1712         -1,    -1,    -1,    0,     0,     2,     -1,    -1,    1,     5,
1713         2,     1,     1,     1,     0,     1,     0,     0,     0,     0,
1714         0,     0,     0,     0,     0,     0,     -1,    -1,    0,     0,
1715         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1716         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1717         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1718         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1719         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1720         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1721         285,   662,   1085,  1577,  2116,  2676,  3239,  3795,  4344,  4890,
1722         5438,  5990,  6546,  7102,  7658,  8211,  8761,  9308,  9853,  10393,
1723         10928, 11455, 11973, 12484, 12988, 13488, 13980, 14462, 14926, 15366,
1724         15777, 16167, 16452, 16631, 16786, 16903, 16985, 17036, 17060, 17059,
1725         17034, 16980, 16894, 16775, 16621, 16432, 16210, 15955, 15666, 15346,
1726         14995, 14614, 14204, 13770, 13314, 12836, 12340, 11828, 11301, 10763,
1727         10216, 9661,  9103,  8543,  -7978, -7412, -6850, -6293, -5746, -5209,
1728         -4684, -4173, -3677, -3198, -2735, -2291, -1865, -1459, -1073, -708,
1729         -364,  -42,   258,   534,   787,   1018,  1226,  1411,  1572,  1710,
1730         1826,  1918,  1989,  2040,  2072,  2086,  2089,  2083,  2062,  2029,
1731         1983,  1926,  1860,  1784,  1701,  1613,  1520,  1424,  1327,  1230,
1732         1133,  1038,  946,   858,   774,   695,   623,   556,   495,   439,
1733         388,   342,   301,   264,   231,   201,   175,   152,   -134,  -117,
1734         -104,  -91,   -81,   -71,   -60,   -51,   -41,   -34,   -26,   -20,
1735         -15,   -7,    0,     8,     12,    22,    30,    33,    18,    6,
1736         -7,    -22,   -39,   -54,   -65,   -74,   -77,   -77,   -73,   -66,
1737         -57,   -47,   -35,   -22,   -10,   0,     6,     10,    11,    11,
1738         12,    10,    3,     15,    28,    38,    45,    43,    38,    32,
1739         25,    15,    4,     -7,    -10,   -15,   -21,   -18,   -16,   -17,
1740         -19,   -20,   21,    19,    18,    16,    11,    4,     4,     3,
1741         1,     0,     0,     -1,    1,     1,     -2,    -5,    1,     1,
1742         1,     1,     1,     2,     1,     0,     0,     0,     0,     1,
1743         0,     0,     0,     -1,    -3,    -3,    -3,    -3,    -4,    -2,
1744         -1,    -1,    -1,    0,     0,     2,     -1,    -1,    1,     5,
1745         2,     1,     1,     1,     0,     1,     0,     0,     0,     0,
1746         0,     0,     0,     0,     0,     0,     -1,    -1,    0,     0,
1747         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1748         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1749         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1750         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1751         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1752         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1753     },
1754 
1755     //// WORD32 qmf_c_ldsbr_mps[640];
1756     {-1088237,    -1922950,    -2811171,    -3833224,    -4994278,
1757      -6282261,    -7680841,    -9169025,    -10725055,   -12324393,
1758      -13941731,   -15549657,   -17120747,   -18626116,   -20036991,
1759      -21323541,   -22456647,   -23406643,   -24144909,   -24642407,
1760      -24871603,   -24804595,   -24415038,   -23675808,   -22560963,
1761      -21042910,   -19094608,   -16685863,   -13785718,   -10358010,
1762      -6365521,    -1754973,    3969414,     10743941,    18202241,
1763      26403100,    35403839,    45247389,    55972297,    67609496,
1764      80184932,    93717852,    108222063,   123704992,   140168036,
1765      157606041,   176007496,   195354540,   215622847,   236781629,
1766      258793720,   281616437,   305201134,   329493906,   354435733,
1767      379963218,   406008680,   432501102,   459366074,   486526787,
1768      513903832,   541416151,   568980294,   596510842,   -623766724,
1769      -650827082,  -677563723,  -703875279,  -729666861,  -754844974,
1770      -779316190,  -802988669,  -825771201,  -847575157,  -868313992,
1771      -887904263,  -906265555,  -923321515,  -938999670,  -953232022,
1772      -965955457,  -977112746,  -986652016,  -994526811,  -1000697179,
1773      -1005129871, -1007798334, -1008683232, -1007772584, -1005061786,
1774      -1000553966, -994259623,  -986196677,  -976390141,  -964872677,
1775      -951682343,  -936802381,  -920294698,  -902267714,  -882779324,
1776      -861893900,  -839683118,  -816223964,  -791598598,  -765893362,
1777      -739198470,  -711607173,  -683215384,  -654121262,  -624424188,
1778      -594224613,  -563623462,  -532721695,  -501619952,  -470417748,
1779      -439213198,  -408102731,  -377180844,  -346538840,  -316265811,
1780      -286447164,  -257165021,  -228497498,  -200518669,  -173298068,
1781      -146900793,  -121386797,  -96810678,   73209368,    50642874,
1782      29146835,    8753507,     -10508841,   -28617380,   -45554786,
1783      -61309157,   -75874248,   -89248941,   -101437348,  -112448674,
1784      -122296858,  -131000586,  -138582948,  -145071276,  -150496790,
1785      -154894447,  -158302350,  -160761650,  -162316373,  -163012779,
1786      -162899352,  -162026175,  -160444576,  -158206947,  -155366419,
1787      -151976400,  -148090363,  -143761233,  -139041601,  -133983279,
1788      -128633886,  -123042159,  -117256253,  -111320469,  -105277360,
1789      -99167707,   -93029841,   -86899819,   -80811262,   -74795318,
1790      -68880537,   -63093129,   -57456575,   -51991851,   -46717444,
1791      -41649136,   -36800242,   -32182320,   -27804529,   -23673882,
1792      -19795326,   -16171959,   -12804808,   -9693263,    -6834912,
1793      -4225952,    -1860960,    266706,      2165096,     3843408,
1794      5311608,     6580581,     -7659850,    -8565613,    -9308824,
1795      -9902189,    -10358934,   -10692292,   -10915355,   -11041033,
1796      -11082049,   -11050633,   -10958508,   -10816863,   -10636110,
1797      -10426046,   -10195042,   -9950839,    -9700309,    -9449524,
1798      -9203660,    -8966753,    -8741729,    -8530947,    -8335986,
1799      -8157534,    -7995749,    -7850127,    -7719693,    -7603085,
1800      -7498498,    -7404082,    -7317673,    -7237343,    -7159908,
1801      -7082763,    -7004337,    -6922546,    -6835648,    -6742190,
1802      -6640871,    -6530636,    -6410606,    -6280198,    -6138994,
1803      -5986826,    -5823631,    -5649533,    -5464631,    -5269171,
1804      -5063331,    -4847459,    -4621985,    -4387201,    -4143350,
1805      -3890899,    -3630184,    -3361765,    -3086090,    -2803826,
1806      -2515674,    -2222360,    -1924688,    -1624378,    -1321919,
1807      -1016874,    706113,      420142,      140553,      -131288,
1808      -393278,     -643324,     -879607,     -1100399,    -1303989,
1809      -1488836,    -1653541,    -1796817,    -1917688,    -2015419,
1810      -2089615,    -2140218,    -2167404,    -2171863,    -2154637,
1811      -2117086,    -2060795,    -1987814,    -1900380,    -1800788,
1812      -1691489,    -1575125,    -1454064,    -1330785,    -1207415,
1813      -1086298,    -968520,     -854801,     -756445,     -680148,
1814      -614695,     -560457,     -517664,     -485648,     -463299,
1815      -449241,     -441532,     -438223,     -437237,     -436427,
1816      -434027,     -428561,     -418692,     -403510,     -382407,
1817      -355227,     -322142,     -283650,     -240483,     -193762,
1818      -145159,     -95606,      -46830,      -583,        41669,
1819      78196,       107442,      128069,      136701,      115724,
1820      -1088237,    -1922950,    -2811171,    -3833224,    -4994278,
1821      -6282261,    -7680841,    -9169025,    -10725055,   -12324393,
1822      -13941731,   -15549657,   -17120747,   -18626116,   -20036991,
1823      -21323541,   -22456647,   -23406643,   -24144909,   -24642407,
1824      -24871603,   -24804595,   -24415038,   -23675808,   -22560963,
1825      -21042910,   -19094608,   -16685863,   -13785718,   -10358010,
1826      -6365521,    -1754973,    3969414,     10743941,    18202241,
1827      26403100,    35403839,    45247389,    55972297,    67609496,
1828      80184932,    93717852,    108222063,   123704992,   140168036,
1829      157606041,   176007496,   195354540,   215622847,   236781629,
1830      258793720,   281616437,   305201134,   329493906,   354435733,
1831      379963218,   406008680,   432501102,   459366074,   486526787,
1832      513903832,   541416151,   568980294,   596510842,   -623766724,
1833      -650827082,  -677563723,  -703875279,  -729666861,  -754844974,
1834      -779316190,  -802988669,  -825771201,  -847575157,  -868313992,
1835      -887904263,  -906265555,  -923321515,  -938999670,  -953232022,
1836      -965955457,  -977112746,  -986652016,  -994526811,  -1000697179,
1837      -1005129871, -1007798334, -1008683232, -1007772584, -1005061786,
1838      -1000553966, -994259623,  -986196677,  -976390141,  -964872677,
1839      -951682343,  -936802381,  -920294698,  -902267714,  -882779324,
1840      -861893900,  -839683118,  -816223964,  -791598598,  -765893362,
1841      -739198470,  -711607173,  -683215384,  -654121262,  -624424188,
1842      -594224613,  -563623462,  -532721695,  -501619952,  -470417748,
1843      -439213198,  -408102731,  -377180844,  -346538840,  -316265811,
1844      -286447164,  -257165021,  -228497498,  -200518669,  -173298068,
1845      -146900793,  -121386797,  -96810678,   73209368,    50642874,
1846      29146835,    8753507,     -10508841,   -28617380,   -45554786,
1847      -61309157,   -75874248,   -89248941,   -101437348,  -112448674,
1848      -122296858,  -131000586,  -138582948,  -145071276,  -150496790,
1849      -154894447,  -158302350,  -160761650,  -162316373,  -163012779,
1850      -162899352,  -162026175,  -160444576,  -158206947,  -155366419,
1851      -151976400,  -148090363,  -143761233,  -139041601,  -133983279,
1852      -128633886,  -123042159,  -117256253,  -111320469,  -105277360,
1853      -99167707,   -93029841,   -86899819,   -80811262,   -74795318,
1854      -68880537,   -63093129,   -57456575,   -51991851,   -46717444,
1855      -41649136,   -36800242,   -32182320,   -27804529,   -23673882,
1856      -19795326,   -16171959,   -12804808,   -9693263,    -6834912,
1857      -4225952,    -1860960,    266706,      2165096,     3843408,
1858      5311608,     6580581,     -7659850,    -8565613,    -9308824,
1859      -9902189,    -10358934,   -10692292,   -10915355,   -11041033,
1860      -11082049,   -11050633,   -10958508,   -10816863,   -10636110,
1861      -10426046,   -10195042,   -9950839,    -9700309,    -9449524,
1862      -9203660,    -8966753,    -8741729,    -8530947,    -8335986,
1863      -8157534,    -7995749,    -7850127,    -7719693,    -7603085,
1864      -7498498,    -7404082,    -7317673,    -7237343,    -7159908,
1865      -7082763,    -7004337,    -6922546,    -6835648,    -6742190,
1866      -6640871,    -6530636,    -6410606,    -6280198,    -6138994,
1867      -5986826,    -5823631,    -5649533,    -5464631,    -5269171,
1868      -5063331,    -4847459,    -4621985,    -4387201,    -4143350,
1869      -3890899,    -3630184,    -3361765,    -3086090,    -2803826,
1870      -2515674,    -2222360,    -1924688,    -1624378,    -1321919,
1871      -1016874,    706113,      420142,      140553,      -131288,
1872      -393278,     -643324,     -879607,     -1100399,    -1303989,
1873      -1488836,    -1653541,    -1796817,    -1917688,    -2015419,
1874      -2089615,    -2140218,    -2167404,    -2171863,    -2154637,
1875      -2117086,    -2060795,    -1987814,    -1900380,    -1800788,
1876      -1691489,    -1575125,    -1454064,    -1330785,    -1207415,
1877      -1086298,    -968520,     -854801,     -756445,     -680148,
1878      -614695,     -560457,     -517664,     -485648,     -463299,
1879      -449241,     -441532,     -438223,     -437237,     -436427,
1880      -434027,     -428561,     -418692,     -403510,     -382407,
1881      -355227,     -322142,     -283650,     -240483,     -193762,
1882      -145159,     -95606,      -46830,      -583,        41669,
1883      78196,       107442,      128069,      136701,      115724},
1884 
1885     // const WORD16 ixheaacd_sbr_synth_cos_sin_l32[64+64] = //exp[-i * pi/4* (2k
1886     // + 1)]
1887     {
1888         (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)0x5a82,
1889         (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)-0x5a82,
1890 
1891         (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)0x5a82,
1892         (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)-0x5a82,
1893 
1894         (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)0x5a82,
1895         (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)-0x5a82,
1896 
1897         (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)0x5a82,
1898         (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)-0x5a82,
1899 
1900         (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)0x5a82,
1901         (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)-0x5a82,
1902 
1903         (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)0x5a82,
1904         (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)-0x5a82,
1905 
1906         (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)0x5a82,
1907         (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)-0x5a82,
1908 
1909         (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)0x5a82,
1910         (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)-0x5a82,
1911 
1912         (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)0x5a82,
1913         (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)-0x5a82,
1914 
1915         (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)0x5a82,
1916         (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)-0x5a82,
1917 
1918         (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)0x5a82,
1919         (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)-0x5a82,
1920 
1921         (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)0x5a82,
1922         (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)-0x5a82,
1923 
1924         (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)0x5a82,
1925         (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)-0x5a82,
1926 
1927         (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)0x5a82,
1928         (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)-0x5a82,
1929 
1930         (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)0x5a82,
1931         (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)-0x5a82,
1932 
1933         (WORD16)0x5a82,  (WORD16)0x5a82,  (WORD16)-0x5a82, (WORD16)0x5a82,
1934         (WORD16)-0x5a82, (WORD16)-0x5a82, (WORD16)0x5a82,  (WORD16)-0x5a82,
1935 
1936     },
1937 
1938 };
1939 
1940 const ia_env_extr_tables_struct ixheaacd_aac_dec_env_extr_tables = {
1941     {
1942         // const ia_frame_info_struct sbr_frame_info1_16 =
1943         {0,
1944          1,
1945          -1,
1946          1,
1947          {0, 16, 0, 0, 0, 0, 0, 0, 0},
1948          {1, 0, 0, 0, 0, 0, 0, 0},
1949          {0, 16, 0}},
1950 
1951         // const ia_frame_info_struct sbr_frame_info2_16 =
1952         {0,
1953          2,
1954          -1,
1955          2,
1956          {0, 8, 16, 0, 0, 0, 0, 0, 0},
1957          {1, 1, 0, 0, 0, 0, 0, 0},
1958          {0, 8, 16}},
1959 
1960         // const ia_frame_info_struct sbr_frame_info4_16 =
1961         {0,
1962          4,
1963          -1,
1964          2,
1965          {0, 4, 8, 12, 16, 0, 0, 0, 0},
1966          {1, 1, 1, 1, 0, 0, 0, 0},
1967          {0, 8, 16}},
1968 
1969         // const ia_frame_info_struct sbr_frame_info8_16 =
1970         {0,
1971          8,
1972          -1,
1973          2,
1974          {0, 2, 4, 6, 8, 10, 12, 14, 16},
1975          {1, 1, 1, 1, 1, 1, 1, 1},
1976          {0, 8, 16}},
1977 
1978         //960 Adding new tables for 960 frame length implementation
1979         //const ia_frame_info_struct sbr_frame_info1_16_960 =
1980         {0,
1981          1,
1982          -1,
1983          1,
1984          {0, 15, 0, 0, 0, 0},
1985          {1, 0, 0, 0, 0},
1986          {0, 15, 0}},
1987 
1988         //const ia_frame_info_struct sbr_frame_info2_16_960 =
1989         {0,
1990          2,
1991          -1,
1992          2,
1993          {0, 8, 15, 0, 0, 0},
1994          {1, 1, 0, 0, 0},
1995          {0, 8, 15}},
1996 
1997         //const ia_frame_info_struct sbr_frame_info4_16_960 =
1998         {0,
1999          4,
2000          -1,
2001          2,
2002          {0, 4, 8, 12, 15},
2003          {1, 1, 1, 1},
2004          {0, 8, 15}},
2005 
2006     },
2007 
2008     // const ia_sbr_header_data_struct sbr_default_header =
2009     {SBR_NOT_INITIALIZED,
2010      0,
2011      0,
2012      16,
2013      2,
2014      1024,
2015      44100,
2016 
2017      0,
2018      SBR_AMPLITUDE_RESOLUTION_3_0,
2019 
2020      15,
2021      6,
2022      0,
2023      SBR_SAMP_FEQ_LVL_DEF,
2024      SBR_CHANGE_LVL_DEF,
2025      SBR_NOISE_BND_DEF,
2026 
2027      SBR_BND_LIMIT_DEF,
2028      SBR_GAIN_LIMIT_DEF,
2029      SBR_INTERPOL_SAMP_FEQ_DEF,
2030      SBR_SMOOTH_LEN_DEF,
2031 
2032      NULL,
2033      0,
2034      0,
2035      0,
2036      0,
2037      0,
2038      0,
2039      0,
2040      0,
2041      0,
2042      0,
2043      0,
2044      0,
2045      0,
2046      0,
2047      0,
2048 
2049      0,
2050      0,
2051      0,
2052      0},
2053 
2054     // WORD16 ixheaacd_t_huffman_env_bal_1_5db_inp_table[50];
2055     {0x0011, 0x0301, 0x0322, 0x02e3, 0x0344, 0x02c5, 0x0366, 0x02a7, 0x0388,
2056      0x0289, 0x026b, 0x03ab, 0x024c, 0x03cc, 0x03ef, 0x0230, 0x0410, 0x0010,
2057      0x0030, 0x0050, 0x0070, 0x0090, 0x00b0, 0x00d0, 0x00f0, 0x0110, 0x0130,
2058      0x0150, 0x0170, 0x0190, 0x01b0, 0x01d0, 0x01f0, 0x0210, 0x0430, 0x0450,
2059      0x0470, 0x0490, 0x04b0, 0x04d0, 0x04f1, 0x0511, 0x0531, 0x0551, 0x0571,
2060      0x0591, 0x05b1, 0x05d1, 0x05f1, 0x0611},
2061     // WORD16 ixheaacd_f_huffman_env_bal_1_5db_inp_table[50];
2062     {0x0013, 0x0301, 0x02e2, 0x0323, 0x02c4, 0x0345, 0x0366, 0x02a7, 0x0288,
2063      0x0389, 0x026b, 0x03ab, 0x024b, 0x03cc, 0x022e, 0x03ef, 0x0410, 0x01f0,
2064      0x0211, 0x0012, 0x0032, 0x0052, 0x0072, 0x0092, 0x00b2, 0x00d2, 0x00f2,
2065      0x0112, 0x0132, 0x0152, 0x0172, 0x0192, 0x01b2, 0x01d2, 0x0432, 0x0452,
2066      0x0472, 0x0492, 0x04b2, 0x04d2, 0x04f2, 0x0512, 0x0532, 0x0552, 0x0572,
2067      0x0592, 0x05b2, 0x05d2, 0x05f3, 0x0613},
2068     // WORD16 ixheaacd_t_huffman_env_bal_3_0db_inp_table[26];
2069     {0x000e, 0x0181, 0x01a2, 0x0163, 0x0144, 0x01c5, 0x01e6, 0x0127, 0x0108,
2070      0x0209, 0x00ec, 0x000d, 0x002d, 0x004d, 0x006d, 0x008d, 0x00ad, 0x00cd,
2071      0x022d, 0x024d, 0x026d, 0x028d, 0x02ad, 0x02cd, 0x02ee, 0x030e},
2072     // WORD16 ixheaacd_f_huffman_env_bal_3_0db_inp_table[26];
2073     {0x000e, 0x0181, 0x0162, 0x01a3, 0x0144, 0x01c5, 0x01e6, 0x0127, 0x0108,
2074      0x0209, 0x00eb, 0x022c, 0x024d, 0x000d, 0x002d, 0x004d, 0x006d, 0x008d,
2075      0x00ae, 0x00ce, 0x026e, 0x028e, 0x02ae, 0x02ce, 0x02ee, 0x030e},
2076     // WORD16 ixheaacd_t_huffman_noise_3_0db_inp_table[64];
2077     {0x000e, 0x03e1, 0x0402, 0x03c3, 0x03a4, 0x0425, 0x0386, 0x0448,
2078      0x0368, 0x046a, 0x034b, 0x048d, 0x054d, 0x000d, 0x002d, 0x004d,
2079      0x006d, 0x008d, 0x00ad, 0x00cd, 0x00ed, 0x010d, 0x012d, 0x014d,
2080      0x016d, 0x018d, 0x01ad, 0x01cd, 0x01ed, 0x020d, 0x022d, 0x024d,
2081      0x026d, 0x028d, 0x02ad, 0x02cd, 0x02ed, 0x030d, 0x032d, 0x04ad,
2082      0x04cd, 0x04ed, 0x050d, 0x052d, 0x056d, 0x058d, 0x05ad, 0x05cd,
2083      0x05ed, 0x060d, 0x062d, 0x064d, 0x066d, 0x068d, 0x06ad, 0x06cd,
2084      0x06ed, 0x070d, 0x072d, 0x074d, 0x076d, 0x078d, 0x07ae, 0x07ce},
2085     // WORD16 ixheaacd_t_huffman_noise_bal_3_0db_inp_table[26];
2086     {0x0008, 0x0181, 0x0162, 0x01a3, 0x0145, 0x01c6, 0x0008, 0x0028, 0x0048,
2087      0x0068, 0x0088, 0x00a8, 0x00c8, 0x00e8, 0x0108, 0x0128, 0x01e8, 0x0208,
2088      0x0228, 0x0248, 0x0268, 0x0288, 0x02a8, 0x02c8, 0x02e8, 0x0308},
2089     // WORD16 ixheaacd_t_huffman_env_1_5db_inp_table[122];
2090     {0x0013, 0x0782, 0x0762, 0x07a3, 0x0743, 0x07c4, 0x0724, 0x07e5, 0x0705,
2091      0x0806, 0x06e6, 0x0827, 0x06c7, 0x0848, 0x06a8, 0x0869, 0x0689, 0x066a,
2092      0x088a, 0x064b, 0x08ac, 0x062c, 0x08cd, 0x060d, 0x05ed, 0x08ee, 0x05ce,
2093      0x090e, 0x05ae, 0x058f, 0x092f, 0x0530, 0x0550, 0x0570, 0x0950, 0x0490,
2094      0x0510, 0x0990, 0x0451, 0x04f1, 0x0971, 0x04b1, 0x0472, 0x04d2, 0x0012,
2095      0x0032, 0x0052, 0x0072, 0x0092, 0x00b2, 0x00d3, 0x00f3, 0x0113, 0x0133,
2096      0x0153, 0x0173, 0x0193, 0x01b3, 0x01d3, 0x01f3, 0x0213, 0x0233, 0x0253,
2097      0x0273, 0x0293, 0x02b3, 0x02d3, 0x02f3, 0x0313, 0x0333, 0x0353, 0x0373,
2098      0x0393, 0x03b3, 0x03d3, 0x03f3, 0x0413, 0x0433, 0x09b3, 0x09d3, 0x09f3,
2099      0x0a13, 0x0a33, 0x0a53, 0x0a73, 0x0a93, 0x0ab3, 0x0ad3, 0x0af3, 0x0b13,
2100      0x0b33, 0x0b53, 0x0b73, 0x0b93, 0x0bb3, 0x0bd3, 0x0bf3, 0x0c13, 0x0c33,
2101      0x0c53, 0x0c73, 0x0c93, 0x0cb3, 0x0cd3, 0x0cf3, 0x0d13, 0x0d33, 0x0d53,
2102      0x0d73, 0x0d93, 0x0db3, 0x0dd3, 0x0df3, 0x0e13, 0x0e33, 0x0e53, 0x0e73,
2103      0x0e93, 0x0eb3, 0x0ed3, 0x0ef3, 0x0f13},
2104     // WORD16 ixheaacd_f_huffman_env_1_5db_inp_table[122];
2105     {0x0014, 0x0782, 0x0762, 0x07a3, 0x0743, 0x0724, 0x07c4, 0x0705, 0x07e5,
2106      0x06e6, 0x0806, 0x06c7, 0x0828, 0x06a8, 0x0848, 0x0689, 0x0869, 0x0669,
2107      0x088a, 0x064a, 0x08ab, 0x062b, 0x08cb, 0x08eb, 0x060c, 0x090c, 0x05ec,
2108      0x092c, 0x094d, 0x05cd, 0x05ad, 0x096d, 0x098e, 0x09ae, 0x058e, 0x056f,
2109      0x054f, 0x0530, 0x09d0, 0x09f0, 0x0510, 0x04f0, 0x0a11, 0x0a31, 0x0491,
2110      0x04b1, 0x04d1, 0x0451, 0x0412, 0x0a52, 0x0a72, 0x0ab2, 0x0272, 0x0472,
2111      0x0ad2, 0x0af2, 0x03d2, 0x0432, 0x0a92, 0x0b12, 0x0d12, 0x0133, 0x01d3,
2112      0x0213, 0x0233, 0x02f3, 0x0373, 0x03b3, 0x03f3, 0x0b53, 0x0c33, 0x0cd3,
2113      0x0d73, 0x0d93, 0x0013, 0x0033, 0x0054, 0x0074, 0x0094, 0x00b4, 0x00d4,
2114      0x00f4, 0x0114, 0x0154, 0x0174, 0x0194, 0x01b4, 0x01f4, 0x0254, 0x0294,
2115      0x02b4, 0x02d4, 0x0314, 0x0334, 0x0354, 0x0394, 0x0b34, 0x0b74, 0x0b94,
2116      0x0bb4, 0x0bd4, 0x0bf4, 0x0c14, 0x0c54, 0x0c74, 0x0c94, 0x0cb4, 0x0cf4,
2117      0x0d34, 0x0d54, 0x0db4, 0x0dd4, 0x0df4, 0x0e14, 0x0e34, 0x0e54, 0x0e74,
2118      0x0e94, 0x0eb4, 0x0ed4, 0x0ef4, 0x0f14},
2119     // WORD16 ixheaacd_t_huffman_env_3_0db_inp_table[64];
2120     {0x0013, 0x03e1, 0x03c2, 0x0403, 0x03a4, 0x0425, 0x0386, 0x0447,
2121      0x0368, 0x0469, 0x034b, 0x048b, 0x032c, 0x030d, 0x04ad, 0x02ee,
2122      0x04ce, 0x02ce, 0x02ae, 0x04ee, 0x050f, 0x0530, 0x0250, 0x0290,
2123      0x0270, 0x0231, 0x0551, 0x0572, 0x0012, 0x0032, 0x0053, 0x0073,
2124      0x0093, 0x00b3, 0x00d3, 0x00f3, 0x0113, 0x0133, 0x0153, 0x0173,
2125      0x0193, 0x01b3, 0x01d3, 0x01f3, 0x0213, 0x0593, 0x05b3, 0x05d3,
2126      0x05f3, 0x0613, 0x0633, 0x0653, 0x0673, 0x0693, 0x06b3, 0x06d3,
2127      0x06f3, 0x0713, 0x0733, 0x0753, 0x0773, 0x0793, 0x07b3, 0x07d3},
2128     // WORD16 ixheaacd_f_huffman_env_3_0db_inp_table[64];
2129     {0x0014, 0x03e1, 0x03c2, 0x0403, 0x03a4, 0x0425, 0x0386, 0x0448,
2130      0x0368, 0x0469, 0x0349, 0x048a, 0x032a, 0x04ab, 0x030b, 0x04cc,
2131      0x02ec, 0x04ed, 0x050e, 0x02ce, 0x02af, 0x052f, 0x054f, 0x0290,
2132      0x0270, 0x0570, 0x0590, 0x0251, 0x0211, 0x05b1, 0x05d1, 0x0232,
2133      0x0632, 0x01b2, 0x00f2, 0x0192, 0x05f2, 0x0612, 0x0133, 0x0153,
2134      0x01f3, 0x0673, 0x0693, 0x06b3, 0x0713, 0x0113, 0x0173, 0x06f3,
2135      0x0014, 0x0034, 0x0054, 0x0074, 0x0094, 0x00b4, 0x00d4, 0x01d4,
2136      0x0654, 0x06d4, 0x0734, 0x0754, 0x0774, 0x0794, 0x07b4, 0x07d4},
2137     // WORD32 ixheaacd_t_huffman_env_bal_1_5db_idx_table[20];
2138     {0x00000000, 0x00100002, 0x00200006, 0x0030000e, 0x0040001e,
2139      0x0050003e, 0x0060007e, 0x007000fe, 0x008001fe, 0x00a007fd,
2140      0x00c00ffd, 0x10d07ff0, 0x0230fff7, 0x2260fffa, 0x02c1fffb,
2141      0x02e1fffd, 0x02f1fffe, 0x0301ffff, 0x01b0ffef, 0x0281fff7},
2142     // WORD32 ixheaacd_f_huffman_env_bal_1_5db_idx_table[23];
2143     {0x00000000, 0x00100002, 0x00200006, 0x0030000e, 0x0040001e, 0x0050003e,
2144      0x0060007e, 0x007000fe, 0x008001fe, 0x00a007fd, 0x00b007fe, 0x00c00ffe,
2145      0x10d03ffc, 0x2111fff0, 0x0273fff7, 0x02b3fffb, 0x02d3fffd, 0x02e3fffe,
2146      0x02f7fffe, 0x0307ffff, 0x20e07ffa, 0x01f3ffef, 0x0100fff7},
2147     // WORD32 ixheaacd_t_huffman_env_bal_3_0db_idx_table[16];
2148     {0x00000000, 0x00100002, 0x00200006, 0x0030000e, 0x0040001e, 0x0050003e,
2149      0x0060007e, 0x007000fe, 0x008001fe, 0x10900ff8, 0x01301ffb, 0x01501ffd,
2150      0x01601ffe, 0x01703ffe, 0x01803fff, 0x00f01ff7},
2151     // WORD32 ixheaacd_f_huffman_env_bal_3_0db_idx_table[17];
2152     {0x00000000, 0x00100002, 0x00200006, 0x0030000e, 0x0040001e, 0x0050003e,
2153      0x0060007e, 0x007000fe, 0x008001fe, 0x109007fc, 0x01001ffb, 0x01403ffb,
2154      0x01603ffd, 0x01703ffe, 0x01803fff, 0x10a00ffa, 0x00c01ff7},
2155     // WORD32 ixheaacd_t_huffman_noise_3_0db_idx_table[17];
2156     {0x00000000, 0x00100002, 0x00200006, 0x0030000e, 0x0040001e, 0x0050003e,
2157      0x007000fd, 0x108003f8, 0x02d01fef, 0x03501ff7, 0x03901ffb, 0x03b01ffd,
2158      0x03c01ffe, 0x03d03ffe, 0x03e03fff, 0x109007f2, 0x01d01fdf},
2159     // WORD32 ixheaacd_t_huffman_noise_bal_3_0db_idx_table[11];
2160     {0x00000000, 0x00100002, 0x00200006, 0x1030001c, 0x010000f7, 0x014000fb,
2161      0x016000fd, 0x017000fe, 0x018000ff, 0x1040003a, 0x008000ef},
2162     // WORD32 ixheaacd_t_huffman_env_1_5db_idx_table[27];
2163     {0x00100001, 0x00300005, 0x0050000d, 0x0070001d, 0x0090003d, 0x00b0007d,
2164      0x00d000fd, 0x00f001fd, 0x011003fd, 0x112007fc, 0x21701ffa, 0x31b03ff9,
2165      0x4240fff2, 0x0587ffdf, 0x0687ffef, 0x0707fff7, 0x0747fffb, 0x0767fffd,
2166      0x0777fffe, 0x0787ffff, 0x01400ffb, 0x01903ff7, 0x21d07ff5, 0x2281ffe9,
2167      0x0210ffef, 0x1303ffdb, 0x0387ffbf},
2168     // WORD32 ixheaacd_f_huffman_env_1_5db_idx_table[28];
2169     {0x00100001, 0x00300005, 0x0050000d, 0x0070001d, 0x0090003d, 0x10a0007c,
2170      0x20d000fc, 0x310001fc, 0x016007fb, 0x01a00ffb, 0x01e01ffb, 0x42103ffa,
2171      0x5280fff4, 0x63b3ffec, 0x74a7ffe8, 0x068fffef, 0x070ffff7, 0x074ffffb,
2172      0x076ffffd, 0x077ffffe, 0x078fffff, 0x00c000fb, 0x00f001fb, 0x012003fb,
2173      0x02307ff7, 0x02e1ffef, 0x0417ffdf, 0x058fffdf},
2174     // WORD32 ixheaacd_t_huffman_env_3_0db_idx_table[26];
2175     {0x00000000, 0x00100002, 0x00200006, 0x0030000e, 0x0040001e, 0x0050003e,
2176      0x0060007e, 0x007000fe, 0x008001fe, 0x00a007fd, 0x10b00ffc, 0x01103ffb,
2177      0x21203ffc, 0x3170fff9, 0x02e7ffef, 0x0367fff7, 0x03a7fffb, 0x03c7fffd,
2178      0x03d7fffe, 0x03e7ffff, 0x00d01ffb, 0x21307ffa, 0x2191fff5, 0x0150fff7,
2179      0x11c3ffee, 0x01e7ffdf},
2180     // WORD32 ixheaacd_f_huffman_env_3_0db_idx_table[25];
2181     {0x00000000, 0x00100002, 0x00200006, 0x0030000e, 0x0040001e,
2182      0x0050003e, 0x007000fd, 0x009001fd, 0x00b003fd, 0x00d007fd,
2183      0x00f00ffd, 0x11001ffc, 0x21507ffa, 0x3190fff9, 0x4243fff6,
2184      0x02e7fff7, 0x036ffff7, 0x03affffb, 0x03cffffd, 0x03dffffe,
2185      0x03efffff, 0x01203ffb, 0x0170fff7, 0x01d1fff7, 0x0267ffef},
2186 
2187     // const WORD8 start_min[12] =
2188     {7, 7, 10, 11, 12, 16, 16, 17, 24, 32, 35, 48},
2189 
2190     // const WORD8 offset_idx[12] =
2191     {5, 5, 4, 4, 4, 3, 2, 1, 0, 6, 6, 6},
2192 
2193     // const WORD8 ixheaacd_drc_offset[7][16] =
2194     {{-8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7},
2195      {-5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 9, 11, 13},
2196      {-5, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 9, 11, 13, 16},
2197      {-6, -4, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 9, 11, 13, 16},
2198      {-4, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 9, 11, 13, 16, 20},
2199      {-2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 9, 11, 13, 16, 20, 24},
2200      {0, 1, 2, 3, 4, 5, 6, 7, 9, 11, 13, 16, 20, 24, 28, 33}},
2201 
2202     // const WORD8 stop_min[12] =
2203     {13, 15, 20, 21, 23, 32, 32, 35, 48, 64, 70, 96},
2204 
2205     // const WORD8 stop_off[12][14] =
2206     {{0, 2, 4, 6, 8, 11, 14, 18, 22, 26, 31, 37, 44, 51},
2207      {0, 2, 4, 6, 8, 11, 14, 18, 22, 26, 31, 36, 42, 49},
2208      {0, 2, 4, 6, 8, 11, 14, 17, 21, 25, 29, 34, 39, 44},
2209      {0, 2, 4, 6, 8, 11, 14, 17, 20, 24, 28, 33, 38, 43},
2210      {0, 2, 4, 6, 8, 11, 14, 17, 20, 24, 28, 32, 36, 41},
2211      {0, 2, 4, 6, 8, 10, 12, 14, 17, 20, 23, 26, 29, 32},
2212      {0, 2, 4, 6, 8, 10, 12, 14, 17, 20, 23, 26, 29, 32},
2213      {0, 1, 3, 5, 7, 9, 11, 13, 15, 17, 20, 23, 26, 29},
2214      {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 14, 16},
2215      {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2216      {0, -1, -2, -3, -4, -5, -6, -6, -6, -6, -6, -6, -6, -6},
2217      {0, -3, -6, -9, -12, -15, -18, -20, -22, -24, -26, -28, -30, -32}}
2218 
2219 };
2220 
2221 const ia_ps_tables_struct ixheaacd_aac_dec_ps_tables = {
2222     {
2223         // const WORD16 decay_scale_factor[70]=
2224 
2225         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
2226         0x5361, 0x4848, 0x3ea8, 0x4f36, 0x44ab, 0x3b86, 0x4b0b, 0x410e, 0x3864,
2227         0x46e0, 0x3d71, 0x3542, 0x42b5, 0x39d4, 0x3221, 0x3e8a, 0x3637, 0x2eff,
2228         0x3a5f, 0x329a, 0x2bdd, 0x3634, 0x2efd, 0x28bb, 0x3209, 0x2b60, 0x2599,
2229         0x2ddd, 0x27c3, 0x2277, 0x29b2, 0x2426, 0x1f55, 0x2587, 0x2089, 0x1c34,
2230         0x215c, 0x1cec, 0x1912, 0x1d31, 0x194f, 0x15f0, 0x1906, 0x15b2, 0x12ce,
2231         0x14db, 0x1215, 0x0fac, 0x10b0, 0x0e78, 0x0c8a, 0x0c85, 0x0adb, 0x0968,
2232         0x085a, 0x073e, 0x0647, 0x042f, 0x03a0, 0x0325, 0x0000, 0x0000, 0x0000,
2233     }
2234 
2235     ,
2236     // const WORD16 hyb_resol[3] =
2237     {8, 2, 2},
2238 
2239     // const WORD16 rev_link_decay_ser[NO_SERIAL_ALLPASS_LINKS]=
2240     {0x5362, 0x4849, 0x3ea9},
2241 
2242     // const WORD16 rev_link_delay_ser[3] =
2243     {3, 4, 5},
2244 
2245     // const WORD16 borders_group[NO_IID_GROUPS + 1] =
2246     {4, 5, 0, 1, 2, 3, 7, 6, 8, 9, 3, 4, 5, 6, 7, 8, 9, 11, 14, 18, 23, 35, 64},
2247 
2248     // const WORD16 group_shift[6] =
2249     {0, 1, 1, 2, 3, 4},
2250 
2251     // const WORD16 group_to_bin[NO_IID_GROUPS] =
2252     {0, 1,  2,  3,  1,  0,  5,  4,  6,  7,  8,
2253      9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19},
2254 
2255     // const WORD16 hybrid_to_bin[SUBQMF_GROUPS] =
2256     {0, 1, 2, 3, 1, 0, 5, 4, 6, 7},
2257 
2258     // const WORD16 delay_to_bin[32] =
2259     {20, 20, 20, 8,  9,  10, 11, 12, 13, 14, 14, 15, 15, 15, 16, 16, 16,
2260      16, 17, 17, 17, 17, 17, 20, 20, 20, 20, 20, 20, 20, 20, 20
2261 
2262     },
2263 
2264     // const WORD16 frac_delay_phase_fac_qmf_re_im[24*2]=
2265     {
2266         0,
2267         0,
2268         0,
2269         0,
2270         0,
2271         0,
2272         (WORD16)-0x34ac,
2273         (WORD16)0x74a9,
2274         (WORD16)0x5bec,
2275         (WORD16)0x5914,
2276         (WORD16)0x72f3,
2277         (WORD16)-0x3850,
2278         (WORD16)-0x0e0c,
2279         (WORD16)-0x7f3a,
2280         (WORD16)-0x7c77,
2281         (WORD16)-0x1de2,
2282         (WORD16)-0x4646,
2283         (WORD16)0x6afc,
2284         (WORD16)0x4cdb,
2285         (WORD16)0x665c,
2286         (WORD16)0x7a57,
2287         (WORD16)-0x25a3,
2288         (WORD16)0x0608,
2289         (WORD16)-0x7fdc,
2290         (WORD16)-0x7642,
2291         (WORD16)-0x30fc,
2292         (WORD16)-0x5625,
2293         (WORD16)0x5eac,
2294         (WORD16)0x3be5,
2295         (WORD16)0x711f,
2296         (WORD16)0x7eb9,
2297         (WORD16)-0x1209,
2298         (WORD16)0x19f5,
2299         (WORD16)-0x7d57,
2300         (WORD16)-0x6d23,
2301         (WORD16)-0x42e1,
2302         (WORD16)-0x63e5,
2303         (WORD16)0x5008,
2304         (WORD16)0x2976,
2305         (WORD16)0x7919,
2306         (WORD16)0x7ffc,
2307         (WORD16)0x0203,
2308         (WORD16)0x2d3f,
2309         (WORD16)-0x77bd,
2310         (WORD16)-0x6155,
2311         (WORD16)-0x5321,
2312     },
2313 
2314     // const WORD16 frac_delay_phase_fac_qmf_sub_re_im[16*2]=
2315     {
2316         (WORD16)0x7e80,  (WORD16)-0x1387, (WORD16)0x72ba,  (WORD16)-0x38c3,
2317         (WORD16)0x5c45,  (WORD16)-0x58b7, (WORD16)0x3d39,  (WORD16)-0x7069,
2318         (WORD16)0x72ba,  (WORD16)0x38c3,  (WORD16)0x7e80,  (WORD16)0x1387,
2319         (WORD16)-0x456f, (WORD16)-0x6b88, (WORD16)0x0506,  (WORD16)-0x7fe7,
2320         (WORD16)-0x76a3, (WORD16)-0x300e, (WORD16)-0x7cb2, (WORD16)0x1ce7,
2321     },
2322 
2323     // const WORD16 frac_delay_phase_fac_qmf_ser_re_im[3][32]=
2324     {
2325         // const WORD16
2326         {
2327             0,
2328             0,
2329             0,
2330             0,
2331             0,
2332             0,
2333             (WORD16)0x0203,
2334             (WORD16)0x7ffc,
2335             (WORD16)0x7d57,
2336             (WORD16)0x19f5,
2337             (WORD16)0x34ac,
2338             (WORD16)-0x74a9,
2339             (WORD16)-0x665c,
2340             (WORD16)-0x4cdb,
2341             (WORD16)-0x6155,
2342             (WORD16)0x5321,
2343             (WORD16)0x3be5,
2344             (WORD16)0x711f,
2345             (WORD16)0x7b77,
2346             (WORD16)-0x21c7,
2347             (WORD16)-0x0608,
2348             (WORD16)-0x7fdc,
2349             (WORD16)-0x7e18,
2350             (WORD16)-0x1602,
2351             (WORD16)-0x30fc,
2352             (WORD16)0x7642,
2353             (WORD16)0x68b9,
2354             (WORD16)0x499a,
2355             (WORD16)0x5eac,
2356             (WORD16)-0x5625,
2357             (WORD16)-0x3f6b,
2358             (WORD16)-0x6f2f,
2359             (WORD16)-0x7a57,
2360             (WORD16)0x25a3,
2361             (WORD16)0x0a0b,
2362             (WORD16)0x7f9b,
2363             (WORD16)0x7eb9,
2364             (WORD16)0x1209,
2365             (WORD16)0x2d3f,
2366             (WORD16)-0x77bd,
2367             (WORD16)-0x6afc,
2368             (WORD16)-0x4646,
2369             (WORD16)-0x5bec,
2370             (WORD16)0x5914,
2371             (WORD16)0x42e1,
2372             (WORD16)0x6d23,
2373         },
2374 
2375         // const WORD16
2376         {
2377             0,
2378             0,
2379             0,
2380             0,
2381             0,
2382             0,
2383             (WORD16)-0x30fc,
2384             (WORD16)-0x7642,
2385             (WORD16)-0x30fc,
2386             (WORD16)0x7642,
2387             (WORD16)0x7642,
2388             (WORD16)-0x30fc,
2389             (WORD16)-0x7642,
2390             (WORD16)-0x30fc,
2391             (WORD16)0x30fc,
2392             (WORD16)0x7642,
2393             (WORD16)0x30fc,
2394             (WORD16)-0x7642,
2395             (WORD16)-0x7642,
2396             (WORD16)0x30fc,
2397             (WORD16)0x7642,
2398             (WORD16)0x30fc,
2399             (WORD16)-0x30fc,
2400             (WORD16)-0x7642,
2401             (WORD16)-0x30fc,
2402             (WORD16)0x7642,
2403             (WORD16)0x7642,
2404             (WORD16)-0x30fc,
2405             (WORD16)-0x7642,
2406             (WORD16)-0x30fc,
2407             (WORD16)0x30fc,
2408             (WORD16)0x7642,
2409             (WORD16)0x30fc,
2410             (WORD16)-0x7642,
2411             (WORD16)-0x7642,
2412             (WORD16)0x30fc,
2413             (WORD16)0x7642,
2414             (WORD16)0x30fc,
2415             (WORD16)-0x30fc,
2416             (WORD16)-0x7642,
2417             (WORD16)-0x30fc,
2418             (WORD16)0x7642,
2419             (WORD16)0x7642,
2420             (WORD16)-0x30fc,
2421             (WORD16)-0x7642,
2422             (WORD16)-0x30fc,
2423         },
2424 
2425         // const WORD16
2426         {
2427             0,
2428             0,
2429             0,
2430             0,
2431             0,
2432             0,
2433             (WORD16)-0x6405,
2434             (WORD16)0x4fe0,
2435             (WORD16)0x1894,
2436             (WORD16)0x7d9e,
2437             (WORD16)0x7abf,
2438             (WORD16)0x244a,
2439             (WORD16)0x58ef,
2440             (WORD16)-0x5c0f,
2441             (WORD16)-0x2882,
2442             (WORD16)-0x796c,
2443             (WORD16)-0x7e64,
2444             (WORD16)-0x1439,
2445             (WORD16)-0x4c5f,
2446             (WORD16)0x66b8,
2447             (WORD16)0x37c5,
2448             (WORD16)0x7336,
2449             (WORD16)0x7ff1,
2450             (WORD16)0x03d2,
2451             (WORD16)0x3e8b,
2452             (WORD16)-0x6fae,
2453             (WORD16)-0x461b,
2454             (WORD16)-0x6b18,
2455             (WORD16)-0x7f60,
2456             (WORD16)0x0ca5,
2457             (WORD16)-0x2fae,
2458             (WORD16)0x76ca,
2459             (WORD16)0x5348,
2460             (WORD16)0x6134,
2461             (WORD16)0x7cb2,
2462             (WORD16)-0x1ce7,
2463             (WORD16)0x2007,
2464             (WORD16)-0x7bee,
2465             (WORD16)-0x5f14,
2466             (WORD16)-0x55b3,
2467             (WORD16)-0x77f3,
2468             (WORD16)0x2cae,
2469             (WORD16)-0x0fd8,
2470             (WORD16)0x7f04,
2471             (WORD16)0x694c,
2472             (WORD16)0x48c7,
2473         },
2474 
2475     },
2476     // const WORD16 frac_delay_phase_fac_qmf_sub_ser_re_im[3][16]=
2477     {
2478         {
2479             (WORD16)0x7e2e,  (WORD16)-0x1583, (WORD16)0x6fed,  (WORD16)-0x3e1b,
2480             (WORD16)0x5506,  (WORD16)-0x5fae, (WORD16)0x3085,  (WORD16)-0x7673,
2481             (WORD16)0x6fed,  (WORD16)0x3e1b,  (WORD16)0x7e2e,  (WORD16)0x1583,
2482             (WORD16)-0x5b38, (WORD16)-0x59cc, (WORD16)-0x0f0b, (WORD16)-0x7f1d,
2483             (WORD16)-0x7f55, (WORD16)-0x0d0c, (WORD16)-0x6b88, (WORD16)0x456f,
2484         },
2485         {
2486             (WORD16)0x7a7d,  (WORD16)-0x2528, (WORD16)0x5134,  (WORD16)-0x62f2,
2487             (WORD16)0x0c8c,  (WORD16)-0x7f62, (WORD16)-0x3c57, (WORD16)-0x70e3,
2488             (WORD16)0x5134,  (WORD16)0x62f2,  (WORD16)0x7a7d,  (WORD16)0x2528,
2489             (WORD16)-0x471d, (WORD16)0x6a6e,  (WORD16)-0x7d8a, (WORD16)-0x18f9,
2490             (WORD16)0x471d,  (WORD16)0x6a6e,  (WORD16)0x7d8a,  (WORD16)-0x18f9,
2491         },
2492         {
2493             (WORD16)0x7ed0,  (WORD16)-0x1163, (WORD16)0x7574,  (WORD16)-0x32e2,
2494             (WORD16)0x636c,  (WORD16)-0x509e, (WORD16)0x4a0d,  (WORD16)-0x6867,
2495             (WORD16)0x7574,  (WORD16)0x32e2,  (WORD16)0x7ed0,  (WORD16)0x1163,
2496             (WORD16)-0x2a51, (WORD16)-0x78ce, (WORD16)0x1a73,  (WORD16)-0x7d3d,
2497             (WORD16)-0x62d1, (WORD16)-0x515c, (WORD16)-0x7eae, (WORD16)-0x1255,
2498         },
2499 
2500     },
2501     // const WORD16 scale_factors[NO_IID_LEVELS]=
2502     {(WORD16)0x5a5e, (WORD16)0x59cd, (WORD16)0x58c3, (WORD16)0x564c,
2503      (WORD16)0x52a4, (WORD16)0x4c8c, (WORD16)0x46df, (WORD16)0x4000,
2504      (WORD16)0x384c, (WORD16)0x304c, (WORD16)0x24ea, (WORD16)0x1b4a,
2505      (WORD16)0x11b6, (WORD16)0x0b4e, (WORD16)0x0515},
2506 
2507     // const WORD16 scale_factors_fine[NO_IID_LEVELS_FINE] =
2508     {(WORD16)0x5a82, (WORD16)0x5a82, (WORD16)0x5a81, (WORD16)0x5a7f,
2509      (WORD16)0x5a77, (WORD16)0x5a5e, (WORD16)0x5a3a, (WORD16)0x59f2,
2510      (WORD16)0x5965, (WORD16)0x5853, (WORD16)0x564c, (WORD16)0x5417,
2511      (WORD16)0x50ea, (WORD16)0x4c8c, (WORD16)0x46df, (WORD16)0x4000,
2512      (WORD16)0x384c, (WORD16)0x304c, (WORD16)0x288e, (WORD16)0x217a,
2513      (WORD16)0x1b4a, (WORD16)0x13c6, (WORD16)0x0e2b, (WORD16)0x0a18,
2514      (WORD16)0x072b, (WORD16)0x0515, (WORD16)0x02dc, (WORD16)0x019c,
2515      (WORD16)0x00e8, (WORD16)0x0082, (WORD16)0x0049},
2516 
2517     // const WORD16 alpha_values[NO_ICC_LEVELS]=
2518     {(WORD16)0x0000, (WORD16)0x0b6b, (WORD16)0x1248, (WORD16)0x1da3,
2519      (WORD16)0x2638, (WORD16)0x3244, (WORD16)0x466b, (WORD16)0x6488},
2520 
2521     // const WORD32 p2_6[6] =
2522     {
2523         (WORD32)0x026e, (WORD32)-0x0956, (WORD32)0x272a, (WORD32)0x272a,
2524         (WORD32)-0x0956, (WORD32)0x026e,
2525     },
2526 
2527     // const WORD32 p8_13[13] =
2528     {
2529         (WORD32)-0x00f4, (WORD32)-0x02e8, (WORD32)-0x05d2, (WORD32)-0x094d,
2530         (WORD32)-0x0ca7, (WORD32)0x0f19, (WORD32)0x1000, (WORD32)0x0f19,
2531         (WORD32)0x0ca7, (WORD32)0x094d, (WORD32)0x05d2, (WORD32)0x02e8,
2532         (WORD32)0x00f4,
2533     },
2534 
2535     // const WORD16 huff_iid_dt[28] =
2536     {
2537         (WORD16)-0x3fff, (WORD16)-0x40fe, (WORD16)-0x3efd, (WORD16)-0x41fc,
2538         (WORD16)-0x3dfb, (WORD16)-0x42fa, (WORD16)-0x3cf9, (WORD16)-0x43f8,
2539         (WORD16)-0x3bf7, (WORD16)-0x44f6, (WORD16)-0x3af5, (WORD16)-0x45f4,
2540         (WORD16)-0x39f3, (WORD16)-0x38f2, (WORD16)-0x46f1, (WORD16)0x1011,
2541         (WORD16)-0x3748, (WORD16)0x1215,  (WORD16)0x1314,  (WORD16)-0x364e,
2542         (WORD16)-0x4c4c, (WORD16)0x1619,  (WORD16)0x1718,  (WORD16)-0x4a4a,
2543         (WORD16)-0x4836, (WORD16)0x1a1b,  (WORD16)-0x3434, (WORD16)-0x3232,
2544     },
2545 
2546     // const WORD16 huff_iid_df[28] =
2547     {
2548         (WORD16)-0x3fff, (WORD16)0x0203,  (WORD16)-0x3e41, (WORD16)0x0405,
2549         (WORD16)-0x3d42, (WORD16)0x0607,  (WORD16)-0x3c43, (WORD16)0x0809,
2550         (WORD16)-0x433c, (WORD16)-0x3af6, (WORD16)-0x44f5, (WORD16)-0x39f4,
2551         (WORD16)-0x45f3, (WORD16)-0x46f2, (WORD16)-0x38f1, (WORD16)0x1011,
2552         (WORD16)-0x3748, (WORD16)0x1213,  (WORD16)-0x3636, (WORD16)0x1415,
2553         (WORD16)-0x4835, (WORD16)0x1618,  (WORD16)-0x49e9, (WORD16)-0x4a4e,
2554         (WORD16)0x191a,  (WORD16)-0x4c4c, (WORD16)-0x33e5, (WORD16)-0x3232,
2555     },
2556 
2557     // const WORD16 huff_icc_dt[14] =
2558     {
2559         (WORD16)-0x3fff, (WORD16)-0x3efe, (WORD16)-0x40fd, (WORD16)-0x3dfc,
2560         (WORD16)-0x41fb, (WORD16)-0x3cfa, (WORD16)-0x42f9, (WORD16)-0x3bf8,
2561         (WORD16)-0x43f7, (WORD16)-0x3af6, (WORD16)-0x44f5, (WORD16)-0x39f4,
2562         (WORD16)-0x45f3, (WORD16)-0x4639,
2563     },
2564 
2565     // const WORD16 huff_icc_df[14] =
2566     {
2567         (WORD16)-0x3fff, (WORD16)-0x3efe, (WORD16)-0x40fd, (WORD16)-0x3dfc,
2568         (WORD16)-0x41fb, (WORD16)-0x3cfa, (WORD16)-0x42f9, (WORD16)-0x3bf8,
2569         (WORD16)-0x3af7, (WORD16)-0x43f6, (WORD16)-0x39f5, (WORD16)-0x44f4,
2570         (WORD16)-0x38f3, (WORD16)-0x4547,
2571     },
2572 
2573     // const WORD16 huff_iid_dt_fine[60] =
2574     {
2575         (WORD16)0x01c0,  (WORD16)-0x3efe, (WORD16)0x03bf,  (WORD16)0x043b,
2576         (WORD16)0x0507,  (WORD16)0x06bd,  (WORD16)-0x433c, (WORD16)-0x3cf8,
2577         (WORD16)0x090b,  (WORD16)-0x3af6, (WORD16)-0x453a, (WORD16)0x0c29,
2578         (WORD16)0x0d14,  (WORD16)0x0eb9,  (WORD16)-0x36f1, (WORD16)-0x34f0,
2579         (WORD16)0x11b3,  (WORD16)0x1213,  (WORD16)-0x5454, (WORD16)-0x2d2d,
2580         (WORD16)-0x38eb, (WORD16)0x1628,  (WORD16)0x171d,  (WORD16)-0x32e8,
2581         (WORD16)0x191a,  (WORD16)-0x5252, (WORD16)0x1b1c,  (WORD16)-0x5926,
2582         (WORD16)-0x5b5b, (WORD16)0x1e25,  (WORD16)0x1f22,  (WORD16)0x2021,
2583         (WORD16)-0x2222, (WORD16)-0x2424, (WORD16)0x2324,  (WORD16)-0x5d5d,
2584         (WORD16)-0x5827, (WORD16)0x26b1,  (WORD16)0x27af,  (WORD16)-0x5728,
2585         (WORD16)-0x4936, (WORD16)0x2abb,  (WORD16)0x2b2c,  (WORD16)-0x4738,
2586         (WORD16)0x2d34,  (WORD16)0x2e32,  (WORD16)0x2fb4,  (WORD16)-0x30d0,
2587         (WORD16)-0x2ecf, (WORD16)-0x5629, (WORD16)-0x33cd, (WORD16)-0x4d32,
2588         (WORD16)0x35b7,  (WORD16)0x36b5,  (WORD16)0x3739,  (WORD16)0x38b0,
2589         (WORD16)-0x552a, (WORD16)-0x2fc6, (WORD16)-0x2b2b, (WORD16)-0x413e,
2590     },
2591 
2592     // const WORD16 huff_iid_df_fine[60] =
2593     {
2594         (WORD16)0x01c0,  (WORD16)0x0204,  (WORD16)0x03bf,  (WORD16)-0x413e,
2595         (WORD16)-0x3efb, (WORD16)0x0607,  (WORD16)-0x423d, (WORD16)0x0809,
2596         (WORD16)-0x433c, (WORD16)0x0a0b,  (WORD16)-0x443b, (WORD16)0x0c0d,
2597         (WORD16)-0x453a, (WORD16)0x0e12,  (WORD16)-0x38f1, (WORD16)0x10b8,
2598         (WORD16)-0x35ef, (WORD16)-0x4a35, (WORD16)0x1325,  (WORD16)-0x37ec,
2599         (WORD16)0x15b7,  (WORD16)0x161d,  (WORD16)0x17b4,  (WORD16)0x18b2,
2600         (WORD16)0x191c,  (WORD16)0x1a1b,  (WORD16)-0x542b, (WORD16)-0x522d,
2601         (WORD16)-0x502f, (WORD16)-0x33e2, (WORD16)-0x31e1, (WORD16)0x20b1,
2602         (WORD16)0x2122,  (WORD16)-0x512e, (WORD16)0x2324,  (WORD16)-0x5959,
2603         (WORD16)-0x5b5b, (WORD16)0x26b9,  (WORD16)-0x36d9, (WORD16)0x28b6,
2604         (WORD16)0x2932,  (WORD16)0x2ab3,  (WORD16)-0x30d5, (WORD16)0x2c2f,
2605         (WORD16)0x2d2e,  (WORD16)-0x552a, (WORD16)-0x5757, (WORD16)0x3031,
2606         (WORD16)-0x2626, (WORD16)-0x2828, (WORD16)-0x32cd, (WORD16)0x343b,
2607         (WORD16)0x3538,  (WORD16)0x3637,  (WORD16)-0x2222, (WORD16)-0x2424,
2608         (WORD16)0x393a,  (WORD16)-0x5d5d, (WORD16)-0x532c, (WORD16)-0x4f30,
2609     },
2610     0,
2611     // const FLOAT32 qmf_fract_delay_phase_factor_im[NUM_OF_QUAD_MIRROR_FILTER_CHNLS] =
2612     {
2613         -0.5750052333f, -0.9645574093f, -0.0784592107f, 0.9114032388f,  0.6959129572f,
2614         -0.4399389625f, -0.9939609766f, -0.2334456891f, 0.8358071446f,  0.7996849418f,
2615         -0.2940398753f, -0.9988898635f, -0.3826839626f, 0.7396306992f,  0.8837659359f,
2616         -0.1409005374f, -0.9792226553f, -0.5224992633f, 0.6252419949f,  0.9460856318f,
2617         0.0157082379f,  -0.9354436994f, -0.6494488120f, 0.4954577386f,  0.9851095080f,
2618         0.1719302237f,  -0.8686309457f, -0.7604067922f, 0.3534736335f,  0.9998766780f,
2619         0.3239187002f,  -0.7804295421f, -0.8526409268f, 0.2027858198f,  0.9900234342f,
2620         0.4679312110f,  -0.6730113029f, -0.9238801599f, 0.0471047238f,  0.9557924867f,
2621         0.6004216671f,  -0.5490212440f, -0.9723703861f, -0.1097362563f, 0.8980267048f,
2622         0.7181277275f,  -0.4115124643f, -0.9969174862f, -0.2638751566f, 0.8181484342f,
2623         0.8181509972f,  -0.2638708055f, -0.9969171286f, -0.4115165472f, 0.7181245685f,
2624         0.8980286717f,  -0.1097317860f, -0.9723693132f, -0.5490249991f, 0.6004180908f,
2625         0.9557937980f,  0.0471092127f,  -0.9238784313f, -0.6730146408f,
2626     },
2627     // const FLOAT32 qmf_fract_delay_phase_factor_re[NUM_OF_QUAD_MIRROR_FILTER_CHNLS] =
2628     {
2629         0.8181497455f, -0.2638729811f, -0.9969173074f, -0.4115144908f, 0.7181261778f,
2630         0.8980276585f, -0.1097340211f, -0.9723698497f, -0.5490231514f, 0.6004198790f,
2631         0.9557931423f, 0.0471069664f,  -0.9238793254f, -0.6730129719f, 0.4679292440f,
2632         0.9900237322f, 0.2027880251f,  -0.8526397347f, -0.7804309130f, 0.3239165843f,
2633         0.9998766184f, 0.3534757495f,  -0.7604053020f, -0.8686320186f, 0.1719280183f,
2634         0.9851091504f, 0.4954597056f,  -0.6494470835f, -0.9354444742f, 0.0157059915f,
2635         0.9460849166f, 0.6252437830f,  -0.5224972963f, -0.9792231321f, -0.1409027725f,
2636         0.8837648630f, 0.7396321893f,  -0.3826818764f, -0.9988899827f, -0.2940420210f,
2637         0.7996835709f, 0.8358083963f,  -0.2334435135f, -0.9939607382f, -0.4399409592f,
2638         0.6959113479f, 0.9114041328f,  -0.0784569681f, -0.9645568728f, -0.5750070810f,
2639         0.5750033855f, 0.9645580053f,  0.0784614459f,  -0.9114022851f, -0.6959145665f,
2640         0.4399369359f, 0.9939612150f,  0.2334478796f,  -0.8358058929f, -0.7996862531f,
2641         0.2940377295f, 0.9988897443f,  0.3826860189f,  -0.7396291494f,
2642     },
2643     // const FLOAT32 frac_delay_phase_fac_qmf_sub_im_20[NUM_SUB_QMF_CHANNELS] =
2644     {
2645         -0.1525546163f, -0.4434623122f, -0.6930873394f, -0.8781917691f, -0.0000000000f,
2646         -0.0000000000f, 0.4434623122f, 0.1525546163f, -0.8400936127f, -0.9992290139f,
2647         -0.3754156530f, 0.2258011401f,
2648     },
2649     // const FLOAT32 frac_delay_phase_fac_qmf_sub_re_20[NUM_SUB_QMF_CHANNELS] =
2650     {
2651         0.9882950187f, 0.8962930441f, 0.7208536267f, 0.4783087671f, 1.0000000000f,
2652         1.0000000000f, 0.8962930441f, 0.9882950187f, -0.5424414873f, 0.0392598733f,
2653         -0.9268565774f, -0.9741734266f,
2654     },
2655     // const FLOAT32 frac_delay_phase_fac_qmf_sub_im_34[NUM_SUB_QMF_CHANNELS_HI_RES] =
2656     {
2657         -0.1019244567f, -0.3015379608f, -0.4886212051f, -0.6554001570f, -0.7949443460f,
2658         -0.9014551044f, -0.9705064893f, -0.9992290139f, -0.9864292741f, 0.4886212051f,
2659         0.3015379608f,  0.1019244567f,  -0.5124176741f, -0.2296251953f, -0.6930873394f,
2660         -0.8781917691f, -0.9815438390f, -0.9935223460f, -0.9130122662f, -0.7475084066f,
2661         -0.3754156530f, 0.2258011401f,  0.7448939681f,  -0.8400936127f, 0.8800634146f,
2662         0.2258011401f,  0.7448939681f,  0.9930684566f,  0.8800634146f,  0.4469788074f,
2663         -0.1486721933f, 0.9930684566f,
2664     },
2665     // const FLOAT32 frac_delay_phase_fac_qmf_sub_re_34[NUM_SUB_QMF_CHANNELS_HI_RES] =
2666     {
2667         0.9947921634f,  0.9534541965f,  0.8724960089f,  0.7552818656f,  0.6066823602f,
2668         0.4328725934f,  0.2410750538f,  0.0392598733f,  -0.1641867310f, 0.8724960089f,
2669         0.9534541965f,  0.9947921634f,  -0.8587363362f, -0.9732791185f, 0.7208536267f,
2670         0.4783087671f,  0.1912373453f,  -0.1136366725f, -0.4079320431f, -0.6642524004f,
2671         -0.9268565774f, -0.9741734266f, -0.6671828628f, -0.5424414873f, 0.4748562276f,
2672         -0.9741734266f, -0.6671828628f, -0.1175375655f, 0.4748562276f,  0.8945445418f,
2673         0.9888865352f,  -0.1175375655f,
2674     },
2675     // const FLOAT32
2676     // qmf_ser_fract_delay_phase_factor_im[NUM_QUAD_MIRROR_FILTER_CHNLS][NUM_SER_AP_LINKS] =
2677     {
2678         {
2679             -0.6252426505f, -0.9238795042f, -0.5184748173f,
2680         },
2681         {
2682             -0.8980275393f, 0.3826834261f, -0.9979268909f,
2683         },
2684         {
2685             0.2334454209f, 0.3826834261f, -0.4043435752f,
2686         },
2687         {
2688             0.9998766184f, -0.9238795042f, 0.6240159869f,
2689         },
2690         {
2691             0.2027871907f, 0.9238795042f, 0.9813933372f,
2692         },
2693         {
2694             -0.9114032984f, -0.3826834261f, 0.2835132182f,
2695         },
2696         {
2697             -0.6004201174f, -0.3826834261f, -0.7192186117f,
2698         },
2699         {
2700             0.6494481564f, 0.9238795042f, -0.9486001730f,
2701         },
2702         {
2703             0.8837655187f, -0.9238795042f, -0.1579856575f,
2704         },
2705         {
2706             -0.2638732493f, 0.3826834261f, 0.8025052547f,
2707         },
2708         {
2709             -0.9988898635f, 0.3826834261f, 0.9000906944f,
2710         },
2711         {
2712             -0.1719288528f, -0.9238795042f, 0.0298405960f,
2713         },
2714         {
2715             0.9238796234f, 0.9238795042f, -0.8724960685f,
2716         },
2717         {
2718             0.5750049949f, -0.3826834261f, -0.8366686702f,
2719         },
2720         {
2721             -0.6730127335f, -0.3826834261f, 0.0987988561f,
2722         },
2723         {
2724             -0.8686313629f, 0.9238795042f, 0.9280315042f,
2725         },
2726         {
2727             0.2940406799f, -0.9238795042f, 0.7593847513f,
2728         },
2729         {
2730             0.9969173074f, 0.3826834261f, -0.2258014232f,
2731         },
2732         {
2733             0.1409008205f, 0.3826834261f, -0.9681913853f,
2734         },
2735         {
2736             -0.9354441762f, -0.9238795042f, -0.6695194840f,
2737         },
2738         {
2739             -0.5490224361f, 0.9238795042f, 0.3490629196f,
2740         },
2741         {
2742             0.6959131360f, -0.3826834261f, 0.9923103452f,
2743         },
2744         {
2745             0.8526399136f, -0.3826834261f, 0.5685616732f,
2746         },
2747         {
2748             -0.3239179254f, 0.9238795042f, -0.4665412009f,
2749         },
2750         {
2751             -0.9939609170f, -0.9238795042f, -0.9999889135f,
2752         },
2753         {
2754             -0.1097337380f, 0.3826834261f, -0.4581840038f,
2755         },
2756         {
2757             0.9460855722f, 0.3826834261f, 0.5762898922f,
2758         },
2759         {
2760             0.5224980116f, -0.9238795042f, 0.9910997152f,
2761         },
2762         {
2763             -0.7181267142f, 0.9238795042f, 0.3402152061f,
2764         },
2765         {
2766             -0.8358070254f, -0.3826834261f, -0.6764906645f,
2767         },
2768         {
2769             0.3534754813f, -0.3826834261f, -0.9657900929f,
2770         },
2771         {
2772             0.9900235534f, 0.9238795042f, -0.2166097313f,
2773         },
2774         {
2775             0.0784583688f, -0.9238795042f, 0.7654833794f,
2776         },
2777         {
2778             -0.9557932615f, 0.3826834261f, 0.9244794250f,
2779         },
2780         {
2781             -0.4954580069f, 0.3826834261f, 0.0894154981f,
2782         },
2783         {
2784             0.7396316528f, -0.9238795042f, -0.8417937160f,
2785         },
2786         {
2787             0.8181492686f, 0.9238795042f, -0.8678520322f,
2788         },
2789         {
2790             -0.3826842010f, -0.3826834261f, 0.0392601527f,
2791         },
2792         {
2793             -0.9851091504f, -0.3826834261f, 0.9041572809f,
2794         },
2795         {
2796             -0.0471055657f, 0.9238795042f, 0.7968461514f,
2797         },
2798         {
2799             0.9645576477f, -0.9238795042f, -0.1672853529f,
2800         },
2801         {
2802             0.4679289758f, 0.3826834261f, -0.9515408874f,
2803         },
2804         {
2805             -0.7604066133f, 0.3826834261f, -0.7126382589f,
2806         },
2807         {
2808             -0.7996840477f, -0.9238795042f, 0.2925389707f,
2809         },
2810         {
2811             0.4115152657f, 0.9238795042f, 0.9831594229f,
2812         },
2813         {
2814             0.9792225957f, -0.3826834261f, 0.6166234016f,
2815         },
2816         {
2817             0.0157062728f, -0.3826834261f, -0.4129458666f,
2818         },
2819         {
2820             -0.9723701477f, 0.9238795042f, -0.9984891415f,
2821         },
2822         {
2823             -0.4399381876f, -0.9238795042f, -0.5103924870f,
2824         },
2825         {
2826             0.7804310918f, 0.3826834261f, 0.5265110731f,
2827         },
2828         {
2829             0.7804297209f, 0.3826834261f, 0.9972759485f,
2830         },
2831         {
2832             -0.4399402142f, -0.9238795042f, 0.3957053721f,
2833         },
2834         {
2835             -0.9723696709f, 0.9238795042f, -0.6313531399f,
2836         },
2837         {
2838             0.0157085191f, -0.3826834261f, -0.9795400500f,
2839         },
2840         {
2841             0.9792230725f, -0.3826834261f, -0.2744622827f,
2842         },
2843         {
2844             0.4115132093f, 0.9238795042f, 0.7257350087f,
2845         },
2846         {
2847             -0.7996854186f, -0.9238795042f, 0.9455752373f,
2848         },
2849         {
2850             -0.7604051232f, 0.3826834261f, 0.1486719251f,
2851         },
2852         {
2853             0.4679309726f, 0.3826834261f, -0.8080930114f,
2854         },
2855         {
2856             0.9645570517f, -0.9238795042f, -0.8959442377f,
2857         },
2858         {
2859             -0.0471078083f, 0.9238795042f, -0.0204183888f,
2860         },
2861         {
2862             -0.9851095676f, -0.3826834261f, 0.8770626187f,
2863         },
2864         {
2865             -0.3826821446f, -0.3826834261f, 0.8314692974f,
2866         },
2867         {
2868             0.8181505203f, 0.9238795042f, -0.1081734300f,
2869         },
2870 
2871     },
2872     // const FLOAT32
2873     // qmf_ser_fract_delay_phase_factor_re[NUM_OF_QUAD_MIRROR_FILTER_CHNLS]
2874     //                                    [NUM_SER_AP_LINKS] =
2875     {
2876         {
2877             0.7804303765f, 0.3826834261f, 0.8550928831f,
2878         },
2879         {
2880             -0.4399392009f, -0.9238795042f, -0.0643581524f,
2881         },
2882         {
2883             -0.9723699093f, 0.9238795042f, -0.9146071672f,
2884         },
2885         {
2886             0.0157073960f, -0.3826834261f, -0.7814115286f,
2887         },
2888         {
2889             0.9792228341f, -0.3826834261f, 0.1920081824f,
2890         },
2891         {
2892             0.4115142524f, 0.9238795042f, 0.9589683414f,
2893         },
2894         {
2895             -0.7996847630f, -0.9238795042f, 0.6947838664f,
2896         },
2897         {
2898             -0.7604058385f, 0.3826834261f, -0.3164770305f,
2899         },
2900         {
2901             0.4679299891f, 0.3826834261f, -0.9874414206f,
2902         },
2903         {
2904             0.9645573497f, -0.9238795042f, -0.5966450572f,
2905         },
2906         {
2907             -0.0471066870f, 0.9238795042f, 0.4357025325f,
2908         },
2909         {
2910             -0.9851093888f, -0.3826834261f, 0.9995546937f,
2911         },
2912         {
2913             -0.3826831877f, -0.3826834261f, 0.4886211455f,
2914         },
2915         {
2916             0.8181498647f, 0.9238795042f, -0.5477093458f,
2917         },
2918         {
2919             0.7396308780f, -0.9238795042f, -0.9951074123f,
2920         },
2921         {
2922             -0.4954589605f, 0.3826834261f, -0.3725017905f,
2923         },
2924         {
2925             -0.9557929039f, 0.3826834261f, 0.6506417990f,
2926         },
2927         {
2928             0.0784594864f, -0.9238795042f, 0.9741733670f,
2929         },
2930         {
2931             0.9900237322f, 0.9238795042f, 0.2502108514f,
2932         },
2933         {
2934             0.3534744382f, -0.3826834261f, -0.7427945137f,
2935         },
2936         {
2937             -0.8358076215f, -0.3826834261f, -0.9370992780f,
2938         },
2939         {
2940             -0.7181259394f, 0.9238795042f, -0.1237744763f,
2941         },
2942         {
2943             0.5224990249f, -0.9238795042f, 0.8226406574f,
2944         },
2945         {
2946             0.9460852146f, 0.3826834261f, 0.8844994903f,
2947         },
2948         {
2949             -0.1097348556f, 0.3826834261f, -0.0047125919f,
2950         },
2951         {
2952             -0.9939610362f, -0.9238795042f, -0.8888573647f,
2953         },
2954         {
2955             -0.3239168525f, 0.9238795042f, -0.8172453642f,
2956         },
2957         {
2958             0.8526405096f, -0.3826834261f, 0.1331215799f,
2959         },
2960         {
2961             0.6959123611f, -0.3826834261f, 0.9403476119f,
2962         },
2963         {
2964             -0.5490233898f, 0.9238795042f, 0.7364512086f,
2965         },
2966         {
2967             -0.9354437590f, -0.9238795042f, -0.2593250275f,
2968         },
2969         {
2970             0.1409019381f, 0.3826834261f, -0.9762582779f,
2971         },
2972         {
2973             0.9969173670f, 0.3826834261f, -0.6434556246f,
2974         },
2975         {
2976             0.2940396070f, -0.9238795042f, 0.3812320232f,
2977         },
2978         {
2979             -0.8686318994f, 0.9238795042f, 0.9959943891f,
2980         },
2981         {
2982             -0.6730118990f, -0.3826834261f, 0.5397993922f,
2983         },
2984         {
2985             0.5750059485f, -0.3826834261f, -0.4968227744f,
2986         },
2987         {
2988             0.9238792062f, 0.9238795042f, -0.9992290139f,
2989         },
2990         {
2991             -0.1719299555f, -0.9238795042f, -0.4271997511f,
2992         },
2993         {
2994             -0.9988899231f, 0.3826834261f, 0.6041822433f,
2995         },
2996         {
2997             -0.2638721764f, 0.3826834261f, 0.9859085083f,
2998         },
2999         {
3000             0.8837660551f, -0.9238795042f, 0.3075223565f,
3001         },
3002         {
3003             0.6494473219f, 0.9238795042f, -0.7015317082f,
3004         },
3005         {
3006             -0.6004210114f, -0.3826834261f, -0.9562535882f,
3007         },
3008         {
3009             -0.9114028811f, -0.3826834261f, -0.1827499419f,
3010         },
3011         {
3012             0.2027882934f, 0.9238795042f, 0.7872582674f,
3013         },
3014         {
3015             0.9998766780f, -0.9238795042f, 0.9107555747f,
3016         },
3017         {
3018             0.2334443331f, 0.3826834261f, 0.0549497530f,
3019         },
3020         {
3021             -0.8980280757f, 0.3826834261f, -0.8599416018f,
3022         },
3023         {
3024             -0.6252418160f, -0.9238795042f, -0.8501682281f,
3025         },
3026         {
3027             0.6252435446f, 0.9238795042f, 0.0737608299f,
3028         },
3029         {
3030             0.8980270624f, -0.3826834261f, 0.9183775187f,
3031         },
3032         {
3033             -0.2334465086f, -0.3826834261f, 0.7754954696f,
3034         },
3035         {
3036             -0.9998766184f, 0.9238795042f, -0.2012493610f,
3037         },
3038         {
3039             -0.2027861029f, -0.9238795042f, -0.9615978599f,
3040         },
3041         {
3042             0.9114037752f, 0.3826834261f, -0.6879743338f,
3043         },
3044         {
3045             0.6004192233f, 0.3826834261f, 0.3254036009f,
3046         },
3047         {
3048             -0.6494490504f, -0.9238795042f, 0.9888865948f,
3049         },
3050         {
3051             -0.8837650418f, 0.9238795042f, 0.5890548825f,
3052         },
3053         {
3054             0.2638743520f, -0.3826834261f, -0.4441666007f,
3055         },
3056         {
3057             0.9988898039f, -0.3826834261f, -0.9997915030f,
3058         },
3059         {
3060             0.1719277352f, 0.9238795042f, -0.4803760946f,
3061         },
3062         {
3063             -0.9238800406f, -0.9238795042f, 0.5555707216f,
3064         },
3065         {
3066             -0.5750041008f, 0.3826834261f, 0.9941320419f,
3067         },
3068 
3069     },
3070     // const FLOAT32
3071     // frac_delay_phase_fac_ser_qmf_sub_im_20[NUM_SUB_QMF_CHANNELS][NUM_SER_AP_LINKS] =
3072     {
3073         {
3074             -0.1680592746f, -0.2902846634f, -0.1358452588f,
3075         },
3076         {
3077             -0.4851911962f, -0.7730104327f, -0.3975082636f,
3078         },
3079         {
3080             -0.7475083470f, -0.9951847196f, -0.6298289299f,
3081         },
3082         {
3083             -0.9253752232f, -0.8819212914f, -0.8156582713f,
3084         },
3085         {
3086             -0.0000000000f, -0.0000000000f, -0.0000000000f,
3087         },
3088         {
3089             -0.0000000000f, -0.0000000000f, -0.0000000000f,
3090         },
3091         {
3092             0.4851911962f, 0.7730104327f, 0.3975082636f,
3093         },
3094         {
3095             0.1680592746f, 0.2902846634f, 0.1358452588f,
3096         },
3097         {
3098             -0.7015314102f, 0.8314695954f, -0.9437720776f,
3099         },
3100         {
3101             -0.9930684566f, -0.1950903237f, -0.9784189463f,
3102         },
3103         {
3104             -0.1019244045f, 0.8314695954f, -0.6356067061f,
3105         },
3106         {
3107             0.5424416065f, -0.1950903237f, -0.1432335079f,
3108         },
3109 
3110     },
3111     // const FLOAT32
3112     // frac_delay_phase_fac_ser_qmf_sub_re_20[NUM_SUB_QMF_CHANNELS][NUM_SER_AP_LINKS] =
3113     {
3114         {
3115             0.9857769012f, 0.9569403529f, 0.9907300472f,
3116         },
3117         {
3118             0.8744080663f, 0.6343932748f, 0.9175986052f,
3119         },
3120         {
3121             0.6642524004f, 0.0980171412f, 0.7767338753f,
3122         },
3123         {
3124             0.3790524006f, -0.4713967443f, 0.5785340071f,
3125         },
3126         {
3127             1.0000000000f, 1.0000000000f, 1.0000000000f,
3128         },
3129         {
3130             1.0000000000f, 1.0000000000f, 1.0000000000f,
3131         },
3132         {
3133             0.8744080663f, 0.6343932748f, 0.9175986052f,
3134         },
3135         {
3136             0.9857769012f, 0.9569403529f, 0.9907300472f,
3137         },
3138         {
3139             -0.7126385570f, -0.5555702448f, -0.3305967748f,
3140         },
3141         {
3142             -0.1175374240f, -0.9807852507f, 0.2066311091f,
3143         },
3144         {
3145             -0.9947921634f, 0.5555702448f, -0.7720130086f,
3146         },
3147         {
3148             -0.8400934935f, 0.9807852507f, -0.9896889329f,
3149         },
3150 
3151     },
3152     // const FLOAT32
3153     // frac_delay_phase_fac_ser_qmf_sub_im_34[NUM_SUB_QMF_CHANNELS_HI_RES]
3154     //                                       [NUM_SER_AP_LINKS] =
3155     {
3156         {
3157             -0.1123361215f, -0.1950903237f, -0.0907194912f,
3158         },
3159         {
3160             -0.3313378990f, -0.5555702448f, -0.2691719830f,
3161         },
3162         {
3163             -0.5336145163f, -0.8314695954f, -0.4387632608f,
3164         },
3165         {
3166             -0.7089555264f, -0.9807852507f, -0.5939104557f,
3167         },
3168         {
3169             -0.8485102057f, -0.9807852507f, -0.7295060754f,
3170         },
3171         {
3172             -0.9452341199f, -0.8314695954f, -0.8410862088f,
3173         },
3174         {
3175             -0.9942448139f, -0.5555701256f, -0.9249777794f,
3176         },
3177         {
3178             -0.9930684566f, -0.1950903237f, -0.9784189463f,
3179         },
3180         {
3181             -0.9417643547f, 0.1950902343f, -0.9996504188f,
3182         },
3183         {
3184             0.5336145163f, 0.8314695954f, 0.4387632608f,
3185         },
3186         {
3187             0.3313378990f, 0.5555702448f, 0.2691719830f,
3188         },
3189         {
3190             0.1123361215f, 0.1950903237f, 0.0907194912f,
3191         },
3192         {
3193             -0.2676587701f, 0.9569403529f, -0.7345889807f,
3194         },
3195         {
3196             0.0667093173f, 0.6343932748f, -0.5248404145f,
3197         },
3198         {
3199             -0.7475083470f, -0.9951847196f, -0.6298289299f,
3200         },
3201         {
3202             -0.9253752232f, -0.8819212914f, -0.8156582713f,
3203         },
3204         {
3205             -0.9986971617f, -0.4713967443f, -0.9412791729f,
3206         },
3207         {
3208             -0.9591906667f, 0.0980171412f, -0.9974188805f,
3209         },
3210         {
3211             -0.8113189340f, 0.6343932748f, -0.9799333811f,
3212         },
3213         {
3214             -0.5717879534f, 0.9569403529f, -0.8901134133f,
3215         },
3216         {
3217             -0.1019244045f, 0.8314695954f, -0.6356067061f,
3218         },
3219         {
3220             0.5424416065f, -0.1950903237f, -0.1432335079f,
3221         },
3222         {
3223             0.9486002326f, -0.9807852507f, 0.3906508386f,
3224         },
3225         {
3226             -0.7015314102f, 0.8314695954f, -0.9437720776f,
3227         },
3228         {
3229             0.5157858133f, 0.5555702448f, 0.9968553782f,
3230         },
3231         {
3232             0.5424416065f, -0.1950903237f, -0.1432335079f,
3233         },
3234         {
3235             0.9486002326f, -0.9807852507f, 0.3906508386f,
3236         },
3237         {
3238             0.9381912947f, -0.5555702448f, 0.8113189936f,
3239         },
3240         {
3241             0.5157858133f, 0.5555702448f, 0.9968553782f,
3242         },
3243         {
3244             -0.1331214458f, 0.9807852507f, 0.8934889436f,
3245         },
3246         {
3247             -0.7235698700f, 0.1950903237f, 0.5311767459f,
3248         },
3249         {
3250             0.9381912947f, -0.5555702448f, 0.8113189936f,
3251         },
3252 
3253     },
3254     // const FLOAT32
3255     // frac_delay_phase_fac_ser_qmf_sub_re_34[NUM_SUB_QMF_CHANNELS_HI_RES]
3256     //                                       [NUM_SER_AP_LINKS] =
3257     {
3258         {
3259             0.9936702847f, 0.9807852507f, 0.9958764911f,
3260         },
3261         {
3262             0.9435121417f, 0.8314695954f, 0.9630921483f,
3263         },
3264         {
3265             0.8457278013f, 0.5555702448f, 0.8986026645f,
3266         },
3267         {
3268             0.7052531838f, 0.1950903684f, 0.8045311570f,
3269         },
3270         {
3271             0.5291789770f, -0.1950903237f, 0.6839743853f,
3272         },
3273         {
3274             0.3263930976f, -0.5555702448f, 0.5409010649f,
3275         },
3276         {
3277             0.1071316749f, -0.8314696550f, 0.3800212145f,
3278         },
3279         {
3280             -0.1175374240f, -0.9807852507f, 0.2066311091f,
3281         },
3282         {
3283             -0.3362735212f, -0.9807853103f, 0.0264386870f,
3284         },
3285         {
3286             0.8457278013f, 0.5555702448f, 0.8986026645f,
3287         },
3288         {
3289             0.9435121417f, 0.8314695954f, 0.9630921483f,
3290         },
3291         {
3292             0.9936702847f, 0.9807852507f, 0.9958764911f,
3293         },
3294         {
3295             -0.9635137916f, 0.2902846634f, -0.6785123348f,
3296         },
3297         {
3298             -0.9977724552f, 0.7730104327f, -0.8512006402f,
3299         },
3300         {
3301             0.6642524004f, 0.0980171412f, 0.7767338753f,
3302         },
3303         {
3304             0.3790524006f, -0.4713967443f, 0.5785340071f,
3305         },
3306         {
3307             0.0510286838f, -0.8819212914f, 0.3376292288f,
3308         },
3309         {
3310             -0.2827600539f, -0.9951847196f, 0.0718020797f,
3311         },
3312         {
3313             -0.5846037269f, -0.7730104327f, -0.1993251890f,
3314         },
3315         {
3316             -0.8204014897f, -0.2902846634f, -0.4557391405f,
3317         },
3318         {
3319             -0.9947921634f, 0.5555702448f, -0.7720130086f,
3320         },
3321         {
3322             -0.8400934935f, 0.9807852507f, -0.9896889329f,
3323         },
3324         {
3325             -0.3164769113f, 0.1950903237f, -0.9205389619f,
3326         },
3327         {
3328             -0.7126385570f, -0.5555702448f, -0.3305967748f,
3329         },
3330         {
3331             0.8567175865f, -0.8314695954f, -0.0792420134f,
3332         },
3333         {
3334             -0.8400934935f, 0.9807852507f, -0.9896889329f,
3335         },
3336         {
3337             -0.3164769113f, 0.1950903237f, -0.9205389619f,
3338         },
3339         {
3340             0.3461171389f, -0.8314695954f, -0.5846037269f,
3341         },
3342         {
3343             0.8567175865f, -0.8314695954f, -0.0792420134f,
3344         },
3345         {
3346             0.9910997152f, 0.1950903237f, 0.4490851462f,
3347         },
3348         {
3349             0.6902511716f, 0.9807852507f, 0.8472610116f,
3350         },
3351         {
3352             0.3461171389f, -0.8314695954f, -0.5846037269f,
3353         },
3354 
3355     },
3356     // const FLOAT32 scale_factors_flt[NO_IID_LEVELS] =
3357     {
3358         1.4119827747f, 1.4031381607f, 1.3868767023f, 1.3483997583f, 1.2912493944f,
3359         1.1960374117f, 1.1073724031f, 1.0000000000f, 0.8796171546f, 0.7546485662f,
3360         0.5767799020f, 0.4264014363f, 0.2767182887f, 0.1766446233f, 0.0794016272f,
3361     },
3362     // const FLOAT32
3363     // scale_factors_fine_flt[NO_IID_LEVELS_FINE] =
3364     {
3365         1.4142065048f, 1.4141912460f, 1.4141428471f, 1.4139900208f, 1.4135069847f,
3366         1.4119827747f, 1.4097729921f, 1.4053947926f, 1.3967796564f, 1.3800530434f,
3367         1.3483997583f, 1.3139201403f, 1.2643101215f, 1.1960374117f, 1.1073724031f,
3368         1.0000000000f, 0.8796171546f, 0.7546485662f, 0.6336560845f, 0.5230810642f,
3369         0.4264014363f, 0.3089554012f, 0.2213746458f, 0.1576878875f, 0.1119822487f,
3370         0.0794016272f, 0.0446990170f, 0.0251446925f, 0.0141414283f, 0.0079525812f,
3371         0.0044721137f,
3372     },
3373     // const FLOAT32 alphas[NUM_ICC_LEVELS] =
3374     {
3375         0.0000000000f, 0.1784276664f, 0.2856673002f, 0.4630723596f, 0.5971631408f,
3376         0.7853981853f, 1.1003085375f, 1.5707963705f,
3377     },
3378 
3379     // const FLOAT32 all_pass_link_decay_ser[NUM_SER_AP_LINKS] =
3380     {
3381         0.6514390707f, 0.5647181273f, 0.4895416498f,
3382     },
3383 
3384     // const FLOAT32 p8_13_20[13] =
3385     {0.00746082949812f, 0.02270420949825f, 0.04546865930473f, 0.07266113929591f,
3386      0.09885108575264f, 0.11793710567217f, 0.125f, 0.11793710567217f, 0.09885108575264f,
3387      0.07266113929591f, 0.04546865930473f, 0.02270420949825f, 0.00746082949812f},
3388 
3389     // const FLOAT32 p2_13_20[13] =
3390     {0.0f, 0.01899487526049f, 0.0f, -0.07293139167538f, 0.0f, 0.30596630545168f, 0.5f,
3391      0.30596630545168f, 0.0f, -0.07293139167538f, 0.0f, 0.01899487526049f, 0.0f},
3392 
3393     // const FLOAT32 p12_13_34[13] =
3394     {0.04081179924692f, 0.03812810994926f, 0.05144908135699f, 0.06399831151592f,
3395      0.07428313801106f, 0.08100347892914f, 0.08333333333333f, 0.08100347892914f,
3396      0.07428313801106f, 0.06399831151592f, 0.05144908135699f, 0.03812810994926f,
3397      0.04081179924692f},
3398     // const FLOAT32 p8_13_34[13] =
3399     {0.01565675600122f, 0.03752716391991f, 0.05417891378782f, 0.08417044116767f,
3400      0.10307344158036f, 0.12222452249753f, 0.12500000000000f, 0.12222452249753f,
3401      0.10307344158036f, 0.08417044116767f, 0.05417891378782f, 0.03752716391991f,
3402      0.01565675600122f},
3403     // const FLOAT32 p4_13_34[13] =
3404     {-0.05908211155639f, -0.04871498374946f, 0.0f, 0.07778723915851f, 0.16486303567403f,
3405      0.23279856662996f, 0.25f, 0.23279856662996f, 0.16486303567403f, 0.07778723915851f,
3406      0.0f, -0.04871498374946f, -0.05908211155639f},
3407     // const FLOAT32 cos_mod_2channel[2][13] =
3408     {
3409         {
3410             1.0000000000f, 1.0000000000f, 1.0000000000f, 1.0000000000f, 1.0000000000f,
3411             1.0000000000f, 1.0000000000f, 1.0000000000f, 1.0000000000f, 1.0000000000f,
3412             1.0000000000f, 1.0000000000f, 1.0000000000f,
3413         },
3414         {
3415             1.0000000000f, -1.0000000000f, 1.0000000000f, -1.0000000000f, 1.0000000000f,
3416             -1.0000000000f, 1.0000000000f, -1.0000000000f, 1.0000000000f, -1.0000000000f,
3417             1.0000000000f, -1.0000000000f, 1.0000000000f,
3418         },
3419     },
3420     // const FLOAT32 cos_sin_mod_4channel[4][13 * 2] =
3421     {
3422         {
3423             -0.0000000000f, -1.0000000000f, -0.7071067691f, -0.7071067691f, -1.0000000000f,
3424             0.0000000000f,  -0.7071067691f, 0.7071067691f,  0.0000000000f,  1.0000000000f,
3425             0.7071067691f,  0.7071067691f,  1.0000000000f,  -0.0000000000f, 0.7071067691f,
3426             -0.7071067691f, 0.0000000000f,  -1.0000000000f, -0.7071067691f, -0.7071067691f,
3427             -1.0000000000f, -0.0000000000f, -0.7071067691f, 0.7071067691f,  -0.0000000000f,
3428             1.0000000000f,
3429         },
3430         {
3431             0.0000000000f,  1.0000000000f,  0.7071067691f, -0.7071067691f, -1.0000000000f,
3432             0.0000000000f,  0.7071067691f,  0.7071067691f, -0.0000000000f, -1.0000000000f,
3433             -0.7071067691f, 0.7071067691f,  1.0000000000f, -0.0000000000f, -0.7071067691f,
3434             -0.7071067691f, -0.0000000000f, 1.0000000000f, 0.7071067691f,  -0.7071067691f,
3435             -1.0000000000f, -0.0000000000f, 0.7071067691f, 0.7071067691f,  0.0000000000f,
3436             -1.0000000000f,
3437         },
3438         {
3439             -0.0000000000f, -1.0000000000f, 0.7071067691f,  0.7071067691f,  -1.0000000000f,
3440             0.0000000000f,  0.7071067691f,  -0.7071067691f, 0.0000000000f,  1.0000000000f,
3441             -0.7071067691f, -0.7071067691f, 1.0000000000f,  -0.0000000000f, -0.7071067691f,
3442             0.7071067691f,  0.0000000000f,  -1.0000000000f, 0.7071067691f,  0.7071067691f,
3443             -1.0000000000f, -0.0000000000f, 0.7071067691f,  -0.7071067691f, -0.0000000000f,
3444             1.0000000000f,
3445         },
3446         {
3447             -0.0000000000f, 1.0000000000f,  -0.7071067691f, 0.7071067691f,  -1.0000000000f,
3448             0.0000000000f,  -0.7071067691f, -0.7071067691f, -0.0000000000f, -1.0000000000f,
3449             0.7071067691f,  -0.7071067691f, 1.0000000000f,  -0.0000000000f, 0.7071067691f,
3450             0.7071067691f,  -0.0000000000f, 1.0000000000f,  -0.7071067691f, 0.7071067691f,
3451             -1.0000000000f, -0.0000000000f, -0.7071067691f, -0.7071067691f, -0.0000000000f,
3452             -1.0000000000f,
3453         },
3454     },
3455     // const FLOAT32 cos_sin_mod_8channel[8][13 * 2] =
3456     {
3457         {
3458             -0.7071067691f, 0.7071067691f,  -0.3826834261f, 0.9238795042f,  0.0000000000f,
3459             1.0000000000f,  0.3826834261f,  0.9238795042f,  0.7071067691f,  0.7071067691f,
3460             0.9238795042f,  0.3826834261f,  1.0000000000f,  -0.0000000000f, 0.9238795042f,
3461             -0.3826834261f, 0.7071067691f,  -0.7071067691f, 0.3826834261f,  -0.9238795042f,
3462             0.0000000000f,  -1.0000000000f, -0.3826834261f, -0.9238795042f, -0.7071067691f,
3463             -0.7071067691f,
3464         },
3465         {
3466             0.7071067691f,  0.7071067691f,  0.9238795042f,  -0.3826834261f, -0.0000000000f,
3467             -1.0000000000f, -0.9238795042f, -0.3826834261f, -0.7071067691f, 0.7071067691f,
3468             0.3826834261f,  0.9238795042f,  1.0000000000f,  -0.0000000000f, 0.3826834261f,
3469             -0.9238795042f, -0.7071067691f, -0.7071067691f, -0.9238795042f, 0.3826834261f,
3470             -0.0000000000f, 1.0000000000f,  0.9238795042f,  0.3826834261f,  0.7071067691f,
3471             -0.7071067691f,
3472         },
3473         {
3474             0.7071067691f,  -0.7071067691f, -0.9238795042f, -0.3826834261f, 0.0000000000f,
3475             1.0000000000f,  0.9238795042f,  -0.3826834261f, -0.7071067691f, -0.7071067691f,
3476             -0.3826834261f, 0.9238795042f,  1.0000000000f,  -0.0000000000f, -0.3826834261f,
3477             -0.9238795042f, -0.7071067691f, 0.7071067691f,  0.9238795042f,  0.3826834261f,
3478             0.0000000000f,  -1.0000000000f, -0.9238795042f, 0.3826834261f,  0.7071067691f,
3479             0.7071067691f,
3480         },
3481         {
3482             -0.7071067691f, -0.7071067691f, 0.3826834261f, 0.9238795042f,  -0.0000000000f,
3483             -1.0000000000f, -0.3826834261f, 0.9238795042f, 0.7071067691f,  -0.7071067691f,
3484             -0.9238795042f, 0.3826834261f,  1.0000000000f, -0.0000000000f, -0.9238795042f,
3485             -0.3826834261f, 0.7071067691f,  0.7071067691f, -0.3826834261f, -0.9238795042f,
3486             -0.0000000000f, 1.0000000000f,  0.3826834261f, -0.9238795042f, -0.7071067691f,
3487             0.7071067691f,
3488         },
3489         {
3490             -0.7071067691f, 0.7071067691f,  0.3826834261f,  -0.9238795042f, 0.0000000000f,
3491             1.0000000000f,  -0.3826834261f, -0.9238795042f, 0.7071067691f,  0.7071067691f,
3492             -0.9238795042f, -0.3826834261f, 1.0000000000f,  -0.0000000000f, -0.9238795042f,
3493             0.3826834261f,  0.7071067691f,  -0.7071067691f, -0.3826834261f, 0.9238795042f,
3494             0.0000000000f,  -1.0000000000f, 0.3826834261f,  0.9238795042f,  -0.7071067691f,
3495             -0.7071067691f,
3496         },
3497         {
3498             0.7071067691f,  0.7071067691f,  -0.9238795042f, 0.3826834261f,  -0.0000000000f,
3499             -1.0000000000f, 0.9238795042f,  0.3826834261f,  -0.7071067691f, 0.7071067691f,
3500             -0.3826834261f, -0.9238795042f, 1.0000000000f,  -0.0000000000f, -0.3826834261f,
3501             0.9238795042f,  -0.7071067691f, -0.7071067691f, 0.9238795042f,  -0.3826834261f,
3502             -0.0000000000f, 1.0000000000f,  -0.9238795042f, -0.3826834261f, 0.7071067691f,
3503             -0.7071067691f,
3504         },
3505         {
3506             0.7071067691f,  -0.7071067691f, 0.9238795042f, 0.3826834261f,  -0.0000000000f,
3507             1.0000000000f,  -0.9238795042f, 0.3826834261f, -0.7071067691f, -0.7071067691f,
3508             0.3826834261f,  -0.9238795042f, 1.0000000000f, -0.0000000000f, 0.3826834261f,
3509             0.9238795042f,  -0.7071067691f, 0.7071067691f, -0.9238795042f, -0.3826834261f,
3510             -0.0000000000f, -1.0000000000f, 0.9238795042f, -0.3826834261f, 0.7071067691f,
3511             0.7071067691f,
3512         },
3513         {
3514             -0.7071067691f, -0.7071067691f, -0.3826834261f, -0.9238795042f, -0.0000000000f,
3515             -1.0000000000f, 0.3826834261f,  -0.9238795042f, 0.7071067691f,  -0.7071067691f,
3516             0.9238795042f,  -0.3826834261f, 1.0000000000f,  -0.0000000000f, 0.9238795042f,
3517             0.3826834261f,  0.7071067691f,  0.7071067691f,  0.3826834261f,  0.9238795042f,
3518             -0.0000000000f, 1.0000000000f,  -0.3826834261f, 0.9238795042f,  -0.7071067691f,
3519             0.7071067691f,
3520         },
3521     },
3522     // const FLOAT32 cos_sin_mod_12channel[12][13 * 2] =
3523     {
3524         {
3525             0.0000000000f,  1.0000000000f,  0.2588190436f,  0.9659258127f,  0.5000000000f,
3526             0.8660253882f,  0.7071067691f,  0.7071067691f,  0.8660253882f,  0.5000000000f,
3527             0.9659258127f,  0.2588190436f,  1.0000000000f,  -0.0000000000f, 0.9659258127f,
3528             -0.2588190436f, 0.8660253882f,  -0.5000000000f, 0.7071067691f,  -0.7071067691f,
3529             0.5000000000f,  -0.8660253882f, 0.2588190436f,  -0.9659258127f, 0.0000000000f,
3530             -1.0000000000f,
3531         },
3532         {
3533             -0.0000000000f, -1.0000000000f, -0.7071067691f, -0.7071067691f, -1.0000000000f,
3534             0.0000000000f,  -0.7071067691f, 0.7071067691f,  0.0000000000f,  1.0000000000f,
3535             0.7071067691f,  0.7071067691f,  1.0000000000f,  -0.0000000000f, 0.7071067691f,
3536             -0.7071067691f, 0.0000000000f,  -1.0000000000f, -0.7071067691f, -0.7071067691f,
3537             -1.0000000000f, -0.0000000000f, -0.7071067691f, 0.7071067691f,  -0.0000000000f,
3538             1.0000000000f,
3539         },
3540         {
3541             0.0000000000f,  1.0000000000f,  0.9659258127f,  0.2588190436f,  0.5000000000f,
3542             -0.8660253882f, -0.7071067691f, -0.7071067691f, -0.8660253882f, 0.5000000000f,
3543             0.2588190436f,  0.9659258127f,  1.0000000000f,  -0.0000000000f, 0.2588190436f,
3544             -0.9659258127f, -0.8660253882f, -0.5000000000f, -0.7071067691f, 0.7071067691f,
3545             0.5000000000f,  0.8660253882f,  0.9659258127f,  -0.2588190436f, 0.0000000000f,
3546             -1.0000000000f,
3547         },
3548         {
3549             -0.0000000000f, -1.0000000000f, -0.9659258127f, 0.2588190436f,  0.5000000000f,
3550             0.8660253882f,  0.7071067691f,  -0.7071067691f, -0.8660253882f, -0.5000000000f,
3551             -0.2588190436f, 0.9659258127f,  1.0000000000f,  -0.0000000000f, -0.2588190436f,
3552             -0.9659258127f, -0.8660253882f, 0.5000000000f,  0.7071067691f,  0.7071067691f,
3553             0.5000000000f,  -0.8660253882f, -0.9659258127f, -0.2588190436f, -0.0000000000f,
3554             1.0000000000f,
3555         },
3556         {
3557             0.0000000000f,  1.0000000000f,  0.7071067691f, -0.7071067691f, -1.0000000000f,
3558             0.0000000000f,  0.7071067691f,  0.7071067691f, -0.0000000000f, -1.0000000000f,
3559             -0.7071067691f, 0.7071067691f,  1.0000000000f, -0.0000000000f, -0.7071067691f,
3560             -0.7071067691f, -0.0000000000f, 1.0000000000f, 0.7071067691f,  -0.7071067691f,
3561             -1.0000000000f, -0.0000000000f, 0.7071067691f, 0.7071067691f,  0.0000000000f,
3562             -1.0000000000f,
3563         },
3564         {
3565             -0.0000000000f, -1.0000000000f, -0.2588190436f, 0.9659258127f,  0.5000000000f,
3566             -0.8660253882f, -0.7071067691f, 0.7071067691f,  0.8660253882f,  -0.5000000000f,
3567             -0.9659258127f, 0.2588190436f,  1.0000000000f,  -0.0000000000f, -0.9659258127f,
3568             -0.2588190436f, 0.8660253882f,  0.5000000000f,  -0.7071067691f, -0.7071067691f,
3569             0.5000000000f,  0.8660253882f,  -0.2588190436f, -0.9659258127f, -0.0000000000f,
3570             1.0000000000f,
3571         },
3572         {
3573             -0.0000000000f, 1.0000000000f,  -0.2588190436f, -0.9659258127f, 0.5000000000f,
3574             0.8660253882f,  -0.7071067691f, -0.7071067691f, 0.8660253882f,  0.5000000000f,
3575             -0.9659258127f, -0.2588190436f, 1.0000000000f,  -0.0000000000f, -0.9659258127f,
3576             0.2588190436f,  0.8660253882f,  -0.5000000000f, -0.7071067691f, 0.7071067691f,
3577             0.5000000000f,  -0.8660253882f, -0.2588190436f, 0.9659258127f,  -0.0000000000f,
3578             -1.0000000000f,
3579         },
3580         {
3581             -0.0000000000f, -1.0000000000f, 0.7071067691f,  0.7071067691f,  -1.0000000000f,
3582             0.0000000000f,  0.7071067691f,  -0.7071067691f, 0.0000000000f,  1.0000000000f,
3583             -0.7071067691f, -0.7071067691f, 1.0000000000f,  -0.0000000000f, -0.7071067691f,
3584             0.7071067691f,  0.0000000000f,  -1.0000000000f, 0.7071067691f,  0.7071067691f,
3585             -1.0000000000f, -0.0000000000f, 0.7071067691f,  -0.7071067691f, -0.0000000000f,
3586             1.0000000000f,
3587         },
3588         {
3589             -0.0000000000f, 1.0000000000f,  -0.9659258127f, -0.2588190436f, 0.5000000000f,
3590             -0.8660253882f, 0.7071067691f,  0.7071067691f,  -0.8660253882f, 0.5000000000f,
3591             -0.2588190436f, -0.9659258127f, 1.0000000000f,  -0.0000000000f, -0.2588190436f,
3592             0.9659258127f,  -0.8660253882f, -0.5000000000f, 0.7071067691f,  -0.7071067691f,
3593             0.5000000000f,  0.8660253882f,  -0.9659258127f, 0.2588190436f,  -0.0000000000f,
3594             -1.0000000000f,
3595         },
3596         {
3597             -0.0000000000f, -1.0000000000f, 0.9659258127f, -0.2588190436f, 0.5000000000f,
3598             0.8660253882f,  -0.7071067691f, 0.7071067691f, -0.8660253882f, -0.5000000000f,
3599             0.2588190436f,  -0.9659258127f, 1.0000000000f, -0.0000000000f, 0.2588190436f,
3600             0.9659258127f,  -0.8660253882f, 0.5000000000f, -0.7071067691f, -0.7071067691f,
3601             0.5000000000f,  -0.8660253882f, 0.9659258127f, 0.2588190436f,  -0.0000000000f,
3602             1.0000000000f,
3603         },
3604         {
3605             -0.0000000000f, 1.0000000000f,  -0.7071067691f, 0.7071067691f,  -1.0000000000f,
3606             0.0000000000f,  -0.7071067691f, -0.7071067691f, -0.0000000000f, -1.0000000000f,
3607             0.7071067691f,  -0.7071067691f, 1.0000000000f,  -0.0000000000f, 0.7071067691f,
3608             0.7071067691f,  -0.0000000000f, 1.0000000000f,  -0.7071067691f, 0.7071067691f,
3609             -1.0000000000f, -0.0000000000f, -0.7071067691f, -0.7071067691f, -0.0000000000f,
3610             -1.0000000000f,
3611         },
3612         {
3613             -0.0000000000f, -1.0000000000f, 0.2588190436f,  -0.9659258127f, 0.5000000000f,
3614             -0.8660253882f, 0.7071067691f,  -0.7071067691f, 0.8660253882f,  -0.5000000000f,
3615             0.9659258127f,  -0.2588190436f, 1.0000000000f,  -0.0000000000f, 0.9659258127f,
3616             0.2588190436f,  0.8660253882f,  0.5000000000f,  0.7071067691f,  0.7071067691f,
3617             0.5000000000f,  0.8660253882f,  0.2588190436f,  0.9659258127f,  -0.0000000000f,
3618             1.0000000000f,
3619         },
3620     },
3621 
3622     // const WORD32 qmf_delay_idx_tbl[NUM_OF_QUAD_MIRROR_FILTER_CHNLS]
3623     {14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
3624      14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 1,  1,  1,  1,  1,  1,  1,  1,  1,
3625      1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1},
3626 
3627     // const WORD32 group_borders_20_tbl[NUM_IID_GROUPS + 1]
3628     {6, 7, 0, 1, 2, 3, 9, 8, 10, 11, 3, 4, 5, 6, 7, 8, 9, 11, 14, 18, 23, 35, 64},
3629 
3630     // const WORD32
3631     // group_borders_34_tbl[NUM_IID_GROUPS_HI_RES + 1] =
3632     {0,       1,       2,       3,       4,       5,       6,       7,       8,
3633      9,       10,      11,      12,      13,      14,      15,      16,      17,
3634      18,      19,      20,      21,      22,      23,      24,      25,      26,
3635      27,      28,      29,      30,      31,      32 - 27, 33 - 27, 34 - 27, 35 - 27,
3636      36 - 27, 37 - 27, 38 - 27, 40 - 27, 42 - 27, 44 - 27, 46 - 27, 48 - 27, 51 - 27,
3637      54 - 27, 57 - 27, 60 - 27, 64 - 27, 68 - 27, 91 - 27},
3638 
3639     // const WORD32 bin_group_map_20[NUM_IID_GROUPS] =
3640     {(NEGATE_IPD_MASK | 1),
3641      (NEGATE_IPD_MASK | 0),
3642      0,
3643      1,
3644      2,
3645      3,
3646      4,
3647      5,
3648      6,
3649      7,
3650      8,
3651      9,
3652      10,
3653      11,
3654      12,
3655      13,
3656      14,
3657      15,
3658      16,
3659      17,
3660      18,
3661      19},
3662 
3663     // const WORD32 bin_group_map_34[NUM_IID_GROUPS_HI_RES] =
3664     {0,
3665      1,
3666      2,
3667      3,
3668      4,
3669      5,
3670      6,
3671      6,
3672      7,
3673      (NEGATE_IPD_MASK | 2),
3674      (NEGATE_IPD_MASK | 1),
3675      (NEGATE_IPD_MASK | 0),
3676      10,
3677      10,
3678      4,
3679      5,
3680      6,
3681      7,
3682      8,
3683      9,
3684      10,
3685      11,
3686      12,
3687      9,
3688      14,
3689      11,
3690      12,
3691      13,
3692      14,
3693      15,
3694      16,
3695      13,
3696      16,
3697      17,
3698      18,
3699      19,
3700      20,
3701      21,
3702      22,
3703      23,
3704      24,
3705      25,
3706      26,
3707      27,
3708      28,
3709      29,
3710      30,
3711      31,
3712      32,
3713      33},
3714     // const WORD32 quantized_iids[NUM_IID_STEPS] =
3715     {2, 4, 7, 10, 14, 18, 25},
3716     // const WORD32 quantized_iids_fine[NUM_IID_STEPS_FINE]
3717     {2, 4, 6, 8, 10, 13, 16, 19, 22, 25, 30, 35, 40, 45, 50},
3718     // FLOAT32 quantized_rhos[NUM_ICC_STEPS]
3719     {1.0f, 0.937f, 0.84118f, 0.60092f, 0.36764f, 0.0f, -0.589f, -1.0f},
3720     // const WORD32 ipd_bins_tbl[3]
3721     {NUM_LOW_RES_IPD_BINS, NUM_MID_RES_IPD_BINS, NUM_HI_RES_IPD_BINS},
3722     // const WORD16 band_res_hyb20[3]
3723     {NO_HYBRID_CHANNELS_8, NO_HYBRID_CHANNELS_2, NO_HYBRID_CHANNELS_2},
3724     // const WORD16 band_res_hyb34[5] =
3725     {NO_HYBRID_CHANNELS_12, NO_HYBRID_CHANNELS_8, NO_HYBRID_CHANNELS_4,
3726      NO_HYBRID_CHANNELS_4, NO_HYBRID_CHANNELS_4},
3727 };
3728