OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [tags/] [stable/] [mp3/] [sw/] [mad-xess/] [libmad/] [huffman.c] - Blame information for rev 1765

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 291 simons
/*
2
 * mad - MPEG audio decoder
3
 * Copyright (C) 2000-2001 Robert Leslie
4
 *
5
 * This program is free software; you can redistribute it and/or modify
6
 * it under the terms of the GNU General Public License as published by
7
 * the Free Software Foundation; either version 2 of the License, or
8
 * (at your option) any later version.
9
 *
10
 * This program is distributed in the hope that it will be useful,
11
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
 * GNU General Public License for more details.
14
 *
15
 * You should have received a copy of the GNU General Public License
16
 * along with this program; if not, write to the Free Software
17
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18
 *
19
 * $Id: huffman.c,v 1.3 2001-11-06 17:01:28 simons Exp $
20
 */
21
 
22
# ifdef HAVE_CONFIG_H
23
#  include "config.h"
24
# endif
25
 
26
# include "global.h"
27
 
28
# include "huffman.h"
29
 
30
/*
31
 * These are the Huffman code words for Layer III.
32
 * The data for these tables are derived from Table B.7 of ISO/IEC 11172-3.
33
 *
34
 * These tables support decoding up to 4 Huffman code bits at a time.
35
 */
36
 
37
# define V(v, w, x, y, hlen)    {      { 1, hlen, v, w, x, y } }
38
# define PTR(offs, bits)        { ptr: { 0, bits, offs       } }
39
 
40
static
41
union huffquad const hufftabA[] = {
42
  /* 0000 */ PTR(16, 2),
43
  /* 0001 */ PTR(20, 2),
44
  /* 0010 */ PTR(24, 1),
45
  /* 0011 */ PTR(26, 1),
46
  /* 0100 */ V(0, 0, 1, 0, 4),
47
  /* 0101 */ V(0, 0, 0, 1, 4),
48
  /* 0110 */ V(0, 1, 0, 0, 4),
49
  /* 0111 */ V(1, 0, 0, 0, 4),
50
  /* 1000 */ V(0, 0, 0, 0, 1),
51
  /* 1001 */ V(0, 0, 0, 0, 1),
52
  /* 1010 */ V(0, 0, 0, 0, 1),
53
  /* 1011 */ V(0, 0, 0, 0, 1),
54
  /* 1100 */ V(0, 0, 0, 0, 1),
55
  /* 1101 */ V(0, 0, 0, 0, 1),
56
  /* 1110 */ V(0, 0, 0, 0, 1),
57
  /* 1111 */ V(0, 0, 0, 0, 1),
58
 
59
  /* 0000 ... */
60
  /* 00   */ V(1, 0, 1, 1, 2),   /* 16 */
61
  /* 01   */ V(1, 1, 1, 1, 2),
62
  /* 10   */ V(1, 1, 0, 1, 2),
63
  /* 11   */ V(1, 1, 1, 0, 2),
64
 
65
  /* 0001 ... */
66
  /* 00   */ V(0, 1, 1, 1, 2),   /* 20 */
67
  /* 01   */ V(0, 1, 0, 1, 2),
68
  /* 10   */ V(1, 0, 0, 1, 1),
69
  /* 11   */ V(1, 0, 0, 1, 1),
70
 
71
  /* 0010 ... */
72
  /* 0    */ V(0, 1, 1, 0, 1),    /* 24 */
73
  /* 1    */ V(0, 0, 1, 1, 1),
74
 
75
  /* 0011 ... */
76
  /* 0    */ V(1, 0, 1, 0, 1),    /* 26 */
77
  /* 1    */ V(1, 1, 0, 0, 1)
78
};
79
 
80
static
81
union huffquad const hufftabB[] = {
82
  /* 0000 */ V(1, 1, 1, 1, 4),
83
  /* 0001 */ V(1, 1, 1, 0, 4),
84
  /* 0010 */ V(1, 1, 0, 1, 4),
85
  /* 0011 */ V(1, 1, 0, 0, 4),
86
  /* 0100 */ V(1, 0, 1, 1, 4),
87
  /* 0101 */ V(1, 0, 1, 0, 4),
88
  /* 0110 */ V(1, 0, 0, 1, 4),
89
  /* 0111 */ V(1, 0, 0, 0, 4),
90
  /* 1000 */ V(0, 1, 1, 1, 4),
91
  /* 1001 */ V(0, 1, 1, 0, 4),
92
  /* 1010 */ V(0, 1, 0, 1, 4),
93
  /* 1011 */ V(0, 1, 0, 0, 4),
94
  /* 1100 */ V(0, 0, 1, 1, 4),
95
  /* 1101 */ V(0, 0, 1, 0, 4),
96
  /* 1110 */ V(0, 0, 0, 1, 4),
97
  /* 1111 */ V(0, 0, 0, 0, 4)
98
};
99
 
100
# undef V
101
# undef PTR
102
 
103
# define V(x, y, hlen)          {      { 1, hlen, x, y } }
104
# define PTR(offs, bits)        { ptr: { 0, bits, offs } }
105
 
106
static
107
union huffpair const hufftab0[] = {
108
  /*      */ V(0, 0, 0)
109
};
110
 
111
static
112
union huffpair const hufftab1[] = {
113
  /* 000  */ V(1, 1, 3),
114
  /* 001  */ V(0, 1, 3),
115
  /* 010  */ V(1, 0, 2),
116
  /* 011  */ V(1, 0, 2),
117
  /* 100  */ V(0, 0, 1),
118
  /* 101  */ V(0, 0, 1),
119
  /* 110  */ V(0, 0, 1),
120
  /* 111  */ V(0, 0, 1)
121
};
122
 
123
static
124
union huffpair const hufftab2[] = {
125
  /* 000  */ PTR(8, 3),
126
  /* 001  */ V(1, 1, 3),
127
  /* 010  */ V(0, 1, 3),
128
  /* 011  */ V(1, 0, 3),
129
  /* 100  */ V(0, 0, 1),
130
  /* 101  */ V(0, 0, 1),
131
  /* 110  */ V(0, 0, 1),
132
  /* 111  */ V(0, 0, 1),
133
 
134
  /* 000 ... */
135
  /* 000  */ V(2, 2, 3),        /* 8 */
136
  /* 001  */ V(0, 2, 3),
137
  /* 010  */ V(1, 2, 2),
138
  /* 011  */ V(1, 2, 2),
139
  /* 100  */ V(2, 1, 2),
140
  /* 101  */ V(2, 1, 2),
141
  /* 110  */ V(2, 0, 2),
142
  /* 111  */ V(2, 0, 2)
143
};
144
 
145
static
146
union huffpair const hufftab3[] = {
147
  /* 000  */ PTR(8, 3),
148
  /* 001  */ V(1, 0, 3),
149
  /* 010  */ V(1, 1, 2),
150
  /* 011  */ V(1, 1, 2),
151
  /* 100  */ V(0, 1, 2),
152
  /* 101  */ V(0, 1, 2),
153
  /* 110  */ V(0, 0, 2),
154
  /* 111  */ V(0, 0, 2),
155
 
156
  /* 000 ... */
157
  /* 000  */ V(2, 2, 3),        /* 8 */
158
  /* 001  */ V(0, 2, 3),
159
  /* 010  */ V(1, 2, 2),
160
  /* 011  */ V(1, 2, 2),
161
  /* 100  */ V(2, 1, 2),
162
  /* 101  */ V(2, 1, 2),
163
  /* 110  */ V(2, 0, 2),
164
  /* 111  */ V(2, 0, 2)
165
};
166
 
167
static
168
union huffpair const hufftab5[] = {
169
  /* 000  */ PTR(8, 4),
170
  /* 001  */ V(1, 1, 3),
171
  /* 010  */ V(0, 1, 3),
172
  /* 011  */ V(1, 0, 3),
173
  /* 100  */ V(0, 0, 1),
174
  /* 101  */ V(0, 0, 1),
175
  /* 110  */ V(0, 0, 1),
176
  /* 111  */ V(0, 0, 1),
177
 
178
  /* 000 ... */
179
  /* 0000 */ PTR(24, 1),        /* 8 */
180
  /* 0001 */ V(3, 2, 4),
181
  /* 0010 */ V(3, 1, 3),
182
  /* 0011 */ V(3, 1, 3),
183
  /* 0100 */ V(1, 3, 4),
184
  /* 0101 */ V(0, 3, 4),
185
  /* 0110 */ V(3, 0, 4),
186
  /* 0111 */ V(2, 2, 4),
187
  /* 1000 */ V(1, 2, 3),
188
  /* 1001 */ V(1, 2, 3),
189
  /* 1010 */ V(2, 1, 3),
190
  /* 1011 */ V(2, 1, 3),
191
  /* 1100 */ V(0, 2, 3),
192
  /* 1101 */ V(0, 2, 3),
193
  /* 1110 */ V(2, 0, 3),
194
  /* 1111 */ V(2, 0, 3),
195
 
196
  /* 000 0000 ... */
197
  /* 0    */ V(3, 3, 1),        /* 24 */
198
  /* 1    */ V(2, 3, 1)
199
};
200
 
201
static
202
union huffpair const hufftab6[] = {
203
  /* 0000 */ PTR(16, 3),
204
  /* 0001 */ PTR(24, 1),
205
  /* 0010 */ PTR(26, 1),
206
  /* 0011 */ V(1, 2, 4),
207
  /* 0100 */ V(2, 1, 4),
208
  /* 0101 */ V(2, 0, 4),
209
  /* 0110 */ V(0, 1, 3),
210
  /* 0111 */ V(0, 1, 3),
211
  /* 1000 */ V(1, 1, 2),
212
  /* 1001 */ V(1, 1, 2),
213
  /* 1010 */ V(1, 1, 2),
214
  /* 1011 */ V(1, 1, 2),
215
  /* 1100 */ V(1, 0, 3),
216
  /* 1101 */ V(1, 0, 3),
217
  /* 1110 */ V(0, 0, 3),
218
  /* 1111 */ V(0, 0, 3),
219
 
220
  /* 0000 ... */
221
  /* 000  */ V(3, 3, 3),        /* 16 */
222
  /* 001  */ V(0, 3, 3),
223
  /* 010  */ V(2, 3, 2),
224
  /* 011  */ V(2, 3, 2),
225
  /* 100  */ V(3, 2, 2),
226
  /* 101  */ V(3, 2, 2),
227
  /* 110  */ V(3, 0, 2),
228
  /* 111  */ V(3, 0, 2),
229
 
230
  /* 0001 ... */
231
  /* 0    */ V(1, 3, 1),        /* 24 */
232
  /* 1    */ V(3, 1, 1),
233
 
234
  /* 0010 ... */
235
  /* 0    */ V(2, 2, 1),        /* 26 */
236
  /* 1    */ V(0, 2, 1)
237
};
238
 
239
static
240
union huffpair const hufftab7[] = {
241
  /* 0000 */ PTR(16, 4),
242
  /* 0001 */ PTR(32, 4),
243
  /* 0010 */ PTR(48, 2),
244
  /* 0011 */ V(1, 1, 4),
245
  /* 0100 */ V(0, 1, 3),
246
  /* 0101 */ V(0, 1, 3),
247
  /* 0110 */ V(1, 0, 3),
248
  /* 0111 */ V(1, 0, 3),
249
  /* 1000 */ V(0, 0, 1),
250
  /* 1001 */ V(0, 0, 1),
251
  /* 1010 */ V(0, 0, 1),
252
  /* 1011 */ V(0, 0, 1),
253
  /* 1100 */ V(0, 0, 1),
254
  /* 1101 */ V(0, 0, 1),
255
  /* 1110 */ V(0, 0, 1),
256
  /* 1111 */ V(0, 0, 1),
257
 
258
  /* 0000 ... */
259
  /* 0000 */ PTR(52, 2),        /* 16 */
260
  /* 0001 */ PTR(56, 1),
261
  /* 0010 */ PTR(58, 1),
262
  /* 0011 */ V(1, 5, 4),
263
  /* 0100 */ V(5, 1, 4),
264
  /* 0101 */ PTR(60, 1),
265
  /* 0110 */ V(5, 0, 4),
266
  /* 0111 */ PTR(62, 1),
267
  /* 1000 */ V(2, 4, 4),
268
  /* 1001 */ V(4, 2, 4),
269
  /* 1010 */ V(1, 4, 3),
270
  /* 1011 */ V(1, 4, 3),
271
  /* 1100 */ V(4, 1, 3),
272
  /* 1101 */ V(4, 1, 3),
273
  /* 1110 */ V(4, 0, 3),
274
  /* 1111 */ V(4, 0, 3),
275
 
276
  /* 0001 ... */
277
  /* 0000 */ V(0, 4, 4), /* 32 */
278
  /* 0001 */ V(2, 3, 4),
279
  /* 0010 */ V(3, 2, 4),
280
  /* 0011 */ V(0, 3, 4),
281
  /* 0100 */ V(1, 3, 3),
282
  /* 0101 */ V(1, 3, 3),
283
  /* 0110 */ V(3, 1, 3),
284
  /* 0111 */ V(3, 1, 3),
285
  /* 1000 */ V(3, 0, 3),
286
  /* 1001 */ V(3, 0, 3),
287
  /* 1010 */ V(2, 2, 3),
288
  /* 1011 */ V(2, 2, 3),
289
  /* 1100 */ V(1, 2, 2),
290
  /* 1101 */ V(1, 2, 2),
291
  /* 1110 */ V(1, 2, 2),
292
  /* 1111 */ V(1, 2, 2),
293
 
294
  /* 0010 ... */
295
  /* 00   */ V(2, 1, 1),        /* 48 */
296
  /* 01   */ V(2, 1, 1),
297
  /* 10   */ V(0, 2, 2),
298
  /* 11   */ V(2, 0, 2),
299
 
300
  /* 0000 0000 ... */
301
  /* 00   */ V(5, 5, 2),        /* 52 */
302
  /* 01   */ V(4, 5, 2),
303
  /* 10   */ V(5, 4, 2),
304
  /* 11   */ V(5, 3, 2),
305
 
306
  /* 0000 0001 ... */
307
  /* 0    */ V(3, 5, 1),        /* 56 */
308
  /* 1    */ V(4, 4, 1),
309
 
310
  /* 0000 0010 ... */
311
  /* 0    */ V(2, 5, 1),        /* 58 */
312
  /* 1    */ V(5, 2, 1),
313
 
314
  /* 0000 0101 ... */
315
  /* 0    */ V(0, 5, 1), /* 60 */
316
  /* 1    */ V(3, 4, 1),
317
 
318
  /* 0000 0111 ... */
319
  /* 0    */ V(4, 3, 1),        /* 62 */
320
  /* 1    */ V(3, 3, 1)
321
};
322
 
323
# if 0
324
/* this version saves 8 entries (16 bytes) at the expense of
325
   an extra lookup in 4 out of 36 cases */
326
static
327
union huffpair const hufftab8[] = {
328
  /* 0000 */ PTR(16, 4),
329
  /* 0001 */ PTR(32, 2),
330
  /* 0010 */ V(1, 2, 4),
331
  /* 0011 */ V(2, 1, 4),
332
  /* 0100 */ V(1, 1, 2),
333
  /* 0101 */ V(1, 1, 2),
334
  /* 0110 */ V(1, 1, 2),
335
  /* 0111 */ V(1, 1, 2),
336
  /* 1000 */ V(0, 1, 3),
337
  /* 1001 */ V(0, 1, 3),
338
  /* 1010 */ V(1, 0, 3),
339
  /* 1011 */ V(1, 0, 3),
340
  /* 1100 */ V(0, 0, 2),
341
  /* 1101 */ V(0, 0, 2),
342
  /* 1110 */ V(0, 0, 2),
343
  /* 1111 */ V(0, 0, 2),
344
 
345
  /* 0000 ... */
346
  /* 0000 */ PTR(36, 3),        /* 16 */
347
  /* 0001 */ PTR(44, 2),
348
  /* 0010 */ PTR(48, 1),
349
  /* 0011 */ V(1, 5, 4),
350
  /* 0100 */ V(5, 1, 4),
351
  /* 0101 */ PTR(50, 1),
352
  /* 0110 */ PTR(52, 1),
353
  /* 0111 */ V(2, 4, 4),
354
  /* 1000 */ V(4, 2, 4),
355
  /* 1001 */ V(1, 4, 4),
356
  /* 1010 */ V(4, 1, 3),
357
  /* 1011 */ V(4, 1, 3),
358
  /* 1100 */ V(0, 4, 4),
359
  /* 1101 */ V(4, 0, 4),
360
  /* 1110 */ V(2, 3, 4),
361
  /* 1111 */ V(3, 2, 4),
362
 
363
  /* 0001 ... */
364
  /* 00   */ PTR(54, 2),        /* 32 */
365
  /* 01   */ V(2, 2, 2),
366
  /* 10   */ V(0, 2, 2),
367
  /* 11   */ V(2, 0, 2),
368
 
369
  /* 0000 0000 ... */
370
  /* 000  */ V(5, 5, 3),        /* 36 */
371
  /* 001  */ V(5, 4, 3),
372
  /* 010  */ V(4, 5, 2),
373
  /* 011  */ V(4, 5, 2),
374
  /* 100  */ V(5, 3, 1),
375
  /* 101  */ V(5, 3, 1),
376
  /* 110  */ V(5, 3, 1),
377
  /* 111  */ V(5, 3, 1),
378
 
379
  /* 0000 0001 ... */
380
  /* 00   */ V(3, 5, 2),        /* 44 */
381
  /* 01   */ V(4, 4, 2),
382
  /* 10   */ V(2, 5, 1),
383
  /* 11   */ V(2, 5, 1),
384
 
385
  /* 0000 0010 ... */
386
  /* 0    */ V(5, 2, 1),        /* 48 */
387
  /* 1    */ V(0, 5, 1),
388
 
389
  /* 0000 0101 ... */
390
  /* 0    */ V(3, 4, 1),        /* 50 */
391
  /* 1    */ V(4, 3, 1),
392
 
393
  /* 0000 0110 ... */
394
  /* 0    */ V(5, 0, 1), /* 52 */
395
  /* 1    */ V(3, 3, 1),
396
 
397
  /* 0001 00 ... */
398
  /* 00   */ V(1, 3, 2),        /* 54 */
399
  /* 01   */ V(3, 1, 2),
400
  /* 10   */ V(0, 3, 2),
401
  /* 11   */ V(3, 0, 2),
402
};
403
# else
404
static
405
union huffpair const hufftab8[] = {
406
  /* 0000 */ PTR(16, 4),
407
  /* 0001 */ PTR(32, 4),
408
  /* 0010 */ V(1, 2, 4),
409
  /* 0011 */ V(2, 1, 4),
410
  /* 0100 */ V(1, 1, 2),
411
  /* 0101 */ V(1, 1, 2),
412
  /* 0110 */ V(1, 1, 2),
413
  /* 0111 */ V(1, 1, 2),
414
  /* 1000 */ V(0, 1, 3),
415
  /* 1001 */ V(0, 1, 3),
416
  /* 1010 */ V(1, 0, 3),
417
  /* 1011 */ V(1, 0, 3),
418
  /* 1100 */ V(0, 0, 2),
419
  /* 1101 */ V(0, 0, 2),
420
  /* 1110 */ V(0, 0, 2),
421
  /* 1111 */ V(0, 0, 2),
422
 
423
  /* 0000 ... */
424
  /* 0000 */ PTR(48, 3),        /* 16 */
425
  /* 0001 */ PTR(56, 2),
426
  /* 0010 */ PTR(60, 1),
427
  /* 0011 */ V(1, 5, 4),
428
  /* 0100 */ V(5, 1, 4),
429
  /* 0101 */ PTR(62, 1),
430
  /* 0110 */ PTR(64, 1),
431
  /* 0111 */ V(2, 4, 4),
432
  /* 1000 */ V(4, 2, 4),
433
  /* 1001 */ V(1, 4, 4),
434
  /* 1010 */ V(4, 1, 3),
435
  /* 1011 */ V(4, 1, 3),
436
  /* 1100 */ V(0, 4, 4),
437
  /* 1101 */ V(4, 0, 4),
438
  /* 1110 */ V(2, 3, 4),
439
  /* 1111 */ V(3, 2, 4),
440
 
441
  /* 0001 ... */
442
  /* 0000 */ V(1, 3, 4),        /* 32 */
443
  /* 0001 */ V(3, 1, 4),
444
  /* 0010 */ V(0, 3, 4),
445
  /* 0011 */ V(3, 0, 4),
446
  /* 0100 */ V(2, 2, 2),
447
  /* 0101 */ V(2, 2, 2),
448
  /* 0110 */ V(2, 2, 2),
449
  /* 0111 */ V(2, 2, 2),
450
  /* 1000 */ V(0, 2, 2),
451
  /* 1001 */ V(0, 2, 2),
452
  /* 1010 */ V(0, 2, 2),
453
  /* 1011 */ V(0, 2, 2),
454
  /* 1100 */ V(2, 0, 2),
455
  /* 1101 */ V(2, 0, 2),
456
  /* 1110 */ V(2, 0, 2),
457
  /* 1111 */ V(2, 0, 2),
458
 
459
  /* 0000 0000 ... */
460
  /* 000  */ V(5, 5, 3),        /* 48 */
461
  /* 001  */ V(5, 4, 3),
462
  /* 010  */ V(4, 5, 2),
463
  /* 011  */ V(4, 5, 2),
464
  /* 100  */ V(5, 3, 1),
465
  /* 101  */ V(5, 3, 1),
466
  /* 110  */ V(5, 3, 1),
467
  /* 111  */ V(5, 3, 1),
468
 
469
  /* 0000 0001 ... */
470
  /* 00   */ V(3, 5, 2),        /* 56 */
471
  /* 01   */ V(4, 4, 2),
472
  /* 10   */ V(2, 5, 1),
473
  /* 11   */ V(2, 5, 1),
474
 
475
  /* 0000 0010 ... */
476
  /* 0    */ V(5, 2, 1),        /* 60 */
477
  /* 1    */ V(0, 5, 1),
478
 
479
  /* 0000 0101 ... */
480
  /* 0    */ V(3, 4, 1),        /* 62 */
481
  /* 1    */ V(4, 3, 1),
482
 
483
  /* 0000 0110 ... */
484
  /* 0    */ V(5, 0, 1), /* 64 */
485
  /* 1    */ V(3, 3, 1)
486
};
487
# endif
488
 
