]> www.wagner.pp.ru Git - openssl-gost/engine.git/blob - ecp_id_tc26_gost_3410_2012_512_paramSetA.c
[ecp] validation with coverity
[openssl-gost/engine.git] / ecp_id_tc26_gost_3410_2012_512_paramSetA.c
1 /* Autogenerated: ECCKiila https://gitlab.com/nisec/ecckiila */
2 /*-
3  * MIT License
4  * 
5  * Copyright (c) 2020 Luis Rivera-Zamarripa, Jesús-Javier Chi-Domínguez, Billy Bob Brumley
6  * 
7  * Permission is hereby granted, free of charge, to any person obtaining a copy
8  * of this software and associated documentation files (the "Software"), to deal
9  * in the Software without restriction, including without limitation the rights
10  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11  * copies of the Software, and to permit persons to whom the Software is
12  * furnished to do so, subject to the following conditions:
13  * 
14  * The above copyright notice and this permission notice shall be included in all
15  * copies or substantial portions of the Software.
16  * 
17  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23  * SOFTWARE.
24  */
25 #if defined(__SIZEOF_INT128__) && !defined(PEDANTIC)
26
27 #include <stdint.h>
28 #include <string.h>
29 #define LIMB_BITS 64
30 #define LIMB_CNT 10
31 /* Field elements */
32 typedef uint64_t fe_t[LIMB_CNT];
33 typedef uint64_t limb_t;
34
35 #ifdef OPENSSL_NO_ASM
36 #define FIAT_ID_TC26_GOST_3410_2012_512_PARAMSETA_NO_ASM
37 #endif
38
39 #define fe_copy(d, s) memcpy(d, s, sizeof(fe_t))
40 #define fe_set_zero(d) memset(d, 0, sizeof(fe_t))
41
42 #define fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(c, a, b) \
43     fiat_id_tc26_gost_3410_2012_512_paramSetA_add(c, a, b);          \
44     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry(c, c)
45 #define fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(c, a, b) \
46     fiat_id_tc26_gost_3410_2012_512_paramSetA_sub(c, a, b);          \
47     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry(c, c)
48
49 /* Projective points */
50 typedef struct {
51     fe_t X;
52     fe_t Y;
53     fe_t Z;
54 } pt_prj_t;
55
56 /* Affine points */
57 typedef struct {
58     fe_t X;
59     fe_t Y;
60 } pt_aff_t;
61
62 /* BEGIN verbatim fiat code https://github.com/mit-plv/fiat-crypto */
63 /*-
64  * MIT License
65  *
66  * Copyright (c) 2020 the fiat-crypto authors (see the AUTHORS file)
67  *
68  * Permission is hereby granted, free of charge, to any person obtaining a copy
69  * of this software and associated documentation files (the "Software"), to deal
70  * in the Software without restriction, including without limitation the rights
71  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
72  * copies of the Software, and to permit persons to whom the Software is
73  * furnished to do so, subject to the following conditions:
74  *
75  * The above copyright notice and this permission notice shall be included in
76  * all copies or substantial portions of the Software.
77  *
78  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
79  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
80  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
81  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
82  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
83  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
84  * SOFTWARE.
85  */
86
87 /* Autogenerated: unsaturated_solinas --static --use-value-barrier id_tc26_gost_3410_2012_512_paramSetA 64 '(auto)' '2^512 - 569' */
88 /* curve description: id_tc26_gost_3410_2012_512_paramSetA */
89 /* machine_wordsize = 64 (from "64") */
90 /* requested operations: (all) */
91 /* n = 10 (from "(auto)") */
92 /* s-c = 2^512 - [(1, 569)] (from "2^512 - 569") */
93 /* tight_bounds_multiplier = 1 (from "") */
94 /*  */
95 /* Computed values: */
96 /* carry_chain = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1] */
97 /* eval z = z[0] + (z[1] << 52) + (z[2] << 103) + (z[3] << 154) + (z[4] << 205) + (z[5] << 256) + (z[6] << 0x134) + (z[7] << 0x167) + (z[8] << 0x19a) + (z[9] << 0x1cd) */
98 /* bytes_eval z = z[0] + (z[1] << 8) + (z[2] << 16) + (z[3] << 24) + (z[4] << 32) + (z[5] << 40) + (z[6] << 48) + (z[7] << 56) + (z[8] << 64) + (z[9] << 72) + (z[10] << 80) + (z[11] << 88) + (z[12] << 96) + (z[13] << 104) + (z[14] << 112) + (z[15] << 120) + (z[16] << 128) + (z[17] << 136) + (z[18] << 144) + (z[19] << 152) + (z[20] << 160) + (z[21] << 168) + (z[22] << 176) + (z[23] << 184) + (z[24] << 192) + (z[25] << 200) + (z[26] << 208) + (z[27] << 216) + (z[28] << 224) + (z[29] << 232) + (z[30] << 240) + (z[31] << 248) + (z[32] << 256) + (z[33] << 0x108) + (z[34] << 0x110) + (z[35] << 0x118) + (z[36] << 0x120) + (z[37] << 0x128) + (z[38] << 0x130) + (z[39] << 0x138) + (z[40] << 0x140) + (z[41] << 0x148) + (z[42] << 0x150) + (z[43] << 0x158) + (z[44] << 0x160) + (z[45] << 0x168) + (z[46] << 0x170) + (z[47] << 0x178) + (z[48] << 0x180) + (z[49] << 0x188) + (z[50] << 0x190) + (z[51] << 0x198) + (z[52] << 0x1a0) + (z[53] << 0x1a8) + (z[54] << 0x1b0) + (z[55] << 0x1b8) + (z[56] << 0x1c0) + (z[57] << 0x1c8) + (z[58] << 0x1d0) + (z[59] << 0x1d8) + (z[60] << 0x1e0) + (z[61] << 0x1e8) + (z[62] << 0x1f0) + (z[63] << 0x1f8) */
99 /* balance = [0x1ffffffffffb8e, 0xffffffffffffe, 0xffffffffffffe, 0xffffffffffffe, 0xffffffffffffe, 0x1ffffffffffffe, 0xffffffffffffe, 0xffffffffffffe, 0xffffffffffffe, 0xffffffffffffe] */
100
101 #include <stdint.h>
102 typedef unsigned char fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1;
103 typedef signed char fiat_id_tc26_gost_3410_2012_512_paramSetA_int1;
104 typedef signed __int128 fiat_id_tc26_gost_3410_2012_512_paramSetA_int128;
105 typedef unsigned __int128 fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128;
106
107 #if (-1 & 3) != 3
108 #error "This code only works on a two's complement system"
109 #endif
110
111 #if !defined(FIAT_ID_TC26_GOST_3410_2012_512_PARAMSETA_NO_ASM) && \
112     (defined(__GNUC__) || defined(__clang__))
113 static __inline__ uint64_t
114 fiat_id_tc26_gost_3410_2012_512_paramSetA_value_barrier_u64(uint64_t a) {
115     __asm__("" : "+r"(a) : /* no inputs */);
116     return a;
117 }
118 #else
119 #define fiat_id_tc26_gost_3410_2012_512_paramSetA_value_barrier_u64(x) (x)
120 #endif
121
122 /*
123  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u52 is an addition with carry.
124  * Postconditions:
125  *   out1 = (arg1 + arg2 + arg3) mod 2^52
126  *   out2 = ⌊(arg1 + arg2 + arg3) / 2^52⌋
127  *
128  * Input Bounds:
129  *   arg1: [0x0 ~> 0x1]
130  *   arg2: [0x0 ~> 0xfffffffffffff]
131  *   arg3: [0x0 ~> 0xfffffffffffff]
132  * Output Bounds:
133  *   out1: [0x0 ~> 0xfffffffffffff]
134  *   out2: [0x0 ~> 0x1]
135  */
136 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u52(
137     uint64_t *out1, fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 *out2,
138     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 arg1, uint64_t arg2,
139     uint64_t arg3) {
140     uint64_t x1;
141     uint64_t x2;
142     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x3;
143     x1 = ((arg1 + arg2) + arg3);
144     x2 = (x1 & UINT64_C(0xfffffffffffff));
145     x3 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x1 >> 52);
146     *out1 = x2;
147     *out2 = x3;
148 }
149
150 /*
151  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u52 is a subtraction with borrow.
152  * Postconditions:
153  *   out1 = (-arg1 + arg2 + -arg3) mod 2^52
154  *   out2 = -⌊(-arg1 + arg2 + -arg3) / 2^52⌋
155  *
156  * Input Bounds:
157  *   arg1: [0x0 ~> 0x1]
158  *   arg2: [0x0 ~> 0xfffffffffffff]
159  *   arg3: [0x0 ~> 0xfffffffffffff]
160  * Output Bounds:
161  *   out1: [0x0 ~> 0xfffffffffffff]
162  *   out2: [0x0 ~> 0x1]
163  */
164 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u52(
165     uint64_t *out1, fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 *out2,
166     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 arg1, uint64_t arg2,
167     uint64_t arg3) {
168     int64_t x1;
169     fiat_id_tc26_gost_3410_2012_512_paramSetA_int1 x2;
170     uint64_t x3;
171     x1 = ((int64_t)(arg2 - (int64_t)arg1) - (int64_t)arg3);
172     x2 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_int1)(x1 >> 52);
173     x3 = (x1 & UINT64_C(0xfffffffffffff));
174     *out1 = x3;
175     *out2 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(0x0 - x2);
176 }
177
178 /*
179  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u51 is an addition with carry.
180  * Postconditions:
181  *   out1 = (arg1 + arg2 + arg3) mod 2^51
182  *   out2 = ⌊(arg1 + arg2 + arg3) / 2^51⌋
183  *
184  * Input Bounds:
185  *   arg1: [0x0 ~> 0x1]
186  *   arg2: [0x0 ~> 0x7ffffffffffff]
187  *   arg3: [0x0 ~> 0x7ffffffffffff]
188  * Output Bounds:
189  *   out1: [0x0 ~> 0x7ffffffffffff]
190  *   out2: [0x0 ~> 0x1]
191  */
192 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u51(
193     uint64_t *out1, fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 *out2,
194     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 arg1, uint64_t arg2,
195     uint64_t arg3) {
196     uint64_t x1;
197     uint64_t x2;
198     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x3;
199     x1 = ((arg1 + arg2) + arg3);
200     x2 = (x1 & UINT64_C(0x7ffffffffffff));
201     x3 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x1 >> 51);
202     *out1 = x2;
203     *out2 = x3;
204 }
205
206 /*
207  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u51 is a subtraction with borrow.
208  * Postconditions:
209  *   out1 = (-arg1 + arg2 + -arg3) mod 2^51
210  *   out2 = -⌊(-arg1 + arg2 + -arg3) / 2^51⌋
211  *
212  * Input Bounds:
213  *   arg1: [0x0 ~> 0x1]
214  *   arg2: [0x0 ~> 0x7ffffffffffff]
215  *   arg3: [0x0 ~> 0x7ffffffffffff]
216  * Output Bounds:
217  *   out1: [0x0 ~> 0x7ffffffffffff]
218  *   out2: [0x0 ~> 0x1]
219  */
220 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u51(
221     uint64_t *out1, fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 *out2,
222     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 arg1, uint64_t arg2,
223     uint64_t arg3) {
224     int64_t x1;
225     fiat_id_tc26_gost_3410_2012_512_paramSetA_int1 x2;
226     uint64_t x3;
227     x1 = ((int64_t)(arg2 - (int64_t)arg1) - (int64_t)arg3);
228     x2 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_int1)(x1 >> 51);
229     x3 = (x1 & UINT64_C(0x7ffffffffffff));
230     *out1 = x3;
231     *out2 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(0x0 - x2);
232 }
233
234 /*
235  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u64 is a single-word conditional move.
236  * Postconditions:
237  *   out1 = (if arg1 = 0 then arg2 else arg3)
238  *
239  * Input Bounds:
240  *   arg1: [0x0 ~> 0x1]
241  *   arg2: [0x0 ~> 0xffffffffffffffff]
242  *   arg3: [0x0 ~> 0xffffffffffffffff]
243  * Output Bounds:
244  *   out1: [0x0 ~> 0xffffffffffffffff]
245  */
246 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u64(
247     uint64_t *out1, fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 arg1,
248     uint64_t arg2, uint64_t arg3) {
249     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x1;
250     uint64_t x2;
251     uint64_t x3;
252     x1 = (!(!arg1));
253     x2 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_int1)(0x0 - x1) &
254           UINT64_C(0xffffffffffffffff));
255     x3 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_value_barrier_u64(x2) &
256            arg3) |
257           (fiat_id_tc26_gost_3410_2012_512_paramSetA_value_barrier_u64((~x2)) &
258            arg2));
259     *out1 = x3;
260 }
261
262 /*
263  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul multiplies two field elements and reduces the result.
264  * Postconditions:
265  *   eval out1 mod m = (eval arg1 * eval arg2) mod m
266  *
267  * Input Bounds:
268  *   arg1: [[0x0 ~> 0x30000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x30000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000]]
269  *   arg2: [[0x0 ~> 0x30000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x30000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000]]
270  * Output Bounds:
271  *   out1: [[0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000]]
272  */
273 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(
274     uint64_t out1[10], const uint64_t arg1[10], const uint64_t arg2[10]) {
275     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x1;
276     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x2;
277     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x3;
278     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x4;
279     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x5;
280     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x6;
281     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x7;
282     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x8;
283     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x9;
284     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x10;
285     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x11;
286     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x12;
287     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x13;
288     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x14;
289     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x15;
290     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x16;
291     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x17;
292     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x18;
293     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x19;
294     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x20;
295     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x21;
296     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x22;
297     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x23;
298     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x24;
299     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x25;
300     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x26;
301     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x27;
302     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x28;
303     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x29;
304     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x30;
305     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x31;
306     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x32;
307     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x33;
308     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x34;
309     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x35;
310     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x36;
311     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x37;
312     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x38;
313     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x39;
314     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x40;
315     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x41;
316     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x42;
317     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x43;
318     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x44;
319     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x45;
320     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x46;
321     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x47;
322     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x48;
323     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x49;
324     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x50;
325     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x51;
326     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x52;
327     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x53;
328     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x54;
329     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x55;
330     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x56;
331     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x57;
332     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x58;
333     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x59;
334     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x60;
335     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x61;
336     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x62;
337     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x63;
338     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x64;
339     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x65;
340     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x66;
341     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x67;
342     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x68;
343     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x69;
344     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x70;
345     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x71;
346     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x72;
347     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x73;
348     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x74;
349     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x75;
350     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x76;
351     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x77;
352     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x78;
353     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x79;
354     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x80;
355     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x81;
356     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x82;
357     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x83;
358     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x84;
359     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x85;
360     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x86;
361     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x87;
362     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x88;
363     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x89;
364     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x90;
365     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x91;
366     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x92;
367     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x93;
368     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x94;
369     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x95;
370     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x96;
371     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x97;
372     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x98;
373     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x99;
374     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x100;
375     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x101;
376     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x102;
377     uint64_t x103;
378     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x104;
379     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x105;
380     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x106;
381     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x107;
382     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x108;
383     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x109;
384     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x110;
385     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x111;
386     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x112;
387     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x113;
388     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x114;
389     uint64_t x115;
390     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x116;
391     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x117;
392     uint64_t x118;
393     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x119;
394     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x120;
395     uint64_t x121;
396     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x122;
397     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x123;
398     uint64_t x124;
399     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x125;
400     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x126;
401     uint64_t x127;
402     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x128;
403     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x129;
404     uint64_t x130;
405     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x131;
406     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x132;
407     uint64_t x133;
408     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x134;
409     uint64_t x135;
410     uint64_t x136;
411     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x137;
412     uint64_t x138;
413     uint64_t x139;
414     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x140;
415     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x141;
416     uint64_t x142;
417     uint64_t x143;
418     uint64_t x144;
419     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x145;
420     uint64_t x146;
421     uint64_t x147;
422     x1 = (UINT16_C(0x239) *
423           ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[9]) *
424            (arg2[9])));
425     x2 = (UINT16_C(0x239) *
426           ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[9]) *
427            (arg2[8])));
428     x3 = (UINT16_C(0x239) *
429           ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[9]) *
430            (arg2[7])));
431     x4 = (UINT16_C(0x239) *
432           (((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[9]) *
433             (arg2[6])) *
434            0x2));
435     x5 = (UINT16_C(0x239) *
436           ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[9]) *
437            (arg2[5])));
438     x6 = (UINT16_C(0x239) *
439           ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[9]) *
440            (arg2[4])));
441     x7 = (UINT16_C(0x239) *
442           ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[9]) *
443            (arg2[3])));
444     x8 = (UINT16_C(0x239) *
445           ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[9]) *
446            (arg2[2])));
447     x9 = (UINT16_C(0x239) *
448           (((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[9]) *
449             (arg2[1])) *
450            0x2));
451     x10 = (UINT16_C(0x239) *
452            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[8]) *
453             (arg2[9])));
454     x11 = (UINT16_C(0x239) *
455            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[8]) *
456             (arg2[8])));
457     x12 = (UINT16_C(0x239) *
458            (((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[8]) *
459              (arg2[7])) *
460             0x2));
461     x13 = (UINT16_C(0x239) *
462            (((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[8]) *
463              (arg2[6])) *
464             0x2));
465     x14 = (UINT16_C(0x239) *
466            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[8]) *
467             (arg2[5])));
468     x15 = (UINT16_C(0x239) *
469            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[8]) *
470             (arg2[4])));
471     x16 = (UINT16_C(0x239) *
472            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[8]) *
473             (arg2[3])));
474     x17 = (UINT16_C(0x239) *
475            (((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[8]) *
476              (arg2[2])) *
477             0x2));
478     x18 = (UINT16_C(0x239) *
479            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[7]) *
480             (arg2[9])));
481     x19 = (UINT16_C(0x239) *
482            (((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[7]) *
483              (arg2[8])) *
484             0x2));
485     x20 = (UINT16_C(0x239) *
486            (((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[7]) *
487              (arg2[7])) *
488             0x2));
489     x21 = (UINT16_C(0x239) *
490            (((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[7]) *
491              (arg2[6])) *
492             0x2));
493     x22 = (UINT16_C(0x239) *
494            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[7]) *
495             (arg2[5])));
496     x23 = (UINT16_C(0x239) *
497            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[7]) *
498             (arg2[4])));
499     x24 = (UINT16_C(0x239) *
500            (((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[7]) *
501              (arg2[3])) *
502             0x2));
503     x25 = (UINT16_C(0x239) *
504            (((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[6]) *
505              (arg2[9])) *
506             0x2));
507     x26 = (UINT16_C(0x239) *
508            (((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[6]) *
509              (arg2[8])) *
510             0x2));
511     x27 = (UINT16_C(0x239) *
512            (((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[6]) *
513              (arg2[7])) *
514             0x2));
515     x28 = (UINT16_C(0x239) *
516            (((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[6]) *
517              (arg2[6])) *
518             0x2));
519     x29 = (UINT16_C(0x239) *
520            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[6]) *
521             (arg2[5])));
522     x30 = (UINT16_C(0x239) *
523            (((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[6]) *
524              (arg2[4])) *
525             0x2));
526     x31 = (UINT16_C(0x239) *
527            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[5]) *
528             (arg2[9])));
529     x32 = (UINT16_C(0x239) *
530            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[5]) *
531             (arg2[8])));
532     x33 = (UINT16_C(0x239) *
533            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[5]) *
534             (arg2[7])));
535     x34 = (UINT16_C(0x239) *
536            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[5]) *
537             (arg2[6])));
538     x35 = (UINT16_C(0x239) *
539            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[5]) *
540             (arg2[5])));
541     x36 = (UINT16_C(0x239) *
542            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[4]) *
543             (arg2[9])));
544     x37 = (UINT16_C(0x239) *
545            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[4]) *
546             (arg2[8])));
547     x38 = (UINT16_C(0x239) *
548            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[4]) *
549             (arg2[7])));
550     x39 = (UINT16_C(0x239) *
551            (((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[4]) *
552              (arg2[6])) *
553             0x2));
554     x40 = (UINT16_C(0x239) *
555            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[3]) *
556             (arg2[9])));
557     x41 = (UINT16_C(0x239) *
558            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[3]) *
559             (arg2[8])));
560     x42 = (UINT16_C(0x239) *
561            (((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[3]) *
562              (arg2[7])) *
563             0x2));
564     x43 = (UINT16_C(0x239) *
565            ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[2]) *
566             (arg2[9])));
567     x44 = (UINT16_C(0x239) *
568            (((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[2]) *
569              (arg2[8])) *
570             0x2));
571     x45 = (UINT16_C(0x239) *
572            (((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) *
573              (arg2[9])) *
574             0x2));
575     x46 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[9]) *
576            (arg2[0]));
577     x47 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[8]) *
578            ((arg2[1]) * 0x2));
579     x48 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[8]) *
580            (arg2[0]));
581     x49 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[7]) *
582            ((arg2[2]) * 0x2));
583     x50 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[7]) *
584            ((arg2[1]) * 0x2));
585     x51 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[7]) *
586            (arg2[0]));
587     x52 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[6]) *
588            ((arg2[3]) * 0x2));
589     x53 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[6]) *
590            ((arg2[2]) * 0x2));
591     x54 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[6]) *
592            ((arg2[1]) * 0x2));
593     x55 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[6]) *
594            (arg2[0]));
595     x56 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[5]) *
596            (arg2[4]));
597     x57 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[5]) *
598            (arg2[3]));
599     x58 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[5]) *
600            (arg2[2]));
601     x59 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[5]) *
602            (arg2[1]));
603     x60 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[5]) *
604            (arg2[0]));
605     x61 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[4]) *
606            (arg2[5]));
607     x62 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[4]) *
608            (arg2[4]));
609     x63 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[4]) *
610            (arg2[3]));
611     x64 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[4]) *
612            (arg2[2]));
613     x65 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[4]) *
614            ((arg2[1]) * 0x2));
615     x66 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[4]) *
616            (arg2[0]));
617     x67 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[3]) *
618            ((arg2[6]) * 0x2));
619     x68 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[3]) *
620            (arg2[5]));
621     x69 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[3]) *
622            (arg2[4]));
623     x70 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[3]) *
624            (arg2[3]));
625     x71 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[3]) *
626            ((arg2[2]) * 0x2));
627     x72 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[3]) *
628            ((arg2[1]) * 0x2));
629     x73 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[3]) *
630            (arg2[0]));
631     x74 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[2]) *
632            ((arg2[7]) * 0x2));
633     x75 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[2]) *
634            ((arg2[6]) * 0x2));
635     x76 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[2]) *
636            (arg2[5]));
637     x77 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[2]) *
638            (arg2[4]));
639     x78 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[2]) *
640            ((arg2[3]) * 0x2));
641     x79 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[2]) *
642            ((arg2[2]) * 0x2));
643     x80 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[2]) *
644            ((arg2[1]) * 0x2));
645     x81 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[2]) *
646            (arg2[0]));
647     x82 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) *
648            ((arg2[8]) * 0x2));
649     x83 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) *
650            ((arg2[7]) * 0x2));
651     x84 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) *
652            ((arg2[6]) * 0x2));
653     x85 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) *
654            (arg2[5]));
655     x86 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) *
656            ((arg2[4]) * 0x2));
657     x87 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) *
658            ((arg2[3]) * 0x2));
659     x88 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) *
660            ((arg2[2]) * 0x2));
661     x89 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) *
662            ((arg2[1]) * 0x2));
663     x90 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) *
664            (arg2[0]));
665     x91 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) *
666            (arg2[9]));
667     x92 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) *
668            (arg2[8]));
669     x93 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) *
670            (arg2[7]));
671     x94 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) *
672            (arg2[6]));
673     x95 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) *
674            (arg2[5]));
675     x96 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) *
676            (arg2[4]));
677     x97 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) *
678            (arg2[3]));
679     x98 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) *
680            (arg2[2]));
681     x99 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) *
682            (arg2[1]));
683     x100 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) *
684             (arg2[0]));
685     x101 = (x100 +
686             (x45 + (x44 + (x42 + (x39 + (x35 + (x30 + (x24 + (x17 + x9)))))))));
687     x102 = (x101 >> 52);
688     x103 = (uint64_t)(x101 & UINT64_C(0xfffffffffffff));
689     x104 =
690         (x91 +
691          (x82 + (x74 + (x67 + (x61 + (x56 + (x52 + (x49 + (x47 + x46)))))))));
692     x105 = (x92 +
693             (x83 + (x75 + (x68 + (x62 + (x57 + (x53 + (x50 + (x48 + x1)))))))));
694     x106 = (x93 +
695             (x84 + (x76 + (x69 + (x63 + (x58 + (x54 + (x51 + (x10 + x2)))))))));
696     x107 = (x94 +
697             (x85 + (x77 + (x70 + (x64 + (x59 + (x55 + (x18 + (x11 + x3)))))))));
698     x108 = (x95 +
699             (x86 + (x78 + (x71 + (x65 + (x60 + (x25 + (x19 + (x12 + x4)))))))));
700     x109 = (x96 +
701             (x87 + (x79 + (x72 + (x66 + (x31 + (x26 + (x20 + (x13 + x5)))))))));
702     x110 = (x97 +
703             (x88 + (x80 + (x73 + (x36 + (x32 + (x27 + (x21 + (x14 + x6)))))))));
704     x111 = (x98 +
705             (x89 + (x81 + (x40 + (x37 + (x33 + (x28 + (x22 + (x15 + x7)))))))));
706     x112 = (x99 +
707             (x90 + (x43 + (x41 + (x38 + (x34 + (x29 + (x23 + (x16 + x8)))))))));
708     x113 = (x102 + x112);
709     x114 = (x113 >> 51);
710     x115 = (uint64_t)(x113 & UINT64_C(0x7ffffffffffff));
711     x116 = (x114 + x111);
712     x117 = (x116 >> 51);
713     x118 = (uint64_t)(x116 & UINT64_C(0x7ffffffffffff));
714     x119 = (x117 + x110);
715     x120 = (x119 >> 51);
716     x121 = (uint64_t)(x119 & UINT64_C(0x7ffffffffffff));
717     x122 = (x120 + x109);
718     x123 = (x122 >> 51);
719     x124 = (uint64_t)(x122 & UINT64_C(0x7ffffffffffff));
720     x125 = (x123 + x108);
721     x126 = (x125 >> 52);
722     x127 = (uint64_t)(x125 & UINT64_C(0xfffffffffffff));
723     x128 = (x126 + x107);
724     x129 = (x128 >> 51);
725     x130 = (uint64_t)(x128 & UINT64_C(0x7ffffffffffff));
726     x131 = (x129 + x106);
727     x132 = (x131 >> 51);
728     x133 = (uint64_t)(x131 & UINT64_C(0x7ffffffffffff));
729     x134 = (x132 + x105);
730     x135 = (uint64_t)(x134 >> 51);
731     x136 = (uint64_t)(x134 & UINT64_C(0x7ffffffffffff));
732     x137 = (x135 + x104);
733     x138 = (uint64_t)(x137 >> 51);
734     x139 = (uint64_t)(x137 & UINT64_C(0x7ffffffffffff));
735     x140 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)UINT16_C(0x239) *
736             x138);
737     x141 = (x103 + x140);
738     x142 = (uint64_t)(x141 >> 52);
739     x143 = (uint64_t)(x141 & UINT64_C(0xfffffffffffff));
740     x144 = (x142 + x115);
741     x145 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x144 >> 51);
742     x146 = (x144 & UINT64_C(0x7ffffffffffff));
743     x147 = (x145 + x118);
744     out1[0] = x143;
745     out1[1] = x146;
746     out1[2] = x147;
747     out1[3] = x121;
748     out1[4] = x124;
749     out1[5] = x127;
750     out1[6] = x130;
751     out1[7] = x133;
752     out1[8] = x136;
753     out1[9] = x139;
754 }
755
756 /*
757  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square squares a field element and reduces the result.
758  * Postconditions:
759  *   eval out1 mod m = (eval arg1 * eval arg1) mod m
760  *
761  * Input Bounds:
762  *   arg1: [[0x0 ~> 0x30000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x30000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000]]
763  * Output Bounds:
764  *   out1: [[0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000]]
765  */
766 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(
767     uint64_t out1[10], const uint64_t arg1[10]) {
768     uint64_t x1;
769     uint64_t x2;
770     uint64_t x3;
771     uint64_t x4;
772     uint64_t x5;
773     uint64_t x6;
774     uint64_t x7;
775     uint64_t x8;
776     uint64_t x9;
777     uint64_t x10;
778     uint64_t x11;
779     uint64_t x12;
780     uint64_t x13;
781     uint64_t x14;
782     uint64_t x15;
783     uint64_t x16;
784     uint64_t x17;
785     uint64_t x18;
786     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x19;
787     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x20;
788     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x21;
789     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x22;
790     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x23;
791     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x24;
792     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x25;
793     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x26;
794     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x27;
795     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x28;
796     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x29;
797     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x30;
798     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x31;
799     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x32;
800     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x33;
801     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x34;
802     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x35;
803     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x36;
804     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x37;
805     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x38;
806     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x39;
807     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x40;
808     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x41;
809     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x42;
810     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x43;
811     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x44;
812     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x45;
813     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x46;
814     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x47;
815     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x48;
816     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x49;
817     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x50;
818     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x51;
819     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x52;
820     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x53;
821     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x54;
822     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x55;
823     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x56;
824     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x57;
825     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x58;
826     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x59;
827     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x60;
828     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x61;
829     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x62;
830     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x63;
831     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x64;
832     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x65;
833     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x66;
834     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x67;
835     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x68;
836     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x69;
837     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x70;
838     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x71;
839     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x72;
840     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x73;
841     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x74;
842     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x75;
843     uint64_t x76;
844     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x77;
845     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x78;
846     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x79;
847     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x80;
848     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x81;
849     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x82;
850     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x83;
851     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x84;
852     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x85;
853     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x86;
854     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x87;
855     uint64_t x88;
856     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x89;
857     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x90;
858     uint64_t x91;
859     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x92;
860     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x93;
861     uint64_t x94;
862     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x95;
863     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x96;
864     uint64_t x97;
865     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x98;
866     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x99;
867     uint64_t x100;
868     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x101;
869     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x102;
870     uint64_t x103;
871     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x104;
872     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x105;
873     uint64_t x106;
874     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x107;
875     uint64_t x108;
876     uint64_t x109;
877     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x110;
878     uint64_t x111;
879     uint64_t x112;
880     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x113;
881     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128 x114;
882     uint64_t x115;
883     uint64_t x116;
884     uint64_t x117;
885     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x118;
886     uint64_t x119;
887     uint64_t x120;
888     x1 = ((arg1[9]) * UINT16_C(0x239));
889     x2 = (x1 * 0x2);
890     x3 = ((arg1[9]) * 0x2);
891     x4 = ((arg1[8]) * UINT16_C(0x239));
892     x5 = (x4 * 0x2);
893     x6 = ((arg1[8]) * 0x2);
894     x7 = ((arg1[7]) * UINT16_C(0x239));
895     x8 = (x7 * 0x2);
896     x9 = ((arg1[7]) * 0x2);
897     x10 = ((arg1[6]) * UINT16_C(0x239));
898     x11 = (x10 * 0x2);
899     x12 = ((arg1[6]) * 0x2);
900     x13 = ((arg1[5]) * UINT16_C(0x239));
901     x14 = ((arg1[5]) * 0x2);
902     x15 = ((arg1[4]) * 0x2);
903     x16 = ((arg1[3]) * 0x2);
904     x17 = ((arg1[2]) * 0x2);
905     x18 = ((arg1[1]) * 0x2);
906     x19 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[9]) * x1);
907     x20 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[8]) * x2);
908     x21 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[8]) * x4);
909     x22 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[7]) * x2);
910     x23 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[7]) *
911            (x5 * 0x2));
912     x24 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[7]) *
913            (x7 * 0x2));
914     x25 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[6]) *
915            (x2 * 0x2));
916     x26 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[6]) *
917            (x5 * 0x2));
918     x27 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[6]) *
919            (x8 * 0x2));
920     x28 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[6]) *
921            (x10 * 0x2));
922     x29 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[5]) * x2);
923     x30 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[5]) * x5);
924     x31 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[5]) * x8);
925     x32 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[5]) * x11);
926     x33 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[5]) * x13);
927     x34 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[4]) * x2);
928     x35 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[4]) * x5);
929     x36 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[4]) * x8);
930     x37 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[4]) *
931            (x11 * 0x2));
932     x38 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[4]) * x14);
933     x39 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[4]) *
934            (arg1[4]));
935     x40 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[3]) * x2);
936     x41 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[3]) * x5);
937     x42 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[3]) *
938            (x8 * 0x2));
939     x43 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[3]) *
940            (x12 * 0x2));
941     x44 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[3]) * x14);
942     x45 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[3]) * x15);
943     x46 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[3]) *
944            (arg1[3]));
945     x47 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[2]) * x2);
946     x48 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[2]) *
947            (x5 * 0x2));
948     x49 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[2]) *
949            (x9 * 0x2));
950     x50 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[2]) *
951            (x12 * 0x2));
952     x51 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[2]) * x14);
953     x52 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[2]) * x15);
954     x53 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[2]) *
955            (x16 * 0x2));
956     x54 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[2]) *
957            ((arg1[2]) * 0x2));
958     x55 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) *
959            (x2 * 0x2));
960     x56 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) *
961            (x6 * 0x2));
962     x57 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) *
963            (x9 * 0x2));
964     x58 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) *
965            (x12 * 0x2));
966     x59 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) * x14);
967     x60 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) *
968            (x15 * 0x2));
969     x61 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) *
970            (x16 * 0x2));
971     x62 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) *
972            (x17 * 0x2));
973     x63 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[1]) *
974            ((arg1[1]) * 0x2));
975     x64 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) * x3);
976     x65 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) * x6);
977     x66 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) * x9);
978     x67 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) * x12);
979     x68 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) * x14);
980     x69 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) * x15);
981     x70 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) * x16);
982     x71 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) * x17);
983     x72 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) * x18);
984     x73 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)(arg1[0]) *
985            (arg1[0]));
986     x74 = (x73 + (x55 + (x48 + (x42 + (x37 + x33)))));
987     x75 = (x74 >> 52);
988     x76 = (uint64_t)(x74 & UINT64_C(0xfffffffffffff));
989     x77 = (x64 + (x56 + (x49 + (x43 + x38))));
990     x78 = (x65 + (x57 + (x50 + (x44 + (x39 + x19)))));
991     x79 = (x66 + (x58 + (x51 + (x45 + x20))));
992     x80 = (x67 + (x59 + (x52 + (x46 + (x22 + x21)))));
993     x81 = (x68 + (x60 + (x53 + (x25 + x23))));
994     x82 = (x69 + (x61 + (x54 + (x29 + (x26 + x24)))));
995     x83 = (x70 + (x62 + (x34 + (x30 + x27))));
996     x84 = (x71 + (x63 + (x40 + (x35 + (x31 + x28)))));
997     x85 = (x72 + (x47 + (x41 + (x36 + x32))));
998     x86 = (x75 + x85);
999     x87 = (x86 >> 51);
1000     x88 = (uint64_t)(x86 & UINT64_C(0x7ffffffffffff));
1001     x89 = (x87 + x84);
1002     x90 = (x89 >> 51);
1003     x91 = (uint64_t)(x89 & UINT64_C(0x7ffffffffffff));
1004     x92 = (x90 + x83);
1005     x93 = (x92 >> 51);
1006     x94 = (uint64_t)(x92 & UINT64_C(0x7ffffffffffff));
1007     x95 = (x93 + x82);
1008     x96 = (x95 >> 51);
1009     x97 = (uint64_t)(x95 & UINT64_C(0x7ffffffffffff));
1010     x98 = (x96 + x81);
1011     x99 = (x98 >> 52);
1012     x100 = (uint64_t)(x98 & UINT64_C(0xfffffffffffff));
1013     x101 = (x99 + x80);
1014     x102 = (x101 >> 51);
1015     x103 = (uint64_t)(x101 & UINT64_C(0x7ffffffffffff));
1016     x104 = (x102 + x79);
1017     x105 = (x104 >> 51);
1018     x106 = (uint64_t)(x104 & UINT64_C(0x7ffffffffffff));
1019     x107 = (x105 + x78);
1020     x108 = (uint64_t)(x107 >> 51);
1021     x109 = (uint64_t)(x107 & UINT64_C(0x7ffffffffffff));
1022     x110 = (x108 + x77);
1023     x111 = (uint64_t)(x110 >> 51);
1024     x112 = (uint64_t)(x110 & UINT64_C(0x7ffffffffffff));
1025     x113 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint128)UINT16_C(0x239) *
1026             x111);
1027     x114 = (x76 + x113);
1028     x115 = (uint64_t)(x114 >> 52);
1029     x116 = (uint64_t)(x114 & UINT64_C(0xfffffffffffff));
1030     x117 = (x115 + x88);
1031     x118 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x117 >> 51);
1032     x119 = (x117 & UINT64_C(0x7ffffffffffff));
1033     x120 = (x118 + x91);
1034     out1[0] = x116;
1035     out1[1] = x119;
1036     out1[2] = x120;
1037     out1[3] = x94;
1038     out1[4] = x97;
1039     out1[5] = x100;
1040     out1[6] = x103;
1041     out1[7] = x106;
1042     out1[8] = x109;
1043     out1[9] = x112;
1044 }
1045
1046 /*
1047  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_carry reduces a field element.
1048  * Postconditions:
1049  *   eval out1 mod m = eval arg1 mod m
1050  *
1051  * Input Bounds:
1052  *   arg1: [[0x0 ~> 0x30000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x30000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000]]
1053  * Output Bounds:
1054  *   out1: [[0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000]]
1055  */
1056 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_carry(
1057     uint64_t out1[10], const uint64_t arg1[10]) {
1058     uint64_t x1;
1059     uint64_t x2;
1060     uint64_t x3;
1061     uint64_t x4;
1062     uint64_t x5;
1063     uint64_t x6;
1064     uint64_t x7;
1065     uint64_t x8;
1066     uint64_t x9;
1067     uint64_t x10;
1068     uint64_t x11;
1069     uint64_t x12;
1070     uint64_t x13;
1071     uint64_t x14;
1072     uint64_t x15;
1073     uint64_t x16;
1074     uint64_t x17;
1075     uint64_t x18;
1076     uint64_t x19;
1077     uint64_t x20;
1078     uint64_t x21;
1079     uint64_t x22;
1080     x1 = (arg1[0]);
1081     x2 = ((x1 >> 52) + (arg1[1]));
1082     x3 = ((x2 >> 51) + (arg1[2]));
1083     x4 = ((x3 >> 51) + (arg1[3]));
1084     x5 = ((x4 >> 51) + (arg1[4]));
1085     x6 = ((x5 >> 51) + (arg1[5]));
1086     x7 = ((x6 >> 52) + (arg1[6]));
1087     x8 = ((x7 >> 51) + (arg1[7]));
1088     x9 = ((x8 >> 51) + (arg1[8]));
1089     x10 = ((x9 >> 51) + (arg1[9]));
1090     x11 = ((x1 & UINT64_C(0xfffffffffffff)) + (UINT16_C(0x239) * (x10 >> 51)));
1091     x12 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x11 >> 52) +
1092            (x2 & UINT64_C(0x7ffffffffffff)));
1093     x13 = (x11 & UINT64_C(0xfffffffffffff));
1094     x14 = (x12 & UINT64_C(0x7ffffffffffff));
1095     x15 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x12 >> 51) +
1096            (x3 & UINT64_C(0x7ffffffffffff)));
1097     x16 = (x4 & UINT64_C(0x7ffffffffffff));
1098     x17 = (x5 & UINT64_C(0x7ffffffffffff));
1099     x18 = (x6 & UINT64_C(0xfffffffffffff));
1100     x19 = (x7 & UINT64_C(0x7ffffffffffff));
1101     x20 = (x8 & UINT64_C(0x7ffffffffffff));
1102     x21 = (x9 & UINT64_C(0x7ffffffffffff));
1103     x22 = (x10 & UINT64_C(0x7ffffffffffff));
1104     out1[0] = x13;
1105     out1[1] = x14;
1106     out1[2] = x15;
1107     out1[3] = x16;
1108     out1[4] = x17;
1109     out1[5] = x18;
1110     out1[6] = x19;
1111     out1[7] = x20;
1112     out1[8] = x21;
1113     out1[9] = x22;
1114 }
1115
1116 /*
1117  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_add adds two field elements.
1118  * Postconditions:
1119  *   eval out1 mod m = (eval arg1 + eval arg2) mod m
1120  *
1121  * Input Bounds:
1122  *   arg1: [[0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000]]
1123  *   arg2: [[0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000]]
1124  * Output Bounds:
1125  *   out1: [[0x0 ~> 0x30000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x30000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000]]
1126  */
1127 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_add(
1128     uint64_t out1[10], const uint64_t arg1[10], const uint64_t arg2[10]) {
1129     uint64_t x1;
1130     uint64_t x2;
1131     uint64_t x3;
1132     uint64_t x4;
1133     uint64_t x5;
1134     uint64_t x6;
1135     uint64_t x7;
1136     uint64_t x8;
1137     uint64_t x9;
1138     uint64_t x10;
1139     x1 = ((arg1[0]) + (arg2[0]));
1140     x2 = ((arg1[1]) + (arg2[1]));
1141     x3 = ((arg1[2]) + (arg2[2]));
1142     x4 = ((arg1[3]) + (arg2[3]));
1143     x5 = ((arg1[4]) + (arg2[4]));
1144     x6 = ((arg1[5]) + (arg2[5]));
1145     x7 = ((arg1[6]) + (arg2[6]));
1146     x8 = ((arg1[7]) + (arg2[7]));
1147     x9 = ((arg1[8]) + (arg2[8]));
1148     x10 = ((arg1[9]) + (arg2[9]));
1149     out1[0] = x1;
1150     out1[1] = x2;
1151     out1[2] = x3;
1152     out1[3] = x4;
1153     out1[4] = x5;
1154     out1[5] = x6;
1155     out1[6] = x7;
1156     out1[7] = x8;
1157     out1[8] = x9;
1158     out1[9] = x10;
1159 }
1160
1161 /*
1162  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_sub subtracts two field elements.
1163  * Postconditions:
1164  *   eval out1 mod m = (eval arg1 - eval arg2) mod m
1165  *
1166  * Input Bounds:
1167  *   arg1: [[0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000]]
1168  *   arg2: [[0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000]]
1169  * Output Bounds:
1170  *   out1: [[0x0 ~> 0x30000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x30000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000]]
1171  */
1172 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_sub(
1173     uint64_t out1[10], const uint64_t arg1[10], const uint64_t arg2[10]) {
1174     uint64_t x1;
1175     uint64_t x2;
1176     uint64_t x3;
1177     uint64_t x4;
1178     uint64_t x5;
1179     uint64_t x6;
1180     uint64_t x7;
1181     uint64_t x8;
1182     uint64_t x9;
1183     uint64_t x10;
1184     x1 = ((UINT64_C(0x1ffffffffffb8e) + (arg1[0])) - (arg2[0]));
1185     x2 = ((UINT64_C(0xffffffffffffe) + (arg1[1])) - (arg2[1]));
1186     x3 = ((UINT64_C(0xffffffffffffe) + (arg1[2])) - (arg2[2]));
1187     x4 = ((UINT64_C(0xffffffffffffe) + (arg1[3])) - (arg2[3]));
1188     x5 = ((UINT64_C(0xffffffffffffe) + (arg1[4])) - (arg2[4]));
1189     x6 = ((UINT64_C(0x1ffffffffffffe) + (arg1[5])) - (arg2[5]));
1190     x7 = ((UINT64_C(0xffffffffffffe) + (arg1[6])) - (arg2[6]));
1191     x8 = ((UINT64_C(0xffffffffffffe) + (arg1[7])) - (arg2[7]));
1192     x9 = ((UINT64_C(0xffffffffffffe) + (arg1[8])) - (arg2[8]));
1193     x10 = ((UINT64_C(0xffffffffffffe) + (arg1[9])) - (arg2[9]));
1194     out1[0] = x1;
1195     out1[1] = x2;
1196     out1[2] = x3;
1197     out1[3] = x4;
1198     out1[4] = x5;
1199     out1[5] = x6;
1200     out1[6] = x7;
1201     out1[7] = x8;
1202     out1[8] = x9;
1203     out1[9] = x10;
1204 }
1205
1206 /*
1207  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_opp negates a field element.
1208  * Postconditions:
1209  *   eval out1 mod m = -eval arg1 mod m
1210  *
1211  * Input Bounds:
1212  *   arg1: [[0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000]]
1213  * Output Bounds:
1214  *   out1: [[0x0 ~> 0x30000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x30000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000], [0x0 ~> 0x18000000000000]]
1215  */
1216 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_opp(
1217     uint64_t out1[10], const uint64_t arg1[10]) {
1218     uint64_t x1;
1219     uint64_t x2;
1220     uint64_t x3;
1221     uint64_t x4;
1222     uint64_t x5;
1223     uint64_t x6;
1224     uint64_t x7;
1225     uint64_t x8;
1226     uint64_t x9;
1227     uint64_t x10;
1228     x1 = (UINT64_C(0x1ffffffffffb8e) - (arg1[0]));
1229     x2 = (UINT64_C(0xffffffffffffe) - (arg1[1]));
1230     x3 = (UINT64_C(0xffffffffffffe) - (arg1[2]));
1231     x4 = (UINT64_C(0xffffffffffffe) - (arg1[3]));
1232     x5 = (UINT64_C(0xffffffffffffe) - (arg1[4]));
1233     x6 = (UINT64_C(0x1ffffffffffffe) - (arg1[5]));
1234     x7 = (UINT64_C(0xffffffffffffe) - (arg1[6]));
1235     x8 = (UINT64_C(0xffffffffffffe) - (arg1[7]));
1236     x9 = (UINT64_C(0xffffffffffffe) - (arg1[8]));
1237     x10 = (UINT64_C(0xffffffffffffe) - (arg1[9]));
1238     out1[0] = x1;
1239     out1[1] = x2;
1240     out1[2] = x3;
1241     out1[3] = x4;
1242     out1[4] = x5;
1243     out1[5] = x6;
1244     out1[6] = x7;
1245     out1[7] = x8;
1246     out1[8] = x9;
1247     out1[9] = x10;
1248 }
1249
1250 /*
1251  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz is a multi-limb conditional select.
1252  * Postconditions:
1253  *   eval out1 = (if arg1 = 0 then eval arg2 else eval arg3)
1254  *
1255  * Input Bounds:
1256  *   arg1: [0x0 ~> 0x1]
1257  *   arg2: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]]
1258  *   arg3: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]]
1259  * Output Bounds:
1260  *   out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]]
1261  */
1262 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(
1263     uint64_t out1[10], fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 arg1,
1264     const uint64_t arg2[10], const uint64_t arg3[10]) {
1265     uint64_t x1;
1266     uint64_t x2;
1267     uint64_t x3;
1268     uint64_t x4;
1269     uint64_t x5;
1270     uint64_t x6;
1271     uint64_t x7;
1272     uint64_t x8;
1273     uint64_t x9;
1274     uint64_t x10;
1275     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u64(&x1, arg1, (arg2[0]),
1276                                                           (arg3[0]));
1277     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u64(&x2, arg1, (arg2[1]),
1278                                                           (arg3[1]));
1279     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u64(&x3, arg1, (arg2[2]),
1280                                                           (arg3[2]));
1281     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u64(&x4, arg1, (arg2[3]),
1282                                                           (arg3[3]));
1283     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u64(&x5, arg1, (arg2[4]),
1284                                                           (arg3[4]));
1285     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u64(&x6, arg1, (arg2[5]),
1286                                                           (arg3[5]));
1287     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u64(&x7, arg1, (arg2[6]),
1288                                                           (arg3[6]));
1289     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u64(&x8, arg1, (arg2[7]),
1290                                                           (arg3[7]));
1291     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u64(&x9, arg1, (arg2[8]),
1292                                                           (arg3[8]));
1293     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u64(&x10, arg1, (arg2[9]),
1294                                                           (arg3[9]));
1295     out1[0] = x1;
1296     out1[1] = x2;
1297     out1[2] = x3;
1298     out1[3] = x4;
1299     out1[4] = x5;
1300     out1[5] = x6;
1301     out1[6] = x7;
1302     out1[7] = x8;
1303     out1[8] = x9;
1304     out1[9] = x10;
1305 }
1306
1307 /*
1308  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_to_bytes serializes a field element to bytes in little-endian order.
1309  * Postconditions:
1310  *   out1 = map (λ x, ⌊((eval arg1 mod m) mod 2^(8 * (x + 1))) / 2^(8 * x)⌋) [0..63]
1311  *
1312  * Input Bounds:
1313  *   arg1: [[0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000]]
1314  * Output Bounds:
1315  *   out1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]]
1316  */
1317 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_to_bytes(
1318     uint8_t out1[64], const uint64_t arg1[10]) {
1319     uint64_t x1;
1320     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x2;
1321     uint64_t x3;
1322     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x4;
1323     uint64_t x5;
1324     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x6;
1325     uint64_t x7;
1326     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x8;
1327     uint64_t x9;
1328     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x10;
1329     uint64_t x11;
1330     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x12;
1331     uint64_t x13;
1332     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x14;
1333     uint64_t x15;
1334     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x16;
1335     uint64_t x17;
1336     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x18;
1337     uint64_t x19;
1338     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x20;
1339     uint64_t x21;
1340     uint64_t x22;
1341     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x23;
1342     uint64_t x24;
1343     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x25;
1344     uint64_t x26;
1345     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x27;
1346     uint64_t x28;
1347     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x29;
1348     uint64_t x30;
1349     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x31;
1350     uint64_t x32;
1351     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x33;
1352     uint64_t x34;
1353     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x35;
1354     uint64_t x36;
1355     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x37;
1356     uint64_t x38;
1357     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x39;
1358     uint64_t x40;
1359     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x41;
1360     uint64_t x42;
1361     uint64_t x43;
1362     uint64_t x44;
1363     uint64_t x45;
1364     uint64_t x46;
1365     uint64_t x47;
1366     uint64_t x48;
1367     uint64_t x49;
1368     uint8_t x50;
1369     uint64_t x51;
1370     uint8_t x52;
1371     uint64_t x53;
1372     uint8_t x54;
1373     uint64_t x55;
1374     uint8_t x56;
1375     uint64_t x57;
1376     uint8_t x58;
1377     uint64_t x59;
1378     uint8_t x60;
1379     uint8_t x61;
1380     uint64_t x62;
1381     uint8_t x63;
1382     uint64_t x64;
1383     uint8_t x65;
1384     uint64_t x66;
1385     uint8_t x67;
1386     uint64_t x68;
1387     uint8_t x69;
1388     uint64_t x70;
1389     uint8_t x71;
1390     uint64_t x72;
1391     uint8_t x73;
1392     uint8_t x74;
1393     uint64_t x75;
1394     uint8_t x76;
1395     uint64_t x77;
1396     uint8_t x78;
1397     uint64_t x79;
1398     uint8_t x80;
1399     uint64_t x81;
1400     uint8_t x82;
1401     uint64_t x83;
1402     uint8_t x84;
1403     uint64_t x85;
1404     uint8_t x86;
1405     uint64_t x87;
1406     uint8_t x88;
1407     uint8_t x89;
1408     uint64_t x90;
1409     uint8_t x91;
1410     uint64_t x92;
1411     uint8_t x93;
1412     uint64_t x94;
1413     uint8_t x95;
1414     uint64_t x96;
1415     uint8_t x97;
1416     uint64_t x98;
1417     uint8_t x99;
1418     uint64_t x100;
1419     uint8_t x101;
1420     uint8_t x102;
1421     uint64_t x103;
1422     uint8_t x104;
1423     uint64_t x105;
1424     uint8_t x106;
1425     uint64_t x107;
1426     uint8_t x108;
1427     uint64_t x109;
1428     uint8_t x110;
1429     uint64_t x111;
1430     uint8_t x112;
1431     uint64_t x113;
1432     uint8_t x114;
1433     uint8_t x115;
1434     uint8_t x116;
1435     uint64_t x117;
1436     uint8_t x118;
1437     uint64_t x119;
1438     uint8_t x120;
1439     uint64_t x121;
1440     uint8_t x122;
1441     uint64_t x123;
1442     uint8_t x124;
1443     uint64_t x125;
1444     uint8_t x126;
1445     uint8_t x127;
1446     uint64_t x128;
1447     uint8_t x129;
1448     uint64_t x130;
1449     uint8_t x131;
1450     uint64_t x132;
1451     uint8_t x133;
1452     uint64_t x134;
1453     uint8_t x135;
1454     uint64_t x136;
1455     uint8_t x137;
1456     uint64_t x138;
1457     uint8_t x139;
1458     uint8_t x140;
1459     uint64_t x141;
1460     uint8_t x142;
1461     uint64_t x143;
1462     uint8_t x144;
1463     uint64_t x145;
1464     uint8_t x146;
1465     uint64_t x147;
1466     uint8_t x148;
1467     uint64_t x149;
1468     uint8_t x150;
1469     uint64_t x151;
1470     uint8_t x152;
1471     uint64_t x153;
1472     uint8_t x154;
1473     uint8_t x155;
1474     uint64_t x156;
1475     uint8_t x157;
1476     uint64_t x158;
1477     uint8_t x159;
1478     uint64_t x160;
1479     uint8_t x161;
1480     uint64_t x162;
1481     uint8_t x163;
1482     uint64_t x164;
1483     uint8_t x165;
1484     uint64_t x166;
1485     uint8_t x167;
1486     uint8_t x168;
1487     uint64_t x169;
1488     uint8_t x170;
1489     uint64_t x171;
1490     uint8_t x172;
1491     uint64_t x173;
1492     uint8_t x174;
1493     uint64_t x175;
1494     uint8_t x176;
1495     uint64_t x177;
1496     uint8_t x178;
1497     uint64_t x179;
1498     uint8_t x180;
1499     uint8_t x181;
1500     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u52(
1501         &x1, &x2, 0x0, (arg1[0]), UINT64_C(0xffffffffffdc7));
1502     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u51(
1503         &x3, &x4, x2, (arg1[1]), UINT64_C(0x7ffffffffffff));
1504     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u51(
1505         &x5, &x6, x4, (arg1[2]), UINT64_C(0x7ffffffffffff));
1506     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u51(
1507         &x7, &x8, x6, (arg1[3]), UINT64_C(0x7ffffffffffff));
1508     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u51(
1509         &x9, &x10, x8, (arg1[4]), UINT64_C(0x7ffffffffffff));
1510     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u52(
1511         &x11, &x12, x10, (arg1[5]), UINT64_C(0xfffffffffffff));
1512     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u51(
1513         &x13, &x14, x12, (arg1[6]), UINT64_C(0x7ffffffffffff));
1514     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u51(
1515         &x15, &x16, x14, (arg1[7]), UINT64_C(0x7ffffffffffff));
1516     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u51(
1517         &x17, &x18, x16, (arg1[8]), UINT64_C(0x7ffffffffffff));
1518     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u51(
1519         &x19, &x20, x18, (arg1[9]), UINT64_C(0x7ffffffffffff));
1520     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u64(
1521         &x21, x20, 0x0, UINT64_C(0xffffffffffffffff));
1522     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u52(
1523         &x22, &x23, 0x0, x1, (x21 & UINT64_C(0xffffffffffdc7)));
1524     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u51(
1525         &x24, &x25, x23, x3, (x21 & UINT64_C(0x7ffffffffffff)));
1526     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u51(
1527         &x26, &x27, x25, x5, (x21 & UINT64_C(0x7ffffffffffff)));
1528     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u51(
1529         &x28, &x29, x27, x7, (x21 & UINT64_C(0x7ffffffffffff)));
1530     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u51(
1531         &x30, &x31, x29, x9, (x21 & UINT64_C(0x7ffffffffffff)));
1532     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u52(
1533         &x32, &x33, x31, x11, (x21 & UINT64_C(0xfffffffffffff)));
1534     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u51(
1535         &x34, &x35, x33, x13, (x21 & UINT64_C(0x7ffffffffffff)));
1536     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u51(
1537         &x36, &x37, x35, x15, (x21 & UINT64_C(0x7ffffffffffff)));
1538     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u51(
1539         &x38, &x39, x37, x17, (x21 & UINT64_C(0x7ffffffffffff)));
1540     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u51(
1541         &x40, &x41, x39, x19, (x21 & UINT64_C(0x7ffffffffffff)));
1542     x42 = (x40 << 5);
1543     x43 = (x38 << 2);
1544     x44 = (x36 << 7);
1545     x45 = (x34 << 4);
1546     x46 = (x30 << 5);
1547     x47 = (x28 << 2);
1548     x48 = (x26 << 7);
1549     x49 = (x24 << 4);
1550     x50 = (uint8_t)(x22 & UINT8_C(0xff));
1551     x51 = (x22 >> 8);
1552     x52 = (uint8_t)(x51 & UINT8_C(0xff));
1553     x53 = (x51 >> 8);
1554     x54 = (uint8_t)(x53 & UINT8_C(0xff));
1555     x55 = (x53 >> 8);
1556     x56 = (uint8_t)(x55 & UINT8_C(0xff));
1557     x57 = (x55 >> 8);
1558     x58 = (uint8_t)(x57 & UINT8_C(0xff));
1559     x59 = (x57 >> 8);
1560     x60 = (uint8_t)(x59 & UINT8_C(0xff));
1561     x61 = (uint8_t)(x59 >> 8);
1562     x62 = (x49 + (uint64_t)x61);
1563     x63 = (uint8_t)(x62 & UINT8_C(0xff));
1564     x64 = (x62 >> 8);
1565     x65 = (uint8_t)(x64 & UINT8_C(0xff));
1566     x66 = (x64 >> 8);
1567     x67 = (uint8_t)(x66 & UINT8_C(0xff));
1568     x68 = (x66 >> 8);
1569     x69 = (uint8_t)(x68 & UINT8_C(0xff));
1570     x70 = (x68 >> 8);
1571     x71 = (uint8_t)(x70 & UINT8_C(0xff));
1572     x72 = (x70 >> 8);
1573     x73 = (uint8_t)(x72 & UINT8_C(0xff));
1574     x74 = (uint8_t)(x72 >> 8);
1575     x75 = (x48 + (uint64_t)x74);
1576     x76 = (uint8_t)(x75 & UINT8_C(0xff));
1577     x77 = (x75 >> 8);
1578     x78 = (uint8_t)(x77 & UINT8_C(0xff));
1579     x79 = (x77 >> 8);
1580     x80 = (uint8_t)(x79 & UINT8_C(0xff));
1581     x81 = (x79 >> 8);
1582     x82 = (uint8_t)(x81 & UINT8_C(0xff));
1583     x83 = (x81 >> 8);
1584     x84 = (uint8_t)(x83 & UINT8_C(0xff));
1585     x85 = (x83 >> 8);
1586     x86 = (uint8_t)(x85 & UINT8_C(0xff));
1587     x87 = (x85 >> 8);
1588     x88 = (uint8_t)(x87 & UINT8_C(0xff));
1589     x89 = (uint8_t)(x87 >> 8);
1590     x90 = (x47 + (uint64_t)x89);
1591     x91 = (uint8_t)(x90 & UINT8_C(0xff));
1592     x92 = (x90 >> 8);
1593     x93 = (uint8_t)(x92 & UINT8_C(0xff));
1594     x94 = (x92 >> 8);
1595     x95 = (uint8_t)(x94 & UINT8_C(0xff));
1596     x96 = (x94 >> 8);
1597     x97 = (uint8_t)(x96 & UINT8_C(0xff));
1598     x98 = (x96 >> 8);
1599     x99 = (uint8_t)(x98 & UINT8_C(0xff));
1600     x100 = (x98 >> 8);
1601     x101 = (uint8_t)(x100 & UINT8_C(0xff));
1602     x102 = (uint8_t)(x100 >> 8);
1603     x103 = (x46 + (uint64_t)x102);
1604     x104 = (uint8_t)(x103 & UINT8_C(0xff));
1605     x105 = (x103 >> 8);
1606     x106 = (uint8_t)(x105 & UINT8_C(0xff));
1607     x107 = (x105 >> 8);
1608     x108 = (uint8_t)(x107 & UINT8_C(0xff));
1609     x109 = (x107 >> 8);
1610     x110 = (uint8_t)(x109 & UINT8_C(0xff));
1611     x111 = (x109 >> 8);
1612     x112 = (uint8_t)(x111 & UINT8_C(0xff));
1613     x113 = (x111 >> 8);
1614     x114 = (uint8_t)(x113 & UINT8_C(0xff));
1615     x115 = (uint8_t)(x113 >> 8);
1616     x116 = (uint8_t)(x32 & UINT8_C(0xff));
1617     x117 = (x32 >> 8);
1618     x118 = (uint8_t)(x117 & UINT8_C(0xff));
1619     x119 = (x117 >> 8);
1620     x120 = (uint8_t)(x119 & UINT8_C(0xff));
1621     x121 = (x119 >> 8);
1622     x122 = (uint8_t)(x121 & UINT8_C(0xff));
1623     x123 = (x121 >> 8);
1624     x124 = (uint8_t)(x123 & UINT8_C(0xff));
1625     x125 = (x123 >> 8);
1626     x126 = (uint8_t)(x125 & UINT8_C(0xff));
1627     x127 = (uint8_t)(x125 >> 8);
1628     x128 = (x45 + (uint64_t)x127);
1629     x129 = (uint8_t)(x128 & UINT8_C(0xff));
1630     x130 = (x128 >> 8);
1631     x131 = (uint8_t)(x130 & UINT8_C(0xff));
1632     x132 = (x130 >> 8);
1633     x133 = (uint8_t)(x132 & UINT8_C(0xff));
1634     x134 = (x132 >> 8);
1635     x135 = (uint8_t)(x134 & UINT8_C(0xff));
1636     x136 = (x134 >> 8);
1637     x137 = (uint8_t)(x136 & UINT8_C(0xff));
1638     x138 = (x136 >> 8);
1639     x139 = (uint8_t)(x138 & UINT8_C(0xff));
1640     x140 = (uint8_t)(x138 >> 8);
1641     x141 = (x44 + (uint64_t)x140);
1642     x142 = (uint8_t)(x141 & UINT8_C(0xff));
1643     x143 = (x141 >> 8);
1644     x144 = (uint8_t)(x143 & UINT8_C(0xff));
1645     x145 = (x143 >> 8);
1646     x146 = (uint8_t)(x145 & UINT8_C(0xff));
1647     x147 = (x145 >> 8);
1648     x148 = (uint8_t)(x147 & UINT8_C(0xff));
1649     x149 = (x147 >> 8);
1650     x150 = (uint8_t)(x149 & UINT8_C(0xff));
1651     x151 = (x149 >> 8);
1652     x152 = (uint8_t)(x151 & UINT8_C(0xff));
1653     x153 = (x151 >> 8);
1654     x154 = (uint8_t)(x153 & UINT8_C(0xff));
1655     x155 = (uint8_t)(x153 >> 8);
1656     x156 = (x43 + (uint64_t)x155);
1657     x157 = (uint8_t)(x156 & UINT8_C(0xff));
1658     x158 = (x156 >> 8);
1659     x159 = (uint8_t)(x158 & UINT8_C(0xff));
1660     x160 = (x158 >> 8);
1661     x161 = (uint8_t)(x160 & UINT8_C(0xff));
1662     x162 = (x160 >> 8);
1663     x163 = (uint8_t)(x162 & UINT8_C(0xff));
1664     x164 = (x162 >> 8);
1665     x165 = (uint8_t)(x164 & UINT8_C(0xff));
1666     x166 = (x164 >> 8);
1667     x167 = (uint8_t)(x166 & UINT8_C(0xff));
1668     x168 = (uint8_t)(x166 >> 8);
1669     x169 = (x42 + (uint64_t)x168);
1670     x170 = (uint8_t)(x169 & UINT8_C(0xff));
1671     x171 = (x169 >> 8);
1672     x172 = (uint8_t)(x171 & UINT8_C(0xff));
1673     x173 = (x171 >> 8);
1674     x174 = (uint8_t)(x173 & UINT8_C(0xff));
1675     x175 = (x173 >> 8);
1676     x176 = (uint8_t)(x175 & UINT8_C(0xff));
1677     x177 = (x175 >> 8);
1678     x178 = (uint8_t)(x177 & UINT8_C(0xff));
1679     x179 = (x177 >> 8);
1680     x180 = (uint8_t)(x179 & UINT8_C(0xff));
1681     x181 = (uint8_t)(x179 >> 8);
1682     out1[0] = x50;
1683     out1[1] = x52;
1684     out1[2] = x54;
1685     out1[3] = x56;
1686     out1[4] = x58;
1687     out1[5] = x60;
1688     out1[6] = x63;
1689     out1[7] = x65;
1690     out1[8] = x67;
1691     out1[9] = x69;
1692     out1[10] = x71;
1693     out1[11] = x73;
1694     out1[12] = x76;
1695     out1[13] = x78;
1696     out1[14] = x80;
1697     out1[15] = x82;
1698     out1[16] = x84;
1699     out1[17] = x86;
1700     out1[18] = x88;
1701     out1[19] = x91;
1702     out1[20] = x93;
1703     out1[21] = x95;
1704     out1[22] = x97;
1705     out1[23] = x99;
1706     out1[24] = x101;
1707     out1[25] = x104;
1708     out1[26] = x106;
1709     out1[27] = x108;
1710     out1[28] = x110;
1711     out1[29] = x112;
1712     out1[30] = x114;
1713     out1[31] = x115;
1714     out1[32] = x116;
1715     out1[33] = x118;
1716     out1[34] = x120;
1717     out1[35] = x122;
1718     out1[36] = x124;
1719     out1[37] = x126;
1720     out1[38] = x129;
1721     out1[39] = x131;
1722     out1[40] = x133;
1723     out1[41] = x135;
1724     out1[42] = x137;
1725     out1[43] = x139;
1726     out1[44] = x142;
1727     out1[45] = x144;
1728     out1[46] = x146;
1729     out1[47] = x148;
1730     out1[48] = x150;
1731     out1[49] = x152;
1732     out1[50] = x154;
1733     out1[51] = x157;
1734     out1[52] = x159;
1735     out1[53] = x161;
1736     out1[54] = x163;
1737     out1[55] = x165;
1738     out1[56] = x167;
1739     out1[57] = x170;
1740     out1[58] = x172;
1741     out1[59] = x174;
1742     out1[60] = x176;
1743     out1[61] = x178;
1744     out1[62] = x180;
1745     out1[63] = x181;
1746 }
1747
1748 /*
1749  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_from_bytes deserializes a field element from bytes in little-endian order.
1750  * Postconditions:
1751  *   eval out1 mod m = bytes_eval arg1 mod m
1752  *
1753  * Input Bounds:
1754  *   arg1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]]
1755  * Output Bounds:
1756  *   out1: [[0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x10000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000], [0x0 ~> 0x8000000000000]]
1757  */
1758 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_from_bytes(
1759     uint64_t out1[10], const uint8_t arg1[64]) {
1760     uint64_t x1;
1761     uint64_t x2;
1762     uint64_t x3;
1763     uint64_t x4;
1764     uint64_t x5;
1765     uint64_t x6;
1766     uint64_t x7;
1767     uint64_t x8;
1768     uint64_t x9;
1769     uint64_t x10;
1770     uint64_t x11;
1771     uint64_t x12;
1772     uint64_t x13;
1773     uint64_t x14;
1774     uint64_t x15;
1775     uint64_t x16;
1776     uint64_t x17;
1777     uint64_t x18;
1778     uint64_t x19;
1779     uint64_t x20;
1780     uint64_t x21;
1781     uint64_t x22;
1782     uint64_t x23;
1783     uint64_t x24;
1784     uint64_t x25;
1785     uint64_t x26;
1786     uint64_t x27;
1787     uint64_t x28;
1788     uint64_t x29;
1789     uint64_t x30;
1790     uint64_t x31;
1791     uint8_t x32;
1792     uint64_t x33;
1793     uint64_t x34;
1794     uint64_t x35;
1795     uint64_t x36;
1796     uint64_t x37;
1797     uint64_t x38;
1798     uint64_t x39;
1799     uint64_t x40;
1800     uint64_t x41;
1801     uint64_t x42;
1802     uint64_t x43;
1803     uint64_t x44;
1804     uint64_t x45;
1805     uint64_t x46;
1806     uint64_t x47;
1807     uint64_t x48;
1808     uint64_t x49;
1809     uint64_t x50;
1810     uint64_t x51;
1811     uint64_t x52;
1812     uint64_t x53;
1813     uint64_t x54;
1814     uint64_t x55;
1815     uint64_t x56;
1816     uint64_t x57;
1817     uint64_t x58;
1818     uint64_t x59;
1819     uint64_t x60;
1820     uint64_t x61;
1821     uint64_t x62;
1822     uint64_t x63;
1823     uint8_t x64;
1824     uint64_t x65;
1825     uint64_t x66;
1826     uint64_t x67;
1827     uint64_t x68;
1828     uint64_t x69;
1829     uint64_t x70;
1830     uint64_t x71;
1831     uint8_t x72;
1832     uint64_t x73;
1833     uint64_t x74;
1834     uint64_t x75;
1835     uint64_t x76;
1836     uint64_t x77;
1837     uint64_t x78;
1838     uint64_t x79;
1839     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x80;
1840     uint64_t x81;
1841     uint64_t x82;
1842     uint64_t x83;
1843     uint64_t x84;
1844     uint64_t x85;
1845     uint64_t x86;
1846     uint64_t x87;
1847     uint64_t x88;
1848     uint8_t x89;
1849     uint64_t x90;
1850     uint64_t x91;
1851     uint64_t x92;
1852     uint64_t x93;
1853     uint64_t x94;
1854     uint64_t x95;
1855     uint64_t x96;
1856     uint8_t x97;
1857     uint64_t x98;
1858     uint64_t x99;
1859     uint64_t x100;
1860     uint64_t x101;
1861     uint64_t x102;
1862     uint64_t x103;
1863     uint64_t x104;
1864     uint64_t x105;
1865     uint64_t x106;
1866     uint64_t x107;
1867     uint64_t x108;
1868     uint64_t x109;
1869     uint64_t x110;
1870     uint8_t x111;
1871     uint64_t x112;
1872     uint64_t x113;
1873     uint64_t x114;
1874     uint64_t x115;
1875     uint64_t x116;
1876     uint64_t x117;
1877     uint64_t x118;
1878     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x119;
1879     uint64_t x120;
1880     uint64_t x121;
1881     uint64_t x122;
1882     uint64_t x123;
1883     uint64_t x124;
1884     uint64_t x125;
1885     uint64_t x126;
1886     uint64_t x127;
1887     uint8_t x128;
1888     uint64_t x129;
1889     uint64_t x130;
1890     uint64_t x131;
1891     uint64_t x132;
1892     uint64_t x133;
1893     uint64_t x134;
1894     uint64_t x135;
1895     uint8_t x136;
1896     uint64_t x137;
1897     uint64_t x138;
1898     uint64_t x139;
1899     uint64_t x140;
1900     uint64_t x141;
1901     uint64_t x142;
1902     x1 = ((uint64_t)(arg1[63]) << 43);
1903     x2 = ((uint64_t)(arg1[62]) << 35);
1904     x3 = ((uint64_t)(arg1[61]) << 27);
1905     x4 = ((uint64_t)(arg1[60]) << 19);
1906     x5 = ((uint64_t)(arg1[59]) << 11);
1907     x6 = ((uint64_t)(arg1[58]) << 3);
1908     x7 = ((uint64_t)(arg1[57]) << 46);
1909     x8 = ((uint64_t)(arg1[56]) << 38);
1910     x9 = ((uint64_t)(arg1[55]) << 30);
1911     x10 = ((uint64_t)(arg1[54]) << 22);
1912     x11 = ((uint64_t)(arg1[53]) << 14);
1913     x12 = ((uint64_t)(arg1[52]) << 6);
1914     x13 = ((uint64_t)(arg1[51]) << 49);
1915     x14 = ((uint64_t)(arg1[50]) << 41);
1916     x15 = ((uint64_t)(arg1[49]) << 33);
1917     x16 = ((uint64_t)(arg1[48]) << 25);
1918     x17 = ((uint64_t)(arg1[47]) << 17);
1919     x18 = ((uint64_t)(arg1[46]) << 9);
1920     x19 = ((uint64_t)(arg1[45]) * 0x2);
1921     x20 = ((uint64_t)(arg1[44]) << 44);
1922     x21 = ((uint64_t)(arg1[43]) << 36);
1923     x22 = ((uint64_t)(arg1[42]) << 28);
1924     x23 = ((uint64_t)(arg1[41]) << 20);
1925     x24 = ((uint64_t)(arg1[40]) << 12);
1926     x25 = ((uint64_t)(arg1[39]) << 4);
1927     x26 = ((uint64_t)(arg1[38]) << 48);
1928     x27 = ((uint64_t)(arg1[37]) << 40);
1929     x28 = ((uint64_t)(arg1[36]) << 32);
1930     x29 = ((uint64_t)(arg1[35]) << 24);
1931     x30 = ((uint64_t)(arg1[34]) << 16);
1932     x31 = ((uint64_t)(arg1[33]) << 8);
1933     x32 = (arg1[32]);
1934     x33 = ((uint64_t)(arg1[31]) << 43);
1935     x34 = ((uint64_t)(arg1[30]) << 35);
1936     x35 = ((uint64_t)(arg1[29]) << 27);
1937     x36 = ((uint64_t)(arg1[28]) << 19);
1938     x37 = ((uint64_t)(arg1[27]) << 11);
1939     x38 = ((uint64_t)(arg1[26]) << 3);
1940     x39 = ((uint64_t)(arg1[25]) << 46);
1941     x40 = ((uint64_t)(arg1[24]) << 38);
1942     x41 = ((uint64_t)(arg1[23]) << 30);
1943     x42 = ((uint64_t)(arg1[22]) << 22);
1944     x43 = ((uint64_t)(arg1[21]) << 14);
1945     x44 = ((uint64_t)(arg1[20]) << 6);
1946     x45 = ((uint64_t)(arg1[19]) << 49);
1947     x46 = ((uint64_t)(arg1[18]) << 41);
1948     x47 = ((uint64_t)(arg1[17]) << 33);
1949     x48 = ((uint64_t)(arg1[16]) << 25);
1950     x49 = ((uint64_t)(arg1[15]) << 17);
1951     x50 = ((uint64_t)(arg1[14]) << 9);
1952     x51 = ((uint64_t)(arg1[13]) * 0x2);
1953     x52 = ((uint64_t)(arg1[12]) << 44);
1954     x53 = ((uint64_t)(arg1[11]) << 36);
1955     x54 = ((uint64_t)(arg1[10]) << 28);
1956     x55 = ((uint64_t)(arg1[9]) << 20);
1957     x56 = ((uint64_t)(arg1[8]) << 12);
1958     x57 = ((uint64_t)(arg1[7]) << 4);
1959     x58 = ((uint64_t)(arg1[6]) << 48);
1960     x59 = ((uint64_t)(arg1[5]) << 40);
1961     x60 = ((uint64_t)(arg1[4]) << 32);
1962     x61 = ((uint64_t)(arg1[3]) << 24);
1963     x62 = ((uint64_t)(arg1[2]) << 16);
1964     x63 = ((uint64_t)(arg1[1]) << 8);
1965     x64 = (arg1[0]);
1966     x65 = (x63 + (uint64_t)x64);
1967     x66 = (x62 + x65);
1968     x67 = (x61 + x66);
1969     x68 = (x60 + x67);
1970     x69 = (x59 + x68);
1971     x70 = (x58 + x69);
1972     x71 = (x70 & UINT64_C(0xfffffffffffff));
1973     x72 = (uint8_t)(x70 >> 52);
1974     x73 = (x57 + (uint64_t)x72);
1975     x74 = (x56 + x73);
1976     x75 = (x55 + x74);
1977     x76 = (x54 + x75);
1978     x77 = (x53 + x76);
1979     x78 = (x52 + x77);
1980     x79 = (x78 & UINT64_C(0x7ffffffffffff));
1981     x80 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x78 >> 51);
1982     x81 = (x51 + (uint64_t)x80);
1983     x82 = (x50 + x81);
1984     x83 = (x49 + x82);
1985     x84 = (x48 + x83);
1986     x85 = (x47 + x84);
1987     x86 = (x46 + x85);
1988     x87 = (x45 + x86);
1989     x88 = (x87 & UINT64_C(0x7ffffffffffff));
1990     x89 = (uint8_t)(x87 >> 51);
1991     x90 = (x44 + (uint64_t)x89);
1992     x91 = (x43 + x90);
1993     x92 = (x42 + x91);
1994     x93 = (x41 + x92);
1995     x94 = (x40 + x93);
1996     x95 = (x39 + x94);
1997     x96 = (x95 & UINT64_C(0x7ffffffffffff));
1998     x97 = (uint8_t)(x95 >> 51);
1999     x98 = (x38 + (uint64_t)x97);
2000     x99 = (x37 + x98);
2001     x100 = (x36 + x99);
2002     x101 = (x35 + x100);
2003     x102 = (x34 + x101);
2004     x103 = (x33 + x102);
2005     x104 = (x31 + (uint64_t)x32);
2006     x105 = (x30 + x104);
2007     x106 = (x29 + x105);
2008     x107 = (x28 + x106);
2009     x108 = (x27 + x107);
2010     x109 = (x26 + x108);
2011     x110 = (x109 & UINT64_C(0xfffffffffffff));
2012     x111 = (uint8_t)(x109 >> 52);
2013     x112 = (x25 + (uint64_t)x111);
2014     x113 = (x24 + x112);
2015     x114 = (x23 + x113);
2016     x115 = (x22 + x114);
2017     x116 = (x21 + x115);
2018     x117 = (x20 + x116);
2019     x118 = (x117 & UINT64_C(0x7ffffffffffff));
2020     x119 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x117 >> 51);
2021     x120 = (x19 + (uint64_t)x119);
2022     x121 = (x18 + x120);
2023     x122 = (x17 + x121);
2024     x123 = (x16 + x122);
2025     x124 = (x15 + x123);
2026     x125 = (x14 + x124);
2027     x126 = (x13 + x125);
2028     x127 = (x126 & UINT64_C(0x7ffffffffffff));
2029     x128 = (uint8_t)(x126 >> 51);
2030     x129 = (x12 + (uint64_t)x128);
2031     x130 = (x11 + x129);
2032     x131 = (x10 + x130);
2033     x132 = (x9 + x131);
2034     x133 = (x8 + x132);
2035     x134 = (x7 + x133);
2036     x135 = (x134 & UINT64_C(0x7ffffffffffff));
2037     x136 = (uint8_t)(x134 >> 51);
2038     x137 = (x6 + (uint64_t)x136);
2039     x138 = (x5 + x137);
2040     x139 = (x4 + x138);
2041     x140 = (x3 + x139);
2042     x141 = (x2 + x140);
2043     x142 = (x1 + x141);
2044     out1[0] = x71;
2045     out1[1] = x79;
2046     out1[2] = x88;
2047     out1[3] = x96;
2048     out1[4] = x103;
2049     out1[5] = x110;
2050     out1[6] = x118;
2051     out1[7] = x127;
2052     out1[8] = x135;
2053     out1[9] = x142;
2054 }
2055
2056 /* END verbatim fiat code */
2057
2058 /*-
2059  * Finite field inversion via FLT.
2060  * NB: this is not a real Fiat function, just named that way for consistency.
2061  * Autogenerated: ecp/id_tc26_gost_3410_2012_512_paramSetA/fe_inv.op3
2062  * custom repunit addition chain
2063  */
2064 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_inv(fe_t output,
2065                                                           const fe_t t1) {
2066     int i;
2067     /* temporary variables */
2068     fe_t acc, t102, t12, t198, t2, t200, t24, t3, t400, t48, t502, t6, t96;
2069
2070     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t1);
2071     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t2, acc, t1);
2072     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t2);
2073     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t3, acc, t1);
2074     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t3);
2075     for (i = 0; i < 2; i++)
2076         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
2077     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t6, acc, t3);
2078     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t6);
2079     for (i = 0; i < 5; i++)
2080         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
2081     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t12, acc, t6);
2082     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t12);
2083     for (i = 0; i < 11; i++)
2084         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
2085     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t24, acc, t12);
2086     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t24);
2087     for (i = 0; i < 23; i++)
2088         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
2089     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t48, acc, t24);
2090     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t48);
2091     for (i = 0; i < 47; i++)
2092         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
2093     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t96, acc, t48);
2094     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t96);
2095     for (i = 0; i < 5; i++)
2096         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
2097     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t102, acc, t6);
2098     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t102);
2099     for (i = 0; i < 95; i++)
2100         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
2101     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t198, acc, t96);
2102     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t198);
2103     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
2104     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t200, acc, t2);
2105     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t200);
2106     for (i = 0; i < 199; i++)
2107         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
2108     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t400, acc, t200);
2109     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t400);
2110     for (i = 0; i < 101; i++)
2111         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
2112     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t502, acc, t102);
2113     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t502);
2114     for (i = 0; i < 3; i++)
2115         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
2116     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(acc, acc, t3);
2117     for (i = 0; i < 4; i++)
2118         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
2119     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(acc, acc, t1);
2120     for (i = 0; i < 2; i++)
2121         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
2122     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(output, acc, t1);
2123 }
2124
2125 /* curve coefficient constants */
2126
2127 static const limb_t const_one[10] = {
2128     UINT64_C(0x0000000000000001), UINT64_C(0x0000000000000000),
2129     UINT64_C(0x0000000000000000), UINT64_C(0x0000000000000000),
2130     UINT64_C(0x0000000000000000), UINT64_C(0x0000000000000000),
2131     UINT64_C(0x0000000000000000), UINT64_C(0x0000000000000000),
2132     UINT64_C(0x0000000000000000), UINT64_C(0x0000000000000000)};
2133
2134 static const limb_t const_b[10] = {
2135     UINT64_C(0x000190785A71C760), UINT64_C(0x00054EBEE4761503),
2136     UINT64_C(0x0001B521BB0C5DF3), UINT64_C(0x0001D8532D15D004),
2137     UINT64_C(0x000771E584879869), UINT64_C(0x000D081CFD0B6265),
2138     UINT64_C(0x00074761CB0E879B), UINT64_C(0x0004CFE3B469704A),
2139     UINT64_C(0x0001B7706F42CAD9), UINT64_C(0x0007461282EF6FE4)};
2140
2141 /* LUT for scalar multiplication by comb interleaving */
2142 static const pt_aff_t lut_cmb[12][16] = {
2143     {
2144         {{UINT64_C(0x0000000000000003), UINT64_C(0x0000000000000000),
2145           UINT64_C(0x0000000000000000), UINT64_C(0x0000000000000000),
2146           UINT64_C(0x0000000000000000), UINT64_C(0x0000000000000000),
2147           UINT64_C(0x0000000000000000), UINT64_C(0x0000000000000000),
2148           UINT64_C(0x0000000000000000), UINT64_C(0x0000000000000000)},
2149          {UINT64_C(0x000589CB5215F2A4), UINT64_C(0x0005FC235F5B889A),
2150           UINT64_C(0x00047483D30051FC), UINT64_C(0x0005BA4F5D79A943),
2151           UINT64_C(0x0006F8B135F27E81), UINT64_C(0x000064FDCBEFA921),
2152           UINT64_C(0x00013ACF1ABC1778), UINT64_C(0x0004A8A1CD9CBC39),
2153           UINT64_C(0x0002B8E986E205B8), UINT64_C(0x0003A81E7F43D41B)}},
2154         {{UINT64_C(0x000134687CCB87C3), UINT64_C(0x0003A10544E8416E),
2155           UINT64_C(0x00061120F5D8AB9F), UINT64_C(0x0004D75D92CBD5EC),
2156           UINT64_C(0x00021E94205A696E), UINT64_C(0x000291D5F488FBA5),
2157           UINT64_C(0x0004C096168A1174), UINT64_C(0x00034ACFF09B62AD),
2158           UINT64_C(0x00019FAD4E4D776D), UINT64_C(0x00050FF8D5938951)},
2159          {UINT64_C(0x000CD7EC518D90D6), UINT64_C(0x000711A4FB6C7125),
2160           UINT64_C(0x000298DBA98C6CDE), UINT64_C(0x00005BBAB3EB0BFA),
2161           UINT64_C(0x00008E9D7BF33E26), UINT64_C(0x00019E3F333F7EB3),
2162           UINT64_C(0x00048D7F84FBFA38), UINT64_C(0x00076B7309883C74),
2163           UINT64_C(0x0000DFCC0DD3C626), UINT64_C(0x0001E5AE220BF623)}},
2164         {{UINT64_C(0x000AEA0CE47F1E5F), UINT64_C(0x0006DA872DC7D9E3),
2165           UINT64_C(0x0004026E133CB612), UINT64_C(0x0001D4C81CBDD5C9),
2166           UINT64_C(0x000116A46100FB10), UINT64_C(0x000C71645B8C9FFB),
2167           UINT64_C(0x0006AFE06F1C1484), UINT64_C(0x0000B6FF2FF4E6C1),
2168           UINT64_C(0x0000A642376D824E), UINT64_C(0x0002B4540E895C56)},
2169          {UINT64_C(0x000BB3B92706CBC6), UINT64_C(0x0005700DE178E056),
2170           UINT64_C(0x000197807544BFFA), UINT64_C(0x000706F69DD298A6),
2171           UINT64_C(0x000205A8622A4E8B), UINT64_C(0x000109A43ED36596),
2172           UINT64_C(0x00049AB5B2BD5C17), UINT64_C(0x000515CF2C048D7F),
2173           UINT64_C(0x000651FD0ECDF273), UINT64_C(0x0003C6B66DABD057)}},
2174         {{UINT64_C(0x000ABFC1B7D256E0), UINT64_C(0x00022DFADD1D6E68),
2175           UINT64_C(0x00033EEC39057D08), UINT64_C(0x00075EC5CD3B3AFE),
2176           UINT64_C(0x000073336BE8A8F9), UINT64_C(0x000528C313659874),
2177           UINT64_C(0x000045D76D6402E5), UINT64_C(0x0007B1F5060389E6),
2178           UINT64_C(0x0005D713A16A99F2), UINT64_C(0x0003C394B1ED6CB5)},
2179          {UINT64_C(0x000A8C1A38755E5A), UINT64_C(0x0005CA589C9447E1),
2180           UINT64_C(0x0002D738BA7D236E), UINT64_C(0x00005E7DB74C629B),
2181           UINT64_C(0x000062E362468963), UINT64_C(0x000EBFCB8EE6AF9E),
2182           UINT64_C(0x000193EA82E68F84), UINT64_C(0x00003CAA0E7EFC3A),
2183           UINT64_C(0x00054937BC67C142), UINT64_C(0x000432F67FAB85C5)}},
2184         {{UINT64_C(0x000C34CEE53642A2), UINT64_C(0x00048BA44E987AEF),
2185           UINT64_C(0x0007CFBA481AC93A), UINT64_C(0x000252C52E6724E2),
2186           UINT64_C(0x00069C1386DDE181), UINT64_C(0x0003FE183213C47A),
2187           UINT64_C(0x0006C13A8DC37861), UINT64_C(0x0004546EA0F50627),
2188           UINT64_C(0x0007B6C23C692349), UINT64_C(0x0004307D8079E6F2)},
2189          {UINT64_C(0x000812879D2E3C8E), UINT64_C(0x000191C73044FE47),
2190           UINT64_C(0x00077218289340D5), UINT64_C(0x0005DA711BBBFF71),
2191           UINT64_C(0x0001C57405B59E36), UINT64_C(0x000C7F1B91C21105),
2192           UINT64_C(0x000066E23EF3A609), UINT64_C(0x00012EB6D5C73D15),
2193           UINT64_C(0x00020C3294080ED7), UINT64_C(0x00033ABC6BDE0FD2)}},
2194         {{UINT64_C(0x00002EE1E7135C5B), UINT64_C(0x000147440718098F),
2195           UINT64_C(0x000742216A0AD24C), UINT64_C(0x000209FAE0414762),
2196           UINT64_C(0x0007523CACA53442), UINT64_C(0x0002240ADDECED0B),
2197           UINT64_C(0x00023970F6F47640), UINT64_C(0x000799A6033CA82E),
2198           UINT64_C(0x00013F8D7EBD8951), UINT64_C(0x0003167F9B05B77B)},
2199          {UINT64_C(0x00084059554ECF79), UINT64_C(0x0005753C6736FF73),
2200           UINT64_C(0x000619A371C7BA90), UINT64_C(0x00007A6287324180),
2201           UINT64_C(0x00037396508E43B1), UINT64_C(0x000B92328505DD45),
2202           UINT64_C(0x00055C92400C6EE2), UINT64_C(0x0002654406A9F655),
2203           UINT64_C(0x0003AF03185F59DF), UINT64_C(0x0000C9632A02E2DE)}},
2204         {{UINT64_C(0x00082288639F2EBD), UINT64_C(0x0004E3BE5A9F335C),
2205           UINT64_C(0x0000475B64CDF3D5), UINT64_C(0x00003AD875B443CE),
2206           UINT64_C(0x0005A22CF276D7D8), UINT64_C(0x00059A094CC2E917),
2207           UINT64_C(0x0002CAA724BAEBC5), UINT64_C(0x0001CB230407F535),
2208           UINT64_C(0x00043A679D215417), UINT64_C(0x00032069427B390F)},
2209          {UINT64_C(0x00005AAE7CCDEA72), UINT64_C(0x000227E312EBD77B),
2210           UINT64_C(0x0006C48359C093AD), UINT64_C(0x00066AE122001431),
2211           UINT64_C(0x0002A7685789D1A1), UINT64_C(0x000DDDC9B1721593),
2212           UINT64_C(0x0002EB3A73075BAE), UINT64_C(0x00010D483A062D6E),
2213           UINT64_C(0x000414E1A10675C2), UINT64_C(0x0003FC179BB802A2)}},
2214         {{UINT64_C(0x000FA7D670E14D45), UINT64_C(0x0005B60822C15C07),
2215           UINT64_C(0x0006E1C8DC8B953D), UINT64_C(0x0003AA1F0C09E3C3),
2216           UINT64_C(0x0004C494E672EDE4), UINT64_C(0x00061EB986E7C9B9),
2217           UINT64_C(0x0003EDBB8C82ECC2), UINT64_C(0x0007B7E098625DE1),
2218           UINT64_C(0x0001652C34790E48), UINT64_C(0x000181E9C44FB652)},
2219          {UINT64_C(0x00026B7BFCB41422), UINT64_C(0x0004420662645444),
2220           UINT64_C(0x0005427FA987FF52), UINT64_C(0x0005B9040DF26326),
2221           UINT64_C(0x000334DEEC131B7C), UINT64_C(0x0009976A9AEB37C6),
2222           UINT64_C(0x0005DE6BDA0EE26F), UINT64_C(0x00046CD4B8DA22BF),
2223           UINT64_C(0x0001A9277ED46EDA), UINT64_C(0x00048FE9C8EA98F0)}},
2224         {{UINT64_C(0x00069292A4F09AE6), UINT64_C(0x00059EEEC0228FDC),
2225           UINT64_C(0x0002E6A2EB99E1C1), UINT64_C(0x00028B36B1CB7EDC),
2226           UINT64_C(0x0007C4D51AEABB6E), UINT64_C(0x00040FA7C5F982AC),
2227           UINT64_C(0x0000A163AFAB5A89), UINT64_C(0x000436DC36654D6F),
2228           UINT64_C(0x0006E7E4EFBDBA76), UINT64_C(0x000469D46D1AEC82)},
2229          {UINT64_C(0x0003F3770683CF55), UINT64_C(0x0007581899AFCAA5),
2230           UINT64_C(0x00021BB9291EC382), UINT64_C(0x000725C1812F5867),
2231           UINT64_C(0x00010D68EF013EA6), UINT64_C(0x000D8AD6CCEEDD36),
2232           UINT64_C(0x0004145477456E2A), UINT64_C(0x000350F4CCCDD3ED),
2233           UINT64_C(0x0006D247F4FCCCBC), UINT64_C(0x0002C35AD24695CC)}},
2234         {{UINT64_C(0x0000563E3BB2C9A3), UINT64_C(0x0004731F28271C7E),
2235           UINT64_C(0x00006474AEE84E9A), UINT64_C(0x00079618BA66931E),
2236           UINT64_C(0x0005DEEC306DF549), UINT64_C(0x000A49F4075B243E),
2237           UINT64_C(0x00072F449585855D), UINT64_C(0x000031C0CC652EF1),
2238           UINT64_C(0x00003DDAA420F12A), UINT64_C(0x00027047A35D3C45)},
2239          {UINT64_C(0x0008D45AEA9F97DE), UINT64_C(0x00031B40D05861EA),
2240           UINT64_C(0x00022DF5AC218686), UINT64_C(0x000237062CC05B46),
2241           UINT64_C(0x000511B267DD6BA7), UINT64_C(0x000818297550A398),
2242           UINT64_C(0x000702FE7A56CB70), UINT64_C(0x00053C7D673599DE),
2243           UINT64_C(0x0003ED45D15B6C15), UINT64_C(0x0001806F568245B9)}},
2244         {{UINT64_C(0x0009351072DB2170), UINT64_C(0x00033196A2CEF459),
2245           UINT64_C(0x0006744E6383FCEF), UINT64_C(0x0005C51252A32D28),
2246           UINT64_C(0x00005FA2110CC455), UINT64_C(0x0004B8063421A324),
2247           UINT64_C(0x0007D30325E5137D), UINT64_C(0x0002AFA7F320E835),
2248           UINT64_C(0x00011A9719C3D5ED), UINT64_C(0x0006DFED78D57C93)},
2249          {UINT64_C(0x000CD2B1C06C89E0), UINT64_C(0x00005887BE69BEF0),
2250           UINT64_C(0x00023A5834EEE4F0), UINT64_C(0x00064984FA6CCD98),
2251           UINT64_C(0x00006FB77FDF3397), UINT64_C(0x0001EBEBCE68907A),
2252           UINT64_C(0x0006784C0935BED2), UINT64_C(0x00050FF3F3DFF454),
2253           UINT64_C(0x0004036C327922ED), UINT64_C(0x00008DE3F2C6A92E)}},
2254         {{UINT64_C(0x0006E03B0A49FC14), UINT64_C(0x0002D86C93A83EE0),
2255           UINT64_C(0x0004A7F892C15148), UINT64_C(0x0002FC12A44E72B1),
2256           UINT64_C(0x0000F1222DB270EC), UINT64_C(0x0005C305D53F498F),
2257           UINT64_C(0x0005C15989BD840C), UINT64_C(0x0005FD28651837A4),
2258           UINT64_C(0x0001F44FE46C7F06), UINT64_C(0x00025B96CDAFE605)},
2259          {UINT64_C(0x0009FDD223F15C01), UINT64_C(0x0007578682CC2965),
2260           UINT64_C(0x0006222B764EE30D), UINT64_C(0x0002695A8C2DDC09),
2261           UINT64_C(0x0003EED3043E0B4D), UINT64_C(0x000DF4BA29380423),
2262           UINT64_C(0x000799CE51DCFEE3), UINT64_C(0x0001DC423C4607A6),
2263           UINT64_C(0x000353F2E08F2F67), UINT64_C(0x0002DE3BCB26FB64)}},
2264         {{UINT64_C(0x000121C2DFF5C5F8), UINT64_C(0x0002C6372966E3BB),
2265           UINT64_C(0x00040EDCBB6FAE3D), UINT64_C(0x00045E8590C45B65),
2266           UINT64_C(0x00057F2556A1008A), UINT64_C(0x000D2C63669622C2),
2267           UINT64_C(0x00053762BBDA6A4D), UINT64_C(0x000638814A3C0C15),
2268           UINT64_C(0x0006306A8C676FEC), UINT64_C(0x00039FEA5B5F2932)},
2269          {UINT64_C(0x00045B18CC6F6BD4), UINT64_C(0x000572570661CF49),
2270           UINT64_C(0x0003DB3E7E6325C0), UINT64_C(0x0000D4366AC3C833),
2271           UINT64_C(0x0000BA40102D6C2B), UINT64_C(0x000D88CD5627BDAA),
2272           UINT64_C(0x0001A191F2BD95D8), UINT64_C(0x0007B490EB1F6E2E),
2273           UINT64_C(0x0001854754C42C14), UINT64_C(0x0004F9B402BCF150)}},
2274         {{UINT64_C(0x00062710FFD6E4C3), UINT64_C(0x00075F168936C9E7),
2275           UINT64_C(0x0005EBCC23DECE92), UINT64_C(0x0006A533FC0618A4),
2276           UINT64_C(0x00006276D8296DCC), UINT64_C(0x000C6FDBE7DDD556),
2277           UINT64_C(0x0005F77BF0F1421B), UINT64_C(0x00021327FBB8BE4C),
2278           UINT64_C(0x00039F51E09D0F1B), UINT64_C(0x00036B0DC0560BD1)},
2279          {UINT64_C(0x00090F866EA9C581), UINT64_C(0x0001BB6C84E218AF),
2280           UINT64_C(0x00016801E510D5D1), UINT64_C(0x00048969111EF218),
2281           UINT64_C(0x00032F01F97E8EAC), UINT64_C(0x000846529FDA255F),
2282           UINT64_C(0x00003E0DA43E7BC5), UINT64_C(0x0005377E9AD3A533),
2283           UINT64_C(0x00054F1C41B443CC), UINT64_C(0x0001E2C9C182A7B8)}},
2284         {{UINT64_C(0x0006822BBEC85A6F), UINT64_C(0x00037FF627207C7D),
2285           UINT64_C(0x000099E1EDB38619), UINT64_C(0x00024EABAAEF4727),
2286           UINT64_C(0x0001634583C11813), UINT64_C(0x0005BF27EB8FC0B2),
2287           UINT64_C(0x0002C5E6D68AED81), UINT64_C(0x00051011E59FEFC1),
2288           UINT64_C(0x0005BDE68E16008B), UINT64_C(0x00001CDB6AC4A926)},
2289          {UINT64_C(0x000F9C8354532F1F), UINT64_C(0x0003B7D13F24D465),
2290           UINT64_C(0x0001EE14FAFB642C), UINT64_C(0x0003086537C154F6),
2291           UINT64_C(0x000498FB21A3549B), UINT64_C(0x000D5F9768C501AF),
2292           UINT64_C(0x0007358BD9264583), UINT64_C(0x00020604DE0C73BC),
2293           UINT64_C(0x0004C1EFB4D90397), UINT64_C(0x000316FD7FD552FA)}},
2294         {{UINT64_C(0x000DF775325B2BEF), UINT64_C(0x0007C981BDB56B5B),
2295           UINT64_C(0x00030415FEF5D1EB), UINT64_C(0x00066427FB342115),
2296           UINT64_C(0x00039F275DCEB907), UINT64_C(0x000FC52CB944765D),
2297           UINT64_C(0x00063BA40ACC8623), UINT64_C(0x000217B5022687A4),
2298           UINT64_C(0x0003782EE74343F6), UINT64_C(0x0006E344AF9791BC)},
2299          {UINT64_C(0x0006A094A3D00C90), UINT64_C(0x0000A8C2AF5A4ED6),
2300           UINT64_C(0x0002593EB8606459), UINT64_C(0x0006BB706B63F1A3),
2301           UINT64_C(0x0001AC9ABD940E22), UINT64_C(0x000A8AFEAB077BE2),
2302           UINT64_C(0x000053C3E6DE9695), UINT64_C(0x00035197B6C50B68),
2303           UINT64_C(0x0005F05ED56144C6), UINT64_C(0x0005D16C6B2F7A7D)}},
2304     },
2305     {
2306         {{UINT64_C(0x0009697EFB5343B1), UINT64_C(0x00030F79CEE2F4D7),
2307           UINT64_C(0x0007C57239C2BFFF), UINT64_C(0x0005E177E6306573),
2308           UINT64_C(0x00058AECAB18B5E4), UINT64_C(0x000C2D8B42DA873F),
2309           UINT64_C(0x00067CEC60F40D7C), UINT64_C(0x0001CD069631374B),
2310           UINT64_C(0x00053BF89F276A0A), UINT64_C(0x000211BC2F82ABCC)},
2311          {UINT64_C(0x000F42F918BECCB0), UINT64_C(0x00050BCCFB9278C6),
2312           UINT64_C(0x000521F422BE023A), UINT64_C(0x000247E206708DFF),
2313           UINT64_C(0x000603F8EAFA08E8), UINT64_C(0x0001C8FA49E8E7A9),
2314           UINT64_C(0x0000ED2F247FA8F2), UINT64_C(0x00054F2BD90FC41F),
2315           UINT64_C(0x000613E3F3A0E141), UINT64_C(0x00058F502829C1A3)}},
2316         {{UINT64_C(0x000FA958A02414EA), UINT64_C(0x0005694D8B531753),
2317           UINT64_C(0x0002596B7F70E2D2), UINT64_C(0x0006F58C437031E9),
2318           UINT64_C(0x0005E52B9AB2FC87), UINT64_C(0x00047681FFAD52A2),
2319           UINT64_C(0x00054CFD109661E6), UINT64_C(0x0002642E41E026F7),
2320           UINT64_C(0x00015A4C0B3E2C49), UINT64_C(0x00012DBAB3D25C66)},
2321          {UINT64_C(0x000F66D444F2C6A3), UINT64_C(0x000465ABD7FBD63E),
2322           UINT64_C(0x000346682E14F62C), UINT64_C(0x0007D1BFDC2BDD7C),
2323           UINT64_C(0x00014B50150CDD7D), UINT64_C(0x000F1BAD6F065607),
2324           UINT64_C(0x0001B669F08E4917), UINT64_C(0x0007147465D09FD0),
2325           UINT64_C(0x0002E2E3DF8C1CE5), UINT64_C(0x0003E168C6A9219B)}},
2326         {{UINT64_C(0x00026E66F048E71C), UINT64_C(0x00021DA6DDB4379F),
2327           UINT64_C(0x0006A446FCD70668), UINT64_C(0x0000ED5A782862E2),
2328           UINT64_C(0x000600DB452AEA1A), UINT64_C(0x00070E2B0EE96B31),
2329           UINT64_C(0x000272BCDA0E468B), UINT64_C(0x0006754F74551E8E),
2330           UINT64_C(0x00030B2901255489), UINT64_C(0x00018BA394D8F24B)},
2331          {UINT64_C(0x000EF5DAB92AD60C), UINT64_C(0x0007A4E353682E4C),
2332           UINT64_C(0x0004D92B14F64543), UINT64_C(0x0006FB1C445C4562),
2333           UINT64_C(0x00005F0C73553832), UINT64_C(0x000F219585C811FA),
2334           UINT64_C(0x00002373528CE90C), UINT64_C(0x0005AEFE0F86FFD6),
2335           UINT64_C(0x000065686EF3DFA1), UINT64_C(0x0004BCFCBABBE76F)}},
2336         {{UINT64_C(0x000A04E942DB5726), UINT64_C(0x0004E0A8E957D2EB),
2337           UINT64_C(0x000042171E8C74B0), UINT64_C(0x0002CD5D9C992A32),
2338           UINT64_C(0x00021775A666DF3B), UINT64_C(0x0009B1719FCE5AFD),
2339           UINT64_C(0x00070479A5510650), UINT64_C(0x00076CA597F5197E),
2340           UINT64_C(0x0002FF8004DC7298), UINT64_C(0x000427FBA3F2118F)},
2341          {UINT64_C(0x000B2B7F0F1BC525), UINT64_C(0x0004F49FDAF0E9F8),
2342           UINT64_C(0x000119E1F8B31D5C), UINT64_C(0x00002C2E70F7717A),
2343           UINT64_C(0x000547EB13E64F24), UINT64_C(0x00061C10285CB68B),
2344           UINT64_C(0x00027F33F80AC82B), UINT64_C(0x00007A73F720ACD1),
2345           UINT64_C(0x0000FA4783E28EA8), UINT64_C(0x0005E1B01569FE4A)}},
2346         {{UINT64_C(0x000C8833182EEC18), UINT64_C(0x0005188EE3CCBD7D),
2347           UINT64_C(0x000145800FA7D3B9), UINT64_C(0x00015F410C821BF2),
2348           UINT64_C(0x0006D6985D22BB97), UINT64_C(0x000ACE8A202EEB11),
2349           UINT64_C(0x000000D3BC5FFCBC), UINT64_C(0x0005A94DE37C5B1E),
2350           UINT64_C(0x0006A3E90AE676A0), UINT64_C(0x0003DC3E9B9DEA03)},
2351          {UINT64_C(0x000ADDB18897A653), UINT64_C(0x00028BB1348E369A),
2352           UINT64_C(0x0000E0EF15D097A0), UINT64_C(0x000369538A36A67C),
2353           UINT64_C(0x0004F11787ECB811), UINT64_C(0x000DAB579DC3F6E7),
2354           UINT64_C(0x00051EEDC98205E1), UINT64_C(0x000296B14C5B057C),
2355           UINT64_C(0x0006A6B518D5A499), UINT64_C(0x0004B973FBCAD781)}},
2356         {{UINT64_C(0x00092403168F568C), UINT64_C(0x00050C76745944DA),
2357           UINT64_C(0x00045586DDAA3849), UINT64_C(0x0002424F7A393AE3),
2358           UINT64_C(0x0003613FCF452DAE), UINT64_C(0x000483477F08760D),
2359           UINT64_C(0x0006DE9C9C30A9F7), UINT64_C(0x0006DE3DC9E26B78),
2360           UINT64_C(0x00072E8A269F2328), UINT64_C(0x0001A0904E3E62B3)},
2361          {UINT64_C(0x000F53CF7A63B520), UINT64_C(0x00016E19E79779D7),
2362           UINT64_C(0x0003BA73148BC41B), UINT64_C(0x0000A0B9CB876955),
2363           UINT64_C(0x0002C3678483C9E4), UINT64_C(0x0001717604F49F0C),
2364           UINT64_C(0x0006DA52AE47D9A6), UINT64_C(0x00018A068DEAD248),
2365           UINT64_C(0x0000A45F44D54D0B), UINT64_C(0x000201738C7D6750)}},
2366         {{UINT64_C(0x000BFD50B6C0ED05), UINT64_C(0x0003B59B6181691D),
2367           UINT64_C(0x00036E5595022312), UINT64_C(0x0006371166F016C4),
2368           UINT64_C(0x0000D2463D93685C), UINT64_C(0x0000FB99CEC22230),
2369           UINT64_C(0x000662B7CA84328B), UINT64_C(0x0005B058F277AA90),
2370           UINT64_C(0x000744C6285E6BE8), UINT64_C(0x00044924B43A399C)},
2371          {UINT64_C(0x0009FE2EF5756858), UINT64_C(0x0002609FAC19675C),
2372           UINT64_C(0x0001EDB73C43A527), UINT64_C(0x00018040218709B5),
2373           UINT64_C(0x00038E60561A169C), UINT64_C(0x000716A3DE9C2728),
2374           UINT64_C(0x0001312CD53738AB), UINT64_C(0x00003A5EADF12479),
2375           UINT64_C(0x0004F1C4C30A626A), UINT64_C(0x00017077F028932B)}},
2376         {{UINT64_C(0x0005E4B52DDE7879), UINT64_C(0x0000DD824234AF86),
2377           UINT64_C(0x0007E33F8D4E4720), UINT64_C(0x0007DE0000448CDA),
2378           UINT64_C(0x00033984E740002A), UINT64_C(0x000C47E6A3586EA2),
2379           UINT64_C(0x00044D0958EBE073), UINT64_C(0x00001246801B8077),
2380           UINT64_C(0x0002F9FC5AA5757F), UINT64_C(0x0001A2DCE0976101)},
2381          {UINT64_C(0x000660A83163C88F), UINT64_C(0x000537D8B7F6309C),
2382           UINT64_C(0x00008DD86923D2DE), UINT64_C(0x0001EDCB48974621),
2383           UINT64_C(0x00006C01F610F051), UINT64_C(0x0008C9E7599C4A9D),
2384           UINT64_C(0x00036EA13E261953), UINT64_C(0x0003ED8BC32C0F96),
2385           UINT64_C(0x000755A3B7B81967), UINT64_C(0x00013DE89A6B4D9D)}},
2386         {{UINT64_C(0x000CA6E0EB363C7F), UINT64_C(0x0005F55CE82062CB),
2387           UINT64_C(0x00054C8A253358D0), UINT64_C(0x0002C5D656290FF8),
2388           UINT64_C(0x00057F5B9325F1DA), UINT64_C(0x0001FEF7C4623421),
2389           UINT64_C(0x000751B35DC509CC), UINT64_C(0x0000D577E46356BC),
2390           UINT64_C(0x0001AE1750B963E0), UINT64_C(0x000101926AD538C7)},
2391          {UINT64_C(0x000ADB8B609BBDFF), UINT64_C(0x00071752C179ED60),
2392           UINT64_C(0x0001F4F46D3CDA68), UINT64_C(0x0006AB70B8479B34),
2393           UINT64_C(0x00025F7ED7DEE309), UINT64_C(0x000DDC2D9609A612),
2394           UINT64_C(0x0004E68BAF1E467F), UINT64_C(0x00040F9B19D3CBE2),
2395           UINT64_C(0x00037E8C1EC0C6A4), UINT64_C(0x0003125691C2193B)}},
2396         {{UINT64_C(0x00067DA2BD46C9EA), UINT64_C(0x00026B6CAB294387),
2397           UINT64_C(0x0001D6166D7C9065), UINT64_C(0x00062BF47248BD53),
2398           UINT64_C(0x0002E90A5DD8639A), UINT64_C(0x0003936168470E19),
2399           UINT64_C(0x000528F76D8AF696), UINT64_C(0x0006ED2117C0F595),
2400           UINT64_C(0x00053A94B0075896), UINT64_C(0x00029EA83F539A1E)},
2401          {UINT64_C(0x0002028A9BD76B91), UINT64_C(0x0004FD251AA0E6F2),
2402           UINT64_C(0x0005AC8CC0D23EFF), UINT64_C(0x000128939573B39C),
2403           UINT64_C(0x000672B16EA38AE5), UINT64_C(0x0004D9266E6063F1),
2404           UINT64_C(0x000059E6A8535CE8), UINT64_C(0x0000599ECB0EF8DD),
2405           UINT64_C(0x0007013D35E8201F), UINT64_C(0x0002C65B4B7CFED7)}},
2406         {{UINT64_C(0x0008F58A1E3612AD), UINT64_C(0x0003A9FB96EDB71F),
2407           UINT64_C(0x0001F18D41C781FC), UINT64_C(0x00018367EBB23895),
2408           UINT64_C(0x0005D1FCD3BE526A), UINT64_C(0x000A42281101E568),
2409           UINT64_C(0x0005BABB0531BAFA), UINT64_C(0x0000A5F2A706F2D0),
2410           UINT64_C(0x00004127B930A594), UINT64_C(0x0000EB497CC34685)},
2411          {UINT64_C(0x00073B79A1945681), UINT64_C(0x000752EA80F8AC71),
2412           UINT64_C(0x0006302573AC640B), UINT64_C(0x00078867625480E5),
2413           UINT64_C(0x0007079395B2C6EF), UINT64_C(0x000C10FF5DD268D7),
2414           UINT64_C(0x00057909D9F5E805), UINT64_C(0x0003A161EE637F23),
2415           UINT64_C(0x00076AA86D84AD92), UINT64_C(0x0001EF085DE6C3AC)}},
2416         {{UINT64_C(0x000C311C4599BCA4), UINT64_C(0x00071D198CA022EA),
2417           UINT64_C(0x0007BCCA6C1EA7A9), UINT64_C(0x0005A91F6CE54B62),
2418           UINT64_C(0x00040F2F68ADFDE8), UINT64_C(0x0006DA7F20DC869C),
2419           UINT64_C(0x00059DD3EE431C99), UINT64_C(0x000714D6993F24A2),
2420           UINT64_C(0x0007C5152642D91F), UINT64_C(0x0002F4E11F2CC27F)},
2421          {UINT64_C(0x000A8ACA2FD26CFD), UINT64_C(0x0002EB39C4AC80BE),
2422           UINT64_C(0x0005BFAD35FC99F2), UINT64_C(0x0002BFAB444638F8),
2423           UINT64_C(0x000355F04D6D03C9), UINT64_C(0x000EB7D307BB548E),
2424           UINT64_C(0x00045256FDC37CFF), UINT64_C(0x000455EACB7CD74C),
2425           UINT64_C(0x0005F5BC0A0265A1), UINT64_C(0x0004E4B55474C1FB)}},
2426         {{UINT64_C(0x000405C3B4CBBA99), UINT64_C(0x0003A2CFD9BA8CE7),
2427           UINT64_C(0x0004D38F33BA729F), UINT64_C(0x00058368002B41A8),
2428           UINT64_C(0x0001EB778063FAFA), UINT64_C(0x00000CB2D95428C0),
2429           UINT64_C(0x0007A5F40E6F6248), UINT64_C(0x00066402E02185E2),
2430           UINT64_C(0x0002874AE640E9BA), UINT64_C(0x00025092EF1270C6)},
2431          {UINT64_C(0x0004F5A43B7EA260), UINT64_C(0x00024FC17540A356),
2432           UINT64_C(0x0001076B47F9F931), UINT64_C(0x0002FB78183398A6),
2433           UINT64_C(0x000229276794FECA), UINT64_C(0x0001B56FD26AC511),
2434           UINT64_C(0x00013652FDA2807D), UINT64_C(0x0000AD7AC8AF8820),
2435           UINT64_C(0x00059580D670358C), UINT64_C(0x0007B37AB910DB85)}},
2436         {{UINT64_C(0x000E7AAFAA81120D), UINT64_C(0x0001EFCC9131C28F),
2437           UINT64_C(0x0000F04662F79A92), UINT64_C(0x00018481A743283F),
2438           UINT64_C(0x0003227CCC1B0051), UINT64_C(0x000889F9DEBDBBB6),
2439           UINT64_C(0x00026E53C8DB36F4), UINT64_C(0x00040E757FC7CCB6),
2440           UINT64_C(0x000796C1E48AF493), UINT64_C(0x0005CD8E286C308F)},
2441          {UINT64_C(0x000FEEF26280024C), UINT64_C(0x00008656CE73F334),
2442           UINT64_C(0x000047F19B4CCB60), UINT64_C(0x0003E09FD007DE6A),
2443           UINT64_C(0x0006DFDC10446128), UINT64_C(0x0001C5059DDF7FB5),
2444           UINT64_C(0x0000C6D4835DEC52), UINT64_C(0x0001ECDEF9FA549E),
2445           UINT64_C(0x00004A50331A27BB), UINT64_C(0x0007445C7A2F53C4)}},
2446         {{UINT64_C(0x000919F3EC9CCC4F), UINT64_C(0x0005F2F6CF149577),
2447           UINT64_C(0x00060C560F67551A), UINT64_C(0x0007E358E045685B),
2448           UINT64_C(0x00070CCBF13484CF), UINT64_C(0x000C37725A783FCF),
2449           UINT64_C(0x00054AB9E7EE7B1E), UINT64_C(0x0003333BAB51E43A),
2450           UINT64_C(0x000017DC7BC018D7), UINT64_C(0x00003CA4BCFA7DD5)},
2451          {UINT64_C(0x0003E1A7A3069435), UINT64_C(0x000480EFF4E48BC7),
2452           UINT64_C(0x00062115BD5D5E69), UINT64_C(0x0007096DD6C931AD),
2453           UINT64_C(0x0002608249CB7A58), UINT64_C(0x0008A26364C8096A),
2454           UINT64_C(0x0003C1F2D4A059E3), UINT64_C(0x00010E330E128864),
2455           UINT64_C(0x0003B581FC1DE5C7), UINT64_C(0x000588DBEAEEB225)}},
2456         {{UINT64_C(0x0003AC2924B671D6), UINT64_C(0x00027D78B698A45A),
2457           UINT64_C(0x00015C6FF89B42E6), UINT64_C(0x000480FF26EC1381),
2458           UINT64_C(0x0000CC4426AAA245), UINT64_C(0x000FB55D009EF0BB),
2459           UINT64_C(0x000298CBBB4ADE83), UINT64_C(0x000718B823375BD8),
2460           UINT64_C(0x0007751B44E5F80F), UINT64_C(0x00059A1E5D2A4A5C)},
2461          {UINT64_C(0x000CB0EE2657342C), UINT64_C(0x00055C4B6D401505),
2462           UINT64_C(0x00056E99CE0E1574), UINT64_C(0x00002F6CB06EAD80),
2463           UINT64_C(0x000476059C9E6EB0), UINT64_C(0x000C60BC1D3204D4),
2464           UINT64_C(0x00050DC61142023B), UINT64_C(0x000726C34A8A210F),
2465           UINT64_C(0x0005C72290CE928B), UINT64_C(0x0004DFA0CEB1B72D)}},
2466     },
2467     {
2468         {{UINT64_C(0x000247F93F2BDD27), UINT64_C(0x0007C93034C92904),
2469           UINT64_C(0x00027DAD72E4B40B), UINT64_C(0x00014E25E82ABBD1),
2470           UINT64_C(0x00060E4F42A6C475), UINT64_C(0x000DC708D6D66CCB),
2471           UINT64_C(0x00036DB87A4B6343), UINT64_C(0x0003C58123691EAF),
2472           UINT64_C(0x0004DAD470664927), UINT64_C(0x0006A82E32F9C5E6)},
2473          {UINT64_C(0x0002A35EDD030037), UINT64_C(0x000219F0D4AE2250),
2474           UINT64_C(0x0003A7450131A667), UINT64_C(0x00061472E2C5CAD3),
2475           UINT64_C(0x0000BDF65BE7AF81), UINT64_C(0x0007F887A21C419E),
2476           UINT64_C(0x00048915425E3C2E), UINT64_C(0x00046299A3659CE9),
2477           UINT64_C(0x00044FD643C6825F), UINT64_C(0x00041408EE3F7EE7)}},
2478         {{UINT64_C(0x0001D71DC21EAB28), UINT64_C(0x00065A53D38F953D),
2479           UINT64_C(0x00032DEB59D8023C), UINT64_C(0x0004054571AECBAF),
2480           UINT64_C(0x0006227C20ADC1B1), UINT64_C(0x0004052B60ED5E09),
2481           UINT64_C(0x0007D536170CE49B), UINT64_C(0x000133F69C75D93C),
2482           UINT64_C(0x000631A47E596690), UINT64_C(0x0007BE94B2BCFA10)},
2483          {UINT64_C(0x000D3D75C6EDBD10), UINT64_C(0x0002F0C1700CF75C),
2484           UINT64_C(0x0000880BD06AC9F8), UINT64_C(0x0007F4DE75015506),
2485           UINT64_C(0x0004F7D9218E4531), UINT64_C(0x000525D094B57596),
2486           UINT64_C(0x000303BA4ADC93BE), UINT64_C(0x000781A6DDE92BB0),
2487           UINT64_C(0x0000145A33FB664A), UINT64_C(0x0003075364E801EA)}},
2488         {{UINT64_C(0x000B5C724B664A37), UINT64_C(0x0002503E28109C51),
2489           UINT64_C(0x00025B829904E428), UINT64_C(0x00069506DB016812),
2490           UINT64_C(0x0004A750C8A64E1B), UINT64_C(0x000B87DB220A7C57),
2491           UINT64_C(0x00031EFD957F4D41), UINT64_C(0x000049A333D86B06),
2492           UINT64_C(0x0001D8EAEB6440B9), UINT64_C(0x000276C32B4CE41C)},
2493          {UINT64_C(0x0008857C83EF71E8), UINT64_C(0x0005E721B3AB9D6B),
2494           UINT64_C(0x00017EACB90E5F00), UINT64_C(0x0005C3E831C481C5),
2495           UINT64_C(0x0007C0B8197E5462), UINT64_C(0x000DBDC919F92AA9),
2496           UINT64_C(0x0002200849E9CAEE), UINT64_C(0x0004BE6C719C5906),
2497           UINT64_C(0x0004E280855B1920), UINT64_C(0x0005C5B91DB6D1EA)}},
2498         {{UINT64_C(0x000424B6E394CF88), UINT64_C(0x0003C2C97C04AC74),
2499           UINT64_C(0x00063ADB5E77144A), UINT64_C(0x0005D883FF8E6B47),
2500           UINT64_C(0x0004F87D0A1CC558), UINT64_C(0x000BB8A228CF7739),
2501           UINT64_C(0x0004B3A03FA0D71F), UINT64_C(0x000753D34ABABB8E),
2502           UINT64_C(0x000562AB4C8CB943), UINT64_C(0x0001CEBF9BBC430C)},
2503          {UINT64_C(0x0007223CBD30A33E), UINT64_C(0x0007335C7215C6C3),
2504           UINT64_C(0x000603E2856D2862), UINT64_C(0x0002A848E65B42A0),
2505           UINT64_C(0x0004218F69174E09), UINT64_C(0x0005FFA3227A0A23),
2506           UINT64_C(0x00005B5868C2514B), UINT64_C(0x0004938AFADAD730),
2507           UINT64_C(0x0007660F9A69E6DE), UINT64_C(0x00065102D85E579B)}},
2508         {{UINT64_C(0x000D8ADCE1ED036C), UINT64_C(0x00075B271EA827E2),
2509           UINT64_C(0x00076B7F6030D0B9), UINT64_C(0x0001CF9A9998A24D),
2510           UINT64_C(0x0003EAAA8D599E8C), UINT64_C(0x000926867BCB228B),
2511           UINT64_C(0x0005C256FF24300F), UINT64_C(0x0002D2C9DDD6690E),
2512           UINT64_C(0x000318EC38CFD857), UINT64_C(0x00040F4D05884680)},
2513          {UINT64_C(0x000BA16121F40EA5), UINT64_C(0x0003E1A3C8625ED4),
2514           UINT64_C(0x0003A030ED90ADCB), UINT64_C(0x00051906502C4E1E),
2515           UINT64_C(0x00056353D129BB9B), UINT64_C(0x00097E025B071B0B),
2516           UINT64_C(0x0007FEFDDBE2C9B0), UINT64_C(0x0005B33FC31E9599),
2517           UINT64_C(0x0004B5E596C70338), UINT64_C(0x0001C9B00B315DC4)}},
2518         {{UINT64_C(0x000607DBC162717D), UINT64_C(0x0000D1169F3006DA),
2519           UINT64_C(0x0000DD28C7A17F77), UINT64_C(0x000575B9A5BE6190),
2520           UINT64_C(0x0001608A9002E304), UINT64_C(0x0008355DA341F5E9),
2521           UINT64_C(0x0006F9C8170EE63C), UINT64_C(0x00014428C0115E5D),
2522           UINT64_C(0x00023A2E2E57272F), UINT64_C(0x000688C75933F079)},
2523          {UINT64_C(0x000FF6A2CDB10A3C), UINT64_C(0x00011BFAEC3923D3),
2524           UINT64_C(0x00042ED75727E176), UINT64_C(0x00014FA777DC3A6C),
2525           UINT64_C(0x000160BDE1742549), UINT64_C(0x000AB16C591470C7),
2526           UINT64_C(0x00028D130B66A9E4), UINT64_C(0x00047E950B4F11C5),
2527           UINT64_C(0x000135717CA7A661), UINT64_C(0x000654B545B4E06F)}},
2528         {{UINT64_C(0x00021C7F20682330), UINT64_C(0x0006E09BA4DD4E28),
2529           UINT64_C(0x0005ED0838CEDFB5), UINT64_C(0x00046FAAD6213185),
2530           UINT64_C(0x00042F098929C355), UINT64_C(0x0002587008E96E6D),
2531           UINT64_C(0x000705A22499C027), UINT64_C(0x0000D8B3B0087A17),
2532           UINT64_C(0x0003A94A483422C6), UINT64_C(0x0003D967C7D3D6FD)},
2533          {UINT64_C(0x0009965DB7927E5D), UINT64_C(0x0005AB719C5CAE45),
2534           UINT64_C(0x00033CCD1F896812), UINT64_C(0x0001AE9A7A4BA5D3),
2535           UINT64_C(0x00072043806DB7CF), UINT64_C(0x0008763B930B883A),
2536           UINT64_C(0x0002E90170B740E5), UINT64_C(0x00058F5C1631E156),
2537           UINT64_C(0x0000C3D179B466C2), UINT64_C(0x0005E600D05FAA9D)}},
2538         {{UINT64_C(0x0001BDEA3D7E7C27), UINT64_C(0x0000D69B04E78772),
2539           UINT64_C(0x0006FD1A96FF1C3D), UINT64_C(0x000704C7BCD74C67),
2540           UINT64_C(0x0006587D24D60D0B), UINT64_C(0x0009A72FB4EDBDF3),
2541           UINT64_C(0x0005F66F2FC11A22), UINT64_C(0x0005C07A5C028CB3),
2542           UINT64_C(0x000427DC53252FD7), UINT64_C(0x00000C0FE0D5E259)},
2543          {UINT64_C(0x00015C9DCE11A938), UINT64_C(0x0002F708542BA021),
2544           UINT64_C(0x0006DAB5EC8723B2), UINT64_C(0x0003151DBC6DBEA3),
2545           UINT64_C(0x000309C003EEA187), UINT64_C(0x000986E93A4AD727),
2546           UINT64_C(0x0005A27640EB41AD), UINT64_C(0x00064B4B969CE91A),
2547           UINT64_C(0x00058AD60A48BA18), UINT64_C(0x0007DE07E6483D46)}},
2548         {{UINT64_C(0x0001C747EC0357A9), UINT64_C(0x00053CBE4FDF72AE),
2549           UINT64_C(0x0001FB453499F9E9), UINT64_C(0x0004C4167C9B02FD),
2550           UINT64_C(0x000127DCADD50EB4), UINT64_C(0x000805FB4E216AE0),
2551           UINT64_C(0x00029FAA52099B86), UINT64_C(0x00047C3F68455806),
2552           UINT64_C(0x0001B9FA50F58DBC), UINT64_C(0x0003BD919AFF02A8)},
2553          {UINT64_C(0x0000E4A059AF4846), UINT64_C(0x0007E18DF861A61A),
2554           UINT64_C(0x0006C2588CE7246D), UINT64_C(0x000662D80DEF8736),
2555           UINT64_C(0x00067C77B3EBB3CB), UINT64_C(0x000DB319339B4754),
2556           UINT64_C(0x0002F3DAFE1D02AD), UINT64_C(0x0001AB8E0CEDA23A),
2557           UINT64_C(0x0000839E55FF286D), UINT64_C(0x000427E6A937B04C)}},
2558         {{UINT64_C(0x0009CD5E8F10490A), UINT64_C(0x000770DEE503609F),
2559           UINT64_C(0x0002F4D1F9822AF0), UINT64_C(0x000209D7D6C6D432),
2560           UINT64_C(0x000577EE861AD61E), UINT64_C(0x000D96564BC24BF1),
2561           UINT64_C(0x0007205D262B6DBF), UINT64_C(0x0003C7E6251A1A93),
2562           UINT64_C(0x00013FC13A41D60E), UINT64_C(0x000213F2333B026A)},
2563          {UINT64_C(0x0008E0F9A2F3F058), UINT64_C(0x00052D3E4E010B53),
2564           UINT64_C(0x00048FB0F03593BF), UINT64_C(0x0007400230A674D3),
2565           UINT64_C(0x0007D42DE3498D1B), UINT64_C(0x00088D98507324A9),
2566           UINT64_C(0x0006FEBD72D5E2AE), UINT64_C(0x00023587543DE864),
2567           UINT64_C(0x0006101B209DB09C), UINT64_C(0x0007176D895A251A)}},
2568         {{UINT64_C(0x0005B6A111C3F2A8), UINT64_C(0x000287D5A1A25472),
2569           UINT64_C(0x0004C3C87F77626A), UINT64_C(0x0007EAFB9945BB03),
2570           UINT64_C(0x0000B01EC3BD3FD6), UINT64_C(0x0003CFA14713C9F7),
2571           UINT64_C(0x00055DC5C2B54DF9), UINT64_C(0x00040CB8F2FD4F74),
2572           UINT64_C(0x0002B2C21AAD7697), UINT64_C(0x0006A800C6F15DE5)},
2573          {UINT64_C(0x00087EBAC501C1CD), UINT64_C(0x0004B94A8B9744A9),
2574           UINT64_C(0x00071EA1C4951821), UINT64_C(0x0002F01B39CE1A3C),
2575           UINT64_C(0x0005D4D68C89745D), UINT64_C(0x000CDC8D00E9F950),
2576           UINT64_C(0x0004C2450A80D882), UINT64_C(0x0002B0D6F20496F6),
2577           UINT64_C(0x0000E2B53712BC8E), UINT64_C(0x0004FB508F36E069)}},
2578         {{UINT64_C(0x0009905B853D75DD), UINT64_C(0x0002202313A58A10),
2579           UINT64_C(0x00047F9FAA6A8086), UINT64_C(0x0006997CD94C68DB),
2580           UINT64_C(0x00053560DF08CE67), UINT64_C(0x00058B243F1C8213),
2581           UINT64_C(0x00023330F3EAC431), UINT64_C(0x00029615BF1FDC4B),
2582           UINT64_C(0x0000E02FFE4339AB), UINT64_C(0x0006701924C686EC)},
2583          {UINT64_C(0x00028B574C85D822), UINT64_C(0x00023BDBC197A77D),
2584           UINT64_C(0x0000CA80105F893D), UINT64_C(0x0004A4B3F8BA0A40),
2585           UINT64_C(0x0006606848556101), UINT64_C(0x0002691001720525),
2586           UINT64_C(0x000492966DED5935), UINT64_C(0x0004330B122DF4B0),
2587           UINT64_C(0x0003F277BB31C2EC), UINT64_C(0x000415C4C2A49A50)}},
2588         {{UINT64_C(0x00067B9FED7E7EA9), UINT64_C(0x0000C6210735C315),
2589           UINT64_C(0x000015C61BE12C57), UINT64_C(0x00031A65953D8E09),
2590           UINT64_C(0x0000C16E4265E92A), UINT64_C(0x00038511318F2F8F),
2591           UINT64_C(0x0006D2553216EB6C), UINT64_C(0x00014C8A2AC5A158),
2592           UINT64_C(0x000155D5D24C02F3), UINT64_C(0x00028479C9ACA656)},
2593          {UINT64_C(0x0007F082D316A5DE), UINT64_C(0x0003727A88716E25),
2594           UINT64_C(0x000759E99508C576), UINT64_C(0x000268F8E924CE60),
2595           UINT64_C(0x0006584B44F67E86), UINT64_C(0x00010FC03061696C),
2596           UINT64_C(0x000111F962EADA3C), UINT64_C(0x000287220D2E4A6F),
2597           UINT64_C(0x0003DB8A5947F03E), UINT64_C(0x00063C396A142480)}},
2598         {{UINT64_C(0x0008D64DDD35262C), UINT64_C(0x0000E4419BEEDCBC),
2599           UINT64_C(0x0002644C710FD7DF), UINT64_C(0x0002B9FD57D1EDA6),
2600           UINT64_C(0x0001B443D6794EE2), UINT64_C(0x00066E8A571BA2F0),
2601           UINT64_C(0x0002A7DDA194FF52), UINT64_C(0x0000F1F9B9EB114E),
2602           UINT64_C(0x0002D0C71939AF7D), UINT64_C(0x0007B1CF36555692)},
2603          {UINT64_C(0x000E6FC6E690E6C9), UINT64_C(0x00025FE13962D085),
2604           UINT64_C(0x00057EF392B58263), UINT64_C(0x0000601F80D88963),
2605           UINT64_C(0x0000F77167FACF40), UINT64_C(0x0005C1EB1F4AF8D3),
2606           UINT64_C(0x0004E45CA91A75A3), UINT64_C(0x0007A538AF4D39AB),
2607           UINT64_C(0x0002FC7EF186BF83), UINT64_C(0x0002BB96633B032F)}},
2608         {{UINT64_C(0x000A511387235D97), UINT64_C(0x0000C5AEBD7CD669),
2609           UINT64_C(0x0001E2B79B37FC76), UINT64_C(0x000633A0ED45A1B2),
2610           UINT64_C(0x00002A485310156D), UINT64_C(0x000CF71C1E86A953),
2611           UINT64_C(0x000380A9470BDE9B), UINT64_C(0x0006C3A16CD16C98),
2612           UINT64_C(0x0003FD675030BD33), UINT64_C(0x0005733732E1E8BD)},
2613          {UINT64_C(0x0005DC87E99B96E0), UINT64_C(0x00061EEB65283A4A),
2614           UINT64_C(0x00066868AD05A9F6), UINT64_C(0x0003149FA1801E6C),
2615           UINT64_C(0x00009D644B39DFC5), UINT64_C(0x00088AA6A5735E82),
2616           UINT64_C(0x000329D82B26F648), UINT64_C(0x00038BF5BA7C68AD),
2617           UINT64_C(0x0000C5080B2DF90F), UINT64_C(0x00038D1F9AC2EAFD)}},
2618         {{UINT64_C(0x000DB14BDA7C7B66), UINT64_C(0x0000C49B073976FE),
2619           UINT64_C(0x000594F284FFA26E), UINT64_C(0x000082CF489F3922),
2620           UINT64_C(0x00052C957BF245F7), UINT64_C(0x0006E308A2AB1201),
2621           UINT64_C(0x000099B40ACA95A7), UINT64_C(0x0002815B6839730D),
2622           UINT64_C(0x0000B4295FDA8783), UINT64_C(0x00056F95752DE2DE)},
2623          {UINT64_C(0x000F056FEC9E88EA), UINT64_C(0x0007747F406F4246),
2624           UINT64_C(0x000125F62E04125C), UINT64_C(0x000286A0E4919620),
2625           UINT64_C(0x000691348CCDE24C), UINT64_C(0x0000010E5ED700B6),
2626           UINT64_C(0x0000B69D2C21F3C6), UINT64_C(0x00073767577F6F02),
2627           UINT64_C(0x0005344DA12140FD), UINT64_C(0x00063AC1FFD1B34E)}},
2628     },
2629     {
2630         {{UINT64_C(0x00073DCFA4CC1F6E), UINT64_C(0x000058B4C7ED3A6B),
2631           UINT64_C(0x00044FC7BBBB4D1C), UINT64_C(0x00073AA6DD4CD996),
2632           UINT64_C(0x000603CE62F0768C), UINT64_C(0x000DDF011F0B6AB3),
2633           UINT64_C(0x0003E05089170D90), UINT64_C(0x0005874DCC299BE8),
2634           UINT64_C(0x0001472869B59056), UINT64_C(0x000509DDD9B76FFE)},
2635          {UINT64_C(0x000EF415076C2F66), UINT64_C(0x00011E95B1CD79BE),
2636           UINT64_C(0x00072B66656ECB77), UINT64_C(0x0000C32231A4FA37),
2637           UINT64_C(0x000078B2D3568104), UINT64_C(0x00071892DBCB8007),
2638           UINT64_C(0x00003A0D60762137), UINT64_C(0x0001972E82FD7568),
2639           UINT64_C(0x0003B928B40F35C4), UINT64_C(0x00008D70A3EF6199)}},
2640         {{UINT64_C(0x000AFC3506C0703F), UINT64_C(0x000624FB1C5785C2),
2641           UINT64_C(0x0000AABC82587858), UINT64_C(0x0004C835073ADCF9),
2642           UINT64_C(0x000687A3E10BEBEC), UINT64_C(0x000594AAE6A6AE1A),
2643           UINT64_C(0x00065326690F40A8), UINT64_C(0x0000FAAF35DCEA85),
2644           UINT64_C(0x0000F2D71EE73779), UINT64_C(0x00066971F9CF6697)},
2645          {UINT64_C(0x000438C3AE869675), UINT64_C(0x00058F4A97CCECEE),
2646           UINT64_C(0x00038C0DA4EAB715), UINT64_C(0x0002EFF5EC967DA5),
2647           UINT64_C(0x0004EC8C45F8A0B7), UINT64_C(0x0001A00E90F5CDF1),
2648           UINT64_C(0x00008DEA644831E0), UINT64_C(0x000344FDFCB694A6),
2649           UINT64_C(0x0001645897F09A36), UINT64_C(0x0003CD2366934F24)}},
2650         {{UINT64_C(0x0003A9CBC10E78A2), UINT64_C(0x0005680C903EE3AA),
2651           UINT64_C(0x0006148C4134D494), UINT64_C(0x0000B708AB89AB5E),
2652           UINT64_C(0x0004077F94E08257), UINT64_C(0x0006E5183D078408),
2653           UINT64_C(0x000100C1D80D49CE), UINT64_C(0x00077E3B5B1FD1E9),
2654           UINT64_C(0x0001D5173866042B), UINT64_C(0x0002EC241DBE6604)},
2655          {UINT64_C(0x000D707611B80741), UINT64_C(0x000004EDC429B806),
2656           UINT64_C(0x00025B85B91E12D5), UINT64_C(0x0005A874EFD18EE2),
2657           UINT64_C(0x000679D292E2E5E8), UINT64_C(0x0007C4E1CF9D2493),
2658           UINT64_C(0x00007FEC8151F6C5), UINT64_C(0x0007077C6CE7BCBD),
2659           UINT64_C(0x0004E603D2D1C045), UINT64_C(0x000120DC52FC4C28)}},
2660         {{UINT64_C(0x00024CAB433F1EE9), UINT64_C(0x00029390B5399AC6),
2661           UINT64_C(0x0000A140735E1061), UINT64_C(0x0006209FAAABDAEB),
2662           UINT64_C(0x000313939B1E27F8), UINT64_C(0x00071218CE90C274),
2663           UINT64_C(0x00004D454CA99B52), UINT64_C(0x000244DC876EE217),
2664           UINT64_C(0x0007B9AEDFF13E10), UINT64_C(0x0007C60093FD8081)},
2665          {UINT64_C(0x000DA5DEA4CAF297), UINT64_C(0x00068C8666E24B9C),
2666           UINT64_C(0x0002429BB8CB157C), UINT64_C(0x00075FA673A5EDA2),
2667           UINT64_C(0x000374A3EAD4DEAA), UINT64_C(0x000BDA91FD4D7B4C),
2668           UINT64_C(0x000219669647B2DF), UINT64_C(0x0003EDAFFBB15EF4),
2669           UINT64_C(0x00024CF5BC63EF28), UINT64_C(0x00027124899C9A4B)}},
2670         {{UINT64_C(0x00040B019B1261D0), UINT64_C(0x0000B4F4F45584EA),
2671           UINT64_C(0x00010867C36FE3B7), UINT64_C(0x0001B956EFC67D1C),
2672           UINT64_C(0x00060551212213FD), UINT64_C(0x00045B1AC4D20479),
2673           UINT64_C(0x00031E79405F14E6), UINT64_C(0x00054F01E909A81E),
2674           UINT64_C(0x00001536D9DE39DB), UINT64_C(0x0000B62D820D6FE3)},
2675          {UINT64_C(0x0003F4243CF34066), UINT64_C(0x00024F7957E1D750),
2676           UINT64_C(0x000080B613A16A90), UINT64_C(0x0004FFBB7D0412AA),
2677           UINT64_C(0x00048AADB4617EEB), UINT64_C(0x0005590404BF6350),
2678           UINT64_C(0x0005FB0DEC254DD3), UINT64_C(0x0006E456239D68DC),
2679           UINT64_C(0x0006AA0BAC97FBC4), UINT64_C(0x0007C0F318810C9E)}},
2680         {{UINT64_C(0x00095C2255EB8676), UINT64_C(0x0002EEBEE04E7BD1),
2681           UINT64_C(0x00047162E07D3E1B), UINT64_C(0x00019CBB802D7D2F),
2682           UINT64_C(0x0004D5BCA1F2FE81), UINT64_C(0x000636275F6E3CD0),
2683           UINT64_C(0x000074C1065AE748), UINT64_C(0x00000ED33D724610),
2684           UINT64_C(0x000382AAE71C671F), UINT64_C(0x00050F862E56FE82)},
2685          {UINT64_C(0x000F0C6FE0519997), UINT64_C(0x0004AF7A837FAD03),
2686           UINT64_C(0x00029E2DCFC7D836), UINT64_C(0x0000D7429D3F9BC8),
2687           UINT64_C(0x0002062ED538B7FE), UINT64_C(0x00048D96CEDB79F1),
2688           UINT64_C(0x00035E77C26028A3), UINT64_C(0x0002BEBC515C0C05),
2689           UINT64_C(0x0001137EC9DBE5EA), UINT64_C(0x0004EF0306F592B4)}},
2690         {{UINT64_C(0x00045CFFCC0FA82B), UINT64_C(0x000147CD2A7BCEF8),
2691           UINT64_C(0x0004A7DF37A543F3), UINT64_C(0x0000E83C08C7DB26),
2692           UINT64_C(0x000433C19A259924), UINT64_C(0x000060A2CC17C1B7),
2693           UINT64_C(0x00048887C01708A7), UINT64_C(0x0004F7B43946A5B5),
2694           UINT64_C(0x0000318DA056D31F), UINT64_C(0x0005816FA3E55B23)},
2695          {UINT64_C(0x00028F1B6BE8EDBD), UINT64_C(0x0002FAEDDF5DD2E3),
2696           UINT64_C(0x0004F7E40BA33E35), UINT64_C(0x00065C3B855FC053),
2697           UINT64_C(0x0001874EF8C8D7C7), UINT64_C(0x0009EE69935EB5BD),
2698           UINT64_C(0x0005209285BDCD9B), UINT64_C(0x00065CD4AD193A52),
2699           UINT64_C(0x0007AF07028EFAD4), UINT64_C(0x0003D64202012D6B)}},
2700         {{UINT64_C(0x000B9243B209436A), UINT64_C(0x0004A9127BF30A58),
2701           UINT64_C(0x0006E0E94A1E2713), UINT64_C(0x0004376EAD2B248D),
2702           UINT64_C(0x000767EEA5E05823), UINT64_C(0x0009BF8F74216C3F),
2703           UINT64_C(0x00024B8202C21037), UINT64_C(0x00013B0257209206),
2704           UINT64_C(0x0002F0B8A9C57E63), UINT64_C(0x0001559540A76AA1)},
2705          {UINT64_C(0x00066AF801F7DD9E), UINT64_C(0x00075AFD2B0FB2AA),
2706           UINT64_C(0x00055CB5FD0A01A3), UINT64_C(0x000139A9A848804F),
2707           UINT64_C(0x0004DB6F2563F825), UINT64_C(0x0001293E77720431),
2708           UINT64_C(0x0005D00E9E6814E5), UINT64_C(0x00033A3B82EBAE98),
2709           UINT64_C(0x00032C37E6C66CBB), UINT64_C(0x000690013DADC456)}},
2710         {{UINT64_C(0x000272465B8B5D7D), UINT64_C(0x000720DB646ED253),
2711           UINT64_C(0x0002AB65B7565858), UINT64_C(0x00014AD6B607866E),
2712           UINT64_C(0x000598494CC47B43), UINT64_C(0x000001AE0D244024),
2713           UINT64_C(0x00029E1DE544546D), UINT64_C(0x0002D87A26EE67AB),
2714           UINT64_C(0x0002767B394A967D), UINT64_C(0x0005DD104AA8F32A)},
2715          {UINT64_C(0x00068115CF22CDAC), UINT64_C(0x0006E7DA3BE129A8),
2716           UINT64_C(0x00037A31451A8758), UINT64_C(0x00039CB3690F9258),
2717           UINT64_C(0x00069351BF30A237), UINT64_C(0x000943CB31F201C2),
2718           UINT64_C(0x00056D93FDE091B5), UINT64_C(0x0007A6DAFB6FE56C),
2719           UINT64_C(0x00076EBD371AC14C), UINT64_C(0x00022219B02515D5)}},
2720         {{UINT64_C(0x0007126658D45F84), UINT64_C(0x0005F94089210333),
2721           UINT64_C(0x0000DF0B1374230F), UINT64_C(0x0000C22084A59475),
2722           UINT64_C(0x0005B56056BEF979), UINT64_C(0x0003B18C16D005D1),
2723           UINT64_C(0x00009A3D6108A669), UINT64_C(0x0002B5446C86171D),
2724           UINT64_C(0x0003C25E4502353F), UINT64_C(0x0002AF979DDD05A1)},
2725          {UINT64_C(0x000CE57EA911389C), UINT64_C(0x00060CBCB1000CD6),
2726           UINT64_C(0x0002AEF497970566), UINT64_C(0x0003002606F34647),
2727           UINT64_C(0x0005BAC30DE7C37E), UINT64_C(0x000ACE8DDCA7F508),
2728           UINT64_C(0x0004C49914338529), UINT64_C(0x000201F520B0AA42),
2729           UINT64_C(0x0003ACEB18EE94D1), UINT64_C(0x00043292408A3327)}},
2730         {{UINT64_C(0x00071CFCF4149893), UINT64_C(0x0002FF24B716F1CF),
2731           UINT64_C(0x0002E9DD42D79E81), UINT64_C(0x0005F2E12A9D3787),
2732           UINT64_C(0x0000B67ABBDD6226), UINT64_C(0x000E14AD866F075E),
2733           UINT64_C(0x0000DF8C5452E7ED), UINT64_C(0x000179D614E61B47),
2734           UINT64_C(0x0005F5E532D764C5), UINT64_C(0x000134C30CA43904)},
2735          {UINT64_C(0x0008A3D8E0E5028B), UINT64_C(0x0002AD02FF65DB2D),
2736           UINT64_C(0x000024B54F477366), UINT64_C(0x0004DF76000BEBD4),
2737           UINT64_C(0x0001BABEBBC5B492), UINT64_C(0x000293A99B9A4E9E),
2738           UINT64_C(0x0006DA8EC81880DF), UINT64_C(0x0004D62443F19541),
2739           UINT64_C(0x0007788BC32D12B7), UINT64_C(0x00053D73A62F6A5D)}},
2740         {{UINT64_C(0x0008D1269BFE5E8B), UINT64_C(0x0000FE4C7CBD9622),
2741           UINT64_C(0x0003CF67B2F4ACFF), UINT64_C(0x0006A8A24518F03D),
2742           UINT64_C(0x000347DAE1827AD4), UINT64_C(0x000F291ACCCDE5C5),
2743           UINT64_C(0x0000C9C96024DBC2), UINT64_C(0x0006E1493787400F),
2744           UINT64_C(0x0004557C49C13B5E), UINT64_C(0x0001BBD5022E461F)},
2745          {UINT64_C(0x00029EF080397D2A), UINT64_C(0x0007D3AEFB96A5DA),
2746           UINT64_C(0x0005CE903FC41243), UINT64_C(0x0007ACF27A77BE2F),
2747           UINT64_C(0x00069367C2BB5B2D), UINT64_C(0x000EA380A0F28EC9),
2748           UINT64_C(0x0004D091094729F5), UINT64_C(0x0000568ED1C33BAF),
2749           UINT64_C(0x0006FFC9FEC1754C), UINT64_C(0x00079AF250E87C71)}},
2750         {{UINT64_C(0x0001B7181A9FE1E7), UINT64_C(0x0004BF3195C7079A),
2751           UINT64_C(0x00004C65A8623BD7), UINT64_C(0x000293D8EC50869E),
2752           UINT64_C(0x00061ECDC77A17C7), UINT64_C(0x00024A53FBCEF78C),
2753           UINT64_C(0x0006DE143AB5A0EC), UINT64_C(0x0004F508E8AD0226),
2754           UINT64_C(0x0006DB9363078A38), UINT64_C(0x0002687048D33591)},
2755          {UINT64_C(0x00002320E24E6A1C), UINT64_C(0x000313A5A33B1564),
2756           UINT64_C(0x00032A7B146533BC), UINT64_C(0x00071698E42DC91D),
2757           UINT64_C(0x00013FC72B6E6862), UINT64_C(0x000192B68047991B),
2758           UINT64_C(0x00077CB246D0CF66), UINT64_C(0x00019BF6E968E141),
2759           UINT64_C(0x00022BEFB71228A7), UINT64_C(0x0007A8BE0F3AB802)}},
2760         {{UINT64_C(0x0004ADD37A15BAF2), UINT64_C(0x0002BA4932A7035A),
2761           UINT64_C(0x0007F27F93062C33), UINT64_C(0x0001E46147E6199F),
2762           UINT64_C(0x0004849455CB21C9), UINT64_C(0x000DF6C55755F760),
2763           UINT64_C(0x00062C25D51F8005), UINT64_C(0x00018D552106AE65),
2764           UINT64_C(0x00036D4A8E15A67D), UINT64_C(0x0002EAE18E596E61)},
2765          {UINT64_C(0x000A03842DB9836A), UINT64_C(0x00048F98CEFB00D3),
2766           UINT64_C(0x0005190809ADF2BA), UINT64_C(0x0002DFB56F0A20D0),
2767           UINT64_C(0x00027970FAA41846), UINT64_C(0x000A481D0AD15C42),
2768           UINT64_C(0x000613F431F58DB3), UINT64_C(0x00007B1DF30C2753),
2769           UINT64_C(0x000724A12A33FE21), UINT64_C(0x00061257C4C8D5D9)}},
2770         {{UINT64_C(0x0006B38283640BFC), UINT64_C(0x00071A8876D2D39B),
2771           UINT64_C(0x0000F57FF4B7C4D2), UINT64_C(0x00048165C6651FA6),
2772           UINT64_C(0x000261CAB432E4D9), UINT64_C(0x0003A33A1024655B),
2773           UINT64_C(0x00016A80FB002EFE), UINT64_C(0x0007F53959DC0BF4),
2774           UINT64_C(0x000327B19C41762A), UINT64_C(0x0003AEB118550BD1)},
2775          {UINT64_C(0x000194446473FAA4), UINT64_C(0x00056252C5E6D79B),
2776           UINT64_C(0x000385407B1E32BE), UINT64_C(0x0004F62D3BA2C380),
2777           UINT64_C(0x0006709FC90E66D9), UINT64_C(0x000BF2EFEC69E52A),
2778           UINT64_C(0x00025E53D4588CB4), UINT64_C(0x000767AF079A8486),
2779           UINT64_C(0x0006B1B2BCF33774), UINT64_C(0x00054711D18A6446)}},
2780         {{UINT64_C(0x0002F65D12A437F5), UINT64_C(0x0004C193BB16BB5C),
2781           UINT64_C(0x00044CB11429B380), UINT64_C(0x000575B1D96C4371),
2782           UINT64_C(0x0004792169D089CC), UINT64_C(0x000A44E79CFC086D),
2783           UINT64_C(0x0007F7A9AA829C6C), UINT64_C(0x0000E51AD40E415B),
2784           UINT64_C(0x0003741299AE5AB0), UINT64_C(0x00034773AD27F4C8)},
2785          {UINT64_C(0x0001088846755E86), UINT64_C(0x0007C43CEE739306),
2786           UINT64_C(0x0006DFB006FC973D), UINT64_C(0x00075D11ABB97E3F),
2787           UINT64_C(0x0006CE4EAD9FD40A), UINT64_C(0x00090DE95E0B71B8),
2788           UINT64_C(0x000677FB1CA2400F), UINT64_C(0x0001D6A9EAC1F91B),
2789           UINT64_C(0x0004B5A0DEA254E4), UINT64_C(0x00031843DB8ACA4B)}},
2790     },
2791     {
2792         {{UINT64_C(0x00040F0FEE5191D7), UINT64_C(0x0007AD757B218666),
2793           UINT64_C(0x00025B684155AF20), UINT64_C(0x00029F4B5C485180),
2794           UINT64_C(0x0007D8377347091F), UINT64_C(0x000A22940AF54A77),
2795           UINT64_C(0x0003BDF6CB1B3734), UINT64_C(0x000579D05F06E011),
2796           UINT64_C(0x00032F87199B836F), UINT64_C(0x000467CDC3E7620A)},
2797          {UINT64_C(0x00099269E81CAEA9), UINT64_C(0x00060FAD5B89DD61),
2798           UINT64_C(0x0005D82009E159C4), UINT64_C(0x000543570882A388),
2799           UINT64_C(0x0005742B11F41567), UINT64_C(0x00005532CC1A04CF),
2800           UINT64_C(0x0007E7D67CA82018), UINT64_C(0x00030811921ED542),
2801           UINT64_C(0x00033B0153C0A9D2), UINT64_C(0x000027EEDE45D652)}},
2802         {{UINT64_C(0x00054628B564DD25), UINT64_C(0x000278E72161A60B),
2803           UINT64_C(0x0002875070456F4D), UINT64_C(0x0000A471C5023AE6),
2804           UINT64_C(0x00053142CC156044), UINT64_C(0x000EB689710B36EE),
2805           UINT64_C(0x000749FE221A7A5D), UINT64_C(0x0005CE289B236184),
2806           UINT64_C(0x00064A9332E96DFA), UINT64_C(0x00019F74B7F23AA6)},
2807          {UINT64_C(0x000047C80E1C6849), UINT64_C(0x00032C0409EB2702),
2808           UINT64_C(0x0005472D7A3265A6), UINT64_C(0x00007486A002948B),
2809           UINT64_C(0x0005B35D6DCD0117), UINT64_C(0x000F09583142990E),
2810           UINT64_C(0x00020994F45554BA), UINT64_C(0x0002A8A2ED9245E6),
2811           UINT64_C(0x0001FCB7F2469865), UINT64_C(0x0003ABDD4F76D182)}},
2812         {{UINT64_C(0x0007EF170E5B61C6), UINT64_C(0x00072FD9870DA526),
2813           UINT64_C(0x00052A5CE07FB8A2), UINT64_C(0x000641090CDA363A),
2814           UINT64_C(0x0001F046CD11B1C9), UINT64_C(0x000C5ACA2B42DE77),
2815           UINT64_C(0x0003FA2D3D3A78D1), UINT64_C(0x00022EE52A68BA15),
2816           UINT64_C(0x0006ED9A8FFEDB9E), UINT64_C(0x000628597175CF09)},
2817          {UINT64_C(0x0007233FAD040661), UINT64_C(0x0002DBF1724897C1),
2818           UINT64_C(0x00058AF887383FF2), UINT64_C(0x0001A82F626A8BA1),
2819           UINT64_C(0x000663B0E734D3AD), UINT64_C(0x00041A94CEBE29A8),
2820           UINT64_C(0x0000EBE98973931D), UINT64_C(0x0007653DABE4C434),
2821           UINT64_C(0x00077F080BA025B1), UINT64_C(0x0001349D8D6D5053)}},
2822         {{UINT64_C(0x000BE1C7FB3EA365), UINT64_C(0x0000DEC547480E21),
2823           UINT64_C(0x0003063031574C24), UINT64_C(0x0004A1A78E047579),
2824           UINT64_C(0x000606500AB9A488), UINT64_C(0x00027F5C522D4690),
2825           UINT64_C(0x0001EDD9FF35555F), UINT64_C(0x00027FDC2B282190),
2826           UINT64_C(0x000683CED2B98C75), UINT64_C(0x000650923C157066)},
2827          {UINT64_C(0x00092C9AF39CBACB), UINT64_C(0x0007D3858C2DD00B),
2828           UINT64_C(0x00031E676BBB7275), UINT64_C(0x0003AA2D98F4F933),
2829           UINT64_C(0x0003DCA9CE27A62B), UINT64_C(0x000A07F50B9E690F),
2830           UINT64_C(0x000051DF1C1BCD4A), UINT64_C(0x0003517B8AC99CFD),
2831           UINT64_C(0x0006367C0179F6E0), UINT64_C(0x0002CE5C968BCB6D)}},
2832         {{UINT64_C(0x000200C339FA6063), UINT64_C(0x0002D8C7E4167214),
2833           UINT64_C(0x00043F59D8D68BBE), UINT64_C(0x00020ABF6635C5FA),
2834           UINT64_C(0x000676FC3B2B32D8), UINT64_C(0x000EBE9FD818DFC0),
2835           UINT64_C(0x0006D7A4486F3794), UINT64_C(0x000684F5E2DF04E3),
2836           UINT64_C(0x00032590E104D8CA), UINT64_C(0x0007F86F511DEAF5)},
2837          {UINT64_C(0x00034E941C93C058), UINT64_C(0x00034819A8DA6A22),
2838           UINT64_C(0x000164AD4449303E), UINT64_C(0x00042BE59CA73B0D),
2839           UINT64_C(0x00014B7F6EA0A455), UINT64_C(0x00098C54814B4ED9),
2840           UINT64_C(0x0004C74E9049A134), UINT64_C(0x0001859C7C28787A),
2841           UINT64_C(0x0002BF6FCC75D79D), UINT64_C(0x0007A8E2129CEB51)}},
2842         {{UINT64_C(0x00018E8A6D68977A), UINT64_C(0x000202BA27C4F548),
2843           UINT64_C(0x000765E7CECDA47B), UINT64_C(0x000363DB05A69000),
2844           UINT64_C(0x0005F96506BEB7D3), UINT64_C(0x00089C30791266ED),
2845           UINT64_C(0x00077E5CAB5C1F29), UINT64_C(0x0006E87E942A7A13),
2846           UINT64_C(0x0001FD90D57F757B), UINT64_C(0x0007B1FF16E524CF)},
2847          {UINT64_C(0x0005EA5BBEA59591), UINT64_C(0x000427E51D91AE1C),
2848           UINT64_C(0x00070FC7F83A8541), UINT64_C(0x00069E9D31A36625),
2849           UINT64_C(0x00030C2ED2385F4C), UINT64_C(0x00095E9CEDC7EC18),
2850           UINT64_C(0x0004DF297D2AB731), UINT64_C(0x0007FD32EE0B4C2F),
2851           UINT64_C(0x0006423F55007B50), UINT64_C(0x000582AFCEAF6692)}},
2852         {{UINT64_C(0x000132229C4BE432), UINT64_C(0x000062BDAF1A965D),
2853           UINT64_C(0x0002C1A7663C1E53), UINT64_C(0x00038DAE7DCFB8CC),
2854           UINT64_C(0x00072695BB1282ED), UINT64_C(0x0006EC32706E7F8F),
2855           UINT64_C(0x0004FDED61E285BE), UINT64_C(0x0003D1D5A48B6110),
2856           UINT64_C(0x000552ACEEFD0F10), UINT64_C(0x00011D10445A68E0)},
2857          {UINT64_C(0x000CB3E30A36F50F), UINT64_C(0x0004A7B7557E35AE),
2858           UINT64_C(0x00066CFBF15B4D97), UINT64_C(0x0000508B08233B2E),
2859           UINT64_C(0x0003F31FB5C7AE10), UINT64_C(0x000E6621F3031E22),
2860           UINT64_C(0x000482990F4ECDC4), UINT64_C(0x000484D2AA8A0F24),
2861           UINT64_C(0x00009D4CF9C0A36A), UINT64_C(0x0001CC385C527853)}},
2862         {{UINT64_C(0x000A4792A9EEE2A9), UINT64_C(0x00072FA6FDF2C7C6),
2863           UINT64_C(0x0007C7826E4812BE), UINT64_C(0x0006F6D236CF8FD6),
2864           UINT64_C(0x00073F81409D27AF), UINT64_C(0x0006499E587E37BE),
2865           UINT64_C(0x0001D910B9037DCA), UINT64_C(0x00076B6BA2C2DD1C),
2866           UINT64_C(0x0000C40F587E10E9), UINT64_C(0x0003A0C39693B06A)},
2867          {UINT64_C(0x000B22437DF0A661), UINT64_C(0x000740D926C3CA81),
2868           UINT64_C(0x0004D6FC409922D3), UINT64_C(0x0006C8B0A63EBE3B),
2869           UINT64_C(0x0007A7E09C658E92), UINT64_C(0x000EE849F67956DF),
2870           UINT64_C(0x00009ACED8E8FE8F), UINT64_C(0x0001CD4640F2626A),
2871           UINT64_C(0x0000370AE99E0EF4), UINT64_C(0x000081E0D1461BE8)}},
2872         {{UINT64_C(0x00073065330BAB74), UINT64_C(0x0001574E266A5243),
2873           UINT64_C(0x0002D1F64CEC7BBF), UINT64_C(0x0005B4B35FD5F97F),
2874           UINT64_C(0x0006E328070806B7), UINT64_C(0x000194194F915C7A),
2875           UINT64_C(0x00073D3745896020), UINT64_C(0x0005E613BB39AE2A),
2876           UINT64_C(0x00011D507ABCADE1), UINT64_C(0x0002EAF0689489D1)},
2877          {UINT64_C(0x000058D096BDB2AB), UINT64_C(0x00069969F77F9CB1),
2878           UINT64_C(0x00039B6125B8F829), UINT64_C(0x00044A07AEC2D0C6),
2879           UINT64_C(0x000504B4F3946022), UINT64_C(0x00080D0DFA735E99),
2880           UINT64_C(0x0002BC6CCE0171E5), UINT64_C(0x0003D83527837207),
2881           UINT64_C(0x00066CBA871AC0F9), UINT64_C(0x00024A295AAEBA6A)}},
2882         {{UINT64_C(0x000D2B933FA0DA3A), UINT64_C(0x00079892AF905B11),
2883           UINT64_C(0x00021863855AA63A), UINT64_C(0x00052D86FEC679D3),
2884           UINT64_C(0x000791B1FDE46EBE), UINT64_C(0x000AF24DC2D97724),
2885           UINT64_C(0x000430197793B4EF), UINT64_C(0x0001355100B792D4),
2886           UINT64_C(0x00067BC1C675D49F), UINT64_C(0x00013F553362D7E5)},
2887          {UINT64_C(0x0004977612BCB0EB), UINT64_C(0x0003E50B8F31A3A8),
2888           UINT64_C(0x0007CD4AF5A9CB24), UINT64_C(0x0002D3E56A2C0F66),
2889           UINT64_C(0x0002D65C455CD2EF), UINT64_C(0x0002086963C9C7D0),
2890           UINT64_C(0x000145D5C4A9FFAE), UINT64_C(0x000619BAC8505C4A),
2891           UINT64_C(0x000027E3A7AE4A7A), UINT64_C(0x0000B67AD3689936)}},
2892         {{UINT64_C(0x000CC7D3BF4762C0), UINT64_C(0x0001F746EDBE329E),
2893           UINT64_C(0x0001DF8B85050FA2), UINT64_C(0x0003BD3B0F568385),
2894           UINT64_C(0x000180BF161ABAC6), UINT64_C(0x0000215CE0594FA0),
2895           UINT64_C(0x00047C0CB6A73218), UINT64_C(0x0000DBAEA7BF27D7),
2896           UINT64_C(0x0002F869F09063DD), UINT64_C(0x00054D9BA9522E09)},
2897          {UINT64_C(0x0002FE8D87A17CE0), UINT64_C(0x00057E4AC584E74A),
2898           UINT64_C(0x0002DAC318271EF4), UINT64_C(0x0002423F79D4DEB2),
2899           UINT64_C(0x0003E960755CCBC4), UINT64_C(0x000D266A7438DBF6),
2900           UINT64_C(0x000477E42DA16918), UINT64_C(0x0006B11A646B2B6A),
2901           UINT64_C(0x000431429BD1F7B7), UINT64_C(0x0006ED79801CF551)}},
2902         {{UINT64_C(0x000C2F5AD403D304), UINT64_C(0x00000E16E8839A82),
2903           UINT64_C(0x0006E1D15D839778), UINT64_C(0x0005F5B10106BB12),
2904           UINT64_C(0x0005C19D486DD5C6), UINT64_C(0x000719C29C1E59DF),
2905           UINT64_C(0x000659479542B834), UINT64_C(0x0007ACDE37B973BE),
2906           UINT64_C(0x0003482AD9321747), UINT64_C(0x000505ADD6521552)},
2907          {UINT64_C(0x000F913FC1522D09), UINT64_C(0x00037BFD0D4ABC49),
2908           UINT64_C(0x00001FA1DDC7C8F2), UINT64_C(0x000557253E6A7DB6),
2909           UINT64_C(0x0006E4F330384051), UINT64_C(0x000EB36BC2271684),
2910           UINT64_C(0x0006E60BC26E1F0F), UINT64_C(0x00054A6E03B188FB),
2911           UINT64_C(0x0003C21955E62B44), UINT64_C(0x00029C4483BA7D4D)}},
2912         {{UINT64_C(0x000670CC3896EBA5), UINT64_C(0x000259CFB18CBAE2),
2913           UINT64_C(0x0006699793CC03B7), UINT64_C(0x0006E571D3FF8F29),
2914           UINT64_C(0x00001EB92283238D), UINT64_C(0x000F5DE25A4C21F7),
2915           UINT64_C(0x00021DA151657372), UINT64_C(0x0005351A570D55D1),
2916           UINT64_C(0x0005E3C40430A85A), UINT64_C(0x0001A3FAEB0F9878)},
2917          {UINT64_C(0x00041F28CA0920E8), UINT64_C(0x0000528AA3286F64),
2918           UINT64_C(0x000550CD85825A5A), UINT64_C(0x0006A07132346430),
2919           UINT64_C(0x0006248B435552B3), UINT64_C(0x000C51E8492A342A),
2920           UINT64_C(0x000238B2E633EAE5), UINT64_C(0x00077EFF4FF5E3AF),
2921           UINT64_C(0x000737FE3C5938DC), UINT64_C(0x0003E7F342587F14)}},
2922         {{UINT64_C(0x0000469EA4F316A5), UINT64_C(0x0000CFF01ADFC8EC),
2923           UINT64_C(0x000752DEE0AF6B42), UINT64_C(0x0000FBD7A1DB547A),
2924           UINT64_C(0x00071529F9CBFCB7), UINT64_C(0x0002EEF2C4E55DE9),
2925           UINT64_C(0x00068B08FC158B20), UINT64_C(0x0005BA1440B0CD47),
2926           UINT64_C(0x000770690268EB1C), UINT64_C(0x0004FEA766326EEE)},
2927          {UINT64_C(0x0007E31940932215), UINT64_C(0x0006F953571E0D10),
2928           UINT64_C(0x000325DB7CA114C1), UINT64_C(0x0003346F1BDB76FF),
2929           UINT64_C(0x0004B2D608C398A0), UINT64_C(0x000880C15A6358CD),
2930           UINT64_C(0x00003A12DA7DAE1C), UINT64_C(0x00012A98295624DC),
2931           UINT64_C(0x0003F435F64DA03F), UINT64_C(0x00077E682761BD79)}},
2932         {{UINT64_C(0x000725EBE3550E60), UINT64_C(0x00009759E82357AA),
2933           UINT64_C(0x000707477FAC3456), UINT64_C(0x00056FDC23023B2E),
2934           UINT64_C(0x00051E1365B47E4D), UINT64_C(0x000B5D849F58CA94),
2935           UINT64_C(0x000685BF93742A36), UINT64_C(0x0001A1BC548F6279),
2936           UINT64_C(0x000344BB9DE268D0), UINT64_C(0x0005FDFB2BC3DEF5)},
2937          {UINT64_C(0x000848AFB0499C56), UINT64_C(0x00010DC37ABCFDEA),
2938           UINT64_C(0x0006C1811764BA4D), UINT64_C(0x0002A308A7745FCC),
2939           UINT64_C(0x00074CBB9E51FB1A), UINT64_C(0x000AC8D6F8659635),
2940           UINT64_C(0x000154D1F4F69089), UINT64_C(0x00028051B6633DBB),
2941           UINT64_C(0x0003335687BF4293), UINT64_C(0x0005ED908B0510A4)}},
2942         {{UINT64_C(0x0004904C9668E6CD), UINT64_C(0x00079071B2B92E94),
2943           UINT64_C(0x0001E7AE6FF7AF6A), UINT64_C(0x0002127FE63573CD),
2944           UINT64_C(0x0000D3D1E41CDAC6), UINT64_C(0x00011204952E81CE),
2945           UINT64_C(0x000271F8C2A453E2), UINT64_C(0x0001B69F9248DB24),
2946           UINT64_C(0x000379D0353FB400), UINT64_C(0x0001295BB193D08F)},
2947          {UINT64_C(0x000E90DA27BA514F), UINT64_C(0x0003159CBE1F9C35),
2948           UINT64_C(0x0005521CD6FEB8F3), UINT64_C(0x0005119F047F6EB1),
2949           UINT64_C(0x0004D5D0948D614B), UINT64_C(0x0006892CA0E25568),
2950           UINT64_C(0x0000FD25BBE0A6E7), UINT64_C(0x00021564372435F1),
2951           UINT64_C(0x00027D8B49CAD04C), UINT64_C(0x00007D5A2C89462D)}},
2952     },
2953     {
2954         {{UINT64_C(0x000F514B71EBBDCC), UINT64_C(0x0004035582F1B252),
2955           UINT64_C(0x0002A1C7C414989A), UINT64_C(0x0007743F23DC3274),
2956           UINT64_C(0x000791E243AE6EF8), UINT64_C(0x0009076C398D3FDA),
2957           UINT64_C(0x00055D23854865C6), UINT64_C(0x00067630F1F7A188),
2958           UINT64_C(0x0004FEF4830113F0), UINT64_C(0x0006EF4DC0128B39)},
2959          {UINT64_C(0x000AE1F76A7AB992), UINT64_C(0x0003D7ABB33C7671),
2960           UINT64_C(0x0007A82D28545FE8), UINT64_C(0x00034AB6DCB3D487),
2961           UINT64_C(0x0007701ECE7EE900), UINT64_C(0x000E400E5BC2A1A4),
2962           UINT64_C(0x000693EAE58F5DF2), UINT64_C(0x00037BBA5ED12DB3),
2963           UINT64_C(0x0005ED5B1E21C1B3), UINT64_C(0x000641DC0D967E8B)}},
2964         {{UINT64_C(0x00054C95BB0652B1), UINT64_C(0x00046F4FED58813D),
2965           UINT64_C(0x00050815BA4C242F), UINT64_C(0x0003C70A5ADB1CBD),
2966           UINT64_C(0x00018471501C557F), UINT64_C(0x00061B89E1DB46F5),
2967           UINT64_C(0x00030130047B6C15), UINT64_C(0x00024E7E179F958E),
2968           UINT64_C(0x00029B81AFD116BD), UINT64_C(0x0001F1C0E6F5B495)},
2969          {UINT64_C(0x00023C05D2947309), UINT64_C(0x000077CE6739DA7A),
2970           UINT64_C(0x0007175E6FC632C3), UINT64_C(0x00079215145A49EE),
2971           UINT64_C(0x0005582902E4AEC2), UINT64_C(0x0003D193BC0C12D2),
2972           UINT64_C(0x0005BA6F099A5DF0), UINT64_C(0x000403F8EF0B4955),
2973           UINT64_C(0x000642EB7C8A43A1), UINT64_C(0x0005D32BCC2F8B89)}},
2974         {{UINT64_C(0x00017EB1EE4CB1A1), UINT64_C(0x0006638C230FE375),
2975           UINT64_C(0x00023DCF4460C9F8), UINT64_C(0x0002497719F0A400),
2976           UINT64_C(0x00040836988B5191), UINT64_C(0x0004916DE1D1C20D),
2977           UINT64_C(0x0001141194F546D7), UINT64_C(0x00002179582ACA27),
2978           UINT64_C(0x0004DBC84C72F8E0), UINT64_C(0x00023C1DFC8EFD14)},
2979          {UINT64_C(0x00070B7F76ADAF26), UINT64_C(0x0003C6CEB8B1DA8A),
2980           UINT64_C(0x0003FD11262FDAE0), UINT64_C(0x0002770D8C7E9FB3),
2981           UINT64_C(0x0006D3BD713575D9), UINT64_C(0x0007838C17F3658C),
2982           UINT64_C(0x00077F30784494CF), UINT64_C(0x0001CE5F8562296E),
2983           UINT64_C(0x0005C03FBD4434BB), UINT64_C(0x0001FF536CDDE62E)}},
2984         {{UINT64_C(0x0001172A96A1E7D6), UINT64_C(0x0001098F9CBA5BBC),
2985           UINT64_C(0x00074F5479589BDA), UINT64_C(0x0003E78B80CE763C),
2986           UINT64_C(0x00045042B492B949), UINT64_C(0x000135B01953B25D),
2987           UINT64_C(0x000564A958658405), UINT64_C(0x00073391FC7A30CF),
2988           UINT64_C(0x00051DA995FAF2AC), UINT64_C(0x00008899D026CFE6)},
2989          {UINT64_C(0x0002EF92641119A3), UINT64_C(0x0007CFCD3D8E8348),
2990           UINT64_C(0x000251D519AA1667), UINT64_C(0x0007524C025888AD),
2991           UINT64_C(0x0002847F5CB47F5C), UINT64_C(0x0000C637101A1799),
2992           UINT64_C(0x000684496C314774), UINT64_C(0x0005DF9F71863B37),
2993           UINT64_C(0x0003099895A2F373), UINT64_C(0x0000333CA2E94544)}},
2994         {{UINT64_C(0x00070CCF02ECB2CC), UINT64_C(0x000105EF4D0A506E),
2995           UINT64_C(0x00007BF7A4DE2CA0), UINT64_C(0x0006DAB36E4422DE),
2996           UINT64_C(0x0005261AD9D05DF0), UINT64_C(0x000C9FCA9FCF1803),
2997           UINT64_C(0x00077F743B9F8F4A), UINT64_C(0x00054F8CFD871DBE),
2998           UINT64_C(0x00008369A88F23E3), UINT64_C(0x0004DE24D800793E)},
2999          {UINT64_C(0x00080D00BBD99113), UINT64_C(0x000705E433C3D50A),
3000           UINT64_C(0x0000CC78397E7790), UINT64_C(0x00033741085A403B),
3001           UINT64_C(0x0006E31F0AE64239), UINT64_C(0x0004B8AE3CC6DEFC),
3002           UINT64_C(0x0007FC3C4D4BFA22), UINT64_C(0x0005A85FF42BA85E),
3003           UINT64_C(0x0005E2879D483F75), UINT64_C(0x000111B21C595B57)}},
3004         {{UINT64_C(0x000B69E54FB31425), UINT64_C(0x0007670DB77E68C9),
3005           UINT64_C(0x000200548E67C390), UINT64_C(0x0007E58E7DA1316B),
3006           UINT64_C(0x00065C0A1A2EC1E9), UINT64_C(0x000566CC8A93BAED),
3007           UINT64_C(0x00034140BA9D29BD), UINT64_C(0x00066D8BC0434EC9),
3008           UINT64_C(0x000545F0A0BE9D95), UINT64_C(0x0005D43571D5259A)},
3009          {UINT64_C(0x000CB66450379E4A), UINT64_C(0x0002EA896E3D63C2),
3010           UINT64_C(0x0000A1CBC3C15620), UINT64_C(0x0004F3A6795DCE0B),
3011           UINT64_C(0x0007A3F6DAC83AC6), UINT64_C(0x0005EC06F01B9BAD),
3012           UINT64_C(0x0006468A896619D3), UINT64_C(0x0003C2FAACC2C60B),
3013           UINT64_C(0x0006858F9F24FF57), UINT64_C(0x00011A6265D8A36E)}},
3014         {{UINT64_C(0x00041C66E40F1A90), UINT64_C(0x0004E4F0180E78EF),
3015           UINT64_C(0x0003FB530CA47EAF), UINT64_C(0x0007ABB19E0A2FA0),
3016           UINT64_C(0x00041ABDD6CB403F), UINT64_C(0x000DAB4EEE08EF52),
3017           UINT64_C(0x00023FC4E743BC92), UINT64_C(0x0005B913456A7476),
3018           UINT64_C(0x0001C85ADE3AC4F1), UINT64_C(0x0004C1EA18C4581B)},
3019          {UINT64_C(0x000AC8C9F1F7F0A6), UINT64_C(0x0007E11A1C557ED2),
3020           UINT64_C(0x0000E1E16CCE15D8), UINT64_C(0x000132838704418A),
3021           UINT64_C(0x0002E6AFA3B1E448), UINT64_C(0x000D76FF3FBC3F61),
3022           UINT64_C(0x00015097A2812475), UINT64_C(0x0000F295A5BC66CB),
3023           UINT64_C(0x0002FF9986FD6334), UINT64_C(0x000792181517F379)}},
3024         {{UINT64_C(0x000593BFA181F4DE), UINT64_C(0x00076E78859CC727),
3025           UINT64_C(0x0000768CDCBCFB1D), UINT64_C(0x0002B147828E8906),
3026           UINT64_C(0x0004D189BBDFAF3E), UINT64_C(0x000F4188F2DE5620),
3027           UINT64_C(0x0005541E2603D86E), UINT64_C(0x00068B0163E24EF2),
3028           UINT64_C(0x000732F7A222EC67), UINT64_C(0x00030102005758D0)},
3029          {UINT64_C(0x000965B8766CC610), UINT64_C(0x0006CED5C6750EC9),
3030           UINT64_C(0x0002510890A11A94), UINT64_C(0x00050A335E380C21),
3031           UINT64_C(0x0002D3AAA4B5ABB1), UINT64_C(0x000C3DEBF83FD12E),
3032           UINT64_C(0x00042A5B613A963D), UINT64_C(0x00048A5474D5B2CC),
3033           UINT64_C(0x0006DBC324E377DF), UINT64_C(0x0004A450113CC47F)}},
3034         {{UINT64_C(0x00082FD2D666BA94), UINT64_C(0x000307B3C69374F1),
3035           UINT64_C(0x00030E4DCCADA50B), UINT64_C(0x00025121DD5AF46E),
3036           UINT64_C(0x0005DAE113DE717D), UINT64_C(0x000F540F6A242AF7),
3037           UINT64_C(0x0001984B2DEE5FE8), UINT64_C(0x000751006703C07F),
3038           UINT64_C(0x0003C4BED0C06C42), UINT64_C(0x0006834E2CFEAF97)},
3039          {UINT64_C(0x00079EF331F8BE0C), UINT64_C(0x0006C58FB2C0D852),
3040           UINT64_C(0x000642C225B2131C), UINT64_C(0x0003F1F2DD654AF1),
3041           UINT64_C(0x0003F6D400299A16), UINT64_C(0x000A1D524B709913),
3042           UINT64_C(0x0007F61D15FA8CD7), UINT64_C(0x00007D279176192A),
3043           UINT64_C(0x0004CB0573788091), UINT64_C(0x00017B43566C1463)}},
3044         {{UINT64_C(0x0007A50D58E645CD), UINT64_C(0x000717BFEFCEFD32),
3045           UINT64_C(0x00021533C2082002), UINT64_C(0x0000B6C97BE84215),
3046           UINT64_C(0x0003D9526234147F), UINT64_C(0x000736AFD37F86C3),
3047           UINT64_C(0x0001446C15A309FC), UINT64_C(0x00049F6A2E32732D),
3048           UINT64_C(0x0005A7F6B6BD0310), UINT64_C(0x00049050A86F7F6E)},
3049          {UINT64_C(0x000478A084486F70), UINT64_C(0x0004B485E454FFE6),
3050           UINT64_C(0x00005134AC546D22), UINT64_C(0x00045EC4A7C0DB13),
3051           UINT64_C(0x0003AB8CCE7A0B15), UINT64_C(0x000601A238F1B5B3),
3052           UINT64_C(0x00063D63F830D881), UINT64_C(0x0000F2D0A86F5488),
3053           UINT64_C(0x00077A07AB5A6307), UINT64_C(0x0001A0E97FE656C5)}},
3054         {{UINT64_C(0x0002B8E72C38FDE6), UINT64_C(0x0001650DDE9F2E2E),
3055           UINT64_C(0x00028EF99CEB5566), UINT64_C(0x00041C64DDA06D6A),
3056           UINT64_C(0x00005CB89B26AD37), UINT64_C(0x000A5F15A5F8AF03),
3057           UINT64_C(0x00025505F3937C0E), UINT64_C(0x000159B4CD9043F4),
3058           UINT64_C(0x000343C00F6BA0DB), UINT64_C(0x00047E9671AB1CFB)},
3059          {UINT64_C(0x0007DE9E2086ECD6), UINT64_C(0x0000A7B07155978A),
3060           UINT64_C(0x00026C99DCA72BC9), UINT64_C(0x0004F4F2C6EB2ED1),
3061           UINT64_C(0x00074C9CE7C64240), UINT64_C(0x000A4D876B2764B2),
3062           UINT64_C(0x0005394454615D25), UINT64_C(0x000481776CCE078B),
3063           UINT64_C(0x000186A538247AB1), UINT64_C(0x000333D9943B1146)}},
3064         {{UINT64_C(0x00084973CEDC2791), UINT64_C(0x0002950F48F39EEB),
3065           UINT64_C(0x0000EF6F70D1EFF2), UINT64_C(0x0004D3D6FD70FEAF),
3066           UINT64_C(0x000638ED86C3A27D), UINT64_C(0x000F9B23D52DAEF5),
3067           UINT64_C(0x0007DCA2C6212A71), UINT64_C(0x0003A72278C541D8),
3068           UINT64_C(0x0000D206D53E4F6B), UINT64_C(0x0007CC2FD213C6D8)},
3069          {UINT64_C(0x0009C9835F59129E), UINT64_C(0x0007F4A22C2FB8AC),
3070           UINT64_C(0x0000EB9FBBDAB0AF), UINT64_C(0x000397BE0B58FC49),
3071           UINT64_C(0x0000D58A5D14AA83), UINT64_C(0x000CBCDEEF3C688F),
3072           UINT64_C(0x0007F56D84202AE6), UINT64_C(0x0001AACDE92E0055),
3073           UINT64_C(0x0006A0198A5DD4EF), UINT64_C(0x00009072B8CFBB20)}},
3074         {{UINT64_C(0x000F7FEC5A5D3591), UINT64_C(0x0003CC91186CC1D7),
3075           UINT64_C(0x0000539F22D56CB3), UINT64_C(0x00014418785A7E75),
3076           UINT64_C(0x0007DD55510142B3), UINT64_C(0x00027C9298FBB5F7),
3077           UINT64_C(0x0002E6839156F4F1), UINT64_C(0x00006806E7AF3BDD),
3078           UINT64_C(0x00017FEEBFA3E11C), UINT64_C(0x0005E3B668C8CF1E)},
3079          {UINT64_C(0x0002E308DB4D3ABB), UINT64_C(0x0002519214DBB309),
3080           UINT64_C(0x00053F1D5795FB73), UINT64_C(0x00006C5A6BA835DE),
3081           UINT64_C(0x0007282B5833FF0C), UINT64_C(0x0007CA1C54F0B679),
3082           UINT64_C(0x00067F8A25FBF269), UINT64_C(0x00006A247708AB5B),
3083           UINT64_C(0x000271FDD248BDC5), UINT64_C(0x00001617D43FC96F)}},
3084         {{UINT64_C(0x000530DC05A439D4), UINT64_C(0x0002C89DF13D212F),
3085           UINT64_C(0x00006CD963D870CE), UINT64_C(0x00070E6A17E094DF),
3086           UINT64_C(0x0005335D7B440052), UINT64_C(0x0005D20A7FC5B6E6),
3087           UINT64_C(0x0000816C1BD2E991), UINT64_C(0x00015BFD4D6A50B8),
3088           UINT64_C(0x000611290ED60372), UINT64_C(0x000252141FDE02E6)},
3089          {UINT64_C(0x000EE270D2D5D91D), UINT64_C(0x00064864D00DF773),
3090           UINT64_C(0x0002CDF8C5BDD29E), UINT64_C(0x0004B4D19D843238),
3091           UINT64_C(0x0001E7349DF960FB), UINT64_C(0x000AB7E45A9B26DB),
3092           UINT64_C(0x0002D5282F6EE449), UINT64_C(0x0004F9B215872CD1),
3093           UINT64_C(0x0002F931EDC40DD7), UINT64_C(0x0004C76A77256A9F)}},
3094         {{UINT64_C(0x0006A781358C169E), UINT64_C(0x000093BAB2A31F43),
3095           UINT64_C(0x0002C0B13C7E6C0A), UINT64_C(0x00035E6DBE645073),
3096           UINT64_C(0x00027A3CF6B52BB2), UINT64_C(0x0007090F7CD7F0B6),
3097           UINT64_C(0x00049B2C3B592E30), UINT64_C(0x0002359164A5EB6A),
3098           UINT64_C(0x0004DC6C9A544458), UINT64_C(0x0007423068D875B5)},
3099          {UINT64_C(0x00059D79EBA27F83), UINT64_C(0x0005D19F0CBC111F),
3100           UINT64_C(0x000753952EB35496), UINT64_C(0x00062897B4108C18),
3101           UINT64_C(0x0006D7F09D866E46), UINT64_C(0x0005897E202402FA),
3102           UINT64_C(0x0001D12E39D2981C), UINT64_C(0x0004D1F9BD50FDDC),
3103           UINT64_C(0x00060754737FA4EC), UINT64_C(0x0004B66C109681C2)}},
3104         {{UINT64_C(0x00091EB3450A8B6F), UINT64_C(0x0006E67784D11649),
3105           UINT64_C(0x00052A0A75E83A4C), UINT64_C(0x0000C7EF54A33FAB),
3106           UINT64_C(0x0007E4B1F177CCAC), UINT64_C(0x000B1572C584C7B2),
3107           UINT64_C(0x0003F88F3DDE8AF6), UINT64_C(0x00055A76B8A9FEC4),
3108           UINT64_C(0x0004D726D797ABF3), UINT64_C(0x000063A37056B2C1)},
3109          {UINT64_C(0x000BEC5B8D4113B1), UINT64_C(0x0004AF1E78531E4F),
3110           UINT64_C(0x0003A706B01EA69E), UINT64_C(0x000114C7197A503E),
3111           UINT64_C(0x00068D6405B730D6), UINT64_C(0x00037F60FB050D8E),
3112           UINT64_C(0x0002625FCDD6414D), UINT64_C(0x0000A66900D00C7B),
3113           UINT64_C(0x0007AADE957078F1), UINT64_C(0x000708B1373BF752)}},
3114     },
3115     {
3116         {{UINT64_C(0x000C3BAB92C31CE5), UINT64_C(0x00002134ECD1DE22),
3117           UINT64_C(0x000610E7706C8F42), UINT64_C(0x0004D37D742251A7),
3118           UINT64_C(0x0003F0AD3A1A8A28), UINT64_C(0x0005B53175168302),
3119           UINT64_C(0x0007812CA56B0662), UINT64_C(0x0006DBA3FECD0E65),
3120           UINT64_C(0x000488903D3A2C5C), UINT64_C(0x000356F226A3070C)},
3121          {UINT64_C(0x000C6272379969A8), UINT64_C(0x000030E999753799),
3122           UINT64_C(0x00006FA2FD45CF73), UINT64_C(0x0005B8B69287AF76),
3123           UINT64_C(0x0005213C07A81179), UINT64_C(0x0008D822B335452D),
3124           UINT64_C(0x000011E080D0121B), UINT64_C(0x000337047AED499C),
3125           UINT64_C(0x0005F3F0DAE82068), UINT64_C(0x000287D13EDC6853)}},
3126         {{UINT64_C(0x000890BAE3CD0A60), UINT64_C(0x0007CFCB31DC10E6),
3127           UINT64_C(0x00042A0AD557A444), UINT64_C(0x0005E3E8DEDD318E),
3128           UINT64_C(0x0004B768FB3B1B2D), UINT64_C(0x000A74BE0F89CA10),
3129           UINT64_C(0x0003022817A331F0), UINT64_C(0x000398531778D3CE),
3130           UINT64_C(0x0003F92B536499CA), UINT64_C(0x00039BBC19367C44)},
3131          {UINT64_C(0x0003D17E79CF10DA), UINT64_C(0x00041C136308597C),
3132           UINT64_C(0x0001C7CFCC962C3F), UINT64_C(0x0005F7010BF5A11D),
3133           UINT64_C(0x00018E8314AB3E4C), UINT64_C(0x000B784160490F36),
3134           UINT64_C(0x00002C72D731F23C), UINT64_C(0x00059E1083EF050E),
3135           UINT64_C(0x00029D7C307711F7), UINT64_C(0x00028978EEF174D0)}},
3136         {{UINT64_C(0x0000B2EDE471ED48), UINT64_C(0x00049FF7F87A8FDE),
3137           UINT64_C(0x000407DAC8E66330), UINT64_C(0x00017A99137DCD53),
3138           UINT64_C(0x000413D5BA8A3E49), UINT64_C(0x00069E2849ED7ACF),
3139           UINT64_C(0x00011A49582E3C16), UINT64_C(0x0003EF82C8E245ED),
3140           UINT64_C(0x0002209E0B7EA09E), UINT64_C(0x000640B26788B817)},
3141          {UINT64_C(0x000FB77EC4895293), UINT64_C(0x000521EE12FEC7C5),
3142           UINT64_C(0x0006B87272F0F4BE), UINT64_C(0x000743571A70D3FA),
3143           UINT64_C(0x00012A853508E676), UINT64_C(0x000C8E90D720C744),
3144           UINT64_C(0x0004E53325BF55D5), UINT64_C(0x00022141D2FC04DE),
3145           UINT64_C(0x0002C08E37CCB8A9), UINT64_C(0x0005B2FF2928CA19)}},
3146         {{UINT64_C(0x00093112664E6955), UINT64_C(0x000318FAC599B3B0),
3147           UINT64_C(0x0004E86FFA5DC372), UINT64_C(0x00011CEA6B7ED8B5),
3148           UINT64_C(0x00032C5BB4D4B3E4), UINT64_C(0x00012FAB789556A8),
3149           UINT64_C(0x0005FD6D51C50C39), UINT64_C(0x0001F53B8DF4EB2C),
3150           UINT64_C(0x0003DC5A71DF97A9), UINT64_C(0x000202CBFD6A2695)},
3151          {UINT64_C(0x000A8D3B3805ED4E), UINT64_C(0x0006E97BF7B19A75),
3152           UINT64_C(0x000020C8EF1A157A), UINT64_C(0x0000DDAD96ECC141),
3153           UINT64_C(0x000634B69890E950), UINT64_C(0x000BCFBDA6464E18),
3154           UINT64_C(0x00057A50EC40E5E7), UINT64_C(0x000369C5C34E75A1),
3155           UINT64_C(0x0001DDDA57109D52), UINT64_C(0x000109C8DA359727)}},
3156         {{UINT64_C(0x000DC858E40E2D09), UINT64_C(0x0006583010E4FCF5),
3157           UINT64_C(0x0005616E9FBECEE8), UINT64_C(0x0004CC7EC96FFCA8),
3158           UINT64_C(0x0005436EDC94F6C0), UINT64_C(0x0001BFB47EC04EC2),
3159           UINT64_C(0x000353148F9B2046), UINT64_C(0x0002E68773E2D458),
3160           UINT64_C(0x000128904A0917E3), UINT64_C(0x0007E5A730228042)},
3161          {UINT64_C(0x000447DEFB88BB4F), UINT64_C(0x00012D87179A012D),
3162           UINT64_C(0x0002379DFC6577E4), UINT64_C(0x000646EB1BA5867E),
3163           UINT64_C(0x0004927A6707CB7F), UINT64_C(0x000F2F4B5DD2C056),
3164           UINT64_C(0x000148E5C0EB9590), UINT64_C(0x000022E829ADA8D2),
3165           UINT64_C(0x00066C299B36127A), UINT64_C(0x000208ACAE17BA18)}},
3166         {{UINT64_C(0x0003FD0BE2AFDA6A), UINT64_C(0x00079A3A05AFE09A),
3167           UINT64_C(0x00024431B9238AF6), UINT64_C(0x000196CDCEEABC5D),
3168           UINT64_C(0x0005CD6BA856B384), UINT64_C(0x0003376ABB9C7D13),
3169           UINT64_C(0x0000E28403D233B1), UINT64_C(0x0001E3E601F20B20),
3170           UINT64_C(0x000553A7F33316D7), UINT64_C(0x00077A41CF9D1895)},
3171          {UINT64_C(0x00018114833694B4), UINT64_C(0x00066ACE25DEC0AC),
3172           UINT64_C(0x000000AD04607BBE), UINT64_C(0x0001C2BBD9D88ED5),
3173           UINT64_C(0x000207EF8CDA325D), UINT64_C(0x0008C36267211FB6),
3174           UINT64_C(0x0004148ABE972485), UINT64_C(0x00032559C1C5BC5F),
3175           UINT64_C(0x0000D7CC34EB0616), UINT64_C(0x0006CFEBFC675164)}},
3176         {{UINT64_C(0x0006391786A18B11), UINT64_C(0x00072B22981C2BBC),
3177           UINT64_C(0x00064B2DCDABB7B4), UINT64_C(0x000307055034DD3A),
3178           UINT64_C(0x00051C4CAE5629B9), UINT64_C(0x0007AAF27949F035),
3179           UINT64_C(0x0002346889D53C01), UINT64_C(0x0006F67E4A19CA62),
3180           UINT64_C(0x000331666606352F), UINT64_C(0x0005374DF049C2AC)},
3181          {UINT64_C(0x0002B2B3139457D6), UINT64_C(0x000351A98E4D4EB2),
3182           UINT64_C(0x0003DC00C4EBC1E7), UINT64_C(0x00017CA9107B252F),
3183           UINT64_C(0x0007D9A4523CFBEB), UINT64_C(0x00037F677495611A),
3184           UINT64_C(0x00032ACDFB65FA6E), UINT64_C(0x000005C03EBCCAC4),
3185           UINT64_C(0x00044D67340F21A9), UINT64_C(0x0006F83F5FED3656)}},
3186         {{UINT64_C(0x000E79AA3546F16F), UINT64_C(0x0000A94AF4903B11),
3187           UINT64_C(0x0005BFBC2B88E83A), UINT64_C(0x0001616214CA6D22),
3188           UINT64_C(0x0002F33B14AC87D4), UINT64_C(0x000DC3668AC17EC3),
3189           UINT64_C(0x0003F9A5CD0FA18C), UINT64_C(0x00012136A765687B),
3190           UINT64_C(0x000477263FD5ADD5), UINT64_C(0x00047574A89B0A9F)},
3191          {UINT64_C(0x00086FD1F3EC5E19), UINT64_C(0x0001A0517754F902),
3192           UINT64_C(0x0003FBB71A4EF414), UINT64_C(0x00060C166C23D6D5),
3193           UINT64_C(0x0003CB4401A452C9), UINT64_C(0x00084139B2A26F87),
3194           UINT64_C(0x000194184853F0AF), UINT64_C(0x000725C3E883547A),
3195           UINT64_C(0x00007311B46CFE9E), UINT64_C(0x0006272C00057E36)}},
3196         {{UINT64_C(0x00091526FAFA38D9), UINT64_C(0x00013C7B17BEB483),
3197           UINT64_C(0x0005FBC53CC1E78B), UINT64_C(0x0000C1040CBB5D8E),
3198           UINT64_C(0x0003A0AF18FC9ADE), UINT64_C(0x0007BC9B9B737A51),
3199           UINT64_C(0x00058EAEC3E9FED9), UINT64_C(0x0000D346CF710790),
3200           UINT64_C(0x0003BE2B75105FA1), UINT64_C(0x0004D079255CE7B8)},
3201          {UINT64_C(0x00006C7D92D0825D), UINT64_C(0x00027A8C0386749E),
3202           UINT64_C(0x0001C5B09D0FC792), UINT64_C(0x0002C2B760A9C963),
3203           UINT64_C(0x0001524437DB7579), UINT64_C(0x0001B37F4B60ABD4),
3204           UINT64_C(0x0007FE579406D534), UINT64_C(0x0002739C0C35BD00),
3205           UINT64_C(0x00051086E45FFF04), UINT64_C(0x0003F4C9935FE354)}},
3206         {{UINT64_C(0x0004E5D268BD8A83), UINT64_C(0x000377586FC26AA0),
3207           UINT64_C(0x00030113A02CBC64), UINT64_C(0x000692EB25CA12F0),
3208           UINT64_C(0x0001A47E293F9D79), UINT64_C(0x000DD2612D416AA9),
3209           UINT64_C(0x00019FAC853D7BDD), UINT64_C(0x00001B9C4E8811EC),
3210           UINT64_C(0x000164570C0AABCB), UINT64_C(0x0002DBCACCC287E8)},
3211          {UINT64_C(0x00027EADFBCEA391), UINT64_C(0x000406BA866FB97C),
3212           UINT64_C(0x000250E70AA28457), UINT64_C(0x0000CE5D6B77F502),
3213           UINT64_C(0x0007E1FE982DC604), UINT64_C(0x00077DC8CD9AEDE3),
3214           UINT64_C(0x0006EECC4E8C56CC), UINT64_C(0x000529E001D51C07),
3215           UINT64_C(0x0000D42CF53B5E54), UINT64_C(0x00059F46F2041F90)}},
3216         {{UINT64_C(0x000A993579C46A7C), UINT64_C(0x0003FADB3C50214A),
3217           UINT64_C(0x0007552587801072), UINT64_C(0x00008E9ED9922E64),
3218           UINT64_C(0x0001D65D1FE863B0), UINT64_C(0x000B68B2D984977E),
3219           UINT64_C(0x00026F8BCC4EF71E), UINT64_C(0x0004580D2CF9C07C),
3220           UINT64_C(0x0005F7DB9F7C5608), UINT64_C(0x00039723A14ADB8F)},
3221          {UINT64_C(0x0001FC8374852517), UINT64_C(0x0004EFCD85E78688),
3222           UINT64_C(0x0005BA5C6E340E04), UINT64_C(0x0002AD5541C4F7E0),
3223           UINT64_C(0x0007AFEAD74D7911), UINT64_C(0x000772EEA94A657C),
3224           UINT64_C(0x000372BB0B3340C5), UINT64_C(0x0002DFFC3FE428C3),
3225           UINT64_C(0x0007780B19634458), UINT64_C(0x000396C2E8AD8E1B)}},
3226         {{UINT64_C(0x000A0DC2AEA8D665), UINT64_C(0x000497C1A0EAAB74),
3227           UINT64_C(0x00034918630C5E96), UINT64_C(0x00021960961A8492),
3228           UINT64_C(0x00056059C4ACA995), UINT64_C(0x000FDDE1D84A2BCA),
3229           UINT64_C(0x0003E28D6D947C37), UINT64_C(0x00059FA17EA39CB1),
3230           UINT64_C(0x0002B2B829872434), UINT64_C(0x0001AD4DAEAA9FE2)},
3231          {UINT64_C(0x000F2E4853E5AF32), UINT64_C(0x0004693D39964BD6),
3232           UINT64_C(0x0006A84B327FFE47), UINT64_C(0x0002F3C1238E197A),
3233           UINT64_C(0x0003790974398BDF), UINT64_C(0x000FF31F3581AF07),
3234           UINT64_C(0x0004C239726330EE), UINT64_C(0x0002C366AFC8A963),
3235           UINT64_C(0x0005B30D24500CBF), UINT64_C(0x0007D9C6B29592A1)}},
3236         {{UINT64_C(0x000E71DDD57E8296), UINT64_C(0x000346C03100FF87),
3237           UINT64_C(0x00046A920C6C7EF3), UINT64_C(0x00017883AE0679DA),
3238           UINT64_C(0x0007371362C409A2), UINT64_C(0x0003F3FD0398532B),
3239           UINT64_C(0x00047C47A292C97E), UINT64_C(0x0003E20A94F0DAB2),
3240           UINT64_C(0x000615A39700E27A), UINT64_C(0x0004DD4F52D80B70)},
3241          {UINT64_C(0x000D8189C3E7FF9B), UINT64_C(0x0006A323F12ACCE3),
3242           UINT64_C(0x000218561CEBE916), UINT64_C(0x000582DFFA5B6244),
3243           UINT64_C(0x00017E86803253FE), UINT64_C(0x000F6E066437E671),
3244           UINT64_C(0x00003379D07B3571), UINT64_C(0x00028E80792D0F88),
3245           UINT64_C(0x0003ADB5E00F7D48), UINT64_C(0x0004490947B64CC1)}},
3246         {{UINT64_C(0x000966BA117EB5A0), UINT64_C(0x0003EAD0F9635F78),
3247           UINT64_C(0x0001127434D7F565), UINT64_C(0x000166F7EFE73A42),
3248           UINT64_C(0x0006E1EB3EE2C95B), UINT64_C(0x0002169A44ADD28F),
3249           UINT64_C(0x0007D099F80F5E40), UINT64_C(0x00001673EEDC2717),
3250           UINT64_C(0x0006D35CE7C87042), UINT64_C(0x0001F1659FA895C4)},
3251          {UINT64_C(0x0000CDA418AFEEA2), UINT64_C(0x00022BB4CD3D78EA),
3252           UINT64_C(0x0007CCB3C8415D6C), UINT64_C(0x00072FAD0144A08F),
3253           UINT64_C(0x0006AD7BD312743A), UINT64_C(0x0009717E7E313571),
3254           UINT64_C(0x00030507C307B184), UINT64_C(0x00037E8A184867EE),
3255           UINT64_C(0x0005A0F950ED5715), UINT64_C(0x00035FB26907AA86)}},
3256         {{UINT64_C(0x00087069CFCD15C6), UINT64_C(0x0005E74CAE8DD69A),
3257           UINT64_C(0x00077415248EC6CF), UINT64_C(0x00039CFB19D98136),
3258           UINT64_C(0x0004102ADA4617F0), UINT64_C(0x00091344A9950D43),
3259           UINT64_C(0x0007F37FAA893404), UINT64_C(0x0000894C6ED07059),
3260           UINT64_C(0x0001CBD2D8C191AE), UINT64_C(0x0005E7D0A8D6C1FB)},
3261          {UINT64_C(0x000D8A6DCD86A648), UINT64_C(0x00069DFB00FAC67A),
3262           UINT64_C(0x00055E4E4A8BF53E), UINT64_C(0x00052C3F21F19F1A),
3263           UINT64_C(0x000199681E75B076), UINT64_C(0x000B461379ABA50E),
3264           UINT64_C(0x00027C35B013932E), UINT64_C(0x0003E43D98DC3C8B),
3265           UINT64_C(0x0005299D0D27C3FF), UINT64_C(0x000501003FB5C76B)}},
3266         {{UINT64_C(0x0002584D9F215747), UINT64_C(0x0007BE751EE9975B),
3267           UINT64_C(0x0006739CFFA040AB), UINT64_C(0x00021F693AB51286),
3268           UINT64_C(0x0004378F5B99BA03), UINT64_C(0x00092021DCD03E29),
3269           UINT64_C(0x00029C3D833529D1), UINT64_C(0x0003218DAA201C66),
3270           UINT64_C(0x00068DD2830252B2), UINT64_C(0x0000C547881361FE)},
3271          {UINT64_C(0x0004DA1DDF2727C5), UINT64_C(0x000141088C10F286),
3272           UINT64_C(0x00033EFA65C7AD64), UINT64_C(0x000309E225C521F2),
3273           UINT64_C(0x000165C50DA477FD), UINT64_C(0x0006A39D52AC02AF),
3274           UINT64_C(0x000583FDD7E42212), UINT64_C(0x00049409EBFF68E5),
3275           UINT64_C(0x0003F0AC36D8B5F7), UINT64_C(0x0007F9BFC22F82AF)}},
3276     },
3277     {
3278         {{UINT64_C(0x0002372DBC024334), UINT64_C(0x0003AC04780C37E6),
3279           UINT64_C(0x0000B462B14E1199), UINT64_C(0x000789AB88A9152C),
3280           UINT64_C(0x0004669A83086007), UINT64_C(0x0002875233E2BB95),
3281           UINT64_C(0x000164D14E6DD133), UINT64_C(0x0007834C96D7F2E1),
3282           UINT64_C(0x0000376AF8A1FB72), UINT64_C(0x00025E655DD42C55)},
3283          {UINT64_C(0x000BC3F8D59BD4F8), UINT64_C(0x0004295AE12759FE),
3284           UINT64_C(0x0001710B8788649D), UINT64_C(0x00063FB5252144E8),
3285           UINT64_C(0x0000FB67B48BFB15), UINT64_C(0x000EF2243C620B1A),
3286           UINT64_C(0x00043471BAB61989), UINT64_C(0x000297865EB6854C),
3287           UINT64_C(0x00041EC649B840B6), UINT64_C(0x0000DBB860FE03FD)}},
3288         {{UINT64_C(0x000F3F668337995A), UINT64_C(0x0000D23F1A076787),
3289           UINT64_C(0x000559B19C7D6F35), UINT64_C(0x0001F5D63B1D816A),
3290           UINT64_C(0x0004919133B61F8E), UINT64_C(0x00031862225D9C14),
3291           UINT64_C(0x0003C6604EA7EF2F), UINT64_C(0x00062AF2D864BE9B),
3292           UINT64_C(0x0004E75593316CB0), UINT64_C(0x0006270C9215DEE8)},
3293          {UINT64_C(0x00079DDB43AE991A), UINT64_C(0x0000D9D288C5279D),
3294           UINT64_C(0x00010A5CE9E2122D), UINT64_C(0x0006627C1899977C),
3295           UINT64_C(0x0004545C3F73568F), UINT64_C(0x00041DA4E722FDD7),
3296           UINT64_C(0x0001D1CA3BA6C0E4), UINT64_C(0x000154DDB8B11262),
3297           UINT64_C(0x00076A8BBB916CBA), UINT64_C(0x000264F61CEB449C)}},
3298         {{UINT64_C(0x000C03E88F01C0CF), UINT64_C(0x0002DE2458CBF5D8),
3299           UINT64_C(0x00059AB57877E3A8), UINT64_C(0x000022BA99E9FF36),
3300           UINT64_C(0x0006E3D7F3651BA4), UINT64_C(0x00091A76C49112C9),
3301           UINT64_C(0x00033BFF09F31D44), UINT64_C(0x00037DF6585ECCB8),
3302           UINT64_C(0x00031E08F635DFAB), UINT64_C(0x00061B6BEEA111BC)},
3303          {UINT64_C(0x000EC7C8AED31D53), UINT64_C(0x0001C2D420733AED),
3304           UINT64_C(0x00028A0A574AB6AC), UINT64_C(0x0000C07A2A7F50B8),
3305           UINT64_C(0x000146FAE597AF65), UINT64_C(0x000BFB422415D9A7),
3306           UINT64_C(0x0003B3FAF595D88B), UINT64_C(0x00016FABFA94B1DD),
3307           UINT64_C(0x00077BD9F4E1A511), UINT64_C(0x0001ED87CB724465)}},
3308         {{UINT64_C(0x000213F3A12FADCB), UINT64_C(0x00073702A45BFCC2),
3309           UINT64_C(0x00005344B6A0BE9D), UINT64_C(0x0005780B5541C989),
3310           UINT64_C(0x0004689EA1E50219), UINT64_C(0x0005B3C5CE5DF752),
3311           UINT64_C(0x000187B449599429), UINT64_C(0x0004F3F92602410B),
3312           UINT64_C(0x00008266C08FAD01), UINT64_C(0x00006449FDC76A08)},
3313          {UINT64_C(0x0001290134E207CC), UINT64_C(0x0005FC0BF00CD133),
3314           UINT64_C(0x0005093E94846544), UINT64_C(0x0001904D36A7E4E0),
3315           UINT64_C(0x0006CFB29FCB4C43), UINT64_C(0x00021A5E794AD08A),
3316           UINT64_C(0x00049AF3B74BD0CA), UINT64_C(0x0003D12DD54A42E0),
3317           UINT64_C(0x00020F8191FC6C17), UINT64_C(0x0005271ACF2BEF13)}},
3318         {{UINT64_C(0x0003973D23C5FC40), UINT64_C(0x00022C79CF716759),
3319           UINT64_C(0x000698E37C807E96), UINT64_C(0x00061499D8A20942),
3320           UINT64_C(0x0003CA6565D1591A), UINT64_C(0x000376C82319132C),
3321           UINT64_C(0x0000AB592C414D58), UINT64_C(0x00078DCD766F3A9F),
3322           UINT64_C(0x000235326903A314), UINT64_C(0x0001C533CF655AFB)},
3323          {UINT64_C(0x000417ABAE4343FF), UINT64_C(0x0000CC1BEBE8BA73),
3324           UINT64_C(0x00035CFD9C4CD9EB), UINT64_C(0x000525DDECFE78DD),
3325           UINT64_C(0x0004018B732A3EA9), UINT64_C(0x0004158841836B35),
3326           UINT64_C(0x00013A9FC11821AB), UINT64_C(0x0001A62E3E9F6760),
3327           UINT64_C(0x00019D2F382BFC5A), UINT64_C(0x00048B8C5EE1498A)}},
3328         {{UINT64_C(0x00067BC07969E710), UINT64_C(0x00056FE1647FF971),
3329           UINT64_C(0x00056B9EC60E5571), UINT64_C(0x0004FF5FF4D6D59D),
3330           UINT64_C(0x00048349FDBC6F40), UINT64_C(0x0000EDA3EDA8889B),
3331           UINT64_C(0x0000C724742965C9), UINT64_C(0x0004CA3A42627635),
3332           UINT64_C(0x00047141B8D6F392), UINT64_C(0x0003D2FEDEAA1C29)},
3333          {UINT64_C(0x000716C803508620), UINT64_C(0x0004F95142A62BB6),
3334           UINT64_C(0x000486FEE8AA4AD7), UINT64_C(0x0007AEE5F2F7D145),
3335           UINT64_C(0x00073A3D7B302EEA), UINT64_C(0x000C31B194B33CB5),
3336           UINT64_C(0x0005E8F7E9DB0F29), UINT64_C(0x00026804A1976839),
3337           UINT64_C(0x000224312A20168B), UINT64_C(0x0004C6397AFDC614)}},
3338         {{UINT64_C(0x000B366A0560CD66), UINT64_C(0x0005ACD26E6E7D4B),
3339           UINT64_C(0x0001A29126E560EF), UINT64_C(0x00077D0A85F35263),
3340           UINT64_C(0x00066BB4F7909A61), UINT64_C(0x000089487A0F6CA2),
3341           UINT64_C(0x00004201AC59EC89), UINT64_C(0x0003517D862DA268),
3342           UINT64_C(0x0004E06334DCBFC2), UINT64_C(0x000542129BF06EDC)},
3343          {UINT64_C(0x0009AC6AC40ECFAD), UINT64_C(0x0004A4A6435450F2),
3344           UINT64_C(0x0003884DC2B01CE7), UINT64_C(0x00033DFEBB566E48),
3345           UINT64_C(0x000578290964FDAC), UINT64_C(0x00023B7A353BC889),
3346           UINT64_C(0x0005060A08B7EE8B), UINT64_C(0x0007AB7A129FEBF9),
3347           UINT64_C(0x000546502F940252), UINT64_C(0x0001DBB0164F28EF)}},
3348         {{UINT64_C(0x00018A4A75F64304), UINT64_C(0x00046FFF5757186A),
3349           UINT64_C(0x000114066ED84642), UINT64_C(0x0002551CC10C6D4D),
3350           UINT64_C(0x000402FACD10897C), UINT64_C(0x00015C0E2DCC992B),
3351           UINT64_C(0x00040E8F0EBF60EE), UINT64_C(0x000060EB6563E9C6),
3352           UINT64_C(0x0003B809A3126313), UINT64_C(0x00017A66BDC55746)},
3353          {UINT64_C(0x0009062DED579427), UINT64_C(0x00044A5F128A6E10),
3354           UINT64_C(0x000151DC6DCB8F89), UINT64_C(0x000141A87B41F52E),
3355           UINT64_C(0x0000D7A6A002BD72), UINT64_C(0x000E8B9C9303AC1F),
3356           UINT64_C(0x0001834AD28690AA), UINT64_C(0x00032ADCC504A8B7),
3357           UINT64_C(0x0000A927B2B2E93B), UINT64_C(0x0002A737885EE993)}},
3358         {{UINT64_C(0x0006BCF992E8B9F6), UINT64_C(0x00040A05E593A37A),
3359           UINT64_C(0x0003A56755FA1A2F), UINT64_C(0x0003C89364FAE34E),
3360           UINT64_C(0x0007E77DBC3D88C6), UINT64_C(0x0002ED2A5FAC8E6E),
3361           UINT64_C(0x0005FAFA89C46962), UINT64_C(0x0004DBFA31641429),
3362           UINT64_C(0x0000DB79C8D1176F), UINT64_C(0x00019941D0C3522A)},
3363          {UINT64_C(0x00041A75E1C8E526), UINT64_C(0x0004C6B783802833),
3364           UINT64_C(0x0001B562BAFECB1F), UINT64_C(0x0003E09662D4B955),
3365           UINT64_C(0x00036C04E510554C), UINT64_C(0x000E4C0F87B4805F),
3366           UINT64_C(0x00073B95C41A7C5A), UINT64_C(0x00010377BD353B8C),
3367           UINT64_C(0x0000E2A301E84DD8), UINT64_C(0x0004AA08670DB7E8)}},
3368         {{UINT64_C(0x00056A0D36E91A81), UINT64_C(0x0007AE104EAE22F7),
3369           UINT64_C(0x000377C28F77E9A6), UINT64_C(0x00077E662A50D752),
3370           UINT64_C(0x0000806A44DC69B2), UINT64_C(0x0007C6E8FEC3651E),
3371           UINT64_C(0x0003B809BA19FDFE), UINT64_C(0x0002B748E1AF6B23),
3372           UINT64_C(0x00013D51330F00A4), UINT64_C(0x000054847211A69E)},
3373          {UINT64_C(0x00012FB021D29481), UINT64_C(0x0006FA2B27174477),
3374           UINT64_C(0x0003C6438378319E), UINT64_C(0x0000FFD2B056F1C6),
3375           UINT64_C(0x0004D77E75145534), UINT64_C(0x00020A7895D994A3),
3376           UINT64_C(0x0003166E20D7EAB2), UINT64_C(0x0006B6D0CB136A52),
3377           UINT64_C(0x0002B5C30551AFC3), UINT64_C(0x00068443D6142CD4)}},
3378         {{UINT64_C(0x000408A9351DFB46), UINT64_C(0x0006B998F97E7968),
3379           UINT64_C(0x0005B54EB77BAE87), UINT64_C(0x0001D1547584B3F6),
3380           UINT64_C(0x0000DEC5666F2759), UINT64_C(0x00097223408D9F44),
3381           UINT64_C(0x0004E4F55A177F66), UINT64_C(0x000008514532470B),
3382           UINT64_C(0x0000856C14AE04B3), UINT64_C(0x00061CA70F3895B4)},
3383          {UINT64_C(0x000253C057F4BB69), UINT64_C(0x0001163F0D6F162A),
3384           UINT64_C(0x00016E781BFFB4F3), UINT64_C(0x0001F13813403F57),
3385           UINT64_C(0x000720EC959BE2A5), UINT64_C(0x00004CAD26FC8BC3),
3386           UINT64_C(0x0004430E9FD18B54), UINT64_C(0x000127BC205199CF),
3387           UINT64_C(0x0006E3D5CCB5D82C), UINT64_C(0x0002C08FFC17839E)}},
3388         {{UINT64_C(0x00038FAE0545EF38), UINT64_C(0x00053E6BB230EB0F),
3389           UINT64_C(0x0003612B0393816C), UINT64_C(0x00073B82CB17AA32),
3390           UINT64_C(0x000164306BE664B8), UINT64_C(0x0007DECB1BEAB083),
3391           UINT64_C(0x0003ABA14AB6DFEF), UINT64_C(0x0006698C134B72CB),
3392           UINT64_C(0x00048700868CEFB6), UINT64_C(0x0004DC5186706827)},
3393          {UINT64_C(0x000D284BA53E67E8), UINT64_C(0x0004F1D7F1CDA504),
3394           UINT64_C(0x000763E8AAD17850), UINT64_C(0x0003EE3C7D2B43AB),
3395           UINT64_C(0x0005EDDBD6D373C5), UINT64_C(0x000F6B7396FD7F7F),
3396           UINT64_C(0x0006367A99D09B8F), UINT64_C(0x0001571A1CD21578),
3397           UINT64_C(0x0007236B9994F1FA), UINT64_C(0x00062AA7DCD740A8)}},
3398         {{UINT64_C(0x000895A1FD8F0DA1), UINT64_C(0x0000940D048284D5),
3399           UINT64_C(0x0007059173020EB7), UINT64_C(0x00034CBCC3643F29),
3400           UINT64_C(0x00054D38DFC9A9C7), UINT64_C(0x00004D0D54222865),
3401           UINT64_C(0x0007AC3D3F2E7588), UINT64_C(0x0004BD1D9A8CC40C),
3402           UINT64_C(0x0004BA573C79363A), UINT64_C(0x0003B77EA3C0F6CE)},
3403          {UINT64_C(0x0004EA2FC4B8BA7C), UINT64_C(0x0001ADDAEDBD593B),
3404           UINT64_C(0x0007B6AB6C9FFEBE), UINT64_C(0x000246C34D52441A),
3405           UINT64_C(0x000664D1C2133D2A), UINT64_C(0x0005A8FCC6F82245),
3406           UINT64_C(0x0003C821241B7620), UINT64_C(0x0007ABB29F71AC83),
3407           UINT64_C(0x0000126E955FDD3A), UINT64_C(0x000483EA750D326E)}},
3408         {{UINT64_C(0x0003FD366EBA1606), UINT64_C(0x0002D9ABAF3B8EC5),
3409           UINT64_C(0x00011FB79452ADD0), UINT64_C(0x0004D367D2541244),
3410           UINT64_C(0x00014C5A74A4D2BE), UINT64_C(0x000BD9255862125B),
3411           UINT64_C(0x00053C3CF655527E), UINT64_C(0x000040AA6D6CB56E),
3412           UINT64_C(0x0005F328C422C551), UINT64_C(0x000635823C8498F1)},
3413          {UINT64_C(0x000B8D2832D1E4F0), UINT64_C(0x0002253CC89289E1),
3414           UINT64_C(0x0004AFE460B4CFA4), UINT64_C(0x00047F33AFB8FB72),
3415           UINT64_C(0x0003147C7881EF17), UINT64_C(0x000B142D32392AC5),
3416           UINT64_C(0x0002DB71D8F10037), UINT64_C(0x000445CB1A7CD1AC),
3417           UINT64_C(0x0005320C19EF8761), UINT64_C(0x0006956661FEB75C)}},
3418         {{UINT64_C(0x0008A4F6E3E57DAD), UINT64_C(0x00052E3220306CD3),
3419           UINT64_C(0x00016C04A243039F), UINT64_C(0x0006F0BB18CACDCB),
3420           UINT64_C(0x000061BCDE864EC1), UINT64_C(0x00029F6788292DC0),
3421           UINT64_C(0x000022F1DB885727), UINT64_C(0x00058B87F88D42DB),
3422           UINT64_C(0x00067E1B4B34B7CE), UINT64_C(0x00065DB9E57B9F40)},
3423          {UINT64_C(0x000DB97A65B73FBC), UINT64_C(0x0005DDAD4615047A),
3424           UINT64_C(0x0003254BA8C48789), UINT64_C(0x0007BDDF93DDA4BB),
3425           UINT64_C(0x0002C0DF753CF13C), UINT64_C(0x000F1261EE450629),
3426           UINT64_C(0x0001AFB00BDE3B73), UINT64_C(0x0007AD40F78FD9B6),
3427           UINT64_C(0x000275243D6431D9), UINT64_C(0x000670BF2C9CC698)}},
3428         {{UINT64_C(0x0009312A3CA8CBBC), UINT64_C(0x0000D499C81D0092),
3429           UINT64_C(0x0001F9D05BE7A579), UINT64_C(0x000262C322C0431E),
3430           UINT64_C(0x00078231853C844C), UINT64_C(0x00046A359E9EA4F7),
3431           UINT64_C(0x000490A7B54A0D2C), UINT64_C(0x0005AAE046C3E758),
3432           UINT64_C(0x00059A6FF1C516DC), UINT64_C(0x0005C2CEC2165D95)},
3433          {UINT64_C(0x000912BFF9FC238B), UINT64_C(0x0007FEBB522D20DD),
3434           UINT64_C(0x00070A32C9786B85), UINT64_C(0x0003419D9DCB4F51),
3435           UINT64_C(0x0006464E7100B7D1), UINT64_C(0x0001B5E3520C4AE3),
3436           UINT64_C(0x00019B50C7D74FC7), UINT64_C(0x0003ECE80D56DEDC),
3437           UINT64_C(0x00031A0A04910717), UINT64_C(0x0002DC124F80EA68)}},
3438     },
3439     {
3440         {{UINT64_C(0x0007FC3E471A068B), UINT64_C(0x0001F9C0BD1E7FDA),
3441           UINT64_C(0x0005B816710E054C), UINT64_C(0x000641A4989CA761),
3442           UINT64_C(0x0005868FBF10DBFA), UINT64_C(0x000AB68C9F619D52),
3443           UINT64_C(0x000610CC30529BEC), UINT64_C(0x000627D1E7BB0ABB),
3444           UINT64_C(0x000312A648EFC13F), UINT64_C(0x000720DB474C9967)},
3445          {UINT64_C(0x00088A74ECFAC532), UINT64_C(0x0000CA6C465E54E3),
3446           UINT64_C(0x00063BCCC230DDCA), UINT64_C(0x000545133A54D8A3),
3447           UINT64_C(0x000289A2A21D7DAD), UINT64_C(0x00064142FD2154C0),
3448           UINT64_C(0x0000AE8DE8498437), UINT64_C(0x0000FEE6A05C9CA4),
3449           UINT64_C(0x0005A712CADD4BD3), UINT64_C(0x00073C7C0CB9DC7E)}},
3450         {{UINT64_C(0x00014BC20D8FC866), UINT64_C(0x0001B713C72B026C),
3451           UINT64_C(0x0002BB1B00DD97B0), UINT64_C(0x0003DDF6D5D77C14),
3452           UINT64_C(0x0000018D34DBE288), UINT64_C(0x000B37E4BE21CFC1),
3453           UINT64_C(0x00042460ABD75619), UINT64_C(0x00048564EF06DBBE),
3454           UINT64_C(0x0001D0F8F700CFDF), UINT64_C(0x00050BF2E57EF201)},
3455          {UINT64_C(0x0000E7551324C838), UINT64_C(0x00013E348DFFE7EF),
3456           UINT64_C(0x0005667611C90CF1), UINT64_C(0x00054F8E74F0FE54),
3457           UINT64_C(0x00046065CFEC47E4), UINT64_C(0x00020F5CA7131E31),
3458           UINT64_C(0x00056BCD632BBD22), UINT64_C(0x0004068611AE97FE),
3459           UINT64_C(0x000342E9BF1AE60D), UINT64_C(0x00059284EE40F315)}},
3460         {{UINT64_C(0x000695C423B1830F), UINT64_C(0x000061319340E99D),
3461           UINT64_C(0x00056EECAD0FDEF4), UINT64_C(0x0001851799B6AF30),
3462           UINT64_C(0x000574BFEEC6CF78), UINT64_C(0x00090695389CAC68),
3463           UINT64_C(0x0004AD41B7692D45), UINT64_C(0x00067399705E0A02),
3464           UINT64_C(0x0004D01C657BFE93), UINT64_C(0x0007AE346F356E78)},
3465          {UINT64_C(0x0005ED517D1CECA6), UINT64_C(0x0004FA192E057F98),
3466           UINT64_C(0x00028B4C280516A2), UINT64_C(0x0000F57015483B8B),
3467           UINT64_C(0x000381A2B0925CBA), UINT64_C(0x0007EC4E45D3BCA9),
3468           UINT64_C(0x0005E6AE14D94280), UINT64_C(0x00044AA8A233553A),
3469           UINT64_C(0x000188ECFCF3FD6B), UINT64_C(0x00056CD6831AF6A1)}},
3470         {{UINT64_C(0x000BAD665FBBA51D), UINT64_C(0x0005CE5627119792),
3471           UINT64_C(0x000013618EFFC45B), UINT64_C(0x00059C97725250C5),
3472           UINT64_C(0x00034D2A31C26543), UINT64_C(0x000FC7D8B33901C2),
3473           UINT64_C(0x0004049BB70B6E8C), UINT64_C(0x000298E4AB70ACB4),
3474           UINT64_C(0x00024A67CAB12D0F), UINT64_C(0x0000658DD54DD249)},
3475          {UINT64_C(0x00018A1BE3CECA73), UINT64_C(0x0007CB9EB76F08C8),
3476           UINT64_C(0x0001B277825030CD), UINT64_C(0x0005EE5C3A83FB88),
3477           UINT64_C(0x000520DD7C104236), UINT64_C(0x0000B4C8EAC628F4),
3478           UINT64_C(0x00067414680C3CBD), UINT64_C(0x000634E9A20A30CC),
3479           UINT64_C(0x0006FCA2CD50A25E), UINT64_C(0x0003207EC54AE849)}},
3480         {{UINT64_C(0x000A7C2C9FA19751), UINT64_C(0x00032EAC1838C0AE),
3481           UINT64_C(0x000704308B256AC4), UINT64_C(0x0002462B6C4B26A1),
3482           UINT64_C(0x0002E3D83A96467F), UINT64_C(0x000FE8591432EB6A),
3483           UINT64_C(0x0003FD27EAF7B31A), UINT64_C(0x00058F724E26D47B),
3484           UINT64_C(0x00076136F099E12E), UINT64_C(0x000558F5CDCDEAA6)},
3485          {UINT64_C(0x0006ED04F333B165), UINT64_C(0x000634F9F9299870),
3486           UINT64_C(0x0006E7943903D73C), UINT64_C(0x00005689249D8E40),
3487           UINT64_C(0x00043B4AC0439BF3), UINT64_C(0x000553178FDF6D63),
3488           UINT64_C(0x000439F7375523D2), UINT64_C(0x0005F10CB0346B4A),
3489           UINT64_C(0x00004E0AE314DF84), UINT64_C(0x00069471AB5DFADA)}},
3490         {{UINT64_C(0x0000E9501E9FAFE7), UINT64_C(0x0001ED4A26197388),
3491           UINT64_C(0x0005CAA03225B2DC), UINT64_C(0x0003498CF6071DD5),
3492           UINT64_C(0x00002CF8D255A84E), UINT64_C(0x000FA75C0885DE81),
3493           UINT64_C(0x00030965CE1A47CB), UINT64_C(0x00011FB194A95BB0),
3494           UINT64_C(0x0004800A95408A73), UINT64_C(0x0002EEA35FCE3212)},
3495          {UINT64_C(0x00087C5B9DE51934), UINT64_C(0x00036D95402D7411),
3496           UINT64_C(0x00037FB02C63558B), UINT64_C(0x0006A1232CBC6C08),
3497           UINT64_C(0x0005C0E468414E24), UINT64_C(0x0007F99C0CCF2D15),
3498           UINT64_C(0x000094592332F465), UINT64_C(0x0002AB96A524CF72),
3499           UINT64_C(0x0007E87F1D99C378), UINT64_C(0x0000207DD0DD808E)}},
3500         {{UINT64_C(0x000ECD9FF97D4931), UINT64_C(0x0001D4B8B850BE44),
3501           UINT64_C(0x0006C1F7D66BFB33), UINT64_C(0x000286B0E020CE70),
3502           UINT64_C(0x00057D2D930A9035), UINT64_C(0x000F70CD43EF78D8),
3503           UINT64_C(0x0005595A2E3FB21C), UINT64_C(0x0002B23212C03281),
3504           UINT64_C(0x0006BE2A6AB3CEFB), UINT64_C(0x0007B13ACF77F80E)},
3505          {UINT64_C(0x000CB860BC601AFD), UINT64_C(0x0006ACF4F99A1471),
3506           UINT64_C(0x0006698A5886492B), UINT64_C(0x000245BF72D02C00),
3507           UINT64_C(0x00067720650A5EB3), UINT64_C(0x000D9E8B3198D8BE),
3508           UINT64_C(0x00072728DEA3F720), UINT64_C(0x0000B079DF1DF966),
3509           UINT64_C(0x000764E77F92B823), UINT64_C(0x00004721437DFB0D)}},
3510         {{UINT64_C(0x0008C47E3E9972F3), UINT64_C(0x0005F6800BF3F5AC),
3511           UINT64_C(0x00040B8943EC9A82), UINT64_C(0x00018C3DE68795BC),
3512           UINT64_C(0x000798ACD9D5C188), UINT64_C(0x000626A89DFFB9C7),
3513           UINT64_C(0x0000A446A1E585FF), UINT64_C(0x00003F9D6C0F2522),
3514           UINT64_C(0x00045DA3E3E5843E), UINT64_C(0x0001DF8788F4C149)},
3515          {UINT64_C(0x00002D1EA1F1D567), UINT64_C(0x0007D2CEB46D5CF9),
3516           UINT64_C(0x0000AE8762EDBE19), UINT64_C(0x0004D34041C698A3),
3517           UINT64_C(0x0002249A52FB7AFB), UINT64_C(0x0001AA28A184F6D0),
3518           UINT64_C(0x0004AEDC54AC0233), UINT64_C(0x0001A52FA2FE3789),
3519           UINT64_C(0x000684CDB10852C6), UINT64_C(0x000006A488535FB8)}},
3520         {{UINT64_C(0x000B69CD208922BD), UINT64_C(0x000113C0A2CDC098),
3521           UINT64_C(0x00034EB1527C9342), UINT64_C(0x0002E33524A72273),
3522           UINT64_C(0x0005D54F4B29D1BB), UINT64_C(0x000935E2895D6B59),
3523           UINT64_C(0x00002467FF51247E), UINT64_C(0x00064A19BE2B9B33),
3524           UINT64_C(0x0000CA9B34B3CC48), UINT64_C(0x0001C1179DC502AF)},
3525          {UINT64_C(0x00030DD196A35DEC), UINT64_C(0x0004F43012319797),
3526           UINT64_C(0x0003AD2F85C0A8FE), UINT64_C(0x000767B8C3625127),
3527           UINT64_C(0x0007156D91446AF4), UINT64_C(0x000A52B80B684D9E),
3528           UINT64_C(0x000493C29A3C9396), UINT64_C(0x00060B66E8B18710),
3529           UINT64_C(0x00073CE5C6E23F4E), UINT64_C(0x0000C0E9CF09DBEA)}},
3530         {{UINT64_C(0x000D847204E88E6A), UINT64_C(0x00014392C2DBD5D4),
3531           UINT64_C(0x0003647F5392D642), UINT64_C(0x00005CD6B4397528),
3532           UINT64_C(0x0003CA804BE0E6E6), UINT64_C(0x000AFA2DEBF9BDF0),
3533           UINT64_C(0x0003B70844F7F77A), UINT64_C(0x00055FD54AED8423),
3534           UINT64_C(0x0001E87463CB4E23), UINT64_C(0x0001BCB9D95AA334)},
3535          {UINT64_C(0x0008AD95903A42F5), UINT64_C(0x0002B77C076B1514),
3536           UINT64_C(0x00004EA8D39728A1), UINT64_C(0x00006196D1EAC34C),
3537           UINT64_C(0x00021AD5CD908FB5), UINT64_C(0x0009231E8FBDFA13),
3538           UINT64_C(0x0006F53F72D12265), UINT64_C(0x0004EEB89634BD92),
3539           UINT64_C(0x000467E16722B0C0), UINT64_C(0x000322B4828C8354)}},
3540         {{UINT64_C(0x000749D2D2151628), UINT64_C(0x00017DB343621D73),
3541           UINT64_C(0x000165CD9CF505C3), UINT64_C(0x0006EF002B6F7508),
3542           UINT64_C(0x0006A5B3F2EBD640), UINT64_C(0x00088918A6F47361),
3543           UINT64_C(0x00024A4CC1F89F3D), UINT64_C(0x0002A883A0915ACB),
3544           UINT64_C(0x0000B430E4311864), UINT64_C(0x0002E5AFD5631755)},
3545          {UINT64_C(0x000E6600C23AF414), UINT64_C(0x0004A68A06127530),
3546           UINT64_C(0x0000119CF5DBEFF9), UINT64_C(0x00031BD59339EC9D),
3547           UINT64_C(0x0007AFB0A0652755), UINT64_C(0x0004E54D473D5D91),
3548           UINT64_C(0x0006663BBC911425), UINT64_C(0x00060CD99F4A6814),
3549           UINT64_C(0x0004D70E317492DC), UINT64_C(0x00057C676F34207B)}},
3550         {{UINT64_C(0x000FA45FEB394F79), UINT64_C(0x0002595780239750),
3551           UINT64_C(0x0006DAEAFB6AF370), UINT64_C(0x0004F71BE680332B),
3552           UINT64_C(0x0007A2B88BEC444F), UINT64_C(0x0006D282845556D8),
3553           UINT64_C(0x0003A48753C8FEB2), UINT64_C(0x0005314A5E71A50D),
3554           UINT64_C(0x00064B67D3BEDF37), UINT64_C(0x00049BB87F9AA6E0)},
3555          {UINT64_C(0x000F9E3C83D99F56), UINT64_C(0x0002AFD6DA547B1C),
3556           UINT64_C(0x000799EBA75D7647), UINT64_C(0x00017702967C6572),
3557           UINT64_C(0x00036DAA4C258B87), UINT64_C(0x0005BAA7744D42CE),
3558           UINT64_C(0x0006706FA16409C8), UINT64_C(0x0003833BD25E3852),
3559           UINT64_C(0x0005B9B25E71D72C), UINT64_C(0x0000851A32EE02B9)}},
3560         {{UINT64_C(0x00096C7F5422B60A), UINT64_C(0x0000A451DBBE6CC7),
3561           UINT64_C(0x0004DFB70D71B03F), UINT64_C(0x00047A85B6A73205),
3562           UINT64_C(0x000552D4E655E4A4), UINT64_C(0x00026F31F95A9399),
3563           UINT64_C(0x0001C446539B5383), UINT64_C(0x000544DB6B46DF8B),
3564           UINT64_C(0x0003348ADD036467), UINT64_C(0x0000AA2D0D6935D7)},
3565          {UINT64_C(0x0007D5B7A1E58219), UINT64_C(0x0004617A5AB605AC),
3566           UINT64_C(0x0006A6AF7E81B995), UINT64_C(0x00042EE78EACBEE0),
3567           UINT64_C(0x00049DD85014D117), UINT64_C(0x0009591FD9314E76),
3568           UINT64_C(0x0005DB569F458EB8), UINT64_C(0x00051D4F2503D183),
3569           UINT64_C(0x00063FBB28BA6AD3), UINT64_C(0x0006D3AC67CC821C)}},
3570         {{UINT64_C(0x000DB3F243061D75), UINT64_C(0x0006D73931E621F2),
3571           UINT64_C(0x0000B17170E27A4D), UINT64_C(0x00004483B525B3B3),
3572           UINT64_C(0x0000CEC6BF188345), UINT64_C(0x00028C93F5247B6F),
3573           UINT64_C(0x0004A6511A5DEF06), UINT64_C(0x00076B62AEAC63B1),
3574           UINT64_C(0x00074A604ED95C71), UINT64_C(0x00009EFCC184826A)},
3575          {UINT64_C(0x0008BAC2B060443D), UINT64_C(0x000344E9D3B2EEA9),
3576           UINT64_C(0x00020435D407DCEB), UINT64_C(0x00022E3643D85699),
3577           UINT64_C(0x0001A1F508400E9C), UINT64_C(0x000D7CC9B1AC0494),
3578           UINT64_C(0x0004C1AD9E2EB052), UINT64_C(0x00009FBD9B150459),
3579           UINT64_C(0x000369468497704F), UINT64_C(0x0003FF2AC90D8014)}},
3580         {{UINT64_C(0x000F26B79E392352), UINT64_C(0x0002B957BF938557),
3581           UINT64_C(0x000715D0978BD2B2), UINT64_C(0x00045531E667D86D),
3582           UINT64_C(0x00038962FCA00EDE), UINT64_C(0x000DC1791F176B3F),
3583           UINT64_C(0x000743403651C9FA), UINT64_C(0x0004ABD020A84523),
3584           UINT64_C(0x0006DECB17845C69), UINT64_C(0x0003DF12469D37F5)},
3585          {UINT64_C(0x000FA8419C8A9D27), UINT64_C(0x000768869058EE8E),
3586           UINT64_C(0x0000D174A1CB1143), UINT64_C(0x00070F67326B9037),
3587           UINT64_C(0x00026979FA59E935), UINT64_C(0x000F4AA12B6BC96F),
3588           UINT64_C(0x000606751117A342), UINT64_C(0x00047A115AF10FB7),
3589           UINT64_C(0x0006DF7816619F79), UINT64_C(0x00072158DA5671BF)}},
3590         {{UINT64_C(0x000ECAFE87CBB23D), UINT64_C(0x000512A524D4D77C),
3591           UINT64_C(0x0005FF1AF3F9CDCC), UINT64_C(0x0005A5222E7CCBCA),
3592           UINT64_C(0x00037F25D366C5D3), UINT64_C(0x000DEE9CD4A0BD44),
3593           UINT64_C(0x0001BA906B38FE5F), UINT64_C(0x0002479A4422043C),
3594           UINT64_C(0x0007F85530950F05), UINT64_C(0x00026843F9CA979A)},
3595          {UINT64_C(0x000E6EBFB1D7D79A), UINT64_C(0x0001962262421C26),
3596           UINT64_C(0x000749C75E0896B7), UINT64_C(0x00072656E0591FB4),
3597           UINT64_C(0x00048C25570B4B5D), UINT64_C(0x000C0F6689F57006),
3598           UINT64_C(0x000106B77BE98B19), UINT64_C(0x00070FD9ADA250C6),
3599           UINT64_C(0x0004B2AC835CA2CF), UINT64_C(0x0005FD38C57539D3)}},
3600     },
3601     {
3602         {{UINT64_C(0x00078CF823118058), UINT64_C(0x000084E70B90249E),
3603           UINT64_C(0x000340E63640803E), UINT64_C(0x000259F3BA46031B),
3604           UINT64_C(0x0004025A533D8FB6), UINT64_C(0x00021525975D8B46),
3605           UINT64_C(0x00016415CB875BF3), UINT64_C(0x00037D3C94CF88C2),
3606           UINT64_C(0x0001303423D046C3), UINT64_C(0x00064D6CA6CF50E4)},
3607          {UINT64_C(0x0001C4F51365236C), UINT64_C(0x00074C650114C6D7),
3608           UINT64_C(0x00030B74EB231DBC), UINT64_C(0x000108DDE7A79F07),
3609           UINT64_C(0x0005C84883DAAC53), UINT64_C(0x000F4FFFB87D65C4),
3610           UINT64_C(0x0003A077D6424776), UINT64_C(0x00074EF17A8FF930),
3611           UINT64_C(0x0001C70531DAACC1), UINT64_C(0x0004FDAB70943349)}},
3612         {{UINT64_C(0x000D10852C9532B6), UINT64_C(0x000043AAC71DC676),
3613           UINT64_C(0x0000699B3F568856), UINT64_C(0x00062AA64E24D6D0),
3614           UINT64_C(0x0000AC30CB5E809D), UINT64_C(0x0003DF891FADF9D0),
3615           UINT64_C(0x0002E8AEFD6E009D), UINT64_C(0x000763BB5C596056),
3616           UINT64_C(0x00027648417EC3B3), UINT64_C(0x00026FFF568DBEC6)},
3617          {UINT64_C(0x00046866CD52C51B), UINT64_C(0x00074EBD129DAF5E),
3618           UINT64_C(0x0007E8A44CB2D0FF), UINT64_C(0x0001754AF2E0C3E1),
3619           UINT64_C(0x00075DF74CCBA4EB), UINT64_C(0x0007015D1AC6F756),
3620           UINT64_C(0x0007CC58CB459B84), UINT64_C(0x0004431C9AFC9478),
3621           UINT64_C(0x0001496EF18E492E), UINT64_C(0x00040F52B9782D09)}},
3622         {{UINT64_C(0x0005432D2ABFAEFB), UINT64_C(0x000219E9F74B6891),
3623           UINT64_C(0x000772FBB5A56EDD), UINT64_C(0x0003F9B32B854A6E),
3624           UINT64_C(0x0000E23A82F7F4DB), UINT64_C(0x00079910F350CA56),
3625           UINT64_C(0x0002F2CBD94634FD), UINT64_C(0x00062DE8463F621C),
3626           UINT64_C(0x00018A84A27F47AC), UINT64_C(0x000492918B0A6CFC)},
3627          {UINT64_C(0x000917028ABF0C6C), UINT64_C(0x0005885BCB7EC09C),
3628           UINT64_C(0x00007B7029F86047), UINT64_C(0x0004E980E40CB14D),
3629           UINT64_C(0x0002414620471CAF), UINT64_C(0x000638833F454BE0),
3630           UINT64_C(0x0007530E1D810E0C), UINT64_C(0x00007BC1509E4C84),
3631           UINT64_C(0x000234FE03106A25), UINT64_C(0x0007B3C1744922CE)}},
3632         {{UINT64_C(0x0001D6F26560D816), UINT64_C(0x000761F53B7DED62),
3633           UINT64_C(0x0003F63729C380A1), UINT64_C(0x0000D9AABEB1F8E4),
3634           UINT64_C(0x0002FC799030E923), UINT64_C(0x00090EB9E83FC112),
3635           UINT64_C(0x000276A6C7B64189), UINT64_C(0x0005C92C57117936),
3636           UINT64_C(0x0003A76769F60AB1), UINT64_C(0x0000214C6BFF3AB2)},
3637          {UINT64_C(0x000F91FA223FB871), UINT64_C(0x00072F8E905BA3A7),
3638           UINT64_C(0x00054D9829B0E1C4), UINT64_C(0x000041AADCD2F042),
3639           UINT64_C(0x0006B33B8DBF5DAC), UINT64_C(0x0005E138CA79ABDB),
3640           UINT64_C(0x0007F91015FD64B0), UINT64_C(0x0003E42D44B48D18),
3641           UINT64_C(0x0003070F61FC98CE), UINT64_C(0x0003ECFBC333B9A7)}},
3642         {{UINT64_C(0x000A1C5F63F4003A), UINT64_C(0x00073E65E07CAEF9),
3643           UINT64_C(0x0007EE53E05454BD), UINT64_C(0x0002832BB0CB8A80),
3644           UINT64_C(0x0007F92B5F28C3C9), UINT64_C(0x000B198CFA188FC6),
3645           UINT64_C(0x0001B4972BD5EA15), UINT64_C(0x0003371055BFF265),
3646           UINT64_C(0x00040289DB496278), UINT64_C(0x000037FB8AEF99C7)},
3647          {UINT64_C(0x0003E8BA240F2657), UINT64_C(0x000507715E41F403),
3648           UINT64_C(0x00000AC5E34F938B), UINT64_C(0x00010AC246A10935),
3649           UINT64_C(0x00035E92D9586CD7), UINT64_C(0x000A927B7C112162),
3650           UINT64_C(0x0001E320A6A23B35), UINT64_C(0x0002AEA76305FB4D),
3651           UINT64_C(0x00027FC7B4E55E7B), UINT64_C(0x0007F605FDDB3012)}},
3652         {{UINT64_C(0x0007B3BEE04C4C80), UINT64_C(0x0005EC1698F3E6D0),
3653           UINT64_C(0x00058683E8514BF8), UINT64_C(0x00003490978C1C15),
3654           UINT64_C(0x0003FD63AD3797AF), UINT64_C(0x00078C4971CAD19E),
3655           UINT64_C(0x0006E7EC2A846823), UINT64_C(0x00077586A76BAADD),
3656           UINT64_C(0x00022BF1CA7743E1), UINT64_C(0x000719DBF8CE1E82)},
3657          {UINT64_C(0x000E187887A1EB86), UINT64_C(0x0006E15CE17F34FE),
3658           UINT64_C(0x000165A9C070F6B8), UINT64_C(0x000235BE0B50B7A1),
3659           UINT64_C(0x0000701631632860), UINT64_C(0x0001520CD1B97E69),
3660           UINT64_C(0x000324D126195433), UINT64_C(0x000695BD1FBD3083),
3661           UINT64_C(0x0007D0E98F84E4E6), UINT64_C(0x000076D0FD61BE2C)}},
3662         {{UINT64_C(0x0001C135C074F082), UINT64_C(0x0001B1C98964C70E),
3663           UINT64_C(0x00070F16F51C63DE), UINT64_C(0x00065C546121FD21),
3664           UINT64_C(0x0006E0EA00711AC1), UINT64_C(0x00019C4ED64CA43A),
3665           UINT64_C(0x0007B5F5DE4D83CD), UINT64_C(0x0004A3289E196D3B),
3666           UINT64_C(0x000379BD42718428), UINT64_C(0x00028B586AD8AC43)},
3667          {UINT64_C(0x00081CF90B74F2A0), UINT64_C(0x0002D685FCE339CF),
3668           UINT64_C(0x00029BACF289048F), UINT64_C(0x00031B11C9F022B9),
3669           UINT64_C(0x000723747A599137), UINT64_C(0x00008CAE4A9C10E7),
3670           UINT64_C(0x000252D22A179598), UINT64_C(0x000462BF1945C2A5),
3671           UINT64_C(0x0005E7BF4B6F8B7E), UINT64_C(0x0004A5CC544E7A94)}},
3672         {{UINT64_C(0x0002CE082C195DF7), UINT64_C(0x0000B2902F1DD4F4),
3673           UINT64_C(0x0002EBCE1E8E6C3E), UINT64_C(0x0003DBB93DD984FC),
3674           UINT64_C(0x000294BCFA46D91A), UINT64_C(0x000E47F5EB6C49F2),
3675           UINT64_C(0x00027D01A275F685), UINT64_C(0x0002A8AB31F7A7C5),
3676           UINT64_C(0x000065DEDCCEB9FE), UINT64_C(0x0007EE40D2F05D3F)},
3677          {UINT64_C(0x000AA9F92E841F87), UINT64_C(0x00025B8A866BCAA0),
3678           UINT64_C(0x000456616AD0616E), UINT64_C(0x000019C95CBF2929),
3679           UINT64_C(0x00018B84E8563743), UINT64_C(0x000D9BBA3F123075),
3680           UINT64_C(0x0003C88C52754F28), UINT64_C(0x0002A84A28E16C62),
3681           UINT64_C(0x00006C4CBF9BD1BE), UINT64_C(0x00014E2ED761883C)}},
3682         {{UINT64_C(0x000DD43327A5EC62), UINT64_C(0x00037A88C2CE8F10),
3683           UINT64_C(0x00079FB7AF273687), UINT64_C(0x0005C217AE2F9294),
3684           UINT64_C(0x0007B658E58E2D4D), UINT64_C(0x0001B9F8E201BDE2),
3685           UINT64_C(0x00003AF8B1C4F58C), UINT64_C(0x000023F0302D4943),
3686           UINT64_C(0x0000F016949D42FE), UINT64_C(0x0005DA77793E30DF)},
3687          {UINT64_C(0x0009A4A03292A077), UINT64_C(0x0005E38597159B13),
3688           UINT64_C(0x000438CD4AA3B94B), UINT64_C(0x00039E50FBBA527D),
3689           UINT64_C(0x00032E5CFA99121B), UINT64_C(0x000CE6179D42746B),
3690           UINT64_C(0x000201FC90B2780E), UINT64_C(0x0002129922687B60),
3691           UINT64_C(0x0001410E58988022), UINT64_C(0x0005E3F21AE57B91)}},
3692         {{UINT64_C(0x000EE44D178CCA07), UINT64_C(0x0002290775707084),
3693           UINT64_C(0x000256E01D88B556), UINT64_C(0x0001EF98ED0CEE11),
3694           UINT64_C(0x0003BD6824481F73), UINT64_C(0x000BAAFD1FEBD7AB),
3695           UINT64_C(0x0006C5370AC07A93), UINT64_C(0x00039FFED4B7C601),
3696           UINT64_C(0x00039A6B4153D857), UINT64_C(0x00077A6BC55E5234)},
3697          {UINT64_C(0x000816AA9A09968B), UINT64_C(0x0007BDB9C7F2EAF9),
3698           UINT64_C(0x00032ACE09E1CBDC), UINT64_C(0x000522E8C19D3EEB),
3699           UINT64_C(0x0003827A069B97BD), UINT64_C(0x0006716F9981A71A),
3700           UINT64_C(0x000554503B7BA012), UINT64_C(0x000074637BF2E394),
3701           UINT64_C(0x000615A2194548E8), UINT64_C(0x000006C523A794B4)}},
3702         {{UINT64_C(0x000A0B318735C445), UINT64_C(0x00055C3BC1A59729),
3703           UINT64_C(0x000355C87CF06A80), UINT64_C(0x0000ABBB95628B32),
3704           UINT64_C(0x00073A2D28549A3A), UINT64_C(0x000CC8F16C0B5FB6),
3705           UINT64_C(0x0005190FEF2C780C), UINT64_C(0x000485C8686725FF),
3706           UINT64_C(0x000212610F06DB7C), UINT64_C(0x000186C78ED4F0AC)},
3707          {UINT64_C(0x00051A0699ABFB29), UINT64_C(0x0004079D38322CB8),
3708           UINT64_C(0x0004E0C463922EE4), UINT64_C(0x0005EC25735A7F4C),
3709           UINT64_C(0x00030ACD8B3755D5), UINT64_C(0x0004533C09F622E8),
3710           UINT64_C(0x00065BD64578113C), UINT64_C(0x000011679C79532B),
3711           UINT64_C(0x000270C486D96F98), UINT64_C(0x00064FCDA161257D)}},
3712         {{UINT64_C(0x000A95E15137A104), UINT64_C(0x000184008DF11135),
3713           UINT64_C(0x00005609A6FCBD2E), UINT64_C(0x0004EDFE7BC6F8F9),
3714           UINT64_C(0x00053CA3D1760E75), UINT64_C(0x000EA2FB5A31F0F3),
3715           UINT64_C(0x00077ABE20D50F91), UINT64_C(0x0007C0E34B46F175),
3716           UINT64_C(0x0007A94E7592DB90), UINT64_C(0x000249BEAED5FC42)},
3717          {UINT64_C(0x000F85AF26A73A5A), UINT64_C(0x0002B83D21F3C411),
3718           UINT64_C(0x000069FD92DFF608), UINT64_C(0x000407178D3E9436),
3719           UINT64_C(0x0000D6C1A603C407), UINT64_C(0x000C556CBD53BF39),
3720           UINT64_C(0x0000802C8ABE0ADC), UINT64_C(0x00024A5E6F60B0DA),
3721           UINT64_C(0x0007DB9843929DA3), UINT64_C(0x0001FF410E9D19C7)}},
3722         {{UINT64_C(0x00094E812DBE8C32), UINT64_C(0x0006D33ED80BCDA2),
3723           UINT64_C(0x00002D936BC7580C), UINT64_C(0x00043D349744E6D4),
3724           UINT64_C(0x00020A0DEB1F77B4), UINT64_C(0x00031B3519BBF1AA),
3725           UINT64_C(0x0007A520ED4CEF61), UINT64_C(0x000043394E7A87E8),
3726           UINT64_C(0x00040764584AEB95), UINT64_C(0x0003155C9B8CCF57)},
3727          {UINT64_C(0x000C17DA9E28ADF8), UINT64_C(0x0003424BBFF78B37),
3728           UINT64_C(0x0003CC6A19FFC5FF), UINT64_C(0x0002CB497A44C566),
3729           UINT64_C(0x00022DDAD26DE223), UINT64_C(0x000AC080F18A0065),
3730           UINT64_C(0x000575057C11015D), UINT64_C(0x00078021729DE91B),
3731           UINT64_C(0x0005796ED9E76DA3), UINT64_C(0x0006FE4AB6E74734)}},
3732         {{UINT64_C(0x0005F849D235CCE0), UINT64_C(0x000436E70A0D70E1),
3733           UINT64_C(0x00035E68AA2BDD02), UINT64_C(0x0003E7FE63874EA2),
3734           UINT64_C(0x00026C88F7884563), UINT64_C(0x000FCD9BAE21D5B1),
3735           UINT64_C(0x0005C69101494E3A), UINT64_C(0x00037DB907EEE3A2),
3736           UINT64_C(0x00064C59AE199A08), UINT64_C(0x00039423CE12F5BB)},
3737          {UINT64_C(0x0000AAAF7EEE09F7), UINT64_C(0x0004C5314B2C4D75),
3738           UINT64_C(0x0003EC74B3A6D36C), UINT64_C(0x000620CA51245767),
3739           UINT64_C(0x00044F419AE83224), UINT64_C(0x00080A722E02A693),
3740           UINT64_C(0x0007A360EBC5DBD9), UINT64_C(0x000381727BCF6E58),
3741           UINT64_C(0x000617B700F3ADF6), UINT64_C(0x0000FA1A09F64950)}},
3742         {{UINT64_C(0x00096F84C0BDFF5B), UINT64_C(0x0006E5B26C5065BB),
3743           UINT64_C(0x0001952942E39562), UINT64_C(0x000653E9892230FF),
3744           UINT64_C(0x0000F763C13E4999), UINT64_C(0x0009F0784B215E56),
3745           UINT64_C(0x000270D42201B3A3), UINT64_C(0x00045740B9AF7F09),
3746           UINT64_C(0x000229B251B5D908), UINT64_C(0x000657F560FDA230)},
3747          {UINT64_C(0x00031EFD1B4B981B), UINT64_C(0x0007B1F5B3F7B1EA),
3748           UINT64_C(0x000170AF323B8DC9), UINT64_C(0x00055F77521B9F83),
3749           UINT64_C(0x0003B381A7CCCC0F), UINT64_C(0x00086767112D35DD),
3750           UINT64_C(0x0000C15A5CC603CB), UINT64_C(0x00026C0095FA28DE),
3751           UINT64_C(0x0005178C03D1D4CC), UINT64_C(0x0006A499CD28196A)}},
3752         {{UINT64_C(0x0009617A9ECA8281), UINT64_C(0x0002F03DC8FC403F),
3753           UINT64_C(0x0005A200AB22733A), UINT64_C(0x000402BA3A81D989),
3754           UINT64_C(0x0006690A4DAA9371), UINT64_C(0x0001CC8F6D90CC2C),
3755           UINT64_C(0x000293AC50B59125), UINT64_C(0x0004D1A882B9D469),
3756           UINT64_C(0x00014C4DF2707168), UINT64_C(0x0005A3C384944E0D)},
3757          {UINT64_C(0x000B2CD4D51F74FF), UINT64_C(0x00021EB289F478F1),
3758           UINT64_C(0x0004BF9CA3A7AC0A), UINT64_C(0x0003DB4F626C2310),
3759           UINT64_C(0x0005CBF13B00CCC4), UINT64_C(0x00029073A697E0B9),
3760           UINT64_C(0x0002C5D67FD6CD73), UINT64_C(0x0005D10BAA363615),
3761           UINT64_C(0x000051A608EA619E), UINT64_C(0x0004155A6B02D3FB)}},
3762     },
3763     {
3764         {{UINT64_C(0x000B63BE2E2471B6), UINT64_C(0x000793F7C56B8C12),
3765           UINT64_C(0x00003A61A28C6343), UINT64_C(0x00073E8EF4E8B82C),
3766           UINT64_C(0x000770A1A8474CE7), UINT64_C(0x000B2231CECAFDB4),
3767           UINT64_C(0x0006E5A738D66F01), UINT64_C(0x0002489688C31B78),
3768           UINT64_C(0x00060068F8F76B83), UINT64_C(0x0003D6F5D74A6F06)},
3769          {UINT64_C(0x0002EEDB0339BF8A), UINT64_C(0x0006213ECE2A8CBB),
3770           UINT64_C(0x0006876AC31EC71D), UINT64_C(0x0001ADFE07733CDB),
3771           UINT64_C(0x000192FE0B2619CE), UINT64_C(0x00000B3F7CB6D64F),
3772           UINT64_C(0x000193DD7BC97D28), UINT64_C(0x0005572F38C9E619),
3773           UINT64_C(0x000117122583880C), UINT64_C(0x0003F2E95F7AD5BD)}},
3774         {{UINT64_C(0x0005C60618A27AB4), UINT64_C(0x00041A118681EEDE),
3775           UINT64_C(0x000264B9365ED5C1), UINT64_C(0x000257E09A79B510),
3776           UINT64_C(0x0007087B4DFA9B18), UINT64_C(0x000BC4BD3F5B7665),
3777           UINT64_C(0x00047988ECDAA2B4), UINT64_C(0x00038D5A0D231327),
3778           UINT64_C(0x00061EBA028CB516), UINT64_C(0x00034DFCB32D1C33)},
3779          {UINT64_C(0x0007BF2B53E6F733), UINT64_C(0x0007363F62FE6A5D),
3780           UINT64_C(0x00009E88E9E4BBC7), UINT64_C(0x00053137DF685DF0),
3781           UINT64_C(0x0000D26EEFA89EB2), UINT64_C(0x00060E84ECFF317A),
3782           UINT64_C(0x000562FC49406706), UINT64_C(0x0004010FC39B719E),
3783           UINT64_C(0x00059BF4CE26C533), UINT64_C(0x00016B0A194ADE86)}},
3784         {{UINT64_C(0x00025D428CB55AB4), UINT64_C(0x000349C469FB2C47),
3785           UINT64_C(0x00011112758D3875), UINT64_C(0x0005BBB75049ADD3),
3786           UINT64_C(0x00013E42E4FC95BB), UINT64_C(0x00063D2C733F5E50),
3787           UINT64_C(0x00071ECB0DB2E6CD), UINT64_C(0x00047F5C9C428E03),
3788           UINT64_C(0x0000C8ACA14009B2), UINT64_C(0x0000FEBA85C091ED)},
3789          {UINT64_C(0x000319368C78D149), UINT64_C(0x0000A97A3731C17E),
3790           UINT64_C(0x0005734AA19A7BF7), UINT64_C(0x0004110947FCD175),
3791           UINT64_C(0x00027E988A2F1542), UINT64_C(0x0001405032878E0A),
3792           UINT64_C(0x00035BAF2C56A5E2), UINT64_C(0x000539BA8560A8C0),
3793           UINT64_C(0x0006BE84D2118DA9), UINT64_C(0x0005E0476ABA3F5B)}},
3794         {{UINT64_C(0x0003AA4CC1DD3F97), UINT64_C(0x00063185FB6A0D5E),
3795           UINT64_C(0x0007EAE973FA7134), UINT64_C(0x0000D566EB4BA56E),
3796           UINT64_C(0x000432A20DAAF7BF), UINT64_C(0x000C99D6D0DE97D6),
3797           UINT64_C(0x00040CD8D71B4231), UINT64_C(0x00061DBA01336D9F),
3798           UINT64_C(0x00010DC031C5661D), UINT64_C(0x0007DBFCC3C94CE7)},
3799          {UINT64_C(0x00092DCF6D493BCC), UINT64_C(0x00008741DFAF5D31),
3800           UINT64_C(0x0002E2A67554DF10), UINT64_C(0x0005119B1E5ADE23),
3801           UINT64_C(0x000501601DB80686), UINT64_C(0x00016AF164683AA7),
3802           UINT64_C(0x00013250FB11AA12), UINT64_C(0x00070A10DFF37326),
3803           UINT64_C(0x0000F9D812FF4EAB), UINT64_C(0x00002035714DCE83)}},
3804         {{UINT64_C(0x0007CA219AED5320), UINT64_C(0x0000DC5D44C110A5),
3805           UINT64_C(0x000211982529953C), UINT64_C(0x000330BE049F485C),
3806           UINT64_C(0x0006B006A9948E28), UINT64_C(0x0000B04E018D4DC0),
3807           UINT64_C(0x000215F49B9F8FF2), UINT64_C(0x00079CE3A3D8E522),
3808           UINT64_C(0x0006EDC3EA4A4987), UINT64_C(0x0006F9FD6811BC4F)},
3809          {UINT64_C(0x000FEF3CB3BE843C), UINT64_C(0x0005B9E17892CE3D),
3810           UINT64_C(0x0005168AA844E7A9), UINT64_C(0x000600B2314595D6),
3811           UINT64_C(0x000477B0AFD0F4F6), UINT64_C(0x00053D8F4E812FCD),
3812           UINT64_C(0x00049909798B2B0F), UINT64_C(0x0000B0BD698B1D5E),
3813           UINT64_C(0x000009B704E143DF), UINT64_C(0x00043C8ABB658E21)}},
3814         {{UINT64_C(0x0009311B2D0959AA), UINT64_C(0x000408C67EBE4373),
3815           UINT64_C(0x0004708398C93D1C), UINT64_C(0x0005CEEB3BA4DF18),
3816           UINT64_C(0x00059663D0C68975), UINT64_C(0x000D6F23DB87CD7A),
3817           UINT64_C(0x0007FE452E537133), UINT64_C(0x000067D1FF579E76),
3818           UINT64_C(0x000678700E4625F3), UINT64_C(0x000512B5A1BD51F9)},
3819          {UINT64_C(0x000E28A401845C37), UINT64_C(0x0005334538459412),
3820           UINT64_C(0x000415EEBEE74BD9), UINT64_C(0x00014AFBBC227A22),
3821           UINT64_C(0x000214A015E7D9E7), UINT64_C(0x000139325A047952),
3822           UINT64_C(0x00029504D6930EAE), UINT64_C(0x0005D1BCA17818E8),
3823           UINT64_C(0x0002DD22238F7A8E), UINT64_C(0x0004F8349B5B0ED3)}},
3824         {{UINT64_C(0x00034C0AE7DDF681), UINT64_C(0x0007688311AB02D5),
3825           UINT64_C(0x0002EB0E8A6E1F1D), UINT64_C(0x0005FF8BCF6AAEB8),
3826           UINT64_C(0x0002CAD1E56904C4), UINT64_C(0x000FA16935A53E47),
3827           UINT64_C(0x00002881197DC9DD), UINT64_C(0x0005C925AAAF6DA8),
3828           UINT64_C(0x0006034B84FE7D23), UINT64_C(0x0005D6AE622F2E8E)},
3829          {UINT64_C(0x00065068FCC0ACD6), UINT64_C(0x000070B371C8C2DF),
3830           UINT64_C(0x0003DA0FCB5BFD98), UINT64_C(0x0005B4F3426521A8),
3831           UINT64_C(0x000689F815FC00FE), UINT64_C(0x0002E666CEEBA0E2),
3832           UINT64_C(0x0001E39832C0990E), UINT64_C(0x000574558F79940A),
3833           UINT64_C(0x00076D485F8B12D9), UINT64_C(0x000156F30CEE05D5)}},
3834         {{UINT64_C(0x0007D87AFB920C3D), UINT64_C(0x0002A9E23A083533),
3835           UINT64_C(0x0001543E5ED3B5D9), UINT64_C(0x0000B974928CFC56),
3836           UINT64_C(0x0002CF48F5FC7EE6), UINT64_C(0x000CE1C3C95C8368),
3837           UINT64_C(0x000333FD6C3D7D3F), UINT64_C(0x00044589E3099078),
3838           UINT64_C(0x0001F34D2E96B01D), UINT64_C(0x00017EAC450F370E)},
3839          {UINT64_C(0x0001B2713A497273), UINT64_C(0x00030B002E865A54),
3840           UINT64_C(0x000182D7C612D473), UINT64_C(0x00026397A5C46946),
3841           UINT64_C(0x000187CB68D83F11), UINT64_C(0x00077ADF60174A14),
3842           UINT64_C(0x0002BC33B9BC9135), UINT64_C(0x00036AD6BE31C9F9),
3843           UINT64_C(0x0001AC5D650B5D13), UINT64_C(0x0003F43A72E4D5E3)}},
3844         {{UINT64_C(0x000EF6C11E20B6EA), UINT64_C(0x0005905102070C81),
3845           UINT64_C(0x00024652608509D4), UINT64_C(0x000205B6D7FBB6A0),
3846           UINT64_C(0x00032589FE0677BD), UINT64_C(0x00085D8055C79F1F),
3847           UINT64_C(0x00004E43893D83E7), UINT64_C(0x00013EDB219CA7D3),
3848           UINT64_C(0x0007BF9B35859660), UINT64_C(0x0005DF7DCB816251)},
3849          {UINT64_C(0x0001EF55471D4356), UINT64_C(0x000540AF79AD9A97),
3850           UINT64_C(0x00060EB528DDF6D9), UINT64_C(0x000328BCC97D7964),
3851           UINT64_C(0x000706B99B540A23), UINT64_C(0x0007753141D6BF4E),
3852           UINT64_C(0x000256E51FDE35B1), UINT64_C(0x0005324363DCFDED),
3853           UINT64_C(0x0004E0FE9820F921), UINT64_C(0x000368ECFA81C767)}},
3854         {{UINT64_C(0x000AE3882AC0F8F0), UINT64_C(0x00023952C3BBED16),
3855           UINT64_C(0x0002208B0CCB771B), UINT64_C(0x00032499978C3D1E),
3856           UINT64_C(0x0000B08DEF9DE24A), UINT64_C(0x00014733B64362CB),
3857           UINT64_C(0x00044CEB44FBCD29), UINT64_C(0x00062081D15BFA79),
3858           UINT64_C(0x000612FF02BEFFD5), UINT64_C(0x00016207454BB815)},
3859          {UINT64_C(0x000E140447F99D22), UINT64_C(0x0004415B5CE2B9E2),
3860           UINT64_C(0x000497FECE7E53B5), UINT64_C(0x0003BBA75954C646),
3861           UINT64_C(0x00075267384AD185), UINT64_C(0x000BE077D1B86BB1),
3862           UINT64_C(0x0000A186FFAE61F0), UINT64_C(0x0007E20C811F4FAE),
3863           UINT64_C(0x0004F69AD42F56BF), UINT64_C(0x00006F7B76AEA2AF)}},
3864         {{UINT64_C(0x000BEDEC2A48D51F), UINT64_C(0x00040C00234C90E7),
3865           UINT64_C(0x0003BC8777CA6ECC), UINT64_C(0x0000D79570C70B74),
3866           UINT64_C(0x000157D50E130D10), UINT64_C(0x0003932A1F3A8446),
3867           UINT64_C(0x000520C248ECB88C), UINT64_C(0x00073A8FF16D17F0),
3868           UINT64_C(0x0006B070CCE2E887), UINT64_C(0x00006F6D81DF9ECD)},
3869          {UINT64_C(0x0007C3E53178DAC6), UINT64_C(0x0000802C2D20978A),
3870           UINT64_C(0x0005CC0D9E0C57C8), UINT64_C(0x0000A2DB47B4AA42),
3871           UINT64_C(0x0000D0C16DEAE477), UINT64_C(0x00030AECB867C0D4),
3872           UINT64_C(0x0006545EF5ADABE6), UINT64_C(0x0006207530AC956A),
3873           UINT64_C(0x0004B667DB2FBFC5), UINT64_C(0x0007231A93C94578)}},
3874         {{UINT64_C(0x0006EE7B285AAF99), UINT64_C(0x000184C97496A4CA),
3875           UINT64_C(0x0000E820762561C8), UINT64_C(0x0003069976AB441A),
3876           UINT64_C(0x0002F2D34AB64E3A), UINT64_C(0x0008DA8798C4984C),
3877           UINT64_C(0x00018E10EC261ED8), UINT64_C(0x0005572CDE59EF3B),
3878           UINT64_C(0x0005243583492A31), UINT64_C(0x000553EBD5BD4F76)},
3879          {UINT64_C(0x00003CD44541889B), UINT64_C(0x0000A15FD3B46A03),
3880           UINT64_C(0x0002445DDC01C49C), UINT64_C(0x0000FF7AB524990D),
3881           UINT64_C(0x00067DD44CEF1BC4), UINT64_C(0x00011A6A854E822E),
3882           UINT64_C(0x00020922345D9089), UINT64_C(0x00004F8BE8B1C52C),
3883           UINT64_C(0x000334AD5EA9B90D), UINT64_C(0x0004E5FE9C90028A)}},
3884         {{UINT64_C(0x000068C177996387), UINT64_C(0x000019B13C995F39),
3885           UINT64_C(0x00065BFEAB3691E1), UINT64_C(0x0003CEAA9FF90919),
3886           UINT64_C(0x00070CE531ADC5B6), UINT64_C(0x000E2CEBFDBB5331),
3887           UINT64_C(0x0000D202455F41D3), UINT64_C(0x000671180605FF9D),
3888           UINT64_C(0x00011AD81B928580), UINT64_C(0x00028FC16864D6F0)},
3889          {UINT64_C(0x000A61CD60DAEB8D), UINT64_C(0x000365700D8B7834),
3890           UINT64_C(0x00057BC9FDF724EE), UINT64_C(0x0001F7A1B9F925AF),
3891           UINT64_C(0x0007AA4AEFCA0359), UINT64_C(0x00034A27F50833A0),
3892           UINT64_C(0x0000ED7927DFB95D), UINT64_C(0x0007B8F116040DEA),
3893           UINT64_C(0x000117F98382AC39), UINT64_C(0x00020171F463D451)}},
3894         {{UINT64_C(0x00059264A9F49C09), UINT64_C(0x00044F0F00815067),
3895           UINT64_C(0x000151E20E3CE2F3), UINT64_C(0x0003CB10A0F261AA),
3896           UINT64_C(0x00019DAE7938AAE9), UINT64_C(0x000FA6C983FECF4D),
3897           UINT64_C(0x0000A4A7CA460046), UINT64_C(0x00069CD684FAA9A3),
3898           UINT64_C(0x0005962FD31973AC), UINT64_C(0x0001A315E3CE66B5)},
3899          {UINT64_C(0x0001EE33900F6430), UINT64_C(0x00064BE92C2C1CDD),
3900           UINT64_C(0x00011FCA5905D7B7), UINT64_C(0x0001664E4C15055D),
3901           UINT64_C(0x000124F50846C1DD), UINT64_C(0x0005A95B64C89DD6),
3902           UINT64_C(0x000635C7B470A25B), UINT64_C(0x00044199D92D72BC),
3903           UINT64_C(0x000317D8CC4D6593), UINT64_C(0x0004A1E8E879471E)}},
3904         {{UINT64_C(0x00070F53D415523F), UINT64_C(0x00008843EE85FF0C),
3905           UINT64_C(0x0001E10C523BB14C), UINT64_C(0x0004756E413F0932),
3906           UINT64_C(0x0003DE85A220DF46), UINT64_C(0x000E272251866340),
3907           UINT64_C(0x00008C97549ABE3D), UINT64_C(0x0003998C7C359F9D),
3908           UINT64_C(0x00018EC0C21FA45C), UINT64_C(0x0007A6A308E8E50C)},
3909          {UINT64_C(0x0002370A35276C0F), UINT64_C(0x0002729B26DBEA22),
3910           UINT64_C(0x0000D95854453918), UINT64_C(0x0000FEBB57C7378F),
3911           UINT64_C(0x0002E3F0D283969D), UINT64_C(0x000875CC00175050),
3912           UINT64_C(0x00050E7B3F62B00A), UINT64_C(0x0006E1A11C5C2BEA),
3913           UINT64_C(0x0003461785DC962F), UINT64_C(0x00006A29E20D62BD)}},
3914         {{UINT64_C(0x000537C77DAC5528), UINT64_C(0x00008C1BE92F83C6),
3915           UINT64_C(0x000611D61F939CC5), UINT64_C(0x00067A47050E3CE6),
3916           UINT64_C(0x0006FC68EE4297A6), UINT64_C(0x00076CC8299AC1F1),
3917           UINT64_C(0x000798EF7F4F028F), UINT64_C(0x0003D929F2A08907),
3918           UINT64_C(0x0007F626DB8181AE), UINT64_C(0x00038C7518A169E3)},
3919          {UINT64_C(0x0003C2C303DDCFAE), UINT64_C(0x0005A51351AFA1EB),
3920           UINT64_C(0x00033D8168A6178F), UINT64_C(0x0002BAE4B7BD921A),
3921           UINT64_C(0x00079BB0E6C13360), UINT64_C(0x0002FEC8223E6E6A),
3922           UINT64_C(0x00057EB3E02985A1), UINT64_C(0x0006A5F6F23E337D),
3923           UINT64_C(0x0000B51AD9A8DF7E), UINT64_C(0x0007C85F9D74F60E)}},
3924     },
3925     {
3926         {{UINT64_C(0x000373002424FC6B), UINT64_C(0x000265A533B8CF47),
3927           UINT64_C(0x00015EAD4A0AE37C), UINT64_C(0x00022EEEA45AEA56),
3928           UINT64_C(0x0005CA0E0AF3AAE5), UINT64_C(0x000216AD75D115B7),
3929           UINT64_C(0x0002B2885E63BCC1), UINT64_C(0x00001DEB58FCEA8C),
3930           UINT64_C(0x00050D28722A0E55), UINT64_C(0x00016C1C97050E66)},
3931          {UINT64_C(0x000BACBCDEEAFAB6), UINT64_C(0x000210A7858140DE),
3932           UINT64_C(0x0006E228E5AB34EE), UINT64_C(0x00038068E28B5065),
3933           UINT64_C(0x0002BDB4015D78E6), UINT64_C(0x000E7DF0E5A47C2C),
3934           UINT64_C(0x000091791C6E0564), UINT64_C(0x00047E8BA82005E7),
3935           UINT64_C(0x0002E2976DD2714D), UINT64_C(0x00029F182BE6C8A5)}},
3936         {{UINT64_C(0x000D83B94CB40D60), UINT64_C(0x000182EE55A47AB2),
3937           UINT64_C(0x0002A9A2A11F16C0), UINT64_C(0x00050CC737555D01),
3938           UINT64_C(0x000189A2DA48966B), UINT64_C(0x000A973CE36E61C1),
3939           UINT64_C(0x0004AF3A17E7233F), UINT64_C(0x00045CB6428ED4F1),
3940           UINT64_C(0x0001768287382675), UINT64_C(0x0000C6B22C10147C)},
3941          {UINT64_C(0x000401DB5A4C6A3E), UINT64_C(0x00023EE16B73E10C),
3942           UINT64_C(0x0002FEA5C8440A34), UINT64_C(0x00018E7129952281),
3943           UINT64_C(0x0001A31C2F9C5948), UINT64_C(0x0006685938AF9BD8),
3944           UINT64_C(0x0002F4C9F4721C11), UINT64_C(0x0006D88254B2B220),
3945           UINT64_C(0x00007BC40460348E), UINT64_C(0x0001773137A2404B)}},
3946         {{UINT64_C(0x000C6B4D1144D64A), UINT64_C(0x0006D90E0E79B31D),
3947           UINT64_C(0x00068DA0056E18D5), UINT64_C(0x0005340F7E02D070),
3948           UINT64_C(0x0001D5DF828F1380), UINT64_C(0x000636F195DCDB2B),
3949           UINT64_C(0x0000E7E7E014119C), UINT64_C(0x0007B435A9FBE2C0),
3950           UINT64_C(0x00076EB85EA1EFBB), UINT64_C(0x00022AA0A0C698A1)},
3951          {UINT64_C(0x000B9CB571CA9CF0), UINT64_C(0x0004B86CE22A5E6D),
3952           UINT64_C(0x0006E4462F85131B), UINT64_C(0x0002F155E75A2EED),
3953           UINT64_C(0x00063F764F24AC73), UINT64_C(0x000FFA94474DEF2E),
3954           UINT64_C(0x0004A1B60F2E7A47), UINT64_C(0x00063EE08D47164B),
3955           UINT64_C(0x0005ECDC6B2A7E48), UINT64_C(0x00071C6910C71824)}},
3956         {{UINT64_C(0x0007813E229F97CB), UINT64_C(0x00043ADE3B460997),
3957           UINT64_C(0x0005E8C96137590A), UINT64_C(0x000484EEC3127431),
3958           UINT64_C(0x0003A512D58F34EC), UINT64_C(0x000B47722D5ECC77),
3959           UINT64_C(0x00076E35AE2C410D), UINT64_C(0x000142A4F3860A59),
3960           UINT64_C(0x0005AD2423E3E88D), UINT64_C(0x00032A4A2C6376BD)},
3961          {UINT64_C(0x0009DB45FC2C575A), UINT64_C(0x0007CF11E987B02F),
3962           UINT64_C(0x000329AE7B16D79A), UINT64_C(0x0006BA1FDDBA003F),
3963           UINT64_C(0x00072F40C3D1D0E1), UINT64_C(0x000A2168272DEAEB),
3964           UINT64_C(0x00040B3BC5E98BE4), UINT64_C(0x0005426244ED0D94),
3965           UINT64_C(0x000610D19F336894), UINT64_C(0x0001EC5B0CD24773)}},
3966         {{UINT64_C(0x000126DC95FF47CB), UINT64_C(0x0006D821C64139FD),
3967           UINT64_C(0x00036D6653EA637C), UINT64_C(0x0005A97F942DD0FF),
3968           UINT64_C(0x00000318724B076A), UINT64_C(0x000ED3C1F9BBE805),
3969           UINT64_C(0x0002E76961D49FCA), UINT64_C(0x000759A40326E7D9),
3970           UINT64_C(0x0002641EFF076C29), UINT64_C(0x00006CA5347A2017)},
3971          {UINT64_C(0x00010765B5C69CBC), UINT64_C(0x0001782241147DAD),
3972           UINT64_C(0x000104E6A5297609), UINT64_C(0x0006495BFD0C4503),
3973           UINT64_C(0x0006B9D0D10CA297), UINT64_C(0x00034803A8F4A7B8),
3974           UINT64_C(0x00069B1A0E7F94AF), UINT64_C(0x00076E9131740435),
3975           UINT64_C(0x00079E1647538E00), UINT64_C(0x000381FB07DCC831)}},
3976         {{UINT64_C(0x0000623E19A529B0), UINT64_C(0x0002A1F34419A0BA),
3977           UINT64_C(0x0007450BB7C4CEEC), UINT64_C(0x000724D0766E901A),
3978           UINT64_C(0x0006FDCF27272EFB), UINT64_C(0x000E99E1E2856702),
3979           UINT64_C(0x0006AF1B534CF0E7), UINT64_C(0x00024538A8F87630),
3980           UINT64_C(0x0002DBFF74B7F80D), UINT64_C(0x0006689E4424A84F)},
3981          {UINT64_C(0x000A25CFDE9D7DDB), UINT64_C(0x00025B06D5477447),
3982           UINT64_C(0x00040103EF10F2A9), UINT64_C(0x0000589A19B6B3E8),
3983           UINT64_C(0x0001001736EC3E24), UINT64_C(0x000B77124673C96A),
3984           UINT64_C(0x00053B0645C3104F), UINT64_C(0x00066AEE9346C15C),
3985           UINT64_C(0x000336D117178F21), UINT64_C(0x0004C8732602283A)}},
3986         {{UINT64_C(0x000B072ABBE3BA75), UINT64_C(0x00015A08F89BDB09),
3987           UINT64_C(0x00034F423F9E09E0), UINT64_C(0x0001EF27A09841EF),
3988           UINT64_C(0x00065B203436FF75), UINT64_C(0x00018864D568B13F),
3989           UINT64_C(0x00069449D057FB4C), UINT64_C(0x000005868A6A3CD5),
3990           UINT64_C(0x0007932D29BB522B), UINT64_C(0x0001069BF48AA2B7)},
3991          {UINT64_C(0x000EE21FDCDDE7C7), UINT64_C(0x0006CAF6E905C045),
3992           UINT64_C(0x00031A72930255A6), UINT64_C(0x00076FCF5F4A6F74),
3993           UINT64_C(0x00001AA0517A0131), UINT64_C(0x00040DDFF2E11FAF),
3994           UINT64_C(0x0004A5512DFF3F02), UINT64_C(0x00055F08A9212CD2),
3995           UINT64_C(0x000519761093F184), UINT64_C(0x00027B6A1B2A1EF7)}},
3996         {{UINT64_C(0x000EA5C61B6DBC4E), UINT64_C(0x00051A4DCC7D6792),
3997           UINT64_C(0x0003357B7EAF7670), UINT64_C(0x000554E802A50353),
3998           UINT64_C(0x00072BF41E70B24F), UINT64_C(0x000049E5C8DA1177),
3999           UINT64_C(0x00037C5CB7FD16BA), UINT64_C(0x0003803F2EEEF15D),
4000           UINT64_C(0x000146D4B548675B), UINT64_C(0x0000E11A2717E6B2)},
4001          {UINT64_C(0x000C794070988A0A), UINT64_C(0x0002A32EF7BCEEB5),
4002           UINT64_C(0x00050C772349C586), UINT64_C(0x0000FA8C6654583D),
4003           UINT64_C(0x000385E544F610DF), UINT64_C(0x000C27780562C065),
4004           UINT64_C(0x0004D0E5952E5D7A), UINT64_C(0x00022358D60920AE),
4005           UINT64_C(0x000647D3BCA69083), UINT64_C(0x000663401832196F)}},
4006         {{UINT64_C(0x0002E9B7160E3961), UINT64_C(0x0000CFDD2754F2C2),
4007           UINT64_C(0x000737ED6627095B), UINT64_C(0x0000907EAC442E04),
4008           UINT64_C(0x0004BFDDFD6D0E23), UINT64_C(0x0009C97A7D587EEF),
4009           UINT64_C(0x000543F2822FAFB5), UINT64_C(0x0003FDF6AF5D7A19),
4010           UINT64_C(0x0000FC963721698D), UINT64_C(0x000179F21E6577FB)},
4011          {UINT64_C(0x00025DABF637CE7B), UINT64_C(0x0000DEF29AADAC3D),
4012           UINT64_C(0x0001737E91658123), UINT64_C(0x000249402C7B4BC4),
4013           UINT64_C(0x0001F964C1BA2B35), UINT64_C(0x0006547130478601),
4014           UINT64_C(0x00004A763BB9F26E), UINT64_C(0x0002DEE0532A3ABA),
4015           UINT64_C(0x0000FB73209B3189), UINT64_C(0x000323CB18309CBF)}},
4016         {{UINT64_C(0x000F430885B15B6B), UINT64_C(0x00075D059AEC5A1E),
4017           UINT64_C(0x0004453A277EFFCE), UINT64_C(0x00064F823D9E2950),
4018           UINT64_C(0x00073827A14B9299), UINT64_C(0x0001C133BA90B752),
4019           UINT64_C(0x0002FE7DB431EADF), UINT64_C(0x0007321007818326),
4020           UINT64_C(0x00071653A5874521), UINT64_C(0x000797A5565F102D)},
4021          {UINT64_C(0x00036CFD54EEA72C), UINT64_C(0x0000808016DA4E23),
4022           UINT64_C(0x0003D2134B084DFE), UINT64_C(0x00011B5581647A89),
4023           UINT64_C(0x00052FAD726D60BB), UINT64_C(0x000DCFDB5420868A),
4024           UINT64_C(0x000750548DD329FF), UINT64_C(0x00019FE6DA0749CC),
4025           UINT64_C(0x00005B85FA39A2C1), UINT64_C(0x00023AE3BBD89F61)}},
4026         {{UINT64_C(0x000CA8883C4EF58F), UINT64_C(0x0006E759199F54FA),
4027           UINT64_C(0x00055E8867F4288D), UINT64_C(0x000225E439FE7035),
4028           UINT64_C(0x00040EE9678BC4D1), UINT64_C(0x000E0C8FEC05A2E2),
4029           UINT64_C(0x000586D8C13D487A), UINT64_C(0x00008B4A7E530498),
4030           UINT64_C(0x0001E781B4E18C6D), UINT64_C(0x00017D763BE7083C)},
4031          {UINT64_C(0x000A451105CF54F0), UINT64_C(0x000637BF27522C26),
4032           UINT64_C(0x0006042AB901CB43), UINT64_C(0x0000F3A157D77CEC),
4033           UINT64_C(0x00040B5652E5D030), UINT64_C(0x0003F395A2C01F02),
4034           UINT64_C(0x00041B950FC573CA), UINT64_C(0x0007DED4FDDEA439),
4035           UINT64_C(0x00012CAC59609158), UINT64_C(0x0000EC63DC4F41D8)}},
4036         {{UINT64_C(0x000027B04D23C68B), UINT64_C(0x000525B4F2B59AFC),
4037           UINT64_C(0x0001473B3791B81E), UINT64_C(0x0004234680C59597),
4038           UINT64_C(0x00049B5B1E7B7404), UINT64_C(0x000CA846EE9B6288),
4039           UINT64_C(0x0002F4D705212A30), UINT64_C(0x000435199A6D217F),
4040           UINT64_C(0x0002C022FF19EE1F), UINT64_C(0x0003594F8F0758A9)},
4041          {UINT64_C(0x000968170931C47A), UINT64_C(0x000621AD96C9DEDE),
4042           UINT64_C(0x0001F40DB9806854), UINT64_C(0x0006535786069F3A),
4043           UINT64_C(0x0002BAAF09744048), UINT64_C(0x000CE1A02746C6D1),
4044           UINT64_C(0x000159007061AA2D), UINT64_C(0x000679FCA2D81FCD),
4045           UINT64_C(0x000418AC9FB46B4D), UINT64_C(0x000308BE060423D1)}},
4046         {{UINT64_C(0x0000C4AC87AF9AD9), UINT64_C(0x0000CDECE641A609),
4047           UINT64_C(0x0001E12CC58F8FCD), UINT64_C(0x000510A219809940),
4048           UINT64_C(0x0006DA7CEA8384F8), UINT64_C(0x000AB5F0694566E0),
4049           UINT64_C(0x0001CC9EE803A140), UINT64_C(0x0000F9FBB28BDD1E),
4050           UINT64_C(0x0007F4EFEB56B1DE), UINT64_C(0x000277916C4688BF)},
4051          {UINT64_C(0x000D23553900C111), UINT64_C(0x0002646A893D2545),
4052           UINT64_C(0x0003F85DED9F79E4), UINT64_C(0x0003D6EBC7956C87),
4053           UINT64_C(0x00042C8421E33668), UINT64_C(0x0000CE0FCEE92113),
4054           UINT64_C(0x00062F37FB71D455), UINT64_C(0x0002B5C2D8B8E0D9),
4055           UINT64_C(0x0001F89A7B791F03), UINT64_C(0x00026E0534AAFC55)}},
4056         {{UINT64_C(0x0002995D9382FB5B), UINT64_C(0x0007C05714B2BDCD),
4057           UINT64_C(0x00055EFDFFD811CA), UINT64_C(0x0000C43B6FA2E22F),
4058           UINT64_C(0x0003930FE770F72D), UINT64_C(0x00082F4073A9EB83),
4059           UINT64_C(0x00028C90A8534165), UINT64_C(0x00020C6D2C543EAE),
4060           UINT64_C(0x0003F98A8E8F71B7), UINT64_C(0x0007B8FB4D43C48C)},
4061          {UINT64_C(0x000C54F1DA463909), UINT64_C(0x000482EC99C805E1),
4062           UINT64_C(0x000301F27ED477A1), UINT64_C(0x0005CA99320599DA),
4063           UINT64_C(0x0003F84676223EB7), UINT64_C(0x00001D5F50BC87AC),
4064           UINT64_C(0x0006D360C6473C45), UINT64_C(0x00078FE24EB5EF6D),
4065           UINT64_C(0x0003E18E1D8C918F), UINT64_C(0x0000BAAA9526A788)}},
4066         {{UINT64_C(0x0003CFAC186FC15D), UINT64_C(0x0004079422F8115B),
4067           UINT64_C(0x00015745819F82E6), UINT64_C(0x0003618BCA6799CF),
4068           UINT64_C(0x000147DCBEB05016), UINT64_C(0x0008E01C4060F0AE),
4069           UINT64_C(0x0006DD9C9ABCADD5), UINT64_C(0x00055C9418FA0C56),
4070           UINT64_C(0x0004ADEDA517CF14), UINT64_C(0x0000A4AEB8D1A937)},
4071          {UINT64_C(0x0004727D18C04C1D), UINT64_C(0x000459FEB8D4258F),
4072           UINT64_C(0x000134BF4171D346), UINT64_C(0x000686442480B1AF),
4073           UINT64_C(0x000739A7BBB7AB37), UINT64_C(0x000F61BC7DC00473),
4074           UINT64_C(0x0003746597B948CE), UINT64_C(0x000125EAB46F1D2B),
4075           UINT64_C(0x000033F4805B72AE), UINT64_C(0x000584748C0B9409)}},
4076         {{UINT64_C(0x00092A49D3069003), UINT64_C(0x0005840D8AF17ED6),
4077           UINT64_C(0x000174B6F581B1E5), UINT64_C(0x000163189D301971),
4078           UINT64_C(0x0000018D239951ED), UINT64_C(0x0009B7C92C641D5C),
4079           UINT64_C(0x000289C88DD6E0A4), UINT64_C(0x0000CE7ED79D24F4),
4080           UINT64_C(0x0007F5A09563A4B9), UINT64_C(0x0007A4A25F6B4D5C)},
4081          {UINT64_C(0x00002966A02D81D0), UINT64_C(0x00079C7EA96452D3),
4082           UINT64_C(0x0007C34AB0AA795A), UINT64_C(0x00050A1B57CC0E57),
4083           UINT64_C(0x0007DE8829195BCB), UINT64_C(0x0006242A9B8D0EC5),
4084           UINT64_C(0x0005DD50FAD307D9), UINT64_C(0x0001B700B637CA0B),
4085           UINT64_C(0x0003455689EBE7C1), UINT64_C(0x0002782C47D2932F)}},
4086     }};
4087
4088 /*-
4089  * Q := 2P, both projective, Q and P same pointers OK
4090  * Autogenerated: op3/dbl_proj.op3
4091  * https://eprint.iacr.org/2015/1060 Alg 6
4092  * ASSERT: a = -3
4093  */
4094 static void point_double(pt_prj_t *Q, const pt_prj_t *P) {
4095     /* temporary variables */
4096     fe_t t0, t1, t2, t3, t4;
4097     /* constants */
4098     const limb_t *b = const_b;
4099     /* set pointers for legacy curve arith */
4100     const limb_t *X = P->X;
4101     const limb_t *Y = P->Y;
4102     const limb_t *Z = P->Z;
4103     limb_t *X3 = Q->X;
4104     limb_t *Y3 = Q->Y;
4105     limb_t *Z3 = Q->Z;
4106
4107     /* the curve arith formula */
4108     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(t0, X);
4109     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(t1, Y);
4110     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(t2, Z);
4111     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t3, X, Y);
4112     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t3, t3, t3);
4113     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t4, Y, Z);
4114     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Z3, X, Z);
4115     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Z3, Z3, Z3);
4116     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Y3, b, t2);
4117     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Y3, Y3, Z3);
4118     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(X3, Y3, Y3);
4119     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, X3, Y3);
4120     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(X3, t1, Y3);
4121     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, t1, Y3);
4122     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Y3, X3, Y3);
4123     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(X3, X3, t3);
4124     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t3, t2, t2);
4125     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t2, t2, t3);
4126     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Z3, b, Z3);
4127     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Z3, Z3, t2);
4128     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Z3, Z3, t0);
4129     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t3, Z3, Z3);
4130     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Z3, Z3, t3);
4131     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t3, t0, t0);
4132     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t0, t3, t0);
4133     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(t0, t0, t2);
4134     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t0, t0, Z3);
4135     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, Y3, t0);
4136     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t0, t4, t4);
4137     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Z3, t0, Z3);
4138     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(X3, X3, Z3);
4139     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Z3, t0, t1);
4140     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Z3, Z3, Z3);
4141     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Z3, Z3, Z3);
4142 }
4143
4144 /*-
4145  * out1 = (arg1 == 0) ? 0 : nz
4146  * NB: this is not a "mod p equiv" 0, but literal 0
4147  * NB: this is not a real Fiat function, just named that way for consistency.
4148  */
4149 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_nonzero(limb_t *out1,
4150                                                               const fe_t arg1) {
4151     limb_t x1 = 0;
4152     int i;
4153
4154     for (i = 0; i < LIMB_CNT; i++) x1 |= arg1[i];
4155     *out1 = x1;
4156 }
4157
4158 /*-
4159  * R := Q + P where R and Q are projective, P affine.
4160  * R and Q same pointers OK
4161  * R and P same pointers not OK
4162  * Autogenerated: op3/add_mixed.op3
4163  * https://eprint.iacr.org/2015/1060 Alg 5
4164  * ASSERT: a = -3
4165  */
4166 static void point_add_mixed(pt_prj_t *R, const pt_prj_t *Q, const pt_aff_t *P) {
4167     /* temporary variables */
4168     fe_t t0, t1, t2, t3, t4;
4169     /* constants */
4170     const limb_t *b = const_b;
4171     /* set pointers for legacy curve arith */
4172     const limb_t *X1 = Q->X;
4173     const limb_t *Y1 = Q->Y;
4174     const limb_t *Z1 = Q->Z;
4175     const limb_t *X2 = P->X;
4176     const limb_t *Y2 = P->Y;
4177     fe_t X3;
4178     fe_t Y3;
4179     fe_t Z3;
4180     limb_t nz;
4181
4182     /* check P for affine inf */
4183     fiat_id_tc26_gost_3410_2012_512_paramSetA_nonzero(&nz, P->Y);
4184
4185     /* the curve arith formula */
4186     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t0, X1, X2);
4187     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t1, Y1, Y2);
4188     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t3, X2, Y2);
4189     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t4, X1, Y1);
4190     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t3, t3, t4);
4191     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t4, t0, t1);
4192     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(t3, t3, t4);
4193     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t4, Y2, Z1);
4194     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t4, t4, Y1);
4195     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Y3, X2, Z1);
4196     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, Y3, X1);
4197     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Z3, b, Z1);
4198     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(X3, Y3, Z3);
4199     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Z3, X3, X3);
4200     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(X3, X3, Z3);
4201     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Z3, t1, X3);
4202     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(X3, t1, X3);
4203     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Y3, b, Y3);
4204     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t1, Z1, Z1);
4205     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t2, t1, Z1);
4206     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Y3, Y3, t2);
4207     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Y3, Y3, t0);
4208     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t1, Y3, Y3);
4209     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, t1, Y3);
4210     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t1, t0, t0);
4211     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t0, t1, t0);
4212     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(t0, t0, t2);
4213     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t1, t4, Y3);
4214     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t2, t0, Y3);
4215     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Y3, X3, Z3);
4216     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, Y3, t2);
4217     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(X3, t3, X3);
4218     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(X3, X3, t1);
4219     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Z3, t4, Z3);
4220     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t1, t3, t0);
4221     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Z3, Z3, t1);
4222
4223     /* if P is inf, throw all that away and take Q */
4224     fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(R->X, nz, Q->X, X3);
4225     fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(R->Y, nz, Q->Y, Y3);
4226     fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(R->Z, nz, Q->Z, Z3);
4227 }
4228
4229 /*-
4230  * R := Q + P all projective.
4231  * R and Q same pointers OK
4232  * R and P same pointers not OK
4233  * Autogenerated: op3/add_proj.op3
4234  * https://eprint.iacr.org/2015/1060 Alg 4
4235  * ASSERT: a = -3
4236  */
4237 static void point_add_proj(pt_prj_t *R, const pt_prj_t *Q, const pt_prj_t *P) {
4238     /* temporary variables */
4239     fe_t t0, t1, t2, t3, t4, t5;
4240     /* constants */
4241     const limb_t *b = const_b;
4242     /* set pointers for legacy curve arith */
4243     const limb_t *X1 = Q->X;
4244     const limb_t *Y1 = Q->Y;
4245     const limb_t *Z1 = Q->Z;
4246     const limb_t *X2 = P->X;
4247     const limb_t *Y2 = P->Y;
4248     const limb_t *Z2 = P->Z;
4249     limb_t *X3 = R->X;
4250     limb_t *Y3 = R->Y;
4251     limb_t *Z3 = R->Z;
4252
4253     /* the curve arith formula */
4254     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t0, X1, X2);
4255     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t1, Y1, Y2);
4256     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t2, Z1, Z2);
4257     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t3, X1, Y1);
4258     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t4, X2, Y2);
4259     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t3, t3, t4);
4260     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t4, t0, t1);
4261     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(t3, t3, t4);
4262     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t4, Y1, Z1);
4263     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t5, Y2, Z2);
4264     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t4, t4, t5);
4265     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t5, t1, t2);
4266     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(t4, t4, t5);
4267     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(X3, X1, Z1);
4268     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, X2, Z2);
4269     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(X3, X3, Y3);
4270     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, t0, t2);
4271     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Y3, X3, Y3);
4272     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Z3, b, t2);
4273     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(X3, Y3, Z3);
4274     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Z3, X3, X3);
4275     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(X3, X3, Z3);
4276     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Z3, t1, X3);
4277     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(X3, t1, X3);
4278     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Y3, b, Y3);
4279     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t1, t2, t2);
4280     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t2, t1, t2);
4281     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Y3, Y3, t2);
4282     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Y3, Y3, t0);
4283     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t1, Y3, Y3);
4284     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, t1, Y3);
4285     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t1, t0, t0);
4286     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t0, t1, t0);
4287     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(t0, t0, t2);
4288     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t1, t4, Y3);
4289     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t2, t0, Y3);
4290     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Y3, X3, Z3);
4291     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, Y3, t2);
4292     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(X3, t3, X3);
4293     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(X3, X3, t1);
4294     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Z3, t4, Z3);
4295     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t1, t3, t0);
4296     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Z3, Z3, t1);
4297 }
4298
4299 /* constants */
4300 #define RADIX 5
4301 #define DRADIX (1 << RADIX)
4302 #define DRADIX_WNAF ((DRADIX) << 1)
4303
4304 /*-
4305  * precomp for wnaf scalar multiplication:
4306  * precomp[0] = 1P
4307  * precomp[1] = 3P
4308  * precomp[2] = 5P
4309  * precomp[3] = 7P
4310  * precomp[4] = 9P
4311  * ...
4312  */
4313 static void precomp_wnaf(pt_prj_t precomp[DRADIX / 2], const pt_aff_t *P) {
4314     int i;
4315
4316     fe_copy(precomp[0].X, P->X);
4317     fe_copy(precomp[0].Y, P->Y);
4318     fe_copy(precomp[0].Z, const_one);
4319     point_double(&precomp[DRADIX / 2 - 1], &precomp[0]);
4320
4321     for (i = 1; i < DRADIX / 2; i++)
4322         point_add_proj(&precomp[i], &precomp[DRADIX / 2 - 1], &precomp[i - 1]);
4323 }
4324
4325 /* fetch a scalar bit */
4326 static int scalar_get_bit(const unsigned char in[64], int idx) {
4327     int widx, rshift;
4328
4329     widx = idx >> 3;
4330     rshift = idx & 0x7;
4331
4332     if (idx < 0 || widx >= 64) return 0;
4333
4334     return (in[widx] >> rshift) & 0x1;
4335 }
4336
4337 /*-
4338  * Compute "regular" wnaf representation of a scalar.
4339  * See "Exponent Recoding and Regular Exponentiation Algorithms",
4340  * Tunstall et al., AfricaCrypt 2009, Alg 6.
4341  * It forces an odd scalar and outputs digits in
4342  * {\pm 1, \pm 3, \pm 5, \pm 7, \pm 9, ...}
4343  * i.e. signed odd digits with _no zeroes_ -- that makes it "regular".
4344  */
4345 static void scalar_rwnaf(int8_t out[103], const unsigned char in[64]) {
4346     int i;
4347     int8_t window, d;
4348
4349     window = (in[0] & (DRADIX_WNAF - 1)) | 1;
4350     for (i = 0; i < 102; i++) {
4351         d = (window & (DRADIX_WNAF - 1)) - DRADIX;
4352         out[i] = d;
4353         window = (window - d) >> RADIX;
4354         window += scalar_get_bit(in, (i + 1) * RADIX + 1) << 1;
4355         window += scalar_get_bit(in, (i + 1) * RADIX + 2) << 2;
4356         window += scalar_get_bit(in, (i + 1) * RADIX + 3) << 3;
4357         window += scalar_get_bit(in, (i + 1) * RADIX + 4) << 4;
4358         window += scalar_get_bit(in, (i + 1) * RADIX + 5) << 5;
4359     }
4360     out[i] = window;
4361 }
4362
4363 /*-
4364  * Compute "textbook" wnaf representation of a scalar.
4365  * NB: not constant time
4366  */
4367 static void scalar_wnaf(int8_t out[513], const unsigned char in[64]) {
4368     int i;
4369     int8_t window, d;
4370
4371     window = in[0] & (DRADIX_WNAF - 1);
4372     for (i = 0; i < 513; i++) {
4373         d = 0;
4374         if ((window & 1) && ((d = window & (DRADIX_WNAF - 1)) & DRADIX))
4375             d -= DRADIX_WNAF;
4376         out[i] = d;
4377         window = (window - d) >> 1;
4378         window += scalar_get_bit(in, i + 1 + RADIX) << RADIX;
4379     }
4380 }
4381
4382 /*-
4383  * Simultaneous scalar multiplication: interleaved "textbook" wnaf.
4384  * NB: not constant time
4385  */
4386 static void var_smul_wnaf_two(pt_aff_t *out, const unsigned char a[64],
4387                               const unsigned char b[64], const pt_aff_t *P) {
4388     int i, d, is_neg, is_inf = 1, flipped = 0;
4389     int8_t anaf[513] = {0};
4390     int8_t bnaf[513] = {0};
4391     pt_prj_t Q = {0};
4392     pt_prj_t precomp[DRADIX / 2];
4393
4394     precomp_wnaf(precomp, P);
4395     scalar_wnaf(anaf, a);
4396     scalar_wnaf(bnaf, b);
4397
4398     for (i = 512; i >= 0; i--) {
4399         if (!is_inf) point_double(&Q, &Q);
4400         if ((d = bnaf[i])) {
4401             if ((is_neg = d < 0) != flipped) {
4402                 fiat_id_tc26_gost_3410_2012_512_paramSetA_opp(Q.Y, Q.Y);
4403                 flipped ^= 1;
4404             }
4405             d = (is_neg) ? (-d - 1) >> 1 : (d - 1) >> 1;
4406             if (is_inf) {
4407                 /* initialize accumulator */
4408                 fe_copy(Q.X, &precomp[d].X);
4409                 fe_copy(Q.Y, &precomp[d].Y);
4410                 fe_copy(Q.Z, &precomp[d].Z);
4411                 is_inf = 0;
4412             } else
4413                 point_add_proj(&Q, &Q, &precomp[d]);
4414         }
4415         if ((d = anaf[i])) {
4416             if ((is_neg = d < 0) != flipped) {
4417                 fiat_id_tc26_gost_3410_2012_512_paramSetA_opp(Q.Y, Q.Y);
4418                 flipped ^= 1;
4419             }
4420             d = (is_neg) ? (-d - 1) >> 1 : (d - 1) >> 1;
4421             if (is_inf) {
4422                 /* initialize accumulator */
4423                 fe_copy(Q.X, &lut_cmb[0][d].X);
4424                 fe_copy(Q.Y, &lut_cmb[0][d].Y);
4425                 fe_copy(Q.Z, const_one);
4426                 is_inf = 0;
4427             } else
4428                 point_add_mixed(&Q, &Q, &lut_cmb[0][d]);
4429         }
4430     }
4431
4432     if (is_inf) {
4433         /* initialize accumulator to inf: all-zero scalars */
4434         fe_set_zero(Q.X);
4435         fe_copy(Q.Y, const_one);
4436         fe_set_zero(Q.Z);
4437     }
4438
4439     if (flipped) {
4440         /* correct sign */
4441         fiat_id_tc26_gost_3410_2012_512_paramSetA_opp(Q.Y, Q.Y);
4442     }
4443
4444     /* convert to affine -- NB depends on coordinate system */
4445     fiat_id_tc26_gost_3410_2012_512_paramSetA_inv(Q.Z, Q.Z);
4446     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(out->X, Q.X, Q.Z);
4447     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(out->Y, Q.Y, Q.Z);
4448 }
4449
4450 /*-
4451  * Variable point scalar multiplication with "regular" wnaf.
4452  */
4453 static void var_smul_rwnaf(pt_aff_t *out, const unsigned char scalar[64],
4454                            const pt_aff_t *P) {
4455     int i, j, d, diff, is_neg;
4456     int8_t rnaf[103] = {0};
4457     pt_prj_t Q = {0}, lut = {0};
4458     pt_prj_t precomp[DRADIX / 2];
4459
4460     precomp_wnaf(precomp, P);
4461     scalar_rwnaf(rnaf, scalar);
4462
4463 #if defined(_MSC_VER)
4464     /* result still unsigned: yes we know */
4465 #pragma warning(push)
4466 #pragma warning(disable : 4146)
4467 #endif
4468
4469     /* initialize accumulator to high digit */
4470     d = (rnaf[102] - 1) >> 1;
4471     for (j = 0; j < DRADIX / 2; j++) {
4472         diff = (1 - (-(d ^ j) >> (8 * sizeof(int) - 1))) & 1;
4473         fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(Q.X, diff, Q.X,
4474                                                             precomp[j].X);
4475         fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(Q.Y, diff, Q.Y,
4476                                                             precomp[j].Y);
4477         fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(Q.Z, diff, Q.Z,
4478                                                             precomp[j].Z);
4479     }
4480
4481     for (i = 101; i >= 0; i--) {
4482         for (j = 0; j < RADIX; j++) point_double(&Q, &Q);
4483         d = rnaf[i];
4484         /* is_neg = (d < 0) ? 1 : 0 */
4485         is_neg = (d >> (8 * sizeof(int) - 1)) & 1;
4486         /* d = abs(d) */
4487         d = (d ^ -is_neg) + is_neg;
4488         d = (d - 1) >> 1;
4489         for (j = 0; j < DRADIX / 2; j++) {
4490             diff = (1 - (-(d ^ j) >> (8 * sizeof(int) - 1))) & 1;
4491             fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(
4492                 lut.X, diff, lut.X, precomp[j].X);
4493             fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(
4494                 lut.Y, diff, lut.Y, precomp[j].Y);
4495             fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(
4496                 lut.Z, diff, lut.Z, precomp[j].Z);
4497         }
4498         /* negate lut point if digit is negative */
4499         fiat_id_tc26_gost_3410_2012_512_paramSetA_opp(out->Y, lut.Y);
4500         fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(lut.Y, is_neg,
4501                                                             lut.Y, out->Y);
4502         point_add_proj(&Q, &Q, &lut);
4503     }
4504
4505 #if defined(_MSC_VER)
4506 #pragma warning(pop)
4507 #endif
4508
4509     /* conditionally subtract P if the scalar was even */
4510     fe_copy(lut.X, precomp[0].X);
4511     fiat_id_tc26_gost_3410_2012_512_paramSetA_opp(lut.Y, precomp[0].Y);
4512     fe_copy(lut.Z, precomp[0].Z);
4513     point_add_proj(&lut, &lut, &Q);
4514     fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(Q.X, scalar[0] & 1,
4515                                                         lut.X, Q.X);
4516     fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(Q.Y, scalar[0] & 1,
4517                                                         lut.Y, Q.Y);
4518     fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(Q.Z, scalar[0] & 1,
4519                                                         lut.Z, Q.Z);
4520
4521     /* convert to affine -- NB depends on coordinate system */
4522     fiat_id_tc26_gost_3410_2012_512_paramSetA_inv(Q.Z, Q.Z);
4523     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(out->X, Q.X, Q.Z);
4524     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(out->Y, Q.Y, Q.Z);
4525 }
4526
4527 /*-
4528  * Fixed scalar multiplication: comb with interleaving.
4529  */
4530 static void fixed_smul_cmb(pt_aff_t *out, const unsigned char scalar[64]) {
4531     int i, j, k, d, diff, is_neg = 0;
4532     int8_t rnaf[103] = {0};
4533     pt_prj_t Q = {0}, R = {0};
4534     pt_aff_t lut = {0};
4535
4536     scalar_rwnaf(rnaf, scalar);
4537
4538     /* initalize accumulator to inf */
4539     fe_set_zero(Q.X);
4540     fe_copy(Q.Y, const_one);
4541     fe_set_zero(Q.Z);
4542
4543 #if defined(_MSC_VER)
4544     /* result still unsigned: yes we know */
4545 #pragma warning(push)
4546 #pragma warning(disable : 4146)
4547 #endif
4548
4549     for (i = 9; i >= 0; i--) {
4550         for (j = 0; i != 9 && j < RADIX; j++) point_double(&Q, &Q);
4551         for (j = 0; j < 12; j++) {
4552             if (j * 10 + i > 102) continue;
4553             d = rnaf[j * 10 + i];
4554             /* is_neg = (d < 0) ? 1 : 0 */
4555             is_neg = (d >> (8 * sizeof(int) - 1)) & 1;
4556             /* d = abs(d) */
4557             d = (d ^ -is_neg) + is_neg;
4558             d = (d - 1) >> 1;
4559             for (k = 0; k < DRADIX / 2; k++) {
4560                 diff = (1 - (-(d ^ k) >> (8 * sizeof(int) - 1))) & 1;
4561                 fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(
4562                     lut.X, diff, lut.X, lut_cmb[j][k].X);
4563                 fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(
4564                     lut.Y, diff, lut.Y, lut_cmb[j][k].Y);
4565             }
4566             /* negate lut point if digit is negative */
4567             fiat_id_tc26_gost_3410_2012_512_paramSetA_opp(out->Y, lut.Y);
4568             fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(lut.Y, is_neg,
4569                                                                 lut.Y, out->Y);
4570             point_add_mixed(&Q, &Q, &lut);
4571         }
4572     }
4573
4574 #if defined(_MSC_VER)
4575 #pragma warning(pop)
4576 #endif
4577
4578     /* conditionally subtract P if the scalar was even */
4579     fe_copy(lut.X, lut_cmb[0][0].X);
4580     fiat_id_tc26_gost_3410_2012_512_paramSetA_opp(lut.Y, lut_cmb[0][0].Y);
4581     point_add_mixed(&R, &Q, &lut);
4582     fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(Q.X, scalar[0] & 1, R.X,
4583                                                         Q.X);
4584     fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(Q.Y, scalar[0] & 1, R.Y,
4585                                                         Q.Y);
4586     fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(Q.Z, scalar[0] & 1, R.Z,
4587                                                         Q.Z);
4588
4589     /* convert to affine -- NB depends on coordinate system */
4590     fiat_id_tc26_gost_3410_2012_512_paramSetA_inv(Q.Z, Q.Z);
4591     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(out->X, Q.X, Q.Z);
4592     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(out->Y, Q.Y, Q.Z);
4593 }
4594
4595 /*-
4596  * Wrapper: simultaneous scalar mutiplication.
4597  * outx, outy := a * G + b * P
4598  * where P = (inx, iny).
4599  * Everything is LE byte ordering.
4600  */
4601 static void point_mul_two(unsigned char outx[64], unsigned char outy[64],
4602                           const unsigned char a[64], const unsigned char b[64],
4603                           const unsigned char inx[64],
4604                           const unsigned char iny[64]) {
4605     pt_aff_t P;
4606
4607     fiat_id_tc26_gost_3410_2012_512_paramSetA_from_bytes(P.X, inx);
4608     fiat_id_tc26_gost_3410_2012_512_paramSetA_from_bytes(P.Y, iny);
4609     /* simultaneous scalar multiplication */
4610     var_smul_wnaf_two(&P, a, b, &P);
4611
4612     fiat_id_tc26_gost_3410_2012_512_paramSetA_to_bytes(outx, P.X);
4613     fiat_id_tc26_gost_3410_2012_512_paramSetA_to_bytes(outy, P.Y);
4614 }
4615
4616 /*-
4617  * Wrapper: fixed scalar mutiplication.
4618  * outx, outy := scalar * G
4619  * Everything is LE byte ordering.
4620  */
4621 static void point_mul_g(unsigned char outx[64], unsigned char outy[64],
4622                         const unsigned char scalar[64]) {
4623     pt_aff_t P;
4624
4625     /* fixed scmul function */
4626     fixed_smul_cmb(&P, scalar);
4627     fiat_id_tc26_gost_3410_2012_512_paramSetA_to_bytes(outx, P.X);
4628     fiat_id_tc26_gost_3410_2012_512_paramSetA_to_bytes(outy, P.Y);
4629 }
4630
4631 /*-
4632  * Wrapper: variable point scalar mutiplication.
4633  * outx, outy := scalar * P
4634  * where P = (inx, iny).
4635  * Everything is LE byte ordering.
4636  */
4637 static void point_mul(unsigned char outx[64], unsigned char outy[64],
4638                       const unsigned char scalar[64],
4639                       const unsigned char inx[64],
4640                       const unsigned char iny[64]) {
4641     pt_aff_t P;
4642
4643     fiat_id_tc26_gost_3410_2012_512_paramSetA_from_bytes(P.X, inx);
4644     fiat_id_tc26_gost_3410_2012_512_paramSetA_from_bytes(P.Y, iny);
4645     /* var scmul function */
4646     var_smul_rwnaf(&P, scalar, &P);
4647     fiat_id_tc26_gost_3410_2012_512_paramSetA_to_bytes(outx, P.X);
4648     fiat_id_tc26_gost_3410_2012_512_paramSetA_to_bytes(outy, P.Y);
4649 }
4650
4651
4652 #include <openssl/ec.h>
4653
4654 /* the zero field element */
4655 static const unsigned char const_zb[64] = {0};
4656
4657 /*-
4658  * An OpenSSL wrapper for simultaneous scalar multiplication.
4659  * r := n * G + m * q
4660  */
4661     int
4662     point_mul_two_id_tc26_gost_3410_2012_512_paramSetA(
4663         const EC_GROUP *group, EC_POINT *r, const BIGNUM *n, const EC_POINT *q,
4664         const BIGNUM *m, BN_CTX *ctx) {
4665     int ret = 0;
4666     unsigned char b_x[64];
4667     unsigned char b_y[64];
4668     unsigned char b_n[64];
4669     unsigned char b_m[64];
4670     BIGNUM *x = NULL, *y = NULL;
4671
4672     BN_CTX_start(ctx);
4673     x = BN_CTX_get(ctx);
4674     if ((y = BN_CTX_get(ctx)) == NULL
4675         /* pull out coords as bytes */
4676         || !EC_POINT_get_affine_coordinates(group, q, x, y, ctx) ||
4677         BN_bn2lebinpad(x, b_x, 64) != 64 || BN_bn2lebinpad(y, b_y, 64) != 64 ||
4678         BN_bn2lebinpad(n, b_n, 64) != 64 || BN_bn2lebinpad(m, b_m, 64) != 64)
4679         goto err;
4680     /* do the simultaneous scalar multiplication */
4681     point_mul_two(b_x, b_y, b_n, b_m, b_x, b_y);
4682     /* check for infinity */
4683     if (CRYPTO_memcmp(const_zb, b_x, 64) == 0 &&
4684         CRYPTO_memcmp(const_zb, b_y, 64) == 0) {
4685         if (!EC_POINT_set_to_infinity(group, r)) goto err;
4686     } else {
4687         /* otherwise, pack the bytes into the result */
4688         if (BN_lebin2bn(b_x, 64, x) == NULL ||
4689             BN_lebin2bn(b_y, 64, y) == NULL ||
4690             !EC_POINT_set_affine_coordinates(group, r, x, y, ctx))
4691             goto err;
4692     }
4693     ret = 1;
4694 err:
4695     BN_CTX_end(ctx);
4696     return ret;
4697 }
4698
4699 /*-
4700  * An OpenSSL wrapper for variable point scalar multiplication.
4701  * r := m * q
4702  */
4703     int
4704     point_mul_id_tc26_gost_3410_2012_512_paramSetA(const EC_GROUP *group,
4705                                                    EC_POINT *r,
4706                                                    const EC_POINT *q,
4707                                                    const BIGNUM *m,
4708                                                    BN_CTX *ctx) {
4709     int ret = 0;
4710     unsigned char b_x[64];
4711     unsigned char b_y[64];
4712     unsigned char b_m[64];
4713     BIGNUM *x = NULL, *y = NULL;
4714
4715     BN_CTX_start(ctx);
4716     x = BN_CTX_get(ctx);
4717     if ((y = BN_CTX_get(ctx)) == NULL
4718         /* pull out coords as bytes */
4719         || !EC_POINT_get_affine_coordinates(group, q, x, y, ctx) ||
4720         BN_bn2lebinpad(x, b_x, 64) != 64 || BN_bn2lebinpad(y, b_y, 64) != 64 ||
4721         BN_bn2lebinpad(m, b_m, 64) != 64)
4722         goto err;
4723     /* do the variable scalar multiplication */
4724     point_mul(b_x, b_y, b_m, b_x, b_y);
4725     /* check for infinity */
4726     if (CRYPTO_memcmp(const_zb, b_x, 64) == 0 &&
4727         CRYPTO_memcmp(const_zb, b_y, 64) == 0) {
4728         if (!EC_POINT_set_to_infinity(group, r)) goto err;
4729     } else {
4730         /* otherwise, pack the bytes into the result */
4731         if (BN_lebin2bn(b_x, 64, x) == NULL ||
4732             BN_lebin2bn(b_y, 64, y) == NULL ||
4733             !EC_POINT_set_affine_coordinates(group, r, x, y, ctx))
4734             goto err;
4735     }
4736     ret = 1;
4737 err:
4738     BN_CTX_end(ctx);
4739     return ret;
4740 }
4741
4742 /*-
4743  * An OpenSSL wrapper for fixed scalar multiplication.
4744  * r := n * G
4745  */
4746     int
4747     point_mul_g_id_tc26_gost_3410_2012_512_paramSetA(const EC_GROUP *group,
4748                                                      EC_POINT *r,
4749                                                      const BIGNUM *n,
4750                                                      BN_CTX *ctx) {
4751     int ret = 0;
4752     unsigned char b_x[64];
4753     unsigned char b_y[64];
4754     unsigned char b_n[64];
4755     BIGNUM *x = NULL, *y = NULL;
4756
4757     BN_CTX_start(ctx);
4758     x = BN_CTX_get(ctx);
4759     if ((y = BN_CTX_get(ctx)) == NULL || BN_bn2lebinpad(n, b_n, 64) != 64)
4760         goto err;
4761     /* do the fixed scalar multiplication */
4762     point_mul_g(b_x, b_y, b_n);
4763     /* check for infinity */
4764     if (CRYPTO_memcmp(const_zb, b_x, 64) == 0 &&
4765         CRYPTO_memcmp(const_zb, b_y, 64) == 0) {
4766         if (!EC_POINT_set_to_infinity(group, r)) goto err;
4767     } else {
4768         /* otherwise, pack the bytes into the result */
4769         if (BN_lebin2bn(b_x, 64, x) == NULL ||
4770             BN_lebin2bn(b_y, 64, y) == NULL ||
4771             !EC_POINT_set_affine_coordinates(group, r, x, y, ctx))
4772             goto err;
4773     }
4774     ret = 1;
4775 err:
4776     BN_CTX_end(ctx);
4777     return ret;
4778 }
4779
4780
4781
4782 #else /* __SIZEOF_INT128__ */
4783
4784 #include <stdint.h>
4785 #include <string.h>
4786 #define LIMB_BITS 32
4787 #define LIMB_CNT 23
4788 /* Field elements */
4789 typedef uint32_t fe_t[LIMB_CNT];
4790 typedef uint32_t limb_t;
4791
4792 #ifdef OPENSSL_NO_ASM
4793 #define FIAT_ID_TC26_GOST_3410_2012_512_PARAMSETA_NO_ASM
4794 #endif
4795
4796 #define fe_copy(d, s) memcpy(d, s, sizeof(fe_t))
4797 #define fe_set_zero(d) memset(d, 0, sizeof(fe_t))
4798
4799 #define fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(c, a, b) \
4800     fiat_id_tc26_gost_3410_2012_512_paramSetA_add(c, a, b);          \
4801     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry(c, c)
4802 #define fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(c, a, b) \
4803     fiat_id_tc26_gost_3410_2012_512_paramSetA_sub(c, a, b);          \
4804     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry(c, c)
4805
4806 /* Projective points */
4807 typedef struct {
4808     fe_t X;
4809     fe_t Y;
4810     fe_t Z;
4811 } pt_prj_t;
4812
4813 /* Affine points */
4814 typedef struct {
4815     fe_t X;
4816     fe_t Y;
4817 } pt_aff_t;
4818
4819 /* BEGIN verbatim fiat code https://github.com/mit-plv/fiat-crypto */
4820 /*-
4821  * MIT License
4822  *
4823  * Copyright (c) 2020 the fiat-crypto authors (see the AUTHORS file)
4824  *
4825  * Permission is hereby granted, free of charge, to any person obtaining a copy
4826  * of this software and associated documentation files (the "Software"), to deal
4827  * in the Software without restriction, including without limitation the rights
4828  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
4829  * copies of the Software, and to permit persons to whom the Software is
4830  * furnished to do so, subject to the following conditions:
4831  *
4832  * The above copyright notice and this permission notice shall be included in
4833  * all copies or substantial portions of the Software.
4834  *
4835  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
4836  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
4837  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
4838  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
4839  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
4840  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
4841  * SOFTWARE.
4842  */
4843
4844 /* Autogenerated: unsaturated_solinas --static --use-value-barrier id_tc26_gost_3410_2012_512_paramSetA 32 '(auto)' '2^512 - 569' */
4845 /* curve description: id_tc26_gost_3410_2012_512_paramSetA */
4846 /* machine_wordsize = 32 (from "32") */
4847 /* requested operations: (all) */
4848 /* n = 23 (from "(auto)") */
4849 /* s-c = 2^512 - [(1, 569)] (from "2^512 - 569") */
4850 /* tight_bounds_multiplier = 1 (from "") */
4851 /*  */
4852 /* Computed values: */
4853 /* carry_chain = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 0, 1] */
4854 /* eval z = z[0] + (z[1] << 23) + (z[2] << 45) + (z[3] << 67) + (z[4] << 90) + (z[5] << 112) + (z[6] << 134) + (z[7] << 156) + (z[8] << 179) + (z[9] << 201) + (z[10] << 223) + (z[11] << 245) + (z[12] << 0x10c) + (z[13] << 0x122) + (z[14] << 0x138) + (z[15] << 0x14e) + (z[16] << 0x165) + (z[17] << 0x17b) + (z[18] << 0x191) + (z[19] << 0x1a7) + (z[20] << 0x1be) + (z[21] << 0x1d4) + (z[22] << 0x1ea) */
4855 /* bytes_eval z = z[0] + (z[1] << 8) + (z[2] << 16) + (z[3] << 24) + (z[4] << 32) + (z[5] << 40) + (z[6] << 48) + (z[7] << 56) + (z[8] << 64) + (z[9] << 72) + (z[10] << 80) + (z[11] << 88) + (z[12] << 96) + (z[13] << 104) + (z[14] << 112) + (z[15] << 120) + (z[16] << 128) + (z[17] << 136) + (z[18] << 144) + (z[19] << 152) + (z[20] << 160) + (z[21] << 168) + (z[22] << 176) + (z[23] << 184) + (z[24] << 192) + (z[25] << 200) + (z[26] << 208) + (z[27] << 216) + (z[28] << 224) + (z[29] << 232) + (z[30] << 240) + (z[31] << 248) + (z[32] << 256) + (z[33] << 0x108) + (z[34] << 0x110) + (z[35] << 0x118) + (z[36] << 0x120) + (z[37] << 0x128) + (z[38] << 0x130) + (z[39] << 0x138) + (z[40] << 0x140) + (z[41] << 0x148) + (z[42] << 0x150) + (z[43] << 0x158) + (z[44] << 0x160) + (z[45] << 0x168) + (z[46] << 0x170) + (z[47] << 0x178) + (z[48] << 0x180) + (z[49] << 0x188) + (z[50] << 0x190) + (z[51] << 0x198) + (z[52] << 0x1a0) + (z[53] << 0x1a8) + (z[54] << 0x1b0) + (z[55] << 0x1b8) + (z[56] << 0x1c0) + (z[57] << 0x1c8) + (z[58] << 0x1d0) + (z[59] << 0x1d8) + (z[60] << 0x1e0) + (z[61] << 0x1e8) + (z[62] << 0x1f0) + (z[63] << 0x1f8) */
4856 /* balance = [0xfffb8e, 0x7ffffe, 0x7ffffe, 0xfffffe, 0x7ffffe, 0x7ffffe, 0x7ffffe, 0xfffffe, 0x7ffffe, 0x7ffffe, 0x7ffffe, 0xfffffe, 0x7ffffe, 0x7ffffe, 0x7ffffe, 0xfffffe, 0x7ffffe, 0x7ffffe, 0x7ffffe, 0xfffffe, 0x7ffffe, 0x7ffffe, 0x7ffffe] */
4857
4858 #include <stdint.h>
4859 typedef unsigned char fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1;
4860 typedef signed char fiat_id_tc26_gost_3410_2012_512_paramSetA_int1;
4861
4862 #if (-1 & 3) != 3
4863 #error "This code only works on a two's complement system"
4864 #endif
4865
4866 #if !defined(FIAT_ID_TC26_GOST_3410_2012_512_PARAMSETA_NO_ASM) && \
4867     (defined(__GNUC__) || defined(__clang__))
4868 static __inline__ uint32_t
4869 fiat_id_tc26_gost_3410_2012_512_paramSetA_value_barrier_u32(uint32_t a) {
4870     __asm__("" : "+r"(a) : /* no inputs */);
4871     return a;
4872 }
4873 #else
4874 #define fiat_id_tc26_gost_3410_2012_512_paramSetA_value_barrier_u32(x) (x)
4875 #endif
4876
4877 /*
4878  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22 is an addition with carry.
4879  * Postconditions:
4880  *   out1 = (arg1 + arg2 + arg3) mod 2^22
4881  *   out2 = ⌊(arg1 + arg2 + arg3) / 2^22⌋
4882  *
4883  * Input Bounds:
4884  *   arg1: [0x0 ~> 0x1]
4885  *   arg2: [0x0 ~> 0x3fffff]
4886  *   arg3: [0x0 ~> 0x3fffff]
4887  * Output Bounds:
4888  *   out1: [0x0 ~> 0x3fffff]
4889  *   out2: [0x0 ~> 0x1]
4890  */
4891 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22(
4892     uint32_t *out1, fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 *out2,
4893     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 arg1, uint32_t arg2,
4894     uint32_t arg3) {
4895     uint32_t x1;
4896     uint32_t x2;
4897     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x3;
4898     x1 = ((arg1 + arg2) + arg3);
4899     x2 = (x1 & UINT32_C(0x3fffff));
4900     x3 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x1 >> 22);
4901     *out1 = x2;
4902     *out2 = x3;
4903 }
4904
4905 /*
4906  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22 is a subtraction with borrow.
4907  * Postconditions:
4908  *   out1 = (-arg1 + arg2 + -arg3) mod 2^22
4909  *   out2 = -⌊(-arg1 + arg2 + -arg3) / 2^22⌋
4910  *
4911  * Input Bounds:
4912  *   arg1: [0x0 ~> 0x1]
4913  *   arg2: [0x0 ~> 0x3fffff]
4914  *   arg3: [0x0 ~> 0x3fffff]
4915  * Output Bounds:
4916  *   out1: [0x0 ~> 0x3fffff]
4917  *   out2: [0x0 ~> 0x1]
4918  */
4919 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22(
4920     uint32_t *out1, fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 *out2,
4921     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 arg1, uint32_t arg2,
4922     uint32_t arg3) {
4923     int32_t x1;
4924     fiat_id_tc26_gost_3410_2012_512_paramSetA_int1 x2;
4925     uint32_t x3;
4926     x1 = ((int32_t)(arg2 - arg1) - (int32_t)arg3);
4927     x2 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_int1)(x1 >> 22);
4928     x3 = (x1 & UINT32_C(0x3fffff));
4929     *out1 = x3;
4930     *out2 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(0x0 - x2);
4931 }
4932
4933 /*
4934  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u23 is an addition with carry.
4935  * Postconditions:
4936  *   out1 = (arg1 + arg2 + arg3) mod 2^23
4937  *   out2 = ⌊(arg1 + arg2 + arg3) / 2^23⌋
4938  *
4939  * Input Bounds:
4940  *   arg1: [0x0 ~> 0x1]
4941  *   arg2: [0x0 ~> 0x7fffff]
4942  *   arg3: [0x0 ~> 0x7fffff]
4943  * Output Bounds:
4944  *   out1: [0x0 ~> 0x7fffff]
4945  *   out2: [0x0 ~> 0x1]
4946  */
4947 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u23(
4948     uint32_t *out1, fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 *out2,
4949     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 arg1, uint32_t arg2,
4950     uint32_t arg3) {
4951     uint32_t x1;
4952     uint32_t x2;
4953     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x3;
4954     x1 = ((arg1 + arg2) + arg3);
4955     x2 = (x1 & UINT32_C(0x7fffff));
4956     x3 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x1 >> 23);
4957     *out1 = x2;
4958     *out2 = x3;
4959 }
4960
4961 /*
4962  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u23 is a subtraction with borrow.
4963  * Postconditions:
4964  *   out1 = (-arg1 + arg2 + -arg3) mod 2^23
4965  *   out2 = -⌊(-arg1 + arg2 + -arg3) / 2^23⌋
4966  *
4967  * Input Bounds:
4968  *   arg1: [0x0 ~> 0x1]
4969  *   arg2: [0x0 ~> 0x7fffff]
4970  *   arg3: [0x0 ~> 0x7fffff]
4971  * Output Bounds:
4972  *   out1: [0x0 ~> 0x7fffff]
4973  *   out2: [0x0 ~> 0x1]
4974  */
4975 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u23(
4976     uint32_t *out1, fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 *out2,
4977     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 arg1, uint32_t arg2,
4978     uint32_t arg3) {
4979     int32_t x1;
4980     fiat_id_tc26_gost_3410_2012_512_paramSetA_int1 x2;
4981     uint32_t x3;
4982     x1 = ((int32_t)(arg2 - arg1) - (int32_t)arg3);
4983     x2 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_int1)(x1 >> 23);
4984     x3 = (x1 & UINT32_C(0x7fffff));
4985     *out1 = x3;
4986     *out2 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(0x0 - x2);
4987 }
4988
4989 /*
4990  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32 is a single-word conditional move.
4991  * Postconditions:
4992  *   out1 = (if arg1 = 0 then arg2 else arg3)
4993  *
4994  * Input Bounds:
4995  *   arg1: [0x0 ~> 0x1]
4996  *   arg2: [0x0 ~> 0xffffffff]
4997  *   arg3: [0x0 ~> 0xffffffff]
4998  * Output Bounds:
4999  *   out1: [0x0 ~> 0xffffffff]
5000  */
5001 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(
5002     uint32_t *out1, fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 arg1,
5003     uint32_t arg2, uint32_t arg3) {
5004     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x1;
5005     uint32_t x2;
5006     uint32_t x3;
5007     x1 = (!(!arg1));
5008     x2 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_int1)(0x0 - x1) &
5009           UINT32_C(0xffffffff));
5010     x3 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_value_barrier_u32(x2) &
5011            arg3) |
5012           (fiat_id_tc26_gost_3410_2012_512_paramSetA_value_barrier_u32((~x2)) &
5013            arg2));
5014     *out1 = x3;
5015 }
5016
5017 /*
5018  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul multiplies two field elements and reduces the result.
5019  * Postconditions:
5020  *   eval out1 mod m = (eval arg1 * eval arg2) mod m
5021  *
5022  * Input Bounds:
5023  *   arg1: [[0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000]]
5024  *   arg2: [[0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000]]
5025  * Output Bounds:
5026  *   out1: [[0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000]]
5027  */
5028 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(
5029     uint32_t out1[23], const uint32_t arg1[23], const uint32_t arg2[23]) {
5030     uint64_t x1;
5031     uint64_t x2;
5032     uint64_t x3;
5033     uint64_t x4;
5034     uint64_t x5;
5035     uint64_t x6;
5036     uint64_t x7;
5037     uint64_t x8;
5038     uint64_t x9;
5039     uint64_t x10;
5040     uint64_t x11;
5041     uint64_t x12;
5042     uint64_t x13;
5043     uint64_t x14;
5044     uint64_t x15;
5045     uint64_t x16;
5046     uint64_t x17;
5047     uint64_t x18;
5048     uint64_t x19;
5049     uint64_t x20;
5050     uint64_t x21;
5051     uint64_t x22;
5052     uint64_t x23;
5053     uint64_t x24;
5054     uint64_t x25;
5055     uint64_t x26;
5056     uint64_t x27;
5057     uint64_t x28;
5058     uint64_t x29;
5059     uint64_t x30;
5060     uint64_t x31;
5061     uint64_t x32;
5062     uint64_t x33;
5063     uint64_t x34;
5064     uint64_t x35;
5065     uint64_t x36;
5066     uint64_t x37;
5067     uint64_t x38;
5068     uint64_t x39;
5069     uint64_t x40;
5070     uint64_t x41;
5071     uint64_t x42;
5072     uint64_t x43;
5073     uint64_t x44;
5074     uint64_t x45;
5075     uint64_t x46;
5076     uint64_t x47;
5077     uint64_t x48;
5078     uint64_t x49;
5079     uint64_t x50;
5080     uint64_t x51;
5081     uint64_t x52;
5082     uint64_t x53;
5083     uint64_t x54;
5084     uint64_t x55;
5085     uint64_t x56;
5086     uint64_t x57;
5087     uint64_t x58;
5088     uint64_t x59;
5089     uint64_t x60;
5090     uint64_t x61;
5091     uint64_t x62;
5092     uint64_t x63;
5093     uint64_t x64;
5094     uint64_t x65;
5095     uint64_t x66;
5096     uint64_t x67;
5097     uint64_t x68;
5098     uint64_t x69;
5099     uint64_t x70;
5100     uint64_t x71;
5101     uint64_t x72;
5102     uint64_t x73;
5103     uint64_t x74;
5104     uint64_t x75;
5105     uint64_t x76;
5106     uint64_t x77;
5107     uint64_t x78;
5108     uint64_t x79;
5109     uint64_t x80;
5110     uint64_t x81;
5111     uint64_t x82;
5112     uint64_t x83;
5113     uint64_t x84;
5114     uint64_t x85;
5115     uint64_t x86;
5116     uint64_t x87;
5117     uint64_t x88;
5118     uint64_t x89;
5119     uint64_t x90;
5120     uint64_t x91;
5121     uint64_t x92;
5122     uint64_t x93;
5123     uint64_t x94;
5124     uint64_t x95;
5125     uint64_t x96;
5126     uint64_t x97;
5127     uint64_t x98;
5128     uint64_t x99;
5129     uint64_t x100;
5130     uint64_t x101;
5131     uint64_t x102;
5132     uint64_t x103;
5133     uint64_t x104;
5134     uint64_t x105;
5135     uint64_t x106;
5136     uint64_t x107;
5137     uint64_t x108;
5138     uint64_t x109;
5139     uint64_t x110;
5140     uint64_t x111;
5141     uint64_t x112;
5142     uint64_t x113;
5143     uint64_t x114;
5144     uint64_t x115;
5145     uint64_t x116;
5146     uint64_t x117;
5147     uint64_t x118;
5148     uint64_t x119;
5149     uint64_t x120;
5150     uint64_t x121;
5151     uint64_t x122;
5152     uint64_t x123;
5153     uint64_t x124;
5154     uint64_t x125;
5155     uint64_t x126;
5156     uint64_t x127;
5157     uint64_t x128;
5158     uint64_t x129;
5159     uint64_t x130;
5160     uint64_t x131;
5161     uint64_t x132;
5162     uint64_t x133;
5163     uint64_t x134;
5164     uint64_t x135;
5165     uint64_t x136;
5166     uint64_t x137;
5167     uint64_t x138;
5168     uint64_t x139;
5169     uint64_t x140;
5170     uint64_t x141;
5171     uint64_t x142;
5172     uint64_t x143;
5173     uint64_t x144;
5174     uint64_t x145;
5175     uint64_t x146;
5176     uint64_t x147;
5177     uint64_t x148;
5178     uint64_t x149;
5179     uint64_t x150;
5180     uint64_t x151;
5181     uint64_t x152;
5182     uint64_t x153;
5183     uint64_t x154;
5184     uint64_t x155;
5185     uint64_t x156;
5186     uint64_t x157;
5187     uint64_t x158;
5188     uint64_t x159;
5189     uint64_t x160;
5190     uint64_t x161;
5191     uint64_t x162;
5192     uint64_t x163;
5193     uint64_t x164;
5194     uint64_t x165;
5195     uint64_t x166;
5196     uint64_t x167;
5197     uint64_t x168;
5198     uint64_t x169;
5199     uint64_t x170;
5200     uint64_t x171;
5201     uint64_t x172;
5202     uint64_t x173;
5203     uint64_t x174;
5204     uint64_t x175;
5205     uint64_t x176;
5206     uint64_t x177;
5207     uint64_t x178;
5208     uint64_t x179;
5209     uint64_t x180;
5210     uint64_t x181;
5211     uint64_t x182;
5212     uint64_t x183;
5213     uint64_t x184;
5214     uint64_t x185;
5215     uint64_t x186;
5216     uint64_t x187;
5217     uint64_t x188;
5218     uint64_t x189;
5219     uint64_t x190;
5220     uint64_t x191;
5221     uint64_t x192;
5222     uint64_t x193;
5223     uint64_t x194;
5224     uint64_t x195;
5225     uint64_t x196;
5226     uint64_t x197;
5227     uint64_t x198;
5228     uint64_t x199;
5229     uint64_t x200;
5230     uint64_t x201;
5231     uint64_t x202;
5232     uint64_t x203;
5233     uint64_t x204;
5234     uint64_t x205;
5235     uint64_t x206;
5236     uint64_t x207;
5237     uint64_t x208;
5238     uint64_t x209;
5239     uint64_t x210;
5240     uint64_t x211;
5241     uint64_t x212;
5242     uint64_t x213;
5243     uint64_t x214;
5244     uint64_t x215;
5245     uint64_t x216;
5246     uint64_t x217;
5247     uint64_t x218;
5248     uint64_t x219;
5249     uint64_t x220;
5250     uint64_t x221;
5251     uint64_t x222;
5252     uint64_t x223;
5253     uint64_t x224;
5254     uint64_t x225;
5255     uint64_t x226;
5256     uint64_t x227;
5257     uint64_t x228;
5258     uint64_t x229;
5259     uint64_t x230;
5260     uint64_t x231;
5261     uint64_t x232;
5262     uint64_t x233;
5263     uint64_t x234;
5264     uint64_t x235;
5265     uint64_t x236;
5266     uint64_t x237;
5267     uint64_t x238;
5268     uint64_t x239;
5269     uint64_t x240;
5270     uint64_t x241;
5271     uint64_t x242;
5272     uint64_t x243;
5273     uint64_t x244;
5274     uint64_t x245;
5275     uint64_t x246;
5276     uint64_t x247;
5277     uint64_t x248;
5278     uint64_t x249;
5279     uint64_t x250;
5280     uint64_t x251;
5281     uint64_t x252;
5282     uint64_t x253;
5283     uint64_t x254;
5284     uint64_t x255;
5285     uint64_t x256;
5286     uint64_t x257;
5287     uint64_t x258;
5288     uint64_t x259;
5289     uint64_t x260;
5290     uint64_t x261;
5291     uint64_t x262;
5292     uint64_t x263;
5293     uint64_t x264;
5294     uint64_t x265;
5295     uint64_t x266;
5296     uint64_t x267;
5297     uint64_t x268;
5298     uint64_t x269;
5299     uint64_t x270;
5300     uint64_t x271;
5301     uint64_t x272;
5302     uint64_t x273;
5303     uint64_t x274;
5304     uint64_t x275;
5305     uint64_t x276;
5306     uint64_t x277;
5307     uint64_t x278;
5308     uint64_t x279;
5309     uint64_t x280;
5310     uint64_t x281;
5311     uint64_t x282;
5312     uint64_t x283;
5313     uint64_t x284;
5314     uint64_t x285;
5315     uint64_t x286;
5316     uint64_t x287;
5317     uint64_t x288;
5318     uint64_t x289;
5319     uint64_t x290;
5320     uint64_t x291;
5321     uint64_t x292;
5322     uint64_t x293;
5323     uint64_t x294;
5324     uint64_t x295;
5325     uint64_t x296;
5326     uint64_t x297;
5327     uint64_t x298;
5328     uint64_t x299;
5329     uint64_t x300;
5330     uint64_t x301;
5331     uint64_t x302;
5332     uint64_t x303;
5333     uint64_t x304;
5334     uint64_t x305;
5335     uint64_t x306;
5336     uint64_t x307;
5337     uint64_t x308;
5338     uint64_t x309;
5339     uint64_t x310;
5340     uint64_t x311;
5341     uint64_t x312;
5342     uint64_t x313;
5343     uint64_t x314;
5344     uint64_t x315;
5345     uint64_t x316;
5346     uint64_t x317;
5347     uint64_t x318;
5348     uint64_t x319;
5349     uint64_t x320;
5350     uint64_t x321;
5351     uint64_t x322;
5352     uint64_t x323;
5353     uint64_t x324;
5354     uint64_t x325;
5355     uint64_t x326;
5356     uint64_t x327;
5357     uint64_t x328;
5358     uint64_t x329;
5359     uint64_t x330;
5360     uint64_t x331;
5361     uint64_t x332;
5362     uint64_t x333;
5363     uint64_t x334;
5364     uint64_t x335;
5365     uint64_t x336;
5366     uint64_t x337;
5367     uint64_t x338;
5368     uint64_t x339;
5369     uint64_t x340;
5370     uint64_t x341;
5371     uint64_t x342;
5372     uint64_t x343;
5373     uint64_t x344;
5374     uint64_t x345;
5375     uint64_t x346;
5376     uint64_t x347;
5377     uint64_t x348;
5378     uint64_t x349;
5379     uint64_t x350;
5380     uint64_t x351;
5381     uint64_t x352;
5382     uint64_t x353;
5383     uint64_t x354;
5384     uint64_t x355;
5385     uint64_t x356;
5386     uint64_t x357;
5387     uint64_t x358;
5388     uint64_t x359;
5389     uint64_t x360;
5390     uint64_t x361;
5391     uint64_t x362;
5392     uint64_t x363;
5393     uint64_t x364;
5394     uint64_t x365;
5395     uint64_t x366;
5396     uint64_t x367;
5397     uint64_t x368;
5398     uint64_t x369;
5399     uint64_t x370;
5400     uint64_t x371;
5401     uint64_t x372;
5402     uint64_t x373;
5403     uint64_t x374;
5404     uint64_t x375;
5405     uint64_t x376;
5406     uint64_t x377;
5407     uint64_t x378;
5408     uint64_t x379;
5409     uint64_t x380;
5410     uint64_t x381;
5411     uint64_t x382;
5412     uint64_t x383;
5413     uint64_t x384;
5414     uint64_t x385;
5415     uint64_t x386;
5416     uint64_t x387;
5417     uint64_t x388;
5418     uint64_t x389;
5419     uint64_t x390;
5420     uint64_t x391;
5421     uint64_t x392;
5422     uint64_t x393;
5423     uint64_t x394;
5424     uint64_t x395;
5425     uint64_t x396;
5426     uint64_t x397;
5427     uint64_t x398;
5428     uint64_t x399;
5429     uint64_t x400;
5430     uint64_t x401;
5431     uint64_t x402;
5432     uint64_t x403;
5433     uint64_t x404;
5434     uint64_t x405;
5435     uint64_t x406;
5436     uint64_t x407;
5437     uint64_t x408;
5438     uint64_t x409;
5439     uint64_t x410;
5440     uint64_t x411;
5441     uint64_t x412;
5442     uint64_t x413;
5443     uint64_t x414;
5444     uint64_t x415;
5445     uint64_t x416;
5446     uint64_t x417;
5447     uint64_t x418;
5448     uint64_t x419;
5449     uint64_t x420;
5450     uint64_t x421;
5451     uint64_t x422;
5452     uint64_t x423;
5453     uint64_t x424;
5454     uint64_t x425;
5455     uint64_t x426;
5456     uint64_t x427;
5457     uint64_t x428;
5458     uint64_t x429;
5459     uint64_t x430;
5460     uint64_t x431;
5461     uint64_t x432;
5462     uint64_t x433;
5463     uint64_t x434;
5464     uint64_t x435;
5465     uint64_t x436;
5466     uint64_t x437;
5467     uint64_t x438;
5468     uint64_t x439;
5469     uint64_t x440;
5470     uint64_t x441;
5471     uint64_t x442;
5472     uint64_t x443;
5473     uint64_t x444;
5474     uint64_t x445;
5475     uint64_t x446;
5476     uint64_t x447;
5477     uint64_t x448;
5478     uint64_t x449;
5479     uint64_t x450;
5480     uint64_t x451;
5481     uint64_t x452;
5482     uint64_t x453;
5483     uint64_t x454;
5484     uint64_t x455;
5485     uint64_t x456;
5486     uint64_t x457;
5487     uint64_t x458;
5488     uint64_t x459;
5489     uint64_t x460;
5490     uint64_t x461;
5491     uint64_t x462;
5492     uint64_t x463;
5493     uint64_t x464;
5494     uint64_t x465;
5495     uint64_t x466;
5496     uint64_t x467;
5497     uint64_t x468;
5498     uint64_t x469;
5499     uint64_t x470;
5500     uint64_t x471;
5501     uint64_t x472;
5502     uint64_t x473;
5503     uint64_t x474;
5504     uint64_t x475;
5505     uint64_t x476;
5506     uint64_t x477;
5507     uint64_t x478;
5508     uint64_t x479;
5509     uint64_t x480;
5510     uint64_t x481;
5511     uint64_t x482;
5512     uint64_t x483;
5513     uint64_t x484;
5514     uint64_t x485;
5515     uint64_t x486;
5516     uint64_t x487;
5517     uint64_t x488;
5518     uint64_t x489;
5519     uint64_t x490;
5520     uint64_t x491;
5521     uint64_t x492;
5522     uint64_t x493;
5523     uint64_t x494;
5524     uint64_t x495;
5525     uint64_t x496;
5526     uint64_t x497;
5527     uint64_t x498;
5528     uint64_t x499;
5529     uint64_t x500;
5530     uint64_t x501;
5531     uint64_t x502;
5532     uint64_t x503;
5533     uint64_t x504;
5534     uint64_t x505;
5535     uint64_t x506;
5536     uint64_t x507;
5537     uint64_t x508;
5538     uint64_t x509;
5539     uint64_t x510;
5540     uint64_t x511;
5541     uint64_t x512;
5542     uint64_t x513;
5543     uint64_t x514;
5544     uint64_t x515;
5545     uint64_t x516;
5546     uint64_t x517;
5547     uint64_t x518;
5548     uint64_t x519;
5549     uint64_t x520;
5550     uint64_t x521;
5551     uint64_t x522;
5552     uint64_t x523;
5553     uint64_t x524;
5554     uint64_t x525;
5555     uint64_t x526;
5556     uint64_t x527;
5557     uint64_t x528;
5558     uint64_t x529;
5559     uint64_t x530;
5560     uint64_t x531;
5561     uint32_t x532;
5562     uint64_t x533;
5563     uint64_t x534;
5564     uint64_t x535;
5565     uint64_t x536;
5566     uint64_t x537;
5567     uint64_t x538;
5568     uint64_t x539;
5569     uint64_t x540;
5570     uint64_t x541;
5571     uint64_t x542;
5572     uint64_t x543;
5573     uint64_t x544;
5574     uint64_t x545;
5575     uint64_t x546;
5576     uint64_t x547;
5577     uint64_t x548;
5578     uint64_t x549;
5579     uint64_t x550;
5580     uint64_t x551;
5581     uint64_t x552;
5582     uint64_t x553;
5583     uint64_t x554;
5584     uint64_t x555;
5585     uint64_t x556;
5586     uint32_t x557;
5587     uint64_t x558;
5588     uint64_t x559;
5589     uint32_t x560;
5590     uint64_t x561;
5591     uint64_t x562;
5592     uint32_t x563;
5593     uint64_t x564;
5594     uint64_t x565;
5595     uint32_t x566;
5596     uint64_t x567;
5597     uint64_t x568;
5598     uint32_t x569;
5599     uint64_t x570;
5600     uint64_t x571;
5601     uint32_t x572;
5602     uint64_t x573;
5603     uint64_t x574;
5604     uint32_t x575;
5605     uint64_t x576;
5606     uint64_t x577;
5607     uint32_t x578;
5608     uint64_t x579;
5609     uint64_t x580;
5610     uint32_t x581;
5611     uint64_t x582;
5612     uint64_t x583;
5613     uint32_t x584;
5614     uint64_t x585;
5615     uint64_t x586;
5616     uint32_t x587;
5617     uint64_t x588;
5618     uint64_t x589;
5619     uint32_t x590;
5620     uint64_t x591;
5621     uint64_t x592;
5622     uint32_t x593;
5623     uint64_t x594;
5624     uint64_t x595;
5625     uint32_t x596;
5626     uint64_t x597;
5627     uint64_t x598;
5628     uint32_t x599;
5629     uint64_t x600;
5630     uint64_t x601;
5631     uint32_t x602;
5632     uint64_t x603;
5633     uint64_t x604;
5634     uint32_t x605;
5635     uint64_t x606;
5636     uint64_t x607;
5637     uint32_t x608;
5638     uint64_t x609;
5639     uint64_t x610;
5640     uint32_t x611;
5641     uint64_t x612;
5642     uint64_t x613;
5643     uint32_t x614;
5644     uint64_t x615;
5645     uint64_t x616;
5646     uint32_t x617;
5647     uint64_t x618;
5648     uint32_t x619;
5649     uint32_t x620;
5650     uint64_t x621;
5651     uint64_t x622;
5652     uint32_t x623;
5653     uint32_t x624;
5654     uint32_t x625;
5655     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x626;
5656     uint32_t x627;
5657     uint32_t x628;
5658     x1 = (UINT16_C(0x239) * ((uint64_t)(arg1[22]) * (arg2[22])));
5659     x2 = (UINT16_C(0x239) * ((uint64_t)(arg1[22]) * (arg2[21])));
5660     x3 = (UINT16_C(0x239) * (((uint64_t)(arg1[22]) * (arg2[20])) * 0x2));
5661     x4 = (UINT16_C(0x239) * ((uint64_t)(arg1[22]) * (arg2[19])));
5662     x5 = (UINT16_C(0x239) * ((uint64_t)(arg1[22]) * (arg2[18])));
5663     x6 = (UINT16_C(0x239) * ((uint64_t)(arg1[22]) * (arg2[17])));
5664     x7 = (UINT16_C(0x239) * (((uint64_t)(arg1[22]) * (arg2[16])) * 0x2));
5665     x8 = (UINT16_C(0x239) * ((uint64_t)(arg1[22]) * (arg2[15])));
5666     x9 = (UINT16_C(0x239) * ((uint64_t)(arg1[22]) * (arg2[14])));
5667     x10 = (UINT16_C(0x239) * ((uint64_t)(arg1[22]) * (arg2[13])));
5668     x11 = (UINT16_C(0x239) * (((uint64_t)(arg1[22]) * (arg2[12])) * 0x2));
5669     x12 = (UINT16_C(0x239) * ((uint64_t)(arg1[22]) * (arg2[11])));
5670     x13 = (UINT16_C(0x239) * ((uint64_t)(arg1[22]) * (arg2[10])));
5671     x14 = (UINT16_C(0x239) * ((uint64_t)(arg1[22]) * (arg2[9])));
5672     x15 = (UINT16_C(0x239) * (((uint64_t)(arg1[22]) * (arg2[8])) * 0x2));
5673     x16 = (UINT16_C(0x239) * ((uint64_t)(arg1[22]) * (arg2[7])));
5674     x17 = (UINT16_C(0x239) * ((uint64_t)(arg1[22]) * (arg2[6])));
5675     x18 = (UINT16_C(0x239) * ((uint64_t)(arg1[22]) * (arg2[5])));
5676     x19 = (UINT16_C(0x239) * (((uint64_t)(arg1[22]) * (arg2[4])) * 0x2));
5677     x20 = (UINT16_C(0x239) * ((uint64_t)(arg1[22]) * (arg2[3])));
5678     x21 = (UINT16_C(0x239) * ((uint64_t)(arg1[22]) * (arg2[2])));
5679     x22 = (UINT16_C(0x239) * (((uint64_t)(arg1[22]) * (arg2[1])) * 0x2));
5680     x23 = (UINT16_C(0x239) * ((uint64_t)(arg1[21]) * (arg2[22])));
5681     x24 = (UINT16_C(0x239) * (((uint64_t)(arg1[21]) * (arg2[21])) * 0x2));
5682     x25 = (UINT16_C(0x239) * (((uint64_t)(arg1[21]) * (arg2[20])) * 0x2));
5683     x26 = (UINT16_C(0x239) * ((uint64_t)(arg1[21]) * (arg2[19])));
5684     x27 = (UINT16_C(0x239) * ((uint64_t)(arg1[21]) * (arg2[18])));
5685     x28 = (UINT16_C(0x239) * (((uint64_t)(arg1[21]) * (arg2[17])) * 0x2));
5686     x29 = (UINT16_C(0x239) * (((uint64_t)(arg1[21]) * (arg2[16])) * 0x2));
5687     x30 = (UINT16_C(0x239) * ((uint64_t)(arg1[21]) * (arg2[15])));
5688     x31 = (UINT16_C(0x239) * ((uint64_t)(arg1[21]) * (arg2[14])));
5689     x32 = (UINT16_C(0x239) * (((uint64_t)(arg1[21]) * (arg2[13])) * 0x2));
5690     x33 = (UINT16_C(0x239) * (((uint64_t)(arg1[21]) * (arg2[12])) * 0x2));
5691     x34 = (UINT16_C(0x239) * ((uint64_t)(arg1[21]) * (arg2[11])));
5692     x35 = (UINT16_C(0x239) * ((uint64_t)(arg1[21]) * (arg2[10])));
5693     x36 = (UINT16_C(0x239) * (((uint64_t)(arg1[21]) * (arg2[9])) * 0x2));
5694     x37 = (UINT16_C(0x239) * (((uint64_t)(arg1[21]) * (arg2[8])) * 0x2));
5695     x38 = (UINT16_C(0x239) * ((uint64_t)(arg1[21]) * (arg2[7])));
5696     x39 = (UINT16_C(0x239) * ((uint64_t)(arg1[21]) * (arg2[6])));
5697     x40 = (UINT16_C(0x239) * (((uint64_t)(arg1[21]) * (arg2[5])) * 0x2));
5698     x41 = (UINT16_C(0x239) * (((uint64_t)(arg1[21]) * (arg2[4])) * 0x2));
5699     x42 = (UINT16_C(0x239) * ((uint64_t)(arg1[21]) * (arg2[3])));
5700     x43 = (UINT16_C(0x239) * (((uint64_t)(arg1[21]) * (arg2[2])) * 0x2));
5701     x44 = (UINT16_C(0x239) * (((uint64_t)(arg1[20]) * (arg2[22])) * 0x2));
5702     x45 = (UINT16_C(0x239) * (((uint64_t)(arg1[20]) * (arg2[21])) * 0x2));
5703     x46 = (UINT16_C(0x239) * (((uint64_t)(arg1[20]) * (arg2[20])) * 0x2));
5704     x47 = (UINT16_C(0x239) * ((uint64_t)(arg1[20]) * (arg2[19])));
5705     x48 = (UINT16_C(0x239) * (((uint64_t)(arg1[20]) * (arg2[18])) * 0x2));
5706     x49 = (UINT16_C(0x239) * (((uint64_t)(arg1[20]) * (arg2[17])) * 0x2));
5707     x50 = (UINT16_C(0x239) * (((uint64_t)(arg1[20]) * (arg2[16])) * 0x2));
5708     x51 = (UINT16_C(0x239) * ((uint64_t)(arg1[20]) * (arg2[15])));
5709     x52 = (UINT16_C(0x239) * (((uint64_t)(arg1[20]) * (arg2[14])) * 0x2));
5710     x53 = (UINT16_C(0x239) * (((uint64_t)(arg1[20]) * (arg2[13])) * 0x2));
5711     x54 = (UINT16_C(0x239) * (((uint64_t)(arg1[20]) * (arg2[12])) * 0x2));
5712     x55 = (UINT16_C(0x239) * ((uint64_t)(arg1[20]) * (arg2[11])));
5713     x56 = (UINT16_C(0x239) * (((uint64_t)(arg1[20]) * (arg2[10])) * 0x2));
5714     x57 = (UINT16_C(0x239) * (((uint64_t)(arg1[20]) * (arg2[9])) * 0x2));
5715     x58 = (UINT16_C(0x239) * (((uint64_t)(arg1[20]) * (arg2[8])) * 0x2));
5716     x59 = (UINT16_C(0x239) * ((uint64_t)(arg1[20]) * (arg2[7])));
5717     x60 = (UINT16_C(0x239) * (((uint64_t)(arg1[20]) * (arg2[6])) * 0x2));
5718     x61 = (UINT16_C(0x239) * (((uint64_t)(arg1[20]) * (arg2[5])) * 0x2));
5719     x62 = (UINT16_C(0x239) * (((uint64_t)(arg1[20]) * (arg2[4])) * 0x2));
5720     x63 = (UINT16_C(0x239) * (((uint64_t)(arg1[20]) * (arg2[3])) * 0x2));
5721     x64 = (UINT16_C(0x239) * ((uint64_t)(arg1[19]) * (arg2[22])));
5722     x65 = (UINT16_C(0x239) * ((uint64_t)(arg1[19]) * (arg2[21])));
5723     x66 = (UINT16_C(0x239) * ((uint64_t)(arg1[19]) * (arg2[20])));
5724     x67 = (UINT16_C(0x239) * ((uint64_t)(arg1[19]) * (arg2[19])));
5725     x68 = (UINT16_C(0x239) * ((uint64_t)(arg1[19]) * (arg2[18])));
5726     x69 = (UINT16_C(0x239) * ((uint64_t)(arg1[19]) * (arg2[17])));
5727     x70 = (UINT16_C(0x239) * ((uint64_t)(arg1[19]) * (arg2[16])));
5728     x71 = (UINT16_C(0x239) * ((uint64_t)(arg1[19]) * (arg2[15])));
5729     x72 = (UINT16_C(0x239) * ((uint64_t)(arg1[19]) * (arg2[14])));
5730     x73 = (UINT16_C(0x239) * ((uint64_t)(arg1[19]) * (arg2[13])));
5731     x74 = (UINT16_C(0x239) * ((uint64_t)(arg1[19]) * (arg2[12])));
5732     x75 = (UINT16_C(0x239) * ((uint64_t)(arg1[19]) * (arg2[11])));
5733     x76 = (UINT16_C(0x239) * ((uint64_t)(arg1[19]) * (arg2[10])));
5734     x77 = (UINT16_C(0x239) * ((uint64_t)(arg1[19]) * (arg2[9])));
5735     x78 = (UINT16_C(0x239) * ((uint64_t)(arg1[19]) * (arg2[8])));
5736     x79 = (UINT16_C(0x239) * ((uint64_t)(arg1[19]) * (arg2[7])));
5737     x80 = (UINT16_C(0x239) * ((uint64_t)(arg1[19]) * (arg2[6])));
5738     x81 = (UINT16_C(0x239) * ((uint64_t)(arg1[19]) * (arg2[5])));
5739     x82 = (UINT16_C(0x239) * (((uint64_t)(arg1[19]) * (arg2[4])) * 0x2));
5740     x83 = (UINT16_C(0x239) * ((uint64_t)(arg1[18]) * (arg2[22])));
5741     x84 = (UINT16_C(0x239) * ((uint64_t)(arg1[18]) * (arg2[21])));
5742     x85 = (UINT16_C(0x239) * (((uint64_t)(arg1[18]) * (arg2[20])) * 0x2));
5743     x86 = (UINT16_C(0x239) * ((uint64_t)(arg1[18]) * (arg2[19])));
5744     x87 = (UINT16_C(0x239) * ((uint64_t)(arg1[18]) * (arg2[18])));
5745     x88 = (UINT16_C(0x239) * ((uint64_t)(arg1[18]) * (arg2[17])));
5746     x89 = (UINT16_C(0x239) * (((uint64_t)(arg1[18]) * (arg2[16])) * 0x2));
5747     x90 = (UINT16_C(0x239) * ((uint64_t)(arg1[18]) * (arg2[15])));
5748     x91 = (UINT16_C(0x239) * ((uint64_t)(arg1[18]) * (arg2[14])));
5749     x92 = (UINT16_C(0x239) * ((uint64_t)(arg1[18]) * (arg2[13])));
5750     x93 = (UINT16_C(0x239) * (((uint64_t)(arg1[18]) * (arg2[12])) * 0x2));
5751     x94 = (UINT16_C(0x239) * ((uint64_t)(arg1[18]) * (arg2[11])));
5752     x95 = (UINT16_C(0x239) * ((uint64_t)(arg1[18]) * (arg2[10])));
5753     x96 = (UINT16_C(0x239) * ((uint64_t)(arg1[18]) * (arg2[9])));
5754     x97 = (UINT16_C(0x239) * (((uint64_t)(arg1[18]) * (arg2[8])) * 0x2));
5755     x98 = (UINT16_C(0x239) * ((uint64_t)(arg1[18]) * (arg2[7])));
5756     x99 = (UINT16_C(0x239) * ((uint64_t)(arg1[18]) * (arg2[6])));
5757     x100 = (UINT16_C(0x239) * (((uint64_t)(arg1[18]) * (arg2[5])) * 0x2));
5758     x101 = (UINT16_C(0x239) * ((uint64_t)(arg1[17]) * (arg2[22])));
5759     x102 = (UINT16_C(0x239) * (((uint64_t)(arg1[17]) * (arg2[21])) * 0x2));
5760     x103 = (UINT16_C(0x239) * (((uint64_t)(arg1[17]) * (arg2[20])) * 0x2));
5761     x104 = (UINT16_C(0x239) * ((uint64_t)(arg1[17]) * (arg2[19])));
5762     x105 = (UINT16_C(0x239) * ((uint64_t)(arg1[17]) * (arg2[18])));
5763     x106 = (UINT16_C(0x239) * (((uint64_t)(arg1[17]) * (arg2[17])) * 0x2));
5764     x107 = (UINT16_C(0x239) * (((uint64_t)(arg1[17]) * (arg2[16])) * 0x2));
5765     x108 = (UINT16_C(0x239) * ((uint64_t)(arg1[17]) * (arg2[15])));
5766     x109 = (UINT16_C(0x239) * ((uint64_t)(arg1[17]) * (arg2[14])));
5767     x110 = (UINT16_C(0x239) * (((uint64_t)(arg1[17]) * (arg2[13])) * 0x2));
5768     x111 = (UINT16_C(0x239) * (((uint64_t)(arg1[17]) * (arg2[12])) * 0x2));
5769     x112 = (UINT16_C(0x239) * ((uint64_t)(arg1[17]) * (arg2[11])));
5770     x113 = (UINT16_C(0x239) * ((uint64_t)(arg1[17]) * (arg2[10])));
5771     x114 = (UINT16_C(0x239) * (((uint64_t)(arg1[17]) * (arg2[9])) * 0x2));
5772     x115 = (UINT16_C(0x239) * (((uint64_t)(arg1[17]) * (arg2[8])) * 0x2));
5773     x116 = (UINT16_C(0x239) * ((uint64_t)(arg1[17]) * (arg2[7])));
5774     x117 = (UINT16_C(0x239) * (((uint64_t)(arg1[17]) * (arg2[6])) * 0x2));
5775     x118 = (UINT16_C(0x239) * (((uint64_t)(arg1[16]) * (arg2[22])) * 0x2));
5776     x119 = (UINT16_C(0x239) * (((uint64_t)(arg1[16]) * (arg2[21])) * 0x2));
5777     x120 = (UINT16_C(0x239) * (((uint64_t)(arg1[16]) * (arg2[20])) * 0x2));
5778     x121 = (UINT16_C(0x239) * ((uint64_t)(arg1[16]) * (arg2[19])));
5779     x122 = (UINT16_C(0x239) * (((uint64_t)(arg1[16]) * (arg2[18])) * 0x2));
5780     x123 = (UINT16_C(0x239) * (((uint64_t)(arg1[16]) * (arg2[17])) * 0x2));
5781     x124 = (UINT16_C(0x239) * (((uint64_t)(arg1[16]) * (arg2[16])) * 0x2));
5782     x125 = (UINT16_C(0x239) * ((uint64_t)(arg1[16]) * (arg2[15])));
5783     x126 = (UINT16_C(0x239) * (((uint64_t)(arg1[16]) * (arg2[14])) * 0x2));
5784     x127 = (UINT16_C(0x239) * (((uint64_t)(arg1[16]) * (arg2[13])) * 0x2));
5785     x128 = (UINT16_C(0x239) * (((uint64_t)(arg1[16]) * (arg2[12])) * 0x2));
5786     x129 = (UINT16_C(0x239) * ((uint64_t)(arg1[16]) * (arg2[11])));
5787     x130 = (UINT16_C(0x239) * (((uint64_t)(arg1[16]) * (arg2[10])) * 0x2));
5788     x131 = (UINT16_C(0x239) * (((uint64_t)(arg1[16]) * (arg2[9])) * 0x2));
5789     x132 = (UINT16_C(0x239) * (((uint64_t)(arg1[16]) * (arg2[8])) * 0x2));
5790     x133 = (UINT16_C(0x239) * (((uint64_t)(arg1[16]) * (arg2[7])) * 0x2));
5791     x134 = (UINT16_C(0x239) * ((uint64_t)(arg1[15]) * (arg2[22])));
5792     x135 = (UINT16_C(0x239) * ((uint64_t)(arg1[15]) * (arg2[21])));
5793     x136 = (UINT16_C(0x239) * ((uint64_t)(arg1[15]) * (arg2[20])));
5794     x137 = (UINT16_C(0x239) * ((uint64_t)(arg1[15]) * (arg2[19])));
5795     x138 = (UINT16_C(0x239) * ((uint64_t)(arg1[15]) * (arg2[18])));
5796     x139 = (UINT16_C(0x239) * ((uint64_t)(arg1[15]) * (arg2[17])));
5797     x140 = (UINT16_C(0x239) * ((uint64_t)(arg1[15]) * (arg2[16])));
5798     x141 = (UINT16_C(0x239) * ((uint64_t)(arg1[15]) * (arg2[15])));
5799     x142 = (UINT16_C(0x239) * ((uint64_t)(arg1[15]) * (arg2[14])));
5800     x143 = (UINT16_C(0x239) * ((uint64_t)(arg1[15]) * (arg2[13])));
5801     x144 = (UINT16_C(0x239) * ((uint64_t)(arg1[15]) * (arg2[12])));
5802     x145 = (UINT16_C(0x239) * ((uint64_t)(arg1[15]) * (arg2[11])));
5803     x146 = (UINT16_C(0x239) * ((uint64_t)(arg1[15]) * (arg2[10])));
5804     x147 = (UINT16_C(0x239) * ((uint64_t)(arg1[15]) * (arg2[9])));
5805     x148 = (UINT16_C(0x239) * (((uint64_t)(arg1[15]) * (arg2[8])) * 0x2));
5806     x149 = (UINT16_C(0x239) * ((uint64_t)(arg1[14]) * (arg2[22])));
5807     x150 = (UINT16_C(0x239) * ((uint64_t)(arg1[14]) * (arg2[21])));
5808     x151 = (UINT16_C(0x239) * (((uint64_t)(arg1[14]) * (arg2[20])) * 0x2));
5809     x152 = (UINT16_C(0x239) * ((uint64_t)(arg1[14]) * (arg2[19])));
5810     x153 = (UINT16_C(0x239) * ((uint64_t)(arg1[14]) * (arg2[18])));
5811     x154 = (UINT16_C(0x239) * ((uint64_t)(arg1[14]) * (arg2[17])));
5812     x155 = (UINT16_C(0x239) * (((uint64_t)(arg1[14]) * (arg2[16])) * 0x2));
5813     x156 = (UINT16_C(0x239) * ((uint64_t)(arg1[14]) * (arg2[15])));
5814     x157 = (UINT16_C(0x239) * ((uint64_t)(arg1[14]) * (arg2[14])));
5815     x158 = (UINT16_C(0x239) * ((uint64_t)(arg1[14]) * (arg2[13])));
5816     x159 = (UINT16_C(0x239) * (((uint64_t)(arg1[14]) * (arg2[12])) * 0x2));
5817     x160 = (UINT16_C(0x239) * ((uint64_t)(arg1[14]) * (arg2[11])));
5818     x161 = (UINT16_C(0x239) * ((uint64_t)(arg1[14]) * (arg2[10])));
5819     x162 = (UINT16_C(0x239) * (((uint64_t)(arg1[14]) * (arg2[9])) * 0x2));
5820     x163 = (UINT16_C(0x239) * ((uint64_t)(arg1[13]) * (arg2[22])));
5821     x164 = (UINT16_C(0x239) * (((uint64_t)(arg1[13]) * (arg2[21])) * 0x2));
5822     x165 = (UINT16_C(0x239) * (((uint64_t)(arg1[13]) * (arg2[20])) * 0x2));
5823     x166 = (UINT16_C(0x239) * ((uint64_t)(arg1[13]) * (arg2[19])));
5824     x167 = (UINT16_C(0x239) * ((uint64_t)(arg1[13]) * (arg2[18])));
5825     x168 = (UINT16_C(0x239) * (((uint64_t)(arg1[13]) * (arg2[17])) * 0x2));
5826     x169 = (UINT16_C(0x239) * (((uint64_t)(arg1[13]) * (arg2[16])) * 0x2));
5827     x170 = (UINT16_C(0x239) * ((uint64_t)(arg1[13]) * (arg2[15])));
5828     x171 = (UINT16_C(0x239) * ((uint64_t)(arg1[13]) * (arg2[14])));
5829     x172 = (UINT16_C(0x239) * (((uint64_t)(arg1[13]) * (arg2[13])) * 0x2));
5830     x173 = (UINT16_C(0x239) * (((uint64_t)(arg1[13]) * (arg2[12])) * 0x2));
5831     x174 = (UINT16_C(0x239) * ((uint64_t)(arg1[13]) * (arg2[11])));
5832     x175 = (UINT16_C(0x239) * (((uint64_t)(arg1[13]) * (arg2[10])) * 0x2));
5833     x176 = (UINT16_C(0x239) * (((uint64_t)(arg1[12]) * (arg2[22])) * 0x2));
5834     x177 = (UINT16_C(0x239) * (((uint64_t)(arg1[12]) * (arg2[21])) * 0x2));
5835     x178 = (UINT16_C(0x239) * (((uint64_t)(arg1[12]) * (arg2[20])) * 0x2));
5836     x179 = (UINT16_C(0x239) * ((uint64_t)(arg1[12]) * (arg2[19])));
5837     x180 = (UINT16_C(0x239) * (((uint64_t)(arg1[12]) * (arg2[18])) * 0x2));
5838     x181 = (UINT16_C(0x239) * (((uint64_t)(arg1[12]) * (arg2[17])) * 0x2));
5839     x182 = (UINT16_C(0x239) * (((uint64_t)(arg1[12]) * (arg2[16])) * 0x2));
5840     x183 = (UINT16_C(0x239) * ((uint64_t)(arg1[12]) * (arg2[15])));
5841     x184 = (UINT16_C(0x239) * (((uint64_t)(arg1[12]) * (arg2[14])) * 0x2));
5842     x185 = (UINT16_C(0x239) * (((uint64_t)(arg1[12]) * (arg2[13])) * 0x2));
5843     x186 = (UINT16_C(0x239) * (((uint64_t)(arg1[12]) * (arg2[12])) * 0x2));
5844     x187 = (UINT16_C(0x239) * (((uint64_t)(arg1[12]) * (arg2[11])) * 0x2));
5845     x188 = (UINT16_C(0x239) * ((uint64_t)(arg1[11]) * (arg2[22])));
5846     x189 = (UINT16_C(0x239) * ((uint64_t)(arg1[11]) * (arg2[21])));
5847     x190 = (UINT16_C(0x239) * ((uint64_t)(arg1[11]) * (arg2[20])));
5848     x191 = (UINT16_C(0x239) * ((uint64_t)(arg1[11]) * (arg2[19])));
5849     x192 = (UINT16_C(0x239) * ((uint64_t)(arg1[11]) * (arg2[18])));
5850     x193 = (UINT16_C(0x239) * ((uint64_t)(arg1[11]) * (arg2[17])));
5851     x194 = (UINT16_C(0x239) * ((uint64_t)(arg1[11]) * (arg2[16])));
5852     x195 = (UINT16_C(0x239) * ((uint64_t)(arg1[11]) * (arg2[15])));
5853     x196 = (UINT16_C(0x239) * ((uint64_t)(arg1[11]) * (arg2[14])));
5854     x197 = (UINT16_C(0x239) * ((uint64_t)(arg1[11]) * (arg2[13])));
5855     x198 = (UINT16_C(0x239) * (((uint64_t)(arg1[11]) * (arg2[12])) * 0x2));
5856     x199 = (UINT16_C(0x239) * ((uint64_t)(arg1[10]) * (arg2[22])));
5857     x200 = (UINT16_C(0x239) * ((uint64_t)(arg1[10]) * (arg2[21])));
5858     x201 = (UINT16_C(0x239) * (((uint64_t)(arg1[10]) * (arg2[20])) * 0x2));
5859     x202 = (UINT16_C(0x239) * ((uint64_t)(arg1[10]) * (arg2[19])));
5860     x203 = (UINT16_C(0x239) * ((uint64_t)(arg1[10]) * (arg2[18])));
5861     x204 = (UINT16_C(0x239) * ((uint64_t)(arg1[10]) * (arg2[17])));
5862     x205 = (UINT16_C(0x239) * (((uint64_t)(arg1[10]) * (arg2[16])) * 0x2));
5863     x206 = (UINT16_C(0x239) * ((uint64_t)(arg1[10]) * (arg2[15])));
5864     x207 = (UINT16_C(0x239) * ((uint64_t)(arg1[10]) * (arg2[14])));
5865     x208 = (UINT16_C(0x239) * (((uint64_t)(arg1[10]) * (arg2[13])) * 0x2));
5866     x209 = (UINT16_C(0x239) * ((uint64_t)(arg1[9]) * (arg2[22])));
5867     x210 = (UINT16_C(0x239) * (((uint64_t)(arg1[9]) * (arg2[21])) * 0x2));
5868     x211 = (UINT16_C(0x239) * (((uint64_t)(arg1[9]) * (arg2[20])) * 0x2));
5869     x212 = (UINT16_C(0x239) * ((uint64_t)(arg1[9]) * (arg2[19])));
5870     x213 = (UINT16_C(0x239) * ((uint64_t)(arg1[9]) * (arg2[18])));
5871     x214 = (UINT16_C(0x239) * (((uint64_t)(arg1[9]) * (arg2[17])) * 0x2));
5872     x215 = (UINT16_C(0x239) * (((uint64_t)(arg1[9]) * (arg2[16])) * 0x2));
5873     x216 = (UINT16_C(0x239) * ((uint64_t)(arg1[9]) * (arg2[15])));
5874     x217 = (UINT16_C(0x239) * (((uint64_t)(arg1[9]) * (arg2[14])) * 0x2));
5875     x218 = (UINT16_C(0x239) * (((uint64_t)(arg1[8]) * (arg2[22])) * 0x2));
5876     x219 = (UINT16_C(0x239) * (((uint64_t)(arg1[8]) * (arg2[21])) * 0x2));
5877     x220 = (UINT16_C(0x239) * (((uint64_t)(arg1[8]) * (arg2[20])) * 0x2));
5878     x221 = (UINT16_C(0x239) * ((uint64_t)(arg1[8]) * (arg2[19])));
5879     x222 = (UINT16_C(0x239) * (((uint64_t)(arg1[8]) * (arg2[18])) * 0x2));
5880     x223 = (UINT16_C(0x239) * (((uint64_t)(arg1[8]) * (arg2[17])) * 0x2));
5881     x224 = (UINT16_C(0x239) * (((uint64_t)(arg1[8]) * (arg2[16])) * 0x2));
5882     x225 = (UINT16_C(0x239) * (((uint64_t)(arg1[8]) * (arg2[15])) * 0x2));
5883     x226 = (UINT16_C(0x239) * ((uint64_t)(arg1[7]) * (arg2[22])));
5884     x227 = (UINT16_C(0x239) * ((uint64_t)(arg1[7]) * (arg2[21])));
5885     x228 = (UINT16_C(0x239) * ((uint64_t)(arg1[7]) * (arg2[20])));
5886     x229 = (UINT16_C(0x239) * ((uint64_t)(arg1[7]) * (arg2[19])));
5887     x230 = (UINT16_C(0x239) * ((uint64_t)(arg1[7]) * (arg2[18])));
5888     x231 = (UINT16_C(0x239) * ((uint64_t)(arg1[7]) * (arg2[17])));
5889     x232 = (UINT16_C(0x239) * (((uint64_t)(arg1[7]) * (arg2[16])) * 0x2));
5890     x233 = (UINT16_C(0x239) * ((uint64_t)(arg1[6]) * (arg2[22])));
5891     x234 = (UINT16_C(0x239) * ((uint64_t)(arg1[6]) * (arg2[21])));
5892     x235 = (UINT16_C(0x239) * (((uint64_t)(arg1[6]) * (arg2[20])) * 0x2));
5893     x236 = (UINT16_C(0x239) * ((uint64_t)(arg1[6]) * (arg2[19])));
5894     x237 = (UINT16_C(0x239) * ((uint64_t)(arg1[6]) * (arg2[18])));
5895     x238 = (UINT16_C(0x239) * (((uint64_t)(arg1[6]) * (arg2[17])) * 0x2));
5896     x239 = (UINT16_C(0x239) * ((uint64_t)(arg1[5]) * (arg2[22])));
5897     x240 = (UINT16_C(0x239) * (((uint64_t)(arg1[5]) * (arg2[21])) * 0x2));
5898     x241 = (UINT16_C(0x239) * (((uint64_t)(arg1[5]) * (arg2[20])) * 0x2));
5899     x242 = (UINT16_C(0x239) * ((uint64_t)(arg1[5]) * (arg2[19])));
5900     x243 = (UINT16_C(0x239) * (((uint64_t)(arg1[5]) * (arg2[18])) * 0x2));
5901     x244 = (UINT16_C(0x239) * (((uint64_t)(arg1[4]) * (arg2[22])) * 0x2));
5902     x245 = (UINT16_C(0x239) * (((uint64_t)(arg1[4]) * (arg2[21])) * 0x2));
5903     x246 = (UINT16_C(0x239) * (((uint64_t)(arg1[4]) * (arg2[20])) * 0x2));
5904     x247 = (UINT16_C(0x239) * (((uint64_t)(arg1[4]) * (arg2[19])) * 0x2));
5905     x248 = (UINT16_C(0x239) * ((uint64_t)(arg1[3]) * (arg2[22])));
5906     x249 = (UINT16_C(0x239) * ((uint64_t)(arg1[3]) * (arg2[21])));
5907     x250 = (UINT16_C(0x239) * (((uint64_t)(arg1[3]) * (arg2[20])) * 0x2));
5908     x251 = (UINT16_C(0x239) * ((uint64_t)(arg1[2]) * (arg2[22])));
5909     x252 = (UINT16_C(0x239) * (((uint64_t)(arg1[2]) * (arg2[21])) * 0x2));
5910     x253 = (UINT16_C(0x239) * (((uint64_t)(arg1[1]) * (arg2[22])) * 0x2));
5911     x254 = ((uint64_t)(arg1[22]) * (arg2[0]));
5912     x255 = ((uint64_t)(arg1[21]) * ((arg2[1]) * 0x2));
5913     x256 = ((uint64_t)(arg1[21]) * (arg2[0]));
5914     x257 = ((uint64_t)(arg1[20]) * ((arg2[2]) * 0x2));
5915     x258 = ((uint64_t)(arg1[20]) * ((arg2[1]) * 0x2));
5916     x259 = ((uint64_t)(arg1[20]) * (arg2[0]));
5917     x260 = ((uint64_t)(arg1[19]) * (arg2[3]));
5918     x261 = ((uint64_t)(arg1[19]) * (arg2[2]));
5919     x262 = ((uint64_t)(arg1[19]) * (arg2[1]));
5920     x263 = ((uint64_t)(arg1[19]) * (arg2[0]));
5921     x264 = ((uint64_t)(arg1[18]) * ((arg2[4]) * 0x2));
5922     x265 = ((uint64_t)(arg1[18]) * (arg2[3]));
5923     x266 = ((uint64_t)(arg1[18]) * (arg2[2]));
5924     x267 = ((uint64_t)(arg1[18]) * ((arg2[1]) * 0x2));
5925     x268 = ((uint64_t)(arg1[18]) * (arg2[0]));
5926     x269 = ((uint64_t)(arg1[17]) * ((arg2[5]) * 0x2));
5927     x270 = ((uint64_t)(arg1[17]) * ((arg2[4]) * 0x2));
5928     x271 = ((uint64_t)(arg1[17]) * (arg2[3]));
5929     x272 = ((uint64_t)(arg1[17]) * ((arg2[2]) * 0x2));
5930     x273 = ((uint64_t)(arg1[17]) * ((arg2[1]) * 0x2));
5931     x274 = ((uint64_t)(arg1[17]) * (arg2[0]));
5932     x275 = ((uint64_t)(arg1[16]) * ((arg2[6]) * 0x2));
5933     x276 = ((uint64_t)(arg1[16]) * ((arg2[5]) * 0x2));
5934     x277 = ((uint64_t)(arg1[16]) * ((arg2[4]) * 0x2));
5935     x278 = ((uint64_t)(arg1[16]) * ((arg2[3]) * 0x2));
5936     x279 = ((uint64_t)(arg1[16]) * ((arg2[2]) * 0x2));
5937     x280 = ((uint64_t)(arg1[16]) * ((arg2[1]) * 0x2));
5938     x281 = ((uint64_t)(arg1[16]) * (arg2[0]));
5939     x282 = ((uint64_t)(arg1[15]) * (arg2[7]));
5940     x283 = ((uint64_t)(arg1[15]) * (arg2[6]));
5941     x284 = ((uint64_t)(arg1[15]) * (arg2[5]));
5942     x285 = ((uint64_t)(arg1[15]) * ((arg2[4]) * 0x2));
5943     x286 = ((uint64_t)(arg1[15]) * (arg2[3]));
5944     x287 = ((uint64_t)(arg1[15]) * (arg2[2]));
5945     x288 = ((uint64_t)(arg1[15]) * (arg2[1]));
5946     x289 = ((uint64_t)(arg1[15]) * (arg2[0]));
5947     x290 = ((uint64_t)(arg1[14]) * ((arg2[8]) * 0x2));
5948     x291 = ((uint64_t)(arg1[14]) * (arg2[7]));
5949     x292 = ((uint64_t)(arg1[14]) * (arg2[6]));
5950     x293 = ((uint64_t)(arg1[14]) * ((arg2[5]) * 0x2));
5951     x294 = ((uint64_t)(arg1[14]) * ((arg2[4]) * 0x2));
5952     x295 = ((uint64_t)(arg1[14]) * (arg2[3]));
5953     x296 = ((uint64_t)(arg1[14]) * (arg2[2]));
5954     x297 = ((uint64_t)(arg1[14]) * ((arg2[1]) * 0x2));
5955     x298 = ((uint64_t)(arg1[14]) * (arg2[0]));
5956     x299 = ((uint64_t)(arg1[13]) * ((arg2[9]) * 0x2));
5957     x300 = ((uint64_t)(arg1[13]) * ((arg2[8]) * 0x2));
5958     x301 = ((uint64_t)(arg1[13]) * (arg2[7]));
5959     x302 = ((uint64_t)(arg1[13]) * ((arg2[6]) * 0x2));
5960     x303 = ((uint64_t)(arg1[13]) * ((arg2[5]) * 0x2));
5961     x304 = ((uint64_t)(arg1[13]) * ((arg2[4]) * 0x2));
5962     x305 = ((uint64_t)(arg1[13]) * (arg2[3]));
5963     x306 = ((uint64_t)(arg1[13]) * ((arg2[2]) * 0x2));
5964     x307 = ((uint64_t)(arg1[13]) * ((arg2[1]) * 0x2));
5965     x308 = ((uint64_t)(arg1[13]) * (arg2[0]));
5966     x309 = ((uint64_t)(arg1[12]) * ((arg2[10]) * 0x2));
5967     x310 = ((uint64_t)(arg1[12]) * ((arg2[9]) * 0x2));
5968     x311 = ((uint64_t)(arg1[12]) * ((arg2[8]) * 0x2));
5969     x312 = ((uint64_t)(arg1[12]) * ((arg2[7]) * 0x2));
5970     x313 = ((uint64_t)(arg1[12]) * ((arg2[6]) * 0x2));
5971     x314 = ((uint64_t)(arg1[12]) * ((arg2[5]) * 0x2));
5972     x315 = ((uint64_t)(arg1[12]) * ((arg2[4]) * 0x2));
5973     x316 = ((uint64_t)(arg1[12]) * ((arg2[3]) * 0x2));
5974     x317 = ((uint64_t)(arg1[12]) * ((arg2[2]) * 0x2));
5975     x318 = ((uint64_t)(arg1[12]) * ((arg2[1]) * 0x2));
5976     x319 = ((uint64_t)(arg1[12]) * (arg2[0]));
5977     x320 = ((uint64_t)(arg1[11]) * (arg2[11]));
5978     x321 = ((uint64_t)(arg1[11]) * (arg2[10]));
5979     x322 = ((uint64_t)(arg1[11]) * (arg2[9]));
5980     x323 = ((uint64_t)(arg1[11]) * ((arg2[8]) * 0x2));
5981     x324 = ((uint64_t)(arg1[11]) * (arg2[7]));
5982     x325 = ((uint64_t)(arg1[11]) * (arg2[6]));
5983     x326 = ((uint64_t)(arg1[11]) * (arg2[5]));
5984     x327 = ((uint64_t)(arg1[11]) * ((arg2[4]) * 0x2));
5985     x328 = ((uint64_t)(arg1[11]) * (arg2[3]));
5986     x329 = ((uint64_t)(arg1[11]) * (arg2[2]));
5987     x330 = ((uint64_t)(arg1[11]) * (arg2[1]));
5988     x331 = ((uint64_t)(arg1[11]) * (arg2[0]));
5989     x332 = ((uint64_t)(arg1[10]) * ((arg2[12]) * 0x2));
5990     x333 = ((uint64_t)(arg1[10]) * (arg2[11]));
5991     x334 = ((uint64_t)(arg1[10]) * (arg2[10]));
5992     x335 = ((uint64_t)(arg1[10]) * ((arg2[9]) * 0x2));
5993     x336 = ((uint64_t)(arg1[10]) * ((arg2[8]) * 0x2));
5994     x337 = ((uint64_t)(arg1[10]) * (arg2[7]));
5995     x338 = ((uint64_t)(arg1[10]) * (arg2[6]));
5996     x339 = ((uint64_t)(arg1[10]) * ((arg2[5]) * 0x2));
5997     x340 = ((uint64_t)(arg1[10]) * ((arg2[4]) * 0x2));
5998     x341 = ((uint64_t)(arg1[10]) * (arg2[3]));
5999     x342 = ((uint64_t)(arg1[10]) * (arg2[2]));
6000     x343 = ((uint64_t)(arg1[10]) * ((arg2[1]) * 0x2));
6001     x344 = ((uint64_t)(arg1[10]) * (arg2[0]));
6002     x345 = ((uint64_t)(arg1[9]) * ((arg2[13]) * 0x2));
6003     x346 = ((uint64_t)(arg1[9]) * ((arg2[12]) * 0x2));
6004     x347 = ((uint64_t)(arg1[9]) * (arg2[11]));
6005     x348 = ((uint64_t)(arg1[9]) * ((arg2[10]) * 0x2));
6006     x349 = ((uint64_t)(arg1[9]) * ((arg2[9]) * 0x2));
6007     x350 = ((uint64_t)(arg1[9]) * ((arg2[8]) * 0x2));
6008     x351 = ((uint64_t)(arg1[9]) * (arg2[7]));
6009     x352 = ((uint64_t)(arg1[9]) * ((arg2[6]) * 0x2));
6010     x353 = ((uint64_t)(arg1[9]) * ((arg2[5]) * 0x2));
6011     x354 = ((uint64_t)(arg1[9]) * ((arg2[4]) * 0x2));
6012     x355 = ((uint64_t)(arg1[9]) * (arg2[3]));
6013     x356 = ((uint64_t)(arg1[9]) * ((arg2[2]) * 0x2));
6014     x357 = ((uint64_t)(arg1[9]) * ((arg2[1]) * 0x2));
6015     x358 = ((uint64_t)(arg1[9]) * (arg2[0]));
6016     x359 = ((uint64_t)(arg1[8]) * ((arg2[14]) * 0x2));
6017     x360 = ((uint64_t)(arg1[8]) * ((arg2[13]) * 0x2));
6018     x361 = ((uint64_t)(arg1[8]) * ((arg2[12]) * 0x2));
6019     x362 = ((uint64_t)(arg1[8]) * ((arg2[11]) * 0x2));
6020     x363 = ((uint64_t)(arg1[8]) * ((arg2[10]) * 0x2));
6021     x364 = ((uint64_t)(arg1[8]) * ((arg2[9]) * 0x2));
6022     x365 = ((uint64_t)(arg1[8]) * ((arg2[8]) * 0x2));
6023     x366 = ((uint64_t)(arg1[8]) * ((arg2[7]) * 0x2));
6024     x367 = ((uint64_t)(arg1[8]) * ((arg2[6]) * 0x2));
6025     x368 = ((uint64_t)(arg1[8]) * ((arg2[5]) * 0x2));
6026     x369 = ((uint64_t)(arg1[8]) * ((arg2[4]) * 0x2));
6027     x370 = ((uint64_t)(arg1[8]) * ((arg2[3]) * 0x2));
6028     x371 = ((uint64_t)(arg1[8]) * ((arg2[2]) * 0x2));
6029     x372 = ((uint64_t)(arg1[8]) * ((arg2[1]) * 0x2));
6030     x373 = ((uint64_t)(arg1[8]) * (arg2[0]));
6031     x374 = ((uint64_t)(arg1[7]) * (arg2[15]));
6032     x375 = ((uint64_t)(arg1[7]) * (arg2[14]));
6033     x376 = ((uint64_t)(arg1[7]) * (arg2[13]));
6034     x377 = ((uint64_t)(arg1[7]) * ((arg2[12]) * 0x2));
6035     x378 = ((uint64_t)(arg1[7]) * (arg2[11]));
6036     x379 = ((uint64_t)(arg1[7]) * (arg2[10]));
6037     x380 = ((uint64_t)(arg1[7]) * (arg2[9]));
6038     x381 = ((uint64_t)(arg1[7]) * ((arg2[8]) * 0x2));
6039     x382 = ((uint64_t)(arg1[7]) * (arg2[7]));
6040     x383 = ((uint64_t)(arg1[7]) * (arg2[6]));
6041     x384 = ((uint64_t)(arg1[7]) * (arg2[5]));
6042     x385 = ((uint64_t)(arg1[7]) * ((arg2[4]) * 0x2));
6043     x386 = ((uint64_t)(arg1[7]) * (arg2[3]));
6044     x387 = ((uint64_t)(arg1[7]) * (arg2[2]));
6045     x388 = ((uint64_t)(arg1[7]) * (arg2[1]));
6046     x389 = ((uint64_t)(arg1[7]) * (arg2[0]));
6047     x390 = ((uint64_t)(arg1[6]) * ((arg2[16]) * 0x2));
6048     x391 = ((uint64_t)(arg1[6]) * (arg2[15]));
6049     x392 = ((uint64_t)(arg1[6]) * (arg2[14]));
6050     x393 = ((uint64_t)(arg1[6]) * ((arg2[13]) * 0x2));
6051     x394 = ((uint64_t)(arg1[6]) * ((arg2[12]) * 0x2));
6052     x395 = ((uint64_t)(arg1[6]) * (arg2[11]));
6053     x396 = ((uint64_t)(arg1[6]) * (arg2[10]));
6054     x397 = ((uint64_t)(arg1[6]) * ((arg2[9]) * 0x2));
6055     x398 = ((uint64_t)(arg1[6]) * ((arg2[8]) * 0x2));
6056     x399 = ((uint64_t)(arg1[6]) * (arg2[7]));
6057     x400 = ((uint64_t)(arg1[6]) * (arg2[6]));
6058     x401 = ((uint64_t)(arg1[6]) * ((arg2[5]) * 0x2));
6059     x402 = ((uint64_t)(arg1[6]) * ((arg2[4]) * 0x2));
6060     x403 = ((uint64_t)(arg1[6]) * (arg2[3]));
6061     x404 = ((uint64_t)(arg1[6]) * (arg2[2]));
6062     x405 = ((uint64_t)(arg1[6]) * ((arg2[1]) * 0x2));
6063     x406 = ((uint64_t)(arg1[6]) * (arg2[0]));
6064     x407 = ((uint64_t)(arg1[5]) * ((arg2[17]) * 0x2));
6065     x408 = ((uint64_t)(arg1[5]) * ((arg2[16]) * 0x2));
6066     x409 = ((uint64_t)(arg1[5]) * (arg2[15]));
6067     x410 = ((uint64_t)(arg1[5]) * ((arg2[14]) * 0x2));
6068     x411 = ((uint64_t)(arg1[5]) * ((arg2[13]) * 0x2));
6069     x412 = ((uint64_t)(arg1[5]) * ((arg2[12]) * 0x2));
6070     x413 = ((uint64_t)(arg1[5]) * (arg2[11]));
6071     x414 = ((uint64_t)(arg1[5]) * ((arg2[10]) * 0x2));
6072     x415 = ((uint64_t)(arg1[5]) * ((arg2[9]) * 0x2));
6073     x416 = ((uint64_t)(arg1[5]) * ((arg2[8]) * 0x2));
6074     x417 = ((uint64_t)(arg1[5]) * (arg2[7]));
6075     x418 = ((uint64_t)(arg1[5]) * ((arg2[6]) * 0x2));
6076     x419 = ((uint64_t)(arg1[5]) * ((arg2[5]) * 0x2));
6077     x420 = ((uint64_t)(arg1[5]) * ((arg2[4]) * 0x2));
6078     x421 = ((uint64_t)(arg1[5]) * (arg2[3]));
6079     x422 = ((uint64_t)(arg1[5]) * ((arg2[2]) * 0x2));
6080     x423 = ((uint64_t)(arg1[5]) * ((arg2[1]) * 0x2));
6081     x424 = ((uint64_t)(arg1[5]) * (arg2[0]));
6082     x425 = ((uint64_t)(arg1[4]) * ((arg2[18]) * 0x2));
6083     x426 = ((uint64_t)(arg1[4]) * ((arg2[17]) * 0x2));
6084     x427 = ((uint64_t)(arg1[4]) * ((arg2[16]) * 0x2));
6085     x428 = ((uint64_t)(arg1[4]) * ((arg2[15]) * 0x2));
6086     x429 = ((uint64_t)(arg1[4]) * ((arg2[14]) * 0x2));
6087     x430 = ((uint64_t)(arg1[4]) * ((arg2[13]) * 0x2));
6088     x431 = ((uint64_t)(arg1[4]) * ((arg2[12]) * 0x2));
6089     x432 = ((uint64_t)(arg1[4]) * ((arg2[11]) * 0x2));
6090     x433 = ((uint64_t)(arg1[4]) * ((arg2[10]) * 0x2));
6091     x434 = ((uint64_t)(arg1[4]) * ((arg2[9]) * 0x2));
6092     x435 = ((uint64_t)(arg1[4]) * ((arg2[8]) * 0x2));
6093     x436 = ((uint64_t)(arg1[4]) * ((arg2[7]) * 0x2));
6094     x437 = ((uint64_t)(arg1[4]) * ((arg2[6]) * 0x2));
6095     x438 = ((uint64_t)(arg1[4]) * ((arg2[5]) * 0x2));
6096     x439 = ((uint64_t)(arg1[4]) * ((arg2[4]) * 0x2));
6097     x440 = ((uint64_t)(arg1[4]) * ((arg2[3]) * 0x2));
6098     x441 = ((uint64_t)(arg1[4]) * ((arg2[2]) * 0x2));
6099     x442 = ((uint64_t)(arg1[4]) * ((arg2[1]) * 0x2));
6100     x443 = ((uint64_t)(arg1[4]) * (arg2[0]));
6101     x444 = ((uint64_t)(arg1[3]) * (arg2[19]));
6102     x445 = ((uint64_t)(arg1[3]) * (arg2[18]));
6103     x446 = ((uint64_t)(arg1[3]) * (arg2[17]));
6104     x447 = ((uint64_t)(arg1[3]) * ((arg2[16]) * 0x2));
6105     x448 = ((uint64_t)(arg1[3]) * (arg2[15]));
6106     x449 = ((uint64_t)(arg1[3]) * (arg2[14]));
6107     x450 = ((uint64_t)(arg1[3]) * (arg2[13]));
6108     x451 = ((uint64_t)(arg1[3]) * ((arg2[12]) * 0x2));
6109     x452 = ((uint64_t)(arg1[3]) * (arg2[11]));
6110     x453 = ((uint64_t)(arg1[3]) * (arg2[10]));
6111     x454 = ((uint64_t)(arg1[3]) * (arg2[9]));
6112     x455 = ((uint64_t)(arg1[3]) * ((arg2[8]) * 0x2));
6113     x456 = ((uint64_t)(arg1[3]) * (arg2[7]));
6114     x457 = ((uint64_t)(arg1[3]) * (arg2[6]));
6115     x458 = ((uint64_t)(arg1[3]) * (arg2[5]));
6116     x459 = ((uint64_t)(arg1[3]) * ((arg2[4]) * 0x2));
6117     x460 = ((uint64_t)(arg1[3]) * (arg2[3]));
6118     x461 = ((uint64_t)(arg1[3]) * (arg2[2]));
6119     x462 = ((uint64_t)(arg1[3]) * (arg2[1]));
6120     x463 = ((uint64_t)(arg1[3]) * (arg2[0]));
6121     x464 = ((uint64_t)(arg1[2]) * ((arg2[20]) * 0x2));
6122     x465 = ((uint64_t)(arg1[2]) * (arg2[19]));
6123     x466 = ((uint64_t)(arg1[2]) * (arg2[18]));
6124     x467 = ((uint64_t)(arg1[2]) * ((arg2[17]) * 0x2));
6125     x468 = ((uint64_t)(arg1[2]) * ((arg2[16]) * 0x2));
6126     x469 = ((uint64_t)(arg1[2]) * (arg2[15]));
6127     x470 = ((uint64_t)(arg1[2]) * (arg2[14]));
6128     x471 = ((uint64_t)(arg1[2]) * ((arg2[13]) * 0x2));
6129     x472 = ((uint64_t)(arg1[2]) * ((arg2[12]) * 0x2));
6130     x473 = ((uint64_t)(arg1[2]) * (arg2[11]));
6131     x474 = ((uint64_t)(arg1[2]) * (arg2[10]));
6132     x475 = ((uint64_t)(arg1[2]) * ((arg2[9]) * 0x2));
6133     x476 = ((uint64_t)(arg1[2]) * ((arg2[8]) * 0x2));
6134     x477 = ((uint64_t)(arg1[2]) * (arg2[7]));
6135     x478 = ((uint64_t)(arg1[2]) * (arg2[6]));
6136     x479 = ((uint64_t)(arg1[2]) * ((arg2[5]) * 0x2));
6137     x480 = ((uint64_t)(arg1[2]) * ((arg2[4]) * 0x2));
6138     x481 = ((uint64_t)(arg1[2]) * (arg2[3]));
6139     x482 = ((uint64_t)(arg1[2]) * (arg2[2]));
6140     x483 = ((uint64_t)(arg1[2]) * ((arg2[1]) * 0x2));
6141     x484 = ((uint64_t)(arg1[2]) * (arg2[0]));
6142     x485 = ((uint64_t)(arg1[1]) * ((arg2[21]) * 0x2));
6143     x486 = ((uint64_t)(arg1[1]) * ((arg2[20]) * 0x2));
6144     x487 = ((uint64_t)(arg1[1]) * (arg2[19]));
6145     x488 = ((uint64_t)(arg1[1]) * ((arg2[18]) * 0x2));
6146     x489 = ((uint64_t)(arg1[1]) * ((arg2[17]) * 0x2));
6147     x490 = ((uint64_t)(arg1[1]) * ((arg2[16]) * 0x2));
6148     x491 = ((uint64_t)(arg1[1]) * (arg2[15]));
6149     x492 = ((uint64_t)(arg1[1]) * ((arg2[14]) * 0x2));
6150     x493 = ((uint64_t)(arg1[1]) * ((arg2[13]) * 0x2));
6151     x494 = ((uint64_t)(arg1[1]) * ((arg2[12]) * 0x2));
6152     x495 = ((uint64_t)(arg1[1]) * (arg2[11]));
6153     x496 = ((uint64_t)(arg1[1]) * ((arg2[10]) * 0x2));
6154     x497 = ((uint64_t)(arg1[1]) * ((arg2[9]) * 0x2));
6155     x498 = ((uint64_t)(arg1[1]) * ((arg2[8]) * 0x2));
6156     x499 = ((uint64_t)(arg1[1]) * (arg2[7]));
6157     x500 = ((uint64_t)(arg1[1]) * ((arg2[6]) * 0x2));
6158     x501 = ((uint64_t)(arg1[1]) * ((arg2[5]) * 0x2));
6159     x502 = ((uint64_t)(arg1[1]) * ((arg2[4]) * 0x2));
6160     x503 = ((uint64_t)(arg1[1]) * (arg2[3]));
6161     x504 = ((uint64_t)(arg1[1]) * ((arg2[2]) * 0x2));
6162     x505 = ((uint64_t)(arg1[1]) * ((arg2[1]) * 0x2));
6163     x506 = ((uint64_t)(arg1[1]) * (arg2[0]));
6164     x507 = ((uint64_t)(arg1[0]) * (arg2[22]));
6165     x508 = ((uint64_t)(arg1[0]) * (arg2[21]));
6166     x509 = ((uint64_t)(arg1[0]) * (arg2[20]));
6167     x510 = ((uint64_t)(arg1[0]) * (arg2[19]));
6168     x511 = ((uint64_t)(arg1[0]) * (arg2[18]));
6169     x512 = ((uint64_t)(arg1[0]) * (arg2[17]));
6170     x513 = ((uint64_t)(arg1[0]) * (arg2[16]));
6171     x514 = ((uint64_t)(arg1[0]) * (arg2[15]));
6172     x515 = ((uint64_t)(arg1[0]) * (arg2[14]));
6173     x516 = ((uint64_t)(arg1[0]) * (arg2[13]));
6174     x517 = ((uint64_t)(arg1[0]) * (arg2[12]));
6175     x518 = ((uint64_t)(arg1[0]) * (arg2[11]));
6176     x519 = ((uint64_t)(arg1[0]) * (arg2[10]));
6177     x520 = ((uint64_t)(arg1[0]) * (arg2[9]));
6178     x521 = ((uint64_t)(arg1[0]) * (arg2[8]));
6179     x522 = ((uint64_t)(arg1[0]) * (arg2[7]));
6180     x523 = ((uint64_t)(arg1[0]) * (arg2[6]));
6181     x524 = ((uint64_t)(arg1[0]) * (arg2[5]));
6182     x525 = ((uint64_t)(arg1[0]) * (arg2[4]));
6183     x526 = ((uint64_t)(arg1[0]) * (arg2[3]));
6184     x527 = ((uint64_t)(arg1[0]) * (arg2[2]));
6185     x528 = ((uint64_t)(arg1[0]) * (arg2[1]));
6186     x529 = ((uint64_t)(arg1[0]) * (arg2[0]));
6187     x530 = (x529 +
6188             (x253 +
6189              (x252 +
6190               (x250 +
6191                (x247 +
6192                 (x243 +
6193                  (x238 +
6194                   (x232 +
6195                    (x225 +
6196                     (x217 +
6197                      (x208 +
6198                       (x198 +
6199                        (x187 +
6200                         (x175 +
6201                          (x162 +
6202                           (x148 +
6203                            (x133 +
6204                             (x117 +
6205                              (x100 +
6206                               (x82 + (x63 + (x43 + x22))))))))))))))))))))));
6207     x531 = (x530 >> 23);
6208     x532 = (uint32_t)(x530 & UINT32_C(0x7fffff));
6209     x533 =
6210         (x507 +
6211          (x485 +
6212           (x464 +
6213            (x444 +
6214             (x425 +
6215              (x407 +
6216               (x390 +
6217                (x374 +
6218                 (x359 +
6219                  (x345 +
6220                   (x332 +
6221                    (x320 +
6222                     (x309 +
6223                      (x299 +
6224                       (x290 +
6225                        (x282 +
6226                         (x275 +
6227                          (x269 +
6228                           (x264 +
6229                            (x260 + (x257 + (x255 + x254))))))))))))))))))))));
6230     x534 = (x508 +
6231             (x486 +
6232              (x465 +
6233               (x445 +
6234                (x426 +
6235                 (x408 +
6236                  (x391 +
6237                   (x375 +
6238                    (x360 +
6239                     (x346 +
6240                      (x333 +
6241                       (x321 +
6242                        (x310 +
6243                         (x300 +
6244                          (x291 +
6245                           (x283 +
6246                            (x276 +
6247                             (x270 +
6248                              (x265 +
6249                               (x261 + (x258 + (x256 + x1))))))))))))))))))))));
6250     x535 = (x509 +
6251             (x487 +
6252              (x466 +
6253               (x446 +
6254                (x427 +
6255                 (x409 +
6256                  (x392 +
6257                   (x376 +
6258                    (x361 +
6259                     (x347 +
6260                      (x334 +
6261                       (x322 +
6262                        (x311 +
6263                         (x301 +
6264                          (x292 +
6265                           (x284 +
6266                            (x277 +
6267                             (x271 +
6268                              (x266 +
6269                               (x262 + (x259 + (x23 + x2))))))))))))))))))))));
6270     x536 = (x510 +
6271             (x488 +
6272              (x467 +
6273               (x447 +
6274                (x428 +
6275                 (x410 +
6276                  (x393 +
6277                   (x377 +
6278                    (x362 +
6279                     (x348 +
6280                      (x335 +
6281                       (x323 +
6282                        (x312 +
6283                         (x302 +
6284                          (x293 +
6285                           (x285 +
6286                            (x278 +
6287                             (x272 +
6288                              (x267 +
6289                               (x263 + (x44 + (x24 + x3))))))))))))))))))))));
6290     x537 =
6291         (x511 +
6292          (x489 +
6293           (x468 +
6294            (x448 +
6295             (x429 +
6296              (x411 +
6297               (x394 +
6298                (x378 +
6299                 (x363 +
6300                  (x349 +
6301                   (x336 +
6302                    (x324 +
6303                     (x313 +
6304                      (x303 +
6305                       (x294 +
6306                        (x286 +
6307                         (x279 +
6308                          (x273 +
6309                           (x268 + (x64 + (x45 + (x25 + x4))))))))))))))))))))));
6310     x538 =
6311         (x512 +
6312          (x490 +
6313           (x469 +
6314            (x449 +
6315             (x430 +
6316              (x412 +
6317               (x395 +
6318                (x379 +
6319                 (x364 +
6320                  (x350 +
6321                   (x337 +
6322                    (x325 +
6323                     (x314 +
6324                      (x304 +
6325                       (x295 +
6326                        (x287 +
6327                         (x280 +
6328                          (x274 +
6329                           (x83 + (x65 + (x46 + (x26 + x5))))))))))))))))))))));
6330     x539 =
6331         (x513 +
6332          (x491 +
6333           (x470 +
6334            (x450 +
6335             (x431 +
6336              (x413 +
6337               (x396 +
6338                (x380 +
6339                 (x365 +
6340                  (x351 +
6341                   (x338 +
6342                    (x326 +
6343                     (x315 +
6344                      (x305 +
6345                       (x296 +
6346                        (x288 +
6347                         (x281 +
6348                          (x101 +
6349                           (x84 + (x66 + (x47 + (x27 + x6))))))))))))))))))))));
6350     x540 =
6351         (x514 +
6352          (x492 +
6353           (x471 +
6354            (x451 +
6355             (x432 +
6356              (x414 +
6357               (x397 +
6358                (x381 +
6359                 (x366 +
6360                  (x352 +
6361                   (x339 +
6362                    (x327 +
6363                     (x316 +
6364                      (x306 +
6365                       (x297 +
6366                        (x289 +
6367                         (x118 +
6368                          (x102 +
6369                           (x85 + (x67 + (x48 + (x28 + x7))))))))))))))))))))));
6370     x541 =
6371         (x515 +
6372          (x493 +
6373           (x472 +
6374            (x452 +
6375             (x433 +
6376              (x415 +
6377               (x398 +
6378                (x382 +
6379                 (x367 +
6380                  (x353 +
6381                   (x340 +
6382                    (x328 +
6383                     (x317 +
6384                      (x307 +
6385                       (x298 +
6386                        (x134 +
6387                         (x119 +
6388                          (x103 +
6389                           (x86 + (x68 + (x49 + (x29 + x8))))))))))))))))))))));
6390     x542 =
6391         (x516 +
6392          (x494 +
6393           (x473 +
6394            (x453 +
6395             (x434 +
6396              (x416 +
6397               (x399 +
6398                (x383 +
6399                 (x368 +
6400                  (x354 +
6401                   (x341 +
6402                    (x329 +
6403                     (x318 +
6404                      (x308 +
6405                       (x149 +
6406                        (x135 +
6407                         (x120 +
6408                          (x104 +
6409                           (x87 + (x69 + (x50 + (x30 + x9))))))))))))))))))))));
6410     x543 =
6411         (x517 +
6412          (x495 +
6413           (x474 +
6414            (x454 +
6415             (x435 +
6416              (x417 +
6417               (x400 +
6418                (x384 +
6419                 (x369 +
6420                  (x355 +
6421                   (x342 +
6422                    (x330 +
6423                     (x319 +
6424                      (x163 +
6425                       (x150 +
6426                        (x136 +
6427                         (x121 +
6428                          (x105 +
6429                           (x88 + (x70 + (x51 + (x31 + x10))))))))))))))))))))));
6430     x544 =
6431         (x518 +
6432          (x496 +
6433           (x475 +
6434            (x455 +
6435             (x436 +
6436              (x418 +
6437               (x401 +
6438                (x385 +
6439                 (x370 +
6440                  (x356 +
6441                   (x343 +
6442                    (x331 +
6443                     (x176 +
6444                      (x164 +
6445                       (x151 +
6446                        (x137 +
6447                         (x122 +
6448                          (x106 +
6449                           (x89 + (x71 + (x52 + (x32 + x11))))))))))))))))))))));
6450     x545 =
6451         (x519 +
6452          (x497 +
6453           (x476 +
6454            (x456 +
6455             (x437 +
6456              (x419 +
6457               (x402 +
6458                (x386 +
6459                 (x371 +
6460                  (x357 +
6461                   (x344 +
6462                    (x188 +
6463                     (x177 +
6464                      (x165 +
6465                       (x152 +
6466                        (x138 +
6467                         (x123 +
6468                          (x107 +
6469                           (x90 + (x72 + (x53 + (x33 + x12))))))))))))))))))))));
6470     x546 =
6471         (x520 +
6472          (x498 +
6473           (x477 +
6474            (x457 +
6475             (x438 +
6476              (x420 +
6477               (x403 +
6478                (x387 +
6479                 (x372 +
6480                  (x358 +
6481                   (x199 +
6482                    (x189 +
6483                     (x178 +
6484                      (x166 +
6485                       (x153 +
6486                        (x139 +
6487                         (x124 +
6488                          (x108 +
6489                           (x91 + (x73 + (x54 + (x34 + x13))))))))))))))))))))));
6490     x547 =
6491         (x521 +
6492          (x499 +
6493           (x478 +
6494            (x458 +
6495             (x439 +
6496              (x421 +
6497               (x404 +
6498                (x388 +
6499                 (x373 +
6500                  (x209 +
6501                   (x200 +
6502                    (x190 +
6503                     (x179 +
6504                      (x167 +
6505                       (x154 +
6506                        (x140 +
6507                         (x125 +
6508                          (x109 +
6509                           (x92 + (x74 + (x55 + (x35 + x14))))))))))))))))))))));
6510     x548 =
6511         (x522 +
6512          (x500 +
6513           (x479 +
6514            (x459 +
6515             (x440 +
6516              (x422 +
6517               (x405 +
6518                (x389 +
6519                 (x218 +
6520                  (x210 +
6521                   (x201 +
6522                    (x191 +
6523                     (x180 +
6524                      (x168 +
6525                       (x155 +
6526                        (x141 +
6527                         (x126 +
6528                          (x110 +
6529                           (x93 + (x75 + (x56 + (x36 + x15))))))))))))))))))))));
6530     x549 =
6531         (x523 +
6532          (x501 +
6533           (x480 +
6534            (x460 +
6535             (x441 +
6536              (x423 +
6537               (x406 +
6538                (x226 +
6539                 (x219 +
6540                  (x211 +
6541                   (x202 +
6542                    (x192 +
6543                     (x181 +
6544                      (x169 +
6545                       (x156 +
6546                        (x142 +
6547                         (x127 +
6548                          (x111 +
6549                           (x94 + (x76 + (x57 + (x37 + x16))))))))))))))))))))));
6550     x550 =
6551         (x524 +
6552          (x502 +
6553           (x481 +
6554            (x461 +
6555             (x442 +
6556              (x424 +
6557               (x233 +
6558                (x227 +
6559                 (x220 +
6560                  (x212 +
6561                   (x203 +
6562                    (x193 +
6563                     (x182 +
6564                      (x170 +
6565                       (x157 +
6566                        (x143 +
6567                         (x128 +
6568                          (x112 +
6569                           (x95 + (x77 + (x58 + (x38 + x17))))))))))))))))))))));
6570     x551 =
6571         (x525 +
6572          (x503 +
6573           (x482 +
6574            (x462 +
6575             (x443 +
6576              (x239 +
6577               (x234 +
6578                (x228 +
6579                 (x221 +
6580                  (x213 +
6581                   (x204 +
6582                    (x194 +
6583                     (x183 +
6584                      (x171 +
6585                       (x158 +
6586                        (x144 +
6587                         (x129 +
6588                          (x113 +
6589                           (x96 + (x78 + (x59 + (x39 + x18))))))))))))))))))))));
6590     x552 =
6591         (x526 +
6592          (x504 +
6593           (x483 +
6594            (x463 +
6595             (x244 +
6596              (x240 +
6597               (x235 +
6598                (x229 +
6599                 (x222 +
6600                  (x214 +
6601                   (x205 +
6602                    (x195 +
6603                     (x184 +
6604                      (x172 +
6605                       (x159 +
6606                        (x145 +
6607                         (x130 +
6608                          (x114 +
6609                           (x97 + (x79 + (x60 + (x40 + x19))))))))))))))))))))));
6610     x553 =
6611         (x527 +
6612          (x505 +
6613           (x484 +
6614            (x248 +
6615             (x245 +
6616              (x241 +
6617               (x236 +
6618                (x230 +
6619                 (x223 +
6620                  (x215 +
6621                   (x206 +
6622                    (x196 +
6623                     (x185 +
6624                      (x173 +
6625                       (x160 +
6626                        (x146 +
6627                         (x131 +
6628                          (x115 +
6629                           (x98 + (x80 + (x61 + (x41 + x20))))))))))))))))))))));
6630     x554 =
6631         (x528 +
6632          (x506 +
6633           (x251 +
6634            (x249 +
6635             (x246 +
6636              (x242 +
6637               (x237 +
6638                (x231 +
6639                 (x224 +
6640                  (x216 +
6641                   (x207 +
6642                    (x197 +
6643                     (x186 +
6644                      (x174 +
6645                       (x161 +
6646                        (x147 +
6647                         (x132 +
6648                          (x116 +
6649                           (x99 + (x81 + (x62 + (x42 + x21))))))))))))))))))))));
6650     x555 = (x531 + x554);
6651     x556 = (x555 >> 22);
6652     x557 = (uint32_t)(x555 & UINT32_C(0x3fffff));
6653     x558 = (x556 + x553);
6654     x559 = (x558 >> 22);
6655     x560 = (uint32_t)(x558 & UINT32_C(0x3fffff));
6656     x561 = (x559 + x552);
6657     x562 = (x561 >> 23);
6658     x563 = (uint32_t)(x561 & UINT32_C(0x7fffff));
6659     x564 = (x562 + x551);
6660     x565 = (x564 >> 22);
6661     x566 = (uint32_t)(x564 & UINT32_C(0x3fffff));
6662     x567 = (x565 + x550);
6663     x568 = (x567 >> 22);
6664     x569 = (uint32_t)(x567 & UINT32_C(0x3fffff));
6665     x570 = (x568 + x549);
6666     x571 = (x570 >> 22);
6667     x572 = (uint32_t)(x570 & UINT32_C(0x3fffff));
6668     x573 = (x571 + x548);
6669     x574 = (x573 >> 23);
6670     x575 = (uint32_t)(x573 & UINT32_C(0x7fffff));
6671     x576 = (x574 + x547);
6672     x577 = (x576 >> 22);
6673     x578 = (uint32_t)(x576 & UINT32_C(0x3fffff));
6674     x579 = (x577 + x546);
6675     x580 = (x579 >> 22);
6676     x581 = (uint32_t)(x579 & UINT32_C(0x3fffff));
6677     x582 = (x580 + x545);
6678     x583 = (x582 >> 22);
6679     x584 = (uint32_t)(x582 & UINT32_C(0x3fffff));
6680     x585 = (x583 + x544);
6681     x586 = (x585 >> 23);
6682     x587 = (uint32_t)(x585 & UINT32_C(0x7fffff));
6683     x588 = (x586 + x543);
6684     x589 = (x588 >> 22);
6685     x590 = (uint32_t)(x588 & UINT32_C(0x3fffff));
6686     x591 = (x589 + x542);
6687     x592 = (x591 >> 22);
6688     x593 = (uint32_t)(x591 & UINT32_C(0x3fffff));
6689     x594 = (x592 + x541);
6690     x595 = (x594 >> 22);
6691     x596 = (uint32_t)(x594 & UINT32_C(0x3fffff));
6692     x597 = (x595 + x540);
6693     x598 = (x597 >> 23);
6694     x599 = (uint32_t)(x597 & UINT32_C(0x7fffff));
6695     x600 = (x598 + x539);
6696     x601 = (x600 >> 22);
6697     x602 = (uint32_t)(x600 & UINT32_C(0x3fffff));
6698     x603 = (x601 + x538);
6699     x604 = (x603 >> 22);
6700     x605 = (uint32_t)(x603 & UINT32_C(0x3fffff));
6701     x606 = (x604 + x537);
6702     x607 = (x606 >> 22);
6703     x608 = (uint32_t)(x606 & UINT32_C(0x3fffff));
6704     x609 = (x607 + x536);
6705     x610 = (x609 >> 23);
6706     x611 = (uint32_t)(x609 & UINT32_C(0x7fffff));
6707     x612 = (x610 + x535);
6708     x613 = (x612 >> 22);
6709     x614 = (uint32_t)(x612 & UINT32_C(0x3fffff));
6710     x615 = (x613 + x534);
6711     x616 = (x615 >> 22);
6712     x617 = (uint32_t)(x615 & UINT32_C(0x3fffff));
6713     x618 = (x616 + x533);
6714     x619 = (uint32_t)(x618 >> 22);
6715     x620 = (uint32_t)(x618 & UINT32_C(0x3fffff));
6716     x621 = ((uint64_t)UINT16_C(0x239) * x619);
6717     x622 = (x532 + x621);
6718     x623 = (uint32_t)(x622 >> 23);
6719     x624 = (uint32_t)(x622 & UINT32_C(0x7fffff));
6720     x625 = (x623 + x557);
6721     x626 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x625 >> 22);
6722     x627 = (x625 & UINT32_C(0x3fffff));
6723     x628 = (x626 + x560);
6724     out1[0] = x624;
6725     out1[1] = x627;
6726     out1[2] = x628;
6727     out1[3] = x563;
6728     out1[4] = x566;
6729     out1[5] = x569;
6730     out1[6] = x572;
6731     out1[7] = x575;
6732     out1[8] = x578;
6733     out1[9] = x581;
6734     out1[10] = x584;
6735     out1[11] = x587;
6736     out1[12] = x590;
6737     out1[13] = x593;
6738     out1[14] = x596;
6739     out1[15] = x599;
6740     out1[16] = x602;
6741     out1[17] = x605;
6742     out1[18] = x608;
6743     out1[19] = x611;
6744     out1[20] = x614;
6745     out1[21] = x617;
6746     out1[22] = x620;
6747 }
6748
6749 /*
6750  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square squares a field element and reduces the result.
6751  * Postconditions:
6752  *   eval out1 mod m = (eval arg1 * eval arg1) mod m
6753  *
6754  * Input Bounds:
6755  *   arg1: [[0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000]]
6756  * Output Bounds:
6757  *   out1: [[0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000]]
6758  */
6759 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(
6760     uint32_t out1[23], const uint32_t arg1[23]) {
6761     uint64_t x1;
6762     uint64_t x2;
6763     uint32_t x3;
6764     uint64_t x4;
6765     uint64_t x5;
6766     uint32_t x6;
6767     uint64_t x7;
6768     uint64_t x8;
6769     uint32_t x9;
6770     uint64_t x10;
6771     uint64_t x11;
6772     uint32_t x12;
6773     uint64_t x13;
6774     uint64_t x14;
6775     uint32_t x15;
6776     uint64_t x16;
6777     uint64_t x17;
6778     uint32_t x18;
6779     uint64_t x19;
6780     uint64_t x20;
6781     uint32_t x21;
6782     uint64_t x22;
6783     uint64_t x23;
6784     uint32_t x24;
6785     uint64_t x25;
6786     uint64_t x26;
6787     uint32_t x27;
6788     uint64_t x28;
6789     uint64_t x29;
6790     uint32_t x30;
6791     uint64_t x31;
6792     uint64_t x32;
6793     uint32_t x33;
6794     uint32_t x34;
6795     uint32_t x35;
6796     uint32_t x36;
6797     uint32_t x37;
6798     uint32_t x38;
6799     uint32_t x39;
6800     uint32_t x40;
6801     uint32_t x41;
6802     uint32_t x42;
6803     uint32_t x43;
6804     uint32_t x44;
6805     uint64_t x45;
6806     uint64_t x46;
6807     uint64_t x47;
6808     uint64_t x48;
6809     uint64_t x49;
6810     uint64_t x50;
6811     uint64_t x51;
6812     uint64_t x52;
6813     uint64_t x53;
6814     uint64_t x54;
6815     uint64_t x55;
6816     uint64_t x56;
6817     uint64_t x57;
6818     uint64_t x58;
6819     uint64_t x59;
6820     uint64_t x60;
6821     uint64_t x61;
6822     uint64_t x62;
6823     uint64_t x63;
6824     uint64_t x64;
6825     uint64_t x65;
6826     uint64_t x66;
6827     uint64_t x67;
6828     uint64_t x68;
6829     uint64_t x69;
6830     uint64_t x70;
6831     uint64_t x71;
6832     uint64_t x72;
6833     uint64_t x73;
6834     uint64_t x74;
6835     uint64_t x75;
6836     uint64_t x76;
6837     uint64_t x77;
6838     uint64_t x78;
6839     uint64_t x79;
6840     uint64_t x80;
6841     uint64_t x81;
6842     uint64_t x82;
6843     uint64_t x83;
6844     uint64_t x84;
6845     uint64_t x85;
6846     uint64_t x86;
6847     uint64_t x87;
6848     uint64_t x88;
6849     uint64_t x89;
6850     uint64_t x90;
6851     uint64_t x91;
6852     uint64_t x92;
6853     uint64_t x93;
6854     uint64_t x94;
6855     uint64_t x95;
6856     uint64_t x96;
6857     uint64_t x97;
6858     uint64_t x98;
6859     uint64_t x99;
6860     uint64_t x100;
6861     uint64_t x101;
6862     uint64_t x102;
6863     uint64_t x103;
6864     uint64_t x104;
6865     uint64_t x105;
6866     uint64_t x106;
6867     uint64_t x107;
6868     uint64_t x108;
6869     uint64_t x109;
6870     uint64_t x110;
6871     uint64_t x111;
6872     uint64_t x112;
6873     uint64_t x113;
6874     uint64_t x114;
6875     uint64_t x115;
6876     uint64_t x116;
6877     uint64_t x117;
6878     uint64_t x118;
6879     uint64_t x119;
6880     uint64_t x120;
6881     uint64_t x121;
6882     uint64_t x122;
6883     uint64_t x123;
6884     uint64_t x124;
6885     uint64_t x125;
6886     uint64_t x126;
6887     uint64_t x127;
6888     uint64_t x128;
6889     uint64_t x129;
6890     uint64_t x130;
6891     uint64_t x131;
6892     uint64_t x132;
6893     uint64_t x133;
6894     uint64_t x134;
6895     uint64_t x135;
6896     uint64_t x136;
6897     uint64_t x137;
6898     uint64_t x138;
6899     uint64_t x139;
6900     uint64_t x140;
6901     uint64_t x141;
6902     uint64_t x142;
6903     uint64_t x143;
6904     uint64_t x144;
6905     uint64_t x145;
6906     uint64_t x146;
6907     uint64_t x147;
6908     uint64_t x148;
6909     uint64_t x149;
6910     uint64_t x150;
6911     uint64_t x151;
6912     uint64_t x152;
6913     uint64_t x153;
6914     uint64_t x154;
6915     uint64_t x155;
6916     uint64_t x156;
6917     uint64_t x157;
6918     uint64_t x158;
6919     uint64_t x159;
6920     uint64_t x160;
6921     uint64_t x161;
6922     uint64_t x162;
6923     uint64_t x163;
6924     uint64_t x164;
6925     uint64_t x165;
6926     uint64_t x166;
6927     uint64_t x167;
6928     uint64_t x168;
6929     uint64_t x169;
6930     uint64_t x170;
6931     uint64_t x171;
6932     uint64_t x172;
6933     uint64_t x173;
6934     uint64_t x174;
6935     uint64_t x175;
6936     uint64_t x176;
6937     uint64_t x177;
6938     uint64_t x178;
6939     uint64_t x179;
6940     uint64_t x180;
6941     uint64_t x181;
6942     uint64_t x182;
6943     uint64_t x183;
6944     uint64_t x184;
6945     uint64_t x185;
6946     uint64_t x186;
6947     uint64_t x187;
6948     uint64_t x188;
6949     uint64_t x189;
6950     uint64_t x190;
6951     uint64_t x191;
6952     uint64_t x192;
6953     uint64_t x193;
6954     uint64_t x194;
6955     uint64_t x195;
6956     uint64_t x196;
6957     uint64_t x197;
6958     uint64_t x198;
6959     uint64_t x199;
6960     uint64_t x200;
6961     uint64_t x201;
6962     uint64_t x202;
6963     uint64_t x203;
6964     uint64_t x204;
6965     uint64_t x205;
6966     uint64_t x206;
6967     uint64_t x207;
6968     uint64_t x208;
6969     uint64_t x209;
6970     uint64_t x210;
6971     uint64_t x211;
6972     uint64_t x212;
6973     uint64_t x213;
6974     uint64_t x214;
6975     uint64_t x215;
6976     uint64_t x216;
6977     uint64_t x217;
6978     uint64_t x218;
6979     uint64_t x219;
6980     uint64_t x220;
6981     uint64_t x221;
6982     uint64_t x222;
6983     uint64_t x223;
6984     uint64_t x224;
6985     uint64_t x225;
6986     uint64_t x226;
6987     uint64_t x227;
6988     uint64_t x228;
6989     uint64_t x229;
6990     uint64_t x230;
6991     uint64_t x231;
6992     uint64_t x232;
6993     uint64_t x233;
6994     uint64_t x234;
6995     uint64_t x235;
6996     uint64_t x236;
6997     uint64_t x237;
6998     uint64_t x238;
6999     uint64_t x239;
7000     uint64_t x240;
7001     uint64_t x241;
7002     uint64_t x242;
7003     uint64_t x243;
7004     uint64_t x244;
7005     uint64_t x245;
7006     uint64_t x246;
7007     uint64_t x247;
7008     uint64_t x248;
7009     uint64_t x249;
7010     uint64_t x250;
7011     uint64_t x251;
7012     uint64_t x252;
7013     uint64_t x253;
7014     uint64_t x254;
7015     uint64_t x255;
7016     uint64_t x256;
7017     uint64_t x257;
7018     uint64_t x258;
7019     uint64_t x259;
7020     uint64_t x260;
7021     uint64_t x261;
7022     uint64_t x262;
7023     uint64_t x263;
7024     uint64_t x264;
7025     uint64_t x265;
7026     uint64_t x266;
7027     uint64_t x267;
7028     uint64_t x268;
7029     uint64_t x269;
7030     uint64_t x270;
7031     uint64_t x271;
7032     uint64_t x272;
7033     uint64_t x273;
7034     uint64_t x274;
7035     uint64_t x275;
7036     uint64_t x276;
7037     uint64_t x277;
7038     uint64_t x278;
7039     uint64_t x279;
7040     uint64_t x280;
7041     uint64_t x281;
7042     uint64_t x282;
7043     uint64_t x283;
7044     uint64_t x284;
7045     uint64_t x285;
7046     uint64_t x286;
7047     uint64_t x287;
7048     uint64_t x288;
7049     uint64_t x289;
7050     uint64_t x290;
7051     uint64_t x291;
7052     uint64_t x292;
7053     uint64_t x293;
7054     uint64_t x294;
7055     uint64_t x295;
7056     uint64_t x296;
7057     uint64_t x297;
7058     uint64_t x298;
7059     uint64_t x299;
7060     uint64_t x300;
7061     uint64_t x301;
7062     uint64_t x302;
7063     uint64_t x303;
7064     uint64_t x304;
7065     uint64_t x305;
7066     uint64_t x306;
7067     uint64_t x307;
7068     uint64_t x308;
7069     uint64_t x309;
7070     uint64_t x310;
7071     uint64_t x311;
7072     uint64_t x312;
7073     uint64_t x313;
7074     uint64_t x314;
7075     uint64_t x315;
7076     uint64_t x316;
7077     uint64_t x317;
7078     uint64_t x318;
7079     uint64_t x319;
7080     uint64_t x320;
7081     uint64_t x321;
7082     uint64_t x322;
7083     uint32_t x323;
7084     uint64_t x324;
7085     uint64_t x325;
7086     uint64_t x326;
7087     uint64_t x327;
7088     uint64_t x328;
7089     uint64_t x329;
7090     uint64_t x330;
7091     uint64_t x331;
7092     uint64_t x332;
7093     uint64_t x333;
7094     uint64_t x334;
7095     uint64_t x335;
7096     uint64_t x336;
7097     uint64_t x337;
7098     uint64_t x338;
7099     uint64_t x339;
7100     uint64_t x340;
7101     uint64_t x341;
7102     uint64_t x342;
7103     uint64_t x343;
7104     uint64_t x344;
7105     uint64_t x345;
7106     uint64_t x346;
7107     uint64_t x347;
7108     uint32_t x348;
7109     uint64_t x349;
7110     uint64_t x350;
7111     uint32_t x351;
7112     uint64_t x352;
7113     uint64_t x353;
7114     uint32_t x354;
7115     uint64_t x355;
7116     uint64_t x356;
7117     uint32_t x357;
7118     uint64_t x358;
7119     uint64_t x359;
7120     uint32_t x360;
7121     uint64_t x361;
7122     uint64_t x362;
7123     uint32_t x363;
7124     uint64_t x364;
7125     uint64_t x365;
7126     uint32_t x366;
7127     uint64_t x367;
7128     uint64_t x368;
7129     uint32_t x369;
7130     uint64_t x370;
7131     uint64_t x371;
7132     uint32_t x372;
7133     uint64_t x373;
7134     uint64_t x374;
7135     uint32_t x375;
7136     uint64_t x376;
7137     uint64_t x377;
7138     uint32_t x378;
7139     uint64_t x379;
7140     uint64_t x380;
7141     uint32_t x381;
7142     uint64_t x382;
7143     uint64_t x383;
7144     uint32_t x384;
7145     uint64_t x385;
7146     uint64_t x386;
7147     uint32_t x387;
7148     uint64_t x388;
7149     uint64_t x389;
7150     uint32_t x390;
7151     uint64_t x391;
7152     uint64_t x392;
7153     uint32_t x393;
7154     uint64_t x394;
7155     uint64_t x395;
7156     uint32_t x396;
7157     uint64_t x397;
7158     uint64_t x398;
7159     uint32_t x399;
7160     uint64_t x400;
7161     uint64_t x401;
7162     uint32_t x402;
7163     uint64_t x403;
7164     uint64_t x404;
7165     uint32_t x405;
7166     uint64_t x406;
7167     uint64_t x407;
7168     uint32_t x408;
7169     uint64_t x409;
7170     uint32_t x410;
7171     uint32_t x411;
7172     uint64_t x412;
7173     uint64_t x413;
7174     uint32_t x414;
7175     uint32_t x415;
7176     uint32_t x416;
7177     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x417;
7178     uint32_t x418;
7179     uint32_t x419;
7180     x1 = ((uint64_t)(arg1[22]) * UINT16_C(0x239));
7181     x2 = (x1 * 0x2);
7182     x3 = ((arg1[22]) * 0x2);
7183     x4 = ((uint64_t)(arg1[21]) * UINT16_C(0x239));
7184     x5 = (x4 * 0x2);
7185     x6 = ((arg1[21]) * 0x2);
7186     x7 = ((uint64_t)(arg1[20]) * UINT16_C(0x239));
7187     x8 = (x7 * 0x2);
7188     x9 = ((arg1[20]) * 0x2);
7189     x10 = ((uint64_t)(arg1[19]) * UINT16_C(0x239));
7190     x11 = (x10 * 0x2);
7191     x12 = ((arg1[19]) * 0x2);
7192     x13 = ((uint64_t)(arg1[18]) * UINT16_C(0x239));
7193     x14 = (x13 * 0x2);
7194     x15 = ((arg1[18]) * 0x2);
7195     x16 = ((uint64_t)(arg1[17]) * UINT16_C(0x239));
7196     x17 = (x16 * 0x2);
7197     x18 = ((arg1[17]) * 0x2);
7198     x19 = ((uint64_t)(arg1[16]) * UINT16_C(0x239));
7199     x20 = (x19 * 0x2);
7200     x21 = ((arg1[16]) * 0x2);
7201     x22 = ((uint64_t)(arg1[15]) * UINT16_C(0x239));
7202     x23 = (x22 * 0x2);
7203     x24 = ((arg1[15]) * 0x2);
7204     x25 = ((uint64_t)(arg1[14]) * UINT16_C(0x239));
7205     x26 = (x25 * 0x2);
7206     x27 = ((arg1[14]) * 0x2);
7207     x28 = ((uint64_t)(arg1[13]) * UINT16_C(0x239));
7208     x29 = (x28 * 0x2);
7209     x30 = ((arg1[13]) * 0x2);
7210     x31 = ((uint64_t)(arg1[12]) * UINT16_C(0x239));
7211     x32 = (x31 * 0x2);
7212     x33 = ((arg1[12]) * 0x2);
7213     x34 = ((arg1[11]) * 0x2);
7214     x35 = ((arg1[10]) * 0x2);
7215     x36 = ((arg1[9]) * 0x2);
7216     x37 = ((arg1[8]) * 0x2);
7217     x38 = ((arg1[7]) * 0x2);
7218     x39 = ((arg1[6]) * 0x2);
7219     x40 = ((arg1[5]) * 0x2);
7220     x41 = ((arg1[4]) * 0x2);
7221     x42 = ((arg1[3]) * 0x2);
7222     x43 = ((arg1[2]) * 0x2);
7223     x44 = ((arg1[1]) * 0x2);
7224     x45 = ((arg1[22]) * x1);
7225     x46 = ((arg1[21]) * x2);
7226     x47 = ((arg1[21]) * (x4 * 0x2));
7227     x48 = ((arg1[20]) * (x2 * 0x2));
7228     x49 = ((arg1[20]) * (x5 * 0x2));
7229     x50 = ((arg1[20]) * (x7 * 0x2));
7230     x51 = ((arg1[19]) * x2);
7231     x52 = ((arg1[19]) * x5);
7232     x53 = ((arg1[19]) * x8);
7233     x54 = ((arg1[19]) * x10);
7234     x55 = ((arg1[18]) * x2);
7235     x56 = ((arg1[18]) * x5);
7236     x57 = ((arg1[18]) * (x8 * 0x2));
7237     x58 = ((arg1[18]) * x11);
7238     x59 = ((arg1[18]) * x13);
7239     x60 = ((arg1[17]) * x2);
7240     x61 = ((arg1[17]) * (x5 * 0x2));
7241     x62 = ((arg1[17]) * (x8 * 0x2));
7242     x63 = ((arg1[17]) * x11);
7243     x64 = ((arg1[17]) * x14);
7244     x65 = ((arg1[17]) * (x16 * 0x2));
7245     x66 = ((arg1[16]) * (x2 * 0x2));
7246     x67 = ((arg1[16]) * (x5 * 0x2));
7247     x68 = ((arg1[16]) * (x8 * 0x2));
7248     x69 = ((arg1[16]) * x11);
7249     x70 = ((arg1[16]) * (x14 * 0x2));
7250     x71 = ((arg1[16]) * (x17 * 0x2));
7251     x72 = ((arg1[16]) * (x19 * 0x2));
7252     x73 = ((arg1[15]) * x2);
7253     x74 = ((arg1[15]) * x5);
7254     x75 = ((arg1[15]) * x8);
7255     x76 = ((arg1[15]) * x11);
7256     x77 = ((arg1[15]) * x14);
7257     x78 = ((arg1[15]) * x17);
7258     x79 = ((arg1[15]) * x20);
7259     x80 = ((arg1[15]) * x22);
7260     x81 = ((arg1[14]) * x2);
7261     x82 = ((arg1[14]) * x5);
7262     x83 = ((arg1[14]) * (x8 * 0x2));
7263     x84 = ((arg1[14]) * x11);
7264     x85 = ((arg1[14]) * x14);
7265     x86 = ((arg1[14]) * x17);
7266     x87 = ((arg1[14]) * (x20 * 0x2));
7267     x88 = ((arg1[14]) * x23);
7268     x89 = ((arg1[14]) * x25);
7269     x90 = ((arg1[13]) * x2);
7270     x91 = ((arg1[13]) * (x5 * 0x2));
7271     x92 = ((arg1[13]) * (x8 * 0x2));
7272     x93 = ((arg1[13]) * x11);
7273     x94 = ((arg1[13]) * x14);
7274     x95 = ((arg1[13]) * (x17 * 0x2));
7275     x96 = ((arg1[13]) * (x20 * 0x2));
7276     x97 = ((arg1[13]) * x23);
7277     x98 = ((arg1[13]) * x26);
7278     x99 = ((arg1[13]) * (x28 * 0x2));
7279     x100 = ((arg1[12]) * (x2 * 0x2));
7280     x101 = ((arg1[12]) * (x5 * 0x2));
7281     x102 = ((arg1[12]) * (x8 * 0x2));
7282     x103 = ((arg1[12]) * x11);
7283     x104 = ((arg1[12]) * (x14 * 0x2));
7284     x105 = ((arg1[12]) * (x17 * 0x2));
7285     x106 = ((arg1[12]) * (x20 * 0x2));
7286     x107 = ((arg1[12]) * x23);
7287     x108 = ((arg1[12]) * (x26 * 0x2));
7288     x109 = ((arg1[12]) * (x29 * 0x2));
7289     x110 = ((arg1[12]) * (x31 * 0x2));
7290     x111 = ((arg1[11]) * x2);
7291     x112 = ((arg1[11]) * x5);
7292     x113 = ((arg1[11]) * x8);
7293     x114 = ((arg1[11]) * x11);
7294     x115 = ((arg1[11]) * x14);
7295     x116 = ((arg1[11]) * x17);
7296     x117 = ((arg1[11]) * x20);
7297     x118 = ((arg1[11]) * x23);
7298     x119 = ((arg1[11]) * x26);
7299     x120 = ((arg1[11]) * x29);
7300     x121 = ((arg1[11]) * (x32 * 0x2));
7301     x122 = ((uint64_t)(arg1[11]) * (arg1[11]));
7302     x123 = ((arg1[10]) * x2);
7303     x124 = ((arg1[10]) * x5);
7304     x125 = ((arg1[10]) * (x8 * 0x2));
7305     x126 = ((arg1[10]) * x11);
7306     x127 = ((arg1[10]) * x14);
7307     x128 = ((arg1[10]) * x17);
7308     x129 = ((arg1[10]) * (x20 * 0x2));
7309     x130 = ((arg1[10]) * x23);
7310     x131 = ((arg1[10]) * x26);
7311     x132 = ((arg1[10]) * (x29 * 0x2));
7312     x133 = ((uint64_t)(arg1[10]) * (x33 * 0x2));
7313     x134 = ((uint64_t)(arg1[10]) * x34);
7314     x135 = ((uint64_t)(arg1[10]) * (arg1[10]));
7315     x136 = ((arg1[9]) * x2);
7316     x137 = ((arg1[9]) * (x5 * 0x2));
7317     x138 = ((arg1[9]) * (x8 * 0x2));
7318     x139 = ((arg1[9]) * x11);
7319     x140 = ((arg1[9]) * x14);
7320     x141 = ((arg1[9]) * (x17 * 0x2));
7321     x142 = ((arg1[9]) * (x20 * 0x2));
7322     x143 = ((arg1[9]) * x23);
7323     x144 = ((arg1[9]) * (x26 * 0x2));
7324     x145 = ((uint64_t)(arg1[9]) * (x30 * 0x2));
7325     x146 = ((uint64_t)(arg1[9]) * (x33 * 0x2));
7326     x147 = ((uint64_t)(arg1[9]) * x34);
7327     x148 = ((uint64_t)(arg1[9]) * (x35 * 0x2));
7328     x149 = ((uint64_t)(arg1[9]) * ((arg1[9]) * 0x2));
7329     x150 = ((arg1[8]) * (x2 * 0x2));
7330     x151 = ((arg1[8]) * (x5 * 0x2));
7331     x152 = ((arg1[8]) * (x8 * 0x2));
7332     x153 = ((arg1[8]) * x11);
7333     x154 = ((arg1[8]) * (x14 * 0x2));
7334     x155 = ((arg1[8]) * (x17 * 0x2));
7335     x156 = ((arg1[8]) * (x20 * 0x2));
7336     x157 = ((arg1[8]) * (x23 * 0x2));
7337     x158 = ((uint64_t)(arg1[8]) * (x27 * 0x2));
7338     x159 = ((uint64_t)(arg1[8]) * (x30 * 0x2));
7339     x160 = ((uint64_t)(arg1[8]) * (x33 * 0x2));
7340     x161 = ((uint64_t)(arg1[8]) * (x34 * 0x2));
7341     x162 = ((uint64_t)(arg1[8]) * (x35 * 0x2));
7342     x163 = ((uint64_t)(arg1[8]) * (x36 * 0x2));
7343     x164 = ((uint64_t)(arg1[8]) * ((arg1[8]) * 0x2));
7344     x165 = ((arg1[7]) * x2);
7345     x166 = ((arg1[7]) * x5);
7346     x167 = ((arg1[7]) * x8);
7347     x168 = ((arg1[7]) * x11);
7348     x169 = ((arg1[7]) * x14);
7349     x170 = ((arg1[7]) * x17);
7350     x171 = ((arg1[7]) * (x20 * 0x2));
7351     x172 = ((uint64_t)(arg1[7]) * x24);
7352     x173 = ((uint64_t)(arg1[7]) * x27);
7353     x174 = ((uint64_t)(arg1[7]) * x30);
7354     x175 = ((uint64_t)(arg1[7]) * (x33 * 0x2));
7355     x176 = ((uint64_t)(arg1[7]) * x34);
7356     x177 = ((uint64_t)(arg1[7]) * x35);
7357     x178 = ((uint64_t)(arg1[7]) * x36);
7358     x179 = ((uint64_t)(arg1[7]) * (x37 * 0x2));
7359     x180 = ((uint64_t)(arg1[7]) * (arg1[7]));
7360     x181 = ((arg1[6]) * x2);
7361     x182 = ((arg1[6]) * x5);
7362     x183 = ((arg1[6]) * (x8 * 0x2));
7363     x184 = ((arg1[6]) * x11);
7364     x185 = ((arg1[6]) * x14);
7365     x186 = ((arg1[6]) * (x17 * 0x2));
7366     x187 = ((uint64_t)(arg1[6]) * (x21 * 0x2));
7367     x188 = ((uint64_t)(arg1[6]) * x24);
7368     x189 = ((uint64_t)(arg1[6]) * x27);
7369     x190 = ((uint64_t)(arg1[6]) * (x30 * 0x2));
7370     x191 = ((uint64_t)(arg1[6]) * (x33 * 0x2));
7371     x192 = ((uint64_t)(arg1[6]) * x34);
7372     x193 = ((uint64_t)(arg1[6]) * x35);
7373     x194 = ((uint64_t)(arg1[6]) * (x36 * 0x2));
7374     x195 = ((uint64_t)(arg1[6]) * (x37 * 0x2));
7375     x196 = ((uint64_t)(arg1[6]) * x38);
7376     x197 = ((uint64_t)(arg1[6]) * (arg1[6]));
7377     x198 = ((arg1[5]) * x2);
7378     x199 = ((arg1[5]) * (x5 * 0x2));
7379     x200 = ((arg1[5]) * (x8 * 0x2));
7380     x201 = ((arg1[5]) * x11);
7381     x202 = ((arg1[5]) * (x14 * 0x2));
7382     x203 = ((uint64_t)(arg1[5]) * (x18 * 0x2));
7383     x204 = ((uint64_t)(arg1[5]) * (x21 * 0x2));
7384     x205 = ((uint64_t)(arg1[5]) * x24);
7385     x206 = ((uint64_t)(arg1[5]) * (x27 * 0x2));
7386     x207 = ((uint64_t)(arg1[5]) * (x30 * 0x2));
7387     x208 = ((uint64_t)(arg1[5]) * (x33 * 0x2));
7388     x209 = ((uint64_t)(arg1[5]) * x34);
7389     x210 = ((uint64_t)(arg1[5]) * (x35 * 0x2));
7390     x211 = ((uint64_t)(arg1[5]) * (x36 * 0x2));
7391     x212 = ((uint64_t)(arg1[5]) * (x37 * 0x2));
7392     x213 = ((uint64_t)(arg1[5]) * x38);
7393     x214 = ((uint64_t)(arg1[5]) * (x39 * 0x2));
7394     x215 = ((uint64_t)(arg1[5]) * ((arg1[5]) * 0x2));
7395     x216 = ((arg1[4]) * (x2 * 0x2));
7396     x217 = ((arg1[4]) * (x5 * 0x2));
7397     x218 = ((arg1[4]) * (x8 * 0x2));
7398     x219 = ((arg1[4]) * (x11 * 0x2));
7399     x220 = ((uint64_t)(arg1[4]) * (x15 * 0x2));
7400     x221 = ((uint64_t)(arg1[4]) * (x18 * 0x2));
7401     x222 = ((uint64_t)(arg1[4]) * (x21 * 0x2));
7402     x223 = ((uint64_t)(arg1[4]) * (x24 * 0x2));
7403     x224 = ((uint64_t)(arg1[4]) * (x27 * 0x2));
7404     x225 = ((uint64_t)(arg1[4]) * (x30 * 0x2));
7405     x226 = ((uint64_t)(arg1[4]) * (x33 * 0x2));
7406     x227 = ((uint64_t)(arg1[4]) * (x34 * 0x2));
7407     x228 = ((uint64_t)(arg1[4]) * (x35 * 0x2));
7408     x229 = ((uint64_t)(arg1[4]) * (x36 * 0x2));
7409     x230 = ((uint64_t)(arg1[4]) * (x37 * 0x2));
7410     x231 = ((uint64_t)(arg1[4]) * (x38 * 0x2));
7411     x232 = ((uint64_t)(arg1[4]) * (x39 * 0x2));
7412     x233 = ((uint64_t)(arg1[4]) * (x40 * 0x2));
7413     x234 = ((uint64_t)(arg1[4]) * ((arg1[4]) * 0x2));
7414     x235 = ((arg1[3]) * x2);
7415     x236 = ((arg1[3]) * x5);
7416     x237 = ((arg1[3]) * (x8 * 0x2));
7417     x238 = ((uint64_t)(arg1[3]) * x12);
7418     x239 = ((uint64_t)(arg1[3]) * x15);
7419     x240 = ((uint64_t)(arg1[3]) * x18);
7420     x241 = ((uint64_t)(arg1[3]) * (x21 * 0x2));
7421     x242 = ((uint64_t)(arg1[3]) * x24);
7422     x243 = ((uint64_t)(arg1[3]) * x27);
7423     x244 = ((uint64_t)(arg1[3]) * x30);
7424     x245 = ((uint64_t)(arg1[3]) * (x33 * 0x2));
7425     x246 = ((uint64_t)(arg1[3]) * x34);
7426     x247 = ((uint64_t)(arg1[3]) * x35);
7427     x248 = ((uint64_t)(arg1[3]) * x36);
7428     x249 = ((uint64_t)(arg1[3]) * (x37 * 0x2));
7429     x250 = ((uint64_t)(arg1[3]) * x38);
7430     x251 = ((uint64_t)(arg1[3]) * x39);
7431     x252 = ((uint64_t)(arg1[3]) * x40);
7432     x253 = ((uint64_t)(arg1[3]) * (x41 * 0x2));
7433     x254 = ((uint64_t)(arg1[3]) * (arg1[3]));
7434     x255 = ((arg1[2]) * x2);
7435     x256 = ((arg1[2]) * (x5 * 0x2));
7436     x257 = ((uint64_t)(arg1[2]) * (x9 * 0x2));
7437     x258 = ((uint64_t)(arg1[2]) * x12);
7438     x259 = ((uint64_t)(arg1[2]) * x15);
7439     x260 = ((uint64_t)(arg1[2]) * (x18 * 0x2));
7440     x261 = ((uint64_t)(arg1[2]) * (x21 * 0x2));
7441     x262 = ((uint64_t)(arg1[2]) * x24);
7442     x263 = ((uint64_t)(arg1[2]) * x27);
7443     x264 = ((uint64_t)(arg1[2]) * (x30 * 0x2));
7444     x265 = ((uint64_t)(arg1[2]) * (x33 * 0x2));
7445     x266 = ((uint64_t)(arg1[2]) * x34);
7446     x267 = ((uint64_t)(arg1[2]) * x35);
7447     x268 = ((uint64_t)(arg1[2]) * (x36 * 0x2));
7448     x269 = ((uint64_t)(arg1[2]) * (x37 * 0x2));
7449     x270 = ((uint64_t)(arg1[2]) * x38);
7450     x271 = ((uint64_t)(arg1[2]) * x39);
7451     x272 = ((uint64_t)(arg1[2]) * (x40 * 0x2));
7452     x273 = ((uint64_t)(arg1[2]) * (x41 * 0x2));
7453     x274 = ((uint64_t)(arg1[2]) * x42);
7454     x275 = ((uint64_t)(arg1[2]) * (arg1[2]));
7455     x276 = ((arg1[1]) * (x2 * 0x2));
7456     x277 = ((uint64_t)(arg1[1]) * (x6 * 0x2));
7457     x278 = ((uint64_t)(arg1[1]) * (x9 * 0x2));
7458     x279 = ((uint64_t)(arg1[1]) * x12);
7459     x280 = ((uint64_t)(arg1[1]) * (x15 * 0x2));
7460     x281 = ((uint64_t)(arg1[1]) * (x18 * 0x2));
7461     x282 = ((uint64_t)(arg1[1]) * (x21 * 0x2));
7462     x283 = ((uint64_t)(arg1[1]) * x24);
7463     x284 = ((uint64_t)(arg1[1]) * (x27 * 0x2));
7464     x285 = ((uint64_t)(arg1[1]) * (x30 * 0x2));
7465     x286 = ((uint64_t)(arg1[1]) * (x33 * 0x2));
7466     x287 = ((uint64_t)(arg1[1]) * x34);
7467     x288 = ((uint64_t)(arg1[1]) * (x35 * 0x2));
7468     x289 = ((uint64_t)(arg1[1]) * (x36 * 0x2));
7469     x290 = ((uint64_t)(arg1[1]) * (x37 * 0x2));
7470     x291 = ((uint64_t)(arg1[1]) * x38);
7471     x292 = ((uint64_t)(arg1[1]) * (x39 * 0x2));
7472     x293 = ((uint64_t)(arg1[1]) * (x40 * 0x2));
7473     x294 = ((uint64_t)(arg1[1]) * (x41 * 0x2));
7474     x295 = ((uint64_t)(arg1[1]) * x42);
7475     x296 = ((uint64_t)(arg1[1]) * (x43 * 0x2));
7476     x297 = ((uint64_t)(arg1[1]) * ((arg1[1]) * 0x2));
7477     x298 = ((uint64_t)(arg1[0]) * x3);
7478     x299 = ((uint64_t)(arg1[0]) * x6);
7479     x300 = ((uint64_t)(arg1[0]) * x9);
7480     x301 = ((uint64_t)(arg1[0]) * x12);
7481     x302 = ((uint64_t)(arg1[0]) * x15);
7482     x303 = ((uint64_t)(arg1[0]) * x18);
7483     x304 = ((uint64_t)(arg1[0]) * x21);
7484     x305 = ((uint64_t)(arg1[0]) * x24);
7485     x306 = ((uint64_t)(arg1[0]) * x27);
7486     x307 = ((uint64_t)(arg1[0]) * x30);
7487     x308 = ((uint64_t)(arg1[0]) * x33);
7488     x309 = ((uint64_t)(arg1[0]) * x34);
7489     x310 = ((uint64_t)(arg1[0]) * x35);
7490     x311 = ((uint64_t)(arg1[0]) * x36);
7491     x312 = ((uint64_t)(arg1[0]) * x37);
7492     x313 = ((uint64_t)(arg1[0]) * x38);
7493     x314 = ((uint64_t)(arg1[0]) * x39);
7494     x315 = ((uint64_t)(arg1[0]) * x40);
7495     x316 = ((uint64_t)(arg1[0]) * x41);
7496     x317 = ((uint64_t)(arg1[0]) * x42);
7497     x318 = ((uint64_t)(arg1[0]) * x43);
7498     x319 = ((uint64_t)(arg1[0]) * x44);
7499     x320 = ((uint64_t)(arg1[0]) * (arg1[0]));
7500     x321 = (x320 +
7501             (x276 +
7502              (x256 +
7503               (x237 +
7504                (x219 +
7505                 (x202 + (x186 + (x171 + (x157 + (x144 + (x132 + x121)))))))))));
7506     x322 = (x321 >> 23);
7507     x323 = (uint32_t)(x321 & UINT32_C(0x7fffff));
7508     x324 = (x298 +
7509             (x277 +
7510              (x257 +
7511               (x238 +
7512                (x220 +
7513                 (x203 + (x187 + (x172 + (x158 + (x145 + (x133 + x122)))))))))));
7514     x325 = (x299 +
7515             (x278 +
7516              (x258 +
7517               (x239 +
7518                (x221 +
7519                 (x204 + (x188 + (x173 + (x159 + (x146 + (x134 + x45)))))))))));
7520     x326 = (x300 +
7521             (x279 +
7522              (x259 +
7523               (x240 +
7524                (x222 +
7525                 (x205 + (x189 + (x174 + (x160 + (x147 + (x135 + x46)))))))))));
7526     x327 = (x301 +
7527             (x280 +
7528              (x260 +
7529               (x241 +
7530                (x223 +
7531                 (x206 + (x190 + (x175 + (x161 + (x148 + (x48 + x47)))))))))));
7532     x328 = (x302 +
7533             (x281 +
7534              (x261 +
7535               (x242 +
7536                (x224 +
7537                 (x207 + (x191 + (x176 + (x162 + (x149 + (x51 + x49)))))))))));
7538     x329 = (x303 +
7539             (x282 +
7540              (x262 +
7541               (x243 +
7542                (x225 +
7543                 (x208 + (x192 + (x177 + (x163 + (x55 + (x52 + x50)))))))))));
7544     x330 = (x304 +
7545             (x283 +
7546              (x263 +
7547               (x244 +
7548                (x226 +
7549                 (x209 + (x193 + (x178 + (x164 + (x60 + (x56 + x53)))))))))));
7550     x331 =
7551         (x305 +
7552          (x284 +
7553           (x264 +
7554            (x245 +
7555             (x227 + (x210 + (x194 + (x179 + (x66 + (x61 + (x57 + x54)))))))))));
7556     x332 =
7557         (x306 +
7558          (x285 +
7559           (x265 +
7560            (x246 +
7561             (x228 + (x211 + (x195 + (x180 + (x73 + (x67 + (x62 + x58)))))))))));
7562     x333 =
7563         (x307 +
7564          (x286 +
7565           (x266 +
7566            (x247 +
7567             (x229 + (x212 + (x196 + (x81 + (x74 + (x68 + (x63 + x59)))))))))));
7568     x334 =
7569         (x308 +
7570          (x287 +
7571           (x267 +
7572            (x248 +
7573             (x230 + (x213 + (x197 + (x90 + (x82 + (x75 + (x69 + x64)))))))))));
7574     x335 =
7575         (x309 +
7576          (x288 +
7577           (x268 +
7578            (x249 +
7579             (x231 + (x214 + (x100 + (x91 + (x83 + (x76 + (x70 + x65)))))))))));
7580     x336 =
7581         (x310 +
7582          (x289 +
7583           (x269 +
7584            (x250 +
7585             (x232 + (x215 + (x111 + (x101 + (x92 + (x84 + (x77 + x71)))))))))));
7586     x337 =
7587         (x311 +
7588          (x290 +
7589           (x270 +
7590            (x251 +
7591             (x233 + (x123 + (x112 + (x102 + (x93 + (x85 + (x78 + x72)))))))))));
7592     x338 = (x312 +
7593             (x291 +
7594              (x271 +
7595               (x252 +
7596                (x234 +
7597                 (x136 + (x124 + (x113 + (x103 + (x94 + (x86 + x79)))))))))));
7598     x339 = (x313 +
7599             (x292 +
7600              (x272 +
7601               (x253 +
7602                (x150 +
7603                 (x137 + (x125 + (x114 + (x104 + (x95 + (x87 + x80)))))))))));
7604     x340 = (x314 +
7605             (x293 +
7606              (x273 +
7607               (x254 +
7608                (x165 +
7609                 (x151 + (x138 + (x126 + (x115 + (x105 + (x96 + x88)))))))))));
7610     x341 = (x315 +
7611             (x294 +
7612              (x274 +
7613               (x181 +
7614                (x166 +
7615                 (x152 + (x139 + (x127 + (x116 + (x106 + (x97 + x89)))))))))));
7616     x342 = (x316 +
7617             (x295 +
7618              (x275 +
7619               (x198 +
7620                (x182 +
7621                 (x167 + (x153 + (x140 + (x128 + (x117 + (x107 + x98)))))))))));
7622     x343 = (x317 +
7623             (x296 +
7624              (x216 +
7625               (x199 +
7626                (x183 +
7627                 (x168 + (x154 + (x141 + (x129 + (x118 + (x108 + x99)))))))))));
7628     x344 = (x318 +
7629             (x297 +
7630              (x235 +
7631               (x217 +
7632                (x200 +
7633                 (x184 + (x169 + (x155 + (x142 + (x130 + (x119 + x109)))))))))));
7634     x345 = (x319 +
7635             (x255 +
7636              (x236 +
7637               (x218 +
7638                (x201 +
7639                 (x185 + (x170 + (x156 + (x143 + (x131 + (x120 + x110)))))))))));
7640     x346 = (x322 + x345);
7641     x347 = (x346 >> 22);
7642     x348 = (uint32_t)(x346 & UINT32_C(0x3fffff));
7643     x349 = (x347 + x344);
7644     x350 = (x349 >> 22);
7645     x351 = (uint32_t)(x349 & UINT32_C(0x3fffff));
7646     x352 = (x350 + x343);
7647     x353 = (x352 >> 23);
7648     x354 = (uint32_t)(x352 & UINT32_C(0x7fffff));
7649     x355 = (x353 + x342);
7650     x356 = (x355 >> 22);
7651     x357 = (uint32_t)(x355 & UINT32_C(0x3fffff));
7652     x358 = (x356 + x341);
7653     x359 = (x358 >> 22);
7654     x360 = (uint32_t)(x358 & UINT32_C(0x3fffff));
7655     x361 = (x359 + x340);
7656     x362 = (x361 >> 22);
7657     x363 = (uint32_t)(x361 & UINT32_C(0x3fffff));
7658     x364 = (x362 + x339);
7659     x365 = (x364 >> 23);
7660     x366 = (uint32_t)(x364 & UINT32_C(0x7fffff));
7661     x367 = (x365 + x338);
7662     x368 = (x367 >> 22);
7663     x369 = (uint32_t)(x367 & UINT32_C(0x3fffff));
7664     x370 = (x368 + x337);
7665     x371 = (x370 >> 22);
7666     x372 = (uint32_t)(x370 & UINT32_C(0x3fffff));
7667     x373 = (x371 + x336);
7668     x374 = (x373 >> 22);
7669     x375 = (uint32_t)(x373 & UINT32_C(0x3fffff));
7670     x376 = (x374 + x335);
7671     x377 = (x376 >> 23);
7672     x378 = (uint32_t)(x376 & UINT32_C(0x7fffff));
7673     x379 = (x377 + x334);
7674     x380 = (x379 >> 22);
7675     x381 = (uint32_t)(x379 & UINT32_C(0x3fffff));
7676     x382 = (x380 + x333);
7677     x383 = (x382 >> 22);
7678     x384 = (uint32_t)(x382 & UINT32_C(0x3fffff));
7679     x385 = (x383 + x332);
7680     x386 = (x385 >> 22);
7681     x387 = (uint32_t)(x385 & UINT32_C(0x3fffff));
7682     x388 = (x386 + x331);
7683     x389 = (x388 >> 23);
7684     x390 = (uint32_t)(x388 & UINT32_C(0x7fffff));
7685     x391 = (x389 + x330);
7686     x392 = (x391 >> 22);
7687     x393 = (uint32_t)(x391 & UINT32_C(0x3fffff));
7688     x394 = (x392 + x329);
7689     x395 = (x394 >> 22);
7690     x396 = (uint32_t)(x394 & UINT32_C(0x3fffff));
7691     x397 = (x395 + x328);
7692     x398 = (x397 >> 22);
7693     x399 = (uint32_t)(x397 & UINT32_C(0x3fffff));
7694     x400 = (x398 + x327);
7695     x401 = (x400 >> 23);
7696     x402 = (uint32_t)(x400 & UINT32_C(0x7fffff));
7697     x403 = (x401 + x326);
7698     x404 = (x403 >> 22);
7699     x405 = (uint32_t)(x403 & UINT32_C(0x3fffff));
7700     x406 = (x404 + x325);
7701     x407 = (x406 >> 22);
7702     x408 = (uint32_t)(x406 & UINT32_C(0x3fffff));
7703     x409 = (x407 + x324);
7704     x410 = (uint32_t)(x409 >> 22);
7705     x411 = (uint32_t)(x409 & UINT32_C(0x3fffff));
7706     x412 = ((uint64_t)UINT16_C(0x239) * x410);
7707     x413 = (x323 + x412);
7708     x414 = (uint32_t)(x413 >> 23);
7709     x415 = (uint32_t)(x413 & UINT32_C(0x7fffff));
7710     x416 = (x414 + x348);
7711     x417 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x416 >> 22);
7712     x418 = (x416 & UINT32_C(0x3fffff));
7713     x419 = (x417 + x351);
7714     out1[0] = x415;
7715     out1[1] = x418;
7716     out1[2] = x419;
7717     out1[3] = x354;
7718     out1[4] = x357;
7719     out1[5] = x360;
7720     out1[6] = x363;
7721     out1[7] = x366;
7722     out1[8] = x369;
7723     out1[9] = x372;
7724     out1[10] = x375;
7725     out1[11] = x378;
7726     out1[12] = x381;
7727     out1[13] = x384;
7728     out1[14] = x387;
7729     out1[15] = x390;
7730     out1[16] = x393;
7731     out1[17] = x396;
7732     out1[18] = x399;
7733     out1[19] = x402;
7734     out1[20] = x405;
7735     out1[21] = x408;
7736     out1[22] = x411;
7737 }
7738
7739 /*
7740  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_carry reduces a field element.
7741  * Postconditions:
7742  *   eval out1 mod m = eval arg1 mod m
7743  *
7744  * Input Bounds:
7745  *   arg1: [[0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000]]
7746  * Output Bounds:
7747  *   out1: [[0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000]]
7748  */
7749 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_carry(
7750     uint32_t out1[23], const uint32_t arg1[23]) {
7751     uint32_t x1;
7752     uint32_t x2;
7753     uint32_t x3;
7754     uint32_t x4;
7755     uint32_t x5;
7756     uint32_t x6;
7757     uint32_t x7;
7758     uint32_t x8;
7759     uint32_t x9;
7760     uint32_t x10;
7761     uint32_t x11;
7762     uint32_t x12;
7763     uint32_t x13;
7764     uint32_t x14;
7765     uint32_t x15;
7766     uint32_t x16;
7767     uint32_t x17;
7768     uint32_t x18;
7769     uint32_t x19;
7770     uint32_t x20;
7771     uint32_t x21;
7772     uint32_t x22;
7773     uint32_t x23;
7774     uint32_t x24;
7775     uint32_t x25;
7776     uint32_t x26;
7777     uint32_t x27;
7778     uint32_t x28;
7779     uint32_t x29;
7780     uint32_t x30;
7781     uint32_t x31;
7782     uint32_t x32;
7783     uint32_t x33;
7784     uint32_t x34;
7785     uint32_t x35;
7786     uint32_t x36;
7787     uint32_t x37;
7788     uint32_t x38;
7789     uint32_t x39;
7790     uint32_t x40;
7791     uint32_t x41;
7792     uint32_t x42;
7793     uint32_t x43;
7794     uint32_t x44;
7795     uint32_t x45;
7796     uint32_t x46;
7797     uint32_t x47;
7798     uint32_t x48;
7799     x1 = (arg1[0]);
7800     x2 = ((x1 >> 23) + (arg1[1]));
7801     x3 = ((x2 >> 22) + (arg1[2]));
7802     x4 = ((x3 >> 22) + (arg1[3]));
7803     x5 = ((x4 >> 23) + (arg1[4]));
7804     x6 = ((x5 >> 22) + (arg1[5]));
7805     x7 = ((x6 >> 22) + (arg1[6]));
7806     x8 = ((x7 >> 22) + (arg1[7]));
7807     x9 = ((x8 >> 23) + (arg1[8]));
7808     x10 = ((x9 >> 22) + (arg1[9]));
7809     x11 = ((x10 >> 22) + (arg1[10]));
7810     x12 = ((x11 >> 22) + (arg1[11]));
7811     x13 = ((x12 >> 23) + (arg1[12]));
7812     x14 = ((x13 >> 22) + (arg1[13]));
7813     x15 = ((x14 >> 22) + (arg1[14]));
7814     x16 = ((x15 >> 22) + (arg1[15]));
7815     x17 = ((x16 >> 23) + (arg1[16]));
7816     x18 = ((x17 >> 22) + (arg1[17]));
7817     x19 = ((x18 >> 22) + (arg1[18]));
7818     x20 = ((x19 >> 22) + (arg1[19]));
7819     x21 = ((x20 >> 23) + (arg1[20]));
7820     x22 = ((x21 >> 22) + (arg1[21]));
7821     x23 = ((x22 >> 22) + (arg1[22]));
7822     x24 = ((x1 & UINT32_C(0x7fffff)) + (UINT16_C(0x239) * (x23 >> 22)));
7823     x25 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x24 >> 23) +
7824            (x2 & UINT32_C(0x3fffff)));
7825     x26 = (x24 & UINT32_C(0x7fffff));
7826     x27 = (x25 & UINT32_C(0x3fffff));
7827     x28 = ((fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x25 >> 22) +
7828            (x3 & UINT32_C(0x3fffff)));
7829     x29 = (x4 & UINT32_C(0x7fffff));
7830     x30 = (x5 & UINT32_C(0x3fffff));
7831     x31 = (x6 & UINT32_C(0x3fffff));
7832     x32 = (x7 & UINT32_C(0x3fffff));
7833     x33 = (x8 & UINT32_C(0x7fffff));
7834     x34 = (x9 & UINT32_C(0x3fffff));
7835     x35 = (x10 & UINT32_C(0x3fffff));
7836     x36 = (x11 & UINT32_C(0x3fffff));
7837     x37 = (x12 & UINT32_C(0x7fffff));
7838     x38 = (x13 & UINT32_C(0x3fffff));
7839     x39 = (x14 & UINT32_C(0x3fffff));
7840     x40 = (x15 & UINT32_C(0x3fffff));
7841     x41 = (x16 & UINT32_C(0x7fffff));
7842     x42 = (x17 & UINT32_C(0x3fffff));
7843     x43 = (x18 & UINT32_C(0x3fffff));
7844     x44 = (x19 & UINT32_C(0x3fffff));
7845     x45 = (x20 & UINT32_C(0x7fffff));
7846     x46 = (x21 & UINT32_C(0x3fffff));
7847     x47 = (x22 & UINT32_C(0x3fffff));
7848     x48 = (x23 & UINT32_C(0x3fffff));
7849     out1[0] = x26;
7850     out1[1] = x27;
7851     out1[2] = x28;
7852     out1[3] = x29;
7853     out1[4] = x30;
7854     out1[5] = x31;
7855     out1[6] = x32;
7856     out1[7] = x33;
7857     out1[8] = x34;
7858     out1[9] = x35;
7859     out1[10] = x36;
7860     out1[11] = x37;
7861     out1[12] = x38;
7862     out1[13] = x39;
7863     out1[14] = x40;
7864     out1[15] = x41;
7865     out1[16] = x42;
7866     out1[17] = x43;
7867     out1[18] = x44;
7868     out1[19] = x45;
7869     out1[20] = x46;
7870     out1[21] = x47;
7871     out1[22] = x48;
7872 }
7873
7874 /*
7875  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_add adds two field elements.
7876  * Postconditions:
7877  *   eval out1 mod m = (eval arg1 + eval arg2) mod m
7878  *
7879  * Input Bounds:
7880  *   arg1: [[0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000]]
7881  *   arg2: [[0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000]]
7882  * Output Bounds:
7883  *   out1: [[0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000]]
7884  */
7885 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_add(
7886     uint32_t out1[23], const uint32_t arg1[23], const uint32_t arg2[23]) {
7887     uint32_t x1;
7888     uint32_t x2;
7889     uint32_t x3;
7890     uint32_t x4;
7891     uint32_t x5;
7892     uint32_t x6;
7893     uint32_t x7;
7894     uint32_t x8;
7895     uint32_t x9;
7896     uint32_t x10;
7897     uint32_t x11;
7898     uint32_t x12;
7899     uint32_t x13;
7900     uint32_t x14;
7901     uint32_t x15;
7902     uint32_t x16;
7903     uint32_t x17;
7904     uint32_t x18;
7905     uint32_t x19;
7906     uint32_t x20;
7907     uint32_t x21;
7908     uint32_t x22;
7909     uint32_t x23;
7910     x1 = ((arg1[0]) + (arg2[0]));
7911     x2 = ((arg1[1]) + (arg2[1]));
7912     x3 = ((arg1[2]) + (arg2[2]));
7913     x4 = ((arg1[3]) + (arg2[3]));
7914     x5 = ((arg1[4]) + (arg2[4]));
7915     x6 = ((arg1[5]) + (arg2[5]));
7916     x7 = ((arg1[6]) + (arg2[6]));
7917     x8 = ((arg1[7]) + (arg2[7]));
7918     x9 = ((arg1[8]) + (arg2[8]));
7919     x10 = ((arg1[9]) + (arg2[9]));
7920     x11 = ((arg1[10]) + (arg2[10]));
7921     x12 = ((arg1[11]) + (arg2[11]));
7922     x13 = ((arg1[12]) + (arg2[12]));
7923     x14 = ((arg1[13]) + (arg2[13]));
7924     x15 = ((arg1[14]) + (arg2[14]));
7925     x16 = ((arg1[15]) + (arg2[15]));
7926     x17 = ((arg1[16]) + (arg2[16]));
7927     x18 = ((arg1[17]) + (arg2[17]));
7928     x19 = ((arg1[18]) + (arg2[18]));
7929     x20 = ((arg1[19]) + (arg2[19]));
7930     x21 = ((arg1[20]) + (arg2[20]));
7931     x22 = ((arg1[21]) + (arg2[21]));
7932     x23 = ((arg1[22]) + (arg2[22]));
7933     out1[0] = x1;
7934     out1[1] = x2;
7935     out1[2] = x3;
7936     out1[3] = x4;
7937     out1[4] = x5;
7938     out1[5] = x6;
7939     out1[6] = x7;
7940     out1[7] = x8;
7941     out1[8] = x9;
7942     out1[9] = x10;
7943     out1[10] = x11;
7944     out1[11] = x12;
7945     out1[12] = x13;
7946     out1[13] = x14;
7947     out1[14] = x15;
7948     out1[15] = x16;
7949     out1[16] = x17;
7950     out1[17] = x18;
7951     out1[18] = x19;
7952     out1[19] = x20;
7953     out1[20] = x21;
7954     out1[21] = x22;
7955     out1[22] = x23;
7956 }
7957
7958 /*
7959  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_sub subtracts two field elements.
7960  * Postconditions:
7961  *   eval out1 mod m = (eval arg1 - eval arg2) mod m
7962  *
7963  * Input Bounds:
7964  *   arg1: [[0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000]]
7965  *   arg2: [[0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000]]
7966  * Output Bounds:
7967  *   out1: [[0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000]]
7968  */
7969 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_sub(
7970     uint32_t out1[23], const uint32_t arg1[23], const uint32_t arg2[23]) {
7971     uint32_t x1;
7972     uint32_t x2;
7973     uint32_t x3;
7974     uint32_t x4;
7975     uint32_t x5;
7976     uint32_t x6;
7977     uint32_t x7;
7978     uint32_t x8;
7979     uint32_t x9;
7980     uint32_t x10;
7981     uint32_t x11;
7982     uint32_t x12;
7983     uint32_t x13;
7984     uint32_t x14;
7985     uint32_t x15;
7986     uint32_t x16;
7987     uint32_t x17;
7988     uint32_t x18;
7989     uint32_t x19;
7990     uint32_t x20;
7991     uint32_t x21;
7992     uint32_t x22;
7993     uint32_t x23;
7994     x1 = ((UINT32_C(0xfffb8e) + (arg1[0])) - (arg2[0]));
7995     x2 = ((UINT32_C(0x7ffffe) + (arg1[1])) - (arg2[1]));
7996     x3 = ((UINT32_C(0x7ffffe) + (arg1[2])) - (arg2[2]));
7997     x4 = ((UINT32_C(0xfffffe) + (arg1[3])) - (arg2[3]));
7998     x5 = ((UINT32_C(0x7ffffe) + (arg1[4])) - (arg2[4]));
7999     x6 = ((UINT32_C(0x7ffffe) + (arg1[5])) - (arg2[5]));
8000     x7 = ((UINT32_C(0x7ffffe) + (arg1[6])) - (arg2[6]));
8001     x8 = ((UINT32_C(0xfffffe) + (arg1[7])) - (arg2[7]));
8002     x9 = ((UINT32_C(0x7ffffe) + (arg1[8])) - (arg2[8]));
8003     x10 = ((UINT32_C(0x7ffffe) + (arg1[9])) - (arg2[9]));
8004     x11 = ((UINT32_C(0x7ffffe) + (arg1[10])) - (arg2[10]));
8005     x12 = ((UINT32_C(0xfffffe) + (arg1[11])) - (arg2[11]));
8006     x13 = ((UINT32_C(0x7ffffe) + (arg1[12])) - (arg2[12]));
8007     x14 = ((UINT32_C(0x7ffffe) + (arg1[13])) - (arg2[13]));
8008     x15 = ((UINT32_C(0x7ffffe) + (arg1[14])) - (arg2[14]));
8009     x16 = ((UINT32_C(0xfffffe) + (arg1[15])) - (arg2[15]));
8010     x17 = ((UINT32_C(0x7ffffe) + (arg1[16])) - (arg2[16]));
8011     x18 = ((UINT32_C(0x7ffffe) + (arg1[17])) - (arg2[17]));
8012     x19 = ((UINT32_C(0x7ffffe) + (arg1[18])) - (arg2[18]));
8013     x20 = ((UINT32_C(0xfffffe) + (arg1[19])) - (arg2[19]));
8014     x21 = ((UINT32_C(0x7ffffe) + (arg1[20])) - (arg2[20]));
8015     x22 = ((UINT32_C(0x7ffffe) + (arg1[21])) - (arg2[21]));
8016     x23 = ((UINT32_C(0x7ffffe) + (arg1[22])) - (arg2[22]));
8017     out1[0] = x1;
8018     out1[1] = x2;
8019     out1[2] = x3;
8020     out1[3] = x4;
8021     out1[4] = x5;
8022     out1[5] = x6;
8023     out1[6] = x7;
8024     out1[7] = x8;
8025     out1[8] = x9;
8026     out1[9] = x10;
8027     out1[10] = x11;
8028     out1[11] = x12;
8029     out1[12] = x13;
8030     out1[13] = x14;
8031     out1[14] = x15;
8032     out1[15] = x16;
8033     out1[16] = x17;
8034     out1[17] = x18;
8035     out1[18] = x19;
8036     out1[19] = x20;
8037     out1[20] = x21;
8038     out1[21] = x22;
8039     out1[22] = x23;
8040 }
8041
8042 /*
8043  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_opp negates a field element.
8044  * Postconditions:
8045  *   eval out1 mod m = -eval arg1 mod m
8046  *
8047  * Input Bounds:
8048  *   arg1: [[0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000]]
8049  * Output Bounds:
8050  *   out1: [[0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0x1800000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000], [0x0 ~> 0xc00000]]
8051  */
8052 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_opp(
8053     uint32_t out1[23], const uint32_t arg1[23]) {
8054     uint32_t x1;
8055     uint32_t x2;
8056     uint32_t x3;
8057     uint32_t x4;
8058     uint32_t x5;
8059     uint32_t x6;
8060     uint32_t x7;
8061     uint32_t x8;
8062     uint32_t x9;
8063     uint32_t x10;
8064     uint32_t x11;
8065     uint32_t x12;
8066     uint32_t x13;
8067     uint32_t x14;
8068     uint32_t x15;
8069     uint32_t x16;
8070     uint32_t x17;
8071     uint32_t x18;
8072     uint32_t x19;
8073     uint32_t x20;
8074     uint32_t x21;
8075     uint32_t x22;
8076     uint32_t x23;
8077     x1 = (UINT32_C(0xfffb8e) - (arg1[0]));
8078     x2 = (UINT32_C(0x7ffffe) - (arg1[1]));
8079     x3 = (UINT32_C(0x7ffffe) - (arg1[2]));
8080     x4 = (UINT32_C(0xfffffe) - (arg1[3]));
8081     x5 = (UINT32_C(0x7ffffe) - (arg1[4]));
8082     x6 = (UINT32_C(0x7ffffe) - (arg1[5]));
8083     x7 = (UINT32_C(0x7ffffe) - (arg1[6]));
8084     x8 = (UINT32_C(0xfffffe) - (arg1[7]));
8085     x9 = (UINT32_C(0x7ffffe) - (arg1[8]));
8086     x10 = (UINT32_C(0x7ffffe) - (arg1[9]));
8087     x11 = (UINT32_C(0x7ffffe) - (arg1[10]));
8088     x12 = (UINT32_C(0xfffffe) - (arg1[11]));
8089     x13 = (UINT32_C(0x7ffffe) - (arg1[12]));
8090     x14 = (UINT32_C(0x7ffffe) - (arg1[13]));
8091     x15 = (UINT32_C(0x7ffffe) - (arg1[14]));
8092     x16 = (UINT32_C(0xfffffe) - (arg1[15]));
8093     x17 = (UINT32_C(0x7ffffe) - (arg1[16]));
8094     x18 = (UINT32_C(0x7ffffe) - (arg1[17]));
8095     x19 = (UINT32_C(0x7ffffe) - (arg1[18]));
8096     x20 = (UINT32_C(0xfffffe) - (arg1[19]));
8097     x21 = (UINT32_C(0x7ffffe) - (arg1[20]));
8098     x22 = (UINT32_C(0x7ffffe) - (arg1[21]));
8099     x23 = (UINT32_C(0x7ffffe) - (arg1[22]));
8100     out1[0] = x1;
8101     out1[1] = x2;
8102     out1[2] = x3;
8103     out1[3] = x4;
8104     out1[4] = x5;
8105     out1[5] = x6;
8106     out1[6] = x7;
8107     out1[7] = x8;
8108     out1[8] = x9;
8109     out1[9] = x10;
8110     out1[10] = x11;
8111     out1[11] = x12;
8112     out1[12] = x13;
8113     out1[13] = x14;
8114     out1[14] = x15;
8115     out1[15] = x16;
8116     out1[16] = x17;
8117     out1[17] = x18;
8118     out1[18] = x19;
8119     out1[19] = x20;
8120     out1[20] = x21;
8121     out1[21] = x22;
8122     out1[22] = x23;
8123 }
8124
8125 /*
8126  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz is a multi-limb conditional select.
8127  * Postconditions:
8128  *   eval out1 = (if arg1 = 0 then eval arg2 else eval arg3)
8129  *
8130  * Input Bounds:
8131  *   arg1: [0x0 ~> 0x1]
8132  *   arg2: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]]
8133  *   arg3: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]]
8134  * Output Bounds:
8135  *   out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]]
8136  */
8137 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(
8138     uint32_t out1[23], fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 arg1,
8139     const uint32_t arg2[23], const uint32_t arg3[23]) {
8140     uint32_t x1;
8141     uint32_t x2;
8142     uint32_t x3;
8143     uint32_t x4;
8144     uint32_t x5;
8145     uint32_t x6;
8146     uint32_t x7;
8147     uint32_t x8;
8148     uint32_t x9;
8149     uint32_t x10;
8150     uint32_t x11;
8151     uint32_t x12;
8152     uint32_t x13;
8153     uint32_t x14;
8154     uint32_t x15;
8155     uint32_t x16;
8156     uint32_t x17;
8157     uint32_t x18;
8158     uint32_t x19;
8159     uint32_t x20;
8160     uint32_t x21;
8161     uint32_t x22;
8162     uint32_t x23;
8163     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(&x1, arg1, (arg2[0]),
8164                                                           (arg3[0]));
8165     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(&x2, arg1, (arg2[1]),
8166                                                           (arg3[1]));
8167     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(&x3, arg1, (arg2[2]),
8168                                                           (arg3[2]));
8169     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(&x4, arg1, (arg2[3]),
8170                                                           (arg3[3]));
8171     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(&x5, arg1, (arg2[4]),
8172                                                           (arg3[4]));
8173     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(&x6, arg1, (arg2[5]),
8174                                                           (arg3[5]));
8175     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(&x7, arg1, (arg2[6]),
8176                                                           (arg3[6]));
8177     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(&x8, arg1, (arg2[7]),
8178                                                           (arg3[7]));
8179     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(&x9, arg1, (arg2[8]),
8180                                                           (arg3[8]));
8181     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(&x10, arg1, (arg2[9]),
8182                                                           (arg3[9]));
8183     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(
8184         &x11, arg1, (arg2[10]), (arg3[10]));
8185     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(
8186         &x12, arg1, (arg2[11]), (arg3[11]));
8187     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(
8188         &x13, arg1, (arg2[12]), (arg3[12]));
8189     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(
8190         &x14, arg1, (arg2[13]), (arg3[13]));
8191     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(
8192         &x15, arg1, (arg2[14]), (arg3[14]));
8193     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(
8194         &x16, arg1, (arg2[15]), (arg3[15]));
8195     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(
8196         &x17, arg1, (arg2[16]), (arg3[16]));
8197     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(
8198         &x18, arg1, (arg2[17]), (arg3[17]));
8199     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(
8200         &x19, arg1, (arg2[18]), (arg3[18]));
8201     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(
8202         &x20, arg1, (arg2[19]), (arg3[19]));
8203     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(
8204         &x21, arg1, (arg2[20]), (arg3[20]));
8205     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(
8206         &x22, arg1, (arg2[21]), (arg3[21]));
8207     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(
8208         &x23, arg1, (arg2[22]), (arg3[22]));
8209     out1[0] = x1;
8210     out1[1] = x2;
8211     out1[2] = x3;
8212     out1[3] = x4;
8213     out1[4] = x5;
8214     out1[5] = x6;
8215     out1[6] = x7;
8216     out1[7] = x8;
8217     out1[8] = x9;
8218     out1[9] = x10;
8219     out1[10] = x11;
8220     out1[11] = x12;
8221     out1[12] = x13;
8222     out1[13] = x14;
8223     out1[14] = x15;
8224     out1[15] = x16;
8225     out1[16] = x17;
8226     out1[17] = x18;
8227     out1[18] = x19;
8228     out1[19] = x20;
8229     out1[20] = x21;
8230     out1[21] = x22;
8231     out1[22] = x23;
8232 }
8233
8234 /*
8235  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_to_bytes serializes a field element to bytes in little-endian order.
8236  * Postconditions:
8237  *   out1 = map (λ x, ⌊((eval arg1 mod m) mod 2^(8 * (x + 1))) / 2^(8 * x)⌋) [0..63]
8238  *
8239  * Input Bounds:
8240  *   arg1: [[0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000]]
8241  * Output Bounds:
8242  *   out1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]]
8243  */
8244 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_to_bytes(
8245     uint8_t out1[64], const uint32_t arg1[23]) {
8246     uint32_t x1;
8247     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x2;
8248     uint32_t x3;
8249     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x4;
8250     uint32_t x5;
8251     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x6;
8252     uint32_t x7;
8253     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x8;
8254     uint32_t x9;
8255     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x10;
8256     uint32_t x11;
8257     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x12;
8258     uint32_t x13;
8259     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x14;
8260     uint32_t x15;
8261     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x16;
8262     uint32_t x17;
8263     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x18;
8264     uint32_t x19;
8265     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x20;
8266     uint32_t x21;
8267     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x22;
8268     uint32_t x23;
8269     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x24;
8270     uint32_t x25;
8271     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x26;
8272     uint32_t x27;
8273     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x28;
8274     uint32_t x29;
8275     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x30;
8276     uint32_t x31;
8277     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x32;
8278     uint32_t x33;
8279     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x34;
8280     uint32_t x35;
8281     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x36;
8282     uint32_t x37;
8283     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x38;
8284     uint32_t x39;
8285     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x40;
8286     uint32_t x41;
8287     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x42;
8288     uint32_t x43;
8289     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x44;
8290     uint32_t x45;
8291     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x46;
8292     uint32_t x47;
8293     uint32_t x48;
8294     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x49;
8295     uint32_t x50;
8296     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x51;
8297     uint32_t x52;
8298     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x53;
8299     uint32_t x54;
8300     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x55;
8301     uint32_t x56;
8302     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x57;
8303     uint32_t x58;
8304     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x59;
8305     uint32_t x60;
8306     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x61;
8307     uint32_t x62;
8308     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x63;
8309     uint32_t x64;
8310     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x65;
8311     uint32_t x66;
8312     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x67;
8313     uint32_t x68;
8314     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x69;
8315     uint32_t x70;
8316     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x71;
8317     uint32_t x72;
8318     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x73;
8319     uint32_t x74;
8320     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x75;
8321     uint32_t x76;
8322     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x77;
8323     uint32_t x78;
8324     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x79;
8325     uint32_t x80;
8326     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x81;
8327     uint32_t x82;
8328     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x83;
8329     uint32_t x84;
8330     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x85;
8331     uint32_t x86;
8332     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x87;
8333     uint32_t x88;
8334     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x89;
8335     uint32_t x90;
8336     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x91;
8337     uint32_t x92;
8338     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x93;
8339     uint32_t x94;
8340     uint32_t x95;
8341     uint32_t x96;
8342     uint32_t x97;
8343     uint32_t x98;
8344     uint32_t x99;
8345     uint32_t x100;
8346     uint32_t x101;
8347     uint32_t x102;
8348     uint32_t x103;
8349     uint32_t x104;
8350     uint32_t x105;
8351     uint32_t x106;
8352     uint32_t x107;
8353     uint32_t x108;
8354     uint32_t x109;
8355     uint32_t x110;
8356     uint32_t x111;
8357     uint32_t x112;
8358     uint32_t x113;
8359     uint8_t x114;
8360     uint32_t x115;
8361     uint8_t x116;
8362     uint8_t x117;
8363     uint32_t x118;
8364     uint8_t x119;
8365     uint32_t x120;
8366     uint8_t x121;
8367     uint32_t x122;
8368     uint8_t x123;
8369     uint8_t x124;
8370     uint32_t x125;
8371     uint8_t x126;
8372     uint32_t x127;
8373     uint8_t x128;
8374     uint32_t x129;
8375     uint8_t x130;
8376     uint8_t x131;
8377     uint32_t x132;
8378     uint8_t x133;
8379     uint32_t x134;
8380     uint8_t x135;
8381     uint32_t x136;
8382     uint8_t x137;
8383     uint8_t x138;
8384     uint32_t x139;
8385     uint8_t x140;
8386     uint32_t x141;
8387     uint8_t x142;
8388     uint8_t x143;
8389     uint8_t x144;
8390     uint32_t x145;
8391     uint8_t x146;
8392     uint8_t x147;
8393     uint32_t x148;
8394     uint8_t x149;
8395     uint32_t x150;
8396     uint8_t x151;
8397     uint32_t x152;
8398     uint8_t x153;
8399     uint8_t x154;
8400     uint32_t x155;
8401     uint8_t x156;
8402     uint32_t x157;
8403     uint8_t x158;
8404     uint32_t x159;
8405     uint8_t x160;
8406     uint8_t x161;
8407     uint32_t x162;
8408     uint8_t x163;
8409     uint32_t x164;
8410     uint8_t x165;
8411     uint32_t x166;
8412     uint8_t x167;
8413     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x168;
8414     uint32_t x169;
8415     uint8_t x170;
8416     uint32_t x171;
8417     uint8_t x172;
8418     uint8_t x173;
8419     uint32_t x174;
8420     uint8_t x175;
8421     uint32_t x176;
8422     uint8_t x177;
8423     uint32_t x178;
8424     uint8_t x179;
8425     uint8_t x180;
8426     uint32_t x181;
8427     uint8_t x182;
8428     uint32_t x183;
8429     uint8_t x184;
8430     uint32_t x185;
8431     uint8_t x186;
8432     uint8_t x187;
8433     uint32_t x188;
8434     uint8_t x189;
8435     uint32_t x190;
8436     uint8_t x191;
8437     uint32_t x192;
8438     uint8_t x193;
8439     uint8_t x194;
8440     uint32_t x195;
8441     uint8_t x196;
8442     uint32_t x197;
8443     uint8_t x198;
8444     uint8_t x199;
8445     uint8_t x200;
8446     uint32_t x201;
8447     uint8_t x202;
8448     uint8_t x203;
8449     uint32_t x204;
8450     uint8_t x205;
8451     uint32_t x206;
8452     uint8_t x207;
8453     uint32_t x208;
8454     uint8_t x209;
8455     uint8_t x210;
8456     uint32_t x211;
8457     uint8_t x212;
8458     uint32_t x213;
8459     uint8_t x214;
8460     uint32_t x215;
8461     uint8_t x216;
8462     uint8_t x217;
8463     uint32_t x218;
8464     uint8_t x219;
8465     uint32_t x220;
8466     uint8_t x221;
8467     uint32_t x222;
8468     uint8_t x223;
8469     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x224;
8470     uint32_t x225;
8471     uint8_t x226;
8472     uint32_t x227;
8473     uint8_t x228;
8474     uint8_t x229;
8475     uint32_t x230;
8476     uint8_t x231;
8477     uint32_t x232;
8478     uint8_t x233;
8479     uint32_t x234;
8480     uint8_t x235;
8481     uint8_t x236;
8482     uint32_t x237;
8483     uint8_t x238;
8484     uint32_t x239;
8485     uint8_t x240;
8486     uint32_t x241;
8487     uint8_t x242;
8488     uint8_t x243;
8489     uint32_t x244;
8490     uint8_t x245;
8491     uint32_t x246;
8492     uint8_t x247;
8493     uint32_t x248;
8494     uint8_t x249;
8495     uint8_t x250;
8496     uint32_t x251;
8497     uint8_t x252;
8498     uint32_t x253;
8499     uint8_t x254;
8500     uint8_t x255;
8501     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u23(
8502         &x1, &x2, 0x0, (arg1[0]), UINT32_C(0x7ffdc7));
8503     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22(
8504         &x3, &x4, x2, (arg1[1]), UINT32_C(0x3fffff));
8505     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22(
8506         &x5, &x6, x4, (arg1[2]), UINT32_C(0x3fffff));
8507     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u23(
8508         &x7, &x8, x6, (arg1[3]), UINT32_C(0x7fffff));
8509     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22(
8510         &x9, &x10, x8, (arg1[4]), UINT32_C(0x3fffff));
8511     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22(
8512         &x11, &x12, x10, (arg1[5]), UINT32_C(0x3fffff));
8513     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22(
8514         &x13, &x14, x12, (arg1[6]), UINT32_C(0x3fffff));
8515     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u23(
8516         &x15, &x16, x14, (arg1[7]), UINT32_C(0x7fffff));
8517     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22(
8518         &x17, &x18, x16, (arg1[8]), UINT32_C(0x3fffff));
8519     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22(
8520         &x19, &x20, x18, (arg1[9]), UINT32_C(0x3fffff));
8521     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22(
8522         &x21, &x22, x20, (arg1[10]), UINT32_C(0x3fffff));
8523     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u23(
8524         &x23, &x24, x22, (arg1[11]), UINT32_C(0x7fffff));
8525     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22(
8526         &x25, &x26, x24, (arg1[12]), UINT32_C(0x3fffff));
8527     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22(
8528         &x27, &x28, x26, (arg1[13]), UINT32_C(0x3fffff));
8529     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22(
8530         &x29, &x30, x28, (arg1[14]), UINT32_C(0x3fffff));
8531     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u23(
8532         &x31, &x32, x30, (arg1[15]), UINT32_C(0x7fffff));
8533     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22(
8534         &x33, &x34, x32, (arg1[16]), UINT32_C(0x3fffff));
8535     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22(
8536         &x35, &x36, x34, (arg1[17]), UINT32_C(0x3fffff));
8537     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22(
8538         &x37, &x38, x36, (arg1[18]), UINT32_C(0x3fffff));
8539     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u23(
8540         &x39, &x40, x38, (arg1[19]), UINT32_C(0x7fffff));
8541     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22(
8542         &x41, &x42, x40, (arg1[20]), UINT32_C(0x3fffff));
8543     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22(
8544         &x43, &x44, x42, (arg1[21]), UINT32_C(0x3fffff));
8545     fiat_id_tc26_gost_3410_2012_512_paramSetA_subborrowx_u22(
8546         &x45, &x46, x44, (arg1[22]), UINT32_C(0x3fffff));
8547     fiat_id_tc26_gost_3410_2012_512_paramSetA_cmovznz_u32(&x47, x46, 0x0,
8548                                                           UINT32_C(0xffffffff));
8549     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u23(
8550         &x48, &x49, 0x0, x1, (x47 & UINT32_C(0x7ffdc7)));
8551     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22(
8552         &x50, &x51, x49, x3, (x47 & UINT32_C(0x3fffff)));
8553     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22(
8554         &x52, &x53, x51, x5, (x47 & UINT32_C(0x3fffff)));
8555     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u23(
8556         &x54, &x55, x53, x7, (x47 & UINT32_C(0x7fffff)));
8557     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22(
8558         &x56, &x57, x55, x9, (x47 & UINT32_C(0x3fffff)));
8559     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22(
8560         &x58, &x59, x57, x11, (x47 & UINT32_C(0x3fffff)));
8561     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22(
8562         &x60, &x61, x59, x13, (x47 & UINT32_C(0x3fffff)));
8563     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u23(
8564         &x62, &x63, x61, x15, (x47 & UINT32_C(0x7fffff)));
8565     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22(
8566         &x64, &x65, x63, x17, (x47 & UINT32_C(0x3fffff)));
8567     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22(
8568         &x66, &x67, x65, x19, (x47 & UINT32_C(0x3fffff)));
8569     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22(
8570         &x68, &x69, x67, x21, (x47 & UINT32_C(0x3fffff)));
8571     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u23(
8572         &x70, &x71, x69, x23, (x47 & UINT32_C(0x7fffff)));
8573     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22(
8574         &x72, &x73, x71, x25, (x47 & UINT32_C(0x3fffff)));
8575     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22(
8576         &x74, &x75, x73, x27, (x47 & UINT32_C(0x3fffff)));
8577     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22(
8578         &x76, &x77, x75, x29, (x47 & UINT32_C(0x3fffff)));
8579     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u23(
8580         &x78, &x79, x77, x31, (x47 & UINT32_C(0x7fffff)));
8581     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22(
8582         &x80, &x81, x79, x33, (x47 & UINT32_C(0x3fffff)));
8583     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22(
8584         &x82, &x83, x81, x35, (x47 & UINT32_C(0x3fffff)));
8585     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22(
8586         &x84, &x85, x83, x37, (x47 & UINT32_C(0x3fffff)));
8587     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u23(
8588         &x86, &x87, x85, x39, (x47 & UINT32_C(0x7fffff)));
8589     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22(
8590         &x88, &x89, x87, x41, (x47 & UINT32_C(0x3fffff)));
8591     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22(
8592         &x90, &x91, x89, x43, (x47 & UINT32_C(0x3fffff)));
8593     fiat_id_tc26_gost_3410_2012_512_paramSetA_addcarryx_u22(
8594         &x92, &x93, x91, x45, (x47 & UINT32_C(0x3fffff)));
8595     x94 = (x92 << 2);
8596     x95 = (x90 << 4);
8597     x96 = (x88 << 6);
8598     x97 = (x86 << 7);
8599     x98 = (x84 * (uint32_t)0x2);
8600     x99 = (x82 << 3);
8601     x100 = (x80 << 5);
8602     x101 = (x78 << 6);
8603     x102 = (x74 << 2);
8604     x103 = (x72 << 4);
8605     x104 = (x70 << 5);
8606     x105 = (x68 << 7);
8607     x106 = (x66 * (uint32_t)0x2);
8608     x107 = (x64 << 3);
8609     x108 = (x62 << 4);
8610     x109 = (x60 << 6);
8611     x110 = (x56 << 2);
8612     x111 = (x54 << 3);
8613     x112 = (x52 << 5);
8614     x113 = (x50 << 7);
8615     x114 = (uint8_t)(x48 & UINT8_C(0xff));
8616     x115 = (x48 >> 8);
8617     x116 = (uint8_t)(x115 & UINT8_C(0xff));
8618     x117 = (uint8_t)(x115 >> 8);
8619     x118 = (x113 + (uint32_t)x117);
8620     x119 = (uint8_t)(x118 & UINT8_C(0xff));
8621     x120 = (x118 >> 8);
8622     x121 = (uint8_t)(x120 & UINT8_C(0xff));
8623     x122 = (x120 >> 8);
8624     x123 = (uint8_t)(x122 & UINT8_C(0xff));
8625     x124 = (uint8_t)(x122 >> 8);
8626     x125 = (x112 + (uint32_t)x124);
8627     x126 = (uint8_t)(x125 & UINT8_C(0xff));
8628     x127 = (x125 >> 8);
8629     x128 = (uint8_t)(x127 & UINT8_C(0xff));
8630     x129 = (x127 >> 8);
8631     x130 = (uint8_t)(x129 & UINT8_C(0xff));
8632     x131 = (uint8_t)(x129 >> 8);
8633     x132 = (x111 + (uint32_t)x131);
8634     x133 = (uint8_t)(x132 & UINT8_C(0xff));
8635     x134 = (x132 >> 8);
8636     x135 = (uint8_t)(x134 & UINT8_C(0xff));
8637     x136 = (x134 >> 8);
8638     x137 = (uint8_t)(x136 & UINT8_C(0xff));
8639     x138 = (uint8_t)(x136 >> 8);
8640     x139 = (x110 + (uint32_t)x138);
8641     x140 = (uint8_t)(x139 & UINT8_C(0xff));
8642     x141 = (x139 >> 8);
8643     x142 = (uint8_t)(x141 & UINT8_C(0xff));
8644     x143 = (uint8_t)(x141 >> 8);
8645     x144 = (uint8_t)(x58 & UINT8_C(0xff));
8646     x145 = (x58 >> 8);
8647     x146 = (uint8_t)(x145 & UINT8_C(0xff));
8648     x147 = (uint8_t)(x145 >> 8);
8649     x148 = (x109 + (uint32_t)x147);
8650     x149 = (uint8_t)(x148 & UINT8_C(0xff));
8651     x150 = (x148 >> 8);
8652     x151 = (uint8_t)(x150 & UINT8_C(0xff));
8653     x152 = (x150 >> 8);
8654     x153 = (uint8_t)(x152 & UINT8_C(0xff));
8655     x154 = (uint8_t)(x152 >> 8);
8656     x155 = (x108 + (uint32_t)x154);
8657     x156 = (uint8_t)(x155 & UINT8_C(0xff));
8658     x157 = (x155 >> 8);
8659     x158 = (uint8_t)(x157 & UINT8_C(0xff));
8660     x159 = (x157 >> 8);
8661     x160 = (uint8_t)(x159 & UINT8_C(0xff));
8662     x161 = (uint8_t)(x159 >> 8);
8663     x162 = (x107 + (uint32_t)x161);
8664     x163 = (uint8_t)(x162 & UINT8_C(0xff));
8665     x164 = (x162 >> 8);
8666     x165 = (uint8_t)(x164 & UINT8_C(0xff));
8667     x166 = (x164 >> 8);
8668     x167 = (uint8_t)(x166 & UINT8_C(0xff));
8669     x168 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x166 >> 8);
8670     x169 = (x106 + (uint32_t)x168);
8671     x170 = (uint8_t)(x169 & UINT8_C(0xff));
8672     x171 = (x169 >> 8);
8673     x172 = (uint8_t)(x171 & UINT8_C(0xff));
8674     x173 = (uint8_t)(x171 >> 8);
8675     x174 = (x105 + (uint32_t)x173);
8676     x175 = (uint8_t)(x174 & UINT8_C(0xff));
8677     x176 = (x174 >> 8);
8678     x177 = (uint8_t)(x176 & UINT8_C(0xff));
8679     x178 = (x176 >> 8);
8680     x179 = (uint8_t)(x178 & UINT8_C(0xff));
8681     x180 = (uint8_t)(x178 >> 8);
8682     x181 = (x104 + (uint32_t)x180);
8683     x182 = (uint8_t)(x181 & UINT8_C(0xff));
8684     x183 = (x181 >> 8);
8685     x184 = (uint8_t)(x183 & UINT8_C(0xff));
8686     x185 = (x183 >> 8);
8687     x186 = (uint8_t)(x185 & UINT8_C(0xff));
8688     x187 = (uint8_t)(x185 >> 8);
8689     x188 = (x103 + (uint32_t)x187);
8690     x189 = (uint8_t)(x188 & UINT8_C(0xff));
8691     x190 = (x188 >> 8);
8692     x191 = (uint8_t)(x190 & UINT8_C(0xff));
8693     x192 = (x190 >> 8);
8694     x193 = (uint8_t)(x192 & UINT8_C(0xff));
8695     x194 = (uint8_t)(x192 >> 8);
8696     x195 = (x102 + (uint32_t)x194);
8697     x196 = (uint8_t)(x195 & UINT8_C(0xff));
8698     x197 = (x195 >> 8);
8699     x198 = (uint8_t)(x197 & UINT8_C(0xff));
8700     x199 = (uint8_t)(x197 >> 8);
8701     x200 = (uint8_t)(x76 & UINT8_C(0xff));
8702     x201 = (x76 >> 8);
8703     x202 = (uint8_t)(x201 & UINT8_C(0xff));
8704     x203 = (uint8_t)(x201 >> 8);
8705     x204 = (x101 + (uint32_t)x203);
8706     x205 = (uint8_t)(x204 & UINT8_C(0xff));
8707     x206 = (x204 >> 8);
8708     x207 = (uint8_t)(x206 & UINT8_C(0xff));
8709     x208 = (x206 >> 8);
8710     x209 = (uint8_t)(x208 & UINT8_C(0xff));
8711     x210 = (uint8_t)(x208 >> 8);
8712     x211 = (x100 + (uint32_t)x210);
8713     x212 = (uint8_t)(x211 & UINT8_C(0xff));
8714     x213 = (x211 >> 8);
8715     x214 = (uint8_t)(x213 & UINT8_C(0xff));
8716     x215 = (x213 >> 8);
8717     x216 = (uint8_t)(x215 & UINT8_C(0xff));
8718     x217 = (uint8_t)(x215 >> 8);
8719     x218 = (x99 + (uint32_t)x217);
8720     x219 = (uint8_t)(x218 & UINT8_C(0xff));
8721     x220 = (x218 >> 8);
8722     x221 = (uint8_t)(x220 & UINT8_C(0xff));
8723     x222 = (x220 >> 8);
8724     x223 = (uint8_t)(x222 & UINT8_C(0xff));
8725     x224 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x222 >> 8);
8726     x225 = (x98 + (uint32_t)x224);
8727     x226 = (uint8_t)(x225 & UINT8_C(0xff));
8728     x227 = (x225 >> 8);
8729     x228 = (uint8_t)(x227 & UINT8_C(0xff));
8730     x229 = (uint8_t)(x227 >> 8);
8731     x230 = (x97 + (uint32_t)x229);
8732     x231 = (uint8_t)(x230 & UINT8_C(0xff));
8733     x232 = (x230 >> 8);
8734     x233 = (uint8_t)(x232 & UINT8_C(0xff));
8735     x234 = (x232 >> 8);
8736     x235 = (uint8_t)(x234 & UINT8_C(0xff));
8737     x236 = (uint8_t)(x234 >> 8);
8738     x237 = (x96 + (uint32_t)x236);
8739     x238 = (uint8_t)(x237 & UINT8_C(0xff));
8740     x239 = (x237 >> 8);
8741     x240 = (uint8_t)(x239 & UINT8_C(0xff));
8742     x241 = (x239 >> 8);
8743     x242 = (uint8_t)(x241 & UINT8_C(0xff));
8744     x243 = (uint8_t)(x241 >> 8);
8745     x244 = (x95 + (uint32_t)x243);
8746     x245 = (uint8_t)(x244 & UINT8_C(0xff));
8747     x246 = (x244 >> 8);
8748     x247 = (uint8_t)(x246 & UINT8_C(0xff));
8749     x248 = (x246 >> 8);
8750     x249 = (uint8_t)(x248 & UINT8_C(0xff));
8751     x250 = (uint8_t)(x248 >> 8);
8752     x251 = (x94 + (uint32_t)x250);
8753     x252 = (uint8_t)(x251 & UINT8_C(0xff));
8754     x253 = (x251 >> 8);
8755     x254 = (uint8_t)(x253 & UINT8_C(0xff));
8756     x255 = (uint8_t)(x253 >> 8);
8757     out1[0] = x114;
8758     out1[1] = x116;
8759     out1[2] = x119;
8760     out1[3] = x121;
8761     out1[4] = x123;
8762     out1[5] = x126;
8763     out1[6] = x128;
8764     out1[7] = x130;
8765     out1[8] = x133;
8766     out1[9] = x135;
8767     out1[10] = x137;
8768     out1[11] = x140;
8769     out1[12] = x142;
8770     out1[13] = x143;
8771     out1[14] = x144;
8772     out1[15] = x146;
8773     out1[16] = x149;
8774     out1[17] = x151;
8775     out1[18] = x153;
8776     out1[19] = x156;
8777     out1[20] = x158;
8778     out1[21] = x160;
8779     out1[22] = x163;
8780     out1[23] = x165;
8781     out1[24] = x167;
8782     out1[25] = x170;
8783     out1[26] = x172;
8784     out1[27] = x175;
8785     out1[28] = x177;
8786     out1[29] = x179;
8787     out1[30] = x182;
8788     out1[31] = x184;
8789     out1[32] = x186;
8790     out1[33] = x189;
8791     out1[34] = x191;
8792     out1[35] = x193;
8793     out1[36] = x196;
8794     out1[37] = x198;
8795     out1[38] = x199;
8796     out1[39] = x200;
8797     out1[40] = x202;
8798     out1[41] = x205;
8799     out1[42] = x207;
8800     out1[43] = x209;
8801     out1[44] = x212;
8802     out1[45] = x214;
8803     out1[46] = x216;
8804     out1[47] = x219;
8805     out1[48] = x221;
8806     out1[49] = x223;
8807     out1[50] = x226;
8808     out1[51] = x228;
8809     out1[52] = x231;
8810     out1[53] = x233;
8811     out1[54] = x235;
8812     out1[55] = x238;
8813     out1[56] = x240;
8814     out1[57] = x242;
8815     out1[58] = x245;
8816     out1[59] = x247;
8817     out1[60] = x249;
8818     out1[61] = x252;
8819     out1[62] = x254;
8820     out1[63] = x255;
8821 }
8822
8823 /*
8824  * The function fiat_id_tc26_gost_3410_2012_512_paramSetA_from_bytes deserializes a field element from bytes in little-endian order.
8825  * Postconditions:
8826  *   eval out1 mod m = bytes_eval arg1 mod m
8827  *
8828  * Input Bounds:
8829  *   arg1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]]
8830  * Output Bounds:
8831  *   out1: [[0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x800000], [0x0 ~> 0x400000], [0x0 ~> 0x400000], [0x0 ~> 0x400000]]
8832  */
8833 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_from_bytes(
8834     uint32_t out1[23], const uint8_t arg1[64]) {
8835     uint32_t x1;
8836     uint32_t x2;
8837     uint32_t x3;
8838     uint32_t x4;
8839     uint32_t x5;
8840     uint32_t x6;
8841     uint32_t x7;
8842     uint32_t x8;
8843     uint32_t x9;
8844     uint32_t x10;
8845     uint32_t x11;
8846     uint32_t x12;
8847     uint32_t x13;
8848     uint32_t x14;
8849     uint32_t x15;
8850     uint32_t x16;
8851     uint32_t x17;
8852     uint32_t x18;
8853     uint32_t x19;
8854     uint32_t x20;
8855     uint32_t x21;
8856     uint32_t x22;
8857     uint32_t x23;
8858     uint32_t x24;
8859     uint8_t x25;
8860     uint32_t x26;
8861     uint32_t x27;
8862     uint32_t x28;
8863     uint32_t x29;
8864     uint32_t x30;
8865     uint32_t x31;
8866     uint32_t x32;
8867     uint32_t x33;
8868     uint32_t x34;
8869     uint32_t x35;
8870     uint32_t x36;
8871     uint32_t x37;
8872     uint32_t x38;
8873     uint32_t x39;
8874     uint32_t x40;
8875     uint32_t x41;
8876     uint32_t x42;
8877     uint32_t x43;
8878     uint32_t x44;
8879     uint32_t x45;
8880     uint32_t x46;
8881     uint32_t x47;
8882     uint32_t x48;
8883     uint32_t x49;
8884     uint8_t x50;
8885     uint32_t x51;
8886     uint32_t x52;
8887     uint32_t x53;
8888     uint32_t x54;
8889     uint32_t x55;
8890     uint32_t x56;
8891     uint32_t x57;
8892     uint32_t x58;
8893     uint32_t x59;
8894     uint32_t x60;
8895     uint32_t x61;
8896     uint32_t x62;
8897     uint32_t x63;
8898     uint8_t x64;
8899     uint32_t x65;
8900     uint32_t x66;
8901     uint32_t x67;
8902     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x68;
8903     uint32_t x69;
8904     uint32_t x70;
8905     uint32_t x71;
8906     uint32_t x72;
8907     uint8_t x73;
8908     uint32_t x74;
8909     uint32_t x75;
8910     uint32_t x76;
8911     uint32_t x77;
8912     uint8_t x78;
8913     uint32_t x79;
8914     uint32_t x80;
8915     uint32_t x81;
8916     uint32_t x82;
8917     uint8_t x83;
8918     uint32_t x84;
8919     uint32_t x85;
8920     uint32_t x86;
8921     uint32_t x87;
8922     uint32_t x88;
8923     uint8_t x89;
8924     uint32_t x90;
8925     uint32_t x91;
8926     uint32_t x92;
8927     uint32_t x93;
8928     uint8_t x94;
8929     uint32_t x95;
8930     uint32_t x96;
8931     uint32_t x97;
8932     uint32_t x98;
8933     uint8_t x99;
8934     uint32_t x100;
8935     uint32_t x101;
8936     uint32_t x102;
8937     uint32_t x103;
8938     uint8_t x104;
8939     uint32_t x105;
8940     uint32_t x106;
8941     uint32_t x107;
8942     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x108;
8943     uint32_t x109;
8944     uint32_t x110;
8945     uint32_t x111;
8946     uint32_t x112;
8947     uint8_t x113;
8948     uint32_t x114;
8949     uint32_t x115;
8950     uint32_t x116;
8951     uint32_t x117;
8952     uint8_t x118;
8953     uint32_t x119;
8954     uint32_t x120;
8955     uint32_t x121;
8956     uint32_t x122;
8957     uint8_t x123;
8958     uint32_t x124;
8959     uint32_t x125;
8960     uint32_t x126;
8961     uint32_t x127;
8962     uint32_t x128;
8963     uint8_t x129;
8964     uint32_t x130;
8965     uint32_t x131;
8966     uint32_t x132;
8967     uint32_t x133;
8968     uint8_t x134;
8969     uint32_t x135;
8970     uint32_t x136;
8971     uint32_t x137;
8972     uint32_t x138;
8973     uint8_t x139;
8974     uint32_t x140;
8975     uint32_t x141;
8976     uint32_t x142;
8977     uint32_t x143;
8978     uint8_t x144;
8979     uint32_t x145;
8980     uint32_t x146;
8981     uint32_t x147;
8982     fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1 x148;
8983     uint32_t x149;
8984     uint32_t x150;
8985     uint32_t x151;
8986     uint32_t x152;
8987     uint8_t x153;
8988     uint32_t x154;
8989     uint32_t x155;
8990     uint32_t x156;
8991     uint32_t x157;
8992     uint8_t x158;
8993     uint32_t x159;
8994     uint32_t x160;
8995     uint32_t x161;
8996     uint32_t x162;
8997     uint8_t x163;
8998     uint32_t x164;
8999     uint32_t x165;
9000     x1 = ((uint32_t)(arg1[63]) << 14);
9001     x2 = ((uint32_t)(arg1[62]) << 6);
9002     x3 = ((uint32_t)(arg1[61]) << 20);
9003     x4 = ((uint32_t)(arg1[60]) << 12);
9004     x5 = ((uint32_t)(arg1[59]) << 4);
9005     x6 = ((uint32_t)(arg1[58]) << 18);
9006     x7 = ((uint32_t)(arg1[57]) << 10);
9007     x8 = ((uint32_t)(arg1[56]) << 2);
9008     x9 = ((uint32_t)(arg1[55]) << 17);
9009     x10 = ((uint32_t)(arg1[54]) << 9);
9010     x11 = ((uint32_t)(arg1[53]) * 0x2);
9011     x12 = ((uint32_t)(arg1[52]) << 15);
9012     x13 = ((uint32_t)(arg1[51]) << 7);
9013     x14 = ((uint32_t)(arg1[50]) << 21);
9014     x15 = ((uint32_t)(arg1[49]) << 13);
9015     x16 = ((uint32_t)(arg1[48]) << 5);
9016     x17 = ((uint32_t)(arg1[47]) << 19);
9017     x18 = ((uint32_t)(arg1[46]) << 11);
9018     x19 = ((uint32_t)(arg1[45]) << 3);
9019     x20 = ((uint32_t)(arg1[44]) << 18);
9020     x21 = ((uint32_t)(arg1[43]) << 10);
9021     x22 = ((uint32_t)(arg1[42]) << 2);
9022     x23 = ((uint32_t)(arg1[41]) << 16);
9023     x24 = ((uint32_t)(arg1[40]) << 8);
9024     x25 = (arg1[39]);
9025     x26 = ((uint32_t)(arg1[38]) << 14);
9026     x27 = ((uint32_t)(arg1[37]) << 6);
9027     x28 = ((uint32_t)(arg1[36]) << 20);
9028     x29 = ((uint32_t)(arg1[35]) << 12);
9029     x30 = ((uint32_t)(arg1[34]) << 4);
9030     x31 = ((uint32_t)(arg1[33]) << 19);
9031     x32 = ((uint32_t)(arg1[32]) << 11);
9032     x33 = ((uint32_t)(arg1[31]) << 3);
9033     x34 = ((uint32_t)(arg1[30]) << 17);
9034     x35 = ((uint32_t)(arg1[29]) << 9);
9035     x36 = ((uint32_t)(arg1[28]) * 0x2);
9036     x37 = ((uint32_t)(arg1[27]) << 15);
9037     x38 = ((uint32_t)(arg1[26]) << 7);
9038     x39 = ((uint32_t)(arg1[25]) << 21);
9039     x40 = ((uint32_t)(arg1[24]) << 13);
9040     x41 = ((uint32_t)(arg1[23]) << 5);
9041     x42 = ((uint32_t)(arg1[22]) << 20);
9042     x43 = ((uint32_t)(arg1[21]) << 12);
9043     x44 = ((uint32_t)(arg1[20]) << 4);
9044     x45 = ((uint32_t)(arg1[19]) << 18);
9045     x46 = ((uint32_t)(arg1[18]) << 10);
9046     x47 = ((uint32_t)(arg1[17]) << 2);
9047     x48 = ((uint32_t)(arg1[16]) << 16);
9048     x49 = ((uint32_t)(arg1[15]) << 8);
9049     x50 = (arg1[14]);
9050     x51 = ((uint32_t)(arg1[13]) << 14);
9051     x52 = ((uint32_t)(arg1[12]) << 6);
9052     x53 = ((uint32_t)(arg1[11]) << 21);
9053     x54 = ((uint32_t)(arg1[10]) << 13);
9054     x55 = ((uint32_t)(arg1[9]) << 5);
9055     x56 = ((uint32_t)(arg1[8]) << 19);
9056     x57 = ((uint32_t)(arg1[7]) << 11);
9057     x58 = ((uint32_t)(arg1[6]) << 3);
9058     x59 = ((uint32_t)(arg1[5]) << 17);
9059     x60 = ((uint32_t)(arg1[4]) << 9);
9060     x61 = ((uint32_t)(arg1[3]) * 0x2);
9061     x62 = ((uint32_t)(arg1[2]) << 16);
9062     x63 = ((uint32_t)(arg1[1]) << 8);
9063     x64 = (arg1[0]);
9064     x65 = (x63 + (uint32_t)x64);
9065     x66 = (x62 + x65);
9066     x67 = (x66 & UINT32_C(0x7fffff));
9067     x68 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x66 >> 23);
9068     x69 = (x61 + (uint32_t)x68);
9069     x70 = (x60 + x69);
9070     x71 = (x59 + x70);
9071     x72 = (x71 & UINT32_C(0x3fffff));
9072     x73 = (uint8_t)(x71 >> 22);
9073     x74 = (x58 + (uint32_t)x73);
9074     x75 = (x57 + x74);
9075     x76 = (x56 + x75);
9076     x77 = (x76 & UINT32_C(0x3fffff));
9077     x78 = (uint8_t)(x76 >> 22);
9078     x79 = (x55 + (uint32_t)x78);
9079     x80 = (x54 + x79);
9080     x81 = (x53 + x80);
9081     x82 = (x81 & UINT32_C(0x7fffff));
9082     x83 = (uint8_t)(x81 >> 23);
9083     x84 = (x52 + (uint32_t)x83);
9084     x85 = (x51 + x84);
9085     x86 = (x49 + (uint32_t)x50);
9086     x87 = (x48 + x86);
9087     x88 = (x87 & UINT32_C(0x3fffff));
9088     x89 = (uint8_t)(x87 >> 22);
9089     x90 = (x47 + (uint32_t)x89);
9090     x91 = (x46 + x90);
9091     x92 = (x45 + x91);
9092     x93 = (x92 & UINT32_C(0x3fffff));
9093     x94 = (uint8_t)(x92 >> 22);
9094     x95 = (x44 + (uint32_t)x94);
9095     x96 = (x43 + x95);
9096     x97 = (x42 + x96);
9097     x98 = (x97 & UINT32_C(0x7fffff));
9098     x99 = (uint8_t)(x97 >> 23);
9099     x100 = (x41 + (uint32_t)x99);
9100     x101 = (x40 + x100);
9101     x102 = (x39 + x101);
9102     x103 = (x102 & UINT32_C(0x3fffff));
9103     x104 = (uint8_t)(x102 >> 22);
9104     x105 = (x38 + (uint32_t)x104);
9105     x106 = (x37 + x105);
9106     x107 = (x106 & UINT32_C(0x3fffff));
9107     x108 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x106 >> 22);
9108     x109 = (x36 + (uint32_t)x108);
9109     x110 = (x35 + x109);
9110     x111 = (x34 + x110);
9111     x112 = (x111 & UINT32_C(0x3fffff));
9112     x113 = (uint8_t)(x111 >> 22);
9113     x114 = (x33 + (uint32_t)x113);
9114     x115 = (x32 + x114);
9115     x116 = (x31 + x115);
9116     x117 = (x116 & UINT32_C(0x7fffff));
9117     x118 = (uint8_t)(x116 >> 23);
9118     x119 = (x30 + (uint32_t)x118);
9119     x120 = (x29 + x119);
9120     x121 = (x28 + x120);
9121     x122 = (x121 & UINT32_C(0x3fffff));
9122     x123 = (uint8_t)(x121 >> 22);
9123     x124 = (x27 + (uint32_t)x123);
9124     x125 = (x26 + x124);
9125     x126 = (x24 + (uint32_t)x25);
9126     x127 = (x23 + x126);
9127     x128 = (x127 & UINT32_C(0x3fffff));
9128     x129 = (uint8_t)(x127 >> 22);
9129     x130 = (x22 + (uint32_t)x129);
9130     x131 = (x21 + x130);
9131     x132 = (x20 + x131);
9132     x133 = (x132 & UINT32_C(0x7fffff));
9133     x134 = (uint8_t)(x132 >> 23);
9134     x135 = (x19 + (uint32_t)x134);
9135     x136 = (x18 + x135);
9136     x137 = (x17 + x136);
9137     x138 = (x137 & UINT32_C(0x3fffff));
9138     x139 = (uint8_t)(x137 >> 22);
9139     x140 = (x16 + (uint32_t)x139);
9140     x141 = (x15 + x140);
9141     x142 = (x14 + x141);
9142     x143 = (x142 & UINT32_C(0x3fffff));
9143     x144 = (uint8_t)(x142 >> 22);
9144     x145 = (x13 + (uint32_t)x144);
9145     x146 = (x12 + x145);
9146     x147 = (x146 & UINT32_C(0x3fffff));
9147     x148 = (fiat_id_tc26_gost_3410_2012_512_paramSetA_uint1)(x146 >> 22);
9148     x149 = (x11 + (uint32_t)x148);
9149     x150 = (x10 + x149);
9150     x151 = (x9 + x150);
9151     x152 = (x151 & UINT32_C(0x7fffff));
9152     x153 = (uint8_t)(x151 >> 23);
9153     x154 = (x8 + (uint32_t)x153);
9154     x155 = (x7 + x154);
9155     x156 = (x6 + x155);
9156     x157 = (x156 & UINT32_C(0x3fffff));
9157     x158 = (uint8_t)(x156 >> 22);
9158     x159 = (x5 + (uint32_t)x158);
9159     x160 = (x4 + x159);
9160     x161 = (x3 + x160);
9161     x162 = (x161 & UINT32_C(0x3fffff));
9162     x163 = (uint8_t)(x161 >> 22);
9163     x164 = (x2 + (uint32_t)x163);
9164     x165 = (x1 + x164);
9165     out1[0] = x67;
9166     out1[1] = x72;
9167     out1[2] = x77;
9168     out1[3] = x82;
9169     out1[4] = x85;
9170     out1[5] = x88;
9171     out1[6] = x93;
9172     out1[7] = x98;
9173     out1[8] = x103;
9174     out1[9] = x107;
9175     out1[10] = x112;
9176     out1[11] = x117;
9177     out1[12] = x122;
9178     out1[13] = x125;
9179     out1[14] = x128;
9180     out1[15] = x133;
9181     out1[16] = x138;
9182     out1[17] = x143;
9183     out1[18] = x147;
9184     out1[19] = x152;
9185     out1[20] = x157;
9186     out1[21] = x162;
9187     out1[22] = x165;
9188 }
9189
9190 /* END verbatim fiat code */
9191
9192 /*-
9193  * Finite field inversion via FLT.
9194  * NB: this is not a real Fiat function, just named that way for consistency.
9195  * Autogenerated: ecp/id_tc26_gost_3410_2012_512_paramSetA/fe_inv.op3
9196  * custom repunit addition chain
9197  */
9198 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_inv(fe_t output,
9199                                                           const fe_t t1) {
9200     int i;
9201     /* temporary variables */
9202     fe_t acc, t102, t12, t198, t2, t200, t24, t3, t400, t48, t502, t6, t96;
9203
9204     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t1);
9205     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t2, acc, t1);
9206     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t2);
9207     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t3, acc, t1);
9208     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t3);
9209     for (i = 0; i < 2; i++)
9210         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
9211     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t6, acc, t3);
9212     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t6);
9213     for (i = 0; i < 5; i++)
9214         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
9215     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t12, acc, t6);
9216     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t12);
9217     for (i = 0; i < 11; i++)
9218         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
9219     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t24, acc, t12);
9220     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t24);
9221     for (i = 0; i < 23; i++)
9222         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
9223     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t48, acc, t24);
9224     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t48);
9225     for (i = 0; i < 47; i++)
9226         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
9227     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t96, acc, t48);
9228     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t96);
9229     for (i = 0; i < 5; i++)
9230         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
9231     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t102, acc, t6);
9232     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t102);
9233     for (i = 0; i < 95; i++)
9234         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
9235     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t198, acc, t96);
9236     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t198);
9237     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
9238     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t200, acc, t2);
9239     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t200);
9240     for (i = 0; i < 199; i++)
9241         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
9242     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t400, acc, t200);
9243     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t400);
9244     for (i = 0; i < 101; i++)
9245         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
9246     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t502, acc, t102);
9247     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, t502);
9248     for (i = 0; i < 3; i++)
9249         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
9250     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(acc, acc, t3);
9251     for (i = 0; i < 4; i++)
9252         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
9253     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(acc, acc, t1);
9254     for (i = 0; i < 2; i++)
9255         fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(acc, acc);
9256     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(output, acc, t1);
9257 }
9258
9259 /* curve coefficient constants */
9260
9261 static const limb_t const_one[23] = {
9262     UINT32_C(0x00000001), UINT32_C(0x00000000), UINT32_C(0x00000000),
9263     UINT32_C(0x00000000), UINT32_C(0x00000000), UINT32_C(0x00000000),
9264     UINT32_C(0x00000000), UINT32_C(0x00000000), UINT32_C(0x00000000),
9265     UINT32_C(0x00000000), UINT32_C(0x00000000), UINT32_C(0x00000000),
9266     UINT32_C(0x00000000), UINT32_C(0x00000000), UINT32_C(0x00000000),
9267     UINT32_C(0x00000000), UINT32_C(0x00000000), UINT32_C(0x00000000),
9268     UINT32_C(0x00000000), UINT32_C(0x00000000), UINT32_C(0x00000000),
9269     UINT32_C(0x00000000), UINT32_C(0x00000000)};
9270
9271 static const limb_t const_b[23] = {
9272     UINT32_C(0x0071C760), UINT32_C(0x0020F0B4), UINT32_C(0x000A818C),
9273     UINT32_C(0x007DC8EC), UINT32_C(0x003E753A), UINT32_C(0x001D862E),
9274     UINT32_C(0x00036A43), UINT32_C(0x00457401), UINT32_C(0x002C2996),
9275     UINT32_C(0x00398693), UINT32_C(0x00396121), UINT32_C(0x00132F71),
9276     UINT32_C(0x000FD0B6), UINT32_C(0x002F4207), UINT32_C(0x0030E879),
9277     UINT32_C(0x0051D872), UINT32_C(0x0025C12B), UINT32_C(0x003E3B46),
9278     UINT32_C(0x0015B333), UINT32_C(0x00037A16), UINT32_C(0x00321B77),
9279     UINT32_C(0x0005DEDF), UINT32_C(0x003A3094)};
9280
9281 /* LUT for scalar multiplication by comb interleaving */
9282 static const pt_aff_t lut_cmb[11][16] = {
9283     {
9284         {{UINT32_C(0x00000003), UINT32_C(0x00000000), UINT32_C(0x00000000),
9285           UINT32_C(0x00000000), UINT32_C(0x00000000), UINT32_C(0x00000000),
9286           UINT32_C(0x00000000), UINT32_C(0x00000000), UINT32_C(0x00000000),
9287           UINT32_C(0x00000000), UINT32_C(0x00000000), UINT32_C(0x00000000),
9288           UINT32_C(0x00000000), UINT32_C(0x00000000), UINT32_C(0x00000000),
9289           UINT32_C(0x00000000), UINT32_C(0x00000000), UINT32_C(0x00000000),
9290           UINT32_C(0x00000000), UINT32_C(0x00000000), UINT32_C(0x00000000),
9291           UINT32_C(0x00000000), UINT32_C(0x00000000)},
9292          {UINT32_C(0x0015F2A4), UINT32_C(0x001396A4), UINT32_C(0x00044D2C),
9293           UINT32_C(0x0046BEB7), UINT32_C(0x003F97F0), UINT32_C(0x00298028),
9294           UINT32_C(0x0038E907), UINT32_C(0x005E6A50), UINT32_C(0x001D27AE),
9295           UINT32_C(0x0027E81B), UINT32_C(0x002C4D7C), UINT32_C(0x00490EF8),
9296           UINT32_C(0x001CBEFA), UINT32_C(0x0020193F), UINT32_C(0x002BC177),
9297           UINT32_C(0x004EB3C6), UINT32_C(0x0032F0E4), UINT32_C(0x000A1CD9),
9298           UINT32_C(0x000B712A), UINT32_C(0x004C3710), UINT32_C(0x000DAB8E),
9299           UINT32_C(0x003E87A8), UINT32_C(0x001D40F3)}},
9300         {{UINT32_C(0x004B87C3), UINT32_C(0x0028D0F9), UINT32_C(0x0020B709),
9301           UINT32_C(0x000A89D0), UINT32_C(0x0033EE84), UINT32_C(0x003AEC55),
9302           UINT32_C(0x000C2241), UINT32_C(0x0032F57B), UINT32_C(0x002BAEC9),
9303           UINT32_C(0x002696E9), UINT32_C(0x00250816), UINT32_C(0x005D2A1E),
9304           UINT32_C(0x001F488F), UINT32_C(0x0010A475), UINT32_C(0x0028A117),
9305           UINT32_C(0x00302585), UINT32_C(0x002D8AB6), UINT32_C(0x002CFF09),
9306           UINT32_C(0x002EDAD2), UINT32_C(0x006A726B), UINT32_C(0x002899FA),
9307           UINT32_C(0x002B2712), UINT32_C(0x00287FC6)},
9308          {UINT32_C(0x000D90D6), UINT32_C(0x002FD8A3), UINT32_C(0x003892E6),
9309           UINT32_C(0x0049F6D8), UINT32_C(0x001BDC46), UINT32_C(0x0014C636),
9310           UINT32_C(0x002531B7), UINT32_C(0x007AC2FE), UINT32_C(0x002DDD59),
9311           UINT32_C(0x0033E260), UINT32_C(0x00275EFC), UINT32_C(0x0075988E),
9312           UINT32_C(0x003333F7), UINT32_C(0x0020678F), UINT32_C(0x000FBFA3),
9313           UINT32_C(0x00235FE1), UINT32_C(0x0020F1D2), UINT32_C(0x00373098),
9314           UINT32_C(0x000C4DDA), UINT32_C(0x00606E9E), UINT32_C(0x00118DFC),
9315           UINT32_C(0x000417EC), UINT32_C(0x000F2D71)}},
9316         {{UINT32_C(0x007F1E5F), UINT32_C(0x001419C8), UINT32_C(0x002CF1D7),
9317           UINT32_C(0x000E5B8F), UINT32_C(0x00025B6A), UINT32_C(0x00099E5B),
9318           UINT32_C(0x001804DC), UINT32_C(0x002F7572), UINT32_C(0x002A640E),
9319           UINT32_C(0x000FB103), UINT32_C(0x00291840), UINT32_C(0x007FD916),
9320           UINT32_C(0x0005B8C9), UINT32_C(0x00131C59), UINT32_C(0x0031C148),
9321           UINT32_C(0x002BF81B), UINT32_C(0x00139B07), UINT32_C(0x002FF2FF),
9322           UINT32_C(0x00049C2D), UINT32_C(0x0011BB6C), UINT32_C(0x002B0A64),
9323           UINT32_C(0x001D12B8), UINT32_C(0x0015A2A0)},
9324          {UINT32_C(0x0006CBC6), UINT32_C(0x0027724E), UINT32_C(0x00302B5D),
9325           UINT32_C(0x001BC2F1), UINT32_C(0x003F55C0), UINT32_C(0x003AA25F),
9326           UINT32_C(0x00232F00), UINT32_C(0x0074A629), UINT32_C(0x00037B4E),
9327           UINT32_C(0x0024E8BE), UINT32_C(0x002A188A), UINT32_C(0x002CB205),
9328           UINT32_C(0x0003ED36), UINT32_C(0x001C4269), UINT32_C(0x002BD5C1),
9329           UINT32_C(0x0026AD6C), UINT32_C(0x001235FE), UINT32_C(0x001CF2C0),
9330           UINT32_C(0x0024E745), UINT32_C(0x0068766F), UINT32_C(0x002BE51F),
9331           UINT32_C(0x001B57A0), UINT32_C(0x001E35B3)}},
9332         {{UINT32_C(0x005256E0), UINT32_C(0x003F836F), UINT32_C(0x00373455),
9333           UINT32_C(0x0075BA3A), UINT32_C(0x002108B7), UINT32_C(0x001C82BE),
9334           UINT32_C(0x00267DD8), UINT32_C(0x004ECEBF), UINT32_C(0x002F62E6),
9335           UINT32_C(0x000A8F9E), UINT32_C(0x000CDAFA), UINT32_C(0x0043A073),
9336           UINT32_C(0x00313659), UINT32_C(0x00154A30), UINT32_C(0x0016402E),
9337           UINT32_C(0x001175DB), UINT32_C(0x000E2798), UINT32_C(0x001F5060),
9338           UINT32_C(0x0033E5EC), UINT32_C(0x001D0B54), UINT32_C(0x001ADD71),
9339           UINT32_C(0x0023DAD9), UINT32_C(0x001E1CA5)},
9340          {UINT32_C(0x00755E5A), UINT32_C(0x00183470), UINT32_C(0x0023F0D4),
9341           UINT32_C(0x00313928), UINT32_C(0x002DD729), UINT32_C(0x001D3E91),
9342           UINT32_C(0x0035AE71), UINT32_C(0x005318A6), UINT32_C(0x002F3EDB),
9343           UINT32_C(0x00289630), UINT32_C(0x0038D891), UINT32_C(0x007CF062),
9344           UINT32_C(0x0038EE6A), UINT32_C(0x0013AFF2), UINT32_C(0x002E68F8),
9345           UINT32_C(0x0064FAA0), UINT32_C(0x003BF0E8), UINT32_C(0x000AA0E7),
9346           UINT32_C(0x0002840F), UINT32_C(0x003DE33E), UINT32_C(0x0022D493),
9347           UINT32_C(0x003F570B), UINT32_C(0x002197B3)}},
9348         {{UINT32_C(0x003642A2), UINT32_C(0x00299DCA), UINT32_C(0x003D77E1),
9349           UINT32_C(0x00489D30), UINT32_C(0x0027522E), UINT32_C(0x00240D64),
9350           UINT32_C(0x002F9F74), UINT32_C(0x0019C938), UINT32_C(0x00296297),
9351           UINT32_C(0x001E1814), UINT32_C(0x0004E1B7), UINT32_C(0x0023D69C),
9352           UINT32_C(0x0003213C), UINT32_C(0x0004FF86), UINT32_C(0x001C3786),
9353           UINT32_C(0x00304EA3), UINT32_C(0x0014189F), UINT32_C(0x0006EA0F),
9354           UINT32_C(0x00069315), UINT32_C(0x0011E349), UINT32_C(0x00397B6C),
9355           UINT32_C(0x0000F3CD), UINT32_C(0x002183EC)},
9356          {UINT32_C(0x002E3C8E), UINT32_C(0x00250F3A), UINT32_C(0x003F23C0),
9357           UINT32_C(0x000E6089), UINT32_C(0x001AA647), UINT32_C(0x001449A0),
9358           UINT32_C(0x001EE430), UINT32_C(0x006EFFDC), UINT32_C(0x002D388D),
9359           UINT32_C(0x0019E36B), UINT32_C(0x001D016D), UINT32_C(0x000829C5),
9360           UINT32_C(0x00391C21), UINT32_C(0x00271FC6), UINT32_C(0x002F3A60),
9361           UINT32_C(0x0019B88F), UINT32_C(0x001CF454), UINT32_C(0x002B6D5C),
9362           UINT32_C(0x001DAE4B), UINT32_C(0x0014A040), UINT32_C(0x002920C3),
9363           UINT32_C(0x0017BC1F), UINT32_C(0x0019D5E3)}},
9364         {{UINT32_C(0x00135C5B), UINT32_C(0x001DC3CE), UINT32_C(0x0004C781),
9365           UINT32_C(0x00080E30), UINT32_C(0x0009851D), UINT32_C(0x00350569),
9366           UINT32_C(0x002E8442), UINT32_C(0x001051D8), UINT32_C(0x0004FD70),
9367           UINT32_C(0x00134424), UINT32_C(0x000F2B29), UINT32_C(0x00685F52),
9368           UINT32_C(0x002DDECE), UINT32_C(0x00008902), UINT32_C(0x002F4764),
9369           UINT32_C(0x000E5C3D), UINT32_C(0x0032A0B9), UINT32_C(0x001A6033),
9370           UINT32_C(0x0012A3E6), UINT32_C(0x006BF5EC), UINT32_C(0x003D93F8),
9371           UINT32_C(0x00360B6E), UINT32_C(0x0018B3FC)},
9372          {UINT32_C(0x004ECF79), UINT32_C(0x0000B2AA), UINT32_C(0x003FB9C2),
9373           UINT32_C(0x0078CE6D), UINT32_C(0x001215D4), UINT32_C(0x0038E3DD),
9374           UINT32_C(0x000C3346), UINT32_C(0x004C9060), UINT32_C(0x003D3143),
9375           UINT32_C(0x00243B10), UINT32_C(0x00259423), UINT32_C(0x006A2B73),
9376           UINT32_C(0x0028505D), UINT32_C(0x000AE48C), UINT32_C(0x0000C6EE),
9377           UINT32_C(0x00572490), UINT32_C(0x0027D956), UINT32_C(0x0014406A),
9378           UINT32_C(0x0033BE99), UINT32_C(0x0018C2FA), UINT32_C(0x002F3AF0),
9379           UINT32_C(0x001405C5), UINT32_C(0x00064B19)}},
9380         {{UINT32_C(0x001F2EBD), UINT32_C(0x000510C7), UINT32_C(0x0019AE41),
9381           UINT32_C(0x007CB53E), UINT32_C(0x003AB38E), UINT32_C(0x003266F9),
9382           UINT32_C(0x00208EB6), UINT32_C(0x006D10F3), UINT32_C(0x001D6C3A),
9383           UINT32_C(0x002D7D80), UINT32_C(0x000B3C9D), UINT32_C(0x0048BDA2),
9384           UINT32_C(0x0014CC2E), UINT32_C(0x00156682), UINT32_C(0x000BAEBC),
9385           UINT32_C(0x0032A9C9), UINT32_C(0x001FD4D5), UINT32_C(0x00323040),
9386           UINT32_C(0x00282E72), UINT32_C(0x003CE90A), UINT32_C(0x0007C3A6),
9387           UINT32_C(0x0004F672), UINT32_C(0x0019034A)},
9388          {UINT32_C(0x004DEA72), UINT32_C(0x00355CF9), UINT32_C(0x002BBD82),
9389           UINT32_C(0x004625D7), UINT32_C(0x0035A89F), UINT32_C(0x002CE049),
9390           UINT32_C(0x001D8906), UINT32_C(0x0000050C), UINT32_C(0x00357091),
9391           UINT32_C(0x001D1A1C), UINT32_C(0x001A15E2), UINT32_C(0x002C9AA7),
9392           UINT32_C(0x001B1721), UINT32_C(0x003B7772), UINT32_C(0x003075BA),
9393           UINT32_C(0x003ACE9C), UINT32_C(0x0018B5B9), UINT32_C(0x001483A0),
9394           UINT32_C(0x002B8443), UINT32_C(0x000D0833), UINT32_C(0x0011414E),
9395           UINT32_C(0x00377005), UINT32_C(0x001FE0BC)}},
9396         {{UINT32_C(0x00614D45), UINT32_C(0x000FACE1), UINT32_C(0x002E03FD),
9397           UINT32_C(0x00104582), UINT32_C(0x0027B6D8), UINT32_C(0x002E45CA),
9398           UINT32_C(0x003DC391), UINT32_C(0x000278F0), UINT32_C(0x00150F86),
9399           UINT32_C(0x002EDE47), UINT32_C(0x0025399C), UINT32_C(0x004DCCC4),
9400           UINT32_C(0x00186E7C), UINT32_C(0x000987AE), UINT32_C(0x00082ECC),
9401           UINT32_C(0x007B6EE3), UINT32_C(0x00097785), UINT32_C(0x003E0986),
9402           UINT32_C(0x001C91ED), UINT32_C(0x0061A3C8), UINT32_C(0x00291652),
9403           UINT32_C(0x00089F6C), UINT32_C(0x000C0F4E)},
9404          {UINT32_C(0x00341422), UINT32_C(0x0016F7F9), UINT32_C(0x002A2213),
9405           UINT32_C(0x000CC4C8), UINT32_C(0x002A5108), UINT32_C(0x0014C3FF),
9406           UINT32_C(0x002A84FF), UINT32_C(0x007C98C9), UINT32_C(0x001C8206),
9407           UINT32_C(0x0031B7CB), UINT32_C(0x0037BB04), UINT32_C(0x003E3334),
9408           UINT32_C(0x0029AEB3), UINT32_C(0x003E65DA), UINT32_C(0x0020EE26),
9409           UINT32_C(0x00779AF6), UINT32_C(0x00288AFE), UINT32_C(0x000D4B8D),
9410           UINT32_C(0x001DB51B), UINT32_C(0x003BF6A3), UINT32_C(0x00381A92),
9411           UINT32_C(0x0011D531), UINT32_C(0x00247F4E)}},
9412         {{UINT32_C(0x00709AE6), UINT32_C(0x00252549), UINT32_C(0x0007EE34),
9413           UINT32_C(0x005D8045), UINT32_C(0x0038367B), UINT32_C(0x0035CCF0),
9414           UINT32_C(0x0005CD45), UINT32_C(0x0072DFB7), UINT32_C(0x00059B58),
9415           UINT32_C(0x002BB6E5), UINT32_C(0x003546BA), UINT32_C(0x001567C4),
9416           UINT32_C(0x003C5F98), UINT32_C(0x002503E9), UINT32_C(0x003AB5A8),
9417           UINT32_C(0x002858EB), UINT32_C(0x001535BC), UINT32_C(0x002DC366),
9418           UINT32_C(0x0034ED0D), UINT32_C(0x00277DED), UINT32_C(0x00016E7E),
9419           UINT32_C(0x001A35D9), UINT32_C(0x00234EA3)},
9420          {UINT32_C(0x0003CF55), UINT32_C(0x0026EE0D), UINT32_C(0x0025529F),
9421           UINT32_C(0x0031335F), UINT32_C(0x00305D60), UINT32_C(0x00148F61),
9422           UINT32_C(0x00343772), UINT32_C(0x004BD619), UINT32_C(0x0012E0C0),
9423           UINT32_C(0x0013EA6E), UINT32_C(0x001A3BC0), UINT32_C(0x0069B10D),
9424           UINT32_C(0x002CCEED), UINT32_C(0x002B62B5), UINT32_C(0x003456E2),
9425           UINT32_C(0x0005151D), UINT32_C(0x00374FB6), UINT32_C(0x000F4CCC),
9426           UINT32_C(0x001978D4), UINT32_C(0x003FA7E6), UINT32_C(0x00266D24),
9427           UINT32_C(0x00248D2B), UINT32_C(0x00161AD6)}},
9428         {{UINT32_C(0x0032C9A3), UINT32_C(0x002C7C77), UINT32_C(0x000E3F02),
9429           UINT32_C(0x003E504E), UINT32_C(0x001351CC), UINT32_C(0x00177427),
9430           UINT32_C(0x0020C8E9), UINT32_C(0x0019A4C7), UINT32_C(0x000B0C5D),
9431           UINT32_C(0x001F549F), UINT32_C(0x003B0C1B), UINT32_C(0x0021F5DE),
9432           UINT32_C(0x000075B2), UINT32_C(0x0036927D), UINT32_C(0x00185855),
9433           UINT32_C(0x004BD125), UINT32_C(0x0014BBC7), UINT32_C(0x001C0CC6),
9434           UINT32_C(0x0022540C), UINT32_C(0x00552107), UINT32_C(0x002283DD),
9435           UINT32_C(0x0006BA78), UINT32_C(0x0013823D)},
9436          {UINT32_C(0x001F97DE), UINT32_C(0x0028B5D5), UINT32_C(0x0030F546),
9437           UINT32_C(0x0001A0B0), UINT32_C(0x0010CC6D), UINT32_C(0x001610C3),
9438           UINT32_C(0x00245BEB), UINT32_C(0x003016D1), UINT32_C(0x001B8316),
9439           UINT32_C(0x0016BA74), UINT32_C(0x002C99F7), UINT32_C(0x001CC511),
9440           UINT32_C(0x0017550A), UINT32_C(0x0002060A), UINT32_C(0x00256CB7),
9441           UINT32_C(0x0040BF9E), UINT32_C(0x0016677B), UINT32_C(0x0007D673),
9442           UINT32_C(0x00182B4F), UINT32_C(0x002E8ADB), UINT32_C(0x001CBED4),
9443           UINT32_C(0x002D048B), UINT32_C(0x000C037A)}},
9444         {{UINT32_C(0x005B2170), UINT32_C(0x002A20E5), UINT32_C(0x003A2CC9),
9445           UINT32_C(0x002D459D), UINT32_C(0x001DECC6), UINT32_C(0x0031C1FE),
9446           UINT32_C(0x000CE89C), UINT32_C(0x0028CB4A), UINT32_C(0x00228929),
9447           UINT32_C(0x000C455B), UINT32_C(0x00288443), UINT32_C(0x0019205F),
9448           UINT32_C(0x0023421A), UINT32_C(0x00352E01), UINT32_C(0x001E5137),
9449           UINT32_C(0x0074C0C9), UINT32_C(0x0003A0D7), UINT32_C(0x003A7F32),
9450           UINT32_C(0x002BDAAB), UINT32_C(0x0038CE1E), UINT32_C(0x000991A9),
9451           UINT32_C(0x0031AAF9), UINT32_C(0x0036FF6B)},
9452          {UINT32_C(0x006C89E0), UINT32_C(0x00256380), UINT32_C(0x001F7866),
9453           UINT32_C(0x000F7CD3), UINT32_C(0x001E0162), UINT32_C(0x001A7772),
9454           UINT32_C(0x000474B0), UINT32_C(0x001B3366), UINT32_C(0x0024C27D),
9455           UINT32_C(0x0033397C), UINT32_C(0x002DDFF7), UINT32_C(0x0003D06F),
9456           UINT32_C(0x003CE689), UINT32_C(0x00087AFA), UINT32_C(0x00135BED),
9457           UINT32_C(0x001E1302), UINT32_C(0x003FD153), UINT32_C(0x003F3F3D),
9458           UINT32_C(0x0005DB43), UINT32_C(0x006193C9), UINT32_C(0x00174036),
9459           UINT32_C(0x00258D52), UINT32_C(0x00046F1F)}},
9460         {{UINT32_C(0x0049FC14), UINT32_C(0x00007614), UINT32_C(0x001F7037),
9461           UINT32_C(0x00592750), UINT32_C(0x00290B61), UINT32_C(0x000960A8),
9462           UINT32_C(0x00194FF1), UINT32_C(0x00139CAC), UINT32_C(0x003E0952),
9463           UINT32_C(0x00270EC5), UINT32_C(0x00088B6C), UINT32_C(0x004C78F1),
9464           UINT32_C(0x001D53F4), UINT32_C(0x003170C1), UINT32_C(0x001BD840),
9465           UINT32_C(0x00705662), UINT32_C(0x0020DE92), UINT32_C(0x00128651),
9466           UINT32_C(0x003E0D7F), UINT32_C(0x007F2363), UINT32_C(0x00029F44),
9467           UINT32_C(0x001B5FCC), UINT32_C(0x0012DCB6)},
9468          {UINT32_C(0x00715C01), UINT32_C(0x003BA447), UINT32_C(0x0014B2CF),
9469           UINT32_C(0x000D0598), UINT32_C(0x0021BD5E), UINT32_C(0x003B2771),
9470           UINT32_C(0x001C4456), UINT32_C(0x000B7702), UINT32_C(0x0034AD46),
9471           UINT32_C(0x0020B4D4), UINT32_C(0x0034C10F), UINT32_C(0x00211BEE),
9472           UINT32_C(0x00229380), UINT32_C(0x000F7D2E), UINT32_C(0x001DCFEE),
9473           UINT32_C(0x00667394), UINT32_C(0x00181E9B), UINT32_C(0x000423C4),
9474           UINT32_C(0x001ECE77), UINT32_C(0x00170479), UINT32_C(0x0032353F),
9475           UINT32_C(0x00164DF6), UINT32_C(0x0016F1DE)}},
9476         {{UINT32_C(0x0075C5F8), UINT32_C(0x000385BF), UINT32_C(0x0031DD89),
9477           UINT32_C(0x006E52CD), UINT32_C(0x0007AB18), UINT32_C(0x001DB7D7),
9478           UINT32_C(0x00181DB9), UINT32_C(0x003116D9), UINT32_C(0x002F42C8),
9479           UINT32_C(0x001008A8), UINT32_C(0x000955A8), UINT32_C(0x0016157F),
9480           UINT32_C(0x00366962), UINT32_C(0x00374B18), UINT32_C(0x003DA6A4),
9481           UINT32_C(0x004DD8AE), UINT32_C(0x00303056), UINT32_C(0x000814A3),
9482           UINT32_C(0x001FD98E), UINT32_C(0x0054633B), UINT32_C(0x00196306),
9483           UINT32_C(0x0036BE52), UINT32_C(0x001CFF52)},
9484          {UINT32_C(0x006F6BD4), UINT32_C(0x00363198), UINT32_C(0x0027A4A2),
9485           UINT32_C(0x002E0CC3), UINT32_C(0x003815C9), UINT32_C(0x003F3192),
9486           UINT32_C(0x0037B67C), UINT32_C(0x0030F20C), UINT32_C(0x002A1B35),
9487           UINT32_C(0x0016C2B1), UINT32_C(0x0010040B), UINT32_C(0x006D50BA),
9488           UINT32_C(0x0015627B), UINT32_C(0x00236233), UINT32_C(0x002BD95D),
9489           UINT32_C(0x0068647C), UINT32_C(0x003DB8B8), UINT32_C(0x00090EB1),
9490           UINT32_C(0x001829ED), UINT32_C(0x003AA621), UINT32_C(0x00281854),
9491           UINT32_C(0x000579E2), UINT32_C(0x0027CDA0)}},
9492         {{UINT32_C(0x0056E4C3), UINT32_C(0x000E21FF), UINT32_C(0x0024F3B1),
9493           UINT32_C(0x002D126D), UINT32_C(0x00125D7C), UINT32_C(0x0011EF67),
9494           UINT32_C(0x000BD798), UINT32_C(0x00018629), UINT32_C(0x001299FE),
9495           UINT32_C(0x0016DCCD), UINT32_C(0x001DB60A), UINT32_C(0x002AB062),
9496           UINT32_C(0x003E7DDD), UINT32_C(0x002F1BF6), UINT32_C(0x000F1421),
9497           UINT32_C(0x007DDEFC), UINT32_C(0x0022F932), UINT32_C(0x00327FBB),
9498           UINT32_C(0x001E3684), UINT32_C(0x000F04E8), UINT32_C(0x0028B9F5),
9499           UINT32_C(0x0000AC17), UINT32_C(0x001B586E)},
9500          {UINT32_C(0x0029C581), UINT32_C(0x001F0CDD), UINT32_C(0x000C57C8),
9501           UINT32_C(0x005909C4), UINT32_C(0x003A26ED), UINT32_C(0x0032886A),
9502           UINT32_C(0x0002D003), UINT32_C(0x0047BC86), UINT32_C(0x0004B488),
9503           UINT32_C(0x0028EAC9), UINT32_C(0x00007E5F), UINT32_C(0x002AFB2F),
9504           UINT32_C(0x0029FDA2), UINT32_C(0x00161194), UINT32_C(0x0003E7BC),
9505           UINT32_C(0x000F8369), UINT32_C(0x000E94CC), UINT32_C(0x0037E9AD),
9506           UINT32_C(0x0007994D), UINT32_C(0x00620DA2), UINT32_C(0x001C54F1),
9507           UINT32_C(0x0003054F), UINT32_C(0x000F164E)}},
9508         {{UINT32_C(0x00485A6F), UINT32_C(0x0004577D), UINT32_C(0x003E3EB4),
9509           UINT32_C(0x006C4E40), UINT32_C(0x00032DFF), UINT32_C(0x0036D9C3),
9510           UINT32_C(0x003133C3), UINT32_C(0x003BD1C9), UINT32_C(0x002755D5),
9511           UINT32_C(0x00118134), UINT32_C(0x001160F0), UINT32_C(0x00059163),
9512           UINT32_C(0x003EB8FC), UINT32_C(0x00056FC9), UINT32_C(0x0028AED8),
9513           UINT32_C(0x003179B5), UINT32_C(0x003FBF05), UINT32_C(0x00011E59),
9514           UINT32_C(0x00011744), UINT32_C(0x003470B0), UINT32_C(0x00135BDE),
9515           UINT32_C(0x00158952), UINT32_C(0x0000E6DB)},
9516          {UINT32_C(0x00532F1F), UINT32_C(0x003906A8), UINT32_C(0x002A32FC),
9517           UINT32_C(0x00227E49), UINT32_C(0x00058EDF), UINT32_C(0x003D7DB2),
9518           UINT32_C(0x0023DC29), UINT32_C(0x0070553D), UINT32_C(0x0004329B),
9519           UINT32_C(0x003549B6), UINT32_C(0x003EC868), UINT32_C(0x000D7C98),
9520           UINT32_C(0x00368C50), UINT32_C(0x000F57E5), UINT32_C(0x00126458),
9521           UINT32_C(0x004D62F6), UINT32_C(0x0031CEF3), UINT32_C(0x00204DE0),
9522           UINT32_C(0x00072E81), UINT32_C(0x007DA6C8), UINT32_C(0x003D4C1E),
9523           UINT32_C(0x003FAAA5), UINT32_C(0x0018B7EB)}},
9524         {{UINT32_C(0x005B2BEF), UINT32_C(0x002EEA64), UINT32_C(0x0035ADEF),
9525           UINT32_C(0x00037B6A), UINT32_C(0x003D7F26), UINT32_C(0x003F7AE8),
9526           UINT32_C(0x0016082B), UINT32_C(0x004D0845), UINT32_C(0x003213FD),
9527           UINT32_C(0x002B907C), UINT32_C(0x0009D773), UINT32_C(0x0032EB9F),
9528           UINT32_C(0x000B9447), UINT32_C(0x000FF14B), UINT32_C(0x002CC862),
9529           UINT32_C(0x000EE902), UINT32_C(0x001A1E93), UINT32_C(0x003B5022),
9530           UINT32_C(0x0007EC85), UINT32_C(0x00773A1A), UINT32_C(0x001E3782),
9531           UINT32_C(0x001F2F23), UINT32_C(0x00371A25)},
9532          {UINT32_C(0x00500C90), UINT32_C(0x00012947), UINT32_C(0x00276B35),
9533           UINT32_C(0x00055EB4), UINT32_C(0x000B22A3), UINT32_C(0x001C3032),
9534           UINT32_C(0x0034B27D), UINT32_C(0x0058FC68), UINT32_C(0x001DB835),
9535           UINT32_C(0x0000E22D), UINT32_C(0x0026AF65), UINT32_C(0x005F11AC),
9536           UINT32_C(0x002AB077), UINT32_C(0x0016A2BF), UINT32_C(0x002DE969),
9537           UINT32_C(0x0014F0F9), UINT32_C(0x00142DA0), UINT32_C(0x00197B6C),
9538           UINT32_C(0x00098CD4), UINT32_C(0x0076AB0A), UINT32_C(0x003EDF05),
9539           UINT32_C(0x00165EF4), UINT32_C(0x002E8B63)}},
9540     },
9541     {
9542         {{UINT32_C(0x0043FF72), UINT32_C(0x00371016), UINT32_C(0x00088C3D),
9543           UINT32_C(0x003D3831), UINT32_C(0x0029E105), UINT32_C(0x000874C9),
9544           UINT32_C(0x0028AD35), UINT32_C(0x0050A745), UINT32_C(0x00129E17),
9545           UINT32_C(0x0006826F), UINT32_C(0x0003A7E7), UINT32_C(0x005A9957),
9546           UINT32_C(0x003F5A11), UINT32_C(0x001E0D75), UINT32_C(0x00132E4A),
9547           UINT32_C(0x001CACF1), UINT32_C(0x00106741), UINT32_C(0x0035B4A8),
9548           UINT32_C(0x0038B784), UINT32_C(0x007346F0), UINT32_C(0x003DB373),
9549           UINT32_C(0x001CED8B), UINT32_C(0x003B3CAB)},
9550          {UINT32_C(0x0005ACA1), UINT32_C(0x0003F976), UINT32_C(0x000C0B13),
9551           UINT32_C(0x007066AA), UINT32_C(0x0037D80F), UINT32_C(0x00150B30),
9552           UINT32_C(0x0022F326), UINT32_C(0x0034AEAA), UINT32_C(0x0008FECE),
9553           UINT32_C(0x0038E83F), UINT32_C(0x003A6384), UINT32_C(0x0015A868),
9554           UINT32_C(0x000D1591), UINT32_C(0x00111853), UINT32_C(0x0007CCDC),
9555           UINT32_C(0x00088671), UINT32_C(0x000325D9), UINT32_C(0x0030192A),
9556           UINT32_C(0x0001A7CA), UINT32_C(0x00363760), UINT32_C(0x001F97E8),
9557           UINT32_C(0x002C79F3), UINT32_C(0x001B4F8F)}},
9558         {{UINT32_C(0x006A80D4), UINT32_C(0x0039A871), UINT32_C(0x001DED13),
9559           UINT32_C(0x003F5D25), UINT32_C(0x0009BD11), UINT32_C(0x0015E36E),
9560           UINT32_C(0x000EE574), UINT32_C(0x006F2527), UINT32_C(0x0004BD44),
9561           UINT32_C(0x003A9039), UINT32_C(0x00158327), UINT32_C(0x0007B459),
9562           UINT32_C(0x002C3FC0), UINT32_C(0x002902E4), UINT32_C(0x002368B3),
9563           UINT32_C(0x0054306B), UINT32_C(0x002E6771), UINT32_C(0x0000025A),
9564           UINT32_C(0x00359E84), UINT32_C(0x00753A6D), UINT32_C(0x001F1043),
9565           UINT32_C(0x00198B2D), UINT32_C(0x001D7912)},
9566          {UINT32_C(0x007E5CCB), UINT32_C(0x000738A9), UINT32_C(0x00164BE0),
9567           UINT32_C(0x001D6B62), UINT32_C(0x000EF92E), UINT32_C(0x00280CB8),
9568           UINT32_C(0x0037C2AD), UINT32_C(0x00569D4A), UINT32_C(0x00279D0C),
9569           UINT32_C(0x002F59F7), UINT32_C(0x003DAC74), UINT32_C(0x0042978C),
9570           UINT32_C(0x0010DA80), UINT32_C(0x00217A9D), UINT32_C(0x00336498),
9571           UINT32_C(0x00239BFB), UINT32_C(0x00367CF4), UINT32_C(0x00002665),
9572           UINT32_C(0x0012FC23), UINT32_C(0x006B55F4), UINT32_C(0x0008389E),
9573           UINT32_C(0x0010C55C), UINT32_C(0x003917A5)}},
9574         {{UINT32_C(0x000B001B), UINT32_C(0x0036253F), UINT32_C(0x00364099),
9575           UINT32_C(0x00403910), UINT32_C(0x002FD274), UINT32_C(0x00240152),
9576           UINT32_C(0x002222A5), UINT32_C(0x00038A33), UINT32_C(0x0015B0C3),
9577           UINT32_C(0x001BA804), UINT32_C(0x000B91C9), UINT32_C(0x001E1D50),
9578           UINT32_C(0x002C6A3F), UINT32_C(0x0002DA6D), UINT32_C(0x0031CDE7),
9579           UINT32_C(0x005F8ABA), UINT32_C(0x0032F16C), UINT32_C(0x0005F59E),
9580           UINT32_C(0x0027FB7F), UINT32_C(0x003F4395), UINT32_C(0x0005567B),
9581           UINT32_C(0x00037388), UINT32_C(0x0031BC7C)},
9582          {UINT32_C(0x0021EB64), UINT32_C(0x000F56D8), UINT32_C(0x00063940),
9583           UINT32_C(0x007222D6), UINT32_C(0x002072C6), UINT32_C(0x002E61E2),
9584           UINT32_C(0x0016F379), UINT32_C(0x0027EADF), UINT32_C(0x003A6BD2),
9585           UINT32_C(0x002F0B3A), UINT32_C(0x002FFAE6), UINT32_C(0x007DBBB0),
9586           UINT32_C(0x00003399), UINT32_C(0x0015CF91), UINT32_C(0x00284363),
9587           UINT32_C(0x003DC09B), UINT32_C(0x00305937), UINT32_C(0x001A75E2),
9588           UINT32_C(0x0028D44C), UINT32_C(0x0052188E), UINT32_C(0x003F5117),
9589           UINT32_C(0x002A7B19), UINT32_C(0x000F38A9)}},
9590         {{UINT32_C(0x0068B2E0), UINT32_C(0x0017FFC5), UINT32_C(0x0027AFC3),
9591           UINT32_C(0x000A45A1), UINT32_C(0x001227B7), UINT32_C(0x000976FE),
9592           UINT32_C(0x003CC399), UINT32_C(0x00111C12), UINT32_C(0x0021CDEC),
9593           UINT32_C(0x000290FA), UINT32_C(0x000E0DC4), UINT32_C(0x004B8791),
9594           UINT32_C(0x003123B8), UINT32_C(0x00257E85), UINT32_C(0x0031095C),
9595           UINT32_C(0x00009042), UINT32_C(0x002E0671), UINT32_C(0x002EDE50),
9596           UINT32_C(0x002522AF), UINT32_C(0x002113DA), UINT32_C(0x002136C8),
9597           UINT32_C(0x003A4426), UINT32_C(0x00375E38)},
9598          {UINT32_C(0x004B72D7), UINT32_C(0x00317636), UINT32_C(0x002C6B14),
9599           UINT32_C(0x0023C200), UINT32_C(0x00229CA0), UINT32_C(0x0018AB4E),
9600           UINT32_C(0x0038DE7C), UINT32_C(0x0071C6F7), UINT32_C(0x0006D850),
9601           UINT32_C(0x0007F5A9), UINT32_C(0x001ADEAD), UINT32_C(0x00171F68),
9602           UINT32_C(0x0018927F), UINT32_C(0x001A4C5E), UINT32_C(0x0000DDCC),
9603           UINT32_C(0x0038263E), UINT32_C(0x003C1F7F), UINT32_C(0x001B3C9A),
9604           UINT32_C(0x003488F3), UINT32_C(0x0023C421), UINT32_C(0x002F2417),
9605           UINT32_C(0x00068EDA), UINT32_C(0x00073EC6)}},
9606         {{UINT32_C(0x00740829), UINT32_C(0x003BBE8D), UINT32_C(0x00073E98),
9607           UINT32_C(0x00356FAD), UINT32_C(0x003B7DDB), UINT32_C(0x002DC94B),
9608           UINT32_C(0x0030C9A3), UINT32_C(0x001B8A3C), UINT32_C(0x0023BCCD),
9609           UINT32_C(0x0003F076), UINT32_C(0x003A8A39), UINT32_C(0x0067C926),
9610           UINT32_C(0x00057C86), UINT32_C(0x0027A91E), UINT32_C(0x0006BFD0),
9611           UINT32_C(0x00268025), UINT32_C(0x0026C695), UINT32_C(0x0030F65C),
9612           UINT32_C(0x0007A146), UINT32_C(0x001C03BD), UINT32_C(0x001A48A6),
9613           UINT32_C(0x00327209), UINT32_C(0x00331030)},
9614          {UINT32_C(0x004BBAF6), UINT32_C(0x0014ED13), UINT32_C(0x00201E53),
9615           UINT32_C(0x0019209B), UINT32_C(0x0018CD1E), UINT32_C(0x000DEF6D),
9616           UINT32_C(0x00038012), UINT32_C(0x0045882E), UINT32_C(0x003736AB),
9617           UINT32_C(0x001E713A), UINT32_C(0x002C4DFB), UINT32_C(0x003F0EEF),
9618           UINT32_C(0x002CFF2D), UINT32_C(0x003250F5), UINT32_C(0x00078ABA),
9619           UINT32_C(0x00678753), UINT32_C(0x00056E90), UINT32_C(0x00198BB5),
9620           UINT32_C(0x003CE0AD), UINT32_C(0x007FA3C4), UINT32_C(0x00393AC2),
9621           UINT32_C(0x00207404), UINT32_C(0x001C83C6)}},
9622         {{UINT32_C(0x0006EF83), UINT32_C(0x0015F1B3), UINT32_C(0x0012AA0F),
9623           UINT32_C(0x0014518C), UINT32_C(0x002839B7), UINT32_C(0x000D1D3A),
9624           UINT32_C(0x0004C1BA), UINT32_C(0x005F75C2), UINT32_C(0x000D10B9),
9625           UINT32_C(0x0013D894), UINT32_C(0x000DB952), UINT32_C(0x000B1478),
9626           UINT32_C(0x000CB9AA), UINT32_C(0x0011AD2E), UINT32_C(0x002894C3),
9627           UINT32_C(0x0011DD4E), UINT32_C(0x000303E2), UINT32_C(0x001EEC21),
9628           UINT32_C(0x001A194B), UINT32_C(0x005970C2), UINT32_C(0x00271263),
9629           UINT32_C(0x0037CD83), UINT32_C(0x0000E91B)},
9630          {UINT32_C(0x0002F7FB), UINT32_C(0x0037D3D0), UINT32_C(0x00167E4D),
9631           UINT32_C(0x002B340E), UINT32_C(0x0029810C), UINT32_C(0x000F2744),
9632           UINT32_C(0x000500A9), UINT32_C(0x0077B334), UINT32_C(0x0033BBF3),
9633           UINT32_C(0x0035F681), UINT32_C(0x002A089F), UINT32_C(0x0005BD0A),
9634           UINT32_C(0x0034B55C), UINT32_C(0x001C94F6), UINT32_C(0x003E80FE),
9635           UINT32_C(0x0012E6AD), UINT32_C(0x002E5578), UINT32_C(0x000FCD23),
9636           UINT32_C(0x003D81BB), UINT32_C(0x000E9FC4), UINT32_C(0x002DCA2E),
9637           UINT32_C(0x00163735), UINT32_C(0x00331F02)}},
9638         {{UINT32_C(0x006924AC), UINT32_C(0x0035ADA0), UINT32_C(0x001100A8),
9639           UINT32_C(0x00267DEA), UINT32_C(0x00271C3D), UINT32_C(0x0028011C),
9640           UINT32_C(0x0033F146), UINT32_C(0x00380BD9), UINT32_C(0x001E9B99),
9641           UINT32_C(0x0038A9B3), UINT32_C(0x0023055C), UINT32_C(0x00402C40),
9642           UINT32_C(0x000E057B), UINT32_C(0x002F5047), UINT32_C(0x0030ABB8),
9643           UINT32_C(0x00177283), UINT32_C(0x00151E5A), UINT32_C(0x0026A491),
9644           UINT32_C(0x00346A9D), UINT32_C(0x006A2686), UINT32_C(0x0010AE09),
9645           UINT32_C(0x0031479F), UINT32_C(0x003F9361)},
9646          {UINT32_C(0x0022A729), UINT32_C(0x001A0AB6), UINT32_C(0x003A1834),
9647           UINT32_C(0x004ADEAE), UINT32_C(0x0025C51B), UINT32_C(0x00380B76),
9648           UINT32_C(0x00109BCA), UINT32_C(0x00326C1B), UINT32_C(0x002680D8),
9649           UINT32_C(0x003F48F6), UINT32_C(0x000DCE07), UINT32_C(0x000D0CDC),
9650           UINT32_C(0x0024513C), UINT32_C(0x001AAF42), UINT32_C(0x000F88A1),
9651           UINT32_C(0x007680CC), UINT32_C(0x00032E52), UINT32_C(0x00028B7A),
9652           UINT32_C(0x0028F444), UINT32_C(0x0013B5EA), UINT32_C(0x000BE2FE),
9653           UINT32_C(0x00382F79), UINT32_C(0x0026D469)}},
9654         {{UINT32_C(0x002EF810), UINT32_C(0x003D7CA9), UINT32_C(0x0012A7CA),
9655           UINT32_C(0x0066ED19), UINT32_C(0x003B6782), UINT32_C(0x001A688B),
9656           UINT32_C(0x00057236), UINT32_C(0x003AB1DD), UINT32_C(0x002DCA9F),
9657           UINT32_C(0x00318D65), UINT32_C(0x002C3201), UINT32_C(0x002651F2),
9658           UINT32_C(0x0002585A), UINT32_C(0x00110B33), UINT32_C(0x002FC48F),
9659           UINT32_C(0x0027FF7F), UINT32_C(0x000C314B), UINT32_C(0x00306B0F),
9660           UINT32_C(0x002BCD62), UINT32_C(0x000E5451), UINT32_C(0x00372C81),
9661           UINT32_C(0x0008B694), UINT32_C(0x001640E1)},
9662          {UINT32_C(0x005D5544), UINT32_C(0x00050CE4), UINT32_C(0x0017634F),
9663           UINT32_C(0x0013A04A), UINT32_C(0x00106FDB), UINT32_C(0x001DFA5D),
9664           UINT32_C(0x002B04EB), UINT32_C(0x0049FF7C), UINT32_C(0x0026E744),
9665           UINT32_C(0x003D42A5), UINT32_C(0x002B0FD6), UINT32_C(0x0076FAC0),
9666           UINT32_C(0x003ACF9E), UINT32_C(0x000B293A), UINT32_C(0x00120F10),
9667           UINT32_C(0x0056D4D7), UINT32_C(0x003229A1), UINT32_C(0x001C7884),
9668           UINT32_C(0x003CE57D), UINT32_C(0x003C86A7), UINT32_C(0x001588C1),
9669           UINT32_C(0x0000D548), UINT32_C(0x0011BB4A)}},
9670         {{UINT32_C(0x0036250B), UINT32_C(0x00274CE1), UINT32_C(0x003F5FE8),
9671           UINT32_C(0x00112AFF), UINT32_C(0x0004D6DD), UINT32_C(0x0037A903),
9672           UINT32_C(0x00211DC3), UINT32_C(0x0030C9D5), UINT32_C(0x003F5472),
9673           UINT32_C(0x00198593), UINT32_C(0x000093E8), UINT32_C(0x001F8BFF),
9674           UINT32_C(0x0000C9FF), UINT32_C(0x003D63D2), UINT32_C(0x00003D23),
9675           UINT32_C(0x00153CAB), UINT32_C(0x003CA8E7), UINT32_C(0x000F7F9C),
9676           UINT32_C(0x0017381E), UINT32_C(0x003B2121), UINT32_C(0x0006A36E),
9677           UINT32_C(0x0020DF0D), UINT32_C(0x002DCC34)},
9678          {UINT32_C(0x001DDE59), UINT32_C(0x00100B9E), UINT32_C(0x001387EC),
9679           UINT32_C(0x001F5F47), UINT32_C(0x0037E7AF), UINT32_C(0x00193274),
9680           UINT32_C(0x002F43DE), UINT32_C(0x0018E845), UINT32_C(0x002C7EEB),
9681           UINT32_C(0x0031E7AD), UINT32_C(0x0003754D), UINT32_C(0x00107B6F),
9682           UINT32_C(0x0006C7A7), UINT32_C(0x002EFA28), UINT32_C(0x00230679),
9683           UINT32_C(0x003BA29A), UINT32_C(0x003EB83E), UINT32_C(0x000E3477),
9684           UINT32_C(0x00312658), UINT32_C(0x006C10E6), UINT32_C(0x00372B67),
9685           UINT32_C(0x000F6596), UINT32_C(0x00380597)}},
9686         {{UINT32_C(0x00555AFE), UINT32_C(0x000C7849), UINT32_C(0x00042F9D),
9687           UINT32_C(0x0007EDFA), UINT32_C(0x000C752B), UINT32_C(0x00137CA0),
9688           UINT32_C(0x002A9FBE), UINT32_C(0x00565768), UINT32_C(0x00015078),
9689           UINT32_C(0x0037865E), UINT32_C(0x0022585A), UINT32_C(0x005C7329),
9690           UINT32_C(0x00230050), UINT32_C(0x002EAD2B), UINT32_C(0x001FFAB6),
9691           UINT32_C(0x007012D8), UINT32_C(0x00118E18), UINT32_C(0x0031CBE8),
9692           UINT32_C(0x0034B659), UINT32_C(0x000C9258), UINT32_C(0x00123325),
9693           UINT32_C(0x001F45F2), UINT32_C(0x002B0B5E)},
9694          {UINT32_C(0x0063E131), UINT32_C(0x002CEABB), UINT32_C(0x0003CF06),
9695           UINT32_C(0x005C2801), UINT32_C(0x0014448A), UINT32_C(0x001F4570),
9696           UINT32_C(0x001DE032), UINT32_C(0x007965E9), UINT32_C(0x001C2619),
9697           UINT32_C(0x001A84C4), UINT32_C(0x003CA51E), UINT32_C(0x005F8927),
9698           UINT32_C(0x001ED00E), UINT32_C(0x0018ABCE), UINT32_C(0x00282492),
9699           UINT32_C(0x002A4526), UINT32_C(0x001D6653), UINT32_C(0x000D9615),
9700           UINT32_C(0x0011E6F0), UINT32_C(0x00671D54), UINT32_C(0x00340830),
9701           UINT32_C(0x001EF0D7), UINT32_C(0x002FBB7B)}},
9702         {{UINT32_C(0x00348880), UINT32_C(0x0032B440), UINT32_C(0x003867FD),
9703           UINT32_C(0x0041325C), UINT32_C(0x000CDBC2), UINT32_C(0x00065444),
9704           UINT32_C(0x0028F475), UINT32_C(0x001DA4B4), UINT32_C(0x00109841),
9705           UINT32_C(0x003B0866), UINT32_C(0x001E6A77), UINT32_C(0x005D249E),
9706           UINT32_C(0x0039C59B), UINT32_C(0x003A6F13), UINT32_C(0x0038A7E4),
9707           UINT32_C(0x005AE286), UINT32_C(0x002F9473), UINT32_C(0x00023261),
9708           UINT32_C(0x003A0DB2), UINT32_C(0x001E7F01), UINT32_C(0x0036BF40),
9709           UINT32_C(0x000E2AEC), UINT32_C(0x000C8DE1)},
9710          {UINT32_C(0x0053791C), UINT32_C(0x0025ADBE), UINT32_C(0x001DF305),
9711           UINT32_C(0x005CB9A7), UINT32_C(0x002A8658), UINT32_C(0x00101F47),
9712           UINT32_C(0x00329A71), UINT32_C(0x006E7F78), UINT32_C(0x003CB686),
9713           UINT32_C(0x002818C0), UINT32_C(0x0013DEA8), UINT32_C(0x0001AD5E),
9714           UINT32_C(0x002F79EF), UINT32_C(0x002D66C0), UINT32_C(0x001DABD2),
9715           UINT32_C(0x00602B71), UINT32_C(0x002903C7), UINT32_C(0x00385466),
9716           UINT32_C(0x001CDB64), UINT32_C(0x0075CE9A), UINT32_C(0x002430BD),
9717           UINT32_C(0x00176946), UINT32_C(0x000E2BC5)}},
9718         {{UINT32_C(0x007C9263), UINT32_C(0x002D6DC4), UINT32_C(0x003D3ACD),
9719           UINT32_C(0x003EBF76), UINT32_C(0x003E1EFB), UINT32_C(0x002E4716),
9720           UINT32_C(0x000F0DD6), UINT32_C(0x003B4748), UINT32_C(0x00073A35),
9721           UINT32_C(0x003EB153), UINT32_C(0x003DBAE5), UINT32_C(0x00091752),
9722           UINT32_C(0x00152A69), UINT32_C(0x003A6B6D), UINT32_C(0x00190CE0),
9723           UINT32_C(0x000C4F96), UINT32_C(0x002AEE5B), UINT32_C(0x002D6E94),
9724           UINT32_C(0x00298B92), UINT32_C(0x002FC509), UINT32_C(0x000EA268),
9725           UINT32_C(0x000701E4), UINT32_C(0x003CBD22)},
9726          {UINT32_C(0x0068BB5F), UINT32_C(0x003E426A), UINT32_C(0x000ABA98),
9727           UINT32_C(0x0063696E), UINT32_C(0x000CA3AE), UINT32_C(0x0030D3D9),
9728           UINT32_C(0x000E9E5C), UINT32_C(0x0046B796), UINT32_C(0x00098D02),
9729           UINT32_C(0x001C097A), UINT32_C(0x00322587), UINT32_C(0x004192A0),
9730           UINT32_C(0x00117CF5), UINT32_C(0x0019B330), UINT32_C(0x001C614E),
9731           UINT32_C(0x007DC495), UINT32_C(0x0010F1B4), UINT32_C(0x00303802),
9732           UINT32_C(0x0039F211), UINT32_C(0x00330A82), UINT32_C(0x002DD8DA),
9733           UINT32_C(0x002D36F2), UINT32_C(0x00017BC2)}},
9734         {{UINT32_C(0x0049325F), UINT32_C(0x003DB33B), UINT32_C(0x0029EBF5),
9735           UINT32_C(0x001C7997), UINT32_C(0x0033F6E9), UINT32_C(0x0030C1AD),
9736           UINT32_C(0x00361DDF), UINT32_C(0x0034088E), UINT32_C(0x002A26DB),
9737           UINT32_C(0x00050A8F), UINT32_C(0x002D5CB6), UINT32_C(0x002B3ACD),
9738           UINT32_C(0x002F102C), UINT32_C(0x001D8F3E), UINT32_C(0x0036E06F),
9739           UINT32_C(0x005F6B74), UINT32_C(0x0003DC5F), UINT32_C(0x003135D7),
9740           UINT32_C(0x0038E39F), UINT32_C(0x007B5A1E), UINT32_C(0x000355D0),
9741           UINT32_C(0x0016256E), UINT32_C(0x00091FAA)},
9742          {UINT32_C(0x004EEA23), UINT32_C(0x002F50B1), UINT32_C(0x001CBFB6),
9743           UINT32_C(0x0077CA4A), UINT32_C(0x002E434E), UINT32_C(0x003F8B6D),
9744           UINT32_C(0x0033265D), UINT32_C(0x006DC04A), UINT32_C(0x0017B7FE),
9745           UINT32_C(0x00156470), UINT32_C(0x001C0AB3), UINT32_C(0x002B82A3),
9746           UINT32_C(0x0025ED15), UINT32_C(0x00345415), UINT32_C(0x00006AE3),
9747           UINT32_C(0x006A18D6), UINT32_C(0x000651B4), UINT32_C(0x00324AF0),
9748           UINT32_C(0x0019FD45), UINT32_C(0x00756504), UINT32_C(0x000D0EB8),
9749           UINT32_C(0x001080DF), UINT32_C(0x00117135)}},
9750         {{UINT32_C(0x0002201B), UINT32_C(0x002573D3), UINT32_C(0x002B796D),
9751           UINT32_C(0x000F77C6), UINT32_C(0x001FA05B), UINT32_C(0x0004EA6D),
9752           UINT32_C(0x003790D1), UINT32_C(0x004517CB), UINT32_C(0x003D97B6),
9753           UINT32_C(0x0015B191), UINT32_C(0x00311E57), UINT32_C(0x0037CE58),
9754           UINT32_C(0x00151409), UINT32_C(0x000D6BCF), UINT32_C(0x000C5CA5),
9755           UINT32_C(0x0063737A), UINT32_C(0x00299B77), UINT32_C(0x000C37E1),
9756           UINT32_C(0x000F27AA), UINT32_C(0x0057C9C2), UINT32_C(0x0030EDD0),
9757           UINT32_C(0x003C12B9), UINT32_C(0x003AE308)},
9758          {UINT32_C(0x00154AEB), UINT32_C(0x0008F6CC), UINT32_C(0x001668D8),
9759           UINT32_C(0x004663DD), UINT32_C(0x000D8D93), UINT32_C(0x001CE5F0),
9760           UINT32_C(0x0021BF83), UINT32_C(0x006BAE95), UINT32_C(0x002855B3),
9761           UINT32_C(0x00335B55), UINT32_C(0x001408AA), UINT32_C(0x0004E3E5),
9762           UINT32_C(0x0028E855), UINT32_C(0x0014E502), UINT32_C(0x0008E67D),
9763           UINT32_C(0x006EDAAA), UINT32_C(0x001D9F0F), UINT32_C(0x0009DC94),
9764           UINT32_C(0x003A18E2), UINT32_C(0x0007FA8E), UINT32_C(0x003E00BB),
9765           UINT32_C(0x002A56FF), UINT32_C(0x00038554)}},
9766         {{UINT32_C(0x007A0037), UINT32_C(0x003D491D), UINT32_C(0x003C391C),
9767           UINT32_C(0x006294C3), UINT32_C(0x00303F10), UINT32_C(0x0026A8E1),
9768           UINT32_C(0x0028D44A), UINT32_C(0x004CD241), UINT32_C(0x001AC12E),
9769           UINT32_C(0x0032802C), UINT32_C(0x0017518C), UINT32_C(0x004B7FF7),
9770           UINT32_C(0x00184785), UINT32_C(0x000C137F), UINT32_C(0x0020C5E6),
9771           UINT32_C(0x002E88CB), UINT32_C(0x00109C0D), UINT32_C(0x003AF23C),
9772           UINT32_C(0x0037A943), UINT32_C(0x00209953), UINT32_C(0x0015B4E0),
9773           UINT32_C(0x00069845), UINT32_C(0x00093EA8)},
9774          {UINT32_C(0x0004A991), UINT32_C(0x003F0551), UINT32_C(0x000D6C31),
9775           UINT32_C(0x006F47D6), UINT32_C(0x00007E9B), UINT32_C(0x0027E38C),
9776           UINT32_C(0x0033BB37), UINT32_C(0x0013496D), UINT32_C(0x001A3F2A),
9777           UINT32_C(0x0014FCBA), UINT32_C(0x002722F6), UINT32_C(0x005676F1),
9778           UINT32_C(0x00213E52), UINT32_C(0x003DF1C7), UINT32_C(0x00228B30),
9779           UINT32_C(0x006856C0), UINT32_C(0x0022A73D), UINT32_C(0x0000B650),
9780           UINT32_C(0x000EABEB), UINT32_C(0x00714726), UINT32_C(0x00128875),
9781           UINT32_C(0x000EB41C), UINT32_C(0x0018CA4B)}},
9782         {{UINT32_C(0x007BD9EC), UINT32_C(0x001763E0), UINT32_C(0x003A0DDC),
9783           UINT32_C(0x00731C43), UINT32_C(0x00293989), UINT32_C(0x00347EFA),
9784           UINT32_C(0x00115B21), UINT32_C(0x003B45B4), UINT32_C(0x000DA37F),
9785           UINT32_C(0x002C87D5), UINT32_C(0x001C53C2), UINT32_C(0x007822F8),
9786           UINT32_C(0x0008496E), UINT32_C(0x003D3CB7), UINT32_C(0x0008A383),
9787           UINT32_C(0x00735A84), UINT32_C(0x000876BD), UINT32_C(0x00141FF0),
9788           UINT32_C(0x003567B3), UINT32_C(0x00785465), UINT32_C(0x0030D346),
9789           UINT32_C(0x0032C983), UINT32_C(0x0016542B)},
9790          {UINT32_C(0x00175998), UINT32_C(0x00105962), UINT32_C(0x0027690D),
9791           UINT32_C(0x0053CEA1), UINT32_C(0x0027FE4A), UINT32_C(0x000377CE),
9792           UINT32_C(0x00029F12), UINT32_C(0x00791342), UINT32_C(0x001CD5D3),
9793           UINT32_C(0x0024804D), UINT32_C(0x00318CBD), UINT32_C(0x000AC20C),
9794           UINT32_C(0x002261A2), UINT32_C(0x00017C07), UINT32_C(0x0006AED6),
9795           UINT32_C(0x0001AE5E), UINT32_C(0x00230EA0), UINT32_C(0x00390D91),
9796           UINT32_C(0x0009C7FB), UINT32_C(0x002F102A), UINT32_C(0x00291350),
9797           UINT32_C(0x003DA578), UINT32_C(0x0013E6DE)}},
9798     },
9799     {
9800         {{UINT32_C(0x005C8DD6), UINT32_C(0x002A3738), UINT32_C(0x00365D8C),
9801           UINT32_C(0x0063DB9C), UINT32_C(0x00113081), UINT32_C(0x002F34E7),
9802           UINT32_C(0x003E646D), UINT32_C(0x0019B42D), UINT32_C(0x0006CC4B),
9803           UINT32_C(0x0037967A), UINT32_C(0x0037B63A), UINT32_C(0x00346973),
9804           UINT32_C(0x00175BB7), UINT32_C(0x001BAEA5), UINT32_C(0x002D90D6),
9805           UINT32_C(0x00235EC5), UINT32_C(0x0022B7D3), UINT32_C(0x0006C0A7),
9806           UINT32_C(0x000D9373), UINT32_C(0x003362B4), UINT32_C(0x00167362),
9807           UINT32_C(0x00228FA8), UINT32_C(0x002DC7CC)},
9808          {UINT32_C(0x00772F9B), UINT32_C(0x00383B30), UINT32_C(0x001FE31B),
9809           UINT32_C(0x0039283D), UINT32_C(0x0030E99D), UINT32_C(0x0019398C),
9810           UINT32_C(0x000E05D7), UINT32_C(0x001CB0B3), UINT32_C(0x0031A3E1),
9811           UINT32_C(0x00335E57), UINT32_C(0x003D185F), UINT32_C(0x004F30A8),
9812           UINT32_C(0x002CC2DA), UINT32_C(0x003CB4EE), UINT32_C(0x000D7F61),
9813           UINT32_C(0x006B8EDA), UINT32_C(0x0020C99D), UINT32_C(0x00342D58),
9814           UINT32_C(0x003BCF21), UINT32_C(0x00043EE8), UINT32_C(0x003937C7),
9815           UINT32_C(0x002B2687), UINT32_C(0x003099B7)}},
9816         {{UINT32_C(0x006F3863), UINT32_C(0x00216888), UINT32_C(0x00117F80),
9817           UINT32_C(0x003AECB0), UINT32_C(0x003CB3C3), UINT32_C(0x0009172C),
9818           UINT32_C(0x00351EE1), UINT32_C(0x000AD459), UINT32_C(0x00342449),
9819           UINT32_C(0x000A95A1), UINT32_C(0x00362F69), UINT32_C(0x0044683C),
9820           UINT32_C(0x0012100A), UINT32_C(0x000038C6), UINT32_C(0x0003DA8C),
9821           UINT32_C(0x004920F7), UINT32_C(0x001F5E72), UINT32_C(0x003F8B01),
9822           UINT32_C(0x001B2E28), UINT32_C(0x007828AE), UINT32_C(0x003B1AA3),
9823           UINT32_C(0x002304AF), UINT32_C(0x002983E5)},
9824          {UINT32_C(0x0059F3AD), UINT32_C(0x0005EBDB), UINT32_C(0x0038F715),
9825           UINT32_C(0x007427DF), UINT32_C(0x0035EE7F), UINT32_C(0x001A4B0D),
9826           UINT32_C(0x0014E6C7), UINT32_C(0x00699A32), UINT32_C(0x00015674),
9827           UINT32_C(0x003DC67D), UINT32_C(0x0001CDA8), UINT32_C(0x003C45B2),
9828           UINT32_C(0x001BE065), UINT32_C(0x000C2772), UINT32_C(0x002184E2),
9829           UINT32_C(0x005C0469), UINT32_C(0x0024F0B3), UINT32_C(0x002374A4),
9830           UINT32_C(0x0031DE85), UINT32_C(0x006B53DE), UINT32_C(0x000F651C),
9831           UINT32_C(0x003071EB), UINT32_C(0x0029A433)}},
9832         {{UINT32_C(0x0030A82F), UINT32_C(0x000EF962), UINT32_C(0x00227761),
9833           UINT32_C(0x006D7F9E), UINT32_C(0x000081BE), UINT32_C(0x000FEE69),
9834           UINT32_C(0x000752C8), UINT32_C(0x00748DEE), UINT32_C(0x00387116),
9835           UINT32_C(0x00287C41), UINT32_C(0x00027434), UINT32_C(0x00664A85),
9836           UINT32_C(0x001D3DE1), UINT32_C(0x003D565F), UINT32_C(0x003B7ED9),
9837           UINT32_C(0x0065C3BB), UINT32_C(0x0023180A), UINT32_C(0x000E41D1),
9838           UINT32_C(0x001016CD), UINT32_C(0x0065F0C5), UINT32_C(0x0017A834),
9839           UINT32_C(0x0000A4AB), UINT32_C(0x001FC477)},
9840          {UINT32_C(0x004855D4), UINT32_C(0x001D815B), UINT32_C(0x00366682),
9841           UINT32_C(0x004FEE42), UINT32_C(0x001DD612), UINT32_C(0x0025BA93),
9842           UINT32_C(0x000E1804), UINT32_C(0x0007B46D), UINT32_C(0x00079E19),
9843           UINT32_C(0x00263779), UINT32_C(0x001FDFA2), UINT32_C(0x0078741F),
9844           UINT32_C(0x0037B69E), UINT32_C(0x0018E0A2), UINT32_C(0x0037F5D9),
9845           UINT32_C(0x000C71E4), UINT32_C(0x001F6109), UINT32_C(0x0002A965),
9846           UINT32_C(0x00358A62), UINT32_C(0x00790CBB), UINT32_C(0x001FC664),
9847           UINT32_C(0x00027F06), UINT32_C(0x0026A40A)}},
9848         {{UINT32_C(0x0060807F), UINT32_C(0x003DF3AE), UINT32_C(0x000BE26F),
9849           UINT32_C(0x005110E1), UINT32_C(0x003B1A48), UINT32_C(0x00326EEB),
9850           UINT32_C(0x001E337A), UINT32_C(0x0030A675), UINT32_C(0x003F5F8B),
9851           UINT32_C(0x000CD0BA), UINT32_C(0x002297FB), UINT32_C(0x000379BD),
9852           UINT32_C(0x0015C430), UINT32_C(0x003FE28A), UINT32_C(0x00280CE2),
9853           UINT32_C(0x0010A09A), UINT32_C(0x000BB43D), UINT32_C(0x003BF3E8),
9854           UINT32_C(0x000D2A25), UINT32_C(0x00553C3D), UINT32_C(0x003A4814),
9855           UINT32_C(0x0023D406), UINT32_C(0x00130434)},
9856          {UINT32_C(0x00012725), UINT32_C(0x00034675), UINT32_C(0x0030625E),
9857           UINT32_C(0x0068204C), UINT32_C(0x00007FF0), UINT32_C(0x000353D6),
9858           UINT32_C(0x00374D41), UINT32_C(0x002B0AEC), UINT32_C(0x002D4C90),
9859           UINT32_C(0x0023B516), UINT32_C(0x003D5FE1), UINT32_C(0x001BF1AF),
9860           UINT32_C(0x0026188F), UINT32_C(0x000277E9), UINT32_C(0x0009EDC0),
9861           UINT32_C(0x00419F60), UINT32_C(0x003B901E), UINT32_C(0x00036C9A),
9862           UINT32_C(0x001C2868), UINT32_C(0x0039BD67), UINT32_C(0x001E1FAC),
9863           UINT32_C(0x0018E5C8), UINT32_C(0x000D5B85)}},
9864         {{UINT32_C(0x000B4E46), UINT32_C(0x001C91BB), UINT32_C(0x000E149E),
9865           UINT32_C(0x000CF26B), UINT32_C(0x00239A61), UINT32_C(0x001413C1),
9866           UINT32_C(0x0039D982), UINT32_C(0x0031DC48), UINT32_C(0x000CB5E3),
9867           UINT32_C(0x00177633), UINT32_C(0x003594BF), UINT32_C(0x00220B88),
9868           UINT32_C(0x003EE0E1), UINT32_C(0x0001C29C), UINT32_C(0x00332288),
9869           UINT32_C(0x001AC903), UINT32_C(0x002EA788), UINT32_C(0x002CF324),
9870           UINT32_C(0x000A068A), UINT32_C(0x00192C4F), UINT32_C(0x003620B1),
9871           UINT32_C(0x003A15B7), UINT32_C(0x001846FF)},
9872          {UINT32_C(0x0037EA0F), UINT32_C(0x000E365F), UINT32_C(0x000AB7DB),
9873           UINT32_C(0x0073FC69), UINT32_C(0x0030E576), UINT32_C(0x001F51C5),
9874           UINT32_C(0x003E4C0F), UINT32_C(0x007734A2), UINT32_C(0x000B6D61),
9875           UINT32_C(0x0007F20A), UINT32_C(0x0016676C), UINT32_C(0x000742AB),
9876           UINT32_C(0x0024CACD), UINT32_C(0x00263F7C), UINT32_C(0x001FBB60),
9877           UINT32_C(0x005126DE), UINT32_C(0x001B0843), UINT32_C(0x0027E640),
9878           UINT32_C(0x002B6416), UINT32_C(0x000E461C), UINT32_C(0x0035712F),
9879           UINT32_C(0x00021FD4), UINT32_C(0x003DFB53)}},
9880         {{UINT32_C(0x0078AFC0), UINT32_C(0x00344524), UINT32_C(0x00032570),
9881           UINT32_C(0x005274D4), UINT32_C(0x001BE8C7), UINT32_C(0x0000F7FC),
9882           UINT32_C(0x003A3CD2), UINT32_C(0x00224B02), UINT32_C(0x003CB849),
9883           UINT32_C(0x00318F23), UINT32_C(0x000B31C5), UINT32_C(0x00172883),
9884           UINT32_C(0x000E290F), UINT32_C(0x00058FCA), UINT32_C(0x0029D5B9),
9885           UINT32_C(0x000EE887), UINT32_C(0x0008C23A), UINT32_C(0x000B4641),
9886           UINT32_C(0x0019F308), UINT32_C(0x00368406), UINT32_C(0x003235C5),
9887           UINT32_C(0x000F6048), UINT32_C(0x00334FC7)},
9888          {UINT32_C(0x00721229), UINT32_C(0x0028E47C), UINT32_C(0x0006F2DC),
9889           UINT32_C(0x006E7CFF), UINT32_C(0x00184C72), UINT32_C(0x003AF41E),
9890           UINT32_C(0x000EC9A0), UINT32_C(0x0008E682), UINT32_C(0x00294028),
9891           UINT32_C(0x0010CBE0), UINT32_C(0x00325E8D), UINT32_C(0x00229C6E),
9892           UINT32_C(0x0007AE13), UINT32_C(0x0012B92A), UINT32_C(0x001A6F8B),
9893           UINT32_C(0x00445E9E), UINT32_C(0x0038E62B), UINT32_C(0x000CCE4E),
9894           UINT32_C(0x0016D227), UINT32_C(0x005AEC2B), UINT32_C(0x002CB9C3),
9895           UINT32_C(0x000E9EE2), UINT32_C(0x00151064)}},
9896         {{UINT32_C(0x00219F11), UINT32_C(0x000EEE99), UINT32_C(0x000F0E81),
9897           UINT32_C(0x0014202D), UINT32_C(0x0017D47D), UINT32_C(0x0013E996),
9898           UINT32_C(0x001FC4D3), UINT32_C(0x007153BF), UINT32_C(0x003B0646),
9899           UINT32_C(0x003CCDA8), UINT32_C(0x002DB80C), UINT32_C(0x005A6567),
9900           UINT32_C(0x00301938), UINT32_C(0x000B2A1D), UINT32_C(0x002C1CD4),
9901           UINT32_C(0x0036D153), UINT32_C(0x00002DE7), UINT32_C(0x001C0718),
9902           UINT32_C(0x001398D4), UINT32_C(0x001C18B0), UINT32_C(0x000531C6),
9903           UINT32_C(0x00270891), UINT32_C(0x001D12C0)},
9904          {UINT32_C(0x006BF552), UINT32_C(0x00379C8C), UINT32_C(0x00124703),
9905           UINT32_C(0x001685D6), UINT32_C(0x000B4D76), UINT32_C(0x00354333),
9906           UINT32_C(0x003FD16E), UINT32_C(0x0078F567), UINT32_C(0x00228610),
9907           UINT32_C(0x002410D3), UINT32_C(0x0037EE2A), UINT32_C(0x002FF2A5),
9908           UINT32_C(0x001EA65B), UINT32_C(0x003FE56C), UINT32_C(0x00086D94),
9909           UINT32_C(0x0016F8D9), UINT32_C(0x00253D0C), UINT32_C(0x00110729),
9910           UINT32_C(0x00251056), UINT32_C(0x00771AF9), UINT32_C(0x00330BB2),
9911           UINT32_C(0x0030D723), UINT32_C(0x0010B52C)}},
9912         {{UINT32_C(0x0059EEDD), UINT32_C(0x00224DDB), UINT32_C(0x00224843),
9913           UINT32_C(0x00062307), UINT32_C(0x001C385D), UINT32_C(0x00214646),
9914           UINT32_C(0x002E9EF9), UINT32_C(0x00069FC2), UINT32_C(0x0034E86C),
9915           UINT32_C(0x002DE7F8), UINT32_C(0x0011547F), UINT32_C(0x00592112),
9916           UINT32_C(0x003BA86D), UINT32_C(0x003E5946), UINT32_C(0x001999D6),
9917           UINT32_C(0x0019972E), UINT32_C(0x000BEC90), UINT32_C(0x001A2575),
9918           UINT32_C(0x000C3FB3), UINT32_C(0x0016B2B8), UINT32_C(0x000F91C3),
9919           UINT32_C(0x003BE22B), UINT32_C(0x00259437)},
9920          {UINT32_C(0x00511BD4), UINT32_C(0x00114679), UINT32_C(0x003320B0),
9921           UINT32_C(0x006912DE), UINT32_C(0x00209607), UINT32_C(0x0010EA82),
9922           UINT32_C(0x001756FD), UINT32_C(0x0067C9A7), UINT32_C(0x00386F00),
9923           UINT32_C(0x0019C5A2), UINT32_C(0x000C1F54), UINT32_C(0x0060CBC7),
9924           UINT32_C(0x001DA7B9), UINT32_C(0x00063F18), UINT32_C(0x003D8253),
9925           UINT32_C(0x006757E9), UINT32_C(0x001F28E4), UINT32_C(0x003F4512),
9926           UINT32_C(0x0015BA1B), UINT32_C(0x00296BBE), UINT32_C(0x001E7448),
9927           UINT32_C(0x0027173C), UINT32_C(0x00385C41)}},
9928         {{UINT32_C(0x001A30EE), UINT32_C(0x003F8DAD), UINT32_C(0x000A157B),
9929           UINT32_C(0x002E76B6), UINT32_C(0x0003B33B), UINT32_C(0x00067B4F),
9930           UINT32_C(0x00338572), UINT32_C(0x004A7886), UINT32_C(0x000AF814),
9931           UINT32_C(0x00231F5B), UINT32_C(0x003A7866), UINT32_C(0x001BC9D8),
9932           UINT32_C(0x002EC718), UINT32_C(0x000F7210), UINT32_C(0x0038A200),
9933           UINT32_C(0x0024BD8B), UINT32_C(0x0025403D), UINT32_C(0x002338A0),
9934           UINT32_C(0x00197FC8), UINT32_C(0x007EFFC4), UINT32_C(0x002C8ED2),
9935           UINT32_C(0x002F359C), UINT32_C(0x0007199C)},
9936          {UINT32_C(0x003AA840), UINT32_C(0x001FEBA5), UINT32_C(0x00204035),
9937           UINT32_C(0x001437DE), UINT32_C(0x0030877E), UINT32_C(0x001DC9D8),
9938           UINT32_C(0x0022F529), UINT32_C(0x004AA308), UINT32_C(0x0008CF16),
9939           UINT32_C(0x00227F26), UINT32_C(0x0030EA93), UINT32_C(0x00444D20),
9940           UINT32_C(0x000FC049), UINT32_C(0x0025FECC), UINT32_C(0x00366A3B),
9941           UINT32_C(0x0075F2C6), UINT32_C(0x002D58DE), UINT32_C(0x00037A47),
9942           UINT32_C(0x001143E7), UINT32_C(0x0066F889), UINT32_C(0x001AA585),
9943           UINT32_C(0x0008637C), UINT32_C(0x00285D24)}},
9944         {{UINT32_C(0x001684FD), UINT32_C(0x0026202E), UINT32_C(0x00229298),
9945           UINT32_C(0x0038BA17), UINT32_C(0x001143E4), UINT32_C(0x0004C67B),
9946           UINT32_C(0x0009A1D3), UINT32_C(0x00359003), UINT32_C(0x0000CF20),
9947           UINT32_C(0x003C8E67), UINT32_C(0x0025DDF6), UINT32_C(0x00167020),
9948           UINT32_C(0x000C3320), UINT32_C(0x0032FD4F), UINT32_C(0x001D4DDD),
9949           UINT32_C(0x002ABE07), UINT32_C(0x0015D694), UINT32_C(0x002025E4),
9950           UINT32_C(0x0024B490), UINT32_C(0x00237C45), UINT32_C(0x000F2232),
9951           UINT32_C(0x00172623), UINT32_C(0x003F2420)},
9952          {UINT32_C(0x0031C43A), UINT32_C(0x002504F9), UINT32_C(0x002A5346),
9953           UINT32_C(0x00085709), UINT32_C(0x00181464), UINT32_C(0x0016AE98),
9954           UINT32_C(0x0005937D), UINT32_C(0x007E227E), UINT32_C(0x0021E344),
9955           UINT32_C(0x002D37F2), UINT32_C(0x003BABA8), UINT32_C(0x0076BA1E),
9956           UINT32_C(0x001E9354), UINT32_C(0x001FB1CD), UINT32_C(0x002FA365),
9957           UINT32_C(0x0037F2A0), UINT32_C(0x00150FF4), UINT32_C(0x0001D5DC),
9958           UINT32_C(0x003D537E), UINT32_C(0x003F0F28), UINT32_C(0x002C7BEA),
9959           UINT32_C(0x003C8613), UINT32_C(0x0032181B)}},
9960         {{UINT32_C(0x004FDBFF), UINT32_C(0x00279110), UINT32_C(0x0014218E),
9961           UINT32_C(0x006FF570), UINT32_C(0x000BEE6D), UINT32_C(0x001AC4BF),
9962           UINT32_C(0x00168284), UINT32_C(0x00204FD9), UINT32_C(0x0009E49A),
9963           UINT32_C(0x00375F6C), UINT32_C(0x00188591), UINT32_C(0x00711953),
9964           UINT32_C(0x003F4432), UINT32_C(0x00196529), UINT32_C(0x00394538),
9965           UINT32_C(0x0018F2F6), UINT32_C(0x002CA7B0), UINT32_C(0x00013757),
9966           UINT32_C(0x001F2763), UINT32_C(0x001F675A), UINT32_C(0x002051A1),
9967           UINT32_C(0x003E27EB), UINT32_C(0x001862D5)},
9968          {UINT32_C(0x00762CA4), UINT32_C(0x0008C476), UINT32_C(0x00324E43),
9969           UINT32_C(0x002A5BED), UINT32_C(0x002FCB16), UINT32_C(0x003A2EC2),
9970           UINT32_C(0x000DAC89), UINT32_C(0x001B1EA8), UINT32_C(0x00270A0C),
9971           UINT32_C(0x000F92C4), UINT32_C(0x00137059), UINT32_C(0x0002C67B),
9972           UINT32_C(0x001DE35A), UINT32_C(0x0003AEB0), UINT32_C(0x0032086D),
9973           UINT32_C(0x00622727), UINT32_C(0x003663F6), UINT32_C(0x00143F44),
9974           UINT32_C(0x0007E1A6), UINT32_C(0x0052B971), UINT32_C(0x002A4520),
9975           UINT32_C(0x003B35C1), UINT32_C(0x000E5F13)}},
9976         {{UINT32_C(0x00377631), UINT32_C(0x00160066), UINT32_C(0x003F8625),
9977           UINT32_C(0x0008A975), UINT32_C(0x0011C7DC), UINT32_C(0x002AC5AE),
9978           UINT32_C(0x001D6AD4), UINT32_C(0x00457D6D), UINT32_C(0x000D9162),
9979           UINT32_C(0x0029BE2C), UINT32_C(0x0023E49C), UINT32_C(0x003CE982),
9980           UINT32_C(0x0029BD3F), UINT32_C(0x002FA98A), UINT32_C(0x000AAF8F),
9981           UINT32_C(0x0051BA4C), UINT32_C(0x000AAA3A), UINT32_C(0x00035AC4),
9982           UINT32_C(0x00326C9D), UINT32_C(0x0001BBF9), UINT32_C(0x00259EE8),
9983           UINT32_C(0x00363291), UINT32_C(0x00354D7C)},
9984          {UINT32_C(0x0004BACF), UINT32_C(0x00021298), UINT32_C(0x000BD9F4),
9985           UINT32_C(0x0043D1FD), UINT32_C(0x00144099), UINT32_C(0x0031DC66),
9986           UINT32_C(0x0038FF58), UINT32_C(0x001EDFDE), UINT32_C(0x000CDE37),
9987           UINT32_C(0x0011D4F2), UINT32_C(0x001830F3), UINT32_C(0x0066B396),
9988           UINT32_C(0x002B5740), UINT32_C(0x0000FE1B), UINT32_C(0x0018CA75),
9989           UINT32_C(0x000543A1), UINT32_C(0x0001F8BB), UINT32_C(0x003AD189),
9990           UINT32_C(0x002324CF), UINT32_C(0x004D2C11), UINT32_C(0x002F4CEB),
9991           UINT32_C(0x00158CE7), UINT32_C(0x000CC8E6)}},
9992         {{UINT32_C(0x0001F545), UINT32_C(0x000BAFC9), UINT32_C(0x00256984),
9993           UINT32_C(0x005BA1BD), UINT32_C(0x00186CC4), UINT32_C(0x00354258),
9994           UINT32_C(0x002C995A), UINT32_C(0x00634432), UINT32_C(0x001C8DFD),
9995           UINT32_C(0x0006A9F8), UINT32_C(0x003413FA), UINT32_C(0x00407583),
9996           UINT32_C(0x00364359), UINT32_C(0x00360343), UINT32_C(0x0004E81D),
9997           UINT32_C(0x0023B9E2), UINT32_C(0x00044AAC), UINT32_C(0x003E4F02),
9998           UINT32_C(0x000253E4), UINT32_C(0x004E1D95), UINT32_C(0x0008B230),
9999           UINT32_C(0x00045AB3), UINT32_C(0x00036815)},
10000          {UINT32_C(0x003912F5), UINT32_C(0x0038574B), UINT32_C(0x0004AD86),
10001           UINT32_C(0x00463316), UINT32_C(0x000037D8), UINT32_C(0x001023FC),
10002           UINT32_C(0x00031DE0), UINT32_C(0x007EC789), UINT32_C(0x000081EF),
10003           UINT32_C(0x002ABA70), UINT32_C(0x00355BFB), UINT32_C(0x00306CB6),
10004           UINT32_C(0x00146C52), UINT32_C(0x000D5AD0), UINT32_C(0x003681F1),
10005           UINT32_C(0x0063A37A), UINT32_C(0x001B646E), UINT32_C(0x000A931F),
10006           UINT32_C(0x0023DD86), UINT32_C(0x006F9AFA), UINT32_C(0x0008A0BB),
10007           UINT32_C(0x0011BD6F), UINT32_C(0x00169519)}},
10008         {{UINT32_C(0x00183D98), UINT32_C(0x003953F2), UINT32_C(0x00003F5C),
10009           UINT32_C(0x001D61CC), UINT32_C(0x0029E894), UINT32_C(0x0008FD62),
10010           UINT32_C(0x00124F02), UINT32_C(0x005D5510), UINT32_C(0x002CBB48),
10011           UINT32_C(0x0027C8EC), UINT32_C(0x002DA8A4), UINT32_C(0x00506092),
10012           UINT32_C(0x000D2ECA), UINT32_C(0x00080CB3), UINT32_C(0x00370B1F),
10013           UINT32_C(0x00264230), UINT32_C(0x00254B5D), UINT32_C(0x0030D35B),
10014           UINT32_C(0x00237E95), UINT32_C(0x003D3219), UINT32_C(0x000F1EE0),
10015           UINT32_C(0x0016F356), UINT32_C(0x000433B4)},
10016          {UINT32_C(0x002EDDFD), UINT32_C(0x0028836F), UINT32_C(0x0004B480),
10017           UINT32_C(0x00268786), UINT32_C(0x002F536C), UINT32_C(0x002AF788),
10018           UINT32_C(0x003B32BC), UINT32_C(0x003B16D5), UINT32_C(0x002C983E),
10019           UINT32_C(0x00009C26), UINT32_C(0x00267D08), UINT32_C(0x0020E60C),
10020           UINT32_C(0x000ECF45), UINT32_C(0x00278142), UINT32_C(0x001746F3),
10021           UINT32_C(0x0054A790), UINT32_C(0x0035C6AA), UINT32_C(0x00272DAC),
10022           UINT32_C(0x002BA52D), UINT32_C(0x0038B5A4), UINT32_C(0x003725B3),
10023           UINT32_C(0x003565DC), UINT32_C(0x001FF559)}},
10024         {{UINT32_C(0x0065D9D6), UINT32_C(0x00344FC2), UINT32_C(0x0000870B),
10025           UINT32_C(0x00699985), UINT32_C(0x002A5C08), UINT32_C(0x002D5249),
10026           UINT32_C(0x002CB5FE), UINT32_C(0x007C94CD), UINT32_C(0x001208B8),
10027           UINT32_C(0x00034BB9), UINT32_C(0x000F21F9), UINT32_C(0x0010B487),
10028           UINT32_C(0x001D773A), UINT32_C(0x0037E3B0), UINT32_C(0x002176D0),
10029           UINT32_C(0x0052166E), UINT32_C(0x002F70E0), UINT32_C(0x001BED82),
10030           UINT32_C(0x00286120), UINT32_C(0x007331ED), UINT32_C(0x001507E2),
10031           UINT32_C(0x003FD862), UINT32_C(0x000A5BC5)},
10032          {UINT32_C(0x00763783), UINT32_C(0x0011EC7B), UINT32_C(0x0006ECDB),
10033           UINT32_C(0x00596D37), UINT32_C(0x002D6D59), UINT32_C(0x001FB1F1),
10034           UINT32_C(0x0010DD1F), UINT32_C(0x003F277E), UINT32_C(0x00091B7A),
10035           UINT32_C(0x003FFE47), UINT32_C(0x0003D49D), UINT32_C(0x0071AF1E),
10036           UINT32_C(0x00173FA2), UINT32_C(0x001B76EC), UINT32_C(0x001D5248),
10037           UINT32_C(0x0059BE83), UINT32_C(0x003F4D6A), UINT32_C(0x001CE0D3),
10038           UINT32_C(0x003FDBAF), UINT32_C(0x00554CAA), UINT32_C(0x002FAF76),
10039           UINT32_C(0x0004DD7D), UINT32_C(0x0025BFE6)}},
10040         {{UINT32_C(0x0078E507), UINT32_C(0x003B0516), UINT32_C(0x00239513),
10041           UINT32_C(0x0026B945), UINT32_C(0x002F7EA4), UINT32_C(0x00258DAA),
10042           UINT32_C(0x002CA54E), UINT32_C(0x0038F70D), UINT32_C(0x0000EA33),
10043           UINT32_C(0x002CC019), UINT32_C(0x00322C57), UINT32_C(0x007E5F7D),
10044           UINT32_C(0x001BD5E1), UINT32_C(0x002300D9), UINT32_C(0x000A82FB),
10045           UINT32_C(0x007B959B), UINT32_C(0x00200D1E), UINT32_C(0x001F252C),
10046           UINT32_C(0x0021984A), UINT32_C(0x0015C036), UINT32_C(0x0016A72F),
10047           UINT32_C(0x00003E13), UINT32_C(0x0015AA73)},
10048          {UINT32_C(0x007C9D6A), UINT32_C(0x003E1441), UINT32_C(0x0011A00F),
10049           UINT32_C(0x0079A490), UINT32_C(0x0012D007), UINT32_C(0x003C8625),
10050           UINT32_C(0x001E5649), UINT32_C(0x004491D7), UINT32_C(0x00076136),
10051           UINT32_C(0x003E7528), UINT32_C(0x00353C0B), UINT32_C(0x0008E4BD),
10052           UINT32_C(0x003422E8), UINT32_C(0x00338BFD), UINT32_C(0x0027F2D6),
10053           UINT32_C(0x00772362), UINT32_C(0x00359B33), UINT32_C(0x003A501D),
10054           UINT32_C(0x00154AFF), UINT32_C(0x0049526D), UINT32_C(0x002761DE),
10055           UINT32_C(0x00309735), UINT32_C(0x00060B95)}},
10056     },
10057     {
10058         {{UINT32_C(0x00523B9F), UINT32_C(0x001A6BE6), UINT32_C(0x00036EDD),
10059           UINT32_C(0x0076AA2F), UINT32_C(0x003FD0E2), UINT32_C(0x00385A57),
10060           UINT32_C(0x00098667), UINT32_C(0x0013DD67), UINT32_C(0x0012B434),
10061           UINT32_C(0x00000973), UINT32_C(0x003CF995), UINT32_C(0x0045926B),
10062           UINT32_C(0x0002CF3D), UINT32_C(0x001B1027), UINT32_C(0x003876F6),
10063           UINT32_C(0x0039998A), UINT32_C(0x00398D3B), UINT32_C(0x000598D3),
10064           UINT32_C(0x0009E59F), UINT32_C(0x003DA91C), UINT32_C(0x0027F8FE),
10065           UINT32_C(0x001992EF), UINT32_C(0x001BD1E4)},
10066          {UINT32_C(0x005E09D8), UINT32_C(0x0027291C), UINT32_C(0x00042E2C),
10067           UINT32_C(0x005186A7), UINT32_C(0x00151430), UINT32_C(0x002A705A),
10068           UINT32_C(0x00312685), UINT32_C(0x001C5CD7), UINT32_C(0x002BC485),
10069           UINT32_C(0x0006B1B4), UINT32_C(0x003ED133), UINT32_C(0x006BA1BB),
10070           UINT32_C(0x0012B561), UINT32_C(0x001C6829), UINT32_C(0x0038F88D),
10071           UINT32_C(0x000FAFDF), UINT32_C(0x003A8F9C), UINT32_C(0x003B8278),
10072           UINT32_C(0x00075330), UINT32_C(0x00723D70), UINT32_C(0x0013971C),
10073           UINT32_C(0x0002A3A0), UINT32_C(0x0032D46E)}},
10074         {{UINT32_C(0x004A84E3), UINT32_C(0x000F993B), UINT32_C(0x0038E50F),
10075           UINT32_C(0x006F9D6C), UINT32_C(0x00222DDA), UINT32_C(0x00201C17),
10076           UINT32_C(0x003D690B), UINT32_C(0x00685E56), UINT32_C(0x003AE821),
10077           UINT32_C(0x00160832), UINT32_C(0x00267374), UINT32_C(0x0014A440),
10078           UINT32_C(0x00286466), UINT32_C(0x0037B81C), UINT32_C(0x0034FB56),
10079           UINT32_C(0x000A60A9), UINT32_C(0x00361F71), UINT32_C(0x002768E5),
10080           UINT32_C(0x002D9ADF), UINT32_C(0x00351ED3), UINT32_C(0x0026B155),
10081           UINT32_C(0x002ACF8B), UINT32_C(0x000CAB49)},
10082          {UINT32_C(0x002E7818), UINT32_C(0x00050DDB), UINT32_C(0x002F8281),
10083           UINT32_C(0x000426DB), UINT32_C(0x003BF6C0), UINT32_C(0x002F18B3),
10084           UINT32_C(0x000FDF15), UINT32_C(0x004326C8), UINT32_C(0x0034A233),
10085           UINT32_C(0x003F8BB5), UINT32_C(0x00252744), UINT32_C(0x005D0622),
10086           UINT32_C(0x000600E0), UINT32_C(0x000C538E), UINT32_C(0x002B9B96),
10087           UINT32_C(0x00240977), UINT32_C(0x00266E45), UINT32_C(0x000ED85F),
10088           UINT32_C(0x0016D56E), UINT32_C(0x005934A8), UINT32_C(0x000DE008),
10089           UINT32_C(0x000B7A70), UINT32_C(0x00333A6E)}},
10090         {{UINT32_C(0x0062AA91), UINT32_C(0x0004AD0D), UINT32_C(0x00290514),
10091           UINT32_C(0x0035EF4E), UINT32_C(0x003F0059), UINT32_C(0x0036F603),
10092           UINT32_C(0x001E8A95), UINT32_C(0x004E5E21), UINT32_C(0x003AAAD3),
10093           UINT32_C(0x001864B4), UINT32_C(0x00314695), UINT32_C(0x0061F315),
10094           UINT32_C(0x003E5320), UINT32_C(0x000A6A70), UINT32_C(0x00312DDA),
10095           UINT32_C(0x000CA432), UINT32_C(0x00089AF4), UINT32_C(0x0027EE81),
10096           UINT32_C(0x003314B2), UINT32_C(0x00569617), UINT32_C(0x00369C83),
10097           UINT32_C(0x00333762), UINT32_C(0x0004C25B)},
10098          {UINT32_C(0x0029163B), UINT32_C(0x0010F6C4), UINT32_C(0x003CFA87),
10099           UINT32_C(0x00413607), UINT32_C(0x0004D631), UINT32_C(0x0029CC9A),
10100           UINT32_C(0x0009B191), UINT32_C(0x0012E650), UINT32_C(0x0007576E),
10101           UINT32_C(0x002FAEF9), UINT32_C(0x001E71A7), UINT32_C(0x006D93A4),
10102           UINT32_C(0x00110BDB), UINT32_C(0x003C8A96), UINT32_C(0x000AB70A),
10103           UINT32_C(0x00161FF3), UINT32_C(0x00309EAC), UINT32_C(0x000887FB),
10104           UINT32_C(0x00199FC7), UINT32_C(0x007B0C04), UINT32_C(0x00030951),
10105           UINT32_C(0x00138445), UINT32_C(0x002C19E3)}},
10106         {{UINT32_C(0x001D9920), UINT32_C(0x0035A7F8), UINT32_C(0x0026F037),
10107           UINT32_C(0x00352EE6), UINT32_C(0x0036FF52), UINT32_C(0x000DA4B7),
10108           UINT32_C(0x000D5800), UINT32_C(0x0012D75B), UINT32_C(0x001E4378),
10109           UINT32_C(0x0006FB97), UINT32_C(0x003489D8), UINT32_C(0x007291B9),
10110           UINT32_C(0x002611FF), UINT32_C(0x0029220F), UINT32_C(0x003180AF),
10111           UINT32_C(0x003B64F1), UINT32_C(0x0029D493), UINT32_C(0x0029061E),
10112           UINT32_C(0x00287F20), UINT32_C(0x000A8410), UINT32_C(0x003B766F),
10113           UINT32_C(0x00194E12), UINT32_C(0x001C9672)},
10114          {UINT32_C(0x002BEBD9), UINT32_C(0x0034C959), UINT32_C(0x00372BCE),
10115           UINT32_C(0x0077E3FE), UINT32_C(0x002A76EF), UINT32_C(0x003B1215),
10116           UINT32_C(0x0017D01E), UINT32_C(0x001F6D6E), UINT32_C(0x001AF581),
10117           UINT32_C(0x002135B9), UINT32_C(0x0023AE9B), UINT32_C(0x00643EE2),
10118           UINT32_C(0x00309B0B), UINT32_C(0x00149E24), UINT32_C(0x002B829C),
10119           UINT32_C(0x0014D460), UINT32_C(0x0035AAB8), UINT32_C(0x001D64A4),
10120           UINT32_C(0x003C4123), UINT32_C(0x005FD0BE), UINT32_C(0x002680CE),
10121           UINT32_C(0x0032FC91), UINT32_C(0x000D5EFA)}},
10122         {{UINT32_C(0x0042107B), UINT32_C(0x002D79CB), UINT32_C(0x000E25C7),
10123           UINT32_C(0x0015D835), UINT32_C(0x0025EACC), UINT32_C(0x0038E784),
10124           UINT32_C(0x00133C3A), UINT32_C(0x0009780F), UINT32_C(0x0007A2B3),
10125           UINT32_C(0x003A0803), UINT32_C(0x00381D55), UINT32_C(0x00282268),
10126           UINT32_C(0x0020B921), UINT32_C(0x0037F7AC), UINT32_C(0x0013B76D),
10127           UINT32_C(0x003CE92F), UINT32_C(0x0025ECD4), UINT32_C(0x0030B106),
10128           UINT32_C(0x001D9F81), UINT32_C(0x006798C4), UINT32_C(0x000CF158),
10129           UINT32_C(0x003CAF9C), UINT32_C(0x003824DB)},
10130          {UINT32_C(0x007F6848), UINT32_C(0x0034A534), UINT32_C(0x0001B343),
10131           UINT32_C(0x006BF10C), UINT32_C(0x0008FCF1), UINT32_C(0x000025F0),
10132           UINT32_C(0x00105280), UINT32_C(0x0058FEE9), UINT32_C(0x0006B688),
10133           UINT32_C(0x001BEC79), UINT32_C(0x003D6BC7), UINT32_C(0x001DBC3E),
10134           UINT32_C(0x00298412), UINT32_C(0x002CAF5F), UINT32_C(0x003C0536),
10135           UINT32_C(0x006D0ED6), UINT32_C(0x002790F7), UINT32_C(0x0016B380),
10136           UINT32_C(0x000EA2CC), UINT32_C(0x007F2385), UINT32_C(0x001FC33E),
10137           UINT32_C(0x0001295D), UINT32_C(0x002EC02F)}},
10138         {{UINT32_C(0x001F7939), UINT32_C(0x002AC3E2), UINT32_C(0x001660F9),
10139           UINT32_C(0x00663A40), UINT32_C(0x001A8A13), UINT32_C(0x0023C8EF),
10140           UINT32_C(0x003AB7B7), UINT32_C(0x0039E16F), UINT32_C(0x001FA47B),
10141           UINT32_C(0x0025AB8D), UINT32_C(0x00384015), UINT32_C(0x003CE1A6),
10142           UINT32_C(0x0005F145), UINT32_C(0x000C1E4B), UINT32_C(0x001A72DB),
10143           UINT32_C(0x00203492), UINT32_C(0x003DE59E), UINT32_C(0x0010CD81),
10144           UINT32_C(0x002D2FAE), UINT32_C(0x0021F48A), UINT32_C(0x001C1285),
10145           UINT32_C(0x002EC41B), UINT32_C(0x001E8B07)},
10146          {UINT32_C(0x0018D1F3), UINT32_C(0x002EC53A), UINT32_C(0x00190D62),
10147           UINT32_C(0x0018FCFD), UINT32_C(0x000A3EE7), UINT32_C(0x0039D235),
10148           UINT32_C(0x00217FF2), UINT32_C(0x00142817), UINT32_C(0x002FB4F7),
10149           UINT32_C(0x001BB01D), UINT32_C(0x000BF067), UINT32_C(0x0052C1A1),
10150           UINT32_C(0x001029DF), UINT32_C(0x003B77AC), UINT32_C(0x001C5446),
10151           UINT32_C(0x000A8528), UINT32_C(0x00076849), UINT32_C(0x0024957C),
10152           UINT32_C(0x00255F16), UINT32_C(0x00464713), UINT32_C(0x0014A68E),
10153           UINT32_C(0x002A0E25), UINT32_C(0x0027874C)}},
10154         {{UINT32_C(0x00165C60), UINT32_C(0x000F1947), UINT32_C(0x00358DAC),
10155           UINT32_C(0x003112AB), UINT32_C(0x003CED7D), UINT32_C(0x0007D95D),
10156           UINT32_C(0x001BFB25), UINT32_C(0x0038039B), UINT32_C(0x002C49B9),
10157           UINT32_C(0x00226B1D), UINT32_C(0x00307B50), UINT32_C(0x002A8A6B),
10158           UINT32_C(0x003A8D6F), UINT32_C(0x002D72F9), UINT32_C(0x002F321D),
10159           UINT32_C(0x00530076), UINT32_C(0x002D8361), UINT32_C(0x002D2B58),
10160           UINT32_C(0x0032030C), UINT32_C(0x0032F5E5), UINT32_C(0x00164CE3),
10161           UINT32_C(0x0026D5D1), UINT32_C(0x0020444C)},
10162          {UINT32_C(0x002ABBE4), UINT32_C(0x003519D8), UINT32_C(0x00151482),
10163           UINT32_C(0x00773260), UINT32_C(0x0034B1AD), UINT32_C(0x00250B9E),
10164           UINT32_C(0x00302049), UINT32_C(0x00385164), UINT32_C(0x003E74F7),
10165           UINT32_C(0x0023B51F), UINT32_C(0x001A3158), UINT32_C(0x00527F9C),
10166           UINT32_C(0x003CABD3), UINT32_C(0x002F9178), UINT32_C(0x0006BAE5),
10167           UINT32_C(0x00600F3B), UINT32_C(0x002DF1B8), UINT32_C(0x000D590F),
10168           UINT32_C(0x00194149), UINT32_C(0x005DE8B8), UINT32_C(0x002325D5),
10169           UINT32_C(0x003EDBFF), UINT32_C(0x000AAFE1)}},
10170         {{UINT32_C(0x001A50FC), UINT32_C(0x00280217), UINT32_C(0x003A5F1B),
10171           UINT32_C(0x00412D41), UINT32_C(0x00285345), UINT32_C(0x002DBBAD),
10172           UINT32_C(0x000FF377), UINT32_C(0x0059899D), UINT32_C(0x0029B472),
10173           UINT32_C(0x00072A4A), UINT32_C(0x0028DC22), UINT32_C(0x001611B6),
10174           UINT32_C(0x003C3760), UINT32_C(0x0001466B), UINT32_C(0x003D8FA9),
10175           UINT32_C(0x00573081), UINT32_C(0x0013FB11), UINT32_C(0x00203758),
10176           UINT32_C(0x002E6367), UINT32_C(0x00482CF9), UINT32_C(0x003178F6),
10177           UINT32_C(0x001073E8), UINT32_C(0x001997C3)},
10178          {UINT32_C(0x0073FDFD), UINT32_C(0x002EFF90), UINT32_C(0x0014EBAD),
10179           UINT32_C(0x000F3618), UINT32_C(0x00162A1A), UINT32_C(0x00270E47),
10180           UINT32_C(0x0010A3E7), UINT32_C(0x00345497), UINT32_C(0x002C126D),
10181           UINT32_C(0x0036F8A6), UINT32_C(0x00166505), UINT32_C(0x0005C77A),
10182           UINT32_C(0x00197ED6), UINT32_C(0x00192ECC), UINT32_C(0x00233375),
10183           UINT32_C(0x003E0030), UINT32_C(0x000D5706), UINT32_C(0x0009709A),
10184           UINT32_C(0x003D8884), UINT32_C(0x00244795), UINT32_C(0x000B3F0C),
10185           UINT32_C(0x002420C0), UINT32_C(0x00286796)}},
10186         {{UINT32_C(0x000CAAE5), UINT32_C(0x00094457), UINT32_C(0x00152528),
10187           UINT32_C(0x001E3DB2), UINT32_C(0x0005EC25), UINT32_C(0x000BF941),
10188           UINT32_C(0x002A007F), UINT32_C(0x00504FD8), UINT32_C(0x003ED863),
10189           UINT32_C(0x003A902A), UINT32_C(0x0014F2EA), UINT32_C(0x0015DB81),
10190           UINT32_C(0x00280472), UINT32_C(0x003D790F), UINT32_C(0x00349779),
10191           UINT32_C(0x006EB09F), UINT32_C(0x00209701), UINT32_C(0x00377E4F),
10192           UINT32_C(0x002E600B), UINT32_C(0x00152371), UINT32_C(0x000BA435),
10193           UINT32_C(0x001FEF62), UINT32_C(0x0027E7F6)},
10194          {UINT32_C(0x00599CB9), UINT32_C(0x001549AA), UINT32_C(0x0013AF70),
10195           UINT32_C(0x00234B56), UINT32_C(0x00248CC3), UINT32_C(0x0032259C),
10196           UINT32_C(0x00203D97), UINT32_C(0x006AA891), UINT32_C(0x0005CEFE),
10197           UINT32_C(0x00199005), UINT32_C(0x001990D3), UINT32_C(0x00334DF5),
10198           UINT32_C(0x001B0BB0), UINT32_C(0x0011DD6C), UINT32_C(0x0038F1E0),
10199           UINT32_C(0x004EE490), UINT32_C(0x003C3321), UINT32_C(0x001F139B),
10200           UINT32_C(0x0006C59B), UINT32_C(0x00195C36), UINT32_C(0x00013ED7),
10201           UINT32_C(0x00020142), UINT32_C(0x0034FF5C)}},
10202         {{UINT32_C(0x002C93FF), UINT32_C(0x000319F9), UINT32_C(0x00002CB9),
10203           UINT32_C(0x002D18F3), UINT32_C(0x001DCA23), UINT32_C(0x000C5093),
10204           UINT32_C(0x001EFF04), UINT32_C(0x0075CFF0), UINT32_C(0x00064EA8),
10205           UINT32_C(0x0004571C), UINT32_C(0x0019B187), UINT32_C(0x0053F3E7),
10206           UINT32_C(0x002BFCD9), UINT32_C(0x00100147), UINT32_C(0x00381877),
10207           UINT32_C(0x0032E5D6), UINT32_C(0x002EC006), UINT32_C(0x00238ED2),
10208           UINT32_C(0x0032C67B), UINT32_C(0x00001663), UINT32_C(0x003C176A),
10209           UINT32_C(0x0014E21C), UINT32_C(0x00399D5E)},
10210          {UINT32_C(0x004E0B57), UINT32_C(0x001C2F95), UINT32_C(0x00363DC0),
10211           UINT32_C(0x0009DC71), UINT32_C(0x00151A34), UINT32_C(0x003159C5),
10212           UINT32_C(0x00201355), UINT32_C(0x00455C7C), UINT32_C(0x00070906),
10213           UINT32_C(0x002195FD), UINT32_C(0x001CE30A), UINT32_C(0x0073CADB),
10214           UINT32_C(0x0005C318), UINT32_C(0x00037022), UINT32_C(0x00053E6C),
10215           UINT32_C(0x0078D811), UINT32_C(0x002D5455), UINT32_C(0x000B37E3),
10216           UINT32_C(0x003A1081), UINT32_C(0x005948E6), UINT32_C(0x0032F5E3),
10217           UINT32_C(0x003F1006), UINT32_C(0x0029C6C7)}},
10218         {{UINT32_C(0x006A53F5), UINT32_C(0x00234585), UINT32_C(0x003B1248),
10219           UINT32_C(0x0031E22D), UINT32_C(0x0014C277), UINT32_C(0x001E4E41),
10220           UINT32_C(0x000C1028), UINT32_C(0x004CFB54), UINT32_C(0x000EA3E8),
10221           UINT32_C(0x00091AA9), UINT32_C(0x0026A9C7), UINT32_C(0x003266E7),
10222           UINT32_C(0x002E72A8), UINT32_C(0x002340FE), UINT32_C(0x00306573),
10223           UINT32_C(0x006B9E9A), UINT32_C(0x0035D59F), UINT32_C(0x001DB09E),
10224           UINT32_C(0x0005F131), UINT32_C(0x0002A91F), UINT32_C(0x003D10FA),
10225           UINT32_C(0x002D44C4), UINT32_C(0x001A9029)},
10226          {UINT32_C(0x004DC2D6), UINT32_C(0x000485AA), UINT32_C(0x00357F02),
10227           UINT32_C(0x00109ABD), UINT32_C(0x00277446), UINT32_C(0x002B2567),
10228           UINT32_C(0x003C69A7), UINT32_C(0x0031AA5D), UINT32_C(0x00308E0D),
10229           UINT32_C(0x000CDB91), UINT32_C(0x001A3AB7), UINT32_C(0x0043A830),
10230           UINT32_C(0x002FC1D1), UINT32_C(0x001FA04C), UINT32_C(0x002B3C22),
10231           UINT32_C(0x00400E6C), UINT32_C(0x00088655), UINT32_C(0x000D2E38),
10232           UINT32_C(0x002BEDE7), UINT32_C(0x0041F67A), UINT32_C(0x002EB40A),
10233           UINT32_C(0x00263E54), UINT32_C(0x000736A8)}},
10234         {{UINT32_C(0x00524DB7), UINT32_C(0x00329BD6), UINT32_C(0x002BC43F),
10235           UINT32_C(0x00407E56), UINT32_C(0x0006BA61), UINT32_C(0x001A5FC7),
10236           UINT32_C(0x000FC681), UINT32_C(0x001A5E17), UINT32_C(0x002AD8E2),
10237           UINT32_C(0x003C1B1E), UINT32_C(0x003028BA), UINT32_C(0x002CE10A),
10238           UINT32_C(0x0013F30E), UINT32_C(0x001966B5), UINT32_C(0x001C1DF1),
10239           UINT32_C(0x00540907), UINT32_C(0x0029361C), UINT32_C(0x000E7B5C),
10240           UINT32_C(0x00303DDE), UINT32_C(0x0059FB60), UINT32_C(0x00151554),
10241           UINT32_C(0x002838BD), UINT32_C(0x003D9CFA)},
10242          {UINT32_C(0x002063F9), UINT32_C(0x002731CA), UINT32_C(0x002003F0),
10243           UINT32_C(0x0079F9F9), UINT32_C(0x00347AC8), UINT32_C(0x0021973A),
10244           UINT32_C(0x001280CE), UINT32_C(0x00323A60), UINT32_C(0x00098D3C),
10245           UINT32_C(0x00306D49), UINT32_C(0x000109EC), UINT32_C(0x00511419),
10246           UINT32_C(0x0010C7B4), UINT32_C(0x001D2E21), UINT32_C(0x003991C3),
10247           UINT32_C(0x003C5990), UINT32_C(0x001DB860), UINT32_C(0x0014EC41),
10248           UINT32_C(0x00088BAC), UINT32_C(0x00448C44), UINT32_C(0x00084966),
10249           UINT32_C(0x0031E904), UINT32_C(0x000524F2)}},
10250         {{UINT32_C(0x0049E3D3), UINT32_C(0x00181A3B), UINT32_C(0x0011AA50),
10251           UINT32_C(0x007021E5), UINT32_C(0x00316EC7), UINT32_C(0x0029A769),
10252           UINT32_C(0x003F4C5A), UINT32_C(0x006AA0ED), UINT32_C(0x003E7379),
10253           UINT32_C(0x00150459), UINT32_C(0x0035CBC7), UINT32_C(0x005DEBB1),
10254           UINT32_C(0x00053C63), UINT32_C(0x000AA5E3), UINT32_C(0x0013545F),
10255           UINT32_C(0x00019A93), UINT32_C(0x0029934B), UINT32_C(0x000A94D0),
10256           UINT32_C(0x00260B29), UINT32_C(0x00298F53), UINT32_C(0x00377D15),
10257           UINT32_C(0x0029F246), UINT32_C(0x002F33B2)},
10258          {UINT32_C(0x0066FE62), UINT32_C(0x001037AD), UINT32_C(0x00370077),
10259           UINT32_C(0x00421175), UINT32_C(0x001E861C), UINT32_C(0x00033773),
10260           UINT32_C(0x002BFEA4), UINT32_C(0x0000380F), UINT32_C(0x0001544C),
10261           UINT32_C(0x00272751), UINT32_C(0x003FB134), UINT32_C(0x0039C926),
10262           UINT32_C(0x002CAB64), UINT32_C(0x0026F1D5), UINT32_C(0x00273824),
10263           UINT32_C(0x004BDF14), UINT32_C(0x001E4097), UINT32_C(0x00281D77),
10264           UINT32_C(0x00273464), UINT32_C(0x0005EB84), UINT32_C(0x002942CD),
10265           UINT32_C(0x003938B5), UINT32_C(0x00333CCF)}},
10266         {{UINT32_C(0x000B8466), UINT32_C(0x00335B47), UINT32_C(0x001C7C5F),
10267           UINT32_C(0x00130B87), UINT32_C(0x0002C697), UINT32_C(0x0011F099),
10268           UINT32_C(0x001909FC), UINT32_C(0x007C440B), UINT32_C(0x0006E6CD),
10269           UINT32_C(0x003604F5), UINT32_C(0x000A3664), UINT32_C(0x000E9448),
10270           UINT32_C(0x00375564), UINT32_C(0x00100ABB), UINT32_C(0x000A2BD1),
10271           UINT32_C(0x00610611), UINT32_C(0x000B0919), UINT32_C(0x00192DA1),
10272           UINT32_C(0x000CA6A0), UINT32_C(0x0022EC21), UINT32_C(0x0010021B),
10273           UINT32_C(0x0014AC0F), UINT32_C(0x003C3561)},
10274          {UINT32_C(0x001DE844), UINT32_C(0x000339F0), UINT32_C(0x00338277),
10275           UINT32_C(0x0039E865), UINT32_C(0x000C918F), UINT32_C(0x001B9202),
10276           UINT32_C(0x0039DB51), UINT32_C(0x0035E972), UINT32_C(0x00269806),
10277           UINT32_C(0x001A4703), UINT32_C(0x00128E3F), UINT32_C(0x0059736B),
10278           UINT32_C(0x0009133A), UINT32_C(0x000988FA), UINT32_C(0x003F5D17),
10279           UINT32_C(0x0075D549), UINT32_C(0x0035AF8B), UINT32_C(0x000EBF87),
10280           UINT32_C(0x002B5241), UINT32_C(0x001A47E1), UINT32_C(0x003FAD0B),
10281           UINT32_C(0x003F031A), UINT32_C(0x0000856D)}},
10282         {{UINT32_C(0x007BA242), UINT32_C(0x003F139F), UINT32_C(0x0011DEFD),
10283           UINT32_C(0x0023DE43), UINT32_C(0x00295AA0), UINT32_C(0x003AB6CE),
10284           UINT32_C(0x0000492A), UINT32_C(0x00038F1C), UINT32_C(0x001F3BEB),
10285           UINT32_C(0x000DEADE), UINT32_C(0x003039CC), UINT32_C(0x00546C46),
10286           UINT32_C(0x000F8C59), UINT32_C(0x00364F5D), UINT32_C(0x00278A38),
10287           UINT32_C(0x0003D22C), UINT32_C(0x000FDC4B), UINT32_C(0x0001BEAF),
10288           UINT32_C(0x00025B08), UINT32_C(0x0008F72C), UINT32_C(0x0027C5E7),
10289           UINT32_C(0x00252A05), UINT32_C(0x00107A50)},
10290          {UINT32_C(0x000EBA8F), UINT32_C(0x0027A1D4), UINT32_C(0x003EF3A3),
10291           UINT32_C(0x007BCF49), UINT32_C(0x003D3105), UINT32_C(0x0023E6FD),
10292           UINT32_C(0x00359B97), UINT32_C(0x0028F42A), UINT32_C(0x003E23D6),
10293           UINT32_C(0x00178851), UINT32_C(0x0037642F), UINT32_C(0x0042E04B),
10294           UINT32_C(0x00376AFD), UINT32_C(0x00198F42), UINT32_C(0x002F89CF),
10295           UINT32_C(0x000E495C), UINT32_C(0x002116C6), UINT32_C(0x00369883),
10296           UINT32_C(0x0005445E), UINT32_C(0x0028D909), UINT32_C(0x001123BE),
10297           UINT32_C(0x00395238), UINT32_C(0x000BDBC0)}},
10298         {{UINT32_C(0x0079A5E7), UINT32_C(0x001C3E7B), UINT32_C(0x00184F53),
10299           UINT32_C(0x003BBC86), UINT32_C(0x0010D687), UINT32_C(0x00038850),
10300           UINT32_C(0x0038E20E), UINT32_C(0x003E53AE), UINT32_C(0x0004A94C),
10301           UINT32_C(0x002AEB4D), UINT32_C(0x003AEB1A), UINT32_C(0x00448BCC),
10302           UINT32_C(0x0004DB71), UINT32_C(0x0003778D), UINT32_C(0x003944F0),
10303           UINT32_C(0x000CC500), UINT32_C(0x00008E46), UINT32_C(0x000F5C40),
10304           UINT32_C(0x00110507), UINT32_C(0x001F1E48), UINT32_C(0x003628D5),
10305           UINT32_C(0x00052A96), UINT32_C(0x003B94D2)},
10306          {UINT32_C(0x0004ABCF), UINT32_C(0x000A3BC2), UINT32_C(0x0001C80A),
10307           UINT32_C(0x007BDA93), UINT32_C(0x000ECD4F), UINT32_C(0x003F215D),
10308           UINT32_C(0x000EBBE2), UINT32_C(0x005395FC), UINT32_C(0x00074168),
10309           UINT32_C(0x0022A24A), UINT32_C(0x001A1B35), UINT32_C(0x0077FFE0),
10310           UINT32_C(0x003C9950), UINT32_C(0x0028A73C), UINT32_C(0x001AC592),
10311           UINT32_C(0x0023CB0D), UINT32_C(0x003F12D3), UINT32_C(0x0030ED1B),
10312           UINT32_C(0x002E878C), UINT32_C(0x003BA03C), UINT32_C(0x003CDBA8),
10313           UINT32_C(0x0021E634), UINT32_C(0x000F8610)}},
10314     },
10315     {
10316         {{UINT32_C(0x00374EA0), UINT32_C(0x003D49A3), UINT32_C(0x001F7E76),
10317           UINT32_C(0x001D6B9E), UINT32_C(0x002592C5), UINT32_C(0x000E14A2),
10318           UINT32_C(0x00190C56), UINT32_C(0x0063DAE2), UINT32_C(0x0039CB00),
10319           UINT32_C(0x001A96B0), UINT32_C(0x001112B0), UINT32_C(0x00125D57),
10320           UINT32_C(0x003E073B), UINT32_C(0x003BA300), UINT32_C(0x0010434F),
10321           UINT32_C(0x00584798), UINT32_C(0x00328C4D), UINT32_C(0x002C908E),
10322           UINT32_C(0x003F37C6), UINT32_C(0x0050852E), UINT32_C(0x000E2E46),
10323           UINT32_C(0x003A1A63), UINT32_C(0x001C643D)},
10324          {UINT32_C(0x00147D83), UINT32_C(0x000590DE), UINT32_C(0x001A30E1),
10325           UINT32_C(0x003223D8), UINT32_C(0x00092F2B), UINT32_C(0x002B60EE),
10326           UINT32_C(0x00044972), UINT32_C(0x0024B04F), UINT32_C(0x000F8784),
10327           UINT32_C(0x00015A35), UINT32_C(0x001E5404), UINT32_C(0x003B76C0),
10328           UINT32_C(0x0024ECFE), UINT32_C(0x00101933), UINT32_C(0x0029FDFB),
10329           UINT32_C(0x00224043), UINT32_C(0x00059771), UINT32_C(0x0035FA07),
10330           UINT32_C(0x00044AFE), UINT32_C(0x00168A97), UINT32_C(0x001D4795),
10331           UINT32_C(0x0016C054), UINT32_C(0x00202B01)}},
10332         {{UINT32_C(0x0063E7A6), UINT32_C(0x0034C8D6), UINT32_C(0x00280787),
10333           UINT32_C(0x001A7385), UINT32_C(0x003ABD2E), UINT32_C(0x00185E3E),
10334           UINT32_C(0x0000C346), UINT32_C(0x0075FF68), UINT32_C(0x00117390),
10335           UINT32_C(0x00234323), UINT32_C(0x00327433), UINT32_C(0x003FED4A),
10336           UINT32_C(0x003946EE), UINT32_C(0x00036FEB), UINT32_C(0x000C0F57),
10337           UINT32_C(0x00359C4A), UINT32_C(0x00092D1D), UINT32_C(0x0001A134),
10338           UINT32_C(0x002AD6D7), UINT32_C(0x0012395F), UINT32_C(0x003F988A),
10339           UINT32_C(0x001ACCFF), UINT32_C(0x002123C1)},
10340          {UINT32_C(0x002D5A19), UINT32_C(0x00156939), UINT32_C(0x00222C1A),
10341           UINT32_C(0x00619366), UINT32_C(0x0016036D), UINT32_C(0x0033459B),
10342           UINT32_C(0x00062D47), UINT32_C(0x004B8C12), UINT32_C(0x001B95CF),
10343           UINT32_C(0x00117F5F), UINT32_C(0x003F80DA), UINT32_C(0x00050A50),
10344           UINT32_C(0x003942D5), UINT32_C(0x00385EAE), UINT32_C(0x0033AB22),
10345           UINT32_C(0x00537468), UINT32_C(0x000DFF4B), UINT32_C(0x001879D6),
10346           UINT32_C(0x002388A7), UINT32_C(0x000FCEA6), UINT32_C(0x00375E35),
10347           UINT32_C(0x003398B3), UINT32_C(0x003F30BA)}},
10348         {{UINT32_C(0x003598D4), UINT32_C(0x0019A9A3), UINT32_C(0x003A267B),
10349           UINT32_C(0x002B12CC), UINT32_C(0x003839D5), UINT32_C(0x003B8D33),
10350           UINT32_C(0x0025BF3A), UINT32_C(0x00438430), UINT32_C(0x00189C5B),
10351           UINT32_C(0x003F2C8B), UINT32_C(0x003A8177), UINT32_C(0x007055A3),
10352           UINT32_C(0x002E6730), UINT32_C(0x00341821), UINT32_C(0x002142DE),
10353           UINT32_C(0x0010BC51), UINT32_C(0x000D1EA0), UINT32_C(0x0015FEF0),
10354           UINT32_C(0x00329B9B), UINT32_C(0x000508A4), UINT32_C(0x0001C1B9),
10355           UINT32_C(0x001FF600), UINT32_C(0x00328E8E)},
10356          {UINT32_C(0x00717603), UINT32_C(0x0033F89C), UINT32_C(0x0025C76B),
10357           UINT32_C(0x0018607B), UINT32_C(0x001303E9), UINT32_C(0x000F2CB5),
10358           UINT32_C(0x000F8CE4), UINT32_C(0x0011128F), UINT32_C(0x00216CE5),
10359           UINT32_C(0x003B4AEC), UINT32_C(0x0027F704), UINT32_C(0x005A2623),
10360           UINT32_C(0x002A1412), UINT32_C(0x0037E07D), UINT32_C(0x0007F5BF),
10361           UINT32_C(0x006BFF5F), UINT32_C(0x0000D2EA), UINT32_C(0x0028D09E),
10362           UINT32_C(0x0030FECE), UINT32_C(0x007CE886), UINT32_C(0x00163AD8),
10363           UINT32_C(0x00007318), UINT32_C(0x002C4F8D)}},
10364         {{UINT32_C(0x0022EF26), UINT32_C(0x0011DF21), UINT32_C(0x001A21E7),
10365           UINT32_C(0x0067A5B1), UINT32_C(0x00327468), UINT32_C(0x0031BA5C),
10366           UINT32_C(0x00156DC9), UINT32_C(0x001E7E4E), UINT32_C(0x003FB583),
10367           UINT32_C(0x001EB61F), UINT32_C(0x002ABBA4), UINT32_C(0x0040FEC8),
10368           UINT32_C(0x0004C5FF), UINT32_C(0x0010F939), UINT32_C(0x003D4DA2),
10369           UINT32_C(0x005C0941), UINT32_C(0x0013C311), UINT32_C(0x000BA027),
10370           UINT32_C(0x001845CC), UINT32_C(0x006FF264), UINT32_C(0x0038AC88),
10371           UINT32_C(0x003463D6), UINT32_C(0x000EADB9)},
10372          {UINT32_C(0x000B056C), UINT32_C(0x00288DB2), UINT32_C(0x001C02CF),
10373           UINT32_C(0x000BB175), UINT32_C(0x0018F094), UINT32_C(0x0027806D),
10374           UINT32_C(0x00355563), UINT32_C(0x0054C2AD), UINT32_C(0x001CCE8E),
10375           UINT32_C(0x002E2B85), UINT32_C(0x00073F85), UINT32_C(0x006D02CB),
10376           UINT32_C(0x0033434A), UINT32_C(0x003DA80B), UINT32_C(0x001550B8),
10377           UINT32_C(0x0053A65C), UINT32_C(0x003624AD), UINT32_C(0x00078142),
10378           UINT32_C(0x0017BFE5), UINT32_C(0x002EF056), UINT32_C(0x00126C8F),
10379           UINT32_C(0x00377035), UINT32_C(0x003C5FD9)}},
10380         {{UINT32_C(0x00692F52), UINT32_C(0x002D345A), UINT32_C(0x001014B5),
10381           UINT32_C(0x004A6F1C), UINT32_C(0x00279FEB), UINT32_C(0x00057359),
10382           UINT32_C(0x0005EE89), UINT32_C(0x000B0567), UINT32_C(0x002B38D3),
10383           UINT32_C(0x00243C26), UINT32_C(0x0000FE1B), UINT32_C(0x001499CE),
10384           UINT32_C(0x00326C87), UINT32_C(0x003808D0), UINT32_C(0x0024E577),
10385           UINT32_C(0x00559968), UINT32_C(0x0014EF5F), UINT32_C(0x00091017),
10386           UINT32_C(0x000A4B95), UINT32_C(0x0079EB0D), UINT32_C(0x000498F0),
10387           UINT32_C(0x002F7F3A), UINT32_C(0x00024E38)},
10388          {UINT32_C(0x000590D7), UINT32_C(0x000C5AFF), UINT32_C(0x0021F7AF),
10389           UINT32_C(0x00667CCB), UINT32_C(0x0038AC0E), UINT32_C(0x0023A769),
10390           UINT32_C(0x003E7C3D), UINT32_C(0x0052FB04), UINT32_C(0x002DE7EC),
10391           UINT32_C(0x002F29F5), UINT32_C(0x0023207B), UINT32_C(0x000CDF9D),
10392           UINT32_C(0x002B4365), UINT32_C(0x003A2FBF), UINT32_C(0x0011FB18),
10393           UINT32_C(0x0063AFCF), UINT32_C(0x0015B1DD), UINT32_C(0x0033B40C),
10394           UINT32_C(0x00012F31), UINT32_C(0x00087C46), UINT32_C(0x00099C9E),
10395           UINT32_C(0x0016BC64), UINT32_C(0x0032AD86)}},
10396         {{UINT32_C(0x00483715), UINT32_C(0x00368333), UINT32_C(0x00246073),
10397           UINT32_C(0x005FB045), UINT32_C(0x003A117A), UINT32_C(0x002FBC81),
10398           UINT32_C(0x0009FFFF), UINT32_C(0x003826CF), UINT32_C(0x00040665),
10399           UINT32_C(0x00248D34), UINT32_C(0x0020F6F7), UINT32_C(0x0064C39E),
10400           UINT32_C(0x000DDC2A), UINT32_C(0x0027F7AD), UINT32_C(0x002A0468),
10401           UINT32_C(0x004233A3), UINT32_C(0x0039012C), UINT32_C(0x001733DF),
10402           UINT32_C(0x002EFFEF), UINT32_C(0x00799097), UINT32_C(0x001FF171),
10403           UINT32_C(0x0018ED19), UINT32_C(0x0026CCEE)},
10404          {UINT32_C(0x0046E82C), UINT32_C(0x003D6F41), UINT32_C(0x001B2A06),
10405           UINT32_C(0x001FF2C3), UINT32_C(0x003F0F50), UINT32_C(0x0001A930),
10406           UINT32_C(0x003BF063), UINT32_C(0x002EE18D), UINT32_C(0x001CCFE3),
10407           UINT32_C(0x0036F969), UINT32_C(0x00149AD4), UINT32_C(0x0016E5BE),
10408           UINT32_C(0x001F9762), UINT32_C(0x0022D061), UINT32_C(0x0012E3B7),
10409           UINT32_C(0x0003E984), UINT32_C(0x003B3250), UINT32_C(0x0038C6B2),
10410           UINT32_C(0x00159530), UINT32_C(0x0073861F), UINT32_C(0x00251136),
10411           UINT32_C(0x00123D52), UINT32_C(0x0027A418)}},
10412         {{UINT32_C(0x003F3D56), UINT32_C(0x0035580A), UINT32_C(0x00315B32),
10413           UINT32_C(0x00683B54), UINT32_C(0x002E6B1B), UINT32_C(0x0030E284),
10414           UINT32_C(0x001A147C), UINT32_C(0x0057017E), UINT32_C(0x003F1CE4),
10415           UINT32_C(0x000739F3), UINT32_C(0x000BE2D0), UINT32_C(0x00237229),
10416           UINT32_C(0x0035DB98), UINT32_C(0x00013B31), UINT32_C(0x000885D5),
10417           UINT32_C(0x00734416), UINT32_C(0x002BCB46), UINT32_C(0x0025B709),
10418           UINT32_C(0x001F5588), UINT32_C(0x007AFB72), UINT32_C(0x000A3B67),
10419           UINT32_C(0x002F51E5), UINT32_C(0x0037F6D4)},
10420          {UINT32_C(0x0058DC2B), UINT32_C(0x003BC578), UINT32_C(0x003EFB94),
10421           UINT32_C(0x007AB5C0), UINT32_C(0x0033698C), UINT32_C(0x00384E73),
10422           UINT32_C(0x0018C54E), UINT32_C(0x0006017C), UINT32_C(0x00169895),
10423           UINT32_C(0x0032C34C), UINT32_C(0x001B77D2), UINT32_C(0x00668DCD),
10424           UINT32_C(0x0029D00C), UINT32_C(0x0035521D), UINT32_C(0x000871E7),
10425           UINT32_C(0x000881E9), UINT32_C(0x003F9CC2), UINT32_C(0x00273AEA),
10426           UINT32_C(0x000AFA2B), UINT32_C(0x00519C25), UINT32_C(0x00284813),
10427           UINT32_C(0x002F3204), UINT32_C(0x003A63D7)}},
10428         {{UINT32_C(0x00024391), UINT32_C(0x003BA776), UINT32_C(0x00033874),
10429           UINT32_C(0x0034FBCF), UINT32_C(0x00303978), UINT32_C(0x00022D87),
10430           UINT32_C(0x0005FC7A), UINT32_C(0x004D7ABB), UINT32_C(0x003F68E7),
10431           UINT32_C(0x0017EC8C), UINT32_C(0x00051303), UINT32_C(0x006259DA),
10432           UINT32_C(0x0021F4E5), UINT32_C(0x00121632), UINT32_C(0x0031BBFE),
10433           UINT32_C(0x0079B8A1), UINT32_C(0x003AE333), UINT32_C(0x0006A0FC),
10434           UINT32_C(0x00055308), UINT32_C(0x00601907), UINT32_C(0x002EA623),
10435           UINT32_C(0x003B33BA), UINT32_C(0x00349F3F)},
10436          {UINT32_C(0x0001E557), UINT32_C(0x000C8304), UINT32_C(0x0002EDBE),
10437           UINT32_C(0x001EFF0A), UINT32_C(0x003B6349), UINT32_C(0x00228976),
10438           UINT32_C(0x00317095), UINT32_C(0x00482B44), UINT32_C(0x002287BF),
10439           UINT32_C(0x00244B82), UINT32_C(0x003CFA63), UINT32_C(0x001D099B),
10440           UINT32_C(0x0023EB12), UINT32_C(0x00188057), UINT32_C(0x000D5E10),
10441           UINT32_C(0x005205C6), UINT32_C(0x002A8F5F), UINT32_C(0x002AB102),
10442           UINT32_C(0x00151E7A), UINT32_C(0x0031464E), UINT32_C(0x0016ACF5),
10443           UINT32_C(0x003C570E), UINT32_C(0x003D5498)}},
10444         {{UINT32_C(0x00528A5E), UINT32_C(0x001D1A41), UINT32_C(0x001D0B03),
10445           UINT32_C(0x006E975C), UINT32_C(0x000C8044), UINT32_C(0x0026C6AB),
10446           UINT32_C(0x001E178A), UINT32_C(0x0066B411), UINT32_C(0x00047104),
10447           UINT32_C(0x00204D14), UINT32_C(0x00228536), UINT32_C(0x000D099C),
10448           UINT32_C(0x000838AB), UINT32_C(0x001BC3DC), UINT32_C(0x0029FCE8),
10449           UINT32_C(0x00029FD9), UINT32_C(0x002E687A), UINT32_C(0x003E8AE4),
10450           UINT32_C(0x002DD424), UINT32_C(0x00432788), UINT32_C(0x0008979F),
10451           UINT32_C(0x0039EDD9), UINT32_C(0x001751D6)},
10452          {UINT32_C(0x00492D65), UINT32_C(0x001A7DE1), UINT32_C(0x0014FD58),
10453           UINT32_C(0x000C2887), UINT32_C(0x00170FFC), UINT32_C(0x0002CD82),
10454           UINT32_C(0x000C7EB0), UINT32_C(0x007BC59A), UINT32_C(0x00027399),
10455           UINT32_C(0x0007595A), UINT32_C(0x0006B074), UINT32_C(0x00362BD4),
10456           UINT32_C(0x001D090F), UINT32_C(0x0005CC42), UINT32_C(0x00350E6D),
10457           UINT32_C(0x000520BA), UINT32_C(0x003511C8), UINT32_C(0x00263B84),
10458           UINT32_C(0x0012CB4B), UINT32_C(0x00395148), UINT32_C(0x001557BE),
10459           UINT32_C(0x001A47CB), UINT32_C(0x00314464)}},
10460         {{UINT32_C(0x0043F2F2), UINT32_C(0x00194797), UINT32_C(0x00164AF2),
10461           UINT32_C(0x0039D872), UINT32_C(0x000104A3), UINT32_C(0x0016929A),
10462           UINT32_C(0x00282C81), UINT32_C(0x005F9C2C), UINT32_C(0x002A5D4B),
10463           UINT32_C(0x003192B8), UINT32_C(0x002E15CB), UINT32_C(0x004F6E26),
10464           UINT32_C(0x001DBE42), UINT32_C(0x0011C09D), UINT32_C(0x0036F64F),
10465           UINT32_C(0x004483FB), UINT32_C(0x00060CCE), UINT32_C(0x003148C2),
10466           UINT32_C(0x001EE90A), UINT32_C(0x003E6042), UINT32_C(0x002E64B1),
10467           UINT32_C(0x002C44F1), UINT32_C(0x002F2B60)},
10468          {UINT32_C(0x005DC792), UINT32_C(0x00397CAD), UINT32_C(0x0018311A),
10469           UINT32_C(0x000DB83D), UINT32_C(0x003A7FE0), UINT32_C(0x0036E2B7),
10470           UINT32_C(0x00208A0B), UINT32_C(0x00725417), UINT32_C(0x00055265),
10471           UINT32_C(0x0028A5C2), UINT32_C(0x002D7738), UINT32_C(0x0008626D),
10472           UINT32_C(0x00267142), UINT32_C(0x00335A17), UINT32_C(0x003E2E6A),
10473           UINT32_C(0x0023C202), UINT32_C(0x001CEC16), UINT32_C(0x0007C3CA),
10474           UINT32_C(0x0026178F), UINT32_C(0x007AF6B1), UINT32_C(0x003EC4B0),
10475           UINT32_C(0x000A5C59), UINT32_C(0x0005CC1B)}},
10476         {{UINT32_C(0x006D6CE3), UINT32_C(0x003CDDFA), UINT32_C(0x003536DB),
10477           UINT32_C(0x003AFD9F), UINT32_C(0x00097B34), UINT32_C(0x0005ECD4),
10478           UINT32_C(0x0034AA4D), UINT32_C(0x003B05FC), UINT32_C(0x0009BBAD),
10479           UINT32_C(0x003FDCEE), UINT32_C(0x0033D997), UINT32_C(0x0003C160),
10480           UINT32_C(0x003B6D37), UINT32_C(0x00315C67), UINT32_C(0x002362F6),
10481           UINT32_C(0x001A9401), UINT32_C(0x0014E9AD), UINT32_C(0x0033DA3E),
10482           UINT32_C(0x001BCD3C), UINT32_C(0x002D9F1B), UINT32_C(0x0030DD6A),
10483           UINT32_C(0x003EC5E7), UINT32_C(0x00308176)},
10484          {UINT32_C(0x003069BB), UINT32_C(0x0021C759), UINT32_C(0x0015A982),
10485           UINT32_C(0x000433F9), UINT32_C(0x000F0415), UINT32_C(0x0019193B),
10486           UINT32_C(0x000CB74A), UINT32_C(0x00550A79), UINT32_C(0x002D6049),
10487           UINT32_C(0x00207DAA), UINT32_C(0x000496F6), UINT32_C(0x00492EB6),
10488           UINT32_C(0x003490BF), UINT32_C(0x003D7E1A), UINT32_C(0x0029D71A),
10489           UINT32_C(0x001A99C6), UINT32_C(0x003442EC), UINT32_C(0x001FE876),
10490           UINT32_C(0x00307A44), UINT32_C(0x005B4A4F), UINT32_C(0x000DC29C),
10491           UINT32_C(0x0038C4EF), UINT32_C(0x002E915D)}},
10492         {{UINT32_C(0x000BEB8C), UINT32_C(0x00061A56), UINT32_C(0x000D8268),
10493           UINT32_C(0x00421E9B), UINT32_C(0x001AD305), UINT32_C(0x002C0C54),
10494           UINT32_C(0x002B4A5F), UINT32_C(0x003DF358), UINT32_C(0x001523F3),
10495           UINT32_C(0x0028B368), UINT32_C(0x00276FD0), UINT32_C(0x00442093),
10496           UINT32_C(0x000817D3), UINT32_C(0x002AE36B), UINT32_C(0x003C22DE),
10497           UINT32_C(0x0058669C), UINT32_C(0x000D7F6C), UINT32_C(0x00279A1A),
10498           UINT32_C(0x000D107C), UINT32_C(0x0021DE92), UINT32_C(0x00246CC9),
10499           UINT32_C(0x0034B4A4), UINT32_C(0x000EFACA)},
10500          {UINT32_C(0x00694EEC), UINT32_C(0x003C5044), UINT32_C(0x0016ECB7),
10501           UINT32_C(0x00412A48), UINT32_C(0x0017E21D), UINT32_C(0x001C1E82),
10502           UINT32_C(0x002BA6CD), UINT32_C(0x001CF647), UINT32_C(0x00306F34),
10503           UINT32_C(0x00146470), UINT32_C(0x00196674), UINT32_C(0x001418A3),
10504           UINT32_C(0x002CFE68), UINT32_C(0x0026B0A5), UINT32_C(0x000747E1),
10505           UINT32_C(0x0000076E), UINT32_C(0x002C52FE), UINT32_C(0x00381158),
10506           UINT32_C(0x003CB4BD), UINT32_C(0x000E909B), UINT32_C(0x0009F542),
10507           UINT32_C(0x000CB347), UINT32_C(0x0016D579)}},
10508         {{UINT32_C(0x0069D866), UINT32_C(0x0027D233), UINT32_C(0x0035A8F4),
10509           UINT32_C(0x006BC550), UINT32_C(0x0018DA15), UINT32_C(0x0030CE9E),
10510           UINT32_C(0x0015D2E1), UINT32_C(0x005388CB), UINT32_C(0x0032AC42),
10511           UINT32_C(0x001EDFA9), UINT32_C(0x00041ADC), UINT32_C(0x000232D9),
10512           UINT32_C(0x00278158), UINT32_C(0x003B9C91), UINT32_C(0x001DD2A0),
10513           UINT32_C(0x0033F780), UINT32_C(0x003E5C50), UINT32_C(0x00075CF3),
10514           UINT32_C(0x0015E7C2), UINT32_C(0x00440ADA), UINT32_C(0x0016D15D),
10515           UINT32_C(0x000586C1), UINT32_C(0x002A016C)},
10516          {UINT32_C(0x004AE04A), UINT32_C(0x003E7BC9), UINT32_C(0x00096110),
10517           UINT32_C(0x00066932), UINT32_C(0x001B3038), UINT32_C(0x001A7311),
10518           UINT32_C(0x002F1AEF), UINT32_C(0x0068EA21), UINT32_C(0x00095E5D),
10519           UINT32_C(0x0009883B), UINT32_C(0x00033990), UINT32_C(0x0024C0B3),
10520           UINT32_C(0x0029A84D), UINT32_C(0x0005EBA4), UINT32_C(0x00311E64),
10521           UINT32_C(0x0013FEAE), UINT32_C(0x0008156B), UINT32_C(0x002F4EE6),
10522           UINT32_C(0x000DF329), UINT32_C(0x001AE70A), UINT32_C(0x002847DD),
10523           UINT32_C(0x0018E0D7), UINT32_C(0x002BD42E)}},
10524         {{UINT32_C(0x000B9710), UINT32_C(0x001F475F), UINT32_C(0x000999F5),
10525           UINT32_C(0x0032B55C), UINT32_C(0x002E7C12), UINT32_C(0x00264CED),
10526           UINT32_C(0x00094F0A), UINT32_C(0x005A4E16), UINT32_C(0x000BECA0),
10527           UINT32_C(0x00349B97), UINT32_C(0x003CE972), UINT32_C(0x002B59D3),
10528           UINT32_C(0x002F203F), UINT32_C(0x000F211F), UINT32_C(0x003B07F1),
10529           UINT32_C(0x00786C83), UINT32_C(0x0001D952), UINT32_C(0x002B793E),
10530           UINT32_C(0x0033C2B1), UINT32_C(0x005E8A36), UINT32_C(0x0036E5E2),
10531           UINT32_C(0x00156A46), UINT32_C(0x00362C8F)},
10532          {UINT32_C(0x00317544), UINT32_C(0x000AEC08), UINT32_C(0x003109AC),
10533           UINT32_C(0x004EC46A), UINT32_C(0x00214545), UINT32_C(0x00338B7B),
10534           UINT32_C(0x0016C802), UINT32_C(0x004E4271), UINT32_C(0x003A07D9),
10535           UINT32_C(0x00019D25), UINT32_C(0x00198775), UINT32_C(0x0049A8C4),
10536           UINT32_C(0x00215656), UINT32_C(0x0009570A), UINT32_C(0x0004BCC8),
10537           UINT32_C(0x006ED97E), UINT32_C(0x003721B2), UINT32_C(0x001AB6C7),
10538           UINT32_C(0x00219EDF), UINT32_C(0x004291B1), UINT32_C(0x0021788D),
10539           UINT32_C(0x003CA653), UINT32_C(0x002C51F0)}},
10540         {{UINT32_C(0x00549A73), UINT32_C(0x001585E0), UINT32_C(0x001219AF),
10541           UINT32_C(0x00278B73), UINT32_C(0x000AB916), UINT32_C(0x003FB445),
10542           UINT32_C(0x003FC327), UINT32_C(0x00487904), UINT32_C(0x0008835A),
10543           UINT32_C(0x0013EBDD), UINT32_C(0x002B6722), UINT32_C(0x005F61F3),
10544           UINT32_C(0x0033C0B6), UINT32_C(0x00387E43), UINT32_C(0x000DC4FF),
10545           UINT32_C(0x00220AA8), UINT32_C(0x002411BD), UINT32_C(0x002D9844),
10546           UINT32_C(0x003BD35D), UINT32_C(0x000878BC), UINT32_C(0x001548F6),
10547           UINT32_C(0x003F932E), UINT32_C(0x00189EAF)},
10548          {UINT32_C(0x00243BBC), UINT32_C(0x00080398), UINT32_C(0x0010A82F),
10549           UINT32_C(0x006AB89B), UINT32_C(0x00021339), UINT32_C(0x00291FC3),
10550           UINT32_C(0x00145BA0), UINT32_C(0x005378D0), UINT32_C(0x0015B299),
10551           UINT32_C(0x00057581), UINT32_C(0x002112C0), UINT32_C(0x00642C8E),
10552           UINT32_C(0x003981D5), UINT32_C(0x0020F113), UINT32_C(0x00354642),
10553           UINT32_C(0x007C7721), UINT32_C(0x000CEDDA), UINT32_C(0x00220C78),
10554           UINT32_C(0x000FA861), UINT32_C(0x004B62AA), UINT32_C(0x000C4398),
10555           UINT32_C(0x001A528A), UINT32_C(0x001FA9C0)}},
10556         {{UINT32_C(0x00213FA6), UINT32_C(0x00303120), UINT32_C(0x002AB912),
10557           UINT32_C(0x00604140), UINT32_C(0x0025C250), UINT32_C(0x003C2A6C),
10558           UINT32_C(0x00322291), UINT32_C(0x0013477E), UINT32_C(0x001F06C8),
10559           UINT32_C(0x003B3F6A), UINT32_C(0x00283A23), UINT32_C(0x0038B2D8),
10560           UINT32_C(0x0029DD45), UINT32_C(0x002EBAA8), UINT32_C(0x001B3724),
10561           UINT32_C(0x00678E35), UINT32_C(0x00096D14), UINT32_C(0x0027B787),
10562           UINT32_C(0x0007AA23), UINT32_C(0x0025F092), UINT32_C(0x002170F1),
10563           UINT32_C(0x001BC371), UINT32_C(0x003AED1A)},
10564          {UINT32_C(0x00425B32), UINT32_C(0x00286AA0), UINT32_C(0x00023581),
10565           UINT32_C(0x006EE73F), UINT32_C(0x001E5A3B), UINT32_C(0x0030D82F),
10566           UINT32_C(0x002D1CA8), UINT32_C(0x006A5FF6), UINT32_C(0x001470F9),
10567           UINT32_C(0x00161816), UINT32_C(0x002350CB), UINT32_C(0x00113D17),
10568           UINT32_C(0x003F9A5E), UINT32_C(0x003C7C27), UINT32_C(0x00276EA7),
10569           UINT32_C(0x000CC5E8), UINT32_C(0x003022F0), UINT32_C(0x00293E6C),
10570           UINT32_C(0x001948B1), UINT32_C(0x00043775), UINT32_C(0x003051DB),
10571           UINT32_C(0x003D4E8F), UINT32_C(0x0016EAD0)}},
10572     },
10573     {
10574         {{UINT32_C(0x000E7229), UINT32_C(0x001A6628), UINT32_C(0x003C1B89),
10575           UINT32_C(0x001DEF3A), UINT32_C(0x0005F8AB), UINT32_C(0x00178896),
10576           UINT32_C(0x00120D1F), UINT32_C(0x00035812), UINT32_C(0x002204C7),
10577           UINT32_C(0x0025B252), UINT32_C(0x002627D9), UINT32_C(0x00295A6A),
10578           UINT32_C(0x00064F84), UINT32_C(0x002DD46E), UINT32_C(0x0018C55B),
10579           UINT32_C(0x0076AC5A), UINT32_C(0x0024BECB), UINT32_C(0x000D610A),
10580           UINT32_C(0x003CF93D), UINT32_C(0x0025BA10), UINT32_C(0x0001D8FF),
10581           UINT32_C(0x00111DC7), UINT32_C(0x001BA971)},
10582          {UINT32_C(0x00079874), UINT32_C(0x002A9BC0), UINT32_C(0x000AE07A),
10583           UINT32_C(0x002B976D), UINT32_C(0x0037698A), UINT32_C(0x001EFD5D),
10584           UINT32_C(0x00355FBE), UINT32_C(0x000FC35F), UINT32_C(0x003A64A2),
10585           UINT32_C(0x0037BE03), UINT32_C(0x002E85B5), UINT32_C(0x001D3118),
10586           UINT32_C(0x0027921A), UINT32_C(0x000C7471), UINT32_C(0x002BCAB5),
10587           UINT32_C(0x0033AB97), UINT32_C(0x0001C915), UINT32_C(0x0019A901),
10588           UINT32_C(0x001D2E71), UINT32_C(0x002A197E), UINT32_C(0x00115A8D),
10589           UINT32_C(0x0024BF73), UINT32_C(0x0003CC85)}},
10590         {{UINT32_C(0x002895B2), UINT32_C(0x00320735), UINT32_C(0x000CFB47),
10591           UINT32_C(0x003DB761), UINT32_C(0x0024C433), UINT32_C(0x0013E23C),
10592           UINT32_C(0x002BF3DF), UINT32_C(0x0050A160), UINT32_C(0x000ED8DF),
10593           UINT32_C(0x00023DC8), UINT32_C(0x0022ADA6), UINT32_C(0x0055A62F),
10594           UINT32_C(0x00118219), UINT32_C(0x00055FC7), UINT32_C(0x0016FC9A),
10595           UINT32_C(0x0019CDAC), UINT32_C(0x001F6533), UINT32_C(0x0039DEF8),
10596           UINT32_C(0x00365EB0), UINT32_C(0x001DE6A4), UINT32_C(0x002EC097),
10597           UINT32_C(0x0014ABA8), UINT32_C(0x003B186E)},
10598          {UINT32_C(0x0076F84F), UINT32_C(0x000A6360), UINT32_C(0x00389AFC),
10599           UINT32_C(0x007F347C), UINT32_C(0x0010F3A6), UINT32_C(0x0020172F),
10600           UINT32_C(0x002456C5), UINT32_C(0x0074D6FD), UINT32_C(0x003EBC5A),
10601           UINT32_C(0x0015702D), UINT32_C(0x002C322D), UINT32_C(0x0062EC4A),
10602           UINT32_C(0x001C6321), UINT32_C(0x001ECEE0), UINT32_C(0x000C4DCD),
10603           UINT32_C(0x00385F54), UINT32_C(0x0015A2F6), UINT32_C(0x003EA398),
10604           UINT32_C(0x00154A9E), UINT32_C(0x0035549D), UINT32_C(0x002902A3),
10605           UINT32_C(0x000E87D8), UINT32_C(0x002197A4)}},
10606         {{UINT32_C(0x000E5E61), UINT32_C(0x0004D26C), UINT32_C(0x0006E668),
10607           UINT32_C(0x00001B95), UINT32_C(0x0022CEB8), UINT32_C(0x002AD340),
10608           UINT32_C(0x00178FFF), UINT32_C(0x0068E92D), UINT32_C(0x001CE560),
10609           UINT32_C(0x00314785), UINT32_C(0x003C340C), UINT32_C(0x000E0359),
10610           UINT32_C(0x0012093F), UINT32_C(0x00126D05), UINT32_C(0x0001A73F),
10611           UINT32_C(0x006AADBB), UINT32_C(0x002D01CE), UINT32_C(0x001E4C4C),
10612           UINT32_C(0x0019B1E1), UINT32_C(0x001E252E), UINT32_C(0x0027C32F),
10613           UINT32_C(0x0027F7C8), UINT32_C(0x00274554)},
10614          {UINT32_C(0x0047C011), UINT32_C(0x0016AC83), UINT32_C(0x001C5FD0),
10615           UINT32_C(0x002B42DE), UINT32_C(0x00108C9B), UINT32_C(0x003E5C82),
10616           UINT32_C(0x001F47C2), UINT32_C(0x0067643D), UINT32_C(0x00253B0C),
10617           UINT32_C(0x003B23F4), UINT32_C(0x00285E6A), UINT32_C(0x0000127F),
10618           UINT32_C(0x001AFEDD), UINT32_C(0x001639C8), UINT32_C(0x0035C65D),
10619           UINT32_C(0x003890F9), UINT32_C(0x0026D0AD), UINT32_C(0x0024695D),
10620           UINT32_C(0x0033FF31), UINT32_C(0x00166142), UINT32_C(0x0032EBDF),
10621           UINT32_C(0x000D509E), UINT32_C(0x00190DE4)}},
10622         {{UINT32_C(0x005E3F2E), UINT32_C(0x0010C08C), UINT32_C(0x0010E26F),
10623           UINT32_C(0x0025A315), UINT32_C(0x0009E64F), UINT32_C(0x00002605),
10624           UINT32_C(0x003601E3), UINT32_C(0x00634D76), UINT32_C(0x003BFCD4),
10625           UINT32_C(0x00123253), UINT32_C(0x001D94E0), UINT32_C(0x003E9F61),
10626           UINT32_C(0x0025A1E6), UINT32_C(0x00075853), UINT32_C(0x001EC114),
10627           UINT32_C(0x00470547), UINT32_C(0x003E437A), UINT32_C(0x0019ED05),
10628           UINT32_C(0x00061623), UINT32_C(0x0038D391), UINT32_C(0x0031CCDE),
10629           UINT32_C(0x003374B4), UINT32_C(0x0007C7B9)},
10630          {UINT32_C(0x00512F62), UINT32_C(0x002E17FE), UINT32_C(0x0036CB08),
10631           UINT32_C(0x001BDB9E), UINT32_C(0x00394D71), UINT32_C(0x002A7EF7),
10632           UINT32_C(0x002E6818), UINT32_C(0x005F5A88), UINT32_C(0x00311E36),
10633           UINT32_C(0x002A6BB1), UINT32_C(0x0019CD43), UINT32_C(0x0045542F),
10634           UINT32_C(0x002B8CEA), UINT32_C(0x000FA346), UINT32_C(0x002E1A7A),
10635           UINT32_C(0x000BD16F), UINT32_C(0x00245C8D), UINT32_C(0x00314F13),
10636           UINT32_C(0x000FFBE8), UINT32_C(0x0056B54A), UINT32_C(0x00382922),
10637           UINT32_C(0x0035F251), UINT32_C(0x003ACEB3)}},
10638         {{UINT32_C(0x003E11B5), UINT32_C(0x0002716B), UINT32_C(0x002750E4),
10639           UINT32_C(0x003740A5), UINT32_C(0x00338906), UINT32_C(0x0013B5F0),
10640           UINT32_C(0x0027CFAE), UINT32_C(0x004AA6D3), UINT32_C(0x0039E3B9),
10641           UINT32_C(0x002D1B9F), UINT32_C(0x000035D9), UINT32_C(0x001E459B),
10642           UINT32_C(0x000CF781), UINT32_C(0x0020167F), UINT32_C(0x001BB777),
10643           UINT32_C(0x0038BA4C), UINT32_C(0x0028F2E3), UINT32_C(0x0037D8D5),
10644           UINT32_C(0x001ECF87), UINT32_C(0x004E758A), UINT32_C(0x002AA667),
10645           UINT32_C(0x002E97A6), UINT32_C(0x00352507)},
10646          {UINT32_C(0x00283BBD), UINT32_C(0x00263775), UINT32_C(0x000C63C9),
10647           UINT32_C(0x00001EE4), UINT32_C(0x003ACBBF), UINT32_C(0x00162A58),
10648           UINT32_C(0x0007B4FE), UINT32_C(0x00351728), UINT32_C(0x001973F1),
10649           UINT32_C(0x002770E0), UINT32_C(0x003116FA), UINT32_C(0x0046EBBD),
10650           UINT32_C(0x002C2896), UINT32_C(0x0036E872), UINT32_C(0x0013137C),
10651           UINT32_C(0x002F444F), UINT32_C(0x003B3375), UINT32_C(0x0003C6AB),
10652           UINT32_C(0x000FCBE7), UINT32_C(0x006D9063), UINT32_C(0x0020E15A),
10653           UINT32_C(0x000D5454), UINT32_C(0x0037BDB0)}},
10654         {{UINT32_C(0x00439E00), UINT32_C(0x001E43D1), UINT32_C(0x003DE476),
10655           UINT32_C(0x00148953), UINT32_C(0x0025C9E8), UINT32_C(0x001B6D92),
10656           UINT32_C(0x000AA405), UINT32_C(0x0040CB85), UINT32_C(0x00310A15),
10657           UINT32_C(0x003D0034), UINT32_C(0x001ACFB7), UINT32_C(0x00171502),
10658           UINT32_C(0x0034B2C2), UINT32_C(0x0027FB5D), UINT32_C(0x003B0085),
10659           UINT32_C(0x00344898), UINT32_C(0x003CA33C), UINT32_C(0x001BAF56),
10660           UINT32_C(0x00021B32), UINT32_C(0x00448603), UINT32_C(0x00091BA6),
10661           UINT32_C(0x000BAFC4), UINT32_C(0x0013D5A4)},
10662          {UINT32_C(0x00780D50), UINT32_C(0x0004D808), UINT32_C(0x002F1F9D),
10663           UINT32_C(0x006E9B4E), UINT32_C(0x001EDD73), UINT32_C(0x000A2602),
10664           UINT32_C(0x0032564D), UINT32_C(0x000A5962), UINT32_C(0x002D65F0),
10665           UINT32_C(0x001FF6E8), UINT32_C(0x00263DE7), UINT32_C(0x0028B02D),
10666           UINT32_C(0x000E0A8D), UINT32_C(0x002AE55E), UINT32_C(0x002EAA0B),
10667           UINT32_C(0x00508B9C), UINT32_C(0x002CA2CC), UINT32_C(0x0039B8A4),
10668           UINT32_C(0x000CF2D9), UINT32_C(0x002B0C05), UINT32_C(0x0036C4C9),
10669           UINT32_C(0x00115406), UINT32_C(0x003A4458)}},
10670         {{UINT32_C(0x001A9FEF), UINT32_C(0x0017C5B8), UINT32_C(0x0014F927),
10671           UINT32_C(0x0033E7CA), UINT32_C(0x001DE04B), UINT32_C(0x0021489F),
10672           UINT32_C(0x003223E7), UINT32_C(0x007F4816), UINT32_C(0x0016233A),
10673           UINT32_C(0x000E408A), UINT32_C(0x0025911C), UINT32_C(0x006CFEEF),
10674           UINT32_C(0x00162D98), UINT32_C(0x001FB3B2), UINT32_C(0x000CAFE2),
10675           UINT32_C(0x00140C69), UINT32_C(0x00373513), UINT32_C(0x0005EFAF),
10676           UINT32_C(0x00318C8D), UINT32_C(0x001ED26D), UINT32_C(0x0023E013),
10677           UINT32_C(0x000E235E), UINT32_C(0x002D6FB0)},
10678          {UINT32_C(0x004D9693), UINT32_C(0x0018038F), UINT32_C(0x001CF661),
10679           UINT32_C(0x002F57EB), UINT32_C(0x001E346F), UINT32_C(0x0030F7B0),
10680           UINT32_C(0x001DD4F8), UINT32_C(0x002D4964), UINT32_C(0x003D7230),
10681           UINT32_C(0x000FA730), UINT32_C(0x001D142C), UINT32_C(0x002276EA),
10682           UINT32_C(0x001BA178), UINT32_C(0x001466BF), UINT32_C(0x000BF8C5),
10683           UINT32_C(0x0040D605), UINT32_C(0x002D85AB), UINT32_C(0x001F11D4),
10684           UINT32_C(0x0016C7D7), UINT32_C(0x000AA5D0), UINT32_C(0x00359550),
10685           UINT32_C(0x0029A075), UINT32_C(0x00122CA4)}},
10686         {{UINT32_C(0x0072B845), UINT32_C(0x001BEE64), UINT32_C(0x0030577D),
10687           UINT32_C(0x006BAF51), UINT32_C(0x0024885D), UINT32_C(0x002BA5B1),
10688           UINT32_C(0x00236704), UINT32_C(0x000346DC), UINT32_C(0x002A639E),
10689           UINT32_C(0x003AF226), UINT32_C(0x002EA89E), UINT32_C(0x0026AF84),
10690           UINT32_C(0x00004D4C), UINT32_C(0x0003640E), UINT32_C(0x001D8986),
10691           UINT32_C(0x000E2826), UINT32_C(0x000D1018), UINT32_C(0x002CB972),
10692           UINT32_C(0x0009688A), UINT32_C(0x000489A0), UINT32_C(0x002E4F56),
10693           UINT32_C(0x003DD33C), UINT32_C(0x003609BA)},
10694          {UINT32_C(0x001692AF), UINT32_C(0x002C1F96), UINT32_C(0x003792D8),
10695           UINT32_C(0x00069079), UINT32_C(0x0016ED4A), UINT32_C(0x003B5304),
10696           UINT32_C(0x000FA6CC), UINT32_C(0x0018593E), UINT32_C(0x0000C409),
10697           UINT32_C(0x0004E36E), UINT32_C(0x0003E4B0), UINT32_C(0x0018A207),
10698           UINT32_C(0x00146BF4), UINT32_C(0x001CBDA5), UINT32_C(0x0011B878),
10699           UINT32_C(0x0062A10E), UINT32_C(0x0002D181), UINT32_C(0x001D3599),
10700           UINT32_C(0x00185943), UINT32_C(0x00609AB4), UINT32_C(0x002218D4),
10701           UINT32_C(0x003653F8), UINT32_C(0x0019F9FD)}},
10702         {{UINT32_C(0x002ED6C7), UINT32_C(0x003C5236), UINT32_C(0x00186569),
10703           UINT32_C(0x00428772), UINT32_C(0x003A69E3), UINT32_C(0x00087BF9),
10704           UINT32_C(0x003E9E5F), UINT32_C(0x003AE8B4), UINT32_C(0x003504F3),
10705           UINT32_C(0x000A8276), UINT32_C(0x003C584F), UINT32_C(0x0069143D),
10706           UINT32_C(0x002C8325), UINT32_C(0x000FFE9F), UINT32_C(0x00191129),
10707           UINT32_C(0x00319B36), UINT32_C(0x00115E02), UINT32_C(0x0016E07A),
10708           UINT32_C(0x002FA414), UINT32_C(0x0014619E), UINT32_C(0x0012CD22),
10709           UINT32_C(0x002D0E0D), UINT32_C(0x00125784)},
10710          {UINT32_C(0x00642A65), UINT32_C(0x00203D55), UINT32_C(0x0016C315),
10711           UINT32_C(0x003CF7A9), UINT32_C(0x003071DE), UINT32_C(0x00106DAE),
10712           UINT32_C(0x000B2C7D), UINT32_C(0x0047BA31), UINT32_C(0x002CA388),
10713           UINT32_C(0x0029FBFC), UINT32_C(0x00390EAC), UINT32_C(0x0057CD61),
10714           UINT32_C(0x0021CF36), UINT32_C(0x0034A05C), UINT32_C(0x00008B13),
10715           UINT32_C(0x00793DB5), UINT32_C(0x0017E8E7), UINT32_C(0x0035D12F),
10716           UINT32_C(0x003D6716), UINT32_C(0x004C990F), UINT32_C(0x003B6448),
10717           UINT32_C(0x000A7F2C), UINT32_C(0x0025B5C5)}},
10718         {{UINT32_C(0x005E98D9), UINT32_C(0x0026DFA6), UINT32_C(0x000864C2),
10719           UINT32_C(0x002E69DF), UINT32_C(0x00364C2C), UINT32_C(0x000D5FD3),
10720           UINT32_C(0x001356CE), UINT32_C(0x00454A4C), UINT32_C(0x003B0302),
10721           UINT32_C(0x0016D23C), UINT32_C(0x000B4AAA), UINT32_C(0x0057F380),
10722           UINT32_C(0x0007CFAC), UINT32_C(0x0027103B), UINT32_C(0x000CAA2B),
10723           UINT32_C(0x005B3BDE), UINT32_C(0x000D252E), UINT32_C(0x002FC387),
10724           UINT32_C(0x001B39E0), UINT32_C(0x003C0113), UINT32_C(0x0009ADA1),
10725           UINT32_C(0x002D5182), UINT32_C(0x00029B37)},
10726          {UINT32_C(0x003B5C86), UINT32_C(0x002985B6), UINT32_C(0x00193F46),
10727           UINT32_C(0x007D3FF4), UINT32_C(0x0017EA07), UINT32_C(0x003167A4),
10728           UINT32_C(0x0028ECD5), UINT32_C(0x00102560), UINT32_C(0x0014D8CD),
10729           UINT32_C(0x0009D70A), UINT32_C(0x0036C65B), UINT32_C(0x0077810C),
10730           UINT32_C(0x0038B843), UINT32_C(0x000AAA4F), UINT32_C(0x000423CC),
10731           UINT32_C(0x00609B5A), UINT32_C(0x000B047D), UINT32_C(0x0032FCF2),
10732           UINT32_C(0x00341089), UINT32_C(0x002F82CA), UINT32_C(0x0012D7A7),
10733           UINT32_C(0x002D3F89), UINT32_C(0x00189DD5)}},
10734         {{UINT32_C(0x0066582F), UINT32_C(0x00257453), UINT32_C(0x00210314),
10735           UINT32_C(0x0062A225), UINT32_C(0x00165C3B), UINT32_C(0x002E6592),
10736           UINT32_C(0x002F1436), UINT32_C(0x005EE3F8), UINT32_C(0x0007F555),
10737           UINT32_C(0x0020F441), UINT32_C(0x0034ED55), UINT32_C(0x00308313),
10738           UINT32_C(0x0034A8DF), UINT32_C(0x0019301D), UINT32_C(0x00173FDB),
10739           UINT32_C(0x00144214), UINT32_C(0x0019892A), UINT32_C(0x0027897A),
10740           UINT32_C(0x0021A061), UINT32_C(0x007D24B8), UINT32_C(0x0037F3B1),
10741           UINT32_C(0x00248CC2), UINT32_C(0x00373DB3)},
10742          {UINT32_C(0x000BF27A), UINT32_C(0x0039D46B), UINT32_C(0x001AD6FE),
10743           UINT32_C(0x00475AC8), UINT32_C(0x00063B06), UINT32_C(0x00233FD2),
10744           UINT32_C(0x0035C0AF), UINT32_C(0x006C6594), UINT32_C(0x002F3CD2),
10745           UINT32_C(0x0015DF1B), UINT32_C(0x002DF565), UINT32_C(0x0022D72E),
10746           UINT32_C(0x0004B112), UINT32_C(0x00022C9B), UINT32_C(0x00217D30),
10747           UINT32_C(0x00586404), UINT32_C(0x00175C8A), UINT32_C(0x003CD70E),
10748           UINT32_C(0x003F9D96), UINT32_C(0x007351B7), UINT32_C(0x00328F89),
10749           UINT32_C(0x00339645), UINT32_C(0x00147D37)}},
10750         {{UINT32_C(0x0006ACC7), UINT32_C(0x0017F7BC), UINT32_C(0x00043BCE),
10751           UINT32_C(0x00259C1D), UINT32_C(0x002CDB37), UINT32_C(0x0007238C),
10752           UINT32_C(0x00375E6F), UINT32_C(0x00022971), UINT32_C(0x001B4942),
10753           UINT32_C(0x003E301A), UINT32_C(0x00389E0C), UINT32_C(0x0014070B),
10754           UINT32_C(0x0029DEFC), UINT32_C(0x002DDAC4), UINT32_C(0x00236616),
10755           UINT32_C(0x0000A23A), UINT32_C(0x003BA71B), UINT32_C(0x00230957),
10756           UINT32_C(0x002229EB), UINT32_C(0x0073C8F9), UINT32_C(0x0025DF6A),
10757           UINT32_C(0x002BADCB), UINT32_C(0x000F1344)},
10758          {UINT32_C(0x001BEE3F), UINT32_C(0x001FA015), UINT32_C(0x000CFE6E),
10759           UINT32_C(0x006FB0F7), UINT32_C(0x003C54F5), UINT32_C(0x003503D8),
10760           UINT32_C(0x000B28FC), UINT32_C(0x0001F5C0), UINT32_C(0x00104298),
10761           UINT32_C(0x003AF43A), UINT32_C(0x003A5408), UINT32_C(0x0018DAC0),
10762           UINT32_C(0x0032EE35), UINT32_C(0x0031C65F), UINT32_C(0x000B31F5),
10763           UINT32_C(0x0018B829), UINT32_C(0x000133FD), UINT32_C(0x00280CF1),
10764           UINT32_C(0x00206DF2), UINT32_C(0x0009D76F), UINT32_C(0x001DC987),
10765           UINT32_C(0x00365635), UINT32_C(0x0014E280)}},
10766         {{UINT32_C(0x0052A016), UINT32_C(0x0006F577), UINT32_C(0x001C0241),
10767           UINT32_C(0x005E5024), UINT32_C(0x000DA944), UINT32_C(0x000855A1),
10768           UINT32_C(0x002A89F3), UINT32_C(0x000E86B5), UINT32_C(0x000CEF59),
10769           UINT32_C(0x003E508E), UINT32_C(0x00384B7E), UINT32_C(0x0032AAA5),
10770           UINT32_C(0x0018FF8F), UINT32_C(0x002CD18E), UINT32_C(0x00040821),
10771           UINT32_C(0x00189644), UINT32_C(0x002DEB40), UINT32_C(0x00132C27),
10772           UINT32_C(0x000B3030), UINT32_C(0x0054A603), UINT32_C(0x0006BBED),
10773           UINT32_C(0x0031D103), UINT32_C(0x002F003F)},
10774          {UINT32_C(0x001E656D), UINT32_C(0x002FF583), UINT32_C(0x0012A61F),
10775           UINT32_C(0x00346DBE), UINT32_C(0x002A6FB1), UINT32_C(0x0011FD3B),
10776           UINT32_C(0x0001276C), UINT32_C(0x006148C0), UINT32_C(0x00016501),
10777           UINT32_C(0x000C96D4), UINT32_C(0x003DB630), UINT32_C(0x00492C8D),
10778           UINT32_C(0x00057FDE), UINT32_C(0x000CF96C), UINT32_C(0x000164CA),
10779           UINT32_C(0x004FCB96), UINT32_C(0x00385504), UINT32_C(0x003E5188),
10780           UINT32_C(0x00286382), UINT32_C(0x0041E093), UINT32_C(0x0002DAB5),
10781           UINT32_C(0x0010BB0F), UINT32_C(0x0000784C)}},
10782         {{UINT32_C(0x0075746D), UINT32_C(0x003F9D7D), UINT32_C(0x002D54D0),
10783           UINT32_C(0x000CA2BA), UINT32_C(0x0034E004), UINT32_C(0x00145EDC),
10784           UINT32_C(0x0024946A), UINT32_C(0x002B2267), UINT32_C(0x0029D5D7),
10785           UINT32_C(0x001BD561), UINT32_C(0x00040FF1), UINT32_C(0x007A8818),
10786           UINT32_C(0x000347CA), UINT32_C(0x00368968), UINT32_C(0x003DFBFD),
10787           UINT32_C(0x0045E779), UINT32_C(0x0028CB15), UINT32_C(0x0006FE47),
10788           UINT32_C(0x002AE3AD), UINT32_C(0x000C1917), UINT32_C(0x001A6E74),
10789           UINT32_C(0x000C0AAF), UINT32_C(0x001EAD78)},
10790          {UINT32_C(0x0013957A), UINT32_C(0x000B13A3), UINT32_C(0x002FC29D),
10791           UINT32_C(0x00318258), UINT32_C(0x000316AF), UINT32_C(0x00159186),
10792           UINT32_C(0x002F9ACE), UINT32_C(0x002617A1), UINT32_C(0x002DA110),
10793           UINT32_C(0x0024827F), UINT32_C(0x0014B7E3), UINT32_C(0x005A1108),
10794           UINT32_C(0x002AD5AB), UINT32_C(0x001F8CD8), UINT32_C(0x00280CBB),
10795           UINT32_C(0x000F3352), UINT32_C(0x0021699D), UINT32_C(0x003D79ED),
10796           UINT32_C(0x000F2342), UINT32_C(0x000A46DF), UINT32_C(0x000765C5),
10797           UINT32_C(0x001562AA), UINT32_C(0x001933BE)}},
10798         {{UINT32_C(0x00771DC4), UINT32_C(0x00105963), UINT32_C(0x0013309E),
10799           UINT32_C(0x002D5F9C), UINT32_C(0x003816E4), UINT32_C(0x00183FD1),
10800           UINT32_C(0x0024CC65), UINT32_C(0x004C32C8), UINT32_C(0x00023344),
10801           UINT32_C(0x00127581), UINT32_C(0x00170A08), UINT32_C(0x003E271B),
10802           UINT32_C(0x00376C4A), UINT32_C(0x00378FA8), UINT32_C(0x0038BD67),
10803           UINT32_C(0x006DD9F1), UINT32_C(0x0013CB77), UINT32_C(0x00110A9A),
10804           UINT32_C(0x0011B015), UINT32_C(0x003AB2F7), UINT32_C(0x00203C14),
10805           UINT32_C(0x0037D1D9), UINT32_C(0x0017F513)},
10806          {UINT32_C(0x00383DC1), UINT32_C(0x0032B2DC), UINT32_C(0x003F0168),
10807           UINT32_C(0x00279081), UINT32_C(0x001E4F82), UINT32_C(0x00183A42),
10808           UINT32_C(0x000BFB80), UINT32_C(0x005A12C9), UINT32_C(0x00186FCD),
10809           UINT32_C(0x002E7365), UINT32_C(0x0026CDDE), UINT32_C(0x007856A6),
10810           UINT32_C(0x00241080), UINT32_C(0x000BB921), UINT32_C(0x003E1A85),
10811           UINT32_C(0x0062D604), UINT32_C(0x000BB5D8), UINT32_C(0x0026B482),
10812           UINT32_C(0x0019F5D5), UINT32_C(0x0028F3DC), UINT32_C(0x00143FEB),
10813           UINT32_C(0x003E5ADA), UINT32_C(0x00253DEF)}},
10814         {{UINT32_C(0x006BA123), UINT32_C(0x000A781D), UINT32_C(0x000B7D51),
10815           UINT32_C(0x00740F38), UINT32_C(0x002940F6), UINT32_C(0x00157C6F),
10816           UINT32_C(0x003E02CE), UINT32_C(0x007207C6), UINT32_C(0x001B64BC),
10817           UINT32_C(0x00372F37), UINT32_C(0x003A87CB), UINT32_C(0x002D7712),
10818           UINT32_C(0x001B97D4), UINT32_C(0x00391CB2), UINT32_C(0x003AB655),
10819           UINT32_C(0x00002E6F), UINT32_C(0x002C7D2F), UINT32_C(0x002AA52F),
10820           UINT32_C(0x0032378F), UINT32_C(0x0072D63D), UINT32_C(0x0038FA33),
10821           UINT32_C(0x003C9DB3), UINT32_C(0x0008013D)},
10822          {UINT32_C(0x0002066C), UINT32_C(0x0035DFEF), UINT32_C(0x001BC43F),
10823           UINT32_C(0x0029FB46), UINT32_C(0x0013F28B), UINT32_C(0x002A9E1C),
10824           UINT32_C(0x00316CE9), UINT32_C(0x002537F0), UINT32_C(0x002F07AC),
10825           UINT32_C(0x0037B3FA), UINT32_C(0x000BB76B), UINT32_C(0x0049349E),
10826           UINT32_C(0x00330713), UINT32_C(0x002755E1), UINT32_C(0x002928A9),
10827           UINT32_C(0x00636D8A), UINT32_C(0x0036549D), UINT32_C(0x00119414),
10828           UINT32_C(0x002CF725), UINT32_C(0x0037181E), UINT32_C(0x0001A2BC),
10829           UINT32_C(0x0019DA46), UINT32_C(0x003B690A)}},
10830     },
10831     {
10832         {{UINT32_C(0x0032A280), UINT32_C(0x001CB2CC), UINT32_C(0x000F9796),
10833           UINT32_C(0x00007D75), UINT32_C(0x001AF2EB), UINT32_C(0x003C758A),
10834           UINT32_C(0x003A6728), UINT32_C(0x0043B3E9), UINT32_C(0x00188CE5),
10835           UINT32_C(0x0029D0A4), UINT32_C(0x000113A0), UINT32_C(0x0022343F),
10836           UINT32_C(0x000890D8), UINT32_C(0x0012176A), UINT32_C(0x002971B0),
10837           UINT32_C(0x00785A55), UINT32_C(0x0001C0B7), UINT32_C(0x00273262),
10838           UINT32_C(0x002D06D6), UINT32_C(0x0006C271), UINT32_C(0x001E07EA),
10839           UINT32_C(0x003A1542), UINT32_C(0x0026C181)},
10840          {UINT32_C(0x00414498), UINT32_C(0x0014CB47), UINT32_C(0x000FFCA6),
10841           UINT32_C(0x002D51CC), UINT32_C(0x000008D4), UINT32_C(0x00244EA0),
10842           UINT32_C(0x002F062C), UINT32_C(0x000336A8), UINT32_C(0x00150722),
10843           UINT32_C(0x0019F588), UINT32_C(0x000CB860), UINT32_C(0x00604BC3),
10844           UINT32_C(0x0008902B), UINT32_C(0x003D5ADC), UINT32_C(0x00088D53),
10845           UINT32_C(0x000A2728), UINT32_C(0x003852C8), UINT32_C(0x001CE562),
10846           UINT32_C(0x003D7474), UINT32_C(0x000E17F9), UINT32_C(0x000ADBDE),
10847           UINT32_C(0x0002F321), UINT32_C(0x002B5370)}},
10848         {{UINT32_C(0x00720956), UINT32_C(0x0012FE7D), UINT32_C(0x003A4010),
10849           UINT32_C(0x0005E1F1), UINT32_C(0x002FCF68), UINT32_C(0x0001CA0D),
10850           UINT32_C(0x001F9A09), UINT32_C(0x00476576), UINT32_C(0x001BBE6F),
10851           UINT32_C(0x00157A43), UINT32_C(0x00041B45), UINT32_C(0x0069B21A),
10852           UINT32_C(0x0011A874), UINT32_C(0x00237329), UINT32_C(0x0010ABF2),
10853           UINT32_C(0x004A1BCF), UINT32_C(0x00248B43), UINT32_C(0x0039B567),
10854           UINT32_C(0x00162490), UINT32_C(0x002F2BDB), UINT32_C(0x00296C0C),
10855           UINT32_C(0x000A4FEE), UINT32_C(0x0004AD98)},
10856          {UINT32_C(0x004454EB), UINT32_C(0x002C8099), UINT32_C(0x0010E84D),
10857           UINT32_C(0x002E2241), UINT32_C(0x003207CA), UINT32_C(0x000F5910),
10858           UINT32_C(0x0003F04F), UINT32_C(0x00392613), UINT32_C(0x000ADE9F),
10859           UINT32_C(0x003DBD57), UINT32_C(0x0030B86D), UINT32_C(0x0009CC16),
10860           UINT32_C(0x000A209A), UINT32_C(0x003C2AFA), UINT32_C(0x00035E76),
10861           UINT32_C(0x005F940A), UINT32_C(0x002B2161), UINT32_C(0x000C7D9D),
10862           UINT32_C(0x00363B77), UINT32_C(0x0077A201), UINT32_C(0x00399B44),
10863           UINT32_C(0x0008E94D), UINT32_C(0x00008286)}},
10864         {{UINT32_C(0x002B92BC), UINT32_C(0x0006153E), UINT32_C(0x0000F8C6),
10865           UINT32_C(0x005F1B6C), UINT32_C(0x0003BA49), UINT32_C(0x001A925E),
10866           UINT32_C(0x000F9BBA), UINT32_C(0x00055F92), UINT32_C(0x002FBD92),
10867           UINT32_C(0x002177A5), UINT32_C(0x003FB8F5), UINT32_C(0x005D4BF2),
10868           UINT32_C(0x002146D4), UINT32_C(0x0036976B), UINT32_C(0x0022B1BA),
10869           UINT32_C(0x0032F949), UINT32_C(0x000965FD), UINT32_C(0x001E9F3E),
10870           UINT32_C(0x002DA23B), UINT32_C(0x00107070), UINT32_C(0x00398A1E),
10871           UINT32_C(0x00069BFE), UINT32_C(0x002FDDC0)},
10872          {UINT32_C(0x0072B741), UINT32_C(0x003D395C), UINT32_C(0x003A9B25),
10873           UINT32_C(0x00294646), UINT32_C(0x00021148), UINT32_C(0x0015DA45),
10874           UINT32_C(0x00113C40), UINT32_C(0x00419E05), UINT32_C(0x003F3B62),
10875           UINT32_C(0x001F8475), UINT32_C(0x0006EE22), UINT32_C(0x0066BC79),
10876           UINT32_C(0x0008B7CC), UINT32_C(0x00023931), UINT32_C(0x00167FA8),
10877           UINT32_C(0x003BD93E), UINT32_C(0x0039EE3D), UINT32_C(0x001DFEEA),
10878           UINT32_C(0x001FDCFE), UINT32_C(0x00613DB2), UINT32_C(0x00160B1F),
10879           UINT32_C(0x001970FE), UINT32_C(0x0023B0DD)}},
10880         {{UINT32_C(0x0023C1BA), UINT32_C(0x002E5121), UINT32_C(0x002C52E9),
10881           UINT32_C(0x007811E3), UINT32_C(0x0001A384), UINT32_C(0x002EABE1),
10882           UINT32_C(0x0024FBC8), UINT32_C(0x0045D98F), UINT32_C(0x001C8207),
10883           UINT32_C(0x0033DA7A), UINT32_C(0x0030B201), UINT32_C(0x0023DFB3),
10884           UINT32_C(0x0014CD7A), UINT32_C(0x000B9A13), UINT32_C(0x0029ED72),
10885           UINT32_C(0x003FDD61), UINT32_C(0x002FAEDB), UINT32_C(0x0016FDA9),
10886           UINT32_C(0x0006A7E0), UINT32_C(0x003CCE59), UINT32_C(0x00059683),
10887           UINT32_C(0x0034B4B3), UINT32_C(0x00344F10)},
10888          {UINT32_C(0x0064F192), UINT32_C(0x00121A7B), UINT32_C(0x001023D3),
10889           UINT32_C(0x004802FA), UINT32_C(0x000C0C74), UINT32_C(0x003436B0),
10890           UINT32_C(0x0028F327), UINT32_C(0x00104D43), UINT32_C(0x000B6D47),
10891           UINT32_C(0x003D9F11), UINT32_C(0x0038A86E), UINT32_C(0x0024B31C),
10892           UINT32_C(0x000D71F6), UINT32_C(0x0001075B), UINT32_C(0x00131E0B),
10893           UINT32_C(0x006451D8), UINT32_C(0x0023646D), UINT32_C(0x00185996),
10894           UINT32_C(0x00143B48), UINT32_C(0x0076F1C1), UINT32_C(0x000E8DA3),
10895           UINT32_C(0x002EB768), UINT32_C(0x003FBF6F)}},
10896         {{UINT32_C(0x004D2204), UINT32_C(0x002A5EA9), UINT32_C(0x00019369),
10897           UINT32_C(0x0070CD74), UINT32_C(0x001A76B1), UINT32_C(0x003815C4),
10898           UINT32_C(0x002E68F7), UINT32_C(0x005398A8), UINT32_C(0x0020AB8F),
10899           UINT32_C(0x00185D53), UINT32_C(0x00168C1D), UINT32_C(0x00274E1A),
10900           UINT32_C(0x000524F2), UINT32_C(0x003D9B1A), UINT32_C(0x0012E5AB),
10901           UINT32_C(0x004C1050), UINT32_C(0x0032ABC0), UINT32_C(0x0025971D),
10902           UINT32_C(0x003AC08F), UINT32_C(0x002F1AFC), UINT32_C(0x001407B9),
10903           UINT32_C(0x00277B2E), UINT32_C(0x001B1F71)},
10904          {UINT32_C(0x000D2E98), UINT32_C(0x0030B33B), UINT32_C(0x003037E7),
10905           UINT32_C(0x00425F13), UINT32_C(0x002EBDC3), UINT32_C(0x001D9BE6),
10906           UINT32_C(0x00111CD4), UINT32_C(0x007D7418), UINT32_C(0x001F1C08),
10907           UINT32_C(0x0027B843), UINT32_C(0x002D41E6), UINT32_C(0x004D0FDD),
10908           UINT32_C(0x00162312), UINT32_C(0x000A0EB8), UINT32_C(0x0004819A),
10909           UINT32_C(0x001E097B), UINT32_C(0x0000A336), UINT32_C(0x000C49B4),
10910           UINT32_C(0x001F6549), UINT32_C(0x0065532D), UINT32_C(0x00175C84),
10911           UINT32_C(0x0008B3CF), UINT32_C(0x001D68D8)}},
10912         {{UINT32_C(0x007E2EF2), UINT32_C(0x000CB9A8), UINT32_C(0x000968E6),
10913           UINT32_C(0x00367210), UINT32_C(0x00079EA4), UINT32_C(0x00115BCE),
10914           UINT32_C(0x002F228C), UINT32_C(0x007BE5BF), UINT32_C(0x003C8A27),
10915           UINT32_C(0x000C8607), UINT32_C(0x00319827), UINT32_C(0x006BF356),
10916           UINT32_C(0x00222BCA), UINT32_C(0x002D52EC), UINT32_C(0x001634C9),
10917           UINT32_C(0x00422BB5), UINT32_C(0x0020B569), UINT32_C(0x002745C9),
10918           UINT32_C(0x002547E2), UINT32_C(0x00692CC6), UINT32_C(0x00366369),
10919           UINT32_C(0x000C2F45), UINT32_C(0x002DCB38)},
10920          {UINT32_C(0x00432E57), UINT32_C(0x003BCE51), UINT32_C(0x002F50A1),
10921           UINT32_C(0x00010E21), UINT32_C(0x000B5704), UINT32_C(0x003603EC),
10922           UINT32_C(0x003DC6B0), UINT32_C(0x001D3C66), UINT32_C(0x003E876A),
10923           UINT32_C(0x001D2475), UINT32_C(0x003D0CFE), UINT32_C(0x00752FD6),
10924           UINT32_C(0x001389EE), UINT32_C(0x002682A3), UINT32_C(0x00006DE0),
10925           UINT32_C(0x00466661), UINT32_C(0x0025CA0B), UINT32_C(0x003A47DE),
10926           UINT32_C(0x001DBDDD), UINT32_C(0x00584C8D), UINT32_C(0x00097729),
10927           UINT32_C(0x003A3D36), UINT32_C(0x0026D79A)}},
10928         {{UINT32_C(0x0046DC32), UINT32_C(0x0039E30E), UINT32_C(0x001A553F),
10929           UINT32_C(0x00631635), UINT32_C(0x00137523), UINT32_C(0x0011F122),
10930           UINT32_C(0x0002887F), UINT32_C(0x0039C6A2), UINT32_C(0x003D3F52),
10931           UINT32_C(0x000E5C16), UINT32_C(0x001B4338), UINT32_C(0x001104AD),
10932           UINT32_C(0x0026AD2E), UINT32_C(0x000C1BE9), UINT32_C(0x000082A2),
10933           UINT32_C(0x0036D7B0), UINT32_C(0x003E62E1), UINT32_C(0x002AC82D),
10934           UINT32_C(0x00354EEE), UINT32_C(0x001B7162), UINT32_C(0x002F1507),
10935           UINT32_C(0x00064946), UINT32_C(0x002B777F)},
10936          {UINT32_C(0x00755CF4), UINT32_C(0x002F3F9D), UINT32_C(0x0027FBE0),
10937           UINT32_C(0x00250D1C), UINT32_C(0x003AD66C), UINT32_C(0x00220A36),
10938           UINT32_C(0x00324DD9), UINT32_C(0x000FD4E3), UINT32_C(0x002FB653),
10939           UINT32_C(0x001407E0), UINT32_C(0x0007BD23), UINT32_C(0x001BCA1B),
10940           UINT32_C(0x0023529D), UINT32_C(0x000512E2), UINT32_C(0x00322089),
10941           UINT32_C(0x0052FB0B), UINT32_C(0x00159218), UINT32_C(0x000A2629),
10942           UINT32_C(0x001ECC37), UINT32_C(0x000D691D), UINT32_C(0x001CDC35),
10943           UINT32_C(0x0025DECE), UINT32_C(0x0008B229)}},
10944         {{UINT32_C(0x00042A2E), UINT32_C(0x0002BECD), UINT32_C(0x000CE644),
10945           UINT32_C(0x007EB2C8), UINT32_C(0x000CDB86), UINT32_C(0x0038243C),
10946           UINT32_C(0x0013980F), UINT32_C(0x007DB14B), UINT32_C(0x003AF52F),
10947           UINT32_C(0x0034D34E), UINT32_C(0x00328903), UINT32_C(0x0012E910),
10948           UINT32_C(0x002F165C), UINT32_C(0x001F951B), UINT32_C(0x003DCC69),
10949           UINT32_C(0x006A2790), UINT32_C(0x001419B1), UINT32_C(0x003CD6D6),
10950           UINT32_C(0x000A88DC), UINT32_C(0x0065E513), UINT32_C(0x00038EAB),
10951           UINT32_C(0x000DA64E), UINT32_C(0x001E4802)},
10952          {UINT32_C(0x00411E28), UINT32_C(0x0038A31B), UINT32_C(0x000EA13F),
10953           UINT32_C(0x00692375), UINT32_C(0x003972E4), UINT32_C(0x003C7618),
10954           UINT32_C(0x0030675C), UINT32_C(0x000471A7), UINT32_C(0x001EAA31),
10955           UINT32_C(0x000332B8), UINT32_C(0x000BA219), UINT32_C(0x005949F6),
10956           UINT32_C(0x000721E9), UINT32_C(0x000B0539), UINT32_C(0x00351BFD),
10957           UINT32_C(0x006AF8C8), UINT32_C(0x001749B7), UINT32_C(0x001B4221),
10958           UINT32_C(0x00346E9F), UINT32_C(0x001D138C), UINT32_C(0x00315C0E),
10959           UINT32_C(0x003AE1BD), UINT32_C(0x001E5845)}},
10960         {{UINT32_C(0x0073DD11), UINT32_C(0x0038D066), UINT32_C(0x003B6E1E),
10961           UINT32_C(0x0058D879), UINT32_C(0x003FC188), UINT32_C(0x0026EA01),
10962           UINT32_C(0x003A5E72), UINT32_C(0x003EAE27), UINT32_C(0x0017EC7B),
10963           UINT32_C(0x0021435A), UINT32_C(0x0030A0EF), UINT32_C(0x00226F77),
10964           UINT32_C(0x00319511), UINT32_C(0x000EECC9), UINT32_C(0x00184FB1),
10965           UINT32_C(0x00485367), UINT32_C(0x0012DBCE), UINT32_C(0x00296D94),
10966           UINT32_C(0x001ECEF1), UINT32_C(0x0048A6EF), UINT32_C(0x000C1378),
10967           UINT32_C(0x000486F3), UINT32_C(0x00294CB6)},
10968          {UINT32_C(0x00659E15), UINT32_C(0x0021AFE5), UINT32_C(0x00035B7D),
10969           UINT32_C(0x0014905A), UINT32_C(0x00190940), UINT32_C(0x0028A11C),
10970           UINT32_C(0x003C2EC5), UINT32_C(0x0061D9FF), UINT32_C(0x003C91F9),
10971           UINT32_C(0x000C24F9), UINT32_C(0x0021D20C), UINT32_C(0x0069147F),
10972           UINT32_C(0x002C2485), UINT32_C(0x001F02A6), UINT32_C(0x001E436B),
10973           UINT32_C(0x0070B5EC), UINT32_C(0x003C8887), UINT32_C(0x000479C4),
10974           UINT32_C(0x00329212), UINT32_C(0x00023848), UINT32_C(0x000FD9D8),
10975           UINT32_C(0x001CA129), UINT32_C(0x002842CB)}},
10976         {{UINT32_C(0x007B92F5), UINT32_C(0x0037A067), UINT32_C(0x000074AF),
10977           UINT32_C(0x005B2F28), UINT32_C(0x000CBF5F), UINT32_C(0x00077719),
10978           UINT32_C(0x0015F2E0), UINT32_C(0x0016A3E7), UINT32_C(0x001CEB10),
10979           UINT32_C(0x0022F6C6), UINT32_C(0x003D1FA9), UINT32_C(0x004CD931),
10980           UINT32_C(0x001D7522), UINT32_C(0x001781A9), UINT32_C(0x003443CE),
10981           UINT32_C(0x006FA88B), UINT32_C(0x001564BA), UINT32_C(0x00110D1F),
10982           UINT32_C(0x0012896B), UINT32_C(0x000B6064), UINT32_C(0x00253009),
10983           UINT32_C(0x0007C604), UINT32_C(0x003E79C8)},
10984          {UINT32_C(0x0022EAC3), UINT32_C(0x001D3CBB), UINT32_C(0x001660EB),
10985           UINT32_C(0x00530D25), UINT32_C(0x001DDD46), UINT32_C(0x0038675B),
10986           UINT32_C(0x00270FCB), UINT32_C(0x0070D781), UINT32_C(0x0036DB98),
10987           UINT32_C(0x0010E11B), UINT32_C(0x0019CA07), UINT32_C(0x004B0308),
10988           UINT32_C(0x003E92E0), UINT32_C(0x00039F79), UINT32_C(0x002FAD1D),
10989           UINT32_C(0x0017B8FE), UINT32_C(0x001C8122), UINT32_C(0x0013FAE1),
10990           UINT32_C(0x00095301), UINT32_C(0x003B1103), UINT32_C(0x00031A89),
10991           UINT32_C(0x001447C4), UINT32_C(0x0009D34F)}},
10992         {{UINT32_C(0x007C8A6B), UINT32_C(0x002A2FE8), UINT32_C(0x0035E593),
10993           UINT32_C(0x004E1D4D), UINT32_C(0x0015A0B8), UINT32_C(0x0020842D),
10994           UINT32_C(0x0018D50D), UINT32_C(0x001081D4), UINT32_C(0x00126A85),
10995           UINT32_C(0x0005E191), UINT32_C(0x001BEF59), UINT32_C(0x005AA8B6),
10996           UINT32_C(0x003A3A60), UINT32_C(0x000ABF90), UINT32_C(0x0006196E),
10997           UINT32_C(0x00150E95), UINT32_C(0x000CB2DC), UINT32_C(0x000DDCD3),
10998           UINT32_C(0x003E2A72), UINT32_C(0x00582EAB), UINT32_C(0x0035F095),
10999           UINT32_C(0x0010E8B9), UINT32_C(0x002F9603)},
11000          {UINT32_C(0x00381ED7), UINT32_C(0x000655D9), UINT32_C(0x00270A8E),
11001           UINT32_C(0x00048245), UINT32_C(0x00309CD3), UINT32_C(0x0017ED44),
11002           UINT32_C(0x001D450E), UINT32_C(0x000312BA), UINT32_C(0x0005985D),
11003           UINT32_C(0x00358C0C), UINT32_C(0x002A7087), UINT32_C(0x0072F6C5),
11004           UINT32_C(0x00198D4B), UINT32_C(0x00266DA7), UINT32_C(0x0030D13D),
11005           UINT32_C(0x00164FAF), UINT32_C(0x001B3D2A), UINT32_C(0x00054328),
11006           UINT32_C(0x00297C8D), UINT32_C(0x0024974D), UINT32_C(0x000C4C24),
11007           UINT32_C(0x00233778), UINT32_C(0x000A3C4F)}},
11008         {{UINT32_C(0x0019EECE), UINT32_C(0x00162127), UINT32_C(0x001040AF),
11009           UINT32_C(0x001C475E), UINT32_C(0x00239506), UINT32_C(0x0009AF50),
11010           UINT32_C(0x001C9807), UINT32_C(0x003FA8CC), UINT32_C(0x003128F6),
11011           UINT32_C(0x00045734), UINT32_C(0x001442AC), UINT32_C(0x0047E27E),
11012           UINT32_C(0x003215CF), UINT32_C(0x00140684), UINT32_C(0x0023566D),
11013           UINT32_C(0x0062EA4E), UINT32_C(0x0026B67A), UINT32_C(0x00295AF8),
11014           UINT32_C(0x0006E548), UINT32_C(0x0040F0F6), UINT32_C(0x003FA25A),
11015           UINT32_C(0x003841B6), UINT32_C(0x0034374F)},
11016          {UINT32_C(0x0011DBC4), UINT32_C(0x001EE6DB), UINT32_C(0x00351C56),
11017           UINT32_C(0x003D4083), UINT32_C(0x001009D6), UINT32_C(0x003E9349),
11018           UINT32_C(0x00010A11), UINT32_C(0x00382D27), UINT32_C(0x003D7132),
11019           UINT32_C(0x001999FC), UINT32_C(0x003911D4), UINT32_C(0x0045D805),
11020           UINT32_C(0x0001B235), UINT32_C(0x00258644), UINT32_C(0x001B1DA8),
11021           UINT32_C(0x007D367D), UINT32_C(0x002106B2), UINT32_C(0x00096B2D),
11022           UINT32_C(0x001A078D), UINT32_C(0x007CE535), UINT32_C(0x003C6BB8),
11023           UINT32_C(0x0021FC86), UINT32_C(0x00388E7F)}},
11024         {{UINT32_C(0x003C849A), UINT32_C(0x00339DA9), UINT32_C(0x0001B56C),
11025           UINT32_C(0x0018B48F), UINT32_C(0x0036B241), UINT32_C(0x001C3E99),
11026           UINT32_C(0x001DC79F), UINT32_C(0x006E4794), UINT32_C(0x0014AD70),
11027           UINT32_C(0x0020AF6F), UINT32_C(0x00286589), UINT32_C(0x0000AA9B),
11028           UINT32_C(0x00287B90), UINT32_C(0x0036D3BA), UINT32_C(0x002CB788),
11029           UINT32_C(0x0036DAF5), UINT32_C(0x000DA427), UINT32_C(0x0003CD59),
11030           UINT32_C(0x00026B18), UINT32_C(0x002DA542), UINT32_C(0x0010AEF9),
11031           UINT32_C(0x003EA11A), UINT32_C(0x003453B3)},
11032          {UINT32_C(0x001D0091), UINT32_C(0x0020390C), UINT32_C(0x002D251A),
11033           UINT32_C(0x0043EFFA), UINT32_C(0x00284188), UINT32_C(0x00326C4E),
11034           UINT32_C(0x001965D5), UINT32_C(0x0052E6EE), UINT32_C(0x0000616F),
11035           UINT32_C(0x002561A4), UINT32_C(0x003AD411), UINT32_C(0x0036D206),
11036           UINT32_C(0x000E1BD3), UINT32_C(0x001392B2), UINT32_C(0x002A8475),
11037           UINT32_C(0x0066EFA5), UINT32_C(0x0037E866), UINT32_C(0x001BBD62),
11038           UINT32_C(0x001D1550), UINT32_C(0x0032E625), UINT32_C(0x00302306),
11039           UINT32_C(0x001E0DDA), UINT32_C(0x001CF60C)}},
11040         {{UINT32_C(0x0023F415), UINT32_C(0x0034D9CF), UINT32_C(0x0024E53D),
11041           UINT32_C(0x000875AF), UINT32_C(0x00052504), UINT32_C(0x003FD275),
11042           UINT32_C(0x0030C106), UINT32_C(0x006F3F46), UINT32_C(0x000B6725),
11043           UINT32_C(0x001DB8D9), UINT32_C(0x0028E8F0), UINT32_C(0x00172728),
11044           UINT32_C(0x0028DA5A), UINT32_C(0x0032E926), UINT32_C(0x002D0A85),
11045           UINT32_C(0x000530D4), UINT32_C(0x0035DC87), UINT32_C(0x002D07D2),
11046           UINT32_C(0x003F882E), UINT32_C(0x005C838F), UINT32_C(0x0026F2BF),
11047           UINT32_C(0x003EEE58), UINT32_C(0x00071443)},
11048          {UINT32_C(0x002CB0FF), UINT32_C(0x003E64EA), UINT32_C(0x0018EDB8),
11049           UINT32_C(0x003B4182), UINT32_C(0x001FC937), UINT32_C(0x002AAFB7),
11050           UINT32_C(0x002EA0F1), UINT32_C(0x0049D653), UINT32_C(0x000F4A39),
11051           UINT32_C(0x000B926E), UINT32_C(0x0010CA2F), UINT32_C(0x002208C8),
11052           UINT32_C(0x0039DE49), UINT32_C(0x000161ED), UINT32_C(0x0007EAFC),
11053           UINT32_C(0x00514FED), UINT32_C(0x00039404), UINT32_C(0x0018883A),
11054           UINT32_C(0x00023262), UINT32_C(0x0016E9C1), UINT32_C(0x003C573A),
11055           UINT32_C(0x002FB6FD), UINT32_C(0x00386202)}},
11056         {{UINT32_C(0x005D99DB), UINT32_C(0x00001D29), UINT32_C(0x000AF82D),
11057           UINT32_C(0x00444767), UINT32_C(0x0015C5E2), UINT32_C(0x002A81B3),
11058           UINT32_C(0x0024A5EF), UINT32_C(0x006F6AF5), UINT32_C(0x001EBBCB),
11059           UINT32_C(0x00305276), UINT32_C(0x001A7F7A), UINT32_C(0x006B1587),
11060           UINT32_C(0x0010BC41), UINT32_C(0x00233733), UINT32_C(0x0015633F),
11061           UINT32_C(0x006476A7), UINT32_C(0x00104F63), UINT32_C(0x001F393B),
11062           UINT32_C(0x00255507), UINT32_C(0x00708297), UINT32_C(0x000DB54C),
11063           UINT32_C(0x001A8A1D), UINT32_C(0x001A9756)},
11064          {UINT32_C(0x0033896F), UINT32_C(0x00011688), UINT32_C(0x001FBDA0),
11065           UINT32_C(0x002D7B5B), UINT32_C(0x00345043), UINT32_C(0x000409DD),
11066           UINT32_C(0x0023A47B), UINT32_C(0x0018CE42), UINT32_C(0x00005C57),
11067           UINT32_C(0x0010E46C), UINT32_C(0x0016395D), UINT32_C(0x0029A5E5),
11068           UINT32_C(0x00063854), UINT32_C(0x002F12A1), UINT32_C(0x00013E1B),
11069           UINT32_C(0x00407727), UINT32_C(0x001EEAAC), UINT32_C(0x0039D044),
11070           UINT32_C(0x0023C5C8), UINT32_C(0x003BB777), UINT32_C(0x00206B48),
11071           UINT32_C(0x0020CD62), UINT32_C(0x002C7DE1)}},
11072         {{UINT32_C(0x00431425), UINT32_C(0x003E66AF), UINT32_C(0x0039AA06),
11073           UINT32_C(0x0061F4D9), UINT32_C(0x001789C9), UINT32_C(0x002ECAAC),
11074           UINT32_C(0x0003F0C7), UINT32_C(0x0019C0FC), UINT32_C(0x00131E10),
11075           UINT32_C(0x001FDEC5), UINT32_C(0x00375C20), UINT32_C(0x0038CDA3),
11076           UINT32_C(0x0019FA41), UINT32_C(0x00339E14), UINT32_C(0x002C2643),
11077           UINT32_C(0x0060E1EB), UINT32_C(0x001F88C5), UINT32_C(0x002C520C),
11078           UINT32_C(0x000ED4A1), UINT32_C(0x0009B12C), UINT32_C(0x003385E8),
11079           UINT32_C(0x0007CEC0), UINT32_C(0x0025145A)},
11080          {UINT32_C(0x000C4BBC), UINT32_C(0x001CA76E), UINT32_C(0x00053791),
11081           UINT32_C(0x0071B24B), UINT32_C(0x002AEE0E), UINT32_C(0x003D38BC),
11082           UINT32_C(0x0014DF23), UINT32_C(0x00714100), UINT32_C(0x002621B3),
11083           UINT32_C(0x003EA6E9), UINT32_C(0x003351FD), UINT32_C(0x002F67A6),
11084           UINT32_C(0x003DD342), UINT32_C(0x002B6916), UINT32_C(0x0018E95C),
11085           UINT32_C(0x004F0EF0), UINT32_C(0x00063803), UINT32_C(0x0031C884),
11086           UINT32_C(0x0029F497), UINT32_C(0x0076FCD3), UINT32_C(0x0008E8DE),
11087           UINT32_C(0x00375097), UINT32_C(0x0034BF55)}},
11088     },
11089     {
11090         {{UINT32_C(0x00101002), UINT32_C(0x003E5E72), UINT32_C(0x0008B02E),
11091           UINT32_C(0x0050FB59), UINT32_C(0x0018AB92), UINT32_C(0x003EE716),
11092           UINT32_C(0x00097228), UINT32_C(0x0049BDB3), UINT32_C(0x003AF4F6),
11093           UINT32_C(0x003EC3F2), UINT32_C(0x000A2168), UINT32_C(0x002E9535),
11094           UINT32_C(0x001B90E4), UINT32_C(0x002BA88C), UINT32_C(0x00326E95),
11095           UINT32_C(0x003FEB7E), UINT32_C(0x002017BC), UINT32_C(0x000D0EEE),
11096           UINT32_C(0x0014761F), UINT32_C(0x0047526E), UINT32_C(0x00180227),
11097           UINT32_C(0x000611B5), UINT32_C(0x0035BCC9)},
11098          {UINT32_C(0x0065BB6C), UINT32_C(0x00254EB1), UINT32_C(0x00213662),
11099           UINT32_C(0x000C625D), UINT32_C(0x00291EF8), UINT32_C(0x00123964),
11100           UINT32_C(0x003C6A2D), UINT32_C(0x003CEFF9), UINT32_C(0x00263687),
11101           UINT32_C(0x0011917B), UINT32_C(0x000E22CF), UINT32_C(0x002846F8),
11102           UINT32_C(0x0034AE34), UINT32_C(0x001EA233), UINT32_C(0x001EA70A),
11103           UINT32_C(0x001C002F), UINT32_C(0x0008295D), UINT32_C(0x00358F85),
11104           UINT32_C(0x001292A5), UINT32_C(0x006FF9AD), UINT32_C(0x0006C51D),
11105           UINT32_C(0x0010C570), UINT32_C(0x003F9016)}},
11106         {{UINT32_C(0x00520C83), UINT32_C(0x0011B38F), UINT32_C(0x003659FA),
11107           UINT32_C(0x004B70A4), UINT32_C(0x002D7D78), UINT32_C(0x00317E0C),
11108           UINT32_C(0x002BCC8A), UINT32_C(0x00170479), UINT32_C(0x003049C8),
11109           UINT32_C(0x0035330F), UINT32_C(0x00292CAC), UINT32_C(0x00659C79),
11110           UINT32_C(0x000953DA), UINT32_C(0x002839AC), UINT32_C(0x000EEC75),
11111           UINT32_C(0x0034FE7A), UINT32_C(0x003DA567), UINT32_C(0x003E416C),
11112           UINT32_C(0x00007AD5), UINT32_C(0x00787665), UINT32_C(0x0023F8AC),
11113           UINT32_C(0x0022688F), UINT32_C(0x002F4735)},
11114          {UINT32_C(0x0048FDB2), UINT32_C(0x001EC71C), UINT32_C(0x003D8930),
11115           UINT32_C(0x00650536), UINT32_C(0x0022A057), UINT32_C(0x0034D941),
11116           UINT32_C(0x0033DA64), UINT32_C(0x002D8AF7), UINT32_C(0x0015A74D),
11117           UINT32_C(0x0002EE4D), UINT32_C(0x0020F500), UINT32_C(0x00050ADE),
11118           UINT32_C(0x0021DCE1), UINT32_C(0x00006CC2), UINT32_C(0x00004AF7),
11119           UINT32_C(0x00385379), UINT32_C(0x0014D7FD), UINT32_C(0x0035F5DC),
11120           UINT32_C(0x002CE71C), UINT32_C(0x004F1273), UINT32_C(0x00235AF5),
11121           UINT32_C(0x00073649), UINT32_C(0x001C5B77)}},
11122         {{UINT32_C(0x002D1D21), UINT32_C(0x003D3AFA), UINT32_C(0x003484FE),
11123           UINT32_C(0x003B8AEF), UINT32_C(0x0028E325), UINT32_C(0x00180681),
11124           UINT32_C(0x0008D952), UINT32_C(0x0004222B), UINT32_C(0x002EC06C),
11125           UINT32_C(0x00196929), UINT32_C(0x0003F38C), UINT32_C(0x004A5049),
11126           UINT32_C(0x000D9B6D), UINT32_C(0x001C481B), UINT32_C(0x003A16BA),
11127           UINT32_C(0x007F7383), UINT32_C(0x0016E539), UINT32_C(0x003CB657),
11128           UINT32_C(0x000CB3E0), UINT32_C(0x0017CB6E), UINT32_C(0x00282B60),
11129           UINT32_C(0x00168672), UINT32_C(0x0021396D)},
11130          {UINT32_C(0x00230B59), UINT32_C(0x002A3F7A), UINT32_C(0x002CEDD4),
11131           UINT32_C(0x0046B9E4), UINT32_C(0x0010DAFC), UINT32_C(0x0030ED59),
11132           UINT32_C(0x0034B350), UINT32_C(0x004C3909), UINT32_C(0x000D0E93),
11133           UINT32_C(0x003A3458), UINT32_C(0x00030157), UINT32_C(0x003E191D),
11134           UINT32_C(0x002A17A1), UINT32_C(0x001C795E), UINT32_C(0x00019E14),
11135           UINT32_C(0x00448635), UINT32_C(0x00364727), UINT32_C(0x002B17DB),
11136           UINT32_C(0x00013693), UINT32_C(0x0050F600), UINT32_C(0x0013ADED),
11137           UINT32_C(0x00267B88), UINT32_C(0x0012E874)}},
11138         {{UINT32_C(0x00491237), UINT32_C(0x000A3228), UINT32_C(0x0006A16F),
11139           UINT32_C(0x002BCC52), UINT32_C(0x002A58B0), UINT32_C(0x00223C2F),
11140           UINT32_C(0x000ECF49), UINT32_C(0x00310D98), UINT32_C(0x000E07C8),
11141           UINT32_C(0x0027A178), UINT32_C(0x002F51C1), UINT32_C(0x001D757E),
11142           UINT32_C(0x003D1406), UINT32_C(0x003F45BF), UINT32_C(0x003C049A),
11143           UINT32_C(0x00247F57), UINT32_C(0x001B4EA7), UINT32_C(0x002C3AA4),
11144           UINT32_C(0x0000C59A), UINT32_C(0x002C0BF5), UINT32_C(0x0004E1EC),
11145           UINT32_C(0x003B5C4F), UINT32_C(0x002ED5BD)},
11146          {UINT32_C(0x000DA809), UINT32_C(0x003F3B14), UINT32_C(0x00317876),
11147           UINT32_C(0x004FBBD1), UINT32_C(0x00145987), UINT32_C(0x0034043D),
11148           UINT32_C(0x0004E8DF), UINT32_C(0x0040B9A8), UINT32_C(0x003FB500),
11149           UINT32_C(0x00102180), UINT32_C(0x00002AD5), UINT32_C(0x000948B6),
11150           UINT32_C(0x0024E856), UINT32_C(0x001346B2), UINT32_C(0x001224DE),
11151           UINT32_C(0x00780CFE), UINT32_C(0x003527A8), UINT32_C(0x0015A63D),
11152           UINT32_C(0x00350B6B), UINT32_C(0x0019D0B1), UINT32_C(0x00125F42),
11153           UINT32_C(0x000C970B), UINT32_C(0x0030D16C)}},
11154         {{UINT32_C(0x005B8DD0), UINT32_C(0x002EFE9A), UINT32_C(0x002160B2),
11155           UINT32_C(0x006C25E9), UINT32_C(0x003648EE), UINT32_C(0x000F0498),
11156           UINT32_C(0x002E36A5), UINT32_C(0x0048709D), UINT32_C(0x003F3212),
11157           UINT32_C(0x0032A4D7), UINT32_C(0x0037EA02), UINT32_C(0x003554EF),
11158           UINT32_C(0x00080AFA), UINT32_C(0x0009F4D8), UINT32_C(0x000A370E),
11159           UINT32_C(0x0074C856), UINT32_C(0x00302B5C), UINT32_C(0x000F4BED),
11160           UINT32_C(0x00286A2A), UINT32_C(0x001B7967), UINT32_C(0x001EA28E),
11161           UINT32_C(0x0005C511), UINT32_C(0x0036A76A)},
11162          {UINT32_C(0x00470560), UINT32_C(0x002A01F5), UINT32_C(0x0000571A),
11163           UINT32_C(0x0049D849), UINT32_C(0x001EC4A9), UINT32_C(0x0032B83B),
11164           UINT32_C(0x001A8DF4), UINT32_C(0x00495FB3), UINT32_C(0x000BD33C),
11165           UINT32_C(0x000857FC), UINT32_C(0x00128475), UINT32_C(0x003B8705),
11166           UINT32_C(0x00243166), UINT32_C(0x001BCEBA), UINT32_C(0x0028F42F),
11167           UINT32_C(0x00530ED6), UINT32_C(0x001D8A5C), UINT32_C(0x001FC74F),
11168           UINT32_C(0x002D4804), UINT32_C(0x000367B6), UINT32_C(0x000327AF),
11169           UINT32_C(0x002863D0), UINT32_C(0x000900E7)}},
11170         {{UINT32_C(0x00780229), UINT32_C(0x001EF630), UINT32_C(0x000510ED),
11171           UINT32_C(0x006460B5), UINT32_C(0x000A8636), UINT32_C(0x00358DE6),
11172           UINT32_C(0x001EAE5F), UINT32_C(0x0054B5EB), UINT32_C(0x0024DDD6),
11173           UINT32_C(0x003EDDBF), UINT32_C(0x00373B40), UINT32_C(0x0026ABAC),
11174           UINT32_C(0x003A5597), UINT32_C(0x002BE3A2), UINT32_C(0x00167777),
11175           UINT32_C(0x0045D31B), UINT32_C(0x0032440D), UINT32_C(0x0015429F),
11176           UINT32_C(0x003A681A), UINT32_C(0x001D0AA3), UINT32_C(0x0036BA5B),
11177           UINT32_C(0x0025EA57), UINT32_C(0x00343F81)},
11178          {UINT32_C(0x0013FCD6), UINT32_C(0x0032B515), UINT32_C(0x00205A39),
11179           UINT32_C(0x006417AA), UINT32_C(0x00188962), UINT32_C(0x0030F077),
11180           UINT32_C(0x0030D896), UINT32_C(0x00618839), UINT32_C(0x000924CE),
11181           UINT32_C(0x00313575), UINT32_C(0x002445E3), UINT32_C(0x0004EECA),
11182           UINT32_C(0x002B4A7C), UINT32_C(0x0009D939), UINT32_C(0x0013DD92),
11183           UINT32_C(0x0023A94B), UINT32_C(0x0022A525), UINT32_C(0x002EC641),
11184           UINT32_C(0x000F31A9), UINT32_C(0x001D3493), UINT32_C(0x003DF626),
11185           UINT32_C(0x003C1521), UINT32_C(0x000E392E)}},
11186         {{UINT32_C(0x0066600B), UINT32_C(0x0004FDF8), UINT32_C(0x0007D4BD),
11187           UINT32_C(0x0026B138), UINT32_C(0x002EA81D), UINT32_C(0x00333EF4),
11188           UINT32_C(0x0015A59C), UINT32_C(0x0051B0C0), UINT32_C(0x0035D122),
11189           UINT32_C(0x003DA6C3), UINT32_C(0x003E2C86), UINT32_C(0x003CB4B4),
11190           UINT32_C(0x00044B44), UINT32_C(0x003424DE), UINT32_C(0x001D32E6),
11191           UINT32_C(0x002521D8), UINT32_C(0x003CCEC2), UINT32_C(0x000276F5),
11192           UINT32_C(0x00220217), UINT32_C(0x00008BA1), UINT32_C(0x000321CB),
11193           UINT32_C(0x00286E09), UINT32_C(0x0004C3E0)},
11194          {UINT32_C(0x002B8D50), UINT32_C(0x002E3BC1), UINT32_C(0x000F2753),
11195           UINT32_C(0x007FCE93), UINT32_C(0x003EF16C), UINT32_C(0x0035426B),
11196           UINT32_C(0x00206746), UINT32_C(0x007FCFC3), UINT32_C(0x003C1D6C),
11197           UINT32_C(0x0037F851), UINT32_C(0x0014034B), UINT32_C(0x005C71B5),
11198           UINT32_C(0x002AA534), UINT32_C(0x003695A5), UINT32_C(0x001CC377),
11199           UINT32_C(0x004B40F1), UINT32_C(0x003B0DD3), UINT32_C(0x0003CC25),
11200           UINT32_C(0x00296BD9), UINT32_C(0x0076050E), UINT32_C(0x0030853C),
11201           UINT32_C(0x0023CDDF), UINT32_C(0x0005051F)}},
11202         {{UINT32_C(0x001FAC05), UINT32_C(0x0038BF66), UINT32_C(0x00106AE1),
11203           UINT32_C(0x005F6C39), UINT32_C(0x002BCFD1), UINT32_C(0x0012C446),
11204           UINT32_C(0x002014B7), UINT32_C(0x0022CDD4), UINT32_C(0x002C0E46),
11205           UINT32_C(0x000068BA), UINT32_C(0x0009B619), UINT32_C(0x00112EBA),
11206           UINT32_C(0x001134DE), UINT32_C(0x00382BD9), UINT32_C(0x0038AB24),
11207           UINT32_C(0x003EFC51), UINT32_C(0x00125A98), UINT32_C(0x00166AE1),
11208           UINT32_C(0x001204D8), UINT32_C(0x00395F99), UINT32_C(0x0022EC93),
11209           UINT32_C(0x000C2334), UINT32_C(0x000F0DB3)},
11210          {UINT32_C(0x0065FB58), UINT32_C(0x0026949F), UINT32_C(0x00284E96),
11211           UINT32_C(0x000E9B6C), UINT32_C(0x003DCCC0), UINT32_C(0x00276266),
11212           UINT32_C(0x0011C074), UINT32_C(0x0006165B), UINT32_C(0x003618B9),
11213           UINT32_C(0x000C1873), UINT32_C(0x00210655), UINT32_C(0x0068168F),
11214           UINT32_C(0x002A5321), UINT32_C(0x00130FA1), UINT32_C(0x00288227),
11215           UINT32_C(0x00405D32), UINT32_C(0x002C76A2), UINT32_C(0x003544A1),
11216           UINT32_C(0x0021FFEE), UINT32_C(0x00372D2B), UINT32_C(0x001A438E),
11217           UINT32_C(0x002F5590), UINT32_C(0x001BBD78)}},
11218         {{UINT32_C(0x000324B7), UINT32_C(0x0005A62F), UINT32_C(0x003F767B),
11219           UINT32_C(0x006E0320), UINT32_C(0x0000FF7D), UINT32_C(0x001365D4),
11220           UINT32_C(0x0034C36F), UINT32_C(0x000AC0F4), UINT32_C(0x00037C47),
11221           UINT32_C(0x00022A9D), UINT32_C(0x001C6BCF), UINT32_C(0x000C25F1),
11222           UINT32_C(0x0019449E), UINT32_C(0x00272780), UINT32_C(0x00107BA2),
11223           UINT32_C(0x003A5F5D), UINT32_C(0x0010F210), UINT32_C(0x001A8365),
11224           UINT32_C(0x000FA62A), UINT32_C(0x000EEFAD), UINT32_C(0x00080B72),
11225           UINT32_C(0x003ABCCF), UINT32_C(0x00019B10)},
11226          {UINT32_C(0x0076B572), UINT32_C(0x003D6F9E), UINT32_C(0x000ADEC4),
11227           UINT32_C(0x00516D49), UINT32_C(0x003E0BD1), UINT32_C(0x00139E71),
11228           UINT32_C(0x00339678), UINT32_C(0x006ABDF0), UINT32_C(0x0038E886),
11229           UINT32_C(0x002299CE), UINT32_C(0x00367195), UINT32_C(0x0043A05B),
11230           UINT32_C(0x00361D28), UINT32_C(0x000796D9), UINT32_C(0x00373012),
11231           UINT32_C(0x001EC4D3), UINT32_C(0x001008A0), UINT32_C(0x002E74DD),
11232           UINT32_C(0x003C82F9), UINT32_C(0x004054A4), UINT32_C(0x0032570C),
11233           UINT32_C(0x00101897), UINT32_C(0x00118C2D)}},
11234         {{UINT32_C(0x00462F42), UINT32_C(0x00057E48), UINT32_C(0x001278B3),
11235           UINT32_C(0x0026CC97), UINT32_C(0x001E327A), UINT32_C(0x001598F9),
11236           UINT32_C(0x003DEF1B), UINT32_C(0x00079209), UINT32_C(0x0033F716),
11237           UINT32_C(0x003B919D), UINT32_C(0x003706F3), UINT32_C(0x00399A35),
11238           UINT32_C(0x0036C21D), UINT32_C(0x00323DF4), UINT32_C(0x000A940E),
11239           UINT32_C(0x000D518E), UINT32_C(0x000D882E), UINT32_C(0x003C191A),
11240           UINT32_C(0x00244FC8), UINT32_C(0x0005C226), UINT32_C(0x000509F7),
11241           UINT32_C(0x000F698A), UINT32_C(0x00007583)},
11242          {UINT32_C(0x007336DD), UINT32_C(0x002AE10E), UINT32_C(0x00262EEC),
11243           UINT32_C(0x0040454E), UINT32_C(0x003352A6), UINT32_C(0x002A34DE),
11244           UINT32_C(0x0033BCE4), UINT32_C(0x0024FD39), UINT32_C(0x001319FB),
11245           UINT32_C(0x001AE5AA), UINT32_C(0x00315D5B), UINT32_C(0x002C46BE),
11246           UINT32_C(0x001DF5A0), UINT32_C(0x002C4B31), UINT32_C(0x0034A43A),
11247           UINT32_C(0x004D4DD6), UINT32_C(0x000116D9), UINT32_C(0x000E599A),
11248           UINT32_C(0x0033B481), UINT32_C(0x0072C084), UINT32_C(0x003602A6),
11249           UINT32_C(0x000FA6A0), UINT32_C(0x00193096)}},
11250         {{UINT32_C(0x001FA23E), UINT32_C(0x0017DD44), UINT32_C(0x002B9851),
11251           UINT32_C(0x0078D9BF), UINT32_C(0x00300461), UINT32_C(0x000E650F),
11252           UINT32_C(0x0003235A), UINT32_C(0x001E10FD), UINT32_C(0x00191997),
11253           UINT32_C(0x00347E5B), UINT32_C(0x000EF26D), UINT32_C(0x00722710),
11254           UINT32_C(0x00091296), UINT32_C(0x0000DAC3), UINT32_C(0x00364C90),
11255           UINT32_C(0x00153FD5), UINT32_C(0x00386DE4), UINT32_C(0x0010D8C8),
11256           UINT32_C(0x001F9824), UINT32_C(0x000ADEC8), UINT32_C(0x003F9D31),
11257           UINT32_C(0x0022F161), UINT32_C(0x000FB294)},
11258          {UINT32_C(0x007CFE80), UINT32_C(0x002929EF), UINT32_C(0x001E66B0),
11259           UINT32_C(0x003A9598), UINT32_C(0x00040870), UINT32_C(0x00110507),
11260           UINT32_C(0x0002B8C7), UINT32_C(0x00218FE2), UINT32_C(0x0024A402),
11261           UINT32_C(0x00082D52), UINT32_C(0x0014DAF9), UINT32_C(0x003244A6),
11262           UINT32_C(0x000583BF), UINT32_C(0x00215F1C), UINT32_C(0x0035F85B),
11263           UINT32_C(0x000DE2B3), UINT32_C(0x0004BC8F), UINT32_C(0x000E7228),
11264           UINT32_C(0x002E9933), UINT32_C(0x0007BDB8), UINT32_C(0x001F7F0F),
11265           UINT32_C(0x003332AF), UINT32_C(0x00156268)}},
11266         {{UINT32_C(0x0002E3E7), UINT32_C(0x0025FA60), UINT32_C(0x001FB4E6),
11267           UINT32_C(0x0016C3C6), UINT32_C(0x00247D0E), UINT32_C(0x002D8D5E),
11268           UINT32_C(0x0006A675), UINT32_C(0x00149DD3), UINT32_C(0x0014833C),
11269           UINT32_C(0x002071D1), UINT32_C(0x00267269), UINT32_C(0x005E8399),
11270           UINT32_C(0x0015D1BF), UINT32_C(0x002573DB), UINT32_C(0x000E94C4),
11271           UINT32_C(0x0053F0CB), UINT32_C(0x000E6C01), UINT32_C(0x002C9873),
11272           UINT32_C(0x0003E40E), UINT32_C(0x002DC625), UINT32_C(0x000EE009),
11273           UINT32_C(0x0037B3C1), UINT32_C(0x00314D3B)},
11274          {UINT32_C(0x0012F52A), UINT32_C(0x00212A59), UINT32_C(0x0039A45C),
11275           UINT32_C(0x000237A1), UINT32_C(0x0002467E), UINT32_C(0x003AD286),
11276           UINT32_C(0x0014E2EE), UINT32_C(0x0079D3D0), UINT32_C(0x001D7205),
11277           UINT32_C(0x0019A1C3), UINT32_C(0x001A753E), UINT32_C(0x00648E5B),
11278           UINT32_C(0x001DA22B), UINT32_C(0x0032CBC7), UINT32_C(0x001A0350),
11279           UINT32_C(0x0051025A), UINT32_C(0x003A3047), UINT32_C(0x001814DC),
11280           UINT32_C(0x0015F660), UINT32_C(0x00384509), UINT32_C(0x0028C315),
11281           UINT32_C(0x0014D207), UINT32_C(0x001BFC3C)}},
11282         {{UINT32_C(0x000BF619), UINT32_C(0x001B0A4A), UINT32_C(0x002F5B04),
11283           UINT32_C(0x00066718), UINT32_C(0x000F956B), UINT32_C(0x00148057),
11284           UINT32_C(0x003D7C40), UINT32_C(0x002D779F), UINT32_C(0x000D96BA),
11285           UINT32_C(0x0034F9E9), UINT32_C(0x000ABC81), UINT32_C(0x00612100),
11286           UINT32_C(0x00094453), UINT32_C(0x001A7A84), UINT32_C(0x00395C2A),
11287           UINT32_C(0x001CCF9C), UINT32_C(0x001909AB), UINT32_C(0x000127F4),
11288           UINT32_C(0x003CC47F), UINT32_C(0x0053B36F), UINT32_C(0x001168B8),
11289           UINT32_C(0x003E681B), UINT32_C(0x0033586A)},
11290          {UINT32_C(0x003405C5), UINT32_C(0x0014C1F8), UINT32_C(0x00217C04),
11291           UINT32_C(0x0044F686), UINT32_C(0x003B975D), UINT32_C(0x001566BE),
11292           UINT32_C(0x000C3966), UINT32_C(0x00442F22), UINT32_C(0x002EEC1C),
11293           UINT32_C(0x001FBB59), UINT32_C(0x002C7F08), UINT32_C(0x005C2547),
11294           UINT32_C(0x002E399A), UINT32_C(0x00357E26), UINT32_C(0x00182B2F),
11295           UINT32_C(0x00428509), UINT32_C(0x0001036A), UINT32_C(0x000C10BF),
11296           UINT32_C(0x0038CF9D), UINT32_C(0x0037AD35), UINT32_C(0x000ED96E),
11297           UINT32_C(0x001A6435), UINT32_C(0x003E4F02)}},
11298         {{UINT32_C(0x0041EB8E), UINT32_C(0x000024BF), UINT32_C(0x003694DF),
11299           UINT32_C(0x00511BE5), UINT32_C(0x000A954F), UINT32_C(0x00206AB1),
11300           UINT32_C(0x003CF939), UINT32_C(0x00513701), UINT32_C(0x000E6080),
11301           UINT32_C(0x002108CE), UINT32_C(0x0020017E), UINT32_C(0x00105B07),
11302           UINT32_C(0x0011EE5F), UINT32_C(0x003E26E6), UINT32_C(0x000DCD93),
11303           UINT32_C(0x0008016D), UINT32_C(0x003FE138), UINT32_C(0x0003D710),
11304           UINT32_C(0x002881A3), UINT32_C(0x002E6638), UINT32_C(0x0013554C),
11305           UINT32_C(0x001A9737), UINT32_C(0x002F29B7)},
11306          {UINT32_C(0x0072FA30), UINT32_C(0x003860AB), UINT32_C(0x002A3A9B),
11307           UINT32_C(0x0046D4D4), UINT32_C(0x002C8E1C), UINT32_C(0x000B27C5),
11308           UINT32_C(0x002FB5F3), UINT32_C(0x006E389E), UINT32_C(0x0032BF68),
11309           UINT32_C(0x002F2032), UINT32_C(0x003D0E8B), UINT32_C(0x005EFF1B),
11310           UINT32_C(0x000E77F7), UINT32_C(0x0032D4D9), UINT32_C(0x000EE3B7),
11311           UINT32_C(0x002DD781), UINT32_C(0x002C515F), UINT32_C(0x001196A0),
11312           UINT32_C(0x003C1961), UINT32_C(0x00484EBE), UINT32_C(0x0007BCF4),
11313           UINT32_C(0x002FA36A), UINT32_C(0x00385130)}},
11314         {{UINT32_C(0x000B2CC6), UINT32_C(0x000E1DAF), UINT32_C(0x003ADA49),
11315           UINT32_C(0x0067C22D), UINT32_C(0x002135BF), UINT32_C(0x0034F418),
11316           UINT32_C(0x002F97CB), UINT32_C(0x003D4E4F), UINT32_C(0x00389246),
11317           UINT32_C(0x000605C0), UINT32_C(0x0005A49F), UINT32_C(0x00289A5C),
11318           UINT32_C(0x0019305F), UINT32_C(0x002BDB2B), UINT32_C(0x0037F1CC),
11319           UINT32_C(0x007C489D), UINT32_C(0x001CC3B8), UINT32_C(0x0022BE49),
11320           UINT32_C(0x0004F6FE), UINT32_C(0x004CDB36), UINT32_C(0x001ECD22),
11321           UINT32_C(0x00347FCC), UINT32_C(0x00121B6E)},
11322          {UINT32_C(0x0038250C), UINT32_C(0x003A9B9A), UINT32_C(0x0031B884),
11323           UINT32_C(0x0038B4E2), UINT32_C(0x002903F8), UINT32_C(0x000D4406),
11324           UINT32_C(0x0003337E), UINT32_C(0x000571CA), UINT32_C(0x0020FC99),
11325           UINT32_C(0x002BEC49), UINT32_C(0x0004A324), UINT32_C(0x0063E39A),
11326           UINT32_C(0x00248D5A), UINT32_C(0x0034EE85), UINT32_C(0x0012C541),
11327           UINT32_C(0x0036DF11), UINT32_C(0x001A9D56), UINT32_C(0x00114AD8),
11328           UINT32_C(0x002B0978), UINT32_C(0x004376FE), UINT32_C(0x0019DA75),
11329           UINT32_C(0x0036CC96), UINT32_C(0x002821E1)}},
11330         {{UINT32_C(0x003C6DB0), UINT32_C(0x00394096), UINT32_C(0x0015D4D8),
11331           UINT32_C(0x00624F58), UINT32_C(0x003A01CB), UINT32_C(0x002C9112),
11332           UINT32_C(0x003A878F), UINT32_C(0x00184B32), UINT32_C(0x001888A3),
11333           UINT32_C(0x00026E10), UINT32_C(0x000E5D54), UINT32_C(0x0055695D),
11334           UINT32_C(0x0004DC05), UINT32_C(0x001B0A95), UINT32_C(0x00230372),
11335           UINT32_C(0x000B124E), UINT32_C(0x0011DE6A), UINT32_C(0x000F2458),
11336           UINT32_C(0x002C9259), UINT32_C(0x00290AC1), UINT32_C(0x0020440B),
11337           UINT32_C(0x00114828), UINT32_C(0x002B166A)},
11338          {UINT32_C(0x0032B46D), UINT32_C(0x00207B45), UINT32_C(0x000473C9),
11339           UINT32_C(0x007FBBBF), UINT32_C(0x0015AFF8), UINT32_C(0x0039EB60),
11340           UINT32_C(0x0035D816), UINT32_C(0x000B1D9F), UINT32_C(0x0037A1A2),
11341           UINT32_C(0x000D8711), UINT32_C(0x0002DFDE), UINT32_C(0x001CBEC4),
11342           UINT32_C(0x002A1716), UINT32_C(0x003B7011), UINT32_C(0x002CED5F),
11343           UINT32_C(0x006BA8F2), UINT32_C(0x0002B544), UINT32_C(0x000C2201),
11344           UINT32_C(0x001B97B2), UINT32_C(0x0068B05E), UINT32_C(0x002ECFAD),
11345           UINT32_C(0x0014D41E), UINT32_C(0x00319D72)}},
11346     },
11347     {
11348         {{UINT32_C(0x00000297), UINT32_C(0x0028EE9D), UINT32_C(0x0025F457),
11349           UINT32_C(0x003A1C7F), UINT32_C(0x003D187E), UINT32_C(0x0016AAC2),
11350           UINT32_C(0x0018DA90), UINT32_C(0x0032CC34), UINT32_C(0x0000C9FE),
11351           UINT32_C(0x00083A39), UINT32_C(0x000ABFD1), UINT32_C(0x00056518),
11352           UINT32_C(0x0020E915), UINT32_C(0x0037F36C), UINT32_C(0x001C3CE8),
11353           UINT32_C(0x0016154B), UINT32_C(0x000D8F76), UINT32_C(0x001349C7),
11354           UINT32_C(0x002C5B2D), UINT32_C(0x00302ADF), UINT32_C(0x00347C0F),
11355           UINT32_C(0x001AD83E), UINT32_C(0x00337C01)},
11356          {UINT32_C(0x0044DBD8), UINT32_C(0x00161F8E), UINT32_C(0x003A4EAF),
11357           UINT32_C(0x007E41EE), UINT32_C(0x0020D593), UINT32_C(0x002B1752),
11358           UINT32_C(0x0008C520), UINT32_C(0x000F746C), UINT32_C(0x00251428),
11359           UINT32_C(0x00336F1A), UINT32_C(0x002F850D), UINT32_C(0x00363B2F),
11360           UINT32_C(0x003C91B4), UINT32_C(0x00373CAD), UINT32_C(0x00114941),
11361           UINT32_C(0x007F0C1B), UINT32_C(0x000AB3AA), UINT32_C(0x000B5CDA),
11362           UINT32_C(0x003A4CD6), UINT32_C(0x0013C09D), UINT32_C(0x003CFDAB),
11363           UINT32_C(0x0030F023), UINT32_C(0x002F9D40)}},
11364         {{UINT32_C(0x0016AB0F), UINT32_C(0x0002549A), UINT32_C(0x00324067),
11365           UINT32_C(0x001CAA0D), UINT32_C(0x001D43DA), UINT32_C(0x002D4798),
11366           UINT32_C(0x002FABBD), UINT32_C(0x00524E09), UINT32_C(0x003E65A7),
11367           UINT32_C(0x000E6579), UINT32_C(0x0006B2BA), UINT32_C(0x007B52B6),
11368           UINT32_C(0x0017769B), UINT32_C(0x0013CA17), UINT32_C(0x00179C6F),
11369           UINT32_C(0x005068DF), UINT32_C(0x00329383), UINT32_C(0x001C707E),
11370           UINT32_C(0x001906BF), UINT32_C(0x0076817B), UINT32_C(0x0010ED4F),
11371           UINT32_C(0x00185468), UINT32_C(0x003C4A19)},
11372          {UINT32_C(0x003A29A3), UINT32_C(0x0007D7E2), UINT32_C(0x000C6BC2),
11373           UINT32_C(0x007A5479), UINT32_C(0x0001F1CF), UINT32_C(0x0039F9E1),
11374           UINT32_C(0x00044B37), UINT32_C(0x005AA886), UINT32_C(0x002CDE04),
11375           UINT32_C(0x002B1FD3), UINT32_C(0x003036AE), UINT32_C(0x004BC454),
11376           UINT32_C(0x000E6063), UINT32_C(0x003E513C), UINT32_C(0x00142E11),
11377           UINT32_C(0x006EB792), UINT32_C(0x002A88A8), UINT32_C(0x003EE121),
11378           UINT32_C(0x000CAFA1), UINT32_C(0x0069BADD), UINT32_C(0x003F3982),
11379           UINT32_C(0x001A3478), UINT32_C(0x00051F0B)}},
11380         {{UINT32_C(0x0065CD56), UINT32_C(0x002C822B), UINT32_C(0x002F6B9C),
11381           UINT32_C(0x000A1BB8), UINT32_C(0x000AAF79), UINT32_C(0x000EA4D3),
11382           UINT32_C(0x00077BC8), UINT32_C(0x004E72DE), UINT32_C(0x00344B0B),
11383           UINT32_C(0x001E3ED5), UINT32_C(0x0038E0C9), UINT32_C(0x00798666),
11384           UINT32_C(0x002C7240), UINT32_C(0x00033538), UINT32_C(0x003C3C44),
11385           UINT32_C(0x00400702), UINT32_C(0x00200573), UINT32_C(0x003E2A4D),
11386           UINT32_C(0x0004ADF5), UINT32_C(0x007BCBC6), UINT32_C(0x001D81E3),
11387           UINT32_C(0x000E60C8), UINT32_C(0x0033E777)},
11388          {UINT32_C(0x0034AD00), UINT32_C(0x001B4772), UINT32_C(0x0003423A),
11389           UINT32_C(0x003B4DC7), UINT32_C(0x0020F3E4), UINT32_C(0x0039B171),
11390           UINT32_C(0x00127CDB), UINT32_C(0x003DCC1F), UINT32_C(0x002BC848),
11391           UINT32_C(0x00370405), UINT32_C(0x00012BF7), UINT32_C(0x002C5599),
11392           UINT32_C(0x0014AB0C), UINT32_C(0x00103733), UINT32_C(0x0002C167),
11393           UINT32_C(0x0072597A), UINT32_C(0x001A940B), UINT32_C(0x000AA67E),
11394           UINT32_C(0x0027936D), UINT32_C(0x006B2D36), UINT32_C(0x00236515),
11395           UINT32_C(0x003318C3), UINT32_C(0x0000665D)}},
11396         {{UINT32_C(0x007BF246), UINT32_C(0x0038A54E), UINT32_C(0x0017A2C6),
11397           UINT32_C(0x002DF25B), UINT32_C(0x0022DEB2), UINT32_C(0x003B118A),
11398           UINT32_C(0x00285430), UINT32_C(0x007EDA78), UINT32_C(0x0020F2EC),
11399           UINT32_C(0x002DC0F9), UINT32_C(0x000824DC), UINT32_C(0x0035CC91),
11400           UINT32_C(0x002C8632), UINT32_C(0x001D44DC), UINT32_C(0x0018CA86),
11401           UINT32_C(0x004A0FAD), UINT32_C(0x002945F8), UINT32_C(0x0002D0D5),
11402           UINT32_C(0x001B8CB7), UINT32_C(0x002990A6), UINT32_C(0x0019DEB1),
11403           UINT32_C(0x0025B0F2), UINT32_C(0x000568B1)},
11404          {UINT32_C(0x001B65CD), UINT32_C(0x000CDCF7), UINT32_C(0x000C0170),
11405           UINT32_C(0x00180F0B), UINT32_C(0x0016BD33), UINT32_C(0x002FFA3C),
11406           UINT32_C(0x00040868), UINT32_C(0x005D604E), UINT32_C(0x00100FF9),
11407           UINT32_C(0x00336B67), UINT32_C(0x003FF1A5), UINT32_C(0x0066724B),
11408           UINT32_C(0x003B381E), UINT32_C(0x002868B1), UINT32_C(0x0010D47B),
11409           UINT32_C(0x00776DC4), UINT32_C(0x00246BA9), UINT32_C(0x002AD2CD),
11410           UINT32_C(0x002AAF38), UINT32_C(0x000D0446), UINT32_C(0x002F27BB),
11411           UINT32_C(0x002943E1), UINT32_C(0x000F4F81)}},
11412         {{UINT32_C(0x003D4A9C), UINT32_C(0x00024A6D), UINT32_C(0x0014B9E1),
11413           UINT32_C(0x0052698E), UINT32_C(0x0030AB88), UINT32_C(0x003B378D),
11414           UINT32_C(0x003E866C), UINT32_C(0x006C9349), UINT32_C(0x00290E01),
11415           UINT32_C(0x001477AD), UINT32_C(0x0000E581), UINT32_C(0x001E06CC),
11416           UINT32_C(0x00310918), UINT32_C(0x003193C5), UINT32_C(0x002B6332),
11417           UINT32_C(0x005EA944), UINT32_C(0x001F5E4B), UINT32_C(0x0014F9B3),
11418           UINT32_C(0x000E2522), UINT32_C(0x004FCF6F), UINT32_C(0x002A3D76),
11419           UINT32_C(0x00048DB9), UINT32_C(0x001D02E8)},
11420          {UINT32_C(0x0037AF28), UINT32_C(0x0029FE6C), UINT32_C(0x0009EDFC),
11421           UINT32_C(0x0027B89F), UINT32_C(0x00301D20), UINT32_C(0x0032442E),
11422           UINT32_C(0x00200E28), UINT32_C(0x002D5E74), UINT32_C(0x0012B052),
11423           UINT32_C(0x003A45F3), UINT32_C(0x00317F8E), UINT32_C(0x001621A4),
11424           UINT32_C(0x0017C898), UINT32_C(0x00337293), UINT32_C(0x0017DFB5),
11425           UINT32_C(0x0071E94B), UINT32_C(0x001F139A), UINT32_C(0x001769A4),
11426           UINT32_C(0x003BA6FF), UINT32_C(0x005D3122), UINT32_C(0x002F863F),
11427           UINT32_C(0x000395F4), UINT32_C(0x00259438)}},
11428         {{UINT32_C(0x00698800), UINT32_C(0x003C6A37), UINT32_C(0x0021F1BB),
11429           UINT32_C(0x004E8C9D), UINT32_C(0x00033DB6), UINT32_C(0x000A7B27),
11430           UINT32_C(0x000E7C3D), UINT32_C(0x00611E5A), UINT32_C(0x0008E6DC),
11431           UINT32_C(0x001B99B7), UINT32_C(0x00011169), UINT32_C(0x000C1DEC),
11432           UINT32_C(0x002423CA), UINT32_C(0x00017B20), UINT32_C(0x000AB665),
11433           UINT32_C(0x002626D4), UINT32_C(0x0023799A), UINT32_C(0x002806DE),
11434           UINT32_C(0x003692DB), UINT32_C(0x002B1EC8), UINT32_C(0x000E1414),
11435           UINT32_C(0x0026B167), UINT32_C(0x00169029)},
11436          {UINT32_C(0x0013B973), UINT32_C(0x003B4AF9), UINT32_C(0x0031ACC0),
11437           UINT32_C(0x00393363), UINT32_C(0x000B4D81), UINT32_C(0x0015A3AE),
11438           UINT32_C(0x002B3D90), UINT32_C(0x001BCC23), UINT32_C(0x000CC79D),
11439           UINT32_C(0x003E07EC), UINT32_C(0x002EE5FF), UINT32_C(0x0045B99C),
11440           UINT32_C(0x0001C279), UINT32_C(0x001A54B4), UINT32_C(0x00175534),
11441           UINT32_C(0x004FEA24), UINT32_C(0x0010F58E), UINT32_C(0x00343EB1),
11442           UINT32_C(0x0039ED8E), UINT32_C(0x0022AE96), UINT32_C(0x0023467E),
11443           UINT32_C(0x00318A7F), UINT32_C(0x0029E05C)}},
11444         {{UINT32_C(0x006B581B), UINT32_C(0x002F4135), UINT32_C(0x0007FED7),
11445           UINT32_C(0x0060C57B), UINT32_C(0x003393FD), UINT32_C(0x00093667),
11446           UINT32_C(0x0004FA1F), UINT32_C(0x0054919F), UINT32_C(0x00229F53),
11447           UINT32_C(0x001AB18E), UINT32_C(0x0011D07D), UINT32_C(0x0002443C),
11448           UINT32_C(0x002AA483), UINT32_C(0x0008DA57), UINT32_C(0x0038A821),
11449           UINT32_C(0x007861E9), UINT32_C(0x0024D8C3), UINT32_C(0x00309579),
11450           UINT32_C(0x002A1002), UINT32_C(0x007B324A), UINT32_C(0x00291FD3),
11451           UINT32_C(0x002937C2), UINT32_C(0x00310CCC)},
11452          {UINT32_C(0x007B71A6), UINT32_C(0x003EB7A5), UINT32_C(0x00395509),
11453           UINT32_C(0x003F58C6), UINT32_C(0x002932CB), UINT32_C(0x003417F8),
11454           UINT32_C(0x000AD82F), UINT32_C(0x00251085), UINT32_C(0x0006F21E),
11455           UINT32_C(0x001588B0), UINT32_C(0x000C136A), UINT32_C(0x004E6BB6),
11456           UINT32_C(0x000C7C60), UINT32_C(0x0015A2FF), UINT32_C(0x001965F4),
11457           UINT32_C(0x006B3224), UINT32_C(0x00280D4B), UINT32_C(0x000374E1),
11458           UINT32_C(0x00187558), UINT32_C(0x007A1057), UINT32_C(0x0001A4DB),
11459           UINT32_C(0x00392A05), UINT32_C(0x002B7342)}},
11460         {{UINT32_C(0x00102D12), UINT32_C(0x00157E1D), UINT32_C(0x003819E1),
11461           UINT32_C(0x000436EA), UINT32_C(0x0033F4FE), UINT32_C(0x0004D63C),
11462           UINT32_C(0x003A559C), UINT32_C(0x005758F8), UINT32_C(0x0032A48C),
11463           UINT32_C(0x0036F300), UINT32_C(0x003C06D5), UINT32_C(0x004AC77E),
11464           UINT32_C(0x0012DD43), UINT32_C(0x001CDBEB), UINT32_C(0x000CBE11),
11465           UINT32_C(0x0003CB34), UINT32_C(0x003F6859), UINT32_C(0x00144DCF),
11466           UINT32_C(0x000BDC01), UINT32_C(0x0038921F), UINT32_C(0x00161041),
11467           UINT32_C(0x000B8BE6), UINT32_C(0x002AC248)},
11468          {UINT32_C(0x0067DD3E), UINT32_C(0x0036DB63), UINT32_C(0x0037BA32),
11469           UINT32_C(0x000AF959), UINT32_C(0x0025B293), UINT32_C(0x0010059F),
11470           UINT32_C(0x0035780D), UINT32_C(0x0046380C), UINT32_C(0x0018452D),
11471           UINT32_C(0x002B5B67), UINT32_C(0x0016B7B2), UINT32_C(0x007AF664),
11472           UINT32_C(0x003C1F41), UINT32_C(0x00097E6F), UINT32_C(0x003205A1),
11473           UINT32_C(0x00725EFF), UINT32_C(0x003E2E86), UINT32_C(0x0038F16D),
11474           UINT32_C(0x000B458E), UINT32_C(0x00385D51), UINT32_C(0x00006670),
11475           UINT32_C(0x0008BCC1), UINT32_C(0x00098C17)}},
11476         {{UINT32_C(0x006DBF88), UINT32_C(0x002D6BB0), UINT32_C(0x003DFE61),
11477           UINT32_C(0x003DF76A), UINT32_C(0x00035BAA), UINT32_C(0x000984CF),
11478           UINT32_C(0x00054134), UINT32_C(0x00556ECD), UINT32_C(0x001F1973),
11479           UINT32_C(0x0006D2EA), UINT32_C(0x002F57DA), UINT32_C(0x0024A56A),
11480           UINT32_C(0x002A7755), UINT32_C(0x000305FD), UINT32_C(0x001C8FD6),
11481           UINT32_C(0x00481CAF), UINT32_C(0x003D0B45), UINT32_C(0x000D68BC),
11482           UINT32_C(0x0039248B), UINT32_C(0x00290881), UINT32_C(0x001C8DB5),
11483           UINT32_C(0x000250CE), UINT32_C(0x000A5C50)},
11484          {UINT32_C(0x005313E5), UINT32_C(0x002F268C), UINT32_C(0x001D3B3E),
11485           UINT32_C(0x001FE5D2), UINT32_C(0x0006955A), UINT32_C(0x00336B39),
11486           UINT32_C(0x00290B6C), UINT32_C(0x00183F14), UINT32_C(0x0025ED57),
11487           UINT32_C(0x0006E18E), UINT32_C(0x00245AB9), UINT32_C(0x000AFADF),
11488           UINT32_C(0x001B239A), UINT32_C(0x003D1824), UINT32_C(0x00286527),
11489           UINT32_C(0x00619C72), UINT32_C(0x00341914), UINT32_C(0x00191683),
11490           UINT32_C(0x00365835), UINT32_C(0x006A9C8D), UINT32_C(0x000DCB56),
11491           UINT32_C(0x003D7D6F), UINT32_C(0x00312DA6)}},
11492         {{UINT32_C(0x002A34A8), UINT32_C(0x0011A273), UINT32_C(0x002EF0E7),
11493           UINT32_C(0x0056ED5F), UINT32_C(0x0022B29F), UINT32_C(0x003BC53B),
11494           UINT32_C(0x00374AF6), UINT32_C(0x001209F7), UINT32_C(0x00087894),
11495           UINT32_C(0x001D51AC), UINT32_C(0x001C55D9), UINT32_C(0x0007EA51),
11496           UINT32_C(0x0027A416), UINT32_C(0x002199BF), UINT32_C(0x00398181),
11497           UINT32_C(0x0050725A), UINT32_C(0x00016D8B), UINT32_C(0x00185F36),
11498           UINT32_C(0x0022B389), UINT32_C(0x00670F14), UINT32_C(0x003EE89C),
11499           UINT32_C(0x00208598), UINT32_C(0x0037FA4E)},
11500          {UINT32_C(0x002CBD11), UINT32_C(0x0025CA10), UINT32_C(0x0025A5C4),
11501           UINT32_C(0x0073CCEA), UINT32_C(0x001D4A0C), UINT32_C(0x003E1189),
11502           UINT32_C(0x0012D18F), UINT32_C(0x00202D6B), UINT32_C(0x0005142A),
11503           UINT32_C(0x000673EF), UINT32_C(0x00230DED), UINT32_C(0x005C9EF1),
11504           UINT32_C(0x00199F43), UINT32_C(0x000951F1), UINT32_C(0x0001FA9B),
11505           UINT32_C(0x0042FDCE), UINT32_C(0x003CF250), UINT32_C(0x00333B05),
11506           UINT32_C(0x003487E6), UINT32_C(0x001A46EF), UINT32_C(0x0009221A),
11507           UINT32_C(0x001601FA), UINT32_C(0x000A8F97)}},
11508         {{UINT32_C(0x0029B1A4), UINT32_C(0x001A205E), UINT32_C(0x0010D45B),
11509           UINT32_C(0x00009969), UINT32_C(0x003B86E1), UINT32_C(0x00263695),
11510           UINT32_C(0x0038303F), UINT32_C(0x000F276E), UINT32_C(0x003DD7EE),
11511           UINT32_C(0x0003D7B5), UINT32_C(0x0019C4B1), UINT32_C(0x003248D5),
11512           UINT32_C(0x0021E8FE), UINT32_C(0x000FC768), UINT32_C(0x001F35EC),
11513           UINT32_C(0x002FB73B), UINT32_C(0x001B945A), UINT32_C(0x00164C1B),
11514           UINT32_C(0x002F277F), UINT32_C(0x005EAE78), UINT32_C(0x00071711),
11515           UINT32_C(0x000C61BB), UINT32_C(0x000AB2C0)},
11516          {UINT32_C(0x0016DF7A), UINT32_C(0x0015DC01), UINT32_C(0x002BA091),
11517           UINT32_C(0x0011F44E), UINT32_C(0x000B08D7), UINT32_C(0x002E9923),
11518           UINT32_C(0x00092787), UINT32_C(0x002ADBB4), UINT32_C(0x003D7AA5),
11519           UINT32_C(0x0009E226), UINT32_C(0x002384F8), UINT32_C(0x003614F7),
11520           UINT32_C(0x003BEA0C), UINT32_C(0x002456BB), UINT32_C(0x00107C57),
11521           UINT32_C(0x004A575C), UINT32_C(0x000760C6), UINT32_C(0x0034DEA3),
11522           UINT32_C(0x002C29AE), UINT32_C(0x007702EC), UINT32_C(0x000797DD),
11523           UINT32_C(0x002C2EC2), UINT32_C(0x000B53B4)}},
11524         {{UINT32_C(0x004E14DC), UINT32_C(0x000DCCE7), UINT32_C(0x00268B67),
11525           UINT32_C(0x00671423), UINT32_C(0x000C36E7), UINT32_C(0x002EF482),
11526           UINT32_C(0x0002A811), UINT32_C(0x004F450D), UINT32_C(0x0019D6E8),
11527           UINT32_C(0x00379047), UINT32_C(0x0024CF74), UINT32_C(0x0017F363),
11528           UINT32_C(0x00242D1C), UINT32_C(0x000034DF), UINT32_C(0x002AEC5D),
11529           UINT32_C(0x0016D8E1), UINT32_C(0x0015B2FA), UINT32_C(0x00347EF8),
11530           UINT32_C(0x00075A03), UINT32_C(0x006AFAC1), UINT32_C(0x0010C4CC),
11531           UINT32_C(0x00216803), UINT32_C(0x001AA96E)},
11532          {UINT32_C(0x0057B948), UINT32_C(0x002E3492), UINT32_C(0x002E8BEB),
11533           UINT32_C(0x00500CA7), UINT32_C(0x002A1860), UINT32_C(0x001B6814),
11534           UINT32_C(0x0019C85F), UINT32_C(0x0061C4ED), UINT32_C(0x002EF6B7),
11535           UINT32_C(0x0038C2BF), UINT32_C(0x003C380D), UINT32_C(0x0011C0C0),
11536           UINT32_C(0x0011337C), UINT32_C(0x0015C779), UINT32_C(0x00136724),
11537           UINT32_C(0x00050BF7), UINT32_C(0x0005558D), UINT32_C(0x002EC289),
11538           UINT32_C(0x003637CA), UINT32_C(0x004B8113), UINT32_C(0x001A69CC),
11539           UINT32_C(0x00301379), UINT32_C(0x003F1AD7)}},
11540         {{UINT32_C(0x0012C055), UINT32_C(0x000EB55E), UINT32_C(0x000D7834),
11541           UINT32_C(0x0027B02C), UINT32_C(0x003B78F0), UINT32_C(0x0010001F),
11542           UINT32_C(0x002DD1EC), UINT32_C(0x0044CC9D), UINT32_C(0x003F406F),
11543           UINT32_C(0x002BBD9B), UINT32_C(0x003D495E), UINT32_C(0x002D8896),
11544           UINT32_C(0x0030CB6A), UINT32_C(0x001B5E53), UINT32_C(0x002AD9F8),
11545           UINT32_C(0x001E75BF), UINT32_C(0x000F94EA), UINT32_C(0x00057B4C),
11546           UINT32_C(0x00370072), UINT32_C(0x0014B385), UINT32_C(0x0005ACED),
11547           UINT32_C(0x002C28F0), UINT32_C(0x003AB7D9)},
11548          {UINT32_C(0x0020CF13), UINT32_C(0x00225C38), UINT32_C(0x002B6293),
11549           UINT32_C(0x0013F808), UINT32_C(0x00344CB9), UINT32_C(0x0033719D),
11550           UINT32_C(0x002FE2B6), UINT32_C(0x00282CB5), UINT32_C(0x00175559),
11551           UINT32_C(0x000403EA), UINT32_C(0x00359279), UINT32_C(0x005D8812),
11552           UINT32_C(0x000B1A40), UINT32_C(0x003EE682), UINT32_C(0x0016E724),
11553           UINT32_C(0x002FB1C5), UINT32_C(0x002F6BEE), UINT32_C(0x0022778B),
11554           UINT32_C(0x0019AEA3), UINT32_C(0x003D80A9), UINT32_C(0x0032D9D1),
11555           UINT32_C(0x003BF23F), UINT32_C(0x002DBA08)}},
11556         {{UINT32_C(0x00475A5B), UINT32_C(0x000AF126), UINT32_C(0x000E8D05),
11557           UINT32_C(0x0037AAD9), UINT32_C(0x003350FF), UINT32_C(0x003B6DF1),
11558           UINT32_C(0x000C70D2), UINT32_C(0x0031341A), UINT32_C(0x00166A1F),
11559           UINT32_C(0x003D3DBE), UINT32_C(0x0021F7E8), UINT32_C(0x006D14A1),
11560           UINT32_C(0x0039D159), UINT32_C(0x001EFA80), UINT32_C(0x0032B317),
11561           UINT32_C(0x0024939B), UINT32_C(0x001C82DD), UINT32_C(0x00061D7A),
11562           UINT32_C(0x00147571), UINT32_C(0x004FFE3E), UINT32_C(0x000965DE),
11563           UINT32_C(0x0028C381), UINT32_C(0x000DFE6C)},
11564          {UINT32_C(0x0035EAA0), UINT32_C(0x0009123B), UINT32_C(0x0032E9E6),
11565           UINT32_C(0x00084111), UINT32_C(0x0000F226), UINT32_C(0x003CD924),
11566           UINT32_C(0x000ABC8B), UINT32_C(0x00538B5D), UINT32_C(0x00023291),
11567           UINT32_C(0x000DB4A0), UINT32_C(0x00010030), UINT32_C(0x00328332),
11568           UINT32_C(0x001A2589), UINT32_C(0x00233EA0), UINT32_C(0x0017BE31),
11569           UINT32_C(0x00586460), UINT32_C(0x0012777E), UINT32_C(0x002D359E),
11570           UINT32_C(0x000D0BCC), UINT32_C(0x00245915), UINT32_C(0x000F3FAB),
11571           UINT32_C(0x00232DCC), UINT32_C(0x0026CC0F)}},
11572         {{UINT32_C(0x006107A0), UINT32_C(0x00348213), UINT32_C(0x001DB8EE),
11573           UINT32_C(0x003152F3), UINT32_C(0x0029336E), UINT32_C(0x001572BD),
11574           UINT32_C(0x002314E4), UINT32_C(0x0050D309), UINT32_C(0x002101EA),
11575           UINT32_C(0x0000EDBA), UINT32_C(0x0011643A), UINT32_C(0x002A8161),
11576           UINT32_C(0x00169D2D), UINT32_C(0x00105B84), UINT32_C(0x0007A268),
11577           UINT32_C(0x00602253), UINT32_C(0x000EAF07), UINT32_C(0x000BF9C0),
11578           UINT32_C(0x001F44D9), UINT32_C(0x0000BADF), UINT32_C(0x000B6708),
11579           UINT32_C(0x000F4EDA), UINT32_C(0x0027E80B)},
11580          {UINT32_C(0x0079EA50), UINT32_C(0x0012030F), UINT32_C(0x00175D43),
11581           UINT32_C(0x005CD824), UINT32_C(0x00334D4F), UINT32_C(0x002AEE35),
11582           UINT32_C(0x0021CFB0), UINT32_C(0x00199622), UINT32_C(0x000CA221),
11583           UINT32_C(0x0007BC44), UINT32_C(0x0029CBBF), UINT32_C(0x0019F06C),
11584           UINT32_C(0x0034ECA6), UINT32_C(0x0027BE0E), UINT32_C(0x002FE495),
11585           UINT32_C(0x00705DBB), UINT32_C(0x002F6511), UINT32_C(0x000D66C8),
11586           UINT32_C(0x000C392A), UINT32_C(0x0014BBEE), UINT32_C(0x0007F420),
11587           UINT32_C(0x0020EF1F), UINT32_C(0x002DD2C3)}},
11588         {{UINT32_C(0x001F311E), UINT32_C(0x0035E164), UINT32_C(0x000D7E33),
11589           UINT32_C(0x004EE0A2), UINT32_C(0x001B027B), UINT32_C(0x003AF8A9),
11590           UINT32_C(0x000897E1), UINT32_C(0x004E7636), UINT32_C(0x002CFEBD),
11591           UINT32_C(0x00349E23), UINT32_C(0x003A2005), UINT32_C(0x0033A740),
11592           UINT32_C(0x000273B7), UINT32_C(0x00018397), UINT32_C(0x0002783F),
11593           UINT32_C(0x00201E98), UINT32_C(0x0009D39F), UINT32_C(0x000A5722),
11594           UINT32_C(0x002D49F8), UINT32_C(0x00798C09), UINT32_C(0x000C4014),
11595           UINT32_C(0x0007D8C3), UINT32_C(0x002F570F)},
11596          {UINT32_C(0x00477116), UINT32_C(0x00161163), UINT32_C(0x002DF7BB),
11597           UINT32_C(0x001DD1D7), UINT32_C(0x003A92DB), UINT32_C(0x0036ACFC),
11598           UINT32_C(0x00211278), UINT32_C(0x0055790C), UINT32_C(0x000B98E9),
11599           UINT32_C(0x002EB711), UINT32_C(0x0009D7B7), UINT32_C(0x003CD366),
11600           UINT32_C(0x000622E0), UINT32_C(0x000D9307), UINT32_C(0x0001BD5F),
11601           UINT32_C(0x0073A35F), UINT32_C(0x003FC1C3), UINT32_C(0x0025C15B),
11602           UINT32_C(0x00359419), UINT32_C(0x006A6138), UINT32_C(0x002A142D),
11603           UINT32_C(0x000BBEDD), UINT32_C(0x0008A742)}},
11604     },
11605     {
11606         {{UINT32_C(0x00020495), UINT32_C(0x0029C46F), UINT32_C(0x0015C863),
11607           UINT32_C(0x001A9BE1), UINT32_C(0x002541BC), UINT32_C(0x003083D6),
11608           UINT32_C(0x000E2B6E), UINT32_C(0x004DEA6D), UINT32_C(0x00233C05),
11609           UINT32_C(0x00093178), UINT32_C(0x00300C16), UINT32_C(0x0047A8A8),
11610           UINT32_C(0x003EEE62), UINT32_C(0x003A3FFE), UINT32_C(0x002D8A6E),
11611           UINT32_C(0x003747DF), UINT32_C(0x0023EBEC), UINT32_C(0x003A703F),
11612           UINT32_C(0x00057635), UINT32_C(0x004C2FF0), UINT32_C(0x0013DB65),
11613           UINT32_C(0x0028F19D), UINT32_C(0x00333AB2)},
11614          {UINT32_C(0x0000A454), UINT32_C(0x0003242C), UINT32_C(0x00263770),
11615           UINT32_C(0x0070C7F5), UINT32_C(0x0007B940), UINT32_C(0x00062CBB),
11616           UINT32_C(0x000BB7CC), UINT32_C(0x00001E3F), UINT32_C(0x00107BEF),
11617           UINT32_C(0x0024BD77), UINT32_C(0x0003307A), UINT32_C(0x003C6EC5),
11618           UINT32_C(0x00357523), UINT32_C(0x003FE203), UINT32_C(0x002F4B77),
11619           UINT32_C(0x0039AB29), UINT32_C(0x00009871), UINT32_C(0x003024E6),
11620           UINT32_C(0x001EAE16), UINT32_C(0x003F3D08), UINT32_C(0x0029A969),
11621           UINT32_C(0x001642E9), UINT32_C(0x003925FE)}},
11622         {{UINT32_C(0x000C8333), UINT32_C(0x00134BA7), UINT32_C(0x0009B871),
11623           UINT32_C(0x0004CDC4), UINT32_C(0x00289CA0), UINT32_C(0x001FC8D2),
11624           UINT32_C(0x0039D91B), UINT32_C(0x0038FC3D), UINT32_C(0x0019773B),
11625           UINT32_C(0x0006D4DF), UINT32_C(0x0006221A), UINT32_C(0x004F1A1C),
11626           UINT32_C(0x0010AF9E), UINT32_C(0x0018553A), UINT32_C(0x00130550),
11627           UINT32_C(0x00111A01), UINT32_C(0x003C7519), UINT32_C(0x00287566),
11628           UINT32_C(0x001644E8), UINT32_C(0x0041602D), UINT32_C(0x0032CDC1),
11629           UINT32_C(0x001C2B40), UINT32_C(0x0030A48F)},
11630          {UINT32_C(0x0042DCF0), UINT32_C(0x0008B28F), UINT32_C(0x003EC6F9),
11631           UINT32_C(0x006A8D26), UINT32_C(0x0034DBA9), UINT32_C(0x002BD050),
11632           UINT32_C(0x003FE19C), UINT32_C(0x0030096C), UINT32_C(0x0013965D),
11633           UINT32_C(0x00010C86), UINT32_C(0x003C6698), UINT32_C(0x00731549),
11634           UINT32_C(0x000AAA24), UINT32_C(0x0010C344), UINT32_C(0x003F7448),
11635           UINT32_C(0x000C5964), UINT32_C(0x0019616E), UINT32_C(0x0035336F),
11636           UINT32_C(0x000723D5), UINT32_C(0x00244786), UINT32_C(0x002452D1),
11637           UINT32_C(0x001F0B6A), UINT32_C(0x0031D0BC)}},
11638         {{UINT32_C(0x001ABEAE), UINT32_C(0x00140094), UINT32_C(0x0025F718),
11639           UINT32_C(0x001FFB06), UINT32_C(0x002CE72A), UINT32_C(0x000678CF),
11640           UINT32_C(0x0007D404), UINT32_C(0x0073CB92), UINT32_C(0x000A9FC4),
11641           UINT32_C(0x000668BB), UINT32_C(0x0027BD0D), UINT32_C(0x002BDE2E),
11642           UINT32_C(0x003EDD2C), UINT32_C(0x00154AE6), UINT32_C(0x00290863),
11643           UINT32_C(0x00334512), UINT32_C(0x001E546A), UINT32_C(0x002467D8),
11644           UINT32_C(0x0006CBDB), UINT32_C(0x002139AD), UINT32_C(0x001CED3F),
11645           UINT32_C(0x00217DC2), UINT32_C(0x001F626B)},
11646          {UINT32_C(0x00390DFD), UINT32_C(0x0002F8B3), UINT32_C(0x000E30AF),
11647           UINT32_C(0x0005D7A3), UINT32_C(0x001EFA22), UINT32_C(0x002CAFDB),
11648           UINT32_C(0x00004971), UINT32_C(0x002EFBEA), UINT32_C(0x001F4ACB),
11649           UINT32_C(0x00302B99), UINT32_C(0x001DFC66), UINT32_C(0x007364F2),
11650           UINT32_C(0x00371C65), UINT32_C(0x0028108D), UINT32_C(0x003C66ED),
11651           UINT32_C(0x005D7568), UINT32_C(0x00212DC4), UINT32_C(0x0011A56E),
11652           UINT32_C(0x0034EE5A), UINT32_C(0x0031E1D4), UINT32_C(0x003CF9C2),
11653           UINT32_C(0x003EB41F), UINT32_C(0x003C84A7)}},
11654         {{UINT32_C(0x007FF718), UINT32_C(0x00032692), UINT32_C(0x002F052E),
11655           UINT32_C(0x00755B72), UINT32_C(0x003D2345), UINT32_C(0x0038E6DD),
11656           UINT32_C(0x0025DC5A), UINT32_C(0x0065158E), UINT32_C(0x0035F9E0),
11657           UINT32_C(0x0019A28C), UINT32_C(0x00178B35), UINT32_C(0x0044D5B8),
11658           UINT32_C(0x0039CE59), UINT32_C(0x00379216), UINT32_C(0x00098649),
11659           UINT32_C(0x00105E9E), UINT32_C(0x0037A436), UINT32_C(0x0035A4A6),
11660           UINT32_C(0x00087244), UINT32_C(0x002AA631), UINT32_C(0x001E9EDB),
11661           UINT32_C(0x000A2622), UINT32_C(0x001D1531)},
11662          {UINT32_C(0x003C8CB9), UINT32_C(0x003D6118), UINT32_C(0x00179E49),
11663           UINT32_C(0x002B0C0C), UINT32_C(0x0039C364), UINT32_C(0x002CA57A),
11664           UINT32_C(0x003F8C54), UINT32_C(0x001FB453), UINT32_C(0x003C0C82),
11665           UINT32_C(0x003B2FF0), UINT32_C(0x003A2B7F), UINT32_C(0x0058C732),
11666           UINT32_C(0x000C6E03), UINT32_C(0x0030EAAB), UINT32_C(0x002A43FC),
11667           UINT32_C(0x0029DF25), UINT32_C(0x00002B4F), UINT32_C(0x0022A3CA),
11668           UINT32_C(0x00104844), UINT32_C(0x004A0B3B), UINT32_C(0x001849CB),
11669           UINT32_C(0x001C4653), UINT32_C(0x002F1596)}},
11670         {{UINT32_C(0x001D4A19), UINT32_C(0x0035FDF4), UINT32_C(0x000F8F5B),
11671           UINT32_C(0x003FF4B0), UINT32_C(0x00157527), UINT32_C(0x0015F4FF),
11672           UINT32_C(0x00337DA4), UINT32_C(0x002BC44F), UINT32_C(0x00223C67),
11673           UINT32_C(0x001B663C), UINT32_C(0x00281B4B), UINT32_C(0x0078BDF6),
11674           UINT32_C(0x000D0B3B), UINT32_C(0x00099BBB), UINT32_C(0x002A4438),
11675           UINT32_C(0x00512DEC), UINT32_C(0x0007055E), UINT32_C(0x002AF2F0),
11676           UINT32_C(0x002C9105), UINT32_C(0x0023E635), UINT32_C(0x001CB35B),
11677           UINT32_C(0x0028C1C2), UINT32_C(0x002DE4D1)},
11678          {UINT32_C(0x00140ADA), UINT32_C(0x0011EC68), UINT32_C(0x0018DFDD),
11679           UINT32_C(0x006F5E0E), UINT32_C(0x00185618), UINT32_C(0x000B38F8),
11680           UINT32_C(0x0003AC86), UINT32_C(0x00345A9C), UINT32_C(0x0018811B),
11681           UINT32_C(0x0034EF90), UINT32_C(0x00309FA7), UINT32_C(0x002657B1),
11682           UINT32_C(0x0026A02F), UINT32_C(0x003FB112), UINT32_C(0x003E8E9A),
11683           UINT32_C(0x004E6284), UINT32_C(0x00310F7A), UINT32_C(0x0013E7DA),
11684           UINT32_C(0x0014C174), UINT32_C(0x0038C1FC), UINT32_C(0x0026EC4A),
11685           UINT32_C(0x0018C688), UINT32_C(0x002A438F)}},
11686         {{UINT32_C(0x004F0ACF), UINT32_C(0x001C15FB), UINT32_C(0x003CD5C1),
11687           UINT32_C(0x000D2292), UINT32_C(0x0025B6A8), UINT32_C(0x00221999),
11688           UINT32_C(0x0016BA08), UINT32_C(0x00792A56), UINT32_C(0x00215FF2),
11689           UINT32_C(0x002B39F1), UINT32_C(0x000F2F96), UINT32_C(0x00025D28),
11690           UINT32_C(0x0029609E), UINT32_C(0x00351C7F), UINT32_C(0x000A603D),
11691           UINT32_C(0x003F3CD9), UINT32_C(0x00024C3B), UINT32_C(0x000C25E9),
11692           UINT32_C(0x002157FF), UINT32_C(0x003E3F6F), UINT32_C(0x0015898B),
11693           UINT32_C(0x0007923F), UINT32_C(0x0011A75F)},
11694          {UINT32_C(0x001B8989), UINT32_C(0x0036B95E), UINT32_C(0x000B28EB),
11695           UINT32_C(0x006F0F0E), UINT32_C(0x001BB501), UINT32_C(0x0029744C),
11696           UINT32_C(0x002C2A82), UINT32_C(0x006278D2), UINT32_C(0x0006D540),
11697           UINT32_C(0x00338072), UINT32_C(0x0023F135), UINT32_C(0x006B3C7F),
11698           UINT32_C(0x003F9CA2), UINT32_C(0x003069ED), UINT32_C(0x001454A7),
11699           UINT32_C(0x001CEA39), UINT32_C(0x000EDAE9), UINT32_C(0x002BF356),
11700           UINT32_C(0x003B1BD9), UINT32_C(0x00073EF3), UINT32_C(0x003041D7),
11701           UINT32_C(0x00096064), UINT32_C(0x00142C76)}},
11702         {{UINT32_C(0x0068FFC6), UINT32_C(0x003C11C5), UINT32_C(0x0031DD2F),
11703           UINT32_C(0x002086BC), UINT32_C(0x00213A20), UINT32_C(0x000198C3),
11704           UINT32_C(0x003C70AA), UINT32_C(0x0064A691), UINT32_C(0x003F88A6),
11705           UINT32_C(0x0010B222), UINT32_C(0x001133AE), UINT32_C(0x0000D81A),
11706           UINT32_C(0x0008B4F2), UINT32_C(0x0037B644), UINT32_C(0x0020B08F),
11707           UINT32_C(0x002B77A7), UINT32_C(0x000AEF1B), UINT32_C(0x002AB9A7),
11708           UINT32_C(0x001FFD9C), UINT32_C(0x002D2887), UINT32_C(0x001829D4),
11709           UINT32_C(0x00291E60), UINT32_C(0x0024DD09)},
11710          {UINT32_C(0x005A1EE9), UINT32_C(0x000858BD), UINT32_C(0x0006666A),
11711           UINT32_C(0x00665E27), UINT32_C(0x001E2D76), UINT32_C(0x00151594),
11712           UINT32_C(0x003CBB31), UINT32_C(0x00274D76), UINT32_C(0x00385369),
11713           UINT32_C(0x002D97F4), UINT32_C(0x00213614), UINT32_C(0x005429E7),
11714           UINT32_C(0x001A6A17), UINT32_C(0x00022689), UINT32_C(0x0007C22E),
11715           UINT32_C(0x000CB237), UINT32_C(0x003B33BC), UINT32_C(0x003A2CF2),
11716           UINT32_C(0x001014A7), UINT32_C(0x004AFB82), UINT32_C(0x003DB97C),
11717           UINT32_C(0x0016FCCC), UINT32_C(0x001D22CE)}},
11718         {{UINT32_C(0x00583D1F), UINT32_C(0x001CAB29), UINT32_C(0x0021DFFC),
11719           UINT32_C(0x00579859), UINT32_C(0x00239960), UINT32_C(0x00287022),
11720           UINT32_C(0x000FBF8A), UINT32_C(0x00522225), UINT32_C(0x00084A9F),
11721           UINT32_C(0x0024948B), UINT32_C(0x002CC83C), UINT32_C(0x0067C4AC),
11722           UINT32_C(0x0034836D), UINT32_C(0x00216546), UINT32_C(0x00364159),
11723           UINT32_C(0x003ADB5A), UINT32_C(0x0003CEB5), UINT32_C(0x00345B44),
11724           UINT32_C(0x002138FD), UINT32_C(0x001743CA), UINT32_C(0x00069ABD),
11725           UINT32_C(0x0023EC4A), UINT32_C(0x00050B88)},
11726          {UINT32_C(0x006438C3), UINT32_C(0x00369425), UINT32_C(0x00279B67),
11727           UINT32_C(0x000D0143), UINT32_C(0x001F364D), UINT32_C(0x00177C5D),
11728           UINT32_C(0x00095B66), UINT32_C(0x002B4C4F), UINT32_C(0x002C159D),
11729           UINT32_C(0x0004AD5B), UINT32_C(0x00177C82), UINT32_C(0x0033A0E4),
11730           UINT32_C(0x003ACCD6), UINT32_C(0x0034623F), UINT32_C(0x000F5D74),
11731           UINT32_C(0x00680AEF), UINT32_C(0x002D31E0), UINT32_C(0x000BB398),
11732           UINT32_C(0x00233354), UINT32_C(0x00253484), UINT32_C(0x00385E50),
11733           UINT32_C(0x000F78CF), UINT32_C(0x000322BA)}},
11734         {{UINT32_C(0x00724124), UINT32_C(0x0030C69A), UINT32_C(0x00310E26),
11735           UINT32_C(0x00278477), UINT32_C(0x0012FFD4), UINT32_C(0x0005570F),
11736           UINT32_C(0x003EBD03), UINT32_C(0x006F51F4), UINT32_C(0x00043A21),
11737           UINT32_C(0x001A4CEA), UINT32_C(0x00172D44), UINT32_C(0x00696C4A),
11738           UINT32_C(0x003FA9A1), UINT32_C(0x0026633B), UINT32_C(0x0005F2B7),
11739           UINT32_C(0x0002C7C4), UINT32_C(0x0003A452), UINT32_C(0x003F240B),
11740           UINT32_C(0x003CBC7E), UINT32_C(0x00074F43), UINT32_C(0x002F68A2),
11741           UINT32_C(0x000623F6), UINT32_C(0x001D4282)},
11742          {UINT32_C(0x0014B428), UINT32_C(0x003E7D33), UINT32_C(0x002520C7),
11743           UINT32_C(0x0041CCF2), UINT32_C(0x00233BAB), UINT32_C(0x001589F9),
11744           UINT32_C(0x000D2E6E), UINT32_C(0x001FFD7C), UINT32_C(0x001DCFD2),
11745           UINT32_C(0x00390FFE), UINT32_C(0x00031026), UINT32_C(0x00772372),
11746           UINT32_C(0x0010F507), UINT32_C(0x0039D935), UINT32_C(0x0011504F),
11747           UINT32_C(0x0041B316), UINT32_C(0x001B31F1), UINT32_C(0x00309FCB),
11748           UINT32_C(0x002D1468), UINT32_C(0x00238297), UINT32_C(0x001B6605),
11749           UINT32_C(0x001B59F9), UINT32_C(0x000B6C96)}},
11750         {{UINT32_C(0x0043F6C2), UINT32_C(0x000763DF), UINT32_C(0x00308091),
11751           UINT32_C(0x006DDCFF), UINT32_C(0x002FC758), UINT32_C(0x001EFF60),
11752           UINT32_C(0x0018180E), UINT32_C(0x005F0A71), UINT32_C(0x001E4437),
11753           UINT32_C(0x000EADD7), UINT32_C(0x0012CA06), UINT32_C(0x0024EF90),
11754           UINT32_C(0x00188475), UINT32_C(0x0018B6D9), UINT32_C(0x001DEA6E),
11755           UINT32_C(0x0044FC14), UINT32_C(0x003D1458), UINT32_C(0x0031E96A),
11756           UINT32_C(0x000E2DAF), UINT32_C(0x00628BB3), UINT32_C(0x002A2193),
11757           UINT32_C(0x00011F06), UINT32_C(0x000C91E9)},
11758          {UINT32_C(0x00482FED), UINT32_C(0x002528F8), UINT32_C(0x002FD25C),
11759           UINT32_C(0x00261308), UINT32_C(0x00139233), UINT32_C(0x00302E3F),
11760           UINT32_C(0x002A13B0), UINT32_C(0x007DEDA6), UINT32_C(0x0011FB4F),
11761           UINT32_C(0x0008FBA1), UINT32_C(0x00196CC9), UINT32_C(0x0051E7E4),
11762           UINT32_C(0x0005A421), UINT32_C(0x003784E4), UINT32_C(0x00174AFF),
11763           UINT32_C(0x004725BC), UINT32_C(0x0004CD05), UINT32_C(0x0026FA6B),
11764           UINT32_C(0x001805BF), UINT32_C(0x0017519D), UINT32_C(0x001A7B71),
11765           UINT32_C(0x00280018), UINT32_C(0x0026EC17)}},
11766         {{UINT32_C(0x001C205B), UINT32_C(0x002CCC69), UINT32_C(0x0030F0E5),
11767           UINT32_C(0x00192A4E), UINT32_C(0x003D1B67), UINT32_C(0x0020DAE2),
11768           UINT32_C(0x000769DE), UINT32_C(0x001BFA4D), UINT32_C(0x000B7649),
11769           UINT32_C(0x000C1B2B), UINT32_C(0x0038C90F), UINT32_C(0x001D0BF8),
11770           UINT32_C(0x000577CB), UINT32_C(0x00190B4F), UINT32_C(0x003E238F),
11771           UINT32_C(0x0052DFF8), UINT32_C(0x0010D0F0), UINT32_C(0x000218C9),
11772           UINT32_C(0x0013F89C), UINT32_C(0x00714803), UINT32_C(0x003A6F8C),
11773           UINT32_C(0x00353B6D), UINT32_C(0x002FFEEA)},
11774          {UINT32_C(0x0030C7D2), UINT32_C(0x000CA103), UINT32_C(0x0021611C),
11775           UINT32_C(0x00188899), UINT32_C(0x001F54E9), UINT32_C(0x00010620),
11776           UINT32_C(0x000AE01A), UINT32_C(0x007A2DB9), UINT32_C(0x002A9401),
11777           UINT32_C(0x00209C63), UINT32_C(0x00389F5D), UINT32_C(0x00196FFF),
11778           UINT32_C(0x002CE291), UINT32_C(0x00340A01), UINT32_C(0x003FF906),
11779           UINT32_C(0x002C42FC), UINT32_C(0x0037C6A3), UINT32_C(0x001146A7),
11780           UINT32_C(0x00044BAD), UINT32_C(0x0063D883), UINT32_C(0x000BAB16),
11781           UINT32_C(0x001FF085), UINT32_C(0x00140B79)}},
11782         {{UINT32_C(0x0032C0E7), UINT32_C(0x00208DFF), UINT32_C(0x002F6660),
11783           UINT32_C(0x0070C915), UINT32_C(0x002D9AF5), UINT32_C(0x0012AB64),
11784           UINT32_C(0x0015326E), UINT32_C(0x001E8920), UINT32_C(0x0031383C),
11785           UINT32_C(0x000E45C6), UINT32_C(0x003FF494), UINT32_C(0x00792407),
11786           UINT32_C(0x0021A39A), UINT32_C(0x003EFC30), UINT32_C(0x0008C932),
11787           UINT32_C(0x0031D0D5), UINT32_C(0x0013E9B1), UINT32_C(0x0016F25F),
11788           UINT32_C(0x00251F58), UINT32_C(0x001D0CCC), UINT32_C(0x00189479),
11789           UINT32_C(0x001E2A1D), UINT32_C(0x001548E8)},
11790          {UINT32_C(0x007ED4E4), UINT32_C(0x003831E3), UINT32_C(0x0036B65B),
11791           UINT32_C(0x00173DB0), UINT32_C(0x0030B4B3), UINT32_C(0x003B0A38),
11792           UINT32_C(0x00176695), UINT32_C(0x0022F024), UINT32_C(0x002DC536),
11793           UINT32_C(0x0026D641), UINT32_C(0x003845E6), UINT32_C(0x006AE213),
11794           UINT32_C(0x000F1253), UINT32_C(0x0035B8B4), UINT32_C(0x002D1D2C),
11795           UINT32_C(0x0026072B), UINT32_C(0x000C4DFF), UINT32_C(0x00098C06),
11796           UINT32_C(0x003973E5), UINT32_C(0x006E815F), UINT32_C(0x0035E739),
11797           UINT32_C(0x0004E25A), UINT32_C(0x00323E06)}},
11798         {{UINT32_C(0x0018218E), UINT32_C(0x001C5A05), UINT32_C(0x00156FEA),
11799           UINT32_C(0x000DEF36), UINT32_C(0x003405AB), UINT32_C(0x000C8D8A),
11800           UINT32_C(0x003D4CE6), UINT32_C(0x0036C6B1), UINT32_C(0x0026347B),
11801           UINT32_C(0x002BEC62), UINT32_C(0x00135B49), UINT32_C(0x004ED20D),
11802           UINT32_C(0x002BCE15), UINT32_C(0x000A503C), UINT32_C(0x0030279F),
11803           UINT32_C(0x00124E30), UINT32_C(0x003AF38A), UINT32_C(0x0008EB83),
11804           UINT32_C(0x00141065), UINT32_C(0x004DF4DC), UINT32_C(0x00176DD3),
11805           UINT32_C(0x000FCB73), UINT32_C(0x000229CD)},
11806          {UINT32_C(0x0004041C), UINT32_C(0x003CAB13), UINT32_C(0x0029B3E4),
11807           UINT32_C(0x001B70DE), UINT32_C(0x00009B3A), UINT32_C(0x002C70AC),
11808           UINT32_C(0x00272EDA), UINT32_C(0x0010407E), UINT32_C(0x000645F0),
11809           UINT32_C(0x001E2E70), UINT32_C(0x000502A8), UINT32_C(0x00794831),
11810           UINT32_C(0x003AE5DE), UINT32_C(0x002799EA), UINT32_C(0x001CAFA4),
11811           UINT32_C(0x006E7B51), UINT32_C(0x0008984E), UINT32_C(0x0012EF3F),
11812           UINT32_C(0x000025E7), UINT32_C(0x000DDA10), UINT32_C(0x00119536),
11813           UINT32_C(0x003D6D8D), UINT32_C(0x0006C12F)}},
11814         {{UINT32_C(0x00435EE4), UINT32_C(0x000163D6), UINT32_C(0x00377C11),
11815           UINT32_C(0x003BD7D6), UINT32_C(0x002E05F5), UINT32_C(0x001FBA80),
11816           UINT32_C(0x00107C07), UINT32_C(0x00681A61), UINT32_C(0x0005189C),
11817           UINT32_C(0x0002C249), UINT32_C(0x003607CD), UINT32_C(0x000957D6),
11818           UINT32_C(0x003F952A), UINT32_C(0x0008ECBA), UINT32_C(0x001E29E1),
11819           UINT32_C(0x0033462B), UINT32_C(0x0022898D), UINT32_C(0x001AABD5),
11820           UINT32_C(0x002E885C), UINT32_C(0x000A2647), UINT32_C(0x0037A37C),
11821           UINT32_C(0x00297E79), UINT32_C(0x002A2CA3)},
11822          {UINT32_C(0x002C1A17), UINT32_C(0x00158B61), UINT32_C(0x0016816F),
11823           UINT32_C(0x0053A5A8), UINT32_C(0x001547B2), UINT32_C(0x0030AC66),
11824           UINT32_C(0x00202C4C), UINT32_C(0x00274C07), UINT32_C(0x000D322E),
11825           UINT32_C(0x0004A3E0), UINT32_C(0x000F7BC7), UINT32_C(0x00102196),
11826           UINT32_C(0x000C81FB), UINT32_C(0x00358316), UINT32_C(0x00063F2B),
11827           UINT32_C(0x007FF11C), UINT32_C(0x0025FFE3), UINT32_C(0x00256744),
11828           UINT32_C(0x002E91A0), UINT32_C(0x0064976E), UINT32_C(0x0038C948),
11829           UINT32_C(0x00396FAC), UINT32_C(0x0037CF6E)}},
11830         {{UINT32_C(0x00794F1D), UINT32_C(0x002B6A50), UINT32_C(0x00120AE4),
11831           UINT32_C(0x001CEC0F), UINT32_C(0x00383F87), UINT32_C(0x00216277),
11832           UINT32_C(0x00286CEA), UINT32_C(0x00103D5A), UINT32_C(0x002AA574),
11833           UINT32_C(0x003D3491), UINT32_C(0x0022931D), UINT32_C(0x00489498),
11834           UINT32_C(0x0032EEF4), UINT32_C(0x000CA2AA), UINT32_C(0x00080A27),
11835           UINT32_C(0x007FA661), UINT32_C(0x00094E9A), UINT32_C(0x003EE29E),
11836           UINT32_C(0x002AC21C), UINT32_C(0x001CE359), UINT32_C(0x003330FC),
11837           UINT32_C(0x001C6ADE), UINT32_C(0x00187790)},
11838          {UINT32_C(0x00340EF5), UINT32_C(0x000BDD62), UINT32_C(0x00333909),
11839           UINT32_C(0x0039146A), UINT32_C(0x0038BB2E), UINT32_C(0x00030F37),
11840           UINT32_C(0x00143B07), UINT32_C(0x0031CC3D), UINT32_C(0x002B5B5C),
11841           UINT32_C(0x00005892), UINT32_C(0x00052BD0), UINT32_C(0x000A282B),
11842           UINT32_C(0x0030D9C5), UINT32_C(0x001004FC), UINT32_C(0x0038922A),
11843           UINT32_C(0x000241A2), UINT32_C(0x000053C3), UINT32_C(0x002C02CA),
11844           UINT32_C(0x002D4F8F), UINT32_C(0x004AB17B), UINT32_C(0x003667C0),
11845           UINT32_C(0x0004EF7E), UINT32_C(0x000080E4)}},
11846         {{UINT32_C(0x005FA89B), UINT32_C(0x001D2F7D), UINT32_C(0x0019B385),
11847           UINT32_C(0x0053B863), UINT32_C(0x0022E414), UINT32_C(0x0011C620),
11848           UINT32_C(0x001F0CA5), UINT32_C(0x001B475A), UINT32_C(0x003E5B07),
11849           UINT32_C(0x0020C305), UINT32_C(0x0018A591), UINT32_C(0x007DE564),
11850           UINT32_C(0x001F654F), UINT32_C(0x003F1044), UINT32_C(0x000D7B16),
11851           UINT32_C(0x004E51E7), UINT32_C(0x00267972), UINT32_C(0x002A42F3),
11852           UINT32_C(0x000159C2), UINT32_C(0x0016007C), UINT32_C(0x000F9CA8),
11853           UINT32_C(0x00021184), UINT32_C(0x0007FCE7)},
11854          {UINT32_C(0x00045B0F), UINT32_C(0x000002C5), UINT32_C(0x0033642B),
11855           UINT32_C(0x0038378F), UINT32_C(0x001F29A8), UINT32_C(0x0018130B),
11856           UINT32_C(0x00340B0B), UINT32_C(0x007667B7), UINT32_C(0x0038B986),
11857           UINT32_C(0x00218A5C), UINT32_C(0x0020D3E4), UINT32_C(0x002B84EB),
11858           UINT32_C(0x001DBF61), UINT32_C(0x0006E45C), UINT32_C(0x000C2528),
11859           UINT32_C(0x003D5B87), UINT32_C(0x003B9631), UINT32_C(0x0016FFC9),
11860           UINT32_C(0x002577D8), UINT32_C(0x00084014), UINT32_C(0x00326179),
11861           UINT32_C(0x002B97FC), UINT32_C(0x0017D9B9)}},
11862     },
11863     {
11864         {{UINT32_C(0x0024FC6B), UINT32_C(0x00260048), UINT32_C(0x0027A39B),
11865           UINT32_C(0x004A6771), UINT32_C(0x002F8996), UINT32_C(0x00250571),
11866           UINT32_C(0x0022BD5A), UINT32_C(0x0016BA95), UINT32_C(0x00177752),
11867           UINT32_C(0x003AAE54), UINT32_C(0x000382BC), UINT32_C(0x002DBDCA),
11868           UINT32_C(0x00175D11), UINT32_C(0x000485AB), UINT32_C(0x00263BCC),
11869           UINT32_C(0x002CA217), UINT32_C(0x0033AA31), UINT32_C(0x001EB58F),
11870           UINT32_C(0x001CAA07), UINT32_C(0x00439150), UINT32_C(0x003350D2),
11871           UINT32_C(0x002E0A1C), UINT32_C(0x000B60E4)},
11872          {UINT32_C(0x006AFAB6), UINT32_C(0x001979BD), UINT32_C(0x00206F5D),
11873           UINT32_C(0x004F0B02), UINT32_C(0x001DC842), UINT32_C(0x0032D59A),
11874           UINT32_C(0x001DC451), UINT32_C(0x0022D419), UINT32_C(0x00003471),
11875           UINT32_C(0x00178E67), UINT32_C(0x002D0057), UINT32_C(0x006162BD),
11876           UINT32_C(0x000E5A47), UINT32_C(0x00139F7C), UINT32_C(0x0006E056),
11877           UINT32_C(0x00245E47), UINT32_C(0x0000179C), UINT32_C(0x0028BA82),
11878           UINT32_C(0x00229B1F), UINT32_C(0x003B6E93), UINT32_C(0x0012AE29),
11879           UINT32_C(0x0017CD91), UINT32_C(0x0014F8C1)}},
11880         {{UINT32_C(0x00340D60), UINT32_C(0x00077299), UINT32_C(0x003D596C),
11881           UINT32_C(0x005CAB48), UINT32_C(0x0018060B), UINT32_C(0x00108F8B),
11882           UINT32_C(0x00155345), UINT32_C(0x00555740), UINT32_C(0x0006639B),
11883           UINT32_C(0x000966BA), UINT32_C(0x0028B692), UINT32_C(0x000E0989),
11884           UINT32_C(0x000E36E6), UINT32_C(0x003EA5CF), UINT32_C(0x003E7233),
11885           UINT32_C(0x002BCE85), UINT32_C(0x003B53C6), UINT32_C(0x000B6428),
11886           UINT32_C(0x000CEB17), UINT32_C(0x001439C1), UINT32_C(0x003E1768),
11887           UINT32_C(0x00182028), UINT32_C(0x00063591)},
11888          {UINT32_C(0x004C6A3E), UINT32_C(0x0003B6B4), UINT32_C(0x00308620),
11889           UINT32_C(0x0042D6E7), UINT32_C(0x000688FB), UINT32_C(0x00242205),
11890           UINT32_C(0x0015FD4B), UINT32_C(0x006548A0), UINT32_C(0x00073894),
11891           UINT32_C(0x00059483), UINT32_C(0x00070BE7), UINT32_C(0x005EC1A3),
11892           UINT32_C(0x00138AF9), UINT32_C(0x00059A16), UINT32_C(0x000721C1),
11893           UINT32_C(0x003D327D), UINT32_C(0x000AC881), UINT32_C(0x0008254B),
11894           UINT32_C(0x00291DB6), UINT32_C(0x00202301), UINT32_C(0x002587BC),
11895           UINT32_C(0x002F4480), UINT32_C(0x000BB989)}},
11896         {{UINT32_C(0x0044D64A), UINT32_C(0x00169A22), UINT32_C(0x00198EE3),
11897           UINT32_C(0x001C1CF3), UINT32_C(0x001ABB64), UINT32_C(0x0002B70C),
11898           UINT32_C(0x000D1B40), UINT32_C(0x0000B41C), UINT32_C(0x001A07BF),
11899           UINT32_C(0x0031380A), UINT32_C(0x0037E0A3), UINT32_C(0x005959D5),
11900           UINT32_C(0x00195DCD), UINT32_C(0x00318DBC), UINT32_C(0x00014119),
11901           UINT32_C(0x0039F9F8), UINT32_C(0x002F8B00), UINT32_C(0x00035A9F),
11902           UINT32_C(0x001F77ED), UINT32_C(0x0042F50F), UINT32_C(0x0010F6EB),
11903           UINT32_C(0x00018D31), UINT32_C(0x00115505)},
11904          {UINT32_C(0x004A9CF0), UINT32_C(0x00396AE3), UINT32_C(0x002F36DC),
11905           UINT32_C(0x0059C454), UINT32_C(0x002372E1), UINT32_C(0x0017C289),
11906           UINT32_C(0x001DC88C), UINT32_C(0x00568BBB), UINT32_C(0x0038AAF3),
11907           UINT32_C(0x000AC735), UINT32_C(0x001D93C9), UINT32_C(0x0079763F),
11908           UINT32_C(0x000474DE), UINT32_C(0x001FFEA5), UINT32_C(0x0032E7A4),
11909           UINT32_C(0x00286D83), UINT32_C(0x001C592E), UINT32_C(0x002E08D4),
11910           UINT32_C(0x003C918F), UINT32_C(0x00635953), UINT32_C(0x00125ECD),
11911           UINT32_C(0x00218E30), UINT32_C(0x0038E348)}},
11912         {{UINT32_C(0x001F97CB), UINT32_C(0x00027C45), UINT32_C(0x0004CBBC),
11913           UINT32_C(0x003C768C), UINT32_C(0x002150EB), UINT32_C(0x00309BAC),
11914           UINT32_C(0x001BD192), UINT32_C(0x00449D0C), UINT32_C(0x00027761),
11915           UINT32_C(0x00334EC9), UINT32_C(0x0004B563), UINT32_C(0x0063BBA5),
11916           UINT32_C(0x0022D5EC), UINT32_C(0x0036D1DC), UINT32_C(0x0022C410),
11917           UINT32_C(0x005B8D6B), UINT32_C(0x00182967), UINT32_C(0x002A4F38),
11918           UINT32_C(0x00111A50), UINT32_C(0x00211F1F), UINT32_C(0x001EDAD2),
11919           UINT32_C(0x0018C6ED), UINT32_C(0x00195251)},
11920          {UINT32_C(0x002C575A), UINT32_C(0x00368BF8), UINT32_C(0x001817CE),
11921           UINT32_C(0x0023D30F), UINT32_C(0x00335F3C), UINT32_C(0x003D8B6B),
11922           UINT32_C(0x0036535C), UINT32_C(0x006E800F), UINT32_C(0x001D0FEE),
11923           UINT32_C(0x001D0E1D), UINT32_C(0x001030F4), UINT32_C(0x00575F2F),
11924           UINT32_C(0x000272DE), UINT32_C(0x0012885A), UINT32_C(0x001E98BE),
11925           UINT32_C(0x0002CEF1), UINT32_C(0x00343652), UINT32_C(0x0026244E),
11926           UINT32_C(0x00112950), UINT32_C(0x000CF99B), UINT32_C(0x0039E10D),
11927           UINT32_C(0x0019A48E), UINT32_C(0x000F62D8)}},
11928         {{UINT32_C(0x007F47CB), UINT32_C(0x000DB92B), UINT32_C(0x001CFE89),
11929           UINT32_C(0x00438C82), UINT32_C(0x002F9B60), UINT32_C(0x0029F531),
11930           UINT32_C(0x0036DACC), UINT32_C(0x000B743F), UINT32_C(0x0014BFCA),
11931           UINT32_C(0x003076AB), UINT32_C(0x00061C92), UINT32_C(0x00402803),
11932           UINT32_C(0x001F9BBE), UINT32_C(0x002BB4F0), UINT32_C(0x001D49FC),
11933           UINT32_C(0x0039DA58), UINT32_C(0x001B9F65), UINT32_C(0x001A4032),
11934           UINT32_C(0x001853D6), UINT32_C(0x0077F83B), UINT32_C(0x000BA641),
11935           UINT32_C(0x0028F440), UINT32_C(0x00036529)},
11936          {UINT32_C(0x00469CBC), UINT32_C(0x000ECB6B), UINT32_C(0x003ED688),
11937           UINT32_C(0x00448228), UINT32_C(0x000125E0), UINT32_C(0x001294BB),
11938           UINT32_C(0x003209CD), UINT32_C(0x00431140), UINT32_C(0x0024ADFE),
11939           UINT32_C(0x000A297C), UINT32_C(0x00343443), UINT32_C(0x003DC6B9),
11940           UINT32_C(0x003A8F4A), UINT32_C(0x003CD200), UINT32_C(0x0027F94A),
11941           UINT32_C(0x0026C683), UINT32_C(0x001010D7), UINT32_C(0x00291317),
11942           UINT32_C(0x001C01DB), UINT32_C(0x00323A9C), UINT32_C(0x0018F9E1),
11943           UINT32_C(0x000FB990), UINT32_C(0x001C0FD8)}},
11944         {{UINT32_C(0x002529B0), UINT32_C(0x00047C33), UINT32_C(0x00105D03),
11945           UINT32_C(0x00668833), UINT32_C(0x001D8A87), UINT32_C(0x001BE267),
11946           UINT32_C(0x002E8A17), UINT32_C(0x001BA406), UINT32_C(0x0012683B),
11947           UINT32_C(0x0032EFBE), UINT32_C(0x0033C9C9), UINT32_C(0x003816FD),
11948           UINT32_C(0x001E2856), UINT32_C(0x001FA678), UINT32_C(0x0034CF0E),
11949           UINT32_C(0x002BC6D4), UINT32_C(0x0021D8C3), UINT32_C(0x00138A8F),
11950           UINT32_C(0x00301A91), UINT32_C(0x007BA5BF), UINT32_C(0x0027ADBF),
11951           UINT32_C(0x00084950), UINT32_C(0x003344F2)},
11952          {UINT32_C(0x001D7DDB), UINT32_C(0x000B9FBD), UINT32_C(0x003A23D1),
11953           UINT32_C(0x000DAA8E), UINT32_C(0x0015296C), UINT32_C(0x00378879),
11954           UINT32_C(0x00080207), UINT32_C(0x006DACFA), UINT32_C(0x002C4D0C),
11955           UINT32_C(0x0003E240), UINT32_C(0x0005CDBB), UINT32_C(0x004B5100),
11956           UINT32_C(0x0024673C), UINT32_C(0x003EDDC4), UINT32_C(0x001C3104),
11957           UINT32_C(0x004EC191), UINT32_C(0x001B0572), UINT32_C(0x002EE934),
11958           UINT32_C(0x001E439A), UINT32_C(0x0008B8BC), UINT32_C(0x001D336D),
11959           UINT32_C(0x000C0450), UINT32_C(0x00264399)}},
11960         {{UINT32_C(0x0063BA75), UINT32_C(0x000E5577), UINT32_C(0x002D84D8),
11961           UINT32_C(0x0011F137), UINT32_C(0x003C0568), UINT32_C(0x001FCF04),
11962           UINT32_C(0x00369E84), UINT32_C(0x0026107B), UINT32_C(0x003793D0),
11963           UINT32_C(0x002FF753), UINT32_C(0x00080D0D), UINT32_C(0x0009FE5B),
11964           UINT32_C(0x000D568B), UINT32_C(0x00306219), UINT32_C(0x00057FB4),
11965           UINT32_C(0x00251274), UINT32_C(0x0028F357), UINT32_C(0x001868A6),
11966           UINT32_C(0x00245601), UINT32_C(0x00694DDA), UINT32_C(0x001BF932),
11967           UINT32_C(0x00291545), UINT32_C(0x000834DF)},
11968          {UINT32_C(0x005DE7C7), UINT32_C(0x00043FB9), UINT32_C(0x002022F7),
11969           UINT32_C(0x006DD20B), UINT32_C(0x0034DB2B), UINT32_C(0x0009812A),
11970           UINT32_C(0x000634E5), UINT32_C(0x00529BDD), UINT32_C(0x0037E7AF),
11971           UINT32_C(0x0020131E), UINT32_C(0x0028145E), UINT32_C(0x007D781A),
11972           UINT32_C(0x003F2E11), UINT32_C(0x00090377), UINT32_C(0x001FF3F0),
11973           UINT32_C(0x0029544B), UINT32_C(0x0004B34A), UINT32_C(0x00308A92),
11974           UINT32_C(0x00230957), UINT32_C(0x0030849F), UINT32_C(0x003BD197),
11975           UINT32_C(0x0036543D), UINT32_C(0x0013DB50)}},
11976         {{UINT32_C(0x006DBC4E), UINT32_C(0x000B8C36), UINT32_C(0x0033C975),
11977           UINT32_C(0x001B98FA), UINT32_C(0x000E1469), UINT32_C(0x003F57BB),
11978           UINT32_C(0x00366AF6), UINT32_C(0x002940D4), UINT32_C(0x002A7401),
11979           UINT32_C(0x000B24FA), UINT32_C(0x003D079C), UINT32_C(0x000BBF2B),
11980           UINT32_C(0x001C8DA1), UINT32_C(0x00281279), UINT32_C(0x003FD16B),
11981           UINT32_C(0x005F172D), UINT32_C(0x003BC575), UINT32_C(0x0003F2EE),
11982           UINT32_C(0x000EB6E0), UINT32_C(0x0025AA43), UINT32_C(0x0019146D),
11983           UINT32_C(0x000E2FCD), UINT32_C(0x000708D1)},
11984          {UINT32_C(0x00188A0A), UINT32_C(0x003280E1), UINT32_C(0x00375AE3),
11985           UINT32_C(0x005DEF79), UINT32_C(0x0030CA8C), UINT32_C(0x0011A4E2),
11986           UINT32_C(0x001A18EE), UINT32_C(0x0015160F), UINT32_C(0x003D4633),
11987           UINT32_C(0x00210DF1), UINT32_C(0x0039513D), UINT32_C(0x00032B85),
11988           UINT32_C(0x0000562C), UINT32_C(0x002B09DE), UINT32_C(0x0012E5D7),
11989           UINT32_C(0x00343965), UINT32_C(0x002482BA), UINT32_C(0x00358D60),
11990           UINT32_C(0x00210688), UINT32_C(0x001DE534), UINT32_C(0x0037E47D),
11991           UINT32_C(0x00306432), UINT32_C(0x00331A00)}},
11992         {{UINT32_C(0x000E3961), UINT32_C(0x00136E2C), UINT32_C(0x00396117),
11993           UINT32_C(0x003A4EA9), UINT32_C(0x002B633F), UINT32_C(0x00331384),
11994           UINT32_C(0x000E6FDA), UINT32_C(0x00110B81), UINT32_C(0x00083F56),
11995           UINT32_C(0x0010E231), UINT32_C(0x00377F5B), UINT32_C(0x00777CBF),
11996           UINT32_C(0x0027D587), UINT32_C(0x0016725E), UINT32_C(0x0022FAFB),
11997           UINT32_C(0x0050FCA0), UINT32_C(0x0035E866), UINT32_C(0x001F6AF5),
11998           UINT32_C(0x00131AFF), UINT32_C(0x0031B90B), UINT32_C(0x003D8FC9),
11999           UINT32_C(0x003CCAEF), UINT32_C(0x000BCF90)},
12000          {UINT32_C(0x0037CE7B), UINT32_C(0x003B57EC), UINT32_C(0x00161E92),
12001           UINT32_C(0x0065355B), UINT32_C(0x0024637B), UINT32_C(0x0008B2C0),
12002           UINT32_C(0x0002E6FD), UINT32_C(0x001ED2F1), UINT32_C(0x0024A016),
12003           UINT32_C(0x0022B354), UINT32_C(0x0019306E), UINT32_C(0x003009F9),
12004           UINT32_C(0x00130478), UINT32_C(0x0039951C), UINT32_C(0x003B9F26),
12005           UINT32_C(0x00129D8E), UINT32_C(0x0028EAE8), UINT32_C(0x002E0532),
12006           UINT32_C(0x002312B7), UINT32_C(0x001904D9), UINT32_C(0x001F8FB7),
12007           UINT32_C(0x00306139), UINT32_C(0x00191E58)}},
12008         {{UINT32_C(0x00315B6B), UINT32_C(0x0006110B), UINT32_C(0x002D0F7A),
12009           UINT32_C(0x000B35D8), UINT32_C(0x0039DD74), UINT32_C(0x0013BF7F),
12010           UINT32_C(0x00088A74), UINT32_C(0x00678A54), UINT32_C(0x0027C11E),
12011           UINT32_C(0x0039299C), UINT32_C(0x0009E852), UINT32_C(0x003A9738),
12012           UINT32_C(0x003BA90B), UINT32_C(0x003C704C), UINT32_C(0x00031EAD),
12013           UINT32_C(0x003F9F6D), UINT32_C(0x00060C99), UINT32_C(0x00210078),
12014           UINT32_C(0x000A43CC), UINT32_C(0x001D2C3A), UINT32_C(0x0016F165),
12015           UINT32_C(0x002CBE20), UINT32_C(0x003CBD2A)},
12016          {UINT32_C(0x006EA72C), UINT32_C(0x0019FAA9), UINT32_C(0x0027119B),
12017           UINT32_C(0x00002DB4), UINT32_C(0x003FC202), UINT32_C(0x00258426),
12018           UINT32_C(0x0017A426), UINT32_C(0x00591EA2), UINT32_C(0x000DAAC0),
12019           UINT32_C(0x00160BB2), UINT32_C(0x002B5C9B), UINT32_C(0x0034552F),
12020           UINT32_C(0x00354208), UINT32_C(0x003F73F6), UINT32_C(0x001D329F),
12021           UINT32_C(0x00541523), UINT32_C(0x001D2733), UINT32_C(0x003E6DA0),
12022           UINT32_C(0x00058267), UINT32_C(0x002FD1CD), UINT32_C(0x003085B8),
12023           UINT32_C(0x0037B13E), UINT32_C(0x0011D71D)}},
12024         {{UINT32_C(0x004EF58F), UINT32_C(0x00111078), UINT32_C(0x002A7D65),
12025           UINT32_C(0x0032333E), UINT32_C(0x0011BB9D), UINT32_C(0x0033FA14),
12026           UINT32_C(0x001ABD10), UINT32_C(0x007F9C0D), UINT32_C(0x0012F21C),
12027           UINT32_C(0x003C4D14), UINT32_C(0x003A59E2), UINT32_C(0x0017140E),
12028           UINT32_C(0x003EC05A), UINT32_C(0x002B8323), UINT32_C(0x0013D487),
12029           UINT32_C(0x0061B630), UINT32_C(0x000C1262), UINT32_C(0x0034A7E5),
12030           UINT32_C(0x0018DA22), UINT32_C(0x000DA70C), UINT32_C(0x001E1E78),
12031           UINT32_C(0x0037CE10), UINT32_C(0x000BEBB1)},
12032          {UINT32_C(0x004F54F0), UINT32_C(0x000A220B), UINT32_C(0x00161352),
12033           UINT32_C(0x007E4EA4), UINT32_C(0x002878DE), UINT32_C(0x001C80E5),
12034           UINT32_C(0x000C0855), UINT32_C(0x0075DF3B), UINT32_C(0x0039D0AB),
12035           UINT32_C(0x001D0301), UINT32_C(0x001594B9), UINT32_C(0x0078140B),
12036           UINT32_C(0x001A2C01), UINT32_C(0x0028FCE5), UINT32_C(0x003C573C),
12037           UINT32_C(0x0006E543), UINT32_C(0x003A90E6), UINT32_C(0x002D4FDD),
12038           UINT32_C(0x0022B1F7), UINT32_C(0x0062CB04), UINT32_C(0x002C12CA),
12039           UINT32_C(0x00389E83), UINT32_C(0x0007631E)}},
12040         {{UINT32_C(0x0023C68B), UINT32_C(0x000F609A), UINT32_C(0x000D7E01),
12041           UINT32_C(0x0069E56B), UINT32_C(0x0003D496), UINT32_C(0x001BC8DC),
12042           UINT32_C(0x00328E76), UINT32_C(0x00316565), UINT32_C(0x0011A340),
12043           UINT32_C(0x00374048), UINT32_C(0x0016C79E), UINT32_C(0x0014449B),
12044           UINT32_C(0x002EE9B6), UINT32_C(0x00032A11), UINT32_C(0x001212A3),
12045           UINT32_C(0x003D35C1), UINT32_C(0x003485FD), UINT32_C(0x001199A6),
12046           UINT32_C(0x001C3F0D), UINT32_C(0x0017F8CF), UINT32_C(0x0014AC02),
12047           UINT32_C(0x001E0EB1), UINT32_C(0x001ACA7C)},
12048          {UINT32_C(0x0031C47A), UINT32_C(0x00102E12), UINT32_C(0x002F6F4B),
12049           UINT32_C(0x005B2D93), UINT32_C(0x000A9886), UINT32_C(0x001CC034),
12050           UINT32_C(0x0023E81B), UINT32_C(0x0001A7CE), UINT32_C(0x0029ABC3),
12051           UINT32_C(0x0004048C), UINT32_C(0x002BC25D), UINT32_C(0x00368ABA),
12052           UINT32_C(0x0002746C), UINT32_C(0x00373868), UINT32_C(0x00061AA2),
12053           UINT32_C(0x0056401C), UINT32_C(0x00207F34), UINT32_C(0x001FCA2D),
12054           UINT32_C(0x00169B9E), UINT32_C(0x0064FDA3), UINT32_C(0x0028C18A),
12055           UINT32_C(0x000C0847), UINT32_C(0x001845F0)}},
12056         {{UINT32_C(0x002F9AD9), UINT32_C(0x0009590F), UINT32_C(0x00130486),
12057           UINT32_C(0x0059CC83), UINT32_C(0x0039A337), UINT32_C(0x0022C7C7),
12058           UINT32_C(0x0003C259), UINT32_C(0x00602650), UINT32_C(0x0008510C),
12059           UINT32_C(0x00384F8A), UINT32_C(0x001F3AA0), UINT32_C(0x003706DA),
12060           UINT32_C(0x00069456), UINT32_C(0x0002AD7C), UINT32_C(0x00003A14),
12061           UINT32_C(0x007327BA), UINT32_C(0x002F7478), UINT32_C(0x001FBB28),
12062           UINT32_C(0x0023BC3E), UINT32_C(0x007F5AB5), UINT32_C(0x001FFF4E),
12063           UINT32_C(0x00188D11), UINT32_C(0x0013BC8B)},
12064          {UINT32_C(0x0000C111), UINT32_C(0x0006AA72), UINT32_C(0x0012A2E9),
12065           UINT32_C(0x0055127A), UINT32_C(0x003C8991), UINT32_C(0x0036CFBC),
12066           UINT32_C(0x0037F0BB), UINT32_C(0x00655B21), UINT32_C(0x002B75E3),
12067           UINT32_C(0x00336687), UINT32_C(0x00210878), UINT32_C(0x00089C2C),
12068           UINT32_C(0x003CEE92), UINT32_C(0x00143383), UINT32_C(0x00371D45),
12069           UINT32_C(0x000BCDFE), UINT32_C(0x00238367), UINT32_C(0x001C2D8B),
12070           UINT32_C(0x003E06AD), UINT32_C(0x0053DBC8), UINT32_C(0x002A9F89),
12071           UINT32_C(0x002955F8), UINT32_C(0x00137029)}},
12072         {{UINT32_C(0x0002FB5B), UINT32_C(0x0032BB27), UINT32_C(0x001EE694),
12073           UINT32_C(0x002E2965), UINT32_C(0x00395F01), UINT32_C(0x003FEC08),
12074           UINT32_C(0x003ABDFB), UINT32_C(0x0068B88B), UINT32_C(0x00221DB7),
12075           UINT32_C(0x000F72D1), UINT32_C(0x0003F9DC), UINT32_C(0x005C1B93),
12076           UINT32_C(0x00073A9E), UINT32_C(0x00160BD0), UINT32_C(0x00053416),
12077           UINT32_C(0x0023242A), UINT32_C(0x0010FAB9), UINT32_C(0x0006D2C5),
12078           UINT32_C(0x00236E83), UINT32_C(0x0054747B), UINT32_C(0x00063F98),
12079           UINT32_C(0x001A8789), UINT32_C(0x003DC7DA)},
12080          {UINT32_C(0x00463909), UINT32_C(0x0029E3B4), UINT32_C(0x0002F0E2),
12081           UINT32_C(0x00593390), UINT32_C(0x0034320B), UINT32_C(0x003F6A3B),
12082           UINT32_C(0x002603E4), UINT32_C(0x00016676), UINT32_C(0x00254C99),
12083           UINT32_C(0x0023EB7B), UINT32_C(0x00119D88), UINT32_C(0x003D63F8),
12084           UINT32_C(0x00350BC8), UINT32_C(0x00140757), UINT32_C(0x002473C4),
12085           UINT32_C(0x0034D831), UINT32_C(0x0017BDB7), UINT32_C(0x003E24EB),
12086           UINT32_C(0x00231FE3), UINT32_C(0x0070EC64), UINT32_C(0x00043E18),
12087           UINT32_C(0x002A4D4F), UINT32_C(0x0005D554)}},
12088         {{UINT32_C(0x006FC15D), UINT32_C(0x001F5830), UINT32_C(0x0008AD9E),
12089           UINT32_C(0x002845F0), UINT32_C(0x001CD01E), UINT32_C(0x0000CFC1),
12090           UINT32_C(0x0032AE8B), UINT32_C(0x0019E673), UINT32_C(0x0030C5E5),
12091           UINT32_C(0x00050166), UINT32_C(0x00372FAC), UINT32_C(0x00057147),
12092           UINT32_C(0x0004060F), UINT32_C(0x00163807), UINT32_C(0x002BCADD),
12093           UINT32_C(0x00376726), UINT32_C(0x0028315B), UINT32_C(0x0009418F),
12094           UINT32_C(0x001E2957), UINT32_C(0x006D28BE), UINT32_C(0x001BCADE),
12095           UINT32_C(0x0031A352), UINT32_C(0x00052575)},
12096          {UINT32_C(0x00404C1D), UINT32_C(0x0024FA31), UINT32_C(0x0012C7A3),
12097           UINT32_C(0x007D71A8), UINT32_C(0x0028D167), UINT32_C(0x0020B8E9),
12098           UINT32_C(0x0032697E), UINT32_C(0x00202C6B), UINT32_C(0x00032212),
12099           UINT32_C(0x003AB37D), UINT32_C(0x0029EEED), UINT32_C(0x00239F39),
12100           UINT32_C(0x0007DC00), UINT32_C(0x003BD86F), UINT32_C(0x003B948C),
12101           UINT32_C(0x005D1965), UINT32_C(0x003C74AD), UINT32_C(0x001EAB46),
12102           UINT32_C(0x00255C49), UINT32_C(0x002402DB), UINT32_C(0x0004833F),
12103           UINT32_C(0x00181728), UINT32_C(0x002C23A4)}},
12104         {{UINT32_C(0x00069003), UINT32_C(0x001493A6), UINT32_C(0x003F6B49),
12105           UINT32_C(0x001B15E2), UINT32_C(0x003CB610), UINT32_C(0x003AC0D8),
12106           UINT32_C(0x0012E96D), UINT32_C(0x004C065C), UINT32_C(0x00318C4E),
12107           UINT32_C(0x00151ED2), UINT32_C(0x002348E6), UINT32_C(0x006AE001),
12108           UINT32_C(0x0012C641), UINT32_C(0x00126DF2), UINT32_C(0x001D6E0A),
12109           UINT32_C(0x00227223), UINT32_C(0x003493D1), UINT32_C(0x0027ED79),
12110           UINT32_C(0x00097233), UINT32_C(0x0004AB1D), UINT32_C(0x002E7F5A),
12111           UINT32_C(0x003ED69A), UINT32_C(0x003D2512)},
12112          {UINT32_C(0x002D81D0), UINT32_C(0x0012CD40), UINT32_C(0x00296981),
12113           UINT32_C(0x007D52C8), UINT32_C(0x002B5E71), UINT32_C(0x0018553C),
12114           UINT32_C(0x003F8695), UINT32_C(0x00730395), UINT32_C(0x00050DAB),
12115           UINT32_C(0x0015BCBA), UINT32_C(0x00220A46), UINT32_C(0x00762FDE),
12116           UINT32_C(0x0029B8D0), UINT32_C(0x0025890A), UINT32_C(0x002D307D),
12117           UINT32_C(0x0077543E), UINT32_C(0x001F282E), UINT32_C(0x00300B63),
12118           UINT32_C(0x000F826D), UINT32_C(0x00344F5F), UINT32_C(0x0017B455),
12119           UINT32_C(0x000FA526), UINT32_C(0x0013C162)}},
12120     }};
12121
12122 /*-
12123  * Q := 2P, both projective, Q and P same pointers OK
12124  * Autogenerated: op3/dbl_proj.op3
12125  * https://eprint.iacr.org/2015/1060 Alg 6
12126  * ASSERT: a = -3
12127  */
12128 static void point_double(pt_prj_t *Q, const pt_prj_t *P) {
12129     /* temporary variables */
12130     fe_t t0, t1, t2, t3, t4;
12131     /* constants */
12132     const limb_t *b = const_b;
12133     /* set pointers for legacy curve arith */
12134     const limb_t *X = P->X;
12135     const limb_t *Y = P->Y;
12136     const limb_t *Z = P->Z;
12137     limb_t *X3 = Q->X;
12138     limb_t *Y3 = Q->Y;
12139     limb_t *Z3 = Q->Z;
12140
12141     /* the curve arith formula */
12142     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(t0, X);
12143     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(t1, Y);
12144     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_square(t2, Z);
12145     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t3, X, Y);
12146     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t3, t3, t3);
12147     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t4, Y, Z);
12148     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Z3, X, Z);
12149     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Z3, Z3, Z3);
12150     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Y3, b, t2);
12151     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Y3, Y3, Z3);
12152     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(X3, Y3, Y3);
12153     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, X3, Y3);
12154     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(X3, t1, Y3);
12155     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, t1, Y3);
12156     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Y3, X3, Y3);
12157     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(X3, X3, t3);
12158     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t3, t2, t2);
12159     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t2, t2, t3);
12160     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Z3, b, Z3);
12161     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Z3, Z3, t2);
12162     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Z3, Z3, t0);
12163     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t3, Z3, Z3);
12164     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Z3, Z3, t3);
12165     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t3, t0, t0);
12166     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t0, t3, t0);
12167     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(t0, t0, t2);
12168     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t0, t0, Z3);
12169     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, Y3, t0);
12170     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t0, t4, t4);
12171     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Z3, t0, Z3);
12172     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(X3, X3, Z3);
12173     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Z3, t0, t1);
12174     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Z3, Z3, Z3);
12175     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Z3, Z3, Z3);
12176 }
12177
12178 /*-
12179  * out1 = (arg1 == 0) ? 0 : nz
12180  * NB: this is not a "mod p equiv" 0, but literal 0
12181  * NB: this is not a real Fiat function, just named that way for consistency.
12182  */
12183 static void fiat_id_tc26_gost_3410_2012_512_paramSetA_nonzero(limb_t *out1,
12184                                                               const fe_t arg1) {
12185     limb_t x1 = 0;
12186     int i;
12187
12188     for (i = 0; i < LIMB_CNT; i++) x1 |= arg1[i];
12189     *out1 = x1;
12190 }
12191
12192 /*-
12193  * R := Q + P where R and Q are projective, P affine.
12194  * R and Q same pointers OK
12195  * R and P same pointers not OK
12196  * Autogenerated: op3/add_mixed.op3
12197  * https://eprint.iacr.org/2015/1060 Alg 5
12198  * ASSERT: a = -3
12199  */
12200 static void point_add_mixed(pt_prj_t *R, const pt_prj_t *Q, const pt_aff_t *P) {
12201     /* temporary variables */
12202     fe_t t0, t1, t2, t3, t4;
12203     /* constants */
12204     const limb_t *b = const_b;
12205     /* set pointers for legacy curve arith */
12206     const limb_t *X1 = Q->X;
12207     const limb_t *Y1 = Q->Y;
12208     const limb_t *Z1 = Q->Z;
12209     const limb_t *X2 = P->X;
12210     const limb_t *Y2 = P->Y;
12211     fe_t X3;
12212     fe_t Y3;
12213     fe_t Z3;
12214     limb_t nz;
12215
12216     /* check P for affine inf */
12217     fiat_id_tc26_gost_3410_2012_512_paramSetA_nonzero(&nz, P->Y);
12218
12219     /* the curve arith formula */
12220     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t0, X1, X2);
12221     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t1, Y1, Y2);
12222     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t3, X2, Y2);
12223     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t4, X1, Y1);
12224     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t3, t3, t4);
12225     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t4, t0, t1);
12226     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(t3, t3, t4);
12227     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t4, Y2, Z1);
12228     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t4, t4, Y1);
12229     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Y3, X2, Z1);
12230     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, Y3, X1);
12231     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Z3, b, Z1);
12232     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(X3, Y3, Z3);
12233     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Z3, X3, X3);
12234     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(X3, X3, Z3);
12235     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Z3, t1, X3);
12236     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(X3, t1, X3);
12237     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Y3, b, Y3);
12238     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t1, Z1, Z1);
12239     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t2, t1, Z1);
12240     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Y3, Y3, t2);
12241     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Y3, Y3, t0);
12242     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t1, Y3, Y3);
12243     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, t1, Y3);
12244     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t1, t0, t0);
12245     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t0, t1, t0);
12246     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(t0, t0, t2);
12247     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t1, t4, Y3);
12248     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t2, t0, Y3);
12249     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Y3, X3, Z3);
12250     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, Y3, t2);
12251     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(X3, t3, X3);
12252     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(X3, X3, t1);
12253     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Z3, t4, Z3);
12254     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t1, t3, t0);
12255     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Z3, Z3, t1);
12256
12257     /* if P is inf, throw all that away and take Q */
12258     fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(R->X, nz, Q->X, X3);
12259     fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(R->Y, nz, Q->Y, Y3);
12260     fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(R->Z, nz, Q->Z, Z3);
12261 }
12262
12263 /*-
12264  * R := Q + P all projective.
12265  * R and Q same pointers OK
12266  * R and P same pointers not OK
12267  * Autogenerated: op3/add_proj.op3
12268  * https://eprint.iacr.org/2015/1060 Alg 4
12269  * ASSERT: a = -3
12270  */
12271 static void point_add_proj(pt_prj_t *R, const pt_prj_t *Q, const pt_prj_t *P) {
12272     /* temporary variables */
12273     fe_t t0, t1, t2, t3, t4, t5;
12274     /* constants */
12275     const limb_t *b = const_b;
12276     /* set pointers for legacy curve arith */
12277     const limb_t *X1 = Q->X;
12278     const limb_t *Y1 = Q->Y;
12279     const limb_t *Z1 = Q->Z;
12280     const limb_t *X2 = P->X;
12281     const limb_t *Y2 = P->Y;
12282     const limb_t *Z2 = P->Z;
12283     limb_t *X3 = R->X;
12284     limb_t *Y3 = R->Y;
12285     limb_t *Z3 = R->Z;
12286
12287     /* the curve arith formula */
12288     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t0, X1, X2);
12289     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t1, Y1, Y2);
12290     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t2, Z1, Z2);
12291     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t3, X1, Y1);
12292     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t4, X2, Y2);
12293     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t3, t3, t4);
12294     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t4, t0, t1);
12295     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(t3, t3, t4);
12296     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t4, Y1, Z1);
12297     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t5, Y2, Z2);
12298     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t4, t4, t5);
12299     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t5, t1, t2);
12300     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(t4, t4, t5);
12301     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(X3, X1, Z1);
12302     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, X2, Z2);
12303     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(X3, X3, Y3);
12304     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, t0, t2);
12305     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Y3, X3, Y3);
12306     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Z3, b, t2);
12307     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(X3, Y3, Z3);
12308     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Z3, X3, X3);
12309     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(X3, X3, Z3);
12310     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Z3, t1, X3);
12311     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(X3, t1, X3);
12312     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Y3, b, Y3);
12313     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t1, t2, t2);
12314     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t2, t1, t2);
12315     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Y3, Y3, t2);
12316     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(Y3, Y3, t0);
12317     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t1, Y3, Y3);
12318     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, t1, Y3);
12319     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t1, t0, t0);
12320     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(t0, t1, t0);
12321     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(t0, t0, t2);
12322     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t1, t4, Y3);
12323     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t2, t0, Y3);
12324     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Y3, X3, Z3);
12325     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Y3, Y3, t2);
12326     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(X3, t3, X3);
12327     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_sub(X3, X3, t1);
12328     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(Z3, t4, Z3);
12329     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(t1, t3, t0);
12330     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_add(Z3, Z3, t1);
12331 }
12332
12333 /* constants */
12334 #define RADIX 5
12335 #define DRADIX (1 << RADIX)
12336 #define DRADIX_WNAF ((DRADIX) << 1)
12337
12338 /*-
12339  * precomp for wnaf scalar multiplication:
12340  * precomp[0] = 1P
12341  * precomp[1] = 3P
12342  * precomp[2] = 5P
12343  * precomp[3] = 7P
12344  * precomp[4] = 9P
12345  * ...
12346  */
12347 static void precomp_wnaf(pt_prj_t precomp[DRADIX / 2], const pt_aff_t *P) {
12348     int i;
12349
12350     fe_copy(precomp[0].X, P->X);
12351     fe_copy(precomp[0].Y, P->Y);
12352     fe_copy(precomp[0].Z, const_one);
12353     point_double(&precomp[DRADIX / 2 - 1], &precomp[0]);
12354
12355     for (i = 1; i < DRADIX / 2; i++)
12356         point_add_proj(&precomp[i], &precomp[DRADIX / 2 - 1], &precomp[i - 1]);
12357 }
12358
12359 /* fetch a scalar bit */
12360 static int scalar_get_bit(const unsigned char in[64], int idx) {
12361     int widx, rshift;
12362
12363     widx = idx >> 3;
12364     rshift = idx & 0x7;
12365
12366     if (idx < 0 || widx >= 64) return 0;
12367
12368     return (in[widx] >> rshift) & 0x1;
12369 }
12370
12371 /*-
12372  * Compute "regular" wnaf representation of a scalar.
12373  * See "Exponent Recoding and Regular Exponentiation Algorithms",
12374  * Tunstall et al., AfricaCrypt 2009, Alg 6.
12375  * It forces an odd scalar and outputs digits in
12376  * {\pm 1, \pm 3, \pm 5, \pm 7, \pm 9, ...}
12377  * i.e. signed odd digits with _no zeroes_ -- that makes it "regular".
12378  */
12379 static void scalar_rwnaf(int8_t out[103], const unsigned char in[64]) {
12380     int i;
12381     int8_t window, d;
12382
12383     window = (in[0] & (DRADIX_WNAF - 1)) | 1;
12384     for (i = 0; i < 102; i++) {
12385         d = (window & (DRADIX_WNAF - 1)) - DRADIX;
12386         out[i] = d;
12387         window = (window - d) >> RADIX;
12388         window += scalar_get_bit(in, (i + 1) * RADIX + 1) << 1;
12389         window += scalar_get_bit(in, (i + 1) * RADIX + 2) << 2;
12390         window += scalar_get_bit(in, (i + 1) * RADIX + 3) << 3;
12391         window += scalar_get_bit(in, (i + 1) * RADIX + 4) << 4;
12392         window += scalar_get_bit(in, (i + 1) * RADIX + 5) << 5;
12393     }
12394     out[i] = window;
12395 }
12396
12397 /*-
12398  * Compute "textbook" wnaf representation of a scalar.
12399  * NB: not constant time
12400  */
12401 static void scalar_wnaf(int8_t out[513], const unsigned char in[64]) {
12402     int i;
12403     int8_t window, d;
12404
12405     window = in[0] & (DRADIX_WNAF - 1);
12406     for (i = 0; i < 513; i++) {
12407         d = 0;
12408         if ((window & 1) && ((d = window & (DRADIX_WNAF - 1)) & DRADIX))
12409             d -= DRADIX_WNAF;
12410         out[i] = d;
12411         window = (window - d) >> 1;
12412         window += scalar_get_bit(in, i + 1 + RADIX) << RADIX;
12413     }
12414 }
12415
12416 /*-
12417  * Simultaneous scalar multiplication: interleaved "textbook" wnaf.
12418  * NB: not constant time
12419  */
12420 static void var_smul_wnaf_two(pt_aff_t *out, const unsigned char a[64],
12421                               const unsigned char b[64], const pt_aff_t *P) {
12422     int i, d, is_neg, is_inf = 1, flipped = 0;
12423     int8_t anaf[513] = {0};
12424     int8_t bnaf[513] = {0};
12425     pt_prj_t Q = {0};
12426     pt_prj_t precomp[DRADIX / 2];
12427
12428     precomp_wnaf(precomp, P);
12429     scalar_wnaf(anaf, a);
12430     scalar_wnaf(bnaf, b);
12431
12432     for (i = 512; i >= 0; i--) {
12433         if (!is_inf) point_double(&Q, &Q);
12434         if ((d = bnaf[i])) {
12435             if ((is_neg = d < 0) != flipped) {
12436                 fiat_id_tc26_gost_3410_2012_512_paramSetA_opp(Q.Y, Q.Y);
12437                 flipped ^= 1;
12438             }
12439             d = (is_neg) ? (-d - 1) >> 1 : (d - 1) >> 1;
12440             if (is_inf) {
12441                 /* initialize accumulator */
12442                 fe_copy(Q.X, &precomp[d].X);
12443                 fe_copy(Q.Y, &precomp[d].Y);
12444                 fe_copy(Q.Z, &precomp[d].Z);
12445                 is_inf = 0;
12446             } else
12447                 point_add_proj(&Q, &Q, &precomp[d]);
12448         }
12449         if ((d = anaf[i])) {
12450             if ((is_neg = d < 0) != flipped) {
12451                 fiat_id_tc26_gost_3410_2012_512_paramSetA_opp(Q.Y, Q.Y);
12452                 flipped ^= 1;
12453             }
12454             d = (is_neg) ? (-d - 1) >> 1 : (d - 1) >> 1;
12455             if (is_inf) {
12456                 /* initialize accumulator */
12457                 fe_copy(Q.X, &lut_cmb[0][d].X);
12458                 fe_copy(Q.Y, &lut_cmb[0][d].Y);
12459                 fe_copy(Q.Z, const_one);
12460                 is_inf = 0;
12461             } else
12462                 point_add_mixed(&Q, &Q, &lut_cmb[0][d]);
12463         }
12464     }
12465
12466     if (is_inf) {
12467         /* initialize accumulator to inf: all-zero scalars */
12468         fe_set_zero(Q.X);
12469         fe_copy(Q.Y, const_one);
12470         fe_set_zero(Q.Z);
12471     }
12472
12473     if (flipped) {
12474         /* correct sign */
12475         fiat_id_tc26_gost_3410_2012_512_paramSetA_opp(Q.Y, Q.Y);
12476     }
12477
12478     /* convert to affine -- NB depends on coordinate system */
12479     fiat_id_tc26_gost_3410_2012_512_paramSetA_inv(Q.Z, Q.Z);
12480     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(out->X, Q.X, Q.Z);
12481     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(out->Y, Q.Y, Q.Z);
12482 }
12483
12484 /*-
12485  * Variable point scalar multiplication with "regular" wnaf.
12486  */
12487 static void var_smul_rwnaf(pt_aff_t *out, const unsigned char scalar[64],
12488                            const pt_aff_t *P) {
12489     int i, j, d, diff, is_neg;
12490     int8_t rnaf[103] = {0};
12491     pt_prj_t Q = {0}, lut = {0};
12492     pt_prj_t precomp[DRADIX / 2];
12493
12494     precomp_wnaf(precomp, P);
12495     scalar_rwnaf(rnaf, scalar);
12496
12497 #if defined(_MSC_VER)
12498     /* result still unsigned: yes we know */
12499 #pragma warning(push)
12500 #pragma warning(disable : 4146)
12501 #endif
12502
12503     /* initialize accumulator to high digit */
12504     d = (rnaf[102] - 1) >> 1;
12505     for (j = 0; j < DRADIX / 2; j++) {
12506         diff = (1 - (-(d ^ j) >> (8 * sizeof(int) - 1))) & 1;
12507         fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(Q.X, diff, Q.X,
12508                                                             precomp[j].X);
12509         fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(Q.Y, diff, Q.Y,
12510                                                             precomp[j].Y);
12511         fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(Q.Z, diff, Q.Z,
12512                                                             precomp[j].Z);
12513     }
12514
12515     for (i = 101; i >= 0; i--) {
12516         for (j = 0; j < RADIX; j++) point_double(&Q, &Q);
12517         d = rnaf[i];
12518         /* is_neg = (d < 0) ? 1 : 0 */
12519         is_neg = (d >> (8 * sizeof(int) - 1)) & 1;
12520         /* d = abs(d) */
12521         d = (d ^ -is_neg) + is_neg;
12522         d = (d - 1) >> 1;
12523         for (j = 0; j < DRADIX / 2; j++) {
12524             diff = (1 - (-(d ^ j) >> (8 * sizeof(int) - 1))) & 1;
12525             fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(
12526                 lut.X, diff, lut.X, precomp[j].X);
12527             fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(
12528                 lut.Y, diff, lut.Y, precomp[j].Y);
12529             fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(
12530                 lut.Z, diff, lut.Z, precomp[j].Z);
12531         }
12532         /* negate lut point if digit is negative */
12533         fiat_id_tc26_gost_3410_2012_512_paramSetA_opp(out->Y, lut.Y);
12534         fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(lut.Y, is_neg,
12535                                                             lut.Y, out->Y);
12536         point_add_proj(&Q, &Q, &lut);
12537     }
12538
12539 #if defined(_MSC_VER)
12540 #pragma warning(pop)
12541 #endif
12542
12543     /* conditionally subtract P if the scalar was even */
12544     fe_copy(lut.X, precomp[0].X);
12545     fiat_id_tc26_gost_3410_2012_512_paramSetA_opp(lut.Y, precomp[0].Y);
12546     fe_copy(lut.Z, precomp[0].Z);
12547     point_add_proj(&lut, &lut, &Q);
12548     fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(Q.X, scalar[0] & 1,
12549                                                         lut.X, Q.X);
12550     fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(Q.Y, scalar[0] & 1,
12551                                                         lut.Y, Q.Y);
12552     fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(Q.Z, scalar[0] & 1,
12553                                                         lut.Z, Q.Z);
12554
12555     /* convert to affine -- NB depends on coordinate system */
12556     fiat_id_tc26_gost_3410_2012_512_paramSetA_inv(Q.Z, Q.Z);
12557     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(out->X, Q.X, Q.Z);
12558     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(out->Y, Q.Y, Q.Z);
12559 }
12560
12561 /*-
12562  * Fixed scalar multiplication: comb with interleaving.
12563  */
12564 static void fixed_smul_cmb(pt_aff_t *out, const unsigned char scalar[64]) {
12565     int i, j, k, d, diff, is_neg = 0;
12566     int8_t rnaf[103] = {0};
12567     pt_prj_t Q = {0}, R = {0};
12568     pt_aff_t lut = {0};
12569
12570     scalar_rwnaf(rnaf, scalar);
12571
12572     /* initalize accumulator to inf */
12573     fe_set_zero(Q.X);
12574     fe_copy(Q.Y, const_one);
12575     fe_set_zero(Q.Z);
12576
12577 #if defined(_MSC_VER)
12578     /* result still unsigned: yes we know */
12579 #pragma warning(push)
12580 #pragma warning(disable : 4146)
12581 #endif
12582
12583     for (i = 10; i >= 0; i--) {
12584         for (j = 0; i != 10 && j < RADIX; j++) point_double(&Q, &Q);
12585         for (j = 0; j < 11; j++) {
12586             if (j * 11 + i > 102) continue;
12587             d = rnaf[j * 11 + i];
12588             /* is_neg = (d < 0) ? 1 : 0 */
12589             is_neg = (d >> (8 * sizeof(int) - 1)) & 1;
12590             /* d = abs(d) */
12591             d = (d ^ -is_neg) + is_neg;
12592             d = (d - 1) >> 1;
12593             for (k = 0; k < DRADIX / 2; k++) {
12594                 diff = (1 - (-(d ^ k) >> (8 * sizeof(int) - 1))) & 1;
12595                 fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(
12596                     lut.X, diff, lut.X, lut_cmb[j][k].X);
12597                 fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(
12598                     lut.Y, diff, lut.Y, lut_cmb[j][k].Y);
12599             }
12600             /* negate lut point if digit is negative */
12601             fiat_id_tc26_gost_3410_2012_512_paramSetA_opp(out->Y, lut.Y);
12602             fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(lut.Y, is_neg,
12603                                                                 lut.Y, out->Y);
12604             point_add_mixed(&Q, &Q, &lut);
12605         }
12606     }
12607
12608 #if defined(_MSC_VER)
12609 #pragma warning(pop)
12610 #endif
12611
12612     /* conditionally subtract P if the scalar was even */
12613     fe_copy(lut.X, lut_cmb[0][0].X);
12614     fiat_id_tc26_gost_3410_2012_512_paramSetA_opp(lut.Y, lut_cmb[0][0].Y);
12615     point_add_mixed(&R, &Q, &lut);
12616     fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(Q.X, scalar[0] & 1, R.X,
12617                                                         Q.X);
12618     fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(Q.Y, scalar[0] & 1, R.Y,
12619                                                         Q.Y);
12620     fiat_id_tc26_gost_3410_2012_512_paramSetA_selectznz(Q.Z, scalar[0] & 1, R.Z,
12621                                                         Q.Z);
12622
12623     /* convert to affine -- NB depends on coordinate system */
12624     fiat_id_tc26_gost_3410_2012_512_paramSetA_inv(Q.Z, Q.Z);
12625     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(out->X, Q.X, Q.Z);
12626     fiat_id_tc26_gost_3410_2012_512_paramSetA_carry_mul(out->Y, Q.Y, Q.Z);
12627 }
12628
12629 /*-
12630  * Wrapper: simultaneous scalar mutiplication.
12631  * outx, outy := a * G + b * P
12632  * where P = (inx, iny).
12633  * Everything is LE byte ordering.
12634  */
12635 static void point_mul_two(unsigned char outx[64], unsigned char outy[64],
12636                           const unsigned char a[64], const unsigned char b[64],
12637                           const unsigned char inx[64],
12638                           const unsigned char iny[64]) {
12639     pt_aff_t P;
12640
12641     fiat_id_tc26_gost_3410_2012_512_paramSetA_from_bytes(P.X, inx);
12642     fiat_id_tc26_gost_3410_2012_512_paramSetA_from_bytes(P.Y, iny);
12643     /* simultaneous scalar multiplication */
12644     var_smul_wnaf_two(&P, a, b, &P);
12645
12646     fiat_id_tc26_gost_3410_2012_512_paramSetA_to_bytes(outx, P.X);
12647     fiat_id_tc26_gost_3410_2012_512_paramSetA_to_bytes(outy, P.Y);
12648 }
12649
12650 /*-
12651  * Wrapper: fixed scalar mutiplication.
12652  * outx, outy := scalar * G
12653  * Everything is LE byte ordering.
12654  */
12655 static void point_mul_g(unsigned char outx[64], unsigned char outy[64],
12656                         const unsigned char scalar[64]) {
12657     pt_aff_t P;
12658
12659     /* fixed scmul function */
12660     fixed_smul_cmb(&P, scalar);
12661     fiat_id_tc26_gost_3410_2012_512_paramSetA_to_bytes(outx, P.X);
12662     fiat_id_tc26_gost_3410_2012_512_paramSetA_to_bytes(outy, P.Y);
12663 }
12664
12665 /*-
12666  * Wrapper: variable point scalar mutiplication.
12667  * outx, outy := scalar * P
12668  * where P = (inx, iny).
12669  * Everything is LE byte ordering.
12670  */
12671 static void point_mul(unsigned char outx[64], unsigned char outy[64],
12672                       const unsigned char scalar[64],
12673                       const unsigned char inx[64],
12674                       const unsigned char iny[64]) {
12675     pt_aff_t P;
12676
12677     fiat_id_tc26_gost_3410_2012_512_paramSetA_from_bytes(P.X, inx);
12678     fiat_id_tc26_gost_3410_2012_512_paramSetA_from_bytes(P.Y, iny);
12679     /* var scmul function */
12680     var_smul_rwnaf(&P, scalar, &P);
12681     fiat_id_tc26_gost_3410_2012_512_paramSetA_to_bytes(outx, P.X);
12682     fiat_id_tc26_gost_3410_2012_512_paramSetA_to_bytes(outy, P.Y);
12683 }
12684
12685
12686 #include <openssl/ec.h>
12687
12688 /* the zero field element */
12689 static const unsigned char const_zb[64] = {0};
12690
12691 /*-
12692  * An OpenSSL wrapper for simultaneous scalar multiplication.
12693  * r := n * G + m * q
12694  */
12695     int
12696     point_mul_two_id_tc26_gost_3410_2012_512_paramSetA(
12697         const EC_GROUP *group, EC_POINT *r, const BIGNUM *n, const EC_POINT *q,
12698         const BIGNUM *m, BN_CTX *ctx) {
12699     int ret = 0;
12700     unsigned char b_x[64];
12701     unsigned char b_y[64];
12702     unsigned char b_n[64];
12703     unsigned char b_m[64];
12704     BIGNUM *x = NULL, *y = NULL;
12705
12706     BN_CTX_start(ctx);
12707     x = BN_CTX_get(ctx);
12708     if ((y = BN_CTX_get(ctx)) == NULL
12709         /* pull out coords as bytes */
12710         || !EC_POINT_get_affine_coordinates(group, q, x, y, ctx) ||
12711         BN_bn2lebinpad(x, b_x, 64) != 64 || BN_bn2lebinpad(y, b_y, 64) != 64 ||
12712         BN_bn2lebinpad(n, b_n, 64) != 64 || BN_bn2lebinpad(m, b_m, 64) != 64)
12713         goto err;
12714     /* do the simultaneous scalar multiplication */
12715     point_mul_two(b_x, b_y, b_n, b_m, b_x, b_y);
12716     /* check for infinity */
12717     if (CRYPTO_memcmp(const_zb, b_x, 64) == 0 &&
12718         CRYPTO_memcmp(const_zb, b_y, 64) == 0) {
12719         if (!EC_POINT_set_to_infinity(group, r)) goto err;
12720     } else {
12721         /* otherwise, pack the bytes into the result */
12722         if (BN_lebin2bn(b_x, 64, x) == NULL ||
12723             BN_lebin2bn(b_y, 64, y) == NULL ||
12724             !EC_POINT_set_affine_coordinates(group, r, x, y, ctx))
12725             goto err;
12726     }
12727     ret = 1;
12728 err:
12729     BN_CTX_end(ctx);
12730     return ret;
12731 }
12732
12733 /*-
12734  * An OpenSSL wrapper for variable point scalar multiplication.
12735  * r := m * q
12736  */
12737     int
12738     point_mul_id_tc26_gost_3410_2012_512_paramSetA(const EC_GROUP *group,
12739                                                    EC_POINT *r,
12740                                                    const EC_POINT *q,
12741                                                    const BIGNUM *m,
12742                                                    BN_CTX *ctx) {
12743     int ret = 0;
12744     unsigned char b_x[64];
12745     unsigned char b_y[64];
12746     unsigned char b_m[64];
12747     BIGNUM *x = NULL, *y = NULL;
12748
12749     BN_CTX_start(ctx);
12750     x = BN_CTX_get(ctx);
12751     if ((y = BN_CTX_get(ctx)) == NULL
12752         /* pull out coords as bytes */
12753         || !EC_POINT_get_affine_coordinates(group, q, x, y, ctx) ||
12754         BN_bn2lebinpad(x, b_x, 64) != 64 || BN_bn2lebinpad(y, b_y, 64) != 64 ||
12755         BN_bn2lebinpad(m, b_m, 64) != 64)
12756         goto err;
12757     /* do the variable scalar multiplication */
12758     point_mul(b_x, b_y, b_m, b_x, b_y);
12759     /* check for infinity */
12760     if (CRYPTO_memcmp(const_zb, b_x, 64) == 0 &&
12761         CRYPTO_memcmp(const_zb, b_y, 64) == 0) {
12762         if (!EC_POINT_set_to_infinity(group, r)) goto err;
12763     } else {
12764         /* otherwise, pack the bytes into the result */
12765         if (BN_lebin2bn(b_x, 64, x) == NULL ||
12766             BN_lebin2bn(b_y, 64, y) == NULL ||
12767             !EC_POINT_set_affine_coordinates(group, r, x, y, ctx))
12768             goto err;
12769     }
12770     ret = 1;
12771 err:
12772     BN_CTX_end(ctx);
12773     return ret;
12774 }
12775
12776 /*-
12777  * An OpenSSL wrapper for fixed scalar multiplication.
12778  * r := n * G
12779  */
12780     int
12781     point_mul_g_id_tc26_gost_3410_2012_512_paramSetA(const EC_GROUP *group,
12782                                                      EC_POINT *r,
12783                                                      const BIGNUM *n,
12784                                                      BN_CTX *ctx) {
12785     int ret = 0;
12786     unsigned char b_x[64];
12787     unsigned char b_y[64];
12788     unsigned char b_n[64];
12789     BIGNUM *x = NULL, *y = NULL;
12790
12791     BN_CTX_start(ctx);
12792     x = BN_CTX_get(ctx);
12793     if ((y = BN_CTX_get(ctx)) == NULL || BN_bn2lebinpad(n, b_n, 64) != 64)
12794         goto err;
12795     /* do the fixed scalar multiplication */
12796     point_mul_g(b_x, b_y, b_n);
12797     /* check for infinity */
12798     if (CRYPTO_memcmp(const_zb, b_x, 64) == 0 &&
12799         CRYPTO_memcmp(const_zb, b_y, 64) == 0) {
12800         if (!EC_POINT_set_to_infinity(group, r)) goto err;
12801     } else {
12802         /* otherwise, pack the bytes into the result */
12803         if (BN_lebin2bn(b_x, 64, x) == NULL ||
12804             BN_lebin2bn(b_y, 64, y) == NULL ||
12805             !EC_POINT_set_affine_coordinates(group, r, x, y, ctx))
12806             goto err;
12807     }
12808     ret = 1;
12809 err:
12810     BN_CTX_end(ctx);
12811     return ret;
12812 }
12813
12814
12815
12816 #endif /* __SIZEOF_INT128__ */