• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2023 gRPC authors.
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 //     http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14 
15 // This file is autogenerated: see
16 // tools/codegen/core/gen_huffman_decompressor.cc
17 
18 #include "test/cpp/microbenchmarks/huffman_geometries/decode_huff_10_11_9.h"
19 
20 #include <grpc/support/port_platform.h>
21 namespace grpc_core {
22 namespace geometry_10_11_9 {
23 const uint8_t HuffDecoderCommon::table2_0_emit_[10] = {
24     0x30, 0x31, 0x32, 0x61, 0x63, 0x65, 0x69, 0x6f, 0x73, 0x74};
25 const uint8_t HuffDecoderCommon::table2_0_ops_[32] = {
26     0x00, 0x04, 0x08, 0x0c, 0x10, 0x14, 0x18, 0x1c, 0x20, 0x24, 0x01,
27     0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
28     0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02};
29 const uint8_t HuffDecoderCommon::table3_0_emit_[36] = {
30     0x30, 0x31, 0x32, 0x61, 0x63, 0x65, 0x69, 0x6f, 0x73, 0x74, 0x20, 0x25,
31     0x2d, 0x2e, 0x2f, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3d, 0x41,
32     0x5f, 0x62, 0x64, 0x66, 0x67, 0x68, 0x6c, 0x6d, 0x6e, 0x70, 0x72, 0x75};
33 const uint8_t HuffDecoderCommon::table3_0_ops_[64] = {
34     0x00, 0x01, 0x00, 0x05, 0x00, 0x09, 0x00, 0x0d, 0x00, 0x11, 0x00,
35     0x15, 0x00, 0x19, 0x00, 0x1d, 0x00, 0x21, 0x00, 0x25, 0x29, 0x2d,
36     0x31, 0x35, 0x39, 0x3d, 0x41, 0x45, 0x49, 0x4d, 0x51, 0x55, 0x59,
37     0x5d, 0x61, 0x65, 0x69, 0x6d, 0x71, 0x75, 0x79, 0x7d, 0x81, 0x85,
38     0x89, 0x8d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
39     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02};
40 const uint8_t HuffDecoderCommon::table4_0_emit_[22] = {
41     0x30, 0x31, 0x32, 0x61, 0x63, 0x65, 0x69, 0x6f, 0x73, 0x74, 0x20,
42     0x25, 0x2d, 0x2e, 0x2f, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39};
43 const uint8_t HuffDecoderCommon::table4_0_ops_[64] = {
44     0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
45     0x09, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00,
46     0x00, 0x15, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, 0x1d, 0x00,
47     0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x25, 0x00, 0x29, 0x00, 0x2d,
48     0x00, 0x31, 0x00, 0x35, 0x00, 0x39, 0x00, 0x3d, 0x00, 0x41, 0x00,
49     0x45, 0x00, 0x49, 0x00, 0x4d, 0x00, 0x51, 0x00, 0x55};
50 const uint8_t HuffDecoderCommon::table4_1_emit_[46] = {
51     0x3d, 0x41, 0x5f, 0x62, 0x64, 0x66, 0x67, 0x68, 0x6c, 0x6d, 0x6e, 0x70,
52     0x72, 0x75, 0x3a, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a,
53     0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56,
54     0x57, 0x59, 0x6a, 0x6b, 0x71, 0x76, 0x77, 0x78, 0x79, 0x7a};
55 const uint8_t HuffDecoderCommon::table4_1_ops_[64] = {
56     0x00, 0x01, 0x00, 0x05, 0x00, 0x09, 0x00, 0x0d, 0x00, 0x11, 0x00,
57     0x15, 0x00, 0x19, 0x00, 0x1d, 0x00, 0x21, 0x00, 0x25, 0x00, 0x29,
58     0x00, 0x2d, 0x00, 0x31, 0x00, 0x35, 0x39, 0x3d, 0x41, 0x45, 0x49,
59     0x4d, 0x51, 0x55, 0x59, 0x5d, 0x61, 0x65, 0x69, 0x6d, 0x71, 0x75,
60     0x79, 0x7d, 0x81, 0x85, 0x89, 0x8d, 0x91, 0x95, 0x99, 0x9d, 0xa1,
61     0xa5, 0xa9, 0xad, 0xb1, 0xb5, 0x00, 0x00, 0x00, 0x02};
62 const uint8_t* const HuffDecoderCommon::table4_emit_[2] = {
63     table4_0_emit_,
64     table4_1_emit_,
65 };
66 const uint8_t* const HuffDecoderCommon::table4_ops_[2] = {
67     table4_0_ops_,
68     table4_1_ops_,
69 };
70 const uint8_t HuffDecoderCommon::table5_0_ops_[128] = {
71     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
72     0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09,
73     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00,
74     0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x15,
75     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, 0x00,
76     0x00, 0x00, 0x00, 0x1d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21,
77     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x29,
78     0x00, 0x00, 0x00, 0x2d, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00, 0x35,
79     0x00, 0x00, 0x00, 0x39, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x00, 0x00, 0x41,
80     0x00, 0x00, 0x00, 0x45, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x4d,
81     0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0x00, 0x55};
82 const uint8_t HuffDecoderCommon::table5_1_emit_[52] = {
83     0x3d, 0x41, 0x5f, 0x62, 0x64, 0x66, 0x67, 0x68, 0x6c, 0x6d, 0x6e,
84     0x70, 0x72, 0x75, 0x3a, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48,
85     0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53,
86     0x54, 0x55, 0x56, 0x57, 0x59, 0x6a, 0x6b, 0x71, 0x76, 0x77, 0x78,
87     0x79, 0x7a, 0x26, 0x2a, 0x2c, 0x3b, 0x58, 0x5a};
88 const uint8_t HuffDecoderCommon::table5_1_ops_[128] = {
89     0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x09,
90     0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x15,
91     0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, 0x1d, 0x00, 0x00, 0x00, 0x21,
92     0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00, 0x2d,
93     0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00, 0x35, 0x00, 0x39, 0x00, 0x3d,
94     0x00, 0x41, 0x00, 0x45, 0x00, 0x49, 0x00, 0x4d, 0x00, 0x51, 0x00, 0x55,
95     0x00, 0x59, 0x00, 0x5d, 0x00, 0x61, 0x00, 0x65, 0x00, 0x69, 0x00, 0x6d,
96     0x00, 0x71, 0x00, 0x75, 0x00, 0x79, 0x00, 0x7d, 0x00, 0x81, 0x00, 0x85,
97     0x00, 0x89, 0x00, 0x8d, 0x00, 0x91, 0x00, 0x95, 0x00, 0x99, 0x00, 0x9d,
98     0x00, 0xa1, 0x00, 0xa5, 0x00, 0xa9, 0x00, 0xad, 0x00, 0xb1, 0x00, 0xb5,
99     0xb9, 0xbd, 0xc1, 0xc5, 0xc9, 0xcd, 0x00, 0x02};
100 const uint8_t* const HuffDecoderCommon::table5_emit_[2] = {
101     table4_0_emit_,
102     table5_1_emit_,
103 };
104 const uint8_t* const HuffDecoderCommon::table5_ops_[2] = {
105     table5_0_ops_,
106     table5_1_ops_,
107 };
108 const uint8_t HuffDecoderCommon::table6_0_emit_[2] = {0x30, 0x31};
109 const uint8_t HuffDecoderCommon::table6_0_ops_[32] = {
110     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
111     0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
112     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05};
113 const uint8_t HuffDecoderCommon::table6_1_emit_[2] = {0x32, 0x61};
114 const uint8_t HuffDecoderCommon::table6_2_emit_[2] = {0x63, 0x65};
115 const uint8_t HuffDecoderCommon::table6_3_emit_[2] = {0x69, 0x6f};
116 const uint8_t HuffDecoderCommon::table6_4_emit_[2] = {0x73, 0x74};
117 const uint8_t HuffDecoderCommon::table6_5_emit_[4] = {0x20, 0x25, 0x2d, 0x2e};
118 const uint8_t HuffDecoderCommon::table6_5_ops_[32] = {
119     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
120     0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
121     0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d};
122 const uint8_t HuffDecoderCommon::table6_6_emit_[4] = {0x2f, 0x33, 0x34, 0x35};
123 const uint8_t HuffDecoderCommon::table6_7_emit_[4] = {0x36, 0x37, 0x38, 0x39};
124 const uint8_t HuffDecoderCommon::table6_8_emit_[4] = {0x3d, 0x41, 0x5f, 0x62};
125 const uint8_t HuffDecoderCommon::table6_9_emit_[4] = {0x64, 0x66, 0x67, 0x68};
126 const uint8_t HuffDecoderCommon::table6_10_emit_[4] = {0x6c, 0x6d, 0x6e, 0x70};
127 const uint8_t HuffDecoderCommon::table6_11_emit_[6] = {0x72, 0x75, 0x3a,
128                                                        0x42, 0x43, 0x44};
129 const uint8_t HuffDecoderCommon::table6_11_ops_[32] = {
130     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
131     0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00,
132     0x00, 0x0d, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x15};
133 const uint8_t HuffDecoderCommon::table6_12_emit_[8] = {0x45, 0x46, 0x47, 0x48,
134                                                        0x49, 0x4a, 0x4b, 0x4c};
135 const uint8_t HuffDecoderCommon::table6_12_ops_[32] = {
136     0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
137     0x09, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00,
138     0x00, 0x15, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, 0x1d};
139 const uint8_t HuffDecoderCommon::table6_13_emit_[8] = {0x4d, 0x4e, 0x4f, 0x50,
140                                                        0x51, 0x52, 0x53, 0x54};
141 const uint8_t HuffDecoderCommon::table6_14_emit_[8] = {0x55, 0x56, 0x57, 0x59,
142                                                        0x6a, 0x6b, 0x71, 0x76};
143 const uint8_t HuffDecoderCommon::table6_15_emit_[10] = {
144     0x77, 0x78, 0x79, 0x7a, 0x26, 0x2a, 0x2c, 0x3b, 0x58, 0x5a};
145 const uint8_t HuffDecoderCommon::table6_15_ops_[32] = {
146     0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
147     0x09, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x11, 0x00, 0x15, 0x00, 0x19,
148     0x00, 0x1d, 0x00, 0x21, 0x00, 0x25, 0x00, 0x00, 0x00, 0x02};
149 const uint8_t* const HuffDecoderCommon::table6_emit_[16] = {
150     table6_0_emit_,  table6_1_emit_,  table6_2_emit_,  table6_3_emit_,
151     table6_4_emit_,  table6_5_emit_,  table6_6_emit_,  table6_7_emit_,
152     table6_8_emit_,  table6_9_emit_,  table6_10_emit_, table6_11_emit_,
153     table6_12_emit_, table6_13_emit_, table6_14_emit_, table6_15_emit_,
154 };
155 const uint8_t* const HuffDecoderCommon::table6_ops_[16] = {
156     table6_0_ops_,  table6_0_ops_,  table6_0_ops_,  table6_0_ops_,
157     table6_0_ops_,  table6_5_ops_,  table6_5_ops_,  table6_5_ops_,
158     table6_5_ops_,  table6_5_ops_,  table6_5_ops_,  table6_11_ops_,
159     table6_12_ops_, table6_12_ops_, table6_12_ops_, table6_15_ops_,
160 };
161 const uint8_t HuffDecoderCommon::table1_0_emit_[36] = {
162     0x30, 0x30, 0x31, 0x30, 0x32, 0x30, 0x61, 0x30, 0x63, 0x30, 0x65, 0x30,
163     0x69, 0x30, 0x6f, 0x30, 0x73, 0x30, 0x74, 0x31, 0x31, 0x32, 0x31, 0x61,
164     0x31, 0x63, 0x31, 0x65, 0x31, 0x69, 0x31, 0x6f, 0x31, 0x73, 0x31, 0x74};
165 const uint16_t HuffDecoderCommon::table1_0_inner_[22] = {
166     0x000a, 0x008a, 0x018a, 0x028a, 0x038a, 0x048a, 0x058a, 0x068a,
167     0x078a, 0x088a, 0x0015, 0x010a, 0x098a, 0x0a0a, 0x0b0a, 0x0c0a,
168     0x0d0a, 0x0e0a, 0x0f0a, 0x100a, 0x110a, 0x0115};
169 const uint8_t HuffDecoderCommon::table1_0_outer_[64] = {
170     0,  1,  2,  3,  4,  5,  6,  7,  8,  9,  10, 10, 10, 10, 10, 10,
171     10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
172     11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 21, 21, 21, 21, 21,
173     21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21};
174 const uint8_t HuffDecoderCommon::table1_1_emit_[36] = {
175     0x32, 0x30, 0x32, 0x31, 0x32, 0x32, 0x61, 0x32, 0x63, 0x32, 0x65, 0x32,
176     0x69, 0x32, 0x6f, 0x32, 0x73, 0x32, 0x74, 0x61, 0x30, 0x61, 0x31, 0x61,
177     0x61, 0x63, 0x61, 0x65, 0x61, 0x69, 0x61, 0x6f, 0x61, 0x73, 0x61, 0x74};
178 const uint16_t HuffDecoderCommon::table1_1_inner_[22] = {
179     0x000a, 0x010a, 0x020a, 0x028a, 0x038a, 0x048a, 0x058a, 0x068a,
180     0x078a, 0x088a, 0x0015, 0x098a, 0x0a8a, 0x030a, 0x0b8a, 0x0c0a,
181     0x0d0a, 0x0e0a, 0x0f0a, 0x100a, 0x110a, 0x0315};
182 const uint8_t HuffDecoderCommon::table1_2_emit_[36] = {
183     0x63, 0x30, 0x63, 0x31, 0x63, 0x32, 0x63, 0x61, 0x63, 0x63, 0x65, 0x63,
184     0x69, 0x63, 0x6f, 0x63, 0x73, 0x63, 0x74, 0x65, 0x30, 0x65, 0x31, 0x65,
185     0x32, 0x65, 0x61, 0x65, 0x65, 0x69, 0x65, 0x6f, 0x65, 0x73, 0x65, 0x74};
186 const uint16_t HuffDecoderCommon::table1_2_inner_[22] = {
187     0x000a, 0x010a, 0x020a, 0x030a, 0x040a, 0x048a, 0x058a, 0x068a,
188     0x078a, 0x088a, 0x0015, 0x098a, 0x0a8a, 0x0b8a, 0x0c8a, 0x050a,
189     0x0d8a, 0x0e0a, 0x0f0a, 0x100a, 0x110a, 0x0515};
190 const uint8_t HuffDecoderCommon::table1_3_emit_[36] = {
191     0x69, 0x30, 0x69, 0x31, 0x69, 0x32, 0x69, 0x61, 0x69, 0x63, 0x69, 0x65,
192     0x69, 0x69, 0x6f, 0x69, 0x73, 0x69, 0x74, 0x6f, 0x30, 0x6f, 0x31, 0x6f,
193     0x32, 0x6f, 0x61, 0x6f, 0x63, 0x6f, 0x65, 0x6f, 0x6f, 0x73, 0x6f, 0x74};
194 const uint16_t HuffDecoderCommon::table1_3_inner_[22] = {
195     0x000a, 0x010a, 0x020a, 0x030a, 0x040a, 0x050a, 0x060a, 0x068a,
196     0x078a, 0x088a, 0x0015, 0x098a, 0x0a8a, 0x0b8a, 0x0c8a, 0x0d8a,
197     0x0e8a, 0x070a, 0x0f8a, 0x100a, 0x110a, 0x0715};
198 const uint8_t HuffDecoderCommon::table1_4_emit_[38] = {
199     0x73, 0x30, 0x73, 0x31, 0x73, 0x32, 0x73, 0x61, 0x73, 0x63,
200     0x73, 0x65, 0x73, 0x69, 0x73, 0x6f, 0x73, 0x73, 0x74, 0x30,
201     0x74, 0x31, 0x74, 0x32, 0x74, 0x61, 0x74, 0x63, 0x74, 0x65,
202     0x74, 0x69, 0x74, 0x6f, 0x74, 0x73, 0x74, 0x74};
203 const uint16_t HuffDecoderCommon::table1_4_inner_[22] = {
204     0x000a, 0x010a, 0x020a, 0x030a, 0x040a, 0x050a, 0x060a, 0x070a,
205     0x080a, 0x088a, 0x0015, 0x090a, 0x0a0a, 0x0b0a, 0x0c0a, 0x0d0a,
206     0x0e0a, 0x0f0a, 0x100a, 0x110a, 0x120a, 0x0915};
207 const uint16_t HuffDecoderCommon::table1_5_inner_[4] = {0x0016, 0x0096, 0x0116,
208                                                         0x0196};
209 const uint8_t HuffDecoderCommon::table1_5_outer_[64] = {
210     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1,
211     1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
212     2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3};
213 const uint16_t HuffDecoderCommon::table1_11_inner_[6] = {
214     0x0016, 0x0096, 0x0117, 0x0197, 0x0217, 0x0297};
215 const uint8_t HuffDecoderCommon::table1_11_outer_[64] = {
216     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1,
217     1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3,
218     3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5};
219 const uint16_t HuffDecoderCommon::table1_12_inner_[8] = {
220     0x0017, 0x0097, 0x0117, 0x0197, 0x0217, 0x0297, 0x0317, 0x0397};
221 const uint8_t HuffDecoderCommon::table1_12_outer_[64] = {
222     0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2,
223     2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5,
224     5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7};
225 const uint8_t HuffDecoderCommon::table1_15_emit_[15] = {
226     0x77, 0x78, 0x79, 0x7a, 0x26, 0x2a, 0x2c, 0x3b,
227     0x58, 0x5a, 0x21, 0x22, 0x28, 0x29, 0x3f};
228 const uint16_t HuffDecoderCommon::table1_15_inner_[18] = {
229     0x0017, 0x0097, 0x0117, 0x0197, 0x0218, 0x0298, 0x0318, 0x0398, 0x0418,
230     0x0498, 0x051a, 0x059a, 0x061a, 0x069a, 0x071a, 0x002a, 0x003a, 0x004a};
231 const uint8_t HuffDecoderCommon::table1_15_outer_[64] = {
232     0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1,  1,  1,  1,  2,  2,  2,  2, 2, 2,
233     2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4,  4,  5,  5,  5,  5,  6,  6, 6, 6,
234     7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 10, 11, 12, 13, 14, 15, 16, 17};
235 const uint8_t* const HuffDecoderCommon::table1_emit_[16] = {
236     table1_0_emit_,  table1_1_emit_,  table1_2_emit_,  table1_3_emit_,
237     table1_4_emit_,  table6_5_emit_,  table6_6_emit_,  table6_7_emit_,
238     table6_8_emit_,  table6_9_emit_,  table6_10_emit_, table6_11_emit_,
239     table6_12_emit_, table6_13_emit_, table6_14_emit_, table1_15_emit_,
240 };
241 const uint16_t* const HuffDecoderCommon::table1_inner_[16] = {
242     table1_0_inner_,  table1_1_inner_,  table1_2_inner_,  table1_3_inner_,
243     table1_4_inner_,  table1_5_inner_,  table1_5_inner_,  table1_5_inner_,
244     table1_5_inner_,  table1_5_inner_,  table1_5_inner_,  table1_11_inner_,
245     table1_12_inner_, table1_12_inner_, table1_12_inner_, table1_15_inner_,
246 };
247 const uint8_t* const HuffDecoderCommon::table1_outer_[16] = {
248     table1_0_outer_,  table1_0_outer_,  table1_0_outer_,  table1_0_outer_,
249     table1_0_outer_,  table1_5_outer_,  table1_5_outer_,  table1_5_outer_,
250     table1_5_outer_,  table1_5_outer_,  table1_5_outer_,  table1_11_outer_,
251     table1_12_outer_, table1_12_outer_, table1_12_outer_, table1_15_outer_,
252 };
253 const uint8_t HuffDecoderCommon::table9_0_emit_[6] = {0x00, 0x24, 0x40,
254                                                       0x5b, 0x5d, 0x7e};
255 const uint8_t HuffDecoderCommon::table9_0_inner_[8] = {0x00, 0x04, 0x08, 0x0c,
256                                                        0x10, 0x14, 0x01, 0x02};
257 const uint8_t HuffDecoderCommon::table10_0_emit_[8] = {0x00, 0x24, 0x40, 0x5b,
258                                                        0x5d, 0x7e, 0x5e, 0x7d};
259 const uint8_t HuffDecoderCommon::table10_0_inner_[10] = {
260     0x00, 0x01, 0x05, 0x09, 0x0d, 0x11, 0x15, 0x19, 0x1d, 0x02};
261 const uint8_t HuffDecoderCommon::table10_0_outer_[16] = {
262     0, 1, 0, 2, 0, 3, 0, 4, 0, 5, 0, 6, 7, 8, 0, 9};
263 const uint8_t HuffDecoderCommon::table11_0_emit_[11] = {
264     0x00, 0x24, 0x40, 0x5b, 0x5d, 0x7e, 0x5e, 0x7d, 0x3c, 0x60, 0x7b};
265 const uint8_t HuffDecoderCommon::table11_0_ops_[32] = {
266     0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
267     0x09, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00,
268     0x00, 0x15, 0x00, 0x19, 0x00, 0x1d, 0x21, 0x25, 0x29, 0x02};
269 const uint8_t HuffDecoderCommon::table12_0_ops_[64] = {
270     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
271     0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
272     0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x00,
273     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00,
274     0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
275     0x1d, 0x00, 0x21, 0x00, 0x25, 0x00, 0x29, 0x00, 0x02};
276 const uint8_t HuffDecoderCommon::table13_0_ops_[128] = {
277     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
278     0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
279     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00,
280     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09,
281     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
282     0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
283     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00,
284     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x15,
285     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, 0x00,
286     0x00, 0x00, 0x00, 0x1d, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x25,
287     0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00, 0x02};
288 const uint8_t HuffDecoderCommon::table14_0_emit_[40] = {
289     0x00, 0x30, 0x00, 0x31, 0x00, 0x32, 0x00, 0x61, 0x00, 0x63,
290     0x00, 0x65, 0x00, 0x69, 0x00, 0x6f, 0x00, 0x73, 0x00, 0x74,
291     0x24, 0x30, 0x24, 0x31, 0x24, 0x32, 0x24, 0x61, 0x24, 0x63,
292     0x24, 0x65, 0x24, 0x69, 0x24, 0x6f, 0x24, 0x73, 0x24, 0x74};
293 const uint8_t HuffDecoderCommon::table14_0_ops_[64] = {
294     0x00, 0x08, 0x10, 0x18, 0x20, 0x28, 0x30, 0x38, 0x40, 0x48, 0x01,
295     0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
296     0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x50,
297     0x58, 0x60, 0x68, 0x70, 0x78, 0x80, 0x88, 0x90, 0x98, 0x01, 0x01,
298     0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
299     0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x52};
300 const uint8_t HuffDecoderCommon::table14_1_emit_[40] = {
301     0x40, 0x30, 0x40, 0x31, 0x40, 0x32, 0x40, 0x61, 0x40, 0x63,
302     0x40, 0x65, 0x40, 0x69, 0x40, 0x6f, 0x40, 0x73, 0x40, 0x74,
303     0x5b, 0x30, 0x5b, 0x31, 0x5b, 0x32, 0x5b, 0x61, 0x5b, 0x63,
304     0x5b, 0x65, 0x5b, 0x69, 0x5b, 0x6f, 0x5b, 0x73, 0x5b, 0x74};
305 const uint8_t HuffDecoderCommon::table14_2_emit_[40] = {
306     0x5d, 0x30, 0x5d, 0x31, 0x5d, 0x32, 0x5d, 0x61, 0x5d, 0x63,
307     0x5d, 0x65, 0x5d, 0x69, 0x5d, 0x6f, 0x5d, 0x73, 0x5d, 0x74,
308     0x7e, 0x30, 0x7e, 0x31, 0x7e, 0x32, 0x7e, 0x61, 0x7e, 0x63,
309     0x7e, 0x65, 0x7e, 0x69, 0x7e, 0x6f, 0x7e, 0x73, 0x7e, 0x74};
310 const uint8_t HuffDecoderCommon::table14_3_emit_[5] = {0x5e, 0x7d, 0x3c, 0x60,
311                                                        0x7b};
312 const uint8_t HuffDecoderCommon::table14_3_ops_[64] = {
313     0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
314     0x01, 0x01, 0x01, 0x01, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
315     0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x06, 0x01,
316     0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x0a, 0x01, 0x01, 0x01, 0x01,
317     0x01, 0x01, 0x01, 0x0e, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
318     0x12, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x03};
319 const uint8_t* const HuffDecoderCommon::table14_emit_[4] = {
320     table14_0_emit_,
321     table14_1_emit_,
322     table14_2_emit_,
323     table14_3_emit_,
324 };
325 const uint8_t* const HuffDecoderCommon::table14_ops_[4] = {
326     table14_0_ops_,
327     table14_0_ops_,
328     table14_0_ops_,
329     table14_3_ops_,
330 };
331 const uint8_t HuffDecoderCommon::table15_0_emit_[72] = {
332     0x00, 0x30, 0x00, 0x31, 0x00, 0x32, 0x00, 0x61, 0x00, 0x63, 0x00, 0x65,
333     0x00, 0x69, 0x00, 0x6f, 0x00, 0x73, 0x00, 0x74, 0x00, 0x20, 0x00, 0x25,
334     0x00, 0x2d, 0x00, 0x2e, 0x00, 0x2f, 0x00, 0x33, 0x00, 0x34, 0x00, 0x35,
335     0x00, 0x36, 0x00, 0x37, 0x00, 0x38, 0x00, 0x39, 0x00, 0x3d, 0x00, 0x41,
336     0x00, 0x5f, 0x00, 0x62, 0x00, 0x64, 0x00, 0x66, 0x00, 0x67, 0x00, 0x68,
337     0x00, 0x6c, 0x00, 0x6d, 0x00, 0x6e, 0x00, 0x70, 0x00, 0x72, 0x00, 0x75};
338 const uint16_t HuffDecoderCommon::table15_0_ops_[64] = {
339     0x0000, 0x0001, 0x0000, 0x0009, 0x0000, 0x0011, 0x0000, 0x0019,
340     0x0000, 0x0021, 0x0000, 0x0029, 0x0000, 0x0031, 0x0000, 0x0039,
341     0x0000, 0x0041, 0x0000, 0x0049, 0x0051, 0x0059, 0x0061, 0x0069,
342     0x0071, 0x0079, 0x0081, 0x0089, 0x0091, 0x0099, 0x00a1, 0x00a9,
343     0x00b1, 0x00b9, 0x00c1, 0x00c9, 0x00d1, 0x00d9, 0x00e1, 0x00e9,
344     0x00f1, 0x00f9, 0x0101, 0x0109, 0x0111, 0x0119, 0x0000, 0x0000,
345     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
346     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0002};
347 const uint8_t HuffDecoderCommon::table15_1_emit_[72] = {
348     0x24, 0x30, 0x24, 0x31, 0x24, 0x32, 0x24, 0x61, 0x24, 0x63, 0x24, 0x65,
349     0x24, 0x69, 0x24, 0x6f, 0x24, 0x73, 0x24, 0x74, 0x24, 0x20, 0x24, 0x25,
350     0x24, 0x2d, 0x24, 0x2e, 0x24, 0x2f, 0x24, 0x33, 0x24, 0x34, 0x24, 0x35,
351     0x24, 0x36, 0x24, 0x37, 0x24, 0x38, 0x24, 0x39, 0x24, 0x3d, 0x24, 0x41,
352     0x24, 0x5f, 0x24, 0x62, 0x24, 0x64, 0x24, 0x66, 0x24, 0x67, 0x24, 0x68,
353     0x24, 0x6c, 0x24, 0x6d, 0x24, 0x6e, 0x24, 0x70, 0x24, 0x72, 0x24, 0x75};
354 const uint8_t HuffDecoderCommon::table15_2_emit_[72] = {
355     0x40, 0x30, 0x40, 0x31, 0x40, 0x32, 0x40, 0x61, 0x40, 0x63, 0x40, 0x65,
356     0x40, 0x69, 0x40, 0x6f, 0x40, 0x73, 0x40, 0x74, 0x40, 0x20, 0x40, 0x25,
357     0x40, 0x2d, 0x40, 0x2e, 0x40, 0x2f, 0x40, 0x33, 0x40, 0x34, 0x40, 0x35,
358     0x40, 0x36, 0x40, 0x37, 0x40, 0x38, 0x40, 0x39, 0x40, 0x3d, 0x40, 0x41,
359     0x40, 0x5f, 0x40, 0x62, 0x40, 0x64, 0x40, 0x66, 0x40, 0x67, 0x40, 0x68,
360     0x40, 0x6c, 0x40, 0x6d, 0x40, 0x6e, 0x40, 0x70, 0x40, 0x72, 0x40, 0x75};
361 const uint8_t HuffDecoderCommon::table15_3_emit_[72] = {
362     0x5b, 0x30, 0x5b, 0x31, 0x5b, 0x32, 0x5b, 0x61, 0x5b, 0x63, 0x5b, 0x65,
363     0x5b, 0x69, 0x5b, 0x6f, 0x5b, 0x73, 0x5b, 0x74, 0x5b, 0x20, 0x5b, 0x25,
364     0x5b, 0x2d, 0x5b, 0x2e, 0x5b, 0x2f, 0x5b, 0x33, 0x5b, 0x34, 0x5b, 0x35,
365     0x5b, 0x36, 0x5b, 0x37, 0x5b, 0x38, 0x5b, 0x39, 0x5b, 0x3d, 0x5b, 0x41,
366     0x5b, 0x5f, 0x5b, 0x62, 0x5b, 0x64, 0x5b, 0x66, 0x5b, 0x67, 0x5b, 0x68,
367     0x5b, 0x6c, 0x5b, 0x6d, 0x5b, 0x6e, 0x5b, 0x70, 0x5b, 0x72, 0x5b, 0x75};
368 const uint8_t HuffDecoderCommon::table15_4_emit_[72] = {
369     0x5d, 0x30, 0x5d, 0x31, 0x5d, 0x32, 0x5d, 0x61, 0x5d, 0x63, 0x5d, 0x65,
370     0x5d, 0x69, 0x5d, 0x6f, 0x5d, 0x73, 0x5d, 0x74, 0x5d, 0x20, 0x5d, 0x25,
371     0x5d, 0x2d, 0x5d, 0x2e, 0x5d, 0x2f, 0x5d, 0x33, 0x5d, 0x34, 0x5d, 0x35,
372     0x5d, 0x36, 0x5d, 0x37, 0x5d, 0x38, 0x5d, 0x39, 0x5d, 0x3d, 0x5d, 0x41,
373     0x5d, 0x5f, 0x5d, 0x62, 0x5d, 0x64, 0x5d, 0x66, 0x5d, 0x67, 0x5d, 0x68,
374     0x5d, 0x6c, 0x5d, 0x6d, 0x5d, 0x6e, 0x5d, 0x70, 0x5d, 0x72, 0x5d, 0x75};
375 const uint8_t HuffDecoderCommon::table15_5_emit_[72] = {
376     0x7e, 0x30, 0x7e, 0x31, 0x7e, 0x32, 0x7e, 0x61, 0x7e, 0x63, 0x7e, 0x65,
377     0x7e, 0x69, 0x7e, 0x6f, 0x7e, 0x73, 0x7e, 0x74, 0x7e, 0x20, 0x7e, 0x25,
378     0x7e, 0x2d, 0x7e, 0x2e, 0x7e, 0x2f, 0x7e, 0x33, 0x7e, 0x34, 0x7e, 0x35,
379     0x7e, 0x36, 0x7e, 0x37, 0x7e, 0x38, 0x7e, 0x39, 0x7e, 0x3d, 0x7e, 0x41,
380     0x7e, 0x5f, 0x7e, 0x62, 0x7e, 0x64, 0x7e, 0x66, 0x7e, 0x67, 0x7e, 0x68,
381     0x7e, 0x6c, 0x7e, 0x6d, 0x7e, 0x6e, 0x7e, 0x70, 0x7e, 0x72, 0x7e, 0x75};
382 const uint8_t HuffDecoderCommon::table15_6_emit_[40] = {
383     0x5e, 0x30, 0x5e, 0x31, 0x5e, 0x32, 0x5e, 0x61, 0x5e, 0x63,
384     0x5e, 0x65, 0x5e, 0x69, 0x5e, 0x6f, 0x5e, 0x73, 0x5e, 0x74,
385     0x7d, 0x30, 0x7d, 0x31, 0x7d, 0x32, 0x7d, 0x61, 0x7d, 0x63,
386     0x7d, 0x65, 0x7d, 0x69, 0x7d, 0x6f, 0x7d, 0x73, 0x7d, 0x74};
387 const uint16_t HuffDecoderCommon::table15_6_ops_[64] = {
388     0x0001, 0x0009, 0x0011, 0x0019, 0x0021, 0x0029, 0x0031, 0x0039,
389     0x0041, 0x0049, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
390     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
391     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0002,
392     0x0051, 0x0059, 0x0061, 0x0069, 0x0071, 0x0079, 0x0081, 0x0089,
393     0x0091, 0x0099, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
394     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
395     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0052};
396 const uint8_t HuffDecoderCommon::table15_7_emit_[6] = {0x3c, 0x60, 0x7b,
397                                                        0x5c, 0xc3, 0xd0};
398 const uint16_t HuffDecoderCommon::table15_7_ops_[64] = {
399     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
400     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0002,
401     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
402     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0006,
403     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
404     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x000a,
405     0x000e, 0x0012, 0x0016, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
406     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0003};
407 const uint8_t* const HuffDecoderCommon::table15_emit_[8] = {
408     table15_0_emit_, table15_1_emit_, table15_2_emit_, table15_3_emit_,
409     table15_4_emit_, table15_5_emit_, table15_6_emit_, table15_7_emit_,
410 };
411 const uint16_t* const HuffDecoderCommon::table15_ops_[8] = {
412     table15_0_ops_, table15_0_ops_, table15_0_ops_, table15_0_ops_,
413     table15_0_ops_, table15_0_ops_, table15_6_ops_, table15_7_ops_,
414 };
415 const uint8_t HuffDecoderCommon::table16_0_emit_[44] = {
416     0x00, 0x30, 0x00, 0x31, 0x00, 0x32, 0x00, 0x61, 0x00, 0x63, 0x00,
417     0x65, 0x00, 0x69, 0x00, 0x6f, 0x00, 0x73, 0x00, 0x74, 0x00, 0x20,
418     0x00, 0x25, 0x00, 0x2d, 0x00, 0x2e, 0x00, 0x2f, 0x00, 0x33, 0x00,
419     0x34, 0x00, 0x35, 0x00, 0x36, 0x00, 0x37, 0x00, 0x38, 0x00, 0x39};
420 const uint16_t HuffDecoderCommon::table16_0_ops_[64] = {
421     0x0000, 0x0000, 0x0000, 0x0001, 0x0000, 0x0000, 0x0000, 0x0009,
422     0x0000, 0x0000, 0x0000, 0x0011, 0x0000, 0x0000, 0x0000, 0x0019,
423     0x0000, 0x0000, 0x0000, 0x0021, 0x0000, 0x0000, 0x0000, 0x0029,
424     0x0000, 0x0000, 0x0000, 0x0031, 0x0000, 0x0000, 0x0000, 0x0039,
425     0x0000, 0x0000, 0x0000, 0x0041, 0x0000, 0x0000, 0x0000, 0x0049,
426     0x0000, 0x0051, 0x0000, 0x0059, 0x0000, 0x0061, 0x0000, 0x0069,
427     0x0000, 0x0071, 0x0000, 0x0079, 0x0000, 0x0081, 0x0000, 0x0089,
428     0x0000, 0x0091, 0x0000, 0x0099, 0x0000, 0x00a1, 0x0000, 0x00a9};
429 const uint8_t HuffDecoderCommon::table16_1_emit_[92] = {
430     0x00, 0x3d, 0x00, 0x41, 0x00, 0x5f, 0x00, 0x62, 0x00, 0x64, 0x00, 0x66,
431     0x00, 0x67, 0x00, 0x68, 0x00, 0x6c, 0x00, 0x6d, 0x00, 0x6e, 0x00, 0x70,
432     0x00, 0x72, 0x00, 0x75, 0x00, 0x3a, 0x00, 0x42, 0x00, 0x43, 0x00, 0x44,
433     0x00, 0x45, 0x00, 0x46, 0x00, 0x47, 0x00, 0x48, 0x00, 0x49, 0x00, 0x4a,
434     0x00, 0x4b, 0x00, 0x4c, 0x00, 0x4d, 0x00, 0x4e, 0x00, 0x4f, 0x00, 0x50,
435     0x00, 0x51, 0x00, 0x52, 0x00, 0x53, 0x00, 0x54, 0x00, 0x55, 0x00, 0x56,
436     0x00, 0x57, 0x00, 0x59, 0x00, 0x6a, 0x00, 0x6b, 0x00, 0x71, 0x00, 0x76,
437     0x00, 0x77, 0x00, 0x78, 0x00, 0x79, 0x00, 0x7a};
438 const uint16_t HuffDecoderCommon::table16_1_ops_[64] = {
439     0x0000, 0x0001, 0x0000, 0x0009, 0x0000, 0x0011, 0x0000, 0x0019,
440     0x0000, 0x0021, 0x0000, 0x0029, 0x0000, 0x0031, 0x0000, 0x0039,
441     0x0000, 0x0041, 0x0000, 0x0049, 0x0000, 0x0051, 0x0000, 0x0059,
442     0x0000, 0x0061, 0x0000, 0x0069, 0x0071, 0x0079, 0x0081, 0x0089,
443     0x0091, 0x0099, 0x00a1, 0x00a9, 0x00b1, 0x00b9, 0x00c1, 0x00c9,
444     0x00d1, 0x00d9, 0x00e1, 0x00e9, 0x00f1, 0x00f9, 0x0101, 0x0109,
445     0x0111, 0x0119, 0x0121, 0x0129, 0x0131, 0x0139, 0x0141, 0x0149,
446     0x0151, 0x0159, 0x0161, 0x0169, 0x0000, 0x0000, 0x0000, 0x0002};
447 const uint8_t HuffDecoderCommon::table16_2_emit_[44] = {
448     0x24, 0x30, 0x24, 0x31, 0x24, 0x32, 0x24, 0x61, 0x24, 0x63, 0x24,
449     0x65, 0x24, 0x69, 0x24, 0x6f, 0x24, 0x73, 0x24, 0x74, 0x24, 0x20,
450     0x24, 0x25, 0x24, 0x2d, 0x24, 0x2e, 0x24, 0x2f, 0x24, 0x33, 0x24,
451     0x34, 0x24, 0x35, 0x24, 0x36, 0x24, 0x37, 0x24, 0x38, 0x24, 0x39};
452 const uint8_t HuffDecoderCommon::table16_3_emit_[92] = {
453     0x24, 0x3d, 0x24, 0x41, 0x24, 0x5f, 0x24, 0x62, 0x24, 0x64, 0x24, 0x66,
454     0x24, 0x67, 0x24, 0x68, 0x24, 0x6c, 0x24, 0x6d, 0x24, 0x6e, 0x24, 0x70,
455     0x24, 0x72, 0x24, 0x75, 0x24, 0x3a, 0x24, 0x42, 0x24, 0x43, 0x24, 0x44,
456     0x24, 0x45, 0x24, 0x46, 0x24, 0x47, 0x24, 0x48, 0x24, 0x49, 0x24, 0x4a,
457     0x24, 0x4b, 0x24, 0x4c, 0x24, 0x4d, 0x24, 0x4e, 0x24, 0x4f, 0x24, 0x50,
458     0x24, 0x51, 0x24, 0x52, 0x24, 0x53, 0x24, 0x54, 0x24, 0x55, 0x24, 0x56,
459     0x24, 0x57, 0x24, 0x59, 0x24, 0x6a, 0x24, 0x6b, 0x24, 0x71, 0x24, 0x76,
460     0x24, 0x77, 0x24, 0x78, 0x24, 0x79, 0x24, 0x7a};
461 const uint8_t HuffDecoderCommon::table16_4_emit_[44] = {
462     0x40, 0x30, 0x40, 0x31, 0x40, 0x32, 0x40, 0x61, 0x40, 0x63, 0x40,
463     0x65, 0x40, 0x69, 0x40, 0x6f, 0x40, 0x73, 0x40, 0x74, 0x40, 0x20,
464     0x40, 0x25, 0x40, 0x2d, 0x40, 0x2e, 0x40, 0x2f, 0x40, 0x33, 0x40,
465     0x34, 0x40, 0x35, 0x40, 0x36, 0x40, 0x37, 0x40, 0x38, 0x40, 0x39};
466 const uint8_t HuffDecoderCommon::table16_5_emit_[92] = {
467     0x40, 0x3d, 0x40, 0x41, 0x40, 0x5f, 0x40, 0x62, 0x40, 0x64, 0x40, 0x66,
468     0x40, 0x67, 0x40, 0x68, 0x40, 0x6c, 0x40, 0x6d, 0x40, 0x6e, 0x40, 0x70,
469     0x40, 0x72, 0x40, 0x75, 0x40, 0x3a, 0x40, 0x42, 0x40, 0x43, 0x40, 0x44,
470     0x40, 0x45, 0x40, 0x46, 0x40, 0x47, 0x40, 0x48, 0x40, 0x49, 0x40, 0x4a,
471     0x40, 0x4b, 0x40, 0x4c, 0x40, 0x4d, 0x40, 0x4e, 0x40, 0x4f, 0x40, 0x50,
472     0x40, 0x51, 0x40, 0x52, 0x40, 0x53, 0x40, 0x54, 0x40, 0x55, 0x40, 0x56,
473     0x40, 0x57, 0x40, 0x59, 0x40, 0x6a, 0x40, 0x6b, 0x40, 0x71, 0x40, 0x76,
474     0x40, 0x77, 0x40, 0x78, 0x40, 0x79, 0x40, 0x7a};
475 const uint8_t HuffDecoderCommon::table16_6_emit_[44] = {
476     0x5b, 0x30, 0x5b, 0x31, 0x5b, 0x32, 0x5b, 0x61, 0x5b, 0x63, 0x5b,
477     0x65, 0x5b, 0x69, 0x5b, 0x6f, 0x5b, 0x73, 0x5b, 0x74, 0x5b, 0x20,
478     0x5b, 0x25, 0x5b, 0x2d, 0x5b, 0x2e, 0x5b, 0x2f, 0x5b, 0x33, 0x5b,
479     0x34, 0x5b, 0x35, 0x5b, 0x36, 0x5b, 0x37, 0x5b, 0x38, 0x5b, 0x39};
480 const uint8_t HuffDecoderCommon::table16_7_emit_[92] = {
481     0x5b, 0x3d, 0x5b, 0x41, 0x5b, 0x5f, 0x5b, 0x62, 0x5b, 0x64, 0x5b, 0x66,
482     0x5b, 0x67, 0x5b, 0x68, 0x5b, 0x6c, 0x5b, 0x6d, 0x5b, 0x6e, 0x5b, 0x70,
483     0x5b, 0x72, 0x5b, 0x75, 0x5b, 0x3a, 0x5b, 0x42, 0x5b, 0x43, 0x5b, 0x44,
484     0x5b, 0x45, 0x5b, 0x46, 0x5b, 0x47, 0x5b, 0x48, 0x5b, 0x49, 0x5b, 0x4a,
485     0x5b, 0x4b, 0x5b, 0x4c, 0x5b, 0x4d, 0x5b, 0x4e, 0x5b, 0x4f, 0x5b, 0x50,
486     0x5b, 0x51, 0x5b, 0x52, 0x5b, 0x53, 0x5b, 0x54, 0x5b, 0x55, 0x5b, 0x56,
487     0x5b, 0x57, 0x5b, 0x59, 0x5b, 0x6a, 0x5b, 0x6b, 0x5b, 0x71, 0x5b, 0x76,
488     0x5b, 0x77, 0x5b, 0x78, 0x5b, 0x79, 0x5b, 0x7a};
489 const uint8_t HuffDecoderCommon::table16_8_emit_[44] = {
490     0x5d, 0x30, 0x5d, 0x31, 0x5d, 0x32, 0x5d, 0x61, 0x5d, 0x63, 0x5d,
491     0x65, 0x5d, 0x69, 0x5d, 0x6f, 0x5d, 0x73, 0x5d, 0x74, 0x5d, 0x20,
492     0x5d, 0x25, 0x5d, 0x2d, 0x5d, 0x2e, 0x5d, 0x2f, 0x5d, 0x33, 0x5d,
493     0x34, 0x5d, 0x35, 0x5d, 0x36, 0x5d, 0x37, 0x5d, 0x38, 0x5d, 0x39};
494 const uint8_t HuffDecoderCommon::table16_9_emit_[92] = {
495     0x5d, 0x3d, 0x5d, 0x41, 0x5d, 0x5f, 0x5d, 0x62, 0x5d, 0x64, 0x5d, 0x66,
496     0x5d, 0x67, 0x5d, 0x68, 0x5d, 0x6c, 0x5d, 0x6d, 0x5d, 0x6e, 0x5d, 0x70,
497     0x5d, 0x72, 0x5d, 0x75, 0x5d, 0x3a, 0x5d, 0x42, 0x5d, 0x43, 0x5d, 0x44,
498     0x5d, 0x45, 0x5d, 0x46, 0x5d, 0x47, 0x5d, 0x48, 0x5d, 0x49, 0x5d, 0x4a,
499     0x5d, 0x4b, 0x5d, 0x4c, 0x5d, 0x4d, 0x5d, 0x4e, 0x5d, 0x4f, 0x5d, 0x50,
500     0x5d, 0x51, 0x5d, 0x52, 0x5d, 0x53, 0x5d, 0x54, 0x5d, 0x55, 0x5d, 0x56,
501     0x5d, 0x57, 0x5d, 0x59, 0x5d, 0x6a, 0x5d, 0x6b, 0x5d, 0x71, 0x5d, 0x76,
502     0x5d, 0x77, 0x5d, 0x78, 0x5d, 0x79, 0x5d, 0x7a};
503 const uint8_t HuffDecoderCommon::table16_10_emit_[44] = {
504     0x7e, 0x30, 0x7e, 0x31, 0x7e, 0x32, 0x7e, 0x61, 0x7e, 0x63, 0x7e,
505     0x65, 0x7e, 0x69, 0x7e, 0x6f, 0x7e, 0x73, 0x7e, 0x74, 0x7e, 0x20,
506     0x7e, 0x25, 0x7e, 0x2d, 0x7e, 0x2e, 0x7e, 0x2f, 0x7e, 0x33, 0x7e,
507     0x34, 0x7e, 0x35, 0x7e, 0x36, 0x7e, 0x37, 0x7e, 0x38, 0x7e, 0x39};
508 const uint8_t HuffDecoderCommon::table16_11_emit_[92] = {
509     0x7e, 0x3d, 0x7e, 0x41, 0x7e, 0x5f, 0x7e, 0x62, 0x7e, 0x64, 0x7e, 0x66,
510     0x7e, 0x67, 0x7e, 0x68, 0x7e, 0x6c, 0x7e, 0x6d, 0x7e, 0x6e, 0x7e, 0x70,
511     0x7e, 0x72, 0x7e, 0x75, 0x7e, 0x3a, 0x7e, 0x42, 0x7e, 0x43, 0x7e, 0x44,
512     0x7e, 0x45, 0x7e, 0x46, 0x7e, 0x47, 0x7e, 0x48, 0x7e, 0x49, 0x7e, 0x4a,
513     0x7e, 0x4b, 0x7e, 0x4c, 0x7e, 0x4d, 0x7e, 0x4e, 0x7e, 0x4f, 0x7e, 0x50,
514     0x7e, 0x51, 0x7e, 0x52, 0x7e, 0x53, 0x7e, 0x54, 0x7e, 0x55, 0x7e, 0x56,
515     0x7e, 0x57, 0x7e, 0x59, 0x7e, 0x6a, 0x7e, 0x6b, 0x7e, 0x71, 0x7e, 0x76,
516     0x7e, 0x77, 0x7e, 0x78, 0x7e, 0x79, 0x7e, 0x7a};
517 const uint8_t HuffDecoderCommon::table16_12_emit_[72] = {
518     0x5e, 0x30, 0x5e, 0x31, 0x5e, 0x32, 0x5e, 0x61, 0x5e, 0x63, 0x5e, 0x65,
519     0x5e, 0x69, 0x5e, 0x6f, 0x5e, 0x73, 0x5e, 0x74, 0x5e, 0x20, 0x5e, 0x25,
520     0x5e, 0x2d, 0x5e, 0x2e, 0x5e, 0x2f, 0x5e, 0x33, 0x5e, 0x34, 0x5e, 0x35,
521     0x5e, 0x36, 0x5e, 0x37, 0x5e, 0x38, 0x5e, 0x39, 0x5e, 0x3d, 0x5e, 0x41,
522     0x5e, 0x5f, 0x5e, 0x62, 0x5e, 0x64, 0x5e, 0x66, 0x5e, 0x67, 0x5e, 0x68,
523     0x5e, 0x6c, 0x5e, 0x6d, 0x5e, 0x6e, 0x5e, 0x70, 0x5e, 0x72, 0x5e, 0x75};
524 const uint8_t HuffDecoderCommon::table16_13_emit_[72] = {
525     0x7d, 0x30, 0x7d, 0x31, 0x7d, 0x32, 0x7d, 0x61, 0x7d, 0x63, 0x7d, 0x65,
526     0x7d, 0x69, 0x7d, 0x6f, 0x7d, 0x73, 0x7d, 0x74, 0x7d, 0x20, 0x7d, 0x25,
527     0x7d, 0x2d, 0x7d, 0x2e, 0x7d, 0x2f, 0x7d, 0x33, 0x7d, 0x34, 0x7d, 0x35,
528     0x7d, 0x36, 0x7d, 0x37, 0x7d, 0x38, 0x7d, 0x39, 0x7d, 0x3d, 0x7d, 0x41,
529     0x7d, 0x5f, 0x7d, 0x62, 0x7d, 0x64, 0x7d, 0x66, 0x7d, 0x67, 0x7d, 0x68,
530     0x7d, 0x6c, 0x7d, 0x6d, 0x7d, 0x6e, 0x7d, 0x70, 0x7d, 0x72, 0x7d, 0x75};
531 const uint8_t HuffDecoderCommon::table16_14_emit_[40] = {
532     0x3c, 0x30, 0x3c, 0x31, 0x3c, 0x32, 0x3c, 0x61, 0x3c, 0x63,
533     0x3c, 0x65, 0x3c, 0x69, 0x3c, 0x6f, 0x3c, 0x73, 0x3c, 0x74,
534     0x60, 0x30, 0x60, 0x31, 0x60, 0x32, 0x60, 0x61, 0x60, 0x63,
535     0x60, 0x65, 0x60, 0x69, 0x60, 0x6f, 0x60, 0x73, 0x60, 0x74};
536 const uint8_t HuffDecoderCommon::table16_15_emit_[31] = {
537     0x7b, 0x30, 0x7b, 0x31, 0x7b, 0x32, 0x7b, 0x61, 0x7b, 0x63, 0x7b,
538     0x65, 0x7b, 0x69, 0x7b, 0x6f, 0x7b, 0x73, 0x7b, 0x74, 0x5c, 0xc3,
539     0xd0, 0x80, 0x82, 0x83, 0xa2, 0xb8, 0xc2, 0xe0, 0xe2};
540 const uint16_t HuffDecoderCommon::table16_15_ops_[64] = {
541     0x0001, 0x0009, 0x0011, 0x0019, 0x0021, 0x0029, 0x0031, 0x0039,
542     0x0041, 0x0049, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
543     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
544     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0002,
545     0x0000, 0x0052, 0x0000, 0x0056, 0x0000, 0x005a, 0x005e, 0x0062,
546     0x0066, 0x006a, 0x006e, 0x0072, 0x0076, 0x007a, 0x0000, 0x0000,
547     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
548     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0003};
549 const uint8_t* const HuffDecoderCommon::table16_emit_[16] = {
550     table16_0_emit_,  table16_1_emit_,  table16_2_emit_,  table16_3_emit_,
551     table16_4_emit_,  table16_5_emit_,  table16_6_emit_,  table16_7_emit_,
552     table16_8_emit_,  table16_9_emit_,  table16_10_emit_, table16_11_emit_,
553     table16_12_emit_, table16_13_emit_, table16_14_emit_, table16_15_emit_,
554 };
555 const uint16_t* const HuffDecoderCommon::table16_ops_[16] = {
556     table16_0_ops_, table16_1_ops_, table16_0_ops_, table16_1_ops_,
557     table16_0_ops_, table16_1_ops_, table16_0_ops_, table16_1_ops_,
558     table16_0_ops_, table16_1_ops_, table16_0_ops_, table16_1_ops_,
559     table15_0_ops_, table15_0_ops_, table15_6_ops_, table16_15_ops_,
560 };
561 const uint8_t HuffDecoderCommon::table8_0_emit_[1] = {0x00};
562 const uint16_t HuffDecoderCommon::table8_0_ops_[64] = {
563     0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003,
564     0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003,
565     0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003,
566     0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003,
567     0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003,
568     0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003,
569     0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003,
570     0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003};
571 const uint8_t HuffDecoderCommon::table8_4_emit_[1] = {0x24};
572 const uint8_t HuffDecoderCommon::table8_8_emit_[1] = {0x40};
573 const uint8_t HuffDecoderCommon::table8_12_emit_[1] = {0x5b};
574 const uint8_t HuffDecoderCommon::table8_16_emit_[1] = {0x5d};
575 const uint8_t HuffDecoderCommon::table8_20_emit_[1] = {0x7e};
576 const uint8_t HuffDecoderCommon::table8_24_emit_[1] = {0x5e};
577 const uint16_t HuffDecoderCommon::table8_24_ops_[64] = {
578     0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004,
579     0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004,
580     0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004,
581     0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004,
582     0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004,
583     0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004,
584     0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004,
585     0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004};
586 const uint8_t HuffDecoderCommon::table8_26_emit_[1] = {0x7d};
587 const uint8_t HuffDecoderCommon::table8_28_emit_[1] = {0x3c};
588 const uint16_t HuffDecoderCommon::table8_28_ops_[64] = {
589     0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
590     0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
591     0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
592     0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
593     0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
594     0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
595     0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
596     0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005};
597 const uint8_t HuffDecoderCommon::table8_29_emit_[1] = {0x60};
598 const uint8_t HuffDecoderCommon::table8_30_emit_[1] = {0x7b};
599 const uint8_t HuffDecoderCommon::table8_31_emit_[24] = {
600     0x5c, 0xc3, 0xd0, 0x80, 0x82, 0x83, 0xa2, 0xb8, 0xc2, 0xe0, 0xe2, 0x99,
601     0xa1, 0xa7, 0xac, 0xb0, 0xb1, 0xb3, 0xd1, 0xd8, 0xd9, 0xe3, 0xe5, 0xe6};
602 const uint16_t HuffDecoderCommon::table8_31_ops_[64] = {
603     0x0009, 0x0009, 0x0009, 0x0009, 0x0209, 0x0209, 0x0209, 0x0209,
604     0x0409, 0x0409, 0x0409, 0x0409, 0x060a, 0x060a, 0x080a, 0x080a,
605     0x0a0a, 0x0a0a, 0x0c0a, 0x0c0a, 0x0e0a, 0x0e0a, 0x100a, 0x100a,
606     0x120a, 0x120a, 0x140a, 0x140a, 0x160b, 0x180b, 0x1a0b, 0x1c0b,
607     0x1e0b, 0x200b, 0x220b, 0x240b, 0x260b, 0x280b, 0x2a0b, 0x2c0b,
608     0x2e0b, 0x001b, 0x002b, 0x003b, 0x004b, 0x005b, 0x006b, 0x007b,
609     0x008b, 0x009b, 0x00ab, 0x00bb, 0x00cb, 0x00db, 0x00eb, 0x00fb,
610     0x010b, 0x011b, 0x012b, 0x013b, 0x014b, 0x015b, 0x016b, 0x017b};
611 const uint8_t* const HuffDecoderCommon::table8_emit_[32] = {
612     table8_0_emit_,  table8_0_emit_,  table8_0_emit_,  table8_0_emit_,
613     table8_4_emit_,  table8_4_emit_,  table8_4_emit_,  table8_4_emit_,
614     table8_8_emit_,  table8_8_emit_,  table8_8_emit_,  table8_8_emit_,
615     table8_12_emit_, table8_12_emit_, table8_12_emit_, table8_12_emit_,
616     table8_16_emit_, table8_16_emit_, table8_16_emit_, table8_16_emit_,
617     table8_20_emit_, table8_20_emit_, table8_20_emit_, table8_20_emit_,
618     table8_24_emit_, table8_24_emit_, table8_26_emit_, table8_26_emit_,
619     table8_28_emit_, table8_29_emit_, table8_30_emit_, table8_31_emit_,
620 };
621 const uint16_t* const HuffDecoderCommon::table8_ops_[32] = {
622     table8_0_ops_,  table8_0_ops_,  table8_0_ops_,  table8_0_ops_,
623     table8_0_ops_,  table8_0_ops_,  table8_0_ops_,  table8_0_ops_,
624     table8_0_ops_,  table8_0_ops_,  table8_0_ops_,  table8_0_ops_,
625     table8_0_ops_,  table8_0_ops_,  table8_0_ops_,  table8_0_ops_,
626     table8_0_ops_,  table8_0_ops_,  table8_0_ops_,  table8_0_ops_,
627     table8_0_ops_,  table8_0_ops_,  table8_0_ops_,  table8_0_ops_,
628     table8_24_ops_, table8_24_ops_, table8_24_ops_, table8_24_ops_,
629     table8_28_ops_, table8_28_ops_, table8_28_ops_, table8_31_ops_,
630 };
631 const uint8_t HuffDecoderCommon::table38_0_emit_[6] = {0xab, 0xce, 0xd7,
632                                                        0xe1, 0xec, 0xed};
633 const uint8_t HuffDecoderCommon::table38_0_inner_[7] = {0x00, 0x02, 0x04, 0x06,
634                                                         0x08, 0x0a, 0x01};
635 const uint8_t HuffDecoderCommon::table37_0_emit_[10] = {
636     0xab, 0xce, 0xd7, 0xe1, 0xec, 0xed, 0xc7, 0xcf, 0xea, 0xeb};
637 const uint8_t HuffDecoderCommon::table37_0_inner_[10] = {
638     0x03, 0x0b, 0x13, 0x1b, 0x23, 0x2b, 0x34, 0x3c, 0x44, 0x4c};
639 const uint8_t HuffDecoderCommon::table39_0_emit_[7] = {0xef, 0x09, 0x8e, 0x90,
640                                                        0x91, 0x94, 0x9f};
641 const uint8_t HuffDecoderCommon::table39_0_inner_[7] = {0x02, 0x07, 0x0b, 0x0f,
642                                                         0x13, 0x17, 0x1b};
643 const uint8_t HuffDecoderCommon::table42_0_emit_[15] = {
644     0xc0, 0xc1, 0xc8, 0xc9, 0xca, 0xcd, 0xd2, 0xd5,
645     0xda, 0xdb, 0xee, 0xf0, 0xf2, 0xf3, 0xff};
646 const uint8_t HuffDecoderCommon::table42_0_ops_[32] = {
647     0x00, 0x04, 0x08, 0x0c, 0x10, 0x14, 0x18, 0x1c, 0x20, 0x24, 0x28,
648     0x2c, 0x30, 0x34, 0x38, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
649     0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02};
650 const uint8_t HuffDecoderCommon::table43_0_emit_[34] = {
651     0xc0, 0xc1, 0xc8, 0xc9, 0xca, 0xcd, 0xd2, 0xd5, 0xda, 0xdb, 0xee, 0xf0,
652     0xf2, 0xf3, 0xff, 0xcb, 0xcc, 0xd3, 0xd4, 0xd6, 0xdd, 0xde, 0xdf, 0xf1,
653     0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe};
654 const uint8_t HuffDecoderCommon::table43_0_ops_[64] = {
655     0x00, 0x01, 0x00, 0x05, 0x00, 0x09, 0x00, 0x0d, 0x00, 0x11, 0x00,
656     0x15, 0x00, 0x19, 0x00, 0x1d, 0x00, 0x21, 0x00, 0x25, 0x00, 0x29,
657     0x00, 0x2d, 0x00, 0x31, 0x00, 0x35, 0x00, 0x39, 0x3d, 0x41, 0x45,
658     0x49, 0x4d, 0x51, 0x55, 0x59, 0x5d, 0x61, 0x65, 0x69, 0x6d, 0x71,
659     0x75, 0x79, 0x7d, 0x81, 0x85, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
660     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02};
661 const uint8_t HuffDecoderCommon::table44_0_emit_[63] = {
662     0xc0, 0xc1, 0xc8, 0xc9, 0xca, 0xcd, 0xd2, 0xd5, 0xda, 0xdb, 0xee,
663     0xf0, 0xf2, 0xf3, 0xff, 0xcb, 0xcc, 0xd3, 0xd4, 0xd6, 0xdd, 0xde,
664     0xdf, 0xf1, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xfa, 0xfb, 0xfc, 0xfd,
665     0xfe, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x0b, 0x0c, 0x0e,
666     0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x17, 0x18, 0x19, 0x1a,
667     0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x7f, 0xdc, 0xf9};
668 const uint8_t HuffDecoderCommon::table44_0_ops_[128] = {
669     0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x09,
670     0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x15,
671     0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, 0x1d, 0x00, 0x00, 0x00, 0x21,
672     0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00, 0x2d,
673     0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00, 0x39,
674     0x00, 0x3d, 0x00, 0x41, 0x00, 0x45, 0x00, 0x49, 0x00, 0x4d, 0x00, 0x51,
675     0x00, 0x55, 0x00, 0x59, 0x00, 0x5d, 0x00, 0x61, 0x00, 0x65, 0x00, 0x69,
676     0x00, 0x6d, 0x00, 0x71, 0x00, 0x75, 0x00, 0x79, 0x00, 0x7d, 0x00, 0x81,
677     0x00, 0x85, 0x89, 0x8d, 0x91, 0x95, 0x99, 0x9d, 0xa1, 0xa5, 0xa9, 0xad,
678     0xb1, 0xb5, 0xb9, 0xbd, 0xc1, 0xc5, 0xc9, 0xcd, 0xd1, 0xd5, 0xd9, 0xdd,
679     0xe1, 0xe5, 0xe9, 0xed, 0xf1, 0xf5, 0xf9, 0x02};
680 const uint8_t HuffDecoderCommon::table45_0_ops_[256] = {
681     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
682     0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09,
683     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00,
684     0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x15,
685     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, 0x00,
686     0x00, 0x00, 0x00, 0x1d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21,
687     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x00,
688     0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d,
689     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00, 0x00,
690     0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x39,
691     0x00, 0x00, 0x00, 0x3d, 0x00, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00, 0x45,
692     0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00, 0x51,
693     0x00, 0x00, 0x00, 0x55, 0x00, 0x00, 0x00, 0x59, 0x00, 0x00, 0x00, 0x5d,
694     0x00, 0x00, 0x00, 0x61, 0x00, 0x00, 0x00, 0x65, 0x00, 0x00, 0x00, 0x69,
695     0x00, 0x00, 0x00, 0x6d, 0x00, 0x00, 0x00, 0x71, 0x00, 0x00, 0x00, 0x75,
696     0x00, 0x00, 0x00, 0x79, 0x00, 0x00, 0x00, 0x7d, 0x00, 0x00, 0x00, 0x81,
697     0x00, 0x00, 0x00, 0x85, 0x00, 0x89, 0x00, 0x8d, 0x00, 0x91, 0x00, 0x95,
698     0x00, 0x99, 0x00, 0x9d, 0x00, 0xa1, 0x00, 0xa5, 0x00, 0xa9, 0x00, 0xad,
699     0x00, 0xb1, 0x00, 0xb5, 0x00, 0xb9, 0x00, 0xbd, 0x00, 0xc1, 0x00, 0xc5,
700     0x00, 0xc9, 0x00, 0xcd, 0x00, 0xd1, 0x00, 0xd5, 0x00, 0xd9, 0x00, 0xdd,
701     0x00, 0xe1, 0x00, 0xe5, 0x00, 0xe9, 0x00, 0xed, 0x00, 0xf1, 0x00, 0xf5,
702     0x00, 0xf9, 0x00, 0x02};
703 const uint8_t HuffDecoderCommon::table41_0_emit_[2] = {0xc0, 0xc1};
704 const uint16_t HuffDecoderCommon::table41_0_ops_[32] = {
705     0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
706     0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
707     0x0025, 0x0025, 0x0025, 0x0025, 0x0025, 0x0025, 0x0025, 0x0025,
708     0x0025, 0x0025, 0x0025, 0x0025, 0x0025, 0x0025, 0x0025, 0x0025};
709 const uint8_t HuffDecoderCommon::table41_1_emit_[2] = {0xc8, 0xc9};
710 const uint8_t HuffDecoderCommon::table41_2_emit_[2] = {0xca, 0xcd};
711 const uint8_t HuffDecoderCommon::table41_3_emit_[2] = {0xd2, 0xd5};
712 const uint8_t HuffDecoderCommon::table41_4_emit_[2] = {0xda, 0xdb};
713 const uint8_t HuffDecoderCommon::table41_5_emit_[2] = {0xee, 0xf0};
714 const uint8_t HuffDecoderCommon::table41_6_emit_[2] = {0xf2, 0xf3};
715 const uint8_t HuffDecoderCommon::table41_7_emit_[3] = {0xff, 0xcb, 0xcc};
716 const uint16_t HuffDecoderCommon::table41_7_ops_[32] = {
717     0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
718     0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005, 0x0005,
719     0x0026, 0x0026, 0x0026, 0x0026, 0x0026, 0x0026, 0x0026, 0x0026,
720     0x0046, 0x0046, 0x0046, 0x0046, 0x0046, 0x0046, 0x0046, 0x0046};
721 const uint8_t HuffDecoderCommon::table41_8_emit_[4] = {0xd3, 0xd4, 0xd6, 0xdd};
722 const uint16_t HuffDecoderCommon::table41_8_ops_[32] = {
723     0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006,
724     0x0026, 0x0026, 0x0026, 0x0026, 0x0026, 0x0026, 0x0026, 0x0026,
725     0x0046, 0x0046, 0x0046, 0x0046, 0x0046, 0x0046, 0x0046, 0x0046,
726     0x0066, 0x0066, 0x0066, 0x0066, 0x0066, 0x0066, 0x0066, 0x0066};
727 const uint8_t HuffDecoderCommon::table41_9_emit_[4] = {0xde, 0xdf, 0xf1, 0xf4};
728 const uint8_t HuffDecoderCommon::table41_10_emit_[4] = {0xf5, 0xf6, 0xf7, 0xf8};
729 const uint8_t HuffDecoderCommon::table41_11_emit_[4] = {0xfa, 0xfb, 0xfc, 0xfd};
730 const uint8_t HuffDecoderCommon::table41_12_emit_[7] = {0xfe, 0x02, 0x03, 0x04,
731                                                         0x05, 0x06, 0x07};
732 const uint16_t HuffDecoderCommon::table41_12_ops_[32] = {
733     0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006, 0x0006,
734     0x0027, 0x0027, 0x0027, 0x0027, 0x0047, 0x0047, 0x0047, 0x0047,
735     0x0067, 0x0067, 0x0067, 0x0067, 0x0087, 0x0087, 0x0087, 0x0087,
736     0x00a7, 0x00a7, 0x00a7, 0x00a7, 0x00c7, 0x00c7, 0x00c7, 0x00c7};
737 const uint8_t HuffDecoderCommon::table41_13_emit_[8] = {0x08, 0x0b, 0x0c, 0x0e,
738                                                         0x0f, 0x10, 0x11, 0x12};
739 const uint16_t HuffDecoderCommon::table41_13_ops_[32] = {
740     0x0007, 0x0007, 0x0007, 0x0007, 0x0027, 0x0027, 0x0027, 0x0027,
741     0x0047, 0x0047, 0x0047, 0x0047, 0x0067, 0x0067, 0x0067, 0x0067,
742     0x0087, 0x0087, 0x0087, 0x0087, 0x00a7, 0x00a7, 0x00a7, 0x00a7,
743     0x00c7, 0x00c7, 0x00c7, 0x00c7, 0x00e7, 0x00e7, 0x00e7, 0x00e7};
744 const uint8_t HuffDecoderCommon::table41_14_emit_[8] = {0x13, 0x14, 0x15, 0x17,
745                                                         0x18, 0x19, 0x1a, 0x1b};
746 const uint8_t HuffDecoderCommon::table41_15_emit_[10] = {
747     0x1c, 0x1d, 0x1e, 0x1f, 0x7f, 0xdc, 0xf9, 0x0a, 0x0d, 0x16};
748 const uint16_t HuffDecoderCommon::table41_15_ops_[32] = {
749     0x0007, 0x0007, 0x0007, 0x0007, 0x0027, 0x0027, 0x0027, 0x0027,
750     0x0047, 0x0047, 0x0047, 0x0047, 0x0067, 0x0067, 0x0067, 0x0067,
751     0x0087, 0x0087, 0x0087, 0x0087, 0x00a7, 0x00a7, 0x00a7, 0x00a7,
752     0x00c7, 0x00c7, 0x00c7, 0x00c7, 0x00e9, 0x0109, 0x0129, 0x0019};
753 const uint8_t* const HuffDecoderCommon::table41_emit_[16] = {
754     table41_0_emit_,  table41_1_emit_,  table41_2_emit_,  table41_3_emit_,
755     table41_4_emit_,  table41_5_emit_,  table41_6_emit_,  table41_7_emit_,
756     table41_8_emit_,  table41_9_emit_,  table41_10_emit_, table41_11_emit_,
757     table41_12_emit_, table41_13_emit_, table41_14_emit_, table41_15_emit_,
758 };
759 const uint16_t* const HuffDecoderCommon::table41_ops_[16] = {
760     table41_0_ops_,  table41_0_ops_,  table41_0_ops_,  table41_0_ops_,
761     table41_0_ops_,  table41_0_ops_,  table41_0_ops_,  table41_7_ops_,
762     table41_8_ops_,  table41_8_ops_,  table41_8_ops_,  table41_8_ops_,
763     table41_12_ops_, table41_13_ops_, table41_13_ops_, table41_15_ops_,
764 };
765 }  // namespace geometry_10_11_9
766 }  // namespace grpc_core
767