489
static
490
union huffpair const hufftab9[] = {
491
  /* 0000 */ PTR(16, 4),
492
  /* 0001 */ PTR(32, 3),
493
  /* 0010 */ PTR(40, 2),
494
  /* 0011 */ PTR(44, 2),
495
  /* 0100 */ PTR(48, 1),
496
  /* 0101 */ V(1, 2, 4),
497
  /* 0110 */ V(2, 1, 4),
498
  /* 0111 */ V(2, 0, 4),
499
  /* 1000 */ V(1, 1, 3),
500
  /* 1001 */ V(1, 1, 3),
501
  /* 1010 */ V(0, 1, 3),
502
  /* 1011 */ V(0, 1, 3),
503
  /* 1100 */ V(1, 0, 3),
504
  /* 1101 */ V(1, 0, 3),
505
  /* 1110 */ V(0, 0, 3),
506
  /* 1111 */ V(0, 0, 3),
507
 
508
  /* 0000 ... */
509
  /* 0000 */ PTR(50, 1),        /* 16 */
510
  /* 0001 */ V(3, 5, 4),
511
  /* 0010 */ V(5, 3, 4),
512
  /* 0011 */ PTR(52, 1),
513
  /* 0100 */ V(4, 4, 4),
514
  /* 0101 */ V(2, 5, 4),
515
  /* 0110 */ V(5, 2, 4),
516
  /* 0111 */ V(1, 5, 4),
517
  /* 1000 */ V(5, 1, 3),
518
  /* 1001 */ V(5, 1, 3),
519
  /* 1010 */ V(3, 4, 3),
520
  /* 1011 */ V(3, 4, 3),
521
  /* 1100 */ V(4, 3, 3),
522
  /* 1101 */ V(4, 3, 3),
523
  /* 1110 */ V(5, 0, 4),
524
  /* 1111 */ V(0, 4, 4),
525
 
526
  /* 0001 ... */
527
  /* 000  */ V(2, 4, 3),        /* 32 */
528
  /* 001  */ V(4, 2, 3),
529
  /* 010  */ V(3, 3, 3),
530
  /* 011  */ V(4, 0, 3),
531
  /* 100  */ V(1, 4, 2),
532
  /* 101  */ V(1, 4, 2),
533
  /* 110  */ V(4, 1, 2),
534
  /* 111  */ V(4, 1, 2),
535
 
536
  /* 0010 ... */
537
  /* 00   */ V(2, 3, 2),        /* 40 */
538
  /* 01   */ V(3, 2, 2),
539
  /* 10   */ V(1, 3, 1),
540
  /* 11   */ V(1, 3, 1),
541
 
542
  /* 0011 ... */
543
  /* 00   */ V(3, 1, 1),        /* 44 */
544
  /* 01   */ V(3, 1, 1),
545
  /* 10   */ V(0, 3, 2),
546
  /* 11   */ V(3, 0, 2),
547
 
548
  /* 0100 ... */
549
  /* 0    */ V(2, 2, 1),        /* 48 */
550
  /* 1    */ V(0, 2, 1),
551
 
552
  /* 0000 0000 ... */
553
  /* 0    */ V(5, 5, 1),        /* 50 */
554
  /* 1    */ V(4, 5, 1),
555
 
556
  /* 0000 0011 ... */
557
  /* 0    */ V(5, 4, 1),        /* 52 */
558
  /* 1    */ V(0, 5, 1)
559
};
560
 
561
static
562
union huffpair const hufftab10[] = {
563
  /* 0000 */ PTR(16, 4),
564
  /* 0001 */ PTR(32, 4),
565
  /* 0010 */ PTR(48, 2),
566
  /* 0011 */ V(1, 1, 4),
567
  /* 0100 */ V(0, 1, 3),
568
  /* 0101 */ V(0, 1, 3),
569
  /* 0110 */ V(1, 0, 3),
570
  /* 0111 */ V(1, 0, 3),
571
  /* 1000 */ V(0, 0, 1),
572
  /* 1001 */ V(0, 0, 1),
573
  /* 1010 */ V(0, 0, 1),
574
  /* 1011 */ V(0, 0, 1),
575
  /* 1100 */ V(0, 0, 1),
576
  /* 1101 */ V(0, 0, 1),
577
  /* 1110 */ V(0, 0, 1),
578
  /* 1111 */ V(0, 0, 1),
579
 
580
  /* 0000 ... */
581
  /* 0000 */ PTR(52, 3),        /* 16 */
582
  /* 0001 */ PTR(60, 2),
583
  /* 0010 */ PTR(64, 3),
584
  /* 0011 */ PTR(72, 1),
585
  /* 0100 */ PTR(74, 2),
586
  /* 0101 */ PTR(78, 2),
587
  /* 0110 */ PTR(82, 2),
588
  /* 0111 */ V(1, 7, 4),
589
  /* 1000 */ V(7, 1, 4),
590
  /* 1001 */ PTR(86, 1),
591
  /* 1010 */ PTR(88, 2),
592
  /* 1011 */ PTR(92, 2),
593
  /* 1100 */ V(1, 6, 4),
594
  /* 1101 */ V(6, 1, 4),
595
  /* 1110 */ V(6, 0, 4),
596
  /* 1111 */ PTR(96, 1),
597
 
598
  /* 0001 ... */
599
  /* 0000 */ PTR(98, 1),        /* 32 */
600
  /* 0001 */ PTR(100, 1),
601
  /* 0010 */ V(1, 4, 4),
602
  /* 0011 */ V(4, 1, 4),
603
  /* 0100 */ V(4, 0, 4),
604
  /* 0101 */ V(2, 3, 4),
605
  /* 0110 */ V(3, 2, 4),
606
  /* 0111 */ V(0, 3, 4),
607
  /* 1000 */ V(1, 3, 3),
608
  /* 1001 */ V(1, 3, 3),
609
  /* 1010 */ V(3, 1, 3),
610
  /* 1011 */ V(3, 1, 3),
611
  /* 1100 */ V(3, 0, 3),
612
  /* 1101 */ V(3, 0, 3),
613
  /* 1110 */ V(2, 2, 3),
614
  /* 1111 */ V(2, 2, 3),
615
 
616
  /* 0010 ... */
617
  /* 00   */ V(1, 2, 2),        /* 48 */
618
  /* 01   */ V(2, 1, 2),
619
  /* 10   */ V(0, 2, 2),
620
  /* 11   */ V(2, 0, 2),
621
 
622
  /* 0000 0000 ... */
623
  /* 000  */ V(7, 7, 3),        /* 52 */
624
  /* 001  */ V(6, 7, 3),
625
  /* 010  */ V(7, 6, 3),
626
  /* 011  */ V(5, 7, 3),
627
  /* 100  */ V(7, 5, 3),
628
  /* 101  */ V(6, 6, 3),
629
  /* 110  */ V(4, 7, 2),
630
  /* 111  */ V(4, 7, 2),
631
 
632
  /* 0000 0001 ... */
633
  /* 00   */ V(7, 4, 2),        /* 60 */
634
  /* 01   */ V(5, 6, 2),
635
  /* 10   */ V(6, 5, 2),
636
  /* 11   */ V(3, 7, 2),
637
 
638
  /* 0000 0010 ... */
639
  /* 000  */ V(7, 3, 2),        /* 64 */
640
  /* 001  */ V(7, 3, 2),
641
  /* 010  */ V(4, 6, 2),
642
  /* 011  */ V(4, 6, 2),
643
  /* 100  */ V(5, 5, 3),
644
  /* 101  */ V(5, 4, 3),
645
  /* 110  */ V(6, 3, 2),
646
  /* 111  */ V(6, 3, 2),
647
 
648
  /* 0000 0011 ... */
649
  /* 0    */ V(2, 7, 1),        /* 72 */
650
  /* 1    */ V(7, 2, 1),
651
 
652
  /* 0000 0100 ... */
653
  /* 00   */ V(6, 4, 2),        /* 74 */
654
  /* 01   */ V(0, 7, 2),
655
  /* 10   */ V(7, 0, 1),
656
  /* 11   */ V(7, 0, 1),
657
 
658
  /* 0000 0101 ... */
659
  /* 00   */ V(6, 2, 1),        /* 78 */
660
  /* 01   */ V(6, 2, 1),
661
  /* 10   */ V(4, 5, 2),
662
  /* 11   */ V(3, 5, 2),
663
 
664
  /* 0000 0110 ... */
665
  /* 00   */ V(0, 6, 1), /* 82 */
666
  /* 01   */ V(0, 6, 1),
667
  /* 10   */ V(5, 3, 2),
668
  /* 11   */ V(4, 4, 2),
669
 
670
  /* 0000 1001 ... */
671
  /* 0    */ V(3, 6, 1),        /* 86 */
672
  /* 1    */ V(2, 6, 1),
673
 
674
  /* 0000 1010 ... */
675
  /* 00   */ V(2, 5, 2),        /* 88 */
676
  /* 01   */ V(5, 2, 2),
677
  /* 10   */ V(1, 5, 1),
678
  /* 11   */ V(1, 5, 1),
679
 
680
  /* 0000 1011 ... */
681
  /* 00   */ V(5, 1, 1),        /* 92 */
682
  /* 01   */ V(5, 1, 1),
683
  /* 10   */ V(3, 4, 2),
684
  /* 11   */ V(4, 3, 2),
685
 
686
  /* 0000 1111 ... */
687
  /* 0    */ V(0, 5, 1), /* 96 */
688
  /* 1    */ V(5, 0, 1),
689
 
690
  /* 0001 0000 ... */
691
  /* 0    */ V(2, 4, 1),        /* 98 */
692
  /* 1    */ V(4, 2, 1),
693
 
694
  /* 0001 0001 ... */
695
  /* 0    */ V(3, 3, 1),        /* 100 */
696
  /* 1    */ V(0, 4, 1)
697
};
698
 
699
static
700
union huffpair const hufftab11[] = {
701
  /* 0000 */ PTR(16, 4),
702
  /* 0001 */ PTR(32, 4),
703
  /* 0010 */ PTR(48, 4),
704
  /* 0011 */ PTR(64, 3),
705
  /* 0100 */ V(1, 2, 4),
706
  /* 0101 */ PTR(72, 1),
707
  /* 0110 */ V(1, 1, 3),
708
  /* 0111 */ V(1, 1, 3),
709
  /* 1000 */ V(0, 1, 3),
710
  /* 1001 */ V(0, 1, 3),
711
  /* 1010 */ V(1, 0, 3),
712
  /* 1011 */ V(1, 0, 3),
713
  /* 1100 */ V(0, 0, 2),
714
  /* 1101 */ V(0, 0, 2),
715
  /* 1110 */ V(0, 0, 2),
716
  /* 1111 */ V(0, 0, 2),
717
 
718
  /* 0000 ... */
719
  /* 0000 */ PTR(74, 2),        /* 16 */
720
  /* 0001 */ PTR(78, 3),
721
  /* 0010 */ PTR(86, 2),
722
  /* 0011 */ PTR(90, 1),
723
  /* 0100 */ PTR(92, 2),
724
  /* 0101 */ V(2, 7, 4),
725
  /* 0110 */ V(7, 2, 4),
726
  /* 0111 */ PTR(96, 1),
727
  /* 1000 */ V(7, 1, 3),
728
  /* 1001 */ V(7, 1, 3),
729
  /* 1010 */ V(1, 7, 4),
730
  /* 1011 */ V(7, 0, 4),
731
  /* 1100 */ V(3, 6, 4),
732
  /* 1101 */ V(6, 3, 4),
733
  /* 1110 */ V(6, 0, 4),
734
  /* 1111 */ PTR(98, 1),
735
 
736
  /* 0001 ... */
737
  /* 0000 */ PTR(100, 1),       /* 32 */
738
  /* 0001 */ V(1, 5, 4),
739
  /* 0010 */ V(6, 2, 3),
740
  /* 0011 */ V(6, 2, 3),
741
  /* 0100 */ V(2, 6, 4),
742
  /* 0101 */ V(0, 6, 4),
743
  /* 0110 */ V(1, 6, 3),
744
  /* 0111 */ V(1, 6, 3),
745
  /* 1000 */ V(6, 1, 3),
746
  /* 1001 */ V(6, 1, 3),
747
  /* 1010 */ V(5, 1, 4),
748
  /* 1011 */ V(3, 4, 4),
749
  /* 1100 */ V(5, 0, 4),
750
  /* 1101 */ PTR(102, 1),
751
  /* 1110 */ V(2, 4, 4),
752
  /* 1111 */ V(4, 2, 4),
753
 
754
  /* 0010 ... */
755
  /* 0000 */ V(1, 4, 4),        /* 48 */
756
  /* 0001 */ V(4, 1, 4),
757
  /* 0010 */ V(0, 4, 4),
758
  /* 0011 */ V(4, 0, 4),
759
  /* 0100 */ V(2, 3, 3),
760
  /* 0101 */ V(2, 3, 3),
761
  /* 0110 */ V(3, 2, 3),
762
  /* 0111 */ V(3, 2, 3),
763
  /* 1000 */ V(1, 3, 2),
764
  /* 1001 */ V(1, 3, 2),
765
  /* 1010 */ V(1, 3, 2),
766
  /* 1011 */ V(1, 3, 2),
767
  /* 1100 */ V(3, 1, 2),
768
  /* 1101 */ V(3, 1, 2),
769
  /* 1110 */ V(3, 1, 2),
770
  /* 1111 */ V(3, 1, 2),
771
 
772
  /* 0011 ... */
773
  /* 000  */ V(0, 3, 3), /* 64 */
774
  /* 001  */ V(3, 0, 3),
775
  /* 010  */ V(2, 2, 2),
776
  /* 011  */ V(2, 2, 2),
777
  /* 100  */ V(2, 1, 1),
778
  /* 101  */ V(2, 1, 1),
779
  /* 110  */ V(2, 1, 1),
780
  /* 111  */ V(2, 1, 1),
781
 
782
  /* 0101 ... */
783
  /* 0    */ V(0, 2, 1), /* 72 */
784
  /* 1    */ V(2, 0, 1),
785
 
786
  /* 0000 0000 ... */
787
  /* 00   */ V(7, 7, 2),        /* 74 */
788
  /* 01   */ V(6, 7, 2),
789
  /* 10   */ V(7, 6, 2),
790
  /* 11   */ V(7, 5, 2),
791
 
792
  /* 0000 0001 ... */
793
  /* 000  */ V(6, 6, 2),        /* 78 */
794
  /* 001  */ V(6, 6, 2),
795
  /* 010  */ V(4, 7, 2),
796
  /* 011  */ V(4, 7, 2),
797
  /* 100  */ V(7, 4, 2),
798
  /* 101  */ V(7, 4, 2),
799
  /* 110  */ V(5, 7, 3),
800
  /* 111  */ V(5, 5, 3),
801
 
802
  /* 0000 0010 ... */
803
  /* 00   */ V(5, 6, 2),        /* 86 */
804
  /* 01   */ V(6, 5, 2),
805
  /* 10   */ V(3, 7, 1),
806
  /* 11   */ V(3, 7, 1),
807
 
808
  /* 0000 0011 ... */
809
  /* 0    */ V(7, 3, 1),        /* 90 */
810
  /* 1    */ V(4, 6, 1),
811
 
812
  /* 0000 0100 ... */
813
  /* 00   */ V(4, 5, 2),        /* 92 */
814
  /* 01   */ V(5, 4, 2),
815
  /* 10   */ V(3, 5, 2),
816
  /* 11   */ V(5, 3, 2),
817
 
818
  /* 0000 0111 ... */
819
  /* 0    */ V(6, 4, 1),        /* 96 */
820
  /* 1    */ V(0, 7, 1),
821
 
822
  /* 0000 1111 ... */
823
  /* 0    */ V(4, 4, 1),        /* 98 */
824
  /* 1    */ V(2, 5, 1),
825
 
826
  /* 0001 0000 ... */
827
  /* 0    */ V(5, 2, 1),        /* 100 */
828
  /* 1    */ V(0, 5, 1),
829
 
830
  /* 0001 1101 ... */
831
  /* 0    */ V(4, 3, 1),        /* 102 */
832
  /* 1    */ V(3, 3, 1)
833
};
834
 
