Skip to main content

j2k_native/j2c/
ht_encode_tables.rs

1//! HTJ2K encoder lookup tables generated from OpenJPH source rows.
2
3#[repr(C)]
4/// Adapter HTJ2K UVLC encoder table row for backend experimentation.
5#[derive(Clone, Copy, Debug)]
6pub struct HtUvlcTableEntry {
7    /// Prefix code bits.
8    pub pre: u8,
9    /// Prefix code bit length.
10    pub pre_len: u8,
11    /// Suffix code bits.
12    pub suf: u8,
13    /// Suffix code bit length.
14    pub suf_len: u8,
15    /// Extension code bits.
16    pub ext: u8,
17    /// Extension code bit length.
18    pub ext_len: u8,
19}
20
21pub(crate) const HT_VLC_ENCODE_TABLE0: [u16; 2048] = [
22    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
23    0x0000, 0x0000, 0x0000, 0x0000, 0x0640, 0x3F71, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
24    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0030, 0x0000, 0x7F72, 0x0000,
25    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
26    0x1150, 0x1F73, 0x5F72, 0x5F72, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
27    0x0000, 0x0000, 0x0000, 0x0000, 0x0230, 0x0000, 0x0000, 0x0000, 0x1364, 0x0000, 0x0000, 0x0000,
28    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0E50, 0x0F75, 0x0000, 0x0000,
29    0x2364, 0x2364, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
30    0x0360, 0x0000, 0x6F70, 0x0000, 0x6F70, 0x0000, 0x6F70, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
31    0x0000, 0x0000, 0x0000, 0x0000, 0x2F70, 0x0D62, 0x4F72, 0x4F72, 0x0D62, 0x0D62, 0x4F72, 0x4F72,
32    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0430, 0x0000, 0x0000, 0x0000,
33    0x0000, 0x0000, 0x0000, 0x0000, 0x3D68, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
34    0x1D60, 0x2D60, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2D60, 0x2D60, 0x0000, 0x0000,
35    0x0000, 0x0000, 0x0000, 0x0000, 0x0150, 0x0000, 0x777A, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
36    0x3568, 0x0000, 0x3568, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3770, 0x5771, 0x0961, 0x5771,
37    0x0000, 0x0000, 0x0000, 0x0000, 0x0961, 0x5771, 0x0961, 0x5771, 0x0000, 0x0000, 0x0000, 0x0000,
38    0x1E50, 0x0000, 0x0000, 0x0000, 0x156C, 0x0000, 0x0000, 0x0000, 0x256C, 0x0000, 0x0000, 0x0000,
39    0x177C, 0x0000, 0x0000, 0x0000, 0x6770, 0x2771, 0x0000, 0x0000, 0x4775, 0x2771, 0x0000, 0x0000,
40    0x077D, 0x2771, 0x0000, 0x0000, 0x4775, 0x2771, 0x0000, 0x0000, 0x7B70, 0x0000, 0x4B72, 0x0000,
41    0x3B7E, 0x0000, 0x4B72, 0x0000, 0x056A, 0x0000, 0x4B72, 0x0000, 0x056A, 0x0000, 0x4B72, 0x0000,
42    0x5B70, 0x337F, 0x196E, 0x196E, 0x296F, 0x0B7F, 0x737E, 0x737E, 0x396F, 0x1B79, 0x6B7B, 0x1B79,
43    0x2B7F, 0x1B79, 0x6B7B, 0x1B79, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
44    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0E40, 0x1F71, 0x0000, 0x0000,
45    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
46    0x0640, 0x0000, 0x3B62, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
47    0x0000, 0x0000, 0x0000, 0x0000, 0x1B60, 0x3D60, 0x3D60, 0x3D60, 0x0000, 0x0000, 0x0000, 0x0000,
48    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0A40, 0x0000, 0x0000, 0x0000,
49    0x2B64, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
50    0x0B60, 0x7F75, 0x0000, 0x0000, 0x3364, 0x3364, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
51    0x0000, 0x0000, 0x0000, 0x0000, 0x1360, 0x0000, 0x2360, 0x0000, 0x2360, 0x0000, 0x2360, 0x0000,
52    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3F70, 0x0362, 0x5F72, 0x5F72,
53    0x0362, 0x0362, 0x5F72, 0x5F72, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
54    0x0240, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1D68, 0x0000, 0x0000, 0x0000,
55    0x0000, 0x0000, 0x0000, 0x0000, 0x2D60, 0x0D60, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
56    0x0D60, 0x0D60, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3560, 0x0000, 0x6F7A, 0x0000,
57    0x0000, 0x0000, 0x0000, 0x0000, 0x1568, 0x0000, 0x1568, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
58    0x2F70, 0x4F71, 0x1161, 0x4F71, 0x0000, 0x0000, 0x0000, 0x0000, 0x1161, 0x4F71, 0x1161, 0x4F71,
59    0x0000, 0x0000, 0x0000, 0x0000, 0x0150, 0x0000, 0x0000, 0x0000, 0x056C, 0x0000, 0x0000, 0x0000,
60    0x2568, 0x0000, 0x0000, 0x0000, 0x2568, 0x0000, 0x0000, 0x0000, 0x0F70, 0x1771, 0x0000, 0x0000,
61    0x3965, 0x1771, 0x0000, 0x0000, 0x777D, 0x1771, 0x0000, 0x0000, 0x3965, 0x1771, 0x0000, 0x0000,
62    0x3770, 0x0000, 0x5772, 0x0000, 0x677E, 0x0000, 0x5772, 0x0000, 0x196A, 0x0000, 0x5772, 0x0000,
63    0x196A, 0x0000, 0x5772, 0x0000, 0x0770, 0x477F, 0x096A, 0x096A, 0x316E, 0x316E, 0x096A, 0x096A,
64    0x296B, 0x2778, 0x2778, 0x2778, 0x296B, 0x2778, 0x2778, 0x2778, 0x0020, 0x0000, 0x0000, 0x0000,
65    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
66    0x0E40, 0x1B61, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
67    0x0000, 0x0000, 0x0000, 0x0000, 0x0640, 0x0000, 0x3F72, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
68    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2B60, 0x3361, 0x7F73, 0x3361,
69    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
70    0x0A40, 0x0000, 0x0000, 0x0000, 0x0B64, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
71    0x0000, 0x0000, 0x0000, 0x0000, 0x0150, 0x1365, 0x0000, 0x0000, 0x2365, 0x2F75, 0x0000, 0x0000,
72    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0360, 0x0000, 0x5F70, 0x0000,
73    0x5F70, 0x0000, 0x5F70, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
74    0x1F70, 0x1163, 0x6F72, 0x6F72, 0x3777, 0x1163, 0x6F72, 0x6F72, 0x0000, 0x0000, 0x0000, 0x0000,
75    0x0000, 0x0000, 0x0000, 0x0000, 0x0240, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
76    0x4F78, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3D60, 0x1D60, 0x0000, 0x0000,
77    0x0000, 0x0000, 0x0000, 0x0000, 0x1D60, 0x1D60, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
78    0x2D60, 0x0000, 0x0D60, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0D60, 0x0000, 0x0D60, 0x0000,
79    0x0000, 0x0000, 0x0000, 0x0000, 0x0F70, 0x3562, 0x7772, 0x7772, 0x0000, 0x0000, 0x0000, 0x0000,
80    0x3562, 0x3562, 0x7772, 0x7772, 0x0000, 0x0000, 0x0000, 0x0000, 0x1560, 0x0000, 0x0000, 0x0000,
81    0x2564, 0x0000, 0x0000, 0x0000, 0x577C, 0x0000, 0x0000, 0x0000, 0x2564, 0x0000, 0x0000, 0x0000,
82    0x1770, 0x677D, 0x0000, 0x0000, 0x396C, 0x396C, 0x0000, 0x0000, 0x0568, 0x0568, 0x0000, 0x0000,
83    0x0568, 0x0568, 0x0000, 0x0000, 0x2770, 0x0000, 0x7B72, 0x0000, 0x1962, 0x0000, 0x7B72, 0x0000,
84    0x1962, 0x0000, 0x7B72, 0x0000, 0x1962, 0x0000, 0x7B72, 0x0000, 0x4770, 0x296F, 0x0773, 0x0961,
85    0x3167, 0x0961, 0x0773, 0x0961, 0x3B7F, 0x0961, 0x0773, 0x0961, 0x3167, 0x0961, 0x0773, 0x0961,
86    0x0030, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
87    0x0000, 0x0000, 0x0000, 0x0000, 0x0440, 0x3D61, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
88    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0C50, 0x0000, 0x4F72, 0x0000,
89    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
90    0x1D60, 0x0561, 0x7F73, 0x0561, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
91    0x0000, 0x0000, 0x0000, 0x0000, 0x1650, 0x0000, 0x0000, 0x0000, 0x2D64, 0x0000, 0x0000, 0x0000,
92    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0650, 0x0D65, 0x0000, 0x0000,
93    0x3565, 0x1A55, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
94    0x3F70, 0x0000, 0x1F76, 0x0000, 0x5F74, 0x0000, 0x5F74, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
95    0x0000, 0x0000, 0x0000, 0x0000, 0x6F70, 0x2567, 0x0F77, 0x7777, 0x1566, 0x1566, 0x2F76, 0x2F76,
96    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0A50, 0x0000, 0x0000, 0x0000,
97    0x0000, 0x0000, 0x0000, 0x0000, 0x0778, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
98    0x3960, 0x3771, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5779, 0x3771, 0x0000, 0x0000,
99    0x0000, 0x0000, 0x0000, 0x0000, 0x1960, 0x0000, 0x177A, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
100    0x2968, 0x0000, 0x2968, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6770, 0x277B, 0x0963, 0x4771,
101    0x0000, 0x0000, 0x0000, 0x0000, 0x7B7B, 0x4771, 0x0963, 0x4771, 0x0000, 0x0000, 0x0000, 0x0000,
102    0x3160, 0x0000, 0x0000, 0x0000, 0x1164, 0x0000, 0x0000, 0x0000, 0x3B7C, 0x0000, 0x0000, 0x0000,
103    0x1164, 0x0000, 0x0000, 0x0000, 0x5B70, 0x216D, 0x0000, 0x0000, 0x016D, 0x2B7D, 0x0000, 0x0000,
104    0x4B7D, 0x1B79, 0x0000, 0x0000, 0x6B7D, 0x1B79, 0x0000, 0x0000, 0x0B70, 0x0000, 0x337E, 0x0000,
105    0x737E, 0x0000, 0x1374, 0x0000, 0x3E6C, 0x0000, 0x3E6C, 0x0000, 0x1374, 0x0000, 0x1374, 0x0000,
106    0x5370, 0x1C5F, 0x2E6F, 0x437F, 0x025F, 0x1E6F, 0x237E, 0x237E, 0x125F, 0x637B, 0x0E6A, 0x0E6A,
107    0x037F, 0x637B, 0x0E6A, 0x0E6A, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
108    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0E40, 0x3F71, 0x0000, 0x0000,
109    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
110    0x0640, 0x0000, 0x1B62, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
111    0x0000, 0x0000, 0x0000, 0x0000, 0x2B60, 0x7F73, 0x3D62, 0x3D62, 0x0000, 0x0000, 0x0000, 0x0000,
112    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0A40, 0x0000, 0x0000, 0x0000,
113    0x5F74, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
114    0x0B60, 0x3360, 0x0000, 0x0000, 0x3360, 0x3360, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
115    0x0000, 0x0000, 0x0000, 0x0000, 0x1360, 0x0000, 0x2360, 0x0000, 0x2360, 0x0000, 0x2360, 0x0000,
116    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1F70, 0x0364, 0x0364, 0x0364,
117    0x6F74, 0x6F74, 0x6F74, 0x6F74, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
118    0x0240, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1D68, 0x0000, 0x0000, 0x0000,
119    0x0000, 0x0000, 0x0000, 0x0000, 0x1160, 0x7770, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
120    0x7770, 0x7770, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0150, 0x0000, 0x2D6A, 0x0000,
121    0x0000, 0x0000, 0x0000, 0x0000, 0x0D6A, 0x0000, 0x2F7A, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
122    0x4F70, 0x3560, 0x0F7B, 0x3560, 0x0000, 0x0000, 0x0000, 0x0000, 0x3560, 0x3560, 0x3560, 0x3560,
123    0x0000, 0x0000, 0x0000, 0x0000, 0x1560, 0x0000, 0x0000, 0x0000, 0x377C, 0x0000, 0x0000, 0x0000,
124    0x2568, 0x0000, 0x0000, 0x0000, 0x2568, 0x0000, 0x0000, 0x0000, 0x5770, 0x0771, 0x0000, 0x0000,
125    0x0561, 0x0771, 0x0000, 0x0000, 0x0561, 0x0771, 0x0000, 0x0000, 0x0561, 0x0771, 0x0000, 0x0000,
126    0x1770, 0x0000, 0x677E, 0x0000, 0x3964, 0x0000, 0x3964, 0x0000, 0x196C, 0x0000, 0x196C, 0x0000,
127    0x3964, 0x0000, 0x3964, 0x0000, 0x2770, 0x2969, 0x0967, 0x2969, 0x3B7F, 0x2969, 0x7B77, 0x2969,
128    0x316B, 0x4779, 0x0967, 0x4779, 0x316B, 0x4779, 0x7B77, 0x4779, 0x0030, 0x0000, 0x0000, 0x0000,
129    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
130    0x1A50, 0x7F71, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
131    0x0000, 0x0000, 0x0000, 0x0000, 0x0A50, 0x0000, 0x1D62, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
132    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2D60, 0x3F73, 0x3963, 0x5F73,
133    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
134    0x1250, 0x0000, 0x0000, 0x0000, 0x1F74, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
135    0x0000, 0x0000, 0x0000, 0x0000, 0x0D60, 0x6F75, 0x0000, 0x0000, 0x3564, 0x3564, 0x0000, 0x0000,
136    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1560, 0x0000, 0x2562, 0x0000,
137    0x2F76, 0x0000, 0x2562, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
138    0x4F70, 0x3777, 0x7777, 0x0F77, 0x0566, 0x0566, 0x5776, 0x5776, 0x0000, 0x0000, 0x0000, 0x0000,
139    0x0000, 0x0000, 0x0000, 0x0000, 0x0250, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
140    0x1968, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2660, 0x6779, 0x0000, 0x0000,
141    0x0000, 0x0000, 0x0000, 0x0000, 0x1778, 0x1778, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
142    0x1C50, 0x0000, 0x096A, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x316A, 0x0000, 0x296A, 0x0000,
143    0x0000, 0x0000, 0x0000, 0x0000, 0x2770, 0x7B7B, 0x216B, 0x477B, 0x0000, 0x0000, 0x0000, 0x0000,
144    0x1169, 0x0779, 0x1169, 0x0779, 0x0000, 0x0000, 0x0000, 0x0000, 0x0160, 0x0000, 0x0000, 0x0000,
145    0x3B7C, 0x0000, 0x0000, 0x0000, 0x3E68, 0x0000, 0x0000, 0x0000, 0x3E68, 0x0000, 0x0000, 0x0000,
146    0x5B70, 0x2B7D, 0x0000, 0x0000, 0x2E6D, 0x1B7D, 0x0000, 0x0000, 0x1E69, 0x6B79, 0x0000, 0x0000,
147    0x1E69, 0x6B79, 0x0000, 0x0000, 0x4B70, 0x0000, 0x0E6E, 0x0000, 0x537E, 0x0000, 0x0B76, 0x0000,
148    0x366E, 0x0000, 0x337E, 0x0000, 0x737E, 0x0000, 0x0B76, 0x0000, 0x1370, 0x066F, 0x045F, 0x7D7F,
149    0x0C5F, 0x6377, 0x1667, 0x4377, 0x145F, 0x037D, 0x3D7F, 0x037D, 0x237F, 0x6377, 0x1667, 0x4377,
150    0x0030, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
151    0x0000, 0x0000, 0x0000, 0x0000, 0x0440, 0x0361, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
152    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0C50, 0x0000, 0x0D62, 0x0000,
153    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
154    0x1A50, 0x1D63, 0x2D63, 0x3D63, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
155    0x0000, 0x0000, 0x0000, 0x0000, 0x0A50, 0x0000, 0x0000, 0x0000, 0x3F74, 0x0000, 0x0000, 0x0000,
156    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3560, 0x1561, 0x0000, 0x0000,
157    0x7F75, 0x1561, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
158    0x2560, 0x0000, 0x5F72, 0x0000, 0x1F76, 0x0000, 0x5F72, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
159    0x0000, 0x0000, 0x0000, 0x0000, 0x6F70, 0x3667, 0x7777, 0x2F77, 0x0566, 0x0566, 0x4F76, 0x4F76,
160    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1250, 0x0000, 0x0000, 0x0000,
161    0x0000, 0x0000, 0x0000, 0x0000, 0x0F78, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
162    0x3960, 0x3771, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5779, 0x3771, 0x0000, 0x0000,
163    0x0000, 0x0000, 0x0000, 0x0000, 0x1960, 0x0000, 0x2962, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
164    0x177A, 0x0000, 0x2962, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6770, 0x0969, 0x316B, 0x0969,
165    0x0000, 0x0000, 0x0000, 0x0000, 0x7B7B, 0x4779, 0x277B, 0x4779, 0x0000, 0x0000, 0x0000, 0x0000,
166    0x1160, 0x0000, 0x0000, 0x0000, 0x3B7C, 0x0000, 0x0000, 0x0000, 0x216C, 0x0000, 0x0000, 0x0000,
167    0x077C, 0x0000, 0x0000, 0x0000, 0x5B70, 0x6B7D, 0x0000, 0x0000, 0x0165, 0x3375, 0x0000, 0x0000,
168    0x1B7C, 0x1B7C, 0x0000, 0x0000, 0x0165, 0x3375, 0x0000, 0x0000, 0x2B70, 0x0000, 0x4B7E, 0x0000,
169    0x537E, 0x0000, 0x0B72, 0x0000, 0x3E6E, 0x0000, 0x0B72, 0x0000, 0x737E, 0x0000, 0x0B72, 0x0000,
170    0x1370, 0x1C5F, 0x025F, 0x0E6F, 0x266F, 0x237F, 0x1E66, 0x1E66, 0x066F, 0x637B, 0x2E6E, 0x2E6E,
171    0x166F, 0x637B, 0x1E66, 0x1E66, 0x1250, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
172    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0560, 0x7F71, 0x0000, 0x0000,
173    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
174    0x3960, 0x0000, 0x3F72, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
175    0x0000, 0x0000, 0x0000, 0x0000, 0x5F70, 0x2F73, 0x6F73, 0x1F73, 0x0000, 0x0000, 0x0000, 0x0000,
176    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4F70, 0x0000, 0x0000, 0x0000,
177    0x0F74, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
178    0x5770, 0x1961, 0x0000, 0x0000, 0x7775, 0x1961, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
179    0x0000, 0x0000, 0x0000, 0x0000, 0x3770, 0x0000, 0x2960, 0x0000, 0x2960, 0x0000, 0x2960, 0x0000,
180    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1770, 0x0967, 0x4777, 0x2777,
181    0x0777, 0x1B77, 0x6776, 0x6776, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
182    0x7B70, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3B78, 0x0000, 0x0000, 0x0000,
183    0x0000, 0x0000, 0x0000, 0x0000, 0x5B70, 0x3160, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
184    0x3160, 0x3160, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5370, 0x0000, 0x1162, 0x0000,
185    0x0000, 0x0000, 0x0000, 0x0000, 0x6B7A, 0x0000, 0x1162, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
186    0x2B70, 0x737B, 0x216B, 0x0B7B, 0x0000, 0x0000, 0x0000, 0x0000, 0x137B, 0x4B79, 0x337B, 0x4B79,
187    0x0000, 0x0000, 0x0000, 0x0000, 0x6370, 0x0000, 0x0000, 0x0000, 0x437C, 0x0000, 0x0000, 0x0000,
188    0x2378, 0x0000, 0x0000, 0x0000, 0x2378, 0x0000, 0x0000, 0x0000, 0x0370, 0x016D, 0x0000, 0x0000,
189    0x3E6D, 0x5D7D, 0x0000, 0x0000, 0x1D7D, 0x7D79, 0x0000, 0x0000, 0x3D7D, 0x7D79, 0x0000, 0x0000,
190    0x6D70, 0x0000, 0x1E6E, 0x0000, 0x757E, 0x0000, 0x2D76, 0x0000, 0x0E6E, 0x0000, 0x0D7E, 0x0000,
191    0x4D7E, 0x0000, 0x2D76, 0x0000, 0x1570, 0x004F, 0x0C4F, 0x0A5F, 0x084F, 0x1A5F, 0x366F, 0x557F,
192    0x044F, 0x2E6F, 0x025F, 0x257F, 0x166F, 0x357F, 0x657F, 0x065F,
193];
194
195pub(crate) const HT_VLC_ENCODE_TABLE1: [u16; 2048] = [
196    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
197    0x0000, 0x0000, 0x0000, 0x0000, 0x0030, 0x2761, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
198    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0630, 0x0000, 0x1762, 0x0000,
199    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
200    0x0D50, 0x3B60, 0x3B60, 0x3B60, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
201    0x0000, 0x0000, 0x0000, 0x0000, 0x0230, 0x0000, 0x0000, 0x0000, 0x0764, 0x0000, 0x0000, 0x0000,
202    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1550, 0x2B60, 0x0000, 0x0000,
203    0x2B60, 0x2B60, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
204    0x0150, 0x0000, 0x7F70, 0x0000, 0x7F70, 0x0000, 0x7F70, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
205    0x0000, 0x0000, 0x0000, 0x0000, 0x1F70, 0x1B60, 0x1B60, 0x1B60, 0x1B60, 0x1B60, 0x1B60, 0x1B60,
206    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0430, 0x0000, 0x0000, 0x0000,
207    0x0000, 0x0000, 0x0000, 0x0000, 0x0558, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
208    0x1950, 0x1360, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1360, 0x1360, 0x0000, 0x0000,
209    0x0000, 0x0000, 0x0000, 0x0000, 0x0950, 0x0000, 0x3F7A, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
210    0x0B68, 0x0000, 0x0B68, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5F70, 0x3360, 0x3360, 0x3360,
211    0x0000, 0x0000, 0x0000, 0x0000, 0x3360, 0x3360, 0x3360, 0x3360, 0x0000, 0x0000, 0x0000, 0x0000,
212    0x1150, 0x0000, 0x0000, 0x0000, 0x6F7C, 0x0000, 0x0000, 0x0000, 0x2368, 0x0000, 0x0000, 0x0000,
213    0x2368, 0x0000, 0x0000, 0x0000, 0x0F70, 0x0360, 0x0000, 0x0000, 0x0360, 0x0360, 0x0000, 0x0000,
214    0x0360, 0x0360, 0x0000, 0x0000, 0x0360, 0x0360, 0x0000, 0x0000, 0x2F70, 0x0000, 0x3D64, 0x0000,
215    0x4F74, 0x0000, 0x4F74, 0x0000, 0x3D64, 0x0000, 0x3D64, 0x0000, 0x4F74, 0x0000, 0x4F74, 0x0000,
216    0x7770, 0x3771, 0x1D61, 0x3771, 0x1D61, 0x3771, 0x1D61, 0x3771, 0x1D61, 0x3771, 0x1D61, 0x3771,
217    0x1D61, 0x3771, 0x1D61, 0x3771, 0x0010, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
218    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0540, 0x7F71, 0x0000, 0x0000,
219    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
220    0x0940, 0x0000, 0x1F72, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
221    0x0000, 0x0000, 0x0000, 0x0000, 0x1D50, 0x3F71, 0x5F73, 0x3F71, 0x0000, 0x0000, 0x0000, 0x0000,
222    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0D50, 0x0000, 0x0000, 0x0000,
223    0x3774, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
224    0x0360, 0x6F70, 0x0000, 0x0000, 0x6F70, 0x6F70, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
225    0x0000, 0x0000, 0x0000, 0x0000, 0x2F70, 0x0000, 0x4F70, 0x0000, 0x4F70, 0x0000, 0x4F70, 0x0000,
226    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0F70, 0x7770, 0x7770, 0x7770,
227    0x7770, 0x7770, 0x7770, 0x7770, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
228    0x0140, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1778, 0x0000, 0x0000, 0x0000,
229    0x0000, 0x0000, 0x0000, 0x0000, 0x0B60, 0x5770, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
230    0x5770, 0x5770, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3360, 0x0000, 0x6770, 0x0000,
231    0x0000, 0x0000, 0x0000, 0x0000, 0x6770, 0x0000, 0x6770, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
232    0x2770, 0x2B70, 0x2B70, 0x2B70, 0x0000, 0x0000, 0x0000, 0x0000, 0x2B70, 0x2B70, 0x2B70, 0x2B70,
233    0x0000, 0x0000, 0x0000, 0x0000, 0x1360, 0x0000, 0x0000, 0x0000, 0x4770, 0x0000, 0x0000, 0x0000,
234    0x4770, 0x0000, 0x0000, 0x0000, 0x4770, 0x0000, 0x0000, 0x0000, 0x0770, 0x7B70, 0x0000, 0x0000,
235    0x7B70, 0x7B70, 0x0000, 0x0000, 0x7B70, 0x7B70, 0x0000, 0x0000, 0x7B70, 0x7B70, 0x0000, 0x0000,
236    0x3B70, 0x0000, 0x5B70, 0x0000, 0x5B70, 0x0000, 0x5B70, 0x0000, 0x5B70, 0x0000, 0x5B70, 0x0000,
237    0x5B70, 0x0000, 0x5B70, 0x0000, 0x1B70, 0x2364, 0x2364, 0x2364, 0x6B74, 0x6B74, 0x6B74, 0x6B74,
238    0x2364, 0x2364, 0x2364, 0x2364, 0x6B74, 0x6B74, 0x6B74, 0x6B74, 0x0010, 0x0000, 0x0000, 0x0000,
239    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
240    0x0940, 0x7F71, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
241    0x0000, 0x0000, 0x0000, 0x0000, 0x0140, 0x0000, 0x2362, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
242    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3D60, 0x1F73, 0x3F72, 0x3F72,
243    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
244    0x1550, 0x0000, 0x0000, 0x0000, 0x5F74, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
245    0x0000, 0x0000, 0x0000, 0x0000, 0x0360, 0x6F70, 0x0000, 0x0000, 0x6F70, 0x6F70, 0x0000, 0x0000,
246    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2F70, 0x0000, 0x4F70, 0x0000,
247    0x4F70, 0x0000, 0x4F70, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
248    0x0F70, 0x1770, 0x1770, 0x1770, 0x1770, 0x1770, 0x1770, 0x1770, 0x0000, 0x0000, 0x0000, 0x0000,
249    0x0000, 0x0000, 0x0000, 0x0000, 0x0550, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
250    0x7778, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3770, 0x5770, 0x0000, 0x0000,
251    0x0000, 0x0000, 0x0000, 0x0000, 0x5770, 0x5770, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
252    0x1D60, 0x0000, 0x2D6A, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x677A, 0x0000, 0x7B7A, 0x0000,
253    0x0000, 0x0000, 0x0000, 0x0000, 0x2770, 0x0770, 0x477B, 0x0770, 0x0000, 0x0000, 0x0000, 0x0000,
254    0x0770, 0x0770, 0x0770, 0x0770, 0x0000, 0x0000, 0x0000, 0x0000, 0x0D60, 0x0000, 0x0000, 0x0000,
255    0x3B70, 0x0000, 0x0000, 0x0000, 0x3B70, 0x0000, 0x0000, 0x0000, 0x3B70, 0x0000, 0x0000, 0x0000,
256    0x5B70, 0x1B70, 0x0000, 0x0000, 0x1B70, 0x1B70, 0x0000, 0x0000, 0x1B70, 0x1B70, 0x0000, 0x0000,
257    0x1B70, 0x1B70, 0x0000, 0x0000, 0x6B70, 0x0000, 0x4B74, 0x0000, 0x2B74, 0x0000, 0x2B74, 0x0000,
258    0x4B74, 0x0000, 0x4B74, 0x0000, 0x2B74, 0x0000, 0x2B74, 0x0000, 0x0B70, 0x3375, 0x5377, 0x3375,
259    0x7374, 0x7374, 0x7374, 0x7374, 0x137F, 0x3375, 0x5377, 0x3375, 0x7374, 0x7374, 0x7374, 0x7374,
260    0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
261    0x0000, 0x0000, 0x0000, 0x0000, 0x0A40, 0x0B61, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
262    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0240, 0x0000, 0x2362, 0x0000,
263    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
264    0x0E50, 0x1363, 0x3363, 0x7F73, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
265    0x0000, 0x0000, 0x0000, 0x0000, 0x1650, 0x0000, 0x0000, 0x0000, 0x3F74, 0x0000, 0x0000, 0x0000,
266    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0360, 0x3D61, 0x0000, 0x0000,
267    0x1F75, 0x3D61, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
268    0x1D60, 0x0000, 0x5F70, 0x0000, 0x5F70, 0x0000, 0x5F70, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
269    0x0000, 0x0000, 0x0000, 0x0000, 0x2D60, 0x1E65, 0x6F77, 0x1E65, 0x2F74, 0x2F74, 0x2F74, 0x2F74,
270    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0650, 0x0000, 0x0000, 0x0000,
271    0x0000, 0x0000, 0x0000, 0x0000, 0x4F78, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
272    0x0D60, 0x3560, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3560, 0x3560, 0x0000, 0x0000,
273    0x0000, 0x0000, 0x0000, 0x0000, 0x1560, 0x0000, 0x2562, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
274    0x0F7A, 0x0000, 0x2562, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0560, 0x777B, 0x196B, 0x177B,
275    0x0000, 0x0000, 0x0000, 0x0000, 0x3968, 0x3968, 0x3968, 0x3968, 0x0000, 0x0000, 0x0000, 0x0000,
276    0x2960, 0x0000, 0x0000, 0x0000, 0x0960, 0x0000, 0x0000, 0x0000, 0x0960, 0x0000, 0x0000, 0x0000,
277    0x0960, 0x0000, 0x0000, 0x0000, 0x3770, 0x3164, 0x0000, 0x0000, 0x5774, 0x5774, 0x0000, 0x0000,
278    0x3164, 0x3164, 0x0000, 0x0000, 0x5774, 0x5774, 0x0000, 0x0000, 0x6770, 0x0000, 0x6B7E, 0x0000,
279    0x2774, 0x0000, 0x2774, 0x0000, 0x477C, 0x0000, 0x477C, 0x0000, 0x2774, 0x0000, 0x2774, 0x0000,
280    0x1160, 0x3E6F, 0x216F, 0x7B77, 0x2B7F, 0x1B7F, 0x0776, 0x0776, 0x016F, 0x5B7A, 0x3B7F, 0x7B77,
281    0x5B7A, 0x5B7A, 0x0776, 0x0776, 0x0010, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
282    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0D50, 0x7F71, 0x0000, 0x0000,
283    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
284    0x1550, 0x0000, 0x3F72, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
285    0x0000, 0x0000, 0x0000, 0x0000, 0x5F70, 0x6F70, 0x6F70, 0x6F70, 0x0000, 0x0000, 0x0000, 0x0000,
286    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0940, 0x0000, 0x0000, 0x0000,
287    0x2364, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
288    0x3360, 0x1F70, 0x0000, 0x0000, 0x1F70, 0x1F70, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
289    0x0000, 0x0000, 0x0000, 0x0000, 0x1360, 0x0000, 0x2F70, 0x0000, 0x2F70, 0x0000, 0x2F70, 0x0000,
290    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4F70, 0x5770, 0x5770, 0x5770,
291    0x5770, 0x5770, 0x5770, 0x5770, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
292    0x0140, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0F78, 0x0000, 0x0000, 0x0000,
293    0x0000, 0x0000, 0x0000, 0x0000, 0x7770, 0x3770, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
294    0x3770, 0x3770, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1D60, 0x0000, 0x1770, 0x0000,
295    0x0000, 0x0000, 0x0000, 0x0000, 0x1770, 0x0000, 0x1770, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
296    0x6770, 0x6B70, 0x6B70, 0x6B70, 0x0000, 0x0000, 0x0000, 0x0000, 0x6B70, 0x6B70, 0x6B70, 0x6B70,
297    0x0000, 0x0000, 0x0000, 0x0000, 0x0550, 0x0000, 0x0000, 0x0000, 0x077C, 0x0000, 0x0000, 0x0000,
298    0x477C, 0x0000, 0x0000, 0x0000, 0x277C, 0x0000, 0x0000, 0x0000, 0x7B70, 0x3B70, 0x0000, 0x0000,
299    0x3B70, 0x3B70, 0x0000, 0x0000, 0x3B70, 0x3B70, 0x0000, 0x0000, 0x3B70, 0x3B70, 0x0000, 0x0000,
300    0x5B70, 0x0000, 0x1B72, 0x0000, 0x0362, 0x0000, 0x1B72, 0x0000, 0x0362, 0x0000, 0x1B72, 0x0000,
301    0x0362, 0x0000, 0x1B72, 0x0000, 0x2B70, 0x4B71, 0x0B73, 0x4B71, 0x3D63, 0x4B71, 0x0B73, 0x4B71,
302    0x3D63, 0x4B71, 0x0B73, 0x4B71, 0x3D63, 0x4B71, 0x0B73, 0x4B71, 0x0020, 0x0000, 0x0000, 0x0000,
303    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
304    0x1E50, 0x3B61, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
305    0x0000, 0x0000, 0x0000, 0x0000, 0x0A50, 0x0000, 0x3F72, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
306    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1B60, 0x0B60, 0x0B60, 0x0B60,
307    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
308    0x0240, 0x0000, 0x0000, 0x0000, 0x2B64, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
309    0x0000, 0x0000, 0x0000, 0x0000, 0x0E50, 0x7F75, 0x0000, 0x0000, 0x3364, 0x3364, 0x0000, 0x0000,
310    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1360, 0x0000, 0x6F70, 0x0000,
311    0x6F70, 0x0000, 0x6F70, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
312    0x2360, 0x1562, 0x5F72, 0x5F72, 0x1562, 0x1562, 0x5F72, 0x5F72, 0x0000, 0x0000, 0x0000, 0x0000,
313    0x0000, 0x0000, 0x0000, 0x0000, 0x1650, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
314    0x0368, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3D60, 0x1F70, 0x0000, 0x0000,
315    0x0000, 0x0000, 0x0000, 0x0000, 0x1F70, 0x1F70, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
316    0x1D60, 0x0000, 0x2D60, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2D60, 0x0000, 0x2D60, 0x0000,
317    0x0000, 0x0000, 0x0000, 0x0000, 0x0D60, 0x4F71, 0x3561, 0x4F71, 0x0000, 0x0000, 0x0000, 0x0000,
318    0x3561, 0x4F71, 0x3561, 0x4F71, 0x0000, 0x0000, 0x0000, 0x0000, 0x0650, 0x0000, 0x0000, 0x0000,
319    0x2564, 0x0000, 0x0000, 0x0000, 0x2F7C, 0x0000, 0x0000, 0x0000, 0x2564, 0x0000, 0x0000, 0x0000,
320    0x0560, 0x7771, 0x0000, 0x0000, 0x3965, 0x7771, 0x0000, 0x0000, 0x0F7D, 0x7771, 0x0000, 0x0000,
321    0x3965, 0x7771, 0x0000, 0x0000, 0x1960, 0x0000, 0x5772, 0x0000, 0x377E, 0x0000, 0x5772, 0x0000,
322    0x016A, 0x0000, 0x5772, 0x0000, 0x016A, 0x0000, 0x5772, 0x0000, 0x1A50, 0x296F, 0x216F, 0x077F,
323    0x316F, 0x677D, 0x2777, 0x677D, 0x116F, 0x1779, 0x477F, 0x1779, 0x096F, 0x1779, 0x2777, 0x1779,
324    0x0030, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
325    0x0000, 0x0000, 0x0000, 0x0000, 0x0240, 0x0361, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
326    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0C40, 0x0000, 0x3D62, 0x0000,
327    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
328    0x1D60, 0x7F73, 0x0D62, 0x0D62, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
329    0x0000, 0x0000, 0x0000, 0x0000, 0x0440, 0x0000, 0x0000, 0x0000, 0x2D64, 0x0000, 0x0000, 0x0000,
330    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0A50, 0x2F75, 0x0000, 0x0000,
331    0x3564, 0x3564, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
332    0x1560, 0x0000, 0x3F72, 0x0000, 0x5F76, 0x0000, 0x3F72, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
333    0x0000, 0x0000, 0x0000, 0x0000, 0x2560, 0x1F73, 0x2962, 0x2962, 0x6F77, 0x1F73, 0x2962, 0x2962,
334    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1650, 0x0000, 0x0000, 0x0000,
335    0x0000, 0x0000, 0x0000, 0x0000, 0x0568, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
336    0x3960, 0x1960, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1960, 0x1960, 0x0000, 0x0000,
337    0x0000, 0x0000, 0x0000, 0x0000, 0x0650, 0x0000, 0x096A, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
338    0x4F7A, 0x0000, 0x0F7A, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0E60, 0x477B, 0x777B, 0x3772,
339    0x0000, 0x0000, 0x0000, 0x0000, 0x577A, 0x577A, 0x3772, 0x3772, 0x0000, 0x0000, 0x0000, 0x0000,
340    0x1A50, 0x0000, 0x0000, 0x0000, 0x277C, 0x0000, 0x0000, 0x0000, 0x677C, 0x0000, 0x0000, 0x0000,
341    0x177C, 0x0000, 0x0000, 0x0000, 0x3160, 0x2B7D, 0x0000, 0x0000, 0x077D, 0x7B74, 0x0000, 0x0000,
342    0x3B7C, 0x3B7C, 0x0000, 0x0000, 0x7B74, 0x7B74, 0x0000, 0x0000, 0x1160, 0x0000, 0x337E, 0x0000,
343    0x5B7E, 0x0000, 0x1B74, 0x0000, 0x216E, 0x0000, 0x6B7E, 0x0000, 0x1B74, 0x0000, 0x1B74, 0x0000,
344    0x0160, 0x237F, 0x3E6F, 0x4B73, 0x2E6F, 0x137F, 0x0B77, 0x4B73, 0x1E6F, 0x537B, 0x737F, 0x4B73,
345    0x637F, 0x537B, 0x0B77, 0x4B73, 0x0440, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
346    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3360, 0x1361, 0x0000, 0x0000,
347    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
348    0x2360, 0x0000, 0x7F72, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
349    0x0000, 0x0000, 0x0000, 0x0000, 0x0360, 0x3F71, 0x6F73, 0x3F71, 0x0000, 0x0000, 0x0000, 0x0000,
350    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2D60, 0x0000, 0x0000, 0x0000,
351    0x5F74, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
352    0x1650, 0x3D61, 0x0000, 0x0000, 0x1F75, 0x3D61, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
353    0x0000, 0x0000, 0x0000, 0x0000, 0x1D60, 0x0000, 0x7770, 0x0000, 0x7770, 0x0000, 0x7770, 0x0000,
354    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0650, 0x0D67, 0x5777, 0x0F77,
355    0x2F77, 0x4F74, 0x4F74, 0x4F74, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
356    0x3560, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3778, 0x0000, 0x0000, 0x0000,
357    0x0000, 0x0000, 0x0000, 0x0000, 0x1560, 0x2770, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
358    0x2770, 0x2770, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2560, 0x0000, 0x2960, 0x0000,
359    0x0000, 0x0000, 0x0000, 0x0000, 0x2960, 0x0000, 0x2960, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
360    0x1A50, 0x177B, 0x0563, 0x6771, 0x0000, 0x0000, 0x0000, 0x0000, 0x7B7B, 0x6771, 0x0563, 0x6771,
361    0x0000, 0x0000, 0x0000, 0x0000, 0x3960, 0x0000, 0x0000, 0x0000, 0x1960, 0x0000, 0x0000, 0x0000,
362    0x1960, 0x0000, 0x0000, 0x0000, 0x1960, 0x0000, 0x0000, 0x0000, 0x0C50, 0x477D, 0x0000, 0x0000,
363    0x0965, 0x0771, 0x0000, 0x0000, 0x1B7D, 0x0771, 0x0000, 0x0000, 0x0965, 0x0771, 0x0000, 0x0000,
364    0x3160, 0x0000, 0x3B7E, 0x0000, 0x0B7E, 0x0000, 0x5B72, 0x0000, 0x3E6A, 0x0000, 0x5B72, 0x0000,
365    0x3E6A, 0x0000, 0x5B72, 0x0000, 0x0030, 0x025F, 0x0A5F, 0x116F, 0x1C5F, 0x2E6F, 0x2167, 0x2B7F,
366    0x125F, 0x1E6B, 0x016F, 0x4B7F, 0x0E6F, 0x1E6B, 0x2167, 0x6B7F,
367];
368
369pub(crate) const HT_UVLC_ENCODE_TABLE: [HtUvlcTableEntry; 75] = [
370    HtUvlcTableEntry {
371        pre: 0,
372        pre_len: 0,
373        suf: 0,
374        suf_len: 0,
375        ext: 0,
376        ext_len: 0,
377    },
378    HtUvlcTableEntry {
379        pre: 1,
380        pre_len: 1,
381        suf: 0,
382        suf_len: 0,
383        ext: 0,
384        ext_len: 0,
385    },
386    HtUvlcTableEntry {
387        pre: 2,
388        pre_len: 2,
389        suf: 0,
390        suf_len: 0,
391        ext: 0,
392        ext_len: 0,
393    },
394    HtUvlcTableEntry {
395        pre: 4,
396        pre_len: 3,
397        suf: 0,
398        suf_len: 1,
399        ext: 0,
400        ext_len: 0,
401    },
402    HtUvlcTableEntry {
403        pre: 4,
404        pre_len: 3,
405        suf: 1,
406        suf_len: 1,
407        ext: 0,
408        ext_len: 0,
409    },
410    HtUvlcTableEntry {
411        pre: 0,
412        pre_len: 3,
413        suf: 0,
414        suf_len: 5,
415        ext: 0,
416        ext_len: 0,
417    },
418    HtUvlcTableEntry {
419        pre: 0,
420        pre_len: 3,
421        suf: 1,
422        suf_len: 5,
423        ext: 0,
424        ext_len: 0,
425    },
426    HtUvlcTableEntry {
427        pre: 0,
428        pre_len: 3,
429        suf: 2,
430        suf_len: 5,
431        ext: 0,
432        ext_len: 0,
433    },
434    HtUvlcTableEntry {
435        pre: 0,
436        pre_len: 3,
437        suf: 3,
438        suf_len: 5,
439        ext: 0,
440        ext_len: 0,
441    },
442    HtUvlcTableEntry {
443        pre: 0,
444        pre_len: 3,
445        suf: 4,
446        suf_len: 5,
447        ext: 0,
448        ext_len: 0,
449    },
450    HtUvlcTableEntry {
451        pre: 0,
452        pre_len: 3,
453        suf: 5,
454        suf_len: 5,
455        ext: 0,
456        ext_len: 0,
457    },
458    HtUvlcTableEntry {
459        pre: 0,
460        pre_len: 3,
461        suf: 6,
462        suf_len: 5,
463        ext: 0,
464        ext_len: 0,
465    },
466    HtUvlcTableEntry {
467        pre: 0,
468        pre_len: 3,
469        suf: 7,
470        suf_len: 5,
471        ext: 0,
472        ext_len: 0,
473    },
474    HtUvlcTableEntry {
475        pre: 0,
476        pre_len: 3,
477        suf: 8,
478        suf_len: 5,
479        ext: 0,
480        ext_len: 0,
481    },
482    HtUvlcTableEntry {
483        pre: 0,
484        pre_len: 3,
485        suf: 9,
486        suf_len: 5,
487        ext: 0,
488        ext_len: 0,
489    },
490    HtUvlcTableEntry {
491        pre: 0,
492        pre_len: 3,
493        suf: 10,
494        suf_len: 5,
495        ext: 0,
496        ext_len: 0,
497    },
498    HtUvlcTableEntry {
499        pre: 0,
500        pre_len: 3,
501        suf: 11,
502        suf_len: 5,
503        ext: 0,
504        ext_len: 0,
505    },
506    HtUvlcTableEntry {
507        pre: 0,
508        pre_len: 3,
509        suf: 12,
510        suf_len: 5,
511        ext: 0,
512        ext_len: 0,
513    },
514    HtUvlcTableEntry {
515        pre: 0,
516        pre_len: 3,
517        suf: 13,
518        suf_len: 5,
519        ext: 0,
520        ext_len: 0,
521    },
522    HtUvlcTableEntry {
523        pre: 0,
524        pre_len: 3,
525        suf: 14,
526        suf_len: 5,
527        ext: 0,
528        ext_len: 0,
529    },
530    HtUvlcTableEntry {
531        pre: 0,
532        pre_len: 3,
533        suf: 15,
534        suf_len: 5,
535        ext: 0,
536        ext_len: 0,
537    },
538    HtUvlcTableEntry {
539        pre: 0,
540        pre_len: 3,
541        suf: 16,
542        suf_len: 5,
543        ext: 0,
544        ext_len: 0,
545    },
546    HtUvlcTableEntry {
547        pre: 0,
548        pre_len: 3,
549        suf: 17,
550        suf_len: 5,
551        ext: 0,
552        ext_len: 0,
553    },
554    HtUvlcTableEntry {
555        pre: 0,
556        pre_len: 3,
557        suf: 18,
558        suf_len: 5,
559        ext: 0,
560        ext_len: 0,
561    },
562    HtUvlcTableEntry {
563        pre: 0,
564        pre_len: 3,
565        suf: 19,
566        suf_len: 5,
567        ext: 0,
568        ext_len: 0,
569    },
570    HtUvlcTableEntry {
571        pre: 0,
572        pre_len: 3,
573        suf: 20,
574        suf_len: 5,
575        ext: 0,
576        ext_len: 0,
577    },
578    HtUvlcTableEntry {
579        pre: 0,
580        pre_len: 3,
581        suf: 21,
582        suf_len: 5,
583        ext: 0,
584        ext_len: 0,
585    },
586    HtUvlcTableEntry {
587        pre: 0,
588        pre_len: 3,
589        suf: 22,
590        suf_len: 5,
591        ext: 0,
592        ext_len: 0,
593    },
594    HtUvlcTableEntry {
595        pre: 0,
596        pre_len: 3,
597        suf: 23,
598        suf_len: 5,
599        ext: 0,
600        ext_len: 0,
601    },
602    HtUvlcTableEntry {
603        pre: 0,
604        pre_len: 3,
605        suf: 24,
606        suf_len: 5,
607        ext: 0,
608        ext_len: 0,
609    },
610    HtUvlcTableEntry {
611        pre: 0,
612        pre_len: 3,
613        suf: 25,
614        suf_len: 5,
615        ext: 0,
616        ext_len: 0,
617    },
618    HtUvlcTableEntry {
619        pre: 0,
620        pre_len: 3,
621        suf: 26,
622        suf_len: 5,
623        ext: 0,
624        ext_len: 0,
625    },
626    HtUvlcTableEntry {
627        pre: 0,
628        pre_len: 3,
629        suf: 27,
630        suf_len: 5,
631        ext: 0,
632        ext_len: 0,
633    },
634    HtUvlcTableEntry {
635        pre: 0,
636        pre_len: 3,
637        suf: 28,
638        suf_len: 5,
639        ext: 0,
640        ext_len: 4,
641    },
642    HtUvlcTableEntry {
643        pre: 0,
644        pre_len: 3,
645        suf: 29,
646        suf_len: 5,
647        ext: 0,
648        ext_len: 4,
649    },
650    HtUvlcTableEntry {
651        pre: 0,
652        pre_len: 3,
653        suf: 30,
654        suf_len: 5,
655        ext: 0,
656        ext_len: 4,
657    },
658    HtUvlcTableEntry {
659        pre: 0,
660        pre_len: 3,
661        suf: 31,
662        suf_len: 5,
663        ext: 0,
664        ext_len: 4,
665    },
666    HtUvlcTableEntry {
667        pre: 0,
668        pre_len: 3,
669        suf: 28,
670        suf_len: 5,
671        ext: 1,
672        ext_len: 4,
673    },
674    HtUvlcTableEntry {
675        pre: 0,
676        pre_len: 3,
677        suf: 29,
678        suf_len: 5,
679        ext: 1,
680        ext_len: 4,
681    },
682    HtUvlcTableEntry {
683        pre: 0,
684        pre_len: 3,
685        suf: 30,
686        suf_len: 5,
687        ext: 1,
688        ext_len: 4,
689    },
690    HtUvlcTableEntry {
691        pre: 0,
692        pre_len: 3,
693        suf: 31,
694        suf_len: 5,
695        ext: 1,
696        ext_len: 4,
697    },
698    HtUvlcTableEntry {
699        pre: 0,
700        pre_len: 3,
701        suf: 28,
702        suf_len: 5,
703        ext: 2,
704        ext_len: 4,
705    },
706    HtUvlcTableEntry {
707        pre: 0,
708        pre_len: 3,
709        suf: 29,
710        suf_len: 5,
711        ext: 2,
712        ext_len: 4,
713    },
714    HtUvlcTableEntry {
715        pre: 0,
716        pre_len: 3,
717        suf: 30,
718        suf_len: 5,
719        ext: 2,
720        ext_len: 4,
721    },
722    HtUvlcTableEntry {
723        pre: 0,
724        pre_len: 3,
725        suf: 31,
726        suf_len: 5,
727        ext: 2,
728        ext_len: 4,
729    },
730    HtUvlcTableEntry {
731        pre: 0,
732        pre_len: 3,
733        suf: 28,
734        suf_len: 5,
735        ext: 3,
736        ext_len: 4,
737    },
738    HtUvlcTableEntry {
739        pre: 0,
740        pre_len: 3,
741        suf: 29,
742        suf_len: 5,
743        ext: 3,
744        ext_len: 4,
745    },
746    HtUvlcTableEntry {
747        pre: 0,
748        pre_len: 3,
749        suf: 30,
750        suf_len: 5,
751        ext: 3,
752        ext_len: 4,
753    },
754    HtUvlcTableEntry {
755        pre: 0,
756        pre_len: 3,
757        suf: 31,
758        suf_len: 5,
759        ext: 3,
760        ext_len: 4,
761    },
762    HtUvlcTableEntry {
763        pre: 0,
764        pre_len: 3,
765        suf: 28,
766        suf_len: 5,
767        ext: 4,
768        ext_len: 4,
769    },
770    HtUvlcTableEntry {
771        pre: 0,
772        pre_len: 3,
773        suf: 29,
774        suf_len: 5,
775        ext: 4,
776        ext_len: 4,
777    },
778    HtUvlcTableEntry {
779        pre: 0,
780        pre_len: 3,
781        suf: 30,
782        suf_len: 5,
783        ext: 4,
784        ext_len: 4,
785    },
786    HtUvlcTableEntry {
787        pre: 0,
788        pre_len: 3,
789        suf: 31,
790        suf_len: 5,
791        ext: 4,
792        ext_len: 4,
793    },
794    HtUvlcTableEntry {
795        pre: 0,
796        pre_len: 3,
797        suf: 28,
798        suf_len: 5,
799        ext: 5,
800        ext_len: 4,
801    },
802    HtUvlcTableEntry {
803        pre: 0,
804        pre_len: 3,
805        suf: 29,
806        suf_len: 5,
807        ext: 5,
808        ext_len: 4,
809    },
810    HtUvlcTableEntry {
811        pre: 0,
812        pre_len: 3,
813        suf: 30,
814        suf_len: 5,
815        ext: 5,
816        ext_len: 4,
817    },
818    HtUvlcTableEntry {
819        pre: 0,
820        pre_len: 3,
821        suf: 31,
822        suf_len: 5,
823        ext: 5,
824        ext_len: 4,
825    },
826    HtUvlcTableEntry {
827        pre: 0,
828        pre_len: 3,
829        suf: 28,
830        suf_len: 5,
831        ext: 6,
832        ext_len: 4,
833    },
834    HtUvlcTableEntry {
835        pre: 0,
836        pre_len: 3,
837        suf: 29,
838        suf_len: 5,
839        ext: 6,
840        ext_len: 4,
841    },
842    HtUvlcTableEntry {
843        pre: 0,
844        pre_len: 3,
845        suf: 30,
846        suf_len: 5,
847        ext: 6,
848        ext_len: 4,
849    },
850    HtUvlcTableEntry {
851        pre: 0,
852        pre_len: 3,
853        suf: 31,
854        suf_len: 5,
855        ext: 6,
856        ext_len: 4,
857    },
858    HtUvlcTableEntry {
859        pre: 0,
860        pre_len: 3,
861        suf: 28,
862        suf_len: 5,
863        ext: 7,
864        ext_len: 4,
865    },
866    HtUvlcTableEntry {
867        pre: 0,
868        pre_len: 3,
869        suf: 29,
870        suf_len: 5,
871        ext: 7,
872        ext_len: 4,
873    },
874    HtUvlcTableEntry {
875        pre: 0,
876        pre_len: 3,
877        suf: 30,
878        suf_len: 5,
879        ext: 7,
880        ext_len: 4,
881    },
882    HtUvlcTableEntry {
883        pre: 0,
884        pre_len: 3,
885        suf: 31,
886        suf_len: 5,
887        ext: 7,
888        ext_len: 4,
889    },
890    HtUvlcTableEntry {
891        pre: 0,
892        pre_len: 3,
893        suf: 28,
894        suf_len: 5,
895        ext: 8,
896        ext_len: 4,
897    },
898    HtUvlcTableEntry {
899        pre: 0,
900        pre_len: 3,
901        suf: 29,
902        suf_len: 5,
903        ext: 8,
904        ext_len: 4,
905    },
906    HtUvlcTableEntry {
907        pre: 0,
908        pre_len: 3,
909        suf: 30,
910        suf_len: 5,
911        ext: 8,
912        ext_len: 4,
913    },
914    HtUvlcTableEntry {
915        pre: 0,
916        pre_len: 3,
917        suf: 31,
918        suf_len: 5,
919        ext: 8,
920        ext_len: 4,
921    },
922    HtUvlcTableEntry {
923        pre: 0,
924        pre_len: 3,
925        suf: 28,
926        suf_len: 5,
927        ext: 9,
928        ext_len: 4,
929    },
930    HtUvlcTableEntry {
931        pre: 0,
932        pre_len: 3,
933        suf: 29,
934        suf_len: 5,
935        ext: 9,
936        ext_len: 4,
937    },
938    HtUvlcTableEntry {
939        pre: 0,
940        pre_len: 3,
941        suf: 30,
942        suf_len: 5,
943        ext: 9,
944        ext_len: 4,
945    },
946    HtUvlcTableEntry {
947        pre: 0,
948        pre_len: 3,
949        suf: 31,
950        suf_len: 5,
951        ext: 9,
952        ext_len: 4,
953    },
954    HtUvlcTableEntry {
955        pre: 0,
956        pre_len: 3,
957        suf: 28,
958        suf_len: 5,
959        ext: 10,
960        ext_len: 4,
961    },
962    HtUvlcTableEntry {
963        pre: 0,
964        pre_len: 3,
965        suf: 29,
966        suf_len: 5,
967        ext: 10,
968        ext_len: 4,
969    },
970];
971
972const fn pack_ht_uvlc_encode_table(table: &[HtUvlcTableEntry; 75]) -> [u8; 75 * 6] {
973    let mut bytes = [0u8; 75 * 6];
974    let mut index = 0;
975    while index < 75 {
976        let offset = index * 6;
977        let entry = table[index];
978        bytes[offset] = entry.pre;
979        bytes[offset + 1] = entry.pre_len;
980        bytes[offset + 2] = entry.suf;
981        bytes[offset + 3] = entry.suf_len;
982        bytes[offset + 4] = entry.ext;
983        bytes[offset + 5] = entry.ext_len;
984        index += 1;
985    }
986    bytes
987}
988
989pub(crate) const HT_UVLC_ENCODE_TABLE_BYTES: [u8; 75 * 6] =
990    pack_ht_uvlc_encode_table(&HT_UVLC_ENCODE_TABLE);