1 2std::map<uint64_t, uint32_t> GetOpcodeAndNumOperandsHist() { 3 return std::map<uint64_t, uint32_t>({ 4 { CombineOpcodeAndNumOperands(SpvOpExtInst, 7), 158282 }, 5 { CombineOpcodeAndNumOperands(SpvOpDot, 4), 151035 }, 6 { CombineOpcodeAndNumOperands(SpvOpVectorShuffle, 6), 183292 }, 7 { CombineOpcodeAndNumOperands(SpvOpImageSampleImplicitLod, 4), 126492 }, 8 { CombineOpcodeAndNumOperands(SpvOpExecutionMode, 2), 13311 }, 9 { CombineOpcodeAndNumOperands(SpvOpFNegate, 3), 29952 }, 10 { CombineOpcodeAndNumOperands(SpvOpExtInst, 5), 106847 }, 11 { CombineOpcodeAndNumOperands(SpvOpImageSampleExplicitLod, 7), 26350 }, 12 { CombineOpcodeAndNumOperands(SpvOpImageSampleExplicitLod, 6), 28186 }, 13 { CombineOpcodeAndNumOperands(SpvOpFDiv, 4), 41635 }, 14 { CombineOpcodeAndNumOperands(SpvOpFMul, 4), 412786 }, 15 { CombineOpcodeAndNumOperands(SpvOpFunction, 4), 62905 }, 16 { CombineOpcodeAndNumOperands(SpvOpVectorShuffle, 8), 118614 }, 17 { CombineOpcodeAndNumOperands(SpvOpDecorate, 2), 100735 }, 18 { CombineOpcodeAndNumOperands(SpvOpReturnValue, 1), 40852 }, 19 { CombineOpcodeAndNumOperands(SpvOpVectorTimesScalar, 4), 157091 }, 20 { CombineOpcodeAndNumOperands(SpvOpExtInst, 6), 122100 }, 21 { CombineOpcodeAndNumOperands(SpvOpAccessChain, 5), 82930 }, 22 { CombineOpcodeAndNumOperands(SpvOpFSub, 4), 161019 }, 23 { CombineOpcodeAndNumOperands(SpvOpConstant, 3), 466014 }, 24 { CombineOpcodeAndNumOperands(SpvOpCompositeExtract, 5), 107126 }, 25 { CombineOpcodeAndNumOperands(SpvOpTypeImage, 8), 34775 }, 26 { CombineOpcodeAndNumOperands(SpvOpImageSampleDrefExplicitLod, 7), 26146 }, 27 { CombineOpcodeAndNumOperands(SpvOpMemoryModel, 2), 18879 }, 28 { CombineOpcodeAndNumOperands(SpvOpDecorate, 3), 485251 }, 29 { CombineOpcodeAndNumOperands(SpvOpCompositeConstruct, 4), 78011 }, 30 { CombineOpcodeAndNumOperands(SpvOpTypeFloat, 2), 18879 }, 31 { CombineOpcodeAndNumOperands(SpvOpVectorTimesMatrix, 4), 15848 }, 32 { CombineOpcodeAndNumOperands(SpvOpTypeVector, 3), 69404 }, 33 { CombineOpcodeAndNumOperands(SpvOpTypeFunction, 3), 19998 }, 34 { CombineOpcodeAndNumOperands(SpvOpConstantComposite, 6), 40228 }, 35 { CombineOpcodeAndNumOperands(SpvOpCapability, 1), 22510 }, 36 { CombineOpcodeAndNumOperands(SpvOpTypeArray, 3), 37585 }, 37 { CombineOpcodeAndNumOperands(SpvOpTypeInt, 3), 30454 }, 38 { CombineOpcodeAndNumOperands(SpvOpFunctionCall, 4), 29021 }, 39 { CombineOpcodeAndNumOperands(SpvOpFAdd, 4), 342237 }, 40 { CombineOpcodeAndNumOperands(SpvOpTypeMatrix, 3), 24449 }, 41 { CombineOpcodeAndNumOperands(SpvOpLabel, 1), 129408 }, 42 { CombineOpcodeAndNumOperands(SpvOpTypePointer, 3), 246535 }, 43 { CombineOpcodeAndNumOperands(SpvOpAccessChain, 4), 503456 }, 44 { CombineOpcodeAndNumOperands(SpvOpTypeFunction, 2), 19779 }, 45 { CombineOpcodeAndNumOperands(SpvOpBranchConditional, 3), 24139 }, 46 { CombineOpcodeAndNumOperands(SpvOpVariable, 3), 697946 }, 47 { CombineOpcodeAndNumOperands(SpvOpConstantComposite, 5), 55769 }, 48 { CombineOpcodeAndNumOperands(SpvOpTypeVoid, 1), 18879 }, 49 { CombineOpcodeAndNumOperands(SpvOpCompositeConstruct, 6), 145508 }, 50 { CombineOpcodeAndNumOperands(SpvOpFunctionParameter, 2), 85583 }, 51 { CombineOpcodeAndNumOperands(SpvOpTypeSampledImage, 2), 34775 }, 52 { CombineOpcodeAndNumOperands(SpvOpConstantComposite, 4), 66362 }, 53 { CombineOpcodeAndNumOperands(SpvOpLoad, 3), 1272902 }, 54 { CombineOpcodeAndNumOperands(SpvOpReturn, 0), 22122 }, 55 { CombineOpcodeAndNumOperands(SpvOpCompositeExtract, 4), 861008 }, 56 { CombineOpcodeAndNumOperands(SpvOpFunctionEnd, 0), 62905 }, 57 { CombineOpcodeAndNumOperands(SpvOpExtInstImport, 2), 18879 }, 58 { CombineOpcodeAndNumOperands(SpvOpSelectionMerge, 2), 22009 }, 59 { CombineOpcodeAndNumOperands(SpvOpBranch, 1), 38275 }, 60 { CombineOpcodeAndNumOperands(SpvOpTypeBool, 1), 12208 }, 61 { CombineOpcodeAndNumOperands(SpvOpSampledImage, 4), 95518 }, 62 { CombineOpcodeAndNumOperands(SpvOpMemberDecorate, 3), 94887 }, 63 { CombineOpcodeAndNumOperands(SpvOpMemberDecorate, 4), 1942215 }, 64 { CombineOpcodeAndNumOperands(SpvOpCompositeConstruct, 5), 205266 }, 65 { CombineOpcodeAndNumOperands(SpvOpUndef, 2), 22157 }, 66 { CombineOpcodeAndNumOperands(SpvOpCompositeInsert, 5), 142749 }, 67 { CombineOpcodeAndNumOperands(SpvOpCompositeInsert, 6), 24420 }, 68 { CombineOpcodeAndNumOperands(SpvOpCompositeExtract, 6), 16896 }, 69 { CombineOpcodeAndNumOperands(SpvOpStore, 2), 604982 }, 70 { CombineOpcodeAndNumOperands(SpvOpIAdd, 4), 14471 }, 71 { CombineOpcodeAndNumOperands(SpvOpVectorShuffle, 7), 269658 }, 72 { kMarkvNoneOfTheAbove, 399895 }, 73 }); 74} 75 76std::map<uint32_t, std::unique_ptr<HuffmanCodec<uint64_t>>> 77GetOpcodeAndNumOperandsMarkovHuffmanCodecs() { 78 std::map<uint32_t, std::unique_ptr<HuffmanCodec<uint64_t>>> codecs; 79 { 80 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(35, { 81 {0, 0, 0}, 82 {65790, 0, 0}, 83 {131134, 0, 0}, 84 {196669, 0, 0}, 85 {262209, 0, 0}, 86 {262221, 0, 0}, 87 {262225, 0, 0}, 88 {262230, 0, 0}, 89 {262273, 0, 0}, 90 {262277, 0, 0}, 91 {262286, 0, 0}, 92 {327745, 0, 0}, 93 {327761, 0, 0}, 94 {327762, 0, 0}, 95 {393295, 0, 0}, 96 {393304, 0, 0}, 97 {458831, 0, 0}, 98 {458840, 0, 0}, 99 {1111111111111111111, 0, 0}, 100 {0, 11, 8}, 101 {0, 12, 19}, 102 {0, 18, 20}, 103 {0, 5, 21}, 104 {0, 15, 7}, 105 {0, 10, 1}, 106 {0, 23, 22}, 107 {0, 14, 24}, 108 {0, 6, 4}, 109 {0, 2, 17}, 110 {0, 13, 25}, 111 {0, 9, 26}, 112 {0, 28, 27}, 113 {0, 3, 29}, 114 {0, 30, 16}, 115 {0, 32, 31}, 116 {0, 34, 33}, 117 })); 118 119 codecs.emplace(SpvOpImageSampleExplicitLod, std::move(codec)); 120 } 121 122 { 123 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(55, { 124 {0, 0, 0}, 125 {65785, 0, 0}, 126 {65790, 0, 0}, 127 {131134, 0, 0}, 128 {196669, 0, 0}, 129 {196735, 0, 0}, 130 {262201, 0, 0}, 131 {262209, 0, 0}, 132 {262224, 0, 0}, 133 {262225, 0, 0}, 134 {262231, 0, 0}, 135 {262273, 0, 0}, 136 {262275, 0, 0}, 137 {262277, 0, 0}, 138 {262280, 0, 0}, 139 {262286, 0, 0}, 140 {327692, 0, 0}, 141 {327745, 0, 0}, 142 {327760, 0, 0}, 143 {327762, 0, 0}, 144 {393228, 0, 0}, 145 {393295, 0, 0}, 146 {393296, 0, 0}, 147 {393303, 0, 0}, 148 {393304, 0, 0}, 149 {458764, 0, 0}, 150 {458831, 0, 0}, 151 {524367, 0, 0}, 152 {1111111111111111111, 0, 0}, 153 {0, 14, 5}, 154 {0, 29, 17}, 155 {0, 1, 30}, 156 {0, 10, 20}, 157 {0, 32, 31}, 158 {0, 33, 2}, 159 {0, 34, 23}, 160 {0, 8, 35}, 161 {0, 6, 36}, 162 {0, 19, 22}, 163 {0, 28, 25}, 164 {0, 38, 37}, 165 {0, 13, 39}, 166 {0, 40, 24}, 167 {0, 27, 21}, 168 {0, 26, 41}, 169 {0, 42, 12}, 170 {0, 15, 43}, 171 {0, 44, 18}, 172 {0, 45, 3}, 173 {0, 11, 7}, 174 {0, 16, 46}, 175 {0, 47, 9}, 176 {0, 4, 48}, 177 {0, 50, 49}, 178 {0, 52, 51}, 179 {0, 54, 53}, 180 })); 181 182 codecs.emplace(SpvOpFDiv, std::move(codec)); 183 } 184 185 { 186 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(19, { 187 {0, 0, 0}, 188 {196669, 0, 0}, 189 {262209, 0, 0}, 190 {262224, 0, 0}, 191 {262225, 0, 0}, 192 {262231, 0, 0}, 193 {262286, 0, 0}, 194 {393295, 0, 0}, 195 {393304, 0, 0}, 196 {458840, 0, 0}, 197 {1111111111111111111, 0, 0}, 198 {0, 8, 10}, 199 {0, 11, 3}, 200 {0, 2, 9}, 201 {0, 4, 1}, 202 {0, 5, 6}, 203 {0, 13, 12}, 204 {0, 15, 14}, 205 {0, 16, 7}, 206 {0, 18, 17}, 207 })); 208 209 codecs.emplace(SpvOpSampledImage, std::move(codec)); 210 } 211 212 { 213 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(67, { 214 {0, 0, 0}, 215 {65785, 0, 0}, 216 {65790, 0, 0}, 217 {131134, 0, 0}, 218 {131319, 0, 0}, 219 {196669, 0, 0}, 220 {196735, 0, 0}, 221 {262209, 0, 0}, 222 {262224, 0, 0}, 223 {262225, 0, 0}, 224 {262231, 0, 0}, 225 {262272, 0, 0}, 226 {262273, 0, 0}, 227 {262275, 0, 0}, 228 {262277, 0, 0}, 229 {262280, 0, 0}, 230 {262285, 0, 0}, 231 {262286, 0, 0}, 232 {262292, 0, 0}, 233 {327692, 0, 0}, 234 {327745, 0, 0}, 235 {327760, 0, 0}, 236 {327761, 0, 0}, 237 {327762, 0, 0}, 238 {393228, 0, 0}, 239 {393281, 0, 0}, 240 {393295, 0, 0}, 241 {393296, 0, 0}, 242 {393297, 0, 0}, 243 {393298, 0, 0}, 244 {393304, 0, 0}, 245 {458764, 0, 0}, 246 {458831, 0, 0}, 247 {524367, 0, 0}, 248 {1111111111111111111, 0, 0}, 249 {0, 4, 10}, 250 {0, 30, 35}, 251 {0, 1, 36}, 252 {0, 11, 37}, 253 {0, 38, 6}, 254 {0, 16, 39}, 255 {0, 15, 40}, 256 {0, 25, 2}, 257 {0, 41, 20}, 258 {0, 26, 19}, 259 {0, 42, 29}, 260 {0, 28, 22}, 261 {0, 23, 34}, 262 {0, 44, 43}, 263 {0, 17, 45}, 264 {0, 24, 27}, 265 {0, 18, 33}, 266 {0, 47, 46}, 267 {0, 8, 48}, 268 {0, 50, 49}, 269 {0, 32, 51}, 270 {0, 31, 52}, 271 {0, 53, 21}, 272 {0, 54, 13}, 273 {0, 3, 55}, 274 {0, 7, 14}, 275 {0, 57, 56}, 276 {0, 58, 5}, 277 {0, 59, 9}, 278 {0, 61, 60}, 279 {0, 63, 62}, 280 {0, 64, 12}, 281 {0, 66, 65}, 282 })); 283 284 codecs.emplace(SpvOpFMul, std::move(codec)); 285 } 286 287 { 288 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(79, { 289 {0, 0, 0}, 290 {65785, 0, 0}, 291 {65790, 0, 0}, 292 {131134, 0, 0}, 293 {196669, 0, 0}, 294 {196735, 0, 0}, 295 {262201, 0, 0}, 296 {262209, 0, 0}, 297 {262224, 0, 0}, 298 {262225, 0, 0}, 299 {262230, 0, 0}, 300 {262231, 0, 0}, 301 {262272, 0, 0}, 302 {262273, 0, 0}, 303 {262275, 0, 0}, 304 {262277, 0, 0}, 305 {262280, 0, 0}, 306 {262286, 0, 0}, 307 {262288, 0, 0}, 308 {262292, 0, 0}, 309 {262328, 0, 0}, 310 {262334, 0, 0}, 311 {327692, 0, 0}, 312 {327737, 0, 0}, 313 {327745, 0, 0}, 314 {327760, 0, 0}, 315 {327761, 0, 0}, 316 {327762, 0, 0}, 317 {393228, 0, 0}, 318 {393281, 0, 0}, 319 {393295, 0, 0}, 320 {393296, 0, 0}, 321 {393297, 0, 0}, 322 {393303, 0, 0}, 323 {393304, 0, 0}, 324 {458764, 0, 0}, 325 {458831, 0, 0}, 326 {458840, 0, 0}, 327 {524345, 0, 0}, 328 {524367, 0, 0}, 329 {1111111111111111111, 0, 0}, 330 {0, 38, 33}, 331 {0, 18, 41}, 332 {0, 42, 23}, 333 {0, 43, 6}, 334 {0, 34, 44}, 335 {0, 1, 45}, 336 {0, 31, 14}, 337 {0, 47, 46}, 338 {0, 48, 2}, 339 {0, 12, 21}, 340 {0, 49, 30}, 341 {0, 37, 50}, 342 {0, 51, 20}, 343 {0, 5, 24}, 344 {0, 40, 16}, 345 {0, 29, 13}, 346 {0, 26, 52}, 347 {0, 53, 17}, 348 {0, 36, 54}, 349 {0, 55, 28}, 350 {0, 57, 56}, 351 {0, 19, 25}, 352 {0, 39, 8}, 353 {0, 32, 58}, 354 {0, 59, 27}, 355 {0, 22, 10}, 356 {0, 35, 60}, 357 {0, 62, 61}, 358 {0, 63, 7}, 359 {0, 65, 64}, 360 {0, 4, 66}, 361 {0, 68, 67}, 362 {0, 11, 3}, 363 {0, 15, 69}, 364 {0, 9, 70}, 365 {0, 72, 71}, 366 {0, 74, 73}, 367 {0, 76, 75}, 368 {0, 78, 77}, 369 })); 370 371 codecs.emplace(SpvOpFAdd, std::move(codec)); 372 } 373 374 { 375 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(55, { 376 {0, 0, 0}, 377 {65556, 0, 0}, 378 {65562, 0, 0}, 379 {131073, 0, 0}, 380 {131094, 0, 0}, 381 {131105, 0, 0}, 382 {196629, 0, 0}, 383 {196631, 0, 0}, 384 {196632, 0, 0}, 385 {196636, 0, 0}, 386 {196640, 0, 0}, 387 {196641, 0, 0}, 388 {196651, 0, 0}, 389 {196667, 0, 0}, 390 {262177, 0, 0}, 391 {262188, 0, 0}, 392 {262198, 0, 0}, 393 {327713, 0, 0}, 394 {327724, 0, 0}, 395 {393249, 0, 0}, 396 {393260, 0, 0}, 397 {458785, 0, 0}, 398 {524313, 0, 0}, 399 {524321, 0, 0}, 400 {589857, 0, 0}, 401 {655393, 0, 0}, 402 {720929, 0, 0}, 403 {852001, 0, 0}, 404 {1111111111111111111, 0, 0}, 405 {0, 26, 24}, 406 {0, 29, 27}, 407 {0, 4, 30}, 408 {0, 21, 9}, 409 {0, 31, 20}, 410 {0, 33, 32}, 411 {0, 34, 3}, 412 {0, 8, 35}, 413 {0, 36, 5}, 414 {0, 23, 16}, 415 {0, 38, 37}, 416 {0, 25, 2}, 417 {0, 39, 1}, 418 {0, 17, 40}, 419 {0, 41, 15}, 420 {0, 18, 42}, 421 {0, 43, 6}, 422 {0, 44, 14}, 423 {0, 28, 19}, 424 {0, 7, 45}, 425 {0, 46, 22}, 426 {0, 48, 47}, 427 {0, 49, 11}, 428 {0, 51, 50}, 429 {0, 12, 10}, 430 {0, 53, 52}, 431 {0, 13, 54}, 432 })); 433 434 codecs.emplace(SpvOpTypePointer, std::move(codec)); 435 } 436 437 { 438 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(57, { 439 {0, 0, 0}, 440 {65785, 0, 0}, 441 {65790, 0, 0}, 442 {131134, 0, 0}, 443 {196669, 0, 0}, 444 {196735, 0, 0}, 445 {262209, 0, 0}, 446 {262224, 0, 0}, 447 {262225, 0, 0}, 448 {262272, 0, 0}, 449 {262273, 0, 0}, 450 {262275, 0, 0}, 451 {262277, 0, 0}, 452 {262280, 0, 0}, 453 {262286, 0, 0}, 454 {262292, 0, 0}, 455 {262328, 0, 0}, 456 {327692, 0, 0}, 457 {327745, 0, 0}, 458 {327760, 0, 0}, 459 {327761, 0, 0}, 460 {327762, 0, 0}, 461 {393228, 0, 0}, 462 {393273, 0, 0}, 463 {393295, 0, 0}, 464 {393296, 0, 0}, 465 {458764, 0, 0}, 466 {458831, 0, 0}, 467 {524367, 0, 0}, 468 {1111111111111111111, 0, 0}, 469 {0, 9, 23}, 470 {0, 1, 30}, 471 {0, 5, 31}, 472 {0, 32, 28}, 473 {0, 33, 25}, 474 {0, 34, 29}, 475 {0, 18, 24}, 476 {0, 27, 16}, 477 {0, 7, 13}, 478 {0, 14, 35}, 479 {0, 20, 10}, 480 {0, 36, 21}, 481 {0, 2, 37}, 482 {0, 38, 3}, 483 {0, 39, 22}, 484 {0, 40, 19}, 485 {0, 41, 11}, 486 {0, 6, 4}, 487 {0, 12, 42}, 488 {0, 43, 8}, 489 {0, 15, 26}, 490 {0, 45, 44}, 491 {0, 47, 46}, 492 {0, 48, 17}, 493 {0, 50, 49}, 494 {0, 52, 51}, 495 {0, 54, 53}, 496 {0, 56, 55}, 497 })); 498 499 codecs.emplace(SpvOpFSub, std::move(codec)); 500 } 501 502 { 503 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(13, { 504 {0, 0, 0}, 505 {65785, 0, 0}, 506 {131134, 0, 0}, 507 {196719, 0, 0}, 508 {262209, 0, 0}, 509 {262276, 0, 0}, 510 {327745, 0, 0}, 511 {1111111111111111111, 0, 0}, 512 {0, 7, 4}, 513 {0, 2, 8}, 514 {0, 1, 9}, 515 {0, 5, 10}, 516 {0, 3, 6}, 517 {0, 12, 11}, 518 })); 519 520 codecs.emplace(SpvOpIAdd, std::move(codec)); 521 } 522 523 { 524 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(83, { 525 {0, 0, 0}, 526 {65785, 0, 0}, 527 {65790, 0, 0}, 528 {131134, 0, 0}, 529 {131319, 0, 0}, 530 {196669, 0, 0}, 531 {196732, 0, 0}, 532 {196735, 0, 0}, 533 {262209, 0, 0}, 534 {262221, 0, 0}, 535 {262224, 0, 0}, 536 {262225, 0, 0}, 537 {262230, 0, 0}, 538 {262231, 0, 0}, 539 {262273, 0, 0}, 540 {262275, 0, 0}, 541 {262277, 0, 0}, 542 {262280, 0, 0}, 543 {262286, 0, 0}, 544 {262288, 0, 0}, 545 {262292, 0, 0}, 546 {262328, 0, 0}, 547 {262334, 0, 0}, 548 {262340, 0, 0}, 549 {327692, 0, 0}, 550 {327737, 0, 0}, 551 {327745, 0, 0}, 552 {327760, 0, 0}, 553 {327761, 0, 0}, 554 {327762, 0, 0}, 555 {393228, 0, 0}, 556 {393273, 0, 0}, 557 {393295, 0, 0}, 558 {393296, 0, 0}, 559 {393297, 0, 0}, 560 {393298, 0, 0}, 561 {393304, 0, 0}, 562 {458764, 0, 0}, 563 {458831, 0, 0}, 564 {458840, 0, 0}, 565 {458842, 0, 0}, 566 {524367, 0, 0}, 567 {1111111111111111111, 0, 0}, 568 {0, 25, 2}, 569 {0, 31, 43}, 570 {0, 4, 44}, 571 {0, 26, 45}, 572 {0, 39, 46}, 573 {0, 34, 36}, 574 {0, 19, 47}, 575 {0, 6, 48}, 576 {0, 35, 9}, 577 {0, 12, 29}, 578 {0, 21, 49}, 579 {0, 22, 13}, 580 {0, 17, 50}, 581 {0, 23, 51}, 582 {0, 52, 7}, 583 {0, 37, 1}, 584 {0, 53, 3}, 585 {0, 54, 24}, 586 {0, 56, 55}, 587 {0, 32, 57}, 588 {0, 59, 58}, 589 {0, 42, 10}, 590 {0, 60, 8}, 591 {0, 5, 41}, 592 {0, 61, 20}, 593 {0, 62, 38}, 594 {0, 64, 63}, 595 {0, 40, 65}, 596 {0, 66, 18}, 597 {0, 15, 28}, 598 {0, 14, 67}, 599 {0, 68, 30}, 600 {0, 70, 69}, 601 {0, 72, 71}, 602 {0, 73, 27}, 603 {0, 16, 74}, 604 {0, 75, 33}, 605 {0, 77, 76}, 606 {0, 79, 78}, 607 {0, 81, 80}, 608 {0, 82, 11}, 609 })); 610 611 codecs.emplace(SpvOpCompositeExtract, std::move(codec)); 612 } 613 614 { 615 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(29, { 616 {0, 0, 0}, 617 {65790, 0, 0}, 618 {131134, 0, 0}, 619 {196669, 0, 0}, 620 {262209, 0, 0}, 621 {262225, 0, 0}, 622 {262273, 0, 0}, 623 {262288, 0, 0}, 624 {262292, 0, 0}, 625 {327692, 0, 0}, 626 {327761, 0, 0}, 627 {327762, 0, 0}, 628 {393295, 0, 0}, 629 {458831, 0, 0}, 630 {524367, 0, 0}, 631 {1111111111111111111, 0, 0}, 632 {0, 10, 6}, 633 {0, 16, 13}, 634 {0, 7, 17}, 635 {0, 15, 18}, 636 {0, 19, 12}, 637 {0, 20, 14}, 638 {0, 1, 4}, 639 {0, 22, 21}, 640 {0, 11, 8}, 641 {0, 2, 5}, 642 {0, 9, 23}, 643 {0, 3, 24}, 644 {0, 26, 25}, 645 {0, 28, 27}, 646 })); 647 648 codecs.emplace(SpvOpVectorTimesMatrix, std::move(codec)); 649 } 650 651 { 652 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 653 {0, 0, 0}, 654 {65784, 0, 0}, 655 {1111111111111111111, 0, 0}, 656 {0, 1, 2}, 657 })); 658 659 codecs.emplace(SpvOpBranch, std::move(codec)); 660 } 661 662 { 663 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 664 {0, 0, 0}, 665 {262198, 0, 0}, 666 {1111111111111111111, 0, 0}, 667 {0, 1, 2}, 668 })); 669 670 codecs.emplace(SpvOpFunctionEnd, std::move(codec)); 671 } 672 673 { 674 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 675 {0, 0, 0}, 676 {65784, 0, 0}, 677 {1111111111111111111, 0, 0}, 678 {0, 1, 2}, 679 })); 680 681 codecs.emplace(SpvOpBranchConditional, std::move(codec)); 682 } 683 684 { 685 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(53, { 686 {0, 0, 0}, 687 {65785, 0, 0}, 688 {65790, 0, 0}, 689 {131134, 0, 0}, 690 {131319, 0, 0}, 691 {196665, 0, 0}, 692 {196669, 0, 0}, 693 {196735, 0, 0}, 694 {262201, 0, 0}, 695 {262209, 0, 0}, 696 {262224, 0, 0}, 697 {262225, 0, 0}, 698 {262231, 0, 0}, 699 {262273, 0, 0}, 700 {262275, 0, 0}, 701 {262277, 0, 0}, 702 {262280, 0, 0}, 703 {262286, 0, 0}, 704 {262288, 0, 0}, 705 {262292, 0, 0}, 706 {327692, 0, 0}, 707 {327745, 0, 0}, 708 {327760, 0, 0}, 709 {393228, 0, 0}, 710 {393295, 0, 0}, 711 {458764, 0, 0}, 712 {458831, 0, 0}, 713 {1111111111111111111, 0, 0}, 714 {0, 25, 16}, 715 {0, 21, 28}, 716 {0, 18, 23}, 717 {0, 4, 29}, 718 {0, 10, 5}, 719 {0, 1, 30}, 720 {0, 32, 31}, 721 {0, 22, 33}, 722 {0, 34, 8}, 723 {0, 35, 15}, 724 {0, 13, 36}, 725 {0, 26, 17}, 726 {0, 38, 37}, 727 {0, 39, 11}, 728 {0, 40, 14}, 729 {0, 12, 27}, 730 {0, 19, 41}, 731 {0, 24, 42}, 732 {0, 44, 43}, 733 {0, 45, 7}, 734 {0, 20, 46}, 735 {0, 9, 47}, 736 {0, 48, 2}, 737 {0, 50, 49}, 738 {0, 6, 3}, 739 {0, 52, 51}, 740 })); 741 742 codecs.emplace(SpvOpFunctionCall, std::move(codec)); 743 } 744 745 { 746 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(71, { 747 {0, 0, 0}, 748 {65556, 0, 0}, 749 {65562, 0, 0}, 750 {131073, 0, 0}, 751 {131094, 0, 0}, 752 {131099, 0, 0}, 753 {131134, 0, 0}, 754 {196629, 0, 0}, 755 {196631, 0, 0}, 756 {196632, 0, 0}, 757 {196636, 0, 0}, 758 {196640, 0, 0}, 759 {196651, 0, 0}, 760 {196665, 0, 0}, 761 {196667, 0, 0}, 762 {196669, 0, 0}, 763 {262188, 0, 0}, 764 {262198, 0, 0}, 765 {262201, 0, 0}, 766 {262209, 0, 0}, 767 {262225, 0, 0}, 768 {262275, 0, 0}, 769 {262280, 0, 0}, 770 {262292, 0, 0}, 771 {327692, 0, 0}, 772 {327724, 0, 0}, 773 {327737, 0, 0}, 774 {327745, 0, 0}, 775 {393228, 0, 0}, 776 {393260, 0, 0}, 777 {393273, 0, 0}, 778 {393295, 0, 0}, 779 {393296, 0, 0}, 780 {458831, 0, 0}, 781 {524313, 0, 0}, 782 {524367, 0, 0}, 783 {1111111111111111111, 0, 0}, 784 {0, 22, 4}, 785 {0, 32, 23}, 786 {0, 37, 30}, 787 {0, 21, 38}, 788 {0, 39, 31}, 789 {0, 41, 40}, 790 {0, 13, 42}, 791 {0, 43, 26}, 792 {0, 10, 44}, 793 {0, 28, 45}, 794 {0, 35, 18}, 795 {0, 20, 46}, 796 {0, 33, 47}, 797 {0, 24, 48}, 798 {0, 6, 49}, 799 {0, 3, 50}, 800 {0, 16, 51}, 801 {0, 27, 52}, 802 {0, 53, 1}, 803 {0, 9, 17}, 804 {0, 29, 54}, 805 {0, 19, 2}, 806 {0, 8, 36}, 807 {0, 55, 34}, 808 {0, 25, 56}, 809 {0, 7, 57}, 810 {0, 5, 58}, 811 {0, 60, 59}, 812 {0, 61, 15}, 813 {0, 63, 62}, 814 {0, 65, 64}, 815 {0, 66, 11}, 816 {0, 12, 67}, 817 {0, 69, 68}, 818 {0, 14, 70}, 819 })); 820 821 codecs.emplace(SpvOpVariable, std::move(codec)); 822 } 823 824 { 825 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 826 {0, 0, 0}, 827 {131134, 0, 0}, 828 {196669, 0, 0}, 829 {1111111111111111111, 0, 0}, 830 {0, 1, 3}, 831 {0, 2, 4}, 832 })); 833 834 codecs.emplace(SpvOpAccessChain, std::move(codec)); 835 } 836 837 { 838 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(73, { 839 {0, 0, 0}, 840 {252, 0, 0}, 841 {253, 0, 0}, 842 {65785, 0, 0}, 843 {65790, 0, 0}, 844 {131073, 0, 0}, 845 {131134, 0, 0}, 846 {131319, 0, 0}, 847 {196665, 0, 0}, 848 {196667, 0, 0}, 849 {196669, 0, 0}, 850 {196735, 0, 0}, 851 {196854, 0, 0}, 852 {262201, 0, 0}, 853 {262209, 0, 0}, 854 {262221, 0, 0}, 855 {262225, 0, 0}, 856 {262272, 0, 0}, 857 {262273, 0, 0}, 858 {262275, 0, 0}, 859 {262276, 0, 0}, 860 {262277, 0, 0}, 861 {262280, 0, 0}, 862 {262286, 0, 0}, 863 {262292, 0, 0}, 864 {262321, 0, 0}, 865 {327692, 0, 0}, 866 {327745, 0, 0}, 867 {327761, 0, 0}, 868 {327762, 0, 0}, 869 {393228, 0, 0}, 870 {393295, 0, 0}, 871 {393296, 0, 0}, 872 {393298, 0, 0}, 873 {393461, 0, 0}, 874 {458831, 0, 0}, 875 {524367, 0, 0}, 876 {1111111111111111111, 0, 0}, 877 {0, 28, 5}, 878 {0, 30, 8}, 879 {0, 13, 38}, 880 {0, 40, 39}, 881 {0, 41, 26}, 882 {0, 42, 19}, 883 {0, 43, 29}, 884 {0, 23, 44}, 885 {0, 36, 32}, 886 {0, 45, 22}, 887 {0, 2, 46}, 888 {0, 21, 20}, 889 {0, 48, 47}, 890 {0, 33, 49}, 891 {0, 4, 50}, 892 {0, 51, 24}, 893 {0, 18, 11}, 894 {0, 52, 12}, 895 {0, 25, 15}, 896 {0, 53, 17}, 897 {0, 37, 54}, 898 {0, 55, 35}, 899 {0, 7, 27}, 900 {0, 57, 56}, 901 {0, 58, 31}, 902 {0, 6, 59}, 903 {0, 1, 60}, 904 {0, 62, 61}, 905 {0, 63, 14}, 906 {0, 3, 16}, 907 {0, 34, 64}, 908 {0, 66, 65}, 909 {0, 68, 67}, 910 {0, 70, 69}, 911 {0, 10, 9}, 912 {0, 72, 71}, 913 })); 914 915 codecs.emplace(SpvOpLabel, std::move(codec)); 916 } 917 918 { 919 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 920 {0, 0, 0}, 921 {56, 0, 0}, 922 {65784, 0, 0}, 923 {1111111111111111111, 0, 0}, 924 {0, 3, 2}, 925 {0, 1, 4}, 926 })); 927 928 codecs.emplace(SpvOpReturn, std::move(codec)); 929 } 930 931 { 932 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 933 {0, 0, 0}, 934 {65784, 0, 0}, 935 {131127, 0, 0}, 936 {1111111111111111111, 0, 0}, 937 {0, 1, 3}, 938 {0, 2, 4}, 939 })); 940 941 codecs.emplace(SpvOpFunction, std::move(codec)); 942 } 943 944 { 945 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(31, { 946 {0, 0, 0}, 947 {65556, 0, 0}, 948 {196629, 0, 0}, 949 {196631, 0, 0}, 950 {196632, 0, 0}, 951 {196636, 0, 0}, 952 {196640, 0, 0}, 953 {196641, 0, 0}, 954 {196651, 0, 0}, 955 {196667, 0, 0}, 956 {262177, 0, 0}, 957 {262188, 0, 0}, 958 {262198, 0, 0}, 959 {327713, 0, 0}, 960 {393260, 0, 0}, 961 {524313, 0, 0}, 962 {1111111111111111111, 0, 0}, 963 {0, 12, 1}, 964 {0, 13, 5}, 965 {0, 18, 17}, 966 {0, 7, 19}, 967 {0, 9, 20}, 968 {0, 16, 21}, 969 {0, 15, 10}, 970 {0, 22, 4}, 971 {0, 24, 23}, 972 {0, 25, 14}, 973 {0, 8, 11}, 974 {0, 2, 26}, 975 {0, 28, 27}, 976 {0, 3, 6}, 977 {0, 30, 29}, 978 })); 979 980 codecs.emplace(SpvOpTypeVector, std::move(codec)); 981 } 982 983 { 984 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 985 {0, 0, 0}, 986 {65784, 0, 0}, 987 {131127, 0, 0}, 988 {1111111111111111111, 0, 0}, 989 {0, 2, 3}, 990 {0, 4, 1}, 991 })); 992 993 codecs.emplace(SpvOpFunctionParameter, std::move(codec)); 994 } 995 996 { 997 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 998 {0, 0, 0}, 999 {56, 0, 0}, 1000 {65784, 0, 0}, 1001 {1111111111111111111, 0, 0}, 1002 {0, 3, 2}, 1003 {0, 1, 4}, 1004 })); 1005 1006 codecs.emplace(SpvOpReturnValue, std::move(codec)); 1007 } 1008 1009 { 1010 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 1011 {0, 0, 0}, 1012 {131105, 0, 0}, 1013 {1111111111111111111, 0, 0}, 1014 {0, 1, 2}, 1015 })); 1016 1017 codecs.emplace(SpvOpTypeVoid, std::move(codec)); 1018 } 1019 1020 { 1021 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(89, { 1022 {0, 0, 0}, 1023 {253, 0, 0}, 1024 {65785, 0, 0}, 1025 {65790, 0, 0}, 1026 {131134, 0, 0}, 1027 {131319, 0, 0}, 1028 {196665, 0, 0}, 1029 {196669, 0, 0}, 1030 {196735, 0, 0}, 1031 {262201, 0, 0}, 1032 {262209, 0, 0}, 1033 {262224, 0, 0}, 1034 {262225, 0, 0}, 1035 {262272, 0, 0}, 1036 {262273, 0, 0}, 1037 {262275, 0, 0}, 1038 {262277, 0, 0}, 1039 {262280, 0, 0}, 1040 {262286, 0, 0}, 1041 {262288, 0, 0}, 1042 {262292, 0, 0}, 1043 {327692, 0, 0}, 1044 {327737, 0, 0}, 1045 {327745, 0, 0}, 1046 {327760, 0, 0}, 1047 {327761, 0, 0}, 1048 {327762, 0, 0}, 1049 {393228, 0, 0}, 1050 {393273, 0, 0}, 1051 {393281, 0, 0}, 1052 {393295, 0, 0}, 1053 {393296, 0, 0}, 1054 {458764, 0, 0}, 1055 {458809, 0, 0}, 1056 {458831, 0, 0}, 1057 {524345, 0, 0}, 1058 {524367, 0, 0}, 1059 {589881, 0, 0}, 1060 {655417, 0, 0}, 1061 {720953, 0, 0}, 1062 {786489, 0, 0}, 1063 {852025, 0, 0}, 1064 {917561, 0, 0}, 1065 {983097, 0, 0}, 1066 {1114169, 0, 0}, 1067 {1111111111111111111, 0, 0}, 1068 {0, 40, 32}, 1069 {0, 46, 29}, 1070 {0, 38, 27}, 1071 {0, 20, 47}, 1072 {0, 49, 48}, 1073 {0, 50, 44}, 1074 {0, 51, 43}, 1075 {0, 14, 5}, 1076 {0, 42, 52}, 1077 {0, 13, 19}, 1078 {0, 3, 26}, 1079 {0, 54, 53}, 1080 {0, 56, 55}, 1081 {0, 57, 6}, 1082 {0, 39, 37}, 1083 {0, 15, 58}, 1084 {0, 18, 31}, 1085 {0, 59, 21}, 1086 {0, 60, 17}, 1087 {0, 61, 41}, 1088 {0, 62, 24}, 1089 {0, 34, 63}, 1090 {0, 35, 64}, 1091 {0, 65, 8}, 1092 {0, 66, 36}, 1093 {0, 67, 30}, 1094 {0, 16, 11}, 1095 {0, 69, 68}, 1096 {0, 70, 28}, 1097 {0, 22, 71}, 1098 {0, 33, 72}, 1099 {0, 45, 73}, 1100 {0, 75, 74}, 1101 {0, 77, 76}, 1102 {0, 78, 12}, 1103 {0, 1, 2}, 1104 {0, 9, 79}, 1105 {0, 25, 80}, 1106 {0, 23, 81}, 1107 {0, 4, 82}, 1108 {0, 84, 83}, 1109 {0, 86, 85}, 1110 {0, 7, 10}, 1111 {0, 88, 87}, 1112 })); 1113 1114 codecs.emplace(SpvOpStore, std::move(codec)); 1115 } 1116 1117 { 1118 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(13, { 1119 {0, 0, 0}, 1120 {131075, 0, 0}, 1121 {131088, 0, 0}, 1122 {131143, 0, 0}, 1123 {196624, 0, 0}, 1124 {196679, 0, 0}, 1125 {262216, 0, 0}, 1126 {1111111111111111111, 0, 0}, 1127 {0, 3, 4}, 1128 {0, 1, 8}, 1129 {0, 7, 9}, 1130 {0, 6, 10}, 1131 {0, 5, 11}, 1132 {0, 2, 12}, 1133 })); 1134 1135 codecs.emplace(SpvOpEntryPoint, std::move(codec)); 1136 } 1137 1138 { 1139 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(97, { 1140 {0, 0, 0}, 1141 {65785, 0, 0}, 1142 {65790, 0, 0}, 1143 {131134, 0, 0}, 1144 {131319, 0, 0}, 1145 {196665, 0, 0}, 1146 {196669, 0, 0}, 1147 {196732, 0, 0}, 1148 {196735, 0, 0}, 1149 {262201, 0, 0}, 1150 {262209, 0, 0}, 1151 {262224, 0, 0}, 1152 {262225, 0, 0}, 1153 {262230, 0, 0}, 1154 {262231, 0, 0}, 1155 {262272, 0, 0}, 1156 {262273, 0, 0}, 1157 {262275, 0, 0}, 1158 {262276, 0, 0}, 1159 {262277, 0, 0}, 1160 {262280, 0, 0}, 1161 {262286, 0, 0}, 1162 {262288, 0, 0}, 1163 {262292, 0, 0}, 1164 {262326, 0, 0}, 1165 {262328, 0, 0}, 1166 {262330, 0, 0}, 1167 {327692, 0, 0}, 1168 {327737, 0, 0}, 1169 {327745, 0, 0}, 1170 {327760, 0, 0}, 1171 {327761, 0, 0}, 1172 {327762, 0, 0}, 1173 {393228, 0, 0}, 1174 {393273, 0, 0}, 1175 {393281, 0, 0}, 1176 {393295, 0, 0}, 1177 {393296, 0, 0}, 1178 {393297, 0, 0}, 1179 {393304, 0, 0}, 1180 {458764, 0, 0}, 1181 {458809, 0, 0}, 1182 {458817, 0, 0}, 1183 {458831, 0, 0}, 1184 {458840, 0, 0}, 1185 {524345, 0, 0}, 1186 {524367, 0, 0}, 1187 {589881, 0, 0}, 1188 {720953, 0, 0}, 1189 {1111111111111111111, 0, 0}, 1190 {0, 42, 47}, 1191 {0, 48, 50}, 1192 {0, 45, 51}, 1193 {0, 34, 52}, 1194 {0, 53, 41}, 1195 {0, 1, 54}, 1196 {0, 55, 5}, 1197 {0, 15, 4}, 1198 {0, 56, 35}, 1199 {0, 26, 24}, 1200 {0, 18, 28}, 1201 {0, 57, 38}, 1202 {0, 59, 58}, 1203 {0, 60, 25}, 1204 {0, 20, 9}, 1205 {0, 7, 61}, 1206 {0, 62, 22}, 1207 {0, 11, 31}, 1208 {0, 63, 8}, 1209 {0, 64, 40}, 1210 {0, 66, 65}, 1211 {0, 27, 44}, 1212 {0, 29, 67}, 1213 {0, 68, 39}, 1214 {0, 69, 2}, 1215 {0, 37, 49}, 1216 {0, 71, 70}, 1217 {0, 30, 72}, 1218 {0, 73, 17}, 1219 {0, 33, 74}, 1220 {0, 23, 14}, 1221 {0, 32, 75}, 1222 {0, 21, 76}, 1223 {0, 77, 16}, 1224 {0, 46, 78}, 1225 {0, 13, 79}, 1226 {0, 80, 12}, 1227 {0, 19, 81}, 1228 {0, 43, 36}, 1229 {0, 83, 82}, 1230 {0, 10, 84}, 1231 {0, 85, 3}, 1232 {0, 6, 86}, 1233 {0, 88, 87}, 1234 {0, 90, 89}, 1235 {0, 92, 91}, 1236 {0, 94, 93}, 1237 {0, 96, 95}, 1238 })); 1239 1240 codecs.emplace(SpvOpLoad, std::move(codec)); 1241 } 1242 1243 { 1244 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(47, { 1245 {0, 0, 0}, 1246 {262159, 0, 0}, 1247 {327695, 0, 0}, 1248 {393231, 0, 0}, 1249 {458767, 0, 0}, 1250 {524303, 0, 0}, 1251 {589839, 0, 0}, 1252 {655375, 0, 0}, 1253 {720911, 0, 0}, 1254 {786447, 0, 0}, 1255 {851983, 0, 0}, 1256 {917519, 0, 0}, 1257 {983055, 0, 0}, 1258 {1048591, 0, 0}, 1259 {1114127, 0, 0}, 1260 {1179663, 0, 0}, 1261 {1245199, 0, 0}, 1262 {1310735, 0, 0}, 1263 {1376271, 0, 0}, 1264 {1441807, 0, 0}, 1265 {1507343, 0, 0}, 1266 {1572879, 0, 0}, 1267 {1638415, 0, 0}, 1268 {1703951, 0, 0}, 1269 {1111111111111111111, 0, 0}, 1270 {0, 1, 23}, 1271 {0, 22, 25}, 1272 {0, 21, 26}, 1273 {0, 6, 20}, 1274 {0, 19, 27}, 1275 {0, 29, 28}, 1276 {0, 24, 18}, 1277 {0, 30, 13}, 1278 {0, 31, 14}, 1279 {0, 32, 7}, 1280 {0, 17, 15}, 1281 {0, 33, 2}, 1282 {0, 34, 8}, 1283 {0, 16, 12}, 1284 {0, 35, 3}, 1285 {0, 36, 5}, 1286 {0, 9, 37}, 1287 {0, 39, 38}, 1288 {0, 11, 40}, 1289 {0, 4, 10}, 1290 {0, 42, 41}, 1291 {0, 44, 43}, 1292 {0, 46, 45}, 1293 })); 1294 1295 codecs.emplace(SpvOpMemoryModel, std::move(codec)); 1296 } 1297 1298 { 1299 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 1300 {0, 0, 0}, 1301 {196631, 0, 0}, 1302 {196640, 0, 0}, 1303 {196641, 0, 0}, 1304 {1111111111111111111, 0, 0}, 1305 {0, 2, 3}, 1306 {0, 4, 5}, 1307 {0, 1, 6}, 1308 })); 1309 1310 codecs.emplace(SpvOpTypeFloat, std::move(codec)); 1311 } 1312 1313 { 1314 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(69, { 1315 {0, 0, 0}, 1316 {65790, 0, 0}, 1317 {131134, 0, 0}, 1318 {196669, 0, 0}, 1319 {196735, 0, 0}, 1320 {262201, 0, 0}, 1321 {262209, 0, 0}, 1322 {262224, 0, 0}, 1323 {262225, 0, 0}, 1324 {262231, 0, 0}, 1325 {262272, 0, 0}, 1326 {262273, 0, 0}, 1327 {262275, 0, 0}, 1328 {262277, 0, 0}, 1329 {262280, 0, 0}, 1330 {262286, 0, 0}, 1331 {262288, 0, 0}, 1332 {262289, 0, 0}, 1333 {262292, 0, 0}, 1334 {327692, 0, 0}, 1335 {327745, 0, 0}, 1336 {327760, 0, 0}, 1337 {327761, 0, 0}, 1338 {327762, 0, 0}, 1339 {327849, 0, 0}, 1340 {393228, 0, 0}, 1341 {393281, 0, 0}, 1342 {393295, 0, 0}, 1343 {393296, 0, 0}, 1344 {393304, 0, 0}, 1345 {458764, 0, 0}, 1346 {458809, 0, 0}, 1347 {458831, 0, 0}, 1348 {524345, 0, 0}, 1349 {524367, 0, 0}, 1350 {1111111111111111111, 0, 0}, 1351 {0, 33, 10}, 1352 {0, 31, 36}, 1353 {0, 26, 37}, 1354 {0, 5, 38}, 1355 {0, 20, 39}, 1356 {0, 22, 40}, 1357 {0, 24, 25}, 1358 {0, 15, 41}, 1359 {0, 9, 17}, 1360 {0, 1, 42}, 1361 {0, 4, 43}, 1362 {0, 35, 44}, 1363 {0, 34, 45}, 1364 {0, 19, 46}, 1365 {0, 7, 29}, 1366 {0, 16, 47}, 1367 {0, 48, 32}, 1368 {0, 49, 27}, 1369 {0, 11, 14}, 1370 {0, 18, 28}, 1371 {0, 23, 50}, 1372 {0, 51, 12}, 1373 {0, 52, 21}, 1374 {0, 6, 53}, 1375 {0, 55, 54}, 1376 {0, 57, 56}, 1377 {0, 3, 58}, 1378 {0, 13, 59}, 1379 {0, 60, 8}, 1380 {0, 30, 61}, 1381 {0, 62, 2}, 1382 {0, 64, 63}, 1383 {0, 66, 65}, 1384 {0, 68, 67}, 1385 })); 1386 1387 codecs.emplace(SpvOpCompositeConstruct, std::move(codec)); 1388 } 1389 1390 { 1391 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(39, { 1392 {0, 0, 0}, 1393 {65556, 0, 0}, 1394 {131094, 0, 0}, 1395 {131105, 0, 0}, 1396 {196629, 0, 0}, 1397 {196631, 0, 0}, 1398 {196632, 0, 0}, 1399 {196640, 0, 0}, 1400 {196641, 0, 0}, 1401 {262177, 0, 0}, 1402 {327713, 0, 0}, 1403 {393249, 0, 0}, 1404 {458785, 0, 0}, 1405 {524313, 0, 0}, 1406 {524321, 0, 0}, 1407 {589857, 0, 0}, 1408 {655393, 0, 0}, 1409 {786465, 0, 0}, 1410 {917537, 0, 0}, 1411 {1048609, 0, 0}, 1412 {1111111111111111111, 0, 0}, 1413 {0, 19, 18}, 1414 {0, 21, 15}, 1415 {0, 1, 22}, 1416 {0, 16, 23}, 1417 {0, 14, 24}, 1418 {0, 20, 25}, 1419 {0, 13, 17}, 1420 {0, 3, 26}, 1421 {0, 6, 11}, 1422 {0, 27, 12}, 1423 {0, 4, 28}, 1424 {0, 29, 10}, 1425 {0, 9, 30}, 1426 {0, 7, 31}, 1427 {0, 33, 32}, 1428 {0, 34, 5}, 1429 {0, 8, 35}, 1430 {0, 2, 36}, 1431 {0, 38, 37}, 1432 })); 1433 1434 codecs.emplace(SpvOpTypeFunction, std::move(codec)); 1435 } 1436 1437 { 1438 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 1439 {0, 0, 0}, 1440 {131086, 0, 0}, 1441 {1111111111111111111, 0, 0}, 1442 {0, 1, 2}, 1443 })); 1444 1445 codecs.emplace(SpvOpExtInstImport, std::move(codec)); 1446 } 1447 1448 { 1449 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 1450 {0, 0, 0}, 1451 {131099, 0, 0}, 1452 {196640, 0, 0}, 1453 {1111111111111111111, 0, 0}, 1454 {0, 2, 3}, 1455 {0, 1, 4}, 1456 })); 1457 1458 codecs.emplace(SpvOpTypeImage, std::move(codec)); 1459 } 1460 1461 { 1462 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 1463 {0, 0, 0}, 1464 {131143, 0, 0}, 1465 {196679, 0, 0}, 1466 {196680, 0, 0}, 1467 {262216, 0, 0}, 1468 {1111111111111111111, 0, 0}, 1469 {0, 5, 2}, 1470 {0, 3, 6}, 1471 {0, 7, 1}, 1472 {0, 4, 8}, 1473 })); 1474 1475 codecs.emplace(SpvOpMemberDecorate, std::move(codec)); 1476 } 1477 1478 { 1479 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 1480 {0, 0, 0}, 1481 {65553, 0, 0}, 1482 {131083, 0, 0}, 1483 {1111111111111111111, 0, 0}, 1484 {0, 1, 3}, 1485 {0, 2, 4}, 1486 })); 1487 1488 codecs.emplace(SpvOpCapability, std::move(codec)); 1489 } 1490 1491 { 1492 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(17, { 1493 {0, 0, 0}, 1494 {196629, 0, 0}, 1495 {196631, 0, 0}, 1496 {196632, 0, 0}, 1497 {196640, 0, 0}, 1498 {196651, 0, 0}, 1499 {196667, 0, 0}, 1500 {327713, 0, 0}, 1501 {458785, 0, 0}, 1502 {1111111111111111111, 0, 0}, 1503 {0, 7, 8}, 1504 {0, 1, 10}, 1505 {0, 6, 11}, 1506 {0, 9, 12}, 1507 {0, 4, 13}, 1508 {0, 3, 14}, 1509 {0, 15, 2}, 1510 {0, 5, 16}, 1511 })); 1512 1513 codecs.emplace(SpvOpTypeInt, std::move(codec)); 1514 } 1515 1516 { 1517 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(29, { 1518 {0, 0, 0}, 1519 {65556, 0, 0}, 1520 {131073, 0, 0}, 1521 {196629, 0, 0}, 1522 {196631, 0, 0}, 1523 {196632, 0, 0}, 1524 {196636, 0, 0}, 1525 {196640, 0, 0}, 1526 {196651, 0, 0}, 1527 {196667, 0, 0}, 1528 {262188, 0, 0}, 1529 {262198, 0, 0}, 1530 {327724, 0, 0}, 1531 {393260, 0, 0}, 1532 {524313, 0, 0}, 1533 {1111111111111111111, 0, 0}, 1534 {0, 2, 6}, 1535 {0, 16, 3}, 1536 {0, 11, 17}, 1537 {0, 5, 18}, 1538 {0, 15, 19}, 1539 {0, 13, 20}, 1540 {0, 1, 4}, 1541 {0, 12, 21}, 1542 {0, 7, 22}, 1543 {0, 14, 23}, 1544 {0, 24, 10}, 1545 {0, 25, 9}, 1546 {0, 27, 26}, 1547 {0, 8, 28}, 1548 })); 1549 1550 codecs.emplace(SpvOpConstantComposite, std::move(codec)); 1551 } 1552 1553 { 1554 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(15, { 1555 {0, 0, 0}, 1556 {65556, 0, 0}, 1557 {196631, 0, 0}, 1558 {196640, 0, 0}, 1559 {196651, 0, 0}, 1560 {196667, 0, 0}, 1561 {327724, 0, 0}, 1562 {393260, 0, 0}, 1563 {1111111111111111111, 0, 0}, 1564 {0, 6, 7}, 1565 {0, 1, 9}, 1566 {0, 10, 8}, 1567 {0, 2, 11}, 1568 {0, 5, 12}, 1569 {0, 13, 4}, 1570 {0, 3, 14}, 1571 })); 1572 1573 codecs.emplace(SpvOpTypeSampledImage, std::move(codec)); 1574 } 1575 1576 { 1577 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(21, { 1578 {0, 0, 0}, 1579 {131073, 0, 0}, 1580 {196629, 0, 0}, 1581 {196631, 0, 0}, 1582 {196632, 0, 0}, 1583 {196636, 0, 0}, 1584 {196640, 0, 0}, 1585 {196641, 0, 0}, 1586 {196651, 0, 0}, 1587 {196667, 0, 0}, 1588 {262198, 0, 0}, 1589 {1111111111111111111, 0, 0}, 1590 {0, 3, 5}, 1591 {0, 11, 12}, 1592 {0, 8, 13}, 1593 {0, 7, 14}, 1594 {0, 4, 10}, 1595 {0, 9, 2}, 1596 {0, 16, 15}, 1597 {0, 1, 17}, 1598 {0, 19, 18}, 1599 {0, 6, 20}, 1600 })); 1601 1602 codecs.emplace(SpvOpTypeStruct, std::move(codec)); 1603 } 1604 1605 { 1606 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(49, { 1607 {0, 0, 0}, 1608 {65785, 0, 0}, 1609 {65790, 0, 0}, 1610 {131134, 0, 0}, 1611 {196669, 0, 0}, 1612 {196735, 0, 0}, 1613 {262201, 0, 0}, 1614 {262209, 0, 0}, 1615 {262224, 0, 0}, 1616 {262225, 0, 0}, 1617 {262272, 0, 0}, 1618 {262273, 0, 0}, 1619 {262275, 0, 0}, 1620 {262277, 0, 0}, 1621 {262286, 0, 0}, 1622 {262292, 0, 0}, 1623 {327692, 0, 0}, 1624 {327745, 0, 0}, 1625 {327760, 0, 0}, 1626 {327762, 0, 0}, 1627 {393228, 0, 0}, 1628 {393295, 0, 0}, 1629 {393296, 0, 0}, 1630 {458764, 0, 0}, 1631 {458831, 0, 0}, 1632 {1111111111111111111, 0, 0}, 1633 {0, 20, 12}, 1634 {0, 26, 24}, 1635 {0, 21, 27}, 1636 {0, 28, 16}, 1637 {0, 10, 8}, 1638 {0, 30, 29}, 1639 {0, 31, 17}, 1640 {0, 32, 13}, 1641 {0, 25, 6}, 1642 {0, 1, 33}, 1643 {0, 14, 11}, 1644 {0, 3, 34}, 1645 {0, 18, 35}, 1646 {0, 37, 36}, 1647 {0, 23, 5}, 1648 {0, 38, 2}, 1649 {0, 39, 7}, 1650 {0, 4, 9}, 1651 {0, 40, 19}, 1652 {0, 42, 41}, 1653 {0, 43, 22}, 1654 {0, 45, 44}, 1655 {0, 46, 15}, 1656 {0, 48, 47}, 1657 })); 1658 1659 codecs.emplace(SpvOpFNegate, std::move(codec)); 1660 } 1661 1662 { 1663 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(11, { 1664 {0, 0, 0}, 1665 {65555, 0, 0}, 1666 {131143, 0, 0}, 1667 {196679, 0, 0}, 1668 {196680, 0, 0}, 1669 {262216, 0, 0}, 1670 {1111111111111111111, 0, 0}, 1671 {0, 4, 6}, 1672 {0, 1, 2}, 1673 {0, 8, 7}, 1674 {0, 5, 9}, 1675 {0, 3, 10}, 1676 })); 1677 1678 codecs.emplace(SpvOpDecorate, std::move(codec)); 1679 } 1680 1681 { 1682 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(25, { 1683 {0, 0, 0}, 1684 {65562, 0, 0}, 1685 {196629, 0, 0}, 1686 {196631, 0, 0}, 1687 {196632, 0, 0}, 1688 {196636, 0, 0}, 1689 {196640, 0, 0}, 1690 {196641, 0, 0}, 1691 {196651, 0, 0}, 1692 {196667, 0, 0}, 1693 {262177, 0, 0}, 1694 {262198, 0, 0}, 1695 {327713, 0, 0}, 1696 {1111111111111111111, 0, 0}, 1697 {0, 12, 11}, 1698 {0, 9, 14}, 1699 {0, 10, 15}, 1700 {0, 13, 16}, 1701 {0, 4, 17}, 1702 {0, 2, 1}, 1703 {0, 18, 7}, 1704 {0, 20, 19}, 1705 {0, 21, 3}, 1706 {0, 22, 6}, 1707 {0, 5, 8}, 1708 {0, 24, 23}, 1709 })); 1710 1711 codecs.emplace(SpvOpTypeMatrix, std::move(codec)); 1712 } 1713 1714 { 1715 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(31, { 1716 {0, 0, 0}, 1717 {65556, 0, 0}, 1718 {131073, 0, 0}, 1719 {131094, 0, 0}, 1720 {196629, 0, 0}, 1721 {196631, 0, 0}, 1722 {196632, 0, 0}, 1723 {196636, 0, 0}, 1724 {196640, 0, 0}, 1725 {196651, 0, 0}, 1726 {196667, 0, 0}, 1727 {262188, 0, 0}, 1728 {262198, 0, 0}, 1729 {327724, 0, 0}, 1730 {393260, 0, 0}, 1731 {524313, 0, 0}, 1732 {1111111111111111111, 0, 0}, 1733 {0, 12, 2}, 1734 {0, 17, 3}, 1735 {0, 5, 18}, 1736 {0, 1, 19}, 1737 {0, 16, 4}, 1738 {0, 21, 20}, 1739 {0, 6, 15}, 1740 {0, 7, 22}, 1741 {0, 24, 23}, 1742 {0, 13, 14}, 1743 {0, 25, 8}, 1744 {0, 26, 11}, 1745 {0, 27, 10}, 1746 {0, 29, 28}, 1747 {0, 30, 9}, 1748 })); 1749 1750 codecs.emplace(SpvOpConstant, std::move(codec)); 1751 } 1752 1753 { 1754 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(33, { 1755 {0, 0, 0}, 1756 {131113, 0, 0}, 1757 {196629, 0, 0}, 1758 {196631, 0, 0}, 1759 {196632, 0, 0}, 1760 {196640, 0, 0}, 1761 {196641, 0, 0}, 1762 {196651, 0, 0}, 1763 {196667, 0, 0}, 1764 {262188, 0, 0}, 1765 {262198, 0, 0}, 1766 {327713, 0, 0}, 1767 {327724, 0, 0}, 1768 {393249, 0, 0}, 1769 {393260, 0, 0}, 1770 {524313, 0, 0}, 1771 {524321, 0, 0}, 1772 {1111111111111111111, 0, 0}, 1773 {0, 6, 4}, 1774 {0, 13, 11}, 1775 {0, 16, 15}, 1776 {0, 18, 10}, 1777 {0, 20, 19}, 1778 {0, 21, 2}, 1779 {0, 23, 22}, 1780 {0, 8, 24}, 1781 {0, 9, 25}, 1782 {0, 17, 26}, 1783 {0, 14, 27}, 1784 {0, 12, 28}, 1785 {0, 1, 3}, 1786 {0, 5, 29}, 1787 {0, 30, 7}, 1788 {0, 32, 31}, 1789 })); 1790 1791 codecs.emplace(SpvOpTypeBool, std::move(codec)); 1792 } 1793 1794 { 1795 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(11, { 1796 {0, 0, 0}, 1797 {196636, 0, 0}, 1798 {196640, 0, 0}, 1799 {196651, 0, 0}, 1800 {196667, 0, 0}, 1801 {524313, 0, 0}, 1802 {1111111111111111111, 0, 0}, 1803 {0, 4, 5}, 1804 {0, 3, 7}, 1805 {0, 2, 8}, 1806 {0, 6, 9}, 1807 {0, 1, 10}, 1808 })); 1809 1810 codecs.emplace(SpvOpTypeArray, std::move(codec)); 1811 } 1812 1813 { 1814 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(67, { 1815 {0, 0, 0}, 1816 {65785, 0, 0}, 1817 {65790, 0, 0}, 1818 {131134, 0, 0}, 1819 {131319, 0, 0}, 1820 {196669, 0, 0}, 1821 {196735, 0, 0}, 1822 {262201, 0, 0}, 1823 {262209, 0, 0}, 1824 {262224, 0, 0}, 1825 {262225, 0, 0}, 1826 {262231, 0, 0}, 1827 {262272, 0, 0}, 1828 {262273, 0, 0}, 1829 {262275, 0, 0}, 1830 {262277, 0, 0}, 1831 {262280, 0, 0}, 1832 {262286, 0, 0}, 1833 {262292, 0, 0}, 1834 {262334, 0, 0}, 1835 {327692, 0, 0}, 1836 {327737, 0, 0}, 1837 {327745, 0, 0}, 1838 {327760, 0, 0}, 1839 {327761, 0, 0}, 1840 {327762, 0, 0}, 1841 {393228, 0, 0}, 1842 {393273, 0, 0}, 1843 {393281, 0, 0}, 1844 {393295, 0, 0}, 1845 {393296, 0, 0}, 1846 {458764, 0, 0}, 1847 {458831, 0, 0}, 1848 {524367, 0, 0}, 1849 {1111111111111111111, 0, 0}, 1850 {0, 7, 27}, 1851 {0, 11, 28}, 1852 {0, 35, 21}, 1853 {0, 36, 1}, 1854 {0, 4, 37}, 1855 {0, 39, 38}, 1856 {0, 40, 30}, 1857 {0, 41, 12}, 1858 {0, 19, 42}, 1859 {0, 13, 43}, 1860 {0, 16, 44}, 1861 {0, 45, 22}, 1862 {0, 34, 18}, 1863 {0, 29, 24}, 1864 {0, 46, 25}, 1865 {0, 6, 2}, 1866 {0, 9, 31}, 1867 {0, 17, 47}, 1868 {0, 49, 48}, 1869 {0, 50, 33}, 1870 {0, 51, 26}, 1871 {0, 20, 52}, 1872 {0, 32, 53}, 1873 {0, 3, 54}, 1874 {0, 15, 14}, 1875 {0, 23, 55}, 1876 {0, 8, 56}, 1877 {0, 58, 57}, 1878 {0, 10, 59}, 1879 {0, 5, 60}, 1880 {0, 62, 61}, 1881 {0, 64, 63}, 1882 {0, 66, 65}, 1883 })); 1884 1885 codecs.emplace(SpvOpExtInst, std::move(codec)); 1886 } 1887 1888 { 1889 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(57, { 1890 {0, 0, 0}, 1891 {65790, 0, 0}, 1892 {131134, 0, 0}, 1893 {196665, 0, 0}, 1894 {196669, 0, 0}, 1895 {196718, 0, 0}, 1896 {262201, 0, 0}, 1897 {262209, 0, 0}, 1898 {262224, 0, 0}, 1899 {262225, 0, 0}, 1900 {262231, 0, 0}, 1901 {262273, 0, 0}, 1902 {262275, 0, 0}, 1903 {262277, 0, 0}, 1904 {262280, 0, 0}, 1905 {262286, 0, 0}, 1906 {262292, 0, 0}, 1907 {327692, 0, 0}, 1908 {327745, 0, 0}, 1909 {327760, 0, 0}, 1910 {327762, 0, 0}, 1911 {393228, 0, 0}, 1912 {393273, 0, 0}, 1913 {393295, 0, 0}, 1914 {393296, 0, 0}, 1915 {393303, 0, 0}, 1916 {458764, 0, 0}, 1917 {458831, 0, 0}, 1918 {524367, 0, 0}, 1919 {1111111111111111111, 0, 0}, 1920 {0, 18, 6}, 1921 {0, 30, 22}, 1922 {0, 31, 25}, 1923 {0, 10, 32}, 1924 {0, 21, 33}, 1925 {0, 3, 34}, 1926 {0, 35, 5}, 1927 {0, 23, 36}, 1928 {0, 14, 17}, 1929 {0, 37, 26}, 1930 {0, 1, 38}, 1931 {0, 29, 39}, 1932 {0, 13, 40}, 1933 {0, 41, 19}, 1934 {0, 28, 20}, 1935 {0, 16, 42}, 1936 {0, 27, 43}, 1937 {0, 8, 24}, 1938 {0, 7, 44}, 1939 {0, 9, 45}, 1940 {0, 15, 46}, 1941 {0, 12, 47}, 1942 {0, 48, 2}, 1943 {0, 4, 49}, 1944 {0, 51, 50}, 1945 {0, 11, 52}, 1946 {0, 54, 53}, 1947 {0, 56, 55}, 1948 })); 1949 1950 codecs.emplace(SpvOpVectorTimesScalar, std::move(codec)); 1951 } 1952 1953 { 1954 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(67, { 1955 {0, 0, 0}, 1956 {65785, 0, 0}, 1957 {65790, 0, 0}, 1958 {131134, 0, 0}, 1959 {196669, 0, 0}, 1960 {196735, 0, 0}, 1961 {262201, 0, 0}, 1962 {262209, 0, 0}, 1963 {262224, 0, 0}, 1964 {262225, 0, 0}, 1965 {262230, 0, 0}, 1966 {262231, 0, 0}, 1967 {262272, 0, 0}, 1968 {262273, 0, 0}, 1969 {262275, 0, 0}, 1970 {262277, 0, 0}, 1971 {262280, 0, 0}, 1972 {262286, 0, 0}, 1973 {262292, 0, 0}, 1974 {327692, 0, 0}, 1975 {327737, 0, 0}, 1976 {327745, 0, 0}, 1977 {327760, 0, 0}, 1978 {327761, 0, 0}, 1979 {327762, 0, 0}, 1980 {393228, 0, 0}, 1981 {393273, 0, 0}, 1982 {393295, 0, 0}, 1983 {393296, 0, 0}, 1984 {393303, 0, 0}, 1985 {393304, 0, 0}, 1986 {458764, 0, 0}, 1987 {458831, 0, 0}, 1988 {524367, 0, 0}, 1989 {1111111111111111111, 0, 0}, 1990 {0, 26, 29}, 1991 {0, 20, 35}, 1992 {0, 12, 36}, 1993 {0, 6, 37}, 1994 {0, 38, 28}, 1995 {0, 30, 5}, 1996 {0, 8, 39}, 1997 {0, 2, 40}, 1998 {0, 41, 21}, 1999 {0, 1, 10}, 2000 {0, 43, 42}, 2001 {0, 23, 16}, 2002 {0, 44, 33}, 2003 {0, 34, 31}, 2004 {0, 14, 45}, 2005 {0, 19, 46}, 2006 {0, 25, 47}, 2007 {0, 49, 48}, 2008 {0, 27, 22}, 2009 {0, 7, 50}, 2010 {0, 17, 32}, 2011 {0, 18, 51}, 2012 {0, 24, 52}, 2013 {0, 54, 53}, 2014 {0, 55, 9}, 2015 {0, 56, 11}, 2016 {0, 57, 4}, 2017 {0, 15, 58}, 2018 {0, 59, 13}, 2019 {0, 60, 3}, 2020 {0, 62, 61}, 2021 {0, 64, 63}, 2022 {0, 66, 65}, 2023 })); 2024 2025 codecs.emplace(SpvOpVectorShuffle, std::move(codec)); 2026 } 2027 2028 { 2029 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(33, { 2030 {0, 0, 0}, 2031 {65790, 0, 0}, 2032 {131134, 0, 0}, 2033 {196669, 0, 0}, 2034 {262201, 0, 0}, 2035 {262209, 0, 0}, 2036 {262225, 0, 0}, 2037 {262231, 0, 0}, 2038 {262273, 0, 0}, 2039 {262277, 0, 0}, 2040 {262286, 0, 0}, 2041 {262292, 0, 0}, 2042 {327745, 0, 0}, 2043 {393281, 0, 0}, 2044 {393295, 0, 0}, 2045 {393296, 0, 0}, 2046 {458831, 0, 0}, 2047 {1111111111111111111, 0, 0}, 2048 {0, 13, 12}, 2049 {0, 1, 18}, 2050 {0, 19, 11}, 2051 {0, 9, 20}, 2052 {0, 10, 21}, 2053 {0, 22, 15}, 2054 {0, 23, 8}, 2055 {0, 4, 24}, 2056 {0, 25, 7}, 2057 {0, 17, 26}, 2058 {0, 5, 27}, 2059 {0, 14, 3}, 2060 {0, 29, 28}, 2061 {0, 30, 2}, 2062 {0, 6, 31}, 2063 {0, 32, 16}, 2064 })); 2065 2066 codecs.emplace(SpvOpImageSampleImplicitLod, std::move(codec)); 2067 } 2068 2069 { 2070 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(55, { 2071 {0, 0, 0}, 2072 {65785, 0, 0}, 2073 {65790, 0, 0}, 2074 {131134, 0, 0}, 2075 {196669, 0, 0}, 2076 {196735, 0, 0}, 2077 {196817, 0, 0}, 2078 {262209, 0, 0}, 2079 {262224, 0, 0}, 2080 {262225, 0, 0}, 2081 {262273, 0, 0}, 2082 {262275, 0, 0}, 2083 {262277, 0, 0}, 2084 {262280, 0, 0}, 2085 {262286, 0, 0}, 2086 {262292, 0, 0}, 2087 {327692, 0, 0}, 2088 {327745, 0, 0}, 2089 {327760, 0, 0}, 2090 {327761, 0, 0}, 2091 {327762, 0, 0}, 2092 {393228, 0, 0}, 2093 {393281, 0, 0}, 2094 {393295, 0, 0}, 2095 {393296, 0, 0}, 2096 {393298, 0, 0}, 2097 {458764, 0, 0}, 2098 {458831, 0, 0}, 2099 {1111111111111111111, 0, 0}, 2100 {0, 5, 2}, 2101 {0, 22, 29}, 2102 {0, 30, 1}, 2103 {0, 6, 31}, 2104 {0, 9, 32}, 2105 {0, 28, 3}, 2106 {0, 27, 33}, 2107 {0, 20, 16}, 2108 {0, 34, 8}, 2109 {0, 10, 35}, 2110 {0, 4, 36}, 2111 {0, 24, 23}, 2112 {0, 21, 13}, 2113 {0, 7, 37}, 2114 {0, 38, 14}, 2115 {0, 25, 39}, 2116 {0, 17, 11}, 2117 {0, 12, 19}, 2118 {0, 41, 40}, 2119 {0, 42, 18}, 2120 {0, 15, 43}, 2121 {0, 45, 44}, 2122 {0, 47, 46}, 2123 {0, 26, 48}, 2124 {0, 50, 49}, 2125 {0, 52, 51}, 2126 {0, 54, 53}, 2127 })); 2128 2129 codecs.emplace(SpvOpDot, std::move(codec)); 2130 } 2131 2132 { 2133 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(11, { 2134 {0, 0, 0}, 2135 {131075, 0, 0}, 2136 {131088, 0, 0}, 2137 {196624, 0, 0}, 2138 {196679, 0, 0}, 2139 {262216, 0, 0}, 2140 {1111111111111111111, 0, 0}, 2141 {0, 5, 3}, 2142 {0, 2, 7}, 2143 {0, 1, 8}, 2144 {0, 6, 9}, 2145 {0, 4, 10}, 2146 })); 2147 2148 codecs.emplace(SpvOpExecutionMode, std::move(codec)); 2149 } 2150 2151 { 2152 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 2153 {0, 0, 0}, 2154 {196858, 0, 0}, 2155 {1111111111111111111, 0, 0}, 2156 {0, 1, 2}, 2157 })); 2158 2159 codecs.emplace(SpvOpSelectionMerge, std::move(codec)); 2160 } 2161 2162 { 2163 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(23, { 2164 {0, 0, 0}, 2165 {131134, 0, 0}, 2166 {196669, 0, 0}, 2167 {262209, 0, 0}, 2168 {262224, 0, 0}, 2169 {262225, 0, 0}, 2170 {262277, 0, 0}, 2171 {327745, 0, 0}, 2172 {327761, 0, 0}, 2173 {327762, 0, 0}, 2174 {393295, 0, 0}, 2175 {393296, 0, 0}, 2176 {1111111111111111111, 0, 0}, 2177 {0, 2, 12}, 2178 {0, 7, 13}, 2179 {0, 5, 1}, 2180 {0, 4, 10}, 2181 {0, 14, 6}, 2182 {0, 16, 15}, 2183 {0, 17, 11}, 2184 {0, 3, 8}, 2185 {0, 19, 18}, 2186 {0, 9, 20}, 2187 {0, 22, 21}, 2188 })); 2189 2190 codecs.emplace(SpvOpImageSampleDrefExplicitLod, std::move(codec)); 2191 } 2192 2193 { 2194 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 2195 {0, 0, 0}, 2196 {65790, 0, 0}, 2197 {131073, 0, 0}, 2198 {262198, 0, 0}, 2199 {1111111111111111111, 0, 0}, 2200 {0, 4, 1}, 2201 {0, 3, 5}, 2202 {0, 2, 6}, 2203 })); 2204 2205 codecs.emplace(SpvOpUndef, std::move(codec)); 2206 } 2207 2208 { 2209 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(59, { 2210 {0, 0, 0}, 2211 {65785, 0, 0}, 2212 {131134, 0, 0}, 2213 {131319, 0, 0}, 2214 {196669, 0, 0}, 2215 {196735, 0, 0}, 2216 {262209, 0, 0}, 2217 {262221, 0, 0}, 2218 {262224, 0, 0}, 2219 {262225, 0, 0}, 2220 {262230, 0, 0}, 2221 {262273, 0, 0}, 2222 {262275, 0, 0}, 2223 {262277, 0, 0}, 2224 {262280, 0, 0}, 2225 {262286, 0, 0}, 2226 {262288, 0, 0}, 2227 {262292, 0, 0}, 2228 {262334, 0, 0}, 2229 {327692, 0, 0}, 2230 {327760, 0, 0}, 2231 {327761, 0, 0}, 2232 {327762, 0, 0}, 2233 {393228, 0, 0}, 2234 {393295, 0, 0}, 2235 {393296, 0, 0}, 2236 {393298, 0, 0}, 2237 {458764, 0, 0}, 2238 {458831, 0, 0}, 2239 {524367, 0, 0}, 2240 {1111111111111111111, 0, 0}, 2241 {0, 17, 3}, 2242 {0, 5, 31}, 2243 {0, 11, 32}, 2244 {0, 33, 12}, 2245 {0, 34, 20}, 2246 {0, 16, 27}, 2247 {0, 35, 23}, 2248 {0, 37, 36}, 2249 {0, 14, 18}, 2250 {0, 39, 38}, 2251 {0, 7, 30}, 2252 {0, 8, 25}, 2253 {0, 40, 15}, 2254 {0, 13, 2}, 2255 {0, 1, 29}, 2256 {0, 19, 41}, 2257 {0, 43, 42}, 2258 {0, 28, 44}, 2259 {0, 46, 45}, 2260 {0, 22, 21}, 2261 {0, 47, 24}, 2262 {0, 48, 26}, 2263 {0, 10, 6}, 2264 {0, 50, 49}, 2265 {0, 52, 51}, 2266 {0, 54, 53}, 2267 {0, 4, 9}, 2268 {0, 56, 55}, 2269 {0, 58, 57}, 2270 })); 2271 2272 codecs.emplace(SpvOpCompositeInsert, std::move(codec)); 2273 } 2274 2275 return codecs; 2276} 2277 2278std::map<uint32_t, std::unique_ptr<HuffmanCodec<std::string>>> 2279GetLiteralStringHuffmanCodecs() { 2280 std::map<uint32_t, std::unique_ptr<HuffmanCodec<std::string>>> codecs; 2281 { 2282 std::unique_ptr<HuffmanCodec<std::string>> codec(new HuffmanCodec<std::string>(7, { 2283 {"", 0, 0}, 2284 {"MainPs", 0, 0}, 2285 {"MainVs", 0, 0}, 2286 {"kMarkvNoneOfTheAbove", 0, 0}, 2287 {"main", 0, 0}, 2288 {"", 2, 3}, 2289 {"", 1, 5}, 2290 {"", 4, 6}, 2291 })); 2292 2293 codecs.emplace(SpvOpEntryPoint, std::move(codec)); 2294 } 2295 2296 { 2297 std::unique_ptr<HuffmanCodec<std::string>> codec(new HuffmanCodec<std::string>(3, { 2298 {"", 0, 0}, 2299 {"GLSL.std.450", 0, 0}, 2300 {"kMarkvNoneOfTheAbove", 0, 0}, 2301 {"", 1, 2}, 2302 })); 2303 2304 codecs.emplace(SpvOpExtInstImport, std::move(codec)); 2305 } 2306 2307 return codecs; 2308} 2309 2310std::map<std::pair<uint32_t, uint32_t>, std::unique_ptr<HuffmanCodec<uint64_t>>> 2311GetNonIdWordHuffmanCodecs() { 2312 std::map<std::pair<uint32_t, uint32_t>, std::unique_ptr<HuffmanCodec<uint64_t>>> codecs; 2313 { 2314 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(33, { 2315 {0, 0, 0}, 2316 {4, 0, 0}, 2317 {8, 0, 0}, 2318 {10, 0, 0}, 2319 {26, 0, 0}, 2320 {29, 0, 0}, 2321 {31, 0, 0}, 2322 {37, 0, 0}, 2323 {40, 0, 0}, 2324 {43, 0, 0}, 2325 {46, 0, 0}, 2326 {49, 0, 0}, 2327 {66, 0, 0}, 2328 {67, 0, 0}, 2329 {68, 0, 0}, 2330 {69, 0, 0}, 2331 {71, 0, 0}, 2332 {1111111111111111111, 0, 0}, 2333 {0, 12, 5}, 2334 {0, 18, 13}, 2335 {0, 3, 7}, 2336 {0, 19, 11}, 2337 {0, 20, 16}, 2338 {0, 14, 17}, 2339 {0, 21, 1}, 2340 {0, 2, 6}, 2341 {0, 23, 22}, 2342 {0, 4, 24}, 2343 {0, 26, 25}, 2344 {0, 28, 27}, 2345 {0, 10, 15}, 2346 {0, 8, 9}, 2347 {0, 30, 29}, 2348 {0, 32, 31}, 2349 })); 2350 2351 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpExtInst, 3), std::move(codec)); 2352 } 2353 2354 { 2355 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 2356 {0, 0, 0}, 2357 {0, 0, 0}, 2358 {1111111111111111111, 0, 0}, 2359 {0, 1, 2}, 2360 })); 2361 2362 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpMemoryModel, 0), std::move(codec)); 2363 } 2364 2365 { 2366 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 2367 {0, 0, 0}, 2368 {1, 0, 0}, 2369 {1111111111111111111, 0, 0}, 2370 {0, 1, 2}, 2371 })); 2372 2373 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpMemoryModel, 1), std::move(codec)); 2374 } 2375 2376 { 2377 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 2378 {0, 0, 0}, 2379 {0, 0, 0}, 2380 {4, 0, 0}, 2381 {1111111111111111111, 0, 0}, 2382 {0, 1, 3}, 2383 {0, 2, 4}, 2384 })); 2385 2386 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpEntryPoint, 0), std::move(codec)); 2387 } 2388 2389 { 2390 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 2391 {0, 0, 0}, 2392 {7, 0, 0}, 2393 {8, 0, 0}, 2394 {1111111111111111111, 0, 0}, 2395 {0, 3, 2}, 2396 {0, 1, 4}, 2397 })); 2398 2399 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpExecutionMode, 1), std::move(codec)); 2400 } 2401 2402 { 2403 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(11, { 2404 {0, 0, 0}, 2405 {1, 0, 0}, 2406 {2, 0, 0}, 2407 {3, 0, 0}, 2408 {4, 0, 0}, 2409 {18, 0, 0}, 2410 {1111111111111111111, 0, 0}, 2411 {0, 4, 2}, 2412 {0, 6, 5}, 2413 {0, 7, 1}, 2414 {0, 3, 8}, 2415 {0, 10, 9}, 2416 })); 2417 2418 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpExecutionMode, 2), std::move(codec)); 2419 } 2420 2421 { 2422 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 2423 {0, 0, 0}, 2424 {1, 0, 0}, 2425 {32, 0, 0}, 2426 {1111111111111111111, 0, 0}, 2427 {0, 2, 3}, 2428 {0, 1, 4}, 2429 })); 2430 2431 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCapability, 0), std::move(codec)); 2432 } 2433 2434 { 2435 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 2436 {0, 0, 0}, 2437 {32, 0, 0}, 2438 {1111111111111111111, 0, 0}, 2439 {0, 1, 2}, 2440 })); 2441 2442 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeInt, 1), std::move(codec)); 2443 } 2444 2445 { 2446 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 2447 {0, 0, 0}, 2448 {0, 0, 0}, 2449 {1, 0, 0}, 2450 {1111111111111111111, 0, 0}, 2451 {0, 2, 3}, 2452 {0, 1, 4}, 2453 })); 2454 2455 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeInt, 2), std::move(codec)); 2456 } 2457 2458 { 2459 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 2460 {0, 0, 0}, 2461 {32, 0, 0}, 2462 {1111111111111111111, 0, 0}, 2463 {0, 1, 2}, 2464 })); 2465 2466 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeFloat, 1), std::move(codec)); 2467 } 2468 2469 { 2470 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 2471 {0, 0, 0}, 2472 {2, 0, 0}, 2473 {3, 0, 0}, 2474 {4, 0, 0}, 2475 {1111111111111111111, 0, 0}, 2476 {0, 2, 4}, 2477 {0, 1, 5}, 2478 {0, 6, 3}, 2479 })); 2480 2481 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeVector, 2), std::move(codec)); 2482 } 2483 2484 { 2485 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 2486 {0, 0, 0}, 2487 {2, 0, 0}, 2488 {3, 0, 0}, 2489 {4, 0, 0}, 2490 {1111111111111111111, 0, 0}, 2491 {0, 1, 4}, 2492 {0, 2, 5}, 2493 {0, 3, 6}, 2494 })); 2495 2496 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeMatrix, 2), std::move(codec)); 2497 } 2498 2499 { 2500 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 2501 {0, 0, 0}, 2502 {1, 0, 0}, 2503 {2, 0, 0}, 2504 {3, 0, 0}, 2505 {1111111111111111111, 0, 0}, 2506 {0, 3, 4}, 2507 {0, 2, 5}, 2508 {0, 1, 6}, 2509 })); 2510 2511 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeImage, 2), std::move(codec)); 2512 } 2513 2514 { 2515 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 2516 {0, 0, 0}, 2517 {0, 0, 0}, 2518 {1, 0, 0}, 2519 {1111111111111111111, 0, 0}, 2520 {0, 2, 3}, 2521 {0, 1, 4}, 2522 })); 2523 2524 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeImage, 3), std::move(codec)); 2525 } 2526 2527 { 2528 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 2529 {0, 0, 0}, 2530 {0, 0, 0}, 2531 {1111111111111111111, 0, 0}, 2532 {0, 1, 2}, 2533 })); 2534 2535 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeImage, 4), std::move(codec)); 2536 } 2537 2538 { 2539 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 2540 {0, 0, 0}, 2541 {0, 0, 0}, 2542 {1111111111111111111, 0, 0}, 2543 {0, 1, 2}, 2544 })); 2545 2546 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeImage, 5), std::move(codec)); 2547 } 2548 2549 { 2550 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 2551 {0, 0, 0}, 2552 {1, 0, 0}, 2553 {1111111111111111111, 0, 0}, 2554 {0, 1, 2}, 2555 })); 2556 2557 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeImage, 6), std::move(codec)); 2558 } 2559 2560 { 2561 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 2562 {0, 0, 0}, 2563 {0, 0, 0}, 2564 {1111111111111111111, 0, 0}, 2565 {0, 1, 2}, 2566 })); 2567 2568 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeImage, 7), std::move(codec)); 2569 } 2570 2571 { 2572 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(13, { 2573 {0, 0, 0}, 2574 {0, 0, 0}, 2575 {1, 0, 0}, 2576 {2, 0, 0}, 2577 {3, 0, 0}, 2578 {6, 0, 0}, 2579 {7, 0, 0}, 2580 {1111111111111111111, 0, 0}, 2581 {0, 5, 7}, 2582 {0, 6, 8}, 2583 {0, 1, 4}, 2584 {0, 2, 9}, 2585 {0, 10, 3}, 2586 {0, 12, 11}, 2587 })); 2588 2589 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypePointer, 1), std::move(codec)); 2590 } 2591 2592 { 2593 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(173, { 2594 {0, 0, 0}, 2595 {0, 0, 0}, 2596 {1, 0, 0}, 2597 {2, 0, 0}, 2598 {3, 0, 0}, 2599 {4, 0, 0}, 2600 {5, 0, 0}, 2601 {6, 0, 0}, 2602 {7, 0, 0}, 2603 {8, 0, 0}, 2604 {9, 0, 0}, 2605 {10, 0, 0}, 2606 {11, 0, 0}, 2607 {12, 0, 0}, 2608 {13, 0, 0}, 2609 {14, 0, 0}, 2610 {15, 0, 0}, 2611 {16, 0, 0}, 2612 {17, 0, 0}, 2613 {18, 0, 0}, 2614 {19, 0, 0}, 2615 {20, 0, 0}, 2616 {21, 0, 0}, 2617 {22, 0, 0}, 2618 {23, 0, 0}, 2619 {24, 0, 0}, 2620 {26, 0, 0}, 2621 {27, 0, 0}, 2622 {28, 0, 0}, 2623 {29, 0, 0}, 2624 {30, 0, 0}, 2625 {31, 0, 0}, 2626 {32, 0, 0}, 2627 {256, 0, 0}, 2628 {507307272, 0, 0}, 2629 {864026611, 0, 0}, 2630 {981668463, 0, 0}, 2631 {997553156, 0, 0}, 2632 {1014330372, 0, 0}, 2633 {1020708227, 0, 0}, 2634 {1028443341, 0, 0}, 2635 {1032953056, 0, 0}, 2636 {1033463938, 0, 0}, 2637 {1033463943, 0, 0}, 2638 {1039998884, 0, 0}, 2639 {1039998950, 0, 0}, 2640 {1040187392, 0, 0}, 2641 {1042401985, 0, 0}, 2642 {1044220635, 0, 0}, 2643 {1045622707, 0, 0}, 2644 {1045622740, 0, 0}, 2645 {1048576000, 0, 0}, 2646 {1053609165, 0, 0}, 2647 {1053790359, 0, 0}, 2648 {1054448026, 0, 0}, 2649 {1055437881, 0, 0}, 2650 {1056300230, 0, 0}, 2651 {1056964608, 0, 0}, 2652 {1058056805, 0, 0}, 2653 {1059286575, 0, 0}, 2654 {1061158912, 0, 0}, 2655 {1061997773, 0, 0}, 2656 {1064514355, 0, 0}, 2657 {1064854933, 0, 0}, 2658 {1065353216, 0, 0}, 2659 {1069547520, 0, 0}, 2660 {1073741824, 0, 0}, 2661 {1077936128, 0, 0}, 2662 {1082130432, 0, 0}, 2663 {1091567616, 0, 0}, 2664 {1115422720, 0, 0}, 2665 {1124073472, 0, 0}, 2666 {1132396544, 0, 0}, 2667 {1140850688, 0, 0}, 2668 {1199562752, 0, 0}, 2669 {3179067684, 0, 0}, 2670 {3180973575, 0, 0}, 2671 {3182651297, 0, 0}, 2672 {3196448879, 0, 0}, 2673 {3204448256, 0, 0}, 2674 {3204993516, 0, 0}, 2675 {3205248529, 0, 0}, 2676 {3207137644, 0, 0}, 2677 {3208642560, 0, 0}, 2678 {3211081967, 0, 0}, 2679 {3212836864, 0, 0}, 2680 {3332128768, 0, 0}, 2681 {1111111111111111111, 0, 0}, 2682 {0, 38, 37}, 2683 {0, 42, 39}, 2684 {0, 49, 44}, 2685 {0, 45, 43}, 2686 {0, 26, 50}, 2687 {0, 46, 73}, 2688 {0, 35, 28}, 2689 {0, 32, 65}, 2690 {0, 83, 40}, 2691 {0, 60, 62}, 2692 {0, 27, 54}, 2693 {0, 79, 67}, 2694 {0, 31, 74}, 2695 {0, 51, 12}, 2696 {0, 70, 30}, 2697 {0, 15, 16}, 2698 {0, 88, 25}, 2699 {0, 90, 89}, 2700 {0, 34, 71}, 2701 {0, 72, 29}, 2702 {0, 92, 91}, 2703 {0, 14, 33}, 2704 {0, 94, 93}, 2705 {0, 22, 23}, 2706 {0, 21, 95}, 2707 {0, 19, 24}, 2708 {0, 96, 13}, 2709 {0, 47, 41}, 2710 {0, 53, 48}, 2711 {0, 58, 56}, 2712 {0, 63, 59}, 2713 {0, 76, 75}, 2714 {0, 78, 77}, 2715 {0, 81, 80}, 2716 {0, 84, 82}, 2717 {0, 52, 20}, 2718 {0, 97, 69}, 2719 {0, 99, 98}, 2720 {0, 18, 10}, 2721 {0, 68, 61}, 2722 {0, 17, 100}, 2723 {0, 102, 101}, 2724 {0, 11, 36}, 2725 {0, 104, 103}, 2726 {0, 86, 105}, 2727 {0, 107, 106}, 2728 {0, 109, 108}, 2729 {0, 110, 9}, 2730 {0, 8, 111}, 2731 {0, 113, 112}, 2732 {0, 115, 114}, 2733 {0, 117, 116}, 2734 {0, 119, 118}, 2735 {0, 121, 120}, 2736 {0, 123, 122}, 2737 {0, 125, 124}, 2738 {0, 126, 7}, 2739 {0, 127, 85}, 2740 {0, 6, 128}, 2741 {0, 129, 55}, 2742 {0, 130, 5}, 2743 {0, 132, 131}, 2744 {0, 134, 133}, 2745 {0, 136, 135}, 2746 {0, 137, 66}, 2747 {0, 139, 138}, 2748 {0, 141, 140}, 2749 {0, 143, 142}, 2750 {0, 145, 144}, 2751 {0, 146, 57}, 2752 {0, 147, 64}, 2753 {0, 148, 4}, 2754 {0, 149, 2}, 2755 {0, 151, 150}, 2756 {0, 152, 3}, 2757 {0, 154, 153}, 2758 {0, 156, 155}, 2759 {0, 158, 157}, 2760 {0, 159, 1}, 2761 {0, 160, 87}, 2762 {0, 162, 161}, 2763 {0, 164, 163}, 2764 {0, 166, 165}, 2765 {0, 168, 167}, 2766 {0, 170, 169}, 2767 {0, 172, 171}, 2768 })); 2769 2770 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpConstant, 2), std::move(codec)); 2771 } 2772 2773 { 2774 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 2775 {0, 0, 0}, 2776 {0, 0, 0}, 2777 {1111111111111111111, 0, 0}, 2778 {0, 1, 2}, 2779 })); 2780 2781 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunction, 2), std::move(codec)); 2782 } 2783 2784 { 2785 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(13, { 2786 {0, 0, 0}, 2787 {0, 0, 0}, 2788 {1, 0, 0}, 2789 {2, 0, 0}, 2790 {3, 0, 0}, 2791 {6, 0, 0}, 2792 {7, 0, 0}, 2793 {1111111111111111111, 0, 0}, 2794 {0, 3, 7}, 2795 {0, 4, 8}, 2796 {0, 9, 2}, 2797 {0, 1, 5}, 2798 {0, 10, 6}, 2799 {0, 12, 11}, 2800 })); 2801 2802 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpVariable, 2), std::move(codec)); 2803 } 2804 2805 { 2806 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(15, { 2807 {0, 0, 0}, 2808 {0, 0, 0}, 2809 {2, 0, 0}, 2810 {6, 0, 0}, 2811 {11, 0, 0}, 2812 {30, 0, 0}, 2813 {33, 0, 0}, 2814 {34, 0, 0}, 2815 {1111111111111111111, 0, 0}, 2816 {0, 4, 8}, 2817 {0, 9, 1}, 2818 {0, 3, 10}, 2819 {0, 6, 11}, 2820 {0, 12, 2}, 2821 {0, 7, 5}, 2822 {0, 14, 13}, 2823 })); 2824 2825 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpDecorate, 1), std::move(codec)); 2826 } 2827 2828 { 2829 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(37, { 2830 {0, 0, 0}, 2831 {0, 0, 0}, 2832 {1, 0, 0}, 2833 {2, 0, 0}, 2834 {3, 0, 0}, 2835 {4, 0, 0}, 2836 {5, 0, 0}, 2837 {6, 0, 0}, 2838 {7, 0, 0}, 2839 {8, 0, 0}, 2840 {9, 0, 0}, 2841 {10, 0, 0}, 2842 {12, 0, 0}, 2843 {13, 0, 0}, 2844 {14, 0, 0}, 2845 {15, 0, 0}, 2846 {16, 0, 0}, 2847 {18, 0, 0}, 2848 {64, 0, 0}, 2849 {1111111111111111111, 0, 0}, 2850 {0, 17, 11}, 2851 {0, 10, 13}, 2852 {0, 12, 14}, 2853 {0, 21, 20}, 2854 {0, 9, 22}, 2855 {0, 19, 15}, 2856 {0, 8, 23}, 2857 {0, 18, 24}, 2858 {0, 25, 7}, 2859 {0, 5, 6}, 2860 {0, 26, 16}, 2861 {0, 27, 4}, 2862 {0, 28, 3}, 2863 {0, 30, 29}, 2864 {0, 31, 2}, 2865 {0, 33, 32}, 2866 {0, 35, 34}, 2867 {0, 1, 36}, 2868 })); 2869 2870 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpDecorate, 2), std::move(codec)); 2871 } 2872 2873 { 2874 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(79, { 2875 {0, 0, 0}, 2876 {0, 0, 0}, 2877 {1, 0, 0}, 2878 {2, 0, 0}, 2879 {3, 0, 0}, 2880 {4, 0, 0}, 2881 {5, 0, 0}, 2882 {6, 0, 0}, 2883 {7, 0, 0}, 2884 {8, 0, 0}, 2885 {9, 0, 0}, 2886 {10, 0, 0}, 2887 {11, 0, 0}, 2888 {12, 0, 0}, 2889 {13, 0, 0}, 2890 {14, 0, 0}, 2891 {15, 0, 0}, 2892 {16, 0, 0}, 2893 {17, 0, 0}, 2894 {18, 0, 0}, 2895 {19, 0, 0}, 2896 {20, 0, 0}, 2897 {21, 0, 0}, 2898 {22, 0, 0}, 2899 {23, 0, 0}, 2900 {24, 0, 0}, 2901 {25, 0, 0}, 2902 {26, 0, 0}, 2903 {27, 0, 0}, 2904 {28, 0, 0}, 2905 {29, 0, 0}, 2906 {30, 0, 0}, 2907 {31, 0, 0}, 2908 {32, 0, 0}, 2909 {33, 0, 0}, 2910 {34, 0, 0}, 2911 {35, 0, 0}, 2912 {36, 0, 0}, 2913 {37, 0, 0}, 2914 {38, 0, 0}, 2915 {1111111111111111111, 0, 0}, 2916 {0, 39, 37}, 2917 {0, 40, 36}, 2918 {0, 34, 35}, 2919 {0, 32, 33}, 2920 {0, 30, 31}, 2921 {0, 27, 29}, 2922 {0, 26, 28}, 2923 {0, 42, 41}, 2924 {0, 23, 25}, 2925 {0, 38, 22}, 2926 {0, 44, 43}, 2927 {0, 46, 45}, 2928 {0, 21, 47}, 2929 {0, 19, 20}, 2930 {0, 17, 18}, 2931 {0, 14, 15}, 2932 {0, 12, 10}, 2933 {0, 16, 13}, 2934 {0, 9, 11}, 2935 {0, 7, 8}, 2936 {0, 6, 5}, 2937 {0, 24, 48}, 2938 {0, 50, 49}, 2939 {0, 3, 4}, 2940 {0, 51, 2}, 2941 {0, 1, 52}, 2942 {0, 54, 53}, 2943 {0, 56, 55}, 2944 {0, 58, 57}, 2945 {0, 60, 59}, 2946 {0, 62, 61}, 2947 {0, 64, 63}, 2948 {0, 66, 65}, 2949 {0, 68, 67}, 2950 {0, 70, 69}, 2951 {0, 72, 71}, 2952 {0, 74, 73}, 2953 {0, 76, 75}, 2954 {0, 78, 77}, 2955 })); 2956 2957 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpMemberDecorate, 1), std::move(codec)); 2958 } 2959 2960 { 2961 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 2962 {0, 0, 0}, 2963 {4, 0, 0}, 2964 {7, 0, 0}, 2965 {35, 0, 0}, 2966 {1111111111111111111, 0, 0}, 2967 {0, 1, 4}, 2968 {0, 5, 2}, 2969 {0, 3, 6}, 2970 })); 2971 2972 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpMemberDecorate, 2), std::move(codec)); 2973 } 2974 2975 { 2976 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(149, { 2977 {0, 0, 0}, 2978 {0, 0, 0}, 2979 {16, 0, 0}, 2980 {28, 0, 0}, 2981 {32, 0, 0}, 2982 {36, 0, 0}, 2983 {40, 0, 0}, 2984 {44, 0, 0}, 2985 {48, 0, 0}, 2986 {60, 0, 0}, 2987 {64, 0, 0}, 2988 {76, 0, 0}, 2989 {80, 0, 0}, 2990 {84, 0, 0}, 2991 {88, 0, 0}, 2992 {92, 0, 0}, 2993 {96, 0, 0}, 2994 {100, 0, 0}, 2995 {108, 0, 0}, 2996 {112, 0, 0}, 2997 {120, 0, 0}, 2998 {124, 0, 0}, 2999 {128, 0, 0}, 3000 {132, 0, 0}, 3001 {136, 0, 0}, 3002 {140, 0, 0}, 3003 {144, 0, 0}, 3004 {148, 0, 0}, 3005 {152, 0, 0}, 3006 {156, 0, 0}, 3007 {160, 0, 0}, 3008 {172, 0, 0}, 3009 {176, 0, 0}, 3010 {192, 0, 0}, 3011 {204, 0, 0}, 3012 {208, 0, 0}, 3013 {224, 0, 0}, 3014 {236, 0, 0}, 3015 {240, 0, 0}, 3016 {248, 0, 0}, 3017 {256, 0, 0}, 3018 {272, 0, 0}, 3019 {288, 0, 0}, 3020 {292, 0, 0}, 3021 {296, 0, 0}, 3022 {300, 0, 0}, 3023 {304, 0, 0}, 3024 {316, 0, 0}, 3025 {320, 0, 0}, 3026 {332, 0, 0}, 3027 {336, 0, 0}, 3028 {348, 0, 0}, 3029 {352, 0, 0}, 3030 {364, 0, 0}, 3031 {368, 0, 0}, 3032 {372, 0, 0}, 3033 {376, 0, 0}, 3034 {384, 0, 0}, 3035 {392, 0, 0}, 3036 {400, 0, 0}, 3037 {416, 0, 0}, 3038 {424, 0, 0}, 3039 {432, 0, 0}, 3040 {448, 0, 0}, 3041 {460, 0, 0}, 3042 {464, 0, 0}, 3043 {468, 0, 0}, 3044 {472, 0, 0}, 3045 {476, 0, 0}, 3046 {480, 0, 0}, 3047 {488, 0, 0}, 3048 {492, 0, 0}, 3049 {496, 0, 0}, 3050 {512, 0, 0}, 3051 {640, 0, 0}, 3052 {1111111111111111111, 0, 0}, 3053 {0, 14, 17}, 3054 {0, 37, 31}, 3055 {0, 21, 39}, 3056 {0, 24, 23}, 3057 {0, 5, 13}, 3058 {0, 38, 76}, 3059 {0, 51, 77}, 3060 {0, 55, 53}, 3061 {0, 58, 56}, 3062 {0, 64, 61}, 3063 {0, 67, 66}, 3064 {0, 70, 68}, 3065 {0, 54, 71}, 3066 {0, 62, 60}, 3067 {0, 65, 63}, 3068 {0, 73, 72}, 3069 {0, 59, 57}, 3070 {0, 52, 74}, 3071 {0, 50, 69}, 3072 {0, 49, 47}, 3073 {0, 48, 46}, 3074 {0, 45, 43}, 3075 {0, 42, 44}, 3076 {0, 78, 41}, 3077 {0, 20, 18}, 3078 {0, 80, 79}, 3079 {0, 15, 27}, 3080 {0, 7, 34}, 3081 {0, 81, 6}, 3082 {0, 28, 3}, 3083 {0, 35, 82}, 3084 {0, 9, 36}, 3085 {0, 84, 83}, 3086 {0, 86, 85}, 3087 {0, 88, 87}, 3088 {0, 90, 89}, 3089 {0, 92, 91}, 3090 {0, 94, 93}, 3091 {0, 96, 95}, 3092 {0, 98, 97}, 3093 {0, 11, 29}, 3094 {0, 99, 25}, 3095 {0, 100, 40}, 3096 {0, 102, 101}, 3097 {0, 26, 32}, 3098 {0, 19, 30}, 3099 {0, 16, 12}, 3100 {0, 4, 8}, 3101 {0, 104, 103}, 3102 {0, 106, 105}, 3103 {0, 33, 107}, 3104 {0, 109, 108}, 3105 {0, 111, 110}, 3106 {0, 22, 112}, 3107 {0, 113, 10}, 3108 {0, 115, 114}, 3109 {0, 75, 116}, 3110 {0, 118, 117}, 3111 {0, 119, 1}, 3112 {0, 121, 120}, 3113 {0, 123, 122}, 3114 {0, 125, 124}, 3115 {0, 127, 126}, 3116 {0, 129, 128}, 3117 {0, 131, 130}, 3118 {0, 132, 2}, 3119 {0, 134, 133}, 3120 {0, 136, 135}, 3121 {0, 138, 137}, 3122 {0, 140, 139}, 3123 {0, 142, 141}, 3124 {0, 144, 143}, 3125 {0, 146, 145}, 3126 {0, 148, 147}, 3127 })); 3128 3129 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpMemberDecorate, 3), std::move(codec)); 3130 } 3131 3132 { 3133 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(11, { 3134 {0, 0, 0}, 3135 {0, 0, 0}, 3136 {1, 0, 0}, 3137 {2, 0, 0}, 3138 {3, 0, 0}, 3139 {4, 0, 0}, 3140 {1111111111111111111, 0, 0}, 3141 {0, 2, 6}, 3142 {0, 4, 7}, 3143 {0, 8, 3}, 3144 {0, 9, 5}, 3145 {0, 1, 10}, 3146 })); 3147 3148 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpVectorShuffle, 4), std::move(codec)); 3149 } 3150 3151 { 3152 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(13, { 3153 {0, 0, 0}, 3154 {0, 0, 0}, 3155 {1, 0, 0}, 3156 {2, 0, 0}, 3157 {3, 0, 0}, 3158 {4, 0, 0}, 3159 {5, 0, 0}, 3160 {1111111111111111111, 0, 0}, 3161 {0, 3, 7}, 3162 {0, 8, 5}, 3163 {0, 9, 1}, 3164 {0, 4, 10}, 3165 {0, 11, 6}, 3166 {0, 2, 12}, 3167 })); 3168 3169 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpVectorShuffle, 5), std::move(codec)); 3170 } 3171 3172 { 3173 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(15, { 3174 {0, 0, 0}, 3175 {0, 0, 0}, 3176 {1, 0, 0}, 3177 {2, 0, 0}, 3178 {3, 0, 0}, 3179 {4, 0, 0}, 3180 {5, 0, 0}, 3181 {6, 0, 0}, 3182 {1111111111111111111, 0, 0}, 3183 {0, 6, 8}, 3184 {0, 5, 2}, 3185 {0, 10, 9}, 3186 {0, 1, 4}, 3187 {0, 12, 11}, 3188 {0, 7, 13}, 3189 {0, 3, 14}, 3190 })); 3191 3192 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpVectorShuffle, 6), std::move(codec)); 3193 } 3194 3195 { 3196 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(15, { 3197 {0, 0, 0}, 3198 {0, 0, 0}, 3199 {1, 0, 0}, 3200 {2, 0, 0}, 3201 {3, 0, 0}, 3202 {4, 0, 0}, 3203 {5, 0, 0}, 3204 {6, 0, 0}, 3205 {1111111111111111111, 0, 0}, 3206 {0, 8, 5}, 3207 {0, 9, 7}, 3208 {0, 10, 3}, 3209 {0, 11, 2}, 3210 {0, 6, 1}, 3211 {0, 13, 12}, 3212 {0, 4, 14}, 3213 })); 3214 3215 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpVectorShuffle, 7), std::move(codec)); 3216 } 3217 3218 { 3219 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(61, { 3220 {0, 0, 0}, 3221 {0, 0, 0}, 3222 {1, 0, 0}, 3223 {2, 0, 0}, 3224 {3, 0, 0}, 3225 {4, 0, 0}, 3226 {5, 0, 0}, 3227 {6, 0, 0}, 3228 {7, 0, 0}, 3229 {8, 0, 0}, 3230 {9, 0, 0}, 3231 {10, 0, 0}, 3232 {11, 0, 0}, 3233 {12, 0, 0}, 3234 {13, 0, 0}, 3235 {14, 0, 0}, 3236 {15, 0, 0}, 3237 {16, 0, 0}, 3238 {17, 0, 0}, 3239 {18, 0, 0}, 3240 {19, 0, 0}, 3241 {20, 0, 0}, 3242 {21, 0, 0}, 3243 {22, 0, 0}, 3244 {23, 0, 0}, 3245 {24, 0, 0}, 3246 {27, 0, 0}, 3247 {28, 0, 0}, 3248 {29, 0, 0}, 3249 {30, 0, 0}, 3250 {31, 0, 0}, 3251 {1111111111111111111, 0, 0}, 3252 {0, 30, 16}, 3253 {0, 26, 27}, 3254 {0, 29, 28}, 3255 {0, 18, 22}, 3256 {0, 12, 19}, 3257 {0, 15, 20}, 3258 {0, 14, 23}, 3259 {0, 32, 7}, 3260 {0, 8, 21}, 3261 {0, 11, 33}, 3262 {0, 17, 34}, 3263 {0, 25, 13}, 3264 {0, 36, 35}, 3265 {0, 9, 10}, 3266 {0, 38, 37}, 3267 {0, 39, 31}, 3268 {0, 5, 40}, 3269 {0, 42, 41}, 3270 {0, 44, 43}, 3271 {0, 6, 45}, 3272 {0, 46, 24}, 3273 {0, 48, 47}, 3274 {0, 50, 49}, 3275 {0, 52, 51}, 3276 {0, 54, 53}, 3277 {0, 55, 4}, 3278 {0, 56, 3}, 3279 {0, 57, 2}, 3280 {0, 58, 1}, 3281 {0, 60, 59}, 3282 })); 3283 3284 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCompositeExtract, 3), std::move(codec)); 3285 } 3286 3287 { 3288 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(63, { 3289 {0, 0, 0}, 3290 {0, 0, 0}, 3291 {1, 0, 0}, 3292 {2, 0, 0}, 3293 {3, 0, 0}, 3294 {4, 0, 0}, 3295 {5, 0, 0}, 3296 {6, 0, 0}, 3297 {7, 0, 0}, 3298 {8, 0, 0}, 3299 {9, 0, 0}, 3300 {10, 0, 0}, 3301 {11, 0, 0}, 3302 {12, 0, 0}, 3303 {13, 0, 0}, 3304 {29, 0, 0}, 3305 {30, 0, 0}, 3306 {31, 0, 0}, 3307 {32, 0, 0}, 3308 {33, 0, 0}, 3309 {34, 0, 0}, 3310 {35, 0, 0}, 3311 {36, 0, 0}, 3312 {37, 0, 0}, 3313 {38, 0, 0}, 3314 {39, 0, 0}, 3315 {40, 0, 0}, 3316 {41, 0, 0}, 3317 {42, 0, 0}, 3318 {43, 0, 0}, 3319 {44, 0, 0}, 3320 {45, 0, 0}, 3321 {1111111111111111111, 0, 0}, 3322 {0, 13, 14}, 3323 {0, 12, 9}, 3324 {0, 11, 25}, 3325 {0, 27, 26}, 3326 {0, 29, 28}, 3327 {0, 31, 30}, 3328 {0, 23, 22}, 3329 {0, 10, 24}, 3330 {0, 8, 21}, 3331 {0, 17, 7}, 3332 {0, 19, 18}, 3333 {0, 15, 20}, 3334 {0, 6, 16}, 3335 {0, 5, 33}, 3336 {0, 35, 34}, 3337 {0, 37, 36}, 3338 {0, 39, 38}, 3339 {0, 41, 40}, 3340 {0, 43, 42}, 3341 {0, 45, 44}, 3342 {0, 47, 46}, 3343 {0, 49, 48}, 3344 {0, 51, 50}, 3345 {0, 32, 52}, 3346 {0, 54, 53}, 3347 {0, 56, 55}, 3348 {0, 58, 57}, 3349 {0, 3, 2}, 3350 {0, 59, 4}, 3351 {0, 60, 1}, 3352 {0, 62, 61}, 3353 })); 3354 3355 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCompositeExtract, 4), std::move(codec)); 3356 } 3357 3358 { 3359 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 3360 {0, 0, 0}, 3361 {0, 0, 0}, 3362 {1, 0, 0}, 3363 {2, 0, 0}, 3364 {3, 0, 0}, 3365 {1111111111111111111, 0, 0}, 3366 {0, 1, 5}, 3367 {0, 3, 2}, 3368 {0, 6, 4}, 3369 {0, 8, 7}, 3370 })); 3371 3372 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCompositeExtract, 5), std::move(codec)); 3373 } 3374 3375 { 3376 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(23, { 3377 {0, 0, 0}, 3378 {0, 0, 0}, 3379 {1, 0, 0}, 3380 {2, 0, 0}, 3381 {3, 0, 0}, 3382 {4, 0, 0}, 3383 {5, 0, 0}, 3384 {6, 0, 0}, 3385 {7, 0, 0}, 3386 {8, 0, 0}, 3387 {9, 0, 0}, 3388 {10, 0, 0}, 3389 {1111111111111111111, 0, 0}, 3390 {0, 12, 11}, 3391 {0, 10, 13}, 3392 {0, 9, 14}, 3393 {0, 7, 5}, 3394 {0, 8, 6}, 3395 {0, 4, 15}, 3396 {0, 17, 16}, 3397 {0, 18, 3}, 3398 {0, 19, 2}, 3399 {0, 20, 1}, 3400 {0, 22, 21}, 3401 })); 3402 3403 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCompositeInsert, 4), std::move(codec)); 3404 } 3405 3406 { 3407 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 3408 {0, 0, 0}, 3409 {0, 0, 0}, 3410 {1, 0, 0}, 3411 {2, 0, 0}, 3412 {3, 0, 0}, 3413 {1111111111111111111, 0, 0}, 3414 {0, 3, 5}, 3415 {0, 2, 6}, 3416 {0, 7, 1}, 3417 {0, 4, 8}, 3418 })); 3419 3420 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCompositeInsert, 5), std::move(codec)); 3421 } 3422 3423 { 3424 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 3425 {0, 0, 0}, 3426 {1, 0, 0}, 3427 {1111111111111111111, 0, 0}, 3428 {0, 1, 2}, 3429 })); 3430 3431 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpImageSampleImplicitLod, 4), std::move(codec)); 3432 } 3433 3434 { 3435 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 3436 {0, 0, 0}, 3437 {2, 0, 0}, 3438 {10, 0, 0}, 3439 {1111111111111111111, 0, 0}, 3440 {0, 2, 3}, 3441 {0, 1, 4}, 3442 })); 3443 3444 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpImageSampleExplicitLod, 4), std::move(codec)); 3445 } 3446 3447 { 3448 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 3449 {0, 0, 0}, 3450 {2, 0, 0}, 3451 {1111111111111111111, 0, 0}, 3452 {0, 1, 2}, 3453 })); 3454 3455 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpImageSampleDrefExplicitLod, 5), std::move(codec)); 3456 } 3457 3458 { 3459 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 3460 {0, 0, 0}, 3461 {0, 0, 0}, 3462 {1111111111111111111, 0, 0}, 3463 {0, 1, 2}, 3464 })); 3465 3466 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpSelectionMerge, 1), std::move(codec)); 3467 } 3468 3469 return codecs; 3470} 3471 3472std::map<std::pair<uint32_t, uint32_t>, std::unique_ptr<HuffmanCodec<uint64_t>>> 3473GetIdDescriptorHuffmanCodecs() { 3474 std::map<std::pair<uint32_t, uint32_t>, std::unique_ptr<HuffmanCodec<uint64_t>>> codecs; 3475 { 3476 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 3477 {0, 0, 0}, 3478 {679771963, 0, 0}, 3479 {1951208733, 0, 0}, 3480 {2320303498, 0, 0}, 3481 {3334207724, 0, 0}, 3482 {1111111111111111111, 0, 0}, 3483 {0, 3, 5}, 3484 {0, 4, 6}, 3485 {0, 1, 7}, 3486 {0, 2, 8}, 3487 })); 3488 3489 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpExtInst, 0), std::move(codec)); 3490 } 3491 3492 { 3493 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(63, { 3494 {0, 0, 0}, 3495 {34183582, 0, 0}, 3496 {223800276, 0, 0}, 3497 {295018543, 0, 0}, 3498 {439764402, 0, 0}, 3499 {443558693, 0, 0}, 3500 {583624926, 0, 0}, 3501 {599185303, 0, 0}, 3502 {779021139, 0, 0}, 3503 {1015552308, 0, 0}, 3504 {1027242654, 0, 0}, 3505 {1077859090, 0, 0}, 3506 {1104362365, 0, 0}, 3507 {1132589448, 0, 0}, 3508 {1236389532, 0, 0}, 3509 {1739837626, 0, 0}, 3510 {1955104493, 0, 0}, 3511 {2161102232, 0, 0}, 3512 {2197874825, 0, 0}, 3513 {2217833278, 0, 0}, 3514 {2244470522, 0, 0}, 3515 {2532518896, 0, 0}, 3516 {2789375411, 0, 0}, 3517 {3061690214, 0, 0}, 3518 {3287039847, 0, 0}, 3519 {3357301402, 0, 0}, 3520 {3365041621, 0, 0}, 3521 {3510257966, 0, 0}, 3522 {3534235309, 0, 0}, 3523 {4018237905, 0, 0}, 3524 {4145966869, 0, 0}, 3525 {4272200782, 0, 0}, 3526 {1111111111111111111, 0, 0}, 3527 {0, 10, 19}, 3528 {0, 6, 1}, 3529 {0, 26, 13}, 3530 {0, 2, 11}, 3531 {0, 15, 22}, 3532 {0, 23, 18}, 3533 {0, 4, 27}, 3534 {0, 28, 12}, 3535 {0, 3, 30}, 3536 {0, 9, 7}, 3537 {0, 20, 14}, 3538 {0, 29, 16}, 3539 {0, 21, 8}, 3540 {0, 34, 33}, 3541 {0, 36, 35}, 3542 {0, 31, 25}, 3543 {0, 37, 24}, 3544 {0, 39, 38}, 3545 {0, 41, 40}, 3546 {0, 43, 42}, 3547 {0, 45, 44}, 3548 {0, 17, 5}, 3549 {0, 47, 46}, 3550 {0, 49, 48}, 3551 {0, 51, 50}, 3552 {0, 53, 52}, 3553 {0, 55, 54}, 3554 {0, 57, 56}, 3555 {0, 59, 58}, 3556 {0, 61, 60}, 3557 {0, 32, 62}, 3558 })); 3559 3560 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpExtInst, 1), std::move(codec)); 3561 } 3562 3563 { 3564 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 3565 {0, 0, 0}, 3566 {4228502127, 0, 0}, 3567 {1111111111111111111, 0, 0}, 3568 {0, 1, 2}, 3569 })); 3570 3571 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpExtInst, 2), std::move(codec)); 3572 } 3573 3574 { 3575 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(113, { 3576 {0, 0, 0}, 3577 {50998433, 0, 0}, 3578 {139011596, 0, 0}, 3579 {181902171, 0, 0}, 3580 {296981500, 0, 0}, 3581 {321630747, 0, 0}, 3582 {416853049, 0, 0}, 3583 {464259778, 0, 0}, 3584 {615982737, 0, 0}, 3585 {669982125, 0, 0}, 3586 {759277550, 0, 0}, 3587 {810488476, 0, 0}, 3588 {870594305, 0, 0}, 3589 {922996215, 0, 0}, 3590 {969500141, 0, 0}, 3591 {1015552308, 0, 0}, 3592 {1139547465, 0, 0}, 3593 {1203545131, 0, 0}, 3594 {1220643281, 0, 0}, 3595 {1220749418, 0, 0}, 3596 {1367301635, 0, 0}, 3597 {1395923345, 0, 0}, 3598 {1554194368, 0, 0}, 3599 {1742737136, 0, 0}, 3600 {1755648697, 0, 0}, 3601 {1962162282, 0, 0}, 3602 {1964254745, 0, 0}, 3603 {2055836767, 0, 0}, 3604 {2096388952, 0, 0}, 3605 {2124837447, 0, 0}, 3606 {2161102232, 0, 0}, 3607 {2321729979, 0, 0}, 3608 {2346547796, 0, 0}, 3609 {2399809085, 0, 0}, 3610 {2432827426, 0, 0}, 3611 {2455417440, 0, 0}, 3612 {2572638469, 0, 0}, 3613 {2614879967, 0, 0}, 3614 {2855506940, 0, 0}, 3615 {2919796598, 0, 0}, 3616 {2970183398, 0, 0}, 3617 {2976066508, 0, 0}, 3618 {3044188332, 0, 0}, 3619 {3061690214, 0, 0}, 3620 {3091876332, 0, 0}, 3621 {3104643263, 0, 0}, 3622 {3107165180, 0, 0}, 3623 {3187066832, 0, 0}, 3624 {3413713311, 0, 0}, 3625 {3487022798, 0, 0}, 3626 {3602693817, 0, 0}, 3627 {3678875745, 0, 0}, 3628 {3701632935, 0, 0}, 3629 {3829325073, 0, 0}, 3630 {4040340620, 0, 0}, 3631 {4174489262, 0, 0}, 3632 {4272200782, 0, 0}, 3633 {1111111111111111111, 0, 0}, 3634 {0, 33, 7}, 3635 {0, 13, 34}, 3636 {0, 21, 18}, 3637 {0, 53, 22}, 3638 {0, 39, 1}, 3639 {0, 14, 9}, 3640 {0, 43, 26}, 3641 {0, 51, 35}, 3642 {0, 19, 6}, 3643 {0, 15, 25}, 3644 {0, 55, 29}, 3645 {0, 32, 3}, 3646 {0, 27, 44}, 3647 {0, 10, 46}, 3648 {0, 45, 24}, 3649 {0, 36, 40}, 3650 {0, 47, 8}, 3651 {0, 48, 54}, 3652 {0, 58, 5}, 3653 {0, 60, 59}, 3654 {0, 30, 61}, 3655 {0, 62, 56}, 3656 {0, 64, 63}, 3657 {0, 41, 50}, 3658 {0, 66, 65}, 3659 {0, 68, 67}, 3660 {0, 70, 69}, 3661 {0, 37, 31}, 3662 {0, 4, 17}, 3663 {0, 16, 20}, 3664 {0, 72, 71}, 3665 {0, 73, 52}, 3666 {0, 49, 12}, 3667 {0, 75, 74}, 3668 {0, 76, 11}, 3669 {0, 23, 42}, 3670 {0, 78, 77}, 3671 {0, 80, 79}, 3672 {0, 82, 81}, 3673 {0, 84, 83}, 3674 {0, 85, 28}, 3675 {0, 87, 86}, 3676 {0, 89, 88}, 3677 {0, 91, 90}, 3678 {0, 93, 92}, 3679 {0, 94, 2}, 3680 {0, 96, 95}, 3681 {0, 98, 97}, 3682 {0, 100, 99}, 3683 {0, 102, 101}, 3684 {0, 38, 103}, 3685 {0, 105, 104}, 3686 {0, 107, 106}, 3687 {0, 109, 108}, 3688 {0, 111, 110}, 3689 {0, 57, 112}, 3690 })); 3691 3692 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpExtInst, 4), std::move(codec)); 3693 } 3694 3695 { 3696 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(127, { 3697 {0, 0, 0}, 3698 {72782198, 0, 0}, 3699 {139011596, 0, 0}, 3700 {296981500, 0, 0}, 3701 {300939750, 0, 0}, 3702 {401211099, 0, 0}, 3703 {429277936, 0, 0}, 3704 {505940164, 0, 0}, 3705 {538168945, 0, 0}, 3706 {603915804, 0, 0}, 3707 {688216667, 0, 0}, 3708 {706016261, 0, 0}, 3709 {790502615, 0, 0}, 3710 {810488476, 0, 0}, 3711 {993150979, 0, 0}, 3712 {1203545131, 0, 0}, 3713 {1206726575, 0, 0}, 3714 {1265796414, 0, 0}, 3715 {1314843976, 0, 0}, 3716 {1367301635, 0, 0}, 3717 {1378082995, 0, 0}, 3718 {1410311776, 0, 0}, 3719 {1443829854, 0, 0}, 3720 {1448448666, 0, 0}, 3721 {1468919488, 0, 0}, 3722 {1496351055, 0, 0}, 3723 {1619778288, 0, 0}, 3724 {1684282922, 0, 0}, 3725 {1848784182, 0, 0}, 3726 {1901166356, 0, 0}, 3727 {2095546797, 0, 0}, 3728 {2096388952, 0, 0}, 3729 {2162986400, 0, 0}, 3730 {2197874825, 0, 0}, 3731 {2246405597, 0, 0}, 3732 {2250225826, 0, 0}, 3733 {2282454607, 0, 0}, 3734 {2328748202, 0, 0}, 3735 {2348201466, 0, 0}, 3736 {2597020383, 0, 0}, 3737 {2633682514, 0, 0}, 3738 {2817335337, 0, 0}, 3739 {2855506940, 0, 0}, 3740 {2936040203, 0, 0}, 3741 {2955375511, 0, 0}, 3742 {3122368657, 0, 0}, 3743 {3154597438, 0, 0}, 3744 {3184381405, 0, 0}, 3745 {3187066832, 0, 0}, 3746 {3233393284, 0, 0}, 3747 {3251128023, 0, 0}, 3748 {3260309823, 0, 0}, 3749 {3441531391, 0, 0}, 3750 {3496407048, 0, 0}, 3751 {3582002820, 0, 0}, 3752 {3647586740, 0, 0}, 3753 {3653838348, 0, 0}, 3754 {3730093054, 0, 0}, 3755 {3759072440, 0, 0}, 3756 {3928764629, 0, 0}, 3757 {3969279737, 0, 0}, 3758 {3994511488, 0, 0}, 3759 {4026740269, 0, 0}, 3760 {4274214049, 0, 0}, 3761 {1111111111111111111, 0, 0}, 3762 {0, 43, 23}, 3763 {0, 5, 24}, 3764 {0, 9, 8}, 3765 {0, 36, 21}, 3766 {0, 13, 46}, 3767 {0, 7, 12}, 3768 {0, 35, 20}, 3769 {0, 61, 59}, 3770 {0, 22, 29}, 3771 {0, 38, 62}, 3772 {0, 56, 45}, 3773 {0, 6, 48}, 3774 {0, 33, 30}, 3775 {0, 14, 58}, 3776 {0, 34, 28}, 3777 {0, 51, 40}, 3778 {0, 63, 55}, 3779 {0, 25, 16}, 3780 {0, 17, 11}, 3781 {0, 53, 52}, 3782 {0, 65, 27}, 3783 {0, 39, 41}, 3784 {0, 67, 66}, 3785 {0, 69, 68}, 3786 {0, 10, 4}, 3787 {0, 37, 18}, 3788 {0, 60, 47}, 3789 {0, 1, 32}, 3790 {0, 71, 70}, 3791 {0, 73, 72}, 3792 {0, 57, 26}, 3793 {0, 74, 31}, 3794 {0, 76, 75}, 3795 {0, 77, 44}, 3796 {0, 78, 15}, 3797 {0, 79, 54}, 3798 {0, 81, 80}, 3799 {0, 82, 49}, 3800 {0, 84, 83}, 3801 {0, 86, 85}, 3802 {0, 88, 87}, 3803 {0, 89, 19}, 3804 {0, 91, 90}, 3805 {0, 93, 92}, 3806 {0, 95, 94}, 3807 {0, 2, 96}, 3808 {0, 98, 97}, 3809 {0, 100, 99}, 3810 {0, 102, 101}, 3811 {0, 104, 103}, 3812 {0, 106, 105}, 3813 {0, 3, 107}, 3814 {0, 109, 108}, 3815 {0, 111, 110}, 3816 {0, 113, 112}, 3817 {0, 114, 50}, 3818 {0, 116, 115}, 3819 {0, 118, 117}, 3820 {0, 120, 119}, 3821 {0, 122, 121}, 3822 {0, 124, 123}, 3823 {0, 64, 42}, 3824 {0, 126, 125}, 3825 })); 3826 3827 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpExtInst, 5), std::move(codec)); 3828 } 3829 3830 { 3831 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(93, { 3832 {0, 0, 0}, 3833 {99347751, 0, 0}, 3834 {102542696, 0, 0}, 3835 {107497541, 0, 0}, 3836 {112452386, 0, 0}, 3837 {139011596, 0, 0}, 3838 {296981500, 0, 0}, 3839 {429277936, 0, 0}, 3840 {451957774, 0, 0}, 3841 {508217552, 0, 0}, 3842 {573901046, 0, 0}, 3843 {774727851, 0, 0}, 3844 {801484894, 0, 0}, 3845 {920604853, 0, 0}, 3846 {925559698, 0, 0}, 3847 {1022915255, 0, 0}, 3848 {1209418480, 0, 0}, 3849 {1287937401, 0, 0}, 3850 {1319785741, 0, 0}, 3851 {1392080469, 0, 0}, 3852 {1538342947, 0, 0}, 3853 {1541020250, 0, 0}, 3854 {1587209598, 0, 0}, 3855 {1594733696, 0, 0}, 3856 {1631434666, 0, 0}, 3857 {1636389511, 0, 0}, 3858 {1684282922, 0, 0}, 3859 {1859128680, 0, 0}, 3860 {1901166356, 0, 0}, 3861 {2004567202, 0, 0}, 3862 {2119793999, 0, 0}, 3863 {2280400314, 0, 0}, 3864 {2538917932, 0, 0}, 3865 {2677264274, 0, 0}, 3866 {2683080096, 0, 0}, 3867 {2854085372, 0, 0}, 3868 {2879917501, 0, 0}, 3869 {3059119137, 0, 0}, 3870 {3174324790, 0, 0}, 3871 {3194725903, 0, 0}, 3872 {3358097187, 0, 0}, 3873 {3547456240, 0, 0}, 3874 {3614752756, 0, 0}, 3875 {3753486980, 0, 0}, 3876 {3811268385, 0, 0}, 3877 {3953733490, 0, 0}, 3878 {3990925720, 0, 0}, 3879 {1111111111111111111, 0, 0}, 3880 {0, 23, 22}, 3881 {0, 36, 31}, 3882 {0, 17, 40}, 3883 {0, 27, 19}, 3884 {0, 35, 33}, 3885 {0, 30, 38}, 3886 {0, 42, 39}, 3887 {0, 46, 32}, 3888 {0, 13, 12}, 3889 {0, 44, 14}, 3890 {0, 29, 11}, 3891 {0, 10, 18}, 3892 {0, 15, 37}, 3893 {0, 1, 4}, 3894 {0, 45, 2}, 3895 {0, 21, 28}, 3896 {0, 8, 5}, 3897 {0, 49, 48}, 3898 {0, 51, 50}, 3899 {0, 53, 52}, 3900 {0, 54, 16}, 3901 {0, 55, 25}, 3902 {0, 56, 3}, 3903 {0, 58, 57}, 3904 {0, 59, 26}, 3905 {0, 20, 7}, 3906 {0, 61, 60}, 3907 {0, 62, 24}, 3908 {0, 41, 63}, 3909 {0, 65, 64}, 3910 {0, 9, 34}, 3911 {0, 67, 66}, 3912 {0, 69, 68}, 3913 {0, 71, 70}, 3914 {0, 73, 72}, 3915 {0, 75, 74}, 3916 {0, 76, 43}, 3917 {0, 78, 77}, 3918 {0, 80, 79}, 3919 {0, 82, 81}, 3920 {0, 84, 83}, 3921 {0, 86, 85}, 3922 {0, 88, 87}, 3923 {0, 90, 89}, 3924 {0, 47, 91}, 3925 {0, 92, 6}, 3926 })); 3927 3928 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpExtInst, 6), std::move(codec)); 3929 } 3930 3931 { 3932 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(15, { 3933 {0, 0, 0}, 3934 {166253838, 0, 0}, 3935 {679771963, 0, 0}, 3936 {1247793383, 0, 0}, 3937 {2261697609, 0, 0}, 3938 {2263349224, 0, 0}, 3939 {2320303498, 0, 0}, 3940 {3334207724, 0, 0}, 3941 {1111111111111111111, 0, 0}, 3942 {0, 4, 8}, 3943 {0, 9, 1}, 3944 {0, 3, 5}, 3945 {0, 11, 10}, 3946 {0, 2, 12}, 3947 {0, 7, 6}, 3948 {0, 14, 13}, 3949 })); 3950 3951 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeVector, 0), std::move(codec)); 3952 } 3953 3954 { 3955 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 3956 {0, 0, 0}, 3957 {789872778, 0, 0}, 3958 {1415510495, 0, 0}, 3959 {1951208733, 0, 0}, 3960 {2430404313, 0, 0}, 3961 {1111111111111111111, 0, 0}, 3962 {0, 2, 5}, 3963 {0, 4, 6}, 3964 {0, 7, 1}, 3965 {0, 3, 8}, 3966 })); 3967 3968 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeVector, 1), std::move(codec)); 3969 } 3970 3971 { 3972 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(15, { 3973 {0, 0, 0}, 3974 {1389644742, 0, 0}, 3975 {3232633974, 0, 0}, 3976 {3278176820, 0, 0}, 3977 {3648138580, 0, 0}, 3978 {3687777340, 0, 0}, 3979 {3694383800, 0, 0}, 3980 {3697687030, 0, 0}, 3981 {1111111111111111111, 0, 0}, 3982 {0, 5, 4}, 3983 {0, 9, 6}, 3984 {0, 10, 8}, 3985 {0, 2, 11}, 3986 {0, 12, 3}, 3987 {0, 1, 13}, 3988 {0, 14, 7}, 3989 })); 3990 3991 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeArray, 0), std::move(codec)); 3992 } 3993 3994 { 3995 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 3996 {0, 0, 0}, 3997 {1951208733, 0, 0}, 3998 {2160380860, 0, 0}, 3999 {3334207724, 0, 0}, 4000 {1111111111111111111, 0, 0}, 4001 {0, 1, 4}, 4002 {0, 2, 5}, 4003 {0, 3, 6}, 4004 })); 4005 4006 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeArray, 1), std::move(codec)); 4007 } 4008 4009 { 4010 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(13, { 4011 {0, 0, 0}, 4012 {144116905, 0, 0}, 4013 {827246872, 0, 0}, 4014 {1545298048, 0, 0}, 4015 {2715370488, 0, 0}, 4016 {2798552666, 0, 0}, 4017 {3812456892, 0, 0}, 4018 {1111111111111111111, 0, 0}, 4019 {0, 2, 3}, 4020 {0, 8, 6}, 4021 {0, 9, 7}, 4022 {0, 1, 10}, 4023 {0, 11, 4}, 4024 {0, 5, 12}, 4025 })); 4026 4027 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeArray, 2), std::move(codec)); 4028 } 4029 4030 { 4031 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(67, { 4032 {0, 0, 0}, 4033 {40653745, 0, 0}, 4034 {119981689, 0, 0}, 4035 {153085016, 0, 0}, 4036 {451382997, 0, 0}, 4037 {545678922, 0, 0}, 4038 {899570100, 0, 0}, 4039 {929101967, 0, 0}, 4040 {1070791291, 0, 0}, 4041 {1100599986, 0, 0}, 4042 {1103903216, 0, 0}, 4043 {1154919607, 0, 0}, 4044 {1199157863, 0, 0}, 4045 {1258105452, 0, 0}, 4046 {1369578001, 0, 0}, 4047 {1372881231, 0, 0}, 4048 {1674803691, 0, 0}, 4049 {1677700667, 0, 0}, 4050 {1989520052, 0, 0}, 4051 {2593884753, 0, 0}, 4052 {2664825925, 0, 0}, 4053 {2924146124, 0, 0}, 4054 {2926633629, 0, 0}, 4055 {3249265647, 0, 0}, 4056 {3345288309, 0, 0}, 4057 {3410158390, 0, 0}, 4058 {3489360962, 0, 0}, 4059 {3495967422, 0, 0}, 4060 {3504981554, 0, 0}, 4061 {3705139860, 0, 0}, 4062 {3822983876, 0, 0}, 4063 {4141567741, 0, 0}, 4064 {4234287173, 0, 0}, 4065 {4240893633, 0, 0}, 4066 {1111111111111111111, 0, 0}, 4067 {0, 15, 23}, 4068 {0, 20, 17}, 4069 {0, 32, 22}, 4070 {0, 19, 12}, 4071 {0, 13, 3}, 4072 {0, 30, 27}, 4073 {0, 4, 35}, 4074 {0, 24, 36}, 4075 {0, 31, 37}, 4076 {0, 33, 38}, 4077 {0, 39, 7}, 4078 {0, 6, 40}, 4079 {0, 41, 29}, 4080 {0, 14, 42}, 4081 {0, 43, 28}, 4082 {0, 10, 44}, 4083 {0, 45, 18}, 4084 {0, 26, 46}, 4085 {0, 5, 47}, 4086 {0, 48, 2}, 4087 {0, 49, 9}, 4088 {0, 50, 16}, 4089 {0, 34, 25}, 4090 {0, 52, 51}, 4091 {0, 54, 53}, 4092 {0, 56, 55}, 4093 {0, 58, 57}, 4094 {0, 60, 59}, 4095 {0, 8, 21}, 4096 {0, 1, 11}, 4097 {0, 62, 61}, 4098 {0, 64, 63}, 4099 {0, 66, 65}, 4100 })); 4101 4102 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 0), std::move(codec)); 4103 } 4104 4105 { 4106 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(11, { 4107 {0, 0, 0}, 4108 {679771963, 0, 0}, 4109 {1951208733, 0, 0}, 4110 {2160380860, 0, 0}, 4111 {3278176820, 0, 0}, 4112 {3334207724, 0, 0}, 4113 {1111111111111111111, 0, 0}, 4114 {0, 4, 6}, 4115 {0, 2, 7}, 4116 {0, 3, 8}, 4117 {0, 9, 1}, 4118 {0, 5, 10}, 4119 })); 4120 4121 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 1), std::move(codec)); 4122 } 4123 4124 { 4125 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(13, { 4126 {0, 0, 0}, 4127 {679771963, 0, 0}, 4128 {1951208733, 0, 0}, 4129 {2160380860, 0, 0}, 4130 {2320303498, 0, 0}, 4131 {3232633974, 0, 0}, 4132 {3334207724, 0, 0}, 4133 {1111111111111111111, 0, 0}, 4134 {0, 5, 7}, 4135 {0, 2, 8}, 4136 {0, 4, 9}, 4137 {0, 10, 3}, 4138 {0, 1, 6}, 4139 {0, 12, 11}, 4140 })); 4141 4142 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 2), std::move(codec)); 4143 } 4144 4145 { 4146 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(11, { 4147 {0, 0, 0}, 4148 {679771963, 0, 0}, 4149 {1951208733, 0, 0}, 4150 {2160380860, 0, 0}, 4151 {2320303498, 0, 0}, 4152 {3334207724, 0, 0}, 4153 {1111111111111111111, 0, 0}, 4154 {0, 5, 6}, 4155 {0, 1, 7}, 4156 {0, 3, 4}, 4157 {0, 8, 2}, 4158 {0, 10, 9}, 4159 })); 4160 4161 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 3), std::move(codec)); 4162 } 4163 4164 { 4165 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(11, { 4166 {0, 0, 0}, 4167 {679771963, 0, 0}, 4168 {1951208733, 0, 0}, 4169 {2160380860, 0, 0}, 4170 {2320303498, 0, 0}, 4171 {3334207724, 0, 0}, 4172 {1111111111111111111, 0, 0}, 4173 {0, 2, 6}, 4174 {0, 3, 7}, 4175 {0, 5, 4}, 4176 {0, 8, 1}, 4177 {0, 10, 9}, 4178 })); 4179 4180 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 4), std::move(codec)); 4181 } 4182 4183 { 4184 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 4185 {0, 0, 0}, 4186 {679771963, 0, 0}, 4187 {1951208733, 0, 0}, 4188 {2263349224, 0, 0}, 4189 {3334207724, 0, 0}, 4190 {1111111111111111111, 0, 0}, 4191 {0, 3, 5}, 4192 {0, 1, 6}, 4193 {0, 2, 7}, 4194 {0, 8, 4}, 4195 })); 4196 4197 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 5), std::move(codec)); 4198 } 4199 4200 { 4201 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 4202 {0, 0, 0}, 4203 {679771963, 0, 0}, 4204 {1951208733, 0, 0}, 4205 {2320303498, 0, 0}, 4206 {3334207724, 0, 0}, 4207 {1111111111111111111, 0, 0}, 4208 {0, 3, 5}, 4209 {0, 1, 6}, 4210 {0, 2, 7}, 4211 {0, 8, 4}, 4212 })); 4213 4214 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 6), std::move(codec)); 4215 } 4216 4217 { 4218 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 4219 {0, 0, 0}, 4220 {679771963, 0, 0}, 4221 {1951208733, 0, 0}, 4222 {2320303498, 0, 0}, 4223 {3334207724, 0, 0}, 4224 {1111111111111111111, 0, 0}, 4225 {0, 3, 5}, 4226 {0, 4, 6}, 4227 {0, 7, 1}, 4228 {0, 2, 8}, 4229 })); 4230 4231 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 7), std::move(codec)); 4232 } 4233 4234 { 4235 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 4236 {0, 0, 0}, 4237 {679771963, 0, 0}, 4238 {1951208733, 0, 0}, 4239 {2320303498, 0, 0}, 4240 {3334207724, 0, 0}, 4241 {1111111111111111111, 0, 0}, 4242 {0, 3, 5}, 4243 {0, 1, 6}, 4244 {0, 7, 4}, 4245 {0, 2, 8}, 4246 })); 4247 4248 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 8), std::move(codec)); 4249 } 4250 4251 { 4252 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 4253 {0, 0, 0}, 4254 {1951208733, 0, 0}, 4255 {2320303498, 0, 0}, 4256 {3334207724, 0, 0}, 4257 {1111111111111111111, 0, 0}, 4258 {0, 2, 4}, 4259 {0, 3, 5}, 4260 {0, 1, 6}, 4261 })); 4262 4263 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 9), std::move(codec)); 4264 } 4265 4266 { 4267 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 4268 {0, 0, 0}, 4269 {679771963, 0, 0}, 4270 {1951208733, 0, 0}, 4271 {2320303498, 0, 0}, 4272 {3334207724, 0, 0}, 4273 {1111111111111111111, 0, 0}, 4274 {0, 5, 3}, 4275 {0, 1, 6}, 4276 {0, 4, 7}, 4277 {0, 8, 2}, 4278 })); 4279 4280 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 10), std::move(codec)); 4281 } 4282 4283 { 4284 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 4285 {0, 0, 0}, 4286 {679771963, 0, 0}, 4287 {1951208733, 0, 0}, 4288 {2320303498, 0, 0}, 4289 {3334207724, 0, 0}, 4290 {1111111111111111111, 0, 0}, 4291 {0, 3, 5}, 4292 {0, 1, 6}, 4293 {0, 7, 4}, 4294 {0, 8, 2}, 4295 })); 4296 4297 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 11), std::move(codec)); 4298 } 4299 4300 { 4301 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 4302 {0, 0, 0}, 4303 {679771963, 0, 0}, 4304 {1951208733, 0, 0}, 4305 {1111111111111111111, 0, 0}, 4306 {0, 2, 3}, 4307 {0, 4, 1}, 4308 })); 4309 4310 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 12), std::move(codec)); 4311 } 4312 4313 { 4314 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 4315 {0, 0, 0}, 4316 {679771963, 0, 0}, 4317 {1951208733, 0, 0}, 4318 {2320303498, 0, 0}, 4319 {1111111111111111111, 0, 0}, 4320 {0, 3, 4}, 4321 {0, 1, 5}, 4322 {0, 2, 6}, 4323 })); 4324 4325 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 13), std::move(codec)); 4326 } 4327 4328 { 4329 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 4330 {0, 0, 0}, 4331 {679771963, 0, 0}, 4332 {1951208733, 0, 0}, 4333 {2320303498, 0, 0}, 4334 {3334207724, 0, 0}, 4335 {1111111111111111111, 0, 0}, 4336 {0, 4, 5}, 4337 {0, 3, 6}, 4338 {0, 7, 1}, 4339 {0, 8, 2}, 4340 })); 4341 4342 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 14), std::move(codec)); 4343 } 4344 4345 { 4346 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 4347 {0, 0, 0}, 4348 {679771963, 0, 0}, 4349 {1951208733, 0, 0}, 4350 {2320303498, 0, 0}, 4351 {1111111111111111111, 0, 0}, 4352 {0, 1, 4}, 4353 {0, 5, 3}, 4354 {0, 6, 2}, 4355 })); 4356 4357 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 15), std::move(codec)); 4358 } 4359 4360 { 4361 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 4362 {0, 0, 0}, 4363 {679771963, 0, 0}, 4364 {1951208733, 0, 0}, 4365 {2320303498, 0, 0}, 4366 {1111111111111111111, 0, 0}, 4367 {0, 3, 4}, 4368 {0, 2, 5}, 4369 {0, 1, 6}, 4370 })); 4371 4372 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 16), std::move(codec)); 4373 } 4374 4375 { 4376 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 4377 {0, 0, 0}, 4378 {679771963, 0, 0}, 4379 {1951208733, 0, 0}, 4380 {2320303498, 0, 0}, 4381 {3334207724, 0, 0}, 4382 {1111111111111111111, 0, 0}, 4383 {0, 3, 5}, 4384 {0, 4, 6}, 4385 {0, 7, 1}, 4386 {0, 8, 2}, 4387 })); 4388 4389 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 17), std::move(codec)); 4390 } 4391 4392 { 4393 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 4394 {0, 0, 0}, 4395 {679771963, 0, 0}, 4396 {1951208733, 0, 0}, 4397 {3334207724, 0, 0}, 4398 {1111111111111111111, 0, 0}, 4399 {0, 3, 4}, 4400 {0, 1, 5}, 4401 {0, 2, 6}, 4402 })); 4403 4404 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 18), std::move(codec)); 4405 } 4406 4407 { 4408 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 4409 {0, 0, 0}, 4410 {679771963, 0, 0}, 4411 {1951208733, 0, 0}, 4412 {2320303498, 0, 0}, 4413 {1111111111111111111, 0, 0}, 4414 {0, 1, 4}, 4415 {0, 3, 5}, 4416 {0, 2, 6}, 4417 })); 4418 4419 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 19), std::move(codec)); 4420 } 4421 4422 { 4423 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 4424 {0, 0, 0}, 4425 {679771963, 0, 0}, 4426 {1951208733, 0, 0}, 4427 {2320303498, 0, 0}, 4428 {1111111111111111111, 0, 0}, 4429 {0, 3, 4}, 4430 {0, 1, 5}, 4431 {0, 2, 6}, 4432 })); 4433 4434 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 20), std::move(codec)); 4435 } 4436 4437 { 4438 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 4439 {0, 0, 0}, 4440 {679771963, 0, 0}, 4441 {1951208733, 0, 0}, 4442 {2320303498, 0, 0}, 4443 {1111111111111111111, 0, 0}, 4444 {0, 1, 4}, 4445 {0, 2, 5}, 4446 {0, 3, 6}, 4447 })); 4448 4449 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 21), std::move(codec)); 4450 } 4451 4452 { 4453 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 4454 {0, 0, 0}, 4455 {679771963, 0, 0}, 4456 {1951208733, 0, 0}, 4457 {2320303498, 0, 0}, 4458 {3334207724, 0, 0}, 4459 {1111111111111111111, 0, 0}, 4460 {0, 5, 1}, 4461 {0, 2, 6}, 4462 {0, 3, 7}, 4463 {0, 8, 4}, 4464 })); 4465 4466 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 22), std::move(codec)); 4467 } 4468 4469 { 4470 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 4471 {0, 0, 0}, 4472 {679771963, 0, 0}, 4473 {1951208733, 0, 0}, 4474 {2320303498, 0, 0}, 4475 {3334207724, 0, 0}, 4476 {1111111111111111111, 0, 0}, 4477 {0, 1, 5}, 4478 {0, 2, 6}, 4479 {0, 4, 7}, 4480 {0, 8, 3}, 4481 })); 4482 4483 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 23), std::move(codec)); 4484 } 4485 4486 { 4487 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(11, { 4488 {0, 0, 0}, 4489 {679771963, 0, 0}, 4490 {1951208733, 0, 0}, 4491 {2160380860, 0, 0}, 4492 {2320303498, 0, 0}, 4493 {3334207724, 0, 0}, 4494 {1111111111111111111, 0, 0}, 4495 {0, 6, 4}, 4496 {0, 1, 7}, 4497 {0, 2, 8}, 4498 {0, 3, 9}, 4499 {0, 10, 5}, 4500 })); 4501 4502 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 24), std::move(codec)); 4503 } 4504 4505 { 4506 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 4507 {0, 0, 0}, 4508 {679771963, 0, 0}, 4509 {1951208733, 0, 0}, 4510 {2320303498, 0, 0}, 4511 {3334207724, 0, 0}, 4512 {1111111111111111111, 0, 0}, 4513 {0, 1, 5}, 4514 {0, 2, 6}, 4515 {0, 4, 7}, 4516 {0, 8, 3}, 4517 })); 4518 4519 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 25), std::move(codec)); 4520 } 4521 4522 { 4523 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 4524 {0, 0, 0}, 4525 {679771963, 0, 0}, 4526 {1951208733, 0, 0}, 4527 {2320303498, 0, 0}, 4528 {1111111111111111111, 0, 0}, 4529 {0, 1, 4}, 4530 {0, 2, 5}, 4531 {0, 3, 6}, 4532 })); 4533 4534 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 26), std::move(codec)); 4535 } 4536 4537 { 4538 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 4539 {0, 0, 0}, 4540 {679771963, 0, 0}, 4541 {1951208733, 0, 0}, 4542 {2320303498, 0, 0}, 4543 {1111111111111111111, 0, 0}, 4544 {0, 1, 4}, 4545 {0, 2, 5}, 4546 {0, 3, 6}, 4547 })); 4548 4549 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 27), std::move(codec)); 4550 } 4551 4552 { 4553 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 4554 {0, 0, 0}, 4555 {679771963, 0, 0}, 4556 {1951208733, 0, 0}, 4557 {1111111111111111111, 0, 0}, 4558 {0, 2, 3}, 4559 {0, 1, 4}, 4560 })); 4561 4562 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 28), std::move(codec)); 4563 } 4564 4565 { 4566 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 4567 {0, 0, 0}, 4568 {679771963, 0, 0}, 4569 {1951208733, 0, 0}, 4570 {1111111111111111111, 0, 0}, 4571 {0, 1, 3}, 4572 {0, 2, 4}, 4573 })); 4574 4575 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 29), std::move(codec)); 4576 } 4577 4578 { 4579 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 4580 {0, 0, 0}, 4581 {679771963, 0, 0}, 4582 {1951208733, 0, 0}, 4583 {1111111111111111111, 0, 0}, 4584 {0, 1, 3}, 4585 {0, 2, 4}, 4586 })); 4587 4588 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 30), std::move(codec)); 4589 } 4590 4591 { 4592 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 4593 {0, 0, 0}, 4594 {679771963, 0, 0}, 4595 {1951208733, 0, 0}, 4596 {2320303498, 0, 0}, 4597 {1111111111111111111, 0, 0}, 4598 {0, 4, 3}, 4599 {0, 1, 5}, 4600 {0, 2, 6}, 4601 })); 4602 4603 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 31), std::move(codec)); 4604 } 4605 4606 { 4607 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 4608 {0, 0, 0}, 4609 {679771963, 0, 0}, 4610 {1951208733, 0, 0}, 4611 {2320303498, 0, 0}, 4612 {1111111111111111111, 0, 0}, 4613 {0, 3, 4}, 4614 {0, 1, 5}, 4615 {0, 2, 6}, 4616 })); 4617 4618 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 32), std::move(codec)); 4619 } 4620 4621 { 4622 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 4623 {0, 0, 0}, 4624 {1951208733, 0, 0}, 4625 {2320303498, 0, 0}, 4626 {1111111111111111111, 0, 0}, 4627 {0, 2, 3}, 4628 {0, 1, 4}, 4629 })); 4630 4631 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 33), std::move(codec)); 4632 } 4633 4634 { 4635 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 4636 {0, 0, 0}, 4637 {1951208733, 0, 0}, 4638 {2320303498, 0, 0}, 4639 {1111111111111111111, 0, 0}, 4640 {0, 1, 3}, 4641 {0, 2, 4}, 4642 })); 4643 4644 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 34), std::move(codec)); 4645 } 4646 4647 { 4648 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 4649 {0, 0, 0}, 4650 {1951208733, 0, 0}, 4651 {2320303498, 0, 0}, 4652 {1111111111111111111, 0, 0}, 4653 {0, 2, 3}, 4654 {0, 1, 4}, 4655 })); 4656 4657 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 35), std::move(codec)); 4658 } 4659 4660 { 4661 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 4662 {0, 0, 0}, 4663 {1951208733, 0, 0}, 4664 {2320303498, 0, 0}, 4665 {1111111111111111111, 0, 0}, 4666 {0, 2, 3}, 4667 {0, 1, 4}, 4668 })); 4669 4670 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 36), std::move(codec)); 4671 } 4672 4673 { 4674 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 4675 {0, 0, 0}, 4676 {679771963, 0, 0}, 4677 {1111111111111111111, 0, 0}, 4678 {0, 1, 2}, 4679 })); 4680 4681 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 37), std::move(codec)); 4682 } 4683 4684 { 4685 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 4686 {0, 0, 0}, 4687 {1389644742, 0, 0}, 4688 {1111111111111111111, 0, 0}, 4689 {0, 1, 2}, 4690 })); 4691 4692 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 38), std::move(codec)); 4693 } 4694 4695 { 4696 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 4697 {0, 0, 0}, 4698 {3697687030, 0, 0}, 4699 {1111111111111111111, 0, 0}, 4700 {0, 1, 2}, 4701 })); 4702 4703 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 39), std::move(codec)); 4704 } 4705 4706 { 4707 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 4708 {0, 0, 0}, 4709 {2320303498, 0, 0}, 4710 {1111111111111111111, 0, 0}, 4711 {0, 1, 2}, 4712 })); 4713 4714 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 40), std::move(codec)); 4715 } 4716 4717 { 4718 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 4719 {0, 0, 0}, 4720 {2320303498, 0, 0}, 4721 {1111111111111111111, 0, 0}, 4722 {0, 1, 2}, 4723 })); 4724 4725 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 41), std::move(codec)); 4726 } 4727 4728 { 4729 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 4730 {0, 0, 0}, 4731 {679771963, 0, 0}, 4732 {1111111111111111111, 0, 0}, 4733 {0, 1, 2}, 4734 })); 4735 4736 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 42), std::move(codec)); 4737 } 4738 4739 { 4740 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 4741 {0, 0, 0}, 4742 {679771963, 0, 0}, 4743 {1111111111111111111, 0, 0}, 4744 {0, 1, 2}, 4745 })); 4746 4747 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 43), std::move(codec)); 4748 } 4749 4750 { 4751 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 4752 {0, 0, 0}, 4753 {679771963, 0, 0}, 4754 {1111111111111111111, 0, 0}, 4755 {0, 1, 2}, 4756 })); 4757 4758 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 44), std::move(codec)); 4759 } 4760 4761 { 4762 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 4763 {0, 0, 0}, 4764 {679771963, 0, 0}, 4765 {1111111111111111111, 0, 0}, 4766 {0, 1, 2}, 4767 })); 4768 4769 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 45), std::move(codec)); 4770 } 4771 4772 { 4773 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 4774 {0, 0, 0}, 4775 {679771963, 0, 0}, 4776 {1111111111111111111, 0, 0}, 4777 {0, 1, 2}, 4778 })); 4779 4780 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 46), std::move(codec)); 4781 } 4782 4783 { 4784 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 4785 {0, 0, 0}, 4786 {679771963, 0, 0}, 4787 {1111111111111111111, 0, 0}, 4788 {0, 1, 2}, 4789 })); 4790 4791 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 47), std::move(codec)); 4792 } 4793 4794 { 4795 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 4796 {0, 0, 0}, 4797 {679771963, 0, 0}, 4798 {1111111111111111111, 0, 0}, 4799 {0, 1, 2}, 4800 })); 4801 4802 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 48), std::move(codec)); 4803 } 4804 4805 { 4806 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 4807 {0, 0, 0}, 4808 {679771963, 0, 0}, 4809 {1111111111111111111, 0, 0}, 4810 {0, 1, 2}, 4811 })); 4812 4813 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 49), std::move(codec)); 4814 } 4815 4816 { 4817 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 4818 {0, 0, 0}, 4819 {679771963, 0, 0}, 4820 {1111111111111111111, 0, 0}, 4821 {0, 1, 2}, 4822 })); 4823 4824 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 50), std::move(codec)); 4825 } 4826 4827 { 4828 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 4829 {0, 0, 0}, 4830 {679771963, 0, 0}, 4831 {1111111111111111111, 0, 0}, 4832 {0, 1, 2}, 4833 })); 4834 4835 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeStruct, 51), std::move(codec)); 4836 } 4837 4838 { 4839 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(101, { 4840 {0, 0, 0}, 4841 {85880059, 0, 0}, 4842 {135486769, 0, 0}, 4843 {304448521, 0, 0}, 4844 {436416061, 0, 0}, 4845 {440421571, 0, 0}, 4846 {450406196, 0, 0}, 4847 {503094540, 0, 0}, 4848 {543621065, 0, 0}, 4849 {626892406, 0, 0}, 4850 {628544021, 0, 0}, 4851 {827698488, 0, 0}, 4852 {869050696, 0, 0}, 4853 {907126242, 0, 0}, 4854 {908777857, 0, 0}, 4855 {910429472, 0, 0}, 4856 {1113409935, 0, 0}, 4857 {1294403159, 0, 0}, 4858 {1296054774, 0, 0}, 4859 {1297706389, 0, 0}, 4860 {1322549027, 0, 0}, 4861 {1784441183, 0, 0}, 4862 {2080953106, 0, 0}, 4863 {2194691858, 0, 0}, 4864 {2448331885, 0, 0}, 4865 {2466255445, 0, 0}, 4866 {2468230023, 0, 0}, 4867 {2547657777, 0, 0}, 4868 {2549309392, 0, 0}, 4869 {2550961007, 0, 0}, 4870 {2894051250, 0, 0}, 4871 {2929019254, 0, 0}, 4872 {2934934694, 0, 0}, 4873 {2936586309, 0, 0}, 4874 {2938237924, 0, 0}, 4875 {3077271274, 0, 0}, 4876 {3092528578, 0, 0}, 4877 {3094180193, 0, 0}, 4878 {3094857332, 0, 0}, 4879 {3095831808, 0, 0}, 4880 {3183924418, 0, 0}, 4881 {3207966516, 0, 0}, 4882 {3282979782, 0, 0}, 4883 {3433956341, 0, 0}, 4884 {3561562003, 0, 0}, 4885 {3563213618, 0, 0}, 4886 {3564865233, 0, 0}, 4887 {3585511591, 0, 0}, 4888 {4028622909, 0, 0}, 4889 {4039938779, 0, 0}, 4890 {4050155669, 0, 0}, 4891 {1111111111111111111, 0, 0}, 4892 {0, 16, 25}, 4893 {0, 50, 1}, 4894 {0, 42, 35}, 4895 {0, 31, 41}, 4896 {0, 4, 43}, 4897 {0, 9, 10}, 4898 {0, 3, 30}, 4899 {0, 52, 47}, 4900 {0, 12, 53}, 4901 {0, 55, 54}, 4902 {0, 36, 56}, 4903 {0, 49, 57}, 4904 {0, 6, 58}, 4905 {0, 34, 33}, 4906 {0, 59, 26}, 4907 {0, 21, 32}, 4908 {0, 60, 15}, 4909 {0, 24, 61}, 4910 {0, 62, 38}, 4911 {0, 22, 2}, 4912 {0, 37, 7}, 4913 {0, 63, 46}, 4914 {0, 14, 13}, 4915 {0, 64, 5}, 4916 {0, 65, 45}, 4917 {0, 66, 19}, 4918 {0, 18, 67}, 4919 {0, 17, 20}, 4920 {0, 68, 11}, 4921 {0, 8, 69}, 4922 {0, 70, 39}, 4923 {0, 72, 71}, 4924 {0, 74, 73}, 4925 {0, 40, 75}, 4926 {0, 76, 23}, 4927 {0, 78, 77}, 4928 {0, 29, 79}, 4929 {0, 28, 80}, 4930 {0, 27, 48}, 4931 {0, 82, 81}, 4932 {0, 51, 83}, 4933 {0, 84, 44}, 4934 {0, 86, 85}, 4935 {0, 88, 87}, 4936 {0, 90, 89}, 4937 {0, 92, 91}, 4938 {0, 94, 93}, 4939 {0, 96, 95}, 4940 {0, 98, 97}, 4941 {0, 100, 99}, 4942 })); 4943 4944 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypePointer, 0), std::move(codec)); 4945 } 4946 4947 { 4948 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(65, { 4949 {0, 0, 0}, 4950 {119981689, 0, 0}, 4951 {162255877, 0, 0}, 4952 {451382997, 0, 0}, 4953 {545678922, 0, 0}, 4954 {679771963, 0, 0}, 4955 {789872778, 0, 0}, 4956 {1100599986, 0, 0}, 4957 {1103903216, 0, 0}, 4958 {1154919607, 0, 0}, 4959 {1343794461, 0, 0}, 4960 {1415510495, 0, 0}, 4961 {1674803691, 0, 0}, 4962 {1951208733, 0, 0}, 4963 {1989520052, 0, 0}, 4964 {2160380860, 0, 0}, 4965 {2263349224, 0, 0}, 4966 {2320303498, 0, 0}, 4967 {2924146124, 0, 0}, 4968 {2984325996, 0, 0}, 4969 {3334207724, 0, 0}, 4970 {3345288309, 0, 0}, 4971 {3410158390, 0, 0}, 4972 {3489360962, 0, 0}, 4973 {3495967422, 0, 0}, 4974 {3504981554, 0, 0}, 4975 {3800912395, 0, 0}, 4976 {3802564010, 0, 0}, 4977 {3866587616, 0, 0}, 4978 {3868239231, 0, 0}, 4979 {3869890846, 0, 0}, 4980 {3998230222, 0, 0}, 4981 {4240893633, 0, 0}, 4982 {1111111111111111111, 0, 0}, 4983 {0, 4, 3}, 4984 {0, 6, 24}, 4985 {0, 11, 7}, 4986 {0, 32, 21}, 4987 {0, 27, 34}, 4988 {0, 35, 25}, 4989 {0, 36, 8}, 4990 {0, 26, 31}, 4991 {0, 14, 15}, 4992 {0, 28, 37}, 4993 {0, 1, 23}, 4994 {0, 39, 38}, 4995 {0, 12, 40}, 4996 {0, 22, 41}, 4997 {0, 10, 16}, 4998 {0, 43, 42}, 4999 {0, 29, 44}, 5000 {0, 2, 45}, 5001 {0, 46, 19}, 5002 {0, 48, 47}, 5003 {0, 18, 49}, 5004 {0, 50, 30}, 5005 {0, 9, 33}, 5006 {0, 52, 51}, 5007 {0, 54, 53}, 5008 {0, 13, 55}, 5009 {0, 17, 56}, 5010 {0, 5, 57}, 5011 {0, 59, 58}, 5012 {0, 60, 20}, 5013 {0, 62, 61}, 5014 {0, 64, 63}, 5015 })); 5016 5017 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypePointer, 2), std::move(codec)); 5018 } 5019 5020 { 5021 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(99, { 5022 {0, 0, 0}, 5023 {75986790, 0, 0}, 5024 {95470391, 0, 0}, 5025 {170378107, 0, 0}, 5026 {172029722, 0, 0}, 5027 {204234270, 0, 0}, 5028 {205885885, 0, 0}, 5029 {244668133, 0, 0}, 5030 {265778447, 0, 0}, 5031 {616435646, 0, 0}, 5032 {618087261, 0, 0}, 5033 {753954113, 0, 0}, 5034 {1000070091, 0, 0}, 5035 {1308462133, 0, 0}, 5036 {1671139745, 0, 0}, 5037 {1774874546, 0, 0}, 5038 {1776526161, 0, 0}, 5039 {1887808856, 0, 0}, 5040 {1889460471, 0, 0}, 5041 {1917966999, 0, 0}, 5042 {2044728014, 0, 0}, 5043 {2192810893, 0, 0}, 5044 {2293247016, 0, 0}, 5045 {2503194620, 0, 0}, 5046 {2605012269, 0, 0}, 5047 {2608484640, 0, 0}, 5048 {2615111110, 0, 0}, 5049 {2668769415, 0, 0}, 5050 {2759951687, 0, 0}, 5051 {2761603302, 0, 0}, 5052 {2856623532, 0, 0}, 5053 {2945369269, 0, 0}, 5054 {2956189845, 0, 0}, 5055 {3085119011, 0, 0}, 5056 {3367313400, 0, 0}, 5057 {3447882276, 0, 0}, 5058 {3633746133, 0, 0}, 5059 {3635397748, 0, 0}, 5060 {3710645347, 0, 0}, 5061 {3712296962, 0, 0}, 5062 {3715846592, 0, 0}, 5063 {3727494858, 0, 0}, 5064 {3747079365, 0, 0}, 5065 {3748965853, 0, 0}, 5066 {3750617468, 0, 0}, 5067 {4018820793, 0, 0}, 5068 {4022124023, 0, 0}, 5069 {4024173916, 0, 0}, 5070 {4215670524, 0, 0}, 5071 {4217322139, 0, 0}, 5072 {1111111111111111111, 0, 0}, 5073 {0, 10, 9}, 5074 {0, 31, 24}, 5075 {0, 40, 13}, 5076 {0, 45, 33}, 5077 {0, 34, 46}, 5078 {0, 43, 38}, 5079 {0, 44, 15}, 5080 {0, 11, 30}, 5081 {0, 21, 6}, 5082 {0, 47, 3}, 5083 {0, 51, 16}, 5084 {0, 14, 52}, 5085 {0, 8, 53}, 5086 {0, 35, 5}, 5087 {0, 55, 54}, 5088 {0, 56, 26}, 5089 {0, 20, 57}, 5090 {0, 39, 19}, 5091 {0, 59, 58}, 5092 {0, 61, 60}, 5093 {0, 4, 62}, 5094 {0, 2, 63}, 5095 {0, 25, 7}, 5096 {0, 64, 27}, 5097 {0, 12, 22}, 5098 {0, 65, 48}, 5099 {0, 41, 42}, 5100 {0, 17, 23}, 5101 {0, 49, 66}, 5102 {0, 68, 67}, 5103 {0, 70, 69}, 5104 {0, 72, 71}, 5105 {0, 74, 73}, 5106 {0, 18, 75}, 5107 {0, 37, 32}, 5108 {0, 76, 36}, 5109 {0, 78, 77}, 5110 {0, 79, 28}, 5111 {0, 81, 80}, 5112 {0, 82, 29}, 5113 {0, 84, 83}, 5114 {0, 86, 85}, 5115 {0, 88, 87}, 5116 {0, 90, 89}, 5117 {0, 91, 50}, 5118 {0, 93, 92}, 5119 {0, 95, 94}, 5120 {0, 1, 96}, 5121 {0, 98, 97}, 5122 })); 5123 5124 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeFunction, 0), std::move(codec)); 5125 } 5126 5127 { 5128 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(27, { 5129 {0, 0, 0}, 5130 {545678922, 0, 0}, 5131 {679771963, 0, 0}, 5132 {899570100, 0, 0}, 5133 {929101967, 0, 0}, 5134 {1100599986, 0, 0}, 5135 {1951208733, 0, 0}, 5136 {2320303498, 0, 0}, 5137 {3056042030, 0, 0}, 5138 {3334207724, 0, 0}, 5139 {3357250579, 0, 0}, 5140 {3705139860, 0, 0}, 5141 {3800912395, 0, 0}, 5142 {3802564010, 0, 0}, 5143 {1111111111111111111, 0, 0}, 5144 {0, 5, 3}, 5145 {0, 10, 13}, 5146 {0, 4, 15}, 5147 {0, 16, 11}, 5148 {0, 17, 1}, 5149 {0, 14, 12}, 5150 {0, 19, 18}, 5151 {0, 21, 20}, 5152 {0, 7, 6}, 5153 {0, 9, 22}, 5154 {0, 24, 23}, 5155 {0, 25, 2}, 5156 {0, 26, 8}, 5157 })); 5158 5159 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeFunction, 1), std::move(codec)); 5160 } 5161 5162 { 5163 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(57, { 5164 {0, 0, 0}, 5165 {283209196, 0, 0}, 5166 {436416061, 0, 0}, 5167 {679771963, 0, 0}, 5168 {789872778, 0, 0}, 5169 {815757910, 0, 0}, 5170 {827698488, 0, 0}, 5171 {1164221089, 0, 0}, 5172 {1294403159, 0, 0}, 5173 {1296054774, 0, 0}, 5174 {1297706389, 0, 0}, 5175 {1525861001, 0, 0}, 5176 {1579585816, 0, 0}, 5177 {1675764636, 0, 0}, 5178 {1824016656, 0, 0}, 5179 {1951208733, 0, 0}, 5180 {1991787192, 0, 0}, 5181 {2180701723, 0, 0}, 5182 {2194691858, 0, 0}, 5183 {2320303498, 0, 0}, 5184 {2881886868, 0, 0}, 5185 {2926633629, 0, 0}, 5186 {3249265647, 0, 0}, 5187 {3334207724, 0, 0}, 5188 {3472123498, 0, 0}, 5189 {3674863070, 0, 0}, 5190 {4050155669, 0, 0}, 5191 {4141567741, 0, 0}, 5192 {4155122613, 0, 0}, 5193 {1111111111111111111, 0, 0}, 5194 {0, 24, 7}, 5195 {0, 17, 1}, 5196 {0, 4, 15}, 5197 {0, 11, 16}, 5198 {0, 28, 30}, 5199 {0, 25, 20}, 5200 {0, 14, 31}, 5201 {0, 32, 26}, 5202 {0, 12, 5}, 5203 {0, 2, 22}, 5204 {0, 33, 13}, 5205 {0, 35, 34}, 5206 {0, 37, 36}, 5207 {0, 39, 38}, 5208 {0, 40, 21}, 5209 {0, 29, 18}, 5210 {0, 27, 41}, 5211 {0, 43, 42}, 5212 {0, 19, 44}, 5213 {0, 45, 23}, 5214 {0, 6, 3}, 5215 {0, 47, 46}, 5216 {0, 49, 48}, 5217 {0, 51, 50}, 5218 {0, 10, 8}, 5219 {0, 53, 52}, 5220 {0, 9, 54}, 5221 {0, 56, 55}, 5222 })); 5223 5224 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeFunction, 2), std::move(codec)); 5225 } 5226 5227 { 5228 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(17, { 5229 {0, 0, 0}, 5230 {679771963, 0, 0}, 5231 {827698488, 0, 0}, 5232 {1294403159, 0, 0}, 5233 {1296054774, 0, 0}, 5234 {1297706389, 0, 0}, 5235 {1951208733, 0, 0}, 5236 {2320303498, 0, 0}, 5237 {3334207724, 0, 0}, 5238 {1111111111111111111, 0, 0}, 5239 {0, 8, 9}, 5240 {0, 10, 6}, 5241 {0, 1, 5}, 5242 {0, 11, 3}, 5243 {0, 12, 7}, 5244 {0, 13, 2}, 5245 {0, 15, 14}, 5246 {0, 16, 4}, 5247 })); 5248 5249 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeFunction, 3), std::move(codec)); 5250 } 5251 5252 { 5253 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(17, { 5254 {0, 0, 0}, 5255 {679771963, 0, 0}, 5256 {827698488, 0, 0}, 5257 {1294403159, 0, 0}, 5258 {1296054774, 0, 0}, 5259 {1951208733, 0, 0}, 5260 {2194691858, 0, 0}, 5261 {2320303498, 0, 0}, 5262 {3334207724, 0, 0}, 5263 {1111111111111111111, 0, 0}, 5264 {0, 8, 5}, 5265 {0, 10, 9}, 5266 {0, 11, 6}, 5267 {0, 7, 12}, 5268 {0, 1, 3}, 5269 {0, 2, 13}, 5270 {0, 15, 14}, 5271 {0, 4, 16}, 5272 })); 5273 5274 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeFunction, 4), std::move(codec)); 5275 } 5276 5277 { 5278 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(11, { 5279 {0, 0, 0}, 5280 {827698488, 0, 0}, 5281 {1294403159, 0, 0}, 5282 {1296054774, 0, 0}, 5283 {1297706389, 0, 0}, 5284 {1951208733, 0, 0}, 5285 {1111111111111111111, 0, 0}, 5286 {0, 4, 6}, 5287 {0, 5, 7}, 5288 {0, 2, 8}, 5289 {0, 1, 9}, 5290 {0, 10, 3}, 5291 })); 5292 5293 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeFunction, 5), std::move(codec)); 5294 } 5295 5296 { 5297 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(11, { 5298 {0, 0, 0}, 5299 {827698488, 0, 0}, 5300 {1294403159, 0, 0}, 5301 {1296054774, 0, 0}, 5302 {1951208733, 0, 0}, 5303 {3334207724, 0, 0}, 5304 {1111111111111111111, 0, 0}, 5305 {0, 2, 6}, 5306 {0, 4, 7}, 5307 {0, 8, 5}, 5308 {0, 3, 9}, 5309 {0, 1, 10}, 5310 })); 5311 5312 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeFunction, 6), std::move(codec)); 5313 } 5314 5315 { 5316 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 5317 {0, 0, 0}, 5318 {789872778, 0, 0}, 5319 {827698488, 0, 0}, 5320 {1951208733, 0, 0}, 5321 {2320303498, 0, 0}, 5322 {1111111111111111111, 0, 0}, 5323 {0, 5, 1}, 5324 {0, 4, 6}, 5325 {0, 3, 7}, 5326 {0, 2, 8}, 5327 })); 5328 5329 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeFunction, 7), std::move(codec)); 5330 } 5331 5332 { 5333 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 5334 {0, 0, 0}, 5335 {543621065, 0, 0}, 5336 {827698488, 0, 0}, 5337 {1951208733, 0, 0}, 5338 {1111111111111111111, 0, 0}, 5339 {0, 3, 4}, 5340 {0, 1, 5}, 5341 {0, 2, 6}, 5342 })); 5343 5344 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeFunction, 8), std::move(codec)); 5345 } 5346 5347 { 5348 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 5349 {0, 0, 0}, 5350 {827698488, 0, 0}, 5351 {1951208733, 0, 0}, 5352 {3095831808, 0, 0}, 5353 {1111111111111111111, 0, 0}, 5354 {0, 2, 4}, 5355 {0, 3, 5}, 5356 {0, 1, 6}, 5357 })); 5358 5359 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeFunction, 9), std::move(codec)); 5360 } 5361 5362 { 5363 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 5364 {0, 0, 0}, 5365 {1296054774, 0, 0}, 5366 {1951208733, 0, 0}, 5367 {1111111111111111111, 0, 0}, 5368 {0, 3, 2}, 5369 {0, 1, 4}, 5370 })); 5371 5372 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeFunction, 10), std::move(codec)); 5373 } 5374 5375 { 5376 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 5377 {0, 0, 0}, 5378 {1296054774, 0, 0}, 5379 {2320303498, 0, 0}, 5380 {1111111111111111111, 0, 0}, 5381 {0, 3, 2}, 5382 {0, 1, 4}, 5383 })); 5384 5385 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeFunction, 11), std::move(codec)); 5386 } 5387 5388 { 5389 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 5390 {0, 0, 0}, 5391 {789872778, 0, 0}, 5392 {1951208733, 0, 0}, 5393 {1111111111111111111, 0, 0}, 5394 {0, 3, 2}, 5395 {0, 4, 1}, 5396 })); 5397 5398 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeFunction, 12), std::move(codec)); 5399 } 5400 5401 { 5402 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 5403 {0, 0, 0}, 5404 {789872778, 0, 0}, 5405 {1951208733, 0, 0}, 5406 {1111111111111111111, 0, 0}, 5407 {0, 2, 1}, 5408 {0, 4, 3}, 5409 })); 5410 5411 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeFunction, 13), std::move(codec)); 5412 } 5413 5414 { 5415 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 5416 {0, 0, 0}, 5417 {1951208733, 0, 0}, 5418 {1111111111111111111, 0, 0}, 5419 {0, 2, 1}, 5420 })); 5421 5422 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeFunction, 14), std::move(codec)); 5423 } 5424 5425 { 5426 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 5427 {0, 0, 0}, 5428 {1951208733, 0, 0}, 5429 {1111111111111111111, 0, 0}, 5430 {0, 2, 1}, 5431 })); 5432 5433 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpTypeFunction, 15), std::move(codec)); 5434 } 5435 5436 { 5437 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 5438 {0, 0, 0}, 5439 {789872778, 0, 0}, 5440 {1951208733, 0, 0}, 5441 {2430404313, 0, 0}, 5442 {1111111111111111111, 0, 0}, 5443 {0, 3, 4}, 5444 {0, 1, 5}, 5445 {0, 2, 6}, 5446 })); 5447 5448 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpConstant, 0), std::move(codec)); 5449 } 5450 5451 { 5452 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(183, { 5453 {0, 0, 0}, 5454 {51041423, 0, 0}, 5455 {52882140, 0, 0}, 5456 {72782198, 0, 0}, 5457 {142465290, 0, 0}, 5458 {144116905, 0, 0}, 5459 {158160339, 0, 0}, 5460 {169135842, 0, 0}, 5461 {210116709, 0, 0}, 5462 {290391815, 0, 0}, 5463 {296981500, 0, 0}, 5464 {385229009, 0, 0}, 5465 {438318340, 0, 0}, 5466 {529742207, 0, 0}, 5467 {628331516, 0, 0}, 5468 {677668732, 0, 0}, 5469 {778500192, 0, 0}, 5470 {825595257, 0, 0}, 5471 {910398460, 0, 0}, 5472 {917019124, 0, 0}, 5473 {959681532, 0, 0}, 5474 {1031290113, 0, 0}, 5475 {1039111164, 0, 0}, 5476 {1064945649, 0, 0}, 5477 {1087394637, 0, 0}, 5478 {1092948665, 0, 0}, 5479 {1156369516, 0, 0}, 5480 {1158021131, 0, 0}, 5481 {1172110445, 0, 0}, 5482 {1304296041, 0, 0}, 5483 {1400019344, 0, 0}, 5484 {1450415100, 0, 0}, 5485 {1452222566, 0, 0}, 5486 {1543646433, 0, 0}, 5487 {1543672828, 0, 0}, 5488 {1612361408, 0, 0}, 5489 {1622381564, 0, 0}, 5490 {1691572958, 0, 0}, 5491 {1755648697, 0, 0}, 5492 {1782996825, 0, 0}, 5493 {1784648440, 0, 0}, 5494 {1930923350, 0, 0}, 5495 {1939359710, 0, 0}, 5496 {1971252067, 0, 0}, 5497 {1979847999, 0, 0}, 5498 {2078849875, 0, 0}, 5499 {2113115132, 0, 0}, 5500 {2135340676, 0, 0}, 5501 {2170273742, 0, 0}, 5502 {2268204687, 0, 0}, 5503 {2285081596, 0, 0}, 5504 {2318200267, 0, 0}, 5505 {2321729979, 0, 0}, 5506 {2326636627, 0, 0}, 5507 {2444465148, 0, 0}, 5508 {2466126792, 0, 0}, 5509 {2490492987, 0, 0}, 5510 {2524697596, 0, 0}, 5511 {2557550659, 0, 0}, 5512 {2678954464, 0, 0}, 5513 {2705477184, 0, 0}, 5514 {2715370488, 0, 0}, 5515 {2732195517, 0, 0}, 5516 {2775815164, 0, 0}, 5517 {2796901051, 0, 0}, 5518 {2798552666, 0, 0}, 5519 {2855506940, 0, 0}, 5520 {2860348412, 0, 0}, 5521 {2922615804, 0, 0}, 5522 {2937761472, 0, 0}, 5523 {2944827576, 0, 0}, 5524 {3092754101, 0, 0}, 5525 {3107165180, 0, 0}, 5526 {3168953855, 0, 0}, 5527 {3184177968, 0, 0}, 5528 {3202349435, 0, 0}, 5529 {3266548732, 0, 0}, 5530 {3332104493, 0, 0}, 5531 {3362723943, 0, 0}, 5532 {3571454885, 0, 0}, 5533 {3712763835, 0, 0}, 5534 {3743748793, 0, 0}, 5535 {3810805277, 0, 0}, 5536 {3912967080, 0, 0}, 5537 {3929248764, 0, 0}, 5538 {3958731802, 0, 0}, 5539 {3997952447, 0, 0}, 5540 {4016096296, 0, 0}, 5541 {4106658327, 0, 0}, 5542 {4172568578, 0, 0}, 5543 {4198082194, 0, 0}, 5544 {4248015868, 0, 0}, 5545 {1111111111111111111, 0, 0}, 5546 {0, 35, 16}, 5547 {0, 49, 42}, 5548 {0, 86, 69}, 5549 {0, 53, 30}, 5550 {0, 45, 89}, 5551 {0, 50, 68}, 5552 {0, 73, 71}, 5553 {0, 17, 46}, 5554 {0, 14, 81}, 5555 {0, 63, 44}, 5556 {0, 12, 3}, 5557 {0, 72, 31}, 5558 {0, 55, 67}, 5559 {0, 36, 19}, 5560 {0, 22, 88}, 5561 {0, 9, 70}, 5562 {0, 93, 23}, 5563 {0, 95, 94}, 5564 {0, 47, 91}, 5565 {0, 34, 32}, 5566 {0, 97, 96}, 5567 {0, 41, 61}, 5568 {0, 99, 98}, 5569 {0, 37, 1}, 5570 {0, 77, 100}, 5571 {0, 51, 60}, 5572 {0, 101, 79}, 5573 {0, 6, 2}, 5574 {0, 11, 7}, 5575 {0, 24, 21}, 5576 {0, 43, 28}, 5577 {0, 59, 56}, 5578 {0, 75, 62}, 5579 {0, 80, 78}, 5580 {0, 87, 83}, 5581 {0, 18, 15}, 5582 {0, 102, 38}, 5583 {0, 104, 103}, 5584 {0, 85, 90}, 5585 {0, 76, 25}, 5586 {0, 29, 105}, 5587 {0, 107, 106}, 5588 {0, 58, 52}, 5589 {0, 109, 108}, 5590 {0, 57, 110}, 5591 {0, 112, 111}, 5592 {0, 114, 113}, 5593 {0, 115, 33}, 5594 {0, 74, 116}, 5595 {0, 118, 117}, 5596 {0, 120, 119}, 5597 {0, 122, 121}, 5598 {0, 124, 123}, 5599 {0, 126, 125}, 5600 {0, 128, 127}, 5601 {0, 130, 129}, 5602 {0, 131, 13}, 5603 {0, 54, 27}, 5604 {0, 133, 132}, 5605 {0, 48, 40}, 5606 {0, 5, 8}, 5607 {0, 82, 134}, 5608 {0, 26, 135}, 5609 {0, 39, 4}, 5610 {0, 136, 64}, 5611 {0, 138, 137}, 5612 {0, 140, 139}, 5613 {0, 84, 141}, 5614 {0, 143, 142}, 5615 {0, 145, 144}, 5616 {0, 147, 146}, 5617 {0, 149, 148}, 5618 {0, 20, 150}, 5619 {0, 65, 151}, 5620 {0, 66, 152}, 5621 {0, 153, 10}, 5622 {0, 155, 154}, 5623 {0, 157, 156}, 5624 {0, 159, 158}, 5625 {0, 161, 160}, 5626 {0, 163, 162}, 5627 {0, 165, 164}, 5628 {0, 167, 166}, 5629 {0, 169, 168}, 5630 {0, 170, 92}, 5631 {0, 172, 171}, 5632 {0, 174, 173}, 5633 {0, 176, 175}, 5634 {0, 178, 177}, 5635 {0, 180, 179}, 5636 {0, 182, 181}, 5637 })); 5638 5639 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpConstant, 1), std::move(codec)); 5640 } 5641 5642 { 5643 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 5644 {0, 0, 0}, 5645 {679771963, 0, 0}, 5646 {1247793383, 0, 0}, 5647 {2320303498, 0, 0}, 5648 {3334207724, 0, 0}, 5649 {1111111111111111111, 0, 0}, 5650 {0, 2, 5}, 5651 {0, 4, 6}, 5652 {0, 1, 3}, 5653 {0, 8, 7}, 5654 })); 5655 5656 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpConstantComposite, 0), std::move(codec)); 5657 } 5658 5659 { 5660 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(83, { 5661 {0, 0, 0}, 5662 {15502752, 0, 0}, 5663 {46736908, 0, 0}, 5664 {139011596, 0, 0}, 5665 {149720480, 0, 0}, 5666 {249378857, 0, 0}, 5667 {251209228, 0, 0}, 5668 {503145996, 0, 0}, 5669 {836581417, 0, 0}, 5670 {882718761, 0, 0}, 5671 {1289566249, 0, 0}, 5672 {1325348861, 0, 0}, 5673 {1558001705, 0, 0}, 5674 {1646147798, 0, 0}, 5675 {1679946323, 0, 0}, 5676 {1766401548, 0, 0}, 5677 {1992893964, 0, 0}, 5678 {2123388694, 0, 0}, 5679 {2162986400, 0, 0}, 5680 {2580096524, 0, 0}, 5681 {2598189097, 0, 0}, 5682 {2683080096, 0, 0}, 5683 {2698156268, 0, 0}, 5684 {2763960513, 0, 0}, 5685 {3015046341, 0, 0}, 5686 {3133016299, 0, 0}, 5687 {3251128023, 0, 0}, 5688 {3504158761, 0, 0}, 5689 {3535289452, 0, 0}, 5690 {3536941067, 0, 0}, 5691 {3538592682, 0, 0}, 5692 {3540244297, 0, 0}, 5693 {3541895912, 0, 0}, 5694 {3570219049, 0, 0}, 5695 {3653838348, 0, 0}, 5696 {3764205609, 0, 0}, 5697 {3882634684, 0, 0}, 5698 {3913885196, 0, 0}, 5699 {3982047273, 0, 0}, 5700 {4024252457, 0, 0}, 5701 {4243119782, 0, 0}, 5702 {4255182614, 0, 0}, 5703 {1111111111111111111, 0, 0}, 5704 {0, 8, 4}, 5705 {0, 39, 2}, 5706 {0, 38, 10}, 5707 {0, 29, 41}, 5708 {0, 23, 28}, 5709 {0, 9, 24}, 5710 {0, 44, 43}, 5711 {0, 45, 6}, 5712 {0, 20, 12}, 5713 {0, 18, 33}, 5714 {0, 19, 16}, 5715 {0, 7, 46}, 5716 {0, 48, 47}, 5717 {0, 5, 49}, 5718 {0, 13, 11}, 5719 {0, 17, 14}, 5720 {0, 25, 22}, 5721 {0, 40, 36}, 5722 {0, 1, 50}, 5723 {0, 31, 30}, 5724 {0, 51, 32}, 5725 {0, 42, 52}, 5726 {0, 54, 53}, 5727 {0, 55, 15}, 5728 {0, 37, 56}, 5729 {0, 57, 34}, 5730 {0, 59, 58}, 5731 {0, 61, 60}, 5732 {0, 35, 21}, 5733 {0, 62, 26}, 5734 {0, 64, 63}, 5735 {0, 65, 27}, 5736 {0, 3, 66}, 5737 {0, 68, 67}, 5738 {0, 70, 69}, 5739 {0, 72, 71}, 5740 {0, 74, 73}, 5741 {0, 76, 75}, 5742 {0, 78, 77}, 5743 {0, 80, 79}, 5744 {0, 82, 81}, 5745 })); 5746 5747 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpConstantComposite, 1), std::move(codec)); 5748 } 5749 5750 { 5751 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(65, { 5752 {0, 0, 0}, 5753 {142465290, 0, 0}, 5754 {158160339, 0, 0}, 5755 {169135842, 0, 0}, 5756 {210116709, 0, 0}, 5757 {296981500, 0, 0}, 5758 {615748604, 0, 0}, 5759 {910398460, 0, 0}, 5760 {959681532, 0, 0}, 5761 {1039111164, 0, 0}, 5762 {1087394637, 0, 0}, 5763 {1156369516, 0, 0}, 5764 {1450415100, 0, 0}, 5765 {1543672828, 0, 0}, 5766 {2100532220, 0, 0}, 5767 {2170273742, 0, 0}, 5768 {2285081596, 0, 0}, 5769 {2326636627, 0, 0}, 5770 {2444465148, 0, 0}, 5771 {2732195517, 0, 0}, 5772 {2763232252, 0, 0}, 5773 {2796901051, 0, 0}, 5774 {2855506940, 0, 0}, 5775 {2922615804, 0, 0}, 5776 {2937761472, 0, 0}, 5777 {3202349435, 0, 0}, 5778 {3362723943, 0, 0}, 5779 {3712763835, 0, 0}, 5780 {3810805277, 0, 0}, 5781 {3929248764, 0, 0}, 5782 {4016096296, 0, 0}, 5783 {4172568578, 0, 0}, 5784 {4248015868, 0, 0}, 5785 {1111111111111111111, 0, 0}, 5786 {0, 12, 23}, 5787 {0, 13, 6}, 5788 {0, 20, 14}, 5789 {0, 15, 24}, 5790 {0, 17, 28}, 5791 {0, 16, 31}, 5792 {0, 7, 34}, 5793 {0, 9, 32}, 5794 {0, 36, 35}, 5795 {0, 38, 37}, 5796 {0, 40, 39}, 5797 {0, 2, 8}, 5798 {0, 10, 3}, 5799 {0, 25, 19}, 5800 {0, 27, 26}, 5801 {0, 33, 30}, 5802 {0, 11, 41}, 5803 {0, 1, 21}, 5804 {0, 18, 42}, 5805 {0, 44, 43}, 5806 {0, 46, 45}, 5807 {0, 48, 47}, 5808 {0, 29, 49}, 5809 {0, 4, 50}, 5810 {0, 52, 51}, 5811 {0, 54, 53}, 5812 {0, 56, 55}, 5813 {0, 58, 57}, 5814 {0, 59, 5}, 5815 {0, 61, 60}, 5816 {0, 62, 22}, 5817 {0, 64, 63}, 5818 })); 5819 5820 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpConstantComposite, 2), std::move(codec)); 5821 } 5822 5823 { 5824 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(57, { 5825 {0, 0, 0}, 5826 {52882140, 0, 0}, 5827 {210116709, 0, 0}, 5828 {296981500, 0, 0}, 5829 {385229009, 0, 0}, 5830 {615748604, 0, 0}, 5831 {910398460, 0, 0}, 5832 {959681532, 0, 0}, 5833 {1031290113, 0, 0}, 5834 {1039111164, 0, 0}, 5835 {1172110445, 0, 0}, 5836 {1450415100, 0, 0}, 5837 {1543672828, 0, 0}, 5838 {1622381564, 0, 0}, 5839 {1782996825, 0, 0}, 5840 {1971252067, 0, 0}, 5841 {2100532220, 0, 0}, 5842 {2268204687, 0, 0}, 5843 {2326636627, 0, 0}, 5844 {2444465148, 0, 0}, 5845 {2490492987, 0, 0}, 5846 {2678954464, 0, 0}, 5847 {2763232252, 0, 0}, 5848 {2855506940, 0, 0}, 5849 {2922615804, 0, 0}, 5850 {3912967080, 0, 0}, 5851 {3929248764, 0, 0}, 5852 {4172568578, 0, 0}, 5853 {4248015868, 0, 0}, 5854 {1111111111111111111, 0, 0}, 5855 {0, 11, 24}, 5856 {0, 12, 5}, 5857 {0, 22, 16}, 5858 {0, 18, 17}, 5859 {0, 30, 27}, 5860 {0, 6, 13}, 5861 {0, 9, 28}, 5862 {0, 32, 31}, 5863 {0, 34, 33}, 5864 {0, 7, 35}, 5865 {0, 4, 1}, 5866 {0, 10, 8}, 5867 {0, 20, 15}, 5868 {0, 25, 21}, 5869 {0, 36, 29}, 5870 {0, 19, 37}, 5871 {0, 39, 38}, 5872 {0, 41, 40}, 5873 {0, 43, 42}, 5874 {0, 26, 44}, 5875 {0, 45, 2}, 5876 {0, 47, 46}, 5877 {0, 49, 48}, 5878 {0, 50, 14}, 5879 {0, 51, 3}, 5880 {0, 53, 52}, 5881 {0, 54, 23}, 5882 {0, 56, 55}, 5883 })); 5884 5885 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpConstantComposite, 3), std::move(codec)); 5886 } 5887 5888 { 5889 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(39, { 5890 {0, 0, 0}, 5891 {210116709, 0, 0}, 5892 {296981500, 0, 0}, 5893 {615748604, 0, 0}, 5894 {910398460, 0, 0}, 5895 {959681532, 0, 0}, 5896 {1039111164, 0, 0}, 5897 {1092948665, 0, 0}, 5898 {1450415100, 0, 0}, 5899 {1543672828, 0, 0}, 5900 {1612361408, 0, 0}, 5901 {2100532220, 0, 0}, 5902 {2326636627, 0, 0}, 5903 {2444465148, 0, 0}, 5904 {2524697596, 0, 0}, 5905 {2763232252, 0, 0}, 5906 {2855506940, 0, 0}, 5907 {3929248764, 0, 0}, 5908 {4172568578, 0, 0}, 5909 {4248015868, 0, 0}, 5910 {1111111111111111111, 0, 0}, 5911 {0, 8, 7}, 5912 {0, 9, 3}, 5913 {0, 15, 11}, 5914 {0, 10, 21}, 5915 {0, 18, 12}, 5916 {0, 4, 20}, 5917 {0, 22, 19}, 5918 {0, 23, 6}, 5919 {0, 14, 24}, 5920 {0, 5, 25}, 5921 {0, 27, 26}, 5922 {0, 28, 17}, 5923 {0, 30, 29}, 5924 {0, 31, 13}, 5925 {0, 1, 32}, 5926 {0, 34, 33}, 5927 {0, 16, 35}, 5928 {0, 2, 36}, 5929 {0, 38, 37}, 5930 })); 5931 5932 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpConstantComposite, 4), std::move(codec)); 5933 } 5934 5935 { 5936 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(35, { 5937 {0, 0, 0}, 5938 {296981500, 0, 0}, 5939 {615748604, 0, 0}, 5940 {673708384, 0, 0}, 5941 {959681532, 0, 0}, 5942 {1039111164, 0, 0}, 5943 {1450415100, 0, 0}, 5944 {1543672828, 0, 0}, 5945 {1939359710, 0, 0}, 5946 {2100532220, 0, 0}, 5947 {2113115132, 0, 0}, 5948 {2326636627, 0, 0}, 5949 {2444465148, 0, 0}, 5950 {2763232252, 0, 0}, 5951 {2855506940, 0, 0}, 5952 {3929248764, 0, 0}, 5953 {4172568578, 0, 0}, 5954 {4248015868, 0, 0}, 5955 {1111111111111111111, 0, 0}, 5956 {0, 18, 3}, 5957 {0, 6, 19}, 5958 {0, 12, 4}, 5959 {0, 17, 2}, 5960 {0, 9, 7}, 5961 {0, 20, 13}, 5962 {0, 11, 8}, 5963 {0, 10, 16}, 5964 {0, 21, 15}, 5965 {0, 5, 22}, 5966 {0, 24, 23}, 5967 {0, 26, 25}, 5968 {0, 28, 27}, 5969 {0, 29, 1}, 5970 {0, 31, 30}, 5971 {0, 33, 32}, 5972 {0, 34, 14}, 5973 })); 5974 5975 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpConstantComposite, 5), std::move(codec)); 5976 } 5977 5978 { 5979 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(23, { 5980 {0, 0, 0}, 5981 {545678922, 0, 0}, 5982 {679771963, 0, 0}, 5983 {929101967, 0, 0}, 5984 {1951208733, 0, 0}, 5985 {2320303498, 0, 0}, 5986 {3056042030, 0, 0}, 5987 {3334207724, 0, 0}, 5988 {3357250579, 0, 0}, 5989 {3705139860, 0, 0}, 5990 {3800912395, 0, 0}, 5991 {3802564010, 0, 0}, 5992 {1111111111111111111, 0, 0}, 5993 {0, 8, 11}, 5994 {0, 9, 3}, 5995 {0, 1, 13}, 5996 {0, 14, 10}, 5997 {0, 12, 15}, 5998 {0, 17, 16}, 5999 {0, 18, 4}, 6000 {0, 7, 5}, 6001 {0, 20, 19}, 6002 {0, 2, 21}, 6003 {0, 22, 6}, 6004 })); 6005 6006 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunction, 0), std::move(codec)); 6007 } 6008 6009 { 6010 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(89, { 6011 {0, 0, 0}, 6012 {35240468, 0, 0}, 6013 {123060826, 0, 0}, 6014 {184634770, 0, 0}, 6015 {359054425, 0, 0}, 6016 {459968607, 0, 0}, 6017 {619875033, 0, 0}, 6018 {904486530, 0, 0}, 6019 {945128292, 0, 0}, 6020 {950731750, 0, 0}, 6021 {1058429216, 0, 0}, 6022 {1182296898, 0, 0}, 6023 {1238120570, 0, 0}, 6024 {1429389803, 0, 0}, 6025 {1652168174, 0, 0}, 6026 {1717510093, 0, 0}, 6027 {1766422419, 0, 0}, 6028 {1775308984, 0, 0}, 6029 {1776629361, 0, 0}, 6030 {1824526196, 0, 0}, 6031 {1957265068, 0, 0}, 6032 {1998433745, 0, 0}, 6033 {2055664760, 0, 0}, 6034 {2303184249, 0, 0}, 6035 {2451531615, 0, 0}, 6036 {2507457870, 0, 0}, 6037 {2550501832, 0, 0}, 6038 {2590402790, 0, 0}, 6039 {2649103430, 0, 0}, 6040 {2780190687, 0, 0}, 6041 {2831059514, 0, 0}, 6042 {3167253437, 0, 0}, 6043 {3269075805, 0, 0}, 6044 {3323202731, 0, 0}, 6045 {3361419439, 0, 0}, 6046 {3464197236, 0, 0}, 6047 {3472029049, 0, 0}, 6048 {3518630848, 0, 0}, 6049 {3604842236, 0, 0}, 6050 {3653985133, 0, 0}, 6051 {4091916710, 0, 0}, 6052 {4121643374, 0, 0}, 6053 {4185590212, 0, 0}, 6054 {4233562270, 0, 0}, 6055 {4235213885, 0, 0}, 6056 {1111111111111111111, 0, 0}, 6057 {0, 6, 40}, 6058 {0, 14, 31}, 6059 {0, 7, 9}, 6060 {0, 29, 27}, 6061 {0, 18, 44}, 6062 {0, 8, 5}, 6063 {0, 10, 3}, 6064 {0, 41, 37}, 6065 {0, 42, 35}, 6066 {0, 2, 1}, 6067 {0, 47, 46}, 6068 {0, 48, 4}, 6069 {0, 11, 49}, 6070 {0, 50, 36}, 6071 {0, 19, 51}, 6072 {0, 53, 52}, 6073 {0, 55, 54}, 6074 {0, 15, 12}, 6075 {0, 26, 16}, 6076 {0, 56, 21}, 6077 {0, 25, 33}, 6078 {0, 43, 24}, 6079 {0, 57, 39}, 6080 {0, 59, 58}, 6081 {0, 61, 60}, 6082 {0, 62, 34}, 6083 {0, 64, 63}, 6084 {0, 17, 30}, 6085 {0, 66, 65}, 6086 {0, 20, 67}, 6087 {0, 13, 68}, 6088 {0, 28, 69}, 6089 {0, 70, 32}, 6090 {0, 72, 71}, 6091 {0, 73, 22}, 6092 {0, 75, 74}, 6093 {0, 77, 76}, 6094 {0, 79, 78}, 6095 {0, 80, 23}, 6096 {0, 45, 81}, 6097 {0, 83, 82}, 6098 {0, 85, 84}, 6099 {0, 38, 86}, 6100 {0, 88, 87}, 6101 })); 6102 6103 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunction, 1), std::move(codec)); 6104 } 6105 6106 { 6107 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(87, { 6108 {0, 0, 0}, 6109 {75986790, 0, 0}, 6110 {95470391, 0, 0}, 6111 {170378107, 0, 0}, 6112 {172029722, 0, 0}, 6113 {204234270, 0, 0}, 6114 {205885885, 0, 0}, 6115 {244668133, 0, 0}, 6116 {265778447, 0, 0}, 6117 {753954113, 0, 0}, 6118 {1000070091, 0, 0}, 6119 {1671139745, 0, 0}, 6120 {1774874546, 0, 0}, 6121 {1776526161, 0, 0}, 6122 {1887808856, 0, 0}, 6123 {1889460471, 0, 0}, 6124 {1917966999, 0, 0}, 6125 {2044728014, 0, 0}, 6126 {2192810893, 0, 0}, 6127 {2293247016, 0, 0}, 6128 {2503194620, 0, 0}, 6129 {2608484640, 0, 0}, 6130 {2615111110, 0, 0}, 6131 {2668769415, 0, 0}, 6132 {2759951687, 0, 0}, 6133 {2761603302, 0, 0}, 6134 {2856623532, 0, 0}, 6135 {2956189845, 0, 0}, 6136 {3085119011, 0, 0}, 6137 {3367313400, 0, 0}, 6138 {3447882276, 0, 0}, 6139 {3633746133, 0, 0}, 6140 {3635397748, 0, 0}, 6141 {3710645347, 0, 0}, 6142 {3712296962, 0, 0}, 6143 {3727494858, 0, 0}, 6144 {3747079365, 0, 0}, 6145 {3748965853, 0, 0}, 6146 {3750617468, 0, 0}, 6147 {4018820793, 0, 0}, 6148 {4022124023, 0, 0}, 6149 {4024173916, 0, 0}, 6150 {4215670524, 0, 0}, 6151 {4217322139, 0, 0}, 6152 {1111111111111111111, 0, 0}, 6153 {0, 39, 28}, 6154 {0, 29, 40}, 6155 {0, 37, 33}, 6156 {0, 38, 12}, 6157 {0, 9, 26}, 6158 {0, 18, 6}, 6159 {0, 41, 3}, 6160 {0, 11, 13}, 6161 {0, 5, 8}, 6162 {0, 45, 30}, 6163 {0, 22, 46}, 6164 {0, 48, 47}, 6165 {0, 16, 17}, 6166 {0, 34, 49}, 6167 {0, 51, 50}, 6168 {0, 53, 52}, 6169 {0, 7, 2}, 6170 {0, 23, 21}, 6171 {0, 54, 10}, 6172 {0, 20, 36}, 6173 {0, 55, 35}, 6174 {0, 56, 4}, 6175 {0, 43, 57}, 6176 {0, 59, 58}, 6177 {0, 60, 42}, 6178 {0, 62, 61}, 6179 {0, 63, 15}, 6180 {0, 64, 31}, 6181 {0, 14, 65}, 6182 {0, 66, 24}, 6183 {0, 67, 32}, 6184 {0, 68, 19}, 6185 {0, 70, 69}, 6186 {0, 71, 27}, 6187 {0, 73, 72}, 6188 {0, 75, 74}, 6189 {0, 77, 76}, 6190 {0, 78, 25}, 6191 {0, 44, 79}, 6192 {0, 81, 80}, 6193 {0, 83, 82}, 6194 {0, 1, 84}, 6195 {0, 86, 85}, 6196 })); 6197 6198 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunction, 3), std::move(codec)); 6199 } 6200 6201 { 6202 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(41, { 6203 {0, 0, 0}, 6204 {436416061, 0, 0}, 6205 {543621065, 0, 0}, 6206 {679771963, 0, 0}, 6207 {815757910, 0, 0}, 6208 {827698488, 0, 0}, 6209 {1294403159, 0, 0}, 6210 {1296054774, 0, 0}, 6211 {1297706389, 0, 0}, 6212 {1579585816, 0, 0}, 6213 {1675764636, 0, 0}, 6214 {1824016656, 0, 0}, 6215 {1951208733, 0, 0}, 6216 {2194691858, 0, 0}, 6217 {2320303498, 0, 0}, 6218 {2926633629, 0, 0}, 6219 {3095831808, 0, 0}, 6220 {3249265647, 0, 0}, 6221 {3334207724, 0, 0}, 6222 {4050155669, 0, 0}, 6223 {4141567741, 0, 0}, 6224 {1111111111111111111, 0, 0}, 6225 {0, 2, 11}, 6226 {0, 19, 16}, 6227 {0, 9, 4}, 6228 {0, 1, 17}, 6229 {0, 22, 10}, 6230 {0, 24, 23}, 6231 {0, 15, 25}, 6232 {0, 13, 26}, 6233 {0, 27, 20}, 6234 {0, 12, 28}, 6235 {0, 30, 29}, 6236 {0, 31, 18}, 6237 {0, 3, 21}, 6238 {0, 32, 14}, 6239 {0, 34, 33}, 6240 {0, 35, 8}, 6241 {0, 5, 6}, 6242 {0, 37, 36}, 6243 {0, 39, 38}, 6244 {0, 40, 7}, 6245 })); 6246 6247 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionParameter, 0), std::move(codec)); 6248 } 6249 6250 { 6251 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(41, { 6252 {0, 0, 0}, 6253 {522971108, 0, 0}, 6254 {615341051, 0, 0}, 6255 {718301639, 0, 0}, 6256 {985750227, 0, 0}, 6257 {1395113939, 0, 0}, 6258 {1510333659, 0, 0}, 6259 {1642805350, 0, 0}, 6260 {1846856260, 0, 0}, 6261 {1957218950, 0, 0}, 6262 {1977038330, 0, 0}, 6263 {1978689945, 0, 0}, 6264 {1980341560, 0, 0}, 6265 {2262220987, 0, 0}, 6266 {2674422363, 0, 0}, 6267 {3197739982, 0, 0}, 6268 {3465954368, 0, 0}, 6269 {3941049054, 0, 0}, 6270 {3945795573, 0, 0}, 6271 {4080527786, 0, 0}, 6272 {4154758669, 0, 0}, 6273 {1111111111111111111, 0, 0}, 6274 {0, 3, 17}, 6275 {0, 4, 15}, 6276 {0, 8, 7}, 6277 {0, 2, 20}, 6278 {0, 22, 19}, 6279 {0, 24, 23}, 6280 {0, 14, 25}, 6281 {0, 16, 26}, 6282 {0, 27, 13}, 6283 {0, 6, 28}, 6284 {0, 30, 29}, 6285 {0, 31, 10}, 6286 {0, 11, 21}, 6287 {0, 32, 12}, 6288 {0, 34, 33}, 6289 {0, 35, 5}, 6290 {0, 9, 18}, 6291 {0, 37, 36}, 6292 {0, 39, 38}, 6293 {0, 40, 1}, 6294 })); 6295 6296 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionParameter, 1), std::move(codec)); 6297 } 6298 6299 { 6300 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(27, { 6301 {0, 0, 0}, 6302 {545678922, 0, 0}, 6303 {679771963, 0, 0}, 6304 {899570100, 0, 0}, 6305 {929101967, 0, 0}, 6306 {1100599986, 0, 0}, 6307 {1951208733, 0, 0}, 6308 {2320303498, 0, 0}, 6309 {3056042030, 0, 0}, 6310 {3334207724, 0, 0}, 6311 {3357250579, 0, 0}, 6312 {3705139860, 0, 0}, 6313 {3800912395, 0, 0}, 6314 {3802564010, 0, 0}, 6315 {1111111111111111111, 0, 0}, 6316 {0, 5, 3}, 6317 {0, 10, 13}, 6318 {0, 4, 15}, 6319 {0, 16, 11}, 6320 {0, 17, 1}, 6321 {0, 14, 12}, 6322 {0, 19, 18}, 6323 {0, 21, 20}, 6324 {0, 22, 8}, 6325 {0, 7, 6}, 6326 {0, 23, 9}, 6327 {0, 25, 24}, 6328 {0, 26, 2}, 6329 })); 6330 6331 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionCall, 0), std::move(codec)); 6332 } 6333 6334 { 6335 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(115, { 6336 {0, 0, 0}, 6337 {57149555, 0, 0}, 6338 {86116519, 0, 0}, 6339 {168339452, 0, 0}, 6340 {181902171, 0, 0}, 6341 {284226441, 0, 0}, 6342 {314809953, 0, 0}, 6343 {330249537, 0, 0}, 6344 {527665290, 0, 0}, 6345 {545363837, 0, 0}, 6346 {707478563, 0, 0}, 6347 {740921498, 0, 0}, 6348 {807276090, 0, 0}, 6349 {824323032, 0, 0}, 6350 {835458563, 0, 0}, 6351 {1162127370, 0, 0}, 6352 {1245448751, 0, 0}, 6353 {1277245109, 0, 0}, 6354 {1375043498, 0, 0}, 6355 {1380991098, 0, 0}, 6356 {1603937321, 0, 0}, 6357 {1708264968, 0, 0}, 6358 {1717555224, 0, 0}, 6359 {1765126703, 0, 0}, 6360 {1838993983, 0, 0}, 6361 {1949856502, 0, 0}, 6362 {2108571893, 0, 0}, 6363 {2110223508, 0, 0}, 6364 {2293637521, 0, 0}, 6365 {2377112119, 0, 0}, 6366 {2378763734, 0, 0}, 6367 {2512398201, 0, 0}, 6368 {2516325050, 0, 0}, 6369 {2645135839, 0, 0}, 6370 {2708915136, 0, 0}, 6371 {2894979602, 0, 0}, 6372 {2903897222, 0, 0}, 6373 {2976581453, 0, 0}, 6374 {3054834317, 0, 0}, 6375 {3075866530, 0, 0}, 6376 {3085157904, 0, 0}, 6377 {3242843022, 0, 0}, 6378 {3266028549, 0, 0}, 6379 {3296691317, 0, 0}, 6380 {3299488628, 0, 0}, 6381 {3322500634, 0, 0}, 6382 {3345707173, 0, 0}, 6383 {3536390697, 0, 0}, 6384 {3584683259, 0, 0}, 6385 {3647606635, 0, 0}, 6386 {3760372982, 0, 0}, 6387 {3823959661, 0, 0}, 6388 {3839389658, 0, 0}, 6389 {4124281183, 0, 0}, 6390 {4130950286, 0, 0}, 6391 {4169878842, 0, 0}, 6392 {4174489262, 0, 0}, 6393 {4237497041, 0, 0}, 6394 {1111111111111111111, 0, 0}, 6395 {0, 17, 23}, 6396 {0, 37, 8}, 6397 {0, 45, 39}, 6398 {0, 41, 14}, 6399 {0, 48, 43}, 6400 {0, 40, 31}, 6401 {0, 19, 29}, 6402 {0, 53, 26}, 6403 {0, 10, 5}, 6404 {0, 50, 24}, 6405 {0, 27, 3}, 6406 {0, 59, 32}, 6407 {0, 51, 18}, 6408 {0, 52, 55}, 6409 {0, 60, 57}, 6410 {0, 62, 61}, 6411 {0, 36, 33}, 6412 {0, 64, 63}, 6413 {0, 65, 22}, 6414 {0, 66, 46}, 6415 {0, 6, 67}, 6416 {0, 68, 13}, 6417 {0, 21, 44}, 6418 {0, 1, 69}, 6419 {0, 30, 11}, 6420 {0, 71, 70}, 6421 {0, 12, 72}, 6422 {0, 74, 73}, 6423 {0, 76, 75}, 6424 {0, 16, 2}, 6425 {0, 49, 35}, 6426 {0, 77, 9}, 6427 {0, 42, 28}, 6428 {0, 15, 78}, 6429 {0, 80, 79}, 6430 {0, 82, 81}, 6431 {0, 47, 83}, 6432 {0, 85, 84}, 6433 {0, 87, 86}, 6434 {0, 89, 88}, 6435 {0, 20, 38}, 6436 {0, 54, 90}, 6437 {0, 34, 91}, 6438 {0, 93, 92}, 6439 {0, 25, 94}, 6440 {0, 95, 7}, 6441 {0, 97, 96}, 6442 {0, 56, 98}, 6443 {0, 100, 99}, 6444 {0, 102, 101}, 6445 {0, 104, 103}, 6446 {0, 4, 105}, 6447 {0, 107, 106}, 6448 {0, 58, 108}, 6449 {0, 110, 109}, 6450 {0, 112, 111}, 6451 {0, 114, 113}, 6452 })); 6453 6454 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionCall, 1), std::move(codec)); 6455 } 6456 6457 { 6458 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(81, { 6459 {0, 0, 0}, 6460 {35240468, 0, 0}, 6461 {36096192, 0, 0}, 6462 {123060826, 0, 0}, 6463 {184634770, 0, 0}, 6464 {459968607, 0, 0}, 6465 {619875033, 0, 0}, 6466 {950731750, 0, 0}, 6467 {1058429216, 0, 0}, 6468 {1182296898, 0, 0}, 6469 {1238120570, 0, 0}, 6470 {1271484400, 0, 0}, 6471 {1429389803, 0, 0}, 6472 {1717510093, 0, 0}, 6473 {1766422419, 0, 0}, 6474 {1775308984, 0, 0}, 6475 {1817271123, 0, 0}, 6476 {1917336504, 0, 0}, 6477 {1957265068, 0, 0}, 6478 {1998433745, 0, 0}, 6479 {2055664760, 0, 0}, 6480 {2303184249, 0, 0}, 6481 {2308565678, 0, 0}, 6482 {2451531615, 0, 0}, 6483 {2496297824, 0, 0}, 6484 {2507457870, 0, 0}, 6485 {2550501832, 0, 0}, 6486 {2590402790, 0, 0}, 6487 {2649103430, 0, 0}, 6488 {2831059514, 0, 0}, 6489 {2836440943, 0, 0}, 6490 {3269075805, 0, 0}, 6491 {3361419439, 0, 0}, 6492 {3457269042, 0, 0}, 6493 {3464197236, 0, 0}, 6494 {3472029049, 0, 0}, 6495 {3518630848, 0, 0}, 6496 {3587381650, 0, 0}, 6497 {3653985133, 0, 0}, 6498 {4185590212, 0, 0}, 6499 {4233562270, 0, 0}, 6500 {1111111111111111111, 0, 0}, 6501 {0, 40, 37}, 6502 {0, 22, 30}, 6503 {0, 2, 7}, 6504 {0, 24, 11}, 6505 {0, 16, 33}, 6506 {0, 6, 34}, 6507 {0, 42, 27}, 6508 {0, 5, 43}, 6509 {0, 4, 44}, 6510 {0, 36, 8}, 6511 {0, 39, 45}, 6512 {0, 46, 1}, 6513 {0, 3, 47}, 6514 {0, 48, 23}, 6515 {0, 49, 9}, 6516 {0, 50, 35}, 6517 {0, 52, 51}, 6518 {0, 32, 53}, 6519 {0, 13, 10}, 6520 {0, 26, 14}, 6521 {0, 19, 54}, 6522 {0, 55, 25}, 6523 {0, 56, 38}, 6524 {0, 17, 57}, 6525 {0, 59, 58}, 6526 {0, 61, 60}, 6527 {0, 62, 29}, 6528 {0, 12, 15}, 6529 {0, 18, 63}, 6530 {0, 28, 64}, 6531 {0, 65, 31}, 6532 {0, 67, 66}, 6533 {0, 20, 41}, 6534 {0, 69, 68}, 6535 {0, 71, 70}, 6536 {0, 21, 72}, 6537 {0, 74, 73}, 6538 {0, 76, 75}, 6539 {0, 78, 77}, 6540 {0, 80, 79}, 6541 })); 6542 6543 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionCall, 2), std::move(codec)); 6544 } 6545 6546 { 6547 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(61, { 6548 {0, 0, 0}, 6549 {37459569, 0, 0}, 6550 {162167595, 0, 0}, 6551 {535067202, 0, 0}, 6552 {701281393, 0, 0}, 6553 {837715723, 0, 0}, 6554 {1320550031, 0, 0}, 6555 {1630583316, 0, 0}, 6556 {1913735398, 0, 0}, 6557 {1918481917, 0, 0}, 6558 {1955871800, 0, 0}, 6559 {1977038330, 0, 0}, 6560 {2053214130, 0, 0}, 6561 {2443959748, 0, 0}, 6562 {2564745684, 0, 0}, 6563 {2622612602, 0, 0}, 6564 {2677252364, 0, 0}, 6565 {2736026107, 0, 0}, 6566 {2790624748, 0, 0}, 6567 {2882994691, 0, 0}, 6568 {2888125966, 0, 0}, 6569 {2970183398, 0, 0}, 6570 {3253403867, 0, 0}, 6571 {3427283542, 0, 0}, 6572 {3570411982, 0, 0}, 6573 {3619787319, 0, 0}, 6574 {3662767579, 0, 0}, 6575 {3884846406, 0, 0}, 6576 {3910458990, 0, 0}, 6577 {3927915220, 0, 0}, 6578 {4224872590, 0, 0}, 6579 {1111111111111111111, 0, 0}, 6580 {0, 5, 20}, 6581 {0, 6, 25}, 6582 {0, 23, 3}, 6583 {0, 2, 4}, 6584 {0, 14, 17}, 6585 {0, 11, 8}, 6586 {0, 27, 10}, 6587 {0, 19, 28}, 6588 {0, 12, 16}, 6589 {0, 33, 32}, 6590 {0, 35, 34}, 6591 {0, 37, 36}, 6592 {0, 39, 38}, 6593 {0, 40, 15}, 6594 {0, 41, 7}, 6595 {0, 1, 21}, 6596 {0, 24, 13}, 6597 {0, 29, 42}, 6598 {0, 44, 43}, 6599 {0, 22, 45}, 6600 {0, 47, 46}, 6601 {0, 49, 48}, 6602 {0, 50, 30}, 6603 {0, 31, 51}, 6604 {0, 53, 52}, 6605 {0, 55, 54}, 6606 {0, 56, 9}, 6607 {0, 57, 26}, 6608 {0, 59, 58}, 6609 {0, 60, 18}, 6610 })); 6611 6612 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionCall, 3), std::move(codec)); 6613 } 6614 6615 { 6616 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(39, { 6617 {0, 0, 0}, 6618 {744062262, 0, 0}, 6619 {810488476, 0, 0}, 6620 {1040775722, 0, 0}, 6621 {1280126114, 0, 0}, 6622 {1367301635, 0, 0}, 6623 {1684282922, 0, 0}, 6624 {1918481917, 0, 0}, 6625 {1978689945, 0, 0}, 6626 {1980341560, 0, 0}, 6627 {2443959748, 0, 0}, 6628 {2629265310, 0, 0}, 6629 {2790624748, 0, 0}, 6630 {2970183398, 0, 0}, 6631 {3044188332, 0, 0}, 6632 {3496407048, 0, 0}, 6633 {3662767579, 0, 0}, 6634 {3887377256, 0, 0}, 6635 {3971481069, 0, 0}, 6636 {4224872590, 0, 0}, 6637 {1111111111111111111, 0, 0}, 6638 {0, 3, 2}, 6639 {0, 18, 15}, 6640 {0, 21, 6}, 6641 {0, 13, 11}, 6642 {0, 4, 22}, 6643 {0, 14, 1}, 6644 {0, 24, 23}, 6645 {0, 25, 8}, 6646 {0, 27, 26}, 6647 {0, 20, 17}, 6648 {0, 5, 28}, 6649 {0, 29, 9}, 6650 {0, 16, 10}, 6651 {0, 31, 30}, 6652 {0, 32, 7}, 6653 {0, 19, 33}, 6654 {0, 35, 34}, 6655 {0, 37, 36}, 6656 {0, 38, 12}, 6657 })); 6658 6659 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionCall, 4), std::move(codec)); 6660 } 6661 6662 { 6663 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(27, { 6664 {0, 0, 0}, 6665 {37459569, 0, 0}, 6666 {837715723, 0, 0}, 6667 {1352628475, 0, 0}, 6668 {1918481917, 0, 0}, 6669 {1978689945, 0, 0}, 6670 {1980341560, 0, 0}, 6671 {2096388952, 0, 0}, 6672 {2622612602, 0, 0}, 6673 {2790624748, 0, 0}, 6674 {2970183398, 0, 0}, 6675 {3510682541, 0, 0}, 6676 {3783543823, 0, 0}, 6677 {4224872590, 0, 0}, 6678 {1111111111111111111, 0, 0}, 6679 {0, 7, 11}, 6680 {0, 2, 8}, 6681 {0, 15, 12}, 6682 {0, 1, 3}, 6683 {0, 16, 6}, 6684 {0, 18, 17}, 6685 {0, 19, 14}, 6686 {0, 20, 5}, 6687 {0, 10, 21}, 6688 {0, 22, 4}, 6689 {0, 23, 13}, 6690 {0, 25, 24}, 6691 {0, 9, 26}, 6692 })); 6693 6694 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionCall, 5), std::move(codec)); 6695 } 6696 6697 { 6698 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(13, { 6699 {0, 0, 0}, 6700 {1510333659, 0, 0}, 6701 {1684282922, 0, 0}, 6702 {1918481917, 0, 0}, 6703 {2790624748, 0, 0}, 6704 {3662767579, 0, 0}, 6705 {4224872590, 0, 0}, 6706 {1111111111111111111, 0, 0}, 6707 {0, 5, 1}, 6708 {0, 8, 2}, 6709 {0, 9, 7}, 6710 {0, 3, 10}, 6711 {0, 6, 11}, 6712 {0, 4, 12}, 6713 })); 6714 6715 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionCall, 6), std::move(codec)); 6716 } 6717 6718 { 6719 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(27, { 6720 {0, 0, 0}, 6721 {161668409, 0, 0}, 6722 {188347929, 0, 0}, 6723 {653708953, 0, 0}, 6724 {976111724, 0, 0}, 6725 {1510333659, 0, 0}, 6726 {1918481917, 0, 0}, 6727 {2790624748, 0, 0}, 6728 {3033873113, 0, 0}, 6729 {3499234137, 0, 0}, 6730 {3525913657, 0, 0}, 6731 {3552593177, 0, 0}, 6732 {3570411982, 0, 0}, 6733 {4224872590, 0, 0}, 6734 {1111111111111111111, 0, 0}, 6735 {0, 8, 3}, 6736 {0, 2, 9}, 6737 {0, 10, 11}, 6738 {0, 15, 1}, 6739 {0, 17, 16}, 6740 {0, 19, 18}, 6741 {0, 5, 4}, 6742 {0, 20, 6}, 6743 {0, 12, 21}, 6744 {0, 14, 22}, 6745 {0, 24, 23}, 6746 {0, 7, 25}, 6747 {0, 13, 26}, 6748 })); 6749 6750 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionCall, 7), std::move(codec)); 6751 } 6752 6753 { 6754 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(31, { 6755 {0, 0, 0}, 6756 {226836633, 0, 0}, 6757 {296981500, 0, 0}, 6758 {718877177, 0, 0}, 6759 {745556697, 0, 0}, 6760 {798915737, 0, 0}, 6761 {1510333659, 0, 0}, 6762 {1684282922, 0, 0}, 6763 {2444465148, 0, 0}, 6764 {2713718873, 0, 0}, 6765 {3495546641, 0, 0}, 6766 {3564402361, 0, 0}, 6767 {4056442905, 0, 0}, 6768 {4083122425, 0, 0}, 6769 {4123141705, 0, 0}, 6770 {4224872590, 0, 0}, 6771 {1111111111111111111, 0, 0}, 6772 {0, 14, 4}, 6773 {0, 5, 3}, 6774 {0, 9, 8}, 6775 {0, 13, 12}, 6776 {0, 1, 11}, 6777 {0, 18, 17}, 6778 {0, 2, 19}, 6779 {0, 21, 20}, 6780 {0, 23, 22}, 6781 {0, 25, 24}, 6782 {0, 26, 7}, 6783 {0, 27, 16}, 6784 {0, 10, 6}, 6785 {0, 29, 28}, 6786 {0, 15, 30}, 6787 })); 6788 6789 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionCall, 8), std::move(codec)); 6790 } 6791 6792 { 6793 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(35, { 6794 {0, 0, 0}, 6795 {161668409, 0, 0}, 6796 {188347929, 0, 0}, 6797 {215027449, 0, 0}, 6798 {296981500, 0, 0}, 6799 {653708953, 0, 0}, 6800 {680388473, 0, 0}, 6801 {1119069977, 0, 0}, 6802 {1510333659, 0, 0}, 6803 {1584774136, 0, 0}, 6804 {2049792025, 0, 0}, 6805 {2444465148, 0, 0}, 6806 {2568512089, 0, 0}, 6807 {3033873113, 0, 0}, 6808 {3499234137, 0, 0}, 6809 {3525913657, 0, 0}, 6810 {3552593177, 0, 0}, 6811 {4224872590, 0, 0}, 6812 {1111111111111111111, 0, 0}, 6813 {0, 7, 6}, 6814 {0, 10, 12}, 6815 {0, 4, 3}, 6816 {0, 16, 11}, 6817 {0, 19, 14}, 6818 {0, 5, 2}, 6819 {0, 20, 13}, 6820 {0, 21, 15}, 6821 {0, 1, 22}, 6822 {0, 24, 23}, 6823 {0, 26, 25}, 6824 {0, 28, 27}, 6825 {0, 18, 29}, 6826 {0, 8, 30}, 6827 {0, 32, 31}, 6828 {0, 9, 33}, 6829 {0, 17, 34}, 6830 })); 6831 6832 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionCall, 9), std::move(codec)); 6833 } 6834 6835 { 6836 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(25, { 6837 {0, 0, 0}, 6838 {825595257, 0, 0}, 6839 {1064945649, 0, 0}, 6840 {1290956281, 0, 0}, 6841 {1510333659, 0, 0}, 6842 {2096388952, 0, 0}, 6843 {2248357849, 0, 0}, 6844 {2713718873, 0, 0}, 6845 {3187066832, 0, 0}, 6846 {3205759417, 0, 0}, 6847 {4064212479, 0, 0}, 6848 {4163160985, 0, 0}, 6849 {4224872590, 0, 0}, 6850 {1111111111111111111, 0, 0}, 6851 {0, 8, 3}, 6852 {0, 2, 9}, 6853 {0, 7, 6}, 6854 {0, 5, 14}, 6855 {0, 16, 15}, 6856 {0, 17, 11}, 6857 {0, 19, 18}, 6858 {0, 20, 1}, 6859 {0, 4, 13}, 6860 {0, 22, 21}, 6861 {0, 10, 23}, 6862 {0, 12, 24}, 6863 })); 6864 6865 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionCall, 10), std::move(codec)); 6866 } 6867 6868 { 6869 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(27, { 6870 {0, 0, 0}, 6871 {123108003, 0, 0}, 6872 {296981500, 0, 0}, 6873 {595410904, 0, 0}, 6874 {1466938734, 0, 0}, 6875 {1503477720, 0, 0}, 6876 {1816558243, 0, 0}, 6877 {1990431740, 0, 0}, 6878 {2724625059, 0, 0}, 6879 {2790624748, 0, 0}, 6880 {2812498065, 0, 0}, 6881 {3160388974, 0, 0}, 6882 {3745223676, 0, 0}, 6883 {3982311384, 0, 0}, 6884 {1111111111111111111, 0, 0}, 6885 {0, 5, 13}, 6886 {0, 8, 1}, 6887 {0, 12, 11}, 6888 {0, 15, 3}, 6889 {0, 6, 4}, 6890 {0, 16, 7}, 6891 {0, 17, 14}, 6892 {0, 18, 2}, 6893 {0, 19, 10}, 6894 {0, 21, 20}, 6895 {0, 23, 22}, 6896 {0, 25, 24}, 6897 {0, 9, 26}, 6898 })); 6899 6900 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionCall, 11), std::move(codec)); 6901 } 6902 6903 { 6904 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(25, { 6905 {0, 0, 0}, 6906 {94145952, 0, 0}, 6907 {1054641568, 0, 0}, 6908 {1269075360, 0, 0}, 6909 {1675922848, 0, 0}, 6910 {2038205856, 0, 0}, 6911 {2433519008, 0, 0}, 6912 {2636942752, 0, 0}, 6913 {2790624748, 0, 0}, 6914 {2840366496, 0, 0}, 6915 {2851900832, 0, 0}, 6916 {2964622752, 0, 0}, 6917 {3654061472, 0, 0}, 6918 {1111111111111111111, 0, 0}, 6919 {0, 7, 1}, 6920 {0, 12, 6}, 6921 {0, 14, 10}, 6922 {0, 13, 4}, 6923 {0, 11, 15}, 6924 {0, 3, 16}, 6925 {0, 2, 17}, 6926 {0, 18, 5}, 6927 {0, 9, 19}, 6928 {0, 21, 20}, 6929 {0, 23, 22}, 6930 {0, 8, 24}, 6931 })); 6932 6933 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionCall, 12), std::move(codec)); 6934 } 6935 6936 { 6937 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(45, { 6938 {0, 0, 0}, 6939 {107544081, 0, 0}, 6940 {125015036, 0, 0}, 6941 {586244865, 0, 0}, 6942 {1033081852, 0, 0}, 6943 {1064945649, 0, 0}, 6944 {1155765244, 0, 0}, 6945 {1304296041, 0, 0}, 6946 {1543646433, 0, 0}, 6947 {1782996825, 0, 0}, 6948 {1941148668, 0, 0}, 6949 {2002490364, 0, 0}, 6950 {2022347217, 0, 0}, 6951 {2063832060, 0, 0}, 6952 {2487708241, 0, 0}, 6953 {2726532092, 0, 0}, 6954 {2849215484, 0, 0}, 6955 {2966409025, 0, 0}, 6956 {3445109809, 0, 0}, 6957 {3458449569, 0, 0}, 6958 {3634598908, 0, 0}, 6959 {3695940604, 0, 0}, 6960 {3923810593, 0, 0}, 6961 {1111111111111111111, 0, 0}, 6962 {0, 7, 2}, 6963 {0, 14, 13}, 6964 {0, 1, 23}, 6965 {0, 6, 5}, 6966 {0, 16, 15}, 6967 {0, 24, 17}, 6968 {0, 12, 25}, 6969 {0, 22, 18}, 6970 {0, 10, 26}, 6971 {0, 28, 27}, 6972 {0, 21, 29}, 6973 {0, 31, 30}, 6974 {0, 9, 8}, 6975 {0, 11, 32}, 6976 {0, 33, 19}, 6977 {0, 3, 34}, 6978 {0, 36, 35}, 6979 {0, 38, 37}, 6980 {0, 20, 39}, 6981 {0, 41, 40}, 6982 {0, 42, 4}, 6983 {0, 44, 43}, 6984 })); 6985 6986 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionCall, 13), std::move(codec)); 6987 } 6988 6989 { 6990 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(23, { 6991 {0, 0, 0}, 6992 {247698428, 0, 0}, 6993 {309040124, 0, 0}, 6994 {333554713, 0, 0}, 6995 {572905105, 0, 0}, 6996 {1033081852, 0, 0}, 6997 {2002490364, 0, 0}, 6998 {2009007457, 0, 0}, 6999 {2487708241, 0, 0}, 7000 {3634598908, 0, 0}, 7001 {3695940604, 0, 0}, 7002 {3923810593, 0, 0}, 7003 {1111111111111111111, 0, 0}, 7004 {0, 6, 1}, 7005 {0, 9, 7}, 7006 {0, 5, 12}, 7007 {0, 14, 13}, 7008 {0, 15, 8}, 7009 {0, 3, 16}, 7010 {0, 17, 11}, 7011 {0, 10, 4}, 7012 {0, 2, 18}, 7013 {0, 20, 19}, 7014 {0, 22, 21}, 7015 })); 7016 7017 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionCall, 14), std::move(codec)); 7018 } 7019 7020 { 7021 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(11, { 7022 {0, 0, 0}, 7023 {247698428, 0, 0}, 7024 {1033081852, 0, 0}, 7025 {2002490364, 0, 0}, 7026 {2910557180, 0, 0}, 7027 {3757282300, 0, 0}, 7028 {1111111111111111111, 0, 0}, 7029 {0, 6, 4}, 7030 {0, 7, 3}, 7031 {0, 2, 8}, 7032 {0, 1, 5}, 7033 {0, 10, 9}, 7034 })); 7035 7036 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionCall, 15), std::move(codec)); 7037 } 7038 7039 { 7040 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 7041 {0, 0, 0}, 7042 {1033081852, 0, 0}, 7043 {1094423548, 0, 0}, 7044 {2002490364, 0, 0}, 7045 {3757282300, 0, 0}, 7046 {1111111111111111111, 0, 0}, 7047 {0, 3, 5}, 7048 {0, 6, 2}, 7049 {0, 4, 7}, 7050 {0, 8, 1}, 7051 })); 7052 7053 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFunctionCall, 16), std::move(codec)); 7054 } 7055 7056 { 7057 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(57, { 7058 {0, 0, 0}, 7059 {135486769, 0, 0}, 7060 {450406196, 0, 0}, 7061 {503094540, 0, 0}, 7062 {543621065, 0, 0}, 7063 {827698488, 0, 0}, 7064 {1294403159, 0, 0}, 7065 {1296054774, 0, 0}, 7066 {1297706389, 0, 0}, 7067 {1322549027, 0, 0}, 7068 {1784441183, 0, 0}, 7069 {2194691858, 0, 0}, 7070 {2448331885, 0, 0}, 7071 {2468230023, 0, 0}, 7072 {2547657777, 0, 0}, 7073 {2549309392, 0, 0}, 7074 {2550961007, 0, 0}, 7075 {2934934694, 0, 0}, 7076 {2936586309, 0, 0}, 7077 {2938237924, 0, 0}, 7078 {3094180193, 0, 0}, 7079 {3095831808, 0, 0}, 7080 {3183924418, 0, 0}, 7081 {3561562003, 0, 0}, 7082 {3563213618, 0, 0}, 7083 {3564865233, 0, 0}, 7084 {4028622909, 0, 0}, 7085 {4039938779, 0, 0}, 7086 {4050155669, 0, 0}, 7087 {1111111111111111111, 0, 0}, 7088 {0, 27, 28}, 7089 {0, 10, 2}, 7090 {0, 25, 24}, 7091 {0, 1, 12}, 7092 {0, 30, 3}, 7093 {0, 20, 31}, 7094 {0, 9, 32}, 7095 {0, 34, 33}, 7096 {0, 35, 22}, 7097 {0, 26, 15}, 7098 {0, 19, 36}, 7099 {0, 18, 37}, 7100 {0, 38, 16}, 7101 {0, 39, 8}, 7102 {0, 5, 40}, 7103 {0, 6, 41}, 7104 {0, 21, 42}, 7105 {0, 11, 29}, 7106 {0, 4, 43}, 7107 {0, 13, 23}, 7108 {0, 14, 17}, 7109 {0, 7, 44}, 7110 {0, 46, 45}, 7111 {0, 48, 47}, 7112 {0, 50, 49}, 7113 {0, 52, 51}, 7114 {0, 54, 53}, 7115 {0, 56, 55}, 7116 })); 7117 7118 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpVariable, 0), std::move(codec)); 7119 } 7120 7121 { 7122 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(57, { 7123 {0, 0, 0}, 7124 {37459569, 0, 0}, 7125 {112745085, 0, 0}, 7126 {137840602, 0, 0}, 7127 {565334834, 0, 0}, 7128 {625975427, 0, 0}, 7129 {630964591, 0, 0}, 7130 {680016782, 0, 0}, 7131 {769422756, 0, 0}, 7132 {1009983433, 0, 0}, 7133 {1093210099, 0, 0}, 7134 {1572088444, 0, 0}, 7135 {1584774136, 0, 0}, 7136 {1641565587, 0, 0}, 7137 {1918481917, 0, 0}, 7138 {2190437442, 0, 0}, 7139 {2790624748, 0, 0}, 7140 {3085467405, 0, 0}, 7141 {3181646225, 0, 0}, 7142 {3192069648, 0, 0}, 7143 {3253403867, 0, 0}, 7144 {3390051757, 0, 0}, 7145 {3560665067, 0, 0}, 7146 {3662767579, 0, 0}, 7147 {4053789056, 0, 0}, 7148 {4064212479, 0, 0}, 7149 {4192247221, 0, 0}, 7150 {4224872590, 0, 0}, 7151 {4290024976, 0, 0}, 7152 {1111111111111111111, 0, 0}, 7153 {0, 2, 20}, 7154 {0, 28, 10}, 7155 {0, 13, 8}, 7156 {0, 15, 17}, 7157 {0, 30, 21}, 7158 {0, 19, 31}, 7159 {0, 4, 32}, 7160 {0, 34, 33}, 7161 {0, 35, 5}, 7162 {0, 7, 24}, 7163 {0, 9, 36}, 7164 {0, 3, 37}, 7165 {0, 38, 6}, 7166 {0, 39, 23}, 7167 {0, 27, 40}, 7168 {0, 14, 41}, 7169 {0, 25, 42}, 7170 {0, 1, 29}, 7171 {0, 12, 43}, 7172 {0, 11, 26}, 7173 {0, 18, 22}, 7174 {0, 16, 44}, 7175 {0, 46, 45}, 7176 {0, 48, 47}, 7177 {0, 50, 49}, 7178 {0, 52, 51}, 7179 {0, 54, 53}, 7180 {0, 56, 55}, 7181 })); 7182 7183 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpVariable, 1), std::move(codec)); 7184 } 7185 7186 { 7187 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(27, { 7188 {0, 0, 0}, 7189 {162255877, 0, 0}, 7190 {679771963, 0, 0}, 7191 {789872778, 0, 0}, 7192 {1154919607, 0, 0}, 7193 {1343794461, 0, 0}, 7194 {1951208733, 0, 0}, 7195 {2263349224, 0, 0}, 7196 {2320303498, 0, 0}, 7197 {2924146124, 0, 0}, 7198 {2984325996, 0, 0}, 7199 {3334207724, 0, 0}, 7200 {3868239231, 0, 0}, 7201 {3869890846, 0, 0}, 7202 {1111111111111111111, 0, 0}, 7203 {0, 5, 3}, 7204 {0, 9, 7}, 7205 {0, 12, 4}, 7206 {0, 16, 15}, 7207 {0, 18, 17}, 7208 {0, 14, 19}, 7209 {0, 13, 10}, 7210 {0, 20, 1}, 7211 {0, 21, 8}, 7212 {0, 2, 22}, 7213 {0, 11, 23}, 7214 {0, 6, 24}, 7215 {0, 26, 25}, 7216 })); 7217 7218 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpLoad, 0), std::move(codec)); 7219 } 7220 7221 { 7222 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(83, { 7223 {0, 0, 0}, 7224 {169674806, 0, 0}, 7225 {269823086, 0, 0}, 7226 {408465899, 0, 0}, 7227 {451264926, 0, 0}, 7228 {543558236, 0, 0}, 7229 {810488476, 0, 0}, 7230 {850497536, 0, 0}, 7231 {870594305, 0, 0}, 7232 {883854656, 0, 0}, 7233 {1033363654, 0, 0}, 7234 {1069781886, 0, 0}, 7235 {1141965917, 0, 0}, 7236 {1323407757, 0, 0}, 7237 {1570165302, 0, 0}, 7238 {1684282922, 0, 0}, 7239 {1742737136, 0, 0}, 7240 {1901166356, 0, 0}, 7241 {1949759310, 0, 0}, 7242 {2043873558, 0, 0}, 7243 {2087004702, 0, 0}, 7244 {2096388952, 0, 0}, 7245 {2157103435, 0, 0}, 7246 {2219733501, 0, 0}, 7247 {2356768706, 0, 0}, 7248 {2443959748, 0, 0}, 7249 {2517964682, 0, 0}, 7250 {2614879967, 0, 0}, 7251 {2622612602, 0, 0}, 7252 {2660843182, 0, 0}, 7253 {2959147533, 0, 0}, 7254 {2970183398, 0, 0}, 7255 {3044188332, 0, 0}, 7256 {3091876332, 0, 0}, 7257 {3187066832, 0, 0}, 7258 {3244209297, 0, 0}, 7259 {3487022798, 0, 0}, 7260 {3496407048, 0, 0}, 7261 {3570411982, 0, 0}, 7262 {3692647551, 0, 0}, 7263 {3713290482, 0, 0}, 7264 {3831290364, 0, 0}, 7265 {1111111111111111111, 0, 0}, 7266 {0, 4, 1}, 7267 {0, 35, 13}, 7268 {0, 25, 11}, 7269 {0, 7, 10}, 7270 {0, 19, 36}, 7271 {0, 43, 27}, 7272 {0, 16, 29}, 7273 {0, 22, 3}, 7274 {0, 41, 30}, 7275 {0, 44, 12}, 7276 {0, 2, 24}, 7277 {0, 40, 32}, 7278 {0, 23, 45}, 7279 {0, 46, 39}, 7280 {0, 17, 33}, 7281 {0, 48, 47}, 7282 {0, 8, 49}, 7283 {0, 51, 50}, 7284 {0, 52, 20}, 7285 {0, 53, 14}, 7286 {0, 31, 54}, 7287 {0, 15, 55}, 7288 {0, 57, 56}, 7289 {0, 59, 58}, 7290 {0, 6, 26}, 7291 {0, 61, 60}, 7292 {0, 34, 62}, 7293 {0, 64, 63}, 7294 {0, 5, 37}, 7295 {0, 9, 65}, 7296 {0, 18, 28}, 7297 {0, 66, 38}, 7298 {0, 68, 67}, 7299 {0, 69, 21}, 7300 {0, 71, 70}, 7301 {0, 73, 72}, 7302 {0, 75, 74}, 7303 {0, 77, 76}, 7304 {0, 79, 78}, 7305 {0, 80, 42}, 7306 {0, 82, 81}, 7307 })); 7308 7309 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpLoad, 1), std::move(codec)); 7310 } 7311 7312 { 7313 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(83, { 7314 {0, 0, 0}, 7315 {28782128, 0, 0}, 7316 {30433743, 0, 0}, 7317 {37459569, 0, 0}, 7318 {137840602, 0, 0}, 7319 {522971108, 0, 0}, 7320 {565334834, 0, 0}, 7321 {625975427, 0, 0}, 7322 {630964591, 0, 0}, 7323 {680016782, 0, 0}, 7324 {1009983433, 0, 0}, 7325 {1079999262, 0, 0}, 7326 {1395113939, 0, 0}, 7327 {1572088444, 0, 0}, 7328 {1584774136, 0, 0}, 7329 {1649426421, 0, 0}, 7330 {1918481917, 0, 0}, 7331 {1957218950, 0, 0}, 7332 {2311941439, 0, 0}, 7333 {2313593054, 0, 0}, 7334 {2790624748, 0, 0}, 7335 {2838165089, 0, 0}, 7336 {2839816704, 0, 0}, 7337 {2841468319, 0, 0}, 7338 {3085467405, 0, 0}, 7339 {3181646225, 0, 0}, 7340 {3192069648, 0, 0}, 7341 {3253403867, 0, 0}, 7342 {3364388739, 0, 0}, 7343 {3366040354, 0, 0}, 7344 {3367691969, 0, 0}, 7345 {3369343584, 0, 0}, 7346 {3560665067, 0, 0}, 7347 {3662767579, 0, 0}, 7348 {3945795573, 0, 0}, 7349 {4053789056, 0, 0}, 7350 {4064212479, 0, 0}, 7351 {4224872590, 0, 0}, 7352 {4239834800, 0, 0}, 7353 {4241486415, 0, 0}, 7354 {4243138030, 0, 0}, 7355 {4244789645, 0, 0}, 7356 {1111111111111111111, 0, 0}, 7357 {0, 1, 27}, 7358 {0, 15, 2}, 7359 {0, 10, 26}, 7360 {0, 7, 24}, 7361 {0, 9, 31}, 7362 {0, 43, 30}, 7363 {0, 29, 12}, 7364 {0, 11, 41}, 7365 {0, 40, 39}, 7366 {0, 44, 23}, 7367 {0, 22, 6}, 7368 {0, 34, 35}, 7369 {0, 18, 45}, 7370 {0, 46, 21}, 7371 {0, 17, 19}, 7372 {0, 48, 47}, 7373 {0, 28, 49}, 7374 {0, 51, 50}, 7375 {0, 52, 38}, 7376 {0, 53, 33}, 7377 {0, 4, 54}, 7378 {0, 13, 55}, 7379 {0, 57, 56}, 7380 {0, 59, 58}, 7381 {0, 37, 8}, 7382 {0, 61, 60}, 7383 {0, 5, 62}, 7384 {0, 64, 63}, 7385 {0, 36, 32}, 7386 {0, 3, 65}, 7387 {0, 14, 16}, 7388 {0, 66, 25}, 7389 {0, 68, 67}, 7390 {0, 69, 20}, 7391 {0, 71, 70}, 7392 {0, 73, 72}, 7393 {0, 75, 74}, 7394 {0, 77, 76}, 7395 {0, 79, 78}, 7396 {0, 80, 42}, 7397 {0, 82, 81}, 7398 })); 7399 7400 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpLoad, 2), std::move(codec)); 7401 } 7402 7403 { 7404 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(49, { 7405 {0, 0, 0}, 7406 {137840602, 0, 0}, 7407 {522971108, 0, 0}, 7408 {769422756, 0, 0}, 7409 {1009983433, 0, 0}, 7410 {1079999262, 0, 0}, 7411 {1558345254, 0, 0}, 7412 {1572088444, 0, 0}, 7413 {1641565587, 0, 0}, 7414 {1918481917, 0, 0}, 7415 {2311941439, 0, 0}, 7416 {2313593054, 0, 0}, 7417 {2790624748, 0, 0}, 7418 {2838165089, 0, 0}, 7419 {2994529201, 0, 0}, 7420 {2996180816, 0, 0}, 7421 {2997832431, 0, 0}, 7422 {3027538652, 0, 0}, 7423 {3253403867, 0, 0}, 7424 {3364388739, 0, 0}, 7425 {3560665067, 0, 0}, 7426 {3662767579, 0, 0}, 7427 {3945795573, 0, 0}, 7428 {4192247221, 0, 0}, 7429 {4224872590, 0, 0}, 7430 {1111111111111111111, 0, 0}, 7431 {0, 14, 17}, 7432 {0, 16, 15}, 7433 {0, 13, 11}, 7434 {0, 10, 3}, 7435 {0, 22, 18}, 7436 {0, 6, 8}, 7437 {0, 19, 2}, 7438 {0, 27, 26}, 7439 {0, 28, 5}, 7440 {0, 30, 29}, 7441 {0, 32, 31}, 7442 {0, 34, 33}, 7443 {0, 4, 35}, 7444 {0, 37, 36}, 7445 {0, 21, 1}, 7446 {0, 39, 38}, 7447 {0, 40, 24}, 7448 {0, 7, 23}, 7449 {0, 20, 9}, 7450 {0, 42, 41}, 7451 {0, 43, 25}, 7452 {0, 44, 12}, 7453 {0, 46, 45}, 7454 {0, 48, 47}, 7455 })); 7456 7457 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpStore, 0), std::move(codec)); 7458 } 7459 7460 { 7461 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(59, { 7462 {0, 0, 0}, 7463 {139011596, 0, 0}, 7464 {177111659, 0, 0}, 7465 {296981500, 0, 0}, 7466 {408465899, 0, 0}, 7467 {495107308, 0, 0}, 7468 {810488476, 0, 0}, 7469 {870594305, 0, 0}, 7470 {1367301635, 0, 0}, 7471 {1901166356, 0, 0}, 7472 {2055836767, 0, 0}, 7473 {2087004702, 0, 0}, 7474 {2096388952, 0, 0}, 7475 {2204920111, 0, 0}, 7476 {2517964682, 0, 0}, 7477 {2622612602, 0, 0}, 7478 {2660843182, 0, 0}, 7479 {2842919847, 0, 0}, 7480 {2855506940, 0, 0}, 7481 {2959147533, 0, 0}, 7482 {3044188332, 0, 0}, 7483 {3187066832, 0, 0}, 7484 {3504158761, 0, 0}, 7485 {3570411982, 0, 0}, 7486 {3619787319, 0, 0}, 7487 {3653838348, 0, 0}, 7488 {3692647551, 0, 0}, 7489 {3764205609, 0, 0}, 7490 {3831290364, 0, 0}, 7491 {3913885196, 0, 0}, 7492 {1111111111111111111, 0, 0}, 7493 {0, 20, 29}, 7494 {0, 25, 8}, 7495 {0, 5, 1}, 7496 {0, 24, 26}, 7497 {0, 14, 9}, 7498 {0, 27, 16}, 7499 {0, 31, 7}, 7500 {0, 33, 32}, 7501 {0, 17, 34}, 7502 {0, 35, 13}, 7503 {0, 22, 6}, 7504 {0, 3, 2}, 7505 {0, 23, 36}, 7506 {0, 28, 37}, 7507 {0, 19, 4}, 7508 {0, 38, 10}, 7509 {0, 39, 15}, 7510 {0, 40, 18}, 7511 {0, 42, 41}, 7512 {0, 43, 12}, 7513 {0, 44, 21}, 7514 {0, 45, 11}, 7515 {0, 47, 46}, 7516 {0, 49, 48}, 7517 {0, 51, 50}, 7518 {0, 53, 52}, 7519 {0, 55, 54}, 7520 {0, 57, 56}, 7521 {0, 30, 58}, 7522 })); 7523 7524 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpStore, 1), std::move(codec)); 7525 } 7526 7527 { 7528 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(35, { 7529 {0, 0, 0}, 7530 {440421571, 0, 0}, 7531 {827698488, 0, 0}, 7532 {907126242, 0, 0}, 7533 {908777857, 0, 0}, 7534 {910429472, 0, 0}, 7535 {1294403159, 0, 0}, 7536 {1296054774, 0, 0}, 7537 {1297706389, 0, 0}, 7538 {2080953106, 0, 0}, 7539 {2468230023, 0, 0}, 7540 {2547657777, 0, 0}, 7541 {2549309392, 0, 0}, 7542 {2550961007, 0, 0}, 7543 {3094857332, 0, 0}, 7544 {3561562003, 0, 0}, 7545 {3563213618, 0, 0}, 7546 {3564865233, 0, 0}, 7547 {1111111111111111111, 0, 0}, 7548 {0, 16, 12}, 7549 {0, 17, 13}, 7550 {0, 14, 19}, 7551 {0, 18, 20}, 7552 {0, 5, 21}, 7553 {0, 11, 7}, 7554 {0, 15, 22}, 7555 {0, 9, 8}, 7556 {0, 24, 23}, 7557 {0, 25, 4}, 7558 {0, 27, 26}, 7559 {0, 28, 3}, 7560 {0, 29, 10}, 7561 {0, 6, 1}, 7562 {0, 31, 30}, 7563 {0, 32, 2}, 7564 {0, 34, 33}, 7565 })); 7566 7567 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpAccessChain, 0), std::move(codec)); 7568 } 7569 7570 { 7571 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(99, { 7572 {0, 0, 0}, 7573 {27130513, 0, 0}, 7574 {28782128, 0, 0}, 7575 {30433743, 0, 0}, 7576 {32085358, 0, 0}, 7577 {155458798, 0, 0}, 7578 {157110413, 0, 0}, 7579 {163402553, 0, 0}, 7580 {165054168, 0, 0}, 7581 {213642219, 0, 0}, 7582 {215293834, 0, 0}, 7583 {216945449, 0, 0}, 7584 {221900294, 0, 0}, 7585 {545986953, 0, 0}, 7586 {979993429, 0, 0}, 7587 {1079999262, 0, 0}, 7588 {1302400505, 0, 0}, 7589 {1313182965, 0, 0}, 7590 {1314834580, 0, 0}, 7591 {1315613425, 0, 0}, 7592 {1317265040, 0, 0}, 7593 {1558345254, 0, 0}, 7594 {1649426421, 0, 0}, 7595 {2311941439, 0, 0}, 7596 {2313593054, 0, 0}, 7597 {2602027658, 0, 0}, 7598 {2838165089, 0, 0}, 7599 {2839816704, 0, 0}, 7600 {2841468319, 0, 0}, 7601 {2863084840, 0, 0}, 7602 {2994529201, 0, 0}, 7603 {2996180816, 0, 0}, 7604 {2997832431, 0, 0}, 7605 {3027538652, 0, 0}, 7606 {3187387500, 0, 0}, 7607 {3189039115, 0, 0}, 7608 {3364388739, 0, 0}, 7609 {3366040354, 0, 0}, 7610 {3367691969, 0, 0}, 7611 {3369343584, 0, 0}, 7612 {3716914380, 0, 0}, 7613 {3928842969, 0, 0}, 7614 {3930494584, 0, 0}, 7615 {3932146199, 0, 0}, 7616 {3945482286, 0, 0}, 7617 {4105051793, 0, 0}, 7618 {4239834800, 0, 0}, 7619 {4241486415, 0, 0}, 7620 {4243138030, 0, 0}, 7621 {4244789645, 0, 0}, 7622 {1111111111111111111, 0, 0}, 7623 {0, 29, 10}, 7624 {0, 17, 18}, 7625 {0, 13, 14}, 7626 {0, 44, 25}, 7627 {0, 8, 7}, 7628 {0, 20, 11}, 7629 {0, 33, 19}, 7630 {0, 6, 45}, 7631 {0, 42, 43}, 7632 {0, 40, 5}, 7633 {0, 9, 16}, 7634 {0, 1, 4}, 7635 {0, 35, 34}, 7636 {0, 12, 21}, 7637 {0, 52, 51}, 7638 {0, 31, 30}, 7639 {0, 41, 32}, 7640 {0, 54, 53}, 7641 {0, 55, 2}, 7642 {0, 3, 56}, 7643 {0, 58, 57}, 7644 {0, 60, 59}, 7645 {0, 61, 22}, 7646 {0, 63, 62}, 7647 {0, 65, 64}, 7648 {0, 67, 66}, 7649 {0, 39, 68}, 7650 {0, 38, 69}, 7651 {0, 47, 70}, 7652 {0, 49, 71}, 7653 {0, 28, 48}, 7654 {0, 37, 15}, 7655 {0, 73, 72}, 7656 {0, 74, 27}, 7657 {0, 23, 75}, 7658 {0, 76, 26}, 7659 {0, 24, 77}, 7660 {0, 79, 78}, 7661 {0, 81, 80}, 7662 {0, 82, 46}, 7663 {0, 36, 83}, 7664 {0, 85, 84}, 7665 {0, 87, 86}, 7666 {0, 89, 88}, 7667 {0, 91, 90}, 7668 {0, 93, 92}, 7669 {0, 95, 94}, 7670 {0, 97, 96}, 7671 {0, 50, 98}, 7672 })); 7673 7674 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpAccessChain, 1), std::move(codec)); 7675 } 7676 7677 { 7678 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(101, { 7679 {0, 0, 0}, 7680 {112745085, 0, 0}, 7681 {116376005, 0, 0}, 7682 {137840602, 0, 0}, 7683 {400248103, 0, 0}, 7684 {406044930, 0, 0}, 7685 {468372467, 0, 0}, 7686 {522971108, 0, 0}, 7687 {615341051, 0, 0}, 7688 {625975427, 0, 0}, 7689 {630964591, 0, 0}, 7690 {680016782, 0, 0}, 7691 {763027711, 0, 0}, 7692 {977312655, 0, 0}, 7693 {1009983433, 0, 0}, 7694 {1062250709, 0, 0}, 7695 {1395113939, 0, 0}, 7696 {1410849099, 0, 0}, 7697 {1642805350, 0, 0}, 7698 {1692932387, 0, 0}, 7699 {1698730948, 0, 0}, 7700 {1827244161, 0, 0}, 7701 {1918481917, 0, 0}, 7702 {2096472894, 0, 0}, 7703 {2190437442, 0, 0}, 7704 {2299842241, 0, 0}, 7705 {2433358586, 0, 0}, 7706 {2593325766, 0, 0}, 7707 {2785441472, 0, 0}, 7708 {2790624748, 0, 0}, 7709 {2879917723, 0, 0}, 7710 {2882994691, 0, 0}, 7711 {2902069960, 0, 0}, 7712 {3090408469, 0, 0}, 7713 {3181646225, 0, 0}, 7714 {3255947500, 0, 0}, 7715 {3263901372, 0, 0}, 7716 {3268751013, 0, 0}, 7717 {3347863687, 0, 0}, 7718 {3390051757, 0, 0}, 7719 {3560665067, 0, 0}, 7720 {3617689692, 0, 0}, 7721 {3662767579, 0, 0}, 7722 {3717523241, 0, 0}, 7723 {3854557817, 0, 0}, 7724 {3910458990, 0, 0}, 7725 {3941049054, 0, 0}, 7726 {3945795573, 0, 0}, 7727 {4080527786, 0, 0}, 7728 {4101009465, 0, 0}, 7729 {4290024976, 0, 0}, 7730 {1111111111111111111, 0, 0}, 7731 {0, 32, 44}, 7732 {0, 41, 26}, 7733 {0, 16, 10}, 7734 {0, 27, 45}, 7735 {0, 25, 38}, 7736 {0, 12, 18}, 7737 {0, 6, 35}, 7738 {0, 46, 23}, 7739 {0, 20, 37}, 7740 {0, 52, 19}, 7741 {0, 53, 21}, 7742 {0, 54, 48}, 7743 {0, 33, 55}, 7744 {0, 3, 8}, 7745 {0, 28, 56}, 7746 {0, 13, 57}, 7747 {0, 59, 58}, 7748 {0, 1, 49}, 7749 {0, 47, 60}, 7750 {0, 61, 14}, 7751 {0, 63, 62}, 7752 {0, 64, 43}, 7753 {0, 7, 4}, 7754 {0, 65, 15}, 7755 {0, 67, 66}, 7756 {0, 68, 17}, 7757 {0, 36, 2}, 7758 {0, 30, 69}, 7759 {0, 71, 70}, 7760 {0, 34, 5}, 7761 {0, 73, 72}, 7762 {0, 75, 74}, 7763 {0, 77, 76}, 7764 {0, 24, 78}, 7765 {0, 39, 31}, 7766 {0, 80, 79}, 7767 {0, 9, 11}, 7768 {0, 42, 81}, 7769 {0, 83, 82}, 7770 {0, 29, 50}, 7771 {0, 84, 51}, 7772 {0, 86, 85}, 7773 {0, 22, 40}, 7774 {0, 88, 87}, 7775 {0, 90, 89}, 7776 {0, 92, 91}, 7777 {0, 94, 93}, 7778 {0, 96, 95}, 7779 {0, 98, 97}, 7780 {0, 100, 99}, 7781 })); 7782 7783 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpAccessChain, 2), std::move(codec)); 7784 } 7785 7786 { 7787 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(69, { 7788 {0, 0, 0}, 7789 {51041423, 0, 0}, 7790 {142465290, 0, 0}, 7791 {144116905, 0, 0}, 7792 {290391815, 0, 0}, 7793 {438318340, 0, 0}, 7794 {529742207, 0, 0}, 7795 {677668732, 0, 0}, 7796 {917019124, 0, 0}, 7797 {1064945649, 0, 0}, 7798 {1156369516, 0, 0}, 7799 {1158021131, 0, 0}, 7800 {1304296041, 0, 0}, 7801 {1452222566, 0, 0}, 7802 {1543646433, 0, 0}, 7803 {1691572958, 0, 0}, 7804 {1782996825, 0, 0}, 7805 {1784648440, 0, 0}, 7806 {1930923350, 0, 0}, 7807 {2170273742, 0, 0}, 7808 {2318200267, 0, 0}, 7809 {2466126792, 0, 0}, 7810 {2557550659, 0, 0}, 7811 {2705477184, 0, 0}, 7812 {2796901051, 0, 0}, 7813 {2798552666, 0, 0}, 7814 {2944827576, 0, 0}, 7815 {3092754101, 0, 0}, 7816 {3184177968, 0, 0}, 7817 {3332104493, 0, 0}, 7818 {3571454885, 0, 0}, 7819 {3810805277, 0, 0}, 7820 {3958731802, 0, 0}, 7821 {4106658327, 0, 0}, 7822 {4198082194, 0, 0}, 7823 {1111111111111111111, 0, 0}, 7824 {0, 27, 33}, 7825 {0, 21, 5}, 7826 {0, 26, 13}, 7827 {0, 20, 8}, 7828 {0, 15, 7}, 7829 {0, 37, 36}, 7830 {0, 32, 29}, 7831 {0, 38, 4}, 7832 {0, 30, 1}, 7833 {0, 9, 12}, 7834 {0, 39, 18}, 7835 {0, 22, 40}, 7836 {0, 42, 41}, 7837 {0, 44, 43}, 7838 {0, 45, 35}, 7839 {0, 46, 34}, 7840 {0, 6, 14}, 7841 {0, 28, 23}, 7842 {0, 48, 47}, 7843 {0, 49, 31}, 7844 {0, 51, 50}, 7845 {0, 19, 24}, 7846 {0, 52, 10}, 7847 {0, 2, 53}, 7848 {0, 55, 54}, 7849 {0, 25, 56}, 7850 {0, 11, 57}, 7851 {0, 59, 58}, 7852 {0, 3, 17}, 7853 {0, 61, 60}, 7854 {0, 16, 62}, 7855 {0, 64, 63}, 7856 {0, 66, 65}, 7857 {0, 68, 67}, 7858 })); 7859 7860 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpAccessChain, 3), std::move(codec)); 7861 } 7862 7863 { 7864 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(85, { 7865 {0, 0, 0}, 7866 {142465290, 0, 0}, 7867 {144116905, 0, 0}, 7868 {198967948, 0, 0}, 7869 {290391815, 0, 0}, 7870 {529742207, 0, 0}, 7871 {586244865, 0, 0}, 7872 {677668732, 0, 0}, 7873 {825595257, 0, 0}, 7874 {917019124, 0, 0}, 7875 {973521782, 0, 0}, 7876 {1064945649, 0, 0}, 7877 {1156369516, 0, 0}, 7878 {1158021131, 0, 0}, 7879 {1212872174, 0, 0}, 7880 {1304296041, 0, 0}, 7881 {1452222566, 0, 0}, 7882 {1543646433, 0, 0}, 7883 {1600149091, 0, 0}, 7884 {1782996825, 0, 0}, 7885 {1784648440, 0, 0}, 7886 {1839499483, 0, 0}, 7887 {1930923350, 0, 0}, 7888 {2170273742, 0, 0}, 7889 {2226776400, 0, 0}, 7890 {2318200267, 0, 0}, 7891 {2466126792, 0, 0}, 7892 {2557550659, 0, 0}, 7893 {2614053317, 0, 0}, 7894 {2796901051, 0, 0}, 7895 {2798552666, 0, 0}, 7896 {2853403709, 0, 0}, 7897 {2944827576, 0, 0}, 7898 {3184177968, 0, 0}, 7899 {3240680626, 0, 0}, 7900 {3480031018, 0, 0}, 7901 {3571454885, 0, 0}, 7902 {3810805277, 0, 0}, 7903 {3867307935, 0, 0}, 7904 {3958731802, 0, 0}, 7905 {4106658327, 0, 0}, 7906 {4198082194, 0, 0}, 7907 {4254584852, 0, 0}, 7908 {1111111111111111111, 0, 0}, 7909 {0, 7, 11}, 7910 {0, 15, 4}, 7911 {0, 32, 25}, 7912 {0, 44, 39}, 7913 {0, 36, 22}, 7914 {0, 45, 17}, 7915 {0, 24, 46}, 7916 {0, 10, 9}, 7917 {0, 6, 27}, 7918 {0, 28, 18}, 7919 {0, 42, 34}, 7920 {0, 31, 14}, 7921 {0, 41, 38}, 7922 {0, 26, 3}, 7923 {0, 47, 33}, 7924 {0, 21, 8}, 7925 {0, 5, 35}, 7926 {0, 40, 16}, 7927 {0, 37, 23}, 7928 {0, 49, 48}, 7929 {0, 51, 50}, 7930 {0, 53, 52}, 7931 {0, 55, 54}, 7932 {0, 57, 56}, 7933 {0, 59, 58}, 7934 {0, 61, 60}, 7935 {0, 63, 62}, 7936 {0, 65, 64}, 7937 {0, 67, 66}, 7938 {0, 68, 12}, 7939 {0, 29, 69}, 7940 {0, 70, 1}, 7941 {0, 30, 2}, 7942 {0, 43, 71}, 7943 {0, 73, 72}, 7944 {0, 74, 20}, 7945 {0, 75, 19}, 7946 {0, 77, 76}, 7947 {0, 13, 78}, 7948 {0, 80, 79}, 7949 {0, 82, 81}, 7950 {0, 84, 83}, 7951 })); 7952 7953 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpAccessChain, 4), std::move(codec)); 7954 } 7955 7956 { 7957 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 7958 {0, 0, 0}, 7959 {144116905, 0, 0}, 7960 {1158021131, 0, 0}, 7961 {1784648440, 0, 0}, 7962 {2798552666, 0, 0}, 7963 {1111111111111111111, 0, 0}, 7964 {0, 1, 5}, 7965 {0, 4, 2}, 7966 {0, 6, 3}, 7967 {0, 8, 7}, 7968 })); 7969 7970 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpAccessChain, 5), std::move(codec)); 7971 } 7972 7973 { 7974 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(5, { 7975 {0, 0, 0}, 7976 {142465290, 0, 0}, 7977 {1782996825, 0, 0}, 7978 {1111111111111111111, 0, 0}, 7979 {0, 2, 1}, 7980 {0, 4, 3}, 7981 })); 7982 7983 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpAccessChain, 6), std::move(codec)); 7984 } 7985 7986 { 7987 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 7988 {0, 0, 0}, 7989 {679771963, 0, 0}, 7990 {2320303498, 0, 0}, 7991 {3334207724, 0, 0}, 7992 {1111111111111111111, 0, 0}, 7993 {0, 3, 4}, 7994 {0, 2, 5}, 7995 {0, 6, 1}, 7996 })); 7997 7998 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpVectorShuffle, 0), std::move(codec)); 7999 } 8000 8001 { 8002 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(59, { 8003 {0, 0, 0}, 8004 {177111659, 0, 0}, 8005 {413918748, 0, 0}, 8006 {529383565, 0, 0}, 8007 {646282397, 0, 0}, 8008 {837715723, 0, 0}, 8009 {1019457583, 0, 0}, 8010 {1022544883, 0, 0}, 8011 {1054461787, 0, 0}, 8012 {1097775533, 0, 0}, 8013 {1136775085, 0, 0}, 8014 {1191015885, 0, 0}, 8015 {1196280518, 0, 0}, 8016 {1203545131, 0, 0}, 8017 {1352628475, 0, 0}, 8018 {1367301635, 0, 0}, 8019 {1918742169, 0, 0}, 8020 {1922045399, 0, 0}, 8021 {2055836767, 0, 0}, 8022 {2183547611, 0, 0}, 8023 {2204920111, 0, 0}, 8024 {2358141757, 0, 0}, 8025 {2572638469, 0, 0}, 8026 {2597020383, 0, 0}, 8027 {2842919847, 0, 0}, 8028 {3619787319, 0, 0}, 8029 {3701632935, 0, 0}, 8030 {3783543823, 0, 0}, 8031 {4245257809, 0, 0}, 8032 {4265894873, 0, 0}, 8033 {1111111111111111111, 0, 0}, 8034 {0, 11, 23}, 8035 {0, 12, 2}, 8036 {0, 9, 7}, 8037 {0, 21, 19}, 8038 {0, 4, 29}, 8039 {0, 10, 28}, 8040 {0, 17, 16}, 8041 {0, 27, 3}, 8042 {0, 32, 31}, 8043 {0, 33, 22}, 8044 {0, 6, 34}, 8045 {0, 35, 8}, 8046 {0, 36, 24}, 8047 {0, 38, 37}, 8048 {0, 1, 14}, 8049 {0, 39, 20}, 8050 {0, 5, 40}, 8051 {0, 42, 41}, 8052 {0, 43, 26}, 8053 {0, 45, 44}, 8054 {0, 47, 46}, 8055 {0, 48, 18}, 8056 {0, 15, 49}, 8057 {0, 50, 25}, 8058 {0, 51, 13}, 8059 {0, 53, 52}, 8060 {0, 55, 54}, 8061 {0, 57, 56}, 8062 {0, 30, 58}, 8063 })); 8064 8065 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpVectorShuffle, 1), std::move(codec)); 8066 } 8067 8068 { 8069 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(59, { 8070 {0, 0, 0}, 8071 {236660303, 0, 0}, 8072 {342159236, 0, 0}, 8073 {371428004, 0, 0}, 8074 {373079619, 0, 0}, 8075 {488500848, 0, 0}, 8076 {495107308, 0, 0}, 8077 {864295921, 0, 0}, 8078 {1071164424, 0, 0}, 8079 {1136911283, 0, 0}, 8080 {1178317551, 0, 0}, 8081 {1510422521, 0, 0}, 8082 {1570165302, 0, 0}, 8083 {1822823090, 0, 0}, 8084 {1858116930, 0, 0}, 8085 {1977038330, 0, 0}, 8086 {2096388952, 0, 0}, 8087 {2157103435, 0, 0}, 8088 {2231688008, 0, 0}, 8089 {2604576561, 0, 0}, 8090 {2622612602, 0, 0}, 8091 {2771938750, 0, 0}, 8092 {2777172031, 0, 0}, 8093 {2996594997, 0, 0}, 8094 {3187066832, 0, 0}, 8095 {3496407048, 0, 0}, 8096 {3570411982, 0, 0}, 8097 {3609540589, 0, 0}, 8098 {3713290482, 0, 0}, 8099 {3797761273, 0, 0}, 8100 {1111111111111111111, 0, 0}, 8101 {0, 18, 8}, 8102 {0, 27, 9}, 8103 {0, 21, 10}, 8104 {0, 14, 24}, 8105 {0, 12, 19}, 8106 {0, 11, 15}, 8107 {0, 23, 2}, 8108 {0, 7, 13}, 8109 {0, 31, 22}, 8110 {0, 32, 4}, 8111 {0, 33, 29}, 8112 {0, 34, 1}, 8113 {0, 35, 3}, 8114 {0, 37, 36}, 8115 {0, 38, 28}, 8116 {0, 39, 5}, 8117 {0, 41, 40}, 8118 {0, 42, 17}, 8119 {0, 16, 43}, 8120 {0, 45, 44}, 8121 {0, 46, 6}, 8122 {0, 48, 47}, 8123 {0, 50, 49}, 8124 {0, 52, 51}, 8125 {0, 25, 53}, 8126 {0, 54, 20}, 8127 {0, 55, 26}, 8128 {0, 57, 56}, 8129 {0, 30, 58}, 8130 })); 8131 8132 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpVectorShuffle, 2), std::move(codec)); 8133 } 8134 8135 { 8136 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(47, { 8137 {0, 0, 0}, 8138 {236660303, 0, 0}, 8139 {342159236, 0, 0}, 8140 {488500848, 0, 0}, 8141 {495107308, 0, 0}, 8142 {864295921, 0, 0}, 8143 {1178317551, 0, 0}, 8144 {1510422521, 0, 0}, 8145 {1570165302, 0, 0}, 8146 {1858116930, 0, 0}, 8147 {1977038330, 0, 0}, 8148 {2096388952, 0, 0}, 8149 {2157103435, 0, 0}, 8150 {2231688008, 0, 0}, 8151 {2604576561, 0, 0}, 8152 {2622612602, 0, 0}, 8153 {2771938750, 0, 0}, 8154 {2777172031, 0, 0}, 8155 {2996594997, 0, 0}, 8156 {3496407048, 0, 0}, 8157 {3570411982, 0, 0}, 8158 {3609540589, 0, 0}, 8159 {3713290482, 0, 0}, 8160 {3797761273, 0, 0}, 8161 {1111111111111111111, 0, 0}, 8162 {0, 21, 13}, 8163 {0, 16, 6}, 8164 {0, 14, 9}, 8165 {0, 7, 10}, 8166 {0, 18, 2}, 8167 {0, 17, 5}, 8168 {0, 25, 8}, 8169 {0, 22, 12}, 8170 {0, 26, 23}, 8171 {0, 27, 1}, 8172 {0, 28, 3}, 8173 {0, 30, 29}, 8174 {0, 32, 31}, 8175 {0, 34, 33}, 8176 {0, 35, 11}, 8177 {0, 36, 4}, 8178 {0, 38, 37}, 8179 {0, 40, 39}, 8180 {0, 41, 15}, 8181 {0, 42, 19}, 8182 {0, 20, 43}, 8183 {0, 45, 44}, 8184 {0, 24, 46}, 8185 })); 8186 8187 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpVectorShuffle, 3), std::move(codec)); 8188 } 8189 8190 { 8191 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(15, { 8192 {0, 0, 0}, 8193 {679771963, 0, 0}, 8194 {1146476634, 0, 0}, 8195 {2160380860, 0, 0}, 8196 {2320303498, 0, 0}, 8197 {3334207724, 0, 0}, 8198 {3800912395, 0, 0}, 8199 {3802564010, 0, 0}, 8200 {1111111111111111111, 0, 0}, 8201 {0, 2, 3}, 8202 {0, 9, 6}, 8203 {0, 8, 7}, 8204 {0, 11, 10}, 8205 {0, 4, 12}, 8206 {0, 5, 13}, 8207 {0, 14, 1}, 8208 })); 8209 8210 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCompositeConstruct, 0), std::move(codec)); 8211 } 8212 8213 { 8214 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(79, { 8215 {0, 0, 0}, 8216 {107497541, 0, 0}, 8217 {289648234, 0, 0}, 8218 {348584153, 0, 0}, 8219 {369686787, 0, 0}, 8220 {429277936, 0, 0}, 8221 {449954059, 0, 0}, 8222 {508217552, 0, 0}, 8223 {742917749, 0, 0}, 8224 {1032593647, 0, 0}, 8225 {1158929937, 0, 0}, 8226 {1209418480, 0, 0}, 8227 {1319785741, 0, 0}, 8228 {1321616112, 0, 0}, 8229 {1417363940, 0, 0}, 8230 {1541020250, 0, 0}, 8231 {1564342316, 0, 0}, 8232 {1578775276, 0, 0}, 8233 {1631434666, 0, 0}, 8234 {1636389511, 0, 0}, 8235 {2012838864, 0, 0}, 8236 {2262137600, 0, 0}, 8237 {2281956980, 0, 0}, 8238 {2359973133, 0, 0}, 8239 {2464905186, 0, 0}, 8240 {2613179511, 0, 0}, 8241 {2621255555, 0, 0}, 8242 {2817335337, 0, 0}, 8243 {2881302403, 0, 0}, 8244 {3063300848, 0, 0}, 8245 {3151638847, 0, 0}, 8246 {3233393284, 0, 0}, 8247 {3323682385, 0, 0}, 8248 {3337532056, 0, 0}, 8249 {3456899824, 0, 0}, 8250 {3547456240, 0, 0}, 8251 {3675926744, 0, 0}, 8252 {3753486980, 0, 0}, 8253 {3931641900, 0, 0}, 8254 {3970432934, 0, 0}, 8255 {1111111111111111111, 0, 0}, 8256 {0, 25, 1}, 8257 {0, 6, 4}, 8258 {0, 8, 19}, 8259 {0, 39, 24}, 8260 {0, 3, 2}, 8261 {0, 34, 14}, 8262 {0, 10, 9}, 8263 {0, 18, 38}, 8264 {0, 32, 15}, 8265 {0, 27, 16}, 8266 {0, 28, 35}, 8267 {0, 13, 26}, 8268 {0, 20, 23}, 8269 {0, 21, 11}, 8270 {0, 36, 33}, 8271 {0, 5, 22}, 8272 {0, 42, 41}, 8273 {0, 43, 29}, 8274 {0, 45, 44}, 8275 {0, 7, 46}, 8276 {0, 48, 47}, 8277 {0, 30, 31}, 8278 {0, 50, 49}, 8279 {0, 52, 51}, 8280 {0, 54, 53}, 8281 {0, 55, 17}, 8282 {0, 57, 56}, 8283 {0, 59, 58}, 8284 {0, 61, 60}, 8285 {0, 62, 12}, 8286 {0, 64, 63}, 8287 {0, 66, 65}, 8288 {0, 67, 37}, 8289 {0, 69, 68}, 8290 {0, 71, 70}, 8291 {0, 73, 72}, 8292 {0, 75, 74}, 8293 {0, 77, 76}, 8294 {0, 40, 78}, 8295 })); 8296 8297 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCompositeConstruct, 1), std::move(codec)); 8298 } 8299 8300 { 8301 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(87, { 8302 {0, 0, 0}, 8303 {153013225, 0, 0}, 8304 {296836635, 0, 0}, 8305 {296981500, 0, 0}, 8306 {778500192, 0, 0}, 8307 {810488476, 0, 0}, 8308 {848380423, 0, 0}, 8309 {900522183, 0, 0}, 8310 {910398460, 0, 0}, 8311 {959681532, 0, 0}, 8312 {1141965917, 0, 0}, 8313 {1287304304, 0, 0}, 8314 {1323407757, 0, 0}, 8315 {1417363940, 0, 0}, 8316 {1471851763, 0, 0}, 8317 {1526654696, 0, 0}, 8318 {1654776395, 0, 0}, 8319 {1684282922, 0, 0}, 8320 {1739837626, 0, 0}, 8321 {1791352211, 0, 0}, 8322 {2195550588, 0, 0}, 8323 {2319227476, 0, 0}, 8324 {2491124112, 0, 0}, 8325 {2789375411, 0, 0}, 8326 {2807448986, 0, 0}, 8327 {2817579280, 0, 0}, 8328 {2835131395, 0, 0}, 8329 {2847102741, 0, 0}, 8330 {2855506940, 0, 0}, 8331 {2860348412, 0, 0}, 8332 {3079287749, 0, 0}, 8333 {3091876332, 0, 0}, 8334 {3168953855, 0, 0}, 8335 {3374978006, 0, 0}, 8336 {3399062057, 0, 0}, 8337 {3510257966, 0, 0}, 8338 {3554463148, 0, 0}, 8339 {3579593979, 0, 0}, 8340 {3757851979, 0, 0}, 8341 {3759503594, 0, 0}, 8342 {3761155209, 0, 0}, 8343 {3762806824, 0, 0}, 8344 {3902853271, 0, 0}, 8345 {4140081844, 0, 0}, 8346 {1111111111111111111, 0, 0}, 8347 {0, 38, 42}, 8348 {0, 14, 23}, 8349 {0, 26, 18}, 8350 {0, 39, 35}, 8351 {0, 6, 40}, 8352 {0, 16, 13}, 8353 {0, 33, 34}, 8354 {0, 12, 4}, 8355 {0, 27, 41}, 8356 {0, 25, 21}, 8357 {0, 24, 1}, 8358 {0, 37, 19}, 8359 {0, 32, 22}, 8360 {0, 2, 8}, 8361 {0, 20, 17}, 8362 {0, 43, 36}, 8363 {0, 29, 15}, 8364 {0, 46, 45}, 8365 {0, 48, 47}, 8366 {0, 50, 49}, 8367 {0, 52, 51}, 8368 {0, 54, 53}, 8369 {0, 7, 55}, 8370 {0, 56, 30}, 8371 {0, 57, 5}, 8372 {0, 59, 58}, 8373 {0, 60, 11}, 8374 {0, 9, 61}, 8375 {0, 63, 62}, 8376 {0, 65, 64}, 8377 {0, 66, 31}, 8378 {0, 68, 67}, 8379 {0, 10, 69}, 8380 {0, 71, 70}, 8381 {0, 28, 72}, 8382 {0, 74, 73}, 8383 {0, 76, 75}, 8384 {0, 78, 77}, 8385 {0, 79, 3}, 8386 {0, 81, 80}, 8387 {0, 83, 82}, 8388 {0, 85, 84}, 8389 {0, 44, 86}, 8390 })); 8391 8392 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCompositeConstruct, 2), std::move(codec)); 8393 } 8394 8395 { 8396 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(81, { 8397 {0, 0, 0}, 8398 {14244860, 0, 0}, 8399 {150820676, 0, 0}, 8400 {153013225, 0, 0}, 8401 {269823086, 0, 0}, 8402 {289648234, 0, 0}, 8403 {296981500, 0, 0}, 8404 {678695941, 0, 0}, 8405 {810488476, 0, 0}, 8406 {850592577, 0, 0}, 8407 {870594305, 0, 0}, 8408 {910398460, 0, 0}, 8409 {959681532, 0, 0}, 8410 {1206571206, 0, 0}, 8411 {1287304304, 0, 0}, 8412 {1323407757, 0, 0}, 8413 {1471851763, 0, 0}, 8414 {1526654696, 0, 0}, 8415 {1684282922, 0, 0}, 8416 {1734446471, 0, 0}, 8417 {1758530522, 0, 0}, 8418 {2117320444, 0, 0}, 8419 {2118972059, 0, 0}, 8420 {2120623674, 0, 0}, 8421 {2122275289, 0, 0}, 8422 {2219733501, 0, 0}, 8423 {2262321736, 0, 0}, 8424 {2807448986, 0, 0}, 8425 {2817579280, 0, 0}, 8426 {2835131395, 0, 0}, 8427 {2855506940, 0, 0}, 8428 {2860348412, 0, 0}, 8429 {2951272396, 0, 0}, 8430 {3079287749, 0, 0}, 8431 {3168953855, 0, 0}, 8432 {3502816184, 0, 0}, 8433 {3510257966, 0, 0}, 8434 {3554463148, 0, 0}, 8435 {3997952447, 0, 0}, 8436 {4140081844, 0, 0}, 8437 {4182141402, 0, 0}, 8438 {1111111111111111111, 0, 0}, 8439 {0, 21, 26}, 8440 {0, 29, 16}, 8441 {0, 22, 36}, 8442 {0, 1, 23}, 8443 {0, 20, 5}, 8444 {0, 19, 35}, 8445 {0, 10, 38}, 8446 {0, 13, 24}, 8447 {0, 28, 7}, 8448 {0, 27, 3}, 8449 {0, 40, 2}, 8450 {0, 34, 9}, 8451 {0, 32, 11}, 8452 {0, 33, 18}, 8453 {0, 39, 37}, 8454 {0, 31, 17}, 8455 {0, 43, 42}, 8456 {0, 45, 44}, 8457 {0, 47, 46}, 8458 {0, 49, 48}, 8459 {0, 51, 50}, 8460 {0, 8, 52}, 8461 {0, 15, 53}, 8462 {0, 55, 54}, 8463 {0, 56, 14}, 8464 {0, 58, 57}, 8465 {0, 60, 59}, 8466 {0, 61, 25}, 8467 {0, 63, 62}, 8468 {0, 4, 64}, 8469 {0, 66, 65}, 8470 {0, 68, 67}, 8471 {0, 70, 69}, 8472 {0, 71, 12}, 8473 {0, 6, 72}, 8474 {0, 30, 73}, 8475 {0, 75, 74}, 8476 {0, 77, 76}, 8477 {0, 79, 78}, 8478 {0, 41, 80}, 8479 })); 8480 8481 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCompositeConstruct, 3), std::move(codec)); 8482 } 8483 8484 { 8485 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(111, { 8486 {0, 0, 0}, 8487 {34183582, 0, 0}, 8488 {93914936, 0, 0}, 8489 {94303122, 0, 0}, 8490 {117998987, 0, 0}, 8491 {153013225, 0, 0}, 8492 {296981500, 0, 0}, 8493 {451264926, 0, 0}, 8494 {473485679, 0, 0}, 8495 {476788909, 0, 0}, 8496 {478440524, 0, 0}, 8497 {480092139, 0, 0}, 8498 {481743754, 0, 0}, 8499 {810488476, 0, 0}, 8500 {871966503, 0, 0}, 8501 {910398460, 0, 0}, 8502 {918189168, 0, 0}, 8503 {933769938, 0, 0}, 8504 {959681532, 0, 0}, 8505 {1149665466, 0, 0}, 8506 {1166917451, 0, 0}, 8507 {1227221002, 0, 0}, 8508 {1310740861, 0, 0}, 8509 {1323407757, 0, 0}, 8510 {1341516288, 0, 0}, 8511 {1373166395, 0, 0}, 8512 {1445161581, 0, 0}, 8513 {1461645203, 0, 0}, 8514 {1471851763, 0, 0}, 8515 {1526654696, 0, 0}, 8516 {1561718045, 0, 0}, 8517 {1593584949, 0, 0}, 8518 {1684282922, 0, 0}, 8519 {1800404122, 0, 0}, 8520 {1862284649, 0, 0}, 8521 {2213411495, 0, 0}, 8522 {2668680621, 0, 0}, 8523 {2805256437, 0, 0}, 8524 {2807448986, 0, 0}, 8525 {2835131395, 0, 0}, 8526 {2855506940, 0, 0}, 8527 {2860348412, 0, 0}, 8528 {3000904950, 0, 0}, 8529 {3107413701, 0, 0}, 8530 {3168953855, 0, 0}, 8531 {3333131702, 0, 0}, 8532 {3365041621, 0, 0}, 8533 {3456899824, 0, 0}, 8534 {3505028338, 0, 0}, 8535 {3510257966, 0, 0}, 8536 {3554463148, 0, 0}, 8537 {3606320646, 0, 0}, 8538 {3692647551, 0, 0}, 8539 {3861006967, 0, 0}, 8540 {4126287524, 0, 0}, 8541 {4140081844, 0, 0}, 8542 {1111111111111111111, 0, 0}, 8543 {0, 14, 33}, 8544 {0, 35, 25}, 8545 {0, 27, 17}, 8546 {0, 8, 20}, 8547 {0, 3, 54}, 8548 {0, 1, 19}, 8549 {0, 10, 46}, 8550 {0, 11, 9}, 8551 {0, 39, 28}, 8552 {0, 53, 49}, 8553 {0, 12, 2}, 8554 {0, 34, 4}, 8555 {0, 47, 36}, 8556 {0, 23, 45}, 8557 {0, 5, 37}, 8558 {0, 24, 38}, 8559 {0, 43, 26}, 8560 {0, 48, 51}, 8561 {0, 44, 32}, 8562 {0, 15, 16}, 8563 {0, 57, 22}, 8564 {0, 55, 50}, 8565 {0, 29, 58}, 8566 {0, 60, 59}, 8567 {0, 41, 61}, 8568 {0, 63, 62}, 8569 {0, 65, 64}, 8570 {0, 67, 66}, 8571 {0, 69, 68}, 8572 {0, 13, 70}, 8573 {0, 71, 7}, 8574 {0, 42, 31}, 8575 {0, 73, 72}, 8576 {0, 75, 74}, 8577 {0, 21, 30}, 8578 {0, 77, 76}, 8579 {0, 79, 78}, 8580 {0, 81, 80}, 8581 {0, 82, 18}, 8582 {0, 84, 83}, 8583 {0, 86, 85}, 8584 {0, 88, 87}, 8585 {0, 90, 89}, 8586 {0, 52, 91}, 8587 {0, 6, 92}, 8588 {0, 94, 93}, 8589 {0, 96, 95}, 8590 {0, 98, 97}, 8591 {0, 99, 40}, 8592 {0, 101, 100}, 8593 {0, 103, 102}, 8594 {0, 105, 104}, 8595 {0, 107, 106}, 8596 {0, 109, 108}, 8597 {0, 56, 110}, 8598 })); 8599 8600 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCompositeConstruct, 4), std::move(codec)); 8601 } 8602 8603 { 8604 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(155, { 8605 {0, 0, 0}, 8606 {18776483, 0, 0}, 8607 {37009196, 0, 0}, 8608 {277023757, 0, 0}, 8609 {296981500, 0, 0}, 8610 {348988933, 0, 0}, 8611 {451264926, 0, 0}, 8612 {564884461, 0, 0}, 8613 {804899022, 0, 0}, 8614 {810488476, 0, 0}, 8615 {870594305, 0, 0}, 8616 {876864198, 0, 0}, 8617 {900522183, 0, 0}, 8618 {928261291, 0, 0}, 8619 {959681532, 0, 0}, 8620 {1164724902, 0, 0}, 8621 {1323407757, 0, 0}, 8622 {1332774287, 0, 0}, 8623 {1404739463, 0, 0}, 8624 {1447712361, 0, 0}, 8625 {1450415100, 0, 0}, 8626 {1513770932, 0, 0}, 8627 {1620634991, 0, 0}, 8628 {1692600167, 0, 0}, 8629 {1860649552, 0, 0}, 8630 {1932614728, 0, 0}, 8631 {2087004702, 0, 0}, 8632 {2148510256, 0, 0}, 8633 {2220475432, 0, 0}, 8634 {2388524817, 0, 0}, 8635 {2460489993, 0, 0}, 8636 {2676385521, 0, 0}, 8637 {2748350697, 0, 0}, 8638 {2855506940, 0, 0}, 8639 {2860348412, 0, 0}, 8640 {2916400082, 0, 0}, 8641 {2988365258, 0, 0}, 8642 {3061856840, 0, 0}, 8643 {3063508455, 0, 0}, 8644 {3065160070, 0, 0}, 8645 {3066811685, 0, 0}, 8646 {3068463300, 0, 0}, 8647 {3070114915, 0, 0}, 8648 {3071766530, 0, 0}, 8649 {3073418145, 0, 0}, 8650 {3075069760, 0, 0}, 8651 {3076721375, 0, 0}, 8652 {3078372990, 0, 0}, 8653 {3080024605, 0, 0}, 8654 {3081676220, 0, 0}, 8655 {3083327835, 0, 0}, 8656 {3084979450, 0, 0}, 8657 {3086631065, 0, 0}, 8658 {3088282680, 0, 0}, 8659 {3114708520, 0, 0}, 8660 {3116360135, 0, 0}, 8661 {3118011750, 0, 0}, 8662 {3119663365, 0, 0}, 8663 {3121314980, 0, 0}, 8664 {3124618210, 0, 0}, 8665 {3126269825, 0, 0}, 8666 {3127921440, 0, 0}, 8667 {3129573055, 0, 0}, 8668 {3131224670, 0, 0}, 8669 {3132876285, 0, 0}, 8670 {3134527900, 0, 0}, 8671 {3136179515, 0, 0}, 8672 {3204260786, 0, 0}, 8673 {3264086791, 0, 0}, 8674 {3276225962, 0, 0}, 8675 {3444275347, 0, 0}, 8676 {3516240523, 0, 0}, 8677 {3588205699, 0, 0}, 8678 {3732136051, 0, 0}, 8679 {3804101227, 0, 0}, 8680 {3874089391, 0, 0}, 8681 {4044115788, 0, 0}, 8682 {4116080964, 0, 0}, 8683 {1111111111111111111, 0, 0}, 8684 {0, 45, 43}, 8685 {0, 3, 46}, 8686 {0, 71, 36}, 8687 {0, 44, 34}, 8688 {0, 76, 54}, 8689 {0, 73, 55}, 8690 {0, 57, 67}, 8691 {0, 51, 56}, 8692 {0, 31, 27}, 8693 {0, 38, 37}, 8694 {0, 40, 39}, 8695 {0, 42, 41}, 8696 {0, 49, 47}, 8697 {0, 35, 50}, 8698 {0, 21, 70}, 8699 {0, 19, 5}, 8700 {0, 8, 58}, 8701 {0, 17, 11}, 8702 {0, 24, 18}, 8703 {0, 30, 29}, 8704 {0, 52, 9}, 8705 {0, 77, 22}, 8706 {0, 62, 48}, 8707 {0, 25, 53}, 8708 {0, 20, 59}, 8709 {0, 26, 60}, 8710 {0, 72, 6}, 8711 {0, 79, 69}, 8712 {0, 80, 7}, 8713 {0, 81, 2}, 8714 {0, 12, 13}, 8715 {0, 82, 68}, 8716 {0, 65, 61}, 8717 {0, 74, 63}, 8718 {0, 23, 83}, 8719 {0, 64, 10}, 8720 {0, 84, 32}, 8721 {0, 66, 28}, 8722 {0, 15, 85}, 8723 {0, 86, 16}, 8724 {0, 88, 87}, 8725 {0, 90, 89}, 8726 {0, 92, 91}, 8727 {0, 1, 93}, 8728 {0, 95, 94}, 8729 {0, 97, 96}, 8730 {0, 99, 98}, 8731 {0, 100, 75}, 8732 {0, 102, 101}, 8733 {0, 104, 103}, 8734 {0, 106, 105}, 8735 {0, 107, 14}, 8736 {0, 109, 108}, 8737 {0, 111, 110}, 8738 {0, 113, 112}, 8739 {0, 115, 114}, 8740 {0, 117, 116}, 8741 {0, 119, 118}, 8742 {0, 121, 120}, 8743 {0, 123, 122}, 8744 {0, 125, 124}, 8745 {0, 127, 126}, 8746 {0, 129, 128}, 8747 {0, 131, 130}, 8748 {0, 133, 132}, 8749 {0, 135, 134}, 8750 {0, 137, 136}, 8751 {0, 139, 138}, 8752 {0, 141, 140}, 8753 {0, 143, 142}, 8754 {0, 145, 144}, 8755 {0, 147, 146}, 8756 {0, 33, 148}, 8757 {0, 4, 149}, 8758 {0, 78, 150}, 8759 {0, 152, 151}, 8760 {0, 154, 153}, 8761 })); 8762 8763 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCompositeConstruct, 5), std::move(codec)); 8764 } 8765 8766 { 8767 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(11, { 8768 {0, 0, 0}, 8769 {679771963, 0, 0}, 8770 {789872778, 0, 0}, 8771 {1951208733, 0, 0}, 8772 {2320303498, 0, 0}, 8773 {3334207724, 0, 0}, 8774 {1111111111111111111, 0, 0}, 8775 {0, 6, 2}, 8776 {0, 4, 7}, 8777 {0, 1, 8}, 8778 {0, 9, 5}, 8779 {0, 3, 10}, 8780 })); 8781 8782 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCompositeExtract, 0), std::move(codec)); 8783 } 8784 8785 { 8786 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(49, { 8787 {0, 0, 0}, 8788 {126463145, 0, 0}, 8789 {171307615, 0, 0}, 8790 {342159236, 0, 0}, 8791 {354479447, 0, 0}, 8792 {593829839, 0, 0}, 8793 {743407979, 0, 0}, 8794 {898191441, 0, 0}, 8795 {900522183, 0, 0}, 8796 {1265796414, 0, 0}, 8797 {1287304304, 0, 0}, 8798 {1356063462, 0, 0}, 8799 {1368383673, 0, 0}, 8800 {1526654696, 0, 0}, 8801 {1766994680, 0, 0}, 8802 {1793544760, 0, 0}, 8803 {1811839150, 0, 0}, 8804 {2234361374, 0, 0}, 8805 {2279700640, 0, 0}, 8806 {2383939514, 0, 0}, 8807 {2780898906, 0, 0}, 8808 {2996594997, 0, 0}, 8809 {3413713311, 0, 0}, 8810 {3554463148, 0, 0}, 8811 {3635542517, 0, 0}, 8812 {1111111111111111111, 0, 0}, 8813 {0, 11, 15}, 8814 {0, 20, 14}, 8815 {0, 7, 18}, 8816 {0, 6, 1}, 8817 {0, 12, 10}, 8818 {0, 23, 19}, 8819 {0, 13, 5}, 8820 {0, 24, 17}, 8821 {0, 21, 3}, 8822 {0, 22, 16}, 8823 {0, 26, 2}, 8824 {0, 27, 8}, 8825 {0, 4, 28}, 8826 {0, 29, 9}, 8827 {0, 31, 30}, 8828 {0, 33, 32}, 8829 {0, 35, 34}, 8830 {0, 37, 36}, 8831 {0, 39, 38}, 8832 {0, 41, 40}, 8833 {0, 43, 42}, 8834 {0, 45, 44}, 8835 {0, 47, 46}, 8836 {0, 25, 48}, 8837 })); 8838 8839 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCompositeExtract, 1), std::move(codec)); 8840 } 8841 8842 { 8843 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(153, { 8844 {0, 0, 0}, 8845 {13107491, 0, 0}, 8846 {257136089, 0, 0}, 8847 {293528591, 0, 0}, 8848 {321459212, 0, 0}, 8849 {425022309, 0, 0}, 8850 {490769168, 0, 0}, 8851 {495107308, 0, 0}, 8852 {517919178, 0, 0}, 8853 {617312262, 0, 0}, 8854 {708736129, 0, 0}, 8855 {753756604, 0, 0}, 8856 {765238787, 0, 0}, 8857 {796985462, 0, 0}, 8858 {819503463, 0, 0}, 8859 {850497536, 0, 0}, 8860 {948086521, 0, 0}, 8861 {1004589179, 0, 0}, 8862 {1120149824, 0, 0}, 8863 {1165671422, 0, 0}, 8864 {1203545131, 0, 0}, 8865 {1297165140, 0, 0}, 8866 {1335363438, 0, 0}, 8867 {1351676723, 0, 0}, 8868 {1391866096, 0, 0}, 8869 {1584369690, 0, 0}, 8870 {1631216488, 0, 0}, 8871 {1691646294, 0, 0}, 8872 {1779143013, 0, 0}, 8873 {1858116930, 0, 0}, 8874 {1890300748, 0, 0}, 8875 {1915438939, 0, 0}, 8876 {1918742169, 0, 0}, 8877 {1922045399, 0, 0}, 8878 {1961990747, 0, 0}, 8879 {2037710159, 0, 0}, 8880 {2037814253, 0, 0}, 8881 {2043873558, 0, 0}, 8882 {2096388952, 0, 0}, 8883 {2169307971, 0, 0}, 8884 {2257843797, 0, 0}, 8885 {2262220987, 0, 0}, 8886 {2338272340, 0, 0}, 8887 {2405770322, 0, 0}, 8888 {2498042266, 0, 0}, 8889 {2563789125, 0, 0}, 8890 {2588618056, 0, 0}, 8891 {2645120714, 0, 0}, 8892 {2864863800, 0, 0}, 8893 {2909957084, 0, 0}, 8894 {2975894973, 0, 0}, 8895 {3041450802, 0, 0}, 8896 {3151638847, 0, 0}, 8897 {3187066832, 0, 0}, 8898 {3244716568, 0, 0}, 8899 {3271748023, 0, 0}, 8900 {3304438238, 0, 0}, 8901 {3312467582, 0, 0}, 8902 {3325419312, 0, 0}, 8903 {3370185097, 0, 0}, 8904 {3419674548, 0, 0}, 8905 {3435931956, 0, 0}, 8906 {3504158761, 0, 0}, 8907 {3602522282, 0, 0}, 8908 {3653059026, 0, 0}, 8909 {3716353056, 0, 0}, 8910 {3782099915, 0, 0}, 8911 {3838648480, 0, 0}, 8912 {3847846774, 0, 0}, 8913 {3913593633, 0, 0}, 8914 {3989799199, 0, 0}, 8915 {3997038726, 0, 0}, 8916 {4046301857, 0, 0}, 8917 {4092654294, 0, 0}, 8918 {4176581069, 0, 0}, 8919 {4242327928, 0, 0}, 8920 {4285652249, 0, 0}, 8921 {1111111111111111111, 0, 0}, 8922 {0, 74, 38}, 8923 {0, 12, 56}, 8924 {0, 28, 24}, 8925 {0, 60, 43}, 8926 {0, 65, 72}, 8927 {0, 18, 2}, 8928 {0, 52, 3}, 8929 {0, 19, 10}, 8930 {0, 49, 36}, 8931 {0, 67, 66}, 8932 {0, 41, 17}, 8933 {0, 53, 11}, 8934 {0, 29, 68}, 8935 {0, 26, 55}, 8936 {0, 70, 76}, 8937 {0, 73, 47}, 8938 {0, 51, 22}, 8939 {0, 39, 21}, 8940 {0, 5, 9}, 8941 {0, 40, 48}, 8942 {0, 59, 44}, 8943 {0, 6, 69}, 8944 {0, 32, 31}, 8945 {0, 4, 33}, 8946 {0, 13, 54}, 8947 {0, 14, 50}, 8948 {0, 35, 75}, 8949 {0, 58, 23}, 8950 {0, 16, 34}, 8951 {0, 27, 63}, 8952 {0, 45, 61}, 8953 {0, 20, 46}, 8954 {0, 71, 1}, 8955 {0, 79, 78}, 8956 {0, 81, 80}, 8957 {0, 83, 82}, 8958 {0, 84, 8}, 8959 {0, 86, 85}, 8960 {0, 88, 87}, 8961 {0, 90, 89}, 8962 {0, 92, 91}, 8963 {0, 94, 93}, 8964 {0, 96, 95}, 8965 {0, 98, 97}, 8966 {0, 64, 99}, 8967 {0, 101, 100}, 8968 {0, 103, 102}, 8969 {0, 105, 104}, 8970 {0, 106, 62}, 8971 {0, 108, 107}, 8972 {0, 110, 109}, 8973 {0, 7, 111}, 8974 {0, 113, 112}, 8975 {0, 115, 114}, 8976 {0, 117, 116}, 8977 {0, 119, 118}, 8978 {0, 121, 120}, 8979 {0, 123, 122}, 8980 {0, 30, 124}, 8981 {0, 126, 125}, 8982 {0, 128, 127}, 8983 {0, 130, 129}, 8984 {0, 132, 131}, 8985 {0, 134, 133}, 8986 {0, 135, 25}, 8987 {0, 57, 136}, 8988 {0, 138, 137}, 8989 {0, 42, 139}, 8990 {0, 37, 140}, 8991 {0, 142, 141}, 8992 {0, 143, 15}, 8993 {0, 145, 144}, 8994 {0, 147, 146}, 8995 {0, 149, 148}, 8996 {0, 151, 150}, 8997 {0, 152, 77}, 8998 })); 8999 9000 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCompositeExtract, 2), std::move(codec)); 9001 } 9002 9003 { 9004 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(47, { 9005 {0, 0, 0}, 9006 {545678922, 0, 0}, 9007 {630592085, 0, 0}, 9008 {679771963, 0, 0}, 9009 {899570100, 0, 0}, 9010 {906176560, 0, 0}, 9011 {929101967, 0, 0}, 9012 {1100599986, 0, 0}, 9013 {1103903216, 0, 0}, 9014 {1107206446, 0, 0}, 9015 {1369578001, 0, 0}, 9016 {1372881231, 0, 0}, 9017 {2320303498, 0, 0}, 9018 {2926633629, 0, 0}, 9019 {3249265647, 0, 0}, 9020 {3334207724, 0, 0}, 9021 {3486057732, 0, 0}, 9022 {3674863070, 0, 0}, 9023 {3705139860, 0, 0}, 9024 {3800912395, 0, 0}, 9025 {3802564010, 0, 0}, 9026 {3822983876, 0, 0}, 9027 {4141567741, 0, 0}, 9028 {4292991777, 0, 0}, 9029 {1111111111111111111, 0, 0}, 9030 {0, 9, 17}, 9031 {0, 20, 11}, 9032 {0, 25, 5}, 9033 {0, 2, 14}, 9034 {0, 23, 13}, 9035 {0, 16, 26}, 9036 {0, 27, 24}, 9037 {0, 28, 8}, 9038 {0, 29, 18}, 9039 {0, 22, 30}, 9040 {0, 6, 31}, 9041 {0, 21, 32}, 9042 {0, 3, 33}, 9043 {0, 35, 34}, 9044 {0, 1, 12}, 9045 {0, 10, 36}, 9046 {0, 37, 19}, 9047 {0, 4, 15}, 9048 {0, 39, 38}, 9049 {0, 7, 40}, 9050 {0, 42, 41}, 9051 {0, 44, 43}, 9052 {0, 46, 45}, 9053 })); 9054 9055 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCompositeInsert, 0), std::move(codec)); 9056 } 9057 9058 { 9059 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(103, { 9060 {0, 0, 0}, 9061 {125792961, 0, 0}, 9062 {132755933, 0, 0}, 9063 {156014509, 0, 0}, 9064 {436066778, 0, 0}, 9065 {463084678, 0, 0}, 9066 {531559080, 0, 0}, 9067 {565233904, 0, 0}, 9068 {578132535, 0, 0}, 9069 {600906020, 0, 0}, 9070 {602222721, 0, 0}, 9071 {694743357, 0, 0}, 9072 {760554870, 0, 0}, 9073 {996663016, 0, 0}, 9074 {1022309772, 0, 0}, 9075 {1351676723, 0, 0}, 9076 {1496901698, 0, 0}, 9077 {1502470404, 0, 0}, 9078 {1522901980, 0, 0}, 9079 {1548254487, 0, 0}, 9080 {1637661947, 0, 0}, 9081 {1788504755, 0, 0}, 9082 {2092468906, 0, 0}, 9083 {2094647776, 0, 0}, 9084 {2127660080, 0, 0}, 9085 {2213946343, 0, 0}, 9086 {2225172640, 0, 0}, 9087 {2259467579, 0, 0}, 9088 {2263866576, 0, 0}, 9089 {2600961503, 0, 0}, 9090 {2727022058, 0, 0}, 9091 {2752967311, 0, 0}, 9092 {2864705739, 0, 0}, 9093 {3021406120, 0, 0}, 9094 {3044723416, 0, 0}, 9095 {3052439312, 0, 0}, 9096 {3136865519, 0, 0}, 9097 {3297860332, 0, 0}, 9098 {3352361837, 0, 0}, 9099 {3670298840, 0, 0}, 9100 {3712946115, 0, 0}, 9101 {3732709413, 0, 0}, 9102 {3764662384, 0, 0}, 9103 {3788324110, 0, 0}, 9104 {3928555688, 0, 0}, 9105 {4083347580, 0, 0}, 9106 {4098876453, 0, 0}, 9107 {4147239510, 0, 0}, 9108 {4199470013, 0, 0}, 9109 {4211577142, 0, 0}, 9110 {4218799564, 0, 0}, 9111 {4290374884, 0, 0}, 9112 {1111111111111111111, 0, 0}, 9113 {0, 4, 2}, 9114 {0, 9, 8}, 9115 {0, 17, 10}, 9116 {0, 20, 18}, 9117 {0, 22, 21}, 9118 {0, 26, 23}, 9119 {0, 31, 29}, 9120 {0, 35, 34}, 9121 {0, 45, 36}, 9122 {0, 5, 3}, 9123 {0, 12, 6}, 9124 {0, 15, 14}, 9125 {0, 25, 19}, 9126 {0, 28, 27}, 9127 {0, 38, 33}, 9128 {0, 43, 39}, 9129 {0, 47, 46}, 9130 {0, 50, 49}, 9131 {0, 7, 51}, 9132 {0, 1, 48}, 9133 {0, 37, 24}, 9134 {0, 44, 42}, 9135 {0, 13, 11}, 9136 {0, 41, 40}, 9137 {0, 54, 53}, 9138 {0, 56, 55}, 9139 {0, 58, 57}, 9140 {0, 60, 59}, 9141 {0, 62, 61}, 9142 {0, 64, 63}, 9143 {0, 66, 65}, 9144 {0, 68, 67}, 9145 {0, 70, 69}, 9146 {0, 72, 71}, 9147 {0, 30, 16}, 9148 {0, 73, 32}, 9149 {0, 75, 74}, 9150 {0, 77, 76}, 9151 {0, 79, 78}, 9152 {0, 81, 80}, 9153 {0, 83, 82}, 9154 {0, 85, 84}, 9155 {0, 87, 86}, 9156 {0, 89, 88}, 9157 {0, 91, 90}, 9158 {0, 93, 92}, 9159 {0, 95, 94}, 9160 {0, 97, 96}, 9161 {0, 99, 98}, 9162 {0, 101, 100}, 9163 {0, 52, 102}, 9164 })); 9165 9166 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCompositeInsert, 1), std::move(codec)); 9167 } 9168 9169 { 9170 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(93, { 9171 {0, 0, 0}, 9172 {17185761, 0, 0}, 9173 {117250846, 0, 0}, 9174 {296981500, 0, 0}, 9175 {330388453, 0, 0}, 9176 {346929928, 0, 0}, 9177 {533021259, 0, 0}, 9178 {564302770, 0, 0}, 9179 {680157484, 0, 0}, 9180 {721450866, 0, 0}, 9181 {798549062, 0, 0}, 9182 {853200279, 0, 0}, 9183 {864295921, 0, 0}, 9184 {900522183, 0, 0}, 9185 {973908139, 0, 0}, 9186 {983243705, 0, 0}, 9187 {1033363654, 0, 0}, 9188 {1037370721, 0, 0}, 9189 {1464587427, 0, 0}, 9190 {1670691893, 0, 0}, 9191 {1686512349, 0, 0}, 9192 {1849065716, 0, 0}, 9193 {1917602962, 0, 0}, 9194 {1965902997, 0, 0}, 9195 {2121980967, 0, 0}, 9196 {2311072371, 0, 0}, 9197 {2339901602, 0, 0}, 9198 {2517964682, 0, 0}, 9199 {2542834724, 0, 0}, 9200 {2558655180, 0, 0}, 9201 {2736881867, 0, 0}, 9202 {2855506940, 0, 0}, 9203 {2888753905, 0, 0}, 9204 {2950446516, 0, 0}, 9205 {3044188332, 0, 0}, 9206 {3079287749, 0, 0}, 9207 {3153451899, 0, 0}, 9208 {3214537066, 0, 0}, 9209 {3234673086, 0, 0}, 9210 {3349230696, 0, 0}, 9211 {3504158761, 0, 0}, 9212 {3570411982, 0, 0}, 9213 {3652695478, 0, 0}, 9214 {3764205609, 0, 0}, 9215 {3940720663, 0, 0}, 9216 {4180570743, 0, 0}, 9217 {4221373527, 0, 0}, 9218 {1111111111111111111, 0, 0}, 9219 {0, 24, 18}, 9220 {0, 4, 2}, 9221 {0, 15, 14}, 9222 {0, 21, 20}, 9223 {0, 29, 26}, 9224 {0, 42, 36}, 9225 {0, 7, 45}, 9226 {0, 37, 9}, 9227 {0, 8, 5}, 9228 {0, 32, 11}, 9229 {0, 39, 38}, 9230 {0, 12, 10}, 9231 {0, 28, 19}, 9232 {0, 1, 46}, 9233 {0, 17, 6}, 9234 {0, 30, 23}, 9235 {0, 44, 33}, 9236 {0, 35, 13}, 9237 {0, 16, 48}, 9238 {0, 50, 49}, 9239 {0, 52, 51}, 9240 {0, 54, 53}, 9241 {0, 55, 40}, 9242 {0, 57, 56}, 9243 {0, 59, 58}, 9244 {0, 61, 60}, 9245 {0, 25, 22}, 9246 {0, 63, 62}, 9247 {0, 3, 64}, 9248 {0, 66, 65}, 9249 {0, 68, 67}, 9250 {0, 70, 69}, 9251 {0, 34, 71}, 9252 {0, 73, 72}, 9253 {0, 75, 74}, 9254 {0, 77, 76}, 9255 {0, 27, 43}, 9256 {0, 79, 78}, 9257 {0, 81, 80}, 9258 {0, 83, 82}, 9259 {0, 84, 31}, 9260 {0, 86, 85}, 9261 {0, 41, 87}, 9262 {0, 89, 88}, 9263 {0, 91, 90}, 9264 {0, 47, 92}, 9265 })); 9266 9267 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCompositeInsert, 2), std::move(codec)); 9268 } 9269 9270 { 9271 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(115, { 9272 {0, 0, 0}, 9273 {132755933, 0, 0}, 9274 {156014509, 0, 0}, 9275 {255227811, 0, 0}, 9276 {371186900, 0, 0}, 9277 {371428004, 0, 0}, 9278 {374731234, 0, 0}, 9279 {531559080, 0, 0}, 9280 {565233904, 0, 0}, 9281 {578132535, 0, 0}, 9282 {591140762, 0, 0}, 9283 {600906020, 0, 0}, 9284 {602222721, 0, 0}, 9285 {656610661, 0, 0}, 9286 {760554870, 0, 0}, 9287 {996663016, 0, 0}, 9288 {1022309772, 0, 0}, 9289 {1496901698, 0, 0}, 9290 {1502470404, 0, 0}, 9291 {1522901980, 0, 0}, 9292 {1536350567, 0, 0}, 9293 {1543280290, 0, 0}, 9294 {1548254487, 0, 0}, 9295 {1788504755, 0, 0}, 9296 {2064733527, 0, 0}, 9297 {2092468906, 0, 0}, 9298 {2094647776, 0, 0}, 9299 {2162986400, 0, 0}, 9300 {2225172640, 0, 0}, 9301 {2259467579, 0, 0}, 9302 {2263866576, 0, 0}, 9303 {2360004627, 0, 0}, 9304 {2507709226, 0, 0}, 9305 {2600961503, 0, 0}, 9306 {2727022058, 0, 0}, 9307 {2752967311, 0, 0}, 9308 {2864705739, 0, 0}, 9309 {3021406120, 0, 0}, 9310 {3052439312, 0, 0}, 9311 {3136865519, 0, 0}, 9312 {3297860332, 0, 0}, 9313 {3352361837, 0, 0}, 9314 {3598957382, 0, 0}, 9315 {3619787319, 0, 0}, 9316 {3655201337, 0, 0}, 9317 {3670298840, 0, 0}, 9318 {3774892253, 0, 0}, 9319 {3788324110, 0, 0}, 9320 {3808408202, 0, 0}, 9321 {3951925872, 0, 0}, 9322 {3952316364, 0, 0}, 9323 {4098876453, 0, 0}, 9324 {4147239510, 0, 0}, 9325 {4199470013, 0, 0}, 9326 {4211577142, 0, 0}, 9327 {4217306348, 0, 0}, 9328 {4218799564, 0, 0}, 9329 {4290374884, 0, 0}, 9330 {1111111111111111111, 0, 0}, 9331 {0, 6, 43}, 9332 {0, 4, 1}, 9333 {0, 11, 9}, 9334 {0, 13, 12}, 9335 {0, 19, 18}, 9336 {0, 25, 23}, 9337 {0, 28, 26}, 9338 {0, 35, 33}, 9339 {0, 39, 38}, 9340 {0, 2, 49}, 9341 {0, 7, 3}, 9342 {0, 16, 14}, 9343 {0, 29, 22}, 9344 {0, 37, 30}, 9345 {0, 45, 41}, 9346 {0, 51, 47}, 9347 {0, 54, 52}, 9348 {0, 57, 56}, 9349 {0, 53, 8}, 9350 {0, 32, 10}, 9351 {0, 42, 40}, 9352 {0, 24, 46}, 9353 {0, 15, 50}, 9354 {0, 55, 20}, 9355 {0, 59, 44}, 9356 {0, 61, 60}, 9357 {0, 63, 62}, 9358 {0, 65, 64}, 9359 {0, 67, 66}, 9360 {0, 69, 68}, 9361 {0, 71, 70}, 9362 {0, 73, 72}, 9363 {0, 75, 74}, 9364 {0, 77, 76}, 9365 {0, 31, 17}, 9366 {0, 36, 34}, 9367 {0, 79, 78}, 9368 {0, 81, 80}, 9369 {0, 27, 82}, 9370 {0, 5, 21}, 9371 {0, 48, 83}, 9372 {0, 85, 84}, 9373 {0, 87, 86}, 9374 {0, 89, 88}, 9375 {0, 91, 90}, 9376 {0, 93, 92}, 9377 {0, 95, 94}, 9378 {0, 97, 96}, 9379 {0, 99, 98}, 9380 {0, 101, 100}, 9381 {0, 103, 102}, 9382 {0, 105, 104}, 9383 {0, 107, 106}, 9384 {0, 109, 108}, 9385 {0, 111, 110}, 9386 {0, 113, 112}, 9387 {0, 58, 114}, 9388 })); 9389 9390 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpCompositeInsert, 3), std::move(codec)); 9391 } 9392 9393 { 9394 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 9395 {0, 0, 0}, 9396 {3866587616, 0, 0}, 9397 {3868239231, 0, 0}, 9398 {3869890846, 0, 0}, 9399 {1111111111111111111, 0, 0}, 9400 {0, 1, 4}, 9401 {0, 2, 5}, 9402 {0, 3, 6}, 9403 })); 9404 9405 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpSampledImage, 0), std::move(codec)); 9406 } 9407 9408 { 9409 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 9410 {0, 0, 0}, 9411 {1164218401, 0, 0}, 9412 {2036361232, 0, 0}, 9413 {2637132451, 0, 0}, 9414 {3237903670, 0, 0}, 9415 {1111111111111111111, 0, 0}, 9416 {0, 4, 5}, 9417 {0, 3, 6}, 9418 {0, 1, 7}, 9419 {0, 2, 8}, 9420 })); 9421 9422 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpSampledImage, 1), std::move(codec)); 9423 } 9424 9425 { 9426 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 9427 {0, 0, 0}, 9428 {543558236, 0, 0}, 9429 {1069781886, 0, 0}, 9430 {1596005536, 0, 0}, 9431 {1111111111111111111, 0, 0}, 9432 {0, 3, 4}, 9433 {0, 2, 5}, 9434 {0, 1, 6}, 9435 })); 9436 9437 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpSampledImage, 2), std::move(codec)); 9438 } 9439 9440 { 9441 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 9442 {0, 0, 0}, 9443 {1949759310, 0, 0}, 9444 {1111111111111111111, 0, 0}, 9445 {0, 1, 2}, 9446 })); 9447 9448 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpSampledImage, 3), std::move(codec)); 9449 } 9450 9451 { 9452 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 9453 {0, 0, 0}, 9454 {3334207724, 0, 0}, 9455 {1111111111111111111, 0, 0}, 9456 {0, 1, 2}, 9457 })); 9458 9459 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpImageSampleImplicitLod, 0), std::move(codec)); 9460 } 9461 9462 { 9463 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(87, { 9464 {0, 0, 0}, 9465 {236660303, 0, 0}, 9466 {347505241, 0, 0}, 9467 {426360862, 0, 0}, 9468 {439998433, 0, 0}, 9469 {488500848, 0, 0}, 9470 {495107308, 0, 0}, 9471 {868652905, 0, 0}, 9472 {1191735827, 0, 0}, 9473 {1265998516, 0, 0}, 9474 {1309728002, 0, 0}, 9475 {1365842164, 0, 0}, 9476 {1396344138, 0, 0}, 9477 {1508074873, 0, 0}, 9478 {1553476262, 0, 0}, 9479 {1642818143, 0, 0}, 9480 {1851510470, 0, 0}, 9481 {1858116930, 0, 0}, 9482 {1863199739, 0, 0}, 9483 {1979978194, 0, 0}, 9484 {1986584654, 0, 0}, 9485 {2092100514, 0, 0}, 9486 {2098706974, 0, 0}, 9487 {2231688008, 0, 0}, 9488 {2232491275, 0, 0}, 9489 {2329992200, 0, 0}, 9490 {2637935122, 0, 0}, 9491 {2693892518, 0, 0}, 9492 {2759250216, 0, 0}, 9493 {2839765116, 0, 0}, 9494 {2855895374, 0, 0}, 9495 {2913136690, 0, 0}, 9496 {3012980338, 0, 0}, 9497 {3327770644, 0, 0}, 9498 {3362344229, 0, 0}, 9499 {3398925952, 0, 0}, 9500 {3448018532, 0, 0}, 9501 {3457985288, 0, 0}, 9502 {3566035349, 0, 0}, 9503 {3657635382, 0, 0}, 9504 {3702405475, 0, 0}, 9505 {3757479030, 0, 0}, 9506 {3797204453, 0, 0}, 9507 {4291477370, 0, 0}, 9508 {1111111111111111111, 0, 0}, 9509 {0, 32, 28}, 9510 {0, 9, 35}, 9511 {0, 31, 11}, 9512 {0, 10, 30}, 9513 {0, 25, 21}, 9514 {0, 40, 2}, 9515 {0, 15, 19}, 9516 {0, 24, 36}, 9517 {0, 42, 4}, 9518 {0, 18, 16}, 9519 {0, 29, 26}, 9520 {0, 43, 7}, 9521 {0, 45, 8}, 9522 {0, 37, 13}, 9523 {0, 47, 46}, 9524 {0, 48, 33}, 9525 {0, 49, 14}, 9526 {0, 3, 22}, 9527 {0, 50, 12}, 9528 {0, 41, 39}, 9529 {0, 51, 34}, 9530 {0, 52, 20}, 9531 {0, 54, 53}, 9532 {0, 56, 55}, 9533 {0, 58, 57}, 9534 {0, 60, 59}, 9535 {0, 61, 23}, 9536 {0, 63, 62}, 9537 {0, 65, 64}, 9538 {0, 27, 66}, 9539 {0, 67, 38}, 9540 {0, 68, 17}, 9541 {0, 70, 69}, 9542 {0, 72, 71}, 9543 {0, 74, 73}, 9544 {0, 76, 75}, 9545 {0, 5, 77}, 9546 {0, 78, 1}, 9547 {0, 80, 79}, 9548 {0, 82, 81}, 9549 {0, 83, 6}, 9550 {0, 85, 84}, 9551 {0, 44, 86}, 9552 })); 9553 9554 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpImageSampleImplicitLod, 1), std::move(codec)); 9555 } 9556 9557 { 9558 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(15, { 9559 {0, 0, 0}, 9560 {883854656, 0, 0}, 9561 {1962971231, 0, 0}, 9562 {2036361232, 0, 0}, 9563 {2356768706, 0, 0}, 9564 {2637132451, 0, 0}, 9565 {3237903670, 0, 0}, 9566 {3829682756, 0, 0}, 9567 {1111111111111111111, 0, 0}, 9568 {0, 8, 2}, 9569 {0, 6, 9}, 9570 {0, 10, 7}, 9571 {0, 4, 5}, 9572 {0, 12, 11}, 9573 {0, 3, 13}, 9574 {0, 14, 1}, 9575 })); 9576 9577 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpImageSampleImplicitLod, 2), std::move(codec)); 9578 } 9579 9580 { 9581 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(87, { 9582 {0, 0, 0}, 9583 {150685616, 0, 0}, 9584 {255302575, 0, 0}, 9585 {414620710, 0, 0}, 9586 {557400685, 0, 0}, 9587 {575205902, 0, 0}, 9588 {618761615, 0, 0}, 9589 {646282397, 0, 0}, 9590 {686024761, 0, 0}, 9591 {740921498, 0, 0}, 9592 {921246433, 0, 0}, 9593 {1057578789, 0, 0}, 9594 {1162127370, 0, 0}, 9595 {1329499601, 0, 0}, 9596 {1352628475, 0, 0}, 9597 {1502028603, 0, 0}, 9598 {1519723107, 0, 0}, 9599 {1543798545, 0, 0}, 9600 {1545450160, 0, 0}, 9601 {1570165302, 0, 0}, 9602 {1600392975, 0, 0}, 9603 {1641415225, 0, 0}, 9604 {2204920111, 0, 0}, 9605 {2257971049, 0, 0}, 9606 {2276405827, 0, 0}, 9607 {2339018837, 0, 0}, 9608 {2340670452, 0, 0}, 9609 {2517964682, 0, 0}, 9610 {2532518896, 0, 0}, 9611 {2674090849, 0, 0}, 9612 {2754074729, 0, 0}, 9613 {2804281092, 0, 0}, 9614 {2816338013, 0, 0}, 9615 {2841008029, 0, 0}, 9616 {3234673086, 0, 0}, 9617 {3249261197, 0, 0}, 9618 {3619787319, 0, 0}, 9619 {3627739127, 0, 0}, 9620 {3669223677, 0, 0}, 9621 {3787567939, 0, 0}, 9622 {3898287302, 0, 0}, 9623 {4142016703, 0, 0}, 9624 {4237092412, 0, 0}, 9625 {4285779501, 0, 0}, 9626 {1111111111111111111, 0, 0}, 9627 {0, 16, 15}, 9628 {0, 2, 33}, 9629 {0, 41, 35}, 9630 {0, 32, 30}, 9631 {0, 39, 38}, 9632 {0, 5, 1}, 9633 {0, 9, 43}, 9634 {0, 40, 22}, 9635 {0, 29, 12}, 9636 {0, 4, 3}, 9637 {0, 25, 37}, 9638 {0, 34, 26}, 9639 {0, 45, 19}, 9640 {0, 31, 24}, 9641 {0, 47, 46}, 9642 {0, 48, 20}, 9643 {0, 49, 6}, 9644 {0, 8, 21}, 9645 {0, 50, 11}, 9646 {0, 13, 10}, 9647 {0, 51, 42}, 9648 {0, 52, 23}, 9649 {0, 54, 53}, 9650 {0, 56, 55}, 9651 {0, 58, 57}, 9652 {0, 60, 59}, 9653 {0, 61, 28}, 9654 {0, 63, 62}, 9655 {0, 65, 64}, 9656 {0, 17, 66}, 9657 {0, 67, 18}, 9658 {0, 68, 7}, 9659 {0, 70, 69}, 9660 {0, 72, 71}, 9661 {0, 74, 73}, 9662 {0, 76, 75}, 9663 {0, 14, 77}, 9664 {0, 78, 27}, 9665 {0, 80, 79}, 9666 {0, 82, 81}, 9667 {0, 83, 36}, 9668 {0, 85, 84}, 9669 {0, 44, 86}, 9670 })); 9671 9672 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpImageSampleImplicitLod, 3), std::move(codec)); 9673 } 9674 9675 { 9676 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 9677 {0, 0, 0}, 9678 {2855506940, 0, 0}, 9679 {3266548732, 0, 0}, 9680 {3732640764, 0, 0}, 9681 {1111111111111111111, 0, 0}, 9682 {0, 2, 1}, 9683 {0, 5, 4}, 9684 {0, 3, 6}, 9685 })); 9686 9687 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpImageSampleImplicitLod, 5), std::move(codec)); 9688 } 9689 9690 { 9691 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 9692 {0, 0, 0}, 9693 {3334207724, 0, 0}, 9694 {1111111111111111111, 0, 0}, 9695 {0, 1, 2}, 9696 })); 9697 9698 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpImageSampleExplicitLod, 0), std::move(codec)); 9699 } 9700 9701 { 9702 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(139, { 9703 {0, 0, 0}, 9704 {27177503, 0, 0}, 9705 {30663912, 0, 0}, 9706 {151672195, 0, 0}, 9707 {162608772, 0, 0}, 9708 {180913835, 0, 0}, 9709 {371621315, 0, 0}, 9710 {414444763, 0, 0}, 9711 {421602934, 0, 0}, 9712 {443347828, 0, 0}, 9713 {458937500, 0, 0}, 9714 {587888644, 0, 0}, 9715 {601656217, 0, 0}, 9716 {665789406, 0, 0}, 9717 {712168842, 0, 0}, 9718 {730943059, 0, 0}, 9719 {750870327, 0, 0}, 9720 {875212982, 0, 0}, 9721 {899320334, 0, 0}, 9722 {973908139, 0, 0}, 9723 {989813600, 0, 0}, 9724 {1057606514, 0, 0}, 9725 {1171541710, 0, 0}, 9726 {1243764146, 0, 0}, 9727 {1310404265, 0, 0}, 9728 {1366337101, 0, 0}, 9729 {1443547269, 0, 0}, 9730 {1472185378, 0, 0}, 9731 {1473799048, 0, 0}, 9732 {1543935193, 0, 0}, 9733 {1572834111, 0, 0}, 9734 {1623013158, 0, 0}, 9735 {1686512349, 0, 0}, 9736 {1705716306, 0, 0}, 9737 {1747355813, 0, 0}, 9738 {1755165354, 0, 0}, 9739 {1781864804, 0, 0}, 9740 {1916983087, 0, 0}, 9741 {1941403425, 0, 0}, 9742 {2023008475, 0, 0}, 9743 {2043684541, 0, 0}, 9744 {2274226560, 0, 0}, 9745 {2285438321, 0, 0}, 9746 {2315690100, 0, 0}, 9747 {2344328209, 0, 0}, 9748 {2414725163, 0, 0}, 9749 {2493146691, 0, 0}, 9750 {2495155989, 0, 0}, 9751 {2558655180, 0, 0}, 9752 {2577859137, 0, 0}, 9753 {2857814560, 0, 0}, 9754 {2895151306, 0, 0}, 9755 {2986830770, 0, 0}, 9756 {3006548167, 0, 0}, 9757 {3127329373, 0, 0}, 9758 {3157581152, 0, 0}, 9759 {3216471040, 0, 0}, 9760 {3296722158, 0, 0}, 9761 {3367298820, 0, 0}, 9762 {3376009661, 0, 0}, 9763 {3450001968, 0, 0}, 9764 {3526837441, 0, 0}, 9765 {3609540589, 0, 0}, 9766 {3743398113, 0, 0}, 9767 {3858973601, 0, 0}, 9768 {3953984401, 0, 0}, 9769 {3999472204, 0, 0}, 9770 {4088613871, 0, 0}, 9771 {4184019303, 0, 0}, 9772 {4258229445, 0, 0}, 9773 {1111111111111111111, 0, 0}, 9774 {0, 31, 16}, 9775 {0, 58, 47}, 9776 {0, 21, 61}, 9777 {0, 6, 14}, 9778 {0, 65, 23}, 9779 {0, 35, 5}, 9780 {0, 2, 7}, 9781 {0, 10, 25}, 9782 {0, 40, 22}, 9783 {0, 9, 50}, 9784 {0, 20, 11}, 9785 {0, 38, 36}, 9786 {0, 13, 12}, 9787 {0, 67, 28}, 9788 {0, 71, 68}, 9789 {0, 73, 72}, 9790 {0, 3, 29}, 9791 {0, 27, 8}, 9792 {0, 44, 37}, 9793 {0, 74, 63}, 9794 {0, 76, 75}, 9795 {0, 18, 1}, 9796 {0, 78, 77}, 9797 {0, 80, 79}, 9798 {0, 82, 81}, 9799 {0, 26, 15}, 9800 {0, 83, 43}, 9801 {0, 85, 84}, 9802 {0, 19, 86}, 9803 {0, 48, 32}, 9804 {0, 33, 46}, 9805 {0, 87, 49}, 9806 {0, 89, 88}, 9807 {0, 91, 90}, 9808 {0, 41, 30}, 9809 {0, 52, 42}, 9810 {0, 64, 55}, 9811 {0, 92, 53}, 9812 {0, 94, 93}, 9813 {0, 51, 39}, 9814 {0, 45, 95}, 9815 {0, 66, 54}, 9816 {0, 97, 96}, 9817 {0, 57, 98}, 9818 {0, 99, 69}, 9819 {0, 101, 100}, 9820 {0, 56, 102}, 9821 {0, 4, 59}, 9822 {0, 34, 17}, 9823 {0, 103, 24}, 9824 {0, 105, 104}, 9825 {0, 107, 106}, 9826 {0, 109, 108}, 9827 {0, 60, 110}, 9828 {0, 111, 62}, 9829 {0, 113, 112}, 9830 {0, 115, 114}, 9831 {0, 117, 116}, 9832 {0, 119, 118}, 9833 {0, 121, 120}, 9834 {0, 123, 122}, 9835 {0, 125, 124}, 9836 {0, 127, 126}, 9837 {0, 129, 128}, 9838 {0, 70, 130}, 9839 {0, 132, 131}, 9840 {0, 134, 133}, 9841 {0, 136, 135}, 9842 {0, 138, 137}, 9843 })); 9844 9845 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpImageSampleExplicitLod, 1), std::move(codec)); 9846 } 9847 9848 { 9849 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(11, { 9850 {0, 0, 0}, 9851 {883854656, 0, 0}, 9852 {1962971231, 0, 0}, 9853 {2036361232, 0, 0}, 9854 {2366506734, 0, 0}, 9855 {3829682756, 0, 0}, 9856 {1111111111111111111, 0, 0}, 9857 {0, 4, 2}, 9858 {0, 6, 7}, 9859 {0, 8, 5}, 9860 {0, 3, 9}, 9861 {0, 1, 10}, 9862 })); 9863 9864 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpImageSampleExplicitLod, 2), std::move(codec)); 9865 } 9866 9867 { 9868 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(73, { 9869 {0, 0, 0}, 9870 {178571546, 0, 0}, 9871 {223310468, 0, 0}, 9872 {388034151, 0, 0}, 9873 {449954059, 0, 0}, 9874 {694743357, 0, 0}, 9875 {797415788, 0, 0}, 9876 {835638766, 0, 0}, 9877 {1002144380, 0, 0}, 9878 {1221183390, 0, 0}, 9879 {1570165302, 0, 0}, 9880 {1663234329, 0, 0}, 9881 {1750829822, 0, 0}, 9882 {1894133125, 0, 0}, 9883 {1967643923, 0, 0}, 9884 {1980341560, 0, 0}, 9885 {2278706468, 0, 0}, 9886 {2326990117, 0, 0}, 9887 {2464905186, 0, 0}, 9888 {2511346984, 0, 0}, 9889 {2517964682, 0, 0}, 9890 {2616085763, 0, 0}, 9891 {2710583246, 0, 0}, 9892 {2745872368, 0, 0}, 9893 {2924263085, 0, 0}, 9894 {3027500544, 0, 0}, 9895 {3044723416, 0, 0}, 9896 {3202324433, 0, 0}, 9897 {3289213933, 0, 0}, 9898 {3323682385, 0, 0}, 9899 {3366848728, 0, 0}, 9900 {3417583519, 0, 0}, 9901 {3732916270, 0, 0}, 9902 {3787909072, 0, 0}, 9903 {3877813395, 0, 0}, 9904 {4028028350, 0, 0}, 9905 {4178218543, 0, 0}, 9906 {1111111111111111111, 0, 0}, 9907 {0, 36, 31}, 9908 {0, 15, 3}, 9909 {0, 17, 1}, 9910 {0, 24, 12}, 9911 {0, 35, 34}, 9912 {0, 28, 27}, 9913 {0, 21, 38}, 9914 {0, 6, 13}, 9915 {0, 14, 7}, 9916 {0, 39, 25}, 9917 {0, 40, 30}, 9918 {0, 42, 41}, 9919 {0, 32, 43}, 9920 {0, 23, 9}, 9921 {0, 11, 44}, 9922 {0, 45, 22}, 9923 {0, 47, 46}, 9924 {0, 2, 16}, 9925 {0, 49, 48}, 9926 {0, 4, 50}, 9927 {0, 51, 18}, 9928 {0, 53, 52}, 9929 {0, 33, 54}, 9930 {0, 26, 55}, 9931 {0, 57, 56}, 9932 {0, 5, 58}, 9933 {0, 59, 8}, 9934 {0, 19, 60}, 9935 {0, 10, 61}, 9936 {0, 29, 62}, 9937 {0, 37, 63}, 9938 {0, 65, 64}, 9939 {0, 67, 66}, 9940 {0, 20, 68}, 9941 {0, 70, 69}, 9942 {0, 72, 71}, 9943 })); 9944 9945 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpImageSampleExplicitLod, 3), std::move(codec)); 9946 } 9947 9948 { 9949 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 9950 {0, 0, 0}, 9951 {2855506940, 0, 0}, 9952 {1111111111111111111, 0, 0}, 9953 {0, 1, 2}, 9954 })); 9955 9956 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpImageSampleExplicitLod, 5), std::move(codec)); 9957 } 9958 9959 { 9960 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(13, { 9961 {0, 0, 0}, 9962 {3533637837, 0, 0}, 9963 {3535289452, 0, 0}, 9964 {3536941067, 0, 0}, 9965 {3538592682, 0, 0}, 9966 {3540244297, 0, 0}, 9967 {3541895912, 0, 0}, 9968 {1111111111111111111, 0, 0}, 9969 {0, 1, 7}, 9970 {0, 2, 8}, 9971 {0, 9, 3}, 9972 {0, 4, 10}, 9973 {0, 5, 11}, 9974 {0, 12, 6}, 9975 })); 9976 9977 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpImageSampleExplicitLod, 6), std::move(codec)); 9978 } 9979 9980 { 9981 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 9982 {0, 0, 0}, 9983 {679771963, 0, 0}, 9984 {1951208733, 0, 0}, 9985 {2320303498, 0, 0}, 9986 {3334207724, 0, 0}, 9987 {1111111111111111111, 0, 0}, 9988 {0, 4, 5}, 9989 {0, 2, 6}, 9990 {0, 1, 3}, 9991 {0, 8, 7}, 9992 })); 9993 9994 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFAdd, 0), std::move(codec)); 9995 } 9996 9997 { 9998 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(45, { 9999 {0, 0, 0}, 10000 {328661377, 0, 0}, 10001 {464259778, 0, 0}, 10002 {920941800, 0, 0}, 10003 {969500141, 0, 0}, 10004 {1449907751, 0, 0}, 10005 {1451831482, 0, 0}, 10006 {1543798545, 0, 0}, 10007 {1545450160, 0, 0}, 10008 {1626224034, 0, 0}, 10009 {1669930486, 0, 0}, 10010 {1770165905, 0, 0}, 10011 {2278571792, 0, 0}, 10012 {2432827426, 0, 0}, 10013 {2656211099, 0, 0}, 10014 {2736844435, 0, 0}, 10015 {2870852215, 0, 0}, 10016 {2919626325, 0, 0}, 10017 {2923708820, 0, 0}, 10018 {3325419312, 0, 0}, 10019 {3678875745, 0, 0}, 10020 {4182141402, 0, 0}, 10021 {4241374559, 0, 0}, 10022 {1111111111111111111, 0, 0}, 10023 {0, 2, 6}, 10024 {0, 9, 13}, 10025 {0, 5, 15}, 10026 {0, 4, 11}, 10027 {0, 20, 22}, 10028 {0, 10, 1}, 10029 {0, 18, 14}, 10030 {0, 16, 3}, 10031 {0, 12, 21}, 10032 {0, 8, 7}, 10033 {0, 24, 17}, 10034 {0, 19, 25}, 10035 {0, 27, 26}, 10036 {0, 29, 28}, 10037 {0, 31, 30}, 10038 {0, 33, 32}, 10039 {0, 35, 34}, 10040 {0, 37, 36}, 10041 {0, 39, 38}, 10042 {0, 41, 40}, 10043 {0, 43, 42}, 10044 {0, 23, 44}, 10045 })); 10046 10047 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFAdd, 1), std::move(codec)); 10048 } 10049 10050 { 10051 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(89, { 10052 {0, 0, 0}, 10053 {135920445, 0, 0}, 10054 {176166202, 0, 0}, 10055 {294390719, 0, 0}, 10056 {296981500, 0, 0}, 10057 {743407979, 0, 0}, 10058 {810488476, 0, 0}, 10059 {837715723, 0, 0}, 10060 {885020215, 0, 0}, 10061 {922996215, 0, 0}, 10062 {959681532, 0, 0}, 10063 {963902061, 0, 0}, 10064 {1136775085, 0, 0}, 10065 {1189681639, 0, 0}, 10066 {1203545131, 0, 0}, 10067 {1297294717, 0, 0}, 10068 {1317058015, 0, 0}, 10069 {1352397672, 0, 0}, 10070 {1367301635, 0, 0}, 10071 {1412908157, 0, 0}, 10072 {1570165302, 0, 0}, 10073 {1763758554, 0, 0}, 10074 {1791427568, 0, 0}, 10075 {1992893964, 0, 0}, 10076 {2013867381, 0, 0}, 10077 {2096388952, 0, 0}, 10078 {2219733501, 0, 0}, 10079 {2383939514, 0, 0}, 10080 {2517964682, 0, 0}, 10081 {2555315060, 0, 0}, 10082 {2572638469, 0, 0}, 10083 {2762094724, 0, 0}, 10084 {2770161927, 0, 0}, 10085 {2855506940, 0, 0}, 10086 {3044188332, 0, 0}, 10087 {3187066832, 0, 0}, 10088 {3319278167, 0, 0}, 10089 {3653838348, 0, 0}, 10090 {3675926744, 0, 0}, 10091 {3701632935, 0, 0}, 10092 {3712946115, 0, 0}, 10093 {3732709413, 0, 0}, 10094 {3743748793, 0, 0}, 10095 {3783543823, 0, 0}, 10096 {3930727258, 0, 0}, 10097 {1111111111111111111, 0, 0}, 10098 {0, 15, 12}, 10099 {0, 38, 16}, 10100 {0, 41, 40}, 10101 {0, 1, 33}, 10102 {0, 21, 34}, 10103 {0, 9, 2}, 10104 {0, 24, 7}, 10105 {0, 39, 44}, 10106 {0, 29, 22}, 10107 {0, 17, 19}, 10108 {0, 36, 32}, 10109 {0, 26, 18}, 10110 {0, 30, 3}, 10111 {0, 11, 8}, 10112 {0, 42, 35}, 10113 {0, 46, 31}, 10114 {0, 27, 5}, 10115 {0, 48, 47}, 10116 {0, 28, 49}, 10117 {0, 51, 50}, 10118 {0, 52, 23}, 10119 {0, 54, 53}, 10120 {0, 13, 14}, 10121 {0, 6, 55}, 10122 {0, 57, 56}, 10123 {0, 59, 58}, 10124 {0, 60, 43}, 10125 {0, 62, 61}, 10126 {0, 37, 63}, 10127 {0, 65, 64}, 10128 {0, 67, 66}, 10129 {0, 69, 68}, 10130 {0, 70, 4}, 10131 {0, 10, 71}, 10132 {0, 72, 20}, 10133 {0, 74, 73}, 10134 {0, 76, 75}, 10135 {0, 78, 77}, 10136 {0, 80, 79}, 10137 {0, 81, 25}, 10138 {0, 83, 82}, 10139 {0, 85, 84}, 10140 {0, 87, 86}, 10141 {0, 45, 88}, 10142 })); 10143 10144 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFAdd, 2), std::move(codec)); 10145 } 10146 10147 { 10148 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(103, { 10149 {0, 0, 0}, 10150 {126463145, 0, 0}, 10151 {220008971, 0, 0}, 10152 {246375791, 0, 0}, 10153 {503145996, 0, 0}, 10154 {628331516, 0, 0}, 10155 {643418617, 0, 0}, 10156 {743407979, 0, 0}, 10157 {837715723, 0, 0}, 10158 {858902117, 0, 0}, 10159 {870594305, 0, 0}, 10160 {939671928, 0, 0}, 10161 {959681532, 0, 0}, 10162 {1051471757, 0, 0}, 10163 {1092948665, 0, 0}, 10164 {1097775533, 0, 0}, 10165 {1136775085, 0, 0}, 10166 {1140367371, 0, 0}, 10167 {1332643570, 0, 0}, 10168 {1367301635, 0, 0}, 10169 {1558001705, 0, 0}, 10170 {1684282922, 0, 0}, 10171 {2096388952, 0, 0}, 10172 {2183547611, 0, 0}, 10173 {2219733501, 0, 0}, 10174 {2358141757, 0, 0}, 10175 {2359973133, 0, 0}, 10176 {2383939514, 0, 0}, 10177 {2444465148, 0, 0}, 10178 {2517964682, 0, 0}, 10179 {2567901801, 0, 0}, 10180 {2598189097, 0, 0}, 10181 {2655147757, 0, 0}, 10182 {2683080096, 0, 0}, 10183 {2705434194, 0, 0}, 10184 {2738307068, 0, 0}, 10185 {2780898906, 0, 0}, 10186 {3030911670, 0, 0}, 10187 {3032677281, 0, 0}, 10188 {3063300848, 0, 0}, 10189 {3277199633, 0, 0}, 10190 {3289969989, 0, 0}, 10191 {3401762422, 0, 0}, 10192 {3436143898, 0, 0}, 10193 {3560552546, 0, 0}, 10194 {3656163446, 0, 0}, 10195 {3675926744, 0, 0}, 10196 {3701632935, 0, 0}, 10197 {3743748793, 0, 0}, 10198 {3752211294, 0, 0}, 10199 {3794803132, 0, 0}, 10200 {4241374559, 0, 0}, 10201 {1111111111111111111, 0, 0}, 10202 {0, 1, 21}, 10203 {0, 17, 11}, 10204 {0, 36, 35}, 10205 {0, 46, 45}, 10206 {0, 50, 49}, 10207 {0, 9, 3}, 10208 {0, 20, 47}, 10209 {0, 37, 31}, 10210 {0, 2, 34}, 10211 {0, 40, 13}, 10212 {0, 51, 32}, 10213 {0, 41, 10}, 10214 {0, 38, 19}, 10215 {0, 18, 44}, 10216 {0, 43, 16}, 10217 {0, 48, 24}, 10218 {0, 26, 5}, 10219 {0, 53, 8}, 10220 {0, 15, 7}, 10221 {0, 25, 23}, 10222 {0, 54, 27}, 10223 {0, 56, 55}, 10224 {0, 58, 57}, 10225 {0, 60, 59}, 10226 {0, 39, 42}, 10227 {0, 62, 61}, 10228 {0, 30, 63}, 10229 {0, 4, 64}, 10230 {0, 65, 28}, 10231 {0, 66, 22}, 10232 {0, 68, 67}, 10233 {0, 69, 14}, 10234 {0, 70, 33}, 10235 {0, 71, 6}, 10236 {0, 73, 72}, 10237 {0, 75, 74}, 10238 {0, 29, 76}, 10239 {0, 78, 77}, 10240 {0, 80, 79}, 10241 {0, 82, 81}, 10242 {0, 84, 83}, 10243 {0, 86, 85}, 10244 {0, 88, 87}, 10245 {0, 90, 89}, 10246 {0, 91, 12}, 10247 {0, 93, 92}, 10248 {0, 95, 94}, 10249 {0, 97, 96}, 10250 {0, 99, 98}, 10251 {0, 101, 100}, 10252 {0, 52, 102}, 10253 })); 10254 10255 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFAdd, 3), std::move(codec)); 10256 } 10257 10258 { 10259 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 10260 {0, 0, 0}, 10261 {679771963, 0, 0}, 10262 {1951208733, 0, 0}, 10263 {2320303498, 0, 0}, 10264 {3334207724, 0, 0}, 10265 {1111111111111111111, 0, 0}, 10266 {0, 3, 5}, 10267 {0, 4, 6}, 10268 {0, 1, 7}, 10269 {0, 2, 8}, 10270 })); 10271 10272 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFSub, 0), std::move(codec)); 10273 } 10274 10275 { 10276 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(159, { 10277 {0, 0, 0}, 10278 {50385656, 0, 0}, 10279 {117250846, 0, 0}, 10280 {171494987, 0, 0}, 10281 {195244192, 0, 0}, 10282 {210754155, 0, 0}, 10283 {265392489, 0, 0}, 10284 {333855951, 0, 0}, 10285 {416853049, 0, 0}, 10286 {529068443, 0, 0}, 10287 {533021259, 0, 0}, 10288 {615982737, 0, 0}, 10289 {660038281, 0, 0}, 10290 {663341511, 0, 0}, 10291 {669812542, 0, 0}, 10292 {716890919, 0, 0}, 10293 {1081536219, 0, 0}, 10294 {1119744229, 0, 0}, 10295 {1123617794, 0, 0}, 10296 {1139547465, 0, 0}, 10297 {1162789888, 0, 0}, 10298 {1178317551, 0, 0}, 10299 {1190147516, 0, 0}, 10300 {1193734351, 0, 0}, 10301 {1215030156, 0, 0}, 10302 {1220749418, 0, 0}, 10303 {1318479490, 0, 0}, 10304 {1461398554, 0, 0}, 10305 {1486207619, 0, 0}, 10306 {1551372768, 0, 0}, 10307 {1763758554, 0, 0}, 10308 {1797960910, 0, 0}, 10309 {1850331254, 0, 0}, 10310 {1894417995, 0, 0}, 10311 {1964254745, 0, 0}, 10312 {1965902997, 0, 0}, 10313 {1989327599, 0, 0}, 10314 {2095027856, 0, 0}, 10315 {2123683379, 0, 0}, 10316 {2124837447, 0, 0}, 10317 {2137526937, 0, 0}, 10318 {2269114589, 0, 0}, 10319 {2269130237, 0, 0}, 10320 {2330636993, 0, 0}, 10321 {2481746922, 0, 0}, 10322 {2503770904, 0, 0}, 10323 {2589449658, 0, 0}, 10324 {2603020391, 0, 0}, 10325 {2604576561, 0, 0}, 10326 {2795773560, 0, 0}, 10327 {2835131395, 0, 0}, 10328 {2852854788, 0, 0}, 10329 {2890638791, 0, 0}, 10330 {2895413148, 0, 0}, 10331 {2950446516, 0, 0}, 10332 {2963744582, 0, 0}, 10333 {3079287749, 0, 0}, 10334 {3088785099, 0, 0}, 10335 {3280064277, 0, 0}, 10336 {3335250889, 0, 0}, 10337 {3510242586, 0, 0}, 10338 {3517169445, 0, 0}, 10339 {3518703473, 0, 0}, 10340 {3536471583, 0, 0}, 10341 {3579593979, 0, 0}, 10342 {3591222197, 0, 0}, 10343 {3673811979, 0, 0}, 10344 {3727034815, 0, 0}, 10345 {3730093054, 0, 0}, 10346 {3898287302, 0, 0}, 10347 {3944781937, 0, 0}, 10348 {3950980241, 0, 0}, 10349 {4033586023, 0, 0}, 10350 {4041974454, 0, 0}, 10351 {4052965752, 0, 0}, 10352 {4083161638, 0, 0}, 10353 {4167600590, 0, 0}, 10354 {4185661467, 0, 0}, 10355 {4237092412, 0, 0}, 10356 {4244540017, 0, 0}, 10357 {1111111111111111111, 0, 0}, 10358 {0, 44, 18}, 10359 {0, 69, 57}, 10360 {0, 24, 16}, 10361 {0, 79, 5}, 10362 {0, 59, 4}, 10363 {0, 76, 40}, 10364 {0, 53, 45}, 10365 {0, 14, 2}, 10366 {0, 62, 61}, 10367 {0, 33, 75}, 10368 {0, 38, 37}, 10369 {0, 42, 58}, 10370 {0, 66, 47}, 10371 {0, 63, 67}, 10372 {0, 1, 7}, 10373 {0, 10, 3}, 10374 {0, 13, 12}, 10375 {0, 23, 22}, 10376 {0, 32, 28}, 10377 {0, 36, 35}, 10378 {0, 72, 49}, 10379 {0, 74, 73}, 10380 {0, 77, 55}, 10381 {0, 27, 41}, 10382 {0, 31, 15}, 10383 {0, 6, 54}, 10384 {0, 78, 17}, 10385 {0, 81, 56}, 10386 {0, 83, 82}, 10387 {0, 85, 84}, 10388 {0, 48, 30}, 10389 {0, 71, 60}, 10390 {0, 65, 51}, 10391 {0, 87, 86}, 10392 {0, 50, 34}, 10393 {0, 89, 88}, 10394 {0, 90, 9}, 10395 {0, 25, 8}, 10396 {0, 92, 91}, 10397 {0, 93, 26}, 10398 {0, 95, 94}, 10399 {0, 52, 39}, 10400 {0, 29, 20}, 10401 {0, 97, 96}, 10402 {0, 99, 98}, 10403 {0, 101, 100}, 10404 {0, 64, 102}, 10405 {0, 104, 103}, 10406 {0, 106, 105}, 10407 {0, 21, 107}, 10408 {0, 108, 68}, 10409 {0, 109, 46}, 10410 {0, 110, 11}, 10411 {0, 112, 111}, 10412 {0, 114, 113}, 10413 {0, 116, 115}, 10414 {0, 117, 70}, 10415 {0, 43, 118}, 10416 {0, 120, 119}, 10417 {0, 122, 121}, 10418 {0, 124, 123}, 10419 {0, 126, 125}, 10420 {0, 128, 127}, 10421 {0, 129, 19}, 10422 {0, 131, 130}, 10423 {0, 133, 132}, 10424 {0, 135, 134}, 10425 {0, 137, 136}, 10426 {0, 139, 138}, 10427 {0, 141, 140}, 10428 {0, 143, 142}, 10429 {0, 145, 144}, 10430 {0, 147, 146}, 10431 {0, 149, 148}, 10432 {0, 151, 150}, 10433 {0, 153, 152}, 10434 {0, 155, 154}, 10435 {0, 157, 156}, 10436 {0, 158, 80}, 10437 })); 10438 10439 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFSub, 1), std::move(codec)); 10440 } 10441 10442 { 10443 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(103, { 10444 {0, 0, 0}, 10445 {50998433, 0, 0}, 10446 {171494987, 0, 0}, 10447 {249378857, 0, 0}, 10448 {296981500, 0, 0}, 10449 {508007510, 0, 0}, 10450 {610429940, 0, 0}, 10451 {660038281, 0, 0}, 10452 {663341511, 0, 0}, 10453 {836581417, 0, 0}, 10454 {1027242654, 0, 0}, 10455 {1167160774, 0, 0}, 10456 {1191015885, 0, 0}, 10457 {1200870684, 0, 0}, 10458 {1203545131, 0, 0}, 10459 {1265796414, 0, 0}, 10460 {1319785741, 0, 0}, 10461 {1669959736, 0, 0}, 10462 {1684282922, 0, 0}, 10463 {1752686878, 0, 0}, 10464 {1850331254, 0, 0}, 10465 {1901166356, 0, 0}, 10466 {1906988301, 0, 0}, 10467 {2055836767, 0, 0}, 10468 {2095027856, 0, 0}, 10469 {2096388952, 0, 0}, 10470 {2144962711, 0, 0}, 10471 {2217833278, 0, 0}, 10472 {2500819054, 0, 0}, 10473 {2525173102, 0, 0}, 10474 {2575525651, 0, 0}, 10475 {2660843182, 0, 0}, 10476 {2855506940, 0, 0}, 10477 {2918750759, 0, 0}, 10478 {2919787747, 0, 0}, 10479 {3091876332, 0, 0}, 10480 {3187066832, 0, 0}, 10481 {3244209297, 0, 0}, 10482 {3423702268, 0, 0}, 10483 {3508792859, 0, 0}, 10484 {3548535223, 0, 0}, 10485 {3619787319, 0, 0}, 10486 {3653838348, 0, 0}, 10487 {3692647551, 0, 0}, 10488 {3713290482, 0, 0}, 10489 {3753486980, 0, 0}, 10490 {3783756895, 0, 0}, 10491 {3797961332, 0, 0}, 10492 {3836822275, 0, 0}, 10493 {4043078107, 0, 0}, 10494 {4052965752, 0, 0}, 10495 {4091394002, 0, 0}, 10496 {1111111111111111111, 0, 0}, 10497 {0, 31, 49}, 10498 {0, 24, 19}, 10499 {0, 46, 45}, 10500 {0, 6, 48}, 10501 {0, 12, 33}, 10502 {0, 17, 21}, 10503 {0, 43, 11}, 10504 {0, 7, 2}, 10505 {0, 9, 8}, 10506 {0, 28, 13}, 10507 {0, 44, 38}, 10508 {0, 30, 50}, 10509 {0, 26, 22}, 10510 {0, 29, 51}, 10511 {0, 34, 37}, 10512 {0, 53, 40}, 10513 {0, 23, 54}, 10514 {0, 55, 25}, 10515 {0, 27, 18}, 10516 {0, 1, 10}, 10517 {0, 57, 56}, 10518 {0, 59, 58}, 10519 {0, 5, 47}, 10520 {0, 60, 20}, 10521 {0, 62, 61}, 10522 {0, 64, 63}, 10523 {0, 66, 65}, 10524 {0, 67, 39}, 10525 {0, 69, 68}, 10526 {0, 16, 70}, 10527 {0, 3, 71}, 10528 {0, 73, 72}, 10529 {0, 41, 15}, 10530 {0, 35, 74}, 10531 {0, 76, 75}, 10532 {0, 78, 77}, 10533 {0, 36, 79}, 10534 {0, 81, 80}, 10535 {0, 83, 82}, 10536 {0, 14, 84}, 10537 {0, 86, 85}, 10538 {0, 88, 87}, 10539 {0, 32, 89}, 10540 {0, 42, 90}, 10541 {0, 92, 91}, 10542 {0, 94, 93}, 10543 {0, 96, 95}, 10544 {0, 98, 97}, 10545 {0, 52, 99}, 10546 {0, 100, 4}, 10547 {0, 102, 101}, 10548 })); 10549 10550 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFSub, 2), std::move(codec)); 10551 } 10552 10553 { 10554 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(157, { 10555 {0, 0, 0}, 10556 {49456560, 0, 0}, 10557 {170690025, 0, 0}, 10558 {243178923, 0, 0}, 10559 {295017943, 0, 0}, 10560 {296981500, 0, 0}, 10561 {330249537, 0, 0}, 10562 {435256475, 0, 0}, 10563 {443558693, 0, 0}, 10564 {456043370, 0, 0}, 10565 {470277359, 0, 0}, 10566 {592180731, 0, 0}, 10567 {663258455, 0, 0}, 10568 {706238670, 0, 0}, 10569 {810488476, 0, 0}, 10570 {870594305, 0, 0}, 10571 {877895868, 0, 0}, 10572 {900522183, 0, 0}, 10573 {1077859090, 0, 0}, 10574 {1082941229, 0, 0}, 10575 {1104362365, 0, 0}, 10576 {1132589448, 0, 0}, 10577 {1173092699, 0, 0}, 10578 {1203545131, 0, 0}, 10579 {1265796414, 0, 0}, 10580 {1278818058, 0, 0}, 10581 {1285705317, 0, 0}, 10582 {1319785741, 0, 0}, 10583 {1382106590, 0, 0}, 10584 {1461897718, 0, 0}, 10585 {1474506522, 0, 0}, 10586 {1530183840, 0, 0}, 10587 {1558001705, 0, 0}, 10588 {1558990974, 0, 0}, 10589 {1616846013, 0, 0}, 10590 {1633850097, 0, 0}, 10591 {1684282922, 0, 0}, 10592 {1725011064, 0, 0}, 10593 {1767704813, 0, 0}, 10594 {1923453688, 0, 0}, 10595 {1941148668, 0, 0}, 10596 {1955104493, 0, 0}, 10597 {2022961611, 0, 0}, 10598 {2162274327, 0, 0}, 10599 {2212501241, 0, 0}, 10600 {2219733501, 0, 0}, 10601 {2234361374, 0, 0}, 10602 {2272221101, 0, 0}, 10603 {2305269460, 0, 0}, 10604 {2488410748, 0, 0}, 10605 {2566666743, 0, 0}, 10606 {2598189097, 0, 0}, 10607 {2775815164, 0, 0}, 10608 {2793529873, 0, 0}, 10609 {2844616706, 0, 0}, 10610 {2970183398, 0, 0}, 10611 {3103302036, 0, 0}, 10612 {3110479131, 0, 0}, 10613 {3115038057, 0, 0}, 10614 {3116932970, 0, 0}, 10615 {3152745753, 0, 0}, 10616 {3187066832, 0, 0}, 10617 {3244209297, 0, 0}, 10618 {3383007207, 0, 0}, 10619 {3392887901, 0, 0}, 10620 {3508792859, 0, 0}, 10621 {3737376990, 0, 0}, 10622 {3753486980, 0, 0}, 10623 {3765247327, 0, 0}, 10624 {3817149113, 0, 0}, 10625 {3839047923, 0, 0}, 10626 {3886529747, 0, 0}, 10627 {4044928561, 0, 0}, 10628 {4061558677, 0, 0}, 10629 {4069720347, 0, 0}, 10630 {4069810315, 0, 0}, 10631 {4128942283, 0, 0}, 10632 {4164704452, 0, 0}, 10633 {4273793488, 0, 0}, 10634 {1111111111111111111, 0, 0}, 10635 {0, 74, 47}, 10636 {0, 34, 33}, 10637 {0, 36, 14}, 10638 {0, 61, 48}, 10639 {0, 13, 31}, 10640 {0, 39, 25}, 10641 {0, 37, 29}, 10642 {0, 65, 54}, 10643 {0, 4, 73}, 10644 {0, 38, 10}, 10645 {0, 15, 43}, 10646 {0, 6, 35}, 10647 {0, 9, 16}, 10648 {0, 30, 19}, 10649 {0, 49, 44}, 10650 {0, 57, 53}, 10651 {0, 60, 58}, 10652 {0, 72, 66}, 10653 {0, 59, 76}, 10654 {0, 1, 68}, 10655 {0, 70, 42}, 10656 {0, 63, 3}, 10657 {0, 28, 69}, 10658 {0, 17, 55}, 10659 {0, 45, 64}, 10660 {0, 81, 80}, 10661 {0, 7, 82}, 10662 {0, 12, 11}, 10663 {0, 21, 50}, 10664 {0, 83, 18}, 10665 {0, 22, 84}, 10666 {0, 85, 26}, 10667 {0, 20, 86}, 10668 {0, 87, 40}, 10669 {0, 56, 88}, 10670 {0, 90, 89}, 10671 {0, 92, 91}, 10672 {0, 93, 2}, 10673 {0, 95, 94}, 10674 {0, 97, 96}, 10675 {0, 98, 41}, 10676 {0, 100, 99}, 10677 {0, 101, 52}, 10678 {0, 103, 102}, 10679 {0, 77, 71}, 10680 {0, 104, 78}, 10681 {0, 105, 46}, 10682 {0, 32, 8}, 10683 {0, 106, 51}, 10684 {0, 108, 107}, 10685 {0, 23, 109}, 10686 {0, 110, 27}, 10687 {0, 112, 111}, 10688 {0, 113, 75}, 10689 {0, 115, 114}, 10690 {0, 117, 116}, 10691 {0, 119, 118}, 10692 {0, 121, 120}, 10693 {0, 123, 122}, 10694 {0, 124, 62}, 10695 {0, 126, 125}, 10696 {0, 128, 127}, 10697 {0, 67, 129}, 10698 {0, 131, 130}, 10699 {0, 5, 132}, 10700 {0, 134, 133}, 10701 {0, 136, 135}, 10702 {0, 138, 137}, 10703 {0, 139, 24}, 10704 {0, 141, 140}, 10705 {0, 143, 142}, 10706 {0, 145, 144}, 10707 {0, 147, 146}, 10708 {0, 149, 148}, 10709 {0, 151, 150}, 10710 {0, 153, 152}, 10711 {0, 79, 154}, 10712 {0, 156, 155}, 10713 })); 10714 10715 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFSub, 3), std::move(codec)); 10716 } 10717 10718 { 10719 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 10720 {0, 0, 0}, 10721 {679771963, 0, 0}, 10722 {1951208733, 0, 0}, 10723 {2320303498, 0, 0}, 10724 {3334207724, 0, 0}, 10725 {1111111111111111111, 0, 0}, 10726 {0, 4, 5}, 10727 {0, 3, 6}, 10728 {0, 1, 7}, 10729 {0, 8, 2}, 10730 })); 10731 10732 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFMul, 0), std::move(codec)); 10733 } 10734 10735 { 10736 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(41, { 10737 {0, 0, 0}, 10738 {342197850, 0, 0}, 10739 {885020215, 0, 0}, 10740 {963902061, 0, 0}, 10741 {1041368449, 0, 0}, 10742 {1352397672, 0, 0}, 10743 {1791427568, 0, 0}, 10744 {2013867381, 0, 0}, 10745 {2513230733, 0, 0}, 10746 {2555315060, 0, 0}, 10747 {2562485583, 0, 0}, 10748 {2567901801, 0, 0}, 10749 {2655147757, 0, 0}, 10750 {2680283743, 0, 0}, 10751 {2752766693, 0, 0}, 10752 {2806716850, 0, 0}, 10753 {3030911670, 0, 0}, 10754 {3401762422, 0, 0}, 10755 {3697738938, 0, 0}, 10756 {4164704452, 0, 0}, 10757 {4273793488, 0, 0}, 10758 {1111111111111111111, 0, 0}, 10759 {0, 14, 10}, 10760 {0, 7, 16}, 10761 {0, 1, 15}, 10762 {0, 9, 6}, 10763 {0, 4, 12}, 10764 {0, 18, 5}, 10765 {0, 13, 2}, 10766 {0, 19, 3}, 10767 {0, 17, 20}, 10768 {0, 23, 22}, 10769 {0, 24, 8}, 10770 {0, 26, 25}, 10771 {0, 27, 11}, 10772 {0, 29, 28}, 10773 {0, 31, 30}, 10774 {0, 33, 32}, 10775 {0, 35, 34}, 10776 {0, 37, 36}, 10777 {0, 39, 38}, 10778 {0, 21, 40}, 10779 })); 10780 10781 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFMul, 1), std::move(codec)); 10782 } 10783 10784 { 10785 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(129, { 10786 {0, 0, 0}, 10787 {126463145, 0, 0}, 10788 {129135650, 0, 0}, 10789 {200922300, 0, 0}, 10790 {328661377, 0, 0}, 10791 {354479447, 0, 0}, 10792 {360730278, 0, 0}, 10793 {451264926, 0, 0}, 10794 {529068443, 0, 0}, 10795 {593829839, 0, 0}, 10796 {742917749, 0, 0}, 10797 {761731755, 0, 0}, 10798 {810488476, 0, 0}, 10799 {870594305, 0, 0}, 10800 {894529125, 0, 0}, 10801 {959681532, 0, 0}, 10802 {1054461787, 0, 0}, 10803 {1077859090, 0, 0}, 10804 {1086964761, 0, 0}, 10805 {1158929937, 0, 0}, 10806 {1168927492, 0, 0}, 10807 {1196280518, 0, 0}, 10808 {1203545131, 0, 0}, 10809 {1367301635, 0, 0}, 10810 {1508550646, 0, 0}, 10811 {1618544981, 0, 0}, 10812 {1661163736, 0, 0}, 10813 {1684282922, 0, 0}, 10814 {1766994680, 0, 0}, 10815 {1830851200, 0, 0}, 10816 {1901166356, 0, 0}, 10817 {1955104493, 0, 0}, 10818 {2055836767, 0, 0}, 10819 {2096388952, 0, 0}, 10820 {2100052708, 0, 0}, 10821 {2161102232, 0, 0}, 10822 {2197904616, 0, 0}, 10823 {2262137600, 0, 0}, 10824 {2278571792, 0, 0}, 10825 {2281956980, 0, 0}, 10826 {2438466459, 0, 0}, 10827 {2443959748, 0, 0}, 10828 {2517964682, 0, 0}, 10829 {2557754096, 0, 0}, 10830 {2622612602, 0, 0}, 10831 {2660843182, 0, 0}, 10832 {2736844435, 0, 0}, 10833 {2780898906, 0, 0}, 10834 {3044188332, 0, 0}, 10835 {3059119137, 0, 0}, 10836 {3194725903, 0, 0}, 10837 {3270430997, 0, 0}, 10838 {3337532056, 0, 0}, 10839 {3407526215, 0, 0}, 10840 {3496407048, 0, 0}, 10841 {3504158761, 0, 0}, 10842 {3534518722, 0, 0}, 10843 {3570411982, 0, 0}, 10844 {3701632935, 0, 0}, 10845 {3929248764, 0, 0}, 10846 {3944781937, 0, 0}, 10847 {3970432934, 0, 0}, 10848 {4008405264, 0, 0}, 10849 {4245257809, 0, 0}, 10850 {4253051659, 0, 0}, 10851 {1111111111111111111, 0, 0}, 10852 {0, 6, 26}, 10853 {0, 46, 24}, 10854 {0, 64, 50}, 10855 {0, 7, 17}, 10856 {0, 40, 57}, 10857 {0, 56, 49}, 10858 {0, 34, 10}, 10859 {0, 32, 61}, 10860 {0, 36, 44}, 10861 {0, 8, 43}, 10862 {0, 4, 18}, 10863 {0, 25, 23}, 10864 {0, 9, 54}, 10865 {0, 45, 41}, 10866 {0, 13, 21}, 10867 {0, 47, 31}, 10868 {0, 39, 53}, 10869 {0, 11, 3}, 10870 {0, 29, 20}, 10871 {0, 38, 58}, 10872 {0, 37, 14}, 10873 {0, 66, 52}, 10874 {0, 67, 35}, 10875 {0, 48, 68}, 10876 {0, 1, 69}, 10877 {0, 70, 28}, 10878 {0, 27, 63}, 10879 {0, 72, 71}, 10880 {0, 74, 73}, 10881 {0, 75, 60}, 10882 {0, 77, 76}, 10883 {0, 5, 51}, 10884 {0, 15, 78}, 10885 {0, 30, 79}, 10886 {0, 55, 80}, 10887 {0, 42, 81}, 10888 {0, 83, 82}, 10889 {0, 85, 84}, 10890 {0, 86, 2}, 10891 {0, 19, 16}, 10892 {0, 87, 59}, 10893 {0, 62, 88}, 10894 {0, 90, 89}, 10895 {0, 22, 91}, 10896 {0, 93, 92}, 10897 {0, 95, 94}, 10898 {0, 97, 96}, 10899 {0, 99, 98}, 10900 {0, 101, 100}, 10901 {0, 12, 102}, 10902 {0, 104, 103}, 10903 {0, 33, 105}, 10904 {0, 107, 106}, 10905 {0, 109, 108}, 10906 {0, 111, 110}, 10907 {0, 113, 112}, 10908 {0, 115, 114}, 10909 {0, 117, 116}, 10910 {0, 119, 118}, 10911 {0, 121, 120}, 10912 {0, 123, 122}, 10913 {0, 125, 124}, 10914 {0, 127, 126}, 10915 {0, 65, 128}, 10916 })); 10917 10918 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFMul, 2), std::move(codec)); 10919 } 10920 10921 { 10922 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(127, { 10923 {0, 0, 0}, 10924 {13319433, 0, 0}, 10925 {15502752, 0, 0}, 10926 {162608772, 0, 0}, 10927 {171307615, 0, 0}, 10928 {296981500, 0, 0}, 10929 {354479447, 0, 0}, 10930 {413918748, 0, 0}, 10931 {443490822, 0, 0}, 10932 {487719832, 0, 0}, 10933 {593829839, 0, 0}, 10934 {615982737, 0, 0}, 10935 {703543228, 0, 0}, 10936 {810488476, 0, 0}, 10937 {870594305, 0, 0}, 10938 {875212982, 0, 0}, 10939 {959681532, 0, 0}, 10940 {1019457583, 0, 0}, 10941 {1203545131, 0, 0}, 10942 {1278448636, 0, 0}, 10943 {1325348861, 0, 0}, 10944 {1368383673, 0, 0}, 10945 {1400019344, 0, 0}, 10946 {1646147798, 0, 0}, 10947 {1679946323, 0, 0}, 10948 {1684282922, 0, 0}, 10949 {1747355813, 0, 0}, 10950 {1755648697, 0, 0}, 10951 {1793544760, 0, 0}, 10952 {1811839150, 0, 0}, 10953 {1901166356, 0, 0}, 10954 {1947620272, 0, 0}, 10955 {1992893964, 0, 0}, 10956 {2042001863, 0, 0}, 10957 {2096388952, 0, 0}, 10958 {2123388694, 0, 0}, 10959 {2128251367, 0, 0}, 10960 {2130747644, 0, 0}, 10961 {2135340676, 0, 0}, 10962 {2161102232, 0, 0}, 10963 {2443959748, 0, 0}, 10964 {2513230733, 0, 0}, 10965 {2557754096, 0, 0}, 10966 {2580096524, 0, 0}, 10967 {2589449658, 0, 0}, 10968 {2614879967, 0, 0}, 10969 {2698156268, 0, 0}, 10970 {2970183398, 0, 0}, 10971 {3002890475, 0, 0}, 10972 {3133016299, 0, 0}, 10973 {3142155593, 0, 0}, 10974 {3187066832, 0, 0}, 10975 {3266548732, 0, 0}, 10976 {3287039847, 0, 0}, 10977 {3357301402, 0, 0}, 10978 {3413713311, 0, 0}, 10979 {3434076295, 0, 0}, 10980 {3496407048, 0, 0}, 10981 {3504158761, 0, 0}, 10982 {3882634684, 0, 0}, 10983 {3929248764, 0, 0}, 10984 {3987079331, 0, 0}, 10985 {4076840151, 0, 0}, 10986 {4243119782, 0, 0}, 10987 {1111111111111111111, 0, 0}, 10988 {0, 31, 8}, 10989 {0, 14, 56}, 10990 {0, 7, 12}, 10991 {0, 9, 30}, 10992 {0, 42, 36}, 10993 {0, 19, 11}, 10994 {0, 22, 40}, 10995 {0, 15, 3}, 10996 {0, 57, 26}, 10997 {0, 58, 61}, 10998 {0, 55, 51}, 10999 {0, 48, 34}, 11000 {0, 20, 1}, 11001 {0, 24, 23}, 11002 {0, 46, 35}, 11003 {0, 59, 49}, 11004 {0, 21, 63}, 11005 {0, 62, 44}, 11006 {0, 6, 50}, 11007 {0, 28, 18}, 11008 {0, 66, 65}, 11009 {0, 41, 32}, 11010 {0, 39, 54}, 11011 {0, 53, 67}, 11012 {0, 68, 37}, 11013 {0, 33, 69}, 11014 {0, 43, 70}, 11015 {0, 71, 38}, 11016 {0, 72, 27}, 11017 {0, 13, 47}, 11018 {0, 45, 73}, 11019 {0, 75, 74}, 11020 {0, 76, 5}, 11021 {0, 77, 17}, 11022 {0, 79, 78}, 11023 {0, 52, 80}, 11024 {0, 2, 81}, 11025 {0, 83, 82}, 11026 {0, 85, 84}, 11027 {0, 87, 86}, 11028 {0, 4, 88}, 11029 {0, 16, 29}, 11030 {0, 90, 89}, 11031 {0, 92, 91}, 11032 {0, 94, 93}, 11033 {0, 60, 95}, 11034 {0, 97, 96}, 11035 {0, 98, 10}, 11036 {0, 25, 99}, 11037 {0, 101, 100}, 11038 {0, 103, 102}, 11039 {0, 105, 104}, 11040 {0, 107, 106}, 11041 {0, 109, 108}, 11042 {0, 111, 110}, 11043 {0, 113, 112}, 11044 {0, 115, 114}, 11045 {0, 117, 116}, 11046 {0, 119, 118}, 11047 {0, 121, 120}, 11048 {0, 123, 122}, 11049 {0, 125, 124}, 11050 {0, 64, 126}, 11051 })); 11052 11053 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFMul, 3), std::move(codec)); 11054 } 11055 11056 { 11057 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(9, { 11058 {0, 0, 0}, 11059 {679771963, 0, 0}, 11060 {1951208733, 0, 0}, 11061 {2320303498, 0, 0}, 11062 {3334207724, 0, 0}, 11063 {1111111111111111111, 0, 0}, 11064 {0, 4, 5}, 11065 {0, 3, 6}, 11066 {0, 7, 1}, 11067 {0, 2, 8}, 11068 })); 11069 11070 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFDiv, 0), std::move(codec)); 11071 } 11072 11073 { 11074 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(153, { 11075 {0, 0, 0}, 11076 {10142671, 0, 0}, 11077 {27865391, 0, 0}, 11078 {29517006, 0, 0}, 11079 {41739659, 0, 0}, 11080 {97231530, 0, 0}, 11081 {171334650, 0, 0}, 11082 {200553094, 0, 0}, 11083 {257136089, 0, 0}, 11084 {294390719, 0, 0}, 11085 {375530199, 0, 0}, 11086 {380957745, 0, 0}, 11087 {388034151, 0, 0}, 11088 {455591063, 0, 0}, 11089 {462664429, 0, 0}, 11090 {491456522, 0, 0}, 11091 {502863753, 0, 0}, 11092 {626480004, 0, 0}, 11093 {643418617, 0, 0}, 11094 {651464351, 0, 0}, 11095 {701281393, 0, 0}, 11096 {744817486, 0, 0}, 11097 {783918780, 0, 0}, 11098 {862784766, 0, 0}, 11099 {930804377, 0, 0}, 11100 {952536201, 0, 0}, 11101 {955476870, 0, 0}, 11102 {1043738701, 0, 0}, 11103 {1047011733, 0, 0}, 11104 {1080545747, 0, 0}, 11105 {1137442027, 0, 0}, 11106 {1235468610, 0, 0}, 11107 {1412908157, 0, 0}, 11108 {1431749301, 0, 0}, 11109 {1434223270, 0, 0}, 11110 {1440646342, 0, 0}, 11111 {1508570930, 0, 0}, 11112 {1510422521, 0, 0}, 11113 {1548121999, 0, 0}, 11114 {1582841441, 0, 0}, 11115 {1612225949, 0, 0}, 11116 {1665981878, 0, 0}, 11117 {1680746207, 0, 0}, 11118 {1696076631, 0, 0}, 11119 {1702168830, 0, 0}, 11120 {1761469971, 0, 0}, 11121 {1799299383, 0, 0}, 11122 {1910240213, 0, 0}, 11123 {1917451875, 0, 0}, 11124 {1945006185, 0, 0}, 11125 {1998444837, 0, 0}, 11126 {2045285083, 0, 0}, 11127 {2217966239, 0, 0}, 11128 {2279273489, 0, 0}, 11129 {2289803479, 0, 0}, 11130 {2348676810, 0, 0}, 11131 {2353194283, 0, 0}, 11132 {2403632109, 0, 0}, 11133 {2409539315, 0, 0}, 11134 {2414984922, 0, 0}, 11135 {2477389837, 0, 0}, 11136 {2524531022, 0, 0}, 11137 {2573160348, 0, 0}, 11138 {2639720559, 0, 0}, 11139 {2773229577, 0, 0}, 11140 {2796513469, 0, 0}, 11141 {2881225774, 0, 0}, 11142 {2890570341, 0, 0}, 11143 {2952850186, 0, 0}, 11144 {3023287679, 0, 0}, 11145 {3118548424, 0, 0}, 11146 {3877813395, 0, 0}, 11147 {3931288033, 0, 0}, 11148 {3972309363, 0, 0}, 11149 {4117704995, 0, 0}, 11150 {4140081844, 0, 0}, 11151 {4258414038, 0, 0}, 11152 {1111111111111111111, 0, 0}, 11153 {0, 74, 53}, 11154 {0, 58, 52}, 11155 {0, 65, 60}, 11156 {0, 41, 5}, 11157 {0, 1, 67}, 11158 {0, 24, 28}, 11159 {0, 27, 26}, 11160 {0, 55, 31}, 11161 {0, 36, 61}, 11162 {0, 13, 49}, 11163 {0, 56, 48}, 11164 {0, 16, 64}, 11165 {0, 76, 42}, 11166 {0, 45, 29}, 11167 {0, 23, 6}, 11168 {0, 72, 12}, 11169 {0, 35, 19}, 11170 {0, 20, 7}, 11171 {0, 21, 46}, 11172 {0, 71, 78}, 11173 {0, 80, 79}, 11174 {0, 47, 17}, 11175 {0, 81, 70}, 11176 {0, 34, 25}, 11177 {0, 83, 82}, 11178 {0, 85, 84}, 11179 {0, 37, 86}, 11180 {0, 87, 73}, 11181 {0, 10, 4}, 11182 {0, 40, 30}, 11183 {0, 88, 57}, 11184 {0, 54, 89}, 11185 {0, 50, 90}, 11186 {0, 11, 91}, 11187 {0, 39, 15}, 11188 {0, 59, 44}, 11189 {0, 92, 66}, 11190 {0, 69, 93}, 11191 {0, 95, 94}, 11192 {0, 14, 96}, 11193 {0, 98, 97}, 11194 {0, 62, 51}, 11195 {0, 100, 99}, 11196 {0, 102, 101}, 11197 {0, 104, 103}, 11198 {0, 32, 43}, 11199 {0, 105, 38}, 11200 {0, 107, 106}, 11201 {0, 109, 108}, 11202 {0, 22, 9}, 11203 {0, 33, 110}, 11204 {0, 2, 111}, 11205 {0, 112, 3}, 11206 {0, 114, 113}, 11207 {0, 116, 115}, 11208 {0, 68, 63}, 11209 {0, 118, 117}, 11210 {0, 120, 119}, 11211 {0, 121, 8}, 11212 {0, 123, 122}, 11213 {0, 125, 124}, 11214 {0, 127, 126}, 11215 {0, 129, 128}, 11216 {0, 131, 130}, 11217 {0, 133, 132}, 11218 {0, 75, 18}, 11219 {0, 135, 134}, 11220 {0, 137, 136}, 11221 {0, 139, 138}, 11222 {0, 141, 140}, 11223 {0, 143, 142}, 11224 {0, 145, 144}, 11225 {0, 147, 146}, 11226 {0, 149, 148}, 11227 {0, 150, 77}, 11228 {0, 152, 151}, 11229 })); 11230 11231 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFDiv, 1), std::move(codec)); 11232 } 11233 11234 { 11235 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(131, { 11236 {0, 0, 0}, 11237 {5908395, 0, 0}, 11238 {139011596, 0, 0}, 11239 {296981500, 0, 0}, 11240 {342615870, 0, 0}, 11241 {370232173, 0, 0}, 11242 {492958971, 0, 0}, 11243 {528662843, 0, 0}, 11244 {551924251, 0, 0}, 11245 {604894932, 0, 0}, 11246 {610429940, 0, 0}, 11247 {780957373, 0, 0}, 11248 {810488476, 0, 0}, 11249 {872544165, 0, 0}, 11250 {878733439, 0, 0}, 11251 {918849409, 0, 0}, 11252 {959681532, 0, 0}, 11253 {1013756921, 0, 0}, 11254 {1038982109, 0, 0}, 11255 {1081611718, 0, 0}, 11256 {1125913837, 0, 0}, 11257 {1209418480, 0, 0}, 11258 {1318081294, 0, 0}, 11259 {1367301635, 0, 0}, 11260 {1417425499, 0, 0}, 11261 {1625742020, 0, 0}, 11262 {1684282922, 0, 0}, 11263 {1746004874, 0, 0}, 11264 {1758287856, 0, 0}, 11265 {1777640493, 0, 0}, 11266 {2066323109, 0, 0}, 11267 {2094550054, 0, 0}, 11268 {2096388952, 0, 0}, 11269 {2144962711, 0, 0}, 11270 {2434845539, 0, 0}, 11271 {2480811229, 0, 0}, 11272 {2552825357, 0, 0}, 11273 {2636946065, 0, 0}, 11274 {2651956495, 0, 0}, 11275 {2669086217, 0, 0}, 11276 {2680819379, 0, 0}, 11277 {2709694527, 0, 0}, 11278 {2715304020, 0, 0}, 11279 {2790648021, 0, 0}, 11280 {2802261839, 0, 0}, 11281 {2806296851, 0, 0}, 11282 {2864543087, 0, 0}, 11283 {2952260510, 0, 0}, 11284 {2963184673, 0, 0}, 11285 {3091876332, 0, 0}, 11286 {3098991995, 0, 0}, 11287 {3131890669, 0, 0}, 11288 {3138977758, 0, 0}, 11289 {3198541202, 0, 0}, 11290 {3260579369, 0, 0}, 11291 {3263841912, 0, 0}, 11292 {3335250889, 0, 0}, 11293 {3345856521, 0, 0}, 11294 {3381478137, 0, 0}, 11295 {3489269251, 0, 0}, 11296 {3510242586, 0, 0}, 11297 {3820814597, 0, 0}, 11298 {3900859293, 0, 0}, 11299 {4041974454, 0, 0}, 11300 {4244540017, 0, 0}, 11301 {4265894873, 0, 0}, 11302 {1111111111111111111, 0, 0}, 11303 {0, 15, 52}, 11304 {0, 20, 18}, 11305 {0, 39, 29}, 11306 {0, 9, 43}, 11307 {0, 22, 13}, 11308 {0, 46, 27}, 11309 {0, 51, 48}, 11310 {0, 19, 57}, 11311 {0, 34, 24}, 11312 {0, 64, 59}, 11313 {0, 5, 7}, 11314 {0, 38, 37}, 11315 {0, 45, 47}, 11316 {0, 2, 56}, 11317 {0, 67, 8}, 11318 {0, 17, 68}, 11319 {0, 69, 61}, 11320 {0, 70, 6}, 11321 {0, 55, 54}, 11322 {0, 72, 71}, 11323 {0, 4, 73}, 11324 {0, 74, 40}, 11325 {0, 30, 11}, 11326 {0, 42, 36}, 11327 {0, 75, 58}, 11328 {0, 31, 76}, 11329 {0, 1, 77}, 11330 {0, 44, 14}, 11331 {0, 78, 50}, 11332 {0, 79, 23}, 11333 {0, 26, 80}, 11334 {0, 81, 12}, 11335 {0, 83, 82}, 11336 {0, 84, 21}, 11337 {0, 32, 85}, 11338 {0, 87, 86}, 11339 {0, 35, 10}, 11340 {0, 88, 62}, 11341 {0, 90, 89}, 11342 {0, 41, 91}, 11343 {0, 92, 53}, 11344 {0, 93, 63}, 11345 {0, 95, 94}, 11346 {0, 33, 96}, 11347 {0, 98, 97}, 11348 {0, 99, 3}, 11349 {0, 100, 28}, 11350 {0, 101, 49}, 11351 {0, 102, 60}, 11352 {0, 104, 103}, 11353 {0, 106, 105}, 11354 {0, 108, 107}, 11355 {0, 110, 109}, 11356 {0, 65, 111}, 11357 {0, 25, 112}, 11358 {0, 114, 113}, 11359 {0, 116, 115}, 11360 {0, 117, 16}, 11361 {0, 119, 118}, 11362 {0, 121, 120}, 11363 {0, 123, 122}, 11364 {0, 125, 124}, 11365 {0, 127, 126}, 11366 {0, 128, 66}, 11367 {0, 130, 129}, 11368 })); 11369 11370 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFDiv, 2), std::move(codec)); 11371 } 11372 11373 { 11374 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(95, { 11375 {0, 0, 0}, 11376 {116093251, 0, 0}, 11377 {149720480, 0, 0}, 11378 {183103444, 0, 0}, 11379 {251209228, 0, 0}, 11380 {296981500, 0, 0}, 11381 {357505993, 0, 0}, 11382 {394654115, 0, 0}, 11383 {410274915, 0, 0}, 11384 {452208841, 0, 0}, 11385 {788046331, 0, 0}, 11386 {797934924, 0, 0}, 11387 {810488476, 0, 0}, 11388 {1144188012, 0, 0}, 11389 {1220127364, 0, 0}, 11390 {1321616112, 0, 0}, 11391 {1324351672, 0, 0}, 11392 {1348149915, 0, 0}, 11393 {1459457331, 0, 0}, 11394 {1465623797, 0, 0}, 11395 {1531216990, 0, 0}, 11396 {1543672828, 0, 0}, 11397 {1578775276, 0, 0}, 11398 {1738815671, 0, 0}, 11399 {1904128160, 0, 0}, 11400 {2071351379, 0, 0}, 11401 {2119793999, 0, 0}, 11402 {2274779301, 0, 0}, 11403 {2291766425, 0, 0}, 11404 {2357410109, 0, 0}, 11405 {2438466459, 0, 0}, 11406 {2496463830, 0, 0}, 11407 {2630220147, 0, 0}, 11408 {2682510803, 0, 0}, 11409 {3047649911, 0, 0}, 11410 {3085703811, 0, 0}, 11411 {3235459678, 0, 0}, 11412 {3261703164, 0, 0}, 11413 {3331487616, 0, 0}, 11414 {3462674048, 0, 0}, 11415 {3570219049, 0, 0}, 11416 {3585315836, 0, 0}, 11417 {3602108619, 0, 0}, 11418 {3724004880, 0, 0}, 11419 {3931641900, 0, 0}, 11420 {3955205564, 0, 0}, 11421 {4073492988, 0, 0}, 11422 {4127308103, 0, 0}, 11423 {1111111111111111111, 0, 0}, 11424 {0, 24, 37}, 11425 {0, 13, 38}, 11426 {0, 17, 39}, 11427 {0, 35, 23}, 11428 {0, 18, 36}, 11429 {0, 46, 19}, 11430 {0, 20, 33}, 11431 {0, 47, 6}, 11432 {0, 1, 45}, 11433 {0, 3, 27}, 11434 {0, 8, 49}, 11435 {0, 50, 29}, 11436 {0, 10, 51}, 11437 {0, 43, 31}, 11438 {0, 53, 52}, 11439 {0, 54, 26}, 11440 {0, 7, 55}, 11441 {0, 56, 32}, 11442 {0, 57, 41}, 11443 {0, 59, 58}, 11444 {0, 61, 60}, 11445 {0, 63, 62}, 11446 {0, 64, 25}, 11447 {0, 2, 34}, 11448 {0, 65, 14}, 11449 {0, 67, 66}, 11450 {0, 12, 21}, 11451 {0, 9, 68}, 11452 {0, 69, 16}, 11453 {0, 71, 70}, 11454 {0, 72, 44}, 11455 {0, 11, 73}, 11456 {0, 74, 30}, 11457 {0, 4, 75}, 11458 {0, 28, 15}, 11459 {0, 76, 42}, 11460 {0, 5, 77}, 11461 {0, 78, 40}, 11462 {0, 80, 79}, 11463 {0, 82, 81}, 11464 {0, 22, 83}, 11465 {0, 85, 84}, 11466 {0, 86, 48}, 11467 {0, 88, 87}, 11468 {0, 90, 89}, 11469 {0, 92, 91}, 11470 {0, 94, 93}, 11471 })); 11472 11473 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpFDiv, 3), std::move(codec)); 11474 } 11475 11476 { 11477 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(7, { 11478 {0, 0, 0}, 11479 {679771963, 0, 0}, 11480 {2320303498, 0, 0}, 11481 {3334207724, 0, 0}, 11482 {1111111111111111111, 0, 0}, 11483 {0, 3, 4}, 11484 {0, 2, 5}, 11485 {0, 1, 6}, 11486 })); 11487 11488 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpVectorTimesScalar, 0), std::move(codec)); 11489 } 11490 11491 { 11492 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(121, { 11493 {0, 0, 0}, 11494 {14113753, 0, 0}, 11495 {102358168, 0, 0}, 11496 {179458548, 0, 0}, 11497 {330388453, 0, 0}, 11498 {386525753, 0, 0}, 11499 {470277359, 0, 0}, 11500 {497658126, 0, 0}, 11501 {508007510, 0, 0}, 11502 {815034111, 0, 0}, 11503 {826214242, 0, 0}, 11504 {849867303, 0, 0}, 11505 {885645401, 0, 0}, 11506 {939415664, 0, 0}, 11507 {968885186, 0, 0}, 11508 {1105835505, 0, 0}, 11509 {1159301677, 0, 0}, 11510 {1461897718, 0, 0}, 11511 {1482251215, 0, 0}, 11512 {1486206763, 0, 0}, 11513 {1527762373, 0, 0}, 11514 {1558990974, 0, 0}, 11515 {1618754372, 0, 0}, 11516 {1669959736, 0, 0}, 11517 {1752686878, 0, 0}, 11518 {2004567202, 0, 0}, 11519 {2055637638, 0, 0}, 11520 {2113506324, 0, 0}, 11521 {2154320787, 0, 0}, 11522 {2162274327, 0, 0}, 11523 {2306141594, 0, 0}, 11524 {2345566651, 0, 0}, 11525 {2457690657, 0, 0}, 11526 {2473053808, 0, 0}, 11527 {2500422644, 0, 0}, 11528 {2504802016, 0, 0}, 11529 {2506771164, 0, 0}, 11530 {2793529873, 0, 0}, 11531 {2801333547, 0, 0}, 11532 {2879050471, 0, 0}, 11533 {3032677281, 0, 0}, 11534 {3045470312, 0, 0}, 11535 {3181546731, 0, 0}, 11536 {3240977890, 0, 0}, 11537 {3262572726, 0, 0}, 11538 {3307100165, 0, 0}, 11539 {3425841570, 0, 0}, 11540 {3560552546, 0, 0}, 11541 {3641833815, 0, 0}, 11542 {3652695478, 0, 0}, 11543 {3782362128, 0, 0}, 11544 {3797961332, 0, 0}, 11545 {3837583704, 0, 0}, 11546 {3886529747, 0, 0}, 11547 {3907920335, 0, 0}, 11548 {4043078107, 0, 0}, 11549 {4044928561, 0, 0}, 11550 {4069720347, 0, 0}, 11551 {4180570743, 0, 0}, 11552 {4245743275, 0, 0}, 11553 {4285201458, 0, 0}, 11554 {1111111111111111111, 0, 0}, 11555 {0, 44, 28}, 11556 {0, 13, 45}, 11557 {0, 19, 15}, 11558 {0, 32, 31}, 11559 {0, 43, 42}, 11560 {0, 16, 52}, 11561 {0, 33, 22}, 11562 {0, 57, 55}, 11563 {0, 24, 21}, 11564 {0, 2, 59}, 11565 {0, 10, 3}, 11566 {0, 18, 12}, 11567 {0, 41, 39}, 11568 {0, 60, 46}, 11569 {0, 4, 25}, 11570 {0, 58, 49}, 11571 {0, 14, 1}, 11572 {0, 27, 17}, 11573 {0, 50, 36}, 11574 {0, 23, 54}, 11575 {0, 5, 30}, 11576 {0, 11, 7}, 11577 {0, 38, 29}, 11578 {0, 37, 8}, 11579 {0, 48, 56}, 11580 {0, 20, 6}, 11581 {0, 34, 26}, 11582 {0, 63, 62}, 11583 {0, 65, 64}, 11584 {0, 67, 66}, 11585 {0, 69, 68}, 11586 {0, 71, 70}, 11587 {0, 73, 72}, 11588 {0, 75, 74}, 11589 {0, 9, 76}, 11590 {0, 78, 77}, 11591 {0, 80, 79}, 11592 {0, 82, 81}, 11593 {0, 84, 83}, 11594 {0, 40, 35}, 11595 {0, 85, 47}, 11596 {0, 86, 51}, 11597 {0, 88, 87}, 11598 {0, 90, 89}, 11599 {0, 53, 91}, 11600 {0, 93, 92}, 11601 {0, 95, 94}, 11602 {0, 97, 96}, 11603 {0, 99, 98}, 11604 {0, 101, 100}, 11605 {0, 103, 102}, 11606 {0, 105, 104}, 11607 {0, 107, 106}, 11608 {0, 109, 108}, 11609 {0, 111, 110}, 11610 {0, 113, 112}, 11611 {0, 115, 114}, 11612 {0, 117, 116}, 11613 {0, 119, 118}, 11614 {0, 61, 120}, 11615 })); 11616 11617 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpVectorTimesScalar, 1), std::move(codec)); 11618 } 11619 11620 { 11621 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(127, { 11622 {0, 0, 0}, 11623 {100979271, 0, 0}, 11624 {269576093, 0, 0}, 11625 {314809953, 0, 0}, 11626 {354479447, 0, 0}, 11627 {497658126, 0, 0}, 11628 {882718761, 0, 0}, 11629 {968885186, 0, 0}, 11630 {973908139, 0, 0}, 11631 {1019457583, 0, 0}, 11632 {1191015885, 0, 0}, 11633 {1266262705, 0, 0}, 11634 {1310404265, 0, 0}, 11635 {1325348861, 0, 0}, 11636 {1367301635, 0, 0}, 11637 {1368383673, 0, 0}, 11638 {1570165302, 0, 0}, 11639 {1618544981, 0, 0}, 11640 {1646147798, 0, 0}, 11641 {1674464100, 0, 0}, 11642 {1679946323, 0, 0}, 11643 {1686512349, 0, 0}, 11644 {1766401548, 0, 0}, 11645 {1774052499, 0, 0}, 11646 {1788301425, 0, 0}, 11647 {2023008475, 0, 0}, 11648 {2055836767, 0, 0}, 11649 {2096388952, 0, 0}, 11650 {2123388694, 0, 0}, 11651 {2129301998, 0, 0}, 11652 {2212501241, 0, 0}, 11653 {2274226560, 0, 0}, 11654 {2362972044, 0, 0}, 11655 {2378763734, 0, 0}, 11656 {2506771164, 0, 0}, 11657 {2558655180, 0, 0}, 11658 {2622612602, 0, 0}, 11659 {2660843182, 0, 0}, 11660 {2698156268, 0, 0}, 11661 {2801333547, 0, 0}, 11662 {2850246066, 0, 0}, 11663 {2895151306, 0, 0}, 11664 {2970183398, 0, 0}, 11665 {2986830770, 0, 0}, 11666 {3001444829, 0, 0}, 11667 {3133016299, 0, 0}, 11668 {3152745753, 0, 0}, 11669 {3187066832, 0, 0}, 11670 {3261122899, 0, 0}, 11671 {3496407048, 0, 0}, 11672 {3513669836, 0, 0}, 11673 {3536390697, 0, 0}, 11674 {3570411982, 0, 0}, 11675 {3653838348, 0, 0}, 11676 {3713290482, 0, 0}, 11677 {3858973601, 0, 0}, 11678 {3873587660, 0, 0}, 11679 {3877583949, 0, 0}, 11680 {3882634684, 0, 0}, 11681 {3907920335, 0, 0}, 11682 {3997432565, 0, 0}, 11683 {4169226615, 0, 0}, 11684 {4219766939, 0, 0}, 11685 {4243119782, 0, 0}, 11686 {1111111111111111111, 0, 0}, 11687 {0, 25, 12}, 11688 {0, 41, 29}, 11689 {0, 56, 44}, 11690 {0, 1, 3}, 11691 {0, 48, 24}, 11692 {0, 33, 60}, 11693 {0, 8, 50}, 11694 {0, 35, 21}, 11695 {0, 11, 7}, 11696 {0, 34, 23}, 11697 {0, 59, 57}, 11698 {0, 10, 62}, 11699 {0, 40, 2}, 11700 {0, 5, 49}, 11701 {0, 39, 17}, 11702 {0, 9, 61}, 11703 {0, 30, 6}, 11704 {0, 19, 46}, 11705 {0, 53, 54}, 11706 {0, 31, 52}, 11707 {0, 55, 43}, 11708 {0, 66, 65}, 11709 {0, 16, 67}, 11710 {0, 51, 68}, 11711 {0, 70, 69}, 11712 {0, 26, 36}, 11713 {0, 72, 71}, 11714 {0, 74, 73}, 11715 {0, 76, 75}, 11716 {0, 78, 77}, 11717 {0, 80, 79}, 11718 {0, 82, 81}, 11719 {0, 37, 83}, 11720 {0, 85, 84}, 11721 {0, 13, 86}, 11722 {0, 20, 18}, 11723 {0, 38, 28}, 11724 {0, 58, 45}, 11725 {0, 87, 63}, 11726 {0, 15, 88}, 11727 {0, 32, 22}, 11728 {0, 89, 4}, 11729 {0, 90, 14}, 11730 {0, 91, 42}, 11731 {0, 93, 92}, 11732 {0, 95, 94}, 11733 {0, 97, 96}, 11734 {0, 99, 98}, 11735 {0, 101, 100}, 11736 {0, 103, 102}, 11737 {0, 105, 104}, 11738 {0, 107, 106}, 11739 {0, 109, 108}, 11740 {0, 111, 110}, 11741 {0, 113, 112}, 11742 {0, 115, 114}, 11743 {0, 27, 47}, 11744 {0, 117, 116}, 11745 {0, 119, 118}, 11746 {0, 121, 120}, 11747 {0, 123, 122}, 11748 {0, 125, 124}, 11749 {0, 126, 64}, 11750 })); 11751 11752 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpVectorTimesScalar, 2), std::move(codec)); 11753 } 11754 11755 { 11756 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(137, { 11757 {0, 0, 0}, 11758 {11698369, 0, 0}, 11759 {146392076, 0, 0}, 11760 {151810803, 0, 0}, 11761 {223800276, 0, 0}, 11762 {227103506, 0, 0}, 11763 {253329281, 0, 0}, 11764 {346929928, 0, 0}, 11765 {461040879, 0, 0}, 11766 {629859130, 0, 0}, 11767 {680157484, 0, 0}, 11768 {783918780, 0, 0}, 11769 {810488476, 0, 0}, 11770 {824323032, 0, 0}, 11771 {870594305, 0, 0}, 11772 {959681532, 0, 0}, 11773 {975807626, 0, 0}, 11774 {1081642571, 0, 0}, 11775 {1084574846, 0, 0}, 11776 {1094817798, 0, 0}, 11777 {1141965917, 0, 0}, 11778 {1164137269, 0, 0}, 11779 {1166917451, 0, 0}, 11780 {1204787336, 0, 0}, 11781 {1232501371, 0, 0}, 11782 {1318479490, 0, 0}, 11783 {1369818198, 0, 0}, 11784 {1372785527, 0, 0}, 11785 {1526654696, 0, 0}, 11786 {1543672828, 0, 0}, 11787 {1548121999, 0, 0}, 11788 {1635292159, 0, 0}, 11789 {1641070431, 0, 0}, 11790 {1684282922, 0, 0}, 11791 {1767704813, 0, 0}, 11792 {1781765116, 0, 0}, 11793 {1838763297, 0, 0}, 11794 {1901166356, 0, 0}, 11795 {1904846533, 0, 0}, 11796 {2011183308, 0, 0}, 11797 {2032069771, 0, 0}, 11798 {2071351379, 0, 0}, 11799 {2087004702, 0, 0}, 11800 {2244928358, 0, 0}, 11801 {2314864456, 0, 0}, 11802 {2374216296, 0, 0}, 11803 {2394332122, 0, 0}, 11804 {2443610186, 0, 0}, 11805 {2524697596, 0, 0}, 11806 {2526961521, 0, 0}, 11807 {2568098594, 0, 0}, 11808 {2807907995, 0, 0}, 11809 {3103302036, 0, 0}, 11810 {3117071189, 0, 0}, 11811 {3188115516, 0, 0}, 11812 {3417584874, 0, 0}, 11813 {3554463148, 0, 0}, 11814 {3561482820, 0, 0}, 11815 {3691770462, 0, 0}, 11816 {3729929345, 0, 0}, 11817 {3733675151, 0, 0}, 11818 {3831290364, 0, 0}, 11819 {3866493821, 0, 0}, 11820 {3929248764, 0, 0}, 11821 {4060703604, 0, 0}, 11822 {4092487128, 0, 0}, 11823 {4167600590, 0, 0}, 11824 {4214779116, 0, 0}, 11825 {4248015868, 0, 0}, 11826 {1111111111111111111, 0, 0}, 11827 {0, 36, 13}, 11828 {0, 49, 60}, 11829 {0, 51, 9}, 11830 {0, 3, 62}, 11831 {0, 67, 41}, 11832 {0, 4, 31}, 11833 {0, 66, 5}, 11834 {0, 55, 32}, 11835 {0, 2, 1}, 11836 {0, 30, 16}, 11837 {0, 7, 38}, 11838 {0, 19, 10}, 11839 {0, 34, 20}, 11840 {0, 45, 46}, 11841 {0, 22, 11}, 11842 {0, 25, 23}, 11843 {0, 40, 39}, 11844 {0, 21, 57}, 11845 {0, 6, 35}, 11846 {0, 61, 8}, 11847 {0, 52, 26}, 11848 {0, 70, 59}, 11849 {0, 71, 14}, 11850 {0, 68, 47}, 11851 {0, 73, 72}, 11852 {0, 29, 74}, 11853 {0, 76, 75}, 11854 {0, 77, 17}, 11855 {0, 79, 78}, 11856 {0, 81, 80}, 11857 {0, 82, 18}, 11858 {0, 83, 42}, 11859 {0, 85, 84}, 11860 {0, 87, 86}, 11861 {0, 27, 37}, 11862 {0, 53, 43}, 11863 {0, 89, 88}, 11864 {0, 64, 54}, 11865 {0, 90, 65}, 11866 {0, 92, 91}, 11867 {0, 58, 93}, 11868 {0, 56, 48}, 11869 {0, 94, 28}, 11870 {0, 96, 95}, 11871 {0, 98, 97}, 11872 {0, 44, 99}, 11873 {0, 101, 100}, 11874 {0, 15, 12}, 11875 {0, 103, 102}, 11876 {0, 104, 33}, 11877 {0, 106, 105}, 11878 {0, 108, 107}, 11879 {0, 24, 109}, 11880 {0, 111, 110}, 11881 {0, 113, 112}, 11882 {0, 114, 50}, 11883 {0, 116, 115}, 11884 {0, 118, 117}, 11885 {0, 120, 119}, 11886 {0, 122, 121}, 11887 {0, 124, 123}, 11888 {0, 126, 125}, 11889 {0, 128, 127}, 11890 {0, 129, 63}, 11891 {0, 131, 130}, 11892 {0, 133, 132}, 11893 {0, 135, 134}, 11894 {0, 136, 69}, 11895 })); 11896 11897 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpVectorTimesScalar, 3), std::move(codec)); 11898 } 11899 11900 { 11901 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 11902 {0, 0, 0}, 11903 {1951208733, 0, 0}, 11904 {1111111111111111111, 0, 0}, 11905 {0, 1, 2}, 11906 })); 11907 11908 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpDot, 0), std::move(codec)); 11909 } 11910 11911 { 11912 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(97, { 11913 {0, 0, 0}, 11914 {78001013, 0, 0}, 11915 {170690025, 0, 0}, 11916 {206688607, 0, 0}, 11917 {443490822, 0, 0}, 11918 {461476226, 0, 0}, 11919 {537830163, 0, 0}, 11920 {669982125, 0, 0}, 11921 {790502615, 0, 0}, 11922 {805072272, 0, 0}, 11923 {1173092699, 0, 0}, 11924 {1220643281, 0, 0}, 11925 {1448448666, 0, 0}, 11926 {1466804584, 0, 0}, 11927 {1473411044, 0, 0}, 11928 {1515695460, 0, 0}, 11929 {1587730355, 0, 0}, 11930 {1625742020, 0, 0}, 11931 {2071351379, 0, 0}, 11932 {2250055803, 0, 0}, 11933 {2291766425, 0, 0}, 11934 {2416108131, 0, 0}, 11935 {2427834344, 0, 0}, 11936 {2436009347, 0, 0}, 11937 {2455417440, 0, 0}, 11938 {2480811229, 0, 0}, 11939 {2654325647, 0, 0}, 11940 {2919796598, 0, 0}, 11941 {3047649911, 0, 0}, 11942 {3088511797, 0, 0}, 11943 {3104643263, 0, 0}, 11944 {3198541202, 0, 0}, 11945 {3204986803, 0, 0}, 11946 {3272233597, 0, 0}, 11947 {3383007207, 0, 0}, 11948 {3602108619, 0, 0}, 11949 {3622349409, 0, 0}, 11950 {3714664910, 0, 0}, 11951 {3717942504, 0, 0}, 11952 {3732000233, 0, 0}, 11953 {3759072440, 0, 0}, 11954 {3765247327, 0, 0}, 11955 {3805423332, 0, 0}, 11956 {3829325073, 0, 0}, 11957 {3866493821, 0, 0}, 11958 {4058280485, 0, 0}, 11959 {4061558677, 0, 0}, 11960 {4148979936, 0, 0}, 11961 {4155586396, 0, 0}, 11962 {1111111111111111111, 0, 0}, 11963 {0, 13, 38}, 11964 {0, 39, 14}, 11965 {0, 44, 9}, 11966 {0, 48, 47}, 11967 {0, 23, 15}, 11968 {0, 33, 25}, 11969 {0, 1, 42}, 11970 {0, 5, 46}, 11971 {0, 31, 3}, 11972 {0, 36, 28}, 11973 {0, 16, 12}, 11974 {0, 32, 22}, 11975 {0, 41, 21}, 11976 {0, 6, 50}, 11977 {0, 51, 29}, 11978 {0, 45, 34}, 11979 {0, 37, 8}, 11980 {0, 19, 52}, 11981 {0, 11, 4}, 11982 {0, 43, 40}, 11983 {0, 27, 53}, 11984 {0, 54, 10}, 11985 {0, 24, 55}, 11986 {0, 57, 56}, 11987 {0, 58, 26}, 11988 {0, 2, 59}, 11989 {0, 61, 60}, 11990 {0, 63, 62}, 11991 {0, 65, 64}, 11992 {0, 20, 66}, 11993 {0, 30, 35}, 11994 {0, 67, 17}, 11995 {0, 68, 7}, 11996 {0, 70, 69}, 11997 {0, 71, 18}, 11998 {0, 73, 72}, 11999 {0, 75, 74}, 12000 {0, 77, 76}, 12001 {0, 79, 78}, 12002 {0, 81, 80}, 12003 {0, 83, 82}, 12004 {0, 85, 84}, 12005 {0, 87, 86}, 12006 {0, 89, 88}, 12007 {0, 91, 90}, 12008 {0, 93, 92}, 12009 {0, 95, 94}, 12010 {0, 49, 96}, 12011 })); 12012 12013 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpDot, 1), std::move(codec)); 12014 } 12015 12016 { 12017 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(117, { 12018 {0, 0, 0}, 12019 {50385656, 0, 0}, 12020 {181902171, 0, 0}, 12021 {560078433, 0, 0}, 12022 {615982737, 0, 0}, 12023 {674428451, 0, 0}, 12024 {837715723, 0, 0}, 12025 {886972033, 0, 0}, 12026 {900101778, 0, 0}, 12027 {983299427, 0, 0}, 12028 {1237148906, 0, 0}, 12029 {1364157225, 0, 0}, 12030 {1367301635, 0, 0}, 12031 {1380160211, 0, 0}, 12032 {1451831482, 0, 0}, 12033 {1499923635, 0, 0}, 12034 {1570165302, 0, 0}, 12035 {1735295265, 0, 0}, 12036 {1766401548, 0, 0}, 12037 {1796311149, 0, 0}, 12038 {1826456251, 0, 0}, 12039 {1839669171, 0, 0}, 12040 {2012838864, 0, 0}, 12041 {2024071551, 0, 0}, 12042 {2096388952, 0, 0}, 12043 {2161102232, 0, 0}, 12044 {2197874825, 0, 0}, 12045 {2279700640, 0, 0}, 12046 {2289183712, 0, 0}, 12047 {2351620600, 0, 0}, 12048 {2362972044, 0, 0}, 12049 {2472176885, 0, 0}, 12050 {2477434291, 0, 0}, 12051 {2530899578, 0, 0}, 12052 {2531826164, 0, 0}, 12053 {2558133383, 0, 0}, 12054 {2589449658, 0, 0}, 12055 {2621255555, 0, 0}, 12056 {2622612602, 0, 0}, 12057 {2872580757, 0, 0}, 12058 {2881302403, 0, 0}, 12059 {2891091137, 0, 0}, 12060 {2923708820, 0, 0}, 12061 {2936040203, 0, 0}, 12062 {2970183398, 0, 0}, 12063 {3187066832, 0, 0}, 12064 {3224952074, 0, 0}, 12065 {3244383472, 0, 0}, 12066 {3261122899, 0, 0}, 12067 {3362830643, 0, 0}, 12068 {3538158875, 0, 0}, 12069 {3635542517, 0, 0}, 12070 {3682213068, 0, 0}, 12071 {3721902098, 0, 0}, 12072 {3826846522, 0, 0}, 12073 {3877583949, 0, 0}, 12074 {3997432565, 0, 0}, 12075 {4093615095, 0, 0}, 12076 {4106828015, 0, 0}, 12077 {1111111111111111111, 0, 0}, 12078 {0, 52, 28}, 12079 {0, 33, 20}, 12080 {0, 46, 57}, 12081 {0, 47, 54}, 12082 {0, 21, 17}, 12083 {0, 31, 58}, 12084 {0, 12, 53}, 12085 {0, 29, 3}, 12086 {0, 35, 34}, 12087 {0, 48, 41}, 12088 {0, 8, 5}, 12089 {0, 7, 55}, 12090 {0, 37, 32}, 12091 {0, 60, 38}, 12092 {0, 61, 16}, 12093 {0, 14, 62}, 12094 {0, 23, 63}, 12095 {0, 13, 19}, 12096 {0, 64, 9}, 12097 {0, 65, 39}, 12098 {0, 2, 66}, 12099 {0, 67, 42}, 12100 {0, 69, 68}, 12101 {0, 25, 70}, 12102 {0, 1, 49}, 12103 {0, 6, 71}, 12104 {0, 72, 15}, 12105 {0, 73, 11}, 12106 {0, 75, 74}, 12107 {0, 77, 76}, 12108 {0, 4, 78}, 12109 {0, 56, 50}, 12110 {0, 80, 79}, 12111 {0, 10, 81}, 12112 {0, 83, 82}, 12113 {0, 85, 84}, 12114 {0, 86, 27}, 12115 {0, 43, 40}, 12116 {0, 88, 87}, 12117 {0, 44, 24}, 12118 {0, 30, 89}, 12119 {0, 51, 36}, 12120 {0, 45, 90}, 12121 {0, 18, 91}, 12122 {0, 93, 92}, 12123 {0, 22, 94}, 12124 {0, 26, 95}, 12125 {0, 97, 96}, 12126 {0, 99, 98}, 12127 {0, 101, 100}, 12128 {0, 103, 102}, 12129 {0, 105, 104}, 12130 {0, 107, 106}, 12131 {0, 109, 108}, 12132 {0, 111, 110}, 12133 {0, 113, 112}, 12134 {0, 59, 114}, 12135 {0, 116, 115}, 12136 })); 12137 12138 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpDot, 2), std::move(codec)); 12139 } 12140 12141 { 12142 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(179, { 12143 {0, 0, 0}, 12144 {27177503, 0, 0}, 12145 {50385656, 0, 0}, 12146 {129748122, 0, 0}, 12147 {139011596, 0, 0}, 12148 {162608772, 0, 0}, 12149 {181902171, 0, 0}, 12150 {225200779, 0, 0}, 12151 {342159236, 0, 0}, 12152 {386293029, 0, 0}, 12153 {429023543, 0, 0}, 12154 {443558693, 0, 0}, 12155 {504514034, 0, 0}, 12156 {615982737, 0, 0}, 12157 {669812542, 0, 0}, 12158 {674428451, 0, 0}, 12159 {837715723, 0, 0}, 12160 {861753115, 0, 0}, 12161 {875212982, 0, 0}, 12162 {876867882, 0, 0}, 12163 {899320334, 0, 0}, 12164 {900101778, 0, 0}, 12165 {938517572, 0, 0}, 12166 {1347339159, 0, 0}, 12167 {1356063462, 0, 0}, 12168 {1373856501, 0, 0}, 12169 {1376656865, 0, 0}, 12170 {1451831482, 0, 0}, 12171 {1522979646, 0, 0}, 12172 {1548491889, 0, 0}, 12173 {1570165302, 0, 0}, 12174 {1735295265, 0, 0}, 12175 {1747355813, 0, 0}, 12176 {1766401548, 0, 0}, 12177 {1871105284, 0, 0}, 12178 {1918742169, 0, 0}, 12179 {1922045399, 0, 0}, 12180 {1978689945, 0, 0}, 12181 {2024071551, 0, 0}, 12182 {2059975069, 0, 0}, 12183 {2076833303, 0, 0}, 12184 {2096388952, 0, 0}, 12185 {2181030375, 0, 0}, 12186 {2197874825, 0, 0}, 12187 {2362972044, 0, 0}, 12188 {2414725163, 0, 0}, 12189 {2517964682, 0, 0}, 12190 {2564745684, 0, 0}, 12191 {2577387676, 0, 0}, 12192 {2589449658, 0, 0}, 12193 {2604242419, 0, 0}, 12194 {2683080096, 0, 0}, 12195 {2696349144, 0, 0}, 12196 {2763960513, 0, 0}, 12197 {2817823941, 0, 0}, 12198 {2852854788, 0, 0}, 12199 {2891091137, 0, 0}, 12200 {2919626325, 0, 0}, 12201 {2923708820, 0, 0}, 12202 {2936040203, 0, 0}, 12203 {2963744582, 0, 0}, 12204 {2970183398, 0, 0}, 12205 {2984459037, 0, 0}, 12206 {2996594997, 0, 0}, 12207 {3015046341, 0, 0}, 12208 {3055195668, 0, 0}, 12209 {3127329373, 0, 0}, 12210 {3187066832, 0, 0}, 12211 {3193597927, 0, 0}, 12212 {3200890815, 0, 0}, 12213 {3224258475, 0, 0}, 12214 {3224480461, 0, 0}, 12215 {3261122899, 0, 0}, 12216 {3609540589, 0, 0}, 12217 {3619404941, 0, 0}, 12218 {3619626927, 0, 0}, 12219 {3727034815, 0, 0}, 12220 {3742724777, 0, 0}, 12221 {3742946763, 0, 0}, 12222 {3836179806, 0, 0}, 12223 {3913885196, 0, 0}, 12224 {3927338499, 0, 0}, 12225 {3927466635, 0, 0}, 12226 {3997432565, 0, 0}, 12227 {3999472204, 0, 0}, 12228 {4010499223, 0, 0}, 12229 {4032662899, 0, 0}, 12230 {4110915453, 0, 0}, 12231 {4145966869, 0, 0}, 12232 {4228303141, 0, 0}, 12233 {1111111111111111111, 0, 0}, 12234 {0, 23, 87}, 12235 {0, 9, 28}, 12236 {0, 42, 17}, 12237 {0, 74, 70}, 12238 {0, 86, 77}, 12239 {0, 18, 5}, 12240 {0, 31, 32}, 12241 {0, 34, 3}, 12242 {0, 38, 68}, 12243 {0, 50, 29}, 12244 {0, 72, 62}, 12245 {0, 21, 15}, 12246 {0, 14, 54}, 12247 {0, 56, 22}, 12248 {0, 48, 88}, 12249 {0, 2, 76}, 12250 {0, 6, 47}, 12251 {0, 26, 79}, 12252 {0, 65, 12}, 12253 {0, 37, 81}, 12254 {0, 91, 60}, 12255 {0, 30, 92}, 12256 {0, 25, 7}, 12257 {0, 45, 40}, 12258 {0, 66, 52}, 12259 {0, 71, 69}, 12260 {0, 78, 75}, 12261 {0, 84, 82}, 12262 {0, 94, 93}, 12263 {0, 27, 95}, 12264 {0, 97, 96}, 12265 {0, 99, 98}, 12266 {0, 100, 39}, 12267 {0, 55, 101}, 12268 {0, 58, 102}, 12269 {0, 89, 103}, 12270 {0, 35, 11}, 12271 {0, 104, 36}, 12272 {0, 53, 10}, 12273 {0, 1, 64}, 12274 {0, 73, 20}, 12275 {0, 105, 13}, 12276 {0, 107, 106}, 12277 {0, 8, 16}, 12278 {0, 24, 19}, 12279 {0, 85, 63}, 12280 {0, 109, 108}, 12281 {0, 111, 110}, 12282 {0, 4, 112}, 12283 {0, 114, 113}, 12284 {0, 116, 115}, 12285 {0, 118, 117}, 12286 {0, 83, 119}, 12287 {0, 121, 120}, 12288 {0, 123, 122}, 12289 {0, 49, 44}, 12290 {0, 124, 57}, 12291 {0, 125, 59}, 12292 {0, 126, 67}, 12293 {0, 128, 127}, 12294 {0, 130, 129}, 12295 {0, 132, 131}, 12296 {0, 134, 133}, 12297 {0, 135, 51}, 12298 {0, 137, 136}, 12299 {0, 138, 61}, 12300 {0, 43, 41}, 12301 {0, 140, 139}, 12302 {0, 142, 141}, 12303 {0, 144, 143}, 12304 {0, 146, 145}, 12305 {0, 148, 147}, 12306 {0, 149, 33}, 12307 {0, 80, 150}, 12308 {0, 152, 151}, 12309 {0, 154, 153}, 12310 {0, 156, 155}, 12311 {0, 158, 157}, 12312 {0, 160, 159}, 12313 {0, 162, 161}, 12314 {0, 164, 163}, 12315 {0, 166, 165}, 12316 {0, 168, 167}, 12317 {0, 46, 169}, 12318 {0, 171, 170}, 12319 {0, 90, 172}, 12320 {0, 174, 173}, 12321 {0, 176, 175}, 12322 {0, 178, 177}, 12323 })); 12324 12325 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpDot, 3), std::move(codec)); 12326 } 12327 12328 { 12329 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 12330 {0, 0, 0}, 12331 {1036475267, 0, 0}, 12332 {1111111111111111111, 0, 0}, 12333 {0, 1, 2}, 12334 })); 12335 12336 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpLabel, 0), std::move(codec)); 12337 } 12338 12339 { 12340 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(3, { 12341 {0, 0, 0}, 12342 {1036475267, 0, 0}, 12343 {1111111111111111111, 0, 0}, 12344 {0, 1, 2}, 12345 })); 12346 12347 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpBranch, 0), std::move(codec)); 12348 } 12349 12350 { 12351 std::unique_ptr<HuffmanCodec<uint64_t>> codec(new HuffmanCodec<uint64_t>(119, { 12352 {0, 0, 0}, 12353 {57149555, 0, 0}, 12354 {139011596, 0, 0}, 12355 {255835594, 0, 0}, 12356 {330249537, 0, 0}, 12357 {388686774, 0, 0}, 12358 {508217552, 0, 0}, 12359 {550831114, 0, 0}, 12360 {559246409, 0, 0}, 12361 {599185303, 0, 0}, 12362 {649208064, 0, 0}, 12363 {679061455, 0, 0}, 12364 {810488476, 0, 0}, 12365 {951841533, 0, 0}, 12366 {1008886329, 0, 0}, 12367 {1022544883, 0, 0}, 12368 {1215030156, 0, 0}, 12369 {1305703280, 0, 0}, 12370 {1367301635, 0, 0}, 12371 {1453447304, 0, 0}, 12372 {1487177499, 0, 0}, 12373 {1603937321, 0, 0}, 12374 {1617826947, 0, 0}, 12375 {1643868273, 0, 0}, 12376 {1672607981, 0, 0}, 12377 {1681941034, 0, 0}, 12378 {1755165354, 0, 0}, 12379 {1781864804, 0, 0}, 12380 {1795715718, 0, 0}, 12381 {1977038330, 0, 0}, 12382 {2096388952, 0, 0}, 12383 {2204920111, 0, 0}, 12384 {2244470522, 0, 0}, 12385 {2330636993, 0, 0}, 12386 {2400601988, 0, 0}, 12387 {2424848261, 0, 0}, 12388 {2603020391, 0, 0}, 12389 {2622612602, 0, 0}, 12390 {2645135839, 0, 0}, 12391 {2660843182, 0, 0}, 12392 {2708915136, 0, 0}, 12393 {2724166585, 0, 0}, 12394 {2728667725, 0, 0}, 12395 {2890638791, 0, 0}, 12396 {2901034693, 0, 0}, 12397 {2941648648, 0, 0}, 12398 {2970183398, 0, 0}, 12399 {2998120306, 0, 0}, 12400 {3123244280, 0, 0}, 12401 {3187066832, 0, 0}, 12402 {3209399506, 0, 0}, 12403 {3230260738, 0, 0}, 12404 {3344189994, 0, 0}, 12405 {3345707173, 0, 0}, 12406 {3367298820, 0, 0}, 12407 {3397078357, 0, 0}, 12408 {3569736966, 0, 0}, 12409 {3816961131, 0, 0}, 12410 {4091670162, 0, 0}, 12411 {4237497041, 0, 0}, 12412 {1111111111111111111, 0, 0}, 12413 {0, 17, 44}, 12414 {0, 25, 20}, 12415 {0, 29, 34}, 12416 {0, 18, 2}, 12417 {0, 54, 49}, 12418 {0, 28, 7}, 12419 {0, 47, 52}, 12420 {0, 23, 56}, 12421 {0, 55, 26}, 12422 {0, 24, 61}, 12423 {0, 13, 62}, 12424 {0, 63, 45}, 12425 {0, 27, 15}, 12426 {0, 64, 8}, 12427 {0, 65, 59}, 12428 {0, 35, 22}, 12429 {0, 53, 38}, 12430 {0, 58, 51}, 12431 {0, 11, 66}, 12432 {0, 10, 3}, 12433 {0, 46, 67}, 12434 {0, 69, 68}, 12435 {0, 1, 50}, 12436 {0, 42, 19}, 12437 {0, 70, 6}, 12438 {0, 31, 71}, 12439 {0, 16, 72}, 12440 {0, 74, 73}, 12441 {0, 76, 75}, 12442 {0, 78, 77}, 12443 {0, 79, 4}, 12444 {0, 5, 37}, 12445 {0, 14, 36}, 12446 {0, 80, 57}, 12447 {0, 81, 48}, 12448 {0, 83, 82}, 12449 {0, 39, 84}, 12450 {0, 86, 85}, 12451 {0, 40, 87}, 12452 {0, 89, 88}, 12453 {0, 91, 90}, 12454 {0, 93, 92}, 12455 {0, 21, 9}, 12456 {0, 41, 32}, 12457 {0, 12, 43}, 12458 {0, 95, 94}, 12459 {0, 97, 96}, 12460 {0, 99, 98}, 12461 {0, 100, 33}, 12462 {0, 60, 101}, 12463 {0, 103, 102}, 12464 {0, 105, 104}, 12465 {0, 107, 106}, 12466 {0, 109, 108}, 12467 {0, 110, 30}, 12468 {0, 112, 111}, 12469 {0, 114, 113}, 12470 {0, 116, 115}, 12471 {0, 118, 117}, 12472 })); 12473 12474 codecs.emplace(std::pair<uint32_t, uint32_t>(SpvOpReturnValue, 0), std::move(codec)); 12475 } 12476 12477 return codecs; 12478} 12479 12480std::unordered_set<uint32_t> GetDescriptorsWithCodingScheme() { 12481 std::unordered_set<uint32_t> descriptors_with_coding_scheme = { 12482 3816961131, 12483 3569736966, 12484 3397078357, 12485 3344189994, 12486 3230260738, 12487 2941648648, 12488 2901034693, 12489 2728667725, 12490 2400601988, 12491 1795715718, 12492 1681941034, 12493 1487177499, 12494 1453447304, 12495 679061455, 12496 649208064, 12497 559246409, 12498 388686774, 12499 4228303141, 12500 4110915453, 12501 4010499223, 12502 3927466635, 12503 3927338499, 12504 3836179806, 12505 3742724777, 12506 3619404941, 12507 3224480461, 12508 3224258475, 12509 3200890815, 12510 3742946763, 12511 3193597927, 12512 2604242419, 12513 2577387676, 12514 2181030375, 12515 1376656865, 12516 1347339159, 12517 938517572, 12518 876867882, 12519 429023543, 12520 129748122, 12521 4106828015, 12522 4093615095, 12523 3826846522, 12524 3721902098, 12525 3244383472, 12526 2891091137, 12527 2872580757, 12528 2558133383, 12529 2477434291, 12530 1839669171, 12531 2059975069, 12532 1735295265, 12533 1364157225, 12534 1237148906, 12535 886972033, 12536 674428451, 12537 4148979936, 12538 3805423332, 12539 3732000233, 12540 3717942504, 12541 3714664910, 12542 3622349409, 12543 3272233597, 12544 3204986803, 12545 3088511797, 12546 1672607981, 12547 2416108131, 12548 2250055803, 12549 1796311149, 12550 1515695460, 12551 537830163, 12552 461476226, 12553 206688607, 12554 78001013, 12555 3866493821, 12556 3417584874, 12557 3188115516, 12558 2526961521, 12559 2443610186, 12560 2394332122, 12561 2374216296, 12562 2032069771, 12563 2011183308, 12564 1904846533, 12565 1641070431, 12566 1635292159, 12567 1372785527, 12568 1369818198, 12569 1204787336, 12570 1826456251, 12571 1164137269, 12572 1081642571, 12573 629859130, 12574 253329281, 12575 227103506, 12576 11698369, 12577 4219766939, 12578 4169226615, 12579 3997432565, 12580 3873587660, 12581 3513669836, 12582 3261122899, 12583 2129301998, 12584 1774052499, 12585 1266262705, 12586 4285201458, 12587 4245743275, 12588 3907920335, 12589 3837583704, 12590 3641833815, 12591 3307100165, 12592 1232501371, 12593 3262572726, 12594 3045470312, 12595 2879050471, 12596 2801333547, 12597 2506771164, 12598 2504802016, 12599 2500422644, 12600 2473053808, 12601 2457690657, 12602 2345566651, 12603 2306141594, 12604 2154320787, 12605 2055637638, 12606 1527762373, 12607 1486206763, 12608 1159301677, 12609 1105835505, 12610 968885186, 12611 885645401, 12612 849867303, 12613 815034111, 12614 497658126, 12615 386525753, 12616 179458548, 12617 102358168, 12618 4127308103, 12619 4073492988, 12620 1473411044, 12621 805072272, 12622 3724004880, 12623 3602108619, 12624 3585315836, 12625 3331487616, 12626 3261703164, 12627 3235459678, 12628 3085703811, 12629 3047649911, 12630 2357410109, 12631 2291766425, 12632 2071351379, 12633 1904128160, 12634 1738815671, 12635 1531216990, 12636 1465623797, 12637 1324351672, 12638 1220127364, 12639 1144188012, 12640 183103444, 12641 116093251, 12642 3900859293, 12643 3345856521, 12644 3691770462, 12645 3263841912, 12646 3198541202, 12647 3098991995, 12648 3682213068, 12649 2963184673, 12650 2864543087, 12651 2802261839, 12652 2790648021, 12653 900101778, 12654 2715304020, 12655 100979271, 12656 2709694527, 12657 2669086217, 12658 2531826164, 12659 2651956495, 12660 2552825357, 12661 2480811229, 12662 3138977758, 12663 2434845539, 12664 2066323109, 12665 1777640493, 12666 1758287856, 12667 1746004874, 12668 3945482286, 12669 3932146199, 12670 3129573055, 12671 3126269825, 12672 3716914380, 12673 985750227, 12674 1543672828, 12675 3189039115, 12676 1839499483, 12677 2696349144, 12678 1536350567, 12679 3971481069, 12680 3001444829, 12681 4028622909, 12682 215293834, 12683 213642219, 12684 153085016, 12685 1189681639, 12686 165054168, 12687 29517006, 12688 2614879967, 12689 27865391, 12690 1649426421, 12691 4239834800, 12692 1947620272, 12693 28782128, 12694 3207966516, 12695 3713290482, 12696 2042001863, 12697 2724166585, 12698 2356768706, 12699 1793544760, 12700 4092654294, 12701 2157103435, 12702 2087004702, 12703 2043873558, 12704 27177503, 12705 1033363654, 12706 4214779116, 12707 408465899, 12708 451264926, 12709 2377112119, 12710 1182296898, 12711 760554870, 12712 3566035349, 12713 2630220147, 12714 4192247221, 12715 1572088444, 12716 3538592682, 12717 769422756, 12718 1674803691, 12719 630964591, 12720 3458449569, 12721 565334834, 12722 137840602, 12723 3955205564, 12724 2009007457, 12725 1258105452, 12726 333554713, 12727 3923810593, 12728 126463145, 12729 3445109809, 12730 2966409025, 12731 2849215484, 12732 1910240213, 12733 3131890669, 12734 586244865, 12735 2320303498, 12736 3116932970, 12737 1317265040, 12738 2812498065, 12739 1466938734, 12740 4064212479, 12741 2613179511, 12742 2095546797, 12743 1671139745, 12744 2568512089, 12745 3695940604, 12746 1119069977, 12747 215027449, 12748 4123141705, 12749 3495546641, 12750 1978689945, 12751 3202324433, 12752 3783543823, 12753 2674422363, 12754 1352628475, 12755 1290956281, 12756 1894417995, 12757 740921498, 12758 4211577142, 12759 1033081852, 12760 3884846406, 12761 3253403867, 12762 2790624748, 12763 2538917932, 12764 2144962711, 12765 3323202731, 12766 4290024976, 12767 2564745684, 12768 2963744582, 12769 2443959748, 12770 354479447, 12771 750870327, 12772 1918481917, 12773 4032662899, 12774 3587381650, 12775 2414725163, 12776 1081611718, 12777 1625742020, 12778 2308565678, 12779 1871105284, 12780 2807907995, 12781 2121980967, 12782 1054641568, 12783 413918748, 12784 1917336504, 12785 1816558243, 12786 4130950286, 12787 1522979646, 12788 1669959736, 12789 1320550031, 12790 3104643263, 12791 3823959661, 12792 3525913657, 12793 3584683259, 12794 2918750759, 12795 3536390697, 12796 94303122, 12797 3296691317, 12798 801484894, 12799 2496463830, 12800 3266028549, 12801 3085157904, 12802 973908139, 12803 3787909072, 12804 3107413701, 12805 2378763734, 12806 920604853, 12807 2516325050, 12808 1838993983, 12809 1603937321, 12810 3183924418, 12811 1945006185, 12812 3982311384, 12813 2682510803, 12814 680388473, 12815 979993429, 12816 2405770322, 12817 461040879, 12818 2817579280, 12819 14113753, 12820 2894979602, 12821 168339452, 12822 951841533, 12823 4154758669, 12824 2637132451, 12825 3877583949, 12826 1949856502, 12827 922996215, 12828 3941049054, 12829 4182141402, 12830 2262220987, 12831 1957218950, 12832 2094550054, 12833 1846856260, 12834 3499234137, 12835 3086631065, 12836 3054834317, 12837 593829839, 12838 522971108, 12839 1162127370, 12840 4233562270, 12841 2780190687, 12842 1558345254, 12843 3716353056, 12844 3518630848, 12845 1158929937, 12846 2038205856, 12847 86116519, 12848 4185661467, 12849 975807626, 12850 3910458990, 12851 4124281183, 12852 3361419439, 12853 171334650, 12854 2590402790, 12855 2890570341, 12856 2303184249, 12857 385229009, 12858 1998433745, 12859 1717510093, 12860 4022124023, 12861 1429389803, 12862 945128292, 12863 904486530, 12864 3869890846, 12865 619875033, 12866 459968607, 12867 3743748793, 12868 359054425, 12869 1417363940, 12870 3653985133, 12871 255835594, 12872 1047011733, 12873 2763232252, 12874 1329499601, 12875 328661377, 12876 2162274327, 12877 2100532220, 12878 4255182614, 12879 4243119782, 12880 3982047273, 12881 4053789056, 12882 401211099, 12883 950731750, 12884 1319785741, 12885 32085358, 12886 3882634684, 12887 3117071189, 12888 3554463148, 12889 3570219049, 12890 3535289452, 12891 2314864456, 12892 3913885196, 12893 2763960513, 12894 1079999262, 12895 27130513, 12896 3033873113, 12897 2976581453, 12898 2598189097, 12899 595410904, 12900 1572834111, 12901 13319433, 12902 1084574846, 12903 2123388694, 12904 560078433, 12905 1679946323, 12906 3518703473, 12907 184634770, 12908 296981500, 12909 1646147798, 12910 455591063, 12911 1325348861, 12912 3224952074, 12913 1027242654, 12914 2281956980, 12915 4221373527, 12916 1289566249, 12917 4044928561, 12918 882718761, 12919 1510333659, 12920 836581417, 12921 1901166356, 12922 2276405827, 12923 4052965752, 12924 1155765244, 12925 503145996, 12926 251209228, 12927 495107308, 12928 3944781937, 12929 37459569, 12930 4248015868, 12931 4198082194, 12932 1302400505, 12933 4106658327, 12934 680016782, 12935 2319227476, 12936 2738307068, 12937 3929248764, 12938 2850246066, 12939 1824526196, 12940 3912967080, 12941 3044723416, 12942 3133016299, 12943 2517964682, 12944 3647586740, 12945 3653838348, 12946 929101967, 12947 3571454885, 12948 2806296851, 12949 977312655, 12950 646282397, 12951 3448018532, 12952 824323032, 12953 204234270, 12954 1579585816, 12955 3712763835, 12956 1212872174, 12957 3953984401, 12958 3168953855, 12959 2944827576, 12960 1582841441, 12961 2796901051, 12962 3323682385, 12963 1317058015, 12964 2557550659, 12965 1620634991, 12966 2986830770, 12967 2490492987, 12968 1817271123, 12969 40653745, 12970 1696076631, 12971 2466126792, 12972 4169878842, 12973 3251128023, 12974 2444465148, 12975 678695941, 12976 2481746922, 12977 2836440943, 12978 774727851, 12979 2246405597, 12980 4028028350, 12981 2524697596, 12982 1977038330, 12983 2817823941, 12984 2219733501, 12985 688216667, 12986 3634598908, 12987 3232633974, 12988 2724625059, 12989 3269075805, 12990 3732640764, 12991 2263349224, 12992 1680746207, 12993 2414984922, 12994 2507457870, 12995 50998433, 12996 3092528578, 12997 3712946115, 12998 1543935193, 12999 807276090, 13000 1221183390, 13001 172029722, 13002 2122275289, 13003 3990925720, 13004 2261697609, 13005 2736881867, 13006 295017943, 13007 3278176820, 13008 3748965853, 13009 3174324790, 13010 1103903216, 13011 3184177968, 13012 1113409935, 13013 2299842241, 13014 2162986400, 13015 1538342947, 13016 4056442905, 13017 1631434666, 13018 205885885, 13019 1594733696, 13020 1955104493, 13021 1022309772, 13022 3820814597, 13023 993150979, 13024 1209418480, 13025 1784441183, 13026 3958731802, 13027 2250225826, 13028 3065160070, 13029 2024071551, 13030 107497541, 13031 628544021, 13032 2732195517, 13033 4241486415, 13034 3969279737, 13035 870594305, 13036 2916400082, 13037 1193734351, 13038 3202349435, 13039 3831290364, 13040 3282979782, 13041 3928764629, 13042 1308462133, 13043 3216471040, 13044 2433519008, 13045 2022961611, 13046 3604842236, 13047 3374978006, 13048 2855895374, 13049 3496407048, 13050 1482251215, 13051 3994511488, 13052 2997832431, 13053 1132589448, 13054 1348149915, 13055 2092468906, 13056 2451531615, 13057 779021139, 13058 3730093054, 13059 3413713311, 13060 1022915255, 13061 2204920111, 13062 2660843182, 13063 1080545747, 13064 1642805350, 13065 1766422419, 13066 4141567741, 13067 1558990974, 13068 4185590212, 13069 2841468319, 13070 701281393, 13071 3325419312, 13072 451957774, 13073 357505993, 13074 1156369516, 13075 3187387500, 13076 2259467579, 13077 2678954464, 13078 3154597438, 13079 543558236, 13080 2359973133, 13081 1990431740, 13082 2705477184, 13083 1041368449, 13084 3122368657, 13085 3181646225, 13086 1094423548, 13087 2955375511, 13088 2888125966, 13089 153013225, 13090 2936040203, 13091 1758530522, 13092 573901046, 13093 3030911670, 13094 1675922848, 13095 4235213885, 13096 4091916710, 13097 2633682514, 13098 4254584852, 13099 2328748202, 13100 3357301402, 13101 3877813395, 13102 2004567202, 13103 2496297824, 13104 3334207724, 13105 1600149091, 13106 293528591, 13107 1782996825, 13108 3757282300, 13109 1107206446, 13110 1092948665, 13111 1797960910, 13112 1206726575, 13113 1496351055, 13114 3021406120, 13115 99347751, 13116 3797204453, 13117 1468919488, 13118 797415788, 13119 1314843976, 13120 2934934694, 13121 490769168, 13122 1474506522, 13123 3811268385, 13124 864295921, 13125 3081676220, 13126 151810803, 13127 2588618056, 13128 2998120306, 13129 416853049, 13130 3495967422, 13131 3233393284, 13132 508007510, 13133 759277550, 13134 1971252067, 13135 869050696, 13136 810488476, 13137 745556697, 13138 789872778, 13139 3362723943, 13140 1617826947, 13141 3260309823, 13142 2197904616, 13143 1199157863, 13144 1643868273, 13145 2430404313, 13146 321630747, 13147 2503194620, 13148 3194725903, 13149 2881225774, 13150 3997952447, 13151 1389644742, 13152 2713718873, 13153 3585511591, 13154 1684282922, 13155 3366848728, 13156 284226441, 13157 1541020250, 13158 4018237905, 13159 1369578001, 13160 2424848261, 13161 2654325647, 13162 1626224034, 13163 1081536219, 13164 309040124, 13165 123060826, 13166 3997038726, 13167 1670691893, 13168 1543280290, 13169 443347828, 13170 1776629361, 13171 3118548424, 13172 478440524, 13173 679771963, 13174 3729929345, 13175 4244789645, 13176 2366506734, 13177 2838165089, 13178 1619778288, 13179 1313182965, 13180 3240680626, 13181 1323407757, 13182 883854656, 13183 2194691858, 13184 15502752, 13185 3760372982, 13186 1366337101, 13187 3656163446, 13188 295018543, 13189 825595257, 13190 57149555, 13191 2563789125, 13192 2353194283, 13193 2636942752, 13194 4026740269, 13195 3570411982, 13196 123108003, 13197 3782362128, 13198 1280126114, 13199 1410849099, 13200 4228502127, 13201 3609540589, 13202 3365041621, 13203 269823086, 13204 348988933, 13205 1636389511, 13206 2936586309, 13207 2761603302, 13208 2318200267, 13209 449954059, 13210 2895413148, 13211 1755165354, 13212 4274214049, 13213 778500192, 13214 3345707173, 13215 3732136051, 13216 721450866, 13217 1600392975, 13218 2466255445, 13219 4050155669, 13220 3541895912, 13221 1139547465, 13222 394654115, 13223 1380991098, 13224 3516240523, 13225 2234361374, 13226 1094817798, 13227 744817486, 13228 3564402361, 13229 1452222566, 13230 1851510470, 13231 3619787319, 13232 4265894873, 13233 216945449, 13234 3061690214, 13235 2910557180, 13236 255227811, 13237 4167600590, 13238 1587209598, 13239 3157581152, 13240 3184381405, 13241 2572638469, 13242 615748604, 13243 2532518896, 13244 1774874546, 13245 599185303, 13246 1561718045, 13247 1742737136, 13248 1674464100, 13249 3136865519, 13250 706016261, 13251 2793529873, 13252 3504981554, 13253 4155122613, 13254 2080953106, 13255 1104362365, 13256 2879917501, 13257 850497536, 13258 1392080469, 13259 1287937401, 13260 718877177, 13261 1917966999, 13262 1822823090, 13263 3701632935, 13264 3591222197, 13265 2817335337, 13266 1941148668, 13267 3110479131, 13268 3289213933, 13269 583624926, 13270 468372467, 13271 1633850097, 13272 2110223508, 13273 898191441, 13274 112745085, 13275 4018820793, 13276 3085119011, 13277 2919626325, 13278 3094857332, 13279 2348201466, 13280 2192810893, 13281 4163160985, 13282 1269075360, 13283 3952316364, 13284 2881886868, 13285 439764402, 13286 1584774136, 13287 169674806, 13288 3759072440, 13289 102542696, 13290 2996180816, 13291 804899022, 13292 1015552308, 13293 963902061, 13294 3504158761, 13295 2002490364, 13296 2806716850, 13297 265778447, 13298 4083122425, 13299 181902171, 13300 1238120570, 13301 75986790, 13302 1265796414, 13303 899570100, 13304 2988365258, 13305 3655201337, 13306 3654061472, 13307 3061856840, 13308 1077859090, 13309 615341051, 13310 3678875745, 13311 3349230696, 13312 3647606635, 13313 2549309392, 13314 1508570930, 13315 1766401548, 13316 1448448666, 13317 1499923635, 13318 2882994691, 13319 3674863070, 13320 3056042030, 13321 4240893633, 13322 1395113939, 13323 2964622752, 13324 1951208733, 13325 3536941067, 13326 4176581069, 13327 1203545131, 13328 3092754101, 13329 246375791, 13330 2736026107, 13331 1069781886, 13332 3687777340, 13333 1564342316, 13334 535067202, 13335 1395923345, 13336 3240977890, 13337 1447712361, 13338 2602027658, 13339 718301639, 13340 3123244280, 13341 1032593647, 13342 2840366496, 13343 2680819379, 13344 3839389658, 13345 277023757, 13346 1172110445, 13347 1755648697, 13348 2472176885, 13349 223800276, 13350 625975427, 13351 976111724, 13352 4145966869, 13353 2789375411, 13354 618087261, 13355 249378857, 13356 4058280485, 13357 827698488, 13358 1558001705, 13359 3561482820, 13360 2562485583, 13361 4243138030, 13362 615982737, 13363 1220643281, 13364 150685616, 13365 3091876332, 13366 1040775722, 13367 669982125, 13368 4116080964, 13369 3582002820, 13370 910398460, 13371 1036475267, 13372 3800912395, 13373 146392076, 13374 1686512349, 13375 2326636627, 13376 2839816704, 13377 3502816184, 13378 226836633, 13379 3953733490, 13380 257136089, 13381 819503463, 13382 2863084840, 13383 1949759310, 13384 210754155, 13385 1367301635, 13386 3822983876, 13387 4273793488, 13388 3635397748, 13389 3930494584, 13390 3127921440, 13391 3167253437, 13392 3868239231, 13393 1859128680, 13394 3480031018, 13395 3810805277, 13396 2677252364, 13397 156014509, 13398 3627739127, 13399 2321729979, 13400 1146476634, 13401 4039938779, 13402 1964254745, 13403 2055836767, 13404 119981689, 13405 2629265310, 13406 2448331885, 13407 3737376990, 13408 144116905, 13409 2272221101, 13410 2197874825, 13411 1277245109, 13412 2503770904, 13413 360730278, 13414 3489360962, 13415 1166917451, 13416 707478563, 13417 4155586396, 13418 162255877, 13419 347505241, 13420 4215670524, 13421 3187066832, 13422 2399809085, 13423 2754074729, 13424 4060703604, 13425 628331516, 13426 1304296041, 13427 616435646, 13428 4080527786, 13429 1443829854, 13430 2512398201, 13431 708736129, 13432 13107491, 13433 3794803132, 13434 2049792025, 13435 2455417440, 13436 3367313400, 13437 3357250579, 13438 3694383800, 13439 2339901602, 13440 3242843022, 13441 2282454607, 13442 1243764146, 13443 835458563, 13444 1297706389, 13445 464259778, 13446 1766994680, 13447 1294403159, 13448 2568098594, 13449 3107165180, 13450 4040340620, 13451 3352361837, 13452 1031290113, 13453 2903897222, 13454 1677700667, 13455 3160388974, 13456 107544081, 13457 3044188332, 13458 2285081596, 13459 2835131395, 13460 2984459037, 13461 4174489262, 13462 1236389532, 13463 2938237924, 13464 321459212, 13465 3407526215, 13466 300939750, 13467 3441531391, 13468 2909957084, 13469 3192069648, 13470 1849065716, 13471 2524531022, 13472 505940164, 13473 4121643374, 13474 3774892253, 13475 3197739982, 13476 2161102232, 13477 2715370488, 13478 1992893964, 13479 1781864804, 13480 587888644, 13481 1039111164, 13482 4237497041, 13483 451382997, 13484 969500141, 13485 1415510495, 13486 3743398113, 13487 3027538652, 13488 2525173102, 13489 1708264968, 13490 3366040354, 13491 1100599986, 13492 188347929, 13493 2597020383, 13494 2705434194, 13495 2593884753, 13496 3472123498, 13497 2975894973, 13498 3152745753, 13499 1154919607, 13500 1930923350, 13501 3287039847, 13502 1372881231, 13503 2280400314, 13504 3369343584, 13505 2351620600, 13506 2645135839, 13507 2752766693, 13508 1471851763, 13509 1989520052, 13510 1141965917, 13511 1503477720, 13512 653708953, 13513 1765126703, 13514 2432827426, 13515 95470391, 13516 2567901801, 13517 2589449658, 13518 4218799564, 13519 3249265647, 13520 3673811979, 13521 210116709, 13522 1593584949, 13523 1791352211, 13524 3457985288, 13525 3345288309, 13526 531559080, 13527 2491124112, 13528 3410158390, 13529 4224872590, 13530 3705139860, 13531 162608772, 13532 4258229445, 13533 925559698, 13534 3928842969, 13535 4253051659, 13536 3633746133, 13537 3867307935, 13538 3560665067, 13539 798915737, 13540 2945369269, 13541 2677264274, 13542 2278571792, 13543 177111659, 13544 85880059, 13545 1297165140, 13546 1630583316, 13547 2232491275, 13548 1848784182, 13549 2487708241, 13550 626480004, 13551 3427283542, 13552 2108571893, 13553 304448521, 13554 3332104493, 13555 2244470522, 13556 436416061, 13557 221900294, 13558 1502470404, 13559 3552593177, 13560 440421571, 13561 450406196, 13562 503094540, 13563 3836822275, 13564 2708915136, 13565 3750617468, 13566 1119744229, 13567 3614752756, 13568 921246433, 13569 2285438321, 13570 626892406, 13571 2362972044, 13572 72782198, 13573 2929019254, 13574 2795773560, 13575 907126242, 13576 155458798, 13577 2798552666, 13578 1404739463, 13579 4285652249, 13580 1998444837, 13581 908777857, 13582 872544165, 13583 910429472, 13584 135486769, 13585 3457269042, 13586 426360862, 13587 1725011064, 13588 296836635, 13589 1322549027, 13590 2044728014, 13591 1530183840, 13592 529742207, 13593 4272200782, 13594 1341516288, 13595 2608484640, 13596 41739659, 13597 3260579369, 13598 2745872368, 13599 2894051250, 13600 862784766, 13601 3077271274, 13602 3094180193, 13603 3619626927, 13604 3745223676, 13605 2976066508, 13606 2854085372, 13607 2959147533, 13608 3266548732, 13609 1776526161, 13610 3712296962, 13611 1955871800, 13612 2580096524, 13613 2507709226, 13614 3564865233, 13615 948086521, 13616 1548254487, 13617 142465290, 13618 1472185378, 13619 1459457331, 13620 2274226560, 13621 3153451899, 13622 492958971, 13623 3563213618, 13624 1285705317, 13625 410274915, 13626 3710645347, 13627 1309728002, 13628 2119793999, 13629 1343794461, 13630 4024173916, 13631 2383939514, 13632 955476870, 13633 2698156268, 13634 35240468, 13635 2655147757, 13636 3764205609, 13637 3802564010, 13638 170690025, 13639 2311941439, 13640 3181546731, 13641 3866587616, 13642 3648138580, 13643 93914936, 13644 170378107, 13645 2120623674, 13646 1064945649, 13647 1618754372, 13648 244668133, 13649 247698428, 13650 3669223677, 13651 470277359, 13652 1781765116, 13653 1691572958, 13654 1373856501, 13655 2668769415, 13656 1087394637, 13657 1009983433, 13658 2180701723, 13659 4008405264, 13660 2831059514, 13661 2645120714, 13662 2649103430, 13663 2664825925, 13664 790502615, 13665 1739837626, 13666 2293247016, 13667 1784648440, 13668 1887808856, 13669 1788504755, 13670 112452386, 13671 1979978194, 13672 3462674048, 13673 2170273742, 13674 538168945, 13675 753954113, 13676 374731234, 13677 3715846592, 13678 1962971231, 13679 1860649552, 13680 1378082995, 13681 665789406, 13682 1717555224, 13683 139011596, 13684 1375043498, 13685 1618544981, 13686 1889460471, 13687 2262321736, 13688 1788301425, 13689 1652168174, 13690 2668680621, 13691 2636946065, 13692 2856623532, 13693 2759951687, 13694 959681532, 13695 3209399506, 13696 3055195668, 13697 1227221002, 13698 508217552, 13699 3289969989, 13700 243178923, 13701 2956189845, 13702 3075866530, 13703 2274779301, 13704 3940720663, 13705 3998230222, 13706 1178317551, 13707 4016096296, 13708 1545450160, 13709 2842919847, 13710 314809953, 13711 2952850186, 13712 3747079365, 13713 4147239510, 13714 169135842, 13715 1332643570, 13716 2994529201, 13717 973521782, 13718 1584369690, 13719 1043738701, 13720 2851900832, 13721 290391815, 13722 283209196, 13723 2468230023, 13724 1164221089, 13725 1991787192, 13726 3358097187, 13727 51041423, 13728 52882140, 13729 2339018837, 13730 2053214130, 13731 3757479030, 13732 158160339, 13733 853200279, 13734 1986584654, 13735 438318340, 13736 827246872, 13737 3299488628, 13738 2924263085, 13739 3472029049, 13740 2736844435, 13741 677668732, 13742 604894932, 13743 1158021131, 13744 1400019344, 13745 2268204687, 13746 1450415100, 13747 3854557817, 13748 1543646433, 13749 1278448636, 13750 342615870, 13751 1554194368, 13752 3080024605, 13753 3423702268, 13754 1675764636, 13755 1622381564, 13756 2078849875, 13757 2113115132, 13758 1380160211, 13759 3132876285, 13760 125015036, 13761 269576093, 13762 94145952, 13763 2777172031, 13764 2683080096, 13765 3812456892, 13766 488500848, 13767 3270430997, 13768 2895151306, 13769 116376005, 13770 400248103, 13771 406044930, 13772 1616846013, 13773 10142671, 13774 763027711, 13775 225200779, 13776 1062250709, 13777 2013867381, 13778 2113506324, 13779 1692932387, 13780 1827244161, 13781 3124618210, 13782 2096472894, 13783 2924146124, 13784 2128251367, 13785 2433358586, 13786 1939359710, 13787 2593325766, 13788 2879917723, 13789 694743357, 13790 2902069960, 13791 220008971, 13792 3090408469, 13793 917019124, 13794 1705716306, 13795 3263901372, 13796 3347863687, 13797 3447882276, 13798 1661163736, 13799 3617689692, 13800 3928555688, 13801 1057578789, 13802 435256475, 13803 4101009465, 13804 1941403425, 13805 198967948, 13806 3733675151, 13807 2043684541, 13808 3517169445, 13809 2226776400, 13810 2853403709, 13811 529383565, 13812 2807448986, 13813 4234287173, 13814 1019457583, 13815 1022544883, 13816 2493146691, 13817 1054461787, 13818 1008886329, 13819 1136775085, 13820 1191015885, 13821 1196280518, 13822 1979847999, 13823 50385656, 13824 1918742169, 13825 3999472204, 13826 3697687030, 13827 2220475432, 13828 2358141757, 13829 2360004627, 13830 4245257809, 13831 236660303, 13832 429277936, 13833 342159236, 13834 2622612602, 13835 371428004, 13836 373079619, 13837 643418617, 13838 2095027856, 13839 1071164424, 13840 1136911283, 13841 1548491889, 13842 2169307971, 13843 375530199, 13844 1510422521, 13845 3151638847, 13846 1698730948, 13847 2231688008, 13848 2604576561, 13849 2771938750, 13850 2996594997, 13851 289648234, 13852 348584153, 13853 2748350697, 13854 2926633629, 13855 2123683379, 13856 369686787, 13857 742917749, 13858 3538158875, 13859 2937761472, 13860 1545298048, 13861 1321616112, 13862 2855506940, 13863 900522183, 13864 1578775276, 13865 2217833278, 13866 2012838864, 13867 3753486980, 13868 2839765116, 13869 2464905186, 13870 2621255555, 13871 1305703280, 13872 861753115, 13873 3319278167, 13874 3063300848, 13875 149720480, 13876 1082941229, 13877 3337532056, 13878 2248357849, 13879 3675926744, 13880 1508550646, 13881 2289803479, 13882 3456899824, 13883 3931641900, 13884 3970432934, 13885 3419674548, 13886 1093210099, 13887 456043370, 13888 848380423, 13889 1287304304, 13890 1526654696, 13891 2055664760, 13892 1373166395, 13893 4291477370, 13894 2195550588, 13895 2847102741, 13896 3399062057, 13897 1641565587, 13898 2888753905, 13899 3579593979, 13900 3653059026, 13901 3757851979, 13902 2922615804, 13903 2919796598, 13904 1553476262, 13905 2566666743, 13906 3759503594, 13907 550831114, 13908 3761155209, 13909 3762806824, 13910 3902853271, 13911 4140081844, 13912 14244860, 13913 3847846774, 13914 150820676, 13915 1278818058, 13916 850592577, 13917 1206571206, 13918 1734446471, 13919 2117320444, 13920 1382106590, 13921 2436009347, 13922 2118972059, 13923 2951272396, 13924 36096192, 13925 117998987, 13926 473485679, 13927 2244928358, 13928 476788909, 13929 3489269251, 13930 610429940, 13931 480092139, 13932 481743754, 13933 871966503, 13934 918189168, 13935 601656217, 13936 933769938, 13937 939671928, 13938 1799299383, 13939 3312467582, 13940 1149665466, 13941 3006548167, 13942 1310740861, 13943 3602693817, 13944 1461645203, 13945 3367691969, 13946 1800404122, 13947 3486057732, 13948 1862284649, 13949 2076833303, 13950 2213411495, 13951 2805256437, 13952 3927915220, 13953 3000904950, 13954 2094647776, 13955 3333131702, 13956 1315613425, 13957 3752211294, 13958 603915804, 13959 3505028338, 13960 663258455, 13961 3322500634, 13962 1612225949, 13963 3606320646, 13964 157110413, 13965 1352397672, 13966 3861006967, 13967 452208841, 13968 18776483, 13969 1058429216, 13970 37009196, 13971 564884461, 13972 876864198, 13973 2952260510, 13974 2860348412, 13975 928261291, 13976 1164724902, 13977 2775815164, 13978 1332774287, 13979 780957373, 13980 939415664, 13981 1513770932, 13982 788046331, 13983 1692600167, 13984 4069810315, 13985 673708384, 13986 4024252457, 13987 1932614728, 13988 2148510256, 13989 3131224670, 13990 2388524817, 13991 2460489993, 13992 2676385521, 13993 826214242, 13994 3692647551, 13995 3063508455, 13996 3071766530, 13997 2063832060, 13998 1525861001, 13999 3073418145, 14000 837715723, 14001 3075069760, 14002 3076721375, 14003 3078372990, 14004 983243705, 14005 3083327835, 14006 171307615, 14007 1824016656, 14008 3084979450, 14009 1310404265, 14010 1775308984, 14011 3114708520, 14012 3116360135, 14013 3121314980, 14014 3134527900, 14015 1691646294, 14016 2804281092, 14017 97231530, 14018 3136179515, 14019 3204260786, 14020 3276225962, 14021 1220749418, 14022 3588205699, 14023 3874089391, 14024 4044115788, 14025 3268751013, 14026 743407979, 14027 166253838, 14028 1356063462, 14029 1368383673, 14030 2279700640, 14031 2130747644, 14032 3945795573, 14033 2780898906, 14034 3635542517, 14035 425022309, 14036 517919178, 14037 4061558677, 14038 2190437442, 14039 543621065, 14040 753756604, 14041 2500819054, 14042 1004589179, 14043 1165671422, 14044 30433743, 14045 3444275347, 14046 1335363438, 14047 1913735398, 14048 1265998516, 14049 3829325073, 14050 3662767579, 14051 463084678, 14052 1351676723, 14053 1391866096, 14054 3398925952, 14055 1631216488, 14056 815757910, 14057 1915438939, 14058 2427834344, 14059 1445161581, 14060 1890300748, 14061 2864863800, 14062 1961990747, 14063 575205902, 14064 2037710159, 14065 2037814253, 14066 617312262, 14067 3732916270, 14068 783918780, 14069 2257843797, 14070 2096388952, 14071 2338272340, 14072 1434223270, 14073 578132535, 14074 1980341560, 14075 1002144380, 14076 3244716568, 14077 4258414038, 14078 3271748023, 14079 3304438238, 14080 3717523241, 14081 3370185097, 14082 3435931956, 14083 1957265068, 14084 3602522282, 14085 2547657777, 14086 439998433, 14087 3838648480, 14088 3913593633, 14089 3989799199, 14090 906176560, 14091 1894133125, 14092 4046301857, 14093 4242327928, 14094 630592085, 14095 2693892518, 14096 4292991777, 14097 545678922, 14098 125792961, 14099 3015046341, 14100 132755933, 14101 2615111110, 14102 1570165302, 14103 1440646342, 14104 436066778, 14105 565233904, 14106 600906020, 14107 602222721, 14108 3951925872, 14109 1496901698, 14110 1522901980, 14111 2785441472, 14112 3041450802, 14113 1637661947, 14114 2127660080, 14115 3487022798, 14116 2269114589, 14117 1314834580, 14118 2315690100, 14119 3817149113, 14120 4091670162, 14121 1431749301, 14122 1858116930, 14123 2213946343, 14124 2225172640, 14125 2263866576, 14126 2727022058, 14127 2752967311, 14128 2864705739, 14129 3052439312, 14130 3510257966, 14131 2614053317, 14132 3297860332, 14133 3670298840, 14134 3732709413, 14135 3788324110, 14136 4098876453, 14137 4290374884, 14138 1623013158, 14139 3381478137, 14140 17185761, 14141 3931288033, 14142 2890638791, 14143 330388453, 14144 346929928, 14145 2022347217, 14146 4083347580, 14147 533021259, 14148 564302770, 14149 1917602962, 14150 680157484, 14151 3264086791, 14152 3727034815, 14153 798549062, 14154 3068463300, 14155 669812542, 14156 1965902997, 14157 2311072371, 14158 3079287749, 14159 2542834724, 14160 1587730355, 14161 2558655180, 14162 1838763297, 14163 4172568578, 14164 2160380860, 14165 2950446516, 14166 1830851200, 14167 3214537066, 14168 3234673086, 14169 3652695478, 14170 3103302036, 14171 3465954368, 14172 4180570743, 14173 3534518722, 14174 371186900, 14175 4091394002, 14176 1013756921, 14177 443558693, 14178 591140762, 14179 656610661, 14180 2064733527, 14181 3808408202, 14182 983299427, 14183 4217306348, 14184 1164218401, 14185 2036361232, 14186 3237903670, 14187 2970183398, 14188 2293637521, 14189 135920445, 14190 1596005536, 14191 868652905, 14192 1191735827, 14193 3987079331, 14194 1365842164, 14195 1508074873, 14196 1642818143, 14197 3436143898, 14198 4105051793, 14199 1863199739, 14200 3425841570, 14201 1070791291, 14202 2135340676, 14203 2639720559, 14204 3364388739, 14205 3797761273, 14206 2092100514, 14207 2098706974, 14208 2329992200, 14209 414444763, 14210 2759250216, 14211 2913136690, 14212 3012980338, 14213 3327770644, 14214 4128942283, 14215 3362344229, 14216 161668409, 14217 3401762422, 14218 2852854788, 14219 4237092412, 14220 1245448751, 14221 3702405475, 14222 918849409, 14223 3829682756, 14224 1612361408, 14225 255302575, 14226 414620710, 14227 386293029, 14228 618761615, 14229 686024761, 14230 744062262, 14231 1502028603, 14232 1543798545, 14233 1641415225, 14234 1548121999, 14235 2257971049, 14236 2124837447, 14237 878733439, 14238 2340670452, 14239 2674090849, 14240 3118011750, 14241 2816338013, 14242 178571546, 14243 2841008029, 14244 3249261197, 14245 370232173, 14246 4092487128, 14247 3787567939, 14248 3898287302, 14249 4142016703, 14250 4285779501, 14251 30663912, 14252 151672195, 14253 180913835, 14254 3534235309, 14255 34183582, 14256 4083161638, 14257 651464351, 14258 1410311776, 14259 371621315, 14260 421602934, 14261 458937500, 14262 2710583246, 14263 712168842, 14264 730943059, 14265 1519723107, 14266 875212982, 14267 1247793383, 14268 4217322139, 14269 989813600, 14270 1057606514, 14271 3764662384, 14272 1443547269, 14273 3066811685, 14274 3598957382, 14275 1791427568, 14276 1171541710, 14277 3930727258, 14278 1473799048, 14279 1296054774, 14280 1747355813, 14281 765238787, 14282 2023008475, 14283 1190147516, 14284 2344328209, 14285 2495155989, 14286 2577859137, 14287 2857814560, 14288 3127329373, 14289 3296722158, 14290 2773229577, 14291 3376009661, 14292 3450001968, 14293 920941800, 14294 3526837441, 14295 3858973601, 14296 1702168830, 14297 4088613871, 14298 1464587427, 14299 223310468, 14300 388034151, 14301 2346547796, 14302 1663234329, 14303 1750829822, 14304 1967643923, 14305 2881302403, 14306 2278706468, 14307 2326990117, 14308 2511346984, 14309 3088785099, 14310 2616085763, 14311 3027500544, 14312 3417583519, 14313 4178218543, 14314 1412908157, 14315 797934924, 14316 3533637837, 14317 1449907751, 14318 3362830643, 14319 1451831482, 14320 2637935122, 14321 3070114915, 14322 3023287679, 14323 551924251, 14324 1669930486, 14325 46736908, 14326 2870852215, 14327 1120149824, 14328 2923708820, 14329 3887377256, 14330 3464197236, 14331 4241374559, 14332 527665290, 14333 996663016, 14334 885020215, 14335 1763758554, 14336 3059119137, 14337 2555315060, 14338 2762094724, 14339 2530899578, 14340 2770161927, 14341 2262137600, 14342 3547456240, 14343 858902117, 14344 1140367371, 14345 1215030156, 14346 443490822, 14347 294390719, 14348 3032677281, 14349 1917451875, 14350 4184019303, 14351 3277199633, 14352 1271484400, 14353 1297294717, 14354 3560552546, 14355 171494987, 14356 195244192, 14357 3002890475, 14358 1811839150, 14359 265392489, 14360 1461398554, 14361 3205759417, 14362 333855951, 14363 529068443, 14364 660038281, 14365 557400685, 14366 663341511, 14367 930804377, 14368 1922045399, 14369 716890919, 14370 162167595, 14371 1654776395, 14372 1779143013, 14373 1123617794, 14374 2984325996, 14375 1162789888, 14376 1318479490, 14377 1235468610, 14378 3561562003, 14379 1486207619, 14380 1551372768, 14381 1850331254, 14382 3255947500, 14383 1037370721, 14384 1989327599, 14385 2137526937, 14386 835638766, 14387 2269130237, 14388 1962162282, 14389 3244209297, 14390 2330636993, 14391 3095831808, 14392 1396344138, 14393 2603020391, 14394 3434076295, 14395 3280064277, 14396 2656211099, 14397 3335250889, 14398 2550961007, 14399 3510242586, 14400 3536471583, 14401 3950980241, 14402 4033586023, 14403 117250846, 14404 3088282680, 14405 4041974454, 14406 4244540017, 14407 1167160774, 14408 899320334, 14409 1200870684, 14410 1752686878, 14411 1906988301, 14412 3804101227, 14413 2575525651, 14414 2919787747, 14415 3508792859, 14416 3548535223, 14417 3783756895, 14418 3797961332, 14419 4043078107, 14420 3115038057, 14421 2313593054, 14422 49456560, 14423 592180731, 14424 1051471757, 14425 1097775533, 14426 706238670, 14427 877895868, 14428 1173092699, 14429 1461897718, 14430 1767704813, 14431 1770165905, 14432 1923453688, 14433 2212501241, 14434 2305269460, 14435 2488410748, 14436 3782099915, 14437 2844616706, 14438 3383007207, 14439 3392887901, 14440 504514034, 14441 3765247327, 14442 1000070091, 14443 3727494858, 14444 3657635382, 14445 3839047923, 14446 3886529747, 14447 4069720347, 14448 4164704452, 14449 342197850, 14450 3540244297, 14451 2513230733, 14452 4117704995, 14453 3367298820, 14454 2680283743, 14455 3119663365, 14456 3697738938, 14457 545363837, 14458 163402553, 14459 5908395, 14460 129135650, 14461 2289183712, 14462 200922300, 14463 761731755, 14464 894529125, 14465 1086964761, 14466 1168927492, 14467 2100052708, 14468 2438466459, 14469 3390051757, 14470 2498042266, 14471 2557754096, 14472 2600961503, 14473 487719832, 14474 703543228, 14475 2726532092, 14476 4199470013, 14477 3142155593, 14478 2550501832, 14479 4076840151, 14480 200553094, 14481 380957745, 14482 572905105, 14483 462664429, 14484 1466804584, 14485 330249537, 14486 2605012269, 14487 491456522, 14488 4126287524, 14489 502863753, 14490 952536201, 14491 3510682541, 14492 1137442027, 14493 1665981878, 14494 1761469971, 14495 3085467405, 14496 2045285083, 14497 796985462, 14498 3433956341, 14499 2217966239, 14500 2183547611, 14501 2279273489, 14502 1916983087, 14503 2348676810, 14504 2403632109, 14505 2409539315, 14506 545986953, 14507 176166202, 14508 2477389837, 14509 2573160348, 14510 2796513469, 14511 3972309363, 14512 528662843, 14513 1038982109, 14514 1125913837, 14515 1318081294, 14516 1417425499, 14517 }; 14518 return descriptors_with_coding_scheme; 14519} 14520