835
static
836
union huffpair const hufftab12[] = {
837
  /* 0000 */ PTR(16, 4),
838
  /* 0001 */ PTR(32, 4),
839
  /* 0010 */ PTR(48, 4),
840
  /* 0011 */ PTR(64, 2),
841
  /* 0100 */ PTR(68, 3),
842
  /* 0101 */ PTR(76, 1),
843
  /* 0110 */ V(1, 2, 4),
844
  /* 0111 */ V(2, 1, 4),
845
  /* 1000 */ PTR(78, 1),
846
  /* 1001 */ V(0, 0, 4),
847
  /* 1010 */ V(1, 1, 3),
848
  /* 1011 */ V(1, 1, 3),
849
  /* 1100 */ V(0, 1, 3),
850
  /* 1101 */ V(0, 1, 3),
851
  /* 1110 */ V(1, 0, 3),
852
  /* 1111 */ V(1, 0, 3),
853
 
854
  /* 0000 ... */
855
  /* 0000 */ PTR(80, 2),        /* 16 */
856
  /* 0001 */ PTR(84, 1),
857
  /* 0010 */ PTR(86, 1),
858
  /* 0011 */ PTR(88, 1),
859
  /* 0100 */ V(5, 6, 4),
860
  /* 0101 */ V(3, 7, 4),
861
  /* 0110 */ PTR(90, 1),
862
  /* 0111 */ V(2, 7, 4),
863
  /* 1000 */ V(7, 2, 4),
864
  /* 1001 */ V(4, 6, 4),
865
  /* 1010 */ V(6, 4, 4),
866
  /* 1011 */ V(1, 7, 4),
867
  /* 1100 */ V(7, 1, 4),
868
  /* 1101 */ PTR(92, 1),
869
  /* 1110 */ V(3, 6, 4),
870
  /* 1111 */ V(6, 3, 4),
871
 
872
  /* 0001 ... */
873
  /* 0000 */ V(4, 5, 4),        /* 32 */
874
  /* 0001 */ V(5, 4, 4),
875
  /* 0010 */ V(4, 4, 4),
876
  /* 0011 */ PTR(94, 1),
877
  /* 0100 */ V(2, 6, 3),
878
  /* 0101 */ V(2, 6, 3),
879
  /* 0110 */ V(6, 2, 3),
880
  /* 0111 */ V(6, 2, 3),
881
  /* 1000 */ V(6, 1, 3),
882
  /* 1001 */ V(6, 1, 3),
883
  /* 1010 */ V(1, 6, 4),
884
  /* 1011 */ V(6, 0, 4),
885
  /* 1100 */ V(3, 5, 4),
886
  /* 1101 */ V(5, 3, 4),
887
  /* 1110 */ V(2, 5, 4),
888
  /* 1111 */ V(5, 2, 4),
889
 
890
  /* 0010 ... */
891
  /* 0000 */ V(1, 5, 3),        /* 48 */
892
  /* 0001 */ V(1, 5, 3),
893
  /* 0010 */ V(5, 1, 3),
894
  /* 0011 */ V(5, 1, 3),
895
  /* 0100 */ V(3, 4, 3),
896
  /* 0101 */ V(3, 4, 3),
897
  /* 0110 */ V(4, 3, 3),
898
  /* 0111 */ V(4, 3, 3),
899
  /* 1000 */ V(5, 0, 4),
900
  /* 1001 */ V(0, 4, 4),
901
  /* 1010 */ V(2, 4, 3),
902
  /* 1011 */ V(2, 4, 3),
903
  /* 1100 */ V(4, 2, 3),
904
  /* 1101 */ V(4, 2, 3),
905
  /* 1110 */ V(1, 4, 3),
906
  /* 1111 */ V(1, 4, 3),
907
 
908
  /* 0011 ... */
909
  /* 00   */ V(3, 3, 2),        /* 64 */
910
  /* 01   */ V(4, 1, 2),
911
  /* 10   */ V(2, 3, 2),
912
  /* 11   */ V(3, 2, 2),
913
 
914
  /* 0100 ... */
915
  /* 000  */ V(4, 0, 3), /* 68 */
916
  /* 001  */ V(0, 3, 3),
917
  /* 010  */ V(3, 0, 2),
918
  /* 011  */ V(3, 0, 2),
919
  /* 100  */ V(1, 3, 1),
920
  /* 101  */ V(1, 3, 1),
921
  /* 110  */ V(1, 3, 1),
922
  /* 111  */ V(1, 3, 1),
923
 
924
  /* 0101 ... */
925
  /* 0    */ V(3, 1, 1),        /* 76 */
926
  /* 1    */ V(2, 2, 1),
927
 
928
  /* 1000 ... */
929
  /* 0    */ V(0, 2, 1), /* 78 */
930
  /* 1    */ V(2, 0, 1),
931
 
932
  /* 0000 0000 ... */
933
  /* 00   */ V(7, 7, 2),        /* 80 */
934
  /* 01   */ V(6, 7, 2),
935
  /* 10   */ V(7, 6, 1),
936
  /* 11   */ V(7, 6, 1),
937
 
938
  /* 0000 0001 ... */
939
  /* 0    */ V(5, 7, 1),        /* 84 */
940
  /* 1    */ V(7, 5, 1),
941
 
942
  /* 0000 0010 ... */
943
  /* 0    */ V(6, 6, 1),        /* 86 */
944
  /* 1    */ V(4, 7, 1),
945
 
946
  /* 0000 0011 ... */
947
  /* 0    */ V(7, 4, 1),        /* 88 */
948
  /* 1    */ V(6, 5, 1),
949
 
950
  /* 0000 0110 ... */
951
  /* 0    */ V(7, 3, 1),        /* 90 */
952
  /* 1    */ V(5, 5, 1),
953
 
954
  /* 0000 1101 ... */
955
  /* 0    */ V(0, 7, 1), /* 92 */
956
  /* 1    */ V(7, 0, 1),
957
 
958
  /* 0001 0011 ... */
959
  /* 0    */ V(0, 6, 1), /* 94 */
960
  /* 1    */ V(0, 5, 1)
961
};
962
 
