1 /* Autogenerated: ECCKiila https://gitlab.com/nisec/ecckiila */
5 * Copyright (c) 2020 Luis Rivera-Zamarripa, Jesús-Javier Chi-Domínguez, Billy Bob Brumley
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:
14 * The above copyright notice and this permission notice shall be included in all
15 * copies or substantial portions of the Software.
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
25 #if defined(__SIZEOF_INT128__) && !defined(PEDANTIC)
32 typedef uint64_t fe_t[LIMB_CNT];
33 typedef uint64_t limb_t;
35 #define fe_copy(d, s) memcpy(d, s, sizeof(fe_t))
36 #define fe_set_zero(d) memset(d, 0, sizeof(fe_t))
38 #define fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(c, a, b) \
39 fiat_id_tc26_gost_3410_2012_256_paramSetA_add(c, a, b); \
40 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry(c, c)
41 #define fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(c, a, b) \
42 fiat_id_tc26_gost_3410_2012_256_paramSetA_sub(c, a, b); \
43 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry(c, c)
45 /* Projective points */
60 /* BEGIN verbatim fiat code https://github.com/mit-plv/fiat-crypto */
64 * Copyright (c) 2020 the fiat-crypto authors (see the AUTHORS file)
66 * Permission is hereby granted, free of charge, to any person obtaining a copy
67 * of this software and associated documentation files (the "Software"), to deal
68 * in the Software without restriction, including without limitation the rights
69 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
70 * copies of the Software, and to permit persons to whom the Software is
71 * furnished to do so, subject to the following conditions:
73 * The above copyright notice and this permission notice shall be included in
74 * all copies or substantial portions of the Software.
76 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
77 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
78 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
79 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
80 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
81 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
85 /* Autogenerated: unsaturated_solinas --static id_tc26_gost_3410_2012_256_paramSetA 64 5 '2^256 - 617' */
86 /* curve description: id_tc26_gost_3410_2012_256_paramSetA */
87 /* machine_wordsize = 64 (from "64") */
88 /* requested operations: (all) */
89 /* n = 5 (from "5") */
90 /* s-c = 2^256 - [(1, 617)] (from "2^256 - 617") */
91 /* tight_bounds_multiplier = 1.1 (from "") */
93 /* Computed values: */
94 /* carry_chain = [0, 1, 2, 3, 4, 0, 1] */
95 /* eval z = z[0] + (z[1] << 52) + (z[2] << 103) + (z[3] << 154) + (z[4] << 205) */
96 /* 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) */
99 typedef unsigned char fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1;
100 typedef signed char fiat_id_tc26_gost_3410_2012_256_paramSetA_int1;
101 typedef signed __int128 fiat_id_tc26_gost_3410_2012_256_paramSetA_int128;
102 typedef unsigned __int128 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128;
105 #error "This code only works on a two's complement system"
109 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u52 is an addition with carry.
111 * out1 = (arg1 + arg2 + arg3) mod 2^52
112 * out2 = ⌊(arg1 + arg2 + arg3) / 2^52⌋
116 * arg2: [0x0 ~> 0xfffffffffffff]
117 * arg3: [0x0 ~> 0xfffffffffffff]
119 * out1: [0x0 ~> 0xfffffffffffff]
122 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u52(
123 uint64_t *out1, fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 *out2,
124 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 arg1, uint64_t arg2,
128 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x3;
129 x1 = ((arg1 + arg2) + arg3);
130 x2 = (x1 & UINT64_C(0xfffffffffffff));
131 x3 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(x1 >> 52);
137 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u52 is a subtraction with borrow.
139 * out1 = (-arg1 + arg2 + -arg3) mod 2^52
140 * out2 = -⌊(-arg1 + arg2 + -arg3) / 2^52⌋
144 * arg2: [0x0 ~> 0xfffffffffffff]
145 * arg3: [0x0 ~> 0xfffffffffffff]
147 * out1: [0x0 ~> 0xfffffffffffff]
150 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u52(
151 uint64_t *out1, fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 *out2,
152 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 arg1, uint64_t arg2,
155 fiat_id_tc26_gost_3410_2012_256_paramSetA_int1 x2;
157 x1 = ((int64_t)(arg2 - (int64_t)arg1) - (int64_t)arg3);
158 x2 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_int1)(x1 >> 52);
159 x3 = (x1 & UINT64_C(0xfffffffffffff));
161 *out2 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(0x0 - x2);
165 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u51 is an addition with carry.
167 * out1 = (arg1 + arg2 + arg3) mod 2^51
168 * out2 = ⌊(arg1 + arg2 + arg3) / 2^51⌋
172 * arg2: [0x0 ~> 0x7ffffffffffff]
173 * arg3: [0x0 ~> 0x7ffffffffffff]
175 * out1: [0x0 ~> 0x7ffffffffffff]
178 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u51(
179 uint64_t *out1, fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 *out2,
180 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 arg1, uint64_t arg2,
184 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x3;
185 x1 = ((arg1 + arg2) + arg3);
186 x2 = (x1 & UINT64_C(0x7ffffffffffff));
187 x3 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(x1 >> 51);
193 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u51 is a subtraction with borrow.
195 * out1 = (-arg1 + arg2 + -arg3) mod 2^51
196 * out2 = -⌊(-arg1 + arg2 + -arg3) / 2^51⌋
200 * arg2: [0x0 ~> 0x7ffffffffffff]
201 * arg3: [0x0 ~> 0x7ffffffffffff]
203 * out1: [0x0 ~> 0x7ffffffffffff]
206 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u51(
207 uint64_t *out1, fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 *out2,
208 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 arg1, uint64_t arg2,
211 fiat_id_tc26_gost_3410_2012_256_paramSetA_int1 x2;
213 x1 = ((int64_t)(arg2 - (int64_t)arg1) - (int64_t)arg3);
214 x2 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_int1)(x1 >> 51);
215 x3 = (x1 & UINT64_C(0x7ffffffffffff));
217 *out2 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(0x0 - x2);
221 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u64 is a single-word conditional move.
223 * out1 = (if arg1 = 0 then arg2 else arg3)
227 * arg2: [0x0 ~> 0xffffffffffffffff]
228 * arg3: [0x0 ~> 0xffffffffffffffff]
230 * out1: [0x0 ~> 0xffffffffffffffff]
232 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u64(
233 uint64_t *out1, fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 arg1,
234 uint64_t arg2, uint64_t arg3) {
235 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x1;
239 x2 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_int1)(0x0 - x1) &
240 UINT64_C(0xffffffffffffffff));
241 x3 = ((x2 & arg3) | ((~x2) & arg2));
246 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul multiplies two field elements and reduces the result.
248 * eval out1 mod m = (eval arg1 * eval arg2) mod m
251 * arg1: [[0x0 ~> 0x34cccccccccccb], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664]]
252 * arg2: [[0x0 ~> 0x34cccccccccccb], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664]]
254 * out1: [[0x0 ~> 0x11999999999999], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc]]
256 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(
257 uint64_t out1[5], const uint64_t arg1[5], const uint64_t arg2[5]) {
258 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x1;
259 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x2;
260 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x3;
261 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x4;
262 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x5;
263 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x6;
264 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x7;
265 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x8;
266 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x9;
267 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x10;
268 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x11;
269 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x12;
270 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x13;
271 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x14;
272 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x15;
273 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x16;
274 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x17;
275 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x18;
276 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x19;
277 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x20;
278 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x21;
279 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x22;
280 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x23;
281 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x24;
282 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x25;
283 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x26;
284 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x27;
286 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x29;
287 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x30;
288 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x31;
289 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x32;
290 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x33;
291 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x34;
293 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x36;
294 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x37;
296 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x39;
299 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x42;
302 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x45;
303 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x46;
307 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x50;
310 x1 = (UINT16_C(0x269) *
311 ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[4]) *
313 x2 = (UINT16_C(0x269) *
314 ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[4]) *
316 x3 = (UINT16_C(0x269) *
317 ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[4]) *
319 x4 = (UINT16_C(0x269) *
320 (((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[4]) *
323 x5 = (UINT16_C(0x269) *
324 ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[3]) *
326 x6 = (UINT16_C(0x269) *
327 ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[3]) *
329 x7 = (UINT16_C(0x269) *
330 (((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[3]) *
333 x8 = (UINT16_C(0x269) *
334 ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[2]) *
336 x9 = (UINT16_C(0x269) *
337 (((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[2]) *
340 x10 = (UINT16_C(0x269) *
341 (((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[1]) *
344 x11 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[4]) *
346 x12 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[3]) *
348 x13 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[3]) *
350 x14 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[2]) *
352 x15 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[2]) *
354 x16 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[2]) *
356 x17 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[1]) *
358 x18 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[1]) *
360 x19 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[1]) *
362 x20 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[1]) *
364 x21 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[0]) *
366 x22 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[0]) *
368 x23 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[0]) *
370 x24 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[0]) *
372 x25 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[0]) *
374 x26 = (x25 + (x10 + (x9 + (x7 + x4))));
376 x28 = (uint64_t)(x26 & UINT64_C(0xfffffffffffff));
377 x29 = (x21 + (x17 + (x14 + (x12 + x11))));
378 x30 = (x22 + (x18 + (x15 + (x13 + x1))));
379 x31 = (x23 + (x19 + (x16 + (x5 + x2))));
380 x32 = (x24 + (x20 + (x8 + (x6 + x3))));
383 x35 = (uint64_t)(x33 & UINT64_C(0x7ffffffffffff));
386 x38 = (uint64_t)(x36 & UINT64_C(0x7ffffffffffff));
388 x40 = (uint64_t)(x39 >> 51);
389 x41 = (uint64_t)(x39 & UINT64_C(0x7ffffffffffff));
391 x43 = (uint64_t)(x42 >> 51);
392 x44 = (uint64_t)(x42 & UINT64_C(0x7ffffffffffff));
393 x45 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)UINT16_C(0x269) *
396 x47 = (uint64_t)(x46 >> 52);
397 x48 = (uint64_t)(x46 & UINT64_C(0xfffffffffffff));
399 x50 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(x49 >> 51);
400 x51 = (x49 & UINT64_C(0x7ffffffffffff));
410 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square squares a field element and reduces the result.
412 * eval out1 mod m = (eval arg1 * eval arg1) mod m
415 * arg1: [[0x0 ~> 0x34cccccccccccb], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664]]
417 * out1: [[0x0 ~> 0x11999999999999], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc]]
419 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(
420 uint64_t out1[5], const uint64_t arg1[5]) {
429 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x9;
430 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x10;
431 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x11;
432 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x12;
433 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x13;
434 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x14;
435 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x15;
436 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x16;
437 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x17;
438 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x18;
439 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x19;
440 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x20;
441 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x21;
442 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x22;
443 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x23;
444 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x24;
445 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x25;
447 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x27;
448 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x28;
449 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x29;
450 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x30;
451 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x31;
452 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x32;
454 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x34;
455 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x35;
457 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x37;
460 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x40;
463 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x43;
464 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128 x44;
468 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x48;
471 x1 = ((arg1[4]) * UINT16_C(0x269));
473 x3 = ((arg1[4]) * 0x2);
474 x4 = ((arg1[3]) * UINT16_C(0x269));
476 x6 = ((arg1[3]) * 0x2);
477 x7 = ((arg1[2]) * 0x2);
478 x8 = ((arg1[1]) * 0x2);
479 x9 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[4]) * x1);
480 x10 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[3]) * x2);
481 x11 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[3]) * x4);
482 x12 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[2]) * x2);
483 x13 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[2]) *
485 x14 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[2]) *
487 x15 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[1]) *
489 x16 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[1]) *
491 x17 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[1]) *
493 x18 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[1]) *
495 x19 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[0]) * x3);
496 x20 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[0]) * x6);
497 x21 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[0]) * x7);
498 x22 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[0]) * x8);
499 x23 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)(arg1[0]) *
501 x24 = (x23 + (x15 + x13));
503 x26 = (uint64_t)(x24 & UINT64_C(0xfffffffffffff));
504 x27 = (x19 + (x16 + x14));
505 x28 = (x20 + (x17 + x9));
506 x29 = (x21 + (x18 + x10));
507 x30 = (x22 + (x12 + x11));
510 x33 = (uint64_t)(x31 & UINT64_C(0x7ffffffffffff));
513 x36 = (uint64_t)(x34 & UINT64_C(0x7ffffffffffff));
515 x38 = (uint64_t)(x37 >> 51);
516 x39 = (uint64_t)(x37 & UINT64_C(0x7ffffffffffff));
518 x41 = (uint64_t)(x40 >> 51);
519 x42 = (uint64_t)(x40 & UINT64_C(0x7ffffffffffff));
520 x43 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint128)UINT16_C(0x269) *
523 x45 = (uint64_t)(x44 >> 52);
524 x46 = (uint64_t)(x44 & UINT64_C(0xfffffffffffff));
526 x48 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(x47 >> 51);
527 x49 = (x47 & UINT64_C(0x7ffffffffffff));
537 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_carry reduces a field element.
539 * eval out1 mod m = eval arg1 mod m
542 * arg1: [[0x0 ~> 0x34cccccccccccb], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664]]
544 * out1: [[0x0 ~> 0x11999999999999], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc]]
546 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_carry(
547 uint64_t out1[5], const uint64_t arg1[5]) {
561 x2 = ((x1 >> 52) + (arg1[1]));
562 x3 = ((x2 >> 51) + (arg1[2]));
563 x4 = ((x3 >> 51) + (arg1[3]));
564 x5 = ((x4 >> 51) + (arg1[4]));
565 x6 = ((x1 & UINT64_C(0xfffffffffffff)) + (UINT16_C(0x269) * (x5 >> 51)));
566 x7 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(x6 >> 52) +
567 (x2 & UINT64_C(0x7ffffffffffff)));
568 x8 = (x6 & UINT64_C(0xfffffffffffff));
569 x9 = (x7 & UINT64_C(0x7ffffffffffff));
570 x10 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(x7 >> 51) +
571 (x3 & UINT64_C(0x7ffffffffffff)));
572 x11 = (x4 & UINT64_C(0x7ffffffffffff));
573 x12 = (x5 & UINT64_C(0x7ffffffffffff));
582 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_add adds two field elements.
584 * eval out1 mod m = (eval arg1 + eval arg2) mod m
587 * arg1: [[0x0 ~> 0x11999999999999], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc]]
588 * arg2: [[0x0 ~> 0x11999999999999], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc]]
590 * out1: [[0x0 ~> 0x34cccccccccccb], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664]]
592 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_add(
593 uint64_t out1[5], const uint64_t arg1[5], const uint64_t arg2[5]) {
599 x1 = ((arg1[0]) + (arg2[0]));
600 x2 = ((arg1[1]) + (arg2[1]));
601 x3 = ((arg1[2]) + (arg2[2]));
602 x4 = ((arg1[3]) + (arg2[3]));
603 x5 = ((arg1[4]) + (arg2[4]));
612 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_sub subtracts two field elements.
614 * eval out1 mod m = (eval arg1 - eval arg2) mod m
617 * arg1: [[0x0 ~> 0x11999999999999], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc]]
618 * arg2: [[0x0 ~> 0x11999999999999], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc]]
620 * out1: [[0x0 ~> 0x34cccccccccccb], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664]]
622 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_sub(
623 uint64_t out1[5], const uint64_t arg1[5], const uint64_t arg2[5]) {
629 x1 = ((UINT64_C(0x1ffffffffffb2e) + (arg1[0])) - (arg2[0]));
630 x2 = ((UINT64_C(0xffffffffffffe) + (arg1[1])) - (arg2[1]));
631 x3 = ((UINT64_C(0xffffffffffffe) + (arg1[2])) - (arg2[2]));
632 x4 = ((UINT64_C(0xffffffffffffe) + (arg1[3])) - (arg2[3]));
633 x5 = ((UINT64_C(0xffffffffffffe) + (arg1[4])) - (arg2[4]));
642 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_opp negates a field element.
644 * eval out1 mod m = -eval arg1 mod m
647 * arg1: [[0x0 ~> 0x11999999999999], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc]]
649 * out1: [[0x0 ~> 0x34cccccccccccb], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664], [0x0 ~> 0x1a666666666664]]
651 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(
652 uint64_t out1[5], const uint64_t arg1[5]) {
658 x1 = (UINT64_C(0x1ffffffffffb2e) - (arg1[0]));
659 x2 = (UINT64_C(0xffffffffffffe) - (arg1[1]));
660 x3 = (UINT64_C(0xffffffffffffe) - (arg1[2]));
661 x4 = (UINT64_C(0xffffffffffffe) - (arg1[3]));
662 x5 = (UINT64_C(0xffffffffffffe) - (arg1[4]));
671 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz is a multi-limb conditional select.
673 * eval out1 = (if arg1 = 0 then eval arg2 else eval arg3)
677 * arg2: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]]
678 * arg3: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]]
680 * out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]]
682 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(
683 uint64_t out1[5], fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 arg1,
684 const uint64_t arg2[5], const uint64_t arg3[5]) {
690 fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u64(&x1, arg1, (arg2[0]),
692 fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u64(&x2, arg1, (arg2[1]),
694 fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u64(&x3, arg1, (arg2[2]),
696 fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u64(&x4, arg1, (arg2[3]),
698 fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u64(&x5, arg1, (arg2[4]),
708 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_to_bytes serializes a field element to bytes in little-endian order.
710 * out1 = map (λ x, ⌊((eval arg1 mod m) mod 2^(8 * (x + 1))) / 2^(8 * x)⌋) [0..31]
713 * arg1: [[0x0 ~> 0x11999999999999], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc]]
715 * 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]]
717 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_to_bytes(
718 uint8_t out1[32], const uint64_t arg1[5]) {
720 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x2;
722 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x4;
724 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x6;
726 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x8;
728 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x10;
731 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x13;
733 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x15;
735 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x17;
737 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x19;
739 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x21;
810 fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u52(
811 &x1, &x2, 0x0, (arg1[0]), UINT64_C(0xffffffffffd97));
812 fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u51(
813 &x3, &x4, x2, (arg1[1]), UINT64_C(0x7ffffffffffff));
814 fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u51(
815 &x5, &x6, x4, (arg1[2]), UINT64_C(0x7ffffffffffff));
816 fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u51(
817 &x7, &x8, x6, (arg1[3]), UINT64_C(0x7ffffffffffff));
818 fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u51(
819 &x9, &x10, x8, (arg1[4]), UINT64_C(0x7ffffffffffff));
820 fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u64(
821 &x11, x10, 0x0, UINT64_C(0xffffffffffffffff));
822 fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u52(
823 &x12, &x13, 0x0, x1, (x11 & UINT64_C(0xffffffffffd97)));
824 fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u51(
825 &x14, &x15, x13, x3, (x11 & UINT64_C(0x7ffffffffffff)));
826 fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u51(
827 &x16, &x17, x15, x5, (x11 & UINT64_C(0x7ffffffffffff)));
828 fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u51(
829 &x18, &x19, x17, x7, (x11 & UINT64_C(0x7ffffffffffff)));
830 fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u51(
831 &x20, &x21, x19, x9, (x11 & UINT64_C(0x7ffffffffffff)));
837 x27 = (uint8_t)(x12 & UINT8_C(0xff));
839 x29 = (uint8_t)(x26 & UINT8_C(0xff));
841 x31 = (uint8_t)(x28 & UINT8_C(0xff));
843 x33 = (uint8_t)(x30 & UINT8_C(0xff));
845 x35 = (uint8_t)(x32 & UINT8_C(0xff));
846 x36 = (uint8_t)(x34 >> 8);
847 x37 = (uint8_t)(x34 & UINT8_C(0xff));
850 x40 = (uint8_t)(x38 & UINT8_C(0xff));
852 x42 = (uint8_t)(x39 & UINT8_C(0xff));
854 x44 = (uint8_t)(x41 & UINT8_C(0xff));
856 x46 = (uint8_t)(x43 & UINT8_C(0xff));
858 x48 = (uint8_t)(x45 & UINT8_C(0xff));
859 x49 = (uint8_t)(x47 >> 8);
860 x50 = (uint8_t)(x47 & UINT8_C(0xff));
863 x53 = (uint8_t)(x51 & UINT8_C(0xff));
865 x55 = (uint8_t)(x52 & UINT8_C(0xff));
867 x57 = (uint8_t)(x54 & UINT8_C(0xff));
869 x59 = (uint8_t)(x56 & UINT8_C(0xff));
871 x61 = (uint8_t)(x58 & UINT8_C(0xff));
873 x63 = (uint8_t)(x60 & UINT8_C(0xff));
874 x64 = (uint8_t)(x62 >> 8);
875 x65 = (uint8_t)(x62 & UINT8_C(0xff));
878 x68 = (uint8_t)(x66 & UINT8_C(0xff));
880 x70 = (uint8_t)(x67 & UINT8_C(0xff));
882 x72 = (uint8_t)(x69 & UINT8_C(0xff));
884 x74 = (uint8_t)(x71 & UINT8_C(0xff));
886 x76 = (uint8_t)(x73 & UINT8_C(0xff));
887 x77 = (uint8_t)(x75 >> 8);
888 x78 = (uint8_t)(x75 & UINT8_C(0xff));
891 x81 = (uint8_t)(x79 & UINT8_C(0xff));
893 x83 = (uint8_t)(x80 & UINT8_C(0xff));
895 x85 = (uint8_t)(x82 & UINT8_C(0xff));
897 x87 = (uint8_t)(x84 & UINT8_C(0xff));
899 x89 = (uint8_t)(x86 & UINT8_C(0xff));
900 x90 = (uint8_t)(x88 >> 8);
901 x91 = (uint8_t)(x88 & UINT8_C(0xff));
937 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_from_bytes deserializes a field element from bytes in little-endian order.
939 * eval out1 mod m = bytes_eval arg1 mod m
942 * 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]]
944 * out1: [[0x0 ~> 0x11999999999999], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc], [0x0 ~> 0x8cccccccccccc]]
946 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_from_bytes(
947 uint64_t out1[5], const uint8_t arg1[32]) {
988 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x41;
997 x1 = ((uint64_t)(arg1[31]) << 43);
998 x2 = ((uint64_t)(arg1[30]) << 35);
999 x3 = ((uint64_t)(arg1[29]) << 27);
1000 x4 = ((uint64_t)(arg1[28]) << 19);
1001 x5 = ((uint64_t)(arg1[27]) << 11);
1002 x6 = ((uint64_t)(arg1[26]) << 3);
1003 x7 = ((uint64_t)(arg1[25]) << 46);
1004 x8 = ((uint64_t)(arg1[24]) << 38);
1005 x9 = ((uint64_t)(arg1[23]) << 30);
1006 x10 = ((uint64_t)(arg1[22]) << 22);
1007 x11 = ((uint64_t)(arg1[21]) << 14);
1008 x12 = ((uint64_t)(arg1[20]) << 6);
1009 x13 = ((uint64_t)(arg1[19]) << 49);
1010 x14 = ((uint64_t)(arg1[18]) << 41);
1011 x15 = ((uint64_t)(arg1[17]) << 33);
1012 x16 = ((uint64_t)(arg1[16]) << 25);
1013 x17 = ((uint64_t)(arg1[15]) << 17);
1014 x18 = ((uint64_t)(arg1[14]) << 9);
1015 x19 = ((uint64_t)(arg1[13]) * 0x2);
1016 x20 = ((uint64_t)(arg1[12]) << 44);
1017 x21 = ((uint64_t)(arg1[11]) << 36);
1018 x22 = ((uint64_t)(arg1[10]) << 28);
1019 x23 = ((uint64_t)(arg1[9]) << 20);
1020 x24 = ((uint64_t)(arg1[8]) << 12);
1021 x25 = ((uint64_t)(arg1[7]) << 4);
1022 x26 = ((uint64_t)(arg1[6]) << 48);
1023 x27 = ((uint64_t)(arg1[5]) << 40);
1024 x28 = ((uint64_t)(arg1[4]) << 32);
1025 x29 = ((uint64_t)(arg1[3]) << 24);
1026 x30 = ((uint64_t)(arg1[2]) << 16);
1027 x31 = ((uint64_t)(arg1[1]) << 8);
1029 x33 = (x32 + (x31 + (x30 + (x29 + (x28 + (x27 + x26))))));
1030 x34 = (uint8_t)(x33 >> 52);
1031 x35 = (x33 & UINT64_C(0xfffffffffffff));
1032 x36 = (x6 + (x5 + (x4 + (x3 + (x2 + x1)))));
1033 x37 = (x12 + (x11 + (x10 + (x9 + (x8 + x7)))));
1034 x38 = (x19 + (x18 + (x17 + (x16 + (x15 + (x14 + x13))))));
1035 x39 = (x25 + (x24 + (x23 + (x22 + (x21 + x20)))));
1037 x41 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(x40 >> 51);
1038 x42 = (x40 & UINT64_C(0x7ffffffffffff));
1040 x44 = (uint8_t)(x43 >> 51);
1041 x45 = (x43 & UINT64_C(0x7ffffffffffff));
1043 x47 = (uint8_t)(x46 >> 51);
1044 x48 = (x46 & UINT64_C(0x7ffffffffffff));
1053 /* END verbatim fiat code */
1056 * Finite field inversion via FLT.
1057 * NB: this is not a real Fiat function, just named that way for consistency.
1058 * Autogenerated: ecp/id_tc26_gost_3410_2012_256_paramSetA/fe_inv.op3
1059 * custom repunit addition chain
1061 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_inv(fe_t output,
1064 /* temporary variables */
1065 fe_t acc, t16, t164, t2, t246, t32, t4, t64, t8, t80, t82;
1067 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t1);
1068 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t2, acc, t1);
1069 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t2);
1070 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
1071 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t4, acc, t2);
1072 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t4);
1073 for (i = 0; i < 3; i++)
1074 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
1075 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t8, acc, t4);
1076 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t8);
1077 for (i = 0; i < 7; i++)
1078 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
1079 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t16, acc, t8);
1080 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t16);
1081 for (i = 0; i < 15; i++)
1082 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
1083 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t32, acc, t16);
1084 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t32);
1085 for (i = 0; i < 31; i++)
1086 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
1087 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t64, acc, t32);
1088 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t64);
1089 for (i = 0; i < 15; i++)
1090 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
1091 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t80, acc, t16);
1092 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t80);
1093 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
1094 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t82, acc, t2);
1095 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t82);
1096 for (i = 0; i < 81; i++)
1097 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
1098 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t164, acc, t82);
1099 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t164);
1100 for (i = 0; i < 81; i++)
1101 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
1102 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t246, acc, t82);
1103 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t246);
1104 for (i = 0; i < 2; i++)
1105 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
1106 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(acc, acc, t2);
1107 for (i = 0; i < 3; i++)
1108 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
1109 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(acc, acc, t1);
1110 for (i = 0; i < 2; i++)
1111 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
1112 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(acc, acc, t1);
1113 for (i = 0; i < 2; i++)
1114 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
1115 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(output, acc, t1);
1118 /* curve coefficient constants */
1120 static const limb_t const_one[5] = {
1121 UINT64_C(0x0000000000000001), UINT64_C(0x0000000000000000),
1122 UINT64_C(0x0000000000000000), UINT64_C(0x0000000000000000),
1123 UINT64_C(0x0000000000000000)};
1125 static const limb_t const_d[5] = {
1126 UINT64_C(0x0002C32D6DC7BFFB), UINT64_C(0x0002897009AF7E52),
1127 UINT64_C(0x0005AA3026573BEC), UINT64_C(0x0006A055E2F0E73E),
1128 UINT64_C(0x0000302FB5BE0C1F)};
1130 static const limb_t const_S[5] = {
1131 UINT64_C(0x00074F34A48E0ECD), UINT64_C(0x00075DA3FD94206B),
1132 UINT64_C(0x00029573F66A3104), UINT64_C(0x000057EA8743C630),
1133 UINT64_C(0x0003F3F412907CF8)};
1135 static const limb_t const_T[5] = {
1136 UINT64_C(0x000075DCE7A14AAA), UINT64_C(0x0005C192AC47EA63),
1137 UINT64_C(0x0000F1B2B10E89FC), UINT64_C(0x0007C563A5D2D135),
1138 UINT64_C(0x00000807F39FACAF)};
1140 /* LUT for scalar multiplication by comb interleaving */
1141 static const pt_aff_t lut_cmb[14][16] = {
1143 {{UINT64_C(0x000000000000000D), UINT64_C(0x0000000000000000),
1144 UINT64_C(0x0000000000000000), UINT64_C(0x0000000000000000),
1145 UINT64_C(0x0000000000000000)},
1146 {UINT64_C(0x000B2592DBA300E7), UINT64_C(0x0003E87F22E81F92),
1147 UINT64_C(0x00060EC939CFDF1B), UINT64_C(0x0006CD212230E3EA),
1148 UINT64_C(0x00030650F195523A)},
1149 {UINT64_C(0x0000E8752747155F), UINT64_C(0x0002CE74C5C99A73),
1150 UINT64_C(0x0006C037EF8E5465), UINT64_C(0x00006AAEBC7B92EB),
1151 UINT64_C(0x0007521C44952CFD)}},
1152 {{UINT64_C(0x000A63D93451134C), UINT64_C(0x0003F7A46C1C4CA7),
1153 UINT64_C(0x0002AF35693661CE), UINT64_C(0x0005313F13E9CC60),
1154 UINT64_C(0x00054E15958A5D97)},
1155 {UINT64_C(0x0004525DDCDB5791), UINT64_C(0x000736AACCCB7BC8),
1156 UINT64_C(0x000174F4885153CF), UINT64_C(0x0000CB27666A2367),
1157 UINT64_C(0x00016BDEBB39E143)},
1158 {UINT64_C(0x000C732788CBC030), UINT64_C(0x0005C721E676D06F),
1159 UINT64_C(0x00024101FDBBCCE2), UINT64_C(0x00059473AE8CD7CA),
1160 UINT64_C(0x000586898AC013B2)}},
1161 {{UINT64_C(0x000A894E457058AD), UINT64_C(0x00047D7F48E61013),
1162 UINT64_C(0x00035B4A672FE227), UINT64_C(0x0002A23302C060B2),
1163 UINT64_C(0x0000F011D09FB149)},
1164 {UINT64_C(0x000FB80EB0B22BCC), UINT64_C(0x000606DA3C1FAC0B),
1165 UINT64_C(0x00049BB0CE05B2EE), UINT64_C(0x000513F1BE099F41),
1166 UINT64_C(0x0002AEE30C375862)},
1167 {UINT64_C(0x0004ED5422831C0C), UINT64_C(0x0007ED2E735EF7E7),
1168 UINT64_C(0x0006F38521F75F30), UINT64_C(0x00040F086DBFA045),
1169 UINT64_C(0x0002BA6DCB264756)}},
1170 {{UINT64_C(0x000E66CD5DB0B356), UINT64_C(0x00068408F9A4857D),
1171 UINT64_C(0x0001F32E8FC1FD9F), UINT64_C(0x0006283C082BF3EE),
1172 UINT64_C(0x0007B28870E5B67C)},
1173 {UINT64_C(0x000FE1FDB8EFDCBE), UINT64_C(0x0003F21273425384),
1174 UINT64_C(0x0005870EEC15951B), UINT64_C(0x0006C844F52108D5),
1175 UINT64_C(0x0001CD6F3261AFA2)},
1176 {UINT64_C(0x000712D2BEAA7E64), UINT64_C(0x0006CA4E1492A890),
1177 UINT64_C(0x0001F6F63F92C63C), UINT64_C(0x0007E2FFA1F1C544),
1178 UINT64_C(0x0002725A45A8E238)}},
1179 {{UINT64_C(0x0003E27F874C6781), UINT64_C(0x000080BDDC3E44D5),
1180 UINT64_C(0x0005AFC7A11A0693), UINT64_C(0x0001B7278AA23AFD),
1181 UINT64_C(0x0004D7CF0D085A3B)},
1182 {UINT64_C(0x000D80090DD1AE96), UINT64_C(0x0002433971543626),
1183 UINT64_C(0x000276F2FB600A27), UINT64_C(0x0005E6BA3FC73B39),
1184 UINT64_C(0x0005F6DBA95D6230)},
1185 {UINT64_C(0x000E7885A2499A0E), UINT64_C(0x0004547B7F6C185E),
1186 UINT64_C(0x000003DCACBBA1C5), UINT64_C(0x000642667D8CF12B),
1187 UINT64_C(0x0002EA8E4237A0D7)}},
1188 {{UINT64_C(0x000FDE7B60226F30), UINT64_C(0x0006E61454CC4C1B),
1189 UINT64_C(0x000479C4C24E0377), UINT64_C(0x0000B58C33813041),
1190 UINT64_C(0x0002403059A551B8)},
1191 {UINT64_C(0x000F0EF2E06AE25F), UINT64_C(0x00065B351500FA13),
1192 UINT64_C(0x0004884D79149E34), UINT64_C(0x00020A52F78F4D69),
1193 UINT64_C(0x00052A46E43D1E6F)},
1194 {UINT64_C(0x000D0ECC557F4E9D), UINT64_C(0x0007D12B76DDBF72),
1195 UINT64_C(0x00001E35D93266D1), UINT64_C(0x00060EC982223C71),
1196 UINT64_C(0x0001388A4FBA5CC2)}},
1197 {{UINT64_C(0x000288DD0895A16C), UINT64_C(0x000602071D0EFE2E),
1198 UINT64_C(0x0007DEA3E3BA4068), UINT64_C(0x00049DB99EA55E0F),
1199 UINT64_C(0x00057C4FBA5BF59F)},
1200 {UINT64_C(0x00015BEBA4E2B732), UINT64_C(0x0001F7F8E714E8B3),
1201 UINT64_C(0x0000A952EF156C40), UINT64_C(0x00017371509C8E81),
1202 UINT64_C(0x000362B2B97378ED)},
1203 {UINT64_C(0x000A85D2D8D51136), UINT64_C(0x0005F222A81C7F67),
1204 UINT64_C(0x0007182E92B465DA), UINT64_C(0x00037F522C4E8E6D),
1205 UINT64_C(0x0004310842F64A2B)}},
1206 {{UINT64_C(0x0005A383213DC33C), UINT64_C(0x0007E9B816CD42C6),
1207 UINT64_C(0x0007FA8AE87087AA), UINT64_C(0x0004E55F40D4A3EE),
1208 UINT64_C(0x0004F6D263536B6D)},
1209 {UINT64_C(0x00020F67059F55A3), UINT64_C(0x00007763EEA276D3),
1210 UINT64_C(0x00019A17F705B71A), UINT64_C(0x0005944E63EB82FE),
1211 UINT64_C(0x0007650A0DC5D1CB)},
1212 {UINT64_C(0x000FCD65DD4C828B), UINT64_C(0x0004CA6637691EA4),
1213 UINT64_C(0x0003CCA5D1052701), UINT64_C(0x000712031F0647A6),
1214 UINT64_C(0x00021CFF42584B2A)}},
1215 {{UINT64_C(0x0006C8A92F922362), UINT64_C(0x00044311FB926B9A),
1216 UINT64_C(0x00024A255F064898), UINT64_C(0x0004502C0490E488),
1217 UINT64_C(0x000181B9C7BE07A7)},
1218 {UINT64_C(0x000AC7EB3F012FCF), UINT64_C(0x00066FE14D676159),
1219 UINT64_C(0x0000E913992C9940), UINT64_C(0x0005A66B28860B80),
1220 UINT64_C(0x0004FA013BB9A8C7)},
1221 {UINT64_C(0x0000AD18CD3393AB), UINT64_C(0x000615E7DB492BCF),
1222 UINT64_C(0x00065C59E4108193), UINT64_C(0x00001C03C21B9CD4),
1223 UINT64_C(0x00053FD4D84C40B2)}},
1224 {{UINT64_C(0x0003FC89A2C6B0CB), UINT64_C(0x0000F3FE6593C6B3),
1225 UINT64_C(0x00033E7B9EFD7774), UINT64_C(0x000202569ACD3FD6),
1226 UINT64_C(0x000304E71BD74A19)},
1227 {UINT64_C(0x00070B3E67C53736), UINT64_C(0x00062C9877C0935F),
1228 UINT64_C(0x00005596CE3DED78), UINT64_C(0x000065742F67B602),
1229 UINT64_C(0x0001F8FD1E49E6FF)},
1230 {UINT64_C(0x000C98D8B880CCBF), UINT64_C(0x0002C564715F7115),
1231 UINT64_C(0x0003131E65C288F0), UINT64_C(0x00032E11B2E67FC3),
1232 UINT64_C(0x000306235C4203E9)}},
1233 {{UINT64_C(0x0002EE57BC2F49E9), UINT64_C(0x00072B3E30AC4A02),
1234 UINT64_C(0x00007DB1E3840852), UINT64_C(0x0001DD33D665342A),
1235 UINT64_C(0x0001A7633225AEB5)},
1236 {UINT64_C(0x000B7F7B5B762A44), UINT64_C(0x000331A035435FA2),
1237 UINT64_C(0x00067E3DC1DDB9A7), UINT64_C(0x0004B831B6E64D06),
1238 UINT64_C(0x0006F2281134099E)},
1239 {UINT64_C(0x000B980EF7392E55), UINT64_C(0x0000B89E617A9CA2),
1240 UINT64_C(0x0007ABA1A8BE9857), UINT64_C(0x00039ACA46853BD7),
1241 UINT64_C(0x00075B4D3E20EED0)}},
1242 {{UINT64_C(0x000250EDAC297799), UINT64_C(0x0005F2C18C18BF27),
1243 UINT64_C(0x0001CA515336C8CA), UINT64_C(0x000559E66BDEB0DF),
1244 UINT64_C(0x0001DEEDAD609A8E)},
1245 {UINT64_C(0x000955E31C58DEDB), UINT64_C(0x000669D9C0842B27),
1246 UINT64_C(0x0006DEB790D54552), UINT64_C(0x0003F019C46019DA),
1247 UINT64_C(0x000471F509C91C79)},
1248 {UINT64_C(0x000732102C57B4C9), UINT64_C(0x0006A2A9C28278B1),
1249 UINT64_C(0x0002324651BB700F), UINT64_C(0x00035DAF397E77FD),
1250 UINT64_C(0x000663BBD174F83C)}},
1251 {{UINT64_C(0x000B929354FC042F), UINT64_C(0x00011C492ECCD647),
1252 UINT64_C(0x00009741F291BEF2), UINT64_C(0x0001B4C7302C0158),
1253 UINT64_C(0x00053AE1A0A0CF65)},
1254 {UINT64_C(0x0003EF8B2C9BC0FD), UINT64_C(0x00002CC7CA0F574C),
1255 UINT64_C(0x0006D4B65A91C0C0), UINT64_C(0x00037510A240479F),
1256 UINT64_C(0x0000C64FA252A385)},
1257 {UINT64_C(0x000A88BD59ED7C65), UINT64_C(0x0007ADDAE9CF1B08),
1258 UINT64_C(0x00019BA0F9C07F82), UINT64_C(0x000678DB16C95452),
1259 UINT64_C(0x000056623A2D43CD)}},
1260 {{UINT64_C(0x000B7E8A540D0BB7), UINT64_C(0x000584F51D57A3A5),
1261 UINT64_C(0x0001D8F204E79366), UINT64_C(0x00050AB42D36BB78),
1262 UINT64_C(0x0001F1939E53C5F0)},
1263 {UINT64_C(0x0006F36130EDF74C), UINT64_C(0x0004F887F8A3C1AE),
1264 UINT64_C(0x000287BA42F1A8B2), UINT64_C(0x00059F26236FEDC0),
1265 UINT64_C(0x0004E7E15665AB6B)},
1266 {UINT64_C(0x000BEF0A5861C3BC), UINT64_C(0x0001C09CD88554A1),
1267 UINT64_C(0x00061D92810426B4), UINT64_C(0x0000B7288E75D464),
1268 UINT64_C(0x0006309911A5EDED)}},
1269 {{UINT64_C(0x00085B811B64F095), UINT64_C(0x0005D8DFEF0DA78A),
1270 UINT64_C(0x0000FAC6BD61618C), UINT64_C(0x0004BAAA6C8B2729),
1271 UINT64_C(0x0004B56E9D2ABD89)},
1272 {UINT64_C(0x00043E639CD4D3BA), UINT64_C(0x00074DEABEABDB28),
1273 UINT64_C(0x0007E3FBA43ED6F6), UINT64_C(0x0003AEE8B7AFF1C3),
1274 UINT64_C(0x0003F53F79D2EE85)},
1275 {UINT64_C(0x000D24432D4F4AA5), UINT64_C(0x00078D7CF1ED698D),
1276 UINT64_C(0x0004FF1A468ED10E), UINT64_C(0x000401D16C0D8D9F),
1277 UINT64_C(0x0002F258FE117334)}},
1278 {{UINT64_C(0x000FB19D593A119F), UINT64_C(0x000573B9C8EF8EF8),
1279 UINT64_C(0x0003D940302F6503), UINT64_C(0x000182EF3D826EE0),
1280 UINT64_C(0x0003F7471C590F65)},
1281 {UINT64_C(0x000299B06DAA3C6C), UINT64_C(0x0007746E79EDD442),
1282 UINT64_C(0x0003AC79E8C5E3A4), UINT64_C(0x0007EEC70EB2D955),
1283 UINT64_C(0x000725068BB9E5F2)},
1284 {UINT64_C(0x0002BC325E5A930B), UINT64_C(0x000107F46E629456),
1285 UINT64_C(0x000640B07B73E5D1), UINT64_C(0x00001279DBE60561),
1286 UINT64_C(0x000225709C5657E7)}},
1289 {{UINT64_C(0x0000192B0CEABA3B), UINT64_C(0x0000C849471353C7),
1290 UINT64_C(0x0007933577181965), UINT64_C(0x000142C9EA69016E),
1291 UINT64_C(0x0004567E065866D3)},
1292 {UINT64_C(0x000B6B66959B52D6), UINT64_C(0x000430844ADC8F3E),
1293 UINT64_C(0x0006380BD764FFC3), UINT64_C(0x00016D901A803EAC),
1294 UINT64_C(0x000086B9A477DC01)},
1295 {UINT64_C(0x00023367321E8B93), UINT64_C(0x00032EA758921A81),
1296 UINT64_C(0x0004882218493C4B), UINT64_C(0x000363B5842D9A7D),
1297 UINT64_C(0x00015A99D8110971)}},
1298 {{UINT64_C(0x000300698CE29666), UINT64_C(0x0004EECA6154042B),
1299 UINT64_C(0x000166B994CFB4CC), UINT64_C(0x0004ACF422430E4C),
1300 UINT64_C(0x000025F72D8D2619)},
1301 {UINT64_C(0x000675E071BC36F8), UINT64_C(0x0004DFF904D1F8C7),
1302 UINT64_C(0x0003D505499703DF), UINT64_C(0x00020099265EDEB5),
1303 UINT64_C(0x0003CC88B51F7700)},
1304 {UINT64_C(0x0007D2FCAA25E5B3), UINT64_C(0x000265D6E2479291),
1305 UINT64_C(0x000011547C45B8FB), UINT64_C(0x0007BB46D4B019E2),
1306 UINT64_C(0x00056F6CD9966342)}},
1307 {{UINT64_C(0x000716456F1AF846), UINT64_C(0x0006EC66D0F766DB),
1308 UINT64_C(0x00046A2790A7CDEB), UINT64_C(0x0007D9FE58069E97),
1309 UINT64_C(0x0006F455E4C8BAF4)},
1310 {UINT64_C(0x0002DE3D52161A5B), UINT64_C(0x0001322EF1230B3D),
1311 UINT64_C(0x000064226A5D94E2), UINT64_C(0x0004F0C2721E80E3),
1312 UINT64_C(0x00055430C4FD1472)},
1313 {UINT64_C(0x000F3FE53622B34E), UINT64_C(0x000400E37E2F6B5E),
1314 UINT64_C(0x000786904CA5BE13), UINT64_C(0x000447C21E951630),
1315 UINT64_C(0x00030E6760567848)}},
1316 {{UINT64_C(0x000B726FC584B729), UINT64_C(0x000414D51BCE0A43),
1317 UINT64_C(0x000618F6813D930C), UINT64_C(0x00040A56D66C1756),
1318 UINT64_C(0x0003D984C56008C4)},
1319 {UINT64_C(0x000EB2683ACBED46), UINT64_C(0x000652CB350659D6),
1320 UINT64_C(0x00013634382FCA77), UINT64_C(0x0002F5D25E61B8FF),
1321 UINT64_C(0x0000B4620F79B12A)},
1322 {UINT64_C(0x0001E7A57930B5B8), UINT64_C(0x00073653EC2B76D1),
1323 UINT64_C(0x000613302FE0B30D), UINT64_C(0x0000A6C4E5761F63),
1324 UINT64_C(0x0006ADF86A72CC92)}},
1325 {{UINT64_C(0x00019186A824FDD7), UINT64_C(0x00011924F7F2750C),
1326 UINT64_C(0x00029AD4044367A7), UINT64_C(0x0007E9538B9DECCA),
1327 UINT64_C(0x000280D45D483E14)},
1328 {UINT64_C(0x000BB52AB225DCB5), UINT64_C(0x00028B165CB1E4DA),
1329 UINT64_C(0x0005BC09B05FCBE4), UINT64_C(0x000381D12C463328),
1330 UINT64_C(0x00076D0B0F76F027)},
1331 {UINT64_C(0x000FEDF306C25C01), UINT64_C(0x0003FECB41117000),
1332 UINT64_C(0x0002FD6A35E50E23), UINT64_C(0x000337ED65B03733),
1333 UINT64_C(0x0000574ECBAE7CDC)}},
1334 {{UINT64_C(0x0006DB58E6ED0D33), UINT64_C(0x0006B3191FF18B0A),
1335 UINT64_C(0x0003EA3B063F5E91), UINT64_C(0x00046C617AC41DAE),
1336 UINT64_C(0x00055B8985867163)},
1337 {UINT64_C(0x000FE332D0609F49), UINT64_C(0x00029E2B6C0590BB),
1338 UINT64_C(0x00027B083A8281E3), UINT64_C(0x00023F54A6691576),
1339 UINT64_C(0x0001F9B2324B7AF4)},
1340 {UINT64_C(0x000B28B2B17C7FE4), UINT64_C(0x0006080357FBA43E),
1341 UINT64_C(0x000615C5B81FBEF7), UINT64_C(0x0003954270A7909A),
1342 UINT64_C(0x0001A2F47D0A04EB)}},
1343 {{UINT64_C(0x000BA17581986197), UINT64_C(0x00034870F30008DA),
1344 UINT64_C(0x00013CA300CCA469), UINT64_C(0x0000B162692148B6),
1345 UINT64_C(0x0003F7CF95609F4D)},
1346 {UINT64_C(0x000BAE83E74F002F), UINT64_C(0x00069841112F14B8),
1347 UINT64_C(0x00078C4EFE35A991), UINT64_C(0x00060BCE9ED310B3),
1348 UINT64_C(0x000754449FD8083C)},
1349 {UINT64_C(0x000AF607F5B16E11), UINT64_C(0x000353A2B8ACC91E),
1350 UINT64_C(0x0000EF1D9E0EF391), UINT64_C(0x0004541CFF0EA8DF),
1351 UINT64_C(0x00016AEAE7B3F2F0)}},
1352 {{UINT64_C(0x0004D0C351D81066), UINT64_C(0x0000558E4F8F8B3B),
1353 UINT64_C(0x00016AB2E6954DA6), UINT64_C(0x0001322A57507762),
1354 UINT64_C(0x000048180B80AB80)},
1355 {UINT64_C(0x0008458BFFCB303A), UINT64_C(0x00022F59A0891BA3),
1356 UINT64_C(0x00015FD6CA3084EF), UINT64_C(0x000096545EB531A3),
1357 UINT64_C(0x0006E575563BC013)},
1358 {UINT64_C(0x00051F33B08869E8), UINT64_C(0x00026605DC18D15D),
1359 UINT64_C(0x00055CAC08CDE2C6), UINT64_C(0x000688FFA5C8BAE7),
1360 UINT64_C(0x0001B5E984904B9C)}},
1361 {{UINT64_C(0x0006B8B443814972), UINT64_C(0x00055FB9A76E0CC9),
1362 UINT64_C(0x00009CE2AAB60A30), UINT64_C(0x0003EF83A2F57151),
1363 UINT64_C(0x00054D67D9A4F513)},
1364 {UINT64_C(0x0007BECDA40A587F), UINT64_C(0x00066610E3756505),
1365 UINT64_C(0x000667AED7C671A5), UINT64_C(0x00045C3E37289FA8),
1366 UINT64_C(0x0003EE1DEB8BF15F)},
1367 {UINT64_C(0x00036DA9491A8276), UINT64_C(0x0007F3BA7F45D5F3),
1368 UINT64_C(0x0005491780986582), UINT64_C(0x00017D2A21BAB7FA),
1369 UINT64_C(0x00002173C231405F)}},
1370 {{UINT64_C(0x000F3DB9923407C2), UINT64_C(0x00034756D5DCF8D4),
1371 UINT64_C(0x00012004CC7C2A34), UINT64_C(0x000333FE8258F7D8),
1372 UINT64_C(0x00022BB7C7E2AFDF)},
1373 {UINT64_C(0x0000F405EE8CE31C), UINT64_C(0x0000EAD90D22334E),
1374 UINT64_C(0x00033D2A3C4C1541), UINT64_C(0x0000C208CD2F4BA6),
1375 UINT64_C(0x000531D1A514C9B5)},
1376 {UINT64_C(0x0009F9F19D9C76D2), UINT64_C(0x00050FDE66CC4397),
1377 UINT64_C(0x00007E0C2178203B), UINT64_C(0x0002A55E72D96E80),
1378 UINT64_C(0x0003C184A5AB3FAA)}},
1379 {{UINT64_C(0x0001563D94E10FCD), UINT64_C(0x0002F2A35D0DB543),
1380 UINT64_C(0x0006E7768E05CFD7), UINT64_C(0x000275C5FC14D586),
1381 UINT64_C(0x000433EC2F348324)},
1382 {UINT64_C(0x0004D3D54C94DA0B), UINT64_C(0x000794DDFDB2EE1E),
1383 UINT64_C(0x000682353D05BB00), UINT64_C(0x00062D8667C93A51),
1384 UINT64_C(0x0004DADCA5A8CE84)},
1385 {UINT64_C(0x0008950DCBA27A08), UINT64_C(0x00059BB3D4E3ABE9),
1386 UINT64_C(0x0003822C18A53312), UINT64_C(0x000244B26BFD9780),
1387 UINT64_C(0x00021363F385A671)}},
1388 {{UINT64_C(0x0008D4A03FC03231), UINT64_C(0x00023E2A19529871),
1389 UINT64_C(0x0007E6F5F8C1E22D), UINT64_C(0x0005603802B4085E),
1390 UINT64_C(0x0003FFA733F66BE0)},
1391 {UINT64_C(0x000CC0D81C2C08E7), UINT64_C(0x00018D23FC4F115C),
1392 UINT64_C(0x00003051462BF328), UINT64_C(0x0004DB5D451FA8EB),
1393 UINT64_C(0x00010ACD436DB7AA)},
1394 {UINT64_C(0x000316FC2858C718), UINT64_C(0x0001C94A21AE0F16),
1395 UINT64_C(0x0007FCCA25487FEF), UINT64_C(0x00075860E5CD985C),
1396 UINT64_C(0x0005097BC8151C25)}},
1397 {{UINT64_C(0x000DD0D0A35B9B1D), UINT64_C(0x00069BAAA4B56FF0),
1398 UINT64_C(0x0004C778899053BE), UINT64_C(0x00002FDC9FA10ADD),
1399 UINT64_C(0x0007A47AFD52F5E3)},
1400 {UINT64_C(0x000E3285C26BE9BF), UINT64_C(0x00033A7071D32E1A),
1401 UINT64_C(0x0005D4D66BCC2FAF), UINT64_C(0x00048588A74F8EA8),
1402 UINT64_C(0x00067F167FCDC66E)},
1403 {UINT64_C(0x0008784A422379C4), UINT64_C(0x0007470006E5302B),
1404 UINT64_C(0x000021E9843D3B99), UINT64_C(0x0003D41527492DDA),
1405 UINT64_C(0x0006326EC5940067)}},
1406 {{UINT64_C(0x000FF43284BB2391), UINT64_C(0x00053CD58E6D70AA),
1407 UINT64_C(0x0006AE6FA42E6DDF), UINT64_C(0x00028B006426C7D9),
1408 UINT64_C(0x00052B4EB53AA929)},
1409 {UINT64_C(0x0005CDDE09C1B9A5), UINT64_C(0x0000A96E981F65EC),
1410 UINT64_C(0x0001B2C7538B9E62), UINT64_C(0x000441A392439DEB),
1411 UINT64_C(0x0006A2B722DC6381)},
1412 {UINT64_C(0x000900CFD32A9792), UINT64_C(0x0001A7B4A6CF54D6),
1413 UINT64_C(0x0003CBAB4ADCD36D), UINT64_C(0x0007B9C1AA60B86D),
1414 UINT64_C(0x0000702520E53679)}},
1415 {{UINT64_C(0x000C9A305D7834CB), UINT64_C(0x0005B7B9FE0CCCE7),
1416 UINT64_C(0x000016A6095A241B), UINT64_C(0x0004B712FDF75B13),
1417 UINT64_C(0x0002C53655BBD91A)},
1418 {UINT64_C(0x0008A6ED2314DDC8), UINT64_C(0x0007DA70CDF279E7),
1419 UINT64_C(0x0006D2D0C3606E50), UINT64_C(0x0003283DAAA8966F),
1420 UINT64_C(0x0006EF64B4E41560)},
1421 {UINT64_C(0x00042A16ECAEB238), UINT64_C(0x0005A981B79EAFF2),
1422 UINT64_C(0x0005427BFC071A2B), UINT64_C(0x00049349A5AB5626),
1423 UINT64_C(0x00041BC86960BD2C)}},
1424 {{UINT64_C(0x000ABCDBE3A9E5D5), UINT64_C(0x000405363A4B3483),
1425 UINT64_C(0x000120CFBB24A873), UINT64_C(0x0005AAE474A462D0),
1426 UINT64_C(0x00035D540394697D)},
1427 {UINT64_C(0x000A64659EFE52C3), UINT64_C(0x0004DB773D047E7A),
1428 UINT64_C(0x0002162ABB1CFD3D), UINT64_C(0x00015B391C39D9D5),
1429 UINT64_C(0x00045B7D89DC266B)},
1430 {UINT64_C(0x000B2D1FBC9FC441), UINT64_C(0x00012722CD49F3E8),
1431 UINT64_C(0x0004A0CFFD68110C), UINT64_C(0x0001B6ECFF11A156),
1432 UINT64_C(0x0007D2F58CE5E926)}},
1435 {{UINT64_C(0x000E1788C8C3CC62), UINT64_C(0x00043FD128363765),
1436 UINT64_C(0x00069AE472062EAB), UINT64_C(0x00035D256FE91217),
1437 UINT64_C(0x00067910C5563600)},
1438 {UINT64_C(0x000F768B1233A3DB), UINT64_C(0x0007DF4C7CD2EA86),
1439 UINT64_C(0x0002CAE86EF8DA2A), UINT64_C(0x0002329535DE9283),
1440 UINT64_C(0x0005A07C9F89C3C4)},
1441 {UINT64_C(0x000054FF768F9CA3), UINT64_C(0x00043D9E4B66B860),
1442 UINT64_C(0x0007DF913CA8B203), UINT64_C(0x000719B3B558DDAA),
1443 UINT64_C(0x00049B2BB9B923F3)}},
1444 {{UINT64_C(0x000890BE7F18CD54), UINT64_C(0x00044AEBC732FC6C),
1445 UINT64_C(0x0000F98B4946A855), UINT64_C(0x00012B28B7A38B2D),
1446 UINT64_C(0x00030C9FAD322292)},
1447 {UINT64_C(0x0009D307A4D23D40), UINT64_C(0x00056FC224E7F4C7),
1448 UINT64_C(0x00054A676DE6F4D3), UINT64_C(0x0006E886B5E9AB59),
1449 UINT64_C(0x0005165D23A85BC8)},
1450 {UINT64_C(0x000ED25967873511), UINT64_C(0x0006C6A9C182B080),
1451 UINT64_C(0x0006978A72802608), UINT64_C(0x0006BF34B9518468),
1452 UINT64_C(0x0006871D973DF84B)}},
1453 {{UINT64_C(0x000F875D00421E67), UINT64_C(0x00042EDCCB1C82C1),
1454 UINT64_C(0x000048FC0A2E1BB9), UINT64_C(0x000733FCF9823770),
1455 UINT64_C(0x00049255AE9DEDFF)},
1456 {UINT64_C(0x000B76A27F806A6B), UINT64_C(0x0002C8618FECD22F),
1457 UINT64_C(0x0007CA416389DB51), UINT64_C(0x00072B231F4E3DF8),
1458 UINT64_C(0x00037E6C81D4C8A3)},
1459 {UINT64_C(0x000315AE714C164A), UINT64_C(0x0000651074CD146C),
1460 UINT64_C(0x00070A110B6FA83C), UINT64_C(0x000292BEB2445915),
1461 UINT64_C(0x0007BAE86E66340A)}},
1462 {{UINT64_C(0x0005A42303FA5032), UINT64_C(0x00079C0EED4C5482),
1463 UINT64_C(0x00070FAF28317AA9), UINT64_C(0x000252F900BCA786),
1464 UINT64_C(0x0004C6DF6AC32D72)},
1465 {UINT64_C(0x000899EF622C1092), UINT64_C(0x00024300EA163F80),
1466 UINT64_C(0x0005D78541F9C58D), UINT64_C(0x0000A82CF29A5335),
1467 UINT64_C(0x00057651841E4857)},
1468 {UINT64_C(0x0002DDAF4534E914), UINT64_C(0x0005C3F8E3CEDF3D),
1469 UINT64_C(0x0007E428DFE30ABB), UINT64_C(0x0000CFA8EF984856),
1470 UINT64_C(0x0007F54DE1239314)}},
1471 {{UINT64_C(0x0003E194BB770B21), UINT64_C(0x0005FE5004F0D44C),
1472 UINT64_C(0x00000E420E05B0CD), UINT64_C(0x0007F4C1EB04ADEA),
1473 UINT64_C(0x00042CF75F5849CB)},
1474 {UINT64_C(0x000DFBFF2F58474E), UINT64_C(0x000023E38CACC0A2),
1475 UINT64_C(0x0007940AAA1D2AEF), UINT64_C(0x00066B3671EF7D12),
1476 UINT64_C(0x0002262304E8FD69)},
1477 {UINT64_C(0x0008190A96FA31A5), UINT64_C(0x000342B2840B29B6),
1478 UINT64_C(0x000692023CF41B60), UINT64_C(0x000438CCB9AD9326),
1479 UINT64_C(0x0006A74AEEF91383)}},
1480 {{UINT64_C(0x00018FBC15EE9825), UINT64_C(0x000471ADE4E86042),
1481 UINT64_C(0x000460985BA9C276), UINT64_C(0x0000273A2CD2F02D),
1482 UINT64_C(0x0003D497885E0289)},
1483 {UINT64_C(0x000FB3F88C29D5D7), UINT64_C(0x00006A92797F73B7),
1484 UINT64_C(0x00040AF0BB921EC0), UINT64_C(0x00056F0E3B22C834),
1485 UINT64_C(0x0002624649A67166)},
1486 {UINT64_C(0x00027A77B2D5B395), UINT64_C(0x000485B55DD21EC2),
1487 UINT64_C(0x00018F0DD390533C), UINT64_C(0x0002C22DC574DCED),
1488 UINT64_C(0x0002023C88609399)}},
1489 {{UINT64_C(0x0000652B6A1715E4), UINT64_C(0x00010936CCCDBCBB),
1490 UINT64_C(0x00075D99584830CC), UINT64_C(0x00013967DE55AE9B),
1491 UINT64_C(0x000497B11ABB2BA5)},
1492 {UINT64_C(0x00029098D0D4B7BF), UINT64_C(0x000148C12832BF02),
1493 UINT64_C(0x0001ACF592227FC4), UINT64_C(0x000361B3459461F5),
1494 UINT64_C(0x00017789D92B4734)},
1495 {UINT64_C(0x00051C79B949CE9C), UINT64_C(0x0003A90D40F0533B),
1496 UINT64_C(0x0000FF1DE7855E3C), UINT64_C(0x00063C0B316F0292),
1497 UINT64_C(0x00079EE9916B16AB)}},
1498 {{UINT64_C(0x000BAF756382E001), UINT64_C(0x00074E66D14AA815),
1499 UINT64_C(0x0005B5DA0DFB4345), UINT64_C(0x0006A98DDBA8EDB0),
1500 UINT64_C(0x00036757B46A7CB2)},
1501 {UINT64_C(0x000D2030D203D167), UINT64_C(0x0003C138F45B97D2),
1502 UINT64_C(0x0000D68249398DBC), UINT64_C(0x00024992D9AC907A),
1503 UINT64_C(0x00054B2D81985107)},
1504 {UINT64_C(0x000C135EB42B443B), UINT64_C(0x000459E57D3F091F),
1505 UINT64_C(0x0007365731E3CB09), UINT64_C(0x00037913422A2661),
1506 UINT64_C(0x00022EB791C1E99D)}},
1507 {{UINT64_C(0x000DBBF41597ABD7), UINT64_C(0x00047A1841FA5CB7),
1508 UINT64_C(0x0005DFFB8D0489BA), UINT64_C(0x000207F59D5AFDD6),
1509 UINT64_C(0x0005862958391C33)},
1510 {UINT64_C(0x00023D6607BF974F), UINT64_C(0x000447A73195D140),
1511 UINT64_C(0x0001CEA4FE1AACB4), UINT64_C(0x00009432CE509804),
1512 UINT64_C(0x0002E2C660E2C2A9)},
1513 {UINT64_C(0x00076405764963F7), UINT64_C(0x0007B075E1B18E3F),
1514 UINT64_C(0x0003C86F3DB152BE), UINT64_C(0x000717D762BDBB19),
1515 UINT64_C(0x00009430702D8371)}},
1516 {{UINT64_C(0x000AF7F915E85486), UINT64_C(0x0000B0BBC2BBB069),
1517 UINT64_C(0x0004A8AC30D65B82), UINT64_C(0x0001A98BB8FFCCD1),
1518 UINT64_C(0x0000A60C0955A82C)},
1519 {UINT64_C(0x00028B7AA8D6E8B3), UINT64_C(0x000599AA3AFD1F06),
1520 UINT64_C(0x000495C8A53271EA), UINT64_C(0x00010D4AB4581526),
1521 UINT64_C(0x00005A91911011B4)},
1522 {UINT64_C(0x00091E63537A8EAF), UINT64_C(0x0004DDC52ABAE41E),
1523 UINT64_C(0x0003DD0926FDA797), UINT64_C(0x00053806DE4C5BB3),
1524 UINT64_C(0x0005E6F1B98E4E5F)}},
1525 {{UINT64_C(0x000ED0D0E611D440), UINT64_C(0x00028F43B4F900C1),
1526 UINT64_C(0x0004C3467D15A321), UINT64_C(0x0003FA40B92F63A1),
1527 UINT64_C(0x0004EB1D7C0F97C7)},
1528 {UINT64_C(0x000F31CB2B424218), UINT64_C(0x00028FC2CBD4B770),
1529 UINT64_C(0x000049E2E21B9426), UINT64_C(0x0004FBA6C0CA6B59),
1530 UINT64_C(0x0000910A8BCBADA6)},
1531 {UINT64_C(0x000062AA84E5A1E8), UINT64_C(0x00055785384B963C),
1532 UINT64_C(0x000718EE20099ACE), UINT64_C(0x0001AAE6F92CB06B),
1533 UINT64_C(0x0005C36213B6B09F)}},
1534 {{UINT64_C(0x00042CD518E7BB1F), UINT64_C(0x000621C5EDE20FF0),
1535 UINT64_C(0x000784AA45E52004), UINT64_C(0x0001EF5EE32943D1),
1536 UINT64_C(0x00020EB45F6DCE70)},
1537 {UINT64_C(0x0001A99725161F74), UINT64_C(0x0000C92D8DE52D6B),
1538 UINT64_C(0x0004943C545783B6), UINT64_C(0x0000F2A34F6C04CA),
1539 UINT64_C(0x0004BA95172EB757)},
1540 {UINT64_C(0x00058B38359EEF2E), UINT64_C(0x00072A003FEEF0E3),
1541 UINT64_C(0x0005A1A497C5B5E4), UINT64_C(0x0007346A30D5043D),
1542 UINT64_C(0x0004DCC170CE73B1)}},
1543 {{UINT64_C(0x0007FCA11D67A5F5), UINT64_C(0x00051F99020E8DA7),
1544 UINT64_C(0x00032448AD151580), UINT64_C(0x0002D682339FD143),
1545 UINT64_C(0x0005C59954328210)},
1546 {UINT64_C(0x000065B65920EA67), UINT64_C(0x00064F016ACC8DB2),
1547 UINT64_C(0x0002B54FD32DCADE), UINT64_C(0x0007514AC407F433),
1548 UINT64_C(0x0006FB8E73CDEC87)},
1549 {UINT64_C(0x0008D3F0CEB6FEF4), UINT64_C(0x000008CD1DAF58F2),
1550 UINT64_C(0x0005E29BD86720C8), UINT64_C(0x0001F89E2EA7D372),
1551 UINT64_C(0x0000F12D2FEBC32E)}},
1552 {{UINT64_C(0x00074C08FE9F6EBB), UINT64_C(0x00019BC5A03773E2),
1553 UINT64_C(0x0002DC6D42FDA236), UINT64_C(0x00026B76B5DD35AA),
1554 UINT64_C(0x0004AC140E7698BA)},
1555 {UINT64_C(0x00007B671BE5225C), UINT64_C(0x00075E4E1423B035),
1556 UINT64_C(0x0005C5078EE3FB12), UINT64_C(0x00018FE0631F18BA),
1557 UINT64_C(0x00049C97C216ADA7)},
1558 {UINT64_C(0x000288CA79DE3FDD), UINT64_C(0x0005F95B9694502C),
1559 UINT64_C(0x0007A90B27755E7B), UINT64_C(0x0000D6B962A5D7B4),
1560 UINT64_C(0x0002B73E8EABF5E7)}},
1561 {{UINT64_C(0x000CF4B90C4F175B), UINT64_C(0x00038B2E4ADFE275),
1562 UINT64_C(0x00051C55B83D6C95), UINT64_C(0x00055A2D1264C7D4),
1563 UINT64_C(0x00062E83FE154821)},
1564 {UINT64_C(0x0008971A5D058482), UINT64_C(0x0000037DDD623E19),
1565 UINT64_C(0x00032867F2B615A5), UINT64_C(0x000623016E6AEBA8),
1566 UINT64_C(0x00012A36AB822905)},
1567 {UINT64_C(0x000120EE148C51AE), UINT64_C(0x00040334FADAA4FB),
1568 UINT64_C(0x000334965ACA2453), UINT64_C(0x0006D3E8020844BE),
1569 UINT64_C(0x00067F6DE44BCF25)}},
1570 {{UINT64_C(0x000105D43C9E9178), UINT64_C(0x0004721A89809540),
1571 UINT64_C(0x0006FC38C213B1E4), UINT64_C(0x0002647D42F65B1A),
1572 UINT64_C(0x0000376348D66B34)},
1573 {UINT64_C(0x000C9949B00A3DA8), UINT64_C(0x0000A0919FC02F1D),
1574 UINT64_C(0x00028254055C25E6), UINT64_C(0x0001D9499A0AE6F5),
1575 UINT64_C(0x0001AACE22F92850)},
1576 {UINT64_C(0x0000AD0E76427572), UINT64_C(0x0004C84545B77E18),
1577 UINT64_C(0x000288F5B54FDDB7), UINT64_C(0x00038ED121222ABA),
1578 UINT64_C(0x0003A0976AA7E43F)}},
1581 {{UINT64_C(0x00081FCF9F18835D), UINT64_C(0x000431F4C3B0D6B0),
1582 UINT64_C(0x0004948FEC6A3648), UINT64_C(0x0004A9B64ED01851),
1583 UINT64_C(0x0005A8976BDBA97F)},
1584 {UINT64_C(0x000B16BF1437E1C3), UINT64_C(0x00037D028CF83551),
1585 UINT64_C(0x0001D4890BE8B6E0), UINT64_C(0x00014CEE0109B29D),
1586 UINT64_C(0x0001D11B49FC55FA)},
1587 {UINT64_C(0x000FF921373DC1C7), UINT64_C(0x00038DE820056599),
1588 UINT64_C(0x0000120CE481802B), UINT64_C(0x0006FFC1F2C088F4),
1589 UINT64_C(0x0001EE2D0C6B1DF4)}},
1590 {{UINT64_C(0x00000FF81329CB03), UINT64_C(0x00068780226033B3),
1591 UINT64_C(0x0006A2545BA20041), UINT64_C(0x0005B2BDDF462150),
1592 UINT64_C(0x0003958DB9028FB7)},
1593 {UINT64_C(0x000C6BC63284596C), UINT64_C(0x000348523D1DBF57),
1594 UINT64_C(0x00046E3F936916F1), UINT64_C(0x0005F78F7E010886),
1595 UINT64_C(0x0004BAEFBF32EDCF)},
1596 {UINT64_C(0x0006B10E2C0DA1C1), UINT64_C(0x000039C183458580),
1597 UINT64_C(0x00012DB6C7B007C5), UINT64_C(0x0003F3B7176CF39B),
1598 UINT64_C(0x0003C1F7265871AC)}},
1599 {{UINT64_C(0x00085B51F8BCFE19), UINT64_C(0x00014E262925BD43),
1600 UINT64_C(0x00012F59369D7DEC), UINT64_C(0x0005891E437C785D),
1601 UINT64_C(0x000079EFC6B4ADC9)},
1602 {UINT64_C(0x00057113F86AEFDE), UINT64_C(0x00031D2A3CBB809F),
1603 UINT64_C(0x00033DCF8AE19C6C), UINT64_C(0x00002213DF3BA392),
1604 UINT64_C(0x0002650EDFE84235)},
1605 {UINT64_C(0x0004FEF6E8E8730E), UINT64_C(0x0002E2C593B029F4),
1606 UINT64_C(0x0002D3E99D33A67F), UINT64_C(0x00014E290C55B9BF),
1607 UINT64_C(0x0004403429D2BE3D)}},
1608 {{UINT64_C(0x000409570F86A1D1), UINT64_C(0x00022B63BCCD0F01),
1609 UINT64_C(0x0004F7D7B94F1868), UINT64_C(0x0001450E62B7DF7C),
1610 UINT64_C(0x000694DAA72BBCAC)},
1611 {UINT64_C(0x000F24FC804E499A), UINT64_C(0x0001C5150B7A2ED2),
1612 UINT64_C(0x0004AA24EEC36D37), UINT64_C(0x0002132213761A03),
1613 UINT64_C(0x00075A13822D103C)},
1614 {UINT64_C(0x000067187C39EB19), UINT64_C(0x0007765373B31B66),
1615 UINT64_C(0x00029CEAE18E4D79), UINT64_C(0x0002C737CC0BD795),
1616 UINT64_C(0x0003193EDEEA0158)}},
1617 {{UINT64_C(0x0005B52C3101E326), UINT64_C(0x0007176502D653B5),
1618 UINT64_C(0x0001FD26BF9CB194), UINT64_C(0x0004FB67EADB3779),
1619 UINT64_C(0x0004D0C770A8ACCF)},
1620 {UINT64_C(0x00011F79B7B344FC), UINT64_C(0x00006663499E87A4),
1621 UINT64_C(0x000450DAEF594E13), UINT64_C(0x00078C2F195A18D1),
1622 UINT64_C(0x0007978E36566E63)},
1623 {UINT64_C(0x0002EB14A8C94333), UINT64_C(0x0001C2F764E483AE),
1624 UINT64_C(0x00031C462060C077), UINT64_C(0x0003EF30123095CE),
1625 UINT64_C(0x00021B6A8AF629FF)}},
1626 {{UINT64_C(0x0006C49C35F232E3), UINT64_C(0x0000B80EEFEC6616),
1627 UINT64_C(0x000680164DFC3701), UINT64_C(0x00072FF54666B634),
1628 UINT64_C(0x00068AB4AFC182CD)},
1629 {UINT64_C(0x000176EF0C655243), UINT64_C(0x00019A1EE66FD2EB),
1630 UINT64_C(0x0006AF04A498FFA9), UINT64_C(0x0002514F98E20D4A),
1631 UINT64_C(0x0001A0821E95F930)},
1632 {UINT64_C(0x000D58CC3800FE7F), UINT64_C(0x00050C9E092A5673),
1633 UINT64_C(0x00051CB3347178DD), UINT64_C(0x0002C9C1FB2FE677),
1634 UINT64_C(0x00015EE68A8526B0)}},
1635 {{UINT64_C(0x000CD72A8856201E), UINT64_C(0x00038E8C397ED335),
1636 UINT64_C(0x0000B8E2262FC710), UINT64_C(0x000027DC02E17AF3),
1637 UINT64_C(0x0006A5F450F30E8E)},
1638 {UINT64_C(0x000B680DE0C07AE0), UINT64_C(0x00054D907D909686),
1639 UINT64_C(0x000757C2922B0737), UINT64_C(0x000660842FC9A0BA),
1640 UINT64_C(0x0003FC7B58E7239A)},
1641 {UINT64_C(0x0004651B7E8AE200), UINT64_C(0x000484D3CB6C7A8E),
1642 UINT64_C(0x0002F474BA01A0C0), UINT64_C(0x00044AA7003C772D),
1643 UINT64_C(0x0000371F52FFC53B)}},
1644 {{UINT64_C(0x0005C3B547E0B571), UINT64_C(0x000209CCABD0AB4B),
1645 UINT64_C(0x0002D25C9DBF3DB1), UINT64_C(0x000032A6A6DE8522),
1646 UINT64_C(0x00017A0AD8ECF369)},
1647 {UINT64_C(0x0009010B6E71332D), UINT64_C(0x0007B69ECC73F71C),
1648 UINT64_C(0x0000FFC2CCAF6490), UINT64_C(0x00064FDB227E8E46),
1649 UINT64_C(0x00055085B8768622)},
1650 {UINT64_C(0x00039AD933E2C137), UINT64_C(0x000171F8E3C0681B),
1651 UINT64_C(0x0001BCC516668190), UINT64_C(0x00063314F511F47A),
1652 UINT64_C(0x0002FE194634EA7D)}},
1653 {{UINT64_C(0x000FE52986682B6C), UINT64_C(0x0007C7793C6CFA0B),
1654 UINT64_C(0x0002F120DB9FC778), UINT64_C(0x00056B1B5D1B696B),
1655 UINT64_C(0x0006F7B105C7285D)},
1656 {UINT64_C(0x000F08F3C79E5FA2), UINT64_C(0x0006714A9E5021DE),
1657 UINT64_C(0x000556DFCA302233), UINT64_C(0x00036A6272A322E0),
1658 UINT64_C(0x0007958876DF034E)},
1659 {UINT64_C(0x0001B28B59F70354), UINT64_C(0x0007AB27CE51E80D),
1660 UINT64_C(0x0000567BCD43D179), UINT64_C(0x00041EF880C69F63),
1661 UINT64_C(0x00057CCC9DA97DCC)}},
1662 {{UINT64_C(0x00006BDC7393E9B9), UINT64_C(0x00056D46935E2D25),
1663 UINT64_C(0x00040C99AE846E20), UINT64_C(0x000277C2A48B7D6B),
1664 UINT64_C(0x0006F9657DBA5EC0)},
1665 {UINT64_C(0x000E84FD78E1468C), UINT64_C(0x0001F647949AC006),
1666 UINT64_C(0x000373B20611C903), UINT64_C(0x00015E6FAFF6FA2A),
1667 UINT64_C(0x00053520AB3070E2)},
1668 {UINT64_C(0x000CC15CC69411F0), UINT64_C(0x000552FB8719E7D5),
1669 UINT64_C(0x0007C3B5010848F9), UINT64_C(0x0000E8AF5525076D),
1670 UINT64_C(0x00058459D1B894E4)}},
1671 {{UINT64_C(0x000B9009E3531F14), UINT64_C(0x0000237005679DB2),
1672 UINT64_C(0x0007BF223FD5732A), UINT64_C(0x0006429263F091F4),
1673 UINT64_C(0x0007493705D2ADC2)},
1674 {UINT64_C(0x000793C60C5EACBA), UINT64_C(0x000332F859C4D8EE),
1675 UINT64_C(0x0000D090DF892E4A), UINT64_C(0x00041A3040EC7085),
1676 UINT64_C(0x0001F585E3FC2C2A)},
1677 {UINT64_C(0x00084D3FD3FF468A), UINT64_C(0x00038C0475145DFA),
1678 UINT64_C(0x00056070E08A4838), UINT64_C(0x0002AC8E15465366),
1679 UINT64_C(0x0000F1485199EC2C)}},
1680 {{UINT64_C(0x000012693C9129E3), UINT64_C(0x00011009F59E7410),
1681 UINT64_C(0x0005E068432FB821), UINT64_C(0x000509F6A285BC64),
1682 UINT64_C(0x00064B88E6E8B8A6)},
1683 {UINT64_C(0x000739F7074FD4A7), UINT64_C(0x00032712493D3F9E),
1684 UINT64_C(0x0002E3550E33660D), UINT64_C(0x0006EE093485A6A5),
1685 UINT64_C(0x0004CAE5F8CDBF10)},
1686 {UINT64_C(0x000BB27495CF7ED3), UINT64_C(0x00001CEB73051EC2),
1687 UINT64_C(0x000686DC320D7C1D), UINT64_C(0x0007C5AD5EC9F58E),
1688 UINT64_C(0x0001B98ED417D210)}},
1689 {{UINT64_C(0x000BCF4C24A4C93E), UINT64_C(0x00002415C387FA3B),
1690 UINT64_C(0x0004B3C58228DDFC), UINT64_C(0x0002037F66598FCF),
1691 UINT64_C(0x000793FF104F8F35)},
1692 {UINT64_C(0x000F1F6A9319DCA8), UINT64_C(0x0007F0E26C6BFDCF),
1693 UINT64_C(0x00024F06F6521950), UINT64_C(0x0001BF65931AAD98),
1694 UINT64_C(0x0004DA8B59BE0CB7)},
1695 {UINT64_C(0x000C49B7018AF82E), UINT64_C(0x0000264DF5E55202),
1696 UINT64_C(0x00004C1B40891F09), UINT64_C(0x00037D39139B0395),
1697 UINT64_C(0x000545CEBFF22B6C)}},
1698 {{UINT64_C(0x0000535E19606923), UINT64_C(0x000389F3CEB25CB9),
1699 UINT64_C(0x000771A87A5F04FF), UINT64_C(0x000712E80B91B905),
1700 UINT64_C(0x00001F1EA4402629)},
1701 {UINT64_C(0x0003A2CFFE51751A), UINT64_C(0x0001780B59BF2F57),
1702 UINT64_C(0x00033B2134560E7F), UINT64_C(0x0000C2FD87484CD4),
1703 UINT64_C(0x0000C1E827BF8C54)},
1704 {UINT64_C(0x000BB159A554E7F7), UINT64_C(0x000679D0F2669B49),
1705 UINT64_C(0x0007C8AF96EB162D), UINT64_C(0x000739F8391987C4),
1706 UINT64_C(0x0004FD6BA815924D)}},
1707 {{UINT64_C(0x000CD58A76375AB1), UINT64_C(0x0000E0B8DB7493B2),
1708 UINT64_C(0x0001F26DC2178BD2), UINT64_C(0x000267C3B843A318),
1709 UINT64_C(0x0003B57558845D7B)},
1710 {UINT64_C(0x00062248E93DA9D4), UINT64_C(0x0001B750D5841F57),
1711 UINT64_C(0x0005825717C4CDF9), UINT64_C(0x000395BD7231BF89),
1712 UINT64_C(0x0005BB6B5E2E6AF9)},
1713 {UINT64_C(0x0009C6B9394024E3), UINT64_C(0x00075C5446BE7237),
1714 UINT64_C(0x00065E6C801E7BB5), UINT64_C(0x00002DB2F90A55CC),
1715 UINT64_C(0x00045DBB4D1CCBDE)}},
1716 {{UINT64_C(0x00053CBFDBE0980A), UINT64_C(0x0001407AA377A7AD),
1717 UINT64_C(0x0001290C47515626), UINT64_C(0x0006B6C6AB3118E7),
1718 UINT64_C(0x0002C22D483E81D6)},
1719 {UINT64_C(0x00012ACDC7AE7440), UINT64_C(0x00069C66640BC7A6),
1720 UINT64_C(0x00002A4F768809CC), UINT64_C(0x00014168BEC8D796),
1721 UINT64_C(0x000052716E75E07B)},
1722 {UINT64_C(0x0001BB2F947F80B6), UINT64_C(0x000073A86D41B9DC),
1723 UINT64_C(0x0000F191E9DE78B6), UINT64_C(0x00065DF33E390DB9),
1724 UINT64_C(0x00003308F79176BD)}},
1727 {{UINT64_C(0x000BA39C423A0F8A), UINT64_C(0x0006FF2C4C49644C),
1728 UINT64_C(0x000527B0CF9945D1), UINT64_C(0x000462BF78F17E13),
1729 UINT64_C(0x000072F5DF073B45)},
1730 {UINT64_C(0x000A52B0C9431B86), UINT64_C(0x00007413199BDB5A),
1731 UINT64_C(0x0006FF18C34250CB), UINT64_C(0x0005F22C96AC669A),
1732 UINT64_C(0x00009930CFA11CAD)},
1733 {UINT64_C(0x00049D54A46B4F00), UINT64_C(0x0001AA620DEF496D),
1734 UINT64_C(0x0001FF21C12D3280), UINT64_C(0x0006DA8184B69B09),
1735 UINT64_C(0x000387F6AA984BF6)}},
1736 {{UINT64_C(0x0001654E2D2F5512), UINT64_C(0x00078F8B53D7341A),
1737 UINT64_C(0x0000470E5BC40FE6), UINT64_C(0x0006C2A23BF4231D),
1738 UINT64_C(0x00008AD4AC154BD4)},
1739 {UINT64_C(0x00025588B0E427F0), UINT64_C(0x00004B7426292145),
1740 UINT64_C(0x0004EFE16DBDD657), UINT64_C(0x000737056241360D),
1741 UINT64_C(0x000503BBEF8BB0A2)},
1742 {UINT64_C(0x000E71495D3F3EE8), UINT64_C(0x0003B55E84166513),
1743 UINT64_C(0x0005A32066E89C7A), UINT64_C(0x00060FD619143FDC),
1744 UINT64_C(0x0007AF54E13C9A0B)}},
1745 {{UINT64_C(0x000F35F2359ED4D4), UINT64_C(0x0006DAD5A1EDD9F7),
1746 UINT64_C(0x00033E72BB06FA4C), UINT64_C(0x0004CB0BF2699447),
1747 UINT64_C(0x00078ADC100A9438)},
1748 {UINT64_C(0x00058677010F1D44), UINT64_C(0x0000EE3DA34D7805),
1749 UINT64_C(0x0003C19261DBCE0E), UINT64_C(0x0000BE1D2B1915F1),
1750 UINT64_C(0x0004C27417301A56)},
1751 {UINT64_C(0x00010519E74F0FD3), UINT64_C(0x000667928B6E2AED),
1752 UINT64_C(0x000112B7D96F8351), UINT64_C(0x00025AC5C3C73843),
1753 UINT64_C(0x00064F071A913A63)}},
1754 {{UINT64_C(0x000134221F75E904), UINT64_C(0x0001E877FC436184),
1755 UINT64_C(0x0001043119533F1B), UINT64_C(0x00036E12894B6885),
1756 UINT64_C(0x0001A97DC3A85DD9)},
1757 {UINT64_C(0x0005B0E5800AD26D), UINT64_C(0x0003C8403B9B7909),
1758 UINT64_C(0x000578BF28F187B8), UINT64_C(0x0006F76A622B025F),
1759 UINT64_C(0x00001A581506806A)},
1760 {UINT64_C(0x000B1B3A779043A2), UINT64_C(0x0002BD2CCEFC7D40),
1761 UINT64_C(0x0006880561392822), UINT64_C(0x000470820DC7AD05),
1762 UINT64_C(0x0000A8A6DFE39EFC)}},
1763 {{UINT64_C(0x0003B4AE7341A857), UINT64_C(0x0006F61AE4525D94),
1764 UINT64_C(0x00047463C3F47708), UINT64_C(0x00013CE30C0E6CD4),
1765 UINT64_C(0x0001A4D6B43BC1E8)},
1766 {UINT64_C(0x000448110CF677D7), UINT64_C(0x0002B26F500047C8),
1767 UINT64_C(0x0000A9EDEE30B5CA), UINT64_C(0x00074CEAB89A5F26),
1768 UINT64_C(0x00069DC9E784890E)},
1769 {UINT64_C(0x0002384FEB025EE8), UINT64_C(0x000760169DF0E4ED),
1770 UINT64_C(0x000679A94C441675), UINT64_C(0x0006E39A8B9E9323),
1771 UINT64_C(0x0004F60517E33211)}},
1772 {{UINT64_C(0x000D1F112D03827C), UINT64_C(0x0003E266C25B8CB9),
1773 UINT64_C(0x0004DDAE5E9A861A), UINT64_C(0x0003FDDD5A19E3FC),
1774 UINT64_C(0x000525AC4177127A)},
1775 {UINT64_C(0x0005E3FBAF1DE590), UINT64_C(0x00006D0AC9D49EBF),
1776 UINT64_C(0x00071A842BB0750F), UINT64_C(0x00030A965193BEB1),
1777 UINT64_C(0x00000074F0F13CF1)},
1778 {UINT64_C(0x000569358B8229BF), UINT64_C(0x0004D8605014C12D),
1779 UINT64_C(0x00067CF8F3ABB9E2), UINT64_C(0x0001913D15FE7E56),
1780 UINT64_C(0x0004E005335EB124)}},
1781 {{UINT64_C(0x000DB4B52128B9C8), UINT64_C(0x000286D98EC1991F),
1782 UINT64_C(0x00057D6985B266D5), UINT64_C(0x0000D63A8186A6CA),
1783 UINT64_C(0x0003E458C6D43002)},
1784 {UINT64_C(0x000FAC1001DCF643), UINT64_C(0x0001A63A60E69551),
1785 UINT64_C(0x000770074385A527), UINT64_C(0x000716E487ACFCBE),
1786 UINT64_C(0x0003AFC421F39471)},
1787 {UINT64_C(0x0001FF85BA0DD581), UINT64_C(0x000185663E421B6B),
1788 UINT64_C(0x0003D0CC19588A5B), UINT64_C(0x00050A4ED90A0BD8),
1789 UINT64_C(0x0001ADEA0DFB4B55)}},
1790 {{UINT64_C(0x000F8CD682890618), UINT64_C(0x0001B4C0FC4BF1B7),
1791 UINT64_C(0x0004593054904595), UINT64_C(0x00044163E1D05297),
1792 UINT64_C(0x0004FF913B7848EE)},
1793 {UINT64_C(0x00044061A1C77BF2), UINT64_C(0x000118C6EAF78CBE),
1794 UINT64_C(0x000121317990C4B0), UINT64_C(0x00014F94111D4DBF),
1795 UINT64_C(0x00050FC488F73A1C)},
1796 {UINT64_C(0x0003F8A423FF3B98), UINT64_C(0x00057AB9DDB49662),
1797 UINT64_C(0x000307128F5CD0A4), UINT64_C(0x0005C206361126E4),
1798 UINT64_C(0x00058F1A9B6F58C2)}},
1799 {{UINT64_C(0x00026D3D15CAFC7E), UINT64_C(0x00011891BC41E2F2),
1800 UINT64_C(0x0006F04870D432A4), UINT64_C(0x000745C21E77AAA6),
1801 UINT64_C(0x0003DAC061530272)},
1802 {UINT64_C(0x0001DAF75081BEA5), UINT64_C(0x00056D5195DD18E2),
1803 UINT64_C(0x0001DCAC8C45410E), UINT64_C(0x0004D2DA16F980D8),
1804 UINT64_C(0x00063744829E7170)},
1805 {UINT64_C(0x000DF1C42FA10272), UINT64_C(0x0000741CA2FAA037),
1806 UINT64_C(0x0000467C87311FE7), UINT64_C(0x000523429446FA40),
1807 UINT64_C(0x00068BD1A87367D1)}},
1808 {{UINT64_C(0x000C458B0171251B), UINT64_C(0x0001FE9DE818F3CF),
1809 UINT64_C(0x00054A1370707A2C), UINT64_C(0x000062F84AA462F0),
1810 UINT64_C(0x0007CF5A9BF230F7)},
1811 {UINT64_C(0x00054404A1098FC2), UINT64_C(0x0002411906266825),
1812 UINT64_C(0x0000A193956A70E8), UINT64_C(0x0000FE137D04BC1F),
1813 UINT64_C(0x0004E42D21EFFD81)},
1814 {UINT64_C(0x000F2EAC10355E39), UINT64_C(0x00054F7E065688EB),
1815 UINT64_C(0x0001A95E0CA9F2C6), UINT64_C(0x0007E704C61469A2),
1816 UINT64_C(0x0007B68ADBD82DC6)}},
1817 {{UINT64_C(0x000899180C1E2363), UINT64_C(0x0007958932146E24),
1818 UINT64_C(0x00043C3BDBE7E084), UINT64_C(0x00059983B137251C),
1819 UINT64_C(0x000181505C38246A)},
1820 {UINT64_C(0x0000FD89855EFABB), UINT64_C(0x0003B63D1B15E2DE),
1821 UINT64_C(0x000255391D67495A), UINT64_C(0x0004DD2784B95163),
1822 UINT64_C(0x000512AAAA077953)},
1823 {UINT64_C(0x000F74E51E9D1E14), UINT64_C(0x0007A0923F8922E5),
1824 UINT64_C(0x000481DF01D3BA5E), UINT64_C(0x00078147FE69A25E),
1825 UINT64_C(0x0002677F7C367D95)}},
1826 {{UINT64_C(0x000C31AE3ACBF754), UINT64_C(0x00015B533DE0199D),
1827 UINT64_C(0x00037F5398951F25), UINT64_C(0x0007F6D8289614BF),
1828 UINT64_C(0x0007A746B03A9AD8)},
1829 {UINT64_C(0x000A5E8B067361B9), UINT64_C(0x000753D2A11E2709),
1830 UINT64_C(0x00068EB1296DD194), UINT64_C(0x0007F60FCC2F2F13),
1831 UINT64_C(0x000241ECD0A2E455)},
1832 {UINT64_C(0x000AB9A10A22A500), UINT64_C(0x0001B6D59F5E169E),
1833 UINT64_C(0x00031BBC448574D5), UINT64_C(0x0004717C01E2B0BB),
1834 UINT64_C(0x0003D21E8ACA1878)}},
1835 {{UINT64_C(0x000499194C8B1C66), UINT64_C(0x00023DD23CF4A5FF),
1836 UINT64_C(0x000260F22A1F1E67), UINT64_C(0x00046F48D856E7A8),
1837 UINT64_C(0x00027B4E0522C56B)},
1838 {UINT64_C(0x000197955EC21F63), UINT64_C(0x0004F7579537C60A),
1839 UINT64_C(0x0001EED38E27A397), UINT64_C(0x000642709A47DD6D),
1840 UINT64_C(0x0000CEC4BAE6CE94)},
1841 {UINT64_C(0x0007E224BD3DE334), UINT64_C(0x0002BC2A4E547CE3),
1842 UINT64_C(0x0006C9441E441A2F), UINT64_C(0x00066ABBA46DB7C3),
1843 UINT64_C(0x0007D6D7B2C94D89)}},
1844 {{UINT64_C(0x00094A1B918036C4), UINT64_C(0x0007000DC73238D4),
1845 UINT64_C(0x00077504C3F1AB6E), UINT64_C(0x0004E6A5D5C7C6A1),
1846 UINT64_C(0x0003821648B33D3A)},
1847 {UINT64_C(0x00081E39CDB93F79), UINT64_C(0x0004EBBC689100FB),
1848 UINT64_C(0x0001DD37C191E986), UINT64_C(0x000036795A799602),
1849 UINT64_C(0x000041C1B41711DB)},
1850 {UINT64_C(0x000A4A21AC6CAF3D), UINT64_C(0x000744CF7594E6F1),
1851 UINT64_C(0x000030561165E9A9), UINT64_C(0x00074B8AB965B245),
1852 UINT64_C(0x000244902E385A94)}},
1853 {{UINT64_C(0x000464BD11AFA1E1), UINT64_C(0x0002E00B44F4A68C),
1854 UINT64_C(0x0006C58D5152071B), UINT64_C(0x0007CC78F1BEA1EE),
1855 UINT64_C(0x0003D52810ACC281)},
1856 {UINT64_C(0x000C04B80D28DBA4), UINT64_C(0x0007C5EAA4A27BFF),
1857 UINT64_C(0x00066248F5BFC255), UINT64_C(0x0006BDB404771492),
1858 UINT64_C(0x00019FA7BB5E292E)},
1859 {UINT64_C(0x0006358792FF5820), UINT64_C(0x0003BB145A4D0D14),
1860 UINT64_C(0x000647A0D099804C), UINT64_C(0x0001CE6985BBEA5D),
1861 UINT64_C(0x00071F7ADDB5DEC0)}},
1862 {{UINT64_C(0x000FF792012E3AD1), UINT64_C(0x000318FC42C34144),
1863 UINT64_C(0x00018AA9596D5383), UINT64_C(0x0004A1E0677AA264),
1864 UINT64_C(0x0007C9D08A010323)},
1865 {UINT64_C(0x000B38DA3FFA9D8B), UINT64_C(0x0007B37A58DB49D5),
1866 UINT64_C(0x0003CAB96E3D6DD9), UINT64_C(0x0004877EC3C59320),
1867 UINT64_C(0x0005F79E6AB22005)},
1868 {UINT64_C(0x000D9227D42E392D), UINT64_C(0x000383E4A65149E3),
1869 UINT64_C(0x0001FC4C8988D7D7), UINT64_C(0x0000301C333E8D0D),
1870 UINT64_C(0x000566D13B877137)}},
1873 {{UINT64_C(0x0002819CD64EC5D5), UINT64_C(0x000718864EB85DEA),
1874 UINT64_C(0x0000B38F635D18B2), UINT64_C(0x0000FA0D19EC1914),
1875 UINT64_C(0x0007FC6E0B53A132)},
1876 {UINT64_C(0x000681A57637B42A), UINT64_C(0x00009516D77453A8),
1877 UINT64_C(0x00041747D2AFF787), UINT64_C(0x000484C8CAA8775B),
1878 UINT64_C(0x00069B6EDB5BEB15)},
1879 {UINT64_C(0x000F673ED008533F), UINT64_C(0x00005983AE2E9902),
1880 UINT64_C(0x000696120C054601), UINT64_C(0x0002DD10C21D3665),
1881 UINT64_C(0x0003650B63683F24)}},
1882 {{UINT64_C(0x0001C85E071E87C9), UINT64_C(0x00038E791D5639BC),
1883 UINT64_C(0x0007EB7B3E0A3BD5), UINT64_C(0x00067F05BA2C2992),
1884 UINT64_C(0x0005A217D19B8E87)},
1885 {UINT64_C(0x0009CC57757E7DC9), UINT64_C(0x0004C152B026BBF3),
1886 UINT64_C(0x0007CE941D2BB495), UINT64_C(0x00022801029CDB1F),
1887 UINT64_C(0x00015E56AA9988B8)},
1888 {UINT64_C(0x0001F20BB815BF7F), UINT64_C(0x00045BBFD494947D),
1889 UINT64_C(0x000752E00CADD615), UINT64_C(0x00030A1ADE235D5B),
1890 UINT64_C(0x00004F475EAAC468)}},
1891 {{UINT64_C(0x0005DEC978DC22CC), UINT64_C(0x00069E99CC23AF7D),
1892 UINT64_C(0x0001A491C445CF0B), UINT64_C(0x0001A2B80570EAF4),
1893 UINT64_C(0x000519998F23DA17)},
1894 {UINT64_C(0x00033F2D4F6DFC80), UINT64_C(0x0003473C4B91929A),
1895 UINT64_C(0x000657675912C778), UINT64_C(0x00027483C8C74BA9),
1896 UINT64_C(0x00045AEDD79F572E)},
1897 {UINT64_C(0x0005B55CF68CF232), UINT64_C(0x0005978D5F58C198),
1898 UINT64_C(0x000463464AA8D74F), UINT64_C(0x00000768A84F1143),
1899 UINT64_C(0x0004D85E72D498F7)}},
1900 {{UINT64_C(0x00065396EB5E1B7C), UINT64_C(0x0003AD9BC86D4A9D),
1901 UINT64_C(0x0007D80AED5F83A2), UINT64_C(0x0007BF7E181211DD),
1902 UINT64_C(0x00053259A33A1C38)},
1903 {UINT64_C(0x0004ED7967092AA9), UINT64_C(0x00037E220CEFD1A7),
1904 UINT64_C(0x0007D56552E4BE39), UINT64_C(0x000467E0E1384212),
1905 UINT64_C(0x0007CB81AF42B8E6)},
1906 {UINT64_C(0x000F60010D427117), UINT64_C(0x0003FE077DD17DAC),
1907 UINT64_C(0x0003D70C978E0E1D), UINT64_C(0x0004EC475F514EFA),
1908 UINT64_C(0x000678A033281D8A)}},
1909 {{UINT64_C(0x0001DDD15D89D0DA), UINT64_C(0x0005AE12E0DC3F81),
1910 UINT64_C(0x00021725313E6CD1), UINT64_C(0x00058E25DD51CD68),
1911 UINT64_C(0x00051CC1640E208C)},
1912 {UINT64_C(0x000A5BFACD788203), UINT64_C(0x00076782156DA54A),
1913 UINT64_C(0x0006546FAACEBFB5), UINT64_C(0x0000751697EBD387),
1914 UINT64_C(0x000403792F66F908)},
1915 {UINT64_C(0x0001ED1BA791D84F), UINT64_C(0x0007C0C66505B59A),
1916 UINT64_C(0x0003039E8770455C), UINT64_C(0x000176EBE864CCC6),
1917 UINT64_C(0x0000A9D7490BB5E2)}},
1918 {{UINT64_C(0x000ADBB841243625), UINT64_C(0x00070EF045AE92E4),
1919 UINT64_C(0x0003ED707AC6DC1C), UINT64_C(0x0002EC569D895E88),
1920 UINT64_C(0x0007A1F82B8A9F9B)},
1921 {UINT64_C(0x000480ED4CC26515), UINT64_C(0x0007142FB964F1D8),
1922 UINT64_C(0x0002D589D76131D9), UINT64_C(0x0002041F5E307B5D),
1923 UINT64_C(0x0004DC0C8DC698E2)},
1924 {UINT64_C(0x000639BA125B4EB0), UINT64_C(0x0006735AE5885BC9),
1925 UINT64_C(0x000402130AA29EFE), UINT64_C(0x0006483ECF5F928A),
1926 UINT64_C(0x0005C0C2A7450215)}},
1927 {{UINT64_C(0x00011E1BA90F4D05), UINT64_C(0x0003C4ACA739B18D),
1928 UINT64_C(0x0006DA6C4D05BB4B), UINT64_C(0x0006C9D11A68C07A),
1929 UINT64_C(0x0007E4FF60853DCC)},
1930 {UINT64_C(0x000FC3B1EAB98C72), UINT64_C(0x000194A565C0D2C0),
1931 UINT64_C(0x0006774E78078878), UINT64_C(0x0002845C8FBE34B8),
1932 UINT64_C(0x0003FA8FFB470A30)},
1933 {UINT64_C(0x000DF02100A29B8E), UINT64_C(0x0001EDB288FCEFEF),
1934 UINT64_C(0x0003A1F05EE527CB), UINT64_C(0x0000800DA11B67CF),
1935 UINT64_C(0x0000F28747F25BA7)}},
1936 {{UINT64_C(0x000AB1FE778D5AC8), UINT64_C(0x0007AC5F7720F73D),
1937 UINT64_C(0x0001F29E35DE087B), UINT64_C(0x0006594AE6F4B147),
1938 UINT64_C(0x0003BD0E462820EB)},
1939 {UINT64_C(0x00046E4EE5708B31), UINT64_C(0x0005F6D4A65795AD),
1940 UINT64_C(0x00065A6A14FD4DBD), UINT64_C(0x0005175D21ECC1C7),
1941 UINT64_C(0x0007FE00455D7273)},
1942 {UINT64_C(0x0007B6F8CC74B2E7), UINT64_C(0x000741AB0632D05A),
1943 UINT64_C(0x00049D46261751F0), UINT64_C(0x0006736BD5AEA112),
1944 UINT64_C(0x00069AD164B202C5)}},
1945 {{UINT64_C(0x00012BDCF8236C6C), UINT64_C(0x000367FF9D0F9B9A),
1946 UINT64_C(0x0003F319B67073D2), UINT64_C(0x000760E8B33BDBA0),
1947 UINT64_C(0x00056660C3661195)},
1948 {UINT64_C(0x0006A7EA308B1685), UINT64_C(0x0006C261A0B19E51),
1949 UINT64_C(0x0004E083123A5FB3), UINT64_C(0x00047A0C38DD3BA2),
1950 UINT64_C(0x00053C6D2A152664)},
1951 {UINT64_C(0x000FAF64FB917431), UINT64_C(0x000565756E7FAAF4),
1952 UINT64_C(0x0003D721A24A3704), UINT64_C(0x00013317369CBD42),
1953 UINT64_C(0x00016612511B5AA0)}},
1954 {{UINT64_C(0x000E652B12074C2E), UINT64_C(0x00059D0BAF050179),
1955 UINT64_C(0x00003B5736856800), UINT64_C(0x000647959933E44E),
1956 UINT64_C(0x0003D56153518775)},
1957 {UINT64_C(0x0000F380F6F1A960), UINT64_C(0x0001ACBBE16F804F),
1958 UINT64_C(0x0002997050169D92), UINT64_C(0x0006923F3FB9A04C),
1959 UINT64_C(0x000760D8364CDE1D)},
1960 {UINT64_C(0x00087864C2C7818E), UINT64_C(0x00065BCE2C21225E),
1961 UINT64_C(0x0000829D71C17447), UINT64_C(0x000624DD657FE09E),
1962 UINT64_C(0x000078584F6FEFD9)}},
1963 {{UINT64_C(0x0006D584A0FE7A46), UINT64_C(0x00069D33D6A2E6E8),
1964 UINT64_C(0x00067E621C9A0CE7), UINT64_C(0x00077A830F59FBFF),
1965 UINT64_C(0x00014C1BD946B545)},
1966 {UINT64_C(0x0001B2A1355A4052), UINT64_C(0x000675CBE17382B6),
1967 UINT64_C(0x000641AF5CC81253), UINT64_C(0x0005EB097D44D21F),
1968 UINT64_C(0x00009FC2AAAE02CC)},
1969 {UINT64_C(0x000D414D936E58DD), UINT64_C(0x0000B296AC88EB92),
1970 UINT64_C(0x00076AB84DD6056C), UINT64_C(0x000685E1AB03C5DC),
1971 UINT64_C(0x00028348D45F6358)}},
1972 {{UINT64_C(0x00016CC86D940FFC), UINT64_C(0x0006FA98A7F59E71),
1973 UINT64_C(0x00029CA45E235967), UINT64_C(0x0001DDB48758B49F),
1974 UINT64_C(0x00061464300AF54F)},
1975 {UINT64_C(0x00043C3AC9312B0D), UINT64_C(0x000064FC92BC9377),
1976 UINT64_C(0x000239F95BD3C366), UINT64_C(0x0000529C3D8CF33A),
1977 UINT64_C(0x000181E4547EBD24)},
1978 {UINT64_C(0x000E16213D8C28C0), UINT64_C(0x000231D13CE48188),
1979 UINT64_C(0x0007F4B9BEA03675), UINT64_C(0x0004042E3AC3D778),
1980 UINT64_C(0x0001EAA475E87AA7)}},
1981 {{UINT64_C(0x0001DAA732854120), UINT64_C(0x0002D8C6031F046B),
1982 UINT64_C(0x00048CA4CD8BA89E), UINT64_C(0x00006937503A6724),
1983 UINT64_C(0x00061B37A983648E)},
1984 {UINT64_C(0x00013AC756B13B17), UINT64_C(0x0007F99EB1FE63B2),
1985 UINT64_C(0x00012EF62AA29F91), UINT64_C(0x000275A63AC0B82C),
1986 UINT64_C(0x00041F85AC1748DC)},
1987 {UINT64_C(0x0003C3A345E37216), UINT64_C(0x0000BC95899511A0),
1988 UINT64_C(0x00067984E11988E2), UINT64_C(0x0003790C6A6BD91C),
1989 UINT64_C(0x0004AE8857A370C0)}},
1990 {{UINT64_C(0x00059767D1DC7159), UINT64_C(0x00059021E287D705),
1991 UINT64_C(0x00059EECEC3BE7D9), UINT64_C(0x0001EAA18D4EADD0),
1992 UINT64_C(0x00065A975E23F03E)},
1993 {UINT64_C(0x000A95AFCF439414), UINT64_C(0x00015B75C723F702),
1994 UINT64_C(0x0000BF98929522FB), UINT64_C(0x0003085D78E648C0),
1995 UINT64_C(0x00037D7D62CA4475)},
1996 {UINT64_C(0x0004A0DA8919F5F5), UINT64_C(0x000367D06413644F),
1997 UINT64_C(0x000354956C041EA1), UINT64_C(0x00010755634E2C5D),
1998 UINT64_C(0x000170791147DD80)}},
1999 {{UINT64_C(0x000827F7944FE6CC), UINT64_C(0x00001C751F20EF72),
2000 UINT64_C(0x00035F7CA3D66415), UINT64_C(0x0005210C82C852BA),
2001 UINT64_C(0x00004C02A5485650)},
2002 {UINT64_C(0x0003B5BDD64B5C0A), UINT64_C(0x0004689EBDCCFF34),
2003 UINT64_C(0x00070E43EECF0D36), UINT64_C(0x0006DE61D82DCC84),
2004 UINT64_C(0x00012E98D82A7298)},
2005 {UINT64_C(0x0001E9E5518D471A), UINT64_C(0x0007A1BB46DE49D9),
2006 UINT64_C(0x00035B2927B223D1), UINT64_C(0x0001CCAE464874F4),
2007 UINT64_C(0x00039DDDEF590E1E)}},
2008 {{UINT64_C(0x00024A7A1C775995), UINT64_C(0x0007157DD78B8376),
2009 UINT64_C(0x000135892F3211E4), UINT64_C(0x00068F7235FB1FF7),
2010 UINT64_C(0x0007B084D8E8F5BA)},
2011 {UINT64_C(0x00047354D60A9B5C), UINT64_C(0x0005528D484B558C),
2012 UINT64_C(0x0005EA409EB39DEF), UINT64_C(0x0001301D88A26EAB),
2013 UINT64_C(0x0003E8EEEA1E9E16)},
2014 {UINT64_C(0x0007E18F66EB4040), UINT64_C(0x0003D687AAC18DF1),
2015 UINT64_C(0x000043407B1B01C5), UINT64_C(0x00076026A3612E1D),
2016 UINT64_C(0x00036AC22C1DA7F0)}},
2019 {{UINT64_C(0x000A1DB3FDA77DAC), UINT64_C(0x0004D9593DB5C4FA),
2020 UINT64_C(0x0002D0C711ADB1E7), UINT64_C(0x0004FA1FD3056EC4),
2021 UINT64_C(0x0001AEA89A06C580)},
2022 {UINT64_C(0x0000B6E56502BC8A), UINT64_C(0x00030FB5DA75A109),
2023 UINT64_C(0x00061CCC955CD549), UINT64_C(0x00072ED7E235BE62),
2024 UINT64_C(0x0004FFC550D2C672)},
2025 {UINT64_C(0x0001401B07FD2FC2), UINT64_C(0x0001363A97814A08),
2026 UINT64_C(0x00040A250BB0D833), UINT64_C(0x0003FDC7EADB00FF),
2027 UINT64_C(0x0006D0C5F0015D6E)}},
2028 {{UINT64_C(0x0006C4A3C3DD75D0), UINT64_C(0x00035FB0DFF6D283),
2029 UINT64_C(0x00008EC03452D8B5), UINT64_C(0x0000660AA38D2E81),
2030 UINT64_C(0x00070999FB1B3622)},
2031 {UINT64_C(0x00076C0468E5E93B), UINT64_C(0x000691D7E3FC4A00),
2032 UINT64_C(0x00049CB4185CDAF8), UINT64_C(0x00016C0C829B0E8D),
2033 UINT64_C(0x0006AA160D0C7282)},
2034 {UINT64_C(0x0005FA2B7F6BD2E2), UINT64_C(0x000158DA48E6F8A3),
2035 UINT64_C(0x000604218B1883CE), UINT64_C(0x0000CFFE74536FDE),
2036 UINT64_C(0x00005D042AB776AA)}},
2037 {{UINT64_C(0x00027DD79FD8B383), UINT64_C(0x0004E3C07F0FC4F0),
2038 UINT64_C(0x00071E194BBE44D0), UINT64_C(0x000516439A5B3612),
2039 UINT64_C(0x0003F479BE23976A)},
2040 {UINT64_C(0x000D07783284BAF3), UINT64_C(0x00044583E7D6E11C),
2041 UINT64_C(0x0001D132C130CABE), UINT64_C(0x000625DDBFB712E6),
2042 UINT64_C(0x00070A1B85622B32)},
2043 {UINT64_C(0x00034C89E9034A6C), UINT64_C(0x00078F18070D16D9),
2044 UINT64_C(0x0005C48940FE1968), UINT64_C(0x0007B463D52BFF8C),
2045 UINT64_C(0x0004F9CB24AA3CA3)}},
2046 {{UINT64_C(0x0000210FBD862AF4), UINT64_C(0x00042D00326CF364),
2047 UINT64_C(0x0005909CDA828553), UINT64_C(0x000765038B375968),
2048 UINT64_C(0x00061244E59E8942)},
2049 {UINT64_C(0x000316B2C8856415), UINT64_C(0x0002A4748F779AB3),
2050 UINT64_C(0x000239C5E875089A), UINT64_C(0x00036401DD98269B),
2051 UINT64_C(0x00011DDAE2A7E2F2)},
2052 {UINT64_C(0x000E9134B0007750), UINT64_C(0x0005EF4908EA5F8B),
2053 UINT64_C(0x00079BE217CC5E96), UINT64_C(0x0000599ECA99A489),
2054 UINT64_C(0x0004C47BBF939482)}},
2055 {{UINT64_C(0x00003A337C362E13), UINT64_C(0x0007780615B15DD1),
2056 UINT64_C(0x000773A3946A0160), UINT64_C(0x000700FAAF105D15),
2057 UINT64_C(0x0001A74BE2B6494D)},
2058 {UINT64_C(0x0005CA35FE3DB4CB), UINT64_C(0x00071DF8C08DEDDD),
2059 UINT64_C(0x0005F7E4ACF08CA7), UINT64_C(0x00036F543C236FDD),
2060 UINT64_C(0x00069ABF13BDA30B)},
2061 {UINT64_C(0x000D0BDB4C5FE93D), UINT64_C(0x0002B22A4FA5285B),
2062 UINT64_C(0x0006FA80F65CB79E), UINT64_C(0x000379BFA1F4BF5E),
2063 UINT64_C(0x00046594A6F4C0D4)}},
2064 {{UINT64_C(0x0007305A30FD1F79), UINT64_C(0x0001C6FFD9905695),
2065 UINT64_C(0x0004645BE794D673), UINT64_C(0x000342101D707890),
2066 UINT64_C(0x0001BB588F62A0A3)},
2067 {UINT64_C(0x000105A272D17F2A), UINT64_C(0x0007B3D6FA991E49),
2068 UINT64_C(0x000227280611E9A7), UINT64_C(0x0001A93AAA75915F),
2069 UINT64_C(0x00023FA441B3482E)},
2070 {UINT64_C(0x00049C1150A4394C), UINT64_C(0x00040C4F9BAC625E),
2071 UINT64_C(0x000019D525AD587E), UINT64_C(0x0004FF7128EF9688),
2072 UINT64_C(0x0004FD444389AB05)}},
2073 {{UINT64_C(0x000238E42AD5EEEC), UINT64_C(0x0005DE60189ED21B),
2074 UINT64_C(0x0001C3ED84BF7F92), UINT64_C(0x00051D4CE9A6E138),
2075 UINT64_C(0x0004D7509030CE74)},
2076 {UINT64_C(0x00014535B829610F), UINT64_C(0x0006763BE3F420BB),
2077 UINT64_C(0x000224420EC61552), UINT64_C(0x0001D944B492451E),
2078 UINT64_C(0x00043B7C34AD7E8B)},
2079 {UINT64_C(0x0008748FB4B47D51), UINT64_C(0x0005ABB8E9B2C218),
2080 UINT64_C(0x0001F774AE8AEF2A), UINT64_C(0x0004E251530C1540),
2081 UINT64_C(0x0002C17E01A2CD3E)}},
2082 {{UINT64_C(0x000A5AEDEE07B0B0), UINT64_C(0x0005F89D3947B76A),
2083 UINT64_C(0x0002BB62F90E7DE8), UINT64_C(0x000654A1AF24BC3B),
2084 UINT64_C(0x0003546F95E0EE6F)},
2085 {UINT64_C(0x00085679601B8BC5), UINT64_C(0x0004BB095D71C7D0),
2086 UINT64_C(0x00053ECC1C751399), UINT64_C(0x00041FE3795CBDE2),
2087 UINT64_C(0x0006EA98F1D1D81D)},
2088 {UINT64_C(0x00064ED26F676ADD), UINT64_C(0x0005A7A5BEE185B3),
2089 UINT64_C(0x000130CC8FEC6AE2), UINT64_C(0x000629FDE7C00F10),
2090 UINT64_C(0x000585D5A1CBFA57)}},
2091 {{UINT64_C(0x000AE0784632D10F), UINT64_C(0x00027BFA28563B52),
2092 UINT64_C(0x0004DECE15823B3A), UINT64_C(0x00010DA131FF58A7),
2093 UINT64_C(0x00048DEFFB0FE190)},
2094 {UINT64_C(0x000C811EC58F82EA), UINT64_C(0x000326DA9E04E555),
2095 UINT64_C(0x00071F177799421B), UINT64_C(0x0003E3A474D3E8B8),
2096 UINT64_C(0x0003D5D6D4DE3CEF)},
2097 {UINT64_C(0x000D9FFAF07322DD), UINT64_C(0x000628E14EB89510),
2098 UINT64_C(0x00075D001D2380EC), UINT64_C(0x00050D7E5EF7D399),
2099 UINT64_C(0x00079765D0A00A45)}},
2100 {{UINT64_C(0x00090F5A32267E76), UINT64_C(0x00019A1B8E57CC65),
2101 UINT64_C(0x00048B29601AC029), UINT64_C(0x00069FA23DE54FFB),
2102 UINT64_C(0x00002FCBE3187F20)},
2103 {UINT64_C(0x000125C2704C278B), UINT64_C(0x00028493D1EF2120),
2104 UINT64_C(0x00054F9AD9FF374B), UINT64_C(0x0006985537375711),
2105 UINT64_C(0x00007534EB65121D)},
2106 {UINT64_C(0x0004BD9A12979647), UINT64_C(0x000788B5BC284E24),
2107 UINT64_C(0x0004CBD296C6FF6B), UINT64_C(0x0007FA0CD5EE5D70),
2108 UINT64_C(0x0002BC98A33DCE4E)}},
2109 {{UINT64_C(0x000753D51E36094F), UINT64_C(0x00011309101DCED4),
2110 UINT64_C(0x0000279505A1BAA2), UINT64_C(0x0006AEDE7A85AAE1),
2111 UINT64_C(0x000037AE84B6FE0A)},
2112 {UINT64_C(0x0007739A4BFF6011), UINT64_C(0x000710D32F9567E8),
2113 UINT64_C(0x00040FE60EC00E34), UINT64_C(0x0000E77282D60FC2),
2114 UINT64_C(0x00012AF7C9905886)},
2115 {UINT64_C(0x00010065259DAB06), UINT64_C(0x00002C1EC736FA56),
2116 UINT64_C(0x00041E7AC35292DC), UINT64_C(0x0000DDF0A6E3C65E),
2117 UINT64_C(0x00060CA6ABEF89FE)}},
2118 {{UINT64_C(0x000C71B130D21942), UINT64_C(0x000650CBCD04857A),
2119 UINT64_C(0x00003A21705F79DE), UINT64_C(0x000441B7586ABB4B),
2120 UINT64_C(0x00044FFAB824B35E)},
2121 {UINT64_C(0x0004FC14956E331F), UINT64_C(0x0002DF101A872454),
2122 UINT64_C(0x0001ACAC797EC78F), UINT64_C(0x0006FBE58D90CBB2),
2123 UINT64_C(0x0002083D4F2ED3D2)},
2124 {UINT64_C(0x0002485E01980997), UINT64_C(0x000679010A4C7EE8),
2125 UINT64_C(0x00057361E75E0DF0), UINT64_C(0x0000548EBB7B0F63),
2126 UINT64_C(0x0000ADFA873F0ADC)}},
2127 {{UINT64_C(0x000CEBAD25601C16), UINT64_C(0x00040CF38C58593E),
2128 UINT64_C(0x000548AC165085FC), UINT64_C(0x00000EC8D84A3956),
2129 UINT64_C(0x0006990D99B70E27)},
2130 {UINT64_C(0x0002D6F54C35029C), UINT64_C(0x000194EECC0B8D55),
2131 UINT64_C(0x000599D2C75B688B), UINT64_C(0x000646453AC905E4),
2132 UINT64_C(0x0003DAEFFC1F7F77)},
2133 {UINT64_C(0x0002FB3C155DFF91), UINT64_C(0x000666676455E39E),
2134 UINT64_C(0x000094B59579A3D7), UINT64_C(0x000131163E64B240),
2135 UINT64_C(0x0002BE896BAC1C14)}},
2136 {{UINT64_C(0x0005372C822B631C), UINT64_C(0x0002C792A5D553F9),
2137 UINT64_C(0x00079A45AF14B5DB), UINT64_C(0x0005728AC606211C),
2138 UINT64_C(0x00059EF170252365)},
2139 {UINT64_C(0x0000B216D3837D4E), UINT64_C(0x00049608E9DA7038),
2140 UINT64_C(0x00071C88398BEB38), UINT64_C(0x0001D39322C696DB),
2141 UINT64_C(0x0003270FEE25BE63)},
2142 {UINT64_C(0x000F312227C8BD36), UINT64_C(0x0006EA625A52C28E),
2143 UINT64_C(0x00022DD277705C08), UINT64_C(0x0002D9A720B669E6),
2144 UINT64_C(0x00075102EDD2BA08)}},
2145 {{UINT64_C(0x000CA132F90FE15B), UINT64_C(0x0007F9D119339816),
2146 UINT64_C(0x0006E56945E2B2A2), UINT64_C(0x0004514FE66AAADD),
2147 UINT64_C(0x00017AF1BC738FB9)},
2148 {UINT64_C(0x0004346FAA16001E), UINT64_C(0x0001C1A89BB2AE60),
2149 UINT64_C(0x0001399CEC955395), UINT64_C(0x0003C0BBC0A6E99B),
2150 UINT64_C(0x00064D29AE483CCC)},
2151 {UINT64_C(0x00040ACC3E0904B8), UINT64_C(0x00036DC23E8EE05E),
2152 UINT64_C(0x00066D427ADA3210), UINT64_C(0x00011F6E098F35F7),
2153 UINT64_C(0x00039151730A7BBA)}},
2154 {{UINT64_C(0x00091ADA9145C93C), UINT64_C(0x00024194BA72DF78),
2155 UINT64_C(0x0003678D46D1C849), UINT64_C(0x000389372773D592),
2156 UINT64_C(0x00018C36FC253B2C)},
2157 {UINT64_C(0x0005F6DDFD39F849), UINT64_C(0x0002633241A26C74),
2158 UINT64_C(0x000474A8B991D2BE), UINT64_C(0x0002CE50E2C4FE43),
2159 UINT64_C(0x000293E1C206D813)},
2160 {UINT64_C(0x000F47D948A0883B), UINT64_C(0x000489F014B14B93),
2161 UINT64_C(0x0006D2AC8A2E3258), UINT64_C(0x0000CE310A0B2212),
2162 UINT64_C(0x0001253D16B5D0A2)}},
2165 {{UINT64_C(0x0001FC6BA4B27045), UINT64_C(0x00038F66C4585DD0),
2166 UINT64_C(0x00044510A543BBBA), UINT64_C(0x0001FFA25BB30E5E),
2167 UINT64_C(0x0002D3C1BD993CDE)},
2168 {UINT64_C(0x000A2BB5F0A56D1F), UINT64_C(0x00026C278F22FDAC),
2169 UINT64_C(0x0000972239E1602A), UINT64_C(0x0006D636075CCB7A),
2170 UINT64_C(0x000255FEE96DB6F1)},
2171 {UINT64_C(0x000D53D8C21D2AC3), UINT64_C(0x00073D8BC6569D5D),
2172 UINT64_C(0x000611171F31EC1E), UINT64_C(0x0007BF39C3FB085A),
2173 UINT64_C(0x00078CDD196C484E)}},
2174 {{UINT64_C(0x0007AA3E7172E704), UINT64_C(0x00041E6CDC54B308),
2175 UINT64_C(0x0000B05762F3EFE5), UINT64_C(0x000444BD48FEF0C8),
2176 UINT64_C(0x0004428AB2D08617)},
2177 {UINT64_C(0x000BDD2F9B4370E5), UINT64_C(0x0002F2670834C4F7),
2178 UINT64_C(0x0003BB1958A52A76), UINT64_C(0x00047CD537305248),
2179 UINT64_C(0x0001EFD0574CCBFF)},
2180 {UINT64_C(0x000AEB5EF88DCA62), UINT64_C(0x000117EAA2E61A6B),
2181 UINT64_C(0x0004FCBB9750C8D0), UINT64_C(0x000495792CD27339),
2182 UINT64_C(0x0001B23C157916F6)}},
2183 {{UINT64_C(0x0007891B674E71F0), UINT64_C(0x0007C4F6FCAD4468),
2184 UINT64_C(0x000476D6C5509A66), UINT64_C(0x0005F5A8B9CC77CD),
2185 UINT64_C(0x0004199343D1FC80)},
2186 {UINT64_C(0x0003F18F3D8F0055), UINT64_C(0x000752C7D8BA3224),
2187 UINT64_C(0x000436F715E78E8E), UINT64_C(0x0001036795BF501D),
2188 UINT64_C(0x000236B8319E54B6)},
2189 {UINT64_C(0x0002E41C100EDD83), UINT64_C(0x00058577EB7BBD8B),
2190 UINT64_C(0x0001F51303AAC160), UINT64_C(0x0005DC3CA305853E),
2191 UINT64_C(0x00072B9415F81A28)}},
2192 {{UINT64_C(0x0005265E75BE3284), UINT64_C(0x0007167FAA26A5DF),
2193 UINT64_C(0x000123D1A2FDB52D), UINT64_C(0x00061BBE43A46D84),
2194 UINT64_C(0x000261B8D88701BD)},
2195 {UINT64_C(0x000C87F87048B464), UINT64_C(0x00053BAEC34F322B),
2196 UINT64_C(0x0004DC58AFE19A7D), UINT64_C(0x000090CE2820F2C2),
2197 UINT64_C(0x0006C48AC43ECD33)},
2198 {UINT64_C(0x000B402CCF1F1A30), UINT64_C(0x000429DB8F417641),
2199 UINT64_C(0x000249FD2DC1A2A4), UINT64_C(0x00049F1F51516171),
2200 UINT64_C(0x00065C94E325A506)}},
2201 {{UINT64_C(0x0005D0EAFD053602), UINT64_C(0x0000B2EB6445EFF1),
2202 UINT64_C(0x0003EBD9F65805D5), UINT64_C(0x0003CA4B8EBF6A36),
2203 UINT64_C(0x00078BFD685BE998)},
2204 {UINT64_C(0x000F64B891DDF860), UINT64_C(0x000529576B60556C),
2205 UINT64_C(0x0001B37FD3E24669), UINT64_C(0x0000033818EEF5C8),
2206 UINT64_C(0x0002B11EBF7E5937)},
2207 {UINT64_C(0x0003152B742C702B), UINT64_C(0x0006632B1ECD6036),
2208 UINT64_C(0x0007923AFB88728F), UINT64_C(0x0006244DA1C3448B),
2209 UINT64_C(0x0000AD2FB0196EC3)}},
2210 {{UINT64_C(0x000AD563EB3B07A3), UINT64_C(0x0001213A17B47AC3),
2211 UINT64_C(0x00053EC21980E6FC), UINT64_C(0x0002C4ACC165507F),
2212 UINT64_C(0x0007A622F28DA7BE)},
2213 {UINT64_C(0x000C8F45E5659E8D), UINT64_C(0x0002A78FCB23CE95),
2214 UINT64_C(0x00024430FD4597D0), UINT64_C(0x000347620F5EDF93),
2215 UINT64_C(0x0003DC647EA1BA77)},
2216 {UINT64_C(0x0007F8F8703A7DCA), UINT64_C(0x000795C87DAACF66),
2217 UINT64_C(0x00007534BD87B9EE), UINT64_C(0x0005099B2C521F78),
2218 UINT64_C(0x000273750C74E81D)}},
2219 {{UINT64_C(0x00024EDC3D8ABF8E), UINT64_C(0x000300DFA97BDDE9),
2220 UINT64_C(0x000446C6F830946C), UINT64_C(0x00068F06F4ACDD60),
2221 UINT64_C(0x00018F286BEDB687)},
2222 {UINT64_C(0x0003287C7040CAF8), UINT64_C(0x0005A30953D9648B),
2223 UINT64_C(0x0004C0CED1BF2F16), UINT64_C(0x0005022BA173833A),
2224 UINT64_C(0x000471670E5DD4C8)},
2225 {UINT64_C(0x000575C7D920A1FA), UINT64_C(0x000028011ACAA137),
2226 UINT64_C(0x000267F433A9BB5D), UINT64_C(0x0000C0E4B91042B4),
2227 UINT64_C(0x0001740F314FE330)}},
2228 {{UINT64_C(0x0009146BFD90884A), UINT64_C(0x00024724AE1312FD),
2229 UINT64_C(0x0000CC37AB3544BD), UINT64_C(0x0002E4F30E1D877C),
2230 UINT64_C(0x00078F98059C7CDB)},
2231 {UINT64_C(0x00080EF557A2B367), UINT64_C(0x00034596D52275E4),
2232 UINT64_C(0x0003D07B43BC2723), UINT64_C(0x000485142DA02EA6),
2233 UINT64_C(0x00052ED77068B052)},
2234 {UINT64_C(0x00050C37F84E0B1E), UINT64_C(0x0007F90DAF676333),
2235 UINT64_C(0x000014A034E40FE3), UINT64_C(0x0001A1CCC5B06FA4),
2236 UINT64_C(0x0002B57B6AAF5AFB)}},
2237 {{UINT64_C(0x0005A1EC835F93D9), UINT64_C(0x00027C73660ABD19),
2238 UINT64_C(0x00051ED4ACB98418), UINT64_C(0x0005934D9A8C4481),
2239 UINT64_C(0x000056DCE5E599B7)},
2240 {UINT64_C(0x000D82F2893E91E9), UINT64_C(0x00007DB2ED2F5FC8),
2241 UINT64_C(0x000470BFB2A14A2D), UINT64_C(0x000243357800B12B),
2242 UINT64_C(0x0001586B880D973F)},
2243 {UINT64_C(0x0002894A1AEE30F0), UINT64_C(0x00000A56EEFC3625),
2244 UINT64_C(0x000328B708D399DB), UINT64_C(0x0001E0245E856F01),
2245 UINT64_C(0x000331A120A8FA38)}},
2246 {{UINT64_C(0x0000B01B89AE8C48), UINT64_C(0x000160C2BE55859D),
2247 UINT64_C(0x00032ED748BC62AF), UINT64_C(0x0003A96EF5B049CB),
2248 UINT64_C(0x0007D5C6C7C53881)},
2249 {UINT64_C(0x000F575F2E610488), UINT64_C(0x00050DD2D252D63F),
2250 UINT64_C(0x00032900A6CAB78A), UINT64_C(0x00052436AFB000AE),
2251 UINT64_C(0x0001058C522E70B4)},
2252 {UINT64_C(0x000C32E693EA545B), UINT64_C(0x000363FF953257C4),
2253 UINT64_C(0x0006BB224E619CF6), UINT64_C(0x0004725D9B6CC315),
2254 UINT64_C(0x00028D022032739E)}},
2255 {{UINT64_C(0x000130FFBDDA7B5B), UINT64_C(0x00008B75F47AA474),
2256 UINT64_C(0x000704583AA71B9F), UINT64_C(0x000003F123BF1718),
2257 UINT64_C(0x0000C86888DA8826)},
2258 {UINT64_C(0x0001E99131EE0CC8), UINT64_C(0x00015BD0E81C213F),
2259 UINT64_C(0x00060DB057C2D8C7), UINT64_C(0x0003931F8CDBD796),
2260 UINT64_C(0x0000B711D1643ABA)},
2261 {UINT64_C(0x000CAE2E3BD0339C), UINT64_C(0x000535FE10F2B9B9),
2262 UINT64_C(0x0003BAC64D32897B), UINT64_C(0x0002E04FBE091647),
2263 UINT64_C(0x00069D6BFB6020F3)}},
2264 {{UINT64_C(0x0003BF20FBF44C75), UINT64_C(0x0003DFDF8AA48E71),
2265 UINT64_C(0x000755E830F9348A), UINT64_C(0x0004DCF2FBC753A0),
2266 UINT64_C(0x000563C950DED5E7)},
2267 {UINT64_C(0x00095173064904B2), UINT64_C(0x0001AD16621A4F26),
2268 UINT64_C(0x0000190EBCA98F19), UINT64_C(0x00025C88E57E353D),
2269 UINT64_C(0x0007235C78DDE09A)},
2270 {UINT64_C(0x000AB2477B99C193), UINT64_C(0x000787D92E572642),
2271 UINT64_C(0x000254AE25CB36B6), UINT64_C(0x00014FF7F61A68BA),
2272 UINT64_C(0x0002AE23C86DA540)}},
2273 {{UINT64_C(0x000AA69FC65B55EE), UINT64_C(0x000602BFEB958D5E),
2274 UINT64_C(0x00041B4D60AAC3E7), UINT64_C(0x0006E4587652A12A),
2275 UINT64_C(0x000538D39DB42EA9)},
2276 {UINT64_C(0x000A78E9FAE803AA), UINT64_C(0x00050F1F50C82CCF),
2277 UINT64_C(0x0000690C7B716417), UINT64_C(0x00009E9B33D5B1F8),
2278 UINT64_C(0x00046AD0D9B59A8E)},
2279 {UINT64_C(0x000E0FB21CA97546), UINT64_C(0x000796398B48AA4B),
2280 UINT64_C(0x0005BFE2E571682E), UINT64_C(0x00079B204C96268F),
2281 UINT64_C(0x00036514FC4F006A)}},
2282 {{UINT64_C(0x000AB6ADDA89E077), UINT64_C(0x000456219E30B23F),
2283 UINT64_C(0x00073DF2B5B296A7), UINT64_C(0x0007416CF096B608),
2284 UINT64_C(0x000506FAF22F148F)},
2285 {UINT64_C(0x0004D01231B41F08), UINT64_C(0x00004E0DE454C9D9),
2286 UINT64_C(0x0001C359EA53295F), UINT64_C(0x0005C16FFE73D620),
2287 UINT64_C(0x0001FD9A40888D64)},
2288 {UINT64_C(0x00082DD110EAA0DA), UINT64_C(0x0002885D3B8FB45F),
2289 UINT64_C(0x0007AAD0C23075A0), UINT64_C(0x000013BF01DF39A9),
2290 UINT64_C(0x000025FFC049C3BB)}},
2291 {{UINT64_C(0x000188B1DC7CFBB3), UINT64_C(0x00073B99A1AD10BA),
2292 UINT64_C(0x000799A4C5F58A95), UINT64_C(0x0005036A5F90050D),
2293 UINT64_C(0x0007A61558C47079)},
2294 {UINT64_C(0x0008E5B50FC0616E), UINT64_C(0x0006BE2B98B6BAB1),
2295 UINT64_C(0x000214A72D8A4D1E), UINT64_C(0x000761E21C815E1A),
2296 UINT64_C(0x0003D750B6148769)},
2297 {UINT64_C(0x000A9F7E8D06E7C1), UINT64_C(0x000028F98763EEF5),
2298 UINT64_C(0x00079EA1FD1DE978), UINT64_C(0x00021613CA3BB40B),
2299 UINT64_C(0x00070E4362C5401C)}},
2300 {{UINT64_C(0x0009D08B1089B486), UINT64_C(0x000165F2FBD68266),
2301 UINT64_C(0x00035E25AA132009), UINT64_C(0x00044F5F944F1D77),
2302 UINT64_C(0x00025F71B14DA654)},
2303 {UINT64_C(0x000BD353769CE1F9), UINT64_C(0x0006FA3F3DDDC54C),
2304 UINT64_C(0x0002B84C2EC34B40), UINT64_C(0x0002BC5399680FE7),
2305 UINT64_C(0x00077DF80D7D51A4)},
2306 {UINT64_C(0x0004E2691B0328F3), UINT64_C(0x00050F4537961493),
2307 UINT64_C(0x00044E2C41C84DCA), UINT64_C(0x00052B780EFDCD69),
2308 UINT64_C(0x0005376F2A050E19)}},
2311 {{UINT64_C(0x000DA03985F38262), UINT64_C(0x00037D5F62914A3C),
2312 UINT64_C(0x000793B68F7811A9), UINT64_C(0x00032B90BCD39CE3),
2313 UINT64_C(0x00075AA44FE7E19C)},
2314 {UINT64_C(0x000F05AB91A2B12A), UINT64_C(0x00059AF4F8982C00),
2315 UINT64_C(0x00048CCE588AE51A), UINT64_C(0x00049E4C670BBE65),
2316 UINT64_C(0x0006B3D82691A651)},
2317 {UINT64_C(0x0008F5698465745B), UINT64_C(0x00075BE3EB74331D),
2318 UINT64_C(0x000737D69788EE86), UINT64_C(0x00062141377DCE86),
2319 UINT64_C(0x0006EFBEF11283CC)}},
2320 {{UINT64_C(0x000FB2D42C8285AF), UINT64_C(0x0006FD40664A5490),
2321 UINT64_C(0x00057F0694D97426), UINT64_C(0x0002A7A28B3356DA),
2322 UINT64_C(0x00028920886AF6EC)},
2323 {UINT64_C(0x000A8C24C0BF2760), UINT64_C(0x00068C3EC242BF3A),
2324 UINT64_C(0x0000CE0D0E1B7F97), UINT64_C(0x00061C58FABECF34),
2325 UINT64_C(0x00004CA319E801FD)},
2326 {UINT64_C(0x000325DE46C5736B), UINT64_C(0x000468915384C263),
2327 UINT64_C(0x0006347A5799363C), UINT64_C(0x0007210BB1344417),
2328 UINT64_C(0x00011E398C2404CC)}},
2329 {{UINT64_C(0x0006351562580ED8), UINT64_C(0x0006220AA1C9D62B),
2330 UINT64_C(0x0001CDF640634049), UINT64_C(0x0002FA7088B01B0A),
2331 UINT64_C(0x00019ACCA28277EE)},
2332 {UINT64_C(0x000C65B688EBF493), UINT64_C(0x0005B03149C63AE5),
2333 UINT64_C(0x0006AFA8197C4FD1), UINT64_C(0x0002D0DA5C748E78),
2334 UINT64_C(0x000662C002D4D15F)},
2335 {UINT64_C(0x0001118B8CBBB7E7), UINT64_C(0x0004CBAB82FD2BF5),
2336 UINT64_C(0x0002348B0CE469A5), UINT64_C(0x00023EB3398A797E),
2337 UINT64_C(0x0004E228589713E3)}},
2338 {{UINT64_C(0x0000B4E4D027C85C), UINT64_C(0x0000D803053DA772),
2339 UINT64_C(0x00065984BB60A337), UINT64_C(0x0007DC2376F7272A),
2340 UINT64_C(0x0000E9430E355BA4)},
2341 {UINT64_C(0x000A8E389D48606F), UINT64_C(0x00021F690AA2DBC8),
2342 UINT64_C(0x000142274ABC9F41), UINT64_C(0x00072BF593710713),
2343 UINT64_C(0x0002FD7F4AE2EE22)},
2344 {UINT64_C(0x000BF1C20DDD2691), UINT64_C(0x0005411630C2A271),
2345 UINT64_C(0x0002D6C2990BAF6C), UINT64_C(0x00016E01E690E20C),
2346 UINT64_C(0x0000E8F8FFA954EC)}},
2347 {{UINT64_C(0x0005A3AB6DAFDFD3), UINT64_C(0x0000D9D486BDD09A),
2348 UINT64_C(0x0002D2E51B7C9711), UINT64_C(0x00017CE407134280),
2349 UINT64_C(0x0003AD3997FA1672)},
2350 {UINT64_C(0x0003D8F172453802), UINT64_C(0x0002317FA3185EC2),
2351 UINT64_C(0x0000BA91852E2031), UINT64_C(0x0005EC464B3ED108),
2352 UINT64_C(0x00057C6D8CF0E0FD)},
2353 {UINT64_C(0x0008CA2766DB4A5B), UINT64_C(0x00073D443B130A20),
2354 UINT64_C(0x00058BF472C3BA39), UINT64_C(0x0006F5CC0907C053),
2355 UINT64_C(0x0003FC5C6F14BD87)}},
2356 {{UINT64_C(0x0004B65645E73CF6), UINT64_C(0x0007C5AB1C053774),
2357 UINT64_C(0x0005018E4FF1FC18), UINT64_C(0x000769511D97D00F),
2358 UINT64_C(0x0006AD6BD6EAA9E9)},
2359 {UINT64_C(0x00046576871857E4), UINT64_C(0x000215AA0839B591),
2360 UINT64_C(0x0004E1CAA9F6A2CA), UINT64_C(0x0007AB0F33E726C5),
2361 UINT64_C(0x00067F4BE171AA28)},
2362 {UINT64_C(0x0006531996604B7F), UINT64_C(0x000453BF42EC79D2),
2363 UINT64_C(0x00032113012CCEA4), UINT64_C(0x00006D0B5464300F),
2364 UINT64_C(0x0002176B1E5D6D50)}},
2365 {{UINT64_C(0x0001D3C100DC72D5), UINT64_C(0x0003654CB2834C97),
2366 UINT64_C(0x0005E965AC7DA69D), UINT64_C(0x00078DC0DD9AE1DD),
2367 UINT64_C(0x00019E21FECCAAF3)},
2368 {UINT64_C(0x00013C3FDF2B1672), UINT64_C(0x000619ED60AD922A),
2369 UINT64_C(0x0006A134A3138156), UINT64_C(0x000074D7A0EB94F4),
2370 UINT64_C(0x000655B9265AD61E)},
2371 {UINT64_C(0x00091D8E2767E0B1), UINT64_C(0x00065AEFAC257813),
2372 UINT64_C(0x00038076D1470BE1), UINT64_C(0x0003C981EA0EB22B),
2373 UINT64_C(0x00015A7A2D75B203)}},
2374 {{UINT64_C(0x000CC309EA9DA550), UINT64_C(0x000167109F6B7EEA),
2375 UINT64_C(0x00036256E39C62A5), UINT64_C(0x00023FE04A59A8D0),
2376 UINT64_C(0x00048F3DCFC704E4)},
2377 {UINT64_C(0x000DD13D87BC3FD8), UINT64_C(0x0001E1039D0C27A5),
2378 UINT64_C(0x00013884321DFE6C), UINT64_C(0x00018DF5EB967D7E),
2379 UINT64_C(0x00027626CDA767FD)},
2380 {UINT64_C(0x00081A4C254FE9AA), UINT64_C(0x00039710CABEFE25),
2381 UINT64_C(0x0001FE4ED0D3AF13), UINT64_C(0x00036B4C87AE2C9F),
2382 UINT64_C(0x00011248B666F136)}},
2383 {{UINT64_C(0x000E797C4CCA0B46), UINT64_C(0x000549315E592B39),
2384 UINT64_C(0x000446B1DF8247A1), UINT64_C(0x00030ED36C5BB7F3),
2385 UINT64_C(0x0002AA80BB30E10E)},
2386 {UINT64_C(0x000987E78A6334CD), UINT64_C(0x00021A51601C5BC5),
2387 UINT64_C(0x00056CB555352F37), UINT64_C(0x000225D060DB2429),
2388 UINT64_C(0x000385DB17BD6237)},
2389 {UINT64_C(0x0002ED3E680A5E84), UINT64_C(0x0005712851DFAB33),
2390 UINT64_C(0x00039A12254B9A45), UINT64_C(0x000216D42F43EEBB),
2391 UINT64_C(0x000357331598DA83)}},
2392 {{UINT64_C(0x000F7C1D3279D8A5), UINT64_C(0x00043F72163137B9),
2393 UINT64_C(0x00042C3FE876167F), UINT64_C(0x0003B0E73C83522A),
2394 UINT64_C(0x0001DB409981C582)},
2395 {UINT64_C(0x000122CD3118D65B), UINT64_C(0x00071763F291C87A),
2396 UINT64_C(0x000561465C8B3331), UINT64_C(0x0004944F4C61C7FD),
2397 UINT64_C(0x0002AAC9443A36DB)},
2398 {UINT64_C(0x0004D4FA4218C372), UINT64_C(0x00076C45E03C77EB),
2399 UINT64_C(0x000072FB97E90D33), UINT64_C(0x0005082CF2079905),
2400 UINT64_C(0x0002FE26BFD54FFA)}},
2401 {{UINT64_C(0x0007D19A42E4631A), UINT64_C(0x0006571B981A6AEC),
2402 UINT64_C(0x0004D393AE74429A), UINT64_C(0x000446A87D160168),
2403 UINT64_C(0x0003AF53BFC0F685)},
2404 {UINT64_C(0x0002D55D97B6EB19), UINT64_C(0x00039E6461F719F3),
2405 UINT64_C(0x000190259D2C913D), UINT64_C(0x0003C976B6FBF37A),
2406 UINT64_C(0x00019F876AD4BC35)},
2407 {UINT64_C(0x000EDF4304B4688B), UINT64_C(0x0000C939FCAC59CD),
2408 UINT64_C(0x00056BFC00BE589D), UINT64_C(0x0004B4C590A12AC7),
2409 UINT64_C(0x0007EF9566506AD0)}},
2410 {{UINT64_C(0x000A585FE0E0C2E0), UINT64_C(0x00018D0780A3AD5B),
2411 UINT64_C(0x0006DD4F15327657), UINT64_C(0x00009AB856FE2440),
2412 UINT64_C(0x000750F36E6E9B65)},
2413 {UINT64_C(0x0008B6024E61BB41), UINT64_C(0x0006393F246B2AD3),
2414 UINT64_C(0x000446AF58B6CA59), UINT64_C(0x00000520765881CA),
2415 UINT64_C(0x00061089ABFD62AB)},
2416 {UINT64_C(0x000633226585ECE4), UINT64_C(0x00076BF57CC213CB),
2417 UINT64_C(0x000484A01C226640), UINT64_C(0x00033C1F700F8FBA),
2418 UINT64_C(0x0000B0E1B3037271)}},
2419 {{UINT64_C(0x00054E468A9EFE70), UINT64_C(0x000608519FBFBF2D),
2420 UINT64_C(0x0005333558A69061), UINT64_C(0x0004D0D77DF73B72),
2421 UINT64_C(0x0005963DB206A396)},
2422 {UINT64_C(0x000394333A1E85F3), UINT64_C(0x000353C23C03493E),
2423 UINT64_C(0x0000C828A97CB1A5), UINT64_C(0x00078C43450120ED),
2424 UINT64_C(0x000555DF3569380F)},
2425 {UINT64_C(0x00042EFA777C3D87), UINT64_C(0x0006535188CEB3F6),
2426 UINT64_C(0x000711F155E76C84), UINT64_C(0x0000E3BA9883F418),
2427 UINT64_C(0x00057A3C7F7ECCF3)}},
2428 {{UINT64_C(0x000B073EF993682F), UINT64_C(0x00033F05FA3CCE30),
2429 UINT64_C(0x00068B17D4A39381), UINT64_C(0x0004A922A545C066),
2430 UINT64_C(0x0006F6DAE315DA70)},
2431 {UINT64_C(0x00014D0E6682401A), UINT64_C(0x0007CCF46A4DD19B),
2432 UINT64_C(0x00075F65E59EC735), UINT64_C(0x0001444919609445),
2433 UINT64_C(0x00056DEA40CFB96B)},
2434 {UINT64_C(0x00016AF62D5F1A62), UINT64_C(0x00031733B90868F3),
2435 UINT64_C(0x0006590B06472897), UINT64_C(0x00049790ACFA5796),
2436 UINT64_C(0x0003AB09B226B35A)}},
2437 {{UINT64_C(0x000329065372355E), UINT64_C(0x0007AB688B6A2989),
2438 UINT64_C(0x00045AC32571E188), UINT64_C(0x0005840E91DC5D76),
2439 UINT64_C(0x0000A0DFC537909E)},
2440 {UINT64_C(0x0005F472964EF0CE), UINT64_C(0x0003D2FA150C40C5),
2441 UINT64_C(0x0007CBF1211260FB), UINT64_C(0x0003709955BA6654),
2442 UINT64_C(0x000217DBDD3D5D0D)},
2443 {UINT64_C(0x000A1158C12DB2A4), UINT64_C(0x0004C90A2B817CA8),
2444 UINT64_C(0x00061F4B5B3A38EC), UINT64_C(0x000380423D6EF40B),
2445 UINT64_C(0x00000B4B0EF2C8F0)}},
2446 {{UINT64_C(0x00028D6E002BCA29), UINT64_C(0x0007A3997D7D546A),
2447 UINT64_C(0x0005D8C776975959), UINT64_C(0x0000317399D2025E),
2448 UINT64_C(0x000754B217E301A9)},
2449 {UINT64_C(0x0002CDE1681E8828), UINT64_C(0x000380F9FC21B2AB),
2450 UINT64_C(0x00003AD0F0DC0117), UINT64_C(0x0003D01C67CEC59B),
2451 UINT64_C(0x00039049C45C39C8)},
2452 {UINT64_C(0x0000CE99521AEEAB), UINT64_C(0x0003B4C67C5B669C),
2453 UINT64_C(0x0000E043A30EE5B7), UINT64_C(0x0003F0C4E94F62CF),
2454 UINT64_C(0x0001AB4F30E0A8F5)}},
2457 {{UINT64_C(0x000DC91F212AB480), UINT64_C(0x0005945E1877E8EC),
2458 UINT64_C(0x00013573E60D6704), UINT64_C(0x00069D9C4A961CA2),
2459 UINT64_C(0x0003DE09EC8A48AF)},
2460 {UINT64_C(0x000E81E566BFFA33), UINT64_C(0x00033E06B06E4111),
2461 UINT64_C(0x0002D32A23297AFD), UINT64_C(0x0005F9BFCE126AC6),
2462 UINT64_C(0x0001FF61C1A88D8E)},
2463 {UINT64_C(0x0008D3EC31CFC3EE), UINT64_C(0x000046D8793EAB63),
2464 UINT64_C(0x0000C143A50BCCDC), UINT64_C(0x0006EAB8519D9BAD),
2465 UINT64_C(0x00074830BD46D5B4)}},
2466 {{UINT64_C(0x0000574A2032B148), UINT64_C(0x0004328CBA692C33),
2467 UINT64_C(0x000232F42D123335), UINT64_C(0x000181DEF8EAD0DD),
2468 UINT64_C(0x000451E2578C52D5)},
2469 {UINT64_C(0x000695C6731F0527), UINT64_C(0x0005CD46B5C17880),
2470 UINT64_C(0x00015EAA924D0904), UINT64_C(0x00007F6FB72E84D0),
2471 UINT64_C(0x0000CEB928AFDBBD)},
2472 {UINT64_C(0x0004D3626FF5B12C), UINT64_C(0x00051FE69CA7F94B),
2473 UINT64_C(0x000772203CEE99E4), UINT64_C(0x0005F1FAC7E8C081),
2474 UINT64_C(0x0003E578A1665444)}},
2475 {{UINT64_C(0x000B298801B1FE77), UINT64_C(0x0002586B0CE008AC),
2476 UINT64_C(0x00045E778DC50E87), UINT64_C(0x0000FDCB5F3CC8F7),
2477 UINT64_C(0x00017C5D39EFC586)},
2478 {UINT64_C(0x0002A41D8771BA87), UINT64_C(0x0004C8102431A7BA),
2479 UINT64_C(0x0000B390AB74C50C), UINT64_C(0x0002C546F7C05D4D),
2480 UINT64_C(0x0006AAD492B3116F)},
2481 {UINT64_C(0x0008FF03C1367A73), UINT64_C(0x0002A4A748616572),
2482 UINT64_C(0x000605B500CB4A72), UINT64_C(0x0005C39BB9BB5B8B),
2483 UINT64_C(0x000569FE03A16B9F)}},
2484 {{UINT64_C(0x000275341CBCADF6), UINT64_C(0x000430EFD84DCC71),
2485 UINT64_C(0x00022B997FAB00F0), UINT64_C(0x00030C5632CF0693),
2486 UINT64_C(0x0002A0826D840314)},
2487 {UINT64_C(0x000C11CD5CF6EE57), UINT64_C(0x0001257E6308FBB1),
2488 UINT64_C(0x0002F7CE59284FB8), UINT64_C(0x00057DD9BDD3EF59),
2489 UINT64_C(0x0003452936337369)},
2490 {UINT64_C(0x000530B11F6BDDA7), UINT64_C(0x0007A51865D93007),
2491 UINT64_C(0x00076B5BC60F0AC9), UINT64_C(0x000212F031E350EA),
2492 UINT64_C(0x000075AED0A2ADAE)}},
2493 {{UINT64_C(0x000AD78B391BD2D5), UINT64_C(0x0003A11ABEA7FF04),
2494 UINT64_C(0x00046A25F0F350A4), UINT64_C(0x0001543CC7EF57AB),
2495 UINT64_C(0x00069223D8309EB4)},
2496 {UINT64_C(0x000B33AD1F86A15A), UINT64_C(0x00036B112A03501B),
2497 UINT64_C(0x000344A2066D4EF2), UINT64_C(0x00055436BD4B9A9D),
2498 UINT64_C(0x00041A71A942A508)},
2499 {UINT64_C(0x0006FF9618F443D0), UINT64_C(0x0000F3000CB2F1BA),
2500 UINT64_C(0x00022C2897DAADE0), UINT64_C(0x0004F604C596FCBC),
2501 UINT64_C(0x000585C83B55AFF4)}},
2502 {{UINT64_C(0x00084B6AF7D110A1), UINT64_C(0x0001EFC9DBBC4234),
2503 UINT64_C(0x000796661C37007B), UINT64_C(0x00010DB07259FC43),
2504 UINT64_C(0x000202355E8495E8)},
2505 {UINT64_C(0x000DA5E823077C6C), UINT64_C(0x0003C9503E1777C0),
2506 UINT64_C(0x0001A5E4F1DED645), UINT64_C(0x0000DE482043B271),
2507 UINT64_C(0x0004B4CCC6B33E65)},
2508 {UINT64_C(0x00011797174CD365), UINT64_C(0x000242D89859CD09),
2509 UINT64_C(0x0000714A4593BD77), UINT64_C(0x00051B9197490AE5),
2510 UINT64_C(0x0006E6A726266AD0)}},
2511 {{UINT64_C(0x0006163606CF5614), UINT64_C(0x0003B9BA82C96535),
2512 UINT64_C(0x000075E66F7CF6D4), UINT64_C(0x000411E3154EC181),
2513 UINT64_C(0x00029B40D6F2E74B)},
2514 {UINT64_C(0x0005D2E429379A65), UINT64_C(0x00008B1A72434343),
2515 UINT64_C(0x00041E8D9808E74A), UINT64_C(0x0004F14CB75EB689),
2516 UINT64_C(0x0004F434008C1B41)},
2517 {UINT64_C(0x00067B260BE03B58), UINT64_C(0x0001EEF4691ADD3A),
2518 UINT64_C(0x0002850460D0C4EE), UINT64_C(0x0005AFCC1FFDAA08),
2519 UINT64_C(0x0003AB9267B9F6DC)}},
2520 {{UINT64_C(0x000B5389B777649D), UINT64_C(0x0001F24DBD666B73),
2521 UINT64_C(0x00036DFB5DE2A31F), UINT64_C(0x0005EB994849E227),
2522 UINT64_C(0x0004279FBFCC1BD4)},
2523 {UINT64_C(0x000B7EA950A7028F), UINT64_C(0x000732F69E7CF7DE),
2524 UINT64_C(0x00066069E71F3D7B), UINT64_C(0x00028033D27359B1),
2525 UINT64_C(0x000183D3130F9EED)},
2526 {UINT64_C(0x000D74EA5E42F626), UINT64_C(0x0004B6BC58EA9C64),
2527 UINT64_C(0x0003C2C8FEA82634), UINT64_C(0x0002CE04C5B571DD),
2528 UINT64_C(0x0001E397436718BF)}},
2529 {{UINT64_C(0x000B7484714F9403), UINT64_C(0x0004FC7BF02108DB),
2530 UINT64_C(0x0003678FA400AD90), UINT64_C(0x00028EF7C8AC0FE1),
2531 UINT64_C(0x000504A42505BDEF)},
2532 {UINT64_C(0x000A0A066ABF7FBB), UINT64_C(0x00072AEC8D4433CE),
2533 UINT64_C(0x0002A0384B583EC1), UINT64_C(0x0002AB91E995640C),
2534 UINT64_C(0x000169BC2751E588)},
2535 {UINT64_C(0x0009EB12660357B5), UINT64_C(0x00077A9937FD5E5F),
2536 UINT64_C(0x00021FF5CE16F36C), UINT64_C(0x0001C906DF80DF41),
2537 UINT64_C(0x0000CC48BA3DF0EA)}},
2538 {{UINT64_C(0x000E23A04EED9E35), UINT64_C(0x0004ADC00E39212A),
2539 UINT64_C(0x00017453A70FE352), UINT64_C(0x0006D407B1DB39B2),
2540 UINT64_C(0x0005D825F613189B)},
2541 {UINT64_C(0x00040B93828FA640), UINT64_C(0x00017C0D3D748E6A),
2542 UINT64_C(0x0003E2BC36916CA3), UINT64_C(0x00026F60A9DD3D92),
2543 UINT64_C(0x0002CB47886C390F)},
2544 {UINT64_C(0x0008E7468212D22E), UINT64_C(0x0005E3F127FB8644),
2545 UINT64_C(0x0006C85DFBC55D78), UINT64_C(0x0007DFDFC6C531F3),
2546 UINT64_C(0x000674E26E15BF6B)}},
2547 {{UINT64_C(0x000742AB1CE45F49), UINT64_C(0x000352695906DAC7),
2548 UINT64_C(0x00067D9DD8206042), UINT64_C(0x0002A8F523687321),
2549 UINT64_C(0x000209C2CC3DF3F2)},
2550 {UINT64_C(0x000582E07DACB336), UINT64_C(0x000659136B8B103E),
2551 UINT64_C(0x00075BFAC5E74BD0), UINT64_C(0x00030FA01037A173),
2552 UINT64_C(0x00027A6E9B54A029)},
2553 {UINT64_C(0x00010636DC94228F), UINT64_C(0x000334F99AD2D208),
2554 UINT64_C(0x000210CE39BF48FB), UINT64_C(0x0005CE98A1D2F02D),
2555 UINT64_C(0x0007E987948C2C36)}},
2556 {{UINT64_C(0x00060BD25865CC5A), UINT64_C(0x000717975E64B3FD),
2557 UINT64_C(0x000791116DD316E7), UINT64_C(0x000027FC70709E15),
2558 UINT64_C(0x000014CE5C4B9FED)},
2559 {UINT64_C(0x000FCB5EE438E62F), UINT64_C(0x0003918BFDF256E1),
2560 UINT64_C(0x000122BF1C544888), UINT64_C(0x00014620D1E4D6BE),
2561 UINT64_C(0x00031786B5D1AA6E)},
2562 {UINT64_C(0x000D8369134DE3F1), UINT64_C(0x000358E513D33827),
2563 UINT64_C(0x0001AD06806E9F25), UINT64_C(0x0007751294480EB8),
2564 UINT64_C(0x00070E23870117F1)}},
2565 {{UINT64_C(0x00006F3BCD1B2F70), UINT64_C(0x0000FA5C78F50611),
2566 UINT64_C(0x000411C55245B3EE), UINT64_C(0x0004944F3F6FC1FB),
2567 UINT64_C(0x000044A8C001AA25)},
2568 {UINT64_C(0x000D4183C7441852), UINT64_C(0x000055D95E60582E),
2569 UINT64_C(0x0007BCDE3E7457F2), UINT64_C(0x00008C8DB0B27127),
2570 UINT64_C(0x000151434B629450)},
2571 {UINT64_C(0x000E723B7F1ECEB3), UINT64_C(0x0004AD5542379FD9),
2572 UINT64_C(0x0007AD503D0F9616), UINT64_C(0x0007C70002B01072),
2573 UINT64_C(0x00014758CEF08E44)}},
2574 {{UINT64_C(0x000C404279D4475B), UINT64_C(0x00069FDFED5F482D),
2575 UINT64_C(0x0004DDA9A420B9DE), UINT64_C(0x000442DE4FB067AC),
2576 UINT64_C(0x00011575126C1A87)},
2577 {UINT64_C(0x0000D4A13CE38DD3), UINT64_C(0x00055443D3A075FC),
2578 UINT64_C(0x0002D0CC46239CD5), UINT64_C(0x00037A0D9341BE9F),
2579 UINT64_C(0x0007D72576A16B0E)},
2580 {UINT64_C(0x00018F1C0EA31782), UINT64_C(0x00017F5C99216478),
2581 UINT64_C(0x00070B5287151CE4), UINT64_C(0x00069D184D521E3F),
2582 UINT64_C(0x00050B904149AB2A)}},
2583 {{UINT64_C(0x000B9757956238BE), UINT64_C(0x000719EF66129C48),
2584 UINT64_C(0x0003A4A2018A1497), UINT64_C(0x00060697B014C86D),
2585 UINT64_C(0x0004211842CFCBB6)},
2586 {UINT64_C(0x00000FC466BA4129), UINT64_C(0x0005C2C02129FAE5),
2587 UINT64_C(0x0007CC7E722EDDB4), UINT64_C(0x000463EFB0DEA9BC),
2588 UINT64_C(0x0005CEAB5704312E)},
2589 {UINT64_C(0x0003CB3EF741A489), UINT64_C(0x000447C22A9AC8F6),
2590 UINT64_C(0x00070DC1AC662C00), UINT64_C(0x000643FBD84746C4),
2591 UINT64_C(0x00047AC14BC4BE7F)}},
2592 {{UINT64_C(0x0001F0ED4EAB4BF3), UINT64_C(0x0003BDBDE234EFD5),
2593 UINT64_C(0x0007F9817DB30238), UINT64_C(0x0005F1CA682E32C5),
2594 UINT64_C(0x0004EA29A4CB0AC2)},
2595 {UINT64_C(0x000119149BBD8CE2), UINT64_C(0x00053B67849C8636),
2596 UINT64_C(0x0000EE5D57DDF5A8), UINT64_C(0x0004ACD87314DB39),
2597 UINT64_C(0x00050B40A053EECC)},
2598 {UINT64_C(0x000A4EC0C58B1A27), UINT64_C(0x0004144223834F69),
2599 UINT64_C(0x00006C3A5FA7A66C), UINT64_C(0x0001E7C747C08629),
2600 UINT64_C(0x0006C75F05A9CE16)}},
2603 {{UINT64_C(0x000DA9D6805AB8BD), UINT64_C(0x000551D3DA5834BB),
2604 UINT64_C(0x00044E2A3C850244), UINT64_C(0x00003C161B738B16),
2605 UINT64_C(0x00016FA62C9D5E85)},
2606 {UINT64_C(0x0002A0101ADD9A68), UINT64_C(0x00005F00A8B73A3E),
2607 UINT64_C(0x0002700C6352EA8B), UINT64_C(0x00058F72766D9CF5),
2608 UINT64_C(0x0000786CDD193DF0)},
2609 {UINT64_C(0x0008EF307292DAA3), UINT64_C(0x00078A0B85552DDA),
2610 UINT64_C(0x0002B5E21BAB14CA), UINT64_C(0x00042FBE2B9E130A),
2611 UINT64_C(0x0006A1FF64B8DFE0)}},
2612 {{UINT64_C(0x000C37A44368992F), UINT64_C(0x000503AD37567295),
2613 UINT64_C(0x00022D6E783EB997), UINT64_C(0x00073209A3FE24D5),
2614 UINT64_C(0x00061BEA701A085E)},
2615 {UINT64_C(0x000F79A9906695E1), UINT64_C(0x0006563AA33BECCA),
2616 UINT64_C(0x0006D9C258571274), UINT64_C(0x0002082E0EFF1CF3),
2617 UINT64_C(0x00006858AC5958CD)},
2618 {UINT64_C(0x00073B5DF922B953), UINT64_C(0x0007D833BB16576F),
2619 UINT64_C(0x0002D7E0952EDC43), UINT64_C(0x0004C40B62DE9061),
2620 UINT64_C(0x0006802A03BBC4A8)}},
2621 {{UINT64_C(0x000AA4FF9CD029FB), UINT64_C(0x0006A8F58A61B495),
2622 UINT64_C(0x00076DE5AEDD2889), UINT64_C(0x000418E79FA28A81),
2623 UINT64_C(0x0004AC6187BA7E86)},
2624 {UINT64_C(0x000BB424077E0F78), UINT64_C(0x0006BE304793DFB9),
2625 UINT64_C(0x0001D1A8E8B74E8C), UINT64_C(0x000400EE04CA634E),
2626 UINT64_C(0x0000D23EE5F7A76A)},
2627 {UINT64_C(0x000E8C82769B883D), UINT64_C(0x00061FF0A44B7C0C),
2628 UINT64_C(0x00071C3F9C0C1C14), UINT64_C(0x0001A72BC400F4FB),
2629 UINT64_C(0x000063C977E0C2A2)}},
2630 {{UINT64_C(0x000B7EA553156CDE), UINT64_C(0x0004F77ED1DA0116),
2631 UINT64_C(0x0005313D6AB54554), UINT64_C(0x00068205E8633D72),
2632 UINT64_C(0x0004C0F6F5D7AA5B)},
2633 {UINT64_C(0x0002AC03322F3ABE), UINT64_C(0x00013B9DB1E063DB),
2634 UINT64_C(0x0001653067E1D575), UINT64_C(0x00068FA0726EBED0),
2635 UINT64_C(0x00056D9BF5F7ACB5)},
2636 {UINT64_C(0x0008092305F9E607), UINT64_C(0x00050ADE9DDED289),
2637 UINT64_C(0x000677C866291C9D), UINT64_C(0x0000A00D6AD82313),
2638 UINT64_C(0x000204C6129E7A63)}},
2639 {{UINT64_C(0x000CC52FB8AA29BE), UINT64_C(0x00001FD5EBA86F95),
2640 UINT64_C(0x0003EDEE7EE1584C), UINT64_C(0x0007A98D872F3541),
2641 UINT64_C(0x00041BB59C74740D)},
2642 {UINT64_C(0x000B91A314979A22), UINT64_C(0x000445CC55FA6E68),
2643 UINT64_C(0x00029A9728593F50), UINT64_C(0x0003D453E9BB2BF4),
2644 UINT64_C(0x000458E9C150C319)},
2645 {UINT64_C(0x0008B902F4166F58), UINT64_C(0x00008BF4504AEFA7),
2646 UINT64_C(0x000507F7245632D2), UINT64_C(0x00046F4236C007FE),
2647 UINT64_C(0x0005F8B80AB194EF)}},
2648 {{UINT64_C(0x000E0E279B58D515), UINT64_C(0x000494C3FDFB0D3E),
2649 UINT64_C(0x0006ADD516425B77), UINT64_C(0x0000C99F3F472FC4),
2650 UINT64_C(0x00023C04A4713378)},
2651 {UINT64_C(0x00033C225C70B892), UINT64_C(0x0005DEF1B82B20A8),
2652 UINT64_C(0x00062D4704CA33EF), UINT64_C(0x00001505BB87DFBE),
2653 UINT64_C(0x00018D6306B777E3)},
2654 {UINT64_C(0x000A6436A9F762A4), UINT64_C(0x000102ABB9E7477D),
2655 UINT64_C(0x00004BD6FA6C8FD0), UINT64_C(0x0002E4FAD22E39A3),
2656 UINT64_C(0x0007D2D079A6B2DA)}},
2657 {{UINT64_C(0x000B537BD4E0A6B1), UINT64_C(0x00064415199F9972),
2658 UINT64_C(0x0002D496FA892827), UINT64_C(0x00029834D9583EE0),
2659 UINT64_C(0x0001F325BFC1AEE2)},
2660 {UINT64_C(0x000BE9617256C790), UINT64_C(0x0002301EF1F61C9F),
2661 UINT64_C(0x0002A218C8615200), UINT64_C(0x00060780EED8C6E7),
2662 UINT64_C(0x0004A46B99106694)},
2663 {UINT64_C(0x00037B99B0CAB13C), UINT64_C(0x00078242AB738B41),
2664 UINT64_C(0x00018258BBD69E1C), UINT64_C(0x00043D3E9A166688),
2665 UINT64_C(0x00055321313F52D3)}},
2666 {{UINT64_C(0x00067501A6250F6D), UINT64_C(0x000051135CC1DB41),
2667 UINT64_C(0x0005B70CAFF3B24D), UINT64_C(0x0007AF6469DAB79A),
2668 UINT64_C(0x0005A486101FF730)},
2669 {UINT64_C(0x000B81D6FB3B7613), UINT64_C(0x000705F8371DE858),
2670 UINT64_C(0x0004616EECCC6DE2), UINT64_C(0x0003B624C3D98F88),
2671 UINT64_C(0x0002580784E014F7)},
2672 {UINT64_C(0x0003C6B7855856C3), UINT64_C(0x0002ACC5BCB17705),
2673 UINT64_C(0x0004E8DA7BC00D1D), UINT64_C(0x0006A7AF33BBD40A),
2674 UINT64_C(0x0004CA608C42E191)}},
2675 {{UINT64_C(0x00014957F896B8DD), UINT64_C(0x0002EE29ED7F94C7),
2676 UINT64_C(0x00006C535FD580D1), UINT64_C(0x0007EE5C2C854B58),
2677 UINT64_C(0x000390B6176CC0A5)},
2678 {UINT64_C(0x000D8E851115F82F), UINT64_C(0x00057712C2473469),
2679 UINT64_C(0x0005FED753D7DE49), UINT64_C(0x000100E99106EB96),
2680 UINT64_C(0x00032A5894C01232)},
2681 {UINT64_C(0x0003F3BD2CBCD3E4), UINT64_C(0x00051B2182A69BC1),
2682 UINT64_C(0x00047F72BDF9D1E5), UINT64_C(0x0004386BB2531556),
2683 UINT64_C(0x0006251703B0886A)}},
2684 {{UINT64_C(0x000DA5B8DDCC32C8), UINT64_C(0x0004B6E439859BAC),
2685 UINT64_C(0x000565788B32A991), UINT64_C(0x0007DA2C259D0EFC),
2686 UINT64_C(0x00026E2BCA2F2403)},
2687 {UINT64_C(0x00036BD2B233B8DF), UINT64_C(0x000025EC957D6035),
2688 UINT64_C(0x000421C4260564F0), UINT64_C(0x00024C08F5533B05),
2689 UINT64_C(0x0004195603852EB3)},
2690 {UINT64_C(0x0007B58166F4C3F1), UINT64_C(0x000262CCAD523D27),
2691 UINT64_C(0x0002167831F73FA9), UINT64_C(0x0002330A70233315),
2692 UINT64_C(0x0001E997E60115B3)}},
2693 {{UINT64_C(0x000B11A8A180A2DD), UINT64_C(0x000740DE93A3B1BB),
2694 UINT64_C(0x0001A75730E8D6F7), UINT64_C(0x0002787677BCD20B),
2695 UINT64_C(0x0002C62508D0E0E3)},
2696 {UINT64_C(0x000193FF85DC4853), UINT64_C(0x0006FF8B716F7C95),
2697 UINT64_C(0x0005695A400F15D0), UINT64_C(0x0006FCEA3FD445A5),
2698 UINT64_C(0x0006827935BB527C)},
2699 {UINT64_C(0x000E756880792D5C), UINT64_C(0x00017C4CBFDCB6F6),
2700 UINT64_C(0x0003621A1F5AD47B), UINT64_C(0x00008ACFEC1E2F0B),
2701 UINT64_C(0x000680EE7BD4FDC9)}},
2702 {{UINT64_C(0x000B22617017AD54), UINT64_C(0x0006D79A05652478),
2703 UINT64_C(0x00078436BB1A4FC2), UINT64_C(0x000588C3017ACA81),
2704 UINT64_C(0x000721CFE104D7FC)},
2705 {UINT64_C(0x00058F6241221394), UINT64_C(0x0003B5CC42F98968),
2706 UINT64_C(0x0005B8C26DF7368C), UINT64_C(0x000258033A96E20A),
2707 UINT64_C(0x0006CDFD92327819)},
2708 {UINT64_C(0x000D5F316E441B95), UINT64_C(0x0007262AFF6C2AD0),
2709 UINT64_C(0x000615C867B8A858), UINT64_C(0x0002304A98935CF1),
2710 UINT64_C(0x0001C346C9D50FBE)}},
2711 {{UINT64_C(0x000B8D64E6633E8B), UINT64_C(0x0004415800321D6A),
2712 UINT64_C(0x000112873DB9D153), UINT64_C(0x0007454E53F98187),
2713 UINT64_C(0x0006D9C7B5E085F8)},
2714 {UINT64_C(0x0008054C9FC0114A), UINT64_C(0x00060A1D43700A51),
2715 UINT64_C(0x0007F536F76DCA7B), UINT64_C(0x00059A4ADEA37323),
2716 UINT64_C(0x0006F027E38F2362)},
2717 {UINT64_C(0x000304C8AA59BE30), UINT64_C(0x0007FE5A68FCF77D),
2718 UINT64_C(0x0006BDE087AB92A0), UINT64_C(0x000025E8F669E08C),
2719 UINT64_C(0x00018E93C6B2C356)}},
2720 {{UINT64_C(0x0004A344E63D4ACA), UINT64_C(0x0007C308BC5ED73E),
2721 UINT64_C(0x0003A32DEAF4E9FA), UINT64_C(0x0004472F4E854593),
2722 UINT64_C(0x000047D341D3DDFD)},
2723 {UINT64_C(0x0007532D39E9B3BB), UINT64_C(0x000217DF5A0A7433),
2724 UINT64_C(0x00074975495E1565), UINT64_C(0x0002821D2EEF04CF),
2725 UINT64_C(0x00054FC7406A916F)},
2726 {UINT64_C(0x000913F345C8BBFF), UINT64_C(0x0006989D1646C723),
2727 UINT64_C(0x00027764F8A16ACB), UINT64_C(0x000008C125AF8D5F),
2728 UINT64_C(0x0006800FE91196F4)}},
2729 {{UINT64_C(0x00082C098B00AA79), UINT64_C(0x000770B1C497ACD1),
2730 UINT64_C(0x000344FD551B8CCE), UINT64_C(0x00023F33BE497F56),
2731 UINT64_C(0x0002EAF897898B65)},
2732 {UINT64_C(0x0007F51FA8DC697B), UINT64_C(0x00074CE3069BBE12),
2733 UINT64_C(0x0004C428EA0209F5), UINT64_C(0x00002F2D8D0BB62C),
2734 UINT64_C(0x00004E256AFA4C76)},
2735 {UINT64_C(0x00001D22BDE52262), UINT64_C(0x0006DE17872B5135),
2736 UINT64_C(0x00066D4BFED89F63), UINT64_C(0x000389FDDE527F9D),
2737 UINT64_C(0x0000EB2F6E615478)}},
2738 {{UINT64_C(0x000C58D612641095), UINT64_C(0x00054CA77FCC5570),
2739 UINT64_C(0x0001DA1FC218000A), UINT64_C(0x00037F0150DC6C3C),
2740 UINT64_C(0x00022955963EF643)},
2741 {UINT64_C(0x0009C17EB03D6EA7), UINT64_C(0x0002DDDAC1318776),
2742 UINT64_C(0x0004E4B91FA27202), UINT64_C(0x0001E2352AB304E3),
2743 UINT64_C(0x00060A0E261D6691)},
2744 {UINT64_C(0x000B576743FFBA33), UINT64_C(0x0005A197F3AFDA0C),
2745 UINT64_C(0x000429DD4FCB8A3F), UINT64_C(0x0001AF629993F4B3),
2746 UINT64_C(0x00045EB119867A22)}},
2749 {{UINT64_C(0x000AC144EF178112), UINT64_C(0x000094A0264CAF23),
2750 UINT64_C(0x0004A0AC5A24DEFD), UINT64_C(0x0007C7625D1D184E),
2751 UINT64_C(0x0005737B194A6A86)},
2752 {UINT64_C(0x0008F38EC35EE99B), UINT64_C(0x0006D9BAA844775F),
2753 UINT64_C(0x00046F84DF77B762), UINT64_C(0x0002544D6FE58FDC),
2754 UINT64_C(0x00077B72BB7289FB)},
2755 {UINT64_C(0x000DD166D7288C6E), UINT64_C(0x0001C67A51DA413C),
2756 UINT64_C(0x0006973C6FAD10E1), UINT64_C(0x00031DE5E5EDA939),
2757 UINT64_C(0x000393F71ED28892)}},
2758 {{UINT64_C(0x000B1C84EECF7E6B), UINT64_C(0x00056A60AC35BAB2),
2759 UINT64_C(0x0002F06DF1910A93), UINT64_C(0x0000618DC5FAEB06),
2760 UINT64_C(0x0001D49317BBBDF6)},
2761 {UINT64_C(0x000493F2A36F71D9), UINT64_C(0x00040122E257F266),
2762 UINT64_C(0x00007974D73D3705), UINT64_C(0x0001276FD01A753E),
2763 UINT64_C(0x000756654735EC6A)},
2764 {UINT64_C(0x0007DB79632DD089), UINT64_C(0x0001FE3FA5F4A3F7),
2765 UINT64_C(0x0001716E3C167A6F), UINT64_C(0x00053B6AA21FEB09),
2766 UINT64_C(0x00023EC2880EEB4A)}},
2767 {{UINT64_C(0x00025A84454FFE86), UINT64_C(0x000780F2E547DCDF),
2768 UINT64_C(0x000701A2C14FDED4), UINT64_C(0x0004B8A116F259A3),
2769 UINT64_C(0x000695574E1284BB)},
2770 {UINT64_C(0x000D30440055360D), UINT64_C(0x00003410B657F1F4),
2771 UINT64_C(0x0006EE23795C3521), UINT64_C(0x0004C9A2F7E3A24B),
2772 UINT64_C(0x0000FD8B32023BD7)},
2773 {UINT64_C(0x000AE6F82F35FF69), UINT64_C(0x0003F3D6F04FB2C4),
2774 UINT64_C(0x00005F2596E4AACD), UINT64_C(0x0007F09E9725486A),
2775 UINT64_C(0x00062C57118684FB)}},
2776 {{UINT64_C(0x00071AB6451B13D2), UINT64_C(0x000619FA9ABFE206),
2777 UINT64_C(0x0004C28E4E8FA08C), UINT64_C(0x0002CEE0DAC526F3),
2778 UINT64_C(0x0005F61B37975A6F)},
2779 {UINT64_C(0x00015634247F1514), UINT64_C(0x00043246C09599E2),
2780 UINT64_C(0x000502B5C89D4562), UINT64_C(0x00055B6E5B70BD64),
2781 UINT64_C(0x0000924E7D2DA3A4)},
2782 {UINT64_C(0x000DC2A7C58A69B5), UINT64_C(0x0007579FCF83B046),
2783 UINT64_C(0x000490212587ACC9), UINT64_C(0x00042C0D4FB52DDA),
2784 UINT64_C(0x0006EA269EA5E4FF)}},
2785 {{UINT64_C(0x000FAB3168E74931), UINT64_C(0x000009FC282310C8),
2786 UINT64_C(0x0002E357A087E03B), UINT64_C(0x0002E82B3F54812E),
2787 UINT64_C(0x0000A1378335E998)},
2788 {UINT64_C(0x0009E98B211CF746), UINT64_C(0x000294635069D795),
2789 UINT64_C(0x00066C9A8A94C197), UINT64_C(0x00049DBA942CC086),
2790 UINT64_C(0x00038BE03A6F71F4)},
2791 {UINT64_C(0x000D42F0FB6C56DF), UINT64_C(0x0003D1EF830454E8),
2792 UINT64_C(0x000225CD3F51B513), UINT64_C(0x00002F23E7710F71),
2793 UINT64_C(0x0007ED09816C213D)}},
2794 {{UINT64_C(0x000475A30D2F95C3), UINT64_C(0x0006534DABA67C75),
2795 UINT64_C(0x0005FFF4349E9DCF), UINT64_C(0x0005741BFE20E51E),
2796 UINT64_C(0x0007C9C06E28F6DB)},
2797 {UINT64_C(0x0004C91D367D647C), UINT64_C(0x0005DB920659E98B),
2798 UINT64_C(0x0006E2DC6EDEAE13), UINT64_C(0x00045FADDDCD7438),
2799 UINT64_C(0x0006A3D3CCDD5BDE)},
2800 {UINT64_C(0x000030AFB5D712D2), UINT64_C(0x0004232A6E545B6F),
2801 UINT64_C(0x0006CC8095D31E5A), UINT64_C(0x0005E95D17B4F93D),
2802 UINT64_C(0x000640826F938DB4)}},
2803 {{UINT64_C(0x00054E864AE39A36), UINT64_C(0x00075453A7420C12),
2804 UINT64_C(0x0007550FC0647586), UINT64_C(0x0000CE261F056DAC),
2805 UINT64_C(0x0006EC06688237F9)},
2806 {UINT64_C(0x00009D858855A118), UINT64_C(0x00035D6E1CAC4C58),
2807 UINT64_C(0x00051BC56EDB0309), UINT64_C(0x00056720925976FA),
2808 UINT64_C(0x0003095195EC98C0)},
2809 {UINT64_C(0x00028453ABBCD94C), UINT64_C(0x0000442BD67826FA),
2810 UINT64_C(0x00027091B2C7D123), UINT64_C(0x00053D5CE098F2DF),
2811 UINT64_C(0x00033B91CBED8C33)}},
2812 {{UINT64_C(0x00031BB1AEC4EB7B), UINT64_C(0x000404BD71986FBA),
2813 UINT64_C(0x000789F140F41C34), UINT64_C(0x00046319EC635090),
2814 UINT64_C(0x00062555BCEF03FC)},
2815 {UINT64_C(0x000B7957AF9DF20B), UINT64_C(0x00061499B0C64744),
2816 UINT64_C(0x0005A1460AB6F031), UINT64_C(0x000254B48FE3B63C),
2817 UINT64_C(0x000138DA1B0B8458)},
2818 {UINT64_C(0x0008FC31F72B00C5), UINT64_C(0x00009260DAF93E82),
2819 UINT64_C(0x0007724F21722EEC), UINT64_C(0x00065104B46DE00D),
2820 UINT64_C(0x0005C74C4AADE4A1)}},
2821 {{UINT64_C(0x000C942D7E200CDA), UINT64_C(0x0004DCCF2C9062F8),
2822 UINT64_C(0x00033C6DC30EF168), UINT64_C(0x0005876E586F49F0),
2823 UINT64_C(0x0005C625124B23D5)},
2824 {UINT64_C(0x000AF942F3B8567F), UINT64_C(0x00068DD426ED4B8D),
2825 UINT64_C(0x00074CE2434E2244), UINT64_C(0x0005BC01452BAF26),
2826 UINT64_C(0x00068D340AA53E01)},
2827 {UINT64_C(0x00062BADB88E1FEE), UINT64_C(0x00001B7927E30590),
2828 UINT64_C(0x0007FB96EBA04357), UINT64_C(0x00063C4C5B983654),
2829 UINT64_C(0x0003CB27C00B0E03)}},
2830 {{UINT64_C(0x0003A8ABA3BA06D8), UINT64_C(0x0005183A547A5052),
2831 UINT64_C(0x0002FA684E05B048), UINT64_C(0x00037DC680820759),
2832 UINT64_C(0x0003A758E398D110)},
2833 {UINT64_C(0x000AE41D00F8BBE3), UINT64_C(0x0007C91843988CEE),
2834 UINT64_C(0x00008AC196646158), UINT64_C(0x0004F9CA63F0D300),
2835 UINT64_C(0x0004AE71F5595151)},
2836 {UINT64_C(0x0009C5C331E75B70), UINT64_C(0x000034AEB589633E),
2837 UINT64_C(0x0003A2AFA63836A6), UINT64_C(0x00071AA62CA57C97),
2838 UINT64_C(0x0002588D39981664)}},
2839 {{UINT64_C(0x0002F5861915F134), UINT64_C(0x0002E22B903AD5D1),
2840 UINT64_C(0x0004B62079B373C7), UINT64_C(0x0006E593A78A5789),
2841 UINT64_C(0x0006ACFA4114B928)},
2842 {UINT64_C(0x000845994C9F8482), UINT64_C(0x00018D23FF32CC4E),
2843 UINT64_C(0x0001EF02A3741210), UINT64_C(0x0003A1F60A318F68),
2844 UINT64_C(0x00074BBE122C022E)},
2845 {UINT64_C(0x000235F03B8817CF), UINT64_C(0x0004136EC580474B),
2846 UINT64_C(0x00030B5BE4C70BFD), UINT64_C(0x0006771287C6A491),
2847 UINT64_C(0x0004EE10D834F1D6)}},
2848 {{UINT64_C(0x0009238C49B5B594), UINT64_C(0x0006D951D5930D4A),
2849 UINT64_C(0x00052C92A1704BF4), UINT64_C(0x00058049C0061E24),
2850 UINT64_C(0x0003414A1DFBD8A0)},
2851 {UINT64_C(0x0003B17B475F899E), UINT64_C(0x0000A207F4C1C87F),
2852 UINT64_C(0x00005DAC41647336), UINT64_C(0x000017D58BC6FE28),
2853 UINT64_C(0x00006090A9CB1708)},
2854 {UINT64_C(0x0000E353DF9AED9F), UINT64_C(0x000211A100A66400),
2855 UINT64_C(0x000537F1DBBF53C6), UINT64_C(0x00061176C39FF089),
2856 UINT64_C(0x0000ED4DD7183518)}},
2857 {{UINT64_C(0x000D4A93DE96CDC1), UINT64_C(0x0001C832B89CB8A0),
2858 UINT64_C(0x000203277525319E), UINT64_C(0x0004CEE0F6725575),
2859 UINT64_C(0x00070ED69AF9BF53)},
2860 {UINT64_C(0x000C17F8BAA5AAC7), UINT64_C(0x0006AF4ABBDC969F),
2861 UINT64_C(0x0003A0E69B82101E), UINT64_C(0x0006234479D6A63E),
2862 UINT64_C(0x0002BF20728C2007)},
2863 {UINT64_C(0x00063FEF01AE2A02), UINT64_C(0x0001C86F09FC4AF4),
2864 UINT64_C(0x00069A1DE168EBCE), UINT64_C(0x00063F996EFB8433),
2865 UINT64_C(0x00072A687DA051BD)}},
2866 {{UINT64_C(0x000A8952F3FB5F0C), UINT64_C(0x00022194DC688FAE),
2867 UINT64_C(0x0006F9F5064736BF), UINT64_C(0x0007A6A4D691B9DB),
2868 UINT64_C(0x0007F5B139E354FB)},
2869 {UINT64_C(0x0000B63808606E6E), UINT64_C(0x0005E413F0FE0384),
2870 UINT64_C(0x00024FB74A712242), UINT64_C(0x00027B1CB73DDC68),
2871 UINT64_C(0x0006285935149BF9)},
2872 {UINT64_C(0x000D30A9D3AC7820), UINT64_C(0x0002B97ED3978DF1),
2873 UINT64_C(0x0003681BAB9F5289), UINT64_C(0x0000D844B826D276),
2874 UINT64_C(0x000784A758F5FDDE)}},
2875 {{UINT64_C(0x0005EF9827213EE3), UINT64_C(0x00042F84E4310A41),
2876 UINT64_C(0x0004A5143748EB06), UINT64_C(0x0003190974F9FF92),
2877 UINT64_C(0x0005016A42C2EB4B)},
2878 {UINT64_C(0x00000CB993776C25), UINT64_C(0x0005E9694BF91DF4),
2879 UINT64_C(0x00056BC66736D688), UINT64_C(0x0002EC931ADE934B),
2880 UINT64_C(0x0001A9C364E091BF)},
2881 {UINT64_C(0x000E211DC7632283), UINT64_C(0x00035BE411AEEFD3),
2882 UINT64_C(0x00015DAFEBCCAC46), UINT64_C(0x00037714AEB785FD),
2883 UINT64_C(0x0006253CC0A245FF)}},
2884 {{UINT64_C(0x00029AF81A0D1BD2), UINT64_C(0x00003B61C799BE14),
2885 UINT64_C(0x0001C03C6426B11A), UINT64_C(0x0007F386EC4C5C3C),
2886 UINT64_C(0x0000B2BC5FE81F9E)},
2887 {UINT64_C(0x000AD04EE82724D3), UINT64_C(0x0005B1D7846B04CA),
2888 UINT64_C(0x00033D35B52BC659), UINT64_C(0x000135A47CD22439),
2889 UINT64_C(0x0007D7B6CAEA433E)},
2890 {UINT64_C(0x000850D32772E3DB), UINT64_C(0x000582BED8E87C91),
2891 UINT64_C(0x000198367AE74473), UINT64_C(0x0002F5A5839CEAE9),
2892 UINT64_C(0x0002B8174D7564F2)}},
2895 {{UINT64_C(0x0005F71E4CC72DC5), UINT64_C(0x000729408117FF19),
2896 UINT64_C(0x000309B7A677423D), UINT64_C(0x0004839F84C2AB89),
2897 UINT64_C(0x00008A95BA320E5D)},
2898 {UINT64_C(0x00078965FDB1CB39), UINT64_C(0x0005F0C0D8298F25),
2899 UINT64_C(0x00055C4EEDD50E22), UINT64_C(0x00023DC216E90B73),
2900 UINT64_C(0x000797D03A50DC08)},
2901 {UINT64_C(0x000D4CA0AD220D40), UINT64_C(0x00028CD933850D3B),
2902 UINT64_C(0x0004D7EE3B9C333B), UINT64_C(0x0002966D4130006D),
2903 UINT64_C(0x0000FBD61D1E8F9C)}},
2904 {{UINT64_C(0x00009E516DAADA87), UINT64_C(0x0004EC925BC0EEEE),
2905 UINT64_C(0x0006EFFBA132BCEB), UINT64_C(0x000724D09DAD4807),
2906 UINT64_C(0x000452C79585B373)},
2907 {UINT64_C(0x000F1401F95C5FB5), UINT64_C(0x0005A1CE98BCB0CF),
2908 UINT64_C(0x000216304328D3D2), UINT64_C(0x0004BF1910725FC2),
2909 UINT64_C(0x0004002028E1F6C0)},
2910 {UINT64_C(0x000BCA6D33FB4AF5), UINT64_C(0x000699B08CFF3D9E),
2911 UINT64_C(0x0000EA0CDC3C332C), UINT64_C(0x000630F4F9EAC5C7),
2912 UINT64_C(0x000780B9E89D8FFA)}},
2913 {{UINT64_C(0x000CF75D097A1682), UINT64_C(0x00032545E3AC653A),
2914 UINT64_C(0x00029DB14F338894), UINT64_C(0x000351894CA83CAE),
2915 UINT64_C(0x000318CEC53A3C6A)},
2916 {UINT64_C(0x000F2E2D2A2EA810), UINT64_C(0x00054DDA2C9BB050),
2917 UINT64_C(0x000290BE850E8961), UINT64_C(0x000287BC5EBC0BFC),
2918 UINT64_C(0x00062D4620BB48F9)},
2919 {UINT64_C(0x0005A0F8E756C417), UINT64_C(0x0004937AF0050D8E),
2920 UINT64_C(0x0003DF98E8FBE4F8), UINT64_C(0x00073EF8BBA04BAC),
2921 UINT64_C(0x0003743A4A505CD5)}},
2922 {{UINT64_C(0x000AC304DDD850C1), UINT64_C(0x000116AE8E058E54),
2923 UINT64_C(0x0003E025C2CAAABC), UINT64_C(0x0006FC6FE28AC49A),
2924 UINT64_C(0x00016E67A015DEA5)},
2925 {UINT64_C(0x0000CF3F158429CD), UINT64_C(0x000480063B01884B),
2926 UINT64_C(0x000363368F078BE2), UINT64_C(0x000504AB7790BA1A),
2927 UINT64_C(0x0006710350B446FA)},
2928 {UINT64_C(0x000D8B8DE6397785), UINT64_C(0x000188CD6C441A62),
2929 UINT64_C(0x0004AD0920B22E3C), UINT64_C(0x0005021ECF3C72DE),
2930 UINT64_C(0x0003D133001D1ED5)}},
2931 {{UINT64_C(0x000B60A8C5FAF1CD), UINT64_C(0x0004C53C423A845B),
2932 UINT64_C(0x000520A9E9FA2A69), UINT64_C(0x00027D388A1F08D1),
2933 UINT64_C(0x000032396160EC47)},
2934 {UINT64_C(0x00038139094FAD75), UINT64_C(0x0003CD9876593CD5),
2935 UINT64_C(0x00071333878088E4), UINT64_C(0x000201E8433445E6),
2936 UINT64_C(0x000112302E7408FF)},
2937 {UINT64_C(0x000CBFE63FC06EE2), UINT64_C(0x00027425B1F20DEB),
2938 UINT64_C(0x000457B85B95B8B5), UINT64_C(0x00076DF4D98AEAFE),
2939 UINT64_C(0x0004EC884BB0909D)}},
2940 {{UINT64_C(0x000560BECBEEDE54), UINT64_C(0x000355F2A19E2A7B),
2941 UINT64_C(0x0003AC869895D894), UINT64_C(0x0001B3A88FAF6472),
2942 UINT64_C(0x00030150F70F46D2)},
2943 {UINT64_C(0x000C4423AB869B40), UINT64_C(0x0003A52F86375064),
2944 UINT64_C(0x00012F5BC0F20340), UINT64_C(0x0006CA222C7412D4),
2945 UINT64_C(0x00032F1254041880)},
2946 {UINT64_C(0x0002B2DBAB6499A6), UINT64_C(0x00011049F2328790),
2947 UINT64_C(0x000696584124F8E2), UINT64_C(0x000142AB6165955E),
2948 UINT64_C(0x00063E346DAEF2ED)}},
2949 {{UINT64_C(0x000D39355730C824), UINT64_C(0x0003FC8CAC7D5529),
2950 UINT64_C(0x00051C9605C77F3A), UINT64_C(0x0007A2A90B74D60C),
2951 UINT64_C(0x0006FA2B0304B184)},
2952 {UINT64_C(0x0004EB3441C3FCC1), UINT64_C(0x0002CACCC532F441),
2953 UINT64_C(0x0005E09ACF224276), UINT64_C(0x00058A77259116FC),
2954 UINT64_C(0x0000BDC2A63D5387)},
2955 {UINT64_C(0x000F8EFB7463FFE8), UINT64_C(0x0001057CA428A821),
2956 UINT64_C(0x0004ED380A470ED0), UINT64_C(0x00076F49D6CEF5F0),
2957 UINT64_C(0x0003F9D2D6743030)}},
2958 {{UINT64_C(0x0000AF30896CC3EF), UINT64_C(0x000201D4DF630DBA),
2959 UINT64_C(0x00052E42F5AFF8BF), UINT64_C(0x00000EB77C14ACF5),
2960 UINT64_C(0x0003CA2DFB8C5EDF)},
2961 {UINT64_C(0x000B5A205B171808), UINT64_C(0x0004C56363842D6C),
2962 UINT64_C(0x000292D70469611A), UINT64_C(0x0006D916356CD45A),
2963 UINT64_C(0x0006B0027CD19FAB)},
2964 {UINT64_C(0x00022B2713528A82), UINT64_C(0x0006E7BE33E7CEF0),
2965 UINT64_C(0x000009FC8141F131), UINT64_C(0x0000150A7927D149),
2966 UINT64_C(0x0003B14B0DA7FF44)}},
2967 {{UINT64_C(0x00032EFED0F84103), UINT64_C(0x00019069CDCE6F9F),
2968 UINT64_C(0x0005C6ACB2ABA640), UINT64_C(0x0006C2B81330E238),
2969 UINT64_C(0x0003A809BBA9B370)},
2970 {UINT64_C(0x0004BE6C8B688B18), UINT64_C(0x0001351C261FED04),
2971 UINT64_C(0x0002C96D1BC48370), UINT64_C(0x0001E95E38FF6352),
2972 UINT64_C(0x0007BEAD8D5751AA)},
2973 {UINT64_C(0x00098F021AA4DB09), UINT64_C(0x00078CD1DC9071DF),
2974 UINT64_C(0x000605F5C2A08E6A), UINT64_C(0x0002E7D15E83EE69),
2975 UINT64_C(0x0000E6B2FF6D9875)}},
2976 {{UINT64_C(0x0004DE5A07C4323E), UINT64_C(0x0002D406347B7064),
2977 UINT64_C(0x0005AA73A0846C15), UINT64_C(0x0000B5C4D6C73A87),
2978 UINT64_C(0x0002AA137FBF2494)},
2979 {UINT64_C(0x0004685341C33279), UINT64_C(0x000082B2B0E321E2),
2980 UINT64_C(0x0005643452806D72), UINT64_C(0x000626BA7990B3AF),
2981 UINT64_C(0x0007CF53B95B4365)},
2982 {UINT64_C(0x00013532346149FF), UINT64_C(0x0005947C275C07F1),
2983 UINT64_C(0x00034F1270EB410F), UINT64_C(0x000514A7C01BF670),
2984 UINT64_C(0x000407161B0257A8)}},
2985 {{UINT64_C(0x00054B5C52AC8719), UINT64_C(0x0002D86CBEB0D6B0),
2986 UINT64_C(0x0004F84A08F1266B), UINT64_C(0x0004D65F37B998EF),
2987 UINT64_C(0x0006C27CE40B4135)},
2988 {UINT64_C(0x0007BF812153FC77), UINT64_C(0x0005CDDD65D79B11),
2989 UINT64_C(0x00054A7071923FF6), UINT64_C(0x00034FBFFF7FA918),
2990 UINT64_C(0x000261A5361256A4)},
2991 {UINT64_C(0x000B13BCE19AAFB7), UINT64_C(0x0006D3B746CE4B8F),
2992 UINT64_C(0x00053A3635869292), UINT64_C(0x0007909536E7719B),
2993 UINT64_C(0x000008EB20D956CC)}},
2994 {{UINT64_C(0x00065CF97D492C5D), UINT64_C(0x00029D9BCEE03B91),
2995 UINT64_C(0x0006041F5A49C183), UINT64_C(0x0002F8117A3A828F),
2996 UINT64_C(0x000369E3DAD33DF2)},
2997 {UINT64_C(0x000D5176A425F79F), UINT64_C(0x000343D6AB0DE966),
2998 UINT64_C(0x00064EFB5C97C515), UINT64_C(0x0002BF9162998A39),
2999 UINT64_C(0x00050EF13FEEC9EB)},
3000 {UINT64_C(0x00039C0CFD97E85B), UINT64_C(0x000770E1CCBB013E),
3001 UINT64_C(0x0005F03BD9F7D9C2), UINT64_C(0x000690F1EE2F80E3),
3002 UINT64_C(0x00071787D1339A82)}},
3003 {{UINT64_C(0x000F7F42B80EB7F2), UINT64_C(0x000544C8293F8329),
3004 UINT64_C(0x000122DA47640B5D), UINT64_C(0x0000FEAFA087BC4E),
3005 UINT64_C(0x00059F0BB3B97004)},
3006 {UINT64_C(0x0002AA28745CD9B5), UINT64_C(0x0007BC8D5CD03005),
3007 UINT64_C(0x0001422C4B7A9189), UINT64_C(0x000282692E6090A7),
3008 UINT64_C(0x0000867B47D33593)},
3009 {UINT64_C(0x0003413E422FA5A2), UINT64_C(0x0006887164EBB90B),
3010 UINT64_C(0x00065C5E1BFDB4A4), UINT64_C(0x0004B98C578628EE),
3011 UINT64_C(0x0004E5352F622184)}},
3012 {{UINT64_C(0x0002549D88E38B2F), UINT64_C(0x0004908DEAD628D9),
3013 UINT64_C(0x000073E0A2E146D7), UINT64_C(0x000664C6FFF36209),
3014 UINT64_C(0x000130159F64A292)},
3015 {UINT64_C(0x000B964E8ECBEDBE), UINT64_C(0x00030E5C798B68B0),
3016 UINT64_C(0x0004BFD953930A67), UINT64_C(0x0007CA03ABB678FB),
3017 UINT64_C(0x00033FEF5B3D5B01)},
3018 {UINT64_C(0x00098E12CCF396A9), UINT64_C(0x0003A8CA995F3788),
3019 UINT64_C(0x0007482D4E5FAAC6), UINT64_C(0x00031D5A37583FCA),
3020 UINT64_C(0x0006D982702EDC91)}},
3021 {{UINT64_C(0x000BE837A054ACCB), UINT64_C(0x0004ECB51A8EF070),
3022 UINT64_C(0x0002F2D57B4FCF60), UINT64_C(0x0004C1513045FB2B),
3023 UINT64_C(0x00047770E3380A5B)},
3024 {UINT64_C(0x000425BEF82D311B), UINT64_C(0x00002005D68620DC),
3025 UINT64_C(0x0007325F0CD3FBE0), UINT64_C(0x0004EEFB9471E0EC),
3026 UINT64_C(0x00028F8C67917260)},
3027 {UINT64_C(0x000B0A66B88E76E6), UINT64_C(0x0000F3A2C9DA4F2E),
3028 UINT64_C(0x0001EA49E958D92A), UINT64_C(0x000026E1BDBB6E03),
3029 UINT64_C(0x0005029291E8FB70)}},
3030 {{UINT64_C(0x000E54C9AEAECCC3), UINT64_C(0x000361674AC1790E),
3031 UINT64_C(0x0006F9F28B87D9E7), UINT64_C(0x00018B8D2B452066),
3032 UINT64_C(0x0007DB9345D70FBC)},
3033 {UINT64_C(0x000F3DF99A78836C), UINT64_C(0x0004914D0D5AE148),
3034 UINT64_C(0x000571EBD41C1239), UINT64_C(0x0005A51875241CFB),
3035 UINT64_C(0x0007336AA1FEBF60)},
3036 {UINT64_C(0x000A212F131FA1A5), UINT64_C(0x0000D92E88DEBB89),
3037 UINT64_C(0x000558BFDAECA4D2), UINT64_C(0x000269A780A65DC8),
3038 UINT64_C(0x0007265543B97C9D)}},
3041 {{UINT64_C(0x0009BE522B9D7F04), UINT64_C(0x0004BC705622740B),
3042 UINT64_C(0x0007E15EA4E4D172), UINT64_C(0x00038BD4A6FDEDBC),
3043 UINT64_C(0x0005E8C142089478)},
3044 {UINT64_C(0x00048C72EDCC8AA4), UINT64_C(0x0006C5E6065406FA),
3045 UINT64_C(0x0006AF3701C24620), UINT64_C(0x00042EA0F2E70B8F),
3046 UINT64_C(0x00033DFF74481155)},
3047 {UINT64_C(0x000852E6A6E72D7C), UINT64_C(0x00042B699FEF3BF1),
3048 UINT64_C(0x0005907EE2406991), UINT64_C(0x0004D36621FDF916),
3049 UINT64_C(0x0006D7911C011B7B)}},
3050 {{UINT64_C(0x000EBFE9B94F7A12), UINT64_C(0x0004824A85A9AC4B),
3051 UINT64_C(0x00014EEF07D3D55D), UINT64_C(0x000513B829B2AE5C),
3052 UINT64_C(0x0006011380B7D9CC)},
3053 {UINT64_C(0x000A21168961EEA8), UINT64_C(0x00063CBB9BA57577),
3054 UINT64_C(0x0006606B05EF2134), UINT64_C(0x0006B72A1D536E54),
3055 UINT64_C(0x000661849203E9CC)},
3056 {UINT64_C(0x0004C06869AEA3D6), UINT64_C(0x00021F578255BAF7),
3057 UINT64_C(0x00067D1096E12882), UINT64_C(0x00050B150BD416A4),
3058 UINT64_C(0x0002910322AC87CD)}},
3059 {{UINT64_C(0x000644D63DB19259), UINT64_C(0x000547C0FCA86C59),
3060 UINT64_C(0x0007A198D5D3FAEE), UINT64_C(0x0001E28699860365),
3061 UINT64_C(0x0000EFE6732ABA42)},
3062 {UINT64_C(0x000888204C12F590), UINT64_C(0x0001C8E5F2BFF85C),
3063 UINT64_C(0x0001772AF32270BC), UINT64_C(0x0005D962EAAB3158),
3064 UINT64_C(0x0001A34AB97418FB)},
3065 {UINT64_C(0x0008D80BBC8528CC), UINT64_C(0x000241D41B76D92E),
3066 UINT64_C(0x0004513FE5B63EE3), UINT64_C(0x00062D1B5DE35CE4),
3067 UINT64_C(0x0005157C5E57C598)}},
3068 {{UINT64_C(0x000BDB25BE3A9FD2), UINT64_C(0x000302ED2946793F),
3069 UINT64_C(0x00012C506EF80331), UINT64_C(0x0006D13E5DECA318),
3070 UINT64_C(0x00001A5DF0E20F25)},
3071 {UINT64_C(0x000BC9FC9FF75DF0), UINT64_C(0x0000BF1C056F5479),
3072 UINT64_C(0x00036E0E95E2CF70), UINT64_C(0x00058A068DA69D3D),
3073 UINT64_C(0x0001555FC948F50D)},
3074 {UINT64_C(0x000998A0950C1A1C), UINT64_C(0x0005358898A6636E),
3075 UINT64_C(0x0001CC47B1220D25), UINT64_C(0x0007E929E197B7F1),
3076 UINT64_C(0x0006FE5D94BC2454)}},
3077 {{UINT64_C(0x000EABC2EB1D0B59), UINT64_C(0x0007A05C59336123),
3078 UINT64_C(0x0007918FF8448B64), UINT64_C(0x00057A94A01CAB48),
3079 UINT64_C(0x0002FF15B4CC7487)},
3080 {UINT64_C(0x00008799019AECD9), UINT64_C(0x0003D8F58AC75312),
3081 UINT64_C(0x0000D4A7DF2730C1), UINT64_C(0x0005E75D83B3FAC3),
3082 UINT64_C(0x0007180E7E60D802)},
3083 {UINT64_C(0x0005AEF92672CCE1), UINT64_C(0x0006637504959CA3),
3084 UINT64_C(0x00053E5589BFA337), UINT64_C(0x0003A21A8478ED35),
3085 UINT64_C(0x0002DD36E5AC50F9)}},
3086 {{UINT64_C(0x00062DF8E260C004), UINT64_C(0x0004DE30E71B999A),
3087 UINT64_C(0x00045C3FA066284D), UINT64_C(0x000331D9BB25623D),
3088 UINT64_C(0x000202123595AEC6)},
3089 {UINT64_C(0x00047A9FF0131346), UINT64_C(0x0003A150D3AAC3F1),
3090 UINT64_C(0x00029452C6C88616), UINT64_C(0x0007CA8D3EC1A917),
3091 UINT64_C(0x0006EEC72C9A0BF5)},
3092 {UINT64_C(0x000F10845A21F448), UINT64_C(0x00001AAE742835C2),
3093 UINT64_C(0x00025E4CFB83A17F), UINT64_C(0x0007BF8EB92AF3AB),
3094 UINT64_C(0x000699BE9783E779)}},
3095 {{UINT64_C(0x0001DC9C52A66972), UINT64_C(0x0002C0B904C59FBA),
3096 UINT64_C(0x0006C89144084C6D), UINT64_C(0x00014AB65019CF29),
3097 UINT64_C(0x00006EA2401AC315)},
3098 {UINT64_C(0x000ADC23F3836291), UINT64_C(0x0002F1AD8C01F7C1),
3099 UINT64_C(0x000205DF0C8922CF), UINT64_C(0x0001751FC5AEB310),
3100 UINT64_C(0x0006F64DB4075476)},
3101 {UINT64_C(0x000F82F426A80AE1), UINT64_C(0x00013C4A6E62FC16),
3102 UINT64_C(0x0001FBCDF27E0B34), UINT64_C(0x00078E30B91EF3E6),
3103 UINT64_C(0x000059CBEA565341)}},
3104 {{UINT64_C(0x00062CB978126A51), UINT64_C(0x0004E2E7313211FE),
3105 UINT64_C(0x00066E6E57EED552), UINT64_C(0x00009AE384794AC9),
3106 UINT64_C(0x00077726F8AB9C55)},
3107 {UINT64_C(0x0006D6C6C9E72C58), UINT64_C(0x00069723C749EA4F),
3108 UINT64_C(0x0005631BCF116547), UINT64_C(0x0004E31FAB9D03A6),
3109 UINT64_C(0x0002B7F538841EE2)},
3110 {UINT64_C(0x000BD957A2809D3C), UINT64_C(0x000317F1DC4351FD),
3111 UINT64_C(0x000701BA3438D796), UINT64_C(0x00009FBD6563EC5D),
3112 UINT64_C(0x0003E98ABE5B2F47)}},
3113 {{UINT64_C(0x000AE4190E276A10), UINT64_C(0x0001FFB966B8121D),
3114 UINT64_C(0x0004FEEDA4D78B7E), UINT64_C(0x0005DB20D5551162),
3115 UINT64_C(0x00030DC06EF26E4D)},
3116 {UINT64_C(0x000A970255208159), UINT64_C(0x0001A104788B4AEF),
3117 UINT64_C(0x00004D4C840BE3BE), UINT64_C(0x0006BD8A71949A6C),
3118 UINT64_C(0x000651C9FF191728)},
3119 {UINT64_C(0x000A44663267D2A4), UINT64_C(0x0001FC0CAB11E883),
3120 UINT64_C(0x000785A12DE63089), UINT64_C(0x00006EC9E0189600),
3121 UINT64_C(0x000375BF7E8AB1B8)}},
3122 {{UINT64_C(0x000BFFBBC3B4CE41), UINT64_C(0x0003376A2003A823),
3123 UINT64_C(0x000091EBF7910590), UINT64_C(0x00061FB8363DCA05),
3124 UINT64_C(0x00042807BC01AD4E)},
3125 {UINT64_C(0x000ACF6D9A5C7646), UINT64_C(0x000560F4B3AE3DC2),
3126 UINT64_C(0x000183CCAE76BD95), UINT64_C(0x00065764DB513046),
3127 UINT64_C(0x000214F42294E850)},
3128 {UINT64_C(0x0000F3EDC763536B), UINT64_C(0x0004E9D5EF6B046E),
3129 UINT64_C(0x000150D442C37994), UINT64_C(0x0001B54E80DE1472),
3130 UINT64_C(0x00007A1D71EDF00C)}},
3131 {{UINT64_C(0x00087407DBA8E90B), UINT64_C(0x0007E1C66322205F),
3132 UINT64_C(0x0004FAC245ACCD04), UINT64_C(0x0002B13B4E297D86),
3133 UINT64_C(0x000323B2D23AEDAE)},
3134 {UINT64_C(0x0009941B92E19A5C), UINT64_C(0x000195BC242E04DB),
3135 UINT64_C(0x0007CBD2DF69FF04), UINT64_C(0x0007CA419CC6C1BA),
3136 UINT64_C(0x0002904A1B8DDF4F)},
3137 {UINT64_C(0x00040957907BF307), UINT64_C(0x00015C68151C4FE7),
3138 UINT64_C(0x0003DD3F01FB8E0F), UINT64_C(0x0003D31C808FC101),
3139 UINT64_C(0x00066F1F09C544BB)}},
3140 {{UINT64_C(0x0003F8A6A6C266C9), UINT64_C(0x0001000A75D2D728),
3141 UINT64_C(0x000149100C338128), UINT64_C(0x00048CB6ED6D33B4),
3142 UINT64_C(0x00069B7380105C27)},
3143 {UINT64_C(0x000BBCA015BD1302), UINT64_C(0x000453E91EF883C4),
3144 UINT64_C(0x000087A2C55564F3), UINT64_C(0x00028661DD26634D),
3145 UINT64_C(0x0000504737350EB4)},
3146 {UINT64_C(0x0003AE59A5B3D5E2), UINT64_C(0x0001545256AA2218),
3147 UINT64_C(0x00064A0782A0BF22), UINT64_C(0x000365507C34B4AA),
3148 UINT64_C(0x00032799B2146183)}},
3149 {{UINT64_C(0x0003D6DBFB2DFB8B), UINT64_C(0x00022DF9277F3ECF),
3150 UINT64_C(0x0000C42749A48685), UINT64_C(0x0001B0E7B30B31B5),
3151 UINT64_C(0x00075EBF4439768D)},
3152 {UINT64_C(0x00039F41CE757E5C), UINT64_C(0x0007F8600191731B),
3153 UINT64_C(0x0006B2813E3967F5), UINT64_C(0x00015D1CE8E34A7E),
3154 UINT64_C(0x00072FBC1F6F13D8)},
3155 {UINT64_C(0x0004F6CF2E028861), UINT64_C(0x00020F869603ABDE),
3156 UINT64_C(0x00042A4AA3F9DAAB), UINT64_C(0x0004A8C0AC2A2950),
3157 UINT64_C(0x0004B1809E50B53C)}},
3158 {{UINT64_C(0x00062DDA4C355837), UINT64_C(0x0002F17314E1EE8D),
3159 UINT64_C(0x00078EBCB6E2323E), UINT64_C(0x0004543455D081FD),
3160 UINT64_C(0x000791C9DA3066C1)},
3161 {UINT64_C(0x0007AEA83D07CA0E), UINT64_C(0x000601D3C4BBCA6C),
3162 UINT64_C(0x000438ECD2EB6B9E), UINT64_C(0x0005FE33D87D61C1),
3163 UINT64_C(0x0002C2CD6F6EF8D2)},
3164 {UINT64_C(0x0002DAEC4B332C81), UINT64_C(0x000600000F256A01),
3165 UINT64_C(0x000647117D50194B), UINT64_C(0x0002A7D5456F092C),
3166 UINT64_C(0x000398A204AC0606)}},
3167 {{UINT64_C(0x00076419370EC4A0), UINT64_C(0x00012369939759B2),
3168 UINT64_C(0x00023B2960FD0EE0), UINT64_C(0x0007AF17DB515E9B),
3169 UINT64_C(0x0002CC3165DDFC91)},
3170 {UINT64_C(0x0005EE1C6281CBB1), UINT64_C(0x00060699623D7D65),
3171 UINT64_C(0x0000F3D85C23D284), UINT64_C(0x000018587E7669D1),
3172 UINT64_C(0x000227AAF5D77845)},
3173 {UINT64_C(0x000153114ADB9FC3), UINT64_C(0x000164F7102A9765),
3174 UINT64_C(0x0006E7834D58BEE3), UINT64_C(0x0006F111F5E5ACB0),
3175 UINT64_C(0x000162CF7ADDFFCA)}},
3176 {{UINT64_C(0x00055D7C37A14EAC), UINT64_C(0x0005223EE335640C),
3177 UINT64_C(0x000291B30C58F170), UINT64_C(0x00023A4EB047D54F),
3178 UINT64_C(0x0002C3DDA0AF63CB)},
3179 {UINT64_C(0x000C4C6EF153A948), UINT64_C(0x00004C4867916BA5),
3180 UINT64_C(0x00035BE98811B8E0), UINT64_C(0x0004F3937F720308),
3181 UINT64_C(0x00041AC616B68B67)},
3182 {UINT64_C(0x000D47D0742C184D), UINT64_C(0x00063D7733EDA001),
3183 UINT64_C(0x000609767EC0E926), UINT64_C(0x0006C3F5D59B36D0),
3184 UINT64_C(0x0004B14DD7938C89)}},
3188 * Q := 2P, both projective, Q and P same pointers OK
3189 * Autogenerated: op3/dbl_proj_ed_eone.op3
3190 * https://www.hyperelliptic.org/EFD/g1p/auto-code/twisted/extended-1/doubling/dbl-2008-hwcd.op3
3193 static void point_double(pt_prj_t *Q, const pt_prj_t *P) {
3194 /* temporary variables */
3195 fe_t t0, t1, t2, t3;
3197 /* set pointers for Edwards curve arith */
3198 const limb_t *X = P->X;
3199 const limb_t *Y = P->Y;
3200 const limb_t *Z = P->Z;
3206 /* the curve arith formula */
3207 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(t0, X);
3208 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(t1, Y);
3209 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(t2, Z);
3210 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(t3, t2, t2);
3211 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(X3, X, Y);
3212 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(Y3, X3);
3213 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(T3, Y3, t0);
3214 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(Z3, T3, t1);
3215 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(Y3, t0, t1);
3216 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(t2, Y3, t3);
3217 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(t3, t0, t1);
3218 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(X3, Z3, t2);
3219 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(T3, Z3, t3);
3220 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Z3, t2, Y3);
3221 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Y3, Y3, t3);
3225 * R := Q + P where R and Q are projective, P affine.
3226 * R and Q same pointers OK
3227 * R and P same pointers not OK
3228 * Autogenerated: op3/add_mixed_ed_eone.op3
3229 * https://hyperelliptic.org/EFD/g1p/auto-code/twisted/extended/addition/madd-2008-hwcd.op3
3232 static void point_add_mixed(pt_prj_t *R, const pt_prj_t *Q, const pt_aff_t *P) {
3233 /* temporary variables */
3234 fe_t t0, t1, t2, t3;
3236 const limb_t *d = const_d;
3237 /* set pointers for Edwards curve arith */
3238 const limb_t *X1 = Q->X;
3239 const limb_t *Y1 = Q->Y;
3240 const limb_t *T1 = Q->T;
3241 const limb_t *Z1 = Q->Z;
3242 const limb_t *X2 = P->X;
3243 const limb_t *Y2 = P->Y;
3244 const limb_t *T2 = P->T;
3250 /* the curve arith formula */
3251 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t0, X1, X2);
3252 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t1, Y1, Y2);
3253 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t2, d, T2);
3254 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t2, T1, t2);
3255 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(X3, X1, Y1);
3256 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(Y3, X2, Y2);
3257 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(T3, X3, Y3);
3258 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(t3, T3, t0);
3259 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(T3, t3, t1);
3260 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(t3, Z1, t2);
3261 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(Z3, Z1, t2);
3262 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(t1, t1, t0);
3263 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(X3, T3, Z3);
3264 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Y3, t3, t1);
3265 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(T3, T3, t1);
3266 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Z3, Z3, t3);
3270 * R := Q + P all projective.
3271 * R and Q same pointers OK
3272 * R and P same pointers not OK
3273 * Autogenerated: op3/add_proj_ed_eone.op3
3274 * https://hyperelliptic.org/EFD/g1p/auto-code/twisted/extended/addition/add-2008-hwcd.op3
3277 static void point_add_proj(pt_prj_t *R, const pt_prj_t *Q, const pt_prj_t *P) {
3278 /* temporary variables */
3279 fe_t t0, t1, t2, t3;
3281 const limb_t *d = const_d;
3282 /* set pointers for Edwards curve arith */
3283 const limb_t *X1 = Q->X;
3284 const limb_t *Y1 = Q->Y;
3285 const limb_t *T1 = Q->T;
3286 const limb_t *Z1 = Q->Z;
3287 const limb_t *X2 = P->X;
3288 const limb_t *Y2 = P->Y;
3289 const limb_t *T2 = P->T;
3290 const limb_t *Z2 = P->Z;
3296 /* the curve arith formula */
3297 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t0, X1, X2);
3298 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t1, Y1, Y2);
3299 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t2, d, T2);
3300 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t2, T1, t2);
3301 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t3, Z1, Z2);
3302 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(X3, X1, Y1);
3303 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(Y3, X2, Y2);
3304 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(T3, X3, Y3);
3305 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(Z3, T3, t0);
3306 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(T3, Z3, t1);
3307 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(Z3, t3, t2);
3308 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(t3, t3, t2);
3309 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(t1, t1, t0);
3310 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(X3, T3, Z3);
3311 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Y3, t3, t1);
3312 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(T3, T3, t1);
3313 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Z3, Z3, t3);
3317 * from P projective Edwards to Q projective legacy: Q=P OK
3318 * Autogenerated: op3/edwards2legacy_gost.op3
3319 * https://tools.ietf.org/html/rfc7836#section-5.2
3321 static void point_edwards2legacy(pt_prj_t *Q, const pt_prj_t *P) {
3322 /* temporary variables */
3325 const limb_t *S = const_S;
3326 const limb_t *T = const_T;
3327 const limb_t *X1 = P->X;
3328 const limb_t *Y1 = P->Y;
3329 const limb_t *Z1 = P->Z;
3335 /* the curve arith formula */
3336 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(T3, Z1, Y1);
3337 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(t0, Z1, Y1);
3338 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(T3, S, T3);
3339 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Y3, Z1, T3);
3340 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Z3, X1, t0);
3341 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t0, t0, T);
3342 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(t0, T3, t0);
3343 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(X3, X1, t0);
3347 * from P affine legacy to Q projective Edwards: Q=P not OK
3348 * Autogenerated: op3/legacy2edwards_gost.op3
3349 * https://tools.ietf.org/html/rfc7836#section-5.2
3351 static void point_legacy2edwards(pt_prj_t *Q, const pt_aff_t *P) {
3353 const limb_t *S = const_S;
3354 const limb_t *T = const_T;
3355 const limb_t *X1 = P->X;
3356 const limb_t *Y1 = P->Y;
3362 /* the curve arith formula */
3363 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(T3, X1, T);
3364 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(Y3, T3, S);
3365 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(X3, T3, Y3);
3366 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Z3, Y1, Y3);
3367 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(T3, T3, S);
3368 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Y3, Y1, T3);
3369 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(T3, X3, Y3);
3370 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(X3, X3, Z3);
3371 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Y3, Y3, Z3);
3372 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(Z3, Z3);
3377 #define DRADIX (1 << RADIX)
3378 #define DRADIX_WNAF ((DRADIX) << 1)
3381 * precomp for wnaf scalar multiplication:
3389 static void precomp_wnaf(pt_prj_t precomp[DRADIX / 2], const pt_aff_t *P) {
3392 /* move from legacy affine to Edwards projective */
3393 point_legacy2edwards(&precomp[0], P);
3394 point_double(&precomp[DRADIX / 2 - 1], &precomp[0]);
3396 for (i = 1; i < DRADIX / 2; i++)
3397 point_add_proj(&precomp[i], &precomp[DRADIX / 2 - 1], &precomp[i - 1]);
3400 /* fetch a scalar bit */
3401 static int scalar_get_bit(const unsigned char in[32], int idx) {
3407 if (idx < 0 || widx >= 32) return 0;
3409 return (in[widx] >> rshift) & 0x1;
3413 * Compute "regular" wnaf representation of a scalar.
3414 * See "Exponent Recoding and Regular Exponentiation Algorithms",
3415 * Tunstall et al., AfricaCrypt 2009, Alg 6.
3416 * It forces an odd scalar and outputs digits in
3417 * {\pm 1, \pm 3, \pm 5, \pm 7, \pm 9, ...}
3418 * i.e. signed odd digits with _no zeroes_ -- that makes it "regular".
3420 static void scalar_rwnaf(int8_t out[52], const unsigned char in[32]) {
3424 window = (in[0] & (DRADIX_WNAF - 1)) | 1;
3425 for (i = 0; i < 51; i++) {
3426 d = (window & (DRADIX_WNAF - 1)) - DRADIX;
3428 window = (window - d) >> RADIX;
3429 window += scalar_get_bit(in, (i + 1) * RADIX + 1) << 1;
3430 window += scalar_get_bit(in, (i + 1) * RADIX + 2) << 2;
3431 window += scalar_get_bit(in, (i + 1) * RADIX + 3) << 3;
3432 window += scalar_get_bit(in, (i + 1) * RADIX + 4) << 4;
3433 window += scalar_get_bit(in, (i + 1) * RADIX + 5) << 5;
3439 * Compute "textbook" wnaf representation of a scalar.
3440 * NB: not constant time
3442 static void scalar_wnaf(int8_t out[257], const unsigned char in[32]) {
3446 window = in[0] & (DRADIX_WNAF - 1);
3447 for (i = 0; i < 257; i++) {
3449 if ((window & 1) && ((d = window & (DRADIX_WNAF - 1)) & DRADIX))
3452 window = (window - d) >> 1;
3453 window += scalar_get_bit(in, i + 1 + RADIX) << RADIX;
3458 * Simulateous scalar multiplication: interleaved "textbook" wnaf.
3459 * NB: not constant time
3461 static void var_smul_wnaf_two(pt_aff_t *out, const unsigned char a[32],
3462 const unsigned char b[32], const pt_aff_t *P) {
3463 int i, d, is_neg, is_inf = 1, flipped = 0;
3464 int8_t anaf[257] = {0};
3465 int8_t bnaf[257] = {0};
3467 pt_prj_t precomp[DRADIX / 2];
3469 precomp_wnaf(precomp, P);
3470 scalar_wnaf(anaf, a);
3471 scalar_wnaf(bnaf, b);
3473 for (i = 256; i >= 0; i--) {
3474 if (!is_inf) point_double(&Q, &Q);
3475 if ((d = bnaf[i])) {
3476 if ((is_neg = d < 0) != flipped) {
3477 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(Q.X, Q.X);
3478 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(Q.T, Q.T);
3481 d = (is_neg) ? (-d - 1) >> 1 : (d - 1) >> 1;
3483 /* initialize accumulator */
3484 fe_copy(Q.X, &precomp[d].X);
3485 fe_copy(Q.Y, &precomp[d].Y);
3486 fe_copy(Q.T, &precomp[d].T);
3487 fe_copy(Q.Z, &precomp[d].Z);
3490 point_add_proj(&Q, &Q, &precomp[d]);
3492 if ((d = anaf[i])) {
3493 if ((is_neg = d < 0) != flipped) {
3494 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(Q.X, Q.X);
3495 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(Q.T, Q.T);
3498 d = (is_neg) ? (-d - 1) >> 1 : (d - 1) >> 1;
3500 /* initialize accumulator */
3501 fe_copy(Q.X, &lut_cmb[0][d].X);
3502 fe_copy(Q.Y, &lut_cmb[0][d].Y);
3503 fe_copy(Q.T, &lut_cmb[0][d].T);
3504 fe_copy(Q.Z, const_one);
3507 point_add_mixed(&Q, &Q, &lut_cmb[0][d]);
3512 /* initialize accumulator to inf: all-zero scalars */
3514 fe_copy(Q.Y, const_one);
3516 fe_copy(Q.Z, const_one);
3521 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(Q.X, Q.X);
3522 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(Q.T, Q.T);
3525 /* move from Edwards projective to legacy projective */
3526 point_edwards2legacy(&Q, &Q);
3527 /* convert to affine -- NB depends on coordinate system */
3528 fiat_id_tc26_gost_3410_2012_256_paramSetA_inv(Q.Z, Q.Z);
3529 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(out->X, Q.X, Q.Z);
3530 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(out->Y, Q.Y, Q.Z);
3534 * Variable point scalar multiplication with "regular" wnaf.
3536 static void var_smul_rwnaf(pt_aff_t *out, const unsigned char scalar[32],
3537 const pt_aff_t *P) {
3538 int i, j, d, diff, is_neg;
3539 int8_t rnaf[52] = {0};
3541 pt_prj_t precomp[DRADIX / 2];
3543 precomp_wnaf(precomp, P);
3544 scalar_rwnaf(rnaf, scalar);
3546 #if defined(_MSC_VER)
3547 /* result still unsigned: yes we know */
3548 #pragma warning(push)
3549 #pragma warning(disable : 4146)
3552 /* initialize accumulator to high digit */
3553 d = (rnaf[51] - 1) >> 1;
3554 for (j = 0; j < DRADIX / 2; j++) {
3555 diff = (1 - (-(d ^ j) >> (8 * sizeof(int) - 1))) & 1;
3556 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.X, diff, Q.X,
3558 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.Y, diff, Q.Y,
3560 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.T, diff, Q.T,
3562 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.Z, diff, Q.Z,
3566 for (i = 50; i >= 0; i--) {
3567 for (j = 0; j < RADIX; j++) point_double(&Q, &Q);
3569 /* is_neg = (d < 0) ? 1 : 0 */
3570 is_neg = (d >> (8 * sizeof(int) - 1)) & 1;
3572 d = (d ^ -is_neg) + is_neg;
3574 for (j = 0; j < DRADIX / 2; j++) {
3575 diff = (1 - (-(d ^ j) >> (8 * sizeof(int) - 1))) & 1;
3576 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(
3577 lut.X, diff, lut.X, precomp[j].X);
3578 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(
3579 lut.Y, diff, lut.Y, precomp[j].Y);
3580 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(
3581 lut.T, diff, lut.T, precomp[j].T);
3582 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(
3583 lut.Z, diff, lut.Z, precomp[j].Z);
3585 /* negate lut point if digit is negative */
3586 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(out->X, lut.X);
3587 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(out->T, lut.T);
3588 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(lut.X, is_neg,
3590 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(lut.T, is_neg,
3592 point_add_proj(&Q, &Q, &lut);
3595 #if defined(_MSC_VER)
3596 #pragma warning(pop)
3599 /* conditionally subtract P if the scalar was even */
3600 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(lut.X, precomp[0].X);
3601 fe_copy(lut.Y, precomp[0].Y);
3602 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(lut.T, precomp[0].T);
3603 fe_copy(lut.Z, precomp[0].Z);
3604 point_add_proj(&lut, &lut, &Q);
3605 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.X, scalar[0] & 1,
3607 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.Y, scalar[0] & 1,
3609 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.T, scalar[0] & 1,
3611 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.Z, scalar[0] & 1,
3614 /* move from Edwards projective to legacy projective */
3615 point_edwards2legacy(&Q, &Q);
3616 /* convert to affine -- NB depends on coordinate system */
3617 fiat_id_tc26_gost_3410_2012_256_paramSetA_inv(Q.Z, Q.Z);
3618 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(out->X, Q.X, Q.Z);
3619 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(out->Y, Q.Y, Q.Z);
3623 * Fixed scalar multiplication: comb with interleaving.
3625 static void fixed_smul_cmb(pt_aff_t *out, const unsigned char scalar[32]) {
3626 int i, j, k, d, diff, is_neg = 0;
3627 int8_t rnaf[52] = {0};
3631 scalar_rwnaf(rnaf, scalar);
3633 /* initalize accumulator to inf */
3635 fe_copy(Q.Y, const_one);
3637 fe_copy(Q.Z, const_one);
3639 #if defined(_MSC_VER)
3640 /* result still unsigned: yes we know */
3641 #pragma warning(push)
3642 #pragma warning(disable : 4146)
3645 for (i = 3; i >= 0; i--) {
3646 for (j = 0; i != 3 && j < RADIX; j++) point_double(&Q, &Q);
3647 for (j = 0; j < 14; j++) {
3648 if (j * 4 + i > 51) continue;
3649 d = rnaf[j * 4 + i];
3650 /* is_neg = (d < 0) ? 1 : 0 */
3651 is_neg = (d >> (8 * sizeof(int) - 1)) & 1;
3653 d = (d ^ -is_neg) + is_neg;
3655 for (k = 0; k < DRADIX / 2; k++) {
3656 diff = (1 - (-(d ^ k) >> (8 * sizeof(int) - 1))) & 1;
3657 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(
3658 lut.X, diff, lut.X, lut_cmb[j][k].X);
3659 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(
3660 lut.Y, diff, lut.Y, lut_cmb[j][k].Y);
3661 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(
3662 lut.T, diff, lut.T, lut_cmb[j][k].T);
3664 /* negate lut point if digit is negative */
3665 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(out->X, lut.X);
3666 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(out->T, lut.T);
3667 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(lut.X, is_neg,
3669 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(lut.T, is_neg,
3671 point_add_mixed(&Q, &Q, &lut);
3675 #if defined(_MSC_VER)
3676 #pragma warning(pop)
3679 /* conditionally subtract P if the scalar was even */
3680 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(lut.X, lut_cmb[0][0].X);
3681 fe_copy(lut.Y, lut_cmb[0][0].Y);
3682 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(lut.T, lut_cmb[0][0].T);
3683 point_add_mixed(&R, &Q, &lut);
3684 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.X, scalar[0] & 1, R.X,
3686 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.Y, scalar[0] & 1, R.Y,
3688 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.T, scalar[0] & 1, R.T,
3690 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.Z, scalar[0] & 1, R.Z,
3693 /* move from Edwards projective to legacy projective */
3694 point_edwards2legacy(&Q, &Q);
3695 /* convert to affine -- NB depends on coordinate system */
3696 fiat_id_tc26_gost_3410_2012_256_paramSetA_inv(Q.Z, Q.Z);
3697 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(out->X, Q.X, Q.Z);
3698 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(out->Y, Q.Y, Q.Z);
3701 static void point_mul_two(unsigned char outx[32], unsigned char outy[32],
3702 const unsigned char a[32], const unsigned char b[32],
3703 const unsigned char inx[32],
3704 const unsigned char iny[32]) {
3707 fiat_id_tc26_gost_3410_2012_256_paramSetA_from_bytes(P.X, inx);
3708 fiat_id_tc26_gost_3410_2012_256_paramSetA_from_bytes(P.Y, iny);
3709 /* simultaneous scalar multiplication */
3710 var_smul_wnaf_two(&P, a, b, &P);
3712 fiat_id_tc26_gost_3410_2012_256_paramSetA_to_bytes(outx, P.X);
3713 fiat_id_tc26_gost_3410_2012_256_paramSetA_to_bytes(outy, P.Y);
3716 static void point_mul_g(unsigned char outx[32], unsigned char outy[32],
3717 const unsigned char scalar[32]) {
3720 /* fixed scmul function */
3721 fixed_smul_cmb(&P, scalar);
3722 fiat_id_tc26_gost_3410_2012_256_paramSetA_to_bytes(outx, P.X);
3723 fiat_id_tc26_gost_3410_2012_256_paramSetA_to_bytes(outy, P.Y);
3726 static void point_mul(unsigned char outx[32], unsigned char outy[32],
3727 const unsigned char scalar[32],
3728 const unsigned char inx[32],
3729 const unsigned char iny[32]) {
3732 fiat_id_tc26_gost_3410_2012_256_paramSetA_from_bytes(P.X, inx);
3733 fiat_id_tc26_gost_3410_2012_256_paramSetA_from_bytes(P.Y, iny);
3734 /* var scmul function */
3735 var_smul_rwnaf(&P, scalar, &P);
3736 fiat_id_tc26_gost_3410_2012_256_paramSetA_to_bytes(outx, P.X);
3737 fiat_id_tc26_gost_3410_2012_256_paramSetA_to_bytes(outy, P.Y);
3741 #include <openssl/ec.h>
3743 static const unsigned char const_zb[32] = {0};
3746 point_mul_two_id_tc26_gost_3410_2012_256_paramSetA(
3747 const EC_GROUP *group, EC_POINT *r, const BIGNUM *n, const EC_POINT *q,
3748 const BIGNUM *m, BN_CTX *ctx) {
3750 unsigned char b_x[32];
3751 unsigned char b_y[32];
3752 unsigned char b_n[32];
3753 unsigned char b_m[32];
3754 BIGNUM *x = NULL, *y = NULL;
3757 x = BN_CTX_get(ctx);
3758 if ((y = BN_CTX_get(ctx)) == NULL
3759 /* pull out coords as bytes */
3760 || !EC_POINT_get_affine_coordinates(group, q, x, y, ctx) ||
3761 BN_bn2lebinpad(x, b_x, 32) != 32 || BN_bn2lebinpad(y, b_y, 32) != 32 ||
3762 BN_bn2lebinpad(n, b_n, 32) != 32 || BN_bn2lebinpad(m, b_m, 32) != 32)
3764 /* do the simultaneous scalar multiplication */
3765 point_mul_two(b_x, b_y, b_n, b_m, b_x, b_y);
3766 /* check for infinity */
3767 if (CRYPTO_memcmp(const_zb, b_x, 32) == 0 &&
3768 CRYPTO_memcmp(const_zb, b_y, 32) == 0) {
3769 if (!EC_POINT_set_to_infinity(group, r)) goto err;
3771 /* otherwise, pack the bytes into the result */
3772 if (BN_lebin2bn(b_x, 32, x) == NULL ||
3773 BN_lebin2bn(b_y, 32, y) == NULL ||
3774 !EC_POINT_set_affine_coordinates(group, r, x, y, ctx))
3784 point_mul_id_tc26_gost_3410_2012_256_paramSetA(const EC_GROUP *group,
3790 unsigned char b_x[32];
3791 unsigned char b_y[32];
3792 unsigned char b_m[32];
3793 BIGNUM *x = NULL, *y = NULL;
3796 x = BN_CTX_get(ctx);
3797 if ((y = BN_CTX_get(ctx)) == NULL
3798 /* pull out coords as bytes */
3799 || !EC_POINT_get_affine_coordinates(group, q, x, y, ctx) ||
3800 BN_bn2lebinpad(x, b_x, 32) != 32 || BN_bn2lebinpad(y, b_y, 32) != 32 ||
3801 BN_bn2lebinpad(m, b_m, 32) != 32)
3803 /* do the variable scalar multiplication */
3804 point_mul(b_x, b_y, b_m, b_x, b_y);
3805 /* check for infinity */
3806 if (CRYPTO_memcmp(const_zb, b_x, 32) == 0 &&
3807 CRYPTO_memcmp(const_zb, b_y, 32) == 0) {
3808 if (!EC_POINT_set_to_infinity(group, r)) goto err;
3810 /* otherwise, pack the bytes into the result */
3811 if (BN_lebin2bn(b_x, 32, x) == NULL ||
3812 BN_lebin2bn(b_y, 32, y) == NULL ||
3813 !EC_POINT_set_affine_coordinates(group, r, x, y, ctx))
3823 point_mul_g_id_tc26_gost_3410_2012_256_paramSetA(const EC_GROUP *group,
3828 unsigned char b_x[32];
3829 unsigned char b_y[32];
3830 unsigned char b_n[32];
3831 BIGNUM *x = NULL, *y = NULL;
3834 x = BN_CTX_get(ctx);
3835 if ((y = BN_CTX_get(ctx)) == NULL || BN_bn2lebinpad(n, b_n, 32) != 32)
3837 /* do the fixed scalar multiplication */
3838 point_mul_g(b_x, b_y, b_n);
3839 /* check for infinity */
3840 if (CRYPTO_memcmp(const_zb, b_x, 32) == 0 &&
3841 CRYPTO_memcmp(const_zb, b_y, 32) == 0) {
3842 if (!EC_POINT_set_to_infinity(group, r)) goto err;
3844 /* otherwise, pack the bytes into the result */
3845 if (BN_lebin2bn(b_x, 32, x) == NULL ||
3846 BN_lebin2bn(b_y, 32, y) == NULL ||
3847 !EC_POINT_set_affine_coordinates(group, r, x, y, ctx))
3858 #else /* __SIZEOF_INT128__ */
3862 #define LIMB_BITS 32
3864 /* Field elements */
3865 typedef uint32_t fe_t[LIMB_CNT];
3866 typedef uint32_t limb_t;
3868 #define fe_copy(d, s) memcpy(d, s, sizeof(fe_t))
3869 #define fe_set_zero(d) memset(d, 0, sizeof(fe_t))
3871 #define fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(c, a, b) \
3872 fiat_id_tc26_gost_3410_2012_256_paramSetA_add(c, a, b); \
3873 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry(c, c)
3874 #define fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(c, a, b) \
3875 fiat_id_tc26_gost_3410_2012_256_paramSetA_sub(c, a, b); \
3876 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry(c, c)
3878 /* Projective points */
3893 /* BEGIN verbatim fiat code https://github.com/mit-plv/fiat-crypto */
3897 * Copyright (c) 2020 the fiat-crypto authors (see the AUTHORS file)
3899 * Permission is hereby granted, free of charge, to any person obtaining a copy
3900 * of this software and associated documentation files (the "Software"), to deal
3901 * in the Software without restriction, including without limitation the rights
3902 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
3903 * copies of the Software, and to permit persons to whom the Software is
3904 * furnished to do so, subject to the following conditions:
3906 * The above copyright notice and this permission notice shall be included in
3907 * all copies or substantial portions of the Software.
3909 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
3910 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
3911 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
3912 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
3913 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
3914 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
3918 /* Autogenerated: unsaturated_solinas --static id_tc26_gost_3410_2012_256_paramSetA 32 '(auto)' '2^256 - 617' */
3919 /* curve description: id_tc26_gost_3410_2012_256_paramSetA */
3920 /* machine_wordsize = 32 (from "32") */
3921 /* requested operations: (all) */
3922 /* n = 11 (from "(auto)") */
3923 /* s-c = 2^256 - [(1, 617)] (from "2^256 - 617") */
3924 /* tight_bounds_multiplier = 1.1 (from "") */
3926 /* Computed values: */
3927 /* carry_chain = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 0, 1] */
3928 /* eval z = z[0] + (z[1] << 24) + (z[2] << 47) + (z[3] << 70) + (z[4] << 94) + (z[5] << 117) + (z[6] << 140) + (z[7] << 163) + (z[8] << 187) + (z[9] << 210) + (z[10] << 233) */
3929 /* 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) */
3932 typedef unsigned char fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1;
3933 typedef signed char fiat_id_tc26_gost_3410_2012_256_paramSetA_int1;
3936 #error "This code only works on a two's complement system"
3940 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u24 is an addition with carry.
3942 * out1 = (arg1 + arg2 + arg3) mod 2^24
3943 * out2 = ⌊(arg1 + arg2 + arg3) / 2^24⌋
3946 * arg1: [0x0 ~> 0x1]
3947 * arg2: [0x0 ~> 0xffffff]
3948 * arg3: [0x0 ~> 0xffffff]
3950 * out1: [0x0 ~> 0xffffff]
3951 * out2: [0x0 ~> 0x1]
3953 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u24(
3954 uint32_t *out1, fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 *out2,
3955 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 arg1, uint32_t arg2,
3959 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x3;
3960 x1 = ((arg1 + arg2) + arg3);
3961 x2 = (x1 & UINT32_C(0xffffff));
3962 x3 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(x1 >> 24);
3968 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u24 is a subtraction with borrow.
3970 * out1 = (-arg1 + arg2 + -arg3) mod 2^24
3971 * out2 = -⌊(-arg1 + arg2 + -arg3) / 2^24⌋
3974 * arg1: [0x0 ~> 0x1]
3975 * arg2: [0x0 ~> 0xffffff]
3976 * arg3: [0x0 ~> 0xffffff]
3978 * out1: [0x0 ~> 0xffffff]
3979 * out2: [0x0 ~> 0x1]
3981 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u24(
3982 uint32_t *out1, fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 *out2,
3983 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 arg1, uint32_t arg2,
3986 fiat_id_tc26_gost_3410_2012_256_paramSetA_int1 x2;
3988 x1 = ((int32_t)(arg2 - arg1) - (int32_t)arg3);
3989 x2 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_int1)(x1 >> 24);
3990 x3 = (x1 & UINT32_C(0xffffff));
3992 *out2 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(0x0 - x2);
3996 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u23 is an addition with carry.
3998 * out1 = (arg1 + arg2 + arg3) mod 2^23
3999 * out2 = ⌊(arg1 + arg2 + arg3) / 2^23⌋
4002 * arg1: [0x0 ~> 0x1]
4003 * arg2: [0x0 ~> 0x7fffff]
4004 * arg3: [0x0 ~> 0x7fffff]
4006 * out1: [0x0 ~> 0x7fffff]
4007 * out2: [0x0 ~> 0x1]
4009 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u23(
4010 uint32_t *out1, fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 *out2,
4011 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 arg1, uint32_t arg2,
4015 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x3;
4016 x1 = ((arg1 + arg2) + arg3);
4017 x2 = (x1 & UINT32_C(0x7fffff));
4018 x3 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(x1 >> 23);
4024 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u23 is a subtraction with borrow.
4026 * out1 = (-arg1 + arg2 + -arg3) mod 2^23
4027 * out2 = -⌊(-arg1 + arg2 + -arg3) / 2^23⌋
4030 * arg1: [0x0 ~> 0x1]
4031 * arg2: [0x0 ~> 0x7fffff]
4032 * arg3: [0x0 ~> 0x7fffff]
4034 * out1: [0x0 ~> 0x7fffff]
4035 * out2: [0x0 ~> 0x1]
4037 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u23(
4038 uint32_t *out1, fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 *out2,
4039 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 arg1, uint32_t arg2,
4042 fiat_id_tc26_gost_3410_2012_256_paramSetA_int1 x2;
4044 x1 = ((int32_t)(arg2 - arg1) - (int32_t)arg3);
4045 x2 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_int1)(x1 >> 23);
4046 x3 = (x1 & UINT32_C(0x7fffff));
4048 *out2 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(0x0 - x2);
4052 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u32 is a single-word conditional move.
4054 * out1 = (if arg1 = 0 then arg2 else arg3)
4057 * arg1: [0x0 ~> 0x1]
4058 * arg2: [0x0 ~> 0xffffffff]
4059 * arg3: [0x0 ~> 0xffffffff]
4061 * out1: [0x0 ~> 0xffffffff]
4063 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u32(
4064 uint32_t *out1, fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 arg1,
4065 uint32_t arg2, uint32_t arg3) {
4066 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x1;
4070 x2 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_int1)(0x0 - x1) &
4071 UINT32_C(0xffffffff));
4072 x3 = ((x2 & arg3) | ((~x2) & arg2));
4077 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul multiplies two field elements and reduces the result.
4079 * eval out1 mod m = (eval arg1 * eval arg2) mod m
4082 * arg1: [[0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664]]
4083 * arg2: [[0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664]]
4085 * out1: [[0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc]]
4087 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(
4088 uint32_t out1[11], const uint32_t arg1[11], const uint32_t arg2[11]) {
4258 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x170;
4261 x1 = (UINT16_C(0x269) * ((uint64_t)(arg1[10]) * (arg2[10])));
4262 x2 = (UINT16_C(0x269) * ((uint64_t)(arg1[10]) * (arg2[9])));
4263 x3 = (UINT16_C(0x269) * (((uint64_t)(arg1[10]) * (arg2[8])) * 0x2));
4264 x4 = (UINT16_C(0x269) * ((uint64_t)(arg1[10]) * (arg2[7])));
4265 x5 = (UINT16_C(0x269) * ((uint64_t)(arg1[10]) * (arg2[6])));
4266 x6 = (UINT16_C(0x269) * ((uint64_t)(arg1[10]) * (arg2[5])));
4267 x7 = (UINT16_C(0x269) * (((uint64_t)(arg1[10]) * (arg2[4])) * 0x2));
4268 x8 = (UINT16_C(0x269) * ((uint64_t)(arg1[10]) * (arg2[3])));
4269 x9 = (UINT16_C(0x269) * ((uint64_t)(arg1[10]) * (arg2[2])));
4270 x10 = (UINT16_C(0x269) * (((uint64_t)(arg1[10]) * (arg2[1])) * 0x2));
4271 x11 = (UINT16_C(0x269) * ((uint64_t)(arg1[9]) * (arg2[10])));
4272 x12 = (UINT16_C(0x269) * (((uint64_t)(arg1[9]) * (arg2[9])) * 0x2));
4273 x13 = (UINT16_C(0x269) * (((uint64_t)(arg1[9]) * (arg2[8])) * 0x2));
4274 x14 = (UINT16_C(0x269) * ((uint64_t)(arg1[9]) * (arg2[7])));
4275 x15 = (UINT16_C(0x269) * ((uint64_t)(arg1[9]) * (arg2[6])));
4276 x16 = (UINT16_C(0x269) * (((uint64_t)(arg1[9]) * (arg2[5])) * 0x2));
4277 x17 = (UINT16_C(0x269) * (((uint64_t)(arg1[9]) * (arg2[4])) * 0x2));
4278 x18 = (UINT16_C(0x269) * ((uint64_t)(arg1[9]) * (arg2[3])));
4279 x19 = (UINT16_C(0x269) * (((uint64_t)(arg1[9]) * (arg2[2])) * 0x2));
4280 x20 = (UINT16_C(0x269) * (((uint64_t)(arg1[8]) * (arg2[10])) * 0x2));
4281 x21 = (UINT16_C(0x269) * (((uint64_t)(arg1[8]) * (arg2[9])) * 0x2));
4282 x22 = (UINT16_C(0x269) * (((uint64_t)(arg1[8]) * (arg2[8])) * 0x2));
4283 x23 = (UINT16_C(0x269) * ((uint64_t)(arg1[8]) * (arg2[7])));
4284 x24 = (UINT16_C(0x269) * (((uint64_t)(arg1[8]) * (arg2[6])) * 0x2));
4285 x25 = (UINT16_C(0x269) * (((uint64_t)(arg1[8]) * (arg2[5])) * 0x2));
4286 x26 = (UINT16_C(0x269) * (((uint64_t)(arg1[8]) * (arg2[4])) * 0x2));
4287 x27 = (UINT16_C(0x269) * (((uint64_t)(arg1[8]) * (arg2[3])) * 0x2));
4288 x28 = (UINT16_C(0x269) * ((uint64_t)(arg1[7]) * (arg2[10])));
4289 x29 = (UINT16_C(0x269) * ((uint64_t)(arg1[7]) * (arg2[9])));
4290 x30 = (UINT16_C(0x269) * ((uint64_t)(arg1[7]) * (arg2[8])));
4291 x31 = (UINT16_C(0x269) * ((uint64_t)(arg1[7]) * (arg2[7])));
4292 x32 = (UINT16_C(0x269) * ((uint64_t)(arg1[7]) * (arg2[6])));
4293 x33 = (UINT16_C(0x269) * ((uint64_t)(arg1[7]) * (arg2[5])));
4294 x34 = (UINT16_C(0x269) * (((uint64_t)(arg1[7]) * (arg2[4])) * 0x2));
4295 x35 = (UINT16_C(0x269) * ((uint64_t)(arg1[6]) * (arg2[10])));
4296 x36 = (UINT16_C(0x269) * ((uint64_t)(arg1[6]) * (arg2[9])));
4297 x37 = (UINT16_C(0x269) * (((uint64_t)(arg1[6]) * (arg2[8])) * 0x2));
4298 x38 = (UINT16_C(0x269) * ((uint64_t)(arg1[6]) * (arg2[7])));
4299 x39 = (UINT16_C(0x269) * ((uint64_t)(arg1[6]) * (arg2[6])));
4300 x40 = (UINT16_C(0x269) * (((uint64_t)(arg1[6]) * (arg2[5])) * 0x2));
4301 x41 = (UINT16_C(0x269) * ((uint64_t)(arg1[5]) * (arg2[10])));
4302 x42 = (UINT16_C(0x269) * (((uint64_t)(arg1[5]) * (arg2[9])) * 0x2));
4303 x43 = (UINT16_C(0x269) * (((uint64_t)(arg1[5]) * (arg2[8])) * 0x2));
4304 x44 = (UINT16_C(0x269) * ((uint64_t)(arg1[5]) * (arg2[7])));
4305 x45 = (UINT16_C(0x269) * (((uint64_t)(arg1[5]) * (arg2[6])) * 0x2));
4306 x46 = (UINT16_C(0x269) * (((uint64_t)(arg1[4]) * (arg2[10])) * 0x2));
4307 x47 = (UINT16_C(0x269) * (((uint64_t)(arg1[4]) * (arg2[9])) * 0x2));
4308 x48 = (UINT16_C(0x269) * (((uint64_t)(arg1[4]) * (arg2[8])) * 0x2));
4309 x49 = (UINT16_C(0x269) * (((uint64_t)(arg1[4]) * (arg2[7])) * 0x2));
4310 x50 = (UINT16_C(0x269) * ((uint64_t)(arg1[3]) * (arg2[10])));
4311 x51 = (UINT16_C(0x269) * ((uint64_t)(arg1[3]) * (arg2[9])));
4312 x52 = (UINT16_C(0x269) * (((uint64_t)(arg1[3]) * (arg2[8])) * 0x2));
4313 x53 = (UINT16_C(0x269) * ((uint64_t)(arg1[2]) * (arg2[10])));
4314 x54 = (UINT16_C(0x269) * (((uint64_t)(arg1[2]) * (arg2[9])) * 0x2));
4315 x55 = (UINT16_C(0x269) * (((uint64_t)(arg1[1]) * (arg2[10])) * 0x2));
4316 x56 = ((uint64_t)(arg1[10]) * (arg2[0]));
4317 x57 = ((uint64_t)(arg1[9]) * ((arg2[1]) * 0x2));
4318 x58 = ((uint64_t)(arg1[9]) * (arg2[0]));
4319 x59 = ((uint64_t)(arg1[8]) * ((arg2[2]) * 0x2));
4320 x60 = ((uint64_t)(arg1[8]) * ((arg2[1]) * 0x2));
4321 x61 = ((uint64_t)(arg1[8]) * (arg2[0]));
4322 x62 = ((uint64_t)(arg1[7]) * (arg2[3]));
4323 x63 = ((uint64_t)(arg1[7]) * (arg2[2]));
4324 x64 = ((uint64_t)(arg1[7]) * (arg2[1]));
4325 x65 = ((uint64_t)(arg1[7]) * (arg2[0]));
4326 x66 = ((uint64_t)(arg1[6]) * ((arg2[4]) * 0x2));
4327 x67 = ((uint64_t)(arg1[6]) * (arg2[3]));
4328 x68 = ((uint64_t)(arg1[6]) * (arg2[2]));
4329 x69 = ((uint64_t)(arg1[6]) * ((arg2[1]) * 0x2));
4330 x70 = ((uint64_t)(arg1[6]) * (arg2[0]));
4331 x71 = ((uint64_t)(arg1[5]) * ((arg2[5]) * 0x2));
4332 x72 = ((uint64_t)(arg1[5]) * ((arg2[4]) * 0x2));
4333 x73 = ((uint64_t)(arg1[5]) * (arg2[3]));
4334 x74 = ((uint64_t)(arg1[5]) * ((arg2[2]) * 0x2));
4335 x75 = ((uint64_t)(arg1[5]) * ((arg2[1]) * 0x2));
4336 x76 = ((uint64_t)(arg1[5]) * (arg2[0]));
4337 x77 = ((uint64_t)(arg1[4]) * ((arg2[6]) * 0x2));
4338 x78 = ((uint64_t)(arg1[4]) * ((arg2[5]) * 0x2));
4339 x79 = ((uint64_t)(arg1[4]) * ((arg2[4]) * 0x2));
4340 x80 = ((uint64_t)(arg1[4]) * ((arg2[3]) * 0x2));
4341 x81 = ((uint64_t)(arg1[4]) * ((arg2[2]) * 0x2));
4342 x82 = ((uint64_t)(arg1[4]) * ((arg2[1]) * 0x2));
4343 x83 = ((uint64_t)(arg1[4]) * (arg2[0]));
4344 x84 = ((uint64_t)(arg1[3]) * (arg2[7]));
4345 x85 = ((uint64_t)(arg1[3]) * (arg2[6]));
4346 x86 = ((uint64_t)(arg1[3]) * (arg2[5]));
4347 x87 = ((uint64_t)(arg1[3]) * ((arg2[4]) * 0x2));
4348 x88 = ((uint64_t)(arg1[3]) * (arg2[3]));
4349 x89 = ((uint64_t)(arg1[3]) * (arg2[2]));
4350 x90 = ((uint64_t)(arg1[3]) * (arg2[1]));
4351 x91 = ((uint64_t)(arg1[3]) * (arg2[0]));
4352 x92 = ((uint64_t)(arg1[2]) * ((arg2[8]) * 0x2));
4353 x93 = ((uint64_t)(arg1[2]) * (arg2[7]));
4354 x94 = ((uint64_t)(arg1[2]) * (arg2[6]));
4355 x95 = ((uint64_t)(arg1[2]) * ((arg2[5]) * 0x2));
4356 x96 = ((uint64_t)(arg1[2]) * ((arg2[4]) * 0x2));
4357 x97 = ((uint64_t)(arg1[2]) * (arg2[3]));
4358 x98 = ((uint64_t)(arg1[2]) * (arg2[2]));
4359 x99 = ((uint64_t)(arg1[2]) * ((arg2[1]) * 0x2));
4360 x100 = ((uint64_t)(arg1[2]) * (arg2[0]));
4361 x101 = ((uint64_t)(arg1[1]) * ((arg2[9]) * 0x2));
4362 x102 = ((uint64_t)(arg1[1]) * ((arg2[8]) * 0x2));
4363 x103 = ((uint64_t)(arg1[1]) * (arg2[7]));
4364 x104 = ((uint64_t)(arg1[1]) * ((arg2[6]) * 0x2));
4365 x105 = ((uint64_t)(arg1[1]) * ((arg2[5]) * 0x2));
4366 x106 = ((uint64_t)(arg1[1]) * ((arg2[4]) * 0x2));
4367 x107 = ((uint64_t)(arg1[1]) * (arg2[3]));
4368 x108 = ((uint64_t)(arg1[1]) * ((arg2[2]) * 0x2));
4369 x109 = ((uint64_t)(arg1[1]) * ((arg2[1]) * 0x2));
4370 x110 = ((uint64_t)(arg1[1]) * (arg2[0]));
4371 x111 = ((uint64_t)(arg1[0]) * (arg2[10]));
4372 x112 = ((uint64_t)(arg1[0]) * (arg2[9]));
4373 x113 = ((uint64_t)(arg1[0]) * (arg2[8]));
4374 x114 = ((uint64_t)(arg1[0]) * (arg2[7]));
4375 x115 = ((uint64_t)(arg1[0]) * (arg2[6]));
4376 x116 = ((uint64_t)(arg1[0]) * (arg2[5]));
4377 x117 = ((uint64_t)(arg1[0]) * (arg2[4]));
4378 x118 = ((uint64_t)(arg1[0]) * (arg2[3]));
4379 x119 = ((uint64_t)(arg1[0]) * (arg2[2]));
4380 x120 = ((uint64_t)(arg1[0]) * (arg2[1]));
4381 x121 = ((uint64_t)(arg1[0]) * (arg2[0]));
4385 (x54 + (x52 + (x49 + (x45 + (x40 + (x34 + (x27 + (x19 + x10))))))))));
4386 x123 = (x122 >> 24);
4387 x124 = (uint32_t)(x122 & UINT32_C(0xffffff));
4391 (x92 + (x84 + (x77 + (x71 + (x66 + (x62 + (x59 + (x57 + x56))))))))));
4395 (x93 + (x85 + (x78 + (x72 + (x67 + (x63 + (x60 + (x58 + x1))))))))));
4399 (x94 + (x86 + (x79 + (x73 + (x68 + (x64 + (x61 + (x11 + x2))))))))));
4403 (x95 + (x87 + (x80 + (x74 + (x69 + (x65 + (x20 + (x12 + x3))))))))));
4407 (x96 + (x88 + (x81 + (x75 + (x70 + (x28 + (x21 + (x13 + x4))))))))));
4411 (x97 + (x89 + (x82 + (x76 + (x35 + (x29 + (x22 + (x14 + x5))))))))));
4415 (x98 + (x90 + (x83 + (x41 + (x36 + (x30 + (x23 + (x15 + x6))))))))));
4419 (x99 + (x91 + (x46 + (x42 + (x37 + (x31 + (x24 + (x16 + x7))))))))));
4423 (x100 + (x50 + (x47 + (x43 + (x38 + (x32 + (x25 + (x17 + x8))))))))));
4427 (x53 + (x51 + (x48 + (x44 + (x39 + (x33 + (x26 + (x18 + x9))))))))));
4428 x135 = (x123 + x134);
4429 x136 = (x135 >> 23);
4430 x137 = (uint32_t)(x135 & UINT32_C(0x7fffff));
4431 x138 = (x136 + x133);
4432 x139 = (x138 >> 23);
4433 x140 = (uint32_t)(x138 & UINT32_C(0x7fffff));
4434 x141 = (x139 + x132);
4435 x142 = (x141 >> 24);
4436 x143 = (uint32_t)(x141 & UINT32_C(0xffffff));
4437 x144 = (x142 + x131);
4438 x145 = (x144 >> 23);
4439 x146 = (uint32_t)(x144 & UINT32_C(0x7fffff));
4440 x147 = (x145 + x130);
4441 x148 = (x147 >> 23);
4442 x149 = (uint32_t)(x147 & UINT32_C(0x7fffff));
4443 x150 = (x148 + x129);
4444 x151 = (x150 >> 23);
4445 x152 = (uint32_t)(x150 & UINT32_C(0x7fffff));
4446 x153 = (x151 + x128);
4447 x154 = (x153 >> 24);
4448 x155 = (uint32_t)(x153 & UINT32_C(0xffffff));
4449 x156 = (x154 + x127);
4450 x157 = (x156 >> 23);
4451 x158 = (uint32_t)(x156 & UINT32_C(0x7fffff));
4452 x159 = (x157 + x126);
4453 x160 = (x159 >> 23);
4454 x161 = (uint32_t)(x159 & UINT32_C(0x7fffff));
4455 x162 = (x160 + x125);
4456 x163 = (uint32_t)(x162 >> 23);
4457 x164 = (uint32_t)(x162 & UINT32_C(0x7fffff));
4458 x165 = ((uint64_t)UINT16_C(0x269) * x163);
4459 x166 = (x124 + x165);
4460 x167 = (uint32_t)(x166 >> 24);
4461 x168 = (uint32_t)(x166 & UINT32_C(0xffffff));
4462 x169 = (x167 + x137);
4463 x170 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(x169 >> 23);
4464 x171 = (x169 & UINT32_C(0x7fffff));
4465 x172 = (x170 + x140);
4480 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square squares a field element and reduces the result.
4482 * eval out1 mod m = (eval arg1 * eval arg1) mod m
4485 * arg1: [[0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664]]
4487 * out1: [[0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc]]
4489 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(
4490 uint32_t out1[11], const uint32_t arg1[11]) {
4625 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x135;
4628 x1 = ((uint64_t)(arg1[10]) * UINT16_C(0x269));
4630 x3 = ((arg1[10]) * 0x2);
4631 x4 = ((uint64_t)(arg1[9]) * UINT16_C(0x269));
4633 x6 = ((arg1[9]) * 0x2);
4634 x7 = ((uint64_t)(arg1[8]) * UINT16_C(0x269));
4636 x9 = ((arg1[8]) * 0x2);
4637 x10 = ((uint64_t)(arg1[7]) * UINT16_C(0x269));
4639 x12 = ((arg1[7]) * 0x2);
4640 x13 = ((uint64_t)(arg1[6]) * UINT16_C(0x269));
4642 x15 = ((arg1[6]) * 0x2);
4643 x16 = ((arg1[5]) * 0x2);
4644 x17 = ((arg1[4]) * 0x2);
4645 x18 = ((arg1[3]) * 0x2);
4646 x19 = ((arg1[2]) * 0x2);
4647 x20 = ((arg1[1]) * 0x2);
4648 x21 = ((arg1[10]) * x1);
4649 x22 = ((arg1[9]) * x2);
4650 x23 = ((arg1[9]) * (x4 * 0x2));
4651 x24 = ((arg1[8]) * (x2 * 0x2));
4652 x25 = ((arg1[8]) * (x5 * 0x2));
4653 x26 = ((arg1[8]) * (x7 * 0x2));
4654 x27 = ((arg1[7]) * x2);
4655 x28 = ((arg1[7]) * x5);
4656 x29 = ((arg1[7]) * x8);
4657 x30 = ((arg1[7]) * x10);
4658 x31 = ((arg1[6]) * x2);
4659 x32 = ((arg1[6]) * x5);
4660 x33 = ((arg1[6]) * (x8 * 0x2));
4661 x34 = ((arg1[6]) * x11);
4662 x35 = ((arg1[6]) * x13);
4663 x36 = ((arg1[5]) * x2);
4664 x37 = ((arg1[5]) * (x5 * 0x2));
4665 x38 = ((arg1[5]) * (x8 * 0x2));
4666 x39 = ((arg1[5]) * x11);
4667 x40 = ((arg1[5]) * (x14 * 0x2));
4668 x41 = ((uint64_t)(arg1[5]) * ((arg1[5]) * 0x2));
4669 x42 = ((arg1[4]) * (x2 * 0x2));
4670 x43 = ((arg1[4]) * (x5 * 0x2));
4671 x44 = ((arg1[4]) * (x8 * 0x2));
4672 x45 = ((arg1[4]) * (x11 * 0x2));
4673 x46 = ((uint64_t)(arg1[4]) * (x15 * 0x2));
4674 x47 = ((uint64_t)(arg1[4]) * (x16 * 0x2));
4675 x48 = ((uint64_t)(arg1[4]) * ((arg1[4]) * 0x2));
4676 x49 = ((arg1[3]) * x2);
4677 x50 = ((arg1[3]) * x5);
4678 x51 = ((arg1[3]) * (x8 * 0x2));
4679 x52 = ((uint64_t)(arg1[3]) * x12);
4680 x53 = ((uint64_t)(arg1[3]) * x15);
4681 x54 = ((uint64_t)(arg1[3]) * x16);
4682 x55 = ((uint64_t)(arg1[3]) * (x17 * 0x2));
4683 x56 = ((uint64_t)(arg1[3]) * (arg1[3]));
4684 x57 = ((arg1[2]) * x2);
4685 x58 = ((arg1[2]) * (x5 * 0x2));
4686 x59 = ((uint64_t)(arg1[2]) * (x9 * 0x2));
4687 x60 = ((uint64_t)(arg1[2]) * x12);
4688 x61 = ((uint64_t)(arg1[2]) * x15);
4689 x62 = ((uint64_t)(arg1[2]) * (x16 * 0x2));
4690 x63 = ((uint64_t)(arg1[2]) * (x17 * 0x2));
4691 x64 = ((uint64_t)(arg1[2]) * x18);
4692 x65 = ((uint64_t)(arg1[2]) * (arg1[2]));
4693 x66 = ((arg1[1]) * (x2 * 0x2));
4694 x67 = ((uint64_t)(arg1[1]) * (x6 * 0x2));
4695 x68 = ((uint64_t)(arg1[1]) * (x9 * 0x2));
4696 x69 = ((uint64_t)(arg1[1]) * x12);
4697 x70 = ((uint64_t)(arg1[1]) * (x15 * 0x2));
4698 x71 = ((uint64_t)(arg1[1]) * (x16 * 0x2));
4699 x72 = ((uint64_t)(arg1[1]) * (x17 * 0x2));
4700 x73 = ((uint64_t)(arg1[1]) * x18);
4701 x74 = ((uint64_t)(arg1[1]) * (x19 * 0x2));
4702 x75 = ((uint64_t)(arg1[1]) * ((arg1[1]) * 0x2));
4703 x76 = ((uint64_t)(arg1[0]) * x3);
4704 x77 = ((uint64_t)(arg1[0]) * x6);
4705 x78 = ((uint64_t)(arg1[0]) * x9);
4706 x79 = ((uint64_t)(arg1[0]) * x12);
4707 x80 = ((uint64_t)(arg1[0]) * x15);
4708 x81 = ((uint64_t)(arg1[0]) * x16);
4709 x82 = ((uint64_t)(arg1[0]) * x17);
4710 x83 = ((uint64_t)(arg1[0]) * x18);
4711 x84 = ((uint64_t)(arg1[0]) * x19);
4712 x85 = ((uint64_t)(arg1[0]) * x20);
4713 x86 = ((uint64_t)(arg1[0]) * (arg1[0]));
4714 x87 = (x86 + (x66 + (x58 + (x51 + (x45 + x40)))));
4716 x89 = (uint32_t)(x87 & UINT32_C(0xffffff));
4717 x90 = (x76 + (x67 + (x59 + (x52 + (x46 + x41)))));
4718 x91 = (x77 + (x68 + (x60 + (x53 + (x47 + x21)))));
4719 x92 = (x78 + (x69 + (x61 + (x54 + (x48 + x22)))));
4720 x93 = (x79 + (x70 + (x62 + (x55 + (x24 + x23)))));
4721 x94 = (x80 + (x71 + (x63 + (x56 + (x27 + x25)))));
4722 x95 = (x81 + (x72 + (x64 + (x31 + (x28 + x26)))));
4723 x96 = (x82 + (x73 + (x65 + (x36 + (x32 + x29)))));
4724 x97 = (x83 + (x74 + (x42 + (x37 + (x33 + x30)))));
4725 x98 = (x84 + (x75 + (x49 + (x43 + (x38 + x34)))));
4726 x99 = (x85 + (x57 + (x50 + (x44 + (x39 + x35)))));
4728 x101 = (x100 >> 23);
4729 x102 = (uint32_t)(x100 & UINT32_C(0x7fffff));
4730 x103 = (x101 + x98);
4731 x104 = (x103 >> 23);
4732 x105 = (uint32_t)(x103 & UINT32_C(0x7fffff));
4733 x106 = (x104 + x97);
4734 x107 = (x106 >> 24);
4735 x108 = (uint32_t)(x106 & UINT32_C(0xffffff));
4736 x109 = (x107 + x96);
4737 x110 = (x109 >> 23);
4738 x111 = (uint32_t)(x109 & UINT32_C(0x7fffff));
4739 x112 = (x110 + x95);
4740 x113 = (x112 >> 23);
4741 x114 = (uint32_t)(x112 & UINT32_C(0x7fffff));
4742 x115 = (x113 + x94);
4743 x116 = (x115 >> 23);
4744 x117 = (uint32_t)(x115 & UINT32_C(0x7fffff));
4745 x118 = (x116 + x93);
4746 x119 = (x118 >> 24);
4747 x120 = (uint32_t)(x118 & UINT32_C(0xffffff));
4748 x121 = (x119 + x92);
4749 x122 = (x121 >> 23);
4750 x123 = (uint32_t)(x121 & UINT32_C(0x7fffff));
4751 x124 = (x122 + x91);
4752 x125 = (x124 >> 23);
4753 x126 = (uint32_t)(x124 & UINT32_C(0x7fffff));
4754 x127 = (x125 + x90);
4755 x128 = (uint32_t)(x127 >> 23);
4756 x129 = (uint32_t)(x127 & UINT32_C(0x7fffff));
4757 x130 = ((uint64_t)UINT16_C(0x269) * x128);
4758 x131 = (x89 + x130);
4759 x132 = (uint32_t)(x131 >> 24);
4760 x133 = (uint32_t)(x131 & UINT32_C(0xffffff));
4761 x134 = (x132 + x102);
4762 x135 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(x134 >> 23);
4763 x136 = (x134 & UINT32_C(0x7fffff));
4764 x137 = (x135 + x105);
4779 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_carry reduces a field element.
4781 * eval out1 mod m = eval arg1 mod m
4784 * arg1: [[0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664]]
4786 * out1: [[0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc]]
4788 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_carry(
4789 uint32_t out1[11], const uint32_t arg1[11]) {
4815 x2 = ((x1 >> 24) + (arg1[1]));
4816 x3 = ((x2 >> 23) + (arg1[2]));
4817 x4 = ((x3 >> 23) + (arg1[3]));
4818 x5 = ((x4 >> 24) + (arg1[4]));
4819 x6 = ((x5 >> 23) + (arg1[5]));
4820 x7 = ((x6 >> 23) + (arg1[6]));
4821 x8 = ((x7 >> 23) + (arg1[7]));
4822 x9 = ((x8 >> 24) + (arg1[8]));
4823 x10 = ((x9 >> 23) + (arg1[9]));
4824 x11 = ((x10 >> 23) + (arg1[10]));
4825 x12 = ((x1 & UINT32_C(0xffffff)) + (UINT16_C(0x269) * (x11 >> 23)));
4826 x13 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(x12 >> 24) +
4827 (x2 & UINT32_C(0x7fffff)));
4828 x14 = (x12 & UINT32_C(0xffffff));
4829 x15 = (x13 & UINT32_C(0x7fffff));
4830 x16 = ((fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(x13 >> 23) +
4831 (x3 & UINT32_C(0x7fffff)));
4832 x17 = (x4 & UINT32_C(0xffffff));
4833 x18 = (x5 & UINT32_C(0x7fffff));
4834 x19 = (x6 & UINT32_C(0x7fffff));
4835 x20 = (x7 & UINT32_C(0x7fffff));
4836 x21 = (x8 & UINT32_C(0xffffff));
4837 x22 = (x9 & UINT32_C(0x7fffff));
4838 x23 = (x10 & UINT32_C(0x7fffff));
4839 x24 = (x11 & UINT32_C(0x7fffff));
4854 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_add adds two field elements.
4856 * eval out1 mod m = (eval arg1 + eval arg2) mod m
4859 * arg1: [[0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc]]
4860 * arg2: [[0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc]]
4862 * out1: [[0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664]]
4864 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_add(
4865 uint32_t out1[11], const uint32_t arg1[11], const uint32_t arg2[11]) {
4877 x1 = ((arg1[0]) + (arg2[0]));
4878 x2 = ((arg1[1]) + (arg2[1]));
4879 x3 = ((arg1[2]) + (arg2[2]));
4880 x4 = ((arg1[3]) + (arg2[3]));
4881 x5 = ((arg1[4]) + (arg2[4]));
4882 x6 = ((arg1[5]) + (arg2[5]));
4883 x7 = ((arg1[6]) + (arg2[6]));
4884 x8 = ((arg1[7]) + (arg2[7]));
4885 x9 = ((arg1[8]) + (arg2[8]));
4886 x10 = ((arg1[9]) + (arg2[9]));
4887 x11 = ((arg1[10]) + (arg2[10]));
4902 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_sub subtracts two field elements.
4904 * eval out1 mod m = (eval arg1 - eval arg2) mod m
4907 * arg1: [[0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc]]
4908 * arg2: [[0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc]]
4910 * out1: [[0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664]]
4912 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_sub(
4913 uint32_t out1[11], const uint32_t arg1[11], const uint32_t arg2[11]) {
4925 x1 = ((UINT32_C(0x1fffb2e) + (arg1[0])) - (arg2[0]));
4926 x2 = ((UINT32_C(0xfffffe) + (arg1[1])) - (arg2[1]));
4927 x3 = ((UINT32_C(0xfffffe) + (arg1[2])) - (arg2[2]));
4928 x4 = ((UINT32_C(0x1fffffe) + (arg1[3])) - (arg2[3]));
4929 x5 = ((UINT32_C(0xfffffe) + (arg1[4])) - (arg2[4]));
4930 x6 = ((UINT32_C(0xfffffe) + (arg1[5])) - (arg2[5]));
4931 x7 = ((UINT32_C(0xfffffe) + (arg1[6])) - (arg2[6]));
4932 x8 = ((UINT32_C(0x1fffffe) + (arg1[7])) - (arg2[7]));
4933 x9 = ((UINT32_C(0xfffffe) + (arg1[8])) - (arg2[8]));
4934 x10 = ((UINT32_C(0xfffffe) + (arg1[9])) - (arg2[9]));
4935 x11 = ((UINT32_C(0xfffffe) + (arg1[10])) - (arg2[10]));
4950 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_opp negates a field element.
4952 * eval out1 mod m = -eval arg1 mod m
4955 * arg1: [[0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc]]
4957 * out1: [[0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x34ccccb], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664], [0x0 ~> 0x1a66664]]
4959 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(
4960 uint32_t out1[11], const uint32_t arg1[11]) {
4972 x1 = (UINT32_C(0x1fffb2e) - (arg1[0]));
4973 x2 = (UINT32_C(0xfffffe) - (arg1[1]));
4974 x3 = (UINT32_C(0xfffffe) - (arg1[2]));
4975 x4 = (UINT32_C(0x1fffffe) - (arg1[3]));
4976 x5 = (UINT32_C(0xfffffe) - (arg1[4]));
4977 x6 = (UINT32_C(0xfffffe) - (arg1[5]));
4978 x7 = (UINT32_C(0xfffffe) - (arg1[6]));
4979 x8 = (UINT32_C(0x1fffffe) - (arg1[7]));
4980 x9 = (UINT32_C(0xfffffe) - (arg1[8]));
4981 x10 = (UINT32_C(0xfffffe) - (arg1[9]));
4982 x11 = (UINT32_C(0xfffffe) - (arg1[10]));
4997 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz is a multi-limb conditional select.
4999 * eval out1 = (if arg1 = 0 then eval arg2 else eval arg3)
5002 * arg1: [0x0 ~> 0x1]
5003 * arg2: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]]
5004 * arg3: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]]
5006 * out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]]
5008 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(
5009 uint32_t out1[11], fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 arg1,
5010 const uint32_t arg2[11], const uint32_t arg3[11]) {
5022 fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u32(&x1, arg1, (arg2[0]),
5024 fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u32(&x2, arg1, (arg2[1]),
5026 fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u32(&x3, arg1, (arg2[2]),
5028 fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u32(&x4, arg1, (arg2[3]),
5030 fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u32(&x5, arg1, (arg2[4]),
5032 fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u32(&x6, arg1, (arg2[5]),
5034 fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u32(&x7, arg1, (arg2[6]),
5036 fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u32(&x8, arg1, (arg2[7]),
5038 fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u32(&x9, arg1, (arg2[8]),
5040 fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u32(&x10, arg1, (arg2[9]),
5042 fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u32(
5043 &x11, arg1, (arg2[10]), (arg3[10]));
5058 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_to_bytes serializes a field element to bytes in little-endian order.
5060 * out1 = map (λ x, ⌊((eval arg1 mod m) mod 2^(8 * (x + 1))) / 2^(8 * x)⌋) [0..31]
5063 * arg1: [[0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc]]
5065 * 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]]
5067 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_to_bytes(
5068 uint8_t out1[32], const uint32_t arg1[11]) {
5070 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x2;
5072 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x4;
5074 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x6;
5076 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x8;
5078 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x10;
5080 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x12;
5082 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x14;
5084 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x16;
5086 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x18;
5088 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x20;
5090 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x22;
5093 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x25;
5095 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x27;
5097 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x29;
5099 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x31;
5101 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x33;
5103 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x35;
5105 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x37;
5107 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x39;
5109 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x41;
5111 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x43;
5113 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x45;
5186 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x118;
5193 fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u24(
5194 &x1, &x2, 0x0, (arg1[0]), UINT32_C(0xfffd97));
5195 fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u23(
5196 &x3, &x4, x2, (arg1[1]), UINT32_C(0x7fffff));
5197 fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u23(
5198 &x5, &x6, x4, (arg1[2]), UINT32_C(0x7fffff));
5199 fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u24(
5200 &x7, &x8, x6, (arg1[3]), UINT32_C(0xffffff));
5201 fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u23(
5202 &x9, &x10, x8, (arg1[4]), UINT32_C(0x7fffff));
5203 fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u23(
5204 &x11, &x12, x10, (arg1[5]), UINT32_C(0x7fffff));
5205 fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u23(
5206 &x13, &x14, x12, (arg1[6]), UINT32_C(0x7fffff));
5207 fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u24(
5208 &x15, &x16, x14, (arg1[7]), UINT32_C(0xffffff));
5209 fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u23(
5210 &x17, &x18, x16, (arg1[8]), UINT32_C(0x7fffff));
5211 fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u23(
5212 &x19, &x20, x18, (arg1[9]), UINT32_C(0x7fffff));
5213 fiat_id_tc26_gost_3410_2012_256_paramSetA_subborrowx_u23(
5214 &x21, &x22, x20, (arg1[10]), UINT32_C(0x7fffff));
5215 fiat_id_tc26_gost_3410_2012_256_paramSetA_cmovznz_u32(&x23, x22, 0x0,
5216 UINT32_C(0xffffffff));
5217 fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u24(
5218 &x24, &x25, 0x0, x1, (x23 & UINT32_C(0xfffd97)));
5219 fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u23(
5220 &x26, &x27, x25, x3, (x23 & UINT32_C(0x7fffff)));
5221 fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u23(
5222 &x28, &x29, x27, x5, (x23 & UINT32_C(0x7fffff)));
5223 fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u24(
5224 &x30, &x31, x29, x7, (x23 & UINT32_C(0xffffff)));
5225 fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u23(
5226 &x32, &x33, x31, x9, (x23 & UINT32_C(0x7fffff)));
5227 fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u23(
5228 &x34, &x35, x33, x11, (x23 & UINT32_C(0x7fffff)));
5229 fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u23(
5230 &x36, &x37, x35, x13, (x23 & UINT32_C(0x7fffff)));
5231 fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u24(
5232 &x38, &x39, x37, x15, (x23 & UINT32_C(0xffffff)));
5233 fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u23(
5234 &x40, &x41, x39, x17, (x23 & UINT32_C(0x7fffff)));
5235 fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u23(
5236 &x42, &x43, x41, x19, (x23 & UINT32_C(0x7fffff)));
5237 fiat_id_tc26_gost_3410_2012_256_paramSetA_addcarryx_u23(
5238 &x44, &x45, x43, x21, (x23 & UINT32_C(0x7fffff)));
5239 x46 = (x44 * (uint32_t)0x2);
5249 x56 = (uint8_t)(x24 & UINT8_C(0xff));
5250 x57 = (uint8_t)(x55 >> 8);
5251 x58 = (uint8_t)(x55 & UINT8_C(0xff));
5252 x59 = (uint8_t)(x57 & UINT8_C(0xff));
5254 x61 = (uint8_t)(x26 & UINT8_C(0xff));
5255 x62 = (uint8_t)(x60 >> 8);
5256 x63 = (uint8_t)(x60 & UINT8_C(0xff));
5259 x66 = (uint8_t)(x64 & UINT8_C(0xff));
5261 x68 = (uint8_t)(x65 & UINT8_C(0xff));
5262 x69 = (uint8_t)(x67 >> 8);
5263 x70 = (uint8_t)(x67 & UINT8_C(0xff));
5266 x73 = (uint8_t)(x71 & UINT8_C(0xff));
5268 x75 = (uint8_t)(x72 & UINT8_C(0xff));
5269 x76 = (uint8_t)(x74 >> 8);
5270 x77 = (uint8_t)(x74 & UINT8_C(0xff));
5273 x80 = (uint8_t)(x78 & UINT8_C(0xff));
5275 x82 = (uint8_t)(x79 & UINT8_C(0xff));
5276 x83 = (uint8_t)(x81 >> 8);
5277 x84 = (uint8_t)(x81 & UINT8_C(0xff));
5280 x87 = (uint8_t)(x85 & UINT8_C(0xff));
5282 x89 = (uint8_t)(x86 & UINT8_C(0xff));
5283 x90 = (uint8_t)(x88 >> 8);
5284 x91 = (uint8_t)(x88 & UINT8_C(0xff));
5287 x94 = (uint8_t)(x92 & UINT8_C(0xff));
5289 x96 = (uint8_t)(x93 & UINT8_C(0xff));
5290 x97 = (uint8_t)(x95 >> 8);
5291 x98 = (uint8_t)(x95 & UINT8_C(0xff));
5294 x101 = (uint8_t)(x99 & UINT8_C(0xff));
5296 x103 = (uint8_t)(x100 & UINT8_C(0xff));
5297 x104 = (uint8_t)(x102 >> 8);
5298 x105 = (uint8_t)(x102 & UINT8_C(0xff));
5299 x106 = (x104 + x48);
5301 x108 = (uint8_t)(x106 & UINT8_C(0xff));
5303 x110 = (uint8_t)(x107 & UINT8_C(0xff));
5304 x111 = (uint8_t)(x109 >> 8);
5305 x112 = (uint8_t)(x109 & UINT8_C(0xff));
5306 x113 = (x111 + x47);
5308 x115 = (uint8_t)(x113 & UINT8_C(0xff));
5310 x117 = (uint8_t)(x114 & UINT8_C(0xff));
5311 x118 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(x116 >> 8);
5312 x119 = (uint8_t)(x116 & UINT8_C(0xff));
5313 x120 = (x118 + x46);
5315 x122 = (uint8_t)(x120 & UINT8_C(0xff));
5316 x123 = (uint8_t)(x121 >> 8);
5317 x124 = (uint8_t)(x121 & UINT8_C(0xff));
5353 * The function fiat_id_tc26_gost_3410_2012_256_paramSetA_from_bytes deserializes a field element from bytes in little-endian order.
5355 * eval out1 mod m = bytes_eval arg1 mod m
5358 * 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]]
5360 * out1: [[0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x1199999], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc], [0x0 ~> 0x8ccccc]]
5362 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_from_bytes(
5363 uint32_t out1[11], const uint8_t arg1[32]) {
5408 fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1 x45;
5435 x1 = ((uint32_t)(arg1[31]) << 15);
5436 x2 = ((uint32_t)(arg1[30]) << 7);
5437 x3 = ((uint32_t)(arg1[29]) << 22);
5438 x4 = ((uint32_t)(arg1[28]) << 14);
5439 x5 = ((uint32_t)(arg1[27]) << 6);
5440 x6 = ((uint32_t)(arg1[26]) << 21);
5441 x7 = ((uint32_t)(arg1[25]) << 13);
5442 x8 = ((uint32_t)(arg1[24]) << 5);
5443 x9 = ((uint32_t)(arg1[23]) << 21);
5444 x10 = ((uint32_t)(arg1[22]) << 13);
5445 x11 = ((uint32_t)(arg1[21]) << 5);
5446 x12 = ((uint32_t)(arg1[20]) << 20);
5447 x13 = ((uint32_t)(arg1[19]) << 12);
5448 x14 = ((uint32_t)(arg1[18]) << 4);
5449 x15 = ((uint32_t)(arg1[17]) << 19);
5450 x16 = ((uint32_t)(arg1[16]) << 11);
5451 x17 = ((uint32_t)(arg1[15]) << 3);
5452 x18 = ((uint32_t)(arg1[14]) << 18);
5453 x19 = ((uint32_t)(arg1[13]) << 10);
5454 x20 = ((uint32_t)(arg1[12]) << 2);
5455 x21 = ((uint32_t)(arg1[11]) << 18);
5456 x22 = ((uint32_t)(arg1[10]) << 10);
5457 x23 = ((uint32_t)(arg1[9]) << 2);
5458 x24 = ((uint32_t)(arg1[8]) << 17);
5459 x25 = ((uint32_t)(arg1[7]) << 9);
5460 x26 = ((uint32_t)(arg1[6]) * 0x2);
5461 x27 = ((uint32_t)(arg1[5]) << 16);
5462 x28 = ((uint32_t)(arg1[4]) << 8);
5464 x30 = ((uint32_t)(arg1[2]) << 16);
5465 x31 = ((uint32_t)(arg1[1]) << 8);
5467 x33 = (x32 + (x31 + x30));
5468 x34 = (x33 & UINT32_C(0xffffff));
5470 x36 = (x5 + (x4 + x3));
5471 x37 = (x8 + (x7 + x6));
5472 x38 = (x11 + (x10 + x9));
5473 x39 = (x14 + (x13 + x12));
5474 x40 = (x17 + (x16 + x15));
5475 x41 = (x20 + (x19 + x18));
5476 x42 = (x23 + (x22 + x21));
5477 x43 = (x26 + (x25 + x24));
5478 x44 = (x29 + (x28 + x27));
5479 x45 = (fiat_id_tc26_gost_3410_2012_256_paramSetA_uint1)(x44 >> 23);
5480 x46 = (x44 & UINT32_C(0x7fffff));
5482 x48 = (uint8_t)(x47 >> 23);
5483 x49 = (x47 & UINT32_C(0x7fffff));
5485 x51 = (uint8_t)(x50 >> 24);
5486 x52 = (x50 & UINT32_C(0xffffff));
5488 x54 = (uint8_t)(x53 >> 23);
5489 x55 = (x53 & UINT32_C(0x7fffff));
5491 x57 = (uint8_t)(x56 >> 23);
5492 x58 = (x56 & UINT32_C(0x7fffff));
5494 x60 = (uint8_t)(x59 >> 23);
5495 x61 = (x59 & UINT32_C(0x7fffff));
5497 x63 = (uint8_t)(x62 >> 24);
5498 x64 = (x62 & UINT32_C(0xffffff));
5500 x66 = (uint8_t)(x65 >> 23);
5501 x67 = (x65 & UINT32_C(0x7fffff));
5503 x69 = (uint8_t)(x68 >> 23);
5504 x70 = (x68 & UINT32_C(0x7fffff));
5519 /* END verbatim fiat code */
5522 * Finite field inversion via FLT.
5523 * NB: this is not a real Fiat function, just named that way for consistency.
5524 * Autogenerated: ecp/id_tc26_gost_3410_2012_256_paramSetA/fe_inv.op3
5525 * custom repunit addition chain
5527 static void fiat_id_tc26_gost_3410_2012_256_paramSetA_inv(fe_t output,
5530 /* temporary variables */
5531 fe_t acc, t16, t164, t2, t246, t32, t4, t64, t8, t80, t82;
5533 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t1);
5534 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t2, acc, t1);
5535 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t2);
5536 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
5537 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t4, acc, t2);
5538 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t4);
5539 for (i = 0; i < 3; i++)
5540 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
5541 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t8, acc, t4);
5542 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t8);
5543 for (i = 0; i < 7; i++)
5544 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
5545 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t16, acc, t8);
5546 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t16);
5547 for (i = 0; i < 15; i++)
5548 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
5549 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t32, acc, t16);
5550 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t32);
5551 for (i = 0; i < 31; i++)
5552 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
5553 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t64, acc, t32);
5554 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t64);
5555 for (i = 0; i < 15; i++)
5556 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
5557 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t80, acc, t16);
5558 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t80);
5559 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
5560 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t82, acc, t2);
5561 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t82);
5562 for (i = 0; i < 81; i++)
5563 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
5564 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t164, acc, t82);
5565 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t164);
5566 for (i = 0; i < 81; i++)
5567 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
5568 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t246, acc, t82);
5569 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, t246);
5570 for (i = 0; i < 2; i++)
5571 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
5572 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(acc, acc, t2);
5573 for (i = 0; i < 3; i++)
5574 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
5575 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(acc, acc, t1);
5576 for (i = 0; i < 2; i++)
5577 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
5578 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(acc, acc, t1);
5579 for (i = 0; i < 2; i++)
5580 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(acc, acc);
5581 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(output, acc, t1);
5584 /* curve coefficient constants */
5586 static const limb_t const_one[11] = {
5587 UINT32_C(0x00000001), UINT32_C(0x00000000), UINT32_C(0x00000000),
5588 UINT32_C(0x00000000), UINT32_C(0x00000000), UINT32_C(0x00000000),
5589 UINT32_C(0x00000000), UINT32_C(0x00000000), UINT32_C(0x00000000),
5590 UINT32_C(0x00000000), UINT32_C(0x00000000)};
5592 static const limb_t const_d[11] = {
5593 UINT32_C(0x00C7BFFB), UINT32_C(0x00432D6D), UINT32_C(0x006FCA45),
5594 UINT32_C(0x005C026B), UINT32_C(0x0077D8A2), UINT32_C(0x0040995C),
5595 UINT32_C(0x004FAD51), UINT32_C(0x00F17873), UINT32_C(0x007F502A),
5596 UINT32_C(0x002DF060), UINT32_C(0x000302FB)};
5598 static const limb_t const_S[11] = {
5599 UINT32_C(0x008E0ECD), UINT32_C(0x004F34A4), UINT32_C(0x00040D6E),
5600 UINT32_C(0x0068FF65), UINT32_C(0x006209D7), UINT32_C(0x004FD9A8),
5601 UINT32_C(0x000C14AB), UINT32_C(0x0043A1E3), UINT32_C(0x00602BF5),
5602 UINT32_C(0x001483E7), UINT32_C(0x003F3F41)};
5604 static const limb_t const_T[11] = {
5605 UINT32_C(0x00A14AAA), UINT32_C(0x0075DCE7), UINT32_C(0x007D4C60),
5606 UINT32_C(0x0064AB11), UINT32_C(0x0013F970), UINT32_C(0x004AC43A),
5607 UINT32_C(0x004D478D), UINT32_C(0x00D2E968), UINT32_C(0x003FE2B1),
5608 UINT32_C(0x001CFD65), UINT32_C(0x0000807F)};
5610 /* LUT for scalar multiplication by comb interleaving */
5611 static const pt_aff_t lut_cmb[14][16] = {
5613 {{UINT32_C(0x0000000D), UINT32_C(0x00000000), UINT32_C(0x00000000),
5614 UINT32_C(0x00000000), UINT32_C(0x00000000), UINT32_C(0x00000000),
5615 UINT32_C(0x00000000), UINT32_C(0x00000000), UINT32_C(0x00000000),
5616 UINT32_C(0x00000000), UINT32_C(0x00000000)},
5617 {UINT32_C(0x00A300E7), UINT32_C(0x002592DB), UINT32_C(0x0003F256),
5618 UINT32_C(0x001FC8BA), UINT32_C(0x003E36FA), UINT32_C(0x0024E73F),
5619 UINT32_C(0x007AB076), UINT32_C(0x00911871), UINT32_C(0x006B6690),
5620 UINT32_C(0x000CAA91), UINT32_C(0x0030650F)},
5621 {UINT32_C(0x0047155F), UINT32_C(0x00687527), UINT32_C(0x00334E61),
5622 UINT32_C(0x009D3172), UINT32_C(0x0028CAB3), UINT32_C(0x005FBE39),
5623 UINT32_C(0x003AF601), UINT32_C(0x005E3DC9), UINT32_C(0x00743557),
5624 UINT32_C(0x0024A967), UINT32_C(0x007521C4)}},
5625 {{UINT32_C(0x0051134C), UINT32_C(0x0063D934), UINT32_C(0x000994F4),
5626 UINT32_C(0x00E91B07), UINT32_C(0x00439CFD), UINT32_C(0x0055A4D9),
5627 UINT32_C(0x00181579), UINT32_C(0x0089F4E6), UINT32_C(0x005E989F),
5628 UINT32_C(0x002C52EC), UINT32_C(0x0054E159)},
5629 {UINT32_C(0x00DB5791), UINT32_C(0x00525DDC), UINT32_C(0x006F7908),
5630 UINT32_C(0x00AAB332), UINT32_C(0x00279FCD), UINT32_C(0x00522145),
5631 UINT32_C(0x0059CBA7), UINT32_C(0x00B33511), UINT32_C(0x000C6593),
5632 UINT32_C(0x0059CF0A), UINT32_C(0x0016BDEB)},
5633 {UINT32_C(0x00CBC030), UINT32_C(0x00732788), UINT32_C(0x005A0DF8),
5634 UINT32_C(0x00C8799D), UINT32_C(0x0019C571), UINT32_C(0x0007F6EF),
5635 UINT32_C(0x00729208), UINT32_C(0x00D7466B), UINT32_C(0x004ACA39),
5636 UINT32_C(0x0056009D), UINT32_C(0x00586898)}},
5637 {{UINT32_C(0x007058AD), UINT32_C(0x00094E45), UINT32_C(0x00420275),
5638 UINT32_C(0x005FD239), UINT32_C(0x00444F1F), UINT32_C(0x00299CBF),
5639 UINT32_C(0x002C9ADA), UINT32_C(0x00816030), UINT32_C(0x00255119),
5640 UINT32_C(0x0004FD8A), UINT32_C(0x000F011D)},
5641 {UINT32_C(0x00B22BCC), UINT32_C(0x00380EB0), UINT32_C(0x0075817F),
5642 UINT32_C(0x00B68F07), UINT32_C(0x0065DD81), UINT32_C(0x00433816),
5643 UINT32_C(0x005064DD), UINT32_C(0x00DF04CF), UINT32_C(0x000A89F8),
5644 UINT32_C(0x0061BAC3), UINT32_C(0x002AEE30)},
5645 {UINT32_C(0x00831C0C), UINT32_C(0x006D5422), UINT32_C(0x005EFCE9),
5646 UINT32_C(0x004B9CD7), UINT32_C(0x003E61FB), UINT32_C(0x001487DD),
5647 UINT32_C(0x0011779C), UINT32_C(0x0036DFD0), UINT32_C(0x005A0784),
5648 UINT32_C(0x0059323A), UINT32_C(0x002BA6DC)}},
5649 {{UINT32_C(0x00B0B356), UINT32_C(0x0066CD5D), UINT32_C(0x0010AFBC),
5650 UINT32_C(0x00023E69), UINT32_C(0x007B3FA1), UINT32_C(0x003A3F07),
5651 UINT32_C(0x007B8F99), UINT32_C(0x000415F9), UINT32_C(0x0073141E),
5652 UINT32_C(0x00072DB3), UINT32_C(0x007B2887)},
5653 {UINT32_C(0x00EFDCBE), UINT32_C(0x0061FDB8), UINT32_C(0x004A709F),
5654 UINT32_C(0x00849CD0), UINT32_C(0x002A36FC), UINT32_C(0x003BB056),
5655 UINT32_C(0x00356C38), UINT32_C(0x007A9084), UINT32_C(0x000B6422),
5656 UINT32_C(0x00130D7D), UINT32_C(0x001CD6F3)},
5657 {UINT32_C(0x00AA7E64), UINT32_C(0x0012D2BE), UINT32_C(0x0055120E),
5658 UINT32_C(0x00938524), UINT32_C(0x000C79B2), UINT32_C(0x0058FE4B),
5659 UINT32_C(0x00510FB7), UINT32_C(0x00D0F8E2), UINT32_C(0x0063F17F),
5660 UINT32_C(0x002D4711), UINT32_C(0x002725A4)}},
5661 {{UINT32_C(0x004C6781), UINT32_C(0x00627F87), UINT32_C(0x00489AA7),
5662 UINT32_C(0x002F770F), UINT32_C(0x000D2620), UINT32_C(0x001E8468),
5663 UINT32_C(0x003F6D7E), UINT32_C(0x00C5511D), UINT32_C(0x006CDB93),
5664 UINT32_C(0x006842D1), UINT32_C(0x004D7CF0)},
5665 {UINT32_C(0x00D1AE96), UINT32_C(0x0000090D), UINT32_C(0x0006C4DB),
5666 UINT32_C(0x00CE5C55), UINT32_C(0x00144E90), UINT32_C(0x004BED80),
5667 UINT32_C(0x004E53B7), UINT32_C(0x001FE39D), UINT32_C(0x0042F35D),
5668 UINT32_C(0x004AEB11), UINT32_C(0x005F6DBA)},
5669 {UINT32_C(0x00499A0E), UINT32_C(0x007885A2), UINT32_C(0x00030BDC),
5670 UINT32_C(0x001EDFDB), UINT32_C(0x00438B15), UINT32_C(0x0072B2EE),
5671 UINT32_C(0x004AC01E), UINT32_C(0x003EC678), UINT32_C(0x005F2133),
5672 UINT32_C(0x0011BD06), UINT32_C(0x002EA8E4)}},
5673 {{UINT32_C(0x00226F30), UINT32_C(0x005E7B60), UINT32_C(0x0009837F),
5674 UINT32_C(0x00851533), UINT32_C(0x0006EFB9), UINT32_C(0x00130938),
5675 UINT32_C(0x001063CE), UINT32_C(0x0019C098), UINT32_C(0x00605AC6),
5676 UINT32_C(0x004D2A8D), UINT32_C(0x00240305)},
5677 {UINT32_C(0x006AE25F), UINT32_C(0x000EF2E0), UINT32_C(0x001F427E),
5678 UINT32_C(0x00CD4540), UINT32_C(0x003C6996), UINT32_C(0x0035E452),
5679 UINT32_C(0x005A6442), UINT32_C(0x007BC7A6), UINT32_C(0x003D0529),
5680 UINT32_C(0x0021E8F3), UINT32_C(0x0052A46E)},
5681 {UINT32_C(0x007F4E9D), UINT32_C(0x000ECC55), UINT32_C(0x0037EE5A),
5682 UINT32_C(0x004ADDB7), UINT32_C(0x004DA3F4), UINT32_C(0x005764C9),
5683 UINT32_C(0x001C40F1), UINT32_C(0x00C1111E), UINT32_C(0x000B0764),
5684 UINT32_C(0x007DD2E6), UINT32_C(0x001388A4)}},
5685 {{UINT32_C(0x0095A16C), UINT32_C(0x0008DD08), UINT32_C(0x005FC5C5),
5686 UINT32_C(0x0081C743), UINT32_C(0x0000D180), UINT32_C(0x000F8EE9),
5687 UINT32_C(0x0003FEF5), UINT32_C(0x00CF52AF), UINT32_C(0x007E4EDC),
5688 UINT32_C(0x0052DFAC), UINT32_C(0x0057C4FB)},
5689 {UINT32_C(0x00E2B732), UINT32_C(0x005BEBA4), UINT32_C(0x001D1662),
5690 UINT32_C(0x00FE39C5), UINT32_C(0x0058807D), UINT32_C(0x004BBC55),
5691 UINT32_C(0x0020454A), UINT32_C(0x00A84E47), UINT32_C(0x0034B9B8),
5692 UINT32_C(0x004B9BC7), UINT32_C(0x00362B2B)},
5693 {UINT32_C(0x00D51136), UINT32_C(0x0005D2D8), UINT32_C(0x000FECF5),
5694 UINT32_C(0x0088AA07), UINT32_C(0x004BB57C), UINT32_C(0x003A4AD1),
5695 UINT32_C(0x001B78C1), UINT32_C(0x00162747), UINT32_C(0x002DBFA9),
5696 UINT32_C(0x0017B251), UINT32_C(0x00431084)}},
5697 {{UINT32_C(0x003DC33C), UINT32_C(0x00238321), UINT32_C(0x002858CB),
5698 UINT32_C(0x006E05B3), UINT32_C(0x000F55FA), UINT32_C(0x002BA1C2),
5699 UINT32_C(0x007BBFD4), UINT32_C(0x00A06A51), UINT32_C(0x003672AF),
5700 UINT32_C(0x001A9B5B), UINT32_C(0x004F6D26)},
5701 {UINT32_C(0x009F55A3), UINT32_C(0x000F6705), UINT32_C(0x004EDA64),
5702 UINT32_C(0x00D8FBA8), UINT32_C(0x006E341D), UINT32_C(0x005FDC16),
5703 UINT32_C(0x003F8CD0), UINT32_C(0x0031F5C1), UINT32_C(0x002ECA27),
5704 UINT32_C(0x006E2E8E), UINT32_C(0x007650A0)},
5705 {UINT32_C(0x004C828B), UINT32_C(0x004D65DD), UINT32_C(0x0023D49F),
5706 UINT32_C(0x00998DDA), UINT32_C(0x004E0332), UINT32_C(0x00174414),
5707 UINT32_C(0x00699E65), UINT32_C(0x008F8323), UINT32_C(0x002B8901),
5708 UINT32_C(0x0012C259), UINT32_C(0x0021CFF4)}},
5709 {{UINT32_C(0x00922362), UINT32_C(0x0048A92F), UINT32_C(0x004D734D),
5710 UINT32_C(0x00C47EE4), UINT32_C(0x00113110), UINT32_C(0x00157C19),
5711 UINT32_C(0x00221251), UINT32_C(0x00024872), UINT32_C(0x001E2816),
5712 UINT32_C(0x003DF03D), UINT32_C(0x00181B9C)},
5713 {UINT32_C(0x00012FCF), UINT32_C(0x0047EB3F), UINT32_C(0x006C2B35),
5714 UINT32_C(0x00F85359), UINT32_C(0x0032819B), UINT32_C(0x004E64B2),
5715 UINT32_C(0x00600748), UINT32_C(0x00944305), UINT32_C(0x001ED335),
5716 UINT32_C(0x005DCD46), UINT32_C(0x004FA013)},
5717 {UINT32_C(0x003393AB), UINT32_C(0x002D18CD), UINT32_C(0x002579E1),
5718 UINT32_C(0x0079F6D2), UINT32_C(0x00032785), UINT32_C(0x00679042),
5719 UINT32_C(0x003532E2), UINT32_C(0x00E10DCE), UINT32_C(0x00480E01),
5720 UINT32_C(0x00426205), UINT32_C(0x0053FD4D)}},
5721 {{UINT32_C(0x00C6B0CB), UINT32_C(0x007C89A2), UINT32_C(0x0078D667),
5722 UINT32_C(0x00FF9964), UINT32_C(0x006EE83C), UINT32_C(0x006E7BF5),
5723 UINT32_C(0x007599F3), UINT32_C(0x004D669F), UINT32_C(0x0065012B),
5724 UINT32_C(0x005EBA50), UINT32_C(0x00304E71)},
5725 {UINT32_C(0x00C53736), UINT32_C(0x000B3E67), UINT32_C(0x00126BEE),
5726 UINT32_C(0x00261DF0), UINT32_C(0x005AF18B), UINT32_C(0x005B38F7),
5727 UINT32_C(0x000082AC), UINT32_C(0x0017B3DB), UINT32_C(0x007C32BA),
5728 UINT32_C(0x00724F37), UINT32_C(0x001F8FD1)},
5729 {UINT32_C(0x0080CCBF), UINT32_C(0x0018D8B8), UINT32_C(0x006E22B9),
5730 UINT32_C(0x00591C57), UINT32_C(0x0011E0B1), UINT32_C(0x0079970A),
5731 UINT32_C(0x0070D898), UINT32_C(0x00D9733F), UINT32_C(0x00259708),
5732 UINT32_C(0x0062101F), UINT32_C(0x00306235)}},
5733 {{UINT32_C(0x002F49E9), UINT32_C(0x006E57BC), UINT32_C(0x00094045),
5734 UINT32_C(0x00CF8C2B), UINT32_C(0x0010A5CA), UINT32_C(0x00478E10),
5735 UINT32_C(0x000A83ED), UINT32_C(0x00EB329A), UINT32_C(0x0054EE99),
5736 UINT32_C(0x00112D75), UINT32_C(0x001A7633)},
5737 {UINT32_C(0x00762A44), UINT32_C(0x007F7B5B), UINT32_C(0x006BF456),
5738 UINT32_C(0x00680D50), UINT32_C(0x00734ECC), UINT32_C(0x00770776),
5739 UINT32_C(0x0041B3F1), UINT32_C(0x00DB7326), UINT32_C(0x007A5C18),
5740 UINT32_C(0x0009A04C), UINT32_C(0x006F2281)},
5741 {UINT32_C(0x00392E55), UINT32_C(0x00180EF7), UINT32_C(0x00539457),
5742 UINT32_C(0x0027985E), UINT32_C(0x0030AE2E), UINT32_C(0x0006A2FA),
5743 UINT32_C(0x0075FD5D), UINT32_C(0x0023429D), UINT32_C(0x0041CD65),
5744 UINT32_C(0x00710776), UINT32_C(0x0075B4D3)}},
5745 {{UINT32_C(0x00297799), UINT32_C(0x0050EDAC), UINT32_C(0x0017E4E4),
5746 UINT32_C(0x00B06306), UINT32_C(0x0011957C), UINT32_C(0x00454CDB),
5747 UINT32_C(0x0037CE52), UINT32_C(0x0035EF58), UINT32_C(0x003AACF3),
5748 UINT32_C(0x006B04D4), UINT32_C(0x001DEEDA)},
5749 {UINT32_C(0x0058DEDB), UINT32_C(0x0055E31C), UINT32_C(0x000564F2),
5750 UINT32_C(0x00767021), UINT32_C(0x000AA59A), UINT32_C(0x005E4355),
5751 UINT32_C(0x0076B6F5), UINT32_C(0x00E2300C), UINT32_C(0x0065F80C),
5752 UINT32_C(0x004E48E3), UINT32_C(0x00471F50)},
5753 {UINT32_C(0x0057B4C9), UINT32_C(0x0032102C), UINT32_C(0x004F162E),
5754 UINT32_C(0x00AA70A0), UINT32_C(0x00601FA8), UINT32_C(0x001946ED),
5755 UINT32_C(0x007F5192), UINT32_C(0x009CBF3B), UINT32_C(0x0071AED7),
5756 UINT32_C(0x000BA7C1), UINT32_C(0x00663BBD)}},
5757 {{UINT32_C(0x00FC042F), UINT32_C(0x00129354), UINT32_C(0x001AC8F7),
5758 UINT32_C(0x00124BB3), UINT32_C(0x007DE447), UINT32_C(0x0007CA46),
5759 UINT32_C(0x005604BA), UINT32_C(0x00981600), UINT32_C(0x0014DA63),
5760 UINT32_C(0x0005067B), UINT32_C(0x0053AE1A)},
5761 {UINT32_C(0x009BC0FD), UINT32_C(0x006F8B2C), UINT32_C(0x006AE987),
5762 UINT32_C(0x0031F283), UINT32_C(0x0001800B), UINT32_C(0x00596A47),
5763 UINT32_C(0x0067F6A5), UINT32_C(0x00512023), UINT32_C(0x0015BA88),
5764 UINT32_C(0x0012951C), UINT32_C(0x000C64FA)},
5765 {UINT32_C(0x00ED7C65), UINT32_C(0x0008BD59), UINT32_C(0x00636115),
5766 UINT32_C(0x0076BA73), UINT32_C(0x007F05EB), UINT32_C(0x0003E701),
5767 UINT32_C(0x00148CDD), UINT32_C(0x008B64AA), UINT32_C(0x00373C6D),
5768 UINT32_C(0x00516A1E), UINT32_C(0x00056623)}},
5769 {{UINT32_C(0x000D0BB7), UINT32_C(0x007E8A54), UINT32_C(0x007474B6),
5770 UINT32_C(0x003D4755), UINT32_C(0x0026CD61), UINT32_C(0x0048139E),
5771 UINT32_C(0x005E0EC7), UINT32_C(0x00169B5D), UINT32_C(0x0042855A),
5772 UINT32_C(0x00729E2F), UINT32_C(0x001F1939)},
5773 {UINT32_C(0x00EDF74C), UINT32_C(0x00736130), UINT32_C(0x007835CD),
5774 UINT32_C(0x0021FE28), UINT32_C(0x0051653E), UINT32_C(0x00690BC6),
5775 UINT32_C(0x0070143D), UINT32_C(0x0011B7F6), UINT32_C(0x002ECF93),
5776 UINT32_C(0x00332D5B), UINT32_C(0x004E7E15)},
5777 {UINT32_C(0x0061C3BC), UINT32_C(0x006F0A58), UINT32_C(0x002A9437),
5778 UINT32_C(0x00273621), UINT32_C(0x004D6870), UINT32_C(0x004A0410),
5779 UINT32_C(0x001930EC), UINT32_C(0x00473AEA), UINT32_C(0x00345B94),
5780 UINT32_C(0x000D2F6F), UINT32_C(0x00630991)}},
5781 {{UINT32_C(0x0064F095), UINT32_C(0x005B811B), UINT32_C(0x0034F150),
5782 UINT32_C(0x0037FBC3), UINT32_C(0x00431976), UINT32_C(0x001AF585),
5783 UINT32_C(0x004A47D6), UINT32_C(0x00364593), UINT32_C(0x00265D55),
5784 UINT32_C(0x006955EC), UINT32_C(0x004B56E9)},
5785 {UINT32_C(0x00D4D3BA), UINT32_C(0x003E639C), UINT32_C(0x007B6508),
5786 UINT32_C(0x007AAFAA), UINT32_C(0x002DEDD3), UINT32_C(0x006E90FB),
5787 UINT32_C(0x0070FF1F), UINT32_C(0x005BD7F8), UINT32_C(0x0015D774),
5788 UINT32_C(0x004E9774), UINT32_C(0x003F53F7)},
5789 {UINT32_C(0x004F4AA5), UINT32_C(0x0024432D), UINT32_C(0x002D31BA),
5790 UINT32_C(0x005F3C7B), UINT32_C(0x00221DE3), UINT32_C(0x00691A3B),
5791 UINT32_C(0x0067E7F8), UINT32_C(0x00B606C6), UINT32_C(0x005200E8),
5792 UINT32_C(0x00708B99), UINT32_C(0x002F258F)}},
5793 {{UINT32_C(0x003A119F), UINT32_C(0x00319D59), UINT32_C(0x0071DF1F),
5794 UINT32_C(0x00EE723B), UINT32_C(0x004A075C), UINT32_C(0x0000C0BD),
5795 UINT32_C(0x00381ECA), UINT32_C(0x009EC137), UINT32_C(0x0014C177),
5796 UINT32_C(0x0062C87B), UINT32_C(0x003F7471)},
5797 {UINT32_C(0x00AA3C6C), UINT32_C(0x0019B06D), UINT32_C(0x003A8845),
5798 UINT32_C(0x001B9E7B), UINT32_C(0x004749DD), UINT32_C(0x0067A317),
5799 UINT32_C(0x00555D63), UINT32_C(0x0087596C), UINT32_C(0x004BF763),
5800 UINT32_C(0x005DCF2F), UINT32_C(0x00725068)},
5801 {UINT32_C(0x005A930B), UINT32_C(0x003C325E), UINT32_C(0x00528AC5),
5802 UINT32_C(0x00FD1B98), UINT32_C(0x004BA241), UINT32_C(0x0041EDCF),
5803 UINT32_C(0x00587205), UINT32_C(0x00EDF302), UINT32_C(0x001C093C),
5804 UINT32_C(0x0062B2BF), UINT32_C(0x00225709)}},
5807 {{UINT32_C(0x00EABA3B), UINT32_C(0x00192B0C), UINT32_C(0x006A78E0),
5808 UINT32_C(0x001251C4), UINT32_C(0x0032CA32), UINT32_C(0x0055DC60),
5809 UINT32_C(0x005BBC99), UINT32_C(0x00F53480), UINT32_C(0x004CA164),
5810 UINT32_C(0x0032C336), UINT32_C(0x004567E0)},
5811 {UINT32_C(0x009B52D6), UINT32_C(0x006B6695), UINT32_C(0x0011E7D6),
5812 UINT32_C(0x002112B7), UINT32_C(0x007F870C), UINT32_C(0x002F5D93),
5813 UINT32_C(0x002B31C0), UINT32_C(0x000D401F), UINT32_C(0x0004B6C8),
5814 UINT32_C(0x0023BEE0), UINT32_C(0x00086B9A)},
5815 {UINT32_C(0x001E8B93), UINT32_C(0x00336732), UINT32_C(0x00435024),
5816 UINT32_C(0x00A9D624), UINT32_C(0x007896CB), UINT32_C(0x00086124),
5817 UINT32_C(0x001F6441), UINT32_C(0x00C216CD), UINT32_C(0x0045B1DA),
5818 UINT32_C(0x0040884B), UINT32_C(0x0015A99D)}},
5819 {{UINT32_C(0x00E29666), UINT32_C(0x0000698C), UINT32_C(0x00008566),
5820 UINT32_C(0x00B29855), UINT32_C(0x0069993B), UINT32_C(0x0066533E),
5821 UINT32_C(0x00130B35), UINT32_C(0x00112187), UINT32_C(0x0066567A),
5822 UINT32_C(0x006C6930), UINT32_C(0x00025F72)},
5823 {UINT32_C(0x00BC36F8), UINT32_C(0x0075E071), UINT32_C(0x003F18EC),
5824 UINT32_C(0x00FE4134), UINT32_C(0x0007BF37), UINT32_C(0x0015265C),
5825 UINT32_C(0x002D5EA8), UINT32_C(0x00932F6F), UINT32_C(0x0001004C),
5826 UINT32_C(0x0028FBB8), UINT32_C(0x003CC88B)},
5827 {UINT32_C(0x0025E5B3), UINT32_C(0x0052FCAA), UINT32_C(0x0072522F),
5828 UINT32_C(0x0075B891), UINT32_C(0x0071F699), UINT32_C(0x0051F116),
5829 UINT32_C(0x0078808A), UINT32_C(0x006A580C), UINT32_C(0x000BDDA3),
5830 UINT32_C(0x004CB31A), UINT32_C(0x0056F6CD)}},
5831 {{UINT32_C(0x001AF846), UINT32_C(0x0016456F), UINT32_C(0x006CDB6E),
5832 UINT32_C(0x0019B43D), UINT32_C(0x001BD7BB), UINT32_C(0x001E429F),
5833 UINT32_C(0x0025E351), UINT32_C(0x002C034F), UINT32_C(0x0053ECFF),
5834 UINT32_C(0x002645D7), UINT32_C(0x006F455E)},
5835 {UINT32_C(0x00161A5B), UINT32_C(0x005E3D52), UINT32_C(0x006167A5),
5836 UINT32_C(0x008BBC48), UINT32_C(0x0029C44C), UINT32_C(0x0009A976),
5837 UINT32_C(0x0038C321), UINT32_C(0x00390F40), UINT32_C(0x004A7861),
5838 UINT32_C(0x0027E8A3), UINT32_C(0x0055430C)},
5839 {UINT32_C(0x0022B34E), UINT32_C(0x003FE536), UINT32_C(0x006D6BDE),
5840 UINT32_C(0x0038DF8B), UINT32_C(0x007C2700), UINT32_C(0x00413296),
5841 UINT32_C(0x000C3C34), UINT32_C(0x000F4A8B), UINT32_C(0x002223E1),
5842 UINT32_C(0x0002B3C2), UINT32_C(0x0030E676)}},
5843 {{UINT32_C(0x0084B729), UINT32_C(0x00726FC5), UINT32_C(0x00414876),
5844 UINT32_C(0x003546F3), UINT32_C(0x00261905), UINT32_C(0x005A04F6),
5845 UINT32_C(0x0055B0C7), UINT32_C(0x006B360B), UINT32_C(0x0012052B),
5846 UINT32_C(0x002B0046), UINT32_C(0x003D984C)},
5847 {UINT32_C(0x00CBED46), UINT32_C(0x0032683A), UINT32_C(0x004B3ADD),
5848 UINT32_C(0x00B2CD41), UINT32_C(0x0014EF94), UINT32_C(0x0050E0BF),
5849 UINT32_C(0x003FC9B1), UINT32_C(0x002F30DC), UINT32_C(0x00297AE9),
5850 UINT32_C(0x007BCD89), UINT32_C(0x000B4620)},
5851 {UINT32_C(0x0030B5B8), UINT32_C(0x0067A579), UINT32_C(0x006EDA23),
5852 UINT32_C(0x0094FB0A), UINT32_C(0x00661BCD), UINT32_C(0x0040BF82),
5853 UINT32_C(0x0058F099), UINT32_C(0x0072BB0F), UINT32_C(0x00485362),
5854 UINT32_C(0x00539664), UINT32_C(0x006ADF86)}},
5855 {{UINT32_C(0x0024FDD7), UINT32_C(0x001186A8), UINT32_C(0x004EA183),
5856 UINT32_C(0x00493DFC), UINT32_C(0x004F4E46), UINT32_C(0x0050110D),
5857 UINT32_C(0x003294D6), UINT32_C(0x00C5CEF6), UINT32_C(0x0053F4A9),
5858 UINT32_C(0x006A41F0), UINT32_C(0x00280D45)},
5859 {UINT32_C(0x0025DCB5), UINT32_C(0x00352AB2), UINT32_C(0x003C9B57),
5860 UINT32_C(0x00C5972C), UINT32_C(0x0017C8A2), UINT32_C(0x0026C17F),
5861 UINT32_C(0x004A2DE0), UINT32_C(0x00962319), UINT32_C(0x001DC0E8),
5862 UINT32_C(0x007BB781), UINT32_C(0x0076D0B0)},
5863 {UINT32_C(0x00C25C01), UINT32_C(0x006DF306), UINT32_C(0x002E001F),
5864 UINT32_C(0x00B2D044), UINT32_C(0x001C46FF), UINT32_C(0x0028D794),
5865 UINT32_C(0x004CD7EB), UINT32_C(0x00B2D81B), UINT32_C(0x00719BF6),
5866 UINT32_C(0x005D73E6), UINT32_C(0x000574EC)}},
5867 {{UINT32_C(0x00ED0D33), UINT32_C(0x005B58E6), UINT32_C(0x0031614D),
5868 UINT32_C(0x00C647FC), UINT32_C(0x003D23AC), UINT32_C(0x006C18FD),
5869 UINT32_C(0x006B9F51), UINT32_C(0x00BD620E), UINT32_C(0x000E3630),
5870 UINT32_C(0x002C338B), UINT32_C(0x0055B898)},
5871 {UINT32_C(0x00609F49), UINT32_C(0x006332D0), UINT32_C(0x0032177F),
5872 UINT32_C(0x008ADB01), UINT32_C(0x0003C6A7), UINT32_C(0x0020EA0A),
5873 UINT32_C(0x005D93D8), UINT32_C(0x0053348A), UINT32_C(0x00511FAA),
5874 UINT32_C(0x00125BD7), UINT32_C(0x001F9B23)},
5875 {UINT32_C(0x007C7FE4), UINT32_C(0x0028B2B1), UINT32_C(0x007487D6),
5876 UINT32_C(0x0000D5FE), UINT32_C(0x007DEF82), UINT32_C(0x0016E07E),
5877 UINT32_C(0x0026B0AE), UINT32_C(0x003853C8), UINT32_C(0x002DCAA1),
5878 UINT32_C(0x00685027), UINT32_C(0x001A2F47)}},
5879 {{UINT32_C(0x00986197), UINT32_C(0x00217581), UINT32_C(0x00011B57),
5880 UINT32_C(0x001C3CC0), UINT32_C(0x0048D2D2), UINT32_C(0x000C0332),
5881 UINT32_C(0x002D89E5), UINT32_C(0x003490A4), UINT32_C(0x003458B1),
5882 UINT32_C(0x002B04FA), UINT32_C(0x003F7CF9)},
5883 {UINT32_C(0x004F002F), UINT32_C(0x002E83E7), UINT32_C(0x00629717),
5884 UINT32_C(0x0010444B), UINT32_C(0x005323A6), UINT32_C(0x003BF8D6),
5885 UINT32_C(0x002CFC62), UINT32_C(0x004F6988), UINT32_C(0x007305E7),
5886 UINT32_C(0x007EC041), UINT32_C(0x00754449)},
5887 {UINT32_C(0x00B16E11), UINT32_C(0x007607F5), UINT32_C(0x001923D5),
5888 UINT32_C(0x00E8AE2B), UINT32_C(0x006722D4), UINT32_C(0x0076783B),
5889 UINT32_C(0x0037C778), UINT32_C(0x007F8754), UINT32_C(0x00422A0E),
5890 UINT32_C(0x003D9F97), UINT32_C(0x0016AEAE)}},
5891 {{UINT32_C(0x00D81066), UINT32_C(0x0050C351), UINT32_C(0x00716769),
5892 UINT32_C(0x006393E3), UINT32_C(0x001B4C15), UINT32_C(0x004B9A55),
5893 UINT32_C(0x00588B55), UINT32_C(0x002BA83B), UINT32_C(0x00009915),
5894 UINT32_C(0x005C055C), UINT32_C(0x00048180)},
5895 {UINT32_C(0x00CB303A), UINT32_C(0x00458BFF), UINT32_C(0x00237470),
5896 UINT32_C(0x00D66822), UINT32_C(0x0009DE8B), UINT32_C(0x005B28C2),
5897 UINT32_C(0x0068CAFE), UINT32_C(0x002F5A98), UINT32_C(0x004C4B2A),
5898 UINT32_C(0x0031DE00), UINT32_C(0x006E5755)},
5899 {UINT32_C(0x008869E8), UINT32_C(0x001F33B0), UINT32_C(0x001A2BAA),
5900 UINT32_C(0x00817706), UINT32_C(0x00458C99), UINT32_C(0x00302337),
5901 UINT32_C(0x0039EAE5), UINT32_C(0x00D2E45D), UINT32_C(0x0073447F),
5902 UINT32_C(0x0024825C), UINT32_C(0x001B5E98)}},
5903 {{UINT32_C(0x00814972), UINT32_C(0x0038B443), UINT32_C(0x0041992D),
5904 UINT32_C(0x00EE69DB), UINT32_C(0x00146157), UINT32_C(0x000AAAD8),
5905 UINT32_C(0x005444E7), UINT32_C(0x00D17AB8), UINT32_C(0x004DF7C1),
5906 UINT32_C(0x004D27A8), UINT32_C(0x0054D67D)},
5907 {UINT32_C(0x000A587F), UINT32_C(0x003ECDA4), UINT32_C(0x002CA0AF),
5908 UINT32_C(0x008438DD), UINT32_C(0x00634B99), UINT32_C(0x003B5F19),
5909 UINT32_C(0x006A333D), UINT32_C(0x001B944F), UINT32_C(0x007E2E1F),
5910 UINT32_C(0x005C5F8A), UINT32_C(0x003EE1DE)},
5911 {UINT32_C(0x001A8276), UINT32_C(0x006DA949), UINT32_C(0x003ABE66),
5912 UINT32_C(0x00EE9FD1), UINT32_C(0x004B05FC), UINT32_C(0x005E0261),
5913 UINT32_C(0x007EAA48), UINT32_C(0x0010DD5B), UINT32_C(0x007CBE95),
5914 UINT32_C(0x00118A02), UINT32_C(0x0002173C)}},
5915 {{UINT32_C(0x003407C2), UINT32_C(0x003DB992), UINT32_C(0x001F1A9E),
5916 UINT32_C(0x00D5B577), UINT32_C(0x005468D1), UINT32_C(0x001331F0),
5917 UINT32_C(0x00760900), UINT32_C(0x00412C7B), UINT32_C(0x007D99FF),
5918 UINT32_C(0x003F157E), UINT32_C(0x0022BB7C)},
5919 {UINT32_C(0x008CE31C), UINT32_C(0x007405EE), UINT32_C(0x004669C1),
5920 UINT32_C(0x00B64348), UINT32_C(0x002A823A), UINT32_C(0x0028F130),
5921 UINT32_C(0x006999E9), UINT32_C(0x006697A5), UINT32_C(0x00546104),
5922 UINT32_C(0x0028A64D), UINT32_C(0x00531D1A)},
5923 {UINT32_C(0x009C76D2), UINT32_C(0x0079F19D), UINT32_C(0x000872F3),
5924 UINT32_C(0x00F799B3), UINT32_C(0x00407743), UINT32_C(0x003085E0),
5925 UINT32_C(0x002003F0), UINT32_C(0x00396CB7), UINT32_C(0x002952AF),
5926 UINT32_C(0x002D59FD), UINT32_C(0x003C184A)}},
5927 {{UINT32_C(0x00E10FCD), UINT32_C(0x00563D94), UINT32_C(0x0036A862),
5928 UINT32_C(0x00A8D743), UINT32_C(0x001FAEBC), UINT32_C(0x005A3817),
5929 UINT32_C(0x0061B73B), UINT32_C(0x00FE0A6A), UINT32_C(0x00113AE2),
5930 UINT32_C(0x0079A419), UINT32_C(0x00433EC2)},
5931 {UINT32_C(0x0094DA0B), UINT32_C(0x0053D54C), UINT32_C(0x005DC3C9),
5932 UINT32_C(0x00377F6C), UINT32_C(0x007601E5), UINT32_C(0x0054F416),
5933 UINT32_C(0x00147411), UINT32_C(0x0033E49D), UINT32_C(0x001316C3),
5934 UINT32_C(0x002D4674), UINT32_C(0x004DADCA)},
5935 {UINT32_C(0x00A27A08), UINT32_C(0x00150DCB), UINT32_C(0x00757D31),
5936 UINT32_C(0x00ECF538), UINT32_C(0x00662566), UINT32_C(0x00306294),
5937 UINT32_C(0x00601C11), UINT32_C(0x0035FECB), UINT32_C(0x00452259),
5938 UINT32_C(0x001C2D33), UINT32_C(0x0021363F)}},
5939 {{UINT32_C(0x00C03231), UINT32_C(0x0054A03F), UINT32_C(0x00530E31),
5940 UINT32_C(0x008A8654), UINT32_C(0x00445A8F), UINT32_C(0x0057E307),
5941 UINT32_C(0x0017BF37), UINT32_C(0x00015A04), UINT32_C(0x0002B01C),
5942 UINT32_C(0x001FB35F), UINT32_C(0x003FFA73)},
5943 {UINT32_C(0x002C08E7), UINT32_C(0x0040D81C), UINT32_C(0x00622B99),
5944 UINT32_C(0x0048FF13), UINT32_C(0x00665063), UINT32_C(0x004518AF),
5945 UINT32_C(0x003AC182), UINT32_C(0x00A28FD4), UINT32_C(0x002A6DAE),
5946 UINT32_C(0x001B6DBD), UINT32_C(0x0010ACD4)},
5947 {UINT32_C(0x0058C718), UINT32_C(0x0016FC28), UINT32_C(0x0041E2C6),
5948 UINT32_C(0x0052886B), UINT32_C(0x007FDE72), UINT32_C(0x00289521),
5949 UINT32_C(0x00173FE6), UINT32_C(0x0072E6CC), UINT32_C(0x0017AC30),
5950 UINT32_C(0x0040A8E1), UINT32_C(0x005097BC)}},
5951 {{UINT32_C(0x005B9B1D), UINT32_C(0x0050D0A3), UINT32_C(0x002DFE1B),
5952 UINT32_C(0x00EAA92D), UINT32_C(0x00277DA6), UINT32_C(0x00622641),
5953 UINT32_C(0x0037663B), UINT32_C(0x004FD085), UINT32_C(0x000C17EE),
5954 UINT32_C(0x006A97AF), UINT32_C(0x007A47AF)},
5955 {UINT32_C(0x006BE9BF), UINT32_C(0x003285C2), UINT32_C(0x0065C35C),
5956 UINT32_C(0x009C1C74), UINT32_C(0x005F5ECE), UINT32_C(0x0059AF30),
5957 UINT32_C(0x002A2EA6), UINT32_C(0x0053A7C7), UINT32_C(0x003A42C4),
5958 UINT32_C(0x007E6E33), UINT32_C(0x0067F167)},
5959 {UINT32_C(0x002379C4), UINT32_C(0x00784A42), UINT32_C(0x00260570),
5960 UINT32_C(0x00C001B9), UINT32_C(0x007733D1), UINT32_C(0x002610F4),
5961 UINT32_C(0x0076810F), UINT32_C(0x0093A496), UINT32_C(0x001DEA0A),
5962 UINT32_C(0x002CA003), UINT32_C(0x006326EC)}},
5963 {{UINT32_C(0x00BB2391), UINT32_C(0x00743284), UINT32_C(0x002E155F),
5964 UINT32_C(0x0035639B), UINT32_C(0x005BBF4F), UINT32_C(0x003E90B9),
5965 UINT32_C(0x00767573), UINT32_C(0x00321363), UINT32_C(0x00254580),
5966 UINT32_C(0x0029D549), UINT32_C(0x0052B4EB)},
5967 {UINT32_C(0x00C1B9A5), UINT32_C(0x004DDE09), UINT32_C(0x006CBD8B),
5968 UINT32_C(0x005BA607), UINT32_C(0x003CC42A), UINT32_C(0x001D4E2E),
5969 UINT32_C(0x007ACD96), UINT32_C(0x00C921CE), UINT32_C(0x000620D1),
5970 UINT32_C(0x0016E31C), UINT32_C(0x006A2B72)},
5971 {UINT32_C(0x002A9792), UINT32_C(0x0000CFD3), UINT32_C(0x006A9AD2),
5972 UINT32_C(0x00ED29B3), UINT32_C(0x0026DA69), UINT32_C(0x002D2B73),
5973 UINT32_C(0x001B5E5D), UINT32_C(0x00D5305C), UINT32_C(0x0067DCE0),
5974 UINT32_C(0x000729B3), UINT32_C(0x00070252)}},
5975 {{UINT32_C(0x007834CB), UINT32_C(0x001A305D), UINT32_C(0x00199CF9),
5976 UINT32_C(0x00EE7F83), UINT32_C(0x0048376D), UINT32_C(0x00182568),
5977 UINT32_C(0x0044C0B5), UINT32_C(0x007EFBAD), UINT32_C(0x006A5B89),
5978 UINT32_C(0x002DDEC8), UINT32_C(0x002C5365)},
5979 {UINT32_C(0x0014DDC8), UINT32_C(0x0026ED23), UINT32_C(0x004F3CF1),
5980 UINT32_C(0x009C337C), UINT32_C(0x005CA1F6), UINT32_C(0x00430D81),
5981 UINT32_C(0x001BF696), UINT32_C(0x00D5544B), UINT32_C(0x0001941E),
5982 UINT32_C(0x002720AB), UINT32_C(0x006EF64B)},
5983 {UINT32_C(0x00AEB238), UINT32_C(0x002A16EC), UINT32_C(0x0055FE48),
5984 UINT32_C(0x00606DE7), UINT32_C(0x0034576A), UINT32_C(0x006FF01C),
5985 UINT32_C(0x0009AA13), UINT32_C(0x00D2D5AB), UINT32_C(0x003249A4),
5986 UINT32_C(0x004B05E9), UINT32_C(0x0041BC86)}},
5987 {{UINT32_C(0x00A9E5D5), UINT32_C(0x003CDBE3), UINT32_C(0x00669075),
5988 UINT32_C(0x004D8E92), UINT32_C(0x0050E701), UINT32_C(0x003EEC92),
5989 UINT32_C(0x00340906), UINT32_C(0x003A5231), UINT32_C(0x0076D572),
5990 UINT32_C(0x001CA34B), UINT32_C(0x0035D540)},
5991 {UINT32_C(0x00FE52C3), UINT32_C(0x0064659E), UINT32_C(0x000FCF54),
5992 UINT32_C(0x00DDCF41), UINT32_C(0x007A7B36), UINT32_C(0x002AEC73),
5993 UINT32_C(0x007550B1), UINT32_C(0x008E1CEC), UINT32_C(0x002CAD9C),
5994 UINT32_C(0x004EE133), UINT32_C(0x0045B7D8)},
5995 {UINT32_C(0x009FC441), UINT32_C(0x002D1FBC), UINT32_C(0x003E7D16),
5996 UINT32_C(0x00C8B352), UINT32_C(0x00221849), UINT32_C(0x003FF5A0),
5997 UINT32_C(0x0055A506), UINT32_C(0x007F88D0), UINT32_C(0x0018DB76),
5998 UINT32_C(0x00672F49), UINT32_C(0x007D2F58)}},
6001 {{UINT32_C(0x00C3CC62), UINT32_C(0x001788C8), UINT32_C(0x0046ECBC),
6002 UINT32_C(0x00F44A0D), UINT32_C(0x005D570F), UINT32_C(0x0011C818),
6003 UINT32_C(0x0005F4D7), UINT32_C(0x00B7F489), UINT32_C(0x0001AE92),
6004 UINT32_C(0x002AB1B0), UINT32_C(0x0067910C)},
6005 {UINT32_C(0x0033A3DB), UINT32_C(0x00768B12), UINT32_C(0x005D50DE),
6006 UINT32_C(0x00D31F34), UINT32_C(0x003455F7), UINT32_C(0x0021BBE3),
6007 UINT32_C(0x0020D657), UINT32_C(0x009AEF49), UINT32_C(0x0011194A),
6008 UINT32_C(0x007C4E1E), UINT32_C(0x005A07C9)},
6009 {UINT32_C(0x008F9CA3), UINT32_C(0x0054FF76), UINT32_C(0x00570C00),
6010 UINT32_C(0x006792D9), UINT32_C(0x0064070F), UINT32_C(0x0044F2A2),
6011 UINT32_C(0x006ABEFC), UINT32_C(0x00DAAC6E), UINT32_C(0x004F8CD9),
6012 UINT32_C(0x004DC91F), UINT32_C(0x0049B2BB)}},
6013 {{UINT32_C(0x0018CD54), UINT32_C(0x0010BE7F), UINT32_C(0x005F8D91),
6014 UINT32_C(0x00BAF1CC), UINT32_C(0x0050AB12), UINT32_C(0x002D251A),
6015 UINT32_C(0x004B47CC), UINT32_C(0x005BD1C5), UINT32_C(0x00489594),
6016 UINT32_C(0x00699114), UINT32_C(0x0030C9FA)},
6017 {UINT32_C(0x00D23D40), UINT32_C(0x005307A4), UINT32_C(0x007E98F3),
6018 UINT32_C(0x00F08939), UINT32_C(0x0069A75B), UINT32_C(0x001DB79B),
6019 UINT32_C(0x00566A53), UINT32_C(0x005AF4D5), UINT32_C(0x00237443),
6020 UINT32_C(0x001D42DE), UINT32_C(0x005165D2)},
6021 {UINT32_C(0x00873511), UINT32_C(0x00525967), UINT32_C(0x0056101D),
6022 UINT32_C(0x00AA7060), UINT32_C(0x004C11B1), UINT32_C(0x0029CA00),
6023 UINT32_C(0x001A34BC), UINT32_C(0x005CA8C2), UINT32_C(0x002F5F9A),
6024 UINT32_C(0x0039EFC2), UINT32_C(0x006871D9)}},
6025 {{UINT32_C(0x00421E67), UINT32_C(0x00075D00), UINT32_C(0x0010583F),
6026 UINT32_C(0x00B732C7), UINT32_C(0x0037730B), UINT32_C(0x007028B8),
6027 UINT32_C(0x005C0247), UINT32_C(0x007CC11B), UINT32_C(0x007F99FE),
6028 UINT32_C(0x0074EF6F), UINT32_C(0x0049255A)},
6029 {UINT32_C(0x00806A6B), UINT32_C(0x0076A27F), UINT32_C(0x001A45F6),
6030 UINT32_C(0x001863FB), UINT32_C(0x0036A2B2), UINT32_C(0x00058E27),
6031 UINT32_C(0x007E3E52), UINT32_C(0x008FA71E), UINT32_C(0x000F9591),
6032 UINT32_C(0x000EA645), UINT32_C(0x0037E6C8)},
6033 {UINT32_C(0x004C164A), UINT32_C(0x0015AE71), UINT32_C(0x00228D86),
6034 UINT32_C(0x00441D33), UINT32_C(0x00507819), UINT32_C(0x00442DBE),
6035 UINT32_C(0x00457850), UINT32_C(0x0059222C), UINT32_C(0x0029495F),
6036 UINT32_C(0x007331A0), UINT32_C(0x007BAE86)}},
6037 {{UINT32_C(0x00FA5032), UINT32_C(0x00242303), UINT32_C(0x000A904B),
6038 UINT32_C(0x0003BB53), UINT32_C(0x007553E7), UINT32_C(0x003CA0C5),
6039 UINT32_C(0x0061B87D), UINT32_C(0x00805E53), UINT32_C(0x0049297C),
6040 UINT32_C(0x0056196B), UINT32_C(0x004C6DF6)},
6041 {UINT32_C(0x002C1092), UINT32_C(0x0019EF62), UINT32_C(0x0047F011),
6042 UINT32_C(0x00C03A85), UINT32_C(0x000B1A90), UINT32_C(0x001507E7),
6043 UINT32_C(0x004D6EBC), UINT32_C(0x00794D29), UINT32_C(0x005C5416),
6044 UINT32_C(0x0020F242), UINT32_C(0x00576518)},
6045 {UINT32_C(0x0034E914), UINT32_C(0x005DAF45), UINT32_C(0x005BE7A5),
6046 UINT32_C(0x00FE38F3), UINT32_C(0x00157770), UINT32_C(0x00237F8C),
6047 UINT32_C(0x0015BF21), UINT32_C(0x0077CC24), UINT32_C(0x005067D4),
6048 UINT32_C(0x00091C98), UINT32_C(0x007F54DE)}},
6049 {{UINT32_C(0x00770B21), UINT32_C(0x006194BB), UINT32_C(0x001A8987),
6050 UINT32_C(0x0094013C), UINT32_C(0x00619B7F), UINT32_C(0x00083816),
6051 UINT32_C(0x007A8072), UINT32_C(0x00F58256), UINT32_C(0x002FFA60),
6052 UINT32_C(0x007AC24E), UINT32_C(0x0042CF75)},
6053 {UINT32_C(0x0058474E), UINT32_C(0x007BFF2F), UINT32_C(0x0018145B),
6054 UINT32_C(0x00F8E32B), UINT32_C(0x0055DE08), UINT32_C(0x002AA874),
6055 UINT32_C(0x0044BCA0), UINT32_C(0x0038F7BE), UINT32_C(0x0027359B),
6056 UINT32_C(0x002747EB), UINT32_C(0x00226230)},
6057 {UINT32_C(0x00FA31A5), UINT32_C(0x00190A96), UINT32_C(0x006536D0),
6058 UINT32_C(0x00ACA102), UINT32_C(0x0036C0D0), UINT32_C(0x0008F3D0),
6059 UINT32_C(0x0049B490), UINT32_C(0x005CD6C9), UINT32_C(0x000E1C66),
6060 UINT32_C(0x0077C89C), UINT32_C(0x006A74AE)}},
6061 {{UINT32_C(0x00EE9825), UINT32_C(0x000FBC15), UINT32_C(0x000C0843),
6062 UINT32_C(0x006B793A), UINT32_C(0x0004ED1C), UINT32_C(0x00616EA7),
6063 UINT32_C(0x000B6304), UINT32_C(0x00166978), UINT32_C(0x0024139D),
6064 UINT32_C(0x0042F014), UINT32_C(0x003D4978)},
6065 {UINT32_C(0x0029D5D7), UINT32_C(0x0033F88C), UINT32_C(0x006E76FF),
6066 UINT32_C(0x00A49E5F), UINT32_C(0x003D801A), UINT32_C(0x0042EE48),
6067 UINT32_C(0x000D2057), UINT32_C(0x001D9164), UINT32_C(0x001AB787),
6068 UINT32_C(0x004D338B), UINT32_C(0x00262464)},
6069 {UINT32_C(0x00D5B395), UINT32_C(0x007A77B2), UINT32_C(0x0043D844),
6070 UINT32_C(0x006D5774), UINT32_C(0x00267921), UINT32_C(0x00374E41),
6071 UINT32_C(0x003B4C78), UINT32_C(0x00E2BA6E), UINT32_C(0x00656116),
6072 UINT32_C(0x0043049C), UINT32_C(0x002023C8)}},
6073 {{UINT32_C(0x001715E4), UINT32_C(0x00652B6A), UINT32_C(0x00379760),
6074 UINT32_C(0x004DB333), UINT32_C(0x00619842), UINT32_C(0x00656120),
6075 UINT32_C(0x0026FAEC), UINT32_C(0x00EF2AD7), UINT32_C(0x00149CB3),
6076 UINT32_C(0x0055D95D), UINT32_C(0x00497B11)},
6077 {UINT32_C(0x00D4B7BF), UINT32_C(0x001098D0), UINT32_C(0x0057E045),
6078 UINT32_C(0x00304A0C), UINT32_C(0x007F8852), UINT32_C(0x00564889),
6079 UINT32_C(0x007D4D67), UINT32_C(0x00A2CA30), UINT32_C(0x0051B0D9),
6080 UINT32_C(0x00495A39), UINT32_C(0x0017789D)},
6081 {UINT32_C(0x0049CE9C), UINT32_C(0x001C79B9), UINT32_C(0x000A676A),
6082 UINT32_C(0x0043503C), UINT32_C(0x003C78EA), UINT32_C(0x00779E15),
6083 UINT32_C(0x002487F8), UINT32_C(0x0098B781), UINT32_C(0x002F1E05),
6084 UINT32_C(0x000B58B5), UINT32_C(0x0079EE99)}},
6085 {{UINT32_C(0x0082E001), UINT32_C(0x002F7563), UINT32_C(0x005502B7),
6086 UINT32_C(0x0099B452), UINT32_C(0x00068BD3), UINT32_C(0x006837ED),
6087 UINT32_C(0x006C2DAE), UINT32_C(0x00EDD476), UINT32_C(0x004B54C6),
6088 UINT32_C(0x002353E5), UINT32_C(0x0036757B)},
6089 {UINT32_C(0x0003D167), UINT32_C(0x002030D2), UINT32_C(0x0072FA5A),
6090 UINT32_C(0x004E3D16), UINT32_C(0x001B78F0), UINT32_C(0x000924E6),
6091 UINT32_C(0x001E86B4), UINT32_C(0x006CD648), UINT32_C(0x001D24C9),
6092 UINT32_C(0x000CC288), UINT32_C(0x0054B2D8)},
6093 {UINT32_C(0x002B443B), UINT32_C(0x00135EB4), UINT32_C(0x006123F8),
6094 UINT32_C(0x00795F4F), UINT32_C(0x00161316), UINT32_C(0x005CC78F),
6095 UINT32_C(0x001879B2), UINT32_C(0x00A11513), UINT32_C(0x0075BC89),
6096 UINT32_C(0x000E0F4C), UINT32_C(0x0022EB79)}},
6097 {{UINT32_C(0x0097ABD7), UINT32_C(0x003BF415), UINT32_C(0x004B96FB),
6098 UINT32_C(0x0086107E), UINT32_C(0x0013751E), UINT32_C(0x006E3412),
6099 UINT32_C(0x0075AEFF), UINT32_C(0x00CEAD7E), UINT32_C(0x004D03FA),
6100 UINT32_C(0x0041C8E1), UINT32_C(0x00586295)},
6101 {UINT32_C(0x00BF974F), UINT32_C(0x003D6607), UINT32_C(0x003A2804),
6102 UINT32_C(0x00E9CC65), UINT32_C(0x00596911), UINT32_C(0x0013F86A),
6103 UINT32_C(0x00010E75), UINT32_C(0x0067284C), UINT32_C(0x00244A19),
6104 UINT32_C(0x00071615), UINT32_C(0x002E2C66)},
6105 {UINT32_C(0x004963F7), UINT32_C(0x00640576), UINT32_C(0x0031C7EE),
6106 UINT32_C(0x001D786C), UINT32_C(0x00257DEC), UINT32_C(0x003CF6C5),
6107 UINT32_C(0x00465E43), UINT32_C(0x00B15EDD), UINT32_C(0x00478BEB),
6108 UINT32_C(0x00016C1B), UINT32_C(0x00094307)}},
6109 {{UINT32_C(0x00E85486), UINT32_C(0x0077F915), UINT32_C(0x00760D35),
6110 UINT32_C(0x002EF0AE), UINT32_C(0x0037042C), UINT32_C(0x0030C359),
6111 UINT32_C(0x00346545), UINT32_C(0x00DC7FE6), UINT32_C(0x0030D4C5),
6112 UINT32_C(0x004AAD41), UINT32_C(0x000A60C0)},
6113 {UINT32_C(0x00D6E8B3), UINT32_C(0x000B7AA8), UINT32_C(0x0023E0C5),
6114 UINT32_C(0x006A8EBF), UINT32_C(0x0063D566), UINT32_C(0x002294C9),
6115 UINT32_C(0x0049A4AE), UINT32_C(0x005A2C0A), UINT32_C(0x005086A5),
6116 UINT32_C(0x0008808D), UINT32_C(0x0005A919)},
6117 {UINT32_C(0x007A8EAF), UINT32_C(0x001E6353), UINT32_C(0x005C83D2),
6118 UINT32_C(0x00714AAE), UINT32_C(0x004F2F37), UINT32_C(0x00249BF6),
6119 UINT32_C(0x006CDEE8), UINT32_C(0x006F262D), UINT32_C(0x007E9C03),
6120 UINT32_C(0x004C7272), UINT32_C(0x005E6F1B)}},
6121 {{UINT32_C(0x0011D440), UINT32_C(0x0050D0E6), UINT32_C(0x0020183D),
6122 UINT32_C(0x00D0ED3E), UINT32_C(0x004642A3), UINT32_C(0x0019F456),
6123 UINT32_C(0x0068661A), UINT32_C(0x005C97B1), UINT32_C(0x001DFD20),
6124 UINT32_C(0x00607CBE), UINT32_C(0x004EB1D7)},
6125 {UINT32_C(0x00424218), UINT32_C(0x0031CB2B), UINT32_C(0x0016EE1E),
6126 UINT32_C(0x00F0B2F5), UINT32_C(0x00284CA3), UINT32_C(0x000B886E),
6127 UINT32_C(0x0056424F), UINT32_C(0x00606535), UINT32_C(0x001A7DD3),
6128 UINT32_C(0x005E5D6D), UINT32_C(0x000910A8)},
6129 {UINT32_C(0x00E5A1E8), UINT32_C(0x0062AA84), UINT32_C(0x0072C780),
6130 UINT32_C(0x00E14E12), UINT32_C(0x00359D55), UINT32_C(0x00388026),
6131 UINT32_C(0x001AF8C7), UINT32_C(0x007C9658), UINT32_C(0x007CD573),
6132 UINT32_C(0x001DB584), UINT32_C(0x005C3621)}},
6133 {{UINT32_C(0x00E7BB1F), UINT32_C(0x002CD518), UINT32_C(0x0041FE08),
6134 UINT32_C(0x00717B78), UINT32_C(0x00400988), UINT32_C(0x00291794),
6135 UINT32_C(0x00747C25), UINT32_C(0x007194A1), UINT32_C(0x0040F7AF),
6136 UINT32_C(0x007B6E73), UINT32_C(0x0020EB45)},
6137 {UINT32_C(0x00161F74), UINT32_C(0x00299725), UINT32_C(0x0025AD63),
6138 UINT32_C(0x004B6379), UINT32_C(0x00076C32), UINT32_C(0x0071515E),
6139 UINT32_C(0x0032A4A1), UINT32_C(0x00A7B602), UINT32_C(0x005C7951),
6140 UINT32_C(0x003975BA), UINT32_C(0x004BA951)},
6141 {UINT32_C(0x009EEF2E), UINT32_C(0x000B3835), UINT32_C(0x005E1C6B),
6142 UINT32_C(0x00800FFB), UINT32_C(0x006BC9CA), UINT32_C(0x00125F16),
6143 UINT32_C(0x000F6D0D), UINT32_C(0x00186A82), UINT32_C(0x00479A35),
6144 UINT32_C(0x0006739D), UINT32_C(0x004DCC17)}},
6145 {{UINT32_C(0x0067A5F5), UINT32_C(0x007CA11D), UINT32_C(0x0051B4EF),
6146 UINT32_C(0x00E64083), UINT32_C(0x002B0147), UINT32_C(0x0022B454),
6147 UINT32_C(0x0050D922), UINT32_C(0x0019CFE8), UINT32_C(0x00416B41),
6148 UINT32_C(0x00219410), UINT32_C(0x005C5995)},
6149 {UINT32_C(0x0020EA67), UINT32_C(0x0065B659), UINT32_C(0x0011B640),
6150 UINT32_C(0x00C05AB3), UINT32_C(0x0015BD93), UINT32_C(0x003F4CB7),
6151 UINT32_C(0x000CD5AA), UINT32_C(0x006203FA), UINT32_C(0x001FA8A5),
6152 UINT32_C(0x001E6F64), UINT32_C(0x006FB8E7)},
6153 {UINT32_C(0x00B6FEF4), UINT32_C(0x0053F0CE), UINT32_C(0x006B1E51),
6154 UINT32_C(0x0033476B), UINT32_C(0x00419002), UINT32_C(0x006F619C),
6155 UINT32_C(0x005CAF14), UINT32_C(0x001753E9), UINT32_C(0x0038FC4F),
6156 UINT32_C(0x007F5E19), UINT32_C(0x000F12D2)}},
6157 {{UINT32_C(0x009F6EBB), UINT32_C(0x004C08FE), UINT32_C(0x006E7C4E),
6158 UINT32_C(0x00F1680D), UINT32_C(0x00446C66), UINT32_C(0x00350BF6),
6159 UINT32_C(0x006A96E3), UINT32_C(0x005AEE9A), UINT32_C(0x006935BB),
6160 UINT32_C(0x0073B4C5), UINT32_C(0x004AC140)},
6161 {UINT32_C(0x00E5225C), UINT32_C(0x007B671B), UINT32_C(0x007606A0),
6162 UINT32_C(0x00938508), UINT32_C(0x007625D7), UINT32_C(0x001E3B8F),
6163 UINT32_C(0x002EAE28), UINT32_C(0x00318F8C), UINT32_C(0x001CC7F0),
6164 UINT32_C(0x0010B56D), UINT32_C(0x0049C97C)},
6165 {UINT32_C(0x00DE3FDD), UINT32_C(0x0008CA79), UINT32_C(0x000A0585),
6166 UINT32_C(0x0056E5A5), UINT32_C(0x003CF77E), UINT32_C(0x002C9DD5),
6167 UINT32_C(0x006D3D48), UINT32_C(0x00B152EB), UINT32_C(0x001C6B5C),
6168 UINT32_C(0x00755FAF), UINT32_C(0x002B73E8)}},
6169 {{UINT32_C(0x004F175B), UINT32_C(0x0074B90C), UINT32_C(0x007C4EB9),
6170 UINT32_C(0x00CB92B7), UINT32_C(0x00592AE2), UINT32_C(0x0056E0F5),
6171 UINT32_C(0x007528E2), UINT32_C(0x00893263), UINT32_C(0x0006AD16),
6172 UINT32_C(0x0070AA41), UINT32_C(0x0062E83F)},
6173 {UINT32_C(0x00058482), UINT32_C(0x00171A5D), UINT32_C(0x0047C331),
6174 UINT32_C(0x00DF7758), UINT32_C(0x002B4A00), UINT32_C(0x001FCAD8),
6175 UINT32_C(0x006A1943), UINT32_C(0x00B73575), UINT32_C(0x00171180),
6176 UINT32_C(0x005C1148), UINT32_C(0x0012A36A)},
6177 {UINT32_C(0x008C51AE), UINT32_C(0x0020EE14), UINT32_C(0x00549F62),
6178 UINT32_C(0x00CD3EB6), UINT32_C(0x0048A700), UINT32_C(0x00596B28),
6179 UINT32_C(0x002F99A4), UINT32_C(0x00010422), UINT32_C(0x001769F4),
6180 UINT32_C(0x00225E79), UINT32_C(0x0067F6DE)}},
6181 {{UINT32_C(0x009E9178), UINT32_C(0x0005D43C), UINT32_C(0x0012A802),
6182 UINT32_C(0x0086A260), UINT32_C(0x0063C91C), UINT32_C(0x0063084E),
6183 UINT32_C(0x0046B7E1), UINT32_C(0x00A17B2D), UINT32_C(0x0051323E),
6184 UINT32_C(0x0046B359), UINT32_C(0x00037634)},
6185 {UINT32_C(0x000A3DA8), UINT32_C(0x001949B0), UINT32_C(0x0005E3B9),
6186 UINT32_C(0x002467F0), UINT32_C(0x004BCC28), UINT32_C(0x00501570),
6187 UINT32_C(0x003D5412), UINT32_C(0x00CD0573), UINT32_C(0x0040ECA4),
6188 UINT32_C(0x0017C942), UINT32_C(0x001AACE2)},
6189 {UINT32_C(0x00427572), UINT32_C(0x002D0E76), UINT32_C(0x006FC301),
6190 UINT32_C(0x0011516D), UINT32_C(0x003B6F32), UINT32_C(0x0056D53F),
6191 UINT32_C(0x002E9447), UINT32_C(0x00909115), UINT32_C(0x007DC768),
6192 UINT32_C(0x00553F21), UINT32_C(0x003A0976)}},
6195 {{UINT32_C(0x0018835D), UINT32_C(0x001FCF9F), UINT32_C(0x001AD610),
6196 UINT32_C(0x007D30EC), UINT32_C(0x006C910C), UINT32_C(0x003FB1A8),
6197 UINT32_C(0x001464A4), UINT32_C(0x0027680C), UINT32_C(0x007E54DB),
6198 UINT32_C(0x005EDD4B), UINT32_C(0x005A8976)},
6199 {UINT32_C(0x0037E1C3), UINT32_C(0x0016BF14), UINT32_C(0x0006AA36),
6200 UINT32_C(0x0040A33E), UINT32_C(0x006DC0DF), UINT32_C(0x00242FA2),
6201 UINT32_C(0x00274EA4), UINT32_C(0x000084D9), UINT32_C(0x0068A677),
6202 UINT32_C(0x004FE2AF), UINT32_C(0x001D11B4)},
6203 {UINT32_C(0x003DC1C7), UINT32_C(0x00792137), UINT32_C(0x002CB33F),
6204 UINT32_C(0x007A0801), UINT32_C(0x000056E3), UINT32_C(0x00339206),
6205 UINT32_C(0x003D0090), UINT32_C(0x00F96044), UINT32_C(0x00537FE0),
6206 UINT32_C(0x006358EF), UINT32_C(0x001EE2D0)}},
6207 {{UINT32_C(0x0029CB03), UINT32_C(0x000FF813), UINT32_C(0x00067660),
6208 UINT32_C(0x00E00898), UINT32_C(0x000083A1), UINT32_C(0x00516E88),
6209 UINT32_C(0x00543512), UINT32_C(0x00EFA310), UINT32_C(0x005ED95E),
6210 UINT32_C(0x0048147D), UINT32_C(0x003958DB)},
6211 {UINT32_C(0x0084596C), UINT32_C(0x006BC632), UINT32_C(0x0037EAF8),
6212 UINT32_C(0x00148F47), UINT32_C(0x002DE2D2), UINT32_C(0x007E4DA4),
6213 UINT32_C(0x0021A371), UINT32_C(0x00BF0084), UINT32_C(0x003EFBC7),
6214 UINT32_C(0x0079976E), UINT32_C(0x004BAEFB)},
6215 {UINT32_C(0x000DA1C1), UINT32_C(0x00310E2C), UINT32_C(0x0030B00D),
6216 UINT32_C(0x007060D1), UINT32_C(0x000F8A0E), UINT32_C(0x005B1EC0),
6217 UINT32_C(0x0066C96D), UINT32_C(0x008BB679), UINT32_C(0x0031F9DB),
6218 UINT32_C(0x0032C38D), UINT32_C(0x003C1F72)}},
6219 {{UINT32_C(0x00BCFE19), UINT32_C(0x005B51F8), UINT32_C(0x0037A870),
6220 UINT32_C(0x00898A49), UINT32_C(0x007BD853), UINT32_C(0x0064DA75),
6221 UINT32_C(0x0017497A), UINT32_C(0x0021BE3C), UINT32_C(0x0026C48F),
6222 UINT32_C(0x0035A56E), UINT32_C(0x00079EFC)},
6223 {UINT32_C(0x006AEFDE), UINT32_C(0x007113F8), UINT32_C(0x007013EA),
6224 UINT32_C(0x004A8F2E), UINT32_C(0x0038D8C7), UINT32_C(0x003E2B86),
6225 UINT32_C(0x006499EE), UINT32_C(0x00EF9DD1), UINT32_C(0x00541109),
6226 UINT32_C(0x007F4211), UINT32_C(0x002650ED)},
6227 {UINT32_C(0x00E8730E), UINT32_C(0x007EF6E8), UINT32_C(0x00053E89),
6228 UINT32_C(0x00B164EC), UINT32_C(0x004CFEB8), UINT32_C(0x002674CE),
6229 UINT32_C(0x006FD69F), UINT32_C(0x00862ADC), UINT32_C(0x0074A714),
6230 UINT32_C(0x004E95F1), UINT32_C(0x00440342)}},
6231 {{UINT32_C(0x0086A1D1), UINT32_C(0x0009570F), UINT32_C(0x0021E028),
6232 UINT32_C(0x00D8EF33), UINT32_C(0x0030D08A), UINT32_C(0x005EE53C),
6233 UINT32_C(0x005F27BE), UINT32_C(0x00315BEF), UINT32_C(0x0030A287),
6234 UINT32_C(0x00395DE5), UINT32_C(0x00694DAA)},
6235 {UINT32_C(0x004E499A), UINT32_C(0x0024FC80), UINT32_C(0x0045DA5E),
6236 UINT32_C(0x004542DE), UINT32_C(0x005A6E71), UINT32_C(0x0013BB0D),
6237 UINT32_C(0x0000E551), UINT32_C(0x0009BB0D), UINT32_C(0x00710991),
6238 UINT32_C(0x00116881), UINT32_C(0x0075A138)},
6239 {UINT32_C(0x0039EB19), UINT32_C(0x0067187C), UINT32_C(0x00636CC0),
6240 UINT32_C(0x0094DCEC), UINT32_C(0x001AF3DD), UINT32_C(0x002B8639),
6241 UINT32_C(0x006554E7), UINT32_C(0x00E605EB), UINT32_C(0x0061639B),
6242 UINT32_C(0x0077500A), UINT32_C(0x003193ED)}},
6243 {{UINT32_C(0x0001E326), UINT32_C(0x00352C31), UINT32_C(0x004A76AB),
6244 UINT32_C(0x00D940B5), UINT32_C(0x006329C5), UINT32_C(0x001AFE72),
6245 UINT32_C(0x005E4FE9), UINT32_C(0x00F56D9B), UINT32_C(0x003E7DB3),
6246 UINT32_C(0x00054566), UINT32_C(0x004D0C77)},
6247 {UINT32_C(0x00B344FC), UINT32_C(0x001F79B7), UINT32_C(0x0050F482),
6248 UINT32_C(0x0098D267), UINT32_C(0x001C2619), UINT32_C(0x006BBD65),
6249 UINT32_C(0x00346286), UINT32_C(0x008CAD0C), UINT32_C(0x000FC617),
6250 UINT32_C(0x0032B373), UINT32_C(0x007978E3)},
6251 {UINT32_C(0x00C94333), UINT32_C(0x006B14A8), UINT32_C(0x001075C5),
6252 UINT32_C(0x00BDD939), UINT32_C(0x0000EE70), UINT32_C(0x00188183),
6253 UINT32_C(0x007398E2), UINT32_C(0x0009184A), UINT32_C(0x007DF798),
6254 UINT32_C(0x0057B14F), UINT32_C(0x0021B6A8)}},
6255 {{UINT32_C(0x00F232E3), UINT32_C(0x00449C35), UINT32_C(0x000CC2CD),
6256 UINT32_C(0x0003BBFB), UINT32_C(0x006E022E), UINT32_C(0x005937F0),
6257 UINT32_C(0x000D3400), UINT32_C(0x00A3335B), UINT32_C(0x003797FA),
6258 UINT32_C(0x007E0C16), UINT32_C(0x0068AB4A)},
6259 {UINT32_C(0x00655243), UINT32_C(0x0076EF0C), UINT32_C(0x007A5D62),
6260 UINT32_C(0x0087B99B), UINT32_C(0x007F5266), UINT32_C(0x00129263),
6261 UINT32_C(0x0052B578), UINT32_C(0x00CC7106), UINT32_C(0x004128A7),
6262 UINT32_C(0x0074AFC9), UINT32_C(0x001A0821)},
6263 {UINT32_C(0x0000FE7F), UINT32_C(0x0058CC38), UINT32_C(0x004ACE7A),
6264 UINT32_C(0x0027824A), UINT32_C(0x0071BB43), UINT32_C(0x004CD1C5),
6265 UINT32_C(0x001DE8E5), UINT32_C(0x00FD97F3), UINT32_C(0x004164E0),
6266 UINT32_C(0x00542935), UINT32_C(0x0015EE68)}},
6267 {{UINT32_C(0x0056201E), UINT32_C(0x00572A88), UINT32_C(0x005A66B9),
6268 UINT32_C(0x00A30E5F), UINT32_C(0x000E20E3), UINT32_C(0x000898BF),
6269 UINT32_C(0x003CC5C7), UINT32_C(0x000170BD), UINT32_C(0x003813EE),
6270 UINT32_C(0x00079874), UINT32_C(0x006A5F45)},
6271 {UINT32_C(0x00C07AE0), UINT32_C(0x00680DE0), UINT32_C(0x0012D0D6),
6272 UINT32_C(0x00641F64), UINT32_C(0x000E6F53), UINT32_C(0x000A48AC),
6273 UINT32_C(0x002EBABE), UINT32_C(0x0017E4D0), UINT32_C(0x006B3042),
6274 UINT32_C(0x0047391C), UINT32_C(0x003FC7B5)},
6275 {UINT32_C(0x008AE200), UINT32_C(0x00651B7E), UINT32_C(0x000F51C8),
6276 UINT32_C(0x0034F2DB), UINT32_C(0x00418121), UINT32_C(0x0052E806),
6277 UINT32_C(0x004B57A3), UINT32_C(0x00801E3B), UINT32_C(0x006E2553),
6278 UINT32_C(0x0017FE29), UINT32_C(0x000371F5)}},
6279 {{UINT32_C(0x00E0B571), UINT32_C(0x0043B547), UINT32_C(0x0015696B),
6280 UINT32_C(0x00732AF4), UINT32_C(0x007B6282), UINT32_C(0x007276FC),
6281 UINT32_C(0x00489692), UINT32_C(0x00536F42), UINT32_C(0x00241953),
6282 UINT32_C(0x0047679B), UINT32_C(0x0017A0AD)},
6283 {UINT32_C(0x0071332D), UINT32_C(0x00010B6E), UINT32_C(0x007EE392),
6284 UINT32_C(0x00A7B31C), UINT32_C(0x004921ED), UINT32_C(0x000B32BD),
6285 UINT32_C(0x001187FE), UINT32_C(0x00913F47), UINT32_C(0x000B27ED),
6286 UINT32_C(0x0043B431), UINT32_C(0x0055085B)},
6287 {UINT32_C(0x00E2C137), UINT32_C(0x001AD933), UINT32_C(0x000D0367),
6288 UINT32_C(0x007E38F0), UINT32_C(0x0003205C), UINT32_C(0x0014599A),
6289 UINT32_C(0x001E8DE6), UINT32_C(0x007A88FA), UINT32_C(0x0077198A),
6290 UINT32_C(0x0031A753), UINT32_C(0x002FE194)}},
6291 {{UINT32_C(0x00682B6C), UINT32_C(0x00652986), UINT32_C(0x001F417F),
6292 UINT32_C(0x00DE4F1B), UINT32_C(0x000EF1F1), UINT32_C(0x00036E7F),
6293 UINT32_C(0x005AD789), UINT32_C(0x00AE8DB4), UINT32_C(0x0076B58D),
6294 UINT32_C(0x002E3942), UINT32_C(0x006F7B10)},
6295 {UINT32_C(0x009E5FA2), UINT32_C(0x0008F3C7), UINT32_C(0x00043BDE),
6296 UINT32_C(0x0052A794), UINT32_C(0x0044679C), UINT32_C(0x007F28C0),
6297 UINT32_C(0x00382AB6), UINT32_C(0x00395191), UINT32_C(0x0039B531),
6298 UINT32_C(0x0036F81A), UINT32_C(0x00795887)},
6299 {UINT32_C(0x00F70354), UINT32_C(0x00328B59), UINT32_C(0x003D01A3),
6300 UINT32_C(0x00C9F394), UINT32_C(0x0022F3EA), UINT32_C(0x006F350F),
6301 UINT32_C(0x0058C2B3), UINT32_C(0x0040634F), UINT32_C(0x00320F7C),
6302 UINT32_C(0x006D4BEE), UINT32_C(0x0057CCC9)}},
6303 {{UINT32_C(0x0093E9B9), UINT32_C(0x006BDC73), UINT32_C(0x0045A4A0),
6304 UINT32_C(0x0051A4D7), UINT32_C(0x005C415B), UINT32_C(0x0066BA11),
6305 UINT32_C(0x005AE064), UINT32_C(0x005245BE), UINT32_C(0x00013BE1),
6306 UINT32_C(0x006DD2F6), UINT32_C(0x006F9657)},
6307 {UINT32_C(0x00E1468C), UINT32_C(0x0004FD78), UINT32_C(0x005800DD),
6308 UINT32_C(0x0091E526), UINT32_C(0x0012067D), UINT32_C(0x00481847),
6309 UINT32_C(0x000A9B9D), UINT32_C(0x00D7FB7D), UINT32_C(0x0008AF37),
6310 UINT32_C(0x00598387), UINT32_C(0x0053520A)},
6311 {UINT32_C(0x009411F0), UINT32_C(0x00415CC6), UINT32_C(0x003CFAB9),
6312 UINT32_C(0x00BEE1C6), UINT32_C(0x0011F354), UINT32_C(0x00540421),
6313 UINT32_C(0x005B7E1D), UINT32_C(0x00AA9283), UINT32_C(0x00107457),
6314 UINT32_C(0x000DC4A7), UINT32_C(0x0058459D)}},
6315 {{UINT32_C(0x00531F14), UINT32_C(0x001009E3), UINT32_C(0x0073B657),
6316 UINT32_C(0x00DC0159), UINT32_C(0x00665408), UINT32_C(0x0008FF55),
6317 UINT32_C(0x007D3DF9), UINT32_C(0x0031F848), UINT32_C(0x000B2149),
6318 UINT32_C(0x002E956E), UINT32_C(0x00749370)},
6319 {UINT32_C(0x005EACBA), UINT32_C(0x0013C60C), UINT32_C(0x001B1DCF),
6320 UINT32_C(0x00BE1671), UINT32_C(0x005C94CC), UINT32_C(0x00437E24),
6321 UINT32_C(0x00214684), UINT32_C(0x00207638), UINT32_C(0x002A0D18),
6322 UINT32_C(0x001FE161), UINT32_C(0x001F585E)},
6323 {UINT32_C(0x00FF468A), UINT32_C(0x004D3FD3), UINT32_C(0x000BBF50),
6324 UINT32_C(0x00011D45), UINT32_C(0x001070E3), UINT32_C(0x00438229),
6325 UINT32_C(0x0059AB03), UINT32_C(0x000AA329), UINT32_C(0x00315647),
6326 UINT32_C(0x000CCF61), UINT32_C(0x000F1485)}},
6327 {{UINT32_C(0x009129E3), UINT32_C(0x0012693C), UINT32_C(0x004E8200),
6328 UINT32_C(0x00027D67), UINT32_C(0x00704244), UINT32_C(0x00210CBE),
6329 UINT32_C(0x00192F03), UINT32_C(0x005142DE), UINT32_C(0x001A84FB),
6330 UINT32_C(0x003745C5), UINT32_C(0x0064B88E)},
6331 {UINT32_C(0x004FD4A7), UINT32_C(0x0039F707), UINT32_C(0x0027F3CE),
6332 UINT32_C(0x00C4924F), UINT32_C(0x004C1AC9), UINT32_C(0x005438CD),
6333 UINT32_C(0x0029571A), UINT32_C(0x009A42D3), UINT32_C(0x00437704),
6334 UINT32_C(0x00466DF8), UINT32_C(0x004CAE5F)},
6335 {UINT32_C(0x00CF7ED3), UINT32_C(0x00327495), UINT32_C(0x0023D857),
6336 UINT32_C(0x003ADCC1), UINT32_C(0x00783A07), UINT32_C(0x0070C835),
6337 UINT32_C(0x0063B436), UINT32_C(0x00AF64FA), UINT32_C(0x0043E2D6),
6338 UINT32_C(0x0020BE90), UINT32_C(0x001B98ED)}},
6339 {{UINT32_C(0x00A4C93E), UINT32_C(0x004F4C24), UINT32_C(0x007F4777),
6340 UINT32_C(0x000570E1), UINT32_C(0x003BF809), UINT32_C(0x001608A3),
6341 UINT32_C(0x0073E59E), UINT32_C(0x00B32CC7), UINT32_C(0x005501BF),
6342 UINT32_C(0x00027C79), UINT32_C(0x00793FF1)},
6343 {UINT32_C(0x0019DCA8), UINT32_C(0x001F6A93), UINT32_C(0x007FB9FE),
6344 UINT32_C(0x00389B1A), UINT32_C(0x0032A1FC), UINT32_C(0x001BD948),
6345 UINT32_C(0x00661278), UINT32_C(0x00C98D56), UINT32_C(0x005CDFB2),
6346 UINT32_C(0x004DF065), UINT32_C(0x004DA8B5)},
6347 {UINT32_C(0x008AF82E), UINT32_C(0x0049B701), UINT32_C(0x002A4058),
6348 UINT32_C(0x00937D79), UINT32_C(0x003E1209), UINT32_C(0x006D0224),
6349 UINT32_C(0x00654260), UINT32_C(0x0089CD81), UINT32_C(0x0031BE9C),
6350 UINT32_C(0x007F915B), UINT32_C(0x00545CEB)}},
6351 {{UINT32_C(0x00606923), UINT32_C(0x00535E19), UINT32_C(0x004B9720),
6352 UINT32_C(0x007CF3AC), UINT32_C(0x0009FEE2), UINT32_C(0x0021E97C),
6353 UINT32_C(0x00417B8D), UINT32_C(0x0005C8DC), UINT32_C(0x00278974),
6354 UINT32_C(0x00220131), UINT32_C(0x0001F1EA)},
6355 {UINT32_C(0x0051751A), UINT32_C(0x0022CFFE), UINT32_C(0x0065EAE7),
6356 UINT32_C(0x0002D66F), UINT32_C(0x001CFE5E), UINT32_C(0x0004D158),
6357 UINT32_C(0x003519D9), UINT32_C(0x00C3A426), UINT32_C(0x0050617E),
6358 UINT32_C(0x003DFC62), UINT32_C(0x000C1E82)},
6359 {UINT32_C(0x0054E7F7), UINT32_C(0x003159A5), UINT32_C(0x00536937),
6360 UINT32_C(0x00743C99), UINT32_C(0x002C5B9E), UINT32_C(0x003E5BAC),
6361 UINT32_C(0x00713E45), UINT32_C(0x001C8CC3), UINT32_C(0x00379CFC),
6362 UINT32_C(0x0040AC92), UINT32_C(0x004FD6BA)}},
6363 {{UINT32_C(0x00375AB1), UINT32_C(0x00558A76), UINT32_C(0x00127659),
6364 UINT32_C(0x002E36DD), UINT32_C(0x0017A438), UINT32_C(0x0037085E),
6365 UINT32_C(0x00460F93), UINT32_C(0x00DC21D1), UINT32_C(0x006D33E1),
6366 UINT32_C(0x004422EB), UINT32_C(0x003B5755)},
6367 {UINT32_C(0x003DA9D4), UINT32_C(0x002248E9), UINT32_C(0x0003EAEC),
6368 UINT32_C(0x00D43561), UINT32_C(0x001BF26D), UINT32_C(0x005C5F13),
6369 UINT32_C(0x00626C12), UINT32_C(0x00B918DF), UINT32_C(0x0065CADE),
6370 UINT32_C(0x00717357), UINT32_C(0x005BB6B5)},
6371 {UINT32_C(0x004024E3), UINT32_C(0x0046B939), UINT32_C(0x004E46F3),
6372 UINT32_C(0x001511AF), UINT32_C(0x00776BD7), UINT32_C(0x00320079),
6373 UINT32_C(0x007332F3), UINT32_C(0x007C852A), UINT32_C(0x007816D9),
6374 UINT32_C(0x0068E65E), UINT32_C(0x0045DBB4)}},
6375 {{UINT32_C(0x00E0980A), UINT32_C(0x003CBFDB), UINT32_C(0x0074F5AA),
6376 UINT32_C(0x001EA8DD), UINT32_C(0x002C4C50), UINT32_C(0x00311D45),
6377 UINT32_C(0x0039C948), UINT32_C(0x0055988C), UINT32_C(0x005B5B63),
6378 UINT32_C(0x0041F40E), UINT32_C(0x002C22D4)},
6379 {UINT32_C(0x00AE7440), UINT32_C(0x002ACDC7), UINT32_C(0x0078F4C2),
6380 UINT32_C(0x00199902), UINT32_C(0x001399A7), UINT32_C(0x003DDA20),
6381 UINT32_C(0x00658152), UINT32_C(0x005F646B), UINT32_C(0x006CA0B4),
6382 UINT32_C(0x0073AF03), UINT32_C(0x00052716)},
6383 {UINT32_C(0x007F80B6), UINT32_C(0x003B2F94), UINT32_C(0x00373B83),
6384 UINT32_C(0x00EA1B50), UINT32_C(0x00716C1C), UINT32_C(0x0047A779),
6385 UINT32_C(0x006E478C), UINT32_C(0x009F1C86), UINT32_C(0x00772EF9),
6386 UINT32_C(0x003C8BB5), UINT32_C(0x0003308F)}},
6389 {{UINT32_C(0x003A0F8A), UINT32_C(0x00239C42), UINT32_C(0x002C8997),
6390 UINT32_C(0x00CB1312), UINT32_C(0x000BA3BF), UINT32_C(0x00433E65),
6391 UINT32_C(0x0004E93D), UINT32_C(0x00BC78BF), UINT32_C(0x0016315F),
6392 UINT32_C(0x007839DA), UINT32_C(0x00072F5D)},
6393 {UINT32_C(0x00431B86), UINT32_C(0x0052B0C9), UINT32_C(0x007B6B54),
6394 UINT32_C(0x0004C666), UINT32_C(0x0021961D), UINT32_C(0x00630D09),
6395 UINT32_C(0x0026B7F8), UINT32_C(0x004B5633), UINT32_C(0x0036F916),
6396 UINT32_C(0x007D08E5), UINT32_C(0x0009930C)},
6397 {UINT32_C(0x006B4F00), UINT32_C(0x001D54A4), UINT32_C(0x00692DA9),
6398 UINT32_C(0x0098837B), UINT32_C(0x0065006A), UINT32_C(0x000704B4),
6399 UINT32_C(0x00424FF9), UINT32_C(0x00C25B4D), UINT32_C(0x005B6D40),
6400 UINT32_C(0x0054C25F), UINT32_C(0x00387F6A)}},
6401 {{UINT32_C(0x002F5512), UINT32_C(0x00654E2D), UINT32_C(0x00668342),
6402 UINT32_C(0x00E2D4F5), UINT32_C(0x001FCDE3), UINT32_C(0x00396F10),
6403 UINT32_C(0x00474238), UINT32_C(0x001DFA11), UINT32_C(0x00536151),
6404 UINT32_C(0x0060AA5E), UINT32_C(0x0008AD4A)},
6405 {UINT32_C(0x00E427F0), UINT32_C(0x005588B0), UINT32_C(0x002428A4),
6406 UINT32_C(0x00DD098A), UINT32_C(0x002CAE12), UINT32_C(0x0005B6F7),
6407 UINT32_C(0x0003677F), UINT32_C(0x00B1209B), UINT32_C(0x000B9B82),
6408 UINT32_C(0x007C5D85), UINT32_C(0x00503BBE)},
6409 {UINT32_C(0x003F3EE8), UINT32_C(0x0071495D), UINT32_C(0x004CA27C),
6410 UINT32_C(0x0057A105), UINT32_C(0x0038F4ED), UINT32_C(0x00019BA2),
6411 UINT32_C(0x00772D19), UINT32_C(0x000C8A1F), UINT32_C(0x002F07EB),
6412 UINT32_C(0x0009E4D0), UINT32_C(0x007AF54E)}},
6413 {{UINT32_C(0x009ED4D4), UINT32_C(0x0035F235), UINT32_C(0x003B3EFE),
6414 UINT32_C(0x00B5687B), UINT32_C(0x007499B6), UINT32_C(0x004AEC1B),
6415 UINT32_C(0x0011D9F3), UINT32_C(0x00F934CA), UINT32_C(0x00626585),
6416 UINT32_C(0x000054A1), UINT32_C(0x0078ADC1)},
6417 {UINT32_C(0x000F1D44), UINT32_C(0x00067701), UINT32_C(0x002F00AB),
6418 UINT32_C(0x008F68D3), UINT32_C(0x001C1C3B), UINT32_C(0x0049876F),
6419 UINT32_C(0x007C5E0C), UINT32_C(0x00958C8A), UINT32_C(0x00585F0E),
6420 UINT32_C(0x003980D2), UINT32_C(0x004C2741)},
6421 {UINT32_C(0x004F0FD3), UINT32_C(0x000519E7), UINT32_C(0x00455DA2),
6422 UINT32_C(0x00E4A2DB), UINT32_C(0x0006A399), UINT32_C(0x005F65BE),
6423 UINT32_C(0x0010C895), UINT32_C(0x00E1E39C), UINT32_C(0x000D2D62),
6424 UINT32_C(0x005489D3), UINT32_C(0x0064F071)}},
6425 {{UINT32_C(0x0075E904), UINT32_C(0x0034221F), UINT32_C(0x006C3082),
6426 UINT32_C(0x001DFF10), UINT32_C(0x007E367A), UINT32_C(0x0044654C),
6427 UINT32_C(0x00214821), UINT32_C(0x0044A5B4), UINT32_C(0x0065B709),
6428 UINT32_C(0x001D42EE), UINT32_C(0x001A97DC)},
6429 {UINT32_C(0x000AD26D), UINT32_C(0x0030E580), UINT32_C(0x006F212B),
6430 UINT32_C(0x00100EE6), UINT32_C(0x000F70F2), UINT32_C(0x007CA3C6),
6431 UINT32_C(0x0017EBC5), UINT32_C(0x00311581), UINT32_C(0x002B7BB5),
6432 UINT32_C(0x00283403), UINT32_C(0x0001A581)},
6433 {UINT32_C(0x009043A2), UINT32_C(0x001B3A77), UINT32_C(0x000FA816),
6434 UINT32_C(0x004B33BF), UINT32_C(0x005044AF), UINT32_C(0x001584E4),
6435 UINT32_C(0x00417440), UINT32_C(0x0006E3D6), UINT32_C(0x00723841),
6436 UINT32_C(0x007F1CF7), UINT32_C(0x000A8A6D)}},
6437 {{UINT32_C(0x0041A857), UINT32_C(0x0034AE73), UINT32_C(0x004BB287),
6438 UINT32_C(0x0086B914), UINT32_C(0x006E11BD), UINT32_C(0x000F0FD1),
6439 UINT32_C(0x003523A3), UINT32_C(0x00860736), UINT32_C(0x00209E71),
6440 UINT32_C(0x0021DE0F), UINT32_C(0x001A4D6B)},
6441 {UINT32_C(0x00F677D7), UINT32_C(0x0048110C), UINT32_C(0x0008F908),
6442 UINT32_C(0x009BD400), UINT32_C(0x006B94AC), UINT32_C(0x0037B8C2),
6443 UINT32_C(0x0049854F), UINT32_C(0x005C4D2F), UINT32_C(0x003BA675),
6444 UINT32_C(0x003C2448), UINT32_C(0x0069DC9E)},
6445 {UINT32_C(0x00025EE8), UINT32_C(0x00384FEB), UINT32_C(0x001C9DA4),
6446 UINT32_C(0x0005A77C), UINT32_C(0x002CEBD8), UINT32_C(0x00253110),
6447 UINT32_C(0x0048F3CD), UINT32_C(0x0045CF49), UINT32_C(0x004771CD),
6448 UINT32_C(0x003F1990), UINT32_C(0x004F6051)}},
6449 {{UINT32_C(0x0003827C), UINT32_C(0x001F112D), UINT32_C(0x0071973A),
6450 UINT32_C(0x0099B096), UINT32_C(0x000C34F8), UINT32_C(0x00397A6A),
6451 UINT32_C(0x007F26ED), UINT32_C(0x00AD0CF1), UINT32_C(0x0069FEEE),
6452 UINT32_C(0x000BB893), UINT32_C(0x00525AC4)},
6453 {UINT32_C(0x001DE590), UINT32_C(0x0063FBAF), UINT32_C(0x0013D7EB),
6454 UINT32_C(0x0042B275), UINT32_C(0x006A1E1B), UINT32_C(0x0010AEC1),
6455 UINT32_C(0x002C78D4), UINT32_C(0x0028C9DF), UINT32_C(0x0045854B),
6456 UINT32_C(0x000789E7), UINT32_C(0x0000074F)},
6457 {UINT32_C(0x008229BF), UINT32_C(0x0069358B), UINT32_C(0x001825AA),
6458 UINT32_C(0x00181405), UINT32_C(0x0073C536), UINT32_C(0x0063CEAE),
6459 UINT32_C(0x0015B3E7), UINT32_C(0x008AFF3F), UINT32_C(0x0010C89E),
6460 UINT32_C(0x001AF589), UINT32_C(0x004E0053)}},
6461 {{UINT32_C(0x0028B9C8), UINT32_C(0x0034B521), UINT32_C(0x003323FB),
6462 UINT32_C(0x00B663B0), UINT32_C(0x004DAAA1), UINT32_C(0x002616C9),
6463 UINT32_C(0x0032ABEB), UINT32_C(0x0040C353), UINT32_C(0x00086B1D),
6464 UINT32_C(0x0036A180), UINT32_C(0x003E458C)},
6465 {UINT32_C(0x00DCF643), UINT32_C(0x002C1001), UINT32_C(0x0052AA3F),
6466 UINT32_C(0x008E9839), UINT32_C(0x004A4E69), UINT32_C(0x001D0E16),
6467 UINT32_C(0x002FBB80), UINT32_C(0x0043D67E), UINT32_C(0x00478B72),
6468 UINT32_C(0x000F9CA3), UINT32_C(0x003AFC42)},
6469 {UINT32_C(0x000DD581), UINT32_C(0x007F85BA), UINT32_C(0x00436D63),
6470 UINT32_C(0x00598F90), UINT32_C(0x0014B661), UINT32_C(0x00306562),
6471 UINT32_C(0x00761E86), UINT32_C(0x006C8505), UINT32_C(0x00568527),
6472 UINT32_C(0x006FDA5A), UINT32_C(0x001ADEA0)}},
6473 {{UINT32_C(0x00890618), UINT32_C(0x000CD682), UINT32_C(0x007E36FF),
6474 UINT32_C(0x00303F12), UINT32_C(0x000B2A6D), UINT32_C(0x00415241),
6475 UINT32_C(0x0025E2C9), UINT32_C(0x00F0E829), UINT32_C(0x003A20B1),
6476 UINT32_C(0x005BC247), UINT32_C(0x004FF913)},
6477 {UINT32_C(0x00C77BF2), UINT32_C(0x004061A1), UINT32_C(0x007197C8),
6478 UINT32_C(0x0031BABD), UINT32_C(0x00096046), UINT32_C(0x0045E643),
6479 UINT32_C(0x006FC909), UINT32_C(0x00088EA6), UINT32_C(0x0070A7CA),
6480 UINT32_C(0x0047B9D0), UINT32_C(0x0050FC48)},
6481 {UINT32_C(0x00FF3B98), UINT32_C(0x0078A423), UINT32_C(0x0012CC47),
6482 UINT32_C(0x00AE776D), UINT32_C(0x0021495E), UINT32_C(0x004A3D73),
6483 UINT32_C(0x00391838), UINT32_C(0x001B0893), UINT32_C(0x000AE103),
6484 UINT32_C(0x005B7AC6), UINT32_C(0x0058F1A9)}},
6485 {{UINT32_C(0x00CAFC7E), UINT32_C(0x006D3D15), UINT32_C(0x003C5E44),
6486 UINT32_C(0x00246F10), UINT32_C(0x00654846), UINT32_C(0x0021C350),
6487 UINT32_C(0x0029B782), UINT32_C(0x000F3BD5), UINT32_C(0x004BA2E1),
6488 UINT32_C(0x000A9813), UINT32_C(0x003DAC06)},
6489 {UINT32_C(0x0081BEA5), UINT32_C(0x005AF750), UINT32_C(0x00231C43),
6490 UINT32_C(0x00546577), UINT32_C(0x00021D5B), UINT32_C(0x00323115),
6491 UINT32_C(0x00360EE5), UINT32_C(0x000B7CC0), UINT32_C(0x0042696D),
6492 UINT32_C(0x0014F38B), UINT32_C(0x00637448)},
6493 {UINT32_C(0x00A10272), UINT32_C(0x0071C42F), UINT32_C(0x005406FB),
6494 UINT32_C(0x000728BE), UINT32_C(0x003FCE1D), UINT32_C(0x00721CC4),
6495 UINT32_C(0x00100233), UINT32_C(0x004A237D), UINT32_C(0x004691A1),
6496 UINT32_C(0x00439B3E), UINT32_C(0x0068BD1A)}},
6497 {{UINT32_C(0x0071251B), UINT32_C(0x00458B01), UINT32_C(0x001E79F8),
6498 UINT32_C(0x00A77A06), UINT32_C(0x0074587F), UINT32_C(0x004DC1C1),
6499 UINT32_C(0x003C2A50), UINT32_C(0x00255231), UINT32_C(0x005C317C),
6500 UINT32_C(0x005F9187), UINT32_C(0x007CF5A9)},
6501 {UINT32_C(0x00098FC2), UINT32_C(0x004404A1), UINT32_C(0x004D04AA),
6502 UINT32_C(0x00464189), UINT32_C(0x0061D090), UINT32_C(0x004E55A9),
6503 UINT32_C(0x0007C50C), UINT32_C(0x00BE825E), UINT32_C(0x00047F09),
6504 UINT32_C(0x000F7FEC), UINT32_C(0x004E42D2)},
6505 {UINT32_C(0x00355E39), UINT32_C(0x002EAC10), UINT32_C(0x00511D7E),
6506 UINT32_C(0x00DF8195), UINT32_C(0x00658D53), UINT32_C(0x007832A7),
6507 UINT32_C(0x00688D4A), UINT32_C(0x00630A34), UINT32_C(0x001BF382),
6508 UINT32_C(0x005EC16E), UINT32_C(0x007B68AD)}},
6509 {{UINT32_C(0x001E2363), UINT32_C(0x0019180C), UINT32_C(0x000DC491),
6510 UINT32_C(0x00624C85), UINT32_C(0x004109E5), UINT32_C(0x006F6F9F),
6511 UINT32_C(0x004721E1), UINT32_C(0x00D89B92), UINT32_C(0x002ACCC1),
6512 UINT32_C(0x0061C123), UINT32_C(0x00181505)},
6513 {UINT32_C(0x005EFABB), UINT32_C(0x007D8985), UINT32_C(0x003C5BC1),
6514 UINT32_C(0x008F46C5), UINT32_C(0x0012B4ED), UINT32_C(0x0064759D),
6515 UINT32_C(0x0058D2A9), UINT32_C(0x00C25CA8), UINT32_C(0x004E6E93),
6516 UINT32_C(0x00503BCA), UINT32_C(0x00512AAA)},
6517 {UINT32_C(0x009D1E14), UINT32_C(0x0074E51E), UINT32_C(0x00245CBE),
6518 UINT32_C(0x00248FE2), UINT32_C(0x0074BDE8), UINT32_C(0x007C074E),
6519 UINT32_C(0x0017A40E), UINT32_C(0x00FF34D1), UINT32_C(0x0057C0A3),
6520 UINT32_C(0x0061B3EC), UINT32_C(0x002677F7)}},
6521 {{UINT32_C(0x00CBF754), UINT32_C(0x0031AE3A), UINT32_C(0x000333B8),
6522 UINT32_C(0x00D4CF78), UINT32_C(0x003E4A56), UINT32_C(0x004E6254),
6523 UINT32_C(0x002FDBFA), UINT32_C(0x00144B0A), UINT32_C(0x0063FB6C),
6524 UINT32_C(0x0001D4D6), UINT32_C(0x007A746B)},
6525 {UINT32_C(0x007361B9), UINT32_C(0x005E8B06), UINT32_C(0x0044E134),
6526 UINT32_C(0x00F4A847), UINT32_C(0x002329D4), UINT32_C(0x0044A5B7),
6527 UINT32_C(0x0044F475), UINT32_C(0x00E61797), UINT32_C(0x0057FB07),
6528 UINT32_C(0x00051722), UINT32_C(0x00241ECD)},
6529 {UINT32_C(0x0022A500), UINT32_C(0x0039A10A), UINT32_C(0x0042D3D5),
6530 UINT32_C(0x00B567D7), UINT32_C(0x0069AA6D), UINT32_C(0x00711215),
6531 UINT32_C(0x002ED8DD), UINT32_C(0x0000F158), UINT32_C(0x006238BE),
6532 UINT32_C(0x005650C3), UINT32_C(0x003D21E8)}},
6533 {{UINT32_C(0x008B1C66), UINT32_C(0x0019194C), UINT32_C(0x0014BFE9),
6534 UINT32_C(0x00748F3D), UINT32_C(0x003CCE8F), UINT32_C(0x0048A87C),
6535 UINT32_C(0x006A1307), UINT32_C(0x006C2B73), UINT32_C(0x002E37A4),
6536 UINT32_C(0x0029162B), UINT32_C(0x0027B4E0)},
6537 {UINT32_C(0x00C21F63), UINT32_C(0x0017955E), UINT32_C(0x0078C143),
6538 UINT32_C(0x00D5E54D), UINT32_C(0x00472F3D), UINT32_C(0x004E389E),
6539 UINT32_C(0x005B4F76), UINT32_C(0x004D23EE), UINT32_C(0x00532138),
6540 UINT32_C(0x00573674), UINT32_C(0x000CEC4B)},
6541 {UINT32_C(0x003DE334), UINT32_C(0x006224BD), UINT32_C(0x000F9C6F),
6542 UINT32_C(0x000A9395), UINT32_C(0x00345EAF), UINT32_C(0x00107910),
6543 UINT32_C(0x0070F64A), UINT32_C(0x00D236DB), UINT32_C(0x0027355D),
6544 UINT32_C(0x00164A6C), UINT32_C(0x007D6D7B)}},
6545 {{UINT32_C(0x008036C4), UINT32_C(0x004A1B91), UINT32_C(0x00471A92),
6546 UINT32_C(0x000371CC), UINT32_C(0x0056DDC0), UINT32_C(0x00130FC6),
6547 UINT32_C(0x00287BA8), UINT32_C(0x00EAE3E3), UINT32_C(0x006A7352),
6548 UINT32_C(0x004599E9), UINT32_C(0x00382164)},
6549 {UINT32_C(0x00B93F79), UINT32_C(0x001E39CD), UINT32_C(0x00201F70),
6550 UINT32_C(0x00EF1A24), UINT32_C(0x00530D3A), UINT32_C(0x005F0647),
6551 UINT32_C(0x00008EE9), UINT32_C(0x00AD3CCB), UINT32_C(0x006C1B3C),
6552 UINT32_C(0x0020B88E), UINT32_C(0x00041C1B)},
6553 {UINT32_C(0x006CAF3D), UINT32_C(0x004A21AC), UINT32_C(0x001CDE34),
6554 UINT32_C(0x0033DD65), UINT32_C(0x005353D1), UINT32_C(0x00584597),
6555 UINT32_C(0x00114182), UINT32_C(0x005CB2D9), UINT32_C(0x0053A5C5),
6556 UINT32_C(0x0071C2D4), UINT32_C(0x00244902)}},
6557 {{UINT32_C(0x00AFA1E1), UINT32_C(0x0064BD11), UINT32_C(0x0014D188),
6558 UINT32_C(0x0002D13D), UINT32_C(0x000E36B8), UINT32_C(0x00354548),
6559 UINT32_C(0x007BB62C), UINT32_C(0x0078DF50), UINT32_C(0x0007E63C),
6560 UINT32_C(0x00056614), UINT32_C(0x003D5281)},
6561 {UINT32_C(0x0028DBA4), UINT32_C(0x0004B80D), UINT32_C(0x004F7FF8),
6562 UINT32_C(0x007AA928), UINT32_C(0x0004ABF1), UINT32_C(0x0023D6FF),
6563 UINT32_C(0x0024B312), UINT32_C(0x00023B8A), UINT32_C(0x003B5EDA),
6564 UINT32_C(0x005AF149), UINT32_C(0x0019FA7B)},
6565 {UINT32_C(0x00FF5820), UINT32_C(0x00358792), UINT32_C(0x0021A28C),
6566 UINT32_C(0x00C51693), UINT32_C(0x000098EE), UINT32_C(0x00034266),
6567 UINT32_C(0x0017723D), UINT32_C(0x00C2DDF5), UINT32_C(0x0000E734),
6568 UINT32_C(0x006DAEF6), UINT32_C(0x0071F7AD)}},
6569 {{UINT32_C(0x002E3AD1), UINT32_C(0x00779201), UINT32_C(0x0068289F),
6570 UINT32_C(0x003F10B0), UINT32_C(0x002706C6), UINT32_C(0x002565B5),
6571 UINT32_C(0x00190C55), UINT32_C(0x0033BD51), UINT32_C(0x000E50F0),
6572 UINT32_C(0x00500819), UINT32_C(0x007C9D08)},
6573 {UINT32_C(0x00FA9D8B), UINT32_C(0x0038DA3F), UINT32_C(0x00693AB6),
6574 UINT32_C(0x00DE9636), UINT32_C(0x005BB3EC), UINT32_C(0x0065B8F5),
6575 UINT32_C(0x00481E55), UINT32_C(0x0061E2C9), UINT32_C(0x001643BF),
6576 UINT32_C(0x00559100), UINT32_C(0x005F79E6)},
6577 {UINT32_C(0x002E392D), UINT32_C(0x001227D4), UINT32_C(0x00293C7B),
6578 UINT32_C(0x00F92994), UINT32_C(0x002FAEE0), UINT32_C(0x00322623),
6579 UINT32_C(0x00434FE2), UINT32_C(0x00199F46), UINT32_C(0x005C180E),
6580 UINT32_C(0x005C3B89), UINT32_C(0x00566D13)}},
6583 {{UINT32_C(0x004EC5D5), UINT32_C(0x00019CD6), UINT32_C(0x000BBD45),
6584 UINT32_C(0x002193AE), UINT32_C(0x003165C6), UINT32_C(0x003D8D74),
6585 UINT32_C(0x0045059C), UINT32_C(0x008CF60C), UINT32_C(0x00487D06),
6586 UINT32_C(0x005A9D09), UINT32_C(0x007FC6E0)},
6587 {UINT32_C(0x0037B42A), UINT32_C(0x0001A576), UINT32_C(0x000A750D),
6588 UINT32_C(0x0045B5DD), UINT32_C(0x006F0E25), UINT32_C(0x001F4ABF),
6589 UINT32_C(0x0056E0BA), UINT32_C(0x0065543B), UINT32_C(0x00564264),
6590 UINT32_C(0x005ADF58), UINT32_C(0x0069B6ED)},
6591 {UINT32_C(0x0008533F), UINT32_C(0x00673ED0), UINT32_C(0x0053205E),
6592 UINT32_C(0x0060EB8B), UINT32_C(0x000C0216), UINT32_C(0x00483015),
6593 UINT32_C(0x001974B0), UINT32_C(0x00610E9B), UINT32_C(0x00116E88),
6594 UINT32_C(0x001B41F9), UINT32_C(0x003650B6)}},
6595 {{UINT32_C(0x001E87C9), UINT32_C(0x00485E07), UINT32_C(0x00473783),
6596 UINT32_C(0x009E4755), UINT32_C(0x0077AAE3), UINT32_C(0x006CF828),
6597 UINT32_C(0x0064BF5B), UINT32_C(0x00DD1614), UINT32_C(0x001F3F82),
6598 UINT32_C(0x000CDC74), UINT32_C(0x005A217D)},
6599 {UINT32_C(0x007E7DC9), UINT32_C(0x004C5775), UINT32_C(0x00577E73),
6600 UINT32_C(0x0054AC09), UINT32_C(0x00692B30), UINT32_C(0x005074AE),
6601 UINT32_C(0x0047FE74), UINT32_C(0x00814E6D), UINT32_C(0x00611400),
6602 UINT32_C(0x0054CC45), UINT32_C(0x0015E56A)},
6603 {UINT32_C(0x0015BF7F), UINT32_C(0x00720BB8), UINT32_C(0x00128FA3),
6604 UINT32_C(0x00EFF525), UINT32_C(0x002C2B16), UINT32_C(0x000032B7),
6605 UINT32_C(0x0056FA97), UINT32_C(0x006F11AE), UINT32_C(0x0021850D),
6606 UINT32_C(0x00755623), UINT32_C(0x0004F475)}},
6607 {{UINT32_C(0x00DC22CC), UINT32_C(0x005EC978), UINT32_C(0x0075EFAB),
6608 UINT32_C(0x00A67308), UINT32_C(0x001E17A7), UINT32_C(0x00471117),
6609 UINT32_C(0x003D0D24), UINT32_C(0x0002B875), UINT32_C(0x005CD15C),
6610 UINT32_C(0x00791ED0), UINT32_C(0x00519998)},
6611 {UINT32_C(0x006DFC80), UINT32_C(0x003F2D4F), UINT32_C(0x00325346),
6612 UINT32_C(0x00CF12E4), UINT32_C(0x000EF0D1), UINT32_C(0x001D644B),
6613 UINT32_C(0x006A72BB), UINT32_C(0x00E463A5), UINT32_C(0x00393A41),
6614 UINT32_C(0x003CFAB9), UINT32_C(0x0045AEDD)},
6615 {UINT32_C(0x008CF232), UINT32_C(0x00355CF6), UINT32_C(0x0018330B),
6616 UINT32_C(0x00E357D6), UINT32_C(0x002E9F65), UINT32_C(0x00192AA3),
6617 UINT32_C(0x0050E31A), UINT32_C(0x00542788), UINT32_C(0x005C03B4),
6618 UINT32_C(0x0016A4C7), UINT32_C(0x004D85E7)}},
6619 {{UINT32_C(0x005E1B7C), UINT32_C(0x005396EB), UINT32_C(0x002953AC),
6620 UINT32_C(0x0066F21B), UINT32_C(0x000744EB), UINT32_C(0x002BB57E),
6621 UINT32_C(0x00777EC0), UINT32_C(0x000C0908), UINT32_C(0x0063DFBF),
6622 UINT32_C(0x0019D0E1), UINT32_C(0x0053259A)},
6623 {UINT32_C(0x00092AA9), UINT32_C(0x006D7967), UINT32_C(0x007A34E9),
6624 UINT32_C(0x0088833B), UINT32_C(0x007C72DF), UINT32_C(0x00154B92),
6625 UINT32_C(0x0004BEAB), UINT32_C(0x00709C21), UINT32_C(0x001A33F0),
6626 UINT32_C(0x007A15C7), UINT32_C(0x007CB81A)},
6627 {UINT32_C(0x00427117), UINT32_C(0x0060010D), UINT32_C(0x002FB59E),
6628 UINT32_C(0x0081DF74), UINT32_C(0x001C3AFF), UINT32_C(0x00325E38),
6629 UINT32_C(0x003E9EB8), UINT32_C(0x00AFA8A7), UINT32_C(0x002A7623),
6630 UINT32_C(0x001940EC), UINT32_C(0x00678A03)}},
6631 {{UINT32_C(0x0089D0DA), UINT32_C(0x005DD15D), UINT32_C(0x0007F023),
6632 UINT32_C(0x0084B837), UINT32_C(0x0059A36B), UINT32_C(0x0014C4F9),
6633 UINT32_C(0x005A10B9), UINT32_C(0x00EEA8E6), UINT32_C(0x0032C712),
6634 UINT32_C(0x00207104), UINT32_C(0x0051CC16)},
6635 {UINT32_C(0x00788203), UINT32_C(0x005BFACD), UINT32_C(0x0034A954),
6636 UINT32_C(0x00E0855B), UINT32_C(0x007F6BD9), UINT32_C(0x003EAB3A),
6637 UINT32_C(0x0061F2A3), UINT32_C(0x004BF5E9), UINT32_C(0x00203A8B),
6638 UINT32_C(0x007B37C8), UINT32_C(0x00403792)},
6639 {UINT32_C(0x0091D84F), UINT32_C(0x006D1BA7), UINT32_C(0x0036B343),
6640 UINT32_C(0x00319941), UINT32_C(0x000AB9F0), UINT32_C(0x007A1DC1),
6641 UINT32_C(0x0031981C), UINT32_C(0x00F43266), UINT32_C(0x0008BB75),
6642 UINT32_C(0x00485DAF), UINT32_C(0x000A9D74)}},
6643 {{UINT32_C(0x00243625), UINT32_C(0x005BB841), UINT32_C(0x00525C95),
6644 UINT32_C(0x00BC116B), UINT32_C(0x003839C3), UINT32_C(0x0041EB1B),
6645 UINT32_C(0x00221F6B), UINT32_C(0x004EC4AF), UINT32_C(0x006D762B),
6646 UINT32_C(0x005C54FC), UINT32_C(0x007A1F82)},
6647 {UINT32_C(0x00C26515), UINT32_C(0x0000ED4C), UINT32_C(0x001E3B09),
6648 UINT32_C(0x000BEE59), UINT32_C(0x0063B3C5), UINT32_C(0x00275D84),
6649 UINT32_C(0x005756AC), UINT32_C(0x00AF183D), UINT32_C(0x0009020F),
6650 UINT32_C(0x006E34C7), UINT32_C(0x004DC0C8)},
6651 {UINT32_C(0x005B4EB0), UINT32_C(0x0039BA12), UINT32_C(0x000B792C),
6652 UINT32_C(0x00D6B962), UINT32_C(0x003DFD9C), UINT32_C(0x004C2A8A),
6653 UINT32_C(0x0022A010), UINT32_C(0x0067AFC9), UINT32_C(0x0057241F),
6654 UINT32_C(0x003A2810), UINT32_C(0x005C0C2A)}},
6655 {{UINT32_C(0x000F4D05), UINT32_C(0x001E1BA9), UINT32_C(0x003631A2),
6656 UINT32_C(0x002B29CE), UINT32_C(0x007696F1), UINT32_C(0x00313416),
6657 UINT32_C(0x001EB6D3), UINT32_C(0x008D3460), UINT32_C(0x003364E8),
6658 UINT32_C(0x000429EE), UINT32_C(0x007E4FF6)},
6659 {UINT32_C(0x00B98C72), UINT32_C(0x0043B1EA), UINT32_C(0x001A581F),
6660 UINT32_C(0x00295970), UINT32_C(0x0010F065), UINT32_C(0x0039E01E),
6661 UINT32_C(0x002E33BA), UINT32_C(0x0047DF1A), UINT32_C(0x0041422E),
6662 UINT32_C(0x005A3851), UINT32_C(0x003FA8FF)},
6663 {UINT32_C(0x00A29B8E), UINT32_C(0x00702100), UINT32_C(0x001DFDFB),
6664 UINT32_C(0x006CA23F), UINT32_C(0x004F967B), UINT32_C(0x00417B94),
6665 UINT32_C(0x0073DD0F), UINT32_C(0x00D08DB3), UINT32_C(0x001C4006),
6666 UINT32_C(0x003F92DD), UINT32_C(0x000F2874)}},
6667 {{UINT32_C(0x008D5AC8), UINT32_C(0x0031FE77), UINT32_C(0x001EE7B5),
6668 UINT32_C(0x0017DDC8), UINT32_C(0x0010F7EB), UINT32_C(0x0078D778),
6669 UINT32_C(0x0051CF94), UINT32_C(0x00737A58), UINT32_C(0x002F2CA5),
6670 UINT32_C(0x00314107), UINT32_C(0x003BD0E4)},
6671 {UINT32_C(0x00708B31), UINT32_C(0x006E4EE5), UINT32_C(0x0072B5A8),
6672 UINT32_C(0x00B52995), UINT32_C(0x001B7B7D), UINT32_C(0x002853F5),
6673 UINT32_C(0x0071F2D3), UINT32_C(0x0090F660), UINT32_C(0x004E8BAE),
6674 UINT32_C(0x002AEB93), UINT32_C(0x007FE004)},
6675 {UINT32_C(0x0074B2E7), UINT32_C(0x0036F8CC), UINT32_C(0x005A0B4F),
6676 UINT32_C(0x006AC18C), UINT32_C(0x0023E1D0), UINT32_C(0x0018985D),
6677 UINT32_C(0x0044A4EA), UINT32_C(0x00EAD750), UINT32_C(0x001739B5),
6678 UINT32_C(0x00259016), UINT32_C(0x0069AD16)}},
6679 {{UINT32_C(0x00236C6C), UINT32_C(0x002BDCF8), UINT32_C(0x00737342),
6680 UINT32_C(0x00FFE743), UINT32_C(0x0067A4D9), UINT32_C(0x0066D9C1),
6681 UINT32_C(0x00681F98), UINT32_C(0x00599DED), UINT32_C(0x0057B074),
6682 UINT32_C(0x001B308C), UINT32_C(0x0056660C)},
6683 {UINT32_C(0x008B1685), UINT32_C(0x0027EA30), UINT32_C(0x0033CA2D),
6684 UINT32_C(0x0098682C), UINT32_C(0x003F67B0), UINT32_C(0x000C48E9),
6685 UINT32_C(0x0068A704), UINT32_C(0x001C6E9D), UINT32_C(0x00123D06),
6686 UINT32_C(0x0050A933), UINT32_C(0x0053C6D2)},
6687 {UINT32_C(0x00917431), UINT32_C(0x002F64FB), UINT32_C(0x00755E9F),
6688 UINT32_C(0x005D5B9F), UINT32_C(0x006E0959), UINT32_C(0x00068928),
6689 UINT32_C(0x00509EB9), UINT32_C(0x009B4E5E), UINT32_C(0x0000998B),
6690 UINT32_C(0x0008DAD5), UINT32_C(0x00166125)}},
6691 {{UINT32_C(0x00074C2E), UINT32_C(0x00652B12), UINT32_C(0x00202F3C),
6692 UINT32_C(0x0042EBC1), UINT32_C(0x00500167), UINT32_C(0x005CDA15),
6693 UINT32_C(0x001381DA), UINT32_C(0x00CC99F2), UINT32_C(0x005723CA),
6694 UINT32_C(0x001A8C3B), UINT32_C(0x003D5615)},
6695 {UINT32_C(0x00F1A960), UINT32_C(0x007380F6), UINT32_C(0x007009E1),
6696 UINT32_C(0x002EF85B), UINT32_C(0x003B246B), UINT32_C(0x0041405A),
6697 UINT32_C(0x001314CB), UINT32_C(0x009FDCD0), UINT32_C(0x0077491F),
6698 UINT32_C(0x003266F0), UINT32_C(0x00760D83)},
6699 {UINT32_C(0x00C7818E), UINT32_C(0x007864C2), UINT32_C(0x00244BD0),
6700 UINT32_C(0x00F38B08), UINT32_C(0x00688F96), UINT32_C(0x0075C705),
6701 UINT32_C(0x00278414), UINT32_C(0x00B2BFF0), UINT32_C(0x0067126E),
6702 UINT32_C(0x007B7F7E), UINT32_C(0x00078584)}},
6703 {{UINT32_C(0x00FE7A46), UINT32_C(0x005584A0), UINT32_C(0x005CDD0D),
6704 UINT32_C(0x004CF5A8), UINT32_C(0x0019CFA7), UINT32_C(0x00087268),
6705 UINT32_C(0x007FF3F3), UINT32_C(0x0087ACFD), UINT32_C(0x0017BD41),
6706 UINT32_C(0x004A35AA), UINT32_C(0x0014C1BD)},
6707 {UINT32_C(0x005A4052), UINT32_C(0x0032A135), UINT32_C(0x007056C3),
6708 UINT32_C(0x0072F85C), UINT32_C(0x0024A79D), UINT32_C(0x003D7320),
6709 UINT32_C(0x0007F20D), UINT32_C(0x00BEA269), UINT32_C(0x0032F584),
6710 UINT32_C(0x00557016), UINT32_C(0x0009FC2A)},
6711 {UINT32_C(0x006E58DD), UINT32_C(0x00414D93), UINT32_C(0x001D725A),
6712 UINT32_C(0x00A5AB22), UINT32_C(0x000AD82C), UINT32_C(0x00613758),
6713 UINT32_C(0x00773B55), UINT32_C(0x00D581E2), UINT32_C(0x006342F0),
6714 UINT32_C(0x0022FB1A), UINT32_C(0x0028348D)}},
6715 {{UINT32_C(0x00940FFC), UINT32_C(0x006CC86D), UINT32_C(0x0033CE22),
6716 UINT32_C(0x00A629FD), UINT32_C(0x0032CFBE), UINT32_C(0x0011788D),
6717 UINT32_C(0x0027D4E5), UINT32_C(0x0043AC5A), UINT32_C(0x003CEEDA),
6718 UINT32_C(0x000057AA), UINT32_C(0x00614643)},
6719 {UINT32_C(0x00312B0D), UINT32_C(0x003C3AC9), UINT32_C(0x00126EE8),
6720 UINT32_C(0x003F24AF), UINT32_C(0x0006CC19), UINT32_C(0x00656F4F),
6721 UINT32_C(0x004E91CF), UINT32_C(0x001EC679), UINT32_C(0x0010294E),
6722 UINT32_C(0x0023F5E9), UINT32_C(0x00181E45)},
6723 {UINT32_C(0x008C28C0), UINT32_C(0x0016213D), UINT32_C(0x0010311C),
6724 UINT32_C(0x00744F39), UINT32_C(0x006CEA8C), UINT32_C(0x0066FA80),
6725 UINT32_C(0x005E3FA5), UINT32_C(0x001D61EB), UINT32_C(0x001E0217),
6726 UINT32_C(0x002F43D5), UINT32_C(0x001EAA47)}},
6727 {{UINT32_C(0x00854120), UINT32_C(0x005AA732), UINT32_C(0x00608D63),
6728 UINT32_C(0x003180C7), UINT32_C(0x00513CB6), UINT32_C(0x0013362E),
6729 UINT32_C(0x00492465), UINT32_C(0x00A81D33), UINT32_C(0x0038349B),
6730 UINT32_C(0x004C1B24), UINT32_C(0x0061B37A)},
6731 {UINT32_C(0x00B13B17), UINT32_C(0x003AC756), UINT32_C(0x004C7642),
6732 UINT32_C(0x0067AC7F), UINT32_C(0x003F23FE), UINT32_C(0x0058AA8A),
6733 UINT32_C(0x000B0977), UINT32_C(0x001D605C), UINT32_C(0x00713AD3),
6734 UINT32_C(0x0060BA46), UINT32_C(0x0041F85A)},
6735 {UINT32_C(0x00E37216), UINT32_C(0x0043A345), UINT32_C(0x00223407),
6736 UINT32_C(0x00256265), UINT32_C(0x0011C42F), UINT32_C(0x00138466),
6737 UINT32_C(0x004733CC), UINT32_C(0x003535EC), UINT32_C(0x0001BC86),
6738 UINT32_C(0x003D1B86), UINT32_C(0x004AE885)}},
6739 {{UINT32_C(0x00DC7159), UINT32_C(0x001767D1), UINT32_C(0x007AE0AB),
6740 UINT32_C(0x000878A1), UINT32_C(0x004FB364), UINT32_C(0x0033B0EF),
6741 UINT32_C(0x00742CF7), UINT32_C(0x00C6A756), UINT32_C(0x0078F550),
6742 UINT32_C(0x00711F81), UINT32_C(0x0065A975)},
6743 {UINT32_C(0x00439414), UINT32_C(0x0015AFCF), UINT32_C(0x007EE055),
6744 UINT32_C(0x00DD71C8), UINT32_C(0x0045F656), UINT32_C(0x00624A54),
6745 UINT32_C(0x003005FC), UINT32_C(0x00BC7324), UINT32_C(0x0055842E),
6746 UINT32_C(0x00165223), UINT32_C(0x0037D7D6)},
6747 {UINT32_C(0x0019F5F5), UINT32_C(0x0020DA89), UINT32_C(0x006C89E9),
6748 UINT32_C(0x00F41904), UINT32_C(0x003D42D9), UINT32_C(0x0055B010),
6749 UINT32_C(0x00175AA4), UINT32_C(0x00B1A716), UINT32_C(0x000083AA),
6750 UINT32_C(0x000A3EEC), UINT32_C(0x00170791)}},
6751 {{UINT32_C(0x004FE6CC), UINT32_C(0x0027F794), UINT32_C(0x001DEE50),
6752 UINT32_C(0x001D47C8), UINT32_C(0x00482A07), UINT32_C(0x00728F59),
6753 UINT32_C(0x002E9AFB), UINT32_C(0x00416429), UINT32_C(0x00429086),
6754 UINT32_C(0x002A42B2), UINT32_C(0x0004C02A)},
6755 {UINT32_C(0x004B5C0A), UINT32_C(0x0035BDD6), UINT32_C(0x001FE687),
6756 UINT32_C(0x0027AF73), UINT32_C(0x001A6D1A), UINT32_C(0x000FBB3C),
6757 UINT32_C(0x00213872), UINT32_C(0x00EC16E6), UINT32_C(0x00636F30),
6758 UINT32_C(0x00415394), UINT32_C(0x0012E98D)},
6759 {UINT32_C(0x008D471A), UINT32_C(0x0069E551), UINT32_C(0x00493B23),
6760 UINT32_C(0x006ED1B7), UINT32_C(0x0047A3E8), UINT32_C(0x00249EC8),
6761 UINT32_C(0x003D1AD9), UINT32_C(0x0023243A), UINT32_C(0x0078E657),
6762 UINT32_C(0x007AC870), UINT32_C(0x0039DDDE)}},
6763 {{UINT32_C(0x00775995), UINT32_C(0x004A7A1C), UINT32_C(0x00706EC4),
6764 UINT32_C(0x005F75E2), UINT32_C(0x0023C9C5), UINT32_C(0x0024BCC8),
6765 UINT32_C(0x007DC9AC), UINT32_C(0x001AFD8F), UINT32_C(0x006B47B9),
6766 UINT32_C(0x004747AD), UINT32_C(0x007B084D)},
6767 {UINT32_C(0x000A9B5C), UINT32_C(0x007354D6), UINT32_C(0x006AB188),
6768 UINT32_C(0x00A35212), UINT32_C(0x003BDF54), UINT32_C(0x00027ACE),
6769 UINT32_C(0x002AEF52), UINT32_C(0x00C45137), UINT32_C(0x0058980E),
6770 UINT32_C(0x0050F4F0), UINT32_C(0x003E8EEE)},
6771 {UINT32_C(0x00EB4040), UINT32_C(0x00618F66), UINT32_C(0x0031BE2F),
6772 UINT32_C(0x00A1EAB0), UINT32_C(0x00038AF5), UINT32_C(0x0001EC6C),
6773 UINT32_C(0x0007421A), UINT32_C(0x0051B097), UINT32_C(0x0043B013),
6774 UINT32_C(0x0060ED3F), UINT32_C(0x0036AC22)}},
6777 {{UINT32_C(0x00A77DAC), UINT32_C(0x001DB3FD), UINT32_C(0x00389F54),
6778 UINT32_C(0x00564F6D), UINT32_C(0x0063CF36), UINT32_C(0x001C46B6),
6779 UINT32_C(0x00311686), UINT32_C(0x00E982B7), UINT32_C(0x00027D0F),
6780 UINT32_C(0x0050362C), UINT32_C(0x001AEA89)},
6781 {UINT32_C(0x0002BC8A), UINT32_C(0x0036E565), UINT32_C(0x00342121),
6782 UINT32_C(0x00ED769D), UINT32_C(0x002A92C3), UINT32_C(0x00325573),
6783 UINT32_C(0x0018B0E6), UINT32_C(0x00F11ADF), UINT32_C(0x004B976B),
6784 UINT32_C(0x00069633), UINT32_C(0x004FFC55)},
6785 {UINT32_C(0x00FD2FC2), UINT32_C(0x00401B07), UINT32_C(0x00294102),
6786 UINT32_C(0x008EA5E0), UINT32_C(0x0030664D), UINT32_C(0x00142EC3),
6787 UINT32_C(0x003FE051), UINT32_C(0x00F56D80), UINT32_C(0x0039FEE3),
6788 UINT32_C(0x00000AEB), UINT32_C(0x006D0C5F)}},
6789 {{UINT32_C(0x00DD75D0), UINT32_C(0x0044A3C3), UINT32_C(0x005A506D),
6790 UINT32_C(0x00EC37FD), UINT32_C(0x00316AD7), UINT32_C(0x0000D14B),
6791 UINT32_C(0x00204476), UINT32_C(0x0051C697), UINT32_C(0x00083305),
6792 UINT32_C(0x0058D9B1), UINT32_C(0x0070999F)},
6793 {UINT32_C(0x00E5E93B), UINT32_C(0x006C0468), UINT32_C(0x0009400E),
6794 UINT32_C(0x0075F8FF), UINT32_C(0x0035F1A4), UINT32_C(0x00506173),
6795 UINT32_C(0x002364E5), UINT32_C(0x00414D87), UINT32_C(0x0008B606),
6796 UINT32_C(0x00686394), UINT32_C(0x006AA160)},
6797 {UINT32_C(0x006BD2E2), UINT32_C(0x007A2B7F), UINT32_C(0x005F146B),
6798 UINT32_C(0x00369239), UINT32_C(0x00079C56), UINT32_C(0x00062C62),
6799 UINT32_C(0x0077B021), UINT32_C(0x003A29B7), UINT32_C(0x002867FF),
6800 UINT32_C(0x0055BBB5), UINT32_C(0x0005D042)}},
6801 {{UINT32_C(0x00D8B383), UINT32_C(0x007DD79F), UINT32_C(0x00789E04),
6802 UINT32_C(0x00F01FC3), UINT32_C(0x0009A138), UINT32_C(0x00652EF9),
6803 UINT32_C(0x0004B8F0), UINT32_C(0x00CD2D9B), UINT32_C(0x002A8B21),
6804 UINT32_C(0x00711CBB), UINT32_C(0x003F479B)},
6805 {UINT32_C(0x0084BAF3), UINT32_C(0x00077832), UINT32_C(0x005C239A),
6806 UINT32_C(0x0060F9F5), UINT32_C(0x00157D11), UINT32_C(0x004B04C3),
6807 UINT32_C(0x00398E89), UINT32_C(0x00DFDB89), UINT32_C(0x004B12EE),
6808 UINT32_C(0x002B1159), UINT32_C(0x0070A1B8)},
6809 {UINT32_C(0x00034A6C), UINT32_C(0x004C89E9), UINT32_C(0x0022DB26),
6810 UINT32_C(0x00C601C3), UINT32_C(0x0032D1E3), UINT32_C(0x002503F8),
6811 UINT32_C(0x00632E24), UINT32_C(0x00EA95FF), UINT32_C(0x000FDA31),
6812 UINT32_C(0x002551E5), UINT32_C(0x004F9CB2)}},
6813 {{UINT32_C(0x00862AF4), UINT32_C(0x00210FBD), UINT32_C(0x001E6C80),
6814 UINT32_C(0x00400C9B), UINT32_C(0x000AA70B), UINT32_C(0x00736A0A),
6815 UINT32_C(0x005A2C84), UINT32_C(0x00C59BAC), UINT32_C(0x000BB281),
6816 UINT32_C(0x002CF44A), UINT32_C(0x0061244E)},
6817 {UINT32_C(0x00856415), UINT32_C(0x0016B2C8), UINT32_C(0x00735666),
6818 UINT32_C(0x001D23DD), UINT32_C(0x001134A9), UINT32_C(0x0017A1D4),
6819 UINT32_C(0x0026D1CE), UINT32_C(0x00EECC13), UINT32_C(0x0049B200),
6820 UINT32_C(0x00153F17), UINT32_C(0x0011DDAE)},
6821 {UINT32_C(0x00007750), UINT32_C(0x001134B0), UINT32_C(0x004BF17D),
6822 UINT32_C(0x00D2423A), UINT32_C(0x003D2D7B), UINT32_C(0x00085F31),
6823 UINT32_C(0x00227CDF), UINT32_C(0x00654CD2), UINT32_C(0x00082CCF),
6824 UINT32_C(0x007C9CA4), UINT32_C(0x004C47BB)}},
6825 {{UINT32_C(0x00362E13), UINT32_C(0x003A337C), UINT32_C(0x002BBA20),
6826 UINT32_C(0x0001856C), UINT32_C(0x0002C1DE), UINT32_C(0x000E51A8),
6827 UINT32_C(0x00457B9D), UINT32_C(0x0057882E), UINT32_C(0x0037807D),
6828 UINT32_C(0x0015B24A), UINT32_C(0x001A74BE)},
6829 {UINT32_C(0x003DB4CB), UINT32_C(0x004A35FE), UINT32_C(0x003DBBAB),
6830 UINT32_C(0x007E3023), UINT32_C(0x00194FC7), UINT32_C(0x0012B3C2),
6831 UINT32_C(0x00776FBF), UINT32_C(0x001E11B7), UINT32_C(0x002DB7AA),
6832 UINT32_C(0x001DED18), UINT32_C(0x0069ABF1)},
6833 {UINT32_C(0x005FE93D), UINT32_C(0x000BDB4C), UINT32_C(0x00250B7A),
6834 UINT32_C(0x008A93E9), UINT32_C(0x006F3CAC), UINT32_C(0x0003D972),
6835 UINT32_C(0x0057B7D4), UINT32_C(0x00D0FA5F), UINT32_C(0x0051BCDF),
6836 UINT32_C(0x0037A606), UINT32_C(0x0046594A)}},
6837 {{UINT32_C(0x00FD1F79), UINT32_C(0x00305A30), UINT32_C(0x000AD2AE),
6838 UINT32_C(0x00BFF664), UINT32_C(0x002CE671), UINT32_C(0x006F9E53),
6839 UINT32_C(0x00242322), UINT32_C(0x000EB83C), UINT32_C(0x000DA108),
6840 UINT32_C(0x007B1505), UINT32_C(0x001BB588)},
6841 {UINT32_C(0x00D17F2A), UINT32_C(0x0005A272), UINT32_C(0x0023C922),
6842 UINT32_C(0x00F5BEA6), UINT32_C(0x00534FEC), UINT32_C(0x00201847),
6843 UINT32_C(0x0057D139), UINT32_C(0x00553AC8), UINT32_C(0x0038D49D),
6844 UINT32_C(0x000D9A41), UINT32_C(0x0023FA44)},
6845 {UINT32_C(0x00A4394C), UINT32_C(0x001C1150), UINT32_C(0x000C4BC9),
6846 UINT32_C(0x0013E6EB), UINT32_C(0x0030FD03), UINT32_C(0x005496B5),
6847 UINT32_C(0x002200CE), UINT32_C(0x009477CB), UINT32_C(0x00167FB8),
6848 UINT32_C(0x001C4D58), UINT32_C(0x004FD444)}},
6849 {{UINT32_C(0x00D5EEEC), UINT32_C(0x0038E42A), UINT32_C(0x005A4364),
6850 UINT32_C(0x00980627), UINT32_C(0x007F2577), UINT32_C(0x003612FD),
6851 UINT32_C(0x004E0E1F), UINT32_C(0x0074D370), UINT32_C(0x00528EA6),
6852 UINT32_C(0x00018673), UINT32_C(0x004D7509)},
6853 {UINT32_C(0x0029610F), UINT32_C(0x004535B8), UINT32_C(0x00041762),
6854 UINT32_C(0x008EF8FD), UINT32_C(0x002AA59D), UINT32_C(0x00083B18),
6855 UINT32_C(0x00479122), UINT32_C(0x005A4922), UINT32_C(0x002CECA2),
6856 UINT32_C(0x00256BF4), UINT32_C(0x0043B7C3)},
6857 {UINT32_C(0x00B47D51), UINT32_C(0x00748FB4), UINT32_C(0x00584310),
6858 UINT32_C(0x00EE3A6C), UINT32_C(0x005E556A), UINT32_C(0x0052BA2B),
6859 UINT32_C(0x00500FBB), UINT32_C(0x00A9860A), UINT32_C(0x007A7128),
6860 UINT32_C(0x000D1669), UINT32_C(0x002C17E0)}},
6861 {{UINT32_C(0x0007B0B0), UINT32_C(0x005AEDEE), UINT32_C(0x0076ED54),
6862 UINT32_C(0x00274E51), UINT32_C(0x007BD17E), UINT32_C(0x000BE439),
6863 UINT32_C(0x000ED5DB), UINT32_C(0x00D7925E), UINT32_C(0x003F2A50),
6864 UINT32_C(0x002F0773), UINT32_C(0x003546F9)},
6865 {UINT32_C(0x001B8BC5), UINT32_C(0x00567960), UINT32_C(0x0038FA10),
6866 UINT32_C(0x00C2575C), UINT32_C(0x0027332E), UINT32_C(0x003071D4),
6867 UINT32_C(0x0078A9F6), UINT32_C(0x00BCAE5E), UINT32_C(0x00760FF1),
6868 UINT32_C(0x000E8EC0), UINT32_C(0x006EA98F)},
6869 {UINT32_C(0x00676ADD), UINT32_C(0x004ED26F), UINT32_C(0x0030B66C),
6870 UINT32_C(0x00E96FB8), UINT32_C(0x0055C569), UINT32_C(0x00323FB1),
6871 UINT32_C(0x00440986), UINT32_C(0x00F3E007), UINT32_C(0x005F14FE),
6872 UINT32_C(0x000E5FD2), UINT32_C(0x00585D5A)}},
6873 {{UINT32_C(0x0032D10F), UINT32_C(0x00607846), UINT32_C(0x00476A55),
6874 UINT32_C(0x00FE8A15), UINT32_C(0x0076749E), UINT32_C(0x00385608),
6875 UINT32_C(0x0029E6F6), UINT32_C(0x0098FFAC), UINT32_C(0x004086D0),
6876 UINT32_C(0x00587F0C), UINT32_C(0x0048DEFF)},
6877 {UINT32_C(0x008F82EA), UINT32_C(0x00011EC5), UINT32_C(0x001CAAB9),
6878 UINT32_C(0x00B6A781), UINT32_C(0x000436C9), UINT32_C(0x005DDE65),
6879 UINT32_C(0x002E38F8), UINT32_C(0x003A69F4), UINT32_C(0x003DF1D2),
6880 UINT32_C(0x0026F1E7), UINT32_C(0x003D5D6D)},
6881 {UINT32_C(0x007322DD), UINT32_C(0x001FFAF0), UINT32_C(0x0012A21B),
6882 UINT32_C(0x003853AE), UINT32_C(0x0001D98A), UINT32_C(0x0000748E),
6883 UINT32_C(0x00667AE8), UINT32_C(0x002F7BE9), UINT32_C(0x001686BF),
6884 UINT32_C(0x00050052), UINT32_C(0x0079765D)}},
6885 {{UINT32_C(0x00267E76), UINT32_C(0x000F5A32), UINT32_C(0x00798CB2),
6886 UINT32_C(0x0086E395), UINT32_C(0x00005266), UINT32_C(0x0025806B),
6887 UINT32_C(0x007EE459), UINT32_C(0x001EF2A7), UINT32_C(0x00034FD1),
6888 UINT32_C(0x0018C3F9), UINT32_C(0x0002FCBE)},
6889 {UINT32_C(0x004C278B), UINT32_C(0x0025C270), UINT32_C(0x00642402),
6890 UINT32_C(0x0024F47B), UINT32_C(0x006E96A1), UINT32_C(0x006B67FC),
6891 UINT32_C(0x00446A7C), UINT32_C(0x009B9BAB), UINT32_C(0x00774C2A),
6892 UINT32_C(0x005B2890), UINT32_C(0x0007534E)},
6893 {UINT32_C(0x00979647), UINT32_C(0x003D9A12), UINT32_C(0x0009C489),
6894 UINT32_C(0x002D6F0A), UINT32_C(0x007ED7E2), UINT32_C(0x004A5B1B),
6895 UINT32_C(0x005C265E), UINT32_C(0x006AF72E), UINT32_C(0x003BFD06),
6896 UINT32_C(0x0019EE72), UINT32_C(0x002BC98A)}},
6897 {{UINT32_C(0x0036094F), UINT32_C(0x0053D51E), UINT32_C(0x0039DA8E),
6898 UINT32_C(0x00C24407), UINT32_C(0x00754444), UINT32_C(0x00541686),
6899 UINT32_C(0x0038413C), UINT32_C(0x003D42D5), UINT32_C(0x002B576F),
6900 UINT32_C(0x0025B7F0), UINT32_C(0x00037AE8)},
6901 {UINT32_C(0x00FF6011), UINT32_C(0x00739A4B), UINT32_C(0x002CFD0E),
6902 UINT32_C(0x0034CBE5), UINT32_C(0x001C69C4), UINT32_C(0x00183B00),
6903 UINT32_C(0x0070A07F), UINT32_C(0x00416B07), UINT32_C(0x001873B9),
6904 UINT32_C(0x004C82C4), UINT32_C(0x0012AF7C)},
6905 {UINT32_C(0x009DAB06), UINT32_C(0x00006525), UINT32_C(0x005F4AC2),
6906 UINT32_C(0x0007B1CD), UINT32_C(0x0025B80B), UINT32_C(0x006B0D4A),
6907 UINT32_C(0x0017A0F3), UINT32_C(0x005371E3), UINT32_C(0x00786EF8),
6908 UINT32_C(0x005F7C4F), UINT32_C(0x0060CA6A)}},
6909 {{UINT32_C(0x00D21942), UINT32_C(0x0071B130), UINT32_C(0x0010AF58),
6910 UINT32_C(0x0032F341), UINT32_C(0x0073BD94), UINT32_C(0x0005C17D),
6911 UINT32_C(0x0052C1D1), UINT32_C(0x00AC355D), UINT32_C(0x007A20DB),
6912 UINT32_C(0x0041259A), UINT32_C(0x0044FFAB)},
6913 {UINT32_C(0x006E331F), UINT32_C(0x007C1495), UINT32_C(0x00648A89),
6914 UINT32_C(0x00C406A1), UINT32_C(0x000F1EB7), UINT32_C(0x0031E5FB),
6915 UINT32_C(0x006C8D65), UINT32_C(0x00C6C865), UINT32_C(0x004B7DF2),
6916 UINT32_C(0x0079769E), UINT32_C(0x002083D4)},
6917 {UINT32_C(0x00980997), UINT32_C(0x00485E01), UINT32_C(0x000FDD04),
6918 UINT32_C(0x00404293), UINT32_C(0x001BE19E), UINT32_C(0x00079D78),
6919 UINT32_C(0x0058EB9B), UINT32_C(0x005DBD87), UINT32_C(0x00702A47),
6920 UINT32_C(0x0039F856), UINT32_C(0x000ADFA8)}},
6921 {{UINT32_C(0x00601C16), UINT32_C(0x006BAD25), UINT32_C(0x000B27D9),
6922 UINT32_C(0x003CE316), UINT32_C(0x000BF903), UINT32_C(0x00305942),
6923 UINT32_C(0x0055AA45), UINT32_C(0x006C251C), UINT32_C(0x001C0764),
6924 UINT32_C(0x004DB871), UINT32_C(0x006990D9)},
6925 {UINT32_C(0x0035029C), UINT32_C(0x0056F54C), UINT32_C(0x0071AAA5),
6926 UINT32_C(0x003BB302), UINT32_C(0x00511665), UINT32_C(0x004B1D6D),
6927 UINT32_C(0x00792CCE), UINT32_C(0x009D6482), UINT32_C(0x005F2322),
6928 UINT32_C(0x0060FBFB), UINT32_C(0x003DAEFF)},
6929 {UINT32_C(0x005DFF91), UINT32_C(0x007B3C15), UINT32_C(0x003C73C5),
6930 UINT32_C(0x0099D915), UINT32_C(0x0047AF99), UINT32_C(0x005655E6),
6931 UINT32_C(0x001004A5), UINT32_C(0x001F3259), UINT32_C(0x0050988B),
6932 UINT32_C(0x005D60E0), UINT32_C(0x002BE896)}},
6933 {{UINT32_C(0x002B631C), UINT32_C(0x00372C82), UINT32_C(0x002A7F2A),
6934 UINT32_C(0x00E4A975), UINT32_C(0x006BB6B1), UINT32_C(0x0016BC52),
6935 UINT32_C(0x00473CD2), UINT32_C(0x00630310), UINT32_C(0x0016B945),
6936 UINT32_C(0x0001291B), UINT32_C(0x0059EF17)},
6937 {UINT32_C(0x00837D4E), UINT32_C(0x003216D3), UINT32_C(0x004E0701),
6938 UINT32_C(0x00823A76), UINT32_C(0x00567125), UINT32_C(0x0020E62F),
6939 UINT32_C(0x0036F8E4), UINT32_C(0x0091634B), UINT32_C(0x000CE9C9),
6940 UINT32_C(0x00712DF3), UINT32_C(0x003270FE)},
6941 {UINT32_C(0x00C8BD36), UINT32_C(0x00312227), UINT32_C(0x005851DE),
6942 UINT32_C(0x00989694), UINT32_C(0x003811BA), UINT32_C(0x0049DDC1),
6943 UINT32_C(0x0079916E), UINT32_C(0x00905B34), UINT32_C(0x00216CD3),
6944 UINT32_C(0x006E95D0), UINT32_C(0x0075102E)}},
6945 {{UINT32_C(0x000FE15B), UINT32_C(0x002132F9), UINT32_C(0x007302D9),
6946 UINT32_C(0x0074464C), UINT32_C(0x006545FE), UINT32_C(0x0025178A),
6947 UINT32_C(0x0037772B), UINT32_C(0x00F33555), UINT32_C(0x006628A7),
6948 UINT32_C(0x00639C7D), UINT32_C(0x0017AF1B)},
6949 {UINT32_C(0x0016001E), UINT32_C(0x00346FAA), UINT32_C(0x0055CC08),
6950 UINT32_C(0x006A26EC), UINT32_C(0x00272A70), UINT32_C(0x0073B255),
6951 UINT32_C(0x0066C9CC), UINT32_C(0x00E05374), UINT32_C(0x0031E05D),
6952 UINT32_C(0x007241E6), UINT32_C(0x0064D29A)},
6953 {UINT32_C(0x000904B8), UINT32_C(0x000ACC3E), UINT32_C(0x005C0BC8),
6954 UINT32_C(0x00708FA3), UINT32_C(0x006420DB), UINT32_C(0x0009EB68),
6955 UINT32_C(0x007DF36A), UINT32_C(0x0004C79A), UINT32_C(0x00688FB7),
6956 UINT32_C(0x001853DD), UINT32_C(0x00391517)}},
6957 {{UINT32_C(0x0045C93C), UINT32_C(0x001ADA91), UINT32_C(0x005BEF12),
6958 UINT32_C(0x00652E9C), UINT32_C(0x00109290), UINT32_C(0x00351B47),
6959 UINT32_C(0x00649B3C), UINT32_C(0x0093B9EA), UINT32_C(0x0031C49B),
6960 UINT32_C(0x006129D9), UINT32_C(0x0018C36F)},
6961 {UINT32_C(0x0039F849), UINT32_C(0x0076DDFD), UINT32_C(0x004D8E8B),
6962 UINT32_C(0x00CC9068), UINT32_C(0x00257C98), UINT32_C(0x0022E647),
6963 UINT32_C(0x0010E3A5), UINT32_C(0x0071627F), UINT32_C(0x004D6728),
6964 UINT32_C(0x001036C0), UINT32_C(0x00293E1C)},
6965 {UINT32_C(0x00A0883B), UINT32_C(0x0047D948), UINT32_C(0x0029727E),
6966 UINT32_C(0x007C052C), UINT32_C(0x0064B122), UINT32_C(0x003228B8),
6967 UINT32_C(0x0004B695), UINT32_C(0x00850591), UINT32_C(0x00086718),
6968 UINT32_C(0x0035AE85), UINT32_C(0x001253D1)}},
6971 {{UINT32_C(0x00B27045), UINT32_C(0x007C6BA4), UINT32_C(0x000BBA03),
6972 UINT32_C(0x00D9B116), UINT32_C(0x007774E3), UINT32_C(0x0042950E),
6973 UINT32_C(0x0017A228), UINT32_C(0x002DD987), UINT32_C(0x0078FFD1),
6974 UINT32_C(0x006CC9E6), UINT32_C(0x002D3C1B)},
6975 {UINT32_C(0x00A56D1F), UINT32_C(0x002BB5F0), UINT32_C(0x005FB594),
6976 UINT32_C(0x0009E3C8), UINT32_C(0x0040549B), UINT32_C(0x0008E785),
6977 UINT32_C(0x005E84B9), UINT32_C(0x0003AE65), UINT32_C(0x00476B1B),
6978 UINT32_C(0x004B6DB7), UINT32_C(0x00255FEE)},
6979 {UINT32_C(0x001D2AC3), UINT32_C(0x0053D8C2), UINT32_C(0x0053ABBA),
6980 UINT32_C(0x0062F195), UINT32_C(0x00583DCF), UINT32_C(0x005C7CC7),
6981 UINT32_C(0x0016B088), UINT32_C(0x00E1FD84), UINT32_C(0x003BDF9C),
6982 UINT32_C(0x004B6242), UINT32_C(0x0078CDD1)}},
6983 {{UINT32_C(0x0072E704), UINT32_C(0x002A3E71), UINT32_C(0x0016610F),
6984 UINT32_C(0x009B3715), UINT32_C(0x005FCB07), UINT32_C(0x005D8BCF),
6985 UINT32_C(0x00320582), UINT32_C(0x00A47F78), UINT32_C(0x005E225E),
6986 UINT32_C(0x00168430), UINT32_C(0x004428AB)},
6987 {UINT32_C(0x004370E5), UINT32_C(0x005D2F9B), UINT32_C(0x00189EF7),
6988 UINT32_C(0x0099C20D), UINT32_C(0x0054ECBC), UINT32_C(0x00656294),
6989 UINT32_C(0x00121DD8), UINT32_C(0x009B9829), UINT32_C(0x007E3E6A),
6990 UINT32_C(0x003A665F), UINT32_C(0x001EFD05)},
6991 {UINT32_C(0x008DCA62), UINT32_C(0x006B5EF8), UINT32_C(0x00434D75),
6992 UINT32_C(0x00FAA8B9), UINT32_C(0x0011A045), UINT32_C(0x006E5D43),
6993 UINT32_C(0x004E67E5), UINT32_C(0x00966939), UINT32_C(0x005A4ABC),
6994 UINT32_C(0x002BC8B7), UINT32_C(0x001B23C1)}},
6995 {{UINT32_C(0x004E71F0), UINT32_C(0x00091B67), UINT32_C(0x00288D0F),
6996 UINT32_C(0x003DBF2B), UINT32_C(0x0034CDF1), UINT32_C(0x005B1542),
6997 UINT32_C(0x007363B6), UINT32_C(0x005CE63B), UINT32_C(0x0002FAD4),
6998 UINT32_C(0x001E8FE4), UINT32_C(0x00419934)},
6999 {UINT32_C(0x008F0055), UINT32_C(0x00718F3D), UINT32_C(0x00464487),
7000 UINT32_C(0x00B1F62E), UINT32_C(0x001D1DD4), UINT32_C(0x005C579E),
7001 UINT32_C(0x000761B7), UINT32_C(0x00CADFA8), UINT32_C(0x005881B3),
7002 UINT32_C(0x000CF2A5), UINT32_C(0x00236B83)},
7003 {UINT32_C(0x000EDD83), UINT32_C(0x00641C10), UINT32_C(0x0077B165),
7004 UINT32_C(0x005DFADE), UINT32_C(0x0002C161), UINT32_C(0x004C0EAB),
7005 UINT32_C(0x004F8FA8), UINT32_C(0x005182C2), UINT32_C(0x0022EE1E),
7006 UINT32_C(0x002FC0D1), UINT32_C(0x0072B941)}},
7007 {{UINT32_C(0x00BE3284), UINT32_C(0x00265E75), UINT32_C(0x0054BBEA),
7008 UINT32_C(0x009FEA89), UINT32_C(0x006A5BC5), UINT32_C(0x00468BF6),
7009 UINT32_C(0x0061091E), UINT32_C(0x0021D236), UINT32_C(0x00770DDF),
7010 UINT32_C(0x0044380D), UINT32_C(0x00261B8D)},
7011 {UINT32_C(0x0048B464), UINT32_C(0x0007F870), UINT32_C(0x00664579),
7012 UINT32_C(0x00EBB0D3), UINT32_C(0x0034FB4E), UINT32_C(0x0062BF86),
7013 UINT32_C(0x0030A6E2), UINT32_C(0x00141079), UINT32_C(0x004C4867),
7014 UINT32_C(0x0021F669), UINT32_C(0x006C48AC)},
7015 {UINT32_C(0x001F1A30), UINT32_C(0x00402CCF), UINT32_C(0x002EC836),
7016 UINT32_C(0x0076E3D0), UINT32_C(0x0045490A), UINT32_C(0x0074B706),
7017 UINT32_C(0x005C524F), UINT32_C(0x00A8A8B0), UINT32_C(0x001A4F8F),
7018 UINT32_C(0x00192D28), UINT32_C(0x0065C94E)}},
7019 {{UINT32_C(0x00053602), UINT32_C(0x0050EAFD), UINT32_C(0x003DFE2B),
7020 UINT32_C(0x00BAD911), UINT32_C(0x000BAA2C), UINT32_C(0x0067D960),
7021 UINT32_C(0x000D9F5E), UINT32_C(0x00C75FB5), UINT32_C(0x0061E525),
7022 UINT32_C(0x0042DF4C), UINT32_C(0x0078BFD6)},
7023 {UINT32_C(0x00DDF860), UINT32_C(0x0064B891), UINT32_C(0x000AAD9E),
7024 UINT32_C(0x0055DAD8), UINT32_C(0x000CD34A), UINT32_C(0x007F4F89),
7025 UINT32_C(0x00720D9B), UINT32_C(0x000C777A), UINT32_C(0x005C019C),
7026 UINT32_C(0x007BF2C9), UINT32_C(0x002B11EB)},
7027 {UINT32_C(0x002C702B), UINT32_C(0x00152B74), UINT32_C(0x002C06C6),
7028 UINT32_C(0x00CAC7B3), UINT32_C(0x00651F98), UINT32_C(0x006BEE21),
7029 UINT32_C(0x0022FC91), UINT32_C(0x00D0E1A2), UINT32_C(0x000F1226),
7030 UINT32_C(0x0000CB76), UINT32_C(0x000AD2FB)}},
7031 {{UINT32_C(0x003B07A3), UINT32_C(0x005563EB), UINT32_C(0x000F5875),
7032 UINT32_C(0x004E85ED), UINT32_C(0x004DF848), UINT32_C(0x00086603),
7033 UINT32_C(0x001FE9F6), UINT32_C(0x0060B2A8), UINT32_C(0x00796256),
7034 UINT32_C(0x00146D3D), UINT32_C(0x007A622F)},
7035 {UINT32_C(0x00659E8D), UINT32_C(0x000F45E5), UINT32_C(0x0079D2B9),
7036 UINT32_C(0x00E3F2C8), UINT32_C(0x002FA0A9), UINT32_C(0x0043F516),
7037 UINT32_C(0x0064D221), UINT32_C(0x0007AF6F), UINT32_C(0x005DA3B1),
7038 UINT32_C(0x00750DD3), UINT32_C(0x003DC647)},
7039 {UINT32_C(0x003A7DCA), UINT32_C(0x0078F870), UINT32_C(0x0059ECCF),
7040 UINT32_C(0x00721F6A), UINT32_C(0x0073DDE5), UINT32_C(0x0052F61E),
7041 UINT32_C(0x005E03A9), UINT32_C(0x0096290F), UINT32_C(0x007684CD),
7042 UINT32_C(0x0063A740), UINT32_C(0x00273750)}},
7043 {{UINT32_C(0x008ABF8E), UINT32_C(0x004EDC3D), UINT32_C(0x007BBD24),
7044 UINT32_C(0x0037EA5E), UINT32_C(0x0028D8C0), UINT32_C(0x001BE0C2),
7045 UINT32_C(0x00582236), UINT32_C(0x007A566E), UINT32_C(0x001F4783),
7046 UINT32_C(0x005F6DB4), UINT32_C(0x0018F286)},
7047 {UINT32_C(0x0040CAF8), UINT32_C(0x00287C70), UINT32_C(0x002C9166),
7048 UINT32_C(0x00C254F6), UINT32_C(0x005E2D68), UINT32_C(0x003B46FC),
7049 UINT32_C(0x004EA606), UINT32_C(0x00D0B9C1), UINT32_C(0x00228115),
7050 UINT32_C(0x0072EEA6), UINT32_C(0x00471670)},
7051 {UINT32_C(0x0020A1FA), UINT32_C(0x0075C7D9), UINT32_C(0x005426EA),
7052 UINT32_C(0x000046B2), UINT32_C(0x0076BA0A), UINT32_C(0x0050CEA6),
7053 UINT32_C(0x002D133F), UINT32_C(0x005C8821), UINT32_C(0x00406072),
7054 UINT32_C(0x000A7F19), UINT32_C(0x001740F3)}},
7055 {{UINT32_C(0x0090884A), UINT32_C(0x00146BFD), UINT32_C(0x00625FB2),
7056 UINT32_C(0x00C92B84), UINT32_C(0x00097A91), UINT32_C(0x005EACD5),
7057 UINT32_C(0x005F0661), UINT32_C(0x00870EC3), UINT32_C(0x006D7279),
7058 UINT32_C(0x002CE3E6), UINT32_C(0x0078F980)},
7059 {UINT32_C(0x00A2B367), UINT32_C(0x000EF557), UINT32_C(0x004EBC90),
7060 UINT32_C(0x0065B548), UINT32_C(0x004E46D1), UINT32_C(0x006D0EF0),
7061 UINT32_C(0x00299E83), UINT32_C(0x0016D017), UINT32_C(0x004A428A),
7062 UINT32_C(0x00034582), UINT32_C(0x0052ED77)},
7063 {UINT32_C(0x004E0B1E), UINT32_C(0x000C37F8), UINT32_C(0x006C666A),
7064 UINT32_C(0x00436BD9), UINT32_C(0x001FC7FE), UINT32_C(0x0000D390),
7065 UINT32_C(0x006900A5), UINT32_C(0x0062D837), UINT32_C(0x006CD0E6),
7066 UINT32_C(0x00557AD7), UINT32_C(0x002B57B6)}},
7067 {{UINT32_C(0x005F93D9), UINT32_C(0x0021EC83), UINT32_C(0x0057A32B),
7068 UINT32_C(0x001CD982), UINT32_C(0x0008309F), UINT32_C(0x0052B2E6),
7069 UINT32_C(0x002068F6), UINT32_C(0x00CD4622), UINT32_C(0x005EC9A6),
7070 UINT32_C(0x002F2CCD), UINT32_C(0x00056DCE)},
7071 {UINT32_C(0x003E91E9), UINT32_C(0x0002F289), UINT32_C(0x006BF91B),
7072 UINT32_C(0x006CBB4B), UINT32_C(0x00145A1F), UINT32_C(0x007ECA85),
7073 UINT32_C(0x004AE385), UINT32_C(0x00BC0058), UINT32_C(0x007D219A),
7074 UINT32_C(0x00406CB9), UINT32_C(0x001586B8)},
7075 {UINT32_C(0x00EE30F0), UINT32_C(0x00094A1A), UINT32_C(0x0006C4A5),
7076 UINT32_C(0x0095BBBF), UINT32_C(0x0033B602), UINT32_C(0x005C234E),
7077 UINT32_C(0x00405945), UINT32_C(0x002F42B7), UINT32_C(0x0060F012),
7078 UINT32_C(0x000547D1), UINT32_C(0x00331A12)}},
7079 {{UINT32_C(0x00AE8C48), UINT32_C(0x00301B89), UINT32_C(0x0030B3A1),
7080 UINT32_C(0x0030AF95), UINT32_C(0x00455E58), UINT32_C(0x005D22F1),
7081 UINT32_C(0x0072D976), UINT32_C(0x007AD824), UINT32_C(0x0005D4B7),
7082 UINT32_C(0x003E29C4), UINT32_C(0x007D5C6C)},
7083 {UINT32_C(0x00610488), UINT32_C(0x00575F2E), UINT32_C(0x005AC7FE),
7084 UINT32_C(0x0074B494), UINT32_C(0x006F1543), UINT32_C(0x00029B2A),
7085 UINT32_C(0x002B9948), UINT32_C(0x0057D800), UINT32_C(0x0052921B),
7086 UINT32_C(0x00117385), UINT32_C(0x001058C5)},
7087 {UINT32_C(0x00EA545B), UINT32_C(0x0032E693), UINT32_C(0x004AF898),
7088 UINT32_C(0x00FFE54C), UINT32_C(0x0039ECD8), UINT32_C(0x00093986),
7089 UINT32_C(0x004575D9), UINT32_C(0x00CDB661), UINT32_C(0x007A392E),
7090 UINT32_C(0x0001939C), UINT32_C(0x0028D022)}},
7091 {{UINT32_C(0x00DA7B5B), UINT32_C(0x0030FFBD), UINT32_C(0x00548E82),
7092 UINT32_C(0x00DD7D1E), UINT32_C(0x00373E22), UINT32_C(0x0060EA9C),
7093 UINT32_C(0x00463822), UINT32_C(0x0091DF8B), UINT32_C(0x001801F8),
7094 UINT32_C(0x0046D441), UINT32_C(0x000C8688)},
7095 {UINT32_C(0x00EE0CC8), UINT32_C(0x00699131), UINT32_C(0x000427E3),
7096 UINT32_C(0x00F43A07), UINT32_C(0x00318E56), UINT32_C(0x00415F0B),
7097 UINT32_C(0x0065B06D), UINT32_C(0x00C66DEB), UINT32_C(0x0069C98F),
7098 UINT32_C(0x000B21D5), UINT32_C(0x000B711D)},
7099 {UINT32_C(0x00D0339C), UINT32_C(0x002E2E3B), UINT32_C(0x00573739),
7100 UINT32_C(0x007F843C), UINT32_C(0x0012F74D), UINT32_C(0x001934CA),
7101 UINT32_C(0x0011DDD6), UINT32_C(0x00DF048B), UINT32_C(0x004D7027),
7102 UINT32_C(0x005B0107), UINT32_C(0x0069D6BF)}},
7103 {{UINT32_C(0x00F44C75), UINT32_C(0x003F20FB), UINT32_C(0x0011CE27),
7104 UINT32_C(0x00F7E2A9), UINT32_C(0x006914F7), UINT32_C(0x0020C3E4),
7105 UINT32_C(0x00683AAF), UINT32_C(0x007DE3A9), UINT32_C(0x001E6E79),
7106 UINT32_C(0x0006F6AF), UINT32_C(0x00563C95)},
7107 {UINT32_C(0x004904B2), UINT32_C(0x00517306), UINT32_C(0x0049E4D2),
7108 UINT32_C(0x00459886), UINT32_C(0x001E326B), UINT32_C(0x003AF2A6),
7109 UINT32_C(0x004F40C8), UINT32_C(0x0072BF1A), UINT32_C(0x00692E44),
7110 UINT32_C(0x0046EF04), UINT32_C(0x007235C7)},
7111 {UINT32_C(0x0099C193), UINT32_C(0x0032477B), UINT32_C(0x0064C855),
7112 UINT32_C(0x00F64B95), UINT32_C(0x006D6DE1), UINT32_C(0x0038972C),
7113 UINT32_C(0x002E92A5), UINT32_C(0x00FB0D34), UINT32_C(0x0000A7FB),
7114 UINT32_C(0x00436D2A), UINT32_C(0x002AE23C)}},
7115 {{UINT32_C(0x005B55EE), UINT32_C(0x00269FC6), UINT32_C(0x0031ABD5),
7116 UINT32_C(0x00AFFAE5), UINT32_C(0x0007CF80), UINT32_C(0x003582AB),
7117 UINT32_C(0x004AA0DA), UINT32_C(0x003B2950), UINT32_C(0x0027722C),
7118 UINT32_C(0x006DA175), UINT32_C(0x00538D39)},
7119 {UINT32_C(0x00E803AA), UINT32_C(0x0078E9FA), UINT32_C(0x000599F4),
7120 UINT32_C(0x00C7D432), UINT32_C(0x00482F43), UINT32_C(0x0031EDC5),
7121 UINT32_C(0x007E0348), UINT32_C(0x0099EAD8), UINT32_C(0x00384F4D),
7122 UINT32_C(0x004DACD4), UINT32_C(0x0046AD0D)},
7123 {UINT32_C(0x00A97546), UINT32_C(0x000FB21C), UINT32_C(0x0015497C),
7124 UINT32_C(0x008E62D2), UINT32_C(0x00505DE5), UINT32_C(0x000B95C5),
7125 UINT32_C(0x0023EDFF), UINT32_C(0x00264B13), UINT32_C(0x002BCD90),
7126 UINT32_C(0x00627803), UINT32_C(0x0036514F)}},
7127 {{UINT32_C(0x0089E077), UINT32_C(0x0036ADDA), UINT32_C(0x001647F5),
7128 UINT32_C(0x0088678C), UINT32_C(0x002D4F15), UINT32_C(0x004AD6CA),
7129 UINT32_C(0x000239EF), UINT32_C(0x00784B5B), UINT32_C(0x003FA0B6),
7130 UINT32_C(0x001178A4), UINT32_C(0x00506FAF)},
7131 {UINT32_C(0x00B41F08), UINT32_C(0x00501231), UINT32_C(0x00193B29),
7132 UINT32_C(0x00837915), UINT32_C(0x0052BE13), UINT32_C(0x0067A94C),
7133 UINT32_C(0x00080E1A), UINT32_C(0x00FF39EB), UINT32_C(0x0012E0B7),
7134 UINT32_C(0x0004446B), UINT32_C(0x001FD9A4)},
7135 {UINT32_C(0x00EAA0DA), UINT32_C(0x002DD110), UINT32_C(0x00768BF0),
7136 UINT32_C(0x00174EE3), UINT32_C(0x006B40A2), UINT32_C(0x004308C1),
7137 UINT32_C(0x006A7D56), UINT32_C(0x0080EF9C), UINT32_C(0x006C09DF),
7138 UINT32_C(0x00024E1D), UINT32_C(0x00025FFC)}},
7139 {{UINT32_C(0x007CFBB3), UINT32_C(0x0008B1DC), UINT32_C(0x00221743),
7140 UINT32_C(0x00E6686B), UINT32_C(0x00152BCE), UINT32_C(0x001317D6),
7141 UINT32_C(0x00437CCD), UINT32_C(0x002FC802), UINT32_C(0x006681B5),
7142 UINT32_C(0x00462383), UINT32_C(0x007A6155)},
7143 {UINT32_C(0x00C0616E), UINT32_C(0x0065B50F), UINT32_C(0x00575631),
7144 UINT32_C(0x008AE62D), UINT32_C(0x001A3DAF), UINT32_C(0x001CB629),
7145 UINT32_C(0x000690A5), UINT32_C(0x000E40AF), UINT32_C(0x0027B0F1),
7146 UINT32_C(0x0030A43B), UINT32_C(0x003D750B)},
7147 {UINT32_C(0x0006E7C1), UINT32_C(0x001F7E8D), UINT32_C(0x007DDEB5),
7148 UINT32_C(0x003E61D8), UINT32_C(0x0052F00A), UINT32_C(0x0007F477),
7149 UINT32_C(0x0002FCF5), UINT32_C(0x00E51DDA), UINT32_C(0x00710B09),
7150 UINT32_C(0x00162A00), UINT32_C(0x0070E436)}},
7151 {{UINT32_C(0x0089B486), UINT32_C(0x00508B10), UINT32_C(0x00504CD3),
7152 UINT32_C(0x007CBEF5), UINT32_C(0x00401259), UINT32_C(0x0016A84C),
7153 UINT32_C(0x005DDAF1), UINT32_C(0x00CA278E), UINT32_C(0x005227AF),
7154 UINT32_C(0x000A6D32), UINT32_C(0x0025F71B)},
7155 {UINT32_C(0x009CE1F9), UINT32_C(0x00535376), UINT32_C(0x0038A997),
7156 UINT32_C(0x008FCF77), UINT32_C(0x001681BE), UINT32_C(0x0030BB0D),
7157 UINT32_C(0x0079D5C2), UINT32_C(0x00CCB407), UINT32_C(0x00115E29),
7158 UINT32_C(0x006BEA8D), UINT32_C(0x0077DF80)},
7159 {UINT32_C(0x000328F3), UINT32_C(0x0062691B), UINT32_C(0x00429269),
7160 UINT32_C(0x00D14DE5), UINT32_C(0x001B9543), UINT32_C(0x00310721),
7161 UINT32_C(0x005A6271), UINT32_C(0x00077EE6), UINT32_C(0x006695BC),
7162 UINT32_C(0x00502870), UINT32_C(0x005376F2)}},
7165 {{UINT32_C(0x00F38262), UINT32_C(0x00203985), UINT32_C(0x0029479B),
7166 UINT32_C(0x0057D8A4), UINT32_C(0x002352DF), UINT32_C(0x005A3DE0),
7167 UINT32_C(0x0038FC9D), UINT32_C(0x005E69CE), UINT32_C(0x007195C8),
7168 UINT32_C(0x007F3F0C), UINT32_C(0x0075AA44)},
7169 {UINT32_C(0x00A2B12A), UINT32_C(0x0005AB91), UINT32_C(0x0005801E),
7170 UINT32_C(0x00BD3E26), UINT32_C(0x004A3566), UINT32_C(0x0039622B),
7171 UINT32_C(0x00196466), UINT32_C(0x003385DF), UINT32_C(0x00464F26),
7172 UINT32_C(0x00348D32), UINT32_C(0x006B3D82)},
7173 {UINT32_C(0x0065745B), UINT32_C(0x00756984), UINT32_C(0x000663B1),
7174 UINT32_C(0x00F8FADD), UINT32_C(0x005D0DD6), UINT32_C(0x005A5E23),
7175 UINT32_C(0x0021B9BE), UINT32_C(0x009BBEE7), UINT32_C(0x003310A0),
7176 UINT32_C(0x0008941E), UINT32_C(0x006EFBEF)}},
7177 {{UINT32_C(0x008285AF), UINT32_C(0x0032D42C), UINT32_C(0x004A921F),
7178 UINT32_C(0x00501992), UINT32_C(0x00684DBF), UINT32_C(0x001A5365),
7179 UINT32_C(0x0036ABF8), UINT32_C(0x004599AB), UINT32_C(0x003153D1),
7180 UINT32_C(0x004357B7), UINT32_C(0x00289208)},
7181 {UINT32_C(0x00BF2760), UINT32_C(0x000C24C0), UINT32_C(0x0057E755),
7182 UINT32_C(0x000FB090), UINT32_C(0x007F2FA3), UINT32_C(0x0034386D),
7183 UINT32_C(0x004D0670), UINT32_C(0x007D5F67), UINT32_C(0x00770E2C),
7184 UINT32_C(0x004F400F), UINT32_C(0x0004CA31)},
7185 {UINT32_C(0x00C5736B), UINT32_C(0x0025DE46), UINT32_C(0x00184C66),
7186 UINT32_C(0x002454E1), UINT32_C(0x006C791A), UINT32_C(0x00695E64),
7187 UINT32_C(0x0005F1A3), UINT32_C(0x00D89A22), UINT32_C(0x00339085),
7188 UINT32_C(0x00612026), UINT32_C(0x0011E398)}},
7189 {{UINT32_C(0x00580ED8), UINT32_C(0x00351562), UINT32_C(0x003AC56C),
7190 UINT32_C(0x0082A872), UINT32_C(0x00009388), UINT32_C(0x0059018D),
7191 UINT32_C(0x00428E6F), UINT32_C(0x0044580D), UINT32_C(0x00397D38),
7192 UINT32_C(0x001413BF), UINT32_C(0x0019ACCA)},
7193 {UINT32_C(0x00EBF493), UINT32_C(0x0065B688), UINT32_C(0x00475CB8),
7194 UINT32_C(0x000C5271), UINT32_C(0x001FA36C), UINT32_C(0x002065F1),
7195 UINT32_C(0x001E357D), UINT32_C(0x002E3A47), UINT32_C(0x007D686D),
7196 UINT32_C(0x0016A68A), UINT32_C(0x00662C00)},
7197 {UINT32_C(0x00BBB7E7), UINT32_C(0x00118B8C), UINT32_C(0x00257EA2),
7198 UINT32_C(0x00EAE0BF), UINT32_C(0x00534B32), UINT32_C(0x002C3391),
7199 UINT32_C(0x005F91A4), UINT32_C(0x009CC53C), UINT32_C(0x000D1F59),
7200 UINT32_C(0x0044B89F), UINT32_C(0x004E2285)}},
7201 {{UINT32_C(0x0027C85C), UINT32_C(0x0034E4D0), UINT32_C(0x0034EE41),
7202 UINT32_C(0x0000C14F), UINT32_C(0x00466E36), UINT32_C(0x0012ED82),
7203 UINT32_C(0x004AB2CC), UINT32_C(0x00BB7B93), UINT32_C(0x0013EE11),
7204 UINT32_C(0x0071AADD), UINT32_C(0x000E9430)},
7205 {UINT32_C(0x0048606F), UINT32_C(0x000E389D), UINT32_C(0x005B7915),
7206 UINT32_C(0x00DA42A8), UINT32_C(0x003E8287), UINT32_C(0x001D2AF2),
7207 UINT32_C(0x0044CA11), UINT32_C(0x00C9B883), UINT32_C(0x000B95FA),
7208 UINT32_C(0x00571771), UINT32_C(0x002FD7F4)},
7209 {UINT32_C(0x00DD2691), UINT32_C(0x0071C20D), UINT32_C(0x00544E37),
7210 UINT32_C(0x00458C30), UINT32_C(0x005ED950), UINT32_C(0x000A642E),
7211 UINT32_C(0x000316B6), UINT32_C(0x00F34871), UINT32_C(0x0030B700),
7212 UINT32_C(0x007D4AA7), UINT32_C(0x000E8F8F)}},
7213 {{UINT32_C(0x00AFDFD3), UINT32_C(0x0023AB6D), UINT32_C(0x003A134B),
7214 UINT32_C(0x007521AF), UINT32_C(0x002E2236), UINT32_C(0x00146DF2),
7215 UINT32_C(0x00201697), UINT32_C(0x000389A1), UINT32_C(0x0048BE72),
7216 UINT32_C(0x003FD0B3), UINT32_C(0x003AD399)},
7217 {UINT32_C(0x00453802), UINT32_C(0x0058F172), UINT32_C(0x000BD847),
7218 UINT32_C(0x005FE8C6), UINT32_C(0x0040628C), UINT32_C(0x004614B8),
7219 UINT32_C(0x004205D4), UINT32_C(0x00259F68), UINT32_C(0x0076F623),
7220 UINT32_C(0x00678707), UINT32_C(0x0057C6D8)},
7221 {UINT32_C(0x00DB4A5B), UINT32_C(0x004A2766), UINT32_C(0x00614411),
7222 UINT32_C(0x00510EC4), UINT32_C(0x007473CF), UINT32_C(0x0051CB0E),
7223 UINT32_C(0x0014EC5F), UINT32_C(0x000483E0), UINT32_C(0x001F7AE6),
7224 UINT32_C(0x0078A5EC), UINT32_C(0x003FC5C6)}},
7225 {{UINT32_C(0x00E73CF6), UINT32_C(0x00365645), UINT32_C(0x0026EE89),
7226 UINT32_C(0x006AC701), UINT32_C(0x007831F1), UINT32_C(0x00393FC7),
7227 UINT32_C(0x0003E80C), UINT32_C(0x008ECBE8), UINT32_C(0x0027B4A8),
7228 UINT32_C(0x0037554F), UINT32_C(0x006AD6BD)},
7229 {UINT32_C(0x001857E4), UINT32_C(0x00657687), UINT32_C(0x0036B228),
7230 UINT32_C(0x006A820E), UINT32_C(0x00459485), UINT32_C(0x002AA7DA),
7231 UINT32_C(0x0031670E), UINT32_C(0x0099F393), UINT32_C(0x0023D587),
7232 UINT32_C(0x000B8D51), UINT32_C(0x0067F4BE)},
7233 {UINT32_C(0x00604B7F), UINT32_C(0x00531996), UINT32_C(0x000F3A4C),
7234 UINT32_C(0x00EFD0BB), UINT32_C(0x001D4914), UINT32_C(0x004C04B3),
7235 UINT32_C(0x0003D908), UINT32_C(0x00AA3218), UINT32_C(0x00403685),
7236 UINT32_C(0x0072EB6A), UINT32_C(0x002176B1)}},
7237 {{UINT32_C(0x00DC72D5), UINT32_C(0x0053C100), UINT32_C(0x006992E3),
7238 UINT32_C(0x00532CA0), UINT32_C(0x004D3AD9), UINT32_C(0x0016B1F6),
7239 UINT32_C(0x00776F4B), UINT32_C(0x006ECD70), UINT32_C(0x004FC6E0),
7240 UINT32_C(0x00766557), UINT32_C(0x0019E21F)},
7241 {UINT32_C(0x002B1672), UINT32_C(0x003C3FDF), UINT32_C(0x00324542),
7242 UINT32_C(0x007B582B), UINT32_C(0x0002AD86), UINT32_C(0x00528C4E),
7243 UINT32_C(0x003D3509), UINT32_C(0x00D075CA), UINT32_C(0x00783A6B),
7244 UINT32_C(0x0032D6B0), UINT32_C(0x00655B92)},
7245 {UINT32_C(0x0067E0B1), UINT32_C(0x001D8E27), UINT32_C(0x002F0272),
7246 UINT32_C(0x00BBEB09), UINT32_C(0x0017C396), UINT32_C(0x005B451C),
7247 UINT32_C(0x000ADC03), UINT32_C(0x00F50759), UINT32_C(0x000DE4C0),
7248 UINT32_C(0x006BAD90), UINT32_C(0x0015A7A2)}},
7249 {{UINT32_C(0x009DA550), UINT32_C(0x004309EA), UINT32_C(0x006FDD59),
7250 UINT32_C(0x00C427DA), UINT32_C(0x00454A59), UINT32_C(0x005B8E71),
7251 UINT32_C(0x00341B12), UINT32_C(0x00252CD4), UINT32_C(0x00111FF0),
7252 UINT32_C(0x007E3827), UINT32_C(0x0048F3DC)},
7253 {UINT32_C(0x00BC3FD8), UINT32_C(0x00513D87), UINT32_C(0x0004F4BB),
7254 UINT32_C(0x0040E743), UINT32_C(0x007CD878), UINT32_C(0x0010C877),
7255 UINT32_C(0x005F89C4), UINT32_C(0x00F5CB3E), UINT32_C(0x0074C6FA),
7256 UINT32_C(0x006D3B3F), UINT32_C(0x0027626C)},
7257 {UINT32_C(0x004FE9AA), UINT32_C(0x001A4C25), UINT32_C(0x005FC4B0),
7258 UINT32_C(0x00C432AF), UINT32_C(0x005E26E5), UINT32_C(0x003B434E),
7259 UINT32_C(0x0027CFF2), UINT32_C(0x0043D716), UINT32_C(0x0059B5A6),
7260 UINT32_C(0x00333789), UINT32_C(0x0011248B)}},
7261 {{UINT32_C(0x00CA0B46), UINT32_C(0x00797C4C), UINT32_C(0x0025673C),
7262 UINT32_C(0x004C5796), UINT32_C(0x000F4352), UINT32_C(0x00477E09),
7263 UINT32_C(0x007CE235), UINT32_C(0x00B62DDB), UINT32_C(0x00398769),
7264 UINT32_C(0x00598708), UINT32_C(0x002AA80B)},
7265 {UINT32_C(0x006334CD), UINT32_C(0x0007E78A), UINT32_C(0x000B78B3),
7266 UINT32_C(0x00945807), UINT32_C(0x005E6E86), UINT32_C(0x005554D4),
7267 UINT32_C(0x000A6B65), UINT32_C(0x00306D92), UINT32_C(0x005D12E8),
7268 UINT32_C(0x003DEB11), UINT32_C(0x00385DB1)},
7269 {UINT32_C(0x000A5E84), UINT32_C(0x006D3E68), UINT32_C(0x00756665),
7270 UINT32_C(0x004A1477), UINT32_C(0x00348B5C), UINT32_C(0x0048952E),
7271 UINT32_C(0x002EDCD0), UINT32_C(0x0017A1F7), UINT32_C(0x000D0B6A),
7272 UINT32_C(0x002CC6D4), UINT32_C(0x00357331)}},
7273 {{UINT32_C(0x0079D8A5), UINT32_C(0x007C1D32), UINT32_C(0x0026F73E),
7274 UINT32_C(0x00DC858C), UINT32_C(0x002CFF0F), UINT32_C(0x007FA1D8),
7275 UINT32_C(0x000AA161), UINT32_C(0x009E41A9), UINT32_C(0x0009D873),
7276 UINT32_C(0x004C0E2C), UINT32_C(0x001DB409)},
7277 {UINT32_C(0x0018D65B), UINT32_C(0x0022CD31), UINT32_C(0x00390F42),
7278 UINT32_C(0x00D8FCA4), UINT32_C(0x006663C5), UINT32_C(0x0019722C),
7279 UINT32_C(0x007F6B0A), UINT32_C(0x00A630E3), UINT32_C(0x006E4A27),
7280 UINT32_C(0x0021D1B6), UINT32_C(0x002AAC94)},
7281 {UINT32_C(0x0018C372), UINT32_C(0x0054FA42), UINT32_C(0x000EFD69),
7282 UINT32_C(0x0011780F), UINT32_C(0x001A67DB), UINT32_C(0x006E5FA4),
7283 UINT32_C(0x00414397), UINT32_C(0x007903CC), UINT32_C(0x006A8416),
7284 UINT32_C(0x007EAA7F), UINT32_C(0x002FE26B)}},
7285 {{UINT32_C(0x00E4631A), UINT32_C(0x00519A42), UINT32_C(0x004D5D8F),
7286 UINT32_C(0x00C6E606), UINT32_C(0x00053595), UINT32_C(0x004EB9D1),
7287 UINT32_C(0x005A269C), UINT32_C(0x003E8B00), UINT32_C(0x00162354),
7288 UINT32_C(0x007E07B4), UINT32_C(0x003AF53B)},
7289 {UINT32_C(0x00B6EB19), UINT32_C(0x00555D97), UINT32_C(0x00633E65),
7290 UINT32_C(0x0099187D), UINT32_C(0x00227AE7), UINT32_C(0x001674B2),
7291 UINT32_C(0x005E8C81), UINT32_C(0x005B7DF9), UINT32_C(0x0055E4BB),
7292 UINT32_C(0x0056A5E1), UINT32_C(0x0019F876)},
7293 {UINT32_C(0x00B4688B), UINT32_C(0x005F4304), UINT32_C(0x000B39BD),
7294 UINT32_C(0x004E7F2B), UINT32_C(0x00313A32), UINT32_C(0x007002F9),
7295 UINT32_C(0x0031EB5F), UINT32_C(0x00C85095), UINT32_C(0x00425A62),
7296 UINT32_C(0x00328356), UINT32_C(0x007EF956)}},
7297 {{UINT32_C(0x00E0C2E0), UINT32_C(0x00585FE0), UINT32_C(0x0075AB74),
7298 UINT32_C(0x0041E028), UINT32_C(0x006CAE63), UINT32_C(0x003C54C9),
7299 UINT32_C(0x001036EA), UINT32_C(0x002B7F12), UINT32_C(0x00144D5C),
7300 UINT32_C(0x007374DB), UINT32_C(0x00750F36)},
7301 {UINT32_C(0x0061BB41), UINT32_C(0x0036024E), UINT32_C(0x00655A71),
7302 UINT32_C(0x004FC91A), UINT32_C(0x0014B38E), UINT32_C(0x003D62DB),
7303 UINT32_C(0x0072A235), UINT32_C(0x003B2C40), UINT32_C(0x002C0290),
7304 UINT32_C(0x005FEB15), UINT32_C(0x0061089A)},
7305 {UINT32_C(0x0085ECE4), UINT32_C(0x00332265), UINT32_C(0x0042796C),
7306 UINT32_C(0x00FD5F30), UINT32_C(0x004C81DA), UINT32_C(0x00007089),
7307 UINT32_C(0x006EA425), UINT32_C(0x00B807C7), UINT32_C(0x00459E0F),
7308 UINT32_C(0x00181B93), UINT32_C(0x000B0E1B)}},
7309 {{UINT32_C(0x009EFE70), UINT32_C(0x004E468A), UINT32_C(0x0077E5AA),
7310 UINT32_C(0x001467EF), UINT32_C(0x0020C382), UINT32_C(0x0055629A),
7311 UINT32_C(0x005CA999), UINT32_C(0x00BEFB9D), UINT32_C(0x005A686B),
7312 UINT32_C(0x0010351C), UINT32_C(0x005963DB)},
7313 {UINT32_C(0x001E85F3), UINT32_C(0x0014333A), UINT32_C(0x006927C7),
7314 UINT32_C(0x00F08F00), UINT32_C(0x00634AD4), UINT32_C(0x0022A5F2),
7315 UINT32_C(0x003B4641), UINT32_C(0x00A28090), UINT32_C(0x003FC621),
7316 UINT32_C(0x002B49C0), UINT32_C(0x00555DF3)},
7317 {UINT32_C(0x007C3D87), UINT32_C(0x002EFA77), UINT32_C(0x00567EC8),
7318 UINT32_C(0x00D46233), UINT32_C(0x00590994), UINT32_C(0x0045579D),
7319 UINT32_C(0x0006388F), UINT32_C(0x004C41FA), UINT32_C(0x004C71DD),
7320 UINT32_C(0x007BF667), UINT32_C(0x0057A3C7)}},
7321 {{UINT32_C(0x0093682F), UINT32_C(0x00073EF9), UINT32_C(0x0019C616),
7322 UINT32_C(0x00C17E8F), UINT32_C(0x002702CF), UINT32_C(0x005F528E),
7323 UINT32_C(0x0019B458), UINT32_C(0x0052A2E0), UINT32_C(0x00425491),
7324 UINT32_C(0x0018AED3), UINT32_C(0x006F6DAE)},
7325 {UINT32_C(0x0082401A), UINT32_C(0x004D0E66), UINT32_C(0x003A3362),
7326 UINT32_C(0x003D1A93), UINT32_C(0x000E6BF3), UINT32_C(0x0017967B),
7327 UINT32_C(0x00117AFB), UINT32_C(0x008CB04A), UINT32_C(0x002CA224),
7328 UINT32_C(0x00067DCB), UINT32_C(0x0056DEA4)},
7329 {UINT32_C(0x005F1A62), UINT32_C(0x006AF62D), UINT32_C(0x000D1E62),
7330 UINT32_C(0x00CCEE42), UINT32_C(0x00512EC5), UINT32_C(0x002C191C),
7331 UINT32_C(0x0065B2C8), UINT32_C(0x00567D2B), UINT32_C(0x006A4BC8),
7332 UINT32_C(0x0011359A), UINT32_C(0x003AB09B)}},
7333 {{UINT32_C(0x0072355E), UINT32_C(0x00290653), UINT32_C(0x00453126),
7334 UINT32_C(0x00DA22DA), UINT32_C(0x004311EA), UINT32_C(0x000C95C7),
7335 UINT32_C(0x005DA2D6), UINT32_C(0x0048EE2E), UINT32_C(0x007AC207),
7336 UINT32_C(0x0029BC84), UINT32_C(0x000A0DFC)},
7337 {UINT32_C(0x004EF0CE), UINT32_C(0x00747296), UINT32_C(0x000818AB),
7338 UINT32_C(0x00BE8543), UINT32_C(0x0041F6F4), UINT32_C(0x00448449),
7339 UINT32_C(0x00153E5F), UINT32_C(0x00AADD33), UINT32_C(0x0035B84C),
7340 UINT32_C(0x0069EAE8), UINT32_C(0x00217DBD)},
7341 {UINT32_C(0x002DB2A4), UINT32_C(0x001158C1), UINT32_C(0x002F9514),
7342 UINT32_C(0x00428AE0), UINT32_C(0x0071D932), UINT32_C(0x002D6CE8),
7343 UINT32_C(0x0002F0FA), UINT32_C(0x001EB77A), UINT32_C(0x0041C021),
7344 UINT32_C(0x00779647), UINT32_C(0x0000B4B0)}},
7345 {{UINT32_C(0x002BCA29), UINT32_C(0x000D6E00), UINT32_C(0x002A8D45),
7346 UINT32_C(0x00E65F5F), UINT32_C(0x0032B3E8), UINT32_C(0x001DDA5D),
7347 UINT32_C(0x0017AEC6), UINT32_C(0x00CCE901), UINT32_C(0x002418B9),
7348 UINT32_C(0x003F180D), UINT32_C(0x00754B21)},
7349 {UINT32_C(0x001E8828), UINT32_C(0x004DE168), UINT32_C(0x00365565),
7350 UINT32_C(0x003E7F08), UINT32_C(0x00022EE0), UINT32_C(0x0043C370),
7351 UINT32_C(0x0066C1D6), UINT32_C(0x0033E762), UINT32_C(0x0021E80E),
7352 UINT32_C(0x0022E1CE), UINT32_C(0x0039049C)},
7353 {UINT32_C(0x001AEEAB), UINT32_C(0x004E9952), UINT32_C(0x006CD381),
7354 UINT32_C(0x00319F16), UINT32_C(0x004B6EED), UINT32_C(0x000E8C3B),
7355 UINT32_C(0x0033C702), UINT32_C(0x0074A7B1), UINT32_C(0x0055F862),
7356 UINT32_C(0x00070547), UINT32_C(0x001AB4F3)}},
7359 {{UINT32_C(0x002AB480), UINT32_C(0x00491F21), UINT32_C(0x007D1D9B),
7360 UINT32_C(0x0017861D), UINT32_C(0x004E0965), UINT32_C(0x004F9835),
7361 UINT32_C(0x002889AB), UINT32_C(0x00254B0E), UINT32_C(0x003F4ECE),
7362 UINT32_C(0x00645245), UINT32_C(0x003DE09E)},
7363 {UINT32_C(0x00BFFA33), UINT32_C(0x0001E566), UINT32_C(0x0048223D),
7364 UINT32_C(0x0081AC1B), UINT32_C(0x0075FACF), UINT32_C(0x00288CA5),
7365 UINT32_C(0x00319699), UINT32_C(0x00E70935), UINT32_C(0x003AFCDF),
7366 UINT32_C(0x000D446C), UINT32_C(0x001FF61C)},
7367 {UINT32_C(0x00CFC3EE), UINT32_C(0x0053EC31), UINT32_C(0x00556C71),
7368 UINT32_C(0x00B61E4F), UINT32_C(0x0019B811), UINT32_C(0x000E942F),
7369 UINT32_C(0x006B460A), UINT32_C(0x0028CECD), UINT32_C(0x0053755C),
7370 UINT32_C(0x006A36AD), UINT32_C(0x0074830B)}},
7371 {{UINT32_C(0x0032B148), UINT32_C(0x00574A20), UINT32_C(0x00258660),
7372 UINT32_C(0x00A32E9A), UINT32_C(0x00666B0C), UINT32_C(0x0050B448),
7373 UINT32_C(0x00375197), UINT32_C(0x007C7568), UINT32_C(0x0054C0EF),
7374 UINT32_C(0x003C6296), UINT32_C(0x00451E25)},
7375 {UINT32_C(0x001F0527), UINT32_C(0x0015C673), UINT32_C(0x002F100D),
7376 UINT32_C(0x0051AD70), UINT32_C(0x00120973), UINT32_C(0x002A4934),
7377 UINT32_C(0x00340AF5), UINT32_C(0x00DB9742), UINT32_C(0x00743FB7),
7378 UINT32_C(0x00457EDD), UINT32_C(0x000CEB92)},
7379 {UINT32_C(0x00F5B12C), UINT32_C(0x0053626F), UINT32_C(0x007F2969),
7380 UINT32_C(0x00F9A729), UINT32_C(0x0033C947), UINT32_C(0x0000F3BA),
7381 UINT32_C(0x00207B91), UINT32_C(0x0063F460), UINT32_C(0x0012F8FD),
7382 UINT32_C(0x000B32A2), UINT32_C(0x003E578A)}},
7383 {{UINT32_C(0x00B1FE77), UINT32_C(0x00298801), UINT32_C(0x00011596),
7384 UINT32_C(0x001AC338), UINT32_C(0x001D0E96), UINT32_C(0x005E3714),
7385 UINT32_C(0x003DE2F3), UINT32_C(0x00AF9E64), UINT32_C(0x00187EE5),
7386 UINT32_C(0x004F7E2C), UINT32_C(0x0017C5D3)},
7387 {UINT32_C(0x0071BA87), UINT32_C(0x00241D87), UINT32_C(0x0034F745),
7388 UINT32_C(0x0004090C), UINT32_C(0x000A1932), UINT32_C(0x0042ADD3),
7389 UINT32_C(0x0053459C), UINT32_C(0x007BE02E), UINT32_C(0x003D62A3),
7390 UINT32_C(0x0015988B), UINT32_C(0x006AAD49)},
7391 {UINT32_C(0x00367A73), UINT32_C(0x007F03C1), UINT32_C(0x002CAE51),
7392 UINT32_C(0x0029D218), UINT32_C(0x0014E4A9), UINT32_C(0x0054032D),
7393 UINT32_C(0x0062F02D), UINT32_C(0x00DCDDAD), UINT32_C(0x007EE1CD),
7394 UINT32_C(0x001D0B5C), UINT32_C(0x00569FE0)}},
7395 {{UINT32_C(0x00BCADF6), UINT32_C(0x0075341C), UINT32_C(0x00398E24),
7396 UINT32_C(0x003BF613), UINT32_C(0x0001E10C), UINT32_C(0x0065FEAC),
7397 UINT32_C(0x0024D15C), UINT32_C(0x00196783), UINT32_C(0x0051862B),
7398 UINT32_C(0x006C2018), UINT32_C(0x002A0826)},
7399 {UINT32_C(0x00F6EE57), UINT32_C(0x0011CD5C), UINT32_C(0x001F7638),
7400 UINT32_C(0x005F98C2), UINT32_C(0x001F7049), UINT32_C(0x003964A1),
7401 UINT32_C(0x005657BE), UINT32_C(0x00DEE9F7), UINT32_C(0x0026BEEC),
7402 UINT32_C(0x00319B9B), UINT32_C(0x00345293)},
7403 {UINT32_C(0x006BDDA7), UINT32_C(0x0030B11F), UINT32_C(0x002600EA),
7404 UINT32_C(0x00461976), UINT32_C(0x001593E9), UINT32_C(0x006F183C),
7405 UINT32_C(0x003ABB5A), UINT32_C(0x0018F1A8), UINT32_C(0x00390978),
7406 UINT32_C(0x0005156D), UINT32_C(0x00075AED)}},
7407 {{UINT32_C(0x001BD2D5), UINT32_C(0x00578B39), UINT32_C(0x007FE095),
7408 UINT32_C(0x0046AFA9), UINT32_C(0x002148E8), UINT32_C(0x0017C3CD),
7409 UINT32_C(0x006AE351), UINT32_C(0x0063F7AB), UINT32_C(0x0050AA1E),
7410 UINT32_C(0x004184F5), UINT32_C(0x0069223D)},
7411 {UINT32_C(0x0086A15A), UINT32_C(0x0033AD1F), UINT32_C(0x006A0376),
7412 UINT32_C(0x00C44A80), UINT32_C(0x001DE4DA), UINT32_C(0x000819B5),
7413 UINT32_C(0x00275A25), UINT32_C(0x005EA5CD), UINT32_C(0x0022AA1B),
7414 UINT32_C(0x004A1528), UINT32_C(0x0041A71A)},
7415 {UINT32_C(0x00F443D0), UINT32_C(0x007F9618), UINT32_C(0x005E374D),
7416 UINT32_C(0x00C0032C), UINT32_C(0x005BC03C), UINT32_C(0x00225F6A),
7417 UINT32_C(0x002F1161), UINT32_C(0x0062CB7E), UINT32_C(0x00527B02),
7418 UINT32_C(0x005AAD7F), UINT32_C(0x00585C83)}},
7419 {{UINT32_C(0x00D110A1), UINT32_C(0x004B6AF7), UINT32_C(0x00084690),
7420 UINT32_C(0x00F276EF), UINT32_C(0x0000F67B), UINT32_C(0x001870DC),
7421 UINT32_C(0x0010FCB3), UINT32_C(0x00392CFE), UINT32_C(0x002086D8),
7422 UINT32_C(0x007424AF), UINT32_C(0x00202355)},
7423 {UINT32_C(0x00077C6C), UINT32_C(0x0025E823), UINT32_C(0x006EF81B),
7424 UINT32_C(0x00540F85), UINT32_C(0x002C8AF2), UINT32_C(0x0013C77B),
7425 UINT32_C(0x001C4D2F), UINT32_C(0x001021D9), UINT32_C(0x00146F24),
7426 UINT32_C(0x003599F3), UINT32_C(0x004B4CCC)},
7427 {UINT32_C(0x004CD365), UINT32_C(0x00179717), UINT32_C(0x0039A122),
7428 UINT32_C(0x00B62616), UINT32_C(0x007AEE90), UINT32_C(0x0029164E),
7429 UINT32_C(0x0039438A), UINT32_C(0x00CBA485), UINT32_C(0x00428DC8),
7430 UINT32_C(0x00313356), UINT32_C(0x006E6A72)}},
7431 {{UINT32_C(0x00CF5614), UINT32_C(0x00163606), UINT32_C(0x002CA6AC),
7432 UINT32_C(0x006EA0B2), UINT32_C(0x006DA8EE), UINT32_C(0x0019BDF3),
7433 UINT32_C(0x006043AF), UINT32_C(0x008AA760), UINT32_C(0x002E08F1),
7434 UINT32_C(0x0037973A), UINT32_C(0x0029B40D)},
7435 {UINT32_C(0x00379A65), UINT32_C(0x0052E429), UINT32_C(0x0068686B),
7436 UINT32_C(0x00C69C90), UINT32_C(0x004E9422), UINT32_C(0x00366023),
7437 UINT32_C(0x002260F4), UINT32_C(0x005BAF5B), UINT32_C(0x000678A6),
7438 UINT32_C(0x000460DA), UINT32_C(0x004F4340)},
7439 {UINT32_C(0x00E03B58), UINT32_C(0x007B260B), UINT32_C(0x005BA74C),
7440 UINT32_C(0x00BD1A46), UINT32_C(0x0009DC7B), UINT32_C(0x00118343),
7441 UINT32_C(0x00021428), UINT32_C(0x000FFED5), UINT32_C(0x0072D7E6),
7442 UINT32_C(0x003DCFB6), UINT32_C(0x003AB926)}},
7443 {{UINT32_C(0x0077649D), UINT32_C(0x005389B7), UINT32_C(0x004D6E76),
7444 UINT32_C(0x00936F59), UINT32_C(0x00463E7C), UINT32_C(0x006D778A),
7445 UINT32_C(0x0009DB6F), UINT32_C(0x00A424F1), UINT32_C(0x0052F5CC),
7446 UINT32_C(0x007E60DE), UINT32_C(0x004279FB)},
7447 {UINT32_C(0x00A7028F), UINT32_C(0x007EA950), UINT32_C(0x001EFBD6),
7448 UINT32_C(0x00BDA79F), UINT32_C(0x007AF7CC), UINT32_C(0x00279C7C),
7449 UINT32_C(0x006C7303), UINT32_C(0x00E939AC), UINT32_C(0x00354019),
7450 UINT32_C(0x00187CF7), UINT32_C(0x00183D31)},
7451 {UINT32_C(0x0042F626), UINT32_C(0x0074EA5E), UINT32_C(0x00538C9A),
7452 UINT32_C(0x00AF163A), UINT32_C(0x004C692D), UINT32_C(0x0023FAA0),
7453 UINT32_C(0x00775E16), UINT32_C(0x0062DAB8), UINT32_C(0x007D6702),
7454 UINT32_C(0x001B38C5), UINT32_C(0x001E3974)}},
7455 {{UINT32_C(0x004F9403), UINT32_C(0x00748471), UINT32_C(0x00211B76),
7456 UINT32_C(0x001EFC08), UINT32_C(0x005B213F), UINT32_C(0x003E9002),
7457 UINT32_C(0x00785B3C), UINT32_C(0x00E45607), UINT32_C(0x003D477B),
7458 UINT32_C(0x00282DEF), UINT32_C(0x00504A42)},
7459 {UINT32_C(0x00BF7FBB), UINT32_C(0x000A066A), UINT32_C(0x000679D4),
7460 UINT32_C(0x00BB2351), UINT32_C(0x007D83CA), UINT32_C(0x00612D60),
7461 UINT32_C(0x00031501), UINT32_C(0x00F4CAB2), UINT32_C(0x002155C8),
7462 UINT32_C(0x003A8F2C), UINT32_C(0x00169BC2)},
7463 {UINT32_C(0x000357B5), UINT32_C(0x006B1266), UINT32_C(0x002BCBF3),
7464 UINT32_C(0x00A64DFF), UINT32_C(0x0066D9DE), UINT32_C(0x0057385B),
7465 UINT32_C(0x005050FF), UINT32_C(0x006FC06F), UINT32_C(0x0028E483),
7466 UINT32_C(0x0051EF87), UINT32_C(0x000CC48B)}},
7467 {{UINT32_C(0x00ED9E35), UINT32_C(0x0023A04E), UINT32_C(0x0024255C),
7468 UINT32_C(0x0070038E), UINT32_C(0x0046A52B), UINT32_C(0x004E9C3F),
7469 UINT32_C(0x006C8BA2), UINT32_C(0x00D8ED9C), UINT32_C(0x006F6A03),
7470 UINT32_C(0x003098C4), UINT32_C(0x005D825F)},
7471 {UINT32_C(0x008FA640), UINT32_C(0x000B9382), UINT32_C(0x0011CD48),
7472 UINT32_C(0x00034F5D), UINT32_C(0x0059465F), UINT32_C(0x0070DA45),
7473 UINT32_C(0x00649F15), UINT32_C(0x0054EE9E), UINT32_C(0x003D37B0),
7474 UINT32_C(0x004361C8), UINT32_C(0x002CB478)},
7475 {UINT32_C(0x0012D22E), UINT32_C(0x00674682), UINT32_C(0x0070C891),
7476 UINT32_C(0x00FC49FE), UINT32_C(0x003AF178), UINT32_C(0x0077EF15),
7477 UINT32_C(0x007CF642), UINT32_C(0x00E36298), UINT32_C(0x002FEFEF),
7478 UINT32_C(0x0070ADFB), UINT32_C(0x00674E26)}},
7479 {{UINT32_C(0x00E45F49), UINT32_C(0x0042AB1C), UINT32_C(0x005B58EE),
7480 UINT32_C(0x009A5641), UINT32_C(0x004084D4), UINT32_C(0x00776081),
7481 UINT32_C(0x004873EC), UINT32_C(0x0091B439), UINT32_C(0x0049547A),
7482 UINT32_C(0x0061EF9F), UINT32_C(0x00209C2C)},
7483 {UINT32_C(0x00ACB336), UINT32_C(0x0002E07D), UINT32_C(0x006207CB),
7484 UINT32_C(0x0044DAE2), UINT32_C(0x0017A196), UINT32_C(0x006B179D),
7485 UINT32_C(0x005CFADF), UINT32_C(0x00081BD0), UINT32_C(0x002587D0),
7486 UINT32_C(0x005AA501), UINT32_C(0x0027A6E9)},
7487 {UINT32_C(0x0094228F), UINT32_C(0x000636DC), UINT32_C(0x005A4102),
7488 UINT32_C(0x003E66B4), UINT32_C(0x0011F6CD), UINT32_C(0x0038E6FD),
7489 UINT32_C(0x000B5086), UINT32_C(0x0050E978), UINT32_C(0x005AE74C),
7490 UINT32_C(0x00246161), UINT32_C(0x007E9879)}},
7491 {{UINT32_C(0x0065CC5A), UINT32_C(0x000BD258), UINT32_C(0x00167FAC),
7492 UINT32_C(0x00E5D799), UINT32_C(0x002DCFC5), UINT32_C(0x0045B74C),
7493 UINT32_C(0x00057C88), UINT32_C(0x0038384F), UINT32_C(0x003413FE),
7494 UINT32_C(0x00625CFF), UINT32_C(0x00014CE5)},
7495 {UINT32_C(0x0038E62F), UINT32_C(0x004B5EE4), UINT32_C(0x004ADC3F),
7496 UINT32_C(0x0062FF7C), UINT32_C(0x001110E4), UINT32_C(0x007C7151),
7497 UINT32_C(0x002F8915), UINT32_C(0x0068F26B), UINT32_C(0x0038A310),
7498 UINT32_C(0x002E8D53), UINT32_C(0x0031786B)},
7499 {UINT32_C(0x004DE3F1), UINT32_C(0x00036913), UINT32_C(0x006704FB),
7500 UINT32_C(0x003944F4), UINT32_C(0x003E4AD6), UINT32_C(0x001A01BA),
7501 UINT32_C(0x002E0D68), UINT32_C(0x004A2407), UINT32_C(0x0047BA89),
7502 UINT32_C(0x003808BF), UINT32_C(0x0070E238)}},
7503 {{UINT32_C(0x001B2F70), UINT32_C(0x006F3BCD), UINT32_C(0x0020C220),
7504 UINT32_C(0x00971E3D), UINT32_C(0x0067DC3E), UINT32_C(0x00154916),
7505 UINT32_C(0x007EE08E), UINT32_C(0x009FB7E0), UINT32_C(0x00164A27),
7506 UINT32_C(0x00000D51), UINT32_C(0x00044A8C)},
7507 {UINT32_C(0x00441852), UINT32_C(0x004183C7), UINT32_C(0x000B05DA),
7508 UINT32_C(0x00765798), UINT32_C(0x002FE415), UINT32_C(0x0078F9D1),
7509 UINT32_C(0x0049FDE6), UINT32_C(0x00D85938), UINT32_C(0x00404646),
7510 UINT32_C(0x005B14A2), UINT32_C(0x00151434)},
7511 {UINT32_C(0x001ECEB3), UINT32_C(0x00723B7F), UINT32_C(0x0073FB3C),
7512 UINT32_C(0x0055508D), UINT32_C(0x002C2D2B), UINT32_C(0x0040F43E),
7513 UINT32_C(0x001CBD6A), UINT32_C(0x00015808), UINT32_C(0x0013E380),
7514 UINT32_C(0x00778472), UINT32_C(0x0014758C)}},
7515 {{UINT32_C(0x00D4475B), UINT32_C(0x00404279), UINT32_C(0x006905B8),
7516 UINT32_C(0x00F7FB57), UINT32_C(0x0073BDA7), UINT32_C(0x00269082),
7517 UINT32_C(0x006B26ED), UINT32_C(0x0027D833), UINT32_C(0x001E216F),
7518 UINT32_C(0x001360D4), UINT32_C(0x00115751)},
7519 {UINT32_C(0x00E38DD3), UINT32_C(0x0054A13C), UINT32_C(0x000EBF81),
7520 UINT32_C(0x0010F4E8), UINT32_C(0x0039AB55), UINT32_C(0x0031188E),
7521 UINT32_C(0x0027D686), UINT32_C(0x00C9A0DF), UINT32_C(0x0039BD06),
7522 UINT32_C(0x00350B58), UINT32_C(0x007D7257)},
7523 {UINT32_C(0x00A31782), UINT32_C(0x000F1C0E), UINT32_C(0x002C8F03),
7524 UINT32_C(0x00D72648), UINT32_C(0x0039C85F), UINT32_C(0x004A1C54),
7525 UINT32_C(0x000FF85A), UINT32_C(0x0026A90F), UINT32_C(0x002B4E8C),
7526 UINT32_C(0x000A4D59), UINT32_C(0x0050B904)}},
7527 {{UINT32_C(0x006238BE), UINT32_C(0x00175795), UINT32_C(0x00538917),
7528 UINT32_C(0x007BD984), UINT32_C(0x00292FC6), UINT32_C(0x00080628),
7529 UINT32_C(0x001B5D25), UINT32_C(0x00D80A64), UINT32_C(0x005B034B),
7530 UINT32_C(0x00167E5D), UINT32_C(0x00421184)},
7531 {UINT32_C(0x00BA4129), UINT32_C(0x000FC466), UINT32_C(0x003F5CA0),
7532 UINT32_C(0x00B0084A), UINT32_C(0x003B6970), UINT32_C(0x0079C8BB),
7533 UINT32_C(0x006F3E63), UINT32_C(0x00D86F54), UINT32_C(0x003A31F7),
7534 UINT32_C(0x00382189), UINT32_C(0x005CEAB5)},
7535 {UINT32_C(0x0041A489), UINT32_C(0x004B3EF7), UINT32_C(0x00591EC7),
7536 UINT32_C(0x00F08AA6), UINT32_C(0x00580111), UINT32_C(0x0006B198),
7537 UINT32_C(0x0031386E), UINT32_C(0x00EC23A3), UINT32_C(0x007F21FD),
7538 UINT32_C(0x005E25F3), UINT32_C(0x0047AC14)}},
7539 {{UINT32_C(0x00AB4BF3), UINT32_C(0x0070ED4E), UINT32_C(0x001DFAA3),
7540 UINT32_C(0x006F788D), UINT32_C(0x000470EF), UINT32_C(0x0005F6CC),
7541 UINT32_C(0x00317FCC), UINT32_C(0x00341719), UINT32_C(0x000AF8E5),
7542 UINT32_C(0x00265856), UINT32_C(0x004EA29A)},
7543 {UINT32_C(0x00BD8CE2), UINT32_C(0x0019149B), UINT32_C(0x0010C6C2),
7544 UINT32_C(0x00D9E127), UINT32_C(0x006B514E), UINT32_C(0x00755F77),
7545 UINT32_C(0x004E4772), UINT32_C(0x00398A6D), UINT32_C(0x0032566C),
7546 UINT32_C(0x00029F76), UINT32_C(0x0050B40A)},
7547 {UINT32_C(0x008B1A27), UINT32_C(0x004EC0C5), UINT32_C(0x0069ED34),
7548 UINT32_C(0x001088E0), UINT32_C(0x004CD905), UINT32_C(0x00697E9E),
7549 UINT32_C(0x000A4361), UINT32_C(0x00A3E043), UINT32_C(0x0058F3E3),
7550 UINT32_C(0x002D4E70), UINT32_C(0x006C75F0)}},
7553 {{UINT32_C(0x005AB8BD), UINT32_C(0x0029D680), UINT32_C(0x0006977B),
7554 UINT32_C(0x0074F696), UINT32_C(0x00048954), UINT32_C(0x0028F214),
7555 UINT32_C(0x0045A271), UINT32_C(0x000DB9C5), UINT32_C(0x00141E0B),
7556 UINT32_C(0x0064EAF4), UINT32_C(0x0016FA62)},
7557 {UINT32_C(0x00DD9A68), UINT32_C(0x0020101A), UINT32_C(0x006747C5),
7558 UINT32_C(0x00C02A2D), UINT32_C(0x00551617), UINT32_C(0x00318D4B),
7559 UINT32_C(0x003D5380), UINT32_C(0x003B36CE), UINT32_C(0x0042C7B9),
7560 UINT32_C(0x0068C9EF), UINT32_C(0x000786CD)},
7561 {UINT32_C(0x0092DAA3), UINT32_C(0x006F3072), UINT32_C(0x0025BB51),
7562 UINT32_C(0x0082E155), UINT32_C(0x002995E2), UINT32_C(0x00086EAC),
7563 UINT32_C(0x004295AF), UINT32_C(0x0015CF09), UINT32_C(0x000217DF),
7564 UINT32_C(0x0025C6FF), UINT32_C(0x006A1FF6)}},
7565 {{UINT32_C(0x0068992F), UINT32_C(0x0037A443), UINT32_C(0x004E52B8),
7566 UINT32_C(0x00EB4DD5), UINT32_C(0x00732F40), UINT32_C(0x0039E0FA),
7567 UINT32_C(0x0035516B), UINT32_C(0x00D1FF12), UINT32_C(0x007B9904),
7568 UINT32_C(0x0000D042), UINT32_C(0x0061BEA7)},
7569 {UINT32_C(0x006695E1), UINT32_C(0x0079A990), UINT32_C(0x007D995E),
7570 UINT32_C(0x008EA8CE), UINT32_C(0x0024E995), UINT32_C(0x0009615C),
7571 UINT32_C(0x003CF6CE), UINT32_C(0x00077F8E), UINT32_C(0x00350417),
7572 UINT32_C(0x0062CAC6), UINT32_C(0x0006858A)},
7573 {UINT32_C(0x0022B953), UINT32_C(0x003B5DF9), UINT32_C(0x004AEDEE),
7574 UINT32_C(0x000CEEC5), UINT32_C(0x003887F6), UINT32_C(0x000254BB),
7575 UINT32_C(0x001856BF), UINT32_C(0x00B16F48), UINT32_C(0x00226205),
7576 UINT32_C(0x001DDE25), UINT32_C(0x006802A0)}},
7577 {{UINT32_C(0x00D029FB), UINT32_C(0x0024FF9C), UINT32_C(0x003692B5),
7578 UINT32_C(0x003D6298), UINT32_C(0x005113AA), UINT32_C(0x0016BB74),
7579 UINT32_C(0x00207B6F), UINT32_C(0x00CFD145), UINT32_C(0x001A0C73),
7580 UINT32_C(0x003DD3F4), UINT32_C(0x004AC618)},
7581 {UINT32_C(0x007E0F78), UINT32_C(0x00342407), UINT32_C(0x007BF737),
7582 UINT32_C(0x008C11E4), UINT32_C(0x001D19AF), UINT32_C(0x0023A2DD),
7583 UINT32_C(0x00538E8D), UINT32_C(0x00026531), UINT32_C(0x002A0077),
7584 UINT32_C(0x002FBD3B), UINT32_C(0x000D23EE)},
7585 {UINT32_C(0x009B883D), UINT32_C(0x000C8276), UINT32_C(0x006F819D),
7586 UINT32_C(0x00FC2912), UINT32_C(0x00382987), UINT32_C(0x007E7030),
7587 UINT32_C(0x003EF8E1), UINT32_C(0x00E2007A), UINT32_C(0x0008D395),
7588 UINT32_C(0x003F0615), UINT32_C(0x00063C97)}},
7589 {{UINT32_C(0x00156CDE), UINT32_C(0x007EA553), UINT32_C(0x004022D6),
7590 UINT32_C(0x00DFB476), UINT32_C(0x000AA93D), UINT32_C(0x0075AAD5),
7591 UINT32_C(0x005CA989), UINT32_C(0x00F4319E), UINT32_C(0x006F4102),
7592 UINT32_C(0x002EBD52), UINT32_C(0x004C0F6F)},
7593 {UINT32_C(0x002F3ABE), UINT32_C(0x002C0332), UINT32_C(0x000C7B65),
7594 UINT32_C(0x00E76C78), UINT32_C(0x002AEA4E), UINT32_C(0x00419F87),
7595 UINT32_C(0x00340B29), UINT32_C(0x0039375F), UINT32_C(0x005747D0),
7596 UINT32_C(0x002FBD65), UINT32_C(0x0056D9BF)},
7597 {UINT32_C(0x00F9E607), UINT32_C(0x00092305), UINT32_C(0x005A5130),
7598 UINT32_C(0x00B7A777), UINT32_C(0x00393B42), UINT32_C(0x002198A4),
7599 UINT32_C(0x0044F3BE), UINT32_C(0x00B56C11), UINT32_C(0x000C5006),
7600 UINT32_C(0x0014F3D3), UINT32_C(0x00204C61)}},
7601 {{UINT32_C(0x00AA29BE), UINT32_C(0x00452FB8), UINT32_C(0x000DF2B9),
7602 UINT32_C(0x00F57AEA), UINT32_C(0x00309807), UINT32_C(0x0039FB85),
7603 UINT32_C(0x00505F6F), UINT32_C(0x00C3979A), UINT32_C(0x0037D4C6),
7604 UINT32_C(0x0063A3A0), UINT32_C(0x0041BB59)},
7605 {UINT32_C(0x00979A22), UINT32_C(0x0011A314), UINT32_C(0x004DCD17),
7606 UINT32_C(0x0073157E), UINT32_C(0x007EA111), UINT32_C(0x005CA164),
7607 UINT32_C(0x007D14D4), UINT32_C(0x00F4DD95), UINT32_C(0x0065EA29),
7608 UINT32_C(0x000A8618), UINT32_C(0x00458E9C)},
7609 {UINT32_C(0x00166F58), UINT32_C(0x003902F4), UINT32_C(0x005DF4F1),
7610 UINT32_C(0x00FD1412), UINT32_C(0x0065A422), UINT32_C(0x005C9158),
7611 UINT32_C(0x007FA83F), UINT32_C(0x001B6003), UINT32_C(0x003E37A1),
7612 UINT32_C(0x00558CA7), UINT32_C(0x005F8B80)}},
7613 {{UINT32_C(0x0058D515), UINT32_C(0x000E279B), UINT32_C(0x0061A7DC),
7614 UINT32_C(0x0030FF7E), UINT32_C(0x0036EF25), UINT32_C(0x00545909),
7615 UINT32_C(0x0071356E), UINT32_C(0x009FA397), UINT32_C(0x006064CF),
7616 UINT32_C(0x0023899B), UINT32_C(0x0023C04A)},
7617 {UINT32_C(0x0070B892), UINT32_C(0x003C225C), UINT32_C(0x00641506),
7618 UINT32_C(0x00BC6E0A), UINT32_C(0x0067DF77), UINT32_C(0x001C1328),
7619 UINT32_C(0x006FB16A), UINT32_C(0x00DDC3EF), UINT32_C(0x000C0A82),
7620 UINT32_C(0x0035BBBF), UINT32_C(0x0018D630)},
7621 {UINT32_C(0x00F762A4), UINT32_C(0x006436A9), UINT32_C(0x0068EFB4),
7622 UINT32_C(0x00AAEE79), UINT32_C(0x001FA040), UINT32_C(0x005BE9B2),
7623 UINT32_C(0x0068C25E), UINT32_C(0x0069171C), UINT32_C(0x0069727D),
7624 UINT32_C(0x004D3596), UINT32_C(0x007D2D07)}},
7625 {{UINT32_C(0x00E0A6B1), UINT32_C(0x00537BD4), UINT32_C(0x00732E56),
7626 UINT32_C(0x00054667), UINT32_C(0x00504F91), UINT32_C(0x005BEA24),
7627 UINT32_C(0x003816A4), UINT32_C(0x006CAC1F), UINT32_C(0x00094C1A),
7628 UINT32_C(0x007E0D77), UINT32_C(0x001F325B)},
7629 {UINT32_C(0x0056C790), UINT32_C(0x00696172), UINT32_C(0x004393F7),
7630 UINT32_C(0x0007BC7D), UINT32_C(0x0024008C), UINT32_C(0x00632185),
7631 UINT32_C(0x0039D510), UINT32_C(0x00776C63), UINT32_C(0x005303C0),
7632 UINT32_C(0x00488334), UINT32_C(0x004A46B9)},
7633 {UINT32_C(0x00CAB13C), UINT32_C(0x007B99B0), UINT32_C(0x00716826),
7634 UINT32_C(0x0090AADC), UINT32_C(0x003C39E0), UINT32_C(0x0062EF5A),
7635 UINT32_C(0x00220C12), UINT32_C(0x004D0B33), UINT32_C(0x004E1E9F),
7636 UINT32_C(0x0009FA96), UINT32_C(0x00553213)}},
7637 {{UINT32_C(0x00250F6D), UINT32_C(0x007501A6), UINT32_C(0x003B682C),
7638 UINT32_C(0x0044D730), UINT32_C(0x00649A14), UINT32_C(0x0032BFCE),
7639 UINT32_C(0x0066ADB8), UINT32_C(0x0034ED5B), UINT32_C(0x0043D7B2),
7640 UINT32_C(0x0000FFB9), UINT32_C(0x005A4861)},
7641 {UINT32_C(0x003B7613), UINT32_C(0x0001D6FB), UINT32_C(0x003D0B17),
7642 UINT32_C(0x007E0DC7), UINT32_C(0x005BC5C1), UINT32_C(0x003BB331),
7643 UINT32_C(0x0062230B), UINT32_C(0x0061ECC7), UINT32_C(0x005DDB12),
7644 UINT32_C(0x002700A7), UINT32_C(0x00258078)},
7645 {UINT32_C(0x005856C3), UINT32_C(0x0046B785), UINT32_C(0x002EE0A7),
7646 UINT32_C(0x00316F2C), UINT32_C(0x001A3AAB), UINT32_C(0x0069EF00),
7647 UINT32_C(0x0002A746), UINT32_C(0x0099DDEA), UINT32_C(0x004753D7),
7648 UINT32_C(0x0062170C), UINT32_C(0x004CA608)}},
7649 {{UINT32_C(0x0096B8DD), UINT32_C(0x004957F8), UINT32_C(0x007298E2),
7650 UINT32_C(0x008A7B5F), UINT32_C(0x0001A2BB), UINT32_C(0x004D7F56),
7651 UINT32_C(0x00560362), UINT32_C(0x001642A5), UINT32_C(0x0017F72E),
7652 UINT32_C(0x003B6605), UINT32_C(0x00390B61)},
7653 {UINT32_C(0x0015F82F), UINT32_C(0x000E8511), UINT32_C(0x00668D3B),
7654 UINT32_C(0x00C4B091), UINT32_C(0x003C935D), UINT32_C(0x005D4F5F),
7655 UINT32_C(0x0065AFF6), UINT32_C(0x00C88375), UINT32_C(0x00488074),
7656 UINT32_C(0x00260091), UINT32_C(0x0032A589)},
7657 {UINT32_C(0x00BCD3E4), UINT32_C(0x0073BD2C), UINT32_C(0x00537827),
7658 UINT32_C(0x00C860A9), UINT32_C(0x0023CB46), UINT32_C(0x004AF7E7),
7659 UINT32_C(0x0055A3FB), UINT32_C(0x00D9298A), UINT32_C(0x002A1C35),
7660 UINT32_C(0x001D8443), UINT32_C(0x00625170)}},
7661 {{UINT32_C(0x00CC32C8), UINT32_C(0x0025B8DD), UINT32_C(0x0033759B),
7662 UINT32_C(0x00B90E61), UINT32_C(0x0053232D), UINT32_C(0x00622CCA),
7663 UINT32_C(0x003F2B2B), UINT32_C(0x0012CE87), UINT32_C(0x000FED16),
7664 UINT32_C(0x00517920), UINT32_C(0x0026E2BC)},
7665 {UINT32_C(0x0033B8DF), UINT32_C(0x006BD2B2), UINT32_C(0x002C06A6),
7666 UINT32_C(0x007B255F), UINT32_C(0x0049E009), UINT32_C(0x00109815),
7667 UINT32_C(0x0041610E), UINT32_C(0x007AA99D), UINT32_C(0x004D2604),
7668 UINT32_C(0x001C2975), UINT32_C(0x00419560)},
7669 {UINT32_C(0x00F4C3F1), UINT32_C(0x00358166), UINT32_C(0x0047A4EF),
7670 UINT32_C(0x00B32B54), UINT32_C(0x007F5298), UINT32_C(0x0060C7DC),
7671 UINT32_C(0x004550B3), UINT32_C(0x00381199), UINT32_C(0x004D1985),
7672 UINT32_C(0x003008AD), UINT32_C(0x001E997E)}},
7673 {{UINT32_C(0x0080A2DD), UINT32_C(0x0011A8A1), UINT32_C(0x00763776),
7674 UINT32_C(0x0037A4E8), UINT32_C(0x002DEFD0), UINT32_C(0x005CC3A3),
7675 UINT32_C(0x0002CD3A), UINT32_C(0x003BDE69), UINT32_C(0x000D3C3B),
7676 UINT32_C(0x00468707), UINT32_C(0x002C6250)},
7677 {UINT32_C(0x00DC4853), UINT32_C(0x0013FF85), UINT32_C(0x006F92A3),
7678 UINT32_C(0x00E2DC5B), UINT32_C(0x002BA1BF), UINT32_C(0x0069003C),
7679 UINT32_C(0x00696B4A), UINT32_C(0x001FEA22), UINT32_C(0x00737E75),
7680 UINT32_C(0x002DDA93), UINT32_C(0x00682793)},
7681 {UINT32_C(0x00792D5C), UINT32_C(0x00756880), UINT32_C(0x0016DEDC),
7682 UINT32_C(0x00132FF7), UINT32_C(0x0028F65F), UINT32_C(0x00687D6B),
7683 UINT32_C(0x0042DB10), UINT32_C(0x00F60F17), UINT32_C(0x00244567),
7684 UINT32_C(0x005EA7EE), UINT32_C(0x00680EE7)}},
7685 {{UINT32_C(0x0017AD54), UINT32_C(0x00226170), UINT32_C(0x00248F16),
7686 UINT32_C(0x00E68159), UINT32_C(0x001F85B5), UINT32_C(0x005AEC69),
7687 UINT32_C(0x00207C21), UINT32_C(0x0080BD65), UINT32_C(0x0072C461),
7688 UINT32_C(0x000826BF), UINT32_C(0x00721CFE)},
7689 {UINT32_C(0x00221394), UINT32_C(0x000F6241), UINT32_C(0x00312D0B),
7690 UINT32_C(0x007310BE), UINT32_C(0x006D18ED), UINT32_C(0x0009B7DC),
7691 UINT32_C(0x0002ADC6), UINT32_C(0x009D4B71), UINT32_C(0x00652C01),
7692 UINT32_C(0x001193C0), UINT32_C(0x006CDFD9)},
7693 {UINT32_C(0x00441B95), UINT32_C(0x005F316E), UINT32_C(0x00055A1A),
7694 UINT32_C(0x008ABFDB), UINT32_C(0x0050B1C9), UINT32_C(0x00219EE2),
7695 UINT32_C(0x003C70AE), UINT32_C(0x004C49AE), UINT32_C(0x00791825),
7696 UINT32_C(0x004EA87D), UINT32_C(0x001C346C)}},
7697 {{UINT32_C(0x00633E8B), UINT32_C(0x000D64E6), UINT32_C(0x0043AD57),
7698 UINT32_C(0x0056000C), UINT32_C(0x0022A710), UINT32_C(0x001CF6E7),
7699 UINT32_C(0x0061C894), UINT32_C(0x0029FCC0), UINT32_C(0x0063A2A7),
7700 UINT32_C(0x002F042F), UINT32_C(0x006D9C7B)},
7701 {UINT32_C(0x00C0114A), UINT32_C(0x00054C9F), UINT32_C(0x00014A30),
7702 UINT32_C(0x008750DC), UINT32_C(0x0014F782), UINT32_C(0x005BDDB7),
7703 UINT32_C(0x0048FFA9), UINT32_C(0x006F51B9), UINT32_C(0x000ACD25),
7704 UINT32_C(0x001C791B), UINT32_C(0x006F027E)},
7705 {UINT32_C(0x0059BE30), UINT32_C(0x0004C8AA), UINT32_C(0x001EEFA6),
7706 UINT32_C(0x00969A3F), UINT32_C(0x002541FF), UINT32_C(0x00021EAE),
7707 UINT32_C(0x002335EF), UINT32_C(0x007B34F0), UINT32_C(0x005812F4),
7708 UINT32_C(0x0035961A), UINT32_C(0x0018E93C)}},
7709 {{UINT32_C(0x003D4ACA), UINT32_C(0x002344E6), UINT32_C(0x005AE7C9),
7710 UINT32_C(0x00C22F17), UINT32_C(0x0053F5F0), UINT32_C(0x0037ABD3),
7711 UINT32_C(0x0064DD19), UINT32_C(0x00A742A2), UINT32_C(0x00762397),
7712 UINT32_C(0x000E9EEF), UINT32_C(0x00047D34)},
7713 {UINT32_C(0x00E9B3BB), UINT32_C(0x00532D39), UINT32_C(0x004E866E),
7714 UINT32_C(0x00F7D682), UINT32_C(0x002ACA85), UINT32_C(0x00552578),
7715 UINT32_C(0x0033FA4B), UINT32_C(0x00977782), UINT32_C(0x003D410E),
7716 UINT32_C(0x0003548B), UINT32_C(0x0054FC74)},
7717 {UINT32_C(0x00C8BBFF), UINT32_C(0x0013F345), UINT32_C(0x0058E472),
7718 UINT32_C(0x00274591), UINT32_C(0x005597A6), UINT32_C(0x0013E285),
7719 UINT32_C(0x0057D3BB), UINT32_C(0x0092D7C6), UINT32_C(0x00500460),
7720 UINT32_C(0x00488CB7), UINT32_C(0x006800FE)}},
7721 {{UINT32_C(0x0000AA79), UINT32_C(0x002C098B), UINT32_C(0x00759A30),
7722 UINT32_C(0x002C7125), UINT32_C(0x00199DDC), UINT32_C(0x0075546E),
7723 UINT32_C(0x00559A27), UINT32_C(0x00DF24BF), UINT32_C(0x00151F99),
7724 UINT32_C(0x003C4C5B), UINT32_C(0x002EAF89)},
7725 {UINT32_C(0x00DC697B), UINT32_C(0x00751FA8), UINT32_C(0x0077C24F),
7726 UINT32_C(0x0038C1A6), UINT32_C(0x0013EBD3), UINT32_C(0x0023A808),
7727 UINT32_C(0x000B2621), UINT32_C(0x00C685DB), UINT32_C(0x00581796),
7728 UINT32_C(0x0057D263), UINT32_C(0x0004E256)},
7729 {UINT32_C(0x00E52262), UINT32_C(0x001D22BD), UINT32_C(0x006A26A0),
7730 UINT32_C(0x0085E1CA), UINT32_C(0x003EC7B7), UINT32_C(0x002FFB62),
7731 UINT32_C(0x0067736A), UINT32_C(0x00EF293F), UINT32_C(0x0061C4FE),
7732 UINT32_C(0x00730AA3), UINT32_C(0x000EB2F6)}},
7733 {{UINT32_C(0x00641095), UINT32_C(0x0058D612), UINT32_C(0x000AAE18),
7734 UINT32_C(0x0029DFF3), UINT32_C(0x00001553), UINT32_C(0x007F0860),
7735 UINT32_C(0x000F0ED0), UINT32_C(0x00A86E36), UINT32_C(0x000DBF80),
7736 UINT32_C(0x0031F7B2), UINT32_C(0x00229559)},
7737 {UINT32_C(0x003D6EA7), UINT32_C(0x00417EB0), UINT32_C(0x0030EED3),
7738 UINT32_C(0x0076B04C), UINT32_C(0x006404B7), UINT32_C(0x00647E89),
7739 UINT32_C(0x0038E725), UINT32_C(0x00955982), UINT32_C(0x0044F11A),
7740 UINT32_C(0x0030EB34), UINT32_C(0x0060A0E2)},
7741 {UINT32_C(0x00FFBA33), UINT32_C(0x00576743), UINT32_C(0x007B4196),
7742 UINT32_C(0x0065FCEB), UINT32_C(0x00147F68), UINT32_C(0x00753F2E),
7743 UINT32_C(0x002CE14E), UINT32_C(0x004CC9FA), UINT32_C(0x0008D7B1),
7744 UINT32_C(0x004C33D1), UINT32_C(0x0045EB11)}},
7747 {{UINT32_C(0x00178112), UINT32_C(0x004144EF), UINT32_C(0x0015E475),
7748 UINT32_C(0x00280993), UINT32_C(0x003DFA25), UINT32_C(0x00316893),
7749 UINT32_C(0x0013A505), UINT32_C(0x002E8E8C), UINT32_C(0x001BE3B1),
7750 UINT32_C(0x004A5354), UINT32_C(0x005737B1)},
7751 {UINT32_C(0x005EE99B), UINT32_C(0x00738EC3), UINT32_C(0x000EEBF1),
7752 UINT32_C(0x006EAA11), UINT32_C(0x006EC5B6), UINT32_C(0x00137DDE),
7753 UINT32_C(0x0077237C), UINT32_C(0x00B7F2C7), UINT32_C(0x006D2A26),
7754 UINT32_C(0x005B944F), UINT32_C(0x0077B72B)},
7755 {UINT32_C(0x00288C6E), UINT32_C(0x005166D7), UINT32_C(0x0048279B),
7756 UINT32_C(0x009E9476), UINT32_C(0x0021C271), UINT32_C(0x0071BEB4),
7757 UINT32_C(0x004E74B9), UINT32_C(0x00F2F6D4), UINT32_C(0x00498EF2),
7758 UINT32_C(0x00769444), UINT32_C(0x00393F71)}},
7759 {{UINT32_C(0x00CF7E6B), UINT32_C(0x001C84EE), UINT32_C(0x00375656),
7760 UINT32_C(0x00982B0D), UINT32_C(0x0015275A), UINT32_C(0x0037C644),
7761 UINT32_C(0x00419783), UINT32_C(0x00E2FD75), UINT32_C(0x005830C6),
7762 UINT32_C(0x003DDDEF), UINT32_C(0x001D4931)},
7763 {UINT32_C(0x006F71D9), UINT32_C(0x0013F2A3), UINT32_C(0x007E4CC9),
7764 UINT32_C(0x0048B895), UINT32_C(0x006E0B00), UINT32_C(0x00535CF4),
7765 UINT32_C(0x004F83CB), UINT32_C(0x00E80D3A), UINT32_C(0x002893B7),
7766 UINT32_C(0x0039AF63), UINT32_C(0x00756654)},
7767 {UINT32_C(0x002DD089), UINT32_C(0x005B7963), UINT32_C(0x00147EEF),
7768 UINT32_C(0x008FE97D), UINT32_C(0x0074DE7F), UINT32_C(0x0038F059),
7769 UINT32_C(0x00424B8B), UINT32_C(0x00510FF5), UINT32_C(0x002A9DB5),
7770 UINT32_C(0x0040775A), UINT32_C(0x0023EC28)}},
7771 {{UINT32_C(0x004FFE86), UINT32_C(0x005A8445), UINT32_C(0x007B9BE4),
7772 UINT32_C(0x003CB951), UINT32_C(0x003DA9E0), UINT32_C(0x000B053F),
7773 UINT32_C(0x0068F80D), UINT32_C(0x008B792C), UINT32_C(0x006E5C50),
7774 UINT32_C(0x00709425), UINT32_C(0x00695574)},
7775 {UINT32_C(0x0055360D), UINT32_C(0x00304400), UINT32_C(0x007E3E9A),
7776 UINT32_C(0x00042D95), UINT32_C(0x006A420D), UINT32_C(0x000DE570),
7777 UINT32_C(0x0012F771), UINT32_C(0x007BF1D1), UINT32_C(0x005E64D1),
7778 UINT32_C(0x001011DE), UINT32_C(0x000FD8B3)},
7779 {UINT32_C(0x0035FF69), UINT32_C(0x0066F82F), UINT32_C(0x00765895),
7780 UINT32_C(0x00F5BC13), UINT32_C(0x00559AFC), UINT32_C(0x00165B92),
7781 UINT32_C(0x001A82F9), UINT32_C(0x004B92A4), UINT32_C(0x006FF84F),
7782 UINT32_C(0x000C3427), UINT32_C(0x0062C571)}},
7783 {{UINT32_C(0x001B13D2), UINT32_C(0x001AB645), UINT32_C(0x007C40CE),
7784 UINT32_C(0x007EA6AF), UINT32_C(0x00411986), UINT32_C(0x00393A3E),
7785 UINT32_C(0x003CE614), UINT32_C(0x006D6293), UINT32_C(0x003D6770),
7786 UINT32_C(0x003CBAD3), UINT32_C(0x005F61B3)},
7787 {UINT32_C(0x007F1514), UINT32_C(0x00563424), UINT32_C(0x00333C42),
7788 UINT32_C(0x0091B025), UINT32_C(0x000AC50C), UINT32_C(0x00572275),
7789 UINT32_C(0x00592815), UINT32_C(0x002DB85E), UINT32_C(0x0012ADB7),
7790 UINT32_C(0x00696D1D), UINT32_C(0x000924E7)},
7791 {UINT32_C(0x008A69B5), UINT32_C(0x0042A7C5), UINT32_C(0x007608DB),
7792 UINT32_C(0x00E7F3E0), UINT32_C(0x005993D5), UINT32_C(0x0004961E),
7793 UINT32_C(0x0076A481), UINT32_C(0x00A7DA96), UINT32_C(0x007E1606),
7794 UINT32_C(0x00752F27), UINT32_C(0x006EA269)}},
7795 {{UINT32_C(0x00E74931), UINT32_C(0x002B3168), UINT32_C(0x0062191F),
7796 UINT32_C(0x007F0A08), UINT32_C(0x00407602), UINT32_C(0x005E821F),
7797 UINT32_C(0x004B971A), UINT32_C(0x009FAA40), UINT32_C(0x00617415),
7798 UINT32_C(0x0019AF4C), UINT32_C(0x000A1378)},
7799 {UINT32_C(0x001CF746), UINT32_C(0x00698B21), UINT32_C(0x003AF2B3),
7800 UINT32_C(0x0018D41A), UINT32_C(0x00032EA5), UINT32_C(0x006A2A53),
7801 UINT32_C(0x0021B364), UINT32_C(0x004A1660), UINT32_C(0x00524EDD),
7802 UINT32_C(0x00537B8F), UINT32_C(0x0038BE03)},
7803 {UINT32_C(0x006C56DF), UINT32_C(0x0042F0FB), UINT32_C(0x000A9D1A),
7804 UINT32_C(0x007BE0C1), UINT32_C(0x006A26F4), UINT32_C(0x0034FD46),
7805 UINT32_C(0x005C512E), UINT32_C(0x00F3B887), UINT32_C(0x00741791),
7806 UINT32_C(0x000B6109), UINT32_C(0x007ED098)}},
7807 {{UINT32_C(0x002F95C3), UINT32_C(0x0075A30D), UINT32_C(0x004F8EA8),
7808 UINT32_C(0x00D36AE9), UINT32_C(0x003B9F94), UINT32_C(0x0050D27A),
7809 UINT32_C(0x0047AFFF), UINT32_C(0x00FF1072), UINT32_C(0x006EBA0D),
7810 UINT32_C(0x007147B6), UINT32_C(0x007C9C06)},
7811 {UINT32_C(0x007D647C), UINT32_C(0x00491D36), UINT32_C(0x003D3169),
7812 UINT32_C(0x00E48196), UINT32_C(0x005C2776), UINT32_C(0x0071BB7A),
7813 UINT32_C(0x000E3716), UINT32_C(0x00EEE6BA), UINT32_C(0x007A2FD6),
7814 UINT32_C(0x0066EADE), UINT32_C(0x006A3D3C)},
7815 {UINT32_C(0x00D712D2), UINT32_C(0x0030AFB5), UINT32_C(0x000B6DE0),
7816 UINT32_C(0x00CA9B95), UINT32_C(0x003CB508), UINT32_C(0x0002574C),
7817 UINT32_C(0x004F7664), UINT32_C(0x008BDA7C), UINT32_C(0x0052F4AE),
7818 UINT32_C(0x007C9C6D), UINT32_C(0x00640826)}},
7819 {{UINT32_C(0x00E39A36), UINT32_C(0x004E864A), UINT32_C(0x0041824A),
7820 UINT32_C(0x0014E9D0), UINT32_C(0x006B0DD5), UINT32_C(0x003F0191),
7821 UINT32_C(0x006B3AA8), UINT32_C(0x000F82B6), UINT32_C(0x00646713),
7822 UINT32_C(0x004411BF), UINT32_C(0x006EC066)},
7823 {UINT32_C(0x0055A118), UINT32_C(0x001D8588), UINT32_C(0x00098B01),
7824 UINT32_C(0x005B872B), UINT32_C(0x000612D7), UINT32_C(0x0015BB6C),
7825 UINT32_C(0x003EA8DE), UINT32_C(0x00492CBB), UINT32_C(0x0002B390),
7826 UINT32_C(0x002F64C6), UINT32_C(0x00309519)},
7827 {UINT32_C(0x00BCD94C), UINT32_C(0x000453AB), UINT32_C(0x0004DF45),
7828 UINT32_C(0x000AF59E), UINT32_C(0x00224611), UINT32_C(0x0046CB1F),
7829 UINT32_C(0x0037D384), UINT32_C(0x00704C79), UINT32_C(0x004E9EAE),
7830 UINT32_C(0x005F6C61), UINT32_C(0x0033B91C)}},
7831 {{UINT32_C(0x00C4EB7B), UINT32_C(0x001BB1AE), UINT32_C(0x000DF746),
7832 UINT32_C(0x002F5C66), UINT32_C(0x00386901), UINT32_C(0x004503D0),
7833 UINT32_C(0x00243C4F), UINT32_C(0x00F631A8), UINT32_C(0x0072318C),
7834 UINT32_C(0x0067781F), UINT32_C(0x0062555B)},
7835 {UINT32_C(0x009DF20B), UINT32_C(0x007957AF), UINT32_C(0x0048E896),
7836 UINT32_C(0x00266C31), UINT32_C(0x00606385), UINT32_C(0x00182ADB),
7837 UINT32_C(0x000F2D0A), UINT32_C(0x0047F1DB), UINT32_C(0x00612A5A),
7838 UINT32_C(0x00585C22), UINT32_C(0x00138DA1)},
7839 {UINT32_C(0x002B00C5), UINT32_C(0x007C31F7), UINT32_C(0x0027D051),
7840 UINT32_C(0x009836BE), UINT32_C(0x005DD824), UINT32_C(0x003C85C8),
7841 UINT32_C(0x00037B92), UINT32_C(0x005A36F0), UINT32_C(0x00072882),
7842 UINT32_C(0x00556F25), UINT32_C(0x005C74C4)}},
7843 {{UINT32_C(0x00200CDA), UINT32_C(0x00142D7E), UINT32_C(0x000C5F19),
7844 UINT32_C(0x0033CB24), UINT32_C(0x0062D137), UINT32_C(0x00370C3B),
7845 UINT32_C(0x007C19E3), UINT32_C(0x002C37A4), UINT32_C(0x0056C3B7),
7846 UINT32_C(0x0012591E), UINT32_C(0x005C6251)},
7847 {UINT32_C(0x00B8567F), UINT32_C(0x007942F3), UINT32_C(0x002971B5),
7848 UINT32_C(0x007509BB), UINT32_C(0x004489A3), UINT32_C(0x00090D38),
7849 UINT32_C(0x0049BA67), UINT32_C(0x00A295D7), UINT32_C(0x0006DE00),
7850 UINT32_C(0x005529F0), UINT32_C(0x0068D340)},
7851 {UINT32_C(0x008E1FEE), UINT32_C(0x002BADB8), UINT32_C(0x0060B20C),
7852 UINT32_C(0x00DE49F8), UINT32_C(0x0006AE06), UINT32_C(0x005BAE81),
7853 UINT32_C(0x00153FDC), UINT32_C(0x002DCC1B), UINT32_C(0x000F1E26),
7854 UINT32_C(0x00005870), UINT32_C(0x003CB27C)}},
7855 {{UINT32_C(0x00BA06D8), UINT32_C(0x0028ABA3), UINT32_C(0x004A0A47),
7856 UINT32_C(0x000E951E), UINT32_C(0x00609146), UINT32_C(0x00213816),
7857 UINT32_C(0x005657D3), UINT32_C(0x00404103), UINT32_C(0x0041BEE3),
7858 UINT32_C(0x001CC688), UINT32_C(0x003A758E)},
7859 {UINT32_C(0x00F8BBE3), UINT32_C(0x00641D00), UINT32_C(0x00119DD5),
7860 UINT32_C(0x004610E6), UINT32_C(0x0042B1F2), UINT32_C(0x00065991),
7861 UINT32_C(0x00400456), UINT32_C(0x0031F869), UINT32_C(0x00467CE5),
7862 UINT32_C(0x002ACA8A), UINT32_C(0x004AE71F)},
7863 {UINT32_C(0x00E75B70), UINT32_C(0x0045C331), UINT32_C(0x002C67D3),
7864 UINT32_C(0x002BAD62), UINT32_C(0x006D4C0D), UINT32_C(0x003E98E0),
7865 UINT32_C(0x0025DD15), UINT32_C(0x001652BE), UINT32_C(0x00138D53),
7866 UINT32_C(0x004CC0B3), UINT32_C(0x002588D3)}},
7867 {{UINT32_C(0x0015F134), UINT32_C(0x00758619), UINT32_C(0x005ABA25),
7868 UINT32_C(0x008AE40E), UINT32_C(0x00678EB8), UINT32_C(0x0001E6CD),
7869 UINT32_C(0x006265B1), UINT32_C(0x00D3C52B), UINT32_C(0x002372C9),
7870 UINT32_C(0x0008A5C9), UINT32_C(0x006ACFA4)},
7871 {UINT32_C(0x009F8482), UINT32_C(0x0045994C), UINT32_C(0x005989D0),
7872 UINT32_C(0x0048FFCC), UINT32_C(0x00242063), UINT32_C(0x000A8DD0),
7873 UINT32_C(0x005A0F78), UINT32_C(0x000518C7), UINT32_C(0x0039D0FB),
7874 UINT32_C(0x00116011), UINT32_C(0x0074BBE1)},
7875 {UINT32_C(0x008817CF), UINT32_C(0x0035F03B), UINT32_C(0x0008E964),
7876 UINT32_C(0x00DBB160), UINT32_C(0x0017FB04), UINT32_C(0x006F931C),
7877 UINT32_C(0x0024585A), UINT32_C(0x0043E352), UINT32_C(0x005B3B89),
7878 UINT32_C(0x0041A78E), UINT32_C(0x004EE10D)}},
7879 {{UINT32_C(0x00B5B594), UINT32_C(0x00238C49), UINT32_C(0x0061A952),
7880 UINT32_C(0x00547564), UINT32_C(0x0017E9B6), UINT32_C(0x004A85C1),
7881 UINT32_C(0x00092964), UINT32_C(0x00E0030F), UINT32_C(0x0002C024),
7882 UINT32_C(0x006FDEC5), UINT32_C(0x003414A1)},
7883 {UINT32_C(0x005F899E), UINT32_C(0x00317B47), UINT32_C(0x00390FE7),
7884 UINT32_C(0x0081FD30), UINT32_C(0x00666C28), UINT32_C(0x00310591),
7885 UINT32_C(0x000A02ED), UINT32_C(0x00C5E37F), UINT32_C(0x00200BEA),
7886 UINT32_C(0x004E58B8), UINT32_C(0x0006090A)},
7887 {UINT32_C(0x009AED9F), UINT32_C(0x006353DF), UINT32_C(0x004C8001),
7888 UINT32_C(0x00684029), UINT32_C(0x00278C84), UINT32_C(0x00476EFD),
7889 UINT32_C(0x002269BF), UINT32_C(0x0061CFF8), UINT32_C(0x006308BB),
7890 UINT32_C(0x0038C1A8), UINT32_C(0x000ED4DD)}},
7891 {{UINT32_C(0x0096CDC1), UINT32_C(0x004A93DE), UINT32_C(0x0017141A),
7892 UINT32_C(0x000CAE27), UINT32_C(0x00633C72), UINT32_C(0x001DD494),
7893 UINT32_C(0x005D5019), UINT32_C(0x007B392A), UINT32_C(0x004E6770),
7894 UINT32_C(0x0057CDFA), UINT32_C(0x0070ED69)},
7895 {UINT32_C(0x00A5AAC7), UINT32_C(0x0017F8BA), UINT32_C(0x0012D3F8),
7896 UINT32_C(0x00D2AEF7), UINT32_C(0x00203DAB), UINT32_C(0x001A6E08),
7897 UINT32_C(0x000F9D07), UINT32_C(0x003CEB53), UINT32_C(0x001F11A2),
7898 UINT32_C(0x00146100), UINT32_C(0x002BF207)},
7899 {UINT32_C(0x00AE2A02), UINT32_C(0x003FEF01), UINT32_C(0x00095E8C),
7900 UINT32_C(0x001BC27F), UINT32_C(0x00579C72), UINT32_C(0x007785A3),
7901 UINT32_C(0x000CF4D0), UINT32_C(0x00B77DC2), UINT32_C(0x00771FCC),
7902 UINT32_C(0x006D028D), UINT32_C(0x0072A687)}},
7903 {{UINT32_C(0x00FB5F0C), UINT32_C(0x000952F3), UINT32_C(0x0011F5D5),
7904 UINT32_C(0x0065371A), UINT32_C(0x006D7E88), UINT32_C(0x0054191C),
7905 UINT32_C(0x0076F7CF), UINT32_C(0x006B48DC), UINT32_C(0x006FD352),
7906 UINT32_C(0x004F1AA7), UINT32_C(0x007F5B13)},
7907 {UINT32_C(0x00606E6E), UINT32_C(0x00363808), UINT32_C(0x00407081),
7908 UINT32_C(0x0004FC3F), UINT32_C(0x00448579), UINT32_C(0x005D29C4),
7909 UINT32_C(0x001A127D), UINT32_C(0x005B9EEE), UINT32_C(0x00653D8E),
7910 UINT32_C(0x0028A4DF), UINT32_C(0x00628593)},
7911 {UINT32_C(0x00AC7820), UINT32_C(0x0030A9D3), UINT32_C(0x0071BE3A),
7912 UINT32_C(0x005FB4E5), UINT32_C(0x002512AE), UINT32_C(0x006EAE7D),
7913 UINT32_C(0x001D9B40), UINT32_C(0x005C1369), UINT32_C(0x00786C22),
7914 UINT32_C(0x0047AFEE), UINT32_C(0x00784A75)}},
7915 {{UINT32_C(0x00213EE3), UINT32_C(0x006F9827), UINT32_C(0x0021482B),
7916 UINT32_C(0x00E1390C), UINT32_C(0x00560D0B), UINT32_C(0x0050DD23),
7917 UINT32_C(0x0064A528), UINT32_C(0x00BA7CFF), UINT32_C(0x002D8C84),
7918 UINT32_C(0x0016175A), UINT32_C(0x005016A4)},
7919 {UINT32_C(0x00776C25), UINT32_C(0x000CB993), UINT32_C(0x0023BE80),
7920 UINT32_C(0x005A52FE), UINT32_C(0x002D117A), UINT32_C(0x00199CDB),
7921 UINT32_C(0x0052EB5E), UINT32_C(0x008D6F49), UINT32_C(0x007D7649),
7922 UINT32_C(0x0027048D), UINT32_C(0x001A9C36)},
7923 {UINT32_C(0x00632283), UINT32_C(0x00211DC7), UINT32_C(0x005DFA7C),
7924 UINT32_C(0x00F9046B), UINT32_C(0x00588CD6), UINT32_C(0x003FAF32),
7925 UINT32_C(0x007F4AED), UINT32_C(0x00575BC2), UINT32_C(0x007DBB8A),
7926 UINT32_C(0x0005122F), UINT32_C(0x006253CC)}},
7927 {{UINT32_C(0x000D1BD2), UINT32_C(0x001AF81A), UINT32_C(0x0037C285),
7928 UINT32_C(0x00D871E6), UINT32_C(0x0062340E), UINT32_C(0x0071909A),
7929 UINT32_C(0x000F0E01), UINT32_C(0x0076262E), UINT32_C(0x007BF9C3),
7930 UINT32_C(0x007F40FC), UINT32_C(0x000B2BC5)},
7931 {UINT32_C(0x002724D3), UINT32_C(0x00504EE8), UINT32_C(0x00609955),
7932 UINT32_C(0x0075E11A), UINT32_C(0x000CB36C), UINT32_C(0x0056D4AF),
7933 UINT32_C(0x000E59E9), UINT32_C(0x003E6912), UINT32_C(0x00789AD2),
7934 UINT32_C(0x00575219), UINT32_C(0x007D7B6C)},
7935 {UINT32_C(0x0072E3DB), UINT32_C(0x0050D327), UINT32_C(0x000F9230),
7936 UINT32_C(0x00AFB63A), UINT32_C(0x0008E760), UINT32_C(0x0059EB9D),
7937 UINT32_C(0x003A4CC1), UINT32_C(0x00C1CE75), UINT32_C(0x00497AD2),
7938 UINT32_C(0x006BAB27), UINT32_C(0x002B8174)}},
7941 {{UINT32_C(0x00C72DC5), UINT32_C(0x00771E4C), UINT32_C(0x007FE32B),
7942 UINT32_C(0x00502045), UINT32_C(0x00047BCA), UINT32_C(0x005E99DD),
7943 UINT32_C(0x0062584D), UINT32_C(0x00C26155), UINT32_C(0x007641CF),
7944 UINT32_C(0x00519072), UINT32_C(0x0008A95B)},
7945 {UINT32_C(0x00B1CB39), UINT32_C(0x000965FD), UINT32_C(0x0031E4AF),
7946 UINT32_C(0x0030360A), UINT32_C(0x001C457C), UINT32_C(0x003BB754),
7947 UINT32_C(0x005CEAE2), UINT32_C(0x000B7485), UINT32_C(0x00211EE1),
7948 UINT32_C(0x005286E0), UINT32_C(0x00797D03)},
7949 {UINT32_C(0x00220D40), UINT32_C(0x004CA0AD), UINT32_C(0x0021A77A),
7950 UINT32_C(0x00364CE1), UINT32_C(0x006676A3), UINT32_C(0x0038EE70),
7951 UINT32_C(0x001B66BF), UINT32_C(0x00A09800), UINT32_C(0x00714B36),
7952 UINT32_C(0x0068F47C), UINT32_C(0x000FBD61)}},
7953 {{UINT32_C(0x00AADA87), UINT32_C(0x001E516D), UINT32_C(0x001DDDC1),
7954 UINT32_C(0x002496F0), UINT32_C(0x0079D73B), UINT32_C(0x006E84CA),
7955 UINT32_C(0x0001F77F), UINT32_C(0x004ED6A4), UINT32_C(0x004F9268),
7956 UINT32_C(0x002C2D9B), UINT32_C(0x00452C79)},
7957 {UINT32_C(0x005C5FB5), UINT32_C(0x001401F9), UINT32_C(0x001619FE),
7958 UINT32_C(0x0073A62F), UINT32_C(0x0027A568), UINT32_C(0x00410CA3),
7959 UINT32_C(0x007090B1), UINT32_C(0x0088392F), UINT32_C(0x00025F8C),
7960 UINT32_C(0x00470FB6), UINT32_C(0x00400202)},
7961 {UINT32_C(0x00FB4AF5), UINT32_C(0x004A6D33), UINT32_C(0x0067B3D7),
7962 UINT32_C(0x006C233F), UINT32_C(0x006659A6), UINT32_C(0x003370F0),
7963 UINT32_C(0x0071C750), UINT32_C(0x007CF562), UINT32_C(0x006B187A),
7964 UINT32_C(0x0044EC7F), UINT32_C(0x00780B9E)}},
7965 {{UINT32_C(0x007A1682), UINT32_C(0x00775D09), UINT32_C(0x000CA759),
7966 UINT32_C(0x005178EB), UINT32_C(0x001128C9), UINT32_C(0x00453CCE),
7967 UINT32_C(0x002B94ED), UINT32_C(0x00A6541E), UINT32_C(0x0029A8C4),
7968 UINT32_C(0x0029D1E3), UINT32_C(0x00318CEC)},
7969 {UINT32_C(0x002EA810), UINT32_C(0x002E2D2A), UINT32_C(0x00760A1E),
7970 UINT32_C(0x00768B26), UINT32_C(0x0012C353), UINT32_C(0x007A143A),
7971 UINT32_C(0x007F1485), UINT32_C(0x002F5E05), UINT32_C(0x006543DE),
7972 UINT32_C(0x0005DA47), UINT32_C(0x0062D462)},
7973 {UINT32_C(0x0056C417), UINT32_C(0x0020F8E7), UINT32_C(0x0021B1CB),
7974 UINT32_C(0x00DEBC01), UINT32_C(0x0049F124), UINT32_C(0x0063A3EF),
7975 UINT32_C(0x006B1EFC), UINT32_C(0x005DD025), UINT32_C(0x00579F7C),
7976 UINT32_C(0x005282E6), UINT32_C(0x003743A4)}},
7977 {{UINT32_C(0x00D850C1), UINT32_C(0x004304DD), UINT32_C(0x0031CA95),
7978 UINT32_C(0x00ABA381), UINT32_C(0x00557845), UINT32_C(0x00170B2A),
7979 UINT32_C(0x00269F01), UINT32_C(0x00F14562), UINT32_C(0x00177E37),
7980 UINT32_C(0x0000AEF5), UINT32_C(0x0016E67A)},
7981 {UINT32_C(0x008429CD), UINT32_C(0x004F3F15), UINT32_C(0x00310961),
7982 UINT32_C(0x00018EC0), UINT32_C(0x0017C520), UINT32_C(0x005A3C1E),
7983 UINT32_C(0x00069B19), UINT32_C(0x00BBC85D), UINT32_C(0x006A8255),
7984 UINT32_C(0x0005A237), UINT32_C(0x00671035)},
7985 {UINT32_C(0x00397785), UINT32_C(0x000B8DE6), UINT32_C(0x00034C5B),
7986 UINT32_C(0x00335B11), UINT32_C(0x005C7862), UINT32_C(0x002482C8),
7987 UINT32_C(0x0037A568), UINT32_C(0x00679E39), UINT32_C(0x0056810F),
7988 UINT32_C(0x0000E8F6), UINT32_C(0x003D1330)}},
7989 {{UINT32_C(0x00FAF1CD), UINT32_C(0x0060A8C5), UINT32_C(0x00508B76),
7990 UINT32_C(0x004F108E), UINT32_C(0x0054D331), UINT32_C(0x0027A7E8),
7991 UINT32_C(0x00346905), UINT32_C(0x00450F84), UINT32_C(0x001D3E9C),
7992 UINT32_C(0x000B0762), UINT32_C(0x00032396)},
7993 {UINT32_C(0x004FAD75), UINT32_C(0x00013909), UINT32_C(0x00279AA7),
7994 UINT32_C(0x00661D96), UINT32_C(0x0011C8F3), UINT32_C(0x004E1E02),
7995 UINT32_C(0x0079B899), UINT32_C(0x00219A22), UINT32_C(0x007D00F4),
7996 UINT32_C(0x0073A047), UINT32_C(0x00112302)},
7997 {UINT32_C(0x00C06EE2), UINT32_C(0x003FE63F), UINT32_C(0x0041BD79),
7998 UINT32_C(0x00096C7C), UINT32_C(0x00716A9D), UINT32_C(0x00616E56),
7999 UINT32_C(0x003FA2BD), UINT32_C(0x006CC575), UINT32_C(0x0077B6FA),
8000 UINT32_C(0x005D8484), UINT32_C(0x004EC884)}},
8001 {{UINT32_C(0x00EEDE54), UINT32_C(0x0060BECB), UINT32_C(0x00454F6A),
8002 UINT32_C(0x007CA867), UINT32_C(0x003128D5), UINT32_C(0x001A6257),
8003 UINT32_C(0x001C9D64), UINT32_C(0x0047D7B2), UINT32_C(0x0048D9D4),
8004 UINT32_C(0x00387A36), UINT32_C(0x0030150F)},
8005 {UINT32_C(0x00869B40), UINT32_C(0x004423AB), UINT32_C(0x006A0C98),
8006 UINT32_C(0x004BE18D), UINT32_C(0x000680E9), UINT32_C(0x006F03C8),
8007 UINT32_C(0x0035097A), UINT32_C(0x00163A09), UINT32_C(0x00036511),
8008 UINT32_C(0x002020C4), UINT32_C(0x0032F125)},
8009 {UINT32_C(0x006499A6), UINT32_C(0x0032DBAB), UINT32_C(0x0050F205),
8010 UINT32_C(0x00127C8C), UINT32_C(0x0071C444), UINT32_C(0x00610493),
8011 UINT32_C(0x0057B4B2), UINT32_C(0x00B0B2CA), UINT32_C(0x0034A155),
8012 UINT32_C(0x006D7797), UINT32_C(0x0063E346)}},
8013 {{UINT32_C(0x0030C824), UINT32_C(0x00393557), UINT32_C(0x002AA53A),
8014 UINT32_C(0x00232B1F), UINT32_C(0x007E74FF), UINT32_C(0x0058171D),
8015 UINT32_C(0x000328E4), UINT32_C(0x0085BA6B), UINT32_C(0x0013D154),
8016 UINT32_C(0x0018258C), UINT32_C(0x006FA2B0)},
8017 {UINT32_C(0x00C3FCC1), UINT32_C(0x006B3441), UINT32_C(0x005E8829),
8018 UINT32_C(0x00B3314C), UINT32_C(0x0004ECB2), UINT32_C(0x006B3C89),
8019 UINT32_C(0x003F2F04), UINT32_C(0x0092C88B), UINT32_C(0x001EC53B),
8020 UINT32_C(0x0031EA9C), UINT32_C(0x000BDC2A)},
8021 {UINT32_C(0x0063FFE8), UINT32_C(0x000EFB74), UINT32_C(0x0015043F),
8022 UINT32_C(0x005F290A), UINT32_C(0x001DA041), UINT32_C(0x0060291C),
8023 UINT32_C(0x007C2769), UINT32_C(0x00EB677A), UINT32_C(0x0043B7A4),
8024 UINT32_C(0x0033A181), UINT32_C(0x003F9D2D)}},
8025 {{UINT32_C(0x006CC3EF), UINT32_C(0x002F3089), UINT32_C(0x0061B741),
8026 UINT32_C(0x007537D8), UINT32_C(0x00717E80), UINT32_C(0x000BD6BF),
8027 UINT32_C(0x003D6972), UINT32_C(0x00BE0A56), UINT32_C(0x007C075B),
8028 UINT32_C(0x005C62F6), UINT32_C(0x003CA2DF)},
8029 {UINT32_C(0x00171808), UINT32_C(0x005A205B), UINT32_C(0x0005AD96),
8030 UINT32_C(0x0058D8E1), UINT32_C(0x00423531), UINT32_C(0x005C11A5),
8031 UINT32_C(0x00169496), UINT32_C(0x001AB66A), UINT32_C(0x002F6C8B),
8032 UINT32_C(0x00668CFD), UINT32_C(0x006B0027)},
8033 {UINT32_C(0x00528A82), UINT32_C(0x002B2713), UINT32_C(0x0079DE04),
8034 UINT32_C(0x00EF8CF9), UINT32_C(0x006263B9), UINT32_C(0x00720507),
8035 UINT32_C(0x0052404F), UINT32_C(0x003C93E8), UINT32_C(0x00100A85),
8036 UINT32_C(0x006D3FFA), UINT32_C(0x003B14B0)}},
8037 {{UINT32_C(0x00F84103), UINT32_C(0x002EFED0), UINT32_C(0x004DF3E6),
8038 UINT32_C(0x001A7373), UINT32_C(0x004C8064), UINT32_C(0x0032CAAE),
8039 UINT32_C(0x000E2E35), UINT32_C(0x00099871), UINT32_C(0x0043615C),
8040 UINT32_C(0x005D4D9B), UINT32_C(0x003A809B)},
8041 {UINT32_C(0x00688B18), UINT32_C(0x003E6C8B), UINT32_C(0x007DA089),
8042 UINT32_C(0x00470987), UINT32_C(0x0006E04D), UINT32_C(0x00346F12),
8043 UINT32_C(0x0054964B), UINT32_C(0x001C7FB1), UINT32_C(0x0028F4AF),
8044 UINT32_C(0x006ABA8D), UINT32_C(0x007BEAD8)},
8045 {UINT32_C(0x00A4DB09), UINT32_C(0x000F021A), UINT32_C(0x000E3BF3),
8046 UINT32_C(0x00347724), UINT32_C(0x001CD5E3), UINT32_C(0x00570A82),
8047 UINT32_C(0x001A702F), UINT32_C(0x00AF41F7), UINT32_C(0x005573E8),
8048 UINT32_C(0x007B6CC3), UINT32_C(0x000E6B2F)}},
8049 {{UINT32_C(0x00C4323E), UINT32_C(0x005E5A07), UINT32_C(0x006E0C89),
8050 UINT32_C(0x00018D1E), UINT32_C(0x00582AB5), UINT32_C(0x004E8211),
8051 UINT32_C(0x0021ED53), UINT32_C(0x006B639D), UINT32_C(0x00505AE2),
8052 UINT32_C(0x007DF924), UINT32_C(0x002AA137)},
8053 {UINT32_C(0x00C33279), UINT32_C(0x00685341), UINT32_C(0x00643C48),
8054 UINT32_C(0x00ACAC38), UINT32_C(0x005AE420), UINT32_C(0x00514A01),
8055 UINT32_C(0x006BEB21), UINT32_C(0x003CC859), UINT32_C(0x0017135D),
8056 UINT32_C(0x004ADA1B), UINT32_C(0x007CF53B)},
8057 {UINT32_C(0x006149FF), UINT32_C(0x00353234), UINT32_C(0x0000FE22),
8058 UINT32_C(0x001F09D7), UINT32_C(0x00021F65), UINT32_C(0x0049C3AD),
8059 UINT32_C(0x001C1A78), UINT32_C(0x00E00DFB), UINT32_C(0x00228A53),
8060 UINT32_C(0x005812BD), UINT32_C(0x00407161)}},
8061 {{UINT32_C(0x00AC8719), UINT32_C(0x004B5C52), UINT32_C(0x001AD60A),
8062 UINT32_C(0x001B2FAC), UINT32_C(0x004CD6B6), UINT32_C(0x002823C4),
8063 UINT32_C(0x003BE7C2), UINT32_C(0x009BDCCC), UINT32_C(0x00566B2F),
8064 UINT32_C(0x00205A09), UINT32_C(0x006C27CE)},
8065 {UINT32_C(0x0053FC77), UINT32_C(0x003F8121), UINT32_C(0x0073622F),
8066 UINT32_C(0x00775975), UINT32_C(0x007FED73), UINT32_C(0x0041C648),
8067 UINT32_C(0x00462A53), UINT32_C(0x00FFBFD4), UINT32_C(0x0011A7DF),
8068 UINT32_C(0x003092B5), UINT32_C(0x00261A53)},
8069 {UINT32_C(0x009AAFB7), UINT32_C(0x0013BCE1), UINT32_C(0x004971F6),
8070 UINT32_C(0x00EDD1B3), UINT32_C(0x002525B4), UINT32_C(0x0058D61A),
8071 UINT32_C(0x0066E9D1), UINT32_C(0x009B73B8), UINT32_C(0x0033C84A),
8072 UINT32_C(0x0006CAB6), UINT32_C(0x00008EB2)}},
8073 {{UINT32_C(0x00492C5D), UINT32_C(0x005CF97D), UINT32_C(0x0007722C),
8074 UINT32_C(0x0066F3B8), UINT32_C(0x000306A7), UINT32_C(0x007D6927),
8075 UINT32_C(0x0023F020), UINT32_C(0x00BD1D41), UINT32_C(0x00497C08),
8076 UINT32_C(0x005699EF), UINT32_C(0x00369E3D)},
8077 {UINT32_C(0x0025F79F), UINT32_C(0x005176A4), UINT32_C(0x003D2CDA),
8078 UINT32_C(0x00F5AAC3), UINT32_C(0x000A2AD0), UINT32_C(0x006D725F),
8079 UINT32_C(0x000E7277), UINT32_C(0x00B14CC5), UINT32_C(0x002D5FC8),
8080 UINT32_C(0x007F764F), UINT32_C(0x0050EF13)},
8081 {UINT32_C(0x0097E85B), UINT32_C(0x001C0CFD), UINT32_C(0x006027C7),
8082 UINT32_C(0x0038732E), UINT32_C(0x003385DC), UINT32_C(0x006F67DF),
8083 UINT32_C(0x0038EF81), UINT32_C(0x00F717C0), UINT32_C(0x000B4878),
8084 UINT32_C(0x00099CD4), UINT32_C(0x0071787D)}},
8085 {{UINT32_C(0x000EB7F2), UINT32_C(0x007F42B8), UINT32_C(0x0070653E),
8086 UINT32_C(0x00320A4F), UINT32_C(0x0016BB51), UINT32_C(0x00691D90),
8087 UINT32_C(0x00138916), UINT32_C(0x00D043DE), UINT32_C(0x00107F57),
8088 UINT32_C(0x001DCB80), UINT32_C(0x0059F0BB)},
8089 {UINT32_C(0x005CD9B5), UINT32_C(0x002A2874), UINT32_C(0x000600A5),
8090 UINT32_C(0x00235734), UINT32_C(0x002313EF), UINT32_C(0x00312DEA),
8091 UINT32_C(0x0029CA11), UINT32_C(0x00973048), UINT32_C(0x004D4134),
8092 UINT32_C(0x003E99AC), UINT32_C(0x000867B4)},
8093 {UINT32_C(0x002FA5A2), UINT32_C(0x00413E42), UINT32_C(0x00772166),
8094 UINT32_C(0x001C593A), UINT32_C(0x006949A2), UINT32_C(0x00786FF6),
8095 UINT32_C(0x003BB2E2), UINT32_C(0x002BC314), UINT32_C(0x00125CC6),
8096 UINT32_C(0x007B110C), UINT32_C(0x004E5352)}},
8097 {{UINT32_C(0x00E38B2F), UINT32_C(0x00549D88), UINT32_C(0x00451B24),
8098 UINT32_C(0x00237AB5), UINT32_C(0x000DAF24), UINT32_C(0x00028B85),
8099 UINT32_C(0x0002439F), UINT32_C(0x007FF9B1), UINT32_C(0x004B3263),
8100 UINT32_C(0x007B2514), UINT32_C(0x00130159)},
8101 {UINT32_C(0x00CBEDBE), UINT32_C(0x00164E8E), UINT32_C(0x006D1617),
8102 UINT32_C(0x00971E62), UINT32_C(0x0014CEC3), UINT32_C(0x00654E4C),
8103 UINT32_C(0x003EE5FE), UINT32_C(0x00D5DB3C), UINT32_C(0x0007E501),
8104 UINT32_C(0x0059EAD8), UINT32_C(0x0033FEF5)},
8105 {UINT32_C(0x00F396A9), UINT32_C(0x000E12CC), UINT32_C(0x0066F113),
8106 UINT32_C(0x0032A657), UINT32_C(0x00558CEA), UINT32_C(0x0035397E),
8107 UINT32_C(0x0072BA41), UINT32_C(0x001BAC1F), UINT32_C(0x00458EAD),
8108 UINT32_C(0x000176E4), UINT32_C(0x006D9827)}},
8109 {{UINT32_C(0x0054ACCB), UINT32_C(0x006837A0), UINT32_C(0x005E0E17),
8110 UINT32_C(0x002D46A3), UINT32_C(0x001EC13B), UINT32_C(0x0055ED3F),
8111 UINT32_C(0x004AD796), UINT32_C(0x009822FD), UINT32_C(0x006E60A8),
8112 UINT32_C(0x0019C052), UINT32_C(0x0047770E)},
8113 {UINT32_C(0x002D311B), UINT32_C(0x0025BEF8), UINT32_C(0x00441B88),
8114 UINT32_C(0x000175A1), UINT32_C(0x0077C008), UINT32_C(0x007C334F),
8115 UINT32_C(0x003B3992), UINT32_C(0x00CA38F0), UINT32_C(0x0002777D),
8116 UINT32_C(0x003C8B93), UINT32_C(0x0028F8C6)},
8117 {UINT32_C(0x008E76E6), UINT32_C(0x000A66B8), UINT32_C(0x0049E5D6),
8118 UINT32_C(0x00E8B276), UINT32_C(0x0032543C), UINT32_C(0x0027A563),
8119 UINT32_C(0x0000CF52), UINT32_C(0x00DEDDB7), UINT32_C(0x00401370),
8120 UINT32_C(0x000F47DB), UINT32_C(0x00502929)}},
8121 {{UINT32_C(0x00AECCC3), UINT32_C(0x0054C9AE), UINT32_C(0x002F21DC),
8122 UINT32_C(0x0059D2B0), UINT32_C(0x0033CED8), UINT32_C(0x004A2E1F),
8123 UINT32_C(0x0019B7CF), UINT32_C(0x0095A290), UINT32_C(0x0070C5C6),
8124 UINT32_C(0x002EB87D), UINT32_C(0x007DB934)},
8125 {UINT32_C(0x0078836C), UINT32_C(0x003DF99A), UINT32_C(0x005C291E),
8126 UINT32_C(0x00534356), UINT32_C(0x00247324), UINT32_C(0x002F5070),
8127 UINT32_C(0x003EEB8F), UINT32_C(0x003A920E), UINT32_C(0x0002D28C),
8128 UINT32_C(0x000FF5FB), UINT32_C(0x007336AA)},
8129 {UINT32_C(0x001FA1A5), UINT32_C(0x00212F13), UINT32_C(0x00577134),
8130 UINT32_C(0x004BA237), UINT32_C(0x0049A436), UINT32_C(0x007F6BB2),
8131 UINT32_C(0x00722AC5), UINT32_C(0x00C0532E), UINT32_C(0x007534D3),
8132 UINT32_C(0x001DCBE4), UINT32_C(0x00726554)}},
8135 {{UINT32_C(0x009D7F04), UINT32_C(0x003E522B), UINT32_C(0x004E8173),
8136 UINT32_C(0x001C1588), UINT32_C(0x0022E52F), UINT32_C(0x007A9393),
8137 UINT32_C(0x006F3F0A), UINT32_C(0x00537EF6), UINT32_C(0x0061C5EA),
8138 UINT32_C(0x001044A3), UINT32_C(0x005E8C14)},
8139 {UINT32_C(0x00CC8AA4), UINT32_C(0x000C72ED), UINT32_C(0x0000DF49),
8140 UINT32_C(0x00798195), UINT32_C(0x000C41B1), UINT32_C(0x005C0709),
8141 UINT32_C(0x0063F579), UINT32_C(0x00797385), UINT32_C(0x00561750),
8142 UINT32_C(0x0022408A), UINT32_C(0x0033DFF7)},
8143 {UINT32_C(0x00E72D7C), UINT32_C(0x0052E6A6), UINT32_C(0x00677E30),
8144 UINT32_C(0x00DA67FB), UINT32_C(0x0053230A), UINT32_C(0x007B8901),
8145 UINT32_C(0x0045AC83), UINT32_C(0x0010FEFC), UINT32_C(0x006E69B3),
8146 UINT32_C(0x006008DB), UINT32_C(0x006D7911)}},
8147 {{UINT32_C(0x004F7A12), UINT32_C(0x003FE9B9), UINT32_C(0x0035897D),
8148 UINT32_C(0x0092A16A), UINT32_C(0x002ABB20), UINT32_C(0x003C1F4F),
8149 UINT32_C(0x00170A77), UINT32_C(0x0014D957), UINT32_C(0x003289DC),
8150 UINT32_C(0x0005BECE), UINT32_C(0x00601138)},
8151 {UINT32_C(0x0061EEA8), UINT32_C(0x00211689), UINT32_C(0x002EAEF4),
8152 UINT32_C(0x002EE6E9), UINT32_C(0x0042698F), UINT32_C(0x002C17BC),
8153 UINT32_C(0x00153303), UINT32_C(0x000EA9B7), UINT32_C(0x00335B95),
8154 UINT32_C(0x00101F4E), UINT32_C(0x00661849)},
8155 {UINT32_C(0x00AEA3D6), UINT32_C(0x00406869), UINT32_C(0x00375EE9),
8156 UINT32_C(0x00D5E095), UINT32_C(0x00510487), UINT32_C(0x00425B84),
8157 UINT32_C(0x002933E8), UINT32_C(0x0085EA0B), UINT32_C(0x0036858A),
8158 UINT32_C(0x0015643E), UINT32_C(0x00291032)}},
8159 {{UINT32_C(0x00B19259), UINT32_C(0x0044D63D), UINT32_C(0x000D8B2C),
8160 UINT32_C(0x00F03F2A), UINT32_C(0x0075DD51), UINT32_C(0x0063574F),
8161 UINT32_C(0x00597D0C), UINT32_C(0x004CC301), UINT32_C(0x0008F143),
8162 UINT32_C(0x001955D2), UINT32_C(0x000EFE67)},
8163 {UINT32_C(0x0012F590), UINT32_C(0x0008204C), UINT32_C(0x007F0B91),
8164 UINT32_C(0x00397CAF), UINT32_C(0x00617872), UINT32_C(0x002BCC89),
8165 UINT32_C(0x00560BB9), UINT32_C(0x00755598), UINT32_C(0x006EECB1),
8166 UINT32_C(0x004BA0C7), UINT32_C(0x001A34AB)},
8167 {UINT32_C(0x008528CC), UINT32_C(0x00580BBC), UINT32_C(0x005B25D1),
8168 UINT32_C(0x007506DD), UINT32_C(0x007DC690), UINT32_C(0x007F96D8),
8169 UINT32_C(0x00392289), UINT32_C(0x00AEF1AE), UINT32_C(0x0063168D),
8170 UINT32_C(0x0072BE2C), UINT32_C(0x005157C5)}},
8171 {{UINT32_C(0x003A9FD2), UINT32_C(0x005B25BE), UINT32_C(0x004F27F7),
8172 UINT32_C(0x00BB4A51), UINT32_C(0x000662C0), UINT32_C(0x0041BBE0),
8173 UINT32_C(0x00460962), UINT32_C(0x002EF651), UINT32_C(0x0017689F),
8174 UINT32_C(0x00071079), UINT32_C(0x0001A5DF)},
8175 {UINT32_C(0x00F75DF0), UINT32_C(0x0049FC9F), UINT32_C(0x006A8F37),
8176 UINT32_C(0x00C7015B), UINT32_C(0x001EE02F), UINT32_C(0x003A578B),
8177 UINT32_C(0x004F5B70), UINT32_C(0x0046D34E), UINT32_C(0x0036C503),
8178 UINT32_C(0x004A47A8), UINT32_C(0x001555FC)},
8179 {UINT32_C(0x000C1A1C), UINT32_C(0x0018A095), UINT32_C(0x004C6DD3),
8180 UINT32_C(0x00622629), UINT32_C(0x001A4B4D), UINT32_C(0x001EC488),
8181 UINT32_C(0x007C4E62), UINT32_C(0x00F0CBDB), UINT32_C(0x0053F494),
8182 UINT32_C(0x0025E122), UINT32_C(0x006FE5D9)}},
8183 {{UINT32_C(0x001D0B59), UINT32_C(0x002BC2EB), UINT32_C(0x006C247D),
8184 UINT32_C(0x0017164C), UINT32_C(0x0016C9E8), UINT32_C(0x003FE112),
8185 UINT32_C(0x00523C8C), UINT32_C(0x00500E55), UINT32_C(0x001EBD4A),
8186 UINT32_C(0x002663A4), UINT32_C(0x002FF15B)},
8187 {UINT32_C(0x009AECD9), UINT32_C(0x00079901), UINT32_C(0x006A6241),
8188 UINT32_C(0x003D62B1), UINT32_C(0x006182F6), UINT32_C(0x001F7C9C),
8189 UINT32_C(0x0030C6A5), UINT32_C(0x00C1D9FD), UINT32_C(0x000AF3AE),
8190 UINT32_C(0x007306C0), UINT32_C(0x007180E7)},
8191 {UINT32_C(0x0072CCE1), UINT32_C(0x002EF926), UINT32_C(0x0033946B),
8192 UINT32_C(0x00DD4125), UINT32_C(0x00466F98), UINT32_C(0x005626FE),
8193 UINT32_C(0x004D69F2), UINT32_C(0x00423C76), UINT32_C(0x0065D10D),
8194 UINT32_C(0x002D6287), UINT32_C(0x002DD36E)}},
8195 {{UINT32_C(0x0060C004), UINT32_C(0x002DF8E2), UINT32_C(0x0073334C),
8196 UINT32_C(0x008C39C6), UINT32_C(0x00509B37), UINT32_C(0x007E8198),
8197 UINT32_C(0x000F62E1), UINT32_C(0x00DD92B1), UINT32_C(0x001998EC),
8198 UINT32_C(0x002CAD76), UINT32_C(0x00202123)},
8199 {UINT32_C(0x00131346), UINT32_C(0x007A9FF0), UINT32_C(0x00587E28),
8200 UINT32_C(0x005434EA), UINT32_C(0x000C2CE8), UINT32_C(0x004B1B22),
8201 UINT32_C(0x0045D4A2), UINT32_C(0x009F60D4), UINT32_C(0x0057E546),
8202 UINT32_C(0x0064D05F), UINT32_C(0x006EEC72)},
8203 {UINT32_C(0x0021F448), UINT32_C(0x0010845A), UINT32_C(0x0006B85E),
8204 UINT32_C(0x00AB9D0A), UINT32_C(0x0042FE06), UINT32_C(0x0033EE0E),
8205 UINT32_C(0x006AD2F2), UINT32_C(0x005C9579), UINT32_C(0x0067DFC7),
8206 UINT32_C(0x003C1F3B), UINT32_C(0x00699BE9)}},
8207 {{UINT32_C(0x00A66972), UINT32_C(0x005C9C52), UINT32_C(0x0033F743),
8208 UINT32_C(0x002E4131), UINT32_C(0x0018DAB0), UINT32_C(0x00451021),
8209 UINT32_C(0x004A7644), UINT32_C(0x00280CE7), UINT32_C(0x0054A55B),
8210 UINT32_C(0x0000D618), UINT32_C(0x0006EA24)},
8211 {UINT32_C(0x00836291), UINT32_C(0x005C23F3), UINT32_C(0x003EF835),
8212 UINT32_C(0x006B6300), UINT32_C(0x00459EBC), UINT32_C(0x007C3224),
8213 UINT32_C(0x0044102E), UINT32_C(0x00E2D759), UINT32_C(0x0058BA8F),
8214 UINT32_C(0x00203AA3), UINT32_C(0x006F64DB)},
8215 {UINT32_C(0x00A80AE1), UINT32_C(0x0002F426), UINT32_C(0x005F82DF),
8216 UINT32_C(0x00129B98), UINT32_C(0x0016684F), UINT32_C(0x0037C9F8),
8217 UINT32_C(0x00798FDE), UINT32_C(0x005C8F79), UINT32_C(0x0007C718),
8218 UINT32_C(0x0052B29A), UINT32_C(0x00059CBE)}},
8219 {{UINT32_C(0x00126A51), UINT32_C(0x002CB978), UINT32_C(0x00423FCC),
8220 UINT32_C(0x00B9CC4C), UINT32_C(0x002AA538), UINT32_C(0x00395FBB),
8221 UINT32_C(0x00327373), UINT32_C(0x00C23CA5), UINT32_C(0x00544D71),
8222 UINT32_C(0x00455CE2), UINT32_C(0x0077726F)},
8223 {UINT32_C(0x00E72C58), UINT32_C(0x0056C6C9), UINT32_C(0x003D49ED),
8224 UINT32_C(0x00C8F1D2), UINT32_C(0x004A8FA5), UINT32_C(0x006F3C45),
8225 UINT32_C(0x0069AB18), UINT32_C(0x00D5CE81), UINT32_C(0x000A718F),
8226 UINT32_C(0x004420F7), UINT32_C(0x002B7F53)},
8227 {UINT32_C(0x00809D3C), UINT32_C(0x005957A2), UINT32_C(0x006A3FB7),
8228 UINT32_C(0x00FC7710), UINT32_C(0x002F2CC5), UINT32_C(0x0068D0E3),
8229 UINT32_C(0x0017780D), UINT32_C(0x00B2B1F6), UINT32_C(0x001C4FDE),
8230 UINT32_C(0x0072D97A), UINT32_C(0x003E98AB)}},
8231 {{UINT32_C(0x00276A10), UINT32_C(0x0064190E), UINT32_C(0x000243B5),
8232 UINT32_C(0x00EE59AE), UINT32_C(0x0016FC7F), UINT32_C(0x0036935E),
8233 UINT32_C(0x0058A7F7), UINT32_C(0x006AAA88), UINT32_C(0x0036ED90),
8234 UINT32_C(0x00779372), UINT32_C(0x0030DC06)},
8235 {UINT32_C(0x00208159), UINT32_C(0x00170255), UINT32_C(0x00695DF5),
8236 UINT32_C(0x00411E22), UINT32_C(0x00477C68), UINT32_C(0x0032102F),
8237 UINT32_C(0x001B026A), UINT32_C(0x0038CA4D), UINT32_C(0x00235EC5),
8238 UINT32_C(0x0078C8B9), UINT32_C(0x00651C9F)},
8239 {UINT32_C(0x0067D2A4), UINT32_C(0x00446632), UINT32_C(0x003D1074),
8240 UINT32_C(0x00032AC4), UINT32_C(0x0061127F), UINT32_C(0x0004B798),
8241 UINT32_C(0x00003C2D), UINT32_C(0x00F00C4B), UINT32_C(0x00603764),
8242 UINT32_C(0x0074558D), UINT32_C(0x00375BF7)}},
8243 {{UINT32_C(0x00B4CE41), UINT32_C(0x007FBBC3), UINT32_C(0x00750477),
8244 UINT32_C(0x00DA8800), UINT32_C(0x000B20CD), UINT32_C(0x002FDE44),
8245 UINT32_C(0x0001448F), UINT32_C(0x001B1EE5), UINT32_C(0x003B0FDC),
8246 UINT32_C(0x00600D6A), UINT32_C(0x0042807B)},
8247 {UINT32_C(0x005C7646), UINT32_C(0x004F6D9A), UINT32_C(0x0047B855),
8248 UINT32_C(0x003D2CEB), UINT32_C(0x007B2B58), UINT32_C(0x0032B9DA),
8249 UINT32_C(0x00118C1E), UINT32_C(0x006DA898), UINT32_C(0x00432BB2),
8250 UINT32_C(0x0014A742), UINT32_C(0x00214F42)},
8251 {UINT32_C(0x0063536B), UINT32_C(0x0073EDC7), UINT32_C(0x00608DC1),
8252 UINT32_C(0x00757BDA), UINT32_C(0x0073293A), UINT32_C(0x00510B0D),
8253 UINT32_C(0x001C8A86), UINT32_C(0x00406F0A), UINT32_C(0x0030DAA7),
8254 UINT32_C(0x000F6F80), UINT32_C(0x0007A1D7)}},
8255 {{UINT32_C(0x00A8E90B), UINT32_C(0x007407DB), UINT32_C(0x00440BF0),
8256 UINT32_C(0x007198C8), UINT32_C(0x001A09F8), UINT32_C(0x000916B3),
8257 UINT32_C(0x0061A7D6), UINT32_C(0x00A714BE), UINT32_C(0x0039589D),
8258 UINT32_C(0x0011D76D), UINT32_C(0x00323B2D)},
8259 {UINT32_C(0x00E19A5C), UINT32_C(0x00141B92), UINT32_C(0x00409B73),
8260 UINT32_C(0x006F090B), UINT32_C(0x007E0865), UINT32_C(0x004B7DA7),
8261 UINT32_C(0x006EBE5E), UINT32_C(0x00CE6360), UINT32_C(0x003FE520),
8262 UINT32_C(0x005C6EFA), UINT32_C(0x002904A1)},
8263 {UINT32_C(0x007BF307), UINT32_C(0x00095790), UINT32_C(0x0009FCE8),
8264 UINT32_C(0x001A0547), UINT32_C(0x001C1E57), UINT32_C(0x007C07EE),
8265 UINT32_C(0x00405EE9), UINT32_C(0x004047E0), UINT32_C(0x006DE98E),
8266 UINT32_C(0x004E2A25), UINT32_C(0x0066F1F0)}},
8267 {{UINT32_C(0x00C266C9), UINT32_C(0x0078A6A6), UINT32_C(0x005AE507),
8268 UINT32_C(0x00029D74), UINT32_C(0x00025040), UINT32_C(0x004030CE),
8269 UINT32_C(0x006D0A48), UINT32_C(0x0076B699), UINT32_C(0x001E465B),
8270 UINT32_C(0x000082E1), UINT32_C(0x0069B738)},
8271 {UINT32_C(0x00BD1302), UINT32_C(0x003CA015), UINT32_C(0x00107897),
8272 UINT32_C(0x00FA47BE), UINT32_C(0x0049E714), UINT32_C(0x000B1555),
8273 UINT32_C(0x0053443D), UINT32_C(0x00EE9331), UINT32_C(0x00514330),
8274 UINT32_C(0x0039A875), UINT32_C(0x00050473)},
8275 {UINT32_C(0x00B3D5E2), UINT32_C(0x002E59A5), UINT32_C(0x00444307),
8276 UINT32_C(0x001495AA), UINT32_C(0x007E4455), UINT32_C(0x001E0A82),
8277 UINT32_C(0x002AB250), UINT32_C(0x003E1A5A), UINT32_C(0x000DB2A8),
8278 UINT32_C(0x0010A30C), UINT32_C(0x0032799B)}},
8279 {{UINT32_C(0x002DFB8B), UINT32_C(0x0056DBFB), UINT32_C(0x0067D9E7),
8280 UINT32_C(0x007E49DF), UINT32_C(0x000D0A8B), UINT32_C(0x001D2692),
8281 UINT32_C(0x006D4621), UINT32_C(0x00D98598), UINT32_C(0x0034D873),
8282 UINT32_C(0x0021CBB4), UINT32_C(0x0075EBF4)},
8283 {UINT32_C(0x00757E5C), UINT32_C(0x001F41CE), UINT32_C(0x002E6367),
8284 UINT32_C(0x00180064), UINT32_C(0x004FEBFE), UINT32_C(0x0004F8E5),
8285 UINT32_C(0x001FB594), UINT32_C(0x007471A5), UINT32_C(0x0060AE8E),
8286 UINT32_C(0x007B789E), UINT32_C(0x0072FBC1)},
8287 {UINT32_C(0x00028861), UINT32_C(0x0076CF2E), UINT32_C(0x00757BC9),
8288 UINT32_C(0x00E1A580), UINT32_C(0x00355683), UINT32_C(0x002A8FE7),
8289 UINT32_C(0x00542152), UINT32_C(0x00561514), UINT32_C(0x00725460),
8290 UINT32_C(0x007285A9), UINT32_C(0x004B1809)}},
8291 {{UINT32_C(0x00355837), UINT32_C(0x002DDA4C), UINT32_C(0x003DD1AC),
8292 UINT32_C(0x005CC538), UINT32_C(0x00647CBC), UINT32_C(0x0072DB88),
8293 UINT32_C(0x007F7C75), UINT32_C(0x002AE840), UINT32_C(0x00062A1A),
8294 UINT32_C(0x00518336), UINT32_C(0x00791C9D)},
8295 {UINT32_C(0x0007CA0E), UINT32_C(0x002EA83D), UINT32_C(0x00794D8F),
8296 UINT32_C(0x0074F12E), UINT32_C(0x00573D80), UINT32_C(0x00334BAD),
8297 UINT32_C(0x007061C7), UINT32_C(0x00EC3EB0), UINT32_C(0x004AFF19),
8298 UINT32_C(0x007B77C6), UINT32_C(0x002C2CD6)},
8299 {UINT32_C(0x00332C81), UINT32_C(0x005AEC4B), UINT32_C(0x002D4025),
8300 UINT32_C(0x000003C9), UINT32_C(0x00329780), UINT32_C(0x0045F540),
8301 UINT32_C(0x004B3238), UINT32_C(0x00A2B784), UINT32_C(0x001953EA),
8302 UINT32_C(0x00256030), UINT32_C(0x00398A20)}},
8303 {{UINT32_C(0x000EC4A0), UINT32_C(0x00641937), UINT32_C(0x006B364E),
8304 UINT32_C(0x00DA64E5), UINT32_C(0x001DC048), UINT32_C(0x002583F4),
8305 UINT32_C(0x0026D1D9), UINT32_C(0x00EDA8AF), UINT32_C(0x0047D78B),
8306 UINT32_C(0x002EEFE4), UINT32_C(0x002CC316)},
8307 {UINT32_C(0x0081CBB1), UINT32_C(0x006E1C62), UINT32_C(0x002FACAB),
8308 UINT32_C(0x00A6588F), UINT32_C(0x00250981), UINT32_C(0x0061708F),
8309 UINT32_C(0x0074479E), UINT32_C(0x003F3B34), UINT32_C(0x00140C2C),
8310 UINT32_C(0x002EBBC2), UINT32_C(0x00227AAF)},
8311 {UINT32_C(0x00DB9FC3), UINT32_C(0x0053114A), UINT32_C(0x0052ECA2),
8312 UINT32_C(0x003DC40A), UINT32_C(0x007DC659), UINT32_C(0x000D3562),
8313 UINT32_C(0x002C373C), UINT32_C(0x00FAF2D6), UINT32_C(0x002B7888),
8314 UINT32_C(0x0056EFFE), UINT32_C(0x00162CF7)}},
8315 {{UINT32_C(0x00A14EAC), UINT32_C(0x005D7C37), UINT32_C(0x002C818A),
8316 UINT32_C(0x008FB8CD), UINT32_C(0x0062E148), UINT32_C(0x004C3163),
8317 UINT32_C(0x0053D48D), UINT32_C(0x005823EA), UINT32_C(0x002D1D27),
8318 UINT32_C(0x00057B1E), UINT32_C(0x002C3DDA)},
8319 {UINT32_C(0x0053A948), UINT32_C(0x004C6EF1), UINT32_C(0x002D74B8),
8320 UINT32_C(0x001219E4), UINT32_C(0x0071C013), UINT32_C(0x00262046),
8321 UINT32_C(0x00421ADF), UINT32_C(0x00BFB901), UINT32_C(0x001E79C9),
8322 UINT32_C(0x0035B45B), UINT32_C(0x0041AC61)},
8323 {UINT32_C(0x002C184D), UINT32_C(0x0047D074), UINT32_C(0x0034003A),
8324 UINT32_C(0x005DCCFB), UINT32_C(0x00524D8F), UINT32_C(0x0059FB03),
8325 UINT32_C(0x0034304B), UINT32_C(0x00EACD9B), UINT32_C(0x002761FA),
8326 UINT32_C(0x003C9C64), UINT32_C(0x004B14DD)}},
8330 * Q := 2P, both projective, Q and P same pointers OK
8331 * Autogenerated: op3/dbl_proj_ed_eone.op3
8332 * https://www.hyperelliptic.org/EFD/g1p/auto-code/twisted/extended-1/doubling/dbl-2008-hwcd.op3
8335 static void point_double(pt_prj_t *Q, const pt_prj_t *P) {
8336 /* temporary variables */
8337 fe_t t0, t1, t2, t3;
8339 /* set pointers for Edwards curve arith */
8340 const limb_t *X = P->X;
8341 const limb_t *Y = P->Y;
8342 const limb_t *Z = P->Z;
8348 /* the curve arith formula */
8349 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(t0, X);
8350 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(t1, Y);
8351 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(t2, Z);
8352 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(t3, t2, t2);
8353 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(X3, X, Y);
8354 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(Y3, X3);
8355 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(T3, Y3, t0);
8356 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(Z3, T3, t1);
8357 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(Y3, t0, t1);
8358 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(t2, Y3, t3);
8359 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(t3, t0, t1);
8360 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(X3, Z3, t2);
8361 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(T3, Z3, t3);
8362 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Z3, t2, Y3);
8363 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Y3, Y3, t3);
8367 * R := Q + P where R and Q are projective, P affine.
8368 * R and Q same pointers OK
8369 * R and P same pointers not OK
8370 * Autogenerated: op3/add_mixed_ed_eone.op3
8371 * https://hyperelliptic.org/EFD/g1p/auto-code/twisted/extended/addition/madd-2008-hwcd.op3
8374 static void point_add_mixed(pt_prj_t *R, const pt_prj_t *Q, const pt_aff_t *P) {
8375 /* temporary variables */
8376 fe_t t0, t1, t2, t3;
8378 const limb_t *d = const_d;
8379 /* set pointers for Edwards curve arith */
8380 const limb_t *X1 = Q->X;
8381 const limb_t *Y1 = Q->Y;
8382 const limb_t *T1 = Q->T;
8383 const limb_t *Z1 = Q->Z;
8384 const limb_t *X2 = P->X;
8385 const limb_t *Y2 = P->Y;
8386 const limb_t *T2 = P->T;
8392 /* the curve arith formula */
8393 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t0, X1, X2);
8394 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t1, Y1, Y2);
8395 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t2, d, T2);
8396 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t2, T1, t2);
8397 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(X3, X1, Y1);
8398 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(Y3, X2, Y2);
8399 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(T3, X3, Y3);
8400 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(t3, T3, t0);
8401 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(T3, t3, t1);
8402 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(t3, Z1, t2);
8403 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(Z3, Z1, t2);
8404 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(t1, t1, t0);
8405 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(X3, T3, Z3);
8406 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Y3, t3, t1);
8407 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(T3, T3, t1);
8408 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Z3, Z3, t3);
8412 * R := Q + P all projective.
8413 * R and Q same pointers OK
8414 * R and P same pointers not OK
8415 * Autogenerated: op3/add_proj_ed_eone.op3
8416 * https://hyperelliptic.org/EFD/g1p/auto-code/twisted/extended/addition/add-2008-hwcd.op3
8419 static void point_add_proj(pt_prj_t *R, const pt_prj_t *Q, const pt_prj_t *P) {
8420 /* temporary variables */
8421 fe_t t0, t1, t2, t3;
8423 const limb_t *d = const_d;
8424 /* set pointers for Edwards curve arith */
8425 const limb_t *X1 = Q->X;
8426 const limb_t *Y1 = Q->Y;
8427 const limb_t *T1 = Q->T;
8428 const limb_t *Z1 = Q->Z;
8429 const limb_t *X2 = P->X;
8430 const limb_t *Y2 = P->Y;
8431 const limb_t *T2 = P->T;
8432 const limb_t *Z2 = P->Z;
8438 /* the curve arith formula */
8439 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t0, X1, X2);
8440 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t1, Y1, Y2);
8441 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t2, d, T2);
8442 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t2, T1, t2);
8443 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t3, Z1, Z2);
8444 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(X3, X1, Y1);
8445 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(Y3, X2, Y2);
8446 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(T3, X3, Y3);
8447 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(Z3, T3, t0);
8448 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(T3, Z3, t1);
8449 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(Z3, t3, t2);
8450 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(t3, t3, t2);
8451 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(t1, t1, t0);
8452 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(X3, T3, Z3);
8453 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Y3, t3, t1);
8454 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(T3, T3, t1);
8455 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Z3, Z3, t3);
8459 * from P projective Edwards to Q projective legacy: Q=P OK
8460 * Autogenerated: op3/edwards2legacy_gost.op3
8461 * https://tools.ietf.org/html/rfc7836#section-5.2
8463 static void point_edwards2legacy(pt_prj_t *Q, const pt_prj_t *P) {
8464 /* temporary variables */
8467 const limb_t *T = const_T;
8468 const limb_t *S = const_S;
8469 const limb_t *X1 = P->X;
8470 const limb_t *Y1 = P->Y;
8471 const limb_t *Z1 = P->Z;
8477 /* the curve arith formula */
8478 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(T3, Z1, Y1);
8479 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(t0, Z1, Y1);
8480 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(T3, S, T3);
8481 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Y3, Z1, T3);
8482 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Z3, X1, t0);
8483 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t0, t0, T);
8484 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(t0, T3, t0);
8485 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(X3, X1, t0);
8489 * from P affine legacy to Q projective Edwards: Q=P not OK
8490 * Autogenerated: op3/legacy2edwards_gost.op3
8491 * https://tools.ietf.org/html/rfc7836#section-5.2
8493 static void point_legacy2edwards(pt_prj_t *Q, const pt_aff_t *P) {
8495 const limb_t *T = const_T;
8496 const limb_t *S = const_S;
8497 const limb_t *X1 = P->X;
8498 const limb_t *Y1 = P->Y;
8504 /* the curve arith formula */
8505 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(T3, X1, T);
8506 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(Y3, T3, S);
8507 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(X3, T3, Y3);
8508 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Z3, Y1, Y3);
8509 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(T3, T3, S);
8510 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Y3, Y1, T3);
8511 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(T3, X3, Y3);
8512 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(X3, X3, Z3);
8513 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Y3, Y3, Z3);
8514 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_square(Z3, Z3);
8519 #define DRADIX (1 << RADIX)
8520 #define DRADIX_WNAF ((DRADIX) << 1)
8523 * precomp for wnaf scalar multiplication:
8531 static void precomp_wnaf(pt_prj_t precomp[DRADIX / 2], const pt_aff_t *P) {
8534 /* move from legacy affine to Edwards projective */
8535 point_legacy2edwards(&precomp[0], P);
8536 point_double(&precomp[DRADIX / 2 - 1], &precomp[0]);
8538 for (i = 1; i < DRADIX / 2; i++)
8539 point_add_proj(&precomp[i], &precomp[DRADIX / 2 - 1], &precomp[i - 1]);
8542 /* fetch a scalar bit */
8543 static int scalar_get_bit(const unsigned char in[32], int idx) {
8549 if (idx < 0 || widx >= 32) return 0;
8551 return (in[widx] >> rshift) & 0x1;
8555 * Compute "regular" wnaf representation of a scalar.
8556 * See "Exponent Recoding and Regular Exponentiation Algorithms",
8557 * Tunstall et al., AfricaCrypt 2009, Alg 6.
8558 * It forces an odd scalar and outputs digits in
8559 * {\pm 1, \pm 3, \pm 5, \pm 7, \pm 9, ...}
8560 * i.e. signed odd digits with _no zeroes_ -- that makes it "regular".
8562 static void scalar_rwnaf(int8_t out[52], const unsigned char in[32]) {
8566 window = (in[0] & (DRADIX_WNAF - 1)) | 1;
8567 for (i = 0; i < 51; i++) {
8568 d = (window & (DRADIX_WNAF - 1)) - DRADIX;
8570 window = (window - d) >> RADIX;
8571 window += scalar_get_bit(in, (i + 1) * RADIX + 1) << 1;
8572 window += scalar_get_bit(in, (i + 1) * RADIX + 2) << 2;
8573 window += scalar_get_bit(in, (i + 1) * RADIX + 3) << 3;
8574 window += scalar_get_bit(in, (i + 1) * RADIX + 4) << 4;
8575 window += scalar_get_bit(in, (i + 1) * RADIX + 5) << 5;
8581 * Compute "textbook" wnaf representation of a scalar.
8582 * NB: not constant time
8584 static void scalar_wnaf(int8_t out[257], const unsigned char in[32]) {
8588 window = in[0] & (DRADIX_WNAF - 1);
8589 for (i = 0; i < 257; i++) {
8591 if ((window & 1) && ((d = window & (DRADIX_WNAF - 1)) & DRADIX))
8594 window = (window - d) >> 1;
8595 window += scalar_get_bit(in, i + 1 + RADIX) << RADIX;
8600 * Simulateous scalar multiplication: interleaved "textbook" wnaf.
8601 * NB: not constant time
8603 static void var_smul_wnaf_two(pt_aff_t *out, const unsigned char a[32],
8604 const unsigned char b[32], const pt_aff_t *P) {
8605 int i, d, is_neg, is_inf = 1, flipped = 0;
8606 int8_t anaf[257] = {0};
8607 int8_t bnaf[257] = {0};
8609 pt_prj_t precomp[DRADIX / 2];
8611 precomp_wnaf(precomp, P);
8612 scalar_wnaf(anaf, a);
8613 scalar_wnaf(bnaf, b);
8615 for (i = 256; i >= 0; i--) {
8616 if (!is_inf) point_double(&Q, &Q);
8617 if ((d = bnaf[i])) {
8618 if ((is_neg = d < 0) != flipped) {
8619 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(Q.X, Q.X);
8620 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(Q.T, Q.T);
8623 d = (is_neg) ? (-d - 1) >> 1 : (d - 1) >> 1;
8625 /* initialize accumulator */
8626 fe_copy(Q.X, &precomp[d].X);
8627 fe_copy(Q.Y, &precomp[d].Y);
8628 fe_copy(Q.T, &precomp[d].T);
8629 fe_copy(Q.Z, &precomp[d].Z);
8632 point_add_proj(&Q, &Q, &precomp[d]);
8634 if ((d = anaf[i])) {
8635 if ((is_neg = d < 0) != flipped) {
8636 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(Q.X, Q.X);
8637 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(Q.T, Q.T);
8640 d = (is_neg) ? (-d - 1) >> 1 : (d - 1) >> 1;
8642 /* initialize accumulator */
8643 fe_copy(Q.X, &lut_cmb[0][d].X);
8644 fe_copy(Q.Y, &lut_cmb[0][d].Y);
8645 fe_copy(Q.T, &lut_cmb[0][d].T);
8646 fe_copy(Q.Z, const_one);
8649 point_add_mixed(&Q, &Q, &lut_cmb[0][d]);
8654 /* initialize accumulator to inf: all-zero scalars */
8656 fe_copy(Q.Y, const_one);
8658 fe_copy(Q.Z, const_one);
8663 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(Q.X, Q.X);
8664 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(Q.T, Q.T);
8667 /* move from Edwards projective to legacy projective */
8668 point_edwards2legacy(&Q, &Q);
8669 /* convert to affine -- NB depends on coordinate system */
8670 fiat_id_tc26_gost_3410_2012_256_paramSetA_inv(Q.Z, Q.Z);
8671 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(out->X, Q.X, Q.Z);
8672 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(out->Y, Q.Y, Q.Z);
8676 * Variable point scalar multiplication with "regular" wnaf.
8678 static void var_smul_rwnaf(pt_aff_t *out, const unsigned char scalar[32],
8679 const pt_aff_t *P) {
8680 int i, j, d, diff, is_neg;
8681 int8_t rnaf[52] = {0};
8683 pt_prj_t precomp[DRADIX / 2];
8685 precomp_wnaf(precomp, P);
8686 scalar_rwnaf(rnaf, scalar);
8688 #if defined(_MSC_VER)
8689 /* result still unsigned: yes we know */
8690 #pragma warning(push)
8691 #pragma warning(disable : 4146)
8694 /* initialize accumulator to high digit */
8695 d = (rnaf[51] - 1) >> 1;
8696 for (j = 0; j < DRADIX / 2; j++) {
8697 diff = (1 - (-(d ^ j) >> (8 * sizeof(int) - 1))) & 1;
8698 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.X, diff, Q.X,
8700 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.Y, diff, Q.Y,
8702 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.T, diff, Q.T,
8704 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.Z, diff, Q.Z,
8708 for (i = 50; i >= 0; i--) {
8709 for (j = 0; j < RADIX; j++) point_double(&Q, &Q);
8711 /* is_neg = (d < 0) ? 1 : 0 */
8712 is_neg = (d >> (8 * sizeof(int) - 1)) & 1;
8714 d = (d ^ -is_neg) + is_neg;
8716 for (j = 0; j < DRADIX / 2; j++) {
8717 diff = (1 - (-(d ^ j) >> (8 * sizeof(int) - 1))) & 1;
8718 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(
8719 lut.X, diff, lut.X, precomp[j].X);
8720 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(
8721 lut.Y, diff, lut.Y, precomp[j].Y);
8722 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(
8723 lut.T, diff, lut.T, precomp[j].T);
8724 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(
8725 lut.Z, diff, lut.Z, precomp[j].Z);
8727 /* negate lut point if digit is negative */
8728 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(out->X, lut.X);
8729 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(out->T, lut.T);
8730 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(lut.X, is_neg,
8732 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(lut.T, is_neg,
8734 point_add_proj(&Q, &Q, &lut);
8737 #if defined(_MSC_VER)
8738 #pragma warning(pop)
8741 /* conditionally subtract P if the scalar was even */
8742 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(lut.X, precomp[0].X);
8743 fe_copy(lut.Y, precomp[0].Y);
8744 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(lut.T, precomp[0].T);
8745 fe_copy(lut.Z, precomp[0].Z);
8746 point_add_proj(&lut, &lut, &Q);
8747 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.X, scalar[0] & 1,
8749 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.Y, scalar[0] & 1,
8751 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.T, scalar[0] & 1,
8753 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.Z, scalar[0] & 1,
8756 /* move from Edwards projective to legacy projective */
8757 point_edwards2legacy(&Q, &Q);
8758 /* convert to affine -- NB depends on coordinate system */
8759 fiat_id_tc26_gost_3410_2012_256_paramSetA_inv(Q.Z, Q.Z);
8760 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(out->X, Q.X, Q.Z);
8761 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(out->Y, Q.Y, Q.Z);
8765 * Fixed scalar multiplication: comb with interleaving.
8767 static void fixed_smul_cmb(pt_aff_t *out, const unsigned char scalar[32]) {
8768 int i, j, k, d, diff, is_neg = 0;
8769 int8_t rnaf[52] = {0};
8773 scalar_rwnaf(rnaf, scalar);
8775 /* initalize accumulator to inf */
8777 fe_copy(Q.Y, const_one);
8779 fe_copy(Q.Z, const_one);
8781 #if defined(_MSC_VER)
8782 /* result still unsigned: yes we know */
8783 #pragma warning(push)
8784 #pragma warning(disable : 4146)
8787 for (i = 3; i >= 0; i--) {
8788 for (j = 0; i != 3 && j < RADIX; j++) point_double(&Q, &Q);
8789 for (j = 0; j < 14; j++) {
8790 if (j * 4 + i > 51) continue;
8791 d = rnaf[j * 4 + i];
8792 /* is_neg = (d < 0) ? 1 : 0 */
8793 is_neg = (d >> (8 * sizeof(int) - 1)) & 1;
8795 d = (d ^ -is_neg) + is_neg;
8797 for (k = 0; k < DRADIX / 2; k++) {
8798 diff = (1 - (-(d ^ k) >> (8 * sizeof(int) - 1))) & 1;
8799 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(
8800 lut.X, diff, lut.X, lut_cmb[j][k].X);
8801 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(
8802 lut.Y, diff, lut.Y, lut_cmb[j][k].Y);
8803 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(
8804 lut.T, diff, lut.T, lut_cmb[j][k].T);
8806 /* negate lut point if digit is negative */
8807 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(out->X, lut.X);
8808 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(out->T, lut.T);
8809 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(lut.X, is_neg,
8811 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(lut.T, is_neg,
8813 point_add_mixed(&Q, &Q, &lut);
8817 #if defined(_MSC_VER)
8818 #pragma warning(pop)
8821 /* conditionally subtract P if the scalar was even */
8822 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(lut.X, lut_cmb[0][0].X);
8823 fe_copy(lut.Y, lut_cmb[0][0].Y);
8824 fiat_id_tc26_gost_3410_2012_256_paramSetA_opp(lut.T, lut_cmb[0][0].T);
8825 point_add_mixed(&R, &Q, &lut);
8826 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.X, scalar[0] & 1, R.X,
8828 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.Y, scalar[0] & 1, R.Y,
8830 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.T, scalar[0] & 1, R.T,
8832 fiat_id_tc26_gost_3410_2012_256_paramSetA_selectznz(Q.Z, scalar[0] & 1, R.Z,
8835 /* move from Edwards projective to legacy projective */
8836 point_edwards2legacy(&Q, &Q);
8837 /* convert to affine -- NB depends on coordinate system */
8838 fiat_id_tc26_gost_3410_2012_256_paramSetA_inv(Q.Z, Q.Z);
8839 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(out->X, Q.X, Q.Z);
8840 fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(out->Y, Q.Y, Q.Z);
8843 static void point_mul_two(unsigned char outx[32], unsigned char outy[32],
8844 const unsigned char a[32], const unsigned char b[32],
8845 const unsigned char inx[32],
8846 const unsigned char iny[32]) {
8849 fiat_id_tc26_gost_3410_2012_256_paramSetA_from_bytes(P.X, inx);
8850 fiat_id_tc26_gost_3410_2012_256_paramSetA_from_bytes(P.Y, iny);
8851 /* simultaneous scalar multiplication */
8852 var_smul_wnaf_two(&P, a, b, &P);
8854 fiat_id_tc26_gost_3410_2012_256_paramSetA_to_bytes(outx, P.X);
8855 fiat_id_tc26_gost_3410_2012_256_paramSetA_to_bytes(outy, P.Y);
8858 static void point_mul_g(unsigned char outx[32], unsigned char outy[32],
8859 const unsigned char scalar[32]) {
8862 /* fixed scmul function */
8863 fixed_smul_cmb(&P, scalar);
8864 fiat_id_tc26_gost_3410_2012_256_paramSetA_to_bytes(outx, P.X);
8865 fiat_id_tc26_gost_3410_2012_256_paramSetA_to_bytes(outy, P.Y);
8868 static void point_mul(unsigned char outx[32], unsigned char outy[32],
8869 const unsigned char scalar[32],
8870 const unsigned char inx[32],
8871 const unsigned char iny[32]) {
8874 fiat_id_tc26_gost_3410_2012_256_paramSetA_from_bytes(P.X, inx);
8875 fiat_id_tc26_gost_3410_2012_256_paramSetA_from_bytes(P.Y, iny);
8876 /* var scmul function */
8877 var_smul_rwnaf(&P, scalar, &P);
8878 fiat_id_tc26_gost_3410_2012_256_paramSetA_to_bytes(outx, P.X);
8879 fiat_id_tc26_gost_3410_2012_256_paramSetA_to_bytes(outy, P.Y);
8883 #include <openssl/ec.h>
8885 static const unsigned char const_zb[32] = {0};
8888 point_mul_two_id_tc26_gost_3410_2012_256_paramSetA(
8889 const EC_GROUP *group, EC_POINT *r, const BIGNUM *n, const EC_POINT *q,
8890 const BIGNUM *m, BN_CTX *ctx) {
8892 unsigned char b_x[32];
8893 unsigned char b_y[32];
8894 unsigned char b_n[32];
8895 unsigned char b_m[32];
8896 BIGNUM *x = NULL, *y = NULL;
8899 x = BN_CTX_get(ctx);
8900 if ((y = BN_CTX_get(ctx)) == NULL
8901 /* pull out coords as bytes */
8902 || !EC_POINT_get_affine_coordinates(group, q, x, y, ctx) ||
8903 BN_bn2lebinpad(x, b_x, 32) != 32 || BN_bn2lebinpad(y, b_y, 32) != 32 ||
8904 BN_bn2lebinpad(n, b_n, 32) != 32 || BN_bn2lebinpad(m, b_m, 32) != 32)
8906 /* do the simultaneous scalar multiplication */
8907 point_mul_two(b_x, b_y, b_n, b_m, b_x, b_y);
8908 /* check for infinity */
8909 if (CRYPTO_memcmp(const_zb, b_x, 32) == 0 &&
8910 CRYPTO_memcmp(const_zb, b_y, 32) == 0) {
8911 if (!EC_POINT_set_to_infinity(group, r)) goto err;
8913 /* otherwise, pack the bytes into the result */
8914 if (BN_lebin2bn(b_x, 32, x) == NULL ||
8915 BN_lebin2bn(b_y, 32, y) == NULL ||
8916 !EC_POINT_set_affine_coordinates(group, r, x, y, ctx))
8926 point_mul_id_tc26_gost_3410_2012_256_paramSetA(const EC_GROUP *group,
8932 unsigned char b_x[32];
8933 unsigned char b_y[32];
8934 unsigned char b_m[32];
8935 BIGNUM *x = NULL, *y = NULL;
8938 x = BN_CTX_get(ctx);
8939 if ((y = BN_CTX_get(ctx)) == NULL
8940 /* pull out coords as bytes */
8941 || !EC_POINT_get_affine_coordinates(group, q, x, y, ctx) ||
8942 BN_bn2lebinpad(x, b_x, 32) != 32 || BN_bn2lebinpad(y, b_y, 32) != 32 ||
8943 BN_bn2lebinpad(m, b_m, 32) != 32)
8945 /* do the variable scalar multiplication */
8946 point_mul(b_x, b_y, b_m, b_x, b_y);
8947 /* check for infinity */
8948 if (CRYPTO_memcmp(const_zb, b_x, 32) == 0 &&
8949 CRYPTO_memcmp(const_zb, b_y, 32) == 0) {
8950 if (!EC_POINT_set_to_infinity(group, r)) goto err;
8952 /* otherwise, pack the bytes into the result */
8953 if (BN_lebin2bn(b_x, 32, x) == NULL ||
8954 BN_lebin2bn(b_y, 32, y) == NULL ||
8955 !EC_POINT_set_affine_coordinates(group, r, x, y, ctx))
8965 point_mul_g_id_tc26_gost_3410_2012_256_paramSetA(const EC_GROUP *group,
8970 unsigned char b_x[32];
8971 unsigned char b_y[32];
8972 unsigned char b_n[32];
8973 BIGNUM *x = NULL, *y = NULL;
8976 x = BN_CTX_get(ctx);
8977 if ((y = BN_CTX_get(ctx)) == NULL || BN_bn2lebinpad(n, b_n, 32) != 32)
8979 /* do the fixed scalar multiplication */
8980 point_mul_g(b_x, b_y, b_n);
8981 /* check for infinity */
8982 if (CRYPTO_memcmp(const_zb, b_x, 32) == 0 &&
8983 CRYPTO_memcmp(const_zb, b_y, 32) == 0) {
8984 if (!EC_POINT_set_to_infinity(group, r)) goto err;
8986 /* otherwise, pack the bytes into the result */
8987 if (BN_lebin2bn(b_x, 32, x) == NULL ||
8988 BN_lebin2bn(b_y, 32, y) == NULL ||
8989 !EC_POINT_set_affine_coordinates(group, r, x, y, ctx))
9000 #endif /* __SIZEOF_INT128__ */