| 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 | 55 | av_cold void ff_dca_init_vlcs(void) | |
| 790 | { | ||
| 791 | static VLCElem dca_table[30218]; | ||
| 792 | 55 | const uint8_t (*src_table)[2] = ff_dca_vlc_src_tables; | |
| 793 | 55 | 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 550 times.
✓ Branch 1 taken 55 times.
|
605 | for (unsigned i = 0; i < DCA_CODE_BOOKS; i++) { |
| 807 |
2/2✓ Branch 0 taken 2640 times.
✓ Branch 1 taken 550 times.
|
3190 | for (unsigned j = 0; j < ff_dca_quant_index_group_size[i]; j++) |
| 808 | 2640 | 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 275 times.
✓ Branch 1 taken 55 times.
|
330 | for (unsigned i = 0; i < FF_ARRAY_ELEMS(ff_dca_vlc_bit_allocation); i++) |
| 813 | 275 | DCA_INIT_VLC(ff_dca_vlc_bit_allocation[i], bitalloc_12_vlc_bits[i], 12, 1); | |
| 814 | |||
| 815 |
2/2✓ Branch 0 taken 275 times.
✓ Branch 1 taken 55 times.
|
330 | for (unsigned i = 0; i < FF_ARRAY_ELEMS(ff_dca_vlc_scale_factor); i++) |
| 816 | 275 | DCA_INIT_VLC(ff_dca_vlc_scale_factor[i], DCA_SCALES_VLC_BITS, 129, -64); | |
| 817 | |||
| 818 |
2/2✓ Branch 0 taken 220 times.
✓ Branch 1 taken 55 times.
|
275 | for (unsigned i = 0; i < FF_ARRAY_ELEMS(ff_dca_vlc_transition_mode); i++) |
| 819 | 220 | 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 275 times.
✓ Branch 1 taken 55 times.
|
330 | for (unsigned i = 0; i < FF_ARRAY_ELEMS(ff_dca_vlc_tnl_grp); i++) |
| 834 | 275 | LBR_INIT_VLC(ff_dca_vlc_tnl_grp[i], DCA_TNL_GRP_VLC_BITS, tnl_grp_sizes[i], -1); | |
| 835 | 55 | LBR_INIT_VLC(ff_dca_vlc_tnl_scf, DCA_TNL_SCF_VLC_BITS, 20, -1); | |
| 836 | 55 | LBR_INIT_VLC(ff_dca_vlc_damp, DCA_DAMP_VLC_BITS, 7, -1); | |
| 837 | 55 | LBR_INIT_VLC(ff_dca_vlc_dph, DCA_DPH_VLC_BITS, 9, -1); | |
| 838 | 55 | LBR_INIT_VLC(ff_dca_vlc_fst_rsd_amp, DCA_FST_RSD_VLC_BITS, 24, -1); | |
| 839 | 55 | LBR_INIT_VLC(ff_dca_vlc_rsd_apprx, DCA_RSD_APPRX_VLC_BITS, 6, -1); | |
| 840 | 55 | LBR_INIT_VLC(ff_dca_vlc_rsd_amp, DCA_RSD_AMP_VLC_BITS, 33, -1); | |
| 841 | 55 | LBR_INIT_VLC(ff_dca_vlc_avg_g3, DCA_AVG_G3_VLC_BITS, 18, -1); | |
| 842 | 55 | LBR_INIT_VLC(ff_dca_vlc_st_grid, DCA_ST_GRID_VLC_BITS, 22, -1); | |
| 843 | 55 | LBR_INIT_VLC(ff_dca_vlc_grid_2, DCA_GRID_VLC_BITS, 20, -1); | |
| 844 | 55 | LBR_INIT_VLC(ff_dca_vlc_grid_3, DCA_GRID_VLC_BITS, 13, -1); | |
| 845 | 55 | LBR_INIT_VLC(ff_dca_vlc_rsd, DCA_RSD_VLC_BITS, 9, 0); | |
| 846 | 55 | } | |
| 847 |