963
static
964
union huffpair const hufftab13[] = {
965
  /* 0000 */ PTR(16, 4),
966
  /* 0001 */ PTR(32, 4),
967
  /* 0010 */ PTR(48, 4),
968
  /* 0011 */ PTR(64, 2),
969
  /* 0100 */ V(1, 1, 4),
970
  /* 0101 */ V(0, 1, 4),
971
  /* 0110 */ V(1, 0, 3),
972
  /* 0111 */ V(1, 0, 3),
973
  /* 1000 */ V(0, 0, 1),
974
  /* 1001 */ V(0, 0, 1),
975
  /* 1010 */ V(0, 0, 1),
976
  /* 1011 */ V(0, 0, 1),
977
  /* 1100 */ V(0, 0, 1),
978
  /* 1101 */ V(0, 0, 1),
979
  /* 1110 */ V(0, 0, 1),
980
  /* 1111 */ V(0, 0, 1),
981
 
982
  /* 0000 ... */
983
  /* 0000 */ PTR(68, 4),        /* 16 */
984
  /* 0001 */ PTR(84, 4),
985
  /* 0010 */ PTR(100, 4),
986
  /* 0011 */ PTR(116, 4),
987
  /* 0100 */ PTR(132, 4),
988
  /* 0101 */ PTR(148, 4),
989
  /* 0110 */ PTR(164, 3),
990
  /* 0111 */ PTR(172, 3),
991
  /* 1000 */ PTR(180, 3),
992
  /* 1001 */ PTR(188, 3),
993
  /* 1010 */ PTR(196, 3),
994
  /* 1011 */ PTR(204, 3),
995
  /* 1100 */ PTR(212, 1),
996
  /* 1101 */ PTR(214, 2),
997
  /* 1110 */ PTR(218, 3),
998
  /* 1111 */ PTR(226, 1),
999
 
1000
  /* 0001 ... */
1001
  /* 0000 */ PTR(228, 2),       /* 32 */
1002
  /* 0001 */ PTR(232, 2),
1003
  /* 0010 */ PTR(236, 2),
1004
  /* 0011 */ PTR(240, 2),
1005
  /* 0100 */ V(8, 1, 4),
1006
  /* 0101 */ PTR(244, 1),
1007
  /* 0110 */ PTR(246, 1),
1008
  /* 0111 */ PTR(248, 1),
1009
  /* 1000 */ PTR(250, 2),
1010
  /* 1001 */ PTR(254, 1),
1011
  /* 1010 */ V(1, 5, 4),
1012
  /* 1011 */ V(5, 1, 4),
1013
  /* 1100 */ PTR(256, 1),
1014
  /* 1101 */ PTR(258, 1),
1015
  /* 1110 */ PTR(260, 1),
1016
  /* 1111 */ V(1, 4, 4),
1017
 
1018
  /* 0010 ... */
1019
  /* 0000 */ V(4, 1, 3),        /* 48 */
1020
  /* 0001 */ V(4, 1, 3),
1021
  /* 0010 */ V(0, 4, 4),
1022
  /* 0011 */ V(4, 0, 4),
1023
  /* 0100 */ V(2, 3, 4),
1024
  /* 0101 */ V(3, 2, 4),
1025
  /* 0110 */ V(1, 3, 3),
1026
  /* 0111 */ V(1, 3, 3),
1027
  /* 1000 */ V(3, 1, 3),
1028
  /* 1001 */ V(3, 1, 3),
1029
  /* 1010 */ V(0, 3, 3),
1030
  /* 1011 */ V(0, 3, 3),
1031
  /* 1100 */ V(3, 0, 3),
1032
  /* 1101 */ V(3, 0, 3),
1033
  /* 1110 */ V(2, 2, 3),
1034
  /* 1111 */ V(2, 2, 3),
1035
 
1036
  /* 0011 ... */
1037
  /* 00   */ V(1, 2, 2),        /* 64 */
1038
  /* 01   */ V(2, 1, 2),
1039
  /* 10   */ V(0, 2, 2),
1040
  /* 11   */ V(2, 0, 2),
1041
 
1042
  /* 0000 0000 ... */
1043
  /* 0000 */ PTR(262, 4),       /* 68 */
1044
  /* 0001 */ PTR(278, 4),
1045
  /* 0010 */ PTR(294, 4),
1046
  /* 0011 */ PTR(310, 3),
1047
  /* 0100 */ PTR(318, 2),
1048
  /* 0101 */ PTR(322, 2),
1049
  /* 0110 */ PTR(326, 3),
1050
  /* 0111 */ PTR(334, 2),
1051
  /* 1000 */ PTR(338, 1),
1052
  /* 1001 */ PTR(340, 2),
1053
  /* 1010 */ PTR(344, 2),
1054
  /* 1011 */ PTR(348, 2),
1055
  /* 1100 */ PTR(352, 2),
1056
  /* 1101 */ PTR(356, 2),
1057
  /* 1110 */ V(1, 15, 4),
1058
  /* 1111 */ V(15, 1, 4),
1059
 
1060
  /* 0000 0001 ... */
1061
  /* 0000 */ V(15, 0, 4),        /* 84 */
1062
  /* 0001 */ PTR(360, 1),
1063
  /* 0010 */ PTR(362, 1),
1064
  /* 0011 */ PTR(364, 1),
1065
  /* 0100 */ V(14, 2, 4),
1066
  /* 0101 */ PTR(366, 1),
1067
  /* 0110 */ V(1, 14, 4),
1068
  /* 0111 */ V(14, 1, 4),
1069
  /* 1000 */ PTR(368, 1),
1070
  /* 1001 */ PTR(370, 1),
1071
  /* 1010 */ PTR(372, 1),
1072
  /* 1011 */ PTR(374, 1),
1073
  /* 1100 */ PTR(376, 1),
1074
  /* 1101 */ PTR(378, 1),
1075
  /* 1110 */ V(12, 6, 4),
1076
  /* 1111 */ V(3, 13, 4),
1077
 
1078
  /* 0000 0010 ... */
1079
  /* 0000 */ PTR(380, 1),       /* 100 */
1080
  /* 0001 */ V(2, 13, 4),
1081
  /* 0010 */ V(13, 2, 4),
1082
  /* 0011 */ V(1, 13, 4),
1083
  /* 0100 */ V(11, 7, 4),
1084
  /* 0101 */ PTR(382, 1),
1085
  /* 0110 */ PTR(384, 1),
1086
  /* 0111 */ V(12, 3, 4),
1087
  /* 1000 */ PTR(386, 1),
1088
  /* 1001 */ V(4, 11, 4),
1089
  /* 1010 */ V(13, 1, 3),
1090
  /* 1011 */ V(13, 1, 3),
1091
  /* 1100 */ V(0, 13, 4),
1092
  /* 1101 */ V(13, 0, 4),
1093
  /* 1110 */ V(8, 10, 4),
1094
  /* 1111 */ V(10, 8, 4),
1095
 
1096
  /* 0000 0011 ... */
1097
  /* 0000 */ V(4, 12, 4),       /* 116 */
1098
  /* 0001 */ V(12, 4, 4),
1099
  /* 0010 */ V(6, 11, 4),
1100
  /* 0011 */ V(11, 6, 4),
1101
  /* 0100 */ V(3, 12, 3),
1102
  /* 0101 */ V(3, 12, 3),
1103
  /* 0110 */ V(2, 12, 3),
1104
  /* 0111 */ V(2, 12, 3),
1105
  /* 1000 */ V(12, 2, 3),
1106
  /* 1001 */ V(12, 2, 3),
1107
  /* 1010 */ V(5, 11, 3),
1108
  /* 1011 */ V(5, 11, 3),
1109
  /* 1100 */ V(11, 5, 4),
1110
  /* 1101 */ V(8, 9, 4),
1111
  /* 1110 */ V(1, 12, 3),
1112
  /* 1111 */ V(1, 12, 3),
1113
 
1114
  /* 0000 0100 ... */
1115
  /* 0000 */ V(12, 1, 3),       /* 132 */
1116
  /* 0001 */ V(12, 1, 3),
1117
  /* 0010 */ V(9, 8, 4),
1118
  /* 0011 */ V(0, 12, 4),
1119
  /* 0100 */ V(12, 0, 3),
1120
  /* 0101 */ V(12, 0, 3),
1121
  /* 0110 */ V(11, 4, 4),
1122
  /* 0111 */ V(6, 10, 4),
1123
  /* 1000 */ V(10, 6, 4),
1124
  /* 1001 */ V(7, 9, 4),
1125
  /* 1010 */ V(3, 11, 3),
1126
  /* 1011 */ V(3, 11, 3),
1127
  /* 1100 */ V(11, 3, 3),
1128
  /* 1101 */ V(11, 3, 3),
1129
  /* 1110 */ V(8, 8, 4),
1130
  /* 1111 */ V(5, 10, 4),
1131
 
1132
  /* 0000 0101 ... */
1133
  /* 0000 */ V(2, 11, 3),       /* 148 */
1134
  /* 0001 */ V(2, 11, 3),
1135
  /* 0010 */ V(10, 5, 4),
1136
  /* 0011 */ V(6, 9, 4),
1137
  /* 0100 */ V(10, 4, 3),
1138
  /* 0101 */ V(10, 4, 3),
1139
  /* 0110 */ V(7, 8, 4),
1140
  /* 0111 */ V(8, 7, 4),
1141
  /* 1000 */ V(9, 4, 3),
1142
  /* 1001 */ V(9, 4, 3),
1143
  /* 1010 */ V(7, 7, 4),
1144
  /* 1011 */ V(7, 6, 4),
1145
  /* 1100 */ V(11, 2, 2),
1146
  /* 1101 */ V(11, 2, 2),
1147
  /* 1110 */ V(11, 2, 2),
1148
  /* 1111 */ V(11, 2, 2),
1149
 
1150
  /* 0000 0110 ... */
1151
  /* 000  */ V(1, 11, 2),       /* 164 */
1152
  /* 001  */ V(1, 11, 2),
1153
  /* 010  */ V(11, 1, 2),
1154
  /* 011  */ V(11, 1, 2),
1155
  /* 100  */ V(0, 11, 3),
1156
  /* 101  */ V(11, 0, 3),
1157
  /* 110  */ V(9, 6, 3),
1158
  /* 111  */ V(4, 10, 3),
1159
 
1160
  /* 0000 0111 ... */
1161
  /* 000  */ V(3, 10, 3),       /* 172 */
1162
  /* 001  */ V(10, 3, 3),
1163
  /* 010  */ V(5, 9, 3),
1164
  /* 011  */ V(9, 5, 3),
1165
  /* 100  */ V(2, 10, 2),
1166
  /* 101  */ V(2, 10, 2),
1167
  /* 110  */ V(10, 2, 2),
1168
  /* 111  */ V(10, 2, 2),
1169
 
1170
  /* 0000 1000 ... */
1171
  /* 000  */ V(1, 10, 2),       /* 180 */
1172
  /* 001  */ V(1, 10, 2),
1173
  /* 010  */ V(10, 1, 2),
1174
  /* 011  */ V(10, 1, 2),
1175
  /* 100  */ V(0, 10, 3),
1176
  /* 101  */ V(6, 8, 3),
1177
  /* 110  */ V(10, 0, 2),
1178
  /* 111  */ V(10, 0, 2),
1179
 
1180
  /* 0000 1001 ... */
1181
  /* 000  */ V(8, 6, 3),        /* 188 */
1182
  /* 001  */ V(4, 9, 3),
1183
  /* 010  */ V(9, 3, 2),
1184
  /* 011  */ V(9, 3, 2),
1185
  /* 100  */ V(3, 9, 3),
1186
  /* 101  */ V(5, 8, 3),
1187
  /* 110  */ V(8, 5, 3),
1188
  /* 111  */ V(6, 7, 3),
1189
 
1190
  /* 0000 1010 ... */
1191
  /* 000  */ V(2, 9, 2),        /* 196 */
1192
  /* 001  */ V(2, 9, 2),
1193
  /* 010  */ V(9, 2, 2),
1194
  /* 011  */ V(9, 2, 2),
1195
  /* 100  */ V(5, 7, 3),
1196
  /* 101  */ V(7, 5, 3),
1197
  /* 110  */ V(3, 8, 2),
1198
  /* 111  */ V(3, 8, 2),
1199
 
1200
  /* 0000 1011 ... */
1201
  /* 000  */ V(8, 3, 2),        /* 204 */
1202
  /* 001  */ V(8, 3, 2),
1203
  /* 010  */ V(6, 6, 3),
1204
  /* 011  */ V(4, 7, 3),
1205
  /* 100  */ V(7, 4, 3),
1206
  /* 101  */ V(5, 6, 3),
1207
  /* 110  */ V(6, 5, 3),
1208
  /* 111  */ V(7, 3, 3),
1209
 
1210
  /* 0000 1100 ... */
1211
  /* 0    */ V(1, 9, 1),        /* 212 */
1212
  /* 1    */ V(9, 1, 1),
1213
 
1214
  /* 0000 1101 ... */
1215
  /* 00   */ V(0, 9, 2), /* 214 */
1216
  /* 01   */ V(9, 0, 2),
1217
  /* 10   */ V(4, 8, 2),
1218
  /* 11   */ V(8, 4, 2),
1219
 
1220
  /* 0000 1110 ... */
1221
  /* 000  */ V(7, 2, 2),        /* 218 */
1222
  /* 001  */ V(7, 2, 2),
1223
  /* 010  */ V(4, 6, 3),
1224
  /* 011  */ V(6, 4, 3),
1225
  /* 100  */ V(2, 8, 1),
1226
  /* 101  */ V(2, 8, 1),
1227
  /* 110  */ V(2, 8, 1),
1228
  /* 111  */ V(2, 8, 1),
1229
 
1230
  /* 0000 1111 ... */
1231
  /* 0    */ V(8, 2, 1),        /* 226 */
1232
  /* 1    */ V(1, 8, 1),
1233
 
1234
  /* 0001 0000 ... */
1235
  /* 00   */ V(3, 7, 2),        /* 228 */
1236
  /* 01   */ V(2, 7, 2),
1237
  /* 10   */ V(1, 7, 1),
1238
  /* 11   */ V(1, 7, 1),
1239
 
1240
  /* 0001 0001 ... */
1241
  /* 00   */ V(7, 1, 1),        /* 232 */
1242
  /* 01   */ V(7, 1, 1),
1243
  /* 10   */ V(5, 5, 2),
1244
  /* 11   */ V(0, 7, 2),
1245
 
1246
  /* 0001 0010 ... */
1247
  /* 00   */ V(7, 0, 2), /* 236 */
1248
  /* 01   */ V(3, 6, 2),
1249
  /* 10   */ V(6, 3, 2),
1250
  /* 11   */ V(4, 5, 2),
1251
 
1252
  /* 0001 0011 ... */
1253
  /* 00   */ V(5, 4, 2),        /* 240 */
1254
  /* 01   */ V(2, 6, 2),
1255
  /* 10   */ V(6, 2, 2),
1256
  /* 11   */ V(3, 5, 2),
1257
 
1258
  /* 0001 0101 ... */
1259
  /* 0    */ V(0, 8, 1), /* 244 */
1260
  /* 1    */ V(8, 0, 1),
1261
 
1262
  /* 0001 0110 ... */
1263
  /* 0    */ V(1, 6, 1),        /* 246 */
1264
  /* 1    */ V(6, 1, 1),
1265
 
1266
  /* 0001 0111 ... */
1267
  /* 0    */ V(0, 6, 1), /* 248 */
1268
  /* 1    */ V(6, 0, 1),
1269
 
1270
  /* 0001 1000 ... */
1271
  /* 00   */ V(5, 3, 2),        /* 250 */
1272
  /* 01   */ V(4, 4, 2),
1273
  /* 10   */ V(2, 5, 1),
1274
  /* 11   */ V(2, 5, 1),
1275
 
1276
  /* 0001 1001 ... */
1277
  /* 0    */ V(5, 2, 1),        /* 254 */
1278
  /* 1    */ V(0, 5, 1),
1279
 
1280
  /* 0001 1100 ... */
1281
  /* 0    */ V(3, 4, 1),        /* 256 */
1282
  /* 1    */ V(4, 3, 1),
1283
 
1284
  /* 0001 1101 ... */
1285
  /* 0    */ V(5, 0, 1), /* 258 */
1286
  /* 1    */ V(2, 4, 1),
1287
 
1288
  /* 0001 1110 ... */
1289
  /* 0    */ V(4, 2, 1),        /* 260 */
1290
  /* 1    */ V(3, 3, 1),
1291
 
1292
  /* 0000 0000 0000 ... */
1293
  /* 0000 */ PTR(388, 3),       /* 262 */
1294
  /* 0001 */ V(15, 15, 4),
1295
  /* 0010 */ V(14, 15, 4),
1296
  /* 0011 */ V(13, 15, 4),
1297
  /* 0100 */ V(14, 14, 4),
1298
  /* 0101 */ V(12, 15, 4),
1299
  /* 0110 */ V(13, 14, 4),
1300
  /* 0111 */ V(11, 15, 4),
1301
  /* 1000 */ V(15, 11, 4),
1302
  /* 1001 */ V(12, 14, 4),
1303
  /* 1010 */ V(13, 12, 4),
1304
  /* 1011 */ PTR(396, 1),
1305
  /* 1100 */ V(14, 12, 3),
1306
  /* 1101 */ V(14, 12, 3),
1307
  /* 1110 */ V(13, 13, 3),
1308
  /* 1111 */ V(13, 13, 3),
1309
 
1310
  /* 0000 0000 0001 ... */
1311
  /* 0000 */ V(15, 10, 4),      /* 278 */
1312
  /* 0001 */ V(12, 13, 4),
1313
  /* 0010 */ V(11, 14, 3),
1314
  /* 0011 */ V(11, 14, 3),
1315
  /* 0100 */ V(14, 11, 3),
1316
  /* 0101 */ V(14, 11, 3),
1317
  /* 0110 */ V(9, 15, 3),
1318
  /* 0111 */ V(9, 15, 3),
1319
  /* 1000 */ V(15, 9, 3),
1320
  /* 1001 */ V(15, 9, 3),
1321
  /* 1010 */ V(14, 10, 3),
1322
  /* 1011 */ V(14, 10, 3),
1323
  /* 1100 */ V(11, 13, 3),
1324
  /* 1101 */ V(11, 13, 3),
1325
  /* 1110 */ V(13, 11, 3),
1326
  /* 1111 */ V(13, 11, 3),
1327
 
1328
  /* 0000 0000 0010 ... */
1329
  /* 0000 */ V(8, 15, 3),       /* 294 */
1330
  /* 0001 */ V(8, 15, 3),
1331
  /* 0010 */ V(15, 8, 3),
1332
  /* 0011 */ V(15, 8, 3),
1333
  /* 0100 */ V(12, 12, 3),
1334
  /* 0101 */ V(12, 12, 3),
1335
  /* 0110 */ V(10, 14, 4),
1336
  /* 0111 */ V(9, 14, 4),
1337
  /* 1000 */ V(8, 14, 3),
1338
  /* 1001 */ V(8, 14, 3),
1339
  /* 1010 */ V(7, 15, 4),
1340
  /* 1011 */ V(7, 14, 4),
1341
  /* 1100 */ V(15, 7, 2),
1342
  /* 1101 */ V(15, 7, 2),
1343
  /* 1110 */ V(15, 7, 2),
1344
  /* 1111 */ V(15, 7, 2),
1345
 
1346
  /* 0000 0000 0011 ... */
1347
  /* 000  */ V(13, 10, 2),      /* 310 */
1348
  /* 001  */ V(13, 10, 2),
1349
  /* 010  */ V(10, 13, 3),
1350
  /* 011  */ V(11, 12, 3),
1351
  /* 100  */ V(12, 11, 3),
1352
  /* 101  */ V(15, 6, 3),
1353
  /* 110  */ V(6, 15, 2),
1354
  /* 111  */ V(6, 15, 2),
1355
 
1356
  /* 0000 0000 0100 ... */
1357
  /* 00   */ V(14, 8, 2),       /* 318 */
1358
  /* 01   */ V(5, 15, 2),
1359
  /* 10   */ V(9, 13, 2),
1360
  /* 11   */ V(13, 9, 2),
1361
 
1362
  /* 0000 0000 0101 ... */
1363
  /* 00   */ V(15, 5, 2),       /* 322 */
1364
  /* 01   */ V(14, 7, 2),
1365
  /* 10   */ V(10, 12, 2),
1366
  /* 11   */ V(11, 11, 2),
1367
 
1368
  /* 0000 0000 0110 ... */
1369
  /* 000  */ V(4, 15, 2),       /* 326 */
1370
  /* 001  */ V(4, 15, 2),
1371
  /* 010  */ V(15, 4, 2),
1372
  /* 011  */ V(15, 4, 2),
1373
  /* 100  */ V(12, 10, 3),
1374
  /* 101  */ V(14, 6, 3),
1375
  /* 110  */ V(15, 3, 2),
1376
  /* 111  */ V(15, 3, 2),
1377
 
1378
  /* 0000 0000 0111 ... */
1379
  /* 00   */ V(3, 15, 1),       /* 334 */
1380
  /* 01   */ V(3, 15, 1),
1381
  /* 10   */ V(8, 13, 2),
1382
  /* 11   */ V(13, 8, 2),
1383
 
1384
  /* 0000 0000 1000 ... */
1385
  /* 0    */ V(2, 15, 1),       /* 338 */
1386
  /* 1    */ V(15, 2, 1),
1387
 
1388
  /* 0000 0000 1001 ... */
1389
  /* 00   */ V(6, 14, 2),       /* 340 */
1390
  /* 01   */ V(9, 12, 2),
1391
  /* 10   */ V(0, 15, 1),
1392
  /* 11   */ V(0, 15, 1),
1393
 
1394
  /* 0000 0000 1010 ... */
1395
  /* 00   */ V(12, 9, 2),       /* 344 */
1396
  /* 01   */ V(5, 14, 2),
1397
  /* 10   */ V(10, 11, 1),
1398
  /* 11   */ V(10, 11, 1),
1399
 
1400
  /* 0000 0000 1011 ... */
1401
  /* 00   */ V(7, 13, 2),       /* 348 */
1402
  /* 01   */ V(13, 7, 2),
1403
  /* 10   */ V(4, 14, 1),
1404
  /* 11   */ V(4, 14, 1),
1405
 
1406
  /* 0000 0000 1100 ... */
1407
  /* 00   */ V(12, 8, 2),       /* 352 */
1408
  /* 01   */ V(13, 6, 2),
1409
  /* 10   */ V(3, 14, 1),
1410
  /* 11   */ V(3, 14, 1),
1411
 
1412
  /* 0000 0000 1101 ... */
1413
  /* 00   */ V(11, 9, 1),       /* 356 */
1414
  /* 01   */ V(11, 9, 1),
1415
  /* 10   */ V(9, 11, 2),
1416
  /* 11   */ V(10, 10, 2),
1417
 
1418
  /* 0000 0001 0001 ... */
1419
  /* 0    */ V(11, 10, 1),      /* 360 */
1420
  /* 1    */ V(14, 5, 1),
1421
 
1422
  /* 0000 0001 0010 ... */
1423
  /* 0    */ V(14, 4, 1),       /* 362 */
1424
  /* 1    */ V(8, 12, 1),
1425
 
1426
  /* 0000 0001 0011 ... */
1427
  /* 0    */ V(6, 13, 1),       /* 364 */
1428
  /* 1    */ V(14, 3, 1),
1429
 
1430
  /* 0000 0001 0101 ... */
1431
  /* 0    */ V(2, 14, 1),       /* 366 */
1432
  /* 1    */ V(0, 14, 1),
1433
 
1434
  /* 0000 0001 1000 ... */
1435
  /* 0    */ V(14, 0, 1),        /* 368 */
1436
  /* 1    */ V(5, 13, 1),
1437
 
1438
  /* 0000 0001 1001 ... */
1439
  /* 0    */ V(13, 5, 1),       /* 370 */
1440
  /* 1    */ V(7, 12, 1),
1441
 
1442
  /* 0000 0001 1010 ... */
1443
  /* 0    */ V(12, 7, 1),       /* 372 */
1444
  /* 1    */ V(4, 13, 1),
1445
 
1446
  /* 0000 0001 1011 ... */
1447
  /* 0    */ V(8, 11, 1),       /* 374 */
1448
  /* 1    */ V(11, 8, 1),
1449
 
1450
  /* 0000 0001 1100 ... */
1451
  /* 0    */ V(13, 4, 1),       /* 376 */
1452
  /* 1    */ V(9, 10, 1),
1453
 
1454
  /* 0000 0001 1101 ... */
1455
  /* 0    */ V(10, 9, 1),       /* 378 */
1456
  /* 1    */ V(6, 12, 1),
1457
 
1458
  /* 0000 0010 0000 ... */
1459
  /* 0    */ V(13, 3, 1),       /* 380 */
1460
  /* 1    */ V(7, 11, 1),
1461
 
1462
  /* 0000 0010 0101 ... */
1463
  /* 0    */ V(5, 12, 1),       /* 382 */
1464
  /* 1    */ V(12, 5, 1),
1465
 
1466
  /* 0000 0010 0110 ... */
1467
  /* 0    */ V(9, 9, 1),        /* 384 */
1468
  /* 1    */ V(7, 10, 1),
1469
 
1470
  /* 0000 0010 1000 ... */
1471
  /* 0    */ V(10, 7, 1),       /* 386 */
1472
  /* 1    */ V(9, 7, 1),
1473
 
1474
  /* 0000 0000 0000 0000 ... */
1475
  /* 000  */ V(15, 14, 3),      /* 388 */
1476
  /* 001  */ V(15, 12, 3),
1477
  /* 010  */ V(15, 13, 2),
1478
  /* 011  */ V(15, 13, 2),
1479
  /* 100  */ V(14, 13, 1),
1480
  /* 101  */ V(14, 13, 1),
1481
  /* 110  */ V(14, 13, 1),
1482
  /* 111  */ V(14, 13, 1),
1483
 
1484
  /* 0000 0000 0000 1011 ... */
1485
  /* 0    */ V(10, 15, 1),      /* 396 */
1486
  /* 1    */ V(14, 9, 1)
1487
};
1488
 
