1use crate::backend::vector::packed_simd::u32x8;
15
16use crate::backend::vector::avx2::edwards::{CachedPoint, ExtendedPoint};
17use crate::backend::vector::avx2::field::FieldElement2625x4;
18
19#[cfg(feature = "precomputed-tables")]
20use crate::window::NafLookupTable8;
21
22pub(crate) static EXTENDEDPOINT_IDENTITY: ExtendedPoint = ExtendedPoint(FieldElement2625x4([
24 u32x8::new_const(0, 1, 0, 0, 1, 0, 0, 0),
25 u32x8::splat_const::<0>(),
26 u32x8::splat_const::<0>(),
27 u32x8::splat_const::<0>(),
28 u32x8::splat_const::<0>(),
29]));
30
31pub(crate) static CACHEDPOINT_IDENTITY: CachedPoint = CachedPoint(FieldElement2625x4([
33 u32x8::new_const(121647, 121666, 0, 0, 243332, 67108845, 0, 33554431),
34 u32x8::new_const(67108864, 0, 33554431, 0, 0, 67108863, 0, 33554431),
35 u32x8::new_const(67108863, 0, 33554431, 0, 0, 67108863, 0, 33554431),
36 u32x8::new_const(67108863, 0, 33554431, 0, 0, 67108863, 0, 33554431),
37 u32x8::new_const(67108863, 0, 33554431, 0, 0, 67108863, 0, 33554431),
38]));
39
40pub(crate) static P_TIMES_2_LO: u32x8 = u32x8::new_const(
45 67108845 << 1,
46 67108845 << 1,
47 33554431 << 1,
48 33554431 << 1,
49 67108845 << 1,
50 67108845 << 1,
51 33554431 << 1,
52 33554431 << 1,
53);
54
55pub(crate) static P_TIMES_2_HI: u32x8 = u32x8::new_const(
60 67108863 << 1,
61 67108863 << 1,
62 33554431 << 1,
63 33554431 << 1,
64 67108863 << 1,
65 67108863 << 1,
66 33554431 << 1,
67 33554431 << 1,
68);
69
70pub(crate) static P_TIMES_16_LO: u32x8 = u32x8::new_const(
75 67108845 << 4,
76 67108845 << 4,
77 33554431 << 4,
78 33554431 << 4,
79 67108845 << 4,
80 67108845 << 4,
81 33554431 << 4,
82 33554431 << 4,
83);
84
85pub(crate) static P_TIMES_16_HI: u32x8 = u32x8::new_const(
90 67108863 << 4,
91 67108863 << 4,
92 33554431 << 4,
93 33554431 << 4,
94 67108863 << 4,
95 67108863 << 4,
96 33554431 << 4,
97 33554431 << 4,
98);
99
100#[cfg(feature = "precomputed-tables")]
102pub(crate) static BASEPOINT_ODD_LOOKUP_TABLE: NafLookupTable8<CachedPoint> = NafLookupTable8([
103 CachedPoint(FieldElement2625x4([
104 u32x8::new_const(
105 3571425, 10045002, 19036563, 1096096, 243332, 65897020, 0, 28963681,
106 ),
107 u32x8::new_const(
108 30896895, 63055514, 1614915, 5095970, 0, 53791688, 0, 31258312,
109 ),
110 u32x8::new_const(
111 13347627, 40339464, 2236269, 11185503, 0, 22520087, 0, 8659512,
112 ),
113 u32x8::new_const(
114 11125413, 29139905, 32037254, 28360723, 0, 64556417, 0, 9635759,
115 ),
116 u32x8::new_const(
117 33268144, 47262491, 4336918, 15795740, 0, 22027545, 0, 4846528,
118 ),
119 ])),
120 CachedPoint(FieldElement2625x4([
121 u32x8::new_const(
122 47099681, 31447946, 29365447, 24740513, 42991046, 18317844, 16051644, 21404226,
123 ),
124 u32x8::new_const(
125 31708133, 28909527, 2366091, 13703791, 469246, 54159622, 2601402, 32988002,
126 ),
127 u32x8::new_const(
128 63432457, 30251794, 15163516, 18491340, 28144087, 35605455, 13682295, 18474872,
129 ),
130 u32x8::new_const(
131 12221607, 4967598, 26061980, 26008006, 20226147, 9726961, 17410, 18051083,
132 ),
133 u32x8::new_const(
134 60569645, 62487085, 11911242, 21920922, 4092105, 38186967, 22431483, 31366585,
135 ),
136 ])),
137 CachedPoint(FieldElement2625x4([
138 u32x8::new_const(
139 18147205, 62587998, 2554617, 536692, 11924528, 26674131, 17645433, 24341419,
140 ),
141 u32x8::new_const(
142 11573357, 27579485, 31491870, 29000885, 10800976, 51902791, 28076395, 20464029,
143 ),
144 u32x8::new_const(
145 56031649, 10856669, 11791193, 26769430, 25306956, 5922200, 6630685, 9385098,
146 ),
147 u32x8::new_const(
148 31319348, 23906711, 16290213, 32142166, 61106354, 17181823, 3548308, 12022566,
149 ),
150 u32x8::new_const(
151 5904298, 50218605, 11826440, 5492249, 10379071, 3472255, 172742, 31948344,
152 ),
153 ])),
154 CachedPoint(FieldElement2625x4([
155 u32x8::new_const(
156 10625852, 15193821, 22918394, 23676410, 53695416, 54987793, 10067515, 11747680,
157 ),
158 u32x8::new_const(
159 65013325, 1309652, 29616320, 28922974, 60360891, 19621771, 9938982, 30406429,
160 ),
161 u32x8::new_const(
162 54967954, 65931918, 5595602, 25719523, 64909864, 30566415, 15945272, 8495317,
163 ),
164 u32x8::new_const(
165 1167157, 55265018, 11507029, 31641054, 43497904, 2367338, 12937761, 27517066,
166 ),
167 u32x8::new_const(
168 656704, 2544994, 13006713, 480979, 38471594, 62541240, 25353597, 11531760,
169 ),
170 ])),
171 CachedPoint(FieldElement2625x4([
172 u32x8::new_const(
173 22176662, 3984313, 27495285, 4110608, 2909584, 30594106, 15677919, 2549183,
174 ),
175 u32x8::new_const(
176 33979105, 62269905, 2071511, 6894756, 53189950, 47232857, 6408191, 6123225,
177 ),
178 u32x8::new_const(
179 32553873, 63948030, 12612401, 3633166, 24054373, 37626618, 14481327, 8520484,
180 ),
181 u32x8::new_const(
182 56552486, 10749438, 12034813, 28811946, 1445640, 36755601, 12104575, 10257833,
183 ),
184 u32x8::new_const(
185 22795808, 48761311, 1136056, 9380768, 1411523, 5341811, 27318329, 9686767,
186 ),
187 ])),
188 CachedPoint(FieldElement2625x4([
189 u32x8::new_const(
190 21157200, 39156966, 20473176, 4934657, 61478183, 45121537, 5429856, 13035023,
191 ),
192 u32x8::new_const(
193 7954529, 58789246, 31440083, 7054221, 38438565, 36856107, 1364112, 14548122,
194 ),
195 u32x8::new_const(
196 26120083, 36321360, 4919997, 31687496, 33757765, 36237559, 15243054, 32163861,
197 ),
198 u32x8::new_const(
199 25878307, 46544824, 19455951, 2414935, 16844726, 56521560, 32680554, 26660660,
200 ),
201 u32x8::new_const(
202 48360220, 43407178, 12187042, 24925816, 7423722, 25746484, 12814654, 17395963,
203 ),
204 ])),
205 CachedPoint(FieldElement2625x4([
206 u32x8::new_const(
207 63153652, 32195955, 4087908, 8431689, 30392384, 47203165, 8986649, 9053039,
208 ),
209 u32x8::new_const(
210 63659241, 47988767, 2931872, 19953600, 11747107, 51610101, 20952181, 13364887,
211 ),
212 u32x8::new_const(
213 3659197, 58790649, 5930099, 2605312, 28477896, 580728, 20579735, 2610622,
214 ),
215 u32x8::new_const(
216 41781607, 17161358, 10690531, 24368015, 47027031, 36742339, 5414694, 13156365,
217 ),
218 u32x8::new_const(
219 13237853, 51182423, 8954802, 29006542, 22643989, 56896541, 22830593, 10289708,
220 ),
221 ])),
222 CachedPoint(FieldElement2625x4([
223 u32x8::new_const(
224 1401265, 58846825, 30911620, 32239180, 15391552, 15200821, 6339309, 16403588,
225 ),
226 u32x8::new_const(
227 55913797, 29541724, 1664461, 21709410, 38470488, 47097092, 17674945, 32666066,
228 ),
229 u32x8::new_const(
230 22844482, 10797709, 27548106, 31638735, 34500968, 26611503, 19727211, 13160873,
231 ),
232 u32x8::new_const(
233 31485204, 14496164, 13981208, 10276888, 5748808, 35024436, 2740987, 7479021,
234 ),
235 u32x8::new_const(
236 58541207, 14866135, 32344041, 545930, 62661488, 6941250, 27940205, 11976112,
237 ),
238 ])),
239 CachedPoint(FieldElement2625x4([
240 u32x8::new_const(
241 39849808, 44781685, 15697329, 24387845, 12501486, 50260092, 23199481, 31929024,
242 ),
243 u32x8::new_const(
244 24823070, 27956017, 27034296, 10316465, 47664045, 11152446, 15719183, 30181617,
245 ),
246 u32x8::new_const(
247 20771189, 19969144, 31433937, 19185213, 27565920, 10384445, 2893359, 9255362,
248 ),
249 u32x8::new_const(
250 42894974, 11925545, 32134441, 32738810, 55916336, 32479272, 19563550, 5511385,
251 ),
252 u32x8::new_const(
253 17857161, 47809169, 14564114, 27997751, 33024640, 38669671, 31956536, 27313245,
254 ),
255 ])),
256 CachedPoint(FieldElement2625x4([
257 u32x8::new_const(
258 58237774, 15917425, 18872208, 19394230, 17374297, 6101419, 4839741, 6596900,
259 ),
260 u32x8::new_const(
261 66947393, 15744215, 18368993, 17750160, 41006525, 9205497, 2629667, 32170865,
262 ),
263 u32x8::new_const(
264 66481381, 1919414, 28338762, 7372967, 33819153, 4156199, 27126309, 12739816,
265 ),
266 u32x8::new_const(
267 44117158, 58545296, 22521371, 11809712, 28998792, 50731010, 30215699, 25748377,
268 ),
269 u32x8::new_const(
270 23561284, 4160244, 9035405, 24895184, 39761639, 59253416, 8684759, 22487864,
271 ),
272 ])),
273 CachedPoint(FieldElement2625x4([
274 u32x8::new_const(
275 12671134, 56419053, 16092401, 30038207, 4002647, 47822606, 7151311, 28430768,
276 ),
277 u32x8::new_const(
278 61041684, 35765374, 30598048, 19666539, 44150175, 40140037, 290469, 28442674,
279 ),
280 u32x8::new_const(
281 18847796, 1371617, 33316881, 13199936, 43646578, 17068881, 12074900, 1537415,
282 ),
283 u32x8::new_const(
284 10052225, 38316070, 27469797, 5297537, 50725570, 20435349, 10339121, 2779737,
285 ),
286 u32x8::new_const(
287 18372189, 15466385, 24762130, 22217964, 23503887, 47844464, 10415034, 2606889,
288 ),
289 ])),
290 CachedPoint(FieldElement2625x4([
291 u32x8::new_const(
292 55082775, 45300503, 16032654, 5964396, 17743504, 24634761, 19493066, 5184611,
293 ),
294 u32x8::new_const(
295 50172633, 35093294, 10040575, 23616256, 4543900, 61852191, 4049821, 7423669,
296 ),
297 u32x8::new_const(
298 20295398, 40009376, 10487190, 15670429, 51972856, 58649552, 20436392, 3432497,
299 ),
300 u32x8::new_const(
301 35189420, 54117751, 12825868, 6283038, 27540739, 30648758, 22658912, 9466689,
302 ),
303 u32x8::new_const(
304 51737549, 40725785, 17409814, 25201086, 21156239, 34176168, 26814520, 5956424,
305 ),
306 ])),
307 CachedPoint(FieldElement2625x4([
308 u32x8::new_const(
309 8211442, 8014184, 6260823, 22108096, 32182620, 51844847, 2466270, 28582231,
310 ),
311 u32x8::new_const(
312 27199739, 3848333, 31738017, 10892045, 4963982, 65391770, 32551997, 28906469,
313 ),
314 u32x8::new_const(
315 16606846, 32207068, 26404535, 7614129, 45416902, 65584718, 13821785, 2646060,
316 ),
317 u32x8::new_const(
318 36090634, 57981287, 32247670, 22837502, 31003861, 55448117, 6062915, 20369975,
319 ),
320 u32x8::new_const(
321 27381403, 50578107, 522631, 29521058, 31137497, 40220737, 27628049, 1824195,
322 ),
323 ])),
324 CachedPoint(FieldElement2625x4([
325 u32x8::new_const(
326 59402443, 17056879, 29262689, 6131785, 52551472, 43367471, 29423199, 18899208,
327 ),
328 u32x8::new_const(
329 5749414, 43514612, 11365899, 21514624, 65591890, 60945892, 19841732, 5628567,
330 ),
331 u32x8::new_const(
332 19334369, 52500268, 12307673, 5267367, 3212103, 9035822, 29142161, 30520954,
333 ),
334 u32x8::new_const(
335 57261330, 6819646, 22089161, 9800373, 55155453, 62250856, 13766735, 25244545,
336 ),
337 u32x8::new_const(
338 54370226, 61888301, 24496089, 2540581, 65637506, 60274355, 18154273, 11687259,
339 ),
340 ])),
341 CachedPoint(FieldElement2625x4([
342 u32x8::new_const(
343 12521903, 26014045, 13995625, 33360175, 23605474, 7376434, 27229267, 17195036,
344 ),
345 u32x8::new_const(
346 59482891, 10074423, 574357, 3857753, 61377787, 50306685, 5241065, 20234396,
347 ),
348 u32x8::new_const(
349 23674717, 6997172, 20771841, 16858511, 40565304, 29973136, 7049812, 14585010,
350 ),
351 u32x8::new_const(
352 1427477, 13295732, 31762066, 31499740, 60419925, 54666164, 22009424, 8089609,
353 ),
354 u32x8::new_const(
355 58154031, 41593020, 15342328, 957047, 38937260, 37037498, 24871992, 32973409,
356 ),
357 ])),
358 CachedPoint(FieldElement2625x4([
359 u32x8::new_const(
360 30654745, 51286025, 21206982, 2433562, 12780105, 31732574, 33087964, 33081189,
361 ),
362 u32x8::new_const(
363 66640017, 42720009, 16567620, 15300745, 1530367, 33001123, 20930247, 21042661,
364 ),
365 u32x8::new_const(
366 15003356, 5294119, 22985605, 18928772, 32628461, 18230172, 14773298, 27193722,
367 ),
368 u32x8::new_const(
369 27555, 65346287, 17017174, 7837720, 21499787, 42855613, 22474984, 13675085,
370 ),
371 u32x8::new_const(
372 24164369, 50130116, 5973149, 24152073, 1577334, 25400030, 18648484, 32228854,
373 ),
374 ])),
375 CachedPoint(FieldElement2625x4([
376 u32x8::new_const(
377 49518649, 59119280, 31670678, 20396561, 61728330, 651402, 176032, 9529498,
378 ),
379 u32x8::new_const(
380 61765532, 9082232, 32794568, 15526956, 48543100, 32614212, 19001206, 25680229,
381 ),
382 u32x8::new_const(
383 32086091, 10373081, 8996131, 31822823, 35788988, 49973190, 30542040, 17858455,
384 ),
385 u32x8::new_const(
386 48130197, 58121889, 27753291, 29923268, 54448075, 43300790, 9336565, 15770022,
387 ),
388 u32x8::new_const(
389 57725546, 20557498, 9366233, 16023566, 16189031, 2837363, 24315301, 27003505,
390 ),
391 ])),
392 CachedPoint(FieldElement2625x4([
393 u32x8::new_const(
394 28286608, 10767548, 18220739, 5413236, 48253387, 58255702, 11864864, 28527159,
395 ),
396 u32x8::new_const(
397 45038176, 58655197, 25648758, 10951484, 42564382, 34542843, 23146954, 22234334,
398 ),
399 u32x8::new_const(
400 14858710, 24978793, 15040559, 4379220, 47621477, 40271440, 15650420, 1998736,
401 ),
402 u32x8::new_const(
403 24106391, 9626149, 344505, 25253814, 34579800, 59687089, 25718289, 25904133,
404 ),
405 u32x8::new_const(
406 1981195, 37751302, 26132048, 1764722, 13288231, 28808622, 12531301, 18292949,
407 ),
408 ])),
409 CachedPoint(FieldElement2625x4([
410 u32x8::new_const(
411 13869851, 31448904, 14963539, 7581293, 20536485, 35021083, 21257574, 33356609,
412 ),
413 u32x8::new_const(
414 36903364, 18429241, 11097857, 5943856, 60583077, 40015815, 30509523, 31915271,
415 ),
416 u32x8::new_const(
417 49161801, 40681915, 67892, 25454357, 22779677, 25798439, 15964829, 5863227,
418 ),
419 u32x8::new_const(
420 60810637, 4496471, 5217137, 14095116, 50942411, 50712663, 2507380, 26844507,
421 ),
422 u32x8::new_const(
423 34579752, 53519385, 10859797, 18816024, 42552864, 39478521, 6783896, 17277037,
424 ),
425 ])),
426 CachedPoint(FieldElement2625x4([
427 u32x8::new_const(
428 43287109, 27900723, 33182187, 2766754, 17041989, 1018260, 33392790, 4830032,
429 ),
430 u32x8::new_const(
431 60194178, 30788903, 24728888, 14513195, 20897010, 28843233, 20111980, 17475240,
432 ),
433 u32x8::new_const(
434 46042274, 19257042, 4628173, 31649727, 27388316, 66631493, 11541886, 6408028,
435 ),
436 u32x8::new_const(
437 57024680, 49536568, 32050358, 31321917, 17437691, 49672356, 2884755, 20493991,
438 ),
439 u32x8::new_const(
440 59553007, 46782643, 29001173, 1814088, 21930692, 51319706, 14965872, 30748046,
441 ),
442 ])),
443 CachedPoint(FieldElement2625x4([
444 u32x8::new_const(
445 16441817, 36111849, 6900424, 602234, 46522199, 16441484, 8135070, 21726541,
446 ),
447 u32x8::new_const(
448 37711225, 32701959, 11679112, 13125533, 32154135, 9407918, 26554289, 620848,
449 ),
450 u32x8::new_const(
451 19233407, 30086864, 14679568, 2797374, 4892806, 7993077, 247658, 5632804,
452 ),
453 u32x8::new_const(
454 37427262, 26675495, 27125659, 13496131, 50718473, 40115609, 28505351, 27837393,
455 ),
456 u32x8::new_const(
457 196819, 18410429, 7070012, 21691388, 29763371, 24754123, 9727048, 10930179,
458 ),
459 ])),
460 CachedPoint(FieldElement2625x4([
461 u32x8::new_const(
462 28319289, 40734650, 16225680, 24739184, 64272368, 35356897, 7866648, 13635853,
463 ),
464 u32x8::new_const(
465 34165295, 48328447, 27041670, 23643655, 48949950, 52963288, 30411133, 6045174,
466 ),
467 u32x8::new_const(
468 18583559, 41649834, 9813585, 26098520, 25682734, 26733526, 19276490, 10654728,
469 ),
470 u32x8::new_const(
471 34867476, 52715968, 5694571, 13380978, 15134994, 1831255, 8608001, 17266401,
472 ),
473 u32x8::new_const(
474 59925903, 44282172, 27802465, 1855069, 14234749, 36635487, 11302294, 10938429,
475 ),
476 ])),
477 CachedPoint(FieldElement2625x4([
478 u32x8::new_const(
479 8373273, 49064494, 4932071, 32997499, 38472880, 29335908, 14504412, 22460029,
480 ),
481 u32x8::new_const(
482 31795930, 50785923, 25835990, 25790073, 65669841, 11360450, 9969157, 9008164,
483 ),
484 u32x8::new_const(
485 50262498, 45869261, 16124434, 15336007, 882762, 42522623, 11277198, 26296377,
486 ),
487 u32x8::new_const(
488 42332732, 59129236, 14452816, 567985, 208061, 34722729, 32008143, 14828749,
489 ),
490 u32x8::new_const(
491 17937794, 36846032, 32102665, 4442466, 19745435, 31633451, 7146411, 15812027,
492 ),
493 ])),
494 CachedPoint(FieldElement2625x4([
495 u32x8::new_const(
496 30741269, 38648744, 12562645, 30092623, 25073992, 28730659, 27911745, 30000958,
497 ),
498 u32x8::new_const(
499 2859794, 25991700, 17776078, 27091930, 2328322, 60061146, 18581824, 18039008,
500 ),
501 u32x8::new_const(
502 58206333, 17917354, 1972306, 11853766, 2655376, 60543390, 18416710, 13287440,
503 ),
504 u32x8::new_const(
505 62746330, 61423885, 21246577, 2266675, 60099139, 14804707, 14772234, 20679434,
506 ),
507 u32x8::new_const(
508 26987698, 15488817, 715616, 2339565, 51980752, 17333865, 21965103, 10839820,
509 ),
510 ])),
511 CachedPoint(FieldElement2625x4([
512 u32x8::new_const(
513 18672548, 57660959, 16042910, 19519287, 62865851, 17580961, 26628347, 23774759,
514 ),
515 u32x8::new_const(
516 368070, 3464471, 25888304, 30370559, 52396053, 45426828, 28745251, 9246829,
517 ),
518 u32x8::new_const(
519 29090099, 57950037, 23104657, 4903923, 10987778, 56163684, 23621539, 10332760,
520 ),
521 u32x8::new_const(
522 53338235, 44851161, 21606845, 31069622, 4243630, 34464392, 11286454, 5802022,
523 ),
524 u32x8::new_const(
525 46710757, 63389067, 11642865, 1980986, 12967337, 28162061, 3854192, 30432268,
526 ),
527 ])),
528 CachedPoint(FieldElement2625x4([
529 u32x8::new_const(
530 12179834, 41005450, 12809619, 33525228, 4624405, 46957889, 16968743, 11827816,
531 ),
532 u32x8::new_const(
533 51521162, 12466775, 31791271, 15303651, 49798465, 62714504, 6509600, 12918560,
534 ),
535 u32x8::new_const(
536 20445559, 1756449, 28848701, 7920171, 9835040, 5900071, 28757409, 12376688,
537 ),
538 u32x8::new_const(
539 18259496, 14281012, 21767026, 10232236, 20000226, 12400540, 4104902, 23570543,
540 ),
541 u32x8::new_const(
542 3687440, 26546648, 13328821, 26841081, 49822734, 22334054, 244496, 24862543,
543 ),
544 ])),
545 CachedPoint(FieldElement2625x4([
546 u32x8::new_const(
547 59523541, 62195428, 3853227, 13954801, 12387708, 47627615, 27221350, 17899572,
548 ),
549 u32x8::new_const(
550 63193587, 36343307, 14595132, 6880795, 1364792, 37648434, 3259017, 20536046,
551 ),
552 u32x8::new_const(
553 30362834, 10440372, 9574624, 11729232, 63861613, 21748389, 5530846, 2721586,
554 ),
555 u32x8::new_const(
556 18339760, 1550632, 17170271, 25732971, 28459263, 63142237, 21642345, 31557672,
557 ),
558 u32x8::new_const(
559 10611282, 5204623, 18049257, 214175, 19432723, 49809070, 26010406, 27449522,
560 ),
561 ])),
562 CachedPoint(FieldElement2625x4([
563 u32x8::new_const(
564 19770733, 26478685, 9464541, 29158041, 28604307, 45196604, 7586524, 6641859,
565 ),
566 u32x8::new_const(
567 65654484, 52230498, 30886612, 19112823, 47271809, 38942611, 16020035, 10773481,
568 ),
569 u32x8::new_const(
570 27464323, 54451016, 20646645, 17732915, 23008717, 53626684, 3253189, 15614410,
571 ),
572 u32x8::new_const(
573 52381752, 40693008, 7063024, 28469981, 51159478, 44543211, 19941777, 5985451,
574 ),
575 u32x8::new_const(
576 13553668, 35524849, 14788737, 1883845, 12385775, 47958835, 29135466, 1776722,
577 ),
578 ])),
579 CachedPoint(FieldElement2625x4([
580 u32x8::new_const(
581 36719806, 20827965, 23175373, 32996806, 42041892, 65708790, 5467143, 20884008,
582 ),
583 u32x8::new_const(
584 43256281, 40770646, 17244063, 31959819, 64366384, 43544617, 25057754, 12628720,
585 ),
586 u32x8::new_const(
587 17337782, 58472057, 27906934, 15305274, 30292418, 39284317, 16946773, 24806712,
588 ),
589 u32x8::new_const(
590 6485126, 32447403, 16261486, 13561940, 49439635, 10738368, 16419889, 8897231,
591 ),
592 u32x8::new_const(
593 44812203, 40122262, 25496058, 2759794, 25295304, 52178368, 24154195, 29334408,
594 ),
595 ])),
596 CachedPoint(FieldElement2625x4([
597 u32x8::new_const(
598 42307254, 57217102, 1088936, 3832827, 33905401, 23130334, 6958056, 12622851,
599 ),
600 u32x8::new_const(
601 3881189, 14870059, 19712830, 6071598, 38147944, 60776394, 3427938, 13765703,
602 ),
603 u32x8::new_const(
604 7666911, 24227591, 17077136, 22967588, 6874639, 30915523, 11451695, 24292224,
605 ),
606 u32x8::new_const(
607 13659529, 31984463, 28764736, 20506164, 64729627, 49321636, 28284636, 25472371,
608 ),
609 u32x8::new_const(
610 39360308, 42281399, 9446504, 868960, 49227724, 21351115, 30561851, 11292096,
611 ),
612 ])),
613 CachedPoint(FieldElement2625x4([
614 u32x8::new_const(
615 7071115, 46444090, 5387916, 15432877, 27226682, 41506862, 2398278, 3978240,
616 ),
617 u32x8::new_const(
618 51009614, 54216973, 24368938, 31392616, 38456150, 62313644, 6729154, 99724,
619 ),
620 u32x8::new_const(
621 17474332, 62857913, 2619930, 30659308, 18268181, 32809239, 22826292, 24561895,
622 ),
623 u32x8::new_const(
624 38187020, 67003092, 14118280, 16500577, 18808560, 64983716, 25712929, 32518261,
625 ),
626 u32x8::new_const(
627 25735813, 62284262, 10824872, 20558596, 48149681, 31162667, 22608274, 26285185,
628 ),
629 ])),
630 CachedPoint(FieldElement2625x4([
631 u32x8::new_const(
632 963440, 63742255, 10230323, 25515008, 32506414, 6105697, 25980317, 24645129,
633 ),
634 u32x8::new_const(
635 7162189, 8101249, 14679265, 33443386, 2002396, 8541405, 19442276, 4795881,
636 ),
637 u32x8::new_const(
638 8116694, 51463069, 4415528, 25599140, 55805721, 39582709, 6719436, 30033839,
639 ),
640 u32x8::new_const(
641 14468202, 42181869, 25188826, 9639755, 47546189, 62711146, 32762447, 18338064,
642 ),
643 u32x8::new_const(
644 33880058, 32810909, 8969931, 13095238, 38360605, 40138517, 9246134, 4928058,
645 ),
646 ])),
647 CachedPoint(FieldElement2625x4([
648 u32x8::new_const(
649 63655588, 17883670, 9410246, 26162761, 5000571, 7349225, 23785252, 32751089,
650 ),
651 u32x8::new_const(
652 28568737, 10733123, 9342397, 21570673, 54096560, 32467591, 20494687, 21511513,
653 ),
654 u32x8::new_const(
655 47675157, 47932807, 29250946, 15672208, 59760469, 9945465, 14939287, 18437405,
656 ),
657 u32x8::new_const(
658 37985267, 8609815, 31573002, 3373596, 47828883, 20834216, 13248616, 24154292,
659 ),
660 u32x8::new_const(
661 5543543, 29553242, 3386453, 30501150, 25058089, 15236571, 8814395, 32462955,
662 ),
663 ])),
664 CachedPoint(FieldElement2625x4([
665 u32x8::new_const(
666 39158670, 15322548, 20495103, 3312736, 14557171, 12985179, 8044741, 3176899,
667 ),
668 u32x8::new_const(
669 24673290, 29693310, 21412266, 18324699, 2154518, 40329021, 17500543, 3954277,
670 ),
671 u32x8::new_const(
672 36758685, 38738957, 165513, 14691866, 3070475, 10424235, 17096536, 16896898,
673 ),
674 u32x8::new_const(
675 59790459, 43094586, 8720681, 10423589, 1122030, 31545615, 4463786, 31811293,
676 ),
677 u32x8::new_const(
678 49778992, 60881044, 20509974, 5832494, 64155961, 31483358, 4511231, 20307815,
679 ),
680 ])),
681 CachedPoint(FieldElement2625x4([
682 u32x8::new_const(
683 2863373, 40876242, 26865913, 24067353, 15726407, 40919070, 12953902, 9931535,
684 ),
685 u32x8::new_const(
686 60934877, 42512204, 21649141, 21945190, 52211954, 60984193, 7046207, 5363493,
687 ),
688 u32x8::new_const(
689 4205971, 64068464, 18197273, 7327176, 51527794, 21166920, 20669933, 11828242,
690 ),
691 u32x8::new_const(
692 59782815, 49617225, 15379924, 457923, 9320508, 21498914, 3242540, 31563182,
693 ),
694 u32x8::new_const(
695 27714753, 8664670, 3366162, 26338598, 56775518, 25796006, 13129151, 21388876,
696 ),
697 ])),
698 CachedPoint(FieldElement2625x4([
699 u32x8::new_const(
700 59276548, 49972346, 16795002, 33455915, 48430097, 53857205, 18627071, 32474471,
701 ),
702 u32x8::new_const(
703 42160315, 50705892, 13530540, 28012698, 19833221, 55886870, 20191784, 9644313,
704 ),
705 u32x8::new_const(
706 20372416, 28414713, 24084234, 31804096, 33815377, 36131001, 17251241, 18291088,
707 ),
708 u32x8::new_const(
709 56234667, 14920441, 2033267, 29572003, 1724043, 45519699, 17873735, 501988,
710 ),
711 u32x8::new_const(
712 50031659, 31517850, 15697583, 1016845, 43104661, 54769582, 8008601, 27257051,
713 ),
714 ])),
715 CachedPoint(FieldElement2625x4([
716 u32x8::new_const(
717 52951491, 66542164, 14853573, 30444631, 12045973, 24321813, 16545674, 18160646,
718 ),
719 u32x8::new_const(
720 60107911, 1126003, 5947677, 19486116, 41119984, 30860440, 7935395, 13354438,
721 ),
722 u32x8::new_const(
723 17841328, 11063269, 1664538, 26687568, 6268968, 22280371, 17275484, 4523163,
724 ),
725 u32x8::new_const(
726 15886041, 56799482, 15446552, 21712778, 1005290, 17827215, 4978741, 6854882,
727 ),
728 u32x8::new_const(
729 34319277, 47731002, 20321804, 28544575, 29591814, 63376351, 24754545, 26001714,
730 ),
731 ])),
732 CachedPoint(FieldElement2625x4([
733 u32x8::new_const(
734 66783087, 5234346, 46102, 8566476, 19947339, 20180418, 25398238, 3726678,
735 ),
736 u32x8::new_const(
737 63890180, 46380965, 20674069, 5366544, 59661487, 48406612, 31533614, 7071217,
738 ),
739 u32x8::new_const(
740 13104676, 1406631, 24326736, 19854367, 61039528, 11019904, 31967425, 19219275,
741 ),
742 u32x8::new_const(
743 39003597, 30143957, 15351834, 8639435, 57309582, 61436794, 15830475, 10090318,
744 ),
745 u32x8::new_const(
746 45923044, 6700175, 99413, 21263025, 23762647, 53905481, 6063914, 10065424,
747 ),
748 ])),
749 CachedPoint(FieldElement2625x4([
750 u32x8::new_const(
751 42822326, 57678669, 4052879, 25452667, 54049411, 2373092, 22337016, 7701046,
752 ),
753 u32x8::new_const(
754 44382355, 43307377, 16761537, 30373573, 49790216, 23230748, 25655306, 10519391,
755 ),
756 u32x8::new_const(
757 919475, 59371245, 1273450, 25558666, 9724711, 8556709, 25755845, 10887647,
758 ),
759 u32x8::new_const(
760 25465699, 44651158, 17658392, 11257418, 29735193, 22885150, 7094716, 26828565,
761 ),
762 u32x8::new_const(
763 48237389, 47661599, 27054393, 7328070, 27280193, 65616691, 23062005, 4170709,
764 ),
765 ])),
766 CachedPoint(FieldElement2625x4([
767 u32x8::new_const(
768 26535281, 60238317, 30343788, 25790743, 37993933, 24614372, 9523840, 10401918,
769 ),
770 u32x8::new_const(
771 2783987, 29468958, 4697011, 19804475, 37246678, 46797720, 10261254, 18942252,
772 ),
773 u32x8::new_const(
774 58135580, 60247753, 25301938, 6844561, 20949454, 39844754, 4552026, 919057,
775 ),
776 u32x8::new_const(
777 6694071, 44126261, 32285330, 31370180, 24603698, 53328179, 13971149, 5325636,
778 ),
779 u32x8::new_const(
780 64879487, 582094, 17982081, 19190425, 24951286, 26923842, 29077174, 33286062,
781 ),
782 ])),
783 CachedPoint(FieldElement2625x4([
784 u32x8::new_const(
785 54863941, 67016431, 1224043, 23371240, 62940074, 52101083, 13523637, 30366406,
786 ),
787 u32x8::new_const(
788 36324581, 25407485, 18258623, 4698602, 50300544, 2658516, 26300935, 2611030,
789 ),
790 u32x8::new_const(
791 27183975, 21791014, 18105064, 9875199, 58118912, 54198635, 6400311, 14767984,
792 ),
793 u32x8::new_const(
794 33918318, 42937962, 14809334, 22136592, 10636588, 29082337, 29829692, 28549776,
795 ),
796 u32x8::new_const(
797 61080905, 854212, 12202487, 20004503, 9256495, 6903981, 20567109, 347423,
798 ),
799 ])),
800 CachedPoint(FieldElement2625x4([
801 u32x8::new_const(
802 41391822, 34336880, 22362564, 14247996, 12115604, 41583344, 7639288, 28910945,
803 ),
804 u32x8::new_const(
805 62066617, 59758859, 26665947, 11614812, 65737664, 45704543, 30324810, 12868376,
806 ),
807 u32x8::new_const(
808 17491771, 43589814, 9454919, 26047850, 52629282, 39304244, 3868968, 19296062,
809 ),
810 u32x8::new_const(
811 17826638, 30413590, 32534225, 32741469, 15012391, 14365713, 33039233, 14791399,
812 ),
813 u32x8::new_const(
814 64115596, 59197067, 32739005, 23275744, 32954320, 22241406, 20788442, 4942942,
815 ),
816 ])),
817 CachedPoint(FieldElement2625x4([
818 u32x8::new_const(
819 31956192, 59570132, 2784352, 4237732, 47222312, 4860927, 18658867, 15279314,
820 ),
821 u32x8::new_const(
822 63240583, 28160478, 23524941, 13390861, 66437406, 57718120, 33345312, 28896298,
823 ),
824 u32x8::new_const(
825 39026193, 46239965, 21440243, 25070488, 64012383, 60999016, 16517060, 29565907,
826 ),
827 u32x8::new_const(
828 18118181, 60161496, 4212092, 23976240, 36277753, 62363144, 5816868, 16964362,
829 ),
830 u32x8::new_const(
831 18196138, 62490693, 281468, 7934713, 56027312, 62015725, 4837237, 32932252,
832 ),
833 ])),
834 CachedPoint(FieldElement2625x4([
835 u32x8::new_const(
836 29885826, 51028067, 30418143, 33438769, 62542283, 39442528, 31535876, 143299,
837 ),
838 u32x8::new_const(
839 17143063, 56709783, 14451852, 15782104, 32762665, 14047066, 26295037, 5432487,
840 ),
841 u32x8::new_const(
842 75151, 533606, 7539077, 30926189, 38410914, 23771680, 4872443, 29199566,
843 ),
844 u32x8::new_const(
845 61522396, 48934708, 16223126, 207380, 11171993, 47975147, 14164574, 352966,
846 ),
847 u32x8::new_const(
848 15449006, 56530757, 26796528, 12045834, 63738697, 40667227, 33001582, 9101885,
849 ),
850 ])),
851 CachedPoint(FieldElement2625x4([
852 u32x8::new_const(
853 43331297, 18431341, 25801195, 17267698, 19365485, 57295202, 22218985, 21284590,
854 ),
855 u32x8::new_const(
856 2429849, 19152559, 10762172, 22564684, 21880390, 66866426, 20357935, 22641906,
857 ),
858 u32x8::new_const(
859 19771185, 31652693, 3666117, 28136958, 23624283, 55101502, 6313920, 6783662,
860 ),
861 u32x8::new_const(
862 3487137, 7092443, 11001876, 26196524, 47319246, 44542068, 17594073, 15027760,
863 ),
864 u32x8::new_const(
865 49563607, 32191113, 4991283, 25400512, 46539152, 4155103, 32368171, 201203,
866 ),
867 ])),
868 CachedPoint(FieldElement2625x4([
869 u32x8::new_const(
870 20548943, 14334571, 4073874, 6368588, 53208883, 56484515, 15970071, 25561889,
871 ),
872 u32x8::new_const(
873 49915097, 44030795, 11202344, 29284344, 60258023, 66225712, 8075764, 12383512,
874 ),
875 u32x8::new_const(
876 45248912, 4933668, 9592153, 5819559, 31030983, 38174071, 32435814, 7442522,
877 ),
878 u32x8::new_const(
879 62688129, 48218381, 22089545, 12897361, 21050881, 34278889, 7569163, 3225449,
880 ),
881 u32x8::new_const(
882 19050183, 51089071, 32935757, 22640195, 66122318, 47144608, 18743677, 25177079,
883 ),
884 ])),
885 CachedPoint(FieldElement2625x4([
886 u32x8::new_const(
887 41186817, 46681702, 31819867, 32997133, 38559207, 27147015, 30293819, 16762988,
888 ),
889 u32x8::new_const(
890 24154689, 51762873, 23883879, 13510519, 55338250, 61224161, 11663149, 30803960,
891 ),
892 u32x8::new_const(
893 18104238, 14117824, 11724021, 21362053, 65704761, 35530242, 13498058, 33522849,
894 ),
895 u32x8::new_const(
896 63812888, 23995539, 28920539, 24005193, 26412223, 36582218, 4251418, 26160309,
897 ),
898 u32x8::new_const(
899 16822053, 66064082, 3482145, 31979593, 45937188, 54475379, 612917, 7976478,
900 ),
901 ])),
902 CachedPoint(FieldElement2625x4([
903 u32x8::new_const(
904 46509314, 55327128, 8944536, 274914, 26432930, 53829300, 21192572, 3569894,
905 ),
906 u32x8::new_const(
907 20919764, 64356651, 30642344, 17215170, 20335124, 11203745, 18663316, 19024174,
908 ),
909 u32x8::new_const(
910 59297055, 53842463, 3680204, 9806710, 54004169, 51484914, 29807998, 20134199,
911 ),
912 u32x8::new_const(
913 14781592, 22628010, 26877930, 25880359, 30434803, 190607, 30184292, 8991040,
914 ),
915 u32x8::new_const(
916 64400983, 64591751, 854562, 28216111, 20010398, 50414793, 9803872, 22687008,
917 ),
918 ])),
919 CachedPoint(FieldElement2625x4([
920 u32x8::new_const(
921 15091184, 32550863, 8818643, 4244752, 43123513, 64565526, 408838, 13206998,
922 ),
923 u32x8::new_const(
924 16405061, 60379639, 31489017, 20949281, 27568751, 38734986, 8364264, 12451020,
925 ),
926 u32x8::new_const(
927 16005217, 58008076, 1406778, 26546927, 39571784, 56365493, 31274296, 8918790,
928 ),
929 u32x8::new_const(
930 23271122, 19453469, 27718201, 32742670, 234332, 36785342, 22601675, 14331046,
931 ),
932 u32x8::new_const(
933 40636025, 22442705, 22115403, 23745859, 41164945, 61012, 12499614, 542137,
934 ),
935 ])),
936 CachedPoint(FieldElement2625x4([
937 u32x8::new_const(
938 62776018, 32835413, 17373246, 17187309, 54469193, 21770290, 15923753, 28996575,
939 ),
940 u32x8::new_const(
941 59385210, 63082298, 12568449, 8509004, 9483342, 16105238, 5756054, 26890758,
942 ),
943 u32x8::new_const(
944 53987996, 38201748, 5521661, 19060159, 18663191, 9093637, 27786835, 31189196,
945 ),
946 u32x8::new_const(
947 65872678, 43635130, 27903055, 25020300, 65772737, 38110437, 5213502, 21909342,
948 ),
949 u32x8::new_const(
950 4438979, 9680838, 10212446, 4764184, 13235684, 58245995, 20264570, 21024049,
951 ),
952 ])),
953 CachedPoint(FieldElement2625x4([
954 u32x8::new_const(
955 60835961, 48209103, 31049052, 4688268, 12426713, 59829045, 22302488, 29008521,
956 ),
957 u32x8::new_const(
958 50401667, 29716596, 23531224, 7581281, 49071895, 6952617, 14934683, 8218256,
959 ),
960 u32x8::new_const(
961 1601446, 36631413, 31774811, 29625330, 56786114, 8331539, 23129509, 19783344,
962 ),
963 u32x8::new_const(
964 59514327, 64513110, 1772300, 5701338, 5737511, 16147555, 9461515, 5703271,
965 ),
966 u32x8::new_const(
967 33072974, 54300426, 11940114, 1308663, 15627555, 4931627, 28443714, 20924342,
968 ),
969 ])),
970 CachedPoint(FieldElement2625x4([
971 u32x8::new_const(
972 18135013, 20358426, 4922557, 10015355, 65729669, 34786528, 26248549, 29194359,
973 ),
974 u32x8::new_const(
975 797666, 34997544, 24316856, 25107230, 24612576, 4761401, 15307321, 32404252,
976 ),
977 u32x8::new_const(
978 16501152, 60565831, 9487105, 9316022, 24986054, 31917592, 3962024, 2501883,
979 ),
980 u32x8::new_const(
981 63356796, 50432342, 18044926, 30566881, 42032028, 31415202, 13524600, 16119907,
982 ),
983 u32x8::new_const(
984 3927286, 57022374, 9265437, 21620772, 19481940, 3806938, 24836192, 14572399,
985 ),
986 ])),
987 CachedPoint(FieldElement2625x4([
988 u32x8::new_const(
989 10785787, 46564798, 368445, 33181384, 5319843, 52687136, 30347110, 29837357,
990 ),
991 u32x8::new_const(
992 56436732, 47859251, 24141084, 22250712, 59046084, 4963427, 33463413, 17168859,
993 ),
994 u32x8::new_const(
995 15512044, 6366740, 4737504, 27644548, 30307977, 25037929, 14593903, 12836490,
996 ),
997 u32x8::new_const(
998 63878897, 34013023, 5860752, 7244096, 3689461, 57012135, 18389096, 11589351,
999 ),
1000 u32x8::new_const(
1001 4682110, 36302830, 653422, 22316819, 14081831, 5657024, 11088376, 24110612,
1002 ),
1003 ])),
1004 CachedPoint(FieldElement2625x4([
1005 u32x8::new_const(
1006 39907267, 45940262, 24887471, 18342609, 878445, 40456159, 12019082, 345107,
1007 ),
1008 u32x8::new_const(
1009 12794982, 28893944, 9447505, 11387200, 16961963, 13916996, 10893728, 25898006,
1010 ),
1011 u32x8::new_const(
1012 44934162, 53465865, 3583620, 1102334, 53917811, 63478576, 2426066, 10389549,
1013 ),
1014 u32x8::new_const(
1015 45096036, 37595344, 19367718, 20257175, 10280866, 41653449, 27665642, 375926,
1016 ),
1017 u32x8::new_const(
1018 45847901, 24064074, 32494820, 32204556, 10720704, 51079060, 1297436, 29853825,
1019 ),
1020 ])),
1021 CachedPoint(FieldElement2625x4([
1022 u32x8::new_const(
1023 66303987, 36060363, 16494578, 24962147, 11971403, 49538586, 25060560, 1964341,
1024 ),
1025 u32x8::new_const(
1026 25988481, 27641502, 24909517, 27237087, 66646363, 52777626, 16360849, 10459972,
1027 ),
1028 u32x8::new_const(
1029 43930529, 34374176, 31225968, 8807030, 10394758, 35904854, 25325589, 19335583,
1030 ),
1031 u32x8::new_const(
1032 25094697, 34380951, 20051185, 32287161, 11739332, 53887441, 30517319, 26601892,
1033 ),
1034 u32x8::new_const(
1035 8868546, 35635502, 32513071, 28248087, 51946989, 14222744, 19198839, 23261841,
1036 ),
1037 ])),
1038 CachedPoint(FieldElement2625x4([
1039 u32x8::new_const(
1040 51218008, 5070126, 11046681, 5320810, 61212079, 34104447, 23895089, 6460727,
1041 ),
1042 u32x8::new_const(
1043 39843528, 46278671, 10426120, 25624792, 66658766, 37140083, 28933107, 12969597,
1044 ),
1045 u32x8::new_const(
1046 59635793, 40220191, 5751421, 173680, 58321825, 740337, 1412847, 7682623,
1047 ),
1048 u32x8::new_const(
1049 975962, 56440763, 20812276, 22631115, 49095824, 19883130, 2419746, 31043648,
1050 ),
1051 u32x8::new_const(
1052 66208703, 39669328, 22525915, 3748897, 65994776, 34533552, 8126286, 18326047,
1053 ),
1054 ])),
1055 CachedPoint(FieldElement2625x4([
1056 u32x8::new_const(
1057 64176557, 3912400, 19351673, 30068471, 31190055, 24221683, 33142424, 28698542,
1058 ),
1059 u32x8::new_const(
1060 34784792, 4109933, 3867193, 19557314, 2112512, 32715890, 24550117, 16595976,
1061 ),
1062 u32x8::new_const(
1063 35542761, 48024875, 10925431, 31526577, 66577735, 23189821, 13375709, 1735095,
1064 ),
1065 u32x8::new_const(
1066 59699254, 43854093, 29783239, 24777271, 19600372, 39924461, 2896720, 1472185,
1067 ),
1068 u32x8::new_const(
1069 56389656, 35980854, 33172342, 1370336, 23707480, 57654949, 7850973, 12655016,
1070 ),
1071 ])),
1072 CachedPoint(FieldElement2625x4([
1073 u32x8::new_const(
1074 38372660, 57101970, 7044964, 12732710, 57535705, 6043201, 30858914, 10946592,
1075 ),
1076 u32x8::new_const(
1077 21023468, 6946992, 26403324, 23901823, 35695559, 23440687, 4763891, 6514074,
1078 ),
1079 u32x8::new_const(
1080 28662273, 30933699, 9352242, 26354829, 37402243, 3145176, 8770289, 525937,
1081 ),
1082 u32x8::new_const(
1083 54933102, 36695832, 3281859, 4755022, 23043294, 32794379, 15618886, 23602412,
1084 ),
1085 u32x8::new_const(
1086 9931565, 29897140, 2480737, 24193701, 7833615, 2284939, 893926, 13421882,
1087 ),
1088 ])),
1089 CachedPoint(FieldElement2625x4([
1090 u32x8::new_const(
1091 22917795, 22088359, 28978099, 19794863, 60542318, 29878494, 31053731, 9080720,
1092 ),
1093 u32x8::new_const(
1094 23679072, 52547035, 28424916, 20647332, 4008761, 28267029, 12961289, 1589095,
1095 ),
1096 u32x8::new_const(
1097 55616194, 26678929, 14998265, 23274397, 54625466, 46244264, 28627706, 33030665,
1098 ),
1099 u32x8::new_const(
1100 11527330, 6449415, 26531607, 3472938, 41541592, 62607682, 19862690, 20564723,
1101 ),
1102 u32x8::new_const(
1103 32843805, 49066843, 28425824, 19521495, 48792073, 48242878, 27392443, 13175986,
1104 ),
1105 ])),
1106 CachedPoint(FieldElement2625x4([
1107 u32x8::new_const(
1108 16185025, 61537525, 2961305, 1492442, 25123147, 3095034, 31896958, 33089615,
1109 ),
1110 u32x8::new_const(
1111 64748157, 18336595, 16522231, 25426312, 65718949, 35485695, 30554083, 10205918,
1112 ),
1113 u32x8::new_const(
1114 39626934, 39271045, 16420458, 9826240, 56483981, 27128085, 3783403, 13360006,
1115 ),
1116 u32x8::new_const(
1117 30793778, 66771960, 17241420, 6564573, 61102581, 29974476, 32385512, 9011754,
1118 ),
1119 u32x8::new_const(
1120 28068166, 11862220, 14323567, 12380617, 52090465, 16029056, 24495309, 21409233,
1121 ),
1122 ])),
1123 CachedPoint(FieldElement2625x4([
1124 u32x8::new_const(
1125 59411973, 57437124, 11695483, 17586857, 16108987, 43449109, 31098002, 6248476,
1126 ),
1127 u32x8::new_const(
1128 42258047, 61595931, 29308533, 11742653, 43042345, 27373650, 30165249, 21929989,
1129 ),
1130 u32x8::new_const(
1131 49907221, 9620337, 21888081, 20981082, 56288861, 61562203, 33223566, 3582446,
1132 ),
1133 u32x8::new_const(
1134 57535017, 41003416, 22080416, 14463796, 65518565, 18127889, 24370863, 33332664,
1135 ),
1136 u32x8::new_const(
1137 66655380, 6430175, 471782, 11947673, 30596400, 18898659, 15930721, 4211851,
1138 ),
1139 ])),
1140 CachedPoint(FieldElement2625x4([
1141 u32x8::new_const(
1142 6757410, 65455566, 13584784, 11362173, 10797127, 24451471, 19541370, 29309435,
1143 ),
1144 u32x8::new_const(
1145 40360156, 17685025, 18326181, 3846903, 13693365, 63049479, 31900359, 23385063,
1146 ),
1147 u32x8::new_const(
1148 52455038, 57513503, 22163311, 27095042, 48610726, 66454160, 12085341, 26357004,
1149 ),
1150 u32x8::new_const(
1151 22097042, 14063840, 6705778, 14342902, 66139825, 20702105, 31279090, 7495745,
1152 ),
1153 u32x8::new_const(
1154 27360710, 49314837, 18774847, 7146436, 37066216, 42004961, 22409916, 10524446,
1155 ),
1156 ])),
1157 CachedPoint(FieldElement2625x4([
1158 u32x8::new_const(
1159 1497507, 33054449, 11839906, 2960428, 40538463, 18884538, 25018820, 4073970,
1160 ),
1161 u32x8::new_const(
1162 54484385, 43640735, 2808257, 20710708, 39840730, 27222424, 21783544, 11848522,
1163 ),
1164 u32x8::new_const(
1165 45765237, 48200555, 9299019, 9393151, 34818188, 56098995, 13575233, 21012731,
1166 ),
1167 u32x8::new_const(
1168 4265428, 49627650, 24960282, 9425650, 47883651, 2797524, 11853190, 22877329,
1169 ),
1170 u32x8::new_const(
1171 25008173, 64199503, 380047, 12107343, 12329448, 11914399, 764281, 29687002,
1172 ),
1173 ])),
1174 CachedPoint(FieldElement2625x4([
1175 u32x8::new_const(
1176 35889734, 23047226, 4022841, 7017445, 7274086, 53316179, 25100176, 15310676,
1177 ),
1178 u32x8::new_const(
1179 42409427, 30270106, 6823853, 31551384, 40645017, 66489807, 18021817, 32669351,
1180 ),
1181 u32x8::new_const(
1182 39827134, 43680850, 28297996, 20258133, 26058742, 52643238, 22238331, 21690533,
1183 ),
1184 u32x8::new_const(
1185 60808002, 17499995, 30042246, 29310584, 48219954, 29389518, 8680514, 17844709,
1186 ),
1187 u32x8::new_const(
1188 6452896, 50116553, 9532047, 26821214, 44524351, 50428429, 21904953, 12608048,
1189 ),
1190 ])),
1191]);