1 // -*- mode: rust; -*- 2 // 3 // This file is part of curve25519-dalek. 4 // Copyright (c) 2016-2019 Isis Lovecruft, Henry de Valence 5 // See LICENSE for licensing information. 6 // 7 // Authors: 8 // - Isis Agora Lovecruft <isis@patternsinthevoid.net> 9 // - Henry de Valence <hdevalence@hdevalence.ca> 10 11 //! This module contains constants used by the AVX2 backend. 12 13 use packed_simd::u32x8; 14 15 use backend::vector::avx2::edwards::{CachedPoint, ExtendedPoint}; 16 use backend::vector::avx2::field::FieldElement2625x4; 17 use window::NafLookupTable8; 18 19 /// The identity element as an `ExtendedPoint`. 20 pub(crate) static EXTENDEDPOINT_IDENTITY: ExtendedPoint = ExtendedPoint(FieldElement2625x4([ 21 u32x8::new(0, 1, 0, 0, 1, 0, 0, 0), 22 u32x8::splat(0), 23 u32x8::splat(0), 24 u32x8::splat(0), 25 u32x8::splat(0), 26 ])); 27 28 /// The identity element as a `CachedPoint`. 29 pub(crate) static CACHEDPOINT_IDENTITY: CachedPoint = CachedPoint(FieldElement2625x4([ 30 u32x8::new(121647, 121666, 0, 0, 243332, 67108845, 0, 33554431), 31 u32x8::new(67108864, 0, 33554431, 0, 0, 67108863, 0, 33554431), 32 u32x8::new(67108863, 0, 33554431, 0, 0, 67108863, 0, 33554431), 33 u32x8::new(67108863, 0, 33554431, 0, 0, 67108863, 0, 33554431), 34 u32x8::new(67108863, 0, 33554431, 0, 0, 67108863, 0, 33554431), 35 ])); 36 37 /// The low limbs of (2p, 2p, 2p, 2p), so that 38 /// ```ascii,no_run 39 /// (2p, 2p, 2p, 2p) = [P_TIMES_2_LO, P_TIMES_2_HI, P_TIMES_2_HI, P_TIMES_2_HI, P_TIMES_2_HI] 40 /// ``` 41 pub(crate) static P_TIMES_2_LO: u32x8 = u32x8::new( 42 67108845 << 1, 43 67108845 << 1, 44 33554431 << 1, 45 33554431 << 1, 46 67108845 << 1, 47 67108845 << 1, 48 33554431 << 1, 49 33554431 << 1, 50 ); 51 52 /// The high limbs of (2p, 2p, 2p, 2p), so that 53 /// ```ascii,no_run 54 /// (2p, 2p, 2p, 2p) = [P_TIMES_2_LO, P_TIMES_2_HI, P_TIMES_2_HI, P_TIMES_2_HI, P_TIMES_2_HI] 55 /// ``` 56 pub(crate) static P_TIMES_2_HI: u32x8 = u32x8::new( 57 67108863 << 1, 58 67108863 << 1, 59 33554431 << 1, 60 33554431 << 1, 61 67108863 << 1, 62 67108863 << 1, 63 33554431 << 1, 64 33554431 << 1, 65 ); 66 67 /// The low limbs of (16p, 16p, 16p, 16p), so that 68 /// ```ascii,no_run 69 /// (16p, 16p, 16p, 16p) = [P_TIMES_16_LO, P_TIMES_16_HI, P_TIMES_16_HI, P_TIMES_16_HI, P_TIMES_16_HI] 70 /// ``` 71 pub(crate) static P_TIMES_16_LO: u32x8 = u32x8::new( 72 67108845 << 4, 73 67108845 << 4, 74 33554431 << 4, 75 33554431 << 4, 76 67108845 << 4, 77 67108845 << 4, 78 33554431 << 4, 79 33554431 << 4, 80 ); 81 82 /// The high limbs of (16p, 16p, 16p, 16p), so that 83 /// ```ascii,no_run 84 /// (16p, 16p, 16p, 16p) = [P_TIMES_16_LO, P_TIMES_16_HI, P_TIMES_16_HI, P_TIMES_16_HI, P_TIMES_16_HI] 85 /// ``` 86 pub(crate) static P_TIMES_16_HI: u32x8 = u32x8::new( 87 67108863 << 4, 88 67108863 << 4, 89 33554431 << 4, 90 33554431 << 4, 91 67108863 << 4, 92 67108863 << 4, 93 33554431 << 4, 94 33554431 << 4, 95 ); 96 97 /// Odd multiples of the Ed25519 basepoint: 98 pub(crate) static BASEPOINT_ODD_LOOKUP_TABLE: NafLookupTable8<CachedPoint> = NafLookupTable8([ 99 CachedPoint(FieldElement2625x4([ 100 u32x8::new( 101 3571425, 102 10045002, 103 19036563, 104 1096096, 105 243332, 106 65897020, 107 0, 108 28963681, 109 ), 110 u32x8::new( 111 30896895, 112 63055514, 113 1614915, 114 5095970, 115 0, 116 53791688, 117 0, 118 31258312, 119 ), 120 u32x8::new( 121 13347627, 122 40339464, 123 2236269, 124 11185503, 125 0, 126 22520087, 127 0, 128 8659512, 129 ), 130 u32x8::new( 131 11125413, 132 29139905, 133 32037254, 134 28360723, 135 0, 136 64556417, 137 0, 138 9635759, 139 ), 140 u32x8::new( 141 33268144, 142 47262491, 143 4336918, 144 15795740, 145 0, 146 22027545, 147 0, 148 4846528, 149 ), 150 ])), 151 CachedPoint(FieldElement2625x4([ 152 u32x8::new( 153 47099681, 154 31447946, 155 29365447, 156 24740513, 157 42991046, 158 18317844, 159 16051644, 160 21404226, 161 ), 162 u32x8::new( 163 31708133, 164 28909527, 165 2366091, 166 13703791, 167 469246, 168 54159622, 169 2601402, 170 32988002, 171 ), 172 u32x8::new( 173 63432457, 174 30251794, 175 15163516, 176 18491340, 177 28144087, 178 35605455, 179 13682295, 180 18474872, 181 ), 182 u32x8::new( 183 12221607, 184 4967598, 185 26061980, 186 26008006, 187 20226147, 188 9726961, 189 17410, 190 18051083, 191 ), 192 u32x8::new( 193 60569645, 194 62487085, 195 11911242, 196 21920922, 197 4092105, 198 38186967, 199 22431483, 200 31366585, 201 ), 202 ])), 203 CachedPoint(FieldElement2625x4([ 204 u32x8::new( 205 18147205, 206 62587998, 207 2554617, 208 536692, 209 11924528, 210 26674131, 211 17645433, 212 24341419, 213 ), 214 u32x8::new( 215 11573357, 216 27579485, 217 31491870, 218 29000885, 219 10800976, 220 51902791, 221 28076395, 222 20464029, 223 ), 224 u32x8::new( 225 56031649, 226 10856669, 227 11791193, 228 26769430, 229 25306956, 230 5922200, 231 6630685, 232 9385098, 233 ), 234 u32x8::new( 235 31319348, 236 23906711, 237 16290213, 238 32142166, 239 61106354, 240 17181823, 241 3548308, 242 12022566, 243 ), 244 u32x8::new( 245 5904298, 246 50218605, 247 11826440, 248 5492249, 249 10379071, 250 3472255, 251 172742, 252 31948344, 253 ), 254 ])), 255 CachedPoint(FieldElement2625x4([ 256 u32x8::new( 257 10625852, 258 15193821, 259 22918394, 260 23676410, 261 53695416, 262 54987793, 263 10067515, 264 11747680, 265 ), 266 u32x8::new( 267 65013325, 268 1309652, 269 29616320, 270 28922974, 271 60360891, 272 19621771, 273 9938982, 274 30406429, 275 ), 276 u32x8::new( 277 54967954, 278 65931918, 279 5595602, 280 25719523, 281 64909864, 282 30566415, 283 15945272, 284 8495317, 285 ), 286 u32x8::new( 287 1167157, 288 55265018, 289 11507029, 290 31641054, 291 43497904, 292 2367338, 293 12937761, 294 27517066, 295 ), 296 u32x8::new( 297 656704, 298 2544994, 299 13006713, 300 480979, 301 38471594, 302 62541240, 303 25353597, 304 11531760, 305 ), 306 ])), 307 CachedPoint(FieldElement2625x4([ 308 u32x8::new( 309 22176662, 310 3984313, 311 27495285, 312 4110608, 313 2909584, 314 30594106, 315 15677919, 316 2549183, 317 ), 318 u32x8::new( 319 33979105, 320 62269905, 321 2071511, 322 6894756, 323 53189950, 324 47232857, 325 6408191, 326 6123225, 327 ), 328 u32x8::new( 329 32553873, 330 63948030, 331 12612401, 332 3633166, 333 24054373, 334 37626618, 335 14481327, 336 8520484, 337 ), 338 u32x8::new( 339 56552486, 340 10749438, 341 12034813, 342 28811946, 343 1445640, 344 36755601, 345 12104575, 346 10257833, 347 ), 348 u32x8::new( 349 22795808, 350 48761311, 351 1136056, 352 9380768, 353 1411523, 354 5341811, 355 27318329, 356 9686767, 357 ), 358 ])), 359 CachedPoint(FieldElement2625x4([ 360 u32x8::new( 361 21157200, 362 39156966, 363 20473176, 364 4934657, 365 61478183, 366 45121537, 367 5429856, 368 13035023, 369 ), 370 u32x8::new( 371 7954529, 372 58789246, 373 31440083, 374 7054221, 375 38438565, 376 36856107, 377 1364112, 378 14548122, 379 ), 380 u32x8::new( 381 26120083, 382 36321360, 383 4919997, 384 31687496, 385 33757765, 386 36237559, 387 15243054, 388 32163861, 389 ), 390 u32x8::new( 391 25878307, 392 46544824, 393 19455951, 394 2414935, 395 16844726, 396 56521560, 397 32680554, 398 26660660, 399 ), 400 u32x8::new( 401 48360220, 402 43407178, 403 12187042, 404 24925816, 405 7423722, 406 25746484, 407 12814654, 408 17395963, 409 ), 410 ])), 411 CachedPoint(FieldElement2625x4([ 412 u32x8::new( 413 63153652, 414 32195955, 415 4087908, 416 8431689, 417 30392384, 418 47203165, 419 8986649, 420 9053039, 421 ), 422 u32x8::new( 423 63659241, 424 47988767, 425 2931872, 426 19953600, 427 11747107, 428 51610101, 429 20952181, 430 13364887, 431 ), 432 u32x8::new( 433 3659197, 434 58790649, 435 5930099, 436 2605312, 437 28477896, 438 580728, 439 20579735, 440 2610622, 441 ), 442 u32x8::new( 443 41781607, 444 17161358, 445 10690531, 446 24368015, 447 47027031, 448 36742339, 449 5414694, 450 13156365, 451 ), 452 u32x8::new( 453 13237853, 454 51182423, 455 8954802, 456 29006542, 457 22643989, 458 56896541, 459 22830593, 460 10289708, 461 ), 462 ])), 463 CachedPoint(FieldElement2625x4([ 464 u32x8::new( 465 1401265, 466 58846825, 467 30911620, 468 32239180, 469 15391552, 470 15200821, 471 6339309, 472 16403588, 473 ), 474 u32x8::new( 475 55913797, 476 29541724, 477 1664461, 478 21709410, 479 38470488, 480 47097092, 481 17674945, 482 32666066, 483 ), 484 u32x8::new( 485 22844482, 486 10797709, 487 27548106, 488 31638735, 489 34500968, 490 26611503, 491 19727211, 492 13160873, 493 ), 494 u32x8::new( 495 31485204, 496 14496164, 497 13981208, 498 10276888, 499 5748808, 500 35024436, 501 2740987, 502 7479021, 503 ), 504 u32x8::new( 505 58541207, 506 14866135, 507 32344041, 508 545930, 509 62661488, 510 6941250, 511 27940205, 512 11976112, 513 ), 514 ])), 515 CachedPoint(FieldElement2625x4([ 516 u32x8::new( 517 39849808, 518 44781685, 519 15697329, 520 24387845, 521 12501486, 522 50260092, 523 23199481, 524 31929024, 525 ), 526 u32x8::new( 527 24823070, 528 27956017, 529 27034296, 530 10316465, 531 47664045, 532 11152446, 533 15719183, 534 30181617, 535 ), 536 u32x8::new( 537 20771189, 538 19969144, 539 31433937, 540 19185213, 541 27565920, 542 10384445, 543 2893359, 544 9255362, 545 ), 546 u32x8::new( 547 42894974, 548 11925545, 549 32134441, 550 32738810, 551 55916336, 552 32479272, 553 19563550, 554 5511385, 555 ), 556 u32x8::new( 557 17857161, 558 47809169, 559 14564114, 560 27997751, 561 33024640, 562 38669671, 563 31956536, 564 27313245, 565 ), 566 ])), 567 CachedPoint(FieldElement2625x4([ 568 u32x8::new( 569 58237774, 570 15917425, 571 18872208, 572 19394230, 573 17374297, 574 6101419, 575 4839741, 576 6596900, 577 ), 578 u32x8::new( 579 66947393, 580 15744215, 581 18368993, 582 17750160, 583 41006525, 584 9205497, 585 2629667, 586 32170865, 587 ), 588 u32x8::new( 589 66481381, 590 1919414, 591 28338762, 592 7372967, 593 33819153, 594 4156199, 595 27126309, 596 12739816, 597 ), 598 u32x8::new( 599 44117158, 600 58545296, 601 22521371, 602 11809712, 603 28998792, 604 50731010, 605 30215699, 606 25748377, 607 ), 608 u32x8::new( 609 23561284, 610 4160244, 611 9035405, 612 24895184, 613 39761639, 614 59253416, 615 8684759, 616 22487864, 617 ), 618 ])), 619 CachedPoint(FieldElement2625x4([ 620 u32x8::new( 621 12671134, 622 56419053, 623 16092401, 624 30038207, 625 4002647, 626 47822606, 627 7151311, 628 28430768, 629 ), 630 u32x8::new( 631 61041684, 632 35765374, 633 30598048, 634 19666539, 635 44150175, 636 40140037, 637 290469, 638 28442674, 639 ), 640 u32x8::new( 641 18847796, 642 1371617, 643 33316881, 644 13199936, 645 43646578, 646 17068881, 647 12074900, 648 1537415, 649 ), 650 u32x8::new( 651 10052225, 652 38316070, 653 27469797, 654 5297537, 655 50725570, 656 20435349, 657 10339121, 658 2779737, 659 ), 660 u32x8::new( 661 18372189, 662 15466385, 663 24762130, 664 22217964, 665 23503887, 666 47844464, 667 10415034, 668 2606889, 669 ), 670 ])), 671 CachedPoint(FieldElement2625x4([ 672 u32x8::new( 673 55082775, 674 45300503, 675 16032654, 676 5964396, 677 17743504, 678 24634761, 679 19493066, 680 5184611, 681 ), 682 u32x8::new( 683 50172633, 684 35093294, 685 10040575, 686 23616256, 687 4543900, 688 61852191, 689 4049821, 690 7423669, 691 ), 692 u32x8::new( 693 20295398, 694 40009376, 695 10487190, 696 15670429, 697 51972856, 698 58649552, 699 20436392, 700 3432497, 701 ), 702 u32x8::new( 703 35189420, 704 54117751, 705 12825868, 706 6283038, 707 27540739, 708 30648758, 709 22658912, 710 9466689, 711 ), 712 u32x8::new( 713 51737549, 714 40725785, 715 17409814, 716 25201086, 717 21156239, 718 34176168, 719 26814520, 720 5956424, 721 ), 722 ])), 723 CachedPoint(FieldElement2625x4([ 724 u32x8::new( 725 8211442, 726 8014184, 727 6260823, 728 22108096, 729 32182620, 730 51844847, 731 2466270, 732 28582231, 733 ), 734 u32x8::new( 735 27199739, 736 3848333, 737 31738017, 738 10892045, 739 4963982, 740 65391770, 741 32551997, 742 28906469, 743 ), 744 u32x8::new( 745 16606846, 746 32207068, 747 26404535, 748 7614129, 749 45416902, 750 65584718, 751 13821785, 752 2646060, 753 ), 754 u32x8::new( 755 36090634, 756 57981287, 757 32247670, 758 22837502, 759 31003861, 760 55448117, 761 6062915, 762 20369975, 763 ), 764 u32x8::new( 765 27381403, 766 50578107, 767 522631, 768 29521058, 769 31137497, 770 40220737, 771 27628049, 772 1824195, 773 ), 774 ])), 775 CachedPoint(FieldElement2625x4([ 776 u32x8::new( 777 59402443, 778 17056879, 779 29262689, 780 6131785, 781 52551472, 782 43367471, 783 29423199, 784 18899208, 785 ), 786 u32x8::new( 787 5749414, 788 43514612, 789 11365899, 790 21514624, 791 65591890, 792 60945892, 793 19841732, 794 5628567, 795 ), 796 u32x8::new( 797 19334369, 798 52500268, 799 12307673, 800 5267367, 801 3212103, 802 9035822, 803 29142161, 804 30520954, 805 ), 806 u32x8::new( 807 57261330, 808 6819646, 809 22089161, 810 9800373, 811 55155453, 812 62250856, 813 13766735, 814 25244545, 815 ), 816 u32x8::new( 817 54370226, 818 61888301, 819 24496089, 820 2540581, 821 65637506, 822 60274355, 823 18154273, 824 11687259, 825 ), 826 ])), 827 CachedPoint(FieldElement2625x4([ 828 u32x8::new( 829 12521903, 830 26014045, 831 13995625, 832 33360175, 833 23605474, 834 7376434, 835 27229267, 836 17195036, 837 ), 838 u32x8::new( 839 59482891, 840 10074423, 841 574357, 842 3857753, 843 61377787, 844 50306685, 845 5241065, 846 20234396, 847 ), 848 u32x8::new( 849 23674717, 850 6997172, 851 20771841, 852 16858511, 853 40565304, 854 29973136, 855 7049812, 856 14585010, 857 ), 858 u32x8::new( 859 1427477, 860 13295732, 861 31762066, 862 31499740, 863 60419925, 864 54666164, 865 22009424, 866 8089609, 867 ), 868 u32x8::new( 869 58154031, 870 41593020, 871 15342328, 872 957047, 873 38937260, 874 37037498, 875 24871992, 876 32973409, 877 ), 878 ])), 879 CachedPoint(FieldElement2625x4([ 880 u32x8::new( 881 30654745, 882 51286025, 883 21206982, 884 2433562, 885 12780105, 886 31732574, 887 33087964, 888 33081189, 889 ), 890 u32x8::new( 891 66640017, 892 42720009, 893 16567620, 894 15300745, 895 1530367, 896 33001123, 897 20930247, 898 21042661, 899 ), 900 u32x8::new( 901 15003356, 902 5294119, 903 22985605, 904 18928772, 905 32628461, 906 18230172, 907 14773298, 908 27193722, 909 ), 910 u32x8::new( 911 27555, 912 65346287, 913 17017174, 914 7837720, 915 21499787, 916 42855613, 917 22474984, 918 13675085, 919 ), 920 u32x8::new( 921 24164369, 922 50130116, 923 5973149, 924 24152073, 925 1577334, 926 25400030, 927 18648484, 928 32228854, 929 ), 930 ])), 931 CachedPoint(FieldElement2625x4([ 932 u32x8::new( 933 49518649, 934 59119280, 935 31670678, 936 20396561, 937 61728330, 938 651402, 939 176032, 940 9529498, 941 ), 942 u32x8::new( 943 61765532, 944 9082232, 945 32794568, 946 15526956, 947 48543100, 948 32614212, 949 19001206, 950 25680229, 951 ), 952 u32x8::new( 953 32086091, 954 10373081, 955 8996131, 956 31822823, 957 35788988, 958 49973190, 959 30542040, 960 17858455, 961 ), 962 u32x8::new( 963 48130197, 964 58121889, 965 27753291, 966 29923268, 967 54448075, 968 43300790, 969 9336565, 970 15770022, 971 ), 972 u32x8::new( 973 57725546, 974 20557498, 975 9366233, 976 16023566, 977 16189031, 978 2837363, 979 24315301, 980 27003505, 981 ), 982 ])), 983 CachedPoint(FieldElement2625x4([ 984 u32x8::new( 985 28286608, 986 10767548, 987 18220739, 988 5413236, 989 48253387, 990 58255702, 991 11864864, 992 28527159, 993 ), 994 u32x8::new( 995 45038176, 996 58655197, 997 25648758, 998 10951484, 999 42564382, 1000 34542843, 1001 23146954, 1002 22234334, 1003 ), 1004 u32x8::new( 1005 14858710, 1006 24978793, 1007 15040559, 1008 4379220, 1009 47621477, 1010 40271440, 1011 15650420, 1012 1998736, 1013 ), 1014 u32x8::new( 1015 24106391, 1016 9626149, 1017 344505, 1018 25253814, 1019 34579800, 1020 59687089, 1021 25718289, 1022 25904133, 1023 ), 1024 u32x8::new( 1025 1981195, 1026 37751302, 1027 26132048, 1028 1764722, 1029 13288231, 1030 28808622, 1031 12531301, 1032 18292949, 1033 ), 1034 ])), 1035 CachedPoint(FieldElement2625x4([ 1036 u32x8::new( 1037 13869851, 1038 31448904, 1039 14963539, 1040 7581293, 1041 20536485, 1042 35021083, 1043 21257574, 1044 33356609, 1045 ), 1046 u32x8::new( 1047 36903364, 1048 18429241, 1049 11097857, 1050 5943856, 1051 60583077, 1052 40015815, 1053 30509523, 1054 31915271, 1055 ), 1056 u32x8::new( 1057 49161801, 1058 40681915, 1059 67892, 1060 25454357, 1061 22779677, 1062 25798439, 1063 15964829, 1064 5863227, 1065 ), 1066 u32x8::new( 1067 60810637, 1068 4496471, 1069 5217137, 1070 14095116, 1071 50942411, 1072 50712663, 1073 2507380, 1074 26844507, 1075 ), 1076 u32x8::new( 1077 34579752, 1078 53519385, 1079 10859797, 1080 18816024, 1081 42552864, 1082 39478521, 1083 6783896, 1084 17277037, 1085 ), 1086 ])), 1087 CachedPoint(FieldElement2625x4([ 1088 u32x8::new( 1089 43287109, 1090 27900723, 1091 33182187, 1092 2766754, 1093 17041989, 1094 1018260, 1095 33392790, 1096 4830032, 1097 ), 1098 u32x8::new( 1099 60194178, 1100 30788903, 1101 24728888, 1102 14513195, 1103 20897010, 1104 28843233, 1105 20111980, 1106 17475240, 1107 ), 1108 u32x8::new( 1109 46042274, 1110 19257042, 1111 4628173, 1112 31649727, 1113 27388316, 1114 66631493, 1115 11541886, 1116 6408028, 1117 ), 1118 u32x8::new( 1119 57024680, 1120 49536568, 1121 32050358, 1122 31321917, 1123 17437691, 1124 49672356, 1125 2884755, 1126 20493991, 1127 ), 1128 u32x8::new( 1129 59553007, 1130 46782643, 1131 29001173, 1132 1814088, 1133 21930692, 1134 51319706, 1135 14965872, 1136 30748046, 1137 ), 1138 ])), 1139 CachedPoint(FieldElement2625x4([ 1140 u32x8::new( 1141 16441817, 1142 36111849, 1143 6900424, 1144 602234, 1145 46522199, 1146 16441484, 1147 8135070, 1148 21726541, 1149 ), 1150 u32x8::new( 1151 37711225, 1152 32701959, 1153 11679112, 1154 13125533, 1155 32154135, 1156 9407918, 1157 26554289, 1158 620848, 1159 ), 1160 u32x8::new( 1161 19233407, 1162 30086864, 1163 14679568, 1164 2797374, 1165 4892806, 1166 7993077, 1167 247658, 1168 5632804, 1169 ), 1170 u32x8::new( 1171 37427262, 1172 26675495, 1173 27125659, 1174 13496131, 1175 50718473, 1176 40115609, 1177 28505351, 1178 27837393, 1179 ), 1180 u32x8::new( 1181 196819, 1182 18410429, 1183 7070012, 1184 21691388, 1185 29763371, 1186 24754123, 1187 9727048, 1188 10930179, 1189 ), 1190 ])), 1191 CachedPoint(FieldElement2625x4([ 1192 u32x8::new( 1193 28319289, 1194 40734650, 1195 16225680, 1196 24739184, 1197 64272368, 1198 35356897, 1199 7866648, 1200 13635853, 1201 ), 1202 u32x8::new( 1203 34165295, 1204 48328447, 1205 27041670, 1206 23643655, 1207 48949950, 1208 52963288, 1209 30411133, 1210 6045174, 1211 ), 1212 u32x8::new( 1213 18583559, 1214 41649834, 1215 9813585, 1216 26098520, 1217 25682734, 1218 26733526, 1219 19276490, 1220 10654728, 1221 ), 1222 u32x8::new( 1223 34867476, 1224 52715968, 1225 5694571, 1226 13380978, 1227 15134994, 1228 1831255, 1229 8608001, 1230 17266401, 1231 ), 1232 u32x8::new( 1233 59925903, 1234 44282172, 1235 27802465, 1236 1855069, 1237 14234749, 1238 36635487, 1239 11302294, 1240 10938429, 1241 ), 1242 ])), 1243 CachedPoint(FieldElement2625x4([ 1244 u32x8::new( 1245 8373273, 1246 49064494, 1247 4932071, 1248 32997499, 1249 38472880, 1250 29335908, 1251 14504412, 1252 22460029, 1253 ), 1254 u32x8::new( 1255 31795930, 1256 50785923, 1257 25835990, 1258 25790073, 1259 65669841, 1260 11360450, 1261 9969157, 1262 9008164, 1263 ), 1264 u32x8::new( 1265 50262498, 1266 45869261, 1267 16124434, 1268 15336007, 1269 882762, 1270 42522623, 1271 11277198, 1272 26296377, 1273 ), 1274 u32x8::new( 1275 42332732, 1276 59129236, 1277 14452816, 1278 567985, 1279 208061, 1280 34722729, 1281 32008143, 1282 14828749, 1283 ), 1284 u32x8::new( 1285 17937794, 1286 36846032, 1287 32102665, 1288 4442466, 1289 19745435, 1290 31633451, 1291 7146411, 1292 15812027, 1293 ), 1294 ])), 1295 CachedPoint(FieldElement2625x4([ 1296 u32x8::new( 1297 30741269, 1298 38648744, 1299 12562645, 1300 30092623, 1301 25073992, 1302 28730659, 1303 27911745, 1304 30000958, 1305 ), 1306 u32x8::new( 1307 2859794, 1308 25991700, 1309 17776078, 1310 27091930, 1311 2328322, 1312 60061146, 1313 18581824, 1314 18039008, 1315 ), 1316 u32x8::new( 1317 58206333, 1318 17917354, 1319 1972306, 1320 11853766, 1321 2655376, 1322 60543390, 1323 18416710, 1324 13287440, 1325 ), 1326 u32x8::new( 1327 62746330, 1328 61423885, 1329 21246577, 1330 2266675, 1331 60099139, 1332 14804707, 1333 14772234, 1334 20679434, 1335 ), 1336 u32x8::new( 1337 26987698, 1338 15488817, 1339 715616, 1340 2339565, 1341 51980752, 1342 17333865, 1343 21965103, 1344 10839820, 1345 ), 1346 ])), 1347 CachedPoint(FieldElement2625x4([ 1348 u32x8::new( 1349 18672548, 1350 57660959, 1351 16042910, 1352 19519287, 1353 62865851, 1354 17580961, 1355 26628347, 1356 23774759, 1357 ), 1358 u32x8::new( 1359 368070, 1360 3464471, 1361 25888304, 1362 30370559, 1363 52396053, 1364 45426828, 1365 28745251, 1366 9246829, 1367 ), 1368 u32x8::new( 1369 29090099, 1370 57950037, 1371 23104657, 1372 4903923, 1373 10987778, 1374 56163684, 1375 23621539, 1376 10332760, 1377 ), 1378 u32x8::new( 1379 53338235, 1380 44851161, 1381 21606845, 1382 31069622, 1383 4243630, 1384 34464392, 1385 11286454, 1386 5802022, 1387 ), 1388 u32x8::new( 1389 46710757, 1390 63389067, 1391 11642865, 1392 1980986, 1393 12967337, 1394 28162061, 1395 3854192, 1396 30432268, 1397 ), 1398 ])), 1399 CachedPoint(FieldElement2625x4([ 1400 u32x8::new( 1401 12179834, 1402 41005450, 1403 12809619, 1404 33525228, 1405 4624405, 1406 46957889, 1407 16968743, 1408 11827816, 1409 ), 1410 u32x8::new( 1411 51521162, 1412 12466775, 1413 31791271, 1414 15303651, 1415 49798465, 1416 62714504, 1417 6509600, 1418 12918560, 1419 ), 1420 u32x8::new( 1421 20445559, 1422 1756449, 1423 28848701, 1424 7920171, 1425 9835040, 1426 5900071, 1427 28757409, 1428 12376688, 1429 ), 1430 u32x8::new( 1431 18259496, 1432 14281012, 1433 21767026, 1434 10232236, 1435 20000226, 1436 12400540, 1437 4104902, 1438 23570543, 1439 ), 1440 u32x8::new( 1441 3687440, 1442 26546648, 1443 13328821, 1444 26841081, 1445 49822734, 1446 22334054, 1447 244496, 1448 24862543, 1449 ), 1450 ])), 1451 CachedPoint(FieldElement2625x4([ 1452 u32x8::new( 1453 59523541, 1454 62195428, 1455 3853227, 1456 13954801, 1457 12387708, 1458 47627615, 1459 27221350, 1460 17899572, 1461 ), 1462 u32x8::new( 1463 63193587, 1464 36343307, 1465 14595132, 1466 6880795, 1467 1364792, 1468 37648434, 1469 3259017, 1470 20536046, 1471 ), 1472 u32x8::new( 1473 30362834, 1474 10440372, 1475 9574624, 1476 11729232, 1477 63861613, 1478 21748389, 1479 5530846, 1480 2721586, 1481 ), 1482 u32x8::new( 1483 18339760, 1484 1550632, 1485 17170271, 1486 25732971, 1487 28459263, 1488 63142237, 1489 21642345, 1490 31557672, 1491 ), 1492 u32x8::new( 1493 10611282, 1494 5204623, 1495 18049257, 1496 214175, 1497 19432723, 1498 49809070, 1499 26010406, 1500 27449522, 1501 ), 1502 ])), 1503 CachedPoint(FieldElement2625x4([ 1504 u32x8::new( 1505 19770733, 1506 26478685, 1507 9464541, 1508 29158041, 1509 28604307, 1510 45196604, 1511 7586524, 1512 6641859, 1513 ), 1514 u32x8::new( 1515 65654484, 1516 52230498, 1517 30886612, 1518 19112823, 1519 47271809, 1520 38942611, 1521 16020035, 1522 10773481, 1523 ), 1524 u32x8::new( 1525 27464323, 1526 54451016, 1527 20646645, 1528 17732915, 1529 23008717, 1530 53626684, 1531 3253189, 1532 15614410, 1533 ), 1534 u32x8::new( 1535 52381752, 1536 40693008, 1537 7063024, 1538 28469981, 1539 51159478, 1540 44543211, 1541 19941777, 1542 5985451, 1543 ), 1544 u32x8::new( 1545 13553668, 1546 35524849, 1547 14788737, 1548 1883845, 1549 12385775, 1550 47958835, 1551 29135466, 1552 1776722, 1553 ), 1554 ])), 1555 CachedPoint(FieldElement2625x4([ 1556 u32x8::new( 1557 36719806, 1558 20827965, 1559 23175373, 1560 32996806, 1561 42041892, 1562 65708790, 1563 5467143, 1564 20884008, 1565 ), 1566 u32x8::new( 1567 43256281, 1568 40770646, 1569 17244063, 1570 31959819, 1571 64366384, 1572 43544617, 1573 25057754, 1574 12628720, 1575 ), 1576 u32x8::new( 1577 17337782, 1578 58472057, 1579 27906934, 1580 15305274, 1581 30292418, 1582 39284317, 1583 16946773, 1584 24806712, 1585 ), 1586 u32x8::new( 1587 6485126, 1588 32447403, 1589 16261486, 1590 13561940, 1591 49439635, 1592 10738368, 1593 16419889, 1594 8897231, 1595 ), 1596 u32x8::new( 1597 44812203, 1598 40122262, 1599 25496058, 1600 2759794, 1601 25295304, 1602 52178368, 1603 24154195, 1604 29334408, 1605 ), 1606 ])), 1607 CachedPoint(FieldElement2625x4([ 1608 u32x8::new( 1609 42307254, 1610 57217102, 1611 1088936, 1612 3832827, 1613 33905401, 1614 23130334, 1615 6958056, 1616 12622851, 1617 ), 1618 u32x8::new( 1619 3881189, 1620 14870059, 1621 19712830, 1622 6071598, 1623 38147944, 1624 60776394, 1625 3427938, 1626 13765703, 1627 ), 1628 u32x8::new( 1629 7666911, 1630 24227591, 1631 17077136, 1632 22967588, 1633 6874639, 1634 30915523, 1635 11451695, 1636 24292224, 1637 ), 1638 u32x8::new( 1639 13659529, 1640 31984463, 1641 28764736, 1642 20506164, 1643 64729627, 1644 49321636, 1645 28284636, 1646 25472371, 1647 ), 1648 u32x8::new( 1649 39360308, 1650 42281399, 1651 9446504, 1652 868960, 1653 49227724, 1654 21351115, 1655 30561851, 1656 11292096, 1657 ), 1658 ])), 1659 CachedPoint(FieldElement2625x4([ 1660 u32x8::new( 1661 7071115, 1662 46444090, 1663 5387916, 1664 15432877, 1665 27226682, 1666 41506862, 1667 2398278, 1668 3978240, 1669 ), 1670 u32x8::new( 1671 51009614, 1672 54216973, 1673 24368938, 1674 31392616, 1675 38456150, 1676 62313644, 1677 6729154, 1678 99724, 1679 ), 1680 u32x8::new( 1681 17474332, 1682 62857913, 1683 2619930, 1684 30659308, 1685 18268181, 1686 32809239, 1687 22826292, 1688 24561895, 1689 ), 1690 u32x8::new( 1691 38187020, 1692 67003092, 1693 14118280, 1694 16500577, 1695 18808560, 1696 64983716, 1697 25712929, 1698 32518261, 1699 ), 1700 u32x8::new( 1701 25735813, 1702 62284262, 1703 10824872, 1704 20558596, 1705 48149681, 1706 31162667, 1707 22608274, 1708 26285185, 1709 ), 1710 ])), 1711 CachedPoint(FieldElement2625x4([ 1712 u32x8::new( 1713 963440, 1714 63742255, 1715 10230323, 1716 25515008, 1717 32506414, 1718 6105697, 1719 25980317, 1720 24645129, 1721 ), 1722 u32x8::new( 1723 7162189, 1724 8101249, 1725 14679265, 1726 33443386, 1727 2002396, 1728 8541405, 1729 19442276, 1730 4795881, 1731 ), 1732 u32x8::new( 1733 8116694, 1734 51463069, 1735 4415528, 1736 25599140, 1737 55805721, 1738 39582709, 1739 6719436, 1740 30033839, 1741 ), 1742 u32x8::new( 1743 14468202, 1744 42181869, 1745 25188826, 1746 9639755, 1747 47546189, 1748 62711146, 1749 32762447, 1750 18338064, 1751 ), 1752 u32x8::new( 1753 33880058, 1754 32810909, 1755 8969931, 1756 13095238, 1757 38360605, 1758 40138517, 1759 9246134, 1760 4928058, 1761 ), 1762 ])), 1763 CachedPoint(FieldElement2625x4([ 1764 u32x8::new( 1765 63655588, 1766 17883670, 1767 9410246, 1768 26162761, 1769 5000571, 1770 7349225, 1771 23785252, 1772 32751089, 1773 ), 1774 u32x8::new( 1775 28568737, 1776 10733123, 1777 9342397, 1778 21570673, 1779 54096560, 1780 32467591, 1781 20494687, 1782 21511513, 1783 ), 1784 u32x8::new( 1785 47675157, 1786 47932807, 1787 29250946, 1788 15672208, 1789 59760469, 1790 9945465, 1791 14939287, 1792 18437405, 1793 ), 1794 u32x8::new( 1795 37985267, 1796 8609815, 1797 31573002, 1798 3373596, 1799 47828883, 1800 20834216, 1801 13248616, 1802 24154292, 1803 ), 1804 u32x8::new( 1805 5543543, 1806 29553242, 1807 3386453, 1808 30501150, 1809 25058089, 1810 15236571, 1811 8814395, 1812 32462955, 1813 ), 1814 ])), 1815 CachedPoint(FieldElement2625x4([ 1816 u32x8::new( 1817 39158670, 1818 15322548, 1819 20495103, 1820 3312736, 1821 14557171, 1822 12985179, 1823 8044741, 1824 3176899, 1825 ), 1826 u32x8::new( 1827 24673290, 1828 29693310, 1829 21412266, 1830 18324699, 1831 2154518, 1832 40329021, 1833 17500543, 1834 3954277, 1835 ), 1836 u32x8::new( 1837 36758685, 1838 38738957, 1839 165513, 1840 14691866, 1841 3070475, 1842 10424235, 1843 17096536, 1844 16896898, 1845 ), 1846 u32x8::new( 1847 59790459, 1848 43094586, 1849 8720681, 1850 10423589, 1851 1122030, 1852 31545615, 1853 4463786, 1854 31811293, 1855 ), 1856 u32x8::new( 1857 49778992, 1858 60881044, 1859 20509974, 1860 5832494, 1861 64155961, 1862 31483358, 1863 4511231, 1864 20307815, 1865 ), 1866 ])), 1867 CachedPoint(FieldElement2625x4([ 1868 u32x8::new( 1869 2863373, 1870 40876242, 1871 26865913, 1872 24067353, 1873 15726407, 1874 40919070, 1875 12953902, 1876 9931535, 1877 ), 1878 u32x8::new( 1879 60934877, 1880 42512204, 1881 21649141, 1882 21945190, 1883 52211954, 1884 60984193, 1885 7046207, 1886 5363493, 1887 ), 1888 u32x8::new( 1889 4205971, 1890 64068464, 1891 18197273, 1892 7327176, 1893 51527794, 1894 21166920, 1895 20669933, 1896 11828242, 1897 ), 1898 u32x8::new( 1899 59782815, 1900 49617225, 1901 15379924, 1902 457923, 1903 9320508, 1904 21498914, 1905 3242540, 1906 31563182, 1907 ), 1908 u32x8::new( 1909 27714753, 1910 8664670, 1911 3366162, 1912 26338598, 1913 56775518, 1914 25796006, 1915 13129151, 1916 21388876, 1917 ), 1918 ])), 1919 CachedPoint(FieldElement2625x4([ 1920 u32x8::new( 1921 59276548, 1922 49972346, 1923 16795002, 1924 33455915, 1925 48430097, 1926 53857205, 1927 18627071, 1928 32474471, 1929 ), 1930 u32x8::new( 1931 42160315, 1932 50705892, 1933 13530540, 1934 28012698, 1935 19833221, 1936 55886870, 1937 20191784, 1938 9644313, 1939 ), 1940 u32x8::new( 1941 20372416, 1942 28414713, 1943 24084234, 1944 31804096, 1945 33815377, 1946 36131001, 1947 17251241, 1948 18291088, 1949 ), 1950 u32x8::new( 1951 56234667, 1952 14920441, 1953 2033267, 1954 29572003, 1955 1724043, 1956 45519699, 1957 17873735, 1958 501988, 1959 ), 1960 u32x8::new( 1961 50031659, 1962 31517850, 1963 15697583, 1964 1016845, 1965 43104661, 1966 54769582, 1967 8008601, 1968 27257051, 1969 ), 1970 ])), 1971 CachedPoint(FieldElement2625x4([ 1972 u32x8::new( 1973 52951491, 1974 66542164, 1975 14853573, 1976 30444631, 1977 12045973, 1978 24321813, 1979 16545674, 1980 18160646, 1981 ), 1982 u32x8::new( 1983 60107911, 1984 1126003, 1985 5947677, 1986 19486116, 1987 41119984, 1988 30860440, 1989 7935395, 1990 13354438, 1991 ), 1992 u32x8::new( 1993 17841328, 1994 11063269, 1995 1664538, 1996 26687568, 1997 6268968, 1998 22280371, 1999 17275484, 2000 4523163, 2001 ), 2002 u32x8::new( 2003 15886041, 2004 56799482, 2005 15446552, 2006 21712778, 2007 1005290, 2008 17827215, 2009 4978741, 2010 6854882, 2011 ), 2012 u32x8::new( 2013 34319277, 2014 47731002, 2015 20321804, 2016 28544575, 2017 29591814, 2018 63376351, 2019 24754545, 2020 26001714, 2021 ), 2022 ])), 2023 CachedPoint(FieldElement2625x4([ 2024 u32x8::new( 2025 66783087, 2026 5234346, 2027 46102, 2028 8566476, 2029 19947339, 2030 20180418, 2031 25398238, 2032 3726678, 2033 ), 2034 u32x8::new( 2035 63890180, 2036 46380965, 2037 20674069, 2038 5366544, 2039 59661487, 2040 48406612, 2041 31533614, 2042 7071217, 2043 ), 2044 u32x8::new( 2045 13104676, 2046 1406631, 2047 24326736, 2048 19854367, 2049 61039528, 2050 11019904, 2051 31967425, 2052 19219275, 2053 ), 2054 u32x8::new( 2055 39003597, 2056 30143957, 2057 15351834, 2058 8639435, 2059 57309582, 2060 61436794, 2061 15830475, 2062 10090318, 2063 ), 2064 u32x8::new( 2065 45923044, 2066 6700175, 2067 99413, 2068 21263025, 2069 23762647, 2070 53905481, 2071 6063914, 2072 10065424, 2073 ), 2074 ])), 2075 CachedPoint(FieldElement2625x4([ 2076 u32x8::new( 2077 42822326, 2078 57678669, 2079 4052879, 2080 25452667, 2081 54049411, 2082 2373092, 2083 22337016, 2084 7701046, 2085 ), 2086 u32x8::new( 2087 44382355, 2088 43307377, 2089 16761537, 2090 30373573, 2091 49790216, 2092 23230748, 2093 25655306, 2094 10519391, 2095 ), 2096 u32x8::new( 2097 919475, 2098 59371245, 2099 1273450, 2100 25558666, 2101 9724711, 2102 8556709, 2103 25755845, 2104 10887647, 2105 ), 2106 u32x8::new( 2107 25465699, 2108 44651158, 2109 17658392, 2110 11257418, 2111 29735193, 2112 22885150, 2113 7094716, 2114 26828565, 2115 ), 2116 u32x8::new( 2117 48237389, 2118 47661599, 2119 27054393, 2120 7328070, 2121 27280193, 2122 65616691, 2123 23062005, 2124 4170709, 2125 ), 2126 ])), 2127 CachedPoint(FieldElement2625x4([ 2128 u32x8::new( 2129 26535281, 2130 60238317, 2131 30343788, 2132 25790743, 2133 37993933, 2134 24614372, 2135 9523840, 2136 10401918, 2137 ), 2138 u32x8::new( 2139 2783987, 2140 29468958, 2141 4697011, 2142 19804475, 2143 37246678, 2144 46797720, 2145 10261254, 2146 18942252, 2147 ), 2148 u32x8::new( 2149 58135580, 2150 60247753, 2151 25301938, 2152 6844561, 2153 20949454, 2154 39844754, 2155 4552026, 2156 919057, 2157 ), 2158 u32x8::new( 2159 6694071, 2160 44126261, 2161 32285330, 2162 31370180, 2163 24603698, 2164 53328179, 2165 13971149, 2166 5325636, 2167 ), 2168 u32x8::new( 2169 64879487, 2170 582094, 2171 17982081, 2172 19190425, 2173 24951286, 2174 26923842, 2175 29077174, 2176 33286062, 2177 ), 2178 ])), 2179 CachedPoint(FieldElement2625x4([ 2180 u32x8::new( 2181 54863941, 2182 67016431, 2183 1224043, 2184 23371240, 2185 62940074, 2186 52101083, 2187 13523637, 2188 30366406, 2189 ), 2190 u32x8::new( 2191 36324581, 2192 25407485, 2193 18258623, 2194 4698602, 2195 50300544, 2196 2658516, 2197 26300935, 2198 2611030, 2199 ), 2200 u32x8::new( 2201 27183975, 2202 21791014, 2203 18105064, 2204 9875199, 2205 58118912, 2206 54198635, 2207 6400311, 2208 14767984, 2209 ), 2210 u32x8::new( 2211 33918318, 2212 42937962, 2213 14809334, 2214 22136592, 2215 10636588, 2216 29082337, 2217 29829692, 2218 28549776, 2219 ), 2220 u32x8::new( 2221 61080905, 2222 854212, 2223 12202487, 2224 20004503, 2225 9256495, 2226 6903981, 2227 20567109, 2228 347423, 2229 ), 2230 ])), 2231 CachedPoint(FieldElement2625x4([ 2232 u32x8::new( 2233 41391822, 2234 34336880, 2235 22362564, 2236 14247996, 2237 12115604, 2238 41583344, 2239 7639288, 2240 28910945, 2241 ), 2242 u32x8::new( 2243 62066617, 2244 59758859, 2245 26665947, 2246 11614812, 2247 65737664, 2248 45704543, 2249 30324810, 2250 12868376, 2251 ), 2252 u32x8::new( 2253 17491771, 2254 43589814, 2255 9454919, 2256 26047850, 2257 52629282, 2258 39304244, 2259 3868968, 2260 19296062, 2261 ), 2262 u32x8::new( 2263 17826638, 2264 30413590, 2265 32534225, 2266 32741469, 2267 15012391, 2268 14365713, 2269 33039233, 2270 14791399, 2271 ), 2272 u32x8::new( 2273 64115596, 2274 59197067, 2275 32739005, 2276 23275744, 2277 32954320, 2278 22241406, 2279 20788442, 2280 4942942, 2281 ), 2282 ])), 2283 CachedPoint(FieldElement2625x4([ 2284 u32x8::new( 2285 31956192, 2286 59570132, 2287 2784352, 2288 4237732, 2289 47222312, 2290 4860927, 2291 18658867, 2292 15279314, 2293 ), 2294 u32x8::new( 2295 63240583, 2296 28160478, 2297 23524941, 2298 13390861, 2299 66437406, 2300 57718120, 2301 33345312, 2302 28896298, 2303 ), 2304 u32x8::new( 2305 39026193, 2306 46239965, 2307 21440243, 2308 25070488, 2309 64012383, 2310 60999016, 2311 16517060, 2312 29565907, 2313 ), 2314 u32x8::new( 2315 18118181, 2316 60161496, 2317 4212092, 2318 23976240, 2319 36277753, 2320 62363144, 2321 5816868, 2322 16964362, 2323 ), 2324 u32x8::new( 2325 18196138, 2326 62490693, 2327 281468, 2328 7934713, 2329 56027312, 2330 62015725, 2331 4837237, 2332 32932252, 2333 ), 2334 ])), 2335 CachedPoint(FieldElement2625x4([ 2336 u32x8::new( 2337 29885826, 2338 51028067, 2339 30418143, 2340 33438769, 2341 62542283, 2342 39442528, 2343 31535876, 2344 143299, 2345 ), 2346 u32x8::new( 2347 17143063, 2348 56709783, 2349 14451852, 2350 15782104, 2351 32762665, 2352 14047066, 2353 26295037, 2354 5432487, 2355 ), 2356 u32x8::new( 2357 75151, 2358 533606, 2359 7539077, 2360 30926189, 2361 38410914, 2362 23771680, 2363 4872443, 2364 29199566, 2365 ), 2366 u32x8::new( 2367 61522396, 2368 48934708, 2369 16223126, 2370 207380, 2371 11171993, 2372 47975147, 2373 14164574, 2374 352966, 2375 ), 2376 u32x8::new( 2377 15449006, 2378 56530757, 2379 26796528, 2380 12045834, 2381 63738697, 2382 40667227, 2383 33001582, 2384 9101885, 2385 ), 2386 ])), 2387 CachedPoint(FieldElement2625x4([ 2388 u32x8::new( 2389 43331297, 2390 18431341, 2391 25801195, 2392 17267698, 2393 19365485, 2394 57295202, 2395 22218985, 2396 21284590, 2397 ), 2398 u32x8::new( 2399 2429849, 2400 19152559, 2401 10762172, 2402 22564684, 2403 21880390, 2404 66866426, 2405 20357935, 2406 22641906, 2407 ), 2408 u32x8::new( 2409 19771185, 2410 31652693, 2411 3666117, 2412 28136958, 2413 23624283, 2414 55101502, 2415 6313920, 2416 6783662, 2417 ), 2418 u32x8::new( 2419 3487137, 2420 7092443, 2421 11001876, 2422 26196524, 2423 47319246, 2424 44542068, 2425 17594073, 2426 15027760, 2427 ), 2428 u32x8::new( 2429 49563607, 2430 32191113, 2431 4991283, 2432 25400512, 2433 46539152, 2434 4155103, 2435 32368171, 2436 201203, 2437 ), 2438 ])), 2439 CachedPoint(FieldElement2625x4([ 2440 u32x8::new( 2441 20548943, 2442 14334571, 2443 4073874, 2444 6368588, 2445 53208883, 2446 56484515, 2447 15970071, 2448 25561889, 2449 ), 2450 u32x8::new( 2451 49915097, 2452 44030795, 2453 11202344, 2454 29284344, 2455 60258023, 2456 66225712, 2457 8075764, 2458 12383512, 2459 ), 2460 u32x8::new( 2461 45248912, 2462 4933668, 2463 9592153, 2464 5819559, 2465 31030983, 2466 38174071, 2467 32435814, 2468 7442522, 2469 ), 2470 u32x8::new( 2471 62688129, 2472 48218381, 2473 22089545, 2474 12897361, 2475 21050881, 2476 34278889, 2477 7569163, 2478 3225449, 2479 ), 2480 u32x8::new( 2481 19050183, 2482 51089071, 2483 32935757, 2484 22640195, 2485 66122318, 2486 47144608, 2487 18743677, 2488 25177079, 2489 ), 2490 ])), 2491 CachedPoint(FieldElement2625x4([ 2492 u32x8::new( 2493 41186817, 2494 46681702, 2495 31819867, 2496 32997133, 2497 38559207, 2498 27147015, 2499 30293819, 2500 16762988, 2501 ), 2502 u32x8::new( 2503 24154689, 2504 51762873, 2505 23883879, 2506 13510519, 2507 55338250, 2508 61224161, 2509 11663149, 2510 30803960, 2511 ), 2512 u32x8::new( 2513 18104238, 2514 14117824, 2515 11724021, 2516 21362053, 2517 65704761, 2518 35530242, 2519 13498058, 2520 33522849, 2521 ), 2522 u32x8::new( 2523 63812888, 2524 23995539, 2525 28920539, 2526 24005193, 2527 26412223, 2528 36582218, 2529 4251418, 2530 26160309, 2531 ), 2532 u32x8::new( 2533 16822053, 2534 66064082, 2535 3482145, 2536 31979593, 2537 45937188, 2538 54475379, 2539 612917, 2540 7976478, 2541 ), 2542 ])), 2543 CachedPoint(FieldElement2625x4([ 2544 u32x8::new( 2545 46509314, 2546 55327128, 2547 8944536, 2548 274914, 2549 26432930, 2550 53829300, 2551 21192572, 2552 3569894, 2553 ), 2554 u32x8::new( 2555 20919764, 2556 64356651, 2557 30642344, 2558 17215170, 2559 20335124, 2560 11203745, 2561 18663316, 2562 19024174, 2563 ), 2564 u32x8::new( 2565 59297055, 2566 53842463, 2567 3680204, 2568 9806710, 2569 54004169, 2570 51484914, 2571 29807998, 2572 20134199, 2573 ), 2574 u32x8::new( 2575 14781592, 2576 22628010, 2577 26877930, 2578 25880359, 2579 30434803, 2580 190607, 2581 30184292, 2582 8991040, 2583 ), 2584 u32x8::new( 2585 64400983, 2586 64591751, 2587 854562, 2588 28216111, 2589 20010398, 2590 50414793, 2591 9803872, 2592 22687008, 2593 ), 2594 ])), 2595 CachedPoint(FieldElement2625x4([ 2596 u32x8::new( 2597 15091184, 2598 32550863, 2599 8818643, 2600 4244752, 2601 43123513, 2602 64565526, 2603 408838, 2604 13206998, 2605 ), 2606 u32x8::new( 2607 16405061, 2608 60379639, 2609 31489017, 2610 20949281, 2611 27568751, 2612 38734986, 2613 8364264, 2614 12451020, 2615 ), 2616 u32x8::new( 2617 16005217, 2618 58008076, 2619 1406778, 2620 26546927, 2621 39571784, 2622 56365493, 2623 31274296, 2624 8918790, 2625 ), 2626 u32x8::new( 2627 23271122, 2628 19453469, 2629 27718201, 2630 32742670, 2631 234332, 2632 36785342, 2633 22601675, 2634 14331046, 2635 ), 2636 u32x8::new( 2637 40636025, 2638 22442705, 2639 22115403, 2640 23745859, 2641 41164945, 2642 61012, 2643 12499614, 2644 542137, 2645 ), 2646 ])), 2647 CachedPoint(FieldElement2625x4([ 2648 u32x8::new( 2649 62776018, 2650 32835413, 2651 17373246, 2652 17187309, 2653 54469193, 2654 21770290, 2655 15923753, 2656 28996575, 2657 ), 2658 u32x8::new( 2659 59385210, 2660 63082298, 2661 12568449, 2662 8509004, 2663 9483342, 2664 16105238, 2665 5756054, 2666 26890758, 2667 ), 2668 u32x8::new( 2669 53987996, 2670 38201748, 2671 5521661, 2672 19060159, 2673 18663191, 2674 9093637, 2675 27786835, 2676 31189196, 2677 ), 2678 u32x8::new( 2679 65872678, 2680 43635130, 2681 27903055, 2682 25020300, 2683 65772737, 2684 38110437, 2685 5213502, 2686 21909342, 2687 ), 2688 u32x8::new( 2689 4438979, 2690 9680838, 2691 10212446, 2692 4764184, 2693 13235684, 2694 58245995, 2695 20264570, 2696 21024049, 2697 ), 2698 ])), 2699 CachedPoint(FieldElement2625x4([ 2700 u32x8::new( 2701 60835961, 2702 48209103, 2703 31049052, 2704 4688268, 2705 12426713, 2706 59829045, 2707 22302488, 2708 29008521, 2709 ), 2710 u32x8::new( 2711 50401667, 2712 29716596, 2713 23531224, 2714 7581281, 2715 49071895, 2716 6952617, 2717 14934683, 2718 8218256, 2719 ), 2720 u32x8::new( 2721 1601446, 2722 36631413, 2723 31774811, 2724 29625330, 2725 56786114, 2726 8331539, 2727 23129509, 2728 19783344, 2729 ), 2730 u32x8::new( 2731 59514327, 2732 64513110, 2733 1772300, 2734 5701338, 2735 5737511, 2736 16147555, 2737 9461515, 2738 5703271, 2739 ), 2740 u32x8::new( 2741 33072974, 2742 54300426, 2743 11940114, 2744 1308663, 2745 15627555, 2746 4931627, 2747 28443714, 2748 20924342, 2749 ), 2750 ])), 2751 CachedPoint(FieldElement2625x4([ 2752 u32x8::new( 2753 18135013, 2754 20358426, 2755 4922557, 2756 10015355, 2757 65729669, 2758 34786528, 2759 26248549, 2760 29194359, 2761 ), 2762 u32x8::new( 2763 797666, 2764 34997544, 2765 24316856, 2766 25107230, 2767 24612576, 2768 4761401, 2769 15307321, 2770 32404252, 2771 ), 2772 u32x8::new( 2773 16501152, 2774 60565831, 2775 9487105, 2776 9316022, 2777 24986054, 2778 31917592, 2779 3962024, 2780 2501883, 2781 ), 2782 u32x8::new( 2783 63356796, 2784 50432342, 2785 18044926, 2786 30566881, 2787 42032028, 2788 31415202, 2789 13524600, 2790 16119907, 2791 ), 2792 u32x8::new( 2793 3927286, 2794 57022374, 2795 9265437, 2796 21620772, 2797 19481940, 2798 3806938, 2799 24836192, 2800 14572399, 2801 ), 2802 ])), 2803 CachedPoint(FieldElement2625x4([ 2804 u32x8::new( 2805 10785787, 2806 46564798, 2807 368445, 2808 33181384, 2809 5319843, 2810 52687136, 2811 30347110, 2812 29837357, 2813 ), 2814 u32x8::new( 2815 56436732, 2816 47859251, 2817 24141084, 2818 22250712, 2819 59046084, 2820 4963427, 2821 33463413, 2822 17168859, 2823 ), 2824 u32x8::new( 2825 15512044, 2826 6366740, 2827 4737504, 2828 27644548, 2829 30307977, 2830 25037929, 2831 14593903, 2832 12836490, 2833 ), 2834 u32x8::new( 2835 63878897, 2836 34013023, 2837 5860752, 2838 7244096, 2839 3689461, 2840 57012135, 2841 18389096, 2842 11589351, 2843 ), 2844 u32x8::new( 2845 4682110, 2846 36302830, 2847 653422, 2848 22316819, 2849 14081831, 2850 5657024, 2851 11088376, 2852 24110612, 2853 ), 2854 ])), 2855 CachedPoint(FieldElement2625x4([ 2856 u32x8::new( 2857 39907267, 2858 45940262, 2859 24887471, 2860 18342609, 2861 878445, 2862 40456159, 2863 12019082, 2864 345107, 2865 ), 2866 u32x8::new( 2867 12794982, 2868 28893944, 2869 9447505, 2870 11387200, 2871 16961963, 2872 13916996, 2873 10893728, 2874 25898006, 2875 ), 2876 u32x8::new( 2877 44934162, 2878 53465865, 2879 3583620, 2880 1102334, 2881 53917811, 2882 63478576, 2883 2426066, 2884 10389549, 2885 ), 2886 u32x8::new( 2887 45096036, 2888 37595344, 2889 19367718, 2890 20257175, 2891 10280866, 2892 41653449, 2893 27665642, 2894 375926, 2895 ), 2896 u32x8::new( 2897 45847901, 2898 24064074, 2899 32494820, 2900 32204556, 2901 10720704, 2902 51079060, 2903 1297436, 2904 29853825, 2905 ), 2906 ])), 2907 CachedPoint(FieldElement2625x4([ 2908 u32x8::new( 2909 66303987, 2910 36060363, 2911 16494578, 2912 24962147, 2913 11971403, 2914 49538586, 2915 25060560, 2916 1964341, 2917 ), 2918 u32x8::new( 2919 25988481, 2920 27641502, 2921 24909517, 2922 27237087, 2923 66646363, 2924 52777626, 2925 16360849, 2926 10459972, 2927 ), 2928 u32x8::new( 2929 43930529, 2930 34374176, 2931 31225968, 2932 8807030, 2933 10394758, 2934 35904854, 2935 25325589, 2936 19335583, 2937 ), 2938 u32x8::new( 2939 25094697, 2940 34380951, 2941 20051185, 2942 32287161, 2943 11739332, 2944 53887441, 2945 30517319, 2946 26601892, 2947 ), 2948 u32x8::new( 2949 8868546, 2950 35635502, 2951 32513071, 2952 28248087, 2953 51946989, 2954 14222744, 2955 19198839, 2956 23261841, 2957 ), 2958 ])), 2959 CachedPoint(FieldElement2625x4([ 2960 u32x8::new( 2961 51218008, 2962 5070126, 2963 11046681, 2964 5320810, 2965 61212079, 2966 34104447, 2967 23895089, 2968 6460727, 2969 ), 2970 u32x8::new( 2971 39843528, 2972 46278671, 2973 10426120, 2974 25624792, 2975 66658766, 2976 37140083, 2977 28933107, 2978 12969597, 2979 ), 2980 u32x8::new( 2981 59635793, 2982 40220191, 2983 5751421, 2984 173680, 2985 58321825, 2986 740337, 2987 1412847, 2988 7682623, 2989 ), 2990 u32x8::new( 2991 975962, 2992 56440763, 2993 20812276, 2994 22631115, 2995 49095824, 2996 19883130, 2997 2419746, 2998 31043648, 2999 ), 3000 u32x8::new( 3001 66208703, 3002 39669328, 3003 22525915, 3004 3748897, 3005 65994776, 3006 34533552, 3007 8126286, 3008 18326047, 3009 ), 3010 ])), 3011 CachedPoint(FieldElement2625x4([ 3012 u32x8::new( 3013 64176557, 3014 3912400, 3015 19351673, 3016 30068471, 3017 31190055, 3018 24221683, 3019 33142424, 3020 28698542, 3021 ), 3022 u32x8::new( 3023 34784792, 3024 4109933, 3025 3867193, 3026 19557314, 3027 2112512, 3028 32715890, 3029 24550117, 3030 16595976, 3031 ), 3032 u32x8::new( 3033 35542761, 3034 48024875, 3035 10925431, 3036 31526577, 3037 66577735, 3038 23189821, 3039 13375709, 3040 1735095, 3041 ), 3042 u32x8::new( 3043 59699254, 3044 43854093, 3045 29783239, 3046 24777271, 3047 19600372, 3048 39924461, 3049 2896720, 3050 1472185, 3051 ), 3052 u32x8::new( 3053 56389656, 3054 35980854, 3055 33172342, 3056 1370336, 3057 23707480, 3058 57654949, 3059 7850973, 3060 12655016, 3061 ), 3062 ])), 3063 CachedPoint(FieldElement2625x4([ 3064 u32x8::new( 3065 38372660, 3066 57101970, 3067 7044964, 3068 12732710, 3069 57535705, 3070 6043201, 3071 30858914, 3072 10946592, 3073 ), 3074 u32x8::new( 3075 21023468, 3076 6946992, 3077 26403324, 3078 23901823, 3079 35695559, 3080 23440687, 3081 4763891, 3082 6514074, 3083 ), 3084 u32x8::new( 3085 28662273, 3086 30933699, 3087 9352242, 3088 26354829, 3089 37402243, 3090 3145176, 3091 8770289, 3092 525937, 3093 ), 3094 u32x8::new( 3095 54933102, 3096 36695832, 3097 3281859, 3098 4755022, 3099 23043294, 3100 32794379, 3101 15618886, 3102 23602412, 3103 ), 3104 u32x8::new( 3105 9931565, 3106 29897140, 3107 2480737, 3108 24193701, 3109 7833615, 3110 2284939, 3111 893926, 3112 13421882, 3113 ), 3114 ])), 3115 CachedPoint(FieldElement2625x4([ 3116 u32x8::new( 3117 22917795, 3118 22088359, 3119 28978099, 3120 19794863, 3121 60542318, 3122 29878494, 3123 31053731, 3124 9080720, 3125 ), 3126 u32x8::new( 3127 23679072, 3128 52547035, 3129 28424916, 3130 20647332, 3131 4008761, 3132 28267029, 3133 12961289, 3134 1589095, 3135 ), 3136 u32x8::new( 3137 55616194, 3138 26678929, 3139 14998265, 3140 23274397, 3141 54625466, 3142 46244264, 3143 28627706, 3144 33030665, 3145 ), 3146 u32x8::new( 3147 11527330, 3148 6449415, 3149 26531607, 3150 3472938, 3151 41541592, 3152 62607682, 3153 19862690, 3154 20564723, 3155 ), 3156 u32x8::new( 3157 32843805, 3158 49066843, 3159 28425824, 3160 19521495, 3161 48792073, 3162 48242878, 3163 27392443, 3164 13175986, 3165 ), 3166 ])), 3167 CachedPoint(FieldElement2625x4([ 3168 u32x8::new( 3169 16185025, 3170 61537525, 3171 2961305, 3172 1492442, 3173 25123147, 3174 3095034, 3175 31896958, 3176 33089615, 3177 ), 3178 u32x8::new( 3179 64748157, 3180 18336595, 3181 16522231, 3182 25426312, 3183 65718949, 3184 35485695, 3185 30554083, 3186 10205918, 3187 ), 3188 u32x8::new( 3189 39626934, 3190 39271045, 3191 16420458, 3192 9826240, 3193 56483981, 3194 27128085, 3195 3783403, 3196 13360006, 3197 ), 3198 u32x8::new( 3199 30793778, 3200 66771960, 3201 17241420, 3202 6564573, 3203 61102581, 3204 29974476, 3205 32385512, 3206 9011754, 3207 ), 3208 u32x8::new( 3209 28068166, 3210 11862220, 3211 14323567, 3212 12380617, 3213 52090465, 3214 16029056, 3215 24495309, 3216 21409233, 3217 ), 3218 ])), 3219 CachedPoint(FieldElement2625x4([ 3220 u32x8::new( 3221 59411973, 3222 57437124, 3223 11695483, 3224 17586857, 3225 16108987, 3226 43449109, 3227 31098002, 3228 6248476, 3229 ), 3230 u32x8::new( 3231 42258047, 3232 61595931, 3233 29308533, 3234 11742653, 3235 43042345, 3236 27373650, 3237 30165249, 3238 21929989, 3239 ), 3240 u32x8::new( 3241 49907221, 3242 9620337, 3243 21888081, 3244 20981082, 3245 56288861, 3246 61562203, 3247 33223566, 3248 3582446, 3249 ), 3250 u32x8::new( 3251 57535017, 3252 41003416, 3253 22080416, 3254 14463796, 3255 65518565, 3256 18127889, 3257 24370863, 3258 33332664, 3259 ), 3260 u32x8::new( 3261 66655380, 3262 6430175, 3263 471782, 3264 11947673, 3265 30596400, 3266 18898659, 3267 15930721, 3268 4211851, 3269 ), 3270 ])), 3271 CachedPoint(FieldElement2625x4([ 3272 u32x8::new( 3273 6757410, 3274 65455566, 3275 13584784, 3276 11362173, 3277 10797127, 3278 24451471, 3279 19541370, 3280 29309435, 3281 ), 3282 u32x8::new( 3283 40360156, 3284 17685025, 3285 18326181, 3286 3846903, 3287 13693365, 3288 63049479, 3289 31900359, 3290 23385063, 3291 ), 3292 u32x8::new( 3293 52455038, 3294 57513503, 3295 22163311, 3296 27095042, 3297 48610726, 3298 66454160, 3299 12085341, 3300 26357004, 3301 ), 3302 u32x8::new( 3303 22097042, 3304 14063840, 3305 6705778, 3306 14342902, 3307 66139825, 3308 20702105, 3309 31279090, 3310 7495745, 3311 ), 3312 u32x8::new( 3313 27360710, 3314 49314837, 3315 18774847, 3316 7146436, 3317 37066216, 3318 42004961, 3319 22409916, 3320 10524446, 3321 ), 3322 ])), 3323 CachedPoint(FieldElement2625x4([ 3324 u32x8::new( 3325 1497507, 3326 33054449, 3327 11839906, 3328 2960428, 3329 40538463, 3330 18884538, 3331 25018820, 3332 4073970, 3333 ), 3334 u32x8::new( 3335 54484385, 3336 43640735, 3337 2808257, 3338 20710708, 3339 39840730, 3340 27222424, 3341 21783544, 3342 11848522, 3343 ), 3344 u32x8::new( 3345 45765237, 3346 48200555, 3347 9299019, 3348 9393151, 3349 34818188, 3350 56098995, 3351 13575233, 3352 21012731, 3353 ), 3354 u32x8::new( 3355 4265428, 3356 49627650, 3357 24960282, 3358 9425650, 3359 47883651, 3360 2797524, 3361 11853190, 3362 22877329, 3363 ), 3364 u32x8::new( 3365 25008173, 3366 64199503, 3367 380047, 3368 12107343, 3369 12329448, 3370 11914399, 3371 764281, 3372 29687002, 3373 ), 3374 ])), 3375 CachedPoint(FieldElement2625x4([ 3376 u32x8::new( 3377 35889734, 3378 23047226, 3379 4022841, 3380 7017445, 3381 7274086, 3382 53316179, 3383 25100176, 3384 15310676, 3385 ), 3386 u32x8::new( 3387 42409427, 3388 30270106, 3389 6823853, 3390 31551384, 3391 40645017, 3392 66489807, 3393 18021817, 3394 32669351, 3395 ), 3396 u32x8::new( 3397 39827134, 3398 43680850, 3399 28297996, 3400 20258133, 3401 26058742, 3402 52643238, 3403 22238331, 3404 21690533, 3405 ), 3406 u32x8::new( 3407 60808002, 3408 17499995, 3409 30042246, 3410 29310584, 3411 48219954, 3412 29389518, 3413 8680514, 3414 17844709, 3415 ), 3416 u32x8::new( 3417 6452896, 3418 50116553, 3419 9532047, 3420 26821214, 3421 44524351, 3422 50428429, 3423 21904953, 3424 12608048, 3425 ), 3426 ])), 3427 ]); 3428