1489
static
1490
union huffpair const hufftab15[] = {
1491
  /* 0000 */ PTR(16, 4),
1492
  /* 0001 */ PTR(32, 4),
1493
  /* 0010 */ PTR(48, 4),
1494
  /* 0011 */ PTR(64, 4),
1495
  /* 0100 */ PTR(80, 4),
1496
  /* 0101 */ PTR(96, 3),
1497
  /* 0110 */ PTR(104, 3),
1498
  /* 0111 */ PTR(112, 2),
1499
  /* 1000 */ PTR(116, 1),
1500
  /* 1001 */ PTR(118, 1),
1501
  /* 1010 */ V(1, 1, 3),
1502
  /* 1011 */ V(1, 1, 3),
1503
  /* 1100 */ V(0, 1, 4),
1504
  /* 1101 */ V(1, 0, 4),
1505
  /* 1110 */ V(0, 0, 3),
1506
  /* 1111 */ V(0, 0, 3),
1507
 
1508
  /* 0000 ... */
1509
  /* 0000 */ PTR(120, 4),       /* 16 */
1510
  /* 0001 */ PTR(136, 4),
1511
  /* 0010 */ PTR(152, 4),
1512
  /* 0011 */ PTR(168, 4),
1513
  /* 0100 */ PTR(184, 4),
1514
  /* 0101 */ PTR(200, 3),
1515
  /* 0110 */ PTR(208, 3),
1516
  /* 0111 */ PTR(216, 4),
1517
  /* 1000 */ PTR(232, 3),
1518
  /* 1001 */ PTR(240, 3),
1519
  /* 1010 */ PTR(248, 3),
1520
  /* 1011 */ PTR(256, 3),
1521
  /* 1100 */ PTR(264, 2),
1522
  /* 1101 */ PTR(268, 3),
1523
  /* 1110 */ PTR(276, 3),
1524
  /* 1111 */ PTR(284, 2),
1525
 
1526
  /* 0001 ... */
1527
  /* 0000 */ PTR(288, 2),       /* 32 */
1528
  /* 0001 */ PTR(292, 2),
1529
  /* 0010 */ PTR(296, 2),
1530
  /* 0011 */ PTR(300, 2),
1531
  /* 0100 */ PTR(304, 2),
1532
  /* 0101 */ PTR(308, 2),
1533
  /* 0110 */ PTR(312, 2),
1534
  /* 0111 */ PTR(316, 2),
1535
  /* 1000 */ PTR(320, 1),
1536
  /* 1001 */ PTR(322, 1),
1537
  /* 1010 */ PTR(324, 1),
1538
  /* 1011 */ PTR(326, 2),
1539
  /* 1100 */ PTR(330, 1),
1540
  /* 1101 */ PTR(332, 1),
1541
  /* 1110 */ PTR(334, 2),
1542
  /* 1111 */ PTR(338, 1),
1543
 
1544
  /* 0010 ... */
1545
  /* 0000 */ PTR(340, 1),       /* 48 */
1546
  /* 0001 */ PTR(342, 1),
1547
  /* 0010 */ V(9, 1, 4),
1548
  /* 0011 */ PTR(344, 1),
1549
  /* 0100 */ PTR(346, 1),
1550
  /* 0101 */ PTR(348, 1),
1551
  /* 0110 */ PTR(350, 1),
1552
  /* 0111 */ PTR(352, 1),
1553
  /* 1000 */ V(2, 8, 4),
1554
  /* 1001 */ V(8, 2, 4),
1555
  /* 1010 */ V(1, 8, 4),
1556
  /* 1011 */ V(8, 1, 4),
1557
  /* 1100 */ PTR(354, 1),
1558
  /* 1101 */ PTR(356, 1),
1559
  /* 1110 */ PTR(358, 1),
1560
  /* 1111 */ PTR(360, 1),
1561
 
1562
  /* 0011 ... */
1563
  /* 0000 */ V(2, 7, 4),        /* 64 */
1564
  /* 0001 */ V(7, 2, 4),
1565
  /* 0010 */ V(6, 4, 4),
1566
  /* 0011 */ V(1, 7, 4),
1567
  /* 0100 */ V(5, 5, 4),
1568
  /* 0101 */ V(7, 1, 4),
1569
  /* 0110 */ PTR(362, 1),
1570
  /* 0111 */ V(3, 6, 4),
1571
  /* 1000 */ V(6, 3, 4),
1572
  /* 1001 */ V(4, 5, 4),
1573
  /* 1010 */ V(5, 4, 4),
1574
  /* 1011 */ V(2, 6, 4),
1575
  /* 1100 */ V(6, 2, 4),
1576
  /* 1101 */ V(1, 6, 4),
1577
  /* 1110 */ PTR(364, 1),
1578
  /* 1111 */ V(3, 5, 4),
1579
 
1580
  /* 0100 ... */
1581
  /* 0000 */ V(6, 1, 3),        /* 80 */
1582
  /* 0001 */ V(6, 1, 3),
1583
  /* 0010 */ V(5, 3, 4),
1584
  /* 0011 */ V(4, 4, 4),
1585
  /* 0100 */ V(2, 5, 3),
1586
  /* 0101 */ V(2, 5, 3),
1587
  /* 0110 */ V(5, 2, 3),
1588
  /* 0111 */ V(5, 2, 3),
1589
  /* 1000 */ V(1, 5, 3),
1590
  /* 1001 */ V(1, 5, 3),
1591
  /* 1010 */ V(5, 1, 3),
1592
  /* 1011 */ V(5, 1, 3),
1593
  /* 1100 */ V(0, 5, 4),
1594
  /* 1101 */ V(5, 0, 4),
1595
  /* 1110 */ V(3, 4, 3),
1596
  /* 1111 */ V(3, 4, 3),
1597
 
1598
  /* 0101 ... */
1599
  /* 000  */ V(4, 3, 3),        /* 96 */
1600
  /* 001  */ V(2, 4, 3),
1601
  /* 010  */ V(4, 2, 3),
1602
  /* 011  */ V(3, 3, 3),
1603
  /* 100  */ V(4, 1, 2),
1604
  /* 101  */ V(4, 1, 2),
1605
  /* 110  */ V(1, 4, 3),
1606
  /* 111  */ V(0, 4, 3),
1607
 
1608
  /* 0110 ... */
1609
  /* 000  */ V(2, 3, 2),        /* 104 */
1610
  /* 001  */ V(2, 3, 2),
1611
  /* 010  */ V(3, 2, 2),
1612
  /* 011  */ V(3, 2, 2),
1613
  /* 100  */ V(4, 0, 3),
1614
  /* 101  */ V(0, 3, 3),
1615
  /* 110  */ V(1, 3, 2),
1616
  /* 111  */ V(1, 3, 2),
1617
 
1618
  /* 0111 ... */
1619
  /* 00   */ V(3, 1, 2),        /* 112 */
1620
  /* 01   */ V(3, 0, 2),
1621
  /* 10   */ V(2, 2, 1),
1622
  /* 11   */ V(2, 2, 1),
1623
 
1624
  /* 1000 ... */
1625
  /* 0    */ V(1, 2, 1),        /* 116 */
1626
  /* 1    */ V(2, 1, 1),
1627
 
1628
  /* 1001 ... */
1629
  /* 0    */ V(0, 2, 1), /* 118 */
1630
  /* 1    */ V(2, 0, 1),
1631
 
1632
  /* 0000 0000 ... */
1633
  /* 0000 */ PTR(366, 1),       /* 120 */
1634
  /* 0001 */ PTR(368, 1),
1635
  /* 0010 */ V(14, 14, 4),
1636
  /* 0011 */ PTR(370, 1),
1637
  /* 0100 */ PTR(372, 1),
1638
  /* 0101 */ PTR(374, 1),
1639
  /* 0110 */ V(15, 11, 4),
1640
  /* 0111 */ PTR(376, 1),
1641
  /* 1000 */ V(13, 13, 4),
1642
  /* 1001 */ V(10, 15, 4),
1643
  /* 1010 */ V(15, 10, 4),
1644
  /* 1011 */ V(11, 14, 4),
1645
  /* 1100 */ V(14, 11, 4),
1646
  /* 1101 */ V(12, 13, 4),
1647
  /* 1110 */ V(13, 12, 4),
1648
  /* 1111 */ V(9, 15, 4),
1649
 
1650
  /* 0000 0001 ... */
1651
  /* 0000 */ V(15, 9, 4),       /* 136 */
1652
  /* 0001 */ V(14, 10, 4),
1653
  /* 0010 */ V(11, 13, 4),
1654
  /* 0011 */ V(13, 11, 4),
1655
  /* 0100 */ V(8, 15, 4),
1656
  /* 0101 */ V(15, 8, 4),
1657
  /* 0110 */ V(12, 12, 4),
1658
  /* 0111 */ V(9, 14, 4),
1659
  /* 1000 */ V(14, 9, 4),
1660
  /* 1001 */ V(7, 15, 4),
1661
  /* 1010 */ V(15, 7, 4),
1662
  /* 1011 */ V(10, 13, 4),
1663
  /* 1100 */ V(13, 10, 4),
1664
  /* 1101 */ V(11, 12, 4),
1665
  /* 1110 */ V(6, 15, 4),
1666
  /* 1111 */ PTR(378, 1),
1667
 
1668
  /* 0000 0010 ... */
1669
  /* 0000 */ V(12, 11, 3),      /* 152 */
1670
  /* 0001 */ V(12, 11, 3),
1671
  /* 0010 */ V(15, 6, 3),
1672
  /* 0011 */ V(15, 6, 3),
1673
  /* 0100 */ V(8, 14, 4),
1674
  /* 0101 */ V(14, 8, 4),
1675
  /* 0110 */ V(5, 15, 4),
1676
  /* 0111 */ V(9, 13, 4),
1677
  /* 1000 */ V(15, 5, 3),
1678
  /* 1001 */ V(15, 5, 3),
1679
  /* 1010 */ V(7, 14, 3),
1680
  /* 1011 */ V(7, 14, 3),
1681
  /* 1100 */ V(14, 7, 3),
1682
  /* 1101 */ V(14, 7, 3),
1683
  /* 1110 */ V(10, 12, 3),
1684
  /* 1111 */ V(10, 12, 3),
1685
 
1686
  /* 0000 0011 ... */
1687
  /* 0000 */ V(12, 10, 3),      /* 168 */
1688
  /* 0001 */ V(12, 10, 3),
1689
  /* 0010 */ V(11, 11, 3),
1690
  /* 0011 */ V(11, 11, 3),
1691
  /* 0100 */ V(13, 9, 4),
1692
  /* 0101 */ V(8, 13, 4),
1693
  /* 0110 */ V(4, 15, 3),
1694
  /* 0111 */ V(4, 15, 3),
1695
  /* 1000 */ V(15, 4, 3),
1696
  /* 1001 */ V(15, 4, 3),
1697
  /* 1010 */ V(3, 15, 3),
1698
  /* 1011 */ V(3, 15, 3),
1699
  /* 1100 */ V(15, 3, 3),
1700
  /* 1101 */ V(15, 3, 3),
1701
  /* 1110 */ V(13, 8, 3),
1702
  /* 1111 */ V(13, 8, 3),
1703
 
1704
  /* 0000 0100 ... */
1705
  /* 0000 */ V(14, 6, 3),       /* 184 */
1706
  /* 0001 */ V(14, 6, 3),
1707
  /* 0010 */ V(2, 15, 3),
1708
  /* 0011 */ V(2, 15, 3),
1709
  /* 0100 */ V(15, 2, 3),
1710
  /* 0101 */ V(15, 2, 3),
1711
  /* 0110 */ V(6, 14, 4),
1712
  /* 0111 */ V(15, 0, 4),
1713
  /* 1000 */ V(1, 15, 3),
1714
  /* 1001 */ V(1, 15, 3),
1715
  /* 1010 */ V(15, 1, 3),
1716
  /* 1011 */ V(15, 1, 3),
1717
  /* 1100 */ V(9, 12, 3),
1718
  /* 1101 */ V(9, 12, 3),
1719
  /* 1110 */ V(12, 9, 3),
1720
  /* 1111 */ V(12, 9, 3),
1721
 
1722
  /* 0000 0101 ... */
1723
  /* 000  */ V(5, 14, 3),       /* 200 */
1724
  /* 001  */ V(10, 11, 3),
1725
  /* 010  */ V(11, 10, 3),
1726
  /* 011  */ V(14, 5, 3),
1727
  /* 100  */ V(7, 13, 3),
1728
  /* 101  */ V(13, 7, 3),
1729
  /* 110  */ V(4, 14, 3),
1730
  /* 111  */ V(14, 4, 3),
1731
 
1732
  /* 0000 0110 ... */
1733
  /* 000  */ V(8, 12, 3),       /* 208 */
1734
  /* 001  */ V(12, 8, 3),
1735
  /* 010  */ V(3, 14, 3),
1736
  /* 011  */ V(6, 13, 3),
1737
  /* 100  */ V(13, 6, 3),
1738
  /* 101  */ V(14, 3, 3),
1739
  /* 110  */ V(9, 11, 3),
1740
  /* 111  */ V(11, 9, 3),
1741
 
1742
  /* 0000 0111 ... */
1743
  /* 0000 */ V(2, 14, 3),       /* 216 */
1744
  /* 0001 */ V(2, 14, 3),
1745
  /* 0010 */ V(10, 10, 3),
1746
  /* 0011 */ V(10, 10, 3),
1747
  /* 0100 */ V(14, 2, 3),
1748
  /* 0101 */ V(14, 2, 3),
1749
  /* 0110 */ V(1, 14, 3),
1750
  /* 0111 */ V(1, 14, 3),
1751
  /* 1000 */ V(14, 1, 3),
1752
  /* 1001 */ V(14, 1, 3),
1753
  /* 1010 */ V(0, 14, 4),
1754
  /* 1011 */ V(14, 0, 4),
1755
  /* 1100 */ V(5, 13, 3),
1756
  /* 1101 */ V(5, 13, 3),
1757
  /* 1110 */ V(13, 5, 3),
1758
  /* 1111 */ V(13, 5, 3),
1759
 
1760
  /* 0000 1000 ... */
1761
  /* 000  */ V(7, 12, 3),       /* 232 */
1762
  /* 001  */ V(12, 7, 3),
1763
  /* 010  */ V(4, 13, 3),
1764
  /* 011  */ V(8, 11, 3),
1765
  /* 100  */ V(13, 4, 2),
1766
  /* 101  */ V(13, 4, 2),
1767
  /* 110  */ V(11, 8, 3),
1768
  /* 111  */ V(9, 10, 3),
1769
 
1770
  /* 0000 1001 ... */
1771
  /* 000  */ V(10, 9, 3),       /* 240 */
1772
  /* 001  */ V(6, 12, 3),
1773
  /* 010  */ V(12, 6, 3),
1774
  /* 011  */ V(3, 13, 3),
1775
  /* 100  */ V(13, 3, 2),
1776
  /* 101  */ V(13, 3, 2),
1777
  /* 110  */ V(13, 2, 2),
1778
  /* 111  */ V(13, 2, 2),
1779
 
1780
  /* 0000 1010 ... */
1781
  /* 000  */ V(2, 13, 3),       /* 248 */
1782
  /* 001  */ V(0, 13, 3),
1783
  /* 010  */ V(1, 13, 2),
1784
  /* 011  */ V(1, 13, 2),
1785
  /* 100  */ V(7, 11, 2),
1786
  /* 101  */ V(7, 11, 2),
1787
  /* 110  */ V(11, 7, 2),
1788
  /* 111  */ V(11, 7, 2),
1789
 
1790
  /* 0000 1011 ... */
1791
  /* 000  */ V(13, 1, 2),       /* 256 */
1792
  /* 001  */ V(13, 1, 2),
1793
  /* 010  */ V(5, 12, 3),
1794
  /* 011  */ V(13, 0, 3),
1795
  /* 100  */ V(12, 5, 2),
1796
  /* 101  */ V(12, 5, 2),
1797
  /* 110  */ V(8, 10, 2),
1798
  /* 111  */ V(8, 10, 2),
1799
 
1800
  /* 0000 1100 ... */
1801
  /* 00   */ V(10, 8, 2),       /* 264 */
1802
  /* 01   */ V(4, 12, 2),
1803
  /* 10   */ V(12, 4, 2),
1804
  /* 11   */ V(6, 11, 2),
1805
 
1806
  /* 0000 1101 ... */
1807
  /* 000  */ V(11, 6, 2),       /* 268 */
1808
  /* 001  */ V(11, 6, 2),
1809
  /* 010  */ V(9, 9, 3),
1810
  /* 011  */ V(0, 12, 3),
1811
  /* 100  */ V(3, 12, 2),
1812
  /* 101  */ V(3, 12, 2),
1813
  /* 110  */ V(12, 3, 2),
1814
  /* 111  */ V(12, 3, 2),
1815
 
1816
  /* 0000 1110 ... */
1817
  /* 000  */ V(7, 10, 2),       /* 276 */
1818
  /* 001  */ V(7, 10, 2),
1819
  /* 010  */ V(10, 7, 2),
1820
  /* 011  */ V(10, 7, 2),
1821
  /* 100  */ V(10, 6, 2),
1822
  /* 101  */ V(10, 6, 2),
1823
  /* 110  */ V(12, 0, 3),
1824
  /* 111  */ V(0, 11, 3),
1825
 
1826
  /* 0000 1111 ... */
1827
  /* 00   */ V(12, 2, 1),       /* 284 */
1828
  /* 01   */ V(12, 2, 1),
1829
  /* 10   */ V(2, 12, 2),
1830
  /* 11   */ V(5, 11, 2),
1831
 
1832
  /* 0001 0000 ... */
1833
  /* 00   */ V(11, 5, 2),       /* 288 */
1834
  /* 01   */ V(1, 12, 2),
1835
  /* 10   */ V(8, 9, 2),
1836
  /* 11   */ V(9, 8, 2),
1837
 
1838
  /* 0001 0001 ... */
1839
  /* 00   */ V(12, 1, 2),       /* 292 */
1840
  /* 01   */ V(4, 11, 2),
1841
  /* 10   */ V(11, 4, 2),
1842
  /* 11   */ V(6, 10, 2),
1843
 
1844
  /* 0001 0010 ... */
1845
  /* 00   */ V(3, 11, 2),       /* 296 */
1846
  /* 01   */ V(7, 9, 2),
1847
  /* 10   */ V(11, 3, 1),
1848
  /* 11   */ V(11, 3, 1),
1849
 
1850
  /* 0001 0011 ... */
1851
  /* 00   */ V(9, 7, 2),        /* 300 */
1852
  /* 01   */ V(8, 8, 2),
1853
  /* 10   */ V(2, 11, 2),
1854
  /* 11   */ V(5, 10, 2),
1855
 
1856
  /* 0001 0100 ... */
1857
  /* 00   */ V(11, 2, 1),       /* 304 */
1858
  /* 01   */ V(11, 2, 1),
1859
  /* 10   */ V(10, 5, 2),
1860
  /* 11   */ V(1, 11, 2),
1861
 
1862
  /* 0001 0101 ... */
1863
  /* 00   */ V(11, 1, 1),       /* 308 */
1864
  /* 01   */ V(11, 1, 1),
1865
  /* 10   */ V(11, 0, 2),
1866
  /* 11   */ V(6, 9, 2),
1867
 
1868
  /* 0001 0110 ... */
1869
  /* 00   */ V(9, 6, 2),        /* 312 */
1870
  /* 01   */ V(4, 10, 2),
1871
  /* 10   */ V(10, 4, 2),
1872
  /* 11   */ V(7, 8, 2),
1873
 
1874
  /* 0001 0111 ... */
1875
  /* 00   */ V(8, 7, 2),        /* 316 */
1876
  /* 01   */ V(3, 10, 2),
1877
  /* 10   */ V(10, 3, 1),
1878
  /* 11   */ V(10, 3, 1),
1879
 
1880
  /* 0001 1000 ... */
1881
  /* 0    */ V(5, 9, 1),        /* 320 */
1882
  /* 1    */ V(9, 5, 1),
1883
 
1884
  /* 0001 1001 ... */
1885
  /* 0    */ V(2, 10, 1),       /* 322 */
1886
  /* 1    */ V(10, 2, 1),
1887
 
1888
  /* 0001 1010 ... */
1889
  /* 0    */ V(1, 10, 1),       /* 324 */
1890
  /* 1    */ V(10, 1, 1),
1891
 
1892
  /* 0001 1011 ... */
1893
  /* 00   */ V(0, 10, 2),        /* 326 */
1894
  /* 01   */ V(10, 0, 2),
1895
  /* 10   */ V(6, 8, 1),
1896
  /* 11   */ V(6, 8, 1),
1897
 
1898
  /* 0001 1100 ... */
1899
  /* 0    */ V(8, 6, 1),        /* 330 */
1900
  /* 1    */ V(4, 9, 1),
1901
 
1902
  /* 0001 1101 ... */
1903
  /* 0    */ V(9, 4, 1),        /* 332 */
1904
  /* 1    */ V(3, 9, 1),
1905
 
1906
  /* 0001 1110 ... */
1907
  /* 00   */ V(9, 3, 1),        /* 334 */
1908
  /* 01   */ V(9, 3, 1),
1909
  /* 10   */ V(7, 7, 2),
1910
  /* 11   */ V(0, 9, 2),
1911
 
1912
  /* 0001 1111 ... */
1913
  /* 0    */ V(5, 8, 1),        /* 338 */
1914
  /* 1    */ V(8, 5, 1),
1915
 
1916
  /* 0010 0000 ... */
1917
  /* 0    */ V(2, 9, 1),        /* 340 */
1918
  /* 1    */ V(6, 7, 1),
1919
 
1920
  /* 0010 0001 ... */
1921
  /* 0    */ V(7, 6, 1),        /* 342 */
1922
  /* 1    */ V(9, 2, 1),
1923
 
1924
  /* 0010 0011 ... */
1925
  /* 0    */ V(1, 9, 1),        /* 344 */
1926
  /* 1    */ V(9, 0, 1),
1927
 
1928
  /* 0010 0100 ... */
1929
  /* 0    */ V(4, 8, 1),        /* 346 */
1930
  /* 1    */ V(8, 4, 1),
1931
 
1932
  /* 0010 0101 ... */
1933
  /* 0    */ V(5, 7, 1),        /* 348 */
1934
  /* 1    */ V(7, 5, 1),
1935
 
1936
  /* 0010 0110 ... */
1937
  /* 0    */ V(3, 8, 1),        /* 350 */
1938
  /* 1    */ V(8, 3, 1),
1939
 
1940
  /* 0010 0111 ... */
1941
  /* 0    */ V(6, 6, 1),        /* 352 */
1942
  /* 1    */ V(4, 7, 1),
1943
 
1944
  /* 0010 1100 ... */
1945
  /* 0    */ V(7, 4, 1),        /* 354 */
1946
  /* 1    */ V(0, 8, 1),
1947
 
1948
  /* 0010 1101 ... */
1949
  /* 0    */ V(8, 0, 1), /* 356 */
1950
  /* 1    */ V(5, 6, 1),
1951
 
1952
  /* 0010 1110 ... */
1953
  /* 0    */ V(6, 5, 1),        /* 358 */
1954
  /* 1    */ V(3, 7, 1),
1955
 
1956
  /* 0010 1111 ... */
1957
  /* 0    */ V(7, 3, 1),        /* 360 */
1958
  /* 1    */ V(4, 6, 1),
1959
 
1960
  /* 0011 0110 ... */
1961
  /* 0    */ V(0, 7, 1), /* 362 */
1962
  /* 1    */ V(7, 0, 1),
1963
 
1964
  /* 0011 1110 ... */
1965
  /* 0    */ V(0, 6, 1), /* 364 */
1966
  /* 1    */ V(6, 0, 1),
1967
 
1968
  /* 0000 0000 0000 ... */
1969
  /* 0    */ V(15, 15, 1),      /* 366 */
1970
  /* 1    */ V(14, 15, 1),
1971
 
1972
  /* 0000 0000 0001 ... */
1973
  /* 0    */ V(15, 14, 1),      /* 368 */
1974
  /* 1    */ V(13, 15, 1),
1975
 
1976
  /* 0000 0000 0011 ... */
1977
  /* 0    */ V(15, 13, 1),      /* 370 */
1978
  /* 1    */ V(12, 15, 1),
1979
 
1980
  /* 0000 0000 0100 ... */
1981
  /* 0    */ V(15, 12, 1),      /* 372 */
1982
  /* 1    */ V(13, 14, 1),
1983
 
1984
  /* 0000 0000 0101 ... */
1985
  /* 0    */ V(14, 13, 1),      /* 374 */
1986
  /* 1    */ V(11, 15, 1),
1987
 
1988
  /* 0000 0000 0111 ... */
1989
  /* 0    */ V(12, 14, 1),      /* 376 */
1990
  /* 1    */ V(14, 12, 1),
1991
 
1992
  /* 0000 0001 1111 ... */
1993
  /* 0    */ V(10, 14, 1),      /* 378 */
1994
  /* 1    */ V(0, 15, 1)
1995
};
1996
 
