Home | History | Annotate | Download | only in fiat
      1 // The MIT License (MIT)
      2 //
      3 // Copyright (c) 2015-2016 the fiat-crypto authors (see the AUTHORS file).
      4 //
      5 // Permission is hereby granted, free of charge, to any person obtaining a copy
      6 // of this software and associated documentation files (the "Software"), to deal
      7 // in the Software without restriction, including without limitation the rights
      8 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
      9 // copies of the Software, and to permit persons to whom the Software is
     10 // furnished to do so, subject to the following conditions:
     11 //
     12 // The above copyright notice and this permission notice shall be included in
     13 // all copies or substantial portions of the Software.
     14 //
     15 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     16 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     17 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
     18 // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
     19 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
     20 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
     21 // SOFTWARE.
     22 
     23 // This file is generated from
     24 //    ./make_curve25519_tables.py > curve25519_tables.h
     25 
     26 
     27 static const fe d = {{
     28 #if defined(BORINGSSL_CURVE25519_64BIT)
     29     929955233495203, 466365720129213, 1662059464998953, 2033849074728123,
     30     1442794654840575
     31 #else
     32     56195235, 13857412, 51736253, 6949390, 114729, 24766616, 60832955, 30306712,
     33     48412415, 21499315
     34 #endif
     35 }};
     36 
     37 static const fe sqrtm1 = {{
     38 #if defined(BORINGSSL_CURVE25519_64BIT)
     39     1718705420411056, 234908883556509, 2233514472574048, 2117202627021982,
     40     765476049583133
     41 #else
     42     34513072, 25610706, 9377949, 3500415, 12389472, 33281959, 41962654,
     43     31548777, 326685, 11406482
     44 #endif
     45 }};
     46 
     47 static const fe d2 = {{
     48 #if defined(BORINGSSL_CURVE25519_64BIT)
     49     1859910466990425, 932731440258426, 1072319116312658, 1815898335770999,
     50     633789495995903
     51 #else
     52     45281625, 27714825, 36363642, 13898781, 229458, 15978800, 54557047,
     53     27058993, 29715967, 9444199
     54 #endif
     55 }};
     56 
     57 #if defined(OPENSSL_SMALL)
     58 
     59 // This block of code replaces the standard base-point table with a much smaller
     60 // one. The standard table is 30,720 bytes while this one is just 960.
     61 //
     62 // This table contains 15 pairs of group elements, (x, y), where each field
     63 // element is serialised with |fe_tobytes|. If |i| is the index of the group
     64 // element then consider i+1 as a four-bit number: (i, i, i, i) (where i
     65 // is the most significant bit). The value of the group element is then:
     66 // (i2^192 + i2^128 + i2^64 + i)G, where G is the generator.
     67 static const uint8_t k25519SmallPrecomp[15 * 2 * 32] = {
     68     0x1a, 0xd5, 0x25, 0x8f, 0x60, 0x2d, 0x56, 0xc9, 0xb2, 0xa7, 0x25, 0x95,
     69     0x60, 0xc7, 0x2c, 0x69, 0x5c, 0xdc, 0xd6, 0xfd, 0x31, 0xe2, 0xa4, 0xc0,
     70     0xfe, 0x53, 0x6e, 0xcd, 0xd3, 0x36, 0x69, 0x21, 0x58, 0x66, 0x66, 0x66,
     71     0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66,
     72     0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66,
     73     0x66, 0x66, 0x66, 0x66, 0x02, 0xa2, 0xed, 0xf4, 0x8f, 0x6b, 0x0b, 0x3e,
     74     0xeb, 0x35, 0x1a, 0xd5, 0x7e, 0xdb, 0x78, 0x00, 0x96, 0x8a, 0xa0, 0xb4,
     75     0xcf, 0x60, 0x4b, 0xd4, 0xd5, 0xf9, 0x2d, 0xbf, 0x88, 0xbd, 0x22, 0x62,
     76     0x13, 0x53, 0xe4, 0x82, 0x57, 0xfa, 0x1e, 0x8f, 0x06, 0x2b, 0x90, 0xba,
     77     0x08, 0xb6, 0x10, 0x54, 0x4f, 0x7c, 0x1b, 0x26, 0xed, 0xda, 0x6b, 0xdd,
     78     0x25, 0xd0, 0x4e, 0xea, 0x42, 0xbb, 0x25, 0x03, 0xa2, 0xfb, 0xcc, 0x61,
     79     0x67, 0x06, 0x70, 0x1a, 0xc4, 0x78, 0x3a, 0xff, 0x32, 0x62, 0xdd, 0x2c,
     80     0xab, 0x50, 0x19, 0x3b, 0xf2, 0x9b, 0x7d, 0xb8, 0xfd, 0x4f, 0x29, 0x9c,
     81     0xa7, 0x91, 0xba, 0x0e, 0x46, 0x5e, 0x51, 0xfe, 0x1d, 0xbf, 0xe5, 0xe5,
     82     0x9b, 0x95, 0x0d, 0x67, 0xf8, 0xd1, 0xb5, 0x5a, 0xa1, 0x93, 0x2c, 0xc3,
     83     0xde, 0x0e, 0x97, 0x85, 0x2d, 0x7f, 0xea, 0xab, 0x3e, 0x47, 0x30, 0x18,
     84     0x24, 0xe8, 0xb7, 0x60, 0xae, 0x47, 0x80, 0xfc, 0xe5, 0x23, 0xe7, 0xc2,
     85     0xc9, 0x85, 0xe6, 0x98, 0xa0, 0x29, 0x4e, 0xe1, 0x84, 0x39, 0x2d, 0x95,
     86     0x2c, 0xf3, 0x45, 0x3c, 0xff, 0xaf, 0x27, 0x4c, 0x6b, 0xa6, 0xf5, 0x4b,
     87     0x11, 0xbd, 0xba, 0x5b, 0x9e, 0xc4, 0xa4, 0x51, 0x1e, 0xbe, 0xd0, 0x90,
     88     0x3a, 0x9c, 0xc2, 0x26, 0xb6, 0x1e, 0xf1, 0x95, 0x7d, 0xc8, 0x6d, 0x52,
     89     0xe6, 0x99, 0x2c, 0x5f, 0x9a, 0x96, 0x0c, 0x68, 0x29, 0xfd, 0xe2, 0xfb,
     90     0xe6, 0xbc, 0xec, 0x31, 0x08, 0xec, 0xe6, 0xb0, 0x53, 0x60, 0xc3, 0x8c,
     91     0xbe, 0xc1, 0xb3, 0x8a, 0x8f, 0xe4, 0x88, 0x2b, 0x55, 0xe5, 0x64, 0x6e,
     92     0x9b, 0xd0, 0xaf, 0x7b, 0x64, 0x2a, 0x35, 0x25, 0x10, 0x52, 0xc5, 0x9e,
     93     0x58, 0x11, 0x39, 0x36, 0x45, 0x51, 0xb8, 0x39, 0x93, 0xfc, 0x9d, 0x6a,
     94     0xbe, 0x58, 0xcb, 0xa4, 0x0f, 0x51, 0x3c, 0x38, 0x05, 0xca, 0xab, 0x43,
     95     0x63, 0x0e, 0xf3, 0x8b, 0x41, 0xa6, 0xf8, 0x9b, 0x53, 0x70, 0x80, 0x53,
     96     0x86, 0x5e, 0x8f, 0xe3, 0xc3, 0x0d, 0x18, 0xc8, 0x4b, 0x34, 0x1f, 0xd8,
     97     0x1d, 0xbc, 0xf2, 0x6d, 0x34, 0x3a, 0xbe, 0xdf, 0xd9, 0xf6, 0xf3, 0x89,
     98     0xa1, 0xe1, 0x94, 0x9f, 0x5d, 0x4c, 0x5d, 0xe9, 0xa1, 0x49, 0x92, 0xef,
     99     0x0e, 0x53, 0x81, 0x89, 0x58, 0x87, 0xa6, 0x37, 0xf1, 0xdd, 0x62, 0x60,
    100     0x63, 0x5a, 0x9d, 0x1b, 0x8c, 0xc6, 0x7d, 0x52, 0xea, 0x70, 0x09, 0x6a,
    101     0xe1, 0x32, 0xf3, 0x73, 0x21, 0x1f, 0x07, 0x7b, 0x7c, 0x9b, 0x49, 0xd8,
    102     0xc0, 0xf3, 0x25, 0x72, 0x6f, 0x9d, 0xed, 0x31, 0x67, 0x36, 0x36, 0x54,
    103     0x40, 0x92, 0x71, 0xe6, 0x11, 0x28, 0x11, 0xad, 0x93, 0x32, 0x85, 0x7b,
    104     0x3e, 0xb7, 0x3b, 0x49, 0x13, 0x1c, 0x07, 0xb0, 0x2e, 0x93, 0xaa, 0xfd,
    105     0xfd, 0x28, 0x47, 0x3d, 0x8d, 0xd2, 0xda, 0xc7, 0x44, 0xd6, 0x7a, 0xdb,
    106     0x26, 0x7d, 0x1d, 0xb8, 0xe1, 0xde, 0x9d, 0x7a, 0x7d, 0x17, 0x7e, 0x1c,
    107     0x37, 0x04, 0x8d, 0x2d, 0x7c, 0x5e, 0x18, 0x38, 0x1e, 0xaf, 0xc7, 0x1b,
    108     0x33, 0x48, 0x31, 0x00, 0x59, 0xf6, 0xf2, 0xca, 0x0f, 0x27, 0x1b, 0x63,
    109     0x12, 0x7e, 0x02, 0x1d, 0x49, 0xc0, 0x5d, 0x79, 0x87, 0xef, 0x5e, 0x7a,
    110     0x2f, 0x1f, 0x66, 0x55, 0xd8, 0x09, 0xd9, 0x61, 0x38, 0x68, 0xb0, 0x07,
    111     0xa3, 0xfc, 0xcc, 0x85, 0x10, 0x7f, 0x4c, 0x65, 0x65, 0xb3, 0xfa, 0xfa,
    112     0xa5, 0x53, 0x6f, 0xdb, 0x74, 0x4c, 0x56, 0x46, 0x03, 0xe2, 0xd5, 0x7a,
    113     0x29, 0x1c, 0xc6, 0x02, 0xbc, 0x59, 0xf2, 0x04, 0x75, 0x63, 0xc0, 0x84,
    114     0x2f, 0x60, 0x1c, 0x67, 0x76, 0xfd, 0x63, 0x86, 0xf3, 0xfa, 0xbf, 0xdc,
    115     0xd2, 0x2d, 0x90, 0x91, 0xbd, 0x33, 0xa9, 0xe5, 0x66, 0x0c, 0xda, 0x42,
    116     0x27, 0xca, 0xf4, 0x66, 0xc2, 0xec, 0x92, 0x14, 0x57, 0x06, 0x63, 0xd0,
    117     0x4d, 0x15, 0x06, 0xeb, 0x69, 0x58, 0x4f, 0x77, 0xc5, 0x8b, 0xc7, 0xf0,
    118     0x8e, 0xed, 0x64, 0xa0, 0xb3, 0x3c, 0x66, 0x71, 0xc6, 0x2d, 0xda, 0x0a,
    119     0x0d, 0xfe, 0x70, 0x27, 0x64, 0xf8, 0x27, 0xfa, 0xf6, 0x5f, 0x30, 0xa5,
    120     0x0d, 0x6c, 0xda, 0xf2, 0x62, 0x5e, 0x78, 0x47, 0xd3, 0x66, 0x00, 0x1c,
    121     0xfd, 0x56, 0x1f, 0x5d, 0x3f, 0x6f, 0xf4, 0x4c, 0xd8, 0xfd, 0x0e, 0x27,
    122     0xc9, 0x5c, 0x2b, 0xbc, 0xc0, 0xa4, 0xe7, 0x23, 0x29, 0x02, 0x9f, 0x31,
    123     0xd6, 0xe9, 0xd7, 0x96, 0xf4, 0xe0, 0x5e, 0x0b, 0x0e, 0x13, 0xee, 0x3c,
    124     0x09, 0xed, 0xf2, 0x3d, 0x76, 0x91, 0xc3, 0xa4, 0x97, 0xae, 0xd4, 0x87,
    125     0xd0, 0x5d, 0xf6, 0x18, 0x47, 0x1f, 0x1d, 0x67, 0xf2, 0xcf, 0x63, 0xa0,
    126     0x91, 0x27, 0xf8, 0x93, 0x45, 0x75, 0x23, 0x3f, 0xd1, 0xf1, 0xad, 0x23,
    127     0xdd, 0x64, 0x93, 0x96, 0x41, 0x70, 0x7f, 0xf7, 0xf5, 0xa9, 0x89, 0xa2,
    128     0x34, 0xb0, 0x8d, 0x1b, 0xae, 0x19, 0x15, 0x49, 0x58, 0x23, 0x6d, 0x87,
    129     0x15, 0x4f, 0x81, 0x76, 0xfb, 0x23, 0xb5, 0xea, 0xcf, 0xac, 0x54, 0x8d,
    130     0x4e, 0x42, 0x2f, 0xeb, 0x0f, 0x63, 0xdb, 0x68, 0x37, 0xa8, 0xcf, 0x8b,
    131     0xab, 0xf5, 0xa4, 0x6e, 0x96, 0x2a, 0xb2, 0xd6, 0xbe, 0x9e, 0xbd, 0x0d,
    132     0xb4, 0x42, 0xa9, 0xcf, 0x01, 0x83, 0x8a, 0x17, 0x47, 0x76, 0xc4, 0xc6,
    133     0x83, 0x04, 0x95, 0x0b, 0xfc, 0x11, 0xc9, 0x62, 0xb8, 0x0c, 0x76, 0x84,
    134     0xd9, 0xb9, 0x37, 0xfa, 0xfc, 0x7c, 0xc2, 0x6d, 0x58, 0x3e, 0xb3, 0x04,
    135     0xbb, 0x8c, 0x8f, 0x48, 0xbc, 0x91, 0x27, 0xcc, 0xf9, 0xb7, 0x22, 0x19,
    136     0x83, 0x2e, 0x09, 0xb5, 0x72, 0xd9, 0x54, 0x1c, 0x4d, 0xa1, 0xea, 0x0b,
    137     0xf1, 0xc6, 0x08, 0x72, 0x46, 0x87, 0x7a, 0x6e, 0x80, 0x56, 0x0a, 0x8a,
    138     0xc0, 0xdd, 0x11, 0x6b, 0xd6, 0xdd, 0x47, 0xdf, 0x10, 0xd9, 0xd8, 0xea,
    139     0x7c, 0xb0, 0x8f, 0x03, 0x00, 0x2e, 0xc1, 0x8f, 0x44, 0xa8, 0xd3, 0x30,
    140     0x06, 0x89, 0xa2, 0xf9, 0x34, 0xad, 0xdc, 0x03, 0x85, 0xed, 0x51, 0xa7,
    141     0x82, 0x9c, 0xe7, 0x5d, 0x52, 0x93, 0x0c, 0x32, 0x9a, 0x5b, 0xe1, 0xaa,
    142     0xca, 0xb8, 0x02, 0x6d, 0x3a, 0xd4, 0xb1, 0x3a, 0xf0, 0x5f, 0xbe, 0xb5,
    143     0x0d, 0x10, 0x6b, 0x38, 0x32, 0xac, 0x76, 0x80, 0xbd, 0xca, 0x94, 0x71,
    144     0x7a, 0xf2, 0xc9, 0x35, 0x2a, 0xde, 0x9f, 0x42, 0x49, 0x18, 0x01, 0xab,
    145     0xbc, 0xef, 0x7c, 0x64, 0x3f, 0x58, 0x3d, 0x92, 0x59, 0xdb, 0x13, 0xdb,
    146     0x58, 0x6e, 0x0a, 0xe0, 0xb7, 0x91, 0x4a, 0x08, 0x20, 0xd6, 0x2e, 0x3c,
    147     0x45, 0xc9, 0x8b, 0x17, 0x79, 0xe7, 0xc7, 0x90, 0x99, 0x3a, 0x18, 0x25,
    148 };
    149 
    150 #else
    151 
    152 // k25519Precomp[i][j] = (j+1)*256^i*B
    153 static const ge_precomp k25519Precomp[32][8] = {
    154     {
    155         {
    156             {{
    157 #if defined(BORINGSSL_CURVE25519_64BIT)
    158                 1288382639258501, 245678601348599, 269427782077623,
    159                 1462984067271730, 137412439391563
    160 #else
    161                 25967493, 19198397, 29566455, 3660896, 54414519, 4014786,
    162                 27544626, 21800161, 61029707, 2047604
    163 #endif
    164             }},
    165             {{
    166 #if defined(BORINGSSL_CURVE25519_64BIT)
    167                 62697248952638, 204681361388450, 631292143396476,
    168                 338455783676468, 1213667448819585
    169 #else
    170                 54563134, 934261, 64385954, 3049989, 66381436, 9406985,
    171                 12720692, 5043384, 19500929, 18085054
    172 #endif
    173             }},
    174             {{
    175 #if defined(BORINGSSL_CURVE25519_64BIT)
    176                 301289933810280, 1259582250014073, 1422107436869536,
    177                 796239922652654, 1953934009299142
    178 #else
    179                 58370664, 4489569, 9688441, 18769238, 10184608, 21191052,
    180                 29287918, 11864899, 42594502, 29115885
    181 #endif
    182             }},
    183         },
    184         {
    185             {{
    186 #if defined(BORINGSSL_CURVE25519_64BIT)
    187                 1380971894829527, 790832306631236, 2067202295274102,
    188                 1995808275510000, 1566530869037010
    189 #else
    190                 54292951, 20578084, 45527620, 11784319, 41753206, 30803714,
    191                 55390960, 29739860, 66750418, 23343128
    192 #endif
    193             }},
    194             {{
    195 #if defined(BORINGSSL_CURVE25519_64BIT)
    196                 463307831301544, 432984605774163, 1610641361907204,
    197                 750899048855000, 1894842303421586
    198 #else
    199                 45405608, 6903824, 27185491, 6451973, 37531140, 24000426,
    200                 51492312, 11189267, 40279186, 28235350
    201 #endif
    202             }},
    203             {{
    204 #if defined(BORINGSSL_CURVE25519_64BIT)
    205                 748439484463711, 1033211726465151, 1396005112841647,
    206                 1611506220286469, 1972177495910992
    207 #else
    208                 26966623, 11152617, 32442495, 15396054, 14353839, 20802097,
    209                 63980037, 24013313, 51636816, 29387734
    210 #endif
    211             }},
    212         },
    213         {
    214             {{
    215 #if defined(BORINGSSL_CURVE25519_64BIT)
    216                 1601611775252272, 1720807796594148, 1132070835939856,
    217                 1260455018889551, 2147779492816911
    218 #else
    219                 15636272, 23865875, 24204772, 25642034, 616976, 16869170,
    220                 27787599, 18782243, 28944399, 32004408
    221 #endif
    222             }},
    223             {{
    224 #if defined(BORINGSSL_CURVE25519_64BIT)
    225                 316559037616741, 2177824224946892, 1459442586438991,
    226                 1461528397712656, 751590696113597
    227 #else
    228                 16568933, 4717097, 55552716, 32452109, 15682895, 21747389,
    229                 16354576, 21778470, 7689661, 11199574
    230 #endif
    231             }},
    232             {{
    233 #if defined(BORINGSSL_CURVE25519_64BIT)
    234                 1850748884277385, 1200145853858453, 1068094770532492,
    235                 672251375690438, 1586055907191707
    236 #else
    237                 30464137, 27578307, 55329429, 17883566, 23220364, 15915852,
    238                 7512774, 10017326, 49359771, 23634074
    239 #endif
    240             }},
    241         },
    242         {
    243             {{
    244 #if defined(BORINGSSL_CURVE25519_64BIT)
    245                 934282339813791, 1846903124198670, 1172395437954843,
    246                 1007037127761661, 1830588347719256
    247 #else
    248                 50071967, 13921891, 10945806, 27521001, 27105051, 17470053,
    249                 38182653, 15006022, 3284568, 27277892
    250 #endif
    251             }},
    252             {{
    253 #if defined(BORINGSSL_CURVE25519_64BIT)
    254                 1694390458783935, 1735906047636159, 705069562067493,
    255                 648033061693059, 696214010414170
    256 #else
    257                 23599295, 25248385, 55915199, 25867015, 13236773, 10506355,
    258                 7464579, 9656445, 13059162, 10374397
    259 #endif
    260             }},
    261             {{
    262 #if defined(BORINGSSL_CURVE25519_64BIT)
    263                 1121406372216585, 192876649532226, 190294192191717,
    264                 1994165897297032, 2245000007398739
    265 #else
    266                 7798537, 16710257, 3033922, 2874086, 28997861, 2835604,
    267                 32406664, 29715387, 66467155, 33453106
    268 #endif
    269             }},
    270         },
    271         {
    272             {{
    273 #if defined(BORINGSSL_CURVE25519_64BIT)
    274                 769950342298419, 132954430919746, 844085933195555,
    275                 974092374476333, 726076285546016
    276 #else
    277                 10861363, 11473154, 27284546, 1981175, 37044515, 12577860,
    278                 32867885, 14515107, 51670560, 10819379
    279 #endif
    280             }},
    281             {{
    282 #if defined(BORINGSSL_CURVE25519_64BIT)
    283                 425251763115706, 608463272472562, 442562545713235,
    284                 837766094556764, 374555092627893
    285 #else
    286                 4708026, 6336745, 20377586, 9066809, 55836755, 6594695,
    287                 41455196, 12483687, 54440373, 5581305
    288 #endif
    289             }},
    290             {{
    291 #if defined(BORINGSSL_CURVE25519_64BIT)
    292                 1086255230780037, 274979815921559, 1960002765731872,
    293                 929474102396301, 1190409889297339
    294 #else
    295                 19563141, 16186464, 37722007, 4097518, 10237984, 29206317,
    296                 28542349, 13850243, 43430843, 17738489
    297 #endif
    298             }},
    299         },
    300         {
    301             {{
    302 #if defined(BORINGSSL_CURVE25519_64BIT)
    303                 1388594989461809, 316767091099457, 394298842192982,
    304                 1230079486801005, 1440737038838979
    305 #else
    306                 51736881, 20691677, 32573249, 4720197, 40672342, 5875510,
    307                 47920237, 18329612, 57289923, 21468654
    308 #endif
    309             }},
    310             {{
    311 #if defined(BORINGSSL_CURVE25519_64BIT)
    312                 7380825640100, 146210432690483, 304903576448906,
    313                 1198869323871120, 997689833219095
    314 #else
    315                 58559652, 109982, 15149363, 2178705, 22900618, 4543417, 3044240,
    316                 17864545, 1762327, 14866737
    317 #endif
    318             }},
    319             {{
    320 #if defined(BORINGSSL_CURVE25519_64BIT)
    321                 1181317918772081, 114573476638901, 262805072233344,
    322                 265712217171332, 294181933805782
    323 #else
    324                 48909169, 17603008, 56635573, 1707277, 49922944, 3916100,
    325                 38872452, 3959420, 27914454, 4383652
    326 #endif
    327             }},
    328         },
    329         {
    330             {{
    331 #if defined(BORINGSSL_CURVE25519_64BIT)
    332                 665000864555967, 2065379846933859, 370231110385876,
    333                 350988370788628, 1233371373142985
    334 #else
    335                 5153727, 9909285, 1723747, 30776558, 30523604, 5516873,
    336                 19480852, 5230134, 43156425, 18378665
    337 #endif
    338             }},
    339             {{
    340 #if defined(BORINGSSL_CURVE25519_64BIT)
    341                 2019367628972465, 676711900706637, 110710997811333,
    342                 1108646842542025, 517791959672113
    343 #else
    344                 36839857, 30090922, 7665485, 10083793, 28475525, 1649722,
    345                 20654025, 16520125, 30598449, 7715701
    346 #endif
    347             }},
    348             {{
    349 #if defined(BORINGSSL_CURVE25519_64BIT)
    350                 965130719900578, 247011430587952, 526356006571389,
    351                 91986625355052, 2157223321444601
    352 #else
    353                 28881826, 14381568, 9657904, 3680757, 46927229, 7843315,
    354                 35708204, 1370707, 29794553, 32145132
    355 #endif
    356             }},
    357         },
    358         {
    359             {{
    360 #if defined(BORINGSSL_CURVE25519_64BIT)
    361                 2068619540119183, 1966274918058806, 957728544705549,
    362                 729906502578991, 159834893065166
    363 #else
    364                 14499471, 30824833, 33917750, 29299779, 28494861, 14271267,
    365                 30290735, 10876454, 33954766, 2381725
    366 #endif
    367             }},
    368             {{
    369 #if defined(BORINGSSL_CURVE25519_64BIT)
    370                 2073601412052185, 31021124762708, 264500969797082,
    371                 248034690651703, 1030252227928288
    372 #else
    373                 59913433, 30899068, 52378708, 462250, 39384538, 3941371,
    374                 60872247, 3696004, 34808032, 15351954
    375 #endif
    376             }},
    377             {{
    378 #if defined(BORINGSSL_CURVE25519_64BIT)
    379                 551790716293402, 1989538725166328, 801169423371717,
    380                 2052451893578887, 678432056995012
    381 #else
    382                 27431194, 8222322, 16448760, 29646437, 48401861, 11938354,
    383                 34147463, 30583916, 29551812, 10109425
    384 #endif
    385             }},
    386         },
    387     },
    388     {
    389         {
    390             {{
    391 #if defined(BORINGSSL_CURVE25519_64BIT)
    392                 1368953770187805, 790347636712921, 437508475667162,
    393                 2142576377050580, 1932081720066286
    394 #else
    395                 53451805, 20399000, 35825113, 11777097, 21447386, 6519384,
    396                 64730580, 31926875, 10092782, 28790261
    397 #endif
    398             }},
    399             {{
    400 #if defined(BORINGSSL_CURVE25519_64BIT)
    401                 953638594433374, 1092333936795051, 1419774766716690,
    402                 805677984380077, 859228993502513
    403 #else
    404                 27939166, 14210322, 4677035, 16277044, 44144402, 21156292,
    405                 34600109, 12005537, 49298737, 12803509
    406 #endif
    407             }},
    408             {{
    409 #if defined(BORINGSSL_CURVE25519_64BIT)
    410                 1200766035879111, 20142053207432, 1465634435977050,
    411                 1645256912097844, 295121984874596
    412 #else
    413                 17228999, 17892808, 65875336, 300139, 65883994, 21839654,
    414                 30364212, 24516238, 18016356, 4397660
    415 #endif
    416             }},
    417         },
    418         {
    419             {{
    420 #if defined(BORINGSSL_CURVE25519_64BIT)
    421                 1735718747031557, 1248237894295956, 1204753118328107,
    422                 976066523550493, 65943769534592
    423 #else
    424                 56150021, 25864224, 4776340, 18600194, 27850027, 17952220,
    425                 40489757, 14544524, 49631360, 982638
    426 #endif
    427             }},
    428             {{
    429 #if defined(BORINGSSL_CURVE25519_64BIT)
    430                 1060098822528990, 1586825862073490, 212301317240126,
    431                 1975302711403555, 666724059764335
    432 #else
    433                 29253598, 15796703, 64244882, 23645547, 10057022, 3163536,
    434                 7332899, 29434304, 46061167, 9934962
    435 #endif
    436             }},
    437             {{
    438 #if defined(BORINGSSL_CURVE25519_64BIT)
    439                 1091990273418756, 1572899409348578, 80968014455247,
    440                 306009358661350, 1520450739132526
    441 #else
    442                 5793284, 16271923, 42977250, 23438027, 29188559, 1206517,
    443                 52360934, 4559894, 36984942, 22656481
    444 #endif
    445             }},
    446         },
    447         {
    448             {{
    449 #if defined(BORINGSSL_CURVE25519_64BIT)
    450                 1480517209436112, 1511153322193952, 1244343858991172,
    451                 304788150493241, 369136856496443
    452 #else
    453                 39464912, 22061425, 16282656, 22517939, 28414020, 18542168,
    454                 24191033, 4541697, 53770555, 5500567
    455 #endif
    456             }},
    457             {{
    458 #if defined(BORINGSSL_CURVE25519_64BIT)
    459                 2151330273626164, 762045184746182, 1688074332551515,
    460                 823046109005759, 907602769079491
    461 #else
    462                 12650548, 32057319, 9052870, 11355358, 49428827, 25154267,
    463                 49678271, 12264342, 10874051, 13524335
    464 #endif
    465             }},
    466             {{
    467 #if defined(BORINGSSL_CURVE25519_64BIT)
    468                 2047386910586836, 168470092900250, 1552838872594810,
    469                 340951180073789, 360819374702533
    470 #else
    471                 25556948, 30508442, 714650, 2510400, 23394682, 23139102,
    472                 33119037, 5080568, 44580805, 5376627
    473 #endif
    474             }},
    475         },
    476         {
    477             {{
    478 #if defined(BORINGSSL_CURVE25519_64BIT)
    479                 1982622644432056, 2014393600336956, 128909208804214,
    480                 1617792623929191, 105294281913815
    481 #else
    482                 41020600, 29543379, 50095164, 30016803, 60382070, 1920896,
    483                 44787559, 24106988, 4535767, 1569007
    484 #endif
    485             }},
    486             {{
    487 #if defined(BORINGSSL_CURVE25519_64BIT)
    488                 980234343912898, 1712256739246056, 588935272190264,
    489                 204298813091998, 841798321043288
    490 #else
    491                 64853442, 14606629, 45416424, 25514613, 28430648, 8775819,
    492                 36614302, 3044289, 31848280, 12543772
    493 #endif
    494             }},
    495             {{
    496 #if defined(BORINGSSL_CURVE25519_64BIT)
    497                 197561292938973, 454817274782871, 1963754960082318,
    498                 2113372252160468, 971377527342673
    499 #else
    500                 45080285, 2943892, 35251351, 6777305, 13784462, 29262229,
    501                 39731668, 31491700, 7718481, 14474653
    502 #endif
    503             }},
    504         },
    505         {
    506             {{
    507 #if defined(BORINGSSL_CURVE25519_64BIT)
    508                 164699448829328, 3127451757672, 1199504971548753,
    509                 1766155447043652, 1899238924683527
    510 #else
    511                 2385296, 2454213, 44477544, 46602, 62670929, 17874016, 656964,
    512                 26317767, 24316167, 28300865
    513 #endif
    514             }},
    515             {{
    516 #if defined(BORINGSSL_CURVE25519_64BIT)
    517                 732262946680281, 1674412764227063, 2182456405662809,
    518                 1350894754474250, 558458873295247
    519 #else
    520                 13741529, 10911568, 33875447, 24950694, 46931033, 32521134,
    521                 33040650, 20129900, 46379407, 8321685
    522 #endif
    523             }},
    524             {{
    525 #if defined(BORINGSSL_CURVE25519_64BIT)
    526                 2103305098582922, 1960809151316468, 715134605001343,
    527                 1454892949167181, 40827143824949
    528 #else
    529                 21060490, 31341688, 15712756, 29218333, 1639039, 10656336,
    530                 23845965, 21679594, 57124405, 608371
    531 #endif
    532             }},
    533         },
    534         {
    535             {{
    536 #if defined(BORINGSSL_CURVE25519_64BIT)
    537                 1239289043050212, 1744654158124578, 758702410031698,
    538                 1796762995074688, 1603056663766
    539 #else
    540                 53436132, 18466845, 56219170, 25997372, 61071954, 11305546,
    541                 1123968, 26773855, 27229398, 23887
    542 #endif
    543             }},
    544             {{
    545 #if defined(BORINGSSL_CURVE25519_64BIT)
    546                 2232056027107988, 987343914584615, 2115594492994461,
    547                 1819598072792159, 1119305654014850
    548 #else
    549                 43864724, 33260226, 55364135, 14712570, 37643165, 31524814,
    550                 12797023, 27114124, 65475458, 16678953
    551 #endif
    552             }},
    553             {{
    554 #if defined(BORINGSSL_CURVE25519_64BIT)
    555                 320153677847348, 939613871605645, 641883205761567,
    556                 1930009789398224, 329165806634126
    557 #else
    558                 37608244, 4770661, 51054477, 14001337, 7830047, 9564805,
    559                 65600720, 28759386, 49939598, 4904952
    560 #endif
    561             }},
    562         },
    563         {
    564             {{
    565 #if defined(BORINGSSL_CURVE25519_64BIT)
    566                 980930490474130, 1242488692177893, 1251446316964684,
    567                 1086618677993530, 1961430968465772
    568 #else
    569                 24059538, 14617003, 19037157, 18514524, 19766092, 18648003,
    570                 5169210, 16191880, 2128236, 29227599
    571 #endif
    572             }},
    573             {{
    574 #if defined(BORINGSSL_CURVE25519_64BIT)
    575                 276821765317453, 1536835591188030, 1305212741412361,
    576                 61473904210175, 2051377036983058
    577 #else
    578                 50127693, 4124965, 58568254, 22900634, 30336521, 19449185,
    579                 37302527, 916032, 60226322, 30567899
    580 #endif
    581             }},
    582             {{
    583 #if defined(BORINGSSL_CURVE25519_64BIT)
    584                 833449923882501, 1750270368490475, 1123347002068295,
    585                 185477424765687, 278090826653186
    586 #else
    587                 44477957, 12419371, 59974635, 26081060, 50629959, 16739174,
    588                 285431, 2763829, 15736322, 4143876
    589 #endif
    590             }},
    591         },
    592         {
    593             {{
    594 #if defined(BORINGSSL_CURVE25519_64BIT)
    595                 794524995833413, 1849907304548286, 53348672473145,
    596                 1272368559505217, 1147304168324779
    597 #else
    598                 2379333, 11839345, 62998462, 27565766, 11274297, 794957, 212801,
    599                 18959769, 23527083, 17096164
    600 #endif
    601             }},
    602             {{
    603 #if defined(BORINGSSL_CURVE25519_64BIT)
    604                 1504846112759364, 1203096289004681, 562139421471418,
    605                 274333017451844, 1284344053775441
    606 #else
    607                 33431108, 22423954, 49269897, 17927531, 8909498, 8376530,
    608                 34483524, 4087880, 51919953, 19138217
    609 #endif
    610             }},
    611             {{
    612 #if defined(BORINGSSL_CURVE25519_64BIT)
    613                 483048732424432, 2116063063343382, 30120189902313,
    614                 292451576741007, 1156379271702225
    615 #else
    616                 1767664, 7197987, 53903638, 31531796, 54017513, 448825, 5799055,
    617                 4357868, 62334673, 17231393
    618 #endif
    619             }},
    620         },
    621     },
    622     {
    623         {
    624             {{
    625 #if defined(BORINGSSL_CURVE25519_64BIT)
    626                 928372153029038, 2147692869914564, 1455665844462196,
    627                 1986737809425946, 185207050258089
    628 #else
    629                 6721966, 13833823, 43585476, 32003117, 26354292, 21691111,
    630                 23365146, 29604700, 7390889, 2759800
    631 #endif
    632             }},
    633             {{
    634 #if defined(BORINGSSL_CURVE25519_64BIT)
    635                 137732961814206, 706670923917341, 1387038086865771,
    636                 1965643813686352, 1384777115696347
    637 #else
    638                 4409022, 2052381, 23373853, 10530217, 7676779, 20668478,
    639                 21302352, 29290375, 1244379, 20634787
    640 #endif
    641             }},
    642             {{
    643 #if defined(BORINGSSL_CURVE25519_64BIT)
    644                 481144981981577, 2053319313589856, 2065402289827512,
    645                 617954271490316, 1106602634668125
    646 #else
    647                 62687625, 7169618, 4982368, 30596842, 30256824, 30776892,
    648                 14086412, 9208236, 15886429, 16489664
    649 #endif
    650             }},
    651         },
    652         {
    653             {{
    654 #if defined(BORINGSSL_CURVE25519_64BIT)
    655                 696298019648792, 893299659040895, 1148636718636009,
    656                 26734077349617, 2203955659340681
    657 #else
    658                 1996056, 10375649, 14346367, 13311202, 60234729, 17116020,
    659                 53415665, 398368, 36502409, 32841498
    660 #endif
    661             }},
    662             {{
    663 #if defined(BORINGSSL_CURVE25519_64BIT)
    664                 657390353372855, 998499966885562, 991893336905797,
    665                 810470207106761, 343139804608786
    666 #else
    667                 41801399, 9795879, 64331450, 14878808, 33577029, 14780362,
    668                 13348553, 12076947, 36272402, 5113181
    669 #endif
    670             }},
    671             {{
    672 #if defined(BORINGSSL_CURVE25519_64BIT)
    673                 791736669492960, 934767652997115, 824656780392914,
    674                 1759463253018643, 361530362383518
    675 #else
    676                 49338080, 11797795, 31950843, 13929123, 41220562, 12288343,
    677                 36767763, 26218045, 13847710, 5387222
    678 #endif
    679             }},
    680         },
    681         {
    682             {{
    683 #if defined(BORINGSSL_CURVE25519_64BIT)
    684                 2022541353055597, 2094700262587466, 1551008075025686,
    685                 242785517418164, 695985404963562
    686 #else
    687                 48526701, 30138214, 17824842, 31213466, 22744342, 23111821,
    688                 8763060, 3617786, 47508202, 10370990
    689 #endif
    690             }},
    691             {{
    692 #if defined(BORINGSSL_CURVE25519_64BIT)
    693                 1287487199965223, 2215311941380308, 1552928390931986,
    694                 1664859529680196, 1125004975265243
    695 #else
    696                 20246567, 19185054, 22358228, 33010720, 18507282, 23140436,
    697                 14554436, 24808340, 32232923, 16763880
    698 #endif
    699             }},
    700             {{
    701 #if defined(BORINGSSL_CURVE25519_64BIT)
    702                 677434665154918, 989582503122485, 1817429540898386,
    703                 1052904935475344, 1143826298169798
    704 #else
    705                 9648486, 10094563, 26416693, 14745928, 36734546, 27081810,
    706                 11094160, 15689506, 3140038, 17044340
    707 #endif
    708             }},
    709         },
    710         {
    711             {{
    712 #if defined(BORINGSSL_CURVE25519_64BIT)
    713                 367266328308408, 318431188922404, 695629353755355,
    714                 634085657580832, 24581612564426
    715 #else
    716                 50948792, 5472694, 31895588, 4744994, 8823515, 10365685,
    717                 39884064, 9448612, 38334410, 366294
    718 #endif
    719             }},
    720             {{
    721 #if defined(BORINGSSL_CURVE25519_64BIT)
    722                 773360688841258, 1815381330538070, 363773437667376,
    723                 539629987070205, 783280434248437
    724 #else
    725                 19153450, 11523972, 56012374, 27051289, 42461232, 5420646,
    726                 28344573, 8041113, 719605, 11671788
    727 #endif
    728             }},
    729             {{
    730 #if defined(BORINGSSL_CURVE25519_64BIT)
    731                 180820816194166, 168937968377394, 748416242794470,
    732                 1227281252254508, 1567587861004268
    733 #else
    734                 8678006, 2694440, 60300850, 2517371, 4964326, 11152271,
    735                 51675948, 18287915, 27000812, 23358879
    736 #endif
    737             }},
    738         },
    739         {
    740             {{
    741 #if defined(BORINGSSL_CURVE25519_64BIT)
    742                 478775558583645, 2062896624554807, 699391259285399,
    743                 358099408427873, 1277310261461761
    744 #else
    745                 51950941, 7134311, 8639287, 30739555, 59873175, 10421741,
    746                 564065, 5336097, 6750977, 19033406
    747 #endif
    748             }},
    749             {{
    750 #if defined(BORINGSSL_CURVE25519_64BIT)
    751                 1984740906540026, 1079164179400229, 1056021349262661,
    752                 1659958556483663, 1088529069025527
    753 #else
    754                 11836410, 29574944, 26297893, 16080799, 23455045, 15735944,
    755                 1695823, 24735310, 8169719, 16220347
    756 #endif
    757             }},
    758             {{
    759 #if defined(BORINGSSL_CURVE25519_64BIT)
    760                 580736401511151, 1842931091388998, 1177201471228238,
    761                 2075460256527244, 1301133425678027
    762 #else
    763                 48993007, 8653646, 17578566, 27461813, 59083086, 17541668,
    764                 55964556, 30926767, 61118155, 19388398
    765 #endif
    766             }},
    767         },
    768         {
    769             {{
    770 #if defined(BORINGSSL_CURVE25519_64BIT)
    771                 1515728832059182, 1575261009617579, 1510246567196186,
    772                 191078022609704, 116661716289141
    773 #else
    774                 43800366, 22586119, 15213227, 23473218, 36255258, 22504427,
    775                 27884328, 2847284, 2655861, 1738395
    776 #endif
    777             }},
    778             {{
    779 #if defined(BORINGSSL_CURVE25519_64BIT)
    780                 1295295738269652, 1714742313707026, 545583042462581,
    781                 2034411676262552, 1513248090013606
    782 #else
    783                 39571412, 19301410, 41772562, 25551651, 57738101, 8129820,
    784                 21651608, 30315096, 48021414, 22549153
    785 #endif
    786             }},
    787             {{
    788 #if defined(BORINGSSL_CURVE25519_64BIT)
    789                 230710545179830, 30821514358353, 760704303452229,
    790                 390668103790604, 573437871383156
    791 #else
    792                 1533110, 3437855, 23735889, 459276, 29970501, 11335377,
    793                 26030092, 5821408, 10478196, 8544890
    794 #endif
    795             }},
    796         },
    797         {
    798             {{
    799 #if defined(BORINGSSL_CURVE25519_64BIT)
    800                 1169380107545646, 263167233745614, 2022901299054448,
    801                 819900753251120, 2023898464874585
    802 #else
    803                 32173102, 17425121, 24896206, 3921497, 22579056, 30143578,
    804                 19270448, 12217473, 17789017, 30158437
    805 #endif
    806             }},
    807             {{
    808 #if defined(BORINGSSL_CURVE25519_64BIT)
    809                 2102254323485823, 1570832666216754, 34696906544624,
    810                 1993213739807337, 70638552271463
    811 #else
    812                 36555903, 31326030, 51530034, 23407230, 13243888, 517024,
    813                 15479401, 29701199, 30460519, 1052596
    814 #endif
    815             }},
    816             {{
    817 #if defined(BORINGSSL_CURVE25519_64BIT)
    818                 894132856735058, 548675863558441, 845349339503395,
    819                 1942269668326667, 1615682209874691
    820 #else
    821                 55493970, 13323617, 32618793, 8175907, 51878691, 12596686,
    822                 27491595, 28942073, 3179267, 24075541
    823 #endif
    824             }},
    825         },
    826         {
    827             {{
    828 #if defined(BORINGSSL_CURVE25519_64BIT)
    829                 1287670217537834, 1222355136884920, 1846481788678694,
    830                 1150426571265110, 1613523400722047
    831 #else
    832                 31947050, 19187781, 62468280, 18214510, 51982886, 27514722,
    833                 52352086, 17142691, 19072639, 24043372
    834 #endif
    835             }},
    836             {{
    837 #if defined(BORINGSSL_CURVE25519_64BIT)
    838                 793388516527298, 1315457083650035, 1972286999342417,
    839                 1901825953052455, 338269477222410
    840 #else
    841                 11685058, 11822410, 3158003, 19601838, 33402193, 29389366,
    842                 5977895, 28339415, 473098, 5040608
    843 #endif
    844             }},
    845             {{
    846 #if defined(BORINGSSL_CURVE25519_64BIT)
    847                 550201530671806, 778605267108140, 2063911101902983,
    848                 115500557286349, 2041641272971022
    849 #else
    850                 46817982, 8198641, 39698732, 11602122, 1290375, 30754672,
    851                 28326861, 1721092, 47550222, 30422825
    852 #endif
    853             }},
    854         },
    855     },
    856     {
    857         {
    858             {{
    859 #if defined(BORINGSSL_CURVE25519_64BIT)
    860                 717255318455100, 519313764361315, 2080406977303708,
    861                 541981206705521, 774328150311600
    862 #else
    863                 7881532, 10687937, 7578723, 7738378, 48157852, 31000479,
    864                 21820785, 8076149, 39240368, 11538388
    865 #endif
    866             }},
    867             {{
    868 #if defined(BORINGSSL_CURVE25519_64BIT)
    869                 261715221532238, 1795354330069993, 1496878026850283,
    870                 499739720521052, 389031152673770
    871 #else
    872                 47173198, 3899860, 18283497, 26752864, 51380203, 22305220,
    873                 8754524, 7446702, 61432810, 5797015
    874 #endif
    875             }},
    876             {{
    877 #if defined(BORINGSSL_CURVE25519_64BIT)
    878                 1997217696294013, 1717306351628065, 1684313917746180,
    879                 1644426076011410, 1857378133465451
    880 #else
    881                 55813245, 29760862, 51326753, 25589858, 12708868, 25098233,
    882                 2014098, 24503858, 64739691, 27677090
    883 #endif
    884             }},
    885         },
    886         {
    887             {{
    888 #if defined(BORINGSSL_CURVE25519_64BIT)
    889                 1475434724792648, 76931896285979, 1116729029771667,
    890                 2002544139318042, 725547833803938
    891 #else
    892                 44636488, 21985690, 39426843, 1146374, 18956691, 16640559,
    893                 1192730, 29840233, 15123618, 10811505
    894 #endif
    895             }},
    896             {{
    897 #if defined(BORINGSSL_CURVE25519_64BIT)
    898                 2022306639183567, 726296063571875, 315345054448644,
    899                 1058733329149221, 1448201136060677
    900 #else
    901                 14352079, 30134717, 48166819, 10822654, 32750596, 4699007,
    902                 67038501, 15776355, 38222085, 21579878
    903 #endif
    904             }},
    905             {{
    906 #if defined(BORINGSSL_CURVE25519_64BIT)
    907                 1710065158525665, 1895094923036397, 123988286168546,
    908                 1145519900776355, 1607510767693874
    909 #else
    910                 38867681, 25481956, 62129901, 28239114, 29416930, 1847569,
    911                 46454691, 17069576, 4714546, 23953777
    912 #endif
    913             }},
    914         },
    915         {
    916             {{
    917 #if defined(BORINGSSL_CURVE25519_64BIT)
    918                 561605375422540, 1071733543815037, 131496498800990,
    919                 1946868434569999, 828138133964203
    920 #else
    921                 15200332, 8368572, 19679101, 15970074, 35236190, 1959450,
    922                 24611599, 29010600, 55362987, 12340219
    923 #endif
    924             }},
    925             {{
    926 #if defined(BORINGSSL_CURVE25519_64BIT)
    927                 1548495173745801, 442310529226540, 998072547000384,
    928                 553054358385281, 644824326376171
    929 #else
    930                 12876937, 23074376, 33134380, 6590940, 60801088, 14872439,
    931                 9613953, 8241152, 15370987, 9608631
    932 #endif
    933             }},
    934             {{
    935 #if defined(BORINGSSL_CURVE25519_64BIT)
    936                 1445526537029440, 2225519789662536, 914628859347385,
    937                 1064754194555068, 1660295614401091
    938 #else
    939                 62965568, 21540023, 8446280, 33162829, 4407737, 13629032,
    940                 59383996, 15866073, 38898243, 24740332
    941 #endif
    942             }},
    943         },
    944         {
    945             {{
    946 #if defined(BORINGSSL_CURVE25519_64BIT)
    947                 1199690223111956, 24028135822341, 66638289244341,
    948                 57626156285975, 565093967979607
    949 #else
    950                 26660628, 17876777, 8393733, 358047, 59707573, 992987, 43204631,
    951                 858696, 20571223, 8420556
    952 #endif
    953             }},
    954             {{
    955 #if defined(BORINGSSL_CURVE25519_64BIT)
    956                 876926774220824, 554618976488214, 1012056309841565,
    957                 839961821554611, 1414499340307677
    958 #else
    959                 14620696, 13067227, 51661590, 8264466, 14106269, 15080814,
    960                 33531827, 12516406, 45534429, 21077682
    961 #endif
    962             }},
    963             {{
    964 #if defined(BORINGSSL_CURVE25519_64BIT)
    965                 703047626104145, 1266841406201770, 165556500219173,
    966                 486991595001879, 1011325891650656
    967 #else
    968                 236881, 10476226, 57258, 18877408, 6472997, 2466984, 17258519,
    969                 7256740, 8791136, 15069930
    970 #endif
    971             }},
    972         },
    973         {
    974             {{
    975 #if defined(BORINGSSL_CURVE25519_64BIT)
    976                 1622861044480487, 1156394801573634, 1869132565415504,
    977                 327103985777730, 2095342781472284
    978 #else
    979                 1276391, 24182514, 22949634, 17231625, 43615824, 27852245,
    980                 14711874, 4874229, 36445724, 31223040
    981 #endif
    982             }},
    983             {{
    984 #if defined(BORINGSSL_CURVE25519_64BIT)
    985                 334886927423922, 489511099221528, 129160865966726,
    986                 1720809113143481, 619700195649254
    987 #else
    988                 5855666, 4990204, 53397016, 7294283, 59304582, 1924646,
    989                 65685689, 25642053, 34039526, 9234252
    990 #endif
    991             }},
    992             {{
    993 #if defined(BORINGSSL_CURVE25519_64BIT)
    994                 1646545795166119, 1758370782583567, 714746174550637,
    995                 1472693650165135, 898994790308209
    996 #else
    997                 20590503, 24535444, 31529743, 26201766, 64402029, 10650547,
    998                 31559055, 21944845, 18979185, 13396066
    999 #endif
   1000             }},
   1001         },
   1002         {
   1003             {{
   1004 #if defined(BORINGSSL_CURVE25519_64BIT)
   1005                 333403773039279, 295772542452938, 1693106465353610,
   1006                 912330357530760, 471235657950362
   1007 #else
   1008                 24474287, 4968103, 22267082, 4407354, 24063882, 25229252,
   1009                 48291976, 13594781, 33514650, 7021958
   1010 #endif
   1011             }},
   1012             {{
   1013 #if defined(BORINGSSL_CURVE25519_64BIT)
   1014                 1811196219982022, 1068969825533602, 289602974833439,
   1015                 1988956043611592, 863562343398367
   1016 #else
   1017                 55541958, 26988926, 45743778, 15928891, 40950559, 4315420,
   1018                 41160136, 29637754, 45628383, 12868081
   1019 #endif
   1020             }},
   1021             {{
   1022 #if defined(BORINGSSL_CURVE25519_64BIT)
   1023                 906282429780072, 2108672665779781, 432396390473936,
   1024                 150625823801893, 1708930497638539
   1025 #else
   1026                 38473832, 13504660, 19988037, 31421671, 21078224, 6443208,
   1027                 45662757, 2244499, 54653067, 25465048
   1028 #endif
   1029             }},
   1030         },
   1031         {
   1032             {{
   1033 #if defined(BORINGSSL_CURVE25519_64BIT)
   1034                 925664675702328, 21416848568684, 1831436641861340,
   1035                 601157008940113, 371818055044496
   1036 #else
   1037                 36513336, 13793478, 61256044, 319135, 41385692, 27290532,
   1038                 33086545, 8957937, 51875216, 5540520
   1039 #endif
   1040             }},
   1041             {{
   1042 #if defined(BORINGSSL_CURVE25519_64BIT)
   1043                 1479786007267725, 1738881859066675, 68646196476567,
   1044                 2146507056100328, 1247662817535471
   1045 #else
   1046                 55478669, 22050529, 58989363, 25911358, 2620055, 1022908,
   1047                 43398120, 31985447, 50980335, 18591624
   1048 #endif
   1049             }},
   1050             {{
   1051 #if defined(BORINGSSL_CURVE25519_64BIT)
   1052                 52035296774456, 939969390708103, 312023458773250,
   1053                 59873523517659, 1231345905848899
   1054 #else
   1055                 23152952, 775386, 27395463, 14006635, 57407746, 4649511,
   1056                 1689819, 892185, 55595587, 18348483
   1057 #endif
   1058             }},
   1059         },
   1060         {
   1061             {{
   1062 #if defined(BORINGSSL_CURVE25519_64BIT)
   1063                 643355106415761, 290186807495774, 2013561737429023,
   1064                 319648069511546, 393736678496162
   1065 #else
   1066                 9770129, 9586738, 26496094, 4324120, 1556511, 30004408,
   1067                 27453818, 4763127, 47929250, 5867133
   1068 #endif
   1069             }},
   1070             {{
   1071 #if defined(BORINGSSL_CURVE25519_64BIT)
   1072                 129358342392716, 1932811617704777, 1176749390799681,
   1073                 398040349861790, 1170779668090425
   1074 #else
   1075                 34343820, 1927589, 31726409, 28801137, 23962433, 17534932,
   1076                 27846558, 5931263, 37359161, 17445976
   1077 #endif
   1078             }},
   1079             {{
   1080 #if defined(BORINGSSL_CURVE25519_64BIT)
   1081                 2051980782668029, 121859921510665, 2048329875753063,
   1082                 1235229850149665, 519062146124755
   1083 #else
   1084                 27461885, 30576896, 22380809, 1815854, 44075111, 30522493,
   1085                 7283489, 18406359, 47582163, 7734628
   1086 #endif
   1087             }},
   1088         },
   1089     },
   1090     {
   1091         {
   1092             {{
   1093 #if defined(BORINGSSL_CURVE25519_64BIT)
   1094                 1608170971973096, 415809060360428, 1350468408164766,
   1095                 2038620059057678, 1026904485989112
   1096 #else
   1097                 59098600, 23963614, 55988460, 6196037, 29344158, 20123547,
   1098                 7585294, 30377806, 18549496, 15302069
   1099 #endif
   1100             }},
   1101             {{
   1102 #if defined(BORINGSSL_CURVE25519_64BIT)
   1103                 1837656083115103, 1510134048812070, 906263674192061,
   1104                 1821064197805734, 565375124676301
   1105 #else
   1106                 34450527, 27383209, 59436070, 22502750, 6258877, 13504381,
   1107                 10458790, 27135971, 58236621, 8424745
   1108 #endif
   1109             }},
   1110             {{
   1111 #if defined(BORINGSSL_CURVE25519_64BIT)
   1112                 578027192365650, 2034800251375322, 2128954087207123,
   1113                 478816193810521, 2196171989962750
   1114 #else
   1115                 24687186, 8613276, 36441818, 30320886, 1863891, 31723888,
   1116                 19206233, 7134917, 55824382, 32725512
   1117 #endif
   1118             }},
   1119         },
   1120         {
   1121             {{
   1122 #if defined(BORINGSSL_CURVE25519_64BIT)
   1123                 1633188840273139, 852787172373708, 1548762607215796,
   1124                 1266275218902681, 1107218203325133
   1125 #else
   1126                 11334899, 24336410, 8025292, 12707519, 17523892, 23078361,
   1127                 10243737, 18868971, 62042829, 16498836
   1128 #endif
   1129             }},
   1130             {{
   1131 #if defined(BORINGSSL_CURVE25519_64BIT)
   1132                 462189358480054, 1784816734159228, 1611334301651368,
   1133                 1303938263943540, 707589560319424
   1134 #else
   1135                 8911542, 6887158, 57524604, 26595841, 11145640, 24010752,
   1136                 17303924, 19430194, 6536640, 10543906
   1137 #endif
   1138             }},
   1139             {{
   1140 #if defined(BORINGSSL_CURVE25519_64BIT)
   1141                 1038829280972848, 38176604650029, 753193246598573,
   1142                 1136076426528122, 595709990562434
   1143 #else
   1144                 38162480, 15479762, 49642029, 568875, 65611181, 11223453,
   1145                 64439674, 16928857, 39873154, 8876770
   1146 #endif
   1147             }},
   1148         },
   1149         {
   1150             {{
   1151 #if defined(BORINGSSL_CURVE25519_64BIT)
   1152                 1408451820859834, 2194984964010833, 2198361797561729,
   1153                 1061962440055713, 1645147963442934
   1154 #else
   1155                 41365946, 20987567, 51458897, 32707824, 34082177, 32758143,
   1156                 33627041, 15824473, 66504438, 24514614
   1157 #endif
   1158             }},
   1159             {{
   1160 #if defined(BORINGSSL_CURVE25519_64BIT)
   1161                 4701053362120, 1647641066302348, 1047553002242085,
   1162                 1923635013395977, 206970314902065
   1163 #else
   1164                 10330056, 70051, 7957388, 24551765, 9764901, 15609756, 27698697,
   1165                 28664395, 1657393, 3084098
   1166 #endif
   1167             }},
   1168             {{
   1169 #if defined(BORINGSSL_CURVE25519_64BIT)
   1170                 1750479161778571, 1362553355169293, 1891721260220598,
   1171                 966109370862782, 1024913988299801
   1172 #else
   1173                 10477963, 26084172, 12119565, 20303627, 29016246, 28188843,
   1174                 31280318, 14396151, 36875289, 15272408
   1175 #endif
   1176             }},
   1177         },
   1178         {
   1179             {{
   1180 #if defined(BORINGSSL_CURVE25519_64BIT)
   1181                 212699049131723, 1117950018299775, 1873945661751056,
   1182                 1403802921984058, 130896082652698
   1183 #else
   1184                 54820555, 3169462, 28813183, 16658753, 25116432, 27923966,
   1185                 41934906, 20918293, 42094106, 1950503
   1186 #endif
   1187             }},
   1188             {{
   1189 #if defined(BORINGSSL_CURVE25519_64BIT)
   1190                 636808533673210, 1262201711667560, 390951380330599,
   1191                 1663420692697294, 561951321757406
   1192 #else
   1193                 40928506, 9489186, 11053416, 18808271, 36055143, 5825629,
   1194                 58724558, 24786899, 15341278, 8373727
   1195 #endif
   1196             }},
   1197             {{
   1198 #if defined(BORINGSSL_CURVE25519_64BIT)
   1199                 520731594438141, 1446301499955692, 273753264629267,
   1200                 1565101517999256, 1019411827004672
   1201 #else
   1202                 28685821, 7759505, 52730348, 21551571, 35137043, 4079241,
   1203                 298136, 23321830, 64230656, 15190419
   1204 #endif
   1205             }},
   1206         },
   1207         {
   1208             {{
   1209 #if defined(BORINGSSL_CURVE25519_64BIT)
   1210                 926527492029409, 1191853477411379, 734233225181171,
   1211                 184038887541270, 1790426146325343
   1212 #else
   1213                 34175969, 13806335, 52771379, 17760000, 43104243, 10940927,
   1214                 8669718, 2742393, 41075551, 26679428
   1215 #endif
   1216             }},
   1217             {{
   1218 #if defined(BORINGSSL_CURVE25519_64BIT)
   1219                 1464651961852572, 1483737295721717, 1519450561335517,
   1220                 1161429831763785, 405914998179977
   1221 #else
   1222                 65528476, 21825014, 41129205, 22109408, 49696989, 22641577,
   1223                 9291593, 17306653, 54954121, 6048604
   1224 #endif
   1225             }},
   1226             {{
   1227 #if defined(BORINGSSL_CURVE25519_64BIT)
   1228                 996126634382301, 796204125879525, 127517800546509,
   1229                 344155944689303, 615279846169038
   1230 #else
   1231                 36803549, 14843443, 1539301, 11864366, 20201677, 1900163,
   1232                 13934231, 5128323, 11213262, 9168384
   1233 #endif
   1234             }},
   1235         },
   1236         {
   1237             {{
   1238 #if defined(BORINGSSL_CURVE25519_64BIT)
   1239                 738724080975276, 2188666632415296, 1961313708559162,
   1240                 1506545807547587, 1151301638969740
   1241 #else
   1242                 40828332, 11007846, 19408960, 32613674, 48515898, 29225851,
   1243                 62020803, 22449281, 20470156, 17155731
   1244 #endif
   1245             }},
   1246             {{
   1247 #if defined(BORINGSSL_CURVE25519_64BIT)
   1248                 622917337413835, 1218989177089035, 1284857712846592,
   1249                 970502061709359, 351025208117090
   1250 #else
   1251                 43972811, 9282191, 14855179, 18164354, 59746048, 19145871,
   1252                 44324911, 14461607, 14042978, 5230683
   1253 #endif
   1254             }},
   1255             {{
   1256 #if defined(BORINGSSL_CURVE25519_64BIT)
   1257                 2067814584765580, 1677855129927492, 2086109782475197,
   1258                 235286517313238, 1416314046739645
   1259 #else
   1260                 29969548, 30812838, 50396996, 25001989, 9175485, 31085458,
   1261                 21556950, 3506042, 61174973, 21104723
   1262 #endif
   1263             }},
   1264         },
   1265         {
   1266             {{
   1267 #if defined(BORINGSSL_CURVE25519_64BIT)
   1268                 586844262630358, 307444381952195, 458399356043426,
   1269                 602068024507062, 1028548203415243
   1270 #else
   1271                 63964118, 8744660, 19704003, 4581278, 46678178, 6830682,
   1272                 45824694, 8971512, 38569675, 15326562
   1273 #endif
   1274             }},
   1275             {{
   1276 #if defined(BORINGSSL_CURVE25519_64BIT)
   1277                 678489922928203, 2016657584724032, 90977383049628,
   1278                 1026831907234582, 615271492942522
   1279 #else
   1280                 47644235, 10110287, 49846336, 30050539, 43608476, 1355668,
   1281                 51585814, 15300987, 46594746, 9168259
   1282 #endif
   1283             }},
   1284             {{
   1285 #if defined(BORINGSSL_CURVE25519_64BIT)
   1286                 301225714012278, 1094837270268560, 1202288391010439,
   1287                 644352775178361, 1647055902137983
   1288 #else
   1289                 61755510, 4488612, 43305616, 16314346, 7780487, 17915493,
   1290                 38160505, 9601604, 33087103, 24543045
   1291 #endif
   1292             }},
   1293         },
   1294         {
   1295             {{
   1296 #if defined(BORINGSSL_CURVE25519_64BIT)
   1297                 1210746697896478, 1416608304244708, 686487477217856,
   1298                 1245131191434135, 1051238336855737
   1299 #else
   1300                 47665694, 18041531, 46311396, 21109108, 37284416, 10229460,
   1301                 39664535, 18553900, 61111993, 15664671
   1302 #endif
   1303             }},
   1304             {{
   1305 #if defined(BORINGSSL_CURVE25519_64BIT)
   1306                 1135604073198207, 1683322080485474, 769147804376683,
   1307                 2086688130589414, 900445683120379
   1308 #else
   1309                 23294591, 16921819, 44458082, 25083453, 27844203, 11461195,
   1310                 13099750, 31094076, 18151675, 13417686
   1311 #endif
   1312             }},
   1313             {{
   1314 #if defined(BORINGSSL_CURVE25519_64BIT)
   1315                 1971518477615628, 401909519527336, 448627091057375,
   1316                 1409486868273821, 1214789035034363
   1317 #else
   1318                 42385932, 29377914, 35958184, 5988918, 40250079, 6685064,
   1319                 1661597, 21002991, 15271675, 18101767
   1320 #endif
   1321             }},
   1322         },
   1323     },
   1324     {
   1325         {
   1326             {{
   1327 #if defined(BORINGSSL_CURVE25519_64BIT)
   1328                 1364039144731711, 1897497433586190, 2203097701135459,
   1329                 145461396811251, 1349844460790699
   1330 #else
   1331                 11433023, 20325767, 8239630, 28274915, 65123427, 32828713,
   1332                 48410099, 2167543, 60187563, 20114249
   1333 #endif
   1334             }},
   1335             {{
   1336 #if defined(BORINGSSL_CURVE25519_64BIT)
   1337                 1045230323257973, 818206601145807, 630513189076103,
   1338                 1672046528998132, 807204017562437
   1339 #else
   1340                 35672693, 15575145, 30436815, 12192228, 44645511, 9395378,
   1341                 57191156, 24915434, 12215109, 12028277
   1342 #endif
   1343             }},
   1344             {{
   1345 #if defined(BORINGSSL_CURVE25519_64BIT)
   1346                 439961968385997, 386362664488986, 1382706320807688,
   1347                 309894000125359, 2207801346498567
   1348 #else
   1349                 14098381, 6555944, 23007258, 5757252, 51681032, 20603929,
   1350                 30123439, 4617780, 50208775, 32898803
   1351 #endif
   1352             }},
   1353         },
   1354         {
   1355             {{
   1356 #if defined(BORINGSSL_CURVE25519_64BIT)
   1357                 1229004686397588, 920643968530863, 123975893911178,
   1358                 681423993215777, 1400559197080973
   1359 #else
   1360                 63082644, 18313596, 11893167, 13718664, 52299402, 1847384,
   1361                 51288865, 10154008, 23973261, 20869958
   1362 #endif
   1363             }},
   1364             {{
   1365 #if defined(BORINGSSL_CURVE25519_64BIT)
   1366                 2003766096898049, 170074059235165, 1141124258967971,
   1367                 1485419893480973, 1573762821028725
   1368 #else
   1369                 40577025, 29858441, 65199965, 2534300, 35238307, 17004076,
   1370                 18341389, 22134481, 32013173, 23450893
   1371 #endif
   1372             }},
   1373             {{
   1374 #if defined(BORINGSSL_CURVE25519_64BIT)
   1375                 729905708611432, 1270323270673202, 123353058984288,
   1376                 426460209632942, 2195574535456672
   1377 #else
   1378                 41629544, 10876442, 55337778, 18929291, 54739296, 1838103,
   1379                 21911214, 6354752, 4425632, 32716610
   1380 #endif
   1381             }},
   1382         },
   1383         {
   1384             {{
   1385 #if defined(BORINGSSL_CURVE25519_64BIT)
   1386                 1271140255321235, 2044363183174497, 52125387634689,
   1387                 1445120246694705, 942541986339084
   1388 #else
   1389                 56675475, 18941465, 22229857, 30463385, 53917697, 776728,
   1390                 49693489, 21533969, 4725004, 14044970
   1391 #endif
   1392             }},
   1393             {{
   1394 #if defined(BORINGSSL_CURVE25519_64BIT)
   1395                 1761608437466135, 583360847526804, 1586706389685493,
   1396                 2157056599579261, 1170692369685772
   1397 #else
   1398                 19268631, 26250011, 1555348, 8692754, 45634805, 23643767,
   1399                 6347389, 32142648, 47586572, 17444675
   1400 #endif
   1401             }},
   1402             {{
   1403 #if defined(BORINGSSL_CURVE25519_64BIT)
   1404                 871476219910823, 1878769545097794, 2241832391238412,
   1405                 548957640601001, 690047440233174
   1406 #else
   1407                 42244775, 12986007, 56209986, 27995847, 55796492, 33405905,
   1408                 19541417, 8180106, 9282262, 10282508
   1409 #endif
   1410             }},
   1411         },
   1412         {
   1413             {{
   1414 #if defined(BORINGSSL_CURVE25519_64BIT)
   1415                 297194732135507, 1366347803776820, 1301185512245601,
   1416                 561849853336294, 1533554921345731
   1417 #else
   1418                 40903763, 4428546, 58447668, 20360168, 4098401, 19389175,
   1419                 15522534, 8372215, 5542595, 22851749
   1420 #endif
   1421             }},
   1422             {{
   1423 #if defined(BORINGSSL_CURVE25519_64BIT)
   1424                 999628998628371, 1132836708493400, 2084741674517453,
   1425                 469343353015612, 678782988708035
   1426 #else
   1427                 56546323, 14895632, 26814552, 16880582, 49628109, 31065071,
   1428                 64326972, 6993760, 49014979, 10114654
   1429 #endif
   1430             }},
   1431             {{
   1432 #if defined(BORINGSSL_CURVE25519_64BIT)
   1433                 2189427607417022, 699801937082607, 412764402319267,
   1434                 1478091893643349, 2244675696854460
   1435 #else
   1436                 47001790, 32625013, 31422703, 10427861, 59998115, 6150668,
   1437                 38017109, 22025285, 25953724, 33448274
   1438 #endif
   1439             }},
   1440         },
   1441         {
   1442             {{
   1443 #if defined(BORINGSSL_CURVE25519_64BIT)
   1444                 1712292055966563, 204413590624874, 1405738637332841,
   1445                 408981300829763, 861082219276721
   1446 #else
   1447                 62874467, 25515139, 57989738, 3045999, 2101609, 20947138,
   1448                 19390019, 6094296, 63793585, 12831124
   1449 #endif
   1450             }},
   1451             {{
   1452 #if defined(BORINGSSL_CURVE25519_64BIT)
   1453                 508561155940631, 966928475686665, 2236717801150132,
   1454                 424543858577297, 2089272956986143
   1455 #else
   1456                 51110167, 7578151, 5310217, 14408357, 33560244, 33329692,
   1457                 31575953, 6326196, 7381791, 31132593
   1458 #endif
   1459             }},
   1460             {{
   1461 #if defined(BORINGSSL_CURVE25519_64BIT)
   1462                 221245220129925, 1156020201681217, 491145634799213,
   1463                 542422431960839, 828100817819207
   1464 #else
   1465                 46206085, 3296810, 24736065, 17226043, 18374253, 7318640,
   1466                 6295303, 8082724, 51746375, 12339663
   1467 #endif
   1468             }},
   1469         },
   1470         {
   1471             {{
   1472 #if defined(BORINGSSL_CURVE25519_64BIT)
   1473                 153756971240384, 1299874139923977, 393099165260502,
   1474                 1058234455773022, 996989038681183
   1475 #else
   1476                 27724736, 2291157, 6088201, 19369634, 1792726, 5857634,
   1477                 13848414, 15768922, 25091167, 14856294
   1478 #endif
   1479             }},
   1480             {{
   1481 #if defined(BORINGSSL_CURVE25519_64BIT)
   1482                 559086812798481, 573177704212711, 1629737083816402,
   1483                 1399819713462595, 1646954378266038
   1484 #else
   1485                 48242193, 8331042, 24373479, 8541013, 66406866, 24284974,
   1486                 12927299, 20858939, 44926390, 24541532
   1487 #endif
   1488             }},
   1489             {{
   1490 #if defined(BORINGSSL_CURVE25519_64BIT)
   1491                 1887963056288059, 228507035730124, 1468368348640282,
   1492                 930557653420194, 613513962454686
   1493 #else
   1494                 55685435, 28132841, 11632844, 3405020, 30536730, 21880393,
   1495                 39848098, 13866389, 30146206, 9142070
   1496 #endif
   1497             }},
   1498         },
   1499         {
   1500             {{
   1501 #if defined(BORINGSSL_CURVE25519_64BIT)
   1502                 1224529808187553, 1577022856702685, 2206946542980843,
   1503                 625883007765001, 279930793512158
   1504 #else
   1505                 3924129, 18246916, 53291741, 23499471, 12291819, 32886066,
   1506                 39406089, 9326383, 58871006, 4171293
   1507 #endif
   1508             }},
   1509             {{
   1510 #if defined(BORINGSSL_CURVE25519_64BIT)
   1511                 1076287717051609, 1114455570543035, 187297059715481,
   1512                 250446884292121, 1885187512550540
   1513 #else
   1514                 51186905, 16037936, 6713787, 16606682, 45496729, 2790943,
   1515                 26396185, 3731949, 345228, 28091483
   1516 #endif
   1517             }},
   1518             {{
   1519 #if defined(BORINGSSL_CURVE25519_64BIT)
   1520                 902497362940219, 76749815795675, 1657927525633846,
   1521                 1420238379745202, 1340321636548352
   1522 #else
   1523                 45781307, 13448258, 25284571, 1143661, 20614966, 24705045,
   1524                 2031538, 21163201, 50855680, 19972348
   1525 #endif
   1526             }},
   1527         },
   1528         {
   1529             {{
   1530 #if defined(BORINGSSL_CURVE25519_64BIT)
   1531                 1129576631190784, 1281994010027327, 996844254743018,
   1532                 257876363489249, 1150850742055018
   1533 #else
   1534                 31016192, 16832003, 26371391, 19103199, 62081514, 14854136,
   1535                 17477601, 3842657, 28012650, 17149012
   1536 #endif
   1537             }},
   1538             {{
   1539 #if defined(BORINGSSL_CURVE25519_64BIT)
   1540                 628740660038789, 1943038498527841, 467786347793886,
   1541                 1093341428303375, 235413859513003
   1542 #else
   1543                 62033029, 9368965, 58546785, 28953529, 51858910, 6970559,
   1544                 57918991, 16292056, 58241707, 3507939
   1545 #endif
   1546             }},
   1547             {{
   1548 #if defined(BORINGSSL_CURVE25519_64BIT)
   1549                 237425418909360, 469614029179605, 1512389769174935,
   1550                 1241726368345357, 441602891065214
   1551 #else
   1552                 29439664, 3537914, 23333589, 6997794, 49553303, 22536363,
   1553                 51899661, 18503164, 57943934, 6580395
   1554 #endif
   1555             }},
   1556         },
   1557     },
   1558     {
   1559         {
   1560             {{
   1561 #if defined(BORINGSSL_CURVE25519_64BIT)
   1562                 1736417953058555, 726531315520508, 1833335034432527,
   1563                 1629442561574747, 624418919286085
   1564 #else
   1565                 54923003, 25874643, 16438268, 10826160, 58412047, 27318820,
   1566                 17860443, 24280586, 65013061, 9304566
   1567 #endif
   1568             }},
   1569             {{
   1570 #if defined(BORINGSSL_CURVE25519_64BIT)
   1571                 1960754663920689, 497040957888962, 1909832851283095,
   1572                 1271432136996826, 2219780368020940
   1573 #else
   1574                 20714545, 29217521, 29088194, 7406487, 11426967, 28458727,
   1575                 14792666, 18945815, 5289420, 33077305
   1576 #endif
   1577             }},
   1578             {{
   1579 #if defined(BORINGSSL_CURVE25519_64BIT)
   1580                 1537037379417136, 1358865369268262, 2130838645654099,
   1581                 828733687040705, 1999987652890901
   1582 #else
   1583                 50443312, 22903641, 60948518, 20248671, 9192019, 31751970,
   1584                 17271489, 12349094, 26939669, 29802138
   1585 #endif
   1586             }},
   1587         },
   1588         {
   1589             {{
   1590 #if defined(BORINGSSL_CURVE25519_64BIT)
   1591                 629042105241814, 1098854999137608, 887281544569320,
   1592                 1423102019874777, 7911258951561
   1593 #else
   1594                 54218966, 9373457, 31595848, 16374215, 21471720, 13221525,
   1595                 39825369, 21205872, 63410057, 117886
   1596 #endif
   1597             }},
   1598             {{
   1599 #if defined(BORINGSSL_CURVE25519_64BIT)
   1600                 1811562332665373, 1501882019007673, 2213763501088999,
   1601                 359573079719636, 36370565049116
   1602 #else
   1603                 22263325, 26994382, 3984569, 22379786, 51994855, 32987646,
   1604                 28311252, 5358056, 43789084, 541963
   1605 #endif
   1606             }},
   1607             {{
   1608 #if defined(BORINGSSL_CURVE25519_64BIT)
   1609                 218907117361280, 1209298913016966, 1944312619096112,
   1610                 1130690631451061, 1342327389191701
   1611 #else
   1612                 16259200, 3261970, 2309254, 18019958, 50223152, 28972515,
   1613                 24134069, 16848603, 53771797, 20002236
   1614 #endif
   1615             }},
   1616         },
   1617         {
   1618             {{
   1619 #if defined(BORINGSSL_CURVE25519_64BIT)
   1620                 1369976867854704, 1396479602419169, 1765656654398856,
   1621                 2203659200586299, 998327836117241
   1622 #else
   1623                 9378160, 20414246, 44262881, 20809167, 28198280, 26310334,
   1624                 64709179, 32837080, 690425, 14876244
   1625 #endif
   1626             }},
   1627             {{
   1628 #if defined(BORINGSSL_CURVE25519_64BIT)
   1629                 2230701885562825, 1348173180338974, 2172856128624598,
   1630                 1426538746123771, 444193481326151
   1631 #else
   1632                 24977353, 33240048, 58884894, 20089345, 28432342, 32378079,
   1633                 54040059, 21257083, 44727879, 6618998
   1634 #endif
   1635             }},
   1636             {{
   1637 #if defined(BORINGSSL_CURVE25519_64BIT)
   1638                 784210426627951, 918204562375674, 1284546780452985,
   1639                 1324534636134684, 1872449409642708
   1640 #else
   1641                 65570671, 11685645, 12944378, 13682314, 42719353, 19141238,
   1642                 8044828, 19737104, 32239828, 27901670
   1643 #endif
   1644             }},
   1645         },
   1646         {
   1647             {{
   1648 #if defined(BORINGSSL_CURVE25519_64BIT)
   1649                 319638829540294, 596282656808406, 2037902696412608,
   1650                 1557219121643918, 341938082688094
   1651 #else
   1652                 48505798, 4762989, 66182614, 8885303, 38696384, 30367116,
   1653                 9781646, 23204373, 32779358, 5095274
   1654 #endif
   1655             }},
   1656             {{
   1657 #if defined(BORINGSSL_CURVE25519_64BIT)
   1658                 1901860206695915, 2004489122065736, 1625847061568236,
   1659                 973529743399879, 2075287685312905
   1660 #else
   1661                 34100715, 28339925, 34843976, 29869215, 9460460, 24227009,
   1662                 42507207, 14506723, 21639561, 30924196
   1663 #endif
   1664             }},
   1665             {{
   1666 #if defined(BORINGSSL_CURVE25519_64BIT)
   1667                 1371853944110545, 1042332820512553, 1949855697918254,
   1668                 1791195775521505, 37487364849293
   1669 #else
   1670                 50707921, 20442216, 25239337, 15531969, 3987758, 29055114,
   1671                 65819361, 26690896, 17874573, 558605
   1672 #endif
   1673             }},
   1674         },
   1675         {
   1676             {{
   1677 #if defined(BORINGSSL_CURVE25519_64BIT)
   1678                 687200189577855, 1082536651125675, 644224940871546,
   1679                 340923196057951, 343581346747396
   1680 #else
   1681                 53508735, 10240080, 9171883, 16131053, 46239610, 9599699,
   1682                 33499487, 5080151, 2085892, 5119761
   1683 #endif
   1684             }},
   1685             {{
   1686 #if defined(BORINGSSL_CURVE25519_64BIT)
   1687                 2082717129583892, 27829425539422, 145655066671970,
   1688                 1690527209845512, 1865260509673478
   1689 #else
   1690                 44903700, 31034903, 50727262, 414690, 42089314, 2170429,
   1691                 30634760, 25190818, 35108870, 27794547
   1692 #endif
   1693             }},
   1694             {{
   1695 #if defined(BORINGSSL_CURVE25519_64BIT)
   1696                 1059729620568824, 2163709103470266, 1440302280256872,
   1697                 1769143160546397, 869830310425069
   1698 #else
   1699                 60263160, 15791201, 8550074, 32241778, 29928808, 21462176,
   1700                 27534429, 26362287, 44757485, 12961481
   1701 #endif
   1702             }},
   1703         },
   1704         {
   1705             {{
   1706 #if defined(BORINGSSL_CURVE25519_64BIT)
   1707                 1609516219779025, 777277757338817, 2101121130363987,
   1708                 550762194946473, 1905542338659364
   1709 #else
   1710                 42616785, 23983660, 10368193, 11582341, 43711571, 31309144,
   1711                 16533929, 8206996, 36914212, 28394793
   1712 #endif
   1713             }},
   1714             {{
   1715 #if defined(BORINGSSL_CURVE25519_64BIT)
   1716                 2024821921041576, 426948675450149, 595133284085473,
   1717                 471860860885970, 600321679413000
   1718 #else
   1719                 55987368, 30172197, 2307365, 6362031, 66973409, 8868176,
   1720                 50273234, 7031274, 7589640, 8945490
   1721 #endif
   1722             }},
   1723             {{
   1724 #if defined(BORINGSSL_CURVE25519_64BIT)
   1725                 598474602406721, 1468128276358244, 1191923149557635,
   1726                 1501376424093216, 1281662691293476
   1727 #else
   1728                 34956097, 8917966, 6661220, 21876816, 65916803, 17761038,
   1729                 7251488, 22372252, 24099108, 19098262
   1730 #endif
   1731             }},
   1732         },
   1733         {
   1734             {{
   1735 #if defined(BORINGSSL_CURVE25519_64BIT)
   1736                 1721138489890707, 1264336102277790, 433064545421287,
   1737                 1359988423149466, 1561871293409447
   1738 #else
   1739                 5019539, 25646962, 4244126, 18840076, 40175591, 6453164,
   1740                 47990682, 20265406, 60876967, 23273695
   1741 #endif
   1742             }},
   1743             {{
   1744 #if defined(BORINGSSL_CURVE25519_64BIT)
   1745                 719520245587143, 393380711632345, 132350400863381,
   1746                 1543271270810729, 1819543295798660
   1747 #else
   1748                 10853575, 10721687, 26480089, 5861829, 44113045, 1972174,
   1749                 65242217, 22996533, 63745412, 27113307
   1750 #endif
   1751             }},
   1752             {{
   1753 #if defined(BORINGSSL_CURVE25519_64BIT)
   1754                 396397949784152, 1811354474471839, 1362679985304303,
   1755                 2117033964846756, 498041172552279
   1756 #else
   1757                 50106456, 5906789, 221599, 26991285, 7828207, 20305514,
   1758                 24362660, 31546264, 53242455, 7421391
   1759 #endif
   1760             }},
   1761         },
   1762         {
   1763             {{
   1764 #if defined(BORINGSSL_CURVE25519_64BIT)
   1765                 1812471844975748, 1856491995543149, 126579494584102,
   1766                 1036244859282620, 1975108050082550
   1767 #else
   1768                 8139908, 27007935, 32257645, 27663886, 30375718, 1886181,
   1769                 45933756, 15441251, 28826358, 29431403
   1770 #endif
   1771             }},
   1772             {{
   1773 #if defined(BORINGSSL_CURVE25519_64BIT)
   1774                 650623932407995, 1137551288410575, 2125223403615539,
   1775                 1725658013221271, 2134892965117796
   1776 #else
   1777                 6267067, 9695052, 7709135, 16950835, 34239795, 31668296,
   1778                 14795159, 25714308, 13746020, 31812384
   1779 #endif
   1780             }},
   1781             {{
   1782 #if defined(BORINGSSL_CURVE25519_64BIT)
   1783                 522584000310195, 1241762481390450, 1743702789495384,
   1784                 2227404127826575, 1686746002148897
   1785 #else
   1786                 28584883, 7787108, 60375922, 18503702, 22846040, 25983196,
   1787                 63926927, 33190907, 4771361, 25134474
   1788 #endif
   1789             }},
   1790         },
   1791     },
   1792     {
   1793         {
   1794             {{
   1795 #if defined(BORINGSSL_CURVE25519_64BIT)
   1796                 427904865186312, 1703211129693455, 1585368107547509,
   1797                 1436984488744336, 761188534613978
   1798 #else
   1799                 24949256, 6376279, 39642383, 25379823, 48462709, 23623825,
   1800                 33543568, 21412737, 3569626, 11342593
   1801 #endif
   1802             }},
   1803             {{
   1804 #if defined(BORINGSSL_CURVE25519_64BIT)
   1805                 318101947455002, 248138407995851, 1481904195303927,
   1806                 309278454311197, 1258516760217879
   1807 #else
   1808                 26514970, 4740088, 27912651, 3697550, 19331575, 22082093,
   1809                 6809885, 4608608, 7325975, 18753361
   1810 #endif
   1811             }},
   1812             {{
   1813 #if defined(BORINGSSL_CURVE25519_64BIT)
   1814                 1275068538599310, 513726919533379, 349926553492294,
   1815                 688428871968420, 1702400196000666
   1816 #else
   1817                 55490446, 19000001, 42787651, 7655127, 65739590, 5214311,
   1818                 39708324, 10258389, 49462170, 25367739
   1819 #endif
   1820             }},
   1821         },
   1822         {
   1823             {{
   1824 #if defined(BORINGSSL_CURVE25519_64BIT)
   1825                 1061864036265233, 961611260325381, 321859632700838,
   1826                 1045600629959517, 1985130202504038
   1827 #else
   1828                 11431185, 15823007, 26570245, 14329124, 18029990, 4796082,
   1829                 35662685, 15580663, 9280358, 29580745
   1830 #endif
   1831             }},
   1832             {{
   1833 #if defined(BORINGSSL_CURVE25519_64BIT)
   1834                 1558816436882417, 1962896332636523, 1337709822062152,
   1835                 1501413830776938, 294436165831932
   1836 #else
   1837                 66948081, 23228174, 44253547, 29249434, 46247496, 19933429,
   1838                 34297962, 22372809, 51563772, 4387440
   1839 #endif
   1840             }},
   1841             {{
   1842 #if defined(BORINGSSL_CURVE25519_64BIT)
   1843                 818359826554971, 1862173000996177, 626821592884859,
   1844                 573655738872376, 1749691246745455
   1845 #else
   1846                 46309467, 12194511, 3937617, 27748540, 39954043, 9340369,
   1847                 42594872, 8548136, 20617071, 26072431
   1848 #endif
   1849             }},
   1850         },
   1851         {
   1852             {{
   1853 #if defined(BORINGSSL_CURVE25519_64BIT)
   1854                 1988022651432119, 1082111498586040, 1834020786104821,
   1855                 1454826876423687, 692929915223122
   1856 #else
   1857                 66170039, 29623845, 58394552, 16124717, 24603125, 27329039,
   1858                 53333511, 21678609, 24345682, 10325460
   1859 #endif
   1860             }},
   1861             {{
   1862 #if defined(BORINGSSL_CURVE25519_64BIT)
   1863                 2146513703733331, 584788900394667, 464965657279958,
   1864                 2183973639356127, 238371159456790
   1865 #else
   1866                 47253587, 31985546, 44906155, 8714033, 14007766, 6928528,
   1867                 16318175, 32543743, 4766742, 3552007
   1868 #endif
   1869             }},
   1870             {{
   1871 #if defined(BORINGSSL_CURVE25519_64BIT)
   1872                 1129007025494441, 2197883144413266, 265142755578169,
   1873                 971864464758890, 1983715884903702
   1874 #else
   1875                 45357481, 16823515, 1351762, 32751011, 63099193, 3950934,
   1876                 3217514, 14481909, 10988822, 29559670
   1877 #endif
   1878             }},
   1879         },
   1880         {
   1881             {{
   1882 #if defined(BORINGSSL_CURVE25519_64BIT)
   1883                 1291366624493075, 381456718189114, 1711482489312444,
   1884                 1815233647702022, 892279782992467
   1885 #else
   1886                 15564307, 19242862, 3101242, 5684148, 30446780, 25503076,
   1887                 12677126, 27049089, 58813011, 13296004
   1888 #endif
   1889             }},
   1890             {{
   1891 #if defined(BORINGSSL_CURVE25519_64BIT)
   1892                 444548969917454, 1452286453853356, 2113731441506810,
   1893                 645188273895859, 810317625309512
   1894 #else
   1895                 57666574, 6624295, 36809900, 21640754, 62437882, 31497052,
   1896                 31521203, 9614054, 37108040, 12074673
   1897 #endif
   1898             }},
   1899             {{
   1900 #if defined(BORINGSSL_CURVE25519_64BIT)
   1901                 2242724082797924, 1373354730327868, 1006520110883049,
   1902                 2147330369940688, 1151816104883620
   1903 #else
   1904                 4771172, 33419193, 14290748, 20464580, 27992297, 14998318,
   1905                 65694928, 31997715, 29832612, 17163397
   1906 #endif
   1907             }},
   1908         },
   1909         {
   1910             {{
   1911 #if defined(BORINGSSL_CURVE25519_64BIT)
   1912                 1745720200383796, 1911723143175317, 2056329390702074,
   1913                 355227174309849, 879232794371100
   1914 #else
   1915                 7064884, 26013258, 47946901, 28486894, 48217594, 30641695,
   1916                 25825241, 5293297, 39986204, 13101589
   1917 #endif
   1918             }},
   1919             {{
   1920 #if defined(BORINGSSL_CURVE25519_64BIT)
   1921                 163723479936298, 115424889803150, 1156016391581227,
   1922                 1894942220753364, 1970549419986329
   1923 #else
   1924                 64810282, 2439669, 59642254, 1719964, 39841323, 17225986,
   1925                 32512468, 28236839, 36752793, 29363474
   1926 #endif
   1927             }},
   1928             {{
   1929 #if defined(BORINGSSL_CURVE25519_64BIT)
   1930                 681981452362484, 267208874112496, 1374683991933094,
   1931                 638600984916117, 646178654558546
   1932 #else
   1933                 37102324, 10162315, 33928688, 3981722, 50626726, 20484387,
   1934                 14413973, 9515896, 19568978, 9628812
   1935 #endif
   1936             }},
   1937         },
   1938         {
   1939             {{
   1940 #if defined(BORINGSSL_CURVE25519_64BIT)
   1941                 13378654854251, 106237307029567, 1944412051589651,
   1942                 1841976767925457, 230702819835573
   1943 #else
   1944                 33053803, 199357, 15894591, 1583059, 27380243, 28973997,
   1945                 49269969, 27447592, 60817077, 3437739
   1946 #endif
   1947             }},
   1948             {{
   1949 #if defined(BORINGSSL_CURVE25519_64BIT)
   1950                 260683893467075, 854060306077237, 913639551980112,
   1951                 4704576840123, 280254810808712
   1952 #else
   1953                 48129987, 3884492, 19469877, 12726490, 15913552, 13614290,
   1954                 44147131, 70103, 7463304, 4176122
   1955 #endif
   1956             }},
   1957             {{
   1958 #if defined(BORINGSSL_CURVE25519_64BIT)
   1959                 715374893080287, 1173334812210491, 1806524662079626,
   1960                 1894596008000979, 398905715033393
   1961 #else
   1962                 39984863, 10659916, 11482427, 17484051, 12771466, 26919315,
   1963                 34389459, 28231680, 24216881, 5944158
   1964 #endif
   1965             }},
   1966         },
   1967         {
   1968             {{
   1969 #if defined(BORINGSSL_CURVE25519_64BIT)
   1970                 500026409727661, 1596431288195371, 1420380351989370,
   1971                 985211561521489, 392444930785633
   1972 #else
   1973                 8894125, 7450974, 64444715, 23788679, 39028346, 21165316,
   1974                 19345745, 14680796, 11632993, 5847885
   1975 #endif
   1976             }},
   1977             {{
   1978 #if defined(BORINGSSL_CURVE25519_64BIT)
   1979                 2096421546958141, 1922523000950363, 789831022876840,
   1980                 427295144688779, 320923973161730
   1981 #else
   1982                 26942781, 31239115, 9129563, 28647825, 26024104, 11769399,
   1983                 55590027, 6367193, 57381634, 4782139
   1984 #endif
   1985             }},
   1986             {{
   1987 #if defined(BORINGSSL_CURVE25519_64BIT)
   1988                 1927770723575450, 1485792977512719, 1850996108474547,
   1989                 551696031508956, 2126047405475647
   1990 #else
   1991                 19916442, 28726022, 44198159, 22140040, 25606323, 27581991,
   1992                 33253852, 8220911, 6358847, 31680575
   1993 #endif
   1994             }},
   1995         },
   1996         {
   1997             {{
   1998 #if defined(BORINGSSL_CURVE25519_64BIT)
   1999                 2112099158080148, 742570803909715, 6484558077432,
   2000                 1951119898618916, 93090382703416
   2001 #else
   2002                 801428, 31472730, 16569427, 11065167, 29875704, 96627, 7908388,
   2003                 29073952, 53570360, 1387154
   2004 #endif
   2005             }},
   2006             {{
   2007 #if defined(BORINGSSL_CURVE25519_64BIT)
   2008                 383905201636970, 859946997631870, 855623867637644,
   2009                 1017125780577795, 794250831877809
   2010 #else
   2011                 19646058, 5720633, 55692158, 12814208, 11607948, 12749789,
   2012                 14147075, 15156355, 45242033, 11835259
   2013 #endif
   2014             }},
   2015             {{
   2016 #if defined(BORINGSSL_CURVE25519_64BIT)
   2017                 77571826285752, 999304298101753, 487841111777762,
   2018                 1038031143212339, 339066367948762
   2019 #else
   2020                 19299512, 1155910, 28703737, 14890794, 2925026, 7269399,
   2021                 26121523, 15467869, 40548314, 5052482
   2022 #endif
   2023             }},
   2024         },
   2025     },
   2026     {
   2027         {
   2028             {{
   2029 #if defined(BORINGSSL_CURVE25519_64BIT)
   2030                 674994775520533, 266035846330789, 826951213393478,
   2031                 1405007746162285, 1781791018620876
   2032 #else
   2033                 64091413, 10058205, 1980837, 3964243, 22160966, 12322533,
   2034                 60677741, 20936246, 12228556, 26550755
   2035 #endif
   2036             }},
   2037             {{
   2038 #if defined(BORINGSSL_CURVE25519_64BIT)
   2039                 1001412661522686, 348196197067298, 1666614366723946,
   2040                 888424995032760, 580747687801357
   2041 #else
   2042                 32944382, 14922211, 44263970, 5188527, 21913450, 24834489,
   2043                 4001464, 13238564, 60994061, 8653814
   2044 #endif
   2045             }},
   2046             {{
   2047 #if defined(BORINGSSL_CURVE25519_64BIT)
   2048                 1939560076207777, 1409892634407635, 552574736069277,
   2049                 383854338280405, 190706709864139
   2050 #else
   2051                 22865569, 28901697, 27603667, 21009037, 14348957, 8234005,
   2052                 24808405, 5719875, 28483275, 2841751
   2053 #endif
   2054             }},
   2055         },
   2056         {
   2057             {{
   2058 #if defined(BORINGSSL_CURVE25519_64BIT)
   2059                 2177087163428741, 1439255351721944, 1208070840382793,
   2060                 2230616362004769, 1396886392021913
   2061 #else
   2062                 50687877, 32441126, 66781144, 21446575, 21886281, 18001658,
   2063                 65220897, 33238773, 19932057, 20815229
   2064 #endif
   2065             }},
   2066             {{
   2067 #if defined(BORINGSSL_CURVE25519_64BIT)
   2068                 676962063230039, 1880275537148808, 2046721011602706,
   2069                 888463247083003, 1318301552024067
   2070 #else
   2071                 55452759, 10087520, 58243976, 28018288, 47830290, 30498519,
   2072                 3999227, 13239134, 62331395, 19644223
   2073 #endif
   2074             }},
   2075             {{
   2076 #if defined(BORINGSSL_CURVE25519_64BIT)
   2077                 1466980508178206, 617045217998949, 652303580573628,
   2078                 757303753529064, 207583137376902
   2079 #else
   2080                 1382174, 21859713, 17266789, 9194690, 53784508, 9720080,
   2081                 20403944, 11284705, 53095046, 3093229
   2082 #endif
   2083             }},
   2084         },
   2085         {
   2086             {{
   2087 #if defined(BORINGSSL_CURVE25519_64BIT)
   2088                 1511056752906902, 105403126891277, 493434892772846,
   2089                 1091943425335976, 1802717338077427
   2090 #else
   2091                 16650902, 22516500, 66044685, 1570628, 58779118, 7352752,
   2092                 66806440, 16271224, 43059443, 26862581
   2093 #endif
   2094             }},
   2095             {{
   2096 #if defined(BORINGSSL_CURVE25519_64BIT)
   2097                 1853982405405128, 1878664056251147, 1528011020803992,
   2098                 1019626468153565, 1128438412189035
   2099 #else
   2100                 45197768, 27626490, 62497547, 27994275, 35364760, 22769138,
   2101                 24123613, 15193618, 45456747, 16815042
   2102 #endif
   2103             }},
   2104             {{
   2105 #if defined(BORINGSSL_CURVE25519_64BIT)
   2106                 1963939888391106, 293456433791664, 697897559513649,
   2107                 985882796904380, 796244541237972
   2108 #else
   2109                 57172930, 29264984, 41829040, 4372841, 2087473, 10399484,
   2110                 31870908, 14690798, 17361620, 11864968
   2111 #endif
   2112             }},
   2113         },
   2114         {
   2115             {{
   2116 #if defined(BORINGSSL_CURVE25519_64BIT)
   2117                 416770998629779, 389655552427054, 1314476859406756,
   2118                 1749382513022778, 1161905598739491
   2119 #else
   2120                 55801235, 6210371, 13206574, 5806320, 38091172, 19587231,
   2121                 54777658, 26067830, 41530403, 17313742
   2122 #endif
   2123             }},
   2124             {{
   2125 #if defined(BORINGSSL_CURVE25519_64BIT)
   2126                 1428358296490651, 1027115282420478, 304840698058337,
   2127                 441410174026628, 1819358356278573
   2128 #else
   2129                 14668443, 21284197, 26039038, 15305210, 25515617, 4542480,
   2130                 10453892, 6577524, 9145645, 27110552
   2131 #endif
   2132             }},
   2133             {{
   2134 #if defined(BORINGSSL_CURVE25519_64BIT)
   2135                 204943430200135, 1554861433819175, 216426658514651,
   2136                 264149070665950, 2047097371738319
   2137 #else
   2138                 5974855, 3053895, 57675815, 23169240, 35243739, 3225008,
   2139                 59136222, 3936127, 61456591, 30504127
   2140 #endif
   2141             }},
   2142         },
   2143         {
   2144             {{
   2145 #if defined(BORINGSSL_CURVE25519_64BIT)
   2146                 1934415182909034, 1393285083565062, 516409331772960,
   2147                 1157690734993892, 121039666594268
   2148 #else
   2149                 30625386, 28825032, 41552902, 20761565, 46624288, 7695098,
   2150                 17097188, 17250936, 39109084, 1803631
   2151 #endif
   2152             }},
   2153             {{
   2154 #if defined(BORINGSSL_CURVE25519_64BIT)
   2155                 662035583584445, 286736105093098, 1131773000510616,
   2156                 818494214211439, 472943792054479
   2157 #else
   2158                 63555773, 9865098, 61880298, 4272700, 61435032, 16864731,
   2159                 14911343, 12196514, 45703375, 7047411
   2160 #endif
   2161             }},
   2162             {{
   2163 #if defined(BORINGSSL_CURVE25519_64BIT)
   2164                 665784778135882, 1893179629898606, 808313193813106,
   2165                 276797254706413, 1563426179676396
   2166 #else
   2167                 20093258, 9920966, 55970670, 28210574, 13161586, 12044805,
   2168                 34252013, 4124600, 34765036, 23296865
   2169 #endif
   2170             }},
   2171         },
   2172         {
   2173             {{
   2174 #if defined(BORINGSSL_CURVE25519_64BIT)
   2175                 945205108984232, 526277562959295, 1324180513733566,
   2176                 1666970227868664, 153547609289173
   2177 #else
   2178                 46320040, 14084653, 53577151, 7842146, 19119038, 19731827,
   2179                 4752376, 24839792, 45429205, 2288037
   2180 #endif
   2181             }},
   2182             {{
   2183 #if defined(BORINGSSL_CURVE25519_64BIT)
   2184                 2031433403516252, 203996615228162, 170487168837083,
   2185                 981513604791390, 843573964916831
   2186 #else
   2187                 40289628, 30270716, 29965058, 3039786, 52635099, 2540456,
   2188                 29457502, 14625692, 42289247, 12570231
   2189 #endif
   2190             }},
   2191             {{
   2192 #if defined(BORINGSSL_CURVE25519_64BIT)
   2193                 1476570093962618, 838514669399805, 1857930577281364,
   2194                 2017007352225784, 317085545220047
   2195 #else
   2196                 66045306, 22002608, 16920317, 12494842, 1278292, 27685323,
   2197                 45948920, 30055751, 55134159, 4724942
   2198 #endif
   2199             }},
   2200         },
   2201         {
   2202             {{
   2203 #if defined(BORINGSSL_CURVE25519_64BIT)
   2204                 1461557121912842, 1600674043318359, 2157134900399597,
   2205                 1670641601940616, 127765583803283
   2206 #else
   2207                 17960970, 21778898, 62967895, 23851901, 58232301, 32143814,
   2208                 54201480, 24894499, 37532563, 1903855
   2209 #endif
   2210             }},
   2211             {{
   2212 #if defined(BORINGSSL_CURVE25519_64BIT)
   2213                 1293543509393474, 2143624609202546, 1058361566797508,
   2214                 214097127393994, 946888515472729
   2215 #else
   2216                 23134274, 19275300, 56426866, 31942495, 20684484, 15770816,
   2217                 54119114, 3190295, 26955097, 14109738
   2218 #endif
   2219             }},
   2220             {{
   2221 #if defined(BORINGSSL_CURVE25519_64BIT)
   2222                 357067959932916, 1290876214345711, 521245575443703,
   2223                 1494975468601005, 800942377643885
   2224 #else
   2225                 15308788, 5320727, 36995055, 19235554, 22902007, 7767164,
   2226                 29425325, 22276870, 31960941, 11934971
   2227 #endif
   2228             }},
   2229         },
   2230         {
   2231             {{
   2232 #if defined(BORINGSSL_CURVE25519_64BIT)
   2233                 566116659100033, 820247422481740, 994464017954148,
   2234                 327157611686365, 92591318111744
   2235 #else
   2236                 39713153, 8435795, 4109644, 12222639, 42480996, 14818668,
   2237                 20638173, 4875028, 10491392, 1379718
   2238 #endif
   2239             }},
   2240             {{
   2241 #if defined(BORINGSSL_CURVE25519_64BIT)
   2242                 617256647603209, 1652107761099439, 1857213046645471,
   2243                 1085597175214970, 817432759830522
   2244 #else
   2245                 53949449, 9197840, 3875503, 24618324, 65725151, 27674630,
   2246                 33518458, 16176658, 21432314, 12180697
   2247 #endif
   2248             }},
   2249             {{
   2250 #if defined(BORINGSSL_CURVE25519_64BIT)
   2251                 771808161440705, 1323510426395069, 680497615846440,
   2252                 851580615547985, 1320806384849017
   2253 #else
   2254                 55321537, 11500837, 13787581, 19721842, 44678184, 10140204,
   2255                 1465425, 12689540, 56807545, 19681548
   2256 #endif
   2257             }},
   2258         },
   2259     },
   2260     {
   2261         {
   2262             {{
   2263 #if defined(BORINGSSL_CURVE25519_64BIT)
   2264                 1219260086131915, 647169006596815, 79601124759706,
   2265                 2161724213426748, 404861897060198
   2266 #else
   2267                 5414091, 18168391, 46101199, 9643569, 12834970, 1186149,
   2268                 64485948, 32212200, 26128230, 6032912
   2269 #endif
   2270             }},
   2271             {{
   2272 #if defined(BORINGSSL_CURVE25519_64BIT)
   2273                 1327968293887866, 1335500852943256, 1401587164534264,
   2274                 558137311952440, 1551360549268902
   2275 #else
   2276                 40771450, 19788269, 32496024, 19900513, 17847800, 20885276,
   2277                 3604024, 8316894, 41233830, 23117073
   2278 #endif
   2279             }},
   2280             {{
   2281 #if defined(BORINGSSL_CURVE25519_64BIT)
   2282                 417621685193956, 1429953819744454, 396157358457099,
   2283                 1940470778873255, 214000046234152
   2284 #else
   2285                 3296484, 6223048, 24680646, 21307972, 44056843, 5903204,
   2286                 58246567, 28915267, 12376616, 3188849
   2287 #endif
   2288             }},
   2289         },
   2290         {
   2291             {{
   2292 #if defined(BORINGSSL_CURVE25519_64BIT)
   2293                 1268047918491973, 2172375426948536, 1533916099229249,
   2294                 1761293575457130, 1590622667026765
   2295 #else
   2296                 29190469, 18895386, 27549112, 32370916, 3520065, 22857131,
   2297                 32049514, 26245319, 50999629, 23702124
   2298 #endif
   2299             }},
   2300             {{
   2301 #if defined(BORINGSSL_CURVE25519_64BIT)
   2302                 1627072914981959, 2211603081280073, 1912369601616504,
   2303                 1191770436221309, 2187309757525860
   2304 #else
   2305                 52364359, 24245275, 735817, 32955454, 46701176, 28496527,
   2306                 25246077, 17758763, 18640740, 32593455
   2307 #endif
   2308             }},
   2309             {{
   2310 #if defined(BORINGSSL_CURVE25519_64BIT)
   2311                 1149147819689533, 378692712667677, 828475842424202,
   2312                 2218619146419342, 70688125792186
   2313 #else
   2314                 60180029, 17123636, 10361373, 5642961, 4910474, 12345252,
   2315                 35470478, 33060001, 10530746, 1053335
   2316 #endif
   2317             }},
   2318         },
   2319         {
   2320             {{
   2321 #if defined(BORINGSSL_CURVE25519_64BIT)
   2322                 1299739417079761, 1438616663452759, 1536729078504412,
   2323                 2053896748919838, 1008421032591246
   2324 #else
   2325                 37842897, 19367626, 53570647, 21437058, 47651804, 22899047,
   2326                 35646494, 30605446, 24018830, 15026644
   2327 #endif
   2328             }},
   2329             {{
   2330 #if defined(BORINGSSL_CURVE25519_64BIT)
   2331                 2040723824657366, 399555637875075, 632543375452995,
   2332                 872649937008051, 1235394727030233
   2333 #else
   2334                 44516310, 30409154, 64819587, 5953842, 53668675, 9425630,
   2335                 25310643, 13003497, 64794073, 18408815
   2336 #endif
   2337             }},
   2338             {{
   2339 #if defined(BORINGSSL_CURVE25519_64BIT)
   2340                 2211311599327900, 2139787259888175, 938706616835350,
   2341                 12609661139114, 2081897930719789
   2342 #else
   2343                 39688860, 32951110, 59064879, 31885314, 41016598, 13987818,
   2344                 39811242, 187898, 43942445, 31022696
   2345 #endif
   2346             }},
   2347         },
   2348         {
   2349             {{
   2350 #if defined(BORINGSSL_CURVE25519_64BIT)
   2351                 1324994503390450, 336982330582631, 1183998925654177,
   2352                 1091654665913274, 48727673971319
   2353 #else
   2354                 45364466, 19743956, 1844839, 5021428, 56674465, 17642958,
   2355                 9716666, 16266922, 62038647, 726098
   2356 #endif
   2357             }},
   2358             {{
   2359 #if defined(BORINGSSL_CURVE25519_64BIT)
   2360                 1845522914617879, 1222198248335542, 150841072760134,
   2361                 1927029069940982, 1189913404498011
   2362 #else
   2363                 29370903, 27500434, 7334070, 18212173, 9385286, 2247707,
   2364                 53446902, 28714970, 30007387, 17731091
   2365 #endif
   2366             }},
   2367             {{
   2368 #if defined(BORINGSSL_CURVE25519_64BIT)
   2369                 1079559557592645, 2215338383666441, 1903569501302605,
   2370                 49033973033940, 305703433934152
   2371 #else
   2372                 66172485, 16086690, 23751945, 33011114, 65941325, 28365395,
   2373                 9137108, 730663, 9835848, 4555336
   2374 #endif
   2375             }},
   2376         },
   2377         {
   2378             {{
   2379 #if defined(BORINGSSL_CURVE25519_64BIT)
   2380                 94653405416909, 1386121349852999, 1062130477891762,
   2381                 36553947479274, 833669648948846
   2382 #else
   2383                 43732429, 1410445, 44855111, 20654817, 30867634, 15826977,
   2384                 17693930, 544696, 55123566, 12422645
   2385 #endif
   2386             }},
   2387             {{
   2388 #if defined(BORINGSSL_CURVE25519_64BIT)
   2389                 1432015813136298, 440364795295369, 1395647062821501,
   2390                 1976874522764578, 934452372723352
   2391 #else
   2392                 31117226, 21338698, 53606025, 6561946, 57231997, 20796761,
   2393                 61990178, 29457725, 29120152, 13924425
   2394 #endif
   2395             }},
   2396             {{
   2397 #if defined(BORINGSSL_CURVE25519_64BIT)
   2398                 1296625309219774, 2068273464883862, 1858621048097805,
   2399                 1492281814208508, 2235868981918946
   2400 #else
   2401                 49707966, 19321222, 19675798, 30819676, 56101901, 27695611,
   2402                 57724924, 22236731, 7240930, 33317044
   2403 #endif
   2404             }},
   2405         },
   2406         {
   2407             {{
   2408 #if defined(BORINGSSL_CURVE25519_64BIT)
   2409                 1490330266465570, 1858795661361448, 1436241134969763,
   2410                 294573218899647, 1208140011028933
   2411 #else
   2412                 35747106, 22207651, 52101416, 27698213, 44655523, 21401660,
   2413                 1222335, 4389483, 3293637, 18002689
   2414 #endif
   2415             }},
   2416             {{
   2417 #if defined(BORINGSSL_CURVE25519_64BIT)
   2418                 1282462923712748, 741885683986255, 2027754642827561,
   2419                 518989529541027, 1826610009555945
   2420 #else
   2421                 50424044, 19110186, 11038543, 11054958, 53307689, 30215898,
   2422                 42789283, 7733546, 12796905, 27218610
   2423 #endif
   2424             }},
   2425             {{
   2426 #if defined(BORINGSSL_CURVE25519_64BIT)
   2427                 1525827120027511, 723686461809551, 1597702369236987,
   2428                 244802101764964, 1502833890372311
   2429 #else
   2430                 58349431, 22736595, 41689999, 10783768, 36493307, 23807620,
   2431                 38855524, 3647835, 3222231, 22393970
   2432 #endif
   2433             }},
   2434         },
   2435         {
   2436             {{
   2437 #if defined(BORINGSSL_CURVE25519_64BIT)
   2438                 113622036244513, 1233740067745854, 674109952278496,
   2439                 2114345180342965, 166764512856263
   2440 #else
   2441                 18606113, 1693100, 41660478, 18384159, 4112352, 10045021,
   2442                 23603893, 31506198, 59558087, 2484984
   2443 #endif
   2444             }},
   2445             {{
   2446 #if defined(BORINGSSL_CURVE25519_64BIT)
   2447                 2041668749310338, 2184405322203901, 1633400637611036,
   2448                 2110682505536899, 2048144390084644
   2449 #else
   2450                 9255298, 30423235, 54952701, 32550175, 13098012, 24339566,
   2451                 16377219, 31451620, 47306788, 30519729
   2452 #endif
   2453             }},
   2454             {{
   2455 #if defined(BORINGSSL_CURVE25519_64BIT)
   2456                 503058759232932, 760293024620937, 2027152777219493,
   2457                 666858468148475, 1539184379870952
   2458 #else
   2459                 44379556, 7496159, 61366665, 11329248, 19991973, 30206930,
   2460                 35390715, 9936965, 37011176, 22935634
   2461 #endif
   2462             }},
   2463         },
   2464         {
   2465             {{
   2466 #if defined(BORINGSSL_CURVE25519_64BIT)
   2467                 1916168475367211, 915626432541343, 883217071712575,
   2468                 363427871374304, 1976029821251593
   2469 #else
   2470                 21878571, 28553135, 4338335, 13643897, 64071999, 13160959,
   2471                 19708896, 5415497, 59748361, 29445138
   2472 #endif
   2473             }},
   2474             {{
   2475 #if defined(BORINGSSL_CURVE25519_64BIT)
   2476                 678039535434506, 570587290189340, 1605302676614120,
   2477                 2147762562875701, 1706063797091704
   2478 #else
   2479                 27736842, 10103576, 12500508, 8502413, 63695848, 23920873,
   2480                 10436917, 32004156, 43449720, 25422331
   2481 #endif
   2482             }},
   2483             {{
   2484 #if defined(BORINGSSL_CURVE25519_64BIT)
   2485                 1439489648586438, 2194580753290951, 832380563557396,
   2486                 561521973970522, 584497280718389
   2487 #else
   2488                 19492550, 21450067, 37426887, 32701801, 63900692, 12403436,
   2489                 30066266, 8367329, 13243957, 8709688
   2490 #endif
   2491             }},
   2492         },
   2493     },
   2494     {
   2495         {
   2496             {{
   2497 #if defined(BORINGSSL_CURVE25519_64BIT)
   2498                 187989455492609, 681223515948275, 1933493571072456,
   2499                 1872921007304880, 488162364135671
   2500 #else
   2501                 12015105, 2801261, 28198131, 10151021, 24818120, 28811299,
   2502                 55914672, 27908697, 5150967, 7274186
   2503 #endif
   2504             }},
   2505             {{
   2506 #if defined(BORINGSSL_CURVE25519_64BIT)
   2507                 1413466089534451, 410844090765630, 1397263346404072,
   2508                 408227143123410, 1594561803147811
   2509 #else
   2510                 2831347, 21062286, 1478974, 6122054, 23825128, 20820846,
   2511                 31097298, 6083058, 31021603, 23760822
   2512 #endif
   2513             }},
   2514             {{
   2515 #if defined(BORINGSSL_CURVE25519_64BIT)
   2516                 2102170800973153, 719462588665004, 1479649438510153,
   2517                 1097529543970028, 1302363283777685
   2518 #else
   2519                 64578913, 31324785, 445612, 10720828, 53259337, 22048494,
   2520                 43601132, 16354464, 15067285, 19406725
   2521 #endif
   2522             }},
   2523         },
   2524         {
   2525             {{
   2526 #if defined(BORINGSSL_CURVE25519_64BIT)
   2527                 942065717847195, 1069313679352961, 2007341951411051,
   2528                 70973416446291, 1419433790163706
   2529 #else
   2530                 7840923, 14037873, 33744001, 15934015, 66380651, 29911725,
   2531                 21403987, 1057586, 47729402, 21151211
   2532 #endif
   2533             }},
   2534             {{
   2535 #if defined(BORINGSSL_CURVE25519_64BIT)
   2536                 1146565545556377, 1661971299445212, 406681704748893,
   2537                 564452436406089, 1109109865829139
   2538 #else
   2539                 915865, 17085158, 15608284, 24765302, 42751837, 6060029,
   2540                 49737545, 8410996, 59888403, 16527024
   2541 #endif
   2542             }},
   2543             {{
   2544 #if defined(BORINGSSL_CURVE25519_64BIT)
   2545                 2214421081775077, 1165671861210569, 1890453018796184,
   2546                 3556249878661, 442116172656317
   2547 #else
   2548                 32922597, 32997445, 20336073, 17369864, 10903704, 28169945,
   2549                 16957573, 52992, 23834301, 6588044
   2550 #endif
   2551             }},
   2552         },
   2553         {
   2554             {{
   2555 #if defined(BORINGSSL_CURVE25519_64BIT)
   2556                 753830546620811, 1666955059895019, 1530775289309243,
   2557                 1119987029104146, 2164156153857580
   2558 #else
   2559                 32752011, 11232950, 3381995, 24839566, 22652987, 22810329,
   2560                 17159698, 16689107, 46794284, 32248439
   2561 #endif
   2562             }},
   2563             {{
   2564 #if defined(BORINGSSL_CURVE25519_64BIT)
   2565                 615171919212796, 1523849404854568, 854560460547503,
   2566                 2067097370290715, 1765325848586042
   2567 #else
   2568                 62419196, 9166775, 41398568, 22707125, 11576751, 12733943,
   2569                 7924251, 30802151, 1976122, 26305405
   2570 #endif
   2571             }},
   2572             {{
   2573 #if defined(BORINGSSL_CURVE25519_64BIT)
   2574                 1094538949313667, 1796592198908825, 870221004284388,
   2575                 2025558921863561, 1699010892802384
   2576 #else
   2577                 21251203, 16309901, 64125849, 26771309, 30810596, 12967303,
   2578                 156041, 30183180, 12331344, 25317235
   2579 #endif
   2580             }},
   2581         },
   2582         {
   2583             {{
   2584 #if defined(BORINGSSL_CURVE25519_64BIT)
   2585                 1951351290725195, 1916457206844795, 198025184438026,
   2586                 1909076887557595, 1938542290318919
   2587 #else
   2588                 8651595, 29077400, 51023227, 28557437, 13002506, 2950805,
   2589                 29054427, 28447462, 10008135, 28886531
   2590 #endif
   2591             }},
   2592             {{
   2593 #if defined(BORINGSSL_CURVE25519_64BIT)
   2594                 1014323197538413, 869150639940606, 1756009942696599,
   2595                 1334952557375672, 1544945379082874
   2596 #else
   2597                 31486061, 15114593, 52847614, 12951353, 14369431, 26166587,
   2598                 16347320, 19892343, 8684154, 23021480
   2599 #endif
   2600             }},
   2601             {{
   2602 #if defined(BORINGSSL_CURVE25519_64BIT)
   2603                 764055910920305, 1603590757375439, 146805246592357,
   2604                 1843313433854297, 954279890114939
   2605 #else
   2606                 19443825, 11385320, 24468943, 23895364, 43189605, 2187568,
   2607                 40845657, 27467510, 31316347, 14219878
   2608 #endif
   2609             }},
   2610         },
   2611         {
   2612             {{
   2613 #if defined(BORINGSSL_CURVE25519_64BIT)
   2614                 80113526615750, 764536758732259, 1055139345100233,
   2615                 469252651759390, 617897512431515
   2616 #else
   2617                 38514374, 1193784, 32245219, 11392485, 31092169, 15722801,
   2618                 27146014, 6992409, 29126555, 9207390
   2619 #endif
   2620             }},
   2621             {{
   2622 #if defined(BORINGSSL_CURVE25519_64BIT)
   2623                 74497112547268, 740094153192149, 1745254631717581,
   2624                 727713886503130, 1283034364416928
   2625 #else
   2626                 32382916, 1110093, 18477781, 11028262, 39697101, 26006320,
   2627                 62128346, 10843781, 59151264, 19118701
   2628 #endif
   2629             }},
   2630             {{
   2631 #if defined(BORINGSSL_CURVE25519_64BIT)
   2632                 525892105991110, 1723776830270342, 1476444848991936,
   2633                 573789489857760, 133864092632978
   2634 #else
   2635                 2814918, 7836403, 27519878, 25686276, 46214848, 22000742,
   2636                 45614304, 8550129, 28346258, 1994730
   2637 #endif
   2638             }},
   2639         },
   2640         {
   2641             {{
   2642 #if defined(BORINGSSL_CURVE25519_64BIT)
   2643                 542611720192581, 1986812262899321, 1162535242465837,
   2644                 481498966143464, 544600533583622
   2645 #else
   2646                 47530565, 8085544, 53108345, 29605809, 2785837, 17323125,
   2647                 47591912, 7174893, 22628102, 8115180
   2648 #endif
   2649             }},
   2650             {{
   2651 #if defined(BORINGSSL_CURVE25519_64BIT)
   2652                 64123227344372, 1239927720647794, 1360722983445904,
   2653                 222610813654661, 62429487187991
   2654 #else
   2655                 36703732, 955510, 55975026, 18476362, 34661776, 20276352,
   2656                 41457285, 3317159, 57165847, 930271
   2657 #endif
   2658             }},
   2659             {{
   2660 #if defined(BORINGSSL_CURVE25519_64BIT)
   2661                 1793193323953132, 91096687857833, 70945970938921,
   2662                 2158587638946380, 1537042406482111
   2663 #else
   2664                 51805164, 26720662, 28856489, 1357446, 23421993, 1057177,
   2665                 24091212, 32165462, 44343487, 22903716
   2666 #endif
   2667             }},
   2668         },
   2669         {
   2670             {{
   2671 #if defined(BORINGSSL_CURVE25519_64BIT)
   2672                 1895854577604609, 1394895708949416, 1728548428495944,
   2673                 1140864900240149, 563645333603061
   2674 #else
   2675                 44357633, 28250434, 54201256, 20785565, 51297352, 25757378,
   2676                 52269845, 17000211, 65241845, 8398969
   2677 #endif
   2678             }},
   2679             {{
   2680 #if defined(BORINGSSL_CURVE25519_64BIT)
   2681                 141358280486863, 91435889572504, 1087208572552643,
   2682                 1829599652522921, 1193307020643647
   2683 #else
   2684                 35139535, 2106402, 62372504, 1362500, 12813763, 16200670,
   2685                 22981545, 27263159, 18009407, 17781660
   2686 #endif
   2687             }},
   2688             {{
   2689 #if defined(BORINGSSL_CURVE25519_64BIT)
   2690                 1611230858525381, 950720175540785, 499589887488610,
   2691                 2001656988495019, 88977313255908
   2692 #else
   2693                 49887941, 24009210, 39324209, 14166834, 29815394, 7444469,
   2694                 29551787, 29827013, 19288548, 1325865
   2695 #endif
   2696             }},
   2697         },
   2698         {
   2699             {{
   2700 #if defined(BORINGSSL_CURVE25519_64BIT)
   2701                 1189080501479658, 2184348804772597, 1040818725742319,
   2702                 2018318290311834, 1712060030915354
   2703 #else
   2704                 15100138, 17718680, 43184885, 32549333, 40658671, 15509407,
   2705                 12376730, 30075286, 33166106, 25511682
   2706 #endif
   2707             }},
   2708             {{
   2709 #if defined(BORINGSSL_CURVE25519_64BIT)
   2710                 873966876953756, 1090638350350440, 1708559325189137,
   2711                 672344594801910, 1320437969700239
   2712 #else
   2713                 20909212, 13023121, 57899112, 16251777, 61330449, 25459517,
   2714                 12412150, 10018715, 2213263, 19676059
   2715 #endif
   2716             }},
   2717             {{
   2718 #if defined(BORINGSSL_CURVE25519_64BIT)
   2719                 1508590048271766, 1131769479776094, 101550868699323,
   2720                 428297785557897, 561791648661744
   2721 #else
   2722                 32529814, 22479743, 30361438, 16864679, 57972923, 1513225,
   2723                 22922121, 6382134, 61341936, 8371347
   2724 #endif
   2725             }},
   2726         },
   2727     },
   2728     {
   2729         {
   2730             {{
   2731 #if defined(BORINGSSL_CURVE25519_64BIT)
   2732                 756417570499462, 237882279232602, 2136263418594016,
   2733                 1701968045454886, 703713185137472
   2734 #else
   2735                 9923462, 11271500, 12616794, 3544722, 37110496, 31832805,
   2736                 12891686, 25361300, 40665920, 10486143
   2737 #endif
   2738             }},
   2739             {{
   2740 #if defined(BORINGSSL_CURVE25519_64BIT)
   2741                 1781187809325462, 1697624151492346, 1381393690939988,
   2742                 175194132284669, 1483054666415238
   2743 #else
   2744                 44511638, 26541766, 8587002, 25296571, 4084308, 20584370,
   2745                 361725, 2610596, 43187334, 22099236
   2746 #endif
   2747             }},
   2748             {{
   2749 #if defined(BORINGSSL_CURVE25519_64BIT)
   2750                 2175517777364616, 708781536456029, 955668231122942,
   2751                 1967557500069555, 2021208005604118
   2752 #else
   2753                 5408392, 32417741, 62139741, 10561667, 24145918, 14240566,
   2754                 31319731, 29318891, 19985174, 30118346
   2755 #endif
   2756             }},
   2757         },
   2758         {
   2759             {{
   2760 #if defined(BORINGSSL_CURVE25519_64BIT)
   2761                 1115135966606887, 224217372950782, 915967306279222,
   2762                 593866251291540, 561747094208006
   2763 #else
   2764                 53114407, 16616820, 14549246, 3341099, 32155958, 13648976,
   2765                 49531796, 8849296, 65030, 8370684
   2766 #endif
   2767             }},
   2768             {{
   2769 #if defined(BORINGSSL_CURVE25519_64BIT)
   2770                 1443163092879439, 391875531646162, 2180847134654632,
   2771                 464538543018753, 1594098196837178
   2772 #else
   2773                 58787919, 21504805, 31204562, 5839400, 46481576, 32497154,
   2774                 47665921, 6922163, 12743482, 23753914
   2775 #endif
   2776             }},
   2777             {{
   2778 #if defined(BORINGSSL_CURVE25519_64BIT)
   2779                 850858855888869, 319436476624586, 327807784938441,
   2780                 740785849558761, 17128415486016
   2781 #else
   2782                 64747493, 12678784, 28815050, 4759974, 43215817, 4884716,
   2783                 23783145, 11038569, 18800704, 255233
   2784 #endif
   2785             }},
   2786         },
   2787         {
   2788             {{
   2789 #if defined(BORINGSSL_CURVE25519_64BIT)
   2790                 2132756334090067, 536247820155645, 48907151276867,
   2791                 608473197600695, 1261689545022784
   2792 #else
   2793                 61839187, 31780545, 13957885, 7990715, 23132995, 728773,
   2794                 13393847, 9066957, 19258688, 18800639
   2795 #endif
   2796             }},
   2797             {{
   2798 #if defined(BORINGSSL_CURVE25519_64BIT)
   2799                 1525176236978354, 974205476721062, 293436255662638,
   2800                 148269621098039, 137961998433963
   2801 #else
   2802                 64172210, 22726896, 56676774, 14516792, 63468078, 4372540,
   2803                 35173943, 2209389, 65584811, 2055793
   2804 #endif
   2805             }},
   2806             {{
   2807 #if defined(BORINGSSL_CURVE25519_64BIT)
   2808                 1121075518299410, 2071745529082111, 1265567917414828,
   2809                 1648196578317805, 496232102750820
   2810 #else
   2811                 580882, 16705327, 5468415, 30871414, 36182444, 18858431,
   2812                 59905517, 24560042, 37087844, 7394434
   2813 #endif
   2814             }},
   2815         },
   2816         {
   2817             {{
   2818 #if defined(BORINGSSL_CURVE25519_64BIT)
   2819                 122321229299801, 1022922077493685, 2001275453369484,
   2820                 2017441881607947, 993205880778002
   2821 #else
   2822                 23838809, 1822728, 51370421, 15242726, 8318092, 29821328,
   2823                 45436683, 30062226, 62287122, 14799920
   2824 #endif
   2825             }},
   2826             {{
   2827 #if defined(BORINGSSL_CURVE25519_64BIT)
   2828                 654925550560074, 1168810995576858, 575655959430926,
   2829                 905758704861388, 496774564663534
   2830 #else
   2831                 13345610, 9759151, 3371034, 17416641, 16353038, 8577942,
   2832                 31129804, 13496856, 58052846, 7402517
   2833 #endif
   2834             }},
   2835             {{
   2836 #if defined(BORINGSSL_CURVE25519_64BIT)
   2837                 1954109525779738, 2117022646152485, 338102630417180,
   2838                 1194140505732026, 107881734943492
   2839 #else
   2840                 2286874, 29118501, 47066405, 31546095, 53412636, 5038121,
   2841                 11006906, 17794080, 8205060, 1607563
   2842 #endif
   2843             }},
   2844         },
   2845         {
   2846             {{
   2847 #if defined(BORINGSSL_CURVE25519_64BIT)
   2848                 1714785840001267, 2036500018681589, 1876380234251966,
   2849                 2056717182974196, 1645855254384642
   2850 #else
   2851                 14414067, 25552300, 3331829, 30346215, 22249150, 27960244,
   2852                 18364660, 30647474, 30019586, 24525154
   2853 #endif
   2854             }},
   2855             {{
   2856 #if defined(BORINGSSL_CURVE25519_64BIT)
   2857                 106431476499341, 62482972120563, 1513446655109411,
   2858                 807258751769522, 538491469114
   2859 #else
   2860                 39420813, 1585952, 56333811, 931068, 37988643, 22552112,
   2861                 52698034, 12029092, 9944378, 8024
   2862 #endif
   2863             }},
   2864             {{
   2865 #if defined(BORINGSSL_CURVE25519_64BIT)
   2866                 2002850762893643, 1243624520538135, 1486040410574605,
   2867                 2184752338181213, 378495998083531
   2868 #else
   2869                 4368715, 29844802, 29874199, 18531449, 46878477, 22143727,
   2870                 50994269, 32555346, 58966475, 5640029
   2871 #endif
   2872             }},
   2873         },
   2874         {
   2875             {{
   2876 #if defined(BORINGSSL_CURVE25519_64BIT)
   2877                 922510868424903, 1089502620807680, 402544072617374,
   2878                 1131446598479839, 1290278588136533
   2879 #else
   2880                 10299591, 13746483, 11661824, 16234854, 7630238, 5998374,
   2881                 9809887, 16859868, 15219797, 19226649
   2882 #endif
   2883             }},
   2884             {{
   2885 #if defined(BORINGSSL_CURVE25519_64BIT)
   2886                 1867998812076769, 715425053580701, 39968586461416,
   2887                 2173068014586163, 653822651801304
   2888 #else
   2889                 27425505, 27835351, 3055005, 10660664, 23458024, 595578,
   2890                 51710259, 32381236, 48766680, 9742716
   2891 #endif
   2892             }},
   2893             {{
   2894 #if defined(BORINGSSL_CURVE25519_64BIT)
   2895                 162892278589453, 182585796682149, 75093073137630,
   2896                 497037941226502, 133871727117371
   2897 #else
   2898                 6744077, 2427284, 26042789, 2720740, 66260958, 1118973,
   2899                 32324614, 7406442, 12420155, 1994844
   2900 #endif
   2901             }},
   2902         },
   2903         {
   2904             {{
   2905 #if defined(BORINGSSL_CURVE25519_64BIT)
   2906                 1914596576579670, 1608999621851578, 1987629837704609,
   2907                 1519655314857977, 1819193753409464
   2908 #else
   2909                 14012502, 28529712, 48724410, 23975962, 40623521, 29617992,
   2910                 54075385, 22644628, 24319928, 27108099
   2911 #endif
   2912             }},
   2913             {{
   2914 #if defined(BORINGSSL_CURVE25519_64BIT)
   2915                 1949315551096831, 1069003344994464, 1939165033499916,
   2916                 1548227205730856, 1933767655861407
   2917 #else
   2918                 16412671, 29047065, 10772640, 15929391, 50040076, 28895810,
   2919                 10555944, 23070383, 37006495, 28815383
   2920 #endif
   2921             }},
   2922             {{
   2923 #if defined(BORINGSSL_CURVE25519_64BIT)
   2924                 1730519386931635, 1393284965610134, 1597143735726030,
   2925                 416032382447158, 1429665248828629
   2926 #else
   2927                 22397363, 25786748, 57815702, 20761563, 17166286, 23799296,
   2928                 39775798, 6199365, 21880021, 21303672
   2929 #endif
   2930             }},
   2931         },
   2932         {
   2933             {{
   2934 #if defined(BORINGSSL_CURVE25519_64BIT)
   2935                 360275475604565, 547835731063078, 215360904187529,
   2936                 596646739879007, 332709650425085
   2937 #else
   2938                 62825557, 5368522, 35991846, 8163388, 36785801, 3209127,
   2939                 16557151, 8890729, 8840445, 4957760
   2940 #endif
   2941             }},
   2942             {{
   2943 #if defined(BORINGSSL_CURVE25519_64BIT)
   2944                 47602113726801, 1522314509708010, 437706261372925,
   2945                 814035330438027, 335930650933545
   2946 #else
   2947                 51661137, 709326, 60189418, 22684253, 37330941, 6522331,
   2948                 45388683, 12130071, 52312361, 5005756
   2949 #endif
   2950             }},
   2951             {{
   2952 #if defined(BORINGSSL_CURVE25519_64BIT)
   2953                 1291597595523886, 1058020588994081, 402837842324045,
   2954                 1363323695882781, 2105763393033193
   2955 #else
   2956                 64994094, 19246303, 23019041, 15765735, 41839181, 6002751,
   2957                 10183197, 20315106, 50713577, 31378319
   2958 #endif
   2959             }},
   2960         },
   2961     },
   2962     {
   2963         {
   2964             {{
   2965 #if defined(BORINGSSL_CURVE25519_64BIT)
   2966                 109521982566564, 1715257748585139, 1112231216891516,
   2967                 2046641005101484, 134249157157013
   2968 #else
   2969                 48083108, 1632004, 13466291, 25559332, 43468412, 16573536,
   2970                 35094956, 30497327, 22208661, 2000468
   2971 #endif
   2972             }},
   2973             {{
   2974 #if defined(BORINGSSL_CURVE25519_64BIT)
   2975                 2156991030936798, 2227544497153325, 1869050094431622,
   2976                 754875860479115, 1754242344267058
   2977 #else
   2978                 3065054, 32141671, 41510189, 33192999, 49425798, 27851016,
   2979                 58944651, 11248526, 63417650, 26140247
   2980 #endif
   2981             }},
   2982             {{
   2983 #if defined(BORINGSSL_CURVE25519_64BIT)
   2984                 1846089562873800, 98894784984326, 1412430299204844,
   2985                 171351226625762, 1100604760929008
   2986 #else
   2987                 10379208, 27508878, 8877318, 1473647, 37817580, 21046851,
   2988                 16690914, 2553332, 63976176, 16400288
   2989 #endif
   2990             }},
   2991         },
   2992         {
   2993             {{
   2994 #if defined(BORINGSSL_CURVE25519_64BIT)
   2995                 84172382130492, 499710970700046, 425749630620778,
   2996                 1762872794206857, 612842602127960
   2997 #else
   2998                 15716668, 1254266, 48636174, 7446273, 58659946, 6344163,
   2999                 45011593, 26268851, 26894936, 9132066
   3000 #endif
   3001             }},
   3002             {{
   3003 #if defined(BORINGSSL_CURVE25519_64BIT)
   3004                 868309334532756, 1703010512741873, 1952690008738057,
   3005                 4325269926064, 2071083554962116
   3006 #else
   3007                 24158868, 12938817, 11085297, 25376834, 39045385, 29097348,
   3008                 36532400, 64451, 60291780, 30861549
   3009 #endif
   3010             }},
   3011             {{
   3012 #if defined(BORINGSSL_CURVE25519_64BIT)
   3013                 523094549451158, 401938899487815, 1407690589076010,
   3014                 2022387426254453, 158660516411257
   3015 #else
   3016                 13488534, 7794716, 22236231, 5989356, 25426474, 20976224,
   3017                 2350709, 30135921, 62420857, 2364225
   3018 #endif
   3019             }},
   3020         },
   3021         {
   3022             {{
   3023 #if defined(BORINGSSL_CURVE25519_64BIT)
   3024                 612867287630009, 448212612103814, 571629077419196,
   3025                 1466796750919376, 1728478129663858
   3026 #else
   3027                 16335033, 9132434, 25640582, 6678888, 1725628, 8517937,
   3028                 55301840, 21856974, 15445874, 25756331
   3029 #endif
   3030             }},
   3031             {{
   3032 #if defined(BORINGSSL_CURVE25519_64BIT)
   3033                 1723848973783452, 2208822520534681, 1718748322776940,
   3034                 1974268454121942, 1194212502258141
   3035 #else
   3036                 29004188, 25687351, 28661401, 32914020, 54314860, 25611345,
   3037                 31863254, 29418892, 66830813, 17795152
   3038 #endif
   3039             }},
   3040             {{
   3041 #if defined(BORINGSSL_CURVE25519_64BIT)
   3042                 1254114807944608, 977770684047110, 2010756238954993,
   3043                 1783628927194099, 1525962994408256
   3044 #else
   3045                 60986784, 18687766, 38493958, 14569918, 56250865, 29962602,
   3046                 10343411, 26578142, 37280576, 22738620
   3047 #endif
   3048             }},
   3049         },
   3050         {
   3051             {{
   3052 #if defined(BORINGSSL_CURVE25519_64BIT)
   3053                 232464058235826, 1948628555342434, 1835348780427694,
   3054                 1031609499437291, 64472106918373
   3055 #else
   3056                 27081650, 3463984, 14099042, 29036828, 1616302, 27348828,
   3057                 29542635, 15372179, 17293797, 960709
   3058 #endif
   3059             }},
   3060             {{
   3061 #if defined(BORINGSSL_CURVE25519_64BIT)
   3062                 767338676040683, 754089548318405, 1523192045639075,
   3063                 435746025122062, 512692508440385
   3064 #else
   3065                 20263915, 11434237, 61343429, 11236809, 13505955, 22697330,
   3066                 50997518, 6493121, 47724353, 7639713
   3067 #endif
   3068             }},
   3069             {{
   3070 #if defined(BORINGSSL_CURVE25519_64BIT)
   3071                 1255955808701983, 1700487367990941, 1166401238800299,
   3072                 1175121994891534, 1190934801395380
   3073 #else
   3074                 64278047, 18715199, 25403037, 25339236, 58791851, 17380732,
   3075                 18006286, 17510682, 29994676, 17746311
   3076 #endif
   3077             }},
   3078         },
   3079         {
   3080             {{
   3081 #if defined(BORINGSSL_CURVE25519_64BIT)
   3082                 349144008168292, 1337012557669162, 1475912332999108,
   3083                 1321618454900458, 47611291904320
   3084 #else
   3085                 9769828, 5202651, 42951466, 19923039, 39057860, 21992807,
   3086                 42495722, 19693649, 35924288, 709463
   3087 #endif
   3088             }},
   3089             {{
   3090 #if defined(BORINGSSL_CURVE25519_64BIT)
   3091                 877519947135419, 2172838026132651, 272304391224129,
   3092                 1655143327559984, 886229406429814
   3093 #else
   3094                 12286395, 13076066, 45333675, 32377809, 42105665, 4057651,
   3095                 35090736, 24663557, 16102006, 13205847
   3096 #endif
   3097             }},
   3098             {{
   3099 #if defined(BORINGSSL_CURVE25519_64BIT)
   3100                 375806028254706, 214463229793940, 572906353144089,
   3101                 572168269875638, 697556386112979
   3102 #else
   3103                 13733362, 5599946, 10557076, 3195751, 61550873, 8536969,
   3104                 41568694, 8525971, 10151379, 10394400
   3105 #endif
   3106             }},
   3107         },
   3108         {
   3109             {{
   3110 #if defined(BORINGSSL_CURVE25519_64BIT)
   3111                 1168827102357844, 823864273033637, 2071538752104697,
   3112                 788062026895924, 599578340743362
   3113 #else
   3114                 4024660, 17416881, 22436261, 12276534, 58009849, 30868332,
   3115                 19698228, 11743039, 33806530, 8934413
   3116 #endif
   3117             }},
   3118             {{
   3119 #if defined(BORINGSSL_CURVE25519_64BIT)
   3120                 1948116082078088, 2054898304487796, 2204939184983900,
   3121                 210526805152138, 786593586607626
   3122 #else
   3123                 51229064, 29029191, 58528116, 30620370, 14634844, 32856154,
   3124                 57659786, 3137093, 55571978, 11721157
   3125 #endif
   3126             }},
   3127             {{
   3128 #if defined(BORINGSSL_CURVE25519_64BIT)
   3129                 1915320147894736, 156481169009469, 655050471180417,
   3130                 592917090415421, 2165897438660879
   3131 #else
   3132                 17555920, 28540494, 8268605, 2331751, 44370049, 9761012,
   3133                 9319229, 8835153, 57903375, 32274386
   3134 #endif
   3135             }},
   3136         },
   3137         {
   3138             {{
   3139 #if defined(BORINGSSL_CURVE25519_64BIT)
   3140                 1726336468579724, 1119932070398949, 1929199510967666,
   3141                 33918788322959, 1836837863503150
   3142 #else
   3143                 66647436, 25724417, 20614117, 16688288, 59594098, 28747312,
   3144                 22300303, 505429, 6108462, 27371017
   3145 #endif
   3146             }},
   3147             {{
   3148 #if defined(BORINGSSL_CURVE25519_64BIT)
   3149                 829996854845988, 217061778005138, 1686565909803640,
   3150                 1346948817219846, 1723823550730181
   3151 #else
   3152                 62038564, 12367916, 36445330, 3234472, 32617080, 25131790,
   3153                 29880582, 20071101, 40210373, 25686972
   3154 #endif
   3155             }},
   3156             {{
   3157 #if defined(BORINGSSL_CURVE25519_64BIT)
   3158                 384301494966394, 687038900403062, 2211195391021739,
   3159                 254684538421383, 1245698430589680
   3160 #else
   3161                 35133562, 5726538, 26934134, 10237677, 63935147, 32949378,
   3162                 24199303, 3795095, 7592688, 18562353
   3163 #endif
   3164             }},
   3165         },
   3166         {
   3167             {{
   3168 #if defined(BORINGSSL_CURVE25519_64BIT)
   3169                 1247567493562688, 1978182094455847, 183871474792955,
   3170                 806570235643435, 288461518067916
   3171 #else
   3172                 21594432, 18590204, 17466407, 29477210, 32537083, 2739898,
   3173                 6407723, 12018833, 38852812, 4298411
   3174 #endif
   3175             }},
   3176             {{
   3177 #if defined(BORINGSSL_CURVE25519_64BIT)
   3178                 1449077384734201, 38285445457996, 2136537659177832,
   3179                 2146493000841573, 725161151123125
   3180 #else
   3181                 46458361, 21592935, 39872588, 570497, 3767144, 31836892,
   3182                 13891941, 31985238, 13717173, 10805743
   3183 #endif
   3184             }},
   3185             {{
   3186 #if defined(BORINGSSL_CURVE25519_64BIT)
   3187                 1201928866368855, 800415690605445, 1703146756828343,
   3188                 997278587541744, 1858284414104014
   3189 #else
   3190                 52432215, 17910135, 15287173, 11927123, 24177847, 25378864,
   3191                 66312432, 14860608, 40169934, 27690595
   3192 #endif
   3193             }},
   3194         },
   3195     },
   3196     {
   3197         {
   3198             {{
   3199 #if defined(BORINGSSL_CURVE25519_64BIT)
   3200                 356468809648877, 782373916933152, 1718002439402870,
   3201                 1392222252219254, 663171266061951
   3202 #else
   3203                 12962541, 5311799, 57048096, 11658279, 18855286, 25600231,
   3204                 13286262, 20745728, 62727807, 9882021
   3205 #endif
   3206             }},
   3207             {{
   3208 #if defined(BORINGSSL_CURVE25519_64BIT)
   3209                 759628738230460, 1012693474275852, 353780233086498,
   3210                 246080061387552, 2030378857679162
   3211 #else
   3212                 18512060, 11319350, 46985740, 15090308, 18818594, 5271736,
   3213                 44380960, 3666878, 43141434, 30255002
   3214 #endif
   3215             }},
   3216             {{
   3217 #if defined(BORINGSSL_CURVE25519_64BIT)
   3218                 2040672435071076, 888593182036908, 1298443657189359,
   3219                 1804780278521327, 354070726137060
   3220 #else
   3221                 60319844, 30408388, 16192428, 13241070, 15898607, 19348318,
   3222                 57023983, 26893321, 64705764, 5276064
   3223 #endif
   3224             }},
   3225         },
   3226         {
   3227             {{
   3228 #if defined(BORINGSSL_CURVE25519_64BIT)
   3229                 1894938527423184, 1463213041477277, 474410505497651,
   3230                 247294963033299, 877975941029128
   3231 #else
   3232                 30169808, 28236784, 26306205, 21803573, 27814963, 7069267,
   3233                 7152851, 3684982, 1449224, 13082861
   3234 #endif
   3235             }},
   3236             {{
   3237 #if defined(BORINGSSL_CURVE25519_64BIT)
   3238                 207937160991127, 12966911039119, 820997788283092,
   3239                 1010440472205286, 1701372890140810
   3240 #else
   3241                 10342807, 3098505, 2119311, 193222, 25702612, 12233820,
   3242                 23697382, 15056736, 46092426, 25352431
   3243 #endif
   3244             }},
   3245             {{
   3246 #if defined(BORINGSSL_CURVE25519_64BIT)
   3247                 218882774543183, 533427444716285, 1233243976733245,
   3248                 435054256891319, 1509568989549904
   3249 #else
   3250                 33958735, 3261607, 22745853, 7948688, 19370557, 18376767,
   3251                 40936887, 6482813, 56808784, 22494330
   3252 #endif
   3253             }},
   3254         },
   3255         {
   3256             {{
   3257 #if defined(BORINGSSL_CURVE25519_64BIT)
   3258                 1888838535711826, 1052177758340622, 1213553803324135,
   3259                 169182009127332, 463374268115872
   3260 #else
   3261                 32869458, 28145887, 25609742, 15678670, 56421095, 18083360,
   3262                 26112420, 2521008, 44444576, 6904814
   3263 #endif
   3264             }},
   3265             {{
   3266 #if defined(BORINGSSL_CURVE25519_64BIT)
   3267                 299137589460312, 1594371588983567, 868058494039073,
   3268                 257771590636681, 1805012993142921
   3269 #else
   3270                 29506904, 4457497, 3377935, 23757988, 36598817, 12935079,
   3271                 1561737, 3841096, 38105225, 26896789
   3272 #endif
   3273             }},
   3274             {{
   3275 #if defined(BORINGSSL_CURVE25519_64BIT)
   3276                 1806842755664364, 2098896946025095, 1356630998422878,
   3277                 1458279806348064, 347755825962072
   3278 #else
   3279                 10340844, 26924055, 48452231, 31276001, 12621150, 20215377,
   3280                 30878496, 21730062, 41524312, 5181965
   3281 #endif
   3282             }},
   3283         },
   3284         {
   3285             {{
   3286 #if defined(BORINGSSL_CURVE25519_64BIT)
   3287                 1402334161391744, 1560083671046299, 1008585416617747,
   3288                 1147797150908892, 1420416683642459
   3289 #else
   3290                 25940096, 20896407, 17324187, 23247058, 58437395, 15029093,
   3291                 24396252, 17103510, 64786011, 21165857
   3292 #endif
   3293             }},
   3294             {{
   3295 #if defined(BORINGSSL_CURVE25519_64BIT)
   3296                 665506704253369, 273770475169863, 799236974202630,
   3297                 848328990077558, 1811448782807931
   3298 #else
   3299                 45343161, 9916822, 65808455, 4079497, 66080518, 11909558,
   3300                 1782390, 12641087, 20603771, 26992690
   3301 #endif
   3302             }},
   3303             {{
   3304 #if defined(BORINGSSL_CURVE25519_64BIT)
   3305                 1468412523962641, 771866649897997, 1931766110147832,
   3306                 799561180078482, 524837559150077
   3307 #else
   3308                 48226577, 21881051, 24849421, 11501709, 13161720, 28785558,
   3309                 1925522, 11914390, 4662781, 7820689
   3310 #endif
   3311             }},
   3312         },
   3313         {
   3314             {{
   3315 #if defined(BORINGSSL_CURVE25519_64BIT)
   3316                 2223212657821850, 630416247363666, 2144451165500328,
   3317                 816911130947791, 1024351058410032
   3318 #else
   3319                 12241050, 33128450, 8132690, 9393934, 32846760, 31954812,
   3320                 29749455, 12172924, 16136752, 15264020
   3321 #endif
   3322             }},
   3323             {{
   3324 #if defined(BORINGSSL_CURVE25519_64BIT)
   3325                 1266603897524861, 156378408858100, 1275649024228779,
   3326                 447738405888420, 253186462063095
   3327 #else
   3328                 56758909, 18873868, 58896884, 2330219, 49446315, 19008651,
   3329                 10658212, 6671822, 19012087, 3772772
   3330 #endif
   3331             }},
   3332             {{
   3333 #if defined(BORINGSSL_CURVE25519_64BIT)
   3334                 2022215964509735, 136144366993649, 1800716593296582,
   3335                 1193970603800203, 871675847064218
   3336 #else
   3337                 3753511, 30133366, 10617073, 2028709, 14841030, 26832768,
   3338                 28718731, 17791548, 20527770, 12988982
   3339 #endif
   3340             }},
   3341         },
   3342         {
   3343             {{
   3344 #if defined(BORINGSSL_CURVE25519_64BIT)
   3345                 1862751661970328, 851596246739884, 1519315554814041,
   3346                 1542798466547449, 1417975335901520
   3347 #else
   3348                 52286360, 27757162, 63400876, 12689772, 66209881, 22639565,
   3349                 42925817, 22989488, 3299664, 21129479
   3350 #endif
   3351             }},
   3352             {{
   3353 #if defined(BORINGSSL_CURVE25519_64BIT)
   3354                 1228168094547481, 334133883362894, 587567568420081,
   3355                 433612590281181, 603390400373205
   3356 #else
   3357                 50331161, 18301130, 57466446, 4978982, 3308785, 8755439,
   3358                 6943197, 6461331, 41525717, 8991217
   3359 #endif
   3360             }},
   3361             {{
   3362 #if defined(BORINGSSL_CURVE25519_64BIT)
   3363                 121893973206505, 1843345804916664, 1703118377384911,
   3364                 497810164760654, 101150811654673
   3365 #else
   3366                 49882601, 1816361, 65435576, 27467992, 31783887, 25378441,
   3367                 34160718, 7417949, 36866577, 1507264
   3368 #endif
   3369             }},
   3370         },
   3371         {
   3372             {{
   3373 #if defined(BORINGSSL_CURVE25519_64BIT)
   3374                 458346255946468, 290909935619344, 1452768413850679,
   3375                 550922875254215, 1537286854336538
   3376 #else
   3377                 29692644, 6829891, 56610064, 4334895, 20945975, 21647936,
   3378                 38221255, 8209390, 14606362, 22907359
   3379 #endif
   3380             }},
   3381             {{
   3382 #if defined(BORINGSSL_CURVE25519_64BIT)
   3383                 584322311184395, 380661238802118, 114839394528060,
   3384                 655082270500073, 2111856026034852
   3385 #else
   3386                 63627275, 8707080, 32188102, 5672294, 22096700, 1711240,
   3387                 34088169, 9761486, 4170404, 31469107
   3388 #endif
   3389             }},
   3390             {{
   3391 #if defined(BORINGSSL_CURVE25519_64BIT)
   3392                 996965581008991, 2148998626477022, 1012273164934654,
   3393                 1073876063914522, 1688031788934939
   3394 #else
   3395                 55521375, 14855944, 62981086, 32022574, 40459774, 15084045,
   3396                 22186522, 16002000, 52832027, 25153633
   3397 #endif
   3398             }},
   3399         },
   3400         {
   3401             {{
   3402 #if defined(BORINGSSL_CURVE25519_64BIT)
   3403                 923487018849600, 2085106799623355, 528082801620136,
   3404                 1606206360876188, 735907091712524
   3405 #else
   3406                 62297408, 13761028, 35404987, 31070512, 63796392, 7869046,
   3407                 59995292, 23934339, 13240844, 10965870
   3408 #endif
   3409             }},
   3410             {{
   3411 #if defined(BORINGSSL_CURVE25519_64BIT)
   3412                 1697697887804317, 1335343703828273, 831288615207040,
   3413                 949416685250051, 288760277392022
   3414 #else
   3415                 59366301, 25297669, 52340529, 19898171, 43876480, 12387165,
   3416                 4498947, 14147411, 29514390, 4302863
   3417 #endif
   3418             }},
   3419             {{
   3420 #if defined(BORINGSSL_CURVE25519_64BIT)
   3421                 1419122478109648, 1325574567803701, 602393874111094,
   3422                 2107893372601700, 1314159682671307
   3423 #else
   3424                 53695440, 21146572, 20757301, 19752600, 14785142, 8976368,
   3425                 62047588, 31410058, 17846987, 19582505
   3426 #endif
   3427             }},
   3428         },
   3429     },
   3430     {
   3431         {
   3432             {{
   3433 #if defined(BORINGSSL_CURVE25519_64BIT)
   3434                 2201150872731804, 2180241023425241, 97663456423163,
   3435                 1633405770247824, 848945042443986
   3436 #else
   3437                 64864412, 32799703, 62511833, 32488122, 60861691, 1455298,
   3438                 45461136, 24339642, 61886162, 12650266
   3439 #endif
   3440             }},
   3441             {{
   3442 #if defined(BORINGSSL_CURVE25519_64BIT)
   3443                 1173339555550611, 818605084277583, 47521504364289,
   3444                 924108720564965, 735423405754506
   3445 #else
   3446                 57202067, 17484121, 21134159, 12198166, 40044289, 708125,
   3447                 387813, 13770293, 47974538, 10958662
   3448 #endif
   3449             }},
   3450             {{
   3451 #if defined(BORINGSSL_CURVE25519_64BIT)
   3452                 830104860549448, 1886653193241086, 1600929509383773,
   3453                 1475051275443631, 286679780900937
   3454 #else
   3455                 22470984, 12369526, 23446014, 28113323, 45588061, 23855708,
   3456                 55336367, 21979976, 42025033, 4271861
   3457 #endif
   3458             }},
   3459         },
   3460         {
   3461             {{
   3462 #if defined(BORINGSSL_CURVE25519_64BIT)
   3463                 1577111294832995, 1030899169768747, 144900916293530,
   3464                 1964672592979567, 568390100955250
   3465 #else
   3466                 41939299, 23500789, 47199531, 15361594, 61124506, 2159191,
   3467                 75375, 29275903, 34582642, 8469672
   3468 #endif
   3469             }},
   3470             {{
   3471 #if defined(BORINGSSL_CURVE25519_64BIT)
   3472                 278388655910247, 487143369099838, 927762205508727,
   3473                 181017540174210, 1616886700741287
   3474 #else
   3475                 15854951, 4148314, 58214974, 7259001, 11666551, 13824734,
   3476                 36577666, 2697371, 24154791, 24093489
   3477 #endif
   3478             }},
   3479             {{
   3480 #if defined(BORINGSSL_CURVE25519_64BIT)
   3481                 1191033906638969, 940823957346562, 1606870843663445,
   3482                 861684761499847, 658674867251089
   3483 #else
   3484                 15446137, 17747788, 29759746, 14019369, 30811221, 23944241,
   3485                 35526855, 12840103, 24913809, 9815020
   3486 #endif
   3487             }},
   3488         },
   3489         {
   3490             {{
   3491 #if defined(BORINGSSL_CURVE25519_64BIT)
   3492                 1875032594195546, 1427106132796197, 724736390962158,
   3493                 901860512044740, 635268497268760
   3494 #else
   3495                 62399578, 27940162, 35267365, 21265538, 52665326, 10799413,
   3496                 58005188, 13438768, 18735128, 9466238
   3497 #endif
   3498             }},
   3499             {{
   3500 #if defined(BORINGSSL_CURVE25519_64BIT)
   3501                 622869792298357, 1903919278950367, 1922588621661629,
   3502                 1520574711600434, 1087100760174640
   3503 #else
   3504                 11933045, 9281483, 5081055, 28370608, 64480701, 28648802,
   3505                 59381042, 22658328, 44380208, 16199063
   3506 #endif
   3507             }},
   3508             {{
   3509 #if defined(BORINGSSL_CURVE25519_64BIT)
   3510                 25465949416618, 1693639527318811, 1526153382657203,
   3511                 125943137857169, 145276964043999
   3512 #else
   3513                 14576810, 379472, 40322331, 25237195, 37682355, 22741457,
   3514                 67006097, 1876698, 30801119, 2164795
   3515 #endif
   3516             }},
   3517         },
   3518         {
   3519             {{
   3520 #if defined(BORINGSSL_CURVE25519_64BIT)
   3521                 214739857969358, 920212862967915, 1939901550972269,
   3522                 1211862791775221, 85097515720120
   3523 #else
   3524                 15995086, 3199873, 13672555, 13712240, 47730029, 28906785,
   3525                 54027253, 18058162, 53616056, 1268051
   3526 #endif
   3527             }},
   3528             {{
   3529 #if defined(BORINGSSL_CURVE25519_64BIT)
   3530                 2006245852772938, 734762734836159, 254642929763427,
   3531                 1406213292755966, 239303749517686
   3532 #else
   3533                 56818250, 29895392, 63822271, 10948817, 23037027, 3794475,
   3534                 63638526, 20954210, 50053494, 3565903
   3535 #endif
   3536             }},
   3537             {{
   3538 #if defined(BORINGSSL_CURVE25519_64BIT)
   3539                 1619678837192149, 1919424032779215, 1357391272956794,
   3540                 1525634040073113, 1310226789796241
   3541 #else
   3542                 29210069, 24135095, 61189071, 28601646, 10834810, 20226706,
   3543                 50596761, 22733718, 39946641, 19523900
   3544 #endif
   3545             }},
   3546         },
   3547         {
   3548             {{
   3549 #if defined(BORINGSSL_CURVE25519_64BIT)
   3550                 1040763709762123, 1704449869235352, 605263070456329,
   3551                 1998838089036355, 1312142911487502
   3552 #else
   3553                 53946955, 15508587, 16663704, 25398282, 38758921, 9019122,
   3554                 37925443, 29785008, 2244110, 19552453
   3555 #endif
   3556             }},
   3557             {{
   3558 #if defined(BORINGSSL_CURVE25519_64BIT)
   3559                 1996723311435669, 1844342766567060, 985455700466044,
   3560                 1165924681400960, 311508689870129
   3561 #else
   3562                 61955989, 29753495, 57802388, 27482848, 16243068, 14684434,
   3563                 41435776, 17373631, 13491505, 4641841
   3564 #endif
   3565             }},
   3566             {{
   3567 #if defined(BORINGSSL_CURVE25519_64BIT)
   3568                 43173156290518, 2202883069785309, 1137787467085917,
   3569                 1733636061944606, 1394992037553852
   3570 #else
   3571                 10813398, 643330, 47920349, 32825515, 30292061, 16954354,
   3572                 27548446, 25833190, 14476988, 20787001
   3573 #endif
   3574             }},
   3575         },
   3576         {
   3577             {{
   3578 #if defined(BORINGSSL_CURVE25519_64BIT)
   3579                 670078326344559, 555655025059356, 471959386282438,
   3580                 2141455487356409, 849015953823125
   3581 #else
   3582                 10292079, 9984945, 6481436, 8279905, 59857350, 7032742,
   3583                 27282937, 31910173, 39196053, 12651323
   3584 #endif
   3585             }},
   3586             {{
   3587 #if defined(BORINGSSL_CURVE25519_64BIT)
   3588                 2197214573372804, 794254097241315, 1030190060513737,
   3589                 267632515541902, 2040478049202624
   3590 #else
   3591                 35923332, 32741048, 22271203, 11835308, 10201545, 15351028,
   3592                 17099662, 3988035, 21721536, 30405492
   3593 #endif
   3594             }},
   3595             {{
   3596 #if defined(BORINGSSL_CURVE25519_64BIT)
   3597                 1812516004670529, 1609256702920783, 1706897079364493,
   3598                 258549904773295, 996051247540686
   3599 #else
   3600                 10202177, 27008593, 35735631, 23979793, 34958221, 25434748,
   3601                 54202543, 3852693, 13216206, 14842320
   3602 #endif
   3603             }},
   3604         },
   3605         {
   3606             {{
   3607 #if defined(BORINGSSL_CURVE25519_64BIT)
   3608                 1540374301420584, 1764656898914615, 1810104162020396,
   3609                 923808779163088, 664390074196579
   3610 #else
   3611                 51293224, 22953365, 60569911, 26295436, 60124204, 26972653,
   3612                 35608016, 13765823, 39674467, 9900183
   3613 #endif
   3614             }},
   3615             {{
   3616 #if defined(BORINGSSL_CURVE25519_64BIT)
   3617                 1323460699404750, 1262690757880991, 871777133477900,
   3618                 1060078894988977, 1712236889662886
   3619 #else
   3620                 14465486, 19721101, 34974879, 18815558, 39665676, 12990491,
   3621                 33046193, 15796406, 60056998, 25514317
   3622 #endif
   3623             }},
   3624             {{
   3625 #if defined(BORINGSSL_CURVE25519_64BIT)
   3626                 1696163952057966, 1391710137550823, 608793846867416,
   3627                 1034391509472039, 1780770894075012
   3628 #else
   3629                 30924398, 25274812, 6359015, 20738097, 16508376, 9071735,
   3630                 41620263, 15413634, 9524356, 26535554
   3631 #endif
   3632             }},
   3633         },
   3634         {
   3635             {{
   3636 #if defined(BORINGSSL_CURVE25519_64BIT)
   3637                 1367603834210841, 2131988646583224, 890353773628144,
   3638                 1908908219165595, 270836895252891
   3639 #else
   3640                 12274201, 20378885, 32627640, 31769106, 6736624, 13267305,
   3641                 5237659, 28444949, 15663515, 4035784
   3642 #endif
   3643             }},
   3644             {{
   3645 #if defined(BORINGSSL_CURVE25519_64BIT)
   3646                 597536315471731, 40375058742586, 1942256403956049,
   3647                 1185484645495932, 312666282024145
   3648 #else
   3649                 64157555, 8903984, 17349946, 601635, 50676049, 28941875,
   3650                 53376124, 17665097, 44850385, 4659090
   3651 #endif
   3652             }},
   3653             {{
   3654 #if defined(BORINGSSL_CURVE25519_64BIT)
   3655                 1919411405316294, 1234508526402192, 1066863051997083,
   3656                 1008444703737597, 1348810787701552
   3657 #else
   3658                 50192582, 28601458, 36715152, 18395610, 20774811, 15897498,
   3659                 5736189, 15026997, 64930608, 20098846
   3660 #endif
   3661             }},
   3662         },
   3663     },
   3664     {
   3665         {
   3666             {{
   3667 #if defined(BORINGSSL_CURVE25519_64BIT)
   3668                 2102881477513865, 1570274565945361, 1573617900503708,
   3669                 18662635732583, 2232324307922098
   3670 #else
   3671                 58249865, 31335375, 28571665, 23398914, 66634396, 23448733,
   3672                 63307367, 278094, 23440562, 33264224
   3673 #endif
   3674             }},
   3675             {{
   3676 #if defined(BORINGSSL_CURVE25519_64BIT)
   3677                 1853931367696942, 8107973870707, 350214504129299,
   3678                 775206934582587, 1752317649166792
   3679 #else
   3680                 10226222, 27625730, 15139955, 120818, 52241171, 5218602,
   3681                 32937275, 11551483, 50536904, 26111567
   3682 #endif
   3683             }},
   3684             {{
   3685 #if defined(BORINGSSL_CURVE25519_64BIT)
   3686                 1417148368003523, 721357181628282, 505725498207811,
   3687                 373232277872983, 261634707184480
   3688 #else
   3689                 17932739, 21117156, 43069306, 10749059, 11316803, 7535897,
   3690                 22503767, 5561594, 63462240, 3898660
   3691 #endif
   3692             }},
   3693         },
   3694         {
   3695             {{
   3696 #if defined(BORINGSSL_CURVE25519_64BIT)
   3697                 2186733281493267, 2250694917008620, 1014829812957440,
   3698                 479998161452389, 83566193876474
   3699 #else
   3700                 7749907, 32584865, 50769132, 33537967, 42090752, 15122142,
   3701                 65535333, 7152529, 21831162, 1245233
   3702 #endif
   3703             }},
   3704             {{
   3705 #if defined(BORINGSSL_CURVE25519_64BIT)
   3706                 1268116367301224, 560157088142809, 802626839600444,
   3707                 2210189936605713, 1129993785579988
   3708 #else
   3709                 26958440, 18896406, 4314585, 8346991, 61431100, 11960071,
   3710                 34519569, 32934396, 36706772, 16838219
   3711 #endif
   3712             }},
   3713             {{
   3714 #if defined(BORINGSSL_CURVE25519_64BIT)
   3715                 615183387352312, 917611676109240, 878893615973325,
   3716                 978940963313282, 938686890583575
   3717 #else
   3718                 54942968, 9166946, 33491384, 13673479, 29787085, 13096535,
   3719                 6280834, 14587357, 44770839, 13987524
   3720 #endif
   3721             }},
   3722         },
   3723         {
   3724             {{
   3725 #if defined(BORINGSSL_CURVE25519_64BIT)
   3726                 522024729211672, 1045059315315808, 1892245413707790,
   3727                 1907891107684253, 2059998109500714
   3728 #else
   3729                 42758936, 7778774, 21116000, 15572597, 62275598, 28196653,
   3730                 62807965, 28429792, 59639082, 30696363
   3731 #endif
   3732             }},
   3733             {{
   3734 #if defined(BORINGSSL_CURVE25519_64BIT)
   3735                 1799679152208884, 912132775900387, 25967768040979,
   3736                 432130448590461, 274568990261996
   3737 #else
   3738                 9681908, 26817309, 35157219, 13591837, 60225043, 386949,
   3739                 31622781, 6439245, 52527852, 4091396
   3740 #endif
   3741             }},
   3742             {{
   3743 #if defined(BORINGSSL_CURVE25519_64BIT)
   3744                 98698809797682, 2144627600856209, 1907959298569602,
   3745                 811491302610148, 1262481774981493
   3746 #else
   3747                 58682418, 1470726, 38999185, 31957441, 3978626, 28430809,
   3748                 47486180, 12092162, 29077877, 18812444
   3749 #endif
   3750             }},
   3751         },
   3752         {
   3753             {{
   3754 #if defined(BORINGSSL_CURVE25519_64BIT)
   3755                 1791451399743152, 1713538728337276, 118349997257490,
   3756                 1882306388849954, 158235232210248
   3757 #else
   3758                 5269168, 26694706, 53878652, 25533716, 25932562, 1763552,
   3759                 61502754, 28048550, 47091016, 2357888
   3760 #endif
   3761             }},
   3762             {{
   3763 #if defined(BORINGSSL_CURVE25519_64BIT)
   3764                 1217809823321928, 2173947284933160, 1986927836272325,
   3765                 1388114931125539, 12686131160169
   3766 #else
   3767                 32264008, 18146780, 61721128, 32394338, 65017541, 29607531,
   3768                 23104803, 20684524, 5727337, 189038
   3769 #endif
   3770             }},
   3771             {{
   3772 #if defined(BORINGSSL_CURVE25519_64BIT)
   3773                 1650875518872272, 1136263858253897, 1732115601395988,
   3774                 734312880662190, 1252904681142109
   3775 #else
   3776                 14609104, 24599962, 61108297, 16931650, 52531476, 25810533,
   3777                 40363694, 10942114, 41219933, 18669734
   3778 #endif
   3779             }},
   3780         },
   3781         {
   3782             {{
   3783 #if defined(BORINGSSL_CURVE25519_64BIT)
   3784                 372986456113865, 525430915458171, 2116279931702135,
   3785                 501422713587815, 1907002872974925
   3786 #else
   3787                 20513481, 5557931, 51504251, 7829530, 26413943, 31535028,
   3788                 45729895, 7471780, 13913677, 28416557
   3789 #endif
   3790             }},
   3791             {{
   3792 #if defined(BORINGSSL_CURVE25519_64BIT)
   3793                 803147181835288, 868941437997146, 316299302989663,
   3794                 943495589630550, 571224287904572
   3795 #else
   3796                 41534488, 11967825, 29233242, 12948236, 60354399, 4713226,
   3797                 58167894, 14059179, 12878652, 8511905
   3798 #endif
   3799             }},
   3800             {{
   3801 #if defined(BORINGSSL_CURVE25519_64BIT)
   3802                 227742695588364, 1776969298667369, 628602552821802,
   3803                 457210915378118, 2041906378111140
   3804 #else
   3805                 41452044, 3393630, 64153449, 26478905, 64858154, 9366907,
   3806                 36885446, 6812973, 5568676, 30426776
   3807 #endif
   3808             }},
   3809         },
   3810         {
   3811             {{
   3812 #if defined(BORINGSSL_CURVE25519_64BIT)
   3813                 815000523470260, 913085688728307, 1052060118271173,
   3814                 1345536665214223, 541623413135555
   3815 #else
   3816                 11630004, 12144454, 2116339, 13606037, 27378885, 15676917,
   3817                 49700111, 20050058, 52713667, 8070817
   3818 #endif
   3819             }},
   3820             {{
   3821 #if defined(BORINGSSL_CURVE25519_64BIT)
   3822                 1580216071604333, 1877997504342444, 857147161260913,
   3823                 703522726778478, 2182763974211603
   3824 #else
   3825                 27117677, 23547054, 35826092, 27984343, 1127281, 12772488,
   3826                 37262958, 10483305, 55556115, 32525717
   3827 #endif
   3828             }},
   3829             {{
   3830 #if defined(BORINGSSL_CURVE25519_64BIT)
   3831                 1870080310923419, 71988220958492, 1783225432016732,
   3832                 615915287105016, 1035570475990230
   3833 #else
   3834                 10637467, 27866368, 5674780, 1072708, 40765276, 26572129,
   3835                 65424888, 9177852, 39615702, 15431202
   3836 #endif
   3837             }},
   3838         },
   3839         {
   3840             {{
   3841 #if defined(BORINGSSL_CURVE25519_64BIT)
   3842                 730987750830150, 857613889540280, 1083813157271766,
   3843                 1002817255970169, 1719228484436074
   3844 #else
   3845                 20525126, 10892566, 54366392, 12779442, 37615830, 16150074,
   3846                 38868345, 14943141, 52052074, 25618500
   3847 #endif
   3848             }},
   3849             {{
   3850 #if defined(BORINGSSL_CURVE25519_64BIT)
   3851                 377616581647602, 1581980403078513, 804044118130621,
   3852                 2034382823044191, 643844048472185
   3853 #else
   3854                 37084402, 5626925, 66557297, 23573344, 753597, 11981191,
   3855                 25244767, 30314666, 63752313, 9594023
   3856 #endif
   3857             }},
   3858             {{
   3859 #if defined(BORINGSSL_CURVE25519_64BIT)
   3860                 176957326463017, 1573744060478586, 528642225008045,
   3861                 1816109618372371, 1515140189765006
   3862 #else
   3863                 43356201, 2636869, 61944954, 23450613, 585133, 7877383,
   3864                 11345683, 27062142, 13352334, 22577348
   3865 #endif
   3866             }},
   3867         },
   3868         {
   3869             {{
   3870 #if defined(BORINGSSL_CURVE25519_64BIT)
   3871                 1888911448245718, 1387110895611080, 1924503794066429,
   3872                 1731539523700949, 2230378382645454
   3873 #else
   3874                 65177046, 28146973, 3304648, 20669563, 17015805, 28677341,
   3875                 37325013, 25801949, 53893326, 33235227
   3876 #endif
   3877             }},
   3878             {{
   3879 #if defined(BORINGSSL_CURVE25519_64BIT)
   3880                 443392177002051, 233793396845137, 2199506622312416,
   3881                 1011858706515937, 974676837063129
   3882 #else
   3883                 20239939, 6607058, 6203985, 3483793, 48721888, 32775202,
   3884                 46385121, 15077869, 44358105, 14523816
   3885 #endif
   3886             }},
   3887             {{
   3888 #if defined(BORINGSSL_CURVE25519_64BIT)
   3889                 1846351103143623, 1949984838808427, 671247021915253,
   3890                 1946756846184401, 1929296930380217
   3891 #else
   3892                 27406023, 27512775, 27423595, 29057038, 4996213, 10002360,
   3893                 38266833, 29008937, 36936121, 28748764
   3894 #endif
   3895             }},
   3896         },
   3897     },
   3898     {
   3899         {
   3900             {{
   3901 #if defined(BORINGSSL_CURVE25519_64BIT)
   3902                 849646212452002, 1410198775302919, 73767886183695,
   3903                 1641663456615812, 762256272452411
   3904 #else
   3905                 11374242, 12660715, 17861383, 21013599, 10935567, 1099227,
   3906                 53222788, 24462691, 39381819, 11358503
   3907 #endif
   3908             }},
   3909             {{
   3910 #if defined(BORINGSSL_CURVE25519_64BIT)
   3911                 692017667358279, 723305578826727, 1638042139863265,
   3912                 748219305990306, 334589200523901
   3913 #else
   3914                 54378055, 10311866, 1510375, 10778093, 64989409, 24408729,
   3915                 32676002, 11149336, 40985213, 4985767
   3916 #endif
   3917             }},
   3918             {{
   3919 #if defined(BORINGSSL_CURVE25519_64BIT)
   3920                 22893968530686, 2235758574399251, 1661465835630252,
   3921                 925707319443452, 1203475116966621
   3922 #else
   3923                 48012542, 341146, 60911379, 33315398, 15756972, 24757770,
   3924                 66125820, 13794113, 47694557, 17933176
   3925 #endif
   3926             }},
   3927         },
   3928         {
   3929             {{
   3930 #if defined(BORINGSSL_CURVE25519_64BIT)
   3931                 801299035785166, 1733292596726131, 1664508947088596,
   3932                 467749120991922, 1647498584535623
   3933 #else
   3934                 6490062, 11940286, 25495923, 25828072, 8668372, 24803116,
   3935                 3367602, 6970005, 65417799, 24549641
   3936 #endif
   3937             }},
   3938             {{
   3939 #if defined(BORINGSSL_CURVE25519_64BIT)
   3940                 903105258014366, 427141894933047, 561187017169777,
   3941                 1884330244401954, 1914145708422219
   3942 #else
   3943                 1656478, 13457317, 15370807, 6364910, 13605745, 8362338,
   3944                 47934242, 28078708, 50312267, 28522993
   3945 #endif
   3946             }},
   3947             {{
   3948 #if defined(BORINGSSL_CURVE25519_64BIT)
   3949                 1344191060517578, 1960935031767890, 1518838929955259,
   3950                 1781502350597190, 1564784025565682
   3951 #else
   3952                 44835530, 20030007, 67044178, 29220208, 48503227, 22632463,
   3953                 46537798, 26546453, 67009010, 23317098
   3954 #endif
   3955             }},
   3956         },
   3957         {
   3958             {{
   3959 #if defined(BORINGSSL_CURVE25519_64BIT)
   3960                 673723351748086, 1979969272514923, 1175287312495508,
   3961                 1187589090978666, 1881897672213940
   3962 #else
   3963                 17747446, 10039260, 19368299, 29503841, 46478228, 17513145,
   3964                 31992682, 17696456, 37848500, 28042460
   3965 #endif
   3966             }},
   3967             {{
   3968 #if defined(BORINGSSL_CURVE25519_64BIT)
   3969                 1917185587363432, 1098342571752737, 5935801044414,
   3970                 2000527662351839, 1538640296181569
   3971 #else
   3972                 31932008, 28568291, 47496481, 16366579, 22023614, 88450,
   3973                 11371999, 29810185, 4882241, 22927527
   3974 #endif
   3975             }},
   3976             {{
   3977 #if defined(BORINGSSL_CURVE25519_64BIT)
   3978                 2495540013192, 678856913479236, 224998292422872,
   3979                 219635787698590, 1972465269000940
   3980 #else
   3981                 29796488, 37186, 19818052, 10115756, 55279832, 3352735,
   3982                 18551198, 3272828, 61917932, 29392022
   3983 #endif
   3984             }},
   3985         },
   3986         {
   3987             {{
   3988 #if defined(BORINGSSL_CURVE25519_64BIT)
   3989                 271413961212179, 1353052061471651, 344711291283483,
   3990                 2014925838520662, 2006221033113941
   3991 #else
   3992                 12501267, 4044383, 58495907, 20162046, 34678811, 5136598,
   3993                 47878486, 30024734, 330069, 29895023
   3994 #endif
   3995             }},
   3996             {{
   3997 #if defined(BORINGSSL_CURVE25519_64BIT)
   3998                 194583029968109, 514316781467765, 829677956235672,
   3999                 1676415686873082, 810104584395840
   4000 #else
   4001                 6384877, 2899513, 17807477, 7663917, 64749976, 12363164,
   4002                 25366522, 24980540, 66837568, 12071498
   4003 #endif
   4004             }},
   4005             {{
   4006 #if defined(BORINGSSL_CURVE25519_64BIT)
   4007                 1980510813313589, 1948645276483975, 152063780665900,
   4008                 129968026417582, 256984195613935
   4009 #else
   4010                 58743349, 29511910, 25133447, 29037077, 60897836, 2265926,
   4011                 34339246, 1936674, 61949167, 3829362
   4012 #endif
   4013             }},
   4014         },
   4015         {
   4016             {{
   4017 #if defined(BORINGSSL_CURVE25519_64BIT)
   4018                 1860190562533102, 1936576191345085, 461100292705964,
   4019                 1811043097042830, 957486749306835
   4020 #else
   4021                 28425966, 27718999, 66531773, 28857233, 52891308, 6870929,
   4022                 7921550, 26986645, 26333139, 14267664
   4023 #endif
   4024             }},
   4025             {{
   4026 #if defined(BORINGSSL_CURVE25519_64BIT)
   4027                 796664815624365, 1543160838872951, 1500897791837765,
   4028                 1667315977988401, 599303877030711
   4029 #else
   4030                 56041645, 11871230, 27385719, 22994888, 62522949, 22365119,
   4031                 10004785, 24844944, 45347639, 8930323
   4032 #endif
   4033             }},
   4034             {{
   4035 #if defined(BORINGSSL_CURVE25519_64BIT)
   4036                 1151480509533204, 2136010406720455, 738796060240027,
   4037                 319298003765044, 1150614464349587
   4038 #else
   4039                 45911060, 17158396, 25654215, 31829035, 12282011, 11008919,
   4040                 1541940, 4757911, 40617363, 17145491
   4041 #endif
   4042             }},
   4043         },
   4044         {
   4045             {{
   4046 #if defined(BORINGSSL_CURVE25519_64BIT)
   4047                 1731069268103150, 735642447616087, 1364750481334268,
   4048                 417232839982871, 927108269127661
   4049 #else
   4050                 13537262, 25794942, 46504023, 10961926, 61186044, 20336366,
   4051                 53952279, 6217253, 51165165, 13814989
   4052 #endif
   4053             }},
   4054             {{
   4055 #if defined(BORINGSSL_CURVE25519_64BIT)
   4056                 1017222050227968, 1987716148359, 2234319589635701,
   4057                 621282683093392, 2132553131763026
   4058 #else
   4059                 49686272, 15157789, 18705543, 29619, 24409717, 33293956,
   4060                 27361680, 9257833, 65152338, 31777517
   4061 #endif
   4062             }},
   4063             {{
   4064 #if defined(BORINGSSL_CURVE25519_64BIT)
   4065                 1567828528453324, 1017807205202360, 565295260895298,
   4066                 829541698429100, 307243822276582
   4067 #else
   4068                 42063564, 23362465, 15366584, 15166509, 54003778, 8423555,
   4069                 37937324, 12361134, 48422886, 4578289
   4070 #endif
   4071             }},
   4072         },
   4073         {
   4074             {{
   4075 #if defined(BORINGSSL_CURVE25519_64BIT)
   4076                 249079270936248, 1501514259790706, 947909724204848,
   4077                 944551802437487, 552658763982480
   4078 #else
   4079                 24579768, 3711570, 1342322, 22374306, 40103728, 14124955,
   4080                 44564335, 14074918, 21964432, 8235257
   4081 #endif
   4082             }},
   4083             {{
   4084 #if defined(BORINGSSL_CURVE25519_64BIT)
   4085                 2089966982947227, 1854140343916181, 2151980759220007,
   4086                 2139781292261749, 158070445864917
   4087 #else
   4088                 60580251, 31142934, 9442965, 27628844, 12025639, 32067012,
   4089                 64127349, 31885225, 13006805, 2355433
   4090 #endif
   4091             }},
   4092             {{
   4093 #if defined(BORINGSSL_CURVE25519_64BIT)
   4094                 1338766321464554, 1906702607371284, 1519569445519894,
   4095                 115384726262267, 1393058953390992
   4096 #else
   4097                 50803946, 19949172, 60476436, 28412082, 16974358, 22643349,
   4098                 27202043, 1719366, 1141648, 20758196
   4099 #endif
   4100             }},
   4101         },
   4102         {
   4103             {{
   4104 #if defined(BORINGSSL_CURVE25519_64BIT)
   4105                 1364621558265400, 1512388234908357, 1926731583198686,
   4106                 2041482526432505, 920401122333774
   4107 #else
   4108                 54244920, 20334445, 58790597, 22536340, 60298718, 28710537,
   4109                 13475065, 30420460, 32674894, 13715045
   4110 #endif
   4111             }},
   4112             {{
   4113 #if defined(BORINGSSL_CURVE25519_64BIT)
   4114                 1884844597333588, 601480070269079, 620203503079537,
   4115                 1079527400117915, 1202076693132015
   4116 #else
   4117                 11423316, 28086373, 32344215, 8962751, 24989809, 9241752,
   4118                 53843611, 16086211, 38367983, 17912338
   4119 #endif
   4120             }},
   4121             {{
   4122 #if defined(BORINGSSL_CURVE25519_64BIT)
   4123                 840922919763324, 727955812569642, 1303406629750194,
   4124                 522898432152867, 294161410441865
   4125 #else
   4126                 65699196, 12530727, 60740138, 10847386, 19531186, 19422272,
   4127                 55399715, 7791793, 39862921, 4383346
   4128 #endif
   4129             }},
   4130         },
   4131     },
   4132     {
   4133         {
   4134             {{
   4135 #if defined(BORINGSSL_CURVE25519_64BIT)
   4136                 353760790835310, 1598361541848743, 1122905698202299,
   4137                 1922533590158905, 419107700666580
   4138 #else
   4139                 38137966, 5271446, 65842855, 23817442, 54653627, 16732598,
   4140                 62246457, 28647982, 27193556, 6245191
   4141 #endif
   4142             }},
   4143             {{
   4144 #if defined(BORINGSSL_CURVE25519_64BIT)
   4145                 359856369838236, 180914355488683, 861726472646627,
   4146                 218807937262986, 575626773232501
   4147 #else
   4148                 51914908, 5362277, 65324971, 2695833, 4960227, 12840725,
   4149                 23061898, 3260492, 22510453, 8577507
   4150 #endif
   4151             }},
   4152             {{
   4153 #if defined(BORINGSSL_CURVE25519_64BIT)
   4154                 755467689082474, 909202735047934, 730078068932500,
   4155                 936309075711518, 2007798262842972
   4156 #else
   4157                 54476394, 11257345, 34415870, 13548176, 66387860, 10879010,
   4158                 31168030, 13952092, 37537372, 29918525
   4159 #endif
   4160             }},
   4161         },
   4162         {
   4163             {{
   4164 #if defined(BORINGSSL_CURVE25519_64BIT)
   4165                 1609384177904073, 362745185608627, 1335318541768201,
   4166                 800965770436248, 547877979267412
   4167 #else
   4168                 3877321, 23981693, 32416691, 5405324, 56104457, 19897796,
   4169                 3759768, 11935320, 5611860, 8164018
   4170 #endif
   4171             }},
   4172             {{
   4173 #if defined(BORINGSSL_CURVE25519_64BIT)
   4174                 984339177776787, 815727786505884, 1645154585713747,
   4175                 1659074964378553, 1686601651984156
   4176 #else
   4177                 50833043, 14667796, 15906460, 12155291, 44997715, 24514713,
   4178                 32003001, 24722143, 5773084, 25132323
   4179 #endif
   4180             }},
   4181             {{
   4182 #if defined(BORINGSSL_CURVE25519_64BIT)
   4183                 1697863093781930, 599794399429786, 1104556219769607,
   4184                 830560774794755, 12812858601017
   4185 #else
   4186                 43320746, 25300131, 1950874, 8937633, 18686727, 16459170,
   4187                 66203139, 12376319, 31632953, 190926
   4188 #endif
   4189             }},
   4190         },
   4191         {
   4192             {{
   4193 #if defined(BORINGSSL_CURVE25519_64BIT)
   4194                 1168737550514982, 897832437380552, 463140296333799,
   4195                 302564600022547, 2008360505135501
   4196 #else
   4197                 42515238, 17415546, 58684872, 13378745, 14162407, 6901328,
   4198                 58820115, 4508563, 41767309, 29926903
   4199 #endif
   4200             }},
   4201             {{
   4202 #if defined(BORINGSSL_CURVE25519_64BIT)
   4203                 1856930662813910, 678090852002597, 1920179140755167,
   4204                 1259527833759868, 55540971895511
   4205 #else
   4206                 8884438, 27670423, 6023973, 10104341, 60227295, 28612898,
   4207                 18722940, 18768427, 65436375, 827624
   4208 #endif
   4209             }},
   4210             {{
   4211 #if defined(BORINGSSL_CURVE25519_64BIT)
   4212                 1158643631044921, 476554103621892, 178447851439725,
   4213                 1305025542653569, 103433927680625
   4214 #else
   4215                 34388281, 17265135, 34605316, 7101209, 13354605, 2659080,
   4216                 65308289, 19446395, 42230385, 1541285
   4217 #endif
   4218             }},
   4219         },
   4220         {
   4221             {{
   4222 #if defined(BORINGSSL_CURVE25519_64BIT)
   4223                 2176793111709008, 1576725716350391, 2009350167273523,
   4224                 2012390194631546, 2125297410909580
   4225 #else
   4226                 2901328, 32436745, 3880375, 23495044, 49487923, 29941650,
   4227                 45306746, 29986950, 20456844, 31669399
   4228 #endif
   4229             }},
   4230             {{
   4231 #if defined(BORINGSSL_CURVE25519_64BIT)
   4232                 825403285195098, 2144208587560784, 1925552004644643,
   4233                 1915177840006985, 1015952128947864
   4234 #else
   4235                 27019610, 12299467, 53450576, 31951197, 54247203, 28692960,
   4236                 47568713, 28538373, 29439640, 15138866
   4237 #endif
   4238             }},
   4239             {{
   4240 #if defined(BORINGSSL_CURVE25519_64BIT)
   4241                 1807108316634472, 1534392066433717, 347342975407218,
   4242                 1153820745616376, 7375003497471
   4243 #else
   4244                 21536104, 26928012, 34661045, 22864223, 44700786, 5175813,
   4245                 61688824, 17193268, 7779327, 109896
   4246 #endif
   4247             }},
   4248         },
   4249         {
   4250             {{
   4251 #if defined(BORINGSSL_CURVE25519_64BIT)
   4252                 983061001799725, 431211889901241, 2201903782961093,
   4253                 817393911064341, 2214616493042167
   4254 #else
   4255                 30279725, 14648750, 59063993, 6425557, 13639621, 32810923,
   4256                 28698389, 12180118, 23177719, 33000357
   4257 #endif
   4258             }},
   4259             {{
   4260 #if defined(BORINGSSL_CURVE25519_64BIT)
   4261                 228567918409756, 865093958780220, 358083886450556,
   4262                 159617889659320, 1360637926292598
   4263 #else
   4264                 26572828, 3405927, 35407164, 12890904, 47843196, 5335865,
   4265                 60615096, 2378491, 4439158, 20275085
   4266 #endif
   4267             }},
   4268             {{
   4269 #if defined(BORINGSSL_CURVE25519_64BIT)
   4270                 234147501399755, 2229469128637390, 2175289352258889,
   4271                 1397401514549353, 1885288963089922
   4272 #else
   4273                 44392139, 3489069, 57883598, 33221678, 18875721, 32414337,
   4274                 14819433, 20822905, 49391106, 28092994
   4275 #endif
   4276             }},
   4277         },
   4278         {
   4279             {{
   4280 #if defined(BORINGSSL_CURVE25519_64BIT)
   4281                 1111762412951562, 252849572507389, 1048714233823341,
   4282                 146111095601446, 1237505378776770
   4283 #else
   4284                 62052362, 16566550, 15953661, 3767752, 56672365, 15627059,
   4285                 66287910, 2177224, 8550082, 18440267
   4286 #endif
   4287             }},
   4288             {{
   4289 #if defined(BORINGSSL_CURVE25519_64BIT)
   4290                 1113790697840279, 1051167139966244, 1045930658550944,
   4291                 2011366241542643, 1686166824620755
   4292 #else
   4293                 48635543, 16596774, 66727204, 15663610, 22860960, 15585581,
   4294                 39264755, 29971692, 43848403, 25125843
   4295 #endif
   4296             }},
   4297             {{
   4298 #if defined(BORINGSSL_CURVE25519_64BIT)
   4299                 1054097349305049, 1872495070333352, 182121071220717,
   4300                 1064378906787311, 100273572924182
   4301 #else
   4302                 34628313, 15707274, 58902952, 27902350, 29464557, 2713815,
   4303                 44383727, 15860481, 45206294, 1494192
   4304 #endif
   4305             }},
   4306         },
   4307         {
   4308             {{
   4309 #if defined(BORINGSSL_CURVE25519_64BIT)
   4310                 1306410853171605, 1627717417672447, 50983221088417,
   4311                 1109249951172250, 870201789081392
   4312 #else
   4313                 47546773, 19467038, 41524991, 24254879, 13127841, 759709,
   4314                 21923482, 16529112, 8742704, 12967017
   4315 #endif
   4316             }},
   4317             {{
   4318 #if defined(BORINGSSL_CURVE25519_64BIT)
   4319                 104233794644221, 1548919791188248, 2224541913267306,
   4320                 2054909377116478, 1043803389015153
   4321 #else
   4322                 38643965, 1553204, 32536856, 23080703, 42417258, 33148257,
   4323                 58194238, 30620535, 37205105, 15553882
   4324 #endif
   4325             }},
   4326             {{
   4327 #if defined(BORINGSSL_CURVE25519_64BIT)
   4328                 216762189468802, 707284285441622, 190678557969733,
   4329                 973969342604308, 1403009538434867
   4330 #else
   4331                 21877890, 3230008, 9881174, 10539357, 62311749, 2841331,
   4332                 11543572, 14513274, 19375923, 20906471
   4333 #endif
   4334             }},
   4335         },
   4336         {
   4337             {{
   4338 #if defined(BORINGSSL_CURVE25519_64BIT)
   4339                 1279024291038477, 344776835218310, 273722096017199,
   4340                 1834200436811442, 634517197663804
   4341 #else
   4342                 8832269, 19058947, 13253510, 5137575, 5037871, 4078777,
   4343                 24880818, 27331716, 2862652, 9455043
   4344 #endif
   4345             }},
   4346             {{
   4347 #if defined(BORINGSSL_CURVE25519_64BIT)
   4348                 343805853118335, 1302216857414201, 566872543223541,
   4349                 2051138939539004, 321428858384280
   4350 #else
   4351                 29306751, 5123106, 20245049, 19404543, 9592565, 8447059,
   4352                 65031740, 30564351, 15511448, 4789663
   4353 #endif
   4354             }},
   4355             {{
   4356 #if defined(BORINGSSL_CURVE25519_64BIT)
   4357                 470067171324852, 1618629234173951, 2000092177515639,
   4358                 7307679772789, 1117521120249968
   4359 #else
   4360                 46429108, 7004546, 8824831, 24119455, 63063159, 29803695,
   4361                 61354101, 108892, 23513200, 16652362
   4362 #endif
   4363             }},
   4364         },
   4365     },
   4366     {
   4367         {
   4368             {{
   4369 #if defined(BORINGSSL_CURVE25519_64BIT)
   4370                 278151578291475, 1810282338562947, 1771599529530998,
   4371                 1383659409671631, 685373414471841
   4372 #else
   4373                 33852691, 4144781, 62632835, 26975308, 10770038, 26398890,
   4374                 60458447, 20618131, 48789665, 10212859
   4375 #endif
   4376             }},
   4377             {{
   4378 #if defined(BORINGSSL_CURVE25519_64BIT)
   4379                 577009397403102, 1791440261786291, 2177643735971638,
   4380                 174546149911960, 1412505077782326
   4381 #else
   4382                 2756062, 8598110, 7383731, 26694540, 22312758, 32449420,
   4383                 21179800, 2600940, 57120566, 21047965
   4384 #endif
   4385             }},
   4386             {{
   4387 #if defined(BORINGSSL_CURVE25519_64BIT)
   4388                 893719721537457, 1201282458018197, 1522349501711173,
   4389                 58011597740583, 1130406465887139
   4390 #else
   4391                 42463153, 13317461, 36659605, 17900503, 21365573, 22684775,
   4392                 11344423, 864440, 64609187, 16844368
   4393 #endif
   4394             }},
   4395         },
   4396         {
   4397             {{
   4398 #if defined(BORINGSSL_CURVE25519_64BIT)
   4399                 412607348255453, 1280455764199780, 2233277987330768,
   4400                 14180080401665, 331584698417165
   4401 #else
   4402                 40676061, 6148328, 49924452, 19080277, 18782928, 33278435,
   4403                 44547329, 211299, 2719757, 4940997
   4404 #endif
   4405             }},
   4406             {{
   4407 #if defined(BORINGSSL_CURVE25519_64BIT)
   4408                 262483770854550, 990511055108216, 526885552771698,
   4409                 571664396646158, 354086190278723
   4410 #else
   4411                 65784982, 3911312, 60160120, 14759764, 37081714, 7851206,
   4412                 21690126, 8518463, 26699843, 5276295
   4413 #endif
   4414             }},
   4415             {{
   4416 #if defined(BORINGSSL_CURVE25519_64BIT)
   4417                 1820352417585487, 24495617171480, 1547899057533253,
   4418                 10041836186225, 480457105094042
   4419 #else
   4420                 53958991, 27125364, 9396248, 365013, 24703301, 23065493,
   4421                 1321585, 149635, 51656090, 7159368
   4422 #endif
   4423             }},
   4424         },
   4425         {
   4426             {{
   4427 #if defined(BORINGSSL_CURVE25519_64BIT)
   4428                 2023310314989233, 637905337525881, 2106474638900687,
   4429                 557820711084072, 1687858215057826
   4430 #else
   4431                 9987761, 30149673, 17507961, 9505530, 9731535, 31388918,
   4432                 22356008, 8312176, 22477218, 25151047
   4433 #endif
   4434             }},
   4435             {{
   4436 #if defined(BORINGSSL_CURVE25519_64BIT)
   4437                 1144168702609745, 604444390410187, 1544541121756138,
   4438                 1925315550126027, 626401428894002
   4439 #else
   4440                 18155857, 17049442, 19744715, 9006923, 15154154, 23015456,
   4441                 24256459, 28689437, 44560690, 9334108
   4442 #endif
   4443             }},
   4444             {{
   4445 #if defined(BORINGSSL_CURVE25519_64BIT)
   4446                 1922168257351784, 2018674099908659, 1776454117494445,
   4447                 956539191509034, 36031129147635
   4448 #else
   4449                 2986088, 28642539, 10776627, 30080588, 10620589, 26471229,
   4450                 45695018, 14253544, 44521715, 536905
   4451 #endif
   4452             }},
   4453         },
   4454         {
   4455             {{
   4456 #if defined(BORINGSSL_CURVE25519_64BIT)
   4457                 544644538748041, 1039872944430374, 876750409130610,
   4458                 710657711326551, 1216952687484972
   4459 #else
   4460                 4377737, 8115836, 24567078, 15495314, 11625074, 13064599,
   4461                 7390551, 10589625, 10838060, 18134008
   4462 #endif
   4463             }},
   4464             {{
   4465 #if defined(BORINGSSL_CURVE25519_64BIT)
   4466                 58242421545916, 2035812695641843, 2118491866122923,
   4467                 1191684463816273, 46921517454099
   4468 #else
   4469                 47766460, 867879, 9277171, 30335973, 52677291, 31567988,
   4470                 19295825, 17757482, 6378259, 699185
   4471 #endif
   4472             }},
   4473             {{
   4474 #if defined(BORINGSSL_CURVE25519_64BIT)
   4475                 272268252444639, 1374166457774292, 2230115177009552,
   4476                 1053149803909880, 1354288411641016
   4477 #else
   4478                 7895007, 4057113, 60027092, 20476675, 49222032, 33231305,
   4479                 66392824, 15693154, 62063800, 20180469
   4480 #endif
   4481             }},
   4482         },
   4483         {
   4484             {{
   4485 #if defined(BORINGSSL_CURVE25519_64BIT)
   4486                 1857910905368338, 1754729879288912, 885945464109877,
   4487                 1516096106802166, 1602902393369811
   4488 #else
   4489                 59371282, 27685029, 52542544, 26147512, 11385653, 13201616,
   4490                 31730678, 22591592, 63190227, 23885106
   4491 #endif
   4492             }},
   4493             {{
   4494 #if defined(BORINGSSL_CURVE25519_64BIT)
   4495                 1193437069800958, 901107149704790, 999672920611411,
   4496                 477584824802207, 364239578697845
   4497 #else
   4498                 10188286, 17783598, 59772502, 13427542, 22223443, 14896287,
   4499                 30743455, 7116568, 45322357, 5427592
   4500 #endif
   4501             }},
   4502             {{
   4503 #if defined(BORINGSSL_CURVE25519_64BIT)
   4504                 886299989548838, 1538292895758047, 1590564179491896,
   4505                 1944527126709657, 837344427345298
   4506 #else
   4507                 696102, 13206899, 27047647, 22922350, 15285304, 23701253,
   4508                 10798489, 28975712, 19236242, 12477404
   4509 #endif
   4510             }},
   4511         },
   4512         {
   4513             {{
   4514 #if defined(BORINGSSL_CURVE25519_64BIT)
   4515                 754558365378305, 1712186480903618, 1703656826337531,
   4516                 750310918489786, 518996040250900
   4517 #else
   4518                 55879425, 11243795, 50054594, 25513566, 66320635, 25386464,
   4519                 63211194, 11180503, 43939348, 7733643
   4520 #endif
   4521             }},
   4522             {{
   4523 #if defined(BORINGSSL_CURVE25519_64BIT)
   4524                 1309847803895382, 1462151862813074, 211370866671570,
   4525                 1544595152703681, 1027691798954090
   4526 #else
   4527                 17800790, 19518253, 40108434, 21787760, 23887826, 3149671,
   4528                 23466177, 23016261, 10322026, 15313801
   4529 #endif
   4530             }},
   4531             {{
   4532 #if defined(BORINGSSL_CURVE25519_64BIT)
   4533                 803217563745370, 1884799722343599, 1357706345069218,
   4534                 2244955901722095, 730869460037413
   4535 #else
   4536                 26246234, 11968874, 32263343, 28085704, 6830754, 20231401,
   4537                 51314159, 33452449, 42659621, 10890803
   4538 #endif
   4539             }},
   4540         },
   4541         {
   4542             {{
   4543 #if defined(BORINGSSL_CURVE25519_64BIT)
   4544                 689299471295966, 1831210565161071, 1375187341585438,
   4545                 1106284977546171, 1893781834054269
   4546 #else
   4547                 35743198, 10271362, 54448239, 27287163, 16690206, 20491888,
   4548                 52126651, 16484930, 25180797, 28219548
   4549 #endif
   4550             }},
   4551             {{
   4552 #if defined(BORINGSSL_CURVE25519_64BIT)
   4553                 696351368613042, 1494385251239250, 738037133616932,
   4554                 636385507851544, 927483222611406
   4555 #else
   4556                 66522290, 10376443, 34522450, 22268075, 19801892, 10997610,
   4557                 2276632, 9482883, 316878, 13820577
   4558 #endif
   4559             }},
   4560             {{
   4561 #if defined(BORINGSSL_CURVE25519_64BIT)
   4562                 1949114198209333, 1104419699537997, 783495707664463,
   4563                 1747473107602770, 2002634765788641
   4564 #else
   4565                 57226037, 29044064, 64993357, 16457135, 56008783, 11674995,
   4566                 30756178, 26039378, 30696929, 29841583
   4567 #endif
   4568             }},
   4569         },
   4570         {
   4571             {{
   4572 #if defined(BORINGSSL_CURVE25519_64BIT)
   4573                 1607325776830197, 530883941415333, 1451089452727895,
   4574                 1581691157083423, 496100432831154
   4575 #else
   4576                 32988917, 23951020, 12499365, 7910787, 56491607, 21622917,
   4577                 59766047, 23569034, 34759346, 7392472
   4578 #endif
   4579             }},
   4580             {{
   4581 #if defined(BORINGSSL_CURVE25519_64BIT)
   4582                 1068900648804224, 2006891997072550, 1134049269345549,
   4583                 1638760646180091, 2055396084625778
   4584 #else
   4585                 58253184, 15927860, 9866406, 29905021, 64711949, 16898650,
   4586                 36699387, 24419436, 25112946, 30627788
   4587 #endif
   4588             }},
   4589             {{
   4590 #if defined(BORINGSSL_CURVE25519_64BIT)
   4591                 2222475519314561, 1870703901472013, 1884051508440561,
   4592                 1344072275216753, 1318025677799069
   4593 #else
   4594                 64604801, 33117465, 25621773, 27875660, 15085041, 28074555,
   4595                 42223985, 20028237, 5537437, 19640113
   4596 #endif
   4597             }},
   4598         },
   4599     },
   4600     {
   4601         {
   4602             {{
   4603 #if defined(BORINGSSL_CURVE25519_64BIT)
   4604                 155711679280656, 681100400509288, 389811735211209,
   4605                 2135723811340709, 408733211204125
   4606 #else
   4607                 55883280, 2320284, 57524584, 10149186, 33664201, 5808647,
   4608                 52232613, 31824764, 31234589, 6090599
   4609 #endif
   4610             }},
   4611             {{
   4612 #if defined(BORINGSSL_CURVE25519_64BIT)
   4613                 7813206966729, 194444201427550, 2071405409526507,
   4614                 1065605076176312, 1645486789731291
   4615 #else
   4616                 57475529, 116425, 26083934, 2897444, 60744427, 30866345, 609720,
   4617                 15878753, 60138459, 24519663
   4618 #endif
   4619             }},
   4620             {{
   4621 #if defined(BORINGSSL_CURVE25519_64BIT)
   4622                 16625790644959, 1647648827778410, 1579910185572704,
   4623                 436452271048548, 121070048451050
   4624 #else
   4625                 39351007, 247743, 51914090, 24551880, 23288160, 23542496,
   4626                 43239268, 6503645, 20650474, 1804084
   4627 #endif
   4628             }},
   4629         },
   4630         {
   4631             {{
   4632 #if defined(BORINGSSL_CURVE25519_64BIT)
   4633                 1037263028552531, 568385780377829, 297953104144430,
   4634                 1558584511931211, 2238221839292471
   4635 #else
   4636                 39519059, 15456423, 8972517, 8469608, 15640622, 4439847,
   4637                 3121995, 23224719, 27842615, 33352104
   4638 #endif
   4639             }},
   4640             {{
   4641 #if defined(BORINGSSL_CURVE25519_64BIT)
   4642                 190565267697443, 672855706028058, 338796554369226,
   4643                 337687268493904, 853246848691734
   4644 #else
   4645                 51801891, 2839643, 22530074, 10026331, 4602058, 5048462,
   4646                 28248656, 5031932, 55733782, 12714368
   4647 #endif
   4648             }},
   4649             {{
   4650 #if defined(BORINGSSL_CURVE25519_64BIT)
   4651                 1763863028400139, 766498079432444, 1321118624818005,
   4652                 69494294452268, 858786744165651
   4653 #else
   4654                 20807691, 26283607, 29286140, 11421711, 39232341, 19686201,
   4655                 45881388, 1035545, 47375635, 12796919
   4656 #endif
   4657             }},
   4658         },
   4659         {
   4660             {{
   4661 #if defined(BORINGSSL_CURVE25519_64BIT)
   4662                 1292056768563024, 1456632109855638, 1100631247050184,
   4663                 1386133165675321, 1232898350193752
   4664 #else
   4665                 12076880, 19253146, 58323862, 21705509, 42096072, 16400683,
   4666                 49517369, 20654993, 3480664, 18371617
   4667 #endif
   4668             }},
   4669             {{
   4670 #if defined(BORINGSSL_CURVE25519_64BIT)
   4671                 366253102478259, 525676242508811, 1449610995265438,
   4672                 1183300845322183, 185960306491545
   4673 #else
   4674                 34747315, 5457596, 28548107, 7833186, 7303070, 21600887,
   4675                 42745799, 17632556, 33734809, 2771024
   4676 #endif
   4677             }},
   4678             {{
   4679 #if defined(BORINGSSL_CURVE25519_64BIT)
   4680                 28315355815982, 460422265558930, 1799675876678724,
   4681                 1969256312504498, 1051823843138725
   4682 #else
   4683                 45719598, 421931, 26597266, 6860826, 22486084, 26817260,
   4684                 49971378, 29344205, 42556581, 15673396
   4685 #endif
   4686             }},
   4687         },
   4688         {
   4689             {{
   4690 #if defined(BORINGSSL_CURVE25519_64BIT)
   4691                 156914999361983, 1606148405719949, 1665208410108430,
   4692                 317643278692271, 1383783705665320
   4693 #else
   4694                 46924223, 2338215, 19788685, 23933476, 63107598, 24813538,
   4695                 46837679, 4733253, 3727144, 20619984
   4696 #endif
   4697             }},
   4698             {{
   4699 #if defined(BORINGSSL_CURVE25519_64BIT)
   4700                 54684536365732, 2210010038536222, 1194984798155308,
   4701                 535239027773705, 1516355079301361
   4702 #else
   4703                 6120100, 814863, 55314462, 32931715, 6812204, 17806661, 2019593,
   4704                 7975683, 31123697, 22595451
   4705 #endif
   4706             }},
   4707             {{
   4708 #if defined(BORINGSSL_CURVE25519_64BIT)
   4709                 1484387703771650, 198537510937949, 2186282186359116,
   4710                 617687444857508, 647477376402122
   4711 #else
   4712                 30069250, 22119100, 30434653, 2958439, 18399564, 32578143,
   4713                 12296868, 9204260, 50676426, 9648164
   4714 #endif
   4715             }},
   4716         },
   4717         {
   4718             {{
   4719 #if defined(BORINGSSL_CURVE25519_64BIT)
   4720                 2147715541830533, 500032538445817, 646380016884826,
   4721                 352227855331122, 1488268620408052
   4722 #else
   4723                 32705413, 32003455, 30705657, 7451065, 55303258, 9631812,
   4724                 3305266, 5248604, 41100532, 22176930
   4725 #endif
   4726             }},
   4727             {{
   4728 #if defined(BORINGSSL_CURVE25519_64BIT)
   4729                 159386186465542, 1877626593362941, 618737197060512,
   4730                 1026674284330807, 1158121760792685
   4731 #else
   4732                 17219846, 2375039, 35537917, 27978816, 47649184, 9219902,
   4733                 294711, 15298639, 2662509, 17257359
   4734 #endif
   4735             }},
   4736             {{
   4737 #if defined(BORINGSSL_CURVE25519_64BIT)
   4738                 1744544377739822, 1964054180355661, 1685781755873170,
   4739                 2169740670377448, 1286112621104591
   4740 #else
   4741                 65935918, 25995736, 62742093, 29266687, 45762450, 25120105,
   4742                 32087528, 32331655, 32247247, 19164571
   4743 #endif
   4744             }},
   4745         },
   4746         {
   4747             {{
   4748 #if defined(BORINGSSL_CURVE25519_64BIT)
   4749                 81977249784993, 1667943117713086, 1668983819634866,
   4750                 1605016835177615, 1353960708075544
   4751 #else
   4752                 14312609, 1221556, 17395390, 24854289, 62163122, 24869796,
   4753                 38911119, 23916614, 51081240, 20175586
   4754 #endif
   4755             }},
   4756             {{
   4757 #if defined(BORINGSSL_CURVE25519_64BIT)
   4758                 1602253788689063, 439542044889886, 2220348297664483,
   4759                 657877410752869, 157451572512238
   4760 #else
   4761                 65680039, 23875441, 57873182, 6549686, 59725795, 33085767,
   4762                 23046501, 9803137, 17597934, 2346211
   4763 #endif
   4764             }},
   4765             {{
   4766 #if defined(BORINGSSL_CURVE25519_64BIT)
   4767                 1029287186166717, 65860128430192, 525298368814832,
   4768                 1491902500801986, 1461064796385400
   4769 #else
   4770                 18510781, 15337574, 26171504, 981392, 44867312, 7827555,
   4771                 43617730, 22231079, 3059832, 21771562
   4772 #endif
   4773             }},
   4774         },
   4775         {
   4776             {{
   4777 #if defined(BORINGSSL_CURVE25519_64BIT)
   4778                 408216988729246, 2121095722306989, 913562102267595,
   4779                 1879708920318308, 241061448436731
   4780 #else
   4781                 10141598, 6082907, 17829293, 31606789, 9830091, 13613136,
   4782                 41552228, 28009845, 33606651, 3592095
   4783 #endif
   4784             }},
   4785             {{
   4786 #if defined(BORINGSSL_CURVE25519_64BIT)
   4787                 1185483484383269, 1356339572588553, 584932367316448,
   4788                 102132779946470, 1792922621116791
   4789 #else
   4790                 33114149, 17665080, 40583177, 20211034, 33076704, 8716171,
   4791                 1151462, 1521897, 66126199, 26716628
   4792 #endif
   4793             }},
   4794             {{
   4795 #if defined(BORINGSSL_CURVE25519_64BIT)
   4796                 1966196870701923, 2230044620318636, 1425982460745905,
   4797                 261167817826569, 46517743394330
   4798 #else
   4799                 34169699, 29298616, 23947180, 33230254, 34035889, 21248794,
   4800                 50471177, 3891703, 26353178, 693168
   4801 #endif
   4802             }},
   4803         },
   4804         {
   4805             {{
   4806 #if defined(BORINGSSL_CURVE25519_64BIT)
   4807                 107077591595359, 884959942172345, 27306869797400,
   4808                 2224911448949390, 964352058245223
   4809 #else
   4810                 30374239, 1595580, 50224825, 13186930, 4600344, 406904, 9585294,
   4811                 33153764, 31375463, 14369965
   4812 #endif
   4813             }},
   4814             {{
   4815 #if defined(BORINGSSL_CURVE25519_64BIT)
   4816                 1730194207717538, 431790042319772, 1831515233279467,
   4817                 1372080552768581, 1074513929381760
   4818 #else
   4819                 52738210, 25781902, 1510300, 6434173, 48324075, 27291703,
   4820                 32732229, 20445593, 17901440, 16011505
   4821 #endif
   4822             }},
   4823             {{
   4824 #if defined(BORINGSSL_CURVE25519_64BIT)
   4825                 1450880638731607, 1019861580989005, 1229729455116861,
   4826                 1174945729836143, 826083146840706
   4827 #else
   4828                 18171223, 21619806, 54608461, 15197121, 56070717, 18324396,
   4829                 47936623, 17508055, 8764034, 12309598
   4830 #endif
   4831             }},
   4832         },
   4833     },
   4834     {
   4835         {
   4836             {{
   4837 #if defined(BORINGSSL_CURVE25519_64BIT)
   4838                 1899935429242705, 1602068751520477, 940583196550370,
   4839                 82431069053859, 1540863155745696
   4840 #else
   4841                 5975889, 28311244, 47649501, 23872684, 55567586, 14015781,
   4842                 43443107, 1228318, 17544096, 22960650
   4843 #endif
   4844             }},
   4845             {{
   4846 #if defined(BORINGSSL_CURVE25519_64BIT)
   4847                 2136688454840028, 2099509000964294, 1690800495246475,
   4848                 1217643678575476, 828720645084218
   4849 #else
   4850                 5811932, 31839139, 3442886, 31285122, 48741515, 25194890,
   4851                 49064820, 18144304, 61543482, 12348899
   4852 #endif
   4853             }},
   4854             {{
   4855 #if defined(BORINGSSL_CURVE25519_64BIT)
   4856                 765548025667841, 462473984016099, 998061409979798,
   4857                 546353034089527, 2212508972466858
   4858 #else
   4859                 35709185, 11407554, 25755363, 6891399, 63851926, 14872273,
   4860                 42259511, 8141294, 56476330, 32968952
   4861 #endif
   4862             }},
   4863         },
   4864         {
   4865             {{
   4866 #if defined(BORINGSSL_CURVE25519_64BIT)
   4867                 46575283771160, 892570971573071, 1281983193144090,
   4868                 1491520128287375, 75847005908304
   4869 #else
   4870                 54433560, 694025, 62032719, 13300343, 14015258, 19103038,
   4871                 57410191, 22225381, 30944592, 1130208
   4872 #endif
   4873             }},
   4874             {{
   4875 #if defined(BORINGSSL_CURVE25519_64BIT)
   4876                 1801436127943107, 1734436817907890, 1268728090345068,
   4877                 167003097070711, 2233597765834956
   4878 #else
   4879                 8247747, 26843490, 40546482, 25845122, 52706924, 18905521,
   4880                 4652151, 2488540, 23550156, 33283200
   4881 #endif
   4882             }},
   4883             {{
   4884 #if defined(BORINGSSL_CURVE25519_64BIT)
   4885                 1997562060465113, 1048700225534011, 7615603985628,
   4886                 1855310849546841, 2242557647635213
   4887 #else
   4888                 17294297, 29765994, 7026747, 15626851, 22990044, 113481,
   4889                 2267737, 27646286, 66700045, 33416712
   4890 #endif
   4891             }},
   4892         },
   4893         {
   4894             {{
   4895 #if defined(BORINGSSL_CURVE25519_64BIT)
   4896                 1161017320376250, 492624580169043, 2169815802355237,
   4897                 976496781732542, 1770879511019629
   4898 #else
   4899                 16091066, 17300506, 18599251, 7340678, 2137637, 32332775,
   4900                 63744702, 14550935, 3260525, 26388161
   4901 #endif
   4902             }},
   4903             {{
   4904 #if defined(BORINGSSL_CURVE25519_64BIT)
   4905                 1357044908364776, 729130645262438, 1762469072918979,
   4906                 1365633616878458, 181282906404941
   4907 #else
   4908                 62198760, 20221544, 18550886, 10864893, 50649539, 26262835,
   4909                 44079994, 20349526, 54360141, 2701325
   4910 #endif
   4911             }},
   4912             {{
   4913 #if defined(BORINGSSL_CURVE25519_64BIT)
   4914                 1080413443139865, 1155205815510486, 1848782073549786,
   4915                 622566975152580, 124965574467971
   4916 #else
   4917                 58534169, 16099414, 4629974, 17213908, 46322650, 27548999,
   4918                 57090500, 9276970, 11329923, 1862132
   4919 #endif
   4920             }},
   4921         },
   4922         {
   4923             {{
   4924 #if defined(BORINGSSL_CURVE25519_64BIT)
   4925                 1184526762066993, 247622751762817, 692129017206356,
   4926                 820018689412496, 2188697339828085
   4927 #else
   4928                 14763057, 17650824, 36190593, 3689866, 3511892, 10313526,
   4929                 45157776, 12219230, 58070901, 32614131
   4930 #endif
   4931             }},
   4932             {{
   4933 #if defined(BORINGSSL_CURVE25519_64BIT)
   4934                 2020536369003019, 202261491735136, 1053169669150884,
   4935                 2056531979272544, 778165514694311
   4936 #else
   4937                 8894987, 30108338, 6150752, 3013931, 301220, 15693451, 35127648,
   4938                 30644714, 51670695, 11595569
   4939 #endif
   4940             }},
   4941             {{
   4942 #if defined(BORINGSSL_CURVE25519_64BIT)
   4943                 237404399610207, 1308324858405118, 1229680749538400,
   4944                 720131409105291, 1958958863624906
   4945 #else
   4946                 15214943, 3537601, 40870142, 19495559, 4418656, 18323671,
   4947                 13947275, 10730794, 53619402, 29190761
   4948 #endif
   4949             }},
   4950         },
   4951         {
   4952             {{
   4953 #if defined(BORINGSSL_CURVE25519_64BIT)
   4954                 515583508038846, 17656978857189, 1717918437373989,
   4955                 1568052070792483, 46975803123923
   4956 #else
   4957                 64570558, 7682792, 32759013, 263109, 37124133, 25598979,
   4958                 44776739, 23365796, 977107, 699994
   4959 #endif
   4960             }},
   4961             {{
   4962 #if defined(BORINGSSL_CURVE25519_64BIT)
   4963                 281527309158085, 36970532401524, 866906920877543,
   4964                 2222282602952734, 1289598729589882
   4965 #else
   4966                 54642373, 4195083, 57897332, 550903, 51543527, 12917919,
   4967                 19118110, 33114591, 36574330, 19216518
   4968 #endif
   4969             }},
   4970             {{
   4971 #if defined(BORINGSSL_CURVE25519_64BIT)
   4972                 1278207464902042, 494742455008756, 1262082121427081,
   4973                 1577236621659884, 1888786707293291
   4974 #else
   4975                 31788442, 19046775, 4799988, 7372237, 8808585, 18806489,
   4976                 9408236, 23502657, 12493931, 28145115
   4977 #endif
   4978             }},
   4979         },
   4980         {
   4981             {{
   4982 #if defined(BORINGSSL_CURVE25519_64BIT)
   4983                 353042527954210, 1830056151907359, 1111731275799225,
   4984                 174960955838824, 404312815582675
   4985 #else
   4986                 41428258, 5260743, 47873055, 27269961, 63412921, 16566086,
   4987                 27218280, 2607121, 29375955, 6024730
   4988 #endif
   4989             }},
   4990             {{
   4991 #if defined(BORINGSSL_CURVE25519_64BIT)
   4992                 2064251142068628, 1666421603389706, 1419271365315441,
   4993                 468767774902855, 191535130366583
   4994 #else
   4995                 842132, 30759739, 62345482, 24831616, 26332017, 21148791,
   4996                 11831879, 6985184, 57168503, 2854095
   4997 #endif
   4998             }},
   4999             {{
   5000 #if defined(BORINGSSL_CURVE25519_64BIT)
   5001                 1716987058588002, 1859366439773457, 1767194234188234,
   5002                 64476199777924, 1117233614485261
   5003 #else
   5004                 62261602, 25585100, 2516241, 27706719, 9695690, 26333246,
   5005                 16512644, 960770, 12121869, 16648078
   5006 #endif
   5007             }},
   5008         },
   5009         {
   5010             {{
   5011 #if defined(BORINGSSL_CURVE25519_64BIT)
   5012                 984292135520292, 135138246951259, 2220652137473167,
   5013                 1722843421165029, 190482558012909
   5014 #else
   5015                 51890212, 14667095, 53772635, 2013716, 30598287, 33090295,
   5016                 35603941, 25672367, 20237805, 2838411
   5017 #endif
   5018             }},
   5019             {{
   5020 #if defined(BORINGSSL_CURVE25519_64BIT)
   5021                 298845952651262, 1166086588952562, 1179896526238434,
   5022                 1347812759398693, 1412945390096208
   5023 #else
   5024                 47820798, 4453151, 15298546, 17376044, 22115042, 17581828,
   5025                 12544293, 20083975, 1068880, 21054527
   5026 #endif
   5027             }},
   5028             {{
   5029 #if defined(BORINGSSL_CURVE25519_64BIT)
   5030                 1143239552672925, 906436640714209, 2177000572812152,
   5031                 2075299936108548, 325186347798433
   5032 #else
   5033                 57549981, 17035596, 33238497, 13506958, 30505848, 32439836,
   5034                 58621956, 30924378, 12521377, 4845654
   5035 #endif
   5036             }},
   5037         },
   5038         {
   5039             {{
   5040 #if defined(BORINGSSL_CURVE25519_64BIT)
   5041                 721024854374772, 684487861263316, 1373438744094159,
   5042                 2193186935276995, 1387043709851261
   5043 #else
   5044                 38910324, 10744107, 64150484, 10199663, 7759311, 20465832,
   5045                 3409347, 32681032, 60626557, 20668561
   5046 #endif
   5047             }},
   5048             {{
   5049 #if defined(BORINGSSL_CURVE25519_64BIT)
   5050                 418098668140962, 715065997721283, 1471916138376055,
   5051                 2168570337288357, 937812682637044
   5052 #else
   5053                 43547042, 6230155, 46726851, 10655313, 43068279, 21933259,
   5054                 10477733, 32314216, 63995636, 13974497
   5055 #endif
   5056             }},
   5057             {{
   5058 #if defined(BORINGSSL_CURVE25519_64BIT)
   5059                 1043584187226485, 2143395746619356, 2209558562919611,
   5060                 482427979307092, 847556718384018
   5061 #else
   5062                 12966261, 15550616, 35069916, 31939085, 21025979, 32924988,
   5063                 5642324, 7188737, 18895762, 12629579
   5064 #endif
   5065             }},
   5066         },
   5067     },
   5068     {
   5069         {
   5070             {{
   5071 #if defined(BORINGSSL_CURVE25519_64BIT)
   5072                 1248731221520759, 1465200936117687, 540803492710140,
   5073                 52978634680892, 261434490176109
   5074 #else
   5075                 14741879, 18607545, 22177207, 21833195, 1279740, 8058600,
   5076                 11758140, 789443, 32195181, 3895677
   5077 #endif
   5078             }},
   5079             {{
   5080 #if defined(BORINGSSL_CURVE25519_64BIT)
   5081                 1057329623869501, 620334067429122, 461700859268034,
   5082                 2012481616501857, 297268569108938
   5083 #else
   5084                 10758205, 15755439, 62598914, 9243697, 62229442, 6879878,
   5085                 64904289, 29988312, 58126794, 4429646
   5086 #endif
   5087             }},
   5088             {{
   5089 #if defined(BORINGSSL_CURVE25519_64BIT)
   5090                 1055352180870759, 1553151421852298, 1510903185371259,
   5091                 1470458349428097, 1226259419062731
   5092 #else
   5093                 64654951, 15725972, 46672522, 23143759, 61304955, 22514211,
   5094                 59972993, 21911536, 18047435, 18272689
   5095 #endif
   5096             }},
   5097         },
   5098         {
   5099             {{
   5100 #if defined(BORINGSSL_CURVE25519_64BIT)
   5101                 1492988790301668, 790326625573331, 1190107028409745,
   5102                 1389394752159193, 1620408196604194
   5103 #else
   5104                 41935844, 22247266, 29759955, 11776784, 44846481, 17733976,
   5105                 10993113, 20703595, 49488162, 24145963
   5106 #endif
   5107             }},
   5108             {{
   5109 #if defined(BORINGSSL_CURVE25519_64BIT)
   5110                 47000654413729, 1004754424173864, 1868044813557703,
   5111                 173236934059409, 588771199737015
   5112 #else
   5113                 21987233, 700364, 42603816, 14972007, 59334599, 27836036,
   5114                 32155025, 2581431, 37149879, 8773374
   5115 #endif
   5116             }},
   5117             {{
   5118 #if defined(BORINGSSL_CURVE25519_64BIT)
   5119                 30498470091663, 1082245510489825, 576771653181956,
   5120                 806509986132686, 1317634017056939
   5121 #else
   5122                 41540495, 454462, 53896929, 16126714, 25240068, 8594567,
   5123                 20656846, 12017935, 59234475, 19634276
   5124 #endif
   5125             }},
   5126         },
   5127         {
   5128             {{
   5129 #if defined(BORINGSSL_CURVE25519_64BIT)
   5130                 420308055751555, 1493354863316002, 165206721528088,
   5131                 1884845694919786, 2065456951573059
   5132 #else
   5133                 6028163, 6263078, 36097058, 22252721, 66289944, 2461771,
   5134                 35267690, 28086389, 65387075, 30777706
   5135 #endif
   5136             }},
   5137             {{
   5138 #if defined(BORINGSSL_CURVE25519_64BIT)
   5139                 1115636332012334, 1854340990964155, 83792697369514,
   5140                 1972177451994021, 457455116057587
   5141 #else
   5142                 54829870, 16624276, 987579, 27631834, 32908202, 1248608,
   5143                 7719845, 29387734, 28408819, 6816612
   5144 #endif
   5145             }},
   5146             {{
   5147 #if defined(BORINGSSL_CURVE25519_64BIT)
   5148                 1698968457310898, 1435137169051090, 1083661677032510,
   5149                 938363267483709, 340103887207182
   5150 #else
   5151                 56750770, 25316602, 19549650, 21385210, 22082622, 16147817,
   5152                 20613181, 13982702, 56769294, 5067942
   5153 #endif
   5154             }},
   5155         },
   5156         {
   5157             {{
   5158 #if defined(BORINGSSL_CURVE25519_64BIT)
   5159                 1995325341336574, 911500251774648, 164010755403692,
   5160                 855378419194762, 1573601397528842
   5161 #else
   5162                 36602878, 29732664, 12074680, 13582412, 47230892, 2443950,
   5163                 47389578, 12746131, 5331210, 23448488
   5164 #endif
   5165             }},
   5166             {{
   5167 #if defined(BORINGSSL_CURVE25519_64BIT)
   5168                 241719380661528, 310028521317150, 1215881323380194,
   5169                 1408214976493624, 2141142156467363
   5170 #else
   5171                 30528792, 3601899, 65151774, 4619784, 39747042, 18118043,
   5172                 24180792, 20984038, 27679907, 31905504
   5173 #endif
   5174             }},
   5175             {{
   5176 #if defined(BORINGSSL_CURVE25519_64BIT)
   5177                 1315157046163473, 727368447885818, 1363466668108618,
   5178                 1668921439990361, 1398483384337907
   5179 #else
   5180                 9402385, 19597367, 32834042, 10838634, 40528714, 20317236,
   5181                 26653273, 24868867, 22611443, 20839026
   5182 #endif
   5183             }},
   5184         },
   5185         {
   5186             {{
   5187 #if defined(BORINGSSL_CURVE25519_64BIT)
   5188                 75029678299646, 1015388206460473, 1849729037055212,
   5189                 1939814616452984, 444404230394954
   5190 #else
   5191                 22190590, 1118029, 22736441, 15130463, 36648172, 27563110,
   5192                 19189624, 28905490, 4854858, 6622139
   5193 #endif
   5194             }},
   5195             {{
   5196 #if defined(BORINGSSL_CURVE25519_64BIT)
   5197                 2053597130993710, 2024431685856332, 2233550957004860,
   5198                 2012407275509545, 872546993104440
   5199 #else
   5200                 58798126, 30600981, 58846284, 30166382, 56707132, 33282502,
   5201                 13424425, 29987205, 26404408, 13001963
   5202 #endif
   5203             }},
   5204             {{
   5205 #if defined(BORINGSSL_CURVE25519_64BIT)
   5206                 1217269667678610, 599909351968693, 1390077048548598,
   5207                 1471879360694802, 739586172317596
   5208 #else
   5209                 35867026, 18138731, 64114613, 8939345, 11562230, 20713762,
   5210                 41044498, 21932711, 51703708, 11020692
   5211 #endif
   5212             }},
   5213         },
   5214         {
   5215             {{
   5216 #if defined(BORINGSSL_CURVE25519_64BIT)
   5217                 1718318639380794, 1560510726633958, 904462881159922,
   5218                 1418028351780052, 94404349451937
   5219 #else
   5220                 1866042, 25604943, 59210214, 23253421, 12483314, 13477547,
   5221                 3175636, 21130269, 28761761, 1406734
   5222 #endif
   5223             }},
   5224             {{
   5225 #if defined(BORINGSSL_CURVE25519_64BIT)
   5226                 2132502667405250, 214379346175414, 1502748313768060,
   5227                 1960071701057800, 1353971822643138
   5228 #else
   5229                 66660290, 31776765, 13018550, 3194501, 57528444, 22392694,
   5230                 24760584, 29207344, 25577410, 20175752
   5231 #endif
   5232             }},
   5233             {{
   5234 #if defined(BORINGSSL_CURVE25519_64BIT)
   5235                 319394212043702, 2127459436033571, 717646691535162,
   5236                 663366796076914, 318459064945314
   5237 #else
   5238                 42818486, 4759344, 66418211, 31701615, 2066746, 10693769,
   5239                 37513074, 9884935, 57739938, 4745409
   5240 #endif
   5241             }},
   5242         },
   5243         {
   5244             {{
   5245 #if defined(BORINGSSL_CURVE25519_64BIT)
   5246                 405989424923593, 1960452633787083, 667349034401665,
   5247                 1492674260767112, 1451061489880787
   5248 #else
   5249                 57967561, 6049713, 47577803, 29213020, 35848065, 9944275,
   5250                 51646856, 22242579, 10931923, 21622501
   5251 #endif
   5252             }},
   5253             {{
   5254 #if defined(BORINGSSL_CURVE25519_64BIT)
   5255                 947085906234007, 323284730494107, 1485778563977200,
   5256                 728576821512394, 901584347702286
   5257 #else
   5258                 50547351, 14112679, 59096219, 4817317, 59068400, 22139825,
   5259                 44255434, 10856640, 46638094, 13434653
   5260 #endif
   5261             }},
   5262             {{
   5263 #if defined(BORINGSSL_CURVE25519_64BIT)
   5264                 1575783124125742, 2126210792434375, 1569430791264065,
   5265                 1402582372904727, 1891780248341114
   5266 #else
   5267                 22759470, 23480998, 50342599, 31683009, 13637441, 23386341,
   5268                 1765143, 20900106, 28445306, 28189722
   5269 #endif
   5270             }},
   5271         },
   5272         {
   5273             {{
   5274 #if defined(BORINGSSL_CURVE25519_64BIT)
   5275                 838432205560695, 1997703511451664, 1018791879907867,
   5276                 1662001808174331, 78328132957753
   5277 #else
   5278                 29875063, 12493613, 2795536, 29768102, 1710619, 15181182,
   5279                 56913147, 24765756, 9074233, 1167180
   5280 #endif
   5281             }},
   5282             {{
   5283 #if defined(BORINGSSL_CURVE25519_64BIT)
   5284                 739152638255629, 2074935399403557, 505483666745895,
   5285                 1611883356514088, 628654635394878
   5286 #else
   5287                 40903181, 11014232, 57266213, 30918946, 40200743, 7532293,
   5288                 48391976, 24018933, 3843902, 9367684
   5289 #endif
   5290             }},
   5291             {{
   5292 #if defined(BORINGSSL_CURVE25519_64BIT)
   5293                 1822054032121349, 643057948186973, 7306757352712,
   5294                 577249257962099, 284735863382083
   5295 #else
   5296                 56139269, 27150720, 9591133, 9582310, 11349256, 108879,
   5297                 16235123, 8601684, 66969667, 4242894
   5298 #endif
   5299             }},
   5300         },
   5301     },
   5302     {
   5303         {
   5304             {{
   5305 #if defined(BORINGSSL_CURVE25519_64BIT)
   5306                 1366558556363930, 1448606567552086, 1478881020944768,
   5307                 165803179355898, 1115718458123498
   5308 #else
   5309                 22092954, 20363309, 65066070, 21585919, 32186752, 22037044,
   5310                 60534522, 2470659, 39691498, 16625500
   5311 #endif
   5312             }},
   5313             {{
   5314 #if defined(BORINGSSL_CURVE25519_64BIT)
   5315                 204146226972102, 1630511199034723, 2215235214174763,
   5316                 174665910283542, 956127674017216
   5317 #else
   5318                 56051142, 3042015, 13770083, 24296510, 584235, 33009577,
   5319                 59338006, 2602724, 39757248, 14247412
   5320 #endif
   5321             }},
   5322             {{
   5323 #if defined(BORINGSSL_CURVE25519_64BIT)
   5324                 1562934578796716, 1070893489712745, 11324610642270,
   5325                 958989751581897, 2172552325473805
   5326 #else
   5327                 6314156, 23289540, 34336361, 15957556, 56951134, 168749,
   5328                 58490057, 14290060, 27108877, 32373552
   5329 #endif
   5330             }},
   5331         },
   5332         {
   5333             {{
   5334 #if defined(BORINGSSL_CURVE25519_64BIT)
   5335                 1770564423056027, 735523631664565, 1326060113795289,
   5336                 1509650369341127, 65892421582684
   5337 #else
   5338                 58522267, 26383465, 13241781, 10960156, 34117849, 19759835,
   5339                 33547975, 22495543, 39960412, 981873
   5340 #endif
   5341             }},
   5342             {{
   5343 #if defined(BORINGSSL_CURVE25519_64BIT)
   5344                 623682558650637, 1337866509471512, 990313350206649,
   5345                 1314236615762469, 1164772974270275
   5346 #else
   5347                 22833421, 9293594, 34459416, 19935764, 57971897, 14756818,
   5348                 44180005, 19583651, 56629059, 17356469
   5349 #endif
   5350             }},
   5351             {{
   5352 #if defined(BORINGSSL_CURVE25519_64BIT)
   5353                 223256821462517, 723690150104139, 1000261663630601,
   5354                 933280913953265, 254872671543046
   5355 #else
   5356                 59340277, 3326785, 38997067, 10783823, 19178761, 14905060,
   5357                 22680049, 13906969, 51175174, 3797898
   5358 #endif
   5359             }},
   5360         },
   5361         {
   5362             {{
   5363 #if defined(BORINGSSL_CURVE25519_64BIT)
   5364                 1969087237026041, 624795725447124, 1335555107635969,
   5365                 2069986355593023, 1712100149341902
   5366 #else
   5367                 21721337, 29341686, 54902740, 9310181, 63226625, 19901321,
   5368                 23740223, 30845200, 20491982, 25512280
   5369 #endif
   5370             }},
   5371             {{
   5372 #if defined(BORINGSSL_CURVE25519_64BIT)
   5373                 1236103475266979, 1837885883267218, 1026072585230455,
   5374                 1025865513954973, 1801964901432134
   5375 #else
   5376                 9209251, 18419377, 53852306, 27386633, 66377847, 15289672,
   5377                 25947805, 15286587, 30997318, 26851369
   5378 #endif
   5379             }},
   5380             {{
   5381 #if defined(BORINGSSL_CURVE25519_64BIT)
   5382                 1115241013365517, 1712251818829143, 2148864332502771,
   5383                 2096001471438138, 2235017246626125
   5384 #else
   5385                 7392013, 16618386, 23946583, 25514540, 53843699, 32020573,
   5386                 52911418, 31232855, 17649997, 33304352
   5387 #endif
   5388             }},
   5389         },
   5390         {
   5391             {{
   5392 #if defined(BORINGSSL_CURVE25519_64BIT)
   5393                 1299268198601632, 2047148477845621, 2165648650132450,
   5394                 1612539282026145, 514197911628890
   5395 #else
   5396                 57807776, 19360604, 30609525, 30504889, 41933794, 32270679,
   5397                 51867297, 24028707, 64875610, 7662145
   5398 #endif
   5399             }},
   5400             {{
   5401 #if defined(BORINGSSL_CURVE25519_64BIT)
   5402                 118352772338543, 1067608711804704, 1434796676193498,
   5403                 1683240170548391, 230866769907437
   5404 #else
   5405                 49550191, 1763593, 33994528, 15908609, 37067994, 21380136,
   5406                 7335079, 25082233, 63934189, 3440182
   5407 #endif
   5408             }},
   5409             {{
   5410 #if defined(BORINGSSL_CURVE25519_64BIT)
   5411                 1850689576796636, 1601590730430274, 1139674615958142,
   5412                 1954384401440257, 76039205311
   5413 #else
   5414                 47219164, 27577423, 42997570, 23865561, 10799742, 16982475,
   5415                 40449, 29122597, 4862399, 1133
   5416 #endif
   5417             }},
   5418         },
   5419         {
   5420             {{
   5421 #if defined(BORINGSSL_CURVE25519_64BIT)
   5422                 1723387471374172, 997301467038410, 533927635123657,
   5423                 20928644693965, 1756575222802513
   5424 #else
   5425                 34252636, 25680474, 61686474, 14860949, 50789833, 7956141,
   5426                 7258061, 311861, 36513873, 26175010
   5427 #endif
   5428             }},
   5429             {{
   5430 #if defined(BORINGSSL_CURVE25519_64BIT)
   5431                 2146711623855116, 503278928021499, 625853062251406,
   5432                 1109121378393107, 1033853809911861
   5433 #else
   5434                 63335436, 31988495, 28985339, 7499440, 24445838, 9325937,
   5435                 29727763, 16527196, 18278453, 15405622
   5436 #endif
   5437             }},
   5438             {{
   5439 #if defined(BORINGSSL_CURVE25519_64BIT)
   5440                 571005965509422, 2005213373292546, 1016697270349626,
   5441                 56607856974274, 914438579435146
   5442 #else
   5443                 62726958, 8508651, 47210498, 29880007, 61124410, 15149969,
   5444                 53795266, 843522, 45233802, 13626196
   5445 #endif
   5446             }},
   5447         },
   5448         {
   5449             {{
   5450 #if defined(BORINGSSL_CURVE25519_64BIT)
   5451                 1346698876211176, 2076651707527589, 1084761571110205,
   5452                 265334478828406, 1068954492309671
   5453 #else
   5454                 2281448, 20067377, 56193445, 30944521, 1879357, 16164207,
   5455                 56324982, 3953791, 13340839, 15928663
   5456 #endif
   5457             }},
   5458             {{
   5459 #if defined(BORINGSSL_CURVE25519_64BIT)
   5460                 1769967932677654, 1695893319756416, 1151863389675920,
   5461                 1781042784397689, 400287774418285
   5462 #else
   5463                 31727126, 26374577, 48671360, 25270779, 2875792, 17164102,
   5464                 41838969, 26539605, 43656557, 5964752
   5465 #endif
   5466             }},
   5467             {{
   5468 #if defined(BORINGSSL_CURVE25519_64BIT)
   5469                 1851867764003121, 403841933237558, 820549523771987,
   5470                 761292590207581, 1743735048551143
   5471 #else
   5472                 4100401, 27594980, 49929526, 6017713, 48403027, 12227140,
   5473                 40424029, 11344143, 2538215, 25983677
   5474 #endif
   5475             }},
   5476         },
   5477         {
   5478             {{
   5479 #if defined(BORINGSSL_CURVE25519_64BIT)
   5480                 410915148140008, 2107072311871739, 1004367461876503,
   5481                 99684895396761, 1180818713503224
   5482 #else
   5483                 57675240, 6123112, 11159803, 31397824, 30016279, 14966241,
   5484                 46633881, 1485420, 66479608, 17595569
   5485 #endif
   5486             }},
   5487             {{
   5488 #if defined(BORINGSSL_CURVE25519_64BIT)
   5489                 285945406881439, 648174397347453, 1098403762631981,
   5490                 1366547441102991, 1505876883139217
   5491 #else
   5492                 40304287, 4260918, 11851389, 9658551, 35091757, 16367491,
   5493                 46903439, 20363143, 11659921, 22439314
   5494 #endif
   5495             }},
   5496             {{
   5497 #if defined(BORINGSSL_CURVE25519_64BIT)
   5498                 672095903120153, 1675918957959872, 636236529315028,
   5499                 1569297300327696, 2164144194785875
   5500 #else
   5501                 26180377, 10015009, 36264640, 24973138, 5418196, 9480663,
   5502                 2231568, 23384352, 33100371, 32248261
   5503 #endif
   5504             }},
   5505         },
   5506         {
   5507             {{
   5508 #if defined(BORINGSSL_CURVE25519_64BIT)
   5509                 1902708175321798, 1035343530915438, 1178560808893263,
   5510                 301095684058146, 1280977479761118
   5511 #else
   5512                 15121094, 28352561, 56718958, 15427820, 39598927, 17561924,
   5513                 21670946, 4486675, 61177054, 19088051
   5514 #endif
   5515             }},
   5516             {{
   5517 #if defined(BORINGSSL_CURVE25519_64BIT)
   5518                 1615357281742403, 404257611616381, 2160201349780978,
   5519                 1160947379188955, 1578038619549541
   5520 #else
   5521                 16166467, 24070699, 56004733, 6023907, 35182066, 32189508,
   5522                 2340059, 17299464, 56373093, 23514607
   5523 #endif
   5524             }},
   5525             {{
   5526 #if defined(BORINGSSL_CURVE25519_64BIT)
   5527                 2013087639791217, 822734930507457, 1785668418619014,
   5528                 1668650702946164, 389450875221715
   5529 #else
   5530                 28042865, 29997343, 54982337, 12259705, 63391366, 26608532,
   5531                 6766452, 24864833, 18036435, 5803270
   5532 #endif
   5533             }},
   5534         },
   5535     },
   5536     {
   5537         {
   5538             {{
   5539 #if defined(BORINGSSL_CURVE25519_64BIT)
   5540                 453918449698368, 106406819929001, 2072540975937135,
   5541                 308588860670238, 1304394580755385
   5542 #else
   5543                 66291264, 6763911, 11803561, 1585585, 10958447, 30883267,
   5544                 23855390, 4598332, 60949433, 19436993
   5545 #endif
   5546             }},
   5547             {{
   5548 #if defined(BORINGSSL_CURVE25519_64BIT)
   5549                 1295082798350326, 2091844511495996, 1851348972587817,
   5550                 3375039684596, 789440738712837
   5551 #else
   5552                 36077558, 19298237, 17332028, 31170912, 31312681, 27587249,
   5553                 696308, 50292, 47013125, 11763583
   5554 #endif
   5555             }},
   5556             {{
   5557 #if defined(BORINGSSL_CURVE25519_64BIT)
   5558                 2083069137186154, 848523102004566, 993982213589257,
   5559                 1405313299916317, 1532824818698468
   5560 #else
   5561                 66514282, 31040148, 34874710, 12643979, 12650761, 14811489,
   5562                 665117, 20940800, 47335652, 22840869
   5563 #endif
   5564             }},
   5565         },
   5566         {
   5567             {{
   5568 #if defined(BORINGSSL_CURVE25519_64BIT)
   5569                 1495961298852430, 1397203457344779, 1774950217066942,
   5570                 139302743555696, 66603584342787
   5571 #else
   5572                 30464590, 22291560, 62981387, 20819953, 19835326, 26448819,
   5573                 42712688, 2075772, 50088707, 992470
   5574 #endif
   5575             }},
   5576             {{
   5577 #if defined(BORINGSSL_CURVE25519_64BIT)
   5578                 1782411379088302, 1096724939964781, 27593390721418,
   5579                 542241850291353, 1540337798439873
   5580 #else
   5581                 18357166, 26559999, 7766381, 16342475, 37783946, 411173,
   5582                 14578841, 8080033, 55534529, 22952821
   5583 #endif
   5584             }},
   5585             {{
   5586 #if defined(BORINGSSL_CURVE25519_64BIT)
   5587                 693543956581437, 171507720360750, 1557908942697227,
   5588                 1074697073443438, 1104093109037196
   5589 #else
   5590                 19598397, 10334610, 12555054, 2555664, 18821899, 23214652,
   5591                 21873262, 16014234, 26224780, 16452269
   5592 #endif
   5593             }},
   5594         },
   5595         {
   5596             {{
   5597 #if defined(BORINGSSL_CURVE25519_64BIT)
   5598                 345288228393419, 1099643569747172, 134881908403743,
   5599                 1740551994106740, 248212179299770
   5600 #else
   5601                 36884939, 5145195, 5944548, 16385966, 3976735, 2009897,
   5602                 55731060, 25936245, 46575034, 3698649
   5603 #endif
   5604             }},
   5605             {{
   5606 #if defined(BORINGSSL_CURVE25519_64BIT)
   5607                 231429562203065, 1526290236421172, 2021375064026423,
   5608                 1520954495658041, 806337791525116
   5609 #else
   5610                 14187449, 3448569, 56472628, 22743496, 44444983, 30120835,
   5611                 7268409, 22663988, 27394300, 12015369
   5612 #endif
   5613             }},
   5614             {{
   5615 #if defined(BORINGSSL_CURVE25519_64BIT)
   5616                 1079623667189886, 872403650198613, 766894200588288,
   5617                 2163700860774109, 2023464507911816
   5618 #else
   5619                 19695742, 16087646, 28032085, 12999827, 6817792, 11427614,
   5620                 20244189, 32241655, 53849736, 30151970
   5621 #endif
   5622             }},
   5623         },
   5624         {
   5625             {{
   5626 #if defined(BORINGSSL_CURVE25519_64BIT)
   5627                 854645372543796, 1936406001954827, 151460662541253,
   5628                 825325739271555, 1554306377287556
   5629 #else
   5630                 30860084, 12735208, 65220619, 28854697, 50133957, 2256939,
   5631                 58942851, 12298311, 58558340, 23160969
   5632 #endif
   5633             }},
   5634             {{
   5635 #if defined(BORINGSSL_CURVE25519_64BIT)
   5636                 1497138821904622, 1044820250515590, 1742593886423484,
   5637                 1237204112746837, 849047450816987
   5638 #else
   5639                 61389038, 22309106, 65198214, 15569034, 26642876, 25966672,
   5640                 61319509, 18435777, 62132699, 12651792
   5641 #endif
   5642             }},
   5643             {{
   5644 #if defined(BORINGSSL_CURVE25519_64BIT)
   5645                 667962773375330, 1897271816877105, 1399712621683474,
   5646                 1143302161683099, 2081798441209593
   5647 #else
   5648                 64260450, 9953420, 11531313, 28271553, 26895122, 20857343,
   5649                 53990043, 17036529, 9768697, 31021214
   5650 #endif
   5651             }},
   5652         },
   5653         {
   5654             {{
   5655 #if defined(BORINGSSL_CURVE25519_64BIT)
   5656                 127147851567005, 1936114012888110, 1704424366552046,
   5657                 856674880716312, 716603621335359
   5658 #else
   5659                 42389405, 1894650, 66821166, 28850346, 15348718, 25397902,
   5660                 32767512, 12765450, 4940095, 10678226
   5661 #endif
   5662             }},
   5663             {{
   5664 #if defined(BORINGSSL_CURVE25519_64BIT)
   5665                 1072409664800960, 2146937497077528, 1508780108920651,
   5666                 935767602384853, 1112800433544068
   5667 #else
   5668                 18860224, 15980149, 48121624, 31991861, 40875851, 22482575,
   5669                 59264981, 13944023, 42736516, 16582018
   5670 #endif
   5671             }},
   5672             {{
   5673 #if defined(BORINGSSL_CURVE25519_64BIT)
   5674                 333549023751292, 280219272863308, 2104176666454852,
   5675                 1036466864875785, 536135186520207
   5676 #else
   5677                 51604604, 4970267, 37215820, 4175592, 46115652, 31354675,
   5678                 55404809, 15444559, 56105103, 7989036
   5679 #endif
   5680             }},
   5681         },
   5682         {
   5683             {{
   5684 #if defined(BORINGSSL_CURVE25519_64BIT)
   5685                 373666279883137, 146457241530109, 304116267127857,
   5686                 416088749147715, 1258577131183391
   5687 #else
   5688                 31490433, 5568061, 64696061, 2182382, 34772017, 4531685,
   5689                 35030595, 6200205, 47422751, 18754260
   5690 #endif
   5691             }},
   5692             {{
   5693 #if defined(BORINGSSL_CURVE25519_64BIT)
   5694                 1186115062588401, 2251609796968486, 1098944457878953,
   5695                 1153112761201374, 1791625503417267
   5696 #else
   5697                 49800177, 17674491, 35586086, 33551600, 34221481, 16375548,
   5698                 8680158, 17182719, 28550067, 26697300
   5699 #endif
   5700             }},
   5701             {{
   5702 #if defined(BORINGSSL_CURVE25519_64BIT)
   5703                 1870078460219737, 2129630962183380, 852283639691142,
   5704                 292865602592851, 401904317342226
   5705 #else
   5706                 38981977, 27866340, 16837844, 31733974, 60258182, 12700015,
   5707                 37068883, 4364037, 1155602, 5988841
   5708 #endif
   5709             }},
   5710         },
   5711         {
   5712             {{
   5713 #if defined(BORINGSSL_CURVE25519_64BIT)
   5714                 1361070124828035, 815664541425524, 1026798897364671,
   5715                 1951790935390647, 555874891834790
   5716 #else
   5717                 21890435, 20281525, 54484852, 12154348, 59276991, 15300495,
   5718                 23148983, 29083951, 24618406, 8283181
   5719 #endif
   5720             }},
   5721             {{
   5722 #if defined(BORINGSSL_CURVE25519_64BIT)
   5723                 1546301003424277, 459094500062839, 1097668518375311,
   5724                 1780297770129643, 720763293687608
   5725 #else
   5726                 33972757, 23041680, 9975415, 6841041, 35549071, 16356535,
   5727                 3070187, 26528504, 1466168, 10740210
   5728 #endif
   5729             }},
   5730             {{
   5731 #if defined(BORINGSSL_CURVE25519_64BIT)
   5732                 1212405311403990, 1536693382542438, 61028431067459,
   5733                 1863929423417129, 1223219538638038
   5734 #else
   5735                 65599446, 18066246, 53605478, 22898515, 32799043, 909394,
   5736                 53169961, 27774712, 34944214, 18227391
   5737 #endif
   5738             }},
   5739         },
   5740         {
   5741             {{
   5742 #if defined(BORINGSSL_CURVE25519_64BIT)
   5743                 1294303766540260, 1183557465955093, 882271357233093,
   5744                 63854569425375, 2213283684565087
   5745 #else
   5746                 3960804, 19286629, 39082773, 17636380, 47704005, 13146867,
   5747                 15567327, 951507, 63848543, 32980496
   5748 #endif
   5749             }},
   5750             {{
   5751 #if defined(BORINGSSL_CURVE25519_64BIT)
   5752                 339050984211414, 601386726509773, 413735232134068,
   5753                 966191255137228, 1839475899458159
   5754 #else
   5755                 24740822, 5052253, 37014733, 8961360, 25877428, 6165135,
   5756                 42740684, 14397371, 59728495, 27410326
   5757 #endif
   5758             }},
   5759             {{
   5760 #if defined(BORINGSSL_CURVE25519_64BIT)
   5761                 235605972169408, 2174055643032978, 1538335001838863,
   5762                 1281866796917192, 1815940222628465
   5763 #else
   5764                 38220480, 3510802, 39005586, 32395953, 55870735, 22922977,
   5765                 51667400, 19101303, 65483377, 27059617
   5766 #endif
   5767             }},
   5768         },
   5769     },
   5770     {
   5771         {
   5772             {{
   5773 #if defined(BORINGSSL_CURVE25519_64BIT)
   5774                 1632352921721536, 1833328609514701, 2092779091951987,
   5775                 1923956201873226, 2210068022482919
   5776 #else
   5777                 793280, 24323954, 8836301, 27318725, 39747955, 31184838,
   5778                 33152842, 28669181, 57202663, 32932579
   5779 #endif
   5780             }},
   5781             {{
   5782 #if defined(BORINGSSL_CURVE25519_64BIT)
   5783                 35271216625062, 1712350667021807, 983664255668860,
   5784                 98571260373038, 1232645608559836
   5785 #else
   5786                 5666214, 525582, 20782575, 25516013, 42570364, 14657739,
   5787                 16099374, 1468826, 60937436, 18367850
   5788 #endif
   5789             }},
   5790             {{
   5791 #if defined(BORINGSSL_CURVE25519_64BIT)
   5792                 1998172393429622, 1798947921427073, 784387737563581,
   5793                 1589352214827263, 1589861734168180
   5794 #else
   5795                 62249590, 29775088, 64191105, 26806412, 7778749, 11688288,
   5796                 36704511, 23683193, 65549940, 23690785
   5797 #endif
   5798             }},
   5799         },
   5800         {
   5801             {{
   5802 #if defined(BORINGSSL_CURVE25519_64BIT)
   5803                 1733739258725305, 31715717059538, 201969945218860,
   5804                 992093044556990, 1194308773174556
   5805 #else
   5806                 10896313, 25834728, 824274, 472601, 47648556, 3009586, 25248958,
   5807                 14783338, 36527388, 17796587
   5808 #endif
   5809             }},
   5810             {{
   5811 #if defined(BORINGSSL_CURVE25519_64BIT)
   5812                 846415389605137, 746163495539180, 829658752826080,
   5813                 592067705956946, 957242537821393
   5814 #else
   5815                 10566929, 12612572, 35164652, 11118702, 54475488, 12362878,
   5816                 21752402, 8822496, 24003793, 14264025
   5817 #endif
   5818             }},
   5819             {{
   5820 #if defined(BORINGSSL_CURVE25519_64BIT)
   5821                 1758148849754419, 619249044817679, 168089007997045,
   5822                 1371497636330523, 1867101418880350
   5823 #else
   5824                 27713843, 26198459, 56100623, 9227529, 27050101, 2504721,
   5825                 23886875, 20436907, 13958494, 27821979
   5826 #endif
   5827             }},
   5828         },
   5829         {
   5830             {{
   5831 #if defined(BORINGSSL_CURVE25519_64BIT)
   5832                 326633984209635, 261759506071016, 1700682323676193,
   5833                 1577907266349064, 1217647663383016
   5834 #else
   5835                 43627235, 4867225, 39861736, 3900520, 29838369, 25342141,
   5836                 35219464, 23512650, 7340520, 18144364
   5837 #endif
   5838             }},
   5839             {{
   5840 #if defined(BORINGSSL_CURVE25519_64BIT)
   5841                 1714182387328607, 1477856482074168, 574895689942184,
   5842                 2159118410227270, 1555532449716575
   5843 #else
   5844                 4646495, 25543308, 44342840, 22021777, 23184552, 8566613,
   5845                 31366726, 32173371, 52042079, 23179239
   5846 #endif
   5847             }},
   5848             {{
   5849 #if defined(BORINGSSL_CURVE25519_64BIT)
   5850                 853828206885131, 998498946036955, 1835887550391235,
   5851                 207627336608048, 258363815956050
   5852 #else
   5853                 49838347, 12723031, 50115803, 14878793, 21619651, 27356856,
   5854                 27584816, 3093888, 58265170, 3849920
   5855 #endif
   5856             }},
   5857         },
   5858         {
   5859             {{
   5860 #if defined(BORINGSSL_CURVE25519_64BIT)
   5861                 141141474651677, 1236728744905256, 643101419899887,
   5862                 1646615130509173, 1208239602291765
   5863 #else
   5864                 58043933, 2103171, 25561640, 18428694, 61869039, 9582957,
   5865                 32477045, 24536477, 5002293, 18004173
   5866 #endif
   5867             }},
   5868             {{
   5869 #if defined(BORINGSSL_CURVE25519_64BIT)
   5870                 1501663228068911, 1354879465566912, 1444432675498247,
   5871                 897812463852601, 855062598754348
   5872 #else
   5873                 55051311, 22376525, 21115584, 20189277, 8808711, 21523724,
   5874                 16489529, 13378448, 41263148, 12741425
   5875 #endif
   5876             }},
   5877             {{
   5878 #if defined(BORINGSSL_CURVE25519_64BIT)
   5879                 714380763546606, 1032824444965790, 1774073483745338,
   5880                 1063840874947367, 1738680636537158
   5881 #else
   5882                 61162478, 10645102, 36197278, 15390283, 63821882, 26435754,
   5883                 24306471, 15852464, 28834118, 25908360
   5884 #endif
   5885             }},
   5886         },
   5887         {
   5888             {{
   5889 #if defined(BORINGSSL_CURVE25519_64BIT)
   5890                 1640635546696252, 633168953192112, 2212651044092396,
   5891                 30590958583852, 368515260889378
   5892 #else
   5893                 49773116, 24447374, 42577584, 9434952, 58636780, 32971069,
   5894                 54018092, 455840, 20461858, 5491305
   5895 #endif
   5896             }},
   5897             {{
   5898 #if defined(BORINGSSL_CURVE25519_64BIT)
   5899                 1171650314802029, 1567085444565577, 1453660792008405,
   5900                 757914533009261, 1619511342778196
   5901 #else
   5902                 13669229, 17458950, 54626889, 23351392, 52539093, 21661233,
   5903                 42112877, 11293806, 38520660, 24132599
   5904 #endif
   5905             }},
   5906             {{
   5907 #if defined(BORINGSSL_CURVE25519_64BIT)
   5908                 420958967093237, 971103481109486, 2169549185607107,
   5909                 1301191633558497, 1661514101014240
   5910 #else
   5911                 28497909, 6272777, 34085870, 14470569, 8906179, 32328802,
   5912                 18504673, 19389266, 29867744, 24758489
   5913 #endif
   5914             }},
   5915         },
   5916         {
   5917             {{
   5918 #if defined(BORINGSSL_CURVE25519_64BIT)
   5919                 907123651818302, 1332556122804146, 1824055253424487,
   5920                 1367614217442959, 1982558335973172
   5921 #else
   5922                 50901822, 13517195, 39309234, 19856633, 24009063, 27180541,
   5923                 60741263, 20379039, 22853428, 29542421
   5924 #endif
   5925             }},
   5926             {{
   5927 #if defined(BORINGSSL_CURVE25519_64BIT)
   5928                 1121533090144639, 1021251337022187, 110469995947421,
   5929                 1511059774758394, 2110035908131662
   5930 #else
   5931                 24191359, 16712145, 53177067, 15217830, 14542237, 1646131,
   5932                 18603514, 22516545, 12876622, 31441985
   5933 #endif
   5934             }},
   5935             {{
   5936 #if defined(BORINGSSL_CURVE25519_64BIT)
   5937                 303213233384524, 2061932261128138, 352862124777736,
   5938                 40828818670255, 249879468482660
   5939 #else
   5940                 17902668, 4518229, 66697162, 30725184, 26878216, 5258055,
   5941                 54248111, 608396, 16031844, 3723494
   5942 #endif
   5943             }},
   5944         },
   5945         {
   5946             {{
   5947 #if defined(BORINGSSL_CURVE25519_64BIT)
   5948                 856559257852200, 508517664949010, 1378193767894916,
   5949                 1723459126947129, 1962275756614521
   5950 #else
   5951                 38476072, 12763727, 46662418, 7577503, 33001348, 20536687,
   5952                 17558841, 25681542, 23896953, 29240187
   5953 #endif
   5954             }},
   5955             {{
   5956 #if defined(BORINGSSL_CURVE25519_64BIT)
   5957                 1445691340537320, 40614383122127, 402104303144865,
   5958                 485134269878232, 1659439323587426
   5959 #else
   5960                 47103464, 21542479, 31520463, 605201, 2543521, 5991821,
   5961                 64163800, 7229063, 57189218, 24727572
   5962 #endif
   5963             }},
   5964             {{
   5965 #if defined(BORINGSSL_CURVE25519_64BIT)
   5966                 20057458979482, 1183363722525800, 2140003847237215,
   5967                 2053873950687614, 2112017736174909
   5968 #else
   5969                 28816026, 298879, 38943848, 17633493, 19000927, 31888542,
   5970                 54428030, 30605106, 49057085, 31471516
   5971 #endif
   5972             }},
   5973         },
   5974         {
   5975             {{
   5976 #if defined(BORINGSSL_CURVE25519_64BIT)
   5977                 2228654250927986, 1483591363415267, 1368661293910956,
   5978                 1076511285177291, 526650682059608
   5979 #else
   5980                 16000882, 33209536, 3493091, 22107234, 37604268, 20394642,
   5981                 12577739, 16041268, 47393624, 7847706
   5982 #endif
   5983             }},
   5984             {{
   5985 #if defined(BORINGSSL_CURVE25519_64BIT)
   5986                 709481497028540, 531682216165724, 316963769431931,
   5987                 1814315888453765, 258560242424104
   5988 #else
   5989                 10151868, 10572098, 27312476, 7922682, 14825339, 4723128,
   5990                 34252933, 27035413, 57088296, 3852847
   5991 #endif
   5992             }},
   5993             {{
   5994 #if defined(BORINGSSL_CURVE25519_64BIT)
   5995                 1053447823660455, 1955135194248683, 1010900954918985,
   5996                 1182614026976701, 1240051576966610
   5997 #else
   5998                 55678375, 15697595, 45987307, 29133784, 5386313, 15063598,
   5999                 16514493, 17622322, 29330898, 18478208
   6000 #endif
   6001             }},
   6002         },
   6003     },
   6004     {
   6005         {
   6006             {{
   6007 #if defined(BORINGSSL_CURVE25519_64BIT)
   6008                 1957943897155497, 1788667368028035, 137692910029106,
   6009                 1039519607062, 826404763313028
   6010 #else
   6011                 41609129, 29175637, 51885955, 26653220, 16615730, 2051784,
   6012                 3303702, 15490, 39560068, 12314390
   6013 #endif
   6014             }},
   6015             {{
   6016 #if defined(BORINGSSL_CURVE25519_64BIT)
   6017                 1848942433095597, 1582009882530495, 1849292741020143,
   6018                 1068498323302788, 2001402229799484
   6019 #else
   6020                 15683501, 27551389, 18109119, 23573784, 15337967, 27556609,
   6021                 50391428, 15921865, 16103996, 29823217
   6022 #endif
   6023             }},
   6024             {{
   6025 #if defined(BORINGSSL_CURVE25519_64BIT)
   6026                 1528282417624269, 2142492439828191, 2179662545816034,
   6027                 362568973150328, 1591374675250271
   6028 #else
   6029                 43939021, 22773182, 13588191, 31925625, 63310306, 32479502,
   6030                 47835256, 5402698, 37293151, 23713330
   6031 #endif
   6032             }},
   6033         },
   6034         {
   6035             {{
   6036 #if defined(BORINGSSL_CURVE25519_64BIT)
   6037                 160026679434388, 232341189218716, 2149181472355545,
   6038                 598041771119831, 183859001910173
   6039 #else
   6040                 23190676, 2384583, 34394524, 3462153, 37205209, 32025299,
   6041                 55842007, 8911516, 41903005, 2739712
   6042 #endif
   6043             }},
   6044             {{
   6045 #if defined(BORINGSSL_CURVE25519_64BIT)
   6046                 2013278155187349, 662660471354454, 793981225706267,
   6047                 411706605985744, 804490933124791
   6048 #else
   6049                 21374101, 30000182, 33584214, 9874410, 15377179, 11831242,
   6050                 33578960, 6134906, 4931255, 11987849
   6051 #endif
   6052             }},
   6053             {{
   6054 #if defined(BORINGSSL_CURVE25519_64BIT)
   6055                 2051892037280204, 488391251096321, 2230187337030708,
   6056                 930221970662692, 679002758255210
   6057 #else
   6058                 67101132, 30575573, 50885377, 7277596, 105524, 33232381,
   6059                 35628324, 13861387, 37032554, 10117929
   6060 #endif
   6061             }},
   6062         },
   6063         {
   6064             {{
   6065 #if defined(BORINGSSL_CURVE25519_64BIT)
   6066                 1530723630438670, 875873929577927, 341560134269988,
   6067                 449903119530753, 1055551308214179
   6068 #else
   6069                 37607694, 22809559, 40945095, 13051538, 41483300, 5089642,
   6070                 60783361, 6704078, 12890019, 15728940
   6071 #endif
   6072             }},
   6073             {{
   6074 #if defined(BORINGSSL_CURVE25519_64BIT)
   6075                 1461835919309432, 1955256480136428, 180866187813063,
   6076                 1551979252664528, 557743861963950
   6077 #else
   6078                 45136504, 21783052, 66157804, 29135591, 14704839, 2695116,
   6079                 903376, 23126293, 12885166, 8311031
   6080 #endif
   6081             }},
   6082             {{
   6083 #if defined(BORINGSSL_CURVE25519_64BIT)
   6084                 359179641731115, 1324915145732949, 902828372691474,
   6085                 294254275669987, 1887036027752957
   6086 #else
   6087                 49592363, 5352193, 10384213, 19742774, 7506450, 13453191,
   6088                 26423267, 4384730, 1888765, 28119028
   6089 #endif
   6090             }},
   6091         },
   6092         {
   6093             {{
   6094 #if defined(BORINGSSL_CURVE25519_64BIT)
   6095                 2043271609454323, 2038225437857464, 1317528426475850,
   6096                 1398989128982787, 2027639881006861
   6097 #else
   6098                 41291507, 30447119, 53614264, 30371925, 30896458, 19632703,
   6099                 34857219, 20846562, 47644429, 30214188
   6100 #endif
   6101             }},
   6102             {{
   6103 #if defined(BORINGSSL_CURVE25519_64BIT)
   6104                 2072902725256516, 312132452743412, 309930885642209,
   6105                 996244312618453, 1590501300352303
   6106 #else
   6107                 43500868, 30888657, 66582772, 4651135, 5765089, 4618330,
   6108                 6092245, 14845197, 17151279, 23700316
   6109 #endif
   6110             }},
   6111             {{
   6112 #if defined(BORINGSSL_CURVE25519_64BIT)
   6113                 1397254305160710, 695734355138021, 2233992044438756,
   6114                 1776180593969996, 1085588199351115
   6115 #else
   6116                 42278406, 20820711, 51942885, 10367249, 37577956, 33289075,
   6117                 22825804, 26467153, 50242379, 16176524
   6118 #endif
   6119             }},
   6120         },
   6121         {
   6122             {{
   6123 #if defined(BORINGSSL_CURVE25519_64BIT)
   6124                 440567051331029, 254894786356681, 493869224930222,
   6125                 1556322069683366, 1567456540319218
   6126 #else
   6127                 43525589, 6564960, 20063689, 3798228, 62368686, 7359224,
   6128                 2006182, 23191006, 38362610, 23356922
   6129 #endif
   6130             }},
   6131             {{
   6132 #if defined(BORINGSSL_CURVE25519_64BIT)
   6133                 1950722461391320, 1907845598854797, 1822757481635527,
   6134                 2121567704750244, 73811931471221
   6135 #else
   6136                 56482264, 29068029, 53788301, 28429114, 3432135, 27161203,
   6137                 23632036, 31613822, 32808309, 1099883
   6138 #endif
   6139             }},
   6140             {{
   6141 #if defined(BORINGSSL_CURVE25519_64BIT)
   6142                 387139307395758, 2058036430315676, 1220915649965325,
   6143                 1794832055328951, 1230009312169328
   6144 #else
   6145                 15030958, 5768825, 39657628, 30667132, 60681485, 18193060,
   6146                 51830967, 26745081, 2051440, 18328567
   6147 #endif
   6148             }},
   6149         },
   6150         {
   6151             {{
   6152 #if defined(BORINGSSL_CURVE25519_64BIT)
   6153                 1765973779329517, 659344059446977, 19821901606666,
   6154                 1301928341311214, 1116266004075885
   6155 #else
   6156                 63746541, 26315059, 7517889, 9824992, 23555850, 295369, 5148398,
   6157                 19400244, 44422509, 16633659
   6158 #endif
   6159             }},
   6160             {{
   6161 #if defined(BORINGSSL_CURVE25519_64BIT)
   6162                 1127572801181483, 1224743760571696, 1276219889847274,
   6163                 1529738721702581, 1589819666871853
   6164 #else
   6165                 4577067, 16802144, 13249840, 18250104, 19958762, 19017158,
   6166                 18559669, 22794883, 8402477, 23690159
   6167 #endif
   6168             }},
   6169             {{
   6170 #if defined(BORINGSSL_CURVE25519_64BIT)
   6171                 2181229378964934, 2190885205260020, 1511536077659137,
   6172                 1246504208580490, 668883326494241
   6173 #else
   6174                 38702534, 32502850, 40318708, 32646733, 49896449, 22523642,
   6175                 9453450, 18574360, 17983009, 9967138
   6176 #endif
   6177             }},
   6178         },
   6179         {
   6180             {{
   6181 #if defined(BORINGSSL_CURVE25519_64BIT)
   6182                 437866655573314, 669026411194768, 81896997980338,
   6183                 523874406393178, 245052060935236
   6184 #else
   6185                 41346370, 6524721, 26585488, 9969270, 24709298, 1220360,
   6186                 65430874, 7806336, 17507396, 3651560
   6187 #endif
   6188             }},
   6189             {{
   6190 #if defined(BORINGSSL_CURVE25519_64BIT)
   6191                 1975438052228868, 1071801519999806, 594652299224319,
   6192                 1877697652668809, 1489635366987285
   6193 #else
   6194                 56688388, 29436320, 14584638, 15971087, 51340543, 8861009,
   6195                 26556809, 27979875, 48555541, 22197296
   6196 #endif
   6197             }},
   6198             {{
   6199 #if defined(BORINGSSL_CURVE25519_64BIT)
   6200                 958592545673770, 233048016518599, 851568750216589,
   6201                 567703851596087, 1740300006094761
   6202 #else
   6203                 2839082, 14284142, 4029895, 3472686, 14402957, 12689363,
   6204                 40466743, 8459446, 61503401, 25932490
   6205 #endif
   6206             }},
   6207         },
   6208         {
   6209             {{
   6210 #if defined(BORINGSSL_CURVE25519_64BIT)
   6211                 2014540178270324, 192672779514432, 213877182641530,
   6212                 2194819933853411, 1716422829364835
   6213 #else
   6214                 62269556, 30018987, 9744960, 2871048, 25113978, 3187018,
   6215                 41998051, 32705365, 17258083, 25576693
   6216 #endif
   6217             }},
   6218             {{
   6219 #if defined(BORINGSSL_CURVE25519_64BIT)
   6220                 1540769606609725, 2148289943846077, 1597804156127445,
   6221                 1230603716683868, 815423458809453
   6222 #else
   6223                 18164541, 22959256, 49953981, 32012014, 19237077, 23809137,
   6224                 23357532, 18337424, 26908269, 12150756
   6225 #endif
   6226             }},
   6227             {{
   6228 #if defined(BORINGSSL_CURVE25519_64BIT)
   6229                 1738560251245018, 1779576754536888, 1783765347671392,
   6230                 1880170990446751, 1088225159617541
   6231 #else
   6232                 36843994, 25906566, 5112248, 26517760, 65609056, 26580174,
   6233                 43167, 28016731, 34806789, 16215818
   6234 #endif
   6235             }},
   6236         },
   6237     },
   6238     {
   6239         {
   6240             {{
   6241 #if defined(BORINGSSL_CURVE25519_64BIT)
   6242                 659303913929492, 1956447718227573, 1830568515922666,
   6243                 841069049744408, 1669607124206368
   6244 #else
   6245                 60209940, 9824393, 54804085, 29153342, 35711722, 27277596,
   6246                 32574488, 12532905, 59605792, 24879084
   6247 #endif
   6248             }},
   6249             {{
   6250 #if defined(BORINGSSL_CURVE25519_64BIT)
   6251                 1143465490433355, 1532194726196059, 1093276745494697,
   6252                 481041706116088, 2121405433561163
   6253 #else
   6254                 39765323, 17038963, 39957339, 22831480, 946345, 16291093,
   6255                 254968, 7168080, 21676107, 31611404
   6256 #endif
   6257             }},
   6258             {{
   6259 #if defined(BORINGSSL_CURVE25519_64BIT)
   6260                 1686424298744462, 1451806974487153, 266296068846582,
   6261                 1834686947542675, 1720762336132256
   6262 #else
   6263                 21260942, 25129680, 50276977, 21633609, 43430902, 3968120,
   6264                 63456915, 27338965, 63552672, 25641356
   6265 #endif
   6266             }},
   6267         },
   6268         {
   6269             {{
   6270 #if defined(BORINGSSL_CURVE25519_64BIT)
   6271                 889217026388959, 1043290623284660, 856125087551909,
   6272                 1669272323124636, 1603340330827879
   6273 #else
   6274                 16544735, 13250366, 50304436, 15546241, 62525861, 12757257,
   6275                 64646556, 24874095, 48201831, 23891632
   6276 #endif
   6277             }},
   6278             {{
   6279 #if defined(BORINGSSL_CURVE25519_64BIT)
   6280                 1206396181488998, 333158148435054, 1402633492821422,
   6281                 1120091191722026, 1945474114550509
   6282 #else
   6283                 64693606, 17976703, 18312302, 4964443, 51836334, 20900867,
   6284                 26820650, 16690659, 25459437, 28989823
   6285 #endif
   6286             }},
   6287             {{
   6288 #if defined(BORINGSSL_CURVE25519_64BIT)
   6289                 766720088232571, 1512222781191002, 1189719893490790,
   6290                 2091302129467914, 2141418006894941
   6291 #else
   6292                 41964155, 11425019, 28423002, 22533875, 60963942, 17728207,
   6293                 9142794, 31162830, 60676445, 31909614
   6294 #endif
   6295             }},
   6296         },
   6297         {
   6298             {{
   6299 #if defined(BORINGSSL_CURVE25519_64BIT)
   6300                 419663647306612, 1998875112167987, 1426599870253707,
   6301                 1154928355379510, 486538532138187
   6302 #else
   6303                 44004212, 6253475, 16964147, 29785560, 41994891, 21257994,
   6304                 39651638, 17209773, 6335691, 7249989
   6305 #endif
   6306             }},
   6307             {{
   6308 #if defined(BORINGSSL_CURVE25519_64BIT)
   6309                 938160078005954, 1421776319053174, 1941643234741774,
   6310                 180002183320818, 1414380336750546
   6311 #else
   6312                 36775618, 13979674, 7503222, 21186118, 55152142, 28932738,
   6313                 36836594, 2682241, 25993170, 21075909
   6314 #endif
   6315             }},
   6316             {{
   6317 #if defined(BORINGSSL_CURVE25519_64BIT)
   6318                 398001940109652, 1577721237663248, 1012748649830402,
   6319                 1540516006905144, 1011684812884559
   6320 #else
   6321                 4364628, 5930691, 32304656, 23509878, 59054082, 15091130,
   6322                 22857016, 22955477, 31820367, 15075278
   6323 #endif
   6324             }},
   6325         },
   6326         {
   6327             {{
   6328 #if defined(BORINGSSL_CURVE25519_64BIT)
   6329                 1653276489969630, 6081825167624, 1921777941170836,
   6330                 1604139841794531, 861211053640641
   6331 #else
   6332                 31879134, 24635739, 17258760, 90626, 59067028, 28636722,
   6333                 24162787, 23903546, 49138625, 12833044
   6334 #endif
   6335             }},
   6336             {{
   6337 #if defined(BORINGSSL_CURVE25519_64BIT)
   6338                 996661541407379, 1455877387952927, 744312806857277,
   6339                 139213896196746, 1000282908547789
   6340 #else
   6341                 19073683, 14851414, 42705695, 21694263, 7625277, 11091125,
   6342                 47489674, 2074448, 57694925, 14905376
   6343 #endif
   6344             }},
   6345             {{
   6346 #if defined(BORINGSSL_CURVE25519_64BIT)
   6347                 1450817495603008, 1476865707053229, 1030490562252053,
   6348                 620966950353376, 1744760161539058
   6349 #else
   6350                 24483648, 21618865, 64589997, 22007013, 65555733, 15355505,
   6351                 41826784, 9253128, 27628530, 25998952
   6352 #endif
   6353             }},
   6354         },
   6355         {
   6356             {{
   6357 #if defined(BORINGSSL_CURVE25519_64BIT)
   6358                 559728410002599, 37056661641185, 2038622963352006,
   6359                 1637244893271723, 1026565352238948
   6360 #else
   6361                 17597607, 8340603, 19355617, 552187, 26198470, 30377849,
   6362                 4593323, 24396850, 52997988, 15297015
   6363 #endif
   6364             }},
   6365             {{
   6366 #if defined(BORINGSSL_CURVE25519_64BIT)
   6367                 962165956135846, 1116599660248791, 182090178006815,
   6368                 1455605467021751, 196053588803284
   6369 #else
   6370                 510886, 14337390, 35323607, 16638631, 6328095, 2713355,
   6371                 46891447, 21690211, 8683220, 2921426
   6372 #endif
   6373             }},
   6374             {{
   6375 #if defined(BORINGSSL_CURVE25519_64BIT)
   6376                 796863823080135, 1897365583584155, 420466939481601,
   6377                 2165972651724672, 932177357788289
   6378 #else
   6379                 18606791, 11874196, 27155355, 28272950, 43077121, 6265445,
   6380                 41930624, 32275507, 4674689, 13890525
   6381 #endif
   6382             }},
   6383         },
   6384         {
   6385             {{
   6386 #if defined(BORINGSSL_CURVE25519_64BIT)
   6387                 877047233620632, 1375632631944375, 643773611882121,
   6388                 660022738847877, 19353932331831
   6389 #else
   6390                 13609624, 13069022, 39736503, 20498523, 24360585, 9592974,
   6391                 14977157, 9835105, 4389687, 288396
   6392 #endif
   6393             }},
   6394             {{
   6395 #if defined(BORINGSSL_CURVE25519_64BIT)
   6396                 2216943882299338, 394841323190322, 2222656898319671,
   6397                 558186553950529, 1077236877025190
   6398 #else
   6399                 9922506, 33035038, 13613106, 5883594, 48350519, 33120168,
   6400                 54804801, 8317627, 23388070, 16052080
   6401 #endif
   6402             }},
   6403             {{
   6404 #if defined(BORINGSSL_CURVE25519_64BIT)
   6405                 801118384953213, 1914330175515892, 574541023311511,
   6406                 1471123787903705, 1526158900256288
   6407 #else
   6408                 12719997, 11937594, 35138804, 28525742, 26900119, 8561328,
   6409                 46953177, 21921452, 52354592, 22741539
   6410 #endif
   6411             }},
   6412         },
   6413         {
   6414             {{
   6415 #if defined(BORINGSSL_CURVE25519_64BIT)
   6416                 949617889087234, 2207116611267331, 912920039141287,
   6417                 501158539198789, 62362560771472
   6418 #else
   6419                 15961858, 14150409, 26716931, 32888600, 44314535, 13603568,
   6420                 11829573, 7467844, 38286736, 929274
   6421 #endif
   6422             }},
   6423             {{
   6424 #if defined(BORINGSSL_CURVE25519_64BIT)
   6425                 1474518386765335, 1760793622169197, 1157399790472736,
   6426                 1622864308058898, 165428294422792
   6427 #else
   6428                 11038231, 21972036, 39798381, 26237869, 56610336, 17246600,
   6429                 43629330, 24182562, 45715720, 2465073
   6430 #endif
   6431             }},
   6432             {{
   6433 #if defined(BORINGSSL_CURVE25519_64BIT)
   6434                 1961673048027128, 102619413083113, 1051982726768458,
   6435                 1603657989805485, 1941613251499678
   6436 #else
   6437                 20017144, 29231206, 27915241, 1529148, 12396362, 15675764,
   6438                 13817261, 23896366, 2463390, 28932292
   6439 #endif
   6440             }},
   6441         },
   6442         {
   6443             {{
   6444 #if defined(BORINGSSL_CURVE25519_64BIT)
   6445                 1401939116319266, 335306339903072, 72046196085786,
   6446                 862423201496006, 850518754531384
   6447 #else
   6448                 50749986, 20890520, 55043680, 4996453, 65852442, 1073571,
   6449                 9583558, 12851107, 4003896, 12673717
   6450 #endif
   6451             }},
   6452             {{
   6453 #if defined(BORINGSSL_CURVE25519_64BIT)
   6454                 1234706593321979, 1083343891215917, 898273974314935,
   6455                 1640859118399498, 157578398571149
   6456 #else
   6457                 65377275, 18398561, 63845933, 16143081, 19294135, 13385325,
   6458                 14741514, 24450706, 7903885, 2348101
   6459 #endif
   6460             }},
   6461             {{
   6462 #if defined(BORINGSSL_CURVE25519_64BIT)
   6463                 1143483057726416, 1992614991758919, 674268662140796,
   6464                 1773370048077526, 674318359920189
   6465 #else
   6466                 24536016, 17039225, 12715591, 29692277, 1511292, 10047386,
   6467                 63266518, 26425272, 38731325, 10048126
   6468 #endif
   6469             }},
   6470         },
   6471     },
   6472     {
   6473         {
   6474             {{
   6475 #if defined(BORINGSSL_CURVE25519_64BIT)
   6476                 1835401379538542, 173900035308392, 818247630716732,
   6477                 1762100412152786, 1021506399448291
   6478 #else
   6479                 54486638, 27349611, 30718824, 2591312, 56491836, 12192839,
   6480                 18873298, 26257342, 34811107, 15221631
   6481 #endif
   6482             }},
   6483             {{
   6484 #if defined(BORINGSSL_CURVE25519_64BIT)
   6485                 1506632088156630, 2127481795522179, 513812919490255,
   6486                 140643715928370, 442476620300318
   6487 #else
   6488                 40630742, 22450567, 11546243, 31701949, 9180879, 7656409,
   6489                 45764914, 2095754, 29769758, 6593415
   6490 #endif
   6491             }},
   6492             {{
   6493 #if defined(BORINGSSL_CURVE25519_64BIT)
   6494                 2056683376856736, 219094741662735, 2193541883188309,
   6495                 1841182310235800, 556477468664293
   6496 #else
   6497                 35114656, 30646970, 4176911, 3264766, 12538965, 32686321,
   6498                 26312344, 27435754, 30958053, 8292160
   6499 #endif
   6500             }},
   6501         },
   6502         {
   6503             {{
   6504 #if defined(BORINGSSL_CURVE25519_64BIT)
   6505                 1315019427910827, 1049075855992603, 2066573052986543,
   6506                 266904467185534, 2040482348591520
   6507 #else
   6508                 31429803, 19595316, 29173531, 15632448, 12174511, 30794338,
   6509                 32808830, 3977186, 26143136, 30405556
   6510 #endif
   6511             }},
   6512             {{
   6513 #if defined(BORINGSSL_CURVE25519_64BIT)
   6514                 94096246544434, 922482381166992, 24517828745563,
   6515                 2139430508542503, 2097139044231004
   6516 #else
   6517                 22648882, 1402143, 44308880, 13746058, 7936347, 365344,
   6518                 58440231, 31879998, 63350620, 31249806
   6519 #endif
   6520             }},
   6521             {{
   6522 #if defined(BORINGSSL_CURVE25519_64BIT)
   6523                 537697207950515, 1399352016347350, 1563663552106345,
   6524                 2148749520888918, 549922092988516
   6525 #else
   6526                 51616947, 8012312, 64594134, 20851969, 43143017, 23300402,
   6527                 65496150, 32018862, 50444388, 8194477
   6528 #endif
   6529             }},
   6530         },
   6531         {
   6532             {{
   6533 #if defined(BORINGSSL_CURVE25519_64BIT)
   6534                 1747985413252434, 680511052635695, 1809559829982725,
   6535                 594274250930054, 201673170745982
   6536 #else
   6537                 27338066, 26047012, 59694639, 10140404, 48082437, 26964542,
   6538                 27277190, 8855376, 28572286, 3005164
   6539 #endif
   6540             }},
   6541             {{
   6542 #if defined(BORINGSSL_CURVE25519_64BIT)
   6543                 323583936109569, 1973572998577657, 1192219029966558,
   6544                 79354804385273, 1374043025560347
   6545 #else
   6546                 26287105, 4821776, 25476601, 29408529, 63344350, 17765447,
   6547                 49100281, 1182478, 41014043, 20474836
   6548 #endif
   6549             }},
   6550             {{
   6551 #if defined(BORINGSSL_CURVE25519_64BIT)
   6552                 213277331329947, 416202017849623, 1950535221091783,
   6553                 1313441578103244, 2171386783823658
   6554 #else
   6555                 59937691, 3178079, 23970071, 6201893, 49913287, 29065239,
   6556                 45232588, 19571804, 32208682, 32356184
   6557 #endif
   6558             }},
   6559         },
   6560         {
   6561             {{
   6562 #if defined(BORINGSSL_CURVE25519_64BIT)
   6563                 189088804229831, 993969372859110, 895870121536987,
   6564                 1547301535298256, 1477373024911350
   6565 #else
   6566                 50451143, 2817642, 56822502, 14811297, 6024667, 13349505,
   6567                 39793360, 23056589, 39436278, 22014573
   6568 #endif
   6569             }},
   6570             {{
   6571 #if defined(BORINGSSL_CURVE25519_64BIT)
   6572                 1620578418245010, 541035331188469, 2235785724453865,
   6573                 2154865809088198, 1974627268751826
   6574 #else
   6575                 15941010, 24148500, 45741813, 8062054, 31876073, 33315803,
   6576                 51830470, 32110002, 15397330, 29424239
   6577 #endif
   6578             }},
   6579             {{
   6580 #if defined(BORINGSSL_CURVE25519_64BIT)
   6581                 1346805451740245, 1350981335690626, 942744349501813,
   6582                 2155094562545502, 1012483751693409
   6583 #else
   6584                 8934485, 20068965, 43822466, 20131190, 34662773, 14047985,
   6585                 31170398, 32113411, 39603297, 15087183
   6586 #endif
   6587             }},
   6588         },
   6589         {
   6590             {{
   6591 #if defined(BORINGSSL_CURVE25519_64BIT)
   6592                 2107080134091762, 1132567062788208, 1824935377687210,
   6593                 769194804343737, 1857941799971888
   6594 #else
   6595                 48751602, 31397940, 24524912, 16876564, 15520426, 27193656,
   6596                 51606457, 11461895, 16788528, 27685490
   6597 #endif
   6598             }},
   6599             {{
   6600 #if defined(BORINGSSL_CURVE25519_64BIT)
   6601                 1074666112436467, 249279386739593, 1174337926625354,
   6602                 1559013532006480, 1472287775519121
   6603 #else
   6604                 65161459, 16013772, 21750665, 3714552, 49707082, 17498998,
   6605                 63338576, 23231111, 31322513, 21938797
   6606 #endif
   6607             }},
   6608             {{
   6609 #if defined(BORINGSSL_CURVE25519_64BIT)
   6610                 1872620123779532, 1892932666768992, 1921559078394978,
   6611                 1270573311796160, 1438913646755037
   6612 #else
   6613                 21426636, 27904214, 53460576, 28206894, 38296674, 28633461,
   6614                 48833472, 18933017, 13040861, 21441484
   6615 #endif
   6616             }},
   6617         },
   6618         {
   6619             {{
   6620 #if defined(BORINGSSL_CURVE25519_64BIT)
   6621                 837390187648199, 1012253300223599, 989780015893987,
   6622                 1351393287739814, 328627746545550
   6623 #else
   6624                 11293895, 12478086, 39972463, 15083749, 37801443, 14748871,
   6625                 14555558, 20137329, 1613710, 4896935
   6626 #endif
   6627             }},
   6628             {{
   6629 #if defined(BORINGSSL_CURVE25519_64BIT)
   6630                 1028328827183114, 1711043289969857, 1350832470374933,
   6631                 1923164689604327, 1495656368846911
   6632 #else
   6633                 41213962, 15323293, 58619073, 25496531, 25967125, 20128972,
   6634                 2825959, 28657387, 43137087, 22287016
   6635 #endif
   6636             }},
   6637             {{
   6638 #if defined(BORINGSSL_CURVE25519_64BIT)
   6639                 1900828492104143, 430212361082163, 687437570852799,
   6640                 832514536673512, 1685641495940794
   6641 #else
   6642                 51184079, 28324551, 49665331, 6410663, 3622847, 10243618,
   6643                 20615400, 12405433, 43355834, 25118015
   6644 #endif
   6645             }},
   6646         },
   6647         {
   6648             {{
   6649 #if defined(BORINGSSL_CURVE25519_64BIT)
   6650                 842632847936398, 605670026766216, 290836444839585,
   6651                 163210774892356, 2213815011799645
   6652 #else
   6653                 60017550, 12556207, 46917512, 9025186, 50036385, 4333800,
   6654                 4378436, 2432030, 23097949, 32988414
   6655 #endif
   6656             }},
   6657             {{
   6658 #if defined(BORINGSSL_CURVE25519_64BIT)
   6659                 1176336383453996, 1725477294339771, 12700622672454,
   6660                 678015708818208, 162724078519879
   6661 #else
   6662                 4565804, 17528778, 20084411, 25711615, 1724998, 189254,
   6663                 24767264, 10103221, 48596551, 2424777
   6664 #endif
   6665             }},
   6666             {{
   6667 #if defined(BORINGSSL_CURVE25519_64BIT)
   6668                 1448049969043497, 1789411762943521, 385587766217753,
   6669                 90201620913498, 832999441066823
   6670 #else
   6671                 366633, 21577626, 8173089, 26664313, 30788633, 5745705,
   6672                 59940186, 1344108, 63466311, 12412658
   6673 #endif
   6674             }},
   6675         },
   6676         {
   6677             {{
   6678 #if defined(BORINGSSL_CURVE25519_64BIT)
   6679                 516086333293313, 2240508292484616, 1351669528166508,
   6680                 1223255565316488, 750235824427138
   6681 #else
   6682                 43107073, 7690285, 14929416, 33386175, 34898028, 20141445,
   6683                 24162696, 18227928, 63967362, 11179384
   6684 #endif
   6685             }},
   6686             {{
   6687 #if defined(BORINGSSL_CURVE25519_64BIT)
   6688                 1263624896582495, 1102602401673328, 526302183714372,
   6689                 2152015839128799, 1483839308490010
   6690 #else
   6691                 18289503, 18829478, 8056944, 16430056, 45379140, 7842513,
   6692                 61107423, 32067534, 48424218, 22110928
   6693 #endif
   6694             }},
   6695             {{
   6696 #if defined(BORINGSSL_CURVE25519_64BIT)
   6697                 442991718646863, 1599275157036458, 1925389027579192,
   6698                 899514691371390, 350263251085160
   6699 #else
   6700                 476239, 6601091, 60956074, 23831056, 17503544, 28690532,
   6701                 27672958, 13403813, 11052904, 5219329
   6702 #endif
   6703             }},
   6704         },
   6705     },
   6706     {
   6707         {
   6708             {{
   6709 #if defined(BORINGSSL_CURVE25519_64BIT)
   6710                 1689713572022143, 593854559254373, 978095044791970,
   6711                 1985127338729499, 1676069120347625
   6712 #else
   6713                 20678527, 25178694, 34436965, 8849122, 62099106, 14574751,
   6714                 31186971, 29580702, 9014761, 24975376
   6715 #endif
   6716             }},
   6717             {{
   6718 #if defined(BORINGSSL_CURVE25519_64BIT)
   6719                 1557207018622683, 340631692799603, 1477725909476187,
   6720                 614735951619419, 2033237123746766
   6721 #else
   6722                 53464795, 23204192, 51146355, 5075807, 65594203, 22019831,
   6723                 34006363, 9160279, 8473550, 30297594
   6724 #endif
   6725             }},
   6726             {{
   6727 #if defined(BORINGSSL_CURVE25519_64BIT)
   6728                 968764929340557, 1225534776710944, 662967304013036,
   6729                 1155521416178595, 791142883466590
   6730 #else
   6731                 24900749, 14435722, 17209120, 18261891, 44516588, 9878982,
   6732                 59419555, 17218610, 42540382, 11788947
   6733 #endif
   6734             }},
   6735         },
   6736         {
   6737             {{
   6738 #if defined(BORINGSSL_CURVE25519_64BIT)
   6739                 1487081286167458, 993039441814934, 1792378982844640,
   6740                 698652444999874, 2153908693179754
   6741 #else
   6742                 63990690, 22159237, 53306774, 14797440, 9652448, 26708528,
   6743                 47071426, 10410732, 42540394, 32095740
   6744 #endif
   6745             }},
   6746             {{
   6747 #if defined(BORINGSSL_CURVE25519_64BIT)
   6748                 1123181311102823, 685575944875442, 507605465509927,
   6749                 1412590462117473, 568017325228626
   6750 #else
   6751                 51449703, 16736705, 44641714, 10215877, 58011687, 7563910,
   6752                 11871841, 21049238, 48595538, 8464117
   6753 #endif
   6754             }},
   6755             {{
   6756 #if defined(BORINGSSL_CURVE25519_64BIT)
   6757                 560258797465417, 2193971151466401, 1824086900849026,
   6758                 579056363542056, 1690063960036441
   6759 #else
   6760                 43708233, 8348506, 52522913, 32692717, 63158658, 27181012,
   6761                 14325288, 8628612, 33313881, 25183915
   6762 #endif
   6763             }},
   6764         },
   6765         {
   6766             {{
   6767 #if defined(BORINGSSL_CURVE25519_64BIT)
   6768                 1918407319222416, 353767553059963, 1930426334528099,
   6769                 1564816146005724, 1861342381708096
   6770 #else
   6771                 46921872, 28586496, 22367355, 5271547, 66011747, 28765593,
   6772                 42303196, 23317577, 58168128, 27736162
   6773 #endif
   6774             }},
   6775             {{
   6776 #if defined(BORINGSSL_CURVE25519_64BIT)
   6777                 2131325168777276, 1176636658428908, 1756922641512981,
   6778                 1390243617176012, 1966325177038383
   6779 #else
   6780                 60160060, 31759219, 34483180, 17533252, 32635413, 26180187,
   6781                 15989196, 20716244, 28358191, 29300528
   6782 #endif
   6783             }},
   6784             {{
   6785 #if defined(BORINGSSL_CURVE25519_64BIT)
   6786                 2063958120364491, 2140267332393533, 699896251574968,
   6787                 273268351312140, 375580724713232
   6788 #else
   6789                 43547083, 30755372, 34757181, 31892468, 57961144, 10429266,
   6790                 50471180, 4072015, 61757200, 5596588
   6791 #endif
   6792             }},
   6793         },
   6794         {
   6795             {{
   6796 #if defined(BORINGSSL_CURVE25519_64BIT)
   6797                 2024297515263178, 416959329722687, 1079014235017302,
   6798                 171612225573183, 1031677520051053
   6799 #else
   6800                 38872266, 30164383, 12312895, 6213178, 3117142, 16078565,
   6801                 29266239, 2557221, 1768301, 15373193
   6802 #endif
   6803             }},
   6804             {{
   6805 #if defined(BORINGSSL_CURVE25519_64BIT)
   6806                 2033900009388450, 1744902869870788, 2190580087917640,
   6807                 1949474984254121, 231049754293748
   6808 #else
   6809                 59865506, 30307471, 62515396, 26001078, 66980936, 32642186,
   6810                 66017961, 29049440, 42448372, 3442909
   6811 #endif
   6812             }},
   6813             {{
   6814 #if defined(BORINGSSL_CURVE25519_64BIT)
   6815                 343868674606581, 550155864008088, 1450580864229630,
   6816                 481603765195050, 896972360018042
   6817 #else
   6818                 36898293, 5124042, 14181784, 8197961, 18964734, 21615339,
   6819                 22597930, 7176455, 48523386, 13365929
   6820 #endif
   6821             }},
   6822         },
   6823         {
   6824             {{
   6825 #if defined(BORINGSSL_CURVE25519_64BIT)
   6826                 2151139328380127, 314745882084928, 59756825775204,
   6827                 1676664391494651, 2048348075599360
   6828 #else
   6829                 59231455, 32054473, 8324672, 4690079, 6261860, 890446, 24538107,
   6830                 24984246, 57419264, 30522764
   6831 #endif
   6832             }},
   6833             {{
   6834 #if defined(BORINGSSL_CURVE25519_64BIT)
   6835                 1528930066340597, 1605003907059576, 1055061081337675,
   6836                 1458319101947665, 1234195845213142
   6837 #else
   6838                 25008885, 22782833, 62803832, 23916421, 16265035, 15721635,
   6839                 683793, 21730648, 15723478, 18390951
   6840 #endif
   6841             }},
   6842             {{
   6843 #if defined(BORINGSSL_CURVE25519_64BIT)
   6844                 830430507734812, 1780282976102377, 1425386760709037,
   6845                 362399353095425, 2168861579799910
   6846 #else
   6847                 57448220, 12374378, 40101865, 26528283, 59384749, 21239917,
   6848                 11879681, 5400171, 519526, 32318556
   6849 #endif
   6850             }},
   6851         },
   6852         {
   6853             {{
   6854 #if defined(BORINGSSL_CURVE25519_64BIT)
   6855                 1155762232730333, 980662895504006, 2053766700883521,
   6856                 490966214077606, 510405877041357
   6857 #else
   6858                 22258397, 17222199, 59239046, 14613015, 44588609, 30603508,
   6859                 46754982, 7315966, 16648397, 7605640
   6860 #endif
   6861             }},
   6862             {{
   6863 #if defined(BORINGSSL_CURVE25519_64BIT)
   6864                 1683750316716132, 652278688286128, 1221798761193539,
   6865                 1897360681476669, 319658166027343
   6866 #else
   6867                 59027556, 25089834, 58885552, 9719709, 19259459, 18206220,
   6868                 23994941, 28272877, 57640015, 4763277
   6869 #endif
   6870             }},
   6871             {{
   6872 #if defined(BORINGSSL_CURVE25519_64BIT)
   6873                 618808732869972, 72755186759744, 2060379135624181,
   6874                 1730731526741822, 48862757828238
   6875 #else
   6876                 45409620, 9220968, 51378240, 1084136, 41632757, 30702041,
   6877                 31088446, 25789909, 55752334, 728111
   6878 #endif
   6879             }},
   6880         },
   6881         {
   6882             {{
   6883 #if defined(BORINGSSL_CURVE25519_64BIT)
   6884                 1463171970593505, 1143040711767452, 614590986558883,
   6885                 1409210575145591, 1882816996436803
   6886 #else
   6887                 26047201, 21802961, 60208540, 17032633, 24092067, 9158119,
   6888                 62835319, 20998873, 37743427, 28056159
   6889 #endif
   6890             }},
   6891             {{
   6892 #if defined(BORINGSSL_CURVE25519_64BIT)
   6893                 2230133264691131, 563950955091024, 2042915975426398,
   6894                 827314356293472, 672028980152815
   6895 #else
   6896                 17510331, 33231575, 5854288, 8403524, 17133918, 30441820,
   6897                 38997856, 12327944, 10750447, 10014012
   6898 #endif
   6899             }},
   6900             {{
   6901 #if defined(BORINGSSL_CURVE25519_64BIT)
   6902                 264204366029760, 1654686424479449, 2185050199932931,
   6903                 2207056159091748, 506015669043634
   6904 #else
   6905                 56796096, 3936951, 9156313, 24656749, 16498691, 32559785,
   6906                 39627812, 32887699, 3424690, 7540221
   6907 #endif
   6908             }},
   6909         },
   6910         {
   6911             {{
   6912 #if defined(BORINGSSL_CURVE25519_64BIT)
   6913                 1784446333136569, 1973746527984364, 334856327359575,
   6914                 1156769775884610, 1023950124675478
   6915 #else
   6916                 30322361, 26590322, 11361004, 29411115, 7433303, 4989748,
   6917                 60037442, 17237212, 57864598, 15258045
   6918 #endif
   6919             }},
   6920             {{
   6921 #if defined(BORINGSSL_CURVE25519_64BIT)
   6922                 2065270940578383, 31477096270353, 306421879113491,
   6923                 181958643936686, 1907105536686083
   6924 #else
   6925                 13054543, 30774935, 19155473, 469045, 54626067, 4566041,
   6926                 5631406, 2711395, 1062915, 28418087
   6927 #endif
   6928             }},
   6929             {{
   6930 #if defined(BORINGSSL_CURVE25519_64BIT)
   6931                 1496516440779464, 1748485652986458, 872778352227340,
   6932                 818358834654919, 97932669284220
   6933 #else
   6934                 47868616, 22299832, 37599834, 26054466, 61273100, 13005410,
   6935                 61042375, 12194496, 32960380, 1459310
   6936 #endif
   6937             }},
   6938         },
   6939     },
   6940     {
   6941         {
   6942             {{
   6943 #if defined(BORINGSSL_CURVE25519_64BIT)
   6944                 471636015770351, 672455402793577, 1804995246884103,
   6945                 1842309243470804, 1501862504981682
   6946 #else
   6947                 19852015, 7027924, 23669353, 10020366, 8586503, 26896525,
   6948                 394196, 27452547, 18638002, 22379495
   6949 #endif
   6950             }},
   6951             {{
   6952 #if defined(BORINGSSL_CURVE25519_64BIT)
   6953                 1013216974933691, 538921919682598, 1915776722521558,
   6954                 1742822441583877, 1886550687916656
   6955 #else
   6956                 31395515, 15098109, 26581030, 8030562, 50580950, 28547297,
   6957                 9012485, 25970078, 60465776, 28111795
   6958 #endif
   6959             }},
   6960             {{
   6961 #if defined(BORINGSSL_CURVE25519_64BIT)
   6962                 2094270000643336, 303971879192276, 40801275554748,
   6963                 649448917027930, 1818544418535447
   6964 #else
   6965                 57916680, 31207054, 65111764, 4529533, 25766844, 607986,
   6966                 67095642, 9677542, 34813975, 27098423
   6967 #endif
   6968             }},
   6969         },
   6970         {
   6971             {{
   6972 #if defined(BORINGSSL_CURVE25519_64BIT)
   6973                 2241737709499165, 549397817447461, 838180519319392,
   6974                 1725686958520781, 1705639080897747
   6975 #else
   6976                 64664349, 33404494, 29348901, 8186665, 1873760, 12489863,
   6977                 36174285, 25714739, 59256019, 25416002
   6978 #endif
   6979             }},
   6980             {{
   6981 #if defined(BORINGSSL_CURVE25519_64BIT)
   6982                 1216074541925116, 50120933933509, 1565829004133810,
   6983                 721728156134580, 349206064666188
   6984 #else
   6985                 51872508, 18120922, 7766469, 746860, 26346930, 23332670,
   6986                 39775412, 10754587, 57677388, 5203575
   6987 #endif
   6988             }},
   6989             {{
   6990 #if defined(BORINGSSL_CURVE25519_64BIT)
   6991                 948617110470858, 346222547451945, 1126511960599975,
   6992                 1759386906004538, 493053284802266
   6993 #else
   6994                 31834314, 14135496, 66338857, 5159117, 20917671, 16786336,
   6995                 59640890, 26216907, 31809242, 7347066
   6996 #endif
   6997             }},
   6998         },
   6999         {
   7000             {{
   7001 #if defined(BORINGSSL_CURVE25519_64BIT)
   7002                 1454933046815146, 874696014266362, 1467170975468588,
   7003                 1432316382418897, 2111710746366763
   7004 #else
   7005                 57502122, 21680191, 20414458, 13033986, 13716524, 21862551,
   7006                 19797969, 21343177, 15192875, 31466942
   7007 #endif
   7008             }},
   7009             {{
   7010 #if defined(BORINGSSL_CURVE25519_64BIT)
   7011                 2105387117364450, 1996463405126433, 1303008614294500,
   7012                 851908115948209, 1353742049788635
   7013 #else
   7014                 54445282, 31372712, 1168161, 29749623, 26747876, 19416341,
   7015                 10609329, 12694420, 33473243, 20172328
   7016 #endif
   7017             }},
   7018             {{
   7019 #if defined(BORINGSSL_CURVE25519_64BIT)
   7020                 750300956351719, 1487736556065813, 15158817002104,
   7021                 1511998221598392, 971739901354129
   7022 #else
   7023                 33184999, 11180355, 15832085, 22169002, 65475192, 225883,
   7024                 15089336, 22530529, 60973201, 14480052
   7025 #endif
   7026             }},
   7027         },
   7028         {
   7029             {{
   7030 #if defined(BORINGSSL_CURVE25519_64BIT)
   7031                 1874648163531693, 2124487685930551, 1810030029384882,
   7032                 918400043048335, 586348627300650
   7033 #else
   7034                 31308717, 27934434, 31030839, 31657333, 15674546, 26971549,
   7035                 5496207, 13685227, 27595050, 8737275
   7036 #endif
   7037             }},
   7038             {{
   7039 #if defined(BORINGSSL_CURVE25519_64BIT)
   7040                 1235084464747900, 1166111146432082, 1745394857881591,
   7041                 1405516473883040, 4463504151617
   7042 #else
   7043                 46790012, 18404192, 10933842, 17376410, 8335351, 26008410,
   7044                 36100512, 20943827, 26498113, 66511
   7045 #endif
   7046             }},
   7047             {{
   7048 #if defined(BORINGSSL_CURVE25519_64BIT)
   7049                 1663810156463827, 327797390285791, 1341846161759410,
   7050                 1964121122800605, 1747470312055380
   7051 #else
   7052                 22644435, 24792703, 50437087, 4884561, 64003250, 19995065,
   7053                 30540765, 29267685, 53781076, 26039336
   7054 #endif
   7055             }},
   7056         },
   7057         {
   7058             {{
   7059 #if defined(BORINGSSL_CURVE25519_64BIT)
   7060                 660005247548233, 2071860029952887, 1358748199950107,
   7061                 911703252219107, 1014379923023831
   7062 #else
   7063                 39091017, 9834844, 18617207, 30873120, 63706907, 20246925,
   7064                 8205539, 13585437, 49981399, 15115438
   7065 #endif
   7066             }},
   7067             {{
   7068 #if defined(BORINGSSL_CURVE25519_64BIT)
   7069                 2206641276178231, 1690587809721504, 1600173622825126,
   7070                 2156096097634421, 1106822408548216
   7071 #else
   7072                 23711543, 32881517, 31206560, 25191721, 6164646, 23844445,
   7073                 33572981, 32128335, 8236920, 16492939
   7074 #endif
   7075             }},
   7076             {{
   7077 #if defined(BORINGSSL_CURVE25519_64BIT)
   7078                 1344788193552206, 1949552134239140, 1735915881729557,
   7079                 675891104100469, 1834220014427292
   7080 #else
   7081                 43198286, 20038905, 40809380, 29050590, 25005589, 25867162,
   7082                 19574901, 10071562, 6708380, 27332008
   7083 #endif
   7084             }},
   7085         },
   7086         {
   7087             {{
   7088 #if defined(BORINGSSL_CURVE25519_64BIT)
   7089                 1920949492387964, 158885288387530, 70308263664033,
   7090                 626038464897817, 1468081726101009
   7091 #else
   7092                 2101372, 28624378, 19702730, 2367575, 51681697, 1047674,
   7093                 5301017, 9328700, 29955601, 21876122
   7094 #endif
   7095             }},
   7096             {{
   7097 #if defined(BORINGSSL_CURVE25519_64BIT)
   7098                 622221042073383, 1210146474039168, 1742246422343683,
   7099                 1403839361379025, 417189490895736
   7100 #else
   7101                 3096359, 9271816, 45488000, 18032587, 52260867, 25961494,
   7102                 41216721, 20918836, 57191288, 6216607
   7103 #endif
   7104             }},
   7105             {{
   7106 #if defined(BORINGSSL_CURVE25519_64BIT)
   7107                 22727256592983, 168471543384997, 1324340989803650,
   7108                 1839310709638189, 504999476432775
   7109 #else
   7110                 34493015, 338662, 41913253, 2510421, 37895298, 19734218,
   7111                 24822829, 27407865, 40341383, 7525078
   7112 #endif
   7113             }},
   7114         },
   7115         {
   7116             {{
   7117 #if defined(BORINGSSL_CURVE25519_64BIT)
   7118                 1313240518756327, 1721896294296942, 52263574587266,
   7119                 2065069734239232, 804910473424630
   7120 #else
   7121                 44042215, 19568808, 16133486, 25658254, 63719298, 778787,
   7122                 66198528, 30771936, 47722230, 11994100
   7123 #endif
   7124             }},
   7125             {{
   7126 #if defined(BORINGSSL_CURVE25519_64BIT)
   7127                 1337466662091884, 1287645354669772, 2018019646776184,
   7128                 652181229374245, 898011753211715
   7129 #else
   7130                 21691500, 19929806, 66467532, 19187410, 3285880, 30070836,
   7131                 42044197, 9718257, 59631427, 13381417
   7132 #endif
   7133             }},
   7134             {{
   7135 #if defined(BORINGSSL_CURVE25519_64BIT)
   7136                 1969792547910734, 779969968247557, 2011350094423418,
   7137                 1823964252907487, 1058949448296945
   7138 #else
   7139                 18445390, 29352196, 14979845, 11622458, 65381754, 29971451,
   7140                 23111647, 27179185, 28535281, 15779576
   7141 #endif
   7142             }},
   7143         },
   7144         {
   7145             {{
   7146 #if defined(BORINGSSL_CURVE25519_64BIT)
   7147                 207343737062002, 1118176942430253, 758894594548164,
   7148                 806764629546266, 1157700123092949
   7149 #else
   7150                 30098034, 3089662, 57874477, 16662134, 45801924, 11308410,
   7151                 53040410, 12021729, 9955285, 17251076
   7152 #endif
   7153             }},
   7154             {{
   7155 #if defined(BORINGSSL_CURVE25519_64BIT)
   7156                 1273565321399022, 1638509681964574, 759235866488935,
   7157                 666015124346707, 897983460943405
   7158 #else
   7159                 9734894, 18977602, 59635230, 24415696, 2060391, 11313496,
   7160                 48682835, 9924398, 20194861, 13380996
   7161 #endif
   7162             }},
   7163             {{
   7164 #if defined(BORINGSSL_CURVE25519_64BIT)
   7165                 1717263794012298, 1059601762860786, 1837819172257618,
   7166                 1054130665797229, 680893204263559
   7167 #else
   7168                 40730762, 25589224, 44941042, 15789296, 49053522, 27385639,
   7169                 65123949, 15707770, 26342023, 10146099
   7170 #endif
   7171             }},
   7172         },
   7173     },
   7174     {
   7175         {
   7176             {{
   7177 #if defined(BORINGSSL_CURVE25519_64BIT)
   7178                 2237039662793603, 2249022333361206, 2058613546633703,
   7179                 149454094845279, 2215176649164582
   7180 #else
   7181                 41091971, 33334488, 21339190, 33513044, 19745255, 30675732,
   7182                 37471583, 2227039, 21612326, 33008704
   7183 #endif
   7184             }},
   7185             {{
   7186 #if defined(BORINGSSL_CURVE25519_64BIT)
   7187                 79472182719605, 1851130257050174, 1825744808933107,
   7188                 821667333481068, 781795293511946
   7189 #else
   7190                 54031477, 1184227, 23562814, 27583990, 46757619, 27205717,
   7191                 25764460, 12243797, 46252298, 11649657
   7192 #endif
   7193             }},
   7194             {{
   7195 #if defined(BORINGSSL_CURVE25519_64BIT)
   7196                 755822026485370, 152464789723500, 1178207602290608,
   7197                 410307889503239, 156581253571278
   7198 #else
   7199                 57077370, 11262625, 27384172, 2271902, 26947504, 17556661,
   7200                 39943, 6114064, 33514190, 2333242
   7201 #endif
   7202             }},
   7203         },
   7204         {
   7205             {{
   7206 #if defined(BORINGSSL_CURVE25519_64BIT)
   7207                 1418185496130297, 484520167728613, 1646737281442950,
   7208                 1401487684670265, 1349185550126961
   7209 #else
   7210                 45675257, 21132610, 8119781, 7219913, 45278342, 24538297,
   7211                 60429113, 20883793, 24350577, 20104431
   7212 #endif
   7213             }},
   7214             {{
   7215 #if defined(BORINGSSL_CURVE25519_64BIT)
   7216                 1495380034400429, 325049476417173, 46346894893933,
   7217                 1553408840354856, 828980101835683
   7218 #else
   7219                 62992557, 22282898, 43222677, 4843614, 37020525, 690622,
   7220                 35572776, 23147595, 8317859, 12352766
   7221 #endif
   7222             }},
   7223             {{
   7224 #if defined(BORINGSSL_CURVE25519_64BIT)
   7225                 1280337889310282, 2070832742866672, 1640940617225222,
   7226                 2098284908289951, 450929509534434
   7227 #else
   7228                 18200138, 19078521, 34021104, 30857812, 43406342, 24451920,
   7229                 43556767, 31266881, 20712162, 6719373
   7230 #endif
   7231             }},
   7232         },
   7233         {
   7234             {{
   7235 #if defined(BORINGSSL_CURVE25519_64BIT)
   7236                 407703353998781, 126572141483652, 286039827513621,
   7237                 1999255076709338, 2030511179441770
   7238 #else
   7239                 26656189, 6075253, 59250308, 1886071, 38764821, 4262325,
   7240                 11117530, 29791222, 26224234, 30256974
   7241 #endif
   7242             }},
   7243             {{
   7244 #if defined(BORINGSSL_CURVE25519_64BIT)
   7245                 1254958221100483, 1153235960999843, 942907704968834,
   7246                 637105404087392, 1149293270147267
   7247 #else
   7248                 49939907, 18700334, 63713187, 17184554, 47154818, 14050419,
   7249                 21728352, 9493610, 18620611, 17125804
   7250 #endif
   7251             }},
   7252             {{
   7253 #if defined(BORINGSSL_CURVE25519_64BIT)
   7254                 894249020470196, 400291701616810, 406878712230981,
   7255                 1599128793487393, 1145868722604026
   7256 #else
   7257                 53785524, 13325348, 11432106, 5964811, 18609221, 6062965,
   7258                 61839393, 23828875, 36407290, 17074774
   7259 #endif
   7260             }},
   7261         },
   7262         {
   7263             {{
   7264 #if defined(BORINGSSL_CURVE25519_64BIT)
   7265                 1497955250203334, 110116344653260, 1128535642171976,
   7266                 1900106496009660, 129792717460909
   7267 #else
   7268                 43248326, 22321272, 26961356, 1640861, 34695752, 16816491,
   7269                 12248508, 28313793, 13735341, 1934062
   7270 #endif
   7271             }},
   7272             {{
   7273 #if defined(BORINGSSL_CURVE25519_64BIT)
   7274                 452487513298665, 1352120549024569, 1173495883910956,
   7275                 1999111705922009, 367328130454226
   7276 #else
   7277                 25089769, 6742589, 17081145, 20148166, 21909292, 17486451,
   7278                 51972569, 29789085, 45830866, 5473615
   7279 #endif
   7280             }},
   7281             {{
   7282 #if defined(BORINGSSL_CURVE25519_64BIT)
   7283                 1717539401269642, 1475188995688487, 891921989653942,
   7284                 836824441505699, 1885988485608364
   7285 #else
   7286                 31883658, 25593331, 1083431, 21982029, 22828470, 13290673,
   7287                 59983779, 12469655, 29111212, 28103418
   7288 #endif
   7289             }},
   7290         },
   7291         {
   7292             {{
   7293 #if defined(BORINGSSL_CURVE25519_64BIT)
   7294                 1241784121422547, 187337051947583, 1118481812236193,
   7295                 428747751936362, 30358898927325
   7296 #else
   7297                 24244947, 18504025, 40845887, 2791539, 52111265, 16666677,
   7298                 24367466, 6388839, 56813277, 452382
   7299 #endif
   7300             }},
   7301             {{
   7302 #if defined(BORINGSSL_CURVE25519_64BIT)
   7303                 2022432361201842, 1088816090685051, 1977843398539868,
   7304                 1854834215890724, 564238862029357
   7305 #else
   7306                 41468082, 30136590, 5217915, 16224624, 19987036, 29472163,
   7307                 42872612, 27639183, 15766061, 8407814
   7308 #endif
   7309             }},
   7310             {{
   7311 #if defined(BORINGSSL_CURVE25519_64BIT)
   7312                 938868489100585, 1100285072929025, 1017806255688848,
   7313                 1957262154788833, 152787950560442
   7314 #else
   7315                 46701865, 13990230, 15495425, 16395525, 5377168, 15166495,
   7316                 58191841, 29165478, 59040954, 2276717
   7317 #endif
   7318             }},
   7319         },
   7320         {
   7321             {{
   7322 #if defined(BORINGSSL_CURVE25519_64BIT)
   7323                 867319417678923, 620471962942542, 226032203305716,
   7324                 342001443957629, 1761675818237336
   7325 #else
   7326                 30157899, 12924066, 49396814, 9245752, 19895028, 3368142,
   7327                 43281277, 5096218, 22740376, 26251015
   7328 #endif
   7329             }},
   7330             {{
   7331 #if defined(BORINGSSL_CURVE25519_64BIT)
   7332                 1295072362439987, 931227904689414, 1355731432641687,
   7333                 922235735834035, 892227229410209
   7334 #else
   7335                 2041139, 19298082, 7783686, 13876377, 41161879, 20201972,
   7336                 24051123, 13742383, 51471265, 13295221
   7337 #endif
   7338             }},
   7339             {{
   7340 #if defined(BORINGSSL_CURVE25519_64BIT)
   7341                 1680989767906154, 535362787031440, 2136691276706570,
   7342                 1942228485381244, 1267350086882274
   7343 #else
   7344                 33338218, 25048699, 12532112, 7977527, 9106186, 31839181,
   7345                 49388668, 28941459, 62657506, 18884987
   7346 #endif
   7347             }},
   7348         },
   7349         {
   7350             {{
   7351 #if defined(BORINGSSL_CURVE25519_64BIT)
   7352                 366018233770527, 432660629755596, 126409707644535,
   7353                 1973842949591662, 645627343442376
   7354 #else
   7355                 47063583, 5454096, 52762316, 6447145, 28862071, 1883651,
   7356                 64639598, 29412551, 7770568, 9620597
   7357 #endif
   7358             }},
   7359             {{
   7360 #if defined(BORINGSSL_CURVE25519_64BIT)
   7361                 535509430575217, 546885533737322, 1524675609547799,
   7362                 2138095752851703, 1260738089896827
   7363 #else
   7364                 23208049, 7979712, 33071466, 8149229, 1758231, 22719437,
   7365                 30945527, 31860109, 33606523, 18786461
   7366 #endif
   7367             }},
   7368             {{
   7369 #if defined(BORINGSSL_CURVE25519_64BIT)
   7370                 1159906385590467, 2198530004321610, 714559485023225,
   7371                 81880727882151, 1484020820037082
   7372 #else
   7373                 1439939, 17283952, 66028874, 32760649, 4625401, 10647766,
   7374                 62065063, 1220117, 30494170, 22113633
   7375 #endif
   7376             }},
   7377         },
   7378         {
   7379             {{
   7380 #if defined(BORINGSSL_CURVE25519_64BIT)
   7381                 1377485731340769, 2046328105512000, 1802058637158797,
   7382                 62146136768173, 1356993908853901
   7383 #else
   7384                 62071265, 20526136, 64138304, 30492664, 15640973, 26852766,
   7385                 40369837, 926049, 65424525, 20220784
   7386 #endif
   7387             }},
   7388             {{
   7389 #if defined(BORINGSSL_CURVE25519_64BIT)
   7390                 2013612215646735, 1830770575920375, 536135310219832,
   7391                 609272325580394, 270684344495013
   7392 #else
   7393                 13908495, 30005160, 30919927, 27280607, 45587000, 7989038,
   7394                 9021034, 9078865, 3353509, 4033511
   7395 #endif
   7396             }},
   7397             {{
   7398 #if defined(BORINGSSL_CURVE25519_64BIT)
   7399                 1237542585982777, 2228682050256790, 1385281931622824,
   7400                 593183794882890, 493654978552689
   7401 #else
   7402                 37445433, 18440821, 32259990, 33209950, 24295848, 20642309,
   7403                 23161162, 8839127, 27485041, 7356032
   7404 #endif
   7405             }},
   7406         },
   7407     },
   7408     {
   7409         {
   7410             {{
   7411 #if defined(BORINGSSL_CURVE25519_64BIT)
   7412                 47341488007760, 1891414891220257, 983894663308928,
   7413                 176161768286818, 1126261115179708
   7414 #else
   7415                 9661008, 705443, 11980065, 28184278, 65480320, 14661172,
   7416                 60762722, 2625014, 28431036, 16782598
   7417 #endif
   7418             }},
   7419             {{
   7420 #if defined(BORINGSSL_CURVE25519_64BIT)
   7421                 1694030170963455, 502038567066200, 1691160065225467,
   7422                 949628319562187, 275110186693066
   7423 #else
   7424                 43269631, 25243016, 41163352, 7480957, 49427195, 25200248,
   7425                 44562891, 14150564, 15970762, 4099461
   7426 #endif
   7427             }},
   7428             {{
   7429 #if defined(BORINGSSL_CURVE25519_64BIT)
   7430                 1124515748676336, 1661673816593408, 1499640319059718,
   7431                 1584929449166988, 558148594103306
   7432 #else
   7433                 29262576, 16756590, 26350592, 24760869, 8529670, 22346382,
   7434                 13617292, 23617289, 11465738, 8317062
   7435 #endif
   7436             }},
   7437         },
   7438         {
   7439             {{
   7440 #if defined(BORINGSSL_CURVE25519_64BIT)
   7441                 1784525599998356, 1619698033617383, 2097300287550715,
   7442                 258265458103756, 1905684794832758
   7443 #else
   7444                 41615764, 26591503, 32500199, 24135381, 44070139, 31252209,
   7445                 14898636, 3848455, 20969334, 28396916
   7446 #endif
   7447             }},
   7448             {{
   7449 #if defined(BORINGSSL_CURVE25519_64BIT)
   7450                 1288941072872766, 931787902039402, 190731008859042,
   7451                 2006859954667190, 1005931482221702
   7452 #else
   7453                 46724414, 19206718, 48772458, 13884721, 34069410, 2842113,
   7454                 45498038, 29904543, 11177094, 14989547
   7455 #endif
   7456             }},
   7457             {{
   7458 #if defined(BORINGSSL_CURVE25519_64BIT)
   7459                 1465551264822703, 152905080555927, 680334307368453,
   7460                 173227184634745, 666407097159852
   7461 #else
   7462                 42612143, 21838415, 16959895, 2278463, 12066309, 10137771,
   7463                 13515641, 2581286, 38621356, 9930239
   7464 #endif
   7465             }},
   7466         },
   7467         {
   7468             {{
   7469 #if defined(BORINGSSL_CURVE25519_64BIT)
   7470                 2111017076203943, 1378760485794347, 1248583954016456,
   7471                 1352289194864422, 1895180776543896
   7472 #else
   7473                 49357223, 31456605, 16544299, 20545132, 51194056, 18605350,
   7474                 18345766, 20150679, 16291480, 28240394
   7475 #endif
   7476             }},
   7477             {{
   7478 #if defined(BORINGSSL_CURVE25519_64BIT)
   7479                 171348223915638, 662766099800389, 462338943760497,
   7480                 466917763340314, 656911292869115
   7481 #else
   7482                 33879670, 2553287, 32678213, 9875984, 8534129, 6889387,
   7483                 57432090, 6957616, 4368891, 9788741
   7484 #endif
   7485             }},
   7486             {{
   7487 #if defined(BORINGSSL_CURVE25519_64BIT)
   7488                 488623681976577, 866497561541722, 1708105560937768,
   7489                 1673781214218839, 1506146329818807
   7490 #else
   7491                 16660737, 7281060, 56278106, 12911819, 20108584, 25452756,
   7492                 45386327, 24941283, 16250551, 22443329
   7493 #endif
   7494             }},
   7495         },
   7496         {
   7497             {{
   7498 #if defined(BORINGSSL_CURVE25519_64BIT)
   7499                 160425464456957, 950394373239689, 430497123340934,
   7500                 711676555398832, 320964687779005
   7501 #else
   7502                 47343357, 2390525, 50557833, 14161979, 1905286, 6414907,
   7503                 4689584, 10604807, 36918461, 4782746
   7504 #endif
   7505             }},
   7506             {{
   7507 #if defined(BORINGSSL_CURVE25519_64BIT)
   7508                 988979367990485, 1359729327576302, 1301834257246029,
   7509                 294141160829308, 29348272277475
   7510 #else
   7511                 65754325, 14736940, 59741422, 20261545, 7710541, 19398842,
   7512                 57127292, 4383044, 22546403, 437323
   7513 #endif
   7514             }},
   7515             {{
   7516 #if defined(BORINGSSL_CURVE25519_64BIT)
   7517                 1434382743317910, 100082049942065, 221102347892623,
   7518                 186982837860588, 1305765053501834
   7519 #else
   7520                 31665558, 21373968, 50922033, 1491338, 48740239, 3294681,
   7521                 27343084, 2786261, 36475274, 19457415
   7522 #endif
   7523             }},
   7524         },
   7525         {
   7526             {{
   7527 #if defined(BORINGSSL_CURVE25519_64BIT)
   7528                 2205916462268190, 499863829790820, 961960554686616,
   7529                 158062762756985, 1841471168298305
   7530 #else
   7531                 52641566, 32870716, 33734756, 7448551, 19294360, 14334329,
   7532                 47418233, 2355318, 47824193, 27440058
   7533 #endif
   7534             }},
   7535             {{
   7536 #if defined(BORINGSSL_CURVE25519_64BIT)
   7537                 1191737341426592, 1847042034978363, 1382213545049056,
   7538                 1039952395710448, 788812858896859
   7539 #else
   7540                 15121312, 17758270, 6377019, 27523071, 56310752, 20596586,
   7541                 18952176, 15496498, 37728731, 11754227
   7542 #endif
   7543             }},
   7544             {{
   7545 #if defined(BORINGSSL_CURVE25519_64BIT)
   7546                 1346965964571152, 1291881610839830, 2142916164336056,
   7547                 786821641205979, 1571709146321039
   7548 #else
   7549                 64471568, 20071356, 8488726, 19250536, 12728760, 31931939,
   7550                 7141595, 11724556, 22761615, 23420291
   7551 #endif
   7552             }},
   7553         },
   7554         {
   7555             {{
   7556 #if defined(BORINGSSL_CURVE25519_64BIT)
   7557                 787164375951248, 202869205373189, 1356590421032140,
   7558                 1431233331032510, 786341368775957
   7559 #else
   7560                 16918416, 11729663, 49025285, 3022986, 36093132, 20214772,
   7561                 38367678, 21327038, 32851221, 11717399
   7562 #endif
   7563             }},
   7564             {{
   7565 #if defined(BORINGSSL_CURVE25519_64BIT)
   7566                 492448143532951, 304105152670757, 1761767168301056,
   7567                 233782684697790, 1981295323106089
   7568 #else
   7569                 11166615, 7338049, 60386341, 4531519, 37640192, 26252376,
   7570                 31474878, 3483633, 65915689, 29523600
   7571 #endif
   7572             }},
   7573             {{
   7574 #if defined(BORINGSSL_CURVE25519_64BIT)
   7575                 665807507761866, 1343384868355425, 895831046139653,
   7576                 439338948736892, 1986828765695105
   7577 #else
   7578                 66923210, 9921304, 31456609, 20017994, 55095045, 13348922,
   7579                 33142652, 6546660, 47123585, 29606055
   7580 #endif
   7581             }},
   7582         },
   7583         {
   7584             {{
   7585 #if defined(BORINGSSL_CURVE25519_64BIT)
   7586                 756096210874553, 1721699973539149, 258765301727885,
   7587                 1390588532210645, 1212530909934781
   7588 #else
   7589                 34648249, 11266711, 55911757, 25655328, 31703693, 3855903,
   7590                 58571733, 20721383, 36336829, 18068118
   7591 #endif
   7592             }},
   7593             {{
   7594 #if defined(BORINGSSL_CURVE25519_64BIT)
   7595                 852891097972275, 1816988871354562, 1543772755726524,
   7596                 1174710635522444, 202129090724628
   7597 #else
   7598                 49102387, 12709067, 3991746, 27075244, 45617340, 23004006,
   7599                 35973516, 17504552, 10928916, 3011958
   7600 #endif
   7601             }},
   7602             {{
   7603 #if defined(BORINGSSL_CURVE25519_64BIT)
   7604                 1205281565824323, 22430498399418, 992947814485516,
   7605                 1392458699738672, 688441466734558
   7606 #else
   7607                 60151107, 17960094, 31696058, 334240, 29576716, 14796075,
   7608                 36277808, 20749251, 18008030, 10258577
   7609 #endif
   7610             }},
   7611         },
   7612         {
   7613             {{
   7614 #if defined(BORINGSSL_CURVE25519_64BIT)
   7615                 1050627428414972, 1955849529137135, 2171162376368357,
   7616                 91745868298214, 447733118757826
   7617 #else
   7618                 44660220, 15655568, 7018479, 29144429, 36794597, 32352840,
   7619                 65255398, 1367119, 25127874, 6671743
   7620 #endif
   7621             }},
   7622             {{
   7623 #if defined(BORINGSSL_CURVE25519_64BIT)
   7624                 1287181461435438, 622722465530711, 880952150571872,
   7625                 741035693459198, 311565274989772
   7626 #else
   7627                 29701166, 19180498, 56230743, 9279287, 67091296, 13127209,
   7628                 21382910, 11042292, 25838796, 4642684
   7629 #endif
   7630             }},
   7631             {{
   7632 #if defined(BORINGSSL_CURVE25519_64BIT)
   7633                 1003649078149734, 545233927396469, 1849786171789880,
   7634                 1318943684880434, 280345687170552
   7635 #else
   7636                 46678630, 14955536, 42982517, 8124618, 61739576, 27563961,
   7637                 30468146, 19653792, 18423288, 4177476
   7638 #endif
   7639             }},
   7640         },
   7641     },
   7642 };
   7643 
   7644 #endif  // OPENSSL_SMALL
   7645 
   7646 // Bi[i] = (2*i+1)*B
   7647 static const ge_precomp Bi[8] = {
   7648     {
   7649         {{
   7650 #if defined(BORINGSSL_CURVE25519_64BIT)
   7651             1288382639258501, 245678601348599, 269427782077623,
   7652             1462984067271730, 137412439391563
   7653 #else
   7654             25967493, 19198397, 29566455, 3660896, 54414519, 4014786, 27544626,
   7655             21800161, 61029707, 2047604
   7656 #endif
   7657         }},
   7658         {{
   7659 #if defined(BORINGSSL_CURVE25519_64BIT)
   7660             62697248952638, 204681361388450, 631292143396476, 338455783676468,
   7661             1213667448819585
   7662 #else
   7663             54563134, 934261, 64385954, 3049989, 66381436, 9406985, 12720692,
   7664             5043384, 19500929, 18085054
   7665 #endif
   7666         }},
   7667         {{
   7668 #if defined(BORINGSSL_CURVE25519_64BIT)
   7669             301289933810280, 1259582250014073, 1422107436869536,
   7670             796239922652654, 1953934009299142
   7671 #else
   7672             58370664, 4489569, 9688441, 18769238, 10184608, 21191052, 29287918,
   7673             11864899, 42594502, 29115885
   7674 #endif
   7675         }},
   7676     },
   7677     {
   7678         {{
   7679 #if defined(BORINGSSL_CURVE25519_64BIT)
   7680             1601611775252272, 1720807796594148, 1132070835939856,
   7681             1260455018889551, 2147779492816911
   7682 #else
   7683             15636272, 23865875, 24204772, 25642034, 616976, 16869170, 27787599,
   7684             18782243, 28944399, 32004408
   7685 #endif
   7686         }},
   7687         {{
   7688 #if defined(BORINGSSL_CURVE25519_64BIT)
   7689             316559037616741, 2177824224946892, 1459442586438991,
   7690             1461528397712656, 751590696113597
   7691 #else
   7692             16568933, 4717097, 55552716, 32452109, 15682895, 21747389, 16354576,
   7693             21778470, 7689661, 11199574
   7694 #endif
   7695         }},
   7696         {{
   7697 #if defined(BORINGSSL_CURVE25519_64BIT)
   7698             1850748884277385, 1200145853858453, 1068094770532492,
   7699             672251375690438, 1586055907191707
   7700 #else
   7701             30464137, 27578307, 55329429, 17883566, 23220364, 15915852, 7512774,
   7702             10017326, 49359771, 23634074
   7703 #endif
   7704         }},
   7705     },
   7706     {
   7707         {{
   7708 #if defined(BORINGSSL_CURVE25519_64BIT)
   7709             769950342298419, 132954430919746, 844085933195555, 974092374476333,
   7710             726076285546016
   7711 #else
   7712             10861363, 11473154, 27284546, 1981175, 37044515, 12577860, 32867885,
   7713             14515107, 51670560, 10819379
   7714 #endif
   7715         }},
   7716         {{
   7717 #if defined(BORINGSSL_CURVE25519_64BIT)
   7718             425251763115706, 608463272472562, 442562545713235, 837766094556764,
   7719             374555092627893
   7720 #else
   7721             4708026, 6336745, 20377586, 9066809, 55836755, 6594695, 41455196,
   7722             12483687, 54440373, 5581305
   7723 #endif
   7724         }},
   7725         {{
   7726 #if defined(BORINGSSL_CURVE25519_64BIT)
   7727             1086255230780037, 274979815921559, 1960002765731872,
   7728             929474102396301, 1190409889297339
   7729 #else
   7730             19563141, 16186464, 37722007, 4097518, 10237984, 29206317, 28542349,
   7731             13850243, 43430843, 17738489
   7732 #endif
   7733         }},
   7734     },
   7735     {
   7736         {{
   7737 #if defined(BORINGSSL_CURVE25519_64BIT)
   7738             665000864555967, 2065379846933859, 370231110385876, 350988370788628,
   7739             1233371373142985
   7740 #else
   7741             5153727, 9909285, 1723747, 30776558, 30523604, 5516873, 19480852,
   7742             5230134, 43156425, 18378665
   7743 #endif
   7744         }},
   7745         {{
   7746 #if defined(BORINGSSL_CURVE25519_64BIT)
   7747             2019367628972465, 676711900706637, 110710997811333,
   7748             1108646842542025, 517791959672113
   7749 #else
   7750             36839857, 30090922, 7665485, 10083793, 28475525, 1649722, 20654025,
   7751             16520125, 30598449, 7715701
   7752 #endif
   7753         }},
   7754         {{
   7755 #if defined(BORINGSSL_CURVE25519_64BIT)
   7756             965130719900578, 247011430587952, 526356006571389, 91986625355052,
   7757             2157223321444601
   7758 #else
   7759             28881826, 14381568, 9657904, 3680757, 46927229, 7843315, 35708204,
   7760             1370707, 29794553, 32145132
   7761 #endif
   7762         }},
   7763     },
   7764     {
   7765         {{
   7766 #if defined(BORINGSSL_CURVE25519_64BIT)
   7767             1802695059465007, 1664899123557221, 593559490740857,
   7768             2160434469266659, 927570450755031
   7769 #else
   7770             44589871, 26862249, 14201701, 24808930, 43598457, 8844725, 18474211,
   7771             32192982, 54046167, 13821876
   7772 #endif
   7773         }},
   7774         {{
   7775 #if defined(BORINGSSL_CURVE25519_64BIT)
   7776             1725674970513508, 1933645953859181, 1542344539275782,
   7777             1767788773573747, 1297447965928905
   7778 #else
   7779             60653668, 25714560, 3374701, 28813570, 40010246, 22982724, 31655027,
   7780             26342105, 18853321, 19333481
   7781 #endif
   7782         }},
   7783         {{
   7784 #if defined(BORINGSSL_CURVE25519_64BIT)
   7785             1381809363726107, 1430341051343062, 2061843536018959,
   7786             1551778050872521, 2036394857967624
   7787 #else
   7788             4566811, 20590564, 38133974, 21313742, 59506191, 30723862, 58594505,
   7789             23123294, 2207752, 30344648
   7790 #endif
   7791         }},
   7792     },
   7793     {
   7794         {{
   7795 #if defined(BORINGSSL_CURVE25519_64BIT)
   7796             1970894096313054, 528066325833207, 1619374932191227,
   7797             2207306624415883, 1169170329061080
   7798 #else
   7799             41954014, 29368610, 29681143, 7868801, 60254203, 24130566, 54671499,
   7800             32891431, 35997400, 17421995
   7801 #endif
   7802         }},
   7803         {{
   7804 #if defined(BORINGSSL_CURVE25519_64BIT)
   7805             2070390218572616, 1458919061857835, 624171843017421,
   7806             1055332792707765, 433987520732508
   7807 #else
   7808             25576264, 30851218, 7349803, 21739588, 16472781, 9300885, 3844789,
   7809             15725684, 171356, 6466918
   7810 #endif
   7811         }},
   7812         {{
   7813 #if defined(BORINGSSL_CURVE25519_64BIT)
   7814             893653801273833, 1168026499324677, 1242553501121234,
   7815             1306366254304474, 1086752658510815
   7816 #else
   7817             23103977, 13316479, 9739013, 17404951, 817874, 18515490, 8965338,
   7818             19466374, 36393951, 16193876
   7819 #endif
   7820         }},
   7821     },
   7822     {
   7823         {{
   7824 #if defined(BORINGSSL_CURVE25519_64BIT)
   7825             213454002618221, 939771523987438, 1159882208056014, 317388369627517,
   7826             621213314200687
   7827 #else
   7828             33587053, 3180712, 64714734, 14003686, 50205390, 17283591, 17238397,
   7829             4729455, 49034351, 9256799
   7830 #endif
   7831         }},
   7832         {{
   7833 #if defined(BORINGSSL_CURVE25519_64BIT)
   7834             1971678598905747, 338026507889165, 762398079972271, 655096486107477,
   7835             42299032696322
   7836 #else
   7837             41926547, 29380300, 32336397, 5036987, 45872047, 11360616, 22616405,
   7838             9761698, 47281666, 630304
   7839 #endif
   7840         }},
   7841         {{
   7842 #if defined(BORINGSSL_CURVE25519_64BIT)
   7843             177130678690680, 1754759263300204, 1864311296286618,
   7844             1180675631479880, 1292726903152791
   7845 #else
   7846             53388152, 2639452, 42871404, 26147950, 9494426, 27780403, 60554312,
   7847             17593437, 64659607, 19263131
   7848 #endif
   7849         }},
   7850     },
   7851     {
   7852         {{
   7853 #if defined(BORINGSSL_CURVE25519_64BIT)
   7854             1913163449625248, 460779200291993, 2193883288642314,
   7855             1008900146920800, 1721983679009502
   7856 #else
   7857             63957664, 28508356, 9282713, 6866145, 35201802, 32691408, 48168288,
   7858             15033783, 25105118, 25659556
   7859 #endif
   7860         }},
   7861         {{
   7862 #if defined(BORINGSSL_CURVE25519_64BIT)
   7863             1070401523076875, 1272492007800961, 1910153608563310,
   7864             2075579521696771, 1191169788841221
   7865 #else
   7866             42782475, 15950225, 35307649, 18961608, 55446126, 28463506, 1573891,
   7867             30928545, 2198789, 17749813
   7868 #endif
   7869         }},
   7870         {{
   7871 #if defined(BORINGSSL_CURVE25519_64BIT)
   7872             692896803108118, 500174642072499, 2068223309439677,
   7873             1162190621851337, 1426986007309901
   7874 #else
   7875             64009494, 10324966, 64867251, 7453182, 61661885, 30818928, 53296841,
   7876             17317989, 34647629, 21263748
   7877 #endif
   7878         }},
   7879     },
   7880 };
   7881