]> git.sesse.net Git - ffmpeg/blob - libavcodec/vp3data.h
CAVS decoder by (Stefan Gehrer stefan.gehrer gmx.de)
[ffmpeg] / libavcodec / vp3data.h
1 #ifndef VP3DATA_H
2 #define VP3DATA_H
3
4 /* these coefficients dequantize intraframe Y plane coefficients
5  * (note: same as JPEG) */
6 static const int16_t vp31_intra_y_dequant[64] =
7 {       16,  11,  10,  16,  24,  40,  51,  61,
8         12,  12,  14,  19,  26,  58,  60,  55,
9         14,  13,  16,  24,  40,  57,  69,  56,
10         14,  17,  22,  29,  51,  87,  80,  62,
11         18,  22,  37,  58,  68, 109, 103,  77,
12         24,  35,  55,  64,  81, 104, 113,  92,
13         49,  64,  78,  87, 103, 121, 120, 101,
14         72,  92,  95,  98, 112, 100, 103,  99
15 };
16
17 /* these coefficients dequantize intraframe C plane coefficients
18  * (note: same as JPEG) */
19 static const int16_t vp31_intra_c_dequant[64] =
20 {       17,  18,     24,     47,     99,     99,     99,     99,
21         18,  21,     26,     66,     99,     99,     99,     99,
22         24,  26,     56,     99,     99,     99,     99,     99,
23         47,  66,     99,     99,     99,     99,     99,     99,
24         99,  99,     99,     99,     99,     99,     99,     99,
25         99,  99,     99,     99,     99,     99,     99,     99,
26         99,  99,     99,     99,     99,     99,     99,     99,
27         99,  99,     99,     99,     99,     99,     99,     99
28 };
29
30 /* these coefficients dequantize interframe coefficients (all planes) */
31 static const int16_t vp31_inter_dequant[64] =
32 {   16,  16,  16,  20,  24,  28,  32,  40,
33     16,  16,  20,  24,  28,  32,  40,  48,
34     16,  20,  24,  28,  32,  40,  48,  64,
35     20,  24,  28,  32,  40,  48,  64,  64,
36     24,  28,  32,  40,  48,  64,  64,  64,
37     28,  32,  40,  48,  64,  64,  64,  96,
38     32,  40,  48,  64,  64,  64,  96,  128,
39     40,  48,  64,  64,  64,  96,  128, 128
40 };
41
42 static const int16_t vp31_dc_scale_factor[64] =
43 { 220, 200, 190, 180, 170, 170, 160, 160,
44   150, 150, 140, 140, 130, 130, 120, 120,
45   110, 110, 100, 100, 90,  90,  90,  80,
46   80,  80,  70,  70,  70,  60,  60,  60,
47   60,  50,  50,  50,  50,  40,  40,  40,
48   40,  40,  30,  30,  30,  30,  30,  30,
49   30,  20,  20,  20,  20,  20,  20,  20,
50   20,  10,  10,  10,  10,  10,  10,  10
51 };
52
53 static const uint32_t vp31_ac_scale_factor[64] =
54 { 500,  450,  400,  370,  340,  310, 285, 265,
55   245,  225,  210,  195,  185,  180, 170, 160,
56   150,  145,  135,  130,  125,  115, 110, 107,
57   100,   96,   93,   89,   85,   82,  75,  74,
58    70,   68,   64,   60,   57,   56,  52,  50,
59    49,   45,   44,   43,   40,   38,  37,  35,
60    33,   32,   30,   29,   28,   25,  24,  22,
61    21,   19,   18,   17,   15,   13,  12,  10
62 };
63
64 static const uint32_t vp31_filter_limit_values[64] =
65 {  30, 25, 20, 20, 15, 15, 14, 14,
66    13, 13, 12, 12, 11, 11, 10, 10,
67     9,  9,  8,  8,  7,  7,  7,  7,
68     6,  6,  6,  6,  5,  5,  5,  5,
69     4,  4,  4,  4,  3,  3,  3,  3,
70     2,  2,  2,  2,  2,  2,  2,  2,
71     0,  0,  0,  0,  0,  0,  0,  0,
72     0,  0,  0,  0,  0,  0,  0,  0
73 };
74
75 static const uint16_t superblock_run_length_vlc_table[34][2] = {
76     { 0, 1 },
77
78     { 4, 3 },    { 5, 3 },
79
80     { 0xC, 4 },  { 0xD, 4 },
81
82     { 0x38, 6 },    { 0x39, 6 },    { 0x3A, 6 },    { 0x3B, 6 },
83
84     { 0xF0, 8 },    { 0xF1, 8 },    { 0xF2, 8 },    { 0xF3, 8 },
85     { 0xF4, 8 },    { 0xF5, 8 },    { 0xF6, 8 },    { 0xF7, 8 },
86
87     { 0x3E0, 10 },    { 0x3E1, 10 },    { 0x3E2, 10 },    { 0x3E3, 10 },
88     { 0x3E4, 10 },    { 0x3E5, 10 },    { 0x3E6, 10 },    { 0x3E7, 10 },
89     { 0x3E8, 10 },    { 0x3E9, 10 },    { 0x3EA, 10 },    { 0x3EB, 10 },
90     { 0x3EC, 10 },    { 0x3ED, 10 },    { 0x3EE, 10 },    { 0x3EF, 10 },
91
92     { 0x3F, 6 }  /* this last VLC is a special case for reading 12 more
93                     bits from stream and adding the value 34 */
94 };
95
96 static const uint16_t fragment_run_length_vlc_table[30][2] = {
97     /* 1 -> 2 */
98     { 0x0, 2 },    { 0x1, 2 },
99
100     /* 3 -> 4 */
101     { 0x4, 3 },    { 0x5, 3 },
102
103     /* 5 -> 6 */
104     { 0xC, 4 },    { 0xD, 4 },
105
106     /* 7 -> 10 */
107     { 0x38, 6 },   { 0x39, 6 },
108     { 0x3A, 6 },   { 0x3B, 6 },
109
110     /* 11 -> 14 */
111     { 0x78, 7 },   { 0x79, 7 },
112     { 0x7A, 7 },   { 0x7B, 7 },
113
114     /* 15 -> 30 */
115     { 0x1F0, 9 },  { 0x1F1, 9 },  { 0x1F2, 9 },  { 0x1F3, 9 },
116     { 0x1F4, 9 },  { 0x1F5, 9 },  { 0x1F6, 9 },  { 0x1F7, 9 },
117     { 0x1F8, 9 },  { 0x1F9, 9 },  { 0x1FA, 9 },  { 0x1FB, 9 },
118     { 0x1FC, 9 },  { 0x1FD, 9 },  { 0x1FE, 9 },  { 0x1FF, 9 }
119 };
120
121 static const uint8_t mode_code_vlc_table[8][2] = {
122     { 0, 1 },      { 2, 2 },
123     { 6, 3 },      { 14, 4 },
124     { 30, 5 },     { 62, 6 },
125     { 126, 7 },    { 127, 7 }
126 };
127
128 static const uint8_t motion_vector_vlc_table[63][2] = {
129     { 0, 3 },
130     { 1, 3 },
131     { 2, 3 },
132
133     { 6, 4 },    { 7, 4 },
134
135     { 8, 4 },    { 9, 4 },
136
137     { 40, 6 },    { 41, 6 },    { 42, 6 },    { 43, 6 },
138     { 44, 6 },    { 45, 6 },    { 46, 6 },    { 47, 6 },
139
140     { 96, 7 },    { 97, 7 },    { 98, 7 },    { 99, 7 },
141     { 100, 7 },   { 101, 7 },   { 102, 7 },   { 103, 7 },
142     { 104, 7 },   { 105, 7 },   { 106, 7 },   { 107, 7 },
143     { 108, 7 },   { 109, 7 },   { 110, 7 },   { 111, 7 },
144
145     { 0xE0, 8 },  { 0xE1, 8 },  { 0xE2, 8 },  { 0xE3, 8 },
146     { 0xE4, 8 },  { 0xE5, 8 },  { 0xE6, 8 },  { 0xE7, 8 },
147     { 0xE8, 8 },  { 0xE9, 8 },  { 0xEA, 8 },  { 0xEB, 8 },
148     { 0xEC, 8 },  { 0xED, 8 },  { 0xEE, 8 },  { 0xEF, 8 },
149
150     { 0xF0, 8 },  { 0xF1, 8 },  { 0xF2, 8 },  { 0xF3, 8 },
151     { 0xF4, 8 },  { 0xF5, 8 },  { 0xF6, 8 },  { 0xF7, 8 },
152     { 0xF8, 8 },  { 0xF9, 8 },  { 0xFA, 8 },  { 0xFB, 8 },
153     { 0xFC, 8 },  { 0xFD, 8 },  { 0xFE, 8 },  { 0xFF, 8 }
154 };
155
156 static const int motion_vector_table[63] = {
157     0, 1, -1,
158     2, -2,
159     3, -3,
160     4, -4, 5, -5, 6, -6, 7, -7,
161     8, -8, 9, -9, 10, -10, 11, -11, 12, -12, 13, -13, 14, -14, 15, -15,
162     16, -16, 17, -17, 18, -18, 19, -19, 20, -20, 21, -21, 22, -22, 23, -23,
163     24, -24, 25, -25, 26, -26, 27, -27, 28, -28, 29, -29, 30, -30, 31, -31
164 };
165
166 static const int8_t fixed_motion_vector_table[64] = {
167    0,   0,   1,  -1,   2,  -2,   3,  -3,
168    4,  -4,   5,  -5,   6,  -6,   7,  -7,
169    8,  -8,   9,  -9,  10, -10,  11, -11,
170   12, -12,  13, -13,  14, -14,  15, -15,
171   16, -16,  17, -17,  18, -18,  19, -19,
172   20, -20,  21, -21,  22, -22,  23, -23,
173   24, -24,  25, -25,  26, -26,  27, -27,
174   28, -28,  29, -29,  30, -30,  31, -31
175 };
176
177 /* only tokens 0..6 indicate eob runs */
178 static const int eob_run_base[7] = {
179     1, 2, 3, 4, 8, 16, 0
180 };
181 static const int eob_run_get_bits[7] = {
182     0, 0, 0, 2, 3, 4, 12
183 };
184
185 static const int zero_run_base[32] = {
186     0, 0, 0, 0, 0, 0, 0,  /* 0..6 are never used */
187     0, 0,  /* 7..8 */
188     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,  /* 9..22 */
189     1, 2, 3, 4, 5,  /* 23..27 */
190     6, 10, 1, 2  /* 28..31 */
191 };
192 static const int zero_run_get_bits[32] = {
193     0, 0, 0, 0, 0, 0, 0,  /* 0..6 are never used */
194     3, 6,  /* 7..8 */
195     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,  /* 9..22 */
196     0, 0, 0, 0, 0,  /* 23..27 */
197     2, 3, 0, 1  /* 28..31 */
198 };
199
200 static const int coeff_get_bits[32] = {
201     0, 0, 0, 0, 0, 0, 0,  /* 0..6 are never used */
202     0, 0, 0, 0, 0, 0,  /* 7..12 use constant coeffs */
203     1, 1, 1, 1,  /* 13..16 are constants but still need sign bit */
204     2, 3, 4, 5, 6, 10,  /* 17..22, for reading large coeffs */
205     1, 1, 1, 1, 1, 1, 1,  /* 23..29 are constants but still need sign bit */
206     2, 2  /* 30..31 */
207 };
208
209 static const int16_t coeff_table_token_7_8[1] = { 0 };
210 static const int16_t coeff_table_token_9[1] = { 1 };
211 static const int16_t coeff_table_token_10[1] = { -1 };
212 static const int16_t coeff_table_token_11[1] = { 2 };
213 static const int16_t coeff_table_token_12[1] = { -2 };
214
215 static const int16_t coeff_table_token_13[2] = { 3, -3 };
216 static const int16_t coeff_table_token_14[2] = { 4, -4 };
217 static const int16_t coeff_table_token_15[2] = { 5, -5 };
218 static const int16_t coeff_table_token_16[2] = { 6, -6 };
219
220 static const int16_t coeff_table_token_23_24_25_26_27_28_29[2] = { 1, -1 };
221 static const int16_t coeff_table_token_30[4] = { 2, 3, -2, -3 };
222 static const int16_t coeff_table_token_31[4] = { 2, 3, -2, -3 };
223
224 static const int16_t coeff_table_token_17[4] = {
225     7, 8, -7, -8
226 };
227
228 static const int16_t coeff_table_token_18[8] = {
229     9, 10, 11, 12, -9, -10, -11, -12
230 };
231
232 static const int16_t coeff_table_token_19[16] = {
233     13, 14, 15, 16, 17, 18, 19, 20, -13, -14, -15, -16, -17, -18, -19, -20
234 };
235
236 static const int16_t coeff_table_token_20[32] = {
237     21, 22, 23, 24, 25, 26, 27, 28,
238     29, 30, 31, 32, 33, 34, 35, 36,
239     -21, -22, -23, -24, -25, -26, -27, -28,
240     -29, -30, -31, -32, -33, -34, -35, -36
241 };
242
243 static const int16_t coeff_table_token_21[64] = {
244     37, 38, 39, 40, 41, 42, 43, 44,
245     45, 46, 47, 48, 49, 50, 51, 52,
246     53, 54, 55, 56, 57, 58, 59, 60,
247     61, 62, 63, 64, 65, 66, 67, 68,
248     -37, -38, -39, -40, -41, -42, -43, -44,
249     -45, -46, -47, -48, -49, -50, -51, -52,
250     -53, -54, -55, -56, -57, -58, -59, -60,
251     -61, -62, -63, -64, -65, -66, -67, -68
252 };
253
254 static const int16_t coeff_table_token_22[1024] = {
255     69, 70, 71, 72, 73, 74, 75, 76,
256     77, 78, 79, 80, 81, 82, 83, 84,
257     85, 86, 87, 88, 89, 90, 91, 92,
258     93, 94, 95, 96, 97, 98, 99, 100,
259     101, 102, 103, 104, 105, 106, 107, 108,
260     109, 110, 111, 112, 113, 114, 115, 116,
261     117, 118, 119, 120, 121, 122, 123, 124,
262     125, 126, 127, 128, 129, 130, 131, 132,
263     133, 134, 135, 136, 137, 138, 139, 140,
264     141, 142, 143, 144, 145, 146, 147, 148,
265     149, 150, 151, 152, 153, 154, 155, 156,
266     157, 158, 159, 160, 161, 162, 163, 164,
267     165, 166, 167, 168, 169, 170, 171, 172,
268     173, 174, 175, 176, 177, 178, 179, 180,
269     181, 182, 183, 184, 185, 186, 187, 188,
270     189, 190, 191, 192, 193, 194, 195, 196,
271     197, 198, 199, 200, 201, 202, 203, 204,
272     205, 206, 207, 208, 209, 210, 211, 212,
273     213, 214, 215, 216, 217, 218, 219, 220,
274     221, 222, 223, 224, 225, 226, 227, 228,
275     229, 230, 231, 232, 233, 234, 235, 236,
276     237, 238, 239, 240, 241, 242, 243, 244,
277     245, 246, 247, 248, 249, 250, 251, 252,
278     253, 254, 255, 256, 257, 258, 259, 260,
279     261, 262, 263, 264, 265, 266, 267, 268,
280     269, 270, 271, 272, 273, 274, 275, 276,
281     277, 278, 279, 280, 281, 282, 283, 284,
282     285, 286, 287, 288, 289, 290, 291, 292,
283     293, 294, 295, 296, 297, 298, 299, 300,
284     301, 302, 303, 304, 305, 306, 307, 308,
285     309, 310, 311, 312, 313, 314, 315, 316,
286     317, 318, 319, 320, 321, 322, 323, 324,
287     325, 326, 327, 328, 329, 330, 331, 332,
288     333, 334, 335, 336, 337, 338, 339, 340,
289     341, 342, 343, 344, 345, 346, 347, 348,
290     349, 350, 351, 352, 353, 354, 355, 356,
291     357, 358, 359, 360, 361, 362, 363, 364,
292     365, 366, 367, 368, 369, 370, 371, 372,
293     373, 374, 375, 376, 377, 378, 379, 380,
294     381, 382, 383, 384, 385, 386, 387, 388,
295     389, 390, 391, 392, 393, 394, 395, 396,
296     397, 398, 399, 400, 401, 402, 403, 404,
297     405, 406, 407, 408, 409, 410, 411, 412,
298     413, 414, 415, 416, 417, 418, 419, 420,
299     421, 422, 423, 424, 425, 426, 427, 428,
300     429, 430, 431, 432, 433, 434, 435, 436,
301     437, 438, 439, 440, 441, 442, 443, 444,
302     445, 446, 447, 448, 449, 450, 451, 452,
303     453, 454, 455, 456, 457, 458, 459, 460,
304     461, 462, 463, 464, 465, 466, 467, 468,
305     469, 470, 471, 472, 473, 474, 475, 476,
306     477, 478, 479, 480, 481, 482, 483, 484,
307     485, 486, 487, 488, 489, 490, 491, 492,
308     493, 494, 495, 496, 497, 498, 499, 500,
309     501, 502, 503, 504, 505, 506, 507, 508,
310     509, 510, 511, 512, 513, 514, 515, 516,
311     517, 518, 519, 520, 521, 522, 523, 524,
312     525, 526, 527, 528, 529, 530, 531, 532,
313     533, 534, 535, 536, 537, 538, 539, 540,
314     541, 542, 543, 544, 545, 546, 547, 548,
315     549, 550, 551, 552, 553, 554, 555, 556,
316     557, 558, 559, 560, 561, 562, 563, 564,
317     565, 566, 567, 568, 569, 570, 571, 572,
318     573, 574, 575, 576, 577, 578, 579, 580,
319     -69, -70, -71, -72, -73, -74, -75, -76,
320     -77, -78, -79, -80, -81, -82, -83, -84,
321     -85, -86, -87, -88, -89, -90, -91, -92,
322     -93, -94, -95, -96, -97, -98, -99, -100,
323     -101, -102, -103, -104, -105, -106, -107, -108,
324     -109, -110, -111, -112, -113, -114, -115, -116,
325     -117, -118, -119, -120, -121, -122, -123, -124,
326     -125, -126, -127, -128, -129, -130, -131, -132,
327     -133, -134, -135, -136, -137, -138, -139, -140,
328     -141, -142, -143, -144, -145, -146, -147, -148,
329     -149, -150, -151, -152, -153, -154, -155, -156,
330     -157, -158, -159, -160, -161, -162, -163, -164,
331     -165, -166, -167, -168, -169, -170, -171, -172,
332     -173, -174, -175, -176, -177, -178, -179, -180,
333     -181, -182, -183, -184, -185, -186, -187, -188,
334     -189, -190, -191, -192, -193, -194, -195, -196,
335     -197, -198, -199, -200, -201, -202, -203, -204,
336     -205, -206, -207, -208, -209, -210, -211, -212,
337     -213, -214, -215, -216, -217, -218, -219, -220,
338     -221, -222, -223, -224, -225, -226, -227, -228,
339     -229, -230, -231, -232, -233, -234, -235, -236,
340     -237, -238, -239, -240, -241, -242, -243, -244,
341     -245, -246, -247, -248, -249, -250, -251, -252,
342     -253, -254, -255, -256, -257, -258, -259, -260,
343     -261, -262, -263, -264, -265, -266, -267, -268,
344     -269, -270, -271, -272, -273, -274, -275, -276,
345     -277, -278, -279, -280, -281, -282, -283, -284,
346     -285, -286, -287, -288, -289, -290, -291, -292,
347     -293, -294, -295, -296, -297, -298, -299, -300,
348     -301, -302, -303, -304, -305, -306, -307, -308,
349     -309, -310, -311, -312, -313, -314, -315, -316,
350     -317, -318, -319, -320, -321, -322, -323, -324,
351     -325, -326, -327, -328, -329, -330, -331, -332,
352     -333, -334, -335, -336, -337, -338, -339, -340,
353     -341, -342, -343, -344, -345, -346, -347, -348,
354     -349, -350, -351, -352, -353, -354, -355, -356,
355     -357, -358, -359, -360, -361, -362, -363, -364,
356     -365, -366, -367, -368, -369, -370, -371, -372,
357     -373, -374, -375, -376, -377, -378, -379, -380,
358     -381, -382, -383, -384, -385, -386, -387, -388,
359     -389, -390, -391, -392, -393, -394, -395, -396,
360     -397, -398, -399, -400, -401, -402, -403, -404,
361     -405, -406, -407, -408, -409, -410, -411, -412,
362     -413, -414, -415, -416, -417, -418, -419, -420,
363     -421, -422, -423, -424, -425, -426, -427, -428,
364     -429, -430, -431, -432, -433, -434, -435, -436,
365     -437, -438, -439, -440, -441, -442, -443, -444,
366     -445, -446, -447, -448, -449, -450, -451, -452,
367     -453, -454, -455, -456, -457, -458, -459, -460,
368     -461, -462, -463, -464, -465, -466, -467, -468,
369     -469, -470, -471, -472, -473, -474, -475, -476,
370     -477, -478, -479, -480, -481, -482, -483, -484,
371     -485, -486, -487, -488, -489, -490, -491, -492,
372     -493, -494, -495, -496, -497, -498, -499, -500,
373     -501, -502, -503, -504, -505, -506, -507, -508,
374     -509, -510, -511, -512, -513, -514, -515, -516,
375     -517, -518, -519, -520, -521, -522, -523, -524,
376     -525, -526, -527, -528, -529, -530, -531, -532,
377     -533, -534, -535, -536, -537, -538, -539, -540,
378     -541, -542, -543, -544, -545, -546, -547, -548,
379     -549, -550, -551, -552, -553, -554, -555, -556,
380     -557, -558, -559, -560, -561, -562, -563, -564,
381     -565, -566, -567, -568, -569, -570, -571, -572,
382     -573, -574, -575, -576, -577, -578, -579, -580
383 };
384
385 static const int16_t *coeff_tables[32] = {
386     NULL,
387     NULL,
388     NULL,
389     NULL,
390     NULL,
391     NULL,
392     NULL,
393     coeff_table_token_7_8,
394
395     coeff_table_token_7_8,
396     coeff_table_token_9,
397     coeff_table_token_10,
398     coeff_table_token_11,
399     coeff_table_token_12,
400     coeff_table_token_13,
401     coeff_table_token_14,
402     coeff_table_token_15,
403
404     coeff_table_token_16,
405     coeff_table_token_17,
406     coeff_table_token_18,
407     coeff_table_token_19,
408     coeff_table_token_20,
409     coeff_table_token_21,
410     coeff_table_token_22,
411     coeff_table_token_23_24_25_26_27_28_29,
412
413     coeff_table_token_23_24_25_26_27_28_29,
414     coeff_table_token_23_24_25_26_27_28_29,
415     coeff_table_token_23_24_25_26_27_28_29,
416     coeff_table_token_23_24_25_26_27_28_29,
417     coeff_table_token_23_24_25_26_27_28_29,
418     coeff_table_token_23_24_25_26_27_28_29,
419     coeff_table_token_30,
420     coeff_table_token_31
421 };
422
423 static const uint16_t dc_bias[16][32][2] = {
424   {  /* DC bias table 0 */
425     { 0x2D, 6 },
426     { 0x26, 7 },
427     { 0x166, 9 },
428     { 0x4E, 8 },
429     { 0x2CE, 10 },
430     { 0x59E, 11 },
431     { 0x27D, 11 },
432     { 0x8, 5 },
433     { 0x4F9, 12 },
434     { 0xF, 4 },
435     { 0xE, 4 },
436     { 0x1B, 5 },
437     { 0x6, 4 },
438     { 0x8, 4 },
439     { 0x5, 4 },
440     { 0x1A, 5 },
441     { 0x15, 5 },
442     { 0x7, 4 },
443     { 0xC, 4 },
444     { 0x1, 3 },
445     { 0x0, 3 },
446     { 0x9, 4 },
447     { 0x17, 5 },
448     { 0x29, 6 },
449     { 0x28, 6 },
450     { 0xB2, 8 },
451     { 0x4F8, 12 },
452     { 0x59F, 11 },
453     { 0x9E, 9 },
454     { 0x13F, 10 },
455     { 0x12, 6 },
456     { 0x58, 7 }
457   },
458   {  /* DC bias table 1 */
459     { 0x10, 5 },
460     { 0x47, 7 },
461     { 0x1FF, 9 },
462     { 0x8C, 8 },
463     { 0x3FC, 10 },
464     { 0x46A, 11 },
465     { 0x469, 11 },
466     { 0x22, 6 },
467     { 0x11A1, 13 },
468     { 0xE, 4 },
469     { 0xD, 4 },
470     { 0x4, 4 },
471     { 0x5, 4 },
472     { 0x9, 4 },
473     { 0x6, 4 },
474     { 0x1E, 5 },
475     { 0x16, 5 },
476     { 0x7, 4 },
477     { 0xC, 4 },
478     { 0x1, 3 },
479     { 0x0, 3 },
480     { 0xA, 4 },
481     { 0x17, 5 },
482     { 0x7D, 7 },
483     { 0x7E, 7 },
484     { 0x11B, 9 },
485     { 0x8D1, 12 },
486     { 0x3FD, 10 },
487     { 0x46B, 11 },
488     { 0x11A0, 13 },
489     { 0x7C, 7 },
490     { 0xFE, 8 }
491   },
492   {  /* DC bias table 2 */
493     { 0x16, 5 },
494     { 0x20, 6 },
495     { 0x86, 8 },
496     { 0x87, 8 },
497     { 0x367, 10 },
498     { 0x6CC, 11 },
499     { 0x6CB, 11 },
500     { 0x6E, 7 },
501     { 0x366D, 14 },
502     { 0xF, 4 },
503     { 0xE, 4 },
504     { 0x4, 4 },
505     { 0x5, 4 },
506     { 0xA, 4 },
507     { 0x6, 4 },
508     { 0x1A, 5 },
509     { 0x11, 5 },
510     { 0x7, 4 },
511     { 0xC, 4 },
512     { 0x1, 3 },
513     { 0x0, 3 },
514     { 0x9, 4 },
515     { 0x17, 5 },
516     { 0x6F, 7 },
517     { 0x6D, 7 },
518     { 0x364, 10 },
519     { 0xD9A, 12 },
520     { 0x6CA, 11 },
521     { 0x1B37, 13 },
522     { 0x366C, 14 },
523     { 0x42, 7 },
524     { 0xD8, 8 }
525   },
526   {  /* DC bias table 3 */
527     { 0x0, 4 },
528     { 0x2D, 6 },
529     { 0xF7, 8 },
530     { 0x58, 7 },
531     { 0x167, 9 },
532     { 0x2CB, 10 },
533     { 0x2CA, 10 },
534     { 0xE, 6 },
535     { 0x1661, 13 },
536     { 0x3, 3 },
537     { 0x2, 3 },
538     { 0x8, 4 },
539     { 0x9, 4 },
540     { 0xD, 4 },
541     { 0x2, 4 },
542     { 0x1F, 5 },
543     { 0x17, 5 },
544     { 0x1, 4 },
545     { 0xC, 4 },
546     { 0xE, 4 },
547     { 0xA, 4 },
548     { 0x6, 5 },
549     { 0x78, 7 },
550     { 0xF, 6 },
551     { 0x7A, 7 },
552     { 0x164, 9 },
553     { 0x599, 11 },
554     { 0x2CD, 10 },
555     { 0xB31, 12 },
556     { 0x1660, 13 },
557     { 0x79, 7 },
558     { 0xF6, 8 }
559   },
560   {  /* DC bias table 4 */
561     { 0x3, 4 },
562     { 0x3C, 6 },
563     { 0xF, 7 },
564     { 0x7A, 7 },
565     { 0x1D, 8 },
566     { 0x20, 9 },
567     { 0x72, 10 },
568     { 0x6, 6 },
569     { 0x399, 13 },
570     { 0x4, 3 },
571     { 0x5, 3 },
572     { 0x5, 4 },
573     { 0x6, 4 },
574     { 0xE, 4 },
575     { 0x4, 4 },
576     { 0x0, 4 },
577     { 0x19, 5 },
578     { 0x2, 4 },
579     { 0xD, 4 },
580     { 0x7, 4 },
581     { 0x1F, 5 },
582     { 0x30, 6 },
583     { 0x11, 8 },
584     { 0x31, 6 },
585     { 0x5, 6 },
586     { 0x21, 9 },
587     { 0xE7, 11 },
588     { 0x38, 9 },
589     { 0x1CD, 12 },
590     { 0x398, 13 },
591     { 0x7B, 7 },
592     { 0x9, 7 }
593   },
594   {  /* DC bias table 5 */
595     { 0x9, 4 },
596     { 0x2, 5 },
597     { 0x74, 7 },
598     { 0x7, 6 },
599     { 0xEC, 8 },
600     { 0xD1, 9 },
601     { 0x1A6, 10 },
602     { 0x6, 6 },
603     { 0xD21, 13 },
604     { 0x5, 3 },
605     { 0x6, 3 },
606     { 0x8, 4 },
607     { 0x7, 4 },
608     { 0xF, 4 },
609     { 0x4, 4 },
610     { 0x0, 4 },
611     { 0x1C, 5 },
612     { 0x2, 4 },
613     { 0x5, 4 },
614     { 0x3, 4 },
615     { 0xC, 5 },
616     { 0x35, 7 },
617     { 0x1A7, 10 },
618     { 0x1B, 6 },
619     { 0x77, 7 },
620     { 0x1A5, 10 },
621     { 0x349, 11 },
622     { 0xD0, 9 },
623     { 0x691, 12 },
624     { 0xD20, 13 },
625     { 0x75, 7 },
626     { 0xED, 8 }
627   },
628   {  /* DC bias table 6 */
629     { 0xA, 4 },
630     { 0xC, 5 },
631     { 0x12, 6 },
632     { 0x1B, 6 },
633     { 0xB7, 8 },
634     { 0x16C, 9 },
635     { 0x99, 9 },
636     { 0x5A, 7 },
637     { 0x16D8, 13 },
638     { 0x7, 3 },
639     { 0x6, 3 },
640     { 0x9, 4 },
641     { 0x8, 4 },
642     { 0x0, 3 },
643     { 0x5, 4 },
644     { 0x17, 5 },
645     { 0xE, 5 },
646     { 0x2, 4 },
647     { 0x3, 4 },
648     { 0xF, 5 },
649     { 0x1A, 6 },
650     { 0x4D, 8 },
651     { 0x2DB3, 14 },
652     { 0x2C, 6 },
653     { 0x11, 6 },
654     { 0x2DA, 10 },
655     { 0x5B7, 11 },
656     { 0x98, 9 },
657     { 0xB6D, 12 },
658     { 0x2DB2, 14 },
659     { 0x10, 6 },
660     { 0x27, 7 }
661   },
662   {  /* DC bias table 7 */
663     { 0xD, 4 },
664     { 0xF, 5 },
665     { 0x1D, 6 },
666     { 0x8, 5 },
667     { 0x51, 7 },
668     { 0x56, 8 },
669     { 0xAF, 9 },
670     { 0x2A, 7 },
671     { 0x148A, 13 },
672     { 0x7, 3 },
673     { 0x0, 2 },
674     { 0x8, 4 },
675     { 0x9, 4 },
676     { 0xC, 4 },
677     { 0x6, 4 },
678     { 0x17, 5 },
679     { 0xB, 5 },
680     { 0x16, 5 },
681     { 0x15, 5 },
682     { 0x9, 5 },
683     { 0x50, 7 },
684     { 0xAE, 9 },
685     { 0x2917, 14 },
686     { 0x1C, 6 },
687     { 0x14, 6 },
688     { 0x290, 10 },
689     { 0x523, 11 },
690     { 0x149, 9 },
691     { 0xA44, 12 },
692     { 0x2916, 14 },
693     { 0x53, 7 },
694     { 0xA5, 8 }
695   },
696   {  /* DC bias table 8 */
697     { 0x1, 4 },
698     { 0x1D, 6 },
699     { 0xF5, 8 },
700     { 0xF4, 8 },
701     { 0x24D, 10 },
702     { 0x499, 11 },
703     { 0x498, 11 },
704     { 0x1, 5 },
705     { 0x21, 6 },
706     { 0x6, 3 },
707     { 0x5, 3 },
708     { 0x6, 4 },
709     { 0x5, 4 },
710     { 0x2, 4 },
711     { 0x7, 5 },
712     { 0x25, 6 },
713     { 0x7B, 7 },
714     { 0x1C, 6 },
715     { 0x20, 6 },
716     { 0xD, 6 },
717     { 0x48, 7 },
718     { 0x92, 8 },
719     { 0x127, 9 },
720     { 0xE, 4 },
721     { 0x4, 4 },
722     { 0x11, 5 },
723     { 0xC, 6 },
724     { 0x3C, 6 },
725     { 0xF, 5 },
726     { 0x0, 5 },
727     { 0x1F, 5 },
728     { 0x13, 5 }
729   },
730   {  /* DC bias table 9 */
731     { 0x5, 4 },
732     { 0x3C, 6 },
733     { 0x40, 7 },
734     { 0xD, 7 },
735     { 0x31, 9 },
736     { 0x61, 10 },
737     { 0x60, 10 },
738     { 0x2, 5 },
739     { 0xF5, 8 },
740     { 0x6, 3 },
741     { 0x5, 3 },
742     { 0x7, 4 },
743     { 0x6, 4 },
744     { 0x2, 4 },
745     { 0x9, 5 },
746     { 0x25, 6 },
747     { 0x7, 6 },
748     { 0x21, 6 },
749     { 0x24, 6 },
750     { 0x10, 6 },
751     { 0x41, 7 },
752     { 0xF4, 8 },
753     { 0x19, 8 },
754     { 0xE, 4 },
755     { 0x3, 4 },
756     { 0x11, 5 },
757     { 0x11, 6 },
758     { 0x3F, 6 },
759     { 0x3E, 6 },
760     { 0x7B, 7 },
761     { 0x0, 4 },
762     { 0x13, 5 }
763   },
764   {  /* DC bias table 10 */
765     { 0xA, 4 },
766     { 0x7, 5 },
767     { 0x1, 6 },
768     { 0x9, 6 },
769     { 0x131, 9 },
770     { 0x261, 10 },
771     { 0x260, 10 },
772     { 0x15, 6 },
773     { 0x1, 7 },
774     { 0x7, 3 },
775     { 0x6, 3 },
776     { 0x8, 4 },
777     { 0x7, 4 },
778     { 0x6, 4 },
779     { 0x12, 5 },
780     { 0x2F, 6 },
781     { 0x14, 6 },
782     { 0x27, 6 },
783     { 0x2D, 6 },
784     { 0x16, 6 },
785     { 0x4D, 7 },
786     { 0x99, 8 },
787     { 0x0, 7 },
788     { 0x4, 4 },
789     { 0x1, 4 },
790     { 0x5, 5 },
791     { 0x17, 6 },
792     { 0x2E, 6 },
793     { 0x2C, 6 },
794     { 0x8, 6 },
795     { 0x6, 5 },
796     { 0x1, 5 }
797   },
798   {  /* DC bias table 11 */
799     { 0x0, 3 },
800     { 0xE, 5 },
801     { 0x17, 6 },
802     { 0x2A, 6 },
803     { 0x10, 7 },
804     { 0xF9, 10 },
805     { 0xF8, 10 },
806     { 0x1E, 7 },
807     { 0x3F, 8 },
808     { 0x7, 3 },
809     { 0x6, 3 },
810     { 0x9, 4 },
811     { 0x8, 4 },
812     { 0x6, 4 },
813     { 0xF, 5 },
814     { 0x5, 5 },
815     { 0x16, 6 },
816     { 0x29, 6 },
817     { 0x2B, 6 },
818     { 0x15, 6 },
819     { 0x50, 7 },
820     { 0x11, 7 },
821     { 0x7D, 9 },
822     { 0x4, 4 },
823     { 0x17, 5 },
824     { 0x6, 5 },
825     { 0x14, 6 },
826     { 0x2C, 6 },
827     { 0x2D, 6 },
828     { 0xE, 6 },
829     { 0x9, 6 },
830     { 0x51, 7 }
831   },
832   {  /* DC bias table 12 */
833     { 0x2, 3 },
834     { 0x18, 5 },
835     { 0x2F, 6 },
836     { 0xD, 5 },
837     { 0x53, 7 },
838     { 0x295, 10 },
839     { 0x294, 10 },
840     { 0xA4, 8 },
841     { 0x7C, 8 },
842     { 0x0, 2 },
843     { 0x7, 3 },
844     { 0x9, 4 },
845     { 0x8, 4 },
846     { 0x1B, 5 },
847     { 0xC, 5 },
848     { 0x28, 6 },
849     { 0x6A, 7 },
850     { 0x1E, 6 },
851     { 0x1D, 6 },
852     { 0x69, 7 },
853     { 0xD7, 8 },
854     { 0x7D, 8 },
855     { 0x14B, 9 },
856     { 0x19, 5 },
857     { 0x16, 5 },
858     { 0x2E, 6 },
859     { 0x1C, 6 },
860     { 0x2B, 6 },
861     { 0x2A, 6 },
862     { 0x68, 7 },
863     { 0x3F, 7 },
864     { 0xD6, 8 }
865   },
866   {  /* DC bias table 13 */
867     { 0x2, 3 },
868     { 0x1B, 5 },
869     { 0xC, 5 },
870     { 0x18, 5 },
871     { 0x29, 6 },
872     { 0x7F, 8 },
873     { 0x2F0, 10 },
874     { 0x198, 9 },
875     { 0x179, 9 },
876     { 0x0, 2 },
877     { 0x7, 3 },
878     { 0x9, 4 },
879     { 0x8, 4 },
880     { 0x1A, 5 },
881     { 0xD, 5 },
882     { 0x2A, 6 },
883     { 0x64, 7 },
884     { 0x1E, 6 },
885     { 0x67, 7 },
886     { 0x5F, 7 },
887     { 0xCD, 8 },
888     { 0x7E, 8 },
889     { 0x2F1, 10 },
890     { 0x16, 5 },
891     { 0xE, 5 },
892     { 0x2E, 6 },
893     { 0x65, 7 },
894     { 0x2B, 6 },
895     { 0x28, 6 },
896     { 0x3E, 7 },
897     { 0xBD, 8 },
898     { 0x199, 9 }
899   },
900   {  /* DC bias table 14 */
901     { 0x2, 3 },
902     { 0x7, 4 },
903     { 0x16, 5 },
904     { 0x6, 4 },
905     { 0x36, 6 },
906     { 0x5C, 7 },
907     { 0x15D, 9 },
908     { 0x15C, 9 },
909     { 0x2BF, 10 },
910     { 0x0, 2 },
911     { 0x7, 3 },
912     { 0x9, 4 },
913     { 0x8, 4 },
914     { 0x18, 5 },
915     { 0x34, 6 },
916     { 0x2A, 6 },
917     { 0x5E, 7 },
918     { 0x6A, 7 },
919     { 0x64, 7 },
920     { 0x5D, 7 },
921     { 0xCB, 8 },
922     { 0xAD, 8 },
923     { 0x2BE, 10 },
924     { 0x14, 5 },
925     { 0x33, 6 },
926     { 0x6E, 7 },
927     { 0x5F, 7 },
928     { 0x6F, 7 },
929     { 0x6B, 7 },
930     { 0xCA, 8 },
931     { 0xAC, 8 },
932     { 0x15E, 9 }
933   },
934   {  /* DC bias table 15 */
935     { 0xF, 4 },
936     { 0x1D, 5 },
937     { 0x18, 5 },
938     { 0xB, 4 },
939     { 0x19, 5 },
940     { 0x29, 6 },
941     { 0xD6, 8 },
942     { 0x551, 11 },
943     { 0xAA1, 12 },
944     { 0x1, 2 },
945     { 0x0, 2 },
946     { 0x9, 4 },
947     { 0x8, 4 },
948     { 0x1B, 5 },
949     { 0x38, 6 },
950     { 0x28, 6 },
951     { 0x57, 7 },
952     { 0x6A, 7 },
953     { 0x68, 7 },
954     { 0x56, 7 },
955     { 0xE5, 8 },
956     { 0x155, 9 },
957     { 0xAA0, 12 },
958     { 0x73, 7 },
959     { 0x69, 7 },
960     { 0xD7, 8 },
961     { 0xAB, 8 },
962     { 0xE4, 8 },
963     { 0xA9, 8 },
964     { 0x151, 9 },
965     { 0x150, 9 },
966     { 0x2A9, 10 }
967   }
968 };
969
970 static const uint16_t ac_bias_0[16][32][2] = {
971   {  /* AC bias group 1, table 0 */
972     { 0x8, 5 },
973     { 0x25, 7 },
974     { 0x17A, 9 },
975     { 0x2F7, 10 },
976     { 0xBDB, 12 },
977     { 0x17B4, 13 },
978     { 0x2F6B, 14 },
979     { 0x1D, 5 },
980     { 0x2F6A, 14 },
981     { 0x8, 4 },
982     { 0x7, 4 },
983     { 0x1, 4 },
984     { 0x2, 4 },
985     { 0xA, 4 },
986     { 0x6, 4 },
987     { 0x0, 4 },
988     { 0x1C, 5 },
989     { 0x9, 4 },
990     { 0xD, 4 },
991     { 0xF, 4 },
992     { 0xC, 4 },
993     { 0x3, 4 },
994     { 0xA, 5 },
995     { 0x16, 5 },
996     { 0x13, 6 },
997     { 0x5D, 7 },
998     { 0x24, 7 },
999     { 0xBC, 8 },
1000     { 0x5C, 7 },
1001     { 0x5EC, 11 },
1002     { 0xB, 5 },
1003     { 0x5F, 7 }
1004   },
1005   {  /* AC bias group 1, table 1 */
1006     { 0xF, 5 },
1007     { 0x10, 6 },
1008     { 0x4B, 8 },
1009     { 0xC6, 8 },
1010     { 0x31D, 10 },
1011     { 0xC71, 12 },
1012     { 0xC70, 12 },
1013     { 0x1, 4 },
1014     { 0xC73, 12 },
1015     { 0x8, 4 },
1016     { 0x9, 4 },
1017     { 0x2, 4 },
1018     { 0x3, 4 },
1019     { 0xB, 4 },
1020     { 0x6, 4 },
1021     { 0x0, 4 },
1022     { 0x1C, 5 },
1023     { 0x5, 4 },
1024     { 0xD, 4 },
1025     { 0xF, 4 },
1026     { 0xA, 4 },
1027     { 0x19, 5 },
1028     { 0x13, 6 },
1029     { 0x1D, 5 },
1030     { 0x30, 6 },
1031     { 0x62, 7 },
1032     { 0x24, 7 },
1033     { 0x4A, 8 },
1034     { 0x18F, 9 },
1035     { 0xC72, 12 },
1036     { 0xE, 5 },
1037     { 0x11, 6 }
1038   },
1039   {  /* AC bias group 1, table 2 */
1040     { 0x1B, 5 },
1041     { 0x3, 6 },
1042     { 0x8D, 8 },
1043     { 0x40, 7 },
1044     { 0x239, 10 },
1045     { 0x471, 11 },
1046     { 0x8E0, 12 },
1047     { 0x3, 4 },
1048     { 0x11C3, 13 },
1049     { 0xA, 4 },
1050     { 0x9, 4 },
1051     { 0x4, 4 },
1052     { 0x5, 4 },
1053     { 0xE, 4 },
1054     { 0x7, 4 },
1055     { 0x1, 4 },
1056     { 0x1E, 5 },
1057     { 0x6, 4 },
1058     { 0xC, 4 },
1059     { 0xB, 4 },
1060     { 0x2, 4 },
1061     { 0x0, 5 },
1062     { 0x41, 7 },
1063     { 0x1F, 5 },
1064     { 0x22, 6 },
1065     { 0x2, 6 },
1066     { 0x8F, 8 },
1067     { 0x8C, 8 },
1068     { 0x11D, 9 },
1069     { 0x11C2, 13 },
1070     { 0x1A, 5 },
1071     { 0x21, 6 }
1072   },
1073   {  /* AC bias group 1, table 3 */
1074     { 0x1F, 5 },
1075     { 0x3, 6 },
1076     { 0x3, 7 },
1077     { 0x43, 7 },
1078     { 0xB, 9 },
1079     { 0x15, 10 },
1080     { 0x51, 12 },
1081     { 0x3, 4 },
1082     { 0x50, 12 },
1083     { 0xD, 4 },
1084     { 0xC, 4 },
1085     { 0x4, 4 },
1086     { 0x6, 4 },
1087     { 0xE, 4 },
1088     { 0xA, 4 },
1089     { 0x1, 4 },
1090     { 0x1E, 5 },
1091     { 0x5, 4 },
1092     { 0x9, 4 },
1093     { 0x7, 4 },
1094     { 0x11, 5 },
1095     { 0x2, 6 },
1096     { 0x4, 8 },
1097     { 0x2, 4 },
1098     { 0x2D, 6 },
1099     { 0x20, 6 },
1100     { 0x42, 7 },
1101     { 0x1, 7 },
1102     { 0x0, 7 },
1103     { 0x29, 11 },
1104     { 0x17, 5 },
1105     { 0x2C, 6 }
1106   },
1107   {  /* AC bias group 1, table 4 */
1108     { 0x3, 4 },
1109     { 0x1F, 6 },
1110     { 0x3A, 7 },
1111     { 0x5D, 7 },
1112     { 0x173, 9 },
1113     { 0x2E4, 10 },
1114     { 0x172D, 13 },
1115     { 0x4, 4 },
1116     { 0x172C, 13 },
1117     { 0xF, 4 },
1118     { 0xE, 4 },
1119     { 0x9, 4 },
1120     { 0x8, 4 },
1121     { 0xC, 4 },
1122     { 0xA, 4 },
1123     { 0x1, 4 },
1124     { 0x16, 5 },
1125     { 0x2, 4 },
1126     { 0x5, 4 },
1127     { 0x1A, 5 },
1128     { 0x2F, 6 },
1129     { 0x38, 7 },
1130     { 0x5CA, 11 },
1131     { 0x6, 4 },
1132     { 0x37, 6 },
1133     { 0x1E, 6 },
1134     { 0x3B, 7 },
1135     { 0x39, 7 },
1136     { 0xB8, 8 },
1137     { 0xB97, 12 },
1138     { 0x0, 4 },
1139     { 0x36, 6 }
1140   },
1141   {  /* AC bias group 1, table 5 */
1142     { 0x6, 4 },
1143     { 0x37, 6 },
1144     { 0x5D, 7 },
1145     { 0xC, 6 },
1146     { 0xB9, 8 },
1147     { 0x2E3, 10 },
1148     { 0x5C4, 11 },
1149     { 0x4, 4 },
1150     { 0x1715, 13 },
1151     { 0x0, 3 },
1152     { 0xF, 4 },
1153     { 0x8, 4 },
1154     { 0x7, 4 },
1155     { 0xC, 4 },
1156     { 0x9, 4 },
1157     { 0x1D, 5 },
1158     { 0x16, 5 },
1159     { 0x1C, 5 },
1160     { 0x1A, 5 },
1161     { 0xB, 5 },
1162     { 0x5E, 7 },
1163     { 0x170, 9 },
1164     { 0x1714, 13 },
1165     { 0xA, 4 },
1166     { 0xA, 5 },
1167     { 0x36, 6 },
1168     { 0x5F, 7 },
1169     { 0x1B, 7 },
1170     { 0x1A, 7 },
1171     { 0xB8B, 12 },
1172     { 0x2, 4 },
1173     { 0x7, 5 }
1174   },
1175   {  /* AC bias group 1, table 6 */
1176     { 0xC, 4 },
1177     { 0xB, 5 },
1178     { 0x79, 7 },
1179     { 0x22, 6 },
1180     { 0xF0, 8 },
1181     { 0x119, 9 },
1182     { 0x230, 10 },
1183     { 0x1D, 5 },
1184     { 0x8C4, 12 },
1185     { 0x1, 3 },
1186     { 0x0, 3 },
1187     { 0xA, 4 },
1188     { 0x9, 4 },
1189     { 0xB, 4 },
1190     { 0x7, 4 },
1191     { 0x1C, 5 },
1192     { 0x3D, 6 },
1193     { 0xD, 5 },
1194     { 0x8, 5 },
1195     { 0x15, 6 },
1196     { 0x8D, 8 },
1197     { 0x118B, 13 },
1198     { 0x118A, 13 },
1199     { 0xD, 4 },
1200     { 0x10, 5 },
1201     { 0x9, 5 },
1202     { 0x14, 6 },
1203     { 0x47, 7 },
1204     { 0xF1, 8 },
1205     { 0x463, 11 },
1206     { 0x1F, 5 },
1207     { 0xC, 5 }
1208   },
1209   {  /* AC bias group 1, table 7 */
1210     { 0x0, 3 },
1211     { 0x1A, 5 },
1212     { 0x33, 6 },
1213     { 0xC, 5 },
1214     { 0x46, 7 },
1215     { 0x1E3, 9 },
1216     { 0x3C5, 10 },
1217     { 0x17, 5 },
1218     { 0x1E21, 13 },
1219     { 0x2, 3 },
1220     { 0x1, 3 },
1221     { 0x9, 4 },
1222     { 0xA, 4 },
1223     { 0x7, 4 },
1224     { 0x1B, 5 },
1225     { 0x3D, 6 },
1226     { 0x1B, 6 },
1227     { 0x22, 6 },
1228     { 0x79, 7 },
1229     { 0xF0, 8 },
1230     { 0x1E20, 13 },
1231     { 0x1E23, 13 },
1232     { 0x1E22, 13 },
1233     { 0xE, 4 },
1234     { 0x16, 5 },
1235     { 0x18, 5 },
1236     { 0x32, 6 },
1237     { 0x1A, 6 },
1238     { 0x47, 7 },
1239     { 0x789, 11 },
1240     { 0x1F, 5 },
1241     { 0x10, 5 }
1242   },
1243   {  /* AC bias group 1, table 8 */
1244     { 0x1D, 5 },
1245     { 0x61, 7 },
1246     { 0x4E, 8 },
1247     { 0x9E, 9 },
1248     { 0x27C, 11 },
1249     { 0x9F5, 13 },
1250     { 0x9F4, 13 },
1251     { 0x3, 4 },
1252     { 0x60, 7 },
1253     { 0x0, 3 },
1254     { 0xF, 4 },
1255     { 0xB, 4 },
1256     { 0xA, 4 },
1257     { 0x9, 4 },
1258     { 0x5, 4 },
1259     { 0xD, 5 },
1260     { 0x31, 6 },
1261     { 0x8, 5 },
1262     { 0x38, 6 },
1263     { 0x12, 6 },
1264     { 0x26, 7 },
1265     { 0x13F, 10 },
1266     { 0x4FB, 12 },
1267     { 0xD, 4 },
1268     { 0x2, 4 },
1269     { 0xC, 5 },
1270     { 0x39, 6 },
1271     { 0x1C, 6 },
1272     { 0xF, 5 },
1273     { 0x1D, 6 },
1274     { 0x8, 4 },
1275     { 0x19, 5 }
1276   },
1277   {  /* AC bias group 1, table 9 */
1278     { 0x7, 4 },
1279     { 0x19, 6 },
1280     { 0xAB, 8 },
1281     { 0xAA, 8 },
1282     { 0x119, 10 },
1283     { 0x461, 12 },
1284     { 0x460, 12 },
1285     { 0x1B, 5 },
1286     { 0x47, 8 },
1287     { 0x1, 3 },
1288     { 0x0, 3 },
1289     { 0xC, 4 },
1290     { 0xB, 4 },
1291     { 0x9, 4 },
1292     { 0x5, 4 },
1293     { 0xD, 5 },
1294     { 0x35, 6 },
1295     { 0x3D, 6 },
1296     { 0x3C, 6 },
1297     { 0x18, 6 },
1298     { 0x22, 7 },
1299     { 0x8D, 9 },
1300     { 0x231, 11 },
1301     { 0xE, 4 },
1302     { 0x1F, 5 },
1303     { 0x9, 5 },
1304     { 0x2B, 6 },
1305     { 0x10, 6 },
1306     { 0x34, 6 },
1307     { 0x54, 7 },
1308     { 0x8, 4 },
1309     { 0x14, 5 }
1310   },
1311   {  /* AC bias group 1, table 10 */
1312     { 0xC, 4 },
1313     { 0x5, 5 },
1314     { 0x8, 6 },
1315     { 0x5B, 7 },
1316     { 0x4D, 9 },
1317     { 0x131, 11 },
1318     { 0x261, 12 },
1319     { 0x1A, 5 },
1320     { 0x12, 7 },
1321     { 0x0, 3 },
1322     { 0xF, 4 },
1323     { 0xA, 4 },
1324     { 0x9, 4 },
1325     { 0x6, 4 },
1326     { 0x1B, 5 },
1327     { 0x6, 5 },
1328     { 0x1C, 6 },
1329     { 0x2C, 6 },
1330     { 0x15, 6 },
1331     { 0x5A, 7 },
1332     { 0x27, 8 },
1333     { 0x99, 10 },
1334     { 0x260, 12 },
1335     { 0xE, 4 },
1336     { 0x4, 4 },
1337     { 0xF, 5 },
1338     { 0x7, 5 },
1339     { 0x1D, 6 },
1340     { 0xB, 5 },
1341     { 0x14, 6 },
1342     { 0x8, 4 },
1343     { 0x17, 5 }
1344   },
1345   {  /* AC bias group 1, table 11 */
1346     { 0xF, 4 },
1347     { 0x13, 5 },
1348     { 0x75, 7 },
1349     { 0x24, 6 },
1350     { 0x95, 8 },
1351     { 0x251, 10 },
1352     { 0x4A0, 11 },
1353     { 0x10, 5 },
1354     { 0xC8, 8 },
1355     { 0x2, 3 },
1356     { 0x1, 3 },
1357     { 0x1, 4 },
1358     { 0x0, 4 },
1359     { 0x1A, 5 },
1360     { 0x11, 5 },
1361     { 0x2C, 6 },
1362     { 0x65, 7 },
1363     { 0x74, 7 },
1364     { 0x4B, 7 },
1365     { 0xC9, 8 },
1366     { 0x129, 9 },
1367     { 0x943, 12 },
1368     { 0x942, 12 },
1369     { 0x3, 3 },
1370     { 0xA, 4 },
1371     { 0x1C, 5 },
1372     { 0x18, 5 },
1373     { 0x33, 6 },
1374     { 0x17, 5 },
1375     { 0x2D, 6 },
1376     { 0x1B, 5 },
1377     { 0x3B, 6 }
1378   },
1379   {  /* AC bias group 1, table 12 */
1380     { 0x3, 3 },
1381     { 0x1A, 5 },
1382     { 0x2D, 6 },
1383     { 0x38, 6 },
1384     { 0x28, 7 },
1385     { 0x395, 10 },
1386     { 0xE51, 12 },
1387     { 0x37, 6 },
1388     { 0xE4, 8 },
1389     { 0x1, 3 },
1390     { 0x0, 3 },
1391     { 0x1F, 5 },
1392     { 0x1E, 5 },
1393     { 0x17, 5 },
1394     { 0x3A, 6 },
1395     { 0x73, 7 },
1396     { 0x2A, 7 },
1397     { 0x2B, 7 },
1398     { 0x29, 7 },
1399     { 0x1CB, 9 },
1400     { 0x729, 11 },
1401     { 0x1CA1, 13 },
1402     { 0x1CA0, 13 },
1403     { 0x4, 3 },
1404     { 0xA, 4 },
1405     { 0x4, 4 },
1406     { 0x18, 5 },
1407     { 0x36, 6 },
1408     { 0xB, 5 },
1409     { 0x2C, 6 },
1410     { 0x19, 5 },
1411     { 0x3B, 6 }
1412   },
1413   {  /* AC bias group 1, table 13 */
1414     { 0x4, 3 },
1415     { 0x4, 4 },
1416     { 0x3F, 6 },
1417     { 0x17, 5 },
1418     { 0x75, 7 },
1419     { 0x1F5, 9 },
1420     { 0x7D1, 11 },
1421     { 0x17, 6 },
1422     { 0x1F6, 9 },
1423     { 0x1, 3 },
1424     { 0x0, 3 },
1425     { 0x1B, 5 },
1426     { 0x1A, 5 },
1427     { 0xA, 5 },
1428     { 0x32, 6 },
1429     { 0x74, 7 },
1430     { 0xF8, 8 },
1431     { 0xF9, 8 },
1432     { 0x1F7, 9 },
1433     { 0x3E9, 10 },
1434     { 0xFA0, 12 },
1435     { 0x1F43, 13 },
1436     { 0x1F42, 13 },
1437     { 0x3, 3 },
1438     { 0xA, 4 },
1439     { 0x1E, 5 },
1440     { 0x1C, 5 },
1441     { 0x3B, 6 },
1442     { 0x18, 5 },
1443     { 0x16, 6 },
1444     { 0x16, 5 },
1445     { 0x33, 6 }
1446   },
1447   {  /* AC bias group 1, table 14 */
1448     { 0x4, 3 },
1449     { 0x7, 4 },
1450     { 0x18, 5 },
1451     { 0x1E, 5 },
1452     { 0x36, 6 },
1453     { 0x31, 7 },
1454     { 0x177, 9 },
1455     { 0x77, 7 },
1456     { 0x176, 9 },
1457     { 0x1, 3 },
1458     { 0x0, 3 },
1459     { 0x1A, 5 },
1460     { 0x19, 5 },
1461     { 0x3A, 6 },
1462     { 0x19, 6 },
1463     { 0x5C, 7 },
1464     { 0xBA, 8 },
1465     { 0x61, 8 },
1466     { 0xC1, 9 },
1467     { 0x180, 10 },
1468     { 0x302, 11 },
1469     { 0x607, 12 },
1470     { 0x606, 12 },
1471     { 0x2, 3 },
1472     { 0xA, 4 },
1473     { 0x1F, 5 },
1474     { 0x1C, 5 },
1475     { 0x37, 6 },
1476     { 0x16, 5 },
1477     { 0x76, 7 },
1478     { 0xD, 5 },
1479     { 0x2F, 6 }
1480   },
1481   {  /* AC bias group 1, table 15 */
1482     { 0x0, 3 },
1483     { 0xA, 4 },
1484     { 0x1A, 5 },
1485     { 0xC, 4 },
1486     { 0x1D, 5 },
1487     { 0x39, 6 },
1488     { 0x78, 7 },
1489     { 0x5E, 7 },
1490     { 0x393, 11 },
1491     { 0x2, 3 },
1492     { 0x1, 3 },
1493     { 0x16, 5 },
1494     { 0xF, 5 },
1495     { 0x2E, 6 },
1496     { 0x5F, 7 },
1497     { 0x73, 8 },
1498     { 0xE5, 9 },
1499     { 0x1C8, 10 },
1500     { 0xE4A, 13 },
1501     { 0x1C97, 14 },
1502     { 0x1C96, 14 },
1503     { 0xE49, 13 },
1504     { 0xE48, 13 },
1505     { 0x4, 3 },
1506     { 0x6, 4 },
1507     { 0x1F, 5 },
1508     { 0x1B, 5 },
1509     { 0x1D, 6 },
1510     { 0x38, 6 },
1511     { 0x38, 7 },
1512     { 0x3D, 6 },
1513     { 0x79, 7 }
1514   }
1515 };
1516
1517 static const uint16_t ac_bias_1[16][32][2] = {
1518   {  /* AC bias group 2, table 0 */
1519     { 0xB, 5 },
1520     { 0x2B, 7 },
1521     { 0x54, 8 },
1522     { 0x1B7, 9 },
1523     { 0x6D9, 11 },
1524     { 0xDB1, 12 },
1525     { 0xDB0, 12 },
1526     { 0x2, 4 },
1527     { 0xAB, 9 },
1528     { 0x9, 4 },
1529     { 0xA, 4 },
1530     { 0x7, 4 },
1531     { 0x8, 4 },
1532     { 0xF, 4 },
1533     { 0xC, 4 },
1534     { 0x3, 4 },
1535     { 0x1D, 5 },
1536     { 0x4, 4 },
1537     { 0xB, 4 },
1538     { 0x6, 4 },
1539     { 0x1A, 5 },
1540     { 0x3, 6 },
1541     { 0xAA, 9 },
1542     { 0x1, 4 },
1543     { 0x0, 5 },
1544     { 0x14, 6 },
1545     { 0x6C, 7 },
1546     { 0xDA, 8 },
1547     { 0x2, 6 },
1548     { 0x36D, 10 },
1549     { 0x1C, 5 },
1550     { 0x37, 6 }
1551   },
1552   {  /* AC bias group 2, table 1 */
1553     { 0x1D, 5 },
1554     { 0x4, 6 },
1555     { 0xB6, 8 },
1556     { 0x6A, 8 },
1557     { 0x5B9, 11 },
1558     { 0x16E1, 13 },
1559     { 0x16E0, 13 },
1560     { 0x7, 4 },
1561     { 0x16F, 9 },
1562     { 0xC, 4 },
1563     { 0xD, 4 },
1564     { 0x9, 4 },
1565     { 0x8, 4 },
1566     { 0xF, 4 },
1567     { 0xA, 4 },
1568     { 0x3, 4 },
1569     { 0x17, 5 },
1570     { 0x2, 4 },
1571     { 0x4, 4 },
1572     { 0x1C, 5 },
1573     { 0x2C, 6 },
1574     { 0x6B, 8 },
1575     { 0xB71, 12 },
1576     { 0x5, 4 },
1577     { 0x3, 5 },
1578     { 0x1B, 6 },
1579     { 0x5A, 7 },
1580     { 0x34, 7 },
1581     { 0x5, 6 },
1582     { 0x2DD, 10 },
1583     { 0x0, 4 },
1584     { 0xC, 5 }
1585   },
1586   {  /* AC bias group 2, table 2 */
1587     { 0x3, 4 },
1588     { 0x7F, 7 },
1589     { 0xA1, 8 },
1590     { 0xA0, 8 },
1591     { 0x20C, 10 },
1592     { 0x834, 12 },
1593     { 0x106B, 13 },
1594     { 0x7, 4 },
1595     { 0x82, 8 },
1596     { 0xE, 4 },
1597     { 0xD, 4 },
1598     { 0xB, 4 },
1599     { 0xC, 4 },
1600     { 0x0, 3 },
1601     { 0x9, 4 },
1602     { 0x2, 4 },
1603     { 0x11, 5 },
1604     { 0x1E, 5 },
1605     { 0x15, 5 },
1606     { 0x3E, 6 },
1607     { 0x40, 7 },
1608     { 0x41B, 11 },
1609     { 0x106A, 13 },
1610     { 0x6, 4 },
1611     { 0xA, 5 },
1612     { 0x29, 6 },
1613     { 0x7E, 7 },
1614     { 0x51, 7 },
1615     { 0x21, 6 },
1616     { 0x107, 9 },
1617     { 0x4, 4 },
1618     { 0xB, 5 }
1619   },
1620   {  /* AC bias group 2, table 3 */
1621     { 0x7, 4 },
1622     { 0x1B, 6 },
1623     { 0xF6, 8 },
1624     { 0xE9, 8 },
1625     { 0x3A1, 10 },
1626     { 0x740, 11 },
1627     { 0xE82, 12 },
1628     { 0x1F, 5 },
1629     { 0x1EF, 9 },
1630     { 0x1, 3 },
1631     { 0x2, 3 },
1632     { 0xB, 4 },
1633     { 0xC, 4 },
1634     { 0xD, 4 },
1635     { 0x8, 4 },
1636     { 0x1C, 5 },
1637     { 0x3, 5 },
1638     { 0x12, 5 },
1639     { 0x2, 5 },
1640     { 0x75, 7 },
1641     { 0x1D1, 9 },
1642     { 0x1D07, 13 },
1643     { 0x1D06, 13 },
1644     { 0xA, 4 },
1645     { 0x13, 5 },
1646     { 0x3B, 6 },
1647     { 0x1A, 6 },
1648     { 0x7A, 7 },
1649     { 0x3C, 6 },
1650     { 0x1EE, 9 },
1651     { 0x0, 4 },
1652     { 0xC, 5 }
1653   },
1654   {  /* AC bias group 2, table 4 */
1655     { 0xD, 4 },
1656     { 0x3D, 6 },
1657     { 0x42, 7 },
1658     { 0x37, 7 },
1659     { 0xD9, 9 },
1660     { 0x362, 11 },
1661     { 0x6C6, 12 },
1662     { 0x1F, 5 },
1663     { 0x86, 8 },
1664     { 0x1, 3 },
1665     { 0x2, 3 },
1666     { 0xC, 4 },
1667     { 0xB, 4 },
1668     { 0xA, 4 },
1669     { 0x1, 4 },
1670     { 0xF, 5 },
1671     { 0x25, 6 },
1672     { 0x3C, 6 },
1673     { 0x1A, 6 },
1674     { 0x87, 8 },
1675     { 0x1B0, 10 },
1676     { 0xD8F, 13 },
1677     { 0xD8E, 13 },
1678     { 0xE, 4 },
1679     { 0x13, 5 },
1680     { 0xC, 5 },
1681     { 0x24, 6 },
1682     { 0x20, 6 },
1683     { 0x11, 5 },
1684     { 0x6D, 8 },
1685     { 0x0, 4 },
1686     { 0xE, 5 }
1687   },
1688   {  /* AC bias group 2, table 5 */
1689     { 0x0, 3 },
1690     { 0x12, 5 },
1691     { 0x76, 7 },
1692     { 0x77, 7 },
1693     { 0x14D, 9 },
1694     { 0x533, 11 },
1695     { 0x14C9, 13 },
1696     { 0x13, 5 },
1697     { 0xA5, 8 },
1698     { 0x2, 3 },
1699     { 0x3, 3 },
1700     { 0xB, 4 },
1701     { 0xC, 4 },
1702     { 0x8, 4 },
1703     { 0x1A, 5 },
1704     { 0x2B, 6 },
1705     { 0x75, 7 },
1706     { 0x74, 7 },
1707     { 0xA7, 8 },
1708     { 0x298, 10 },
1709     { 0x14C8, 13 },
1710     { 0x14CB, 13 },
1711     { 0x14CA, 13 },
1712     { 0xF, 4 },
1713     { 0x1C, 5 },
1714     { 0x7, 5 },
1715     { 0x2A, 6 },
1716     { 0x28, 6 },
1717     { 0x1B, 5 },
1718     { 0xA4, 8 },
1719     { 0x2, 4 },
1720     { 0x6, 5 }
1721   },
1722   {  /* AC bias group 2, table 6 */
1723     { 0x2, 3 },
1724     { 0x1A, 5 },
1725     { 0x2B, 6 },
1726     { 0x3A, 6 },
1727     { 0xED, 8 },
1728     { 0x283, 10 },
1729     { 0xA0A, 12 },
1730     { 0x4, 5 },
1731     { 0xA1, 8 },
1732     { 0x4, 3 },
1733     { 0x3, 3 },
1734     { 0xB, 4 },
1735     { 0xC, 4 },
1736     { 0x1F, 5 },
1737     { 0x6, 5 },
1738     { 0x77, 7 },
1739     { 0xA3, 8 },
1740     { 0xA2, 8 },
1741     { 0x140, 9 },
1742     { 0x1417, 13 },
1743     { 0x1416, 13 },
1744     { 0xA09, 12 },
1745     { 0xA08, 12 },
1746     { 0x0, 3 },
1747     { 0x1E, 5 },
1748     { 0x7, 5 },
1749     { 0x2A, 6 },
1750     { 0x29, 6 },
1751     { 0x1C, 5 },
1752     { 0xEC, 8 },
1753     { 0x1B, 5 },
1754     { 0x5, 5 }
1755   },
1756   {  /* AC bias group 2, table 7 */
1757     { 0x2, 3 },
1758     { 0x2, 4 },
1759     { 0x18, 5 },
1760     { 0x1D, 5 },
1761     { 0x35, 6 },
1762     { 0xE4, 8 },
1763     { 0x1CF, 11 },
1764     { 0x1D, 7 },
1765     { 0x72, 9 },
1766     { 0x4, 3 },
1767     { 0x5, 3 },
1768     { 0x6, 4 },
1769     { 0x7, 4 },
1770     { 0x6, 5 },
1771     { 0x73, 7 },
1772     { 0x38, 8 },
1773     { 0x1CE, 11 },
1774     { 0x39B, 12 },
1775     { 0x398, 12 },
1776     { 0x733, 13 },
1777     { 0x732, 13 },
1778     { 0x735, 13 },
1779     { 0x734, 13 },
1780     { 0x0, 3 },
1781     { 0x1F, 5 },
1782     { 0x1B, 5 },
1783     { 0x34, 6 },
1784     { 0xF, 6 },
1785     { 0x1E, 5 },
1786     { 0xE5, 8 },
1787     { 0x19, 5 },
1788     { 0x38, 6 }
1789   },
1790   {  /* AC bias group 2, table 8 */
1791     { 0x16, 5 },
1792     { 0x50, 7 },
1793     { 0x172, 9 },
1794     { 0x2E7, 10 },
1795     { 0x1732, 13 },
1796     { 0x2E67, 14 },
1797     { 0x2E66, 14 },
1798     { 0x6, 4 },
1799     { 0x51, 7 },
1800     { 0x1, 3 },
1801     { 0x0, 3 },
1802     { 0xD, 4 },
1803     { 0xC, 4 },
1804     { 0x9, 4 },
1805     { 0x1C, 5 },
1806     { 0x9, 5 },
1807     { 0x1C, 6 },
1808     { 0x1D, 6 },
1809     { 0x5D, 7 },
1810     { 0xB8, 8 },
1811     { 0x5CD, 11 },
1812     { 0x1731, 13 },
1813     { 0x1730, 13 },
1814     { 0xF, 4 },
1815     { 0x5, 4 },
1816     { 0xF, 5 },
1817     { 0x8, 5 },
1818     { 0x29, 6 },
1819     { 0x1D, 5 },
1820     { 0x2F, 6 },
1821     { 0x8, 4 },
1822     { 0x15, 5 }
1823   },
1824   {  /* AC bias group 2, table 9 */
1825     { 0x9, 4 },
1826     { 0x21, 6 },
1827     { 0x40, 7 },
1828     { 0xAD, 8 },
1829     { 0x2B0, 10 },
1830     { 0x1589, 13 },
1831     { 0x1588, 13 },
1832     { 0x1C, 5 },
1833     { 0x5F, 7 },
1834     { 0x0, 3 },
1835     { 0xF, 4 },
1836     { 0xD, 4 },
1837     { 0xC, 4 },
1838     { 0x6, 4 },
1839     { 0x11, 5 },
1840     { 0x2A, 6 },
1841     { 0x57, 7 },
1842     { 0x5E, 7 },
1843     { 0x41, 7 },
1844     { 0x159, 9 },
1845     { 0x563, 11 },
1846     { 0x158B, 13 },
1847     { 0x158A, 13 },
1848     { 0x1, 3 },
1849     { 0x5, 4 },
1850     { 0x14, 5 },
1851     { 0x3B, 6 },
1852     { 0x2E, 6 },
1853     { 0x4, 4 },
1854     { 0x3A, 6 },
1855     { 0x7, 4 },
1856     { 0x16, 5 }
1857   },
1858   {  /* AC bias group 2, table 10 */
1859     { 0xE, 4 },
1860     { 0x7, 5 },
1861     { 0x46, 7 },
1862     { 0x45, 7 },
1863     { 0x64, 9 },
1864     { 0x32A, 12 },
1865     { 0x657, 13 },
1866     { 0x18, 5 },
1867     { 0xD, 6 },
1868     { 0x0, 3 },
1869     { 0xF, 4 },
1870     { 0xA, 4 },
1871     { 0xB, 4 },
1872     { 0x1A, 5 },
1873     { 0x36, 6 },
1874     { 0x47, 7 },
1875     { 0x44, 7 },
1876     { 0x18, 7 },
1877     { 0x33, 8 },
1878     { 0xCB, 10 },
1879     { 0x656, 13 },
1880     { 0x329, 12 },
1881     { 0x328, 12 },
1882     { 0x2, 3 },
1883     { 0x6, 4 },
1884     { 0x19, 5 },
1885     { 0xE, 5 },
1886     { 0x37, 6 },
1887     { 0x9, 4 },
1888     { 0xF, 5 },
1889     { 0x2, 4 },
1890     { 0x10, 5 }
1891   },
1892   {  /* AC bias group 2, table 11 */
1893     { 0x3, 3 },
1894     { 0x18, 5 },
1895     { 0x23, 6 },
1896     { 0x77, 7 },
1897     { 0x194, 9 },
1898     { 0x1956, 13 },
1899     { 0x32AF, 14 },
1900     { 0x3A, 6 },
1901     { 0x76, 7 },
1902     { 0x2, 3 },
1903     { 0x1, 3 },
1904     { 0x1F, 5 },
1905     { 0x1E, 5 },
1906     { 0x14, 5 },
1907     { 0x22, 6 },
1908     { 0x64, 7 },
1909     { 0x197, 9 },
1910     { 0x196, 9 },
1911     { 0x32B, 10 },
1912     { 0x654, 11 },
1913     { 0x32AE, 14 },
1914     { 0x1955, 13 },
1915     { 0x1954, 13 },
1916     { 0x0, 3 },
1917     { 0x9, 4 },
1918     { 0x1C, 5 },
1919     { 0x15, 5 },
1920     { 0x10, 5 },
1921     { 0xD, 4 },
1922     { 0x17, 5 },
1923     { 0x16, 5 },
1924     { 0x33, 6 }
1925   },
1926   {  /* AC bias group 2, table 12 */
1927     { 0x5, 3 },
1928     { 0x6, 4 },
1929     { 0x3E, 6 },
1930     { 0x10, 5 },
1931     { 0x48, 7 },
1932     { 0x93F, 12 },
1933     { 0x24FA, 14 },
1934     { 0x32, 6 },
1935     { 0x67, 7 },
1936     { 0x2, 3 },
1937     { 0x1, 3 },
1938     { 0x1B, 5 },
1939     { 0x1E, 5 },
1940     { 0x34, 6 },
1941     { 0x66, 7 },
1942     { 0x92, 8 },
1943     { 0x126, 9 },
1944     { 0x24E, 10 },
1945     { 0x49E, 11 },
1946     { 0x49F7, 15 },
1947     { 0x49F6, 15 },
1948     { 0x24F9, 14 },
1949     { 0x24F8, 14 },
1950     { 0x0, 3 },
1951     { 0x7, 4 },
1952     { 0x18, 5 },
1953     { 0x11, 5 },
1954     { 0x3F, 6 },
1955     { 0xE, 4 },
1956     { 0x13, 5 },
1957     { 0x35, 6 },
1958     { 0x25, 6 }
1959   },
1960   {  /* AC bias group 2, table 13 */
1961     { 0x5, 3 },
1962     { 0x8, 4 },
1963     { 0x12, 5 },
1964     { 0x1C, 5 },
1965     { 0x1C, 6 },
1966     { 0xEA, 9 },
1967     { 0x1D75, 14 },
1968     { 0x1E, 6 },
1969     { 0x66, 7 },
1970     { 0x1, 3 },
1971     { 0x2, 3 },
1972     { 0x1B, 5 },
1973     { 0x1A, 5 },
1974     { 0x1F, 6 },
1975     { 0x3B, 7 },
1976     { 0x74, 8 },
1977     { 0x1D6, 10 },
1978     { 0x3AF, 11 },
1979     { 0x1D74, 14 },
1980     { 0x1D77, 14 },
1981     { 0x1D76, 14 },
1982     { 0xEB9, 13 },
1983     { 0xEB8, 13 },
1984     { 0xF, 4 },
1985     { 0x6, 4 },
1986     { 0x13, 5 },
1987     { 0x3B, 6 },
1988     { 0x3A, 6 },
1989     { 0x0, 3 },
1990     { 0x18, 5 },
1991     { 0x32, 6 },
1992     { 0x67, 7 }
1993   },
1994   {  /* AC bias group 2, table 14 */
1995     { 0x4, 3 },
1996     { 0xA, 4 },
1997     { 0x1B, 5 },
1998     { 0xC, 4 },
1999     { 0xD, 5 },
2000     { 0xE6, 8 },
2001     { 0x684, 11 },
2002     { 0x72, 7 },
2003     { 0xE7, 8 },
2004     { 0x2, 3 },
2005     { 0x1, 3 },
2006     { 0x17, 5 },
2007     { 0x16, 5 },
2008     { 0x18, 6 },
2009     { 0xD1, 8 },
2010     { 0x1A0, 9 },
2011     { 0x686, 11 },
2012     { 0xD0F, 12 },
2013     { 0xD0A, 12 },
2014     { 0x1A17, 13 },
2015     { 0x1A16, 13 },
2016     { 0x1A1D, 13 },
2017     { 0x1A1C, 13 },
2018     { 0xF, 4 },
2019     { 0x1D, 5 },
2020     { 0xE, 5 },
2021     { 0x35, 6 },
2022     { 0x38, 6 },
2023     { 0x0, 3 },
2024     { 0xF, 5 },
2025     { 0x19, 6 },
2026     { 0x69, 7 }
2027   },
2028   {  /* AC bias group 2, table 15 */
2029     { 0x3, 3 },
2030     { 0xC, 4 },
2031     { 0x1B, 5 },
2032     { 0x0, 3 },
2033     { 0x3, 4 },
2034     { 0x2E, 6 },
2035     { 0x51, 9 },
2036     { 0xBC, 8 },
2037     { 0x53, 9 },
2038     { 0x4, 3 },
2039     { 0x2, 3 },
2040     { 0x16, 5 },
2041     { 0x15, 5 },
2042     { 0x15, 7 },
2043     { 0x50, 9 },
2044     { 0xA4, 10 },
2045     { 0x294, 12 },
2046     { 0x52B, 13 },
2047     { 0x52A, 13 },
2048     { 0x52D, 13 },
2049     { 0x52C, 13 },
2050     { 0x52F, 13 },
2051     { 0x52E, 13 },
2052     { 0xE, 4 },
2053     { 0x1A, 5 },
2054     { 0x4, 5 },
2055     { 0x28, 6 },
2056     { 0x29, 6 },
2057     { 0xF, 4 },
2058     { 0xB, 6 },
2059     { 0x5F, 7 },
2060     { 0xBD, 8 }
2061   }
2062 };
2063
2064 static const uint16_t ac_bias_2[16][32][2] = {
2065   {  /* AC bias group 3, table 0 */
2066     { 0x3, 4 },
2067     { 0x9, 6 },
2068     { 0xD0, 8 },
2069     { 0x1A3, 9 },
2070     { 0x344, 10 },
2071     { 0xD14, 12 },
2072     { 0x1A2B, 13 },
2073     { 0x4, 4 },
2074     { 0x15, 7 },
2075     { 0x0, 3 },
2076     { 0xF, 4 },
2077     { 0xB, 4 },
2078     { 0xC, 4 },
2079     { 0xE, 4 },
2080     { 0x9, 4 },
2081     { 0x1B, 5 },
2082     { 0xA, 5 },
2083     { 0x14, 5 },
2084     { 0xD, 5 },
2085     { 0x2A, 6 },
2086     { 0x14, 7 },
2087     { 0x68B, 11 },
2088     { 0x1A2A, 13 },
2089     { 0x8, 4 },
2090     { 0xB, 5 },
2091     { 0x2B, 6 },
2092     { 0xB, 6 },
2093     { 0x69, 7 },
2094     { 0x35, 6 },
2095     { 0x8, 6 },
2096     { 0x7, 4 },
2097     { 0xC, 5 }
2098   },
2099   {  /* AC bias group 3, table 1 */
2100     { 0xA, 4 },
2101     { 0x3C, 6 },
2102     { 0x32, 7 },
2103     { 0x30, 7 },
2104     { 0xC5, 9 },
2105     { 0x621, 12 },
2106     { 0x620, 12 },
2107     { 0x1F, 5 },
2108     { 0x33, 7 },
2109     { 0x1, 3 },
2110     { 0x0, 3 },
2111     { 0xE, 4 },
2112     { 0xD, 4 },
2113     { 0xC, 4 },
2114     { 0x4, 4 },
2115     { 0xD, 5 },
2116     { 0x26, 6 },
2117     { 0x27, 6 },
2118     { 0x14, 6 },
2119     { 0x63, 8 },
2120     { 0x189, 10 },
2121     { 0x623, 12 },
2122     { 0x622, 12 },
2123     { 0xB, 4 },
2124     { 0x12, 5 },
2125     { 0x3D, 6 },
2126     { 0x22, 6 },
2127     { 0x15, 6 },
2128     { 0xB, 5 },
2129     { 0x23, 6 },
2130     { 0x7, 4 },
2131     { 0x10, 5 }
2132   },
2133   {  /* AC bias group 3, table 2 */
2134     { 0xF, 4 },
2135     { 0xC, 5 },
2136     { 0x43, 7 },
2137     { 0x10, 6 },
2138     { 0x44, 8 },
2139     { 0x114, 10 },
2140     { 0x455, 12 },
2141     { 0x18, 5 },
2142     { 0x23, 7 },
2143     { 0x1, 3 },
2144     { 0x0, 3 },
2145     { 0xE, 4 },
2146     { 0xD, 4 },
2147     { 0x9, 4 },
2148     { 0x19, 5 },
2149     { 0x9, 5 },
2150     { 0x17, 6 },
2151     { 0x16, 6 },
2152     { 0x42, 7 },
2153     { 0x8B, 9 },
2154     { 0x454, 12 },
2155     { 0x457, 12 },
2156     { 0x456, 12 },
2157     { 0xB, 4 },
2158     { 0x15, 5 },
2159     { 0xA, 5 },
2160     { 0x29, 6 },
2161     { 0x20, 6 },
2162     { 0xD, 5 },
2163     { 0x28, 6 },
2164     { 0x7, 4 },
2165     { 0x11, 5 }
2166   },
2167   {  /* AC bias group 3, table 3 */
2168     { 0x1, 3 },
2169     { 0x1A, 5 },
2170     { 0x29, 6 },
2171     { 0x2A, 6 },
2172     { 0xA0, 8 },
2173     { 0x285, 10 },
2174     { 0x1425, 13 },
2175     { 0x2, 5 },
2176     { 0x0, 7 },
2177     { 0x2, 3 },
2178     { 0x3, 3 },
2179     { 0xC, 4 },
2180     { 0xB, 4 },
2181     { 0x8, 4 },
2182     { 0x12, 5 },
2183     { 0x1, 6 },
2184     { 0x51, 7 },
2185     { 0x1, 7 },
2186     { 0x143, 9 },
2187     { 0x508, 11 },
2188     { 0x1424, 13 },
2189     { 0x1427, 13 },
2190     { 0x1426, 13 },
2191     { 0xF, 4 },
2192     { 0x1C, 5 },
2193     { 0x3, 5 },
2194     { 0x37, 6 },
2195     { 0x2B, 6 },
2196     { 0x13, 5 },
2197     { 0x36, 6 },
2198     { 0x1D, 5 },
2199     { 0x1, 5 }
2200   },
2201   {  /* AC bias group 3, table 4 */
2202     { 0x4, 3 },
2203     { 0x1F, 5 },
2204     { 0x3D, 6 },
2205     { 0x6, 5 },
2206     { 0x16, 7 },
2207     { 0x53, 9 },
2208     { 0x14A, 11 },
2209     { 0x34, 6 },
2210     { 0x2A, 8 },
2211     { 0x2, 3 },
2212     { 0x3, 3 },
2213     { 0xB, 4 },
2214     { 0xC, 4 },
2215     { 0x1C, 5 },
2216     { 0x37, 6 },
2217     { 0x17, 7 },
2218     { 0x2B, 8 },
2219     { 0x28, 8 },
2220     { 0xA4, 10 },
2221     { 0x52D, 13 },
2222     { 0x52C, 13 },
2223     { 0x52F, 13 },
2224     { 0x52E, 13 },
2225     { 0x0, 3 },
2226     { 0x1D, 5 },
2227     { 0x7, 5 },
2228     { 0x4, 5 },
2229     { 0x35, 6 },
2230     { 0x14, 5 },
2231     { 0x36, 6 },
2232     { 0x15, 5 },
2233     { 0x3C, 6 }
2234   },
2235   {  /* AC bias group 3, table 5 */
2236     { 0x4, 3 },
2237     { 0xA, 4 },
2238     { 0x7, 5 },
2239     { 0x1D, 5 },
2240     { 0x9, 6 },
2241     { 0x1F3, 9 },
2242     { 0x7C7, 11 },
2243     { 0x8, 6 },
2244     { 0x1F0, 9 },
2245     { 0x3, 3 },
2246     { 0x2, 3 },
2247     { 0xD, 4 },
2248     { 0xC, 4 },
2249     { 0x17, 5 },
2250     { 0x7D, 7 },
2251     { 0x1F2, 9 },
2252     { 0x7C6, 11 },
2253     { 0x7C5, 11 },
2254     { 0x1F12, 13 },
2255     { 0x3E27, 14 },
2256     { 0x3E26, 14 },
2257     { 0x1F11, 13 },
2258     { 0x1F10, 13 },
2259     { 0x0, 3 },
2260     { 0x1E, 5 },
2261     { 0x6, 5 },
2262     { 0x39, 6 },
2263     { 0x38, 6 },
2264     { 0x3F, 6 },
2265     { 0x2C, 6 },
2266     { 0x5, 5 },
2267     { 0x2D, 6 }
2268   },
2269   {  /* AC bias group 3, table 6 */
2270     { 0x2, 3 },
2271     { 0x7, 4 },
2272     { 0x18, 5 },
2273     { 0x3, 4 },
2274     { 0x5, 5 },
2275     { 0x35, 7 },
2276     { 0x4F, 9 },
2277     { 0x12, 7 },
2278     { 0x4E5, 13 },
2279     { 0x5, 3 },
2280     { 0x4, 3 },
2281     { 0xD, 4 },
2282     { 0xE, 4 },
2283     { 0x33, 6 },
2284     { 0x26, 8 },
2285     { 0x9D, 10 },
2286     { 0x4E4, 13 },
2287     { 0x4E7, 13 },
2288     { 0x4E6, 13 },
2289     { 0x4E1, 13 },
2290     { 0x4E0, 13 },
2291     { 0x4E3, 13 },
2292     { 0x4E2, 13 },
2293     { 0x0, 3 },
2294     { 0x1F, 5 },
2295     { 0xC, 5 },
2296     { 0x3D, 6 },
2297     { 0x3C, 6 },
2298     { 0x32, 6 },
2299     { 0x34, 7 },
2300     { 0x1B, 6 },
2301     { 0x8, 6 }
2302   },
2303   {  /* AC bias group 3, table 7 */
2304     { 0x0, 3 },
2305     { 0x4, 4 },
2306     { 0x1C, 5 },
2307     { 0xF, 4 },
2308     { 0x2, 4 },
2309     { 0x7, 5 },
2310     { 0x75, 7 },
2311     { 0xE8, 8 },
2312     { 0x1D2A, 13 },
2313     { 0x5, 3 },
2314     { 0x4, 3 },
2315     { 0xD, 4 },
2316     { 0xC, 4 },
2317     { 0x77, 7 },
2318     { 0xE96, 12 },
2319     { 0x3A57, 14 },
2320     { 0x3A56, 14 },
2321     { 0x3A5D, 14 },
2322     { 0x3A5C, 14 },
2323     { 0x3A5F, 14 },
2324     { 0x3A5E, 14 },
2325     { 0x1D29, 13 },
2326     { 0x1D28, 13 },
2327     { 0x3, 3 },
2328     { 0x6, 5 },
2329     { 0xA, 5 },
2330     { 0x2C, 7 },
2331     { 0x17, 6 },
2332     { 0x76, 7 },
2333     { 0x1D3, 9 },
2334     { 0x3A4, 10 },
2335     { 0x2D, 7 }
2336   },
2337   {  /* AC bias group 3, table 8 */
2338     { 0xA, 4 },
2339     { 0x24, 6 },
2340     { 0xBF, 8 },
2341     { 0x85, 8 },
2342     { 0x211, 10 },
2343     { 0x842, 12 },
2344     { 0x1087, 13 },
2345     { 0x18, 5 },
2346     { 0x20, 6 },
2347     { 0x1, 3 },
2348     { 0x2, 3 },
2349     { 0xE, 4 },
2350     { 0xD, 4 },
2351     { 0x7, 4 },
2352     { 0x13, 5 },
2353     { 0x25, 6 },
2354     { 0x5E, 7 },
2355     { 0x43, 7 },
2356     { 0xBE, 8 },
2357     { 0x109, 9 },
2358     { 0x1086, 13 },
2359     { 0x841, 12 },
2360     { 0x840, 12 },
2361     { 0xF, 4 },
2362     { 0x1, 4 },
2363     { 0x11, 5 },
2364     { 0x0, 5 },
2365     { 0x2E, 6 },
2366     { 0x19, 5 },
2367     { 0x1, 5 },
2368     { 0x6, 4 },
2369     { 0x16, 5 }
2370   },
2371   {  /* AC bias group 3, table 9 */
2372     { 0x2, 3 },
2373     { 0xF, 5 },
2374     { 0x6F, 7 },
2375     { 0x61, 7 },
2376     { 0x374, 10 },
2377     { 0x1BA8, 13 },
2378     { 0x3753, 14 },
2379     { 0x12, 5 },
2380     { 0x36, 6 },
2381     { 0x0, 3 },
2382     { 0x1, 3 },
2383     { 0xA, 4 },
2384     { 0xB, 4 },
2385     { 0x1A, 5 },
2386     { 0x31, 6 },
2387     { 0x60, 7 },
2388     { 0xDC, 8 },
2389     { 0x1BB, 9 },
2390     { 0x6EB, 11 },
2391     { 0x1BAB, 13 },
2392     { 0x3752, 14 },
2393     { 0x3755, 14 },
2394     { 0x3754, 14 },
2395     { 0xE, 4 },
2396     { 0x6, 4 },
2397     { 0x13, 5 },
2398     { 0xE, 5 },
2399     { 0x3E, 6 },
2400     { 0x8, 4 },
2401     { 0x1E, 5 },
2402     { 0x19, 5 },
2403     { 0x3F, 6 }
2404   },
2405   {  /* AC bias group 3, table 10 */
2406     { 0x3, 3 },
2407     { 0x1C, 5 },
2408     { 0x25, 6 },
2409     { 0x24, 6 },
2410     { 0x1DA, 9 },
2411     { 0x1DBD, 13 },
2412     { 0x3B7C, 14 },
2413     { 0x3C, 6 },
2414     { 0x3D, 6 },
2415     { 0x0, 3 },
2416     { 0x1, 3 },
2417     { 0xB, 4 },
2418     { 0xA, 4 },
2419     { 0xB, 5 },
2420     { 0x77, 7 },
2421     { 0xEC, 8 },
2422     { 0x3B6, 10 },
2423     { 0x76E, 11 },
2424     { 0x1DBF, 13 },
2425     { 0x76FB, 15 },
2426     { 0x76FA, 15 },
2427     { 0x3B79, 14 },
2428     { 0x3B78, 14 },
2429     { 0xD, 4 },
2430     { 0x1F, 5 },
2431     { 0x13, 5 },
2432     { 0xA, 5 },
2433     { 0x8, 5 },
2434     { 0xC, 4 },
2435     { 0x8, 4 },
2436     { 0x9, 5 },
2437     { 0x3A, 6 }
2438   },
2439   {  /* AC bias group 3, table 11 */
2440     { 0x5, 3 },
2441     { 0x3, 4 },
2442     { 0x4, 5 },
2443     { 0x10, 5 },
2444     { 0x8F, 8 },
2445     { 0x475, 11 },
2446     { 0x11D1, 13 },
2447     { 0x79, 7 },
2448     { 0x27, 6 },
2449     { 0x2, 3 },
2450     { 0x3, 3 },
2451     { 0x1, 4 },
2452     { 0x0, 4 },
2453     { 0x26, 6 },
2454     { 0x46, 7 },
2455     { 0x11C, 9 },
2456     { 0x477, 11 },
2457     { 0x8ED, 12 },
2458     { 0x11D0, 13 },
2459     { 0x11D3, 13 },
2460     { 0x11D2, 13 },
2461     { 0x11D9, 13 },
2462     { 0x11D8, 13 },
2463     { 0xD, 4 },
2464     { 0x1F, 5 },
2465     { 0x12, 5 },
2466     { 0x5, 5 },
2467     { 0x3D, 6 },
2468     { 0xC, 4 },
2469     { 0xE, 4 },
2470     { 0x22, 6 },
2471     { 0x78, 7 }
2472   },
2473   {  /* AC bias group 3, table 12 */
2474     { 0x5, 3 },
2475     { 0xC, 4 },
2476     { 0x1B, 5 },
2477     { 0x0, 4 },
2478     { 0x6, 6 },
2479     { 0x3E2, 10 },
2480     { 0x3E3D, 14 },
2481     { 0xF, 7 },
2482     { 0x34, 6 },
2483     { 0x3, 3 },
2484     { 0x2, 3 },
2485     { 0x1E, 5 },
2486     { 0x1D, 5 },
2487     { 0x7D, 7 },
2488     { 0x1F0, 9 },
2489     { 0x7C6, 11 },
2490     { 0x3E3C, 14 },
2491     { 0x3E3F, 14 },
2492     { 0x3E3E, 14 },
2493     { 0x3E39, 14 },
2494     { 0x3E38, 14 },
2495     { 0x3E3B, 14 },
2496     { 0x3E3A, 14 },
2497     { 0x8, 4 },
2498     { 0x1C, 5 },
2499     { 0x2, 5 },
2500     { 0x3F, 6 },
2501     { 0x35, 6 },
2502     { 0x9, 4 },
2503     { 0x1, 3 },
2504     { 0xE, 7 },
2505     { 0xF9, 8 }
2506   },
2507   {  /* AC bias group 3, table 13 */
2508     { 0x4, 3 },
2509     { 0xB, 4 },
2510     { 0x1, 4 },
2511     { 0xA, 4 },
2512     { 0x1E, 6 },
2513     { 0xE0, 9 },
2514     { 0xE1E, 13 },
2515     { 0x71, 8 },
2516     { 0x39, 7 },
2517     { 0x7, 3 },
2518     { 0x6, 3 },
2519     { 0xD, 5 },
2520     { 0xC, 5 },
2521     { 0x20, 7 },
2522     { 0x1C2, 10 },
2523     { 0x1C3F, 14 },
2524     { 0x1C3E, 14 },
2525     { 0xE19, 13 },
2526     { 0xE18, 13 },
2527     { 0xE1B, 13 },
2528     { 0xE1A, 13 },
2529     { 0xE1D, 13 },
2530     { 0xE1C, 13 },
2531     { 0x0, 4 },
2532     { 0x9, 5 },
2533     { 0x1D, 6 },
2534     { 0x1F, 6 },
2535     { 0x11, 6 },
2536     { 0x5, 4 },
2537     { 0x1, 3 },
2538     { 0x43, 8 },
2539     { 0x42, 8 }
2540   },
2541   {  /* AC bias group 3, table 14 */
2542     { 0x4, 3 },
2543     { 0xD, 4 },
2544     { 0x7, 4 },
2545     { 0x2, 3 },
2546     { 0x14, 5 },
2547     { 0x16C, 9 },
2548     { 0x16D1, 13 },
2549     { 0x2DF, 10 },
2550     { 0x16E, 9 },
2551     { 0x0, 2 },
2552     { 0x7, 3 },
2553     { 0x2C, 6 },
2554     { 0x2B, 6 },
2555     { 0x2DE, 10 },
2556     { 0x16D0, 13 },
2557     { 0x16D3, 13 },
2558     { 0x16D2, 13 },
2559     { 0x2DB5, 14 },
2560     { 0x2DB4, 14 },
2561     { 0x2DB7, 14 },
2562     { 0x2DB6, 14 },
2563     { 0x16D9, 13 },
2564     { 0x16D8, 13 },
2565     { 0xC, 5 },
2566     { 0x2A, 6 },
2567     { 0x5A, 7 },
2568     { 0x1B, 6 },
2569     { 0x1A, 6 },
2570     { 0x17, 5 },
2571     { 0xC, 4 },
2572     { 0x5B7, 11 },
2573     { 0x5B5, 11 }
2574   },
2575   {  /* AC bias group 3, table 15 */
2576     { 0x2, 2 },
2577     { 0xF, 4 },
2578     { 0x1C, 5 },
2579     { 0xC, 4 },
2580     { 0x3B, 6 },
2581     { 0x1AC, 9 },
2582     { 0x1AD8, 13 },
2583     { 0x35B3, 14 },
2584     { 0x35B2, 14 },
2585     { 0x1, 2 },
2586     { 0x0, 2 },
2587     { 0x69, 7 },
2588     { 0x68, 7 },
2589     { 0x35BD, 14 },
2590     { 0x35BC, 14 },
2591     { 0x35BF, 14 },
2592     { 0x35BE, 14 },
2593     { 0x35B9, 14 },
2594     { 0x35B8, 14 },
2595     { 0x35BB, 14 },
2596     { 0x35BA, 14 },
2597     { 0x35B5, 14 },
2598     { 0x35B4, 14 },
2599     { 0x1A9, 9 },
2600     { 0x1A8, 9 },
2601     { 0x35A, 10 },
2602     { 0xD7, 8 },
2603     { 0xD5, 8 },
2604     { 0x3A, 6 },
2605     { 0x1B, 5 },
2606     { 0x35B7, 14 },
2607     { 0x35B6, 14 }
2608   }
2609 };
2610
2611 static const uint16_t ac_bias_3[16][32][2] = {
2612   {  /* AC bias group 4, table 0 */
2613     { 0x0, 3 },
2614     { 0x10, 5 },
2615     { 0x72, 7 },
2616     { 0x71, 7 },
2617     { 0x154, 9 },
2618     { 0xAAB, 12 },
2619     { 0xAA8, 12 },
2620     { 0x14, 5 },
2621     { 0x70, 7 },
2622     { 0x2, 3 },
2623     { 0x3, 3 },
2624     { 0xC, 4 },
2625     { 0xB, 4 },
2626     { 0x3, 4 },
2627     { 0x11, 5 },
2628     { 0x73, 7 },
2629     { 0x54, 7 },
2630     { 0xAB, 8 },
2631     { 0x2AB, 10 },
2632     { 0x1553, 13 },
2633     { 0x1552, 13 },
2634     { 0x1555, 13 },
2635     { 0x1554, 13 },
2636     { 0xD, 4 },
2637     { 0x1E, 5 },
2638     { 0x12, 5 },
2639     { 0x3E, 6 },
2640     { 0x2B, 6 },
2641     { 0x2, 4 },
2642     { 0x3F, 6 },
2643     { 0x1D, 5 },
2644     { 0x13, 5 }
2645   },
2646   {  /* AC bias group 4, table 1 */
2647     { 0x3, 3 },
2648     { 0x1F, 5 },
2649     { 0x29, 6 },
2650     { 0x3D, 6 },
2651     { 0xC, 7 },
2652     { 0x69, 10 },
2653     { 0x345, 13 },
2654     { 0x2, 5 },
2655     { 0x28, 6 },
2656     { 0x2, 3 },
2657     { 0x1, 3 },
2658     { 0xE, 4 },
2659     { 0xC, 4 },
2660     { 0x15, 5 },
2661     { 0x7, 6 },
2662     { 0x1B, 8 },
2663     { 0x6B, 10 },
2664     { 0x6A, 10 },
2665     { 0x344, 13 },
2666     { 0x347, 13 },
2667     { 0x346, 13 },
2668     { 0x1A1, 12 },
2669     { 0x1A0, 12 },
2670     { 0xB, 4 },
2671     { 0x1A, 5 },
2672     { 0x12, 5 },
2673     { 0x0, 5 },
2674     { 0x3C, 6 },
2675     { 0x8, 4 },
2676     { 0x1B, 5 },
2677     { 0x13, 5 },
2678     { 0x1, 5 }
2679   },
2680   {  /* AC bias group 4, table 2 */
2681     { 0x4, 3 },
2682     { 0x4, 4 },
2683     { 0x3F, 6 },
2684     { 0x14, 5 },
2685     { 0x56, 7 },
2686     { 0x15C, 9 },
2687     { 0x15D5, 13 },
2688     { 0x3C, 6 },
2689     { 0x2A, 6 },
2690     { 0x0, 3 },
2691     { 0x1, 3 },
2692     { 0xE, 4 },
2693     { 0xD, 4 },
2694     { 0xC, 5 },
2695     { 0xAF, 8 },
2696     { 0x2BB, 10 },
2697     { 0x15D4, 13 },
2698     { 0x15D7, 13 },
2699     { 0x15D6, 13 },
2700     { 0x15D1, 13 },
2701     { 0x15D0, 13 },
2702     { 0x15D3, 13 },
2703     { 0x15D2, 13 },
2704     { 0xB, 4 },
2705     { 0x19, 5 },
2706     { 0xD, 5 },
2707     { 0x3E, 6 },
2708     { 0x31, 6 },
2709     { 0x7, 4 },
2710     { 0x5, 4 },
2711     { 0x3D, 6 },
2712     { 0x30, 6 }
2713   },
2714   {  /* AC bias group 4, table 3 */
2715     { 0x5, 3 },
2716     { 0x8, 4 },
2717     { 0x1A, 5 },
2718     { 0x0, 4 },
2719     { 0x36, 6 },
2720     { 0x11, 8 },
2721     { 0x106, 12 },
2722     { 0xA, 7 },
2723     { 0x6E, 7 },
2724     { 0x2, 3 },
2725     { 0x3, 3 },
2726     { 0x3, 4 },
2727     { 0x2, 4 },
2728     { 0x6F, 7 },
2729     { 0x21, 9 },
2730     { 0x20F, 13 },
2731     { 0x20E, 13 },
2732     { 0x101, 12 },
2733     { 0x100, 12 },
2734     { 0x103, 12 },
2735     { 0x102, 12 },
2736     { 0x105, 12 },
2737     { 0x104, 12 },
2738     { 0xC, 4 },
2739     { 0x1E, 5 },
2740     { 0x3, 5 },
2741     { 0x3E, 6 },
2742     { 0x3F, 6 },
2743     { 0x9, 4 },
2744     { 0xE, 4 },
2745     { 0xB, 7 },
2746     { 0x9, 7 }
2747   },
2748   {  /* AC bias group 4, table 4 */
2749     { 0x2, 3 },
2750     { 0xE, 4 },
2751     { 0x1E, 5 },
2752     { 0xC, 4 },
2753     { 0x1F, 5 },
2754     { 0x6E, 7 },
2755     { 0xAD, 10 },
2756     { 0xAF, 10 },
2757     { 0x14, 7 },
2758     { 0x4, 3 },
2759     { 0x3, 3 },
2760     { 0x1A, 5 },
2761     { 0x17, 5 },
2762     { 0x2A, 8 },
2763     { 0x576, 13 },
2764     { 0xAEF, 14 },
2765     { 0xAEE, 14 },
2766     { 0x571, 13 },
2767     { 0x570, 13 },
2768     { 0x573, 13 },
2769     { 0x572, 13 },
2770     { 0x575, 13 },
2771     { 0x574, 13 },
2772     { 0x3, 4 },
2773     { 0x16, 5 },
2774     { 0x4, 5 },
2775     { 0x36, 6 },
2776     { 0xB, 6 },
2777     { 0xA, 4 },
2778     { 0x0, 3 },
2779     { 0x6F, 7 },
2780     { 0xAC, 10 }
2781   },
2782   {  /* AC bias group 4, table 5 */
2783     { 0x4, 3 },
2784     { 0x5, 4 },
2785     { 0x3, 3 },
2786     { 0x1, 3 },
2787     { 0x4, 4 },
2788     { 0x2F, 6 },
2789     { 0x526, 11 },
2790     { 0x1495, 13 },
2791     { 0xA6, 8 },
2792     { 0x7, 3 },
2793     { 0x6, 3 },
2794     { 0x2D, 6 },
2795     { 0x2C, 6 },
2796     { 0x1494, 13 },
2797     { 0x1497, 13 },
2798     { 0x1496, 13 },
2799     { 0x1491, 13 },
2800     { 0x1490, 13 },
2801     { 0x1493, 13 },
2802     { 0x1492, 13 },
2803     { 0x293D, 14 },
2804     { 0x293C, 14 },
2805     { 0x293F, 14 },
2806     { 0x0, 3 },
2807     { 0x28, 6 },
2808     { 0xA5, 8 },
2809     { 0x148, 9 },
2810     { 0xA7, 8 },
2811     { 0x2E, 6 },
2812     { 0x15, 5 },
2813     { 0xA4E, 12 },
2814     { 0x293E, 14 }
2815   },
2816   {  /* AC bias group 4, table 6 */
2817     { 0x4, 3 },
2818     { 0x5, 4 },
2819     { 0x3, 3 },
2820     { 0x1, 3 },
2821     { 0x4, 4 },
2822     { 0x2F, 6 },
2823     { 0x526, 11 },
2824     { 0x1495, 13 },
2825     { 0xA6, 8 },
2826     { 0x7, 3 },
2827     { 0x6, 3 },
2828     { 0x2D, 6 },
2829     { 0x2C, 6 },
2830     { 0x1494, 13 },
2831     { 0x1497, 13 },
2832     { 0x1496, 13 },
2833     { 0x1491, 13 },
2834     { 0x1490, 13 },
2835     { 0x1493, 13 },
2836     { 0x1492, 13 },
2837     { 0x293D, 14 },
2838     { 0x293C, 14 },
2839     { 0x293F, 14 },
2840     { 0x0, 3 },
2841     { 0x28, 6 },
2842     { 0xA5, 8 },
2843     { 0x148, 9 },
2844     { 0xA7, 8 },
2845     { 0x2E, 6 },
2846     { 0x15, 5 },
2847     { 0xA4E, 12 },
2848     { 0x293E, 14 }
2849   },
2850   {  /* AC bias group 4, table 7 */
2851     { 0x4, 3 },
2852     { 0x5, 4 },
2853     { 0x3, 3 },
2854     { 0x1, 3 },
2855     { 0x4, 4 },
2856     { 0x2F, 6 },
2857     { 0x526, 11 },
2858     { 0x1495, 13 },
2859     { 0xA6, 8 },
2860     { 0x7, 3 },
2861     { 0x6, 3 },
2862     { 0x2D, 6 },
2863     { 0x2C, 6 },
2864     { 0x1494, 13 },
2865     { 0x1497, 13 },
2866     { 0x1496, 13 },
2867     { 0x1491, 13 },
2868     { 0x1490, 13 },
2869     { 0x1493, 13 },
2870     { 0x1492, 13 },
2871     { 0x293D, 14 },
2872     { 0x293C, 14 },
2873     { 0x293F, 14 },
2874     { 0x0, 3 },
2875     { 0x28, 6 },
2876     { 0xA5, 8 },
2877     { 0x148, 9 },
2878     { 0xA7, 8 },
2879     { 0x2E, 6 },
2880     { 0x15, 5 },
2881     { 0xA4E, 12 },
2882     { 0x293E, 14 }
2883   },
2884   {  /* AC bias group 4, table 8 */
2885     { 0x3, 3 },
2886     { 0x11, 5 },
2887     { 0x20, 6 },
2888     { 0x74, 7 },
2889     { 0x10D, 9 },
2890     { 0x863, 12 },
2891     { 0x860, 12 },
2892     { 0xA, 5 },
2893     { 0x75, 7 },
2894     { 0x1, 3 },
2895     { 0x0, 3 },
2896     { 0xB, 4 },
2897     { 0xA, 4 },
2898     { 0x18, 5 },
2899     { 0x38, 6 },
2900     { 0x42, 7 },
2901     { 0x10F, 9 },
2902     { 0x10E, 9 },
2903     { 0x219, 10 },
2904     { 0x10C3, 13 },
2905     { 0x10C2, 13 },
2906     { 0x10C5, 13 },
2907     { 0x10C4, 13 },
2908     { 0xF, 4 },
2909     { 0x4, 4 },
2910     { 0x19, 5 },
2911     { 0xB, 5 },
2912     { 0x39, 6 },
2913     { 0x9, 4 },
2914     { 0x1B, 5 },
2915     { 0x1A, 5 },
2916     { 0x3B, 6 }
2917   },
2918   {  /* AC bias group 4, table 9 */
2919     { 0x5, 3 },
2920     { 0x1, 4 },
2921     { 0x3E, 6 },
2922     { 0x1, 5 },
2923     { 0xE2, 8 },
2924     { 0x1C6F, 13 },
2925     { 0x38D9, 14 },
2926     { 0x39, 6 },
2927     { 0x1F, 6 },
2928     { 0x2, 3 },
2929     { 0x1, 3 },
2930     { 0x9, 4 },
2931     { 0x8, 4 },
2932     { 0x0, 5 },
2933     { 0x70, 7 },
2934     { 0x1C7, 9 },
2935     { 0x38C, 10 },
2936     { 0x71A, 11 },
2937     { 0x38D8, 14 },
2938     { 0x38DB, 14 },
2939     { 0x38DA, 14 },
2940     { 0x38DD, 14 },
2941     { 0x38DC, 14 },
2942     { 0xD, 4 },
2943     { 0x1D, 5 },
2944     { 0xE, 5 },
2945     { 0x3F, 6 },
2946     { 0x3C, 6 },
2947     { 0xC, 4 },
2948     { 0x6, 4 },
2949     { 0x3D, 6 },
2950     { 0x1E, 6 }
2951   },
2952   {  /* AC bias group 4, table 10 */
2953     { 0x6, 3 },
2954     { 0xB, 4 },
2955     { 0x11, 5 },
2956     { 0x1E, 5 },
2957     { 0x74, 7 },
2958     { 0x3AA, 10 },
2959     { 0x1D5C, 13 },
2960     { 0x1, 6 },
2961     { 0x21, 6 },
2962     { 0x1, 3 },
2963     { 0x2, 3 },
2964     { 0x7, 4 },
2965     { 0x6, 4 },
2966     { 0x3E, 6 },
2967     { 0xEB, 8 },
2968     { 0x1D4, 9 },
2969     { 0xEAF, 12 },
2970     { 0x3ABB, 14 },
2971     { 0x3ABA, 14 },
2972     { 0x1D59, 13 },
2973     { 0x1D58, 13 },
2974     { 0x1D5B, 13 },
2975     { 0x1D5A, 13 },
2976     { 0xA, 4 },
2977     { 0x1C, 5 },
2978     { 0x1, 5 },
2979     { 0x3F, 6 },
2980     { 0x3B, 6 },
2981     { 0x1, 4 },
2982     { 0x9, 4 },
2983     { 0x20, 6 },
2984     { 0x0, 6 }
2985   },
2986   {  /* AC bias group 4, table 11 */
2987     { 0x4, 3 },
2988     { 0xA, 4 },
2989     { 0x17, 5 },
2990     { 0x4, 4 },
2991     { 0x16, 6 },
2992     { 0x16A, 9 },
2993     { 0x16B1, 13 },
2994     { 0x17, 7 },
2995     { 0x5B, 7 },
2996     { 0x6, 3 },
2997     { 0x7, 3 },
2998     { 0x1, 4 },
2999     { 0x0, 4 },
3000     { 0xA, 6 },
3001     { 0x2D7, 10 },
3002     { 0xB5A, 12 },
3003     { 0x16B0, 13 },
3004     { 0x16B3, 13 },
3005     { 0x16B2, 13 },
3006     { 0x2D6D, 14 },
3007     { 0x2D6C, 14 },
3008     { 0x2D6F, 14 },
3009     { 0x2D6E, 14 },
3010     { 0x6, 4 },
3011     { 0xA, 5 },
3012     { 0x4, 5 },
3013     { 0x2C, 6 },
3014     { 0x17, 6 },
3015     { 0x3, 4 },
3016     { 0x7, 4 },
3017     { 0x16, 7 },
3018     { 0xB4, 8 }
3019   },
3020   {  /* AC bias group 4, table 12 */
3021     { 0x5, 3 },
3022     { 0xD, 4 },
3023     { 0x5, 4 },
3024     { 0x9, 4 },
3025     { 0x33, 6 },
3026     { 0x193, 9 },
3027     { 0x192C, 13 },
3028     { 0x61, 8 },
3029     { 0x31, 7 },
3030     { 0x0, 2 },
3031     { 0x7, 3 },
3032     { 0x10, 5 },
3033     { 0x11, 5 },
3034     { 0xC8, 8 },
3035     { 0x192F, 13 },
3036     { 0x325B, 14 },
3037     { 0x325A, 14 },
3038     { 0x1929, 13 },
3039     { 0x1928, 13 },
3040     { 0x192B, 13 },
3041     { 0x192A, 13 },
3042     { 0x325D, 14 },
3043     { 0x325C, 14 },
3044     { 0x18, 5 },
3045     { 0x1A, 6 },
3046     { 0x1B, 6 },
3047     { 0x65, 7 },
3048     { 0x19, 6 },
3049     { 0x4, 4 },
3050     { 0x7, 4 },
3051     { 0x60, 8 },
3052     { 0x324, 10 }
3053   },
3054   {  /* AC bias group 4, table 13 */
3055     { 0x6, 3 },
3056     { 0x0, 3 },
3057     { 0x2, 4 },
3058     { 0xF, 4 },
3059     { 0x39, 6 },
3060     { 0x1D9, 9 },
3061     { 0x1D82, 13 },
3062     { 0x761, 11 },
3063     { 0x3BE, 10 },
3064     { 0x1, 2 },
3065     { 0x2, 2 },
3066     { 0xF, 6 },
3067     { 0xE, 6 },
3068     { 0x762, 11 },
3069     { 0x3B07, 14 },
3070     { 0x3B06, 14 },
3071     { 0x3B1D, 14 },
3072     { 0x3B1C, 14 },
3073     { 0x3B1F, 14 },
3074     { 0x3B1E, 14 },
3075     { 0x3B19, 14 },
3076     { 0x3B18, 14 },
3077     { 0x3B1B, 14 },
3078     { 0x38, 6 },
3079     { 0x1DE, 9 },
3080     { 0xED, 8 },
3081     { 0x3BF, 10 },
3082     { 0xEE, 8 },
3083     { 0x3A, 6 },
3084     { 0x6, 5 },
3085     { 0xEC0, 12 },
3086     { 0x3B1A, 14 }
3087   },
3088   {  /* AC bias group 4, table 14 */
3089     { 0x0, 2 },
3090     { 0x2, 3 },
3091     { 0xF, 5 },
3092     { 0x6, 4 },
3093     { 0x1C, 6 },
3094     { 0x1D0, 10 },
3095     { 0xE8C, 13 },
3096     { 0x1D1B, 14 },
3097     { 0x1D1A, 14 },
3098     { 0x3, 2 },
3099     { 0x2, 2 },
3100     { 0xEA, 9 },
3101     { 0xE9, 9 },
3102     { 0xE89, 13 },
3103     { 0xE88, 13 },
3104     { 0xE8B, 13 },
3105     { 0xE8A, 13 },
3106     { 0x1D65, 14 },
3107     { 0x1D64, 14 },
3108     { 0x1D67, 14 },
3109     { 0x1D66, 14 },
3110     { 0x1D61, 14 },
3111     { 0x1D60, 14 },
3112     { 0x3AD, 11 },
3113     { 0x1D63, 14 },
3114     { 0x1D62, 14 },
3115     { 0x1D1D, 14 },
3116     { 0x1D1C, 14 },
3117     { 0x3B, 7 },
3118     { 0x1D7, 10 },
3119     { 0x1D1F, 14 },
3120     { 0x1D1E, 14 }
3121   },
3122   {  /* AC bias group 4, table 15 */
3123     { 0x2, 2 },
3124     { 0xF, 4 },
3125     { 0x1C, 5 },
3126     { 0xC, 4 },
3127     { 0x3B, 6 },
3128     { 0x1AC, 9 },
3129     { 0x1AD8, 13 },
3130     { 0x35B3, 14 },
3131     { 0x35B2, 14 },
3132     { 0x1, 2 },
3133     { 0x0, 2 },
3134     { 0x69, 7 },
3135     { 0x68, 7 },
3136     { 0x35BD, 14 },
3137     { 0x35BC, 14 },
3138     { 0x35BF, 14 },
3139     { 0x35BE, 14 },
3140     { 0x35B9, 14 },
3141     { 0x35B8, 14 },
3142     { 0x35BB, 14 },
3143     { 0x35BA, 14 },
3144     { 0x35B5, 14 },
3145     { 0x35B4, 14 },
3146     { 0x1A9, 9 },
3147     { 0x1A8, 9 },
3148     { 0x35A, 10 },
3149     { 0xD7, 8 },
3150     { 0xD5, 8 },
3151     { 0x3A, 6 },
3152     { 0x1B, 5 },
3153     { 0x35B7, 14 },
3154     { 0x35B6, 14 }
3155   }
3156 };
3157
3158 #endif /* VP3DATA_H */