1// Copyright 2019 The libgav1 Authors 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15// This file is just a convenience to separate out all the CDF constant 16// definitions from the symbol decoder context functions. 17 18alignas(kMaxAlignment) constexpr uint16_t kDefaultPartitionCdf 19 [kBlockWidthCount][kPartitionContexts][kMaxPartitionTypes + 1] = { 20 // width 8 21 {{13636, 7258, 2376, 0, 0}, 22 {18840, 12913, 4228, 0, 0}, 23 {20246, 9089, 4139, 0, 0}, 24 {22872, 13985, 6915, 0, 0}}, 25 // width 16 26 {{17171, 11839, 8197, 6062, 5104, 3947, 3167, 2197, 866, 0, 0}, 27 {24843, 21725, 15983, 10298, 8797, 7725, 6117, 4067, 2934, 0, 0}, 28 {27354, 19499, 17657, 12280, 10408, 8268, 7231, 6432, 651, 0, 0}, 29 {30106, 26406, 24154, 11908, 9715, 7990, 6332, 4939, 1597, 0, 0}}, 30 // width 32 31 {{14306, 11848, 9644, 5121, 4541, 3719, 3249, 2590, 1224, 0, 0}, 32 {25079, 23708, 20712, 7776, 7108, 6586, 5817, 4727, 3716, 0, 0}, 33 {26753, 23759, 22706, 8224, 7359, 6223, 5697, 5242, 721, 0, 0}, 34 {31374, 30560, 29972, 4154, 3707, 3302, 2928, 2583, 869, 0, 0}}, 35 // width 64 36 {{12631, 11221, 9690, 3202, 2931, 2507, 2244, 1876, 1044, 0, 0}, 37 {26036, 25278, 23271, 4824, 4518, 4253, 3799, 3138, 2664, 0, 0}, 38 {26823, 25105, 24420, 4085, 3651, 3019, 2704, 2470, 530, 0, 0}, 39 {31898, 31556, 31281, 1570, 1374, 1194, 1025, 887, 436, 0, 0}}, 40 // width 128 41 {{4869, 4549, 4239, 284, 229, 149, 129, 0, 0}, 42 {26161, 25778, 24500, 708, 549, 430, 397, 0, 0}, 43 {27339, 26092, 25646, 741, 541, 237, 186, 0, 0}, 44 {32057, 31802, 31596, 320, 230, 151, 104, 0, 0}}}; 45 46alignas(kMaxAlignment) constexpr uint16_t 47 kDefaultSegmentIdCdf[kSegmentIdContexts][kMaxSegments + 1] = { 48 {27146, 24875, 16675, 14535, 4959, 4395, 235, 0, 0}, 49 {18494, 14538, 10211, 7833, 2788, 1917, 424, 0, 0}, 50 {5241, 4281, 4045, 3878, 371, 121, 89, 0, 0}}; 51 52alignas(kMaxAlignment) constexpr uint16_t 53 kDefaultUsePredictedSegmentIdCdf[kUsePredictedSegmentIdContexts] 54 [kBooleanFieldCdfSize] = {{16384, 0, 0}, 55 {16384, 0, 0}, 56 {16384, 0, 0}}; 57 58alignas(kMaxAlignment) constexpr uint16_t 59 kDefaultSkipCdf[kSkipContexts][kBooleanFieldCdfSize] = { 60 {1097, 0, 0}, {16253, 0, 0}, {28192, 0, 0}}; 61 62alignas(kMaxAlignment) constexpr uint16_t 63 kDefaultSkipModeCdf[kSkipModeContexts][kBooleanFieldCdfSize] = { 64 {147, 0, 0}, {12060, 0, 0}, {24641, 0, 0}}; 65 66// This constant is also used for DeltaLf and DeltaLfMulti. 67alignas(kMaxAlignment) constexpr uint16_t 68 kDefaultDeltaQCdf[kDeltaSymbolCount + 1] = {4608, 648, 91, 0, 0}; 69 70alignas(kMaxAlignment) constexpr uint16_t 71 kDefaultIntraBlockCopyCdf[kBooleanFieldCdfSize] = {2237, 0, 0}; 72 73alignas(kMaxAlignment) constexpr uint16_t 74 kDefaultIntraFrameYModeCdf[kIntraModeContexts][kIntraModeContexts] 75 [kIntraPredictionModesY + 1] = { 76 {{17180, 15741, 13430, 12550, 12086, 11658, 77 10943, 9524, 8579, 4603, 3675, 2302, 0, 0}, 78 {20752, 14702, 13252, 12465, 12049, 11324, 79 10880, 9736, 8334, 4110, 2596, 1359, 0, 0}, 80 {22716, 21997, 10472, 9980, 9713, 9529, 8635, 81 7148, 6608, 3432, 2839, 1201, 0, 0}, 82 {18677, 17362, 16326, 13960, 13632, 13222, 83 12770, 10672, 8022, 3183, 1810, 306, 0, 0}, 84 {20646, 19503, 17165, 16267, 14159, 12735, 85 10377, 7185, 6331, 2507, 1695, 293, 0, 0}}, 86 {{22745, 13183, 11920, 11328, 10936, 10008, 87 9679, 8745, 7387, 3754, 2286, 1332, 0, 0}, 88 {26785, 8669, 8208, 7882, 7702, 6973, 6855, 89 6345, 5158, 2863, 1492, 974, 0, 0}, 90 {25324, 19987, 12591, 12040, 11691, 11161, 91 10598, 9363, 8299, 4853, 3678, 2276, 0, 0}, 92 {24231, 18079, 17336, 15681, 15360, 14596, 93 14360, 12943, 8119, 3615, 1672, 558, 0, 0}, 94 {25225, 18537, 17272, 16573, 14863, 12051, 95 10784, 8252, 6767, 3093, 1787, 774, 0, 0}}, 96 {{20155, 19177, 11385, 10764, 10456, 10191, 97 9367, 7713, 7039, 3230, 2463, 691, 0, 0}, 98 {23081, 19298, 14262, 13538, 13164, 12621, 99 12073, 10706, 9549, 5025, 3557, 1861, 0, 0}, 100 {26585, 26263, 6744, 6516, 6402, 6334, 5686, 101 4414, 4213, 2301, 1974, 682, 0, 0}, 102 {22050, 21034, 17814, 15544, 15203, 14844, 103 14207, 11245, 8890, 3793, 2481, 516, 0, 0}, 104 {23574, 22910, 16267, 15505, 14344, 13597, 105 11205, 6807, 6207, 2696, 2031, 305, 0, 0}}, 106 {{20166, 18369, 17280, 14387, 13990, 13453, 107 13044, 11349, 7708, 3072, 1851, 359, 0, 0}, 108 {24565, 18947, 18244, 15663, 15329, 14637, 109 14364, 13300, 7543, 3283, 1610, 426, 0, 0}, 110 {24317, 23037, 17764, 15125, 14756, 14343, 111 13698, 11230, 8163, 3650, 2690, 750, 0, 0}, 112 {25054, 23720, 23252, 16101, 15951, 15774, 113 15615, 14001, 6025, 2379, 1232, 240, 0, 0}, 114 {23925, 22488, 21272, 17451, 16116, 14825, 115 13660, 10050, 6999, 2815, 1785, 283, 0, 0}}, 116 {{20190, 19097, 16789, 15934, 13693, 11855, 117 9779, 7319, 6549, 2554, 1618, 291, 0, 0}, 118 {23205, 19142, 17688, 16876, 15012, 11905, 119 10561, 8532, 7388, 3115, 1625, 491, 0, 0}, 120 {24412, 23867, 15152, 14512, 13418, 12662, 121 10170, 6821, 6302, 2868, 2245, 507, 0, 0}, 122 {21933, 20953, 19644, 16726, 15750, 14729, 123 13821, 10015, 8153, 3279, 1885, 286, 0, 0}, 124 {25150, 24480, 22909, 22259, 17382, 14111, 125 9865, 3992, 3588, 1413, 966, 175, 0, 0}}}; 126 127alignas(kMaxAlignment) constexpr uint16_t 128 kDefaultYModeCdf[kYModeContexts][kIntraPredictionModesY + 1] = { 129 {9967, 9279, 8475, 8012, 7167, 6645, 6162, 5350, 4823, 3540, 3083, 2419, 130 0, 0}, 131 {14095, 12923, 10137, 9450, 8818, 8119, 7241, 5404, 4616, 3067, 2784, 132 1916, 0, 0}, 133 {12998, 11789, 9372, 8829, 8527, 8114, 7632, 5695, 4938, 3408, 3038, 134 2109, 0, 0}, 135 {12613, 11467, 9930, 9590, 9507, 9235, 9065, 7964, 7416, 6193, 5752, 136 4719, 0, 0}}; 137 138alignas(kMaxAlignment) constexpr uint16_t 139 kDefaultAngleDeltaCdf[kDirectionalIntraModes][kAngleDeltaSymbolCount + 1] = 140 {{30588, 27736, 25201, 9992, 5779, 2551, 0, 0}, 141 {30467, 27160, 23967, 9281, 5794, 2438, 0, 0}, 142 {28988, 21750, 19069, 13414, 9685, 1482, 0, 0}, 143 {28187, 21542, 17621, 15630, 10934, 4371, 0, 0}, 144 {31031, 21841, 18259, 13180, 10023, 3945, 0, 0}, 145 {30104, 22592, 20283, 15118, 11168, 2273, 0, 0}, 146 {30528, 21672, 17315, 12427, 10207, 3851, 0, 0}, 147 {29163, 22340, 20309, 15092, 11524, 2113, 0, 0}}; 148 149alignas(kMaxAlignment) constexpr uint16_t 150 kDefaultUVModeCdf[kBooleanSymbolCount][kIntraPredictionModesY] 151 [kIntraPredictionModesUV + 1] = { 152 // CFL not allowed. 153 {{10137, 8616, 7390, 7107, 6782, 6248, 5713, 4845, 154 4524, 2709, 1827, 807, 0, 0}, 155 {23255, 5887, 5795, 5722, 5650, 5104, 5029, 4944, 156 4409, 3263, 2968, 972, 0, 0}, 157 {22923, 22853, 4105, 4064, 4011, 3988, 3570, 2946, 158 2914, 2004, 991, 739, 0, 0}, 159 {19129, 18871, 18597, 7437, 7162, 7041, 6815, 5620, 160 4191, 2156, 1413, 275, 0, 0}, 161 {23004, 22933, 22838, 22814, 7382, 5715, 4810, 4620, 162 4525, 1667, 1024, 405, 0, 0}, 163 {20943, 19179, 19091, 19048, 17720, 3555, 3467, 3310, 164 3057, 1607, 1327, 218, 0, 0}, 165 {18593, 18369, 16160, 15947, 15050, 14993, 4217, 2568, 166 2523, 931, 426, 101, 0, 0}, 167 {19883, 19730, 17790, 17178, 17095, 17020, 16592, 168 3640, 3501, 2125, 807, 307, 0, 0}, 169 {20742, 19107, 18894, 17463, 17278, 17042, 16773, 170 16495, 4325, 2380, 2001, 352, 0, 0}, 171 {13716, 12928, 12189, 11852, 11618, 11301, 10883, 172 10049, 9594, 3907, 2389, 593, 0, 0}, 173 {14141, 13119, 11794, 11549, 11276, 10952, 10569, 174 9649, 9241, 5715, 1371, 620, 0, 0}, 175 {15742, 13764, 12771, 12429, 12182, 11665, 11419, 176 10861, 10286, 6872, 6227, 949, 0, 0}, 177 {20644, 19009, 17809, 17776, 17761, 17717, 17690, 178 17602, 17513, 17015, 16729, 16162, 0, 0}}, 179 // CFL allowed. 180 {{22361, 21560, 19868, 19587, 18945, 18593, 17869, 181 17112, 16782, 12682, 11773, 10313, 8556, 0, 0}, 182 {28236, 12988, 12711, 12553, 12340, 11697, 11569, 183 11317, 10669, 8540, 8075, 5736, 3296, 0, 0}, 184 {27495, 27389, 12591, 12498, 12383, 12329, 11819, 185 11073, 10994, 9630, 8512, 8065, 6089, 0, 0}, 186 {26028, 25601, 25106, 18616, 18232, 17983, 17734, 187 16027, 14397, 11248, 10562, 9379, 8586, 0, 0}, 188 {27781, 27400, 26840, 26700, 13654, 12453, 10911, 189 10515, 10357, 7857, 7388, 6741, 6392, 0, 0}, 190 {27398, 25879, 25521, 25375, 23270, 11654, 11366, 191 11015, 10787, 7988, 7382, 6251, 5592, 0, 0}, 192 {27952, 27807, 25564, 25442, 24003, 23838, 12599, 193 12086, 11965, 9580, 9005, 8313, 7828, 0, 0}, 194 {26160, 26028, 24239, 23719, 23511, 23412, 23033, 195 13941, 13709, 10432, 9564, 8804, 7975, 0, 0}, 196 {26770, 25349, 24987, 23835, 23513, 23219, 23015, 197 22351, 13870, 10274, 9629, 8004, 6779, 0, 0}, 198 {22108, 21470, 20218, 19811, 19446, 19144, 18728, 199 17764, 17234, 12054, 10979, 9325, 7907, 0, 0}, 200 {22246, 21238, 20216, 19805, 19390, 18989, 18523, 201 17533, 16866, 12666, 10072, 8994, 6930, 0, 0}, 202 {22669, 22077, 20129, 19719, 19382, 19103, 18643, 203 17605, 17132, 13092, 12294, 9249, 7560, 0, 0}, 204 {29624, 27681, 25386, 25264, 25175, 25078, 24967, 205 24704, 24536, 23520, 22893, 22247, 3720, 0, 0}}}; 206 207alignas(kMaxAlignment) constexpr uint16_t 208 kDefaultCflAlphaSignsCdf[kCflAlphaSignsSymbolCount + 1] = { 209 31350, 30645, 19428, 14363, 5796, 4425, 474, 0, 0}; 210 211alignas(kMaxAlignment) constexpr uint16_t 212 kDefaultCflAlphaCdf[kCflAlphaContexts][kCflAlphaSymbolCount + 1] = { 213 {25131, 12049, 1367, 287, 111, 80, 76, 72, 68, 64, 60, 56, 52, 48, 44, 214 0, 0}, 215 {18403, 9165, 4633, 1600, 601, 373, 281, 195, 148, 121, 100, 96, 92, 88, 216 84, 0, 0}, 217 {21236, 10388, 4323, 1408, 419, 245, 184, 119, 95, 91, 87, 83, 79, 75, 218 71, 0, 0}, 219 {5778, 1366, 486, 197, 76, 72, 68, 64, 60, 56, 52, 48, 44, 40, 36, 0, 220 0}, 221 {15520, 6710, 3864, 2160, 1463, 891, 642, 447, 374, 304, 252, 208, 192, 222 175, 146, 0, 0}, 223 {18030, 11090, 6989, 4867, 3744, 2466, 1788, 925, 624, 355, 248, 174, 224 146, 112, 108, 0, 0}}; 225 226alignas(kMaxAlignment) constexpr uint16_t 227 kDefaultUseFilterIntraCdf[kMaxBlockSizes][kBooleanFieldCdfSize] = { 228 {28147, 0, 0}, {26025, 0, 0}, {19998, 0, 0}, {26875, 0, 0}, 229 {24902, 0, 0}, {20217, 0, 0}, {12539, 0, 0}, {22400, 0, 0}, 230 {23374, 0, 0}, {20360, 0, 0}, {18467, 0, 0}, {16384, 0, 0}, 231 {14667, 0, 0}, {20012, 0, 0}, {10425, 0, 0}, {16384, 0, 0}, 232 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 233 {16384, 0, 0}, {16384, 0, 0}}; 234 235alignas(kMaxAlignment) constexpr uint16_t 236 kDefaultFilterIntraModeCdf[kNumFilterIntraPredictors + 1] = { 237 23819, 19992, 15557, 3210, 0, 0}; 238 239alignas(kMaxAlignment) constexpr uint16_t 240 kDefaultTxDepthCdf[4][kTxDepthContexts][kMaxTxDepthSymbolCount + 1] = { 241 {{12800, 0, 0}, {12800, 0, 0}, {8448, 0, 0}}, 242 {{20496, 2596, 0, 0}, {20496, 2596, 0, 0}, {14091, 1920, 0, 0}}, 243 {{19782, 17588, 0, 0}, {19782, 17588, 0, 0}, {8466, 7166, 0, 0}}, 244 {{26986, 21293, 0, 0}, {26986, 21293, 0, 0}, {15965, 10009, 0, 0}}}; 245 246alignas(kMaxAlignment) constexpr uint16_t 247 kDefaultTxSplitCdf[kTxSplitContexts][kBooleanFieldCdfSize] = { 248 {4187, 0, 0}, {8922, 0, 0}, {11921, 0, 0}, {8453, 0, 0}, 249 {14572, 0, 0}, {20635, 0, 0}, {13977, 0, 0}, {21881, 0, 0}, 250 {21763, 0, 0}, {5589, 0, 0}, {12764, 0, 0}, {21487, 0, 0}, 251 {6219, 0, 0}, {13460, 0, 0}, {18544, 0, 0}, {4753, 0, 0}, 252 {11222, 0, 0}, {18368, 0, 0}, {4603, 0, 0}, {10367, 0, 0}, 253 {16680, 0, 0}}; 254 255/* clang-format off */ 256alignas(kMaxAlignment) constexpr uint16_t kDefaultAllZeroCdf[kCoefficientQuantizerContexts] 257 [kNumSquareTransformSizes][kAllZeroContexts] 258 [kBooleanFieldCdfSize] = { 259 { 260 {{919, 0, 0}, {26876, 0, 0}, {20656, 0, 0}, {10833, 0, 0}, {12479, 0, 0}, 261 {5295, 0, 0}, {281, 0, 0}, {25114, 0, 0}, {13295, 0, 0}, {2784, 0, 0}, 262 {22807, 0, 0}, {2526, 0, 0}, {651, 0, 0}}, 263 {{1220, 0, 0}, {31219, 0, 0}, {22638, 0, 0}, {16112, 0, 0}, {14177, 0, 0}, 264 {6460, 0, 0}, {231, 0, 0}, {27365, 0, 0}, {14672, 0, 0}, {2765, 0, 0}, 265 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}}, 266 {{2811, 0, 0}, {27377, 0, 0}, {14729, 0, 0}, {9202, 0, 0}, {10337, 0, 0}, 267 {6946, 0, 0}, {571, 0, 0}, {28990, 0, 0}, {17432, 0, 0}, {3787, 0, 0}, 268 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}}, 269 {{14848, 0, 0}, {30950, 0, 0}, {25486, 0, 0}, {7495, 0, 0}, {21845, 0, 0}, 270 {1214, 0, 0}, {144, 0, 0}, {31402, 0, 0}, {17140, 0, 0}, {2306, 0, 0}, 271 {32622, 0, 0}, {27636, 0, 0}, {1111, 0, 0}}, 272 {{26460, 0, 0}, {32651, 0, 0}, {31130, 0, 0}, {30607, 0, 0}, {16384, 0, 0}, 273 {21845, 0, 0}, {2521, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 274 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}} 275 }, 276 { 277 {{2397, 0, 0}, {25198, 0, 0}, {19613, 0, 0}, {12017, 0, 0}, {11799, 0, 0}, 278 {5701, 0, 0}, {755, 0, 0}, {27273, 0, 0}, {14826, 0, 0}, {4488, 0, 0}, 279 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}}, 280 {{986, 0, 0}, {30932, 0, 0}, {22079, 0, 0}, {15164, 0, 0}, {11146, 0, 0}, 281 {5250, 0, 0}, {369, 0, 0}, {28349, 0, 0}, {16474, 0, 0}, {4423, 0, 0}, 282 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}}, 283 {{867, 0, 0}, {22457, 0, 0}, {14721, 0, 0}, {7962, 0, 0}, {9480, 0, 0}, 284 {4854, 0, 0}, {472, 0, 0}, {28553, 0, 0}, {17012, 0, 0}, {4427, 0, 0}, 285 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}}, 286 {{6042, 0, 0}, {31723, 0, 0}, {21065, 0, 0}, {12178, 0, 0}, {14214, 0, 0}, 287 {6798, 0, 0}, {830, 0, 0}, {27185, 0, 0}, {11455, 0, 0}, {3378, 0, 0}, 288 {32127, 0, 0}, {10503, 0, 0}, {1316, 0, 0}}, 289 {{6184, 0, 0}, {32580, 0, 0}, {23921, 0, 0}, {8249, 0, 0}, {9830, 0, 0}, 290 {2185, 0, 0}, {160, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 291 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}} 292 }, 293 { 294 {{3154, 0, 0}, {23700, 0, 0}, {19844, 0, 0}, {13230, 0, 0}, {15031, 0, 0}, 295 {8149, 0, 0}, {2126, 0, 0}, {28649, 0, 0}, {16742, 0, 0}, {7111, 0, 0}, 296 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}}, 297 {{811, 0, 0}, {29538, 0, 0}, {21615, 0, 0}, {14645, 0, 0}, {12625, 0, 0}, 298 {6232, 0, 0}, {782, 0, 0}, {29718, 0, 0}, {18165, 0, 0}, {7613, 0, 0}, 299 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}}, 300 {{405, 0, 0}, {22076, 0, 0}, {13678, 0, 0}, {8411, 0, 0}, {8326, 0, 0}, 301 {4456, 0, 0}, {599, 0, 0}, {29120, 0, 0}, {17078, 0, 0}, {5953, 0, 0}, 302 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}}, 303 {{2099, 0, 0}, {28936, 0, 0}, {21105, 0, 0}, {13879, 0, 0}, {12986, 0, 0}, 304 {9455, 0, 0}, {1438, 0, 0}, {27644, 0, 0}, {14049, 0, 0}, {4300, 0, 0}, 305 {29686, 0, 0}, {11786, 0, 0}, {3325, 0, 0}}, 306 {{4195, 0, 0}, {29585, 0, 0}, {14966, 0, 0}, {6791, 0, 0}, {6091, 0, 0}, 307 {4936, 0, 0}, {381, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 308 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}} 309 }, 310 { 311 {{5881, 0, 0}, {26039, 0, 0}, {22407, 0, 0}, {15326, 0, 0}, {17723, 0, 0}, 312 {10290, 0, 0}, {3696, 0, 0}, {30055, 0, 0}, {20907, 0, 0}, {11995, 0, 0}, 313 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}}, 314 {{865, 0, 0}, {30724, 0, 0}, {25240, 0, 0}, {18150, 0, 0}, {16586, 0, 0}, 315 {8600, 0, 0}, {1731, 0, 0}, {29982, 0, 0}, {21574, 0, 0}, {12613, 0, 0}, 316 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}}, 317 {{258, 0, 0}, {24338, 0, 0}, {15450, 0, 0}, {8614, 0, 0}, {9094, 0, 0}, 318 {3979, 0, 0}, {629, 0, 0}, {29328, 0, 0}, {19651, 0, 0}, {10066, 0, 0}, 319 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}}, 320 {{1097, 0, 0}, {30712, 0, 0}, {21022, 0, 0}, {15916, 0, 0}, {14133, 0, 0}, 321 {8053, 0, 0}, {1284, 0, 0}, {28112, 0, 0}, {16694, 0, 0}, {8064, 0, 0}, 322 {30962, 0, 0}, {18123, 0, 0}, {7432, 0, 0}}, 323 {{1229, 0, 0}, {24335, 0, 0}, {12192, 0, 0}, {4864, 0, 0}, {4916, 0, 0}, 324 {2742, 0, 0}, {327, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 325 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}} 326 } 327}; 328/* clang-format on */ 329 330alignas(kMaxAlignment) constexpr uint16_t 331 kDefaultInterTxTypeCdf[3][kNumExtendedTransformSizes][kNumTransformTypes + 332 1] = { 333 {{28310, 27208, 25073, 23059, 19438, 17979, 15231, 12502, 11264, 9920, 334 8834, 7294, 5041, 3853, 2137, 0, 0}, 335 {31123, 30195, 27990, 27057, 24961, 24146, 22246, 17411, 15094, 12360, 336 10251, 7758, 5652, 3912, 2019, 0, 0}, 337 {30720, 28672, 26624, 24576, 22528, 20480, 18432, 16384, 14336, 12288, 338 10240, 8192, 6144, 4096, 2048, 0, 0}, 339 {30720, 28672, 26624, 24576, 22528, 20480, 18432, 16384, 14336, 12288, 340 10240, 8192, 6144, 4096, 2048, 0, 0}}, 341 {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, 342 {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, 343 // Only 16x16 is used in this case. 344 {31998, 30347, 27543, 19861, 16949, 13841, 11207, 8679, 6173, 4242, 345 2239, 0}, 346 {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}}, 347 {{16384, 0, 0}, {28601, 0, 0}, {30770, 0, 0}, {32020, 0, 0}}}; 348 349alignas(kMaxAlignment) constexpr uint16_t kDefaultIntraTxTypeCdf 350 [2][kNumExtendedTransformSizes][kIntraPredictionModesY] 351 [kNumTransformTypes + 1] = { 352 {{{31233, 24733, 23307, 20017, 9301, 4943, 0, 0}, 353 {32204, 29433, 23059, 21898, 14625, 4674, 0, 0}, 354 {32096, 29521, 29092, 20786, 13353, 9641, 0, 0}, 355 {27489, 18883, 17281, 14724, 9241, 2516, 0, 0}, 356 {28345, 26694, 24783, 22352, 7075, 3470, 0, 0}, 357 {31282, 28527, 23308, 22106, 16312, 5074, 0, 0}, 358 {32329, 29930, 29246, 26031, 14710, 9014, 0, 0}, 359 {31578, 28535, 27913, 21098, 12487, 8391, 0, 0}, 360 {31723, 28456, 24121, 22609, 14124, 3433, 0, 0}, 361 {32566, 29034, 28021, 25470, 15641, 8752, 0, 0}, 362 {32321, 28456, 25949, 23884, 16758, 8910, 0, 0}, 363 {32491, 28399, 27513, 23863, 16303, 10497, 0, 0}, 364 {29359, 27332, 22169, 17169, 13081, 8728, 0, 0}}, 365 {{30898, 19026, 18238, 16270, 8998, 5070, 0, 0}, 366 {32442, 23972, 18136, 17689, 13496, 5282, 0, 0}, 367 {32284, 25192, 25056, 18325, 13609, 10177, 0, 0}, 368 {31642, 17428, 16873, 15745, 11872, 2489, 0, 0}, 369 {32113, 27914, 27519, 26855, 10669, 5630, 0, 0}, 370 {31469, 26310, 23883, 23478, 17917, 7271, 0, 0}, 371 {32457, 27473, 27216, 25883, 16661, 10096, 0, 0}, 372 {31885, 24709, 24498, 21510, 15479, 11219, 0, 0}, 373 {32027, 25188, 23450, 22423, 16080, 3722, 0, 0}, 374 {32658, 25362, 24853, 23573, 16727, 9439, 0, 0}, 375 {32405, 24794, 23411, 22095, 17139, 8294, 0, 0}, 376 {32615, 25121, 24656, 22832, 17461, 12772, 0, 0}, 377 {29257, 26436, 21603, 17433, 13445, 9174, 0, 0}}}, 378 {{{26214, 19661, 13107, 6554, 0, 0}, 379 {26214, 19661, 13107, 6554, 0, 0}, 380 {26214, 19661, 13107, 6554, 0, 0}, 381 {26214, 19661, 13107, 6554, 0, 0}, 382 {26214, 19661, 13107, 6554, 0, 0}, 383 {26214, 19661, 13107, 6554, 0, 0}, 384 {26214, 19661, 13107, 6554, 0, 0}, 385 {26214, 19661, 13107, 6554, 0, 0}, 386 {26214, 19661, 13107, 6554, 0, 0}, 387 {26214, 19661, 13107, 6554, 0, 0}, 388 {26214, 19661, 13107, 6554, 0, 0}, 389 {26214, 19661, 13107, 6554, 0, 0}, 390 {26214, 19661, 13107, 6554, 0, 0}}, 391 {{26214, 19661, 13107, 6554, 0, 0}, 392 {26214, 19661, 13107, 6554, 0, 0}, 393 {26214, 19661, 13107, 6554, 0, 0}, 394 {26214, 19661, 13107, 6554, 0, 0}, 395 {26214, 19661, 13107, 6554, 0, 0}, 396 {26214, 19661, 13107, 6554, 0, 0}, 397 {26214, 19661, 13107, 6554, 0, 0}, 398 {26214, 19661, 13107, 6554, 0, 0}, 399 {26214, 19661, 13107, 6554, 0, 0}, 400 {26214, 19661, 13107, 6554, 0, 0}, 401 {26214, 19661, 13107, 6554, 0, 0}, 402 {26214, 19661, 13107, 6554, 0, 0}, 403 {26214, 19661, 13107, 6554, 0, 0}}, 404 {{31641, 19954, 9996, 5285, 0, 0}, 405 {32623, 26007, 20788, 6101, 0, 0}, 406 {32406, 26881, 21090, 16043, 0, 0}, 407 {32383, 17555, 14181, 2075, 0, 0}, 408 {32743, 29854, 9634, 4865, 0, 0}, 409 {32708, 28298, 21019, 8777, 0, 0}, 410 {32731, 29436, 18257, 11320, 0, 0}, 411 {32611, 26448, 19732, 15329, 0, 0}, 412 {32649, 26049, 19862, 3372, 0, 0}, 413 {32721, 27231, 20192, 11269, 0, 0}, 414 {32499, 26692, 21510, 9653, 0, 0}, 415 {32685, 27153, 20767, 15540, 0, 0}, 416 {30800, 27212, 20745, 14221, 0, 0}}}}; 417 418alignas(kMaxAlignment) constexpr uint16_t 419 kDefaultEobPt16Cdf[kCoefficientQuantizerContexts][kNumPlaneTypes] 420 [kEobPtContexts][kEobPt16SymbolCount + 1] = { 421 {{{31928, 31729, 30788, 27873, 0, 0}, 422 {32398, 32097, 30885, 28297, 0, 0}}, 423 {{29521, 27818, 23080, 18205, 0, 0}, 424 {30864, 29414, 25005, 18121, 0, 0}}}, 425 {{{30643, 30217, 27603, 23822, 0, 0}, 426 {32255, 32003, 30909, 26429, 0, 0}}, 427 {{25131, 23270, 18509, 13660, 0, 0}, 428 {30271, 28672, 23902, 15775, 0, 0}}}, 429 {{{28752, 27871, 23887, 17800, 0, 0}, 430 {32052, 31663, 30122, 22712, 0, 0}}, 431 {{21629, 19498, 14527, 9202, 0, 0}, 432 {29576, 27736, 22471, 13013, 0, 0}}}, 433 {{{26060, 23810, 18022, 10635, 0, 0}, 434 {31546, 30694, 27985, 17358, 0, 0}}, 435 {{13193, 11002, 6724, 3059, 0, 0}, 436 {25471, 22001, 13495, 4574, 0, 0}}}}; 437alignas(kMaxAlignment) constexpr uint16_t 438 kDefaultEobPt32Cdf[kCoefficientQuantizerContexts][kNumPlaneTypes] 439 [kEobPtContexts][kEobPt32SymbolCount + 1] = { 440 {{{32368, 32248, 31791, 30666, 26226, 0, 0}, 441 {32558, 32363, 31453, 29442, 25231, 0, 0}}, 442 {{30132, 28495, 25180, 20974, 12367, 0, 0}, 443 {30982, 29589, 25866, 21411, 13714, 0, 0}}}, 444 {{{31779, 31519, 30749, 28617, 21983, 0, 0}, 445 {32455, 32327, 31669, 29851, 24206, 0, 0}}, 446 {{24374, 22416, 18836, 13913, 6754, 0, 0}, 447 {30190, 28644, 24587, 19098, 8534, 0, 0}}}, 448 {{{30253, 29765, 28316, 24606, 16727, 0, 0}, 449 {32194, 31947, 30932, 27679, 19640, 0, 0}}, 450 {{19300, 16465, 12407, 7663, 3487, 0, 0}, 451 {29226, 27266, 22353, 16008, 7124, 0, 0}}}, 452 {{{28151, 27059, 24322, 19184, 9633, 0, 0}, 453 {31612, 31066, 29093, 23494, 12229, 0, 0}}, 454 {{10682, 8486, 5758, 2998, 1025, 0, 0}, 455 {25069, 21871, 11877, 5842, 1140, 0, 0}}}}; 456alignas(kMaxAlignment) constexpr uint16_t 457 kDefaultEobPt64Cdf[kCoefficientQuantizerContexts][kNumPlaneTypes] 458 [kEobPtContexts][kEobPt64SymbolCount + 1] = { 459 {{{32439, 32270, 31667, 30984, 29503, 25010, 0, 0}, 460 {32433, 32038, 31309, 27274, 24013, 19771, 0, 0}}, 461 {{29263, 27464, 22682, 18954, 15084, 9398, 0, 0}, 462 {31205, 30068, 27892, 21857, 18062, 10288, 0, 0}}}, 463 {{{31508, 31322, 30515, 29056, 26116, 19399, 0, 0}, 464 {32367, 32163, 31739, 30205, 26923, 20142, 0, 0}}, 465 {{24159, 22156, 18144, 14054, 10154, 3744, 0, 0}, 466 {30845, 29641, 26901, 23065, 18491, 5668, 0, 0}}}, 467 {{{30394, 29996, 28185, 25492, 20480, 13062, 0, 0}, 468 {32271, 31958, 31453, 29768, 25764, 17127, 0, 0}}, 469 {{17718, 15642, 11358, 7882, 4612, 2042, 0, 0}, 470 {28734, 26478, 22533, 17786, 11554, 4277, 0, 0}}}, 471 {{{26461, 25227, 20708, 16410, 10215, 4903, 0, 0}, 472 {31479, 30448, 28797, 24842, 18615, 8477, 0, 0}}, 473 {{8556, 7060, 4500, 2733, 1461, 719, 0, 0}, 474 {24042, 20390, 13359, 6318, 2730, 306, 0, 0}}}}; 475alignas(kMaxAlignment) constexpr uint16_t kDefaultEobPt128Cdf 476 [kCoefficientQuantizerContexts][kNumPlaneTypes][kEobPtContexts] 477 [kEobPt128SymbolCount + 1] = { 478 {{{32549, 32286, 31628, 30677, 29088, 26740, 20182, 0, 0}, 479 {32397, 32069, 31514, 27938, 23289, 20206, 15271, 0, 0}}, 480 {{27523, 25312, 19888, 16916, 12735, 8836, 5160, 0, 0}, 481 {30714, 29296, 26899, 18536, 14526, 12178, 6016, 0, 0}}}, 482 {{{32083, 31835, 31280, 30054, 28002, 24206, 13514, 0, 0}, 483 {32551, 32416, 32150, 30465, 27507, 22799, 15296, 0, 0}}, 484 {{24723, 21568, 17271, 13173, 8820, 5360, 1830, 0, 0}, 485 {30458, 28608, 25297, 17771, 14837, 12000, 2528, 0, 0}}}, 486 {{{31402, 31030, 30241, 27752, 23413, 16971, 8125, 0, 0}, 487 {32414, 32210, 31824, 30008, 25481, 18731, 10989, 0, 0}}, 488 {{19141, 16522, 12595, 8339, 4820, 2353, 905, 0, 0}, 489 {26493, 22879, 17999, 9604, 4780, 2275, 496, 0, 0}}}, 490 {{{29296, 27883, 25279, 20287, 14251, 8232, 3133, 0, 0}, 491 {31882, 31037, 29497, 24299, 17199, 10642, 4385, 0, 0}}, 492 {{8455, 6706, 4383, 2661, 1551, 870, 423, 0, 0}, 493 {23603, 19486, 11618, 2482, 874, 197, 56, 0, 0}}}}; 494 495alignas(kMaxAlignment) constexpr uint16_t kDefaultEobPt256Cdf 496 [kCoefficientQuantizerContexts][kNumPlaneTypes][kEobPtContexts] 497 [kEobPt256SymbolCount + 1] = { 498 {{{32458, 32184, 30881, 29179, 26600, 24157, 21416, 17116, 0, 0}, 499 {31770, 30918, 29770, 27164, 15427, 12880, 9869, 7185, 0, 0}}, 500 {{30248, 29528, 26816, 23898, 20191, 15210, 12814, 8600, 0, 0}, 501 {30565, 28638, 25333, 22029, 12116, 9087, 7159, 5507, 0, 0}}}, 502 {{{31320, 30659, 28617, 26505, 23439, 19508, 14824, 9468, 0, 0}, 503 {32369, 31749, 31019, 29730, 22324, 17222, 10029, 5474, 0, 0}}, 504 {{26366, 24620, 20145, 17696, 14040, 9921, 6321, 3391, 0, 0}, 505 {31094, 29516, 27034, 22609, 10371, 8966, 7947, 1828, 0, 0}}}, 506 {{{29679, 28848, 26730, 23308, 18502, 12887, 7002, 3592, 0, 0}, 507 {31684, 30410, 29280, 27646, 21285, 14665, 6745, 2969, 0, 0}}, 508 {{21254, 18974, 15288, 12014, 8407, 5390, 3276, 1491, 0, 0}, 509 {26197, 23158, 17252, 10942, 3676, 1939, 926, 60, 0, 0}}}, 510 {{{27420, 25655, 20948, 16844, 10662, 5991, 2434, 1011, 0, 0}, 511 {30315, 28294, 26461, 23991, 16294, 9793, 3768, 1221, 0, 0}}, 512 {{9658, 8171, 5628, 3874, 2601, 1841, 1376, 674, 0, 0}, 513 {22770, 15107, 7590, 4671, 1460, 730, 365, 73, 0, 0}}}}; 514 515alignas(kMaxAlignment) constexpr uint16_t kDefaultEobPt512Cdf 516 [kCoefficientQuantizerContexts][kNumPlaneTypes][kEobPt512SymbolCount + 1] = 517 {{{32127, 31785, 29061, 27338, 22534, 17810, 13980, 9356, 6707, 0, 0}, 518 {27673, 26322, 22772, 19414, 16751, 14782, 11849, 6639, 3628, 0, 0}}, 519 {{31538, 30490, 27733, 24992, 20897, 17422, 13178, 8184, 4019, 0, 0}, 520 {25503, 22789, 16949, 13518, 10988, 8922, 6290, 4372, 957, 0, 0}}, 521 {{30144, 28832, 26288, 23082, 18789, 15042, 9501, 4358, 1690, 0, 0}, 522 {20753, 17999, 13180, 10716, 8546, 6956, 5468, 3549, 654, 0, 0}}, 523 {{26841, 24959, 21845, 18171, 13329, 8633, 4312, 1626, 708, 0, 0}, 524 {11675, 9725, 7026, 5110, 3671, 3052, 2695, 1948, 812, 0, 0}}}; 525 526alignas(kMaxAlignment) constexpr uint16_t 527 kDefaultEobPt1024Cdf[kCoefficientQuantizerContexts][kNumPlaneTypes] 528 [kEobPt1024SymbolCount + 1] = { 529 {{32375, 32347, 32017, 31145, 29608, 26416, 19423, 530 14721, 10197, 6938, 0, 0}, 531 {30903, 30780, 29838, 28526, 22235, 16230, 11414, 532 5513, 4222, 984, 0, 0}}, 533 {{32072, 31820, 29623, 27066, 23062, 19551, 14917, 534 10912, 7076, 4734, 0, 0}, 535 {30096, 29177, 23438, 15684, 10043, 8484, 6241, 536 4741, 4391, 1892, 0, 0}}, 537 {{29984, 28937, 25727, 22247, 17921, 13924, 9613, 538 6086, 3539, 1723, 0, 0}, 539 {23191, 20302, 15029, 12018, 10707, 9553, 8167, 540 7285, 6925, 712, 0, 0}}, 541 {{26070, 24434, 20807, 17006, 12582, 8906, 5334, 542 3442, 1686, 718, 0, 0}, 543 {12199, 10342, 7199, 5909, 4715, 3855, 3282, 3044, 544 2961, 198, 0, 0}}}; 545 546/* clang-format off */ 547alignas(kMaxAlignment) constexpr uint16_t kDefaultEobExtraCdf[kCoefficientQuantizerContexts] 548 [kNumSquareTransformSizes][kNumPlaneTypes] 549 [kEobExtraContexts][kBooleanFieldCdfSize] = { 550 { 551 { 552 {{15807, 0, 0}, {15545, 0, 0}, {25147, 0, 0}, {16384, 0, 0}, 553 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 554 {16384, 0, 0}}, 555 {{13699, 0, 0}, {10243, 0, 0}, {19391, 0, 0}, {16384, 0, 0}, 556 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 557 {16384, 0, 0}} 558 }, 559 { 560 {{12367, 0, 0}, {15743, 0, 0}, {19923, 0, 0}, {19895, 0, 0}, 561 {18674, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 562 {16384, 0, 0}}, 563 {{12087, 0, 0}, {12067, 0, 0}, {17518, 0, 0}, {17751, 0, 0}, 564 {17840, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 565 {16384, 0, 0}} 566 }, 567 { 568 {{8863, 0, 0}, {15574, 0, 0}, {16598, 0, 0}, {15073, 0, 0}, 569 {18942, 0, 0}, {16958, 0, 0}, {20732, 0, 0}, {16384, 0, 0}, 570 {16384, 0, 0}}, 571 {{8809, 0, 0}, {11969, 0, 0}, {13747, 0, 0}, {16565, 0, 0}, 572 {14882, 0, 0}, {18624, 0, 0}, {20758, 0, 0}, {16384, 0, 0}, 573 {16384, 0, 0}} 574 }, 575 { 576 {{5369, 0, 0}, {16441, 0, 0}, {14697, 0, 0}, {13184, 0, 0}, 577 {12047, 0, 0}, {14336, 0, 0}, {13208, 0, 0}, {22618, 0, 0}, 578 {23963, 0, 0}}, 579 {{7836, 0, 0}, {11935, 0, 0}, {20741, 0, 0}, {16098, 0, 0}, 580 {12854, 0, 0}, {17662, 0, 0}, {15106, 0, 0}, {18985, 0, 0}, 581 {4012, 0, 0}} 582 }, 583 { 584 {{9362, 0, 0}, {10923, 0, 0}, {14336, 0, 0}, {16384, 0, 0}, 585 {15672, 0, 0}, {20207, 0, 0}, {15448, 0, 0}, {10373, 0, 0}, 586 {11398, 0, 0}}, 587 {{16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 588 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 589 {16384, 0, 0}} 590 } 591 }, 592 { 593 { 594 {{15297, 0, 0}, {12545, 0, 0}, {21411, 0, 0}, {16384, 0, 0}, 595 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 596 {16384, 0, 0}}, 597 {{12433, 0, 0}, {11101, 0, 0}, {17950, 0, 0}, {16384, 0, 0}, 598 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 599 {16384, 0, 0}} 600 }, 601 { 602 {{12338, 0, 0}, {12106, 0, 0}, {17401, 0, 0}, {15798, 0, 0}, 603 {18111, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 604 {16384, 0, 0}}, 605 {{10651, 0, 0}, {10740, 0, 0}, {14118, 0, 0}, {16726, 0, 0}, 606 {16883, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 607 {16384, 0, 0}} 608 }, 609 { 610 {{10359, 0, 0}, {11756, 0, 0}, {17118, 0, 0}, {15373, 0, 0}, 611 {17299, 0, 0}, {12563, 0, 0}, {13257, 0, 0}, {16384, 0, 0}, 612 {16384, 0, 0}}, 613 {{8548, 0, 0}, {10288, 0, 0}, {15031, 0, 0}, {13852, 0, 0}, 614 {13500, 0, 0}, {14356, 0, 0}, {13924, 0, 0}, {16384, 0, 0}, 615 {16384, 0, 0}} 616 }, 617 { 618 {{6777, 0, 0}, {12454, 0, 0}, {15037, 0, 0}, {13090, 0, 0}, 619 {14119, 0, 0}, {15461, 0, 0}, {10970, 0, 0}, {15219, 0, 0}, 620 {17138, 0, 0}}, 621 {{6183, 0, 0}, {11299, 0, 0}, {12336, 0, 0}, {15033, 0, 0}, 622 {13488, 0, 0}, {17533, 0, 0}, {12471, 0, 0}, {10297, 0, 0}, 623 {3771, 0, 0}} 624 }, 625 { 626 {{6163, 0, 0}, {21464, 0, 0}, {16042, 0, 0}, {16208, 0, 0}, 627 {11902, 0, 0}, {9244, 0, 0}, {12890, 0, 0}, {19299, 0, 0}, 628 {9684, 0, 0}}, 629 {{16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 630 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 631 {16384, 0, 0}} 632 } 633 }, 634 { 635 { 636 {{13785, 0, 0}, {12256, 0, 0}, {17883, 0, 0}, {16384, 0, 0}, 637 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 638 {16384, 0, 0}}, 639 {{12678, 0, 0}, {13324, 0, 0}, {15482, 0, 0}, {16384, 0, 0}, 640 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 641 {16384, 0, 0}} 642 }, 643 { 644 {{13629, 0, 0}, {11281, 0, 0}, {13809, 0, 0}, {11858, 0, 0}, 645 {13679, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 646 {16384, 0, 0}}, 647 {{12232, 0, 0}, {12104, 0, 0}, {12143, 0, 0}, {13645, 0, 0}, 648 {17906, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 649 {16384, 0, 0}} 650 }, 651 { 652 {{12935, 0, 0}, {11266, 0, 0}, {15283, 0, 0}, {12501, 0, 0}, 653 {14415, 0, 0}, {9439, 0, 0}, {11290, 0, 0}, {16384, 0, 0}, 654 {16384, 0, 0}}, 655 {{10727, 0, 0}, {9334, 0, 0}, {12767, 0, 0}, {12214, 0, 0}, 656 {11817, 0, 0}, {12623, 0, 0}, {17206, 0, 0}, {16384, 0, 0}, 657 {16384, 0, 0}} 658 }, 659 { 660 {{9456, 0, 0}, {11161, 0, 0}, {16242, 0, 0}, {13811, 0, 0}, 661 {14734, 0, 0}, {13834, 0, 0}, {8521, 0, 0}, {15847, 0, 0}, 662 {15688, 0, 0}}, 663 {{6189, 0, 0}, {7858, 0, 0}, {14131, 0, 0}, {12968, 0, 0}, 664 {12380, 0, 0}, {22881, 0, 0}, {17126, 0, 0}, {2570, 0, 0}, 665 {8047, 0, 0}} 666 }, 667 { 668 {{5770, 0, 0}, {16031, 0, 0}, {14930, 0, 0}, {13846, 0, 0}, 669 {13253, 0, 0}, {14132, 0, 0}, {15435, 0, 0}, {16992, 0, 0}, 670 {10110, 0, 0}}, 671 {{16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 672 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 673 {16384, 0, 0}} 674 } 675 }, 676 { 677 { 678 {{12591, 0, 0}, {11979, 0, 0}, {12506, 0, 0}, {16384, 0, 0}, 679 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 680 {16384, 0, 0}}, 681 {{11352, 0, 0}, {11913, 0, 0}, {9358, 0, 0}, {16384, 0, 0}, 682 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 683 {16384, 0, 0}} 684 }, 685 { 686 {{12530, 0, 0}, {11711, 0, 0}, {13609, 0, 0}, {10431, 0, 0}, 687 {12609, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 688 {16384, 0, 0}}, 689 {{12643, 0, 0}, {12209, 0, 0}, {11061, 0, 0}, {10472, 0, 0}, 690 {15435, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 691 {16384, 0, 0}} 692 }, 693 { 694 {{12827, 0, 0}, {12241, 0, 0}, {11298, 0, 0}, {10281, 0, 0}, 695 {13210, 0, 0}, {10414, 0, 0}, {12437, 0, 0}, {16384, 0, 0}, 696 {16384, 0, 0}}, 697 {{10016, 0, 0}, {7762, 0, 0}, {10693, 0, 0}, {11192, 0, 0}, 698 {15028, 0, 0}, {11078, 0, 0}, {13557, 0, 0}, {16384, 0, 0}, 699 {16384, 0, 0}} 700 }, 701 { 702 {{11326, 0, 0}, {10410, 0, 0}, {14265, 0, 0}, {12477, 0, 0}, 703 {12823, 0, 0}, {11474, 0, 0}, {11590, 0, 0}, {13368, 0, 0}, 704 {22212, 0, 0}}, 705 {{8120, 0, 0}, {7819, 0, 0}, {12060, 0, 0}, {8863, 0, 0}, 706 {12267, 0, 0}, {23210, 0, 0}, {23345, 0, 0}, {2403, 0, 0}, 707 {13515, 0, 0}} 708 }, 709 { 710 {{6704, 0, 0}, {10670, 0, 0}, {13155, 0, 0}, {12243, 0, 0}, 711 {15173, 0, 0}, {16150, 0, 0}, {12271, 0, 0}, {13779, 0, 0}, 712 {17255, 0, 0}}, 713 {{16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 714 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 715 {16384, 0, 0}} 716 } 717 } 718}; 719 720alignas(kMaxAlignment) constexpr uint16_t kDefaultCoeffBaseEobCdf[kCoefficientQuantizerContexts] 721 [kNumSquareTransformSizes][kNumPlaneTypes] 722 [kCoeffBaseEobContexts] 723 [kCoeffBaseEobSymbolCount + 1] = { 724 { 725 { 726 {{14931, 3713, 0, 0}, {3168, 1322, 0, 0}, {1924, 890, 0, 0}, 727 {7842, 3820, 0, 0}}, 728 {{11403, 2742, 0, 0}, {2256, 345, 0, 0}, {1110, 147, 0, 0}, 729 {3138, 887, 0, 0}} 730 }, 731 { 732 {{27051, 6291, 0, 0}, {2277, 1065, 0, 0}, {1218, 610, 0, 0}, 733 {3120, 1277, 0, 0}}, 734 {{20160, 4948, 0, 0}, {2088, 543, 0, 0}, {1959, 433, 0, 0}, 735 {1469, 345, 0, 0}} 736 }, 737 { 738 {{30982, 20156, 0, 0}, {2105, 1143, 0, 0}, {429, 300, 0, 0}, 739 {1620, 935, 0, 0}}, 740 {{13911, 8903, 0, 0}, {1340, 340, 0, 0}, {1024, 395, 0, 0}, 741 {993, 242, 0, 0}} 742 }, 743 { 744 {{30981, 30236, 0, 0}, {1936, 1106, 0, 0}, {944, 86, 0, 0}, 745 {635, 199, 0, 0}}, 746 {{19017, 10533, 0, 0}, {679, 359, 0, 0}, {5684, 4848, 0, 0}, 747 {3477, 174, 0, 0}} 748 }, 749 { 750 {{31043, 29319, 0, 0}, {1666, 833, 0, 0}, {311, 155, 0, 0}, 751 {356, 119, 0, 0}}, 752 {{21845, 10923, 0, 0}, {21845, 10923, 0, 0}, {21845, 10923, 0, 0}, 753 {21845, 10923, 0, 0}} 754 } 755 }, 756 { 757 { 758 {{15208, 2880, 0, 0}, {3097, 1219, 0, 0}, {1761, 712, 0, 0}, 759 {5482, 2762, 0, 0}}, 760 {{6174, 1556, 0, 0}, {1560, 186, 0, 0}, {933, 131, 0, 0}, 761 {2173, 562, 0, 0}} 762 }, 763 { 764 {{17529, 2836, 0, 0}, {1453, 673, 0, 0}, {638, 334, 0, 0}, 765 {1904, 772, 0, 0}}, 766 {{6489, 1800, 0, 0}, {1626, 273, 0, 0}, {1055, 228, 0, 0}, 767 {839, 174, 0, 0}} 768 }, 769 { 770 {{30124, 7570, 0, 0}, {730, 317, 0, 0}, {129, 73, 0, 0}, 771 {602, 250, 0, 0}}, 772 {{15581, 5100, 0, 0}, {1054, 218, 0, 0}, {485, 90, 0, 0}, 773 {838, 205, 0, 0}} 774 }, 775 { 776 {{31724, 30511, 0, 0}, {2013, 845, 0, 0}, {560, 75, 0, 0}, 777 {524, 153, 0, 0}}, 778 {{11451, 6561, 0, 0}, {3635, 1900, 0, 0}, {3457, 1537, 0, 0}, 779 {3111, 1681, 0, 0}} 780 }, 781 { 782 {{32290, 30934, 0, 0}, {1763, 781, 0, 0}, {451, 44, 0, 0}, 783 {1903, 120, 0, 0}}, 784 {{21845, 10923, 0, 0}, {21845, 10923, 0, 0}, {21845, 10923, 0, 0}, 785 {21845, 10923, 0, 0}} 786 } 787 }, 788 { 789 { 790 {{12676, 1994, 0, 0}, {2073, 748, 0, 0}, {1637, 665, 0, 0}, 791 {4102, 1898, 0, 0}}, 792 {{5510, 1673, 0, 0}, {964, 145, 0, 0}, {1005, 240, 0, 0}, 793 {1330, 262, 0, 0}} 794 }, 795 { 796 {{14719, 2279, 0, 0}, {1062, 482, 0, 0}, {605, 295, 0, 0}, 797 {1218, 584, 0, 0}}, 798 {{5652, 1926, 0, 0}, {797, 170, 0, 0}, {680, 192, 0, 0}, 799 {701, 104, 0, 0}} 800 }, 801 { 802 {{19914, 3675, 0, 0}, {496, 210, 0, 0}, {101, 39, 0, 0}, 803 {462, 183, 0, 0}}, 804 {{7292, 2402, 0, 0}, {599, 81, 0, 0}, {289, 79, 0, 0}, 805 {1095, 134, 0, 0}} 806 }, 807 { 808 {{29959, 13467, 0, 0}, {563, 146, 0, 0}, {430, 38, 0, 0}, 809 {982, 152, 0, 0}}, 810 {{10031, 3663, 0, 0}, {1958, 406, 0, 0}, {2754, 141, 0, 0}, 811 {2240, 194, 0, 0}} 812 }, 813 { 814 {{31833, 29386, 0, 0}, {1979, 859, 0, 0}, {302, 12, 0, 0}, 815 {1908, 255, 0, 0}}, 816 {{21845, 10923, 0, 0}, {21845, 10923, 0, 0}, {21845, 10923, 0, 0}, 817 {21845, 10923, 0, 0}} 818 } 819 }, 820 { 821 { 822 {{10271, 1570, 0, 0}, {1053, 273, 0, 0}, {1162, 431, 0, 0}, 823 {2380, 778, 0, 0}}, 824 {{4891, 1184, 0, 0}, {598, 40, 0, 0}, {613, 80, 0, 0}, 825 {549, 66, 0, 0}} 826 }, 827 { 828 {{11311, 1725, 0, 0}, {817, 285, 0, 0}, {615, 206, 0, 0}, 829 {1295, 553, 0, 0}}, 830 {{5210, 1617, 0, 0}, {748, 128, 0, 0}, {671, 193, 0, 0}, 831 {526, 49, 0, 0}} 832 }, 833 { 834 {{12788, 2177, 0, 0}, {549, 171, 0, 0}, {187, 62, 0, 0}, 835 {965, 481, 0, 0}}, 836 {{6295, 2261, 0, 0}, {337, 45, 0, 0}, {572, 157, 0, 0}, 837 {1180, 240, 0, 0}} 838 }, 839 { 840 {{8121, 2305, 0, 0}, {356, 73, 0, 0}, {300, 48, 0, 0}, 841 {1499, 245, 0, 0}}, 842 {{4286, 1263, 0, 0}, {616, 67, 0, 0}, {1036, 170, 0, 0}, 843 {1001, 56, 0, 0}} 844 }, 845 { 846 {{20410, 7791, 0, 0}, {1437, 383, 0, 0}, {134, 12, 0, 0}, 847 {2357, 220, 0, 0}}, 848 {{21845, 10923, 0, 0}, {21845, 10923, 0, 0}, {21845, 10923, 0, 0}, 849 {21845, 10923, 0, 0}} 850 } 851 } 852}; 853/* clang-format on */ 854 855alignas(kMaxAlignment) constexpr uint16_t kDefaultCoeffBaseCdf 856 [kCoefficientQuantizerContexts][kNumSquareTransformSizes][kNumPlaneTypes] 857 [kCoeffBaseContexts][kCoeffBaseSymbolCount + 1] = { 858 {{{{28734, 23838, 20041, 0, 0}, {14686, 3027, 891, 0, 0}, 859 {20172, 6644, 2275, 0, 0}, {23322, 11650, 5763, 0, 0}, 860 {26460, 17627, 11489, 0, 0}, {30305, 26411, 22985, 0, 0}, 861 {12101, 2222, 839, 0, 0}, {19725, 6645, 2634, 0, 0}, 862 {24617, 14011, 7990, 0, 0}, {27513, 19929, 14136, 0, 0}, 863 {29948, 25562, 21607, 0, 0}, {24576, 16384, 8192, 0, 0}, 864 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 865 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 866 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 867 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 868 {24576, 16384, 8192, 0, 0}, {17032, 5215, 2164, 0, 0}, 869 {21558, 8974, 3981, 0, 0}, {26821, 18894, 13067, 0, 0}, 870 {28553, 23445, 18877, 0, 0}, {29935, 26306, 22709, 0, 0}, 871 {13163, 2375, 1186, 0, 0}, {19245, 6516, 2520, 0, 0}, 872 {24322, 14146, 8256, 0, 0}, {28950, 22425, 16794, 0, 0}, 873 {31287, 28651, 25972, 0, 0}, {10119, 1466, 578, 0, 0}, 874 {17939, 5641, 2319, 0, 0}, {24455, 15066, 9464, 0, 0}, 875 {29746, 24467, 19982, 0, 0}, {31232, 28356, 25584, 0, 0}, 876 {10414, 2994, 1396, 0, 0}, {18045, 7296, 3554, 0, 0}, 877 {26095, 19023, 14106, 0, 0}, {30700, 27002, 23446, 0, 0}, 878 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}, 879 {{26466, 16324, 11007, 0, 0}, {9728, 1230, 293, 0, 0}, 880 {17572, 4316, 1272, 0, 0}, {22748, 9822, 4254, 0, 0}, 881 {26235, 15906, 9267, 0, 0}, {29230, 22952, 17692, 0, 0}, 882 {8324, 893, 243, 0, 0}, {16887, 3844, 1133, 0, 0}, 883 {22846, 9895, 4302, 0, 0}, {26241, 15802, 9077, 0, 0}, 884 {28654, 21465, 15548, 0, 0}, {24576, 16384, 8192, 0, 0}, 885 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 886 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 887 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 888 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 889 {24576, 16384, 8192, 0, 0}, {12567, 1998, 559, 0, 0}, 890 {18014, 4697, 1510, 0, 0}, {24390, 12582, 6251, 0, 0}, 891 {26852, 17469, 10790, 0, 0}, {28500, 21185, 14867, 0, 0}, 892 {8407, 743, 187, 0, 0}, {14095, 2663, 825, 0, 0}, 893 {22572, 10524, 5192, 0, 0}, {27273, 18419, 12351, 0, 0}, 894 {30092, 25353, 21270, 0, 0}, {8090, 810, 183, 0, 0}, 895 {14139, 2862, 937, 0, 0}, {23404, 12044, 6453, 0, 0}, 896 {28127, 20450, 14674, 0, 0}, {30010, 25381, 21189, 0, 0}, 897 {7335, 926, 299, 0, 0}, {13973, 3479, 1357, 0, 0}, 898 {25124, 15184, 9176, 0, 0}, {29360, 23754, 17721, 0, 0}, 899 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}}, 900 {{{28232, 22696, 18767, 0, 0}, {7309, 1352, 562, 0, 0}, 901 {16163, 4720, 1950, 0, 0}, {21760, 9911, 5049, 0, 0}, 902 {25853, 16500, 10453, 0, 0}, {30143, 25956, 22231, 0, 0}, 903 {8511, 980, 269, 0, 0}, {15888, 3314, 889, 0, 0}, 904 {20810, 7714, 2990, 0, 0}, {24852, 14050, 7684, 0, 0}, 905 {29385, 23991, 19322, 0, 0}, {10048, 1165, 375, 0, 0}, 906 {17808, 4643, 1433, 0, 0}, {23037, 10558, 4840, 0, 0}, 907 {26464, 16936, 10491, 0, 0}, {29858, 24950, 20602, 0, 0}, 908 {12393, 2141, 637, 0, 0}, {18864, 5484, 1881, 0, 0}, 909 {23400, 11210, 5624, 0, 0}, {26831, 17802, 11649, 0, 0}, 910 {30101, 25543, 21449, 0, 0}, {8798, 1298, 390, 0, 0}, 911 {15595, 3034, 750, 0, 0}, {19973, 7327, 2803, 0, 0}, 912 {23787, 13088, 6875, 0, 0}, {28040, 21396, 15866, 0, 0}, 913 {8481, 971, 329, 0, 0}, {16065, 3623, 1072, 0, 0}, 914 {21935, 9214, 4043, 0, 0}, {26300, 16202, 9711, 0, 0}, 915 {30353, 26206, 22490, 0, 0}, {6158, 373, 109, 0, 0}, 916 {14178, 2270, 651, 0, 0}, {20348, 7012, 2818, 0, 0}, 917 {25129, 14022, 8058, 0, 0}, {29767, 24682, 20421, 0, 0}, 918 {7692, 704, 188, 0, 0}, {14822, 2640, 740, 0, 0}, 919 {20744, 7783, 3390, 0, 0}, {25251, 14378, 8464, 0, 0}, 920 {29525, 23987, 19437, 0, 0}, {24576, 16384, 8192, 0, 0}}, 921 {{26731, 15997, 10811, 0, 0}, {7994, 1064, 342, 0, 0}, 922 {15938, 4179, 1712, 0, 0}, {22166, 9940, 5008, 0, 0}, 923 {26035, 15939, 9697, 0, 0}, {29518, 23854, 19212, 0, 0}, 924 {7186, 548, 100, 0, 0}, {14109, 2426, 545, 0, 0}, 925 {20222, 6619, 2253, 0, 0}, {24348, 12317, 5967, 0, 0}, 926 {28132, 20348, 14424, 0, 0}, {5187, 406, 129, 0, 0}, 927 {13781, 2685, 790, 0, 0}, {21441, 8520, 3684, 0, 0}, 928 {25504, 15049, 8648, 0, 0}, {28773, 22000, 16599, 0, 0}, 929 {6875, 937, 281, 0, 0}, {16191, 4181, 1389, 0, 0}, 930 {22579, 10020, 4586, 0, 0}, {25936, 15674, 9212, 0, 0}, 931 {29060, 22658, 17434, 0, 0}, {6864, 486, 112, 0, 0}, 932 {13047, 1976, 492, 0, 0}, {19949, 6525, 2357, 0, 0}, 933 {24196, 12154, 5877, 0, 0}, {27404, 18709, 12301, 0, 0}, 934 {6188, 330, 91, 0, 0}, {11916, 1543, 428, 0, 0}, 935 {20333, 7068, 2801, 0, 0}, {24077, 11943, 5792, 0, 0}, 936 {28322, 20559, 15499, 0, 0}, {5418, 339, 72, 0, 0}, 937 {11396, 1791, 496, 0, 0}, {20095, 7498, 2915, 0, 0}, 938 {23560, 11843, 6128, 0, 0}, {27750, 19417, 14036, 0, 0}, 939 {5417, 289, 55, 0, 0}, {11370, 1559, 381, 0, 0}, 940 {20606, 7721, 2926, 0, 0}, {24872, 14077, 7449, 0, 0}, 941 {28098, 19886, 13887, 0, 0}, {24576, 16384, 8192, 0, 0}}}, 942 {{{27281, 22308, 19060, 0, 0}, {11171, 4465, 2094, 0, 0}, 943 {21731, 10815, 6292, 0, 0}, {24621, 14806, 9816, 0, 0}, 944 {27526, 19707, 14236, 0, 0}, {30879, 27560, 24586, 0, 0}, 945 {5994, 635, 178, 0, 0}, {14924, 3204, 1001, 0, 0}, 946 {21078, 8330, 3597, 0, 0}, {25226, 14553, 8309, 0, 0}, 947 {29775, 24718, 20449, 0, 0}, {4745, 440, 177, 0, 0}, 948 {14117, 2642, 814, 0, 0}, {20604, 7622, 3179, 0, 0}, 949 {25006, 14238, 7997, 0, 0}, {29276, 23585, 18848, 0, 0}, 950 {5177, 760, 277, 0, 0}, {15619, 3915, 1258, 0, 0}, 951 {21283, 8765, 3908, 0, 0}, {25071, 14682, 8558, 0, 0}, 952 {29693, 24769, 20550, 0, 0}, {4500, 286, 114, 0, 0}, 953 {13137, 1717, 364, 0, 0}, {18908, 5508, 1748, 0, 0}, 954 {23163, 11155, 5174, 0, 0}, {27892, 20606, 14860, 0, 0}, 955 {5520, 452, 192, 0, 0}, {13813, 2311, 693, 0, 0}, 956 {20944, 8771, 3973, 0, 0}, {25422, 14572, 8121, 0, 0}, 957 {29365, 23521, 18657, 0, 0}, {3057, 113, 33, 0, 0}, 958 {11599, 1374, 351, 0, 0}, {19281, 5570, 1811, 0, 0}, 959 {23940, 11085, 5154, 0, 0}, {28498, 21317, 15730, 0, 0}, 960 {4060, 190, 37, 0, 0}, {12648, 1527, 286, 0, 0}, 961 {19076, 5218, 1447, 0, 0}, {23350, 10254, 4329, 0, 0}, 962 {27769, 19485, 13306, 0, 0}, {24576, 16384, 8192, 0, 0}}, 963 {{27095, 18466, 13057, 0, 0}, {6517, 2067, 934, 0, 0}, 964 {19986, 8985, 4965, 0, 0}, {23641, 12111, 6960, 0, 0}, 965 {26400, 16560, 11306, 0, 0}, {30303, 25591, 21946, 0, 0}, 966 {2807, 205, 49, 0, 0}, {14450, 2877, 819, 0, 0}, 967 {21407, 8254, 3411, 0, 0}, {24868, 13165, 7161, 0, 0}, 968 {28766, 22178, 17222, 0, 0}, {3131, 458, 173, 0, 0}, 969 {14472, 2855, 959, 0, 0}, {22624, 11253, 5897, 0, 0}, 970 {27410, 18446, 12374, 0, 0}, {29701, 24406, 19422, 0, 0}, 971 {4116, 298, 92, 0, 0}, {15230, 1997, 559, 0, 0}, 972 {18844, 5886, 2274, 0, 0}, {22272, 9931, 4899, 0, 0}, 973 {25532, 16372, 11147, 0, 0}, {2025, 81, 22, 0, 0}, 974 {9762, 1092, 279, 0, 0}, {18274, 4940, 1648, 0, 0}, 975 {22594, 9967, 4416, 0, 0}, {26526, 17487, 11725, 0, 0}, 976 {6951, 525, 48, 0, 0}, {14150, 1401, 443, 0, 0}, 977 {18771, 4450, 890, 0, 0}, {20513, 6234, 1385, 0, 0}, 978 {23207, 11180, 4318, 0, 0}, {4580, 133, 44, 0, 0}, 979 {10708, 403, 40, 0, 0}, {14666, 2078, 240, 0, 0}, 980 {18572, 3904, 769, 0, 0}, {20506, 6976, 1903, 0, 0}, 981 {8592, 659, 140, 0, 0}, {14488, 3087, 805, 0, 0}, 982 {22563, 9065, 3104, 0, 0}, {24879, 12743, 5092, 0, 0}, 983 {26708, 16025, 8798, 0, 0}, {24576, 16384, 8192, 0, 0}}}, 984 {{{27627, 25672, 24508, 0, 0}, {5582, 3746, 2979, 0, 0}, 985 {26100, 20200, 17086, 0, 0}, {30596, 26587, 24130, 0, 0}, 986 {31642, 29389, 28237, 0, 0}, {32325, 31407, 30514, 0, 0}, 987 {6685, 1615, 332, 0, 0}, {19282, 8165, 4285, 0, 0}, 988 {26260, 17928, 12858, 0, 0}, {29382, 23968, 19482, 0, 0}, 989 {31238, 28446, 25714, 0, 0}, {3129, 688, 220, 0, 0}, 990 {16871, 5216, 2478, 0, 0}, {24180, 12721, 7385, 0, 0}, 991 {27879, 19429, 13499, 0, 0}, {30528, 25897, 22270, 0, 0}, 992 {4603, 571, 251, 0, 0}, {12033, 2341, 1200, 0, 0}, 993 {18443, 8097, 5076, 0, 0}, {27649, 20214, 14963, 0, 0}, 994 {30958, 27327, 24507, 0, 0}, {1556, 44, 20, 0, 0}, 995 {9416, 1002, 223, 0, 0}, {18099, 5198, 1709, 0, 0}, 996 {24276, 11874, 5496, 0, 0}, {29124, 22574, 17564, 0, 0}, 997 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 998 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 999 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1000 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1001 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1002 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1003 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1004 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}, 1005 {{30307, 25755, 23397, 0, 0}, {8019, 3168, 1782, 0, 0}, 1006 {23302, 13731, 10351, 0, 0}, {29184, 23488, 18368, 0, 0}, 1007 {31263, 28839, 27335, 0, 0}, {32091, 31268, 30032, 0, 0}, 1008 {8781, 2066, 651, 0, 0}, {19214, 8197, 3505, 0, 0}, 1009 {26557, 18212, 11613, 0, 0}, {29633, 21796, 17143, 0, 0}, 1010 {30333, 25641, 21341, 0, 0}, {1468, 236, 218, 0, 0}, 1011 {18011, 2403, 814, 0, 0}, {28363, 21156, 14215, 0, 0}, 1012 {32188, 28636, 25446, 0, 0}, {31073, 22599, 18644, 0, 0}, 1013 {2760, 486, 177, 0, 0}, {13524, 2660, 1020, 0, 0}, 1014 {21588, 8610, 3213, 0, 0}, {27118, 17796, 13559, 0, 0}, 1015 {30654, 27659, 24312, 0, 0}, {912, 52, 20, 0, 0}, 1016 {9756, 1104, 196, 0, 0}, {19074, 6112, 2132, 0, 0}, 1017 {24626, 13260, 6675, 0, 0}, {28515, 21813, 16044, 0, 0}, 1018 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1019 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1020 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1021 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1022 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1023 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1024 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1025 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}}, 1026 {{{32167, 31785, 31457, 0, 0}, {14043, 9362, 4681, 0, 0}, 1027 {27307, 24576, 21845, 0, 0}, {28987, 17644, 11343, 0, 0}, 1028 {30181, 25007, 20696, 0, 0}, {32662, 32310, 31958, 0, 0}, 1029 {10486, 3058, 874, 0, 0}, {24260, 11842, 6784, 0, 0}, 1030 {29042, 20055, 14685, 0, 0}, {31148, 25656, 21875, 0, 0}, 1031 {32039, 30532, 29273, 0, 0}, {2605, 294, 84, 0, 0}, 1032 {14464, 2304, 768, 0, 0}, {21325, 6242, 3121, 0, 0}, 1033 {26761, 17476, 11469, 0, 0}, {30534, 26065, 23831, 0, 0}, 1034 {1814, 591, 197, 0, 0}, {15405, 3206, 1692, 0, 0}, 1035 {23082, 10304, 5358, 0, 0}, {24576, 16384, 11378, 0, 0}, 1036 {31013, 24722, 21504, 0, 0}, {1600, 34, 20, 0, 0}, 1037 {10282, 1327, 297, 0, 0}, {19935, 7141, 3030, 0, 0}, 1038 {25788, 15389, 9646, 0, 0}, {29657, 23881, 19289, 0, 0}, 1039 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1040 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1041 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1042 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1043 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1044 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1045 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1046 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}, 1047 {{24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1048 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1049 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1050 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1051 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1052 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1053 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1054 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1055 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1056 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1057 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1058 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1059 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1060 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1061 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1062 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1063 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1064 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1065 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1066 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1067 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}}}, 1068 {{{{26727, 20914, 16841, 0, 0}, {12442, 1863, 517, 0, 0}, 1069 {18604, 5937, 2043, 0, 0}, {23008, 12121, 6183, 0, 0}, 1070 {26352, 17815, 11549, 0, 0}, {29802, 25617, 21877, 0, 0}, 1071 {9201, 1394, 514, 0, 0}, {17790, 5352, 1822, 0, 0}, 1072 {23334, 12543, 6514, 0, 0}, {26110, 18210, 12233, 0, 0}, 1073 {28852, 24091, 19779, 0, 0}, {24576, 16384, 8192, 0, 0}, 1074 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1075 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1076 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1077 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1078 {24576, 16384, 8192, 0, 0}, {14680, 3223, 1181, 0, 0}, 1079 {19706, 6925, 2695, 0, 0}, {23828, 15941, 10517, 0, 0}, 1080 {25114, 19548, 14795, 0, 0}, {27035, 22452, 18312, 0, 0}, 1081 {9889, 1380, 654, 0, 0}, {17553, 4775, 1813, 0, 0}, 1082 {23371, 13323, 7790, 0, 0}, {29326, 22955, 17424, 0, 0}, 1083 {31400, 28832, 26236, 0, 0}, {7274, 735, 362, 0, 0}, 1084 {15996, 4805, 2050, 0, 0}, {23349, 14603, 9508, 0, 0}, 1085 {30091, 25267, 20971, 0, 0}, {31252, 28424, 25598, 0, 0}, 1086 {6212, 1314, 667, 0, 0}, {15640, 5733, 2660, 0, 0}, 1087 {24444, 17424, 12519, 0, 0}, {30865, 27072, 23299, 0, 0}, 1088 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}, 1089 {{24313, 13765, 8400, 0, 0}, {9205, 747, 164, 0, 0}, 1090 {16531, 3322, 833, 0, 0}, {22044, 8769, 3410, 0, 0}, 1091 {26043, 15240, 8352, 0, 0}, {28841, 21841, 15943, 0, 0}, 1092 {6455, 480, 134, 0, 0}, {15338, 2673, 673, 0, 0}, 1093 {21652, 8162, 3089, 0, 0}, {25573, 14384, 7499, 0, 0}, 1094 {28042, 19916, 13453, 0, 0}, {24576, 16384, 8192, 0, 0}, 1095 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1096 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1097 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1098 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1099 {24576, 16384, 8192, 0, 0}, {9946, 1120, 285, 0, 0}, 1100 {16044, 3135, 839, 0, 0}, {22507, 9735, 4043, 0, 0}, 1101 {25739, 14928, 8240, 0, 0}, {27901, 18882, 11266, 0, 0}, 1102 {7470, 876, 277, 0, 0}, {14959, 3438, 1256, 0, 0}, 1103 {23100, 11439, 6189, 0, 0}, {27994, 19812, 13792, 0, 0}, 1104 {30446, 25738, 21228, 0, 0}, {7296, 848, 225, 0, 0}, 1105 {14811, 3381, 1136, 0, 0}, {23572, 12175, 6368, 0, 0}, 1106 {28088, 20063, 13566, 0, 0}, {29851, 24312, 19332, 0, 0}, 1107 {6297, 709, 194, 0, 0}, {14310, 2985, 859, 0, 0}, 1108 {24368, 13304, 6812, 0, 0}, {28956, 21795, 15562, 0, 0}, 1109 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}}, 1110 {{{25989, 19025, 15090, 0, 0}, {7962, 971, 311, 0, 0}, 1111 {15152, 3721, 1396, 0, 0}, {21705, 9593, 4765, 0, 0}, 1112 {26247, 16658, 10444, 0, 0}, {30004, 25264, 21114, 0, 0}, 1113 {7502, 401, 131, 0, 0}, {13714, 2215, 593, 0, 0}, 1114 {20629, 7556, 2961, 0, 0}, {25457, 14606, 8064, 0, 0}, 1115 {29371, 23604, 18694, 0, 0}, {6780, 560, 246, 0, 0}, 1116 {16515, 3856, 1242, 0, 0}, {23617, 11381, 5396, 0, 0}, 1117 {27080, 17853, 11272, 0, 0}, {30051, 25141, 20764, 0, 0}, 1118 {9624, 913, 325, 0, 0}, {16698, 4277, 1443, 0, 0}, 1119 {24066, 12301, 6251, 0, 0}, {27525, 18812, 12401, 0, 0}, 1120 {30147, 25433, 21201, 0, 0}, {6132, 428, 138, 0, 0}, 1121 {12778, 1718, 427, 0, 0}, {19525, 6663, 2453, 0, 0}, 1122 {24180, 13247, 6850, 0, 0}, {28051, 21183, 15464, 0, 0}, 1123 {6924, 476, 186, 0, 0}, {13678, 2133, 671, 0, 0}, 1124 {20805, 8222, 3829, 0, 0}, {26550, 16681, 10414, 0, 0}, 1125 {30428, 26160, 22342, 0, 0}, {4722, 192, 74, 0, 0}, 1126 {11590, 1455, 472, 0, 0}, {19282, 6584, 2898, 0, 0}, 1127 {25619, 14897, 9045, 0, 0}, {29935, 24810, 20509, 0, 0}, 1128 {5058, 240, 82, 0, 0}, {12094, 1692, 500, 0, 0}, 1129 {20355, 7813, 3525, 0, 0}, {26092, 15841, 9671, 0, 0}, 1130 {29802, 24435, 19849, 0, 0}, {24576, 16384, 8192, 0, 0}}, 1131 {{24129, 13429, 8339, 0, 0}, {8364, 931, 243, 0, 0}, 1132 {15771, 3343, 984, 0, 0}, {21515, 8534, 3619, 0, 0}, 1133 {26017, 15374, 8740, 0, 0}, {29278, 22938, 17577, 0, 0}, 1134 {6485, 297, 54, 0, 0}, {13169, 1600, 326, 0, 0}, 1135 {19622, 5814, 1875, 0, 0}, {24554, 12180, 5878, 0, 0}, 1136 {28069, 19687, 13468, 0, 0}, {4556, 310, 99, 0, 0}, 1137 {14174, 2452, 668, 0, 0}, {21549, 8360, 3534, 0, 0}, 1138 {25903, 15112, 8619, 0, 0}, {29090, 22406, 16762, 0, 0}, 1139 {6943, 632, 152, 0, 0}, {15455, 2915, 747, 0, 0}, 1140 {21571, 8297, 3296, 0, 0}, {25821, 14987, 8363, 0, 0}, 1141 {29000, 22108, 16507, 0, 0}, {5416, 268, 62, 0, 0}, 1142 {11918, 1300, 299, 0, 0}, {18747, 5061, 1635, 0, 0}, 1143 {23804, 11020, 4930, 0, 0}, {27331, 18103, 11581, 0, 0}, 1144 {6464, 276, 70, 0, 0}, {12359, 1388, 383, 0, 0}, 1145 {19086, 5546, 2136, 0, 0}, {23794, 11532, 6083, 0, 0}, 1146 {28534, 21103, 15834, 0, 0}, {6495, 411, 57, 0, 0}, 1147 {12096, 1526, 327, 0, 0}, {18596, 5514, 1866, 0, 0}, 1148 {22898, 10870, 5493, 0, 0}, {27604, 19262, 13498, 0, 0}, 1149 {6043, 309, 40, 0, 0}, {11777, 1326, 241, 0, 0}, 1150 {19697, 6334, 1957, 0, 0}, {24584, 12678, 6026, 0, 0}, 1151 {27965, 19513, 12873, 0, 0}, {24576, 16384, 8192, 0, 0}}}, 1152 {{{25213, 17826, 14267, 0, 0}, {8358, 1590, 481, 0, 0}, 1153 {18374, 6030, 2515, 0, 0}, {24355, 13214, 7573, 0, 0}, 1154 {28002, 19844, 13983, 0, 0}, {30739, 26962, 23561, 0, 0}, 1155 {5992, 404, 105, 0, 0}, {14036, 2801, 837, 0, 0}, 1156 {21763, 8982, 3916, 0, 0}, {26302, 15859, 9258, 0, 0}, 1157 {29724, 24130, 19349, 0, 0}, {3560, 186, 64, 0, 0}, 1158 {12700, 1911, 560, 0, 0}, {20765, 7683, 3173, 0, 0}, 1159 {25821, 15018, 8579, 0, 0}, {29523, 23665, 18761, 0, 0}, 1160 {5409, 303, 99, 0, 0}, {13347, 2154, 594, 0, 0}, 1161 {20853, 7758, 3189, 0, 0}, {25818, 15092, 8694, 0, 0}, 1162 {29761, 24295, 19672, 0, 0}, {3766, 92, 33, 0, 0}, 1163 {10666, 919, 192, 0, 0}, {18360, 4759, 1363, 0, 0}, 1164 {23741, 11089, 4837, 0, 0}, {28074, 20090, 14020, 0, 0}, 1165 {4552, 240, 86, 0, 0}, {11919, 1504, 450, 0, 0}, 1166 {20012, 6953, 3017, 0, 0}, {25203, 13967, 7845, 0, 0}, 1167 {29259, 23235, 18291, 0, 0}, {2635, 81, 29, 0, 0}, 1168 {9705, 858, 253, 0, 0}, {18180, 4717, 1636, 0, 0}, 1169 {23683, 11119, 5311, 0, 0}, {28507, 21114, 15504, 0, 0}, 1170 {3250, 77, 20, 0, 0}, {10317, 809, 155, 0, 0}, 1171 {17904, 4046, 1068, 0, 0}, {23073, 9804, 4052, 0, 0}, 1172 {27836, 19410, 13266, 0, 0}, {24576, 16384, 8192, 0, 0}}, 1173 {{26303, 15810, 11080, 0, 0}, {7569, 1254, 408, 0, 0}, 1174 {17994, 5619, 2161, 0, 0}, {23511, 11330, 5796, 0, 0}, 1175 {27045, 17585, 10886, 0, 0}, {29618, 23889, 19037, 0, 0}, 1176 {5779, 506, 86, 0, 0}, {15372, 2831, 683, 0, 0}, 1177 {21381, 7867, 2984, 0, 0}, {25479, 13947, 7220, 0, 0}, 1178 {29034, 22191, 16682, 0, 0}, {3040, 267, 73, 0, 0}, 1179 {15337, 3067, 865, 0, 0}, {22847, 9942, 4468, 0, 0}, 1180 {26872, 17334, 10700, 0, 0}, {29338, 23122, 18011, 0, 0}, 1181 {4154, 257, 63, 0, 0}, {13404, 2130, 505, 0, 0}, 1182 {19639, 6514, 2366, 0, 0}, {24014, 12284, 6328, 0, 0}, 1183 {28390, 21161, 15658, 0, 0}, {2476, 97, 24, 0, 0}, 1184 {10988, 1165, 267, 0, 0}, {18454, 4939, 1477, 0, 0}, 1185 {23157, 10441, 4505, 0, 0}, {27878, 19681, 13703, 0, 0}, 1186 {6906, 201, 35, 0, 0}, {11974, 718, 201, 0, 0}, 1187 {15525, 2143, 514, 0, 0}, {19485, 5140, 1294, 0, 0}, 1188 {23099, 10236, 3850, 0, 0}, {5333, 71, 20, 0, 0}, 1189 {7846, 378, 54, 0, 0}, {11319, 1264, 232, 0, 0}, 1190 {16376, 3039, 936, 0, 0}, {21076, 7884, 3692, 0, 0}, 1191 {8575, 478, 33, 0, 0}, {13859, 1664, 205, 0, 0}, 1192 {20532, 5927, 1365, 0, 0}, {24597, 10928, 3686, 0, 0}, 1193 {25544, 15488, 7493, 0, 0}, {24576, 16384, 8192, 0, 0}}}, 1194 {{{29690, 25929, 22878, 0, 0}, {18931, 12318, 8289, 0, 0}, 1195 {26854, 18546, 13440, 0, 0}, {28902, 22501, 18006, 0, 0}, 1196 {30156, 25560, 21726, 0, 0}, {31701, 29777, 27992, 0, 0}, 1197 {6951, 1122, 239, 0, 0}, {19060, 6430, 2383, 0, 0}, 1198 {25440, 14183, 7898, 0, 0}, {28077, 19688, 13492, 0, 0}, 1199 {30943, 27515, 24416, 0, 0}, {3382, 453, 144, 0, 0}, 1200 {15608, 3767, 1408, 0, 0}, {23166, 10906, 5372, 0, 0}, 1201 {26853, 16996, 10620, 0, 0}, {29982, 24989, 20721, 0, 0}, 1202 {3522, 318, 105, 0, 0}, {14072, 2839, 950, 0, 0}, 1203 {22258, 9399, 4208, 0, 0}, {26539, 16269, 9643, 0, 0}, 1204 {30160, 25320, 21063, 0, 0}, {2015, 58, 20, 0, 0}, 1205 {11130, 1281, 265, 0, 0}, {19831, 5914, 1898, 0, 0}, 1206 {24586, 12172, 5798, 0, 0}, {29131, 22499, 17271, 0, 0}, 1207 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1208 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1209 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1210 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1211 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1212 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1213 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1214 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}, 1215 {{27524, 20618, 15862, 0, 0}, {12282, 5910, 3067, 0, 0}, 1216 {25012, 14451, 9033, 0, 0}, {29316, 23512, 19622, 0, 0}, 1217 {30748, 27562, 24539, 0, 0}, {30967, 27775, 24865, 0, 0}, 1218 {5717, 910, 237, 0, 0}, {16780, 5237, 2149, 0, 0}, 1219 {23580, 11284, 6049, 0, 0}, {26495, 15582, 8968, 0, 0}, 1220 {29660, 23413, 18004, 0, 0}, {1692, 248, 88, 0, 0}, 1221 {14649, 2731, 918, 0, 0}, {22524, 9799, 5296, 0, 0}, 1222 {28076, 18691, 13495, 0, 0}, {29074, 21091, 15212, 0, 0}, 1223 {2708, 187, 48, 0, 0}, {11757, 1993, 648, 0, 0}, 1224 {20837, 7948, 3479, 0, 0}, {25649, 15106, 8412, 0, 0}, 1225 {28935, 22062, 16464, 0, 0}, {814, 37, 20, 0, 0}, 1226 {8855, 1044, 279, 0, 0}, {17248, 4708, 1482, 0, 0}, 1227 {21251, 9760, 4197, 0, 0}, {26575, 18260, 12139, 0, 0}, 1228 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1229 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1230 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1231 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1232 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1233 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1234 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1235 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}}, 1236 {{{31733, 29961, 28612, 0, 0}, {19606, 14630, 11829, 0, 0}, 1237 {30072, 26135, 24013, 0, 0}, {31395, 28607, 25915, 0, 0}, 1238 {31669, 30022, 28052, 0, 0}, {32428, 31747, 31169, 0, 0}, 1239 {9942, 2349, 633, 0, 0}, {22373, 11006, 5826, 0, 0}, 1240 {28042, 20361, 15407, 0, 0}, {30321, 25688, 22175, 0, 0}, 1241 {31541, 29051, 26757, 0, 0}, {4612, 1344, 834, 0, 0}, 1242 {15853, 5014, 2395, 0, 0}, {23620, 11778, 6337, 0, 0}, 1243 {26818, 17253, 11620, 0, 0}, {30276, 25441, 21242, 0, 0}, 1244 {2166, 291, 98, 0, 0}, {12742, 2813, 1200, 0, 0}, 1245 {21548, 9140, 4663, 0, 0}, {26116, 15749, 9795, 0, 0}, 1246 {29704, 24232, 19725, 0, 0}, {999, 44, 20, 0, 0}, 1247 {10538, 1881, 395, 0, 0}, {20534, 7689, 3037, 0, 0}, 1248 {25442, 13952, 7415, 0, 0}, {28835, 21861, 16152, 0, 0}, 1249 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1250 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1251 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1252 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1253 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1254 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1255 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1256 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}, 1257 {{24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1258 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1259 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1260 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1261 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1262 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1263 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1264 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1265 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1266 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1267 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1268 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1269 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1270 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1271 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1272 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1273 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1274 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1275 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1276 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1277 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}}}, 1278 {{{{23872, 16541, 12138, 0, 0}, {9139, 986, 241, 0, 0}, 1279 {17595, 5013, 1447, 0, 0}, {22610, 11535, 5386, 0, 0}, 1280 {26348, 17911, 11210, 0, 0}, {29499, 24613, 20122, 0, 0}, 1281 {7933, 759, 272, 0, 0}, {16259, 4347, 1189, 0, 0}, 1282 {21811, 11254, 5350, 0, 0}, {24887, 16838, 10672, 0, 0}, 1283 {27380, 21808, 16850, 0, 0}, {24576, 16384, 8192, 0, 0}, 1284 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1285 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1286 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1287 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1288 {24576, 16384, 8192, 0, 0}, {12023, 1995, 675, 0, 0}, 1289 {17568, 5547, 1907, 0, 0}, {19736, 11895, 7101, 0, 0}, 1290 {20483, 14105, 9274, 0, 0}, {21205, 15287, 11279, 0, 0}, 1291 {6508, 786, 448, 0, 0}, {17371, 4685, 1668, 0, 0}, 1292 {23026, 13551, 7944, 0, 0}, {29507, 23139, 17406, 0, 0}, 1293 {31288, 28446, 25269, 0, 0}, {5169, 512, 308, 0, 0}, 1294 {15911, 5109, 1994, 0, 0}, {23217, 14478, 9020, 0, 0}, 1295 {29716, 23835, 18665, 0, 0}, {30747, 26858, 22981, 0, 0}, 1296 {3763, 753, 376, 0, 0}, {15091, 5074, 1905, 0, 0}, 1297 {23564, 15412, 9549, 0, 0}, {30365, 25252, 19954, 0, 0}, 1298 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}, 1299 {{21960, 10712, 5872, 0, 0}, {7029, 455, 92, 0, 0}, 1300 {15480, 2565, 547, 0, 0}, {21409, 7890, 2872, 0, 0}, 1301 {25819, 15001, 7875, 0, 0}, {28481, 20972, 14697, 0, 0}, 1302 {4888, 247, 63, 0, 0}, {13730, 1764, 354, 0, 0}, 1303 {20204, 6423, 2000, 0, 0}, {24499, 12821, 5989, 0, 0}, 1304 {27094, 18111, 11094, 0, 0}, {24576, 16384, 8192, 0, 0}, 1305 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1306 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1307 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1308 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1309 {24576, 16384, 8192, 0, 0}, {7026, 449, 97, 0, 0}, 1310 {13211, 1604, 314, 0, 0}, {19387, 6387, 2013, 0, 0}, 1311 {22667, 11302, 6046, 0, 0}, {23559, 13118, 5943, 0, 0}, 1312 {5661, 851, 336, 0, 0}, {14712, 3875, 1565, 0, 0}, 1313 {22568, 11334, 6004, 0, 0}, {28108, 19855, 13266, 0, 0}, 1314 {30400, 25838, 20264, 0, 0}, {5808, 610, 155, 0, 0}, 1315 {14140, 2763, 737, 0, 0}, {22535, 10326, 4536, 0, 0}, 1316 {27297, 18138, 11252, 0, 0}, {29533, 22001, 15659, 0, 0}, 1317 {5072, 328, 76, 0, 0}, {12736, 1601, 330, 0, 0}, 1318 {24068, 11427, 4326, 0, 0}, {27106, 17937, 10973, 0, 0}, 1319 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}}, 1320 {{{23064, 15474, 11636, 0, 0}, {6006, 490, 135, 0, 0}, 1321 {14386, 3148, 949, 0, 0}, {21877, 9293, 4045, 0, 0}, 1322 {26410, 16185, 9459, 0, 0}, {29520, 23650, 18627, 0, 0}, 1323 {5564, 195, 69, 0, 0}, {12950, 1944, 439, 0, 0}, 1324 {20996, 7648, 2727, 0, 0}, {25773, 14735, 7729, 0, 0}, 1325 {29016, 22326, 16670, 0, 0}, {5546, 512, 209, 0, 0}, 1326 {17412, 4369, 1293, 0, 0}, {23947, 12133, 5711, 0, 0}, 1327 {27257, 18364, 11529, 0, 0}, {29833, 24546, 19717, 0, 0}, 1328 {7893, 648, 239, 0, 0}, {17535, 4503, 1323, 0, 0}, 1329 {24163, 12198, 5836, 0, 0}, {27337, 18355, 11572, 0, 0}, 1330 {29774, 24427, 19545, 0, 0}, {4567, 164, 68, 0, 0}, 1331 {11727, 1322, 312, 0, 0}, {19547, 6555, 2293, 0, 0}, 1332 {24513, 13383, 6731, 0, 0}, {27838, 20183, 13938, 0, 0}, 1333 {4000, 320, 141, 0, 0}, {13063, 2207, 747, 0, 0}, 1334 {21196, 9179, 4548, 0, 0}, {27236, 17734, 11322, 0, 0}, 1335 {30308, 25618, 21312, 0, 0}, {2894, 149, 69, 0, 0}, 1336 {11147, 1697, 567, 0, 0}, {20257, 8021, 3776, 0, 0}, 1337 {26487, 16373, 10020, 0, 0}, {29522, 23490, 18271, 0, 0}, 1338 {3053, 143, 56, 0, 0}, {11810, 1757, 485, 0, 0}, 1339 {21535, 9097, 3962, 0, 0}, {26756, 16640, 9900, 0, 0}, 1340 {29341, 22917, 17354, 0, 0}, {24576, 16384, 8192, 0, 0}}, 1341 {{21752, 10657, 5974, 0, 0}, {6822, 411, 91, 0, 0}, 1342 {14878, 2316, 516, 0, 0}, {21090, 7626, 2952, 0, 0}, 1343 {26048, 15234, 8184, 0, 0}, {28538, 21103, 14948, 0, 0}, 1344 {4368, 145, 21, 0, 0}, {11604, 1100, 193, 0, 0}, 1345 {19196, 5380, 1586, 0, 0}, {24534, 12018, 5410, 0, 0}, 1346 {27703, 18713, 11871, 0, 0}, {3787, 221, 63, 0, 0}, 1347 {14087, 2225, 529, 0, 0}, {21849, 8693, 3482, 0, 0}, 1348 {26337, 15569, 8691, 0, 0}, {28949, 22304, 16150, 0, 0}, 1349 {5898, 301, 75, 0, 0}, {13727, 1937, 421, 0, 0}, 1350 {20974, 7557, 2752, 0, 0}, {25880, 14749, 7798, 0, 0}, 1351 {28398, 20405, 13776, 0, 0}, {3190, 98, 24, 0, 0}, 1352 {9609, 761, 155, 0, 0}, {17453, 4099, 1092, 0, 0}, 1353 {23470, 10161, 3986, 0, 0}, {26624, 16855, 9800, 0, 0}, 1354 {4658, 269, 99, 0, 0}, {11194, 1831, 753, 0, 0}, 1355 {20009, 7950, 4041, 0, 0}, {26223, 16007, 9726, 0, 0}, 1356 {29119, 22171, 15935, 0, 0}, {4605, 216, 40, 0, 0}, 1357 {10667, 1299, 304, 0, 0}, {19608, 7296, 2625, 0, 0}, 1358 {25465, 14084, 7300, 0, 0}, {27527, 18793, 11813, 0, 0}, 1359 {4368, 137, 24, 0, 0}, {10664, 975, 165, 0, 0}, 1360 {19211, 6197, 1922, 0, 0}, {25019, 12907, 6093, 0, 0}, 1361 {27895, 18738, 11534, 0, 0}, {24576, 16384, 8192, 0, 0}}}, 1362 {{{22968, 15133, 11695, 0, 0}, {6615, 883, 241, 0, 0}, 1363 {17730, 4916, 1762, 0, 0}, {24050, 12204, 6282, 0, 0}, 1364 {27640, 18692, 12254, 0, 0}, {30132, 25202, 20843, 0, 0}, 1365 {5217, 264, 67, 0, 0}, {14458, 2714, 668, 0, 0}, 1366 {22557, 9348, 3686, 0, 0}, {26546, 15892, 8852, 0, 0}, 1367 {29306, 22814, 17270, 0, 0}, {2777, 135, 47, 0, 0}, 1368 {12885, 2017, 567, 0, 0}, {21627, 8584, 3483, 0, 0}, 1369 {26348, 15828, 8994, 0, 0}, {29376, 23015, 17650, 0, 0}, 1370 {4303, 152, 56, 0, 0}, {12918, 2066, 524, 0, 0}, 1371 {21785, 8744, 3545, 0, 0}, {26474, 15998, 9186, 0, 0}, 1372 {29524, 23485, 18259, 0, 0}, {2745, 51, 20, 0, 0}, 1373 {9828, 736, 142, 0, 0}, {18486, 4840, 1295, 0, 0}, 1374 {24206, 11441, 4854, 0, 0}, {27922, 19375, 12849, 0, 0}, 1375 {2787, 178, 73, 0, 0}, {12303, 1805, 602, 0, 0}, 1376 {21289, 9189, 4573, 0, 0}, {26852, 17120, 10695, 0, 0}, 1377 {29737, 24163, 19370, 0, 0}, {1622, 77, 29, 0, 0}, 1378 {9662, 1044, 324, 0, 0}, {18985, 6030, 2329, 0, 0}, 1379 {24916, 13300, 6961, 0, 0}, {28908, 21644, 15915, 0, 0}, 1380 {1754, 44, 20, 0, 0}, {9139, 659, 140, 0, 0}, 1381 {18021, 4653, 1365, 0, 0}, {24223, 11526, 5290, 0, 0}, 1382 {28194, 19987, 13701, 0, 0}, {24576, 16384, 8192, 0, 0}}, 1383 {{23583, 13074, 8080, 0, 0}, {6687, 783, 147, 0, 0}, 1384 {16753, 3768, 981, 0, 0}, {22226, 9078, 3562, 0, 0}, 1385 {26036, 14823, 8091, 0, 0}, {28852, 21729, 16046, 0, 0}, 1386 {4544, 202, 24, 0, 0}, {13668, 1630, 283, 0, 0}, 1387 {20240, 6148, 1889, 0, 0}, {25027, 12491, 5883, 0, 0}, 1388 {28202, 19923, 13778, 0, 0}, {2835, 175, 50, 0, 0}, 1389 {15098, 2435, 613, 0, 0}, {22383, 9168, 3859, 0, 0}, 1390 {26525, 16532, 10361, 0, 0}, {28792, 22379, 16751, 0, 0}, 1391 {4391, 207, 30, 0, 0}, {13402, 1593, 286, 0, 0}, 1392 {19441, 5593, 1674, 0, 0}, {24510, 11999, 5625, 0, 0}, 1393 {28065, 19570, 13241, 0, 0}, {1682, 62, 20, 0, 0}, 1394 {9915, 866, 185, 0, 0}, {18009, 4582, 1349, 0, 0}, 1395 {23484, 10386, 4420, 0, 0}, {27183, 17576, 10900, 0, 0}, 1396 {4477, 116, 22, 0, 0}, {12919, 661, 197, 0, 0}, 1397 {17934, 5950, 3554, 0, 0}, {22462, 10174, 4096, 0, 0}, 1398 {26153, 15384, 9384, 0, 0}, {3821, 164, 23, 0, 0}, 1399 {7143, 479, 122, 0, 0}, {14010, 4096, 1365, 0, 0}, 1400 {22751, 9338, 4245, 0, 0}, {25906, 17499, 10637, 0, 0}, 1401 {8835, 259, 29, 0, 0}, {12841, 1273, 137, 0, 0}, 1402 {20865, 6745, 2147, 0, 0}, {25742, 12674, 5516, 0, 0}, 1403 {26770, 14662, 8331, 0, 0}, {24576, 16384, 8192, 0, 0}}}, 1404 {{{28312, 21494, 17235, 0, 0}, {11549, 3689, 1152, 0, 0}, 1405 {21595, 8994, 4201, 0, 0}, {25486, 14475, 8505, 0, 0}, 1406 {27878, 19482, 13653, 0, 0}, {30878, 27260, 24109, 0, 0}, 1407 {6117, 632, 121, 0, 0}, {18138, 4514, 1313, 0, 0}, 1408 {24052, 11481, 5373, 0, 0}, {27153, 17437, 10760, 0, 0}, 1409 {30093, 25068, 20618, 0, 0}, {2814, 242, 78, 0, 0}, 1410 {16642, 3786, 1135, 0, 0}, {23738, 11407, 5416, 0, 0}, 1411 {27357, 17975, 11497, 0, 0}, {29825, 24346, 19605, 0, 0}, 1412 {3229, 167, 38, 0, 0}, {14643, 2383, 567, 0, 0}, 1413 {22346, 8678, 3300, 0, 0}, {26300, 15281, 8330, 0, 0}, 1414 {29798, 24115, 19237, 0, 0}, {1856, 53, 20, 0, 0}, 1415 {12102, 1395, 271, 0, 0}, {20259, 6128, 1851, 0, 0}, 1416 {24710, 12139, 5478, 0, 0}, {28537, 20762, 14716, 0, 0}, 1417 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1418 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1419 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1420 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1421 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1422 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1423 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1424 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}, 1425 {{22566, 12135, 7284, 0, 0}, {5432, 1323, 416, 0, 0}, 1426 {20348, 8384, 4216, 0, 0}, {25120, 14653, 8912, 0, 0}, 1427 {27106, 18427, 12866, 0, 0}, {29157, 22440, 17378, 0, 0}, 1428 {1823, 152, 32, 0, 0}, {14086, 2263, 515, 0, 0}, 1429 {21255, 7432, 2565, 0, 0}, {25319, 13316, 6620, 0, 0}, 1430 {28286, 19717, 13882, 0, 0}, {746, 78, 21, 0, 0}, 1431 {14190, 2267, 622, 0, 0}, {21519, 9400, 4137, 0, 0}, 1432 {27123, 15810, 10610, 0, 0}, {27759, 21324, 16131, 0, 0}, 1433 {1411, 58, 20, 0, 0}, {11216, 1274, 264, 0, 0}, 1434 {18877, 5091, 1428, 0, 0}, {23717, 10670, 4596, 0, 0}, 1435 {27578, 19391, 13282, 0, 0}, {404, 28, 20, 0, 0}, 1436 {7929, 861, 217, 0, 0}, {15608, 3989, 1072, 0, 0}, 1437 {20316, 8631, 3166, 0, 0}, {26603, 17379, 10291, 0, 0}, 1438 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1439 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1440 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1441 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1442 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1443 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1444 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1445 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}}, 1446 {{{30193, 25487, 21691, 0, 0}, {18766, 11902, 7366, 0, 0}, 1447 {26425, 17712, 13110, 0, 0}, {28294, 20910, 15727, 0, 0}, 1448 {29903, 24469, 20234, 0, 0}, {31424, 28819, 26377, 0, 0}, 1449 {8048, 1529, 309, 0, 0}, {20183, 7412, 2800, 0, 0}, 1450 {25587, 14522, 8324, 0, 0}, {27743, 19101, 12883, 0, 0}, 1451 {30247, 25464, 21163, 0, 0}, {2860, 516, 184, 0, 0}, 1452 {15347, 3612, 1193, 0, 0}, {22879, 10580, 4986, 0, 0}, 1453 {26890, 17121, 10645, 0, 0}, {29954, 24103, 19445, 0, 0}, 1454 {2585, 200, 55, 0, 0}, {14240, 2573, 719, 0, 0}, 1455 {21786, 8162, 3111, 0, 0}, {25811, 14603, 7537, 0, 0}, 1456 {29260, 22650, 17300, 0, 0}, {1007, 32, 20, 0, 0}, 1457 {11727, 1440, 222, 0, 0}, {20200, 6036, 1602, 0, 0}, 1458 {24716, 12048, 5035, 0, 0}, {28432, 20576, 14372, 0, 0}, 1459 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1460 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1461 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1462 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1463 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1464 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1465 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1466 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}, 1467 {{24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1468 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1469 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1470 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1471 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1472 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1473 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1474 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1475 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1476 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1477 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1478 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1479 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1480 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1481 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1482 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1483 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1484 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1485 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1486 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1487 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}}}, 1488 {{{{25706, 16296, 10449, 0, 0}, {8230, 507, 94, 0, 0}, 1489 {19093, 4727, 989, 0, 0}, {24178, 12094, 5137, 0, 0}, 1490 {27083, 18093, 10755, 0, 0}, {29113, 22870, 17037, 0, 0}, 1491 {6275, 350, 110, 0, 0}, {16392, 3426, 678, 0, 0}, 1492 {22174, 10119, 3798, 0, 0}, {24592, 15598, 8465, 0, 0}, 1493 {27163, 20074, 13629, 0, 0}, {24576, 16384, 8192, 0, 0}, 1494 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1495 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1496 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1497 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1498 {24576, 16384, 8192, 0, 0}, {8880, 866, 226, 0, 0}, 1499 {14156, 3081, 781, 0, 0}, {16523, 7916, 3519, 0, 0}, 1500 {17003, 10160, 5209, 0, 0}, {12873, 8069, 5258, 0, 0}, 1501 {4367, 556, 311, 0, 0}, {17494, 4943, 1788, 0, 0}, 1502 {23404, 14640, 8436, 0, 0}, {30485, 24575, 17686, 0, 0}, 1503 {31540, 28796, 24887, 0, 0}, {3313, 299, 148, 0, 0}, 1504 {14787, 4523, 1380, 0, 0}, {21847, 12670, 6528, 0, 0}, 1505 {29025, 20939, 14111, 0, 0}, {30394, 23175, 17053, 0, 0}, 1506 {1700, 302, 133, 0, 0}, {12447, 3196, 797, 0, 0}, 1507 {21997, 12513, 5649, 0, 0}, {29973, 22358, 15407, 0, 0}, 1508 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}, 1509 {{23448, 10666, 4928, 0, 0}, {5711, 304, 44, 0, 0}, 1510 {16437, 2500, 459, 0, 0}, {22449, 8833, 3048, 0, 0}, 1511 {26579, 16320, 8662, 0, 0}, {29179, 21884, 13960, 0, 0}, 1512 {3742, 144, 20, 0, 0}, {13542, 1261, 181, 0, 0}, 1513 {20076, 5847, 1565, 0, 0}, {25719, 13236, 5133, 0, 0}, 1514 {25041, 17099, 9516, 0, 0}, {24576, 16384, 8192, 0, 0}, 1515 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1516 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1517 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1518 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1519 {24576, 16384, 8192, 0, 0}, {4712, 143, 20, 0, 0}, 1520 {10385, 693, 99, 0, 0}, {17351, 5670, 1019, 0, 0}, 1521 {14641, 6275, 5578, 0, 0}, {27307, 16384, 10923, 0, 0}, 1522 {4786, 677, 184, 0, 0}, {13723, 2900, 796, 0, 0}, 1523 {22371, 10502, 4836, 0, 0}, {26778, 19071, 11268, 0, 0}, 1524 {30976, 25856, 17664, 0, 0}, {4570, 267, 50, 0, 0}, 1525 {11234, 1247, 199, 0, 0}, {21659, 7551, 2751, 0, 0}, 1526 {27097, 17644, 6617, 0, 0}, {28087, 18725, 14043, 0, 0}, 1527 {4080, 188, 27, 0, 0}, {10192, 689, 107, 0, 0}, 1528 {22141, 10627, 4428, 0, 0}, {23406, 18725, 4681, 0, 0}, 1529 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}}, 1530 {{{25014, 15820, 10626, 0, 0}, {7098, 438, 77, 0, 0}, 1531 {17105, 3543, 774, 0, 0}, {22890, 9480, 3610, 0, 0}, 1532 {26349, 15680, 8432, 0, 0}, {28909, 21765, 15729, 0, 0}, 1533 {5206, 173, 43, 0, 0}, {15193, 2180, 369, 0, 0}, 1534 {21949, 7930, 2459, 0, 0}, {25644, 14082, 6852, 0, 0}, 1535 {28289, 20080, 13428, 0, 0}, {4383, 292, 95, 0, 0}, 1536 {17462, 3763, 830, 0, 0}, {23831, 11153, 4446, 0, 0}, 1537 {26786, 17165, 9982, 0, 0}, {29148, 22501, 16632, 0, 0}, 1538 {5488, 304, 101, 0, 0}, {17161, 3608, 764, 0, 0}, 1539 {23677, 10633, 4028, 0, 0}, {26536, 16136, 8748, 0, 0}, 1540 {28721, 21391, 15096, 0, 0}, {3548, 138, 50, 0, 0}, 1541 {13118, 1548, 306, 0, 0}, {19718, 6456, 1941, 0, 0}, 1542 {23540, 11898, 5300, 0, 0}, {26622, 17619, 10797, 0, 0}, 1543 {2599, 287, 145, 0, 0}, {15556, 3457, 1214, 0, 0}, 1544 {22857, 11457, 5886, 0, 0}, {28281, 19454, 12396, 0, 0}, 1545 {30198, 24996, 19879, 0, 0}, {1844, 155, 60, 0, 0}, 1546 {13278, 2562, 661, 0, 0}, {21536, 8770, 3492, 0, 0}, 1547 {25999, 14813, 7733, 0, 0}, {28370, 20145, 13554, 0, 0}, 1548 {2159, 141, 46, 0, 0}, {13398, 2186, 481, 0, 0}, 1549 {22311, 9149, 3359, 0, 0}, {26325, 15131, 7934, 0, 0}, 1550 {28123, 19532, 12662, 0, 0}, {24576, 16384, 8192, 0, 0}}, 1551 {{24142, 12497, 6552, 0, 0}, {6061, 362, 57, 0, 0}, 1552 {15769, 2439, 482, 0, 0}, {21323, 7645, 2482, 0, 0}, 1553 {26357, 13940, 7167, 0, 0}, {25967, 20310, 12520, 0, 0}, 1554 {2850, 86, 20, 0, 0}, {12119, 1029, 150, 0, 0}, 1555 {19889, 4995, 1187, 0, 0}, {24872, 11017, 4524, 0, 0}, 1556 {27508, 17898, 9070, 0, 0}, {3516, 175, 37, 0, 0}, 1557 {15696, 2308, 474, 0, 0}, {22115, 8625, 3403, 0, 0}, 1558 {26232, 15278, 8785, 0, 0}, {27839, 19598, 12683, 0, 0}, 1559 {4631, 250, 53, 0, 0}, {14597, 1984, 361, 0, 0}, 1560 {21331, 7332, 2309, 0, 0}, {25516, 14234, 6592, 0, 0}, 1561 {28642, 19415, 11790, 0, 0}, {1606, 42, 20, 0, 0}, 1562 {9751, 546, 67, 0, 0}, {17139, 3535, 722, 0, 0}, 1563 {23381, 10147, 3288, 0, 0}, {25846, 15152, 7758, 0, 0}, 1564 {3930, 503, 154, 0, 0}, {13067, 2562, 848, 0, 0}, 1565 {21554, 10358, 4835, 0, 0}, {27448, 18591, 9734, 0, 0}, 1566 {27719, 19887, 14941, 0, 0}, {5284, 297, 34, 0, 0}, 1567 {11692, 1242, 207, 0, 0}, {20061, 6465, 1557, 0, 0}, 1568 {24599, 11046, 4549, 0, 0}, {26723, 13362, 5726, 0, 0}, 1569 {5015, 196, 23, 0, 0}, {11936, 890, 115, 0, 0}, 1570 {19518, 5412, 1094, 0, 0}, {25050, 11260, 2910, 0, 0}, 1571 {25559, 14418, 7209, 0, 0}, {24576, 16384, 8192, 0, 0}}}, 1572 {{{24892, 15867, 11027, 0, 0}, {8767, 870, 143, 0, 0}, 1573 {18239, 4809, 1317, 0, 0}, {24495, 11950, 5510, 0, 0}, 1574 {27490, 18095, 11258, 0, 0}, {29785, 23925, 18729, 0, 0}, 1575 {4752, 194, 36, 0, 0}, {15297, 2462, 467, 0, 0}, 1576 {22544, 8705, 3040, 0, 0}, {26166, 14814, 7716, 0, 0}, 1577 {28766, 21183, 15009, 0, 0}, {2578, 134, 29, 0, 0}, 1578 {15271, 2486, 498, 0, 0}, {22539, 9039, 3230, 0, 0}, 1579 {26424, 15557, 8328, 0, 0}, {28919, 21579, 15660, 0, 0}, 1580 {4198, 185, 42, 0, 0}, {15247, 2607, 530, 0, 0}, 1581 {22615, 9203, 3390, 0, 0}, {26313, 15427, 8325, 0, 0}, 1582 {28861, 21726, 15744, 0, 0}, {2079, 53, 20, 0, 0}, 1583 {11222, 928, 158, 0, 0}, {19221, 5187, 1309, 0, 0}, 1584 {23856, 11011, 4459, 0, 0}, {27220, 17688, 10722, 0, 0}, 1585 {1985, 228, 83, 0, 0}, {15228, 3240, 1100, 0, 0}, 1586 {22608, 11300, 5985, 0, 0}, {28044, 19375, 12714, 0, 0}, 1587 {30066, 24594, 19666, 0, 0}, {1120, 82, 26, 0, 0}, 1588 {11814, 1674, 431, 0, 0}, {20348, 7070, 2589, 0, 0}, 1589 {25464, 13448, 6520, 0, 0}, {28402, 20507, 13904, 0, 0}, 1590 {1187, 45, 20, 0, 0}, {11395, 1182, 243, 0, 0}, 1591 {20024, 6143, 1883, 0, 0}, {25337, 12446, 5818, 0, 0}, 1592 {28076, 19445, 12657, 0, 0}, {24576, 16384, 8192, 0, 0}}, 1593 {{24935, 14399, 8673, 0, 0}, {6118, 495, 66, 0, 0}, 1594 {16397, 2807, 577, 0, 0}, {21713, 8686, 3139, 0, 0}, 1595 {25876, 14124, 7368, 0, 0}, {27762, 19711, 13528, 0, 0}, 1596 {2934, 102, 20, 0, 0}, {13191, 1433, 198, 0, 0}, 1597 {20515, 6259, 1646, 0, 0}, {24777, 11996, 5057, 0, 0}, 1598 {27091, 16858, 9709, 0, 0}, {2659, 236, 48, 0, 0}, 1599 {16021, 2602, 516, 0, 0}, {22634, 9226, 3584, 0, 0}, 1600 {26977, 16592, 9212, 0, 0}, {28406, 22354, 15484, 0, 0}, 1601 {3276, 142, 20, 0, 0}, {12874, 1366, 243, 0, 0}, 1602 {19826, 5697, 1899, 0, 0}, {24422, 11552, 5363, 0, 0}, 1603 {26196, 15681, 8909, 0, 0}, {733, 33, 20, 0, 0}, 1604 {9811, 930, 150, 0, 0}, {18044, 4196, 996, 0, 0}, 1605 {22404, 8769, 3215, 0, 0}, {25764, 14335, 7113, 0, 0}, 1606 {5240, 491, 87, 0, 0}, {15809, 1597, 672, 0, 0}, 1607 {22282, 9175, 4806, 0, 0}, {24576, 16384, 9557, 0, 0}, 1608 {23831, 14895, 11916, 0, 0}, {5053, 766, 153, 0, 0}, 1609 {17695, 3277, 1092, 0, 0}, {21504, 8192, 4096, 0, 0}, 1610 {30427, 14043, 9362, 0, 0}, {25486, 14564, 7282, 0, 0}, 1611 {4221, 555, 111, 0, 0}, {11980, 2995, 529, 0, 0}, 1612 {25988, 11299, 2260, 0, 0}, {26810, 17873, 8937, 0, 0}, 1613 {16384, 10923, 5461, 0, 0}, {24576, 16384, 8192, 0, 0}}}, 1614 {{{26776, 18464, 13003, 0, 0}, {10156, 1530, 312, 0, 0}, 1615 {19312, 5606, 1681, 0, 0}, {24767, 12706, 6264, 0, 0}, 1616 {27600, 18663, 12004, 0, 0}, {30136, 24997, 20383, 0, 0}, 1617 {5734, 424, 59, 0, 0}, {16918, 3353, 771, 0, 0}, 1618 {23274, 9992, 3927, 0, 0}, {26617, 15938, 8799, 0, 0}, 1619 {29307, 22729, 17046, 0, 0}, {2634, 199, 37, 0, 0}, 1620 {17130, 3346, 823, 0, 0}, {23618, 10903, 4550, 0, 0}, 1621 {27121, 17049, 10092, 0, 0}, {29366, 22996, 17291, 0, 0}, 1622 {4238, 182, 33, 0, 0}, {15629, 2470, 476, 0, 0}, 1623 {22568, 8729, 3083, 0, 0}, {26349, 15094, 7982, 0, 0}, 1624 {29224, 22543, 16944, 0, 0}, {1435, 42, 20, 0, 0}, 1625 {12150, 1281, 224, 0, 0}, {19867, 5551, 1536, 0, 0}, 1626 {24144, 11034, 4597, 0, 0}, {27664, 18577, 12020, 0, 0}, 1627 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1628 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1629 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1630 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1631 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1632 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1633 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1634 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}, 1635 {{21562, 11678, 6207, 0, 0}, {4009, 489, 97, 0, 0}, 1636 {18597, 4816, 1199, 0, 0}, {23025, 9861, 3627, 0, 0}, 1637 {25897, 14882, 7900, 0, 0}, {27808, 19616, 13453, 0, 0}, 1638 {1691, 107, 20, 0, 0}, {13368, 1573, 253, 0, 0}, 1639 {20016, 5910, 1728, 0, 0}, {24398, 10670, 4177, 0, 0}, 1640 {27311, 17395, 10470, 0, 0}, {1071, 62, 20, 0, 0}, 1641 {14908, 2111, 435, 0, 0}, {20258, 7956, 3507, 0, 0}, 1642 {26588, 13644, 8046, 0, 0}, {27727, 19220, 14809, 0, 0}, 1643 {1216, 52, 20, 0, 0}, {10860, 999, 145, 0, 0}, 1644 {18298, 4567, 1203, 0, 0}, {23275, 9786, 4160, 0, 0}, 1645 {25910, 15528, 8631, 0, 0}, {225, 16, 12, 0, 0}, 1646 {8482, 671, 102, 0, 0}, {16810, 3551, 744, 0, 0}, 1647 {22561, 8534, 2810, 0, 0}, {25839, 14463, 7116, 0, 0}, 1648 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1649 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1650 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1651 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1652 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1653 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1654 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1655 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}}, 1656 {{{28631, 21921, 17086, 0, 0}, {14944, 5767, 2710, 0, 0}, 1657 {22564, 9972, 4477, 0, 0}, {26692, 16833, 10643, 0, 0}, 1658 {28916, 21831, 15952, 0, 0}, {30516, 26444, 22637, 0, 0}, 1659 {6928, 752, 106, 0, 0}, {17659, 4500, 1237, 0, 0}, 1660 {23383, 10537, 4428, 0, 0}, {26686, 16096, 9289, 0, 0}, 1661 {29450, 23341, 18087, 0, 0}, {2174, 194, 50, 0, 0}, 1662 {15932, 3216, 909, 0, 0}, {23212, 10226, 4412, 0, 0}, 1663 {26463, 16043, 9228, 0, 0}, {29392, 22873, 17584, 0, 0}, 1664 {3385, 151, 23, 0, 0}, {13877, 1959, 367, 0, 0}, 1665 {21080, 6826, 2081, 0, 0}, {25300, 13299, 6117, 0, 0}, 1666 {28859, 21410, 15756, 0, 0}, {1204, 32, 20, 0, 0}, 1667 {11862, 1157, 168, 0, 0}, {19577, 5147, 1231, 0, 0}, 1668 {24000, 10739, 4092, 0, 0}, {27689, 18659, 11862, 0, 0}, 1669 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1670 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1671 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1672 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1673 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1674 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1675 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1676 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}, 1677 {{24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1678 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1679 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1680 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1681 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1682 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1683 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1684 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1685 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1686 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1687 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1688 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1689 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1690 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1691 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1692 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1693 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1694 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1695 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1696 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1697 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}}}}}; 1698 1699alignas(kMaxAlignment) constexpr uint16_t kDefaultCoeffBaseRangeCdf 1700 [kCoefficientQuantizerContexts][kNumSquareTransformSizes][kNumPlaneTypes] 1701 [kCoeffBaseRangeContexts][kCoeffBaseRangeSymbolCount + 1] = { 1702 {{{{18470, 12050, 8594, 0, 0}, {20232, 13167, 8979, 0, 0}, 1703 {24056, 17717, 13265, 0, 0}, {26598, 21441, 17334, 0, 0}, 1704 {28026, 23842, 20230, 0, 0}, {28965, 25451, 22222, 0, 0}, 1705 {31072, 29451, 27897, 0, 0}, {18376, 12817, 10012, 0, 0}, 1706 {16790, 9550, 5950, 0, 0}, {20581, 13294, 8879, 0, 0}, 1707 {23592, 17128, 12509, 0, 0}, {25700, 20113, 15740, 0, 0}, 1708 {27112, 22326, 18296, 0, 0}, {30188, 27776, 25524, 0, 0}, 1709 {20632, 14719, 11342, 0, 0}, {18984, 12047, 8287, 0, 0}, 1710 {21932, 15147, 10868, 0, 0}, {24396, 18324, 13921, 0, 0}, 1711 {26245, 20989, 16768, 0, 0}, {27431, 22870, 19008, 0, 0}, 1712 {29734, 26908, 24306, 0, 0}}, 1713 {{16801, 9863, 6482, 0, 0}, {19234, 12114, 8189, 0, 0}, 1714 {23264, 16676, 12233, 0, 0}, {25793, 20200, 15865, 0, 0}, 1715 {27404, 22677, 18748, 0, 0}, {28411, 24398, 20911, 0, 0}, 1716 {30262, 27834, 25550, 0, 0}, {9736, 3953, 1832, 0, 0}, 1717 {13228, 6064, 3049, 0, 0}, {17610, 9799, 5671, 0, 0}, 1718 {21360, 13903, 9118, 0, 0}, {23883, 17320, 12518, 0, 0}, 1719 {25660, 19915, 15352, 0, 0}, {28537, 24727, 21288, 0, 0}, 1720 {12945, 6278, 3612, 0, 0}, {13878, 6839, 3836, 0, 0}, 1721 {17108, 9277, 5335, 0, 0}, {20621, 12992, 8280, 0, 0}, 1722 {23040, 15994, 11119, 0, 0}, {24849, 18491, 13702, 0, 0}, 1723 {27328, 22598, 18583, 0, 0}}}, 1724 {{{18362, 11906, 8354, 0, 0}, {20944, 13861, 9659, 0, 0}, 1725 {24511, 18375, 13965, 0, 0}, {26908, 22021, 17990, 0, 0}, 1726 {28293, 24282, 20784, 0, 0}, {29162, 25814, 22725, 0, 0}, 1727 {31032, 29358, 27720, 0, 0}, {18338, 12722, 9886, 0, 0}, 1728 {17175, 9869, 6059, 0, 0}, {20666, 13400, 8957, 0, 0}, 1729 {23709, 17184, 12506, 0, 0}, {25769, 20165, 15720, 0, 0}, 1730 {27084, 22271, 18215, 0, 0}, {29946, 27330, 24906, 0, 0}, 1731 {16983, 11183, 8409, 0, 0}, {14421, 7539, 4502, 0, 0}, 1732 {17794, 10281, 6379, 0, 0}, {21345, 14087, 9497, 0, 0}, 1733 {23905, 17418, 12760, 0, 0}, {25615, 19916, 15490, 0, 0}, 1734 {29061, 25732, 22786, 0, 0}}, 1735 {{17308, 11072, 7299, 0, 0}, {20598, 13519, 9577, 0, 0}, 1736 {24045, 17741, 13436, 0, 0}, {26340, 21064, 16894, 0, 0}, 1737 {27846, 23476, 19716, 0, 0}, {28629, 25073, 21758, 0, 0}, 1738 {30477, 28260, 26170, 0, 0}, {12912, 5848, 2940, 0, 0}, 1739 {14845, 7479, 3976, 0, 0}, {18490, 10800, 6471, 0, 0}, 1740 {21858, 14632, 9818, 0, 0}, {24345, 17953, 13141, 0, 0}, 1741 {25997, 20485, 15994, 0, 0}, {28694, 25018, 21687, 0, 0}, 1742 {12916, 6694, 4096, 0, 0}, {13397, 6658, 3779, 0, 0}, 1743 {16503, 8895, 5105, 0, 0}, {20010, 12390, 7816, 0, 0}, 1744 {22673, 15670, 10807, 0, 0}, {24518, 18140, 13317, 0, 0}, 1745 {27563, 23023, 19146, 0, 0}}}, 1746 {{{22205, 16535, 13005, 0, 0}, {22974, 16746, 12964, 0, 0}, 1747 {26018, 20823, 17009, 0, 0}, {27805, 23582, 20016, 0, 0}, 1748 {28923, 25333, 22141, 0, 0}, {29717, 26683, 23934, 0, 0}, 1749 {31457, 30172, 28938, 0, 0}, {21522, 16364, 13079, 0, 0}, 1750 {20453, 13857, 10037, 0, 0}, {22211, 15673, 11479, 0, 0}, 1751 {24632, 18762, 14519, 0, 0}, {26420, 21294, 17203, 0, 0}, 1752 {27572, 23113, 19368, 0, 0}, {30419, 28242, 26181, 0, 0}, 1753 {19431, 14038, 11199, 0, 0}, {13462, 6697, 3886, 0, 0}, 1754 {16816, 9228, 5514, 0, 0}, {20359, 12834, 8338, 0, 0}, 1755 {23008, 16062, 11379, 0, 0}, {24764, 18548, 13950, 0, 0}, 1756 {28630, 24974, 21807, 0, 0}}, 1757 {{21898, 16084, 11819, 0, 0}, {23104, 17538, 14088, 0, 0}, 1758 {25882, 20659, 17360, 0, 0}, {27943, 23868, 20463, 0, 0}, 1759 {29138, 25606, 22454, 0, 0}, {29732, 26339, 23381, 0, 0}, 1760 {31097, 29472, 27828, 0, 0}, {18949, 13609, 9742, 0, 0}, 1761 {20784, 13660, 9648, 0, 0}, {22078, 15558, 11105, 0, 0}, 1762 {24784, 18614, 14435, 0, 0}, {25900, 20474, 16644, 0, 0}, 1763 {27494, 23774, 19900, 0, 0}, {29780, 26997, 24344, 0, 0}, 1764 {13032, 6121, 3627, 0, 0}, {13835, 6698, 3784, 0, 0}, 1765 {16989, 9720, 5568, 0, 0}, {20130, 12707, 8236, 0, 0}, 1766 {22076, 15223, 10548, 0, 0}, {23551, 17517, 12714, 0, 0}, 1767 {27690, 23484, 20174, 0, 0}}}, 1768 {{{30437, 29106, 27524, 0, 0}, {29877, 27997, 26623, 0, 0}, 1769 {28170, 25145, 23039, 0, 0}, {29248, 25923, 23569, 0, 0}, 1770 {29351, 26649, 23444, 0, 0}, {30167, 27356, 25383, 0, 0}, 1771 {32168, 31595, 31024, 0, 0}, {25096, 19482, 15299, 0, 0}, 1772 {28536, 24976, 21975, 0, 0}, {29853, 27451, 25371, 0, 0}, 1773 {30450, 28412, 26616, 0, 0}, {30641, 28768, 27214, 0, 0}, 1774 {30918, 29290, 27493, 0, 0}, {31791, 30835, 29925, 0, 0}, 1775 {14488, 8381, 4779, 0, 0}, {16916, 10097, 6583, 0, 0}, 1776 {18923, 11817, 7979, 0, 0}, {21713, 14802, 10639, 0, 0}, 1777 {23630, 17346, 12967, 0, 0}, {25314, 19623, 15312, 0, 0}, 1778 {29398, 26375, 23755, 0, 0}}, 1779 {{26926, 23539, 21930, 0, 0}, {30455, 29277, 28492, 0, 0}, 1780 {29770, 26664, 25272, 0, 0}, {30348, 25321, 22900, 0, 0}, 1781 {29734, 24273, 21845, 0, 0}, {28692, 23831, 21793, 0, 0}, 1782 {31682, 30398, 29469, 0, 0}, {23054, 15514, 12324, 0, 0}, 1783 {24225, 19070, 15645, 0, 0}, {27850, 23761, 20858, 0, 0}, 1784 {28639, 25236, 22215, 0, 0}, {30404, 27235, 24710, 0, 0}, 1785 {30934, 29222, 27205, 0, 0}, {31295, 29860, 28635, 0, 0}, 1786 {17363, 11575, 7149, 0, 0}, {17077, 10816, 6207, 0, 0}, 1787 {19806, 13574, 8603, 0, 0}, {22496, 14913, 10639, 0, 0}, 1788 {24180, 17498, 12050, 0, 0}, {24086, 18099, 13268, 0, 0}, 1789 {27898, 23132, 19563, 0, 0}}}, 1790 {{{24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1791 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1792 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1793 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1794 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1795 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1796 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1797 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1798 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1799 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1800 {24576, 16384, 8192, 0, 0}}, 1801 {{24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1802 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1803 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1804 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1805 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1806 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1807 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1808 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1809 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1810 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1811 {24576, 16384, 8192, 0, 0}}}}, 1812 {{{{17773, 11427, 8019, 0, 0}, {19610, 12479, 8167, 0, 0}, 1813 {23827, 17442, 12892, 0, 0}, {26471, 21227, 16961, 0, 0}, 1814 {27951, 23739, 19992, 0, 0}, {29037, 25495, 22141, 0, 0}, 1815 {30921, 29151, 27414, 0, 0}, {18296, 13109, 10425, 0, 0}, 1816 {15962, 8606, 5235, 0, 0}, {19868, 12364, 8055, 0, 0}, 1817 {23357, 16656, 11971, 0, 0}, {25712, 20071, 15620, 0, 0}, 1818 {27224, 22429, 18308, 0, 0}, {29814, 27064, 24449, 0, 0}, 1819 {20304, 14697, 11414, 0, 0}, {17286, 10240, 6734, 0, 0}, 1820 {20698, 13499, 9144, 0, 0}, {23815, 17362, 12662, 0, 0}, 1821 {25741, 20038, 15548, 0, 0}, {26881, 21855, 17628, 0, 0}, 1822 {28975, 25490, 22321, 0, 0}}, 1823 {{17197, 10536, 7019, 0, 0}, {18262, 11193, 7394, 0, 0}, 1824 {22579, 15679, 11199, 0, 0}, {25452, 19467, 14853, 0, 0}, 1825 {26985, 21856, 17578, 0, 0}, {28008, 23613, 19680, 0, 0}, 1826 {29775, 26802, 23994, 0, 0}, {9344, 3865, 1990, 0, 0}, 1827 {11993, 5102, 2478, 0, 0}, {16294, 8358, 4469, 0, 0}, 1828 {20297, 12588, 7781, 0, 0}, {23358, 16281, 11329, 0, 0}, 1829 {25232, 19154, 14239, 0, 0}, {27720, 23182, 19219, 0, 0}, 1830 {11678, 5478, 3012, 0, 0}, {11972, 5366, 2742, 0, 0}, 1831 {14949, 7283, 3799, 0, 0}, {18908, 10859, 6306, 0, 0}, 1832 {21766, 14274, 9239, 0, 0}, {23815, 16839, 11871, 0, 0}, 1833 {26320, 20850, 16314, 0, 0}}}, 1834 {{{16769, 10560, 7319, 0, 0}, {19718, 12780, 8646, 0, 0}, 1835 {24174, 17904, 13390, 0, 0}, {26735, 21689, 17530, 0, 0}, 1836 {28214, 24085, 20421, 0, 0}, {29096, 25629, 22431, 0, 0}, 1837 {30868, 28997, 27192, 0, 0}, {16980, 11428, 8819, 0, 0}, 1838 {15943, 8533, 5010, 0, 0}, {19895, 12366, 7958, 0, 0}, 1839 {23178, 16405, 11674, 0, 0}, {25416, 19559, 15035, 0, 0}, 1840 {26808, 21779, 17584, 0, 0}, {29536, 26534, 23761, 0, 0}, 1841 {17007, 12052, 9544, 0, 0}, {13450, 6779, 4009, 0, 0}, 1842 {17239, 9674, 5839, 0, 0}, {21106, 13779, 9127, 0, 0}, 1843 {23813, 17200, 12402, 0, 0}, {25487, 19662, 15060, 0, 0}, 1844 {28520, 24709, 21328, 0, 0}}, 1845 {{17869, 11551, 8265, 0, 0}, {19249, 12485, 8721, 0, 0}, 1846 {23339, 16802, 12403, 0, 0}, {26068, 20413, 16116, 0, 0}, 1847 {27680, 23064, 19052, 0, 0}, {28525, 24614, 21037, 0, 0}, 1848 {30066, 27404, 24907, 0, 0}, {10023, 4380, 2314, 0, 0}, 1849 {12533, 5622, 2846, 0, 0}, {16872, 9053, 5131, 0, 0}, 1850 {20928, 13418, 8637, 0, 0}, {23646, 16836, 11888, 0, 0}, 1851 {25280, 19187, 14406, 0, 0}, {27654, 23200, 19398, 0, 0}, 1852 {11923, 6215, 3836, 0, 0}, {11787, 5396, 2884, 0, 0}, 1853 {14987, 7433, 3983, 0, 0}, {19008, 11060, 6471, 0, 0}, 1854 {21793, 14353, 9403, 0, 0}, {23723, 16979, 12082, 0, 0}, 1855 {26638, 21569, 17345, 0, 0}}}, 1856 {{{19219, 13044, 9610, 0, 0}, {20924, 14386, 10522, 0, 0}, 1857 {24849, 19149, 14995, 0, 0}, {27282, 22625, 18822, 0, 0}, 1858 {28602, 24785, 21444, 0, 0}, {29404, 26262, 23341, 0, 0}, 1859 {31170, 29608, 28094, 0, 0}, {17487, 11789, 8987, 0, 0}, 1860 {17829, 10649, 6816, 0, 0}, {21405, 14361, 9956, 0, 0}, 1861 {24159, 17911, 13398, 0, 0}, {26031, 20584, 16288, 0, 0}, 1862 {27262, 22505, 18506, 0, 0}, {29778, 26982, 24388, 0, 0}, 1863 {12519, 7515, 5351, 0, 0}, {11698, 5250, 2767, 0, 0}, 1864 {15914, 8299, 4694, 0, 0}, {19904, 12282, 7768, 0, 0}, 1865 {22806, 15790, 10990, 0, 0}, {24694, 18430, 13720, 0, 0}, 1866 {28274, 24289, 20862, 0, 0}}, 1867 {{18808, 13151, 9939, 0, 0}, {21618, 15427, 11540, 0, 0}, 1868 {25618, 19804, 15578, 0, 0}, {27437, 22766, 18901, 0, 0}, 1869 {28601, 25024, 21711, 0, 0}, {29288, 26139, 23122, 0, 0}, 1870 {30885, 28984, 27082, 0, 0}, {14016, 7108, 3856, 0, 0}, 1871 {15800, 8182, 4738, 0, 0}, {19248, 11713, 7455, 0, 0}, 1872 {22315, 15142, 10488, 0, 0}, {24382, 18263, 13652, 0, 0}, 1873 {26026, 20173, 15760, 0, 0}, {28495, 24628, 21269, 0, 0}, 1874 {10648, 4941, 2535, 0, 0}, {12205, 5410, 2873, 0, 0}, 1875 {15692, 8124, 4615, 0, 0}, {19406, 11826, 7459, 0, 0}, 1876 {21974, 14803, 10073, 0, 0}, {23754, 17116, 12449, 0, 0}, 1877 {27060, 22256, 18271, 0, 0}}}, 1878 {{{27063, 21838, 17043, 0, 0}, {24822, 20003, 16653, 0, 0}, 1879 {25967, 20645, 16542, 0, 0}, {27306, 22633, 18568, 0, 0}, 1880 {28579, 24757, 21261, 0, 0}, {29577, 26539, 23360, 0, 0}, 1881 {31711, 30631, 29556, 0, 0}, {22750, 15701, 11277, 0, 0}, 1882 {25388, 20186, 16315, 0, 0}, {26700, 21923, 18429, 0, 0}, 1883 {27670, 23570, 20213, 0, 0}, {28456, 24758, 21649, 0, 0}, 1884 {29068, 25802, 22987, 0, 0}, {31075, 29442, 27881, 0, 0}, 1885 {14011, 7838, 4994, 0, 0}, {15120, 8172, 4951, 0, 0}, 1886 {18061, 10716, 6742, 0, 0}, {21048, 13916, 9476, 0, 0}, 1887 {23411, 16816, 12243, 0, 0}, {24958, 19015, 14558, 0, 0}, 1888 {28889, 25435, 22440, 0, 0}}, 1889 {{24490, 19526, 16846, 0, 0}, {22221, 16901, 13849, 0, 0}, 1890 {23662, 16926, 12159, 0, 0}, {25935, 19761, 15550, 0, 0}, 1891 {27957, 23056, 18845, 0, 0}, {28783, 25416, 21640, 0, 0}, 1892 {31080, 29310, 27506, 0, 0}, {19817, 10907, 6258, 0, 0}, 1893 {22980, 16724, 12492, 0, 0}, {26459, 21524, 17898, 0, 0}, 1894 {27585, 23419, 20202, 0, 0}, {28379, 24539, 21276, 0, 0}, 1895 {29135, 25823, 22148, 0, 0}, {29168, 25921, 22861, 0, 0}, 1896 {11020, 4631, 2513, 0, 0}, {13332, 6187, 3208, 0, 0}, 1897 {16409, 8567, 4815, 0, 0}, {18807, 11075, 6897, 0, 0}, 1898 {21224, 14082, 9446, 0, 0}, {23396, 16306, 11816, 0, 0}, 1899 {26630, 21558, 17378, 0, 0}}}, 1900 {{{24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1901 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1902 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1903 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1904 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1905 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1906 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1907 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1908 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1909 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1910 {24576, 16384, 8192, 0, 0}}, 1911 {{24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1912 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1913 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1914 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1915 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1916 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1917 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1918 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1919 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1920 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 1921 {24576, 16384, 8192, 0, 0}}}}, 1922 {{{{16630, 10545, 7259, 0, 0}, {17421, 10338, 6436, 0, 0}, 1923 {23154, 16032, 11436, 0, 0}, {26168, 20493, 15861, 0, 0}, 1924 {27957, 23344, 19221, 0, 0}, {29020, 24959, 21348, 0, 0}, 1925 {30514, 28181, 25878, 0, 0}, {17572, 12484, 9591, 0, 0}, 1926 {14451, 7299, 4317, 0, 0}, {18850, 11117, 6926, 0, 0}, 1927 {22716, 15618, 10773, 0, 0}, {25269, 19138, 14181, 0, 0}, 1928 {26610, 21351, 16765, 0, 0}, {28754, 24983, 21516, 0, 0}, 1929 {17720, 11701, 8384, 0, 0}, {14566, 7422, 4215, 0, 0}, 1930 {18466, 10749, 6412, 0, 0}, {21929, 14629, 9602, 0, 0}, 1931 {24053, 17024, 11962, 0, 0}, {25232, 19192, 14224, 0, 0}, 1932 {27355, 22433, 18270, 0, 0}}, 1933 {{15374, 8267, 4873, 0, 0}, {16879, 9348, 5583, 0, 0}, 1934 {21207, 13635, 8898, 0, 0}, {24483, 17956, 12924, 0, 0}, 1935 {26272, 20725, 16218, 0, 0}, {27997, 23194, 19091, 0, 0}, 1936 {29165, 25938, 22624, 0, 0}, {11112, 5064, 2568, 0, 0}, 1937 {11444, 4853, 2257, 0, 0}, {15441, 7432, 3771, 0, 0}, 1938 {19351, 11387, 6735, 0, 0}, {22636, 15343, 10430, 0, 0}, 1939 {24188, 17752, 13135, 0, 0}, {27074, 21291, 16357, 0, 0}, 1940 {8652, 2988, 1318, 0, 0}, {8915, 3073, 1177, 0, 0}, 1941 {12683, 5154, 2340, 0, 0}, {17442, 8433, 4193, 0, 0}, 1942 {20954, 13296, 7958, 0, 0}, {22547, 14157, 8001, 0, 0}, 1943 {25079, 18210, 12447, 0, 0}}}, 1944 {{{16554, 10388, 6998, 0, 0}, {18555, 11464, 7473, 0, 0}, 1945 {23555, 16945, 12313, 0, 0}, {26373, 21010, 16629, 0, 0}, 1946 {27989, 23581, 19702, 0, 0}, {28947, 25267, 21815, 0, 0}, 1947 {30475, 28201, 25973, 0, 0}, {16909, 11485, 8948, 0, 0}, 1948 {14364, 7166, 4042, 0, 0}, {18443, 10788, 6562, 0, 0}, 1949 {22099, 14831, 10048, 0, 0}, {24471, 18126, 13321, 0, 0}, 1950 {26022, 20379, 15875, 0, 0}, {28444, 24517, 20998, 0, 0}, 1951 {16236, 11137, 8293, 0, 0}, {12101, 5618, 3100, 0, 0}, 1952 {16040, 8258, 4593, 0, 0}, {19907, 12123, 7436, 0, 0}, 1953 {22692, 15407, 10351, 0, 0}, {24373, 17828, 12805, 0, 0}, 1954 {27037, 22085, 17856, 0, 0}}, 1955 {{18335, 11613, 7830, 0, 0}, {18110, 11052, 7223, 0, 0}, 1956 {22845, 15944, 11211, 0, 0}, {25786, 19716, 15047, 0, 0}, 1957 {27349, 22265, 17718, 0, 0}, {27916, 23606, 19754, 0, 0}, 1958 {29497, 26373, 23138, 0, 0}, {10558, 4935, 2659, 0, 0}, 1959 {12018, 5400, 2947, 0, 0}, {15874, 7940, 4195, 0, 0}, 1960 {19521, 11492, 7011, 0, 0}, {22730, 15503, 10205, 0, 0}, 1961 {24181, 17821, 12441, 0, 0}, {27123, 21397, 17516, 0, 0}, 1962 {10741, 5242, 3054, 0, 0}, {9670, 3622, 1547, 0, 0}, 1963 {12882, 5427, 2496, 0, 0}, {17159, 9021, 4722, 0, 0}, 1964 {20775, 12703, 7829, 0, 0}, {23131, 14501, 9097, 0, 0}, 1965 {25143, 18967, 13624, 0, 0}}}, 1966 {{{18330, 11970, 8679, 0, 0}, {20147, 13565, 9671, 0, 0}, 1967 {24591, 18643, 14366, 0, 0}, {27094, 22267, 18312, 0, 0}, 1968 {28532, 24529, 21035, 0, 0}, {29321, 26018, 22962, 0, 0}, 1969 {30782, 28818, 26904, 0, 0}, {16560, 10669, 7838, 0, 0}, 1970 {16231, 8743, 5183, 0, 0}, {19988, 12387, 7901, 0, 0}, 1971 {23001, 16156, 11352, 0, 0}, {25082, 19030, 14370, 0, 0}, 1972 {26435, 21154, 16804, 0, 0}, {28827, 25197, 21932, 0, 0}, 1973 {9949, 5346, 3566, 0, 0}, {10544, 4254, 2047, 0, 0}, 1974 {15108, 7335, 3855, 0, 0}, {19194, 11286, 6766, 0, 0}, 1975 {22139, 14791, 9830, 0, 0}, {24156, 17470, 12503, 0, 0}, 1976 {27161, 22277, 18172, 0, 0}}, 1977 {{19199, 12968, 9562, 0, 0}, {19640, 12844, 8899, 0, 0}, 1978 {24439, 17927, 13365, 0, 0}, {26638, 21792, 17711, 0, 0}, 1979 {28086, 23929, 20250, 0, 0}, {29112, 25359, 22180, 0, 0}, 1980 {30191, 27669, 25356, 0, 0}, {10341, 4084, 2183, 0, 0}, 1981 {11855, 5018, 2629, 0, 0}, {16928, 8659, 4934, 0, 0}, 1982 {20460, 12739, 8199, 0, 0}, {22552, 15983, 11310, 0, 0}, 1983 {24459, 18565, 13655, 0, 0}, {26725, 21600, 17461, 0, 0}, 1984 {9602, 3867, 1770, 0, 0}, {10869, 4363, 2017, 0, 0}, 1985 {14355, 6677, 3325, 0, 0}, {17535, 9654, 5416, 0, 0}, 1986 {20085, 12296, 7480, 0, 0}, {22066, 14509, 9359, 0, 0}, 1987 {24643, 18304, 13542, 0, 0}}}, 1988 {{{23728, 17982, 14408, 0, 0}, {22789, 17050, 13353, 0, 0}, 1989 {24855, 18850, 14457, 0, 0}, {26909, 21879, 17584, 0, 0}, 1990 {28175, 24091, 20258, 0, 0}, {28948, 25372, 21977, 0, 0}, 1991 {31038, 29297, 27576, 0, 0}, {20965, 14403, 10059, 0, 0}, 1992 {21349, 14710, 10543, 0, 0}, {23350, 16994, 12525, 0, 0}, 1993 {25229, 19443, 15111, 0, 0}, {26535, 21451, 17384, 0, 0}, 1994 {27631, 23112, 19223, 0, 0}, {29791, 26994, 24419, 0, 0}, 1995 {11561, 5522, 3128, 0, 0}, {13221, 6190, 3271, 0, 0}, 1996 {16599, 8897, 5078, 0, 0}, {19948, 12310, 7750, 0, 0}, 1997 {22544, 15436, 10554, 0, 0}, {24242, 17720, 12884, 0, 0}, 1998 {27731, 23358, 19650, 0, 0}}, 1999 {{20429, 15439, 12628, 0, 0}, {19263, 12873, 9543, 0, 0}, 2000 {22921, 15824, 11204, 0, 0}, {25488, 19512, 14420, 0, 0}, 2001 {28056, 22759, 18314, 0, 0}, {28407, 24854, 20291, 0, 0}, 2002 {29898, 27140, 24773, 0, 0}, {12707, 7264, 4242, 0, 0}, 2003 {17533, 9890, 6623, 0, 0}, {19783, 12810, 8613, 0, 0}, 2004 {22986, 16127, 11365, 0, 0}, {23312, 16408, 12008, 0, 0}, 2005 {25913, 19828, 14211, 0, 0}, {27107, 22204, 17766, 0, 0}, 2006 {7112, 2166, 874, 0, 0}, {10198, 3661, 1676, 0, 0}, 2007 {13851, 6345, 3227, 0, 0}, {16828, 9119, 5014, 0, 0}, 2008 {19965, 12187, 7549, 0, 0}, {21686, 14073, 9392, 0, 0}, 2009 {24829, 18395, 13763, 0, 0}}}, 2010 {{{24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2011 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2012 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2013 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2014 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2015 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2016 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2017 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2018 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2019 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2020 {24576, 16384, 8192, 0, 0}}, 2021 {{24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2022 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2023 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2024 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2025 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2026 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2027 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2028 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2029 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2030 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2031 {24576, 16384, 8192, 0, 0}}}}, 2032 {{{{14453, 8479, 5217, 0, 0}, {15914, 8700, 4933, 0, 0}, 2033 {22628, 14841, 9595, 0, 0}, {26046, 19786, 14501, 0, 0}, 2034 {28107, 22942, 18062, 0, 0}, {28936, 24603, 20474, 0, 0}, 2035 {29973, 26670, 23523, 0, 0}, {15623, 9442, 6096, 0, 0}, 2036 {12035, 5088, 2460, 0, 0}, {16736, 8307, 4222, 0, 0}, 2037 {21115, 12675, 7687, 0, 0}, {23478, 16339, 10682, 0, 0}, 2038 {24972, 18170, 12786, 0, 0}, {26266, 20390, 15327, 0, 0}, 2039 {11087, 5036, 2448, 0, 0}, {10379, 3724, 1507, 0, 0}, 2040 {13741, 6037, 2681, 0, 0}, {18029, 9013, 4144, 0, 0}, 2041 {21410, 11990, 7257, 0, 0}, {21773, 14695, 8578, 0, 0}, 2042 {23606, 17778, 12151, 0, 0}}, 2043 {{11343, 4816, 2380, 0, 0}, {14706, 6930, 3734, 0, 0}, 2044 {20812, 12887, 7960, 0, 0}, {25050, 17768, 11788, 0, 0}, 2045 {27066, 21514, 16625, 0, 0}, {27870, 23680, 15904, 0, 0}, 2046 {29089, 25992, 20861, 0, 0}, {9474, 2608, 1105, 0, 0}, 2047 {8371, 2872, 932, 0, 0}, {13523, 5640, 2175, 0, 0}, 2048 {19566, 12943, 6364, 0, 0}, {21190, 13471, 8811, 0, 0}, 2049 {24695, 19471, 11398, 0, 0}, {27307, 21845, 13023, 0, 0}, 2050 {5401, 2247, 834, 0, 0}, {7864, 2097, 828, 0, 0}, 2051 {9693, 4308, 1469, 0, 0}, {18368, 9110, 2351, 0, 0}, 2052 {18883, 8886, 4443, 0, 0}, {18022, 9830, 4915, 0, 0}, 2053 {27307, 16384, 5461, 0, 0}}}, 2054 {{{14494, 7955, 4878, 0, 0}, {17231, 9619, 5765, 0, 0}, 2055 {23319, 16028, 10941, 0, 0}, {26068, 20270, 15507, 0, 0}, 2056 {27780, 22902, 18570, 0, 0}, {28532, 24621, 20866, 0, 0}, 2057 {29901, 26908, 24114, 0, 0}, {15644, 9597, 6667, 0, 0}, 2058 {12372, 5291, 2620, 0, 0}, {16195, 8139, 4276, 0, 0}, 2059 {20019, 11922, 7094, 0, 0}, {22535, 14890, 9950, 0, 0}, 2060 {24243, 17436, 12405, 0, 0}, {26485, 21136, 16513, 0, 0}, 2061 {12302, 6257, 3482, 0, 0}, {9709, 3594, 1577, 0, 0}, 2062 {13287, 5505, 2527, 0, 0}, {17310, 9137, 4631, 0, 0}, 2063 {20352, 12160, 7075, 0, 0}, {22507, 14757, 9507, 0, 0}, 2064 {24752, 18113, 13102, 0, 0}}, 2065 {{15152, 8182, 4656, 0, 0}, {16959, 9469, 5613, 0, 0}, 2066 {22001, 13878, 8975, 0, 0}, {25041, 18513, 13903, 0, 0}, 2067 {26639, 20842, 15886, 0, 0}, {28286, 23064, 17907, 0, 0}, 2068 {29491, 25316, 21246, 0, 0}, {9812, 4217, 2038, 0, 0}, 2069 {10044, 3831, 1807, 0, 0}, {14301, 6444, 3188, 0, 0}, 2070 {19534, 12055, 7119, 0, 0}, {21587, 15176, 10287, 0, 0}, 2071 {24477, 14410, 8192, 0, 0}, {25200, 20887, 17784, 0, 0}, 2072 {7820, 3767, 1621, 0, 0}, {7094, 2149, 617, 0, 0}, 2073 {11927, 5975, 3165, 0, 0}, {18099, 8412, 4102, 0, 0}, 2074 {21434, 9175, 4549, 0, 0}, {23846, 18006, 9895, 0, 0}, 2075 {24467, 19224, 12233, 0, 0}}}, 2076 {{{15655, 9035, 5687, 0, 0}, {18629, 11362, 7316, 0, 0}, 2077 {24216, 17766, 12992, 0, 0}, {26897, 21648, 17390, 0, 0}, 2078 {28313, 24152, 20515, 0, 0}, {29299, 25858, 22382, 0, 0}, 2079 {30513, 28215, 25986, 0, 0}, {14544, 8392, 5715, 0, 0}, 2080 {13478, 6058, 3154, 0, 0}, {17832, 9777, 5584, 0, 0}, 2081 {21530, 13817, 9006, 0, 0}, {23982, 17151, 12180, 0, 0}, 2082 {25451, 19540, 14765, 0, 0}, {27667, 23256, 19275, 0, 0}, 2083 {10129, 4546, 2558, 0, 0}, {9552, 3437, 1461, 0, 0}, 2084 {13693, 6006, 2873, 0, 0}, {17754, 9655, 5311, 0, 0}, 2085 {20830, 12911, 8016, 0, 0}, {22826, 15488, 10486, 0, 0}, 2086 {25601, 19624, 15016, 0, 0}}, 2087 {{16948, 10030, 6280, 0, 0}, {19238, 11883, 7552, 0, 0}, 2088 {24373, 17238, 12316, 0, 0}, {26194, 20447, 16388, 0, 0}, 2089 {27415, 22349, 18200, 0, 0}, {28155, 24322, 20387, 0, 0}, 2090 {29328, 25610, 22865, 0, 0}, {8521, 3717, 1544, 0, 0}, 2091 {10650, 4710, 2399, 0, 0}, {16270, 8000, 4379, 0, 0}, 2092 {19848, 11593, 6631, 0, 0}, {22038, 14149, 7416, 0, 0}, 2093 {22581, 16489, 9977, 0, 0}, {23458, 18137, 10641, 0, 0}, 2094 {7798, 2210, 711, 0, 0}, {7967, 2826, 1070, 0, 0}, 2095 {10336, 4315, 1913, 0, 0}, {13714, 7088, 3188, 0, 0}, 2096 {18376, 9732, 4659, 0, 0}, {20273, 11821, 6118, 0, 0}, 2097 {20326, 12442, 6554, 0, 0}}}, 2098 {{{20606, 13983, 10120, 0, 0}, {20019, 13071, 8962, 0, 0}, 2099 {24188, 17471, 12422, 0, 0}, {26599, 21019, 16225, 0, 0}, 2100 {27932, 23377, 19320, 0, 0}, {28947, 25057, 21155, 0, 0}, 2101 {30540, 28167, 25698, 0, 0}, {16449, 8043, 4488, 0, 0}, 2102 {17070, 9491, 5600, 0, 0}, {20042, 12400, 7721, 0, 0}, 2103 {22856, 15753, 10792, 0, 0}, {24880, 18548, 13589, 0, 0}, 2104 {25991, 20484, 15750, 0, 0}, {28276, 24178, 20516, 0, 0}, 2105 {9519, 3864, 1821, 0, 0}, {11718, 4860, 2256, 0, 0}, 2106 {15328, 7428, 3819, 0, 0}, {18709, 10750, 6227, 0, 0}, 2107 {21480, 13865, 8870, 0, 0}, {23357, 16426, 11340, 0, 0}, 2108 {26490, 21180, 16824, 0, 0}}, 2109 {{18787, 12701, 9542, 0, 0}, {15846, 9188, 5985, 0, 0}, 2110 {21763, 13729, 8281, 0, 0}, {25379, 18550, 12970, 0, 0}, 2111 {27170, 21263, 15562, 0, 0}, {26678, 21555, 17109, 0, 0}, 2112 {28948, 25397, 22649, 0, 0}, {11686, 5843, 3093, 0, 0}, 2113 {11506, 4141, 1640, 0, 0}, {14376, 6314, 2331, 0, 0}, 2114 {17898, 9858, 5672, 0, 0}, {20148, 13284, 7860, 0, 0}, 2115 {23478, 16215, 9966, 0, 0}, {26100, 18480, 12764, 0, 0}, 2116 {5064, 1713, 819, 0, 0}, {8059, 2790, 980, 0, 0}, 2117 {11100, 3504, 1111, 0, 0}, {14473, 5800, 2694, 0, 0}, 2118 {16369, 8346, 3455, 0, 0}, {18421, 9742, 4664, 0, 0}, 2119 {20398, 12962, 8291, 0, 0}}}, 2120 {{{24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2121 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2122 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2123 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2124 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2125 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2126 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2127 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2128 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2129 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2130 {24576, 16384, 8192, 0, 0}}, 2131 {{24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2132 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2133 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2134 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2135 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2136 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2137 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2138 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2139 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2140 {24576, 16384, 8192, 0, 0}, {24576, 16384, 8192, 0, 0}, 2141 {24576, 16384, 8192, 0, 0}}}}}; 2142 2143/* clang-format off */ 2144alignas(kMaxAlignment) constexpr uint16_t kDefaultDcSignCdf[kCoefficientQuantizerContexts][kNumPlaneTypes] 2145 [kDcSignContexts][kBooleanFieldCdfSize] = { 2146 {{{16768, 0, 0}, {19712, 0, 0}, {13952, 0, 0}}, {{17536, 0, 0}, {19840, 0, 0}, 2147 {15488, 0, 0}}}, 2148 {{{16768, 0, 0}, {19712, 0, 0}, {13952, 0, 0}}, {{17536, 0, 0}, {19840, 0, 0}, 2149 {15488, 0, 0}}}, 2150 {{{16768, 0, 0}, {19712, 0, 0}, {13952, 0, 0}}, {{17536, 0, 0}, {19840, 0, 0}, 2151 {15488, 0, 0}}}, 2152 {{{16768, 0, 0}, {19712, 0, 0}, {13952, 0, 0}}, {{17536, 0, 0}, {19840, 0, 0}, 2153 {15488, 0, 0}}} 2154}; 2155/* clang-format on */ 2156alignas(kMaxAlignment) constexpr uint16_t 2157 kDefaultRestorationTypeCdf[kRestorationTypeSymbolCount + 1] = {23355, 10187, 2158 0, 0}; 2159 2160alignas(kMaxAlignment) constexpr uint16_t 2161 kDefaultUseWienerCdf[kBooleanFieldCdfSize] = {21198, 0, 0}; 2162 2163alignas(kMaxAlignment) constexpr uint16_t 2164 kDefaultUseSgrProjCdf[kBooleanFieldCdfSize] = {15913, 0, 0}; 2165 2166alignas(kMaxAlignment) constexpr uint16_t 2167 kDefaultHasPaletteYCdf[kPaletteBlockSizeContexts][kPaletteYModeContexts] 2168 [kBooleanFieldCdfSize] = { 2169 {{1092, 0, 0}, {29349, 0, 0}, {31507, 0, 0}}, 2170 {{856, 0, 0}, {29909, 0, 0}, {31788, 0, 0}}, 2171 {{945, 0, 0}, {29368, 0, 0}, {31987, 0, 0}}, 2172 {{738, 0, 0}, {29207, 0, 0}, {31864, 0, 0}}, 2173 {{459, 0, 0}, {25431, 0, 0}, {31306, 0, 0}}, 2174 {{503, 0, 0}, {28753, 0, 0}, {31247, 0, 0}}, 2175 {{318, 0, 0}, {24822, 0, 0}, {32639, 0, 0}}}; 2176 2177alignas(kMaxAlignment) constexpr uint16_t 2178 kDefaultPaletteYSizeCdf[kPaletteBlockSizeContexts] 2179 [kPaletteSizeSymbolCount + 1] = { 2180 {24816, 19768, 14619, 11290, 7241, 3527, 0, 0}, 2181 {25629, 21347, 16573, 13224, 9102, 4695, 0, 0}, 2182 {24980, 20027, 15443, 12268, 8453, 4238, 0, 0}, 2183 {24497, 18704, 14522, 11204, 7697, 4235, 0, 0}, 2184 {20043, 13588, 10905, 7929, 5233, 2648, 0, 0}, 2185 {23057, 17880, 15845, 11716, 7107, 4893, 0, 0}, 2186 {17828, 11971, 11090, 8582, 5735, 3769, 0, 0}}; 2187 2188alignas(kMaxAlignment) constexpr uint16_t 2189 kDefaultHasPaletteUVCdf[kPaletteUVModeContexts][kBooleanFieldCdfSize] = { 2190 {307, 0, 0}, {11280, 0, 0}}; 2191 2192alignas(kMaxAlignment) constexpr uint16_t 2193 kDefaultPaletteUVSizeCdf[kPaletteBlockSizeContexts] 2194 [kPaletteSizeSymbolCount + 1] = { 2195 {24055, 12789, 5640, 3159, 1437, 496, 0, 0}, 2196 {26929, 17195, 9187, 5821, 2920, 1068, 0, 0}, 2197 {28342, 21508, 14769, 11285, 6905, 3338, 0, 0}, 2198 {29540, 23304, 17775, 14679, 10245, 5348, 0, 0}, 2199 {29000, 23882, 19677, 14916, 10273, 5561, 0, 0}, 2200 {30304, 24317, 19907, 11136, 7243, 4213, 0, 0}, 2201 {31499, 27333, 22335, 13805, 11068, 6903, 0, 2202 0}}; 2203 2204alignas(kMaxAlignment) constexpr uint16_t kDefaultPaletteColorIndexCdf 2205 [kNumPlaneTypes][kPaletteSizeSymbolCount][kPaletteColorIndexContexts] 2206 [kPaletteColorIndexSymbolCount + 1] = { 2207 {{{4058, 0, 0}, 2208 {16384, 0, 0}, 2209 {22215, 0, 0}, 2210 {5732, 0, 0}, 2211 {1165, 0, 0}}, 2212 {{4891, 2278, 0, 0}, 2213 {21236, 7071, 0, 0}, 2214 {26224, 2534, 0, 0}, 2215 {9750, 4696, 0, 0}, 2216 {853, 383, 0, 0}}, 2217 {{7196, 4722, 2723, 0, 0}, 2218 {23290, 11178, 5512, 0, 0}, 2219 {25520, 5931, 2944, 0, 0}, 2220 {13601, 8282, 4419, 0, 0}, 2221 {1368, 943, 518, 0, 0}}, 2222 {{7989, 5813, 4192, 2486, 0, 0}, 2223 {24099, 12404, 8695, 4675, 0, 0}, 2224 {28513, 5203, 3391, 1701, 0, 0}, 2225 {12904, 9094, 6052, 3238, 0, 0}, 2226 {1122, 875, 621, 342, 0, 0}}, 2227 {{9636, 7361, 5798, 4333, 2695, 0, 0}, 2228 {25325, 15526, 12051, 8006, 4786, 0, 0}, 2229 {26468, 7906, 5824, 3984, 2097, 0, 0}, 2230 {13852, 9873, 7501, 5333, 3116, 0, 0}, 2231 {1498, 1218, 960, 709, 415, 0, 0}}, 2232 {{9663, 7569, 6304, 5084, 3837, 2450, 0, 0}, 2233 {25818, 17321, 13816, 10087, 7201, 4205, 0, 0}, 2234 {25208, 9294, 7278, 5565, 3847, 2060, 0, 0}, 2235 {14224, 10395, 8311, 6573, 4649, 2723, 0, 0}, 2236 {1570, 1317, 1098, 886, 645, 377, 0, 0}}, 2237 {{11079, 8885, 7605, 6416, 5262, 3941, 2573, 0, 0}, 2238 {25876, 17383, 14928, 11162, 8481, 6015, 3564, 0, 0}, 2239 {27117, 9586, 7726, 6250, 4786, 3376, 1868, 0, 0}, 2240 {13419, 10190, 8350, 6774, 5244, 3737, 2320, 0, 0}, 2241 {1740, 1498, 1264, 1063, 841, 615, 376, 0, 0}}}, 2242 {{{3679, 0, 0}, 2243 {16384, 0, 0}, 2244 {24055, 0, 0}, 2245 {3511, 0, 0}, 2246 {1158, 0, 0}}, 2247 {{7511, 3623, 0, 0}, 2248 {20481, 5475, 0, 0}, 2249 {25735, 4808, 0, 0}, 2250 {12623, 7363, 0, 0}, 2251 {2160, 1129, 0, 0}}, 2252 {{8558, 5593, 2865, 0, 0}, 2253 {22880, 10382, 5554, 0, 0}, 2254 {26867, 6715, 3475, 0, 0}, 2255 {14450, 10616, 4435, 0, 0}, 2256 {2309, 1632, 842, 0, 0}}, 2257 {{9788, 7289, 4987, 2782, 0, 0}, 2258 {24355, 11360, 7909, 3894, 0, 0}, 2259 {30511, 3319, 2174, 1170, 0, 0}, 2260 {13579, 11566, 6853, 4148, 0, 0}, 2261 {924, 724, 487, 250, 0, 0}}, 2262 {{10551, 8201, 6131, 4085, 2220, 0, 0}, 2263 {25461, 16362, 13132, 8136, 4344, 0, 0}, 2264 {28327, 7704, 5889, 3826, 1849, 0, 0}, 2265 {15558, 12240, 9449, 6018, 3186, 0, 0}, 2266 {2094, 1815, 1372, 1033, 561, 0, 0}}, 2267 {{11529, 9600, 7724, 5806, 4063, 2262, 0, 0}, 2268 {26223, 17756, 14764, 10951, 7265, 4067, 0, 0}, 2269 {29320, 6473, 5331, 4064, 2642, 1326, 0, 0}, 2270 {16879, 14445, 11064, 8070, 5792, 3078, 0, 0}, 2271 {1780, 1564, 1289, 1034, 785, 443, 0, 0}}, 2272 {{11326, 9480, 8010, 6522, 5119, 3788, 2205, 0, 0}, 2273 {26905, 17835, 15216, 12100, 9085, 6357, 3495, 0, 0}, 2274 {29353, 6958, 5891, 4778, 3545, 2374, 1150, 0, 0}, 2275 {14803, 12684, 10536, 8794, 6494, 4366, 2378, 0, 0}, 2276 {1578, 1439, 1252, 1089, 943, 742, 446, 0, 0}}}}; 2277 2278alignas(kMaxAlignment) constexpr uint16_t 2279 kDefaultIsInterCdf[kIsInterContexts][kBooleanFieldCdfSize] = { 2280 {31962, 0, 0}, {16106, 0, 0}, {12582, 0, 0}, {6230, 0, 0}}; 2281 2282alignas(kMaxAlignment) constexpr uint16_t 2283 kDefaultUseCompoundReferenceCdf[kUseCompoundReferenceContexts] 2284 [kBooleanFieldCdfSize] = {{5940, 0, 0}, 2285 {8733, 0, 0}, 2286 {20737, 0, 0}, 2287 {22128, 0, 0}, 2288 {29867, 0, 0}}; 2289 2290alignas(kMaxAlignment) constexpr uint16_t 2291 kDefaultCompoundReferenceTypeCdf[kCompoundReferenceTypeContexts] 2292 [kBooleanFieldCdfSize] = {{31570, 0, 0}, 2293 {30698, 0, 0}, 2294 {23602, 0, 0}, 2295 {25269, 0, 0}, 2296 {10293, 0, 0}}; 2297 2298alignas(kMaxAlignment) constexpr uint16_t kDefaultCompoundReferenceCdf 2299 [kNumCompoundReferenceTypes][kReferenceContexts][3][kBooleanFieldCdfSize] = 2300 {{{{27484, 0, 0}, {28903, 0, 0}, {29640, 0, 0}}, 2301 {{9616, 0, 0}, {18595, 0, 0}, {17498, 0, 0}}, 2302 {{994, 0, 0}, {7648, 0, 0}, {6058, 0, 0}}}, 2303 {{{27822, 0, 0}, {23300, 0, 0}, {31265, 0, 0}}, 2304 {{12877, 0, 0}, {10327, 0, 0}, {17608, 0, 0}}, 2305 {{2037, 0, 0}, {1709, 0, 0}, {5224, 0, 0}}}}; 2306 2307alignas(kMaxAlignment) constexpr uint16_t 2308 kDefaultCompoundBackwardReferenceCdf[kReferenceContexts][2] 2309 [kBooleanFieldCdfSize] = { 2310 {{30533, 0, 0}, {31345, 0, 0}}, 2311 {{15586, 0, 0}, {17593, 0, 0}}, 2312 {{2162, 0, 0}, {2279, 0, 0}}}; 2313 2314/* clang-format off */ 2315alignas(kMaxAlignment) constexpr uint16_t kDefaultSingleReferenceCdf[kReferenceContexts][6] 2316 [kBooleanFieldCdfSize] = { 2317 {{27871, 0, 0}, {31213, 0, 0}, {28532, 0, 0}, {24118, 0, 0}, {31864, 0, 0}, 2318 {31324, 0, 0}}, 2319 {{15795, 0, 0}, {16017, 0, 0}, {13121, 0, 0}, {7995, 0, 0}, {21754, 0, 0}, 2320 {17681, 0, 0}}, 2321 {{3024, 0, 0}, {2489, 0, 0}, {1574, 0, 0}, {873, 0, 0}, {5893, 0, 0}, 2322 {2464, 0, 0}}}; 2323/* clang-format on */ 2324 2325alignas(kMaxAlignment) constexpr uint16_t kDefaultCompoundPredictionModeCdf 2326 [kCompoundPredictionModeContexts][kNumCompoundInterPredictionModes + 1] = { 2327 {25008, 18945, 16960, 15127, 13612, 12102, 5877, 0, 0}, 2328 {22038, 13316, 11623, 10019, 8729, 7637, 4044, 0, 0}, 2329 {22104, 12547, 11180, 9862, 8473, 7381, 4332, 0, 0}, 2330 {19470, 15784, 12297, 8586, 7701, 7032, 6346, 0, 0}, 2331 {13864, 9443, 7526, 5336, 4870, 4510, 2010, 0, 0}, 2332 {22043, 15314, 12644, 9948, 8573, 7600, 6722, 0, 0}, 2333 {15643, 8495, 6954, 5276, 4554, 4064, 2176, 0, 0}, 2334 {19722, 9554, 8263, 6826, 5333, 4326, 3438, 0, 0}}; 2335 2336alignas(kMaxAlignment) constexpr uint16_t 2337 kDefaultNewMvCdf[kNewMvContexts][kBooleanFieldCdfSize] = { 2338 {8733, 0, 0}, {16138, 0, 0}, {17429, 0, 0}, 2339 {24382, 0, 0}, {20546, 0, 0}, {28092, 0, 0}}; 2340 2341alignas(kMaxAlignment) constexpr uint16_t 2342 kDefaultZeroMvCdf[kZeroMvContexts][kBooleanFieldCdfSize] = {{30593, 0, 0}, 2343 {31714, 0, 0}}; 2344 2345alignas(kMaxAlignment) constexpr uint16_t 2346 kDefaultReferenceMvCdf[kReferenceMvContexts][kBooleanFieldCdfSize] = { 2347 {8794, 0, 0}, {8580, 0, 0}, {14920, 0, 0}, 2348 {4146, 0, 0}, {8456, 0, 0}, {12845, 0, 0}}; 2349 2350// This is called drl_mode in the spec where DRL stands for Dynamic Reference 2351// List. 2352alignas(kMaxAlignment) constexpr uint16_t 2353 kDefaultRefMvIndexCdf[kRefMvIndexContexts][kBooleanFieldCdfSize] = { 2354 {19664, 0, 0}, {8208, 0, 0}, {13823, 0, 0}}; 2355 2356alignas(kMaxAlignment) constexpr uint16_t 2357 kDefaultIsInterIntraCdf[kInterIntraContexts][kBooleanFieldCdfSize] = { 2358 {5881, 0, 0}, {5171, 0, 0}, {2531, 0, 0}}; 2359 2360alignas(kMaxAlignment) constexpr uint16_t 2361 kDefaultInterIntraModeCdf[kInterIntraContexts][kNumInterIntraModes + 1] = { 2362 {30893, 21686, 5436, 0, 0}, 2363 {30295, 22772, 6380, 0, 0}, 2364 {28530, 21231, 6842, 0, 0}}; 2365 2366alignas(kMaxAlignment) constexpr uint16_t 2367 kDefaultIsWedgeInterIntraCdf[kMaxBlockSizes][kBooleanFieldCdfSize] = { 2368 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 2369 {12732, 0, 0}, {7811, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 2370 {6064, 0, 0}, {5238, 0, 0}, {3204, 0, 0}, {16384, 0, 0}, 2371 {16384, 0, 0}, {3324, 0, 0}, {5896, 0, 0}, {16384, 0, 0}, 2372 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 2373 {16384, 0, 0}, {16384, 0, 0}}; 2374 2375alignas(kMaxAlignment) constexpr uint16_t 2376 kDefaultWedgeIndexCdf[kMaxBlockSizes][kWedgeIndexSymbolCount + 1] = { 2377 {30720, 28672, 26624, 24576, 22528, 20480, 18432, 16384, 14336, 12288, 2378 10240, 8192, 6144, 4096, 2048, 0, 0}, 2379 {30720, 28672, 26624, 24576, 22528, 20480, 18432, 16384, 14336, 12288, 2380 10240, 8192, 6144, 4096, 2048, 0, 0}, 2381 {30720, 28672, 26624, 24576, 22528, 20480, 18432, 16384, 14336, 12288, 2382 10240, 8192, 6144, 4096, 2048, 0, 0}, 2383 {30720, 28672, 26624, 24576, 22528, 20480, 18432, 16384, 14336, 12288, 2384 10240, 8192, 6144, 4096, 2048, 0, 0}, 2385 {30330, 28328, 26169, 24105, 21763, 19894, 17017, 14674, 12409, 10406, 2386 8641, 7066, 5016, 3318, 1597, 0, 0}, 2387 {31962, 29502, 26763, 26030, 25550, 25401, 24997, 18180, 16445, 15401, 2388 14316, 13346, 9929, 6641, 3139, 0, 0}, 2389 {32614, 31781, 30843, 30717, 30680, 30657, 30617, 9735, 9065, 8484, 2390 7783, 7084, 5509, 3885, 1857, 0, 0}, 2391 {30720, 28672, 26624, 24576, 22528, 20480, 18432, 16384, 14336, 12288, 2392 10240, 8192, 6144, 4096, 2048, 0, 0}, 2393 {29989, 29030, 28085, 25555, 24993, 24751, 24113, 18411, 14829, 11436, 2394 8248, 5298, 3312, 2239, 1112, 0, 0}, 2395 {31084, 29143, 27093, 25660, 23466, 21494, 18339, 15624, 13605, 11807, 2396 9884, 8297, 6049, 4054, 1891, 0, 0}, 2397 {31626, 29277, 26491, 25454, 24679, 24413, 23745, 19144, 17399, 16038, 2398 14654, 13455, 10247, 6756, 3218, 0, 0}, 2399 {30720, 28672, 26624, 24576, 22528, 20480, 18432, 16384, 14336, 12288, 2400 10240, 8192, 6144, 4096, 2048, 0, 0}, 2401 {31633, 31446, 31275, 30133, 30072, 30031, 29998, 11752, 9833, 7711, 2402 5517, 3595, 2679, 1808, 835, 0, 0}, 2403 {30026, 28573, 27041, 24733, 23788, 23432, 22622, 18644, 15498, 12235, 2404 9334, 6796, 4824, 3198, 1352, 0, 0}, 2405 {31041, 28820, 26667, 24972, 22927, 20424, 17002, 13824, 12130, 10730, 2406 8805, 7457, 5780, 4002, 1756, 0, 0}, 2407 {30720, 28672, 26624, 24576, 22528, 20480, 18432, 16384, 14336, 12288, 2408 10240, 8192, 6144, 4096, 2048, 0, 0}, 2409 {30720, 28672, 26624, 24576, 22528, 20480, 18432, 16384, 14336, 12288, 2410 10240, 8192, 6144, 4096, 2048, 0, 0}, 2411 {30720, 28672, 26624, 24576, 22528, 20480, 18432, 16384, 14336, 12288, 2412 10240, 8192, 6144, 4096, 2048, 0, 0}, 2413 {30720, 28672, 26624, 24576, 22528, 20480, 18432, 16384, 14336, 12288, 2414 10240, 8192, 6144, 4096, 2048, 0, 0}, 2415 {30720, 28672, 26624, 24576, 22528, 20480, 18432, 16384, 14336, 12288, 2416 10240, 8192, 6144, 4096, 2048, 0, 0}, 2417 {30720, 28672, 26624, 24576, 22528, 20480, 18432, 16384, 14336, 12288, 2418 10240, 8192, 6144, 4096, 2048, 0, 0}, 2419 {30720, 28672, 26624, 24576, 22528, 20480, 18432, 16384, 14336, 12288, 2420 10240, 8192, 6144, 4096, 2048, 0, 0}}; 2421 2422alignas(kMaxAlignment) constexpr uint16_t 2423 kDefaultUseObmcCdf[kMaxBlockSizes][kBooleanFieldCdfSize] = { 2424 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 2425 {22331, 0, 0}, {23397, 0, 0}, {9104, 0, 0}, {16384, 0, 0}, 2426 {23467, 0, 0}, {15336, 0, 0}, {18345, 0, 0}, {8760, 0, 0}, 2427 {11867, 0, 0}, {17626, 0, 0}, {6951, 0, 0}, {9945, 0, 0}, 2428 {5889, 0, 0}, {10685, 0, 0}, {2640, 0, 0}, {1754, 0, 0}, 2429 {1208, 0, 0}, {130, 0, 0}}; 2430 2431alignas(kMaxAlignment) constexpr uint16_t 2432 kDefaultMotionModeCdf[kMaxBlockSizes][kNumMotionModes + 1] = { 2433 {21845, 10923, 0, 0}, {21845, 10923, 0, 0}, {21845, 10923, 0, 0}, 2434 {21845, 10923, 0, 0}, {25117, 8008, 0, 0}, {28030, 8003, 0, 0}, 2435 {3969, 1378, 0, 0}, {21845, 10923, 0, 0}, {27377, 7240, 0, 0}, 2436 {13349, 5958, 0, 0}, {27645, 9162, 0, 0}, {3795, 1174, 0, 0}, 2437 {6337, 1994, 0, 0}, {21162, 8460, 0, 0}, {6508, 3652, 0, 0}, 2438 {12408, 4706, 0, 0}, {3026, 1565, 0, 0}, {11089, 5938, 0, 0}, 2439 {3252, 2067, 0, 0}, {3870, 2371, 0, 0}, {1890, 1433, 0, 0}, 2440 {261, 210, 0, 0}}; 2441 2442alignas(kMaxAlignment) constexpr uint16_t 2443 kDefaultIsExplicitCompoundTypeCdf[kIsExplicitCompoundTypeContexts] 2444 [kBooleanFieldCdfSize] = { 2445 {6161, 0, 0}, {9877, 0, 0}, 2446 {13928, 0, 0}, {8174, 0, 0}, 2447 {12834, 0, 0}, {10094, 0, 0}}; 2448 2449alignas(kMaxAlignment) constexpr uint16_t 2450 kDefaultIsCompoundTypeAverageCdf[kIsCompoundTypeAverageContexts] 2451 [kBooleanFieldCdfSize] = { 2452 {14524, 0, 0}, {19903, 0, 0}, 2453 {25715, 0, 0}, {19509, 0, 0}, 2454 {23434, 0, 0}, {28124, 0, 0}}; 2455 2456alignas(kMaxAlignment) constexpr uint16_t 2457 kDefaultCompoundTypeCdf[kMaxBlockSizes] 2458 [kNumExplicitCompoundPredictionTypes + 1] = { 2459 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 2460 {16384, 0, 0}, {9337, 0, 0}, {19597, 0, 0}, 2461 {20948, 0, 0}, {16384, 0, 0}, {21298, 0, 0}, 2462 {22998, 0, 0}, {23668, 0, 0}, {16384, 0, 0}, 2463 {25067, 0, 0}, {24535, 0, 0}, {26596, 0, 0}, 2464 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 2465 {16384, 0, 0}, {16384, 0, 0}, {16384, 0, 0}, 2466 {16384, 0, 0}}; 2467 2468alignas(kMaxAlignment) constexpr uint16_t kDefaultInterpolationFilterCdf 2469 [kInterpolationFilterContexts][kNumExplicitInterpolationFilters + 1] = { 2470 {833, 48, 0, 0}, {27200, 49, 0, 0}, {32346, 29830, 0, 0}, 2471 {4524, 160, 0, 0}, {1562, 815, 0, 0}, {27906, 647, 0, 0}, 2472 {31998, 31616, 0, 0}, {11879, 7131, 0, 0}, {858, 44, 0, 0}, 2473 {28648, 56, 0, 0}, {32463, 30521, 0, 0}, {5365, 132, 0, 0}, 2474 {1746, 759, 0, 0}, {29805, 675, 0, 0}, {32167, 31825, 0, 0}, 2475 {17799, 11370, 0, 0}}; 2476 2477alignas(kMaxAlignment) constexpr uint16_t 2478 kDefaultMvJointCdf[kNumMvJointTypes + 1] = {28672, 21504, 13440, 0, 0}; 2479 2480alignas(kMaxAlignment) constexpr uint16_t 2481 kDefaultMvSignCdf[kBooleanFieldCdfSize] = {16384, 0, 0}; 2482 2483alignas(kMaxAlignment) constexpr uint16_t 2484 kDefaultMvClassCdf[kMvClassSymbolCount + 1] = { 2485 4096, 1792, 910, 448, 217, 112, 28, 11, 6, 1, 0}; 2486 2487alignas(kMaxAlignment) constexpr uint16_t 2488 kDefaultMvClass0BitCdf[kBooleanFieldCdfSize] = {5120, 0, 0}; 2489 2490alignas(kMaxAlignment) constexpr uint16_t 2491 kDefaultMvClass0FractionCdf[kBooleanSymbolCount][kMvFractionSymbolCount + 2492 1] = { 2493 {16384, 8192, 6144, 0, 0}, {20480, 11520, 8640, 0, 0}}; 2494 2495alignas(kMaxAlignment) constexpr uint16_t 2496 kDefaultMvClass0HighPrecisionCdf[kBooleanFieldCdfSize] = {12288, 0, 0}; 2497 2498alignas(kMaxAlignment) constexpr uint16_t 2499 kDefaultMvBitCdf[kMvBitSymbolCount][kBooleanFieldCdfSize] = { 2500 {15360, 0, 0}, {14848, 0, 0}, {13824, 0, 0}, {12288, 0, 0}, 2501 {10240, 0, 0}, {8192, 0, 0}, {4096, 0, 0}, {2816, 0, 0}, 2502 {2816, 0, 0}, {2048, 0, 0}}; 2503 2504alignas(kMaxAlignment) constexpr uint16_t 2505 kDefaultMvFractionCdf[kMvFractionSymbolCount + 1] = {24576, 15360, 11520, 0, 2506 0}; 2507 2508alignas(kMaxAlignment) constexpr uint16_t 2509 kDefaultMvHighPrecisionCdf[kBooleanFieldCdfSize] = {16384, 0, 0}; 2510