Sync with trunk (r48414)
[reactos.git] / include / reactos / libs / libmpg123 / l12_integer_tables.h
1 /*
2 l12_integer_tables.h: Layer1/2 Constant tables for integer decoders
3
4 copyright 1995-2009 by the mpg123 project - free software under the terms of the LGPL 2.1
5 see COPYING and AUTHORS files in distribution or http://mpg123.org
6 initially written by Taihei Monma
7 */
8
9 #ifndef MPG123_L12_INTEGER_TABLES_H
10 #define MPG123_L12_INTEGER_TABLES_H
11
12 static const real layer12_table[27][64] =
13 {
14 {
15 },
16 {
17 -1431655765,-1136305934,-901886617,-715827883,-568152967,-450943309,-357913941,-284076483,
18 -225471654,-178956971,-142038242,-112735827,-89478485,-71019121,-56367914,-44739243,
19 -35509560,-28183957,-22369621,-17754780,-14091978,-11184811,-8877390,-7045989,
20 -5592405,-4438695,-3522995,-2796203,-2219348,-1761497,-1398101,-1109674,
21 -880749,-699051,-554837,-440374,-349525,-277418,-220187,-174763,
22 -138709,-110094,-87381,-69355,-55047,-43691,-34677,-27523,
23 -21845,-17339,-13762,-10923,-8669,-6881,-5461,-4335,
24 -3440,-2731,-2167,-1720,-1365,-1084,-860,0
25 },
26 {
27 1431655765,1136305934,901886617,715827883,568152967,450943309,357913941,284076483,
28 225471654,178956971,142038242,112735827,89478485,71019121,56367914,44739243,
29 35509560,28183957,22369621,17754780,14091978,11184811,8877390,7045989,
30 5592405,4438695,3522995,2796203,2219348,1761497,1398101,1109674,
31 880749,699051,554837,440374,349525,277418,220187,174763,
32 138709,110094,87381,69355,55047,43691,34677,27523,
33 21845,17339,13762,10923,8669,6881,5461,4335,
34 3440,2731,2167,1720,1365,1084,860,0
35 },
36 {
37 613566757,486988257,386522836,306783378,243494129,193261418,153391689,121747064,
38 96630709,76695845,60873532,48315355,38347922,30436766,24157677,19173961,
39 15218383,12078839,9586981,7609192,6039419,4793490,3804596,3019710,
40 2396745,1902298,1509855,1198373,951149,754927,599186,475574,
41 377464,299593,237787,188732,149797,118894,94366,74898,
42 59447,47183,37449,29723,23591,18725,14862,11796,
43 9362,7431,5898,4681,3715,2949,2341,1858,
44 1474,1170,929,737,585,464,369,0
45 },
46 {
47 286331153,227261187,180377323,143165577,113630593,90188662,71582788,56815297,
48 45094331,35791394,28407648,22547165,17895697,14203824,11273583,8947849,
49 7101912,5636791,4473924,3550956,2818396,2236962,1775478,1409198,
50 1118481,887739,704599,559241,443870,352299,279620,221935,
51 176150,139810,110967,88075,69905,55484,44037,34953,
52 27742,22019,17476,13871,11009,8738,6935,5505,
53 4369,3468,2752,2185,1734,1376,1092,867,
54 688,546,433,344,273,217,172,0
55 },
56 {
57 138547332,109965090,87279350,69273666,54982545,43639675,34636833,27491273,
58 21819838,17318417,13745636,10909919,8659208,6872818,5454959,4329604,
59 3436409,2727480,2164802,1718205,1363740,1082401,859102,681870,
60 541201,429551,340935,270600,214776,170467,135300,107388,
61 85234,67650,53694,42617,33825,26847,21308,16913,
62 13423,10654,8456,6712,5327,4228,3356,2664,
63 2114,1678,1332,1057,839,666,529,419,
64 333,264,210,166,132,105,83,0
65 },
66 {
67 68174084,54109806,42946982,34087042,27054903,21473491,17043521,13527452,
68 10736745,8521761,6763726,5368373,4260880,3381863,2684186,2130440,
69 1690931,1342093,1065220,845466,671047,532610,422733,335523,
70 266305,211366,167762,133153,105683,83881,66576,52842,
71 41940,33288,26421,20970,16644,13210,10485,8322,
72 6605,5243,4161,3303,2621,2081,1651,1311,
73 1040,826,655,520,413,328,260,206,
74 164,130,103,82,65,52,41,0
75 },
76 {
77 33818640,26841872,21304408,16909320,13420936,10652204,8454660,6710468,
78 5326102,4227330,3355234,2663051,2113665,1677617,1331526,1056833,
79 838809,665763,528416,419404,332881,264208,209702,166441,
80 132104,104851,83220,66052,52426,41610,33026,26213,
81 20805,16513,13106,10403,8257,6553,5201,4128,
82 3277,2601,2064,1638,1300,1032,819,650,
83 516,410,325,258,205,163,129,102,
84 81,65,51,41,32,26,20,0
85 },
86 {
87 16843009,13368305,10610431,8421505,6684153,5305215,4210752,3342076,
88 2652608,2105376,1671038,1326304,1052688,835519,663152,526344,
89 417760,331576,263172,208880,165788,131586,104440,82894,
90 65793,52220,41447,32897,26110,20723,16448,13055,
91 10362,8224,6527,5181,4112,3264,2590,2056,
92 1632,1295,1028,816,648,514,408,324,
93 257,204,162,129,102,81,64,51,
94 40,32,25,20,16,13,10,0
95 },
96 {
97 8405024,6671072,5294833,4202512,3335536,2647417,2101256,1667768,
98 1323708,1050628,833884,661854,525314,416942,330927,262657,
99 208471,165464,131329,104236,82732,65664,52118,41366,
100 32832,26059,20683,16416,13029,10341,8208,6515,
101 5171,4104,3257,2585,2052,1629,1293,1026,
102 814,646,513,407,323,257,204,162,
103 128,102,81,64,51,40,32,25,
104 20,16,13,10,8,6,5,0
105 },
106 {
107 4198404,3332275,2644829,2099202,1666138,1322414,1049601,833069,
108 661207,524801,416534,330604,262400,208267,165302,131200,
109 104134,82651,65600,52067,41325,32800,26033,20663,
110 16400,13017,10331,8200,6508,5166,4100,3254,
111 2583,2050,1627,1291,1025,814,646,513,
112 407,323,256,203,161,128,102,81,
113 64,51,40,32,25,20,16,13,
114 10,8,6,5,4,3,3,0
115 },
116 {
117 2098177,1665324,1321768,1049088,832662,660884,524544,416331,
118 330442,262272,208165,165221,131136,104083,82611,65568,
119 52041,41305,32784,26021,20653,16392,13010,10326,
120 8196,6505,5163,4098,3253,2582,2049,1626,
121 1291,1025,813,645,512,407,323,256,
122 203,161,128,102,81,64,51,40,
123 32,25,20,16,13,10,8,6,
124 5,4,3,3,2,2,1,0
125 },
126 {
127 1048832,832459,660723,524416,416229,330361,262208,208115,
128 165181,131104,104057,82590,65552,52029,41295,32776,
129 26014,20648,16388,13007,10324,8194,6504,5162,
130 4097,3252,2581,2049,1626,1290,1024,813,
131 645,512,406,323,256,203,161,128,
132 102,81,64,51,40,32,25,20,
133 16,13,10,8,6,5,4,3,
134 3,2,2,1,1,1,1,0
135 },
136 {
137 524352,416178,330321,262176,208089,165161,131088,104045,
138 82580,65544,52022,41290,32772,26011,20645,16386,
139 13006,10323,8193,6503,5161,4097,3251,2581,
140 2048,1626,1290,1024,813,645,512,406,
141 323,256,203,161,128,102,81,64,
142 51,40,32,25,20,16,13,10,
143 8,6,5,4,3,3,2,2,
144 1,1,1,1,1,0,0,0
145 },
146 {
147 262160,208077,165150,131080,104038,82575,65540,52019,
148 41288,32770,26010,20644,16385,13005,10322,8193,
149 6502,5161,4096,3251,2580,2048,1626,1290,
150 1024,813,645,512,406,323,256,203,
151 161,128,102,81,64,51,40,32,
152 25,20,16,13,10,8,6,5,
153 4,3,3,2,2,1,1,1,
154 1,1,0,0,0,0,0,0
155 },
156 {
157 131076,104035,82573,65538,52018,41286,32769,26009,
158 20643,16385,13004,10322,8192,6502,5161,4096,
159 3251,2580,2048,1626,1290,1024,813,645,
160 512,406,323,256,203,161,128,102,
161 81,64,51,40,32,25,20,16,
162 13,10,8,6,5,4,3,3,
163 2,2,1,1,1,1,1,0,
164 0,0,0,0,0,0,0,0
165 },
166 {
167 65537,52017,41286,32769,26008,20643,16384,13004,
168 10321,8192,6502,5161,4096,3251,2580,2048,
169 1626,1290,1024,813,645,512,406,323,
170 256,203,161,128,102,81,64,51,
171 40,32,25,20,16,13,10,8,
172 6,5,4,3,3,2,2,1,
173 1,1,1,1,0,0,0,0,
174 0,0,0,0,0,0,0,0
175 },
176 {
177 -1717986918,-1363567121,-1082263941,-858993459,-681783560,-541131970,-429496730,-340891780,
178 -270565985,-214748365,-170445890,-135282993,-107374182,-85222945,-67641496,-53687091,
179 -42611473,-33820748,-26843546,-21305736,-16910374,-13421773,-10652868,-8455187,
180 -6710886,-5326434,-4227594,-3355443,-2663217,-2113797,-1677722,-1331609,
181 -1056898,-838861,-665804,-528449,-419430,-332902,-264225,-209715,
182 -166451,-132112,-104858,-83226,-66056,-52429,-41613,-33028,
183 -26214,-20806,-16514,-13107,-10403,-8257,-6554,-5202,
184 -4129,-3277,-2601,-2064,-1638,-1300,-1032,0
185 },
186 {
187 -858993459,-681783560,-541131970,-429496730,-340891780,-270565985,-214748365,-170445890,
188 -135282993,-107374182,-85222945,-67641496,-53687091,-42611473,-33820748,-26843546,
189 -21305736,-16910374,-13421773,-10652868,-8455187,-6710886,-5326434,-4227594,
190 -3355443,-2663217,-2113797,-1677722,-1331609,-1056898,-838861,-665804,
191 -528449,-419430,-332902,-264225,-209715,-166451,-132112,-104858,
192 -83226,-66056,-52429,-41613,-33028,-26214,-20806,-16514,
193 -13107,-10403,-8257,-6554,-5202,-4129,-3277,-2601,
194 -2064,-1638,-1300,-1032,-819,-650,-516,0
195 },
196 {
197 858993459,681783560,541131970,429496730,340891780,270565985,214748365,170445890,
198 135282993,107374182,85222945,67641496,53687091,42611473,33820748,26843546,
199 21305736,16910374,13421773,10652868,8455187,6710886,5326434,4227594,
200 3355443,2663217,2113797,1677722,1331609,1056898,838861,665804,
201 528449,419430,332902,264225,209715,166451,132112,104858,
202 83226,66056,52429,41613,33028,26214,20806,16514,
203 13107,10403,8257,6554,5202,4129,3277,2601,
204 2064,1638,1300,1032,819,650,516,0
205 },
206 {
207 1717986918,1363567121,1082263941,858993459,681783560,541131970,429496730,340891780,
208 270565985,214748365,170445890,135282993,107374182,85222945,67641496,53687091,
209 42611473,33820748,26843546,21305736,16910374,13421773,10652868,8455187,
210 6710886,5326434,4227594,3355443,2663217,2113797,1677722,1331609,
211 1056898,838861,665804,528449,419430,332902,264225,209715,
212 166451,132112,104858,83226,66056,52429,41613,33028,
213 26214,20806,16514,13107,10403,8257,6554,5202,
214 4129,3277,2601,2064,1638,1300,1032,0
215 },
216 {
217 -1908874354,-1515074579,-1202515490,-954437177,-757537289,-601257745,-477218588,-378768645,
218 -300628872,-238609294,-189384322,-150314436,-119304647,-94692161,-75157218,-59652324,
219 -47346081,-37578609,-29826162,-23673040,-18789305,-14913081,-11836520,-9394652,
220 -7456540,-5918260,-4697326,-3728270,-2959130,-2348663,-1864135,-1479565,
221 -1174332,-932068,-739783,-587166,-466034,-369891,-293583,-233017,
222 -184946,-146791,-116508,-92473,-73396,-58254,-46236,-36698,
223 -29127,-23118,-18349,-14564,-11559,-9174,-7282,-5780,
224 -4587,-3641,-2890,-2294,-1820,-1445,-1147,0
225 },
226 {
227 -954437177,-757537289,-601257745,-477218588,-378768645,-300628872,-238609294,-189384322,
228 -150314436,-119304647,-94692161,-75157218,-59652324,-47346081,-37578609,-29826162,
229 -23673040,-18789305,-14913081,-11836520,-9394652,-7456540,-5918260,-4697326,
230 -3728270,-2959130,-2348663,-1864135,-1479565,-1174332,-932068,-739783,
231 -587166,-466034,-369891,-293583,-233017,-184946,-146791,-116508,
232 -92473,-73396,-58254,-46236,-36698,-29127,-23118,-18349,
233 -14564,-11559,-9174,-7282,-5780,-4587,-3641,-2890,
234 -2294,-1820,-1445,-1147,-910,-722,-573,0
235 },
236 {
237 -477218588,-378768645,-300628872,-238609294,-189384322,-150314436,-119304647,-94692161,
238 -75157218,-59652324,-47346081,-37578609,-29826162,-23673040,-18789305,-14913081,
239 -11836520,-9394652,-7456540,-5918260,-4697326,-3728270,-2959130,-2348663,
240 -1864135,-1479565,-1174332,-932068,-739783,-587166,-466034,-369891,
241 -293583,-233017,-184946,-146791,-116508,-92473,-73396,-58254,
242 -46236,-36698,-29127,-23118,-18349,-14564,-11559,-9174,
243 -7282,-5780,-4587,-3641,-2890,-2294,-1820,-1445,
244 -1147,-910,-722,-573,-455,-361,-287,0
245 },
246 {
247 477218588,378768645,300628872,238609294,189384322,150314436,119304647,94692161,
248 75157218,59652324,47346081,37578609,29826162,23673040,18789305,14913081,
249 11836520,9394652,7456540,5918260,4697326,3728270,2959130,2348663,
250 1864135,1479565,1174332,932068,739783,587166,466034,369891,
251 293583,233017,184946,146791,116508,92473,73396,58254,
252 46236,36698,29127,23118,18349,14564,11559,9174,
253 7282,5780,4587,3641,2890,2294,1820,1445,
254 1147,910,722,573,455,361,287,0
255 },
256 {
257 954437177,757537289,601257745,477218588,378768645,300628872,238609294,189384322,
258 150314436,119304647,94692161,75157218,59652324,47346081,37578609,29826162,
259 23673040,18789305,14913081,11836520,9394652,7456540,5918260,4697326,
260 3728270,2959130,2348663,1864135,1479565,1174332,932068,739783,
261 587166,466034,369891,293583,233017,184946,146791,116508,
262 92473,73396,58254,46236,36698,29127,23118,18349,
263 14564,11559,9174,7282,5780,4587,3641,2890,
264 2294,1820,1445,1147,910,722,573,0
265 },
266 {
267 1908874354,1515074579,1202515490,954437177,757537289,601257745,477218588,378768645,
268 300628872,238609294,189384322,150314436,119304647,94692161,75157218,59652324,
269 47346081,37578609,29826162,23673040,18789305,14913081,11836520,9394652,
270 7456540,5918260,4697326,3728270,2959130,2348663,1864135,1479565,
271 1174332,932068,739783,587166,466034,369891,293583,233017,
272 184946,146791,116508,92473,73396,58254,46236,36698,
273 29127,23118,18349,14564,11559,9174,7282,5780,
274 4587,3641,2890,2294,1820,1445,1147,0
275 },
276 };
277
278 #endif