Line | Branch | Exec | Source |
---|---|---|---|
1 | /* | ||
2 | * DCA compatible decoder - huffman tables | ||
3 | * Copyright (C) 2004 Gildas Bazin | ||
4 | * Copyright (C) 2007 Konstantin Shishkov | ||
5 | * | ||
6 | * This file is part of FFmpeg. | ||
7 | * | ||
8 | * FFmpeg is free software; you can redistribute it and/or | ||
9 | * modify it under the terms of the GNU Lesser General Public | ||
10 | * License as published by the Free Software Foundation; either | ||
11 | * version 2.1 of the License, or (at your option) any later version. | ||
12 | * | ||
13 | * FFmpeg is distributed in the hope that it will be useful, | ||
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
16 | * Lesser General Public License for more details. | ||
17 | * | ||
18 | * You should have received a copy of the GNU Lesser General Public | ||
19 | * License along with FFmpeg; if not, write to the Free Software | ||
20 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | ||
21 | */ | ||
22 | |||
23 | #include <stddef.h> | ||
24 | |||
25 | #include "libavutil/macros.h" | ||
26 | |||
27 | #include "dcadata.h" | ||
28 | #include "dcahuff.h" | ||
29 | |||
30 | static const uint8_t bitalloc_12_vlc_bits[DCA_BITALLOC_12_COUNT] = { | ||
31 | 9, 7, 7, 9, 9 | ||
32 | }; | ||
33 | |||
34 | #define SCALES_VLC_BITS 9 | ||
35 | static const uint8_t tnl_grp_sizes[] = { 37, 34, 31, 28, 23 }; | ||
36 | |||
37 | const uint8_t ff_dca_bitalloc_sizes[DCA_CODE_BOOKS] = { | ||
38 | 3, 5, 7, 9, 13, 17, 25, 33, 65, 129 | ||
39 | }; | ||
40 | |||
41 | const int8_t ff_dca_bitalloc_offsets[DCA_CODE_BOOKS] = { | ||
42 | -1, -2, -3, -4, -6, -8, -12, -16, -32, -64 | ||
43 | }; | ||
44 | |||
45 | static const uint8_t bitalloc_maxbits[DCA_CODE_BOOKS][7] = { | ||
46 | { 2 }, | ||
47 | { 4, 3, 3 }, | ||
48 | { 5, 5, 4 }, | ||
49 | { 6, 5, 6 }, | ||
50 | { 7, 6, 5 }, | ||
51 | { 9, 8, 7, 9, 8, 8, 8 }, | ||
52 | { 9, 9, 8, 9, 8, 9, 9 }, | ||
53 | { 9, 9, 9, 9, 9, 9, 9 }, | ||
54 | { 9, 9, 9, 9, 9, 9, 9 }, | ||
55 | { 9, 9, 9, 9, 9, 9, 9 } | ||
56 | }; | ||
57 | |||
58 | const uint8_t ff_dca_vlc_src_tables[][2] = { | ||
59 | /* bitalloc_3 - 3 entries */ | ||
60 | { 1, 1 }, { 2, 2 }, { 0, 2 }, | ||
61 | /* bitalloc_5_a - 5 entries */ | ||
62 | { 2, 1 }, { 3, 2 }, { 1, 3 }, { 4, 4 }, { 0, 4 }, | ||
63 | /* bitalloc_5_b - 5 entries */ | ||
64 | { 3, 2 }, { 1, 2 }, { 2, 2 }, { 4, 3 }, { 0, 3 }, | ||
65 | /* bitalloc_5_c - 5 entries */ | ||
66 | { 2, 1 }, { 3, 3 }, { 1, 3 }, { 4, 3 }, { 0, 3 }, | ||
67 | /* bitalloc_7_a - 7 entries */ | ||
68 | { 3, 1 }, { 5, 3 }, { 2, 3 }, { 4, 3 }, { 1, 4 }, | ||
69 | { 0, 5 }, { 6, 5 }, | ||
70 | /* bitalloc_7_b - 7 entries */ | ||
71 | { 2, 2 }, { 4, 2 }, { 5, 3 }, { 0, 5 }, { 6, 5 }, | ||
72 | { 1, 4 }, { 3, 2 }, | ||
73 | /* bitalloc_7_c - 7 entries */ | ||
74 | { 0, 4 }, { 6, 4 }, { 1, 4 }, { 5, 4 }, { 2, 2 }, | ||
75 | { 4, 2 }, { 3, 2 }, | ||
76 | /* bitalloc_9_a - 9 entries */ | ||
77 | { 4, 1 }, { 7, 4 }, { 2, 4 }, { 3, 3 }, { 0, 6 }, | ||
78 | { 8, 6 }, { 1, 5 }, { 6, 4 }, { 5, 3 }, | ||
79 | /* bitalloc_9_b - 9 entries */ | ||
80 | { 5, 2 }, { 2, 3 }, { 6, 3 }, { 4, 2 }, { 0, 5 }, | ||
81 | { 8, 5 }, { 1, 5 }, { 7, 5 }, { 3, 3 }, | ||
82 | /* bitalloc_9_c - 9 entries */ | ||
83 | { 5, 2 }, { 2, 3 }, { 7, 4 }, { 0, 6 }, { 8, 6 }, | ||
84 | { 1, 5 }, { 4, 2 }, { 6, 3 }, { 3, 3 }, | ||
85 | /* bitalloc_13_a - 13 entries */ | ||
86 | { 6, 1 }, { 7, 3 }, { 9, 4 }, { 10, 5 }, { 1, 6 }, | ||
87 | { 11, 6 }, { 4, 4 }, { 8, 4 }, { 0, 7 }, { 12, 7 }, | ||
88 | { 2, 6 }, { 3, 5 }, { 5, 4 }, | ||
89 | /* bitalloc_13_b - 13 entries */ | ||
90 | { 6, 2 }, { 8, 3 }, { 10, 4 }, { 3, 4 }, { 1, 5 }, | ||
91 | { 11, 5 }, { 9, 4 }, { 5, 3 }, { 7, 3 }, { 0, 6 }, | ||
92 | { 12, 6 }, { 2, 5 }, { 4, 4 }, | ||
93 | /* bitalloc_13_c - 13 entries */ | ||
94 | { 4, 3 }, { 0, 5 }, { 12, 5 }, { 2, 4 }, { 8, 3 }, | ||
95 | { 5, 3 }, { 7, 3 }, { 6, 3 }, { 10, 4 }, { 1, 5 }, | ||
96 | { 11, 5 }, { 3, 4 }, { 9, 4 }, | ||
97 | /* bitalloc_17_a - 17 entries */ | ||
98 | { 12, 4 }, { 13, 6 }, { 14, 8 }, { 15, 10 }, { 0, 12 }, | ||
99 | { 16, 12 }, { 1, 11 }, { 2, 9 }, { 3, 7 }, { 4, 5 }, | ||
100 | { 6, 3 }, { 8, 2 }, { 10, 3 }, { 5, 4 }, { 11, 4 }, | ||
101 | { 7, 3 }, { 9, 3 }, | ||
102 | /* bitalloc_17_b - 17 entries */ | ||
103 | { 8, 2 }, { 10, 3 }, { 15, 6 }, { 2, 6 }, { 3, 5 }, | ||
104 | { 13, 5 }, { 14, 6 }, { 0, 8 }, { 16, 8 }, { 1, 7 }, | ||
105 | { 5, 4 }, { 11, 4 }, { 7, 3 }, { 9, 3 }, { 4, 5 }, | ||
106 | { 12, 5 }, { 6, 4 }, | ||
107 | /* bitalloc_17_c - 17 entries */ | ||
108 | { 10, 3 }, { 15, 5 }, { 2, 5 }, { 4, 4 }, { 12, 4 }, | ||
109 | { 14, 5 }, { 0, 7 }, { 16, 7 }, { 1, 6 }, { 7, 3 }, | ||
110 | { 9, 3 }, { 5, 4 }, { 11, 4 }, { 8, 3 }, { 3, 5 }, | ||
111 | { 13, 5 }, { 6, 4 }, | ||
112 | /* bitalloc_17_d - 17 entries */ | ||
113 | { 8, 1 }, { 0, 9 }, { 16, 9 }, { 1, 9 }, { 15, 9 }, | ||
114 | { 2, 8 }, { 14, 8 }, { 3, 7 }, { 13, 7 }, { 4, 6 }, | ||
115 | { 12, 6 }, { 5, 5 }, { 11, 5 }, { 6, 4 }, { 10, 4 }, | ||
116 | { 7, 3 }, { 9, 3 }, | ||
117 | /* bitalloc_17_e - 17 entries */ | ||
118 | { 8, 1 }, { 7, 3 }, { 9, 3 }, { 10, 4 }, { 3, 6 }, | ||
119 | { 13, 6 }, { 5, 5 }, { 11, 5 }, { 0, 8 }, { 16, 8 }, | ||
120 | { 2, 7 }, { 4, 6 }, { 12, 6 }, { 14, 7 }, { 1, 8 }, | ||
121 | { 15, 8 }, { 6, 5 }, | ||
122 | /* bitalloc_17_f - 17 entries */ | ||
123 | { 15, 6 }, { 0, 8 }, { 16, 8 }, { 1, 7 }, { 3, 5 }, | ||
124 | { 4, 4 }, { 6, 3 }, { 10, 3 }, { 12, 4 }, { 13, 5 }, | ||
125 | { 2, 6 }, { 14, 6 }, { 7, 3 }, { 9, 3 }, { 8, 3 }, | ||
126 | { 5, 4 }, { 11, 4 }, | ||
127 | /* bitalloc_17_g - 17 entries */ | ||
128 | { 6, 3 }, { 10, 3 }, { 5, 4 }, { 11, 4 }, { 0, 8 }, | ||
129 | { 16, 8 }, { 2, 7 }, { 3, 6 }, { 4, 5 }, { 12, 5 }, | ||
130 | { 13, 6 }, { 14, 7 }, { 1, 8 }, { 15, 8 }, { 8, 2 }, | ||
131 | { 7, 3 }, { 9, 3 }, | ||
132 | /* bitalloc_25_a - 25 entries */ | ||
133 | { 10, 3 }, { 14, 3 }, { 8, 4 }, { 16, 4 }, { 11, 3 }, | ||
134 | { 13, 3 }, { 21, 8 }, { 22, 10 }, { 23, 12 }, { 0, 14 }, | ||
135 | { 24, 14 }, { 1, 13 }, { 2, 11 }, { 3, 9 }, { 4, 8 }, | ||
136 | { 20, 8 }, { 5, 7 }, { 19, 7 }, { 7, 5 }, { 17, 5 }, | ||
137 | { 6, 6 }, { 18, 6 }, { 12, 3 }, { 9, 4 }, { 15, 4 }, | ||
138 | /* bitalloc_25_b - 25 entries */ | ||
139 | { 3, 6 }, { 21, 6 }, { 23, 7 }, { 2, 7 }, { 22, 7 }, | ||
140 | { 0, 9 }, { 24, 9 }, { 1, 8 }, { 8, 4 }, { 11, 3 }, | ||
141 | { 13, 3 }, { 16, 4 }, { 6, 5 }, { 18, 5 }, { 9, 4 }, | ||
142 | { 15, 4 }, { 12, 3 }, { 4, 6 }, { 20, 6 }, { 7, 5 }, | ||
143 | { 17, 5 }, { 5, 6 }, { 19, 6 }, { 10, 4 }, { 14, 4 }, | ||
144 | /* bitalloc_25_c - 25 entries */ | ||
145 | { 7, 4 }, { 17, 4 }, { 12, 3 }, { 20, 5 }, { 22, 6 }, | ||
146 | { 0, 8 }, { 24, 8 }, { 1, 7 }, { 8, 4 }, { 16, 4 }, | ||
147 | { 5, 5 }, { 19, 5 }, { 9, 4 }, { 15, 4 }, { 3, 6 }, | ||
148 | { 21, 6 }, { 6, 5 }, { 10, 4 }, { 14, 4 }, { 18, 5 }, | ||
149 | { 23, 7 }, { 2, 7 }, { 4, 6 }, { 11, 4 }, { 13, 4 }, | ||
150 | /* bitalloc_25_d - 25 entries */ | ||
151 | { 10, 3 }, { 14, 3 }, { 9, 4 }, { 15, 4 }, { 8, 5 }, | ||
152 | { 16, 5 }, { 7, 6 }, { 17, 6 }, { 0, 12 }, { 24, 12 }, | ||
153 | { 1, 12 }, { 23, 12 }, { 2, 11 }, { 22, 11 }, { 3, 10 }, | ||
154 | { 21, 10 }, { 5, 8 }, { 6, 7 }, { 18, 7 }, { 19, 8 }, | ||
155 | { 4, 9 }, { 20, 9 }, { 12, 2 }, { 11, 3 }, { 13, 3 }, | ||
156 | /* bitalloc_25_e - 25 entries */ | ||
157 | { 9, 4 }, { 15, 4 }, { 7, 5 }, { 17, 5 }, { 2, 7 }, | ||
158 | { 22, 7 }, { 5, 6 }, { 19, 6 }, { 0, 8 }, { 24, 8 }, | ||
159 | { 3, 7 }, { 11, 3 }, { 13, 3 }, { 8, 5 }, { 16, 5 }, | ||
160 | { 21, 7 }, { 1, 8 }, { 23, 8 }, { 6, 6 }, { 18, 6 }, | ||
161 | { 4, 7 }, { 20, 7 }, { 10, 4 }, { 14, 4 }, { 12, 2 }, | ||
162 | /* bitalloc_25_f - 25 entries */ | ||
163 | { 13, 3 }, { 12, 3 }, { 7, 4 }, { 17, 4 }, { 5, 5 }, | ||
164 | { 19, 5 }, { 8, 4 }, { 16, 4 }, { 4, 6 }, { 20, 6 }, | ||
165 | { 6, 5 }, { 9, 4 }, { 15, 4 }, { 18, 5 }, { 23, 8 }, | ||
166 | { 0, 10 }, { 24, 10 }, { 1, 9 }, { 3, 7 }, { 21, 7 }, | ||
167 | { 2, 8 }, { 22, 8 }, { 10, 4 }, { 14, 4 }, { 11, 4 }, | ||
168 | /* bitalloc_25_g - 25 entries */ | ||
169 | { 14, 3 }, { 17, 5 }, { 4, 7 }, { 20, 7 }, { 6, 6 }, | ||
170 | { 9, 4 }, { 12, 2 }, { 15, 4 }, { 18, 6 }, { 3, 8 }, | ||
171 | { 21, 8 }, { 5, 7 }, { 8, 5 }, { 11, 3 }, { 13, 3 }, | ||
172 | { 16, 5 }, { 19, 7 }, { 0, 10 }, { 24, 10 }, { 2, 9 }, | ||
173 | { 22, 9 }, { 1, 10 }, { 23, 10 }, { 7, 6 }, { 10, 4 }, | ||
174 | /* bitalloc_33_a - 33 entries */ | ||
175 | { 15, 3 }, { 17, 3 }, { 16, 3 }, { 21, 4 }, { 8, 6 }, | ||
176 | { 24, 6 }, { 10, 5 }, { 12, 4 }, { 20, 4 }, { 22, 5 }, | ||
177 | { 7, 7 }, { 25, 7 }, { 0, 13 }, { 32, 13 }, { 1, 13 }, | ||
178 | { 31, 13 }, { 2, 12 }, { 30, 12 }, { 3, 11 }, { 29, 11 }, | ||
179 | { 4, 10 }, { 28, 10 }, { 6, 8 }, { 26, 8 }, { 5, 9 }, | ||
180 | { 27, 9 }, { 13, 4 }, { 19, 4 }, { 14, 4 }, { 18, 4 }, | ||
181 | { 9, 6 }, { 23, 6 }, { 11, 5 }, | ||
182 | /* bitalloc_33_b - 33 entries */ | ||
183 | { 8, 5 }, { 24, 5 }, { 12, 4 }, { 16, 3 }, { 20, 4 }, | ||
184 | { 3, 7 }, { 29, 7 }, { 6, 6 }, { 9, 5 }, { 23, 5 }, | ||
185 | { 26, 6 }, { 31, 8 }, { 2, 8 }, { 4, 7 }, { 13, 4 }, | ||
186 | { 19, 4 }, { 10, 5 }, { 22, 5 }, { 14, 4 }, { 18, 4 }, | ||
187 | { 28, 7 }, { 30, 8 }, { 0, 10 }, { 32, 10 }, { 1, 9 }, | ||
188 | { 7, 6 }, { 25, 6 }, { 5, 7 }, { 27, 7 }, { 11, 5 }, | ||
189 | { 21, 5 }, { 15, 4 }, { 17, 4 }, | ||
190 | /* bitalloc_33_c - 33 entries */ | ||
191 | { 25, 5 }, { 31, 7 }, { 2, 7 }, { 4, 6 }, { 12, 4 }, | ||
192 | { 20, 4 }, { 13, 4 }, { 19, 4 }, { 8, 5 }, { 24, 5 }, | ||
193 | { 28, 6 }, { 30, 7 }, { 0, 9 }, { 32, 9 }, { 1, 8 }, | ||
194 | { 5, 6 }, { 27, 6 }, { 14, 4 }, { 18, 4 }, { 9, 5 }, | ||
195 | { 23, 5 }, { 15, 4 }, { 17, 4 }, { 10, 5 }, { 22, 5 }, | ||
196 | { 16, 4 }, { 3, 7 }, { 29, 7 }, { 6, 6 }, { 11, 5 }, | ||
197 | { 21, 5 }, { 26, 6 }, { 7, 6 }, | ||
198 | /* bitalloc_33_d - 33 entries */ | ||
199 | { 18, 3 }, { 21, 5 }, { 8, 7 }, { 24, 7 }, { 10, 6 }, | ||
200 | { 13, 4 }, { 16, 2 }, { 19, 4 }, { 22, 6 }, { 7, 8 }, | ||
201 | { 25, 8 }, { 9, 7 }, { 12, 5 }, { 15, 3 }, { 17, 3 }, | ||
202 | { 20, 5 }, { 23, 7 }, { 6, 9 }, { 26, 9 }, { 5, 10 }, | ||
203 | { 27, 10 }, { 4, 11 }, { 28, 11 }, { 3, 12 }, { 29, 12 }, | ||
204 | { 0, 14 }, { 32, 14 }, { 1, 14 }, { 31, 14 }, { 2, 13 }, | ||
205 | { 30, 13 }, { 11, 6 }, { 14, 4 }, | ||
206 | /* bitalloc_33_e - 33 entries */ | ||
207 | { 19, 4 }, { 11, 5 }, { 21, 5 }, { 15, 3 }, { 17, 3 }, | ||
208 | { 5, 7 }, { 27, 7 }, { 2, 8 }, { 30, 8 }, { 6, 7 }, | ||
209 | { 9, 6 }, { 23, 6 }, { 14, 4 }, { 16, 2 }, { 18, 4 }, | ||
210 | { 12, 5 }, { 20, 5 }, { 26, 7 }, { 3, 8 }, { 29, 8 }, | ||
211 | { 0, 9 }, { 32, 9 }, { 4, 8 }, { 7, 7 }, { 10, 6 }, | ||
212 | { 22, 6 }, { 25, 7 }, { 28, 8 }, { 1, 9 }, { 31, 9 }, | ||
213 | { 8, 7 }, { 24, 7 }, { 13, 5 }, | ||
214 | /* bitalloc_33_f - 33 entries */ | ||
215 | { 11, 4 }, { 21, 4 }, { 5, 6 }, { 27, 6 }, { 8, 5 }, | ||
216 | { 12, 4 }, { 20, 4 }, { 24, 5 }, { 4, 7 }, { 28, 7 }, | ||
217 | { 6, 6 }, { 13, 4 }, { 19, 4 }, { 14, 4 }, { 18, 4 }, | ||
218 | { 9, 5 }, { 23, 5 }, { 15, 4 }, { 17, 4 }, { 16, 4 }, | ||
219 | { 26, 6 }, { 31, 9 }, { 0, 11 }, { 32, 11 }, { 1, 10 }, | ||
220 | { 3, 8 }, { 29, 8 }, { 2, 9 }, { 30, 9 }, { 10, 5 }, | ||
221 | { 22, 5 }, { 7, 6 }, { 25, 6 }, | ||
222 | /* bitalloc_33_g - 33 entries */ | ||
223 | { 12, 4 }, { 20, 4 }, { 29, 8 }, { 1, 9 }, { 31, 9 }, | ||
224 | { 6, 7 }, { 8, 6 }, { 10, 5 }, { 22, 5 }, { 24, 6 }, | ||
225 | { 26, 7 }, { 4, 8 }, { 28, 8 }, { 15, 3 }, { 17, 3 }, | ||
226 | { 13, 4 }, { 19, 4 }, { 2, 9 }, { 30, 9 }, { 0, 10 }, | ||
227 | { 32, 10 }, { 3, 9 }, { 7, 7 }, { 9, 6 }, { 11, 5 }, | ||
228 | { 21, 5 }, { 23, 6 }, { 25, 7 }, { 5, 8 }, { 27, 8 }, | ||
229 | { 16, 3 }, { 14, 4 }, { 18, 4 }, | ||
230 | /* bitalloc_65_a - 65 entries */ | ||
231 | { 35, 4 }, { 30, 4 }, { 34, 4 }, { 42, 5 }, { 23, 5 }, | ||
232 | { 31, 4 }, { 33, 4 }, { 32, 4 }, { 41, 5 }, { 19, 6 }, | ||
233 | { 45, 6 }, { 16, 7 }, { 48, 7 }, { 20, 6 }, { 24, 5 }, | ||
234 | { 40, 5 }, { 44, 6 }, { 14, 8 }, { 50, 8 }, { 57, 11 }, | ||
235 | { 4, 13 }, { 60, 13 }, { 6, 12 }, { 58, 12 }, { 3, 14 }, | ||
236 | { 61, 14 }, { 2, 15 }, { 62, 15 }, { 0, 16 }, { 64, 16 }, | ||
237 | { 1, 16 }, { 63, 16 }, { 8, 11 }, { 12, 9 }, { 52, 9 }, | ||
238 | { 10, 10 }, { 54, 10 }, { 25, 5 }, { 39, 5 }, { 17, 7 }, | ||
239 | { 47, 7 }, { 21, 6 }, { 26, 5 }, { 38, 5 }, { 43, 6 }, | ||
240 | { 15, 8 }, { 49, 8 }, { 18, 7 }, { 27, 5 }, { 37, 5 }, | ||
241 | { 28, 5 }, { 36, 5 }, { 46, 7 }, { 56, 11 }, { 5, 13 }, | ||
242 | { 59, 13 }, { 7, 12 }, { 9, 11 }, { 55, 11 }, { 13, 9 }, | ||
243 | { 51, 9 }, { 11, 10 }, { 53, 10 }, { 22, 6 }, { 29, 5 }, | ||
244 | /* bitalloc_65_b - 65 entries */ | ||
245 | { 48, 6 }, { 3, 9 }, { 61, 9 }, { 6, 8 }, { 11, 7 }, | ||
246 | { 53, 7 }, { 58, 8 }, { 7, 8 }, { 17, 6 }, { 31, 4 }, | ||
247 | { 33, 4 }, { 24, 5 }, { 40, 5 }, { 32, 4 }, { 47, 6 }, | ||
248 | { 18, 6 }, { 25, 5 }, { 39, 5 }, { 46, 6 }, { 57, 8 }, | ||
249 | { 63, 10 }, { 2, 10 }, { 4, 9 }, { 12, 7 }, { 52, 7 }, | ||
250 | { 13, 7 }, { 19, 6 }, { 26, 5 }, { 38, 5 }, { 45, 6 }, | ||
251 | { 51, 7 }, { 8, 8 }, { 56, 8 }, { 27, 5 }, { 37, 5 }, | ||
252 | { 20, 6 }, { 44, 6 }, { 60, 9 }, { 62, 10 }, { 0, 12 }, | ||
253 | { 64, 12 }, { 1, 11 }, { 5, 9 }, { 59, 9 }, { 14, 7 }, | ||
254 | { 50, 7 }, { 9, 8 }, { 55, 8 }, { 28, 5 }, { 36, 5 }, | ||
255 | { 21, 6 }, { 43, 6 }, { 29, 5 }, { 35, 5 }, { 15, 7 }, | ||
256 | { 49, 7 }, { 22, 6 }, { 42, 6 }, { 10, 8 }, { 54, 8 }, | ||
257 | { 16, 7 }, { 30, 5 }, { 34, 5 }, { 23, 6 }, { 41, 6 }, | ||
258 | /* bitalloc_65_c - 65 entries */ | ||
259 | { 23, 5 }, { 41, 5 }, { 50, 6 }, { 8, 7 }, { 56, 7 }, | ||
260 | { 24, 5 }, { 40, 5 }, { 15, 6 }, { 49, 6 }, { 25, 5 }, | ||
261 | { 39, 5 }, { 16, 6 }, { 48, 6 }, { 26, 5 }, { 38, 5 }, | ||
262 | { 60, 8 }, { 5, 8 }, { 9, 7 }, { 55, 7 }, { 10, 7 }, | ||
263 | { 27, 5 }, { 37, 5 }, { 17, 6 }, { 47, 6 }, { 28, 5 }, | ||
264 | { 36, 5 }, { 54, 7 }, { 59, 8 }, { 62, 9 }, { 0, 11 }, | ||
265 | { 64, 11 }, { 1, 10 }, { 18, 6 }, { 29, 5 }, { 35, 5 }, | ||
266 | { 46, 6 }, { 11, 7 }, { 53, 7 }, { 19, 6 }, { 45, 6 }, | ||
267 | { 30, 5 }, { 34, 5 }, { 31, 5 }, { 33, 5 }, { 6, 8 }, | ||
268 | { 58, 8 }, { 12, 7 }, { 20, 6 }, { 44, 6 }, { 52, 7 }, | ||
269 | { 3, 9 }, { 61, 9 }, { 7, 8 }, { 32, 5 }, { 21, 6 }, | ||
270 | { 43, 6 }, { 13, 7 }, { 51, 7 }, { 22, 6 }, { 42, 6 }, | ||
271 | { 57, 8 }, { 63, 10 }, { 2, 10 }, { 4, 9 }, { 14, 7 }, | ||
272 | /* bitalloc_65_d - 65 entries */ | ||
273 | { 31, 3 }, { 33, 3 }, { 48, 8 }, { 11, 10 }, { 53, 10 }, | ||
274 | { 14, 9 }, { 50, 9 }, { 9, 11 }, { 55, 11 }, { 12, 10 }, | ||
275 | { 17, 8 }, { 20, 7 }, { 44, 7 }, { 23, 6 }, { 41, 6 }, | ||
276 | { 26, 5 }, { 38, 5 }, { 29, 4 }, { 35, 4 }, { 32, 3 }, | ||
277 | { 47, 8 }, { 52, 10 }, { 60, 13 }, { 3, 14 }, { 61, 14 }, | ||
278 | { 7, 12 }, { 57, 12 }, { 5, 13 }, { 59, 13 }, { 15, 9 }, | ||
279 | { 18, 8 }, { 46, 8 }, { 21, 7 }, { 43, 7 }, { 24, 6 }, | ||
280 | { 40, 6 }, { 27, 5 }, { 37, 5 }, { 30, 4 }, { 34, 4 }, | ||
281 | { 49, 9 }, { 10, 11 }, { 54, 11 }, { 13, 10 }, { 51, 10 }, | ||
282 | { 8, 12 }, { 56, 12 }, { 0, 15 }, { 64, 15 }, { 1, 15 }, | ||
283 | { 63, 15 }, { 2, 15 }, { 62, 15 }, { 4, 14 }, { 6, 13 }, | ||
284 | { 58, 13 }, { 16, 9 }, { 19, 8 }, { 45, 8 }, { 22, 7 }, | ||
285 | { 42, 7 }, { 25, 6 }, { 39, 6 }, { 28, 5 }, { 36, 5 }, | ||
286 | /* bitalloc_65_e - 65 entries */ | ||
287 | { 33, 3 }, { 21, 6 }, { 43, 6 }, { 26, 5 }, { 38, 5 }, | ||
288 | { 16, 7 }, { 48, 7 }, { 22, 6 }, { 42, 6 }, { 10, 8 }, | ||
289 | { 54, 8 }, { 4, 9 }, { 60, 9 }, { 11, 8 }, { 27, 5 }, | ||
290 | { 37, 5 }, { 17, 7 }, { 47, 7 }, { 23, 6 }, { 30, 4 }, | ||
291 | { 34, 4 }, { 32, 3 }, { 41, 6 }, { 53, 8 }, { 5, 9 }, | ||
292 | { 59, 9 }, { 18, 7 }, { 46, 7 }, { 12, 8 }, { 52, 8 }, | ||
293 | { 24, 6 }, { 28, 5 }, { 36, 5 }, { 40, 6 }, { 6, 9 }, | ||
294 | { 58, 9 }, { 13, 8 }, { 19, 7 }, { 45, 7 }, { 51, 8 }, | ||
295 | { 0, 10 }, { 64, 10 }, { 7, 9 }, { 57, 9 }, { 1, 10 }, | ||
296 | { 63, 10 }, { 14, 8 }, { 50, 8 }, { 8, 9 }, { 56, 9 }, | ||
297 | { 20, 7 }, { 44, 7 }, { 25, 6 }, { 39, 6 }, { 15, 8 }, | ||
298 | { 49, 8 }, { 2, 10 }, { 62, 10 }, { 9, 9 }, { 55, 9 }, | ||
299 | { 3, 10 }, { 61, 10 }, { 29, 5 }, { 35, 5 }, { 31, 4 }, | ||
300 | /* bitalloc_65_f - 65 entries */ | ||
301 | { 28, 4 }, { 36, 4 }, { 26, 5 }, { 38, 5 }, { 24, 6 }, | ||
302 | { 40, 6 }, { 22, 7 }, { 42, 7 }, { 20, 8 }, { 44, 8 }, | ||
303 | { 18, 9 }, { 46, 9 }, { 48, 10 }, { 50, 11 }, { 12, 12 }, | ||
304 | { 52, 12 }, { 0, 14 }, { 64, 14 }, { 1, 14 }, { 63, 14 }, | ||
305 | { 10, 13 }, { 54, 13 }, { 2, 14 }, { 62, 14 }, { 3, 14 }, | ||
306 | { 61, 14 }, { 4, 14 }, { 60, 14 }, { 5, 14 }, { 59, 14 }, | ||
307 | { 6, 14 }, { 58, 14 }, { 7, 14 }, { 57, 14 }, { 8, 14 }, | ||
308 | { 56, 14 }, { 11, 13 }, { 15, 11 }, { 31, 3 }, { 33, 3 }, | ||
309 | { 29, 4 }, { 35, 4 }, { 27, 5 }, { 37, 5 }, { 25, 6 }, | ||
310 | { 39, 6 }, { 23, 7 }, { 41, 7 }, { 21, 8 }, { 43, 8 }, | ||
311 | { 19, 9 }, { 45, 9 }, { 17, 10 }, { 47, 10 }, { 49, 11 }, | ||
312 | { 13, 12 }, { 51, 12 }, { 53, 13 }, { 9, 14 }, { 55, 14 }, | ||
313 | { 14, 12 }, { 16, 11 }, { 32, 3 }, { 30, 4 }, { 34, 4 }, | ||
314 | /* bitalloc_65_g - 65 entries */ | ||
315 | { 36, 4 }, { 40, 5 }, { 44, 6 }, { 48, 7 }, { 12, 8 }, | ||
316 | { 52, 8 }, { 8, 9 }, { 56, 9 }, { 4, 10 }, { 60, 10 }, | ||
317 | { 0, 11 }, { 64, 11 }, { 5, 10 }, { 17, 7 }, { 21, 6 }, | ||
318 | { 25, 5 }, { 29, 4 }, { 35, 4 }, { 39, 5 }, { 43, 6 }, | ||
319 | { 47, 7 }, { 13, 8 }, { 51, 8 }, { 30, 4 }, { 9, 9 }, | ||
320 | { 55, 9 }, { 59, 10 }, { 1, 11 }, { 63, 11 }, { 10, 9 }, | ||
321 | { 18, 7 }, { 22, 6 }, { 26, 5 }, { 34, 4 }, { 38, 5 }, | ||
322 | { 42, 6 }, { 46, 7 }, { 14, 8 }, { 50, 8 }, { 31, 4 }, | ||
323 | { 33, 4 }, { 54, 9 }, { 6, 10 }, { 58, 10 }, { 2, 11 }, | ||
324 | { 62, 11 }, { 7, 10 }, { 11, 9 }, { 19, 7 }, { 23, 6 }, | ||
325 | { 27, 5 }, { 37, 5 }, { 41, 6 }, { 45, 7 }, { 15, 8 }, | ||
326 | { 49, 8 }, { 32, 4 }, { 53, 9 }, { 57, 10 }, { 3, 11 }, | ||
327 | { 61, 11 }, { 16, 8 }, { 20, 7 }, { 24, 6 }, { 28, 5 }, | ||
328 | /* bitalloc_129_a - 129 entries */ | ||
329 | { 66, 4 }, { 31, 8 }, { 97, 8 }, { 19, 9 }, { 109, 9 }, | ||
330 | { 6, 10 }, { 122, 10 }, { 7, 10 }, { 121, 10 }, { 52, 6 }, | ||
331 | { 76, 6 }, { 43, 7 }, { 85, 7 }, { 59, 5 }, { 69, 5 }, | ||
332 | { 32, 8 }, { 96, 8 }, { 20, 9 }, { 108, 9 }, { 33, 8 }, | ||
333 | { 53, 6 }, { 75, 6 }, { 95, 8 }, { 8, 10 }, { 120, 10 }, | ||
334 | { 21, 9 }, { 44, 7 }, { 84, 7 }, { 107, 9 }, { 9, 10 }, | ||
335 | { 119, 10 }, { 34, 8 }, { 94, 8 }, { 22, 9 }, { 106, 9 }, | ||
336 | { 45, 7 }, { 54, 6 }, { 74, 6 }, { 83, 7 }, { 10, 10 }, | ||
337 | { 118, 10 }, { 23, 9 }, { 35, 8 }, { 93, 8 }, { 105, 9 }, | ||
338 | { 11, 10 }, { 117, 10 }, { 46, 7 }, { 60, 5 }, { 68, 5 }, | ||
339 | { 82, 7 }, { 24, 9 }, { 104, 9 }, { 36, 8 }, { 55, 6 }, | ||
340 | { 73, 6 }, { 92, 8 }, { 12, 10 }, { 116, 10 }, { 25, 9 }, | ||
341 | { 47, 7 }, { 81, 7 }, { 37, 8 }, { 91, 8 }, { 103, 9 }, | ||
342 | { 13, 10 }, { 115, 10 }, { 26, 9 }, { 102, 9 }, { 48, 7 }, | ||
343 | { 64, 4 }, { 63, 4 }, { 65, 4 }, { 56, 6 }, { 72, 6 }, | ||
344 | { 61, 5 }, { 67, 5 }, { 80, 7 }, { 38, 8 }, { 90, 8 }, | ||
345 | { 0, 11 }, { 128, 11 }, { 14, 10 }, { 114, 10 }, { 1, 11 }, | ||
346 | { 127, 11 }, { 27, 9 }, { 101, 9 }, { 49, 7 }, { 79, 7 }, | ||
347 | { 39, 8 }, { 89, 8 }, { 57, 6 }, { 71, 6 }, { 15, 10 }, | ||
348 | { 113, 10 }, { 28, 9 }, { 100, 9 }, { 2, 11 }, { 126, 11 }, | ||
349 | { 16, 10 }, { 40, 8 }, { 88, 8 }, { 50, 7 }, { 78, 7 }, | ||
350 | { 112, 10 }, { 3, 11 }, { 125, 11 }, { 29, 9 }, { 99, 9 }, | ||
351 | { 17, 10 }, { 111, 10 }, { 41, 8 }, { 87, 8 }, { 58, 6 }, | ||
352 | { 4, 11 }, { 124, 11 }, { 18, 10 }, { 30, 9 }, { 98, 9 }, | ||
353 | { 110, 10 }, { 5, 11 }, { 123, 11 }, { 51, 7 }, { 70, 6 }, | ||
354 | { 77, 7 }, { 42, 8 }, { 86, 8 }, { 62, 5 }, | ||
355 | /* bitalloc_129_b - 129 entries */ | ||
356 | { 67, 5 }, { 21, 8 }, { 107, 8 }, { 33, 7 }, { 95, 7 }, | ||
357 | { 13, 9 }, { 115, 9 }, { 22, 8 }, { 47, 6 }, { 81, 6 }, | ||
358 | { 62, 5 }, { 66, 5 }, { 34, 7 }, { 94, 7 }, { 48, 6 }, | ||
359 | { 63, 5 }, { 65, 5 }, { 80, 6 }, { 106, 8 }, { 121, 10 }, | ||
360 | { 127, 12 }, { 2, 12 }, { 4, 11 }, { 14, 9 }, { 23, 8 }, | ||
361 | { 105, 8 }, { 35, 7 }, { 93, 7 }, { 49, 6 }, { 64, 5 }, | ||
362 | { 79, 6 }, { 114, 9 }, { 8, 10 }, { 120, 10 }, { 24, 8 }, | ||
363 | { 36, 7 }, { 50, 6 }, { 78, 6 }, { 92, 7 }, { 104, 8 }, | ||
364 | { 15, 9 }, { 113, 9 }, { 51, 6 }, { 77, 6 }, { 37, 7 }, | ||
365 | { 91, 7 }, { 25, 8 }, { 103, 8 }, { 38, 7 }, { 52, 6 }, | ||
366 | { 76, 6 }, { 90, 7 }, { 16, 9 }, { 112, 9 }, { 26, 8 }, | ||
367 | { 53, 6 }, { 75, 6 }, { 102, 8 }, { 124, 11 }, { 5, 11 }, | ||
368 | { 9, 10 }, { 119, 10 }, { 10, 10 }, { 39, 7 }, { 89, 7 }, | ||
369 | { 27, 8 }, { 101, 8 }, { 54, 6 }, { 74, 6 }, { 40, 7 }, | ||
370 | { 88, 7 }, { 17, 9 }, { 111, 9 }, { 28, 8 }, { 100, 8 }, | ||
371 | { 118, 10 }, { 123, 11 }, { 126, 12 }, { 0, 14 }, { 128, 14 }, | ||
372 | { 1, 13 }, { 18, 9 }, { 55, 6 }, { 73, 6 }, { 41, 7 }, | ||
373 | { 87, 7 }, { 56, 6 }, { 72, 6 }, { 29, 8 }, { 99, 8 }, | ||
374 | { 42, 7 }, { 86, 7 }, { 110, 9 }, { 11, 10 }, { 117, 10 }, | ||
375 | { 19, 9 }, { 109, 9 }, { 57, 6 }, { 71, 6 }, { 43, 7 }, | ||
376 | { 85, 7 }, { 58, 6 }, { 70, 6 }, { 30, 8 }, { 98, 8 }, | ||
377 | { 44, 7 }, { 84, 7 }, { 31, 8 }, { 97, 8 }, { 59, 6 }, | ||
378 | { 69, 6 }, { 6, 11 }, { 122, 11 }, { 12, 10 }, { 20, 9 }, | ||
379 | { 108, 9 }, { 116, 10 }, { 3, 12 }, { 125, 12 }, { 7, 11 }, | ||
380 | { 45, 7 }, { 60, 6 }, { 68, 6 }, { 83, 7 }, { 32, 8 }, | ||
381 | { 96, 8 }, { 46, 7 }, { 82, 7 }, { 61, 6 }, | ||
382 | /* bitalloc_129_c - 129 entries */ | ||
383 | { 101, 7 }, { 113, 8 }, { 120, 9 }, { 127, 11 }, { 2, 11 }, | ||
384 | { 4, 10 }, { 28, 7 }, { 100, 7 }, { 46, 6 }, { 82, 6 }, | ||
385 | { 16, 8 }, { 112, 8 }, { 29, 7 }, { 47, 6 }, { 81, 6 }, | ||
386 | { 48, 6 }, { 80, 6 }, { 99, 7 }, { 30, 7 }, { 98, 7 }, | ||
387 | { 17, 8 }, { 111, 8 }, { 49, 6 }, { 79, 6 }, { 50, 6 }, | ||
388 | { 78, 6 }, { 31, 7 }, { 97, 7 }, { 9, 9 }, { 119, 9 }, | ||
389 | { 18, 8 }, { 110, 8 }, { 124, 10 }, { 5, 10 }, { 10, 9 }, | ||
390 | { 51, 6 }, { 77, 6 }, { 32, 7 }, { 96, 7 }, { 52, 6 }, | ||
391 | { 76, 6 }, { 33, 7 }, { 95, 7 }, { 53, 6 }, { 75, 6 }, | ||
392 | { 19, 8 }, { 109, 8 }, { 34, 7 }, { 54, 6 }, { 74, 6 }, | ||
393 | { 94, 7 }, { 118, 9 }, { 123, 10 }, { 126, 11 }, { 0, 13 }, | ||
394 | { 128, 13 }, { 1, 12 }, { 20, 8 }, { 55, 6 }, { 73, 6 }, | ||
395 | { 108, 8 }, { 11, 9 }, { 117, 9 }, { 35, 7 }, { 93, 7 }, | ||
396 | { 36, 7 }, { 56, 6 }, { 72, 6 }, { 92, 7 }, { 21, 8 }, | ||
397 | { 107, 8 }, { 57, 6 }, { 71, 6 }, { 37, 7 }, { 91, 7 }, | ||
398 | { 58, 6 }, { 70, 6 }, { 22, 8 }, { 106, 8 }, { 38, 7 }, | ||
399 | { 59, 6 }, { 69, 6 }, { 90, 7 }, { 12, 9 }, { 116, 9 }, | ||
400 | { 23, 8 }, { 60, 6 }, { 68, 6 }, { 39, 7 }, { 89, 7 }, | ||
401 | { 61, 6 }, { 67, 6 }, { 105, 8 }, { 6, 10 }, { 122, 10 }, | ||
402 | { 13, 9 }, { 40, 7 }, { 62, 6 }, { 66, 6 }, { 88, 7 }, | ||
403 | { 24, 8 }, { 104, 8 }, { 63, 6 }, { 65, 6 }, { 41, 7 }, | ||
404 | { 87, 7 }, { 115, 9 }, { 3, 11 }, { 125, 11 }, { 7, 10 }, | ||
405 | { 25, 8 }, { 42, 7 }, { 64, 6 }, { 86, 7 }, { 103, 8 }, | ||
406 | { 14, 9 }, { 114, 9 }, { 43, 7 }, { 85, 7 }, { 26, 8 }, | ||
407 | { 102, 8 }, { 44, 7 }, { 84, 7 }, { 121, 10 }, { 8, 10 }, | ||
408 | { 15, 9 }, { 27, 8 }, { 45, 7 }, { 83, 7 }, | ||
409 | /* bitalloc_129_d - 129 entries */ | ||
410 | { 72, 5 }, { 83, 7 }, { 34, 9 }, { 94, 9 }, { 40, 8 }, | ||
411 | { 51, 6 }, { 62, 4 }, { 66, 4 }, { 77, 6 }, { 88, 8 }, | ||
412 | { 18, 12 }, { 110, 12 }, { 9, 14 }, { 119, 14 }, { 14, 13 }, | ||
413 | { 19, 12 }, { 29, 10 }, { 99, 10 }, { 24, 11 }, { 104, 11 }, | ||
414 | { 46, 7 }, { 57, 5 }, { 71, 5 }, { 82, 7 }, { 35, 9 }, | ||
415 | { 93, 9 }, { 41, 8 }, { 52, 6 }, { 63, 4 }, { 65, 4 }, | ||
416 | { 76, 6 }, { 87, 8 }, { 30, 10 }, { 98, 10 }, { 109, 12 }, | ||
417 | { 114, 13 }, { 6, 15 }, { 122, 15 }, { 10, 14 }, { 25, 11 }, | ||
418 | { 103, 11 }, { 15, 13 }, { 113, 13 }, { 20, 12 }, { 47, 7 }, | ||
419 | { 58, 5 }, { 70, 5 }, { 81, 7 }, { 36, 9 }, { 92, 9 }, | ||
420 | { 42, 8 }, { 53, 6 }, { 64, 4 }, { 75, 6 }, { 86, 8 }, | ||
421 | { 31, 10 }, { 97, 10 }, { 108, 12 }, { 118, 14 }, { 7, 15 }, | ||
422 | { 121, 15 }, { 0, 16 }, { 128, 16 }, { 1, 16 }, { 127, 16 }, | ||
423 | { 2, 16 }, { 126, 16 }, { 3, 16 }, { 125, 16 }, { 26, 11 }, | ||
424 | { 102, 11 }, { 11, 14 }, { 117, 14 }, { 16, 13 }, { 21, 12 }, | ||
425 | { 48, 7 }, { 59, 5 }, { 69, 5 }, { 80, 7 }, { 37, 9 }, | ||
426 | { 91, 9 }, { 43, 8 }, { 54, 6 }, { 74, 6 }, { 85, 8 }, | ||
427 | { 32, 10 }, { 96, 10 }, { 107, 12 }, { 112, 13 }, { 4, 16 }, | ||
428 | { 124, 16 }, { 8, 15 }, { 12, 14 }, { 27, 11 }, { 101, 11 }, | ||
429 | { 22, 12 }, { 106, 12 }, { 49, 7 }, { 60, 5 }, { 68, 5 }, | ||
430 | { 79, 7 }, { 38, 9 }, { 90, 9 }, { 44, 8 }, { 55, 6 }, | ||
431 | { 73, 6 }, { 84, 8 }, { 33, 10 }, { 95, 10 }, { 116, 14 }, | ||
432 | { 120, 15 }, { 5, 16 }, { 123, 16 }, { 17, 13 }, { 111, 13 }, | ||
433 | { 13, 14 }, { 115, 14 }, { 28, 11 }, { 100, 11 }, { 23, 12 }, | ||
434 | { 105, 12 }, { 50, 7 }, { 61, 5 }, { 67, 5 }, { 78, 7 }, | ||
435 | { 39, 9 }, { 89, 9 }, { 45, 8 }, { 56, 6 }, | ||
436 | /* bitalloc_129_e - 129 entries */ | ||
437 | { 70, 5 }, { 59, 5 }, { 69, 5 }, { 60, 5 }, { 68, 5 }, | ||
438 | { 37, 7 }, { 91, 7 }, { 45, 6 }, { 61, 5 }, { 67, 5 }, | ||
439 | { 62, 5 }, { 66, 5 }, { 63, 5 }, { 65, 5 }, { 64, 5 }, | ||
440 | { 83, 6 }, { 97, 8 }, { 102, 9 }, { 18, 11 }, { 110, 11 }, | ||
441 | { 22, 10 }, { 38, 7 }, { 46, 6 }, { 82, 6 }, { 90, 7 }, | ||
442 | { 32, 8 }, { 96, 8 }, { 47, 6 }, { 81, 6 }, { 106, 10 }, | ||
443 | { 15, 12 }, { 113, 12 }, { 19, 11 }, { 27, 9 }, { 101, 9 }, | ||
444 | { 23, 10 }, { 105, 10 }, { 39, 7 }, { 89, 7 }, { 33, 8 }, | ||
445 | { 95, 8 }, { 48, 6 }, { 80, 6 }, { 49, 6 }, { 79, 6 }, | ||
446 | { 40, 7 }, { 88, 7 }, { 28, 9 }, { 100, 9 }, { 109, 11 }, | ||
447 | { 6, 15 }, { 122, 15 }, { 9, 14 }, { 12, 13 }, { 116, 13 }, | ||
448 | { 119, 14 }, { 0, 16 }, { 4, 16 }, { 3, 16 }, { 2, 16 }, | ||
449 | { 24, 10 }, { 104, 10 }, { 16, 12 }, { 112, 12 }, { 20, 11 }, | ||
450 | { 34, 8 }, { 94, 8 }, { 50, 6 }, { 78, 6 }, { 41, 7 }, | ||
451 | { 87, 7 }, { 51, 6 }, { 77, 6 }, { 52, 6 }, { 76, 6 }, | ||
452 | { 29, 9 }, { 99, 9 }, { 35, 8 }, { 42, 7 }, { 86, 7 }, | ||
453 | { 93, 8 }, { 108, 11 }, { 1, 16 }, { 128, 16 }, { 126, 16 }, | ||
454 | { 127, 16 }, { 124, 16 }, { 125, 16 }, { 7, 15 }, { 13, 13 }, | ||
455 | { 115, 13 }, { 10, 14 }, { 118, 14 }, { 25, 10 }, { 103, 10 }, | ||
456 | { 17, 12 }, { 111, 12 }, { 21, 11 }, { 53, 6 }, { 75, 6 }, | ||
457 | { 54, 6 }, { 74, 6 }, { 43, 7 }, { 85, 7 }, { 55, 6 }, | ||
458 | { 73, 6 }, { 30, 9 }, { 98, 9 }, { 36, 8 }, { 92, 8 }, | ||
459 | { 107, 11 }, { 121, 15 }, { 5, 16 }, { 123, 16 }, { 8, 15 }, | ||
460 | { 120, 15 }, { 14, 13 }, { 114, 13 }, { 11, 14 }, { 117, 14 }, | ||
461 | { 26, 10 }, { 31, 9 }, { 56, 6 }, { 72, 6 }, { 57, 6 }, | ||
462 | { 71, 6 }, { 44, 7 }, { 84, 7 }, { 58, 6 }, | ||
463 | /* bitalloc_129_f - 129 entries */ | ||
464 | { 42, 6 }, { 86, 6 }, { 43, 6 }, { 85, 6 }, { 107, 8 }, | ||
465 | { 114, 9 }, { 9, 10 }, { 119, 10 }, { 30, 7 }, { 98, 7 }, | ||
466 | { 31, 7 }, { 44, 6 }, { 84, 6 }, { 45, 6 }, { 83, 6 }, | ||
467 | { 97, 7 }, { 22, 8 }, { 106, 8 }, { 46, 6 }, { 82, 6 }, | ||
468 | { 32, 7 }, { 96, 7 }, { 47, 6 }, { 81, 6 }, { 15, 9 }, | ||
469 | { 113, 9 }, { 23, 8 }, { 105, 8 }, { 10, 10 }, { 118, 10 }, | ||
470 | { 16, 9 }, { 48, 6 }, { 80, 6 }, { 33, 7 }, { 95, 7 }, | ||
471 | { 49, 6 }, { 79, 6 }, { 50, 6 }, { 78, 6 }, { 112, 9 }, | ||
472 | { 3, 12 }, { 125, 12 }, { 6, 11 }, { 122, 11 }, { 7, 11 }, | ||
473 | { 24, 8 }, { 34, 7 }, { 51, 6 }, { 77, 6 }, { 94, 7 }, | ||
474 | { 104, 8 }, { 11, 10 }, { 117, 10 }, { 17, 9 }, { 52, 6 }, | ||
475 | { 76, 6 }, { 53, 6 }, { 75, 6 }, { 35, 7 }, { 93, 7 }, | ||
476 | { 54, 6 }, { 74, 6 }, { 55, 6 }, { 73, 6 }, { 25, 8 }, | ||
477 | { 103, 8 }, { 36, 7 }, { 56, 6 }, { 72, 6 }, { 57, 6 }, | ||
478 | { 71, 6 }, { 92, 7 }, { 111, 9 }, { 121, 11 }, { 127, 13 }, | ||
479 | { 2, 13 }, { 4, 12 }, { 12, 10 }, { 18, 9 }, { 110, 9 }, | ||
480 | { 58, 6 }, { 70, 6 }, { 59, 6 }, { 69, 6 }, { 60, 6 }, | ||
481 | { 68, 6 }, { 61, 6 }, { 67, 6 }, { 62, 6 }, { 66, 6 }, | ||
482 | { 26, 8 }, { 102, 8 }, { 37, 7 }, { 63, 6 }, { 65, 6 }, | ||
483 | { 64, 6 }, { 91, 7 }, { 38, 7 }, { 90, 7 }, { 27, 8 }, | ||
484 | { 101, 8 }, { 116, 10 }, { 124, 12 }, { 126, 13 }, { 0, 15 }, | ||
485 | { 128, 15 }, { 1, 14 }, { 8, 11 }, { 19, 9 }, { 109, 9 }, | ||
486 | { 13, 10 }, { 115, 10 }, { 39, 7 }, { 89, 7 }, { 28, 8 }, | ||
487 | { 100, 8 }, { 40, 7 }, { 88, 7 }, { 41, 7 }, { 87, 7 }, | ||
488 | { 20, 9 }, { 108, 9 }, { 29, 8 }, { 99, 8 }, { 120, 11 }, | ||
489 | { 5, 12 }, { 123, 12 }, { 14, 10 }, { 21, 9 }, | ||
490 | /* bitalloc_129_g - 129 entries */ | ||
491 | { 64, 4 }, { 88, 7 }, { 9, 11 }, { 119, 11 }, { 17, 10 }, | ||
492 | { 25, 9 }, { 33, 8 }, { 41, 7 }, { 87, 7 }, { 49, 6 }, | ||
493 | { 79, 6 }, { 57, 5 }, { 71, 5 }, { 95, 8 }, { 103, 9 }, | ||
494 | { 111, 10 }, { 2, 12 }, { 126, 12 }, { 10, 11 }, { 18, 10 }, | ||
495 | { 110, 10 }, { 26, 9 }, { 34, 8 }, { 42, 7 }, { 86, 7 }, | ||
496 | { 50, 6 }, { 78, 6 }, { 58, 5 }, { 70, 5 }, { 94, 8 }, | ||
497 | { 102, 9 }, { 118, 11 }, { 3, 12 }, { 125, 12 }, { 11, 11 }, | ||
498 | { 117, 11 }, { 19, 10 }, { 109, 10 }, { 27, 9 }, { 35, 8 }, | ||
499 | { 43, 7 }, { 85, 7 }, { 51, 6 }, { 77, 6 }, { 59, 5 }, | ||
500 | { 69, 5 }, { 93, 8 }, { 101, 9 }, { 4, 12 }, { 124, 12 }, | ||
501 | { 12, 11 }, { 20, 10 }, { 28, 9 }, { 100, 9 }, { 36, 8 }, | ||
502 | { 44, 7 }, { 84, 7 }, { 52, 6 }, { 76, 6 }, { 60, 5 }, | ||
503 | { 68, 5 }, { 92, 8 }, { 108, 10 }, { 116, 11 }, { 5, 12 }, | ||
504 | { 123, 12 }, { 13, 11 }, { 115, 11 }, { 21, 10 }, { 29, 9 }, | ||
505 | { 99, 9 }, { 37, 8 }, { 45, 7 }, { 83, 7 }, { 53, 6 }, | ||
506 | { 75, 6 }, { 61, 5 }, { 67, 5 }, { 91, 8 }, { 107, 10 }, | ||
507 | { 6, 12 }, { 122, 12 }, { 14, 11 }, { 22, 10 }, { 106, 10 }, | ||
508 | { 30, 9 }, { 98, 9 }, { 38, 8 }, { 46, 7 }, { 82, 7 }, | ||
509 | { 54, 6 }, { 74, 6 }, { 62, 5 }, { 66, 5 }, { 90, 8 }, | ||
510 | { 114, 11 }, { 7, 12 }, { 121, 12 }, { 15, 11 }, { 113, 11 }, | ||
511 | { 23, 10 }, { 105, 10 }, { 31, 9 }, { 97, 9 }, { 39, 8 }, | ||
512 | { 47, 7 }, { 81, 7 }, { 55, 6 }, { 73, 6 }, { 63, 5 }, | ||
513 | { 65, 5 }, { 89, 8 }, { 0, 13 }, { 128, 13 }, { 8, 12 }, | ||
514 | { 16, 11 }, { 24, 10 }, { 32, 9 }, { 96, 9 }, { 104, 10 }, | ||
515 | { 112, 11 }, { 120, 12 }, { 1, 13 }, { 127, 13 }, { 40, 8 }, | ||
516 | { 48, 7 }, { 80, 7 }, { 56, 6 }, { 72, 6 }, | ||
517 | /* bit_alloc_12[0] - 12 entries */ | ||
518 | { 0, 1 }, { 1, 2 }, { 2, 3 }, { 3, 4 }, { 4, 5 }, | ||
519 | { 5, 6 }, { 11, 9 }, { 10, 9 }, { 9, 9 }, { 8, 9 }, | ||
520 | { 7, 8 }, { 6, 8 }, | ||
521 | /* bit_alloc_12[1] - 12 entries */ | ||
522 | { 1, 2 }, { 2, 3 }, { 4, 5 }, { 11, 7 }, { 10, 7 }, | ||
523 | { 9, 7 }, { 8, 7 }, { 7, 7 }, { 6, 7 }, { 5, 6 }, | ||
524 | { 3, 5 }, { 0, 1 }, | ||
525 | /* bit_alloc_12[2] - 12 entries */ | ||
526 | { 0, 2 }, { 4, 3 }, { 7, 4 }, { 11, 7 }, { 10, 7 }, | ||
527 | { 9, 6 }, { 8, 5 }, { 3, 3 }, { 2, 3 }, { 6, 4 }, | ||
528 | { 5, 4 }, { 1, 3 }, | ||
529 | /* bit_alloc_12[3] - 12 entries */ | ||
530 | { 2, 2 }, { 3, 3 }, { 4, 4 }, { 5, 5 }, { 6, 6 }, | ||
531 | { 7, 7 }, { 8, 8 }, { 9, 9 }, { 11, 10 }, { 10, 10 }, | ||
532 | { 1, 2 }, { 0, 2 }, | ||
533 | /* bit_alloc_12[4] - 12 entries */ | ||
534 | { 1, 2 }, { 2, 3 }, { 3, 4 }, { 4, 5 }, { 9, 8 }, | ||
535 | { 8, 8 }, { 6, 7 }, { 7, 8 }, { 11, 9 }, { 10, 9 }, | ||
536 | { 5, 7 }, { 0, 1 }, | ||
537 | /* scale_factor[0] - 129 entries */ | ||
538 | { 66, 3 }, { 69, 5 }, { 55, 8 }, { 73, 8 }, { 40, 13 }, | ||
539 | { 88, 13 }, { 41, 13 }, { 87, 13 }, { 42, 13 }, { 86, 13 }, | ||
540 | { 43, 13 }, { 85, 13 }, { 44, 13 }, { 84, 13 }, { 45, 13 }, | ||
541 | { 83, 13 }, { 46, 13 }, { 82, 13 }, { 47, 13 }, { 81, 13 }, | ||
542 | { 51, 11 }, { 77, 11 }, { 48, 13 }, { 80, 13 }, { 50, 12 }, | ||
543 | { 78, 12 }, { 49, 13 }, { 79, 13 }, { 54, 9 }, { 74, 9 }, | ||
544 | { 58, 6 }, { 61, 4 }, { 64, 2 }, { 67, 4 }, { 70, 6 }, | ||
545 | { 57, 7 }, { 71, 7 }, { 60, 5 }, { 63, 3 }, { 65, 3 }, | ||
546 | { 68, 5 }, { 56, 8 }, { 72, 8 }, { 53, 10 }, { 75, 10 }, | ||
547 | { 52, 11 }, { 76, 11 }, { 0, 14 }, { 128, 14 }, { 1, 14 }, | ||
548 | { 127, 14 }, { 2, 14 }, { 126, 14 }, { 3, 14 }, { 125, 14 }, | ||
549 | { 4, 14 }, { 124, 14 }, { 5, 14 }, { 123, 14 }, { 6, 14 }, | ||
550 | { 122, 14 }, { 7, 14 }, { 121, 14 }, { 8, 14 }, { 120, 14 }, | ||
551 | { 9, 14 }, { 119, 14 }, { 10, 14 }, { 118, 14 }, { 11, 14 }, | ||
552 | { 117, 14 }, { 12, 14 }, { 116, 14 }, { 13, 14 }, { 115, 14 }, | ||
553 | { 14, 14 }, { 114, 14 }, { 15, 14 }, { 113, 14 }, { 16, 14 }, | ||
554 | { 112, 14 }, { 17, 14 }, { 111, 14 }, { 18, 14 }, { 110, 14 }, | ||
555 | { 19, 14 }, { 109, 14 }, { 20, 14 }, { 108, 14 }, { 21, 14 }, | ||
556 | { 107, 14 }, { 22, 14 }, { 106, 14 }, { 23, 14 }, { 105, 14 }, | ||
557 | { 24, 14 }, { 104, 14 }, { 25, 14 }, { 103, 14 }, { 26, 14 }, | ||
558 | { 102, 14 }, { 27, 14 }, { 101, 14 }, { 28, 14 }, { 100, 14 }, | ||
559 | { 29, 14 }, { 99, 14 }, { 30, 14 }, { 98, 14 }, { 31, 14 }, | ||
560 | { 97, 14 }, { 32, 14 }, { 96, 14 }, { 33, 14 }, { 95, 14 }, | ||
561 | { 34, 14 }, { 94, 14 }, { 35, 14 }, { 93, 14 }, { 36, 14 }, | ||
562 | { 92, 14 }, { 37, 14 }, { 91, 14 }, { 38, 14 }, { 90, 14 }, | ||
563 | { 39, 14 }, { 89, 14 }, { 59, 6 }, { 62, 4 }, | ||
564 | /* scale_factor[1] - 129 entries */ | ||
565 | { 69, 4 }, { 56, 6 }, { 72, 6 }, { 55, 7 }, { 73, 7 }, | ||
566 | { 54, 8 }, { 74, 8 }, { 75, 9 }, { 48, 14 }, { 80, 14 }, | ||
567 | { 49, 14 }, { 79, 14 }, { 50, 13 }, { 78, 13 }, { 51, 12 }, | ||
568 | { 77, 12 }, { 0, 15 }, { 128, 15 }, { 1, 15 }, { 127, 15 }, | ||
569 | { 2, 15 }, { 126, 15 }, { 3, 15 }, { 125, 15 }, { 4, 15 }, | ||
570 | { 124, 15 }, { 5, 15 }, { 123, 15 }, { 6, 15 }, { 122, 15 }, | ||
571 | { 7, 15 }, { 121, 15 }, { 8, 15 }, { 120, 15 }, { 9, 15 }, | ||
572 | { 119, 15 }, { 10, 15 }, { 118, 15 }, { 11, 15 }, { 117, 15 }, | ||
573 | { 12, 15 }, { 116, 15 }, { 13, 15 }, { 115, 15 }, { 14, 15 }, | ||
574 | { 114, 15 }, { 15, 15 }, { 113, 15 }, { 16, 15 }, { 112, 15 }, | ||
575 | { 17, 15 }, { 111, 15 }, { 18, 15 }, { 110, 15 }, { 19, 15 }, | ||
576 | { 109, 15 }, { 20, 15 }, { 108, 15 }, { 21, 15 }, { 107, 15 }, | ||
577 | { 22, 15 }, { 106, 15 }, { 23, 15 }, { 105, 15 }, { 24, 15 }, | ||
578 | { 104, 15 }, { 25, 15 }, { 103, 15 }, { 26, 15 }, { 102, 15 }, | ||
579 | { 27, 15 }, { 101, 15 }, { 28, 15 }, { 100, 15 }, { 29, 15 }, | ||
580 | { 99, 15 }, { 30, 15 }, { 98, 15 }, { 31, 15 }, { 97, 15 }, | ||
581 | { 32, 15 }, { 96, 15 }, { 33, 15 }, { 95, 15 }, { 34, 15 }, | ||
582 | { 94, 15 }, { 35, 15 }, { 93, 15 }, { 36, 15 }, { 92, 15 }, | ||
583 | { 37, 15 }, { 91, 15 }, { 38, 15 }, { 90, 15 }, { 39, 15 }, | ||
584 | { 89, 15 }, { 40, 15 }, { 88, 15 }, { 41, 15 }, { 87, 15 }, | ||
585 | { 42, 15 }, { 86, 15 }, { 43, 15 }, { 85, 15 }, { 44, 15 }, | ||
586 | { 84, 15 }, { 45, 15 }, { 83, 15 }, { 46, 15 }, { 82, 15 }, | ||
587 | { 47, 15 }, { 81, 15 }, { 52, 11 }, { 76, 11 }, { 53, 10 }, | ||
588 | { 63, 3 }, { 65, 3 }, { 64, 3 }, { 58, 5 }, { 70, 5 }, | ||
589 | { 60, 4 }, { 68, 4 }, { 61, 4 }, { 67, 4 }, { 57, 6 }, | ||
590 | { 71, 6 }, { 59, 5 }, { 62, 4 }, { 66, 4 }, | ||
591 | /* scale_factor[2] - 129 entries */ | ||
592 | { 63, 3 }, { 65, 3 }, { 46, 9 }, { 82, 9 }, { 49, 8 }, | ||
593 | { 79, 8 }, { 85, 10 }, { 38, 12 }, { 90, 12 }, { 41, 11 }, | ||
594 | { 87, 11 }, { 93, 13 }, { 33, 14 }, { 95, 14 }, { 36, 13 }, | ||
595 | { 92, 13 }, { 44, 10 }, { 52, 7 }, { 76, 7 }, { 55, 6 }, | ||
596 | { 73, 6 }, { 58, 5 }, { 70, 5 }, { 61, 4 }, { 67, 4 }, | ||
597 | { 64, 3 }, { 47, 9 }, { 81, 9 }, { 50, 8 }, { 78, 8 }, | ||
598 | { 84, 10 }, { 39, 12 }, { 89, 12 }, { 42, 11 }, { 86, 11 }, | ||
599 | { 0, 15 }, { 128, 15 }, { 1, 15 }, { 127, 15 }, { 2, 15 }, | ||
600 | { 126, 15 }, { 3, 15 }, { 125, 15 }, { 4, 15 }, { 124, 15 }, | ||
601 | { 5, 15 }, { 123, 15 }, { 6, 15 }, { 122, 15 }, { 7, 15 }, | ||
602 | { 121, 15 }, { 8, 15 }, { 120, 15 }, { 9, 15 }, { 119, 15 }, | ||
603 | { 10, 15 }, { 118, 15 }, { 11, 15 }, { 117, 15 }, { 12, 15 }, | ||
604 | { 116, 15 }, { 13, 15 }, { 115, 15 }, { 14, 15 }, { 114, 15 }, | ||
605 | { 15, 15 }, { 113, 15 }, { 16, 15 }, { 112, 15 }, { 17, 15 }, | ||
606 | { 111, 15 }, { 18, 15 }, { 110, 15 }, { 19, 15 }, { 109, 15 }, | ||
607 | { 20, 15 }, { 108, 15 }, { 21, 15 }, { 107, 15 }, { 22, 15 }, | ||
608 | { 106, 15 }, { 23, 15 }, { 105, 15 }, { 53, 7 }, { 75, 7 }, | ||
609 | { 56, 6 }, { 72, 6 }, { 59, 5 }, { 69, 5 }, { 62, 4 }, | ||
610 | { 66, 4 }, { 45, 10 }, { 83, 10 }, { 48, 9 }, { 80, 9 }, | ||
611 | { 24, 15 }, { 104, 15 }, { 25, 15 }, { 103, 15 }, { 26, 15 }, | ||
612 | { 102, 15 }, { 27, 15 }, { 101, 15 }, { 28, 15 }, { 100, 15 }, | ||
613 | { 29, 15 }, { 99, 15 }, { 30, 15 }, { 98, 15 }, { 31, 15 }, | ||
614 | { 97, 15 }, { 34, 14 }, { 94, 14 }, { 37, 13 }, { 40, 12 }, | ||
615 | { 88, 12 }, { 91, 13 }, { 32, 15 }, { 96, 15 }, { 35, 14 }, | ||
616 | { 43, 11 }, { 51, 8 }, { 77, 8 }, { 54, 7 }, { 74, 7 }, | ||
617 | { 57, 6 }, { 71, 6 }, { 60, 5 }, { 68, 5 }, | ||
618 | /* scale_factor[3] - 129 entries */ | ||
619 | { 64, 2 }, { 53, 8 }, { 75, 8 }, { 55, 7 }, { 57, 6 }, | ||
620 | { 59, 5 }, { 69, 5 }, { 71, 6 }, { 73, 7 }, { 77, 9 }, | ||
621 | { 79, 10 }, { 83, 12 }, { 42, 14 }, { 86, 14 }, { 44, 13 }, | ||
622 | { 46, 12 }, { 82, 12 }, { 48, 11 }, { 80, 11 }, { 50, 10 }, | ||
623 | { 52, 9 }, { 61, 4 }, { 67, 4 }, { 63, 3 }, { 65, 3 }, | ||
624 | { 54, 8 }, { 74, 8 }, { 56, 7 }, { 58, 6 }, { 60, 5 }, | ||
625 | { 68, 5 }, { 70, 6 }, { 72, 7 }, { 76, 9 }, { 78, 10 }, | ||
626 | { 84, 13 }, { 0, 15 }, { 128, 15 }, { 1, 15 }, { 127, 15 }, | ||
627 | { 2, 15 }, { 126, 15 }, { 3, 15 }, { 125, 15 }, { 4, 15 }, | ||
628 | { 124, 15 }, { 5, 15 }, { 123, 15 }, { 6, 15 }, { 122, 15 }, | ||
629 | { 7, 15 }, { 121, 15 }, { 8, 15 }, { 120, 15 }, { 9, 15 }, | ||
630 | { 119, 15 }, { 10, 15 }, { 118, 15 }, { 11, 15 }, { 117, 15 }, | ||
631 | { 12, 15 }, { 116, 15 }, { 13, 15 }, { 115, 15 }, { 14, 15 }, | ||
632 | { 114, 15 }, { 15, 15 }, { 113, 15 }, { 16, 15 }, { 112, 15 }, | ||
633 | { 17, 15 }, { 111, 15 }, { 18, 15 }, { 110, 15 }, { 19, 15 }, | ||
634 | { 109, 15 }, { 20, 15 }, { 108, 15 }, { 21, 15 }, { 107, 15 }, | ||
635 | { 22, 15 }, { 106, 15 }, { 23, 15 }, { 105, 15 }, { 24, 15 }, | ||
636 | { 104, 15 }, { 25, 15 }, { 103, 15 }, { 26, 15 }, { 102, 15 }, | ||
637 | { 27, 15 }, { 101, 15 }, { 28, 15 }, { 100, 15 }, { 29, 15 }, | ||
638 | { 99, 15 }, { 30, 15 }, { 98, 15 }, { 31, 15 }, { 97, 15 }, | ||
639 | { 32, 15 }, { 96, 15 }, { 33, 15 }, { 95, 15 }, { 34, 15 }, | ||
640 | { 94, 15 }, { 35, 15 }, { 93, 15 }, { 36, 15 }, { 92, 15 }, | ||
641 | { 37, 15 }, { 91, 15 }, { 38, 15 }, { 90, 15 }, { 39, 15 }, | ||
642 | { 89, 15 }, { 40, 15 }, { 88, 15 }, { 41, 15 }, { 87, 15 }, | ||
643 | { 43, 14 }, { 85, 14 }, { 45, 13 }, { 47, 12 }, { 81, 12 }, | ||
644 | { 49, 11 }, { 51, 10 }, { 62, 4 }, { 66, 4 }, | ||
645 | /* scale_factor[4] - 129 entries */ | ||
646 | { 56, 5 }, { 72, 5 }, { 52, 6 }, { 76, 6 }, { 48, 7 }, | ||
647 | { 80, 7 }, { 44, 8 }, { 84, 8 }, { 40, 9 }, { 88, 9 }, | ||
648 | { 36, 10 }, { 92, 10 }, { 96, 11 }, { 28, 12 }, { 100, 12 }, | ||
649 | { 24, 13 }, { 104, 13 }, { 16, 15 }, { 112, 15 }, { 20, 14 }, | ||
650 | { 108, 14 }, { 21, 14 }, { 33, 11 }, { 61, 4 }, { 67, 4 }, | ||
651 | { 57, 5 }, { 71, 5 }, { 53, 6 }, { 75, 6 }, { 49, 7 }, | ||
652 | { 79, 7 }, { 45, 8 }, { 83, 8 }, { 41, 9 }, { 87, 9 }, | ||
653 | { 37, 10 }, { 91, 10 }, { 95, 11 }, { 29, 12 }, { 99, 12 }, | ||
654 | { 25, 13 }, { 103, 13 }, { 107, 14 }, { 17, 15 }, { 111, 15 }, | ||
655 | { 26, 13 }, { 34, 11 }, { 62, 4 }, { 66, 4 }, { 58, 5 }, | ||
656 | { 70, 5 }, { 54, 6 }, { 74, 6 }, { 50, 7 }, { 78, 7 }, | ||
657 | { 46, 8 }, { 82, 8 }, { 42, 9 }, { 86, 9 }, { 38, 10 }, | ||
658 | { 90, 10 }, { 94, 11 }, { 30, 12 }, { 98, 12 }, { 39, 10 }, | ||
659 | { 63, 4 }, { 65, 4 }, { 59, 5 }, { 69, 5 }, { 55, 6 }, | ||
660 | { 73, 6 }, { 51, 7 }, { 77, 7 }, { 47, 8 }, { 81, 8 }, | ||
661 | { 43, 9 }, { 85, 9 }, { 89, 10 }, { 102, 13 }, { 22, 14 }, | ||
662 | { 106, 14 }, { 18, 15 }, { 110, 15 }, { 0, 16 }, { 128, 16 }, | ||
663 | { 1, 16 }, { 127, 16 }, { 27, 13 }, { 35, 11 }, { 93, 11 }, | ||
664 | { 31, 12 }, { 97, 12 }, { 101, 13 }, { 2, 16 }, { 126, 16 }, | ||
665 | { 3, 16 }, { 125, 16 }, { 4, 16 }, { 124, 16 }, { 5, 16 }, | ||
666 | { 123, 16 }, { 6, 16 }, { 122, 16 }, { 7, 16 }, { 121, 16 }, | ||
667 | { 8, 16 }, { 120, 16 }, { 9, 16 }, { 119, 16 }, { 10, 16 }, | ||
668 | { 118, 16 }, { 11, 16 }, { 117, 16 }, { 12, 16 }, { 116, 16 }, | ||
669 | { 13, 16 }, { 115, 16 }, { 14, 16 }, { 114, 16 }, { 15, 16 }, | ||
670 | { 113, 16 }, { 23, 14 }, { 105, 14 }, { 19, 15 }, { 109, 15 }, | ||
671 | { 32, 12 }, { 64, 4 }, { 60, 5 }, { 68, 5 }, | ||
672 | /* transition_mode[0] - 4 entries */ | ||
673 | { 0, 1 }, { 1, 2 }, { 2, 3 }, { 3, 3 }, | ||
674 | /* transition_mode[1] - 4 entries */ | ||
675 | { 3, 1 }, { 0, 2 }, { 1, 3 }, { 2, 3 }, | ||
676 | /* transition_mode[2] - 4 entries */ | ||
677 | { 2, 1 }, { 3, 2 }, { 0, 3 }, { 1, 3 }, | ||
678 | /* transition_mode[3] - 4 entries */ | ||
679 | { 0, 2 }, { 1, 2 }, { 2, 2 }, { 3, 2 }, | ||
680 | /* tnl_group[0] - 37 entries */ | ||
681 | { 5, 3 }, { 4, 3 }, { 19, 8 }, { 33, 12 }, { 31, 12 }, | ||
682 | { 28, 11 }, { 34, 14 }, { 37, 14 }, { 35, 15 }, { 0, 15 }, | ||
683 | { 36, 14 }, { 32, 12 }, { 30, 11 }, { 24, 9 }, { 22, 8 }, | ||
684 | { 23, 9 }, { 29, 10 }, { 27, 10 }, { 17, 6 }, { 14, 5 }, | ||
685 | { 7, 4 }, { 12, 5 }, { 1, 6 }, { 26, 9 }, { 3, 9 }, | ||
686 | { 25, 8 }, { 20, 7 }, { 8, 4 }, { 10, 4 }, { 13, 4 }, | ||
687 | { 15, 6 }, { 16, 6 }, { 18, 6 }, { 21, 6 }, { 11, 4 }, | ||
688 | { 9, 3 }, { 6, 3 }, | ||
689 | /* tnl_group[1] - 34 entries */ | ||
690 | { 4, 4 }, { 7, 4 }, { 10, 4 }, { 3, 10 }, { 27, 10 }, | ||
691 | { 29, 10 }, { 28, 10 }, { 22, 8 }, { 21, 7 }, { 15, 6 }, | ||
692 | { 14, 5 }, { 8, 4 }, { 16, 6 }, { 19, 7 }, { 23, 8 }, | ||
693 | { 26, 9 }, { 30, 10 }, { 33, 13 }, { 34, 14 }, { 0, 14 }, | ||
694 | { 32, 12 }, { 31, 11 }, { 12, 5 }, { 5, 3 }, { 9, 3 }, | ||
695 | { 1, 4 }, { 20, 7 }, { 25, 8 }, { 24, 8 }, { 18, 6 }, | ||
696 | { 17, 5 }, { 6, 3 }, { 11, 4 }, { 13, 4 }, | ||
697 | /* tnl_group[2] - 31 entries */ | ||
698 | { 14, 7 }, { 17, 7 }, { 15, 7 }, { 23, 9 }, { 28, 10 }, | ||
699 | { 29, 11 }, { 30, 13 }, { 0, 13 }, { 31, 12 }, { 25, 8 }, | ||
700 | { 10, 5 }, { 8, 4 }, { 9, 4 }, { 4, 4 }, { 22, 8 }, | ||
701 | { 3, 8 }, { 21, 8 }, { 26, 9 }, { 27, 9 }, { 12, 6 }, | ||
702 | { 11, 5 }, { 16, 7 }, { 18, 7 }, { 20, 8 }, { 24, 8 }, | ||
703 | { 19, 7 }, { 13, 5 }, { 5, 3 }, { 1, 2 }, { 6, 3 }, | ||
704 | { 7, 3 }, | ||
705 | /* tnl_group[3] - 28 entries */ | ||
706 | { 8, 6 }, { 2, 6 }, { 7, 6 }, { 23, 7 }, { 12, 7 }, | ||
707 | { 5, 4 }, { 10, 6 }, { 20, 8 }, { 25, 9 }, { 26, 10 }, | ||
708 | { 27, 11 }, { 0, 11 }, { 22, 7 }, { 9, 5 }, { 13, 6 }, | ||
709 | { 17, 6 }, { 4, 5 }, { 14, 6 }, { 19, 7 }, { 24, 7 }, | ||
710 | { 3, 6 }, { 11, 6 }, { 21, 6 }, { 18, 6 }, { 16, 6 }, | ||
711 | { 15, 6 }, { 6, 3 }, { 1, 1 }, | ||
712 | /* tnl_group[4] - 23 entries */ | ||
713 | { 2, 2 }, { 7, 7 }, { 15, 8 }, { 21, 8 }, { 3, 6 }, | ||
714 | { 6, 6 }, { 13, 7 }, { 14, 8 }, { 18, 8 }, { 4, 4 }, | ||
715 | { 5, 5 }, { 11, 7 }, { 10, 7 }, { 20, 6 }, { 12, 8 }, | ||
716 | { 16, 9 }, { 22, 10 }, { 0, 10 }, { 17, 7 }, { 19, 6 }, | ||
717 | { 8, 6 }, { 9, 6 }, { 1, 1 }, | ||
718 | /* tnl_scf - 20 entries */ | ||
719 | { 3, 3 }, { 11, 6 }, { 16, 9 }, { 17, 10 }, { 18, 11 }, | ||
720 | { 19, 12 }, { 0, 12 }, { 15, 8 }, { 14, 7 }, { 9, 5 }, | ||
721 | { 7, 4 }, { 2, 3 }, { 4, 3 }, { 1, 3 }, { 5, 3 }, | ||
722 | { 12, 6 }, { 13, 6 }, { 10, 5 }, { 8, 4 }, { 6, 3 }, | ||
723 | /* damp - 7 entries */ | ||
724 | { 2, 2 }, { 3, 3 }, { 4, 4 }, { 5, 5 }, { 6, 6 }, | ||
725 | { 0, 6 }, { 1, 1 }, | ||
726 | /* dph - 9 entries */ | ||
727 | { 2, 2 }, { 1, 2 }, { 3, 4 }, { 7, 4 }, { 6, 5 }, | ||
728 | { 5, 6 }, { 0, 6 }, { 4, 4 }, { 8, 2 }, | ||
729 | /* fst_rsd_amp - 24 entries */ | ||
730 | { 12, 4 }, { 17, 4 }, { 1, 6 }, { 8, 6 }, { 9, 5 }, | ||
731 | { 20, 7 }, { 3, 7 }, { 5, 6 }, { 6, 6 }, { 2, 7 }, | ||
732 | { 22, 9 }, { 23, 10 }, { 0, 10 }, { 21, 8 }, { 11, 4 }, | ||
733 | { 19, 5 }, { 7, 6 }, { 4, 6 }, { 16, 3 }, { 10, 4 }, | ||
734 | { 18, 4 }, { 15, 3 }, { 13, 3 }, { 14, 3 }, | ||
735 | /* rsd_apprx - 6 entries */ | ||
736 | { 1, 1 }, { 2, 2 }, { 3, 3 }, { 4, 4 }, { 5, 5 }, | ||
737 | { 0, 5 }, | ||
738 | /* rsd_amp - 33 entries */ | ||
739 | { 2, 3 }, { 1, 3 }, { 5, 3 }, { 14, 8 }, { 20, 9 }, | ||
740 | { 26, 10 }, { 25, 12 }, { 32, 12 }, { 19, 11 }, { 16, 8 }, | ||
741 | { 24, 9 }, { 17, 9 }, { 12, 7 }, { 13, 7 }, { 9, 5 }, | ||
742 | { 7, 4 }, { 3, 2 }, { 4, 3 }, { 8, 6 }, { 11, 6 }, | ||
743 | { 18, 8 }, { 15, 8 }, { 30, 11 }, { 36, 13 }, { 34, 13 }, | ||
744 | { 29, 13 }, { 0, 13 }, { 21, 10 }, { 28, 10 }, { 23, 10 }, | ||
745 | { 22, 8 }, { 10, 6 }, { 6, 4 }, | ||
746 | /* avg_g3 - 18 entries */ | ||
747 | { 14, 4 }, { 11, 6 }, { 19, 7 }, { 9, 7 }, { 13, 5 }, | ||
748 | { 10, 6 }, { 20, 8 }, { 8, 8 }, { 6, 10 }, { 23, 11 }, | ||
749 | { 0, 11 }, { 21, 9 }, { 7, 8 }, { 12, 5 }, { 18, 4 }, | ||
750 | { 16, 2 }, { 15, 2 }, { 17, 2 }, | ||
751 | /* st_grid - 22 entries */ | ||
752 | { 4, 4 }, { 3, 4 }, { 8, 4 }, { 14, 8 }, { 7, 9 }, | ||
753 | { 9, 10 }, { 22, 10 }, { 12, 7 }, { 16, 9 }, { 11, 10 }, | ||
754 | { 13, 11 }, { 17, 13 }, { 15, 13 }, { 24, 13 }, { 0, 13 }, | ||
755 | { 18, 9 }, { 20, 10 }, { 2, 10 }, { 5, 7 }, { 10, 5 }, | ||
756 | { 1, 2 }, { 6, 1 }, | ||
757 | /* grid_2 - 20 entries */ | ||
758 | { 3, 2 }, { 2, 2 }, { 4, 3 }, { 5, 4 }, { 6, 5 }, | ||
759 | { 11, 11 }, { 13, 12 }, { 17, 12 }, { 19, 14 }, { 14, 14 }, | ||
760 | { 18, 13 }, { 15, 13 }, { 16, 14 }, { 0, 14 }, { 12, 11 }, | ||
761 | { 10, 9 }, { 9, 8 }, { 8, 7 }, { 7, 6 }, { 1, 2 }, | ||
762 | /* grid_3 - 13 entries */ | ||
763 | { 18, 3 }, { 15, 4 }, { 19, 5 }, { 14, 6 }, { 13, 8 }, | ||
764 | { 12, 10 }, { 11, 12 }, { 0, 12 }, { 22, 11 }, { 21, 9 }, | ||
765 | { 20, 7 }, { 16, 2 }, { 17, 1 }, | ||
766 | /* rsd - 9 entries */ | ||
767 | { 1, 3 }, { 5, 4 }, { 6, 5 }, { 7, 6 }, { 4, 6 }, | ||
768 | { 4, 3 }, { 0, 3 }, { 2, 2 }, { 3, 2 }, | ||
769 | }; | ||
770 | |||
771 | VLC ff_dca_vlc_bit_allocation[5]; | ||
772 | VLC ff_dca_vlc_transition_mode[4]; | ||
773 | VLC ff_dca_vlc_scale_factor[5]; | ||
774 | VLC ff_dca_vlc_quant_index[DCA_CODE_BOOKS][7]; | ||
775 | |||
776 | VLC ff_dca_vlc_tnl_grp[5]; | ||
777 | VLC ff_dca_vlc_tnl_scf; | ||
778 | VLC ff_dca_vlc_damp; | ||
779 | VLC ff_dca_vlc_dph; | ||
780 | VLC ff_dca_vlc_fst_rsd_amp; | ||
781 | VLC ff_dca_vlc_rsd_apprx; | ||
782 | VLC ff_dca_vlc_rsd_amp; | ||
783 | VLC ff_dca_vlc_avg_g3; | ||
784 | VLC ff_dca_vlc_st_grid; | ||
785 | VLC ff_dca_vlc_grid_2; | ||
786 | VLC ff_dca_vlc_grid_3; | ||
787 | VLC ff_dca_vlc_rsd; | ||
788 | |||
789 | 54 | av_cold void ff_dca_init_vlcs(void) | |
790 | { | ||
791 | static VLCElem dca_table[30218]; | ||
792 | 54 | const uint8_t (*src_table)[2] = ff_dca_vlc_src_tables; | |
793 | 54 | unsigned offset = 0; | |
794 | |||
795 | #define DCA_INIT_VLC(vlc, nb_bits, nb_codes, entry_offset) \ | ||
796 | do { \ | ||
797 | vlc.table = &dca_table[offset]; \ | ||
798 | vlc.table_allocated = FF_ARRAY_ELEMS(dca_table) - offset; \ | ||
799 | ff_vlc_init_from_lengths(&vlc, nb_bits, nb_codes, &src_table[0][1], 2, \ | ||
800 | &src_table[0][0], 2, 1, entry_offset, \ | ||
801 | VLC_INIT_STATIC_OVERLONG, NULL); \ | ||
802 | offset += vlc.table_size; \ | ||
803 | src_table += nb_codes; \ | ||
804 | } while (0) | ||
805 | |||
806 |
2/2✓ Branch 0 taken 540 times.
✓ Branch 1 taken 54 times.
|
594 | for (unsigned i = 0; i < DCA_CODE_BOOKS; i++) { |
807 |
2/2✓ Branch 0 taken 2592 times.
✓ Branch 1 taken 540 times.
|
3132 | for (unsigned j = 0; j < ff_dca_quant_index_group_size[i]; j++) |
808 | 2592 | DCA_INIT_VLC(ff_dca_vlc_quant_index[i][j], bitalloc_maxbits[i][j], | |
809 | ff_dca_bitalloc_sizes[i], ff_dca_bitalloc_offsets[i]); | ||
810 | } | ||
811 | |||
812 |
2/2✓ Branch 0 taken 270 times.
✓ Branch 1 taken 54 times.
|
324 | for (unsigned i = 0; i < FF_ARRAY_ELEMS(ff_dca_vlc_bit_allocation); i++) |
813 | 270 | DCA_INIT_VLC(ff_dca_vlc_bit_allocation[i], bitalloc_12_vlc_bits[i], 12, 1); | |
814 | |||
815 |
2/2✓ Branch 0 taken 270 times.
✓ Branch 1 taken 54 times.
|
324 | for (unsigned i = 0; i < FF_ARRAY_ELEMS(ff_dca_vlc_scale_factor); i++) |
816 | 270 | DCA_INIT_VLC(ff_dca_vlc_scale_factor[i], DCA_SCALES_VLC_BITS, 129, -64); | |
817 | |||
818 |
2/2✓ Branch 0 taken 216 times.
✓ Branch 1 taken 54 times.
|
270 | for (unsigned i = 0; i < FF_ARRAY_ELEMS(ff_dca_vlc_transition_mode); i++) |
819 | 216 | DCA_INIT_VLC(ff_dca_vlc_transition_mode[i], DCA_TMODE_VLC_BITS, 4, 0); | |
820 | |||
821 | #define LBR_INIT_VLC(vlc, nb_bits, nb_codes, entry_offset) \ | ||
822 | do { \ | ||
823 | vlc.table = &dca_table[offset]; \ | ||
824 | vlc.table_allocated = FF_ARRAY_ELEMS(dca_table) - offset; \ | ||
825 | ff_vlc_init_from_lengths(&vlc, nb_bits, nb_codes, &src_table[0][1], 2, \ | ||
826 | &src_table[0][0], 2, 1, entry_offset, \ | ||
827 | VLC_INIT_STATIC_OVERLONG | VLC_INIT_LE,\ | ||
828 | NULL); \ | ||
829 | offset += vlc.table_size; \ | ||
830 | src_table += nb_codes; \ | ||
831 | } while (0) | ||
832 | |||
833 |
2/2✓ Branch 0 taken 270 times.
✓ Branch 1 taken 54 times.
|
324 | for (unsigned i = 0; i < FF_ARRAY_ELEMS(ff_dca_vlc_tnl_grp); i++) |
834 | 270 | LBR_INIT_VLC(ff_dca_vlc_tnl_grp[i], DCA_TNL_GRP_VLC_BITS, tnl_grp_sizes[i], -1); | |
835 | 54 | LBR_INIT_VLC(ff_dca_vlc_tnl_scf, DCA_TNL_SCF_VLC_BITS, 20, -1); | |
836 | 54 | LBR_INIT_VLC(ff_dca_vlc_damp, DCA_DAMP_VLC_BITS, 7, -1); | |
837 | 54 | LBR_INIT_VLC(ff_dca_vlc_dph, DCA_DPH_VLC_BITS, 9, -1); | |
838 | 54 | LBR_INIT_VLC(ff_dca_vlc_fst_rsd_amp, DCA_FST_RSD_VLC_BITS, 24, -1); | |
839 | 54 | LBR_INIT_VLC(ff_dca_vlc_rsd_apprx, DCA_RSD_APPRX_VLC_BITS, 6, -1); | |
840 | 54 | LBR_INIT_VLC(ff_dca_vlc_rsd_amp, DCA_RSD_AMP_VLC_BITS, 33, -1); | |
841 | 54 | LBR_INIT_VLC(ff_dca_vlc_avg_g3, DCA_AVG_G3_VLC_BITS, 18, -1); | |
842 | 54 | LBR_INIT_VLC(ff_dca_vlc_st_grid, DCA_ST_GRID_VLC_BITS, 22, -1); | |
843 | 54 | LBR_INIT_VLC(ff_dca_vlc_grid_2, DCA_GRID_VLC_BITS, 20, -1); | |
844 | 54 | LBR_INIT_VLC(ff_dca_vlc_grid_3, DCA_GRID_VLC_BITS, 13, -1); | |
845 | 54 | LBR_INIT_VLC(ff_dca_vlc_rsd, DCA_RSD_VLC_BITS, 9, 0); | |
846 | 54 | } | |
847 |