1997
static
1998
union huffpair const hufftab16[] = {
1999
  /* 0000 */ PTR(16, 4),
2000
  /* 0001 */ PTR(32, 4),
2001
  /* 0010 */ PTR(48, 4),
2002
  /* 0011 */ PTR(64, 2),
2003
  /* 0100 */ V(1, 1, 4),
2004
  /* 0101 */ V(0, 1, 4),
2005
  /* 0110 */ V(1, 0, 3),
2006
  /* 0111 */ V(1, 0, 3),
2007
  /* 1000 */ V(0, 0, 1),
2008
  /* 1001 */ V(0, 0, 1),
2009
  /* 1010 */ V(0, 0, 1),
2010
  /* 1011 */ V(0, 0, 1),
2011
  /* 1100 */ V(0, 0, 1),
2012
  /* 1101 */ V(0, 0, 1),
2013
  /* 1110 */ V(0, 0, 1),
2014
  /* 1111 */ V(0, 0, 1),
2015
 
2016
  /* 0000 ... */
2017
  /* 0000 */ PTR(68, 3),        /* 16 */
2018
  /* 0001 */ PTR(76, 3),
2019
  /* 0010 */ PTR(84, 2),
2020
  /* 0011 */ V(15, 15, 4),
2021
  /* 0100 */ PTR(88, 2),
2022
  /* 0101 */ PTR(92, 1),
2023
  /* 0110 */ PTR(94, 4),
2024
  /* 0111 */ V(15, 2, 4),
2025
  /* 1000 */ PTR(110, 1),
2026
  /* 1001 */ V(1, 15, 4),
2027
  /* 1010 */ V(15, 1, 4),
2028
  /* 1011 */ PTR(112, 4),
2029
  /* 1100 */ PTR(128, 4),
2030
  /* 1101 */ PTR(144, 4),
2031
  /* 1110 */ PTR(160, 4),
2032
  /* 1111 */ PTR(176, 4),
2033
 
2034
  /* 0001 ... */
2035
  /* 0000 */ PTR(192, 4),       /* 32 */
2036
  /* 0001 */ PTR(208, 3),
2037
  /* 0010 */ PTR(216, 3),
2038
  /* 0011 */ PTR(224, 3),
2039
  /* 0100 */ PTR(232, 3),
2040
  /* 0101 */ PTR(240, 3),
2041
  /* 0110 */ PTR(248, 3),
2042
  /* 0111 */ PTR(256, 3),
2043
  /* 1000 */ PTR(264, 2),
2044
  /* 1001 */ PTR(268, 2),
2045
  /* 1010 */ PTR(272, 1),
2046
  /* 1011 */ PTR(274, 2),
2047
  /* 1100 */ PTR(278, 2),
2048
  /* 1101 */ PTR(282, 1),
2049
  /* 1110 */ V(5, 1, 4),
2050
  /* 1111 */ PTR(284, 1),
2051
 
2052
  /* 0010 ... */
2053
  /* 0000 */ PTR(286, 1),       /* 48 */
2054
  /* 0001 */ PTR(288, 1),
2055
  /* 0010 */ PTR(290, 1),
2056
  /* 0011 */ V(1, 4, 4),
2057
  /* 0100 */ V(4, 1, 4),
2058
  /* 0101 */ PTR(292, 1),
2059
  /* 0110 */ V(2, 3, 4),
2060
  /* 0111 */ V(3, 2, 4),
2061
  /* 1000 */ V(1, 3, 3),
2062
  /* 1001 */ V(1, 3, 3),
2063
  /* 1010 */ V(3, 1, 3),
2064
  /* 1011 */ V(3, 1, 3),
2065
  /* 1100 */ V(0, 3, 4),
2066
  /* 1101 */ V(3, 0, 4),
2067
  /* 1110 */ V(2, 2, 3),
2068
  /* 1111 */ V(2, 2, 3),
2069
 
2070
  /* 0011 ... */
2071
  /* 00   */ V(1, 2, 2),        /* 64 */
2072
  /* 01   */ V(2, 1, 2),
2073
  /* 10   */ V(0, 2, 2),
2074
  /* 11   */ V(2, 0, 2),
2075
 
2076
  /* 0000 0000 ... */
2077
  /* 000  */ V(14, 15, 3),      /* 68 */
2078
  /* 001  */ V(15, 14, 3),
2079
  /* 010  */ V(13, 15, 3),
2080
  /* 011  */ V(15, 13, 3),
2081
  /* 100  */ V(12, 15, 3),
2082
  /* 101  */ V(15, 12, 3),
2083
  /* 110  */ V(11, 15, 3),
2084
  /* 111  */ V(15, 11, 3),
2085
 
2086
  /* 0000 0001 ... */
2087
  /* 000  */ V(10, 15, 2),      /* 76 */
2088
  /* 001  */ V(10, 15, 2),
2089
  /* 010  */ V(15, 10, 3),
2090
  /* 011  */ V(9, 15, 3),
2091
  /* 100  */ V(15, 9, 3),
2092
  /* 101  */ V(15, 8, 3),
2093
  /* 110  */ V(8, 15, 2),
2094
  /* 111  */ V(8, 15, 2),
2095
 
2096
  /* 0000 0010 ... */
2097
  /* 00   */ V(7, 15, 2),       /* 84 */
2098
  /* 01   */ V(15, 7, 2),
2099
  /* 10   */ V(6, 15, 2),
2100
  /* 11   */ V(15, 6, 2),
2101
 
2102
  /* 0000 0100 ... */
2103
  /* 00   */ V(5, 15, 2),       /* 88 */
2104
  /* 01   */ V(15, 5, 2),
2105
  /* 10   */ V(4, 15, 1),
2106
  /* 11   */ V(4, 15, 1),
2107
 
2108
  /* 0000 0101 ... */
2109
  /* 0    */ V(15, 4, 1),       /* 92 */
2110
  /* 1    */ V(15, 3, 1),
2111
 
2112
  /* 0000 0110 ... */
2113
  /* 0000 */ V(15, 0, 1),        /* 94 */
2114
  /* 0001 */ V(15, 0, 1),
2115
  /* 0010 */ V(15, 0, 1),
2116
  /* 0011 */ V(15, 0, 1),
2117
  /* 0100 */ V(15, 0, 1),
2118
  /* 0101 */ V(15, 0, 1),
2119
  /* 0110 */ V(15, 0, 1),
2120
  /* 0111 */ V(15, 0, 1),
2121
  /* 1000 */ V(3, 15, 2),
2122
  /* 1001 */ V(3, 15, 2),
2123
  /* 1010 */ V(3, 15, 2),
2124
  /* 1011 */ V(3, 15, 2),
2125
  /* 1100 */ PTR(294, 4),
2126
  /* 1101 */ PTR(310, 3),
2127
  /* 1110 */ PTR(318, 3),
2128
  /* 1111 */ PTR(326, 3),
2129
 
2130
  /* 0000 1000 ... */
2131
  /* 0    */ V(2, 15, 1),       /* 110 */
2132
  /* 1    */ V(0, 15, 1),
2133
 
2134
  /* 0000 1011 ... */
2135
  /* 0000 */ PTR(334, 2),       /* 112 */
2136
  /* 0001 */ PTR(338, 2),
2137
  /* 0010 */ PTR(342, 2),
2138
  /* 0011 */ PTR(346, 1),
2139
  /* 0100 */ PTR(348, 2),
2140
  /* 0101 */ PTR(352, 2),
2141
  /* 0110 */ PTR(356, 1),
2142
  /* 0111 */ PTR(358, 2),
2143
  /* 1000 */ PTR(362, 2),
2144
  /* 1001 */ PTR(366, 2),
2145
  /* 1010 */ PTR(370, 2),
2146
  /* 1011 */ V(14, 3, 4),
2147
  /* 1100 */ PTR(374, 1),
2148
  /* 1101 */ PTR(376, 1),
2149
  /* 1110 */ PTR(378, 1),
2150
  /* 1111 */ PTR(380, 1),
2151
 
2152
  /* 0000 1100 ... */
2153
  /* 0000 */ PTR(382, 1),       /* 128 */
2154
  /* 0001 */ PTR(384, 1),
2155
  /* 0010 */ PTR(386, 1),
2156
  /* 0011 */ V(0, 13, 4),
2157
  /* 0100 */ PTR(388, 1),
2158
  /* 0101 */ PTR(390, 1),
2159
  /* 0110 */ PTR(392, 1),
2160
  /* 0111 */ V(3, 12, 4),
2161
  /* 1000 */ PTR(394, 1),
2162
  /* 1001 */ V(1, 12, 4),
2163
  /* 1010 */ V(12, 0, 4),
2164
  /* 1011 */ PTR(396, 1),
2165
  /* 1100 */ V(14, 2, 3),
2166
  /* 1101 */ V(14, 2, 3),
2167
  /* 1110 */ V(2, 14, 4),
2168
  /* 1111 */ V(1, 14, 4),
2169
 
2170
  /* 0000 1101 ... */
2171
  /* 0000 */ V(13, 3, 4),       /* 144 */
2172
  /* 0001 */ V(2, 13, 4),
2173
  /* 0010 */ V(13, 2, 4),
2174
  /* 0011 */ V(13, 1, 4),
2175
  /* 0100 */ V(3, 11, 4),
2176
  /* 0101 */ PTR(398, 1),
2177
  /* 0110 */ V(1, 13, 3),
2178
  /* 0111 */ V(1, 13, 3),
2179
  /* 1000 */ V(12, 4, 4),
2180
  /* 1001 */ V(6, 11, 4),
2181
  /* 1010 */ V(12, 3, 4),
2182
  /* 1011 */ V(10, 7, 4),
2183
  /* 1100 */ V(2, 12, 3),
2184
  /* 1101 */ V(2, 12, 3),
2185
  /* 1110 */ V(12, 2, 4),
2186
  /* 1111 */ V(11, 5, 4),
2187
 
2188
  /* 0000 1110 ... */
2189
  /* 0000 */ V(12, 1, 4),       /* 160 */
2190
  /* 0001 */ V(0, 12, 4),
2191
  /* 0010 */ V(4, 11, 4),
2192
  /* 0011 */ V(11, 4, 4),
2193
  /* 0100 */ V(6, 10, 4),
2194
  /* 0101 */ V(10, 6, 4),
2195
  /* 0110 */ V(11, 3, 3),
2196
  /* 0111 */ V(11, 3, 3),
2197
  /* 1000 */ V(5, 10, 4),
2198
  /* 1001 */ V(10, 5, 4),
2199
  /* 1010 */ V(2, 11, 3),
2200
  /* 1011 */ V(2, 11, 3),
2201
  /* 1100 */ V(11, 2, 3),
2202
  /* 1101 */ V(11, 2, 3),
2203
  /* 1110 */ V(1, 11, 3),
2204
  /* 1111 */ V(1, 11, 3),
2205
 
2206
  /* 0000 1111 ... */
2207
  /* 0000 */ V(11, 1, 3),       /* 176 */
2208
  /* 0001 */ V(11, 1, 3),
2209
  /* 0010 */ V(0, 11, 4),
2210
  /* 0011 */ V(11, 0, 4),
2211
  /* 0100 */ V(6, 9, 4),
2212
  /* 0101 */ V(9, 6, 4),
2213
  /* 0110 */ V(4, 10, 4),
2214
  /* 0111 */ V(10, 4, 4),
2215
  /* 1000 */ V(7, 8, 4),
2216
  /* 1001 */ V(8, 7, 4),
2217
  /* 1010 */ V(10, 3, 3),
2218
  /* 1011 */ V(10, 3, 3),
2219
  /* 1100 */ V(3, 10, 4),
2220
  /* 1101 */ V(5, 9, 4),
2221
  /* 1110 */ V(2, 10, 3),
2222
  /* 1111 */ V(2, 10, 3),
2223
 
2224
  /* 0001 0000 ... */
2225
  /* 0000 */ V(9, 5, 4),        /* 192 */
2226
  /* 0001 */ V(6, 8, 4),
2227
  /* 0010 */ V(10, 1, 3),
2228
  /* 0011 */ V(10, 1, 3),
2229
  /* 0100 */ V(8, 6, 4),
2230
  /* 0101 */ V(7, 7, 4),
2231
  /* 0110 */ V(9, 4, 3),
2232
  /* 0111 */ V(9, 4, 3),
2233
  /* 1000 */ V(4, 9, 4),
2234
  /* 1001 */ V(5, 7, 4),
2235
  /* 1010 */ V(6, 7, 3),
2236
  /* 1011 */ V(6, 7, 3),
2237
  /* 1100 */ V(10, 2, 2),
2238
  /* 1101 */ V(10, 2, 2),
2239
  /* 1110 */ V(10, 2, 2),
2240
  /* 1111 */ V(10, 2, 2),
2241
 
2242
  /* 0001 0001 ... */
2243
  /* 000  */ V(1, 10, 2),       /* 208 */
2244
  /* 001  */ V(1, 10, 2),
2245
  /* 010  */ V(0, 10, 3),
2246
  /* 011  */ V(10, 0, 3),
2247
  /* 100  */ V(3, 9, 3),
2248
  /* 101  */ V(9, 3, 3),
2249
  /* 110  */ V(5, 8, 3),
2250
  /* 111  */ V(8, 5, 3),
2251
 
2252
  /* 0001 0010 ... */
2253
  /* 000  */ V(2, 9, 2),        /* 216 */
2254
  /* 001  */ V(2, 9, 2),
2255
  /* 010  */ V(9, 2, 2),
2256
  /* 011  */ V(9, 2, 2),
2257
  /* 100  */ V(7, 6, 3),
2258
  /* 101  */ V(0, 9, 3),
2259
  /* 110  */ V(1, 9, 2),
2260
  /* 111  */ V(1, 9, 2),
2261
 
2262
  /* 0001 0011 ... */
2263
  /* 000  */ V(9, 1, 2),        /* 224 */
2264
  /* 001  */ V(9, 1, 2),
2265
  /* 010  */ V(9, 0, 3),
2266
  /* 011  */ V(4, 8, 3),
2267
  /* 100  */ V(8, 4, 3),
2268
  /* 101  */ V(7, 5, 3),
2269
  /* 110  */ V(3, 8, 3),
2270
  /* 111  */ V(8, 3, 3),
2271
 
2272
  /* 0001 0100 ... */
2273
  /* 000  */ V(6, 6, 3),        /* 232 */
2274
  /* 001  */ V(2, 8, 3),
2275
  /* 010  */ V(8, 2, 2),
2276
  /* 011  */ V(8, 2, 2),
2277
  /* 100  */ V(4, 7, 3),
2278
  /* 101  */ V(7, 4, 3),
2279
  /* 110  */ V(1, 8, 2),
2280
  /* 111  */ V(1, 8, 2),
2281
 
2282
  /* 0001 0101 ... */
2283
  /* 000  */ V(8, 1, 2),        /* 240 */
2284
  /* 001  */ V(8, 1, 2),
2285
  /* 010  */ V(8, 0, 2),
2286
  /* 011  */ V(8, 0, 2),
2287
  /* 100  */ V(0, 8, 3),
2288
  /* 101  */ V(5, 6, 3),
2289
  /* 110  */ V(3, 7, 2),
2290
  /* 111  */ V(3, 7, 2),
2291
 
2292
  /* 0001 0110 ... */
2293
  /* 000  */ V(7, 3, 2),        /* 248 */
2294
  /* 001  */ V(7, 3, 2),
2295
  /* 010  */ V(6, 5, 3),
2296
  /* 011  */ V(4, 6, 3),
2297
  /* 100  */ V(2, 7, 2),
2298
  /* 101  */ V(2, 7, 2),
2299
  /* 110  */ V(7, 2, 2),
2300
  /* 111  */ V(7, 2, 2),
2301
 
2302
  /* 0001 0111 ... */
2303
  /* 000  */ V(6, 4, 3),        /* 256 */
2304
  /* 001  */ V(5, 5, 3),
2305
  /* 010  */ V(0, 7, 2),
2306
  /* 011  */ V(0, 7, 2),
2307
  /* 100  */ V(1, 7, 1),
2308
  /* 101  */ V(1, 7, 1),
2309
  /* 110  */ V(1, 7, 1),
2310
  /* 111  */ V(1, 7, 1),
2311
 
2312
  /* 0001 1000 ... */
2313
  /* 00   */ V(7, 1, 1),        /* 264  */
2314
  /* 01   */ V(7, 1, 1),
2315
  /* 10   */ V(7, 0, 2),
2316
  /* 11   */ V(3, 6, 2),
2317
 
2318
  /* 0001 1001 ... */
2319
  /* 00   */ V(6, 3, 2),        /* 268 */
2320
  /* 01   */ V(4, 5, 2),
2321
  /* 10   */ V(5, 4, 2),
2322
  /* 11   */ V(2, 6, 2),
2323
 
2324
  /* 0001 1010 ... */
2325
  /* 0    */ V(6, 2, 1),        /* 272 */
2326
  /* 1    */ V(1, 6, 1),
2327
 
2328
  /* 0001 1011 ... */
2329
  /* 00   */ V(6, 1, 1),        /* 274 */
2330
  /* 01   */ V(6, 1, 1),
2331
  /* 10   */ V(0, 6, 2),
2332
  /* 11   */ V(6, 0, 2),
2333
 
2334
  /* 0001 1100 ... */
2335
  /* 00   */ V(5, 3, 1),        /* 278 */
2336
  /* 01   */ V(5, 3, 1),
2337
  /* 10   */ V(3, 5, 2),
2338
  /* 11   */ V(4, 4, 2),
2339
 
2340
  /* 0001 1101 ... */
2341
  /* 0    */ V(2, 5, 1),        /* 282 */
2342
  /* 1    */ V(5, 2, 1),
2343
 
2344
  /* 0001 1111 ... */
2345
  /* 0    */ V(1, 5, 1),        /* 284 */
2346
  /* 1    */ V(0, 5, 1),
2347
 
2348
  /* 0010 0000 ... */
2349
  /* 0    */ V(3, 4, 1),        /* 286 */
2350
  /* 1    */ V(4, 3, 1),
2351
 
2352
  /* 0010 0001 ... */
2353
  /* 0    */ V(5, 0, 1), /* 288 */
2354
  /* 1    */ V(2, 4, 1),
2355
 
2356
  /* 0010 0010 ... */
2357
  /* 0    */ V(4, 2, 1),        /* 290 */
2358
  /* 1    */ V(3, 3, 1),
2359
 
2360
  /* 0010 0101 ... */
2361
  /* 0    */ V(0, 4, 1), /* 292 */
2362
  /* 1    */ V(4, 0, 1),
2363
 
2364
  /* 0000 0110 1100 ... */
2365
  /* 0000 */ V(12, 14, 4),      /* 294 */
2366
  /* 0001 */ PTR(400, 1),
2367
  /* 0010 */ V(13, 14, 3),
2368
  /* 0011 */ V(13, 14, 3),
2369
  /* 0100 */ V(14, 9, 3),
2370
  /* 0101 */ V(14, 9, 3),
2371
  /* 0110 */ V(14, 10, 4),
2372
  /* 0111 */ V(13, 9, 4),
2373
  /* 1000 */ V(14, 14, 2),
2374
  /* 1001 */ V(14, 14, 2),
2375
  /* 1010 */ V(14, 14, 2),
2376
  /* 1011 */ V(14, 14, 2),
2377
  /* 1100 */ V(14, 13, 3),
2378
  /* 1101 */ V(14, 13, 3),
2379
  /* 1110 */ V(14, 11, 3),
2380
  /* 1111 */ V(14, 11, 3),
2381
 
2382
  /* 0000 0110 1101 ... */
2383
  /* 000  */ V(11, 14, 2),      /* 310 */
2384
  /* 001  */ V(11, 14, 2),
2385
  /* 010  */ V(12, 13, 2),
2386
  /* 011  */ V(12, 13, 2),
2387
  /* 100  */ V(13, 12, 3),
2388
  /* 101  */ V(13, 11, 3),
2389
  /* 110  */ V(10, 14, 2),
2390
  /* 111  */ V(10, 14, 2),
2391
 
2392
  /* 0000 0110 1110 ... */
2393
  /* 000  */ V(12, 12, 2),      /* 318 */
2394
  /* 001  */ V(12, 12, 2),
2395
  /* 010  */ V(10, 13, 3),
2396
  /* 011  */ V(13, 10, 3),
2397
  /* 100  */ V(7, 14, 3),
2398
  /* 101  */ V(10, 12, 3),
2399
  /* 110  */ V(12, 10, 2),
2400
  /* 111  */ V(12, 10, 2),
2401
 
2402
  /* 0000 0110 1111 ... */
2403
  /* 000  */ V(12, 9, 3),       /* 326 */
2404
  /* 001  */ V(7, 13, 3),
2405
  /* 010  */ V(5, 14, 2),
2406
  /* 011  */ V(5, 14, 2),
2407
  /* 100  */ V(11, 13, 1),
2408
  /* 101  */ V(11, 13, 1),
2409
  /* 110  */ V(11, 13, 1),
2410
  /* 111  */ V(11, 13, 1),
2411
 
2412
  /* 0000 1011 0000 ... */
2413
  /* 00   */ V(9, 14, 1),       /* 334 */
2414
  /* 01   */ V(9, 14, 1),
2415
  /* 10   */ V(11, 12, 2),
2416
  /* 11   */ V(12, 11, 2),
2417
 
2418
  /* 0000 1011 0001 ... */
2419
  /* 00   */ V(8, 14, 2),       /* 338 */
2420
  /* 01   */ V(14, 8, 2),
2421
  /* 10   */ V(9, 13, 2),
2422
  /* 11   */ V(14, 7, 2),
2423
 
2424
  /* 0000 1011 0010 ... */
2425
  /* 00   */ V(11, 11, 2),      /* 342 */
2426
  /* 01   */ V(8, 13, 2),
2427
  /* 10   */ V(13, 8, 2),
2428
  /* 11   */ V(6, 14, 2),
2429
 
2430
  /* 0000 1011 0011 ... */
2431
  /* 0    */ V(14, 6, 1),       /* 346 */
2432
  /* 1    */ V(9, 12, 1),
2433
 
2434
  /* 0000 1011 0100 ... */
2435
  /* 00   */ V(10, 11, 2),      /* 348 */
2436
  /* 01   */ V(11, 10, 2),
2437
  /* 10   */ V(14, 5, 2),
2438
  /* 11   */ V(13, 7, 2),
2439
 
2440
  /* 0000 1011 0101 ... */
2441
  /* 00   */ V(4, 14, 1),       /* 352 */
2442
  /* 01   */ V(4, 14, 1),
2443
  /* 10   */ V(14, 4, 2),
2444
  /* 11   */ V(8, 12, 2),
2445
 
2446
  /* 0000 1011 0110 ... */
2447
  /* 0    */ V(12, 8, 1),       /* 356 */
2448
  /* 1    */ V(3, 14, 1),
2449
 
2450
  /* 0000 1011 0111 ... */
2451
  /* 00   */ V(6, 13, 1),       /* 358 */
2452
  /* 01   */ V(6, 13, 1),
2453
  /* 10   */ V(13, 6, 2),
2454
  /* 11   */ V(9, 11, 2),
2455
 
2456
  /* 0000 1011 1000 ... */
2457
  /* 00   */ V(11, 9, 2),       /* 362 */
2458
  /* 01   */ V(10, 10, 2),
2459
  /* 10   */ V(14, 1, 1),
2460
  /* 11   */ V(14, 1, 1),
2461
 
2462
  /* 0000 1011 1001 ... */
2463
  /* 00   */ V(13, 4, 1),       /* 366 */
2464
  /* 01   */ V(13, 4, 1),
2465
  /* 10   */ V(11, 8, 2),
2466
  /* 11   */ V(10, 9, 2),
2467
 
2468
  /* 0000 1011 1010 ... */
2469
  /* 00   */ V(7, 11, 1),       /* 370 */
2470
  /* 01   */ V(7, 11, 1),
2471
  /* 10   */ V(11, 7, 2),
2472
  /* 11   */ V(13, 0, 2),
2473
 
2474
  /* 0000 1011 1100 ... */
2475
  /* 0    */ V(0, 14, 1),        /* 374 */
2476
  /* 1    */ V(14, 0, 1),
2477
 
2478
  /* 0000 1011 1101 ... */
2479
  /* 0    */ V(5, 13, 1),       /* 376 */
2480
  /* 1    */ V(13, 5, 1),
2481
 
2482
  /* 0000 1011 1110 ... */
2483
  /* 0    */ V(7, 12, 1),       /* 378 */
2484
  /* 1    */ V(12, 7, 1),
2485
 
2486
  /* 0000 1011 1111 ... */
2487
  /* 0    */ V(4, 13, 1),       /* 380 */
2488
  /* 1    */ V(8, 11, 1),
2489
 
2490
  /* 0000 1100 0000 ... */
2491
  /* 0    */ V(9, 10, 1),       /* 382 */
2492
  /* 1    */ V(6, 12, 1),
2493
 
2494
  /* 0000 1100 0001 ... */
2495
  /* 0    */ V(12, 6, 1),       /* 384 */
2496
  /* 1    */ V(3, 13, 1),
2497
 
2498
  /* 0000 1100 0010 ... */
2499
  /* 0    */ V(5, 12, 1),       /* 386 */
2500
  /* 1    */ V(12, 5, 1),
2501
 
2502
  /* 0000 1100 0100 ... */
2503
  /* 0    */ V(8, 10, 1),       /* 388 */
2504
  /* 1    */ V(10, 8, 1),
2505
 
2506
  /* 0000 1100 0101 ... */
2507
  /* 0    */ V(9, 9, 1),        /* 390 */
2508
  /* 1    */ V(4, 12, 1),
2509
 
2510
  /* 0000 1100 0110 ... */
2511
  /* 0    */ V(11, 6, 1),       /* 392 */
2512
  /* 1    */ V(7, 10, 1),
2513
 
2514
  /* 0000 1100 1000 ... */
2515
  /* 0    */ V(5, 11, 1),       /* 394 */
2516
  /* 1    */ V(8, 9, 1),
2517
 
2518
  /* 0000 1100 1011 ... */
2519
  /* 0    */ V(9, 8, 1),        /* 396 */
2520
  /* 1    */ V(7, 9, 1),
2521
 
2522
  /* 0000 1101 0101 ... */
2523
  /* 0    */ V(9, 7, 1),        /* 398 */
2524
  /* 1    */ V(8, 8, 1),
2525
 
2526
  /* 0000 0110 1100 0001 ... */
2527
  /* 0    */ V(14, 12, 1),      /* 400 */
2528
  /* 1    */ V(13, 13, 1)
2529
};
2530
 
