Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. typedef union
  2. {
  3.    int ptr;
  4.    struct
  5.    {
  6.       unsigned char signbits;
  7.       unsigned char x;
  8.       unsigned char y;
  9.       unsigned char purgebits;  // 0 = esc
  10.  
  11.    }
  12.    b;
  13. }
  14. HUFF_ELEMENT;
  15.  
  16. /* TABLE  1    4 entries  maxbits  3  linbits  0 */
  17. static HUFF_ELEMENT huff_table_1[] =
  18. {
  19.    0xFF000003, 0x03010102, 0x03010001, 0x02000101, 0x02000101/*  4 */
  20.    0x01000000, 0x01000000, 0x01000000, 0x01000000,};
  21.  
  22. /* max table bits  3 */
  23.  
  24. /* TABLE  2    9 entries  maxbits  6  linbits  0 */
  25. static HUFF_ELEMENT huff_table_2[] =
  26. {
  27.    0xFF000006, 0x06020202, 0x06020001, 0x05020102, 0x05020102/*  4 */
  28.    0x05010202, 0x05010202, 0x05000201, 0x05000201, 0x03010102/*  9 */
  29.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 14 */
  30.    0x03010102, 0x03010102, 0x03010001, 0x03010001, 0x03010001/* 19 */
  31.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 24 */
  32.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 29 */
  33.    0x03000101, 0x03000101, 0x03000101, 0x01000000, 0x01000000/* 34 */
  34.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 39 */
  35.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 44 */
  36.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 49 */
  37.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 54 */
  38.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 59 */
  39.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000, /* 64 */ };
  40.  
  41. /* max table bits  6 */
  42.  
  43. /* TABLE  3    9 entries  maxbits  6  linbits  0 */
  44. static HUFF_ELEMENT huff_table_3[] =
  45. {
  46.    0xFF000006, 0x06020202, 0x06020001, 0x05020102, 0x05020102/*  4 */
  47.    0x05010202, 0x05010202, 0x05000201, 0x05000201, 0x03000101/*  9 */
  48.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 14 */
  49.    0x03000101, 0x03000101, 0x02010102, 0x02010102, 0x02010102/* 19 */
  50.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 24 */
  51.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 29 */
  52.    0x02010102, 0x02010102, 0x02010102, 0x02010001, 0x02010001/* 34 */
  53.    0x02010001, 0x02010001, 0x02010001, 0x02010001, 0x02010001/* 39 */
  54.    0x02010001, 0x02010001, 0x02010001, 0x02010001, 0x02010001/* 44 */
  55.    0x02010001, 0x02010001, 0x02010001, 0x02010001, 0x02000000/* 49 */
  56.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 54 */
  57.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 59 */
  58.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000, /* 64 */ };
  59.  
  60. /* max table bits  6 */
  61. /* NO XING TABLE 4 */
  62.  
  63. /* TABLE  5   16 entries  maxbits  8  linbits  0 */
  64. static HUFF_ELEMENT huff_table_5[] =
  65. {
  66.    0xFF000008, 0x08030302, 0x08030202, 0x07020302, 0x07020302/*  4 */
  67.    0x06010302, 0x06010302, 0x06010302, 0x06010302, 0x07030102/*  9 */
  68.    0x07030102, 0x07030001, 0x07030001, 0x07000301, 0x07000301/* 14 */
  69.    0x07020202, 0x07020202, 0x06020102, 0x06020102, 0x06020102/* 19 */
  70.    0x06020102, 0x06010202, 0x06010202, 0x06010202, 0x06010202/* 24 */
  71.    0x06020001, 0x06020001, 0x06020001, 0x06020001, 0x06000201/* 29 */
  72.    0x06000201, 0x06000201, 0x06000201, 0x03010102, 0x03010102/* 34 */
  73.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 39 */
  74.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 44 */
  75.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 49 */
  76.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 54 */
  77.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 59 */
  78.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 64 */
  79.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 69 */
  80.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 74 */
  81.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 79 */
  82.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 84 */
  83.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 89 */
  84.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 94 */
  85.    0x03010001, 0x03010001, 0x03000101, 0x03000101, 0x03000101/* 99 */
  86.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 104 */
  87.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 109 */
  88.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 114 */
  89.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 119 */
  90.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 124 */
  91.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x01000000/* 129 */
  92.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 134 */
  93.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 139 */
  94.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 144 */
  95.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 149 */
  96.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 154 */
  97.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 159 */
  98.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 164 */
  99.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 169 */
  100.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 174 */
  101.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 179 */
  102.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 184 */
  103.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 189 */
  104.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 194 */
  105.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 199 */
  106.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 204 */
  107.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 209 */
  108.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 214 */
  109.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 219 */
  110.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 224 */
  111.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 229 */
  112.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 234 */
  113.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 239 */
  114.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 244 */
  115.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 249 */
  116.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 254 */
  117.    0x01000000, 0x01000000,};
  118.  
  119. /* max table bits  8 */
  120.  
  121. /* TABLE  6   16 entries  maxbits  7  linbits  0 */
  122. static HUFF_ELEMENT huff_table_6[] =
  123. {
  124.    0xFF000007, 0x07030302, 0x07030001, 0x06030202, 0x06030202/*  4 */
  125.    0x06020302, 0x06020302, 0x06000301, 0x06000301, 0x05030102/*  9 */
  126.    0x05030102, 0x05030102, 0x05030102, 0x05010302, 0x05010302/* 14 */
  127.    0x05010302, 0x05010302, 0x05020202, 0x05020202, 0x05020202/* 19 */
  128.    0x05020202, 0x05020001, 0x05020001, 0x05020001, 0x05020001/* 24 */
  129.    0x04020102, 0x04020102, 0x04020102, 0x04020102, 0x04020102/* 29 */
  130.    0x04020102, 0x04020102, 0x04020102, 0x04010202, 0x04010202/* 34 */
  131.    0x04010202, 0x04010202, 0x04010202, 0x04010202, 0x04010202/* 39 */
  132.    0x04010202, 0x04000201, 0x04000201, 0x04000201, 0x04000201/* 44 */
  133.    0x04000201, 0x04000201, 0x04000201, 0x04000201, 0x03010001/* 49 */
  134.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 54 */
  135.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 59 */
  136.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 64 */
  137.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 69 */
  138.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 74 */
  139.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 79 */
  140.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 84 */
  141.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 89 */
  142.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 94 */
  143.    0x02010102, 0x02010102, 0x03000101, 0x03000101, 0x03000101/* 99 */
  144.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 104 */
  145.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 109 */
  146.    0x03000101, 0x03000101, 0x03000101, 0x03000000, 0x03000000/* 114 */
  147.    0x03000000, 0x03000000, 0x03000000, 0x03000000, 0x03000000/* 119 */
  148.    0x03000000, 0x03000000, 0x03000000, 0x03000000, 0x03000000/* 124 */
  149.    0x03000000, 0x03000000, 0x03000000, 0x03000000,};
  150.  
  151. /* max table bits  7 */
  152.  
  153. /* TABLE  7   36 entries  maxbits 10  linbits  0 */
  154. static HUFF_ELEMENT huff_table_7[] =
  155. {
  156.    0xFF000006, 0x00000041, 0x00000052, 0x0000005B, 0x00000060/*  4 */
  157.    0x00000063, 0x00000068, 0x0000006B, 0x06020102, 0x05010202/*  9 */
  158.    0x05010202, 0x06020001, 0x06000201, 0x04010102, 0x04010102/* 14 */
  159.    0x04010102, 0x04010102, 0x03010001, 0x03010001, 0x03010001/* 19 */
  160.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 24 */
  161.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 29 */
  162.    0x03000101, 0x03000101, 0x03000101, 0x01000000, 0x01000000/* 34 */
  163.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 39 */
  164.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 44 */
  165.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 49 */
  166.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 54 */
  167.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 59 */
  168.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 64 */
  169.    0xFF000004, 0x04050502, 0x04050402, 0x04040502, 0x04030502/* 69 */
  170.    0x03050302, 0x03050302, 0x03040402, 0x03040402, 0x03050202/* 74 */
  171.    0x03050202, 0x03020502, 0x03020502, 0x02050102, 0x02050102/* 79 */
  172.    0x02050102, 0x02050102, 0xFF000003, 0x02010502, 0x02010502/* 84 */
  173.    0x03050001, 0x03040302, 0x02000501, 0x02000501, 0x03030402/* 89 */
  174.    0x03030302, 0xFF000002, 0x02040202, 0x02020402, 0x01040102/* 94 */
  175.    0x01040102, 0xFF000001, 0x01010402, 0x01000401, 0xFF000002/* 99 */
  176.    0x02040001, 0x02030202, 0x02020302, 0x02030001, 0xFF000001/* 104 */
  177.    0x01030102, 0x01010302, 0xFF000001, 0x01000301, 0x01020202, /* 109 */ };
  178.  
  179. /* max table bits  6 */
  180.  
  181. /* TABLE  8   36 entries  maxbits 11  linbits  0 */
  182. static HUFF_ELEMENT huff_table_8[] =
  183. {
  184.    0xFF000008, 0x00000101, 0x0000010A, 0x0000010F, 0x08050102/*  4 */
  185.    0x08010502, 0x00000112, 0x00000115, 0x08040202, 0x08020402/*  9 */
  186.    0x08040102, 0x07010402, 0x07010402, 0x08040001, 0x08000401/* 14 */
  187.    0x08030202, 0x08020302, 0x08030102, 0x08010302, 0x08030001/* 19 */
  188.    0x08000301, 0x06020202, 0x06020202, 0x06020202, 0x06020202/* 24 */
  189.    0x06020001, 0x06020001, 0x06020001, 0x06020001, 0x06000201/* 29 */
  190.    0x06000201, 0x06000201, 0x06000201, 0x04020102, 0x04020102/* 34 */
  191.    0x04020102, 0x04020102, 0x04020102, 0x04020102, 0x04020102/* 39 */
  192.    0x04020102, 0x04020102, 0x04020102, 0x04020102, 0x04020102/* 44 */
  193.    0x04020102, 0x04020102, 0x04020102, 0x04020102, 0x04010202/* 49 */
  194.    0x04010202, 0x04010202, 0x04010202, 0x04010202, 0x04010202/* 54 */
  195.    0x04010202, 0x04010202, 0x04010202, 0x04010202, 0x04010202/* 59 */
  196.    0x04010202, 0x04010202, 0x04010202, 0x04010202, 0x04010202/* 64 */
  197.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 69 */
  198.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 74 */
  199.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 79 */
  200.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 84 */
  201.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 89 */
  202.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 94 */
  203.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 99 */
  204.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 104 */
  205.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 109 */
  206.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 114 */
  207.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 119 */
  208.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x02010102/* 124 */
  209.    0x02010102, 0x02010102, 0x02010102, 0x02010102, 0x03010001/* 129 */
  210.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 134 */
  211.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 139 */
  212.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 144 */
  213.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 149 */
  214.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 154 */
  215.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 159 */
  216.    0x03010001, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 164 */
  217.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 169 */
  218.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 174 */
  219.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 179 */
  220.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 184 */
  221.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 189 */
  222.    0x03000101, 0x03000101, 0x03000101, 0x02000000, 0x02000000/* 194 */
  223.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 199 */
  224.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 204 */
  225.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 209 */
  226.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 214 */
  227.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 219 */
  228.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 224 */
  229.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 229 */
  230.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 234 */
  231.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 239 */
  232.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 244 */
  233.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 249 */
  234.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 254 */
  235.    0x02000000, 0x02000000, 0xFF000003, 0x03050502, 0x03040502/* 259 */
  236.    0x02050402, 0x02050402, 0x01030502, 0x01030502, 0x01030502/* 264 */
  237.    0x01030502, 0xFF000002, 0x02050302, 0x02040402, 0x01050202/* 269 */
  238.    0x01050202, 0xFF000001, 0x01020502, 0x01050001, 0xFF000001/* 274 */
  239.    0x01040302, 0x01030402, 0xFF000001, 0x01000501, 0x01030302, /* 279 */ };
  240.  
  241. /* max table bits  8 */
  242.  
  243. /* TABLE  9   36 entries  maxbits  9  linbits  0 */
  244. static HUFF_ELEMENT huff_table_9[] =
  245. {
  246.    0xFF000006, 0x00000041, 0x0000004A, 0x0000004F, 0x00000052/*  4 */
  247.    0x00000057, 0x0000005A, 0x06040102, 0x06010402, 0x06030202/*  9 */
  248.    0x06020302, 0x05030102, 0x05030102, 0x05010302, 0x05010302/* 14 */
  249.    0x06030001, 0x06000301, 0x05020202, 0x05020202, 0x05020001/* 19 */
  250.    0x05020001, 0x04020102, 0x04020102, 0x04020102, 0x04020102/* 24 */
  251.    0x04010202, 0x04010202, 0x04010202, 0x04010202, 0x04000201/* 29 */
  252.    0x04000201, 0x04000201, 0x04000201, 0x03010102, 0x03010102/* 34 */
  253.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 39 */
  254.    0x03010102, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 44 */
  255.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03000101/* 49 */
  256.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 54 */
  257.    0x03000101, 0x03000101, 0x03000000, 0x03000000, 0x03000000/* 59 */
  258.    0x03000000, 0x03000000, 0x03000000, 0x03000000, 0x03000000/* 64 */
  259.    0xFF000003, 0x03050502, 0x03050402, 0x02050302, 0x02050302/* 69 */
  260.    0x02030502, 0x02030502, 0x03040502, 0x03050001, 0xFF000002/* 74 */
  261.    0x02040402, 0x02050202, 0x02020502, 0x02050102, 0xFF000001/* 79 */
  262.    0x01010502, 0x01040302, 0xFF000002, 0x01030402, 0x01030402/* 84 */
  263.    0x02000501, 0x02040001, 0xFF000001, 0x01040202, 0x01020402/* 89 */
  264.    0xFF000001, 0x01030302, 0x01000401,};
  265.  
  266. /* max table bits  6 */
  267.  
  268. /* TABLE 10   64 entries  maxbits 11  linbits  0 */
  269. static HUFF_ELEMENT huff_table_10[] =
  270. {
  271.    0xFF000008, 0x00000101, 0x0000010A, 0x0000010F, 0x00000118/*  4 */
  272.    0x0000011B, 0x00000120, 0x00000125, 0x08070102, 0x08010702/*  9 */
  273.    0x0000012A, 0x0000012D, 0x00000132, 0x08060102, 0x08010602/* 14 */
  274.    0x08000601, 0x00000137, 0x0000013A, 0x0000013D, 0x08040102/* 19 */
  275.    0x08010402, 0x08000401, 0x08030202, 0x08020302, 0x08030001/* 24 */
  276.    0x07030102, 0x07030102, 0x07010302, 0x07010302, 0x07000301/* 29 */
  277.    0x07000301, 0x07020202, 0x07020202, 0x06020102, 0x06020102/* 34 */
  278.    0x06020102, 0x06020102, 0x06010202, 0x06010202, 0x06010202/* 39 */
  279.    0x06010202, 0x06020001, 0x06020001, 0x06020001, 0x06020001/* 44 */
  280.    0x06000201, 0x06000201, 0x06000201, 0x06000201, 0x04010102/* 49 */
  281.    0x04010102, 0x04010102, 0x04010102, 0x04010102, 0x04010102/* 54 */
  282.    0x04010102, 0x04010102, 0x04010102, 0x04010102, 0x04010102/* 59 */
  283.    0x04010102, 0x04010102, 0x04010102, 0x04010102, 0x04010102/* 64 */
  284.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 69 */
  285.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 74 */
  286.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 79 */
  287.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 84 */
  288.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 89 */
  289.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 94 */
  290.    0x03010001, 0x03010001, 0x03000101, 0x03000101, 0x03000101/* 99 */
  291.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 104 */
  292.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 109 */
  293.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 114 */
  294.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 119 */
  295.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 124 */
  296.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x01000000/* 129 */
  297.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 134 */
  298.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 139 */
  299.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 144 */
  300.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 149 */
  301.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 154 */
  302.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 159 */
  303.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 164 */
  304.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 169 */
  305.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 174 */
  306.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 179 */
  307.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 184 */
  308.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 189 */
  309.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 194 */
  310.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 199 */
  311.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 204 */
  312.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 209 */
  313.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 214 */
  314.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 219 */
  315.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 224 */
  316.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 229 */
  317.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 234 */
  318.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 239 */
  319.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 244 */
  320.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 249 */
  321.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 254 */
  322.    0x01000000, 0x01000000, 0xFF000003, 0x03070702, 0x03070602/* 259 */
  323.    0x03060702, 0x03070502, 0x03050702, 0x03060602, 0x02070402/* 264 */
  324.    0x02070402, 0xFF000002, 0x02040702, 0x02060502, 0x02050602/* 269 */
  325.    0x02070302, 0xFF000003, 0x02030702, 0x02030702, 0x02060402/* 274 */
  326.    0x02060402, 0x03050502, 0x03040502, 0x02030602, 0x02030602/* 279 */
  327.    0xFF000001, 0x01070202, 0x01020702, 0xFF000002, 0x02040602/* 284 */
  328.    0x02070001, 0x01000701, 0x01000701, 0xFF000002, 0x01020602/* 289 */
  329.    0x01020602, 0x02050402, 0x02050302, 0xFF000002, 0x01060001/* 294 */
  330.    0x01060001, 0x02030502, 0x02040402, 0xFF000001, 0x01060302/* 299 */
  331.    0x01060202, 0xFF000002, 0x02050202, 0x02020502, 0x01050102/* 304 */
  332.    0x01050102, 0xFF000002, 0x01010502, 0x01010502, 0x02040302/* 309 */
  333.    0x02030402, 0xFF000001, 0x01050001, 0x01000501, 0xFF000001/* 314 */
  334.    0x01040202, 0x01020402, 0xFF000001, 0x01030302, 0x01040001, /* 319 */ };
  335.  
  336. /* max table bits  8 */
  337.  
  338. /* TABLE 11   64 entries  maxbits 11  linbits  0 */
  339. static HUFF_ELEMENT huff_table_11[] =
  340. {
  341.    0xFF000008, 0x00000101, 0x00000106, 0x0000010F, 0x00000114/*  4 */
  342.    0x00000117, 0x08070202, 0x08020702, 0x0000011C, 0x07010702/*  9 */
  343.    0x07010702, 0x08070102, 0x08000701, 0x08060302, 0x08030602/* 14 */
  344.    0x08000601, 0x0000011F, 0x00000122, 0x08050102, 0x07020602/* 19 */
  345.    0x07020602, 0x08060202, 0x08060001, 0x07060102, 0x07060102/* 24 */
  346.    0x07010602, 0x07010602, 0x08010502, 0x08040302, 0x08000501/* 29 */
  347.    0x00000125, 0x08040202, 0x08020402, 0x08040102, 0x08010402/* 34 */
  348.    0x08040001, 0x08000401, 0x07030202, 0x07030202, 0x07020302/* 39 */
  349.    0x07020302, 0x06030102, 0x06030102, 0x06030102, 0x06030102/* 44 */
  350.    0x06010302, 0x06010302, 0x06010302, 0x06010302, 0x07030001/* 49 */
  351.    0x07030001, 0x07000301, 0x07000301, 0x06020202, 0x06020202/* 54 */
  352.    0x06020202, 0x06020202, 0x05010202, 0x05010202, 0x05010202/* 59 */
  353.    0x05010202, 0x05010202, 0x05010202, 0x05010202, 0x05010202/* 64 */
  354.    0x04020102, 0x04020102, 0x04020102, 0x04020102, 0x04020102/* 69 */
  355.    0x04020102, 0x04020102, 0x04020102, 0x04020102, 0x04020102/* 74 */
  356.    0x04020102, 0x04020102, 0x04020102, 0x04020102, 0x04020102/* 79 */
  357.    0x04020102, 0x05020001, 0x05020001, 0x05020001, 0x05020001/* 84 */
  358.    0x05020001, 0x05020001, 0x05020001, 0x05020001, 0x05000201/* 89 */
  359.    0x05000201, 0x05000201, 0x05000201, 0x05000201, 0x05000201/* 94 */
  360.    0x05000201, 0x05000201, 0x03010102, 0x03010102, 0x03010102/* 99 */
  361.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 104 */
  362.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 109 */
  363.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 114 */
  364.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 119 */
  365.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 124 */
  366.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010001/* 129 */
  367.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 134 */
  368.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 139 */
  369.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 144 */
  370.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 149 */
  371.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 154 */
  372.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 159 */
  373.    0x03010001, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 164 */
  374.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 169 */
  375.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 174 */
  376.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 179 */
  377.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 184 */
  378.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 189 */
  379.    0x03000101, 0x03000101, 0x03000101, 0x02000000, 0x02000000/* 194 */
  380.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 199 */
  381.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 204 */
  382.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 209 */
  383.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 214 */
  384.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 219 */
  385.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 224 */
  386.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 229 */
  387.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 234 */
  388.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 239 */
  389.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 244 */
  390.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 249 */
  391.    0x02000000, 0x02000000, 0x02000000, 0x02000000, 0x02000000/* 254 */
  392.    0x02000000, 0x02000000, 0xFF000002, 0x02070702, 0x02070602/* 259 */
  393.    0x02060702, 0x02050702, 0xFF000003, 0x02060602, 0x02060602/* 264 */
  394.    0x02070402, 0x02070402, 0x02040702, 0x02040702, 0x03070502/* 269 */
  395.    0x03050502, 0xFF000002, 0x02060502, 0x02050602, 0x01070302/* 274 */
  396.    0x01070302, 0xFF000001, 0x01030702, 0x01060402, 0xFF000002/* 279 */
  397.    0x02050402, 0x02040502, 0x02050302, 0x02030502, 0xFF000001/* 284 */
  398.    0x01040602, 0x01070001, 0xFF000001, 0x01040402, 0x01050202/* 289 */
  399.    0xFF000001, 0x01020502, 0x01050001, 0xFF000001, 0x01030402/* 294 */
  400.    0x01030302,};
  401.  
  402. /* max table bits  8 */
  403.  
  404. /* TABLE 12   64 entries  maxbits 10  linbits  0 */
  405. static HUFF_ELEMENT huff_table_12[] =
  406. {
  407.    0xFF000007, 0x00000081, 0x0000008A, 0x0000008F, 0x00000092/*  4 */
  408.    0x00000097, 0x0000009A, 0x0000009D, 0x000000A2, 0x000000A5/*  9 */
  409.    0x000000A8, 0x07060202, 0x07020602, 0x07010602, 0x000000AD/* 14 */
  410.    0x000000B0, 0x000000B3, 0x07050102, 0x07010502, 0x07040302/* 19 */
  411.    0x07030402, 0x000000B6, 0x07040202, 0x07020402, 0x07040102/* 24 */
  412.    0x06030302, 0x06030302, 0x06010402, 0x06010402, 0x06030202/* 29 */
  413.    0x06030202, 0x06020302, 0x06020302, 0x07000401, 0x07030001/* 34 */
  414.    0x06000301, 0x06000301, 0x05030102, 0x05030102, 0x05030102/* 39 */
  415.    0x05030102, 0x05010302, 0x05010302, 0x05010302, 0x05010302/* 44 */
  416.    0x05020202, 0x05020202, 0x05020202, 0x05020202, 0x04020102/* 49 */
  417.    0x04020102, 0x04020102, 0x04020102, 0x04020102, 0x04020102/* 54 */
  418.    0x04020102, 0x04020102, 0x04010202, 0x04010202, 0x04010202/* 59 */
  419.    0x04010202, 0x04010202, 0x04010202, 0x04010202, 0x04010202/* 64 */
  420.    0x05020001, 0x05020001, 0x05020001, 0x05020001, 0x05000201/* 69 */
  421.    0x05000201, 0x05000201, 0x05000201, 0x04000000, 0x04000000/* 74 */
  422.    0x04000000, 0x04000000, 0x04000000, 0x04000000, 0x04000000/* 79 */
  423.    0x04000000, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 84 */
  424.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 89 */
  425.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 94 */
  426.    0x03010102, 0x03010102, 0x03010001, 0x03010001, 0x03010001/* 99 */
  427.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 104 */
  428.    0x03010001, 0x03010001, 0x03010001, 0x03010001, 0x03010001/* 109 */
  429.    0x03010001, 0x03010001, 0x03010001, 0x03000101, 0x03000101/* 114 */
  430.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 119 */
  431.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 124 */
  432.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0xFF000003/* 129 */
  433.    0x03070702, 0x03070602, 0x02060702, 0x02060702, 0x02070502/* 134 */
  434.    0x02070502, 0x02050702, 0x02050702, 0xFF000002, 0x02060602/* 139 */
  435.    0x02070402, 0x02040702, 0x02050602, 0xFF000001, 0x01060502/* 144 */
  436.    0x01070302, 0xFF000002, 0x02030702, 0x02050502, 0x01070202/* 149 */
  437.    0x01070202, 0xFF000001, 0x01020702, 0x01060402, 0xFF000001/* 154 */
  438.    0x01040602, 0x01070102, 0xFF000002, 0x01010702, 0x01010702/* 159 */
  439.    0x02070001, 0x02000701, 0xFF000001, 0x01060302, 0x01030602/* 164 */
  440.    0xFF000001, 0x01050402, 0x01040502, 0xFF000002, 0x01040402/* 169 */
  441.    0x01040402, 0x02060001, 0x02050001, 0xFF000001, 0x01060102/* 174 */
  442.    0x01000601, 0xFF000001, 0x01050302, 0x01030502, 0xFF000001/* 179 */
  443.    0x01050202, 0x01020502, 0xFF000001, 0x01000501, 0x01040001, /* 184 */ };
  444.  
  445. /* max table bits  7 */
  446.  
  447. /* TABLE 13  256 entries  maxbits 19  linbits  0 */
  448. static HUFF_ELEMENT huff_table_13[] =
  449. {
  450.    0xFF000006, 0x00000041, 0x00000082, 0x000000C3, 0x000000E4/*  4 */
  451.    0x00000105, 0x00000116, 0x0000011F, 0x00000130, 0x00000139/*  9 */
  452.    0x0000013E, 0x00000143, 0x00000146, 0x06020102, 0x06010202/* 14 */
  453.    0x06020001, 0x06000201, 0x04010102, 0x04010102, 0x04010102/* 19 */
  454.    0x04010102, 0x04010001, 0x04010001, 0x04010001, 0x04010001/* 24 */
  455.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 29 */
  456.    0x03000101, 0x03000101, 0x03000101, 0x01000000, 0x01000000/* 34 */
  457.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 39 */
  458.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 44 */
  459.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 49 */
  460.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 54 */
  461.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 59 */
  462.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 64 */
  463.    0xFF000006, 0x00000108, 0x00000111, 0x0000011A, 0x00000123/* 69 */
  464.    0x0000012C, 0x00000131, 0x00000136, 0x0000013F, 0x00000144/* 74 */
  465.    0x00000147, 0x0000014C, 0x00000151, 0x00000156, 0x0000015B/* 79 */
  466.    0x060F0102, 0x06010F02, 0x06000F01, 0x00000160, 0x00000163/* 84 */
  467.    0x00000166, 0x06020E02, 0x00000169, 0x060E0102, 0x06010E02/* 89 */
  468.    0x0000016C, 0x0000016F, 0x00000172, 0x00000175, 0x00000178/* 94 */
  469.    0x0000017B, 0x06060C02, 0x060D0302, 0x0000017E, 0x060D0202/* 99 */
  470.    0x06020D02, 0x060D0102, 0x06070B02, 0x00000181, 0x00000184/* 104 */
  471.    0x06030C02, 0x00000187, 0x060B0402, 0x05010D02, 0x05010D02/* 109 */
  472.    0x060D0001, 0x06000D01, 0x060A0802, 0x06080A02, 0x060C0402/* 114 */
  473.    0x06040C02, 0x060B0602, 0x06060B02, 0x050C0302, 0x050C0302/* 119 */
  474.    0x050C0202, 0x050C0202, 0x05020C02, 0x05020C02, 0x050B0502/* 124 */
  475.    0x050B0502, 0x06050B02, 0x06090802, 0x050C0102, 0x050C0102/* 129 */
  476.    0xFF000006, 0x05010C02, 0x05010C02, 0x06080902, 0x060C0001/* 134 */
  477.    0x05000C01, 0x05000C01, 0x06040B02, 0x060A0602, 0x06060A02/* 139 */
  478.    0x06090702, 0x050B0302, 0x050B0302, 0x05030B02, 0x05030B02/* 144 */
  479.    0x06080802, 0x060A0502, 0x050B0202, 0x050B0202, 0x06050A02/* 149 */
  480.    0x06090602, 0x05040A02, 0x05040A02, 0x06080702, 0x06070802/* 154 */
  481.    0x05040902, 0x05040902, 0x06070702, 0x06060702, 0x04020B02/* 159 */
  482.    0x04020B02, 0x04020B02, 0x04020B02, 0x040B0102, 0x040B0102/* 164 */
  483.    0x040B0102, 0x040B0102, 0x04010B02, 0x04010B02, 0x04010B02/* 169 */
  484.    0x04010B02, 0x050B0001, 0x050B0001, 0x05000B01, 0x05000B01/* 174 */
  485.    0x05060902, 0x05060902, 0x050A0402, 0x050A0402, 0x050A0302/* 179 */
  486.    0x050A0302, 0x05030A02, 0x05030A02, 0x05090502, 0x05090502/* 184 */
  487.    0x05050902, 0x05050902, 0x040A0202, 0x040A0202, 0x040A0202/* 189 */
  488.    0x040A0202, 0x04020A02, 0x04020A02, 0x04020A02, 0x04020A02/* 194 */
  489.    0xFF000005, 0x040A0102, 0x040A0102, 0x04010A02, 0x04010A02/* 199 */
  490.    0x050A0001, 0x05080602, 0x04000A01, 0x04000A01, 0x05060802/* 204 */
  491.    0x05090402, 0x04030902, 0x04030902, 0x05090302, 0x05080502/* 209 */
  492.    0x05050802, 0x05070602, 0x04090202, 0x04090202, 0x04020902/* 214 */
  493.    0x04020902, 0x05070502, 0x05050702, 0x04080302, 0x04080302/* 219 */
  494.    0x04030802, 0x04030802, 0x05060602, 0x05070402, 0x05040702/* 224 */
  495.    0x05060502, 0x05050602, 0x05030702, 0xFF000005, 0x03090102/* 229 */
  496.    0x03090102, 0x03090102, 0x03090102, 0x03010902, 0x03010902/* 234 */
  497.    0x03010902, 0x03010902, 0x04090001, 0x04090001, 0x04000901/* 239 */
  498.    0x04000901, 0x04080402, 0x04080402, 0x04040802, 0x04040802/* 244 */
  499.    0x04020702, 0x04020702, 0x05060402, 0x05040602, 0x03080202/* 249 */
  500.    0x03080202, 0x03080202, 0x03080202, 0x03020802, 0x03020802/* 254 */
  501.    0x03020802, 0x03020802, 0x03080102, 0x03080102, 0x03080102/* 259 */
  502.    0x03080102, 0xFF000004, 0x04070302, 0x04070202, 0x03070102/* 264 */
  503.    0x03070102, 0x03010702, 0x03010702, 0x04050502, 0x04070001/* 269 */
  504.    0x04000701, 0x04060302, 0x04030602, 0x04050402, 0x04040502/* 274 */
  505.    0x04060202, 0x04020602, 0x04050302, 0xFF000003, 0x02010802/* 279 */
  506.    0x02010802, 0x03080001, 0x03000801, 0x03060102, 0x03010602/* 284 */
  507.    0x03060001, 0x03000601, 0xFF000004, 0x04030502, 0x04040402/* 289 */
  508.    0x03050202, 0x03050202, 0x03020502, 0x03020502, 0x03050001/* 294 */
  509.    0x03050001, 0x02050102, 0x02050102, 0x02050102, 0x02050102/* 299 */
  510.    0x02010502, 0x02010502, 0x02010502, 0x02010502, 0xFF000003/* 304 */
  511.    0x03040302, 0x03030402, 0x03000501, 0x03040202, 0x03020402/* 309 */
  512.    0x03030302, 0x02040102, 0x02040102, 0xFF000002, 0x01010402/* 314 */
  513.    0x01010402, 0x02040001, 0x02000401, 0xFF000002, 0x02030202/* 319 */
  514.    0x02020302, 0x01030102, 0x01030102, 0xFF000001, 0x01010302/* 324 */
  515.    0x01030001, 0xFF000001, 0x01000301, 0x01020202, 0xFF000003/* 329 */
  516.    0x00000082, 0x0000008B, 0x0000008E, 0x00000091, 0x00000094/* 334 */
  517.    0x00000097, 0x030C0E02, 0x030D0D02, 0xFF000003, 0x00000093/* 339 */
  518.    0x030E0B02, 0x030B0E02, 0x030F0902, 0x03090F02, 0x030A0E02/* 344 */
  519.    0x030D0B02, 0x030B0D02, 0xFF000003, 0x030F0802, 0x03080F02/* 349 */
  520.    0x030C0C02, 0x0000008D, 0x030E0802, 0x00000090, 0x02070F02/* 354 */
  521.    0x02070F02, 0xFF000003, 0x020A0D02, 0x020A0D02, 0x030D0A02/* 359 */
  522.    0x030C0B02, 0x030B0C02, 0x03060F02, 0x020F0602, 0x020F0602/* 364 */
  523.    0xFF000002, 0x02080E02, 0x020F0502, 0x020D0902, 0x02090D02/* 369 */
  524.    0xFF000002, 0x02050F02, 0x02070E02, 0x020C0A02, 0x020B0B02/* 374 */
  525.    0xFF000003, 0x020F0402, 0x020F0402, 0x02040F02, 0x02040F02/* 379 */
  526.    0x030A0C02, 0x03060E02, 0x02030F02, 0x02030F02, 0xFF000002/* 384 */
  527.    0x010F0302, 0x010F0302, 0x020D0802, 0x02080D02, 0xFF000001/* 389 */
  528.    0x010F0202, 0x01020F02, 0xFF000002, 0x020E0602, 0x020C0902/* 394 */
  529.    0x010F0001, 0x010F0001, 0xFF000002, 0x02090C02, 0x020E0502/* 399 */
  530.    0x010B0A02, 0x010B0A02, 0xFF000002, 0x020D0702, 0x02070D02/* 404 */
  531.    0x010E0402, 0x010E0402, 0xFF000002, 0x02080C02, 0x02060D02/* 409 */
  532.    0x010E0302, 0x010E0302, 0xFF000002, 0x01090B02, 0x01090B02/* 414 */
  533.    0x020B0902, 0x020A0A02, 0xFF000001, 0x010A0B02, 0x01050E02/* 419 */
  534.    0xFF000001, 0x01040E02, 0x010C0802, 0xFF000001, 0x010D0602/* 424 */
  535.    0x01030E02, 0xFF000001, 0x010E0202, 0x010E0001, 0xFF000001/* 429 */
  536.    0x01000E01, 0x010D0502, 0xFF000001, 0x01050D02, 0x010C0702/* 434 */
  537.    0xFF000001, 0x01070C02, 0x010D0402, 0xFF000001, 0x010B0802/* 439 */
  538.    0x01080B02, 0xFF000001, 0x01040D02, 0x010A0902, 0xFF000001/* 444 */
  539.    0x01090A02, 0x010C0602, 0xFF000001, 0x01030D02, 0x010B0702/* 449 */
  540.    0xFF000001, 0x010C0502, 0x01050C02, 0xFF000001, 0x01090902/* 454 */
  541.    0x010A0702, 0xFF000001, 0x01070A02, 0x01070902, 0xFF000003/* 459 */
  542.    0x00000023, 0x030D0F02, 0x020D0E02, 0x020D0E02, 0x010F0F02/* 464 */
  543.    0x010F0F02, 0x010F0F02, 0x010F0F02, 0xFF000001, 0x010F0E02/* 469 */
  544.    0x010F0D02, 0xFF000001, 0x010E0E02, 0x010F0C02, 0xFF000001/* 474 */
  545.    0x010E0D02, 0x010F0B02, 0xFF000001, 0x010B0F02, 0x010E0C02/* 479 */
  546.    0xFF000002, 0x010C0D02, 0x010C0D02, 0x020F0A02, 0x02090E02/* 484 */
  547.    0xFF000001, 0x010A0F02, 0x010D0C02, 0xFF000001, 0x010E0A02/* 489 */
  548.    0x010E0902, 0xFF000001, 0x010F0702, 0x010E0702, 0xFF000001/* 494 */
  549.    0x010E0F02, 0x010C0F02,};
  550.  
  551. /* max table bits  6 */
  552. /* NO XING TABLE 14 */
  553.  
  554. /* TABLE 15  256 entries  maxbits 13  linbits  0 */
  555. static HUFF_ELEMENT huff_table_15[] =
  556. {
  557.    0xFF000008, 0x00000101, 0x00000122, 0x00000143, 0x00000154/*  4 */
  558.    0x00000165, 0x00000176, 0x0000017F, 0x00000188, 0x00000199/*  9 */
  559.    0x000001A2, 0x000001AB, 0x000001B4, 0x000001BD, 0x000001C2/* 14 */
  560.    0x000001CB, 0x000001D4, 0x000001D9, 0x000001DE, 0x000001E3/* 19 */
  561.    0x000001E8, 0x000001ED, 0x000001F2, 0x000001F7, 0x000001FC/* 24 */
  562.    0x00000201, 0x00000204, 0x00000207, 0x0000020A, 0x0000020F/* 29 */
  563.    0x00000212, 0x00000215, 0x0000021A, 0x0000021D, 0x00000220/* 34 */
  564.    0x08010902, 0x00000223, 0x00000226, 0x00000229, 0x0000022C/* 39 */
  565.    0x0000022F, 0x08080202, 0x08020802, 0x08080102, 0x08010802/* 44 */
  566.    0x00000232, 0x00000235, 0x00000238, 0x0000023B, 0x08070202/* 49 */
  567.    0x08020702, 0x08040602, 0x08070102, 0x08050502, 0x08010702/* 54 */
  568.    0x0000023E, 0x08060302, 0x08030602, 0x08050402, 0x08040502/* 59 */
  569.    0x08060202, 0x08020602, 0x08060102, 0x00000241, 0x08050302/* 64 */
  570.    0x07010602, 0x07010602, 0x08030502, 0x08040402, 0x07050202/* 69 */
  571.    0x07050202, 0x07020502, 0x07020502, 0x07050102, 0x07050102/* 74 */
  572.    0x07010502, 0x07010502, 0x08050001, 0x08000501, 0x07040302/* 79 */
  573.    0x07040302, 0x07030402, 0x07030402, 0x07040202, 0x07040202/* 84 */
  574.    0x07020402, 0x07020402, 0x07030302, 0x07030302, 0x06010402/* 89 */
  575.    0x06010402, 0x06010402, 0x06010402, 0x07040102, 0x07040102/* 94 */
  576.    0x07040001, 0x07040001, 0x06030202, 0x06030202, 0x06030202/* 99 */
  577.    0x06030202, 0x06020302, 0x06020302, 0x06020302, 0x06020302/* 104 */
  578.    0x07000401, 0x07000401, 0x07030001, 0x07030001, 0x06030102/* 109 */
  579.    0x06030102, 0x06030102, 0x06030102, 0x06010302, 0x06010302/* 114 */
  580.    0x06010302, 0x06010302, 0x06000301, 0x06000301, 0x06000301/* 119 */
  581.    0x06000301, 0x05020202, 0x05020202, 0x05020202, 0x05020202/* 124 */
  582.    0x05020202, 0x05020202, 0x05020202, 0x05020202, 0x05020102/* 129 */
  583.    0x05020102, 0x05020102, 0x05020102, 0x05020102, 0x05020102/* 134 */
  584.    0x05020102, 0x05020102, 0x05010202, 0x05010202, 0x05010202/* 139 */
  585.    0x05010202, 0x05010202, 0x05010202, 0x05010202, 0x05010202/* 144 */
  586.    0x05020001, 0x05020001, 0x05020001, 0x05020001, 0x05020001/* 149 */
  587.    0x05020001, 0x05020001, 0x05020001, 0x05000201, 0x05000201/* 154 */
  588.    0x05000201, 0x05000201, 0x05000201, 0x05000201, 0x05000201/* 159 */
  589.    0x05000201, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 164 */
  590.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 169 */
  591.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 174 */
  592.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 179 */
  593.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 184 */
  594.    0x03010102, 0x03010102, 0x03010102, 0x03010102, 0x03010102/* 189 */
  595.    0x03010102, 0x03010102, 0x03010102, 0x04010001, 0x04010001/* 194 */
  596.    0x04010001, 0x04010001, 0x04010001, 0x04010001, 0x04010001/* 199 */
  597.    0x04010001, 0x04010001, 0x04010001, 0x04010001, 0x04010001/* 204 */
  598.    0x04010001, 0x04010001, 0x04010001, 0x04010001, 0x04000101/* 209 */
  599.    0x04000101, 0x04000101, 0x04000101, 0x04000101, 0x04000101/* 214 */
  600.    0x04000101, 0x04000101, 0x04000101, 0x04000101, 0x04000101/* 219 */
  601.    0x04000101, 0x04000101, 0x04000101, 0x04000101, 0x04000101/* 224 */
  602.    0x03000000, 0x03000000, 0x03000000, 0x03000000, 0x03000000/* 229 */
  603.    0x03000000, 0x03000000, 0x03000000, 0x03000000, 0x03000000/* 234 */
  604.    0x03000000, 0x03000000, 0x03000000, 0x03000000, 0x03000000/* 239 */
  605.    0x03000000, 0x03000000, 0x03000000, 0x03000000, 0x03000000/* 244 */
  606.    0x03000000, 0x03000000, 0x03000000, 0x03000000, 0x03000000/* 249 */
  607.    0x03000000, 0x03000000, 0x03000000, 0x03000000, 0x03000000/* 254 */
  608.    0x03000000, 0x03000000, 0xFF000005, 0x050F0F02, 0x050F0E02/* 259 */
  609.    0x050E0F02, 0x050F0D02, 0x040E0E02, 0x040E0E02, 0x050D0F02/* 264 */
  610.    0x050F0C02, 0x050C0F02, 0x050E0D02, 0x050D0E02, 0x050F0B02/* 269 */
  611.    0x040B0F02, 0x040B0F02, 0x050E0C02, 0x050C0E02, 0x040D0D02/* 274 */
  612.    0x040D0D02, 0x040F0A02, 0x040F0A02, 0x040A0F02, 0x040A0F02/* 279 */
  613.    0x040E0B02, 0x040E0B02, 0x040B0E02, 0x040B0E02, 0x040D0C02/* 284 */
  614.    0x040D0C02, 0x040C0D02, 0x040C0D02, 0x040F0902, 0x040F0902/* 289 */
  615.    0xFF000005, 0x04090F02, 0x04090F02, 0x040A0E02, 0x040A0E02/* 294 */
  616.    0x040D0B02, 0x040D0B02, 0x040B0D02, 0x040B0D02, 0x040F0802/* 299 */
  617.    0x040F0802, 0x04080F02, 0x04080F02, 0x040C0C02, 0x040C0C02/* 304 */
  618.    0x040E0902, 0x040E0902, 0x04090E02, 0x04090E02, 0x040F0702/* 309 */
  619.    0x040F0702, 0x04070F02, 0x04070F02, 0x040D0A02, 0x040D0A02/* 314 */
  620.    0x040A0D02, 0x040A0D02, 0x040C0B02, 0x040C0B02, 0x040F0602/* 319 */
  621.    0x040F0602, 0x050E0A02, 0x050F0001, 0xFF000004, 0x030B0C02/* 324 */
  622.    0x030B0C02, 0x03060F02, 0x03060F02, 0x040E0802, 0x04080E02/* 329 */
  623.    0x040F0502, 0x040D0902, 0x03050F02, 0x03050F02, 0x030E0702/* 334 */
  624.    0x030E0702, 0x03070E02, 0x03070E02, 0x030C0A02, 0x030C0A02/* 339 */
  625.    0xFF000004, 0x030A0C02, 0x030A0C02, 0x030B0B02, 0x030B0B02/* 344 */
  626.    0x04090D02, 0x040D0802, 0x030F0402, 0x030F0402, 0x03040F02/* 349 */
  627.    0x03040F02, 0x030F0302, 0x030F0302, 0x03030F02, 0x03030F02/* 354 */
  628.    0x03080D02, 0x03080D02, 0xFF000004, 0x03060E02, 0x03060E02/* 359 */
  629.    0x030F0202, 0x030F0202, 0x03020F02, 0x03020F02, 0x040E0602/* 364 */
  630.    0x04000F01, 0x030F0102, 0x030F0102, 0x03010F02, 0x03010F02/* 369 */
  631.    0x030C0902, 0x030C0902, 0x03090C02, 0x03090C02, 0xFF000003/* 374 */
  632.    0x030E0502, 0x030B0A02, 0x030A0B02, 0x03050E02, 0x030D0702/* 379 */
  633.    0x03070D02, 0x030E0402, 0x03040E02, 0xFF000003, 0x030C0802/* 384 */
  634.    0x03080C02, 0x030E0302, 0x030D0602, 0x03060D02, 0x03030E02/* 389 */
  635.    0x030B0902, 0x03090B02, 0xFF000004, 0x030E0202, 0x030E0202/* 394 */
  636.    0x030A0A02, 0x030A0A02, 0x03020E02, 0x03020E02, 0x030E0102/* 399 */
  637.    0x030E0102, 0x03010E02, 0x03010E02, 0x040E0001, 0x04000E01/* 404 */
  638.    0x030D0502, 0x030D0502, 0x03050D02, 0x03050D02, 0xFF000003/* 409 */
  639.    0x030C0702, 0x03070C02, 0x030D0402, 0x030B0802, 0x02040D02/* 414 */
  640.    0x02040D02, 0x03080B02, 0x030A0902, 0xFF000003, 0x03090A02/* 419 */
  641.    0x030C0602, 0x03060C02, 0x030D0302, 0x02030D02, 0x02030D02/* 424 */
  642.    0x02020D02, 0x02020D02, 0xFF000003, 0x030D0202, 0x030D0001/* 429 */
  643.    0x020D0102, 0x020D0102, 0x020B0702, 0x020B0702, 0x02070B02/* 434 */
  644.    0x02070B02, 0xFF000003, 0x02010D02, 0x02010D02, 0x030C0502/* 439 */
  645.    0x03000D01, 0x02050C02, 0x02050C02, 0x020A0802, 0x020A0802/* 444 */
  646.    0xFF000002, 0x02080A02, 0x020C0402, 0x02040C02, 0x020B0602/* 449 */
  647.    0xFF000003, 0x02060B02, 0x02060B02, 0x03090902, 0x030C0001/* 454 */
  648.    0x020C0302, 0x020C0302, 0x02030C02, 0x02030C02, 0xFF000003/* 459 */
  649.    0x020A0702, 0x020A0702, 0x02070A02, 0x02070A02, 0x02060A02/* 464 */
  650.    0x02060A02, 0x03000C01, 0x030B0001, 0xFF000002, 0x01020C02/* 469 */
  651.    0x01020C02, 0x020C0202, 0x020B0502, 0xFF000002, 0x02050B02/* 474 */
  652.    0x020C0102, 0x02090802, 0x02080902, 0xFF000002, 0x02010C02/* 479 */
  653.    0x020B0402, 0x02040B02, 0x020A0602, 0xFF000002, 0x020B0302/* 484 */
  654.    0x02090702, 0x01030B02, 0x01030B02, 0xFF000002, 0x02070902/* 489 */
  655.    0x02080802, 0x020B0202, 0x020A0502, 0xFF000002, 0x01020B02/* 494 */
  656.    0x01020B02, 0x02050A02, 0x020B0102, 0xFF000002, 0x01010B02/* 499 */
  657.    0x01010B02, 0x02000B01, 0x02090602, 0xFF000002, 0x02060902/* 504 */
  658.    0x020A0402, 0x02040A02, 0x02080702, 0xFF000002, 0x02070802/* 509 */
  659.    0x020A0302, 0x01030A02, 0x01030A02, 0xFF000001, 0x01090502/* 514 */
  660.    0x01050902, 0xFF000001, 0x010A0202, 0x01020A02, 0xFF000001/* 519 */
  661.    0x010A0102, 0x01010A02, 0xFF000002, 0x020A0001, 0x02000A01/* 524 */
  662.    0x01080602, 0x01080602, 0xFF000001, 0x01060802, 0x01090402/* 529 */
  663.    0xFF000001, 0x01040902, 0x01090302, 0xFF000002, 0x01030902/* 534 */
  664.    0x01030902, 0x02070702, 0x02090001, 0xFF000001, 0x01080502/* 539 */
  665.    0x01050802, 0xFF000001, 0x01090202, 0x01070602, 0xFF000001/* 544 */
  666.    0x01060702, 0x01020902, 0xFF000001, 0x01090102, 0x01000901/* 549 */
  667.    0xFF000001, 0x01080402, 0x01040802, 0xFF000001, 0x01070502/* 554 */
  668.    0x01050702, 0xFF000001, 0x01080302, 0x01030802, 0xFF000001/* 559 */
  669.    0x01060602, 0x01070402, 0xFF000001, 0x01040702, 0x01080001/* 564 */
  670.    0xFF000001, 0x01000801, 0x01060502, 0xFF000001, 0x01050602/* 569 */
  671.    0x01070302, 0xFF000001, 0x01030702, 0x01060402, 0xFF000001/* 574 */
  672.    0x01070001, 0x01000701, 0xFF000001, 0x01060001, 0x01000601, /* 579 */ };
  673.  
  674. /* max table bits  8 */
  675.  
  676. /* TABLE 16  256 entries  maxbits 17  linbits  0 */
  677. static HUFF_ELEMENT huff_table_16[] =
  678. {
  679.    0xFF000008, 0x00000101, 0x0000010A, 0x00000113, 0x080F0F02/*  4 */
  680.    0x00000118, 0x0000011D, 0x00000120, 0x08020F02, 0x00000131/*  9 */
  681.    0x080F0102, 0x08010F02, 0x00000134, 0x00000145, 0x00000156/* 14 */
  682.    0x00000167, 0x00000178, 0x00000189, 0x0000019A, 0x000001A3/* 19 */
  683.    0x000001AC, 0x000001B5, 0x000001BE, 0x000001C7, 0x000001D0/* 24 */
  684.    0x000001D9, 0x000001DE, 0x000001E3, 0x000001E6, 0x000001EB/* 29 */
  685.    0x000001F0, 0x08010502, 0x000001F3, 0x000001F6, 0x000001F9/* 34 */
  686.    0x000001FC, 0x08040102, 0x08010402, 0x000001FF, 0x08030202/* 39 */
  687.    0x08020302, 0x07030102, 0x07030102, 0x07010302, 0x07010302/* 44 */
  688.    0x08030001, 0x08000301, 0x07020202, 0x07020202, 0x06020102/* 49 */
  689.    0x06020102, 0x06020102, 0x06020102, 0x06010202, 0x06010202/* 54 */
  690.    0x06010202, 0x06010202, 0x06020001, 0x06020001, 0x06020001/* 59 */
  691.    0x06020001, 0x06000201, 0x06000201, 0x06000201, 0x06000201/* 64 */
  692.    0x04010102, 0x04010102, 0x04010102, 0x04010102, 0x04010102/* 69 */
  693.    0x04010102, 0x04010102, 0x04010102, 0x04010102, 0x04010102/* 74 */
  694.    0x04010102, 0x04010102, 0x04010102, 0x04010102, 0x04010102/* 79 */
  695.    0x04010102, 0x04010001, 0x04010001, 0x04010001, 0x04010001/* 84 */
  696.    0x04010001, 0x04010001, 0x04010001, 0x04010001, 0x04010001/* 89 */
  697.    0x04010001, 0x04010001, 0x04010001, 0x04010001, 0x04010001/* 94 */
  698.    0x04010001, 0x04010001, 0x03000101, 0x03000101, 0x03000101/* 99 */
  699.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 104 */
  700.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 109 */
  701.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 114 */
  702.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 119 */
  703.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x03000101/* 124 */
  704.    0x03000101, 0x03000101, 0x03000101, 0x03000101, 0x01000000/* 129 */
  705.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 134 */
  706.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 139 */
  707.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 144 */
  708.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 149 */
  709.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 154 */
  710.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 159 */
  711.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 164 */
  712.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 169 */
  713.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 174 */
  714.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 179 */
  715.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 184 */
  716.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 189 */
  717.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 194 */
  718.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 199 */
  719.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 204 */
  720.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 209 */
  721.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 214 */
  722.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 219 */
  723.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 224 */
  724.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 229 */
  725.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 234 */
  726.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 239 */
  727.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 244 */
  728.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 249 */
  729.    0x01000000, 0x01000000, 0x01000000, 0x01000000, 0x01000000/* 254 */
  730.    0x01000000, 0x01000000, 0xFF000003, 0x030F0E02, 0x030E0F02/* 259 */
  731.    0x030F0D02, 0x030D0F02, 0x030F0C02, 0x030C0F02, 0x030F0B02/* 264 */
  732.    0x030B0F02, 0xFF000003, 0x020F0A02, 0x020F0A02, 0x030A0F02/* 269 */
  733.    0x030F0902, 0x03090F02, 0x03080F02, 0x020F0802, 0x020F0802/* 274 */
  734.    0xFF000002, 0x020F0702, 0x02070F02, 0x020F0602, 0x02060F02/* 279 */
  735.    0xFF000002, 0x020F0502, 0x02050F02, 0x010F0402, 0x010F0402/* 284 */
  736.    0xFF000001, 0x01040F02, 0x01030F02, 0xFF000004, 0x01000F01/* 289 */
  737.    0x01000F01, 0x01000F01, 0x01000F01, 0x01000F01, 0x01000F01/* 294 */
  738.    0x01000F01, 0x01000F01, 0x020F0302, 0x020F0302, 0x020F0302/* 299 */
  739.    0x020F0302, 0x000000E2, 0x000000F3, 0x000000FC, 0x00000105/* 304 */
  740.    0xFF000001, 0x010F0202, 0x010F0001, 0xFF000004, 0x000000FA/* 309 */
  741.    0x000000FF, 0x00000104, 0x00000109, 0x0000010C, 0x00000111/* 314 */
  742.    0x00000116, 0x00000119, 0x0000011E, 0x00000123, 0x00000128/* 319 */
  743.    0x04030E02, 0x0000012D, 0x00000130, 0x00000133, 0x00000136/* 324 */
  744.    0xFF000004, 0x00000128, 0x0000012B, 0x0000012E, 0x040D0001/* 329 */
  745.    0x00000131, 0x00000134, 0x00000137, 0x040C0302, 0x0000013A/* 334 */
  746.    0x040C0102, 0x04000C01, 0x0000013D, 0x03020E02, 0x03020E02/* 339 */
  747.    0x040E0202, 0x040E0102, 0xFF000004, 0x04030D02, 0x040D0202/* 344 */
  748.    0x04020D02, 0x04010D02, 0x040B0302, 0x0000012F, 0x030D0102/* 349 */
  749.    0x030D0102, 0x04040C02, 0x040B0602, 0x04030C02, 0x04070A02/* 354 */
  750.    0x030C0202, 0x030C0202, 0x04020C02, 0x04050B02, 0xFF000004/* 359 */
  751.    0x04010C02, 0x040C0001, 0x040B0402, 0x04040B02, 0x040A0602/* 364 */
  752.    0x04060A02, 0x03030B02, 0x03030B02, 0x040A0502, 0x04050A02/* 369 */
  753.    0x030B0202, 0x030B0202, 0x03020B02, 0x03020B02, 0x030B0102/* 374 */
  754.    0x030B0102, 0xFF000004, 0x03010B02, 0x03010B02, 0x040B0001/* 379 */
  755.    0x04000B01, 0x04090602, 0x04060902, 0x040A0402, 0x04040A02/* 384 */
  756.    0x04080702, 0x04070802, 0x03030A02, 0x03030A02, 0x040A0302/* 389 */
  757.    0x04090502, 0x030A0202, 0x030A0202, 0xFF000004, 0x04050902/* 394 */
  758.    0x04080602, 0x03010A02, 0x03010A02, 0x04060802, 0x04070702/* 399 */
  759.    0x03040902, 0x03040902, 0x04090402, 0x04070502, 0x03070602/* 404 */
  760.    0x03070602, 0x02020A02, 0x02020A02, 0x02020A02, 0x02020A02/* 409 */
  761.    0xFF000003, 0x020A0102, 0x020A0102, 0x030A0001, 0x03000A01/* 414 */
  762.    0x03090302, 0x03030902, 0x03080502, 0x03050802, 0xFF000003/* 419 */
  763.    0x02090202, 0x02090202, 0x02020902, 0x02020902, 0x03060702/* 424 */
  764.    0x03090001, 0x02090102, 0x02090102, 0xFF000003, 0x02010902/* 429 */
  765.    0x02010902, 0x03000901, 0x03080402, 0x03040802, 0x03050702/* 434 */
  766.    0x03080302, 0x03030802, 0xFF000003, 0x03060602, 0x03080202/* 439 */
  767.    0x02020802, 0x02020802, 0x03070402, 0x03040702, 0x02080102/* 444 */
  768.    0x02080102, 0xFF000003, 0x02010802, 0x02010802, 0x02000801/* 449 */
  769.    0x02000801, 0x03080001, 0x03060502, 0x02070302, 0x02070302/* 454 */
  770.    0xFF000003, 0x02030702, 0x02030702, 0x03050602, 0x03060402/* 459 */
  771.    0x02070202, 0x02070202, 0x02020702, 0x02020702, 0xFF000003/* 464 */
  772.    0x03040602, 0x03050502, 0x02070001, 0x02070001, 0x01070102/* 469 */
  773.    0x01070102, 0x01070102, 0x01070102, 0xFF000002, 0x01010702/* 474 */
  774.    0x01010702, 0x02000701, 0x02060302, 0xFF000002, 0x02030602/* 479 */
  775.    0x02050402, 0x02040502, 0x02060202, 0xFF000001, 0x01020602/* 484 */
  776.    0x01060102, 0xFF000002, 0x01010602, 0x01010602, 0x02060001/* 489 */
  777.    0x02000601, 0xFF000002, 0x01030502, 0x01030502, 0x02050302/* 494 */
  778.    0x02040402, 0xFF000001, 0x01050202, 0x01020502, 0xFF000001/* 499 */
  779.    0x01050102, 0x01050001, 0xFF000001, 0x01040302, 0x01030402/* 504 */
  780.    0xFF000001, 0x01000501, 0x01040202, 0xFF000001, 0x01020402/* 509 */
  781.    0x01030302, 0xFF000001, 0x01040001, 0x01000401, 0xFF000004/* 514 */
  782.    0x040E0C02, 0x00000086, 0x030E0D02, 0x030E0D02, 0x03090E02/* 519 */
  783.    0x03090E02, 0x040A0E02, 0x04090D02, 0x020E0E02, 0x020E0E02/* 524 */
  784.    0x020E0E02, 0x020E0E02, 0x030D0E02, 0x030D0E02, 0x030B0E02/* 529 */
  785.    0x030B0E02, 0xFF000003, 0x020E0B02, 0x020E0B02, 0x020D0C02/* 534 */
  786.    0x020D0C02, 0x030C0D02, 0x030B0D02, 0x020E0A02, 0x020E0A02/* 539 */
  787.    0xFF000003, 0x020C0C02, 0x020C0C02, 0x030D0A02, 0x030A0D02/* 544 */
  788.    0x030E0702, 0x030C0A02, 0x020A0C02, 0x020A0C02, 0xFF000003/* 549 */
  789.    0x03090C02, 0x030D0702, 0x020E0502, 0x020E0502, 0x010D0B02/* 554 */
  790.    0x010D0B02, 0x010D0B02, 0x010D0B02, 0xFF000002, 0x010E0902/* 559 */
  791.    0x010E0902, 0x020C0B02, 0x020B0C02, 0xFF000002, 0x020E0802/* 564 */
  792.    0x02080E02, 0x020D0902, 0x02070E02, 0xFF000002, 0x020B0B02/* 569 */
  793.    0x020D0802, 0x02080D02, 0x020E0602, 0xFF000001, 0x01060E02/* 574 */
  794.    0x010C0902, 0xFF000002, 0x020B0A02, 0x020A0B02, 0x02050E02/* 579 */
  795.    0x02070D02, 0xFF000002, 0x010E0402, 0x010E0402, 0x02040E02/* 584 */
  796.    0x020C0802, 0xFF000001, 0x01080C02, 0x010E0302, 0xFF000002/* 589 */
  797.    0x010D0602, 0x010D0602, 0x02060D02, 0x020B0902, 0xFF000002/* 594 */
  798.    0x02090B02, 0x020A0A02, 0x01010E02, 0x01010E02, 0xFF000002/* 599 */
  799.    0x01040D02, 0x01040D02, 0x02080B02, 0x02090A02, 0xFF000002/* 604 */
  800.    0x010B0702, 0x010B0702, 0x02070B02, 0x02000D01, 0xFF000001/* 609 */
  801.    0x010E0001, 0x01000E01, 0xFF000001, 0x010D0502, 0x01050D02/* 614 */
  802.    0xFF000001, 0x010C0702, 0x01070C02, 0xFF000001, 0x010D0402/* 619 */
  803.    0x010B0802, 0xFF000001, 0x010A0902, 0x010C0602, 0xFF000001/* 624 */
  804.    0x01060C02, 0x010D0302, 0xFF000001, 0x010C0502, 0x01050C02/* 629 */
  805.    0xFF000001, 0x010A0802, 0x01080A02, 0xFF000001, 0x01090902/* 634 */
  806.    0x010C0402, 0xFF000001, 0x01060B02, 0x010A0702, 0xFF000001/* 639 */
  807.    0x010B0502, 0x01090802, 0xFF000001, 0x01080902, 0x01090702/* 644 */
  808.    0xFF000001, 0x01070902, 0x01080802, 0xFF000001, 0x010C0E02/* 649 */
  809.    0x010D0D02,};
  810.  
  811. /* max table bits  8 */
  812. /* NO XING TABLE 17 */
  813. /* NO XING TABLE 18 */
  814. /* NO XING TABLE 19 */
  815. /* NO XING TABLE 20 */
  816. /* NO XING TABLE 21 */
  817. /* NO XING TABLE 22 */
  818. /* NO XING TABLE 23 */
  819.  
  820. /* TABLE 24  256 entries  maxbits 12  linbits  0 */
  821. static HUFF_ELEMENT huff_table_24[] =
  822. {
  823.    0xFF000009, 0x080F0E02, 0x080F0E02, 0x080E0F02, 0x080E0F02/*  4 */
  824.    0x080F0D02, 0x080F0D02, 0x080D0F02, 0x080D0F02, 0x080F0C02/*  9 */
  825.    0x080F0C02, 0x080C0F02, 0x080C0F02, 0x080F0B02, 0x080F0B02/* 14 */
  826.    0x080B0F02, 0x080B0F02, 0x070A0F02, 0x070A0F02, 0x070A0F02/* 19 */
  827.    0x070A0F02, 0x080F0A02, 0x080F0A02, 0x080F0902, 0x080F0902/* 24 */
  828.    0x07090F02, 0x07090F02, 0x07090F02, 0x07090F02, 0x07080F02/* 29 */
  829.    0x07080F02, 0x07080F02, 0x07080F02, 0x080F0802, 0x080F0802/* 34 */
  830.    0x080F0702, 0x080F0702, 0x07070F02, 0x07070F02, 0x07070F02/* 39 */
  831.    0x07070F02, 0x070F0602, 0x070F0602, 0x070F0602, 0x070F0602/* 44 */
  832.    0x07060F02, 0x07060F02, 0x07060F02, 0x07060F02, 0x070F0502/* 49 */
  833.    0x070F0502, 0x070F0502, 0x070F0502, 0x07050F02, 0x07050F02/* 54 */
  834.    0x07050F02, 0x07050F02, 0x070F0402, 0x070F0402, 0x070F0402/* 59 */
  835.    0x070F0402, 0x07040F02, 0x07040F02, 0x07040F02, 0x07040F02/* 64 */
  836.    0x070F0302, 0x070F0302, 0x070F0302, 0x070F0302, 0x07030F02/* 69 */
  837.    0x07030F02, 0x07030F02, 0x07030F02, 0x070F0202, 0x070F0202/* 74 */
  838.    0x070F0202, 0x070F0202, 0x07020F02, 0x07020F02, 0x07020F02/* 79 */
  839.    0x07020F02, 0x07010F02, 0x07010F02, 0x07010F02, 0x07010F02/* 84 */
  840.    0x080F0102, 0x080F0102, 0x08000F01, 0x08000F01, 0x090F0001/* 89 */
  841.    0x00000201, 0x00000206, 0x0000020B, 0x00000210, 0x00000215/* 94 */
  842.    0x0000021A, 0x0000021F, 0x040F0F02, 0x040F0F02, 0x040F0F02/* 99 */
  843.    0x040F0F02, 0x040F0F02, 0x040F0F02, 0x040F0F02, 0x040F0F02/* 104 */
  844.    0x040F0F02, 0x040F0F02, 0x040F0F02, 0x040F0F02, 0x040F0F02/* 109 */
  845.    0x040F0F02, 0x040F0F02, 0x040F0F02, 0x040F0F02, 0x040F0F02/* 114 */
  846.    0x040F0F02, 0x040F0F02, 0x040F0F02, 0x040F0F02, 0x040F0F02/* 119 */
  847.    0x040F0F02, 0x040F0F02, 0x040F0F02, 0x040F0F02, 0x040F0F02/* 124 */
  848.    0x040F0F02, 0x040F0F02, 0x040F0F02, 0x040F0F02, 0x00000224/* 129 */
  849.    0x00000229, 0x00000232, 0x00000237, 0x0000023A, 0x0000023F/* 134 */
  850.    0x00000242, 0x00000245, 0x0000024A, 0x0000024D, 0x00000250/* 139 */
  851.    0x00000253, 0x00000256, 0x00000259, 0x0000025C, 0x0000025F/* 144 */
  852.    0x00000262, 0x00000265, 0x00000268, 0x0000026B, 0x0000026E/* 149 */
  853.    0x00000271, 0x00000274, 0x00000277, 0x0000027A, 0x0000027D/* 154 */
  854.    0x00000280, 0x00000283, 0x00000288, 0x0000028B, 0x0000028E/* 159 */
  855.    0x00000291, 0x00000294, 0x00000297, 0x0000029A, 0x0000029F/* 164 */
  856.    0x09040B02, 0x000002A4, 0x000002A7, 0x000002AA, 0x09030B02/* 169 */
  857.    0x09080802, 0x000002AF, 0x09020B02, 0x000002B2, 0x000002B5/* 174 */
  858.    0x09060902, 0x09040A02, 0x000002B8, 0x09070802, 0x090A0302/* 179 */
  859.    0x09030A02, 0x09090502, 0x09050902, 0x090A0202, 0x09020A02/* 184 */
  860.    0x09010A02, 0x09080602, 0x09060802, 0x09070702, 0x09090402/* 189 */
  861.    0x09040902, 0x09090302, 0x09030902, 0x09080502, 0x09050802/* 194 */
  862.    0x09090202, 0x09070602, 0x09060702, 0x09020902, 0x09090102/* 199 */
  863.    0x09010902, 0x09080402, 0x09040802, 0x09070502, 0x09050702/* 204 */
  864.    0x09080302, 0x09030802, 0x09060602, 0x09080202, 0x09020802/* 209 */
  865.    0x09080102, 0x09070402, 0x09040702, 0x09010802, 0x000002BB/* 214 */
  866.    0x09060502, 0x09050602, 0x09070102, 0x000002BE, 0x08030702/* 219 */
  867.    0x08030702, 0x09070302, 0x09070202, 0x08020702, 0x08020702/* 224 */
  868.    0x08060402, 0x08060402, 0x08040602, 0x08040602, 0x08050502/* 229 */
  869.    0x08050502, 0x08010702, 0x08010702, 0x08060302, 0x08060302/* 234 */
  870.    0x08030602, 0x08030602, 0x08050402, 0x08050402, 0x08040502/* 239 */
  871.    0x08040502, 0x08060202, 0x08060202, 0x08020602, 0x08020602/* 244 */
  872.    0x08060102, 0x08060102, 0x08010602, 0x08010602, 0x09060001/* 249 */
  873.    0x09000601, 0x08050302, 0x08050302, 0x08030502, 0x08030502/* 254 */
  874.    0x08040402, 0x08040402, 0x08050202, 0x08050202, 0x08020502/* 259 */
  875.    0x08020502, 0x08050102, 0x08050102, 0x09050001, 0x09000501/* 264 */
  876.    0x07010502, 0x07010502, 0x07010502, 0x07010502, 0x08040302/* 269 */
  877.    0x08040302, 0x08030402, 0x08030402, 0x07040202, 0x07040202/* 274 */
  878.    0x07040202, 0x07040202, 0x07020402, 0x07020402, 0x07020402/* 279 */
  879.    0x07020402, 0x07030302, 0x07030302, 0x07030302, 0x07030302/* 284 */
  880.    0x07040102, 0x07040102, 0x07040102, 0x07040102, 0x07010402/* 289 */
  881.    0x07010402, 0x07010402, 0x07010402, 0x08040001, 0x08040001/* 294 */
  882.    0x08000401, 0x08000401, 0x07030202, 0x07030202, 0x07030202/* 299 */
  883.    0x07030202, 0x07020302, 0x07020302, 0x07020302, 0x07020302/* 304 */
  884.    0x06030102, 0x06030102, 0x06030102, 0x06030102, 0x06030102/* 309 */
  885.    0x06030102, 0x06030102, 0x06030102, 0x06010302, 0x06010302/* 314 */
  886.    0x06010302, 0x06010302, 0x06010302, 0x06010302, 0x06010302/* 319 */
  887.    0x06010302, 0x07030001, 0x07030001, 0x07030001, 0x07030001/* 324 */
  888.    0x07000301, 0x07000301, 0x07000301, 0x07000301, 0x06020202/* 329 */
  889.    0x06020202, 0x06020202, 0x06020202, 0x06020202, 0x06020202/* 334 */
  890.    0x06020202, 0x06020202, 0x05020102, 0x05020102, 0x05020102/* 339 */
  891.    0x05020102, 0x05020102, 0x05020102, 0x05020102, 0x05020102/* 344 */
  892.    0x05020102, 0x05020102, 0x05020102, 0x05020102, 0x05020102/* 349 */
  893.    0x05020102, 0x05020102, 0x05020102, 0x05010202, 0x05010202/* 354 */
  894.    0x05010202, 0x05010202, 0x05010202, 0x05010202, 0x05010202/* 359 */
  895.    0x05010202, 0x05010202, 0x05010202, 0x05010202, 0x05010202/* 364 */
  896.    0x05010202, 0x05010202, 0x05010202, 0x05010202, 0x06020001/* 369 */
  897.    0x06020001, 0x06020001, 0x06020001, 0x06020001, 0x06020001/* 374 */
  898.    0x06020001, 0x06020001, 0x06000201, 0x06000201, 0x06000201/* 379 */
  899.    0x06000201, 0x06000201, 0x06000201, 0x06000201, 0x06000201/* 384 */
  900.    0x04010102, 0x04010102, 0x04010102, 0x04010102, 0x04010102/* 389 */
  901.    0x04010102, 0x04010102, 0x04010102, 0x04010102, 0x04010102/* 394 */
  902.    0x04010102, 0x04010102, 0x04010102, 0x04010102, 0x04010102/* 399 */
  903.    0x04010102, 0x04010102, 0x04010102, 0x04010102, 0x04010102/* 404 */
  904.    0x04010102, 0x04010102, 0x04010102, 0x04010102, 0x04010102/* 409 */
  905.    0x04010102, 0x04010102, 0x04010102, 0x04010102, 0x04010102/* 414 */
  906.    0x04010102, 0x04010102, 0x04010001, 0x04010001, 0x04010001/* 419 */
  907.    0x04010001, 0x04010001, 0x04010001, 0x04010001, 0x04010001/* 424 */
  908.    0x04010001, 0x04010001, 0x04010001, 0x04010001, 0x04010001/* 429 */
  909.    0x04010001, 0x04010001, 0x04010001, 0x04010001, 0x04010001/* 434 */
  910.    0x04010001, 0x04010001, 0x04010001, 0x04010001, 0x04010001/* 439 */
  911.    0x04010001, 0x04010001, 0x04010001, 0x04010001, 0x04010001/* 444 */
  912.    0x04010001, 0x04010001, 0x04010001, 0x04010001, 0x04000101/* 449 */
  913.    0x04000101, 0x04000101, 0x04000101, 0x04000101, 0x04000101/* 454 */
  914.    0x04000101, 0x04000101, 0x04000101, 0x04000101, 0x04000101/* 459 */
  915.    0x04000101, 0x04000101, 0x04000101, 0x04000101, 0x04000101/* 464 */
  916.    0x04000101, 0x04000101, 0x04000101, 0x04000101, 0x04000101/* 469 */
  917.    0x04000101, 0x04000101, 0x04000101, 0x04000101, 0x04000101/* 474 */
  918.    0x04000101, 0x04000101, 0x04000101, 0x04000101, 0x04000101/* 479 */
  919.    0x04000101, 0x04000000, 0x04000000, 0x04000000, 0x04000000/* 484 */
  920.    0x04000000, 0x04000000, 0x04000000, 0x04000000, 0x04000000/* 489 */
  921.    0x04000000, 0x04000000, 0x04000000, 0x04000000, 0x04000000/* 494 */
  922.    0x04000000, 0x04000000, 0x04000000, 0x04000000, 0x04000000/* 499 */
  923.    0x04000000, 0x04000000, 0x04000000, 0x04000000, 0x04000000/* 504 */
  924.    0x04000000, 0x04000000, 0x04000000, 0x04000000, 0x04000000/* 509 */
  925.    0x04000000, 0x04000000, 0x04000000, 0xFF000002, 0x020E0E02/* 514 */
  926.    0x020E0D02, 0x020D0E02, 0x020E0C02, 0xFF000002, 0x020C0E02/* 519 */
  927.    0x020D0D02, 0x020E0B02, 0x020B0E02, 0xFF000002, 0x020D0C02/* 524 */
  928.    0x020C0D02, 0x020E0A02, 0x020A0E02, 0xFF000002, 0x020D0B02/* 529 */
  929.    0x020B0D02, 0x020C0C02, 0x020E0902, 0xFF000002, 0x02090E02/* 534 */
  930.    0x020D0A02, 0x020A0D02, 0x020C0B02, 0xFF000002, 0x020B0C02/* 539 */
  931.    0x020E0802, 0x02080E02, 0x020D0902, 0xFF000002, 0x02090D02/* 544 */
  932.    0x020E0702, 0x02070E02, 0x020C0A02, 0xFF000002, 0x020A0C02/* 549 */
  933.    0x020B0B02, 0x020D0802, 0x02080D02, 0xFF000003, 0x030E0001/* 554 */
  934.    0x03000E01, 0x020D0001, 0x020D0001, 0x01060E02, 0x01060E02/* 559 */
  935.    0x01060E02, 0x01060E02, 0xFF000002, 0x020E0602, 0x020C0902/* 564 */
  936.    0x01090C02, 0x01090C02, 0xFF000001, 0x010E0502, 0x010A0B02/* 569 */
  937.    0xFF000002, 0x01050E02, 0x01050E02, 0x020B0A02, 0x020D0702/* 574 */
  938.    0xFF000001, 0x01070D02, 0x01040E02, 0xFF000001, 0x010C0802/* 579 */
  939.    0x01080C02, 0xFF000002, 0x020E0402, 0x020E0202, 0x010E0302/* 584 */
  940.    0x010E0302, 0xFF000001, 0x010D0602, 0x01060D02, 0xFF000001/* 589 */
  941.    0x01030E02, 0x010B0902, 0xFF000001, 0x01090B02, 0x010A0A02/* 594 */
  942.    0xFF000001, 0x01020E02, 0x010E0102, 0xFF000001, 0x01010E02/* 599 */
  943.    0x010D0502, 0xFF000001, 0x01050D02, 0x010C0702, 0xFF000001/* 604 */
  944.    0x01070C02, 0x010D0402, 0xFF000001, 0x010B0802, 0x01080B02/* 609 */
  945.    0xFF000001, 0x01040D02, 0x010A0902, 0xFF000001, 0x01090A02/* 614 */
  946.    0x010C0602, 0xFF000001, 0x01060C02, 0x010D0302, 0xFF000001/* 619 */
  947.    0x01030D02, 0x010D0202, 0xFF000001, 0x01020D02, 0x010D0102/* 624 */
  948.    0xFF000001, 0x010B0702, 0x01070B02, 0xFF000001, 0x01010D02/* 629 */
  949.    0x010C0502, 0xFF000001, 0x01050C02, 0x010A0802, 0xFF000001/* 634 */
  950.    0x01080A02, 0x01090902, 0xFF000001, 0x010C0402, 0x01040C02/* 639 */
  951.    0xFF000001, 0x010B0602, 0x01060B02, 0xFF000002, 0x02000D01/* 644 */
  952.    0x020C0001, 0x010C0302, 0x010C0302, 0xFF000001, 0x01030C02/* 649 */
  953.    0x010A0702, 0xFF000001, 0x01070A02, 0x010C0202, 0xFF000001/* 654 */
  954.    0x01020C02, 0x010B0502, 0xFF000001, 0x01050B02, 0x010C0102/* 659 */
  955.    0xFF000001, 0x01090802, 0x01080902, 0xFF000001, 0x01010C02/* 664 */
  956.    0x010B0402, 0xFF000002, 0x02000C01, 0x020B0001, 0x010B0302/* 669 */
  957.    0x010B0302, 0xFF000002, 0x02000B01, 0x020A0001, 0x010A0102/* 674 */
  958.    0x010A0102, 0xFF000001, 0x010A0602, 0x01060A02, 0xFF000001/* 679 */
  959.    0x01090702, 0x01070902, 0xFF000002, 0x02000A01, 0x02090001/* 684 */
  960.    0x01000901, 0x01000901, 0xFF000001, 0x010B0202, 0x010A0502/* 689 */
  961.    0xFF000001, 0x01050A02, 0x010B0102, 0xFF000001, 0x01010B02/* 694 */
  962.    0x01090602, 0xFF000001, 0x010A0402, 0x01080702, 0xFF000001/* 699 */
  963.    0x01080001, 0x01000801, 0xFF000001, 0x01070001, 0x01000701, /* 704 */ };
  964.  
  965. /* max table bits  9 */
  966. /* NO XING TABLE 25 */
  967. /* NO XING TABLE 26 */
  968. /* NO XING TABLE 27 */
  969. /* NO XING TABLE 28 */
  970. /* NO XING TABLE 29 */
  971. /* NO XING TABLE 30 */
  972. /* NO XING TABLE 31 */
  973. /* done */
  974.