1#![allow(unused_parens)]
21#![allow(non_camel_case_types)]
22
23struct IndexConst<T: ?Sized>(T);
27
28impl<'a, T, const N: usize> IndexConst<&'a [T; N]> {
29 #[inline(always)]
30 #[allow(unused)]
31 const fn index(self, i: usize) -> &'a T {
32 &self.0[i]
33 }
34}
35impl<'a, 'b, T, const N: usize> IndexConst<&'a mut &'b mut [T; N]> {
36 #[inline(always)]
37 #[allow(unused)]
38 const fn index_mut(self, i: usize) -> &'a mut T {
39 &mut self.0[i]
40 }
41}
42
43pub type fiat_p256_u1 = u8;
45pub type fiat_p256_i1 = i8;
47pub type fiat_p256_u2 = u8;
49pub type fiat_p256_i2 = i8;
51
52#[derive(Clone, Copy)]
55pub struct fiat_p256_montgomery_domain_field_element(pub [u32; 8]);
56
57impl core::ops::Index<usize> for fiat_p256_montgomery_domain_field_element {
58 type Output = u32;
59 #[inline]
60 fn index(&self, index: usize) -> &Self::Output {
61 &self.0[index]
62 }
63}
64
65impl core::ops::IndexMut<usize> for fiat_p256_montgomery_domain_field_element {
66 #[inline]
67 fn index_mut(&mut self, index: usize) -> &mut Self::Output {
68 &mut self.0[index]
69 }
70}
71
72impl<'a> IndexConst<&'a fiat_p256_montgomery_domain_field_element> {
73 #[allow(unused)]
74 #[inline(always)]
75 const fn index(self, i: usize) -> &'a u32 {
76 &self.0.0[i]
77 }
78}
79
80impl<'a, 'b> IndexConst<&'a mut &'b mut fiat_p256_montgomery_domain_field_element> {
81 #[allow(unused)]
82 #[inline(always)]
83 const fn index_mut(self, i: usize) -> &'a mut u32 {
84 &mut self.0.0[i]
85 }
86}
87
88#[derive(Clone, Copy)]
91pub struct fiat_p256_non_montgomery_domain_field_element(pub [u32; 8]);
92
93impl core::ops::Index<usize> for fiat_p256_non_montgomery_domain_field_element {
94 type Output = u32;
95 #[inline]
96 fn index(&self, index: usize) -> &Self::Output {
97 &self.0[index]
98 }
99}
100
101impl core::ops::IndexMut<usize> for fiat_p256_non_montgomery_domain_field_element {
102 #[inline]
103 fn index_mut(&mut self, index: usize) -> &mut Self::Output {
104 &mut self.0[index]
105 }
106}
107
108impl<'a> IndexConst<&'a fiat_p256_non_montgomery_domain_field_element> {
109 #[allow(unused)]
110 #[inline(always)]
111 const fn index(self, i: usize) -> &'a u32 {
112 &self.0.0[i]
113 }
114}
115
116impl<'a, 'b> IndexConst<&'a mut &'b mut fiat_p256_non_montgomery_domain_field_element> {
117 #[allow(unused)]
118 #[inline(always)]
119 const fn index_mut(self, i: usize) -> &'a mut u32 {
120 &mut self.0.0[i]
121 }
122}
123
124
125#[inline]
139pub const fn fiat_p256_addcarryx_u32(out1: &mut u32, out2: &mut fiat_p256_u1, arg1: fiat_p256_u1, arg2: u32, arg3: u32) {
140 let x1: u64 = (((arg1 as u64) + (arg2 as u64)) + (arg3 as u64));
141 let x2: u32 = ((x1 & (0xffffffff as u64)) as u32);
142 let x3: fiat_p256_u1 = ((x1 >> 32) as fiat_p256_u1);
143 *out1 = x2;
144 *out2 = x3;
145}
146
147#[inline]
161pub const fn fiat_p256_subborrowx_u32(out1: &mut u32, out2: &mut fiat_p256_u1, arg1: fiat_p256_u1, arg2: u32, arg3: u32) {
162 let x1: i64 = (((arg2 as i64) - (arg1 as i64)) - (arg3 as i64));
163 let x2: fiat_p256_i1 = ((x1 >> 32) as fiat_p256_i1);
164 let x3: u32 = ((x1 & (0xffffffff as i64)) as u32);
165 *out1 = x3;
166 *out2 = (((0x0 as fiat_p256_i2) - (x2 as fiat_p256_i2)) as fiat_p256_u1);
167}
168
169#[inline]
182pub const fn fiat_p256_mulx_u32(out1: &mut u32, out2: &mut u32, arg1: u32, arg2: u32) {
183 let x1: u64 = ((arg1 as u64) * (arg2 as u64));
184 let x2: u32 = ((x1 & (0xffffffff as u64)) as u32);
185 let x3: u32 = ((x1 >> 32) as u32);
186 *out1 = x2;
187 *out2 = x3;
188}
189
190#[inline]
202pub const fn fiat_p256_cmovznz_u32(out1: &mut u32, arg1: fiat_p256_u1, arg2: u32, arg3: u32) {
203 let x1: fiat_p256_u1 = (!(!arg1));
204 let x2: u32 = ((((((0x0 as fiat_p256_i2) - (x1 as fiat_p256_i2)) as fiat_p256_i1) as i64) & (0xffffffff as i64)) as u32);
205 let x3: u32 = ((x2 & arg3) | ((!x2) & arg2));
206 *out1 = x3;
207}
208
209#[inline]
219pub const fn fiat_p256_mul(mut out1: &mut fiat_p256_montgomery_domain_field_element, arg1: &fiat_p256_montgomery_domain_field_element, arg2: &fiat_p256_montgomery_domain_field_element) {
220 let x1: u32 = (*IndexConst(arg1).index(1));
221 let x2: u32 = (*IndexConst(arg1).index(2));
222 let x3: u32 = (*IndexConst(arg1).index(3));
223 let x4: u32 = (*IndexConst(arg1).index(4));
224 let x5: u32 = (*IndexConst(arg1).index(5));
225 let x6: u32 = (*IndexConst(arg1).index(6));
226 let x7: u32 = (*IndexConst(arg1).index(7));
227 let x8: u32 = (*IndexConst(arg1).index(0));
228 let mut x9: u32 = 0;
229 let mut x10: u32 = 0;
230 fiat_p256_mulx_u32(&mut x9, &mut x10, x8, (*IndexConst(arg2).index(7)));
231 let mut x11: u32 = 0;
232 let mut x12: u32 = 0;
233 fiat_p256_mulx_u32(&mut x11, &mut x12, x8, (*IndexConst(arg2).index(6)));
234 let mut x13: u32 = 0;
235 let mut x14: u32 = 0;
236 fiat_p256_mulx_u32(&mut x13, &mut x14, x8, (*IndexConst(arg2).index(5)));
237 let mut x15: u32 = 0;
238 let mut x16: u32 = 0;
239 fiat_p256_mulx_u32(&mut x15, &mut x16, x8, (*IndexConst(arg2).index(4)));
240 let mut x17: u32 = 0;
241 let mut x18: u32 = 0;
242 fiat_p256_mulx_u32(&mut x17, &mut x18, x8, (*IndexConst(arg2).index(3)));
243 let mut x19: u32 = 0;
244 let mut x20: u32 = 0;
245 fiat_p256_mulx_u32(&mut x19, &mut x20, x8, (*IndexConst(arg2).index(2)));
246 let mut x21: u32 = 0;
247 let mut x22: u32 = 0;
248 fiat_p256_mulx_u32(&mut x21, &mut x22, x8, (*IndexConst(arg2).index(1)));
249 let mut x23: u32 = 0;
250 let mut x24: u32 = 0;
251 fiat_p256_mulx_u32(&mut x23, &mut x24, x8, (*IndexConst(arg2).index(0)));
252 let mut x25: u32 = 0;
253 let mut x26: fiat_p256_u1 = 0;
254 fiat_p256_addcarryx_u32(&mut x25, &mut x26, 0x0, x24, x21);
255 let mut x27: u32 = 0;
256 let mut x28: fiat_p256_u1 = 0;
257 fiat_p256_addcarryx_u32(&mut x27, &mut x28, x26, x22, x19);
258 let mut x29: u32 = 0;
259 let mut x30: fiat_p256_u1 = 0;
260 fiat_p256_addcarryx_u32(&mut x29, &mut x30, x28, x20, x17);
261 let mut x31: u32 = 0;
262 let mut x32: fiat_p256_u1 = 0;
263 fiat_p256_addcarryx_u32(&mut x31, &mut x32, x30, x18, x15);
264 let mut x33: u32 = 0;
265 let mut x34: fiat_p256_u1 = 0;
266 fiat_p256_addcarryx_u32(&mut x33, &mut x34, x32, x16, x13);
267 let mut x35: u32 = 0;
268 let mut x36: fiat_p256_u1 = 0;
269 fiat_p256_addcarryx_u32(&mut x35, &mut x36, x34, x14, x11);
270 let mut x37: u32 = 0;
271 let mut x38: fiat_p256_u1 = 0;
272 fiat_p256_addcarryx_u32(&mut x37, &mut x38, x36, x12, x9);
273 let x39: u32 = ((x38 as u32) + x10);
274 let mut x40: u32 = 0;
275 let mut x41: u32 = 0;
276 fiat_p256_mulx_u32(&mut x40, &mut x41, x23, 0xffffffff);
277 let mut x42: u32 = 0;
278 let mut x43: u32 = 0;
279 fiat_p256_mulx_u32(&mut x42, &mut x43, x23, 0xffffffff);
280 let mut x44: u32 = 0;
281 let mut x45: u32 = 0;
282 fiat_p256_mulx_u32(&mut x44, &mut x45, x23, 0xffffffff);
283 let mut x46: u32 = 0;
284 let mut x47: u32 = 0;
285 fiat_p256_mulx_u32(&mut x46, &mut x47, x23, 0xffffffff);
286 let mut x48: u32 = 0;
287 let mut x49: fiat_p256_u1 = 0;
288 fiat_p256_addcarryx_u32(&mut x48, &mut x49, 0x0, x47, x44);
289 let mut x50: u32 = 0;
290 let mut x51: fiat_p256_u1 = 0;
291 fiat_p256_addcarryx_u32(&mut x50, &mut x51, x49, x45, x42);
292 let x52: u32 = ((x51 as u32) + x43);
293 let mut x53: u32 = 0;
294 let mut x54: fiat_p256_u1 = 0;
295 fiat_p256_addcarryx_u32(&mut x53, &mut x54, 0x0, x23, x46);
296 let mut x55: u32 = 0;
297 let mut x56: fiat_p256_u1 = 0;
298 fiat_p256_addcarryx_u32(&mut x55, &mut x56, x54, x25, x48);
299 let mut x57: u32 = 0;
300 let mut x58: fiat_p256_u1 = 0;
301 fiat_p256_addcarryx_u32(&mut x57, &mut x58, x56, x27, x50);
302 let mut x59: u32 = 0;
303 let mut x60: fiat_p256_u1 = 0;
304 fiat_p256_addcarryx_u32(&mut x59, &mut x60, x58, x29, x52);
305 let mut x61: u32 = 0;
306 let mut x62: fiat_p256_u1 = 0;
307 fiat_p256_addcarryx_u32(&mut x61, &mut x62, x60, x31, (0x0 as u32));
308 let mut x63: u32 = 0;
309 let mut x64: fiat_p256_u1 = 0;
310 fiat_p256_addcarryx_u32(&mut x63, &mut x64, x62, x33, (0x0 as u32));
311 let mut x65: u32 = 0;
312 let mut x66: fiat_p256_u1 = 0;
313 fiat_p256_addcarryx_u32(&mut x65, &mut x66, x64, x35, x23);
314 let mut x67: u32 = 0;
315 let mut x68: fiat_p256_u1 = 0;
316 fiat_p256_addcarryx_u32(&mut x67, &mut x68, x66, x37, x40);
317 let mut x69: u32 = 0;
318 let mut x70: fiat_p256_u1 = 0;
319 fiat_p256_addcarryx_u32(&mut x69, &mut x70, x68, x39, x41);
320 let mut x71: u32 = 0;
321 let mut x72: u32 = 0;
322 fiat_p256_mulx_u32(&mut x71, &mut x72, x1, (*IndexConst(arg2).index(7)));
323 let mut x73: u32 = 0;
324 let mut x74: u32 = 0;
325 fiat_p256_mulx_u32(&mut x73, &mut x74, x1, (*IndexConst(arg2).index(6)));
326 let mut x75: u32 = 0;
327 let mut x76: u32 = 0;
328 fiat_p256_mulx_u32(&mut x75, &mut x76, x1, (*IndexConst(arg2).index(5)));
329 let mut x77: u32 = 0;
330 let mut x78: u32 = 0;
331 fiat_p256_mulx_u32(&mut x77, &mut x78, x1, (*IndexConst(arg2).index(4)));
332 let mut x79: u32 = 0;
333 let mut x80: u32 = 0;
334 fiat_p256_mulx_u32(&mut x79, &mut x80, x1, (*IndexConst(arg2).index(3)));
335 let mut x81: u32 = 0;
336 let mut x82: u32 = 0;
337 fiat_p256_mulx_u32(&mut x81, &mut x82, x1, (*IndexConst(arg2).index(2)));
338 let mut x83: u32 = 0;
339 let mut x84: u32 = 0;
340 fiat_p256_mulx_u32(&mut x83, &mut x84, x1, (*IndexConst(arg2).index(1)));
341 let mut x85: u32 = 0;
342 let mut x86: u32 = 0;
343 fiat_p256_mulx_u32(&mut x85, &mut x86, x1, (*IndexConst(arg2).index(0)));
344 let mut x87: u32 = 0;
345 let mut x88: fiat_p256_u1 = 0;
346 fiat_p256_addcarryx_u32(&mut x87, &mut x88, 0x0, x86, x83);
347 let mut x89: u32 = 0;
348 let mut x90: fiat_p256_u1 = 0;
349 fiat_p256_addcarryx_u32(&mut x89, &mut x90, x88, x84, x81);
350 let mut x91: u32 = 0;
351 let mut x92: fiat_p256_u1 = 0;
352 fiat_p256_addcarryx_u32(&mut x91, &mut x92, x90, x82, x79);
353 let mut x93: u32 = 0;
354 let mut x94: fiat_p256_u1 = 0;
355 fiat_p256_addcarryx_u32(&mut x93, &mut x94, x92, x80, x77);
356 let mut x95: u32 = 0;
357 let mut x96: fiat_p256_u1 = 0;
358 fiat_p256_addcarryx_u32(&mut x95, &mut x96, x94, x78, x75);
359 let mut x97: u32 = 0;
360 let mut x98: fiat_p256_u1 = 0;
361 fiat_p256_addcarryx_u32(&mut x97, &mut x98, x96, x76, x73);
362 let mut x99: u32 = 0;
363 let mut x100: fiat_p256_u1 = 0;
364 fiat_p256_addcarryx_u32(&mut x99, &mut x100, x98, x74, x71);
365 let x101: u32 = ((x100 as u32) + x72);
366 let mut x102: u32 = 0;
367 let mut x103: fiat_p256_u1 = 0;
368 fiat_p256_addcarryx_u32(&mut x102, &mut x103, 0x0, x55, x85);
369 let mut x104: u32 = 0;
370 let mut x105: fiat_p256_u1 = 0;
371 fiat_p256_addcarryx_u32(&mut x104, &mut x105, x103, x57, x87);
372 let mut x106: u32 = 0;
373 let mut x107: fiat_p256_u1 = 0;
374 fiat_p256_addcarryx_u32(&mut x106, &mut x107, x105, x59, x89);
375 let mut x108: u32 = 0;
376 let mut x109: fiat_p256_u1 = 0;
377 fiat_p256_addcarryx_u32(&mut x108, &mut x109, x107, x61, x91);
378 let mut x110: u32 = 0;
379 let mut x111: fiat_p256_u1 = 0;
380 fiat_p256_addcarryx_u32(&mut x110, &mut x111, x109, x63, x93);
381 let mut x112: u32 = 0;
382 let mut x113: fiat_p256_u1 = 0;
383 fiat_p256_addcarryx_u32(&mut x112, &mut x113, x111, x65, x95);
384 let mut x114: u32 = 0;
385 let mut x115: fiat_p256_u1 = 0;
386 fiat_p256_addcarryx_u32(&mut x114, &mut x115, x113, x67, x97);
387 let mut x116: u32 = 0;
388 let mut x117: fiat_p256_u1 = 0;
389 fiat_p256_addcarryx_u32(&mut x116, &mut x117, x115, x69, x99);
390 let mut x118: u32 = 0;
391 let mut x119: fiat_p256_u1 = 0;
392 fiat_p256_addcarryx_u32(&mut x118, &mut x119, x117, (x70 as u32), x101);
393 let mut x120: u32 = 0;
394 let mut x121: u32 = 0;
395 fiat_p256_mulx_u32(&mut x120, &mut x121, x102, 0xffffffff);
396 let mut x122: u32 = 0;
397 let mut x123: u32 = 0;
398 fiat_p256_mulx_u32(&mut x122, &mut x123, x102, 0xffffffff);
399 let mut x124: u32 = 0;
400 let mut x125: u32 = 0;
401 fiat_p256_mulx_u32(&mut x124, &mut x125, x102, 0xffffffff);
402 let mut x126: u32 = 0;
403 let mut x127: u32 = 0;
404 fiat_p256_mulx_u32(&mut x126, &mut x127, x102, 0xffffffff);
405 let mut x128: u32 = 0;
406 let mut x129: fiat_p256_u1 = 0;
407 fiat_p256_addcarryx_u32(&mut x128, &mut x129, 0x0, x127, x124);
408 let mut x130: u32 = 0;
409 let mut x131: fiat_p256_u1 = 0;
410 fiat_p256_addcarryx_u32(&mut x130, &mut x131, x129, x125, x122);
411 let x132: u32 = ((x131 as u32) + x123);
412 let mut x133: u32 = 0;
413 let mut x134: fiat_p256_u1 = 0;
414 fiat_p256_addcarryx_u32(&mut x133, &mut x134, 0x0, x102, x126);
415 let mut x135: u32 = 0;
416 let mut x136: fiat_p256_u1 = 0;
417 fiat_p256_addcarryx_u32(&mut x135, &mut x136, x134, x104, x128);
418 let mut x137: u32 = 0;
419 let mut x138: fiat_p256_u1 = 0;
420 fiat_p256_addcarryx_u32(&mut x137, &mut x138, x136, x106, x130);
421 let mut x139: u32 = 0;
422 let mut x140: fiat_p256_u1 = 0;
423 fiat_p256_addcarryx_u32(&mut x139, &mut x140, x138, x108, x132);
424 let mut x141: u32 = 0;
425 let mut x142: fiat_p256_u1 = 0;
426 fiat_p256_addcarryx_u32(&mut x141, &mut x142, x140, x110, (0x0 as u32));
427 let mut x143: u32 = 0;
428 let mut x144: fiat_p256_u1 = 0;
429 fiat_p256_addcarryx_u32(&mut x143, &mut x144, x142, x112, (0x0 as u32));
430 let mut x145: u32 = 0;
431 let mut x146: fiat_p256_u1 = 0;
432 fiat_p256_addcarryx_u32(&mut x145, &mut x146, x144, x114, x102);
433 let mut x147: u32 = 0;
434 let mut x148: fiat_p256_u1 = 0;
435 fiat_p256_addcarryx_u32(&mut x147, &mut x148, x146, x116, x120);
436 let mut x149: u32 = 0;
437 let mut x150: fiat_p256_u1 = 0;
438 fiat_p256_addcarryx_u32(&mut x149, &mut x150, x148, x118, x121);
439 let x151: u32 = ((x150 as u32) + (x119 as u32));
440 let mut x152: u32 = 0;
441 let mut x153: u32 = 0;
442 fiat_p256_mulx_u32(&mut x152, &mut x153, x2, (*IndexConst(arg2).index(7)));
443 let mut x154: u32 = 0;
444 let mut x155: u32 = 0;
445 fiat_p256_mulx_u32(&mut x154, &mut x155, x2, (*IndexConst(arg2).index(6)));
446 let mut x156: u32 = 0;
447 let mut x157: u32 = 0;
448 fiat_p256_mulx_u32(&mut x156, &mut x157, x2, (*IndexConst(arg2).index(5)));
449 let mut x158: u32 = 0;
450 let mut x159: u32 = 0;
451 fiat_p256_mulx_u32(&mut x158, &mut x159, x2, (*IndexConst(arg2).index(4)));
452 let mut x160: u32 = 0;
453 let mut x161: u32 = 0;
454 fiat_p256_mulx_u32(&mut x160, &mut x161, x2, (*IndexConst(arg2).index(3)));
455 let mut x162: u32 = 0;
456 let mut x163: u32 = 0;
457 fiat_p256_mulx_u32(&mut x162, &mut x163, x2, (*IndexConst(arg2).index(2)));
458 let mut x164: u32 = 0;
459 let mut x165: u32 = 0;
460 fiat_p256_mulx_u32(&mut x164, &mut x165, x2, (*IndexConst(arg2).index(1)));
461 let mut x166: u32 = 0;
462 let mut x167: u32 = 0;
463 fiat_p256_mulx_u32(&mut x166, &mut x167, x2, (*IndexConst(arg2).index(0)));
464 let mut x168: u32 = 0;
465 let mut x169: fiat_p256_u1 = 0;
466 fiat_p256_addcarryx_u32(&mut x168, &mut x169, 0x0, x167, x164);
467 let mut x170: u32 = 0;
468 let mut x171: fiat_p256_u1 = 0;
469 fiat_p256_addcarryx_u32(&mut x170, &mut x171, x169, x165, x162);
470 let mut x172: u32 = 0;
471 let mut x173: fiat_p256_u1 = 0;
472 fiat_p256_addcarryx_u32(&mut x172, &mut x173, x171, x163, x160);
473 let mut x174: u32 = 0;
474 let mut x175: fiat_p256_u1 = 0;
475 fiat_p256_addcarryx_u32(&mut x174, &mut x175, x173, x161, x158);
476 let mut x176: u32 = 0;
477 let mut x177: fiat_p256_u1 = 0;
478 fiat_p256_addcarryx_u32(&mut x176, &mut x177, x175, x159, x156);
479 let mut x178: u32 = 0;
480 let mut x179: fiat_p256_u1 = 0;
481 fiat_p256_addcarryx_u32(&mut x178, &mut x179, x177, x157, x154);
482 let mut x180: u32 = 0;
483 let mut x181: fiat_p256_u1 = 0;
484 fiat_p256_addcarryx_u32(&mut x180, &mut x181, x179, x155, x152);
485 let x182: u32 = ((x181 as u32) + x153);
486 let mut x183: u32 = 0;
487 let mut x184: fiat_p256_u1 = 0;
488 fiat_p256_addcarryx_u32(&mut x183, &mut x184, 0x0, x135, x166);
489 let mut x185: u32 = 0;
490 let mut x186: fiat_p256_u1 = 0;
491 fiat_p256_addcarryx_u32(&mut x185, &mut x186, x184, x137, x168);
492 let mut x187: u32 = 0;
493 let mut x188: fiat_p256_u1 = 0;
494 fiat_p256_addcarryx_u32(&mut x187, &mut x188, x186, x139, x170);
495 let mut x189: u32 = 0;
496 let mut x190: fiat_p256_u1 = 0;
497 fiat_p256_addcarryx_u32(&mut x189, &mut x190, x188, x141, x172);
498 let mut x191: u32 = 0;
499 let mut x192: fiat_p256_u1 = 0;
500 fiat_p256_addcarryx_u32(&mut x191, &mut x192, x190, x143, x174);
501 let mut x193: u32 = 0;
502 let mut x194: fiat_p256_u1 = 0;
503 fiat_p256_addcarryx_u32(&mut x193, &mut x194, x192, x145, x176);
504 let mut x195: u32 = 0;
505 let mut x196: fiat_p256_u1 = 0;
506 fiat_p256_addcarryx_u32(&mut x195, &mut x196, x194, x147, x178);
507 let mut x197: u32 = 0;
508 let mut x198: fiat_p256_u1 = 0;
509 fiat_p256_addcarryx_u32(&mut x197, &mut x198, x196, x149, x180);
510 let mut x199: u32 = 0;
511 let mut x200: fiat_p256_u1 = 0;
512 fiat_p256_addcarryx_u32(&mut x199, &mut x200, x198, x151, x182);
513 let mut x201: u32 = 0;
514 let mut x202: u32 = 0;
515 fiat_p256_mulx_u32(&mut x201, &mut x202, x183, 0xffffffff);
516 let mut x203: u32 = 0;
517 let mut x204: u32 = 0;
518 fiat_p256_mulx_u32(&mut x203, &mut x204, x183, 0xffffffff);
519 let mut x205: u32 = 0;
520 let mut x206: u32 = 0;
521 fiat_p256_mulx_u32(&mut x205, &mut x206, x183, 0xffffffff);
522 let mut x207: u32 = 0;
523 let mut x208: u32 = 0;
524 fiat_p256_mulx_u32(&mut x207, &mut x208, x183, 0xffffffff);
525 let mut x209: u32 = 0;
526 let mut x210: fiat_p256_u1 = 0;
527 fiat_p256_addcarryx_u32(&mut x209, &mut x210, 0x0, x208, x205);
528 let mut x211: u32 = 0;
529 let mut x212: fiat_p256_u1 = 0;
530 fiat_p256_addcarryx_u32(&mut x211, &mut x212, x210, x206, x203);
531 let x213: u32 = ((x212 as u32) + x204);
532 let mut x214: u32 = 0;
533 let mut x215: fiat_p256_u1 = 0;
534 fiat_p256_addcarryx_u32(&mut x214, &mut x215, 0x0, x183, x207);
535 let mut x216: u32 = 0;
536 let mut x217: fiat_p256_u1 = 0;
537 fiat_p256_addcarryx_u32(&mut x216, &mut x217, x215, x185, x209);
538 let mut x218: u32 = 0;
539 let mut x219: fiat_p256_u1 = 0;
540 fiat_p256_addcarryx_u32(&mut x218, &mut x219, x217, x187, x211);
541 let mut x220: u32 = 0;
542 let mut x221: fiat_p256_u1 = 0;
543 fiat_p256_addcarryx_u32(&mut x220, &mut x221, x219, x189, x213);
544 let mut x222: u32 = 0;
545 let mut x223: fiat_p256_u1 = 0;
546 fiat_p256_addcarryx_u32(&mut x222, &mut x223, x221, x191, (0x0 as u32));
547 let mut x224: u32 = 0;
548 let mut x225: fiat_p256_u1 = 0;
549 fiat_p256_addcarryx_u32(&mut x224, &mut x225, x223, x193, (0x0 as u32));
550 let mut x226: u32 = 0;
551 let mut x227: fiat_p256_u1 = 0;
552 fiat_p256_addcarryx_u32(&mut x226, &mut x227, x225, x195, x183);
553 let mut x228: u32 = 0;
554 let mut x229: fiat_p256_u1 = 0;
555 fiat_p256_addcarryx_u32(&mut x228, &mut x229, x227, x197, x201);
556 let mut x230: u32 = 0;
557 let mut x231: fiat_p256_u1 = 0;
558 fiat_p256_addcarryx_u32(&mut x230, &mut x231, x229, x199, x202);
559 let x232: u32 = ((x231 as u32) + (x200 as u32));
560 let mut x233: u32 = 0;
561 let mut x234: u32 = 0;
562 fiat_p256_mulx_u32(&mut x233, &mut x234, x3, (*IndexConst(arg2).index(7)));
563 let mut x235: u32 = 0;
564 let mut x236: u32 = 0;
565 fiat_p256_mulx_u32(&mut x235, &mut x236, x3, (*IndexConst(arg2).index(6)));
566 let mut x237: u32 = 0;
567 let mut x238: u32 = 0;
568 fiat_p256_mulx_u32(&mut x237, &mut x238, x3, (*IndexConst(arg2).index(5)));
569 let mut x239: u32 = 0;
570 let mut x240: u32 = 0;
571 fiat_p256_mulx_u32(&mut x239, &mut x240, x3, (*IndexConst(arg2).index(4)));
572 let mut x241: u32 = 0;
573 let mut x242: u32 = 0;
574 fiat_p256_mulx_u32(&mut x241, &mut x242, x3, (*IndexConst(arg2).index(3)));
575 let mut x243: u32 = 0;
576 let mut x244: u32 = 0;
577 fiat_p256_mulx_u32(&mut x243, &mut x244, x3, (*IndexConst(arg2).index(2)));
578 let mut x245: u32 = 0;
579 let mut x246: u32 = 0;
580 fiat_p256_mulx_u32(&mut x245, &mut x246, x3, (*IndexConst(arg2).index(1)));
581 let mut x247: u32 = 0;
582 let mut x248: u32 = 0;
583 fiat_p256_mulx_u32(&mut x247, &mut x248, x3, (*IndexConst(arg2).index(0)));
584 let mut x249: u32 = 0;
585 let mut x250: fiat_p256_u1 = 0;
586 fiat_p256_addcarryx_u32(&mut x249, &mut x250, 0x0, x248, x245);
587 let mut x251: u32 = 0;
588 let mut x252: fiat_p256_u1 = 0;
589 fiat_p256_addcarryx_u32(&mut x251, &mut x252, x250, x246, x243);
590 let mut x253: u32 = 0;
591 let mut x254: fiat_p256_u1 = 0;
592 fiat_p256_addcarryx_u32(&mut x253, &mut x254, x252, x244, x241);
593 let mut x255: u32 = 0;
594 let mut x256: fiat_p256_u1 = 0;
595 fiat_p256_addcarryx_u32(&mut x255, &mut x256, x254, x242, x239);
596 let mut x257: u32 = 0;
597 let mut x258: fiat_p256_u1 = 0;
598 fiat_p256_addcarryx_u32(&mut x257, &mut x258, x256, x240, x237);
599 let mut x259: u32 = 0;
600 let mut x260: fiat_p256_u1 = 0;
601 fiat_p256_addcarryx_u32(&mut x259, &mut x260, x258, x238, x235);
602 let mut x261: u32 = 0;
603 let mut x262: fiat_p256_u1 = 0;
604 fiat_p256_addcarryx_u32(&mut x261, &mut x262, x260, x236, x233);
605 let x263: u32 = ((x262 as u32) + x234);
606 let mut x264: u32 = 0;
607 let mut x265: fiat_p256_u1 = 0;
608 fiat_p256_addcarryx_u32(&mut x264, &mut x265, 0x0, x216, x247);
609 let mut x266: u32 = 0;
610 let mut x267: fiat_p256_u1 = 0;
611 fiat_p256_addcarryx_u32(&mut x266, &mut x267, x265, x218, x249);
612 let mut x268: u32 = 0;
613 let mut x269: fiat_p256_u1 = 0;
614 fiat_p256_addcarryx_u32(&mut x268, &mut x269, x267, x220, x251);
615 let mut x270: u32 = 0;
616 let mut x271: fiat_p256_u1 = 0;
617 fiat_p256_addcarryx_u32(&mut x270, &mut x271, x269, x222, x253);
618 let mut x272: u32 = 0;
619 let mut x273: fiat_p256_u1 = 0;
620 fiat_p256_addcarryx_u32(&mut x272, &mut x273, x271, x224, x255);
621 let mut x274: u32 = 0;
622 let mut x275: fiat_p256_u1 = 0;
623 fiat_p256_addcarryx_u32(&mut x274, &mut x275, x273, x226, x257);
624 let mut x276: u32 = 0;
625 let mut x277: fiat_p256_u1 = 0;
626 fiat_p256_addcarryx_u32(&mut x276, &mut x277, x275, x228, x259);
627 let mut x278: u32 = 0;
628 let mut x279: fiat_p256_u1 = 0;
629 fiat_p256_addcarryx_u32(&mut x278, &mut x279, x277, x230, x261);
630 let mut x280: u32 = 0;
631 let mut x281: fiat_p256_u1 = 0;
632 fiat_p256_addcarryx_u32(&mut x280, &mut x281, x279, x232, x263);
633 let mut x282: u32 = 0;
634 let mut x283: u32 = 0;
635 fiat_p256_mulx_u32(&mut x282, &mut x283, x264, 0xffffffff);
636 let mut x284: u32 = 0;
637 let mut x285: u32 = 0;
638 fiat_p256_mulx_u32(&mut x284, &mut x285, x264, 0xffffffff);
639 let mut x286: u32 = 0;
640 let mut x287: u32 = 0;
641 fiat_p256_mulx_u32(&mut x286, &mut x287, x264, 0xffffffff);
642 let mut x288: u32 = 0;
643 let mut x289: u32 = 0;
644 fiat_p256_mulx_u32(&mut x288, &mut x289, x264, 0xffffffff);
645 let mut x290: u32 = 0;
646 let mut x291: fiat_p256_u1 = 0;
647 fiat_p256_addcarryx_u32(&mut x290, &mut x291, 0x0, x289, x286);
648 let mut x292: u32 = 0;
649 let mut x293: fiat_p256_u1 = 0;
650 fiat_p256_addcarryx_u32(&mut x292, &mut x293, x291, x287, x284);
651 let x294: u32 = ((x293 as u32) + x285);
652 let mut x295: u32 = 0;
653 let mut x296: fiat_p256_u1 = 0;
654 fiat_p256_addcarryx_u32(&mut x295, &mut x296, 0x0, x264, x288);
655 let mut x297: u32 = 0;
656 let mut x298: fiat_p256_u1 = 0;
657 fiat_p256_addcarryx_u32(&mut x297, &mut x298, x296, x266, x290);
658 let mut x299: u32 = 0;
659 let mut x300: fiat_p256_u1 = 0;
660 fiat_p256_addcarryx_u32(&mut x299, &mut x300, x298, x268, x292);
661 let mut x301: u32 = 0;
662 let mut x302: fiat_p256_u1 = 0;
663 fiat_p256_addcarryx_u32(&mut x301, &mut x302, x300, x270, x294);
664 let mut x303: u32 = 0;
665 let mut x304: fiat_p256_u1 = 0;
666 fiat_p256_addcarryx_u32(&mut x303, &mut x304, x302, x272, (0x0 as u32));
667 let mut x305: u32 = 0;
668 let mut x306: fiat_p256_u1 = 0;
669 fiat_p256_addcarryx_u32(&mut x305, &mut x306, x304, x274, (0x0 as u32));
670 let mut x307: u32 = 0;
671 let mut x308: fiat_p256_u1 = 0;
672 fiat_p256_addcarryx_u32(&mut x307, &mut x308, x306, x276, x264);
673 let mut x309: u32 = 0;
674 let mut x310: fiat_p256_u1 = 0;
675 fiat_p256_addcarryx_u32(&mut x309, &mut x310, x308, x278, x282);
676 let mut x311: u32 = 0;
677 let mut x312: fiat_p256_u1 = 0;
678 fiat_p256_addcarryx_u32(&mut x311, &mut x312, x310, x280, x283);
679 let x313: u32 = ((x312 as u32) + (x281 as u32));
680 let mut x314: u32 = 0;
681 let mut x315: u32 = 0;
682 fiat_p256_mulx_u32(&mut x314, &mut x315, x4, (*IndexConst(arg2).index(7)));
683 let mut x316: u32 = 0;
684 let mut x317: u32 = 0;
685 fiat_p256_mulx_u32(&mut x316, &mut x317, x4, (*IndexConst(arg2).index(6)));
686 let mut x318: u32 = 0;
687 let mut x319: u32 = 0;
688 fiat_p256_mulx_u32(&mut x318, &mut x319, x4, (*IndexConst(arg2).index(5)));
689 let mut x320: u32 = 0;
690 let mut x321: u32 = 0;
691 fiat_p256_mulx_u32(&mut x320, &mut x321, x4, (*IndexConst(arg2).index(4)));
692 let mut x322: u32 = 0;
693 let mut x323: u32 = 0;
694 fiat_p256_mulx_u32(&mut x322, &mut x323, x4, (*IndexConst(arg2).index(3)));
695 let mut x324: u32 = 0;
696 let mut x325: u32 = 0;
697 fiat_p256_mulx_u32(&mut x324, &mut x325, x4, (*IndexConst(arg2).index(2)));
698 let mut x326: u32 = 0;
699 let mut x327: u32 = 0;
700 fiat_p256_mulx_u32(&mut x326, &mut x327, x4, (*IndexConst(arg2).index(1)));
701 let mut x328: u32 = 0;
702 let mut x329: u32 = 0;
703 fiat_p256_mulx_u32(&mut x328, &mut x329, x4, (*IndexConst(arg2).index(0)));
704 let mut x330: u32 = 0;
705 let mut x331: fiat_p256_u1 = 0;
706 fiat_p256_addcarryx_u32(&mut x330, &mut x331, 0x0, x329, x326);
707 let mut x332: u32 = 0;
708 let mut x333: fiat_p256_u1 = 0;
709 fiat_p256_addcarryx_u32(&mut x332, &mut x333, x331, x327, x324);
710 let mut x334: u32 = 0;
711 let mut x335: fiat_p256_u1 = 0;
712 fiat_p256_addcarryx_u32(&mut x334, &mut x335, x333, x325, x322);
713 let mut x336: u32 = 0;
714 let mut x337: fiat_p256_u1 = 0;
715 fiat_p256_addcarryx_u32(&mut x336, &mut x337, x335, x323, x320);
716 let mut x338: u32 = 0;
717 let mut x339: fiat_p256_u1 = 0;
718 fiat_p256_addcarryx_u32(&mut x338, &mut x339, x337, x321, x318);
719 let mut x340: u32 = 0;
720 let mut x341: fiat_p256_u1 = 0;
721 fiat_p256_addcarryx_u32(&mut x340, &mut x341, x339, x319, x316);
722 let mut x342: u32 = 0;
723 let mut x343: fiat_p256_u1 = 0;
724 fiat_p256_addcarryx_u32(&mut x342, &mut x343, x341, x317, x314);
725 let x344: u32 = ((x343 as u32) + x315);
726 let mut x345: u32 = 0;
727 let mut x346: fiat_p256_u1 = 0;
728 fiat_p256_addcarryx_u32(&mut x345, &mut x346, 0x0, x297, x328);
729 let mut x347: u32 = 0;
730 let mut x348: fiat_p256_u1 = 0;
731 fiat_p256_addcarryx_u32(&mut x347, &mut x348, x346, x299, x330);
732 let mut x349: u32 = 0;
733 let mut x350: fiat_p256_u1 = 0;
734 fiat_p256_addcarryx_u32(&mut x349, &mut x350, x348, x301, x332);
735 let mut x351: u32 = 0;
736 let mut x352: fiat_p256_u1 = 0;
737 fiat_p256_addcarryx_u32(&mut x351, &mut x352, x350, x303, x334);
738 let mut x353: u32 = 0;
739 let mut x354: fiat_p256_u1 = 0;
740 fiat_p256_addcarryx_u32(&mut x353, &mut x354, x352, x305, x336);
741 let mut x355: u32 = 0;
742 let mut x356: fiat_p256_u1 = 0;
743 fiat_p256_addcarryx_u32(&mut x355, &mut x356, x354, x307, x338);
744 let mut x357: u32 = 0;
745 let mut x358: fiat_p256_u1 = 0;
746 fiat_p256_addcarryx_u32(&mut x357, &mut x358, x356, x309, x340);
747 let mut x359: u32 = 0;
748 let mut x360: fiat_p256_u1 = 0;
749 fiat_p256_addcarryx_u32(&mut x359, &mut x360, x358, x311, x342);
750 let mut x361: u32 = 0;
751 let mut x362: fiat_p256_u1 = 0;
752 fiat_p256_addcarryx_u32(&mut x361, &mut x362, x360, x313, x344);
753 let mut x363: u32 = 0;
754 let mut x364: u32 = 0;
755 fiat_p256_mulx_u32(&mut x363, &mut x364, x345, 0xffffffff);
756 let mut x365: u32 = 0;
757 let mut x366: u32 = 0;
758 fiat_p256_mulx_u32(&mut x365, &mut x366, x345, 0xffffffff);
759 let mut x367: u32 = 0;
760 let mut x368: u32 = 0;
761 fiat_p256_mulx_u32(&mut x367, &mut x368, x345, 0xffffffff);
762 let mut x369: u32 = 0;
763 let mut x370: u32 = 0;
764 fiat_p256_mulx_u32(&mut x369, &mut x370, x345, 0xffffffff);
765 let mut x371: u32 = 0;
766 let mut x372: fiat_p256_u1 = 0;
767 fiat_p256_addcarryx_u32(&mut x371, &mut x372, 0x0, x370, x367);
768 let mut x373: u32 = 0;
769 let mut x374: fiat_p256_u1 = 0;
770 fiat_p256_addcarryx_u32(&mut x373, &mut x374, x372, x368, x365);
771 let x375: u32 = ((x374 as u32) + x366);
772 let mut x376: u32 = 0;
773 let mut x377: fiat_p256_u1 = 0;
774 fiat_p256_addcarryx_u32(&mut x376, &mut x377, 0x0, x345, x369);
775 let mut x378: u32 = 0;
776 let mut x379: fiat_p256_u1 = 0;
777 fiat_p256_addcarryx_u32(&mut x378, &mut x379, x377, x347, x371);
778 let mut x380: u32 = 0;
779 let mut x381: fiat_p256_u1 = 0;
780 fiat_p256_addcarryx_u32(&mut x380, &mut x381, x379, x349, x373);
781 let mut x382: u32 = 0;
782 let mut x383: fiat_p256_u1 = 0;
783 fiat_p256_addcarryx_u32(&mut x382, &mut x383, x381, x351, x375);
784 let mut x384: u32 = 0;
785 let mut x385: fiat_p256_u1 = 0;
786 fiat_p256_addcarryx_u32(&mut x384, &mut x385, x383, x353, (0x0 as u32));
787 let mut x386: u32 = 0;
788 let mut x387: fiat_p256_u1 = 0;
789 fiat_p256_addcarryx_u32(&mut x386, &mut x387, x385, x355, (0x0 as u32));
790 let mut x388: u32 = 0;
791 let mut x389: fiat_p256_u1 = 0;
792 fiat_p256_addcarryx_u32(&mut x388, &mut x389, x387, x357, x345);
793 let mut x390: u32 = 0;
794 let mut x391: fiat_p256_u1 = 0;
795 fiat_p256_addcarryx_u32(&mut x390, &mut x391, x389, x359, x363);
796 let mut x392: u32 = 0;
797 let mut x393: fiat_p256_u1 = 0;
798 fiat_p256_addcarryx_u32(&mut x392, &mut x393, x391, x361, x364);
799 let x394: u32 = ((x393 as u32) + (x362 as u32));
800 let mut x395: u32 = 0;
801 let mut x396: u32 = 0;
802 fiat_p256_mulx_u32(&mut x395, &mut x396, x5, (*IndexConst(arg2).index(7)));
803 let mut x397: u32 = 0;
804 let mut x398: u32 = 0;
805 fiat_p256_mulx_u32(&mut x397, &mut x398, x5, (*IndexConst(arg2).index(6)));
806 let mut x399: u32 = 0;
807 let mut x400: u32 = 0;
808 fiat_p256_mulx_u32(&mut x399, &mut x400, x5, (*IndexConst(arg2).index(5)));
809 let mut x401: u32 = 0;
810 let mut x402: u32 = 0;
811 fiat_p256_mulx_u32(&mut x401, &mut x402, x5, (*IndexConst(arg2).index(4)));
812 let mut x403: u32 = 0;
813 let mut x404: u32 = 0;
814 fiat_p256_mulx_u32(&mut x403, &mut x404, x5, (*IndexConst(arg2).index(3)));
815 let mut x405: u32 = 0;
816 let mut x406: u32 = 0;
817 fiat_p256_mulx_u32(&mut x405, &mut x406, x5, (*IndexConst(arg2).index(2)));
818 let mut x407: u32 = 0;
819 let mut x408: u32 = 0;
820 fiat_p256_mulx_u32(&mut x407, &mut x408, x5, (*IndexConst(arg2).index(1)));
821 let mut x409: u32 = 0;
822 let mut x410: u32 = 0;
823 fiat_p256_mulx_u32(&mut x409, &mut x410, x5, (*IndexConst(arg2).index(0)));
824 let mut x411: u32 = 0;
825 let mut x412: fiat_p256_u1 = 0;
826 fiat_p256_addcarryx_u32(&mut x411, &mut x412, 0x0, x410, x407);
827 let mut x413: u32 = 0;
828 let mut x414: fiat_p256_u1 = 0;
829 fiat_p256_addcarryx_u32(&mut x413, &mut x414, x412, x408, x405);
830 let mut x415: u32 = 0;
831 let mut x416: fiat_p256_u1 = 0;
832 fiat_p256_addcarryx_u32(&mut x415, &mut x416, x414, x406, x403);
833 let mut x417: u32 = 0;
834 let mut x418: fiat_p256_u1 = 0;
835 fiat_p256_addcarryx_u32(&mut x417, &mut x418, x416, x404, x401);
836 let mut x419: u32 = 0;
837 let mut x420: fiat_p256_u1 = 0;
838 fiat_p256_addcarryx_u32(&mut x419, &mut x420, x418, x402, x399);
839 let mut x421: u32 = 0;
840 let mut x422: fiat_p256_u1 = 0;
841 fiat_p256_addcarryx_u32(&mut x421, &mut x422, x420, x400, x397);
842 let mut x423: u32 = 0;
843 let mut x424: fiat_p256_u1 = 0;
844 fiat_p256_addcarryx_u32(&mut x423, &mut x424, x422, x398, x395);
845 let x425: u32 = ((x424 as u32) + x396);
846 let mut x426: u32 = 0;
847 let mut x427: fiat_p256_u1 = 0;
848 fiat_p256_addcarryx_u32(&mut x426, &mut x427, 0x0, x378, x409);
849 let mut x428: u32 = 0;
850 let mut x429: fiat_p256_u1 = 0;
851 fiat_p256_addcarryx_u32(&mut x428, &mut x429, x427, x380, x411);
852 let mut x430: u32 = 0;
853 let mut x431: fiat_p256_u1 = 0;
854 fiat_p256_addcarryx_u32(&mut x430, &mut x431, x429, x382, x413);
855 let mut x432: u32 = 0;
856 let mut x433: fiat_p256_u1 = 0;
857 fiat_p256_addcarryx_u32(&mut x432, &mut x433, x431, x384, x415);
858 let mut x434: u32 = 0;
859 let mut x435: fiat_p256_u1 = 0;
860 fiat_p256_addcarryx_u32(&mut x434, &mut x435, x433, x386, x417);
861 let mut x436: u32 = 0;
862 let mut x437: fiat_p256_u1 = 0;
863 fiat_p256_addcarryx_u32(&mut x436, &mut x437, x435, x388, x419);
864 let mut x438: u32 = 0;
865 let mut x439: fiat_p256_u1 = 0;
866 fiat_p256_addcarryx_u32(&mut x438, &mut x439, x437, x390, x421);
867 let mut x440: u32 = 0;
868 let mut x441: fiat_p256_u1 = 0;
869 fiat_p256_addcarryx_u32(&mut x440, &mut x441, x439, x392, x423);
870 let mut x442: u32 = 0;
871 let mut x443: fiat_p256_u1 = 0;
872 fiat_p256_addcarryx_u32(&mut x442, &mut x443, x441, x394, x425);
873 let mut x444: u32 = 0;
874 let mut x445: u32 = 0;
875 fiat_p256_mulx_u32(&mut x444, &mut x445, x426, 0xffffffff);
876 let mut x446: u32 = 0;
877 let mut x447: u32 = 0;
878 fiat_p256_mulx_u32(&mut x446, &mut x447, x426, 0xffffffff);
879 let mut x448: u32 = 0;
880 let mut x449: u32 = 0;
881 fiat_p256_mulx_u32(&mut x448, &mut x449, x426, 0xffffffff);
882 let mut x450: u32 = 0;
883 let mut x451: u32 = 0;
884 fiat_p256_mulx_u32(&mut x450, &mut x451, x426, 0xffffffff);
885 let mut x452: u32 = 0;
886 let mut x453: fiat_p256_u1 = 0;
887 fiat_p256_addcarryx_u32(&mut x452, &mut x453, 0x0, x451, x448);
888 let mut x454: u32 = 0;
889 let mut x455: fiat_p256_u1 = 0;
890 fiat_p256_addcarryx_u32(&mut x454, &mut x455, x453, x449, x446);
891 let x456: u32 = ((x455 as u32) + x447);
892 let mut x457: u32 = 0;
893 let mut x458: fiat_p256_u1 = 0;
894 fiat_p256_addcarryx_u32(&mut x457, &mut x458, 0x0, x426, x450);
895 let mut x459: u32 = 0;
896 let mut x460: fiat_p256_u1 = 0;
897 fiat_p256_addcarryx_u32(&mut x459, &mut x460, x458, x428, x452);
898 let mut x461: u32 = 0;
899 let mut x462: fiat_p256_u1 = 0;
900 fiat_p256_addcarryx_u32(&mut x461, &mut x462, x460, x430, x454);
901 let mut x463: u32 = 0;
902 let mut x464: fiat_p256_u1 = 0;
903 fiat_p256_addcarryx_u32(&mut x463, &mut x464, x462, x432, x456);
904 let mut x465: u32 = 0;
905 let mut x466: fiat_p256_u1 = 0;
906 fiat_p256_addcarryx_u32(&mut x465, &mut x466, x464, x434, (0x0 as u32));
907 let mut x467: u32 = 0;
908 let mut x468: fiat_p256_u1 = 0;
909 fiat_p256_addcarryx_u32(&mut x467, &mut x468, x466, x436, (0x0 as u32));
910 let mut x469: u32 = 0;
911 let mut x470: fiat_p256_u1 = 0;
912 fiat_p256_addcarryx_u32(&mut x469, &mut x470, x468, x438, x426);
913 let mut x471: u32 = 0;
914 let mut x472: fiat_p256_u1 = 0;
915 fiat_p256_addcarryx_u32(&mut x471, &mut x472, x470, x440, x444);
916 let mut x473: u32 = 0;
917 let mut x474: fiat_p256_u1 = 0;
918 fiat_p256_addcarryx_u32(&mut x473, &mut x474, x472, x442, x445);
919 let x475: u32 = ((x474 as u32) + (x443 as u32));
920 let mut x476: u32 = 0;
921 let mut x477: u32 = 0;
922 fiat_p256_mulx_u32(&mut x476, &mut x477, x6, (*IndexConst(arg2).index(7)));
923 let mut x478: u32 = 0;
924 let mut x479: u32 = 0;
925 fiat_p256_mulx_u32(&mut x478, &mut x479, x6, (*IndexConst(arg2).index(6)));
926 let mut x480: u32 = 0;
927 let mut x481: u32 = 0;
928 fiat_p256_mulx_u32(&mut x480, &mut x481, x6, (*IndexConst(arg2).index(5)));
929 let mut x482: u32 = 0;
930 let mut x483: u32 = 0;
931 fiat_p256_mulx_u32(&mut x482, &mut x483, x6, (*IndexConst(arg2).index(4)));
932 let mut x484: u32 = 0;
933 let mut x485: u32 = 0;
934 fiat_p256_mulx_u32(&mut x484, &mut x485, x6, (*IndexConst(arg2).index(3)));
935 let mut x486: u32 = 0;
936 let mut x487: u32 = 0;
937 fiat_p256_mulx_u32(&mut x486, &mut x487, x6, (*IndexConst(arg2).index(2)));
938 let mut x488: u32 = 0;
939 let mut x489: u32 = 0;
940 fiat_p256_mulx_u32(&mut x488, &mut x489, x6, (*IndexConst(arg2).index(1)));
941 let mut x490: u32 = 0;
942 let mut x491: u32 = 0;
943 fiat_p256_mulx_u32(&mut x490, &mut x491, x6, (*IndexConst(arg2).index(0)));
944 let mut x492: u32 = 0;
945 let mut x493: fiat_p256_u1 = 0;
946 fiat_p256_addcarryx_u32(&mut x492, &mut x493, 0x0, x491, x488);
947 let mut x494: u32 = 0;
948 let mut x495: fiat_p256_u1 = 0;
949 fiat_p256_addcarryx_u32(&mut x494, &mut x495, x493, x489, x486);
950 let mut x496: u32 = 0;
951 let mut x497: fiat_p256_u1 = 0;
952 fiat_p256_addcarryx_u32(&mut x496, &mut x497, x495, x487, x484);
953 let mut x498: u32 = 0;
954 let mut x499: fiat_p256_u1 = 0;
955 fiat_p256_addcarryx_u32(&mut x498, &mut x499, x497, x485, x482);
956 let mut x500: u32 = 0;
957 let mut x501: fiat_p256_u1 = 0;
958 fiat_p256_addcarryx_u32(&mut x500, &mut x501, x499, x483, x480);
959 let mut x502: u32 = 0;
960 let mut x503: fiat_p256_u1 = 0;
961 fiat_p256_addcarryx_u32(&mut x502, &mut x503, x501, x481, x478);
962 let mut x504: u32 = 0;
963 let mut x505: fiat_p256_u1 = 0;
964 fiat_p256_addcarryx_u32(&mut x504, &mut x505, x503, x479, x476);
965 let x506: u32 = ((x505 as u32) + x477);
966 let mut x507: u32 = 0;
967 let mut x508: fiat_p256_u1 = 0;
968 fiat_p256_addcarryx_u32(&mut x507, &mut x508, 0x0, x459, x490);
969 let mut x509: u32 = 0;
970 let mut x510: fiat_p256_u1 = 0;
971 fiat_p256_addcarryx_u32(&mut x509, &mut x510, x508, x461, x492);
972 let mut x511: u32 = 0;
973 let mut x512: fiat_p256_u1 = 0;
974 fiat_p256_addcarryx_u32(&mut x511, &mut x512, x510, x463, x494);
975 let mut x513: u32 = 0;
976 let mut x514: fiat_p256_u1 = 0;
977 fiat_p256_addcarryx_u32(&mut x513, &mut x514, x512, x465, x496);
978 let mut x515: u32 = 0;
979 let mut x516: fiat_p256_u1 = 0;
980 fiat_p256_addcarryx_u32(&mut x515, &mut x516, x514, x467, x498);
981 let mut x517: u32 = 0;
982 let mut x518: fiat_p256_u1 = 0;
983 fiat_p256_addcarryx_u32(&mut x517, &mut x518, x516, x469, x500);
984 let mut x519: u32 = 0;
985 let mut x520: fiat_p256_u1 = 0;
986 fiat_p256_addcarryx_u32(&mut x519, &mut x520, x518, x471, x502);
987 let mut x521: u32 = 0;
988 let mut x522: fiat_p256_u1 = 0;
989 fiat_p256_addcarryx_u32(&mut x521, &mut x522, x520, x473, x504);
990 let mut x523: u32 = 0;
991 let mut x524: fiat_p256_u1 = 0;
992 fiat_p256_addcarryx_u32(&mut x523, &mut x524, x522, x475, x506);
993 let mut x525: u32 = 0;
994 let mut x526: u32 = 0;
995 fiat_p256_mulx_u32(&mut x525, &mut x526, x507, 0xffffffff);
996 let mut x527: u32 = 0;
997 let mut x528: u32 = 0;
998 fiat_p256_mulx_u32(&mut x527, &mut x528, x507, 0xffffffff);
999 let mut x529: u32 = 0;
1000 let mut x530: u32 = 0;
1001 fiat_p256_mulx_u32(&mut x529, &mut x530, x507, 0xffffffff);
1002 let mut x531: u32 = 0;
1003 let mut x532: u32 = 0;
1004 fiat_p256_mulx_u32(&mut x531, &mut x532, x507, 0xffffffff);
1005 let mut x533: u32 = 0;
1006 let mut x534: fiat_p256_u1 = 0;
1007 fiat_p256_addcarryx_u32(&mut x533, &mut x534, 0x0, x532, x529);
1008 let mut x535: u32 = 0;
1009 let mut x536: fiat_p256_u1 = 0;
1010 fiat_p256_addcarryx_u32(&mut x535, &mut x536, x534, x530, x527);
1011 let x537: u32 = ((x536 as u32) + x528);
1012 let mut x538: u32 = 0;
1013 let mut x539: fiat_p256_u1 = 0;
1014 fiat_p256_addcarryx_u32(&mut x538, &mut x539, 0x0, x507, x531);
1015 let mut x540: u32 = 0;
1016 let mut x541: fiat_p256_u1 = 0;
1017 fiat_p256_addcarryx_u32(&mut x540, &mut x541, x539, x509, x533);
1018 let mut x542: u32 = 0;
1019 let mut x543: fiat_p256_u1 = 0;
1020 fiat_p256_addcarryx_u32(&mut x542, &mut x543, x541, x511, x535);
1021 let mut x544: u32 = 0;
1022 let mut x545: fiat_p256_u1 = 0;
1023 fiat_p256_addcarryx_u32(&mut x544, &mut x545, x543, x513, x537);
1024 let mut x546: u32 = 0;
1025 let mut x547: fiat_p256_u1 = 0;
1026 fiat_p256_addcarryx_u32(&mut x546, &mut x547, x545, x515, (0x0 as u32));
1027 let mut x548: u32 = 0;
1028 let mut x549: fiat_p256_u1 = 0;
1029 fiat_p256_addcarryx_u32(&mut x548, &mut x549, x547, x517, (0x0 as u32));
1030 let mut x550: u32 = 0;
1031 let mut x551: fiat_p256_u1 = 0;
1032 fiat_p256_addcarryx_u32(&mut x550, &mut x551, x549, x519, x507);
1033 let mut x552: u32 = 0;
1034 let mut x553: fiat_p256_u1 = 0;
1035 fiat_p256_addcarryx_u32(&mut x552, &mut x553, x551, x521, x525);
1036 let mut x554: u32 = 0;
1037 let mut x555: fiat_p256_u1 = 0;
1038 fiat_p256_addcarryx_u32(&mut x554, &mut x555, x553, x523, x526);
1039 let x556: u32 = ((x555 as u32) + (x524 as u32));
1040 let mut x557: u32 = 0;
1041 let mut x558: u32 = 0;
1042 fiat_p256_mulx_u32(&mut x557, &mut x558, x7, (*IndexConst(arg2).index(7)));
1043 let mut x559: u32 = 0;
1044 let mut x560: u32 = 0;
1045 fiat_p256_mulx_u32(&mut x559, &mut x560, x7, (*IndexConst(arg2).index(6)));
1046 let mut x561: u32 = 0;
1047 let mut x562: u32 = 0;
1048 fiat_p256_mulx_u32(&mut x561, &mut x562, x7, (*IndexConst(arg2).index(5)));
1049 let mut x563: u32 = 0;
1050 let mut x564: u32 = 0;
1051 fiat_p256_mulx_u32(&mut x563, &mut x564, x7, (*IndexConst(arg2).index(4)));
1052 let mut x565: u32 = 0;
1053 let mut x566: u32 = 0;
1054 fiat_p256_mulx_u32(&mut x565, &mut x566, x7, (*IndexConst(arg2).index(3)));
1055 let mut x567: u32 = 0;
1056 let mut x568: u32 = 0;
1057 fiat_p256_mulx_u32(&mut x567, &mut x568, x7, (*IndexConst(arg2).index(2)));
1058 let mut x569: u32 = 0;
1059 let mut x570: u32 = 0;
1060 fiat_p256_mulx_u32(&mut x569, &mut x570, x7, (*IndexConst(arg2).index(1)));
1061 let mut x571: u32 = 0;
1062 let mut x572: u32 = 0;
1063 fiat_p256_mulx_u32(&mut x571, &mut x572, x7, (*IndexConst(arg2).index(0)));
1064 let mut x573: u32 = 0;
1065 let mut x574: fiat_p256_u1 = 0;
1066 fiat_p256_addcarryx_u32(&mut x573, &mut x574, 0x0, x572, x569);
1067 let mut x575: u32 = 0;
1068 let mut x576: fiat_p256_u1 = 0;
1069 fiat_p256_addcarryx_u32(&mut x575, &mut x576, x574, x570, x567);
1070 let mut x577: u32 = 0;
1071 let mut x578: fiat_p256_u1 = 0;
1072 fiat_p256_addcarryx_u32(&mut x577, &mut x578, x576, x568, x565);
1073 let mut x579: u32 = 0;
1074 let mut x580: fiat_p256_u1 = 0;
1075 fiat_p256_addcarryx_u32(&mut x579, &mut x580, x578, x566, x563);
1076 let mut x581: u32 = 0;
1077 let mut x582: fiat_p256_u1 = 0;
1078 fiat_p256_addcarryx_u32(&mut x581, &mut x582, x580, x564, x561);
1079 let mut x583: u32 = 0;
1080 let mut x584: fiat_p256_u1 = 0;
1081 fiat_p256_addcarryx_u32(&mut x583, &mut x584, x582, x562, x559);
1082 let mut x585: u32 = 0;
1083 let mut x586: fiat_p256_u1 = 0;
1084 fiat_p256_addcarryx_u32(&mut x585, &mut x586, x584, x560, x557);
1085 let x587: u32 = ((x586 as u32) + x558);
1086 let mut x588: u32 = 0;
1087 let mut x589: fiat_p256_u1 = 0;
1088 fiat_p256_addcarryx_u32(&mut x588, &mut x589, 0x0, x540, x571);
1089 let mut x590: u32 = 0;
1090 let mut x591: fiat_p256_u1 = 0;
1091 fiat_p256_addcarryx_u32(&mut x590, &mut x591, x589, x542, x573);
1092 let mut x592: u32 = 0;
1093 let mut x593: fiat_p256_u1 = 0;
1094 fiat_p256_addcarryx_u32(&mut x592, &mut x593, x591, x544, x575);
1095 let mut x594: u32 = 0;
1096 let mut x595: fiat_p256_u1 = 0;
1097 fiat_p256_addcarryx_u32(&mut x594, &mut x595, x593, x546, x577);
1098 let mut x596: u32 = 0;
1099 let mut x597: fiat_p256_u1 = 0;
1100 fiat_p256_addcarryx_u32(&mut x596, &mut x597, x595, x548, x579);
1101 let mut x598: u32 = 0;
1102 let mut x599: fiat_p256_u1 = 0;
1103 fiat_p256_addcarryx_u32(&mut x598, &mut x599, x597, x550, x581);
1104 let mut x600: u32 = 0;
1105 let mut x601: fiat_p256_u1 = 0;
1106 fiat_p256_addcarryx_u32(&mut x600, &mut x601, x599, x552, x583);
1107 let mut x602: u32 = 0;
1108 let mut x603: fiat_p256_u1 = 0;
1109 fiat_p256_addcarryx_u32(&mut x602, &mut x603, x601, x554, x585);
1110 let mut x604: u32 = 0;
1111 let mut x605: fiat_p256_u1 = 0;
1112 fiat_p256_addcarryx_u32(&mut x604, &mut x605, x603, x556, x587);
1113 let mut x606: u32 = 0;
1114 let mut x607: u32 = 0;
1115 fiat_p256_mulx_u32(&mut x606, &mut x607, x588, 0xffffffff);
1116 let mut x608: u32 = 0;
1117 let mut x609: u32 = 0;
1118 fiat_p256_mulx_u32(&mut x608, &mut x609, x588, 0xffffffff);
1119 let mut x610: u32 = 0;
1120 let mut x611: u32 = 0;
1121 fiat_p256_mulx_u32(&mut x610, &mut x611, x588, 0xffffffff);
1122 let mut x612: u32 = 0;
1123 let mut x613: u32 = 0;
1124 fiat_p256_mulx_u32(&mut x612, &mut x613, x588, 0xffffffff);
1125 let mut x614: u32 = 0;
1126 let mut x615: fiat_p256_u1 = 0;
1127 fiat_p256_addcarryx_u32(&mut x614, &mut x615, 0x0, x613, x610);
1128 let mut x616: u32 = 0;
1129 let mut x617: fiat_p256_u1 = 0;
1130 fiat_p256_addcarryx_u32(&mut x616, &mut x617, x615, x611, x608);
1131 let x618: u32 = ((x617 as u32) + x609);
1132 let mut x619: u32 = 0;
1133 let mut x620: fiat_p256_u1 = 0;
1134 fiat_p256_addcarryx_u32(&mut x619, &mut x620, 0x0, x588, x612);
1135 let mut x621: u32 = 0;
1136 let mut x622: fiat_p256_u1 = 0;
1137 fiat_p256_addcarryx_u32(&mut x621, &mut x622, x620, x590, x614);
1138 let mut x623: u32 = 0;
1139 let mut x624: fiat_p256_u1 = 0;
1140 fiat_p256_addcarryx_u32(&mut x623, &mut x624, x622, x592, x616);
1141 let mut x625: u32 = 0;
1142 let mut x626: fiat_p256_u1 = 0;
1143 fiat_p256_addcarryx_u32(&mut x625, &mut x626, x624, x594, x618);
1144 let mut x627: u32 = 0;
1145 let mut x628: fiat_p256_u1 = 0;
1146 fiat_p256_addcarryx_u32(&mut x627, &mut x628, x626, x596, (0x0 as u32));
1147 let mut x629: u32 = 0;
1148 let mut x630: fiat_p256_u1 = 0;
1149 fiat_p256_addcarryx_u32(&mut x629, &mut x630, x628, x598, (0x0 as u32));
1150 let mut x631: u32 = 0;
1151 let mut x632: fiat_p256_u1 = 0;
1152 fiat_p256_addcarryx_u32(&mut x631, &mut x632, x630, x600, x588);
1153 let mut x633: u32 = 0;
1154 let mut x634: fiat_p256_u1 = 0;
1155 fiat_p256_addcarryx_u32(&mut x633, &mut x634, x632, x602, x606);
1156 let mut x635: u32 = 0;
1157 let mut x636: fiat_p256_u1 = 0;
1158 fiat_p256_addcarryx_u32(&mut x635, &mut x636, x634, x604, x607);
1159 let x637: u32 = ((x636 as u32) + (x605 as u32));
1160 let mut x638: u32 = 0;
1161 let mut x639: fiat_p256_u1 = 0;
1162 fiat_p256_subborrowx_u32(&mut x638, &mut x639, 0x0, x621, 0xffffffff);
1163 let mut x640: u32 = 0;
1164 let mut x641: fiat_p256_u1 = 0;
1165 fiat_p256_subborrowx_u32(&mut x640, &mut x641, x639, x623, 0xffffffff);
1166 let mut x642: u32 = 0;
1167 let mut x643: fiat_p256_u1 = 0;
1168 fiat_p256_subborrowx_u32(&mut x642, &mut x643, x641, x625, 0xffffffff);
1169 let mut x644: u32 = 0;
1170 let mut x645: fiat_p256_u1 = 0;
1171 fiat_p256_subborrowx_u32(&mut x644, &mut x645, x643, x627, (0x0 as u32));
1172 let mut x646: u32 = 0;
1173 let mut x647: fiat_p256_u1 = 0;
1174 fiat_p256_subborrowx_u32(&mut x646, &mut x647, x645, x629, (0x0 as u32));
1175 let mut x648: u32 = 0;
1176 let mut x649: fiat_p256_u1 = 0;
1177 fiat_p256_subborrowx_u32(&mut x648, &mut x649, x647, x631, (0x0 as u32));
1178 let mut x650: u32 = 0;
1179 let mut x651: fiat_p256_u1 = 0;
1180 fiat_p256_subborrowx_u32(&mut x650, &mut x651, x649, x633, (0x1 as u32));
1181 let mut x652: u32 = 0;
1182 let mut x653: fiat_p256_u1 = 0;
1183 fiat_p256_subborrowx_u32(&mut x652, &mut x653, x651, x635, 0xffffffff);
1184 let mut x654: u32 = 0;
1185 let mut x655: fiat_p256_u1 = 0;
1186 fiat_p256_subborrowx_u32(&mut x654, &mut x655, x653, x637, (0x0 as u32));
1187 let mut x656: u32 = 0;
1188 fiat_p256_cmovznz_u32(&mut x656, x655, x638, x621);
1189 let mut x657: u32 = 0;
1190 fiat_p256_cmovznz_u32(&mut x657, x655, x640, x623);
1191 let mut x658: u32 = 0;
1192 fiat_p256_cmovznz_u32(&mut x658, x655, x642, x625);
1193 let mut x659: u32 = 0;
1194 fiat_p256_cmovznz_u32(&mut x659, x655, x644, x627);
1195 let mut x660: u32 = 0;
1196 fiat_p256_cmovznz_u32(&mut x660, x655, x646, x629);
1197 let mut x661: u32 = 0;
1198 fiat_p256_cmovznz_u32(&mut x661, x655, x648, x631);
1199 let mut x662: u32 = 0;
1200 fiat_p256_cmovznz_u32(&mut x662, x655, x650, x633);
1201 let mut x663: u32 = 0;
1202 fiat_p256_cmovznz_u32(&mut x663, x655, x652, x635);
1203 *IndexConst(&mut out1).index_mut(0) = x656;
1204 *IndexConst(&mut out1).index_mut(1) = x657;
1205 *IndexConst(&mut out1).index_mut(2) = x658;
1206 *IndexConst(&mut out1).index_mut(3) = x659;
1207 *IndexConst(&mut out1).index_mut(4) = x660;
1208 *IndexConst(&mut out1).index_mut(5) = x661;
1209 *IndexConst(&mut out1).index_mut(6) = x662;
1210 *IndexConst(&mut out1).index_mut(7) = x663;
1211}
1212
1213#[inline]
1222pub const fn fiat_p256_square(mut out1: &mut fiat_p256_montgomery_domain_field_element, arg1: &fiat_p256_montgomery_domain_field_element) {
1223 let x1: u32 = (*IndexConst(arg1).index(1));
1224 let x2: u32 = (*IndexConst(arg1).index(2));
1225 let x3: u32 = (*IndexConst(arg1).index(3));
1226 let x4: u32 = (*IndexConst(arg1).index(4));
1227 let x5: u32 = (*IndexConst(arg1).index(5));
1228 let x6: u32 = (*IndexConst(arg1).index(6));
1229 let x7: u32 = (*IndexConst(arg1).index(7));
1230 let x8: u32 = (*IndexConst(arg1).index(0));
1231 let mut x9: u32 = 0;
1232 let mut x10: u32 = 0;
1233 fiat_p256_mulx_u32(&mut x9, &mut x10, x8, (*IndexConst(arg1).index(7)));
1234 let mut x11: u32 = 0;
1235 let mut x12: u32 = 0;
1236 fiat_p256_mulx_u32(&mut x11, &mut x12, x8, (*IndexConst(arg1).index(6)));
1237 let mut x13: u32 = 0;
1238 let mut x14: u32 = 0;
1239 fiat_p256_mulx_u32(&mut x13, &mut x14, x8, (*IndexConst(arg1).index(5)));
1240 let mut x15: u32 = 0;
1241 let mut x16: u32 = 0;
1242 fiat_p256_mulx_u32(&mut x15, &mut x16, x8, (*IndexConst(arg1).index(4)));
1243 let mut x17: u32 = 0;
1244 let mut x18: u32 = 0;
1245 fiat_p256_mulx_u32(&mut x17, &mut x18, x8, (*IndexConst(arg1).index(3)));
1246 let mut x19: u32 = 0;
1247 let mut x20: u32 = 0;
1248 fiat_p256_mulx_u32(&mut x19, &mut x20, x8, (*IndexConst(arg1).index(2)));
1249 let mut x21: u32 = 0;
1250 let mut x22: u32 = 0;
1251 fiat_p256_mulx_u32(&mut x21, &mut x22, x8, (*IndexConst(arg1).index(1)));
1252 let mut x23: u32 = 0;
1253 let mut x24: u32 = 0;
1254 fiat_p256_mulx_u32(&mut x23, &mut x24, x8, (*IndexConst(arg1).index(0)));
1255 let mut x25: u32 = 0;
1256 let mut x26: fiat_p256_u1 = 0;
1257 fiat_p256_addcarryx_u32(&mut x25, &mut x26, 0x0, x24, x21);
1258 let mut x27: u32 = 0;
1259 let mut x28: fiat_p256_u1 = 0;
1260 fiat_p256_addcarryx_u32(&mut x27, &mut x28, x26, x22, x19);
1261 let mut x29: u32 = 0;
1262 let mut x30: fiat_p256_u1 = 0;
1263 fiat_p256_addcarryx_u32(&mut x29, &mut x30, x28, x20, x17);
1264 let mut x31: u32 = 0;
1265 let mut x32: fiat_p256_u1 = 0;
1266 fiat_p256_addcarryx_u32(&mut x31, &mut x32, x30, x18, x15);
1267 let mut x33: u32 = 0;
1268 let mut x34: fiat_p256_u1 = 0;
1269 fiat_p256_addcarryx_u32(&mut x33, &mut x34, x32, x16, x13);
1270 let mut x35: u32 = 0;
1271 let mut x36: fiat_p256_u1 = 0;
1272 fiat_p256_addcarryx_u32(&mut x35, &mut x36, x34, x14, x11);
1273 let mut x37: u32 = 0;
1274 let mut x38: fiat_p256_u1 = 0;
1275 fiat_p256_addcarryx_u32(&mut x37, &mut x38, x36, x12, x9);
1276 let x39: u32 = ((x38 as u32) + x10);
1277 let mut x40: u32 = 0;
1278 let mut x41: u32 = 0;
1279 fiat_p256_mulx_u32(&mut x40, &mut x41, x23, 0xffffffff);
1280 let mut x42: u32 = 0;
1281 let mut x43: u32 = 0;
1282 fiat_p256_mulx_u32(&mut x42, &mut x43, x23, 0xffffffff);
1283 let mut x44: u32 = 0;
1284 let mut x45: u32 = 0;
1285 fiat_p256_mulx_u32(&mut x44, &mut x45, x23, 0xffffffff);
1286 let mut x46: u32 = 0;
1287 let mut x47: u32 = 0;
1288 fiat_p256_mulx_u32(&mut x46, &mut x47, x23, 0xffffffff);
1289 let mut x48: u32 = 0;
1290 let mut x49: fiat_p256_u1 = 0;
1291 fiat_p256_addcarryx_u32(&mut x48, &mut x49, 0x0, x47, x44);
1292 let mut x50: u32 = 0;
1293 let mut x51: fiat_p256_u1 = 0;
1294 fiat_p256_addcarryx_u32(&mut x50, &mut x51, x49, x45, x42);
1295 let x52: u32 = ((x51 as u32) + x43);
1296 let mut x53: u32 = 0;
1297 let mut x54: fiat_p256_u1 = 0;
1298 fiat_p256_addcarryx_u32(&mut x53, &mut x54, 0x0, x23, x46);
1299 let mut x55: u32 = 0;
1300 let mut x56: fiat_p256_u1 = 0;
1301 fiat_p256_addcarryx_u32(&mut x55, &mut x56, x54, x25, x48);
1302 let mut x57: u32 = 0;
1303 let mut x58: fiat_p256_u1 = 0;
1304 fiat_p256_addcarryx_u32(&mut x57, &mut x58, x56, x27, x50);
1305 let mut x59: u32 = 0;
1306 let mut x60: fiat_p256_u1 = 0;
1307 fiat_p256_addcarryx_u32(&mut x59, &mut x60, x58, x29, x52);
1308 let mut x61: u32 = 0;
1309 let mut x62: fiat_p256_u1 = 0;
1310 fiat_p256_addcarryx_u32(&mut x61, &mut x62, x60, x31, (0x0 as u32));
1311 let mut x63: u32 = 0;
1312 let mut x64: fiat_p256_u1 = 0;
1313 fiat_p256_addcarryx_u32(&mut x63, &mut x64, x62, x33, (0x0 as u32));
1314 let mut x65: u32 = 0;
1315 let mut x66: fiat_p256_u1 = 0;
1316 fiat_p256_addcarryx_u32(&mut x65, &mut x66, x64, x35, x23);
1317 let mut x67: u32 = 0;
1318 let mut x68: fiat_p256_u1 = 0;
1319 fiat_p256_addcarryx_u32(&mut x67, &mut x68, x66, x37, x40);
1320 let mut x69: u32 = 0;
1321 let mut x70: fiat_p256_u1 = 0;
1322 fiat_p256_addcarryx_u32(&mut x69, &mut x70, x68, x39, x41);
1323 let mut x71: u32 = 0;
1324 let mut x72: u32 = 0;
1325 fiat_p256_mulx_u32(&mut x71, &mut x72, x1, (*IndexConst(arg1).index(7)));
1326 let mut x73: u32 = 0;
1327 let mut x74: u32 = 0;
1328 fiat_p256_mulx_u32(&mut x73, &mut x74, x1, (*IndexConst(arg1).index(6)));
1329 let mut x75: u32 = 0;
1330 let mut x76: u32 = 0;
1331 fiat_p256_mulx_u32(&mut x75, &mut x76, x1, (*IndexConst(arg1).index(5)));
1332 let mut x77: u32 = 0;
1333 let mut x78: u32 = 0;
1334 fiat_p256_mulx_u32(&mut x77, &mut x78, x1, (*IndexConst(arg1).index(4)));
1335 let mut x79: u32 = 0;
1336 let mut x80: u32 = 0;
1337 fiat_p256_mulx_u32(&mut x79, &mut x80, x1, (*IndexConst(arg1).index(3)));
1338 let mut x81: u32 = 0;
1339 let mut x82: u32 = 0;
1340 fiat_p256_mulx_u32(&mut x81, &mut x82, x1, (*IndexConst(arg1).index(2)));
1341 let mut x83: u32 = 0;
1342 let mut x84: u32 = 0;
1343 fiat_p256_mulx_u32(&mut x83, &mut x84, x1, (*IndexConst(arg1).index(1)));
1344 let mut x85: u32 = 0;
1345 let mut x86: u32 = 0;
1346 fiat_p256_mulx_u32(&mut x85, &mut x86, x1, (*IndexConst(arg1).index(0)));
1347 let mut x87: u32 = 0;
1348 let mut x88: fiat_p256_u1 = 0;
1349 fiat_p256_addcarryx_u32(&mut x87, &mut x88, 0x0, x86, x83);
1350 let mut x89: u32 = 0;
1351 let mut x90: fiat_p256_u1 = 0;
1352 fiat_p256_addcarryx_u32(&mut x89, &mut x90, x88, x84, x81);
1353 let mut x91: u32 = 0;
1354 let mut x92: fiat_p256_u1 = 0;
1355 fiat_p256_addcarryx_u32(&mut x91, &mut x92, x90, x82, x79);
1356 let mut x93: u32 = 0;
1357 let mut x94: fiat_p256_u1 = 0;
1358 fiat_p256_addcarryx_u32(&mut x93, &mut x94, x92, x80, x77);
1359 let mut x95: u32 = 0;
1360 let mut x96: fiat_p256_u1 = 0;
1361 fiat_p256_addcarryx_u32(&mut x95, &mut x96, x94, x78, x75);
1362 let mut x97: u32 = 0;
1363 let mut x98: fiat_p256_u1 = 0;
1364 fiat_p256_addcarryx_u32(&mut x97, &mut x98, x96, x76, x73);
1365 let mut x99: u32 = 0;
1366 let mut x100: fiat_p256_u1 = 0;
1367 fiat_p256_addcarryx_u32(&mut x99, &mut x100, x98, x74, x71);
1368 let x101: u32 = ((x100 as u32) + x72);
1369 let mut x102: u32 = 0;
1370 let mut x103: fiat_p256_u1 = 0;
1371 fiat_p256_addcarryx_u32(&mut x102, &mut x103, 0x0, x55, x85);
1372 let mut x104: u32 = 0;
1373 let mut x105: fiat_p256_u1 = 0;
1374 fiat_p256_addcarryx_u32(&mut x104, &mut x105, x103, x57, x87);
1375 let mut x106: u32 = 0;
1376 let mut x107: fiat_p256_u1 = 0;
1377 fiat_p256_addcarryx_u32(&mut x106, &mut x107, x105, x59, x89);
1378 let mut x108: u32 = 0;
1379 let mut x109: fiat_p256_u1 = 0;
1380 fiat_p256_addcarryx_u32(&mut x108, &mut x109, x107, x61, x91);
1381 let mut x110: u32 = 0;
1382 let mut x111: fiat_p256_u1 = 0;
1383 fiat_p256_addcarryx_u32(&mut x110, &mut x111, x109, x63, x93);
1384 let mut x112: u32 = 0;
1385 let mut x113: fiat_p256_u1 = 0;
1386 fiat_p256_addcarryx_u32(&mut x112, &mut x113, x111, x65, x95);
1387 let mut x114: u32 = 0;
1388 let mut x115: fiat_p256_u1 = 0;
1389 fiat_p256_addcarryx_u32(&mut x114, &mut x115, x113, x67, x97);
1390 let mut x116: u32 = 0;
1391 let mut x117: fiat_p256_u1 = 0;
1392 fiat_p256_addcarryx_u32(&mut x116, &mut x117, x115, x69, x99);
1393 let mut x118: u32 = 0;
1394 let mut x119: fiat_p256_u1 = 0;
1395 fiat_p256_addcarryx_u32(&mut x118, &mut x119, x117, (x70 as u32), x101);
1396 let mut x120: u32 = 0;
1397 let mut x121: u32 = 0;
1398 fiat_p256_mulx_u32(&mut x120, &mut x121, x102, 0xffffffff);
1399 let mut x122: u32 = 0;
1400 let mut x123: u32 = 0;
1401 fiat_p256_mulx_u32(&mut x122, &mut x123, x102, 0xffffffff);
1402 let mut x124: u32 = 0;
1403 let mut x125: u32 = 0;
1404 fiat_p256_mulx_u32(&mut x124, &mut x125, x102, 0xffffffff);
1405 let mut x126: u32 = 0;
1406 let mut x127: u32 = 0;
1407 fiat_p256_mulx_u32(&mut x126, &mut x127, x102, 0xffffffff);
1408 let mut x128: u32 = 0;
1409 let mut x129: fiat_p256_u1 = 0;
1410 fiat_p256_addcarryx_u32(&mut x128, &mut x129, 0x0, x127, x124);
1411 let mut x130: u32 = 0;
1412 let mut x131: fiat_p256_u1 = 0;
1413 fiat_p256_addcarryx_u32(&mut x130, &mut x131, x129, x125, x122);
1414 let x132: u32 = ((x131 as u32) + x123);
1415 let mut x133: u32 = 0;
1416 let mut x134: fiat_p256_u1 = 0;
1417 fiat_p256_addcarryx_u32(&mut x133, &mut x134, 0x0, x102, x126);
1418 let mut x135: u32 = 0;
1419 let mut x136: fiat_p256_u1 = 0;
1420 fiat_p256_addcarryx_u32(&mut x135, &mut x136, x134, x104, x128);
1421 let mut x137: u32 = 0;
1422 let mut x138: fiat_p256_u1 = 0;
1423 fiat_p256_addcarryx_u32(&mut x137, &mut x138, x136, x106, x130);
1424 let mut x139: u32 = 0;
1425 let mut x140: fiat_p256_u1 = 0;
1426 fiat_p256_addcarryx_u32(&mut x139, &mut x140, x138, x108, x132);
1427 let mut x141: u32 = 0;
1428 let mut x142: fiat_p256_u1 = 0;
1429 fiat_p256_addcarryx_u32(&mut x141, &mut x142, x140, x110, (0x0 as u32));
1430 let mut x143: u32 = 0;
1431 let mut x144: fiat_p256_u1 = 0;
1432 fiat_p256_addcarryx_u32(&mut x143, &mut x144, x142, x112, (0x0 as u32));
1433 let mut x145: u32 = 0;
1434 let mut x146: fiat_p256_u1 = 0;
1435 fiat_p256_addcarryx_u32(&mut x145, &mut x146, x144, x114, x102);
1436 let mut x147: u32 = 0;
1437 let mut x148: fiat_p256_u1 = 0;
1438 fiat_p256_addcarryx_u32(&mut x147, &mut x148, x146, x116, x120);
1439 let mut x149: u32 = 0;
1440 let mut x150: fiat_p256_u1 = 0;
1441 fiat_p256_addcarryx_u32(&mut x149, &mut x150, x148, x118, x121);
1442 let x151: u32 = ((x150 as u32) + (x119 as u32));
1443 let mut x152: u32 = 0;
1444 let mut x153: u32 = 0;
1445 fiat_p256_mulx_u32(&mut x152, &mut x153, x2, (*IndexConst(arg1).index(7)));
1446 let mut x154: u32 = 0;
1447 let mut x155: u32 = 0;
1448 fiat_p256_mulx_u32(&mut x154, &mut x155, x2, (*IndexConst(arg1).index(6)));
1449 let mut x156: u32 = 0;
1450 let mut x157: u32 = 0;
1451 fiat_p256_mulx_u32(&mut x156, &mut x157, x2, (*IndexConst(arg1).index(5)));
1452 let mut x158: u32 = 0;
1453 let mut x159: u32 = 0;
1454 fiat_p256_mulx_u32(&mut x158, &mut x159, x2, (*IndexConst(arg1).index(4)));
1455 let mut x160: u32 = 0;
1456 let mut x161: u32 = 0;
1457 fiat_p256_mulx_u32(&mut x160, &mut x161, x2, (*IndexConst(arg1).index(3)));
1458 let mut x162: u32 = 0;
1459 let mut x163: u32 = 0;
1460 fiat_p256_mulx_u32(&mut x162, &mut x163, x2, (*IndexConst(arg1).index(2)));
1461 let mut x164: u32 = 0;
1462 let mut x165: u32 = 0;
1463 fiat_p256_mulx_u32(&mut x164, &mut x165, x2, (*IndexConst(arg1).index(1)));
1464 let mut x166: u32 = 0;
1465 let mut x167: u32 = 0;
1466 fiat_p256_mulx_u32(&mut x166, &mut x167, x2, (*IndexConst(arg1).index(0)));
1467 let mut x168: u32 = 0;
1468 let mut x169: fiat_p256_u1 = 0;
1469 fiat_p256_addcarryx_u32(&mut x168, &mut x169, 0x0, x167, x164);
1470 let mut x170: u32 = 0;
1471 let mut x171: fiat_p256_u1 = 0;
1472 fiat_p256_addcarryx_u32(&mut x170, &mut x171, x169, x165, x162);
1473 let mut x172: u32 = 0;
1474 let mut x173: fiat_p256_u1 = 0;
1475 fiat_p256_addcarryx_u32(&mut x172, &mut x173, x171, x163, x160);
1476 let mut x174: u32 = 0;
1477 let mut x175: fiat_p256_u1 = 0;
1478 fiat_p256_addcarryx_u32(&mut x174, &mut x175, x173, x161, x158);
1479 let mut x176: u32 = 0;
1480 let mut x177: fiat_p256_u1 = 0;
1481 fiat_p256_addcarryx_u32(&mut x176, &mut x177, x175, x159, x156);
1482 let mut x178: u32 = 0;
1483 let mut x179: fiat_p256_u1 = 0;
1484 fiat_p256_addcarryx_u32(&mut x178, &mut x179, x177, x157, x154);
1485 let mut x180: u32 = 0;
1486 let mut x181: fiat_p256_u1 = 0;
1487 fiat_p256_addcarryx_u32(&mut x180, &mut x181, x179, x155, x152);
1488 let x182: u32 = ((x181 as u32) + x153);
1489 let mut x183: u32 = 0;
1490 let mut x184: fiat_p256_u1 = 0;
1491 fiat_p256_addcarryx_u32(&mut x183, &mut x184, 0x0, x135, x166);
1492 let mut x185: u32 = 0;
1493 let mut x186: fiat_p256_u1 = 0;
1494 fiat_p256_addcarryx_u32(&mut x185, &mut x186, x184, x137, x168);
1495 let mut x187: u32 = 0;
1496 let mut x188: fiat_p256_u1 = 0;
1497 fiat_p256_addcarryx_u32(&mut x187, &mut x188, x186, x139, x170);
1498 let mut x189: u32 = 0;
1499 let mut x190: fiat_p256_u1 = 0;
1500 fiat_p256_addcarryx_u32(&mut x189, &mut x190, x188, x141, x172);
1501 let mut x191: u32 = 0;
1502 let mut x192: fiat_p256_u1 = 0;
1503 fiat_p256_addcarryx_u32(&mut x191, &mut x192, x190, x143, x174);
1504 let mut x193: u32 = 0;
1505 let mut x194: fiat_p256_u1 = 0;
1506 fiat_p256_addcarryx_u32(&mut x193, &mut x194, x192, x145, x176);
1507 let mut x195: u32 = 0;
1508 let mut x196: fiat_p256_u1 = 0;
1509 fiat_p256_addcarryx_u32(&mut x195, &mut x196, x194, x147, x178);
1510 let mut x197: u32 = 0;
1511 let mut x198: fiat_p256_u1 = 0;
1512 fiat_p256_addcarryx_u32(&mut x197, &mut x198, x196, x149, x180);
1513 let mut x199: u32 = 0;
1514 let mut x200: fiat_p256_u1 = 0;
1515 fiat_p256_addcarryx_u32(&mut x199, &mut x200, x198, x151, x182);
1516 let mut x201: u32 = 0;
1517 let mut x202: u32 = 0;
1518 fiat_p256_mulx_u32(&mut x201, &mut x202, x183, 0xffffffff);
1519 let mut x203: u32 = 0;
1520 let mut x204: u32 = 0;
1521 fiat_p256_mulx_u32(&mut x203, &mut x204, x183, 0xffffffff);
1522 let mut x205: u32 = 0;
1523 let mut x206: u32 = 0;
1524 fiat_p256_mulx_u32(&mut x205, &mut x206, x183, 0xffffffff);
1525 let mut x207: u32 = 0;
1526 let mut x208: u32 = 0;
1527 fiat_p256_mulx_u32(&mut x207, &mut x208, x183, 0xffffffff);
1528 let mut x209: u32 = 0;
1529 let mut x210: fiat_p256_u1 = 0;
1530 fiat_p256_addcarryx_u32(&mut x209, &mut x210, 0x0, x208, x205);
1531 let mut x211: u32 = 0;
1532 let mut x212: fiat_p256_u1 = 0;
1533 fiat_p256_addcarryx_u32(&mut x211, &mut x212, x210, x206, x203);
1534 let x213: u32 = ((x212 as u32) + x204);
1535 let mut x214: u32 = 0;
1536 let mut x215: fiat_p256_u1 = 0;
1537 fiat_p256_addcarryx_u32(&mut x214, &mut x215, 0x0, x183, x207);
1538 let mut x216: u32 = 0;
1539 let mut x217: fiat_p256_u1 = 0;
1540 fiat_p256_addcarryx_u32(&mut x216, &mut x217, x215, x185, x209);
1541 let mut x218: u32 = 0;
1542 let mut x219: fiat_p256_u1 = 0;
1543 fiat_p256_addcarryx_u32(&mut x218, &mut x219, x217, x187, x211);
1544 let mut x220: u32 = 0;
1545 let mut x221: fiat_p256_u1 = 0;
1546 fiat_p256_addcarryx_u32(&mut x220, &mut x221, x219, x189, x213);
1547 let mut x222: u32 = 0;
1548 let mut x223: fiat_p256_u1 = 0;
1549 fiat_p256_addcarryx_u32(&mut x222, &mut x223, x221, x191, (0x0 as u32));
1550 let mut x224: u32 = 0;
1551 let mut x225: fiat_p256_u1 = 0;
1552 fiat_p256_addcarryx_u32(&mut x224, &mut x225, x223, x193, (0x0 as u32));
1553 let mut x226: u32 = 0;
1554 let mut x227: fiat_p256_u1 = 0;
1555 fiat_p256_addcarryx_u32(&mut x226, &mut x227, x225, x195, x183);
1556 let mut x228: u32 = 0;
1557 let mut x229: fiat_p256_u1 = 0;
1558 fiat_p256_addcarryx_u32(&mut x228, &mut x229, x227, x197, x201);
1559 let mut x230: u32 = 0;
1560 let mut x231: fiat_p256_u1 = 0;
1561 fiat_p256_addcarryx_u32(&mut x230, &mut x231, x229, x199, x202);
1562 let x232: u32 = ((x231 as u32) + (x200 as u32));
1563 let mut x233: u32 = 0;
1564 let mut x234: u32 = 0;
1565 fiat_p256_mulx_u32(&mut x233, &mut x234, x3, (*IndexConst(arg1).index(7)));
1566 let mut x235: u32 = 0;
1567 let mut x236: u32 = 0;
1568 fiat_p256_mulx_u32(&mut x235, &mut x236, x3, (*IndexConst(arg1).index(6)));
1569 let mut x237: u32 = 0;
1570 let mut x238: u32 = 0;
1571 fiat_p256_mulx_u32(&mut x237, &mut x238, x3, (*IndexConst(arg1).index(5)));
1572 let mut x239: u32 = 0;
1573 let mut x240: u32 = 0;
1574 fiat_p256_mulx_u32(&mut x239, &mut x240, x3, (*IndexConst(arg1).index(4)));
1575 let mut x241: u32 = 0;
1576 let mut x242: u32 = 0;
1577 fiat_p256_mulx_u32(&mut x241, &mut x242, x3, (*IndexConst(arg1).index(3)));
1578 let mut x243: u32 = 0;
1579 let mut x244: u32 = 0;
1580 fiat_p256_mulx_u32(&mut x243, &mut x244, x3, (*IndexConst(arg1).index(2)));
1581 let mut x245: u32 = 0;
1582 let mut x246: u32 = 0;
1583 fiat_p256_mulx_u32(&mut x245, &mut x246, x3, (*IndexConst(arg1).index(1)));
1584 let mut x247: u32 = 0;
1585 let mut x248: u32 = 0;
1586 fiat_p256_mulx_u32(&mut x247, &mut x248, x3, (*IndexConst(arg1).index(0)));
1587 let mut x249: u32 = 0;
1588 let mut x250: fiat_p256_u1 = 0;
1589 fiat_p256_addcarryx_u32(&mut x249, &mut x250, 0x0, x248, x245);
1590 let mut x251: u32 = 0;
1591 let mut x252: fiat_p256_u1 = 0;
1592 fiat_p256_addcarryx_u32(&mut x251, &mut x252, x250, x246, x243);
1593 let mut x253: u32 = 0;
1594 let mut x254: fiat_p256_u1 = 0;
1595 fiat_p256_addcarryx_u32(&mut x253, &mut x254, x252, x244, x241);
1596 let mut x255: u32 = 0;
1597 let mut x256: fiat_p256_u1 = 0;
1598 fiat_p256_addcarryx_u32(&mut x255, &mut x256, x254, x242, x239);
1599 let mut x257: u32 = 0;
1600 let mut x258: fiat_p256_u1 = 0;
1601 fiat_p256_addcarryx_u32(&mut x257, &mut x258, x256, x240, x237);
1602 let mut x259: u32 = 0;
1603 let mut x260: fiat_p256_u1 = 0;
1604 fiat_p256_addcarryx_u32(&mut x259, &mut x260, x258, x238, x235);
1605 let mut x261: u32 = 0;
1606 let mut x262: fiat_p256_u1 = 0;
1607 fiat_p256_addcarryx_u32(&mut x261, &mut x262, x260, x236, x233);
1608 let x263: u32 = ((x262 as u32) + x234);
1609 let mut x264: u32 = 0;
1610 let mut x265: fiat_p256_u1 = 0;
1611 fiat_p256_addcarryx_u32(&mut x264, &mut x265, 0x0, x216, x247);
1612 let mut x266: u32 = 0;
1613 let mut x267: fiat_p256_u1 = 0;
1614 fiat_p256_addcarryx_u32(&mut x266, &mut x267, x265, x218, x249);
1615 let mut x268: u32 = 0;
1616 let mut x269: fiat_p256_u1 = 0;
1617 fiat_p256_addcarryx_u32(&mut x268, &mut x269, x267, x220, x251);
1618 let mut x270: u32 = 0;
1619 let mut x271: fiat_p256_u1 = 0;
1620 fiat_p256_addcarryx_u32(&mut x270, &mut x271, x269, x222, x253);
1621 let mut x272: u32 = 0;
1622 let mut x273: fiat_p256_u1 = 0;
1623 fiat_p256_addcarryx_u32(&mut x272, &mut x273, x271, x224, x255);
1624 let mut x274: u32 = 0;
1625 let mut x275: fiat_p256_u1 = 0;
1626 fiat_p256_addcarryx_u32(&mut x274, &mut x275, x273, x226, x257);
1627 let mut x276: u32 = 0;
1628 let mut x277: fiat_p256_u1 = 0;
1629 fiat_p256_addcarryx_u32(&mut x276, &mut x277, x275, x228, x259);
1630 let mut x278: u32 = 0;
1631 let mut x279: fiat_p256_u1 = 0;
1632 fiat_p256_addcarryx_u32(&mut x278, &mut x279, x277, x230, x261);
1633 let mut x280: u32 = 0;
1634 let mut x281: fiat_p256_u1 = 0;
1635 fiat_p256_addcarryx_u32(&mut x280, &mut x281, x279, x232, x263);
1636 let mut x282: u32 = 0;
1637 let mut x283: u32 = 0;
1638 fiat_p256_mulx_u32(&mut x282, &mut x283, x264, 0xffffffff);
1639 let mut x284: u32 = 0;
1640 let mut x285: u32 = 0;
1641 fiat_p256_mulx_u32(&mut x284, &mut x285, x264, 0xffffffff);
1642 let mut x286: u32 = 0;
1643 let mut x287: u32 = 0;
1644 fiat_p256_mulx_u32(&mut x286, &mut x287, x264, 0xffffffff);
1645 let mut x288: u32 = 0;
1646 let mut x289: u32 = 0;
1647 fiat_p256_mulx_u32(&mut x288, &mut x289, x264, 0xffffffff);
1648 let mut x290: u32 = 0;
1649 let mut x291: fiat_p256_u1 = 0;
1650 fiat_p256_addcarryx_u32(&mut x290, &mut x291, 0x0, x289, x286);
1651 let mut x292: u32 = 0;
1652 let mut x293: fiat_p256_u1 = 0;
1653 fiat_p256_addcarryx_u32(&mut x292, &mut x293, x291, x287, x284);
1654 let x294: u32 = ((x293 as u32) + x285);
1655 let mut x295: u32 = 0;
1656 let mut x296: fiat_p256_u1 = 0;
1657 fiat_p256_addcarryx_u32(&mut x295, &mut x296, 0x0, x264, x288);
1658 let mut x297: u32 = 0;
1659 let mut x298: fiat_p256_u1 = 0;
1660 fiat_p256_addcarryx_u32(&mut x297, &mut x298, x296, x266, x290);
1661 let mut x299: u32 = 0;
1662 let mut x300: fiat_p256_u1 = 0;
1663 fiat_p256_addcarryx_u32(&mut x299, &mut x300, x298, x268, x292);
1664 let mut x301: u32 = 0;
1665 let mut x302: fiat_p256_u1 = 0;
1666 fiat_p256_addcarryx_u32(&mut x301, &mut x302, x300, x270, x294);
1667 let mut x303: u32 = 0;
1668 let mut x304: fiat_p256_u1 = 0;
1669 fiat_p256_addcarryx_u32(&mut x303, &mut x304, x302, x272, (0x0 as u32));
1670 let mut x305: u32 = 0;
1671 let mut x306: fiat_p256_u1 = 0;
1672 fiat_p256_addcarryx_u32(&mut x305, &mut x306, x304, x274, (0x0 as u32));
1673 let mut x307: u32 = 0;
1674 let mut x308: fiat_p256_u1 = 0;
1675 fiat_p256_addcarryx_u32(&mut x307, &mut x308, x306, x276, x264);
1676 let mut x309: u32 = 0;
1677 let mut x310: fiat_p256_u1 = 0;
1678 fiat_p256_addcarryx_u32(&mut x309, &mut x310, x308, x278, x282);
1679 let mut x311: u32 = 0;
1680 let mut x312: fiat_p256_u1 = 0;
1681 fiat_p256_addcarryx_u32(&mut x311, &mut x312, x310, x280, x283);
1682 let x313: u32 = ((x312 as u32) + (x281 as u32));
1683 let mut x314: u32 = 0;
1684 let mut x315: u32 = 0;
1685 fiat_p256_mulx_u32(&mut x314, &mut x315, x4, (*IndexConst(arg1).index(7)));
1686 let mut x316: u32 = 0;
1687 let mut x317: u32 = 0;
1688 fiat_p256_mulx_u32(&mut x316, &mut x317, x4, (*IndexConst(arg1).index(6)));
1689 let mut x318: u32 = 0;
1690 let mut x319: u32 = 0;
1691 fiat_p256_mulx_u32(&mut x318, &mut x319, x4, (*IndexConst(arg1).index(5)));
1692 let mut x320: u32 = 0;
1693 let mut x321: u32 = 0;
1694 fiat_p256_mulx_u32(&mut x320, &mut x321, x4, (*IndexConst(arg1).index(4)));
1695 let mut x322: u32 = 0;
1696 let mut x323: u32 = 0;
1697 fiat_p256_mulx_u32(&mut x322, &mut x323, x4, (*IndexConst(arg1).index(3)));
1698 let mut x324: u32 = 0;
1699 let mut x325: u32 = 0;
1700 fiat_p256_mulx_u32(&mut x324, &mut x325, x4, (*IndexConst(arg1).index(2)));
1701 let mut x326: u32 = 0;
1702 let mut x327: u32 = 0;
1703 fiat_p256_mulx_u32(&mut x326, &mut x327, x4, (*IndexConst(arg1).index(1)));
1704 let mut x328: u32 = 0;
1705 let mut x329: u32 = 0;
1706 fiat_p256_mulx_u32(&mut x328, &mut x329, x4, (*IndexConst(arg1).index(0)));
1707 let mut x330: u32 = 0;
1708 let mut x331: fiat_p256_u1 = 0;
1709 fiat_p256_addcarryx_u32(&mut x330, &mut x331, 0x0, x329, x326);
1710 let mut x332: u32 = 0;
1711 let mut x333: fiat_p256_u1 = 0;
1712 fiat_p256_addcarryx_u32(&mut x332, &mut x333, x331, x327, x324);
1713 let mut x334: u32 = 0;
1714 let mut x335: fiat_p256_u1 = 0;
1715 fiat_p256_addcarryx_u32(&mut x334, &mut x335, x333, x325, x322);
1716 let mut x336: u32 = 0;
1717 let mut x337: fiat_p256_u1 = 0;
1718 fiat_p256_addcarryx_u32(&mut x336, &mut x337, x335, x323, x320);
1719 let mut x338: u32 = 0;
1720 let mut x339: fiat_p256_u1 = 0;
1721 fiat_p256_addcarryx_u32(&mut x338, &mut x339, x337, x321, x318);
1722 let mut x340: u32 = 0;
1723 let mut x341: fiat_p256_u1 = 0;
1724 fiat_p256_addcarryx_u32(&mut x340, &mut x341, x339, x319, x316);
1725 let mut x342: u32 = 0;
1726 let mut x343: fiat_p256_u1 = 0;
1727 fiat_p256_addcarryx_u32(&mut x342, &mut x343, x341, x317, x314);
1728 let x344: u32 = ((x343 as u32) + x315);
1729 let mut x345: u32 = 0;
1730 let mut x346: fiat_p256_u1 = 0;
1731 fiat_p256_addcarryx_u32(&mut x345, &mut x346, 0x0, x297, x328);
1732 let mut x347: u32 = 0;
1733 let mut x348: fiat_p256_u1 = 0;
1734 fiat_p256_addcarryx_u32(&mut x347, &mut x348, x346, x299, x330);
1735 let mut x349: u32 = 0;
1736 let mut x350: fiat_p256_u1 = 0;
1737 fiat_p256_addcarryx_u32(&mut x349, &mut x350, x348, x301, x332);
1738 let mut x351: u32 = 0;
1739 let mut x352: fiat_p256_u1 = 0;
1740 fiat_p256_addcarryx_u32(&mut x351, &mut x352, x350, x303, x334);
1741 let mut x353: u32 = 0;
1742 let mut x354: fiat_p256_u1 = 0;
1743 fiat_p256_addcarryx_u32(&mut x353, &mut x354, x352, x305, x336);
1744 let mut x355: u32 = 0;
1745 let mut x356: fiat_p256_u1 = 0;
1746 fiat_p256_addcarryx_u32(&mut x355, &mut x356, x354, x307, x338);
1747 let mut x357: u32 = 0;
1748 let mut x358: fiat_p256_u1 = 0;
1749 fiat_p256_addcarryx_u32(&mut x357, &mut x358, x356, x309, x340);
1750 let mut x359: u32 = 0;
1751 let mut x360: fiat_p256_u1 = 0;
1752 fiat_p256_addcarryx_u32(&mut x359, &mut x360, x358, x311, x342);
1753 let mut x361: u32 = 0;
1754 let mut x362: fiat_p256_u1 = 0;
1755 fiat_p256_addcarryx_u32(&mut x361, &mut x362, x360, x313, x344);
1756 let mut x363: u32 = 0;
1757 let mut x364: u32 = 0;
1758 fiat_p256_mulx_u32(&mut x363, &mut x364, x345, 0xffffffff);
1759 let mut x365: u32 = 0;
1760 let mut x366: u32 = 0;
1761 fiat_p256_mulx_u32(&mut x365, &mut x366, x345, 0xffffffff);
1762 let mut x367: u32 = 0;
1763 let mut x368: u32 = 0;
1764 fiat_p256_mulx_u32(&mut x367, &mut x368, x345, 0xffffffff);
1765 let mut x369: u32 = 0;
1766 let mut x370: u32 = 0;
1767 fiat_p256_mulx_u32(&mut x369, &mut x370, x345, 0xffffffff);
1768 let mut x371: u32 = 0;
1769 let mut x372: fiat_p256_u1 = 0;
1770 fiat_p256_addcarryx_u32(&mut x371, &mut x372, 0x0, x370, x367);
1771 let mut x373: u32 = 0;
1772 let mut x374: fiat_p256_u1 = 0;
1773 fiat_p256_addcarryx_u32(&mut x373, &mut x374, x372, x368, x365);
1774 let x375: u32 = ((x374 as u32) + x366);
1775 let mut x376: u32 = 0;
1776 let mut x377: fiat_p256_u1 = 0;
1777 fiat_p256_addcarryx_u32(&mut x376, &mut x377, 0x0, x345, x369);
1778 let mut x378: u32 = 0;
1779 let mut x379: fiat_p256_u1 = 0;
1780 fiat_p256_addcarryx_u32(&mut x378, &mut x379, x377, x347, x371);
1781 let mut x380: u32 = 0;
1782 let mut x381: fiat_p256_u1 = 0;
1783 fiat_p256_addcarryx_u32(&mut x380, &mut x381, x379, x349, x373);
1784 let mut x382: u32 = 0;
1785 let mut x383: fiat_p256_u1 = 0;
1786 fiat_p256_addcarryx_u32(&mut x382, &mut x383, x381, x351, x375);
1787 let mut x384: u32 = 0;
1788 let mut x385: fiat_p256_u1 = 0;
1789 fiat_p256_addcarryx_u32(&mut x384, &mut x385, x383, x353, (0x0 as u32));
1790 let mut x386: u32 = 0;
1791 let mut x387: fiat_p256_u1 = 0;
1792 fiat_p256_addcarryx_u32(&mut x386, &mut x387, x385, x355, (0x0 as u32));
1793 let mut x388: u32 = 0;
1794 let mut x389: fiat_p256_u1 = 0;
1795 fiat_p256_addcarryx_u32(&mut x388, &mut x389, x387, x357, x345);
1796 let mut x390: u32 = 0;
1797 let mut x391: fiat_p256_u1 = 0;
1798 fiat_p256_addcarryx_u32(&mut x390, &mut x391, x389, x359, x363);
1799 let mut x392: u32 = 0;
1800 let mut x393: fiat_p256_u1 = 0;
1801 fiat_p256_addcarryx_u32(&mut x392, &mut x393, x391, x361, x364);
1802 let x394: u32 = ((x393 as u32) + (x362 as u32));
1803 let mut x395: u32 = 0;
1804 let mut x396: u32 = 0;
1805 fiat_p256_mulx_u32(&mut x395, &mut x396, x5, (*IndexConst(arg1).index(7)));
1806 let mut x397: u32 = 0;
1807 let mut x398: u32 = 0;
1808 fiat_p256_mulx_u32(&mut x397, &mut x398, x5, (*IndexConst(arg1).index(6)));
1809 let mut x399: u32 = 0;
1810 let mut x400: u32 = 0;
1811 fiat_p256_mulx_u32(&mut x399, &mut x400, x5, (*IndexConst(arg1).index(5)));
1812 let mut x401: u32 = 0;
1813 let mut x402: u32 = 0;
1814 fiat_p256_mulx_u32(&mut x401, &mut x402, x5, (*IndexConst(arg1).index(4)));
1815 let mut x403: u32 = 0;
1816 let mut x404: u32 = 0;
1817 fiat_p256_mulx_u32(&mut x403, &mut x404, x5, (*IndexConst(arg1).index(3)));
1818 let mut x405: u32 = 0;
1819 let mut x406: u32 = 0;
1820 fiat_p256_mulx_u32(&mut x405, &mut x406, x5, (*IndexConst(arg1).index(2)));
1821 let mut x407: u32 = 0;
1822 let mut x408: u32 = 0;
1823 fiat_p256_mulx_u32(&mut x407, &mut x408, x5, (*IndexConst(arg1).index(1)));
1824 let mut x409: u32 = 0;
1825 let mut x410: u32 = 0;
1826 fiat_p256_mulx_u32(&mut x409, &mut x410, x5, (*IndexConst(arg1).index(0)));
1827 let mut x411: u32 = 0;
1828 let mut x412: fiat_p256_u1 = 0;
1829 fiat_p256_addcarryx_u32(&mut x411, &mut x412, 0x0, x410, x407);
1830 let mut x413: u32 = 0;
1831 let mut x414: fiat_p256_u1 = 0;
1832 fiat_p256_addcarryx_u32(&mut x413, &mut x414, x412, x408, x405);
1833 let mut x415: u32 = 0;
1834 let mut x416: fiat_p256_u1 = 0;
1835 fiat_p256_addcarryx_u32(&mut x415, &mut x416, x414, x406, x403);
1836 let mut x417: u32 = 0;
1837 let mut x418: fiat_p256_u1 = 0;
1838 fiat_p256_addcarryx_u32(&mut x417, &mut x418, x416, x404, x401);
1839 let mut x419: u32 = 0;
1840 let mut x420: fiat_p256_u1 = 0;
1841 fiat_p256_addcarryx_u32(&mut x419, &mut x420, x418, x402, x399);
1842 let mut x421: u32 = 0;
1843 let mut x422: fiat_p256_u1 = 0;
1844 fiat_p256_addcarryx_u32(&mut x421, &mut x422, x420, x400, x397);
1845 let mut x423: u32 = 0;
1846 let mut x424: fiat_p256_u1 = 0;
1847 fiat_p256_addcarryx_u32(&mut x423, &mut x424, x422, x398, x395);
1848 let x425: u32 = ((x424 as u32) + x396);
1849 let mut x426: u32 = 0;
1850 let mut x427: fiat_p256_u1 = 0;
1851 fiat_p256_addcarryx_u32(&mut x426, &mut x427, 0x0, x378, x409);
1852 let mut x428: u32 = 0;
1853 let mut x429: fiat_p256_u1 = 0;
1854 fiat_p256_addcarryx_u32(&mut x428, &mut x429, x427, x380, x411);
1855 let mut x430: u32 = 0;
1856 let mut x431: fiat_p256_u1 = 0;
1857 fiat_p256_addcarryx_u32(&mut x430, &mut x431, x429, x382, x413);
1858 let mut x432: u32 = 0;
1859 let mut x433: fiat_p256_u1 = 0;
1860 fiat_p256_addcarryx_u32(&mut x432, &mut x433, x431, x384, x415);
1861 let mut x434: u32 = 0;
1862 let mut x435: fiat_p256_u1 = 0;
1863 fiat_p256_addcarryx_u32(&mut x434, &mut x435, x433, x386, x417);
1864 let mut x436: u32 = 0;
1865 let mut x437: fiat_p256_u1 = 0;
1866 fiat_p256_addcarryx_u32(&mut x436, &mut x437, x435, x388, x419);
1867 let mut x438: u32 = 0;
1868 let mut x439: fiat_p256_u1 = 0;
1869 fiat_p256_addcarryx_u32(&mut x438, &mut x439, x437, x390, x421);
1870 let mut x440: u32 = 0;
1871 let mut x441: fiat_p256_u1 = 0;
1872 fiat_p256_addcarryx_u32(&mut x440, &mut x441, x439, x392, x423);
1873 let mut x442: u32 = 0;
1874 let mut x443: fiat_p256_u1 = 0;
1875 fiat_p256_addcarryx_u32(&mut x442, &mut x443, x441, x394, x425);
1876 let mut x444: u32 = 0;
1877 let mut x445: u32 = 0;
1878 fiat_p256_mulx_u32(&mut x444, &mut x445, x426, 0xffffffff);
1879 let mut x446: u32 = 0;
1880 let mut x447: u32 = 0;
1881 fiat_p256_mulx_u32(&mut x446, &mut x447, x426, 0xffffffff);
1882 let mut x448: u32 = 0;
1883 let mut x449: u32 = 0;
1884 fiat_p256_mulx_u32(&mut x448, &mut x449, x426, 0xffffffff);
1885 let mut x450: u32 = 0;
1886 let mut x451: u32 = 0;
1887 fiat_p256_mulx_u32(&mut x450, &mut x451, x426, 0xffffffff);
1888 let mut x452: u32 = 0;
1889 let mut x453: fiat_p256_u1 = 0;
1890 fiat_p256_addcarryx_u32(&mut x452, &mut x453, 0x0, x451, x448);
1891 let mut x454: u32 = 0;
1892 let mut x455: fiat_p256_u1 = 0;
1893 fiat_p256_addcarryx_u32(&mut x454, &mut x455, x453, x449, x446);
1894 let x456: u32 = ((x455 as u32) + x447);
1895 let mut x457: u32 = 0;
1896 let mut x458: fiat_p256_u1 = 0;
1897 fiat_p256_addcarryx_u32(&mut x457, &mut x458, 0x0, x426, x450);
1898 let mut x459: u32 = 0;
1899 let mut x460: fiat_p256_u1 = 0;
1900 fiat_p256_addcarryx_u32(&mut x459, &mut x460, x458, x428, x452);
1901 let mut x461: u32 = 0;
1902 let mut x462: fiat_p256_u1 = 0;
1903 fiat_p256_addcarryx_u32(&mut x461, &mut x462, x460, x430, x454);
1904 let mut x463: u32 = 0;
1905 let mut x464: fiat_p256_u1 = 0;
1906 fiat_p256_addcarryx_u32(&mut x463, &mut x464, x462, x432, x456);
1907 let mut x465: u32 = 0;
1908 let mut x466: fiat_p256_u1 = 0;
1909 fiat_p256_addcarryx_u32(&mut x465, &mut x466, x464, x434, (0x0 as u32));
1910 let mut x467: u32 = 0;
1911 let mut x468: fiat_p256_u1 = 0;
1912 fiat_p256_addcarryx_u32(&mut x467, &mut x468, x466, x436, (0x0 as u32));
1913 let mut x469: u32 = 0;
1914 let mut x470: fiat_p256_u1 = 0;
1915 fiat_p256_addcarryx_u32(&mut x469, &mut x470, x468, x438, x426);
1916 let mut x471: u32 = 0;
1917 let mut x472: fiat_p256_u1 = 0;
1918 fiat_p256_addcarryx_u32(&mut x471, &mut x472, x470, x440, x444);
1919 let mut x473: u32 = 0;
1920 let mut x474: fiat_p256_u1 = 0;
1921 fiat_p256_addcarryx_u32(&mut x473, &mut x474, x472, x442, x445);
1922 let x475: u32 = ((x474 as u32) + (x443 as u32));
1923 let mut x476: u32 = 0;
1924 let mut x477: u32 = 0;
1925 fiat_p256_mulx_u32(&mut x476, &mut x477, x6, (*IndexConst(arg1).index(7)));
1926 let mut x478: u32 = 0;
1927 let mut x479: u32 = 0;
1928 fiat_p256_mulx_u32(&mut x478, &mut x479, x6, (*IndexConst(arg1).index(6)));
1929 let mut x480: u32 = 0;
1930 let mut x481: u32 = 0;
1931 fiat_p256_mulx_u32(&mut x480, &mut x481, x6, (*IndexConst(arg1).index(5)));
1932 let mut x482: u32 = 0;
1933 let mut x483: u32 = 0;
1934 fiat_p256_mulx_u32(&mut x482, &mut x483, x6, (*IndexConst(arg1).index(4)));
1935 let mut x484: u32 = 0;
1936 let mut x485: u32 = 0;
1937 fiat_p256_mulx_u32(&mut x484, &mut x485, x6, (*IndexConst(arg1).index(3)));
1938 let mut x486: u32 = 0;
1939 let mut x487: u32 = 0;
1940 fiat_p256_mulx_u32(&mut x486, &mut x487, x6, (*IndexConst(arg1).index(2)));
1941 let mut x488: u32 = 0;
1942 let mut x489: u32 = 0;
1943 fiat_p256_mulx_u32(&mut x488, &mut x489, x6, (*IndexConst(arg1).index(1)));
1944 let mut x490: u32 = 0;
1945 let mut x491: u32 = 0;
1946 fiat_p256_mulx_u32(&mut x490, &mut x491, x6, (*IndexConst(arg1).index(0)));
1947 let mut x492: u32 = 0;
1948 let mut x493: fiat_p256_u1 = 0;
1949 fiat_p256_addcarryx_u32(&mut x492, &mut x493, 0x0, x491, x488);
1950 let mut x494: u32 = 0;
1951 let mut x495: fiat_p256_u1 = 0;
1952 fiat_p256_addcarryx_u32(&mut x494, &mut x495, x493, x489, x486);
1953 let mut x496: u32 = 0;
1954 let mut x497: fiat_p256_u1 = 0;
1955 fiat_p256_addcarryx_u32(&mut x496, &mut x497, x495, x487, x484);
1956 let mut x498: u32 = 0;
1957 let mut x499: fiat_p256_u1 = 0;
1958 fiat_p256_addcarryx_u32(&mut x498, &mut x499, x497, x485, x482);
1959 let mut x500: u32 = 0;
1960 let mut x501: fiat_p256_u1 = 0;
1961 fiat_p256_addcarryx_u32(&mut x500, &mut x501, x499, x483, x480);
1962 let mut x502: u32 = 0;
1963 let mut x503: fiat_p256_u1 = 0;
1964 fiat_p256_addcarryx_u32(&mut x502, &mut x503, x501, x481, x478);
1965 let mut x504: u32 = 0;
1966 let mut x505: fiat_p256_u1 = 0;
1967 fiat_p256_addcarryx_u32(&mut x504, &mut x505, x503, x479, x476);
1968 let x506: u32 = ((x505 as u32) + x477);
1969 let mut x507: u32 = 0;
1970 let mut x508: fiat_p256_u1 = 0;
1971 fiat_p256_addcarryx_u32(&mut x507, &mut x508, 0x0, x459, x490);
1972 let mut x509: u32 = 0;
1973 let mut x510: fiat_p256_u1 = 0;
1974 fiat_p256_addcarryx_u32(&mut x509, &mut x510, x508, x461, x492);
1975 let mut x511: u32 = 0;
1976 let mut x512: fiat_p256_u1 = 0;
1977 fiat_p256_addcarryx_u32(&mut x511, &mut x512, x510, x463, x494);
1978 let mut x513: u32 = 0;
1979 let mut x514: fiat_p256_u1 = 0;
1980 fiat_p256_addcarryx_u32(&mut x513, &mut x514, x512, x465, x496);
1981 let mut x515: u32 = 0;
1982 let mut x516: fiat_p256_u1 = 0;
1983 fiat_p256_addcarryx_u32(&mut x515, &mut x516, x514, x467, x498);
1984 let mut x517: u32 = 0;
1985 let mut x518: fiat_p256_u1 = 0;
1986 fiat_p256_addcarryx_u32(&mut x517, &mut x518, x516, x469, x500);
1987 let mut x519: u32 = 0;
1988 let mut x520: fiat_p256_u1 = 0;
1989 fiat_p256_addcarryx_u32(&mut x519, &mut x520, x518, x471, x502);
1990 let mut x521: u32 = 0;
1991 let mut x522: fiat_p256_u1 = 0;
1992 fiat_p256_addcarryx_u32(&mut x521, &mut x522, x520, x473, x504);
1993 let mut x523: u32 = 0;
1994 let mut x524: fiat_p256_u1 = 0;
1995 fiat_p256_addcarryx_u32(&mut x523, &mut x524, x522, x475, x506);
1996 let mut x525: u32 = 0;
1997 let mut x526: u32 = 0;
1998 fiat_p256_mulx_u32(&mut x525, &mut x526, x507, 0xffffffff);
1999 let mut x527: u32 = 0;
2000 let mut x528: u32 = 0;
2001 fiat_p256_mulx_u32(&mut x527, &mut x528, x507, 0xffffffff);
2002 let mut x529: u32 = 0;
2003 let mut x530: u32 = 0;
2004 fiat_p256_mulx_u32(&mut x529, &mut x530, x507, 0xffffffff);
2005 let mut x531: u32 = 0;
2006 let mut x532: u32 = 0;
2007 fiat_p256_mulx_u32(&mut x531, &mut x532, x507, 0xffffffff);
2008 let mut x533: u32 = 0;
2009 let mut x534: fiat_p256_u1 = 0;
2010 fiat_p256_addcarryx_u32(&mut x533, &mut x534, 0x0, x532, x529);
2011 let mut x535: u32 = 0;
2012 let mut x536: fiat_p256_u1 = 0;
2013 fiat_p256_addcarryx_u32(&mut x535, &mut x536, x534, x530, x527);
2014 let x537: u32 = ((x536 as u32) + x528);
2015 let mut x538: u32 = 0;
2016 let mut x539: fiat_p256_u1 = 0;
2017 fiat_p256_addcarryx_u32(&mut x538, &mut x539, 0x0, x507, x531);
2018 let mut x540: u32 = 0;
2019 let mut x541: fiat_p256_u1 = 0;
2020 fiat_p256_addcarryx_u32(&mut x540, &mut x541, x539, x509, x533);
2021 let mut x542: u32 = 0;
2022 let mut x543: fiat_p256_u1 = 0;
2023 fiat_p256_addcarryx_u32(&mut x542, &mut x543, x541, x511, x535);
2024 let mut x544: u32 = 0;
2025 let mut x545: fiat_p256_u1 = 0;
2026 fiat_p256_addcarryx_u32(&mut x544, &mut x545, x543, x513, x537);
2027 let mut x546: u32 = 0;
2028 let mut x547: fiat_p256_u1 = 0;
2029 fiat_p256_addcarryx_u32(&mut x546, &mut x547, x545, x515, (0x0 as u32));
2030 let mut x548: u32 = 0;
2031 let mut x549: fiat_p256_u1 = 0;
2032 fiat_p256_addcarryx_u32(&mut x548, &mut x549, x547, x517, (0x0 as u32));
2033 let mut x550: u32 = 0;
2034 let mut x551: fiat_p256_u1 = 0;
2035 fiat_p256_addcarryx_u32(&mut x550, &mut x551, x549, x519, x507);
2036 let mut x552: u32 = 0;
2037 let mut x553: fiat_p256_u1 = 0;
2038 fiat_p256_addcarryx_u32(&mut x552, &mut x553, x551, x521, x525);
2039 let mut x554: u32 = 0;
2040 let mut x555: fiat_p256_u1 = 0;
2041 fiat_p256_addcarryx_u32(&mut x554, &mut x555, x553, x523, x526);
2042 let x556: u32 = ((x555 as u32) + (x524 as u32));
2043 let mut x557: u32 = 0;
2044 let mut x558: u32 = 0;
2045 fiat_p256_mulx_u32(&mut x557, &mut x558, x7, (*IndexConst(arg1).index(7)));
2046 let mut x559: u32 = 0;
2047 let mut x560: u32 = 0;
2048 fiat_p256_mulx_u32(&mut x559, &mut x560, x7, (*IndexConst(arg1).index(6)));
2049 let mut x561: u32 = 0;
2050 let mut x562: u32 = 0;
2051 fiat_p256_mulx_u32(&mut x561, &mut x562, x7, (*IndexConst(arg1).index(5)));
2052 let mut x563: u32 = 0;
2053 let mut x564: u32 = 0;
2054 fiat_p256_mulx_u32(&mut x563, &mut x564, x7, (*IndexConst(arg1).index(4)));
2055 let mut x565: u32 = 0;
2056 let mut x566: u32 = 0;
2057 fiat_p256_mulx_u32(&mut x565, &mut x566, x7, (*IndexConst(arg1).index(3)));
2058 let mut x567: u32 = 0;
2059 let mut x568: u32 = 0;
2060 fiat_p256_mulx_u32(&mut x567, &mut x568, x7, (*IndexConst(arg1).index(2)));
2061 let mut x569: u32 = 0;
2062 let mut x570: u32 = 0;
2063 fiat_p256_mulx_u32(&mut x569, &mut x570, x7, (*IndexConst(arg1).index(1)));
2064 let mut x571: u32 = 0;
2065 let mut x572: u32 = 0;
2066 fiat_p256_mulx_u32(&mut x571, &mut x572, x7, (*IndexConst(arg1).index(0)));
2067 let mut x573: u32 = 0;
2068 let mut x574: fiat_p256_u1 = 0;
2069 fiat_p256_addcarryx_u32(&mut x573, &mut x574, 0x0, x572, x569);
2070 let mut x575: u32 = 0;
2071 let mut x576: fiat_p256_u1 = 0;
2072 fiat_p256_addcarryx_u32(&mut x575, &mut x576, x574, x570, x567);
2073 let mut x577: u32 = 0;
2074 let mut x578: fiat_p256_u1 = 0;
2075 fiat_p256_addcarryx_u32(&mut x577, &mut x578, x576, x568, x565);
2076 let mut x579: u32 = 0;
2077 let mut x580: fiat_p256_u1 = 0;
2078 fiat_p256_addcarryx_u32(&mut x579, &mut x580, x578, x566, x563);
2079 let mut x581: u32 = 0;
2080 let mut x582: fiat_p256_u1 = 0;
2081 fiat_p256_addcarryx_u32(&mut x581, &mut x582, x580, x564, x561);
2082 let mut x583: u32 = 0;
2083 let mut x584: fiat_p256_u1 = 0;
2084 fiat_p256_addcarryx_u32(&mut x583, &mut x584, x582, x562, x559);
2085 let mut x585: u32 = 0;
2086 let mut x586: fiat_p256_u1 = 0;
2087 fiat_p256_addcarryx_u32(&mut x585, &mut x586, x584, x560, x557);
2088 let x587: u32 = ((x586 as u32) + x558);
2089 let mut x588: u32 = 0;
2090 let mut x589: fiat_p256_u1 = 0;
2091 fiat_p256_addcarryx_u32(&mut x588, &mut x589, 0x0, x540, x571);
2092 let mut x590: u32 = 0;
2093 let mut x591: fiat_p256_u1 = 0;
2094 fiat_p256_addcarryx_u32(&mut x590, &mut x591, x589, x542, x573);
2095 let mut x592: u32 = 0;
2096 let mut x593: fiat_p256_u1 = 0;
2097 fiat_p256_addcarryx_u32(&mut x592, &mut x593, x591, x544, x575);
2098 let mut x594: u32 = 0;
2099 let mut x595: fiat_p256_u1 = 0;
2100 fiat_p256_addcarryx_u32(&mut x594, &mut x595, x593, x546, x577);
2101 let mut x596: u32 = 0;
2102 let mut x597: fiat_p256_u1 = 0;
2103 fiat_p256_addcarryx_u32(&mut x596, &mut x597, x595, x548, x579);
2104 let mut x598: u32 = 0;
2105 let mut x599: fiat_p256_u1 = 0;
2106 fiat_p256_addcarryx_u32(&mut x598, &mut x599, x597, x550, x581);
2107 let mut x600: u32 = 0;
2108 let mut x601: fiat_p256_u1 = 0;
2109 fiat_p256_addcarryx_u32(&mut x600, &mut x601, x599, x552, x583);
2110 let mut x602: u32 = 0;
2111 let mut x603: fiat_p256_u1 = 0;
2112 fiat_p256_addcarryx_u32(&mut x602, &mut x603, x601, x554, x585);
2113 let mut x604: u32 = 0;
2114 let mut x605: fiat_p256_u1 = 0;
2115 fiat_p256_addcarryx_u32(&mut x604, &mut x605, x603, x556, x587);
2116 let mut x606: u32 = 0;
2117 let mut x607: u32 = 0;
2118 fiat_p256_mulx_u32(&mut x606, &mut x607, x588, 0xffffffff);
2119 let mut x608: u32 = 0;
2120 let mut x609: u32 = 0;
2121 fiat_p256_mulx_u32(&mut x608, &mut x609, x588, 0xffffffff);
2122 let mut x610: u32 = 0;
2123 let mut x611: u32 = 0;
2124 fiat_p256_mulx_u32(&mut x610, &mut x611, x588, 0xffffffff);
2125 let mut x612: u32 = 0;
2126 let mut x613: u32 = 0;
2127 fiat_p256_mulx_u32(&mut x612, &mut x613, x588, 0xffffffff);
2128 let mut x614: u32 = 0;
2129 let mut x615: fiat_p256_u1 = 0;
2130 fiat_p256_addcarryx_u32(&mut x614, &mut x615, 0x0, x613, x610);
2131 let mut x616: u32 = 0;
2132 let mut x617: fiat_p256_u1 = 0;
2133 fiat_p256_addcarryx_u32(&mut x616, &mut x617, x615, x611, x608);
2134 let x618: u32 = ((x617 as u32) + x609);
2135 let mut x619: u32 = 0;
2136 let mut x620: fiat_p256_u1 = 0;
2137 fiat_p256_addcarryx_u32(&mut x619, &mut x620, 0x0, x588, x612);
2138 let mut x621: u32 = 0;
2139 let mut x622: fiat_p256_u1 = 0;
2140 fiat_p256_addcarryx_u32(&mut x621, &mut x622, x620, x590, x614);
2141 let mut x623: u32 = 0;
2142 let mut x624: fiat_p256_u1 = 0;
2143 fiat_p256_addcarryx_u32(&mut x623, &mut x624, x622, x592, x616);
2144 let mut x625: u32 = 0;
2145 let mut x626: fiat_p256_u1 = 0;
2146 fiat_p256_addcarryx_u32(&mut x625, &mut x626, x624, x594, x618);
2147 let mut x627: u32 = 0;
2148 let mut x628: fiat_p256_u1 = 0;
2149 fiat_p256_addcarryx_u32(&mut x627, &mut x628, x626, x596, (0x0 as u32));
2150 let mut x629: u32 = 0;
2151 let mut x630: fiat_p256_u1 = 0;
2152 fiat_p256_addcarryx_u32(&mut x629, &mut x630, x628, x598, (0x0 as u32));
2153 let mut x631: u32 = 0;
2154 let mut x632: fiat_p256_u1 = 0;
2155 fiat_p256_addcarryx_u32(&mut x631, &mut x632, x630, x600, x588);
2156 let mut x633: u32 = 0;
2157 let mut x634: fiat_p256_u1 = 0;
2158 fiat_p256_addcarryx_u32(&mut x633, &mut x634, x632, x602, x606);
2159 let mut x635: u32 = 0;
2160 let mut x636: fiat_p256_u1 = 0;
2161 fiat_p256_addcarryx_u32(&mut x635, &mut x636, x634, x604, x607);
2162 let x637: u32 = ((x636 as u32) + (x605 as u32));
2163 let mut x638: u32 = 0;
2164 let mut x639: fiat_p256_u1 = 0;
2165 fiat_p256_subborrowx_u32(&mut x638, &mut x639, 0x0, x621, 0xffffffff);
2166 let mut x640: u32 = 0;
2167 let mut x641: fiat_p256_u1 = 0;
2168 fiat_p256_subborrowx_u32(&mut x640, &mut x641, x639, x623, 0xffffffff);
2169 let mut x642: u32 = 0;
2170 let mut x643: fiat_p256_u1 = 0;
2171 fiat_p256_subborrowx_u32(&mut x642, &mut x643, x641, x625, 0xffffffff);
2172 let mut x644: u32 = 0;
2173 let mut x645: fiat_p256_u1 = 0;
2174 fiat_p256_subborrowx_u32(&mut x644, &mut x645, x643, x627, (0x0 as u32));
2175 let mut x646: u32 = 0;
2176 let mut x647: fiat_p256_u1 = 0;
2177 fiat_p256_subborrowx_u32(&mut x646, &mut x647, x645, x629, (0x0 as u32));
2178 let mut x648: u32 = 0;
2179 let mut x649: fiat_p256_u1 = 0;
2180 fiat_p256_subborrowx_u32(&mut x648, &mut x649, x647, x631, (0x0 as u32));
2181 let mut x650: u32 = 0;
2182 let mut x651: fiat_p256_u1 = 0;
2183 fiat_p256_subborrowx_u32(&mut x650, &mut x651, x649, x633, (0x1 as u32));
2184 let mut x652: u32 = 0;
2185 let mut x653: fiat_p256_u1 = 0;
2186 fiat_p256_subborrowx_u32(&mut x652, &mut x653, x651, x635, 0xffffffff);
2187 let mut x654: u32 = 0;
2188 let mut x655: fiat_p256_u1 = 0;
2189 fiat_p256_subborrowx_u32(&mut x654, &mut x655, x653, x637, (0x0 as u32));
2190 let mut x656: u32 = 0;
2191 fiat_p256_cmovznz_u32(&mut x656, x655, x638, x621);
2192 let mut x657: u32 = 0;
2193 fiat_p256_cmovznz_u32(&mut x657, x655, x640, x623);
2194 let mut x658: u32 = 0;
2195 fiat_p256_cmovznz_u32(&mut x658, x655, x642, x625);
2196 let mut x659: u32 = 0;
2197 fiat_p256_cmovznz_u32(&mut x659, x655, x644, x627);
2198 let mut x660: u32 = 0;
2199 fiat_p256_cmovznz_u32(&mut x660, x655, x646, x629);
2200 let mut x661: u32 = 0;
2201 fiat_p256_cmovznz_u32(&mut x661, x655, x648, x631);
2202 let mut x662: u32 = 0;
2203 fiat_p256_cmovznz_u32(&mut x662, x655, x650, x633);
2204 let mut x663: u32 = 0;
2205 fiat_p256_cmovznz_u32(&mut x663, x655, x652, x635);
2206 *IndexConst(&mut out1).index_mut(0) = x656;
2207 *IndexConst(&mut out1).index_mut(1) = x657;
2208 *IndexConst(&mut out1).index_mut(2) = x658;
2209 *IndexConst(&mut out1).index_mut(3) = x659;
2210 *IndexConst(&mut out1).index_mut(4) = x660;
2211 *IndexConst(&mut out1).index_mut(5) = x661;
2212 *IndexConst(&mut out1).index_mut(6) = x662;
2213 *IndexConst(&mut out1).index_mut(7) = x663;
2214}
2215
2216#[inline]
2226pub const fn fiat_p256_add(mut out1: &mut fiat_p256_montgomery_domain_field_element, arg1: &fiat_p256_montgomery_domain_field_element, arg2: &fiat_p256_montgomery_domain_field_element) {
2227 let mut x1: u32 = 0;
2228 let mut x2: fiat_p256_u1 = 0;
2229 fiat_p256_addcarryx_u32(&mut x1, &mut x2, 0x0, (*IndexConst(arg1).index(0)), (*IndexConst(arg2).index(0)));
2230 let mut x3: u32 = 0;
2231 let mut x4: fiat_p256_u1 = 0;
2232 fiat_p256_addcarryx_u32(&mut x3, &mut x4, x2, (*IndexConst(arg1).index(1)), (*IndexConst(arg2).index(1)));
2233 let mut x5: u32 = 0;
2234 let mut x6: fiat_p256_u1 = 0;
2235 fiat_p256_addcarryx_u32(&mut x5, &mut x6, x4, (*IndexConst(arg1).index(2)), (*IndexConst(arg2).index(2)));
2236 let mut x7: u32 = 0;
2237 let mut x8: fiat_p256_u1 = 0;
2238 fiat_p256_addcarryx_u32(&mut x7, &mut x8, x6, (*IndexConst(arg1).index(3)), (*IndexConst(arg2).index(3)));
2239 let mut x9: u32 = 0;
2240 let mut x10: fiat_p256_u1 = 0;
2241 fiat_p256_addcarryx_u32(&mut x9, &mut x10, x8, (*IndexConst(arg1).index(4)), (*IndexConst(arg2).index(4)));
2242 let mut x11: u32 = 0;
2243 let mut x12: fiat_p256_u1 = 0;
2244 fiat_p256_addcarryx_u32(&mut x11, &mut x12, x10, (*IndexConst(arg1).index(5)), (*IndexConst(arg2).index(5)));
2245 let mut x13: u32 = 0;
2246 let mut x14: fiat_p256_u1 = 0;
2247 fiat_p256_addcarryx_u32(&mut x13, &mut x14, x12, (*IndexConst(arg1).index(6)), (*IndexConst(arg2).index(6)));
2248 let mut x15: u32 = 0;
2249 let mut x16: fiat_p256_u1 = 0;
2250 fiat_p256_addcarryx_u32(&mut x15, &mut x16, x14, (*IndexConst(arg1).index(7)), (*IndexConst(arg2).index(7)));
2251 let mut x17: u32 = 0;
2252 let mut x18: fiat_p256_u1 = 0;
2253 fiat_p256_subborrowx_u32(&mut x17, &mut x18, 0x0, x1, 0xffffffff);
2254 let mut x19: u32 = 0;
2255 let mut x20: fiat_p256_u1 = 0;
2256 fiat_p256_subborrowx_u32(&mut x19, &mut x20, x18, x3, 0xffffffff);
2257 let mut x21: u32 = 0;
2258 let mut x22: fiat_p256_u1 = 0;
2259 fiat_p256_subborrowx_u32(&mut x21, &mut x22, x20, x5, 0xffffffff);
2260 let mut x23: u32 = 0;
2261 let mut x24: fiat_p256_u1 = 0;
2262 fiat_p256_subborrowx_u32(&mut x23, &mut x24, x22, x7, (0x0 as u32));
2263 let mut x25: u32 = 0;
2264 let mut x26: fiat_p256_u1 = 0;
2265 fiat_p256_subborrowx_u32(&mut x25, &mut x26, x24, x9, (0x0 as u32));
2266 let mut x27: u32 = 0;
2267 let mut x28: fiat_p256_u1 = 0;
2268 fiat_p256_subborrowx_u32(&mut x27, &mut x28, x26, x11, (0x0 as u32));
2269 let mut x29: u32 = 0;
2270 let mut x30: fiat_p256_u1 = 0;
2271 fiat_p256_subborrowx_u32(&mut x29, &mut x30, x28, x13, (0x1 as u32));
2272 let mut x31: u32 = 0;
2273 let mut x32: fiat_p256_u1 = 0;
2274 fiat_p256_subborrowx_u32(&mut x31, &mut x32, x30, x15, 0xffffffff);
2275 let mut x33: u32 = 0;
2276 let mut x34: fiat_p256_u1 = 0;
2277 fiat_p256_subborrowx_u32(&mut x33, &mut x34, x32, (x16 as u32), (0x0 as u32));
2278 let mut x35: u32 = 0;
2279 fiat_p256_cmovznz_u32(&mut x35, x34, x17, x1);
2280 let mut x36: u32 = 0;
2281 fiat_p256_cmovznz_u32(&mut x36, x34, x19, x3);
2282 let mut x37: u32 = 0;
2283 fiat_p256_cmovznz_u32(&mut x37, x34, x21, x5);
2284 let mut x38: u32 = 0;
2285 fiat_p256_cmovznz_u32(&mut x38, x34, x23, x7);
2286 let mut x39: u32 = 0;
2287 fiat_p256_cmovznz_u32(&mut x39, x34, x25, x9);
2288 let mut x40: u32 = 0;
2289 fiat_p256_cmovznz_u32(&mut x40, x34, x27, x11);
2290 let mut x41: u32 = 0;
2291 fiat_p256_cmovznz_u32(&mut x41, x34, x29, x13);
2292 let mut x42: u32 = 0;
2293 fiat_p256_cmovznz_u32(&mut x42, x34, x31, x15);
2294 *IndexConst(&mut out1).index_mut(0) = x35;
2295 *IndexConst(&mut out1).index_mut(1) = x36;
2296 *IndexConst(&mut out1).index_mut(2) = x37;
2297 *IndexConst(&mut out1).index_mut(3) = x38;
2298 *IndexConst(&mut out1).index_mut(4) = x39;
2299 *IndexConst(&mut out1).index_mut(5) = x40;
2300 *IndexConst(&mut out1).index_mut(6) = x41;
2301 *IndexConst(&mut out1).index_mut(7) = x42;
2302}
2303
2304#[inline]
2314pub const fn fiat_p256_sub(mut out1: &mut fiat_p256_montgomery_domain_field_element, arg1: &fiat_p256_montgomery_domain_field_element, arg2: &fiat_p256_montgomery_domain_field_element) {
2315 let mut x1: u32 = 0;
2316 let mut x2: fiat_p256_u1 = 0;
2317 fiat_p256_subborrowx_u32(&mut x1, &mut x2, 0x0, (*IndexConst(arg1).index(0)), (*IndexConst(arg2).index(0)));
2318 let mut x3: u32 = 0;
2319 let mut x4: fiat_p256_u1 = 0;
2320 fiat_p256_subborrowx_u32(&mut x3, &mut x4, x2, (*IndexConst(arg1).index(1)), (*IndexConst(arg2).index(1)));
2321 let mut x5: u32 = 0;
2322 let mut x6: fiat_p256_u1 = 0;
2323 fiat_p256_subborrowx_u32(&mut x5, &mut x6, x4, (*IndexConst(arg1).index(2)), (*IndexConst(arg2).index(2)));
2324 let mut x7: u32 = 0;
2325 let mut x8: fiat_p256_u1 = 0;
2326 fiat_p256_subborrowx_u32(&mut x7, &mut x8, x6, (*IndexConst(arg1).index(3)), (*IndexConst(arg2).index(3)));
2327 let mut x9: u32 = 0;
2328 let mut x10: fiat_p256_u1 = 0;
2329 fiat_p256_subborrowx_u32(&mut x9, &mut x10, x8, (*IndexConst(arg1).index(4)), (*IndexConst(arg2).index(4)));
2330 let mut x11: u32 = 0;
2331 let mut x12: fiat_p256_u1 = 0;
2332 fiat_p256_subborrowx_u32(&mut x11, &mut x12, x10, (*IndexConst(arg1).index(5)), (*IndexConst(arg2).index(5)));
2333 let mut x13: u32 = 0;
2334 let mut x14: fiat_p256_u1 = 0;
2335 fiat_p256_subborrowx_u32(&mut x13, &mut x14, x12, (*IndexConst(arg1).index(6)), (*IndexConst(arg2).index(6)));
2336 let mut x15: u32 = 0;
2337 let mut x16: fiat_p256_u1 = 0;
2338 fiat_p256_subborrowx_u32(&mut x15, &mut x16, x14, (*IndexConst(arg1).index(7)), (*IndexConst(arg2).index(7)));
2339 let mut x17: u32 = 0;
2340 fiat_p256_cmovznz_u32(&mut x17, x16, (0x0 as u32), 0xffffffff);
2341 let mut x18: u32 = 0;
2342 let mut x19: fiat_p256_u1 = 0;
2343 fiat_p256_addcarryx_u32(&mut x18, &mut x19, 0x0, x1, x17);
2344 let mut x20: u32 = 0;
2345 let mut x21: fiat_p256_u1 = 0;
2346 fiat_p256_addcarryx_u32(&mut x20, &mut x21, x19, x3, x17);
2347 let mut x22: u32 = 0;
2348 let mut x23: fiat_p256_u1 = 0;
2349 fiat_p256_addcarryx_u32(&mut x22, &mut x23, x21, x5, x17);
2350 let mut x24: u32 = 0;
2351 let mut x25: fiat_p256_u1 = 0;
2352 fiat_p256_addcarryx_u32(&mut x24, &mut x25, x23, x7, (0x0 as u32));
2353 let mut x26: u32 = 0;
2354 let mut x27: fiat_p256_u1 = 0;
2355 fiat_p256_addcarryx_u32(&mut x26, &mut x27, x25, x9, (0x0 as u32));
2356 let mut x28: u32 = 0;
2357 let mut x29: fiat_p256_u1 = 0;
2358 fiat_p256_addcarryx_u32(&mut x28, &mut x29, x27, x11, (0x0 as u32));
2359 let mut x30: u32 = 0;
2360 let mut x31: fiat_p256_u1 = 0;
2361 fiat_p256_addcarryx_u32(&mut x30, &mut x31, x29, x13, (((x17 & (0x1 as u32)) as fiat_p256_u1) as u32));
2362 let mut x32: u32 = 0;
2363 let mut x33: fiat_p256_u1 = 0;
2364 fiat_p256_addcarryx_u32(&mut x32, &mut x33, x31, x15, x17);
2365 *IndexConst(&mut out1).index_mut(0) = x18;
2366 *IndexConst(&mut out1).index_mut(1) = x20;
2367 *IndexConst(&mut out1).index_mut(2) = x22;
2368 *IndexConst(&mut out1).index_mut(3) = x24;
2369 *IndexConst(&mut out1).index_mut(4) = x26;
2370 *IndexConst(&mut out1).index_mut(5) = x28;
2371 *IndexConst(&mut out1).index_mut(6) = x30;
2372 *IndexConst(&mut out1).index_mut(7) = x32;
2373}
2374
2375#[inline]
2384pub const fn fiat_p256_opp(mut out1: &mut fiat_p256_montgomery_domain_field_element, arg1: &fiat_p256_montgomery_domain_field_element) {
2385 let mut x1: u32 = 0;
2386 let mut x2: fiat_p256_u1 = 0;
2387 fiat_p256_subborrowx_u32(&mut x1, &mut x2, 0x0, (0x0 as u32), (*IndexConst(arg1).index(0)));
2388 let mut x3: u32 = 0;
2389 let mut x4: fiat_p256_u1 = 0;
2390 fiat_p256_subborrowx_u32(&mut x3, &mut x4, x2, (0x0 as u32), (*IndexConst(arg1).index(1)));
2391 let mut x5: u32 = 0;
2392 let mut x6: fiat_p256_u1 = 0;
2393 fiat_p256_subborrowx_u32(&mut x5, &mut x6, x4, (0x0 as u32), (*IndexConst(arg1).index(2)));
2394 let mut x7: u32 = 0;
2395 let mut x8: fiat_p256_u1 = 0;
2396 fiat_p256_subborrowx_u32(&mut x7, &mut x8, x6, (0x0 as u32), (*IndexConst(arg1).index(3)));
2397 let mut x9: u32 = 0;
2398 let mut x10: fiat_p256_u1 = 0;
2399 fiat_p256_subborrowx_u32(&mut x9, &mut x10, x8, (0x0 as u32), (*IndexConst(arg1).index(4)));
2400 let mut x11: u32 = 0;
2401 let mut x12: fiat_p256_u1 = 0;
2402 fiat_p256_subborrowx_u32(&mut x11, &mut x12, x10, (0x0 as u32), (*IndexConst(arg1).index(5)));
2403 let mut x13: u32 = 0;
2404 let mut x14: fiat_p256_u1 = 0;
2405 fiat_p256_subborrowx_u32(&mut x13, &mut x14, x12, (0x0 as u32), (*IndexConst(arg1).index(6)));
2406 let mut x15: u32 = 0;
2407 let mut x16: fiat_p256_u1 = 0;
2408 fiat_p256_subborrowx_u32(&mut x15, &mut x16, x14, (0x0 as u32), (*IndexConst(arg1).index(7)));
2409 let mut x17: u32 = 0;
2410 fiat_p256_cmovznz_u32(&mut x17, x16, (0x0 as u32), 0xffffffff);
2411 let mut x18: u32 = 0;
2412 let mut x19: fiat_p256_u1 = 0;
2413 fiat_p256_addcarryx_u32(&mut x18, &mut x19, 0x0, x1, x17);
2414 let mut x20: u32 = 0;
2415 let mut x21: fiat_p256_u1 = 0;
2416 fiat_p256_addcarryx_u32(&mut x20, &mut x21, x19, x3, x17);
2417 let mut x22: u32 = 0;
2418 let mut x23: fiat_p256_u1 = 0;
2419 fiat_p256_addcarryx_u32(&mut x22, &mut x23, x21, x5, x17);
2420 let mut x24: u32 = 0;
2421 let mut x25: fiat_p256_u1 = 0;
2422 fiat_p256_addcarryx_u32(&mut x24, &mut x25, x23, x7, (0x0 as u32));
2423 let mut x26: u32 = 0;
2424 let mut x27: fiat_p256_u1 = 0;
2425 fiat_p256_addcarryx_u32(&mut x26, &mut x27, x25, x9, (0x0 as u32));
2426 let mut x28: u32 = 0;
2427 let mut x29: fiat_p256_u1 = 0;
2428 fiat_p256_addcarryx_u32(&mut x28, &mut x29, x27, x11, (0x0 as u32));
2429 let mut x30: u32 = 0;
2430 let mut x31: fiat_p256_u1 = 0;
2431 fiat_p256_addcarryx_u32(&mut x30, &mut x31, x29, x13, (((x17 & (0x1 as u32)) as fiat_p256_u1) as u32));
2432 let mut x32: u32 = 0;
2433 let mut x33: fiat_p256_u1 = 0;
2434 fiat_p256_addcarryx_u32(&mut x32, &mut x33, x31, x15, x17);
2435 *IndexConst(&mut out1).index_mut(0) = x18;
2436 *IndexConst(&mut out1).index_mut(1) = x20;
2437 *IndexConst(&mut out1).index_mut(2) = x22;
2438 *IndexConst(&mut out1).index_mut(3) = x24;
2439 *IndexConst(&mut out1).index_mut(4) = x26;
2440 *IndexConst(&mut out1).index_mut(5) = x28;
2441 *IndexConst(&mut out1).index_mut(6) = x30;
2442 *IndexConst(&mut out1).index_mut(7) = x32;
2443}
2444
2445#[inline]
2454pub const fn fiat_p256_from_montgomery(mut out1: &mut fiat_p256_non_montgomery_domain_field_element, arg1: &fiat_p256_montgomery_domain_field_element) {
2455 let x1: u32 = (*IndexConst(arg1).index(0));
2456 let mut x2: u32 = 0;
2457 let mut x3: u32 = 0;
2458 fiat_p256_mulx_u32(&mut x2, &mut x3, x1, 0xffffffff);
2459 let mut x4: u32 = 0;
2460 let mut x5: u32 = 0;
2461 fiat_p256_mulx_u32(&mut x4, &mut x5, x1, 0xffffffff);
2462 let mut x6: u32 = 0;
2463 let mut x7: u32 = 0;
2464 fiat_p256_mulx_u32(&mut x6, &mut x7, x1, 0xffffffff);
2465 let mut x8: u32 = 0;
2466 let mut x9: u32 = 0;
2467 fiat_p256_mulx_u32(&mut x8, &mut x9, x1, 0xffffffff);
2468 let mut x10: u32 = 0;
2469 let mut x11: fiat_p256_u1 = 0;
2470 fiat_p256_addcarryx_u32(&mut x10, &mut x11, 0x0, x9, x6);
2471 let mut x12: u32 = 0;
2472 let mut x13: fiat_p256_u1 = 0;
2473 fiat_p256_addcarryx_u32(&mut x12, &mut x13, x11, x7, x4);
2474 let mut x14: u32 = 0;
2475 let mut x15: fiat_p256_u1 = 0;
2476 fiat_p256_addcarryx_u32(&mut x14, &mut x15, 0x0, x1, x8);
2477 let mut x16: u32 = 0;
2478 let mut x17: fiat_p256_u1 = 0;
2479 fiat_p256_addcarryx_u32(&mut x16, &mut x17, x15, (0x0 as u32), x10);
2480 let mut x18: u32 = 0;
2481 let mut x19: fiat_p256_u1 = 0;
2482 fiat_p256_addcarryx_u32(&mut x18, &mut x19, x17, (0x0 as u32), x12);
2483 let mut x20: u32 = 0;
2484 let mut x21: fiat_p256_u1 = 0;
2485 fiat_p256_addcarryx_u32(&mut x20, &mut x21, x19, (0x0 as u32), ((x13 as u32) + x5));
2486 let mut x22: u32 = 0;
2487 let mut x23: fiat_p256_u1 = 0;
2488 fiat_p256_addcarryx_u32(&mut x22, &mut x23, 0x0, x16, (*IndexConst(arg1).index(1)));
2489 let mut x24: u32 = 0;
2490 let mut x25: fiat_p256_u1 = 0;
2491 fiat_p256_addcarryx_u32(&mut x24, &mut x25, x23, x18, (0x0 as u32));
2492 let mut x26: u32 = 0;
2493 let mut x27: fiat_p256_u1 = 0;
2494 fiat_p256_addcarryx_u32(&mut x26, &mut x27, x25, x20, (0x0 as u32));
2495 let mut x28: u32 = 0;
2496 let mut x29: u32 = 0;
2497 fiat_p256_mulx_u32(&mut x28, &mut x29, x22, 0xffffffff);
2498 let mut x30: u32 = 0;
2499 let mut x31: u32 = 0;
2500 fiat_p256_mulx_u32(&mut x30, &mut x31, x22, 0xffffffff);
2501 let mut x32: u32 = 0;
2502 let mut x33: u32 = 0;
2503 fiat_p256_mulx_u32(&mut x32, &mut x33, x22, 0xffffffff);
2504 let mut x34: u32 = 0;
2505 let mut x35: u32 = 0;
2506 fiat_p256_mulx_u32(&mut x34, &mut x35, x22, 0xffffffff);
2507 let mut x36: u32 = 0;
2508 let mut x37: fiat_p256_u1 = 0;
2509 fiat_p256_addcarryx_u32(&mut x36, &mut x37, 0x0, x35, x32);
2510 let mut x38: u32 = 0;
2511 let mut x39: fiat_p256_u1 = 0;
2512 fiat_p256_addcarryx_u32(&mut x38, &mut x39, x37, x33, x30);
2513 let mut x40: u32 = 0;
2514 let mut x41: fiat_p256_u1 = 0;
2515 fiat_p256_addcarryx_u32(&mut x40, &mut x41, 0x0, x22, x34);
2516 let mut x42: u32 = 0;
2517 let mut x43: fiat_p256_u1 = 0;
2518 fiat_p256_addcarryx_u32(&mut x42, &mut x43, x41, x24, x36);
2519 let mut x44: u32 = 0;
2520 let mut x45: fiat_p256_u1 = 0;
2521 fiat_p256_addcarryx_u32(&mut x44, &mut x45, x43, x26, x38);
2522 let mut x46: u32 = 0;
2523 let mut x47: fiat_p256_u1 = 0;
2524 fiat_p256_addcarryx_u32(&mut x46, &mut x47, x45, ((x27 as u32) + (x21 as u32)), ((x39 as u32) + x31));
2525 let mut x48: u32 = 0;
2526 let mut x49: fiat_p256_u1 = 0;
2527 fiat_p256_addcarryx_u32(&mut x48, &mut x49, 0x0, x2, x22);
2528 let mut x50: u32 = 0;
2529 let mut x51: fiat_p256_u1 = 0;
2530 fiat_p256_addcarryx_u32(&mut x50, &mut x51, x49, x3, x28);
2531 let mut x52: u32 = 0;
2532 let mut x53: fiat_p256_u1 = 0;
2533 fiat_p256_addcarryx_u32(&mut x52, &mut x53, 0x0, x42, (*IndexConst(arg1).index(2)));
2534 let mut x54: u32 = 0;
2535 let mut x55: fiat_p256_u1 = 0;
2536 fiat_p256_addcarryx_u32(&mut x54, &mut x55, x53, x44, (0x0 as u32));
2537 let mut x56: u32 = 0;
2538 let mut x57: fiat_p256_u1 = 0;
2539 fiat_p256_addcarryx_u32(&mut x56, &mut x57, x55, x46, (0x0 as u32));
2540 let mut x58: u32 = 0;
2541 let mut x59: u32 = 0;
2542 fiat_p256_mulx_u32(&mut x58, &mut x59, x52, 0xffffffff);
2543 let mut x60: u32 = 0;
2544 let mut x61: u32 = 0;
2545 fiat_p256_mulx_u32(&mut x60, &mut x61, x52, 0xffffffff);
2546 let mut x62: u32 = 0;
2547 let mut x63: u32 = 0;
2548 fiat_p256_mulx_u32(&mut x62, &mut x63, x52, 0xffffffff);
2549 let mut x64: u32 = 0;
2550 let mut x65: u32 = 0;
2551 fiat_p256_mulx_u32(&mut x64, &mut x65, x52, 0xffffffff);
2552 let mut x66: u32 = 0;
2553 let mut x67: fiat_p256_u1 = 0;
2554 fiat_p256_addcarryx_u32(&mut x66, &mut x67, 0x0, x65, x62);
2555 let mut x68: u32 = 0;
2556 let mut x69: fiat_p256_u1 = 0;
2557 fiat_p256_addcarryx_u32(&mut x68, &mut x69, x67, x63, x60);
2558 let mut x70: u32 = 0;
2559 let mut x71: fiat_p256_u1 = 0;
2560 fiat_p256_addcarryx_u32(&mut x70, &mut x71, 0x0, x52, x64);
2561 let mut x72: u32 = 0;
2562 let mut x73: fiat_p256_u1 = 0;
2563 fiat_p256_addcarryx_u32(&mut x72, &mut x73, x71, x54, x66);
2564 let mut x74: u32 = 0;
2565 let mut x75: fiat_p256_u1 = 0;
2566 fiat_p256_addcarryx_u32(&mut x74, &mut x75, x73, x56, x68);
2567 let mut x76: u32 = 0;
2568 let mut x77: fiat_p256_u1 = 0;
2569 fiat_p256_addcarryx_u32(&mut x76, &mut x77, x75, ((x57 as u32) + (x47 as u32)), ((x69 as u32) + x61));
2570 let mut x78: u32 = 0;
2571 let mut x79: fiat_p256_u1 = 0;
2572 fiat_p256_addcarryx_u32(&mut x78, &mut x79, x77, x1, (0x0 as u32));
2573 let mut x80: u32 = 0;
2574 let mut x81: fiat_p256_u1 = 0;
2575 fiat_p256_addcarryx_u32(&mut x80, &mut x81, x79, x48, (0x0 as u32));
2576 let mut x82: u32 = 0;
2577 let mut x83: fiat_p256_u1 = 0;
2578 fiat_p256_addcarryx_u32(&mut x82, &mut x83, x81, x50, x52);
2579 let mut x84: u32 = 0;
2580 let mut x85: fiat_p256_u1 = 0;
2581 fiat_p256_addcarryx_u32(&mut x84, &mut x85, x83, ((x51 as u32) + x29), x58);
2582 let mut x86: u32 = 0;
2583 let mut x87: fiat_p256_u1 = 0;
2584 fiat_p256_addcarryx_u32(&mut x86, &mut x87, 0x0, x72, (*IndexConst(arg1).index(3)));
2585 let mut x88: u32 = 0;
2586 let mut x89: fiat_p256_u1 = 0;
2587 fiat_p256_addcarryx_u32(&mut x88, &mut x89, x87, x74, (0x0 as u32));
2588 let mut x90: u32 = 0;
2589 let mut x91: fiat_p256_u1 = 0;
2590 fiat_p256_addcarryx_u32(&mut x90, &mut x91, x89, x76, (0x0 as u32));
2591 let mut x92: u32 = 0;
2592 let mut x93: fiat_p256_u1 = 0;
2593 fiat_p256_addcarryx_u32(&mut x92, &mut x93, x91, x78, (0x0 as u32));
2594 let mut x94: u32 = 0;
2595 let mut x95: fiat_p256_u1 = 0;
2596 fiat_p256_addcarryx_u32(&mut x94, &mut x95, x93, x80, (0x0 as u32));
2597 let mut x96: u32 = 0;
2598 let mut x97: fiat_p256_u1 = 0;
2599 fiat_p256_addcarryx_u32(&mut x96, &mut x97, x95, x82, (0x0 as u32));
2600 let mut x98: u32 = 0;
2601 let mut x99: fiat_p256_u1 = 0;
2602 fiat_p256_addcarryx_u32(&mut x98, &mut x99, x97, x84, (0x0 as u32));
2603 let mut x100: u32 = 0;
2604 let mut x101: fiat_p256_u1 = 0;
2605 fiat_p256_addcarryx_u32(&mut x100, &mut x101, x99, ((x85 as u32) + x59), (0x0 as u32));
2606 let mut x102: u32 = 0;
2607 let mut x103: u32 = 0;
2608 fiat_p256_mulx_u32(&mut x102, &mut x103, x86, 0xffffffff);
2609 let mut x104: u32 = 0;
2610 let mut x105: u32 = 0;
2611 fiat_p256_mulx_u32(&mut x104, &mut x105, x86, 0xffffffff);
2612 let mut x106: u32 = 0;
2613 let mut x107: u32 = 0;
2614 fiat_p256_mulx_u32(&mut x106, &mut x107, x86, 0xffffffff);
2615 let mut x108: u32 = 0;
2616 let mut x109: u32 = 0;
2617 fiat_p256_mulx_u32(&mut x108, &mut x109, x86, 0xffffffff);
2618 let mut x110: u32 = 0;
2619 let mut x111: fiat_p256_u1 = 0;
2620 fiat_p256_addcarryx_u32(&mut x110, &mut x111, 0x0, x109, x106);
2621 let mut x112: u32 = 0;
2622 let mut x113: fiat_p256_u1 = 0;
2623 fiat_p256_addcarryx_u32(&mut x112, &mut x113, x111, x107, x104);
2624 let mut x114: u32 = 0;
2625 let mut x115: fiat_p256_u1 = 0;
2626 fiat_p256_addcarryx_u32(&mut x114, &mut x115, 0x0, x86, x108);
2627 let mut x116: u32 = 0;
2628 let mut x117: fiat_p256_u1 = 0;
2629 fiat_p256_addcarryx_u32(&mut x116, &mut x117, x115, x88, x110);
2630 let mut x118: u32 = 0;
2631 let mut x119: fiat_p256_u1 = 0;
2632 fiat_p256_addcarryx_u32(&mut x118, &mut x119, x117, x90, x112);
2633 let mut x120: u32 = 0;
2634 let mut x121: fiat_p256_u1 = 0;
2635 fiat_p256_addcarryx_u32(&mut x120, &mut x121, x119, x92, ((x113 as u32) + x105));
2636 let mut x122: u32 = 0;
2637 let mut x123: fiat_p256_u1 = 0;
2638 fiat_p256_addcarryx_u32(&mut x122, &mut x123, x121, x94, (0x0 as u32));
2639 let mut x124: u32 = 0;
2640 let mut x125: fiat_p256_u1 = 0;
2641 fiat_p256_addcarryx_u32(&mut x124, &mut x125, x123, x96, (0x0 as u32));
2642 let mut x126: u32 = 0;
2643 let mut x127: fiat_p256_u1 = 0;
2644 fiat_p256_addcarryx_u32(&mut x126, &mut x127, x125, x98, x86);
2645 let mut x128: u32 = 0;
2646 let mut x129: fiat_p256_u1 = 0;
2647 fiat_p256_addcarryx_u32(&mut x128, &mut x129, x127, x100, x102);
2648 let mut x130: u32 = 0;
2649 let mut x131: fiat_p256_u1 = 0;
2650 fiat_p256_addcarryx_u32(&mut x130, &mut x131, x129, (x101 as u32), x103);
2651 let mut x132: u32 = 0;
2652 let mut x133: fiat_p256_u1 = 0;
2653 fiat_p256_addcarryx_u32(&mut x132, &mut x133, 0x0, x116, (*IndexConst(arg1).index(4)));
2654 let mut x134: u32 = 0;
2655 let mut x135: fiat_p256_u1 = 0;
2656 fiat_p256_addcarryx_u32(&mut x134, &mut x135, x133, x118, (0x0 as u32));
2657 let mut x136: u32 = 0;
2658 let mut x137: fiat_p256_u1 = 0;
2659 fiat_p256_addcarryx_u32(&mut x136, &mut x137, x135, x120, (0x0 as u32));
2660 let mut x138: u32 = 0;
2661 let mut x139: fiat_p256_u1 = 0;
2662 fiat_p256_addcarryx_u32(&mut x138, &mut x139, x137, x122, (0x0 as u32));
2663 let mut x140: u32 = 0;
2664 let mut x141: fiat_p256_u1 = 0;
2665 fiat_p256_addcarryx_u32(&mut x140, &mut x141, x139, x124, (0x0 as u32));
2666 let mut x142: u32 = 0;
2667 let mut x143: fiat_p256_u1 = 0;
2668 fiat_p256_addcarryx_u32(&mut x142, &mut x143, x141, x126, (0x0 as u32));
2669 let mut x144: u32 = 0;
2670 let mut x145: fiat_p256_u1 = 0;
2671 fiat_p256_addcarryx_u32(&mut x144, &mut x145, x143, x128, (0x0 as u32));
2672 let mut x146: u32 = 0;
2673 let mut x147: fiat_p256_u1 = 0;
2674 fiat_p256_addcarryx_u32(&mut x146, &mut x147, x145, x130, (0x0 as u32));
2675 let mut x148: u32 = 0;
2676 let mut x149: u32 = 0;
2677 fiat_p256_mulx_u32(&mut x148, &mut x149, x132, 0xffffffff);
2678 let mut x150: u32 = 0;
2679 let mut x151: u32 = 0;
2680 fiat_p256_mulx_u32(&mut x150, &mut x151, x132, 0xffffffff);
2681 let mut x152: u32 = 0;
2682 let mut x153: u32 = 0;
2683 fiat_p256_mulx_u32(&mut x152, &mut x153, x132, 0xffffffff);
2684 let mut x154: u32 = 0;
2685 let mut x155: u32 = 0;
2686 fiat_p256_mulx_u32(&mut x154, &mut x155, x132, 0xffffffff);
2687 let mut x156: u32 = 0;
2688 let mut x157: fiat_p256_u1 = 0;
2689 fiat_p256_addcarryx_u32(&mut x156, &mut x157, 0x0, x155, x152);
2690 let mut x158: u32 = 0;
2691 let mut x159: fiat_p256_u1 = 0;
2692 fiat_p256_addcarryx_u32(&mut x158, &mut x159, x157, x153, x150);
2693 let mut x160: u32 = 0;
2694 let mut x161: fiat_p256_u1 = 0;
2695 fiat_p256_addcarryx_u32(&mut x160, &mut x161, 0x0, x132, x154);
2696 let mut x162: u32 = 0;
2697 let mut x163: fiat_p256_u1 = 0;
2698 fiat_p256_addcarryx_u32(&mut x162, &mut x163, x161, x134, x156);
2699 let mut x164: u32 = 0;
2700 let mut x165: fiat_p256_u1 = 0;
2701 fiat_p256_addcarryx_u32(&mut x164, &mut x165, x163, x136, x158);
2702 let mut x166: u32 = 0;
2703 let mut x167: fiat_p256_u1 = 0;
2704 fiat_p256_addcarryx_u32(&mut x166, &mut x167, x165, x138, ((x159 as u32) + x151));
2705 let mut x168: u32 = 0;
2706 let mut x169: fiat_p256_u1 = 0;
2707 fiat_p256_addcarryx_u32(&mut x168, &mut x169, x167, x140, (0x0 as u32));
2708 let mut x170: u32 = 0;
2709 let mut x171: fiat_p256_u1 = 0;
2710 fiat_p256_addcarryx_u32(&mut x170, &mut x171, x169, x142, (0x0 as u32));
2711 let mut x172: u32 = 0;
2712 let mut x173: fiat_p256_u1 = 0;
2713 fiat_p256_addcarryx_u32(&mut x172, &mut x173, x171, x144, x132);
2714 let mut x174: u32 = 0;
2715 let mut x175: fiat_p256_u1 = 0;
2716 fiat_p256_addcarryx_u32(&mut x174, &mut x175, x173, x146, x148);
2717 let mut x176: u32 = 0;
2718 let mut x177: fiat_p256_u1 = 0;
2719 fiat_p256_addcarryx_u32(&mut x176, &mut x177, x175, ((x147 as u32) + (x131 as u32)), x149);
2720 let mut x178: u32 = 0;
2721 let mut x179: fiat_p256_u1 = 0;
2722 fiat_p256_addcarryx_u32(&mut x178, &mut x179, 0x0, x162, (*IndexConst(arg1).index(5)));
2723 let mut x180: u32 = 0;
2724 let mut x181: fiat_p256_u1 = 0;
2725 fiat_p256_addcarryx_u32(&mut x180, &mut x181, x179, x164, (0x0 as u32));
2726 let mut x182: u32 = 0;
2727 let mut x183: fiat_p256_u1 = 0;
2728 fiat_p256_addcarryx_u32(&mut x182, &mut x183, x181, x166, (0x0 as u32));
2729 let mut x184: u32 = 0;
2730 let mut x185: fiat_p256_u1 = 0;
2731 fiat_p256_addcarryx_u32(&mut x184, &mut x185, x183, x168, (0x0 as u32));
2732 let mut x186: u32 = 0;
2733 let mut x187: fiat_p256_u1 = 0;
2734 fiat_p256_addcarryx_u32(&mut x186, &mut x187, x185, x170, (0x0 as u32));
2735 let mut x188: u32 = 0;
2736 let mut x189: fiat_p256_u1 = 0;
2737 fiat_p256_addcarryx_u32(&mut x188, &mut x189, x187, x172, (0x0 as u32));
2738 let mut x190: u32 = 0;
2739 let mut x191: fiat_p256_u1 = 0;
2740 fiat_p256_addcarryx_u32(&mut x190, &mut x191, x189, x174, (0x0 as u32));
2741 let mut x192: u32 = 0;
2742 let mut x193: fiat_p256_u1 = 0;
2743 fiat_p256_addcarryx_u32(&mut x192, &mut x193, x191, x176, (0x0 as u32));
2744 let mut x194: u32 = 0;
2745 let mut x195: u32 = 0;
2746 fiat_p256_mulx_u32(&mut x194, &mut x195, x178, 0xffffffff);
2747 let mut x196: u32 = 0;
2748 let mut x197: u32 = 0;
2749 fiat_p256_mulx_u32(&mut x196, &mut x197, x178, 0xffffffff);
2750 let mut x198: u32 = 0;
2751 let mut x199: u32 = 0;
2752 fiat_p256_mulx_u32(&mut x198, &mut x199, x178, 0xffffffff);
2753 let mut x200: u32 = 0;
2754 let mut x201: u32 = 0;
2755 fiat_p256_mulx_u32(&mut x200, &mut x201, x178, 0xffffffff);
2756 let mut x202: u32 = 0;
2757 let mut x203: fiat_p256_u1 = 0;
2758 fiat_p256_addcarryx_u32(&mut x202, &mut x203, 0x0, x201, x198);
2759 let mut x204: u32 = 0;
2760 let mut x205: fiat_p256_u1 = 0;
2761 fiat_p256_addcarryx_u32(&mut x204, &mut x205, x203, x199, x196);
2762 let mut x206: u32 = 0;
2763 let mut x207: fiat_p256_u1 = 0;
2764 fiat_p256_addcarryx_u32(&mut x206, &mut x207, 0x0, x178, x200);
2765 let mut x208: u32 = 0;
2766 let mut x209: fiat_p256_u1 = 0;
2767 fiat_p256_addcarryx_u32(&mut x208, &mut x209, x207, x180, x202);
2768 let mut x210: u32 = 0;
2769 let mut x211: fiat_p256_u1 = 0;
2770 fiat_p256_addcarryx_u32(&mut x210, &mut x211, x209, x182, x204);
2771 let mut x212: u32 = 0;
2772 let mut x213: fiat_p256_u1 = 0;
2773 fiat_p256_addcarryx_u32(&mut x212, &mut x213, x211, x184, ((x205 as u32) + x197));
2774 let mut x214: u32 = 0;
2775 let mut x215: fiat_p256_u1 = 0;
2776 fiat_p256_addcarryx_u32(&mut x214, &mut x215, x213, x186, (0x0 as u32));
2777 let mut x216: u32 = 0;
2778 let mut x217: fiat_p256_u1 = 0;
2779 fiat_p256_addcarryx_u32(&mut x216, &mut x217, x215, x188, (0x0 as u32));
2780 let mut x218: u32 = 0;
2781 let mut x219: fiat_p256_u1 = 0;
2782 fiat_p256_addcarryx_u32(&mut x218, &mut x219, x217, x190, x178);
2783 let mut x220: u32 = 0;
2784 let mut x221: fiat_p256_u1 = 0;
2785 fiat_p256_addcarryx_u32(&mut x220, &mut x221, x219, x192, x194);
2786 let mut x222: u32 = 0;
2787 let mut x223: fiat_p256_u1 = 0;
2788 fiat_p256_addcarryx_u32(&mut x222, &mut x223, x221, ((x193 as u32) + (x177 as u32)), x195);
2789 let mut x224: u32 = 0;
2790 let mut x225: fiat_p256_u1 = 0;
2791 fiat_p256_addcarryx_u32(&mut x224, &mut x225, 0x0, x208, (*IndexConst(arg1).index(6)));
2792 let mut x226: u32 = 0;
2793 let mut x227: fiat_p256_u1 = 0;
2794 fiat_p256_addcarryx_u32(&mut x226, &mut x227, x225, x210, (0x0 as u32));
2795 let mut x228: u32 = 0;
2796 let mut x229: fiat_p256_u1 = 0;
2797 fiat_p256_addcarryx_u32(&mut x228, &mut x229, x227, x212, (0x0 as u32));
2798 let mut x230: u32 = 0;
2799 let mut x231: fiat_p256_u1 = 0;
2800 fiat_p256_addcarryx_u32(&mut x230, &mut x231, x229, x214, (0x0 as u32));
2801 let mut x232: u32 = 0;
2802 let mut x233: fiat_p256_u1 = 0;
2803 fiat_p256_addcarryx_u32(&mut x232, &mut x233, x231, x216, (0x0 as u32));
2804 let mut x234: u32 = 0;
2805 let mut x235: fiat_p256_u1 = 0;
2806 fiat_p256_addcarryx_u32(&mut x234, &mut x235, x233, x218, (0x0 as u32));
2807 let mut x236: u32 = 0;
2808 let mut x237: fiat_p256_u1 = 0;
2809 fiat_p256_addcarryx_u32(&mut x236, &mut x237, x235, x220, (0x0 as u32));
2810 let mut x238: u32 = 0;
2811 let mut x239: fiat_p256_u1 = 0;
2812 fiat_p256_addcarryx_u32(&mut x238, &mut x239, x237, x222, (0x0 as u32));
2813 let mut x240: u32 = 0;
2814 let mut x241: u32 = 0;
2815 fiat_p256_mulx_u32(&mut x240, &mut x241, x224, 0xffffffff);
2816 let mut x242: u32 = 0;
2817 let mut x243: u32 = 0;
2818 fiat_p256_mulx_u32(&mut x242, &mut x243, x224, 0xffffffff);
2819 let mut x244: u32 = 0;
2820 let mut x245: u32 = 0;
2821 fiat_p256_mulx_u32(&mut x244, &mut x245, x224, 0xffffffff);
2822 let mut x246: u32 = 0;
2823 let mut x247: u32 = 0;
2824 fiat_p256_mulx_u32(&mut x246, &mut x247, x224, 0xffffffff);
2825 let mut x248: u32 = 0;
2826 let mut x249: fiat_p256_u1 = 0;
2827 fiat_p256_addcarryx_u32(&mut x248, &mut x249, 0x0, x247, x244);
2828 let mut x250: u32 = 0;
2829 let mut x251: fiat_p256_u1 = 0;
2830 fiat_p256_addcarryx_u32(&mut x250, &mut x251, x249, x245, x242);
2831 let mut x252: u32 = 0;
2832 let mut x253: fiat_p256_u1 = 0;
2833 fiat_p256_addcarryx_u32(&mut x252, &mut x253, 0x0, x224, x246);
2834 let mut x254: u32 = 0;
2835 let mut x255: fiat_p256_u1 = 0;
2836 fiat_p256_addcarryx_u32(&mut x254, &mut x255, x253, x226, x248);
2837 let mut x256: u32 = 0;
2838 let mut x257: fiat_p256_u1 = 0;
2839 fiat_p256_addcarryx_u32(&mut x256, &mut x257, x255, x228, x250);
2840 let mut x258: u32 = 0;
2841 let mut x259: fiat_p256_u1 = 0;
2842 fiat_p256_addcarryx_u32(&mut x258, &mut x259, x257, x230, ((x251 as u32) + x243));
2843 let mut x260: u32 = 0;
2844 let mut x261: fiat_p256_u1 = 0;
2845 fiat_p256_addcarryx_u32(&mut x260, &mut x261, x259, x232, (0x0 as u32));
2846 let mut x262: u32 = 0;
2847 let mut x263: fiat_p256_u1 = 0;
2848 fiat_p256_addcarryx_u32(&mut x262, &mut x263, x261, x234, (0x0 as u32));
2849 let mut x264: u32 = 0;
2850 let mut x265: fiat_p256_u1 = 0;
2851 fiat_p256_addcarryx_u32(&mut x264, &mut x265, x263, x236, x224);
2852 let mut x266: u32 = 0;
2853 let mut x267: fiat_p256_u1 = 0;
2854 fiat_p256_addcarryx_u32(&mut x266, &mut x267, x265, x238, x240);
2855 let mut x268: u32 = 0;
2856 let mut x269: fiat_p256_u1 = 0;
2857 fiat_p256_addcarryx_u32(&mut x268, &mut x269, x267, ((x239 as u32) + (x223 as u32)), x241);
2858 let mut x270: u32 = 0;
2859 let mut x271: fiat_p256_u1 = 0;
2860 fiat_p256_addcarryx_u32(&mut x270, &mut x271, 0x0, x254, (*IndexConst(arg1).index(7)));
2861 let mut x272: u32 = 0;
2862 let mut x273: fiat_p256_u1 = 0;
2863 fiat_p256_addcarryx_u32(&mut x272, &mut x273, x271, x256, (0x0 as u32));
2864 let mut x274: u32 = 0;
2865 let mut x275: fiat_p256_u1 = 0;
2866 fiat_p256_addcarryx_u32(&mut x274, &mut x275, x273, x258, (0x0 as u32));
2867 let mut x276: u32 = 0;
2868 let mut x277: fiat_p256_u1 = 0;
2869 fiat_p256_addcarryx_u32(&mut x276, &mut x277, x275, x260, (0x0 as u32));
2870 let mut x278: u32 = 0;
2871 let mut x279: fiat_p256_u1 = 0;
2872 fiat_p256_addcarryx_u32(&mut x278, &mut x279, x277, x262, (0x0 as u32));
2873 let mut x280: u32 = 0;
2874 let mut x281: fiat_p256_u1 = 0;
2875 fiat_p256_addcarryx_u32(&mut x280, &mut x281, x279, x264, (0x0 as u32));
2876 let mut x282: u32 = 0;
2877 let mut x283: fiat_p256_u1 = 0;
2878 fiat_p256_addcarryx_u32(&mut x282, &mut x283, x281, x266, (0x0 as u32));
2879 let mut x284: u32 = 0;
2880 let mut x285: fiat_p256_u1 = 0;
2881 fiat_p256_addcarryx_u32(&mut x284, &mut x285, x283, x268, (0x0 as u32));
2882 let mut x286: u32 = 0;
2883 let mut x287: u32 = 0;
2884 fiat_p256_mulx_u32(&mut x286, &mut x287, x270, 0xffffffff);
2885 let mut x288: u32 = 0;
2886 let mut x289: u32 = 0;
2887 fiat_p256_mulx_u32(&mut x288, &mut x289, x270, 0xffffffff);
2888 let mut x290: u32 = 0;
2889 let mut x291: u32 = 0;
2890 fiat_p256_mulx_u32(&mut x290, &mut x291, x270, 0xffffffff);
2891 let mut x292: u32 = 0;
2892 let mut x293: u32 = 0;
2893 fiat_p256_mulx_u32(&mut x292, &mut x293, x270, 0xffffffff);
2894 let mut x294: u32 = 0;
2895 let mut x295: fiat_p256_u1 = 0;
2896 fiat_p256_addcarryx_u32(&mut x294, &mut x295, 0x0, x293, x290);
2897 let mut x296: u32 = 0;
2898 let mut x297: fiat_p256_u1 = 0;
2899 fiat_p256_addcarryx_u32(&mut x296, &mut x297, x295, x291, x288);
2900 let mut x298: u32 = 0;
2901 let mut x299: fiat_p256_u1 = 0;
2902 fiat_p256_addcarryx_u32(&mut x298, &mut x299, 0x0, x270, x292);
2903 let mut x300: u32 = 0;
2904 let mut x301: fiat_p256_u1 = 0;
2905 fiat_p256_addcarryx_u32(&mut x300, &mut x301, x299, x272, x294);
2906 let mut x302: u32 = 0;
2907 let mut x303: fiat_p256_u1 = 0;
2908 fiat_p256_addcarryx_u32(&mut x302, &mut x303, x301, x274, x296);
2909 let mut x304: u32 = 0;
2910 let mut x305: fiat_p256_u1 = 0;
2911 fiat_p256_addcarryx_u32(&mut x304, &mut x305, x303, x276, ((x297 as u32) + x289));
2912 let mut x306: u32 = 0;
2913 let mut x307: fiat_p256_u1 = 0;
2914 fiat_p256_addcarryx_u32(&mut x306, &mut x307, x305, x278, (0x0 as u32));
2915 let mut x308: u32 = 0;
2916 let mut x309: fiat_p256_u1 = 0;
2917 fiat_p256_addcarryx_u32(&mut x308, &mut x309, x307, x280, (0x0 as u32));
2918 let mut x310: u32 = 0;
2919 let mut x311: fiat_p256_u1 = 0;
2920 fiat_p256_addcarryx_u32(&mut x310, &mut x311, x309, x282, x270);
2921 let mut x312: u32 = 0;
2922 let mut x313: fiat_p256_u1 = 0;
2923 fiat_p256_addcarryx_u32(&mut x312, &mut x313, x311, x284, x286);
2924 let mut x314: u32 = 0;
2925 let mut x315: fiat_p256_u1 = 0;
2926 fiat_p256_addcarryx_u32(&mut x314, &mut x315, x313, ((x285 as u32) + (x269 as u32)), x287);
2927 let mut x316: u32 = 0;
2928 let mut x317: fiat_p256_u1 = 0;
2929 fiat_p256_subborrowx_u32(&mut x316, &mut x317, 0x0, x300, 0xffffffff);
2930 let mut x318: u32 = 0;
2931 let mut x319: fiat_p256_u1 = 0;
2932 fiat_p256_subborrowx_u32(&mut x318, &mut x319, x317, x302, 0xffffffff);
2933 let mut x320: u32 = 0;
2934 let mut x321: fiat_p256_u1 = 0;
2935 fiat_p256_subborrowx_u32(&mut x320, &mut x321, x319, x304, 0xffffffff);
2936 let mut x322: u32 = 0;
2937 let mut x323: fiat_p256_u1 = 0;
2938 fiat_p256_subborrowx_u32(&mut x322, &mut x323, x321, x306, (0x0 as u32));
2939 let mut x324: u32 = 0;
2940 let mut x325: fiat_p256_u1 = 0;
2941 fiat_p256_subborrowx_u32(&mut x324, &mut x325, x323, x308, (0x0 as u32));
2942 let mut x326: u32 = 0;
2943 let mut x327: fiat_p256_u1 = 0;
2944 fiat_p256_subborrowx_u32(&mut x326, &mut x327, x325, x310, (0x0 as u32));
2945 let mut x328: u32 = 0;
2946 let mut x329: fiat_p256_u1 = 0;
2947 fiat_p256_subborrowx_u32(&mut x328, &mut x329, x327, x312, (0x1 as u32));
2948 let mut x330: u32 = 0;
2949 let mut x331: fiat_p256_u1 = 0;
2950 fiat_p256_subborrowx_u32(&mut x330, &mut x331, x329, x314, 0xffffffff);
2951 let mut x332: u32 = 0;
2952 let mut x333: fiat_p256_u1 = 0;
2953 fiat_p256_subborrowx_u32(&mut x332, &mut x333, x331, (x315 as u32), (0x0 as u32));
2954 let mut x334: u32 = 0;
2955 fiat_p256_cmovznz_u32(&mut x334, x333, x316, x300);
2956 let mut x335: u32 = 0;
2957 fiat_p256_cmovznz_u32(&mut x335, x333, x318, x302);
2958 let mut x336: u32 = 0;
2959 fiat_p256_cmovznz_u32(&mut x336, x333, x320, x304);
2960 let mut x337: u32 = 0;
2961 fiat_p256_cmovznz_u32(&mut x337, x333, x322, x306);
2962 let mut x338: u32 = 0;
2963 fiat_p256_cmovznz_u32(&mut x338, x333, x324, x308);
2964 let mut x339: u32 = 0;
2965 fiat_p256_cmovznz_u32(&mut x339, x333, x326, x310);
2966 let mut x340: u32 = 0;
2967 fiat_p256_cmovznz_u32(&mut x340, x333, x328, x312);
2968 let mut x341: u32 = 0;
2969 fiat_p256_cmovznz_u32(&mut x341, x333, x330, x314);
2970 *IndexConst(&mut out1).index_mut(0) = x334;
2971 *IndexConst(&mut out1).index_mut(1) = x335;
2972 *IndexConst(&mut out1).index_mut(2) = x336;
2973 *IndexConst(&mut out1).index_mut(3) = x337;
2974 *IndexConst(&mut out1).index_mut(4) = x338;
2975 *IndexConst(&mut out1).index_mut(5) = x339;
2976 *IndexConst(&mut out1).index_mut(6) = x340;
2977 *IndexConst(&mut out1).index_mut(7) = x341;
2978}
2979
2980#[inline]
2989pub const fn fiat_p256_to_montgomery(mut out1: &mut fiat_p256_montgomery_domain_field_element, arg1: &fiat_p256_non_montgomery_domain_field_element) {
2990 let x1: u32 = (*IndexConst(arg1).index(1));
2991 let x2: u32 = (*IndexConst(arg1).index(2));
2992 let x3: u32 = (*IndexConst(arg1).index(3));
2993 let x4: u32 = (*IndexConst(arg1).index(4));
2994 let x5: u32 = (*IndexConst(arg1).index(5));
2995 let x6: u32 = (*IndexConst(arg1).index(6));
2996 let x7: u32 = (*IndexConst(arg1).index(7));
2997 let x8: u32 = (*IndexConst(arg1).index(0));
2998 let mut x9: u32 = 0;
2999 let mut x10: u32 = 0;
3000 fiat_p256_mulx_u32(&mut x9, &mut x10, x8, 0x4);
3001 let mut x11: u32 = 0;
3002 let mut x12: u32 = 0;
3003 fiat_p256_mulx_u32(&mut x11, &mut x12, x8, 0xfffffffd);
3004 let mut x13: u32 = 0;
3005 let mut x14: u32 = 0;
3006 fiat_p256_mulx_u32(&mut x13, &mut x14, x8, 0xffffffff);
3007 let mut x15: u32 = 0;
3008 let mut x16: u32 = 0;
3009 fiat_p256_mulx_u32(&mut x15, &mut x16, x8, 0xfffffffe);
3010 let mut x17: u32 = 0;
3011 let mut x18: u32 = 0;
3012 fiat_p256_mulx_u32(&mut x17, &mut x18, x8, 0xfffffffb);
3013 let mut x19: u32 = 0;
3014 let mut x20: u32 = 0;
3015 fiat_p256_mulx_u32(&mut x19, &mut x20, x8, 0xffffffff);
3016 let mut x21: u32 = 0;
3017 let mut x22: u32 = 0;
3018 fiat_p256_mulx_u32(&mut x21, &mut x22, x8, 0x3);
3019 let mut x23: u32 = 0;
3020 let mut x24: fiat_p256_u1 = 0;
3021 fiat_p256_addcarryx_u32(&mut x23, &mut x24, 0x0, x20, x17);
3022 let mut x25: u32 = 0;
3023 let mut x26: fiat_p256_u1 = 0;
3024 fiat_p256_addcarryx_u32(&mut x25, &mut x26, x24, x18, x15);
3025 let mut x27: u32 = 0;
3026 let mut x28: fiat_p256_u1 = 0;
3027 fiat_p256_addcarryx_u32(&mut x27, &mut x28, x26, x16, x13);
3028 let mut x29: u32 = 0;
3029 let mut x30: fiat_p256_u1 = 0;
3030 fiat_p256_addcarryx_u32(&mut x29, &mut x30, x28, x14, x11);
3031 let mut x31: u32 = 0;
3032 let mut x32: fiat_p256_u1 = 0;
3033 fiat_p256_addcarryx_u32(&mut x31, &mut x32, x30, x12, x9);
3034 let mut x33: u32 = 0;
3035 let mut x34: u32 = 0;
3036 fiat_p256_mulx_u32(&mut x33, &mut x34, x21, 0xffffffff);
3037 let mut x35: u32 = 0;
3038 let mut x36: u32 = 0;
3039 fiat_p256_mulx_u32(&mut x35, &mut x36, x21, 0xffffffff);
3040 let mut x37: u32 = 0;
3041 let mut x38: u32 = 0;
3042 fiat_p256_mulx_u32(&mut x37, &mut x38, x21, 0xffffffff);
3043 let mut x39: u32 = 0;
3044 let mut x40: u32 = 0;
3045 fiat_p256_mulx_u32(&mut x39, &mut x40, x21, 0xffffffff);
3046 let mut x41: u32 = 0;
3047 let mut x42: fiat_p256_u1 = 0;
3048 fiat_p256_addcarryx_u32(&mut x41, &mut x42, 0x0, x40, x37);
3049 let mut x43: u32 = 0;
3050 let mut x44: fiat_p256_u1 = 0;
3051 fiat_p256_addcarryx_u32(&mut x43, &mut x44, x42, x38, x35);
3052 let mut x45: u32 = 0;
3053 let mut x46: fiat_p256_u1 = 0;
3054 fiat_p256_addcarryx_u32(&mut x45, &mut x46, 0x0, x21, x39);
3055 let mut x47: u32 = 0;
3056 let mut x48: fiat_p256_u1 = 0;
3057 fiat_p256_addcarryx_u32(&mut x47, &mut x48, x46, x22, x41);
3058 let mut x49: u32 = 0;
3059 let mut x50: fiat_p256_u1 = 0;
3060 fiat_p256_addcarryx_u32(&mut x49, &mut x50, x48, x19, x43);
3061 let mut x51: u32 = 0;
3062 let mut x52: fiat_p256_u1 = 0;
3063 fiat_p256_addcarryx_u32(&mut x51, &mut x52, x50, x23, ((x44 as u32) + x36));
3064 let mut x53: u32 = 0;
3065 let mut x54: fiat_p256_u1 = 0;
3066 fiat_p256_addcarryx_u32(&mut x53, &mut x54, x52, x25, (0x0 as u32));
3067 let mut x55: u32 = 0;
3068 let mut x56: fiat_p256_u1 = 0;
3069 fiat_p256_addcarryx_u32(&mut x55, &mut x56, x54, x27, (0x0 as u32));
3070 let mut x57: u32 = 0;
3071 let mut x58: fiat_p256_u1 = 0;
3072 fiat_p256_addcarryx_u32(&mut x57, &mut x58, x56, x29, x21);
3073 let mut x59: u32 = 0;
3074 let mut x60: fiat_p256_u1 = 0;
3075 fiat_p256_addcarryx_u32(&mut x59, &mut x60, x58, x31, x33);
3076 let mut x61: u32 = 0;
3077 let mut x62: fiat_p256_u1 = 0;
3078 fiat_p256_addcarryx_u32(&mut x61, &mut x62, x60, ((x32 as u32) + x10), x34);
3079 let mut x63: u32 = 0;
3080 let mut x64: u32 = 0;
3081 fiat_p256_mulx_u32(&mut x63, &mut x64, x1, 0x4);
3082 let mut x65: u32 = 0;
3083 let mut x66: u32 = 0;
3084 fiat_p256_mulx_u32(&mut x65, &mut x66, x1, 0xfffffffd);
3085 let mut x67: u32 = 0;
3086 let mut x68: u32 = 0;
3087 fiat_p256_mulx_u32(&mut x67, &mut x68, x1, 0xffffffff);
3088 let mut x69: u32 = 0;
3089 let mut x70: u32 = 0;
3090 fiat_p256_mulx_u32(&mut x69, &mut x70, x1, 0xfffffffe);
3091 let mut x71: u32 = 0;
3092 let mut x72: u32 = 0;
3093 fiat_p256_mulx_u32(&mut x71, &mut x72, x1, 0xfffffffb);
3094 let mut x73: u32 = 0;
3095 let mut x74: u32 = 0;
3096 fiat_p256_mulx_u32(&mut x73, &mut x74, x1, 0xffffffff);
3097 let mut x75: u32 = 0;
3098 let mut x76: u32 = 0;
3099 fiat_p256_mulx_u32(&mut x75, &mut x76, x1, 0x3);
3100 let mut x77: u32 = 0;
3101 let mut x78: fiat_p256_u1 = 0;
3102 fiat_p256_addcarryx_u32(&mut x77, &mut x78, 0x0, x74, x71);
3103 let mut x79: u32 = 0;
3104 let mut x80: fiat_p256_u1 = 0;
3105 fiat_p256_addcarryx_u32(&mut x79, &mut x80, x78, x72, x69);
3106 let mut x81: u32 = 0;
3107 let mut x82: fiat_p256_u1 = 0;
3108 fiat_p256_addcarryx_u32(&mut x81, &mut x82, x80, x70, x67);
3109 let mut x83: u32 = 0;
3110 let mut x84: fiat_p256_u1 = 0;
3111 fiat_p256_addcarryx_u32(&mut x83, &mut x84, x82, x68, x65);
3112 let mut x85: u32 = 0;
3113 let mut x86: fiat_p256_u1 = 0;
3114 fiat_p256_addcarryx_u32(&mut x85, &mut x86, x84, x66, x63);
3115 let mut x87: u32 = 0;
3116 let mut x88: fiat_p256_u1 = 0;
3117 fiat_p256_addcarryx_u32(&mut x87, &mut x88, 0x0, x47, x75);
3118 let mut x89: u32 = 0;
3119 let mut x90: fiat_p256_u1 = 0;
3120 fiat_p256_addcarryx_u32(&mut x89, &mut x90, x88, x49, x76);
3121 let mut x91: u32 = 0;
3122 let mut x92: fiat_p256_u1 = 0;
3123 fiat_p256_addcarryx_u32(&mut x91, &mut x92, x90, x51, x73);
3124 let mut x93: u32 = 0;
3125 let mut x94: fiat_p256_u1 = 0;
3126 fiat_p256_addcarryx_u32(&mut x93, &mut x94, x92, x53, x77);
3127 let mut x95: u32 = 0;
3128 let mut x96: fiat_p256_u1 = 0;
3129 fiat_p256_addcarryx_u32(&mut x95, &mut x96, x94, x55, x79);
3130 let mut x97: u32 = 0;
3131 let mut x98: fiat_p256_u1 = 0;
3132 fiat_p256_addcarryx_u32(&mut x97, &mut x98, x96, x57, x81);
3133 let mut x99: u32 = 0;
3134 let mut x100: fiat_p256_u1 = 0;
3135 fiat_p256_addcarryx_u32(&mut x99, &mut x100, x98, x59, x83);
3136 let mut x101: u32 = 0;
3137 let mut x102: fiat_p256_u1 = 0;
3138 fiat_p256_addcarryx_u32(&mut x101, &mut x102, x100, x61, x85);
3139 let mut x103: u32 = 0;
3140 let mut x104: u32 = 0;
3141 fiat_p256_mulx_u32(&mut x103, &mut x104, x87, 0xffffffff);
3142 let mut x105: u32 = 0;
3143 let mut x106: u32 = 0;
3144 fiat_p256_mulx_u32(&mut x105, &mut x106, x87, 0xffffffff);
3145 let mut x107: u32 = 0;
3146 let mut x108: u32 = 0;
3147 fiat_p256_mulx_u32(&mut x107, &mut x108, x87, 0xffffffff);
3148 let mut x109: u32 = 0;
3149 let mut x110: u32 = 0;
3150 fiat_p256_mulx_u32(&mut x109, &mut x110, x87, 0xffffffff);
3151 let mut x111: u32 = 0;
3152 let mut x112: fiat_p256_u1 = 0;
3153 fiat_p256_addcarryx_u32(&mut x111, &mut x112, 0x0, x110, x107);
3154 let mut x113: u32 = 0;
3155 let mut x114: fiat_p256_u1 = 0;
3156 fiat_p256_addcarryx_u32(&mut x113, &mut x114, x112, x108, x105);
3157 let mut x115: u32 = 0;
3158 let mut x116: fiat_p256_u1 = 0;
3159 fiat_p256_addcarryx_u32(&mut x115, &mut x116, 0x0, x87, x109);
3160 let mut x117: u32 = 0;
3161 let mut x118: fiat_p256_u1 = 0;
3162 fiat_p256_addcarryx_u32(&mut x117, &mut x118, x116, x89, x111);
3163 let mut x119: u32 = 0;
3164 let mut x120: fiat_p256_u1 = 0;
3165 fiat_p256_addcarryx_u32(&mut x119, &mut x120, x118, x91, x113);
3166 let mut x121: u32 = 0;
3167 let mut x122: fiat_p256_u1 = 0;
3168 fiat_p256_addcarryx_u32(&mut x121, &mut x122, x120, x93, ((x114 as u32) + x106));
3169 let mut x123: u32 = 0;
3170 let mut x124: fiat_p256_u1 = 0;
3171 fiat_p256_addcarryx_u32(&mut x123, &mut x124, x122, x95, (0x0 as u32));
3172 let mut x125: u32 = 0;
3173 let mut x126: fiat_p256_u1 = 0;
3174 fiat_p256_addcarryx_u32(&mut x125, &mut x126, x124, x97, (0x0 as u32));
3175 let mut x127: u32 = 0;
3176 let mut x128: fiat_p256_u1 = 0;
3177 fiat_p256_addcarryx_u32(&mut x127, &mut x128, x126, x99, x87);
3178 let mut x129: u32 = 0;
3179 let mut x130: fiat_p256_u1 = 0;
3180 fiat_p256_addcarryx_u32(&mut x129, &mut x130, x128, x101, x103);
3181 let mut x131: u32 = 0;
3182 let mut x132: fiat_p256_u1 = 0;
3183 fiat_p256_addcarryx_u32(&mut x131, &mut x132, x130, (((x102 as u32) + (x62 as u32)) + ((x86 as u32) + x64)), x104);
3184 let mut x133: u32 = 0;
3185 let mut x134: u32 = 0;
3186 fiat_p256_mulx_u32(&mut x133, &mut x134, x2, 0x4);
3187 let mut x135: u32 = 0;
3188 let mut x136: u32 = 0;
3189 fiat_p256_mulx_u32(&mut x135, &mut x136, x2, 0xfffffffd);
3190 let mut x137: u32 = 0;
3191 let mut x138: u32 = 0;
3192 fiat_p256_mulx_u32(&mut x137, &mut x138, x2, 0xffffffff);
3193 let mut x139: u32 = 0;
3194 let mut x140: u32 = 0;
3195 fiat_p256_mulx_u32(&mut x139, &mut x140, x2, 0xfffffffe);
3196 let mut x141: u32 = 0;
3197 let mut x142: u32 = 0;
3198 fiat_p256_mulx_u32(&mut x141, &mut x142, x2, 0xfffffffb);
3199 let mut x143: u32 = 0;
3200 let mut x144: u32 = 0;
3201 fiat_p256_mulx_u32(&mut x143, &mut x144, x2, 0xffffffff);
3202 let mut x145: u32 = 0;
3203 let mut x146: u32 = 0;
3204 fiat_p256_mulx_u32(&mut x145, &mut x146, x2, 0x3);
3205 let mut x147: u32 = 0;
3206 let mut x148: fiat_p256_u1 = 0;
3207 fiat_p256_addcarryx_u32(&mut x147, &mut x148, 0x0, x144, x141);
3208 let mut x149: u32 = 0;
3209 let mut x150: fiat_p256_u1 = 0;
3210 fiat_p256_addcarryx_u32(&mut x149, &mut x150, x148, x142, x139);
3211 let mut x151: u32 = 0;
3212 let mut x152: fiat_p256_u1 = 0;
3213 fiat_p256_addcarryx_u32(&mut x151, &mut x152, x150, x140, x137);
3214 let mut x153: u32 = 0;
3215 let mut x154: fiat_p256_u1 = 0;
3216 fiat_p256_addcarryx_u32(&mut x153, &mut x154, x152, x138, x135);
3217 let mut x155: u32 = 0;
3218 let mut x156: fiat_p256_u1 = 0;
3219 fiat_p256_addcarryx_u32(&mut x155, &mut x156, x154, x136, x133);
3220 let mut x157: u32 = 0;
3221 let mut x158: fiat_p256_u1 = 0;
3222 fiat_p256_addcarryx_u32(&mut x157, &mut x158, 0x0, x117, x145);
3223 let mut x159: u32 = 0;
3224 let mut x160: fiat_p256_u1 = 0;
3225 fiat_p256_addcarryx_u32(&mut x159, &mut x160, x158, x119, x146);
3226 let mut x161: u32 = 0;
3227 let mut x162: fiat_p256_u1 = 0;
3228 fiat_p256_addcarryx_u32(&mut x161, &mut x162, x160, x121, x143);
3229 let mut x163: u32 = 0;
3230 let mut x164: fiat_p256_u1 = 0;
3231 fiat_p256_addcarryx_u32(&mut x163, &mut x164, x162, x123, x147);
3232 let mut x165: u32 = 0;
3233 let mut x166: fiat_p256_u1 = 0;
3234 fiat_p256_addcarryx_u32(&mut x165, &mut x166, x164, x125, x149);
3235 let mut x167: u32 = 0;
3236 let mut x168: fiat_p256_u1 = 0;
3237 fiat_p256_addcarryx_u32(&mut x167, &mut x168, x166, x127, x151);
3238 let mut x169: u32 = 0;
3239 let mut x170: fiat_p256_u1 = 0;
3240 fiat_p256_addcarryx_u32(&mut x169, &mut x170, x168, x129, x153);
3241 let mut x171: u32 = 0;
3242 let mut x172: fiat_p256_u1 = 0;
3243 fiat_p256_addcarryx_u32(&mut x171, &mut x172, x170, x131, x155);
3244 let mut x173: u32 = 0;
3245 let mut x174: u32 = 0;
3246 fiat_p256_mulx_u32(&mut x173, &mut x174, x157, 0xffffffff);
3247 let mut x175: u32 = 0;
3248 let mut x176: u32 = 0;
3249 fiat_p256_mulx_u32(&mut x175, &mut x176, x157, 0xffffffff);
3250 let mut x177: u32 = 0;
3251 let mut x178: u32 = 0;
3252 fiat_p256_mulx_u32(&mut x177, &mut x178, x157, 0xffffffff);
3253 let mut x179: u32 = 0;
3254 let mut x180: u32 = 0;
3255 fiat_p256_mulx_u32(&mut x179, &mut x180, x157, 0xffffffff);
3256 let mut x181: u32 = 0;
3257 let mut x182: fiat_p256_u1 = 0;
3258 fiat_p256_addcarryx_u32(&mut x181, &mut x182, 0x0, x180, x177);
3259 let mut x183: u32 = 0;
3260 let mut x184: fiat_p256_u1 = 0;
3261 fiat_p256_addcarryx_u32(&mut x183, &mut x184, x182, x178, x175);
3262 let mut x185: u32 = 0;
3263 let mut x186: fiat_p256_u1 = 0;
3264 fiat_p256_addcarryx_u32(&mut x185, &mut x186, 0x0, x157, x179);
3265 let mut x187: u32 = 0;
3266 let mut x188: fiat_p256_u1 = 0;
3267 fiat_p256_addcarryx_u32(&mut x187, &mut x188, x186, x159, x181);
3268 let mut x189: u32 = 0;
3269 let mut x190: fiat_p256_u1 = 0;
3270 fiat_p256_addcarryx_u32(&mut x189, &mut x190, x188, x161, x183);
3271 let mut x191: u32 = 0;
3272 let mut x192: fiat_p256_u1 = 0;
3273 fiat_p256_addcarryx_u32(&mut x191, &mut x192, x190, x163, ((x184 as u32) + x176));
3274 let mut x193: u32 = 0;
3275 let mut x194: fiat_p256_u1 = 0;
3276 fiat_p256_addcarryx_u32(&mut x193, &mut x194, x192, x165, (0x0 as u32));
3277 let mut x195: u32 = 0;
3278 let mut x196: fiat_p256_u1 = 0;
3279 fiat_p256_addcarryx_u32(&mut x195, &mut x196, x194, x167, (0x0 as u32));
3280 let mut x197: u32 = 0;
3281 let mut x198: fiat_p256_u1 = 0;
3282 fiat_p256_addcarryx_u32(&mut x197, &mut x198, x196, x169, x157);
3283 let mut x199: u32 = 0;
3284 let mut x200: fiat_p256_u1 = 0;
3285 fiat_p256_addcarryx_u32(&mut x199, &mut x200, x198, x171, x173);
3286 let mut x201: u32 = 0;
3287 let mut x202: fiat_p256_u1 = 0;
3288 fiat_p256_addcarryx_u32(&mut x201, &mut x202, x200, (((x172 as u32) + (x132 as u32)) + ((x156 as u32) + x134)), x174);
3289 let mut x203: u32 = 0;
3290 let mut x204: u32 = 0;
3291 fiat_p256_mulx_u32(&mut x203, &mut x204, x3, 0x4);
3292 let mut x205: u32 = 0;
3293 let mut x206: u32 = 0;
3294 fiat_p256_mulx_u32(&mut x205, &mut x206, x3, 0xfffffffd);
3295 let mut x207: u32 = 0;
3296 let mut x208: u32 = 0;
3297 fiat_p256_mulx_u32(&mut x207, &mut x208, x3, 0xffffffff);
3298 let mut x209: u32 = 0;
3299 let mut x210: u32 = 0;
3300 fiat_p256_mulx_u32(&mut x209, &mut x210, x3, 0xfffffffe);
3301 let mut x211: u32 = 0;
3302 let mut x212: u32 = 0;
3303 fiat_p256_mulx_u32(&mut x211, &mut x212, x3, 0xfffffffb);
3304 let mut x213: u32 = 0;
3305 let mut x214: u32 = 0;
3306 fiat_p256_mulx_u32(&mut x213, &mut x214, x3, 0xffffffff);
3307 let mut x215: u32 = 0;
3308 let mut x216: u32 = 0;
3309 fiat_p256_mulx_u32(&mut x215, &mut x216, x3, 0x3);
3310 let mut x217: u32 = 0;
3311 let mut x218: fiat_p256_u1 = 0;
3312 fiat_p256_addcarryx_u32(&mut x217, &mut x218, 0x0, x214, x211);
3313 let mut x219: u32 = 0;
3314 let mut x220: fiat_p256_u1 = 0;
3315 fiat_p256_addcarryx_u32(&mut x219, &mut x220, x218, x212, x209);
3316 let mut x221: u32 = 0;
3317 let mut x222: fiat_p256_u1 = 0;
3318 fiat_p256_addcarryx_u32(&mut x221, &mut x222, x220, x210, x207);
3319 let mut x223: u32 = 0;
3320 let mut x224: fiat_p256_u1 = 0;
3321 fiat_p256_addcarryx_u32(&mut x223, &mut x224, x222, x208, x205);
3322 let mut x225: u32 = 0;
3323 let mut x226: fiat_p256_u1 = 0;
3324 fiat_p256_addcarryx_u32(&mut x225, &mut x226, x224, x206, x203);
3325 let mut x227: u32 = 0;
3326 let mut x228: fiat_p256_u1 = 0;
3327 fiat_p256_addcarryx_u32(&mut x227, &mut x228, 0x0, x187, x215);
3328 let mut x229: u32 = 0;
3329 let mut x230: fiat_p256_u1 = 0;
3330 fiat_p256_addcarryx_u32(&mut x229, &mut x230, x228, x189, x216);
3331 let mut x231: u32 = 0;
3332 let mut x232: fiat_p256_u1 = 0;
3333 fiat_p256_addcarryx_u32(&mut x231, &mut x232, x230, x191, x213);
3334 let mut x233: u32 = 0;
3335 let mut x234: fiat_p256_u1 = 0;
3336 fiat_p256_addcarryx_u32(&mut x233, &mut x234, x232, x193, x217);
3337 let mut x235: u32 = 0;
3338 let mut x236: fiat_p256_u1 = 0;
3339 fiat_p256_addcarryx_u32(&mut x235, &mut x236, x234, x195, x219);
3340 let mut x237: u32 = 0;
3341 let mut x238: fiat_p256_u1 = 0;
3342 fiat_p256_addcarryx_u32(&mut x237, &mut x238, x236, x197, x221);
3343 let mut x239: u32 = 0;
3344 let mut x240: fiat_p256_u1 = 0;
3345 fiat_p256_addcarryx_u32(&mut x239, &mut x240, x238, x199, x223);
3346 let mut x241: u32 = 0;
3347 let mut x242: fiat_p256_u1 = 0;
3348 fiat_p256_addcarryx_u32(&mut x241, &mut x242, x240, x201, x225);
3349 let mut x243: u32 = 0;
3350 let mut x244: u32 = 0;
3351 fiat_p256_mulx_u32(&mut x243, &mut x244, x227, 0xffffffff);
3352 let mut x245: u32 = 0;
3353 let mut x246: u32 = 0;
3354 fiat_p256_mulx_u32(&mut x245, &mut x246, x227, 0xffffffff);
3355 let mut x247: u32 = 0;
3356 let mut x248: u32 = 0;
3357 fiat_p256_mulx_u32(&mut x247, &mut x248, x227, 0xffffffff);
3358 let mut x249: u32 = 0;
3359 let mut x250: u32 = 0;
3360 fiat_p256_mulx_u32(&mut x249, &mut x250, x227, 0xffffffff);
3361 let mut x251: u32 = 0;
3362 let mut x252: fiat_p256_u1 = 0;
3363 fiat_p256_addcarryx_u32(&mut x251, &mut x252, 0x0, x250, x247);
3364 let mut x253: u32 = 0;
3365 let mut x254: fiat_p256_u1 = 0;
3366 fiat_p256_addcarryx_u32(&mut x253, &mut x254, x252, x248, x245);
3367 let mut x255: u32 = 0;
3368 let mut x256: fiat_p256_u1 = 0;
3369 fiat_p256_addcarryx_u32(&mut x255, &mut x256, 0x0, x227, x249);
3370 let mut x257: u32 = 0;
3371 let mut x258: fiat_p256_u1 = 0;
3372 fiat_p256_addcarryx_u32(&mut x257, &mut x258, x256, x229, x251);
3373 let mut x259: u32 = 0;
3374 let mut x260: fiat_p256_u1 = 0;
3375 fiat_p256_addcarryx_u32(&mut x259, &mut x260, x258, x231, x253);
3376 let mut x261: u32 = 0;
3377 let mut x262: fiat_p256_u1 = 0;
3378 fiat_p256_addcarryx_u32(&mut x261, &mut x262, x260, x233, ((x254 as u32) + x246));
3379 let mut x263: u32 = 0;
3380 let mut x264: fiat_p256_u1 = 0;
3381 fiat_p256_addcarryx_u32(&mut x263, &mut x264, x262, x235, (0x0 as u32));
3382 let mut x265: u32 = 0;
3383 let mut x266: fiat_p256_u1 = 0;
3384 fiat_p256_addcarryx_u32(&mut x265, &mut x266, x264, x237, (0x0 as u32));
3385 let mut x267: u32 = 0;
3386 let mut x268: fiat_p256_u1 = 0;
3387 fiat_p256_addcarryx_u32(&mut x267, &mut x268, x266, x239, x227);
3388 let mut x269: u32 = 0;
3389 let mut x270: fiat_p256_u1 = 0;
3390 fiat_p256_addcarryx_u32(&mut x269, &mut x270, x268, x241, x243);
3391 let mut x271: u32 = 0;
3392 let mut x272: fiat_p256_u1 = 0;
3393 fiat_p256_addcarryx_u32(&mut x271, &mut x272, x270, (((x242 as u32) + (x202 as u32)) + ((x226 as u32) + x204)), x244);
3394 let mut x273: u32 = 0;
3395 let mut x274: u32 = 0;
3396 fiat_p256_mulx_u32(&mut x273, &mut x274, x4, 0x4);
3397 let mut x275: u32 = 0;
3398 let mut x276: u32 = 0;
3399 fiat_p256_mulx_u32(&mut x275, &mut x276, x4, 0xfffffffd);
3400 let mut x277: u32 = 0;
3401 let mut x278: u32 = 0;
3402 fiat_p256_mulx_u32(&mut x277, &mut x278, x4, 0xffffffff);
3403 let mut x279: u32 = 0;
3404 let mut x280: u32 = 0;
3405 fiat_p256_mulx_u32(&mut x279, &mut x280, x4, 0xfffffffe);
3406 let mut x281: u32 = 0;
3407 let mut x282: u32 = 0;
3408 fiat_p256_mulx_u32(&mut x281, &mut x282, x4, 0xfffffffb);
3409 let mut x283: u32 = 0;
3410 let mut x284: u32 = 0;
3411 fiat_p256_mulx_u32(&mut x283, &mut x284, x4, 0xffffffff);
3412 let mut x285: u32 = 0;
3413 let mut x286: u32 = 0;
3414 fiat_p256_mulx_u32(&mut x285, &mut x286, x4, 0x3);
3415 let mut x287: u32 = 0;
3416 let mut x288: fiat_p256_u1 = 0;
3417 fiat_p256_addcarryx_u32(&mut x287, &mut x288, 0x0, x284, x281);
3418 let mut x289: u32 = 0;
3419 let mut x290: fiat_p256_u1 = 0;
3420 fiat_p256_addcarryx_u32(&mut x289, &mut x290, x288, x282, x279);
3421 let mut x291: u32 = 0;
3422 let mut x292: fiat_p256_u1 = 0;
3423 fiat_p256_addcarryx_u32(&mut x291, &mut x292, x290, x280, x277);
3424 let mut x293: u32 = 0;
3425 let mut x294: fiat_p256_u1 = 0;
3426 fiat_p256_addcarryx_u32(&mut x293, &mut x294, x292, x278, x275);
3427 let mut x295: u32 = 0;
3428 let mut x296: fiat_p256_u1 = 0;
3429 fiat_p256_addcarryx_u32(&mut x295, &mut x296, x294, x276, x273);
3430 let mut x297: u32 = 0;
3431 let mut x298: fiat_p256_u1 = 0;
3432 fiat_p256_addcarryx_u32(&mut x297, &mut x298, 0x0, x257, x285);
3433 let mut x299: u32 = 0;
3434 let mut x300: fiat_p256_u1 = 0;
3435 fiat_p256_addcarryx_u32(&mut x299, &mut x300, x298, x259, x286);
3436 let mut x301: u32 = 0;
3437 let mut x302: fiat_p256_u1 = 0;
3438 fiat_p256_addcarryx_u32(&mut x301, &mut x302, x300, x261, x283);
3439 let mut x303: u32 = 0;
3440 let mut x304: fiat_p256_u1 = 0;
3441 fiat_p256_addcarryx_u32(&mut x303, &mut x304, x302, x263, x287);
3442 let mut x305: u32 = 0;
3443 let mut x306: fiat_p256_u1 = 0;
3444 fiat_p256_addcarryx_u32(&mut x305, &mut x306, x304, x265, x289);
3445 let mut x307: u32 = 0;
3446 let mut x308: fiat_p256_u1 = 0;
3447 fiat_p256_addcarryx_u32(&mut x307, &mut x308, x306, x267, x291);
3448 let mut x309: u32 = 0;
3449 let mut x310: fiat_p256_u1 = 0;
3450 fiat_p256_addcarryx_u32(&mut x309, &mut x310, x308, x269, x293);
3451 let mut x311: u32 = 0;
3452 let mut x312: fiat_p256_u1 = 0;
3453 fiat_p256_addcarryx_u32(&mut x311, &mut x312, x310, x271, x295);
3454 let mut x313: u32 = 0;
3455 let mut x314: u32 = 0;
3456 fiat_p256_mulx_u32(&mut x313, &mut x314, x297, 0xffffffff);
3457 let mut x315: u32 = 0;
3458 let mut x316: u32 = 0;
3459 fiat_p256_mulx_u32(&mut x315, &mut x316, x297, 0xffffffff);
3460 let mut x317: u32 = 0;
3461 let mut x318: u32 = 0;
3462 fiat_p256_mulx_u32(&mut x317, &mut x318, x297, 0xffffffff);
3463 let mut x319: u32 = 0;
3464 let mut x320: u32 = 0;
3465 fiat_p256_mulx_u32(&mut x319, &mut x320, x297, 0xffffffff);
3466 let mut x321: u32 = 0;
3467 let mut x322: fiat_p256_u1 = 0;
3468 fiat_p256_addcarryx_u32(&mut x321, &mut x322, 0x0, x320, x317);
3469 let mut x323: u32 = 0;
3470 let mut x324: fiat_p256_u1 = 0;
3471 fiat_p256_addcarryx_u32(&mut x323, &mut x324, x322, x318, x315);
3472 let mut x325: u32 = 0;
3473 let mut x326: fiat_p256_u1 = 0;
3474 fiat_p256_addcarryx_u32(&mut x325, &mut x326, 0x0, x297, x319);
3475 let mut x327: u32 = 0;
3476 let mut x328: fiat_p256_u1 = 0;
3477 fiat_p256_addcarryx_u32(&mut x327, &mut x328, x326, x299, x321);
3478 let mut x329: u32 = 0;
3479 let mut x330: fiat_p256_u1 = 0;
3480 fiat_p256_addcarryx_u32(&mut x329, &mut x330, x328, x301, x323);
3481 let mut x331: u32 = 0;
3482 let mut x332: fiat_p256_u1 = 0;
3483 fiat_p256_addcarryx_u32(&mut x331, &mut x332, x330, x303, ((x324 as u32) + x316));
3484 let mut x333: u32 = 0;
3485 let mut x334: fiat_p256_u1 = 0;
3486 fiat_p256_addcarryx_u32(&mut x333, &mut x334, x332, x305, (0x0 as u32));
3487 let mut x335: u32 = 0;
3488 let mut x336: fiat_p256_u1 = 0;
3489 fiat_p256_addcarryx_u32(&mut x335, &mut x336, x334, x307, (0x0 as u32));
3490 let mut x337: u32 = 0;
3491 let mut x338: fiat_p256_u1 = 0;
3492 fiat_p256_addcarryx_u32(&mut x337, &mut x338, x336, x309, x297);
3493 let mut x339: u32 = 0;
3494 let mut x340: fiat_p256_u1 = 0;
3495 fiat_p256_addcarryx_u32(&mut x339, &mut x340, x338, x311, x313);
3496 let mut x341: u32 = 0;
3497 let mut x342: fiat_p256_u1 = 0;
3498 fiat_p256_addcarryx_u32(&mut x341, &mut x342, x340, (((x312 as u32) + (x272 as u32)) + ((x296 as u32) + x274)), x314);
3499 let mut x343: u32 = 0;
3500 let mut x344: u32 = 0;
3501 fiat_p256_mulx_u32(&mut x343, &mut x344, x5, 0x4);
3502 let mut x345: u32 = 0;
3503 let mut x346: u32 = 0;
3504 fiat_p256_mulx_u32(&mut x345, &mut x346, x5, 0xfffffffd);
3505 let mut x347: u32 = 0;
3506 let mut x348: u32 = 0;
3507 fiat_p256_mulx_u32(&mut x347, &mut x348, x5, 0xffffffff);
3508 let mut x349: u32 = 0;
3509 let mut x350: u32 = 0;
3510 fiat_p256_mulx_u32(&mut x349, &mut x350, x5, 0xfffffffe);
3511 let mut x351: u32 = 0;
3512 let mut x352: u32 = 0;
3513 fiat_p256_mulx_u32(&mut x351, &mut x352, x5, 0xfffffffb);
3514 let mut x353: u32 = 0;
3515 let mut x354: u32 = 0;
3516 fiat_p256_mulx_u32(&mut x353, &mut x354, x5, 0xffffffff);
3517 let mut x355: u32 = 0;
3518 let mut x356: u32 = 0;
3519 fiat_p256_mulx_u32(&mut x355, &mut x356, x5, 0x3);
3520 let mut x357: u32 = 0;
3521 let mut x358: fiat_p256_u1 = 0;
3522 fiat_p256_addcarryx_u32(&mut x357, &mut x358, 0x0, x354, x351);
3523 let mut x359: u32 = 0;
3524 let mut x360: fiat_p256_u1 = 0;
3525 fiat_p256_addcarryx_u32(&mut x359, &mut x360, x358, x352, x349);
3526 let mut x361: u32 = 0;
3527 let mut x362: fiat_p256_u1 = 0;
3528 fiat_p256_addcarryx_u32(&mut x361, &mut x362, x360, x350, x347);
3529 let mut x363: u32 = 0;
3530 let mut x364: fiat_p256_u1 = 0;
3531 fiat_p256_addcarryx_u32(&mut x363, &mut x364, x362, x348, x345);
3532 let mut x365: u32 = 0;
3533 let mut x366: fiat_p256_u1 = 0;
3534 fiat_p256_addcarryx_u32(&mut x365, &mut x366, x364, x346, x343);
3535 let mut x367: u32 = 0;
3536 let mut x368: fiat_p256_u1 = 0;
3537 fiat_p256_addcarryx_u32(&mut x367, &mut x368, 0x0, x327, x355);
3538 let mut x369: u32 = 0;
3539 let mut x370: fiat_p256_u1 = 0;
3540 fiat_p256_addcarryx_u32(&mut x369, &mut x370, x368, x329, x356);
3541 let mut x371: u32 = 0;
3542 let mut x372: fiat_p256_u1 = 0;
3543 fiat_p256_addcarryx_u32(&mut x371, &mut x372, x370, x331, x353);
3544 let mut x373: u32 = 0;
3545 let mut x374: fiat_p256_u1 = 0;
3546 fiat_p256_addcarryx_u32(&mut x373, &mut x374, x372, x333, x357);
3547 let mut x375: u32 = 0;
3548 let mut x376: fiat_p256_u1 = 0;
3549 fiat_p256_addcarryx_u32(&mut x375, &mut x376, x374, x335, x359);
3550 let mut x377: u32 = 0;
3551 let mut x378: fiat_p256_u1 = 0;
3552 fiat_p256_addcarryx_u32(&mut x377, &mut x378, x376, x337, x361);
3553 let mut x379: u32 = 0;
3554 let mut x380: fiat_p256_u1 = 0;
3555 fiat_p256_addcarryx_u32(&mut x379, &mut x380, x378, x339, x363);
3556 let mut x381: u32 = 0;
3557 let mut x382: fiat_p256_u1 = 0;
3558 fiat_p256_addcarryx_u32(&mut x381, &mut x382, x380, x341, x365);
3559 let mut x383: u32 = 0;
3560 let mut x384: u32 = 0;
3561 fiat_p256_mulx_u32(&mut x383, &mut x384, x367, 0xffffffff);
3562 let mut x385: u32 = 0;
3563 let mut x386: u32 = 0;
3564 fiat_p256_mulx_u32(&mut x385, &mut x386, x367, 0xffffffff);
3565 let mut x387: u32 = 0;
3566 let mut x388: u32 = 0;
3567 fiat_p256_mulx_u32(&mut x387, &mut x388, x367, 0xffffffff);
3568 let mut x389: u32 = 0;
3569 let mut x390: u32 = 0;
3570 fiat_p256_mulx_u32(&mut x389, &mut x390, x367, 0xffffffff);
3571 let mut x391: u32 = 0;
3572 let mut x392: fiat_p256_u1 = 0;
3573 fiat_p256_addcarryx_u32(&mut x391, &mut x392, 0x0, x390, x387);
3574 let mut x393: u32 = 0;
3575 let mut x394: fiat_p256_u1 = 0;
3576 fiat_p256_addcarryx_u32(&mut x393, &mut x394, x392, x388, x385);
3577 let mut x395: u32 = 0;
3578 let mut x396: fiat_p256_u1 = 0;
3579 fiat_p256_addcarryx_u32(&mut x395, &mut x396, 0x0, x367, x389);
3580 let mut x397: u32 = 0;
3581 let mut x398: fiat_p256_u1 = 0;
3582 fiat_p256_addcarryx_u32(&mut x397, &mut x398, x396, x369, x391);
3583 let mut x399: u32 = 0;
3584 let mut x400: fiat_p256_u1 = 0;
3585 fiat_p256_addcarryx_u32(&mut x399, &mut x400, x398, x371, x393);
3586 let mut x401: u32 = 0;
3587 let mut x402: fiat_p256_u1 = 0;
3588 fiat_p256_addcarryx_u32(&mut x401, &mut x402, x400, x373, ((x394 as u32) + x386));
3589 let mut x403: u32 = 0;
3590 let mut x404: fiat_p256_u1 = 0;
3591 fiat_p256_addcarryx_u32(&mut x403, &mut x404, x402, x375, (0x0 as u32));
3592 let mut x405: u32 = 0;
3593 let mut x406: fiat_p256_u1 = 0;
3594 fiat_p256_addcarryx_u32(&mut x405, &mut x406, x404, x377, (0x0 as u32));
3595 let mut x407: u32 = 0;
3596 let mut x408: fiat_p256_u1 = 0;
3597 fiat_p256_addcarryx_u32(&mut x407, &mut x408, x406, x379, x367);
3598 let mut x409: u32 = 0;
3599 let mut x410: fiat_p256_u1 = 0;
3600 fiat_p256_addcarryx_u32(&mut x409, &mut x410, x408, x381, x383);
3601 let mut x411: u32 = 0;
3602 let mut x412: fiat_p256_u1 = 0;
3603 fiat_p256_addcarryx_u32(&mut x411, &mut x412, x410, (((x382 as u32) + (x342 as u32)) + ((x366 as u32) + x344)), x384);
3604 let mut x413: u32 = 0;
3605 let mut x414: u32 = 0;
3606 fiat_p256_mulx_u32(&mut x413, &mut x414, x6, 0x4);
3607 let mut x415: u32 = 0;
3608 let mut x416: u32 = 0;
3609 fiat_p256_mulx_u32(&mut x415, &mut x416, x6, 0xfffffffd);
3610 let mut x417: u32 = 0;
3611 let mut x418: u32 = 0;
3612 fiat_p256_mulx_u32(&mut x417, &mut x418, x6, 0xffffffff);
3613 let mut x419: u32 = 0;
3614 let mut x420: u32 = 0;
3615 fiat_p256_mulx_u32(&mut x419, &mut x420, x6, 0xfffffffe);
3616 let mut x421: u32 = 0;
3617 let mut x422: u32 = 0;
3618 fiat_p256_mulx_u32(&mut x421, &mut x422, x6, 0xfffffffb);
3619 let mut x423: u32 = 0;
3620 let mut x424: u32 = 0;
3621 fiat_p256_mulx_u32(&mut x423, &mut x424, x6, 0xffffffff);
3622 let mut x425: u32 = 0;
3623 let mut x426: u32 = 0;
3624 fiat_p256_mulx_u32(&mut x425, &mut x426, x6, 0x3);
3625 let mut x427: u32 = 0;
3626 let mut x428: fiat_p256_u1 = 0;
3627 fiat_p256_addcarryx_u32(&mut x427, &mut x428, 0x0, x424, x421);
3628 let mut x429: u32 = 0;
3629 let mut x430: fiat_p256_u1 = 0;
3630 fiat_p256_addcarryx_u32(&mut x429, &mut x430, x428, x422, x419);
3631 let mut x431: u32 = 0;
3632 let mut x432: fiat_p256_u1 = 0;
3633 fiat_p256_addcarryx_u32(&mut x431, &mut x432, x430, x420, x417);
3634 let mut x433: u32 = 0;
3635 let mut x434: fiat_p256_u1 = 0;
3636 fiat_p256_addcarryx_u32(&mut x433, &mut x434, x432, x418, x415);
3637 let mut x435: u32 = 0;
3638 let mut x436: fiat_p256_u1 = 0;
3639 fiat_p256_addcarryx_u32(&mut x435, &mut x436, x434, x416, x413);
3640 let mut x437: u32 = 0;
3641 let mut x438: fiat_p256_u1 = 0;
3642 fiat_p256_addcarryx_u32(&mut x437, &mut x438, 0x0, x397, x425);
3643 let mut x439: u32 = 0;
3644 let mut x440: fiat_p256_u1 = 0;
3645 fiat_p256_addcarryx_u32(&mut x439, &mut x440, x438, x399, x426);
3646 let mut x441: u32 = 0;
3647 let mut x442: fiat_p256_u1 = 0;
3648 fiat_p256_addcarryx_u32(&mut x441, &mut x442, x440, x401, x423);
3649 let mut x443: u32 = 0;
3650 let mut x444: fiat_p256_u1 = 0;
3651 fiat_p256_addcarryx_u32(&mut x443, &mut x444, x442, x403, x427);
3652 let mut x445: u32 = 0;
3653 let mut x446: fiat_p256_u1 = 0;
3654 fiat_p256_addcarryx_u32(&mut x445, &mut x446, x444, x405, x429);
3655 let mut x447: u32 = 0;
3656 let mut x448: fiat_p256_u1 = 0;
3657 fiat_p256_addcarryx_u32(&mut x447, &mut x448, x446, x407, x431);
3658 let mut x449: u32 = 0;
3659 let mut x450: fiat_p256_u1 = 0;
3660 fiat_p256_addcarryx_u32(&mut x449, &mut x450, x448, x409, x433);
3661 let mut x451: u32 = 0;
3662 let mut x452: fiat_p256_u1 = 0;
3663 fiat_p256_addcarryx_u32(&mut x451, &mut x452, x450, x411, x435);
3664 let mut x453: u32 = 0;
3665 let mut x454: u32 = 0;
3666 fiat_p256_mulx_u32(&mut x453, &mut x454, x437, 0xffffffff);
3667 let mut x455: u32 = 0;
3668 let mut x456: u32 = 0;
3669 fiat_p256_mulx_u32(&mut x455, &mut x456, x437, 0xffffffff);
3670 let mut x457: u32 = 0;
3671 let mut x458: u32 = 0;
3672 fiat_p256_mulx_u32(&mut x457, &mut x458, x437, 0xffffffff);
3673 let mut x459: u32 = 0;
3674 let mut x460: u32 = 0;
3675 fiat_p256_mulx_u32(&mut x459, &mut x460, x437, 0xffffffff);
3676 let mut x461: u32 = 0;
3677 let mut x462: fiat_p256_u1 = 0;
3678 fiat_p256_addcarryx_u32(&mut x461, &mut x462, 0x0, x460, x457);
3679 let mut x463: u32 = 0;
3680 let mut x464: fiat_p256_u1 = 0;
3681 fiat_p256_addcarryx_u32(&mut x463, &mut x464, x462, x458, x455);
3682 let mut x465: u32 = 0;
3683 let mut x466: fiat_p256_u1 = 0;
3684 fiat_p256_addcarryx_u32(&mut x465, &mut x466, 0x0, x437, x459);
3685 let mut x467: u32 = 0;
3686 let mut x468: fiat_p256_u1 = 0;
3687 fiat_p256_addcarryx_u32(&mut x467, &mut x468, x466, x439, x461);
3688 let mut x469: u32 = 0;
3689 let mut x470: fiat_p256_u1 = 0;
3690 fiat_p256_addcarryx_u32(&mut x469, &mut x470, x468, x441, x463);
3691 let mut x471: u32 = 0;
3692 let mut x472: fiat_p256_u1 = 0;
3693 fiat_p256_addcarryx_u32(&mut x471, &mut x472, x470, x443, ((x464 as u32) + x456));
3694 let mut x473: u32 = 0;
3695 let mut x474: fiat_p256_u1 = 0;
3696 fiat_p256_addcarryx_u32(&mut x473, &mut x474, x472, x445, (0x0 as u32));
3697 let mut x475: u32 = 0;
3698 let mut x476: fiat_p256_u1 = 0;
3699 fiat_p256_addcarryx_u32(&mut x475, &mut x476, x474, x447, (0x0 as u32));
3700 let mut x477: u32 = 0;
3701 let mut x478: fiat_p256_u1 = 0;
3702 fiat_p256_addcarryx_u32(&mut x477, &mut x478, x476, x449, x437);
3703 let mut x479: u32 = 0;
3704 let mut x480: fiat_p256_u1 = 0;
3705 fiat_p256_addcarryx_u32(&mut x479, &mut x480, x478, x451, x453);
3706 let mut x481: u32 = 0;
3707 let mut x482: fiat_p256_u1 = 0;
3708 fiat_p256_addcarryx_u32(&mut x481, &mut x482, x480, (((x452 as u32) + (x412 as u32)) + ((x436 as u32) + x414)), x454);
3709 let mut x483: u32 = 0;
3710 let mut x484: u32 = 0;
3711 fiat_p256_mulx_u32(&mut x483, &mut x484, x7, 0x4);
3712 let mut x485: u32 = 0;
3713 let mut x486: u32 = 0;
3714 fiat_p256_mulx_u32(&mut x485, &mut x486, x7, 0xfffffffd);
3715 let mut x487: u32 = 0;
3716 let mut x488: u32 = 0;
3717 fiat_p256_mulx_u32(&mut x487, &mut x488, x7, 0xffffffff);
3718 let mut x489: u32 = 0;
3719 let mut x490: u32 = 0;
3720 fiat_p256_mulx_u32(&mut x489, &mut x490, x7, 0xfffffffe);
3721 let mut x491: u32 = 0;
3722 let mut x492: u32 = 0;
3723 fiat_p256_mulx_u32(&mut x491, &mut x492, x7, 0xfffffffb);
3724 let mut x493: u32 = 0;
3725 let mut x494: u32 = 0;
3726 fiat_p256_mulx_u32(&mut x493, &mut x494, x7, 0xffffffff);
3727 let mut x495: u32 = 0;
3728 let mut x496: u32 = 0;
3729 fiat_p256_mulx_u32(&mut x495, &mut x496, x7, 0x3);
3730 let mut x497: u32 = 0;
3731 let mut x498: fiat_p256_u1 = 0;
3732 fiat_p256_addcarryx_u32(&mut x497, &mut x498, 0x0, x494, x491);
3733 let mut x499: u32 = 0;
3734 let mut x500: fiat_p256_u1 = 0;
3735 fiat_p256_addcarryx_u32(&mut x499, &mut x500, x498, x492, x489);
3736 let mut x501: u32 = 0;
3737 let mut x502: fiat_p256_u1 = 0;
3738 fiat_p256_addcarryx_u32(&mut x501, &mut x502, x500, x490, x487);
3739 let mut x503: u32 = 0;
3740 let mut x504: fiat_p256_u1 = 0;
3741 fiat_p256_addcarryx_u32(&mut x503, &mut x504, x502, x488, x485);
3742 let mut x505: u32 = 0;
3743 let mut x506: fiat_p256_u1 = 0;
3744 fiat_p256_addcarryx_u32(&mut x505, &mut x506, x504, x486, x483);
3745 let mut x507: u32 = 0;
3746 let mut x508: fiat_p256_u1 = 0;
3747 fiat_p256_addcarryx_u32(&mut x507, &mut x508, 0x0, x467, x495);
3748 let mut x509: u32 = 0;
3749 let mut x510: fiat_p256_u1 = 0;
3750 fiat_p256_addcarryx_u32(&mut x509, &mut x510, x508, x469, x496);
3751 let mut x511: u32 = 0;
3752 let mut x512: fiat_p256_u1 = 0;
3753 fiat_p256_addcarryx_u32(&mut x511, &mut x512, x510, x471, x493);
3754 let mut x513: u32 = 0;
3755 let mut x514: fiat_p256_u1 = 0;
3756 fiat_p256_addcarryx_u32(&mut x513, &mut x514, x512, x473, x497);
3757 let mut x515: u32 = 0;
3758 let mut x516: fiat_p256_u1 = 0;
3759 fiat_p256_addcarryx_u32(&mut x515, &mut x516, x514, x475, x499);
3760 let mut x517: u32 = 0;
3761 let mut x518: fiat_p256_u1 = 0;
3762 fiat_p256_addcarryx_u32(&mut x517, &mut x518, x516, x477, x501);
3763 let mut x519: u32 = 0;
3764 let mut x520: fiat_p256_u1 = 0;
3765 fiat_p256_addcarryx_u32(&mut x519, &mut x520, x518, x479, x503);
3766 let mut x521: u32 = 0;
3767 let mut x522: fiat_p256_u1 = 0;
3768 fiat_p256_addcarryx_u32(&mut x521, &mut x522, x520, x481, x505);
3769 let mut x523: u32 = 0;
3770 let mut x524: u32 = 0;
3771 fiat_p256_mulx_u32(&mut x523, &mut x524, x507, 0xffffffff);
3772 let mut x525: u32 = 0;
3773 let mut x526: u32 = 0;
3774 fiat_p256_mulx_u32(&mut x525, &mut x526, x507, 0xffffffff);
3775 let mut x527: u32 = 0;
3776 let mut x528: u32 = 0;
3777 fiat_p256_mulx_u32(&mut x527, &mut x528, x507, 0xffffffff);
3778 let mut x529: u32 = 0;
3779 let mut x530: u32 = 0;
3780 fiat_p256_mulx_u32(&mut x529, &mut x530, x507, 0xffffffff);
3781 let mut x531: u32 = 0;
3782 let mut x532: fiat_p256_u1 = 0;
3783 fiat_p256_addcarryx_u32(&mut x531, &mut x532, 0x0, x530, x527);
3784 let mut x533: u32 = 0;
3785 let mut x534: fiat_p256_u1 = 0;
3786 fiat_p256_addcarryx_u32(&mut x533, &mut x534, x532, x528, x525);
3787 let mut x535: u32 = 0;
3788 let mut x536: fiat_p256_u1 = 0;
3789 fiat_p256_addcarryx_u32(&mut x535, &mut x536, 0x0, x507, x529);
3790 let mut x537: u32 = 0;
3791 let mut x538: fiat_p256_u1 = 0;
3792 fiat_p256_addcarryx_u32(&mut x537, &mut x538, x536, x509, x531);
3793 let mut x539: u32 = 0;
3794 let mut x540: fiat_p256_u1 = 0;
3795 fiat_p256_addcarryx_u32(&mut x539, &mut x540, x538, x511, x533);
3796 let mut x541: u32 = 0;
3797 let mut x542: fiat_p256_u1 = 0;
3798 fiat_p256_addcarryx_u32(&mut x541, &mut x542, x540, x513, ((x534 as u32) + x526));
3799 let mut x543: u32 = 0;
3800 let mut x544: fiat_p256_u1 = 0;
3801 fiat_p256_addcarryx_u32(&mut x543, &mut x544, x542, x515, (0x0 as u32));
3802 let mut x545: u32 = 0;
3803 let mut x546: fiat_p256_u1 = 0;
3804 fiat_p256_addcarryx_u32(&mut x545, &mut x546, x544, x517, (0x0 as u32));
3805 let mut x547: u32 = 0;
3806 let mut x548: fiat_p256_u1 = 0;
3807 fiat_p256_addcarryx_u32(&mut x547, &mut x548, x546, x519, x507);
3808 let mut x549: u32 = 0;
3809 let mut x550: fiat_p256_u1 = 0;
3810 fiat_p256_addcarryx_u32(&mut x549, &mut x550, x548, x521, x523);
3811 let mut x551: u32 = 0;
3812 let mut x552: fiat_p256_u1 = 0;
3813 fiat_p256_addcarryx_u32(&mut x551, &mut x552, x550, (((x522 as u32) + (x482 as u32)) + ((x506 as u32) + x484)), x524);
3814 let mut x553: u32 = 0;
3815 let mut x554: fiat_p256_u1 = 0;
3816 fiat_p256_subborrowx_u32(&mut x553, &mut x554, 0x0, x537, 0xffffffff);
3817 let mut x555: u32 = 0;
3818 let mut x556: fiat_p256_u1 = 0;
3819 fiat_p256_subborrowx_u32(&mut x555, &mut x556, x554, x539, 0xffffffff);
3820 let mut x557: u32 = 0;
3821 let mut x558: fiat_p256_u1 = 0;
3822 fiat_p256_subborrowx_u32(&mut x557, &mut x558, x556, x541, 0xffffffff);
3823 let mut x559: u32 = 0;
3824 let mut x560: fiat_p256_u1 = 0;
3825 fiat_p256_subborrowx_u32(&mut x559, &mut x560, x558, x543, (0x0 as u32));
3826 let mut x561: u32 = 0;
3827 let mut x562: fiat_p256_u1 = 0;
3828 fiat_p256_subborrowx_u32(&mut x561, &mut x562, x560, x545, (0x0 as u32));
3829 let mut x563: u32 = 0;
3830 let mut x564: fiat_p256_u1 = 0;
3831 fiat_p256_subborrowx_u32(&mut x563, &mut x564, x562, x547, (0x0 as u32));
3832 let mut x565: u32 = 0;
3833 let mut x566: fiat_p256_u1 = 0;
3834 fiat_p256_subborrowx_u32(&mut x565, &mut x566, x564, x549, (0x1 as u32));
3835 let mut x567: u32 = 0;
3836 let mut x568: fiat_p256_u1 = 0;
3837 fiat_p256_subborrowx_u32(&mut x567, &mut x568, x566, x551, 0xffffffff);
3838 let mut x569: u32 = 0;
3839 let mut x570: fiat_p256_u1 = 0;
3840 fiat_p256_subborrowx_u32(&mut x569, &mut x570, x568, (x552 as u32), (0x0 as u32));
3841 let mut x571: u32 = 0;
3842 fiat_p256_cmovznz_u32(&mut x571, x570, x553, x537);
3843 let mut x572: u32 = 0;
3844 fiat_p256_cmovznz_u32(&mut x572, x570, x555, x539);
3845 let mut x573: u32 = 0;
3846 fiat_p256_cmovznz_u32(&mut x573, x570, x557, x541);
3847 let mut x574: u32 = 0;
3848 fiat_p256_cmovznz_u32(&mut x574, x570, x559, x543);
3849 let mut x575: u32 = 0;
3850 fiat_p256_cmovznz_u32(&mut x575, x570, x561, x545);
3851 let mut x576: u32 = 0;
3852 fiat_p256_cmovznz_u32(&mut x576, x570, x563, x547);
3853 let mut x577: u32 = 0;
3854 fiat_p256_cmovznz_u32(&mut x577, x570, x565, x549);
3855 let mut x578: u32 = 0;
3856 fiat_p256_cmovznz_u32(&mut x578, x570, x567, x551);
3857 *IndexConst(&mut out1).index_mut(0) = x571;
3858 *IndexConst(&mut out1).index_mut(1) = x572;
3859 *IndexConst(&mut out1).index_mut(2) = x573;
3860 *IndexConst(&mut out1).index_mut(3) = x574;
3861 *IndexConst(&mut out1).index_mut(4) = x575;
3862 *IndexConst(&mut out1).index_mut(5) = x576;
3863 *IndexConst(&mut out1).index_mut(6) = x577;
3864 *IndexConst(&mut out1).index_mut(7) = x578;
3865}
3866
3867#[inline]
3879pub const fn fiat_p256_nonzero(out1: &mut u32, arg1: &[u32; 8]) {
3880 let x1: u32 = ((*IndexConst(arg1).index(0)) | ((*IndexConst(arg1).index(1)) | ((*IndexConst(arg1).index(2)) | ((*IndexConst(arg1).index(3)) | ((*IndexConst(arg1).index(4)) | ((*IndexConst(arg1).index(5)) | ((*IndexConst(arg1).index(6)) | (*IndexConst(arg1).index(7)))))))));
3881 *out1 = x1;
3882}
3883
3884#[inline]
3896pub const fn fiat_p256_selectznz(mut out1: &mut [u32; 8], arg1: fiat_p256_u1, arg2: &[u32; 8], arg3: &[u32; 8]) {
3897 let mut x1: u32 = 0;
3898 fiat_p256_cmovznz_u32(&mut x1, arg1, (*IndexConst(arg2).index(0)), (*IndexConst(arg3).index(0)));
3899 let mut x2: u32 = 0;
3900 fiat_p256_cmovznz_u32(&mut x2, arg1, (*IndexConst(arg2).index(1)), (*IndexConst(arg3).index(1)));
3901 let mut x3: u32 = 0;
3902 fiat_p256_cmovznz_u32(&mut x3, arg1, (*IndexConst(arg2).index(2)), (*IndexConst(arg3).index(2)));
3903 let mut x4: u32 = 0;
3904 fiat_p256_cmovznz_u32(&mut x4, arg1, (*IndexConst(arg2).index(3)), (*IndexConst(arg3).index(3)));
3905 let mut x5: u32 = 0;
3906 fiat_p256_cmovznz_u32(&mut x5, arg1, (*IndexConst(arg2).index(4)), (*IndexConst(arg3).index(4)));
3907 let mut x6: u32 = 0;
3908 fiat_p256_cmovznz_u32(&mut x6, arg1, (*IndexConst(arg2).index(5)), (*IndexConst(arg3).index(5)));
3909 let mut x7: u32 = 0;
3910 fiat_p256_cmovznz_u32(&mut x7, arg1, (*IndexConst(arg2).index(6)), (*IndexConst(arg3).index(6)));
3911 let mut x8: u32 = 0;
3912 fiat_p256_cmovznz_u32(&mut x8, arg1, (*IndexConst(arg2).index(7)), (*IndexConst(arg3).index(7)));
3913 *IndexConst(&mut out1).index_mut(0) = x1;
3914 *IndexConst(&mut out1).index_mut(1) = x2;
3915 *IndexConst(&mut out1).index_mut(2) = x3;
3916 *IndexConst(&mut out1).index_mut(3) = x4;
3917 *IndexConst(&mut out1).index_mut(4) = x5;
3918 *IndexConst(&mut out1).index_mut(5) = x6;
3919 *IndexConst(&mut out1).index_mut(6) = x7;
3920 *IndexConst(&mut out1).index_mut(7) = x8;
3921}
3922
3923#[inline]
3935pub const fn fiat_p256_to_bytes(mut out1: &mut [u8; 32], arg1: &[u32; 8]) {
3936 let x1: u32 = (*IndexConst(arg1).index(7));
3937 let x2: u32 = (*IndexConst(arg1).index(6));
3938 let x3: u32 = (*IndexConst(arg1).index(5));
3939 let x4: u32 = (*IndexConst(arg1).index(4));
3940 let x5: u32 = (*IndexConst(arg1).index(3));
3941 let x6: u32 = (*IndexConst(arg1).index(2));
3942 let x7: u32 = (*IndexConst(arg1).index(1));
3943 let x8: u32 = (*IndexConst(arg1).index(0));
3944 let x9: u8 = ((x8 & (0xff as u32)) as u8);
3945 let x10: u32 = (x8 >> 8);
3946 let x11: u8 = ((x10 & (0xff as u32)) as u8);
3947 let x12: u32 = (x10 >> 8);
3948 let x13: u8 = ((x12 & (0xff as u32)) as u8);
3949 let x14: u8 = ((x12 >> 8) as u8);
3950 let x15: u8 = ((x7 & (0xff as u32)) as u8);
3951 let x16: u32 = (x7 >> 8);
3952 let x17: u8 = ((x16 & (0xff as u32)) as u8);
3953 let x18: u32 = (x16 >> 8);
3954 let x19: u8 = ((x18 & (0xff as u32)) as u8);
3955 let x20: u8 = ((x18 >> 8) as u8);
3956 let x21: u8 = ((x6 & (0xff as u32)) as u8);
3957 let x22: u32 = (x6 >> 8);
3958 let x23: u8 = ((x22 & (0xff as u32)) as u8);
3959 let x24: u32 = (x22 >> 8);
3960 let x25: u8 = ((x24 & (0xff as u32)) as u8);
3961 let x26: u8 = ((x24 >> 8) as u8);
3962 let x27: u8 = ((x5 & (0xff as u32)) as u8);
3963 let x28: u32 = (x5 >> 8);
3964 let x29: u8 = ((x28 & (0xff as u32)) as u8);
3965 let x30: u32 = (x28 >> 8);
3966 let x31: u8 = ((x30 & (0xff as u32)) as u8);
3967 let x32: u8 = ((x30 >> 8) as u8);
3968 let x33: u8 = ((x4 & (0xff as u32)) as u8);
3969 let x34: u32 = (x4 >> 8);
3970 let x35: u8 = ((x34 & (0xff as u32)) as u8);
3971 let x36: u32 = (x34 >> 8);
3972 let x37: u8 = ((x36 & (0xff as u32)) as u8);
3973 let x38: u8 = ((x36 >> 8) as u8);
3974 let x39: u8 = ((x3 & (0xff as u32)) as u8);
3975 let x40: u32 = (x3 >> 8);
3976 let x41: u8 = ((x40 & (0xff as u32)) as u8);
3977 let x42: u32 = (x40 >> 8);
3978 let x43: u8 = ((x42 & (0xff as u32)) as u8);
3979 let x44: u8 = ((x42 >> 8) as u8);
3980 let x45: u8 = ((x2 & (0xff as u32)) as u8);
3981 let x46: u32 = (x2 >> 8);
3982 let x47: u8 = ((x46 & (0xff as u32)) as u8);
3983 let x48: u32 = (x46 >> 8);
3984 let x49: u8 = ((x48 & (0xff as u32)) as u8);
3985 let x50: u8 = ((x48 >> 8) as u8);
3986 let x51: u8 = ((x1 & (0xff as u32)) as u8);
3987 let x52: u32 = (x1 >> 8);
3988 let x53: u8 = ((x52 & (0xff as u32)) as u8);
3989 let x54: u32 = (x52 >> 8);
3990 let x55: u8 = ((x54 & (0xff as u32)) as u8);
3991 let x56: u8 = ((x54 >> 8) as u8);
3992 *IndexConst(&mut out1).index_mut(0) = x9;
3993 *IndexConst(&mut out1).index_mut(1) = x11;
3994 *IndexConst(&mut out1).index_mut(2) = x13;
3995 *IndexConst(&mut out1).index_mut(3) = x14;
3996 *IndexConst(&mut out1).index_mut(4) = x15;
3997 *IndexConst(&mut out1).index_mut(5) = x17;
3998 *IndexConst(&mut out1).index_mut(6) = x19;
3999 *IndexConst(&mut out1).index_mut(7) = x20;
4000 *IndexConst(&mut out1).index_mut(8) = x21;
4001 *IndexConst(&mut out1).index_mut(9) = x23;
4002 *IndexConst(&mut out1).index_mut(10) = x25;
4003 *IndexConst(&mut out1).index_mut(11) = x26;
4004 *IndexConst(&mut out1).index_mut(12) = x27;
4005 *IndexConst(&mut out1).index_mut(13) = x29;
4006 *IndexConst(&mut out1).index_mut(14) = x31;
4007 *IndexConst(&mut out1).index_mut(15) = x32;
4008 *IndexConst(&mut out1).index_mut(16) = x33;
4009 *IndexConst(&mut out1).index_mut(17) = x35;
4010 *IndexConst(&mut out1).index_mut(18) = x37;
4011 *IndexConst(&mut out1).index_mut(19) = x38;
4012 *IndexConst(&mut out1).index_mut(20) = x39;
4013 *IndexConst(&mut out1).index_mut(21) = x41;
4014 *IndexConst(&mut out1).index_mut(22) = x43;
4015 *IndexConst(&mut out1).index_mut(23) = x44;
4016 *IndexConst(&mut out1).index_mut(24) = x45;
4017 *IndexConst(&mut out1).index_mut(25) = x47;
4018 *IndexConst(&mut out1).index_mut(26) = x49;
4019 *IndexConst(&mut out1).index_mut(27) = x50;
4020 *IndexConst(&mut out1).index_mut(28) = x51;
4021 *IndexConst(&mut out1).index_mut(29) = x53;
4022 *IndexConst(&mut out1).index_mut(30) = x55;
4023 *IndexConst(&mut out1).index_mut(31) = x56;
4024}
4025
4026#[inline]
4039pub const fn fiat_p256_from_bytes(mut out1: &mut [u32; 8], arg1: &[u8; 32]) {
4040 let x1: u32 = (((*IndexConst(arg1).index(31)) as u32) << 24);
4041 let x2: u32 = (((*IndexConst(arg1).index(30)) as u32) << 16);
4042 let x3: u32 = (((*IndexConst(arg1).index(29)) as u32) << 8);
4043 let x4: u8 = (*IndexConst(arg1).index(28));
4044 let x5: u32 = (((*IndexConst(arg1).index(27)) as u32) << 24);
4045 let x6: u32 = (((*IndexConst(arg1).index(26)) as u32) << 16);
4046 let x7: u32 = (((*IndexConst(arg1).index(25)) as u32) << 8);
4047 let x8: u8 = (*IndexConst(arg1).index(24));
4048 let x9: u32 = (((*IndexConst(arg1).index(23)) as u32) << 24);
4049 let x10: u32 = (((*IndexConst(arg1).index(22)) as u32) << 16);
4050 let x11: u32 = (((*IndexConst(arg1).index(21)) as u32) << 8);
4051 let x12: u8 = (*IndexConst(arg1).index(20));
4052 let x13: u32 = (((*IndexConst(arg1).index(19)) as u32) << 24);
4053 let x14: u32 = (((*IndexConst(arg1).index(18)) as u32) << 16);
4054 let x15: u32 = (((*IndexConst(arg1).index(17)) as u32) << 8);
4055 let x16: u8 = (*IndexConst(arg1).index(16));
4056 let x17: u32 = (((*IndexConst(arg1).index(15)) as u32) << 24);
4057 let x18: u32 = (((*IndexConst(arg1).index(14)) as u32) << 16);
4058 let x19: u32 = (((*IndexConst(arg1).index(13)) as u32) << 8);
4059 let x20: u8 = (*IndexConst(arg1).index(12));
4060 let x21: u32 = (((*IndexConst(arg1).index(11)) as u32) << 24);
4061 let x22: u32 = (((*IndexConst(arg1).index(10)) as u32) << 16);
4062 let x23: u32 = (((*IndexConst(arg1).index(9)) as u32) << 8);
4063 let x24: u8 = (*IndexConst(arg1).index(8));
4064 let x25: u32 = (((*IndexConst(arg1).index(7)) as u32) << 24);
4065 let x26: u32 = (((*IndexConst(arg1).index(6)) as u32) << 16);
4066 let x27: u32 = (((*IndexConst(arg1).index(5)) as u32) << 8);
4067 let x28: u8 = (*IndexConst(arg1).index(4));
4068 let x29: u32 = (((*IndexConst(arg1).index(3)) as u32) << 24);
4069 let x30: u32 = (((*IndexConst(arg1).index(2)) as u32) << 16);
4070 let x31: u32 = (((*IndexConst(arg1).index(1)) as u32) << 8);
4071 let x32: u8 = (*IndexConst(arg1).index(0));
4072 let x33: u32 = (x31 + (x32 as u32));
4073 let x34: u32 = (x30 + x33);
4074 let x35: u32 = (x29 + x34);
4075 let x36: u32 = (x27 + (x28 as u32));
4076 let x37: u32 = (x26 + x36);
4077 let x38: u32 = (x25 + x37);
4078 let x39: u32 = (x23 + (x24 as u32));
4079 let x40: u32 = (x22 + x39);
4080 let x41: u32 = (x21 + x40);
4081 let x42: u32 = (x19 + (x20 as u32));
4082 let x43: u32 = (x18 + x42);
4083 let x44: u32 = (x17 + x43);
4084 let x45: u32 = (x15 + (x16 as u32));
4085 let x46: u32 = (x14 + x45);
4086 let x47: u32 = (x13 + x46);
4087 let x48: u32 = (x11 + (x12 as u32));
4088 let x49: u32 = (x10 + x48);
4089 let x50: u32 = (x9 + x49);
4090 let x51: u32 = (x7 + (x8 as u32));
4091 let x52: u32 = (x6 + x51);
4092 let x53: u32 = (x5 + x52);
4093 let x54: u32 = (x3 + (x4 as u32));
4094 let x55: u32 = (x2 + x54);
4095 let x56: u32 = (x1 + x55);
4096 *IndexConst(&mut out1).index_mut(0) = x35;
4097 *IndexConst(&mut out1).index_mut(1) = x38;
4098 *IndexConst(&mut out1).index_mut(2) = x41;
4099 *IndexConst(&mut out1).index_mut(3) = x44;
4100 *IndexConst(&mut out1).index_mut(4) = x47;
4101 *IndexConst(&mut out1).index_mut(5) = x50;
4102 *IndexConst(&mut out1).index_mut(6) = x53;
4103 *IndexConst(&mut out1).index_mut(7) = x56;
4104}
4105
4106#[inline]
4113pub const fn fiat_p256_set_one(mut out1: &mut fiat_p256_montgomery_domain_field_element) {
4114 *IndexConst(&mut out1).index_mut(0) = (0x1 as u32);
4115 *IndexConst(&mut out1).index_mut(1) = (0x0 as u32);
4116 *IndexConst(&mut out1).index_mut(2) = (0x0 as u32);
4117 *IndexConst(&mut out1).index_mut(3) = 0xffffffff;
4118 *IndexConst(&mut out1).index_mut(4) = 0xffffffff;
4119 *IndexConst(&mut out1).index_mut(5) = 0xffffffff;
4120 *IndexConst(&mut out1).index_mut(6) = 0xfffffffe;
4121 *IndexConst(&mut out1).index_mut(7) = (0x0 as u32);
4122}
4123
4124#[inline]
4133pub const fn fiat_p256_msat(mut out1: &mut [u32; 9]) {
4134 *IndexConst(&mut out1).index_mut(0) = 0xffffffff;
4135 *IndexConst(&mut out1).index_mut(1) = 0xffffffff;
4136 *IndexConst(&mut out1).index_mut(2) = 0xffffffff;
4137 *IndexConst(&mut out1).index_mut(3) = (0x0 as u32);
4138 *IndexConst(&mut out1).index_mut(4) = (0x0 as u32);
4139 *IndexConst(&mut out1).index_mut(5) = (0x0 as u32);
4140 *IndexConst(&mut out1).index_mut(6) = (0x1 as u32);
4141 *IndexConst(&mut out1).index_mut(7) = 0xffffffff;
4142 *IndexConst(&mut out1).index_mut(8) = (0x0 as u32);
4143}
4144
4145#[inline]
4174pub const fn fiat_p256_divstep(out1: &mut u32, mut out2: &mut [u32; 9], mut out3: &mut [u32; 9], mut out4: &mut [u32; 8], mut out5: &mut [u32; 8], arg1: u32, arg2: &[u32; 9], arg3: &[u32; 9], arg4: &[u32; 8], arg5: &[u32; 8]) {
4175 let mut x1: u32 = 0;
4176 let mut x2: fiat_p256_u1 = 0;
4177 fiat_p256_addcarryx_u32(&mut x1, &mut x2, 0x0, (!arg1), (0x1 as u32));
4178 let x3: fiat_p256_u1 = (((x1 >> 31) as fiat_p256_u1) & (((*IndexConst(arg3).index(0)) & (0x1 as u32)) as fiat_p256_u1));
4179 let mut x4: u32 = 0;
4180 let mut x5: fiat_p256_u1 = 0;
4181 fiat_p256_addcarryx_u32(&mut x4, &mut x5, 0x0, (!arg1), (0x1 as u32));
4182 let mut x6: u32 = 0;
4183 fiat_p256_cmovznz_u32(&mut x6, x3, arg1, x4);
4184 let mut x7: u32 = 0;
4185 fiat_p256_cmovznz_u32(&mut x7, x3, (*IndexConst(arg2).index(0)), (*IndexConst(arg3).index(0)));
4186 let mut x8: u32 = 0;
4187 fiat_p256_cmovznz_u32(&mut x8, x3, (*IndexConst(arg2).index(1)), (*IndexConst(arg3).index(1)));
4188 let mut x9: u32 = 0;
4189 fiat_p256_cmovznz_u32(&mut x9, x3, (*IndexConst(arg2).index(2)), (*IndexConst(arg3).index(2)));
4190 let mut x10: u32 = 0;
4191 fiat_p256_cmovznz_u32(&mut x10, x3, (*IndexConst(arg2).index(3)), (*IndexConst(arg3).index(3)));
4192 let mut x11: u32 = 0;
4193 fiat_p256_cmovznz_u32(&mut x11, x3, (*IndexConst(arg2).index(4)), (*IndexConst(arg3).index(4)));
4194 let mut x12: u32 = 0;
4195 fiat_p256_cmovznz_u32(&mut x12, x3, (*IndexConst(arg2).index(5)), (*IndexConst(arg3).index(5)));
4196 let mut x13: u32 = 0;
4197 fiat_p256_cmovznz_u32(&mut x13, x3, (*IndexConst(arg2).index(6)), (*IndexConst(arg3).index(6)));
4198 let mut x14: u32 = 0;
4199 fiat_p256_cmovznz_u32(&mut x14, x3, (*IndexConst(arg2).index(7)), (*IndexConst(arg3).index(7)));
4200 let mut x15: u32 = 0;
4201 fiat_p256_cmovznz_u32(&mut x15, x3, (*IndexConst(arg2).index(8)), (*IndexConst(arg3).index(8)));
4202 let mut x16: u32 = 0;
4203 let mut x17: fiat_p256_u1 = 0;
4204 fiat_p256_addcarryx_u32(&mut x16, &mut x17, 0x0, (0x1 as u32), (!(*IndexConst(arg2).index(0))));
4205 let mut x18: u32 = 0;
4206 let mut x19: fiat_p256_u1 = 0;
4207 fiat_p256_addcarryx_u32(&mut x18, &mut x19, x17, (0x0 as u32), (!(*IndexConst(arg2).index(1))));
4208 let mut x20: u32 = 0;
4209 let mut x21: fiat_p256_u1 = 0;
4210 fiat_p256_addcarryx_u32(&mut x20, &mut x21, x19, (0x0 as u32), (!(*IndexConst(arg2).index(2))));
4211 let mut x22: u32 = 0;
4212 let mut x23: fiat_p256_u1 = 0;
4213 fiat_p256_addcarryx_u32(&mut x22, &mut x23, x21, (0x0 as u32), (!(*IndexConst(arg2).index(3))));
4214 let mut x24: u32 = 0;
4215 let mut x25: fiat_p256_u1 = 0;
4216 fiat_p256_addcarryx_u32(&mut x24, &mut x25, x23, (0x0 as u32), (!(*IndexConst(arg2).index(4))));
4217 let mut x26: u32 = 0;
4218 let mut x27: fiat_p256_u1 = 0;
4219 fiat_p256_addcarryx_u32(&mut x26, &mut x27, x25, (0x0 as u32), (!(*IndexConst(arg2).index(5))));
4220 let mut x28: u32 = 0;
4221 let mut x29: fiat_p256_u1 = 0;
4222 fiat_p256_addcarryx_u32(&mut x28, &mut x29, x27, (0x0 as u32), (!(*IndexConst(arg2).index(6))));
4223 let mut x30: u32 = 0;
4224 let mut x31: fiat_p256_u1 = 0;
4225 fiat_p256_addcarryx_u32(&mut x30, &mut x31, x29, (0x0 as u32), (!(*IndexConst(arg2).index(7))));
4226 let mut x32: u32 = 0;
4227 let mut x33: fiat_p256_u1 = 0;
4228 fiat_p256_addcarryx_u32(&mut x32, &mut x33, x31, (0x0 as u32), (!(*IndexConst(arg2).index(8))));
4229 let mut x34: u32 = 0;
4230 fiat_p256_cmovznz_u32(&mut x34, x3, (*IndexConst(arg3).index(0)), x16);
4231 let mut x35: u32 = 0;
4232 fiat_p256_cmovznz_u32(&mut x35, x3, (*IndexConst(arg3).index(1)), x18);
4233 let mut x36: u32 = 0;
4234 fiat_p256_cmovznz_u32(&mut x36, x3, (*IndexConst(arg3).index(2)), x20);
4235 let mut x37: u32 = 0;
4236 fiat_p256_cmovznz_u32(&mut x37, x3, (*IndexConst(arg3).index(3)), x22);
4237 let mut x38: u32 = 0;
4238 fiat_p256_cmovznz_u32(&mut x38, x3, (*IndexConst(arg3).index(4)), x24);
4239 let mut x39: u32 = 0;
4240 fiat_p256_cmovznz_u32(&mut x39, x3, (*IndexConst(arg3).index(5)), x26);
4241 let mut x40: u32 = 0;
4242 fiat_p256_cmovznz_u32(&mut x40, x3, (*IndexConst(arg3).index(6)), x28);
4243 let mut x41: u32 = 0;
4244 fiat_p256_cmovznz_u32(&mut x41, x3, (*IndexConst(arg3).index(7)), x30);
4245 let mut x42: u32 = 0;
4246 fiat_p256_cmovznz_u32(&mut x42, x3, (*IndexConst(arg3).index(8)), x32);
4247 let mut x43: u32 = 0;
4248 fiat_p256_cmovznz_u32(&mut x43, x3, (*IndexConst(arg4).index(0)), (*IndexConst(arg5).index(0)));
4249 let mut x44: u32 = 0;
4250 fiat_p256_cmovznz_u32(&mut x44, x3, (*IndexConst(arg4).index(1)), (*IndexConst(arg5).index(1)));
4251 let mut x45: u32 = 0;
4252 fiat_p256_cmovznz_u32(&mut x45, x3, (*IndexConst(arg4).index(2)), (*IndexConst(arg5).index(2)));
4253 let mut x46: u32 = 0;
4254 fiat_p256_cmovznz_u32(&mut x46, x3, (*IndexConst(arg4).index(3)), (*IndexConst(arg5).index(3)));
4255 let mut x47: u32 = 0;
4256 fiat_p256_cmovznz_u32(&mut x47, x3, (*IndexConst(arg4).index(4)), (*IndexConst(arg5).index(4)));
4257 let mut x48: u32 = 0;
4258 fiat_p256_cmovznz_u32(&mut x48, x3, (*IndexConst(arg4).index(5)), (*IndexConst(arg5).index(5)));
4259 let mut x49: u32 = 0;
4260 fiat_p256_cmovznz_u32(&mut x49, x3, (*IndexConst(arg4).index(6)), (*IndexConst(arg5).index(6)));
4261 let mut x50: u32 = 0;
4262 fiat_p256_cmovznz_u32(&mut x50, x3, (*IndexConst(arg4).index(7)), (*IndexConst(arg5).index(7)));
4263 let mut x51: u32 = 0;
4264 let mut x52: fiat_p256_u1 = 0;
4265 fiat_p256_addcarryx_u32(&mut x51, &mut x52, 0x0, x43, x43);
4266 let mut x53: u32 = 0;
4267 let mut x54: fiat_p256_u1 = 0;
4268 fiat_p256_addcarryx_u32(&mut x53, &mut x54, x52, x44, x44);
4269 let mut x55: u32 = 0;
4270 let mut x56: fiat_p256_u1 = 0;
4271 fiat_p256_addcarryx_u32(&mut x55, &mut x56, x54, x45, x45);
4272 let mut x57: u32 = 0;
4273 let mut x58: fiat_p256_u1 = 0;
4274 fiat_p256_addcarryx_u32(&mut x57, &mut x58, x56, x46, x46);
4275 let mut x59: u32 = 0;
4276 let mut x60: fiat_p256_u1 = 0;
4277 fiat_p256_addcarryx_u32(&mut x59, &mut x60, x58, x47, x47);
4278 let mut x61: u32 = 0;
4279 let mut x62: fiat_p256_u1 = 0;
4280 fiat_p256_addcarryx_u32(&mut x61, &mut x62, x60, x48, x48);
4281 let mut x63: u32 = 0;
4282 let mut x64: fiat_p256_u1 = 0;
4283 fiat_p256_addcarryx_u32(&mut x63, &mut x64, x62, x49, x49);
4284 let mut x65: u32 = 0;
4285 let mut x66: fiat_p256_u1 = 0;
4286 fiat_p256_addcarryx_u32(&mut x65, &mut x66, x64, x50, x50);
4287 let mut x67: u32 = 0;
4288 let mut x68: fiat_p256_u1 = 0;
4289 fiat_p256_subborrowx_u32(&mut x67, &mut x68, 0x0, x51, 0xffffffff);
4290 let mut x69: u32 = 0;
4291 let mut x70: fiat_p256_u1 = 0;
4292 fiat_p256_subborrowx_u32(&mut x69, &mut x70, x68, x53, 0xffffffff);
4293 let mut x71: u32 = 0;
4294 let mut x72: fiat_p256_u1 = 0;
4295 fiat_p256_subborrowx_u32(&mut x71, &mut x72, x70, x55, 0xffffffff);
4296 let mut x73: u32 = 0;
4297 let mut x74: fiat_p256_u1 = 0;
4298 fiat_p256_subborrowx_u32(&mut x73, &mut x74, x72, x57, (0x0 as u32));
4299 let mut x75: u32 = 0;
4300 let mut x76: fiat_p256_u1 = 0;
4301 fiat_p256_subborrowx_u32(&mut x75, &mut x76, x74, x59, (0x0 as u32));
4302 let mut x77: u32 = 0;
4303 let mut x78: fiat_p256_u1 = 0;
4304 fiat_p256_subborrowx_u32(&mut x77, &mut x78, x76, x61, (0x0 as u32));
4305 let mut x79: u32 = 0;
4306 let mut x80: fiat_p256_u1 = 0;
4307 fiat_p256_subborrowx_u32(&mut x79, &mut x80, x78, x63, (0x1 as u32));
4308 let mut x81: u32 = 0;
4309 let mut x82: fiat_p256_u1 = 0;
4310 fiat_p256_subborrowx_u32(&mut x81, &mut x82, x80, x65, 0xffffffff);
4311 let mut x83: u32 = 0;
4312 let mut x84: fiat_p256_u1 = 0;
4313 fiat_p256_subborrowx_u32(&mut x83, &mut x84, x82, (x66 as u32), (0x0 as u32));
4314 let x85: u32 = (*IndexConst(arg4).index(7));
4315 let x86: u32 = (*IndexConst(arg4).index(6));
4316 let x87: u32 = (*IndexConst(arg4).index(5));
4317 let x88: u32 = (*IndexConst(arg4).index(4));
4318 let x89: u32 = (*IndexConst(arg4).index(3));
4319 let x90: u32 = (*IndexConst(arg4).index(2));
4320 let x91: u32 = (*IndexConst(arg4).index(1));
4321 let x92: u32 = (*IndexConst(arg4).index(0));
4322 let mut x93: u32 = 0;
4323 let mut x94: fiat_p256_u1 = 0;
4324 fiat_p256_subborrowx_u32(&mut x93, &mut x94, 0x0, (0x0 as u32), x92);
4325 let mut x95: u32 = 0;
4326 let mut x96: fiat_p256_u1 = 0;
4327 fiat_p256_subborrowx_u32(&mut x95, &mut x96, x94, (0x0 as u32), x91);
4328 let mut x97: u32 = 0;
4329 let mut x98: fiat_p256_u1 = 0;
4330 fiat_p256_subborrowx_u32(&mut x97, &mut x98, x96, (0x0 as u32), x90);
4331 let mut x99: u32 = 0;
4332 let mut x100: fiat_p256_u1 = 0;
4333 fiat_p256_subborrowx_u32(&mut x99, &mut x100, x98, (0x0 as u32), x89);
4334 let mut x101: u32 = 0;
4335 let mut x102: fiat_p256_u1 = 0;
4336 fiat_p256_subborrowx_u32(&mut x101, &mut x102, x100, (0x0 as u32), x88);
4337 let mut x103: u32 = 0;
4338 let mut x104: fiat_p256_u1 = 0;
4339 fiat_p256_subborrowx_u32(&mut x103, &mut x104, x102, (0x0 as u32), x87);
4340 let mut x105: u32 = 0;
4341 let mut x106: fiat_p256_u1 = 0;
4342 fiat_p256_subborrowx_u32(&mut x105, &mut x106, x104, (0x0 as u32), x86);
4343 let mut x107: u32 = 0;
4344 let mut x108: fiat_p256_u1 = 0;
4345 fiat_p256_subborrowx_u32(&mut x107, &mut x108, x106, (0x0 as u32), x85);
4346 let mut x109: u32 = 0;
4347 fiat_p256_cmovznz_u32(&mut x109, x108, (0x0 as u32), 0xffffffff);
4348 let mut x110: u32 = 0;
4349 let mut x111: fiat_p256_u1 = 0;
4350 fiat_p256_addcarryx_u32(&mut x110, &mut x111, 0x0, x93, x109);
4351 let mut x112: u32 = 0;
4352 let mut x113: fiat_p256_u1 = 0;
4353 fiat_p256_addcarryx_u32(&mut x112, &mut x113, x111, x95, x109);
4354 let mut x114: u32 = 0;
4355 let mut x115: fiat_p256_u1 = 0;
4356 fiat_p256_addcarryx_u32(&mut x114, &mut x115, x113, x97, x109);
4357 let mut x116: u32 = 0;
4358 let mut x117: fiat_p256_u1 = 0;
4359 fiat_p256_addcarryx_u32(&mut x116, &mut x117, x115, x99, (0x0 as u32));
4360 let mut x118: u32 = 0;
4361 let mut x119: fiat_p256_u1 = 0;
4362 fiat_p256_addcarryx_u32(&mut x118, &mut x119, x117, x101, (0x0 as u32));
4363 let mut x120: u32 = 0;
4364 let mut x121: fiat_p256_u1 = 0;
4365 fiat_p256_addcarryx_u32(&mut x120, &mut x121, x119, x103, (0x0 as u32));
4366 let mut x122: u32 = 0;
4367 let mut x123: fiat_p256_u1 = 0;
4368 fiat_p256_addcarryx_u32(&mut x122, &mut x123, x121, x105, (((x109 & (0x1 as u32)) as fiat_p256_u1) as u32));
4369 let mut x124: u32 = 0;
4370 let mut x125: fiat_p256_u1 = 0;
4371 fiat_p256_addcarryx_u32(&mut x124, &mut x125, x123, x107, x109);
4372 let mut x126: u32 = 0;
4373 fiat_p256_cmovznz_u32(&mut x126, x3, (*IndexConst(arg5).index(0)), x110);
4374 let mut x127: u32 = 0;
4375 fiat_p256_cmovznz_u32(&mut x127, x3, (*IndexConst(arg5).index(1)), x112);
4376 let mut x128: u32 = 0;
4377 fiat_p256_cmovznz_u32(&mut x128, x3, (*IndexConst(arg5).index(2)), x114);
4378 let mut x129: u32 = 0;
4379 fiat_p256_cmovznz_u32(&mut x129, x3, (*IndexConst(arg5).index(3)), x116);
4380 let mut x130: u32 = 0;
4381 fiat_p256_cmovznz_u32(&mut x130, x3, (*IndexConst(arg5).index(4)), x118);
4382 let mut x131: u32 = 0;
4383 fiat_p256_cmovznz_u32(&mut x131, x3, (*IndexConst(arg5).index(5)), x120);
4384 let mut x132: u32 = 0;
4385 fiat_p256_cmovznz_u32(&mut x132, x3, (*IndexConst(arg5).index(6)), x122);
4386 let mut x133: u32 = 0;
4387 fiat_p256_cmovznz_u32(&mut x133, x3, (*IndexConst(arg5).index(7)), x124);
4388 let x134: fiat_p256_u1 = ((x34 & (0x1 as u32)) as fiat_p256_u1);
4389 let mut x135: u32 = 0;
4390 fiat_p256_cmovznz_u32(&mut x135, x134, (0x0 as u32), x7);
4391 let mut x136: u32 = 0;
4392 fiat_p256_cmovznz_u32(&mut x136, x134, (0x0 as u32), x8);
4393 let mut x137: u32 = 0;
4394 fiat_p256_cmovznz_u32(&mut x137, x134, (0x0 as u32), x9);
4395 let mut x138: u32 = 0;
4396 fiat_p256_cmovznz_u32(&mut x138, x134, (0x0 as u32), x10);
4397 let mut x139: u32 = 0;
4398 fiat_p256_cmovznz_u32(&mut x139, x134, (0x0 as u32), x11);
4399 let mut x140: u32 = 0;
4400 fiat_p256_cmovznz_u32(&mut x140, x134, (0x0 as u32), x12);
4401 let mut x141: u32 = 0;
4402 fiat_p256_cmovznz_u32(&mut x141, x134, (0x0 as u32), x13);
4403 let mut x142: u32 = 0;
4404 fiat_p256_cmovznz_u32(&mut x142, x134, (0x0 as u32), x14);
4405 let mut x143: u32 = 0;
4406 fiat_p256_cmovznz_u32(&mut x143, x134, (0x0 as u32), x15);
4407 let mut x144: u32 = 0;
4408 let mut x145: fiat_p256_u1 = 0;
4409 fiat_p256_addcarryx_u32(&mut x144, &mut x145, 0x0, x34, x135);
4410 let mut x146: u32 = 0;
4411 let mut x147: fiat_p256_u1 = 0;
4412 fiat_p256_addcarryx_u32(&mut x146, &mut x147, x145, x35, x136);
4413 let mut x148: u32 = 0;
4414 let mut x149: fiat_p256_u1 = 0;
4415 fiat_p256_addcarryx_u32(&mut x148, &mut x149, x147, x36, x137);
4416 let mut x150: u32 = 0;
4417 let mut x151: fiat_p256_u1 = 0;
4418 fiat_p256_addcarryx_u32(&mut x150, &mut x151, x149, x37, x138);
4419 let mut x152: u32 = 0;
4420 let mut x153: fiat_p256_u1 = 0;
4421 fiat_p256_addcarryx_u32(&mut x152, &mut x153, x151, x38, x139);
4422 let mut x154: u32 = 0;
4423 let mut x155: fiat_p256_u1 = 0;
4424 fiat_p256_addcarryx_u32(&mut x154, &mut x155, x153, x39, x140);
4425 let mut x156: u32 = 0;
4426 let mut x157: fiat_p256_u1 = 0;
4427 fiat_p256_addcarryx_u32(&mut x156, &mut x157, x155, x40, x141);
4428 let mut x158: u32 = 0;
4429 let mut x159: fiat_p256_u1 = 0;
4430 fiat_p256_addcarryx_u32(&mut x158, &mut x159, x157, x41, x142);
4431 let mut x160: u32 = 0;
4432 let mut x161: fiat_p256_u1 = 0;
4433 fiat_p256_addcarryx_u32(&mut x160, &mut x161, x159, x42, x143);
4434 let mut x162: u32 = 0;
4435 fiat_p256_cmovznz_u32(&mut x162, x134, (0x0 as u32), x43);
4436 let mut x163: u32 = 0;
4437 fiat_p256_cmovznz_u32(&mut x163, x134, (0x0 as u32), x44);
4438 let mut x164: u32 = 0;
4439 fiat_p256_cmovznz_u32(&mut x164, x134, (0x0 as u32), x45);
4440 let mut x165: u32 = 0;
4441 fiat_p256_cmovznz_u32(&mut x165, x134, (0x0 as u32), x46);
4442 let mut x166: u32 = 0;
4443 fiat_p256_cmovznz_u32(&mut x166, x134, (0x0 as u32), x47);
4444 let mut x167: u32 = 0;
4445 fiat_p256_cmovznz_u32(&mut x167, x134, (0x0 as u32), x48);
4446 let mut x168: u32 = 0;
4447 fiat_p256_cmovznz_u32(&mut x168, x134, (0x0 as u32), x49);
4448 let mut x169: u32 = 0;
4449 fiat_p256_cmovznz_u32(&mut x169, x134, (0x0 as u32), x50);
4450 let mut x170: u32 = 0;
4451 let mut x171: fiat_p256_u1 = 0;
4452 fiat_p256_addcarryx_u32(&mut x170, &mut x171, 0x0, x126, x162);
4453 let mut x172: u32 = 0;
4454 let mut x173: fiat_p256_u1 = 0;
4455 fiat_p256_addcarryx_u32(&mut x172, &mut x173, x171, x127, x163);
4456 let mut x174: u32 = 0;
4457 let mut x175: fiat_p256_u1 = 0;
4458 fiat_p256_addcarryx_u32(&mut x174, &mut x175, x173, x128, x164);
4459 let mut x176: u32 = 0;
4460 let mut x177: fiat_p256_u1 = 0;
4461 fiat_p256_addcarryx_u32(&mut x176, &mut x177, x175, x129, x165);
4462 let mut x178: u32 = 0;
4463 let mut x179: fiat_p256_u1 = 0;
4464 fiat_p256_addcarryx_u32(&mut x178, &mut x179, x177, x130, x166);
4465 let mut x180: u32 = 0;
4466 let mut x181: fiat_p256_u1 = 0;
4467 fiat_p256_addcarryx_u32(&mut x180, &mut x181, x179, x131, x167);
4468 let mut x182: u32 = 0;
4469 let mut x183: fiat_p256_u1 = 0;
4470 fiat_p256_addcarryx_u32(&mut x182, &mut x183, x181, x132, x168);
4471 let mut x184: u32 = 0;
4472 let mut x185: fiat_p256_u1 = 0;
4473 fiat_p256_addcarryx_u32(&mut x184, &mut x185, x183, x133, x169);
4474 let mut x186: u32 = 0;
4475 let mut x187: fiat_p256_u1 = 0;
4476 fiat_p256_subborrowx_u32(&mut x186, &mut x187, 0x0, x170, 0xffffffff);
4477 let mut x188: u32 = 0;
4478 let mut x189: fiat_p256_u1 = 0;
4479 fiat_p256_subborrowx_u32(&mut x188, &mut x189, x187, x172, 0xffffffff);
4480 let mut x190: u32 = 0;
4481 let mut x191: fiat_p256_u1 = 0;
4482 fiat_p256_subborrowx_u32(&mut x190, &mut x191, x189, x174, 0xffffffff);
4483 let mut x192: u32 = 0;
4484 let mut x193: fiat_p256_u1 = 0;
4485 fiat_p256_subborrowx_u32(&mut x192, &mut x193, x191, x176, (0x0 as u32));
4486 let mut x194: u32 = 0;
4487 let mut x195: fiat_p256_u1 = 0;
4488 fiat_p256_subborrowx_u32(&mut x194, &mut x195, x193, x178, (0x0 as u32));
4489 let mut x196: u32 = 0;
4490 let mut x197: fiat_p256_u1 = 0;
4491 fiat_p256_subborrowx_u32(&mut x196, &mut x197, x195, x180, (0x0 as u32));
4492 let mut x198: u32 = 0;
4493 let mut x199: fiat_p256_u1 = 0;
4494 fiat_p256_subborrowx_u32(&mut x198, &mut x199, x197, x182, (0x1 as u32));
4495 let mut x200: u32 = 0;
4496 let mut x201: fiat_p256_u1 = 0;
4497 fiat_p256_subborrowx_u32(&mut x200, &mut x201, x199, x184, 0xffffffff);
4498 let mut x202: u32 = 0;
4499 let mut x203: fiat_p256_u1 = 0;
4500 fiat_p256_subborrowx_u32(&mut x202, &mut x203, x201, (x185 as u32), (0x0 as u32));
4501 let mut x204: u32 = 0;
4502 let mut x205: fiat_p256_u1 = 0;
4503 fiat_p256_addcarryx_u32(&mut x204, &mut x205, 0x0, x6, (0x1 as u32));
4504 let x206: u32 = ((x144 >> 1) | ((x146 << 31) & 0xffffffff));
4505 let x207: u32 = ((x146 >> 1) | ((x148 << 31) & 0xffffffff));
4506 let x208: u32 = ((x148 >> 1) | ((x150 << 31) & 0xffffffff));
4507 let x209: u32 = ((x150 >> 1) | ((x152 << 31) & 0xffffffff));
4508 let x210: u32 = ((x152 >> 1) | ((x154 << 31) & 0xffffffff));
4509 let x211: u32 = ((x154 >> 1) | ((x156 << 31) & 0xffffffff));
4510 let x212: u32 = ((x156 >> 1) | ((x158 << 31) & 0xffffffff));
4511 let x213: u32 = ((x158 >> 1) | ((x160 << 31) & 0xffffffff));
4512 let x214: u32 = ((x160 & 0x80000000) | (x160 >> 1));
4513 let mut x215: u32 = 0;
4514 fiat_p256_cmovznz_u32(&mut x215, x84, x67, x51);
4515 let mut x216: u32 = 0;
4516 fiat_p256_cmovznz_u32(&mut x216, x84, x69, x53);
4517 let mut x217: u32 = 0;
4518 fiat_p256_cmovznz_u32(&mut x217, x84, x71, x55);
4519 let mut x218: u32 = 0;
4520 fiat_p256_cmovznz_u32(&mut x218, x84, x73, x57);
4521 let mut x219: u32 = 0;
4522 fiat_p256_cmovznz_u32(&mut x219, x84, x75, x59);
4523 let mut x220: u32 = 0;
4524 fiat_p256_cmovznz_u32(&mut x220, x84, x77, x61);
4525 let mut x221: u32 = 0;
4526 fiat_p256_cmovznz_u32(&mut x221, x84, x79, x63);
4527 let mut x222: u32 = 0;
4528 fiat_p256_cmovznz_u32(&mut x222, x84, x81, x65);
4529 let mut x223: u32 = 0;
4530 fiat_p256_cmovznz_u32(&mut x223, x203, x186, x170);
4531 let mut x224: u32 = 0;
4532 fiat_p256_cmovznz_u32(&mut x224, x203, x188, x172);
4533 let mut x225: u32 = 0;
4534 fiat_p256_cmovznz_u32(&mut x225, x203, x190, x174);
4535 let mut x226: u32 = 0;
4536 fiat_p256_cmovznz_u32(&mut x226, x203, x192, x176);
4537 let mut x227: u32 = 0;
4538 fiat_p256_cmovznz_u32(&mut x227, x203, x194, x178);
4539 let mut x228: u32 = 0;
4540 fiat_p256_cmovznz_u32(&mut x228, x203, x196, x180);
4541 let mut x229: u32 = 0;
4542 fiat_p256_cmovznz_u32(&mut x229, x203, x198, x182);
4543 let mut x230: u32 = 0;
4544 fiat_p256_cmovznz_u32(&mut x230, x203, x200, x184);
4545 *out1 = x204;
4546 *IndexConst(&mut out2).index_mut(0) = x7;
4547 *IndexConst(&mut out2).index_mut(1) = x8;
4548 *IndexConst(&mut out2).index_mut(2) = x9;
4549 *IndexConst(&mut out2).index_mut(3) = x10;
4550 *IndexConst(&mut out2).index_mut(4) = x11;
4551 *IndexConst(&mut out2).index_mut(5) = x12;
4552 *IndexConst(&mut out2).index_mut(6) = x13;
4553 *IndexConst(&mut out2).index_mut(7) = x14;
4554 *IndexConst(&mut out2).index_mut(8) = x15;
4555 *IndexConst(&mut out3).index_mut(0) = x206;
4556 *IndexConst(&mut out3).index_mut(1) = x207;
4557 *IndexConst(&mut out3).index_mut(2) = x208;
4558 *IndexConst(&mut out3).index_mut(3) = x209;
4559 *IndexConst(&mut out3).index_mut(4) = x210;
4560 *IndexConst(&mut out3).index_mut(5) = x211;
4561 *IndexConst(&mut out3).index_mut(6) = x212;
4562 *IndexConst(&mut out3).index_mut(7) = x213;
4563 *IndexConst(&mut out3).index_mut(8) = x214;
4564 *IndexConst(&mut out4).index_mut(0) = x215;
4565 *IndexConst(&mut out4).index_mut(1) = x216;
4566 *IndexConst(&mut out4).index_mut(2) = x217;
4567 *IndexConst(&mut out4).index_mut(3) = x218;
4568 *IndexConst(&mut out4).index_mut(4) = x219;
4569 *IndexConst(&mut out4).index_mut(5) = x220;
4570 *IndexConst(&mut out4).index_mut(6) = x221;
4571 *IndexConst(&mut out4).index_mut(7) = x222;
4572 *IndexConst(&mut out5).index_mut(0) = x223;
4573 *IndexConst(&mut out5).index_mut(1) = x224;
4574 *IndexConst(&mut out5).index_mut(2) = x225;
4575 *IndexConst(&mut out5).index_mut(3) = x226;
4576 *IndexConst(&mut out5).index_mut(4) = x227;
4577 *IndexConst(&mut out5).index_mut(5) = x228;
4578 *IndexConst(&mut out5).index_mut(6) = x229;
4579 *IndexConst(&mut out5).index_mut(7) = x230;
4580}
4581
4582#[inline]
4591pub const fn fiat_p256_divstep_precomp(mut out1: &mut [u32; 8]) {
4592 *IndexConst(&mut out1).index_mut(0) = 0xb8000000;
4593 *IndexConst(&mut out1).index_mut(1) = 0x67ffffff;
4594 *IndexConst(&mut out1).index_mut(2) = 0x38000000;
4595 *IndexConst(&mut out1).index_mut(3) = 0xc0000000;
4596 *IndexConst(&mut out1).index_mut(4) = 0x7fffffff;
4597 *IndexConst(&mut out1).index_mut(5) = 0xd8000000;
4598 *IndexConst(&mut out1).index_mut(6) = 0xffffffff;
4599 *IndexConst(&mut out1).index_mut(7) = 0x2fffffff;
4600}