2531
static
2532
union huffpair const hufftab24[] = {
2533
  /* 0000 */ PTR(16, 4),
2534
  /* 0001 */ PTR(32, 4),
2535
  /* 0010 */ PTR(48, 4),
2536
  /* 0011 */ V(15, 15, 4),
2537
  /* 0100 */ PTR(64, 4),
2538
  /* 0101 */ PTR(80, 4),
2539
  /* 0110 */ PTR(96, 4),
2540
  /* 0111 */ PTR(112, 4),
2541
  /* 1000 */ PTR(128, 4),
2542
  /* 1001 */ PTR(144, 4),
2543
  /* 1010 */ PTR(160, 3),
2544
  /* 1011 */ PTR(168, 2),
2545
  /* 1100 */ V(1, 1, 4),
2546
  /* 1101 */ V(0, 1, 4),
2547
  /* 1110 */ V(1, 0, 4),
2548
  /* 1111 */ V(0, 0, 4),
2549
 
2550
  /* 0000 ... */
2551
  /* 0000 */ V(14, 15, 4),      /* 16 */
2552
  /* 0001 */ V(15, 14, 4),
2553
  /* 0010 */ V(13, 15, 4),
2554
  /* 0011 */ V(15, 13, 4),
2555
  /* 0100 */ V(12, 15, 4),
2556
  /* 0101 */ V(15, 12, 4),
2557
  /* 0110 */ V(11, 15, 4),
2558
  /* 0111 */ V(15, 11, 4),
2559
  /* 1000 */ V(15, 10, 3),
2560
  /* 1001 */ V(15, 10, 3),
2561
  /* 1010 */ V(10, 15, 4),
2562
  /* 1011 */ V(9, 15, 4),
2563
  /* 1100 */ V(15, 9, 3),
2564
  /* 1101 */ V(15, 9, 3),
2565
  /* 1110 */ V(15, 8, 3),
2566
  /* 1111 */ V(15, 8, 3),
2567
 
2568
  /* 0001 ... */
2569
  /* 0000 */ V(8, 15, 4),       /* 32 */
2570
  /* 0001 */ V(7, 15, 4),
2571
  /* 0010 */ V(15, 7, 3),
2572
  /* 0011 */ V(15, 7, 3),
2573
  /* 0100 */ V(6, 15, 3),
2574
  /* 0101 */ V(6, 15, 3),
2575
  /* 0110 */ V(15, 6, 3),
2576
  /* 0111 */ V(15, 6, 3),
2577
  /* 1000 */ V(5, 15, 3),
2578
  /* 1001 */ V(5, 15, 3),
2579
  /* 1010 */ V(15, 5, 3),
2580
  /* 1011 */ V(15, 5, 3),
2581
  /* 1100 */ V(4, 15, 3),
2582
  /* 1101 */ V(4, 15, 3),
2583
  /* 1110 */ V(15, 4, 3),
2584
  /* 1111 */ V(15, 4, 3),
2585
 
2586
  /* 0010 ... */
2587
  /* 0000 */ V(3, 15, 3),       /* 48 */
2588
  /* 0001 */ V(3, 15, 3),
2589
  /* 0010 */ V(15, 3, 3),
2590
  /* 0011 */ V(15, 3, 3),
2591
  /* 0100 */ V(2, 15, 3),
2592
  /* 0101 */ V(2, 15, 3),
2593
  /* 0110 */ V(15, 2, 3),
2594
  /* 0111 */ V(15, 2, 3),
2595
  /* 1000 */ V(15, 1, 3),
2596
  /* 1001 */ V(15, 1, 3),
2597
  /* 1010 */ V(1, 15, 4),
2598
  /* 1011 */ V(15, 0, 4),
2599
  /* 1100 */ PTR(172, 3),
2600
  /* 1101 */ PTR(180, 3),
2601
  /* 1110 */ PTR(188, 3),
2602
  /* 1111 */ PTR(196, 3),
2603
 
2604
  /* 0100 ... */
2605
  /* 0000 */ PTR(204, 4),       /* 64 */
2606
  /* 0001 */ PTR(220, 3),
2607
  /* 0010 */ PTR(228, 3),
2608
  /* 0011 */ PTR(236, 3),
2609
  /* 0100 */ PTR(244, 2),
2610
  /* 0101 */ PTR(248, 2),
2611
  /* 0110 */ PTR(252, 2),
2612
  /* 0111 */ PTR(256, 2),
2613
  /* 1000 */ PTR(260, 2),
2614
  /* 1001 */ PTR(264, 2),
2615
  /* 1010 */ PTR(268, 2),
2616
  /* 1011 */ PTR(272, 2),
2617
  /* 1100 */ PTR(276, 2),
2618
  /* 1101 */ PTR(280, 3),
2619
  /* 1110 */ PTR(288, 2),
2620
  /* 1111 */ PTR(292, 2),
2621
 
2622
  /* 0101 ... */
2623
  /* 0000 */ PTR(296, 2),       /* 80 */
2624
  /* 0001 */ PTR(300, 3),
2625
  /* 0010 */ PTR(308, 2),
2626
  /* 0011 */ PTR(312, 3),
2627
  /* 0100 */ PTR(320, 1),
2628
  /* 0101 */ PTR(322, 2),
2629
  /* 0110 */ PTR(326, 2),
2630
  /* 0111 */ PTR(330, 1),
2631
  /* 1000 */ PTR(332, 2),
2632
  /* 1001 */ PTR(336, 1),
2633
  /* 1010 */ PTR(338, 1),
2634
  /* 1011 */ PTR(340, 1),
2635
  /* 1100 */ PTR(342, 1),
2636
  /* 1101 */ PTR(344, 1),
2637
  /* 1110 */ PTR(346, 1),
2638
  /* 1111 */ PTR(348, 1),
2639
 
2640
  /* 0110 ... */
2641
  /* 0000 */ PTR(350, 1),       /* 96 */
2642
  /* 0001 */ PTR(352, 1),
2643
  /* 0010 */ PTR(354, 1),
2644
  /* 0011 */ PTR(356, 1),
2645
  /* 0100 */ PTR(358, 1),
2646
  /* 0101 */ PTR(360, 1),
2647
  /* 0110 */ PTR(362, 1),
2648
  /* 0111 */ PTR(364, 1),
2649
  /* 1000 */ PTR(366, 1),
2650
  /* 1001 */ PTR(368, 1),
2651
  /* 1010 */ PTR(370, 2),
2652
  /* 1011 */ PTR(374, 1),
2653
  /* 1100 */ PTR(376, 2),
2654
  /* 1101 */ V(7, 3, 4),
2655
  /* 1110 */ PTR(380, 1),
2656
  /* 1111 */ V(7, 2, 4),
2657
 
2658
  /* 0111 ... */
2659
  /* 0000 */ V(4, 6, 4),        /* 112 */
2660
  /* 0001 */ V(6, 4, 4),
2661
  /* 0010 */ V(5, 5, 4),
2662
  /* 0011 */ V(7, 1, 4),
2663
  /* 0100 */ V(3, 6, 4),
2664
  /* 0101 */ V(6, 3, 4),
2665
  /* 0110 */ V(4, 5, 4),
2666
  /* 0111 */ V(5, 4, 4),
2667
  /* 1000 */ V(2, 6, 4),
2668
  /* 1001 */ V(6, 2, 4),
2669
  /* 1010 */ V(1, 6, 4),
2670
  /* 1011 */ V(6, 1, 4),
2671
  /* 1100 */ PTR(382, 1),
2672
  /* 1101 */ V(3, 5, 4),
2673
  /* 1110 */ V(5, 3, 4),
2674
  /* 1111 */ V(4, 4, 4),
2675
 
2676
  /* 1000 ... */
2677
  /* 0000 */ V(2, 5, 4),        /* 128 */
2678
  /* 0001 */ V(5, 2, 4),
2679
  /* 0010 */ V(1, 5, 4),
2680
  /* 0011 */ PTR(384, 1),
2681
  /* 0100 */ V(5, 1, 3),
2682
  /* 0101 */ V(5, 1, 3),
2683
  /* 0110 */ V(3, 4, 4),
2684
  /* 0111 */ V(4, 3, 4),
2685
  /* 1000 */ V(2, 4, 3),
2686
  /* 1001 */ V(2, 4, 3),
2687
  /* 1010 */ V(4, 2, 3),
2688
  /* 1011 */ V(4, 2, 3),
2689
  /* 1100 */ V(3, 3, 3),
2690
  /* 1101 */ V(3, 3, 3),
2691
  /* 1110 */ V(1, 4, 3),
2692
  /* 1111 */ V(1, 4, 3),
2693
 
2694
  /* 1001 ... */
2695
  /* 0000 */ V(4, 1, 3),        /* 144 */
2696
  /* 0001 */ V(4, 1, 3),
2697
  /* 0010 */ V(0, 4, 4),
2698
  /* 0011 */ V(4, 0, 4),
2699
  /* 0100 */ V(2, 3, 3),
2700
  /* 0101 */ V(2, 3, 3),
2701
  /* 0110 */ V(3, 2, 3),
2702
  /* 0111 */ V(3, 2, 3),
2703
  /* 1000 */ V(1, 3, 2),
2704
  /* 1001 */ V(1, 3, 2),
2705
  /* 1010 */ V(1, 3, 2),
2706
  /* 1011 */ V(1, 3, 2),
2707
  /* 1100 */ V(3, 1, 2),
2708
  /* 1101 */ V(3, 1, 2),
2709
  /* 1110 */ V(3, 1, 2),
2710
  /* 1111 */ V(3, 1, 2),
2711
 
2712
  /* 1010 ... */
2713
  /* 000  */ V(0, 3, 3), /* 160 */
2714
  /* 001  */ V(3, 0, 3),
2715
  /* 010  */ V(2, 2, 2),
2716
  /* 011  */ V(2, 2, 2),
2717
  /* 100  */ V(1, 2, 1),
2718
  /* 101  */ V(1, 2, 1),
2719
  /* 110  */ V(1, 2, 1),
2720
  /* 111  */ V(1, 2, 1),
2721
 
2722
  /* 1011 ... */
2723
  /* 00   */ V(2, 1, 1),        /* 168 */
2724
  /* 01   */ V(2, 1, 1),
2725
  /* 10   */ V(0, 2, 2),
2726
  /* 11   */ V(2, 0, 2),
2727
 
2728
  /* 0010 1100 ... */
2729
  /* 000  */ V(0, 15, 1),        /* 172 */
2730
  /* 001  */ V(0, 15, 1),
2731
  /* 010  */ V(0, 15, 1),
2732
  /* 011  */ V(0, 15, 1),
2733
  /* 100  */ V(14, 14, 3),
2734
  /* 101  */ V(13, 14, 3),
2735
  /* 110  */ V(14, 13, 3),
2736
  /* 111  */ V(12, 14, 3),
2737
 
2738
  /* 0010 1101 ... */
2739
  /* 000  */ V(14, 12, 3),      /* 180 */
2740
  /* 001  */ V(13, 13, 3),
2741
  /* 010  */ V(11, 14, 3),
2742
  /* 011  */ V(14, 11, 3),
2743
  /* 100  */ V(12, 13, 3),
2744
  /* 101  */ V(13, 12, 3),
2745
  /* 110  */ V(10, 14, 3),
2746
  /* 111  */ V(14, 10, 3),
2747
 
2748
  /* 0010 1110 ... */
2749
  /* 000  */ V(11, 13, 3),      /* 188 */
2750
  /* 001  */ V(13, 11, 3),
2751
  /* 010  */ V(12, 12, 3),
2752
  /* 011  */ V(9, 14, 3),
2753
  /* 100  */ V(14, 9, 3),
2754
  /* 101  */ V(10, 13, 3),
2755
  /* 110  */ V(13, 10, 3),
2756
  /* 111  */ V(11, 12, 3),
2757
 
2758
  /* 0010 1111 ... */
2759
  /* 000  */ V(12, 11, 3),      /* 196 */
2760
  /* 001  */ V(8, 14, 3),
2761
  /* 010  */ V(14, 8, 3),
2762
  /* 011  */ V(9, 13, 3),
2763
  /* 100  */ V(13, 9, 3),
2764
  /* 101  */ V(7, 14, 3),
2765
  /* 110  */ V(14, 7, 3),
2766
  /* 111  */ V(10, 12, 3),
2767
 
2768
  /* 0100 0000 ... */
2769
  /* 0000 */ V(12, 10, 3),      /* 204 */
2770
  /* 0001 */ V(12, 10, 3),
2771
  /* 0010 */ V(11, 11, 3),
2772
  /* 0011 */ V(11, 11, 3),
2773
  /* 0100 */ V(8, 13, 3),
2774
  /* 0101 */ V(8, 13, 3),
2775
  /* 0110 */ V(13, 8, 3),
2776
  /* 0111 */ V(13, 8, 3),
2777
  /* 1000 */ V(0, 14, 4),
2778
  /* 1001 */ V(14, 0, 4),
2779
  /* 1010 */ V(0, 13, 3),
2780
  /* 1011 */ V(0, 13, 3),
2781
  /* 1100 */ V(14, 6, 2),
2782
  /* 1101 */ V(14, 6, 2),
2783
  /* 1110 */ V(14, 6, 2),
2784
  /* 1111 */ V(14, 6, 2),
2785
 
2786
  /* 0100 0001 ... */
2787
  /* 000  */ V(6, 14, 3),       /* 220 */
2788
  /* 001  */ V(9, 12, 3),
2789
  /* 010  */ V(12, 9, 2),
2790
  /* 011  */ V(12, 9, 2),
2791
  /* 100  */ V(5, 14, 2),
2792
  /* 101  */ V(5, 14, 2),
2793
  /* 110  */ V(11, 10, 2),
2794
  /* 111  */ V(11, 10, 2),
2795
 
2796
  /* 0100 0010 ... */
2797
  /* 000  */ V(14, 5, 2),       /* 228 */
2798
  /* 001  */ V(14, 5, 2),
2799
  /* 010  */ V(10, 11, 3),
2800
  /* 011  */ V(7, 13, 3),
2801
  /* 100  */ V(13, 7, 2),
2802
  /* 101  */ V(13, 7, 2),
2803
  /* 110  */ V(14, 4, 2),
2804
  /* 111  */ V(14, 4, 2),
2805
 
2806
  /* 0100 0011 ... */
2807
  /* 000  */ V(8, 12, 2),       /* 236 */
2808
  /* 001  */ V(8, 12, 2),
2809
  /* 010  */ V(12, 8, 2),
2810
  /* 011  */ V(12, 8, 2),
2811
  /* 100  */ V(4, 14, 3),
2812
  /* 101  */ V(2, 14, 3),
2813
  /* 110  */ V(3, 14, 2),
2814
  /* 111  */ V(3, 14, 2),
2815
 
2816
  /* 0100 0100 ... */
2817
  /* 00   */ V(6, 13, 2),       /* 244 */
2818
  /* 01   */ V(13, 6, 2),
2819
  /* 10   */ V(14, 3, 2),
2820
  /* 11   */ V(9, 11, 2),
2821
 
2822
  /* 0100 0101 ... */
2823
  /* 00   */ V(11, 9, 2),       /* 248 */
2824
  /* 01   */ V(10, 10, 2),
2825
  /* 10   */ V(14, 2, 2),
2826
  /* 11   */ V(1, 14, 2),
2827
 
2828
  /* 0100 0110 ... */
2829
  /* 00   */ V(14, 1, 2),       /* 252 */
2830
  /* 01   */ V(5, 13, 2),
2831
  /* 10   */ V(13, 5, 2),
2832
  /* 11   */ V(7, 12, 2),
2833
 
2834
  /* 0100 0111 ... */
2835
  /* 00   */ V(12, 7, 2),       /* 256 */
2836
  /* 01   */ V(4, 13, 2),
2837
  /* 10   */ V(8, 11, 2),
2838
  /* 11   */ V(11, 8, 2),
2839
 
2840
  /* 0100 1000 ... */
2841
  /* 00   */ V(13, 4, 2),       /* 260 */
2842
  /* 01   */ V(9, 10, 2),
2843
  /* 10   */ V(10, 9, 2),
2844
  /* 11   */ V(6, 12, 2),
2845
 
2846
  /* 0100 1001 ... */
2847
  /* 00   */ V(12, 6, 2),       /* 264 */
2848
  /* 01   */ V(3, 13, 2),
2849
  /* 10   */ V(13, 3, 2),
2850
  /* 11   */ V(2, 13, 2),
2851
 
2852
  /* 0100 1010 ... */
2853
  /* 00   */ V(13, 2, 2),       /* 268 */
2854
  /* 01   */ V(1, 13, 2),
2855
  /* 10   */ V(7, 11, 2),
2856
  /* 11   */ V(11, 7, 2),
2857
 
2858
  /* 0100 1011 ... */
2859
  /* 00   */ V(13, 1, 2),       /* 272 */
2860
  /* 01   */ V(5, 12, 2),
2861
  /* 10   */ V(12, 5, 2),
2862
  /* 11   */ V(8, 10, 2),
2863
 
2864
  /* 0100 1100 ... */
2865
  /* 00   */ V(10, 8, 2),       /* 276 */
2866
  /* 01   */ V(9, 9, 2),
2867
  /* 10   */ V(4, 12, 2),
2868
  /* 11   */ V(12, 4, 2),
2869
 
2870
  /* 0100 1101 ... */
2871
  /* 000  */ V(6, 11, 2),       /* 280 */
2872
  /* 001  */ V(6, 11, 2),
2873
  /* 010  */ V(11, 6, 2),
2874
  /* 011  */ V(11, 6, 2),
2875
  /* 100  */ V(13, 0, 3),
2876
  /* 101  */ V(0, 12, 3),
2877
  /* 110  */ V(3, 12, 2),
2878
  /* 111  */ V(3, 12, 2),
2879
 
2880
  /* 0100 1110 ... */
2881
  /* 00   */ V(12, 3, 2),       /* 288 */
2882
  /* 01   */ V(7, 10, 2),
2883
  /* 10   */ V(10, 7, 2),
2884
  /* 11   */ V(2, 12, 2),
2885
 
2886
  /* 0100 1111 ... */
2887
  /* 00   */ V(12, 2, 2),       /* 292 */
2888
  /* 01   */ V(5, 11, 2),
2889
  /* 10   */ V(11, 5, 2),
2890
  /* 11   */ V(1, 12, 2),
2891
 
2892
  /* 0101 0000 ... */
2893
  /* 00   */ V(8, 9, 2),        /* 296 */
2894
  /* 01   */ V(9, 8, 2),
2895
  /* 10   */ V(12, 1, 2),
2896
  /* 11   */ V(4, 11, 2),
2897
 
2898
  /* 0101 0001 ... */
2899
  /* 000  */ V(12, 0, 3),        /* 300 */
2900
  /* 001  */ V(0, 11, 3),
2901
  /* 010  */ V(3, 11, 2),
2902
  /* 011  */ V(3, 11, 2),
2903
  /* 100  */ V(11, 0, 3),
2904
  /* 101  */ V(0, 10, 3),
2905
  /* 110  */ V(1, 10, 2),
2906
  /* 111  */ V(1, 10, 2),
2907
 
2908
  /* 0101 0010 ... */
2909
  /* 00   */ V(11, 4, 1),       /* 308 */
2910
  /* 01   */ V(11, 4, 1),
2911
  /* 10   */ V(6, 10, 2),
2912
  /* 11   */ V(10, 6, 2),
2913
 
2914
  /* 0101 0011 ... */
2915
  /* 000  */ V(7, 9, 2),        /* 312 */
2916
  /* 001  */ V(7, 9, 2),
2917
  /* 010  */ V(9, 7, 2),
2918
  /* 011  */ V(9, 7, 2),
2919
  /* 100  */ V(10, 0, 3),
2920
  /* 101  */ V(0, 9, 3),
2921
  /* 110  */ V(9, 0, 2),
2922
  /* 111  */ V(9, 0, 2),
2923
 
2924
  /* 0101 0100 ... */
2925
  /* 0    */ V(11, 3, 1),       /* 320 */
2926
  /* 1    */ V(8, 8, 1),
2927
 
2928
  /* 0101 0101 ... */
2929
  /* 00   */ V(2, 11, 2),       /* 322 */
2930
  /* 01   */ V(5, 10, 2),
2931
  /* 10   */ V(11, 2, 1),
2932
  /* 11   */ V(11, 2, 1),
2933
 
2934
  /* 0101 0110 ... */
2935
  /* 00   */ V(10, 5, 2),       /* 326 */
2936
  /* 01   */ V(1, 11, 2),
2937
  /* 10   */ V(11, 1, 2),
2938
  /* 11   */ V(6, 9, 2),
2939
 
2940
  /* 0101 0111 ... */
2941
  /* 0    */ V(9, 6, 1),        /* 330 */
2942
  /* 1    */ V(10, 4, 1),
2943
 
2944
  /* 0101 1000 ... */
2945
  /* 00   */ V(4, 10, 2),       /* 332 */
2946
  /* 01   */ V(7, 8, 2),
2947
  /* 10   */ V(8, 7, 1),
2948
  /* 11   */ V(8, 7, 1),
2949
 
2950
  /* 0101 1001 ... */
2951
  /* 0    */ V(3, 10, 1),       /* 336 */
2952
  /* 1    */ V(10, 3, 1),
2953
 
2954
  /* 0101 1010 ... */
2955
  /* 0    */ V(5, 9, 1),        /* 338 */
2956
  /* 1    */ V(9, 5, 1),
2957
 
2958
  /* 0101 1011 ... */
2959
  /* 0    */ V(2, 10, 1),       /* 340 */
2960
  /* 1    */ V(10, 2, 1),
2961
 
2962
  /* 0101 1100 ... */
2963
  /* 0    */ V(10, 1, 1),       /* 342 */
2964
  /* 1    */ V(6, 8, 1),
2965
 
2966
  /* 0101 1101 ... */
2967
  /* 0    */ V(8, 6, 1),        /* 344 */
2968
  /* 1    */ V(7, 7, 1),
2969
 
2970
  /* 0101 1110 ... */
2971
  /* 0    */ V(4, 9, 1),        /* 346 */
2972
  /* 1    */ V(9, 4, 1),
2973
 
2974
  /* 0101 1111 ... */
2975
  /* 0    */ V(3, 9, 1),        /* 348 */
2976
  /* 1    */ V(9, 3, 1),
2977
 
2978
  /* 0110 0000 ... */
2979
  /* 0    */ V(5, 8, 1),        /* 350 */
2980
  /* 1    */ V(8, 5, 1),
2981
 
2982
  /* 0110 0001 ... */
2983
  /* 0    */ V(2, 9, 1),        /* 352 */
2984
  /* 1    */ V(6, 7, 1),
2985
 
2986
  /* 0110 0010 ... */
2987
  /* 0    */ V(7, 6, 1),        /* 354 */
2988
  /* 1    */ V(9, 2, 1),
2989
 
2990
  /* 0110 0011 ... */
2991
  /* 0    */ V(1, 9, 1),        /* 356 */
2992
  /* 1    */ V(9, 1, 1),
2993
 
2994
  /* 0110 0100 ... */
2995
  /* 0    */ V(4, 8, 1),        /* 358 */
2996
  /* 1    */ V(8, 4, 1),
2997
 
2998
  /* 0110 0101 ... */
2999
  /* 0    */ V(5, 7, 1),        /* 360 */
3000
  /* 1    */ V(7, 5, 1),
3001
 
3002
  /* 0110 0110 ... */
3003
  /* 0    */ V(3, 8, 1),        /* 362 */
3004
  /* 1    */ V(8, 3, 1),
3005
 
3006
  /* 0110 0111 ... */
3007
  /* 0    */ V(6, 6, 1),        /* 364 */
3008
  /* 1    */ V(2, 8, 1),
3009
 
3010
  /* 0110 1000 ... */
3011
  /* 0    */ V(8, 2, 1),        /* 366 */
3012
  /* 1    */ V(1, 8, 1),
3013
 
3014
  /* 0110 1001 ... */
3015
  /* 0    */ V(4, 7, 1),        /* 368 */
3016
  /* 1    */ V(7, 4, 1),
3017
 
3018
  /* 0110 1010 ... */
3019
  /* 00   */ V(8, 1, 1),        /* 370 */
3020
  /* 01   */ V(8, 1, 1),
3021
  /* 10   */ V(0, 8, 2),
3022
  /* 11   */ V(8, 0, 2),
3023
 
3024
  /* 0110 1011 ... */
3025
  /* 0    */ V(5, 6, 1),        /* 374 */
3026
  /* 1    */ V(6, 5, 1),
3027
 
3028
  /* 0110 1100 ... */
3029
  /* 00   */ V(1, 7, 1),        /* 376 */
3030
  /* 01   */ V(1, 7, 1),
3031
  /* 10   */ V(0, 7, 2),
3032
  /* 11   */ V(7, 0, 2),
3033
 
3034
  /* 0110 1110 ... */
3035
  /* 0    */ V(3, 7, 1),        /* 380  */
3036
  /* 1    */ V(2, 7, 1),
3037
 
3038
  /* 0111 1100 ... */
3039
  /* 0    */ V(0, 6, 1), /* 382 */
3040
  /* 1    */ V(6, 0, 1),
3041
 
3042
  /* 1000 0011 ... */
3043
  /* 0    */ V(0, 5, 1), /* 384 */
3044
  /* 1    */ V(5, 0, 1)
3045
};
3046
 
3047
# undef V
3048
# undef PTR
3049
 
3050
/* external tables */
3051
 
3052
union huffquad const *const mad_huff_quad_table[2] = { hufftabA, hufftabB };
3053
 
3054
struct hufftable const mad_huff_pair_table[32] = {
3055
  /*  0 */ { hufftab0,   0, 0 },
3056
  /*  1 */ { hufftab1,   0, 3 },
3057
  /*  2 */ { hufftab2,   0, 3 },
3058
  /*  3 */ { hufftab3,   0, 3 },
3059
  /*  4 */ { 0 /* not used */ },
3060
  /*  5 */ { hufftab5,   0, 3 },
3061
  /*  6 */ { hufftab6,   0, 4 },
3062
  /*  7 */ { hufftab7,   0, 4 },
3063
  /*  8 */ { hufftab8,   0, 4 },
3064
  /*  9 */ { hufftab9,   0, 4 },
3065
  /* 10 */ { hufftab10,  0, 4 },
3066
  /* 11 */ { hufftab11,  0, 4 },
3067
  /* 12 */ { hufftab12,  0, 4 },
3068
  /* 13 */ { hufftab13,  0, 4 },
3069
  /* 14 */ { 0 /* not used */ },
3070
  /* 15 */ { hufftab15,  0, 4 },
3071
  /* 16 */ { hufftab16,  1, 4 },
3072
  /* 17 */ { hufftab16,  2, 4 },
3073
  /* 18 */ { hufftab16,  3, 4 },
3074
  /* 19 */ { hufftab16,  4, 4 },
3075
  /* 20 */ { hufftab16,  6, 4 },
3076
  /* 21 */ { hufftab16,  8, 4 },
3077
  /* 22 */ { hufftab16, 10, 4 },
3078
  /* 23 */ { hufftab16, 13, 4 },
3079
  /* 24 */ { hufftab24,  4, 4 },
3080
  /* 25 */ { hufftab24,  5, 4 },
3081
  /* 26 */ { hufftab24,  6, 4 },
3082
  /* 27 */ { hufftab24,  7, 4 },
3083
  /* 28 */ { hufftab24,  8, 4 },
3084
  /* 29 */ { hufftab24,  9, 4 },
3085
  /* 30 */ { hufftab24, 11, 4 },
3086
  /* 31 */ { hufftab24, 13, 4 }
3087
};

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.